Full Code of carlinds/splatad for AI

main 6e31ad766d39 cached
52 files
2.4 MB
624.5k tokens
177 symbols
1 requests
Download .txt
Showing preview only (2,498K chars total). Download the full file or copy to clipboard to get everything.
Repository: carlinds/splatad
Branch: main
Commit: 6e31ad766d39
Files: 52
Total size: 2.4 MB

Directory structure:
gitextract_en0yens4/

├── .clang-format
├── .clangd_template
├── .github/
│   └── workflows/
│       ├── building.yml
│       ├── core_tests.yml
│       └── cuda/
│           ├── Linux-env.sh
│           ├── Linux.sh
│           ├── Windows-env.sh
│           └── Windows.sh
├── .gitignore
├── .gitmodules
├── LICENSE
├── MANIFEST.in
├── README.md
├── assets/
│   └── test_garden.npz
├── build_extensions.py
├── examples/
│   ├── lidar_rendering.ipynb
│   └── rolling_shutter.ipynb
├── gsplat/
│   ├── __init__.py
│   ├── _helper.py
│   ├── compression/
│   │   ├── __init__.py
│   │   ├── png_compression.py
│   │   └── sort.py
│   ├── cuda/
│   │   ├── __init__.py
│   │   ├── _backend.py
│   │   ├── _torch_impl.py
│   │   ├── _wrapper.py
│   │   └── csrc/
│   │       ├── bindings.h
│   │       ├── ext.cpp
│   │       ├── helpers.cuh
│   │       ├── projection.cu
│   │       ├── rasterization.cu
│   │       ├── relocation.cu
│   │       ├── sh.cu
│   │       └── utils.cuh
│   ├── distributed.py
│   ├── profile.py
│   ├── relocation.py
│   ├── rendering.py
│   ├── strategy/
│   │   ├── __init__.py
│   │   ├── base.py
│   │   ├── default.py
│   │   ├── mcmc.py
│   │   └── ops.py
│   ├── utils.py
│   └── version.py
├── pyproject.toml
├── setup.py
└── tests/
    ├── _test_distributed.py
    ├── test_basic.py
    ├── test_compression.py
    ├── test_rasterization.py
    └── test_strategy.py

================================================
FILE CONTENTS
================================================

================================================
FILE: .clang-format
================================================
BasedOnStyle: LLVM
AlignAfterOpenBracket: BlockIndent
BinPackArguments: false
BinPackParameters: false
IndentWidth: 4


================================================
FILE: .clangd_template
================================================
# To set up the clangd config.
# 1. Activate an environment with cuda installed. (probably via conda, skip if using system CUDA)
# 2. Run:
#       echo "# Autogenerated, see .clangd_template\!" > .clangd && sed -e "/^#/d" -e "s|YOUR_CUDA_PATH|$(dirname $(dirname $(which nvcc)))|" .clangd_template >> .clangd
CompileFlags:
  Add:
    - -Xclang
    - -fcuda-allow-variadic-functions 
    - --cuda-path=YOUR_CUDA_PATH
  Remove: 
    - --diag_suppress=*
    - --generate-code=*
    - -gencode=*
    - -forward-unknown-to-host-compiler
    - -Xcompiler
    - -Xcudafe
    - --use_fast_math
    - --options-file
    - --compiler-options
    - --expt-relaxed-constexpr


================================================
FILE: .github/workflows/building.yml
================================================
name: Building Wheels

on: [workflow_dispatch]

jobs:

  wheel:
    runs-on: ${{ matrix.os }}
    environment: production

    strategy:
      fail-fast: false
      matrix:
        # os: [windows-2019]
        # python-version: ['3.7']
        # torch-version: [1.11.0]
        # cuda-version: ['cu113']
        os: [ubuntu-20.04, windows-2019]
        # support version based on: https://download.pytorch.org/whl/torch/
        python-version: ['3.7', '3.8', '3.9', '3.10', '3.11']
        torch-version: [1.11.0, 1.12.0, 1.13.0, 2.0.0]
        cuda-version: ['cu113', 'cu115', 'cu116', 'cu117', 'cu118']
        exclude:
          - torch-version: 1.11.0
            python-version: '3.11'
          - torch-version: 1.11.0
            cuda-version: 'cu116'
          - torch-version: 1.11.0
            cuda-version: 'cu117'
          - torch-version: 1.11.0
            cuda-version: 'cu118'
          
          - torch-version: 1.12.0
            python-version: '3.11'
          - torch-version: 1.12.0
            cuda-version: 'cu115'
          - torch-version: 1.12.0
            cuda-version: 'cu117'
          - torch-version: 1.12.0
            cuda-version: 'cu118'
          
          - torch-version: 1.13.0
            cuda-version: 'cu102'
          - torch-version: 1.13.0
            cuda-version: 'cu113'
          - torch-version: 1.13.0
            cuda-version: 'cu115'
          - torch-version: 1.13.0
            cuda-version: 'cu118'
            
          - torch-version: 2.0.0
            python-version: '3.7'
          - torch-version: 2.0.0
            cuda-version: 'cu102'
          - torch-version: 2.0.0
            cuda-version: 'cu113'
          - torch-version: 2.0.0
            cuda-version: 'cu115'
          - torch-version: 2.0.0
            cuda-version: 'cu116'
          
          - os: windows-2019
            cuda-version: 'cu102'
          - os: windows-2019
            torch-version: 1.13.0
            python-version: '3.11'
          
          # - os: windows-2019
          #   torch-version: 1.13.0
          #   cuda-version: 'cu117'
          #   python-version: '3.9'



    steps:
      - uses: actions/checkout@v3
        with:
          submodules: 'recursive'

      - name: Set up Python ${{ matrix.python-version }}
        uses: actions/setup-python@v4
        with:
          python-version: ${{ matrix.python-version }}

      - name: Upgrade pip
        run: |
          pip install --upgrade setuptools
          pip install ninja

      - name: Free up disk space
        if: ${{ runner.os == 'Linux' }}
        run: |
          sudo rm -rf /usr/share/dotnet

      - name: Install CUDA ${{ matrix.cuda-version }}
        if: ${{ matrix.cuda-version != 'cpu' }}
        run: |
          bash .github/workflows/cuda/${{ runner.os }}.sh ${{ matrix.cuda-version }}

      - name: Install PyTorch ${{ matrix.torch-version }}+${{ matrix.cuda-version }}
        run: |
          pip install torch==${{ matrix.torch-version }} --extra-index-url https://download.pytorch.org/whl/${{ matrix.cuda-version }}
          python -c "import torch; print('PyTorch:', torch.__version__)"
          python -c "import torch; print('CUDA:', torch.version.cuda)"
          python -c "import torch; print('CUDA Available:', torch.cuda.is_available())"

      - name: Patch PyTorch static constexpr on Windows
        if: ${{ runner.os == 'Windows' }}
        run: |
          Torch_DIR=`python -c 'import os; import torch; print(os.path.dirname(torch.__file__))'`
          sed -i '31,38c\
          TORCH_API void lazy_init_num_threads();' ${Torch_DIR}/include/ATen/Parallel.h
        shell: bash

      - name: Set version
        if: ${{ runner.os != 'macOS' }}
        run: |
          VERSION=`sed -n 's/^__version__ = "\(.*\)"/\1/p' gsplat/version.py`
          TORCH_VERSION=`echo "pt${{ matrix.torch-version }}" | sed "s/..$//" | sed "s/\.//g"`
          CUDA_VERSION=`echo ${{ matrix.cuda-version }}`
          echo "New version name: $VERSION+$TORCH_VERSION$CUDA_VERSION"
          sed -i "s/$VERSION/$VERSION+$TORCH_VERSION$CUDA_VERSION/" gsplat/version.py
        shell:
          bash

      - name: Install main package for CPU
        if: ${{ matrix.cuda-version == 'cpu' }}
        run: |
          BUILD_NO_CUDA=1 pip install .

      - name: Build wheel
        run: |
          pip install wheel
          source .github/workflows/cuda/${{ runner.os }}-env.sh ${{ matrix.cuda-version }}
          python setup.py bdist_wheel --dist-dir=dist
        shell: bash  # `source` does not exist in windows powershell

      - name: Test wheel
        run: |
          cd dist
          ls -lah
          pip install *.whl
          python -c "import gsplat; print('gsplat:', gsplat.__version__)"
          cd ..
        shell: bash  # `ls -lah` does not exist in windows powershell


================================================
FILE: .github/workflows/core_tests.yml
================================================
name: Core Tests.

on:
  push:
    branches: [main]
  pull_request:
    branches: [main]

permissions:
  contents: read

jobs:
  build:
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v3
        with:
          submodules: 'recursive'
          
      - name: Set up Python 3.8.12
        uses: actions/setup-python@v4
        with:
          python-version: "3.8.12"
      - name: Install dependencies
        run: |
          pip install pytest
          pip install torch==2.0.0 --index-url https://download.pytorch.org/whl/cpu
          BUILD_NO_CUDA=1 pip install .
      - name: Run Tests.
        run: pytest tests/


================================================
FILE: .github/workflows/cuda/Linux-env.sh
================================================
#!/bin/bash

# Took from https://github.com/pyg-team/pyg-lib/

case ${1} in
  cu118)
    export CUDA_HOME=/usr/local/cuda-11.8
    export LD_LIBRARY_PATH=${CUDA_HOME}/lib64:${LD_LIBRARY_PATH}
    export PATH=${CUDA_HOME}/bin:${PATH}
    export TORCH_CUDA_ARCH_LIST="3.5;5.0+PTX;6.0;7.0;7.5;8.0;8.6"
    ;;
  cu117)
    export CUDA_HOME=/usr/local/cuda-11.7
    export LD_LIBRARY_PATH=${CUDA_HOME}/lib64:${LD_LIBRARY_PATH}
    export PATH=${CUDA_HOME}/bin:${PATH}
    export TORCH_CUDA_ARCH_LIST="3.5;5.0+PTX;6.0;7.0;7.5;8.0;8.6"
    ;;
  cu116)
    export CUDA_HOME=/usr/local/cuda-11.6
    export LD_LIBRARY_PATH=${CUDA_HOME}/lib64:${LD_LIBRARY_PATH}
    export PATH=${CUDA_HOME}/bin:${PATH}
    export TORCH_CUDA_ARCH_LIST="3.5;5.0+PTX;6.0;7.0;7.5;8.0;8.6"
    ;;
  cu115)
    export CUDA_HOME=/usr/local/cuda-11.5
    export LD_LIBRARY_PATH=${CUDA_HOME}/lib64:${LD_LIBRARY_PATH}
    export PATH=${CUDA_HOME}/bin:${PATH}
    export TORCH_CUDA_ARCH_LIST="3.5;5.0+PTX;6.0;7.0;7.5;8.0;8.6"
    ;;
  cu113)
    export CUDA_HOME=/usr/local/cuda-11.3
    export LD_LIBRARY_PATH=${CUDA_HOME}/lib64:${LD_LIBRARY_PATH}
    export PATH=${CUDA_HOME}/bin:${PATH}
    export TORCH_CUDA_ARCH_LIST="3.5;5.0+PTX;6.0;7.0;7.5;8.0;8.6"
    ;;
  cu102)
    export CUDA_HOME=/usr/local/cuda-10.2
    export LD_LIBRARY_PATH=${CUDA_HOME}/lib64:${LD_LIBRARY_PATH}
    export PATH=${CUDA_HOME}/bin:${PATH}
    export TORCH_CUDA_ARCH_LIST="3.5;5.0+PTX;6.0;7.0;7.5"
    ;;
  *)
    ;;
esac

================================================
FILE: .github/workflows/cuda/Linux.sh
================================================
#!/bin/bash

# Took from https://github.com/pyg-team/pyg-lib/

OS=ubuntu2004

case ${1} in
  cu118)
    CUDA=11.8
    APT_KEY=${OS}-${CUDA/./-}-local
    FILENAME=cuda-repo-${APT_KEY}_${CUDA}.0-520.61.05-1_amd64.deb
    URL=https://developer.download.nvidia.com/compute/cuda/${CUDA}.0/local_installers
    ;;
  cu117)
    CUDA=11.7
    APT_KEY=${OS}-${CUDA/./-}-local
    FILENAME=cuda-repo-${APT_KEY}_${CUDA}.1-515.65.01-1_amd64.deb
    URL=https://developer.download.nvidia.com/compute/cuda/${CUDA}.1/local_installers
    ;;
  cu116)
    CUDA=11.6
    APT_KEY=${OS}-${CUDA/./-}-local
    FILENAME=cuda-repo-${APT_KEY}_${CUDA}.2-510.47.03-1_amd64.deb
    URL=https://developer.download.nvidia.com/compute/cuda/${CUDA}.2/local_installers
    ;;
  cu115)
    CUDA=11.5
    APT_KEY=${OS}-${CUDA/./-}-local
    FILENAME=cuda-repo-${APT_KEY}_${CUDA}.2-495.29.05-1_amd64.deb
    URL=https://developer.download.nvidia.com/compute/cuda/${CUDA}.2/local_installers
    ;;
  cu113)
    CUDA=11.3
    APT_KEY=${OS}-${CUDA/./-}-local
    FILENAME=cuda-repo-${APT_KEY}_${CUDA}.0-465.19.01-1_amd64.deb
    URL=https://developer.download.nvidia.com/compute/cuda/${CUDA}.0/local_installers
    ;;
  cu102)
    CUDA=10.2
    APT_KEY=${CUDA/./-}-local-${CUDA}.89-440.33.01
    FILENAME=cuda-repo-${OS}-${APT_KEY}_1.0-1_amd64.deb
    URL=https://developer.download.nvidia.com/compute/cuda/${CUDA}/Prod/local_installers
    ;;
  *)
    echo "Unrecognized CUDA_VERSION=${1}"
    exit 1
    ;;
esac

wget -nv https://developer.download.nvidia.com/compute/cuda/repos/${OS}/x86_64/cuda-${OS}.pin
sudo mv cuda-${OS}.pin /etc/apt/preferences.d/cuda-repository-pin-600
wget -nv ${URL}/${FILENAME}
sudo dpkg -i ${FILENAME}

if [ "${1}" = "cu117" ] || [ "${1}" = "cu118" ]; then
  sudo cp /var/cuda-repo-${APT_KEY}/cuda-*-keyring.gpg /usr/share/keyrings/
else
  sudo apt-key add /var/cuda-repo-${APT_KEY}/7fa2af80.pub
fi

sudo apt-get update
sudo apt-get -y install cuda

rm -f ${FILENAME}

================================================
FILE: .github/workflows/cuda/Windows-env.sh
================================================
#!/bin/bash

# Took from https://github.com/pyg-team/pyg-lib/

case ${1} in
  cu118)
    CUDA_HOME=/c/Program\ Files/NVIDIA\ GPU\ Computing\ Toolkit/CUDA/v11.8
    PATH=${CUDA_HOME}/bin:$PATH
    PATH=/c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/BuildTools/MSBuild/15.0/Bin:$PATH
    export TORCH_CUDA_ARCH_LIST="6.0+PTX"
    ;;
  cu117)
    CUDA_HOME=/c/Program\ Files/NVIDIA\ GPU\ Computing\ Toolkit/CUDA/v11.7
    PATH=${CUDA_HOME}/bin:$PATH
    PATH=/c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/BuildTools/MSBuild/15.0/Bin:$PATH
    export TORCH_CUDA_ARCH_LIST="6.0+PTX"
    ;;
  cu116)
    CUDA_HOME=/c/Program\ Files/NVIDIA\ GPU\ Computing\ Toolkit/CUDA/v11.6
    PATH=${CUDA_HOME}/bin:$PATH
    PATH=/c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/BuildTools/MSBuild/15.0/Bin:$PATH
    export TORCH_CUDA_ARCH_LIST="6.0+PTX"
    ;;
  cu115)
    CUDA_HOME=/c/Program\ Files/NVIDIA\ GPU\ Computing\ Toolkit/CUDA/v11.5
    PATH=${CUDA_HOME}/bin:$PATH
    PATH=/c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/BuildTools/MSBuild/15.0/Bin:$PATH
    export TORCH_CUDA_ARCH_LIST="6.0+PTX"
    ;;
  cu113)
    CUDA_HOME=/c/Program\ Files/NVIDIA\ GPU\ Computing\ Toolkit/CUDA/v11.3
    PATH=${CUDA_HOME}/bin:$PATH
    PATH=/c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/BuildTools/MSBuild/15.0/Bin:$PATH
    export TORCH_CUDA_ARCH_LIST="6.0+PTX"
    ;;
  *)
    ;;
esac

================================================
FILE: .github/workflows/cuda/Windows.sh
================================================
#!/bin/bash

# Took from https://github.com/pyg-team/pyg-lib/

# Install NVIDIA drivers, see:
# https://github.com/pytorch/vision/blob/master/packaging/windows/internal/cuda_install.bat#L99-L102
curl -k -L "https://drive.google.com/u/0/uc?id=1injUyo3lnarMgWyRcXqKg4UGnN0ysmuq&export=download" --output "/tmp/gpu_driver_dlls.zip"
7z x "/tmp/gpu_driver_dlls.zip" -o"/c/Windows/System32"

case ${1} in
  cu118)
    CUDA_SHORT=11.8
    CUDA_URL=https://developer.download.nvidia.com/compute/cuda/${CUDA_SHORT}.0/local_installers
    CUDA_FILE=cuda_${CUDA_SHORT}.0_522.06_windows.exe
    ;;
  cu117)
    CUDA_SHORT=11.7
    CUDA_URL=https://developer.download.nvidia.com/compute/cuda/${CUDA_SHORT}.1/local_installers
    CUDA_FILE=cuda_${CUDA_SHORT}.1_516.94_windows.exe
    ;;
  cu116)
    CUDA_SHORT=11.3
    CUDA_URL=https://developer.download.nvidia.com/compute/cuda/${CUDA_SHORT}.0/local_installers
    CUDA_FILE=cuda_${CUDA_SHORT}.0_465.89_win10.exe
    ;;
  cu115)
    CUDA_SHORT=11.3
    CUDA_URL=https://developer.download.nvidia.com/compute/cuda/${CUDA_SHORT}.0/local_installers
    CUDA_FILE=cuda_${CUDA_SHORT}.0_465.89_win10.exe
    ;;
  cu113)
    CUDA_SHORT=11.3
    CUDA_URL=https://developer.download.nvidia.com/compute/cuda/${CUDA_SHORT}.0/local_installers
    CUDA_FILE=cuda_${CUDA_SHORT}.0_465.89_win10.exe
    ;;
  *)
    echo "Unrecognized CUDA_VERSION=${1}"
    exit 1
    ;;
esac

curl -k -L "${CUDA_URL}/${CUDA_FILE}" --output "${CUDA_FILE}"
echo ""
echo "Installing from ${CUDA_FILE}..."
PowerShell -Command "Start-Process -FilePath \"${CUDA_FILE}\" -ArgumentList \"-s nvcc_${CUDA_SHORT} cuobjdump_${CUDA_SHORT} nvprune_${CUDA_SHORT} cupti_${CUDA_SHORT} cublas_dev_${CUDA_SHORT} cudart_${CUDA_SHORT} cufft_dev_${CUDA_SHORT} curand_dev_${CUDA_SHORT} cusolver_dev_${CUDA_SHORT} cusparse_dev_${CUDA_SHORT} thrust_${CUDA_SHORT} npp_dev_${CUDA_SHORT} nvrtc_dev_${CUDA_SHORT} nvml_dev_${CUDA_SHORT}\" -Wait -NoNewWindow"
echo "Done!"
rm -f "${CUDA_FILE}"

================================================
FILE: .gitignore
================================================
.clangd
compile_commands.json

# Visual Studio Code configs.
.vscode/

# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
*$py.class

# C extensions
*.so

# Distribution / packaging
.Python
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
# lib/
lib64/
parts/
sdist/
var/
wheels/
*.egg-info/
.installed.cfg
*.egg
MANIFEST

# PyInstaller
#  Usually these files are written by a python script from a template
#  before PyInstaller builds the exe, so as to inject date/other infos into it.
*.manifest
*.spec

# Installer logs
pip-log.txt
pip-delete-this-directory.txt

# Unit test / coverage reports
htmlcov/
.tox/
.coverage
.coverage.*
.cache
nosetests.xml
coverage.xml
*.cover
.hypothesis/
.pytest_cache/

# Translations
*.mo
*.pot

# Django stuff:
*.log
local_settings.py
db.sqlite3

# Flask stuff:
instance/
.webassets-cache

# Scrapy stuff:
.scrapy

# Sphinx documentation
docs/_build/

# PyBuilder
target/

# Jupyter Notebook
.ipynb_checkpoints

# pyenv
.python-version

# celery beat schedule file
celerybeat-schedule

# SageMath parsed files
*.sage.py

# Environments
.env
.venv
env/
venv/
ENV/
env.bak/
venv.bak/

# Spyder project settings
.spyderproject
.spyproject

# Rope project settings
.ropeproject

# mkdocs documentation
/site

# mypy
.mypy_cache/

.DS_Store

# Direnv config.
.envrc

# line_profiler
*.lprof

*build
compile_commands.json
*.dump

data
results

================================================
FILE: .gitmodules
================================================
[submodule "gsplat/cuda/csrc/third_party/glm"]
	path = gsplat/cuda/csrc/third_party/glm
	url = https://github.com/g-truc/glm.git


================================================
FILE: LICENSE
================================================
                                 Apache License
                           Version 2.0, January 2004
                        http://www.apache.org/licenses/

   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION

   1. Definitions.

      "License" shall mean the terms and conditions for use, reproduction,
      and distribution as defined by Sections 1 through 9 of this document.

      "Licensor" shall mean the copyright owner or entity authorized by
      the copyright owner that is granting the License.

      "Legal Entity" shall mean the union of the acting entity and all
      other entities that control, are controlled by, or are under common
      control with that entity. For the purposes of this definition,
      "control" means (i) the power, direct or indirect, to cause the
      direction or management of such entity, whether by contract or
      otherwise, or (ii) ownership of fifty percent (50%) or more of the
      outstanding shares, or (iii) beneficial ownership of such entity.

      "You" (or "Your") shall mean an individual or Legal Entity
      exercising permissions granted by this License.

      "Source" form shall mean the preferred form for making modifications,
      including but not limited to software source code, documentation
      source, and configuration files.

      "Object" form shall mean any form resulting from mechanical
      transformation or translation of a Source form, including but
      not limited to compiled object code, generated documentation,
      and conversions to other media types.

      "Work" shall mean the work of authorship, whether in Source or
      Object form, made available under the License, as indicated by a
      copyright notice that is included in or attached to the work
      (an example is provided in the Appendix below).

      "Derivative Works" shall mean any work, whether in Source or Object
      form, that is based on (or derived from) the Work and for which the
      editorial revisions, annotations, elaborations, or other modifications
      represent, as a whole, an original work of authorship. For the purposes
      of this License, Derivative Works shall not include works that remain
      separable from, or merely link (or bind by name) to the interfaces of,
      the Work and Derivative Works thereof.

      "Contribution" shall mean any work of authorship, including
      the original version of the Work and any modifications or additions
      to that Work or Derivative Works thereof, that is intentionally
      submitted to Licensor for inclusion in the Work by the copyright owner
      or by an individual or Legal Entity authorized to submit on behalf of
      the copyright owner. For the purposes of this definition, "submitted"
      means any form of electronic, verbal, or written communication sent
      to the Licensor or its representatives, including but not limited to
      communication on electronic mailing lists, source code control systems,
      and issue tracking systems that are managed by, or on behalf of, the
      Licensor for the purpose of discussing and improving the Work, but
      excluding communication that is conspicuously marked or otherwise
      designated in writing by the copyright owner as "Not a Contribution."

      "Contributor" shall mean Licensor and any individual or Legal Entity
      on behalf of whom a Contribution has been received by Licensor and
      subsequently incorporated within the Work.

   2. Grant of Copyright License. Subject to the terms and conditions of
      this License, each Contributor hereby grants to You a perpetual,
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
      copyright license to reproduce, prepare Derivative Works of,
      publicly display, publicly perform, sublicense, and distribute the
      Work and such Derivative Works in Source or Object form.

   3. Grant of Patent License. Subject to the terms and conditions of
      this License, each Contributor hereby grants to You a perpetual,
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
      (except as stated in this section) patent license to make, have made,
      use, offer to sell, sell, import, and otherwise transfer the Work,
      where such license applies only to those patent claims licensable
      by such Contributor that are necessarily infringed by their
      Contribution(s) alone or by combination of their Contribution(s)
      with the Work to which such Contribution(s) was submitted. If You
      institute patent litigation against any entity (including a
      cross-claim or counterclaim in a lawsuit) alleging that the Work
      or a Contribution incorporated within the Work constitutes direct
      or contributory patent infringement, then any patent licenses
      granted to You under this License for that Work shall terminate
      as of the date such litigation is filed.

   4. Redistribution. You may reproduce and distribute copies of the
      Work or Derivative Works thereof in any medium, with or without
      modifications, and in Source or Object form, provided that You
      meet the following conditions:

      (a) You must give any other recipients of the Work or
          Derivative Works a copy of this License; and

      (b) You must cause any modified files to carry prominent notices
          stating that You changed the files; and

      (c) You must retain, in the Source form of any Derivative Works
          that You distribute, all copyright, patent, trademark, and
          attribution notices from the Source form of the Work,
          excluding those notices that do not pertain to any part of
          the Derivative Works; and

      (d) If the Work includes a "NOTICE" text file as part of its
          distribution, then any Derivative Works that You distribute must
          include a readable copy of the attribution notices contained
          within such NOTICE file, excluding those notices that do not
          pertain to any part of the Derivative Works, in at least one
          of the following places: within a NOTICE text file distributed
          as part of the Derivative Works; within the Source form or
          documentation, if provided along with the Derivative Works; or,
          within a display generated by the Derivative Works, if and
          wherever such third-party notices normally appear. The contents
          of the NOTICE file are for informational purposes only and
          do not modify the License. You may add Your own attribution
          notices within Derivative Works that You distribute, alongside
          or as an addendum to the NOTICE text from the Work, provided
          that such additional attribution notices cannot be construed
          as modifying the License.

      You may add Your own copyright statement to Your modifications and
      may provide additional or different license terms and conditions
      for use, reproduction, or distribution of Your modifications, or
      for any such Derivative Works as a whole, provided Your use,
      reproduction, and distribution of the Work otherwise complies with
      the conditions stated in this License.

   5. Submission of Contributions. Unless You explicitly state otherwise,
      any Contribution intentionally submitted for inclusion in the Work
      by You to the Licensor shall be under the terms and conditions of
      this License, without any additional terms or conditions.
      Notwithstanding the above, nothing herein shall supersede or modify
      the terms of any separate license agreement you may have executed
      with Licensor regarding such Contributions.

   6. Trademarks. This License does not grant permission to use the trade
      names, trademarks, service marks, or product names of the Licensor,
      except as required for reasonable and customary use in describing the
      origin of the Work and reproducing the content of the NOTICE file.

   7. Disclaimer of Warranty. Unless required by applicable law or
      agreed to in writing, Licensor provides the Work (and each
      Contributor provides its Contributions) on an "AS IS" BASIS,
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
      implied, including, without limitation, any warranties or conditions
      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
      PARTICULAR PURPOSE. You are solely responsible for determining the
      appropriateness of using or redistributing the Work and assume any
      risks associated with Your exercise of permissions under this License.

   8. Limitation of Liability. In no event and under no legal theory,
      whether in tort (including negligence), contract, or otherwise,
      unless required by applicable law (such as deliberate and grossly
      negligent acts) or agreed to in writing, shall any Contributor be
      liable to You for damages, including any direct, indirect, special,
      incidental, or consequential damages of any character arising as a
      result of this License or out of the use or inability to use the
      Work (including but not limited to damages for loss of goodwill,
      work stoppage, computer failure or malfunction, or any and all
      other commercial damages or losses), even if such Contributor
      has been advised of the possibility of such damages.

   9. Accepting Warranty or Additional Liability. While redistributing
      the Work or Derivative Works thereof, You may choose to offer,
      and charge a fee for, acceptance of support, warranty, indemnity,
      or other liability obligations and/or rights consistent with this
      License. However, in accepting such obligations, You may act only
      on Your own behalf and on Your sole responsibility, not on behalf
      of any other Contributor, and only if You agree to indemnify,
      defend, and hold each Contributor harmless for any liability
      incurred by, or claims asserted against, such Contributor by reason
      of your accepting any such warranty or additional liability.

   END OF TERMS AND CONDITIONS

   APPENDIX: How to apply the Apache License to your work.

      To apply the Apache License to your work, attach the following
      boilerplate notice, with the fields enclosed by brackets "[]"
      replaced with your own identifying information. (Don't include
      the brackets!)  The text should be enclosed in the appropriate
      comment syntax for the file format. We also recommend that a
      file or class name and description of purpose be included on the
      same "printed page" as the copyright notice for easier
      identification within third-party archives.

   Copyright [yyyy] [name of copyright owner]

   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
   You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE-2.0

   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.


================================================
FILE: MANIFEST.in
================================================
recursive-include gsplat/cuda/csrc *


================================================
FILE: README.md
================================================
<p align="center">
    <!-- project badges -->
    <a href="https://research.zenseact.com/publications/splatad/"><img src="https://img.shields.io/badge/Project-Page-ffa"/></a>
    <!-- paper badges -->
    <a href="https://arxiv.org/abs/2411.16816">
        <img src='https://img.shields.io/badge/arXiv-Page-aff'>
    </a>
</p>

<div align="center">
<h3 style="font-size:2.0em;">SplatAD</h3>
<h4 style="font-size:1.5em;">
Real-Time Lidar and Camera Rendering with 3D Gaussian Splatting for Autonomous Driving
</h4>
</div>
<div align="center">

<div align="center">
<picture>
    <source media="(prefers-color-scheme: dark)" srcset="docs/_static/imgs/front-fig-stacked.jpg" />
    <img alt="tyro logo" src="docs/_static/imgs/front-fig-stacked.jpg" width="80%"/>
</picture>
</div>

[Project page](https://research.zenseact.com/publications/splatad/)

</div>


# About
This is the official repository for the CVPR 2025 paper [_SplatAD: Real-Time Lidar and Camera Rendering with 3D Gaussian Splatting for Autonomous Driving_](https://arxiv.org/abs/2411.16816). The code in this repository builds upon the open-source library [gsplat](https://github.com/nerfstudio-project/gsplat), with modifications and extensions designed for autonomous driving data. 

While the code contians all components needed to efficiently render camera and lidar data, the SplatAD-model itself, including dataloading, decoders, etc., will be released through [neurad-studio](https://github.com/georghess/neurad-studio).

**We welcome all contributions!**

# Key Features
- Efficient lidar rendering
    - Projection to spherical coordinates
    - Depth and feature rasterization for a non-linear grid of points
- Rolling shutter compensation for camera and lidar


# Installation
Our code introduce no additional dependencies. We thus refer to the original documentation from gsplat for both [installation](https://github.com/nerfstudio-project/gsplat#installation) and [development setup](https://github.com/nerfstudio-project/gsplat/blob/main/docs/DEV.md).

# Usage
See [`rasterization`](gsplat/rendering.py#L22) and [`lidar_rasterization`]((gsplat/rendering.py#L443)) for entry points to camera and lidar rasterization.
Additionally, we provide example notebooks under [examples](examples) that demonstrate lidar rendering and rolling shutter compensation.
For further examples, check out the [test files](tests).


# Built On
- [gsplat](https://github.com/nerfstudio-project/gsplat) - Collaboration friendly library for CUDA accelerated rasterization of Gaussians with python bindings
- [3dgs-deblur](https://github.com/SpectacularAI/3dgs-deblur) - Inspiration for the rolling shutter compensation

# Citation

You can find our paper on [arXiv](https://arxiv.org/abs/2411.16816).

If you use this code or find our paper useful, please consider citing:

```bibtex
@article{hess2024splatad,
  title={SplatAD: Real-Time Lidar and Camera Rendering with 3D Gaussian Splatting for Autonomous Driving},
  author={Hess, Georg and Lindstr{\"o}m, Carl and Fatemi, Maryam and Petersson, Christoffer and Svensson, Lennart},
  journal={arXiv preprint arXiv:2411.16816},
  year={2024}
}
```

# Contributors

<a href="https://github.com/georghess">
    <img src="https://github.com/georghess.png" width="60px;" style="border-radius: 50%;"/>
</a>
<a href="https://github.com/carlinds">
    <img src="https://github.com/carlinds.png" width="60px;" style="border-radius: 50%;"/>
</a>

\+ [gsplat contributors](https://github.com/nerfstudio-project/gsplat/graphs/contributors)

================================================
FILE: build_extensions.py
================================================
import os
import subprocess
import shutil
from pathlib import Path
import argparse

parser = argparse.ArgumentParser(description="Build and cache gsplat CUDA extensions.")
parser.add_argument(
    "--build-root",
    type=Path,
    required=True,
    help="Path to the central build cache directory (e.g. /shared/gsplat_builds)",
)

def get_commit_hash():
    return subprocess.check_output(["git", "rev-parse", "--short", "HEAD"], text=True).strip()

def main():
    args = parser.parse_args()
    repo_root = Path(__file__).resolve().parent
    build_root: Path = args.build_root
    commit = get_commit_hash()
    build_dir = build_root / commit

    if build_dir.exists():
        print(f"✅ Build for {commit} already exists at {build_dir}")
        return

    print(f"🔨 Building gsplat extensions for commit {commit} ...")
    build_tmp = repo_root / "build_tmp"
    if build_tmp.exists():
        shutil.rmtree(build_tmp)

    os.environ["BUILD_CUDA"] = "1"
    subprocess.check_call(
        ["python", "setup.py", "build_ext", f"--build-lib={build_tmp}"],
        cwd=repo_root
    )

    build_dir.mkdir(parents=True, exist_ok=True)
    for so_file in build_tmp.rglob("*.so"):
        rel = so_file.relative_to(build_tmp)
        dest = build_dir / rel
        dest.parent.mkdir(parents=True, exist_ok=True)
        shutil.copy2(so_file, dest)
        print(f"📦 Copied {rel}")

    shutil.rmtree(build_tmp)
    print(f"✅ Done. Stored build at: {build_dir}")

if __name__ == "__main__":
    main()


================================================
FILE: examples/lidar_rendering.ipynb
================================================
{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Demo of lidar_rasterization usage\n",
    "\n",
    "This notebook shows a minimal example of how to render a lidar point cloud. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import torch\n",
    "import torch.nn.functional as F\n",
    "from gsplat.rendering import lidar_rasterization\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "assert torch.cuda.is_available(), \"These examples require a GPU.\"\n",
    "DEVICE = torch.device(\"cuda\")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Setting up the Gaussians\n",
    "Let's define some random Gaussians to create a scene to render. We'll place the Gaussians in random directions, at a distance between 20 and 120 meters."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Num lidars, num Gaussians\n",
    "C, N = 1, 1_000_000\n",
    "\n",
    "# Define the Gaussians\n",
    "means = (torch.rand(N, 1, device=DEVICE)*100 + 20) * F.normalize(torch.randn(N, 3, device=DEVICE), dim=-1) # random range * random direction\n",
    "quats = F.normalize(torch.randn(N, 4, device=DEVICE))\n",
    "scales = torch.rand(N, 3, device=DEVICE) + 0.1\n",
    "opacities = torch.rand(N, device=DEVICE) \n",
    "features = torch.randn(N, 16, device=DEVICE)\n",
    "velocities = torch.randn(N, 3, device=DEVICE) * 2"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Setting up the lidar\n",
    "We define a lidar with 0.2 degrees between beams in the azimuth direction and with 32 elevation channels between -30 and +30 degrees in elevation. **Note**: We define elevation as the angle against the horizontal xy-plane, which is different from other definitions of spherical coordinates.\n",
    "\n",
    "For inference, we generate points according to the lidar specs, whereas during training we use actual points. To simulate real data, here we add some noise to the observed azimuth and elevation, and drop points beyond a certain range.\n",
    "\n",
    "Note that the points should be defined in the lidar coordinate system _when they were collected_. In other words, ego-motion compensation should be removed prior to running the rasterization if using real data. The movement of the lidar during capture should be provided as input to the rasterization function call. This way, we render the distance between the sensor and surfaces at the time the ray was shot, and can easily simulate different collection rates."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Define the lidar parameters\n",
    "azimuth_resolution = 0.2 # degrees\n",
    "min_azimuth = -180 # degrees \n",
    "max_azimuth = 180 # degrees\n",
    "n_elevation_channels = 32\n",
    "min_elevation = -30 # degrees\n",
    "max_elevation = 30 # degrees\n",
    "\n",
    "# Generate the lidar points to be rasterized\n",
    "azimuths = torch.linspace(\n",
    "    min_azimuth,\n",
    "    max_azimuth - azimuth_resolution,\n",
    "    int((max_azimuth - azimuth_resolution - min_azimuth) / azimuth_resolution) + 1,\n",
    "    device=DEVICE\n",
    ")\n",
    "elevations = torch.linspace(\n",
    "    min_elevation,\n",
    "    max_elevation,\n",
    "    n_elevation_channels,\n",
    "    device=DEVICE\n",
    ")\n",
    "azim_elev = torch.meshgrid(\n",
    "    azimuths,\n",
    "    elevations,\n",
    "    indexing=\"ij\"\n",
    ")\n",
    "azim_elev = torch.stack(azim_elev, dim=-1) # (n_azimuth_channels, n_elevation_channels, 2)\n",
    "azim_elev += torch.randn_like(azim_elev) * 0.001 # add some noise to the points\n",
    "pc_range = torch.randn_like(azim_elev[...,0]).abs() * 50 + 2 # random range for the points\n",
    "pc_azim_elev_range = torch.cat([\n",
    "    azim_elev,\n",
    "    pc_range.unsqueeze(-1)\n",
    "], dim=-1) # (n_azimuth_channels, n_elevation_channels, 3)\n",
    "\n",
    "######## remember to convert to radians for going to xyz ########\n",
    "pc_xyz = torch.stack([\n",
    "    torch.cos(azim_elev[...,1].deg2rad()) * torch.cos(azim_elev[...,0].deg2rad()) * pc_range,\n",
    "    torch.cos(azim_elev[...,1].deg2rad()) * torch.sin(azim_elev[...,0].deg2rad()) * pc_range,\n",
    "    torch.sin(azim_elev[...,1].deg2rad()) * pc_range\n",
    "], dim=-1) # (n_azimuth_channels, n_elevation_channels, 3)\n",
    "\n",
    "range_filter = pc_range <= pc_range.quantile(0.7) # pretend points beyond some range are not visible\n",
    "pc_xyz = pc_xyz[range_filter] # (n_points, 3)\n",
    "pc_azim_elev_range = pc_azim_elev_range[range_filter] # (n_points, 3)\n",
    "\n",
    "pc_timeoffset = (torch.rand_like(pc_azim_elev_range[...,0:1]) - 0.5) * 0.1 # offset per point from timestamp of the scan\n",
    "pc_intensity = torch.rand_like(pc_azim_elev_range[...,0:1]) # random intensity for the points\n",
    "point_cloud = torch.cat([\n",
    "    pc_azim_elev_range,\n",
    "    pc_timeoffset,\n",
    "    pc_intensity,\n",
    "], dim=-1) # (n_points, 5)\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAZgAAAGoCAYAAAB7QfP4AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/TGe4hAAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOy9d5Ck+V3f/3ry83TunjyzOzubbtMF3Z10utsDRBBBVpEkYwN2IQzlQEki+g/bBQbscolojLFQFZSQRBUyJgmqRBTwk0BIAoXbnPPu5JnO/eTw++Pb3dszO5tndvek5121dTcz3U/o8H1/P+n9lpIkSUiRIkWKFCk2GfLjvoAUKVKkSPHliZRgUqRIkSLFliAlmBQpUqRIsSVICSZFihQpUmwJUoJJkSJFihRbgpRgUqRIkSLFliAlmBQpUqRIsSVICSZFihQpUmwJUoJJkSJFihRbgpRgUjxSXLlyBUmS+PCHP3zXx37/938/MzMzW35Nm437uccUKb6ckRJMik3Dhz/8YSRJ4gtf+MLjvpT7xtd+7dciSVL/X6VS4U1vehO/9Vu/RRzHj+w6bNvmZ37mZ/jkJz/5yM6ZIsVWQX3cF5DiKws7duzAcRw0TXvcl3ILtm3bxvve9z4AlpeX+e3f/m1+8Ad/kHPnzvFzP/dz93ych7lH27b52Z/9WUCQXooUr2ekBJPikUKSJEzTfOTnjeMY3/fveO5isci//tf/uv/zv//3/559+/bxf/7P/+G///f/fs+E8bjuMUWKJw1piizFI8Xt6hN//Md/zNNPP41pmjz99NN87GMf2/D5v/RLv8Thw4cZGhrCsixefPFF/uAP/uCWx0mSxHve8x5+53d+h0OHDmEYBn/xF39xX9eayWR4+eWX6XQ6LC8vA3Dp0iW+67u+i0ql0v/7n/7pn971Hr//+7+fXC7H7Ows3/Ed30Eul2NkZIT/+B//I1EU9Z83MjICwM/+7M/203U/8zM/A8DCwgL/5t/8G7Zt24ZhGExMTPDt3/7tXLly5b7uK0WKR4U0gknx2PFXf/VXvPOd7+TgwYO8733vY3V1tb+Qrsev/uqv8m3f9m38q3/1r/B9n9/93d/lu77ru/j4xz/O29/+9jWP/du//Vt+7/d+j/e85z0MDw8/UMPApUuXUBSFUqnE4uIihw8fxrZtfviHf5ihoSE+8pGP8G3f9m38wR/8Ad/5nd95x2NFUcQ3f/M38+Y3v5lf+qVf4q//+q/55V/+ZXbv3s0P/dAPMTIywgc+8AF+6Id+iO/8zu/kHe94BwDPPvssAO985zs5efIk733ve5mZmWFpaYlPfOITXLt27XXZDJHiKwBJihSbhA996EMJkHz+85+/7WMuX76cAMmHPvSh/u/e8IY3JBMTE0m9Xu//7q/+6q8SINmxY8ea59u2veZn3/eTp59+Ovn6r//6Nb8HElmWk5MnT97Ttb/lLW9J9u/fnywvLyfLy8vJ6dOnkx/+4R9OgORbv/VbkyRJkh/90R9NgOTv//7v+89rtVrJzp07k5mZmSSKotve47ve9a4ESP7bf/tva877/PPPJy+++GL/5+Xl5QRIfvqnf3rN42q1WgIkv/iLv3hP95MixZOANEWW4rFifn6eI0eO8K53vYtisdj//Td+4zdy8ODBWx5vWVb//2u1Go1Gg6/+6q/mS1/60i2Pfctb3rLhMW6HM2fOMDIywsjICAcOHODXfu3XePvb385v/dZvAfBnf/ZnvPTSS3zVV31V/zm5XI5/9+/+HVeuXOHUqVN3Pcd/+A//Yc3PX/3VX82lS5fu+jzLstB1nU9+8pPUarV7vqcUKR4nUoJJ8Vhx9epVAPbu3XvL3/bt23fL7z7+8Y/z8ssvY5omlUqln1ZqNBq3PHbnzp33dS0zMzN84hOf4K//+q/59Kc/zcLCAh//+McZHh7uX+tG13TgwIE193I7mKbZr7H0UC6X74kwDMPg53/+5/nzP/9zxsbG+Jqv+Rp+4Rd+gYWFhXu9vRQpHjlSgknxusHf//3f823f9m2Ypsmv//qv82d/9md84hOf4Hu/93tJNnD+Hox27gXZbJa3vvWtfMM3fAOvvvoqo6Ojm3XpACiK8lDP/9Ef/VHOnTvH+973PkzT5Kd+6qc4cOAAr7322iZdYYoUm4uUYFI8VuzYsQOA8+fP3/K3s2fPrvn5D//wDzFNk7/8y7/kB37gB3jb297GW9/61kdynSCudf01gUit9f7+sJAk6Y5/3717Nz/xEz/BX/3VX3HixAl83+eXf/mXH/q8KVJsBVKCSfFYMTExwRve8AY+8pGPrElzfeITn7ilpqEoCpIk9dt6QbT2/vEf//EjudZ/9s/+Gf/0T//EZz/72f7vOp0Ov/Ebv8HMzMx91Xtuh0wmA0C9Xl/ze9u2cV13ze92795NPp/H87yHPm+KFFuBtE05xabjt37rtzacOfmRH/mRDR//vve9j7e//e181Vd9FT/wAz9AtVrl137t1zh06BDtdrv/uLe//e38z//5P/mWb/kWvvd7v5elpSXe//73s2fPHo4dO7Zl99PDf/pP/4n/+3//L29729v44R/+YSqVCh/5yEe4fPkyf/iHf4gsP/x+zbIsDh48yP/7f/+Pp556ikqlwtNPP00YhnzDN3wD/+Jf/AsOHjyIqqp87GMfY3Fxke/+7u/ehLtLkWIL8Ljb2FJ8+aDXpny7f9evX9+whTdJkuQP//APkwMHDiSGYSQHDx5M/uiP/ih517vedUub8gc/+MFk7969iWEYyf79+5MPfehDyU//9E8n6z/KQPLud7/7nq/9LW95S3Lo0KG7Pu7ixYvJP//n/zwplUqJaZrJSy+9lHz84x9f85jbtSlns9lbjrfRtX/mM59JXnzxxUTX9X7L8srKSvLud7872b9/f5LNZpNisZi8+c1vTn7v937vnu8xRYpHDSlJNqiOpkiRIkWKFA+JtAaTIkWKFCm2BCnBpEiRIkWKLUFKMClSpEiRYkuQEkyKFClSpNgSpASTIkWKFCm2BCnBpEiRIkWKLUFKMClSpEiRYkuQEkyKFClSpNgSpASTIkWKFCm2BCnBpEiRIkWKLUFKMClSpEiRYkuQEkyKFClSpNgSpASTIkWKFCm2BCnBpEiRIkWKLUFKMClSpEiRYkuQEkyKFClSpNgSpASTIkWKFCm2BCnBpEiRIkWKLUFKMClSpEiRYkuQEkyKFClSpNgSpASTIkWKFCm2BCnBpEiRIkWKLUFKMClSpEiRYkuQEkyKFClSpNgSpASTIkWKFCm2BCnBpEiRIkWKLUFKMClSpEiRYkuQEkyKFClSpNgSpASTIkWKFCm2BCnBpEiRIkWKLUFKMClSpEiRYkuQEkyKFClSpNgSpASTIkWKFCm2BCnBpEiRIkWKLYH6uC8gxVce4jgmiiIkSUJRFCRJetyXlCJFii1ASjApHhmSJCGOY4IgwLZtJEkijmMURSGTyaAoCrIsp4STIsWXCVKCSfFIkCQJQRBw4cIFbNtm9+7dyLLM3NwctVqNgwcPIkkSsiyjaRqqqqaEkyLF6xwpwaTYcvSiliiKiKKIarXK3Nwc+XweRVH66TJZlkmSBNd1AfopNFVVU8JJkeJ1CClJkuRxX0SKL08kSUIURYRhSBzHtNttvvCFLyBJEs8++yydTofZ2Vna7TZJklAoFCiXy5RKJQqFQp9w4jgGQJZlZFlOCSdFitcJ0ggmxZaglxKLoogkSbh+/Trnz5+nVCqhqiq5XI58Pk8cxywvL7Nv3z5qtRq1Wo25uTnCMLyFcCRJ6kdBruumhJMixROOlGBSbDriOMb3feI4JgxDTpw4QavV4o1vfCP1ep16vd5/rCRJJEmCZVlYlsXk5CRJkuA4Tp9wZmdnCcOQYrFIuVymXC6Ty+XWEI7neWtqOL3UmiRJKeGkSPGYkBJMik1DLyUWBAFJklCv1zl27BilUolXX30VTdNoNBoMZmU3WvwlSSKTyZDJZJiamiJJEmzb7hPO9evXieN4DeFks9k+4YRh2CeW9TWclHBSpHh0SAkmxaagF61EUUQcx1y6dImrV6+yb98+tm/f3l/UexHLIO5WBpQkiWw2SzabZdu2bSRJQqfT6RPO1atXSZKEUqm0hnAAwjAkCII1hNOLcHoptRQpUmwNUoJJ8VAYnG3pdYAdP34c3/d5+eWXyefzax6/nmA2Ipy7QZIkcrkcuVyO7du3kyQJ7Xa7TziXL19GkqQ1hJPJZIBbCQdA1/U+6aSEkyLF5iElmBQPjCRJCMOQMAwBWFpa4uTJk4yNjfHGN74RRVFuec5GBPOwkCSJfD5PPp9nenq637FWq9VYXV3l0qVLyLK8hnAsywLg5MmTZLNZtm/ffkvDQEo4KVI8HFKCSfFAGJxtieOY8+fPMzc3x6FDh5iYmLjt8wZTZb3/bnanvCzLFAoFCoUCO3bsII5jWq0WtVqN5eVlLly4gKqqlEolXNfFNM0+GQZBgO/7/QgnJZwUKR4cKcGkuC+sn22xbZtjx44hyzKHDx/up6Ludow7/bzZkGWZYrFIsVhkZmaGOI5pNBrU6/V+08DS0tKaCMc0zT6JBkEAcAvh9LrUUqRIsTFSgklxz1g/2zI3N8eZM2eYnp5m796997S734wazMNCluU+kdi2jWVZlEolarUa8/PznD17FsMw1hCOYRh9wtkowhnsUkuRIoVASjAp7gmDsy1RFHHq1Cmq1SrPP/88w8PD93ycrajBPCxkWaZSqVCpVADRCNBoNPozOGfOnME0zTWEo+v6LYQjy/ItXWpPwv2lSPG4kBJMijti/WxLs9nk2LFjZLNZXn31VQzDuK/jPUib8qOGqqoMDQ0xNDQECMIZTKedOnWKTCbTJ5ueOsFGhLO+hpMSToqvJKQEk+K26KXEPv/5z7N3715WV1e5ePEie/bsYWZm5oEWyychRXa/UFWV4eHhfqQWBEGfcK5cuUK73SabzfYJp1gs9gnH9/01KgMp4aT4SkJKMCk2RC9qieOYZrPJqVOn8H2fN73pTZRKpQc+7voF9XEvsA9yfk3TGBkZYWRkBADf9/uEc+nSJTqdDrlcbg3hKIqSEk6KrzikBJNiDdbPtlSrVXzfJ5fL8eqrr6KqD/eReT1GMHeDruuMjo4yOjoKCMLpDX32/G/y+XyfcAaVoufm5lheXubAgQMp4aT4skNKMCn66NUQ4jgmjmMuXLjA9evX0XWdXbt2PTS59PCk12AeFrquMzY2xtjYGACe5/UJ5+zZs3ie1yecJEnwPK9POJ7n3Va4M1WKTvF6Q0owKdbIvcRxjOu6HDt2jDiOeeWVV3jttdc27VxPYgSz1ec3DIPx8XHGx8cBcBynn1JbWVkhDENee+21foSTz+c3NF9L3T5TvN6QEsxXOAZnWwAWFxc5deoUk5OT7Nu3r5+m2axF+ElsU37U6FkTTExMMDc3x+zsLBMTExt64fQIp/e6pW6fKV5PSAnmKxjr5V7Onj3L4uIizzzzTD+9A2JOpOcq+bDoLZTr//uVDFVVmZyc7Hvh2Lbdj3Bu3LhBFEUbeuH0ok1I3T5TPJlICeYrEOvlXjqdDkePHkXXdQ4fPtwXguxhsyOYja4nhcCgNUHPC6fT6fQJ59q1a31rgt7gZy6XA8SGwfO81O0zxRODlGC+wrBe7uXGjRucO3eOmZkZdu/evaHcS5oi21rc6TUYtCboeeG02+0+4Vy9ehVgDeH0vHBSt88UjxspwXwFYXC2JQxDTp06Rb1e58UXX+zLpGyEzU5jPUlF/se9wPbShPeKQWuCnhdOq9XqE07PC6enMDDohZO6faZ41EgJ5isAg7MtSZLQaDQ4duwY+XyeV199FV3X7/j8rajBrL++FA8GSZL61gQ9L5yeNUFPeUFRlDWE00uB9szXarUaSZIwNjZ2S0otRYqHQUowX+YYtDJOkoTLly9z+fJlnnrqKaanp+9px7rZKbI4jlleXsY0za/4HfNWeOH0rAmAvhLDei+cQcJpNBrEcczQ0FBqL51iU5ESzJcp1lsZe57H8ePH8TyPN7/5zRQKhXs+1mYSTK/+c/bsWaIoQpIkoihidna2v7t+1KTzuCOorbzfnpNnT94niqI+4SwsLHDu3DlkWcYwDJaXlymVSpim2Y96e144qdtnigdBSjBfhlg/27K8vMyJEycYHR3lhRdeuO+J/F7U8bBYXV3l6NGjALz88stIksTKygonT55kcXGRc+fOoet6vx23Uqnct1rz6w2Pmtx66bJyuQwIwjl58iS+7/etCQzD6D+mZ03Q+0ylbp8p7gcpwXyZIY5jVldXMQwDVVU5d+4cs7OzHDx4kMnJyQc65sNGMEmScPHiRS5fvszOnTu5dOkSqqqSJAmFQgFJknjhhReIoqjvw3Ljxg1Onz69Rha/XC6jadoDX8eTiseZJlQUBcMwyGaz7N69e40XTs+awLKsNdYEg144qdtnijshJZgvEwzOtrz22mvs2bOn38J6r1bGt0NPtuRB4Hkex44dw3Ec3vzmNyPLMpcuXepf8yB5KYrSN/7avXv3Gln8y5cvc+LEiTWikaVSCUVRHvi+ngQ87vRc7xp6ZHAnL5yrV69y8uTJW7xwNE1L3T5TbIiUYL4MsD4l1kt7TE9P89RTTz106uJBI5jV1VWOHTtGuVzm+eefR1VVOp3OhnMwG7XrrpfF30g0siepUqlU+irFrzc87oX3Tq3Sd/LCuXz5Mp1OZ40XTo/0U7fPFJASzOseg1bGcRxz+vRpgiBg165d7N27d1POcb8EM5gS279/P9u2besvJrc71r3Mg2wkGlmr1ahWq8zOzhJF0Rpb456G193u7Ssd9zOLcycvnIsXL2Lb9hovnDsRTmpN8OWPlGBep1hvZdxqtTh27BiWZZHNZu+rS+xuuJ8i//qU2PrrGIxYBn9+EPREI3saXp1Opx/hXLlypT9w2PuXyWSeuEXsfgctn7RrWO+F43len3DOnz+P67prCKdQKGxovtZDJpNJCefLCCnBvA6xfrbl2rVrnD9/nt27d7Nr1y4+97nPbdpgJNx7DaaXEqtUKv2U2HrcztHyYWsRg5Iq27dvXzNwuH7+o1KpUC6XMU3zoc65GXjSajAPC8Mw1njhuK7bJ5zBtGYv0uwRTqvV4rXXXuPw4cNphPNlhJRgXkdYP9sSBAEnTpyg1Wrxpje9qd96+jBF+Y1wtxTZnVJiGx2r95z1x9hMDA4czszM9Oc/eum0M2fO9Ac9M5kMvu/fVdFgq/C4F86tjKJM09wwrVmv1zl9+jS+71MsFvtNKD1Bzt7slu/7/d+nhPP6Q0owrxNsZGV8/PhxSqUSr7766pr23c2UdoE7E4zneRw9ehTXde9pgHN9UX+zIpi7Yf38R6876uLFizQaDT796U/fUjvYLAfPO+FJiGDiOH5ki/X6tGaPcJaWloiiiL//+7+nWCz2I5xBL5zU7fP1h5RgXgcY9G1JkoRLly5x9erV20YLW0EwGx2vNzg5NDR0zwOctyOYR41ed9TKygqaprF9+/Z+/aZXO8jn8/10Wi+V8+WIx1UH6kWPvX+2bfOGN7yhH+H0vHDWWxNsZL6Wun0+mUgJ5gnGet+WXgE9DENefvll8vn8hs/brMn7HmRZ7g/U9a7rXlNiG13b4H8Hj/k40LsOXdfX1A56O+tBl8me6VelUiGXy21aS/TjXgiflEYDRVH6Xjg9a4Je40a9Xl/jhdOLMnteOCnhPJlICeYJxfrZlqWlJU6ePMnExAT79++/4256K2sw95sSux0edYrsfrE+lWPbdp9wrl27BrCmJTqbzT7QAvYk3PeTQDAbpenWN270vHB6hNOzJhh8H3q1nNRe+slASjBPIAZnW5Ik4ezZs8zPz/P000/3i6V3wmZHMD2CeZCU2EbHgs1pU35UGHSZ7O2s10vi9zrUev/Wu4Le7fiPE08KwdwtIhz0wpmenl7zPlSrVS5dutQX91z/PqRun48HKcE8QVg/22LbNkePHkVV1fuSe9nsCAag0WiwuLh43ymx9djMLjIniDBUGfkRLwyDHiw7duwgjuO+ftf8/Dxnz569RTDydqKdT0oE87gVEO6FYNZjo/dho9b0QcLptaZv5PaZEs7mIyWYJwTrrYxnZ2c5e/YsO3bsYM+ePff15dvMIr/neczOzuJ53h3rPveK20UwD7LQtt0QW5YYym5ue3HbC3H8iHJWR5XvvsjIsnxLh9p6wcj1ciqDXX+PeyF7EiKYzbiG9a3pg144i4uLnD9//pZIs0f8vVqn53lUq1Wmp6dTt89NQEowTwAGrYyjKOLUqVPUajVeeOGFvujg/WCz5fVN0ySTyTw0ufSubaPfPQjB6KqMqd2sRdl+hO2H6KpCwbz3j/b6c8vdxeRBl5P1gpE918hBOZVeh5rjOI+kHfpOeBII5kEimLth0Atn586da7xwepHmoD1EuVzub6gmJydvMV9LCef+kRLMY0SvS8Z1XbLZLM1mk6NHj5LL5Th8+PADe6E8bIosSRIuXLjAlStX2L9/P3Ecs7Ky8sDHW4/1hPKgX9SitVa631BlnEDCVB9uocroChldEFcYJ9Q6PhldIWs82NdF07Q1ciqu6/YJZ3V1lSiKsG2736GWz+cfacrqSSCYR5Gm28gLpxdp9oZve8rQKysra7xweuZrg4STun3eHSnBPCb0ZltmZ2dZXl6mUqlw6dIl9uzZw8zMzEN94de3Fd8PBrvEeimx69evb2rTAGzNJL+yBemyrVh2TdNkYmKCiYkJzp07RxAElEqlvg9OHMdr6ga92Y+twpNAMI9y2LOHQXsIEKnNq1evMj8/309tZjKZNe9Fz8codfu8N6QE84gxKPfSU0BuNps4jsNLL73U91J/GDxoiux2XWKb0TRg+xGWJvd3gOsjmMdR7HaDiCCGO81PKrLESH7rXDUlSULXdaamppiamlrTituTxJdlmUy+hJUvMjMxvOm20k8KwTzuRVlV1f7Q5wsvvEAQBP0Ip+eFk81mNyScnlI0pIQziJRgHiHWz7b0WlwVReHw4cOblou/X0JYnxJb3yX2sAQQRjG2F+L4EkM5/Z5SZFGc4Ecxlnbr6p8kCU03vCVFdr/o+BFOmIAUs9z2kICMrvbTY48C6xf39a24vc6oS3PLXJ9fZPHaxU23lU4JZu119GbMNE27oxfOiRMn+vJCvVqPqqp3dfv8SiKclGAeEQblXgDOnz/P9evXmZqaol6vb2qh9366yFzX5dixY2tSYuvxsASjKjKKIpHV1Q2Pt/7nhhOw0HCpZPUNCabuhGR0mZYbkr+PYj6IxbRqB1iaIlqcATdM8MKYjKbwMOusE0S4QUxGF8e+V9xpcXfDBF8x2bNzhuf27yYZaIneyFa6VCrRDkR9SrmHDjh4MgjmSWiVhjsT3b144fQcV3uEs5EXznrC+XK2l04JZouxXu7FcRyOHTtGkiS88sor/QnxzcS9EsLKygrHjh276+DkZnSllTM3ayMbfZnWX29GV9Bvs0gXLZWmE1K07v3jG0Qx16sOli7T9iKGszoxEMQxZUtjNGfc9nyDaDgBsiRtSGxJAlEcEyfyLc9JEihl7j/i0hQJWZL6/+UuttLLjQ6lfBYrX2L72BB6Jk8pe+cI53HUP57EawBR+L9XotvIC2cjPbtBwult/r5S3D5TgtlCrE+JLSwscPr0aaampti3bx+yLOO67qYX0O8WwQymxA4cOMDU1NQdP9BbIT3TUyno/TyIoqXdMf0lS9J9L9a2H4GU4AYxk0UTP0rIajK6IqPIEmGc4LrhXdubnSBClWU2atge7D4bRBDdfC8WWx6KJDGcE4R7t+hBU+Q7Ni5sZCt9bWGFoNPgtZNn8TyfiaE8Q11S2shWOo1gbuJhUnXrHVcHuwXXW3yXSiWKxeJtCefLxZogJZgtwuBsSxzHnDlzhqWlJZ599tn+jgc2X/n4bsfspcTuZ3DyflJk1Y5PVlcwNkht9ZAkST+KK5fLxHGM67qb6sK5HkVLo+WFmKpClIgoSJYkcrogT9uPiJKEgqkSRDG2H21IcuOFmyZlXhjj+CFuGK/5/XoM525GEOYWKw8YhsHeHVPAFHv3xaw2OsRu64620j2CWWn7hPGd72WrMFj7eJzYzOsY7BaEtQKq8/PzBEGwhnB65N+Tijp16lR/nupDH/oQhw8f5qWXXtqUa3tUSAlmkzHo29LrCDp27Bi6rvPqq6/e4qK4FQRzu5TWvabENjrevRBMkiQEUUzTTRi5TXH++vXrBEHAtm3bGBkZoV6vs7y8zPHjJzBMk+GhCsVSmeGhyppp97uh4QQoskgjBVG8ITnkDRVVlsgaKg0nIB64pUpWI+r+ou1FyBIstTySJGHsNgtuyw1w/IiMIUgpSRI6fkzJun1OvXddQRQTRMkdX9eOF2IHEaaq3HetCUT0M17JA/k72kpHUcTi4iJWcRjjMbl8PilF/iiKtozobueF05vDGVTsLpfLNJtNKpUKSZLwO7/zO4yOjqYE85WM9VbG169f5/z58+zcuZPdu3dvuOhsVQQzuHDdb0psPe6VYGp2gO1HzAzdqpkWhiEnT56kWq32pfF7+en5+XmGt+0i7LZsXzpzCc85SS6XZdfkMOVymWKxiKIoeGGMH8a3LLh+GKPIEnEi6iqDBOOHMW649ndBFNNyw5uvmSQhK+I1KVkqThCjyhINJ7xtM4GmyOQLGoYqs9rxqTsB28vWPXW4tdyQeF2KsOEEfQIEoVTghnG/NhREMZqydhHuRVGWrqIr0i3nTpKEhJvqBBvZSn/xi1/sy9o8LlvpJ4Vg4ji+r43Ng2LQC6fXnj6o2N3biH34wx+m3W6ztLS0ae/FBz7wAT7wgQ9w5coVAA4dOsR//a//lbe97W2AyHL8xE/8BL/7u7+L53l88zd/M7/+67/et7K4H6QEswnYyMr45MmTNJtNXnzxxf4g10bY6hTZg6TEHvQaJUns0NeTV7vd5rXXXsMwDA4fPsznPve5dc+TyJka2XwBbXIMP4wJAtGh47brnDp1qr+7kzNFiqUSOaO85jy9WZWNiLDt9Rbzmx93WZIoWCrn7IiytXbHKklSv5biBDFOEPUJJk4SWt1FfHAhtzQFQ5Fw/GhNHSeME7wgukUFIDsQ9fRgBxGqdJNgBusvSZJQtwNURabcrT+13YC5hkuMxEhO3FOSxDScoH9tK22fKEkwVQUniJgo3lyketpdIBYZVdO4slClWq0xd/E6kXuGYtZcI6WyVbbST1IN5nGk6jZS7P70pz9NqVTiU5/6FNevX+f7vu/7+NCHPsTXfd3X8U3f9E08/fTTD3Subdu28XM/93Ps3buXJEn4yEc+wrd/+7fz2muvcejQIX7sx36MP/3TP+X3f//3KRaLvOc97+Ed73gH//AP/3Df50oJ5iGxvpBfq9U4duwYxWKRw4cP3/ULKcty/7mbhV6KrJcSGx4efmB5/d7x7iWCGewU62F+fp4TJ06sEe1cf7wEMJSb6SOxuGuMFLMcuZFjdHiaqZxMtVplebXK2RvXua4LgclcoYSWyVPKZ8kaG6emCpbGcsvDH4gGCpbGYsNFUyS86Pb3Vslq/VSa7Uc0nYBKVqPtheQGSENc860LUy9SyehrC+mGKvdbmVt+zGrbYyxv3FY5QJKkW7TX3FBEJ5MFg7yp0vJCGk5MTr95FEtX6L3U66MfuEnIQsJeIVcoUCgWUSQJU0lwO601g4ZbZSv9euwi20r0viPf8z3fw7/9t/+WXbt28cu//MusrKzwt3/7t5w5c4bf+I3feKBjf+u3fuuan//H//gffOADH+Bzn/sc27Zt44Mf/CAf/ehH+fqv/3oAPvShD3HgwAE+97nP8fLLL9/XuVKCeQisn225dOkSV65c4amnnmJ6evqevjC9D/NmpggkScLzPF577bUHSoltdLx7LfK7QUTHiyhnVM6cOcPc3BzPPffcmsaG9ddS8xKu1z0KpbUpINuPMBWZclYnmzXIZrNrUjvVapWlxQUWqucpZA3Ghyv91M5gmkOWRLtv2wvRQhkvjBnO6RQzGksSZLS1r3vTDVEkEWXIkkRvnMQJIjRFwgk2rvFshCASKT3pNp1gSZKA1HVhXPe6tNwQuXsdcKv22lBWo5LV+s/LGypRzJp03iAJbhS7DnbyKbLExLp6U84yGB4eFvUbx6PTamyJrfSTlCJ7Eq4D1taDbNvmjW98I4cOHeInfuInNvUcv//7v0+n0+GVV17hi1/8IkEQ8Na3vrX/mP379zM9Pc1nP/vZlGAeBTayMj5+/Di+79+3y+NmE4zrupw7d44wDDl8+PBDKSBXO0L6Qr0Pgul4EY12hzPHTiPBhj4269uULVVGQqSeKgMLsRNEDOV1RnJr5zjcMMHI5NhZLLJz507CMLxlwnpw4SsWi+QMFUOVaXkRURyz0vKwgwgvSsituwfbD1FlmawBdTvACyNMTbQgy5KEocr9Gk7OUNG7NZiVts94wVhDBBIJ2XWtyystD6mrm+aFCYkmSHCx5ZHRbhb07SBCkSRuN8ayXvFZkqR++mwj1O2AgqXi+BFuGDOU1e/Z+G21ExDEMDoyuiW20l/pKbKNrqNnIx1FEY7j9O2hNwPHjx/nlVdewXVdcrkcH/vYxzh48CBHjhxB13VKpdKax4+NjbGwsHDf50kJ5j6xPiW2srLCiRMnGBsb48UXX7zvlMEgwTwseimxfD6PrusPRS62H3GjZmOqMpO5e68TxU6DE0eOMj05zjOHDtz2yxpGQlo/bynkdJmSpd5SSM/qyoYpIzeIkCWpny5SVXWNpEdv4K1arXL69GmCIKBYLPYHFEdyWWpOyFBWx7UUWl68poA+OpCqkiSw/RhDlVFlCU2R+x1gcbdrTldldEUs9hIJNTsgZyhoikyUQNMOyHaJCEAbaFWWpYREklAVmSCKGBy+H8np9yS26YcxmnJn+fiWG2JoMjVbDIp6oXg/75VgcoZCx2eNOsBm2kqnKbJbrwOEIGen0wHYFLuMHvbt28eRI0doNBr8wR/8Ae9617v41Kc+tWnH7yElmPvAeivjc+fOMTc3x6FDh/q97veLzSCY9V1iuVyOL33pS/d9nJYboisSRldGZbxokTdU4sC9awQzeA07d+9lanKyTy5JkuB0JVRALGaXVh2yvsahSRGxZDQZTRGRQBQnjOYN5psufhizvZxZM8Bo6codjcAGB94GF75qtcqVK1dEcbtUQrEKuE4AipjuL2fEezGYqipaGjlDZaHpUbREl1ZvbmRwviVvauRNjYYTEMUxtg9FS0aVZWzPo+EE/UaEwQhHlSVylkrOUNeks9Zfx+0QxQm1bvfZnQYyc4ZC3QkpZ0RKrYy4hnslGFNT1tR/1uNhbaWflNTUk3IdGxHMZkYwuq6zZ88eAF588UU+//nP86u/+qv8y3/5L/sSOINRzOLi4j3Zta9HSjD3gF5K7MKFC0iSxNDQEMeOHUOW5fuyMt4IvaL3gxKM67ocPXoU3/f7XWKtVuuBjmf7Ia4kMaIpKLLEaHdBtMM7p8h83+fo0aM4jsPLL7+MpFsYqsxCwwFAVxU0WaLtJuRMUYivWBqmKWocnfBml1SSiDTbIiJdpG6w8G2kT3Y7rF/4evWbuaUV5peWabeaBImCKScEw8O31G9AdKEN5zQajmhrXu14jBetjU5HGMWEUcxwzsALY1QZhvPGbXXB1nSR+RF+GFO0VKp2QFa/uah7YbyhvpkiS+iKqCsFUYwbxERxcovSwUbpMz+McX2xkLW8CCcQJHgvLp63Q8MJ0BSZjK7cl630k7KwPykpsl4kJUkSnU4HwzC21Jiul+p/8cUX0TSNv/mbv+Gd73wnAGfPnuXatWu88sor933clGDugsHZFsdxaLfbnD9/nunpafbu3bspX4oHbVUe7BIbTM/dz2DkStunnNFQFZlMd5ZiPXrH20hSpFarceTIEcrlMs8///yaL4Gpif/PGQpNN6ScuXl95YxKpSRmRiwFltoB0wWQEhjK6fhhzPAdZPJrdkDLDcibGtk76Jatx6Ct7q6ZiL977TTlxCdIlDX1m3K5TL5YItYyxEDTlZgqmQRRQjnRsbSNz2fpKj3qabkhCSIau5PwZO81tf2III7Jxgp+FKMEIg3YckOiJMHxI0oZDS8UJOZHQnnA1GRkhBpBECUEcUyJuzchtLwQ1+t6mkjSQwl99uAEkRAOXVd3uputtG3bnD17luEuya+3lX5UeJJSZD2ia7fbd0wv3i/+83/+z7ztbW9jenqaVqvFRz/6UT75yU/yl3/5lxSLRX7wB3+QH//xH+9LC733ve/llVdeue8CP6QEc1usn22JoojV1VUcx+H555/vaz9tBu6XYOI45uLFi7cdnLzX4zXdEEOVaTghQzn9ttPivWMPEozrh8zPXufChQvs3buXHTt2IEkSfhhzeqFJVlfYM3ozZzxYvB8kwIKp4sUSMxmFMBI1DQlR9HaD6LZpGUOVaSQJNdsH9HsmmEHIskTJUolimTcc2gesFSw8fuoMbTfEzOaYGR+irQyRz+cx7pCKkiRw/QhJgnJG48qqjcRauZhBDG4EhrIaUSLufSijoXQXuqyhULeD/vvTdALsIKJgqLjdGZtefWgQcZJQ7QS31UizNIU4gIYPhqZQ6Kbu2l4oiPQBxDkLpoamSERx0t1UbHyM9bbSn/70p5mYmMD3/b4ycU9GZXDQdqvxpERSgwTT6XQeKkuyHktLS3zf930f8/PzFItFnn32Wf7yL/+Sb/zGbwTgV37lV5BlmXe+851rBi0fBCnBbIBBuRegb2UsSdIaYcHNwv3K669Pia3HnSKOQRQtjdm6QxInBJG64ZxE7/qgmyqME1zf5/NHjtNutnj1TW/s70pB7GDDMKGT3H62Z32EldPF8UsZjWpH2NJGcdyXbgGo2z4rnYA9I1lAzJ2M5k2xwN7Bv8X2I1RZ2pCANEUmTsAYiNoMw2BsbIyGlOOZqZ3k1ZhqtUq1WuXIkesA/S6pSqWypo4AIhII4gTPDihndaodj2rbYyir3/JehHFC04vBjVhsiTkYkoRLKx2WWz67R7KM5g1kSaKS1Ym7r7/VtW/uGbj17qWHhiOiEktTiJOEMN44ms3oCrYNCWJAtJeC88IYL4z7dZo7wQ0imt1uOqGYEJEzVGw/QlcknCC6p5RmkiQMDQ31OzAHhSJPnz6N7/trOtS2ylb6SUqRDRLMZrqafvCDH7zj303T5P3vfz/vf//7H/pcKcGsw6DbZJIkXLt2jfPnz/cLYo1GY9PPea8Ec7uU2EbHg3tTyS2aGi03YKXtU7S0DXe6vWPM1hzmq02uXzhDpZjl6776FbLW2rmJoqVxaKpAkoiddmGDeZH119T7Wb6DynDLjchoNz1gqh0fS1fWREYbwfZDsUCrtz6u44UEcdJtXU6Qu/MoThBjqjIJN+U8Bus3tVqNxcVFzp07h2EY/XbocrmMoetkdQU7iAiimJ1DWfww4txSh9GcTrlLFEkiUmiqDF6YoHTvVZEEWRRMtS9BUzAF+Vc7AVGSCCJac4+idtOru7hBRNJ9L3p1tDhJRJfbgCxNECVYmkxGlfqqApJ0f7bTcSIGZaM4wdRELajXENBwgnuul61vUx4Uilyv27VVttK9rMWTEMEMEl2n0yGbzT7mK3owpATTxfrZliAIOHHiBJ1Oh5deeolSqcS1a9c2XdYF7k4wd0uJbXS83vPu9mXJmSqGJrPQcFlt+4QZFS8QWl+99FTvXIuLC/zVa5fZOTHESy8+Q9bceIdragqrbR9ZYs30fA8b1YgGf3aCiLYboqsyRUt0ZlWyGmGckDdV4iTBCUSE1FvAqh2fmu2zYyi7pkid0dXb1j8yukJGlSmbEsttD1WWGc7pZHSFyZJ5S0Q3WL+ZmZkhiiIuz6/QbtS5ePkK1aMnKRVyDJXLjI0MYVlFcoYhFvPYxwkiyiBe5zhGkSScIGHPqN4nVkmS2FER6ZCmGyJLCR0vopSRsTSZjWIR249YaXuYmlAH2Eicc7XtdzvfxHl6tRrH9XEjEXWFcYK2QQ2uh4YT4IfxGgvp9em3HrGYmoKlKRu+/xvhTm3KG+l2bWQrvb5D7X4Jp/cdfBIIJgzDNTWYzewge5RICYZbZ1uq1SrHjx+nUqlw+PDhfrFxK2Rdese9k7z+3VJi69H7Yt0rGWqKzLayxVLLY7XlkTFEhKDIknBGJMGL4PKVK3zHywcw8yUsfe1Hp7doljNieK9gqbS98LaLS5Ik1J0AU0tuIRxDlbFlMaux3PKIkwRNkfvRiixJTBZN0X2XJPihsGTWVaUr5XJzB95b/NwgwvajW2pBOUOGJMHSxNxKzQ7wo3hNlOAEEY4fEcYiCnCDCFWRmSialEolRoYqhHEi2jtrNRqNBhdeO4mSREwMibROtlACxRS7el0hjmX8KMHSbl0EhRpCSBCDJoumB+AWPbMehrIafhSz3Pb7EjTrp/6t7pBoD8M5nShOuNRuo6vi9bwbgijBi+7+mXK7gqRRkiBLN7sR74T7GbS8na10tVrtR5YPYivd+748CSmywQjGtu1NrcE8SnzFE8zgbAvAhQsXuHbt2oaRQs/+dLNxO4K515TYRseD2wg/uiFtL2Q0r7Pc9snoYsBRkoSlcZKAHyb0vusd2+bMiWMEMTz97DMcmB7dcGcoSaI43fZC4jhhOG/cok3Wq+H0nt/2Qqp2SMtPGBpYuOSu2GTNDvCCGE3hll25JEnU7ICw+zxTF4OMOUN8KRuOUHYeLxhCOqfbxhvFST+iCaKYmhORxDFDcYKpCbkUNRF/j2KhLpA1xOKcNxQ6fkTHj/GjAEOVWWn7DGVF6stRZIrZSeTtkzTdEM91iJwWrUada9eu0fRgqFJkelx0SuWzFqfDGDvo2QSEwktHlXECGd8Pqfohpq6SJEl/TqbhBNQ6PtsrGRRZ6qe1VFnYSQ82RsTd7rPBGZsgilnt+GR1ldGsxoJ+bzv9XvRzN2Q0BVOT+4rUd0OvXvigkcNgZLlz506iKLqjrfRGrejw5EYwvRrM6xFfsQTTS4n1usR6qsNRFPHKK69s+Ib2ZBs2G+sjoziOuXDhAlevXn1geX0Q0/Lr921+dHOhDaKEMI6pdnySbntwyw2o2R6jeQO7WeOLR0+yf2aCVqvFzEj+ttfRiwxsP7pti3S1I4YQexGLqSqEcciCHTMRriXYjhehyBJjBYOVtr+hVL2pySw6PpoiJuNXOx6ljM5Y3qDuCK+W8YJ4BXqT+Kttj5VOwLayiRdE1F1BMLYvOuoGlZBtP6Ljh3T8UKR7IqFhNpTVqDsBth+jqxJNJySBvpwM3f+vyhJSNsvMtNBPa7fba3bZhmFQcyI0TWe5YZO19P4wZDmjIZNg6TIrbY+MrtDyQozuUOhKx2e0YGBqN+VrgFvqJ3U7QJbWSv33dM9kCWLuPmR5r+ilw3rdboPvlx/GtL1ww5pZb2HfrOtQ7mIrPdiK3muJ7n23JenOigiPCoMRTJoie51hfUpsaWmJkydPMjk5yb59+24bIm+FtP764z5ISmw9JEkiQeLicpvJIWVNi2wlq/e/5NvKogNqqen2c/ujBZORvM7FCxc4c+kae/Y+xf7d25m9ceOW8zi+IIHBNFhGF2mqjhfektKxdIUoXtv51PFicqqEqYp013zDQ5ZgrGAQRKLwHkYx1U7AWGEtXRqqOJalKcgSzNVCyt3UUDmjU7JuRku2H4niOqArEkEodswjWZUgjJgqWf0UUhiLYm/eVHFDoQc233DRFLlvRyBL4pqjWEHToN7xQZKQJVOQgRsSxTFLLZ/5hsPO4SyqmWV4ItOv39TrdTh7lk6zxj98dpFcLsv20QqrmQJD5RLlrEEUJxTNBL+7KVC7EUuCwVLLx9RkKpnbt2nnTZWOF61Z7NWBIdq6I14HoUCQ3LVpouWGKLJ0SzNIwxHWAUkCByfyfTmf3nXVu51tgxFkD1sdOWxkK72RlXE2m+1/Fx93FLNe6DIt8r9OMGhlnCQJZ86cYXFxkWeeeeauhjpbGcGsl9d/EF2zQTiRTBILD/q7YbSbforihDDwOXLkCEEQ8A1ffTOS24hcW26ALEuikC7Rt0meb7o4fsSzU0XkNQV38feWnxB3fKaLUMnpeFmF5U6A1fGp2x4ZXUVCEEi149P2I9p+2J/5GMpqBFFC2wuFS6UioykSM8MZrG46KenWVeJuHSBnqIRx0m1vFtFbp9tKm1WF5lkUi+aBs4stap2AN82U+0KbuiozGJj1drrDOZ3ZmoOiyMgS/bkiS5OZb7jMNVwsTfi6KF0juJwhvNaHhoZE6qYwRK5YQg9tqtUqZ8+cxfMj9kyU1rTl9sgyiyCOMIq5uNzptllrt23FLmVuv1jGcdzvAuu1hXe8kI4fCS00SWK27mCoCkVLZbbhku8Kh7oDPjemJrPSCRjJCoKv2QEtLyJvKBQtjaGsTtsLN2y4GLQMeBQYlBKCm6KdS0tLRFHE3/3d3/U71HqinY86qomiqG/10el0HliK6nHjK4Zg1s+2dDodjh07hqqqHD58+JZ5ho2wVRGMJEksLi7SaDQ4cOAA27Zte+hj5nSJnKGsMZi6E+p2wGq1yulTJ9k+NsT+p58jl7353ASJlhswGKkrskQUi6I03CSYJBbdXW63+J41VKyBHW/Di5GMGD+KMRVZLIyyhCLLTBYt/IE6ja7KlDIqFxY7OF7E9FCmb3ccJ0k/Oqt2fKp2wK6MTtMNcfyQK1WbsZyOpiostUSaaUcl0z324JxQItSCI9HqWzBUOl64xrhrvU7YYCptKKejqTKGInejHImWGzJRNNletlhseeS7rcbhuiJ5kiQUTYXJIWFtPDY2xsj2XcSBR6Nep9Vq9IUjB50mY1lM9I/kDRpuhBuJ9uW2F+EGN8lhEGEs5Hh6Ev91O2Cx5bPsJDwVJ4zkDZpuyErLo+YEtN2QXSNZDFVBU8QQbVaXaTo+bS+kaKk33TcVmadGsv30WEZXkGWJJBFWCb2GkYYTUOjW/BaantBiUzc3RXa/6Il2WpZFp9Phueeeu8VWerB+k8lktvxaN5qDeT3iK4Jg1s+23Lhxg3PnzjEzM8Pu3bvveee0FV1kruuKVAk8cEpsI6iKzHBWW7NjbDgBHU/UJQYji2rb48S5SyzP3+D5Q09RGplAU2Vqtt8v1C+7cKPuMFop9Y8pZiASLE1dowI8nNcxulGBKLBH1G0fQxNzKwVDyPNbmoKiiBpC0VQoZzQurXRECjOMmSqZ5AyVKE7YM5qlYGnEcYKqyLS9kMJAm7Tji1kWt+s+6YUx43mTII6JgrBbZ7r5eF2Vqag6NVUm7Eqb+KFIt+0dyzNetNZof4VxQtsNKWU0kiRZoxVWyeqstD3CKEFXZcIooekI90kQUjl+KOpdfhhBN63Xgx8lVDt+t0lBpZTRaToSe2a2I0nTfeHIwfqNJ+mYuQIz48NIRpY41ruOlsmaAdVBtNwQQ5W6/5XRVQlFFoOuvegyqysEGY28qRB0jdiGczotN6TlhUyVLFbaPnGSYKg370GSpDUpzKKlUVx3/mbXonq57TOaN7qt2nK/Rflx1z7iOEZV1Q1tpWu1GsvLy1y4cOGR2EqnBPM6wKDcSxzHRFHEyZMnqdfrvPDCC32ZinvFZneRLS8vc/z4cVRV7XvUbxY2ira8IGa55VIwVXLdnWYQBPzNPx7Bs1t87UsvsG1siDgWkvODMh+GAotNrzuTIkinYKqi1VZXqHb9UKbK1pqaj3BUFCmp3iIWIzFiiTbdIUtZozygqzLXqw67RzLMN1x0VaGSUYkTERWpssRcw8XU5DV1gKmyRZIk+FHCUssXGmA5gzhJmK07FC2NckbH7sq4rB8A7B2r51SZN8U0eqMtRDfdMEaRxS5eksRi2fFElNJrMqi2Rf0ooysstwVhjOUNOn7EUFnUU8JIDHECzDdcGm7ESLeuIpQFRJ1lsBYSJ6BZWWZmCmvqN3NLK1y4chW7Y1MpZHFGhiiXy4yWShsu1uWMhu1H5HWFhaaLIkkkcYIdCGvoMBbzK7oio+oKbS9c49zZO+JGbce9rr2xgnFbFei8IV6X3udqW0lkDTqdzmOvecDGc2MbzT41m02q1Sqzs7OcOXMG0zT7hFMqlTbFVno9waQ1mCcM6wv5jUaj75Xy6quvPtCHQO7m0B+2CLi+S6zZbD7wsW6HHsEstzy8MGZb2SJjKIwVzK4/vZDA+avPfJGcleHw4TczWenVW6T+7IXtR3hhhCLLFE1lTR3C0BRkOWahW9wdrAGEUUzHj/pF8cHhvDiOmW8F7JwWX6CaG4MuOnjG8gaTBYO5hkdWF5PsJDF1N6LuSOR1mbrti3bcbcKca6XtE8QxEwWTlutT7XjkTa3bPSUW7IYdYGoybTdgKGf0rQEW2yElPenf62A7sCKLYr4iCyXidrezLQFMVUId+AxUskKgc6XtM1E0GcrprLb9blpJ6dcreooCcZJgeyFtX0Rk5YxGtePjhjGj6xSNa3ZA3K0pAf36TWLkGd82Q9GQ+nYEvaJ1sVikWCoT6jlGysU+YWV0ITzadEPG8wZtPyJE6n4mRHTjBCEJErYXMlUSu/O8eatfz5rPW/d1ulMMIt1mJmap5eFFj79z616ELhVFuUW0s9ehduXKlX7H18PaSq8nmM3cfD5KfFkSzKCVsSRJXL58mUuXLq0RZXwQ9N7whyGYjbrETp8+/cCR0Y2aTUZXb+n+cSNouwF586YIYs9zJEkSrl+/zrGTZygNT3FozwzjxY0nn9teSBDGZDSZbSWzTzyDSJKErKGukYWp2d2uoShGUWSigfy/F0KnvsSnPz1HqVTCd31CSwxoaorMYtMjTmK8SGJ7JcNc3aVoikaAWttHV8VMSk9jq+0FyJK4R0tX0RUfXZFYbLg0XDEXYmgS5xfb+FHMgXFRTwq7hW0nFMcpZUQKLo5jFpseETCWN4gT+kZdq7aP6wv9M0tfq99WyerIsujGGsrqzNddltuidXpQPr/lhtRsn1JWJ4pjrjc81JxH3I1w1s+O5AwFL7g1NVu0ROOCLEtglciNFZjZvZck9Ps+LFeXrnNVgWKxRCZfYPfUKLKsUbI0sobKWFalYyn9hT/otrHPNhwqGR3uQBkNJxCpSkvD7KoMPMh3q+UGuPHjJ5gH+V6vN7vzfb9fv3kYW+k0gnkC0ZttmZ2dZX5+nv3793P8+HFc1+Wll16iWFyfFb4/9N7wKIoeaFeyvLzMsWPHGBkZWdMlpigKQRA80DUlCWuiih78WBKpGUUmMzBI10sTnry2RH5yF5PjI9h+3M+Ld7yQubojzMZMlZGcLmRFEjHHsnPdeTRFRpZlmm7YJ5heSswLo34hvtE1xTp6eRG7USOf0Xn+2WdoNpt0OteoLc3zD7UVsTM0C2jZAuMFS8irZDU6XkTRVJESCOOYgxN5VKWn1XWz1iSELyXs7uR9ECVoiqgXjOcNOmFMzfYZzhnsHskR1VXiSNQGVFlMi16rOlQ7HooMthcxnNOJ4wRNk1nthP12YT8SJNUr+OuqvGaHvm88z2JDmLWFXRfMjK6w2hGyMWN5A0uVcQOhPFzJaJQ3aBM2NfGcKPGpdG2OewZuqpww23BZbLoUTQ0/UikOyKo8kyQsrNa5trDC/NIKKzcuo+s6eq5Ep1JGTkRNCOgT9mhe1OgUSbpp39x9PQebG2RJvM4ZXeFqw6NgqWv+Poggiql3nT3XtziP51Ra1pORInvYKX5d1xkbG7tnW+nB7sBB9KKpnmFeGsE8ZgymxHqFuc985jOMjIzwwgsvbIpZz/1KsPSwPiW2vkvsYbrTtlfWSkjM14XJV94QLdXLba8/9Z2RQ77wxS8hKSqHX3ojbqz05yR66Zdax+dG3aFgaoRx3PecbwcSji86q3RFXtMVltEVwu4O1AsirtccUfB1RE2ll2I6c/EqZ0+fZ6iYZduo+HIpZpbZlSblsk6hWKTRqGMvz9G4eJ56KUemUMJXcxhWluG8Sd7SkCWxwDedEFOTCcKEoiW0yjpeSDmrs9wSBDGa15FkMVRYruh4YcxK2+un7MI4IQhvTtK7QSTIpGuSltGFfMzO4Qx+GGOpEmEiocoSLS+67YIaxgl6t3Xa9iPaXoSmiLmQqZJJ2w1xgpiCATU/otVVJA7soNtavHbSPKOr/aaDand4UpYE+RiqwnjBZDgnrJ5X2x6yLBFGCcM5HdXMsGfnDsoZjeWmS+x1uDS3zGvnrhF5Nlld5uSZc8hWnkK+wFQlS9G8eb6mGzLfcEWHXfd+k0RYRu8eyVLtBEyVTfwwHujMu/X1iGFDZWc/iol5/ASzFV4wD2orPbiJ3Wy5/keJLwuCGZxtAVhYWMC2bZ599lkmJyc37TySJN33LEwvJRYEwW27xDaz/bn3BTFU4R0PYke6urzE35w8S3F4lOcO7GGyJD6w1a5FcW+nWs7qDDuiIC0h2pdH8gbjWZnxvIbXVQkeJJj8wKKz2hGqzDfqDpYqo0ei7nH14jkWFhb4hleeZ2lpqf/cnhqvJElUymWmxoY4u9BmWE6QAxunVefs5QtU7ZiRcpb9U8NIZo6Vts/BiUK36C70yJxASPMbqoxjqKx2fHYNi/kTXRG7wYvLHUbzen+h9CNoe6LLzQ1iqraPrsjkDYWRnM7VqsNo3mCu7gqV4kS4cuqqzHB30FNIygSUBqRxOl6IhGhycIKYSyttShmNUkan5YpJ/EpGxY9gvKTj+BEglJ1N9VaCkSVYaLiM5A3REMHN6f2srkAiDMeqHZ8rqx28MGLncE6kLrsR3mLTY7UTsL1c5A0HStQ6Hpevz9OqLUMcceniRZpOwPRIASVTYKRcZudEhThOyBtKf4gVYKXt40cxTVfUaVpuSNHSuFq1sTSRchMKzSKys7rilxuhbge0w9dniux+cD+20mEYUqvVyOVym1qDed/73scf/dEfcebMGSzL4vDhw/z8z/88+/bt6z/GdV1+4id+gt/93d9d4wdztznBjfC6JpjB2ZaepPexY8cIwxDDMDaVXHq4HzLopcRGR0c5cODAHeX1N4Nggigm7hapZVlIp2sytBavcv3GLAcP7GNibISOJxai3lT/enFIU5UpZkREMNQdnNNVhbwhTKnW1wiSJOF6tcPlFYedwxmGcwaqItF0AjzP5cSRk+gK/XmjpaWlfjutH8bkTQVLlyh1u5zsIKKDxP6xEco7Jtm1x+fcbB0j7hDaTa5evUaAhNoYplgqE2sZ5iOZ7WWLlY5PydIoWBpBFDHXcClZOkVLu5mi6Rbx2125/owu03BD/DBmRyVDGIuIqOWGbC9b1OwAXZWxfSEJU8nquEHcN/paanl03ICFpse2siUiFjdkvGjS9iLOLjZpOyE7hgSpN7oyNlJWx1IhYyiUsgbVTsBE0ey/vg1H1H3ypoodCAK6smpTsFS2l2/ObUmS+Lfc8khIqGQ1FMlgZiizZlE3NUGaRUvjRs3mes3BDkHRDMand7Fj914abRuv3WB+ucrxk/OcPwNGrsBwpUxBG0ZTMtTsAAlRS7J0hcWGi6ErwsmyO9y62PRoewFemLB3NHtbM7RSRiOjyWT1xx/BPGovGEmSbmsrnSQJ3/M938PS0hKe5/E3f/M3lMvl/nDog+JTn/oU7373u3nTm95EGIb8l//yX/imb/omTp061a/z/NiP/Rh/+qd/yu///u9TLBZ5z3vewzve8Q7+4R/+4b7P97olmEErYxBRy6lTp9i2bRvj4+O89tprW3Lee4lg7pYSW4+HIZhGdyCul/KJY+EKWXMTKlbAyeNHyakJz77wJhTdZCRvEEbOmlTFhaU2hiazvZyh7gQkiJbkXSNZFpsuatcbPEmSDR0m5xsun7tcEx4dGZXRgkk5oxM7Lb5w5AilyghvfO5Q/8vbMxSba7jECbhhgt4dtsvoCjNDGfRuZxXAjbqHbpmM5AqUszt45hlYXOnmtWdvcG6hRahoXB8ZIpfLU89lGclbXF11yRgKua7ycymj9Qvji02Xmh1QdSImM2IuxQ2ibgSjULToz9NkDRUviKhkdIa7w4g9clR1haGszo2ag94dRlxouFi6TMcLubzaIYgS3rC91LeAtr2QlhfgBkZ/0FK3NIIwIkluqiYHUUwQJzQdH1NTKBYtOl5AkggyASECOlt3cPyIkZyBockYaqZf5+jZYrthTMnSKBdM2l5IkkDHj8nqYCBRtQOmSipTQwUYKrB92xSrHZ9Wq83iao3jVxc5d+Ey4wWN0ChQKZeolEq4UUwUSzTckP3jYqPS6g7XitZyGduPKFoiom44IUNZrZ/ebDgBWU0icxsL6keJx22X3LMcyOfzXLlyhT/5kz/hz//8z3n3u9/Nb/7mb/IjP/IjHDhwgJ/8yZ/ku7/7ux/oHH/xF3+x5ucPf/jDjI6O8sUvfpGv+ZqvodFo8MEPfpCPfvSjfP3Xfz0AH/rQhzhw4ACf+9zn7ts2+XVHMBtZGZ8+fZrl5WWee+45RkdHabfbWyLpAncng3tJid3vMe/43G57qCyJ4cqpssVi08WQQo5fuMb28WFefulZltoBrS4RTZTWqhY0nQAr6rbAShJxDJapMFd3utGQ2FH7oZCR7+1ce1PuYRhTzmgMZ4WCctMJmL9xjbPnLjAxs5uJiUkURcHu1hoS4Eo9YNj0mSqYzIVwrR4wE8aoitR3cQRRXAaRSlu1xY5XVhQkI4s1ZHJw3x52tWxOXl1E8Ttcv3YZP4iZrORw1DzZShFdzdN0Q66sdJgqWyiyxGrHx9JkioaMGwpr5oKpUbd9CtbN4nVP/r5mi0VdUWQMVeJq1aVkaWR0cbzdI1lWWi6KLDE9ZHHsRpOipTOaM5AlIYkDiAJ/GDOUNfCCkCUnIWuHDFsxIwUTWZIIuwOjJAh3UD8S5mC6StHSccOI1bZPwVK5sNRmrumSNzRG8kbfNK3/3rohtW7EpMoiGkq66bRDE3mWlzqEkaipuYFow7643EZVZMYLBpWxClMjZSYnXcIoQg4c2s0G167PceXCeXQry+iQqCFEkSA2UxO1vTDXrZW5IV4Yc7Vq9wUxSxmNjheKbrvm49f+ArEx3Ehl+VGjt3ZVKhW+7uu+DoAvfOELNJtNPvnJTzI9Pb1p5+oZKFYqFQC++MUvEgQBb33rW/uP2b9/P9PT03z2s5/98iaY9bMtrVaLo0ePYpomr776an+itjdxfy+OjveLO0Uw95oSW4+HUQjIGYqQmFduSvS3lm5wZaXNULnMMwcPoCgKE0VljcrxStvD8WPKWY3ntpf6k/hKdwbG9gOqnZDCqGhtbgeiVVdzfGp2SAW9TzCFjMbMUJacqWIqEmfPnMZtN5je/wzZbJ58d+LeC0UDRhiLORlLlSlnDTRFouZG3Kg5ZIxux1QUo6kKY3mD8YKJqki4QYzenR5PEF1fcZIwlM9w+OAMfhiz2wm4sdqggMP1xSoLlxdYvX4eK1dEtfLIxTFM3WAoayAhagtxIFqxwzghZ2hk9bWdTkEUoyuSGLB0fCZLFhMFk+yANYAXxnhBTLXtU86K12a55TKcNYiShEvLHfaM5lBliamShSKLyE8lIoyFEoHtiwYJtatxpioynY6PKktCO80Lu6+juFYpEWrIxDCSU6l1fNGNlr3ZFu2HMUNZncRK+t1ifiSir7mGy1zdZ0yT+kOPSZJQMDUkib5Sgg7sGs7y2UtVFpoRu4fH2F4co2zKGJFDtVrl4oXzHDl+krFKgfHhCot6HtW0GMkZzNUdKlmd0ZzOlVW7b3Hdi9TiOKbqirrOvVoCbAWeJLtkSZKQZZlOp4NlWf3Zp3e+852bdp44jvnRH/1RXn31VZ5++mlAZIJ0XadUKq157NjYGAsLC/d9jtcNwayfbelZGe/atYtdu3atIZLewr4VH5iNoo3BlNjBgweZmpp66GPeCUmSMNdwKWeEvH7LDZmuZCAOOXbsGM12h1KxSCFfYKxg4IcxdSegZGnoqkh1tbq+MKYmQyKcLYMoptNNn9i+SHd1/IicqZHVFVQZShmDYsZYtwALRd7Ed/jka8fRdZ2ve/kVbjR87CDCj2KUUBKyMxloLSmMZBS2lSx0VaZsKUgIR0Wlu7B1PCFNMpzVqeR7Nsqiy8tQheZXRpf7kY4qS/3p89FSAUnKs7s4Ql5XuDy/Cn6HxFnhs5+9jGlZZAolhitlkkT4sTi+2GWHScK2stl/nZeaHnbXcCxOEsqW2W8oKGc03EB0iMVxwmjRpOOFrHY83CAkFlr46LJEwRL3pMpSd/4GxgsmVyVZpAkjYZsgSRJZQ0VTxb2VszoLDReQSByf4axB3hTabllDpRPE5C0VJ0hQ5ISModDyxCxOgtBJkyVJNB10XytTlZEVCceN8cIAh6QfsUmS1FfZXo+8qbLSEgoKI3mj+x7kCfQ8k6Up2rZDJrZZrDVpN67TCRKGK0UUq4AUF/ETDVNXhECnJlrbLVWh2hAzR7eTuHlUeNwpssHrWD8DsxUyOu9+97s5ceIEn/70pzf92D088QSz3so4DENOnDhBq9XijW98Y3+idhC9D8ngG7VZWB9tDKbEbucjcy/HvB+CcYKYKEqwfWGGtdB0uTi3zOKl0xQKBd740pv55BdOULbkrse8MAFzgwi92/lUzuhMlax+a27OVIVHSLe9tWxp1N2QjC528AkSBUPI4jfdoN9MAGJH3aitcuzCOXJDYxx6ajemrrO9rDJXd6nbPlJGp2YL75amF6HJN3ewkiShK6LILxYvtS9T0vYi8qZIYblhhB+JSfrLqx2absiOssVU2UJCdINJiCis4YSUMypVJ2Ln5DB5c5y2FzFiuyxX69jNOgtXL+B6Pp1ERTZMRsplMtZNIcMbdZcgDJmtumiGQl6XiZKuplYi1JxBtGbnTBVVlilndOYaLmEE4wWdUsbACSKu1112lE1aboSqCN0uN4jJKFDJqOS66gLTpkqzOxyqSDBbD4SZGyAh2r0HF5vtZYswjKFLIoosEUQx12s2u0fy3Kg5BJFoJ+7B0oUczHBeh45OEnjCJ8iJ+1HpYksIUQ5lda7VREdg3lCo5HTGCuaaqX5DVRjNK+wZyVK3Aw7u3oEbRCzVmuC2WFld5UuvXaMeyoyUCuzfVsHT8yy0Q1RFIkfCaFYlgS3JOtwrngSZfli7brXb7S1pUX7Pe97Dxz/+cf7u7/5uTY14fHxcOLPW62uimMXFxQdqMHiiCWZ9SqxWq3H8+HFKpRKvvvrqbfOlgwORm43BFNmDpsTW414JZqXt0XBCdg5lmB7KsNr2hUNldZnq7BWe3r+H3PAEy52QkazGcttnpe0xnDP6C0fULXBLkljQc6h4YcTVVZusofTFJbOGitr2qNs+F5Y6rDoR25OevbG4no4XYnsh169cZnVxluefOYSv58kYogOt7QWM5oVXiR2I6fcgTvDChHDARkDqeqsMDinmjC7hSQFzdQdNVYT/jCKhKzITeR26TQdyt1U4QVz3iK4wWTR47XodRRZS/qois9h0QZLYMTGGvn0cCTh7/iJutcFKrUl7cRYfmc9IOXaOl9k3PcbxekDOUillNHRV6euMiXsz+q+jRNf2VxHdbKsdDy9KGMrpLLU8LE0W7b6mEAa1fVG3MlVhJdAzCvPDiKbt4wUyI3mTyaKwWV7t+MSIgcyipa0pmI8VTWw/xPYlDFXi8oqHqoj04sXlNlU7YDc3CSaKhWJCXpWRsgqn5iNm6w5PjWRZaLrkDLU/DxSEMXM1h5GCGMItmgpOV1AURDeYIokI2AtjoqQrDOpF6FaGkZEyO3bsYKrhUKs30MMO1eoijeYF5nyDfL7ISFliyY3Zqd55tmir8SSlyNYLXW4W6SZJwnvf+14+9rGP8clPfpKdO9eOTr/44otomsbf/M3f9NNxZ8+e5dq1a7zyyiv3fb4nlmDWWxlfunSJK1eusG/fPrZv337HF7yXv9xKgum96A+SEtvomPdCMLIkdQ2nxM+WCkePnyZx6rz65hepVCpcWemgyGIYMKdJrLZ9Om5IztQYyunEScKF5TZV22NnOYcdhIwWTOI4oZRRWWx6ZLvpl+GcIQymlISGJzSjMm7Q949ptG0+98VjZPD42q8S0ZvYMcestCNUWciYGJrSl/Kv2T4JQmUAxAfeCxPkJOnKyfsYqkLOEIu5MO/qkDMU5moOqipegzBKGM2bjBWMviyNocpY2k3XxqmSxcm5JiudgDfPlMgYKkEYkzNFJ5kXRsSSgqxbqJUJdo9mkQKHf7wwz9XZeZavXwLdQi6XcZMCpeEhEa05Aa4fMN9wGS+aJLAmsrhec5ireyiyJO43SRjLCw040eIc4YVxX3usB6/7e0mWmG94xAkM5wy8MKbQHSTtdfE1nBBFpj/R30tZ1u0AS1dQFHEtRUtfozp9veZgqKJDL6MrLM0LvxxLUzi71KFq++wdyeIEEctNn21lk5ypYnXrYZeWOzh+CBgsNV1OzLcYy+vkPY2ipXGtalO3VXZUhPRQr+XaCRMKxRJTpfG+y+S5G0vcWFrltSt1JsyQI0ePsWN8iKQ74f6oo4knOUW2WXj3u9/NRz/6Uf7kT/6EfD7fr6sUi0Usy6JYLPKDP/iD/PiP/ziVSoVCocB73/teXnnllfsu8MMTSDDrrYw9z+PYsWP31ZUFW2cOliQJV69eRVXVB06Jrce9RDBBFK+ZWak3W3ziM1+inDX46ldfxTDE7n+yZKEpEs6SRtOLyRsqx+aavHlGpBI1RWbXcJbGNZ/5losmS8zVHYZzBo4fIUsiheIFEU03ZFvJxA1inhrW0RUJs1tkvzK/wheOHGNquEB2bB+aYeH4kdiBOwG7hrO0vGDNzIzrR9Q6Hk6Y9Au9K22flh/jewGlloepCd/7U/NNtpUtRvMGQ1kNJ4h5ZqpA3QnQFImrLZ+hjEacJLQcn6s1F1WCbeWMMCIzxbxLOaNj6gpLTeHJMm8HzNYd4ZOTgK5KjOZUEkvFixL2jg+TyeWJEigZEsurq5y5scL1Mxc4xzm2jRQolSsEicl806XuhBQtMeiodh0v67ZPywuodhTm6i5RFLNnLE+149Nwgr61st3tDvO7sviXVm3iJGHfWJ6Vts/lVZurVYehrIauKOwezvQ/CyVLKFk33IDFphjAFFL/GpqS7R+z12pd7wpmLjVdCpbG3lHxuc1qEiNZ0UHWU20oWjo3ai5Vx+fNO0vIssxs3WGx6TFWMKg7In3Z9EQjzfnlDoYqUmRy103VCeI1Le25bndZD5qmcWjnFGqmSMG8QV4JKZfL1Go1bty4QRzHayTxH4UHy5OYIttsgvnABz4AwNd+7deu+f2HPvQhvv/7vx+AX/mVX0GWZd75zneuGbR8EDxRBLN+tmV5eZkTJ04wPj7OgQMH7it83Wxp/d71rKyskM1mefOb37wp8jNwd4JZanksNh0Kps6OoQxzc3McP3GSkZFJntm3u08ucFPRWJZlNCmk7gQcmsiTN1VW2z4tN2C6ksHYpVDr+MSJsBCWZYkTcy12DGXIGirVjvD8CGM4MJHn6JKCJoMbRlw6f4N/Onae556apjAyQZLASsen1vFYbPk8N1Wg44ecnG3hRzEv7az0lY07XkQ5oyJ5HjdqYh7HDmL8rlyLpSsYmkwQCzXmnodIFMd4YcxE0aThhLw4XRTP9SNGChZutzPKDQVJrrQ89mZ19o3nWW375AwRRY0XDap2yLWqzUTBpGyptBOfTFZnNG92r0G8r3UvJDZLlMdMiiPbMOUI2e9wY7nG6mqDqi8xM16gbhbI5PMUsiKdtadb79AVmayhYqhSd6o9oeEIY7PhnEElq1B1Y04tdMgXS6IFG7GJGcnqOGEMJIRRQhRHnFloMVWy8IIIqVsfaTgBK22hxjCSN7rps6RvbGaoMqos8dlLq33ZnitVISdUsIS3DZJMECeM5PR+XWwkb4hmhARUSVg9qIqEqSkMyaLJopLRGMmVeO16U0Q8LY89ozlGcqIO1XRDJgoGhqaskeaZ77piWrpCwVRxVAld05mammJqaookSWi321Sr1b4Hi6Zpawhn8DO/WXhSU2SbSTCDnaS3g2mavP/97+f973//Q5/viSCY9bMtcRxz9uxZ5ufnOXTo0APZhSqK0nevfFjEccz58+e5du0apVKJYrG4aeQCdyeYvKGyhIwsxZw6dYq5uTmef4OY+QG4XrXRVWWN4ZMkScw2AnYMJeQMhes1h0pGQ1PlrvFVLPxc4oSJosnl5TYTBR0ZqR8t9dpikySh7sU4jsOJ2RO4zRr79+9DyeVFCkwV0iBtN2Aoq7PaCfCjiGtVh1JGoeUKfa2CJcQc5+oJdTtiUleYbfqYqoQsxj5oeyFhlPDsZJGcKepBbS8kjKHpheRMtd+C23TFRHnRUtk/lqfhBBiqzHLbJ0oSVtseu4azWLpCwwvJJRCEMa4XkOsW08+tuNxYtfnq4QQviMgaCsstj5W2RzmrkTM0hnMGqx2PYsZCzmcpj4xRNGUuL9TAbXLk6hL2hSvsGDZoynn2TA4xVikx3xTnsXRxrqYTYHTtoJOuPD5Jgh3GrLZ9pisWV1YdFDnADiLxmnoR6GKA1u8qHXeCiHyXCBJAUSQ6XoATRvjLCeN5o+/303DEaz9ZsnD9kBsNj47j849Nl4KhYnouo1mNvCEinTgRnYVjBYOcIewZZEliomhiajILTQ8viBjKahhZYUT2tU8Nc3yuSVZX8KOYhaZH1lC4XnNZuOEwUbQYL5gYqrCVVmWxoekFtwkJsrzWvCyfz5PP59mxYwdRFPUn3K9fv96fOu+RzYNK4q/Hk5oie72ajcETQDAbWRkfPXoURVE4fPjwA3dQbFaKbH2X2Ozs7Kan3noEc7sOGkmCnBpz8dQJdBleeeUVDNMSBX5PtNfmTFUsJrKEHUREiYSpSeRMlaWWT93xmas7mF1NqN6gZE+FuJjRSRLhrd7qzlIsNl2cIGIkb2J7Af90ZZVyRuVNzx4in7FouhGThvBjuboq6iRNJ2R0LEfDSdg7niFvCDvhsW5BvOFIrHZihgzQNYWhrMaN2QQ9iXG7Zl4dP0KRha2vrHTbm5Fw/IiaHfSbAYqWaGSodnwMVcYPxQI8kjdYantkE4lzix2u1Wx0VeaZyQIJ4EYJU5YmGgSQkGShlaWpMjeqNtdqwt9msjs7lAAkEnU3IGvoJGGMG8QMlYocn4PR7UUMNWFEDbm0sMrC9cusXg1oyTnqxSK7J4cZKRfouAEZXaQAZVmk8Zp+ghqJ4cMbNYdGx+XyihDs9MOYSlbDCRLypnDOtP0QL4iwvagvqDmc0ajkDK6s2vjhzSHYhaZL0wkYzhnsHMpwacXmwLjGfNPH9cQAphfGtPyEqGsZXckIQdDhnE7HE63ZSy0PSRKpuaWulcLphRhFltlRES3NEwWTIIoxVJnZuovWs0vwQuJEItONYnpk1cNE0aQxL9Qcgii+RVIGxHe5UqlQqVT69Zv1kviFQqH/mAet3zypKbKUYB4Q662M5+bmOHPmDNPT0+zdu/eh3uzNSJENdokdPHhQ2PvK8gNL698Ovfu8HcFcuD7PPxw5w47xIQ49vZ/jizaK7POG7UU6voSpCb8VO4hYbvs4fkhgR4xYEruGs2JB8nX+v3OrlDIKBbNIzRapldG88G5vuWLBE+q8XW8VTSFKErx2nfOzdUbzKvv376cVwNxCm2emCowVhN6WIokFcrJkoSoyBVNlolsA12QZJxC6aBeX2zT9kJwaY/sRURQzkde4tGATx8JXPogSJEl0zcmScHcsZzQMVe4KS4pFVJHAUsXUPZKEpkpU2z7nFtuoikTLCylZwr1zKCvmQWp2iB9EXK+5TFcy5E2J7QXRABFEoog+0100c6ZGyw1QZZmcqWFpormgHUToikwQRchI6KrCZMlEJmH3TJ6nxnKsNjvMLq0wt1zjC1+ap2BKYBWI9RzD5RJFSyOKE5ouyE4EcYQsSSx3Qt64o8DphTaRKrMrk2VcUzi32GK57bN7OIPjxyw0HFquz1jRQldFrac37R91o522GxJEMcttjzBOKGWEjty20k3vn5OnGwSJQiGr4ocJ802XkZzBYnf+B1RkYLUjUn8tL8D2QobzJn4QsdD0GC8YDOeEW+iNmoOuSsw3PSpZHUtXGc5qawznBrHQ9Oh4Ie1Y4tR8i4mi2U+Frte860HTNEZHR/sRfE8Sv1qtrqnf9FJq91q/+UpIkT1qPBaC6RXyL1++TKlUwjRNTp06RbVa5fnnn++b9zwMHiZFNpgSW98lthXNAz2CWb+DSpKECxcucPrsFZ7eu4upiXG8CJBETUICxgoGszWHY9cbSJKYSdAVmU6csNytXxiagq7KvDRTpuOJlldNkfG6RWZdFXIeSSK0rUBMlq92PC5fm6W6MAeGwdRImeG8yWcurmBpCqudgKckiT2jOYqWhlWTsf2Yjiu0qCRJotRtj15pedSdANsT7cpyIvTICpbGChJ+EuMEIQ03pN0lkI4XUbA0MdkfJ92UUchq26e5GnZTOAmljE4UJ8w2POptT9g953VKqpg3qds+uiy0yJKugU4QJzRsH1mS0FVwA5EWZEAxeLbu0PFCwlgUyU1VkG+cJJxZbqOrMmGUUHM8gjiinNGZrdmcWmgxmjeZGRlnanISP4iIPJtrC6ssV1eZW7lO/YZFqVRiyIKxvIYTQpTE7B7NsNwOmK6ITi6lO5hZyeqcXWgRxQlTJZPOSsyuoQyaIvGlqzVWnYDnpgpkdJWWF/atoWudQGwSAhEljRVMWl6EG4jBylU7IGsqTJczVDs+bT/C9sUcTtnSKGW0buosEbpsukIUJRRNlVLFYqXt0/bEnNIXr9W5VrP5mj1DDGV1NBlemC5t+Jlfafs4QUgQJcy2QhJFoYJIkaqydDOFeA9YL4nfq98MKhT30mmVSmXD+k1vTXpSIpjeCEan0+nLuLwe8VgIpud3cOPGDYIg4MaNG2SzWV4d6IZ6WDxoBOO6LkeOHCEMww27xDZTWn/wmLDWZ8b3fY4ePUq9bfPc88/jSxqrts9zU0Xh+dHxxeBkAqoi4UURfphQMCV0VUKTFVRVfEGrHZ/llkcYRSQIG2BNkal3bFbbHvvH88RxzGrHZ3fXITGOQy5fOM9ircGbn3+G01fmMRWR0987UsD2I4ayOidmG92ds8yz20ocu9Gg6YbIA/I1PQmUoYzK7pEcC1ELw5cYL5isdnzmWj4FQ2F7OcPx2QYFS2dSU5gqW6hdmXnbDyFvkHQVTzQF3DBmqmiKaEYWQpNBGDFRsthWEcOXSw1HtE6HCUHUYqosZogWmy4JkNVkWh2w/VAMNErCZ0bttvmqipi096OEhIiOH3FgQnSEhTGULAUvVBkpGOQNlThOOLfYxvYCEdVIoqbVclVeHRsiAWoth/nlKqv1Oq4fUpu9wkJQpVIu05IylApZEqBkaX3la+SbaUw3iNgzkkFVFMIowtRkNA9GcwbjRZPzSy2cWCKKYmRFZrXlMZLX0WSZKI4xVDFjZKgyuizR8mI+f7XOVMmCBObrLtsqFostlzAWnjIxYu7pqbE8Sy2PyysddgxlkSRQJNEeHcbC2K3a8dk1lMUObv89UWQJTVEYL2gsZ2QUy+DgZKGfsl1uebS9sN8dd6/YqH7TbDb70c3p06fJZrN9sunVb3rF7yeFYHqyV2mK7AEhSRJBEHDhwgWeeuopZmZmNrUN8UEijY1SYptx3LthPcHUajWOHDlCuVzm+Te+iblGgKXIBAhl3EpW75pXKXT8EEWS2DOSE7USP2S55VGyVOZbwpr3WtXmtWs1ZEnM0OwayfHsVBE7iKnbwr9lWzlDFCdcXe3g+y4LF08xnrF4yxtfRdd1qivLSMBQzqDa9hgpZKjkdEFebYdqB7aXLCpZjTBK1vh/NBxfLIKaQk5VWJYl6q54DTteSNuN0KKIOIGMoeL4AU6gYQYyOUOl05Vx6bXYjuYN3FBEI4stD0mSGMnpjBcNEkRrbl+mXhadXFGSULUDxotiWr1oaczWbM43AgoqLDV95ptNoUVmSIzmDCHtr8nYQcK2ksWllTbFjCbmU/ImuiJIsu0JEdCMprKtLIQjozhhrmYzUhAk2WsvX2p52H7C+NgI5aEhri9U2bd3htMLbY6fX2ZUcVnRJfRsCS2bJ5ItinmLbWWLbUUTXRVy+A1HRHANG54aKzAzHFPM6FxesWm5UT/6Gcub5DSFjK6xrWSy1PLp+B7bSkKkM69LZFWVRV8oPC80PM4vdThyo8FIzuSFHcIFtmCK4c62Fwn7ZkkiSsQgZjOMmCia7B/L0XBCit2W79GuxM9it0U80xXUrDuiGcRQZRpOCIloae6Ry/Wa06/7mJpyXwSzHoqi9NNld6rf9KbWH5eKwCAGU2SvZzdLeIwEc+rUKTzPY2Zm5pZp0s3A/RDBnVJi67EVA5ySJPWjuitXrnD+/Hn27t3Ljh07qNo+YeyTNVXKOZ0wEvn1ME5YaAo9smrbJeru7HVFFpPvvjC8MlSF7WWLphOw0HTJ6EIDbK7hMpY3+jIrvUX5H09f4fMnL/B1h7bx9MH9fZl+Q1VQiRjJGgRRxGTRxNAUpisZOl7EWEG01ZqaSi4nyEWSROqh6YiUTN7IkDNVFFmm7cfd3bGBm4hkiKYIKZTZWsBSy0XvClxaqkzTCag7IiqyfeEGGcYJN6odDF1DVyQyuoKmCH+WasfH1FWmKxmmK8KNsu0GrHYCsroiuqHCmKIpE3piEr0UajRtH03WmB7KstL2OL/UxosSJosm05UsSOJaTU1moiDqBQ1XDF2udHzKWUFeth/hRQlHrzcI4ohnJgr4USJk9iXRPjxRNBmyoJjLsGd7DjccZfewRaPZZnm1xtz8IheWHbaVdOqjZQqFIgd2jGLqGiVLxfYjYkSaVJLo+6vEXbfJS6s21Y6PHyZ83b5hVEXuEo+IRAumykI7pFJAzBjZAdMVizgR78VQ916WuxFQzRZdekNdWZvhnGgIqNk+XhCjyRIjXTO3XrFe2DuLZoHe7E+cwBev1YUF93CGpXbAVO5m+2yvTlTJ3uo99LC4Xf1mZWUFgM9+9rMPVL/ZTKyvwbxe3SzhMRLMrl27cF13y+Sx75VgHMfh6NGjt02JbXTczU6RgSCZU6dO0el01mis5Q2NkVxEywupVX1kiW5LskkQCSfGMI65sGQznNWZaziE3en4CYP+lPfLu4aodnyyhkLbFXUFXVMYLxh86twKmgJaZ5kTF+d464sHkDMFjt9osK2SoZLVGcpqeF7MSsen48XEiZBzubTcZqFpE0QRz0yVqNs+USwz1xCdRKN5gxt1G9ePODRZoOEEzDU92p5ola52fLKahOTe9C15arxAx41oeyEdX7Tk6rLEcttjW9nk8qpPVlMYLRio3ddjsiRIVFdkiqbKjYaLFcZMdFu3dVXuDgbGvHa9jqooSIihQEuTUBWJmaEMjYxGte0xVxcT76qikDNkdFW+ORwZx+wZyRFEYjanktXQZAkSiCUhMOnUHPwoYbRosNz0QJZxXDHVv9Dwma+7qIpMTpMIo5iCobNrWCzcRqVIpJhMb5viuShGDjrcWFzl0pXLzF4+RzafJzHyKFaOpyYq6KrMxeW26P7K6swMZ9HrIrV3ZdVmvulycq7JG2fKTFcsnCDCC2JOLbTxg5C5dojRCShlVNwg4a37RQ2040doipC4WW4HjOVF1JHRRf1ttu4IXbpYqD+P5nXRzDHQCSZJEpNFE62bcixYGpIb0nQjVtoeBVPpO1/ON1y0rvPoUF64qi62PEZyRj+62Wz06jflcpmVlRVeeOGFWxwm71a/2WysJ5g0gnkAZLNZNE3bMt8WRVHwPO+Oj+mlxMbGxu55kHMrIphWq9UfMj18+DC63jVucsO+Cq6uiFZaJ4gZLxjIssRoV35EVSR2VEwur3Y4OFFgpRNArBLa4jqF/3vEeFFY216t2uRNld0j3XZfQ+LkmXOMmyHfePh5lmz40rllxgsmE0WTthsQJaKWMm0qdFwx/Z8kCZWsQcHU6fgxYRwjSRJzDWG+pSuiQy2jy30V4dPzTepuRLmryh7FMUgyWU0i1zUba7ohsZ7wqXNVtpctojhhuekzktewvQhDVajZfn/GpLfTXWq5XKsKT5ZnpvKEUcKZhSbjRYuSpTFdNvn7i1X2DFtUOyFRkmCoMku1iEpXvDNnqJQtjSBOSMKYjKFStDSGsxqaIgvF51hiviFauO2u1fFY18jL92PqHZ+zCy3qTsgzU0WGc7qQqDEUYTMgCZl9RZYI4oT5VoCsyewbz9HxY2RZwQkjnDBm13CGrJ4lU6xgqjILtSbL1Tq1eoMz5xdYuCqRKxQYq5ToJAalruPodCVDJaOjKzJtT8wkFUyNvWM5vEBI9Y/mdK7EEllVZjijUnOF/lgYixQcCNvsME64vNLiyorMSzvLLLeFhYDtRzQckRosZTRankjN+WFE3tSEtNCAbxDAQtNloenxwrY8zZEMfhTj6BIZQ8PxI+ZshxiIErpRsETbC9ccYyvQ6yDr1W+mp6f7DpPVapXZ2VnOnDlDJpO5pX6zVdcCQuwy7SJ7QGzmMORGx74dEdxPSmyj425mBDM7O8upU6dQFIV9+/b1yQWEKGEYxTS7X7Dntpe4stzm0kqHV3YNIUm9L7mYZ3hxuky141O2VJqehBOIYcMz8y1kWRyv7QestD3yhvjyzi1XqV8+zlMjJeTydjTDor7SxNJkpocyIElcXulQ74SYkrj/UkbvKiwLccaCpdKyfRabLrqqsNL2GMoY9HzNZiq5broMLF0YWV2+HvGZ09cp5DNkVQWpO2jphzGmJjPXCNlWsXCCGMcPyFkapYzR7S4LBAklCU0noOEEDOWM7kCkTxSBKgsbXi8UYowgTMsMVWap5TOUE+QcBQrzMczWxeyL2jUUGyuYLLVcGo5PVlc4t9ShklGx/ZisLnNh2aZh++weyRIj4wYxi00XTRGpq1JG7PYlSVhDJ0nMUtunnNGZGMv3d/lxAqYiMVI0WekId9IYGMmZFAyZpZZHUxXdeSVTQVYN3rR/BtuP2du0uTRfx3dbXJ1bxLVtvGWTzsQwpVIJV8mQNVWGchqOF7Jqe5TbujA0C2PcKGEiJyNbKg0votYJGM4JIrU0iS9ea7KtZDJZMllth0wUhS6aIvUK/jm+eC0gb97srrtWFZs6WXLpeMLkbNdwhqDrARRGCYYi40XCYwageRWGczqZoslowWCu7lLJaGQNoRm32WmyjbBRB1nPYbKXTQiCgHq9TrVa5cKFCziOQ6FQ6BNOoVDYlCaBMAxRFNEhadt2WuR/4JOr6l2jjAfF7QjmflNi67FZEUzPiXNxcZE3vOENnDp16hYZh1JGo2Cq1OaaYuAvSTi91EaTRMdUww0xu7Mhli6cJ4fzBhld5rTTYjYIubjSxo9j8pqGqkhcXO50ZVvgU0fOM3/tCnt3z1AamWC57dPyIt60s4IbiG4sxxd90atOhBIG+IstJCRMQyITqEgybC9nOB+I1yRnqLh+xFWnw0LTYWY4hxdGyJIQWAwjuLzSYaXpoUQ36CgRpqkAEtVajZWWRdw9TsnSkS24UbcpdAu9UZxwbK5BXldpdx0yFVlCkkRb686hLG1PzNdUvZC8ofRNymbrLtWWy46hDNvLJpIkcWQ55nozoGXayHSn5eOEmUqWII6RJTgz32Su4eIEMTPDGfwgYqxgMFIwWG57ZHUVS5H6elu6qvTl8VtO0BeqrDkhCULyP28o5EwNP4KKJuNFMYsNtzfcT8cL8bMGqixRs0W9ZL7lk9O7M0WKRFbX2D05xGw9y1he41q1Tcd1WGr7nLx2loVGgGRYTA2V2FHKkygykgQzQxksTdg2XPVj8llR65Jl+tbRdTvgSs1GkSVypsZX7anghTGTRZNqx6f3Sc0Zal/3zNIUdg1nma27tP2QjhtwserwmUtVXtxRopzRyRoK0xVrjWJykiTYQULiibrhU2M3v5OPglzg3oYsNU1jZGSEkZERQHScVqvVvsp7HMeUSqV+Su1BfVwGI5h0DuYBIUkSqqrS6XS25PgbEcyDpMQ2Ou7DRjC2bXPkyBEkSeLw4cN9x7qNjivLEpWcTtEUar1vnqmw2vap2gE12++2rOYoDKQQrlUdrtU9rtVD3ljKCKl5RUZVZHYNZbi43GFl7hLXF6oMTe1ieHwcU1UoWBrDOf2mKnDVRpYltlcyLCyoOH5E2w/ZUcnScgOu1RzyhkI5o9FwQmwvxvVjWl2PmW2mhURCJSMKxGcWWrSbDebmVxjLSLzl5Re4vmqTC1bp1Fc5cuocs80YK2OwfaTEtrEhDMNiZijLbM3hes2hmNHIaqJTS+627FqGiq4oopvLF7MVLS8SszF1h6GswVjRBClBkmUabsSxuSaVjM5s08OPIrYXLXaP5ri6ajPfcFluuQSxhKKIyEqSxEBr2/OxVAU/FB4rV6s2y20PS1cYKVh4vki9STFdhWodSxd1r6KhktFlVto+Kx0oWSFRAtNlCzSTlbaPoYmh14srHVjt8C0HRsloMivtgJ1DGdww7loqxMw1PUxV4tXdZS6v2FSyFq6uo+gKlfwYlu3QarUhtHHnF7lhS1zUMzy7Y4T902O0Q6H6kEnEZmZKF1Hd2cUWK21R59Jk0dI+VjD7is2SJFKEbS/qNxX0hoQzusLe0SxLLY+ioeLHkvAt0lVUWaR616e7wigiZygECcgSXOtKH40Xtr7e0cODDFmapsnk5GR//qbT6dwyf9OLbu6nfpPWYDYJW6V4vP7YD5MSW4+HjWCWlpY4duwYk5OT7N+/v79rutN8zVTppsNgT1E5ihNqHR8J4cnRP37T5eJyBySJCSvBDyMWGhGTJYuEmLGswt9+7hyqLPPmF59HVlQajk81hkpWmGBZukhzieFDDSeI2FbUONeS+Jo9w1i6ysWlFteqNsdX2szWhZJxJ4youW1WOwGGKtHxYjKGaCtebLicuHSd+bkFioU8XtDh/zu7gqnJPDecJ/ZsZqZ2Um7byH4bp93i9KlFgkSmUipSKZdoRSqOJzFdttA0DctQmCiZ5AytvzhHsSjoTw9lCMKIIIo4v9TmymqHUkZneihDwwloO2F3PiVhe1Fj12iOKIGiqdFwQ8KueKQsgadHvLKrQtMJuFp1aLvdgVAvIGvIGJrJUtuj6YQM5zS8IEHrClwamhh8LWW0/oT9gYk8TSfoyvYLKRpLk5GlhAsrDpN5jaGsIKZT8y0kWeKNO8pYmtJfyL0QwjgmjGT8MGHHUIb5psfp+SaGKqEqClnLYs9EibmGh6XIPOU7zC5V+cKFeY6evkQhp5OTIyTfodHxAIOMJmNpKpUslCydoZxQh1YUmWldfA7LGVGjOrPY4tmpArIk8ekLq4zkDcYKgqRkSWJb2cSPIpZbEgsNF1WV2TcQnay0fWw/ZMWOqLkxuyo6s3UhkjlZfLRL08MOWUqSRC6XI5fLranf1Gq1fv3Gsqx+dFMulzes3/QGPhVFwfd9giBICeZB8ShqMA+bEtvouHfSDbsdBknu6aefvkXAU5Ik4jhmtiaUbqc2sK2Nu101JUvD0hUOThZuecylFZuG4zORMWiqEsstnyASg4565DB3+Ry7x4d5/uB+OkEM3d3nsdkmsgTVjsdyyyNnqGwrC9mXjhew2AoJopAvXKmJ6e4oYVs5gxcKp8xsRiOjSrQceNOOMm03oGoHxHGC7fn844mztJotXnj6Ka6stllZaIuOKU1hoeUh+QlPlTNMlSwy+iiSBBlNZn5plfOzKyzO36DV8VnVDSaHyuSLJeodsQNfbnkULL3vZVO0hJWx7YsvqqUrwvArSbi83OHpiTyyItOwAwqGjO3KXKvaGKqKIgvxzJGcKYrwYUQ2a1BzQjw/YqJocN4T/w0ikZYrWypRGDNUMLi6YndTlgp+IEQ6zy22aHkhM5UsE0VhYX1usc3Vqk0SQaa7uz+32GY4q2MH8KaZMnU7YKnlkTU12k7AlRUbNwgxNJWDE3l2lDNCj6zrg7Pa9gjjGCeA0AspZVRu1DwsTeJK1WYkbzA8Ns72aRVLTrDbbeoLV7g8v4xyY4FiMc/4SIVKuUSxKKKljheK1vNu9JIkwvRsOKPS7CoznF9s0wkCLq92mCxabC+L2tlIXqduhyw2PcpZYfcQRzc3Ue2uA2eciPThattHV+R+etEP4746+FZjs3XIBus3u3btWlO/uXjx4m3rN71NpqIotFotgDRF9iDopci2MoLxfZ/PfOYzD5USW4+76YZtBM/zOHLkyB1tlXvEZWgy0m0kMjp+JIr+jk/dEa2hICyLc4ZKFMVIUsJS26dlhyh2whsKBrYXcW32Ol+6OMdbnt/Nnuntol2044sBQV1FUWC27glZ/CjhwGSBjCbSYpNFgyVT4UvNkBldQVVkRgt6Xx3XUBUWmy4ZQ2YsbzFVNHHDmPOLLRZrLf7+7Bk6Tsy+/fuQNYO9wzE70BndWYYEllZWaPoRLVeYZc01XCFEmdOZGh/BkTPcqI+guB5a7JJ4bRavnKfpg5bJMTNexsyWGM4ZxHGMpgqXS12RkIFtZZPxgknDDRnJ6eiaiirDDS+k6cVsyyqYqkzbDymZCm/YVqTji9bZq22ftuchkwgtskTmuW15ap2AmhMyVTTwooThvMF8w0OWJXoywYks0/GFOvFsXagbiG480X7tBBFLzYTPXqoxWs5j6jJtPyJDwlzdwdIVDk0WKFoap+dbdPwARVZQZLEg5k2Vuh3Q9kJkSWWyaGFqclcJWmeiYGJqEmcW2ryyq8L1ustwRqStRvMG5akSf7u6wMTIGKGs0mg2mV9tcvTcDVZcyOUtdo6XeWHXJKXuoGir2+p9cdUV0TMSkxWLKysxliZjdmtEkyWTJKH/nuYMlbmmQ9HSGOm2pw9nNXKmxhkFJEmkcMtdpezrNQdZkpgqmRt9FTYdWy10ea/1m0JBbBplWabdbgMpwTwwtipFFscxN27cwPM8nn32WSYnJzft2IN2zPfygaxWqxw9epRKpcKLL75427bG3u6lYQuJ9yRJuFF3KVla3542q8ucmhNigrtHhCmVIkvEsWixbbohmiKjShKzdZ+sA47nc+7cBfBa7Nm7B6wyha7QohOICexLKzaWKjzvhzIa00MZhrIGLcfnzEKLphsQdgJmCgr7xgtkupPqfhTjxzH1VsBkOUPYVcM1NYWMoWIkHkePniJfKvOWAzvRVY25hk0YJihSQtvxubjisrekEijQ6Mr6502VthvS8cSsRCWriZkfVUZXssSUGZJk6q02FcWh01zhixcvY1kGB6dHKVgVgkioSBuaRNOOmGt4XFu1Gc5rXK25tNyAckajYMos2z5qmJDEIrXjhaI91wkjFEW0gWd0McmeNxXmGx62F+FFQgE6TkTzgapIlC2d0bxB3tRodxWLlxouq7ZP3Q663jAJz20r8uJ0kd++cZnrdY9sNoMqyyK1VMoQRBGljIGpKVxasRkv6CiKScHUiOKY04sd5hsuMxVLvF5ehK5KuL5QWs7oMboqISFk8WcbHocm8szWXeI44fJqhzDOoMvQcENuODHjhSKFvIk+FCKttFioNfjsuUUuX7nOUM7g4PZhyuUy867CcEYlliSmigbLLTg4nsOLhYNl3lS5uGJzcDzHzHCW88sdcobMG6aKDOUMjs82qDsBuqowXbZwwpi9OR1ZErMwE0VTyO50XU4fVRfZoxS6vF39pjfw+TVf8zUUCgV0XWdubo7p6emHPuff/d3f8Yu/+It88YtfZH5+no997GN8x3d8R//vSZLw0z/90/zmb/4m9XqdV199lQ984APs3bv3gc/52LvINjtF1kuJ+b6PoiibSi5wM4IZFKTbCEmScPnyZS5evHhPNs89gskYQtE4iIQMx8XlNhNFk3JG5wtXa1yrdtg1nCOME8YLombid9MO5ayQxs9qCleWG1w+u8A/fP4IiqZTntzLtZqHL7d5dqrA9aqDJMP5pTayLDqsJkomw3lTdAG5IV6UcGnZpu74eB2HTBzRdgOWmq6YfLc0KhmDVqfNtdUOhyaLNN2AazWbi1ducPz8NQ7u3U6hPML2Sg5FTrhW61DvBBhujFv1uLbaYVvGEIObuoquSMKkS5FpOAGSBOWMzlh3av7sQotzSw5PT+Y5ODVFwwm4XnOYGfKRfJs4cvnS8VNcqUfk8hmKhRJjlQKzDVE8j0koWSpxrDBVtKj6OmcaHRaaLqN5g0rOEG3NsoQiSRQNDUWKhAZX0yVOYM51IemmpnQVRZZYbXtsL5n9moquyuiRUJWerSbkNIWq7eHHMUMZDT+KuVZziJKEgxM5hnI6wzkDPxSqB6YuJHKq3UYOQ5GYKhsk3Qn9KysdVjs+TcdHU2V0RbhI5iwNN0wYz5v4YUzNDlBkiY4fdj8zJisdD12VumrUMFIxaaxEtJwQRfbJqhJv2DXChaUsliYLEqnW+NvLVYqXlui4AcVchm1jFc75DpaVRZEVZio6F5ZsLi61uVa1yesiPfnidiE3o8ji9RjLC6L0o5iEBFNJ+s6bK9264njRFOoIbf+RFPsfp1T/YP2mUqnwhS98gZ/6qZ/iox/9KHEcs2vXLvbs2cNb3/pW3vOe97B///4HOk+n0+G5557jB37gB3jHO95xy99/4Rd+gf/9v/83H/nIR9i5cyc/9VM/xTd/8zdz6tSpvjba/eLLKoJZWlri+PHjjI2NsWPHDj7zmc9s2rF7kGW5Xy+5HYIg4Pjx4zSbTV566SWKxeI9HTeO4zVeGbtGslyvOrTdiDD2mCpbKBI8PVXsmzVZuoKFsDg+t9RGkyWu110ip01FT3hq9ziF0W0cvV4nAaaKQiYmJuHKUoehnEEQx7xxpowbxLTcgM9frRLECd+4f4ypkkElo3IxcIls4T6pKjLzdaerYOww2/BYaLksNT2ans/y/DwjcodXnj+AZmXRFYmmI1R986ZKTRLikfvGsuwYMjEjlyU/wg8FWTYbLpdW2uQMlacnC8Ly1wlQJJHumigKzbW2F9JyA9p+QBhJPDU+xlTJZHx6F/m5GpnY4cS1RU5fnCVnKmjZPFIhz0S+gq5otFwfLwhp+BHPDguBydMLLXRZQlNlxosWKx2fUkbnykqH5baHqclcXm4DEvvGcpiqhKmpLNQcLq865HSZf7zUZmYky2TBZKpksH88K6yIMxrljIYmywzldJpugCbBRMFgYiiDpsjMN2M0Vcb2RauwLEsULbWbThMF8M9frbOtZDKU0ai7AV+42mC8oDFeMFhpecxUMhQsjartM5LTUWWDvKnS8WNsP6RoqtTdkBt1h4VWyIEJhQPjGeYaPnlDomZHGB2fr3tqGEsXjQWWrrDs6xRMhdMXlojqAarWYrU+j6nC7vEix1dy/fTvjkqGMElo+6JDTJFFDcwNIrZ37RBqdsD5pRb/tJgwXPcZLqjoiszFFZvxouhakx+RTMuT5AWjqirf8i3fgmVZHDlyhNdee41PfepT/PVf/zWu6z7wsd/2trfxtre9bcO/JUnC//pf/4uf/Mmf5Nu//dsB+O3f/m3Gxsb44z/+Y777u7/7gc75WGswvSL//RbM12OwgH7o0CEmJyfxPK/vjrnZH5w7dZI1m01ee+01crncmqn8ezlmr3kAboru9dIcZUtltu7x0s4K1U7A1dUOwzmDjKFQMIWkve1HXPr/2fuTGMnS7L4X/N15smujm5uPER5zREZOlVnMqkwWH1V8lKihWxTeRqsHQgsJEEDgCVwI0kYLQtBGgEBIEMCVoN1rodHo7tfNfmSRJQ6lqqwpMyIjY57cw0dzt9nuPH5vcd0jB2YNmRlRmXpdByig3D39moWb2T3fOed/fv+Bj/AHRNMxSQ4X60tMooxmzeDySgMvyjmYVrsgV5br3D7wcHSFekNDV0qubY+ZhTmWoVAWJUkuWGvbXGiW/PD2lCirWleWKnPzYEaRC6K0QqzrUsHB9ha6LPE//davYpomYVrQn8eoCkyDFEWSWKmbHE1KGpZKW9Z5++6Ih+Oc5MjnXLfCxt/tz1luOJxq5wgkxkHK7jREl2ReWKkjy9UCqABkJEpRkGQ5jwYBj4chi65Jq97gVzuL9GcxbS3l3u4Rm/v7hIc7DAqD80sNuqbgQktDliVmUcr17SnrbZuNBZuGqWCqNg1L452dabWI6FY7LYokCOOMhwNBlJd4UcaFRYf+PGYUZvTiHN9IuXdYmcCpsoyhVPYFgopwLQNBAVvjEMexGfnJMeRRomPrFALqhsL9w4AFp3qOfS8GUSn9Li7W2JtGDPwEVZbZmVQzoMN5QloKTrWspw6f25MIU5MxNfVY3l4SZwXxMaZlvWWz2rTZGgUsNyt77VJU7amBl1CUEn/n6iKzKOO9PZ/2gkJroYbazFi0BHuDMb43wCy3WWkauM02cgqe0JmqMhsdG+/Y1fNu36NbM5hGOf1ZXFVSmkx+bCt9ZqFix8VZ9R4J0+KpRPp5xS+6RfbTnsdJG/1ki7/ZbPLbv/3bT2/8zyM2Nzfp9/v85m/+5tPvNRoNvva1r/H222//95dggKctps9j9POTVGKfdlbyaeKTdlaEEOzu7nL37l3Onj3L2bNnP1XSPEkw2+MIVZGeSpNbtl7tJQQZ57r208VCRZaPkw8EaU6vbjKeB9T8HZQy5403XuY7P7jGOIg58nPOdR28OOXtzQm/dr7zdH/hhSWX+0c+u5MYS5PoewmuqfDqqSbztMAxZBRZpmHoxHnB9x+NqVsKvbqNpSl4ecY8yUjimOu7fV5eb7K4doZEKMy9lKIsOdet8Rf3jtidRvztq0scDlOe5HDzwONU00JTZcYxvGRWjKszHQdVlllvWwz8lKwsAQldURj4Cd/bHHNxsUbdUtkZR5zt1hh6MZqqcDCNeHg458lI4a2zbTRVZqVlsdRo0U9UztUWMeSSTuQxmHgE4+CYcPCAVHP42y8ssdGtYWoKf3FviCwL1lt2xRWrV6Zli65JlBZkZVUFClHy6nqD9ZZFmBS8sFRjpWlxOI0QUmXW5ZoKszhlHhckecE0yvGihFEsKIWEJlfI+1sHHl9db5CXgrWWRZjkDINKzmvqKk1TI6gZ9GcxLbOyc9YUiaKUMNSMJAdDq1p2DVOlVzcrKOgkIkwKZAWitFqY7NUNfuiVBFtzXlcsujUdSYKHgwDXUNmdxBzMKluD7UmALAlqpsbfudolynKO5mmllpMVOt0l3njBpq7L3N454tFgSuhvMg4yTMtienqB00sdDmOpOpiU0LSr575iQ93UMXWNJK9AqvuzGFWW2ByFCOCFpecr1f0yVTAnz+MXierv9/sA9Hq9j3y/1+s9/dlniS+8RQYfoBE+bXy4JfZxldjPOyv5LPHxCqYoCm7duvUUltfpdD7TNU+UQR9uC+iqTMcxGHgRt/Y8Xlqrk+eVSsfSK/XTPM55sHfEO9dvst5tcvnyZQ5mEUkBIz/jfNel6xrsjAMcQ+HW3rzy4miYWIbCq6caPDwMWGqYnO/WOJjFWJrKq2sNtkYRLVtjMAzZqCv4lsKRl3Cm43BlucmDI4/JeMyjnQPOn+5y+fJ5Nochm8OAjQWHoZ9zt+9hqDJXllx2pxH3D3weTKDnRmy0bL5xtoXh92naOrqm4BgaLyxreEnOastiZxSx2qxcE/vzCC/KmTgxYQZIlcXAestm/dg/xk9yLE0mPbYilqRq1uTFlXpLMhTseodvbKxxsL/P/mBKLOlo0YRHt/a5qxh0Wm025zKDRKBIEmMvRatp1B2DOK9aVT1Xo+GoTIIUPyt5PApI85yDWcw8yXCOralX6hrztGS1YVEIwZ0Dn0MvoRTQ0KDjaMzCrNqR6dXYniWcbUOYyHQcjSVXO1Zk5WgKLNVNoiQnLQWlqOTrDUtFVyX8NEeXJfwoZ2cSHZ/+VdaaJncOfbIcWpZ2vMhokpQw9DMUSWJrFOHFGRd7LqtNiyyraM2705hJkPJeMuf/8tISQVIQHfsBdWo62+OQOC8Jk5w0V8CocXajwTBIWBU5h+MZm0czdnb2cTQocDi90GSx7ZKVMFdhHOV01Yr7NgkzluoG0+P5UZI9H6Xph+PL6mb53zNJGb7gBHMyz/i0c5hPaok9q2v/PPHhCiYIAq5du4aqqrz11lufeRh2krROfEM+HA1L5dEgYx7lpEWNmqEyizLsYyT+k51d3rv7CLWxROp2URWZ3UnMrTH0rDkLrslXN1roqswkqND/fpKzO4lYqOksN0wkBNvjiN+4vMijo4BplPJwEHB5yWUSZmRlyaGfYtREtbehyOxNQx48ekw5m/A/f/MFGo0GtqGx5Boc+Sk3d+csNyuTsLPdGmUp6M8iSiQMGRZtnZqpEqRVO/NMt8at/Rl70wiEhG3ILNUMLnRtRkFKx9F5bb3FXz0csjkMMTSFspToOBKTIDkmTcuYulqhdOYxIz9lsW6y1qySqaWr1A0Fy6i4YpIkIasKV8+fZqlh8O6TMQcHI4QXUc58Ek/wTjyh125QOi3itMQ/9mJJCyjygqIs2RwEnOs6mJpGwxFsjzw0GWxD48qSi5LnTKOMhZrOhV6NtabF1iRk+7DCrYyjHFmS8NKcM22T/jyh7VRb8GttBwmJ3UlI29JQJMhFhVGJshxNVWnZOtEsomFquIYKVBbE4yCt9l8cnaW6ianKmFq1nLk/jVlzYPlUnbwsQYLlhkXX1VFl0I4pDTf2ZgRxycKCxu0Dj42OTcNS6c8T1loWkzBjOgl5Z3fOOEi5uuxyeclFliXCNOPC+hJ5IZjHKcuWxFris9Ufsb2zzammjqVA4s8wm8axzUFJy9ZoOxVVYhKmPB6GxxYJxnPB5xdF8XO3s59nfDzB/KIqmKWlJQAODw8/sqN3grL6rPGFJ5hPO+j/NIuTz2vP5iQZ9Pt9bt68ydraGhcvXvxcJbYsy0/nUUFSUPsQq8kxVM4s1PDjnL3jU+mFxRpClPzw2vtc3xryjdeuMkxUdqdRxa6ydRZtWD1mbk2jlMdHPpauslgzsAyNO/se17YnXF1psD+PMBSZgWfScjT6s5D7Rz4Pj3wsTaEmlYxjiRdsHYGEHyX8+L171FSZ115/lbhUUI8/GF6ak+cF7/XnbEQOLyw3sLWKDhBmJWc6Nk82eWqg5sqCo6hSEKW5wNJUoOTmvkfWLZnEGXFWkhQlR15KzVCIM8H5lo2hKShStVuyN40Z+TFJLmjaKodeiqXKTKOcupkzC3OWGibnFl0OvZjDeYwX5bTMigjgxTkN2+Ds2iJ5XiI3SjTPRy1SGsLn0Z1DapbCpHBo9VqkuczRPMW1NHpuxQ1zLRVdlcnynFt7Hq4pGLk5jq5wFKQcziKats7rp5vYukLar9qgNRRu7c9ZqpuUpaBuakyjlOWGSVYIRn5Mt2agq0olRz5WD7qGRrducnu/urnLssQra5XrqUDgGFr1us5joLJxKMqcrKzmQlkJqYBrOzMcXWW5buDFGYamHJujVVYR5xdr2IbCj7dnjMOcnqtTt1QkKkuIi4suj4Y+bbu6Sd/YnXFxsUaSq/TqBncPfcbDnKW6S7NRZ8nsUI8TnDKkP99k68kOTx4/Ym3BpbvQYS53cF2XhqUyj6tKJisqSbjyHOb+X6YW2ReRYM6cOcPS0hLf/va3nyaU+XzOD37wA/7pP/2nn/m6X2iCgU8nVf5pLbFPiue1ZyPLMjs7O0ynU1588cWn2f/zXrMsS/rzBIkK5a4qEkJUp/K1lk1ZCm4dzInTgv5kzg8e3GMUl1y6cgV0mxVLYRpXG9XnuzWaBpxtWwRpZafcrRtsjQI6rsmN3QlBllECcZ7zeBBwZcnFTwq2hj5BmiEDfS9mEmacdhQ26oKLS3WsMuK//MV1Itlk6dQZarZFME/QVZmua+AaCj/cmtBxTTRZYWsYoMmCrVFEXgrKLEeVwFRkFLlCs7u6RN1QubLkYukKm+OQjbaFbaoczhKmUco0zOm6Oi1bx5AldmcxDw49NEXmK2suuqpSlNB1De7156x3bNabNmlR0LQ0orxkexLSrek8GYf05ylmWqLJgo5TYUrCNGdrHFLkAltT0A2LXr3Bq+stgjgl9Oa4+0P29nchK5Atg7xssLrSo9OwkKVKkLDkGuTLJQpgahLTKONUw2RzEjGNM+4e+BRCsGiCplYVp5fkyDIg4PEw4lTbxFArhWDLqcQB6y2TcZgiKxLD4833eBziJxnDMKNpqTwc+EjAlSWXpbr5lC2myBIrDauyli5K/CTjKISegK+earE/iypumKFyMI058hPajs5a08Q1FbZGEaIsMNTKzrlXN9ifxcgyKJLMN84t0LQ1/uLBkImXcGnJpW2rx/s/Mi+t1StCRNNk0dU58gySWKOmK7z2xuscjj3yyGM09djd2QEgMxpsRxpnl9pcXG4+N1+YL2OCedYkZd/3efjw4dOvNzc3uX79Ou12m1OnTvHP/tk/41//63/NhQsXnsqUV1ZWPrIr82njC08wP08S+HlaYp8Uz8O7JY5jgiBAVVXefPPNZ7Zle9J2a9saW+OQeVwtoiEEG8dYc1mWeGm1weHRgBs3rrPUW+a10+dQJIjykoNphKXJXOzV0WSJrJTZmURcWm3TrekIIfjKWpNDL2HkpyzVTf7ui23+670BizWdqysNjuYxcVGiqwqaqrCsGtyKPSZJSunDfHjIOw8ecXqlx1HhPPUWOb/gPJ0d5QKats7uJMRUJbKy5MEgQJGqhDkJM/qB4EVdZWsUsj+acTQQtAcBklztw0hIvLLeRFdkJKoevaXLpFmJkCTislqYP9txuHUwZxQVfONsg8W6iSJJPB74bA1D6oaOABSp4MWlGt/dnODFGbqi8ELP5sbjGeM453uPRvRn1b/98SBkpW5wbq2OIknsTkPuHnqYisKDQYludrC6dTJREHsBnj/nzq0hXUdBteuMhU231aRbM9ibJgz86sa/3rFp2RoPhwGHXoIqC+5PYPreAbKs4BgKDwchoqwYbi1b59aBj6NXpOaapfPDrQkHswQvTjFUGQVBu2YQpiUbLYO0hCwXrLVM7h8FzKLKBlmSQVcUplFKmJXYmoKiK4SpYBrlfL1lsdw02ZtEbI5CtifV7G3B0ZmGCX+x59Gxq9lNzzWIsoKHRz5xVnL30OPV9Sa3DuZ0bJ2LXQel5zKcx2iqjBAVIbqCYaocesnTSq1lKtiqxJKrM49MMsPgVGudMC0IfY8/vXnAwWRMPj0k6Jt4K53n4sXyZVKRPS8vmB//+Md885vffPr17/3e7wHwO7/zO/zn//yf+ef//J8TBAH/5J/8E6bTKd/4xjf44z/+48/c9ocvQYL5WRXM52GJPesW2XA45MaNG6iqysbGxjN98U92a6q5QrWspwmBIktPZdxCCB4/fszjx4+fQjt3xyFeWnCmYwMSsqzQdvRjYq1M19VZdM2np91ru1NMVeF0x0GRBOMg5cKiS57n2HrVc3809KvFwY7NQs3g0jJsH07J85Lv33zM2plzJJLOqiKTliV5UfDuzozzCxbv7UzRVJnVpslq00JVJJqaTpSe+JxomHLOpiF4Z2eGZciM/Iw0q8zHwqRAFjCJM1xdxnFNZAlOtwyW6hZRXuDHle3vMMm4slTHtRTysrIMTvMS19ZwLZ2GBAM/xlRlZEnn3mFA3VCYhjkbCzZvPx5X6J04ZxSkLLgGNVMlyQS9uk6WlXQaJntTmAQ5Z9pq1bIqC5IiZ+rB1dUeQVogJMFSR+XB3pDZ/Ii9J9sc5irNmsu5lRZFIfFw4LHgmMRZQdPRqGkSfxGDmMWsd1yGfo6hgKJpvLxSIy4gL3LmicTpts3+JGJ3ErE/T1hwdRxDQ9MqevGJy+RKQ8OLMu72AyxNRiBxbtFhFKQVLBOqHSZTp2VrKHJFnn5ne8pXTzXYnyV899EIVZbR5cpa4b3dGQXwP1xYY6NtMwlSgjRnGFSS4ygrSPKSoix5JCTOdB00RTqGf+qc6Vj8xf0xL666pEXJ3rQyhWs6Gpv7c+7OoL3nVew7WWJnEmFrCqrp8NVL66y1rcoQbTL5a14sJ6Tier3+uVcdvmwVTBAET62dn0X8jb/xN/6aJciHQ5Ikfv/3f5/f//3ff2aP+YUmmJNdmJ+UBD5tS+zj8awqmA/f2K9cucJgMPipL9RniQ+D7i4vuUTH3uVxVnA4T+jYCu+//z6e5/G1r32Ner3yUB+HKaoiV2DEeUyWV5h6gLU6nO1YTMOUIFWqLeqagaAyf7q1P8NLSpYaJruzmIGfslAzkZA5nMfsTSKk8xKmDHv9fcq4ZP3safoBrHdUvCRn0TEYzmNmSck8Stgah5zpOPRcne1J+NQfpW6oCCoU/EZD43JLMHQNpmFCy9Z4/xAeDjxcU2OjbSOAIz/h4SAgSKvX8PyiwuEgxtJVJmFOnAu+dfsQy1B58XiorGsy33s4BEniTMfm7ILNziShP4/Yn8aoMpzp2Pz4yZSDecTeUYwpZcd/9xrzKKNhyRzNYs50bQ695NiPBQ4DmZeWXUZBBgJEmdBtmJRezN4k5kZZshfpXD11nlUEjeGYOAy4c3+b/UCw1tb5+rketmJW3jGKTFGArsisNi1GYUqWCxxdZneWcqVnczCtksIsztE1BYHEb7+yzOYwQJYkeq7Ojb052+MI21DYaFt4Uc6hFxNkVWvw713toSkyP34yoVvT6boW7ZrGNMpoGwJTVdAUiRvHc5xCwKmmRa9etcYuLDpEmeBKz2UYpNzYn/P6epPHo4hDL6ZhVklkEGRc7tXozxPSTGBplT9OnJX4ac6DQ5+XVutcWaoxDivRimtWttGL9YpcvTUKWWnoGFqlKDvd+UBF9WGWVxRFT1leO8fttA+j8S3rr8Nif1p8mRLMidjgFzmDeV7xhVcwn0RULsuS+/fvs7Oz86laYp907c+bYNI05caNG4Rh+PTGPh6Pn6mrJXxUmSZJErZR8cj8JEcrE95++z1s2+ZXvvZ1JnGJKwRhmrPUsFh0DQZegiJLFEhPzZy6tlIpxZo6CjANUwxV4kdPqqVBU5MwVYVzXZubezOmUYqhKVzqOcRpzl89GvC9+4d44xGWoSKVMqlQqGsKrlEpyZKyYGsS06mpuJbJxZ6LpSoUAs60a4R5wWJNRzleAKwbGoamEOZwqWdzcy+v0DHAOMhxdY2hn7FY13k4CDAVELpKw5IZ+xm704hDLzu2Ui5pWFUL7MkkIsgKMgFd1+TIS5hGGf15SnGM1bF1lSDJKZFoWipZYSLHGg+OUqKsZHccMglz/ChHKBIHsxQvSitkiZowDVP6s4RfOVVn0TW4vFSvcP7Hy4ojLyHLoT+vJMhnlrusNk6xPQm5sztCKRL2joZsDgNW6yquW8dQQVUqsrAsYB7nLLk2vbqBrqlsLNRQpKrK8JOc5abB7f0Zd/Y92q75lIE28GI6QufIT2jYGnVDxdEUXFNhcxTiJwUH85iOrXNuyWZvEhMmObosWKrrSFT4/CvLNTY6FmFasNGxOfIra+q8TLi+O+NgVm2Sj4KMjbZNUVQHlAVHY6VlU9Mq+XPb0bnX97H0aialy4Ak0akZeHFOdLzhr0sK6/WKbRekBYvHlZljfHBr2p1GZHmJfWyPrSkylmWxurrK6uoqQgg8z2M0GnF4eMj9+/cxTfNpsvlJaPwPx5dRpvzfu5slfAkSzMfbWFEUcf36dYqi+Nx4/c+bYKbTKdevX6der/Pmm28+3ad5HrOdT/KDkSQJEU549+ZNOsvrbJw5yyQuaJgaN/fmtJ0KrAjVYFtVqm30b90+4tX1JrIsE2cF9w49fuVMmyQs6c8Suo4GCHYnMaUQ/OX9IV6ckRzb/tYWbCxD4ZQjUUuGuAt12s0Gf3Z9m3qQstywyPICWZI4nKX86rkF7h5MKQqBF2bcGs95OAiwdZnlhk3D0vnxkzFCVFvvlqoTpILHo4qH1nU09BZ848oiQgJDlY4ZVDpJDl9fdfn/3ToiSALiVNC2qgTnHausSgHIgklY7aCcaltc7jl899GEH2yOef1Uk/W2w+vrNb7zaIQf57y03qRhqaTelAWrov7e7hecalX7RXEuqFsKhqrjWCpZJkjygoNJwHeyanFVVWRkoKEruLrFwKvQLIYmURRUyjJVJsoK6rbDheUefpwz0X3GUcRgEiBJcLS7jxGPMew6udCJ86rKHPoJdUMlKQSKVDAJM9ZbJrqqEBVzdiYhL624nO/VUGWJW/sepZhxeanOS6t1VEVmHmcMg5QkK3lxxaVtqQRxzpNxiCZLNHTQ1arKEAKSrGStZVV4njDlR1sjmpZBy9LQ1CoJ2bpMnFdun1dX6tQMhWGQgiShGOqxjXXOuUWnmmvlBaqqsNGxCdOChZrO7b7HkmvQ0wVHscT8ybTC6izXnyaXrVFlfVC3VISAEsEnNQ4kSaJer1Ov1zlz5gx5nn8iGv+ntdOex0L2Z4mPt8j+eyYpw5ekRXZSwXzeltjH47MmGCEEOzs73Lt3j/Pnz7OxsfGRN+SzcLX8eHw4wexNIjRF4mjnMQf7+7zyyiskao3+LHq62d+0NYK0YnGFaUnTUqmbGgMvoeNomMeWuFFW0HYsBl5MkhW8vzdDUyRyAY6hEKQ5pSj52kaHcZQy9BKmQQbekGYx5WtfuYSHAXnKDzTBiysNXFulbuvkJfz9V9qA4MHRjLuHHo6mkBclEiWmpqEr8Ec39xnOk6fo9bTUUGR4ZcXl4SDEVQssT6CqMtMgZdPPONU2ibJK/bY3rdp1LVvjjbNNTFVhsaZzQ4U4LTFMmUeHAatNk7EPD448ZlHGarO6MQ78lJfWGvTnCU9GIa6hMg9TylKgqSqaJtO0Vbyk4OEgRFMlrqzUGXopqgxvnW2R5SV/em/AleUGqiJztx9waCfMwoylhsFKw0JToSgktsYRv3KqVSFbipiDWULdVJGPjbiyQqCZFrZlEHoev/aVi9zfn5BGHpkfc2d8wCPbZn2hxdmVDkdBjihhrWUR5wVLrsn//MYadw7mFEIgS1UrtUQwCTL2ZynvTKdoisTLq5VEfBpkaKpEXsLWOKBuKkyClIdDWK35nO+5SDKYusIkyrjbnyMjoUoKa02Dx6OIIy/hbNtkqWlz/8ijELDRNhl6OQfzkDfPLHBxscb2OCTMS9ZaJq6p0rQMvrJuoCsyD4585nWDhqmCVEmP0wIutEwmcc7uNObysSmZqVWt36KE9U/wR/pJoaoqCwsLLCwsANWh9WR+85PaaV+mFtkXIVN+XvGlqGDyPOfu3bufuyX28fgsiSDPc27dusV4POb111+n3W7/tf/mZGflWcaHE8xoHnD77j2kMudXvvIai4tt+rP4qf2urSs0TI3NYcDjYUDb1nhcCs4tutQtjbpZQRUzIXGmbbAdCtJ5ClLF7Uqyko5r8JVTLSZBws4kIitLorRg4EUM9p5wti5465tfRdJ1/m8/2KVhwqWm4Gtn25RwrCAqeGc7o2MbrLdsznQc3n0y4+xijf/pKytsjiJ0WeLd7SmyKtOumUzCBEtTaBgV/bnuJQy9hLiAgZfy8MirfFPKkiXXIMlK7h54KFK18Z7k1ezodNtmtWny7vaMLBDISuXy+PJak2GQ8PAw4IVeHakpkeYFdw8CsqLiqLmmyt48YXPosWZAz1K5tFgjzkuyvFLFfffhmK6rMvQy4qLkQtfhcq/GlaU6Iz9mHKXoqkxeCjSlqhSFkKAs0CWJh4OANC8oSmg7GstNk7OLLk9GEb2GSRDlzKOcyy3QDZNmq8Hh3OHrV5okoc/O4ZjxcJ/bD54gDJNeqwaGhZ9Vg/tF12B3HhPmAsdQGQUZdVNFU2WGs5CmoxGnJaUQTMOMXAj2x3FVEeUFszhnxdWZZnBGkfnxkyktR+eVlQaaLGGqKpam0GuY6LKMpSe0bBXH0tmbJbi6yqFXzcPOd3XysrI2uH/ko2sKwzBjexwBgq1xyJWlGouuUbV1XeOpDcXO/pzlmsKZbo1mmKHJH3gtLdVN/DjH0asb/+iYZde0Px2Zw7IsLMt6isb3PI/xePyRdlqWZczncxzHeabqtE8bJwlGCPHLFtmziLIs6ff7GIbxTBwnPxyf1jHT932uXbuGYRi89dZbP9FD+8TM7FnGSYKZTqdcf+86bqPJi5deZLHpMIsy8qLEMVWato6tq4yCFFtXmIQSj4YBLVNldxIgRNUmm4Ymhirj6Ap/Y22BuwceC67BStOi5xo0bY39WUxeCHSlws3sDKfce7TH37zg8o03XuU7jyYoJLimysCrmFR3Dma0ayY1Q+Vuf44fZaw0LSSqJUMvyZnHGf/b9T6WUVVRqiyRJDk3dqdYmsxdBHkM+5OQWZxT1xWujQQPxCGOJtNyKo+Q9/amdGsmbUc9XoQsUJUMhOB0y+L9vs+hHyMJmeWWSVlWy5oCWG0aPBj6nG5b3D7wadkqtq7RqWnIssyTgcf+NGYmpZypyZxZcPCSkh9ujdmZxjRtDams1hX3JyFemLJ2bLc8DguCKKOf5BiawmrLZuInlKJkEufsTGJOt6udoHmSMvCqtlKRl+zPqjnH1iDkcB5xfwztPCfNoRAFW6OQv3mlR7PZ4J3tKZqW0NYyHuyPKZMpHRseR2MGtRppKhEoCkfzhKwQrDYN3n48QZEV1gQUouS7j0YESclSXSdOMx4derRdA1dX8dKciw1YrJsMwwpE2fdiXlpp8Np6gyMvZXMc4OoKp9s2UVqS5gUNS8WPMwxNJkkLXj3T4PyiwyjI6NR04qwSmvS9BFutlIzG8cB/o+Nw68AjTDIuL7nYqoSpyWRFyXrLRFNkvvNwRJwXvLBcx1BlwrTENas5lSrLnzrBfDg+3E7b2Nh42k67ceMGOzs7PHz48CPtNNd1f6GVzcdlyr9MMJ8jRqMRu7u7GIbB17/+9Wc+ZPs0iWB/f59bt25x+vRpzp8//1PfVM9jgVOSJOZRyp9850e8fvks589sYGgKjwdVn94xVNKscrTUVZnlhklelDRt/RilETD0MiRJoCkKm0OfH26lfLMe0+6UbCzYxFnJestiGmWIsOJzPTzyWG2Y7B8NYbjHV88tsnFug0GQUxSC/XnEcJ4gK2AqIAmJxZrBrYM5B7MYCUFewCiMubEXc3XF5Z0nUw7nCac6JoN5imtrJEXB/jSm4Wg0bRVFggeDAFlReDyMGMSCrzbtqu3SsenPq/bTPMpp2U1GQYauCMaBoGEb/Gh7jqFJSCjomsxiTefP7w+RqU64L6/WibKSQZDRMBUURcJQJS71XLw4RxQVS4usQJVztscxvbpOw9T45sUuWV5w6MWUMqSZIEwzHh56zMKMrWFloBXnAlMDBdA1hQXHxNFVDuYJfpqwJJuYmkrTlplHBYZSoMiCIy8hpzI4ywFNVjnd1ZGPn+PmKOIv7x8hSwpnuzX2ZzHdxR4bCw5ykbE/nPBgb8DhrEDTFH4oFM52Xc4vLPHCap3hPGFvGqErCmfaFpFVcjiN2Z1GKHLljJpkgq5Q2A2gkxRcWqqxOYzYmcR8baONa9psj0MeHPrYmsRb5xcpyoz+PKsWfb2Ul1cb9GcJ13emtGuVNH4cpPRcgxvzOUlecmqtzjSqDgUn4MwgyclKwcE8IfdTwkLm4ZHPetvGUGW8OKM/j5GQWKobtJ3qs3jqU7TJft5QVfUpO/C1114DKpPAn9ZOe57xyxnMMwzHcVheXn5qDvas4+dpkZVlyd27d9k/nnX8PLrzTxrIf54oioLNzU2GQc6pC5fp9JYwtOrv4Rgqtl7JSL/7cEScT3lhqY52zJSahDkXFmusNk12jucUQsBfPQg5DAXfujum015grW1RNzVmcV5h/Yc+Uz+hKAW3N3eRIp9WbwUMhzAviP2CtqNy6MMwSkmyjFoI8yTh5t6UICs4v2BTlBK9ps5Lq3UGQbVr058nHKOtkBWJtq3z6NDDtVRalookScwSGD14QrcmEeUGrirQVenYZVJjuWGwUNMwFIUnk5A0zwlTeGXVZW8WEiQ5hZD5ey8uosgy7+1MKym0gLWWXZm2lYIlV+dwXjJPc/ykYEkYlTlXCS+sNpBD8H0PS5f50ZMpulKdqPOyxNRUztYMfrQ5xk9KVElQNwtyAbIkc75jsFA3mEUpR/MU21DQZYlXVuuMg4ShH6NKglkItqFydbXB7jjk0E8J4pylpgkZPBkHTMIckCqqwjDkYJZgqTJHfkK3pnOqUyPNC5YaNcJCJVHrrK0K7u6MiGcxs8mU6zfGWI6FUCyEUGhYJqttm51JhKlXVdr5bg0hwc29OYt1A8+ASZCR50VVQYcpR15VtcaFqKqOBZvTLZPNUcmCo/MwCqiZCh1Xo+UoHAUV9WEa5pRC4CcFWSHwopS9aYyqSATHyP2arvLGRousKMkKwb3JiCeznMVaQt9LaZjqUx8gU1UY+Rkrxx5J0vHMJkjyz1XFfDxOPsuKoqBp2kecJj+pnfZp1GmfNj7cIguCANd9vhTp5x1faIKxLItOp/P0pPCs42dVGieKNSEEb7311s9NLn2WKrIwDPnej64RZiWuLnPl1BJtp2oz5EVJklVLha5pYGoymipx5MU0bJ15LCgLQVYIWo5By6laev1ZzFc32nhHO5iuia5Wey2qLNF2DFabJtuTEFWGWnzI/XHM0lIPv9DwvBhnrDEKYuZRxpXlOotOh+1xyJPHw0pp5kVMo5yOraEqcKnXYKGms33nkESWWWk6CAQ91yAvBGGe03R0DF0lKkrubg85rYJddyhVDbI5bQt2Hm8zrpmsXlpknpvMwoxJXO3VpHHG45GPJCTeOtdiaxRRs1TSouQ7dwfM4pS8kPgfL3YIC8HuJGRzGPPymkt/luLFKeeXXCQJRmFOWRQ86s85WysJsoIfbk7QNZmBn1UKOFUmzAS9hsaiazAM/GodXQZFkiglOPRTDv0ETZZpuzp+WhAlBV6SYesqu9MYUZYYmoqlygznEfM44/beFF1TsTWII6iFOWM/JS9LdE1mfxZhairIUNcUOo7BpSWXNC9ompXrp6bKxFlOrlqkskR3uUHDlNkdzqgpIfk85kZ/xF5fp1Gv0WvUefNcC9vQaNvV//bGARJwME8o6wbnFmu0bZ1pmLI1Ctkbh5XB3UqdH21PeTwMON91+NWzHWQZDFXmLx6MqGkSZV6y2rZZcDQ6x9foNVxONy0kWcYxKqValBXoivzUrvuJCr2aihAyqlzx066u1Ok4Bn6csTerXERPYhRkCCFoCPWZQS9PPssf71r8pHbaT1Knfd522ol/laIoJElCURS/bJF9nvhZi5afN37atQeDATdu3GBpaYnLly9/qgrqWanITp5Du9vjbHeZW9d+zPKxF8a17QktW+NU28bWq5epGspXN6JJmOMaCo2a9hEwZpIVDIMEQ1HoOgqOU5GFvSRDkiQW6yYIIEvY3nqIadqsrqwQZoLXNmpkeXUC7U9j/KxAPwro1g1WOw7jHUjyEqSKkptlOac7VjXziTJ2ZzG2qnCu6/Bg6LM/jSpr4HFAlhesN02mkxENKWLBhNbCArcO5nhZjS5j1k4t4xBz4/EBf7GZMEsVOjWIT7VRFJ0sF+RlddNRFJmhn5DnIHHiqSJxfd+n66hsj2MMTWIaZlxcrLE7jbAUhft9j5qhMPBinoxihrWSZQtEkrOg61zpufzJrUPuHXl0HB3X7NCyDTY6JTVDwY9ylhsmiizx/ccjlpvVZr5pyPQc47jtpaIpMj3XxE9SDEVFAN/fmtGpadi6ypGfEqhwOIO/ddlC1WTquoKfFhiKTJgXnFtwsfXKR2YapuiKxK1+gCRKdmch0+PB/saCxdYwZlsuubraYbVhcvdghj/2CfIE1x8zDQb8fw913tjo8P3cQFENFl2Ve4VElOTsTAsu9mp0HJ22ozGNcpICbLN6Dz4ehMyinFLIvLTqoikyR15Cx9YoS3BMhW5N51zXQQjB+a6DY6jUTfXpoqwsVYy9J6OQ+wOft8626VgyM11FGApClFzu1Y5hp1AzNS6ZH61UWrZGkOTPlKh88ln+Wcnh4+q0OI6faTvtxHBQURTm8znALxPM541PO4j/tNf+eIIRQvDw4UO2trae4lY+bXzeCubDZIAT1VwURdyXBUII6kZF5JWQKAqBpVVvfC/O6M9iDE1mHqUoksaZhY/2aA1NoWFouJZK19GwHIVJVLHHznZr7I4DhsMRe48esbLY45uvXuTP7x3hmiptx6A/TxCiIhfXNIVRkHDkxVxZqVMKmIUJCw0brW0zCTNsQ2drEJAD59oWfpIx8FOOjpOAKkmkRSVn3Ts4wFIESmeJazu7NJUQkHANidCH5VaNx0OZSNFpLsRMjuYoMhwejkkygZ9L7Eo5tqZg6BqqLGPpcGHRZRQmeHHVhnk4DKCEy8suhqLiJxk5godHPuMow4szNEXFtTQGXsDMzzlj5rRrOmstm7WWxTTK0VWZIC0Is5CyhJWGTWSXNCyZgZfx0moDP80Ikpy8gDv9OU8mMetNC9dQMQ2FJcOipsn8YHtOkub03DYvrTW5vjtF5DlpUclxNzoOUZpTtwyyUpD6BfO4klrvTUOyNOf+JObBkYeuKDRMFRl4+VQDVZb5y/sDZmHBg6OA/jQkzWF1wWUeWawvNVhrqPSHU97ZnXJjP8FQ4GvrOh0L9uKcnmmgyRLjIOHQT9ifxGhqZQt9a3/GqbZVvbcshawQ/Nf7AxCCt851KpuBOHvq1Gkeq8h2JxHmserRTyqcUcfR8ZMcY6KwPY7Y3Q+Qy4Lm8Xv3YJbQq5v059VC51Ld5HCeIBAs1U10RcL4BEuLzxMnEuVPm7RM03ym7bQPt+p8368Wrn/pB/M5n8BzQurDX08waZry3nvvEUURX//61z9zf/PzVDBZlnHjxg18339KBoAPTk8H0whDU/kfLy1yME8Ik5QbezMuLLrc2p8xjwvOdSv2lKmryMeGTF6SY+sqe5OQQy/hBbOOKkuIouSF5cbx9nTO/cdb+OMjVs6cZWOpS5AWnOnWWKzpvLc3Z+glzOOc0x2bF1caDP2UcZCQ5YKshLt9n4aX8+sXuxiagh+naKrE6bbDwSzlyM+RpJQ4g7oCyw2Dl3oG128/wDUMlpaXWKpb/OX7u7TlgL/34iKaKvH2tRHfvj+iKEvOtB1Oty3atszWMEGrm0hCEB9MKZOYv3o/wNYVlpo6WtlG6DpeWLHOXjvVZPuYz7Y5ClmwDeqmhiZJ6DrMRzk1U0GSSn7rao+H233e3Zlz72BOw6rUeb96oYuqqQRRyqKt8P3tOettmzv9GYs1g26txgvLJmGSMQhillyTuiHTn+bUTZW2rTEOM6ZRiqJUN644zVlvmjQcja+sNTA1mYeHM46OacqSEIRZSZpn1HSVg0KiWzdICjiYJTwZxay2DExN5cpSDT9Jadg6eSG4fzRnaxITJhm1qCBHcHHBJi0ULizWCJKUfQ9q9QZrlovbSZHynDKZc+CHqNmUXCj8+H7E+kKDQSyRC0HDkHn78ZiarrDRdbjcdfDTkhu7M378ZMrpjkXHqSCquiIhSVVX4sk4JE6Lqo0bZbiGih/n3Nid0XUNJmHKatNECMH+POWUK3Nlqcaf3DniQrdGXlaYGagEASM/wTYU7h/6WLpMzahk+M8qnsWS5bNop50ctGVZfipRfh7eN7/I+FK0yH4RFcxkMuH69eu0Wi2+8pWvfK7h3GetYDzP49q1aziOw1tvvfURp82TFl2UZSiKjCxLrDZNHh3l1IxKWWNpKnkpeGG5TikED44CfrQ5JskLoqzk6kqdvWNl14Mjn1kiaOiVeVNNgx+8cxN/GnL28os0ajZ3DzzivGDRNTicx8yilCQr6NVN/v4rS+QFlEIwClL+9/cP2PMl7LbEyE95cORj6QpPBj6tmsG5rsv5rs3+LCRIC7Is5dG8gDxGKo4w6y0sq8H+LOX2gY8hg66qPBmnOLpEloOjqay0DHRZJikU+vOEQsA8LnEMmUurHTo1HXnok6YZpci48ajP9lxgGhIXl2qQuby02uDxwGcS5uxOEpqGzNmuzcArMDSZhqUDglmYsto0eHwENdfgYBrz3UdDXlqqkWWVa+OPdkKWagZFUeKlObqqYM4jfrgVsD2MeDTwOb/s4toqhq6xUTd5NPQZzhOWmjqOqrA9img7Opom8/iookqP/cqrxlElrm1NWHBN3jjdQFcV/tcf7ZHlGcN5QmELwrTATzPUucTlXo17fY95XDIMEpqGgpeWUJTIkkQhCU41THJRUZUfDkI6js7Ggs79I488K1lrW7yw1OJBX4N9n7/11XM82B+zN5oT+QG2UqLqBnLdoaU7oMoYEtza9zB1lbwo6NZ0arpCVpQ0rI+iXZ6MQ1q2hiZLzOOc+bHN9zRMGUUpbavCBTVMDVMV5CWoiszXz3RYb5kEScHhPGa9bVMKaDo6ohRYtsTIz+i5n53u+0nxPJYsf1o7bXd3FyHEJy57KoqCJEn4vo9t279MMJ/7CRxXMCfLVc8yTpLX1tYWDx484MKFC5w+ffpzP85nqWAODg64efMmGxsbnD9//iPPIUqrdgjAWsMkFZXZ06JbDV4BBl7CUsPkqu1ya3/OoquzOfCxDJmGqdOrKxiqjKkqOHplszw5kEnygh8/OmT74R3QLJyV84SFxCmrGl7fO5pzYzfm8lKNBccgzUqSLOO/3h3w9bMdNocBhiqz3rbZc2SO0pzdaYJrqVxYrLOxaLM1iJjHOVkhKIqSsqxOpg/7M4KJYNhrk0kqdlZBIaO8pMhhNI95Py94YcnBy+FvnWvS93MMVaIpV0ZhTUshLSQ2FmxkIEhzvnqqyTTKWayZbI0DUj0gyVKk2OeP3r7Ngqvw/lilRMF1DO7Pc8ZBxt2jgLW6wVdP1fnOo2nldmkWvNgz8VSdg1nA0I9JUsHrG03eeTLBMXQMVaJmaeQljLyUeZQx9mIOvIisEBxNY7q2wammgawoKFRJOC0FTbtkwTVJy4JJkFMgcbpdcqfvoUslXg5zLyVICixNplc3qVsK7+2m5KVPVDe5ulznbt+jLHOubU+ZBCmFJCEhmFOiawrLx3iXbk2nbsjszhLyMCUtBL26hhdnbI9CJEnipfUGhZD44daM3QDOhAXnVtt0Wy5IEg0DZjOfugiI52MiVB55Noph0WrVMVWNS4sOAnh7c8yZjsNCreKZeXF+3CrLcHSZohRoCizUDBRZQlckeq7JxkKFjVl2VIK8IhFcWaodfx6qKtqLc1abFQ0AIEyLZ55c4BcDuvxZ7TTDMHBdt1JYzma/MInyf/yP/5F/+2//Lf1+n1deeYX/8B/+A2+88cYzu/6XIsHA84HNCSFI05StrS2++tWv0mq1nsl1P40woSxL7t27x97e3k+UQU+jjLw48VcvyYVElpcfSbqOoWJqChIVgv7R0CNJS+Jc5rX1FrMoZ3scMQ1TSqGx3JRZdjUOZhE333+fM6dWKK0uYZYRJiXvbk9Ji4JF1yQrYsKsZKVhYmkK9498ZlGGH2esNUz8NOe19Tp/8gOJSCro1DTCtODqao3NQczL6wamKvPCssPuJMBPIsxsxroNwna50Q9RFJnXTjXoNYxqDhZIlLqEF2V899EEKYF7g4C8qBwelxdM7vRnjIKCvCxZzgxsrTKv2p+F5LlE29bIC8Fiq8aFrsPQT/CihPeGPlEaM/NzZtOIpiszm0KUgCJZIKs0TJVBkNLQJDbaCrtC5W6/IMgKTCXk9ILFuYUafb/ax8gLwcUFi51JxO48JopL3jrXoWXrfP/RmJv7M2yzQ8MStGsqSy0DQ5bw0oJSJPydK4sMo5zDecTdQ4+0LIjzklki0dMlvCTl7UcjfmWjSd1UKwp2lDPwU5aaFl8/1+HO/oybe2PCTLDRNllr2xSloH0s7b7V9yoUfsdEVxQcQ0VXJZJMYuCnSBL0GgZ704i3H485nCcEBURpRmvBQlcU0qLEUBUub7i4hsrhPMEUEduHY6R0hHrYJ9Vt+sJGVi1sx2IcpBzMq9lTVggUCc53bSZRVs0PJbi67LI5ChECVpomh/OYYZDiGjKmXrURZ1HG7iSmYam8slbH1lWGfkrdrGaStv58YJS/aC+Yn9ROOzg4IAxDzp8/z+LiInEc8/bbb/PGG288F7rAf/kv/4Xf+73f4w//8A/52te+xh/8wR/wW7/1W9y7d++Z2QR8aRJMnufP9EX2PI/333//qQT5Wfpt/7x7MEmScP36dfI8/6ky6KV65UWuKtV106JCpWRFtRsCfOTDVTcrG1xPLShLwYNDn7wUxFmJKktYmkKcFfRHc44mPr/xxitEisM7TyZsjQJeXa0jhEyYlHTbBu6SxiSoTru708okqmao3Ol7vLhc4y8fjFAkWLTgXKeGX2o0TYWHRz4SEl5ccbI0VUGUBQ83+4QCrmz0mMcZaQ5X1+pkRcHtfY+iLNEKibW6SZQL9iYRUQ7744hBkFdAR0Vib5qgK4KyhHuHPouuTpiU3B+E1DSZP/dTunWdt9YXmIUZHUfj3d05dUMjR6VtCJYcCcg5GMVoeYHneewf5ChCZ7VhQBFx7TBjSIijy9QtDUmVub0/JytKbL2i9w7mCbdKgURBWUIpQVaCFxekJSAE725Nubzs4CclNV1FlRVUpcTSFe4NfGQJ5lHGwTwhiHNMRRAXECcFC46OosrEWUUN7rgmB/MZS3WLvCjpTyNmUUWGNjUZXVfIc0GcF3iqwotrDgdeQpAUeEmJo0uYuowmQcOUmScFV1caLDg6j4eVEZmiSpyrwzzKuXfo8cpas3I4TQuKQnC77wOgSCrN7hIXe3U6JkwnY/7q3gF3tsfUTQmWauSKQ9tYwMsqQ7miEJxZcBh6CQ8GIeutiLMfEqTsTCs2XpjktFzreJtfIEvVQUtXlaoNPPAxVIXX1huf+fP6s+KL5pCdtNOgWp34wQ9+wL/5N/+Gb3/72/z9v//3ybKM3/iN3+Df//t/z/r6+jN73H/37/4d//gf/2P+0T/6RwD84R/+IX/0R3/Ef/pP/4l/8S/+xTN5jC88wZyoN57loH9vb4/bt2+ztrbGkydPPjLreBZx0iL7aW29k5lPu93mxRdf/KnJU5IkHENFlmWO5jHvHsToSrWzoqsfvPGHfoKjqyzUDHbGAb96roOqyFzbnjCLCt4400CRK3+N9957j81hRKvVxmm0uLc9pSxL5nGGnxRcWLLpOBqjMGOlYdCwbAZeQlwUWKpClObMwpIfpzmTIEHXFK62QF2sIakmDUtlHKQYmoSlq1iqwndu73D3wTaFKrNUb6IqEheWGrx2SmWtbfEntw652HNICsFsEHOubXJvHNOxFfYD6M9jHNPgyEuo6TJZLhiHOU1TIU5LHvYDTEMlKwQREOcVGfr//d4BiJJe3aKhS+SlRJQdk5ZlieFckOsWtUbOalvl1mHMJIwwKcllGQVIlQm6rnG67ZAXJXvTHF2DaVSQi5JpkFEzVCydYzMumVu7Pgt1jVfWG4yDjDBJ2ZlE5HmVBCRNxjYUDmYRSVFiKBKTMCdLC+ZxTq2u46iVtDwXGpqA3XHIUsuptt2LkiDLeDIuK0M0S6FdM+jVdWqGxixKEUhEWU6Y5vz2y8tc354xjisXzWVX52Y/YBwV5KXg5bUGtiZX8Mi2jXAVwklI09UIEsHOtJrfJVmJEBKDIGGlUVk0v7bRAiHY80p0o4XWlOgSsmBJ9GdzsvgI72iPcaGimDXqZ7rsKhIct/KmYcqNKMPUZJYaJposY9sKB7lgOEpZXsk5s1C12sZBSpwV1AyVtq0/04H+J8UXnWBO4qSSOnv2LG+++Saj0YhvfetbXLt2jW9961ufyEX8rJGmKe+88w7/8l/+y6ffk2WZ3/zN3+Ttt99+Zo/zhScYSZJ+pqvlzxtFUXDnzh0ODw959dVXaTabPHnyhKIonmmJefJm/KS2nhCC7e1t7t+/z8WLFzl16tTPnPkMvARJAoFEKUrWmhZNW8XUZAZeckzLrThZTUvnpbU6pzs1wrSgEDnnujVGQUKSCxwp5o+/+y6JbLHQ7TCPM67vTJlFGacXHM4v1jicJfy3RyMWHZ1RmCIB57s1ZCmh6xgkeUFNV9keh2yPQwxN4UzbpibJuA2DQjF4YaXB4SxiGCTc2PP4y/e36A88FrsNXmrUmYYplqryo8djHF0hzOq4msz6Qo2/+9IK//p//Q7ffzInFxJFKTAUWKhpnFqwuX/k8+6uh0xB29YxNRVZlEyFIM1yznZqDIKIlm2w6OqVl8s0IctzTE1ntWXQrmnkBdQ0mZmU0HBVzrQbBKlgzxcYlkBWBPE8xUvBIkMySkZSxkq7hmVVG+p+mmLIAk1VyPOCWS5AUoiSmLwsyQqdvUnMha7Db1xa5N2dGXuTEEdXyERJyzYYezGzIGexrrE3ifDiSkV1cdHh++M5WlzwKPWJM8FC3WBZCOqmRsPSeXTok+QlvYbNzf2KglwIcDQZxzAxVJWhl7A9iYmykr1ZSI7Mb1xa4GCWYGsym8OQF5ZddAWOvARDlbnQc5jNBDs+LDgmslwtzrqmRqemM/IT1tKKZ7cvVzeK/+1mH12WubDosDUKGAcJk0jlpdUesixzZdFERD7jyYT3H24Sp4KaY+Gjc2jJSKqGEBKmptCr6wRJgSELbFunW9M5mMVVNZ8VeHGOKkustywU+fkOur+MdsknJGVZlnn99dd5/fXXn+ljDYdDiqKg1+t95Pu9Xo+7d+8+s8f5whMMPBu2VxiGXL9+HUmSeOutt56qMoBnnmBO3gQff2MWRcGtW7cYjUafauaTFWVlCBVKrGUFZ7uVSmwaZViawsBPiLMCVZEoKVmoGSzU4HAeo0lVf92Pc/Jgxnfv3qPVW8ZtLLK5vcODccpcmfHCcuNYAgp+nGOpMgs1HVWV2VhwuLTs0nR07h/OuX+YEKYFf35/gCZJXFpuIBBszUp+/YKG0A2GfsI721P6s4i9/T6Phxkvn+1ydb1FWgrWW5VKbRpX/4Y7e3Pe2/dYPtDQZRlKaFkKk0QQpgJThv48Y2syQkVmvW0wCHLitGAaZqS5YBqlZAVcWlLZ6LiMg4T39jx0TcbQVEoEslIdAAxVYZBGqIrK1bU6p9s2k7hAkitb5TAtaBgazZrMbFTSXqzhKhlJkhNM5/SDkhCZv3vJ5cYQkrKkRGYWJiR5jq5KlKXgybgy7oqygp6rMfYzDr2EnaykZmlIQN9PoSzpzyV2JjGKDJ2sGtjvzaGnl4iiRJYUHFVFoeSH2x6uXlVKKQWPjjzirERTTfIyQztG/+xMIiRJ8KA/54EskWWCXt2gP0s533WYHS9oLtdNvvd4QttWmIYZt/YLunrx1E1TImbgVXLglYZJmpcosoSiyHzzYof//faQg0mIpWtc6NZoHdOaLy5adGt65cgZZGwsLtJZ6JLU5ljkeN6c7aMp890HRJJCo95gZHR48XSv4o4lBQ1T4ruPJ/z6hTZ/9WDEkR9TMzRMTWESpseQzOe3D/Jlq2Dg/xyofvgSJZjPU8EcHR1x48YNVlZWuHz58tM3y/Nov51cF/jIHCYMQ65du4aqqrz55puY5s+vdllpWvRnMbIiYaoSrqmS5CV1U2XgV4tntq5wOI9xTY3DeXUzqBlVlSNLJXcfbzEajHnh4lnOnuoRpjnfDwokAW3HoGGpvL8/IysEWVHy6xe7DPwUL8k5mEYs1HSCJKdharx+usV/ezBkrWWiSjKqKtgZxUwDMBTBd7bGLB1vqU+P9ugYJd/49XM4tkWQFFzs2WiKjK7KXOjZ1Eyd/3r7iJqusD9P+b+/s0fgwTfXLNywZE8SzDOQi5L+PEOVShRFolcz8LKM4SQkyUHTZDQF9qYxG22NUFNIsxxZUlhuadQ0lZGXcOvAozz+sJ5uCnbGKTf25hhK5Y9TSODoKrIiGExLRAEyAtepsdiqMDn9qYcuwZ/e9YjSEsuQudzVEKpEoslYmsrOOAJJYsnVmMcp/5/3D0GAachEWYljCeq2RivUOPJSlhs6QVbgxxleLDCUghQJRZaIkhJFKsgKg7efzAnTjCABQ4FCQFpQGW9R2Sff2PVZbhhMwgQ/ynEsFVOWObdUtfiOvAhdkVhyTRRJouXoDLyEMBPoqsLATymMEj8qubU/RVdkBmFGnAssRWZ7mjAOKiVjkuZIAmxdQ1EkNFXi5eU6/8NZlb15yumOg2uoPByEWLMES5OpmyqSpFHXDdbMan7ya12FncMx/d1txtsPmAqbKE44iFVeu9Di0MvQFMgKaFgqdVNhnsjP3J784/FlTTDPU0W2sLCAoigcHh5+5PuHh4csLS09s8f5whPMSYvssySBsix58OAB29vbvPjiiywvL/+1/+Z5kY8/vAtzgnxZWVnh0qVLn/rNOg6q4e1yTaWmy5Wa7Hi+058m6GrGctNEkWU6NR2QEEJg6QptS+HW+zfoDz2+8uIl2m6NrBBcWHR5aclhMiv5jcuLPB4GPBmF7E8iVtsWO+MQ11R5PAzIspJOzaAoS8ZhztVll4alstqq0TQV9mcJh1GIn8Af3xmSKzbT+Qgx3eflFYdXr14lFxKPBz6yJPFndwYsujr784SDSURelKRFRtvW+PrZNte3p6gyhEnBuQWHtBA4yRxPlXhhyWIa5qR5QSIEqiQjkBGU6ErlZeNFKd+6PaJhaVi6ysurBh3b4O4wxMtK0qw8/o2C9/d9wrSk5WrMgqy6YSPRq5vMw4IwgxgY+CkbCzXSPGdrFCHLCqUomZUSyy2TtMjphzlbY4FUFpxuKRRlNejvdlz684hpWKKpAiFKZnGOIgseHsos1Q0URcWPU15cqnF/EOKoCvteiCTAUGR0W+fmXsiBN6Xr6sfQ0BhNkVFUiQVHw9BlujWDJ+MImYpRt1TT0doWQz9j1dVpWirv71UCBUOV6dYrB8xJkHCqY+GnOQeThJapUBYFkwjO6hXdeuF4y35rEiGA3XFAnFaHKFOrwKLDMEdXJMK8xMordJAqQdvRefNsGz/JufZkSloIVpo6/VlCnJdcWarT7br0FrvVMubRjLs7h4RRn8yfMXjs0SsWONVocvlym7ZbVSyrjQo++jzjy9oiazSen7BB13Vef/11vv3tb/MP/sE/AKr76be//W1+93d/95k9zheeYOCzVTAnCq0sy36qj8zzYp2dJJiHDx+yubn5uYzSdFUmzasbQlmWzKKMohS0bLB0GU2VmUcZGx2b9baNn+ScajvMfZ//1/fewzItfvPrr+IYGkUJZSmYhBmyLHEUVjJfSa7Mxi4u19EVGVWtZKHL9crt8mAacXrBpgVVe0SRmEcJUx+WmyaFpfJoBKoEioh49/EBraaNJHcZBjmFKGnaGrvjiN1pyM7EZxpmKHKFvAlTwZVeDVuT+HuvLHPt1iMalkacC5JccH0sYRgxCzWbtCgoSon1psb3Hs+wNRnHkGlaGrOoGmjnhagIy3nO+3uCi72SaRAzj3JMVUKWVOqmzGEB86hk7mcsuAZhktM2VfKsYOCnCAGuDhISflwgKGlZKrMwZRoLTrd1CgSarLLvCzJREJcKs0ymIZcMkpK9Aw/HgVKDXFYphKiST1agSNVcLstT+rOE/VlCkGT4qkxNgYMStiYRX1lrUDMjolQQJhmFpiJJEKQldUUhyQtMVWIc5ry44lIKiZ1JiKUpXHRNnoxidkXCOMpp2gb7s5CtQcCtAx8ZiStLDstNi0u9GjcVn2GQMJonuDrU7ard9ZsXWnz30RhVkTnTtnh8FGDqEqoi03YqcUDNUCmFYOAlPB4GOJrCncMAVal2eLw4Y38W41rVgP79/TkXuy6vrNX53uMxNUPl5dU6lmVy/vQqIpzyyuUlZFXH9+YMt3d5MrzLYsPGqTdZ6XbYWO7Ac1w4/DJWMGEYfiaM1aeJ3/u93+N3fud3+OpXv8obb7zBH/zBHxAEwVNV2bOIL0WC+bQVzHg85r333qPdbvP666//1PnK80wwt2/fJk3Tz4WdAXB0BS/OkaQqaXVsjTivTo5dt4IpOkZ1w9mfxliazNFgwIO7d8iNBc5c3ODJKCIcx7x+qokoK8SGpiqokuBYQcDXzrY51bbx44x5nHN9Z4YArizX2ZtFdGoapzsOkyDj8TBkHldy1XwSsdFxONOUULKQ3cGMV873EGoNW1MYehGOoSFRUgjBV083uX3gocjQq9s8PJpjaTKyKrM1jrnTDyhyONXSCXKJnUmAioQuKzg6FKWKo8HeNKVuaXhRVgEsZwmaBL2Gze4oYJ4IigLCpGoZLtQMVtsGu6MICQlZFjiGzP4MdEBVJNY7Nq+t1nlv3+MoSKnrUFPAdkxGfsRJ03MalGQC5klJw1JArm60slKgFTA99rA3LYUgFwynoMmgkSCrCmkGGJDkOdvjyt9kHgsalkxeglaWBEJCQVAWJXFWGXlZmkCSoKZXVOL+PKYsISlKZAUsTeGV1SZrbZP/enfI/jTgyTAiTgtkymMYqsRyQ+fqap0kEzwa+kRZtenvWhq9hsE8TVGO/00PD4PKQiDJ0bWKHyfJEusdiyCuUC+nOhabg4ASiXmYkRYCBYm0EOxMQmqGSq9uslAzeGnVxdQUFlyDtZZFWpZMo6yS16sVJLNxjNQ51GC5YSHbDbSlBeKswBp62GXIeDLlnZt32LwvMGoNao0Wl9YXn7kny5cpwZzcy34Ri5b/8B/+QwaDAf/qX/0r+v0+r776Kn/8x3/81wb/nye+FAnm500CQgg2Nzd59OgRly5dYn19/WcqtJ5HgvE8jyyrsOFvvvnm55ZBj4KUmqHgZdW8aOCnT7eXSyEohHj69dBLePT4Mf39PV6+eoXSrDONKgbW7rTySTmzUKughV5GTZMQZbX8tjkKCNOcjmNwsefyp/eO0I+VOi+vNlmoaSy6JvcPPbK85PKSiyJD17VQKNk8FAwmcxZW1vELCb0sKYXMk1GIJEGYlRiKgqXLWLrM/iSn7QqurjRI86rltzsJqxtsCu/u+FxYdFmqmShJzNcutdib5eRlgqVrGJqElkDTqujDCqAqClGSYhkyoV/5uZdFZQomKwkAshDkCOJcomXovLiiMI8zZmHG0TymyKtKpG4pFEnBbgCnjJI4LYiKssLEFJWRGFTVYF2XkSWQJYmGIxPkBdMQ6rpAiGpukAoABfX46/1ZzsgL0RUQMtgahGlJkkCUQt0Q1GQwNYUHhx5NR8fWJPZmMdMwZ61pUFISF4LTrk1eVDLzb905ZL1lsdQ0eH+v4HDuV8P6VoN6KXg8CBCFxtEs4lTb5spSnZ1xwJ2+V+0Kbc/YGniYsmBRFTw8CojyahdntWngGArbo5CiEBiqip/k3O17ZEX1tyjznEmYcXXZZR4X2JrydAvfUGVOdxweDQMO5ylrTZtHw4C7fY+ea1BSiVNu76est20eTHK0ScIFR8I7Rsr8yplqJ2Rv2kVqhbS1giTw6B8dMdl7TIROu93m/GqXVqv1udtbRVH8RPfaX2T8ohMMwO/+7u8+05bYx+MLTzA/r0w5yzLef/995vM5b7zxxs/dn3yW3i3wgfOlpmmcO3fumezYLNQMxkFKx1bIi5IyLzHykmmYsTkMsDSF1abFwTTg3t3bjGc+vY3L1FsLmLrMRqcaKquyTCmqnRrHUHFNjYNB5czYnyc8GHjsTXS+cqpB09Y41bSYBim2rnGhZ6PJlXXyYt3kynKdsws2PdfgaBpy6849nswFZ5Y7KKoOecZ60+IoSIgKwWgWoaoSdUujKBX604r63HMNgijH1GWmQcpS3aQsYTSsUP5ZCae7JqOxxN3DkJwKG7JYU9mdJhRFSVHCLBYsuQqyJJMUJQs1i7gISP3KfSAVMPAEYy/GVEHXQJNLYqFgqwoNy8BPQrISDqY+fgZJDlkOBfBwUM0dbA38FBLAgGqxUZUYBBmLdZNpkDEvCsKk+vBYhoyflKQAJchURmuGCnEhkwFBRQHCTApiFHLAkCAvwRBQFgXTCEZhQsMCQ5VIc8E8zum5OmFWDblLJFxDYbVhcX8QHHulCHoNi7ZVGc1lZUnX1RlHGYMgpT9PubxUp+3o+HHGvUOf/iwiLyVWmiqTGdiWzKvdOq+uN3k0CLi+M2O9ZaIoEqaqcKFr81cPxwRpzjhMkSWJuqni6BqKorBcN2hYH3wOZFliHmVossQLy3WipGASZ6hyRUSoQK0KCIEpC2pG5eszDj44WAHHi8MyhaywuLzC+vo6DUPi8f6QyXTC/fv3SZKEZrNJu92m0+ngOM6nRkF9mSqYk+fxSxXZM4yfVWXM53OuXbtGrVb71Fv5z4rWfIJ82d/f59VXX+XBgwfP1NWy7eg8UVUkBOe61cklzgrqlkaSFTw+GHP39k2Gmcb62Sv4cZU4lhuVMVflmFh/ej0hxPGWfcH9Q5+WpdN1qhtB1zV4MqraGm2nco7UZJn9WYKpSNzam5FmJXlR8r17+9x4sM3ZXp2znYhuwyDTFC4tu1Vbp1ARpWCsVEPxlYYFUiU/PbdoV2ibWUSzZtCtm5RlwSTMWHXhhZ7FUZQyjQokIeElOaWQGAYpSV7hRrZGEXFe0qupTOMcRSqwDI26pdBKdLI8ZRpDCRgyJCUUOWga7M8FVhiRlZAd3+RrBswy8OMqMRlSRX1ORJVsvKK6BoBlQJ4XHIZgKTDyY1QN1AJ8CTIBE68kPP6bK4BjQJ7DLD95HarnVgA5CjqgAXEpSFIJgxI7r3Aq+rE19pmWw74XYWsqrl751Tdsme1xgiQgq1u4RjWXu7JUIy8ESy2TlYbBn94eYGoVl24eVRXBkR9jqApRXnCn73GpV6dhKgwnU9qmjNup8dJqg81RyHt7M1qOQc3UsDSZkZ8yj3M6NYNFUVGMZ3HO1zZavLhSJ85KvDhjZxKxVDfQFPnYR6cCs07DlJWWSTysZowdW6Fb/8Duu18DU1MxVJkXV9yPJIfVpnlsWwF+UtC0NeICLp1ehtOVoCcMQ8bjMaPRiK2tLRRFeZps2u32z3UA/DIlmF/KlJ9DKIpCHMd/7ftCCHZ3d7l79y5nz57l7Nmzn/p08iwqmDiOee+998jznDfffBPbtnn8+PEzSTCbQx/X1FioGUiS9PSacVbtf5zvOrz/aJcf3bnHqxfXebV3ioNZTKsmkRclmiLxYByx0rLw40qCfGlJI85K2rXKcbKmK9iGwqvtFpMwY+gleFGOpcmc7Tl8/9GIMCv5yqkG9/oRflLw6nqTW5t7vHN3H73u8pUr59h9eJedeUZvQeJyz+VgFtOfxUyDjEKUbLRs/LTyS7F0mf1pRNMyWGmYBFnJLErZmyW0bBUUOJznaLqKXO0u0qvrTOKSZAKJWjKNM/wkYxaX6K7O+YUaD0chIy9mGqSEaUnb0ZDImMdQN+EohByYx1UCSPMqkQCYKuQCggSO8w2lgDivkkNJlXBOqpCygMOk+v9pAVlc/WyprmDEBRlVpfPhcE2FwfzYYOv4mhJgy3AsyMJWQc4lZMCSJcoSRFlQSAoNNUdTSqK0oiU3TBlTlQkyma5rYhvgRSlXenWmUcrtA495lPOSqNN1DNYaOqOo5EqvsrMWCOJMULcqfNBy3aRT02lYCkapsRmp/Or5Nqamcm1nSpzlKJJO30sQx1iaIC3o1qr36LWdGWWZYWsyT0YBQVKQ5OKYYSax6JqoskTH1vn2/SEDL+HykosXpzwZB/zWlR61D5GXy7IkKkoeDUNWGxXYcmcSoSkSS/Vq0bMoBXVL5V7fQ5Jl6oZCw9JZqOnYto1t26ytrVWWz8eI/CdPnnDr1i1c132abOr1+icmkufBQfws8WG75BNc/3/v8YUnmJ8kUz5ZWhwOh7z22mt0Op3PdP3PO4M5Qb50Oh2uXr369I34LBLXLMqIM0FeZCzUjI8wzrw4x48z7jx4zPRoj2+8fpXVY5Vax9GZRhmLrkGQ5AgJ+vOIcwsOWVF9gCxd4ULX4ZoJpq5QM1QMRWIWJdw/SMiF4PKyyzzK8dKczUGIocpsLNgs1XVG+9tMDo948dI6L55e5FTH5gfv5bw3DDgrTBYbHmVZ0qnpnFt0kKmGt4ZWnbhPtSz6s4ixn7DgmsfKo5RxkDL0UowMAjlCyCp1W8VWYBzmqLLMqa6JVApkSUKXFFRK9mYp4zAlKaDMQYgSAcR5wUrdpChiBmGVKDKq5FICHz4C6AokGSgSID5IAFBVGCqQF9XuSV7A/ENd2/xDFxr7Bb744PdOQgKGs4KTo9LJ4zsK1DTwMgiLqjVnydDQIS8lLFNGiqsk5sUgDeYMZhIp0NFLznWbGKpC29F4Mo4xNYV5krE1jhgFVVVTCri1P2OWlLy87FIA0zilLAVXV1weHAU4uoJjKNzYndFwNC65Em1TcHPP44VlhzMdC1mGhqXjGgq2oeLHBfMoZRIV2IbKgq0Spxq5gHlYsD+L6NUN8lIw9DNato6myOzNYlyjYqst1028JMPRK/HK/UOf5eNkMokF00GCqpeVW6oQ6KpM29awj83K4qxC67RtjcfDiCCu9tsWah/tZMiy/BR/D5XS9ASRf8IlPEHkdzqdp7tqz8IP5lnEhysY3/d/mWCeVXw8CQRB8HRp8a233vpUS4sfj8/aIhNC8OTJEx48ePCJyJdnYZtcN1UGygcfFEVRmEc54yClZSncu32PycRj+fxVtiMD3UvougbzOEORJDaHIbau8Mpag4NZxP40oVPTeHjkocoypoBRUKCOQmqmSkfTaJgaEzVlxbU406kRJHl1klZl/tuDIRQNyuk+P9yPOb26hmFZxFnODx6PeTQuKYqcNM8xVbmaWwjBq+stFAnCNOfP7gwYeBHnFl3OdG3SvGQWZqw0LX60OWQWZ8hIxDl0jnd9JkFGUoKtypi6iikkZAR+WrDcNnmt0eB+32NrkiAESHKl2JJkmAclqpSRl9XN/uSV/qRXZnxcblh8NLmcRE5V7Yjigwrnk8L/hIsrx7//SZPEsKgSlixVarYcKEuISlBKmPolSNAw4KXTnYo7lnuEKcwiwd2tIaebCrOZQce1yGT47uMJNRVWGzaKVKkGo1RmwVEJ0oyua/D2Y5+6IfPqap3THYu7Bz47o5C1lsXeJOZOFDP2CgajI97d0fnbLyzSNDWO/IQk01DDjNOdCgvjmhqbg5DFuoalK/RnMfuzhI6j0a3p+EnB7YM5uiKhKhIHswhJkvitq4s0bI0rPRfHULl14DHyU2pmtSQ8jUusvMAxDE61TKZRTsvWWK5/MHQ3NYUkL7k/SCih2n/SfnbFYRgGy8vLLC8vP0Xkj0Yj+v0+9+/fx7IsOp0OaZr+zGv9IuKXLbLnFB8e8vf7fW7evMna2hoXL1783CeLz1Jp5HnOrVu3GI/HPxH58vMSlX9aCFFVKhLQtHVkWSZKCnaHU+7duUPNMvi1N99AVjRu7k15Mg6Pt/tT8kLQqekIqHxYSpBleDgIyIuC9bZDmOScrku8ealL3dJZqhvoqsJSw6Rhqsyi6vl3HIMoKbi+M+GPfjxko6lRWm2GYYlrFvzpnQFNWyOHSo4sS7yzPWHkxdQMlR9ujZlHOcMgYR5nbI9DbF3ljY02P9qe0LEUkqxgpWEyj3IkCdpmxmJDp++V3D7wCSO4ZJZcWHYQRUXRzYuShqlxuediaQqaMuNgGldb7abG/iwjBgq/QFDdvD+cZH5SRD/lZz/P7/+k3/t4aFTJRD3+uSZVlYY4/jpIwZSgXpPwY0HL0Tn0E1Rk1toOm+OYOCvQbItSkziYJRyMEo7S6jqNts56u2pJZbmg76XMY4mWI/GDzSl1U2UaJtzse7yy2uDiosNRkPCV9To1Q+HPb02gLLAdhbws+d7miKZVLVve7we8eabJ7b7HmbZFlBU0bI1bBz62rvDn9wZIksRr600WagalSFiqmzwYBNQNleW6ySBIGfjpsWAhY71ViT6W62bV2pQkHEVgGQoLTrU0a2lVlTUJM9qOTnjslVSWgpapYblyNTtTP9194cOI/DNnzpDnOZPJhNFoRBRF3L17l36//7Sd9lnEAp83ftkiew7xYVfLO3fusLe3x4svvvjMcAWfdonzpHrSNI233nrrJ8oXn4X8OS8Fhlpxs/KiZJoIjDLinXdvUGt16J05jaSodGo65xdd0rxkcxQiUSnPLF0mTAoejLynQ9NFV2fgJ7QdnVEikRWCrmvSdnTyoiRKK4DkNMrZGvnEeYEiS5xtSNyVAs5vuMhOl3IW0q1pyIrMC70a9ZrOdKAi6yo91+LxkYef5ryyanD3wMOLclYaOl8706Jd07BUmdsH1ZLkn98bcnaxxqJr0PcTvLCgBEajKf0ZUFRtq0GQsD+N2J0lZFlO3dLJ8qo/n+QFQVoS5tXA3rFKJAlUAU2rqgjyEiZfjsMo8EEVVFBVOIKqahLHXytAIEBJBBIwTXJKSUaRZXYmlXeKpQOSRKkYNBsqO+OYOC8wdQjClFuP+nx1VWWYGOioFEKhYam8tFzDiwse5CVH85hR0yBMBd+8sMByw+THT+aUZUndUHjlVJO9WYQfZlAKJFnirXNN0kJi6CckecGLy3UsTaGmKUyilLZj4hoyr6432R5HgKDtaEyjlElUzQ5bNZ2iKHk49HlwGPCV9SavrNWJsgJJqmgUjiZoHe967U6qOUyQFJWYIKq4bk1Lo+FozJMcLym4sFj73N4wqqrS7XbpdruMx2M2NjYoioLxeMzjx4/RNO1pK63Vaj1zIvsnxUmCiaKIsix/mWCeVZRlSRAEALz55pvPVP+tKApJ8vFR7CfHCdNsdXX1ZyJfnsUMRldlXliplF+H85g0nHMwnvHqC5fQ3BZrTQs/ySlKwWqrWi778ZMJmgx+kiNL6jHRt6Q/TWg6Ok2jOvWNvIQwq4bcO+PKsvfRoCLgHnkJZxcchBC4lsbtR7sMB2Ounl/hVG+BIz/lby73aFka29MYXZHRFIkwK+k5ctWSSXM6ts5qu8ZlQ+H+UUCa5ZzuOJzpOPxwa1yhXQrBSqvyNElKmV7NQBUx3qzklCszK3WiIqXMcpZlmbs7U2YZrLg6hiyRl5Waba1h8HigEB1LiNNpVbVoUpVcTnWsyjMl/eT22C8yTpLHSa47HvngWtWMRSlh0YZZCkUGRQlhDnVLIslLsrxqBZ5u6jQci7EX4sc5uqpStzSQJBRA1itDsduzgiROyMuEry8F1JKco0ynlHQurbiUueD+IMQ1VK7tzjn0EkpRcqph4mo5y02TeZqTZAVJITjVsOjWDKDaW3IMFYmqpXt1xUU/VqgVRc4kTLl/5CNEpfo78lIWji2OZ1HG9jgGURIlGdd2p7RtFY4rubWGgaBSiwlJoRRgH9sx5KXgB5sTLF2hYarHhAYF9TnMSoQQ2LZNs9lkfX2doiiYzWaMRiM2Nzc/USzwrKubE/sPRVGYzWYAv0wwzyLCMOTWrVsAfP3rX3/mao6fp9IQQvDw4UO2trZ+ItPsk677rGTKeZ6z9/A205nPUreD7DRpmBrVrQn2pxGGprDoGmy0baIsx9ZVdiYxLyy7yJKEJElsjyIiN0dVZMKsZK1lcN+AhZrO/jTi0IuZBBkXejXuHnk4psLhzhOMZM4Ll86w2m2w3rRpOxmmJnFjd06S5mxPYuqmgqZIxFmOrim8tN5EVyv4ZJKXNC0VvaazNw3JcsGhl3LkCxqWxsaCgy7JFGXB44MpT45C2rpMqNTQdAnFAGJ4EoMqQ5rB7iSiyFJqtsIsEORlganJrDVlplFJCcwTiASUMTw4iijKqk321/WIv9go+KBKOfkaoB9Ur6ipQP4htVqWVxLruqmy0jR4eFTgmtV7LC0K9v0MK65ajBIyS3WTpiUT5wIZid1ZgW2YvLbWYLWl8ng4Y384Yh7lWKbKC0t1XFkjTmVkWeK7j8ZoioSuVTy75brJwEtoGCqHs+owtt6yeXtzwv/15UVu7fmMwoxXTzW5c+BDkhNnBZMwpygTNFXi0VHA6bbJoqNzME9IjwnhNUOuZMi6gq3KTxFGeSmQKTEU6LkmmqbRnyf0ZzF1S8PRZS72nKdOr1GWf8Sw7FnGx1VkJ1LnE7FAHMdPxQI7OzsAT3/e6XSeyZLmyT1KURR830dRlM81e/6yxBeeYGzb5tKlS9y9e/e5SAV/ViJI05QbN24QhuGnQr7IsvxMhoNhGPLuu++i6zovnD/N9nDOuq1j6wp+krPSsBiHKf1ZzNiP6XsJbVtHVWQu9xxUGRq2xilh8X44J85KOjWVJKt68qYqWKjp3OnPub0343THwdJkvCBmb2uTl3o6v/2NX2MQlkyChJajUwjB//PaPvcOZpxecIiLnIN+xKIi03Uq0vNX1hrkpeD/8c4efprz6loTU1exdZlxENNzNZqOzpNRwMBLsXWZJSPDyAIuLDvsjUNubPskEqy4Kr5c4fBzJJqOwFJVdBWipODGOECRAnStWqA83dTZnaY0dKoEV1Sb8UL6oGr4ouOT3nE6VeKxVVAUmZZVIo6RMo4G57oOjq5wV8TIFDimTp7ldCyVtIQwL4mSglOtGud6Nf7y3hAhCtqWipAkwqxgcwwFDmMZZLvEtGQGfsSj0ZwVC+pujSgET6hsj0JMRabRnhJmgm9e6HB9d8aia3LnwOPxwOf9vTl/4+ICZzo2rqEiKPmT20e4hsJCzaDnGmyOQxRJRpVlLvZqSBIs1g3yQnAwr/yMGqZG29FYaRjYhsY4SFGP/0qyLDMOUp4cCxBMVUYgsdH5IKEU5fMjKv8sFZlpmqysrLCysoIQgvl8zng8Zn9/n3v37mHb9tNk02g0PtN97MMJJgxDbNv+UijbPm984QlGkiQWFhYoiuKnOkR+1vhpM5iTBU7XdT818uVZVDDb+31+dP0mZ9eXefHKZX505zGzKMM8Xi4rywoTIyGxP6tAjg1bQ1clLE1mcxRSlII0L/GSqtURJAX9aUyBxHjuk8Qlj0cBWV4c9/8F4+mMh/fus7jQoHfuEu/s+li6wu44QFNlru9M0WRYadlc7LnMo4y6HnNw5DE5jPn6FZm3H0/x0xTHUOm6leQ0Tgt2/OSpfNlPSyxNYexnFJnHZB6juk1aNZOzi3X+7E4fKwMtiZEVFUUGIQvyAkoUUBRkTcKVc/woJ8hhEkM4jUhRqANuXSZKSxLAVUDOv/gK5iQkqirlpIKRqbBwXgKlKDnbVunqOVN0Dr2U/WmMnxZkeUHNlJiFKUgSsyhH1WV6NZ1aV8NQqiG4n+bkpcDSJBYslfWWzcBP2BoFOLpMwzQpEWSqxZk1iY2myqO5j1nM2R3nzEOVcVnwVw+OeHGlyY39OWcXHOKixE8zdqcxp5oG+9OYtabJ1ihEEhJrTZMgKzi/4DANMzZadqVSrBmYmsI3LixUrqSGgiRLHHkJb2y00FQF19LozyLmcUHP+cBWYxrGuKZK3VSZRBnDQVAJAhrVKf55mY4JIT7VoqUkSTQaDRqNBmfOnCHLsqdigTt37pBl2VMpdLvdxrbtn+uedpLkJEn6P41EGb4ECQZ4yt951sZg8JMTwYmt8hexwHnCVLt57xFnz1/g/Kk1ZnGOQOLQLziYxyw1LE4dmyx5x6ZdEoKzCzan2zbffTxifxKx1jQpJZmHRz5LdZOVlkXTspAl+KvJnN1A8EpWsj1NWG2apMGMH97d5ez6CkvLPb6/OcE1VF5abdByKrlpnJWc67r8L68sMw4Svv94RMsx8KYTNEVGlhRatiDOck71HGq6wjhMOZhHHEwTHFOlZsh0LJ0wgnXNp6EVNHtn+N7mlDQvkSSFrq2gZAVGrc6ynnEwz0jC44VEUW3tp8d/4rSAQoJSqjbiZSqF1v68IDtuJZZFtUzJMf7lp0mNfxFxohaDD5Rk5fH+jarAOBAsGZWSMM3hwaAa7Kc5KLKMoRYUpYypSSy4Fr26SdNR2RrE6IrKpSWXwTzBizMUVcY1FK5tR+xMIhZcnVfWG0SZIE1zvLRg28uJM52zq6c5sw5/cfMJXgylHxIPQvZ8kxtbOhuLTZqOxtc2mriGSsPRsXSF/VlM01LpNUz8uGCpYVIgKAt480yLmwc+XpzTdjSOvIQ7BwkvrtR5ZbXBg0GAo5dYWrU4en8eUKTVDVuSJCxDwTHUqu0qV+TsSgWXEaY5K80PAJfTMCPOS5bqn781deI181m7J5qmsbi4yOLi4lP112g0YjQa8ejRIzRNezq7abfbP/H+9ov0gvlFxv9fJJgPJ4KyLLl79y4HBwe8+uqrdLvdz3zdz1LB5HnOzZs3mU6n/PpbHzDVXFRGNZ1XFxXWWpVh10mst226roEf50yP22WrjWqRMclL1tomjtZgfxrixRlJVvDyaoMXVxpsPoTluo4E/Nm79wmmc164vMFvfeUMt/Y9bF1mdxqhKtUswDIKVEnC1CS+82BAy9a51KujKxK7uyrTqGQaxsyinFNtiyAtCOIUJJm1lkO3pvNoFKMpKlmec7C3z8aCya999UVuHni8ebbNIEh5tN1nQSsY6zXcmsXVdZPBPOTHO3PSNIMSJr6gLHNsUyUTIItqE7/keL6hQkOW8I4H/4EAKS8QPPtW6+eNk0XOgqqyCVKwlII9D2y7WurRVQAJXRJM4pwiF2gqdOsWpzsWe9OEW/tzGpaGriusNkwcTeLGTsbhLObevsc0Lji1YNG2DGQkGpZMP81RJQmQONdxyIXg4ThG1lSutlXOry8z9SNGM4/Ym/Pd/oRfXVeo1xo0/w/2/jTGsjy/6wY/Z1/vvsQekREZuVTWXtVbFe62Gxt3P9h6nkEjjzQMYAswkmUhXtjClmwsjGWQkQVCSGwSYF4wzDwasTyABW7stt12b9VdmVVZuUdmxr7d/Z59nxcnIrqqurs6qyrLTpB/UkkVGTfvvZFx7vn+f9vnq9bQZZGhWxrcKaJAy1DZHkzYGoZcmrHYG4cMvARRAEUU6FY03CjjYd/nznGJ8t84drA0hTQrGHoxlioxCWMGkciRE7HZ95mtasxUNSq6fEZ6TvMMPylp0/rJ7kuS5cTp4+ELnt4bHkc5ShAELMvCsiyWl5fJsuyMLPDgwQNu3LhBtVo9K6dVKt9C43wngfmjHpP+KOKJEJiPynkS3lkiC8OQa9eukef5GfLlg8YHyWDe7Xr57uZgVVc4SHNu7E9pmiqaIhJnOVfmqiiSgBunZEVBkGYsNUwq+gx744CariCLAl6sMXRjLs3YBElG30uQgb2hw/2NBziex8vPXmC2WQEE5msau+OA5brOyE+5Mlflxt6YubpBt6rTd2J6TogkiYy9hJpWuguOg5RjJ8INEw4nIZ2qzvNLNZKsIC9kmrZCFAYM+oc4hcy1sUL/67vUDBlLlRgf7mDJAnZzHjvNUCWBB32f4clIqisU+GlBTQE/FcnyslcRU2YFp4VMIQNNF6lZAtujjBSQkN42DpxT5gt//KHzrb6MBLQqCmmckBUgn9Cu67qKpYncOfKoGyKjIEGVwVRybh84qJKIF+eYWs5aU2MSF0QpqJLAwEm4cejy4nKVohAJ05TXdyast0wW6gYFAj0noGmXnLD9SUSYFiQ5NCwFLyn45MUalqHysDdh93hCdBySbk8YBQWaKVOvmDy10KJi6FDkDL2IPDewNAUnSinyglwQuHfs0a1ovHq+yc4wQJFELs5UON82OXYi0jzHiXIWLIm+IDDxExbr32poF0VBQUGWl0MioyCh78YsnkxSdiqPj3x8ekj8KPodkiTRarVotVpcuHCBMAwZDAZnwwKCILxjmOBPMpiPKB6VqPxB4jTTGA6HXLt2jU6nw5UrVz70QMH7zWD6/T5vvPHGe7peTsKMvWnK0kwBAkzDhDDOOJyUXYW6oYChUlDuz3QrKl6cljiNNKc3DZmtaVQMBTfKkCWRYx/+v793HU3TMJsLXJhrMAli/vMb+2f+6weTkB+63GJ/GmJqEiICszWDrq0xCiK++mBMRVdomgqyDGNRRPHLEeJMKIcMhl7C3sjHi1MaSkrgj7l4bgHFhde3xgzcgCiVYDomEGVW52d5et7mtYdDem7EwSRCRDghLAukaWlTrOTlCrxliQRxVhKLM/CAosgQcoiicmERqSyTRcUpf+zd/8Z/PIJjUbLW4qz8wNVtkMmoGgLDaUEugCWX/La9cYgTwCTIMVRomKVlskLBXF3DDlMudExmqiaDwymiKFAxZHRNIs3gQc9jpqoTZjkDN2alZSIKAqYmMXQlqrrMx1ca7E9ChEDG0OTS3lkVKASBui5Tt0w2xIBUlZnvdujEEWIacjz2uL8xRtdlItGk1ZbZHnrsjkKO3XLKrGVKeFHKw4HPfE0rsUZ+wkJNx1BllpoSmiJDUeB7LjOWyIWuxfQE1b9x7NLzktKc7mTXJcsKRKksjQlCucl/NC17PJb24W5heZ6fOdR+1KHrOgsLCywsLJDn+dmwwN7eHtPplDRN+Rt/428APHbPm3fHr/7qr/Jf/+t/5dq1a6iqyng8/rbHbG9v81M/9VN88YtfxLZtfvzHf5y/9/f+3vuqMj0RAgMfrTFYkiR885vffGQPmUd93kf1sNnc3GRjY4MrV658R5e6oih9Nvp+ikhGx9ap6jJ+LOBGKVGaUdGVEztch6ohUdFkRn7pSbM7jrg8a3M0CXgw8DlwYmxVoinFzFlgN6qsry7zoOeQ5Bn3Bz439xziLOPKTIWYgj/YGJTumaKEl2bESYYowMBLOd82Weva3NsY8fsPp+g1g0+ea6EqIjM1nZv7DgMnYqaqc3v7kP0o4s9+bA0kjXw65eMrDUaOy72dEbMtk7WZBk6U8t9uHlNRJQ7GCU1TpSgERkGMSEbDkKmZKtMwZb6iMwgStoYehQB1UyRzcmRZwg1L+nFAjpiWW97f/bf79pvI6frjRx8eoGXfWrIcuZCoOaO8JC8rOThpTlrEuHFBzYKsELBViecWG0yChP2Rx5ETkxflCHjTjrh/7JHlOYaqMGfJ3Np3CFJYrAu4UUGOwM7Q51zLYOLHpEXGRs/naBoji9DQRRp2OZH48NBl4JTXU5oXOEFassdsjQszLYqizCj6ToSc+kwmY37/+hZ+WCCoEq26zeaRgD7foGWVB5yJH5cb+bbCyE/YHgUcOxEvLNWQBBFBFfBSgaGX4MUZCOWxwAlK7tzQj7E1+aTklrI/CWhZKrYm48flgrD1IZOZPy4OmSiK1Ot16vU6a2tr7OzscOPGDY6Pj/niF79IFEX86I/+KJ///Of53Oc+x/r6+mMtmcVxzI/92I/xyiuv8C//5b/8tu9nWcaP/MiPMDs7y5e//GUODg74S3/pL6EoCn/37/7dR36dJ0ZgPooMJk1T7t27R1EU3xX58kHjUTKYLMt46623GI1G7+lhc7oJ3bA0JqrA5VkbQRA4mpZ+5lGSM1OVOJxGqIrAg55PXsBa2+LmQVx6vosCDUslP/bYn/qE3pRqMuJSA17+5EU0XWehbpTssvka1RMcx9YgIMlz6vPlB7fvRSxZBqIgkBYlin25US7e3cxhGudIac5MXcePSkvg1ZaBLQuEgx1acsRArXF/mLHSyjlyIuQ0IHY9Li03sC2LnaGPKgl0bZVRkGEoAggCLyxX+a9vHlIgIMsltr+iS6iqyGRQDiBXDBlbFelWZLwo5diJETJoSCJezFnzP/+e2crbxSXjW1spH02klFlWcJJdFULJJkuASZBhaQICEooA3YpBVuRkGQz9iJ1RgBtmVHMRUSzwwoy7x1OqJ9vuNUNiaxBQN2X2xjFv7U9YqJtIQNdUGTgxtw9dRkGCJBRcnq2x0NCRRDj2UtaWFFqWykxV58hNuHM4YbVlkwKLdYPwxA1zfxzixBmzlQpSzeC5Wo6YJfRHU+wi4N7mJtu7u1yeq7PYbTJMRNq2Tt0oe4AHTsrOKKBy4n6ZBAlRVvDm3gRdlbnQsVhulCP6RVGw78REac5TsxUmYYKhln8PYLX9wcvbb48nBdUPMD8/z7/7d/+OX/3VX+XGjRt8//d/P//xP/5HfuEXfoGDg4MPVdJ/d/zyL/8yAL/xG7/xHb//W7/1W9y8eZP/8T/+BzMzM7zwwgv8yq/8Cj/3cz/H3/7bf/uRLVOeCIE5xcU8zgzm7cBMgGq1+j3+xvuL75XBfK9+y9ujaSrsTUIMRcKPM4Ikx1QluhUVEZiECTvDAC9OyfOc5xdrJHk50v30CQmg55TLbRe7JnfuHzAIXVYurLP78C4jLybyctwoRUCgXVH5356Z5/bBlDAp6Hsxl2dsEASCOKNd1dkaeVzfn6CJIl6YYqoKUQaXmxKX1jtc6lb4vXs9jpwAXcz5H1fvkxYg6FWGToRYOCR5zng0wpZyvv+FVQpR4WDkk+YFK22bj600+O3bR/QFkbatsnHgIlBwaabC0I0I45gkhVv7UwZ+SpZDlKTEukjNyNHkEosyCVP8uNwlmSank1vvJ1t59/cef3aTUZbuoMxkbFWkpgmM3QzDlHFO7IojL+fAiehaCnFWcDQOSbKCxYZJVRMZBikLTYM4K2goEp+71OHNwylJXjB0I+qWjCGJfGK1RUUXuXXoEKQ53apW0hjiDCeMeNDLCN0URRHZn8SstQ10pfT0Odc2masaSILAvZ7HYkNnvqbjqCJZkbM9DHDjFEMSWWoaLM8bnO/adPoOd3YHyCQcb9+nFxSYMzUKqY0jWIy9BFUWOHYjlho6PT9FkUQapoyuyDzseyRZTpoXKJLIXEU7K5PVdBk//nBrAd8pnhSBeXuT3/d9FhcX+dmf/Vl+9md/ljiO35cH1uOIr3zlKzz77LPvsE/+3Oc+x0/91E9x48YNXnzxxUd6nidCYODxZjCnyJfFxUXOnz/Pb//2b7/jF/g44r0ymMFgwLVr15ibm+Py5cvveQG7UUqQ5qy1LR4eBPT9gtsHU+I0p2lpXJy1MTWJg3HA1x8O+cS5Bu2KRpzmjPyYqq6Q5TlxmjOY+HzjrTskhcD5c+cZxCJHvogoCDR0FVk8IRfHGa9tjnCihKfmKtw+nBKmOZYm0zDLJbi9YUgQZry2P2appTMKUqp5jiQImJrMsRNRVWUsIn7rmw8IC4VE1EmCGEEUmQQxx7dHiCI8c2mer2w7+FHOxI+pmSpxFPPfbxxiqRItWybJ8pN+gkKUpPT8hCDKWGyYxGlKRROxNak0HRMLdicpEimdqkKalX0KN/mW98tplJiWd//e37uQ9lGUzk4nyMSTZx8FORP/pGdESo5AbxqSFKCRMz3ZgldkETHN0WRYbBhEWUCa5Sw1DK5uj9nsezQrGrIIl2ardCsKtqbSc2PGccGMrTMISiO5+bqBrUvc2HeYMyQalkwmKdiahCpLPOiVe1AVTeKrD0astgx0VcKPyz5Fp6pTywrqRsL1/QlVQ2UaxizUDSjg2M2ZaTb4vostgiQnjkK86Zh724e8ue8wSiQMw6Bzro0fW1RUAUcuTe9K2+kCQ5FQZRFZFOh7Ef0TuNw4KMtoM49hNPnt8bjvC4/jfbiu+w57kj9qcYESOvx2cQHOvj48PHzk53liBOZxZDDfCflyOuf+uPs73ymDeTvi/6mnnmJxcfER3nO5UDn0IkRJBAriNOOt/SmLTZOLszaWVvqim6rIwSTkUpyycewxDWKWmhZbQ48sDjnavEPVtjm3ssJa54RIcCSwWNfwcokHfZe2rdB3Yo69CFuVqZsqzy7U0BWJK3NV/Dhjc+AxjRIuzZTTZn03ZK6m4Y1cZqsyeV4w8iPGkyH3NndZW+7ymU6TIE747TtD1loKdx72yAS4tNIlywXCOGPspuiaiCoK9L2Eg2mIospESZm1SQXM1gzatkrfi3HCAifOsAyVqimwUNc4nkTcOnRJEpAUyNMCSxNPTqLgvuuMUlBOcL1z+fJUXE4dW97Px+CDZTfpyavWtVIMg7icihMAOYeKIRHFKXVVIC5E/Cgly0RkS6BqyGiSxDRKGfsRh065dBul5eJmnGTlBF8eUxQ5fTEhSgpmahqyLGLKCmmesdg0uXfss9ax+NhynW/cHJEVOXNVlUIo6QJBkuEGJZfM0krhd8KUQyfi6RmbnhfjRClPz1aoGCpVXUYQBDb6HmGa8sxyDTfO8eIMSVCI9SbaTIXzVkQY+OSRRzHa5frhFqKqkacpU89nplFhpWXixyl745iGKVPVFYpCKA8/aik8jzuelAzm7bgaz/NYWVl538/x8z//8/zar/3aez7m1q1bXL58+QO9xw8ST4TAvJ2o/EHjuyFfPoryG3x7BnPabxkOh3z84x+nXq8/0vNUdLl08Rv6SKKELeV4cc73X+oyezKO+eX7gxJ4WTc51zK5uj1BUwWcKCMvCoRwyv7DB7zy7Dq1zjxZXmDpCgKwUBEZuBEHfkyY5Nw5cnlmocZS08RPUjoVDT8ujb7e2pswDcvMIYwzsjznfNembavYukKhSexOc+pZxv3NHdzRiNVzy2iGxXLDYOAnNLQBOzs9Fjo2c91m2SzWZV5cqbMzDNk4dNFsgZGfEpyIQ5inuH6MJksoKnhxUjZzVZkDJyKIc2xdxgtScjIUSUQScooCTF3ioJeSnHirKLxzwVIBDKXkm+WUuBb1xFo5QURExBLKHZrTrfv3hpK8XVy+Vyb0zigoheXSnM7GcUh8crlLIojkyJJYWhVrIlmWY6oyR07Csx2Llq0ShBGqLBJn2Qmby6Rja2yPfApKx1BVFuhYEi+t1hkFCVWj3CkZ+wVHk5D7xw6dio4oikyjBL8Q2Z9GLNZLRIsuCURpwY8+P0tVlfjG7oQ8Sfl4tcbuJCqBmGnO8ws1kiznqw/HiIJA3ZT50xfbDL2Y67sTxmHKUl1HEgVGQUpciDy/OkPV1KAo2D4ecW9zD4OEN65dZ76u0my2iBUb1bSo6CXYUqQgTsvrs2F+6yTfcyJEUaBlfbjT/ZMiMGmanpXRT1Ex7zd+5md+hp/4iZ94z8esra090nPNzs7y9a9//R1/dnR0dPa9R40nQmDggxuDwfdGvnwUAiOK4hlmIooirl69iiiK74n4f6+YqeqkiYAkFpxrG8xUSl90AC9KMBSZ5xbr9NyI1ZbBMEj54St1NjY2CI+2eeHZp6l0WuiqTFEUBHHK0I858gvacYqpGWwPPda7Ngs1A1EUuX0wLbOVMCXLctoVDVWSuHo4omapZAV0Kyp9J2LoRpDnVJSCN27do+fFtDpd+sOU1VZMmCrs7h8SjscszjaYbdXxE0jygiDKSFKRIE6xdZkwBVuXGAWwM/KRRXh63ibNYODEiAhIYtl7csKkRIzoImmaoykKLVNjfxox8hJGXnYmDG9HspxKf07pJClTZgy2Cklc4ncsqTQDywowBdDUctl0enaplNmKBsgnIqRQPlcE5N8mLu/Mbk6gAu+IqID9SYICaCf/CZzsfhQCIz/G1nQWmya3Dx3iJOdgGtGwFKqmwWy1YKlpcOfA4WASoSoiaVoQJTmdioomyzhJftbn2ByG1E0FUYD9aUQhiEiiQJblNDQJS1aRhdJaYaPvYWkqliwQxjnnWyYNQ0WWRbZHIW5U2mxnWUHfjbl56OBH5SGFkxLX/iTiyIkJ45T5msbHlxtEac7hNGKmqjHwYuIs5/pxRCIYLNREnl9bZ/toRJC47O49JE0yxu0qa/MdEtHg2IPFpvGR8MielBLZuzOYD4KKObUfeBzxyiuv8Ku/+qscHx/T7XYB+MIXvkC1WuXKlSuP/DxPjMB8UBF4FOTLR5XBQLnfcv36dWZnZ3nqqac+8GlIlUXIJRoqSAg4YYqmSIRJzivn24jA/iTkYc/jXKts+P7h11/H8Tyef+Fl3jyKiEc+Lyw12BsFfO1hn2M3QYgKFLGgaio8t9hgpWWSF2WtOysK7h97rHctem7E2E+Y+D41U2HiJwy9iG9ujfnYuRprnQpH+w7bY59hLKPVO3gJVHSRS90Kr995wJ19h5n5Dp1GBVOTkeWcIJXYGQVsHDmsd2zWWiYZBX5U+roHSYYsiCiyxO1jD4mszGRkiTQvaNgqMxWDqR9T0xXcOGNn4GJqCrIIqlTQsiUEJ8M7uf+c9jkSvrVBf3pr8uMCSRYo0rI8qQK5CKIEg6h0uzTFEqFfIJWGYSJ4eZmtCICpQk2CXnBiJEY5ESYJElJRvoE4y4lOBg00OFkCLcUkSzMKEWZMqBmwPQGnKFAkMCWRRkUlyaFZ1annAucaGm6QUhhgqzIjL6WmK0ySjLmKTpzk7I59VFnAVFWOnZCqJrMzjsjysryUZDmmIvL8YoW2pdGpqORFwVxV5dCJymk0XUORCtbaFrN1gyAtON8xidICJ0xJ0wLTUtifuuyPA0RRQJXLJv0z8zUEQWDgxeyMAi7Omiw1DJyT/ZaFus7m0EcEGpbKUt3El0LquoSmqFxemmEaNlk+t0oURvjOmFvbR0ymDrau8N/vm6wvNPns00tIkvTYli2flAzmj9rNcnt7m+FwyPb2NlmWce3aNQDW19exbZsf/uEf5sqVK/zFv/gX+ft//+9zeHjIL/7iL/LTP/3T7+sA/cQIjCzLBMF7eQ2+M/I859atWxweHvLiiy/Sbre/62M/CoE5FbJr167x1FNPsbS09KGebxokTIPSc75lycS5yCRIztwuB16MpUn4SYLn+7z2+h3mqipPPfsCx0FBXVcI4pyhF7M99Oi7MU6QkCYiIy+h05LpVnWiJEORRa7ujBj5CXN1nSwvON+2uLE/ZezHWHoJTtwcelhauRk/Hk/Y3NklLgQurC6SpTluXLDS0Llx5zbf2IpYmGtRMU2cICVJC15crmJpMllWMA4SwjTj4SiAosCJUjqWjqWXNs41Q6GuB/Sc8uTb9xJMTWa1pdN3MxRFYHMUlLh7TWIaJEQZGLnAeseCwiF1yrzFkMHUSqhkmIIuQpifDiILBGl5s9dUSLLSwCw9SXkSvvV4XQBNLstrOgIhZRbkxpBTImkEYKkuYSoio7As39m6RJIWPOjHpaAAEjkNRSQTSnM1KF974JRcMoRyUsrWJJIEnCTBUCVeXK6jiAI7o4A4Sdkdh0zDhKalc6Fr0vdjNvoBbpQjTkMK4HzbZqamIQA7o5BjJ0QWRWZrBjIFjYoKgkDTEKloIqIus1DXsDWFGwdTdichm8OAmarGesfGjyJMVeJ8x8JUJW4fTXHjjGfmK9i6glAUTMOU3XFAVZN5bqF2hvMfB2k5gRal5UTiycb/911osbXtk/gJC3WdvZGPG6V0KzrzdZOwVaU1M4cTJIzHEw53etzc2CY43KTVqLI406bVaj0yTPK7xZMoMH8Ubpa/9Eu/xL/5N//m7OvTqbAvfvGL/MAP/ACSJPFf/st/4ad+6qfOPLp+/Md/nL/zd/7O+3qdJ0Jg3m+fJAxDrl69SlEUvPrqq99z6/VxC0yWZdy8eROA55577rG4b8qSiCRKuCnEaYYgiSRpga5ISKJA21LZHPpcrgu8ceMttEoTe2GZe72QF5ZqBElO05T5T9cPEAuBH7zcZeCnfOP1Q7YGAYXmcK5plXazeXkidaOEFxbrPBz43HowZBLEXOha+FFOWuT8yDNzuHHK7v4h//kbO2SKjkbMJUtFFCW2ehNeu7FBgsT8XIcwF5BlkTzJSi3UuQAA+UZJREFUeW6+QhTnREnGascqS2NRys44wAlKb5Oem5JkJ+6Hpkq3qiEKIjkFtlbuXQy8lJmqQtPQiNKCNC1wgpBxVJa/jCxl6EUYuoIRRwhFKRZBXJa15HLFpsxMTEAUSZKcglJ88rTMSJqmTN9P0eTSAsB3ICmgrokMshxZgBplJpSKkCTSWRnueFz2j0wN0jynn6TkBTQtaOoyg6Bs2NtaaTg2CTNEJKaUQlc1yxv9XM3AixJ2hh55ISCLAjMVnWfmbaI44WCSkgkFsnDSR0oybh257I9DNFkkzAt0WeJ8W+f2sc/BOOBcy+D+0Od80yQvYBpnHLgel7pw4MR8s++w0BJ4abl+smtS7qAoYsHIi7geZ7hBBKLMjK3iRQWzFR1bS1humrQslb1xyNYgwI0TFFFksaETpSVJoKIrTMMUUSho2RrdkykwQ5HQJchEkTDJcOKcrq3R92IUScDSZGYVCVEQkKUGlxWTmYpKlsT47uSM76Wq6hlMstFovG+W4ZNSInu7XfIfRQbzG7/xG991B+Y0VlZW+M3f/M0P9TpPhMDAo1sbfxDky+MUmCAIuHr16hkF9nFdCOVymUKal5vMhlH+XHWz7MPEaYY7OOJo+z4Xzp8n02rYhowsiXhxeoL0j6hrCgUCqizRsUVquki3qpKmBVuDsoxSN1XOdyzWOzYDNyYvcvZHPoYqYMoqslg2jIMkYeP+Jq8/HDC/MEtFl/F6ewy27hGJOonvU61VaLc6TKKU59smR07E04tVtkYBT81WkGWJ40mAH6X0nYSGpTJf0emHCYZc0Hcytvo+m0KAkENelDBESShICzCKlDCS2A58xl6EIAiEJ6YvMjD2wYtDGqaAKpbZQNVQ6bsxQVQCMvMMJBV0RcRQFQZZVAp3lDFJy6XHblVnqSVy79ApX1cqX1+ToWWJpVhmpfjoclkW85Oyp5Mj4celIOU5FEWOrojkBYyLlDQ7MSBTFKpSWZJLMhBSEIuMPC4opJwoCkiz0jJZEwQqpsSxE/Kf3nQZOBGCKNAwVUxNJS1ytkchXpTTsVUEQUQWS6/6gZvyYOCTpjn7kwhTlIizopxSsxS6Ypl5HbgFsZgSZCkPRz7PzFWpaBKbfZ+8KLh95LFQ08hygaWmzDd2JvhxiqVJtEyVg0lAVZfLUqal0LRV5qoaNaO8Zi1V4mAa4QTl2EXD1GiefG/sJ+yOI8STw05Vlxh55VDC0C8f33MjDFWmebK9b2kypmpz7Fgk2SxrqkgSuAwGg7IXGYbU6/UzwXkUYOSTmMH8UQjMH1U8MQLzvZr8b0euXL58mcXFxUdOjR+XwJyKW7fb5cqVK3zxi1/80J4wfTeioslkRekMaSkibUvBtr8F/8vznK+9cYPN/R4vP/c0jXoDN06pGwptS2UUJBxPQ7ICVloWiiwwX9NJ84KurSBT0HMCgiTjwkw5itypqOyPQ469iDtHZZ17sWFiGxIVTWdzkPGbX32LLIrozM/x3HKLjq0iXpzjd6/dJZwM2fRlgsGU8cSj06zh+yJVTeHGzpSGIeOnOaIAlirjJzlVQyJKEvSqyZ9db/HG9ghZlliq63xjZ4pQFGhyObacITFbLSfsjqcBPSchL6BtSahygZ1n+EmZqSgiOGHBNIaaAgtNlTCKySIQZCjkk7VLQSSMC7IcgjRDUWQsIaUoQJJFwqxgsWniRzk1PUeVBIZ+gigUqIqIoZU38ThNcVLQFaiaCnVDYuAl5HlBq6IRhBFekBOk4PnlzyIK4IcJhSBgqeVyqCBA05QIMohSyJOExM8IC4lhCI0Qnl2sM/QyVEVAESDNMlRNZOKnKIrMatNgGqXoJ/06LylRQEpRIIoCDwc+TpTxpy+3kSWRWwce622T/XGCKYGsqnQrBhe6FYZewmxVw1RF3tz3sVSJ2ZrOUt1gdxyx0tC4sT9ld5yWxIS8YLFu8MJilTd2xuiqzPSkdyiLArpSlg6jVKKqSgy9GFGAqqFwOA05cGJmTIG6WbLFGqaCKovkRcGdQ5fdScDHluuoukzNUEiynCjNCdOcvhsj1TRmT2CSwBkq/zS7OUXlt1qt75rdPEkCc/o+/kRgHnN8L9jl2xH372cE+DQ+rMAURcH29jZ37959B8/sw3jCAKRZTpoVTMKUjq3iRQlpITINEmy7HMUcOj737twiTlIuP/0skahSAEM3RpNERmJC2y5RMaIgsDvy2BuF5AXMVDSqmohpSNwapyzWNS7OVDiahGwNfDRZpGOrbCkSPmX/RqCgyBK++tYmuSjw9NoSmlqeUu8cueztHxA6DlZ7kfMdmS/e6TFrKVSFCO9gE68Q8UQdKa+TZxZBWnCv7/GnLzbZHAb83h2fkedw7AQcjkuy7oEkUNMk/KSgKDJyAShykiQnlgWiFJoVGUtSmEYpiiigKDKmkiNWRKq6RN9LSEcJBdCfuAwd0DQQZRlTEmhWNIo8JUlFDB2qqkrLVtkc+PhpSm8S0rRU6raGIqeMg4TNXlDCFU2JhinTNFUMVcYNU2TBx89yRASqhoKmyNR1hYom8dpOSiQUrM/oTIOUvpdQlcENoW0WpEWKIsKCDaIMcQSWLjNKBBp1AyVO2fMTIhecO2MMDZaaEtNYYamhUQgSNgVVTcFNcs63TSxNxosSDt2EsR8jiTANCyRRRCJDLcBQJeI0pcgz5msatykFbhqmZGmGIgt4UUrPT3lhscp6xyLLC24eTJmvGTQtjYWGiR2mNC0NQxHw4pyNnsc4THHGEc8tVPjtm0f4ac6nzjVYqBvUjJRpmJJmOd/YGlM3FBRJoKIKNE2ZSVD+3non13ROcdKP0QiT0rRu7CdsDj1mqwazFY3ZivoOSwso3XFN02RpaekMlX/qyxIEAbVa7UxwTrObPM8fu0XIB4lTq5I8z/F9/09oyo87vpsInCJfVFX9nsiV9/vcjxKn/ZZer/dtPLMP62opSyIVXcZUpdLZ09bIBDh2AlB08jjgD1+7xrlujQuXn8ZPC1qmiigItCsK/RNabpLl6HI5rXU8jfCTnK2Bx9QvT/19P+Xp+TptW2PkJxxMAo6ckIapklOw2jRpV3T+85v7HA6ntJIh1arO2vwsCw2D3WHA8SQkGR2w3fd54dIKqzMNru+M+KHLsyVZIMs4ngT0xi6u4zEcHXJv84BYklhsVfhKENP3UwSx4OHAwz/IUBSJrqVQZCX5WRdgtmJyMPEY+RlNQ2N/HGBoMmmakRYFpiZxNCkF1NZk1ALCpGCladG2U/YGLrGfo6gitq6SpimCqNA0JR72Y4ZeiCCIhHrGzrhsirctGTfK2RkH+GlOluZMgxBNgU5VZ8ZSsQ0FioybRx5JlpWb9qqApYr0vRQ/TOg5MZYsQlGw0jComQqGKjKJCmxL5vKSzsOeB0mCnOe4UU4Wy5gqSEXBsZdSUDBf1+n4GWFcetYjwkY/wyhiekXIpTkTVZQ5mMYstgwqRlk+youcp7safa8c4ValmG5FZyvNeH1/gqGVANEjNyU7MTYb+jlttWASpIRZji6VPTRVErE1mYNJiCpLJHnBwTTkcBpRM2SWGjpHbkzfjbF1kUmYossiX98c44UJPS+mYSg8v1QrRU4UUCQZTREZeBF1U0GVBGRRZBKUk2blFr9AkhV87Fydh32fJM/PBMhS5UdeuHw7Kh/K0vapEdjDhw9RFIVms3kmPH/ccZrB+L5PURSPbN3+pMcTLTBHR0dcv36dpaUlLly48IFT2Q8qMKfDBACvvvoquq6/4/sfNoMB3oEbT/MCVRKRBIHIGfJ/feUmL60vcGl9DUUSCZIcWSob/gfTAkNRKAqYBGV5Zr6u4cUpF2Y0bh9MGQcJQiIy1xRZPfmg3zyY4ic5s1WDoReRFeVU0+HhlEtNgZ2tAXKjxbxhszn0kCSRji3z8OEWTUPk6fVz+Cn8wd0emlJOmAliwdEoZH8SoioKdq2JKgt4YYyUxsxILl97OOQwLPHqF1o6G8OEWUthrlV6jx8cuvQcH1OpoYgi59tlr2ESxNQNlWmUkGQFqgSiJJLEORVdICvg2I2xNYWaGOOKkFgqL85XCFO433P5zIUmflJ66aQ5iGJOnApEWYKpKMzXdHbHEa6T4QYJQy8hAy52TZwoY3sc0ExSJEFAyHNGXoYAaIqMqZWnzklaEOcJiSJgawp5Dm/uTZBFiSjJ8BOBmqmiSD6eC8tNBVU3GLgBSZLRczKqIiRpysOeS9NSCdUcTZHp2sqJ7TUEkkJ/GhDFOQNHwMh9KqLNrX0BU5eZqQgkWY6fFVT0cnAiSnPIYaPvo0iwNwwwNYUih/W6hm2pbA8DrsxViLKc1Y5FmhdsDgOEvBxpNzWJw2lMzVTI84KGWfb6FAlEQaBpqARpRtXImAYy52dsKppMRZPJi9IkzNbKw9TdI5fFhsGDUcEoKlhSRIoCLs7YJS16GnE0LQdODqcReQENU6FhPrql+bvDMAwWFxdZXFwkyzImkwmDwQDHcRiPx0wmkzMjMNu2/0jNvk736WRZZjQaAfxJiexxxrtLZEVRcO/ePba2tnj22Wc/9JTWBxGY0WjE1atX33OY4MNmMO+OIM6QJYFx75D7gwGvPncRs1rnYBISn/CnpkGKF5ZY9UmYstgwyHPoezEdQaNra3hxwmxN53AakgvlTo0fZYhihq3KVA0ZoSgzqJWawfX9Cdfv7xEHIc9fWCAoFMZuRM9NGDjHtHKX55frREabsRcRJQW2LnGhW+EbWyO+vhkgkIMgkiOgSwJelHN5rsZMTcdQFITalK9u9JnRIqTEQU5KWvRMRWLLSUpydJJza99B12T0IOETKzpVU0VRQM9lCiHDVCVaZoZWk/nUaoODaczu0Kc3mnKcw1LXZhLm3OsH6JJA01TZ7HscOBGLdYtPrTW4d+ww8hMMRcVQRApB5FzHAnIoBNZnVOKsYBRkNHSZcR4x8XOWmxphVrpqdm0NBBFFKvCynNmaQpgURGmGKklUbYVRqCIXObks4kcZ46mLFMUstlTWFxoUmUCnZtKbRszWMy62FN7aH3N/UCClAakoIeQpuSFgKzKTLEUQJHLNIhYT7CKmYQr0BlPMIkPKZULB5MgTGYQZK02Dc02L2YrG1Z0Jk6DEGbRsnYszFjvbYy53LSTdxAsTaidZRZIVeFHC7tCnYsjIQjnR2LEVpkHCcqMsyf3BxpCBH3O+YzNX04jTAkuRWG4YVHUZUSjHq6u6wlxN59iJ6E1D8qIgTMqbqqVKFHlBAXhRihdnDN2IAydGFKFhqmiPGREjSdKZ0VcQBFQqFVRVZTAYsLW19Y7sp9FofNvi9uOOt7tq+r6PoigfqFLzJMYTITDwLRGIoog333yTMAx55ZVXHouSi6JIHMeP/Pjt7W3u3LnDxYsXWV5e/q6nmceRwbw9TEWgKmWk3pgf/L5PouommiJx82BKDnQrOlHqM/Rj0qwcid0bBdi6RM+JmLFLLLoklrvtcZozDnI8IcZ2wnLJzVCodW02+x66UtbtJeeQNAp57uIiqqZy0PdJ85xlC/r9KU9fmGU/1djbHbPasfjEuRqKJOFEKZ9abXLn2EUTBG4dOtiqSJwWZGRsjwKSHF5c0kgECUGWqbbrfHylQf/rm2wOfb7+cIJCTlGImDLMVnXiPCfKCvbGAUmWM/BSZqs6dVPFUMrTsK4IBGnBU12Lrb0eNQUU28bPwNBlCBPcKCUrShOziRfTsVU2jkMOJgndqsJa02ASZby0XOerD8cYSim+nYpBt6Lyxu6YNC9oihodW2GtU2EUpPSdkCwvyIoCQxaZq5Z+NXgJpq6yUNe5e+DQNhRSoUBPcsgT+gOX51ca1OtVNo49WjWVJM7QFZEkhU0XZtpN+olLmmY05IyJV3B9x0NAxNRAkzLyPCfNoW0ZHMUZnYrNpbbB/mjK3WOHNM5xY5GdJCSOQs53a9QNhfm6wfm2ianKCELBN2/B79wd8qMvWiSyyM4oIMtywjRDEKFp6VRUiYEfo6TlXlaa5QzVkLf2HQZexNAt+z0P+h5LdZ3VtlkebAqdilaaj6lyOYo8cCP6XsKFGQsnzFCEctJMEMrez1JDIkhy8gL8OCXPC3aGPllBuVysP/7bVZZlaJrG/Pz8mRHYqc3xw4cPz2yOTwXno8huTu8hkiThuu6H3u15kuKJEZjTU8JXvvIVarUar7zyymNrvj0qhibPc27evMnx8TEvv/zymZXpd4vHmcH4vs/rr79OURRcuHCBRNRwvZiGpXKha5cfbD8mTjI0ScJWBYIkR1NExkGKKAjcOfZ4Zr5CR9U4GIdc6Fq80ROwpLL0NlMtUTCWJpHl4PoB33jjLfZdgVefXaVqalzq2rhRwvHxgL7jc2ltHrvRZGN3TJoVzFY0DicRbx1MWaobzNUN0iynYSs8tVDl3pHLNEhIc3hm1mSpZZIVAos1jaO6wd4khs0xr1yaZWngsT0OmXgRVhIxcXPuHUyoaxItAxxPoKJrTKOMrCjxMgeTsoeyN4kgnzI8clmsS5i1Fk6UMfRi/DihbmloilTuzuQFpibjhRk5ArYmcGWmgpdknGtZTMMELwyZBhmTIGWrH2BrEt2agZjmdGsqkiySpDkNU2YUSGwfOkRF6a54ZVZj3dL4sjNgoaojigKSDIgFaQKqkGCKKTOdKuNcwaJ8T29sjelWdVRZIs5zZLGg5yTUdBk3hFbNpFop8fh5miELcDBMOMwjLs9IrDcrPBiLKKJAzZA5cg3aLRlVFCHLkPKQ4cTj7tRBN2U2Igk5b6JoGn6S4cQgRhHXdiY8PV9lfxJxOA0pipy2rXKpozAJUrI8p20p7E0CKqrEnV5IzwlZaxr8Hy/M0Xdi3CijZsjEWVlynQQx9/sJqiRipQWyJNK2NZaaJpsDn5qh4MY5G8MEq/DIM6jpCnN1neNpiK2Wk3lzNY3tYUCcPr5Kwdvj3VNkoiieZTfr6+vvsDk+zW5OS2nNZvOxZDdZlp0NDbmu+79Mgx+eIIE5ODgAStOdCxcuPFYFf5RMIwxDrl27Rp7nvPLKK49kWfq4xp8Pj3u8fu0Nzi3OM51OEUURU5XI8gIvShFPJsQoQJYl5mwVL86Zq0nYukwb0CWRcZDgRhlelLE3DtBkidmKiqTIKLJQNsZ1mcNJiOs6fPX1N8nUCt/3wgrHTkqYZvze3T6VeMh+5LO0NEu9WqFTUVhqGHRMmRsHDjNVjZmKVjZzpyI9J+RwGnKhYzMJk7KeLIrsTCI+faHF69sTEClHc4uCLM+ZrWioksjOKMKLcqqmRasq0XcCupaMmEccDH0quk9TllAKgSiSyPIML8qZNyV6A5eFRZ3Z2RnuHXscTQJqusrIjQjDgAszNptjnyuzNg8GAUma8bHlOhM/PsO2vLkzoW6XnvTzDQNFFhg4EZqikBcF7ZpKnBRQFOw7EUfjkIqpUDFVUj+hW1XRFYnZus5K08YJY9IsY6Vu4mcZQW/CcQjrsxUmmYIhwv4wQlMlaqZKkef4SUHH1jgYhfS8iCTNaFoaeVEgiRKvrDZxTkaRbx5MaagC7arE3tAh8lLmCom7uz6poOL4GZdnbBRJp1tpkhUFhxOXrz8cMXUTXr+3z4WWhG3ZXGhAo1NjuWkgigJtS+ZoAj0vwdYVem5MlOUIlI318y2LSzMmQz9jZxyw3jZJ04KqLtOwFGRRZOPY5X7fY76qIwjwhbsDLnRNLnQtGif2yYv18vXSNCUTc8S4NNWbhDEzhcaV+Wp5XdsaYZLxydVGef1/BPF2Bth3infbHJ/2bra2trh58yaVSuUsu6lUKh/ovvW/6g4MPCECk+c5x8fHACwsLDz29PB7CcFoNOLatWu0Wi2efvrpR97sFUXxQ2cw29vbfP36HZZX12gtLjC59SZ5nqMrEroicTQNUYTSOhkBuhUNS5Oxdc7gf1GSUVD6hWwPA+4dTelWNZaaOpsjEVMTiZOcB55HnObEzog33rhBYnaY6ZSInbYtM/Uzvnpzk3N1me9/8TIVU0WXRfbGMV1b444fYSgSFV1FlwWmfnxmfNabBNQMmYvdCm6UsD3w6U8Drh+4RGnOrUMHRRbxoqycbHNjHgycEu5oKJiqTKeicq6lkxYCe0OfQAqoahIUKbs9n5ri0IslTBn23ZxWVSVSq9w98tgZBaRZQZxldGwNN8nZG4eoCARZgSgAgsDdQ5dJmLDYtIjS8qY9nEaoosAnV5uYmsyN/QlhnODHOWGUMVPROHAikqwU6ONJgCAImIrEcsOiaUrc7/nYmsjuOEcRCzb9kMCLkAVY6picn6mCKHI0CfCTcj/olbUm39wan3jWCER5ThBlXJ6zSNKCblXj2CmnAmVJ5O6RQ1WXyQSBw0hGkVT0esFUgI3DCaNJgKIUtOWI1W6VOBXZncYIucDziw02xzH/9+fa9EYuQ8dlVksRnEMG6YSxUUFSTa7MVVgMS0fN3XFIRZWYrZUUhaal4MYFuiLy9GwFS5MZuCH70xihAFUWsFSJy7MVGoZCRS9tvZOsOMk8y0XQoR9T0WXSrKCgIMkKOhWViqacCUlVV4iSjMpJL+ftkeYFksBjuU+8H8tkURRpNBpnk6RRFJ1Npu3s7CAIwjuym0f1cXk3JuZPSmSPOURR5OMf/zhf+MIXHjszDN67RLazs8Pt27e5cOECKysr7+sX+2EymFOW2tHREa9+/EUSqXQQ3HdzKkHCqZOMKovEaTk9tjP0ccOEMMlxTsi2F2cqHE3LfRJJhI1jB0ORCeIcN8qwtbLefmmuyhs7I+7cf0g63OPy5ctoVoXdoc+9XsC8JfDg3gYtW+Xy+go1S6Vl6ozDhEmUcLFjkhY2NUOhaancPpjixAWdikzX1rh1WNJ9r8xqPBx4XJ61SQsRRQJJEuhWNO4cTUlSgXv+lKEb4Z1YL3cslZ1hgJ8k3D6M6FZUBFEiLwpSRC7Otpnt5PSnAfXpFC9M6egCYZQiRxOQDGaqGnlasO/4LDUtPjVjcfOoJEW7YUbLVtkdhozChGmY0YlimlWjvIHnBUVe4MUZ4yCm5yR0bZn5us69Y5f9aYwii7yyWgIdv7TR53ASM1NRUWSBw0nCxE+Yr6ustXT6bsg0iQhz+MRalappsNqx2R2WAh8kORWjnD9+Zr7C7WOfmimzlGmcb5usdStsDV06lsbIS7BViZ4Xo4oiSQaaAk6Y0bLLBcWXluuYXkZMynxVpF2RubY1oOceocoyNUthsVXh48s2YVZwf5ojYNEWHC6tr3Dv2GU0HKFlR3iajFmpsVCvcBhJKIqIH2dUjZz9ScJa22Tsp1ycsZmEGYYqYyplH6nvhJiawkqzbPJnJ4uYwyDGizPOtUzGfoKhlI39NC8wJZmmKVPVZebq35rSdMKEraHPSstkvmYgid/6XO5PQgxZfCzAyw+zaHnau5mfnyfPc6bTKYPBgO3tbW7evEm1Wj0TnGq1+l3vLe82G/uTDOYjig/rCfPd4juVyN4Oy3zppZfe4SD3fp73g2QwcRxz9epV0jR9RzkuTkscyeYg4On1MjMI4pwgKevblqawPfDw0pyWobA/DlhuWmiyiCaIuFGGqcrYmkzfDblz5LAiwvCEjPzg/gajicPnX32ZVt1m4ETM1HR6wwlv3Nzl8rlZZuQqilSOks7VczqWysWOyd0jD0MR6Fg2SVGC6kUBlpsqIy/ihYUqBSIH44BJEOOaCs8tVpiv6czXytHYvpOUiEgB5DClbmkYMjQtDU0WCdIMP8rx4pS5mk7rxDL3mYUqX3kw4HjsYQGrc03aNZMkiiH2mWWMlhQ4hYwhSthKWZ7zowxJEDBkEVmSuDRXYXvgs1DXaZoKQVqgiSJPdW12RyFffzhkGCQs1EoI53y93ClpGGXPahzkaIrAQr3E2C+3LO4cOAz8mPV2SQAYehGjoYsowsfXaiBI9JyQjWMRTZFRZYmaqdCtaieLtfDKaoO+G3GYwVrHZBLEOEHOx5ZMHgw8nCjj0xc6zFUV3tydcH/gkyYFyw2dpqFy68AhzTOenre5OGOT5AKrmo06DuhoUCQ+h/tD7m1DtyYxTmXOty2O/YLRboCpGlQ7Ni8t2LyxNeB4MuHNrTHrNdBrNp5q8Yc9h6Wmze/c7nN5rsIb+w7rHRM/LoCCSZhQNTW2hx5v7k240LU517IwNJlLVY26UY43t+1vnerrusClBZul+RYHk5CeE1MzZPYnIWmWM1vT2BoGyKKIIolnf9dSJQzl8fDDvleJ7FFDFEXq9Tr1ep3z588TRRHD4ZDBYMDu7u5ZdnMqOG/Pbt5dIvuTHsxHFB/GE+a94t2Zxql/S57njwTL/G7xQabIHMfh9ddfp1ar8fLLL79jkEGVxdJoSSg4diKalsr8yamuKErw5f7Eo6koXJytEsQpcVo2ZO/3PXZHJQ7Gi1MUqQQ95oiM/Zjf/P3XCJKcpbVLHPsFEQFFITDtHTLY32Pt3BJatcbUCTmKEjoVHaEoWGoZfGNzzMWuxZsHDq9tj1hrW7yx47DWUbm667A/DmnZCnNVg62BS9PQsA2Fh0OPgRdjqhK6KrLaNnGjhCguqJoqMxXlZAmv4O6Ry0vLNYZeChQl+VcSoYCZikKHKUo94/mLq0wTCOIcs25S0TsloHIwJR+5uD2HW94RFU2iUdE5N9OgH2XkOUz8hJeWqmwPQxYaJpvHDn0volutULcU9kYBhiTiJxkPex7dikZFk3GTnBlbRVdKxluUZrhRRlaUS5FekrA5DKhqAlbi0Gwr+LJFBtRUkb1xSNtMqeoKtirTsGX+tyszbI9Cfuf2MfujgNmaxkrLYqlh8Mb+GEMVeXNvSpbBbEWlbaukOaiKwnJdp6AgygRkSeBcxyRMCv735+dw/JTdsY8uS/zgU7MkWUacFqhVn/7YoecEtIqIw0MPJJl06LLSsZELnbv9AEXX6Y0yVpaaBFnGUw2Bjf0Bk0nI4YFCs2pyLQr5cy8vM/ZTLFUqfWJkiZousdQwT67X8gDSshSCOOPOkct6xwQEaoaCEyb4cYaulNe/oUh4ccpGz8NUJWqGwt4kZKai8e6D/4c1GXt7vJ8S2fsJTdOYm5tjbm7uLLsZDofs7u5y69atd/Ru0jT9kwzmo46PynkS3jntNR6PuXr1Ks1mk2eeeeZDnV7eb8Z1dHTEm2+++R29ayZBQkWTma1oiIqMLpd4jNMygCAI2JrMJ861iNPSI/0oTGmYCltDn/40PGE/SfhpRttQKSjAT4kmQ1BrvPzUKp2KzsCNOZpGOEfb9EdjPv7iUyCfljVyNgc+MtCxVYZuuXNz+9BFRODYidAUkboB//3mgE+sNVmqawgnTeLtkcgn1urM1QyubU94OPBpmjIjNyY52cQ3NIlLXZukyEgzuHvoYaoyD/oBl2cqbPQcKpqELGg87Lv8n196iwKRv/xDz/FwEJPFIZoilEt7hw67k4BzTRPdrrC6qKBJIoYQsz90+ebtfWxNoFvXeaZb5eE4pmbKfPHOMbIoUNFFtoYhglAw19BZbtq4frkDFMQZdUNhdxTQMFXatsahE1IUAroi8rkrXSxN4T9dPeBr9w85OPK4NGei2w16XsruyGV/FNEwJaqWwsCLmalp/NBTXda7Nm6ckeY5iiigyxKCVE4Etm0dW8soctgb+Rw4McnmmGfmK9RNmQc996xEpsoiVU2na8PWoJy28uOCmiFz79il50Q4YcKlrsU4Fpit6FTTGLna5thLycMAeXrMN7ZFTEtmoVHlUsfifMeiZStUdIW15UW++nCE7zkMxlPq/hFf+doRnWaDSr2BKhmc79oESca5lspSw6DvxhxMQgxVIklzaoZMkJS9xbwoGPgp98cJ5oHHi2aNPC9pAposYigSilRmLVVdYab6rVKYF6U4UcZMRX0sfYo/ChbZ27ObtbU14jg+693s7u6emRb+k3/yTzg8PPzIMpjNzU1+5Vd+hd/5nd/h8PCQ+fl5/sJf+Av8wi/8wjsyqjfffJOf/umf5rXXXqPT6fDX//pf52/+zb/5gV7ziREY4D15ZB8mToXg9PSwvr7OuXPnPvQF+qgZTFEU3L9/n4cPH/Lcc88xMzPzju/HackkOz3ty3LZt2gbKkVRvON9GkpZrrl77HDv2GGxbrLUKLfh17sWuiIjCfDa1pjj3hB1sss011leXUJXZfbGpa/I/tYDKHIuX3kWy9DJipwgTpGlkra8OQ6pGCqCKDBwE3bGAVVDKcd6g5ggF2jaCrvDgBdXqliKwoEbI+RAITD0Im4cTJipadR0FS/KOGerSIKIFyW0bAUEBTcqiNOcjWOXKBMZejFzVZ2tYcDEDZD9CZkoYzca/L+/fsCl2Srbo5Asy1EkiZ2xf4blNzSFP/VSm46tcufIZZweEcoJXpYwiKAxPKYa5Vw/FNE0jQvdGn2/bKp/5cGYLMqYtRUiQyZIHP5wY8hSy2C+pnPjYIKmyBxPQ0RB5NXVBjf2XT5+rk4cujw8cmnZMvuRhudMqOoqtqpQM8rhiz/z1Azbw7LBX9Fl7hw5/Pebx/hhRlbkaKrITEVl4Obl3kiU0jA16qZMkgtMwxhVFnEiAIGmpdB3Ip6eq3CubfL1h0O2RwGGLLHQ0NmfxuiKwFLdwItl+l7MkplxNHCZW51BUXRmOgpVQ0ahYPPmIWM3oOMM8b0eATYbY5v7U9AVhWfmKsRWk09eXGSmorB1NGI8mXB/cwcvCNndtDk32+T84gxVy8KPM/wkoygKLs7YZHmBJpeEaUEAWxXRRZhGGdMwRZFK87K6oWAoIkM/OZmGe+fNv+/FTIOUllXyzD5MlC6ixR85rl9V1bPspigK7t69yxtvvMFv/MZvcPv2bdrtNr/4i7/I5z//eT71qU89tnWN27dvk+c5//yf/3PW19d56623+Mmf/Ek8z+PXf/3XgdId+Id/+If5oR/6If7ZP/tnXL9+nb/8l/8y9Xqdv/bX/tr7fs0nSmA+qgxGEASyLOPOnTvf05zs/cSj7MGkacr169eZTqd86lOf+o6MIVUWEQSoGwr9k76OrckM3IgkK6m4siiwNw6QBIELXRtLkbBlkWOnvNnOVPUSZZ9keGHKdHCEe3xIs9WikpY9mGmQYskZg90HNGsVtNYiqq5x7IbkOYRpRsNUcaKMwwMPXRY4uBuiqyKXZitESU7XKnsHpiixVDcxVIksFXhutcb20GOr5/Jw4KHLMllO6c9S5Dy/VGe1bbI19DFkkTgDW5O4PFPh9e0xb+6MSQuoaxJeWlDEEWLksjBb2gEcOQk1szTGmq1p3O957I59npuvokkCflYiRvbGR7TtktdmqTJRWpDlEhVLY2F5hSAKyY5GbA1dosEBSSLxIAtQCpHlts3zSzW+eGdAVuT4ScrEjznXsuhWDPw4o2GopBS8uT+hWzU47B3z1sYRzy7XyCUVSynHay/P2EzClKouMnBS9k84cYoscG17xEbfZ3fkY2kSKw0bS1dQZIGhm7A1ClAlgTVbpWLUuXPkM/AitoYebUvjhaUqiiTyhZvH7E1CLs1VWWpbfOlej46t8QOXOtSNiL5bjlFf2wm5sz1AzDPa7SpHvsAz8xoLdR0QCOKMK4stoMTLJHFIP/LZ2RuzOwgxNAkzq9JuVHl9GtGyVdIM6tU2n79ynm88GDCeTnhwNObuwx1URcKs1hD1Gudmy4mraZjSd2OOnYhuRaNbUVm0CxYaBqZaomLWO+XJfXNY8rje3tg/DUuVkUXh24Tng8TbN+j/uEIQBBRF4dlnn+XrX/86f/Wv/lU8z2Nra4s/9+f+HM1mk9u3bz+WbO3zn/88n//858++Xltb486dO/zTf/pPzwTm3/7bf0scx/yrf/WvUFWVp59+mmvXrvEP/sE/+J9bYL4XUfmDRhRFXL9+HYBPfvKTj7W++b0ymCAIeP3115FlmVdeeeU9xxabJ3VlQRAY+Qkbxy5VXcY92YS2NRlLkRAlAUUWqZsqqiozYypwQsqdqxncPZzy5q27qInDj3zmJaIw5He+cZN0soFhamxOAp4+N0NotDAASxaZna0y8mMOJhEPeh4DP+a5xTodS0MUBExZ4ngaYyhgGTKr7QqG7LMzDsqyT0Xlfs9jEsSYioyhK5girDRNDFXE0hTmqjq39h0kUWClYVE1ZI6mEZMwpedG1EyFuqnw4mKDjb1jJt6UpeUZ5toNfv9en7mGgSyKfPn+gJWWiSaXzfu9UUAhCFyZq3D30OVoErI2Y/KDF7vYusxLhoJAQaeq4Ycpv3fPoWmY1OsKAbBmQhYFjCcuycjlwf2AtaqNjImuyqx3LcIo49m5CrIksTkI2OhNiQsY9nr89o7PhcU6F+eaGKrEyE9ZrGkcezEVXeLL94cM/YRRGDNT0bh1GHBPKG2Dv2+1ydBP+NFnZ5mrG3z5wZCr2/scTQIkUaJhaagiuFHMwThiqW7QyyP6Xsxq00SRRfSTm3O3qrHSLHs4LUvDUCX8eMrN/QkP9o+RKHjp0ixHbkZVk3l2voKmyNw6nHA0jqiaKqJYumpKlSoj3+ClTpvvU2SORxOc6YSd7V3CtKCn6ix06rSMOiM3ZL1rsa/LyGKXuZrKaOJwd7fH4dYWD+4/oFGzmO3UuTUSEU6mxr65NWIUwMs1nSDOWWroDL34jDd2NIkwFJnZ6jsnxd4+JPBh4/Rw+MeN6397k78oCj75yU/yt/7W3yLPc7a2tj7SkeVTBttpfOUrX+Ezn/nMO+5Vn/vc5/i1X/s1RqPRO2C/jxJPjMDA489gJpMJV69epVarMZlMHjvf573e76l3zMzMDE899dQjX8TTGA6diFqa4cUCTUvFi0psxlr3W+I4U9V4jhoPBz4VTWK1bZVz+Q9vUBMLLr7wIoMoJ801PvGxF7l2Z5Odwz66LPPmwyNaNYc/mCpcnGvwyfUOUZKxM/QZeDG2JrHWskmLgqap8rDv0alp+GFGEKeYqkRaQEWXSbKcvUmMpSlM/IympVA1VV7fGpPksNq1kEU4ckLuHLk0LIWVlsXAjfGilD/YGLDVd2mYOh9fqYI3xIzHNM4t4mUir+9MMFWJrqVz52DKJEzJcnhusUKQ6uxOJyxWdZKkQJMFzjUNfuhSlwtdm05FY+DG2LrEZj9g7MeYqogkwcEwxvNjlq7MsjbfIdYmiEXKcZigOfsoUUpX0PjKrTGKprM/iVjrmDhhSpwV+NMRO17C4myVtdkmK20LSRTwY5drBxMWagYH44g4y5CBtiGjKhJuUO61XJmvcTQNSIuCtw4dvvxwzN7YZ6ZqYGsKPSfm9oHDTFWlKAReXK7S92LsVOLpuXIHZaFu4MYJSZYj5AIrDR1NkZitavzuPYc0yzg87mHkBZ/92Dnm6hX63mkPqey3HUxiwjjlXNtkbxIy8hOem69iqhJbA78Eo3bqvHB+jo1jlywJsYuQ0XDIvdv7TGomqlXhgSPwifOzSAIsdupohsXc/AJxFCLEPjd3+mz2y72mN6MxsaQzDgpUWaJpa9w99uhWVIZ+QsMo+2i29tGWrp4kgTklApzuwUD5vlZXVz+y193Y2OAf/+N/fJa9ABweHn7ba56W9A8PD//nF5jHlcHs7e1x8+ZN1tfXWVlZ4bd+67fe8Yt8HPHdSmSnuzWXLl1ieXn5fT1nRZdoaiJZDj0npKLL5TKgF9NzI9KsAAEudm0WGiYjP0WW4Lff2mW6d4+12SYvv3yFkZ8QZQmjKOG337xPGvosrpzjB55aYDBx+L3b+7QEhwf3x4jTAxSrTixqXJqpMvITnKjsx7hxxoWuxTTKeHrOpl3RgIKpHzHwEj51vo2hiIiiQJjliMDOODhxX5RoaDJ+UtBzQjpVFT/K+OrDQbnJL4vliLUi0alIPNzeoyEGPP/MZeaaVf791T2CpKBrq3zsXB0vSdGmEX0v4saBw6fPt/GjhJdXGsiCwBt7IySxZKF5cXYizDmbwxhVErgyX6VqKCzVdaZBwkGeM/BChn6CKgnomoGk2UziKgszEnf2h3jhhMwJkYMpV8cqS60KznBImhUszrSwDI0r8xW8KEMUBAQR/DDH07Ly38BQmAopmSBSN2RsTWWuIZFkpV2BLsBMRceLXboVjSuzFaZRym/f6qEpZcO7W9GQRZFnZmt4ccpa2+b1nRG7w4DFlsGNA4c8z/HinGcWahxOA7woIRkdMadn9Mw6MzULQSxdIiuawte3RozcCFkqxeb37g1Y71jMVnR0WcLUy0Z734mY+ikfW9a5d+QgyzqGVaXSmqFtycixyxdv7HF/d8roqMefWm8w22mSSgbHTkjXUlmerYFRZ2E5xvM9pCRADo5pVTJee+seVq3OQrfFNJBYaer03ISKXpbCDqchdUNBf0xjyW+P0wmyP+6lxizLzkjtH2SK7Od//uf5tV/7tfd8zK1bt7h8+fLZ13t7e3z+85/nx37sx/jJn/zJ9/+mHzGeGIE5LZEFQfChnifPc+7cucP+/v47+i2iKD728tu7S2R5nnP79m0ODg4eiWX2ncJQFapamblsDhLSrMDWZfbHpWeKLJUlNEkUKIqCliVza+uQW7fvc3l1AWt2gd1RwFLTpKZL3Ll9izj2EaqzNKs2qiwwySTmu20uPLOKLObE7pT+oM/m4RHHrsx+orGpWLTrFdY6FhVNRnAjjtykHBQYBcR5QbOiMQ0TbN0ot9sReGquwkxFL8s4LZOxH3PsBaw2TQZ+wk7kM1vRSPKCqiLy0nKdC22DL725wZINqxcuI0gycVLSgHVFYLFhcTCJSn+SorRfTkwFWRZZbJjossQ3d8eoCiRJwf4kwFJFBEFksWkgjSMuzlgkOSw3TFbbJmkB1/emAEz8GD+DOMvZ7KVcmLW4P4zw0Oi0mizWDfIkZH8wRXCOqUsFsqkRJDHz3Qo39xzCNOellRo1TUERC9w44/svtLhzJLPR89gbe+yPQyZejK3r+FHZ37nYtdmfBDw9VyPLc+ZrOt/YGmFpIjNVk6WGTpRl6JJA30vQFYkHfZe5msmfWhcoBLA1lfzEvO6FxQpumDA93GHGElFqK6TTiPs9n5eWqsxUdFaaZml056foSokhmgYJIy/mhaU659oWaVYgCQL3j10Q4P93dY+ZisZCzWASJhiSQqdq4EUKf+qFChfXI5pKxuZBj6v3dqngE+Qmd2ULW+7w3EKN+30fvWVi6zLdis7v//7vk+smg8GQ0cEOVcsgmWnhiVYJmLQ08hOn149CYJ4kN8u378G8Xy+Yn/mZn+EnfuIn3vMxa2trZ/+/v7/PZz/7WV599VX+xb/4F+943OzsLEdHR+/4s9OvPwjV/okRGPjwGUwcx1y7do04jnnllVfOUs3T536caP13P+d7vfajxthP8E8w5gsNgyQr8OMMWRRYapo0LZXDSchcTafvxkz8mLfub3Owf8D6+jkun5ul70boinzGVjNVjf/HD7zMjQMPXRW51/PRJRFDUfCTjNW2ha9pyHaTrOKejKG6bPf67O/3OKhrLHbqzLYaXOzaBHHOXLUESe6NfDaOHLww4ciNaJqld/rrO2NEyr0dQ5WYr+mYukJSwFrbwo1TJn7K/iTkYOwzVwxpGBqvvPwUflww9GNe3xrTqqh833qH5aaJAPScADfKuDxX49MXWtw/dtkbB6RphiYJCMgsNBXSNOPOsY8kQdWo8/xSnaEfEyUZDwcet4+mrHcr7I8DNEXi/3h+jokf85s3jrAMCVuTqZsq450xdVPlqfkqByMRwRtwrlNnZnaGe3sDXGfK9Vtj3FyiXTPw2gorrUr584sFQz/h0xdaVDWJb26NCNMEP80JU3hte0xFFXl+qcHu6GR4Y8ZiGmb03Ji6odCtyBw7EYoE9ycxczWNiioz8GPaioDRsLh14HI0dfnshQ5OlPLgeMKDB/dZaVVoza+QF4Bc7pY8HAYs1A3WuvbJiHY5VfjCUknHloScaZgQxCl9J+b1nRGKJFLkAvUT3JCXZEyCDEOVuH3g4EYJC3WDNBc4N9dmmit0ZhcgS9AmE3qDEW/euM3vRAJzzQpWpcbF+QabxxEPJ/CxtTbPXjxHnKSEnkvojNg5PKDIYW2uQbPVYhyXBOPHTVN+EgXm7SWyR41Op0On03mkx+7t7fHZz36Wl19+mX/9r//1t/38r7zyCr/wC79AkiRn1Z4vfOELXLp06X2Xx+AJE5gPs2j59n7LSy+99G2jfR/FhNrpJv/p8mS1Wv2Or/2o4ccpUf6t2rClSaRZjq5KqCdTM4IA93sez8zZfOXqPUJnxGc+/ixhUZYULs9WOewN+I+/c4Pl+Q4X187jROVp+kv3h3RtGVUWcMLSfz3Lcu4eOSR5TpLmWJUq5xc6rK6kTKYeo/GE+3vH7O0eEM3bYFRIZYtzM3Wk0gWGlq2RFiABD/vl2HCUwmubI+YbBosNnYalEccO9ycROTlulBJFEfv7A4wZnT/38mUals4k8PnagyHboxBbFbE0GVmC1x6OyU7Mry7MWHhRxsN+OW00DBKcKOPVtSZpUZbUFFHgd+/0eVOaAHD3yGEapGwcu4RpxifORQRxgSCAIomstC2eW6hz7IaM/RhdLf+dBAq2j8ckwwN0q4LdXeDBJGHDlalbc8iEfLots9efcPPWBjVDIHAU4khnWjP4L9cPmauUPjJ1Q6Fpa8xWNHRJxNIkLs7Y7I4DBEqS8lpbIU5yzrVtnpmr8C/+cBMnSLnQtQnTHD/NOJ5GzNZ0vCjFUgXm6jZuFPPvX99mOnJYaxvMWbPcPXRRVYlXVlvsjf3SvsGPubk/pSiEckoxL+kR33+pzb1jl92Bx61DlzTNSfKMxYbNckNjHKVcaFncOHJpGKXRXZhm1EyVh4OAii4yChKalsqbe1MMWQS1yp/51AoHY5+N/T6e6+IODvjS7haaJBDLKhs9D0mWmavpzFTb7FsVXphbwfV8nOmYYG+Pnb5Lu2axNNum3W5/YKjku+PtN/Y/zjh9H0VRfKAM5lFjb2+PH/iBH2BlZYVf//Vfp9frnX3vNDv583/+z/PLv/zL/JW/8lf4uZ/7Od566y3+0T/6R/zDf/gPP9BrPlEC80FFYH9/nxs3bnD+/HlWV1e/48X3UQiMJEkkScLXvvY1VlZWWF9f/1AX/lxNp/BUdsc5cVp6kdvv4i31nYixF/Dvv3iTWaPgxU+8TLduMfYi8kLg2t1tNu4/oLuwxLnVJeKsNME6cmJeXq5TM2QOxiHrMxWcMGWYJJiqRJQIpXWyrXPvyMUNM2zLAkVl/dwCFUVgOBpxf3/IvcNDHtZF2o0ailZh6JbWt5YioYqw2DAZeDHHbsTXHg54dr6GIom8deBwr+dyvmtzsSEy2eujnmvw3Oo8X34w4vJMQpDmHE5CkjTl3FydjqVw77gcZNidhCzUdJqmyq2DKfuTkIuzFR72XFbaJlFW/t2NY5fZisblhQq3dqfokkiaFZiqxEvLde4cOdw8cHhmvspay8ZURd7am5IWGXVTI80LJn7ChdkKVTHl629tIds2DbPB69sT8qKg75YomvUZm2dWW5h2nZoh8tWNI7YmA0wS3vAmZLLMjUylbmvM1W38JOOFlTqbAx+KgrsHDrcOHII4Y7UDOyOf3UlIkGbkFKy1LB4MXEShwFIEbh84WJpE01T45vYYW5X4/FqT//PrmxwdOXx8rUKm1fjmzphuRWfRUPji7WO8NGOpbnDrYErV0Fht6bRsjVGQ8ObOhLm6yp0DF1MTMGWBzWnMYkNnuWWgigJ7h1OGTsxyy+JCx+Q/vHGIQM5Ts1W6lXLAw1Zl+m5EXS+XKuM05eHQo+/EaKbN6lybw6GDtHOXRNKp5SLj/S22HZl0psV8p4WuGCiSiFa1qFcsZqrneS5JGI1GDAYDrl27hiAIZ1vwHwaZ/6RkMG/H1XyUNOUvfOELbGxssLGxweLi4ju+VxQlOLdWq/Fbv/Vb/PRP/zQvv/wy7XabX/qlX/pAI8rwBAnMBxlTzvOcu3fvsru7ywsvvPCeaeLjFpiiKNjb2yPLMl544YUP7boJ36IZ5HnOyC836MM0I8sLZqo6eV4QhgHXb9zik+fqzCyvI0oCuydGUfu720wGPT7z8edYmGkz8mNuHbokWU63oiMJAj2nXNibqercDV2OpiEVQ2boxyw2DbK8oBALNEXk2I2wFJFzTYtWRWNX17gxEli/0GHWKDjsjTjY36WqgC+q9BKFKwtNVrs2UZIx8UqwYZLnfGVjgBOlnG9bGInL7d0eT60vs1qv89rWiIom8/v3+pzv2vzfXprnYc/D1mRyBKI4I85zfvByh6GbcOvAoe9E6IrIrf2SHN0yS7M1WRCoakrJbev7ZQN/GLLasQjjjI2eh5/kFDncOvT44ae7fOX+iJtHU+q6wmcvtTmeKuUSpO9SiYbI1QYhKkWRYWllf2iuqhMX5TX4+/f6NCyVHInnltvYpslKy0TMU4aTCV++12fU8wglh0yx6A1UgrhgZxjiRCl9N2CxpjFf1fjG9oSjSYitSeRZQcNUmUsMVtoWYZKhyRIrLQsnTCiynFsHPll0n+HBIZcWKrx8YZkwzdgehVRNBVNTQAjpVFRUUWByQn/49IUOXpRiejF3jxwmhwmKBA1D47nFKq/vjCkobxDHTkTb1JElkY6toioSc1WNjZ6LG6W0bY2LswZhmmHIEofTiI+t1NBlGV2VmPopD/oOnucx3NvkyuocM/NLNEwVWYTD3oD94x7Xb99DyhMajUYpHEaFw0lB21JotVpnn+/pdMpoNDpD5p8agrXbbSzLeuRD3pMiMG9Hxfi+/5EJzE/8xE98z14NwHPPPceXvvSlx/KaT4zAwPsTgTiOeeONN4iiiFdeeeV74hUep8BkWcb169fP/LPfvZn/YeK07FYzZKKTDX+B8nRxZ2ufuzdu8WeeWeLi+hp744Agztkb+2xtbaHlIT/66U9gWRa3DiZc33NQJQFbV/BO6Mtf2hiwWNdL18AkZ6FulP4dNYPdUcjQm0JRYOkyqiRgaBLbo4AcGAcpmixRMyQ+fqHDN1QDs5WyWhX5v67uMZl4fGU05bgpYVSqrHQb3O5FiEKIG8VkuUDqDNmc+CwvL9Co1dkelx4uslQ6cR5OApwgZRzEtC0dP07pVlQGbkwQZ1zbm7Dd9xAkWKjp2Ho5xaVLIg/6HrM1nbZdDh9kRcE0yugWGZIICAV7Ix9LkxElgaOpz3+8eogsCxxNIuYqGpYq89ZBnyxykSKXc5dWeOMoxhIF1tpVXlqp8v95bQ9TV3CmEQ1TY6aqMfASzrVNKASqJ/YDf3C/R5rrvHRphZ2RzycvWFzfHvD1Gw/oR1C1NDp1C7VlY+oKYVrwQ5c7NAyJvVFE1VDouzGmJmEpIlmW8+p6k5mKxu/c6dGt6cwaKb9z/YDV+QZz7QbTOCNMMlYaBn2/NAt7Za3N/b6Driqsd8ql0Ws7I1bbNi8s1kreV1FwdXdMy1ZLBl5VJ80LvKTctDcVCVGC3XGAKMBqy2J35LE/CambKl6cMVtVuddz6XkRUVqw0tIpioK1lonvOUz2N/n+Z8+xurrKwIsZBwlLDYOF2Q6VWoOqIZOEAf1+n36/z15vA1HVWZtr0W41z0pjtm1TqVQ4d+4cURSdZTdbW1vIsvwOu+P3Klc/KSWy0wwmyzJ83/8T2OVHFY+awUynU65evUq1WuXFF198pJ7H4xKYIAi4evUqkiTxsY99jD/8wz/8NpzLh4lTgRGANMvxooylpsFbd+7zH772gGcuLLK+vkbfjbA0GVOM+dqDe2SCxA+++jEsy+RoGnIwiUAoaFgaTUvF0mSiLCfJMtw442ASYKsy4yClosuUTNyCvhtS1VUWTYWqrjAJYnaGHiMvohBErsxX8OOcUZCQ57DUNDB1hR964Ry/e7eP64fUGzIzSsTm/QccOBKbssrF2QqZOyFOU1598TxeKrE/DelPS0bZM7M2BQJ+nGGpAvf7CW/uj5mv6ViqQk7Om3tTKoqEpsmsNXWeW6jjRCmqIHDv2ME2FKK4pDFf7Fp0KhprbYuapbJx5NE0Zb7vQhsnSmkYMjcPXP7UepNvbI5p2yqzNYNDJ2LcP6YIfX74E5d4OMlYqsuIEjy7UMWLcj693uJLGwOWWwaWKrHQMDjXNpFFkb4XMfBiNvoBWV5aCsRJxlzN4J4r85d+6EX+8P6Q1+4f01ISAmfMoJ9gRhqeGePLLc53K/hxwYOey3rHpm4q2JpMlGVIlNbUIz9GSgLicZ/PPDOPqFncO3TRZZFX1lpMwgRBEFhpGWwNA67vTVmoGzhhiirFNC0TWRIRKNH/WZ4hCSJVXeJBz8PUZI6d+IxsHacZ1/YcqqoIRUGYZORFuVF/7EQkWclUuzxbYb5elrn2xwFRlrN3OKToPeT5i6vMLCwBoMsieSFxNC3ZdqfMPc22sW2bc+fO8XySMBwO6ff7Z5iT0+ymXq+jKAqyLNPpdM4OeafI/Pv37xMEAfV6nXa7TavVwjCMd3xOn5QM5lToPM8D+Mh6MH8c8cQIzKPCLg8ODnjrrbe+IzDyveJxCMxoNOLq1at0u12uXLly1ox/nETW09Hnw2mEn6RUNJmbN29yf+eQ559a48J8i/tHLogCVTHh7s3rrM+1eOapS8RZmekoUol2uSJU2B0F1E2FpYaJGyb8yNOzHDkxQZIiyyI1U8HMRDoVHTdMccMUP854er6GQMHNAwdBEHCClIW6giCKzNcUDqchNVNBEkReXKxxOAnJcnCilG5FI0pzXpovqB8OyAKHewfHdAyoV22IYxq6yaGbYKgiUpJSMRTWujZukHLryOGzlztM3BgvzqlZMnFWkGcxR27Mn15vY2gStqFw6MS8dTCkYciM/RIYevfIRRSgbqp8+kKbnWGApUroqkxFKzjXNvGinE+uqXxta8zRNKBjq9QNmZt37iGnPu3Zefb9gq1BwKvnW8zVSxRPkGQ86Puca5lUdIWVpo6uSNw6cMgpl083BwG6DOfbJpIgoijw5s6UpYbOf7vZ41OrdeZqpdeMU2vx/3pOYftwyHg84b+9sUdFE1loV1mda+LGSZmRxQlZJjAJE2RJoCkEHI8HLC0v89LaDIcnqPujccShE2GpEqIkYusKWeHTdyPEQsA2FBZbOnVD4cb+hChJmQQxN/ZdnlmoMAwSZER0VUIQQBZLEZqvGydZicHIS6nqEoosstqyeHN3iq1LaLLA2EuwdLnsIQoCbz084mB7k088vUajO1eW5VQJS5OxNJkHfY+hV07NvfuzHBcCWqXJ0zMzFEXBdDql3+9zcHDAnTt3qFQqNJtNGo3GWVnpNLtZW1sjCIKz7Ob+/ftomnaW3dTr9SdCYIqiOBOYyWRy9jP8rxJPjMDAt6bIvlNGcAqF29nZ4fnnn6fb7b6v5/6wAnMKyrx48SLLy8vveH+Pc4Ezzgp6fsZiljNnK9y9eZ1jJ+biM89zYbb8UEyjlNubB2ztP6A5v8zs3Dzbw3L35a39KU1DQRAFNFkkLQpuHzp0bQ1DLb02RAH8JMVKFTRZIEwKgjjFCRNEQeBzT3eoGwo9JypPwU0TW5PpuTGWKiGdlEgapoqmiOyOI67tThg4EQ1LxYsTXlisMw0zmjrs3++jLlbZi1QGUcTsaJcDJ+U40xE0k1cvzDBb1Th2ytHrg3GIoZSWwmEeMVc18OKUG7tTFps6UZZjIHHn0GF3HHChY/Og71HVi5K2nGds9j2eWZT55uYITS73bYIk59rOCN1L+b71FlsDn2uTCUJekGc5v/fNWyRZzrMX1znyUvZGEQsNgzjPibKcNMt52PcxVYnBCVcryXJeWKxhayoIBVle0LJUdoY+hhpzvlPhxr5DXhTsjMvHVzWZlVaZFURJxn+76dC0VJ5bXOUpzWXzeMLuNGSrt8kz9QLfrtJLNRTdIikKFmQf0Rvw7JXzVC2T7XFI3VT48gOHtZZNRSub7HVD5eHAY3sQ8KlzLeIs43zHJkwz/sMbh2RZRpIXrHdsPr3eRJFEJmFKx9a4fTRlexDw4nI5oHFj36Fjq3QrOpPAYeSnXJqtlsBJQSBJCvICNnoOkiCw3Lao4aOMHnLl4hpPnV8iPXFgPY2DSUiSlrYHx058Rk0eBwl745LdNlfXqZul+NRqNWq1GufPnyeO47NS2ltvvXXW+G80GtTrdSRJQlVVZmZmzqCSp3bHt2/fJkkSdF1HkiSCIPjAlh0fNk4PqZIk4fs+qqo+1mXwP+544gQGyhv228tep/2WMAz51Kc+9YEU/oMKzNsXN99tTHa6Bfw492sMVUakoKZkvPn669i2zSc/9jRpDsfTsBxlHBwQHm3z3LPPIJo1iqJAFsuxUz/OCOKM+bpOAYy9hNd3Rlzo2izWDXZHAUdOyHzNoFNR2BtFdG2N7XHIsRMx9SP+y5tHfGylSZSkFHnBetfmje0RUV5wrmWQ51A3FfpehCwpRGlKlOTUTJW+EyNJBb95/RA/8ImGPf73lxYZjVTEUUijYrKTNXn1WZu93oCv3h/xe6/d4ncVmVrV4vxsi7WuRX8aIYgislgw8mOOpiHdqlZmS07Ma1sjvvFwxGrb4sWlOp9Zb/PWwQQv8Ol5CctNk4mfEqQZiZ9w7MXM1wyapkaQZpiqxExN5zPnWwzdkK+8dZ+kEFicmyMTJQoyFuoaDUvFUGXqukKS5aRZRpgV3Ou77AwCGqZC3VTRlYi8yMklAUUUmK/rSKJEzVCpmzJenLJY15mpGlQNifs9D1EQMXUFWREpBHDjjMuzVSRZ4s6hi67XOFRhWckJRiNM/4hRKDHQoTqzyK6TU0w8nlmwGTgxplLaG7cshas7E2RJpGVpqIrIJEgI04yhnzBb07FVkb6bMHRi+kbEcws19ichcZozDWMowFRFnDBhsWGQZhkgEJ08R9NUqRoyD3oeh9OA2apOzVBZ61TYHHhk7og/2LjP933sWSqNFvd7PtHJ3tUwiYEy056rG0RJTtX41uc9zQrCE+p03fjON1tVVd/hJjmZTOj3+2cUjVqtdlZOOxWParV6JlBBELCxsYHneXz1q1/FNM2z7KZWq/2RZTan9yRJknBd930NKfzPEE+UwJw23NI0PROY0x2TSqXCK6+88oF3TD6IwCRJwrVr184GCb7TAtQHMR17r5AkiYqc88Y3X2NpaelsAzfNcgZuyL17G0TelMX1Z5HMCqosUjOUMxx6u6KhyyKToCxFlMgWjWmQ8gf9PmM/RpElOhWdnWHIzYMJyy2LKM2YqSiEcYahlpRmS5Vp2qXfjCAK1NWyrKHLpW/JzjDgzlGPZ+erfP6ZLtd3Joy9iL6bEvlT9o/GvLw+Q2y0MT2fT51rcOyEtGyNzUlMp9HmB15sczT2IAlJQo+st8VRAKpt42PQbdQYuBGmKvPZSx12RyEH05AwTpmpGzyzWGHz2MNLS0vePUVivi6z1DCYr5flqzd2J2W/QBQQRdgdevzGlz0sXaZjSNjuNj+4XudIaBKlGUFU/hvEec43tsbM1XVmqxoL9ZKovD0MWGuYPDdXoWGpvLY1xNYUpkHGXE1loaEjSSK6JHJxxkKRBERhQl7AuZaBKovsDkNaloqlS3RslUsnSPvNgc+n11r88OUOX7k/4M39CXONCmvnG+xsbdO1Qg4ilbdu7SBJAs2qjVfJubjQ5pmFCrNVnbuHDtf3HWYqZf+tbWooVZ1JkDBX1bhz6PKxlSZHTsA0SPjG5piiKBj7CXePHKqGwidWm7QqGhM/ZuKnPLdURxTgQc8jSjLiNGfoxeR5gamIrLVNLE1iSTFIJn3euL3Jn331eTrtNkVRXptRkqHKAneOXFqWxnKz/DwdRCEH44iKIRHEOZ2KysvL9Uf+zIiiSKPRoNFocOHCBYIgYDAY0Ov12NraQlXVs1LaqXhomoZpmhiGwerq6ll2c+PGDbIso9ls0m63aTabj51h+PbIsgxBEBAE4Uxg/leKJ0pgRFF8xw378PCQ69evs7q6yvnz5z+UskuSRBRFj/x413V5/fXXsSzrPT0ZHjch4PDwkHGYc259nfX1lbP+zs39MXfv3uNcTWLxyvMcuinHh1O6dnnx27rMyE+YhCmaLKDJEvujAFUUuDxXQZYECgQy4OnZKk1T4fbhlGmYkBcFVU2lW1VpWRobx6WtsCKLREmBLEKawdMrVXZHIaosMl/T8ePyVJvmBX6UsdQ0ud/zEMIxuC7f9/QilVqFN/ammIqErkj8Pz++hCCU+xxhmqLKMkGccjAtWJxvIAkFVdcj8l10v4eZH+HKNs1Oize3C+70SpTQTM3k2QUFN8xpWiJbux5JVlBRFe71fZwwQxJF1roWyw0DQSyHGNY6Fm1b5dahw/5gyvHOkM88NcMrz11kZxSgKyJfvDugaSpsDjymYYwwFfjm9hhtTeT63oS2qXKuazENMobTkCArmK8ZPBx43DsqeGa+xjhICKMMS5fQZInlhsHvbgyYq+tcmqnQsMo+Rc1Q+P+z95/BliTmXT/+6dwn53Nzmpk7Oc/sbJAsLFu2kGVsFyUc9CMVBv6AAOOEM8ZgMKbK2Lgo25gqwFQBriLY5YCEbEuWZEm72t3J+c7cHM49OXfu/r/oc87M3Z3Ns9oRpe+r3Tvn9ukTbj/9PM83zGajyGIYLyAI4T6yZ7h0HT/UD213yPpNVAnmFo8yJ0q0DQfJNVgu1blxf5VPvbzMRFrjm49NIUcTTKU1CjGVUssayGFF3rc/x91yl77pABGKcR3HC4hpYTT3udkMfdtFRESVBFwvoDPwWGuZLtc2m3gBTKVUHFfhxk6biYTOU/MZKh2L/1vqkhW6uPVtvuMbzpDJZPCDgPVan7gmMZHSqHYtuqaL6zMqMI2+E0ZWEH5GLcOlmHj77K5IJML09DTT09N4nkej0aBarbK8vIxlWaTTaWKxGLu7u6NcqHQ6TTabZXFxMaRT1+tsbW29Kn0ymUw+1g5juH8RBGGkgfl6B/MuYbjod12XO3fuvO19y6PwVjqYSqXClStXmJ2dZXFx8XU/8MfVwTzsYyaLMDlWGBWXbrfL8u3rFNNpzp07wUbTJKr69OwwMyOpy9R6DrIocLfUIR6ROVAI80jSUZnJVJRAgKMTSXbbFoIAnu9zeCxBRJXQZZH9hdhoN3N8KokohLPwfFyl0rHxA4+7u11cb3A3GlOYTEWYy0WJawq7bZMDhShib5cbWz3OHBin5SmMyRJyQkQUwu5hrW4QVSUm0mGy5p1yl6Vyh4SmYDk+XdPGcEX2T0ygK9McyWus75QpV6q8tNFFUWUyqSSCHGe75SMKsL+QZH8hwURKo2U4OL7PesPgy8s1+rbPsak4lzfaPLsvtLu5utVmUvMw7BoHDk0iJ3PcKXXJJVQ2agYxRWK50iUf1/mmxTypmMZuy+DLy3V6tkvDcAYWKgE9y+PETDL0M7N8VFng2k6bqZSOrkmU2w7VXpe5bIT3788R+CCLAildYaNphF5zmsxGw+BWp43pBqzX+xQTKrNpnUbHYKe2CwmV73j/KVbrZmiUKYnkUxn2TxW4stkiUehTbnZZ3trF7t+n52k05Cj7JzJc2bUIEMjHNBzXR1UlJjM6lW7o7xbTZA4UYkxlInzX6SkMx8d0PCQBlqs9UtEI67U+pht2F4tjKYpJjeVKj2JSZ6Xa4ytrTdx+iz4dvvW502QyGXq2y2bDwHQ87pZ7PDWfZiwROlM/PPoqJjQiytB0MrSweVyQJIl8PnQACIKAfr/P1tYW6+vrBEHA9vY2pmmSyWRGxWNYoGZnZ3Ech2azSbVaZXNzE0EQyGazo4LzTvclDxOE3o5NzJOOJ6rAQPiFuHnzJo7jvO19y2sd940KQRAErK6ucu/ePY4fP87ExMSbOu477WAeHsWdO3eO559/nlZpHc0v4jgOX750g2xxkgPzs0iSxERKp9Z1iCgytu9za6dDJqYylY6giALbbQvL9Tkzm2anZSBJIvm4Sq1ns9Xqh5HCioQPPLOQxXLDC3UhodE0RHqWS892B/5eYdZK14pQ6dpYrktck1mrGczno1iuz/MrDRIK/M8/vcn9ukM2l0GUZWzPx3YDvuFgOINfq3Vp922iqkxhIBytdUwSuoLt+aSiCrttg522xVhKhwA6jkgyN0a6MI6RaNDrdtC9Pssbm9iegCFpjOs+mqzylbU65+cyfPBQkS/cqxHXZU5NJ9lqGuwrRJnNRvEC+OTLyyxvN/nQqRleLHvItSrTmZAVti8Xo9Q2MByf6XSEg+NJbpba3Cx12Wr2iaoK9b6DadsUEzpjCR3HDTBsn2JCJa5JaKrEXDZGUpcJAp/lao/dtsWJqRR/tlTh0maLp+bSzGQiGLYfGknGNVzP52apy27HQBJSHMzrZJ0yQirKN51dpGV6A4qwjyZLmK5HuRIux6WUzom5Irttk/0pjU67xaXVMreX1uhaEI3orJdE1EiM/YU46YjCVFrndqmDEIj0bJfPLVWZSukcKMZpGXBnt0dEURCD8Ltxv9JDEUUiqsRO0wRgo2GQ1CWyQQfocOHsCbZ6oEcdTDcMzvMDKCYUeoMI6lREwQ8eLPy1wci1bdoEvoAsPZ5AsVdiuC/d3t5mYWGBubm5EQ367t27uK47GqWl02lUVUUUxdG4DMKRfb1eZ319nVu3bo1Enrlc7m11Hw/vm9+Ok/KTjieqwHQ6HSzLQtM0nn322cdurf96BcbzPG7cuEGtVuPChQukUqk3ddx32sH0ej0uXrxINBrlwoULCILAqVOnKJfLXL58Gc/zKGbSdFAxnVAjpEoi6ahCVJVwPB/b9YgM3GbTURXLC0hHZJqGQ0JXMJ2wAApApW3hBgG1jsNCIUpUEYnrMgl9oCS2XUqDLPV0ROF+uUu9F0YlpyMK87lBVkXXZqNuUO87tHt91rZWMVApjI0zLsnM5SLUehaTGY2+7dMybVYqffYXoiQjCuNJjds7XfYVQtV/07BZKrXRFJnJJAR+gOUGfHG5xvv35zhQjEMAXTvJeEpjYqfD713ZpKC6bG6sc7vqs2uLlOttvvupeY5NJdhsGlzbbnNsItRmtPoOpc11Em6Ls4cmqTkSfdvk2GSCg8UEmaiM5QU8u5DF8QMOjcX406UqhhU6ErxvXw4fuLzRJJKIc2Y2jSZLbLUMPD+ga3mcm0uTi2uh/Y7r0zZ8PnQ4x0bDQhTADQQEfCzHR41L9AIPXZaodEP36flslHrPot83eeHqMu0gQjKbDzUoEZlcRMULYLtp4AYCCV0kE41wfCrF1a0WpY5BRBGZK+b56HiRWtcksA2WtqpUdku4tk0yEcVu5yjbCqoa6n8cH65vtbi10yahy2w2TFZq3dDtuWnSsV3etz+HM2DJaYqI6Xh0+i710gYYLT749BkCSWWj0iVnOEykdDw/dGX+4/U6s30HQQio9SwyERXD8dhuGChy2OH2LI+u5ZKMSCR1ZWRf8rhGRu12m4sXLzI7OzvabRaLRYrFIkEQ0O12qVar7O7usrS0RCwWGxWcoTYlFouNdDq2be8ReUqSNHIUeCOR5xAPdzC9Xu/rO5h3E8vLy6iqytzc3GOn6r1egTFNk0uXLiEIAs8999xbWuq9kw5m6K00NTXF/v37Rz/P5XJUKhUkSeLgwYPh0nJ9kyulFToTWQqFAtOFApqm0TFDoeTd3Q5r9R7ZqIo8oJtGFYmtpoUmCVhO6IB7aDzBCysNoprEdFonGVHoWi6Vjh0uxWWJiBKOzW5st/GDsIiGkbdhHs1kWieuyXQth/s7NdbWNnj/Yp4gOYYkQC6uk4oq3Cl1Wan26VoeG3WLyUyUTEzn6ESCq1sderaD4XgcKMQRRZFURGMsqaPIAaWWzZ3dDhOpkJb8peU6ohCgSBIEAlPZKGcX8iQ1Bcf1aGgtJpw+MUx+78+uYgkKuh4ln4kjTibYqPf47MUlqp0+Zw/OU8gmmEjqCPjhTqjURhAjpHSFhCpT7tq8vNYiqskoA+fhA4UYnh92K5br8vJGk8VCnL7lMZEORZcr9T63Sh3mczE6lstKuUff8dhXiLIgxljIRQmIcKAYp2+HmTvZqEpUk4gqEqu1Hq7t0q9WiGdSpOI5ZrIRVms9FEHgqYUsn7lTwQfmsjqmG5CJqZTaJp4fcHYmy07LwHA8dEXgfqWLLEmMTU6yf36WnAbNZoPr6xXulrpIskj2YIHF6SLmeALbD2gaDjFN4viAxLDRMBAEgUxMRR1ERowndNqmQ2dnlZWdOgePHCESjdC3PLIxlfFkuKPr2S6G7ZHQZERZJKYoHComSEfDjsZyPXJxFcPxKcY10lEl/IyB7ZYJBEyl3/nYqN1u8/LLLzM/P//IEC9BEEgkEiQSCRYWFrBtm1qtRrVa5ebNm2E0xkM0aFmWR+O34Qj/USLPYXcTjUYfWShf6aT89Q7mXcSpU6d44YUXHrutPrx2gWk2m1y6dIl8Ps+xY8feMj3x7XYwQzrl4cOHmZiYCNX7goDruly9epWe6bD/2BlyqRgRRWJidgHHNGg1auzs7HD79m3kSIKJYp54OoflCGw2Dfq2T1QRkUXYsH08z2c8HUEhHEX0LBcx8FBEFV2RycU0+raH5fpUuzYzmQhjKZ24KvHZuxXiqsLJ6VS4N0lFEAWwXI9qz6LbrPPyrXUKuSR+YgzD9mkaDpYX0pgvzGd4fqVOo+cgCgGm65OPKQRANhoWqCO5eHjH7npEJAnb8xAEET+AuBouwk3bpxDXuLHTJqEp6LLFdCbKobEEQRDw4mqTYjrGNx6YRZYkau0e19cr3C810Nrb3L1eomZCUoTE7BRGIHJoLEZKV2iZocNy0/BYLMrc2G6jKRKm7bLTtnhmIcNYQsf1wXR8Sh0LRYR943GiqkI+oYYZ8r6PF1VYLveIKAI7LYtvPJRnvdYHV6BrhdRoP4CtRh/HCzg2meD2bmh0ebCYQZJEkrJH26gzc2CMkqVTiKhEFIln5kN6/GYjFI3mxhMcHU9Q79tsNS3SEYlsRCGqyyT1ONe2OmSiEvcrBidnksxlItR6DplkDEFRuZDJE821aHe7OK7FrVs3aZk+jppEsdIUcmlaTuiUndJlql0bWRSwXR8/gPV6jxu376J4Bt/67BlEVUMWBNqmi66IGE7o+iwO9FjHJ1Ms5GOID11k0xGRdCSFHwR0LZNkJIzNHqJve3se/3bRarW4ePEiCwsLzM/Pv6nfUVWViYmJPRqaarXK1tYWd+7cIZlMjrqb4d7kYZGnaZqj7mZ44zx0FBjqdGBvgfk6i+xdxtsxvHyzeFSBGaZeLi4uMjc397Za8bfawQRBwO3bt0e6mlQqNVIU9/t9Ll26RCKR4MzRE5heMJpVxzWZvhAlKiocmZhGFXyWN0us75Qp3VplKiUzlikQlbJ0XQULQppxNGQKpaIyS5XQLkVVFHLxcExV6Vjc3e1iuR66HMP1Q+KA5fl88+ExYqo0svEYYrtp8PKtVTq1Xb7l9Az32yIxXWEsKbFa65MedFExTeb8XIaL603ulbsoqojhhaI6VZaYTEeYyeqIYsDNnTapqILhONzd7RHXwxwZZ+BOEFVFnlnIsFLt0zJd5kQoxFVWa31OTaeIqyJfXmkQ02S+9WgRQVbC0YYa8PyVO0zFYS4hsd3ZpN2PsbLhM17IUOq65OMKk6nsSD8CoSN0ANyr9BEIOD+fptazmc1EmMlEqHQsql2LjWYf23G51TSJKAIdyyOqyJydTXFoLE5UlWj2HY5OJAgCyMUVrm65xCMuXctlIqmzLxfhRqlLu9FEam/z0acWUGIZyit1ttsGk6mwI1QlEcv1SUcUVqp9FgtRxpJ6SEG/X2cypfHcvhyuH75fn7lVZb4QJR9TWav1mRi8n+W2RSaqsDgWJzGXRpNl+raLbRpslCrc2ShxdWkVXdNYS6XZN5FDwGenabCvEMe0HFaW7tI3TM6cOEbZ8JnWBQQB1uo9ZgfvnR/4ZCJhHHJEEV+zWIiCwPTgPW0aDhElpNlHVIlsVH3k77xZDIvLvn37mJube1vHGLLM0uk0Bw4cwDTNUXezvr6OLMtks1my2SzJZBJJklAUhWKxyPj4+B6R5507d7Btm0wmQy6Xw7KsPU7KXy8w7yLerF3M28HDncbDrgAPp16+0+O+EVzX5cqVK/T7fZ555hk0TRsVl3q9ztWrV5menh7Z/idf8fveoNiIgoATiHh6kvx0kn2LIvVGyOK5fO0W1T4o0Sgz41l29DjxqIIgQM9y0WWRM7PpkAVFmOII4HgBgQA3tzuATz4eCjXz8b1/4L7vs7uxTK1S5tDiInIkxv/vdHi8nu1SaltYjks+prLTMmj2Qz3OXD7Ghw7nMBzQFJErGy1UWSQfC6nRz+zLocoiO60+tudT6/nM52PsL0axHZ/NhslCPkpCl2n0bVqGy71KH1EI6FouTcPn+lYbTRE5Mp5AV0TaPYPy6jrz+ThPnTyCKAgotSZ2r02lvMPde/fxZJ2JfJZT+ydI6BHiWrg/OjSeYH8hRrlj4XseAiIxTSCqSkiiwAvLDdYbfVYHTKrpjM6xyThLFZPptB6SLZrmwEtNxvECuqZLOqLwDYtZ7uz2AIFT0yn+5HaF2+s7bO3UuHB0jnOH52kZLk3TYSyuIcsiq7U+2ahCQpdHI6xa18YLIBNV6Jsu617AWLKPAMRViW88HDoyjCU1Nup9AFQ5vJgLQmihWkzoLFf7dAyHmK4SzRQpKGmyushmpUa50aFTq1A2BXbTcfLyBDvb26QUeO4D5yj3fDKqiOV6+D4UYirZWLgfnExHafQsRCEgF3v12Llnu9R6Nik9XPxvNg2SusJsNoIoDEaH6tunKw+nE/v373/L0eWvB13XmZqaYmpqCt/3aTabVCoVVlZWRqOxochT07Twb/kVIs9Go0G5XKbZbLKzs8Nv/MZvsLm5yblz5x7beb4S3/Ed38Hly5cpl8tkMhk+9KEP8Yu/+ItMTk6OHnP16lU+8YlP8OKLL1IoFPgH/+Af8I//8T9+28/5RBUYeOeplq+FoQ2N4zhcuXIFwzDelAvzG+HNdjD9fp+LFy+iaRoXLlxAFEWCIEAURTY3N7l79y5HjhzZ82F3TJd6zyKmKeRioSOy5fqkItDou5RaFpPpCAgiJ/dNsVrP8NzMPtbLdZxek93yNpWuSzYVI7V/glOTRXRd4/mVBttNg8Vi6KY7lQ5n/KbjYwyIBB3boWd5QMD+QjgX3m32uHbzNlEsnjl7gq2OQ79l8OKqz62dLnFdJhWR8TyBZt9hvW7i+h5z2Rj5uIYoSBQTMkvlLl4QsNno0+jZPL2QJRVRkEWBdQ8OjiU4MhYjOqDQ9myPO+UutheOyiZSEW6VOniDseKJqRSfu1MmGZVJRVRs1+XllSq17U0KuTSnj+1nfyHOZsPg2q7NZCbNU2fnqbX7LG2VKTfbfOGFHaZTKulolkotjiIJJHSFhK4wm91b6luGTSYmk4ko+LkYJ6YSFOMadcPFclws28OVRHY7FrIoENdlupYbmnXqEqYTUOvarFR75GIqCa9J0qpz6sIiaiRGuW2hKRJ/brHAaq2P5bhEVJF63yYZkUlqCn3RBUHEdgNu7HQ5P5+hmFDZqJvUehZHJhLIXkAhoRFRZGazUTqWi+uHSaM9O/wu/dn9OoWYiiQKxDSJ8aSGKHYRBYHJYp6DM+MkNJm13QaC2eGLl+/gez4HJ9OUSrskMllqfY+MLnKvYpBPqCMrHcv1aPRtigntVTcqjuezXjPYbPZDQ9KBHkiTxZCCHX9nncuwuBw4cICZmZl3dKzXw5Blls1mOXToEP1+f2Rhs7q6iqZpe7obQRDQNI2JiQkmJye5f/8+nU6HZrPJF7/4Rb70pS+xvLzMRz/6UT7ykY+8KSbrm8UHP/hBfvInf5KJiQm2trb4kR/5ET72sY/xpS99CQh3SN/6rd/Khz70IX7jN36Da9eu8Tf+xt8gnU6/7TwYIQiC4I0f9tXBkMnleR5Hjx59rMfu9Xp84QtfIBaLEY1GOXny5GMhEly/fh1VVTl48OBrPqbRaHDx4kUmJiZYXFwc/TwIApaWliiVSpw6depVkaS7bZNG30GWRGaz4QK1ZztIohg6LdseuiISVWRimsR2y+RuqUdMl+j0bXwBNMFnrVQjFfSJ+D1EPYqlJOn4Os8eHGM8GXYq9Z7NeFKjZ3u0DQfP92kYLvPZGGNJDdM0+b3Pv0zXFfmO95/C8GCjZtC1Xep9m/vlHumoytHJOKYdMJuL4Ho+63WDs7NpZFEItRWiiKaIVLs2K7UeG7U+xyaTiGKYDb/bNumZLvuLcRw3IJ9Q0GSJzaaJ63lsNEzycZXjkwleXGlycDyOKou8tNbAsF0yMQ2r3+fq3Q3GxzJMFvMcKCY4O5vmXqXLV1Yb2K7Px85OIgoibdMhpkqUWgZmt02lWufmRg1FgoWxFD0xztOHppjMxPji/RovrjU4PBYnG1PZaYUU60NjcWIDk83NRp+krlJIKKQiKo7nMZ6MENckbu602W3baEqY4ZOJqkTMGvc3dzlz4ihz41nahhNm2EhhiFu4wwgZVrosMZ+P8vtXd2gZDt99for/c32XiaTGYiFOpWuz0Qjt9AMEupbLfDZKpWOyXOsxntT5cwcLIR2/2qfvuNR6LjMZnYmkRtf20WSR3U4Y7HZ3t4Miy0QUkZ5lU1m7R9+TuHBsP912i3K1it3r0ApUlno6R6czTBUyoQVMUqfetzEcDwGB+Vw4zhui1DJpmg5BQEjXdsJ9Sy72zgrL8O/t0qVLLC4uvqvF5Y3ged6IBl2tVrFtew8NWtM0bt++ja7r7Nu3j+/5nu/h+PHjZLNZ/s//+T9omsZnP/vZd+38fu/3fo/v+q7vwrIsFEXh13/91/mpn/opSqUSqhp+Dj/+4z/O7/7u73L79u239RxPVAczHJHZtv3Yjz10Ki0UChw6dOixUR/fqIMZmmQeOnSIycnJEfVymCljmiZPP/30I832Ylpoo69KIl3TJRtTUeTQ0l6TZcZTOrIoYns+qiRSTGg0+044+nIl+pbLU4tFJjJJpjMaMRlur5WoVKts7uzyO9sbTBUyxONJUqk4XcshHw8TI7eaBumIQlyT6HQ6XL58mflimp5epGH61LphATsxlaJtOMxmY3iui6bIHChG0CSRP75VRhAgqoZq9p7tEZUFlis9ptM6s5kovh+wVO4xldY5PJ5gPKFR61ksDdhX5Y6CqoiU2haSIJCPq0ykQt+rUzMp3MDHcgP+3GKB5WqPTqtBubTOvtlxlGiMVFRFFAXu7naodG2OjMXxgoD/8fIW40mduVyUYiKB64OtxJhdSOMlimSVgJTQ4+rqLv/9/64znY8TaAn6/YCGoaHKEglNgSAgpSvEdZkL8xkuzGe4stmkaYR2+bos4ng+V7d6bDT6nJhMYjg+cVVmY20F02ghFWZpOyEtPB1RmMkErFR7bDYM5vMxZjJR+rY7opufmk5iuz5rNYPD4wkUUUCWRTKx8IbJsD1Waj1imoTleVQNB8cNaBgO1a6J64Xj1iMTSRwvQJXF8LO2XV5eb7LbNrGdgHwipJpX2ia1jWWK6SinDhwkH9dRIxEyxQkmkwp/dnOd7laNdmkTv7aJlkiRnClSSGfYaQeU2gYCAvm4hiSGf3eu76OJAlFdYacVeuwl9Hd+w1ev17l8+TIHDx58VWrjVxuSJFEoFCgUCqM45GGxuXfvHrIss7m5SSQSIZlM8vzzz7OwsMC/+Tf/hp/+6Z9+VyY5Q9Trdf7rf/2vPPfcc6Mb7S9/+ct84AMfGBUXgA9/+MP84i/+Io1G41U3wG8GT1SBgTefCfNmEQQBa2trLC0tAbxjy5lXQhTFR57vcM+zubnJmTNn9tiDG4bB5cuX0XWdp5566jU7qbgmE9fkUQGBcHEfUST6toc8YLwN/812g5BhFFPRJRE1I5CMyJyMJfGDgPuVHrFMjoML0/RjO5RqHdr9Dss7a8zGwMyn6GazaJEE+8eSXN9qcW2lhFPd5MSBaY4dOsDLa008P+DQeBzD8ZhI6Uyk9FBzstVClgMmkzrVro2uhkVOkQQ6posmi7y80WIqrdN3fApxhVJLZH8hykwmQlJXQgpsKgzwctoWC4U42YgU0l/jKkfGE0ylw2IcUUQubrSYSOlMpXWcZomvlDeZW9iHLWnhbD8qIQKNfuibNZGOcGm9ieuHAsjZbIT1hkExoVNqm0ymdSpdm4blUvHjnDg5Dht1ZLfPtNJH6dRRW01sL03b15kfz4SK+MFuSEBgfyGO6/vc3e3RtVwMx+d2qcNa3aBn+XzzoSwvXrmD6pmMHzqBJ0gIwN3dLvW+je9Dx3IQEAiCgBvbHWo9i8Pj8fB1BISMsKiKhMBsNooiiUQVCcsNWG/0iekKB/JRyp0wwjimSGw2DC5vtPmmwwWKaOw0TZqGw/GpJPWejSgKHB6L0zUdqj2LdEzCsmzu3b3D4niGw4cPMpmOYjoeuiKT0GUURUJNpDl1OMNTcynubFbZKFW5t7KG7t/GkhOU/SjFaBHX85HEcKciAJWejdW0sD2XE1NpigmNq1stYqrM/sJbH10Pi8uhQ4eYmpp6y7//bmIYlDbU0Ny7d4/19XV2d3f5pV/6JTqdDul0mkOHDlEulykWi2/bd/H18GM/9mP8u3/370Z74D/4gz8Y/VupVHoVhXuYs1Mqlf7fKDCPc8nv+z43btygWq1y/vx5XnjhhcdqrQ88suMaUo273S5PP/00uq6Pikuz2eTKlSuMj49z8ODBN0WLVl+hahYFgbgWfnTNvkPfcQkCUGURBFivG0wPxg5Luz10Jfx9w/FI6QqKJPANi0XEg2NIosB6rYfZ7xH3u/zu1TUMw+UvHMuwWg+o1hvMz83ixwtstywm0zoRVSITVTFbJjtNk4m0TiaqcGwiyVbLYLnWYzKlU4wrFCcSiIJItWvgej7ltonn+eQTOrWuhR9AIaGzkA/3PDd32liujyoJHJ9KcmwiwVqtDwIkNJl7lS4d0+XweIJG3w0Ll2RT2VyhXK7wLc+d5WrZRh6wrQQhpEznRJXtgfp8NhclH9c4Npng4kaTdFRlo2kgCgGuH+p8aj2bvuVh2h66ppHPJSikNIS8ieb26TRr7GxscKu6wV09yYvxBKIa5cRUikPjoSgvE7WJKBK3Sh0USeDIeIKoIvB/vngJfJ/M1AIxXcNyA6KaiO365GIqy9UurgfZmMy17Ta+HzA5cMJO6uFr0mRp8P8ylzaarNX7BEG4tI8pMqosYnk+puPj+j5nZtIU4yr3qj1qPZsDhTjXtzpYrkepFYpvhSD0AlssJri61eLqWgO7uspcMUNhep7lSp90NBSR6oqE4Xj0LBcJmEjp4T4ikyISi9E2p5iMS5SrNZTdKs2V67y4o5HO5ink86STSdqWQjoC2VhitHPpWx6BH7In3wpFuVarceXKFQ4fPrxnj/kkYm1tjY2NDZ566imeeeYZ/uiP/oh2u81HP/pRfvu3f5sf/dEf5R/9o3/EL/3SL73hsX78x3+cX/zFX3zdx9y6dYvDhw8D8KM/+qN8//d/P2tra/zcz/0cf/Wv/lX+4A/+4F3zP3uiCszDXmTvFEPxJMCzzz6LroeBUY+bofZKFplhGFy8eBFFUXj66adHIzRRFNnZ2RllyjyO2XAQDERxA2aTpog4XoAshf+diMj0zHCxGyAwH1eJqxK3d3tMZXRSg5HE4YkkXStKuZ3izNEUjm3iuxXGggbJBChGjc0tl3Y6zcGJLJmoShAEfP5eFVmAY5MpDo8niGXDpfz1rTa247HZNFkq95lM9zk5lcQPYDIVIapJJDSRK5vhaOzI+IMEv0xUpW+7HB6PU+s5lDsWpuuFiY6uz07DIhdVqHYtdjsmlu3yyRv38Fyb7/nASbLpFF6pQqljMZbUiGsyWwNCQ71vY3k+02mdyZROVJXZn49Ralt0DBfT9VEkiUbPIaHLvP9Ami8u11ithw7CkhCw1bKYScepawrj+wp0+wab5TrN3S0KmkfOShGxxygUCuzLx0LKt+vRNlzmMipfeukyoihRnFlAkiRWan0IAuIRmQtzGURRRBIFLm802Wi4pCIKLj5nZ1Ks1Pp4QYAqSiR0gYQedrL1vo1p+3hB6Opwbn+OtuFgewFeYFFuW+y2baazEdabBqWWxWwmyjcs5ri902GraWDaHomIRFxVyMc1IoLH+tYKh2fzqJlJOpaL4fo0DZv1ehgqZ3s+HcPl4FgCLwho9B0KcY2OJSGKAlXT59iBeY4dmKfeNalU69zdLHN97RopOUCMpNASKRIzY0BYYPYVolQ64TmPp/RHfe1fhWFxOXLkyGNdir8bWF9fZ3l5mbNnzyLLMt/zPd+D67p8/vOfJ5lM8i/+xb9gd3d3NNJ/I/zwD/8wf/2v//XXfczQtQAY+bIdPHiQI0eOMDMzw/PPP8+zzz7L+Pg4u7u7e353+P/j4+Nv7YUO8EQVGHjA9nonGHLfc7kcx44dG/HMH7fz8SuPOVwujo2NjZb+w/C0e/fusbm5yenTp/dkyrwT1PsOEymNi+st0hGZiCoR12ScwUgtpsoEQTiOiA06nlLbZKnc5tJ6g794ZjLMnxEE2obDrZ0mng9yr4YRhCy7riuwubPLpZUy1+/vsJySWJjI0yaG5Yh0HB/DefB55WIqmiyyWg1NI7caBgKhoeN8LsaHjhSpdi2+slpHFgWkgalmVJFQBwwiXZHZaVn0LY+pjM5UOsmxySSfvlmmaztsDgLJVDFg6f4KjuPwvhOHqJsBv/mFFWazEaaSOvW+g+uHNy62F5CNqvhBOLoSCEhFFeayUZYrPTzfJ65ILJW7zKQjTCQ1ql2bQlylb3koGYFK1yUAVmpdZCl8jVMpnW88s4gsCPiuQ5oelUqFL165SyoeZWEyTzydZSqu8LnnX6aQTvCRsydomR61nk3HdLi61aa2ZdHsOyOtSlQR8QKBsYRGTJN5ab2JJkvk4iqVjsVYctAB+mH4W0pXCQSflKZi2qEFfEITSUVkJlIRqj0LSYRzMyl2Ow5dyyUrq8iyQKllMpmJEFclPAJubVa5f/8+E8UchxcXiWkSux2LtuGy2TAx7NCaKKQi6yiSSLVnYwc+kihQ6Zhs1U1m8xFKLTN05fYCGoHG+PQMIrMkFB/JbHF/q8Kl0irr6QSFQoF4Kks+phPV3tylqVqtcvXq1a+J4rK5ucn9+/c5e/Ysuq7z8Y9/nHa7zac//WmSyQdMxbGxsdFo6o0w3PG8HQyvW0OX+WeffZaf+qmfwnGc0ZTnj/7ojzh06NDbGo/BE1hg3umIbHt7mxs3bnDgwIGRFffDx37ci7NhBzN83sXFxT3z3yAIuH79Op1OhwsXLjxWIVU2qlDt2qhyqGnoOz6aLBAE4UW7aTj0LBfHC5gaBJD1LQ/LCQiAK1stjk0mSWgKthuQ0iS+cOUuEwmJb/nmCzhIRCSfIJrhxJE0tbaB4pt8caWC7lXIRmCxmCUZaGzWZSKqSs8Jn0+UAF/gxGSSiUyEtuHStRyWqx7Vno3rw9GJ0M35fqWL5wWMJ3U0RcL1Qxv7VEQhE1VpGg6bjT6KCMmITNt0qbQNmht3KMY1njt9GMcPqPdsWqaD6+lkowo+4euu92xEAU5MJdntmDi+Sa1nI/RtbtoePdtDFGClYyBKIu/bn6Vve7QMB12WODWVom7YHBuP0XNC65OZdIT3H8hjWg6VbmjsOJGKMp3JMzc3R3G+y+X7Ja5uNXGXNtntefiizPhUepSPUmqblFsmru+PVO4b9T6uDxNJjUREDWMVdjvstEwWcjFMOxyjFRPq6OalYzq0TZuDYwlKLZM75S6Hx+LE1NAAVZdF1huhi7Usi4giXN1qMZOJoMsSzyxkaJhhiNil5V3WV9c4eWCCmekZMrGQxacpEpt1AwSYzei0DJe2FcYtJyMqjZ6N4/lMpSNc3WrRdT1qPZeO5DKVjiIJYRyB6fhMpXUimkwqkt+TTnl/c5fa3VU8QWSymGf/VJFcLje6QXwlKpUKV69e5dixY2/7Dvurha2tLe7evcuZM2eIRCL8lb/yV9jd3eWP//iPSafT7/rzv/DCC7z44ou8//3vJ5PJcP/+fX7mZ36G/fv38+yzzwLw8Y9/nJ/7uZ/j+7//+/mxH/sxrl+/zr/9t/+WX/7lX37bz/vEFZi3u+QfUn7X19c5ffr0I6v6u9HBiKJIr9fj5s2bnDp1imw2OxqJWZbF5cuXkWWZCxcu7GFnPA60TZekHmocaj0bXRbRFYlMOiwYWw0jdDT2/BFTq963B8mMPmu1PjtNi/cfyOG7Fo3NJQ4VoiTGpmiYAQEOGw2TsYTGcqXLfD5OTM8gRuIICJwsyDTrNTbWVthsmPhqnGIuxdH5CRQ1ih+EHc3NnS5JXWK53GUspVPrWMxlI/gBbLfCTudOJRRYPrc/x3bLJK6GHY3peHi+jygIzOViyLLE7c06X7m2xPm5FPnpSVRZpNuz0RSJbzs2hiSKJCMy9Z7NTstCkQQkQUBXQpfjyVSE9brBlc0mraZFIa4SkcMM+pNTKfq2T8/yqPcc5nIK37CY4+ZOm+s7LU5PpfB9UGSRbFTlv94osdM0+ZbDRTIPqc5ncnH6zhh3tiQso4MSTYWCyfUNetv3aYlx1g0NSY+gqxqTqQgnp5Pcq/SJyKG1jO15pCIRUhGFpCaTi6uMp3Tapku956ArIaGjIgpUuzaKKOL6YX7PMIhuqC/KxlWKCS20bxFgu23RszzOz6XRZIWoplBvNGhsr/K+4/OcPbIvFE8ORAyqJGJ5HndLXSzHRZIkbu20cVyfp/dlqXUtsgOK8f58nErHBCEc4w33K9Ve+NxjqXBc3ew79GyXyZTO5OQkajKP47q0Wm167QZ3797FsiwymQyFQoF8Pj9iW5bLZa5du8bx48ff9N3+e4Xt7W3u3LnD6dOnicfj/I2/8TdYW1vjM5/5DNls9qtyDtFolP/9v/83P/uzP0uv12NiYoI//+f/PD/90z898l5MpVJ8+tOf5hOf+ATnzp0jn8/zT/7JP3nbGhh4wgrM21XyDxXyvV7vdS3+H7dLgOu6rK+vY1kWzz33HLquj8ST7Xaby5cvk8/nOXLkyDuOYPWDgL7tPVjuGw66LIbUX1VCk3S8wWK0bbqhBqXRpxhXiWsyhXho33KgGCOpheFkYbEJqDWbLN++yb6pCRb27+eFlQY3d9os5KPMZSOAwERK5161z0TSJxvVGEtqaLrMYi4MaXp5eZcXl3bY2K2xvr7JZDbKsfkJNvtJ5rJxrm232WiZLBTifPBQkqbhcG2rxcWNFkfH4xyfihNTZRo9h+2mQbkTRjn3LIeu7ZPSZeZyUXD6PL+zxfxYBiWVx7R8SoFJvWuzvxgnqim4nke1a4esNBEUKbS7CYKAjYYRLvG7NtWuQy4eRj93LI9zMym2W+G4IKEr5GIqs5kIS+Uu9b7DVCrCSrVHKqYRUSV22xYxVSGlh893aib07Fqu9ojIIqVag6V7KxycG+d4Jo/pBjy7kKHZ6XF9ZQenXqVZq5KOqQjpMS6tmMSiUfYXU1zZbNHqu5S7Vqja79ih6j2iktJlKl2bdHQYNidhez5r9T65WKj2H+pJKh2LStciqcvIokhq0PWen03hDfzVsjGFexslNpeXOHZwAVtLYjoeN3e6eL7P0ckEbcNlpdqnaTiASEpXODSWwPHDjkoRQ1duAEkUOFCM4wfsyXaJawoTKYmW4Q7MLl0IAiqdkGQwmYoAKhPpKDA+ym+pVCrs7u5y586dkY6tUql8TRSXUqnE7du3OXXqFMlkkr/9t/82t27d4rOf/ew7chB5qzhx4gSf+cxn3vBxJ0+e5Atf+MJje94nqsDAgx3MsP1/I/R6PS5duvSmLP4fZ4ExTZOLFy/i+z6RSIRIJDLqXMrlMjdu3Bj5Hz0OhkataxMAEUWiY7r4gc+N7Q6aInF0IomoCrQMh83BKIQBeyo+UKPn4uFOIaFLoSuuEt7lN+t1tu4uEy1MI6bH6Vlhx9Dsu0xnwrvFVERms2GgyuGu5tn9OXQlvMDutrtEFYmpfApR1ujZLvWuSQxr4L+0zDVPwVSSJPQYSS3U7YwlNFY0mYVsBD8QOD6ZotQOabOSIDKXjdA1PUodi3xMDUdg1Qrrd27w/33gIGqqwL1yN7S4ISChB/g+5KIKlW5AEPgDanJopVLpQrltYbgeN7Y7zGZ1srEw5Gy5avDsQhrXh0NjMXJxNTTa9EKnAEkUmEmHrLx632anaTKb1UOLm4UMrb6NLIWfS6hzCtit1iitrbAwO0kqkwdBoNEzWKsbnJxK4wgy0XSe6aSK0WshGC2uL21h+wJGtYAhxlAicXpWGAXteTCR1khHFF5abVDr2/y5xTxIoA8SM8NIYpmFfHijs90yMWyXzaZBMa4znQkLik9ATA3z7ht9h+vLW9Q27nPw0CH6coJWx6Latdls9PACmEhpWK5PUpeZzkQYT2losgT4OB6DfUx4KbFcj5ZpY7oi40mdRt8edXazmQgtwyUVkWkZDqmIjOWGdv7SI/TegiAQi8WIxWLMz8/jOA7Ly8usr68jSRK3b9+mWq2OTCQftwP7O8Xu7i43btzg1KlTpNNpPvGJT3Dx4kX+9E//9IkvjI8LT2SBgb1BPK+Fh+3u3wzl93EVmCGJIJ/PMz4+zqVLl7h9+zaFQoFWq8Xa2honTpx428u3RyEVCe/4JFGg1A79nQoD7cb1rTbpqIKuSKQioUMyQrj8HaLUNmkbLgEKjh9Q69lUSiXM+g4HDx2mL0bQFJG1eh9Vknhuf5LdjsV2y6SQ0LBcl8D3SSZ0OpZLx3LZaZu4no9he5ycDvNzGj2buK6wPz9OQg9vFm6vlXj5fonm1ib/Z3eTeDLBeCHHc4enmc1GyUQV6r0wJdIRAzKxMMPG9n2SukrX8tkpbUGrxPvOhe/rrZ02tuczlw33O6okjLQtcU3ic0sVZjIRsjENn4CGYTOW1NndtRhPaczlYriez0rV4OMXpqh2bCaSOlFVotSy0GWHVDTcP+iKTCAHHBpP4Hg+tb6N44HrBSiSyOJYYtQprFT7mJ06/coWT58+ghJLDdyHQy8xL/DxgoDddmilYgQCkxPjOF6Rjx44jGt0uL1WolFap9ZzSSQSdCbznNo/SSBJrFR7bLdNoqo0cC6W6FoeC/kY9Z7N7VIXy3Xp2z4TKQ2CcCwYVSW2mgallommSCT0kPHXqpXp7yxz+OhRDsxM0LNclsVwj+cHkNTlsBhFRWazUapdi47p4qkBbdMbBNk5ozGYJAq0+i7TmXCU5/nBiO3Ys1xyMTXMn7dcDNtnPh8Z6bneCLVabUSUyefztFqtkQfY9evXSafT5PN5CoXCa9rjf7VQLpe5fv06J0+eJJvN8gM/8AN88Ytf5LOf/ewTT6N+nHjiCsxwoee67msWmCAIWF9fH/l3vVnF7uNY8u/s7HD9+nUOHDjA9PQ0QRBw8uRJyuUyV65cwff9UTzrw1bc7xSqLKLK4R+xF/jYXsDBsQQxTabcNlEGSn4Ii0nPdtmffzAq9PyAqCqRj6lUOibrq2v02g2+4wPn6fkKqhO6AG9YfaYzEaYzUfq2P0q7nEpHWKszWtbWezZxTSIiK3Qtj9Vaj0xUYdlwUCWRuCZR79mYrk9finJg/zyFmMp2rcl6qU51Z5MvlJfJZrNUouFep+OEWhFVEnAH4z5JgM9fXqZcbfKNZw+TyuZC4aks4vkBLcMDBAzHZ6NucGQigQCICEQUiXOzKXaaFnFdIh1ROTOTomWEAWIHigkOFMP38J7QpdZ3aJsO8YhCx/Ko9Cw8PxR0QugpdnwqRbltMZeLstU0cLwwgCsdVaj1bP7sxiqS0eUTHw0z6XdaJn07LIDJiEYmonJzp0NMk2iZAvmYSqPvYDoesWwEU4px+vghbGeRP7u7zdX1CulqmT/bWSYWj1MXkswUsswWU9heQKNv07c9aj0r1EfpEpWOQzGhUu1a9O1QD9QzXTqWgxvAvnRowDn0wDt16iSWHGOz0R+NBnuWy0QqdHXIxFSqXZv1eh9dltDVkO13oBBjvWFg2C5rtR5jSR3D8cjGFCJK6Eu30TBYqfVJR2RW630qXZtjE8mQ5ZiQ33RxKZVK3Lx5k5MnT45u3IYOx4uLixiGMVLJ379/H03TRnubTCbzjkfUbwWVSoVr165x4sQJcrkcP/qjP8qf/Mmf8NnPfvaxmm5+LeCJLDCv51Ds+z43b96kXC5z/vz5t0SfeydL/iAIuH//PisrK5w8eZJ8Pj9Ko0smk6ysrBCPx9m3bx/NZpOlpSWuXbtGLpejWCySz+cf25J/Lhsd2YYoksBYUh8tWCEcg/Qtj/Vaj6imIEswntSRxDBvZvnOLQSrz9Fjx3BEDSEI7zIrXYuu5dExPW6VOownNRaLMWzX516lRz6mElFDemq54xMAux0LRRZxrXDssliM4/lwab1FTJfYbpqYrseRsQSWFxCJxJia1Dk1cwQck5WtMrulEluVLtF4hJQ7zvzUGHYgk43K3Lx5lyJtnvvASeKxKFsNk0xUCeOhJQFREAkIMF2X0zPhRdd0fb77/DTFhMZKrUfHcrmz20GWRFRZJK6Go56Y9vB+QGKj0ScbU+kYLscmE/Qsj9V6n4QmEyDg+QERRQp3QYTiQncQJ6BKIlJ7h5zQ5Vu+8RhSJM61rRZeEPC5O1UyMZUPHy2Gjs6yiGGHPmFT6QjXt9uUWiatvstcLkLP8igmNCRFZ7JQJDWe4PRkjLXtXbbXy1y8WuK2KoCe5vS+MQQtHgZ2JTUOFOIDAoCI0fO4V+lxuBjn8ERIzFiqdLm82UI2Grj1LQ4eO0ULncAJ0yQFQSQblbFcj5gqI4hwr9LDsF38AGKawGQqgueHI+yptM69cg/D8enbLlPpCIYT0pW3WxYJTWa93qfcCQtgUpfp294oAsLx/FFo3mvFJA/1Y8O/u0chEokwMzPDzMzMyAOsUqlw48YNXNcll8tRKBTI5XJvKVDwraJWq42Ybfl8np/8yZ/kD/7gD/jsZz/7yKCz/9fxxBUYeO1OY8jK8jxvtFR/q8d9OyOyoW9Ys9nk6aefJhqNjopLt9vl8uXLpNNpjh49OvIfOnDgAL1eqInY2Njg5s2bpNNpisUihULhkd5jbxahhUz4364XjCz3h5hM69zeCamzsuRSarv4gUFU8llfuk0qqvLnP3CB2+U+DcPhQCGObkisVnqMJVVs16fUMnBcn8y0iusHJCMy0YGCH0IluQbokogPFOMquiLheEHo+huVeGmtRVQRmEhHB/Yv4e4oEAR0RcQRI0xMTRLLjXHsaIBid7i5VmJldZV0VGW76+ME8KFnzzKeSdC1XF4qN9hqihyfTKINmF/FRATXC2gaLofGYixXe3gD+lPbcNltW9ieTzKioCuh79Zu2yYziJ3eahoslbuYrs+9cp9kROIzt02ems9yeCyBLAn4fkgtXqn2iOsyhbiGKAiocpjzfuvWLXYrNf78s6dQVJ0X1xp0TQ/T8UhHFRbyMSodC8cPCAKBdFTm6ERYqCQx7MAEwWOrZZLQZIoJjQvzWbZbBlFFQlNV5memEGMZ4qrIy/d32anWuXX7TmgRlEyhTxXoxZK0zIDpTISxuIY/HjCfi41SIjMRlcrOFn92q8S3v+8oSiROoxtSoDcbBkEQFui4KpPSwx1JvWcjCAx2QQHbTQOAatdCkSQ0OXwfdEUipskoks9KrYcmiySSYXfndm1mMjFSkdBlYAjT8fGDAMPxHllgtre3R0vyN6sfe6UHWLfbpVKpsLm5yc2bN0kkEqPuJpFIPLZRWr1e58qVKxw9epSxsTH+6T/9p/yP//E/+NM//VMOHDjwWJ7jaw1PZIF5lNhymKedTqc5ceLE2xo9vZ0C83Cc8tNPP42iKKNlfrVa5dq1a8zNzbFv3749X9SHvYcWFhYwTZNKpUK5XObu3bvE43EKhQLFYpF4PP62vuSVjoUihcvUh6FKIvsKMeRBmmAQmFSabf7kyk3GshkuHDuGrinM5wQUOXzedETh1EyKpXKXuWyUrv3gfYqqEiu1kJlmOT6CABOpyKvsPCpdC98PRZWSAAcLMfq2x8nJBD3bx/U8DhYTgwuqR1KXkAQBRXQxXI9ccZxuRWDTiDPRL1E3fGQBrl96iWqxANE0CUXHcMHxw/Fdo++w3QoZZ37gsFrr43oh4w6gmNCwHI++I7GQjzGTibDVNOhYDnFN4tpWj/V6L9yzeAGaIpCOKlzb7PCV1TpPL2RY2enjeD6LxTjljk25Y6PL0mjHdO3aNS5ttVk8cBBXUJjP6MiiQMt0mExplNqhVmmjbuD6MJeLDCxfwvfO833mcxFkUUBAIBEJl9X5uEo+robW9vU+thfguD4V2+OZw1Nc3YgjCAEXpqJs7uzSqmyzdecu+XQCMyiSKBQ4NpEcCE19Nup9qtvr3N/Y5cSRfah6lExMYadl0DJcErpC3w694/q2hyQJ5GMaqYhC3/GwXZ/dlkm972C5YXJqIiKQUlWmlHCXBiHDMRdTiWnhCGwuF2MuFwv3Vz0bSRQoDO6QErpMPJAe+f0fpke+leLySjwchbxv3z4sy6JWq1GpVFhdXUWW5dHeJpvNvu2RdqPR4PLlyxw+fJjx8XF+4Rd+gf/yX/4Ln/nMZzh06NDbOub/C3giC8wrC0GpVOLatWvs37+fhYWFt33HIUkSjuO86ccPc7xzuRxHjx4lGIySBEFgfX2d+/fvc/To0Tcl8tJ1fdTCO45DtVqlXC6PMiOGxSadTr/p1+f6AbIU4Hg+LcPF932iWhgzHAQBV3d7HBqLoft9ais3Ob1/itzYBB3Lo9pzqHRM5nLhuC0XU9ntWKQiCmt1g4NjoWHjbtvC9X3imsRu2yYXDzuojbpBw7DJRhU6posqS+GFynQ5M50KVep2KFRcKveJqCLljo0ghNEDt0sdXNdnLh+lZ3toikjTcCg1uiyvbzM2l+DZC/vwPYGk7BL0m5S2V/n8msmB8QSCkSeWTJOI6rQMh1Lb4vBYHFkSqHZDhwMI/dckSeCpqTSxAdOJAIakpbV6H9fzGU/KFItxbpXadEyXCwsZFDE0EE1FFdZrYZHJxVQafZuYFnbZX3zxErsdh4nZ/ZR7HplkwKX15siPrGf5zOWiNPsOJ6dTiIJAKhLua1ZrfZK6xHq9TzqiMp+PEVWkPbHBPSsMbFNlET/waTsek+kIgR+gKSKG7VGxRCK5SVJj00zZNjuVKo1Gg+Xl5dF3K5PNsbqyjd1t8i3PnsEWZKKKxFbDJKHLqHJ40bddn9Vaj6bhjAw083ENTRap9WzGUzrJiEIQMBBhijT7LolBhwth0mhvoPZ/GIokIosiCX3vzx/1fR/uh06fPv1YtSKapjE5Ocnk5CS+79NoNKhWq9y5c+c1NTdvhGH2zMGDB5mYmOCXfumX+PVf/3U+85nPcOzYscd27l+LeOIKzMOxyUEQcO/ePdbW1jh16hTFYvEdHVuSJEzTfFOPHRa1ffv2MTs7O7LZB7h9+zaVSoVz586RSqXe8nkoijLK+x7Oi4ckAWBUbN7ojkoSoGu6tAyXpC5RN11kKcxDX6n0CQSf2yubmOVVjhw5gprMgwARWWS51qPSs2n1XeYLUVIRmagqc3mjxXhSxQ8CbDcInQD8gHREZiYbdkrjSZ2Vag9RENAUCc+HAEgNkjNLbZPZTGRQkGFxLAYB6LJIJqbi+j5922M8oQECk2kdAYF+tw2NLQ5PpnnuzCH6to8juuiRGBMTeQ4cOIBY3EUyOzQbVcobK6jRGLaSJJ/L0Ld1CgmNqfSD9yypK2SjKjE1DP1yvYBkRGGl1mO3bTKT0XE86NthFxXTZSptm/NzYZcB4UU+ockkdYWkHpCNKbiOw8WLF6n0RQ4fOULX8Xn/ZIqW6eB7AR3DxQ0CUhGFiCIRSUkEQcBm00QUBGQxdF9o9F1m0lHGB44Dvh9Q7lo0+nZYWCSBmKqQiSr835VdFEkiocn0HI9iXENXwy5QU0SiqkRfEuhJCQ7um+BUQqVer7OyWeLu6hV00Wc8n0dyDXwxylbfZSyhEtNUPB+6lst6PUzEnEpH0GSJvu1S6VgUEtqIRPIwepZLrWfRs12iisT4QEQZfw2rlzcTJDYsLmfOnHnbFiVvBqIoksvlyOVyHDx48JGam2F3k0qlHlkIW63WKHtmamqKX/3VX+VXfuVX+PSnP82pU6fetXP/WsETFTgGIXvs+eefp1gsUqvV6Ha7nDlzhkQi8ca//AZYXV2l0Whw5syZ13xMEAQsLy+zvLw8ohoP9y1DQafrupw+ffot74DeCEEQ0Gw2KZfLVCoVbNveQxJ4Jc+/0rWodR0y0ZByut0ysN2AmUwEUQi4eus+djMMM1OiSVzfJwggG1MH1FE7pOSqEgu5GM2+EzouR5TR3eiQpZSJqrRNh7bhMpbU8AedXDqy95xeXG0gS3B0IjnQSoS4u9slokrMZCKhQFETqXYdoqpEMaFRqVT4/EvXSBSnmZkcZzIdZr58YanK3XKX7z0/PVrKhwp9k7QuUq3VuLNRwe+3mE5rZHN5iKaJJxJ0LZ9MVGFiYJr40lqDIICn5jMslbthEFY+Qtd02WqamK7PWELlhZUWPdvmyHiKQ+MxOmbYRVR7NildJiEHXLx4kUQiwfziYTabRhgKl4miK2Eh+Z+Xtim1Tb5xMU82GuqOElrIqkroMuPJkGIuiWFHo0oiXcvl5nab7bZJEIAoBAiCyEwmQlSVuV/u4vg+T82lKXccikmVyVRYyEtti3w8ZHuZjocqi0ylQ23Wn37lCpVGh7n5BZZ368h2h7RgosWSpDJZumKM/eNpyh2b7aZBOqZwbjaDKoXBcBFF3EOIeBgd00UQQs1NUlP2GFQ2DWdg7S+96nvyWtjY2GBpaeldLy5vBMdxqNVqI2YaPDCKHGpuhhOO/fv3MzMzw2/8xm/wz//5P+dTn/oUzzzzzHt27k8SnrgOBsIuZnl5mXg8zjPPPPPY2FdvtIPxPI/r16/TaDRGvmHD4tLv97l8+TKxWIzTp0+/K1kNgiCQyWTIZDIcPHiQbrdLuVxmbW2NGzdukMlkRiQBTdPQZYl9eQXL9YlrobGl5wfEVZGXLl+n3Wrzgacf+J+ZjocsCWw2+tR7DqmozFTmwZ16OqqQRqFlOMBgKRxVyUTDfc9G3SAdVQZsI4HJV7jden7o5Fzr2mw0wi5muNCN6zIJTabZD0dzfTtc9la6FhtbO+ys3ef0scMQSaHJIlFVJgjCTqCY0Liy1eLcbBpNlmj2LdbqPfSxOHIsw7njOTRZwOi2Wd+psLl0C1EAQ45TzKX5xmMzpKIayYiCCFS7NvO5MENlp2Xi+T5zuUjImhIE1mp9Lm8ZOJ6L5YQ2NY2+g+14fG6lSsFYY6xY5PDhwwiCgF83WGn0afYcZnNRkrqMYYWP75oemWgAAdieTzqqoIgiPcslH1NZqxlkogq7bZOLGw0c1yemyMT0MAtIECAiS4iCwPsXc+y2LW6XuoiiyL5CWKxVWSCqStR7DoWESqPnUEhoeJ7H1atXUXyTDzxzlrYdcCASZzKtk9NgebPEjbVdqo1VvnJV5vB0DjmWQJfCGwjPD0Ydx/A+VBDC/YwfhLu2hB5S1g8U4qN9nOP5KJJIRBEptUwWcm+uuAzHzmfPnv2q+HO9HhRFYXx8nPHx0FHglZqbRCJBq9UiCAKmpqb4j//xP/LP/tk/4w//8A+/XlwewhPXwZTLZV544QUSiQRPP/30Y+Wvb29vs7GxwdNPP/2qf7Msi0uXLhEEAadPn96zzG80Gly5coXp6WkOHDjwngi4DMMYkQSazSa+GmeskGNqvEg2lUAUxXAEU++yevcWPcfn8JGjzBdCl9a+HWZ3ZGMKq7Uw+6Ted5lMahSSGi3DRR+MzhJaSCU9Mv6AYdM2w8Vu23C5X+myWIgzlYnQNBw0Obz7rvVsaj0HTQrHPzOZKLPZcI49HPkYts/d3Q7jKZ2ELnNzaYW7q9scOXyQZw49MAm9udPhpbUGp6aSbLUtZjNhtrwkipQ7odNyx3JGhIOEJiEPYoY9PyAjO6xtlbi5WcEyLBwlhhJL8i0nZpAUdRAdoLPVMGgaNlOZ6Oguu2e5KLJIpWOxWutzsBgnF1f5ws0tGptLjI2Ps39hgUJCY61uUG5bRDURAigmw2ycnZaJgMBEWkMWRe6UOqHvmhYq6GOajCgQRifHVMpti47pMJeLMpOJEtNkXN9HFkX8IGC7ERpNZmMqf3avjhf4HBlPMpuNDOyBnNCdWhSo9RwKUYmrV69S6TmcPnmC8XR4k7HTNNlqG8xnoqw2DOpdE88PSAQmtUYDo9NClSCdyVDI5Tg8N04gSoOQtoDn9mWpdm0CAooJHdvzafbDyIiYJlPr2Xi+jzT4u42qIqVWqJnKxJTX1L2sra2xvLw8Cud7kjEUeJdKJT7xiU8Qi8Xo9Xr8wi/8Av/gH/yDx+45+LWMJ66DcV2XdDpNKpV67OKo1+pgOp0OL7/8Mul0erSUG3qKDZksR44ceU8VuJFIhNnZWWZnZ7Ftm53dCmvbuyytrCMpKsfnx4nE4nzl+hL5VIJvevYEPg8Koel4NI0wTnl/IUbbDM0S1+ohg0iRBTbrfaYyUSpdG1mEu+Uuh8YSGI5HxwyzSTqmiySK7HYsJEnA9QN6FshSGA+8kI2iKuEdev8hJprheFiuH4ZqxTVyMZXPvHiDnWqdDz19ko4nc3e3Q8twOVCMocuh1bztBRwbT3Btp41pueFdvSiQiaroqsjtUpcgYNCRyEyk9BHdNZ1Ok5uc4/O3S/TbLbZLNV7o7xCPx5mbKNCVxsjFdURRIK5JlFomhuOOws/CQhDa7jTqddzSXRbm5wmiORqGjSCELL3FsRj1XljsWoZDqWWOnA2G6FlhOFoiolDthbk0c9loKGwc+IMt5GMkdCXM+NH2ihDjg+IXVWVOz6TwfJ+J1IMldFJX2GwYVLpWGGP8lSskdZn9h47i8eA4XhB2U24QcCAfY1UQmExr6IpExxzHcj2yssvy5i7l7XV2V+/gqEk6QpS5yQJ92yMZkdltW6FfXS6K5/v4QdjxDjuajC4jiwLljk0qEkZI2G6A4bsYTkgAGPqUra6usrKywtmzZ9/WTvOriV6vx/Xr15mfn+ebvumbsCyLH/7hH+ZbvuVb+Df/5t/wcz/3c3zkIx/hv//3//5VFXc+qXjiCszY2BjVavWxB4PBowvMcLm+sLDA3Nzcnn+7e/cuOzs7nD179j2dB78SqqoyNzPF3MwU9a5JtVanUyuxurpKemDs2G41McQIEVUhH1fJxlRsL0w3hPCCFFPDC3hSl9ltm5geSKLIQi7KZsNAGfyBOJ6P54dstWxUpRNz0VWRuCaHSn3LIa6pzGSio3PcbBiY7oP3epgf0uy7aJLP5168TKNl8Mzp41RNkYDQDcAPBGYyEfYVYuwbxOZuNAxMy8X2A4rJCBAQ0yQOjSWYzkTYbZksFuOjAvawniKuyzy7WGS9EWcytchcWmF9u8zqdpmNtVV0XUOIZekVctRshVLHxAtCIkPLcDlYTNBpVLl6/TpHjx5lYmKCWs8a7TyGHV6pZeIOxIfbbZN8S2MypYfvoyRyZCJBOqYQVcPRV8twSGgyh8cTBEHAdNonrkts1gwkSRjFQm80DPq2S1JXBju0UDMy3JE9DF2RmEurvHjxCjFdZWzfYVIRbY/h5HQmwlQ6XMQHQcBYUmWjYXB6Oo2AgOmIpBNxzqbTwCG63S6fub6B2G1RuVfiym6UfD7PiqFRMwXqXQtdVTg/F56v+gra/FhyLzHAcj0sNyzM8KC4nDt3bk8mypOIXq/HSy+9xOTkJPv27eN//+//zY//+I/zO7/zO3zbt30bQRBw5coVLl269PXiMsATV2CGjsrDEJzHiYcLTBAErK6ucu/ePY4fP06hUBiNxIbaBsMwuHDhAtFo9A2O/N4hG9dxehKbzSaHDh0iFotxb6NE7dYtSh2H8UKWxZnxkA0T1zAfCgeTRIG5bPjaFEkkGVFIaAoRReRmqcNcPrzAJ/XQ52y3ZVLuhtqbbCwsWs2+Q2MgxBsudIGRUSbAVjO8yGqyREb3uHz5GpIf8M3PniER1bix3cZw/dCB1w9QBhefvu3heD4JTebCQpakLuMPSApDTKcjZKMqXcvDcFxEQdizkL5f7rJU6bI/H2cyraGqMql8gQOJLGNxhW67yVeWtlm9cpOYDI6aZNk3CSZy6JrCvdUNqpsh4SPQUwRBQC6mhX5vA/hBgCyJZGLh8j4TDfUkw/dYFKE7UOfHNWWQTyOE+hTXp2U4TGfCSOSe65GQlDCKWAw9u4ajLwhHkbtti6n0qwkmCi5fePESuWSMkyeO0bXCY/sDNlvIYjPw/JBKXO3ZbDYNUppMaXDMh4sRQDwe59DCNIX4PhKqSK1WY217l+7uFm0D1rpJFibyuG6cju3TtVym05FR4d1uGchiaGNU64XR4sO9zsrKCmtra18TxcUwDF5++WUmJiY4cOAAv//7v8/f+Tt/h//23/4b3/Zt3waE167Tp09z+vTpd+08tra2+LEf+zE++clP0u/3OXDgAP/pP/0nzp8/D4TXtZ/92Z/lP/yH/0Cz2eR973sfv/7rv87i4uK7dk6vhyeuwMDjSbV8FIYFxvd9bty4QbVa5amnniIej4+Ki2maXL58GU3TeOqpp544h9aHEQTBaHY9ZLxVOhanjx+ma7rMdrtslsrcvreMe/062WyWYrGIPCAJPIzQHSD8OlS7FhNJnY1an+RkEsv1w72H7TKdju65K01HlVEImK5IbDQMBCG88L8ShmFw6dIlYrEYxxcXsbwA33BYyMfC2ICuTTGhDsShoc9Ws29zbDJFOqqwXjfw/WBPgQFo9B36tosfBOTjD84tpEM7I/JDs+9gOj49y2UyHUGVRHbFGFMzc5w5ukir3aFUrrK1s41bXsaTNfTA5uSJ47hakmxEptyxR6/fHiSH7rRM2qZDcnBxnkpH2GqaLFd77MvHqHQtlqs9ZEmgENcRhQBjYPVT7liUu1aYOCkImLaHLof2+ypiaDY52NuEr9Umobus1vrENZlUROF+pUep0aG9eZdYPElmaoGmEdq2rFR79OyQGbjbsdio9+nbPpOpHIokcmY6TccMd3OPQs8KR6NxXUESBfLFIuPj45y0XVqtJvc3y1S21/nczj2UWIpYKktenxhpSFRJQhxMan3/wbp36Ip87ty5x8IQfTdhGAYvvfQSxWKRxcVFPvnJT/L93//9/NZv/Rbf+Z3f+VU7j0ajwfve9z4++MEP8slPfpJCocDS0tKe6cq//tf/ml/91V/lt37rt1hYWOBnfuZn+PCHP8zNmzcfO+v1zeCJW/L7vs/y8jK7u7ujqvy40Ov1+LM/+zPS6TSe53H69GlUVR0Vl1arxeXLlxkfH39T7szvJXzfH+lxzpw5M7oD9IPwQp2PqxhO6PNUTKgYhjGiP7daLZLJJJ6extMSnJzLk9QVKh0LSRTIxlSub7VCBbft0TDCHJLZbGQkVtwdBFcVXqGNeH65jijAhYW94rhOp8PFixcZGxvj0KFDbDUHqZIC7MvHsFyfatfCcjzKPZsjY8mBgNRhJhNBkUR2OyaKGFJm83EVzw/psdmowp3dDroiMZOJju7Ct5omHSssMBs1g3xCRRYFEMI0TVkMUyX9gV4nqUtsNi1m0jpXb96mWa2AqqO6fWLxOEIsy9G5cdqeTLXrMJ4K7WLimszNnTYTKX002tpuGjT6LsWkynrdoNwx8b0ASRLYl48NnBbC4nS/2iMXU8lGQ1uemCZBwEhg+TDapsO9cg/L9ZlIaggi3NpssHJ/iVgixfmjBygmdaqD78DDuhPb89moGSR0ieJDY6wgCGibbljQDYdCXKfetzBsn0NjcfqDAtU2HVwv2NOd9m0Py/VQA4fdcpn7W2UwOiQS8ZFgMZlM7iHG3L9/n42Nja+J4mKaJi+99BK5XI7Dhw/zJ3/yJ3z84x/nP/yH/8D3fd/3fVXP5cd//Mf54he/+Jp5LUEQMDk5yQ//8A/zIz/yI0Co0xkbG+M//+f/zPd+7/d+NU8XeAI7mIeFlo8bpmkSBAGqqnL8+HHgwTJ/6NZ68OBBZmZmHvtzP064rsvVq1exLIsLFy7sURyLgjC66EdViYgiUus5pCI68/PzzM/PY1kWlUqFpY1d7i6tU1rTODA9RjSZJp0KC9XBsQSNvkNcl/GBqYED7xCe78OgAAeDMLSu5ZEbJCc+jKFH0/D5BUFAlsLxjyoJ9CyPsWS4+K92bQQxNEWMqCJNI9ThJHQBXZYwnTDpMXRSdhCAjuXSNlxMJ+DoxINzDEWoIZlhLKWR0kOCQEp/wGZ6eF+w1QzzUz7z4nX6nRb7Dx1nPBvHc10Uu8P11RKf+dIGtqCQTWdQvAL7J/PoqsT5ufAu0nI9ql2L1ZpJQpcGFvUKuhwWk5lsyBCTRjYxAQu5GMWEOsjcCTUjW00Dw/FGGh4IBayiIJCNhructuXQaPTobi9xeKaInh3nT+5U+ODBfCgmrXbp2RqxwR5OlUT2F18d2V3u2MhS+N3JRFSiqshqLYxDPjebJjXonjw/pC6bjkejbxPXwnCzcB+kkihM8oGZWRpdk8BoU6lUWF9fRxTFUbFpNpvs7Oxw/vz51wwGfFJgWRYvv/wymUyGw4cP8/nPf56Pf/zj/Nqv/dp7crH+vd/7PT784Q/zl/7SX+Jzn/scU1NT/L2/9/f4W3/rbwHhyLFUKvGhD31o9DupVIqnn36aL3/5y18vMEM87uRJCC20L1++DMCRI0f2/Nvwjur06dNv2/Poq4WhN5qqqpw/f/4NR3hdy0OTBe5X+sxkdRo9h47lcmR6mqmpKS5YDqvbZfqtOltLNyhJEvWB1qYwsDm3XB/H29vojiV1AsKfhSmQoQniMKa30rVwPJ/ljRLL95e5cOIgCwsPCreuSKF5oh/ePbu+Tyaq7rnrLrVNCMKZfZh1Ey66t1sWOy0TRRJIRkKFvfcIk2xNEYh6Mq4fcHwy8UgzxZ7lYrqhBUw2InH9xjKrVYPjhw4yno0PRJYyk5OTeJEMUUVkp1KjUa9TXbvD+r1bRJIZEuksh2fH2WxZXNtsEVFlxpNx5geZPLWezXw+SkyVR69hIqWRjMiokshGvU/HcpnOhJ/nkBQxhO35I22KIks4vo/m22zfu8npAzPs378ff+CI3TRdjk+l2GoaXN/qMJHSsVxv1F1BSMJw/YD5XBRBhC8tNzg5mSAdVUlFFA4W4+y0zNF4Cx6kUz68x3sYw+iBsVQUIR1jYmJiZMfysLNxJpOh2WyiKMq76mz8TjAsLqlUiqNHj/KlL32J7/me7+GXf/mX+St/5a+8J1KF5eVlfv3Xf50f+qEf4id/8id58cUX+Yf/8B+iqip/7a/9NUqlEsCrwszGxsZG//bVxhNbYB5XBzPcUywtLXHkyBGuX79OvV4f2X5fv36dTqcz2sU8yeh0Oly6dIlcLvemYpgbfRvD9ohpMrosDLQjLh3TYadlYjge+/Ix5qfH6eYLJHWJfqc1CkvyfZ9CoYClJhnL57A1mZbpUIhro4v/VCZCNhaKM4tJHWnATrJdn/trm9y4v8Hc/AKmkmC7ZY7EmemIMtorNPsOHcuh1rNxvPAr2TZdIopIMamjKxKNvj3IlxfJRBTaZti1eAEkNPmRS+/5XIytZiikfPh6YHs+jucTU2V22iZd02Oj2qW0tkRWF/imp44hSRKTqQhS5sEvzg4IEbJcRI4kSEcPcGezSrXeYOPeGi9cvYuoRyjZOhf2j+8hG+Qe2hut1vq0+g67bZPxpEa5E+pKFvKx0Xvyyj2TOiBJpCMKpuNRrjVYvXOdU4cWmJ+fB8Ksng8cKBDVwsJ0dCJJz3ax3dAYNOzmwuNEVYnhLUOtY5OPKdT7DhPDIiRAMiLTMByqndB5etgZ64q0hyI9hCAIrzpvURTJZrPU6/XRErzb7Y5ckofOxoVC4W2bvj5u2LY9cmo4duwYX/nKV/jYxz7GL/zCL/A3/+bffM/O0fd9zp8/z7/8l/8SgDNnznD9+nV+4zd+g7/21/7ae3JOb4QnrsAMR2SPo4N5ZXZMPB6n3W5z69at0WOGncB7sQB7Kxg6Nz88ZnojCAMdTCoSjjKG4zPX91na7YZK+oGeJSCga3m4cozphUUOHz5Mu92mXC5T393gy/eWiMSTpDNZYovTe7ymIopEd1AQhkv2yuYqXr3Ed77/NJ6i07MfTa2FUEMjEFrid0134G/m4wUCE0kNwwlHYpfWW+wvxEhHFQzHI58ILW/uVXrENZmIEootHz63yZRG3/H2aEpKLQs/COhrHrIg0DNtlpfukI6pnDt37g0dddMRhVrXRhJFDk7lmSlk8HxodDuUq01y3Sbl5Vu8VItydH58z8WzZ7lUOjau5zOfj9F3fFRJoJjUaQ5uCFRJwHT9PR3HdssMM2dEAbPbYuX2NRYXF/eMc7eaoY7nQDQ++txTD1m0bDUN+rbAREraUwiOTCSwXA9NlmibDrWuTSGhEgShMLNnuaiyyNvJZy13TFaWV7BaFZ566ilisRiFQoGFhQVs26ZarY6cjRVF2eNs/F7sQJ2Bx1w0GuXYsWNcvHiRv/gX/yI/93M/x9/7e3/vPS2AExMTHD16dM/Pjhw5wv/6X/8LYGS6u7u7y8TExOgxu7u77yqz7fXwxBUYeDwdjG3bXL58GcdxRnYzvu9z8ODBUcyxqqq4rsuXv/xl8vn8yPPrcaVQPi5sbm5y586dkQ7jzSIdVUbOvENX5KFWJaHL+IFARBXpmOGsv297bDWNkCKbjpBKpUilUqTHZ5nt93j+9hZbqyU2Vlc4MJ6iWCyiDLJtupZLRJUgCLh2/TrddnuUnbPTMknqD3zLdgaeacWkRkSRsNxw/JOKKkRUaXAhDV/Ddiukz5ZaJrWeha5I+EGAroi0DZfJtM5ytY8mh2r2uKYQ12TKHQtzoBd5mFkGDIR/AemozOpui97WHU5Npzh+/DiG49NoG0ymdSodG22QHwNh7DGEncxUWqfed3CDgPGUztXNFoVUnH3jWQpxjbs7TXrtFp1Ok5WVFTRNI5rK0RXjjOVS5OIa+YF7cWcQJWy5fhhy1rFoWQ6OF6AMNDGW4xEED9ISDx8+/Crhb0yVeMQU8KF/l9GU8AG9Qez1cAc19I2r9xxsN4xCXq72AHhmQNjo2x4BISFiWMRbRsjMe6XeBaBrOrx47S52p8aHv+HpV9H9VVUdORt7njcapd28eXNPSNjjDOt7PTiOw8svv4yu65w4cYJr167xnd/5nfzET/wEP/ADP/Ced1fve9/7uHPnzp6f3b17d6TfW1hYYHx8nD/5kz8ZFZR2u80LL7zA3/27f/erfbrAE1pghjYtQ2v8t4put8vFixeJx+OcPn16ZKMiiiLlcpkbN26wb9++0QczvFO/d+8e169f31Ns3kua8tBNemtr6y2LPcOlu0shrmK6/iCjI3wtluOTjWlEVYnVWh9JDMdaUVViIhVmqcsPDd8LCQ3H83nu5H5ubnVI6wLj2oAosLRELBYjly+QzGZ4+eVr+L7PhQsXRheF5OCCDtCzQ7aS4fgjp+FcTN0zQoKwS9huWRQS4c8zUZUDxTiqLHBpo0lckzg7m2a3baHJIrdLPfYVYqPX2DFdLm400WWRZ/dlMRyf7aYxChyby8Xodrus37tJPpdnev8iXhASBhzPx3A8eraLHzwwagwLaHh+5Y5FqW3StT0aEYeoLtE1fRZyg/NNRBhLx0hF5kaO2XfXS2zv3sPdBadYoJvO4akxvCDsbBQpjDwudwKmUxFszyM+2FEs5GPs7u5y9fp1jh8/ztjYGJWuhev6o7FWeDPx2t/Xh2MAVmp9OqaDIgmAMHr/JRESuoIohHHOw71Ls+8QEFBqhaagC7mwk7Td8L16JYIg4NadJexug29+7qk31JJJkjQykzx8+PAoJGwY1pdMJkejtFgs9tgv9q7rcunSJTRN4+TJk9y6dYu/8Bf+Aj/4gz/Ij/7oj77nxQXgB3/wB3nuuef4l//yX/Ld3/3dfOUrX+E3f/M3+c3f/E0gnP78o3/0j/j5n/95FhcXRzTlyclJvuu7vus9OecnjqYMIZ34j//4j/nQhz70lk0lq9Uqly9fZmYmXHw+/PLW1tZYWVnh+PHjj7T+D4KAXq9HuVymXC7T7XZH2pHCI7Qj7yY8z+PGjRu0223OnDkzMqx8s6j3QvbVWFIbuSSPJTU0WWJ3wEYqJDQqHSsUxw2owA//viKJJHSZtunQs8JuoNK1EQjYXwjHMMNsm1KpRLVaRRRFJicnGRsbI51Oh8FsXRvXDxMl75W7dM3QwDIf1/Zc9B7GVtOgbThEVIn5XIzlahdREOnbHkvlDookcnIqxXhS40+XahybiJGL6wOlu4/rBdyvdGn0bN53IM+d3Q5tywEEplMRxnSPS5cukR2b4vDiPipdG9sNUGWRqCpQ77vEVInxpI4fBKGY8qGRzctrTdqmzURKp2t5RFSR2UwMXRG5s9slooij92iIYHCcTjtkWK1slVmuGeixOJl0isWZMXRNI6FJuD4UEuroOYc7i6HeCeArqw18P+CZfY/OSwmLlriH6uz5AZIosNu2cDwPQRBp9iwmMxEy0dDtQREF6n0HUQgzhwrx0Pyy2rXRJIHNpkkxqY1Cw16JIAi4ffs21WqV8+fPv6P0VgiJLcNRWr1eH2Xc5PN5MgMiyjvBsLhIksSpU6dYWlriIx/5CH/7b/9t/tk/+2dPRHEZ4g/+4A/4iZ/4CZaWllhYWOCHfuiHRiwyeCC0/M3f/E2azSbvf//7+bVf+zUOHjz4npzvE1lgLMviU5/6FN/4jd/4lnYja2tr3L17dxRZ+vBLu3nzJvV6ndOnT79p1XC/39+jHUmlwrFQsVh8x380rwfbtrly5crIePNxjAc8P6DRD8PWIoqIIAivuRMB2Gj0EYVwPNO1XFaqPWYG5pZBELLImobDeFLD6Pf50+dfZqaYYXxg9VOpVMIONJbFUuIcmCoQ1RTahhM6PxMusl8ZSjXE8yt1Gj2HwxOhS+9uy6RtOcxmIyRUGVmWUKQwcCuhh1kvQwsWCDueRt+mENdQB8LN9sBPbXVrl8vXbnD26AFmZ2cBRkXQ8XxM58FC/PhkivW6gev77Ms/KPKNvo3p+CR0mdulDqIAZ2czmI7HpY0W9Z7NhYXMnovwet3Acj0Wiw8KT7Pd4frKDlanTq3ZpS/qHJouks5kSCbiTKUjrK6t8/y1e1w4c5x9Uw9ujC5vtFitd1nIxhlP6YwlNfq2hyaHu5rhZygKIAoisiTgeD66vDfUbBiVPJPd22X0X2dvNkSpZSJL4h7X5Vu3blGv1zl37txj/zsZdoOVSoVKpYLv+3tGaW914uB53iix9vTp0ywvL/ORj3yEv/yX/zL/6l/9qydaC/e1gCdyRCaK4siy5c1gKDoslUoj24nheM1xHK5cuYLv+zz99NNvqQuJRqN7tCPDzmZpaYl4PD4qNo+zZe/1ely6dIlEIsHx48cf2z5IEgW8QR5M7E2EPhXiGrIUviZZFMgNRm3DHU6j7+D7AaVKnavXrjI5Pklxeo5iSieWyhIfn8cxetxcK9Eob+LsrqAmMhTzORYWJl/zQtCzXXRZIqJIOLpPPqbR7Nu0zDAsrGf6+L5HKiJSiCskNInr2x3mc1FqPZuthkEqIjOVjhBVH1zchEGS5O7uLi9cvs7Cvv3kxidHzLZXBmH1bZdSy6LcsQYjvr086Ez0weNFUSAii2w3DQLg6fn0aCn/MJK6jOXu/Vk6mWByUsQLJjksw73NMoLd5vKVDTxRYTatY/Y7HDl6lEwmDYQOBaIgkIkp2G4USWLk+1bv2YhiGKUQVSS0AQFDEEK2Xb1vE39FouTDDLxaLyQaDMeaLcN+FWPMDwIEXp1EGQQBV2/cpFqr89yFd965PAqSJI1GZUEQ0B50g6urq9y4cYNUKrVnlPZ68DyPy5cvEwQBZ86cYX19nW//9m/nu7/7u79eXB4TnsgOxnEc/viP//hNJUY6jsPly5exLIuzZ8+iquqouAwv1qlUimPHjj22i7XjOCPr/Fqthq7ro2LzStXyW0Gz2eTy5ctMTk6yuLj42Ftz2/VHNONHoWU4o9z0iCqS1NTRnW7f9kadzxBDOvPi4iLR7BjpSGgnUu6Y3Kv0OTaZwPUCBALqrS4v39+h124Q8S0OTmZGF4KHL0SbDQNBEBAIqPZsTk6Fn/8X7tXomC7fdChP23RH9vC267PVNIhpEq2+i+f7dGyP6XRkj0gRHiQlHj9+nEwuT6ltYbs+87nowOtrLzYbBpbrs7/w6AvVRsPA9cJI5K2Bx1dEkR658A6tZEI6d9t0mUzpo+es9Wz8INjzubiuy2dfvMraTp3xhETXhqliloOz47SDCOogLwcYaW2ahkPXdMjEVDpm6GY9mdJH/nCvB9sNP/eELlFqhXstH1BEgcnBjqdvezR6odo/G1P3vL9BEHDz5k2Wd+qcOHmS+eJX3xXZMIw9o7RIJDL6jr3Snd3zvFF44NmzZ9ne3ubDH/4wH/3oR/l3/+7ffb24PCY8sQXms5/9LCdOnHjdPO5erzeiFJ44cQJRFEe2L7VajWvXrjE7O8u+ffvetTmq53lUq1XK5TLVahVZlkeRx5lM5k0/b6lU4saNG++qk0C5E9q7xDX5kRedraZBx3TRFBHPZ09g2Cvx8MW6UChQ7tgkIyFVuNl3aJkOM2kdxw/QZIlaz6bRt9luWhQiAjE/XOI2Gg1kPYacyDI/OYamR4hqEvWuTaVrD6J7w3OwPQ/H41Wal57lcnmzBUHAgWIM1xdIR+WR88DQ2HR1dZXTp0+PyBJDB4LXSmt8FGzPZ7tlMp3WuV/po0gCCV1mvd5nPKnvoRYPUWqbaLKI7QYIAtzcaTOTie4pXKu1PqW2yaGxOOmIwt27d1nZ3GZi/zHyqTidbher06DXrFFq9sll08xNFMkXCsSjkdHnNwyC61kujb4zck5+PTT6Nq1hRIAgoMoiHdMhoSt73hvb86l1Q4p1OvqAABAEATdu3KDVanHo+CkUVdtDj34v4LruKJGyUqkAjEZp2WyWGzdu4DgOZ8+epVwu8+EPf5hv+qZv4t//+3//9eLyGPFEFhjXdfnc5z7HwYMHH7mMhwehP1NTUxw4cGDPvmVzc5N79+5x5MiRt0TrfafwfZ96vT4apQGjzua1eP3Di9/KysqeBe67gSAItS6vdMwdwnA8pMEF5vWOMXQ+GIZD2a7PrVKHfEwlIHRmHkuGYkzH8xlL6Lh+QL1rkYwqowTNSsfCtG16rQYbpSpmp0EmpoWfeSRNIpmgYTikdIWpdITdjkVMFYlrey9ebdPhM7crbDX7fPuJSQRBQFcEHC8grklcv30Pp1VmfP9x9GgUUQi1N5okIYnCI4kGbdNhvW4wnlBZq5ukozL7C3Hu7HZxfR9NFhEFYbCED+1TFouPFgqW2hZbzT4LuRgNw8GwfRKaxFzuwc5jvd6n1LY4NBZja+UetVqNc+fOsdpyERBYHIuNFv7D7PhyuUyr1RqJFaOpLCg6YwntLd1QbTUNJFFAEgQcP9zRtAYEi9xAnZ+JKntIIN1B3o8owKVrt+j3unzr+88TeQL1ZA8nUlYqFXq93sjv8IMf/CD/8B/+Q5555hn+43/8j0+cROFrHU/kDgZe31F5Y2OD27dvc/jwYSYmJvYUlzt37lAul9+T2FVRFEdUyyNHjox4/bdu3cJ13VdpbYa7oyHb5t22LBcE4TWLC/CaC/chfN8fLXAfdj5wPJ+JlMbQLHdYR1MRhbYRivQc2wVBYPhReX6A7fmUOi6T2QLfsm8Wz/Oo1WpUKhW2N2/QdwUminnseJqx+DiO61NzvFGBaZsOncG46Zl9WbpWkmxMYbNpIgoyluvxwpVbJPwOh46dxhEU/CCg3Lbp2i6pQccVUUN1+3C3EABXNlskdZlqz0EUBURBoGe7jA/MK+eyUQLC/ZT4iIv5w8ahLcNBGjDgmn2HYkIloT+gU3ctl9lslOm0zs2bN2m1WiP2VdBqs9sxgYBUVKWYUIlGoxQnp9Ez42R0YXSXfn1pFU2RSGYLHJodH7H4HkZofSPtGQmmIwrqoGBWu2HyqBcEaLLIrZ022y2T/YX4HnJC3/ZoGzbL9+9Rb/e4cPo4pi/iW+5b6gi/GhAEgXQ6TTKZxDBCQkM6nea3fuu3+MVf/EVSqRTj4+N85Stf4cKFC18vMo8RT2wH8/zzzzM+Pr5nXOT7Pnfu3GF7e5vTp0+TSqVGI7GhAaRt25w+ffpdZXm9VQyXkcPOxjRNstnsyHzz7NmzT6yTwJDGnNIl7ty6Ca7FmTNnXnW+1W5oJ/KoXcYrYbs+641QtJiOKIgCGE5APq6MBH++79NsNnnh7hb3t6ssxANyuSyJdI6Ds+MoikK5Y9ExXeZykdHd/Vq9HzKi0jrXrl2j1+8zdeAYc4UHu7Fq16ZruTR6NqbrMZuNMZXWWa720GQRVRLRFZHbu1325aOj7JfVWo9Kx2Y8pTGTidIxXQKCUUf2MJbK3YG7c4TbpQ5t0+HgWIJKxwptWgKIadIgytqjmFD5/EvXUH2LDz57bkRG6Vku96s90lEFTRKRJZFcTGWnZeL6PuPJBwmerutyd6OM12tQr1XxfX90U5PL5ZAkie1WSFGfSOmU2iayKO4hOLQMh67lMpHSEQWBlmGzWjU4NB7fM1b1fZ/r16/T7XY5f/48qhqekyDsNRB9UhAEwcgW6vz583Q6HT760Y8yNzfH933f9/HJT36SP/zDP+TChQt86lOfeq9P9/8ZPLEF5qWXXiKTyYx8loZsMMMwOHv2LJqmjYpLv9/n8uXLo13MW9XOfLVRr9e5du3aKJsmk8mMRmlPkvlf13LZbBhEpHDGLssSH3z6DIqi0OiHoVlvZ9ZuuR7XtjokdYn5fIyO6bJU7pKLqiQHXlvD8dGwECRll+pgLNTr9chms6MF7sPFrmU49Eyb7fu3aBgep0+eoJB6tcjPDwKWyl1s10cUBYqDBbsqi6QiykBH5OIHDzzIyh0LSYCA0DVgt2Uwk40ynXl9EWGlY9HoO0ymdXqWhyIJtIzQqZoA+pbD7du3WakbfPOFkyyOP3pB7vr+qJAGQYDl+q+5wH/4pqZSqdDv98lms8jxDDMTRTKJGBuNPqq0l5RQ74XFdyodec2bBd/3uXbtGv1+n3Pnzo1o9KbjIUvCHr3Qk4DhjqjdbnPu3DkMw+Dbv/3bmZ6e5n/+z/85On/XdSmVSkxPT39Vzutf/at/NXIJ+JVf+RUg1Pz88A//ML/927+NZVl8+MMf5td+7ddeZWD5tYInssB4nsfFixeJxWLs37+ffr/PxYsXRxYOw/GSKIo0Gg2uXr36rjGvHjeGhpVDxfLD9OdhTsuw2LzXSZrljkWl2aG2ehstmuDUiWPog8X5RqNPvRfqUh6m7L4ZVLvhUnn41YuooQ1/OqriesGeAvMovHIHMVR5F4tFFEXh4sWLNByJ+Ngcc/kEs9nX7maDIGCnbZHU5T0eZr3BjkGWhEe+vrCzCy1VHla7xzTpka7Nr4WNWpcr129QjAgcP3mKiKa+qe9wvWfTNl1ms5FHjuheiX6/z9J6iXK1gmB2RjT7V5pMDoPlhsy0V2JYXIY3el8NC5d3gqEup9FocP78eSzL4ju+4zvI5XL8zu/8zns2OXjxxRf57u/+bpLJJB/84AdHBebv/t2/yx/+4R/yn//zfyaVSvH3//7fRxRFvvjFL74n5/lO8cQWmKtXr44475cuXWJiYmJP7KcgCCN18+HDh5mamnoPz/jNoVqtcvXqVRYWFh5pWDnMaSmXy9Tr9XdNa/Nm0W63uXTp0iiA7eHndzyfjYZBRJFeRQd+U8c2Xa5uNknqoV9aLqaOZvf1ns1u2yIXVygmHn3snu1i2D5JlT2U8Y4DiViE3NQCgRLh2GRyNHZzfZ+u5Y2sX14PW00D4JGssNfCWr2PJAijQK5yxyKiSCR0mabhID20A/ODgEbH5CuXrhDXZJ576sxbmv03+w49O9w/Pep74Xj+IDzsQXey3Qqdpcdi8mhvU6vVUBRlVKA9JYrjM3K9fhi+73P16lVM0+TcuXNPdNorPHAUqNVqnD9/Htd1+a7v+i6i0Si///u//56N0bvdLmfPnuXXfu3X+Pmf/3lOnz7Nr/zKr9BqtSgUCvy3//bf+NjHPgbA7du3OXLkCF/+8pd55pln3pPzfSd4YmdJkiTRarVYX1/n0KFDTE5Oju54BUFgaWmJ7e1tzpw587pU5icFQ1rv0aNHR66nr4SmaUxPTzM9PT2yYCmXy6ysrDw2rc0bIUyRdBGsDleuXGHfvn3Mz8/T6NvENHkkHlQkcY+yfYhaz6Zvua9ShT/qeRzXp9FzODm9dyTk+QENw0ZXBHhE4OFqrUet5zCW0MjHI0xNTZFKpWi322hqBEFV2b5/BysQUTsFJsbHyGQyoS1+ELypAmM4HhFFYqtpsts2mMvFXuWX9qrX3rXo2x71fqjf6Zihr1lCl+mYDgIPCsx6tcPVq9cwkDl+4gjlroMihaystukCAaIgjMZzr8TDRqaPQqVrY9oeIqFIFvYWjYdNJofK+GvXro32NuJAGT8cN/u+z5UrV7Bt+2umuNy9e3dEoPE8j4997GMoisLv/u7vvqc72k984hN89KMf5UMf+hA///M/P/r5yy+/jOM4ewLDDh8+zOzs7NcLzONGo9Gg1Wpx7tw5MpkMnueN1P3D+e/Q/vtJxsOGlWfOnHnThpWKojAxMcHExMQerc3FixeRJGlUbB7FFHonqPccGtVdlu8tcebEUfLFMXZaBoYTWqi8UbfyZvvhXExlXzHORt2g0bf3jKEKCY18XH1VyNlGw8DzfSKKzFQ6zDTp2x7VRpPlW9eYmZlhcmYORRYRYU/Qled5JNI5YukcY/Gx19zTDUW6QcBAOClgugHljvUqMeQrMZONcnO7M7Cb8ZjLRUbJlemIiiAM8okqbe7fukagRPmGE4dRFZmdloHj+ciSRDaqoMoSAmEhVqQwVkGRxFFRGbohJzT5kaytQlzldqmDrrz+d+NRyvhyuczy8jLXr18nm82Sy+Uol8v4vs/Zs2e/JorL0tLSntj17/3e78XzPD71qU+9p7lPv/3bv83Fixd58cUXX/VvpVIJVVVfxX59LwPD3imeyAJTKpXo9XpkMhnS6fSouJimyeXLl1FVlQsXLjzxX/SHDSvfSTGUJImxsTHGxsb2aG2uXbtGEASj8UYul3tHxSYIAjqVLZbur/HcuTDds2OGi+4g4A3v4IEBI+mBLxXstRTxg4Dtpkk6qjCZ0pHFRy+FBUFAlfd2aTFVomMFmG7okaVKIi/c2WJj5R4Xju1Dy4yhKdJoJ5HL5cjlchw6dIh2u83q1i53769w5/YtkukMiVSGk/un9hAr7ld7RJRQo9IzXXY7FudnU+y2rT1Jjrbnv8oKphDX+IbFUDfy8PI9CAJKbTNU8nf63L1xBS2e5iNnjlHtOaSjMkk9wY2dDpmoTCYaChx7lstu20KWBPq2t6fA+EH4Xr5WPVckkblclHrPBsKxY1SVXlfVb3s+sUSCxVSKAwcOsLLbpNussby8jOu6xONxNjY2nqhwsFdiqNMaxjJLksT3fd/30e12+fSnP00i8YiW+KuEjY0NfuAHfoA/+qM/emJZo48bT2SBGR8fp9vtsrGxQbPZJJVK0Wq1uHLlCsVikUOHDj3xatthHg2wx7r+neJhrU0QBDSbTcrlMrf//+2dd3hUZdr/P5Pee6OEQIBQpKRBKCIttMRXVxEu/SGKsqzSFEWlqKCu4q7sKq8giKuvqHuBSBJAERBWAroLLpACBEhCCwHSy2TSJjOZOb8/4jlm0giSZCbwfK4r10XOTMjDMHO+5zz3fX+/6eno9Xp8fHzw9/fH29v7lrrpJEkiIyOD/Px8xo2MVD6Irg42Lc7OtERWcRU21lYEev62HaE3GNEZjFTpDLjY22BnUxfJ3NTHPl9Tg7O9tVJ8N0pgNNadVJ3srLmem0/25Qv0D+mDm48/tQYJTXUtHk6/pj6W1+DqYIOnkx3u7u70d3bBp2sPbCUd2TkF5ObnU5ZzWfGv8vPzw82hbibEztqK86VajJIRdXUtOoOkCF6eRktxhQ4XexuCvJ24VlqF0Vjn9xbgbt+kENvZWKGvqeby+dMYHDzoGtQLOxtrurr/esK3gnu6uFLy61Ykv/4b1dV1Bp3+rqZ3Tg3/X2SLHy8nO2VQtvLXJgR1tR5trYGaWiNd3JsXmMJyHSqVim4eDkiAytqGopJSXJydGTx4sHJHKIeDya9ZW99F3w6XL1/mxo0bSpz47NmzKSgo4F//+tdNbafam6SkJGVGT8ZgMPDTTz+xYcMGfvjhB3Q6HWq12uQuJj8/v9ltdUvHIov8//znPykrK6Nv377o9Xp+/vlnunfvzqhRowgJCbGYN3NzyB5obm5ubeqB1hKSJFFeXq50pFVXV+Pt7a0MdrYkcAaDQZlpCA8Pv+n+tGzp3vAK9lppNc52v6UlFlXosLFSoa01oKs1NllPyCquC7VqqmvpUmEldjZ1AlVaVVf4t7ZS0cvHibycHE6mZdInpB+DgusaPOTtJPnP+Zo6gWmplbphY4WcuOjn54eVnSPaX/NO8jU19PR2xsfFjmq9gbQcDR6OtvTycWLbiWu42NkQHuSJR4MUSZny8nKSk5Pp2rUr3l17UK2XFMsbg1Eip0yLq4NNq+pDTSG7O9vZWCkCZzBKXC2pwsvZDhUoYW4t/R02VnURDbIRpNFoJCwszORipSlHYzmJsn7dpqO5cuUKV69eJTIyEnt7e5566ikuXrzIoUOHlIh0c1JeXs7Vq1dNjj311FP079+fZcuWERgYiK+vL9u2bWP69OlA3eB4//79O20NxiIF5tNPP2XDhg2cPXuWrl27kpeXx2uvvUZERAQqlQp/f3+Lu3KSKS0t5dSpU4qFjbm2EeTApvz8fCoqKpRZm4ZzI7JZ6K1EA2QVV2FnY6UUjS8UVKDVG3CwtcbTya6RM3FBeQ36WiPdPBsLl0Zbl9zY1FV/Ta0BO+s6g81ybS0arR5fFztuXMsmKyuLLr0H4uDsSs8WWppvhdraWhNfOfkq3ejgjqubG4Fev4mgJEnkl9dQU2skq6gSW2srRvX2Vh4vqtBRra/Fy8mOWm3dBYeDV1cCunVvtN5ao5HrpVrcHetOzB6Oto3eN5d+jYWWZ1byNTXYWqsUMZfNKhvWyHLK6oZ5b6UbTrawl12GWxKM+o7GBQUFyrxNUzNK7YnsNSdHBMybN48zZ85w+PDhZu2mLIFx48YpXWRQ16a8d+9etmzZgpubG4sXLwbg6NGjZlzl78ciBQbq+vYfeeQRZaL/woULjB49mujoaCIjI5EkCUmS8PPzw9/fv02Ch24X2bCyX79+HTas1Rqqq6sVsak/a+Pu7s758+dxdHRkyJAhrb7TKqrQ4WBrpWxdpeVo0BuMDO3u3qqZDBlJkki6VoaTrRUDu5ja5DQUMfn5mZmZnM3KZWTEULr43Lxh4mpJFTZWqiZPsJW6WpxsrZu8CKhf65Kv0uvXuqytrZW8FXdHW5MZGvnvVlfpsTNUk3a6rhvPySuAWqPUbKNEYXndlmC+pgZ7W2uTf/sNdV1LuCwolwrrXAe6ezpSU2vgQkElvi72eDjZKG3ZUDf8KHFzGyAZOXxLpVIRFnZrrdPQeEapuXmbtiQ7O5tLly4RERGBs7MzCxYs4L///S9HjhzpUC/C30NDgZEHLbdt22YyaCm2yNoQg8HAmDFjsLKyIiEhAV9fX7KysoiPjychIYHjx48zYsQIJk2axLBhw5TuMrmz6naL3bdKfcPKIUOGWMTteHPIW0K5ubmo1WpsbGwIDAzE39+/wwu3eoOBy4VVONnbmNRpAHLLtNhY1aVuQt0J/9y5c5SUlmIb0BcPF2cGdLl5wbawvAYrq98igQvKa3C2s8bKSkWeRot1C63AMvXNEmWrH29vb5w8vOke4IeTQ9OdZcXFxZw6dYqQkJBWXXAYJYl8TV23WpXOQG9fZxPBliQJba2xkVjklmmRkLCztsLHxR6dwUiFtlYRo9Yii4uVlRWhoaG3vbWr0+manLfx9fVtswvCa9eucfHiRcLDw3F1deW5557jp59+IjExsd1cyQWtxyIFBuDAgQOMHTu2kXWKJElcv36dhIQEEhIS+M9//kN4eDhTpkxhxIgR2NjYKMaScrG7PWsg9Q0rw8LCzNql0lpKS0tJTU2le/fuuLi4KFtC9vb2yvZje87ayGQVV2JtZdVIXBoit6bL0+NF1UaMkqSEn7WGfE0NV4orFdfjbh6OnLhaioejHX39Wt/dJ8dqX8vJJ7egEKO2Ag8PD+UqXa5fyV1+AwcOVK6idbXGFp2qTf7NxrotOFtrldIafUNdjd4gNZreN0oS5b+mdUJdEwLUdfS11rZFr9eTkpKCjY0NQ4cObfPPTHvUbW7cuEFGRgbh4eG4ubnx0ksvsX//fg4fPqxYTAnMi8UKTGuQJIm8vDx27txJQkICR44cYdCgQUydOpURI0bg6OhITU2NsrXR1gVI2WCzpqZpA0hLJD8/X8mdqX9VLTsZy1tCv2fWRl2tp7Km+elyk3VoaiiqqKGrh0OLVjP1E0nDwup80PLLtZRV6enr54LeIJGr0eJib9NiG7W6Sk9OmZay6rq23aheXqir6pyS7aytKK6swdnOpsWr/mq9gZJKPV3d7UnL1VCtMxDkbouuoq6Tr7S0FBcXFxwdHSksLGTw4MGKh1RhRQ2SVNdp5mBjhd4gtTgoCXUW/vY2dV5hlbpatDojtUapyUAzk9fMYKT8Fu5g2ltcGtIWdRvZxSMsLAx3d3dWrFjBrl27SExMpE+fPu26fkHr6dQCUx9JkiguLmb37t3ExcVx6NAh+vbtS0xMDCNHjsTV1VXprPL39/9d+d310Wq1pKSkYG9vz5AhQyzeYBPq9qovXrx409wZo9FIaWkp+fn5FBYWmszaeHl5NXsCyiquIl+jZUAX1yYdhosqdDjb18Uhy27ALd2F6HQ6kpOTsbOzMznxFVfqKNfqCfJywiBJ5JbVeYm1xngzs6ACW2sVLvY2yp1BrdFIXlkN7o62uDrUzZ+UVNW1IdcXv3xNDXqDEQ8nW6p1Booqaujj5/Jb55peT2ZmJjk5OXXbttZ2+Pr40LNbANaOLlwurKKPnxMarQGjUVIsZVrD9dJqVNBko8TtoNfrldf4VupwbYlctyksLEStVuPi4qK835rats3NzeX8+fOEhobi4eHBG2+8wdatW0lMTKRfv34dvn5B89wxAlMfeT7k22+/JT4+noMHDxIUFERMTAyjRo3Cw8ODqqoqpY3X19f3luZUNBoNqampimGluZsLbkZ9NwH5Q3krP1tWVkZ+fj4FBQXKrE1Td4TydLmbgy1Odo1PVNdKq7C2smrS56oh1dXVJCcnK63ebfUaS5LE5aJK3BxslfpOQ2pqDRRV6HBzsG00A1S/FbohsoDLURJpWbmUFpdAVQkanYSTmydBXf3p6ueNAVWTItwcZdV6VCpu6Wduhl6vJykpCXt7e4YOHWoR7+Ob1W1kZ4ahQ4fi5eXFmjVr+PTTTzl06BD33HOPuZcvaMAdKTAN0Wg07Nmzh/j4ePbv309AQAAxMTHce++9+Pr6Km28/v7++Pr6tmiZL3s2NWdYaWnIxfHS0lLCw8Nvy1qnqVkbLy+vVou0RqvHyc76pnWBiooKkpOTlaHa23mNJUniulqLi721cjdyvbSaWqOxWcfg38OVK1fIysoiPDxcGegr19aiUtU5EKRdzaegsAg7bSl6vd5kRskcjhTy3aGDgwNDhgyxCHFpSMO6jcFgoKamhkuXLvHYY4/xf//3f6xfv55Dhw4xZMgQcy9X0AR3hcDUp6Kign379hEfH8/evXvx9PQkJiaGMWPGKA4CctHWz8/PZD/42rVrZGZmcs8993SKtsH6IWxhYWFtnjVTWVmpiE15eXmzsza3QllZGSkpKQQGBhIcHHzbAl53x1KFm4NNs3cs8vNqjdItWe3LP3fp0iWuX79OREQErq6ulFbpcHWwMRFSdbUefa0RHxc7KioqlFpX/RklN09v7OztW91S/HvR6XQkJSUp+UmWKC4NKSgo4PTp0+j1el566SWys7OxsrLixRdfZNGiRaJjzEK56wSmPtXV1fzwww8kJCTw3Xff4eTkRExMDPfddx/du3envLwcNzc3fHx8UKvVaDSaW95iMhc1NTWkpKRga2vL0KFD271GJM/aFBQUoFarf1eujdzW26dPH3r06NGu621Idkmd2WRv31vrKMvMzCQ/P1+ZwTD+6jsGqlZvBcqv2+U8NY7OTgzq2QVfX99WRzTIBp2tQRYXZ2dnBg0a1CnERY65uOeee/Dz82PTpk28+eabzJ07l9TUVP79738zdOhQDh482Cmc1e8m7mqBqY9Wq+XHH38kISGB3bt3Y2VlRWxsLFFRUXz11Ve4ubmxdOlSunTpgr+/v9nDwFpCtqpxd3dv0/pFa9HpdCYZLc7OzorYNDdrIw+p1m/r7Ug0Wj1avRG/Bnc5OWVanOysG1m4yEFWxcXFREREmLwfiip0uDpYmww81n/M0KATrKSyrqFAU6WlqKgYraaY4uJiJaLB19cXd3f3Jl+3wooadLV1kQA3q8/U1NSQlJSEi4tLpxEX+aJjwIABBAQE8Nlnn/H666+zd+9eRo8erTzn0KFDPPLII+22Zf3uu++SkJBAeno6jo6OjBo1ir/+9a8mTQV3WhplWyAEpgn0ej1Hjhzhq6++YuvWrUiSxIMPPsjUqVPp27cvGo0GZ2dnZWbEnPbfDZG3mMxtVSNTP9dGnrWRxUY+acpZOTfrbusoCsprqKyppZePMxcKKnCxtzGZvjcajSYRvLeyHVg3y/Jb/UeS6nzIVCrTO56GbeNWVlYmnXyyOGj1Bkqq6rJxmos4ht/ExdXV1SwXHb+HkpISUlNT6d+/P126dOGrr77i5Zdf5rvvvmPcuHEdupapU6fy6KOPMmzYMGpra1m5ciVpaWmcO3dOqWveaWmUbYEQmGbIyMggJiaGyMhI5s6dy7fffsuuXbuoqKhg2rRpjB07ln79+lFRUYGjo6NiWWNOG3O5AcEcW0ytoamTpqOjI+Xl5YSG1sUDmJviSh05ZVo8HW2bbCOWUx2rq6sZMGgoOqwb3fX8nt/pYt/0HY/8O2XX7MLCwhY7+ZpCq9WSlJSk3NGa+6KjNajVapKTk5Wwwa+//polS5awa9cuJk6caO7lUVhYiJ+fH0eOHOG+++67I9Mo2wIhMM3wzDPP4OXlxTvvvKNc7RkMBn755Rfi4+PZuXMnRUVFTJ48mfHjxzNo0CAqKiqws7Pr0Gl4GXmquaXETEtCdnAuKipSZi/kdtT2dl9oifp3Lw0xGAycOnUKvV5PeHg4BZUGao1Geng6dtj/c/1OvsLCQiorK006+Ro2csji4uHhwcCBAzuFuJSVlZGcnEyfPn0IDAwkLi6OBQsWsGPHDqZNm2bu5QFw8eJF+vbty5kzZxg0aBCHDh1i4sSJlJaWmtRog4KCWLJkCS+88IL5FmtGhMA0g8FgaPEkZzQaOXnypOKPlpOTw8SJE5k4cSKDBw+muroaGxsb5c6muT3020WSJMWmXJ4NsHTk1mm1Wq3EA5SVlSkdaTqd7pau0DsC2acLUByGpV89w5pKlOwoqqqqFLGpb2Tq6+uLtbU1J0+exNPTs9OIi0ajISkpid69e9OjRw++/fZb5s6dy7Zt23jggQfMvTyg7v37wAMPoFar+fe//w3A1q1beeqpp6ipqTF57vDhwxk/fjx//etfzbFUs2P+T66FcrMraCsrK4YPH87w4cN59913OXXqFPHx8WzevJnLly8zYcIEoqOjsbGxIScnx8R6xdPTs00+7JIkkZ6eTmFhIZGRkZ3CB81gMHD69Gm0Wi3Dhg1Trrg9PDzw8PCgb9++ShvvlStXSEtL+90DsW2FPO0ud+TJ7w2VSmVWcQFwcnKiZ8+e9OzZUzEyLSws5OLFiwA4OzvTrVs3s66xtciZOcHBwfTo0YO9e/cyd+5cvvzyS4sRF4CFCxeSlpamiIugecQdTBsjSRLnzp0jLi6OhIQEzp8/z9ixY5k8eTJhYWHodHWpgb6+vrcVMyAbQFZVVREWFnbTkDBLQM6eAQgNDW3VgGHDWZvmZpTai5qaGpKTk5VIg85QHK+urubEiRM4Oztja2tLcXGxcoHTlk7GbUlFRQUnT54kKCiIXr16cfDgQWbNmsU//vEPHnvsMXMvT2HRokXs3r2bn376iV69einHxRZZ0wiBaUckSeLChQuK2Jw6dYp7772XSZMmERkZicFgMPH5am3MgBzHrFKpWn2iNjfyXE5DX7FbQavVKmKjVqtxdXVVxOZ2HApa+n1JSUltblfTnlRVVZGUlISvr6/igiB7y8mvnexkLL/nzL0FWVlZycmTJ+nevTu9e/fm8OHDzJw5k40bNzJ79myL2NqTJInFixezc+dODh8+TN++fU0el4v8d1IaZVsgBKaDkGslcoPA8ePHGTlyJJMnT2bYsGGoVCpqa2sbhVo1pLq6mpSUFGVQzlzF8FuhurrapIupLU7UDWdtnJyc2rSTTz5Re3t7M2DAAIs4yd0Mec1+fn6EhIQ0uWbZyVgWG61We0t2P22NLC7dunWjd+/e/Oc//2H69Ol88MEHzJ0712Je9wULFrB161Z2795tMvvi7u6u7B7caWmUbYEQGDPQVKZNREQEU6dOJSoqChsbG6XQLWfa2NjYKHvUfn5+9O/f32I+fC3Rlr5izdEw6tjOzq7RrM2tUFlZSVJSEv7+/s2eqC2N37tmeQuysLAQjUaDu7u7IjbtPUxcVVXFyZMn6dKlC3369OG///0vDz30EGvWrGHBggUW9bo3t5bPP/+cOXPmAHdeGmVbIATGzNTPtImPj+enn35i8ODBTJs2jREjRuDg4IBWqyU7OxsfHx8GDBhA7969LerD1xxqtZrU1NQ28xVrDbJBonzSVKlUJs0VN7t7Ki8vJykpSdmu6Qyvs3wX0LVr19sartVqtUqTQElJieLA4Ovri6ura5u+FtXV1Zw8eVK520pOTuZ//ud/ePPNN3nuuec6xesuuDlCYCwISZIoKipi165dxMfHc+jQIfr370+3bt04dOgQq1atYvDgwUqmja+vr8XWX8zpKyZTf0CxoKAAg8HQ4hakPH/Rs2dPkwKuJVNRUUFSUtJti0tDZAeGwsJCioqKsLW1VcSmtQF0zaHVajl58iTe3t7079+f06dPExsby4oVK3jppZeEuNxBCIGxUCRJorS0lIULFxIXFwdAnz59lEwbT09PKioqlP1zPz8/s7TwNoW5fcWaQs61kcWmpqbGZNamvLyc1NRUi3VBaApZXOT6RXudmBva5suNKb9nKFZunPD09GTAgAGcPXuWmJgYlixZwquvvirE5Q5DCIyFYjQaefnll/nnP//J999/T9++fdmzZw8JCQns37+fLl26KDED8gnSw8NDubMxV3zztWvXuHDhgsX4ijWFJEnKrE1BQQGVlZVIkkSXLl0ICQmxGKFuCXkrLzAwkN69e3fY721OqGXBaemOWvZDc3d3Z+DAgWRkZDBt2jSeeeYZ3nzzTSEudyBCYCwUo9HIypUrmTdvXqMTSEVFBXv37iUhIYG9e/fi5eWlxAz4+/tTXl6uFGv9/Pw6ZEamvqNAWFhYp4g0gN9yRvz9/amurkaj0SizNr6+vhY5XySLS48ePQgODjbbOiRJMplTqp+l1PC10+l0nDx5EldXVwYNGsTFixeZNm0as2fP5t133+0ULeCCW8csAvP999/z1ltvcfr0aRwcHBg7diy7du1SHs/Ozmb+/PkkJibi4uLCk08+ybvvvmv2fn1LpKqqigMHDhAfH8+ePXtwcnIiNjZWybTRaDS4uroq/mjt0Rkk56Lk5eURHh7eKRwFoC7b/dy5cwwePBg/Pz/gt0J3QUEBp
Download .txt
gitextract_en0yens4/

├── .clang-format
├── .clangd_template
├── .github/
│   └── workflows/
│       ├── building.yml
│       ├── core_tests.yml
│       └── cuda/
│           ├── Linux-env.sh
│           ├── Linux.sh
│           ├── Windows-env.sh
│           └── Windows.sh
├── .gitignore
├── .gitmodules
├── LICENSE
├── MANIFEST.in
├── README.md
├── assets/
│   └── test_garden.npz
├── build_extensions.py
├── examples/
│   ├── lidar_rendering.ipynb
│   └── rolling_shutter.ipynb
├── gsplat/
│   ├── __init__.py
│   ├── _helper.py
│   ├── compression/
│   │   ├── __init__.py
│   │   ├── png_compression.py
│   │   └── sort.py
│   ├── cuda/
│   │   ├── __init__.py
│   │   ├── _backend.py
│   │   ├── _torch_impl.py
│   │   ├── _wrapper.py
│   │   └── csrc/
│   │       ├── bindings.h
│   │       ├── ext.cpp
│   │       ├── helpers.cuh
│   │       ├── projection.cu
│   │       ├── rasterization.cu
│   │       ├── relocation.cu
│   │       ├── sh.cu
│   │       └── utils.cuh
│   ├── distributed.py
│   ├── profile.py
│   ├── relocation.py
│   ├── rendering.py
│   ├── strategy/
│   │   ├── __init__.py
│   │   ├── base.py
│   │   ├── default.py
│   │   ├── mcmc.py
│   │   └── ops.py
│   ├── utils.py
│   └── version.py
├── pyproject.toml
├── setup.py
└── tests/
    ├── _test_distributed.py
    ├── test_basic.py
    ├── test_compression.py
    ├── test_rasterization.py
    └── test_strategy.py
Download .txt
SYMBOL INDEX (177 symbols across 23 files)

FILE: build_extensions.py
  function get_commit_hash (line 15) | def get_commit_hash():
  function main (line 18) | def main():

FILE: gsplat/_helper.py
  function load_test_data (line 9) | def load_test_data(

FILE: gsplat/compression/png_compression.py
  class PngCompression (line 16) | class PngCompression:
    method _get_compress_fn (line 47) | def _get_compress_fn(self, param_name: str) -> Callable:
    method _get_decompress_fn (line 61) | def _get_decompress_fn(self, param_name: str) -> Callable:
    method compress (line 75) | def compress(self, compress_dir: str, splats: Dict[str, Tensor]) -> None:
    method decompress (line 113) | def decompress(self, compress_dir: str) -> Dict[str, Tensor]:
  function _crop_n_splats (line 135) | def _crop_n_splats(splats: Dict[str, Tensor], n_crop: int) -> Dict[str, ...
  function _compress_png (line 143) | def _compress_png(
  function _decompress_png (line 185) | def _decompress_png(compress_dir: str, param_name: str, meta: Dict[str, ...
  function _compress_png_16bit (line 215) | def _compress_png_16bit(
  function _decompress_png_16bit (line 263) | def _decompress_png_16bit(
  function _compress_npz (line 298) | def _compress_npz(
  function _decompress_npz (line 313) | def _decompress_npz(compress_dir: str, param_name: str, meta: Dict[str, ...
  function _compress_kmeans (line 322) | def _compress_kmeans(
  function _decompress_kmeans (line 391) | def _decompress_kmeans(

FILE: gsplat/compression/sort.py
  function sort_splats (line 7) | def sort_splats(splats: Dict[str, Tensor], verbose: bool = True) -> Dict...

FILE: gsplat/cuda/_backend.py
  function load_extension (line 23) | def load_extension(
  function cuda_toolkit_available (line 56) | def cuda_toolkit_available():
  function cuda_toolkit_version (line 65) | def cuda_toolkit_version():

FILE: gsplat/cuda/_torch_impl.py
  function _quat_scale_to_covar_preci (line 10) | def _quat_scale_to_covar_preci(
  function _persp_proj (line 54) | def _persp_proj(
  function _depth_compensation_from_cov3d (line 104) | def _depth_compensation_from_cov3d(cov3d: Tensor, eps2d: float) -> Tensor:
  function _lidar_proj (line 120) | def _lidar_proj(
  function _world_to_cam (line 168) | def _world_to_cam(
  function _compute_pix_velocity (line 193) | def _compute_pix_velocity(
  function _compute_lidar_velocity (line 227) | def _compute_lidar_velocity(p_view: Tensor, lin_vel: Tensor, ang_vel: Te...
  function _fully_fused_projection (line 265) | def _fully_fused_projection(
  function _fully_fused_lidar_projection (line 341) | def _fully_fused_lidar_projection(
  function _isect_tiles (line 422) | def _isect_tiles(
  function _isect_lidar_tiles (line 492) | def _isect_lidar_tiles(
  function _isect_offset_encode (line 585) | def _isect_offset_encode(isect_ids: Tensor, C: int, tile_width: int, til...
  function accumulate (line 610) | def accumulate(
  function accumulate_lidar (line 702) | def accumulate_lidar(
  function _rasterize_to_pixels (line 823) | def _rasterize_to_pixels(
  function _rasterize_to_points (line 921) | def _rasterize_to_points(
  function _eval_sh_bases_fast (line 1026) | def _eval_sh_bases_fast(basis_dim: int, dirs: Tensor):
  function _spherical_harmonics (line 1108) | def _spherical_harmonics(

FILE: gsplat/cuda/_wrapper.py
  function _make_lazy_cuda_func (line 7) | def _make_lazy_cuda_func(name: str) -> Callable:
  function spherical_harmonics (line 17) | def spherical_harmonics(
  function quat_scale_to_covar_preci (line 46) | def quat_scale_to_covar_preci(
  function persp_proj (line 80) | def persp_proj(
  function compute_pix_velocity (line 111) | def compute_pix_velocity(p_view: Tensor, # [C, N, 3]
  function world_to_cam (line 147) | def world_to_cam(
  function lidar_proj (line 175) | def lidar_proj(means: Tensor, # [C, N, 3]
  function compute_lidar_velocity (line 201) | def compute_lidar_velocity(p_view: Tensor, # [C, N, 3]
  function fully_fused_projection (line 230) | def fully_fused_projection(
  function fully_fused_lidar_projection (line 390) | def fully_fused_lidar_projection(
  function isect_tiles (line 533) | def isect_tiles(
  function isect_lidar_tiles (line 606) | def isect_lidar_tiles(
  function isect_offset_encode (line 680) | def isect_offset_encode(
  function map_points_to_lidar_tiles (line 699) | def map_points_to_lidar_tiles(
  function points_mapping_offset_encode (line 758) | def points_mapping_offset_encode(
  function populate_image_from_points (line 777) | def populate_image_from_points(
  function rasterize_to_pixels (line 811) | def rasterize_to_pixels(
  function rasterize_to_points (line 958) | def rasterize_to_points(
  function rasterize_to_indices_in_range (line 1122) | def rasterize_to_indices_in_range(
  function rasterize_to_indices_in_range_lidar (line 1208) | def rasterize_to_indices_in_range_lidar(
  class _QuatScaleToCovarPreci (line 1292) | class _QuatScaleToCovarPreci(torch.autograd.Function):
    method forward (line 1296) | def forward(
    method backward (line 1314) | def backward(ctx, v_covars: Tensor, v_precis: Tensor):
  class _PerspProj (line 1332) | class _PerspProj(torch.autograd.Function):
    method forward (line 1336) | def forward(
    method backward (line 1353) | def backward(ctx, v_means2d: Tensor, v_covars2d: Tensor):
  class _ComputePixVelocity (line 1368) | class _ComputePixVelocity(torch.autograd.Function):
    method forward (line 1372) | def forward(
    method backward (line 1391) | def backward(ctx, v_vel: Tensor):
  class _WorldToCam (line 1407) | class _WorldToCam(torch.autograd.Function):
    method forward (line 1411) | def forward(
    method backward (line 1424) | def backward(ctx, v_means_c: Tensor, v_covars_c: Tensor):
  class _LidarProj (line 1444) | class _LidarProj(torch.autograd.Function):
    method forward (line 1448) | def forward(
    method backward (line 1462) | def backward(ctx, v_means2d: Tensor, v_covars2d: Tensor, v_depth_compe...
  class _ComputeLidarVelocity (line 1475) | class _ComputeLidarVelocity(torch.autograd.Function):
    method forward (line 1479) | def forward(
    method backward (line 1493) | def backward(ctx, v_vel: Tensor):
  class _FullyFusedProjection (line 1504) | class _FullyFusedProjection(torch.autograd.Function):
    method forward (line 1508) | def forward(
    method backward (line 1574) | def backward(ctx, v_radii, v_means2d, v_depths, v_conics, v_compensati...
  class _FullyFusedLidarProjection (line 1651) | class _FullyFusedLidarProjection(torch.autograd.Function):
    method forward (line 1655) | def forward(
    method backward (line 1724) | def backward(ctx, v_radii, v_means2d, v_depths, v_conics, v_compensati...
  class _RasterizeToPixels (line 1805) | class _RasterizeToPixels(torch.autograd.Function):
    method forward (line 1809) | def forward(
    method backward (line 1868) | def backward(
  class _RasterizeToPoints (line 1948) | class _RasterizeToPoints(torch.autograd.Function):
    method forward (line 1952) | def forward(
    method backward (line 2028) | def backward(
  class _FullyFusedProjectionPacked (line 2125) | class _FullyFusedProjectionPacked(torch.autograd.Function):
    method forward (line 2129) | def forward(
    method backward (line 2206) | def backward(
  class _SphericalHarmonics (line 2339) | class _SphericalHarmonics(torch.autograd.Function):
    method forward (line 2343) | def forward(
    method backward (line 2353) | def backward(ctx, v_colors: Tensor):

FILE: gsplat/cuda/csrc/ext.cpp
  function PYBIND11_MODULE (line 4) | PYBIND11_MODULE(TORCH_EXTENSION_NAME, m) {

FILE: gsplat/distributed.py
  function all_gather_int32 (line 10) | def all_gather_int32(
  function all_to_all_int32 (line 55) | def all_to_all_int32(
  function all_gather_tensor_list (line 102) | def all_gather_tensor_list(world_size: int, tensor_list: List[Tensor]) -...
  function all_to_all_tensor_list (line 170) | def all_to_all_tensor_list(
  function _find_free_port (line 260) | def _find_free_port():
  function _distributed_worker (line 272) | def _distributed_worker(
  function cli (line 304) | def cli(fn: Callable, args: Any, verbose: bool = False) -> bool:

FILE: gsplat/profile.py
  class timeit (line 11) | class timeit(object):
    method __init__ (line 32) | def __init__(self, name: str = "unnamed"):
    method __enter__ (line 37) | def __enter__(self):
    method __exit__ (line 42) | def __exit__(self, exc_type, exc_val, exc_tb):
    method __call__ (line 52) | def __call__(self, f: Callable) -> Callable:

FILE: gsplat/relocation.py
  function compute_relocation (line 10) | def compute_relocation(

FILE: gsplat/rendering.py
  function rasterization (line 22) | def rasterization(
  function lidar_rasterization (line 453) | def lidar_rasterization(
  function rasterization_inria_wrapper (line 832) | def rasterization_inria_wrapper(

FILE: gsplat/strategy/base.py
  class Strategy (line 8) | class Strategy:
    method check_sanity (line 15) | def check_sanity(
    method step_pre_backward (line 33) | def step_pre_backward(
    method step_post_backward (line 41) | def step_post_backward(

FILE: gsplat/strategy/default.py
  class DefaultStrategy (line 12) | class DefaultStrategy(Strategy):
    method initialize_state (line 96) | def initialize_state(self, scene_scale: float = 1.0) -> Dict[str, Any]:
    method check_sanity (line 112) | def check_sanity(
    method step_pre_backward (line 138) | def step_pre_backward(
    method step_post_backward (line 152) | def step_post_backward(
    method _update_state (line 203) | def _update_state(
    method _grow_gs (line 262) | def _grow_gs(
    method _prune_gs (line 312) | def _prune_gs(

FILE: gsplat/strategy/mcmc.py
  class MCMCStrategy (line 13) | class MCMCStrategy(Strategy):
    method initialize_state (line 57) | def initialize_state(self) -> Dict[str, Any]:
    method check_sanity (line 66) | def check_sanity(
    method step_post_backward (line 103) | def step_post_backward(
    method _relocate_gs (line 151) | def _relocate_gs(
    method _add_new_gs (line 174) | def _add_new_gs(

FILE: gsplat/strategy/ops.py
  function _multinomial_sample (line 14) | def _multinomial_sample(weights: Tensor, n: int, replacement: bool = Tru...
  function _update_param_with_optimizer (line 48) | def _update_param_with_optimizer(
  function duplicate (line 98) | def duplicate(
  function split (line 129) | def split(
  function remove (line 189) | def remove(
  function reset_opa (line 219) | def reset_opa(
  function relocate (line 250) | def relocate(
  function sample_add (line 310) | def sample_add(
  function inject_noise_to_position (line 357) | def inject_noise_to_position(

FILE: gsplat/utils.py
  function normalized_quat_to_rotmat (line 8) | def normalized_quat_to_rotmat(quat: Tensor) -> Tensor:
  function log_transform (line 36) | def log_transform(x):
  function inverse_log_transform (line 40) | def inverse_log_transform(y):
  function depth_to_points (line 44) | def depth_to_points(
  function depth_to_normal (line 108) | def depth_to_normal(
  function get_projection_matrix (line 134) | def get_projection_matrix(znear, zfar, fovX, fovY, device="cuda"):

FILE: setup.py
  function get_ext (line 19) | def get_ext():
  function get_extensions (line 25) | def get_extensions():

FILE: tests/_test_distributed.py
  function _main_all_gather_int32 (line 13) | def _main_all_gather_int32(local_rank: int, world_rank: int, world_size:...
  function test_all_gather_int32 (line 28) | def test_all_gather_int32():
  function _main_all_to_all_int32 (line 32) | def _main_all_to_all_int32(local_rank: int, world_rank: int, world_size:...
  function test_all_to_all_int32 (line 47) | def test_all_to_all_int32():
  function _main_all_gather_tensor_list (line 51) | def _main_all_gather_tensor_list(local_rank: int, world_rank: int, world...
  function test_all_gather_tensor_list (line 71) | def test_all_gather_tensor_list():
  function _main_all_to_all_tensor_list (line 75) | def _main_all_to_all_tensor_list(local_rank: int, world_rank: int, world...
  function test_all_to_all_tensor_list (line 106) | def test_all_to_all_tensor_list():

FILE: tests/test_basic.py
  function test_data (line 20) | def test_data():
  function test_quat_scale_to_covar_preci (line 60) | def test_quat_scale_to_covar_preci(test_data, triu: bool):
  function test_world_to_cam (line 98) | def test_world_to_cam(test_data):
  function test_persp_proj (line 136) | def test_persp_proj(test_data):
  function test_lidar_proj (line 174) | def test_lidar_proj(test_data, calc_depth_comp_grads: bool):
  function test_compute_lidar_velocity (line 211) | def test_compute_lidar_velocity(test_data):
  function test_compute_pix_velocity (line 247) | def test_compute_pix_velocity(test_data):
  function test_projection (line 288) | def test_projection(test_data, fused: bool, calc_compensations: bool, us...
  function test_fully_fused_projection_packed (line 403) | def test_fully_fused_projection_packed(test_data, fused: bool, sparse_gr...
  function test_lidar_projection (line 568) | def test_lidar_projection(test_data, fused: bool, calc_compensations: bo...
  function test_isect (line 698) | def test_isect(test_data):
  function test_isect_lidar (line 727) | def test_isect_lidar(test_data):
  function test_map_points_to_lidar_tiles (line 787) | def test_map_points_to_lidar_tiles(test_data):
  function test_populate_image_from_points (line 844) | def test_populate_image_from_points(test_data):
  function test_rasterize_to_pixels (line 893) | def test_rasterize_to_pixels(test_data, channels: int):
  function test_rasterize_to_points (line 1016) | def test_rasterize_to_points(test_data, compute_alpha_sum_until_points: ...
  function test_accumulate_until_points (line 1203) | def test_accumulate_until_points(test_data, use_random_test_points: bool...
  function test_sh (line 1376) | def test_sh(test_data, sh_degree: int):

FILE: tests/test_compression.py
  function test_png_compression (line 16) | def test_png_compression():

FILE: tests/test_rasterization.py
  function test_rasterization (line 23) | def test_rasterization(per_view_color: bool, sh_degree: Optional[int], r...
  function test_lidar_rasterization (line 86) | def test_lidar_rasterization(channels: int):

FILE: tests/test_strategy.py
  function test_strategy (line 16) | def test_strategy():
Condensed preview — 52 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (2,517K chars).
[
  {
    "path": ".clang-format",
    "chars": 118,
    "preview": "BasedOnStyle: LLVM\nAlignAfterOpenBracket: BlockIndent\nBinPackArguments: false\nBinPackParameters: false\nIndentWidth: 4\n"
  },
  {
    "path": ".clangd_template",
    "chars": 663,
    "preview": "# To set up the clangd config.\n# 1. Activate an environment with cuda installed. (probably via conda, skip if using syst"
  },
  {
    "path": ".github/workflows/building.yml",
    "chars": 4850,
    "preview": "name: Building Wheels\n\non: [workflow_dispatch]\n\njobs:\n\n  wheel:\n    runs-on: ${{ matrix.os }}\n    environment: productio"
  },
  {
    "path": ".github/workflows/core_tests.yml",
    "chars": 645,
    "preview": "name: Core Tests.\n\non:\n  push:\n    branches: [main]\n  pull_request:\n    branches: [main]\n\npermissions:\n  contents: read\n"
  },
  {
    "path": ".github/workflows/cuda/Linux-env.sh",
    "chars": 1464,
    "preview": "#!/bin/bash\n\n# Took from https://github.com/pyg-team/pyg-lib/\n\ncase ${1} in\n  cu118)\n    export CUDA_HOME=/usr/local/cud"
  },
  {
    "path": ".github/workflows/cuda/Linux.sh",
    "chars": 1960,
    "preview": "#!/bin/bash\n\n# Took from https://github.com/pyg-team/pyg-lib/\n\nOS=ubuntu2004\n\ncase ${1} in\n  cu118)\n    CUDA=11.8\n    AP"
  },
  {
    "path": ".github/workflows/cuda/Windows-env.sh",
    "chars": 1422,
    "preview": "#!/bin/bash\n\n# Took from https://github.com/pyg-team/pyg-lib/\n\ncase ${1} in\n  cu118)\n    CUDA_HOME=/c/Program\\ Files/NVI"
  },
  {
    "path": ".github/workflows/cuda/Windows.sh",
    "chars": 1968,
    "preview": "#!/bin/bash\n\n# Took from https://github.com/pyg-team/pyg-lib/\n\n# Install NVIDIA drivers, see:\n# https://github.com/pytor"
  },
  {
    "path": ".gitignore",
    "chars": 1387,
    "preview": ".clangd\ncompile_commands.json\n\n# Visual Studio Code configs.\n.vscode/\n\n# Byte-compiled / optimized / DLL files\n__pycache"
  },
  {
    "path": ".gitmodules",
    "chars": 129,
    "preview": "[submodule \"gsplat/cuda/csrc/third_party/glm\"]\n\tpath = gsplat/cuda/csrc/third_party/glm\n\turl = https://github.com/g-truc"
  },
  {
    "path": "LICENSE",
    "chars": 11357,
    "preview": "                                 Apache License\n                           Version 2.0, January 2004\n                   "
  },
  {
    "path": "MANIFEST.in",
    "chars": 37,
    "preview": "recursive-include gsplat/cuda/csrc *\n"
  },
  {
    "path": "README.md",
    "chars": 3534,
    "preview": "<p align=\"center\">\n    <!-- project badges -->\n    <a href=\"https://research.zenseact.com/publications/splatad/\"><img sr"
  },
  {
    "path": "build_extensions.py",
    "chars": 1507,
    "preview": "import os\nimport subprocess\nimport shutil\nfrom pathlib import Path\nimport argparse\n\nparser = argparse.ArgumentParser(des"
  },
  {
    "path": "examples/lidar_rendering.ipynb",
    "chars": 1453911,
    "preview": "{\n \"cells\": [\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"### Demo of lidar_rasterization usa"
  },
  {
    "path": "examples/rolling_shutter.ipynb",
    "chars": 235265,
    "preview": "{\n \"cells\": [\n  {\n   \"cell_type\": \"markdown\",\n   \"metadata\": {},\n   \"source\": [\n    \"### Demo of rolling shutter compens"
  },
  {
    "path": "gsplat/__init__.py",
    "chars": 1084,
    "preview": "import warnings\n\nfrom .cuda._torch_impl import accumulate\nfrom .cuda._wrapper import (\n    fully_fused_projection,\n    i"
  },
  {
    "path": "gsplat/_helper.py",
    "chars": 1992,
    "preview": "import os\nfrom typing import Optional, Tuple\n\nimport numpy as np\nimport torch\nimport torch.nn.functional as F\n\n\ndef load"
  },
  {
    "path": "gsplat/compression/__init__.py",
    "chars": 44,
    "preview": "from .png_compression import PngCompression\n"
  },
  {
    "path": "gsplat/compression/png_compression.py",
    "chars": 13568,
    "preview": "import json\nimport os\nfrom dataclasses import dataclass\nfrom typing import Any, Callable, Dict\n\nimport numpy as np\nimpor"
  },
  {
    "path": "gsplat/compression/sort.py",
    "chars": 1618,
    "preview": "from typing import Dict\n\nimport torch\nfrom torch import Tensor\n\n\ndef sort_splats(splats: Dict[str, Tensor], verbose: boo"
  },
  {
    "path": "gsplat/cuda/__init__.py",
    "chars": 0,
    "preview": ""
  },
  {
    "path": "gsplat/cuda/_backend.py",
    "chars": 5031,
    "preview": "import glob\nimport json\nimport os\nimport shutil\nfrom subprocess import DEVNULL, call\n\nfrom rich.console import Console\nf"
  },
  {
    "path": "gsplat/cuda/_torch_impl.py",
    "chars": 42207,
    "preview": "import math\nimport struct\nfrom typing import Optional, Tuple\n\nimport torch\nimport torch.nn.functional as F\nfrom torch im"
  },
  {
    "path": "gsplat/cuda/_wrapper.py",
    "chars": 85016,
    "preview": "from typing import Callable, Optional, Tuple\n\nimport torch\nfrom torch import Tensor\n\n\ndef _make_lazy_cuda_func(name: str"
  },
  {
    "path": "gsplat/cuda/csrc/bindings.h",
    "chars": 24192,
    "preview": "#include \"third_party/glm/glm/glm.hpp\"\n#include \"third_party/glm/glm/gtc/type_ptr.hpp\"\n#include <c10/cuda/CUDAGuard.h>\n#"
  },
  {
    "path": "gsplat/cuda/csrc/ext.cpp",
    "chars": 2478,
    "preview": "#include \"bindings.h\"\n#include <torch/extension.h>\n\nPYBIND11_MODULE(TORCH_EXTENSION_NAME, m) {\n    m.def(\"compute_sh_fwd"
  },
  {
    "path": "gsplat/cuda/csrc/helpers.cuh",
    "chars": 11837,
    "preview": "#ifndef GSPLAT_CUDA_HELPERS_H\n#define GSPLAT_CUDA_HELPERS_H\n\n#include \"third_party/glm/glm/glm.hpp\"\n#include \"third_part"
  },
  {
    "path": "gsplat/cuda/csrc/projection.cu",
    "chars": 115106,
    "preview": "#include \"bindings.h\"\n#include \"helpers.cuh\"\n#include \"third_party/glm/glm/glm.hpp\"\n#include \"third_party/glm/glm/gtc/ty"
  },
  {
    "path": "gsplat/cuda/csrc/rasterization.cu",
    "chars": 244790,
    "preview": "#include \"bindings.h\"\n#include \"helpers.cuh\"\n#include \"utils.cuh\"\n#include <cmath>\n#include <cooperative_groups.h>\n#incl"
  },
  {
    "path": "gsplat/cuda/csrc/relocation.cu",
    "chars": 2117,
    "preview": "#include \"bindings.h\"\n\n// Equation (9) in \"3D Gaussian Splatting as Markov Chain Monte Carlo\"\n__global__ void compute_re"
  },
  {
    "path": "gsplat/cuda/csrc/sh.cu",
    "chars": 19794,
    "preview": "#include \"bindings.h\"\n#include \"third_party/glm/glm/glm.hpp\"\n#include \"third_party/glm/glm/gtc/type_ptr.hpp\"\n#include <c"
  },
  {
    "path": "gsplat/cuda/csrc/utils.cuh",
    "chars": 21711,
    "preview": "#ifndef GSPLAT_CUDA_UTILS_H\n#define GSPLAT_CUDA_UTILS_H\n\n#include \"helpers.cuh\"\n#include \"third_party/glm/glm/glm.hpp\"\n#"
  },
  {
    "path": "gsplat/distributed.py",
    "chars": 12947,
    "preview": "import os\nfrom typing import Any, Callable, List, Optional, Union\n\nimport torch\nimport torch.distributed as dist\nimport "
  },
  {
    "path": "gsplat/profile.py",
    "chars": 1411,
    "preview": "import os\nimport time\nfrom functools import wraps\nfrom typing import Callable, Optional\n\nimport torch\n\nprofiler = {}\n\n\nc"
  },
  {
    "path": "gsplat/relocation.py",
    "chars": 1615,
    "preview": "import math\nfrom typing import Tuple\n\nimport torch\nfrom torch import Tensor\n\nfrom .cuda._wrapper import _make_lazy_cuda_"
  },
  {
    "path": "gsplat/rendering.py",
    "chars": 42830,
    "preview": "import math\nfrom typing import Dict, Optional, Tuple, Union\n\nimport torch\nfrom torch import Tensor\nfrom typing_extension"
  },
  {
    "path": "gsplat/strategy/__init__.py",
    "chars": 95,
    "preview": "from .base import Strategy\nfrom .default import DefaultStrategy\nfrom .mcmc import MCMCStrategy\n"
  },
  {
    "path": "gsplat/strategy/base.py",
    "chars": 1355,
    "preview": "from dataclasses import dataclass\nfrom typing import Dict, Union\n\nimport torch\n\n\n@dataclass\nclass Strategy:\n    \"\"\"Base "
  },
  {
    "path": "gsplat/strategy/default.py",
    "chars": 13763,
    "preview": "from dataclasses import dataclass\nfrom typing import Any, Dict, Tuple, Union\n\nimport torch\nfrom typing_extensions import"
  },
  {
    "path": "gsplat/strategy/mcmc.py",
    "chars": 6915,
    "preview": "import math\nfrom dataclasses import dataclass\nfrom typing import Any, Dict, Union\n\nimport torch\nfrom torch import Tensor"
  },
  {
    "path": "gsplat/strategy/ops.py",
    "chars": 13847,
    "preview": "from typing import Callable, Dict, List, Union\n\nimport numpy as np\nimport torch\nimport torch.nn.functional as F\nfrom tor"
  },
  {
    "path": "gsplat/utils.py",
    "chars": 8281,
    "preview": "import math\n\nimport torch\nimport torch.nn.functional as F\nfrom torch import Tensor\n\n\ndef normalized_quat_to_rotmat(quat:"
  },
  {
    "path": "gsplat/version.py",
    "chars": 22,
    "preview": "__version__ = \"1.0.0\"\n"
  },
  {
    "path": "pyproject.toml",
    "chars": 177,
    "preview": "[build-system]\n# -- Everything needed just to run setup.py ---------------\nrequires = [\n    \"setuptools>=62\",      # the"
  },
  {
    "path": "setup.py",
    "chars": 3953,
    "preview": "import glob\nimport os\nimport os.path as osp\nimport platform\nimport sys\n\nfrom setuptools import find_packages, setup\n\n__v"
  },
  {
    "path": "tests/_test_distributed.py",
    "chars": 3643,
    "preview": "import pytest\nimport torch\n\nfrom gsplat.distributed import (\n    all_gather_int32,\n    all_gather_tensor_list,\n    all_t"
  },
  {
    "path": "tests/test_basic.py",
    "chars": 56147,
    "preview": "\"\"\"Tests for the functions in the CUDA extension.\n\nUsage:\n```bash\npytest <THIS_PY_FILE> -s\n```\n\"\"\"\n\nimport math\n\nimport "
  },
  {
    "path": "tests/test_compression.py",
    "chars": 1110,
    "preview": "\"\"\"Tests for the functions in the CUDA extension.\n\nUsage:\n```bash\npytest <THIS_PY_FILE> -s\n```\n\"\"\"\n\nimport pytest\nimport"
  },
  {
    "path": "tests/test_rasterization.py",
    "chars": 5878,
    "preview": "\"\"\"Tests for the functions in the CUDA extension.\n\nUsage:\n```bash\npytest <THIS_PY_FILE> -s\n```\n\"\"\"\n\nimport math\nfrom typ"
  },
  {
    "path": "tests/test_strategy.py",
    "chars": 2014,
    "preview": "\"\"\"Tests for the functions in the CUDA extension.\n\nUsage:\n```bash\npytest <THIS_PY_FILE> -s\n```\n\"\"\"\n\nimport pytest\nimport"
  }
]

// ... and 1 more files (download for full content)

About this extraction

This page contains the full source code of the carlinds/splatad GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 52 files (2.4 MB), approximately 624.5k tokens, and a symbol index with 177 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.

Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.

Copied to clipboard!