From 83a9d6d77841bd9da6f0d494c1df9f4bb43d58b0 Mon Sep 17 00:00:00 2001 From: ssolson Date: Wed, 8 May 2024 07:24:46 -0600 Subject: [PATCH] MHKiT v0.8.0 (#321) # MHKiT v0.8.0 We're excited to announce the release of MHKiT v0.8.0, which brings a host of new features, enhancements, and bug fixes across various modules, ensuring compatibility with Python 3.10 and 3.11, and introducing full xarray support for more flexible data handling. Significant updates in the Wave and DOLfYN modules improve functionality and extend capabilities. ## Python 3.10 & 3.11 Support MHKiT now supports python 3.10 and 3.11. Support for 3.12 will follow in the next minor update. - https://github.com/MHKiT-Software/MHKiT-Python/pull/240 ## Wave Module ### Enhancements: **Automatic Threshold Calculation for Peaks-Over-Threshold**: We've introduced a new feature that automatically calculates the "best" threshold for identifying significant wave events. This method, originally developed by Neary, V. S., et al. in their 2020 study, has now been translated from Matlab to Python, enhancing our existing peaks-over-threshold functionality. **Wave Heights Analysis**: A new function, `wave_heights`, has been added to extract the heights of individual waves from a time series. This function uses zero up-crossing analysis to accurately measure wave heights, improving upon our previous methods which only provided the maximum value between up-crossings. **Enhanced Zero Crossing Analysis**: Building on the above, the zero crossing code previously embedded in `global_peaks` has been isolated into a helper function. This modular approach not only refines the codebase but also supports new functionalities such as calculating wave heights, zero crossing periods, and identifying crests. ### Bug Fixes: **Contour Sampling Error in Wave Contours**: A bug identified in `mhkit.wave.contours.samples_contour` has been resolved. The issue occurred when period samples defined using the maximum period resulted in values outside the interpolation range of the contour data. This was corrected by ensuring that all sampling points are within the interpolation range and adjusting the contour data selection process accordingly. - https://github.com/MHKiT-Software/MHKiT-Python/pull/268 - https://github.com/MHKiT-Software/MHKiT-Python/pull/252 - https://github.com/MHKiT-Software/MHKiT-Python/pull/278 ## Xarray Support MHKiT functions now fully support the use of xarray for passing and returning data. - https://github.com/MHKiT-Software/MHKiT-Python/pull/279 - https://github.com/MHKiT-Software/MHKiT-Python/pull/282 - https://github.com/MHKiT-Software/MHKiT-Python/pull/285 - https://github.com/MHKiT-Software/MHKiT-Python/pull/302 - https://github.com/MHKiT-Software/MHKiT-Python/pull/310 ## DOLfYN Thanks to the many user contributions and users of MHKiT the DOLFYN module include a significant number of enhancements and bug fixes. ### Enhancements: **Altimeter Support**: Enhanced the Nortek Signature Reader to add capability for reading ADCP dual profile configurations. **Data Handling Improvements**: Introduced logic to skip messy header data that can accumulate during measurements collected via Nortek software on PCs and Macs. **Instrument Noise Subtraction**: Added a function to subtract instrument noise from turbulence intensity estimation using RMS calculations, providing results that differ by approximately 1% from the existing standard deviation-based "I" property. **Improved File Handling**: Updates for RDI files to handle changing "number of cells" and variable "cell sizes," which are now bin-averaged into the largest cell size. ### Bug Fixes: **Power Spectra Calculation**: Fixed a bug where a given noise value was not being subtracted from the power spectra, and noise was inadvertently added as an input to dissipation rate calculations. **Improved Header Handling**: Allowed RDI reader to skip junk headers effectively. **Nortek Reader C Types Update**: Adjusted C types in the Nortek reader to handle below-zero water temperatures and to allow pitch and roll values to go negative. - https://github.com/MHKiT-Software/MHKiT-Python/pull/280 - https://github.com/MHKiT-Software/MHKiT-Python/pull/289 - https://github.com/MHKiT-Software/MHKiT-Python/pull/290 - https://github.com/MHKiT-Software/MHKiT-Python/pull/292 - https://github.com/MHKiT-Software/MHKiT-Python/pull/293 - https://github.com/MHKiT-Software/MHKiT-Python/pull/294 - https://github.com/MHKiT-Software/MHKiT-Python/pull/299 ## River & Tidal: D3D Added limits to `variable_interpolation` and added 3 array input capability to `create_points` - https://github.com/MHKiT-Software/MHKiT-Python/pull/271 ## Developer Experience ### Black formatting Black formatting is now enforced on all MHKiT files. This ensures consistent formatting across the MHKiT package. - https://github.com/MHKiT-Software/MHKiT-Python/pull/281 ### Linting & Type Hints MHKiT is in the process of enforcing pylint and adding type hints to all functions. Currently this has been achieved and is enforced in the Loads and Power modules. - https://github.com/MHKiT-Software/MHKiT-Python/pull/288 - https://github.com/MHKiT-Software/MHKiT-Python/pull/296 ### CI/CD This release introduces significant reduction in testing time for development. This is achieved by reducing the number of tests for pulls against the develop branch and only running hindcast test when changes are made to it. A bug in the hindcast CI was fixed which only ran on changes to the hindcast tests instead of the hindcast module. Additionally the wave and wind hindcast needed to be separated in 2 jobs due to the excessive time taken to run a wind cache. This created a number of follow on PRs around solidifying the logic of these job. A special case for Python 3.8, pip, and Mac OS was added to use homebrew to install NetCDF and HDF5 to get tests to pass. - https://github.com/MHKiT-Software/MHKiT-Python/pull/241 - https://github.com/MHKiT-Software/MHKiT-Python/pull/270 - https://github.com/MHKiT-Software/MHKiT-Python/pull/306 - https://github.com/MHKiT-Software/MHKiT-Python/pull/311 - https://github.com/MHKiT-Software/MHKiT-Python/pull/317 - https://github.com/MHKiT-Software/MHKiT-Python/pull/318 - https://github.com/MHKiT-Software/MHKiT-Python/pull/319 - https://github.com/MHKiT-Software/MHKiT-Python/pull/320 - https://github.com/MHKiT-Software/MHKiT-Python/pull/324 ### Clean Up MHKiT fixed an implementation error where functions used assert instead of built in errors for type and value checking. Additionally these PRs removed unused files, fixed typos, and created an argument which allows users to run CDIP API calls silently. - https://github.com/MHKiT-Software/MHKiT-Python/pull/276 - https://github.com/MHKiT-Software/MHKiT-Python/pull/272 - https://github.com/MHKiT-Software/MHKiT-Python/pull/273 --- .github/workflows/black.yml | 24 + .github/workflows/main.yml | 397 +- .github/workflows/pylint.yml | 30 + .hscfg | 2 +- .pre-commit-config.yaml | 8 + .pypirc | 7 - README.md | 79 +- ci/install_python.ps1 | 93 - ci/requirements-py36.yml | 15 - ci/requirements-py37.yml | 15 - environment.yml | 25 + examples/ADCP_Delft3D_TRTS_example.ipynb | 622 +- examples/Delft3D_example.ipynb | 243 +- ...ve_resource_characterization_example.ipynb | 268 +- examples/SWAN_example.ipynb | 45 +- examples/WPTO_hindcast_example.ipynb | 118 +- examples/adcp_example.ipynb | 8069 +++++++++-------- examples/adv_example.ipynb | 1803 ++-- examples/cdip_example.ipynb | 63 +- examples/data/dolfyn/RDI_7f79_2.000 | Bin 0 -> 100328 bytes examples/data/dolfyn/dual_profile.ad2cp | Bin 0 -> 306869 bytes examples/data/dolfyn/test_data/AWAC_test01.nc | Bin 73768 -> 74049 bytes .../dolfyn/test_data/AWAC_test01_clean.nc | Bin 72858 -> 74049 bytes .../test_data/AWAC_test01_earth2inst.nc | Bin 73768 -> 74048 bytes .../test_data/AWAC_test01_earth2principal.nc | Bin 73768 -> 74053 bytes .../dolfyn/test_data/AWAC_test01_inst2beam.nc | Bin 73774 -> 74031 bytes .../data/dolfyn/test_data/AWAC_test01_ud.nc | Bin 73768 -> 74049 bytes examples/data/dolfyn/test_data/BenchFile01.nc | Bin 257828 -> 273346 bytes .../dolfyn/test_data/BenchFile01.repr.txt | 3 + .../data/dolfyn/test_data/BenchFile01_avg.nc | Bin 84577 -> 89659 bytes .../data/dolfyn/test_data/BenchFile01_crop.nc | Bin 0 -> 163133 bytes .../test_data/BenchFile01_rotate_beam2inst.nc | Bin 257838 -> 273341 bytes .../BenchFile01_rotate_earth2principal.nc | Bin 257865 -> 273346 bytes .../BenchFile01_rotate_inst2earth.nc | Bin 257857 -> 273342 bytes .../data/dolfyn/test_data/H-AWAC_test01.nc | Bin 37776 -> 38110 bytes examples/data/dolfyn/test_data/RDI_7f79_2.nc | Bin 0 -> 41715 bytes .../dolfyn/test_data/RDI_withBT.dolfyn.log | 40 +- .../data/dolfyn/test_data/RiverPro_test01.nc | Bin 221718 -> 314861 bytes .../dolfyn/test_data/Sig1000_BadTime01.nc | Bin 556074 -> 555155 bytes examples/data/dolfyn/test_data/Sig1000_IMU.nc | Bin 180195 -> 181370 bytes .../data/dolfyn/test_data/Sig1000_IMU_bin.nc | Bin 90337 -> 0 bytes .../dolfyn/test_data/Sig1000_IMU_ofilt.nc | Bin 180098 -> 181303 bytes .../test_data/Sig1000_IMU_rotate_beam2inst.nc | Bin 180185 -> 181390 bytes .../Sig1000_IMU_rotate_inst2earth.nc | Bin 180187 -> 181392 bytes .../data/dolfyn/test_data/Sig1000_IMU_ud.nc | Bin 181219 -> 182394 bytes .../data/dolfyn/test_data/Sig1000_tidal.nc | Bin 220304 -> 221593 bytes .../dolfyn/test_data/Sig1000_tidal_bin.nc | Bin 0 -> 113113 bytes .../dolfyn/test_data/Sig1000_tidal_clean.nc | Bin 217340 -> 224083 bytes examples/data/dolfyn/test_data/Sig500_Echo.nc | Bin 261212 -> 261787 bytes .../dolfyn/test_data/Sig500_Echo_clean.nc | Bin 252511 -> 256111 bytes .../data/dolfyn/test_data/Sig500_Echo_crop.nc | Bin 171557 -> 172550 bytes .../test_data/Sig500_Echo_earth2inst.nc | Bin 261277 -> 261789 bytes .../dolfyn/test_data/Sig500_Echo_inst2beam.nc | Bin 260592 -> 261672 bytes .../Sig500_last_ensemble_is_whole.nc | Bin 561766 -> 562513 bytes .../dolfyn/test_data/Sig_SkippedPings01.nc | Bin 395122 -> 396278 bytes examples/data/dolfyn/test_data/VelEchoBT01.nc | Bin 1324768 -> 1321490 bytes .../test_data/VelEchoBT01_rotate_beam2inst.nc | Bin 1324739 -> 1321510 bytes examples/data/dolfyn/test_data/dat_vm.mat | Bin 115776 -> 115776 bytes .../data/dolfyn/test_data/dual_profile.nc | Bin 0 -> 148510 bytes .../dolfyn/test_data/vector_data01_bin.nc | Bin 46220 -> 49894 bytes examples/data/dolfyn/test_data/vmdas01_wh.nc | Bin 145769 -> 145070 bytes examples/data/dolfyn/test_data/winriver01.nc | Bin 1067829 -> 1067071 bytes examples/data/dolfyn/test_data/winriver02.nc | Bin 338354 -> 339219 bytes .../test_data/winriver02_rotate_ship2earth.nc | Bin 338412 -> 339224 bytes .../dolfyn/test_data/winriver02_transect.nc | Bin 208699 -> 208601 bytes examples/data/loads/data_loads_hs.csv | 1 + examples/data/loads/loads_data_dict.json | 324 +- examples/directional_waves.ipynb | 25 +- examples/environmental_contours_example.ipynb | 124 +- examples/extreme_response_MLER_example.ipynb | 52 +- .../extreme_response_contour_example.ipynb | 50 +- ...reme_response_full_sea_state_example.ipynb | 60 +- examples/loads_example.ipynb | 111 +- examples/metocean_example.ipynb | 115 +- examples/mooring_example.ipynb | 35 +- examples/power_example.ipynb | 185 +- examples/qc_example.ipynb | 48 +- examples/river_example.ipynb | 42 +- examples/short_term_extremes_example.ipynb | 156 +- examples/tidal_example.ipynb | 802 +- examples/tidal_performance_example.ipynb | 1399 +-- examples/upcrossing_example.ipynb | 182 + examples/wave_example.ipynb | 85 +- examples/wecsim_example.ipynb | 58 +- figures/logo.png => logo.png | Bin mhkit/__init__.py | 5 +- mhkit/dolfyn/__init__.py | 7 +- mhkit/dolfyn/adp/__init__.py | 1 - mhkit/dolfyn/adp/clean.py | 170 +- mhkit/dolfyn/adp/turbulence.py | 618 +- mhkit/dolfyn/adv/__init__.py | 2 +- mhkit/dolfyn/adv/clean.py | 86 +- mhkit/dolfyn/adv/motion.py | 285 +- mhkit/dolfyn/adv/turbulence.py | 391 +- mhkit/dolfyn/binned.py | 158 +- mhkit/dolfyn/io/api.py | 197 +- mhkit/dolfyn/io/base.py | 396 +- mhkit/dolfyn/io/nortek.py | 1207 +-- mhkit/dolfyn/io/nortek2.py | 796 +- mhkit/dolfyn/io/nortek2_defs.py | 586 +- mhkit/dolfyn/io/nortek2_lib.py | 439 +- mhkit/dolfyn/io/nortek_defs.py | 677 +- mhkit/dolfyn/io/rdi.py | 1478 +-- mhkit/dolfyn/io/rdi_defs.py | 446 +- mhkit/dolfyn/io/rdi_lib.py | 67 +- mhkit/dolfyn/rotate/api.py | 125 +- mhkit/dolfyn/rotate/base.py | 197 +- mhkit/dolfyn/rotate/rdi.py | 85 +- mhkit/dolfyn/rotate/signature.py | 73 +- mhkit/dolfyn/rotate/vector.py | 135 +- mhkit/dolfyn/time.py | 38 +- mhkit/dolfyn/tools/fft.py | 67 +- mhkit/dolfyn/tools/misc.py | 70 +- mhkit/dolfyn/velocity.py | 700 +- mhkit/loads/__init__.py | 11 +- mhkit/loads/extreme.py | 757 -- mhkit/loads/extreme/__init__.py | 39 + mhkit/loads/extreme/extremes.py | 293 + mhkit/loads/extreme/mler.py | 458 + mhkit/loads/extreme/peaks.py | 481 + mhkit/loads/extreme/sample.py | 52 + mhkit/loads/general.py | 242 +- mhkit/loads/graphics.py | 271 +- mhkit/mooring/graphics.py | 97 +- mhkit/mooring/io.py | 66 +- mhkit/mooring/main.py | 25 +- mhkit/power/__init__.py | 5 +- mhkit/power/characteristics.py | 276 +- mhkit/power/quality.py | 452 +- mhkit/qc/__init__.py | 10 +- mhkit/river/__init__.py | 7 +- mhkit/river/graphics.py | 297 +- mhkit/river/io/__init__.py | 2 +- mhkit/river/io/d3d.py | 1069 ++- mhkit/river/io/usgs.py | 176 +- mhkit/river/performance.py | 130 +- mhkit/river/resource.py | 275 +- mhkit/tests/dolfyn/base.py | 20 +- mhkit/tests/dolfyn/test_analysis.py | 198 +- mhkit/tests/dolfyn/test_api.py | 18 +- mhkit/tests/dolfyn/test_clean.py | 72 +- mhkit/tests/dolfyn/test_motion.py | 51 +- mhkit/tests/dolfyn/test_orient.py | 179 +- mhkit/tests/dolfyn/test_read_adp.py | 197 +- mhkit/tests/dolfyn/test_read_adv.py | 34 +- mhkit/tests/dolfyn/test_read_io.py | 91 +- mhkit/tests/dolfyn/test_rotate_adp.py | 176 +- mhkit/tests/dolfyn/test_rotate_adv.py | 120 +- mhkit/tests/dolfyn/test_shortcuts.py | 33 +- mhkit/tests/dolfyn/test_time.py | 9 +- mhkit/tests/dolfyn/test_tools.py | 304 +- mhkit/tests/dolfyn/test_vs_nortek.py | 111 +- mhkit/tests/loads/test_extreme.py | 50 + mhkit/tests/loads/test_loads.py | 469 +- mhkit/tests/mooring/test_mooring.py | 230 +- mhkit/tests/power/test_power.py | 218 +- mhkit/tests/river/test_io.py | 227 - mhkit/tests/river/test_io_d3d.py | 302 + mhkit/tests/river/test_io_usgs.py | 66 + mhkit/tests/river/test_performance.py | 62 +- mhkit/tests/river/test_resource.py | 338 +- mhkit/tests/tidal/test_io.py | 107 +- mhkit/tests/tidal/test_performance.py | 195 +- mhkit/tests/tidal/test_resource.py | 107 +- mhkit/tests/utils/test_cache.py | 177 + mhkit/tests/utils/test_upcrossing.py | 144 + mhkit/tests/utils/test_utils.py | 310 +- mhkit/tests/wave/io/hindcast/test_hindcast.py | 294 +- .../wave/io/hindcast/test_wind_toolkit.py | 426 +- mhkit/tests/wave/io/test_cdip.py | 203 +- mhkit/tests/wave/io/test_ndbc.py | 245 +- mhkit/tests/wave/io/test_swan.py | 64 +- mhkit/tests/wave/io/test_wecsim.py | 88 +- mhkit/tests/wave/test_contours.py | 605 +- mhkit/tests/wave/test_performance.py | 127 +- mhkit/tests/wave/test_resource_metrics.py | 366 +- mhkit/tests/wave/test_resource_spectrum.py | 127 +- mhkit/tidal/__init__.py | 2 +- mhkit/tidal/d3d.py | 1 - mhkit/tidal/graphics.py | 295 +- mhkit/tidal/io/__init__.py | 1 + mhkit/tidal/io/d3d.py | 1 + mhkit/tidal/io/noaa.py | 350 +- mhkit/tidal/performance.py | 464 +- mhkit/tidal/resource.py | 158 +- mhkit/utils.py | 299 - mhkit/utils/__init__.py | 18 + mhkit/utils/cache.py | 244 + mhkit/utils/stat_utils.py | 270 + mhkit/utils/time_utils.py | 66 + mhkit/utils/type_handling.py | 211 + mhkit/utils/upcrossing.py | 250 + mhkit/wave/__init__.py | 2 +- mhkit/wave/contours.py | 1219 +-- mhkit/wave/graphics.py | 753 +- mhkit/wave/io/__init__.py | 2 +- mhkit/wave/io/cdip.py | 808 +- mhkit/wave/io/hindcast/__init__.py | 9 +- mhkit/wave/io/hindcast/hindcast.py | 398 +- mhkit/wave/io/hindcast/wind_toolkit.py | 531 +- mhkit/wave/io/ndbc.py | 1078 ++- mhkit/wave/io/swan.py | 396 +- mhkit/wave/io/wecsim.py | 476 +- mhkit/wave/performance.py | 319 +- mhkit/wave/resource.py | 974 +- requirements-dev.txt | 4 + requirements.txt | 8 +- setup.py | 108 +- 208 files changed, 28302 insertions(+), 19389 deletions(-) create mode 100644 .github/workflows/black.yml create mode 100644 .github/workflows/pylint.yml create mode 100644 .pre-commit-config.yaml delete mode 100644 .pypirc delete mode 100644 ci/install_python.ps1 delete mode 100644 ci/requirements-py36.yml delete mode 100644 ci/requirements-py37.yml create mode 100644 environment.yml create mode 100644 examples/data/dolfyn/RDI_7f79_2.000 create mode 100644 examples/data/dolfyn/dual_profile.ad2cp create mode 100644 examples/data/dolfyn/test_data/BenchFile01_crop.nc create mode 100644 examples/data/dolfyn/test_data/RDI_7f79_2.nc delete mode 100644 examples/data/dolfyn/test_data/Sig1000_IMU_bin.nc create mode 100644 examples/data/dolfyn/test_data/Sig1000_tidal_bin.nc create mode 100644 examples/data/dolfyn/test_data/dual_profile.nc create mode 100644 examples/data/loads/data_loads_hs.csv create mode 100644 examples/upcrossing_example.ipynb rename figures/logo.png => logo.png (100%) delete mode 100644 mhkit/loads/extreme.py create mode 100644 mhkit/loads/extreme/__init__.py create mode 100644 mhkit/loads/extreme/extremes.py create mode 100644 mhkit/loads/extreme/mler.py create mode 100644 mhkit/loads/extreme/peaks.py create mode 100644 mhkit/loads/extreme/sample.py create mode 100644 mhkit/tests/loads/test_extreme.py delete mode 100644 mhkit/tests/river/test_io.py create mode 100644 mhkit/tests/river/test_io_d3d.py create mode 100644 mhkit/tests/river/test_io_usgs.py create mode 100644 mhkit/tests/utils/test_cache.py create mode 100644 mhkit/tests/utils/test_upcrossing.py delete mode 100644 mhkit/tidal/d3d.py create mode 100644 mhkit/tidal/io/d3d.py delete mode 100644 mhkit/utils.py create mode 100644 mhkit/utils/__init__.py create mode 100644 mhkit/utils/cache.py create mode 100644 mhkit/utils/stat_utils.py create mode 100644 mhkit/utils/time_utils.py create mode 100644 mhkit/utils/type_handling.py create mode 100644 mhkit/utils/upcrossing.py create mode 100644 requirements-dev.txt diff --git a/.github/workflows/black.yml b/.github/workflows/black.yml new file mode 100644 index 000000000..96aaea347 --- /dev/null +++ b/.github/workflows/black.yml @@ -0,0 +1,24 @@ +name: Black Code Formatter + +on: [push, pull_request] + +jobs: + black: + runs-on: ubuntu-latest + + steps: + - name: Check out code + uses: actions/checkout@v4 + + - name: Set up Python + uses: actions/setup-python@v2 + with: + python-version: "3.11" + + - name: Install Black + run: | + python -m pip install --upgrade pip + pip install black + + - name: Check Black Formatting + run: black --check . diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index c42657ae2..70da8c7c7 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -1,4 +1,4 @@ -name: Py 3.7 3.8, 3.9 | Windows Mac Linux +name: Py 3.8, 3.9, 3.10, 3.11 | Windows Mac Linux on: push: @@ -9,159 +9,390 @@ on: branches: - master - develop - jobs: + set-os: + runs-on: ubuntu-latest + outputs: + matrix_os: ${{ steps.set-matrix.outputs.matrix_os }} + steps: + - id: set-matrix + run: | + if [[ "${{ github.event_name }}" == "pull_request" && "${{ github.base_ref }}" == "develop" ]]; then + echo "matrix_os=[ \"ubuntu-latest\"]" >> $GITHUB_OUTPUT + else + echo "matrix_os=[\"windows-latest\", \"ubuntu-latest\", \"macos-latest\"]" >> $GITHUB_OUTPUT + fi + + check-changes: + runs-on: ubuntu-latest + outputs: + wave_io_hindcast_changed: ${{ steps.changes.outputs.wave_io_hindcast }} + should-run-hindcast: ${{ steps.hindcast-logic.outputs.should-run-hindcast }} + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Check for changes in wave/io/hindcast + id: changes + uses: dorny/paths-filter@v3 + with: + filters: | + wave_io_hindcast: + - 'mhkit/wave/io/hindcast/**' + - 'mhkit/tests/wave/io/hindcast/**' + + - id: hindcast-logic + run: | + if [[ "${{ github.event.pull_request.base.ref }}" == "master" || "${{ steps.changes.outputs.wave_io_hindcast }}" == "true" ]]; then + echo "should-run-hindcast=true" >> "$GITHUB_OUTPUT" + else + echo "should-run-hindcast=false" >> "$GITHUB_OUTPUT" + fi + + prepare-nonhindcast-cache: + runs-on: ubuntu-latest + env: + PYTHON_VER: 3.9 + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Setup Miniconda + uses: conda-incubator/setup-miniconda@v3 + with: + miniconda-version: 'latest' + auto-update-conda: true + python-version: ${{ env.PYTHON_VER }} + activate-environment: TESTconda + use-only-tar-bz2: true + + - name: Setup Conda environment + shell: bash -l {0} + run: | + conda install numpy cython pip hdf5 libnetcdf cftime netcdf4 --strict-channel-priority + pip install -e . --force-reinstall + + - name: Install dependencies + shell: bash -l {0} + run: | + python -m pip install --upgrade pip wheel + pip install coverage pytest coveralls . + + - name: Prepare non-hindcast API data + shell: bash -l {0} + run: | + pytest mhkit/tests/river/test_io_usgs.py + pytest mhkit/tests/tidal/test_io.py + pytest mhkit/tests/wave/io/test_cdip.py + + - name: Upload data as artifact + uses: actions/upload-artifact@v4 + with: + name: data + path: ~/.cache/mhkit + + prepare-wave-hindcast-cache: + needs: [check-changes] + runs-on: ubuntu-latest + env: + PYTHON_VER: 3.9 + if: (needs.check-changes.outputs.should-run-hindcast == 'true') + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Setup Miniconda + uses: conda-incubator/setup-miniconda@v3 + with: + miniconda-version: 'latest' + auto-update-conda: true + activate-environment: TEST + python-version: ${{ env.PYTHON_VER }} + use-only-tar-bz2: true + + - name: Setup Conda environment + shell: bash -l {0} + run: | + conda install numpy cython pip pytest hdf5 libnetcdf cftime netcdf4 coverage --strict-channel-priority + pip install -e . --force-reinstall + + - name: Install dependencies + shell: bash -l {0} + run: | + python -m pip install --upgrade pip wheel + pip install coverage pytest coveralls . + + - name: Prepare Wave Hindcast data + shell: bash -l {0} + run: | + pytest mhkit/tests/wave/io/hindcast/test_hindcast.py + + - name: Upload Wave Hindcast data as artifact + uses: actions/upload-artifact@v4 + with: + name: wave-hindcast-data + path: ~/.cache/mhkit + + prepare-wind-hindcast-cache: + needs: [check-changes, prepare-wave-hindcast-cache] + runs-on: ubuntu-latest + env: + PYTHON_VER: 3.9 + if: (needs.check-changes.outputs.should-run-hindcast == 'true') + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Setup Miniconda + uses: conda-incubator/setup-miniconda@v3 + with: + miniconda-version: 'latest' + auto-update-conda: true + activate-environment: TEST + python-version: ${{ env.PYTHON_VER }} + use-only-tar-bz2: true + + - name: Setup Conda environment + shell: bash -l {0} + run: | + conda install numpy cython pip pytest hdf5 libnetcdf cftime netcdf4 coverage --strict-channel-priority + pip install -e . --no-deps --force-reinstall + + - name: Install dependencies + shell: bash -l {0} + run: | + python -m pip install --upgrade pip wheel + pip install coverage pytest coveralls . + + - name: Prepare Wind Hindcast data + shell: bash -l {0} + run: | + pytest mhkit/tests/wave/io/hindcast/test_wind_toolkit.py + + - name: Upload Wind Hindcast data as artifact + uses: actions/upload-artifact@v4 + with: + name: wind-hindcast-data + path: ~/.cache/mhkit + conda-build: name: conda-${{ matrix.os }}/${{ matrix.python-version }} + needs: [set-os, prepare-nonhindcast-cache] runs-on: ${{ matrix.os }} strategy: fail-fast: false matrix: - os: ["windows-latest", "ubuntu-latest", "macos-latest"] - python-version: [3.7, 3.8, 3.9] + os: ${{fromJson(needs.set-os.outputs.matrix_os)}} + python-version: ['3.8', '3.9', '3.10', '3.11'] + env: + PYTHON_VER: ${{ matrix.python-version }} steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - - name: Setup Conda - uses: s-weigand/setup-conda@v1 + - name: Setup Miniconda + uses: conda-incubator/setup-miniconda@v3 with: - activate-conda: false - conda-channels: conda-forge + miniconda-version: 'latest' + auto-update-conda: true + environment-file: environment.yml + activate-environment: TEST + python-version: ${{ matrix.python-version }} + use-only-tar-bz2: false - - name: Python ${{ matrix.python-version }} + - name: Create and setup Conda environment shell: bash -l {0} run: | - conda create --name TEST python=${{ matrix.python-version }} numpy cython pip pytest hdf5 libnetcdf cftime netcdf4 --strict-channel-priority - source activate TEST - export PATH="${CONDA_PREFIX}/bin:${CONDA_PREFIX}/Library/bin:$PATH" # so setup.py finds nc-config - pip install -e . --no-deps --force-reinstall + conda install -c conda-forge pytest coverage=7.5.0 coveralls --strict-channel-priority + pip install -e . --force-reinstall - - name: Tests - shell: bash -l {0} - run: | - source activate TEST - python -m pip install --upgrade pip wheel - pip install coverage - pip install pytest - pip install coveralls - pip install . + - name: Download data from artifact + uses: actions/download-artifact@v4 + with: + name: data + path: ~/.cache/mhkit - - name: Run pytest + - name: Run pytest & generate coverage report shell: bash -l {0} run: | - source activate TEST coverage run --rcfile=.github/workflows/.coveragerc --source=./mhkit/ -m pytest -c .github/workflows/pytest.ini + coverage lcov - name: Upload coverage data to coveralls.io - shell: bash -l {0} - run: | - source activate TEST - coveralls --service=github - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - COVERALLS_FLAG_NAME: ${{ matrix.python-version }} - COVERALLS_PARALLEL: true + uses: coverallsapp/github-action@master + with: + github-token: ${{ secrets.GITHUB_TOKEN }} + flag-name: conda-${{ runner.os }}-py${{ matrix.python-version }} + parallel: true + path-to-lcov: ./coverage.lcov pip-build: name: pip-${{ matrix.os }}/${{ matrix.python-version }} + needs: [set-os, prepare-nonhindcast-cache] runs-on: ${{ matrix.os }} strategy: fail-fast: false matrix: - os: ["windows-latest", "ubuntu-latest", "macos-latest"] - python-version: [3.8, 3.9] + os: ${{fromJson(needs.set-os.outputs.matrix_os)}} + python-version: ['3.8', '3.9', '3.10', '3.11'] steps: - - uses: conda-incubator/setup-miniconda@v2 + - uses: conda-incubator/setup-miniconda@v3 - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v2 + uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} + - name: Install HDF5 (macOS with Python 3.8) + if: startsWith(runner.os, 'macOS') && matrix.python-version == '3.8' + run: brew install hdf5 + + - name: Install NetCDF (macOS with Python 3.8) + if: startsWith(runner.os, 'macOS') && matrix.python-version == '3.8' + run: brew install netcdf + + - name: Set environment variables (macOS with Python 3.8) + if: startsWith(runner.os, 'macOS') && matrix.python-version == '3.8' + run: | + echo "HDF5_DIR=$(brew --prefix hdf5)" >> $GITHUB_ENV + echo "NETCDF4_DIR=$(brew --prefix netcdf)" >> $GITHUB_ENV + echo "PKG_CONFIG_PATH=$(brew --prefix hdf5)/lib/pkgconfig:$(brew --prefix netcdf)/lib/pkgconfig:$PKG_CONFIG_PATH" >> $GITHUB_ENV + - name: Set up Git repository - uses: actions/checkout@v2 + uses: actions/checkout@v4 + + - name: Download data from artifact + uses: actions/download-artifact@v4 + with: + name: data + path: ~/.cache/mhkit - name: Update and install packages + shell: bash -l {0} run: | python -m pip install --upgrade pip wheel - pip install coverage - pip install pytest - pip install coveralls - pip install . + pip install coverage pytest coveralls . - - name: Run pytest + - name: Run pytest & generate coverage report + shell: bash -l {0} run: | - coverage run --rcfile=.github/workflows/.coveragerc --source=./mhkit/ -m pytest -c .github/workflows/pytest.ini + coverage run --rcfile=.github/workflows/.coveragerc --source=./mhkit/ -m pytest -c .github/workflows/pytest.ini + coverage lcov - name: Upload coverage data to coveralls.io - run: coveralls --service=github - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - COVERALLS_FLAG_NAME: ${{ matrix.python-version }} - COVERALLS_PARALLEL: true + uses: coverallsapp/github-action@master + with: + github-token: ${{ secrets.GITHUB_TOKEN }} + flag-name: pip-${{ runner.os }}-py${{ matrix.python-version }} + parallel: true + path-to-lcov: ./coverage.lcov hindcast-calls: name: hindcast-${{ matrix.os }}/${{ matrix.python-version }} + needs: + [ + check-changes, + prepare-wave-hindcast-cache, + prepare-wind-hindcast-cache, + set-os, + ] + if: (needs.check-changes.outputs.should-run-hindcast == 'true') + runs-on: ${{ matrix.os }} strategy: max-parallel: 1 fail-fast: false matrix: - os: ["windows-latest", "macos-latest"] - python-version: [3.9] + os: ${{fromJson(needs.set-os.outputs.matrix_os)}} + python-version: ['3.8', '3.9', '3.10', '3.11'] steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - - name: Setup Conda - uses: s-weigand/setup-conda@v1 + - name: Setup Miniconda + uses: conda-incubator/setup-miniconda@v3 with: - activate-conda: false - conda-channels: conda-forge + miniconda-version: 'latest' + auto-update-conda: true + environment-file: environment.yml + activate-environment: TEST + python-version: ${{ matrix.python-version }} + use-only-tar-bz2: false - - name: Python ${{ matrix.python-version }} + - name: Setup Conda environment shell: bash -l {0} run: | - conda create --name TEST python=${{ matrix.python-version }} numpy cython pip pytest hdf5 libnetcdf cftime netcdf4 coverage --strict-channel-priority - source activate TEST - export PATH="${CONDA_PREFIX}/bin:${CONDA_PREFIX}/Library/bin:$PATH" # so setup.py finds nc-config - pip install -e . --no-deps --force-reinstall + conda install -c conda-forge pytest coverage=7.5.0 coveralls --strict-channel-priority + pip install -e . --force-reinstall - - name: Install MHKiT - shell: bash -l {0} + - name: Download Wave Hindcast data from artifact + uses: actions/download-artifact@v4 + with: + name: wave-hindcast-data + path: ~/.cache/mhkit/wave-hindcast + + - name: Download Wind Hindcast data from artifact + uses: actions/download-artifact@v4 + with: + name: wind-hindcast-data + path: ~/.cache/mhkit/wind-hindcast + + - name: Consolidate hindcast data run: | - source activate TEST - python -m pip install --upgrade pip wheel - pip install coveralls - pip install . + mkdir -p ~/.cache/mhkit/hindcast + mv ~/.cache/mhkit/wave-hindcast/hindcast/* ~/.cache/mhkit/hindcast/ + mv ~/.cache/mhkit/wind-hindcast/hindcast/* ~/.cache/mhkit/hindcast/ + shell: bash - - name: Run pytest + - name: Install MHKiT and run pytest shell: bash -l {0} run: | - source activate TEST - coverage run --rcfile=.github/workflows/.coveragehindcastrc -m pytest -c .github/workflows/pytest-hindcast.ini + coverage run --rcfile=.github/workflows/.coveragehindcastrc -m pytest -c .github/workflows/pytest-hindcast.ini + coverage lcov - name: Upload coverage data to coveralls.io - shell: bash -l {0} - run: | - source activate TEST - coveralls --service=github - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - COVERALLS_FLAG_NAME: ${{ matrix.python-version }} - COVERALLS_PARALLEL: true + uses: coverallsapp/github-action@master + with: + github-token: ${{ secrets.GITHUB_TOKEN }} + flag-name: hindcast-${{ runner.os }}-py${{ matrix.python-version }} + parallel: true + path-to-lcov: ./coverage.lcov coveralls: name: Indicate completion to coveralls.io - needs: [conda-build, pip-build, hindcast-calls] + needs: + [ + prepare-wave-hindcast-cache, + prepare-wind-hindcast-cache, + conda-build, + pip-build, + hindcast-calls, + ] + if: | + always() && + ( + ( + needs.conda-build.result == 'success' && + needs.pip-build.result == 'success' && + needs.prepare-wave-hindcast-cache.result == 'skipped' && + needs.prepare-wind-hindcast-cache.result == 'skipped' && + needs.hindcast-calls.result == 'skipped' + ) || + ( + needs.conda-build.result == 'success' && + needs.pip-build.result == 'success' && + needs.prepare-wave-hindcast-cache.result == 'success' && + needs.prepare-wind-hindcast-cache.result == 'success' && + needs.hindcast-calls.result == 'success' + ) + ) runs-on: ubuntu-latest container: python:3-slim steps: - - name: Finished - run: | - pip3 install --upgrade coveralls - coveralls --finish + - name: Coveralls Finished + uses: coverallsapp/github-action@master + with: + parallel-finished: true env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/pylint.yml b/.github/workflows/pylint.yml new file mode 100644 index 000000000..08458f95d --- /dev/null +++ b/.github/workflows/pylint.yml @@ -0,0 +1,30 @@ +name: Pylint Loads + +on: [push, pull_request] + +jobs: + formatting-and-linting: + runs-on: ubuntu-latest + + steps: + - name: Check out code + uses: actions/checkout@v4 + + - name: Set up Python + uses: actions/setup-python@v2 + with: + python-version: '3.11' + + - name: Install dependencies + run: | + python -m pip install --upgrade pip wheel + pip install pylint + pip install . + + - name: Run Pylint on mhkit/loads/ + run: | + pylint mhkit/loads/ + + - name: Run Pylint on mhkit/power/ + run: | + pylint mhkit/power/ diff --git a/.hscfg b/.hscfg index f6f00424b..f9aa99caa 100644 --- a/.hscfg +++ b/.hscfg @@ -1,4 +1,4 @@ hs_endpoint = https://developer.nrel.gov/api/hsds hs_username = hs_password = -hs_api_key = 3K3JQbjZmWctY0xmIfSYvYgtIcM3CN0cb1Y2w9bf +hs_api_key = jODGciIBnejrYd9GXxgXjbbAjMDLBMWQer05P98N diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml new file mode 100644 index 000000000..b0037417e --- /dev/null +++ b/.pre-commit-config.yaml @@ -0,0 +1,8 @@ +# To run Black formating every time you commit: +# pip install pre-commit +# pre-commit install +repos: + - repo: https://github.com/psf/black + rev: stable + hooks: + - id: black diff --git a/.pypirc b/.pypirc deleted file mode 100644 index be070c7e6..000000000 --- a/.pypirc +++ /dev/null @@ -1,7 +0,0 @@ -[distutils] -index-servers=pypi - -[pypi] -repository = https://upload.pypi.org/legacy/ -username = -password = \ No newline at end of file diff --git a/README.md b/README.md index d4d0833cf..15e9483a7 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,4 @@ -![](figures/logo.png) MHKiT-Python -===================================== +# ![](logo.png) MHKiT-Python

@@ -16,37 +15,41 @@

-MHKiT-Python is a Python package designed for marine renewable energy applications to assist in -data processing and visualization. The software package include functionality for: +MHKiT-Python is a Python package designed for marine renewable energy applications to assist in +data processing and visualization. The software package include functionality for: -* Data processing -* Data visualization -* Data quality control -* Resource assessment -* Device performance -* Device loads +- Data processing +- Data visualization +- Data quality control +- Resource assessment +- Device performance +- Device loads + +## Documentation -Documentation ------------------- MHKiT-Python documentation includes overview information, installation instructions, API documentation, and examples. See the [MHKiT documentation](https://mhkit-software.github.io/MHKiT) for more information. -Installation ------------------------- -MHKiT-Python requires Python (3.7, 3.8, or 3.9) along with several Python -package dependencies. MHKiT-Python can be installed from PyPI using the command ``pip install mhkit``. +## Installation + +MHKiT-Python requires Python (3.8, 3.9, 3.10, 3.11) along with several Python +package dependencies. MHKiT-Python can be installed from PyPI using the command: + +`pip install mhkit` + See [installation instructions](https://mhkit-software.github.io/MHKiT/installation.html) for more information. -Copyright and license ------------------------- -MHKiT-Python is copyright through the National Renewable Energy Laboratory, -Pacific Northwest National Laboratory, and Sandia National Laboratories. +## Copyright and license + +MHKiT-Python is copyright through the National Renewable Energy Laboratory, +Pacific Northwest National Laboratory, and Sandia National Laboratories. The software is distributed under the Revised BSD License. See [copyright and license](LICENSE.md) for more information. -Issues ------------------------- +## Issues + The GitHub platform has the Issues feature that is used to track ideas, feedback, tasks, and/or bugs. To submit an Issue, follow the steps below. More information about GitHub Issues can be found [here](https://docs.github.com/en/issues/tracking-your-work-with-issues/about-issues) + 1. Navigate to the [MHKiT-Python main page](https://github.com/MHKiT-Software/MHKiT-Python) 2. 2.Under the repository name (upper left), click **Issues**. 3. Click **New Issue**. @@ -54,9 +57,10 @@ The GitHub platform has the Issues feature that is used to track ideas, feedback 5. Provide a **Title** and **description** for the issue. Be sure the title is relevant to the issue and that the description is clear and provided with sufficient detail. 6. When you're finished, click **Submit new issue**. The developers will follow-up once the issue is addressed. -Creating a fork ------------------------- +## Creating a fork + The GitHub platform has the Fork feature that facilitates code modification and contributions. A fork is a new repository that shares code and visibility settings with the original upstream repository. To fork MHKiT-Python, follow the steps below. More information about GitHub Forks can be found [here](https://docs.github.com/en/get-started/quickstart/fork-a-repo) + 1. Navigate to the [MHKiT-Python main page](https://github.com/MHKiT-Software/MHKiT-Python) 2. Under the repository name (upper left), click **Fork**. 3. Select an owner for the forked repository. @@ -65,25 +69,38 @@ The GitHub platform has the Fork feature that facilitates code modification and 6. Choose whether to copy only the default branch or all branches to the new fork. You will only need copy the default branch to contribute to MHKiT-Python. 7. When you're finished, click **Create fork**. You will now have a fork of the MHKiT-Python repository. -Creating a branch ------------------------- +## Creating a branch + The GitHub platform has the branch feature that facilitates code contributions and collaboration amongst developers. A branch isolates development work without affecting other branches in the repository. Each repository has one default branch, and can have multiple other branches. To create a branch of your forked MHKiT-Python repository, follow the steps below. More information about GitHub branches can be found [here](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-branches) + 1. Navigate to your fork of MHKiT-Python (see instructions above) 2. Above the list of files, click **Branches**. -3. Click **New Branch**. +3. Click **New Branch**. 4. Enter a name for the branch. Be sure to select **MHKiT-Software/MHKiT-Python:master** as the source. 5. Click **Create branch**. You will now have a branch on your fork of MHKiT-Python that you can use to work with the code base. -Creating a pull request ------------------------- +## Creating a pull request + The GitHub platform has the pull request feature that allows you to propose changes to a repository such as MHKiT-Python. The pull request will allow the repository administrators to evaluate the pull request. To create a pull request for MHKiT-Python repository, follow the steps below. More information about GitHub pull requests can be found [here](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request) + 1. Navigate to the [MHKiT-Python main page](https://github.com/MHKiT-Software/MHKiT-Python) 2. Above the list of files, click **Pull request**. -3. On the compare page, click **Compare accross forks**. -4. In the "base branch" drop-down menu, select the branch of the upstream repository you'd like to merge changes into. +3. On the compare page, click **Compare accross forks**. +4. In the "base branch" drop-down menu, select the branch of the upstream repository you'd like to merge changes into. 5. In the "head fork" drop-down menu, select your fork, then use the "compare branch" drop-down menu to select the branch you made your changes in. 6. Type a title and description for your pull request. 7. If you want to allow anyone with push access to the upstream repository to make changes to your pull request, select **Allow edits from maintainers**. 8. To create a pull request that is ready for review, click **Create Pull Request**. To create a draft pull request, use the drop-down and select **Create Draft Pull Request**, then click **Draft Pull Request**. More information about draft pull requests can be found [here](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests#draft-pull-requests) 9. MHKiT-Python adminstrators will review your pull request and contact you if needed. +## Code Formatting in MHKiT + +MHKiT adheres to the "black" code formatting standard to maintain a consistent and readable code style. Developers contributing to MHKiT have several options to ensure their code meets this standard: + +1. **Manual Formatting with Black**: Install the 'black' formatter and run it manually from the terminal to format your code. This can be done by executing a command like `black [file or directory]`. + +2. **IDE Extension**: If you are using an Integrated Development Environment (IDE) like Visual Studio Code (VS Code), you can install the 'black' formatter as an extension. This allows for automatic formatting of code within the IDE. + +3. **Pre-Commit Hook**: Enable the pre-commit hook in your development environment. This automatically formats your code with 'black' each time you make a commit, ensuring that all committed code conforms to the formatting standard. + +For detailed instructions on installing and using 'black', please refer to the [Black Documentation](https://black.readthedocs.io/en/stable/). This resource provides comprehensive guidance on installation, usage, and configuration of the formatter. diff --git a/ci/install_python.ps1 b/ci/install_python.ps1 deleted file mode 100644 index b41eea5e5..000000000 --- a/ci/install_python.ps1 +++ /dev/null @@ -1,93 +0,0 @@ -# Sample script to install Python and pip under Windows -# Authors: Olivier Grisel, Jonathan Helmus and Kyle Kastner -# License: CC0 1.0 Universal: http://creativecommons.org/publicdomain/zero/1.0/ - -$MINICONDA_URL = "http://repo.continuum.io/miniconda/" -$BASE_URL = "https://www.python.org/ftp/python/" - - -function DownloadMiniconda ($python_version, $platform_suffix) { - $webclient = New-Object System.Net.WebClient - if ($python_version -eq "3.4") { - $filename = "Miniconda3-3.7.3-Windows-" + $platform_suffix + ".exe" - } else { - $filename = "Miniconda-3.7.3-Windows-" + $platform_suffix + ".exe" - } - $url = $MINICONDA_URL + $filename - - $basedir = $pwd.Path + "\" - $filepath = $basedir + $filename - if (Test-Path $filename) { - Write-Host "Reusing" $filepath - return $filepath - } - - # Download and retry up to 3 times in case of network transient errors. - Write-Host "Downloading" $filename "from" $url - $retry_attempts = 2 - for($i=0; $i -lt $retry_attempts; $i++){ - try { - $webclient.DownloadFile($url, $filepath) - break - } - Catch [Exception]{ - Start-Sleep 1 - } - } - if (Test-Path $filepath) { - Write-Host "File saved at" $filepath - } else { - # Retry once to get the error message if any at the last try - $webclient.DownloadFile($url, $filepath) - } - return $filepath -} - - -function InstallMiniconda ($python_version, $architecture, $python_home) { - Write-Host "Installing Python" $python_version "for" $architecture "bit architecture to" $python_home - if (Test-Path $python_home) { - Write-Host $python_home "already exists, skipping." - return $false - } - if ($architecture -eq "32") { - $platform_suffix = "x86" - } else { - $platform_suffix = "x86_64" - } - $filepath = DownloadMiniconda $python_version $platform_suffix - Write-Host "Installing" $filepath "to" $python_home - $install_log = $python_home + ".log" - $args = "/S /D=$python_home" - Write-Host $filepath $args - Start-Process -FilePath $filepath -ArgumentList $args -Wait -Passthru - if (Test-Path $python_home) { - Write-Host "Python $python_version ($architecture) installation complete" - } else { - Write-Host "Failed to install Python in $python_home" - Get-Content -Path $install_log - Exit 1 - } -} - - -function InstallMinicondaPip ($python_home) { - $pip_path = $python_home + "\Scripts\pip.exe" - $conda_path = $python_home + "\Scripts\conda.exe" - if (-not(Test-Path $pip_path)) { - Write-Host "Installing pip..." - $args = "install --yes pip" - Write-Host $conda_path $args - Start-Process -FilePath "$conda_path" -ArgumentList $args -Wait -Passthru - } else { - Write-Host "pip already installed." - } -} - - -function main () { - InstallMiniconda $env:PYTHON_VERSION $env:PYTHON_ARCH $env:PYTHON - InstallMinicondaPip $env:PYTHON -} - -main \ No newline at end of file diff --git a/ci/requirements-py36.yml b/ci/requirements-py36.yml deleted file mode 100644 index 9f58e5202..000000000 --- a/ci/requirements-py36.yml +++ /dev/null @@ -1,15 +0,0 @@ -name: test_env -channels: - - defaults - - conda-forge -dependencies: - - python=3.6 - - pandas - - numpy - - scipy - - matplotlib - - requests - - nose - - NREL-rex - - pip: - - coveralls diff --git a/ci/requirements-py37.yml b/ci/requirements-py37.yml deleted file mode 100644 index 28efef533..000000000 --- a/ci/requirements-py37.yml +++ /dev/null @@ -1,15 +0,0 @@ -name: test_env -channels: - - defaults - - conda-forge -dependencies: - - python=3.7 - - pandas - - numpy - - scipy - - matplotlib - - requests - - nose - - NREL-rex - - pip: - - coveralls diff --git a/environment.yml b/environment.yml new file mode 100644 index 000000000..92b603f09 --- /dev/null +++ b/environment.yml @@ -0,0 +1,25 @@ +name: myenv +channels: + - conda-forge + - defaults +dependencies: + - python>=3.8 + - pandas>=1.0.0 + - numpy>=1.21.0 + - scipy + - matplotlib + - requests + - lxml + - scikit-learn + - statsmodels + - bottleneck + - beautifulsoup4 + - xarray + - h5py>=3.6.0 + - netcdf4>=1.5.8 + - pip: + - pecos>=0.3.0 + - fatpack + - NREL-rex>=0.2.63 + - h5pyd>=0.7.0 + - six>=1.13.0 diff --git a/examples/ADCP_Delft3D_TRTS_example.ipynb b/examples/ADCP_Delft3D_TRTS_example.ipynb index 142ebc068..4b3655ce6 100644 --- a/examples/ADCP_Delft3D_TRTS_example.ipynb +++ b/examples/ADCP_Delft3D_TRTS_example.ipynb @@ -30,13 +30,14 @@ "import matplotlib\n", "import scipy.io\n", "import netCDF4\n", - "import math \n", + "import math\n", "import utm\n", + "\n", "# MHKiT Imports\n", "from mhkit.dolfyn.rotate import api as ap\n", "from mhkit.dolfyn.adp import api\n", "from mhkit import dolfyn as dlfn\n", - "from mhkit.river.io import d3d \n", + "from mhkit.river.io import d3d\n", "from mhkit import river" ] }, @@ -705,10 +706,14 @@ ], "source": [ "# Read in the two transect passes\n", - "transect_1_raw = api.read('data/river/ADCP_transect/tanana_transects_08_10_10_0_002_10-08-10_142214.PD0') \n", - "transect_2_raw = api.read('data/river/ADCP_transect/tanana_transects_08_10_10_0_003_10-08-10_143335.PD0')\n", + "transect_1_raw = api.read(\n", + " \"data/river/ADCP_transect/tanana_transects_08_10_10_0_002_10-08-10_142214.PD0\"\n", + ")\n", + "transect_2_raw = api.read(\n", + " \"data/river/ADCP_transect/tanana_transects_08_10_10_0_003_10-08-10_143335.PD0\"\n", + ")\n", "# Create one dataset from the two passes\n", - "transect_1_2= xr.merge([transect_1_raw, transect_2_raw])\n", + "transect_1_2 = xr.merge([transect_1_raw, transect_2_raw])\n", "# Print the xarray data\n", "transect_1_2" ] @@ -731,15 +736,11 @@ "outputs": [], "source": [ "# Convert Coordiantes to UTM using utm module\n", - "utm_x_y = utm.from_latlon(\n", - " transect_1_2.latitude_gps, \n", - " transect_1_2.longitude_gps, \n", - " 6,'W'\n", - " ) \n", - "\n", - "# Create a DataFrame from the points \n", - "gps = [[x, y] for x, y in zip(utm_x_y[0], utm_x_y[1])] \n", - "gps_points = pd.DataFrame(np.array(gps), columns= ['utm_x','utm_y'])" + "utm_x_y = utm.from_latlon(transect_1_2.latitude_gps, transect_1_2.longitude_gps, 6, \"W\")\n", + "\n", + "# Create a DataFrame from the points\n", + "gps = [[x, y] for x, y in zip(utm_x_y[0], utm_x_y[1])]\n", + "gps_points = pd.DataFrame(np.array(gps), columns=[\"utm_x\", \"utm_y\"])" ] }, { @@ -760,7 +761,7 @@ "source": [ "# Nenana Alaska is 15.7 deg East\n", "angle = 15.7\n", - "ap.set_declination(transect_1_2, angle, inplace=True) " + "ap.set_declination(transect_1_2, angle, inplace=True)" ] }, { @@ -780,8 +781,8 @@ "metadata": {}, "outputs": [], "source": [ - "# Rotate to 'earth' coordinate system \n", - "api.rotate2(transect_1_2, 'earth', inplace=True)" + "# Rotate to 'earth' coordinate system\n", + "api.rotate2(transect_1_2, \"earth\", inplace=True)" ] }, { @@ -831,48 +832,55 @@ } ], "source": [ - "\n", "# Linear regression using first order polyfit\n", - "a,b = np.polyfit(gps_points.utm_x, gps_points.utm_y,1)\n", + "a, b = np.polyfit(gps_points.utm_x, gps_points.utm_y, 1)\n", "\n", "# Generate a DataFrame of points from the linear regression\n", - "ideal= [ [x, y] for x, y in zip(gps_points.utm_x, a*gps_points.utm_x+b)] \n", - "ideal_points = pd.DataFrame(np.array(ideal), columns= ['utm_x','utm_y'])\n", + "ideal = [[x, y] for x, y in zip(gps_points.utm_x, a * gps_points.utm_x + b)]\n", + "ideal_points = pd.DataFrame(np.array(ideal), columns=[\"utm_x\", \"utm_y\"])\n", "\n", "# Repeat UTM corrdinates to match the ADCP points matrix (dir, range, time)\n", "utm_x_points = np.tile(gps_points.utm_x, np.size(transect_1_2.range))\n", - "utm_y_points = np.tile(a*gps_points.utm_x+b, np.size(transect_1_2.range))\n", - "depth_points = np.repeat( transect_1_2.range, np.size(gps_points.utm_x))\n", + "utm_y_points = np.tile(a * gps_points.utm_x + b, np.size(transect_1_2.range))\n", + "depth_points = np.repeat(transect_1_2.range, np.size(gps_points.utm_x))\n", "\n", - "ADCP_ideal_points={\n", - " 'utm_x': utm_x_points, \n", - " 'utm_y': utm_y_points, \n", - " 'waterdepth': depth_points\n", - " }\n", - "ADCP_ideal_points=pd.DataFrame(ADCP_ideal_points)\n", + "ADCP_ideal_points = {\n", + " \"utm_x\": utm_x_points,\n", + " \"utm_y\": utm_y_points,\n", + " \"waterdepth\": depth_points,\n", + "}\n", + "ADCP_ideal_points = pd.DataFrame(ADCP_ideal_points)\n", "\n", "# Initialize the figure\n", - "figure(figsize=(8,6))\n", + "figure(figsize=(8, 6))\n", "fig, ax = plt.subplots()\n", "\n", "# Get data from the original transect in UTM for comparison\n", - "transect_1 = utm.from_latlon(transect_1_raw.latitude_gps, transect_1_raw.longitude_gps, 6, 'W') \n", - "transect_2 = utm.from_latlon(transect_2_raw.latitude_gps, transect_2_raw.longitude_gps, 6, 'W') \n", + "transect_1 = utm.from_latlon(\n", + " transect_1_raw.latitude_gps, transect_1_raw.longitude_gps, 6, \"W\"\n", + ")\n", + "transect_2 = utm.from_latlon(\n", + " transect_2_raw.latitude_gps, transect_2_raw.longitude_gps, 6, \"W\"\n", + ")\n", "\n", "# Plot the original transect data for comparison\n", - "plt.plot(transect_1[0],transect_1[1], 'b', label= 'GPS Transect 1' )\n", - "plt.plot(transect_2[0],transect_2[1], 'r--', label= 'GPS Transect 2')\n", + "plt.plot(transect_1[0], transect_1[1], \"b\", label=\"GPS Transect 1\")\n", + "plt.plot(transect_2[0], transect_2[1], \"r--\", label=\"GPS Transect 2\")\n", "\n", "# Plot the Idealized Transect\n", - "plt.plot(ADCP_ideal_points.utm_x, ADCP_ideal_points.utm_y, 'k-.', label='Ideal Transect')\n", - "plt.ticklabel_format(style= 'scientific',useOffset=False)\n", - "ax.get_xaxis().set_major_formatter(matplotlib.ticker.FuncFormatter(lambda x, p: format(int(x), ',')))\n", + "plt.plot(\n", + " ADCP_ideal_points.utm_x, ADCP_ideal_points.utm_y, \"k-.\", label=\"Ideal Transect\"\n", + ")\n", + "plt.ticklabel_format(style=\"scientific\", useOffset=False)\n", + "ax.get_xaxis().set_major_formatter(\n", + " matplotlib.ticker.FuncFormatter(lambda x, p: format(int(x), \",\"))\n", + ")\n", "plt.xticks(rotation=45)\n", "\n", "# Plot Settings\n", "plt.legend()\n", - "plt.xlabel('$UTM_x (m)$')\n", - "plt.ylabel('$UTM_y (m)$')" + "plt.xlabel(\"$UTM_x (m)$\")\n", + "plt.ylabel(\"$UTM_y (m)$\")" ] }, { @@ -893,7 +901,7 @@ "outputs": [], "source": [ "# Adjust the range offset, included here for reference\n", - "offset=0\n", + "offset = 0\n", "api.clean.set_range_offset(transect_1_2, offset)" ] }, @@ -937,11 +945,11 @@ ], "source": [ "# Apply the correlation filter\n", - "min_correlation=40\n", + "min_correlation = 40\n", "transect_1_2 = api.clean.correlation_filter(transect_1_2, thresh=min_correlation)\n", "\n", "# Plot the results the (data is displayed upside-down)\n", - "transect_1_2.corr.sel(beam=1).plot() " + "transect_1_2.corr.sel(beam=1).plot()" ] }, { @@ -969,23 +977,25 @@ ], "source": [ "# Filtering out depth sounder values above the river surface\n", - "depth_sounder = transect_1_2.where(transect_1_2.dist_bt > 0 )\n", + "depth_sounder = transect_1_2.where(transect_1_2.dist_bt > 0)\n", "\n", "# Of the 4 values beams get the shallowest depth value at each location\n", "bottom = np.min(depth_sounder.dist_bt, axis=0)\n", "\n", - "# River bottom for ideal transect \n", - "bottom_avg = interp.griddata(gps_points, bottom, ideal_points, method='linear')\n", + "# River bottom for ideal transect\n", + "bottom_avg = interp.griddata(gps_points, bottom, ideal_points, method=\"linear\")\n", "\n", "# Create a matrix of depths\n", - "bottom_filter = d3d.create_points(x=bottom_avg, y=transect_1_2.range.to_numpy(), waterdepth=1)\n", + "bottom_filter = d3d.create_points(\n", + " x=bottom_avg, y=transect_1_2.range.to_numpy(), waterdepth=1\n", + ")\n", "\n", - "# Creating a mask matrix with ones in the area of the river cross section and nan's outside \n", + "# Creating a mask matrix with ones in the area of the river cross section and nan's outside\n", "river_bottom_filter = []\n", - "for index, row in bottom_filter.iterrows():\n", - " if row['x'] > row['y']: \n", - " filter = 1 \n", - " else: \n", + "for index, row in bottom_filter.iterrows():\n", + " if row[\"x\"] > row[\"y\"]:\n", + " filter = 1\n", + " else:\n", " filter = float(\"nan\")\n", " river_bottom_filter = np.append(river_bottom_filter, filter)" ] @@ -1177,33 +1187,26 @@ ], "source": [ "# Tiling the GPS data for each depth bin\n", - "gps_utm_x = np.tile(\n", - " gps_points.utm_x, \n", - " np.size(transect_1_2.range)\n", - " )\n", - "gps_utm_y = np.tile(\n", - " gps_points.utm_y, \n", - " np.size(transect_1_2.range)\n", - " )\n", + "gps_utm_x = np.tile(gps_points.utm_x, np.size(transect_1_2.range))\n", + "gps_utm_y = np.tile(gps_points.utm_y, np.size(transect_1_2.range))\n", "\n", "# Repeating the depth bins for each GPS point\n", - "depth = np.repeat( \n", - " transect_1_2.range, \n", - " np.size(gps_points.utm_x)\n", - " )\n", + "depth = np.repeat(transect_1_2.range, np.size(gps_points.utm_x))\n", "\n", "# Create Dataframe from the calculated points\n", - "ADCP_points = pd.DataFrame({\n", - " 'utm_x': gps_utm_x, \n", - " 'utm_y': gps_utm_y, \n", - " 'waterdepth': depth\n", - " })\n", - "\n", - "# Raveling the veocity data to correspond with 'ADCP_points' and filtering out velocity data bellow the river bottom \n", - "ADCP_points['east_velocity']= np.ravel(transect_1_2.vel[0, :,:]) * river_bottom_filter\n", - "ADCP_points['north_velocity']= np.ravel(transect_1_2.vel[1, :,:]) * river_bottom_filter\n", - "ADCP_points['vertical_velocity']= np.ravel(transect_1_2.vel[2, :,:])* river_bottom_filter\n", - "ADCP_points= ADCP_points.dropna()\n", + "ADCP_points = pd.DataFrame(\n", + " {\"utm_x\": gps_utm_x, \"utm_y\": gps_utm_y, \"waterdepth\": depth}\n", + ")\n", + "\n", + "# Raveling the veocity data to correspond with 'ADCP_points' and filtering out velocity data bellow the river bottom\n", + "ADCP_points[\"east_velocity\"] = np.ravel(transect_1_2.vel[0, :, :]) * river_bottom_filter\n", + "ADCP_points[\"north_velocity\"] = (\n", + " np.ravel(transect_1_2.vel[1, :, :]) * river_bottom_filter\n", + ")\n", + "ADCP_points[\"vertical_velocity\"] = (\n", + " np.ravel(transect_1_2.vel[2, :, :]) * river_bottom_filter\n", + ")\n", + "ADCP_points = ADCP_points.dropna()\n", "\n", "# Show points\n", "ADCP_points" @@ -1226,29 +1229,33 @@ "metadata": {}, "outputs": [], "source": [ - "# Project velocity onto ideal tansect \n", - "ADCP_ideal= pd.DataFrame()\n", - "ADCP_ideal['east_velocity'] = interp.griddata(\n", - " ADCP_points[['utm_x','utm_y','waterdepth']],\n", - " ADCP_points['east_velocity'],\n", - " ADCP_ideal_points[['utm_x','utm_y','waterdepth']],\n", - " method='linear'\n", - " )\n", - "ADCP_ideal['north_velocity'] = interp.griddata(\n", - " ADCP_points[['utm_x','utm_y','waterdepth']],\n", - " ADCP_points['north_velocity'],\n", - " ADCP_ideal_points[['utm_x','utm_y','waterdepth']],\n", - " method='linear'\n", - " )\n", - "ADCP_ideal['vertical_velocity'] = interp.griddata(\n", - " ADCP_points[['utm_x','utm_y','waterdepth']],\n", - " ADCP_points['vertical_velocity'],\n", - " ADCP_ideal_points[['utm_x','utm_y','waterdepth']],\n", - " method='linear'\n", - " )\n", + "# Project velocity onto ideal tansect\n", + "ADCP_ideal = pd.DataFrame()\n", + "ADCP_ideal[\"east_velocity\"] = interp.griddata(\n", + " ADCP_points[[\"utm_x\", \"utm_y\", \"waterdepth\"]],\n", + " ADCP_points[\"east_velocity\"],\n", + " ADCP_ideal_points[[\"utm_x\", \"utm_y\", \"waterdepth\"]],\n", + " method=\"linear\",\n", + ")\n", + "ADCP_ideal[\"north_velocity\"] = interp.griddata(\n", + " ADCP_points[[\"utm_x\", \"utm_y\", \"waterdepth\"]],\n", + " ADCP_points[\"north_velocity\"],\n", + " ADCP_ideal_points[[\"utm_x\", \"utm_y\", \"waterdepth\"]],\n", + " method=\"linear\",\n", + ")\n", + "ADCP_ideal[\"vertical_velocity\"] = interp.griddata(\n", + " ADCP_points[[\"utm_x\", \"utm_y\", \"waterdepth\"]],\n", + " ADCP_points[\"vertical_velocity\"],\n", + " ADCP_ideal_points[[\"utm_x\", \"utm_y\", \"waterdepth\"]],\n", + " method=\"linear\",\n", + ")\n", "\n", "# Calculate the magnitude of the velocity components\n", - "ADCP_ideal['magnitude']= np.sqrt(ADCP_ideal.east_velocity**2+ADCP_ideal.north_velocity**2+ADCP_ideal.vertical_velocity**2)" + "ADCP_ideal[\"magnitude\"] = np.sqrt(\n", + " ADCP_ideal.east_velocity**2\n", + " + ADCP_ideal.north_velocity**2\n", + " + ADCP_ideal.vertical_velocity**2\n", + ")" ] }, { @@ -1298,29 +1305,31 @@ ], "source": [ "# Set the contour color bar bounds\n", - "min_plot=0\n", - "max_plot=3\n", + "min_plot = 0\n", + "max_plot = 3\n", "\n", - "# The Contour of velocity magnitude from the ADCP transect data \n", - "fig,ax = plt.subplots(figsize=(10,4.4))\n", + "# The Contour of velocity magnitude from the ADCP transect data\n", + "fig, ax = plt.subplots(figsize=(10, 4.4))\n", "\n", "contour_plot = plt.tripcolor(\n", - " ADCP_ideal_points.utm_x, \n", - " -ADCP_ideal_points.waterdepth, \n", - " ADCP_ideal.magnitude*river_bottom_filter,\n", + " ADCP_ideal_points.utm_x,\n", + " -ADCP_ideal_points.waterdepth,\n", + " ADCP_ideal.magnitude * river_bottom_filter,\n", " vmin=min_plot,\n", - " vmax=max_plot\n", + " vmax=max_plot,\n", ")\n", "\n", - "plt.xlabel('$UTM_x (m)$')\n", - "plt.ylabel('Water Depth (m)')\n", - "cbar= plt.colorbar(contour_plot)\n", - "cbar.set_label('velocity [m/s]')\n", - "plt.ylim([-8.5,-1])\n", - "plt.xlim([400950,401090])\n", - "plt.plot(ideal_points.utm_x,-bottom_avg,'k', label= 'river bottom')\n", - "plt.legend(loc= 7)\n", - "ax.get_xaxis().set_major_formatter(matplotlib.ticker.FuncFormatter(lambda x, p: format(int(x), ',')))\n", + "plt.xlabel(\"$UTM_x (m)$\")\n", + "plt.ylabel(\"Water Depth (m)\")\n", + "cbar = plt.colorbar(contour_plot)\n", + "cbar.set_label(\"velocity [m/s]\")\n", + "plt.ylim([-8.5, -1])\n", + "plt.xlim([400950, 401090])\n", + "plt.plot(ideal_points.utm_x, -bottom_avg, \"k\", label=\"river bottom\")\n", + "plt.legend(loc=7)\n", + "ax.get_xaxis().set_major_formatter(\n", + " matplotlib.ticker.FuncFormatter(lambda x, p: format(int(x), \",\"))\n", + ")\n", "plt.xticks(rotation=45)" ] }, @@ -1363,38 +1372,39 @@ ], "source": [ "# Interpolate points by getting min & max first\n", - "start_utmx = min(ADCP_ideal_points.utm_x)\n", + "start_utmx = min(ADCP_ideal_points.utm_x)\n", "start_utmy = min(ADCP_ideal_points.utm_y)\n", "\n", "end_utmx = max(ADCP_ideal_points.utm_x)\n", "end_utmy = min(ADCP_ideal_points.utm_y)\n", "\n", "# Using N points for x calculate the y values on an ideal transect from the linear regression used earlier\n", - "N=10\n", + "N = 10\n", "utm_x_ideal_downsampeled = np.linspace(start_utmx, end_utmx, N)\n", - "utm_y_ideal_downsampeled = (a*utm_x_ideal_downsampeled) + b\n", - "\n", + "utm_y_ideal_downsampeled = (a * utm_x_ideal_downsampeled) + b\n", "\n", "\n", "# Plot the Idealized Transect for comparison\n", "plt.plot(\n", - " ADCP_ideal_points.utm_x, \n", - " ADCP_ideal_points.utm_y, \n", - " '.', ms=1, label='Ideal Transect'\n", - " )\n", + " ADCP_ideal_points.utm_x, ADCP_ideal_points.utm_y, \".\", ms=1, label=\"Ideal Transect\"\n", + ")\n", "\n", "# Plot the downsampled transect\n", "plt.plot(\n", - " utm_x_ideal_downsampeled, \n", - " utm_y_ideal_downsampeled, \n", - " 'ro', label='Down Sampled Ideal Transect')\n", + " utm_x_ideal_downsampeled,\n", + " utm_y_ideal_downsampeled,\n", + " \"ro\",\n", + " label=\"Down Sampled Ideal Transect\",\n", + ")\n", "\n", "\n", "# Plot settings\n", - "ax.get_xaxis().set_major_formatter(matplotlib.ticker.FuncFormatter(lambda x, p: format(int(x), ',')))\n", + "ax.get_xaxis().set_major_formatter(\n", + " matplotlib.ticker.FuncFormatter(lambda x, p: format(int(x), \",\"))\n", + ")\n", "plt.xticks(rotation=45)\n", - "plt.xlabel('$UTM_x$')\n", - "plt.ylabel('$UTM_y$')\n", + "plt.xlabel(\"$UTM_x$\")\n", + "plt.ylabel(\"$UTM_y$\")\n", "plt.legend()" ] }, @@ -1435,52 +1445,46 @@ ], "source": [ "# Create an idealized depth N layers deep\n", - "N_layers=12\n", + "N_layers = 12\n", "downsampled_depth = np.linspace(\n", - " transect_1_2.range.min(), \n", - " np.nanmax(bottom_avg), \n", - " N_layers\n", - " )\n", + " transect_1_2.range.min(), np.nanmax(bottom_avg), N_layers\n", + ")\n", "\n", - "# Repeat this over the N points of the DownSampled Ideal Transect above \n", - "depth_ideal_points_downsampled = np.repeat(\n", - " downsampled_depth,\n", - " N\n", - " )\n", + "# Repeat this over the N points of the DownSampled Ideal Transect above\n", + "depth_ideal_points_downsampled = np.repeat(downsampled_depth, N)\n", "\n", "# Tile the x, y over the N of layers to add to a DataFrame\n", - "utm_x_ideal_points_downsampled= np.tile(\n", - " utm_x_ideal_downsampeled, \n", - " N_layers\n", - " )\n", - "utm_y_ideal_points_downsampled= np.tile(\n", - " utm_y_ideal_downsampeled, \n", - " N_layers\n", - " )\n", + "utm_x_ideal_points_downsampled = np.tile(utm_x_ideal_downsampeled, N_layers)\n", + "utm_y_ideal_points_downsampled = np.tile(utm_y_ideal_downsampeled, N_layers)\n", "\n", "# Create a Dataframe of our idealized x,y,depth points\n", - "ADCP_ideal_points_downsamples=pd.DataFrame({\n", - " 'utm_x': utm_x_ideal_points_downsampled, \n", - " 'utm_y': utm_y_ideal_points_downsampled,\n", - " 'waterdepth': depth_ideal_points_downsampled\n", - " })\n", + "ADCP_ideal_points_downsamples = pd.DataFrame(\n", + " {\n", + " \"utm_x\": utm_x_ideal_points_downsampled,\n", + " \"utm_y\": utm_y_ideal_points_downsampled,\n", + " \"waterdepth\": depth_ideal_points_downsampled,\n", + " }\n", + ")\n", "\n", "# Plot the Down sampled data points at the x locations\n", - "fig,ax = plt.subplots(figsize=(10,4.4))\n", - "plt.plot(ADCP_ideal_points_downsamples.utm_x, \n", - " ADCP_ideal_points_downsamples.waterdepth * -1, \n", - " 'ro', \n", - " )\n", + "fig, ax = plt.subplots(figsize=(10, 4.4))\n", + "plt.plot(\n", + " ADCP_ideal_points_downsamples.utm_x,\n", + " ADCP_ideal_points_downsamples.waterdepth * -1,\n", + " \"ro\",\n", + ")\n", "\n", "# Plot the ADCP river bed\n", - "plt.plot(ideal_points.utm_x,-bottom_avg,'k', label= 'river bottom')\n", + "plt.plot(ideal_points.utm_x, -bottom_avg, \"k\", label=\"river bottom\")\n", "\n", "# Plot settings\n", - "ax.get_xaxis().set_major_formatter(matplotlib.ticker.FuncFormatter(lambda x, p: format(int(x), ',')))\n", + "ax.get_xaxis().set_major_formatter(\n", + " matplotlib.ticker.FuncFormatter(lambda x, p: format(int(x), \",\"))\n", + ")\n", "plt.xticks(rotation=45)\n", - "plt.title('DownSampled Ideal Transect Depth')\n", - "plt.xlabel('$UTM_x [m]$')\n", - "plt.ylabel('$ Depth [m]$')" + "plt.title(\"DownSampled Ideal Transect Depth\")\n", + "plt.xlabel(\"$UTM_x [m]$\")\n", + "plt.ylabel(\"$ Depth [m]$\")" ] }, { @@ -1632,27 +1636,31 @@ } ], "source": [ - "# Project velocity onto ideal tansect \n", - "ADCP_ideal_downsamples= pd.DataFrame()\n", - "ADCP_ideal_downsamples['east_velocity']= interp.griddata(\n", - " ADCP_points[['utm_x','utm_y','waterdepth']],\n", - " ADCP_points['east_velocity'],\n", - " ADCP_ideal_points_downsamples[['utm_x','utm_y','waterdepth']],\n", - " method='linear'\n", - " )\n", - "ADCP_ideal_downsamples['north_velocity']= interp.griddata(\n", - " ADCP_points[['utm_x','utm_y','waterdepth']],\n", - " ADCP_points['north_velocity'],\n", - " ADCP_ideal_points_downsamples[['utm_x','utm_y','waterdepth']],\n", - " method='linear'\n", + "# Project velocity onto ideal tansect\n", + "ADCP_ideal_downsamples = pd.DataFrame()\n", + "ADCP_ideal_downsamples[\"east_velocity\"] = interp.griddata(\n", + " ADCP_points[[\"utm_x\", \"utm_y\", \"waterdepth\"]],\n", + " ADCP_points[\"east_velocity\"],\n", + " ADCP_ideal_points_downsamples[[\"utm_x\", \"utm_y\", \"waterdepth\"]],\n", + " method=\"linear\",\n", + ")\n", + "ADCP_ideal_downsamples[\"north_velocity\"] = interp.griddata(\n", + " ADCP_points[[\"utm_x\", \"utm_y\", \"waterdepth\"]],\n", + " ADCP_points[\"north_velocity\"],\n", + " ADCP_ideal_points_downsamples[[\"utm_x\", \"utm_y\", \"waterdepth\"]],\n", + " method=\"linear\",\n", + ")\n", + "ADCP_ideal_downsamples[\"vertical_velocity\"] = interp.griddata(\n", + " ADCP_points[[\"utm_x\", \"utm_y\", \"waterdepth\"]],\n", + " ADCP_points[\"vertical_velocity\"],\n", + " ADCP_ideal_points_downsamples[[\"utm_x\", \"utm_y\", \"waterdepth\"]],\n", + " method=\"linear\",\n", + ")\n", + "ADCP_ideal_downsamples[\"magnitude\"] = np.sqrt(\n", + " ADCP_ideal_downsamples.east_velocity**2\n", + " + ADCP_ideal_downsamples.north_velocity**2\n", + " + ADCP_ideal_downsamples.vertical_velocity**2\n", ")\n", - "ADCP_ideal_downsamples['vertical_velocity']= interp.griddata(\n", - " ADCP_points[['utm_x','utm_y','waterdepth']],\n", - " ADCP_points['vertical_velocity'],\n", - " ADCP_ideal_points_downsamples[['utm_x','utm_y','waterdepth']],\n", - " method='linear'\n", - " )\n", - "ADCP_ideal_downsamples['magnitude']= np.sqrt(ADCP_ideal_downsamples.east_velocity**2+ADCP_ideal_downsamples.north_velocity**2+ADCP_ideal_downsamples.vertical_velocity**2)\n", "ADCP_ideal_downsamples" ] }, @@ -1682,23 +1690,31 @@ ], "source": [ "# Create a DataFrame of downsampled points\n", - "ideal_downsampeled= [ [x, y] for x, y in zip(utm_x_ideal_downsampeled, utm_y_ideal_downsampeled)] \n", - "ideal_points_downsampled = pd.DataFrame(np.array(ideal_downsampeled), columns= ['utm_x','utm_y'])\n", + "ideal_downsampeled = [\n", + " [x, y] for x, y in zip(utm_x_ideal_downsampeled, utm_y_ideal_downsampeled)\n", + "]\n", + "ideal_points_downsampled = pd.DataFrame(\n", + " np.array(ideal_downsampeled), columns=[\"utm_x\", \"utm_y\"]\n", + ")\n", "\n", - "# River bottom for downsampled ideal transect \n", - "bottom_avg_downsampled= interp.griddata(gps_points, bottom, ideal_points_downsampled, method='linear')\n", + "# River bottom for downsampled ideal transect\n", + "bottom_avg_downsampled = interp.griddata(\n", + " gps_points, bottom, ideal_points_downsampled, method=\"linear\"\n", + ")\n", "\n", "# Create a matrix of depths\n", - "bottom_filter_downsampled = d3d.create_points(x=bottom_avg_downsampled, y=downsampled_depth, waterdepth=1)\n", - "\n", - "# Creating a mask matrix with ones in the area of the river cross section and nan's outside \n", - "river_bottom_filter_downsampled= []\n", - "for index, row in bottom_filter_downsampled.iterrows():\n", - " if row['x'] > row['y']: \n", - " filter= 1 \n", - " else: \n", - " filter= float(\"nan\")\n", - " river_bottom_filter_downsampled= np.append(river_bottom_filter_downsampled, filter)" + "bottom_filter_downsampled = d3d.create_points(\n", + " x=bottom_avg_downsampled, y=downsampled_depth, waterdepth=1\n", + ")\n", + "\n", + "# Creating a mask matrix with ones in the area of the river cross section and nan's outside\n", + "river_bottom_filter_downsampled = []\n", + "for index, row in bottom_filter_downsampled.iterrows():\n", + " if row[\"x\"] > row[\"y\"]:\n", + " filter = 1\n", + " else:\n", + " filter = float(\"nan\")\n", + " river_bottom_filter_downsampled = np.append(river_bottom_filter_downsampled, filter)" ] }, { @@ -1747,28 +1763,30 @@ } ], "source": [ - "# Plotting \n", - "fig,ax = plt.subplots(figsize=(10,4.4))\n", + "# Plotting\n", + "fig, ax = plt.subplots(figsize=(10, 4.4))\n", "contour_plot = plt.tripcolor(\n", - " ADCP_ideal_points_downsamples.utm_x, \n", - " -ADCP_ideal_points_downsamples.waterdepth, \n", - " ADCP_ideal_downsamples.magnitude*river_bottom_filter_downsampled,\n", + " ADCP_ideal_points_downsamples.utm_x,\n", + " -ADCP_ideal_points_downsamples.waterdepth,\n", + " ADCP_ideal_downsamples.magnitude * river_bottom_filter_downsampled,\n", " vmin=min_plot,\n", - " vmax=max_plot\n", - " )\n", + " vmax=max_plot,\n", + ")\n", "\n", "# Plot river bottom for comparison\n", - "plt.plot(ideal_points.utm_x,-bottom_avg,'k', label= 'river bottom')\n", + "plt.plot(ideal_points.utm_x, -bottom_avg, \"k\", label=\"river bottom\")\n", "\n", "# Plot Settings\n", - "plt.xlabel('$UTM_x$ (m)')\n", - "plt.ylabel('Water Depth (m)')\n", - "cbar= plt.colorbar(contour_plot)\n", - "cbar.set_label('Velocity [m/s]')\n", - "plt.ylim([-8.5,-1])\n", - "plt.xlim([400950,401090])\n", - "plt.legend(loc= 7)\n", - "ax.get_xaxis().set_major_formatter(matplotlib.ticker.FuncFormatter(lambda x, p: format(int(x), ',')))\n", + "plt.xlabel(\"$UTM_x$ (m)\")\n", + "plt.ylabel(\"Water Depth (m)\")\n", + "cbar = plt.colorbar(contour_plot)\n", + "cbar.set_label(\"Velocity [m/s]\")\n", + "plt.ylim([-8.5, -1])\n", + "plt.xlim([400950, 401090])\n", + "plt.legend(loc=7)\n", + "ax.get_xaxis().set_major_formatter(\n", + " matplotlib.ticker.FuncFormatter(lambda x, p: format(int(x), \",\"))\n", + ")\n", "plt.xticks(rotation=45)" ] }, @@ -1842,33 +1860,33 @@ "# Use the requests method to obtain 1 day of instantneous gage height data\n", "water_level_USGS_data = river.io.usgs.request_usgs_data(\n", " station=\"15515500\",\n", - " parameter='00065',\n", - " start_date='2010-08-10',\n", - " end_date='2010-08-10',\n", - " data_type='Instantaneous'\n", - " )\n", + " parameter=\"00065\",\n", + " start_date=\"2010-08-10\",\n", + " end_date=\"2010-08-10\",\n", + " data_type=\"Instantaneous\",\n", + ")\n", "\n", "# Plot data\n", "water_level_USGS_data.plot()\n", "\n", "# Plot Settings\n", - "plt.xlabel('Time')\n", - "plt.ylabel('Gage Height (feet)')\n", + "plt.xlabel(\"Time\")\n", + "plt.ylabel(\"Gage Height (feet)\")\n", "\n", "# Use the requests method to obtain 1 day of instantneous discharge data\n", "discharge_USGS_data = river.io.usgs.request_usgs_data(\n", " station=\"15515500\",\n", - " parameter='00060',\n", - " start_date='2010-08-10',\n", - " end_date='2010-08-10',\n", - " data_type='Instantaneous'\n", - " )\n", + " parameter=\"00060\",\n", + " start_date=\"2010-08-10\",\n", + " end_date=\"2010-08-10\",\n", + " data_type=\"Instantaneous\",\n", + ")\n", "\n", "# Print data\n", "discharge_USGS_data.plot()\n", "# Plot Settings\n", - "plt.xlabel('Time')\n", - "plt.ylabel('Dischage ($f^3/s$)')" + "plt.xlabel(\"Time\")\n", + "plt.ylabel(\"Dischage ($f^3/s$)\")" ] }, { @@ -1888,10 +1906,12 @@ "outputs": [], "source": [ "# Import the simulated data\n", - "d3d_data = netCDF4.Dataset('data/river/ADCP_transect/tanana81010_final_map.nc')\n", + "d3d_data = netCDF4.Dataset(\"data/river/ADCP_transect/tanana81010_final_map.nc\")\n", "\n", "# Get the ADCP sample points\n", - "ADCP_ideal_points_downsamples_xy = ADCP_ideal_points_downsamples.rename(columns={\"utm_x\": \"x\", \"utm_y\": \"y\"})" + "ADCP_ideal_points_downsamples_xy = ADCP_ideal_points_downsamples.rename(\n", + " columns={\"utm_x\": \"x\", \"utm_y\": \"y\"}\n", + ")" ] }, { @@ -1919,11 +1939,13 @@ ], "source": [ "# Interpolate the Delft3D simulated data onto the the sample points\n", - "variables= ['ucy', 'ucx', 'ucz']\n", - "D3D= d3d.variable_interpolation(d3d_data, variables, points= ADCP_ideal_points_downsamples_xy)\n", + "variables = [\"ucy\", \"ucx\", \"ucz\"]\n", + "D3D = d3d.variable_interpolation(\n", + " d3d_data, variables, points=ADCP_ideal_points_downsamples_xy\n", + ")\n", "\n", "# Calculate the magnitude of the velocity\n", - "D3D['magnitude'] = np.sqrt(D3D.ucy**2 + D3D.ucx**2 + D3D.ucz**2)" + "D3D[\"magnitude\"] = np.sqrt(D3D.ucy**2 + D3D.ucx**2 + D3D.ucz**2)" ] }, { @@ -1972,29 +1994,31 @@ ], "source": [ "# Plot Delft3D interpolated Data\n", - "fig,ax = plt.subplots(figsize=(10,4.4))\n", + "fig, ax = plt.subplots(figsize=(10, 4.4))\n", "contour_plot = plt.tripcolor(\n", - " D3D.x, \n", - " -D3D.waterdepth, \n", - " D3D.magnitude*river_bottom_filter_downsampled,\n", + " D3D.x,\n", + " -D3D.waterdepth,\n", + " D3D.magnitude * river_bottom_filter_downsampled,\n", " vmin=min_plot,\n", " vmax=max_plot,\n", - " #shading='gouraud'\n", - " alpha=1\n", + " # shading='gouraud'\n", + " alpha=1,\n", ")\n", "\n", "# Plot the river bottom calculated frol ADCP for comparison\n", - "plt.plot(ideal_points.utm_x,-bottom_avg,'k', label= 'river bottom')\n", + "plt.plot(ideal_points.utm_x, -bottom_avg, \"k\", label=\"river bottom\")\n", "\n", "# Figure settings\n", - "plt.xlabel('$UTM_x (m)$')\n", - "plt.ylabel('Water Depth (m)')\n", - "cbar= plt.colorbar(contour_plot)\n", - "cbar.set_label('velocity [m/s]')\n", - "plt.ylim([-8.5,-1])\n", - "plt.xlim([400960,401090])\n", - "plt.legend(loc= 7)\n", - "ax.get_xaxis().set_major_formatter(matplotlib.ticker.FuncFormatter(lambda x, p: format(int(x), ',')))\n", + "plt.xlabel(\"$UTM_x (m)$\")\n", + "plt.ylabel(\"Water Depth (m)\")\n", + "cbar = plt.colorbar(contour_plot)\n", + "cbar.set_label(\"velocity [m/s]\")\n", + "plt.ylim([-8.5, -1])\n", + "plt.xlim([400960, 401090])\n", + "plt.legend(loc=7)\n", + "ax.get_xaxis().set_major_formatter(\n", + " matplotlib.ticker.FuncFormatter(lambda x, p: format(int(x), \",\"))\n", + ")\n", "plt.xticks(rotation=45)" ] }, @@ -2021,7 +2045,10 @@ "outputs": [], "source": [ "# L1\n", - "L1_Magnitude= abs(ADCP_ideal_downsamples.magnitude-D3D.magnitude)/ADCP_ideal_downsamples.magnitude" + "L1_Magnitude = (\n", + " abs(ADCP_ideal_downsamples.magnitude - D3D.magnitude)\n", + " / ADCP_ideal_downsamples.magnitude\n", + ")" ] }, { @@ -2039,15 +2066,17 @@ "metadata": {}, "outputs": [], "source": [ - "river_bottom_edge_filter_downsampled= []\n", - "for i in L1_Magnitude:\n", - " if 1 > i: \n", - " filter= 1 \n", - " else: \n", - " filter= float(\"nan\")\n", - " river_bottom_edge_filter_downsampled= np.append(river_bottom_edge_filter_downsampled, filter)\n", - " \n", - "error_filter = river_bottom_edge_filter_downsampled*river_bottom_filter_downsampled" + "river_bottom_edge_filter_downsampled = []\n", + "for i in L1_Magnitude:\n", + " if 1 > i:\n", + " filter = 1\n", + " else:\n", + " filter = float(\"nan\")\n", + " river_bottom_edge_filter_downsampled = np.append(\n", + " river_bottom_edge_filter_downsampled, filter\n", + " )\n", + "\n", + "error_filter = river_bottom_edge_filter_downsampled * river_bottom_filter_downsampled" ] }, { @@ -2079,7 +2108,7 @@ ], "source": [ "# Calculate and priont the Mean Absolute Error\n", - "MAE= np.sum(L1_Magnitude*error_filter)/len(L1_Magnitude[L1_Magnitude< 1000 ])\n", + "MAE = np.sum(L1_Magnitude * error_filter) / len(L1_Magnitude[L1_Magnitude < 1000])\n", "MAE" ] }, @@ -2121,33 +2150,35 @@ ], "source": [ "# Set the min and max error values\n", - "max_plot_error=1\n", - "min_plot_error=0\n", + "max_plot_error = 1\n", + "min_plot_error = 0\n", "\n", "# Plotting the L1 error\n", - "fig,ax = plt.subplots(figsize=(10,4.4))\n", + "fig, ax = plt.subplots(figsize=(10, 4.4))\n", "contour_plot_L1 = plt.tripcolor(\n", - " D3D.x, \n", - " -D3D.waterdepth, \n", - " L1_Magnitude*error_filter,\n", + " D3D.x,\n", + " -D3D.waterdepth,\n", + " L1_Magnitude * error_filter,\n", " vmin=min_plot_error,\n", - " vmax=max_plot_error\n", - " )\n", + " vmax=max_plot_error,\n", + ")\n", "\n", "# Plot the river bottom for comparison\n", - "plt.plot(ideal_points.utm_x,-bottom_avg,'k', label= 'river bottom')\n", + "plt.plot(ideal_points.utm_x, -bottom_avg, \"k\", label=\"river bottom\")\n", "\n", "# Plot settings\n", - "plt.xlim([400960,401090])\n", - "plt.ylim([-8.5,-1])\n", - "plt.xlabel('UTM x (m)')\n", - "plt.ylabel('Water Depth (m)')\n", - "cbar= plt.colorbar(contour_plot_L1)\n", - "cbar.set_label('$L_1$ Velocity Error')\n", - "plt.legend(loc= 7)\n", - "\n", - "ax.get_xaxis().set_major_formatter(matplotlib.ticker.FuncFormatter(lambda x, p: format(int(x), ',')))\n", - "plt.xticks(rotation=45)\n" + "plt.xlim([400960, 401090])\n", + "plt.ylim([-8.5, -1])\n", + "plt.xlabel(\"UTM x (m)\")\n", + "plt.ylabel(\"Water Depth (m)\")\n", + "cbar = plt.colorbar(contour_plot_L1)\n", + "cbar.set_label(\"$L_1$ Velocity Error\")\n", + "plt.legend(loc=7)\n", + "\n", + "ax.get_xaxis().set_major_formatter(\n", + " matplotlib.ticker.FuncFormatter(lambda x, p: format(int(x), \",\"))\n", + ")\n", + "plt.xticks(rotation=45)" ] }, { @@ -2169,8 +2200,11 @@ "metadata": {}, "outputs": [], "source": [ - "# L2 \n", - "L2_Magnitude= ((ADCP_ideal_downsamples.magnitude-D3D.magnitude)/ADCP_ideal_downsamples.magnitude)**2" + "# L2\n", + "L2_Magnitude = (\n", + " (ADCP_ideal_downsamples.magnitude - D3D.magnitude)\n", + " / ADCP_ideal_downsamples.magnitude\n", + ") ** 2" ] }, { @@ -2202,7 +2236,7 @@ } ], "source": [ - "MSE=np.sum(L2_Magnitude*error_filter)/np.size(L2_Magnitude[L2_Magnitude< 1000])\n", + "MSE = np.sum(L2_Magnitude * error_filter) / np.size(L2_Magnitude[L2_Magnitude < 1000])\n", "MSE" ] }, @@ -2244,29 +2278,31 @@ ], "source": [ "# Create a contour plot of the error\n", - "# Plotting \n", - "fig,ax = plt.subplots(figsize=(10,4.4))\n", + "# Plotting\n", + "fig, ax = plt.subplots(figsize=(10, 4.4))\n", "contour_plot_L2 = plt.tripcolor(\n", - " D3D.x, \n", - " -D3D.waterdepth, \n", - " L2_Magnitude*error_filter,\n", + " D3D.x,\n", + " -D3D.waterdepth,\n", + " L2_Magnitude * error_filter,\n", " vmin=min_plot_error,\n", - " vmax=max_plot_error\n", + " vmax=max_plot_error,\n", ")\n", "\n", "# Plot the river bottom for comparison\n", - "plt.plot(ideal_points.utm_x,-bottom_avg,'k', label= 'river bottom')\n", + "plt.plot(ideal_points.utm_x, -bottom_avg, \"k\", label=\"river bottom\")\n", "\n", "# Plot settings\n", - "plt.xlim([400960,401090])\n", - "plt.ylim([-8.5,-1])\n", - "plt.xlabel('UTM x (m)')\n", - "plt.ylabel('Water Depth (m)')\n", - "cbar= plt.colorbar(contour_plot_L1)\n", - "cbar.set_label('$L_2$ Velocity Error')\n", - "plt.legend(loc= 7)\n", - "\n", - "ax.get_xaxis().set_major_formatter(matplotlib.ticker.FuncFormatter(lambda x, p: format(int(x), ',')))\n", + "plt.xlim([400960, 401090])\n", + "plt.ylim([-8.5, -1])\n", + "plt.xlabel(\"UTM x (m)\")\n", + "plt.ylabel(\"Water Depth (m)\")\n", + "cbar = plt.colorbar(contour_plot_L1)\n", + "cbar.set_label(\"$L_2$ Velocity Error\")\n", + "plt.legend(loc=7)\n", + "\n", + "ax.get_xaxis().set_major_formatter(\n", + " matplotlib.ticker.FuncFormatter(lambda x, p: format(int(x), \",\"))\n", + ")\n", "plt.xticks(rotation=45)" ] }, @@ -2301,7 +2337,7 @@ ], "source": [ "# L inf\n", - "L_inf=np.nanmax(L1_Magnitude*error_filter)\n", + "L_inf = np.nanmax(L1_Magnitude * error_filter)\n", "L_inf" ] }, diff --git a/examples/Delft3D_example.ipynb b/examples/Delft3D_example.ipynb index a87de112b..1c76ca080 100644 --- a/examples/Delft3D_example.ipynb +++ b/examples/Delft3D_example.ipynb @@ -22,14 +22,15 @@ "outputs": [], "source": [ "from os.path import abspath, dirname, join, normpath, relpath\n", - "from mhkit.river.io import d3d \n", + "from mhkit.river.io import d3d\n", "from math import isclose\n", "import scipy.interpolate as interp\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "import pandas as pd\n", "import netCDF4\n", - "plt.rcParams.update({'font.size': 15}) # Set font size of plots title and labels " + "\n", + "plt.rcParams.update({\"font.size\": 15}) # Set font size of plots title and labels" ] }, { @@ -111,16 +112,16 @@ ], "source": [ "# Downloading Data\n", - "datadir = normpath(join(relpath(join('data', 'river', 'd3d'))))\n", - "filename= 'turbineTest_map.nc'\n", - "d3d_data = netCDF4.Dataset(join(datadir,filename)) \n", + "datadir = normpath(join(relpath(join(\"data\", \"river\", \"d3d\"))))\n", + "filename = \"turbineTest_map.nc\"\n", + "d3d_data = netCDF4.Dataset(join(datadir, filename))\n", "\n", "# Printing variable and description\n", "for var in d3d_data.variables.keys():\n", - " try: \n", + " try:\n", " d3d_data[var].long_name\n", " except:\n", - " print(f'\"{var}\"') \n", + " print(f'\"{var}\"')\n", " else:\n", " print(f'\"{var}\": {d3d_data[var].long_name}')" ] @@ -150,7 +151,7 @@ } ], "source": [ - "time= d3d.get_all_time(d3d_data)\n", + "time = d3d.get_all_time(d3d_data)\n", "print(time)" ] }, @@ -186,7 +187,7 @@ ], "source": [ "seconds_run = 62\n", - "time_index=d3d._convert_time(d3d_data,seconds_run=seconds_run)\n", + "time_index = d3d._convert_time(d3d_data, seconds_run=seconds_run)\n", "print(time_index)" ] }, @@ -229,14 +230,14 @@ } ], "source": [ - "# Getting variable data \n", - "variable= 'ucx' \n", - "var_data_df= d3d.get_all_data_points(d3d_data, variable, time_index=4)\n", + "# Getting variable data\n", + "variable = \"ucx\"\n", + "var_data_df = d3d.get_all_data_points(d3d_data, variable, time_index=4)\n", "print(var_data_df)\n", "\n", - "# Setting plot limits \n", - "max_plot_vel= 1.25\n", - "min_plot_vel=0.5" + "# Setting plot limits\n", + "max_plot_vel = 1.25\n", + "min_plot_vel = 0.5" ] }, { @@ -331,21 +332,21 @@ ], "source": [ "# Use rectangular grid min and max to find flume centerline\n", - "xmin=var_data_df.x.max()\n", - "xmax=var_data_df.x.min()\n", + "xmin = var_data_df.x.max()\n", + "xmax = var_data_df.x.min()\n", "\n", - "ymin=var_data_df.y.max()\n", - "ymax=var_data_df.y.min()\n", + "ymin = var_data_df.y.max()\n", + "ymax = var_data_df.y.min()\n", "\n", - "waterdepth_min=var_data_df.waterdepth.max()\n", - "waterdepth_max=var_data_df.waterdepth.min()\n", + "waterdepth_min = var_data_df.waterdepth.max()\n", + "waterdepth_max = var_data_df.waterdepth.min()\n", "\n", - "# Creating one array and 2 points \n", + "# Creating one array and 2 points\n", "x = np.linspace(xmin, xmax)\n", - "y = np.mean([ymin,ymax])\n", - "waterdepth = np.mean([waterdepth_min,waterdepth_max])\n", + "y = np.mean([ymin, ymax])\n", + "waterdepth = np.mean([waterdepth_min, waterdepth_max])\n", "\n", - "# Creating an array of points \n", + "# Creating an array of points\n", "cline_points = d3d.create_points(x, y, waterdepth)\n", "cline_points.head()" ] @@ -390,19 +391,19 @@ "source": [ "# Interpolate raw data onto the centerline\n", "cline_variable = interp.griddata(\n", - " var_data_df[['x','y','waterdepth']], \n", + " var_data_df[[\"x\", \"y\", \"waterdepth\"]],\n", " var_data_df[variable],\n", - " cline_points[['x','y','waterdepth']]\n", - ") \n", + " cline_points[[\"x\", \"y\", \"waterdepth\"]],\n", + ")\n", "\n", "# Plotting\n", - "plt.figure(figsize=(12,5))\n", + "plt.figure(figsize=(12, 5))\n", "plt.plot(x, cline_variable)\n", "\n", "plt.grid()\n", - "plt.xlabel('x (m)')\n", - "plt.ylabel('$u_x$ [m/s]' )\n", - "plt.title(f'Centerline Velocity at: {var_data_df.time[1]} s')" + "plt.xlabel(\"x (m)\")\n", + "plt.ylabel(\"$u_x$ [m/s]\")\n", + "plt.title(f\"Centerline Velocity at: {var_data_df.time[1]} s\")" ] }, { @@ -451,23 +452,23 @@ "layer = 2\n", "layer_data = d3d.get_layer_data(d3d_data, variable, layer)\n", "\n", - "# Plotting \n", - "plt.figure(figsize=(12,4))\n", + "# Plotting\n", + "plt.figure(figsize=(12, 4))\n", "contour_plot = plt.tricontourf(\n", " layer_data.x,\n", - " layer_data.y, \n", - " layer_data.v, \n", + " layer_data.y,\n", + " layer_data.v,\n", " vmin=min_plot_vel,\n", " vmax=max_plot_vel,\n", - " levels=np.linspace(min_plot_vel,max_plot_vel,10)\n", + " levels=np.linspace(min_plot_vel, max_plot_vel, 10),\n", ")\n", - " \n", + "\n", "cbar = plt.colorbar(contour_plot)\n", - "cbar.set_label('$u_x$ [m/s]')\n", - " \n", - "plt.xlabel('x [m]')\n", - "plt.ylabel('y [m]')\n", - "plt.title(f'Velocity on Layer {layer} at Time: {layer_data.time[1]} s')" + "cbar.set_label(\"$u_x$ [m/s]\")\n", + "\n", + "plt.xlabel(\"x [m]\")\n", + "plt.ylabel(\"y [m]\")\n", + "plt.title(f\"Velocity on Layer {layer} at Time: {layer_data.time[1]} s\")" ] }, { @@ -617,9 +618,9 @@ "# Create x-y plane at z level midpoint\n", "x2 = np.linspace(xmin, xmax, num=100)\n", "y_contour = np.linspace(ymin, ymax, num=40)\n", - "z2 = np.mean([waterdepth_min,waterdepth_max])\n", + "z2 = np.mean([waterdepth_min, waterdepth_max])\n", "\n", - "contour_points = d3d.create_points(x2, y_contour, z2) \n", + "contour_points = d3d.create_points(x2, y_contour, z2)\n", "contour_points" ] }, @@ -639,9 +640,9 @@ "outputs": [], "source": [ "contour_variable = interp.griddata(\n", - " var_data_df[['x','y','waterdepth']],\n", + " var_data_df[[\"x\", \"y\", \"waterdepth\"]],\n", " var_data_df[variable],\n", - " contour_points[['x','y','waterdepth']]\n", + " contour_points[[\"x\", \"y\", \"waterdepth\"]],\n", ")" ] }, @@ -673,23 +674,23 @@ } ], "source": [ - "# Plotting \n", - "plt.figure(figsize=(12,4))\n", + "# Plotting\n", + "plt.figure(figsize=(12, 4))\n", "contour_plot = plt.tricontourf(\n", " contour_points.x,\n", " contour_points.y,\n", " contour_variable,\n", " vmin=min_plot_vel,\n", " vmax=max_plot_vel,\n", - " levels=np.linspace(min_plot_vel,max_plot_vel,10)\n", + " levels=np.linspace(min_plot_vel, max_plot_vel, 10),\n", ")\n", "\n", - "plt.xlabel('x (m)')\n", - "plt.ylabel('y (m)')\n", - "plt.title(f'Velocity on x-y Plane')\n", + "plt.xlabel(\"x (m)\")\n", + "plt.ylabel(\"y (m)\")\n", + "plt.title(f\"Velocity on x-y Plane\")\n", "\n", - "cbar= plt.colorbar(contour_plot)\n", - "cbar.set_label(f'$u_x$ [m/s]')" + "cbar = plt.colorbar(contour_plot)\n", + "cbar.set_label(f\"$u_x$ [m/s]\")" ] }, { @@ -925,33 +926,29 @@ } ], "source": [ - "# Calculating turbulent intensity \n", - "TI=d3d.turbulent_intensity(\n", - " d3d_data,\n", - " points=contour_points,\n", - " intermediate_values=True\n", - ") \n", + "# Calculating turbulent intensity\n", + "TI = d3d.turbulent_intensity(d3d_data, points=contour_points, intermediate_values=True)\n", "\n", - "# Creating new plot limits \n", - "max_plot_TI=27\n", - "min_plot_TI=0\n", + "# Creating new plot limits\n", + "max_plot_TI = 27\n", + "min_plot_TI = 0\n", "\n", - "# Plotting \n", - "plt.figure(figsize=(12,4))\n", + "# Plotting\n", + "plt.figure(figsize=(12, 4))\n", "contour_plot = plt.tricontourf(\n", - " TI.x, \n", - " TI.y, \n", + " TI.x,\n", + " TI.y,\n", " TI.turbulent_intensity,\n", - " vmin=min_plot_TI, \n", + " vmin=min_plot_TI,\n", " vmax=max_plot_TI,\n", - " levels=np.linspace(min_plot_TI,max_plot_TI,10)\n", + " levels=np.linspace(min_plot_TI, max_plot_TI, 10),\n", ")\n", "\n", - "plt.xlabel('x (m)')\n", - "plt.ylabel('y (m)')\n", - "plt.title('Turbulent Intensity')\n", - "cbar= plt.colorbar(contour_plot)\n", - "cbar.set_label('Turbulent Intensity [%]')\n", + "plt.xlabel(\"x (m)\")\n", + "plt.ylabel(\"y (m)\")\n", + "plt.title(\"Turbulent Intensity\")\n", + "cbar = plt.colorbar(contour_plot)\n", + "cbar.set_label(\"Turbulent Intensity [%]\")\n", "\n", "TI" ] @@ -1183,37 +1180,39 @@ } ], "source": [ - "variables= ['turkin1', 'ucx', 'ucy', 'ucz']\n", + "variables = [\"turkin1\", \"ucx\", \"ucy\", \"ucz\"]\n", "\n", - "Var= d3d.variable_interpolation(d3d_data, variables, points='faces', edges = 'nearest')\n", + "Var = d3d.variable_interpolation(d3d_data, variables, points=\"faces\", edges=\"nearest\")\n", "\n", "# Replacing negative numbers close to zero with zero\n", - "neg_index=np.where(Var['turkin1']<0)# Finding negative numbers\n", + "neg_index = np.where(Var[\"turkin1\"] < 0) # Finding negative numbers\n", "\n", - "# Determining if negative number are close to zero \n", - "zero_bool= np.isclose(\n", - " Var['turkin1'][Var['turkin1']<0].array, \n", - " np.zeros(len(Var['turkin1'][Var['turkin1']<0].array)),\n", - " atol=1.0e-4\n", + "# Determining if negative number are close to zero\n", + "zero_bool = np.isclose(\n", + " Var[\"turkin1\"][Var[\"turkin1\"] < 0].array,\n", + " np.zeros(len(Var[\"turkin1\"][Var[\"turkin1\"] < 0].array)),\n", + " atol=1.0e-4,\n", ")\n", "\n", - "# Identifying the location of negative values close to zero \n", - "zero_ind= neg_index[0][zero_bool] \n", + "# Identifying the location of negative values close to zero\n", + "zero_ind = neg_index[0][zero_bool]\n", "\n", "# Identifying the location of negative number that are not close to zero\n", - "non_zero_ind= neg_index[0][~zero_bool]\n", + "non_zero_ind = neg_index[0][~zero_bool]\n", "\n", - "# Replacing negative number close to zero with zero \n", - "Var.loc[zero_ind,'turkin1']=np.zeros(len(zero_ind)) \n", + "# Replacing negative number close to zero with zero\n", + "Var.loc[zero_ind, \"turkin1\"] = np.zeros(len(zero_ind))\n", "\n", - "# Replacing negative numbers not close to zero with nan \n", - "Var.loc[non_zero_ind,'turkin1']=[np.nan]*len(non_zero_ind)\n", + "# Replacing negative numbers not close to zero with nan\n", + "Var.loc[non_zero_ind, \"turkin1\"] = [np.nan] * len(non_zero_ind)\n", "\n", - "# Calculating the root mean squared velocity \n", - "Var['u_mag']=d3d.unorm(np.array(Var['ucx']),np.array(Var['ucy']), np.array(Var['ucz']))\n", + "# Calculating the root mean squared velocity\n", + "Var[\"u_mag\"] = d3d.unorm(\n", + " np.array(Var[\"ucx\"]), np.array(Var[\"ucy\"]), np.array(Var[\"ucz\"])\n", + ")\n", "\n", - "# Calculating turbulent intensity as a percent \n", - "Var['turbulent_intensity']= (np.sqrt(2/3*Var['turkin1'])/Var['u_mag'])*100 \n", + "# Calculating turbulent intensity as a percent\n", + "Var[\"turbulent_intensity\"] = (np.sqrt(2 / 3 * Var[\"turkin1\"]) / Var[\"u_mag\"]) * 100\n", "\n", "Var" ] @@ -1258,43 +1257,47 @@ } ], "source": [ - "turbine_x_loc= 6 \n", - "turbine_diameter= 0.7\n", - "N=1\n", - "x_sample = turbine_x_loc+N*turbine_diameter\n", + "turbine_x_loc = 6\n", + "turbine_diameter = 0.7\n", + "N = 1\n", + "x_sample = turbine_x_loc + N * turbine_diameter\n", "y_samples = np.linspace(ymin, ymax, num=40)\n", - "waterdepth_samples = np.linspace(waterdepth_min,waterdepth_max, num=256)\n", + "waterdepth_samples = np.linspace(waterdepth_min, waterdepth_max, num=256)\n", "\n", - "variables= ['turkin1', 'ucx', 'ucy', 'ucz']\n", - "sample_points = d3d.create_points(x_sample, y_samples, waterdepth_samples) \n", + "variables = [\"turkin1\", \"ucx\", \"ucy\", \"ucz\"]\n", + "sample_points = d3d.create_points(x_sample, y_samples, waterdepth_samples)\n", "\n", - "Var_sample= d3d.variable_interpolation(d3d_data, variables, points= sample_points, edges = 'nearest')\n", + "Var_sample = d3d.variable_interpolation(\n", + " d3d_data, variables, points=sample_points, edges=\"nearest\"\n", + ")\n", "\n", - "#root mean squared calculation \n", - "Var_sample['u_mag']=d3d.unorm(\n", - " np.array(Var_sample['ucx']),\n", - " np.array(Var_sample['ucy']), \n", - " np.array(Var_sample['ucz'])\n", - ") \n", + "# root mean squared calculation\n", + "Var_sample[\"u_mag\"] = d3d.unorm(\n", + " np.array(Var_sample[\"ucx\"]),\n", + " np.array(Var_sample[\"ucy\"]),\n", + " np.array(Var_sample[\"ucz\"]),\n", + ")\n", "# turbulent intesity calculation\n", - "Var_sample['turbulent_intensity']= np.sqrt(2/3*Var_sample['turkin1'])/Var_sample['u_mag']*100 \n", + "Var_sample[\"turbulent_intensity\"] = (\n", + " np.sqrt(2 / 3 * Var_sample[\"turkin1\"]) / Var_sample[\"u_mag\"] * 100\n", + ")\n", "\n", - "# Plotting \n", - "plt.figure(figsize=(10,4.4))\n", + "# Plotting\n", + "plt.figure(figsize=(10, 4.4))\n", "contour_plot = plt.tricontourf(\n", - " Var_sample.y, \n", - " Var_sample.waterdepth, \n", + " Var_sample.y,\n", + " Var_sample.waterdepth,\n", " Var_sample.turbulent_intensity,\n", - " vmin=min_plot_TI, \n", + " vmin=min_plot_TI,\n", " vmax=max_plot_TI,\n", - " levels=np.linspace(min_plot_TI,max_plot_TI,10)\n", + " levels=np.linspace(min_plot_TI, max_plot_TI, 10),\n", ")\n", "\n", - "plt.xlabel('y (m)')\n", - "plt.ylabel('z (m)')\n", - "plt.title('Turbulent Intensity')\n", - "cbar= plt.colorbar(contour_plot)\n", - "cbar.set_label('Turbulent Intensity [%]')" + "plt.xlabel(\"y (m)\")\n", + "plt.ylabel(\"z (m)\")\n", + "plt.title(\"Turbulent Intensity\")\n", + "cbar = plt.colorbar(contour_plot)\n", + "cbar.set_label(\"Turbulent Intensity [%]\")" ] }, { diff --git a/examples/PacWave_resource_characterization_example.ipynb b/examples/PacWave_resource_characterization_example.ipynb index 80594fba1..0b4248f7a 100644 --- a/examples/PacWave_resource_characterization_example.ipynb +++ b/examples/PacWave_resource_characterization_example.ipynb @@ -24,7 +24,7 @@ "from sklearn.mixture import GaussianMixture\n", "from mhkit.wave.io import ndbc\n", "import matplotlib.pyplot as plt\n", - "from matplotlib import colors \n", + "from matplotlib import colors\n", "from scipy import stats\n", "import pandas as pd\n", "import numpy as np\n", @@ -32,12 +32,15 @@ "import os\n", "\n", "import matplotlib.pylab as pylab\n", - "params = {'legend.fontsize': 'x-large',\n", - " 'figure.figsize': (15, 5),\n", - " 'axes.labelsize': 'x-large',\n", - " 'axes.titlesize':'x-large',\n", - " 'xtick.labelsize':'x-large',\n", - " 'ytick.labelsize':'x-large'}\n", + "\n", + "params = {\n", + " \"legend.fontsize\": \"x-large\",\n", + " \"figure.figsize\": (15, 5),\n", + " \"axes.labelsize\": \"x-large\",\n", + " \"axes.titlesize\": \"x-large\",\n", + " \"xtick.labelsize\": \"x-large\",\n", + " \"ytick.labelsize\": \"x-large\",\n", + "}\n", "pylab.rcParams.update(params)" ] }, @@ -207,15 +210,30 @@ } ], "source": [ - "m = folium.Map(location=[44.613600975457715, -123.74317583354498], zoom_start=9, tiles=\"Stamen Terrain\", control_scale = True)\n", + "m = folium.Map(\n", + " location=[44.613600975457715, -123.74317583354498],\n", + " zoom_start=9,\n", + " tiles=\"Stamen Terrain\",\n", + " control_scale=True,\n", + ")\n", "\n", "tooltip = \"NDBC 46050\"\n", - "folium.Marker([44.669, -124.546], popup=\" Water depth: 160 m\", tooltip=tooltip).add_to(m)\n", + "folium.Marker(\n", + " [44.669, -124.546], popup=\" Water depth: 160 m\", tooltip=tooltip\n", + ").add_to(m)\n", "\n", "tooltip = \"PACWAVE North\"\n", - "folium.Marker([44.69, -124.13472222222222], tooltip=tooltip, icon=folium.Icon(color='green',icon=\"th-large\")).add_to(m)\n", + "folium.Marker(\n", + " [44.69, -124.13472222222222],\n", + " tooltip=tooltip,\n", + " icon=folium.Icon(color=\"green\", icon=\"th-large\"),\n", + ").add_to(m)\n", "tooltip = \"PACWAVE South\"\n", - "folium.Marker([44.58444444444444, -124.2125], tooltip=tooltip, icon=folium.Icon(color='red', icon=\"th\")).add_to(m)\n", + "folium.Marker(\n", + " [44.58444444444444, -124.2125],\n", + " tooltip=tooltip,\n", + " icon=folium.Icon(color=\"red\", icon=\"th\"),\n", + ").add_to(m)\n", "\n", "m.save(\"index.png\")\n", "\n", @@ -259,7 +277,7 @@ ], "source": [ "# Get buoy metadata\n", - "buoy_number = '46050' \n", + "buoy_number = \"46050\"\n", "buoy_metadata = ndbc.get_buoy_metadata(buoy_number)\n", "print(\"Buoy Metadata:\")\n", "for key, value in buoy_metadata.items():\n", @@ -631,17 +649,17 @@ ], "source": [ "# Spectral wave density for buoy 46050\n", - "parameter = 'swden'\n", + "parameter = \"swden\"\n", "\n", "\n", "# Request list of available files\n", - "ndbc_available_data= ndbc.available_data(parameter, buoy_number)\n", + "ndbc_available_data = ndbc.available_data(parameter, buoy_number)\n", "\n", "# Pass file names to NDBC and request the data\n", - "filenames = ndbc_available_data['filename']\n", + "filenames = ndbc_available_data[\"filename\"]\n", "ndbc_requested_data = ndbc.request_data(parameter, filenames)\n", "\n", - "ndbc_requested_data['2020']" + "ndbc_requested_data[\"2020\"]" ] }, { @@ -1048,13 +1066,13 @@ } ], "source": [ - "ndbc_data={}\n", + "ndbc_data = {}\n", "# Create a Datetime Index and remove NOAA date columns for each year\n", "for year in ndbc_requested_data:\n", " year_data = ndbc_requested_data[year]\n", " ndbc_data[year] = ndbc.to_datetime_index(parameter, year_data)\n", - " \n", - "ndbc_data['2020']" + "\n", + "ndbc_data[\"2020\"]" ] }, { @@ -1073,11 +1091,11 @@ "outputs": [], "source": [ "# Intialize empty lists to store the results from each year\n", - "Hm0_list=[]\n", - "Te_list=[]\n", - "J_list=[]\n", - "Tp_list=[]\n", - "Tz_list=[]\n", + "Hm0_list = []\n", + "Te_list = []\n", + "J_list = []\n", + "Tp_list = []\n", + "Tz_list = []\n", "\n", "# Iterate over each year and save the result in the initalized dictionary\n", "for year in ndbc_data:\n", @@ -1085,26 +1103,26 @@ " year_data = data_raw[data_raw != 999.0].dropna()\n", " Hm0_list.append(resource.significant_wave_height(year_data.T))\n", " Te_list.append(resource.energy_period(year_data.T))\n", - " J_list.append(resource.energy_flux(year_data.T, h=399.))\n", + " J_list.append(resource.energy_flux(year_data.T, h=399.0))\n", " Tp_list.append(resource.peak_period(year_data.T))\n", " Tz_list.append(resource.average_zero_crossing_period(year_data.T))\n", - " \n", + "\n", "# Concatenate list of Series into a single DataFrame\n", - "Te = pd.concat(Te_list ,axis=0)\n", - "Tp = pd.concat(Tp_list ,axis=0)\n", - "Hm0 = pd.concat(Hm0_list ,axis=0)\n", - "J = pd.concat(J_list ,axis=0)\n", - "Tz = pd.concat(Tz_list ,axis=0)\n", - "data = pd.concat([Hm0, Te, Tp, J, Tz],axis=1)\n", + "Te = pd.concat(Te_list, axis=0)\n", + "Tp = pd.concat(Tp_list, axis=0)\n", + "Hm0 = pd.concat(Hm0_list, axis=0)\n", + "J = pd.concat(J_list, axis=0)\n", + "Tz = pd.concat(Tz_list, axis=0)\n", + "data = pd.concat([Hm0, Te, Tp, J, Tz], axis=1)\n", "\n", "# Calculate wave steepness\n", - "data['Sm'] = data.Hm0 / (9.81/(2*np.pi) * data.Tz**2)\n", + "data[\"Sm\"] = data.Hm0 / (9.81 / (2 * np.pi) * data.Tz**2)\n", "\n", "# Drop any NaNs created from the calculation of Hm0 or Te\n", "data.dropna(inplace=True)\n", "# Sort the DateTime index\n", "data.sort_index(inplace=True)\n", - "#data" + "# data" ] }, { @@ -1140,20 +1158,22 @@ "# Start by cleaning the data of outliers\n", "data_clean = data[data.Hm0 < 20]\n", "sigma = data_clean.J.std()\n", - "data_clean = data_clean[data_clean.J > (data_clean.J.mean() - 0.9* sigma)]\n", + "data_clean = data_clean[data_clean.J > (data_clean.J.mean() - 0.9 * sigma)]\n", "\n", - "# Organizing the cleaned data \n", - "Hm0=data_clean.Hm0\n", - "Te=data_clean.Te\n", - "J=data_clean.J\n", + "# Organizing the cleaned data\n", + "Hm0 = data_clean.Hm0\n", + "Te = data_clean.Te\n", + "J = data_clean.J\n", "\n", - "# Setting the bins for the resource frequency and power distribution \n", + "# Setting the bins for the resource frequency and power distribution\n", "Hm0_bin_size = 0.5\n", - "Hm0_edges = np.arange(0,15+Hm0_bin_size,Hm0_bin_size)\n", + "Hm0_edges = np.arange(0, 15 + Hm0_bin_size, Hm0_bin_size)\n", "Te_bin_size = 1\n", - "Te_edges = np.arange(0, 20+Te_bin_size,Te_bin_size)\n", + "Te_edges = np.arange(0, 20 + Te_bin_size, Te_bin_size)\n", "\n", - "fig = mhkit.wave.graphics.plot_avg_annual_energy_matrix(Hm0, Te, J, Hm0_edges=Hm0_edges, Te_edges=Te_edges)" + "fig = mhkit.wave.graphics.plot_avg_annual_energy_matrix(\n", + " Hm0, Te, J, Hm0_edges=Hm0_edges, Te_edges=Te_edges\n", + ")" ] }, { @@ -1212,43 +1232,45 @@ } ], "source": [ - "months=data_clean.index.month\n", - "data_group=data_clean.groupby(months)\n", + "months = data_clean.index.month\n", + "data_group = data_clean.groupby(months)\n", "\n", "QoIs = data_clean.keys()\n", - "fig, axs = plt.subplots(len(QoIs),1, figsize=(8, 12), sharex=True)\n", - "#shade between 25% and 75%\n", + "fig, axs = plt.subplots(len(QoIs), 1, figsize=(8, 12), sharex=True)\n", + "# shade between 25% and 75%\n", "QoIs = data_clean.keys()\n", "for i in range(len(QoIs)):\n", " QoI = QoIs[i]\n", - " axs[i].plot(data_group.median()[QoI], marker='.')\n", + " axs[i].plot(data_group.median()[QoI], marker=\".\")\n", "\n", - " axs[i].fill_between(months.unique(),\n", - " data_group.describe()[QoI, '25%'],\n", - " data_group.describe()[QoI, '75%'],\n", - " alpha=0.2)\n", + " axs[i].fill_between(\n", + " months.unique(),\n", + " data_group.describe()[QoI, \"25%\"],\n", + " data_group.describe()[QoI, \"75%\"],\n", + " alpha=0.2,\n", + " )\n", " axs[i].grid()\n", " mx = data_group.median()[QoI].max()\n", - " mx_month= data_group.median()[QoI].argmax()+1\n", + " mx_month = data_group.median()[QoI].argmax() + 1\n", " mn = data_group.median()[QoI].min()\n", - " mn_month= data_group.median()[QoI].argmin()+1\n", - " print('--------------------------------------------')\n", - " print(f'{QoI} max:{np.round(mx,4)}, month: {mx_month}')\n", - " print(f'{QoI} min:{np.round(mn,4)}, month: {mn_month}')\n", + " mn_month = data_group.median()[QoI].argmin() + 1\n", + " print(\"--------------------------------------------\")\n", + " print(f\"{QoI} max:{np.round(mx,4)}, month: {mx_month}\")\n", + " print(f\"{QoI} min:{np.round(mn,4)}, month: {mn_month}\")\n", "\n", - "plt.setp(axs[5], xlabel='Month')\n", + "plt.setp(axs[5], xlabel=\"Month\")\n", "\n", - "plt.setp(axs[0], ylabel=f'{QoIs[0]} [m]')\n", - "plt.setp(axs[1], ylabel=f'{QoIs[1]} [s]')\n", - "plt.setp(axs[2], ylabel=f'{QoIs[2]} [s]')\n", - "plt.setp(axs[3], ylabel=f'{QoIs[3]} [kW/M]')\n", - "plt.setp(axs[4], ylabel=f'{QoIs[4]} [s]')\n", - "plt.setp(axs[5], ylabel=f'{QoIs[5]} [ ]')\n", + "plt.setp(axs[0], ylabel=f\"{QoIs[0]} [m]\")\n", + "plt.setp(axs[1], ylabel=f\"{QoIs[1]} [s]\")\n", + "plt.setp(axs[2], ylabel=f\"{QoIs[2]} [s]\")\n", + "plt.setp(axs[3], ylabel=f\"{QoIs[3]} [kW/M]\")\n", + "plt.setp(axs[4], ylabel=f\"{QoIs[4]} [s]\")\n", + "plt.setp(axs[5], ylabel=f\"{QoIs[5]} [ ]\")\n", "\n", "\n", "plt.tight_layout()\n", "\n", - "plt.savefig('40650QoIs.png')" + "plt.savefig(\"40650QoIs.png\")" ] }, { @@ -1290,7 +1312,7 @@ ], "source": [ "ax = graphics.monthly_cumulative_distribution(data_clean.J)\n", - "plt.xlim([1000, 1E6])" + "plt.xlim([1000, 1e6])" ] }, { @@ -1325,49 +1347,49 @@ } ], "source": [ - "# Delta time of sea-states \n", - "dt = (data_clean.index[2]-data_clean.index[1]).seconds \n", + "# Delta time of sea-states\n", + "dt = (data_clean.index[2] - data_clean.index[1]).seconds\n", "\n", "# Return period (years) of interest\n", - "period = 100 \n", + "period = 100\n", "copulas100 = contours.environmental_contours(\n", - " data.Hm0, \n", - " data.Te, \n", + " data.Hm0,\n", + " data.Te,\n", " dt,\n", " period,\n", - " method='PCA',\n", + " method=\"PCA\",\n", ")\n", "\n", "period = 50\n", "copulas50 = contours.environmental_contours(\n", - " data.Hm0, \n", - " data.Te, \n", - " dt, \n", - " period, \n", - " method='PCA', \n", + " data.Hm0,\n", + " data.Te,\n", + " dt,\n", + " period,\n", + " method=\"PCA\",\n", ")\n", "\n", "\n", "Te_data = np.array(data_clean.Te)\n", "Hm0_data = np.array(data_clean.Hm0)\n", "\n", - "Hm0_contours = [copulas50['PCA_x1'], copulas100['PCA_x1']]\n", - "Te_contours = [copulas50['PCA_x2'], copulas100['PCA_x2']]\n", + "Hm0_contours = [copulas50[\"PCA_x1\"], copulas100[\"PCA_x1\"]]\n", + "Te_contours = [copulas50[\"PCA_x2\"], copulas100[\"PCA_x2\"]]\n", "\n", - "fig, ax = plt.subplots(figsize=(9,4))\n", + "fig, ax = plt.subplots(figsize=(9, 4))\n", "ax = graphics.plot_environmental_contour(\n", - " Te_data, \n", - " Hm0_data, \n", - " Te_contours, \n", - " Hm0_contours , \n", - " data_label='NDBC 46050', \n", - " contour_label=['50 Year Contour','100 Year Contour'],\n", - " x_label = 'Energy Period, $Te$ [s]',\n", - " y_label = 'Sig. wave height, $Hm0$ [m]', \n", - " ax=ax\n", + " Te_data,\n", + " Hm0_data,\n", + " Te_contours,\n", + " Hm0_contours,\n", + " data_label=\"NDBC 46050\",\n", + " contour_label=[\"50 Year Contour\", \"100 Year Contour\"],\n", + " x_label=\"Energy Period, $Te$ [s]\",\n", + " y_label=\"Sig. wave height, $Hm0$ [m]\",\n", + " ax=ax,\n", ")\n", - "plt.legend(loc='upper left')\n", - "plt.tight_layout() " + "plt.legend(loc=\"upper left\")\n", + "plt.tight_layout()" ] }, { @@ -1390,10 +1412,14 @@ ], "source": [ "print(f\"50-year: Hm0 max {copulas50['PCA_x1'].max().round(1)}\")\n", - "print(f\"50-year: Te at Hm0 max {copulas50['PCA_x2'][copulas50['PCA_x1'].argmax()].round(1)}\")\n", + "print(\n", + " f\"50-year: Te at Hm0 max {copulas50['PCA_x2'][copulas50['PCA_x1'].argmax()].round(1)}\"\n", + ")\n", "print(\"\\n\")\n", "print(f\"100-year: Hm0 max {copulas100['PCA_x1'].max().round(1)}\")\n", - "print(f\"100-year: Te at Hm0 max { copulas100['PCA_x2'][copulas100['PCA_x1'].argmax()].round(1)}\")" + "print(\n", + " f\"100-year: Te at Hm0 max { copulas100['PCA_x2'][copulas100['PCA_x1'].argmax()].round(1)}\"\n", + ")" ] }, { @@ -1423,9 +1449,9 @@ } ], "source": [ - "nHours = (data_clean.index[1] - data_clean.index[0]).seconds/3600\n", + "nHours = (data_clean.index[1] - data_clean.index[0]).seconds / 3600\n", "Total = data_clean.J.sum() * nHours\n", - "print(f'{Total} (W*hr)/m')" + "print(f\"{Total} (W*hr)/m\")" ] }, { @@ -1451,11 +1477,12 @@ } ], "source": [ - "Jsum, xe, ye, bn = stats.binned_statistic_2d(data_clean.Hm0, data_clean.Te, data_clean.J,\n", - " statistic='sum')#,bins=[Te_bins, Hm0_bins])\n", + "Jsum, xe, ye, bn = stats.binned_statistic_2d(\n", + " data_clean.Hm0, data_clean.Te, data_clean.J, statistic=\"sum\"\n", + ") # ,bins=[Te_bins, Hm0_bins])\n", "\n", - "hist_result = np.round(Jsum.sum().sum()/Total,4)\n", - "print(f'{hist_result} = (2D Histogram J) / (1-year total J) ')" + "hist_result = np.round(Jsum.sum().sum() / Total, 4)\n", + "print(f\"{hist_result} = (2D Histogram J) / (1-year total J) \")" ] }, { @@ -1497,30 +1524,29 @@ ], "source": [ "# Compute Gaussian Mixture Model for each number of clusters\n", - "Ns= [4, 8, 16, 32, 64]\n", + "Ns = [4, 8, 16, 32, 64]\n", "X = np.vstack((data_clean.Te.values, data_clean.Hm0.values)).T\n", - "fig, axs = plt.subplots(len(Ns),1, figsize=(8, 24), sharex=True)\n", + "fig, axs = plt.subplots(len(Ns), 1, figsize=(8, 24), sharex=True)\n", "\n", - "results={}\n", + "results = {}\n", "for N in Ns:\n", " gmm = GaussianMixture(n_components=N).fit(X)\n", "\n", " # Save centers and weights\n", - " result = pd.DataFrame(gmm.means_, columns=['Te','Hm0'])\n", - " result['weights'] = gmm.weights_\n", + " result = pd.DataFrame(gmm.means_, columns=[\"Te\", \"Hm0\"])\n", + " result[\"weights\"] = gmm.weights_\n", "\n", - " result['Tp'] = result.Te / 0.858\n", + " result[\"Tp\"] = result.Te / 0.858\n", " results[N] = result\n", - " \n", - " \n", + "\n", " labels = gmm.predict(X)\n", - " \n", + "\n", " i = Ns.index(N)\n", " axs[i].scatter(data_clean.Te.values, data_clean.Hm0.values, c=labels, s=40)\n", - " axs[i].plot(result.Te, result.Hm0, 'm+')\n", - " axs[i].title.set_text(f'{N} Clusters')\n", - " plt.setp(axs[i], ylabel='Energy Period, $T_e$ [s]')\n", - "plt.setp(axs[len(Ns)-1], xlabel='Sig. wave height, $Hm0$ [m') " + " axs[i].plot(result.Te, result.Hm0, \"m+\")\n", + " axs[i].title.set_text(f\"{N} Clusters\")\n", + " plt.setp(axs[i], ylabel=\"Energy Period, $T_e$ [s]\")\n", + "plt.setp(axs[len(Ns) - 1], xlabel=\"Sig. wave height, $Hm0$ [m\")" ] }, { @@ -1555,26 +1581,26 @@ ], "source": [ "w = ndbc_data[year].columns.values\n", - "f = w / 2*np.pi\n", + "f = w / 2 * np.pi\n", "\n", "\n", "for N in results:\n", " result = results[N]\n", - " J=[]\n", + " J = []\n", " for i in range(len(result)):\n", " b = resource.jonswap_spectrum(f, result.Tp[i], result.Hm0[i])\n", - " J.extend([resource.energy_flux(b, h=399.).values[0][0]])\n", - " \n", - " result['J'] = J\n", + " J.extend([resource.energy_flux(b, h=399.0).values[0][0]])\n", + "\n", + " result[\"J\"] = J\n", " results[N] = result\n", "\n", - "ratios={}\n", + "ratios = {}\n", "for N in results:\n", - " J_hr = results[N].J*len(data_clean)\n", - " total_weighted_J= (J_hr * results[N].weights).sum()\n", + " J_hr = results[N].J * len(data_clean)\n", + " total_weighted_J = (J_hr * results[N].weights).sum()\n", " normalized_weighted_J = total_weighted_J / Total\n", " ratios[N] = np.round(normalized_weighted_J, 4)\n", - " \n", + "\n", "pd.Series(ratios)" ] }, diff --git a/examples/SWAN_example.ipynb b/examples/SWAN_example.ipynb index 974ca6cc0..d4eeb4620 100644 --- a/examples/SWAN_example.ipynb +++ b/examples/SWAN_example.ipynb @@ -20,7 +20,7 @@ "from os.path import join\n", "import pandas as pd\n", "\n", - "swan_data_folder = join('data','wave','swan')" + "swan_data_folder = join(\"data\", \"wave\", \"swan\")" ] }, { @@ -41,9 +41,9 @@ "metadata": {}, "outputs": [], "source": [ - "swan_table_file = join(swan_data_folder, 'SWANOUT.DAT')\n", - "swan_block_file = join(swan_data_folder, 'SWANOUTBlock.DAT')\n", - "swan_block_mat_file = join(swan_data_folder, 'SWANOUT.mat')" + "swan_table_file = join(swan_data_folder, \"SWANOUT.DAT\")\n", + "swan_block_file = join(swan_data_folder, \"SWANOUTBlock.DAT\")\n", + "swan_block_mat_file = join(swan_data_folder, \"SWANOUT.mat\")" ] }, { @@ -646,7 +646,7 @@ } ], "source": [ - "swan_block['Significant wave height']" + "swan_block[\"Significant wave height\"]" ] }, { @@ -1082,7 +1082,7 @@ } ], "source": [ - "swan_block_mat['Hsig']" + "swan_block_mat[\"Hsig\"]" ] }, { @@ -1323,10 +1323,9 @@ ], "source": [ "plt.figure()\n", - "plt.tricontourf(swan_table.Xp, swan_table.Yp, \n", - " swan_table.Hsig, levels=256)\n", + "plt.tricontourf(swan_table.Xp, swan_table.Yp, swan_table.Hsig, levels=256)\n", "cbar = plt.colorbar()\n", - "cbar.set_label('Significant wave height [m]')" + "cbar.set_label(\"Significant wave height [m]\")" ] }, { @@ -1349,11 +1348,15 @@ ], "source": [ "plt.figure()\n", - "plt.tricontourf(swan_block_mat_as_table.x, swan_block_mat_as_table.y, \n", - " swan_block_mat_as_table.Hsig,\n", - " levels=256, cmap='viridis')\n", + "plt.tricontourf(\n", + " swan_block_mat_as_table.x,\n", + " swan_block_mat_as_table.y,\n", + " swan_block_mat_as_table.Hsig,\n", + " levels=256,\n", + " cmap=\"viridis\",\n", + ")\n", "cbar = plt.colorbar()\n", - "cbar.set_label('Significant wave height [m]')" + "cbar.set_label(\"Significant wave height [m]\")" ] }, { @@ -1376,11 +1379,15 @@ ], "source": [ "plt.figure()\n", - "plt.tricontourf(swan_block_as_table.x, swan_block_as_table.y, \n", - " swan_block_as_table['Significant wave height'], \n", - " levels=256, cmap='viridis')\n", + "plt.tricontourf(\n", + " swan_block_as_table.x,\n", + " swan_block_as_table.y,\n", + " swan_block_as_table[\"Significant wave height\"],\n", + " levels=256,\n", + " cmap=\"viridis\",\n", + ")\n", "cbar = plt.colorbar()\n", - "cbar.set_label('Significant wave height [m]')" + "cbar.set_label(\"Significant wave height [m]\")" ] }, { @@ -1412,10 +1419,10 @@ ], "source": [ "plt.figure()\n", - "plt.imshow(swan_block_mat['Hsig'])\n", + "plt.imshow(swan_block_mat[\"Hsig\"])\n", "plt.gca().invert_yaxis()\n", "cbar = plt.colorbar()\n", - "cbar.set_label('Significant wave height [m]')" + "cbar.set_label(\"Significant wave height [m]\")" ] } ], diff --git a/examples/WPTO_hindcast_example.ipynb b/examples/WPTO_hindcast_example.ipynb index 9963a9ff0..1b6565797 100644 --- a/examples/WPTO_hindcast_example.ipynb +++ b/examples/WPTO_hindcast_example.ipynb @@ -101,7 +101,7 @@ } ], "source": [ - "lat_lon = [44.624076,-124.280097]\n", + "lat_lon = [44.624076, -124.280097]\n", "region = wave.io.hindcast.hindcast.region_selection(lat_lon)\n", "print(region)" ] @@ -121,12 +121,14 @@ "metadata": {}, "outputs": [], "source": [ - "data_type = '3-hour' # setting the data type to the 3-hour dataset\n", + "data_type = \"3-hour\" # setting the data type to the 3-hour dataset\n", "years = [1995]\n", - "lat_lon = (44.624076,-124.280097) \n", - "parameter = 'significant_wave_height' \n", + "lat_lon = (44.624076, -124.280097)\n", + "parameter = \"significant_wave_height\"\n", "\n", - "Hs, metadata= wave.io.hindcast.hindcast.request_wpto_point_data(data_type,parameter,lat_lon,years)" + "Hs, metadata = wave.io.hindcast.hindcast.request_wpto_point_data(\n", + " data_type, parameter, lat_lon, years\n", + ")" ] }, { @@ -378,11 +380,12 @@ } ], "source": [ - "parameter = 'energy_period'\n", - "lat_lon = ((44.624076,-124.280097),\n", - " (43.489171,-125.152137)) \n", + "parameter = \"energy_period\"\n", + "lat_lon = ((44.624076, -124.280097), (43.489171, -125.152137))\n", "\n", - "Te, metadata = wave.io.hindcast.hindcast.request_wpto_point_data(data_type, parameter, lat_lon, years)\n", + "Te, metadata = wave.io.hindcast.hindcast.request_wpto_point_data(\n", + " data_type, parameter, lat_lon, years\n", + ")\n", "\n", "# View Te from two locations\n", "Te.head()" @@ -582,11 +585,13 @@ } ], "source": [ - "years = [1995, 1996] \n", - "parameter = 'omni-directional_wave_power'\n", - "lat_lon = (44.624076,-124.280097) \n", + "years = [1995, 1996]\n", + "parameter = \"omni-directional_wave_power\"\n", + "lat_lon = (44.624076, -124.280097)\n", "\n", - "J, metadata= wave.io.hindcast.hindcast.request_wpto_point_data(data_type,parameter,lat_lon,years) \n", + "J, metadata = wave.io.hindcast.hindcast.request_wpto_point_data(\n", + " data_type, parameter, lat_lon, years\n", + ")\n", "\n", "J" ] @@ -670,12 +675,14 @@ "metadata": {}, "outputs": [], "source": [ - "data_type = '1-hour' # Setting the data_type to 1 hour data\n", - "years = [1995] \n", - "parameter = ['significant_wave_height','peak_period','mean_wave_direction']\n", - "lat_lon = (44.624076,-124.280097) \n", + "data_type = \"1-hour\" # Setting the data_type to 1 hour data\n", + "years = [1995]\n", + "parameter = [\"significant_wave_height\", \"peak_period\", \"mean_wave_direction\"]\n", + "lat_lon = (44.624076, -124.280097)\n", "\n", - "data, metadata= wave.io.hindcast.hindcast.request_wpto_point_data(data_type,parameter,lat_lon,years) " + "data, metadata = wave.io.hindcast.hindcast.request_wpto_point_data(\n", + " data_type, parameter, lat_lon, years\n", + ")" ] }, { @@ -801,34 +808,35 @@ "from numpy import histogramdd, array, arange, mean\n", "\n", "# Generate bins for Hm0, Te and Direction\n", - "Hm0_bins = arange(0, data.significant_wave_height_0.values.max() + 0.5, 0.5) \n", + "Hm0_bins = arange(0, data.significant_wave_height_0.values.max() + 0.5, 0.5)\n", "Te_bins = arange(0, data.peak_period_0.values.max() + 1, 1)\n", "Dir_bins = arange(0, data.mean_wave_direction_0.values.max() + 10, 10)\n", "\n", "# Combine data for better handling\n", - "jpd_3d = array([\n", - " data.significant_wave_height_0.values.flatten(),\n", - " data.peak_period_0.values.flatten(),\n", - " data.mean_wave_direction_0.values.flatten()\n", - " ]).T\n", + "jpd_3d = array(\n", + " [\n", + " data.significant_wave_height_0.values.flatten(),\n", + " data.peak_period_0.values.flatten(),\n", + " data.mean_wave_direction_0.values.flatten(),\n", + " ]\n", + ").T\n", "\n", "# Calculate the bin centers of the data\n", - "Hm0_center = array([\n", - " mean([Hm0_bins[i+1],Hm0_bins[i]]) \n", - " for i in range(Hm0_bins.shape[0]-1)\n", - " ])\n", - "Te_center = array([\n", - " mean([Te_bins[i+1],Te_bins[i]]) \n", - " for i in range(Te_bins.shape[0]-1)\n", - " ])\n", - "Dir_center = array([\n", - " mean([Dir_bins[i+1],Dir_bins[i]]) \n", - " for i in range(Dir_bins.shape[0]-1)\n", - " ])\n", + "Hm0_center = array(\n", + " [mean([Hm0_bins[i + 1], Hm0_bins[i]]) for i in range(Hm0_bins.shape[0] - 1)]\n", + ")\n", + "Te_center = array(\n", + " [mean([Te_bins[i + 1], Te_bins[i]]) for i in range(Te_bins.shape[0] - 1)]\n", + ")\n", + "Dir_center = array(\n", + " [mean([Dir_bins[i + 1], Dir_bins[i]]) for i in range(Dir_bins.shape[0] - 1)]\n", + ")\n", "\n", "\n", - "# Calculate the JPD for Hm0, Te, and Dir \n", - "probability, edges = histogramdd(jpd_3d,bins=[Hm0_bins,Te_bins,Dir_bins],density=True)" + "# Calculate the JPD for Hm0, Te, and Dir\n", + "probability, edges = histogramdd(\n", + " jpd_3d, bins=[Hm0_bins, Te_bins, Dir_bins], density=True\n", + ")" ] }, { @@ -1844,36 +1852,38 @@ "fig.subplots_adjust(right=0.8, bottom=0.25)\n", "\n", "d = 0\n", - "plot_jpd = probability[:,:,d]\n", + "plot_jpd = probability[:, :, d]\n", "\n", - "im = ax.imshow(plot_jpd, origin='lower', aspect='auto')\n", + "im = ax.imshow(plot_jpd, origin=\"lower\", aspect=\"auto\")\n", "\n", - "axcolor = 'lightgoldenrodyellow'\n", + "axcolor = \"lightgoldenrodyellow\"\n", "axDir = plt.axes([0.3, 0.075, 0.45, 0.03], facecolor=axcolor)\n", "\n", - "newD = Slider(axDir, 'Income Wave\\n Direction', 5, 355, valinit=d, valstep=10)\n", + "newD = Slider(axDir, \"Income Wave\\n Direction\", 5, 355, valinit=d, valstep=10)\n", + "\n", "\n", "def update(val):\n", - " d = int(newD.val/10)\n", - " im.set_data(probability[:,:,d])\n", + " d = int(newD.val / 10)\n", + " im.set_data(probability[:, :, d])\n", " fig.canvas.draw()\n", "\n", + "\n", "newD.on_changed(update)\n", "\n", "cax = fig.add_axes([0.82, 0.3, 0.03, 0.5])\n", - "cbar = fig.colorbar(im, cax=cax, orientation='vertical')\n", + "cbar = fig.colorbar(im, cax=cax, orientation=\"vertical\")\n", "\n", - "cbar.set_label('Probability Density (1/(sec*m*deg)', rotation=270, labelpad=15)\n", + "cbar.set_label(\"Probability Density (1/(sec*m*deg)\", rotation=270, labelpad=15)\n", "\n", - "ax.set_xlabel('Te (seconds)')\n", - "ax.set_ylabel('Hm0 (meters)')\n", + "ax.set_xlabel(\"Te (seconds)\")\n", + "ax.set_ylabel(\"Hm0 (meters)\")\n", "\n", "ax.set_xticks(arange(len(Te_center)))\n", "ax.set_yticks(arange(len(Hm0_center)))\n", - "ax.set_xticklabels(Te_center,rotation=45)\n", + "ax.set_xticklabels(Te_center, rotation=45)\n", "ax.set_yticklabels(Hm0_center)\n", "\n", - "fig.suptitle('Joint Probability Density\\n of Hm0 and Te per Direction')\n" + "fig.suptitle(\"Joint Probability Density\\n of Hm0 and Te per Direction\")" ] }, { @@ -1905,9 +1915,11 @@ } ], "source": [ - "year = '1993' # only one year can be passed at a time as a string\n", - "lat_lon=(43.489171,-125.152137)\n", - "dir_spectra,meta = wave.io.hindcast.hindcast.request_wpto_directional_spectrum(lat_lon,year)\n", + "year = \"1993\" # only one year can be passed at a time as a string\n", + "lat_lon = (43.489171, -125.152137)\n", + "dir_spectra, meta = wave.io.hindcast.hindcast.request_wpto_directional_spectrum(\n", + " lat_lon, year\n", + ")\n", "\n", "print(dir_spectra)" ] diff --git a/examples/adcp_example.ipynb b/examples/adcp_example.ipynb index 0c1c77d37..6c1cbdfff 100644 --- a/examples/adcp_example.ipynb +++ b/examples/adcp_example.ipynb @@ -1,4013 +1,4086 @@ { - "cells": [ - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Analyzing ADCP Data with MHKiT\n", - "\n", - "The following example illustrates a straightforward workflow for analyzing Acoustic Doppler Current Profiler (ADCP) data utilizing MHKiT. MHKiT has integrated the DOLfYN codebase as a module to facilitate ADCP and Acoustic Doppler Velocimetry (ADV) data processing.\n", - "\n", - "Here is a standard workflow for ADCP data analysis:\n", - "\n", - "1. **Import Data**\n", - "\n", - "2. **Review, QC, and Prepare the Raw Data**:\n", - " 1. Calculate or verify the correctness of depth bin locations\n", - " 2. Discard data recorded above the water surface or below the seafloor\n", - " 3. Assess the quality of velocity, beam amplitude, and/or beam correlation data\n", - " 4. Rotate Data Coordinate System\n", - "\n", - "3. **Data Averaging**: \n", - " - If not already executed within the instrument, average the data into time bins of a predetermined duration, typically between 5 and 10 minutes\n", - "\n", - "4. **Speed and Direction**\n", - "\n", - "5. **Plotting**\n", - "\n", - "6. **Saving and Loading DOLfYN datasets**\n", - "\n", - "7. **Turbulence Statistics**\n", - " 1. TI\n", - " 2. Power Spectral Densities\n", - " 3. TKE Dissipation Rate\n", - " 4. TKE Componenets\n", - " 5. ADCP Noise\n", - " 6. TKE Production\n", - " 7. TKE Balance \n", - "\n", - "\n", - "Begin your analysis by importing the requisite tools:" - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": { - "scrolled": true - }, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "c:\\Users\\mcve343\\Anaconda3\\lib\\site-packages\\xarray\\backends\\cfgrib_.py:29: UserWarning: Failed to load cfgrib - most likely there is a problem accessing the ecCodes library. Try `import cfgrib` to get the full error message\n", - " warnings.warn(\n" - ] - } - ], - "source": [ - "from mhkit import dolfyn\n", - "from mhkit.dolfyn.adp import api" - ] - }, - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## 1. Importing Raw Instrument Data\n", - "\n", - "One of DOLfYN's key features is its ability to directly import raw data from an Acoustic Doppler Current Profiler (ADCP) right after it has been transferred. In this instance, we are using a Nortek Signature1000 ADCP, with the data stored in files with an '.ad2cp' extension. This specific dataset represents several hours of velocity data, captured at 1 Hz by an ADCP mounted on a bottom lander within a tidal inlet. The list of instruments compatible with DOLfYN can be found in the [MHKiT DOLfYN documentation](https://mhkit-software.github.io/MHKiT/mhkit-python/api.dolfyn.html).\n", - "\n", - "We'll start by importing the raw data file downloaded from the instrument. The `read` function processes the raw file and converts the information into an xarray Dataset. This Dataset includes several groups of variables:\n", - "\n", - "1. **Velocity**: Recorded in the coordinate system saved by the instrument (beam, XYZ, ENU)\n", - "2. **Beam Data**: Includes amplitude and correlation data\n", - "3. **Instrumental & Environmental Measurements**: Captures the instrument's bearing and environmental conditions\n", - "4. **Orientation Matrices**: Used by DOLfYN for rotating through different coordinate frames.\n" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "scrolled": true - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Reading file data/dolfyn/Sig1000_tidal.ad2cp ...\n" - ] - } - ], - "source": [ - "ds = dolfyn.read('data/dolfyn/Sig1000_tidal.ad2cp')" - ] - }, - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "There are two ways to see what's in a Dataset. The first is to simply type the dataset's name to see the standard xarray output. To access a particular variable in a dataset, use dict-style (`ds['vel']`) or attribute-style syntax (`ds.vel`). See the [xarray docs](http://xarray.pydata.org/en/stable/getting-started-guide/quick-overview.html) for more details on how to use the xarray format." - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "
<xarray.Dataset>\n",
-              "Dimensions:              (time: 55000, dirIMU: 3, dir: 4, range: 28, beam: 4,\n",
-              "                          earth: 3, inst: 3, q: 4, time_b5: 55000,\n",
-              "                          range_b5: 28, x1: 4, x2: 4)\n",
-              "Coordinates:\n",
-              "  * time                 (time) datetime64[ns] 2020-08-15T00:20:00.500999927 ...\n",
-              "  * dirIMU               (dirIMU) <U1 'E' 'N' 'U'\n",
-              "  * dir                  (dir) <U2 'E' 'N' 'U1' 'U2'\n",
-              "  * range                (range) float64 0.6 1.1 1.6 2.1 ... 12.6 13.1 13.6 14.1\n",
-              "  * beam                 (beam) int32 1 2 3 4\n",
-              "  * earth                (earth) <U1 'E' 'N' 'U'\n",
-              "  * inst                 (inst) <U1 'X' 'Y' 'Z'\n",
-              "  * q                    (q) <U1 'w' 'x' 'y' 'z'\n",
-              "  * time_b5              (time_b5) datetime64[ns] 2020-08-15T00:20:00.4384999...\n",
-              "  * range_b5             (range_b5) float64 0.6 1.1 1.6 2.1 ... 13.1 13.6 14.1\n",
-              "  * x1                   (x1) int32 1 2 3 4\n",
-              "  * x2                   (x2) int32 1 2 3 4\n",
-              "Data variables: (12/38)\n",
-              "    c_sound              (time) float32 1.502e+03 1.502e+03 ... 1.498e+03\n",
-              "    temp                 (time) float32 14.55 14.55 14.55 ... 13.47 13.47 13.47\n",
-              "    pressure             (time) float32 9.713 9.718 9.718 ... 9.596 9.594 9.596\n",
-              "    mag                  (dirIMU, time) float32 72.5 72.7 72.6 ... -197.2 -195.7\n",
-              "    accel                (dirIMU, time) float32 -0.00479 -0.01437 ... 9.729\n",
-              "    batt                 (time) float32 16.6 16.6 16.6 16.6 ... 16.4 16.4 15.2\n",
-              "    ...                   ...\n",
-              "    telemetry_data       (time) uint8 0 0 0 0 0 0 0 0 0 0 ... 0 0 0 0 0 0 0 0 0\n",
-              "    boost_running        (time) uint8 0 0 0 0 0 0 0 0 1 0 ... 0 1 0 0 0 0 0 0 1\n",
-              "    heading              (time) float32 -12.52 -12.51 -12.51 ... -12.52 -12.5\n",
-              "    pitch                (time) float32 -0.065 -0.06 -0.06 ... -0.06 -0.05 -0.05\n",
-              "    roll                 (time) float32 -7.425 -7.42 -7.42 ... -6.45 -6.45 -6.45\n",
-              "    beam2inst_orientmat  (x1, x2) float32 1.183 0.0 -1.183 ... 0.5518 0.0 0.5518\n",
-              "Attributes: (12/34)\n",
-              "    filehead_config:       {"CLOCKSTR": {"TIME": "\\"2020-08-13 13:56:21\\""}, ...\n",
-              "    inst_model:            Signature1000\n",
-              "    inst_make:             Nortek\n",
-              "    inst_type:             ADCP\n",
-              "    burst_config:          {"press_valid": true, "temp_valid": true, "compass...\n",
-              "    n_cells:               28\n",
-              "    ...                    ...\n",
-              "    proc_idle_less_12pct:  0\n",
-              "    rotate_vars:           ['vel', 'accel', 'accel_b5', 'angrt', 'angrt_b5', ...\n",
-              "    coord_sys:             earth\n",
-              "    fs:                    1\n",
-              "    has_imu:               1\n",
-              "    beam_angle:            25
" - ], - "text/plain": [ - "\n", - "Dimensions: (time: 55000, dirIMU: 3, dir: 4, range: 28, beam: 4,\n", - " earth: 3, inst: 3, q: 4, time_b5: 55000,\n", - " range_b5: 28, x1: 4, x2: 4)\n", - "Coordinates:\n", - " * time (time) datetime64[ns] 2020-08-15T00:20:00.500999927 ...\n", - " * dirIMU (dirIMU) : Nortek Signature1000\n", - " . 15.28 hours (started: Aug 15, 2020 00:20)\n", - " . earth-frame\n", - " . (55000 pings @ 1Hz)\n", - " Variables:\n", - " - time ('time',)\n", - " - time_b5 ('time_b5',)\n", - " - vel ('dir', 'range', 'time')\n", - " - vel_b5 ('range_b5', 'time_b5')\n", - " - range ('range',)\n", - " - orientmat ('earth', 'inst', 'time')\n", - " - heading ('time',)\n", - " - pitch ('time',)\n", - " - roll ('time',)\n", - " - temp ('time',)\n", - " - pressure ('time',)\n", - " - amp ('beam', 'range', 'time')\n", - " - amp_b5 ('range_b5', 'time_b5')\n", - " - corr ('beam', 'range', 'time')\n", - " - corr_b5 ('range_b5', 'time_b5')\n", - " - accel ('dirIMU', 'time')\n", - " - angrt ('dirIMU', 'time')\n", - " - mag ('dirIMU', 'time')\n", - " ... and others (see `.variables`)" - ] - }, - "execution_count": 4, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "ds_dolfyn = ds.velds\n", - "ds_dolfyn" - ] - }, - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## 2. Initial Steps for Data Quality Control (QC)\n", - "\n", - "### 2.1: Set the Deployment Height\n", - "\n", - "When using Nortek instruments, the deployment software does not factor in the deployment height. The deployment height represents the position of the Acoustic Doppler Current Profiler (ADCP) within the water column. \n", - "\n", - "In this context, the center of the first depth bin is situated at a distance that is the sum of three elements: \n", - "1. Deployment height (the ADCP's position in the water column)\n", - "2. Blanking distance (the minimum distance from the ADCP to the first measurement point)\n", - "3. Cell size (the vertical distance of each measurement bin in the water column)\n", - "\n", - "To ensure accurate readings, it is critical to calibrate the 'range' coordinate to make '0' correspond to the seafloor. This calibration can be achieved using the `set_range_offset` function. This function is also useful when working with a down-facing instrument as it helps account for the depth below the water surface. \n", - "\n", - "For those using a Teledyne RDI ADCP, the TRDI deployment software will prompt you to specify the deployment height/depth during setup. If there's a need for calibration post-deployment, the `set_range_offset` function can be utilized in the same way as described above." - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 5, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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grDAmVJ61mg0eN3rXscll1zCJz/5Sd7whjfMSrKS5znvete7WL16NY1Gg3322Yf3vve9uPEPZgqCIAjCDohXqnpTaGrL/Jo4bjwXXHAB995774zWOekrLN/4xjcedb1Sinq9zn777cfq1aunHRjAhz70IT71qU9x5ZVX8vSnP51bb72V0047jYGBAc4555wZaUMQBEEQ5oSd+JbQN7/5TS666CKOOuooXv/61/Oyl72Mer0+rTonnbCceOKJE14PKynXKaV47nOfy7XXXsvixYunFdwPf/hDTjjhBF7ykpcAsPfee/PlL3+ZW2+9dVr1CoIgCIIwe9x222389Kc/5fLLL+ctb3kLZ511Fq985St53etex6GHHjqlOiednl1//fUceuihXH/99QwODjI4OMj111/Pc57zHP7t3/6Nm2++mc2bN/PWt751SgGN57nPfS7f/e53+fWvfw3AT37yE2655ZbHfRup0+k8YgpgQRAEQZh37GQuoYdz4IEH8tGPfpQNGzbwuc99jg0bNnDEEUdwwAEH8PGPf5zBwcFJ1TelmW4vu+wyDj/88GrdC17wAur1On/913/Nz3/+cz72sY/xute9brJVP4K//du/ZXBwkKc85SkYY7DW8v73v5+//Mu/fMx91q5dy4UXXjjttgVBEARhVtmJbwmNxzlHmqZ0Oh289yxZsoRLL72Ud7/73XzmM5/hFa94xTbVM+mj/e1vf0t/f/8j1vf39/O73/0OgCc96Uk8+OCDk636EXzlK1/hi1/8Il/60pe4/fbbufLKK/n7v/97rrzyysfc57zzzquu/AwODrJ+/fppxyEIgiAIM830Hrid3rT+24PbbruNs88+m+XLl/OWt7yFgw8+mF/+8pfcdNNN/OpXv+L888/nTW960zbXN+krLIcccghve9vb+PznP8+uu4ZpyR944AHe/va3V/elfvOb37DnnntOtupH8La3vY13vOMdvPKVrwTggAMO4N5772Xt2rWceuqpj7pPrVajVqtNu21BEARBEKbGgQceyC9/+Ute9KIX8dnPfpaXvvSlGGMmlDnllFN429vets11Tjph+exnP8sJJ5zAnnvuycqVK1FKsW7dOvbZZx++/vWvAzAyMsK73/3uyVb9CEZHR9EP02cbY+S1ZkEQBGHHR+nK/zXl/ecpJ510Eq973eseV2646667Turv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29YxmoUxoXXYVsWgNVoHOaF1QUgYRJI6SCiNruSNo5mlHml6axFGhXispxAWhj4ojyPWClvIH8tj1UpVwsTMeWpFn5V97bwns66SPWbOEevQ37oQKJbltQoiS43CEYSOsda0MluNpXJMqGLMleexFBNaH/54lbGG86PQdCWI3nf3M6VEsig3fvxEujteYH6/ebOjUK/Xec1rXsP3vvc97rrrLl7zmtfw2c9+ln322Ydjjz2Wf/mXf5lSvVOeOK6np2fGLvMIgiAIwoJjOm8Izdd7Qg9j9erVvO997+Oee+7hqquu4tZbb+Uv//Ivp1TXNr0l9LKXvWybK7z66qunFIggCIIgLCQcHjeNrGM6+25PbrjhBi6//HKuvvpqoijir/7qr6ZUzzYlLAMDA1OqXBAEQRCEhce6deu44ooruOKKK7jnnnt43vOexyc/+UlOOukkGo3GlOrcpoTl8ssvn1LlgiAIgiA8OtWtnWnsP9/40pe+xOWXX84NN9zAbrvtximnnMLrX/969ttvv2nXPe/lhxs2bODVr341S5cupaenh4MOOojbbrttrsMSBEEQhGmxM74l9NrXvpbe3l6uvfZa1q9fz9q1a2ckWYFtvMLyrGc9i+9+97ssXryYgw8+uHoK+9GYyen5t2zZwhFHHMGaNWv41re+xbJly/jtb3/LokWLZqwNQRAEQRBmht///vcsW7ZsVurepoTlhBNOoFYLr92eeOKJsxLIo/GhD32IlStXTrgltffee2+39gVBEARhttgZbwnNVrIC25iwLF68GF3MX3Daaaex5557Vp9nk2984xsce+yxnHTSSdx0003ssccenHnmmY/7hHGn06kM0gBDQ0OzHqcgCIIgTJaF8pbQTLFNWce5555b/eFfvXo1Dz744KwGVfK73/2OSy+9lCc96Ul8+9vf5owzzuBNb3oTn//85x9zn7Vr1zIwMFAtK1eu3C6xCoIgCMJkmJapeZpXZ3ZEtukKy4oVK/ja177Gi1/8Yrz3/P73v6fdbj9q2VWrVs1YcM45nv3sZ/OBD3wAgIMPPpif//znXHrppZxyyimPus95553HueeeW30eGhqSpEUQBEEQthPWWm655RYOPPBAFi9ePGP1blPC8q53vYs3vvGNnH322SilOPTQQx9RxnuPUgo7bsr06bJ8+XKe9rSnTVj31Kc+la997WuPuU+tVquetxEEQRCE+YrzvlIiTHX/+YgxhmOPPZZf/vKX2z9h+eu//mv+8i//knvvvZcDDzyQ73znOyxdunTGgngsjjjiCO68884J637961+z1157zXrbgiAIgjCbWBeW6ew/XznggAP43e9+x+rVq2eszm1KWAD6+vp4xjOeweWXX84RRxyxXa5ivOUtb+Hwww/nAx/4AH/xF3/B//zP/3DZZZdx2WWXTbquIHsbd7ilZE7pCWW8buAL8aHXUZDLFdJDXI5yOT6qB7lh0kB1WmG7UmF71oGYrkCxFHHFtQltK+9C/aWEcWwIVesJdSVNaA8HgZ7WENXwrWGUNqg4hijpxl88/OyzNMj/AN8uBHh5VogOM9Aa124VosQ0yPYKWaFZuju0YxgnXnTDW9DNPtzwliBT7IRbgD5PQzlrg+TQOXAO5Syu3cLnGb49ik/bQexHkBOWMkDfboX48wylNUprXLFe9fSjag1UUsePDuFaQ3hnUVESRIxa4ztj1J50AHbzRshTVLMfnMVbi07quLEQg46jsH+W4tqjqDgOAsei35QJwkE7NopxNkga8wztbGg/bQepotaVtFE3mqEfCrGjK+SK3hayw1Z4zss7F9rKMxhrofoWhdjbo0HkWPQxUEglu7dX3VgL1WgGOaM2+M5YOL4sQyVZGFNjQ5DUQ/3OQr0vjCcMPgqizTCWi/GVFW3ZvIiPYIVzeTi2cT8DlVzOecrJCxRBWRJpxWjmUErhfSm5CzK5zHn6E00rc9UvUYennbtKlOh9EMyl1ocfl0J6B2GfzHoSo3hw1NKbhJ/VeqQrmV/Hu+oXfOaCeLCS7VlPPdJkzjGalRI/XUj0gkywHulKPqiVop1bemKD0YqsCLo3iahHmtEsSAuBSiRoPeRFubrRhYQwlIsJgr9apBnLuleZS2FhiCfIDtu5m/CfdZD/hW01rRlJc7RS1Io4wj6WehQTa0VuHb1JRK04nnqk6ViHcx6t1SOEjbHRQUzoPL1J9DBZpaq+xsW+EMSQjdjQE2uMUtQjzUhqg2TROmpGF3LEIFfUxRjoiXUheyyO2QTxYl+iKlFiT2wYbAeBpbWQGBXklMXvMktXwljGVx6PVmFsmurcBNmh9R7tPQ4wBAmm0YpO7gv55jixYXGMirBv7jzWQaxD/cLM8P73v5+3vvWtvO997+OQQw6h2WxO2N7f3z/pOrc5YSk59dRTAbjtttv45S9/iVKKpz71qTzrWc+adONPxKGHHso111zDeeedx3vf+15Wr17Nxz72MU4++eQZb0sQBEEQtic76y0hgOOOOw6AP/3TP50wd9t0Hh+ZdMKyadMmXvnKV3LjjTeyaNEivPcMDg6yZs0arrrqKnbddddJB/F4/Mmf/Al/8id/MqN1CoIgCMJcE64e7ZwJyw033DDjdU46YXnjG9/I0NAQP//5z3nqU58KwC9+8QtOPfVU3vSmN/HlL395xoMUBEEQBGHH4aijjprxOic9+9t1113HpZdeWiUrAE972tP4p3/6J771rW/NaHCCIAiCsLMSfEB+GstcH8Hj8/3vf59Xv/rVHH744WzYsAGAL3zhC9xyyy1Tqm/SCYtzjjiOH7E+jmOcm8ePLAuCIAjCPKJ8iHw6y3zla1/7GsceeyyNRoPbb7+9moF+eHi4mlttskw6YXn+85/POeecw3333Vet27BhA295y1t4wQteMKUgBEEQBEHYebjooov41Kc+xWc+85kJFzkOP/zwKUuSJ52wXHLJJQwPD7P33nuz7777st9++7F69WqGh4f5xCc+MaUgBEEQBGGhMb3bQdN7w2i2ufPOOznyyCMfsb6/v5+tW7dOqc5JP3S7cuVKbr/9dq6//np+9atf4b3naU97Gi984QunFIAgCIIgLETsNN8Sms6+s83y5cu566672HvvvSesv+WWW9hnn32mVOekEpY8z6nX69xxxx0cc8wxHHPMMVNqVBAEQRAWOg6m9eDsbD7C8v73v59///d/54477iBJkklfFTn99NM555xz+NznPodSivvuu48f/vCHvPWtb+U973nPlGKaVMISRRF77bXXjPqCBEEQBEGYX6RpykknncRhhx3GZz/72Unv//a3v72ao63dbnPkkUdSq9V461vfytlnnz2lmCZ9S+hd73oX5513Hl/84hdZsmTJlBoVBEEQhIWOdb7SBkx1/9niwgsvBOCKK66Ych3vf//7eec738kvfvELnHM87WlPo7e3d8r1TTph+cd//EfuuusuVqxYwV577fUIP8BUn/4VBEEQhIWEn+aDs6XTa2hoaML6Wq22XXx/j8frXvc6Pv7xj9PX18ezn/3san2r1eKNb3wjn/vc5yZd56QTlhNOOGGCF2BHweviUL0HbcLNP+8KmWFxYsdJ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5zWsb9++9NBDD5U7PQBas2ZNlZbNWF3ER1hYjfrmm29w+vRpbN26FW+99RZSU1ORlJSEsLAw7Nq1C2PHjsXYsWORlZUFQPsP/M4770RQUBC2bt2K7du3IygoCP369fM6LF+Z7OxsDB8+HP/93/+NQ4cOYcuWLRg8eDDIHVb+0UcfISUlBTNmzMChQ4cwc+ZMTJkyBR9//DEAID8/H4mJiTh9+jT+85//4Mcff8SLL74IVVUBAGvWrMEzzzyDSZMm4aeffsITTzyB0aNH49tvv/Vqx7Rp0zB06FDs378f/fv3x4gRI3DhwgUAQFZWFgYPHoz+/fsjIyMDjz32GCZPnuw1/7hx42C327F161YcOHAAs2fPRlBQULk17927FxMmTMCrr76KI0eOYMOGDejRo8dlt9PcuXPRqVMn7Nu3D0899RSefPJJHD58uErb4KuvvsLDDz+MCRMm4ODBg/jggw/wr3/9CzNmzKjy+1Say+WCoiiwWCxew61WK7Zv317uPH/88Qe++OILPProo/qw9PR0OJ1O9OnTRx8WHR2Ndu3aIS0trcL179ixA+3atUN0dLQ+rG/fvrDb7UhPT7/asvRll2yPZ9mXaw9jNzRf95hY7XclR1ji4uJIURR9WKtWrah79+76a5fLRYGBgfTpp58SEdHChQupVatWpKqqPo3dbier1UpfffVVue0p7whLeno6AaDMzMxy54mJiaH//d//9Ro2ffp06tKlCxERffDBBxQcHEx//vlnufN37dqVxowZ4zXswQcfpP79++uvAdD//M//6K/z8/NJCEFffvklERH97W9/ozZt2njV+tJLL3nV0r59e0pNTS23DaWtWrWKQkJCKC8vr9zx5R1hefjhh/XXqqpSw4YN6b333iOiyrdB9+7daebMmV7DPvnkE4qKiqpSe8s7wkJE1KVLF0pMTKRTp06Ry+WiTz75hIQQ1LJly3KXM3v2bAoLC6OioiJ92NKlS8lkMpWZtnfv3vT4449X2KYxY8ZQ7969yww3mUxl9heiKzvCYjQaaenSpV7DKmonER9hYYyPsLAadcstt0CSine7Ro0aoX379vprWZYRERGBs2fPAtD+M/71118RHByMoKAgBAUFITw8HDabDb/99luV1xsfH49evXqhffv2ePDBB/HRRx8hJycHAHDu3DlkZWXh0Ucf1dcRFBSE1157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", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "ds['vel'][1].plot()" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": {}, - "outputs": [], - "source": [ - "# The ADCP transducers were measured to be 0.6 m from the feet of the lander\n", - "api.clean.set_range_offset(ds, 0.6)" - ] - }, - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "So, the center of bin 1 is located at 1.2 m:" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "
<xarray.DataArray 'range' (range: 28)>\n",
-              "array([ 1.2,  1.7,  2.2,  2.7,  3.2,  3.7,  4.2,  4.7,  5.2,  5.7,  6.2,  6.7,\n",
-              "        7.2,  7.7,  8.2,  8.7,  9.2,  9.7, 10.2, 10.7, 11.2, 11.7, 12.2, 12.7,\n",
-              "       13.2, 13.7, 14.2, 14.7])\n",
-              "Coordinates:\n",
-              "  * range    (range) float64 1.2 1.7 2.2 2.7 3.2 ... 12.7 13.2 13.7 14.2 14.7\n",
-              "Attributes:\n",
-              "    units:    m
" - ], - "text/plain": [ - "\n", - "array([ 1.2, 1.7, 2.2, 2.7, 3.2, 3.7, 4.2, 4.7, 5.2, 5.7, 6.2, 6.7,\n", - " 7.2, 7.7, 8.2, 8.7, 9.2, 9.7, 10.2, 10.7, 11.2, 11.7, 12.2, 12.7,\n", - " 13.2, 13.7, 14.2, 14.7])\n", - "Coordinates:\n", - " * range (range) float64 1.2 1.7 2.2 2.7 3.2 ... 12.7 13.2 13.7 14.2 14.7\n", - "Attributes:\n", - " units: m" - ] - }, - "execution_count": 7, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "ds.range" - ] - }, - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### 2.2. Discard Data Above Surface Level\n", - "\n", - "To reduce computational load, we can exclude all data at or above the water surface level. Since the instrument was oriented upwards, we can utilize the pressure sensor data along with the function `find_surface_from_P`. However, this approach necessitates that the pressure sensor was calibrated or 'zeroed' prior to deployment. If the instrument is facing downwards or doesn't include pressure data, the function `find_surface` can be used to detect the seabed or water surface.\n", - "\n", - "It's important to note that Acoustic Doppler Current Profilers (ADCPs) do not measure water salinity, so you'll need to supply this information to the function. The dataset returned by this function includes an additional variable, \"depth\". If `find_surface_from_P` is invoked after `set_range_offset`, \"depth\" represents the distance from the water surface to the seafloor. Otherwise, it indicates the distance to the ADCP pressure sensor.\n", - "\n", - "After determining the \"depth\", you can use the nan_beyond_surface function to discard data in depth bins at or above the actual water surface. Be aware that this function will generate a new dataset." - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": {}, - "outputs": [], - "source": [ - "api.clean.find_surface_from_P(ds, salinity=31)\n", - "ds = api.clean.nan_beyond_surface(ds)" - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 9, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjoAAAHyCAYAAADiG2SEAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/NK7nSAAAACXBIWXMAAA9hAAAPYQGoP6dpAACeEUlEQVR4nOzdeZwdVZ3//9c5td61t6STTsgKAgooCC6ALJExbDIuiDgom44P+GIEZBgUcQkuZHAcZBQFYYCg6MjMIIyOuPBTAqJhZIuIwyIaSAwJISG93LW28/ujbl9sE6C7b6dv0vk8H496JLdu1alzl3R/cupUvZUxxiCEEEIIMQXpdndACCGEEGJ7kUJHCCGEEFOWFDpCCCGEmLKk0BFCCCHElCWFjhBCCCGmLCl0hBBCCDFlSaEjhBBCiClLCh0hhBBCTFlS6AghhBBiypJCR4hJsHTpUpRSI9bNnz+fM844oz0d2ob58+ejlOLss8/e6rkVK1aglOK//uu/XraN5cuXo5RqLps2bWo+9/vf/55zzjmHgw8+mFwuh1KKFStWbLOdzs7OZhtLlixp6XUJIXZtUugI0Sa33XYbn/70p9vdja1cf/31PPHEEy218f3vf5+VK1fS2dnZXPfAAw9w++23093dzVFHHfWy+/9//9//x8qVK1vqgxBCgBQ6QrTNAQccwO677/6y24RhSBRFk9QjmqMtn/zkJ1tq54ADDuDNb34ztm0315166qk8++yz/OhHP+K000572f0POugg3vzmN7fUByGEACl0hJhwP/rRj9h///3xPI8FCxbw5S9/eZvb/fWpq+HTQ9/+9rf5h3/4B2bPno3neTz11FOT1HPo7u7mE5/4BN///ve57777JrRtreXHjRBi8tmvvIkQYrR+/vOf8453vIODDz6Y733ve8RxzJe+9CWee+65Ubdx8cUXc/DBB3PNNdegtaa3t/clt43jGGPMK7aptR51oXHeeedx1VVXcdFFF3HPPfeMut9CCLEjkkJHiAl0ySWXMGPGDO6880583wfg6KOPZv78+aNuY/fdd+c///M/R73tM88884rbffazn2Xp0qWjajOTybB06VI+/OEP8z//8z+8/e1vH9V+QgixI5JCR4gJUi6Xuf/++znnnHOaRQ5AoVDghBNO4KabbhpVOyeeeOKoj/nDH/6Qer3+itvNmjVr1G0CnHnmmXzlK1/hE5/4BMcdd9yY9hVCiB2JFDpCTJAtW7aQJAkzZ87c6rltrXspfX19o972Na95zahPXY2FZVlcdtllvPOd7+Smm25iwYIFY9pfCCF2FDI7UIgJ0tXVhVKKDRs2bPXctta9lL++387L2X333XEc5xWXz33uc6Nuc9g73vEODj30UD772c9Sq9XGvL8QQuwIZERHiAmSy+V44xvfyPe//33++Z//uXn6amhoiB/+8Ifb5Zjb69TVsMsvv5y3vOUtfPWrXx3X/kII0W5S6AgxgT7/+c9zzDHH8La3vY1/+Id/II5jLr/8cnK5HC+88MKEH2+//fab8Db/0qGHHso73vEO/vu//7vltiqVCnfccQdA89L1u+++m02bNpHL5Tj22GNbPoYQQvw1KXSEmEBve9vbuP322/nUpz7FySefzMyZMznnnHOoVqtceuml7e7euCxbtoz/+Z//IY7jltrZuHEjJ5100oh1w1eCzZs3j6effrql9oUQYluUGc1MRiGEGIXly5dz5pln8tRTTzFv3rwRd0Yei+H7AzmOw0c+8hGuuuqqCe6pEGJXIZORhRATbo899sBxnBGhnmPR09OD4zgT3CshxK5IRnSEEBNm8+bNrF69uvl4//33H9eozqpVq5oZX729vcydO3fC+iiE2LVIoSOEEEKIKUtOXQkhhBBiypJCRwghhNgFLFu2jDe84Q0UCgV6e3t55zvfyRNPPPGK+919990ceOCB+L7PwoULueaaayahtxNHCh0hhBBiF3D33XfzkY98hPvuu48777yTKIpYvHgx5XL5JfdZvXo1xx13HIcddhgPP/wwn/zkJzn33HO59dZbJ7HnrZnyc3SSJOHZZ5+lUCiM6db6Qgghdj3GGIaGhpg1a9aYM+LGolarEQRBy+0YY7b63eZ5Hp7nveK+zz//PL29vdx9990cfvjh29zm4x//OD/4wQ947LHHmuvOPvtsfvvb37Jy5crWOj9JpvwNA5999lnmzJnT7m4IIYTYiaxdu5bddtttu7Rdq9XoyeSp0NpNOAHy+TylUmnEus9+9rPNm3G+nIGBAQC6u7tfcpuVK1eyePHiEeuOPvporr/+esIw3CluAzHlC51CoQCkX9pisdjm3gghhNiRDQ4OMmfOnObvju0hCAIqxJzGbNwWZpAEJHyrtG6r32+jGc0xxnDBBRfw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DeTOyKmzzjqLcrn8ks/PnTuXG2+8cdztS6EjhBBCtINqcY6OmhpzdN71rne97PNdXV2cfvrp425/apSDQgghhJgyfvWrX1Gv1yekLSl0hBBCiHYYvuqqlWWKOvbYY1m3bt2EtCWnroQQQog2kDk6L62Vycd/beq+S0IIIYTY5bW10Lnnnns44YQTmDVrFkopbr/99hHPG2NYunQps2bNIpPJcOSRR/L73/++PZ0VQgghJpKcunpJ3/zmN5kxY8aEtNXWQqdcLvO6172Oq666apvPf+lLX+KKK67gqquu4v7772fmzJm87W1vY2hoaJJ7KoQQQkyw4RsGjnuZuidlTjnlFOI45vbbb+exxx5rqa22ztE59thjOfbYY7f5nDGGK6+8kksuuYR3v/vdANx0003MmDGD7373u5x11lnb3K9er4+YqT04ODjxHRdCCCFa1Gow51QL9Xzve9/L4YcfzpIlS6hWqxx00EE8/fTTGGP43ve+x4knnjiudnfYcnD16tVs2LCBxYsXN9d5nscRRxzBr3/965fcb9myZXR0dDSXOXPmTEZ3hRBCCNGCe+65h8MOOwyA2267DWMM/f39fPWrX+ULX/jCuNvdYQudDRs2AGx1jm7GjBnN57bl4osvZmBgoLmsXbt2u/ZTCCGEGBetW1+mkIGBAbq7uwH4yU9+woknnkg2m+X444/nD3/4w7jb3eEvL//rxNJXSjH1PA/P87Z3t4QQQojWSHr5CHPmzGHlypV0d3fzk5/8hO9973sAbNmyBd/3x93uDlsOzpw5E2Cr0ZuNGzdO2ExsIYQQQuwYzj//fN7//vez2267MWvWLI488kggPaW13377jbvdHbbQWbBgATNnzuTOO+9srguCgLvvvptDDjmkjT0TQgghWqe01fIylZxzzjncd9993HDDDdx7773oxqm5hQsX7rxzdEqlEqtWrWLVqlVAOgF51apVrFmzBqUU559/Ppdddhm33XYbjz76KGeccQbZbJZTTjmlnd0WQgghWqdanJ+jxvcr/Bvf+AYLFizA930OPPBAfvnLX77ktitWrEAptdXy+OOPj/dVv6wDDzyQd73rXeTz+ea6448/nkMPPXTcbbZ1js4DDzzAokWLmo8vuOACAE4//XSWL1/ORRddRLVa5ZxzzmHLli286U1v4mc/+xmFQqFdXRZCCCF2Wrfccgvnn38+3/jGNzj00EP55je/ybHHHsv//d//MXfu3Jfc74knnqBYLDYfT58+fTK6OyGUmchAiR3Q4OAgHR0dDAwMjPiQhBBCiL82Gb8zho+xecV/UMxnx99OqULPke9l7dq1I/r6chflvOlNb+L1r389V199dXPdq1/9at75zneybNmyrbZfsWIFixYtYsuWLXR2do67r+20w87REUIIIaa0Cboz8pw5c0bcP25bBQuk81wffPDBEfenA1i8ePHL3p8O4IADDqCvr4+jjjqKu+66a2Je/yTZ4S8vF0IIIcRL29aIzrZs2rSJOI7HdH+6vr4+rr32Wg488EDq9Trf/va3Oeqoo1ixYgWHH374xL2I7UgKHSGEEKIdWr3pX2PfYrE4ptNsY7k/3V577cVee+3VfHzwwQezdu1avvzlL2+XQqdWq/HII4+wceNGkiQZ8dzf/u3fjqtNKXSEEEKINpjsrKtp06ZhWVbL96d785vfzM033zymY4/GT37yE0477TQ2bdq01XNKKeI4Hle7MkdHCCGEaIeW5ueM/a7Kruty4IEHjrg/HcCdd945pvvTPfzww/T19Y3p2KOxZMkSTjrpJNavX0+SJCOW8RY5ICM6QgghxC7jggsu4NRTT+Wggw7i4IMP5tprr2XNmjWcffbZQJoXuW7dOr71rW8BcOWVVzJ//nz22WcfgiDg5ptv5tZbb+XWW2+d8L5t3LiRCy64YMLTD6TQEUIIIdqhDVlXJ598Mps3b+Zzn/sc69evZ9999+WOO+5g3rx5AKxfv541a9Y0tw+CgAsvvJB169aRyWTYZ599+NGPfsRxxx03/n6/hPe85z2sWLGC3XfffULblfvoCCGEEA2TeR+dLQ/+lGI+N/52SmW6Djx6yvx+q1QqnHTSSUyfPp399tsPx3FGPH/uueeOq10Z0RFCCCFE2333u9/lpz/9KZlMphk9MUwpJYWOEEIIsVNRLZ66UlMr1PNTn/oUn/vc5/jEJz7RDPScCFLoCCGEEO2g1LiDOZv7TyFBEHDyySdPaJEDcnm5EEIIIXYAp59+OrfccsuEtysjOkIIIUQ7KN3iiM7UGquI45gvfelL/PSnP+W1r33tVpORr7jiinG1K4WOEEII0QZGaUwLxUor++6Ifve733HAAQcA8Oijj4547qUiKkZjVIXOI488MuaGX/Oa12DbUkcJIYQQ4pVtr1T0UVUi+++/P0opRnvLHa01Tz75JAsXLmypc0IIIcSUJaeuJsWoh1z+93//l+nTp7/idsYY9t1335Y6JYQQQkx5SrV25dQUuOrq3e9+N8uXLx/1DQ/f//7385WvfIXe3t5RH2NUhc4RRxzBHnvsQWdn56gaPfzww8lkMqPuhBBCCLHL0TpdWtl/J/ff//3fPP/886Pa1hjDD3/4Qz7/+c9PfKEz1vNmd9xxx5i2F0IIIcSuxxjDnnvuuV2PIbOFhRBCiDaQq67GNwF59uzZY9p+zIWOMYb/+q//4q677mLjxo0kSTLi+e9///tjbXJSxM88QpKxIYkxSYJyPJJSP8pxIYkh3wOV/vTvtpvulMQo18cENUy1DLaDCWpYXb0kQ/0klUGsnr7mtvHAZtyDT2zbaxRCiF3R79YPECeGomcRJgZXK2IDceMCmoydFgRxYnB0Oq8lTAzDl9dYSqEUuJaiPFievI7LZGSOOOKI7X6MMRc65513Htdeey2LFi1ixowZLV3bLoQQQgixPY250Ln55pv5/ve/z3HHHbc9+iOEEELsGmREZ1KMudDp6OiQ++MIIYQQrZJCZ1KM+V1aunQpl156KdVqdXv0RwghhBBiwox5ROekk07i3//93+nt7WX+/PlbhW499NBDE9Y5IYQQYqoySrV41dXUmiO7dOlSzjzzTObNmzeh7Y650DnjjDN48MEH+cAHPiCTkYUQQojxklNXI/zwhz/kC1/4AkcccQQf+tCHePe7343v+y23O+ZC50c/+hE//elPectb3tLywYUQQgghAB588EEeeeQRbrzxRj72sY/xkY98hPe973188IMf5A1veMO42x1zOThnzpxRZ1IIIYQQ4iUMZ121skwxr33ta/nKV77CunXruOGGG1i3bh2HHnoo++23H//6r//KwMDAmNscc6HzL//yL1x00UU8/fTTYz6YEEIIIRqGT121skxRSZIQBAH1eh1jDN3d3Vx99dXMmTOHW265ZUxtjfnU1Qc+8AEqlQq777472Wx2q8nIL7zwwlibFEIIIXY5EgGxtQcffJAbb7yRf//3f8fzPE477TS+/vWvs8ceewDpYMu5557LySefPOo2x1zoXHnllWPdRQghhBDiZb32ta/lscceY/HixVx//fWccMIJWJY1YpvTTjuNf/zHfxxTu2MudE4//fSx7iKE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", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "ds['vel'][1].plot()" - ] - }, - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### 2.3: Apply an Acoustic Signal Correlation Filter\n", - "\n", - "After removing data from bins at or above the water surface, we typically apply a filter based on acoustic signal correlation to the ADCP data. This helps to eliminate erroneous velocity data points, which can be caused by factors such as bubbles, kelp, fish, etc., moving through one or multiple beams.\n", - "\n", - "You can quickly inspect the data to determine an appropriate correlation value by using the built-in plotting feature of xarray. In the following example, we use xarray's slicing capabilities to display data from beam 1 within a range of 0 to 10 m from the ADCP.\n", - "\n", - "It's important to note that not all ADCPs provide acoustic signal correlation data, which serves as a quantitative measure of signal quality. Older ADCPs may not offer this feature, in which case you can skip this step when using such instruments." - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 10, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjoAAAHyCAYAAADiG2SEAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/NK7nSAAAACXBIWXMAAA9hAAAPYQGoP6dpAACSpElEQVR4nOzdd3gU1d4H8O/M1iy7CUkoSTChBpAiIigCCigCChaECxZEQK+KoIJYkYugUuziK4rlKgKiCKLotYBIL1KlKF2lREioIdnNZuuc94/NDNkklGSX7Cb5fp5nHtiZM2d+50zhcObMjCSEECAiIiKqhORIB0BERER0sbChQ0RERJUWGzpERERUabGhQ0RERJUWGzpERERUabGhQ0RERJUWGzpERERUabGhQ0RERJUWGzpERERUabGhQ1Xa+PHjIUkSTpw4EelQotKOHTswbNgwtG/fHtWqVYMkSVi+fPkFry9Jkja9/vrrQcv+85//4Oabb0adOnUgSRIGDx5cYh4jR47U8rBarSGUhoiqIjZ0iOisNm3ahAULFiAhIQFdu3YtUx73338/fv31VwwYMCBo/ltvvYWTJ0/i1ltvhdFoPOv6jz/+OH799Vf07NmzTNsnoqpNH+kAiCh6DRw4EIMGDQIAfPXVV/jf//5X6jwuueQSXH311cXm2+12yHLg/1qzZs066/p169ZF3bp1UbNmzVJvm4iIPTpEADIyMtCnTx/ExsYiLi4O99xzD44fP14s3ZdffqndxrFarejRowe2bNkSlGbTpk248847Ua9ePcTExKBevXq46667cPDgwaB0n376KSRJwtKlS/HAAw8gMTERsbGxuPfee5GXl4esrCz0798f1atXR3JyMp588kl4vd6LWg9FqQ2RipY3EZGKVxoiALfffjsaNWqEr776CuPHj8eCBQvQo0ePoIbFpEmTcNddd6FZs2aYO3cuZs2aBbvdjmuvvRY7d+7U0h04cABNmjTBlClTsGjRIrzyyivIzMzElVdeWeJYoH//+9+Ii4vDnDlz8J///Aeff/45HnjgAfTq1QutWrXCV199hUGDBuGNN97AO++8c96yKIoCn8933snv94en8oiIopkgqsLGjRsnAIjHH388aP7s2bMFAPHZZ58JIYQ4dOiQ0Ov14tFHHw1KZ7fbRVJSkujfv/9Zt+Hz+YTD4RDVqlUTb7/9tjZ/+vTpAkCxPHv37i0AiDfffDNo/uWXXy6uuOKK85Zp0KBBAsB5p86dO583r8LmzZsnAIhly5Zd8DoAxLhx486brlq1amLQoEHnTDNo0CBRrVq1C942EZEQQnCMDhFQbKBs//79MWjQICxbtgwDBgzAokWL4PP5cO+998Ln82npzGYzOnfujGXLlmnzHA4HXnrpJcyfPx8HDhwI6jnZtWtXsW3ffPPNQb8vvfRSLFiwAL169So2/+effz5vWcaPH49HHnnkvOlsNtt50xARVXRs6BABSEpKCvqt1+uRmJiIkydPAgCOHj0KALjyyitLXL/weJO7774bS5YswdixY3HllVciNjYWkiShZ8+eyM/PL7ZuQkJC0G/1CaSS5rtcrvOWJS0tDZdccsl500mSdN40REQVHRs6RACysrJQp04d7bfP58PJkyeRmJgIAKhRowaAwJNHdevWPWs+OTk5+P777zFu3Dg8++yz2ny3241Tp05dpOiD3XfffZgxY8Z503Xu3LlU78QhIqqI2NAhAjB79my0adNG+z137lz4fD506dIFANCjRw/o9Xr89ddf6Nu371nzkSQJQgiYTKag+f/973/LbfAvb10REZ3Bhg4RgK+//hp6vR7dunXDjh07MHbsWLRq1Qr9+/cHANSrVw8vvvgixowZg7///hs33ngj4uPjcfToUWzYsAHVqlXDCy+8gNjYWHTq1AmvvfYaatSogXr16mHFihX4+OOPUb169XIpS7169VCvXr2w5OV0OvHjjz8CANatWwcAWLFiBU6cOIFq1arhpptuKnPeK1as0B7h9/v9OHjwIL766isAgd4mvjeHiMKBDR0iBBo648ePx7Rp0yBJEm655RZMmTIl6I29o0ePRrNmzfD222/jiy++gNvtRlJSEq688koMHTpUS/f5559jxIgRePrpp+Hz+dCxY0csXry42ODiiuDYsWPo169f0Lzx48cDCLzI78CBA2XOe9y4cVixYoX2e/ny5dqttGXLlmm9aUREoZCEECLSQRBR5SRJEsaOHYvnn38eOp2uTAOgFUWBoii4//77MX/+fDgcjosQKRFVVnxhIBFdVC+99BIMBgPeeOONMq0/atQoGAwGzJw5M8yREVFVwB4dIrpoNm3apP09NTUVtWvXLnUeGRkZ2uP9Op0OrVu3Dlt8RFT5saFDRERElRZvXRER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KQAiIqJKpwo2dPx+Pz799FMsWbIEx44dg6IoQcuXLl163jzat2+PjRs34uWXX0b79u3x2muvYf78+SHFVaYXBk6cOBFjxozBzp07oSgKmjVrBqu15HveREREVPmNGDECn376KXr16oUWLVqc92OfZ6PX6/Gf//wHd9xxB4YOHYoZM2Zg6tSpSEpKKlt+ZVoLgS6ptm3blnV1IiKiSqsqvhl5zpw5mDt3Lnr27Fmm9X///Xfcf//92LVrFy677DJ88sknWLJkCT755BN06NABTz31FB5++OFS51vqhs7tt99eYitNkiSYzWY0atQId999N5o0aVLqYIiIiCqFKnjrymg0olGjRmVef8iQIejUqRNmzpyJhQsXYujQoVi2bBnuu+8+3HLLLRg5ciRmzpyJX3/9tVT5lvo9OnFxcVi6dCl+++03rcGzZcsWLF26FD6fD19++SVatWqFNWvWlDZrIiIiqqCeeOIJvP322yjlW2s0e/bswbBhw9C0aVM8+uij2L9/v7asZs2amD17Nl544YVS51vqHp2kpCTcfffdmDp1KmQ50E5SFAUjRoyAzWbDnDlzMHToUDzzzDP8JAQREVVNVbBHZ/Xq1Vi2bBl++uknNG/ePOilwgDw9ddfn3P9Ll264MEHH8Sdd96JpUuXomPHjsXSdO/evdRxlbqh8/HHH2PNmjVaIwcAZFnGo48+ig4dOmDSpEl45JFHcO2115Y6GCIiosqgKo7RqV69Om6//fYyrz9z5kxMnDgR3377LVq1aoVnn302LHGVuqHj8/mwe/duNG7cOGj+7t27tU+wm83mMo+2JiIiqvCEFJhCWb+CmT59epnX3b59O1q0aIHXX3/9gtLv2LEDTZo0gV5//mZMqRs6AwcOxP3334/nnnsOV155JSRJwoYNGzBp0iTce++9AIAVK1agefPmpc2aiIiIqqDWrVsjKysLNWvWvKD07du3x9atWy/oiwylbui89dZbqF27Nl599VUcPXoUAFC7dm08/vjjeOaZZwAE7qHdeOONpc2aiIiocqiCY3Rat2593qeyBw8ejOuuu65YGiEExo4dC4ul5G8vFuXxeC44rlI3dHQ6HcaMGYMxY8YgNzcXAIp9cCwtLa202RIREVUaVXGMzo033ohp06ahZcuWuOqqqyCEwKZNm7B9+3YMHjwYO3fuxA033ICvv/4at912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1aoVnnnmGbz44ovQ6XS46667oCgKNmzYgAEDBkCvD4RZeLBeNGN5ohvLE90qU3kqU1mIKqqouHWlGj58OObPn4+0tDQcO3YMFosFc+fORYsWLSIdWpmwPNGN5Ylulak8laksRBVNVDV03G43du7cia1bt8JoNGLAgAGRDikkLE90Y3miW2UqT2UqC1FFE1UNHSIiIqJwiorByEREREQXAxs6REREVGmxoUNERESVFhs6REREVGmxoUNERESVFhs6REREVGmxoUNERESVFhs6REREVGmxoUNERESVFhs6VGbjx4/H5ZdfXu7bXb58OSRJgiRJ6N27d7lvP5zUspw+fTrseXfp0gUjR44Me75ERBUJGzpUIrUhcbZp8ODBePLJJ7FkyZKIxbhnzx58+umnEdt+tPv666/x0ksvRTSGHTt2oG/fvqhXrx4kScKUKVOKpbHb7Rg5ciTq1q2LmJgYdOjQARs3bgxKc7bj8LXXXtPSuN1uPProo6hRowaqVauGW2+9Ff/88895Yzx06BBuueUWVKtWDTVq1MBjjz0Gj8ejLXe5XBg8eDBatmwJvV5fqsb1/Pnz0axZM5hMJjRr1gzffPNN0PKVK1filltuQUpKCiRJwoIFCy44byK6MGzoUIkyMzO1acqUKYiNjQ2a9/bbb8NqtSIxMTFiMdaqVQvVq1eP2PajXUJCAmw2W0RjcDqdaNCgAV5++WUkJSWVmObf//43Fi9ejFmzZuH3339H9+7dccMNN+Dw4cNamsLHXmZmJj755BNIkoS+fftqaUaOHIlvvvkGc+bMwerVq+FwOHDzzTfD7/efNT6/349evXohLy8Pq1evxpw5czB//nw88cQTQWliYmLw2GOP4YYbbrjgsv/666+44447MHDgQGzbtg0DBw5E//79sX79ei1NXl4eWrVqhalTp15wvkRUSoLoPKZPny7i4uKKzR83bpxo1aqV9nvQoEHitttuExMnThS1atUScXFxYvz48cLr9Yonn3xSxMfHizp16oiPP/44KJ9//vlH9O/fX1SvXl0kJCSIW2+9Vezfv/+s8SxbtkwAENnZ2UHz582bJ1q0aCHMZrNISEgQXbt2FQ6HQ1v+ySefiKZNmwqTySSaNGki3n333aD1MzIyxB133CHi4+OFxWIRbdq0EevWrdOWv/fee6JBgwbCYDCIxo0bi5kzZwatD0B89NFHonfv3iImJkY0atRIfPvtt0FpfvjhB5Geni7MZrPo0qWLmD59elBZDhw4IG6++WZRvXp1YbFYRLNmzcQPP/xw1rp49913RaNGjYTJZBK1atUSffv21ZZ17txZjBgxQvtdt25dMXHiRDFkyBBhtVpFamqq+OCDD0pVB99995244oorhMlkEvXr19f274WoW7eueOutt4LmOZ1OodPpxPfffx80v1WrVmLMmDFnzeu2224T119/vfb79OnTwmAwiDlz5mjzDh8+LGRZFgsXLjxrPj/++KOQZVkcPnxYm/fFF18Ik8kkcnJyiqVXj/EL0b9/f3HjjTcGzevRo4e48847S0wPQHzzzTcXlDcRXTj26FBYLV26FEeOHMHKlSvx5ptvYvz48bj55psRHx+P9evXY+jQoRg6dCgyMjIABP7Hf91118FqtWLlypVYvXo1rFYrbrzxxqDbB+eTmZmJu+66C/fddx927dqF5cuXo0+fPhBCAAA++ugjjBkzBhMnTsSuXbswadIkjB07FjNmzAAAOBwOdO7cGUeOHMF3332Hbdu24emnn4aiKACAb775BiNGjMATTzyBP/74Aw899BCGDBmCZcuWBcXxwgsvoH///ti+fTt69uyJAQMG4NSpUwCAjIwM9OnTBz179sTWrVvx73//G88++2zQ+sOHD4fb7cbKlSvx+++/45VXXoHVai2xzJs2bcJjjz2GF198EXv27MHChQvRqVOnc9bTG2+8gbZt22LLli0YNmwYHn74YezevfuC6mDRokW455578Nhjj2Hnzp344IMP8Omnn2LixIkXvJ+K8vl88Pv9MJvNQfNjYmKwevXqEtc5evQofvjhB9x///3avM2bN8Pr9aJ79+7avJSUFLRo0QJr16496/Z//fVXtGjRAikpKdq8Hj16wO12Y/PmzWUtlpZ34XjUvM8VDxFdBJFuaVH0K02PTt26dYXf79fmNWnSRFx77bXab5/PJ6pVqya++OILIYQQH3/8sWjSpIlQFEVL43a7RUxMjFi0aFGJ8ZTUo7N582YBQBw4cKDEdVJTU8Xnn38eNO+ll14S7du3F0II8cEHHwibzSZOnjxZ4vodOnQQDzzwQNC8fv36iZ49e2q/AYj//Oc/2m+HwyEkSRI//fSTEEKI0aNHi0svvTSorM8880xQWVq2bCnGjx9fYgxFzZ8/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", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "%matplotlib inline\n", - "ds['corr'].sel(beam=1, range=slice(0,10)).plot()" - ] - }, - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "It's beneficial to also review data from the other beams. A significant portion of this data is of high quality. To avoid discarding valuable data with lower correlations, which could be due to natural variations, we can use the `correlation_filter`. This function assigns a value of NaN (not a number) to velocity values corresponding to correlations below 50%.\n", - "\n", - "However, it's important to note that the correlation threshold is dependent on the specifics of the deployment environment and the instrument used. It's not unusual to set a threshold as low as 30%, or even to forgo the use of this function entirely." - ] - }, - { - "cell_type": "code", - "execution_count": 11, - "metadata": {}, - "outputs": [], - "source": [ - "ds = api.clean.correlation_filter(ds, thresh=50)" - ] - }, - { - "cell_type": "code", - "execution_count": 12, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 12, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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43W3i+OYww8/fMTtS6EjhBBCtIDSBko38WTkJvadKGbPns3+++9PZ2fnsLafN28elmWN6BhS6AghhBCiJZYuXTqi7f/yl7+M+BhS6AghhBCtoI1kaWZ/8bomxwCfEEII8UajdfPLFuDFF1/k/PPPH/X+W8anJIQQQkwwyjCaXrYEq1ev5rzzzhv1/jJ0JYQQQoiWeeKJJzb5+lNPPdVU+1LoCCGEEK0gc3QA2H333VFKEcfxBq8Nrh/Js3b+lRQ6QgghRCto3WShMzlmn3R2dnLRRRdx0EEHbfT1v/71rxx55JGjbl8KHSGEEEK0zB577MHKlSuZPXv2Rl/v7e3d6NWe4ZJCRwghhGgBeTJy4oQTTqBUKr3m67NmzeKaa64ZdftS6AghhBCtoJqco6Mmxxyd9773vZt8vb29nY9//OOjbn9ylINCCCGEmDR+//vfU6vVxqQtKXSEEEKIVhi866qZZZI67LDDWLFixZi0JUNXQgghRAvIHJ3X1szk4381eT8lIYQQQmzxWlro3HPPPRx55JHMmDEDpRS33nrrkNfjOGbhwoXMmDGDVCrFgQceyF//+tfWdFYIIYQYSzJ09Zq++93vMm3atDFpq6WFTqlUYrfdduOyyy7b6Otf/epXueSSS7jssst46KGHmD59Ou985zsZGBgY554KIYQQY2zwgYGjXibvoMxHPvIRwjDk1ltv5e9//3tTbbV0js5hhx3GYYcdttHX4jjm0ksv5ZxzzuF973sfANdeey3Tpk3jhz/8ISeccMJG96vVakNmavf39499x4UQQogmNRvMOdlCPT/0oQ+x//77c/LJJ1OpVNhzzz157rnniOOYH//4x7z//e8fVbsTthxcunQpq1ev5uCDD26scxyHAw44gPvvv/8191u0aBGFQqGx9PT0jEd3hRBCCNGEe+65h/322w+AW265hTiO6e3t5Zvf/CYXXHDBqNudsIXO6tWrATYYo5s2bVrjtY05++yz6evrayzLly/frP0UQgghRkXr5pdJpK+vj46ODgBuv/123v/+95NOpzniiCN45plnRt3uhP+U/jWx9PVSTB3HIZ/PD1mEEEKICadFk5G/853vMHfuXFzXZY899uDee+99zW2XLFmCUmqD5cknnxztu35NPT09PPDAA5RKJW6//fbGiM769etxXXfU7U7YQmf69OkAG1y9WbNmzZjNxBZCCCG2JDfeeCOnnnoq55xzDo899hj77bcfhx12GMuWLdvkfk899RSrVq1qLNtuu+2Y9+3UU0/lox/9KFtttRUzZszgwAMPBJIhrV122WXU7U7YQmfu3LlMnz6dO++8s7HO8zzuvvtu9tlnnxb2TAghhGie0kbTy0hdcsklfPKTn+Q///M/edOb3sSll15KT08Pl19++Sb36+rqYvr06Y3F2AwToU866SQefPBBrr76au677z50fWhu3rx5Tc3RaeldV8VikWeffbbx9dKlS3n88cfp6Ohg1qxZnHrqqVx44YVsu+22bLvttlx44YWk02k+8pGPtLDXQgghxBhQTc6zUcm+/3p3seM4OI6zweae5/HII49w1llnDVl/8MEHb/ImH4D58+dTrVbZcccdOffcc1mwYMHo+70Je+yxB3vssceQdUcccURTbba00Hn44YeHfFinn346AB//+MdZvHgxZ555JpVKhZNOOon169fztre9jd/85jfkcrlWdVkIIYSYUP717uIvfelLLFy4cIPt1q5dSxiGI7rJp7u7myuvvJI99tiDWq3GD37wAw466CCWLFnC/vvvP2bvYXNqaaFz4IEHbjLPQinFwoULN/oNE0IIId7IRjv89Or9AZYvXz7kxpuNXc0Zst8IbvLZfvvt2X777Rtf77333ixfvpyLL75YCh0hhBBCbMLgk5Gb2R+GfYfxlClTMAyj6Zt89tprL66//vqR9bWFJuxkZCGEEEKMHdu22WOPPYbc5ANw5513jugmn8cee4zu7u6x7t5mI1d0hBBCiFZo9qF/o9j39NNP5+ijj2bPPfdk77335sorr2TZsmWceOKJQPLQ3RUrVnDdddcBcOmllzJnzhx22mknPM/j+uuv56abbuKmm24afb83oVqt8sQTT7BmzRqiKBry2r//+7+Pqk0pdIQQQogWaEXW1VFHHcW6des4//zzWbVqFTvvvDO33XYbs2fPBmDVqlVDnqnjeR5nnHEGK1asIJVKsdNOO/HrX/+aww8/fNT9fi233347xxxzDGvXrt3gNaUUYRiOql0Vb2o28CTQ399PoVCgr69PnpIshBBik8bjd8bgMV7+w6/IZzOjb6dYouNt75o0v9+22WYbDjnkEL74xS+O6YOBZY6OEEIIIVpuzZo1nH766WOefiCFjhBCCNEKLcq6mqg+8IEP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9a1v8YUvfIGTTjqJNWvWMGPGDE444YQxv3IkhBBCTHa2bbPHHntw55138t73vrex/s477+Td7373RvfZe++9+eUvfzlk3W9+8xv23HPPMc+kGrTddtux7bbbAmNz1WjUTxtKp9PsueeevPWtb90sRQ5ALpfj0ksv5fnnn6dSqfCPf/yDCy64ANu2N8vxhBBCiPESj8EyUqeffjrf//73ufrqq/n73//OaaedxrJlyzjxxBOB5IaeY445prH9iSeeyPPPP8/pp5/O3//+d66++mquuuoqzjjjjFG+60277rrr2GWXXUilUqRSKXbddVd+8IMfNNXmiK/ovPe9791ohaWUwnVdttlmGz7ykY+w/fbbN9UxIYQQYjKL6neENbP/SB111FGsW7eO888/n1WrVrHzzjtz2223NYaHVq1aNeRW7rlz53Lbbbdx2mmn8e1vf5sZM2bwzW9+k/e///2j7/hruOSSS/jCF77AySefzL777kscx/z+97/nxBNPZO3atZx22mmjanfEhU6hUODWW2+lra2NPfbYgziOeeyxx+jt7eXggw/mxhtv5KKLLuK3v/0t++6776g6JYQQQojN46STTuKkk07a6GuLFy/eYN0BBxww5s/J25hvfetbXH755UOuKL373e9mp512YuHCheNX6EyfPp2PfOQjXHbZZY07oqIo4pRTTiGXy/HjH/+YE088kc997nNjHgkhhBBCTBZxHDfuYBrt/pPJqlWr2GeffTZYv88++7Bq1apRtzviOTpXXXUVp5566pDbvrXWfOYzn+HKK69EKcXJJ5/MX/7yl1F3SgghhJjsBoeumlkmk2222Yaf/OQnG6y/8cYbG5OTR2PEV3SCIODJJ59ku+22G7L+ySefJKw/Rdh13c0StS6EEEJMJpOsVmnKeeedx1FHHcU999zDvvvui1KK++67j9/+9rcbLYCGa8SFztFHH80nP/lJPv/5z/OWt7wFpRR//OMfufDCCxvjanfffTc77bTTqDslhBBCiC3L+9//fv7whz/wjW98g1tvvZU4jtlxxx354x//yPz580fd7ogLnW984xtMmzaNr371q7z44otA8jjo0047jc997nNAkptx6KGHjrpTQgghxGTXiruuJro99tiD66+/fkzbHHGhYxgG55xzDueccw79/f0AGzx6etasWWPTOyGEEGKSksnINOqI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p0/nj3/8I5ZlUalUWt2lplx66aXMmTOHE044gd12240rrriCMGwiIbmFvv71r7PttttyxBFH8K53vYsHHnhgwmfWbYr8LBBi/MlzdDajZ555hhNPPJHly5dzzjnn8OSTT7JkyRJyuRy/+c1vWt29UYnjmHK5zNFHH80//vEPHMfhrrvuIpPJtLpro/KPf/yD4447jo9+9KOccMIJre5O077whS/w05/+lEsuuYTtttuO6667jm9961usXLmSVCrV6u6NyCWXXMK3vvUtLr74Yvr7+/n5z3/O73//e376059y4IEHtrp7IyI/C4RooVhsFmEYxl//+tfjww8/PF6xYkVj/U9/+tN4t912i//+97+3sHfN+dOf/hTPnz8/Xrp0aZzJZOJvf/vbjdeiKGphz0bu61//ejx//vw4juP4+eefj7/whS/E3//+9+N77723xT0bubVr18Zve9vb4osvvrix7umnn4533HHH+KWXXorj+I3x/QnDMPZ9Pz7ssMPiT33qU0Nee/vb3x4feuih8WOPPdaazo2C/CwQorVk6GozCYKAbbfdlk9/+tPMmDGjcWk6m82yevVqOjs7W9zDkYlfdeFPKUVPTw9z5szhxBNP5Mtf/nLj9Vqt1qoujshgf5999lne+c538n//93/sueeePPTQQ1xxxRUcdNBBXH755W+oYaxMJsMTTzwx5BH755xzDt3d3fz0pz9l5cqVLezd8GmtiaKIP//5z7z5zW8GkjlUkAzLPf3009x+++1vqHNtMv0seLXJ8LNATH5S6IyR6667jtNOO43rrruOF198Edu2OfLIIzn88MMBGvMK+vv7mTFjxoQfRnj1+1mzZs2QeRHLly9v/NK8+OKLsW2bd7zjHeyyyy7cfvvtreryJr3W+2lra+MnP/kJt912GxdccAG/+tWveOihh/jMZz7Dtddey5IlS1rb8dfwr+8HwHVdTj/9dL74xS/ynve8h0KhwDPPPMOuu+7KN7/5Td73vvfxq1/9qsU939Dtt98+pJCOogjbttlnn324/vrrgeS9RVHEHnvswcEHH8xNN93E2rVrW9XlTXr1+4njGMMwOOKII96wPwv+//buPC6qcv8D+OewDYMsAYIDCISpLIkYeE30KhruUphcQTNCr1GWhpRa3rgGai64lF7LMq9aGVfIK2ouuYuIICFBoKDWDQQVRRNU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n/FETnQyMzPpL3/5CwmCQFu3biWi+rOiGv/HERkZSTk5OUrbbd68mQwMDOjGjRtqrbc9nKce53n8dCkLEedpoK15GHsUnriJTnZ2No0dO5YmTJhAwcHB1LNnT3GdQqEQP7U0fGfd2N69e8nGxoaSk5PVVm97OM99nOfx0qUsRJynMW3Mw9ij8sSdXt61a1d4e3sjOjoaERERqKmpQUxMDADlYx9MTEyabZuZmQlXV1f07dtXnSW3ifPcx3keL13KAnCexrQxD2OPjKZnWurUsPu24S7I9+7do0WLFpGlpSWVlJQQUfOzDq5fv05XrlyhBQsWkIODg3iRL00f79G4Bs7DeR43XcrSuAbOo515GHuUnqiJTmMNu3HPnj1L/fr1o4kTJxKR8h95fn4+zZ8/n5ydncnd3V3j11xpC+fhPOqiS1mIOI+252Hsz9K5iY5cLhdvCNhUQ7tCoRD/6GtqamjTpk1kZmZGJ06cEMcgqr+P0L59+zR6LxrOw3nURZeyNNTCebQ3D2PqolMTnejoaPL396fx48fTrl27xN24DXfabarhk09xcTGNGzeOBg4cSEVFRRQUFCTez0WTOA/nURddykLEebQ9D2PqpBMTnZycHPLy8qI+ffrQunXryM/Pj3x8fCgpKUmpX0JCAhkbG9OWLVuajREfH0+CIJCenh49++yzVFhYqK7ym+E8nEdddCkLEefR9jyMaYJOTHQWLFhAI0aMEHfflpeXk6mpqXjRrLKyMgoJCSEbGxtauXIlVVVVidvW1NTQrl27yNramnr06EEHDhzQSIbGOA/nURddykLEebQ9D2OaYKDps77+DCJCRUUFUlNT4ejoKLbfvHkTgwYNQufOnQEApqamCAoKwqeffgo7OzulMaqrq7Fr1y68++67iIqKUmv9TXEezqMuupQF4DzanocxTepw97pKSUmBk5MTnJycxLa3334bycnJePHFF2FsbIzY2Fg4OTnhjz/+wODBg/H222/D398fRARBEMTtGpbr6uqgr6+viTich/NwlofEebQ7D2NaQ417j/6UI0eOkIuLCzk7O5OdnR2FhoZSRkYGERGVlpbSl19+STNnzqQuXbrQd999R7du3aIjR45QSEgIjRw5stWzFTSF83AeddGlLEScR9vzMKZtOsREp7i4mHx9fSkqKoouXrxIu3fvpj59+pC/vz+dP39e7Ld48WIaN26c0vUiFi1aRD4+PlRcXKyJ0lvEeTiPuuhSFiLOo+15GNNGHeIWEPn5+cjKykJYWBicnJwQEBCA2NhYKBQKfPTRR2K/lJQU9O7dW2kXbkVFBSwtLeHg4KCJ0lvEeTiPuuhSFoDzaHsexrRRh5jo3Lx5E25ublAoFGLbsGHD8Le//Q3p6enYt28fAMDX1xerV6/G2rVrkZWVhaioKHzzzTcIDQ2FIAggLTkcifNwHnXRpSwA59H2PIxpJQ3uTVJZbm4uSSQS2rlzp1L7uXPnKDAwkMLCwsS2oKAg6tmzJ7m5uZGPj494RVBtwnk4j7roUhYizqPteRjTRh3mrKsxY8bg3r172LNnD0xNTcX2WbNm4cKFC/j+++9hZmaGqqoq3LlzB1euXIGXl5cGK24b5+E86qJLWQDOo+15GNM2HeKrKwBYunQpTp48ie+++w5yuVxst7GxQV5eHqRSKQBAIpHAxsZG698IOA/nURddygJwHm3Pw5i26TAXDPTy8sIHH3yAhQsXQl9fH5MmTYJCocBPP/2EyZMnw8CgPkrjg/W0GefRbrqUR5eyAJyHMfZgOsxXVw1mzJiB7du3w8nJCaWlpTAxMcH333+PXr16abq0h8J5tJsu5dGlLADnYYyppsNNdORyOfLy8pCdnQ0jIyNMnjxZ0yX9KZxHu+lSHl3KAnAexphqOtxEhzHGGGNMVR3mYGTGGGOMsQfFEx3GGGOM6Sye6DDGGGNMZ/FEhzHGGGM6iyc6jDHGGNNZPNFhjDHGmM7iiQ5jjDHGdBZPdBhjjDGms3iiwxhjjDGdxRMd9tjExMSgT58+an/cpKQkCIIAQRAwbtw4tT/+o9SQpby8/JGPPWTIEERGRj7ycRljTJvwRIc9lIaJRGs/U6ZMwZw5c3DkyBGN1Xj+/Hl8/fXXGnt8bZeYmIhFixZptIazZ88iKCgITz/9NARBwOrVq5v1uXPnDiIjI+Hs7AypVIoBAwYgIyNDqU9rr8MVK1aIfeRyOd555x107twZnTp1wksvvYRLly61W2NRURFefPFFdOrUCZ07d0ZERASqq6vF9VVVVZgyZQo8PT1hYGDwQJPr7du3w8PDAxKJBB4eHtixY4fS+uTkZLz44ouwt7eHIAjYuXOnymMzxurxRIc9lJKSEvFn9erVMDc3V2pbs2YNTE1NYW1trbEabW1t8dRTT2ns8bWdlZUVzMzMNFrDvXv30K1bNyxbtgwymazFPq+//joOHTqELVu2IDc3FyNGjMCwYcNw+fJlsU/j115JSQk2bdoEQRAQFBQk9omMjMSOHTsQHx+PlJQUVFRUICAgAHV1da3WV1dXh7Fjx+Lu3btISUlBfHw8tm/fjtmzZyv1kUqliIiIwLBhw1TOnpaWhpCQEISGhuKXX35BaGgogoODkZ6eLva5e/cuvLy88Nlnn6k8LmOsCWLsT9q8eTNZWFg0a4+OjiYvLy9xOSwsjAIDA2nx4sVka2tLFhYWFBMTQzU1NTRnzhyytLQkBwcH2rhxo9I4ly5douDgYHrqqafIysqKXnrpJSooKGi1nmPHjhEAKisrU2rftm0b9erVi4yNjcnKyor8/f2poqJCXL9p0yZyc3MjiURCrq6u9PnnnyttX1xcTCEhIWRpaUkmJibk4+NDp06dEtevW7eOunXrRoaGhtSzZ0/69ttvlbYHQBs2bKBx48aRVCql7t27065du5T67N27l3r06EHGxsY0ZMgQ2rx5s1KWwsJCCggIoKeeeopMTEzIw8OD9u7d2+pz8fnnn1P37t1JIpGQra0tBQUFiev8/Pxo1qxZ4rKzszMtXryYpk6dSqampuTo6Ejr169/oOfghx9+IG9vb5JIJOTi4iL+flXh7OxMn376qVLbvXv3SF9fn/bs2aPU7uXlRVFRUa2OFRgYSC+88IK4XF5eToaGhhQfHy+2Xb58mfT09Gj//v2tjrNv3z7S09Ojy5cvi21bt24liURCt27data/4TWuiuDgYBo1apRS28iRI2nixIkt9gdAO3bsUGlsxth9vEeHqdXRo0dx5coVJCcn45NPPkFMTAwCAgJgaWmJ9PR0TJ8+HdOnT0dxcTGA+k/8Q4cOhampKZKTk5GSkgJTU1OMGjVK6euD9pSUlGDSpEn4+9//jvz8fCQlJWH8+PEgIgDAhg0bEBUVhcWLFyM/Px9LlizB/Pnz8c033wAAKioq4OfnhytXruCHH37AL7/8gvfffx8KhQIAsGPHDsyaNQuzZ8/GmTNn8Oabb2Lq1Kk4duyYUh0LFixAcHAwcnJyMGbMGEyePBk3b94EABQXF2P8+PEYM2YMsrOz8frrr2PevHlK28+YMQNyuRzJycnIzc1FbGwsTE1NW8x8+vRpREREYOHChTh//jz279+PwYMHt/k8rVq1Cn379kVWVhbefvttvPXWWzh37pxKz8GBAwfw6quvIiIiAnl5eVi/fj2+/vprLF68WOXfU1O1tbWoq6uDsbGxUrtUKkVKSkqL21y7dg179+7FtGnTxLbMzEzU1NRgxIgRYpu9vT169eqF1NTUVh8/LS0NvXr1gr29vdg2cuRIyOVyZGZmPmwscezG9TSM3VY9jLGHoOmZFuv4HmSPjrOzM9XV1Yltrq6uNGjQIHG5traWOnXqRFu3biUioo0bN5KrqyspFAqxj1wuJ6lUSgcOHGixnpb26GRmZhIAKiwsbHEbR0dH+s9//qPUtmjRIvL19SUiovXr15OZmRn98ccfLW4/YMAACg8PV2qbMGECjRkzRlwGQP/85z/F5YqKChIEgX788UciIvrHP/5B7u7uSlk/+OADpSyenp4UExPTYg1Nbd++nczNzen27dstrm9pj86rr74qLisUCrK1taUvvviCiNp/DgYNGkRLlixRatuyZQvZ2dmpVG9Le3SIiHx9fcnPz48uX75MtbW1tGXLFhIEgXr27NniOLGxsWRpaUmVlZViW1xcHBkZGTXrO3z4cHrjjTdarSk8PJyGDx/erN3IyKjZ64XowfboGBoaUlxcnFJba3US8R4dxh4W79FhavXss89CT+/+y65Lly7w9PQUl/X19WFtbY3S0lIA9Z/Ef/vtN5iZmcHU1BSmpqawsrJCVVUV/ve//6n8uF5eXvD394enpycmTJiADRs2oKysDABw/fp1FBcXY9q0aeJjmJqa4uOPPxYfIzs7G8899xysrKxaHD8/Px8DBw5Uahs4cCDy8/OV2nr37i3+u1OnTjAzMxOz5ufno3///hAEQezj6+urtH1ERAQ+/vhjDBw4ENHR0cjJyWk18/Dhw+Hs7Ixu3bohNDQUcXFxuHfvXpvPU+P6BEGATCYT62vvOcjMzMTChQuVnsPw8HCUlJS0+7ht2bJlC4gIDg4OkEgk+Ne//oVXXnkF+vr6LfbftGkTJk+e3GwvUEuISHy+R48eLdb97LPPin0a/z5a2q49RUVFSs/JkiVLWh37QcZljKnGQNMFsCeLoaGh0rIgCC22NXwdolAo4OPjg7i4uGZj2djYqPy4+vr6OHToEFJTU3Hw4EGsXbsWUVFRSE9Ph4mJCYD6r6+ef/75ZtsB9V+VtEeV/7Taykr//zVaW15//XWMHDkSe/fuxcGDB7F06VKsWrUK77zzTrO+ZmZm+Pnnn5GUlISDBw/io48+QkxMDDIyMlo9SLut+tp7DhQKBRYsWIDx48c3W6fKpKM1zzzzDI4fP467d+/i9u3bsLOzQ0hICFxcXJr1PXHiBM6fP4+EhASldplMhurqapSVlcHS0lJsLy0txYABAwAA//73v1FZWQng/vMgk8mUDg4GgLKyMtTU1KBLly4q1W9vb4/s7GxxuWGiKJPJcPXqVaW+paWlKo/LGFMN79FhWs3b2xu//vorbG1t0b17d6UfCwuLBxpLEAQMHDgQCxYsQFZWFoyMjLBjxw506dIFDg4O+P3335s9RsN/pr1790Z2drZ4PE1T7u7uzY4ZSU1Nhbu7u8r1eXh44NSpU0ptTZcBwNHREdOnT0diYiJmz56NDRs2tDqmgYEBhg0bhuXLlyMnJweFhYU4evSoyjU11t5z4O3tjfPnzzd7Drt37660F+9hderUCXZ2digrK8OBAwcQGBjYrM/GjRvh4+MDLy8vpXYfHx8YGhri0KFDYltJSQnOnDkjTnQcHBzEep2dnQHU71E7c+YMSkpKxO0OHjwIiUQCHx8fleo2MDBQei4aJjq+vr5K9TSM3VAPY+zR4D06TKtNnjwZK1asQGBgIBYuXIiuXbuiqKgIiYmJmDt3Lrp27arSOOnp6Thy5AhGjBgBW1tbpKen4/r16+JEJCYmBhERETA3N8fo0aMhl8tx+vRplJWV4b333sOkSZOwZMkSjBs3DkuXLoWdnR2ysrJgb28PX19fzJ07F8HBwfD29oa/vz92796NxMREHD58WOWs06dPx6pVq/Dee+/hzTffRGZmZrPrAEVGRmL06NHo2bMnysrKcPTo0VYnU3v27MHvv/+OwYMHw9LSEvv27YNCoYCrq6vKNTXW3nPw0UcfISAgAI6OjpgwYQL09PSQk5OD3NxcfPzxxy2OWV1djby8PPHfly9fRnZ2NkxNTdG9e3cA9Qc5ExFcXV3x22+/Ye7cuXB1dcXUqVOVxrp9+za2bduGVatWNXscCwsLTJs2DbNnz4a1tTWsrKwwZ84ceHp6tnlK+IgRI+Dh4YHQ0FCsWLECN2/exJw5cxAeHg5zc3OxX15eHqqrq3Hz5k3cuXNH3IPT1gUzZ82ahcGDByM2NhaBgYHYtWsXDh8+rDRhrqiowG+//SYuFxQUIDs7G1ZWVnBycmp1bMZYIxo8PojpiAc9vbyxpgfEEjU/KLWkpIRee+016ty5M0kkEurWrRuFh4e3eHovUcsHI+fl5dHIkSPJxsaGJBIJ9ezZk9auXau0XVxcHPXp04eMjIzI0tKSBg8eTImJieL6wsJCCgoKInNzczIxMaG+fftSenq6uF6V08ubHkxqYWFBmzdvFpd3794tng4+aNAg2rRpk1KWmTNn0jPPPEMSiYRsbGwoNDSUbty40eLzcOLECfLz8yNLS0uSSqXUu3dvSkhIENe3dDBy04OBvby8KDo6WuXnYP/+/TRgwACSSqVkbm5O/fr1o6+++qrF+oiICgoKCECzHz8/P7FPQkICdevWjYyMjEgmk9GMGTOovLy82Vjr168nqVTa4joiosrKSpo5cyZZWVmRVCqlgIAAKioqarW2BhcvXqSxY8eSVColKysrmjlzJlVVVSn1cXZ2bjFHe7Zt20aurq5kaGhIbm5utH37dqX1Da/lpj9hYWHtjs0YqycQqXBgAGMdSFJSEoYOHYqysjK+YCBjjD3h+BgdprO6du2KSZMmaboMxhhjGsR7dJjOqaysFG8PYGpq2uqtBRhjjOk+nugwxhhjTGfxV1eMMcYY01k80WGMqU1hYSEEQYAgCG2ees0YY48KT3QY06B169bBxcUFxsbG8PHxwYkTJ8R1RISYmBjY29tDKpViyJAhOHv2bLtj5ubmws/PD1KpFA4ODli4cGGzqy4fP34cPj4+MDY2Rrdu3fDll1+2O65cLsc777yDzp07o1OnTnjppZdw6dIlpT5lZWUIDQ2FhYUFLCwsEBoaivLycnG9o6MjSkpKMHv27HYfjzHGHgWe6DCmIQkJCYiMjERUVBSysrIwaNAgjB49GkVFRQCA5cuX45NPPsFnn32GjIwMyGQyDB8+HHfu3Gl1zNu3b2P48OGwt7dHRkYG1q5di5UrV+KTTz4R+xQUFGDMmDEYNGgQsrKy8OGHHyIiIgLbt29vs97IyEjs2LED8fHxSElJQUVFBQICAlBXVyf2eeWVV5CdnY39+/dj//79yM7ORmhoqLheX18fMpms1TuuM8bYI6e5S/gw9mTr168fTZ8+XanNzc2N5s2bRwqFgmQyGS1btkxcV1VVRRYWFvTll1+2Oua6devIwsJC6YJ2S5cuJXt7e/Gu6O+//z65ubkpbffmm29S//79Wx23vLycDA0NKT4+Xmy7fPky6enp0f79+4mo/qKMAOjUqVNin7S0NAJA586dUxqv6cUkGWPsceE9OoxpQHV1NTIzMzFixAil9hEjRiA1NRUFBQW4evWq0nqJRAI/Pz+kpqaKbVOmTMGQIUPE5bS0NPj5+UEikYhtI0eOxJUrV1BYWCj2afq4I0eOxOnTp1FTUwOg/qKLgiCI22RmZqKmpkZpO3t7e/Tq1UusJy0tDRYWFko3Ru3fvz8sLCyUamaMMXXiiQ5jGnDjxg3U1dU1u1N1ly5dcPXqVfGu1q2tb2BnZ6d0z6OrV6+2uE3Durb61NbW4saNGwAAExMTuLq6infxvnr1KoyMjJTu/N20nqtXr8LW1rZZVltb22Z36WaMMXXhm3oypkGCICgtE5FSW3vrly5dqtKYTdvb69OvXz+cO3eu3frbq7elPowxpk68R4cxDejcuTP09fWb7ekoLS1Fly5dxKs5t7a+NTKZrMVtgPt7dlrrY2BgAGtr61bHra6uRllZWav1yGQyXLt2rdm2169fb7Nmxhh7nHiiw5gGGBkZwcfHB4cOHVJqP3ToEAYMGAAXFxfIZDKl9dXV1Th+/DgGDBjQ6ri+vr5ITk5GdXW12Hbw4EHY29vj6aefFvs0fdyDBw+ib9++4ldVTfn4+MDQ0FBpu5KSEpw5c0asx9fXF7du3cJPP/0k9klPT8etW7farJkxxh4rTR4JzdiTLD4+ngwNDWnjxo2Ul5dHkZGR1KlTJyosLCQiomXLlpGFhQUlJiZSbm4uTZo0iezs7Oj27dviGPPmzaPQ0FBxuby8nLp06UKTJk2i3NxcSkxMJHNzc1q5cqXY5/fffycTExN69913KS8vjzZu3EiGhob03//+V+yTnp5Orq6udOnSJbFt+vTp1LVrVzp8+DD9/PPP9MILL5CXlxfV1taKfUaNGkW9e/emtLQ0SktLI09PTwoICGiWnc+6YoypC090GNOgzz//nJydncnIyIi8vb3p+PHj4jqFQkHR0dEkk8lIIpHQ4MGDKTc3V2n7sLAw8vPzU2rLycmhQYMGkUQiIZlMRjExMeKp5Q2SkpLoueeeIyMjI3r66afpiy++UFp/7NgxAkAFBQViW2VlJc2cOZOsrKxIKpVSQEAAFRUVKW33xx9/0OTJk8nMzIzMzMxo8uTJVFZW1iw3T3QYY+rCN/VkjKldTEwMdu7ciezsbE2XwhjTcXzWFWNMbYqKiuDh4YHq6mp4eHhouhzG2BOA9+gwxtSmtrZWvAihRCKBo6OjZgtijOk8nugwxhhjTGfx6eWMMcYY01k80WGMMcaYzuKJDmOMMcZ0Fk90GGOMMaazeKLDGGOMMZ3FEx3GGGOM6Sye6DDGGGNMZ/FEhzHGGGM66/8A7wPjWN8HlXkAAAAASUVORK5CYII=", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "ds['vel'][1].plot()" - ] - }, - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### 2.4 Rotate Data Coordinate System\n", - "\n", - "After cleaning the data, the next step is to rotate the velocity data into accurate East, North, Up (ENU) coordinates.\n", - "\n", - "ADCPs utilize an internal compass or magnetometer to determine magnetic ENU directions. You can use the set_declination function to adjust the velocity data according to the magnetic declination specific to your geographical coordinates. This declination can be looked up online for specific coordinates.\n", - "\n", - "Instruments save vector data in the coordinate system defined in the deployment configuration file. To make this data meaningful, it must be transformed through various coordinate systems (\"beam\"<->\"inst\"<->\"earth\"<->\"principal\"). This transformation is accomplished using the `rotate2` function. If the \"earth\" (ENU) coordinate system is specified, DOLfYN will automatically rotate the dataset through the required coordinate systems to reach the \"earth\" coordinates. Setting `inplace` to true will modify the input dataset directly, meaning it will not create a new dataset.\n", - "\n", - "In this case, since the ADCP data is already in the \"earth\" coordinate system, the `rotate2` function will return the input dataset without modifications. The `set_declination` function will work no matter the coordinate system." - ] - }, - { - "cell_type": "code", - "execution_count": 13, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Data is already in the earth coordinate system\n" - ] - } - ], - "source": [ - "dolfyn.set_declination(ds, 15.8, inplace=True) # 15.8 deg East\n", - "dolfyn.rotate2(ds, 'earth', inplace=True)" - ] - }, - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "To rotate into the principal frame of reference (streamwise, cross-stream, vertical), if desired, we must first calculate the depth-averaged principal flow heading and add it to the dataset attributes. Then the dataset can be rotated using the same `rotate2` function. We use `inplace=False` because we do not want to alter the input dataset here." - ] - }, - { - "cell_type": "code", - "execution_count": 14, - "metadata": {}, - "outputs": [], - "source": [ - "ds.attrs['principal_heading'] = dolfyn.calc_principal_heading(ds['vel'].mean('range'))\n", - "ds_streamwise = dolfyn.rotate2(ds, 'principal', inplace=False)" - ] - }, - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## 3. Average the Data\n", - "\n", - "As this deployment was configured in \"burst mode\", a standard step in the analysis process is to average the velocity data into time bins. \n", - "\n", - "However, if the instrument was set up in an \"averaging mode\" (where a specific profile and/or average interval was set, for instance, averaging 5 minutes of data every 30 minutes), this step would have been performed within the ADCP during deployment and can thus be skipped.\n", - "\n", - "To average the data into time bins (also known as ensembles), you should first initialize the binning tool `ADPBinner`. The parameter \"n_bin\" represents the number of data points in each ensemble. In this case, we're dealing with 300 seconds' worth of data. The \"fs\" parameter stands for the sampling frequency, which for this deployment is 1 Hz. Once the binning tool is initialized, you can use the `bin_average` function to average the data into ensembles." - ] - }, - { - "cell_type": "code", - "execution_count": 15, - "metadata": { - "scrolled": true - }, - "outputs": [], - "source": [ - "avg_tool = api.ADPBinner(n_bin=ds.fs*300, fs=ds.fs)\n", - "ds_avg = avg_tool.bin_average(ds)" - ] - }, - { - "cell_type": "code", - "execution_count": 16, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "
<xarray.Dataset>\n",
-              "Dimensions:         (time: 183, dirIMU: 3, range: 28, dir: 4, beam: 4,\n",
-              "                     earth: 3, inst: 3, q: 4, time_b5: 183, range_b5: 28)\n",
-              "Coordinates:\n",
-              "  * time            (time) datetime64[ns] 2020-08-15T00:22:30.001030683 ... 2...\n",
-              "  * dirIMU          (dirIMU) <U1 'E' 'N' 'U'\n",
-              "  * range           (range) float64 1.2 1.7 2.2 2.7 3.2 ... 13.2 13.7 14.2 14.7\n",
-              "  * dir             (dir) <U2 'E' 'N' 'U1' 'U2'\n",
-              "  * beam            (beam) int32 1 2 3 4\n",
-              "  * earth           (earth) <U1 'E' 'N' 'U'\n",
-              "  * inst            (inst) <U1 'X' 'Y' 'Z'\n",
-              "  * q               (q) <U1 'w' 'x' 'y' 'z'\n",
-              "  * time_b5         (time_b5) datetime64[ns] 2020-08-15T00:22:29.938495159 .....\n",
-              "  * range_b5        (range_b5) float64 1.2 1.7 2.2 2.7 ... 13.2 13.7 14.2 14.7\n",
-              "Data variables: (12/38)\n",
-              "    c_sound         (time) float32 1.502e+03 1.502e+03 ... 1.499e+03 1.498e+03\n",
-              "    U_std           (range, time) float32 0.04232 0.04293 0.04402 ... nan nan\n",
-              "    temp            (time) float32 14.49 14.59 14.54 14.45 ... 13.62 13.56 13.5\n",
-              "    pressure        (time) float32 9.712 9.699 9.685 9.67 ... 9.58 9.584 9.591\n",
-              "    mag             (dirIMU, time) float32 72.37 72.4 72.38 ... -197.1 -197.1\n",
-              "    accel           (dirIMU, time) float32 -0.3584 -0.361 ... 9.714 9.712\n",
-              "    ...              ...\n",
-              "    boost_running   (time) float32 0.1267 0.1333 0.13 ... 0.2267 0.22 0.22\n",
-              "    heading         (time) float32 3.287 3.261 3.337 3.289 ... 3.331 3.352 3.352\n",
-              "    pitch           (time) float32 -0.05523 -0.07217 ... -0.04288 -0.0429\n",
-              "    roll            (time) float32 -7.414 -7.424 -7.404 ... -6.446 -6.433 -6.436\n",
-              "    water_density   (time) float32 1.023e+03 1.023e+03 ... 1.023e+03 1.023e+03\n",
-              "    depth           (time) float32 10.28 10.26 10.25 10.23 ... 10.14 10.15 10.15\n",
-              "Attributes: (12/41)\n",
-              "    fs:                        1\n",
-              "    n_bin:                     300\n",
-              "    n_fft:                     300\n",
-              "    description:               Binned averages calculated from ensembles of s...\n",
-              "    filehead_config:           {"CLOCKSTR": {"TIME": "\\"2020-08-13 13:56:21\\"...\n",
-              "    inst_model:                Signature1000\n",
-              "    ...                        ...\n",
-              "    has_imu:                   1\n",
-              "    beam_angle:                25\n",
-              "    h_deploy:                  0.6\n",
-              "    declination:               15.8\n",
-              "    declination_in_orientmat:  1\n",
-              "    principal_heading:         11.1898
" - ], - "text/plain": [ - "\n", - "Dimensions: (time: 183, dirIMU: 3, range: 28, dir: 4, beam: 4,\n", - " earth: 3, inst: 3, q: 4, time_b5: 183, range_b5: 28)\n", - "Coordinates:\n", - " * time (time) datetime64[ns] 2020-08-15T00:22:30.001030683 ... 2...\n", - " * dirIMU (dirIMU) " - ] - }, - "execution_count": 18, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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GFq6ea+e/XSTXvu8VPsam3pjvG6nzh5WoEuO66nj+2Qn7V+KgXZx7P/EMr0kRIMGiDGX06GzhhXorGEFWl1Wpec+26yXlm5RWWWdfv/uGj383jpdelxPXXdyH3XP4h0LABJDRW2jXlq6Rc9+tllflVU1z++fl65LjuupC0cVqWuaN445BJCsaNAAh9DAggz9+rwhumPiQL25olR/mb9eX5VV6a/vl+jJDzfolP65+t7oYn17cJ78Ht6CDaBzCYYMfbRul15YskVvrihVfaDpnVw+t1PnDi/UpccVa3QvRncEOopnaGKDBg1wGPjcLn1nVA9NGlmk99bs0CPvrdMnJbs1b/UOzVu9Q5l+ty4eU6xrTurDm7EBxN26HdX616ItennpVpVV1jXPH1SQoUuP66lJI4u4dRaIARo0sZE0DZqlGyuVntH0PWQYzfODQcOyXGMoPB0wQraw8LRhjaZAlHhmQdNy5vQkyWk6CC8aWRgxDSQuh8Oh8QPzNH5gntbtqNaLS7boxSVbVVpR19xrc/bR3XX9SX00vEdW0lZMAA6/usag3vqiVHM+2axPN+xunp+V4tF5I7rru8f00MjiLtRLiOrjdXst0+bfPV63dWActzM87fdYw7ym6RTbHQyW33G2n1y+/euoqmxse6aT3IIFC/S73/1OixcvVmlpqV566SVNmjQpapz58+drypQpWrlypQoLC3X77bfrxhtvPDwZbkXSNGiAzqZvt3TdduYgTTljoBas2aG/vr9eH6zdpdc+36bXPt+mgfkZ+t7oHrpgVCHvbABwyHxVVqlnP92sF5dsUWVd08svnQ7pW4Py9L3RPTR+UJ58bm6JBQ4Fh6PpE8v02qumpkYjRozQNddco+9+97sHXb6kpERnn322fvCDH+jpp5/WBx98oJtuukndunVrU/xDgQYNEGcup0PjB+Vp/KA8rdxWoccXluj1FaVavb1Kv3nzS9339lf69qA8XTG2l07sy1u1AXxztQ0Bvf55qeZ8tklLN+1tnl/UJUWXHFusi8YUqyCLP6QAyWDixImaOHFim5d/5JFH1LNnT82aNUuSNHjwYC1atEi///3vadAAkIYWZmnm5JG66/yhen35Nj2/eIuWbtqrd1dt17urtqt3TqouO76nJo0qotcGQLscePnls59t1qvLtqm6vqk3xu106Iwh+brkuJ46uR9/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10svvRSDrWi/DjVoPv30U7333nsqLy9vUQHPnDkzJhkDAAAAcGjNnDlT1113na6//npJ0qxZs/TOO+/o4Ycf1owZM1os//HHH6t37976yU9+Iknq06ePbrjhBv32t79t0/r+9re/KTc3V+ecc44k6fbbb9ejjz6qIUOGaM6cOW0eCMCs3e+huffee3XCCSfoySef1KJFi7R06dLmz7Jly9qdAQAAACAZHRi2OZYfqemVK+ZPfX19q+tvaGjQ4sWLNWHCBMv8CRMm6MMPP2w1zrhx47Rlyxa9+eabMgxD27dv1/PPP9/cQDmYe++9VykpTXdMfPTRR3rooYf029/+Vrm5ufrpT3/a1qKzaHcPzZ/+9Cc98cQTuvrqqzu0QgAAAACHjv1Z9rvuukvTpk1rsdzOnTsVDAaVn59vmZ+fn6+ysrJW0x43bpyeeeYZTZ48WXV1dQoEAjr//PP14IMPtilvmzdvVr9+/SRJL7/8sr73ve/phz/8oU488USddtppbUrDrt09NE6nUyeeeGKHVgYAAACgyYFnaGL5kZoaDRUVFc2fqVOnHiQf9uf9jIjvoFy1apV+8pOf6Ne//rUWL16st99+WyUlJbrxxhvbtM3p6enNAwi8++67Ov300yVJfr9f+/btixY1onb30Pz0pz/Vn//8Z82aNatDKwQAAABw6IZtzszMVGZm5kGXz83NlcvlatEbU15e3qLX5oAZM2boxBNP1G233SZJGj58uNLS0nTyySfrnnvuUffu3aOu84wzztD111+vUaNGac2aNc23qq1cuVK9e/c+aJ5b0+4Gzc9//nOdc8456tu3r4YMGdLifTMvvvhihzICAAAA4PDxer0aPXq05s6dq+985zvN8+fOnasLLrig1Ti1tbVyu61NCJeraRTMtoza9+c//1m//OUvtXnzZr3wwgvNr4ZZvHixLr300g5tR7sbND/+8Y81b948jR8/Xjk5ORG7owAAAABE5lDLV3V80/Taa8qUKbriiis0ZswYjR07Vo8++qg2bdrUfAvZ1KlTtXXrVv3973+XJJ133nn6wQ9+oIcfflhnnnmmSktLdeutt+q4445TYWFhxPU8+uijOv/881VQUKCHHnqoRfj06dM7kPsm7W7Q/P3vf9cLL7zQ5pEMAAAAAHROkydP1q5du3T33XertLRUw4YN05tvvtk8fHJpaak2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9tlnN88bPny4iouL9atf/UqTJk1qd/rtbtCkpqZq9uzZ+t3vfqd169bJMAz169dPaWlp7V75wRx77LF66aWXNHXqVN19993q06ePZs2ape9///sxXxcAAABwOB3oWYllep3dihUr1KdPnxbz+/Tpo1WrVnUozQ6/WDMtLa1DD+2017nnnqtzzz33kK8HAAAAwKE1ePBg3XPPPXr88cfl9/slNb125Z577tHgwYM7lGa7GzTjx4+P+jDPf//73w5lBAAAAEgmyTLKmdkjjzyi8847T8XFxRoxYoQk6fPPP5fD4dDrr7/eoTTb3aAZOXKkZbqxsVHLli3TF198oauuuqpDmQAAAACSTTLecnbccceppKRETz/9tL766isZhqHJkyfrsssu6/AjLO1u0Pzxj39sdf60adNUXV3doUwAAAAASA6pqan64Q9/GLP0YvZC0csvv1xPPPFErJIDAAAAjmgOR+w/ieD//u//dNJJJ6mwsFAbN26U1NRp8sorr3QovZg1aD766KPmB3sAAAAAwO7hhx/WlClTNHHiRO3Zs6f5RZpdu3bVrFmzOpRmu285s7880zAMlZaWatGiRfrVr37VoUwAAAAAycbpcMgZw26VWKZ1qDz44IN67LHHNGnSJN13333N88eMGaOf//znHUqz3Q2azMxMywgKTqdTAwcO1N13360JEyZ0KBMAAAAAjnwlJSUaNWpUi/k+n081NTUdSrPdDZqnnnqqQysCAAAAEOZUDJ//iHFah0qfPn20bNky9erVyzL/rbfe0pAhQzqUZrsbNEcddZQ+++wz5eTkWObv3btXxxxzjNavX9+hjAAAAADJJNYP8ifAHWe67bbbdPPNN6uurk6GYejTTz/VnDlzNGPGDP31r3/tUJrtbtBs2LCh+eEds/r6em3durVDmQAAAABw5LvmmmsUCAR0++23q7a2VpdddpmKior0pz/9SZdcckmH0mxzg+bVV19t/v7OO+8oKyureToYDOo///mPevfu3aFMAAAAAMnGqRgPCqAE6KKR9IMf/EA/+MEPtHPnToVCIeXl5X2j9NrcoJk0aZIkyeFw6KqrrrKEeTwe9e7dW3/4wx++UWYAAAAAHNkCgYDee+89rVu3Tpdddpkkadu2bcrMzFR6enq702tzgyYUCklqepDns88+U25ubrtXBgAAAKBJMj5Ds3HjRp11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", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "%matplotlib inline \n", - "from matplotlib import pyplot as plt\n", - "import matplotlib.dates as dt\n", - "\n", - "ax = plt.figure(figsize=(10,6)).add_axes([.14, .14, .8, .74])\n", - "# Plot flow speed\n", - "t = dolfyn.time.dt642date(ds_avg['time'])\n", - "plt.pcolormesh(t, ds_avg['range'], ds_avg['U_mag'], cmap='Blues', shading='nearest')\n", - "# Plot the water surface\n", - "ax.plot(t, ds_avg['depth'])\n", - "\n", - "# Set up time on x-axis\n", - "ax.set_xlabel('Time')\n", - "ax.xaxis.set_major_formatter(dt.DateFormatter('%H:%M'))\n", - "\n", - "ax.set_ylabel('Altitude [m]')\n", - "ax.set_ylim([0, 12])\n", - "plt.colorbar(label='Speed [m/s]')" - ] - }, - { - "cell_type": "code", - "execution_count": 19, - "metadata": { - "scrolled": false - }, - "outputs": [ - { - "data": { - "image/png": "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CiBJEmw2G3755RfMmjULN998s8cFISIiIiJqS4QX/vmaTZs24Y477nAan5ycjIKCAo/jNjnJefrpp5GWlobk5GSUl5eje/fuGDp0KIYMGYLHH3/c44IQEREREbUlvCfH/pyc0tJSp/F79+5FbGysx3GbnOT4+/vjgw8+wL59+/DJJ5/g/fffxx9//IH33nsPZrPZ44K4cuzYMdx4442Ijo5GSEgI+vbti6ysLN3XQ0RERER0Pgk03Jejy2D0Bnng6quvxj//+U/U1dUBACRJwtGjR/Hwww/j2muv9Tiuxw8D7dixIzp27Ojxit1x+vRpXHzxxRgxYgT+97//IS4uDgcPHkRkZKRX10tERERERN7373//G1deeSXi4uJQVVWFYcOGoaCgAIMHD8bTTz/tcVy3kpyZM2e6HXD+/PkeF0btueeeQ2pqKpYsWeIY1759e93iExEREREZRffe1XSMdb5ERETg559/xk8//YQtW7bAZrOhf//+GDVqVLPiupXkbN26VfE+KysLVqsVXbp0AQDs27cPZrMZAwYMaFZh1L788kuMGTMGf/7zn7FmzRokJyfjzjvvxO233+5ymZqaGtTU1DjeN3aNHxERERGR0ez30eh3kZkvXq521mWXXYbLLrtMt3huJTmrVq1yvJ4/fz7Cw8PxzjvvoF27dgDsl5XdcsstuPTSS3UrGAAcOnQIr7zyCmbOnIlHH30Uv/32G+69914EBga67Mlt3rx5mDt3rq7lICIiIiLSmwRAgn7NL77SkPPSSy+5Pe+9997r0TokIUSTkr7k5GSsWLECPXr0UIzfuXMnRo8ejby8PI8K0piAgABccMEFWL9+vWPcvffei02bNmHDhg2NLtNYS05qaip2bt6O8LDwRpawKd5J8r4YJOWuIoRNMacr6inC1TthU01pmKbe4SWpoVMHm6hzuW6nFF4WxiT5K2eVxVQvplUWd3ursGlMU9eR8r16SdlUVZ0pP6OmfLXlW6y1nEaFkpfJ67ophymt5Tyd5mo+79A60qiOSsp3su+HVVJ+U82yJU/vXaGYlv32N47X6zcrv2Nby4sdr4tV1RKEesfrClO9YlqECHC89lcdNYJNDX9fqxVWxbRQU8NxqsamnObup2JVzak8Sqhr0HVU+bz1qmOPWXK9HwjFa9fx1b++JllMm2qifH3e+DY05STLpvh9cG8+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1WsUGt94xf6pWrXG7qMZU4t8HU7HSMn1vuQpeTnV31PlMUS5Rvl+rlXX6u+D/J1Z4zIk9afs7jFLvT45k6T+bBtYm3DcdZe6XuTHIvV5iPz8TH3MCjxzvmTylXtT2vDlagCQkpKCJ554Ak888QRWrVqFt956C3feeSfuueceXHfddbj11lsxaNAgj2K3mSSHiIiIiKglkSTJ+Y/JzYznq0aMGIERI0agrKwMH374IR599FG8+eabqK+v9ygekxwiIiIiIiO08ZYctUOHDuHtt9/G22+/jZKSEowaNcrjWExyiIiIiIiMwCQHVVVV+O9//4slS5Zg7dq1SEtLw1//+lfccsstSE1N9TgukxwiIiIiIiNIJuf7sJsbz0esX78eS5YswSeffILa2lpMnDgR33//fbNab+SY5BARERERGcFsgmTWMzHxnSTnkksuQZ8+ffD000/jL3/5C9q1a6drfCY5RERERERGaMOXq23evBn9+/f3WnwmOUREREREhtA5ydGtw3Tv82aCAzDJISIiIiIyRhtuyfE2JjlERERERAaQTBIkk47PydExlq9jkkNEREREZAS25HgNkxwiIiIiIiOYTPZBz3gEgEkOEREREZExJOjbV4CPNOT069cPkputTlu2bPFoHT6V5MybNw+PPvoo7rvvPixcuNDo4hARERERec4k2Qc94/mAiRMnen0dPpPkbNq0Ca+99hp69+5tdFGIiIiIiJqvjd6TM3v2bK+vwycu3CsvL8df/vIXvP7667o/DZWIiIiIyBASGhIdXQajN6jl8Ikk56677sJVV12FUaNGnXPempoalJaWKgYiIiIiopZGkiTdB19jtVrx73//GxdeeCESEhIQFRWlGDzV4pOcpUuXYsuWLZg3b55b88+bNw8Wi8UxpKamermEREREREQeOHtPjp6Dj5k7dy7mz5+PyZMno6SkBDNnzsSkSZNgMpkwZ84cj+O26CQnJycH9913H95//30EBQW5tcwjjzyCkpISx5CTk+PlUhIREREReYBJDj744AO8/vrrmDVrFvz8/HD99dfjjTfewD/+8Q9s3LjR47gtuuOBrKwsFBYWYsCAAY5xVqsVa9euxcsvv4yamhqYzWbFMoGBgQgMDHSKJWxWCJsVACCZZMtIQjmjrJlP8vDCRvVyQv5eMUmZY0qSWfZaOU0eQ1ItJzSKKd88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REREREQtUIu+J6e2thZZWVl4+OGHFeNHjx6N9evXN7pMTU0NampqHO9LSkoAAKWlpd4rKBERERG1GGfP+4QQBpdEW0V5ua6tLxXl5TpG820tOsk5efIkrFYr4uPjFePj4+NRUFDQ6DLz5s3D3LlzncanpqZ6pYxERERE1DKVlZXBYrEYXQwnAQEBSEhIwKBhg3SPnZCQgICAAN3j+poWneScJUnKHFcI4TTurEceeQQzZ850vLfZbDh16hSio6NdLtMWlZaWIjU1FTk5OYiIiDC6OD6P9akv1qe+WJ/6Yn3qi/WpL9annRACZWVlSEpKMroojQoKCkJ2djZqa2t1jx0QEICgoCDd4/qaFp3kxMTEwGw2O7XaFBYWOrXunBUYGIjAwEDFuMjISG8V0edFRES06YOg3lif+mJ96ov1qS/Wp75Yn/pifaJFtuDIBQUFMRnxohbd8UBAQAAGDBiAlStXKsavXLkSQ4YMMahURERERETUkrXolhwAmDlzJm666SZccMEFGDx4MF577TUcPXoU06dPN7poRERERETUArX4JGfKlCkoKirCP//5T+Tn56Nnz5749ttvkZ6ebnTRfFpgYCBmz57tdGkfeYb1qS/Wp75Yn/pifeqL9akv1ieRnSRaet96RERERERETdCi78khIiIiIiJqKiY5RERERETUqjDJISIiIiKiVoVJDhERERERtSpMcnzU4sWLkZGRgaCgIAwYMADr1q0DANTV1eGhhx5Cr169EBoaiqSkJNx8883Iy8s7Z8wdO3Zg2LBhCA4ORnJyMv75z39C3S/FmjVrMGDAAAQFBaFDhw549dVXvbJ955ur+lS74447IEkSFi5ceM6YrE/X9blnzx5MmDABFosF4eHhuOiii3D06FHNmKzPxuuzvLwcd999N1JSUhAcHIxu3brhlVdeOWfMtlifa9euxfjx45GUlARJkvD5558rpgshMGfOHCQlJSE4OBjDhw/Hrl27zhm3LdYloF2f/C1qunPtn3L8LSJygyCfs3TpUuHv7y9ef/11sXv3bnHfffeJ0NBQceTIEVFcXCxGjRolPv74Y/HHH3+IDRs2iEGDBokBAwZoxiwpKRHx8fHiuuuuEzt27BCfffaZCA8PF//+978d8xw6dEiEhISI++67T+zevVu8/vrrwt/fX3z66afe3mSv0qpPueXLl4s+ffqI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", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "ax = plt.figure(figsize=(10,6)).add_axes([.14, .14, .8, .74])\n", - "# Plot flow direction\n", - "plt.pcolormesh(t, ds_avg['range'], ds_avg['U_dir'], cmap='twilight', shading='nearest')\n", - "# Plot the water surface\n", - "ax.plot(t, ds_avg['depth'])\n", - "\n", - "# set up time on x-axis\n", - "ax.set_xlabel('Time')\n", - "ax.xaxis.set_major_formatter(dt.DateFormatter('%H:%M'))\n", - "\n", - "ax.set_ylabel('Altitude [m]')\n", - "ax.set_ylim([0, 12]);\n", - "plt.colorbar(label='Horizontal Vel Dir [deg CW from true N]');" - ] - }, - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Saving and Loading DOLfYN datasets\n", - "Datasets can be saved and reloaded using the `save` and `load` functions. Xarray is saved natively in netCDF format, hence the \".nc\" extension.\n", - "\n", - "Note: DOLfYN datasets cannot be saved using xarray's native `ds.to_netcdf`; however, DOLfYN datasets can be opened using `xarray.open_dataset`." - ] - }, - { - "cell_type": "code", - "execution_count": 20, - "metadata": {}, - "outputs": [], - "source": [ - "# Uncomment these lines to save and load to your current working directory\n", - "#dolfyn.save(ds, 'your_data.nc')\n", - "#ds_saved = dolfyn.load('your_data.nc')" - ] - }, - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## 7. Turbulence Statistics\n", - "\n", - "The next section of this jupyter notebook will run through the turbulence analysis of the data presented here. There was no intention of measuring turbulence in the deployment that collected this data, so results depicted here are not the highest quality. The quality of turbulence measurements from an ADCP depend heavily on the quality of the deployment setup and data collection, particularly instrument frequency, samping frequency and depth bin size.\n", - "\n", - "Read more on proper ADCP setup for turbulence measurements in: Thomson, Jim, et al. \"Measurements of turbulence at two tidal energy sites in Puget Sound, WA.\" IEEE Journal of Oceanic Engineering 37.3 (2012): 363-374.\n", - "\n", - "Most functions related to turbulence statistics in MHKiT-DOLfYN have the papers they originate from referenced in their docstrings.\n", - "\n", - "### 7.1 Turbulence Intensity\n", - "For most users, turbulence intensity (TI), the ratio of the ensemble standard deviation to ensemble flow speed given as a percent, is all most will need. In MHKiT, this is simply calculated as `.velds.I`\n", - "\n" - ] - }, - { - "cell_type": "code", - "execution_count": 21, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 21, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjcAAAHOCAYAAABkXSjiAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/NK7nSAAAACXBIWXMAAA9hAAAPYQGoP6dpAABvpElEQVR4nO3de1xUdf4/8NeZAQZEwDtkIqKLqWle8Iam5bpibrVqudINrZ9+0zTz0k0y89KmuXlBLS27aO5uRm3bWq2l1GZqWpsE3dzSTIM1CG/cYQZmPr8/zmXmDIPCDHAGeD17zGOYcz6fz3l/zvmc08fPuUlCCAEiIiKiZsJkdABERERE9YmdGyIiImpW2LkhIiKiZoWdGyIiImpW2LkhIiKiZoWdGyIiImpW2LkhIiKiZoWdGyIiImpWAowOoKE5HA788ssvCAsLgyRJRodDRER+TAiB4uJidO7cGSZTw/37v6KiAjabzedygoKCEBwcXA8RNS/NvnPzyy+/IDo62ugwiIioCcnJyUGXLl0apOyKigq0D2mFMvj+goCoqCicOnWKHRw3zb5zExYWBkBuqOHh4QZHQ0RE/qyoqAjR0dHa/zsags1mQxkEkhGKIHh/RsEGgb/k5cFms7Fz46bZd27UU1Hh4eHs3BARUa00xmUMQZB86txQzZp954aIiMgfmSDB5EMnysTXXteInRsiIiIDmODbLcu83blmXDdERETUrHDkhoiIyACSBJh8uORGAlAPN1w1S+zcEBERGYCnpRoOOzdEREQGMEk+XlAMcOSmBuz4ERERUbPCkRsiIiID8LRUw2HnhoiIyAAmHy8oZuemZlw3RERE1Kxw5IaIiMgAPC3VcNi5ISIiMoAkST69w4pvpaoZO35ERETUrHDkhoiIyAA8LdVw2LkhIiIyAO+WajhcN0RERNSscOSGiIjIABJ8G2HgBcU1Y+eGiIjIAPXybinyiJ0bIiIiA/CC4obDdUNERETNCkduiIiIDMC7pRoOOzdEREQG4GmphsN1Q0RERM0KR26IiIgMYIIEkw83dHN0ombs3BARERmA19w0HK4bIiIialYM7dwcOHAAN998Mzp37gxJkvDPf/5TN18IgeXLl6Nz584ICQnB9ddfj++++86YYImIiOqRqR4+5Jmh66a0tBT9+/fHs88+63H+n//8Z6xfvx7PPvssvvjiC0RFRWHcuHEoLi5u5EiJiIjql3paypcPeWboNTcTJkzAhAkTPM4TQiA1NRVLlizBLbfcAgB49dVXERkZiddeew2zZs1qzFCJiIioifDbUa1Tp04hLy8PiYmJ2jSLxYLrrrsOhw8frjGf1WpFUVGR7kNERORv5BdnSl5/vB242bJlC2JjYxEcHIz4+HgcPHiwVvk+/fRTBAQEYMCAAbrpO3bsgCRJ1T4VFRVeRug7v+3c5OXlAQAiIyN10yMjI7V5nqxevRoRERHaJzo6ukHjJCIi8oYRp6XS0tKwYMECLFmyBJmZmRg1ahQmTJiA7OzsS+YrLCzEtGnTMHbsWI/zw8PDkZubq/sEBwfXPcB64redG5Xk9sZUIUS1aa5SUlJQWFiofXJycho6RCIiojoz4oLi9evXY8aMGZg5cyZ69+6N1NRUREdHY+vWrZfMN2vWLNxxxx1ISEjwOF+SJERFRek+RvLbzo26YtxHafLz86uN5riyWCwIDw/XfYiIiJor90sxrFarx3Q2mw0ZGRm6yz0AIDEx8ZKXe2zfvh0nT57EsmXLakxTUlKCmJgYdOnSBTfddBMyMzO9q0w98dvOTWxsLKKiopCenq5Ns9ls+OSTTzBixAgDIyMiIvJdfZ2Wio6O1l2OsXr1ao/LO3fuHOx2e50u9zhx4gQWL16Mv/3tbwgI8HwPUq9evbBjxw6888472LVrF4KDgzFy5EicOHHC+5XjI0PvliopKcGPP/6o/T516hSysrLQrl07dO3aFQsWLMCqVasQFxeHuLg4rFq1Cq1atcIdd9xhYNRERES+8/31C3LenJwc3VkKi8VyyXy1vdzDbrfjjjvuwIoVK9CzZ88ayxs+fDiGDx+u/R45ciQGDRqEzZs3Y9OmTbWqS30ztHNz9OhRjBkzRvu9aNEiAMD06dOxY8cOPPLIIygvL8ecOXNw8eJFDBs2DPv27UNYWJhRIRMREfmV2l6C0aFDB5jN5lpf7lFcXIyjR48iMzMT999/PwDA4XBACIGAgADs27cPv/3tb6vlM5lMGDJkSMsdubn++ushhKhxviRJWL58OZYvX954QRERETWCxn63VFBQEOLj45Geno7Jkydr09PT0zFx4sRq6cPDw/HNN9/opm3ZsgX//ve/8fe//x2xsbEelyOEQFZWFvr161fHCOsPX5xJRERkAEn5+JK/rhYtWoTk5GQMHjwYCQkJ2LZtG7KzszF79mwA8h3HZ86cwc6dO2EymdC3b19d/k6dOiE4OFg3fcWKFRg+fDji4uJQVFSETZs2ISsrC88995wPtfMNOzdEREQtRFJSEs6fP4+VK1ciNzcXffv2xZ49exATEwMAyM3Nvewzb9wVFBTg3nvvRV5eHiIiIjBw4EAcOHAAQ4cObYgq1IokLnVeqBkoKipCREQECgsLeVs4ERFdUmP8P0NdxpawdgiRvL9puVw4MKf4Av//5gFHboiIiAxQX3dLUXV++5wbIiIiIm9w5IaIiMgAjX23VEvCzg0REZEB5LeC+5afPGPnhoiIyABG3AreUnBUi4iIiJoVjtwQEREZwCRJMHl4p1Ot83Pspkbs3BARERmAp6UaDk9LERERUbPCkRsiIiIDcOSm4bBzQ0REZAB2bhoOT0sRERFRs8KRGyIiIgNIkgTJh7ulJI7d1IidGyIiIgPwtFTDYeeGiIjIACb4dm0IryupGdcNERERNSscuSEiIjKAJMkfr/PXXyjNDjs3REREBpCU/3zJT57xtBQRERE1Kxy5ISIiMgDvlmo47NwQEREZgJ2bhsPTUkRERNSscOSGiIjIACYAJh+GX0yi3kJpdti5ISIiMgDvlmo4PC1FREREzQpHboiIiAzCsZeG0WI6NyL7O4jQEPmHyeycoT4e0hwofwcEyd/2SiWj0H+75ikrkr+DguUkpfJvU5+R9Rk6ERF5IPJ+lP+wlsvflTbnvIJ8+Y9A+Zgu/pspfx8+AACQOnaU518T7ywwNxv2cmvDBezG5ycUs2dUoxbTuSEiIvInvBW84fCaGyIiImpWOHJDRERkABMkmHwYf/Elb3PHkRsiIiIDSPXw8caWLVsQGxuL4OBgxMfH4+DBg7XK9+mnnyIgIAADBgyoNu+tt95Cnz59YLFY0KdPH7z99tteRlc/2LkhIiJqIdLS0rBgwQIsWbIEmZmZGDVqFCZMmIDs7OxL5issLMS0adMwduzYavOOHDmCpKQkJCcn46uvvkJycjKmTp2Kzz//vKGqcVns3BARERlAvVvKl09drV+/HjNmzMDMmTPRu3dvpKamIjo6Glu3br1kvlmzZuGOO+5AQkJCtXmpqakYN24cUlJS0KtXL6SkpGDs2LFITU2te4D1hJ0bIiIiA9TXaamioiLdx2r1fDu7zWZDRkYGEhMTddMTExNx+PDhGuPcvn07Tp48iWXLlnmcf+TIkWpljh8//pJlNjR2boiIiJqw6OhoREREaJ/Vq1d7THfu3DnY7XZERkbqpkdGRiIvL89jnhMnTmDx4sX429/+hoAAz/cg5eXl1anMxsC7pYiIiAxQX++WysnJQXh4uDbdYrFcOp/b+SwhRLVpAGC323HHHXdgxYoV6NmzZ72U2VjYuSEiIjKASfLxreBK3vDwcF3npiYdOnSA2WyuNqKSn59fbeQFAIqLi3H06FFkZmbi/vvvBwA4HA4IIRAQEIB9+/bht7/9LaKiompdZmPhaSkiIqIWICgoCPHx8UhPT9dNT09Px4gRI6qlDw8PxzfffIOsrCztM3v2bFx11VXIysrCsGHDAAAJCQnVyty3b5/HMhsLR26IiIgMYMTrFxYtWoTk5GQMHjwYCQkJ2LZtG7KzszF79mwAQEpKCs6cOYOdO3fCZDKhb9++uvydOnVCcHCwbvr8+fMxevRorFmzBhMnTsTu3bvx4Ycf4tChQz7Uzjfs3BARERnAiM5NUlISzp8/j5UrVyI3Nxd9+/bFnj17EBMTAwDIzc297DNv3I0YMQKvv/46Hn/8cSxduhQ9evRAWlqaNrJjBEkI19ddNz9FRUWIiIhAwTeHEc63ghMRNRsN8VbwonIr2i1KRWFhYa2uY/GG+v+lvR06I9Tk/dUhpQ4Hxp/7pUFjbQjvvPNOnfOMGzcOISEhtU7PkRsiIiJqNJMmTapTekmScOLECXTv3r3WeVpM50aUFABByoiN2aXa6ohMsDKvskL+lpTetDqCoxsAVPI47PKv4ovKZIf89cNn8rfLvyK0f1Eo/4pAeYlcascr9XFYXHqm6miSvUpOGxqhr5RapsvtduLir/IfQcqtgIEWXWwIUH4XX9DySD0GgYhagIu58rdy7HI9rgmHcpxRRq9FVaUuraSOUFc5j2uScozSprkfN9XfrnksreQ86si3esxTjlGOL+QLU029hzrjVo9xgW63ONsq9PNdn8OijtA7lGNrtPw/Rik2R/4d2lr+NruM5IdFAOYKNBZvnzLsmr+pysvLQ6dOnWqVNiwsrM7lt5jODRERkT8xwbdblpvq7c7Tp0+v0ymmu+66q86n3di5ISIiokazffv2OqW/3HuvPGHnhoiIyABG3C3VUrBzQ0REZARJ8u0VBU30optBg+p2nackSXjnnXdw5ZVX1joPOzdERETUaLKysvDggw+idevWl00rhMDTTz9d45vOa8LODRERkQFa8mmphx9+uNZ3S61bt67O5bNzQ0REZICW2rk5deoUOqoPUayFY8eOoXPnznVaBjs3RERE1GjUVz3UVnR0dJ2X0VRvkyciImrSJOWCYl8+zVVpaSkOHDjgdX6O3BARERnAJMkfX/I3Vz/++CPGjBkDu91++cQe+PXITVVVFR5//HHExsYiJCQE3bt3x8qVK+FwOIwOjYiIyCeSSfL5Q5759cjNmjVr8Pzzz+PVV1/F1VdfjaNHj+Kee+5BREQE5s+fb3R4RERE5IV27dpdcr63IzYqv+7cHDlyBBMnTsSNN94IAOjWrRt27dqFo0ePGhwZERGRb1ryizOtVivuu+8+9OvXz+P8n3/+GStWrPC6fL/u3Fx77bV4/vnncfz4cfTs2RNfffUVDh06hNTUVKNDIyIi8klL7twMGDAA0dHRmD59usf5X331VfPt3Dz66KMoLCxEr169YDabYbfb8dRTT+H222+vMY/VatU9ybCoqKgxQiUiIqJauvHGG1FQUFDj/Hbt2mHatGlel+/XnZu0tDT89a9/xWuvvYarr74aWVlZWLBgATp37lxjb2/16tU+9faIiIgag6+3czflW8Efe+yxS86Pjo6u89vDXfl15+bhhx/G4sWLcdtttwEA+vXrh59//hmrV6+usXOTkpKCRYsWab+LiooQHR0NKTAIEMpdVmazM4O1XP9taSV/C7c7smwVzr+VBiXUaRVl+jxBwdXLcNj13yoh5K/yUrnogCDnPJOyeexV8nelTZkuxy/U6a4N3H05WhrlxrgqZVSrdRtnCHkn9WkcVfq8gUp97JWoRl22ltetfoEW59+VVn0e5bfUtW/1comao5IL8rf7vqseK9z3ecC5T6nHrSoP+yGgHRd0XMvxlMb1t7bvSkpoynHOpOzbyrHK43Nx1XmS8Lwcl+OCdtyC0KdRyw1rK3+7HqfdLy51/5+6tnwPNwAr61YKly9gFVXK8kOV9xq5HttDwwCp8f632JJPSzU0v+7clJWVwWTSN1az2XzJW8EtFgssFkuN84mIiMj/HThwAP3790dERESd8/r1c25uvvlmPPXUU/jXv/6F06dP4+2338b69esxefJko0MjIiLyCZ9QfGnXX389unfv3vxenLl582YsXboUc+bMQX5+Pjp37oxZs2bhiSeeMDo0IiIin/C01KWdOnUKp06dwt69e+uc1687N2FhYUhNTeWt30RERC1MTEwMYmJicP3119c5r193boiIiJorkyTB5MPwiy95/cnPP/+MvLw8SJKEyMjIOr813BO/vuaGiIiouVJPS/nyaco2bNiA6OhodO/eHQkJCRg+fDi6d++O6Ohon8/YcOSGiIjIABJ8fM6Np9vym4gnn3wSa9euxWOPPYbx48cjMjISQgjk5+dj7969WL58OUpKSvD44497VT47N0RERNSotm3bhldffRWTJk3STe/cuTMGDBiAnj174v7772fnhoiIqCmRTJ6fO1jr/O7PQWxCzp8/j6uuuqrG+T179sTFixe9Lp/X3BARERnB12fcNOGLboYOHYqnnnoKVVVV1eZVVVVh1apVGDp0qNflc+SGiIiIGtXmzZuRmJiITp064brrrkNkZCQkSUJeXh4OHDgAi8WC9PR0r8vnyA0REZEBjLpbasuWLYiNjUVwcDDi4+Nx8ODBGtMeOnQII0eORPv27RESEoJevXphw4YNujQ7duzwOLJUUVFRQ6nyuyKPHz+Op556CuHh4Th16hR++uknhIeH46mnnsL333+Pq6++2rsKgiM3REREhpA7KL68FbzuedLS0rBgwQJs2bIFI0eOxAsvvIAJEybg2LFj6Nq1a7X0oaGhuP/++3HNNdcgNDQUhw4dwqxZsxAaGop7771XSxceHo4ffvhBlzc4OPiSsYSFheG+++7DfffdV/eKXAZHboiIiFqI9evXY8aMGZg5cyZ69+6N1NRUREdHY+vWrR7TDxw4ELfffjuuvvpqdOvWDXfddRfGjx9fbbRHkiRERUXpPjUpKiqqU8zFxcV1Sg+wc0NERGSI+jotVVRUpPtYrVaPy7PZbMjIyEBiYqJuemJiIg4fPlyrmDMzM3H48GFcd911uuklJSWIiYlBly5dcNNNNyEzM7PGMtq2bYv8/PxaLQ8ArrzySvz000+1Tg/wtBQREZEh6uv1C9HR0brpy5Ytw/Lly6ulP3fuHOx2OyIjI3XTIyMjkZeXd8lldenSBWfPnkVVVRWWL1+OmTNnavN69eqFHTt2oF+/figqKsLGjRsxcuRIfPXVV4iLi6tWlhACL730Elq3bl2relZWVtYqnasW1bkRZSUAAMkc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W1u2bEFsbCyCg4MRHx+PgwcP1pj20KFDGDlyJNq3b4+QkBD06tULGzZsqJburbfeQp8+fWCxWNCnTx+8/fbbtYplyJAhOHHiBLZu3Yr//e9/WLt2ra5jAwB9+vTBbbfdVqc6cuSGiIjIAEa8WyotLQ0LFizAli1bMHLkSLzwwguYMGECjh07hq5du1ZLHxoaivvvvx/XXHMNQkNDcejQIcyaNQuhoaG49957AQBHjhxBUlISnnzySUyePBlvv/02pk6dikOHDmHYsGGXjOenn35CTEzMJdOEhoZi+/btdaonR26IiIiMoF7j48unjtavX48ZM2Zg5syZ6N27N1JTUxEdHY2tW7d6TD9w4EDcfvvtuPrqq9GtWzfcddddGD9+vG60JzU1FePGjUNKSgp69eqFlJQUjB07FqmpqZeNZ8yYMTh//ny16QUFBejevXud66di54aIiKgFsNlsyMjIQGJiom56YmIiDh8+XKsyMjMzcfjwYVx33XXatCNHjlQrc/z48bUq8/Tp07Db7dWmW61WnDlzplYxecLTUkREREaop7ulioqKdJMtFgssFku15OfOnYPdbkdkZKRuemRkJPLy8i65qC5duuDs2bOoqqrC8uXLMXPmTG1eXl5enct85513tL/37t2LiAjnXWt2ux0fffQRunXrdsmYLoWdGyIiIgNIJv0TQ7zJDwDR0dG66cuWLcPy5ctrzuf+CBQhLnv9zsGDB1FSUoLPPvsMixcvxm9+8xvcfvvtXpc5adIkLd/06dN18wIDA9GtWzesW7fukjFdCjs3RERERqinkZucnByEh4drkz2N2gBAhw4dYDabq42o5OfnVxt5cRcbGwsA6NevH3799VcsX75c69xERUXVuUyH8gyp2NhYfPHFF+jQocMll19XvOaGiIioCQsPD9d9aurcBAUFIT4+Hunp6brp6enpGDFiRK2XJ4TQvf8pISGhWpn79u2rVZmnTp2q944NwJEbIiIiQ6jviPIlf10tWrQIycnJGDx4MBISErBt2zZkZ2dj9uzZAICUlBScOXMGO3fuBAA899xz6Nq1q/bsmUOHDmHt2rWYN2+eVub8+fMxevRorFmzBhMnTsTu3bvx4Ycf4tChQx5j2LRpE+69914EBwdj06ZNl4z3gQceqHMdgSbQuTlz5gweffRRvP/++ygvL0fPnj3x8ssvIz4+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Momrr75anD59urHCr4b1YX0aE+vD+hA1N82ic7NixQqRmJioDcsWFBSI1q1baw+xunjxokhKShIdO3YUa9euFRUVFVreyspKsXv3btG+fXsRFxcn9u7da0gdXLE+rE9jYn1YH6LmJsDou7V8IYRASUkJDh8+jOjoaG36hQsXMGrUKHTo0AEA0Lp1a9x6663YsGEDrrjiCl0ZNpsNu3fvxsKFC7FkyZJGjd8d68P6NCbWh/Uhaq6a3LulDh06hK5du6Jr167atDlz5uDAgQO4+eabERwcjDVr1qBr1644f/48Ro8ejTlz5mDs2LEQQkCSJC2f+ttut8NsNhtRHdaH9WlUrA/rQ9QiNOIokU8++ugjERsbK2JiYsQVV1whkpOTxRdffCGEECI/P188//zz4v777xeRkZHir3/9qygsLBQfffSRSEpKEuPHj6/xDgOjsD6sT2NifVgfopakSXRucnJyREJCgliyZIn4+eefxbvvvisGDBggxo4dK3744Qct3VNPPSUmTZqke5bDk08+KeLj40VOTo4RoXvE+rA+jYn1YX2IWpom8fqF//73v8jMzMT06dPRtWtX3HTTTVizZg0cDgeeeOIJLd2hQ4dwzTXX6IZmS0pK0LZtW1x55ZVGhO4R68P6NCbWh/UhammaROfmwoUL6NWrFxwOhzbtd7/7HaZMmYLPP/8ce/bsAQAkJCQgNTUVmzdvRmZmJpYsWYJXX30VycnJkCQJwk8uL2J9WJ/GxPqwPkQtjoGjRrX2zTffCIvFIv75z3/qpn///fdi4sSJYvr06dq0W2+9VfTs2VP06tVLxMfHa0/l9CesD+vTmFgf1oeopWkyd0v9/ve/R1lZGd577z20bt1amz5//nwcP34cb7zxBsLCwlBRUYHi4mL88ssv6N+/v4ERXxrrw/o0JtaH9SFqSZrEaSkAWL16NT799FP89a9/hdVq1aZ37NgRx44dQ0hICADAYrGgY8eOfr/jsz6sT2NifVgfopakyTzEr3///nj00UexcuVKmM1m3H777XA4HPjPf/6DO++8EwEBclVcL7bzZ6yPf2N9/BvrQ0SX0mROS6nmzp2Lt956C127dkV+fj5atWqFN954A3379jU6NK+wPv6N9fFvrA8RedLkOjdWqxXHjh1DVlYWgoKCcOeddxodkk9YH//G+vg31oeIPGlynRsiIiKiS2kyFxQTERER1QY7N0RERNSssHNDREREzQo7N0RERNSssHNDREREzQo7N0RERNSssHNDREREzQo7N0RERNSssHND1Mzs378fkiShoKDA6FCIiAzBJxQTNXHXX389BgwYgNTUVACAzWbDhQsXEBkZyRctElGL1GTeCk5EtRMUFISoqCijwyAiMgxPSxE1YXfffTc++eQTbNy4EZIkQZIk7NixQ3daaseOHWjTpg3ee+89XHXVVWjVqhWmTJmC0tJSvPrqq+jWrRvatm2LefPmwW63a2XbbDY88sgjuPLKKxEaGophw4Zh//79xlSUiKgOOHJD1IRt3LgRx48fR9++fbFy5UoAwHfffVctXVlZGTZt2oTXX38dxcXFuOWWW3DLLbegTZs22LNnD3766SfceuutuPbaa5GUlAQAuOeee3D69Gm8/vrr6Ny5M95++23ccMMN+OabbxAXF9eo9SQiqgt2boiasIiICAQFBaFVq1baqajvv/++WrrKykps3boVPXr0AABMmTIFf/nLX/Drr7+idevW6NOnD8aMGYOPP/4YSUlJOHnyJHbt2oX//e9/6Ny5MwDgoYcewgcffIDt27dj1apVjVdJIqI6YueGqAVo1aqV1rEBgMjISHTr1g2tW7fWTcvPzwcAfPnllxBCoGfPnrpyrFYr2rdv3zhBExF5iZ0bohYgMDBQ91uSJI/THA4HAMDhcMBsNiMjIwNms1mXzrVDRETkj9i5IWrigoKCdBcC14eBAwfCbrcjPz8fo0aNqteyiYgaGu+WImriunXrhs8//xynT5/GuXPntNEXX/Ts2RN33nknpk2bhn/84x84deoUvvjiC6xZswZ79uyph6iJiBoOOzdETdxDDz0Es9mMPn36oGPHjsjOzq6Xcrdv345p06bhwQcfxFVXXYU//OEP+PzzzxEdHV0v5RMRNRQ+oZiIiIiaFY7cEBERUbPCzg0RERE1K+zcEBERUbPCzg0RERE1K+zcEBERUbPCzg0RERE1K+zcEBERUbPCzg0RERE1K+zcEBERUbPCzg0RERE1K+zcEBERUbPCzg0RERE1K/8fHjIq1Mp2PlcAAAAASUVORK5CYII=", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "# Turbulence Intensity\n", - "ds_avg['TI'] = ds_avg.velds.I\n", - "ds_avg['TI'].plot(cmap='Reds', ylim=(0,11))" - ] - }, - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### 7.2 Power Spectral Densities (Auto-Spectra)\n", - "\n", - "Other turbulence parameters include the TKE power- and cross-spectral densities (i.e the power spectra), turbulent kinetic energy (TKE, i.e. the variances of velocity vector components), Reynolds stress vector (i.e. the co-variances of velocity vector components), TKE dissipation rate, and TKE production rate. These quantities are primarily used to inform and verify hydrodynamic and coastal models, which take some or all of these quantities as input.\n", - "\n", - "The TKE production rate is the rate at which kinetic energy (KE) transitions from a useful state (able to do \"work\" in the physics sense) to turbulent; TKE is the actual amount of turbulent KE in the water; and TKE dissipation rate is the rate at which turbulent KE is lost to non-motion forms of energy (heat, sound, etc) due to viscosity. The power spectra are used to depict and quantify this energy in the frequency domain, and creating them are the first step in turbulence analysis.\n", - "\n", - "We'll start by looking at the power spectra, specifically the auto-spectra from the vertical beam (\"auto\" meaning the variance of a single vector direction, e.g. $\\overline{u'^2}$, vs \"cross\", meaning the covariance of two directions, e.g. $\\overline{u'w'}$). This can be done using the `power_spectral_density` function from the `ADPBinner` we created (\"avg_tool\"). We'll create spectra at the middle water column, at a depth of 5 m, and use a number of FFT's equal to 1/3 the bin size." - ] - }, - { - "cell_type": "code", - "execution_count": 22, - "metadata": {}, - "outputs": [], - "source": [ - "rng = 5 # m\n", - "vel_up = ds['vel_b5'].sel(range_b5=rng, method='nearest') # vertical velocity\n", - "U = ds_avg['U_mag'].sel(range=5, method='nearest') # flow speed, for plotting in the next block\n", - "\n", - "ds_avg['auto_spectra_5m'] = avg_tool.power_spectral_density(vel_up, freq_units='Hz', n_fft=ds_avg.n_bin//3)" - ] - }, - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "In the auto-spectra, we're primarly looking for three components: the energy-producing region, the isotropic turbulence region (so-called \"red noise\"), and the instrument noise floor (termed \"white noise\"). \n", - "\n", - "The block below organizes and plots the power spectra by the corresponding ensemble speed, averaging them by 0.1 m/s velocity bins. Note that if an ensemble is missing data that wasn't filled in, a power spectrum will not be calculated for that ensemble timestamp." - ] - }, - { - "cell_type": "code", - "execution_count": 23, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "[Text(0.5, 0, 'Frequency [Hz]'),\n", - " Text(0, 0.5, 'PSD [m2 s-2 Hz-1]'),\n", - " (0.01, 1),\n", - " (0.0005, 0.1)]" - ] - }, - "execution_count": 23, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "import numpy as np\n", - "import matplotlib.pyplot as plt\n", - "import matplotlib as mpl\n", - "plt.rcParams.update({'font.size': 18, \"font.family\": \"Times New Roman\"})\n", - "\n", - "\n", - "def plot_spectra_by_color(auto_spectra, U_mag, ax, fig, cbar_max=4.0):\n", - " U = U_mag.values\n", - " U_max = U_mag.max().values\n", - "\n", - " # Average spectra into 0.1 m/s velocity bins\n", - " speed_bins = np.arange(0.5, U_max, 0.1)\n", - " time = [t for t in auto_spectra.dims if 'time' in t][0]\n", - " S_group = auto_spectra.assign_coords({time: U}).rename({time: \"speed\"})\n", - " group = S_group.groupby_bins(\"speed\", speed_bins)\n", - " count = group.count().values\n", - " S = group.mean()\n", - "\n", - " # define the colormap\n", - " cmap = plt.cm.turbo\n", - " # define the bins and normalize\n", - " bounds = np.arange(0.5, cbar_max, 0.1)\n", - " norm = mpl.colors.BoundaryNorm(bounds, cmap.N)\n", - " colors = cmap(norm(speed_bins))\n", - "\n", - " # plot\n", - " for i in range(len(speed_bins)-1):\n", - " ax.loglog(auto_spectra[\"freq\"], S[i], c=colors[i])\n", - " ax.grid()\n", - "\n", - " # create a second axes for the colorbar\n", - " cax = fig.add_axes([0.8, 0.07, 0.03, 0.88])\n", - " #cax, _ = mpl.colorbar.make_axes(fig.gca())\n", - " sm = mpl.colorbar.ColorbarBase(cax, cmap=cmap, norm=norm,\n", - " spacing='proportional', ticks=bounds, boundaries=bounds, \n", - " format='%1.1f', label='Velocity [m/s]')\n", - " \n", - " # Add -5/3 slope line\n", - " m = -5/3\n", - " x = np.logspace(-1, 0.5)\n", - " y = 10**(-3)*x**m\n", - " ax.loglog(x, y, '--', c='black', label='$f^{-5/3}$')\n", - " ax.legend()\n", - "\n", - " return ax, sm\n", - "\n", - "\n", - "# Set up figure\n", - "fig, ax = plt.subplots(1, 1, figsize=(5,5))\n", - "fig.subplots_adjust(left=0.2, right=0.75, top=0.95, bottom=0.1)\n", - "\n", - "# Plot spectra by color\n", - "plot_spectra_by_color(ds_avg['auto_spectra_5m'], U, ax, fig, cbar_max=2.0)\n", - "# Set axes\n", - "ax.set(xlabel=\"Frequency [Hz]\", ylabel=\"PSD [m2 s-2 Hz-1]\", xlim=(0.01, 1), ylim=(0.0005, 0.1))\n" - ] - }, - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "In the figure above, we can see the energy-producing turbulent structures below a frequency of 0.2 Hz (one tick to the right of \"10^-1\"). The isotropic turbulence cascade, seen by the dashed f^(-5/3) slope (from Kolmogorov's theory of turbulence) begins at around 0.2 Hz and continues until we reach the Nyquist frequency at 0.5 Hz (1/2 the instrument's sampling frequency, 1 Hz). The instrument's noise floor can't be seen here, but will show up as the flattened part of the spectra at the highest frequencies. For this instrument (Nortek Signature1000), the noise floor typically varies around 10^-3, depending on flow speed and range distance.\n", - "\n", - "### 7.3 TKE Dissipation Rate\n", - "\n", - "Because we can see the isotropic turbulence cascade (0.2 - 0.5 Hz) at this depth bin (5 m altitude), we can calculate the TKE dissipation rate at this location from the spectra itself. This can be done using `dissipation_rate_LT83`, whose inputs are the power spectra, the ensemble speed, and the frequency range of the isotropic cascade." - ] - }, - { - "cell_type": "code", - "execution_count": 24, - "metadata": {}, - "outputs": [], - "source": [ - "# Frequency range of isotropic turubulence cascade\n", - "f_rng = [0.2, 0.5]\n", - "# Dissipation rate\n", - "ds_avg['dissipation_rate_5m'] = avg_tool.dissipation_rate_LT83(ds_avg['auto_spectra_5m'], U, freq_range=f_rng)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "We have just found the spectra and dissipation rate from a single depth bin at an altitude of 5 m from the seafloor, but typically we want the spectra and dissipation rates from the entire measurement profile. If we want to look at the spectra and dissipation rates from all depth bins, we can set up a \"for\" loop on the range coordinate and merge them together:" - ] - }, - { - "cell_type": "code", - "execution_count": 25, - "metadata": {}, - "outputs": [], - "source": [ - "import xarray as xr\n", - "\n", - "spec = [None]*len(ds.range)\n", - "e = [None]*len(ds.range)\n", - "\n", - "for r in range(len(ds['range'])):\n", - " # Calc spectra from each depth bin using the 5th beam\n", - " spec[r] = avg_tool.power_spectral_density(ds['vel_b5'].isel(range_b5=r), freq_units='Hz')\n", - " # Calc dissipation rate from each spectra\n", - " e[r] = avg_tool.dissipation_rate_LT83(spec[r], ds_avg.velds.U_mag.isel(range=r), freq_range=f_rng) # Hz\n", - "\n", - "ds_avg['auto_spectra'] = xr.concat(spec, dim='range')\n", - "ds_avg['dissipation_rate'] = xr.concat(e, dim='range')\n", - "\n", - "del spec, e # save memory" - ] - }, - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Now that we have a profile timeseries of dissipation rate, we need apply some quality control (QC). Since we can't look at each individual spectrum to ensure we can see the isotropic turbulence cascade, we want to QC the output from `dissipation_rate_LT83` to make sure what was calculated actually falls on a f^(-5/3) slope. We can do this using the function `check_turbulence_cascade_slope`, which uses linear regression on the log-transformed LT83 equation (ref. to Lumley and Terray, 1983, see docstring) to calculate the spectral slope for the given frequency range. \n", - "\n", - "In our case, we're calculating the slope of each spectrum between 0.2 and 0.5 Hz. We'll use a cutoff of 20% for the error, but this can be lowered if there still appear to be erroneous estimations from visual inspection of the spectra." - ] - }, - { - "cell_type": "code", - "execution_count": 26, - "metadata": {}, - "outputs": [], - "source": [ - "# Quality control dissipation rate estimation\n", - "slope = avg_tool.check_turbulence_cascade_slope(ds_avg['auto_spectra'], freq_range=f_rng)\n", - "\n", - "# Check that percent difference from -5/3 is not greater than 20%\n", - "mask = abs((slope[0].values - (-5/3)) / (-5.3)) <= 0.20\n", - "\n", - "# Keep good data\n", - "ds_avg['dissipation_rate'] = ds_avg['dissipation_rate'].where(mask)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "If we plot the dissipation rate below in a colormap, we can see that the profile map has a lot of missing data. One of the reasons is that the 1 Hz sampling rate doesn't provide enough information needed to make dissipation rate estimations, and the other part is that turbulence measurements push the boundaries of what ADCPs are capable of.\n", - "\n", - "Also, 5x10^-4 $m^2/s^3$ sounds reasonable for a dissipation rate estimate for the 1.25 m/s current speeds measured here. They can be a magnitude or two greater for faster flow speeds and depend heavily on bathymetry and regional hydrodynamics." - ] - }, - { - "cell_type": "code", - "execution_count": 27, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 27, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAngAAAHuCAYAAAAMQHH5AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/NK7nSAAAACXBIWXMAAA9hAAAPYQGoP6dpAACgS0lEQVR4nOzdd3wT9f/A8dclnRRayt67spG99wYRlT0EEZChiKyvLAFBoKigCA5QEdlT4aeC7DJlI0MEBNmbQmmB0qZN7vfHkbQhSVfSkfp+Ph73aHL3WZdcknfv7vP5KKqqqgghhBBCiExDl94NEEIIIYQQriUBnhBCCCFEJiMBnhBCCCFEJiMBnhBCCCFEJiMBnhBCCCFEJiMBnhBCCCFEJiMBnhBCCCFEJiMBnhBCCCFEJuOR3g1wByaTiZs3b5ItWzYURUnv5gghhMjAVFXl0aNHFChQAJ0u9c6jREVFYTAYnC7Hy8sLHx8fF7RIZCQS4CXBzZs3KVy4cHo3QwghhBu5du0ahQoVSpWyo6KiyOXryxMXlJUvXz4uXbokQV4mIwFeEmTLlg3QPqz+/v7p3BohhBAZWUREBIULF7b8dqQGg8HAE2CYh4K3E+VEA7Nv38ZgMEiAl8lIgJcE5suy/v7+EuAJIYRIkrS4pcdXAR8n6tHJdPSZlnSyEEIIIYTIZOQMnhBCCOGmPBRtSXF+1zVFZDDy3gohhBBuSq9oS4rzu64pIoORS7RCCCGEEJmMnMETQggh3JScwROOSIAnhBBCuCm9ojoZ4Ekv2sxKLtEKIYQQQmQycgZPCCGEcFN6J3vRyiXazEsCPCGEEMJN6XVO3oMnV2gzLblEK4QQQgiRycgZPCGEEMJNSS9a4YgEeEIIIYSbkgBPOCIBnhBCCOGmJMATjsg9eEIIIYQQmYycwRNCCCHclPSiFY5IgCeEEEK4KR3OBXg6CfAyLblEK4QQQgiRycgZPCGEEMJNOd3Jwom8ImOTAE8IIYRwUzqdtqQ4v+uaIjIYeW+FEEIIITIZOYMnhBBCuCm5RCsckQBPCCGEcFMS4AlH5BKtEEIIIUQm47YB3oYNG6hbty4//vhjgumOHTvGSy+9RPHixSlVqhSjR4/m6dOnadNIIYQQIhXpdc4vInNyu7d29erV1KpVi3bt2rF///4E0/7666/UrVuXZs2acenSJY4ePcq+ffto1qwZT548SaMWCyGEEKlDpzi/iMzJ7QK86tWrs3v3boKCghJMd+3aNXr27EnTpk0ZMWIEAAEBASxYsIADBw7wv//9Ly2aK4QQQqQanU5B78Sikwgv03K7AK9EiRJ4e3tTpUqVBNNNnjyZR48e8eabb1qtL126NDVq1GDevHmcOXMmNZsqhBBCCJEu3C7AM/Px8XG4LSYmhjVr1gBQt25dm+21a9dGVVW+//77VGufEEIIkdrkEq1wxG2HSVEUx0flnj17iIiIwNvbm4IFC9psr1ixIgAhISGp1j4hhBAitTnbUULvuqaIZxYvXpxqZffu3TvJad02wEvIn3/+CWA3uAPInj07AKdOncJoNKLXWx/i0dHRREdHW55HRESkTkOFEEIIkan06dMnwZNQKaGqKoqiSIB37949IC6Qe15AQAAAsbGxhIeHkyNHDqvtwcHBTJ48OVXbKIQQQjjL2cusconW9QIDAxk6dKhLy1RVlS+//DJZeTJlgHf//n0AsmTJYne7Lt7MzFFRUTbbx44da+l5C9oZvMKFC7u4lUIIIYRz5BJtxpMzZ04mTZrk8nKXL1+erPSZMsDz8vICtIjXHoPBYHn8/Nk7AG9vb7y9vVOncUIIIYQQqSxTBnj58uUDcDiY8cOHDwHw8/NLsDeuEEIIkZHpFOfGstOpAPZPhoiUcXRyKa3LzZQBXqVKlQC4efOm3e137twBoHLlymnVJCGEEMLl5B68jOfvv//OEOW67Th4CWnSpAleXl7cvXuX0NBQm+0XLlwAoE2bNmndNCGEEEJkYp6enhmi3EwZ4Pn7+9O1a1cAdu/ebbN9//796HQ6unTpktZNE0IIIVzG3MnCmUVkTm771sbGxgJgNBrtbp80aRJ+fn42Aw7+9ddfHDt2jP79+yc6n60QQgiRkSnP5pNN6aLINdpUZR7VI77IyEgmTJhAqVKlyJIlCyVLlmTkyJHcvXvXpXW7ZYD39OlTTp48CcCBAwfspilZsiTz589nw4YNLF26FICrV6/y+uuvU69ePT7//PM0a68QQgiRGmSqsozpu+++I3fu3OTJk4eiRYvyww8/ANpECm3atGH69OlcvHgRVVUJDAzkl19+oXLlypw+fdplbXC7AK9bt27kypWLU6dOAfD999+TM2dO5s2bZ5O2Z8+ebNy4ka+//poSJUrQtm1bevXqxY4dOxyOkSeEEEIIkVKLFi1i4MCB3L9/H1VViYqK4u233+btt9/myy+/ZM+ePQCMHDmS27dvc+TIEc6fP8+aNWt46623ePr0qUvaoaip1Z83E4mIiCAgIIDw8HD8/f3TuzlCCCEysLT4zTDXsbucnqz6lJ+Ge2xUafi3UX7fXOjFF1/k1KlT1KpVi+XLl1O8eHGioqKYN28e48aNIzo6mt69e7Nw4UKbvCEhIRw/fpzhw4c73Q63O4MnhBBCCI0z99+ZF+Fa//zzDzqdjtWrV1O8eHEAfHx8GDZsGNOnTwdgwoQJdvM2adLEbufQlMiU4+AJIYQQQqSH/PnzYzQa7U5x+u6777Ju3TpKlCjhML/5FjRnyRk8IYQQwk3pdM4vwrXatWvH/fv3iY6Ottmm1+sZM2aMw7w7duzg6tWrLmmHvLVCCCGEm5IAL+OZMmUKJUuW5LPPPrO7PaFJFoKDg/H19XVJO+StFUIIIYRwkezZs7Nv3z5u3rzJ119/nay8p06dokaNGi5ph9yDJ4QQQrgpZztK6GQcjVSRNWtW5s6dm+whT5YvX07p0qVd0gYJ8IQQQgg3pVOcu8yqM7muLcJWci+3Nm3a1GV1yyVaIYQQQog0NnPmTKZMmZJq5csZPCGEEMJNOX2JVk7zpJuPP/6YBw8eMHHixFQpXwI8IYQQwk0pTvaEVSTAy7QkwBNCCCHclKJTUJw4gycBXuYlb60QQgghRCYjZ/CEEEIIN+XsYMVyD17mJQGeEEII4aakk4X7qlu3LhEREalWvry1QgghhEg2g8HAjBkzKF26NCVLlqRRo0bs3r072eXcvn2bgQMHUqJECYoXL07Xrl0TnY917dq11KhRgxIlSlCpUiW+//57l9Zx5coV3nzzTQoVKkSRIkUoXLgwffv25dq1a8neP0f+7//+j5CQEJeV9zwJ8IQQQgg3Ze5k4cySEtHR0bRu3ZolS5awdetW/v33X4YMGULz5s1Zs2ZNksu5dOkS1atXJywsjNOnT3PhwgUKFChA9erVOXfunN0848aN480332TmzJlcvHiR1atXM27cOIYOHeqSOs6fP0+1atV48OABx48f5+rVqxw9epQrV65QvXp1Ll68mOT9S4qrV6+ydu1a9u/f79JyFVVVZaKSRERERBAQEEB4eDj+/v7p3RwhhBAZWFr8ZpjrONPEl2weKb9E+yhWpWzI02S3ddiwYXzxxRccPHiQmjVrWtb36NGD//u//+Ovv/6iePHiCZZhNBqpVasWV69e5dKlS/j5+VnWFy9enMDAQI4cOYKnp6clz/r163nttdf4+OOPef/99y3rv/32WwYOHMiqVavo0qWLU3W8/PLL7Nu3j2vXrlnSA1y7do0iRYrQpUsXVq1aleTXCmDEiBGWx9myZWPy5MkAfPnll4wcOZLY2FgA2rRpw7p166zak1JyBk8IIYQQSXb58mW++uorypUrZxXcAfTq1YvIyEjGjh2baDkrVqzg6NGjdO7c2SqQ0uv1dO/enZMnT7JgwQLLepPJxPvvv4+iKPTp08eqrB49eqDX6xkxYgRGozHFdQDs2LGDoKAgq/QAhQsXJleuXJw6dSrRfXve7NmzWb58OVWrVmX8+PEA7N+/n/fee4+YmBhee+01vvjiC+7fv8+sWbOSXb49EuAJIYQQbio9LtGuWrWK2NhY6tata7OtVq1aAKxbt4779+8nWM6yZcsA7JZTu3ZtAL777jvLusOHD3P+/HlKlixJnjx5rNJnzZqV8uXLc+PGDTZu3JjiOgD8/Pz4+++/bTpAmEwmIiMjqVy5coL75chPP/3E66+/jpeXFwDDhw8HoGfPnqxdu5YhQ4awceNGVqxYkaLynycBnhBCCOGmdIpi6UmbokVJfoC3YcMGAEqUKGGzLUeOHBQsWBCDwcC+ffsclhEZGcnOnTsdllOxYkUA/vzzTx4+fJhovfHzmDsupKQOgPbt2/P48WPeeecdq/SbN29Gr9czadIkh/vlSK5cuahXr55VWYcOHSJr1qx89tlnlvWBgYE8ePAg2eXbIwGeEEIIIZLszz//BKBQoUJ2t2fPnh2A48ePOyzjzJkzREVFOSzHXIaqqpw8eTJF9aakDoCpU6dSuHBhli5dytChQzGZTNy9e5fg4GC2b99O6dKlHe6XI7lz5yYmJgbQ7v8bM2YMiqLw3nvvkTt3bku6K1eucPPmzWSXb4+MgyeEEEK4KUXn3HRj5rzPX4709vbG29vbJn1UVBSPHz8G4gKk5wUEBAAQGhrqsN579+5ZHtsrx1xG/HLMeZJab0rqAMiXLx8hISE0b96cuXPncv36dQICAvi///s/AgMDHe5TQlq2bEmfPn3o2bMn8+fP58SJExQsWNCqo4jBYGDw4MEpKt8eOYMnhBBCuCmdXnF6Aa0DQUBAgGUJDg62W1/8++qyZMliv03PRk82nz1LSTm6eCMwm8sx50lqvSmpw6xkyZIsW7aMoUOHEhISwo8//si0adMwmUwO9ykhU6dOJTIyknbt2vHrr7+SN29eVq1aRdasWQHtPsAaNWqwadOmFJVvj5zBE0IIIdyUM2PZafm1v9euXbMaJsXe2TvA0kEAtEub9hgMBkC7H8+RxMoxlxG/HHOepNabkjrMtm3bxq5du/jiiy8YMGAALVu2ZNasWVy/fp3ly5dbBYdJ4efnx7p167h+/Tp3796lXLly+Pj4WLZXrVqVH374IVllJkYCvGRoWS+YA6ds/6tpXH8eADv3DgKgZtHuABy6ovWEqVdpnCXtvpPTAahVog8AHlkLAODpX8SqDCGEECKt+Pv7J2kcvBw5cuDl5YXBYODJkyd205g7LOTKlcthOfny5bM8fvLkidXl0vhlxC8nX758/P3330muNyV1AOzbt49OnTpx+fJlAMqXL8+uXbuoX78+q1at4sUXX0zSMDD2FCpUyO79gNWqVUtReQmRS7RCCCGEm1L0itNLcuj1esqVKwfgsDPAnTt3ABIcTqRChQooz3rw2ivHXIaXlxdly5YFoFKlSsmqNyV1mEwmBgwYQLVq1azu2ytVqhTr16/Hw8ODGTNmJHj5OaOQAE8IIYRwV86OgZeCy7utWrUC4PTp0zbbQkNDCQ8Px8/PjwYNGjgsIzAw0DJIsr1yLly4AEDDhg0tAw4nVG/8PG3atElxHWfPnuXvv/+2GWcPtHHz2rVrR0REBGfPnnW4bxmFBHhCCCGESLJ+/fqh0+nYvXu3zTbzfKodO3Z0eB+f2YABAwASLKdHjx6Wdc2bN6d48eKcOXPGqocsaJdbz5w5Q/HixS0DGKekDvN9edevX7fb5qCgIMD6/r6MSgI8IYQQwk25qhdtcgQFBTFgwABOnTplM9bdokWL8PX1tRoMOCQkhFq1ajFnzhyrtL169aJixYqsXr3a6pKnwWBg5cqVVKhQgddff92y3sPDg+DgYEwmk2WGCrOlS5diMpmYNm0aer0+xXVUqlSJEiVKcOjQIS5evGiz7wcPHqRs2bKWy9QZmQR4QgghhJtK63vwzGbOnEm1atUYNGgQDx48QFVV5s6dy6+//srixYutZo6YNWsWhw4dsszBaubp6cny5cuJjY1lxIgRxMbGEhkZSd++fTGZTKxduxZPT0+rPF27dmXgwIFMnTrVMjjxnj17GD9+PMOHD6d79+5O1aHT6Vi0aBGenp507tyZ8+fPAxAdHc3YsWM5fvw4ixcvTtFrltYkwBNCCCFEsvj5+RESEkLt2rWpXr06QUFBbN++ncOHD9OpUyertN27dydbtmy88cYbNuVUqFCB/fv3c+fOHYKCgqhcuTLZs2fnxIkTDmeM+Oabb/jwww/p1q0bJUuWZPTo0SxevNhqyi9n6qhfvz6HDh3ihRdeoH79+hQqVIgXXniBW7ducezYMapXr56CVyztKaqjAWWERUREBAEBAdSqMEaGSRFCCJEg829GeHh4koYecaaOa10D8fdK+bmaCIOJwqvCUrWtInGPHz9Gr9fj6+vrsjLlDJ4QQgjhptLrEq1ImsuXL3P48GHLkCyOGAwGWrduTe/evdmyZYtL6pYATwghhBDChf7991/q169PyZIlqV27NgUKFKBu3bqsW7fObvocOXLw5ZdfsnTpUtq2beuSNkiAJ4QQQrgpOYOX8dy+fZsGDRqwf/9+VFVFVVVy587NsWPH6NSpE61bt+b27ds2+SpWrIivr6/DqdiSSwI8IYQQwk0pep3Ti3CtyZMnc/v2bfR6PRMmTODhw4fcvn2bJ0+esG3bNrJkyULlypUt4/DFJ/fgCSGEEELO4GVAv/32G4qiEBwczOTJky2dV/R6PU2aNOHnn39m5cqV9O/fn/Xr11vlNU+t5goS4AkhhBBCuMjdu3dRFIXBgwc7TNO4cWP27t3LDz/8wA8//JAq7ZAATwghhHBTcgYv4ylYsCA6nS7R6cwCAwNZv349Bw8edDiGnzMkwBNCCCHclKJzMsDTSYDnap06dcJoNPLHH38kmlan0zF//nxu3rzJtGnTXNoOCfCEEEIIIVxk0qRJvPjiiwwfPpxHjx4lKc/MmTMJDw/nwYMHLmuHh8tK+g/Ysm9sktJ5BhS3eh55Y7dNGp2XdtOleWaLuuVHAdCq7xkAwvfMtqQ9cH5+kupt2eNIXFuXp3wqFXM5j45p8+15530RgJ27+qW4TCGEiM88w4/5O/B59StPtjzee3yS1baGNWdaPd99aJRNfnVlNQCUbkcBaNp8JQA7tnUDoFnbXwDYvrF9om1tOcsEgOGXhYD978JWb2lzlm7+LijR8lzJ2Z6wit6FjRGANo3bnj17mDJlCq1bt2b06NG0b5/4cfbJJ5/w5MkT5s2b55J2SIAnhBBCuCln76OTe/BSh5+fHx9//DEmk8numHeOfPXVV2TLls0lbZBLtEIIIYQQqUCn01GgQIFk5QkLC3NN3S4pRQghhBBpT684v4gMwWg0EhIS4rJhU+QSrRBCCOGm5BKtezCZTHz88ccsWbKEq1ev8vTp01SvUwI8IYQQQohUNHLkSObMmZOkeWZdNZuFXKIVQggh3JTMReseFi1aBMCHH37InTt3MBqNmEwmmyUkJASdzjXviZzBE0IIIdyVzsn76GSg4zTh5eVFrly5mDhxYoLpGjVqRIsWLVxSZ6YP3ffu3Uvbtm3Jly8fhQsXpnTp0kyaNImoqKj0bpoQQgjhFJmqzD28/vrrxMbGJukS7YoVK1xSZ6YO8NasWUOjRo2oVasW165d49q1a6xcuZKFCxfSrFkzDAZDejdRCCGEEJncRx99RPny5Vm+fHmiacuWLeuSOjPtJdro6GgGDx5M8+bNmTQpbhT0KlWqMG3aNHr37s2CBQsYPHhwOrZSCCGEcIJeAWfuo9MnfkZJOM/X15ctW7bQr18//P39CQgIsEljnr/2zp07Lqkz0wZ4J0+e5P79+1SuXNlmW9WqVQE4depUGrdKCCGEcB0ZJsU93L17l759+7Jp0yZWrlyZJnVm2gDPz88PgAMHDthsM0/+ay/4E0IIIYRwpbfeeouNGzcCULJkSQoUKGDTW9ZkMnHmzBnu37/vkjozbYBXtmxZgoKC2L17NwsWLKBfv7jJodetW0fFihV544030rGFQgghhJOcnY1CzuCliR07dqAoCmvWrKFDhw4O0925c4dixYq5pM5M28lCURS+/fZbvLy8GDx4MMuWLQNg3759HD16lO3bt+Pt7W03b3R0NBEREVaLEEIIkdHIOHjuoWjRouTPnz/B4A4gb968jBs3ziV1Zup3tnHjxvz00094eHjQq1cvhg0bxrp169i8eTO5c+d2mC84OJiAgADLUrhw4TRstRBCCCEykylTphAWFkZkZGSiaevWreuSOjN1gAfQrl07PvnkE4YOHcqcOXP4+uuvWbNmTYJ5xo4dS3h4uGW5du1aGrVWCCGESAbzQMcpXWSg4zTRoUMHPvvsM2bOnJlo2m7durmkTkVNyqh7buyTTz4hKCiI1157jdWrV1sGG5wzZw5DhgxJUhkREREEBAQQHh6Ov7+/zfamzbUeMY/P/x8Ah64kfZDCOmWGAqDovQD447T25tcOGmhJo/PKBoDeJycAe46OtSqjRYedAGz9ubHDepo0WQLAw5PzAfjz/t4kt1EIkXE1qjMHgF37h1rWNX9lKwA6v0AAjA9vArB9Y3uH5TRrp90ArkZpt6Ts2Kb9yLQaeBGAzfNLaM/fvmLJY7qn/fO7dU19q7LM3zchIb2SvB/m78L9Z+c4TFO/8mQA9h7Xhr5q1vYXbYNOu518+29tE63H/N164Pz8JLctIS3f+AsAxU/7nt78ddFEfzNcwVzHw1ll8PfVp7ycp0ayjzybqm0V2hk8gO3bt1OzZk2yZctmkyY2NpYjR46wefNmjEaj03Vm2k4WADNnzuTnn3+29KTt0qULXl5edOrUiaFDh1KlShXq1auXzq0UQgghRGYWEhLC7t27AdizZ4/dNIqioKoqiuKas6qZNsC7cuUKH3zwAePHj7da/+qrrzJjxgz+97//MXnyZLZs2ZJOLRRCCCGcJL1o3cKUKVNo1KgRnTt3pmTJknY7ecbExLBv3z5LIOisTBvgbdiwgejoaPLkyWOzbdiwYXzyySccOnQoHVomhBBCuIjOyfvo5B68NNGgQQN69uzJkiVLEkxnMpnsxi0pkWk7WZjnmb1+/brNNg8PD4oVK4aXl1daN0sIIYRwHb3O+UWkialTpxITE5NgGp1Ox65du1xSX6Z9Z9u1a4der2ft2rXExsZabQsPD+fs2bN07NgxnVonhBBCiMxo+fLldtcXLVoUT0/PRPOXL18+WeU6kmkDvFKlSvHpp59y9uxZ3nzzTcLDwwG4ffs23bp1o2jRokyfPj2dWymEEEI4wZkhUpy9f0/Y9eGHH2aIcjNtgAcwfPhwNmzYwM2bNylevDhFixalUaNGVK1alT/++IPAwMD0bqIQQgiRcjIOXoaTWqPPJbfcTNvJwqxt27a0bZv42EhCCCGEEM5y1TAnzpab6QM8IYQQItOSYVIynMuXL1OiRAmXl3vjxo1kpZcATwghhHBXMkxKhhMbG8vly5ddXq6cwRNCCCGESCcmkym9mwBIgCeEEEK4LVWvoDpxmdWZvCJjkwBPCCGEcFdyiVY4kKmHSRFCCCGE+C+SM3hCCCGEm5JLtMIRCfCEEEIId6XDuWtxch0v05IALxla1gvmwKlgm/XRd08CcOjKCgAa1ZkDwK79Q23S1irRBwC9by4A9p+dY7cunwI1LY9NT8MA0HlltZt268+NE217SEgvAOqUOZxoWiFE8jVr+wsA2ze2t7u99Xu3LI83fZE/2eW36LATgJi7ZwHwLFgZAJPhicM8SrYcWpuWVwegZY8jAGx59rzVwIuWtNt/0waEb9xoAQBNm68EYMe2blbPvSo3t+TZuqa+VX3mNKrJAED9ypMB8KvRw5Im5tJRq3LNr5v5+61epXEAePjls+TxCCwGgDHqPgANa87U8vhqsxEZH999ljJuUPvKv2qvy/GX/azaeOD8fKvn5u9kgIMXfyTZYqIAUHzyJD+vC6h6587CqXoXNkZkKBK7CyGEEEJkMnIGTwghhHBXipO9aFNpWi2R/uQMnhBCCOGmVJ3i9CLSxtOnT5k8eTIVK1akWLFilvU7d+6kd+/e/P777y6tT87gCSGEEEKkorCwMBo3bsxff/2FqqrkypXLsq1x48aUL1+epk2b8vvvvzNnjv1785NLzuAJIYQQbkrVOb+I1PfBBx9w6tQpypUrR7du3fDx8bHanjt3bqZPn85XX33Fl19+6ZI65a0VQggh3JQEeO5h3bp1jBs3jlOnTrF8+XKyZrUdFaNKlSqoqso333zjkjrlrRVCCCGESEUmk4nJkycnmObevXsA/Pvvvy6pU+7BE0IIIdyUzGThHgoVKoSSSI/lb7/9FoC8efO6pE45gyeEEEK4KblE6x5eeeUVpk6d6nD7V199xfz581EUhY4dO7qkTjmDJ4QQQgiRikaNGkWDBg04ePAgnTp1IjIyki1btnDu3DlWr17NH3/8AUBQUBATJ050SZ0S4AkhhBBuytmzcHIGL234+vqyfft2hg4dyoABAzAajbRp0wYAVVUBaN++Pd9++y3Zs2d3SZ0S4AkhhBBuSgI89xEQEMCiRYv4+OOP2b17N1evXiU2Npb8+fPToEEDSpQo4dL6JMATQggh3JRJAZMTQZpJ+likiV9//ZWXX34ZgHz58tGlSxe76ZYtW0bPnj1dUqfE7kIIIYQQqWjkyJFJSle9enUZ6FgIIYT4r5NetJlL3rx5mTdvnkvKkku0QgghhJsy6Zy8RCsBXqrYs2cP06ZNw2AwAHDjxg2aNm2aYJ6oqCjOnDmDp6enS9ogAV4yxD66YvW8Vok+APgWqA1AzaLdATh0ZYXDMg5e/BGAxo0WWK1v1vYXALZvbA+Azie7ZdvOXf0AaNH1gFWelj2OALBleXUAmjZfadn29LrW5Xr/WW3S4sb151k9FymT/+xhy+NbZWoAUDniewCO+/e3m6f6z1GWx0c6+NhN02K21otq6zDHN8TUXhUDwIGu2oe/1eSnAGye5KuVEe/42LpKOyZbdNipPf+5sd0ymzRZYnnskScoWXkT0np0mNXzTR8HJruM+OpX1kaA33t8EgDN52ivl+7oaQAeHdQGCPXOVc6SxxB2AYA/Ts9Mcb11ygwFbD835tcG4l6fJ+c3ANC0eaRWf+g5qzZv+iK/w3padN4LQMytvwDYuXeQTRpTVAQAiqefVu+z9wlq26Td9n8t7NZj/q4w17d1TX3LNvN3hLnulm9obTEfZzu2ddOeT4+xKdf83aP3z6elfe6YafXWectjczlmxoibAHj4aXmNT7VjRzUaLGnM34v1KmnH+O5DowDb46Jhzbj3+vizNA2qBQOw5+hYm3YD6Lz87a635/nvaQA8tc901KGfn62wfe/Ef0+DBg1YsGAB/fv3Z/PmzSiKws6dOxPN5+npKWfwhBBCiP+69OxFazAY+Oyzz1i4cCGxsbEUKlSIjz76iIYNGyarnNu3bzNp0iS2bt2KqqrUrFmTTz/9lCJFijjMs3btWj7++GPu379P1qxZGTp0KP372/8nO6V1xLdr1y6WLVvG/fv3KV68OC+99BJNmjRJME/BggXZsGEDAwYMYPPmzSxdutRhWkVR8PX15YUXXiAgICBJbUqMBHhCCCGEm1KdvESb0gAvOjqaNm3acOfOHbZu3UqRIkVYs2YNzZs3Z9myZXTu3DlJ5Vy6dIkGDRpQt25dTp8+jZeXF6NGjaJ69ers2bOH0qVL2+QZN24cc+fO5bfffqNRo0acPXuWhg0bcvLkSebMsb1KlZI6zO7evUv//v25fPky8+bNo27dukl/kQCdTsf8+fPp1q0bjRo1SlZeZ8nVdyGEEEIky+jRowkJCWHhwoWWs2CdO3emU6dO9OnTh0uXLiVahtFopHPnzhgMBhYuXIivry96vZ6ZM2fi4+NDly5diImxviVg/fr1BAcHM2HCBEvAVKZMGaZOncrcuXNZvXq103WY/fPPP9SsWROTycSBAweSHdyZ6fV61qxZk2i6devWsW/fvhTVYY8EeEIIIYSbUnWq00tyXb58ma+++opy5cpRs2ZNq229evUiMjKSsWPt3/MY34oVKzh69CidO3fGz8/Psl6v19O9e3dOnjzJggVx96ubTCbef/99FEWhT58+VmX16NEDvV7PiBEjMBqNKa7D7Pbt27Rq1YpcuXKxdu1asmTJkuj+OKt9+/Z07tyZDRs2uKQ8uUQrhBBCuKn06EW7atUqYmNj7Z7RqlWrFqCdjbp//z45c+Z0WM6yZcsA7JZTu7bWeei7775j0CCt48rhw4c5f/48pUqVIk+ePFbps2bNSvny5Tl58iQbN260DCqc3DpAmzqsU6dOXL16ld9++w0fH/ud45JrwYIFbNy4kfDwcEwmk9U2k8lEaGgot2/f5p133uGll15yuj4J8IQQQgiRZOYzTPam1sqRIwcFCxbkxo0b7Nu3j/bt29ukAYiMjLT0KrVXTsWKFQH4888/efjwIdmzZ0+wXnOekydPEhISwssvv5yiOgAWL17Mvn376Nq1K+XLl3fwKiTPnDlzGDZsWJLSFixY0CV1yiVaIYQQwk2Zz+A5swBERERYLdHR0Q7r/PPPPwEoVKiQ3e3mQOn48eMOyzhz5gxRUVEOyzGXoaoqJ0+eTFG9KakDYOrUqQA0b96cDz74gNatW1OkSBGqV6/OvHnzUNXkX9b+4YcfqFGjBj/++CNbt26lcePG/Prrr4SEhBASEsKOHTto0qQJy5cvZ8+ePcku3x45gyeEEEK4KZNOxZSC++ji5wcoXLiw1fpJkybx4Ycf2qSPiori8ePHQFyA9DzzMB+hoaEO6713757lsb1y4g8VYi7HnCep9aakjuPHj3PhwgUURWH//v2MHj2aqVOncvbsWTp37szgwYM5fvx4ssequ3LlChcvXiQwUBsT9P79+9y5c8fqUmxAQACdOnWiZcuW5MiRI1nl2yNn8IQQQgg3ZVKcPIP3bGz1a9euER4eblkcdZK4f/++5bGjjgc6nRZamM+epaQccxnxyzHnSWq9Kalj165dAFSqVIkFCxbwwgsvAFpP3Z9++sky7MnGjRsd7ps9hQsXtgR3AB06dLDp8VulShUMBgNDhgxJVtmOSIAnhBBC/Mf5+/tbLd7e3nbTeXl5WR47ulRpnp4robNQiZVjLiN+OeY8Sa03JXVcv34dsH8f3AsvvECzZs0AWLhwod02OBIQEMBPP/1kee7h4UHTpk359NNPLeuuXbvGvXv3+O2335JVtiMS4AkhhBBuynyJ1pklOXLkyGEJnJ48eWI3zcOHDwHIlSuXw3Ly5ctneWyvHHMZ8csx50lqvSmpIyJCmxLQ39/+FHbmS6pnzpyxu92RYcOG0blzZ/R6PdWqVQPg3Xff5dtvv6VLly6MGjWKOnXqEBMTY9NDOKUkwBNCCCHclKs6WSSVXq+nXDltzuebN2/aTXPnzh0AKleu7LCcChUqoCiKw3LMZXh5eVG2bFlAu2yanHpTUkfu3LmBuEDveebOGs8Pc5KYjh07Mm3aNPz9/fHw0Lo/+Pr6snr1anbu3Mlnn33GzZs30el0TJ48OVllOyIBnhBCCCGSrFWrVgCcPn3aZltoaCjh4eH4+fnRoEEDh2UEBgZaBkm2V86FCxcAaNiwoWWA4oTqjZ+nTZs2Ka6jevXqCdZhHhPPfG9ecowdO5awsDAOHjxoWVelShVOnTrF3Llz+eKLLzhx4gQ9e/ZMdtn2SIAnhBBCuCmT4vySXP369UOn07F7926bbfv37we0M1aO7uMzGzBgAECC5fTo0cOyrnnz5hQvXpwzZ85Y9ZAF7XLrmTNnKF68uGUA45TU0aJFC3LkyMGVK1f4+++/bfKYp2Dr0KFDgvuWHHnz5uWdd97h3XffpVy5cpb7/JwlAZ4QQgjhprTLrM7cg5f8OoOCghgwYACnTp2yGetu0aJF+Pr6MmnSJMu6kJAQatWqxZw5c6zS9urVi4oVK7J69WqrHrcGg4GVK1dSoUIFXn/9dct6Dw8PgoODMZlMlhkqzJYuXYrJZGLatGno9foU1+Hn52dp+yeffGKz74sXL6ZixYpWQaErnTlzxjI4s7NkHLxk2HHSetybgxd/tHpep4wW7derNA6AfSen25TRsOZMAHReWQFo3EibA0+fLf+zMoYCsP/sHJu8xoc3rJ4brh7Ryqiv/d25d1C8rd2s0lpvi9Oi6wHL462rattN87xWb1+xPN78ddEk5UltVddHWh4fezX15gy8VaaGzbrj/v3tpi1wfQsANzu0tKyrv0i7b+NG6asAXKpdDAD1uS/Z6j/bDi+g01v/q715kq/Vc3vvn+KT1ep56/duAbDpC+14CwnpFbdtlPWYVVt/bmz1vFEd7ZjctX+oTT3Pt9v/+A4AVIP5fYmrx3zMJXa8NWsXNwyBdyHtda9Vog8Afv/7EQC9XzYAspRqDcDTSzssef44PdOqvAbVggHYc3Ssw3bUDhoIgMmg3X/jk7ea3bapRtvJyQ+cnw9A01ZaT7m9x7UfiaS8blvX1H/2qL7DNOi0r2vze2Z+v2LPa4O/Kl6+Nml1fto4X5t/0O4vavnGXwDoC9teXjJ/R5hf9+2/tbXKAxW0ssZ52uT1yFMKgC3Lq9stw3DhQLzUQVZpVKPWk9H8+tQtPwqIe/3i0/toPR3N35NZK3YBoEWHnQDsPjTKJo/Oy89mHUDNot0BOHRlhd3t8Vn2Z6M2K0PLXsct27Ysqfzskfb6NK4/j9jYp4mW6e5mzpzJ4cOHGTRoEBs3biQwMJAvv/ySX3/9lWXLllnNHDFr1iwOHTrE33//zdChcZ8DT09Pli9fTuPGjRkxYgRz5szBYDAwYMAATCYTa9euxdPT+njr2rUrISEhTJ06laZNm1KpUiX27NnD+PHjGT58ON27d7dKn5I6hg4dypEjR1i0aBFVq1bl3XffxWg0MnHiRK5evcq+ffss99G52kcffeSysiTAE0IIIdyU6uRctM//c5lUfn5+hISEMGHCBKpXr45Op6NChQocPnzY0hnCrHv37uzevZvevXvblFOhQgX279/PmDFjCAoKwtPTk5YtW3LixAmHvUm/+eYbKlSoQLdu3YiOjiZv3rwsXryYV155xW76lNTx448/8uKLL/Lll18ybdo0cuXKRYMGDThx4gR58+ZN8ut0/fp1QkNDKV26NL6+vgmmHTFiBCtXrrR0DHGWBHhCCCGEmzIpKibFiZksnMibLVs2Zs+ezezZsxNM17NnzwQ7DgQFBVmNEZcYRVEYMmRIsgYETm4dOp2OkSNHMnLkyCTnie/ff/+lb9++7N27F9DOJI4cOZIpU6ZYXUIGuH37Nq+//johISGAzEUrhBBCCJHhhIWF0axZM/bu3YuqqqiqisFgYMaMGVaXqAE2bNhApUqVCAkJQVVVunXrZjUvrjMkwBNCCCHclFHn/CJc66uvvuLq1av4+PjQqVMnRo8eTYcOHdDr9cyfP59Lly4RExPDe++9R/v27QkNDSUgIIBly5axfPlyh3PtJpdcohVCCCHcVEoGK34+v3Ct33//naJFi7JlyxaCgoIs6/fv30+rVq0IDg7m8OHDnDx5ElVVadq0KT/++KNlEGVXkQBPCCGEcFPpeQ+esO/ixYvMmzfPKrgDqFOnDh988AFjxowBtEGTp0+fzrBhw1KlHRK7CyGEEEK4SHh4OE2aNLG7zTyMS+XKlTly5Ijd4G7VqlUuaYdLzuDt2rWLtWvXcv/+fZYvXw5oAxseOnSI3r17kz9/fldU45TY2FhWrVrFb7/9hoeHB4UKFWLAgAEUL148vZsmhBBCpIiz99HJPXiuFxsbi7+/v91thQsXJl++fBw6dMjhWHojRoyga9euTrfDqQBPVVX69+/Pjz/+CEDOnDkt25o0aYKiKNSrV49PPvmETp06OdVQZxw7dozXX3+dMmXK8Pnnn1O0aMYYnFcIIYRwhomUTTcWP79wrdjYWC5fvkyRIkVstqmqSvbs2S09a+OLjIxk7dq13L592yXtcCrAmzVrFgsXLkSn05EnTx5U1fpafuPGjRkzZgzdunVj06ZNNG/e3KnGpsT//d//0a1bN8aMGWM1dYoQQgghRGooWbJkgtt9fHxSvQ1OnZz97rvvaNmyJTdv3uTmzZt2u/a2aNECk8nE5MmTnakqRXbt2kXXrl3p16+fBHdCCCEyHZOTQ6RIL9rUYR7/LiWLqzh1Bu/27dscPHjQEtjZm17DaDQC2mXStHTnzh1ee+018ufPz8yZMxPPIIQQQrgZk+LkJVrXzIol4smWLRuffvopJUuWTNactZGRkaxatYolS5a4pB1OBXjFihVLdEC+devWASQ6B5urjRkzhrCwMKZPn54mp0KFEEIIIfr168eAAQNSlLdVq1aWuMlZTp2crVWrFr/99pvD7UeOHOGjjz5CURSaNWvmTFXJcv36dRYtWoS3tzdBQUEMHDiQRo0aUbhwYZo3b86OHTvSrC1CCCFEajEqzi/CtZzpb6DT6Rg8eLBL2uHUGbyJEydSv359zp49S8eOHQEwGAycO3eOVatW8fnnn/P06VOyZs3KlClTXNLgpFi7di2qquLl5cWBAweYNm0auXLl4vfff6d79+60aNGCJUuW0KNHD7v5o6OjiY6OtjyPiIhIq6YLIYQQSSYzWWQ8bdu2dSr/jBkzXNIOp97aQoUKsW7dOr799ltKlSrF2bNn8fX1pXLlygQHB/P06VPy58/Pxo0bKV26tEsanBS7du0CoG/fvowfP55cuXIB0KZNG2bOnInJZGLAgAHcu3fPbv7g4GACAgIsS+HChdOs7UIIIYQQznJ6oOMqVarw999/s27dOkJCQrh69SqxsbHkz5+fhg0b0q1btzS//+769esAFCxY0GZbz549GTVqFOHh4axevZp33nnHJs3YsWMZMWKE5XlERASFCxemZb1gDpwKdljv/rNzAGhcf57V+vqV43oQ7z2u9eZt3GgBANF3TgBgvLwNAK/AMjbl1g4aCIDeVxtnsG75/QCoRoNVvSmxdVXtZOfZ/HX6jSP4U2wdADp67Ldaf+zVLOnRHLte3PAIgJsvtQSg3lKjZdvFegcByHajhFWebUOtr5P4PPKyPN77hvX/YYVO/A3A9RfLWa1vNSPW8njzGO2jbbihHV8tOjwGQPHLDkDLN+4DsGVRBUseNTzs2SPtH6Lmr2zV2vZ/LQDwzFMWgKatfrLk2bG5o1Ub/O/42F0fX1KPOTUq7sz5jm3dnj3S/jNu9fYVAEz3rgHgUawSAF6Pblny1Ks0DgCfIvUB8K3wMgANa2qdrnYfGgXEfb4APPwKALD3/HwAGlTTPu81CnUA4PD1n4G41yQ+c337Tk4HoFnbXwDYtX+ow300l5+llnY1wfzZatnjCABblle3pI25q73vjRtp+7hzV79nW7S2tHrrvCWt+iRce1Dc+jhTsmUHwHT/7rM1eSzbzN9bOr/cVuUpftm0WjrvBcAYcceSx/w+x96/8mzNs/aa4o5FAMXL9vOpxjwFwCNnKav1Pvm1Mlp02GlZ9+ScdiuQTyHt82+MegDA1jXae2s+HuK/lweevYfPv/7m19Yjq+3vQ82i2iwDh66ssFofdVXb94Y1tfdA0XvF21rZKu3OvYOIiIggIGAEacHZy6xyiTbzcslMFh4eHnTu3JnOnTu7ojinmS+p2htJ2tfXlyZNmrB+/XrOnDljN7+3tzfe3t6p2kYhhBDCWdKLVjji1CXa9u3bJzntr7/+SteuXenQoQPfffedZfiU1JA7t/YfqKN75woVKgSAySRjeAshhHBfRkVxehGZk1MB3tmzZzEajezfv5+1a9eyfv16Ll26ZJNu2bJlvPrqq+TJk4epU6dy5coVGjRowMOHD52p3qHq1bVT/KdPn7a73TxsygsvvJAq9QshhBBCpCenArwbN25QoEAB6tevT9euXenYsSOlSpWiWbNmXLhwwZLus88+A2D06NGUK1eOqVOn0rBhQ1577TXnWu9At27a/Tpbt24lNjbWZvulS5fQ6XS8+uqrqVK/EEIIkRbMl2idWUTG4qqZv5wK8J4+fcq9e/dQVZXAwEAqV67Miy++yJEjR6hbty5Xr14F4Ny5cwDkz5/fknf48OHs2rWLVatWOdMEu2rXrs1rr73GzZs3Wbp0qdW2u3fvsmnTJgYMGECxYsVcXrcQQgiRVkxOXp41ySXaDOXChQsZY5gU0HrRbt++ndDQUI4ePcqxY8e4desWHTp0sEShT59qvaX0er0lX968ecmXLx+LFi1ytgl2LVy4kAoVKjB06FD27NkDwIMHD+jduzdVqlTh888/T5V6hRBCCCGet3TpUtq2bUuFChUoWbIkJUqUsFoKFy5M2bJlMRgMLqnPqV60er2ezZs3W8aZM8uSJQuzZ8+mSpUqlslz7c3Hli1btlSbozYgIIA9e/Ywfvx4unTpgre3N9mzZ6dLly6MGjUKLy+vxAsRQgghMjAZJsU9TJo0ialTp6KqaqJpFRedVXUqwMuXL59NcGf2+PFjYmJiLD1V7Y2FFxERQVhYmM16V8mePTtfffUVX331VarVIYQQQqQX7T66lAcEcg9e2vj6668BeOONN+jXrx/58+e3e+LryJEjln4EznIqwCtatCizZ89m2LBhVusvXLjAW2+9xYsvvkhMTAygBVvxhYaGcufOHYcBohBCCCFEZuDh4UGuXLlYuHBhgumKFi1KxYoVXVKnU/fgjRgxghEjRlC2bFk6depEp06dqFGjBmXLliVr1qzs3LmT4OC4mR/Cw8MtjxcvXgxAjRo1nGmCEEII8Z8l4+C5h4EDBxITE5OkS7QhISEuqdOpM3gdOnRg6tSpTJo0ydJTFqBz584sW7aMVatW0a+fNp3Om2++SefOnWnatCkeHh5MnDgRRVHo27evc3sghBBC/EcZUTCS8iDNmbwi6SZMmMDhw4dZunQpvXr1SjBt+fLlLVOuOsPpqcrGjRtH165d+f333zEYDNSpU4c6dbT5Anv27EnDhg25evUq9erV48mTJwwfPpwFCxagqiqdO3emY0fHc1YKIYQQQri7ffv2MXz4cKZPn07WrFnJmTOnTZrY2Fj27dvHrVu37JSQfC6Zi7ZkyZIMGTLE7rbChQtTuHBhAPz8/Pj2228ZMWIEly5domXLlq6oXgghhPhPMjk5lp2Mg5c2+vbta5npa9euXWlSp0sCvKTo378/33//PQBlypShTJkyaVW1EEIIkSkZ0WF04nZ6Z/KKpBs3bhz9+/enUKFCFC5cGE9PT5vhUKKiojh79iwREREuqTPVAzyj0cju3btZvHixJcATQgghhPNMTnaUkDN4aeONN97gu+++Y//+/Qmme/DgAUWKFHFJnU4FeEajkeDgYJYvX87Vq1ctM1YIIYQQQgiNXq9nypQpxMbG2h3/zixHjhx88cUXLqnTqQBvyJAhfPvtt2k6MnN6Uk3W04fUKtEHAN8CtQHYuXeQ1d86ZYYCkKVEc5uyvAq+CMDTa9o0ah5ZCzqs17dQfQBCQqx73tQtPyrRNjeqMweAXfuH2t3equ8Zy+PNP5S12ta0+UoAdmxzzaCLz8t/SbsP4VbxRknO09Ej4f9+MoIH+W8+e1QagKvNNlm23cr/kvaglPaneZQ25+A2nzFWZdwtdtfyuOk3+QA4224bAHpjYbv1Xq/6yPK4wN/avR4Vnh1nSvbcAGz+uqjDdm/+LsjquTHittXzbf/XwmFesx2D7a9v1m6j5fH239pabTMfx3+cnmldVrzjrkXnvQA8Or4EAP+67wKwdY322Wg18CIAer/cljw7d2k9+M3H8ZZFFZ5tqUB8B87Pt2lvg2ra8E57jo61v0PxmD/nvkWtj+PtG9tr9bf6SdufzbYdyp4v//nPa6uJTyzbFL02+45Hdu2/+3pLjQDse12bAvL598+ezV8WevZI+9vyjb9sE72qtVO5Gm61Wnl4DwC9f16bLOZ9e35fLe9LvDxNmmjvoVep2lbtNuf1yKN9OGJuxX03eeXSvpueXtG+Mzz9rc9wKJ7aa6PzymbTtmZtfwHi3o8ty6sDUKPQdJu0h66ssFkHEH3vBABHbm1ItPy0ZkKHyYnLrM7kFcnTooX2HRoTE8PBgwe5evUq/v7+VKhQgWLFilnSmUcfcZZT7+yKFdqHYeLEiVy9etUyc8Xzy5EjR/D09HRJg4UQQgihkXHw3Mvs2bMpVKgQjRo1olevXrzyyiuULFmS2rVrs2PHDpfW5VSAlz17dvLmzcuHH35IoUKF0Ov1dtNVrVqVVq1aOVOVEEIIIYTbeuONNxg5ciT37t1DVVWyZMlCgQIFyJMnD0eOHKFFixZMnTrVZfU5FeCNHDmSx48fYzAYEk0bf0YLIYQQQjjP3IvWmUWkvsWLF7NkyRJKlSrF119/zZUrV3j06BHXrl3j1q1bPHnyhHXr1vH999+zdetWl9Tp1Dv77rvv0r17d8skuglp1qyZM1UJIYQQ4jkS4LmHefPm0aVLF/766y8GDRpkGR/YzNvbm/bt27N+/Xo+++wzl9TpVCeLxYsXU69ePebNm4fJZCJXrlw2aWJjY/njjz+4e/eunRKEEEIIITK3CxcusGXLlkT7I1SuXNkl05SBkwHe559/zsmTJwE4ePCgw3SqqmaKXrRCCCFERhKr6IlV7N//nrT8iY+CIZyXP39+smbNmmi60NBQbty44ZI6nQrwJkyYQKdOnahTpw7FihVzODLzsWPHuHDhglMNFUIIIYQ1E4pTl1lNyMmXtFCgQAGOHTtG1apVHaZ59OgRr7/+OkFBiQ95lBROBXgdOnSgRYsWbN68OcF0UVFR5M1rO3aSEEIIIVIuFh2xTgR4zuQVSffee+/x8ssvExwczKuvvoq/vz8A0dHRnDt3jhUrVrBo0SLu3LnDDz/84JI6nZ6qbPr06QmOzHz8+HHKlSvH6tWrna1KCCGEEMLttG7dmoEDB9KnTx90Oh0BAQEoikJYWJgljaqq9OnThzfeeMMldTodulerVi3BaTeyZctG48aNqVKlirNVCSGEECIeI3qnF5E2Jk6cyKZNm6hatSphYWE8ePAAVVVRVZUCBQowb948l529AxecwXvw4AH79u0jPDwck8lktc1kMhEaGsqJEyfo1atXopdyhRBCCJF0seiJdSJIi8WUeCLhMi1btqRly5ZcvHiR06dPExkZScmSJalatSo6nWsvlzsV4B0+fJhWrVoRHh6eYDpVVTl27JgzVQkhhBBCZAolSpSgRIkSdrfdvXuXPHnyOF2HUwHe5MmTefz4MY0aNaJQoULs2LHDMpmu2e+//07Hjh3p1auXUw0VQgghhDXpZJH5VKpUidu3bztdjlMB3qFDh9iyZQuNGzcGYNq0aTRq1Ij69etb0ixcuJBdu3ZRu3ZtpxoqhBBCCGsmJ++jM8klWpfatm0bv/zyC/369ePFF1+0rF+8eHGieWNiYti5cyf37t1zSVucCvCyZs1qCe4A+vbty9ixY60CvF69ejF8+HDmzp3Lu+++60x1QgghhBAZVpcuXQgPD+fo0aPs27fPsn7atGlJGg/YlRNDOBXgBQQEEBoaapmiLH/+/Kiqyp9//mnpNavT6fDw8GDmzJkS4AkhhBAuFKvq0atOdLJQ5QyeKw0bNozVq1czaNAgq/UDBw7kf//7H02bNiVv3rx2pywzGAwcPHiQS5cuuaQtiqqqKZ6nZNy4caxatYqGDRtStWpV3n33Xc6ePctLL73E3LlzKVKkCLNmzWLRokVkz56dBw8euKTRaS0iIoKAgADCw8MtgxPGV7f8KAD0PjkBiA7Vpm9T9N7ael/bOXr/OD0TgPqVJwOw9/gkAGoHDQTgwPn5Lml701Y/AaAaIrW/MU8A2LlXO/havvGXJe2WRRWs8jZr+wsA2ze2d0lbMqtHh+oBkK2m9t/aTNoBMIrfHOZ5KVp730fHaGkaZj3sMG3+i3sAuFWigdX6OstjAdjfQ/s/rfmcuI/ytqHaf4Ct+p4BYPMPZQFo9pW2ffs72t/Wo0ItedQcAQD89fJZAG5UrAhAozpzrOrdtX+o5XHj+vOAuOPJkWbtNloe63y1z9DWNfUdJbfRtPlKAJ5c3ARAtoo9tTbHPNXK9NHKVI0xljyKl6/delq/d8vq+aYv8tvU1+rtKwCEbRgDwKErKxy2zbxv239ra7Xe/Nr41O4EQNTh/7Ns27mrn8PyrNo6Nq4D26bggCTlie/FDY8AyLvsHACP2lUG4o6Z1iPi5giPOXsAiPu8lwnRtp1tot3sbf4u2bG5Y5LrNx9fm2bGfQc2f2UrALrs2uuuRj7U/hq091KfsxAQd8xC3HsWuX8ZALsPad+55mPTM4+Wdtv/Wd8DHl/Dmtp3rqL3AqyP46QyvwZR1/db1pm/y+NL7DfDFcx1DH3YBW9/rxSXEx1hYE721anaVgFhYWG89dZbrF27NsF0kZGRFChQgIcPHzpdp1Nn8MaMGcOGDRtYtGgRK1eu5O2336ZMmTK8/fbbtGvXzuo0Y4cOHZxurBBCCCGEuwkMDGT48OGJpsuSJQvLli1zSZ1OBXhPnz5l4MCBZM2alYoVK6LXa6eJR44cSfbs2Zk3bx4mk4lWrVrxwQcfuKTBQgghhNDEokfv1Dh4MtBxWpg3b57NZVt75s6dyzvvvOOSOp3qH92yZUveffddtm3bZjNTRb9+/Th8+DBHjx5l+vTpZMmSxamGCiGEEMKa8dlAxyldZCaLtPHZZ58lKV3Xrl2ZNm2aS+p0KsAzd+Vt317u0RJCCCHSWqzq4fQiMo5Hjx65bLoyp97Z2bNn88477/DKK68kmjYoKIjz5887U50QQgghRIa3Z88eRo0aZTkRduPGDYczV5hFRUVx9+5dChQo4JI2OBXgdenShfz58/POO+8wcuRISpcubZMmKiqKH374gYsXLzpTlRBCCCGeE4sendyDl+E0aNCAkJAQ3nvvPRYsWICiKFy+fDnRfHny5GHevHkuaYPT4+A9fvwYgAULFrikQUIIIYRImlhVj86pcfAkwEstWbJk4bvvvqNgwYIsXryYkJAQh2kVRcHX15fcuXO7rH6nAry33noryTcOumpkZiGEEEIId/Hhhx8SFhZG0aJF07RepzpZDBs2jBw5cvDPP/8QExODyWSyWYxGI1u3bpUATwghhHCxWHRO9aKNdS4MEEn0xRdfJJpmzZo1rFy50mV1OnUGr1ChQrzzzjuUKlXKYRpFUWjWrJkMdCyEEEK4mNHJnrBG1ejC1ghnvPbaaxQoUIDIyEj69u3rdHlO94+ePHlyktKtXr3a2aqEEEIIIdxObGwskydPZuPGjYSHh2MyWc8BbDKZePjwIREREYwdO9YlAZ6cmxVCCCHcVKyqd3pJKYPBwIwZMyhdujQlS5akUaNG7N69O9nl3L59m4EDB1KiRAmKFy9O165duXr1aoJ51q5dS40aNShRogSVKlXi+++/d3kd8V2/fp3AwED69OmT5DzxTZ06lWnTpvHnn39y8eJFLl++bLVcvXqViIgIABo3bpyiOp4nAZ4QQgjhpox4OL2kRHR0NK1bt2bJkiVs3bqVf//9lyFDhtC8eXPWrFmT5HIuXbpE9erVCQsL4/Tp01y4cIECBQpQvXp1zp07ZzfPuHHjePPNN5k5cyYXL15k9erVjBs3jqFDh7qsjvhUVaVv3748fPgwyfv1vJUrV9KuXTt27tzJ+fPneeWVVzh69CiXLl3i0qVLXLx4kU6dOvHrr7+yatWqFNcTnwR4QgghhEiW0aNHExISwsKFCylSpAgAnTt3plOnTvTp04dLly4lWobRaKRz584YDAYWLlyIr68ver2emTNn4uPjQ5cuXYiJibHKs379eoKDg5kwYQKNGjUCoEyZMkydOpW5c+fa3A6Wkjqe9/XXX7N///7kvDw27t69y+rVq2nYsCElS5ZkwIAB7N69m6JFi1K0aFGKFSvG9OnT6du3L1euXHGqLjMJ8IQQQgg3lR6XaC9fvsxXX31FuXLlqFmzptW2Xr16ERkZydixYxMtZ8WKFRw9epTOnTvj5+dnWa/X6+nevTsnT560GmPXZDLx/vvvoyiKzaXSHj16oNfrGTFiBEZjXMeR5NbxvPPnz/PJJ58wfvz4RPcnIUWKFMHHx8fyvHXr1mzYsMEquCxVqhQ+Pj68/fbbTtVlJgGeEEII4aZiVZ2TAV7yw4BVq1YRGxtL3bp1bbbVqlULgHXr1nH//v0Ey1m2bBmA3XJq164NwHfffWdZd/jwYc6fP0/JkiXJkyePVfqsWbNSvnx5bty4wcaNG1NcR3xGo5E33niDzz77jHz58iW4L4nJkycPs2bN4sqVKxgMBhRFoVOnTrz//vuWNCdOnODmzZvs2rXLqbrMZJbhZGra6ifL4x2bOwLwx+mZSc7fsKZ1Ws9A67npPPxs56CrU0a7r2D/2TkANKqj/dX7aQf4jm3dAGjSZElcuUWqWLXREUXv+L+37RvbWz2vvUr7T8P7Udxhs6u/Nr5hq8lPAdg8ydcqT4vZquXx1mHP0s6IBeBk130A3CqunWbPf2mX1fOEzKQdAKP4LdG0STENbRif8fyc7LzZau6zeh4SXQOAUd62aV+K1nqdb/CepK0w/32m8DHtfpAmL35jWXerxGyrNOW3hAEQUzAagIYL8wIQUTwyXirtP1XTI+sv2O3vaH9bTdfey80zc1m2tXzjLwBujKsIQIsOOwHYtV87/hrXt50+Z+feQTbr7FH0npbHW9fUB6Bpc228p9iI6wDsPjTKYX7PktpZgoPPjvXnmT+XnkUqWdZt/i7IKk2ztr8A8O+HFQC4XLOEVV6I+7xs/lobkLRRnToANG6k/Ye/c1c/m7o98hS3et6i6wEt7bPXpmWv41rb8thO5dhyltaTTol51qPu6g0ATC9ol7yUXNls8iRHvmNeAGxeXh2Ayr8+MbcagE2fxf1ItnqrLAB1lmufz7M9tG1V12vHVa7mr9qUb06bdZ22z+i0creu0n44N8U7vsz0+UoCoEZqN5Sbjwfz+4NeK6PVQNvpLZ8/RkwGbX+MEbdt0jrKW6/SuETTmr9LQ0J6Wa2PvLgFgAPn59vkSegYSU1GPFCc+ClPyT14GzZsALA7t2qOHDkoWLAgN27cYN++fbRv394mDUBkZCQ7d+50WE7Fitr30J9//snDhw/Jnj17gvWa85w8eZKQkBBefvnlFNUR38cff0ypUqXo2LEjP/74o906k2rs2LE0b96c999/n/z583P16lX69etHrVq1qFGjBkWLFmXz5s2YTCaKFSvmVF1mcgZPCCGEEEn2559/AtpYuPaYA6Xjx487LOPMmTNERUU5LMdchqqqnDx5MkX1pqQOsxMnTrBw4ULmzp3rcB+So0mTJixZsoRKlSpRt25ddDoder2eNWvWEB4ezs8//8yTJ0/ImjUrs2fPdkmdcgZPCCGEcFNGVY/ixFAnxmd5zUN0mHl7e+PtbXsZIioqyjIH/fNnvMwCAgIACA0NdVjvvXv3LI/tlWMuI3455jxJrTcldYA2/Msbb7zBt99+a5XGWT169KBHjx5W64oXL86pU6fYtm0bJpOJOnXqkCuX7ZnvlJAATwghhHBTsaoenAjwzJ0sChcubLV+0qRJfPjhhzbp499XlyVLFrtl6nTaxUHz2TN7EivHXEb8csx5klpvSuoAmDhxIk2bNqVJkyYO2+9K3t7evPTSSy4vVwI8IYQQ4j/u2rVr+Pv7W57bO3sH4OXlZXmsqqrdNAaDAdDux3MksXLMZcQvx5wnqfWmpI4//viDjRs3cujQIYdtd8ahQ4dYtGgRR48e5eHDh2TLlo2yZcvy8ssv07FjR6ug01kS4AkhhBBuyqh6oDg1F62W19/f3yrAcyRHjhx4eXlhMBh48uSJ3TTmAYETutQYv1fqkydPbC6Fxh9U2FxOvnz5+Pvvv5Ncb3LrePLkCf3792fp0qVWQ5q4gslk4p133uHbb78FrAPOo0ePsmzZMsqXL8/KlSspV66cS+qUAE8IIYRwU666RJtUer2ecuXKcfz4cW7evGk3zZ07dwCoXLmyw3IqVKiAoiioqsrNmzdtgi9zGV5eXpQtq/XwrlSpEjt27Ehyvcmt4+eff+bMmTNUq1bNYbsXLVrEokWLKFq0KJcvX3aY7nnTpk1j/nyt93X+/Pnp2bMn1atXJ0eOHNy7d4/z58+zYMECGjVqxOHDh13Sk/Y/1Yv2t99+Q1EUp7s7CyGEEP9VrVq1AuD06dM220JDQwkPD8fPz48GDRo4LCMwMNAySLK9ci5cuABAw4YNLQMUJ1Rv/Dxt2rRJUR1Zs2aldOnSdhfz2UB/f3/L3LvJ8f3336MoCi+//LJl8OQuXbrQvHlzunfvzsSJE7lw4QIvv/wyH3zwQbLKduQ/E+Ddv3+ft956K72bIYQQQriMSdVhVPUpXkwpGOi4X79+6HQ6du/ebbPNPKVXx44dHd7HZzZgwACABMuJ3+u0efPmFC9enDNnzlj1kAXtcuuZM2coXry4ZQDj5Nbx2muvcfbsWbtLcHCwVZrt27cnuG/Pe/DgAR4eHixdutRhJxFPT0++/PJLQkJCklW2I/+ZAG/QoEGWrt1CCCFEZmBUPZxekisoKIgBAwZw6tQpm7HuFi1ahK+vL5MmxQ3iHhISQq1atZgzZ45V2l69elGxYkVWr15t1YvVYDCwcuVKKlSowOuvv25Z7+HhQXBwMCaTyTJDhdnSpUsxmUxMmzYNfbwB/JNbR2pp0qQJefPmJVu2hAcvz5Ili1XnkPhiY2OTVed/IsBbtmwZd+7c4bXXXkvvpgghhBBub+bMmVSrVo1Bgwbx4MEDVFVl7ty5/PrrryxevNhq5ohZs2Zx6NAhm/lcPT09Wb58ObGxsYwYMYLY2FgiIyPp27cvJpOJtWvX4unpaZWna9euDBw4kKlTp1oGJ96zZw/jx49n+PDhdO/e3ek6UsOcOXNQFCXRacj++usvm2nYzJJ7X16m72Rx48YNxo0bx86dO5k8eXJ6N0cIIYRwGaOTnSyMKczr5+dHSEgIEyZMoHr16uh0OipUqMDhw4epVKmSVdru3buze/duevfubVNOhQoV2L9/P2PGjCEoKAhPT09atmzJiRMnHAY633zzDRUqVKBbt25ER0eTN29eFi9ezCuvvGI3fUrqcDWdTseaNWv46KOPAG2A4/gMBgNnzpxh1KhRTJw4katXr1pt27JlC7du3UpWnZk+wOvXrx+TJk2yeTGFEEIId5deAR5AtmzZmD17dqJTa/Xs2ZOePXs63B4UFMRPP/3kcPvzFEVhyJAhDBkyJMl5klvH8/r06UOfPn1SnL9u3bqWAG3jxo0JprUXCKdEpg7wvvnmG3x8fOjbt296N0UIIYRwOZOTU5WZnMgrku69995j9OjR+Pr6kitXrmQNaBwTE8OdO3cwmUzJqjPTBnj//vsvn376KQcOHEh23ujoaKKjoy3Pn5+jTwghhBAiqQYNGsTXX3/NyZMnE+1oYc+5c+eoWLFisvJkyk4WJpOJ3r178/nnn6fo+npwcDABAQGW5fk5+oQQQoiMwOjkMCnGFAyTIpIvW7ZsTJw4MUXBHUDp0qVp0aJFsvJkyjN4n3zyCWXKlHF4w2Vixo4dy4gRIyzPIyIiLEHejs0dk1xOrRJ9AAjs/LllnUeg9b2AISG9AGjW9hcAFL1t92hP/yJWz3ftHwpAg2rauDyNGy0AQO+X25Jmy6IKANSrNE7b5pPDqnxzGdH/xO/Ro40W3qyddn9A1NW9AGTpOw2AA8Mc9zTaPMkXgFYztG7cm8doh9bWYYpt2jHmw66R1fpc5yprD+K9RObyrgxcBcDZQO0+jlH85rAtF69oYyCVKJrw2dtv1WaWx+MV6zGN1C+0qWI+GPUPANNiHHdPn0k7qza94qWNt5T/7GEAOpeeZ0m7wXuB3Txm16qWBiBq92HLuoIlfwfA9FQbhf1Wy7rWDXj2Mlb/Oe5SS+Vftal88mTJDsQdI95ltMmzldzmYyXuPX3SQnv/W48KBWDrz42tqtm5dxApte3/4r6YWvY4AsCObd0SzNNqYtx0RJvnaz3ymjRZAsR9bloNvAiAZ0HbqX3Mx/H239oCoPPTPgOXa2pltR5xV2tHvM/083m8imiDpG5dpR1TLXsdB0DJFhjXth+0163V9BirtGZbllTW8n5qtKyruj4SgGMjtfGwWn2k5d38ddHn9sL281NnuXYs+l/Wpjo62/IyAGW+jjtGY6tpbdo+QRuHrODpE1qeLAUBaD5Hq/dWmYeWPAWfhGtpzsc8W6N9TnOf0o6rmzW0YabqLc1qyZM1VNumNqgHQFSA1qaGC7W/u9+0bb+prPYB19+xvjLiWUZ73TZ9ZvtPeau+Z6yeN22l3Uvllf/FZ4Xafj7N34/mNOb31Kx+Za3TXdSduDlHj9zaAMQdX7WDBgJw4Px8q7/27NzVz+G21GRS9SgmuUTrDt58880kpRs3bhzTp0+3Wb9hw4Zk1ZfpQveTJ0/y448/JnrTZ0K8vb0t8/IldX4+IYQQQogHDx6kOO8///zD559/nnjCJMh0Z/C++OILzp07l2BQ9uabb/Lmm2/yxhtvyLRlQggh3JbJyV60cgbPtVq3bs3WrVt57733+Oyzzyzry5Qpg8FgSDBvTEwMt2/fTnZnCkcyXYCXJ08eSpcubXfbrVu3iIiIIF++fAQEBJA/f/40bp0QQgjhOiZVB07cR5eSqcqEY+fOnUNVVc6dO2e1vkqVKqxatSpJZSiK7a0NKZHpArzg4GDLnHHP69OnD4sWLSI4ONip8WyEEEIIIZ73xx9/sG/fPlq2bGm1/u233+bYsWP88MMP5M2b1+7sGQaDgZCQEN5++22XtCXTBXhCCCHEf4Wq6lGduMzqTF5hK3/+/HTq1MlmfYMGDWjfvj316tVLMH9QUBArV650SVskwBNCCCHclMmkB2d60TqRVyTPp59+mqR0O3bscEl9EuAJIYQQQqSTq1evcujQIQoWLEidOnVcVu5/KsD78ccfpdesEEKITENVdahOdJRwJq9Iuvhj62bLlo3Jk7VxGL/66itGjBhBbKw2lmObNm1Yt26d3Xv0kkveWSGEEMJNmUw6pxeR+mbPns3y5cupWrUq48ePB2D//v0MHTqUmJgYXnvtNb744gvu37/PrFmzXFLnf+oMnhBCCJGZaGfwnOlkIQFeWvnpp5+sOlkMHz4cgJ49e7JkyRLL48aNGzNmzBin65N3VgghhBAiFeXKlcsquNu8eTOHDh0ia9asVgMiBwYGOjUTRnxyBk8IIYRwV04OdOxUXpFkuXPnJiYmBk9PT4xGI2PGjEFRFN577z1y546bR/7KlSvcvHnTJXXKOyuEEEK4KdWkc3oRqa9ly5b06dOHjRs30qFDB06cOEGBAgV4//33LWkMBgODBw92WZ3yzgohhBBCpKKpU6cSGRlJu3bt+PXXX8mbNy+rVq0ia9asAHz33XfUqFGDTZs2uaxOuUQrhBBCuCsnBzp2Kq9IMj8/P9atW8f169e5e/cu5cqVw8fHx7K9atWq/PDDDy6tUwI8IYQQwl3JPXhupVChQhQqVMhmfbVq1VxelwR4yVSnzFDL4/1n51htq1t+FAAmwyMADl78EYDWo0ItaXZs7mhVjs5LOz277+T0Z2XsBqBJkyWWPDrfQACatvrJqgxFrw2EuHNXP4ftNRkeAxATfgmALIUbWSfQ2w6maHpyHwBP/yJaklsPtf0YEQPAps/yWNK2eus8AJu/C9JWXL3xbEtRABouVC1pvcO1v1uHKQDUXBsNwKFO3gDkvhQAQP5/Dlry3BpTC4Ait/2t2vjCfW2uvtrZDwDwz9q4KWDKdaoBwPP/Cy02NQSgt057jQco25/fdQvlvb8BmPae9frTt2taHk/LpZW33OM3AH6K1UYgfzNE279JJaMA+HTnmbgCmmh/3g15YPXcrODpEwAczRP3unldKwtAqQPaa8ow6zytP9COtyNTs1nWldqrvQ/58hUEwKfAs7kRTSYANj1L22ryU0uefZN8AWjw+XcANG1eHADFR3vto68fBmDv8Uk8r16lcQBcWfI6ANdfLGe1vVXfuNdgy/LqVtsa1pwJwO5Do6zWR21dEJf/egsAPAILP2vbs7kanx2/HjmL2pTdrK1Wp/nzp8tRwKp883HcoFqwZZ1X/hetd8wUa/V0y5LKPK9ljyPaA0/zf+MVtHpHh2lPddoPaPyfUa/oLFZl3Kms1dPyDe3z9NfU2wCU2NHUkuZS1dMAVDylfS43BT/7vFy4p5XxWlzbj7+s/W32lfb3xjvPtpXX/pRFe02y1Pwpbt9aDtTa/ex4enGD9jcfXgA8qhoCgO/uNpY8W4d5W+1H02+0Y3/Hs9uIqq6PfLa/cd8zB4aZH2vtb/X2FQAMlYtalWV5/YDNP2ifgRYddmrlP/sONOc13viH5+05OtZmXXweAdqP7BE7x7P5+1nRW++f+VhJrGwhkmP58uX88ccfFCpUiLfeeoucOXO6pFwJ8IQQQgh3JZdo3ULVqlUB8PDwoGnTpsyYMQOA7t27s3r1alRV+6f+m2++4fDhw+TJk8dhWUkl52aFEEIId6Xq44K8lCxODJIsku748eP4+vqyatUqS3C3ePFiVq1ahaenJ3PmzOHkyZO89NJLfPDBBy6pU87gCSGEEEKkIkVRWLlyJYULa7eZxMTEMGHCBBRF4cMPP2TIkCEAzJkzhxdffDGhopJMAjwhhBDCXZkUcGYsO5PiurYIhwoWLGgJ7gAWLFjAtWvXKFq0KCNHjrSs9/Dw4Pbt2y6pUwI8IYQQwk0pJj2KE/fROZNXJF1gYCB3794lT5483L17lw8//BBFUZg0aRKennGdkPbt28fDhw9dUqcEeEIIIYSbUlQ9ihP30TmTVyTdoEGDaNq0KW3btmXt2rXcvXuXOnXq0KdPH0uaixcv0rdvX5fVKQGeEEIIIUQqGjx4MAaDgblz5xIaGsrLL7/M/PnzLdsHDhzI+vXriYyMJEuWLAmUlHQS4AkhhBDuyqRz8h48GUwjrbz33nu89957drfNnz/fKuBzBQnwhBBCCDcl9+BlPuZ79ZwlobsQQgghRAZRqVIll5QjZ/CEEEIIN6UY9ShGJ87gOZFX2Nq2bRu//PIL/fr1sxrPbvHixYnmjYmJYefOndy7d88lbZEATwghhHBTOpMOndyDl2F06dKF8PBwjh49yr59+yzrp02bxoULFxLNr6oqiuKasQklwBNCCCGEcIFhw4axevVqBg0aZLV+4MCB/O9//6Np06bkzZvXauw7M4PBwMGDB7l06ZJL2iIBnhBCCOGmFJPOyU4WcgbPlSZOnMjEiRNt1r/55pv88ccfrF27NsH8kZGRFChQwCVtkQBPCCGEcFOKqnMqSFNUCfDSQmBgIMOHD080XZYsWVi2bJlL6pR3VgghhBAildWrVy9J6V566SWX1Cdn8JKhaaVBePrkcrjd+DQUgIMXfwSgfuXJAMQ+uWlJU3+bdupV75NT++sbaFWGX7lXAdi6pn6i7fEuWtvhtur5tQNE0XsDcPj6z1Ztimt0jOVhvUrjANB5ZgNgz9GxALTqewaAzT+UtalHNUQD0KLrAa24+5efbSkKwO43Hd8sGnjmWcoj57V6Bn4OwOOfP7ekKXX3BgCxxbT9aPmpEYAsAx8DsPVKRwBudY27n6FieFUAGnhq5VwMKwPAjYK7ASh+7ycALuXuaMkzjQ5WbRvPz3bbXPrPuP+JlreZadV+Q84ZADTOq72OpyJHA+Dd5A9LnmJ31wPwVV1tPwIiagAw+I9tAPxaoz8A7/i3tOS55FlMq8fj/LM1QVZtUj21j3H1n6Ms655UuA7AlZYlAcj3r3aceUSqVnk3T/K12UefUk0A2LpKO75avvEXALq7f9ukNTM+vQ/A9RfL2d0e/9hpPUr7nGyaqX2Wdh8aZTePV/64oQLi8mt/zcebLmd+bfvXRW3bFKF97vT3rCfubv3BIwBi8lsf51Zp3rsFxH0Om32lrd/+jp2GVqmitSU0AoBG36vP2p9dK2OY9hkouz3UkiX/P9rxWuDvYwDkbHgCgBverwJQdI92zEZlM1jy1C6zEoBHuT4CoM7yWABu9airJSgV16Saa7XP5b0uvz1box3rux9rx1uRXTu1tU1Xx9uRgQBEF9Fel9AipwB4HKjth/G69tq37tTbkqPV5B+BuONIF6M+ew207beaHgWgxB91LXk6xozXyn1vAACGytp7d7dY2LMU2rFqyhMQV88Q7XjWl6igteHZe6g+1HobRl8/AkCLDnHfAyZDpJbHXxtPbMvy6gB4+hcBYOeufgA0bfWTJc+OzdrrtP/sHOyxd6ykN51Jj86ZsexkHLxUZzAY2LRpE7t27eLixYtERkYSGBjICy+8QLNmzWjUqFGq1CsBnhBCCOGmtHvwnLhEK/fgparvvvuOSZMmcefOHbvbp02bRvny5Zk9ezZNmzZ1ad3yzgohhBBuSjHq0TmxyDh4qcNkMvH6668zaNAgbt++jaqqDpe//vqLli1b8tlnn7m0DRLgCSGEEEK40AcffMDy5ctRVZVixYoxY8YMDh48yL179zAYDNy/f59jx44xe/ZsypUrh8lk4n//+1+ivWyTQwI8IYQQwk2ZBzp2ZhGudfXqVWbNmoVOp2P8+PGcP3+e999/nxo1apAzZ048PDwIDAykcuXKDB06lL/++otZs2bh4eHBiBEjMBgMiVeSBPLOCiGEEG7KfA+eM4twrZUrVxITE0NwcDAfffQRen3il8GHDx/OwoULuX79OqtWrXJJO+SdFUIIIYRwkb1791KvXj3+97//JStfjx496NatG1u2bHFJOyTAE0IIIdyUzqhzqpOFzihhgKudP3+e9957L0V5hw0bxpEjR1zSDhkmRQghhHBTzt5Hp8olWpe7c+cOjRs3TlHemjVr8uTJE5e0Q95ZIYQQQggXiY6OJlcux5MiJMbT0zPxREkgZ/CEEEIIN6Uz6Zy6zCpn8FwvKiqKmJiYFAdqjx49ckk75J0VQggh3JT0os14VFXln3/+SVHesLAw7t+/75J2yBk8IYQQQggX6tq1Kzly5Eh2vsjISJe1QQI8IYQQwk3pjAo6o5Li/KoTeYVjf//9d4rzKopr3hMJ8IQQQgg3Jb1oMx5FUejcuTOlSpVK1n14sbGxXLhwgdWrV7ukHRLgCSGEEG5KZ1LQmZw4g+dEXmFft27dWLZsWYrz+/r6uqQdEroLIYQQQrhI/fr10zW/mZzBS4YdJ+fRsprt1CPN2v4CgN5XG/emXqVxAMQ+vgnAwYs/2qTdvrG93TpiQy89exT3BjeqMweAXfuHAtB6VCgAW9doaVp02Kk9/7mxJc+RWxusym1YcyYAe49PslrvXb6l5fHO+SWstrV+7xYAm38oa7etAEq27Fq7b/wFgEf+MgC0mhGrbQ+L6+5tuvavtq5sRQBu1ogCIPfVwlo9DAfgSidvS57yW7IAcKHQs3Y+e/nzX9HaWmZbA23FgLg2hd4vBcB9z2itvojcANTcrz3/peHHAPQ17rTkeUnV9vWaRyAAZbdrr3GbpqMA+Ez5UWtz6bh6ijz7e6V6EADXL/QGoE5BbQTzJfVfB6DS1rhpZxRF27f+Nz8B4FbxRgDkbPQpAFV9DwPwE7bM9eS/uEcr69n+3ZzU3E7qWtqfF7Q/tUNjAMgapX3kze/P5jFxXwHmdVtX1QagSZMlAISE9AKgafO/bGppXH8eAAfOzwegWbuNAGz/ra2dNmnUXNmtnj9/fDd/ZSsApidxPclavqHVrfhox4MudyGt/V9qf1tN1AYGfVIy7j/fvXsHWdXTenQYAHera/NCHnvVtm2NvlcB8H1u7kjPq2HPHgXa5DFm0dJu+dh6W/EDl589KgbAmWZx42IVy3YRgKx5n/W0298BgLDy2vv/4Nlls1tFm8YrcRoATbI9y9JDS2M+VgucjSv/0DvacVboxLPPrvYRoGFWrfyGU8wpt1vy1FyrHU88uy/8lfJfAvC1br7VfhU89YHlcckiPtrfP64B8O/QwlZpaz87luLbf7sJADe/Lmq1/oVdWv2thlzXVhTNb9lmfp9bf/Ds+yTyKQBbllcHoEVn7bvE/J0IcceRLl8R4lM8/aye79jc0fLY/D25+5D2uTcfm6rRYLU+vqatfrIpJy0pRueGSTHJTBYuN3jwYKfy9+3b1yXtkABPCCGEcFOKUUFxoqOEM3lFxiahuxBCCCFEJiNn8IQQQgg3pVOd62ShU+UMXmYlAZ4QQgjhpuQSrXBELtEKIYQQQmQyEuAJIYQQbso8Dp4zS0oZDAZmzJhB6dKlKVmyJI0aNWL37t3JLuf27dsMHDiQEiVKULx4cbp27crVq1cTzLN27Vpq1KhBiRIlqFSpEt9//71L6wgJCaFZs2Zky5YNPz8/6taty8qVK5O9b+kpUwd4qqoyf/58XnzxRXx8fMiRIwevvPIKR44cSe+mCSGEEE5TjM4vKREdHU3r1q1ZsmQJW7du5d9//2XIkCE0b96cNWvWJLmcS5cuUb16dcLCwjh9+jQXLlygQIECVK9enXPnztnNM27cON58801mzpzJxYsXWb16NePGjWPo0KEuqWPp0qU0b96cHTt2EBUVRWRkJPv376d79+6MHDkyyfuWVGfPnuXdd9/lt99+IyYmxmXlZuoAb+DAgQwaNIiTJ08SGxtLWFgYv/zyC3Xr1uXnn39O7+YJIYQQbmn06NGEhISwcOFCihTRxhrs3LkznTp1ok+fPly6dCmREsBoNNK5c2cMBgMLFy7E19cXvV7PzJkz8fHxoUuXLjYBz/r16wkODmbChAk0aqSNI1qmTBmmTp3K3Llzbab5Sm4d9+7dY8iQIYwfP55bt24RExPD0aNHqV5dG3Pxs88+Y8uWLSTkww8/ZOTIkQwcODBJsUaZMmWYNGkSixcvJnfu3PTq1SvRPEmRaQO833//nXXr1rFo0SIiIiKIiopi/fr15M6dm5iYGN58801CQ0PTu5lCCCFEiqXHJdrLly/z1VdfUa5cOWrWrGm1rVevXkRGRjJ27NhEy1mxYgVHjx6lc+fO+PnFDUCt1+vp3r07J0+eZMGCBZb1JpOJ999/H0VR6NOnj1VZPXr0QK/XM2LECIzGuNOSya1j+fLlTJs2jSlTppAvXz4AqlatysaNG8mRQxsFfOnSpQnu15QpU/jnn3/44IMP6NBBG8T86tWrdhezXLlysXr1arp3787y5csTfe2SItMGeD/++CNbt26ld+/eZMuWDQ8PD1555RVWrFgBQEREBL/88ks6t1IIIYRIufS4RLtq1SpiY2OpW7euzbZatbRZdNatW8f9+/dttsdnnq/VXjm1a2uzoHz33XeWdYcPH+b8+fOULFmSPHnyWKXPmjUr5cuX58aNG2zcuDHFdXh5edmdiSJ37ty88cYbgHaWLzHfffcdhQvHzeyyZs0a2rZtS/HixalcuTKzZs1i06ZNNvmCg4NRFNf0bM60AV6DBg2oXLmyzfpmzZpRpUoVIGlvkhBCCJFRKSbnl+TasEGbCrNEiRI223LkyEHBggUxGAzs27fPYRmRkZHs3LnTYTkVK2pTWv755588fPgw0Xrj5wkJCUlxHYMHD0ansx8aBQVp00UWLVrU7nazLFmyWM7+mY0cOZKNGzeiqiq//PILX3zxBQMGDLDJmz17dvLmzZtg+UmVaQO8IUOGONyW1DdJCCGEENb+/PNPAAoVKmR3e/bs2QE4fvy4wzLOnDlDVFSUw3LMZaiqysmTJ1NUb0rqSIj5tq5XXnklwXReXl521xcpUoTcuXNTv359u9vN4l9KdsZ/cqDj0NBQvL29ad26dXo3RQghhEgxxaSiGFWn8oN221J83t7eeHt726SPiori8ePHQFyA9LyAgACABO9zj38FzV455jLil2POk9R6U1JHQrZt20bFihVp1apVomkdMd/Hlxb+cwGeubtz//79HR4k0dHRREdHW54/f+ALIYQQGUFKL7PGzw9Y3S8GMGnSJD788EOb9PHvq8uSJYvdMs2XOM1nz+xJrJz4l0nN5ZjzJLXelNThyIkTJ9i7dy87d+50eAk3KVx1f11S/OcCvO+//55s2bIxZcoUh2mCg4OZPHlyGrZKCCGESD/Xrl3D39/f8tze2TuwvvyoqvbPHBoMBiDhs1WJlWMuI3455jxJrTcldTgyfPhwRo8eTYMGDRJM5wrx2+WM/1SAd//+faZNm8aiRYsSfDPHjh3LiBEjLM8jIiJs/rsRQggh0ptidPIS7bO8/v7+VgGeIzly5MDLywuDwcCTJ0/spjF3WMiVK5fDcuJ3Qnjy5InV5dL4ZcQvJ1++fPz9999JrjclddjzxRdfkDVrVj766COHaeKLjo5m4cKFdoPK8PBwh9tMJhMXLlzg2rVrSaonMf+pAO+tt97if//7X6L33jm69wDgwPn5lsd1ymijZu8/O+fZmvYANKw5EwC9T9KvtTeuPw8AQ9iFZ2viBjrctd96dG7DqV0AtOhaEAAlm3Zg1q8cd9Zx7/FJANQopI3B45O3ht36fOp1ddgmw9k/nj3q+Ky+AwBsXVXbksZ47QwAO7Z1A6BZW23oGf3JWC1BjngfsLZa7+V9r+u1tF9pr7E+Uuun739H6/zS6ve4y+PZXshq1ab8V3YAUDXfHgAulqwEwIsb4t6vXHpt3anW2oe51N4bWll3tDTdvLQOOKf1vS157v6tdaHPU07rXv97/WkA7HpcB4DyxsUAbIh3Zr7Qib8B8Mj/DwDzCmn78ehySQBqndFeA+XG75Y8Nwq20fbjotb+iCP1AGhY3foG4JKhcSPB/5urs9U2zywPAagYeOzZvmvDEpx4KRuOPGqlDQ/04ERLAIodym2TZvMY668D73qvWj3X+eUE4t5jgJ17B1mt276xvcM2PF9Py17Hgbjju1k77bXXeWmXUjyLV7PkMd69DIA+p/Y6Kdm0H6IWnfcCsHWNdtNyy1m216paTdcGMd38caDd9pi3A/zTU3tfKjxuopX3qfaexhbT8tZfpJXvdyuunttVHz17ZF2+IVs4AD1iRwGw3GOmZVu+S9o/jNcKaqPoZ6+vjat1M+s7Vm0q1n+9Jc/lPK8CEPKs413Ubu3YKVjvZQDCasbVP5mtACh53gQg/yXtXqRieU4AUMDrDgA/eU6La3BrbaqnQ8/asPuxdnzx7CNo3o96ZfSWLKsrfgxA2e2+ALyvat9bnyhLAMjywBOAkX1rWfK8E66Nj9b0G+25+RLhP+9o3xXV72uXym6WOWHJ02pyWQA2TzUf49pf8/tjfv/NxwOARzltfDb10SPi8yyk9Zxs+cZfAGxZVMGybfehUVZpvV9oqpUR9RhHdmzu6HBbmjCp2uJM/mTQ6/WUK1eO48ePc/PmTbtp7tzRji97I1mYVahQAUVRUFWVmzdv2gRf5jK8vLwoW1Z7/ytVqsSOHTuSXG9K6njerl27WLduHRs3bkSv19tN87ynT5/Sv39/h9sT2uZKmbYX7fOmT59OkSJFGDVqVOKJhRBCCGGXuZPB6dOnbbaFhoYSHh6On59fgpczAwMDLYMk2yvnwgXtZEfDhg0tvUoTqjd+njZt2qS4jvhOnz7NhAkTWLduncP7/hzx9PSkYMGCFClSJMlLgQIFHJ5cSon/RIC3dOlSzp07x+eff57eTRFCCCFcxnyJ1pklufr164dOp2P37t022/bv3w9Ax44dEw1WzOPAJVROjx49LOuaN29O8eLFOXPmjM04tg8fPuTMmTMUL17cMoBxSuow++effxg8eDCrV68mMND27H9CU7HVqlWL8PBwrl69yqVLl5K8XLt2jdDQUOrUqeOw7OTI9AHezz//zPr161mwYIFN7xWj0eiya91CCCFEmjNfonVmSaagoCAGDBjAqVOnbMa6W7RoEb6+vkyaNMmyLiQkhFq1ajFnzhyrtL169aJixYqsXr3aqherwWBg5cqVVKhQgddff92y3sPDg+DgYEwmk2WGCrOlS5diMpmYNm2a1aXU5NYBWnDXt29fli5dajNg8dOnT/nss89YsmSJw9endevWKT4TlyVLFrsBZ0pk6gBv/fr1LFq0iGXLluHhYX1/0e3bt+nTpw8XL15Mp9YJIYQQ7mnmzJlUq1aNQYMG8eDBA1RVZe7cufz6668sXrzYauaIWbNmcejQIcaPH29VhqenJ8uXLyc2NpYRI0YQGxtLZGQkffv2xWQysXbtWjw9Pa3ydO3alYEDBzJ16lTL4MR79uxh/PjxDB8+nO7duztVx8mTJ2nYsCHHjx+natWq5MqVy7IEBgaSNWtWRo4cmWAQ5uw9dolN8ZZUmbaTxbJly+jTpw9Zs2alYMGCVtsMBgOPHj2icOHCLF68OJ1aKIQQQjjJaNIWZ/KngJ+fHyEhIUyYMIHq1auj0+moUKEChw8fplKlSlZpu3fvzu7du+ndu7dNORUqVGD//v2MGTOGoKAgPD09admyJSdOnLCZb9bsm2++oUKFCnTr1o3o6Gjy5s3L4sWLHc4wkdQ6bt68SePGjQkLCwNw2Fu3Zs2alCpVyuFr83zMkRwGg4Hp06czYcKEFJdhlikDvA0bNtCrVy9UVbXqBv287t27p+mgg0IIIYRLmUza4kz+FMqWLRuzZ89m9uzZCabr2bMnPXv2dLg9KCiIn376Kcn1KorCkCFDEpySNCV1FChQgAcPHiS5TEe2bdtG8+bNU5T3p59+knHwEvLSSy9hcuaAF0IIIdyByckzePJb6XKvvPIK4eHhNreGJSY8PJz333/fZe3I1PfgCSGEEEKkpadPnybYCcMeg8FAhw4duHHjhsvaIQGeEEII4aYUk8npRbje6NGjkzxKh9FopEePHuzcudOlbZAATwghhHBX5k4WzizC5UJDQ2nTpo2lw4YjJpOJ3r17s27dOodz7KaUBHhCCCGEEC7i6enJypUrCQoKolmzZg47e6qqSt++fVmxQptK8oMPPuD48eN4eXm5pB0S4AkhhBDuytyL1plFuNSrr75Kly5dWLduHQ0aNKBp06Z2g7yBAweyePFiFEXhgw8+YMqUKVSqVIlFixa5pB0S4AkhhBDuymgCo9GJRQI8V1u1apXl8RdffEHdunVp3rw54eHhlvVDhgzh+++/R1EUhg0bxuTJky3bunTp4pJ2SIAnhBBCCJFKvvzyS8qUKUPr1q159OgRw4cP5+uvv0ZRFN566y1mzZqVKvVKgCeEEEK4K7lEm+GMGDHCZt2PP/6Iv78/ZcqUsczJ261bN+bNm5ek/CmhqK7utpEJRUREEBAQQHh4OP7+/pb1zdptBGD7b22t0jdutMDqud4vt+Wx8ck9AHbu6pfsdrTosBOArT83tr+96wHLYzXqEQDb/q+FVVs9ipQHYPPXRQFoPeKuTTmx/54AwBQVAcCOzR2ttrfsddzyWPHx08r7LijR9recpX2RKOFPtTxTtLxNvtW2hwzQ/jZcGHdI3i/4EICwQpcAyJr3HwBizte2KjvGN9Ly2PNpFgC8n/0920SbiqbVRG3amVMD9gFws1BLmzYOML0NwL4IrfyoWF8A/s3V2SZt+YfaNHeF5mlzEm7KVRWAEhV+AeBS7WIAzCbu+Mhu0to569EbAPjqtef3nmoTWl/Krb3WJUPXxO1brA8AV/O9DEC1R/MBuHu+MQDXqpa2aZv5NT3XZhsA/he0qYPMr4VZ6w8eWR5vmpoNiHt/tyypbJXW3vHXrK22rx4Fy2orihQBYPMEbaLt5nO093LbUNsZY1q9fQUA0+1LVuWa6zcfWxB3fJnL05/W8lCooFV9tVfFWPIE7LoJgPoozGp/ym/Rnhs9tbTxX5Oy20O1vKEBANwpqo1JVXqFVr6aN5fWttC4nnF/vaHlKXFMew12v6nta/6zh7X6im3XXgOfMZY8xQ9c1v7+WQyAM613AVD0UF0ADnTV5sbcG1HDkqe+v1Zegb+PAXCzXFXiqxzxveXxu9m0idhXG7TR9C8d0L5vYsppx/7UHLMB6KnfgyM/mhoD0Ee302p9mbC4Sd6z7HoNgFtVtO+eW0WbWqUtdnc9AMrFypZ15s+F+b00eWqv147B2vbexmEALNbPtuR5YddtAIqcyAvYHk8VN2mXviL9IyzrInNoefKf1b7zTHqtvuMv+1nlNX9WIO47yMx8PPlvPKeVUU0rS/841pJm8zjtvaq/SPt+2/uGzuFvhiuZ62g28Bwe3tlSXE5s9CO2zy+dqm39rwkMDOT+/fvodNbn0J48eUKjRo04duwYr776KmvXrrVJExsbS+7cuRPtfZsUmXImCyGEEEKI9BAeHk7fvn3p0qULPj4+VttGjBjBRx99xFtvvWUz7t3Tp09Zt24dERERuIIEeEIIIYSbUk1GVKPRqfzC9ZYsWZLgbBbt2rVL9TZIgCeEEEK4K5NRW5zJL1zOmbvfFMX2lpaUkE4WQgghhLtyaoiUZ4twuR9//JHIyEhMJlOSl8jISBYvXuyyNkiAJ4QQQgjhIvny5aN37942998lxsfHh9dff508efIknjgJ5BKtEEII4a5MJicv0cowKa5mb+iT5Jg/f75L2iEBnhBCCOGujLHa4kx+4VLXrl1jxowZPHr0iKCgIPr06ZOs/O3bt3dJOyTAE0IIIYRwkXfffZfq1auzaNEiypYtm27tkABPCCGEcFOq0clhUqSThcspisKaNWsoWrRourZDAjwhhBDCXZlitcWZ/MKl8ufP71Rwd/fuXZd0tJBetEIIIYQQLpIlSxan8teqVcsl7ZAzeEIIIYS7MjnZyULO4GUo586d4/r16y4pSwI8IYQQwk2pRiOqLuVBmtyD53rXr1+nYcOGyc4XGRnJmTNnMLlo6BoJ8IQQQgghXCQqKoq9e/emOL+rpiqTAE8IIYRwV9LJIsMJDAxk6NChyc73+PFjtmzZwl9//eWSdkiAJ4QQQrgrYyw4cYlWBjp2vRw5cjBp0qQU5f3ggw/Ily+fS9qhqKqquqSkTCwiIoKAgADCw8Px9/dP7+YIIYTIwNLiN8NcR6M26/Dw9EtxObExT9j1+2vy++ZCQUFBnD9/PsX5W7ZsyZYtW5xuhwyTIoQQQgjhIg8fPnQqvyuCO5AATwghhHBbqjEW1RjjxCKXaF3t/v37bN++Pb2bIQGeEEII4bbMnSycWYTLvfrqq4wbN46DBw+mWxukk4UQQgghhIs8fPiQx48f8+jRI3S69DuPJgGeEEII4aZUk3ap1Zn8wrX8/f0zRIcVCfCEEEIId2WMAcWJIM2J4FBkbHIPnhBCCCFEJiNn8IQQQgg3pRpjUZ04gye9aDMvCfCEEEIIN6WaDKgmvVP5ReYkl2iFEEIIITIZOYMnhBBCuCtjDChO/JRLJ4tMSwI8IYQQwk2pxhhUxYlLtBLgZVoS4AkhhBBuSjUZUI0pv9tK7sHLvOQePCGEEEKITEbO4AkhhBBuSjXGoCKXaIUtCfCEEEIIN6UaDahOXIxTjXKJNrOSS7RCCCGEEJmMnMETQggh3JRqMqAqilP5ReYkAZ4QQgjhprRLtE4EeHKJNtOSS7RCCCGEEJmMnMETQggh3JTWi9aZM3jSizazkgBPCCGEcFOqKRoV1Yn8cok2s5JLtEIIIYQQmYycwRNCCCHclTEaVU35GTzkDF6mlenP4BkMBmbMmEHp0qUpWbIkjRo1Yvfu3endLCGEEMJpqtGAaox2YpEAL7PK1GfwoqOjadOmDXfu3GHr1q0UKVKENWvW0Lx5c5YtW0bnzp3Tu4lCCCFEiqnGaFTVlPL8JulkkVll6jN4o0ePJiQkhIULF1KkSBEAOnfuTKdOnejTpw+XLl1K5xYKIYQQQrhepg3wLl++zFdffUW5cuWoWbOm1bZevXoRGRnJ2LFj06l1QgghhPOcuzyrLSJzyrSXaFetWkVsbCx169a12VarVi0A1q1bx/3798mZM2daN08IIYRwmmo0OHmJNtaFrREZSaY9g7dhwwYASpQoYbMtR44cFCxYEIPBwL59+9K6aUIIIYQQqSrTnsH7888/AShUqJDd7dmzZ+fGjRscP36c9u3bW22Ljo4mOjrutHV4eDgAERERqdRaIYQQmYX5t8Kp4UuSKMb4BJNJn+L8RtXowtaIjCRTBnhRUVE8fvwY0AI5ewICAgAIDQ212RYcHMzkyZNt1hcuXNh1jRRCCJGpPXr0yPJb42peXl7ky5ePv28fcbqsfPny4eXl5YJWiYwkUwZ49+/ftzzOkiWL3TQ6nXZ1Oioqymbb2LFjGTFihOW5yWTiwYMH5MyZE0VJ+Zx/aSUiIoLChQtz7do1/P3907s5TpP9ydhkfzI22Z+0p6oqjx49okCBAqlWh4+PD5cuXcJgcH4cOy8vL3x8fFzQKpGRZMoAL/5/Io5OkZs/FDly5LDZ5u3tjbe3t9U6R2cCMzJ/f/8M+wWYErI/GZvsT8Ym+5O2UuvMXXw+Pj4SmAmHMmUnixw5cliCvCdPnthN8/DhQwBy5cqVVs0SQgghhEgTmTLA0+v1lCtXDoCbN2/aTXPnzh0AKleunFbNEkIIIYRIE5kywANo1aoVAKdPn7bZFhoaSnh4OH5+fjRo0CCtm5bqvL29mTRpks1lZncl+5Oxyf5kbLI/Qvw3KWpa9ONOB+fPn6dMmTKUL1+ekydPWm379ddfad++Pb1792bRokXp1EIhhBBCiNSRac/gBQUFMWDAAE6dOsXx48etti1atAhfX18mTZqUPo0TQgghhEhFmfYMHmgdLBo1aoSHhwcbN24kMDCQL7/8klGjRrFs2TI6deqU3k0UQgghhHC5TDlMipmfnx8hISFMmDCB6tWro9PpqFChAocPH6ZSpUrp3TwhhBBCiFSRqc/gCSGEEEL8F2Xae/CEEEIIIf6rJMATIoUuXbrE0aNHMRrdf7Ju84l8OaEvhBCZgwR4GZDJZErvJrjUkydP+Oijj2yGq3FXT58+ZcaMGUyfPp3Y2Fj0en16N8kpkZGRhIeHA7jFXMuJiY2NTe8muJR8HwghUiJTd7JwRwsXLuSPP/7Ax8eHF198kSZNmlCyZMn0bpZT1q9fz6RJk9Dr9RQvXpxs2bKld5OcsmrVKmJiYvjmm2/w8HDvj1BwcDCrV68mS5YshIeHM3ToUF555RXy5s2LqqpuF/B9+umn7Nu3j8DAQKpVq0arVq0ICgoCcMv9ke8DIUSKqSJDOHjwoFqlShVVURSrpXjx4urvv/+umkym9G5iin300UeqoihqlSpV1J07d6Z3c5zy559/qlWqVFH37t2rqqqqGo3GdG5Ryhw4cEAtV66c2rZtW/Xw4cPqwoUL1VatWqmKoqjjxo1zu/26ceOG2rhxY/WVV15Rt2zZovbr10/NnTu3GhAQoE6aNEl9+vRpejcxWeT7QAjhLLlEmwHcvXuXoUOHcvz4cSpUqMA777xD1apVCQgI4PLly8yePdtmsGZ3YL43LSwsjIIFC3LixAlWrlzJ3bt307llKffrr79Srlw56tWrB4BO554foYULF9KpUyc2bNhA9erV6dOnD4sWLaJSpUr89ttv3Lt3L72bmCw7d+7E39+f9evX06JFC77//nuWL19OsWLFmDJlCsOGDSM0NDS9m5kk8n0ghHAF9/x1yiTUZze0b9q0icOHDzNlyhROnjzJ3Llz2bdvHwsXLiR37tzs2rWLv/76yyqPOzAHP0+ePKF+/fpUr16dNWvWsHfvXrfaD7OIiAjmz59PlSpVAIiKikrnFqXMsWPH+Pbbb2nYsCEQtx958+Zl8ODBXLp0iaxZs6ZnE5Nt7ty55MmTB4jbn+bNmzNv3jwUReHbb7/lk08+4caNG+nZzATJ94EQwpUkwEtH5vuB9u3bR7169Rg/fjyg/afr7e3Nq6++ypgxY4iOjmb37t3p2dQUURSFp0+f8uDBA8aPH0+7du148OABixcv5uLFi+ndvGQ7d+4c9+/fp06dOgD4+PgAcPnyZcLCwtzm5v5//vkHT09PoqOjAfDy8rJsy5s3L40aNcLPz88tbu43mUw8evSImzdv2uyPqqrUrl2bqVOnArB06VJWrVqVbm1NjHwfCCFcSQK8dGIymSw/oPnz52fo0KGWL3i9Xm/Z1rVrV4KCgrhy5QrR0dEZ9iZxe8GAyWTC19eXsLAwYmJi6NatG3Xr1uX3339ny5Ytlh/kjPjfu739+eeff4iOjsbPzw+AkJAQGjRoQNOmTalYsSI9evRg+/btad3UJIl/vJUuXZqYmBiWLVvGzZs3rS4zq6pqmeXFHS4/63Q6oqOjiYiI4PDhw9y4cQOdToeqqpbjatiwYTRr1ozbt2+zevVqDhw4kM6tts/c3szwfWCPO38fCOGOMv43eCZw6dIlpkyZwg8//MD69euJjY1Fp9NZfkBVO737dDodJpOJAgUKUKVKFQwGA97e3hniy8/R/jxPp9Px8OFDHj16RMGCBQkKCqJHjx54eXmxaNEiy2Wm9P6RSmx/zK/5zZs3Abh16xazZs3i888/55VXXqFly5b4+Piwdu1aunfvzpw5czAYDOmyL5D48VayZEm6du3KihUr6NatG/Pnz+f06dOEhYURERFB27Zt063t9ty+fZs//vgDwGbMQVVVLT1m7927ZzmzpSgKOp0Oo9GIr68vw4YNI2fOnPz1119s3bqVmJiYNN8PM0f7E/9z4E7fBwm9P/G5y/eBEJlGWvfq+K8JDg5WixQpoo4cOVJt0aKF6uPjo1asWFH94Ycf1NjYWFVVVTUsLEw9ffq0TV5zT7nJkyervXv3zhA95xLaHzNzO00mk/rkyRP11VdfVS9evKiqqqrevXtX7dChg6ooijpx4kRLnpMnT6btjjyTnP0ZNWqUqiiKGhwcrK5YscJq+9WrV9U6deqoiqKoZcuWVdevX5/m+6KqCe9P/OPn3r17auPGja16aJYpU0bNly+fGhgYqDZu3FgdMWKEGhISYumBmh49aw0Gg9qxY0e1RIkSqsFgUFVVtfkcPH36VH399ddVRVHUd999Vw0NDbVbVq9evVRFUdRmzZqpZ8+eTfW225PQ/pj/hoeHu833QVLeHzN3+D4QIjORAC8VXb58WW3Tpo3Vl/WGDRvUwMBAVVEUddiwYeqNGzcSLWfQoEHqe++9l4otTZqk7M+tW7dUVVUtweuFCxfU0qVLW5Xz008/qYUKFVJLliypjh49Ws2fP7/asGFD9fbt22m3M2ry9kdVVXX+/Pmqoihqrly51NWrV6uqqqrR0dGWwOevv/5SW7Rooep0OrV///5qeHh4htufmzdvWrY9evRI3b9/v/rZZ5+pzZo1U/v376/26tVLrVq1qurp6akqiqJ6enqqPXv2VB89eqSqquMf79Qyd+5cNUuWLKqiKOqnn36qqqp1oGluzzfffKMqiqIGBQWpe/bssSrDfCweOHBA9fDwUL29vdUDBw5Y5U8rie1PUmSU7wNVTf7+ZOTvAyEyGwnwUtHYsWMtX2YGg8HyY7JgwQK1dOnSqqIoar9+/RzmN/8wDR48WF2zZo2qqtoPkrmcsLCwVGy9reTuT2xsrHr27Fm1Z8+eqsFgUCMjIy3bOnXqZHX2aPjw4er9+/cz9P5s2rRJzZMnj1q6dGnLGYbnA4TVq1erxYoVUytVqpTmAV5y9yd+2/fv36/u27dPVVUt8Dt37pwaHBysVqtWTVUUxRJQpGVAFBISonbp0kV97bXXVEVR1Hz58qnXrl1TVTXus2Fuj9FoVAsUKKAqiqKOGjXK4WvfvXt3VVEUdfz48WmzE/EkZX8SktG+D5K7P0ajMUN/HwiR2UiAl0piY2PVVq1aqQ0aNFCfPHmiqmrcf7ZPnjxRv/nmG9XPz09VFEVdvny5qqq2P57mL8m+ffuqO3bssNr2+PFj9bffflOjoqJSe1csbUnu/qiqqu7du1etX7++5fmtW7fU/v37W77Ivby81LFjx6bJPsSXnP1ZtmyZqqqqevz4cbV06dKqr6+v+vHHH1v9QJnfu4iICLVv376qoijqmTNnMuT+2Dvexo8frx48eNAqn6qq6rVr19Ry5cqpAQEB6qVLl9JobzRXrlxRVVW7BNulSxdVURR18ODBNunMn5N58+apiqKoOXPmVDdt2mS1H+Y0+/fvVxVFUXv16pWkoMqVkro/jmSk7wNVTdn+7Nu3L0N+HwiRGUkni1Sgqip6vZ6YmBgePHjA48ePgbheiVmyZKFdu3b06tULgLFjx3L37l0URbG6aVqv1xMWFsaTJ08sQ3OY/f7773zzzTd4e3tn2P0BuHHjBi+99BIAU6ZMoXDhwixYsICgoCDat2+PyWTi9OnT/PPPP6m+H87uj3mqqKioKDZt2sSpU6csZZrfu2zZslG9enX8/PzS5L1xZn8URcFoNBIVFcWRI0c4fPiwVb7Y2FgKFSrEwIEDMZlMll6OacU8rp2Pjw/jxo3Dx8eH+fPn29zQb54LuFevXtSsWZMHDx7w7bffcvbsWUtZ5jT58+enaNGiPH36NM3nEE7q/jiSUb4PzFKyP7du3cpw3wdCZFrpGV1mZk+fPlUbNWqkKoqibtq0SVVVVY2JibFKc+jQITUoKEhVFEX96KOPVFW1vbRx9uxZ9e2337Zat3HjRrVEiRKqr6+v+vfff6fiXsRJ7v58+OGHqqpqlywLFCigFi9eXFUURc2WLZs6evRoNTIyUg0LC1ObNWum+vj4qF988YXVGbGMtj+TJk1SVVW7+TtfvnyqoijqwIED1cuXL1vyRkdHq6qqqitXrlSLFStmuW8tI+6P+XhTVe3SXt68ea0ubZpMJkv+devWqTlz5lTv3LmTRntj3/jx41VFUdTWrVtb1j3fQeHgwYNWl/muX7+uqmrcaxEZGakWLVpUnTJlShq33lZC++NIRvk+sCcp78+6desy5PeBEJmRBHgpkNiXsPnS0NSpU1VFUdTGjRvbTffkyRN1xowZqqIoqq+vr6X3X/z7atasWWMJLs6cOaN269bN8gPWsmVLl/zoptb+hIWFqb/88ouaPXt2VVEUtXv37uqff/5plWfBggWqp6enWqhQIfXUqVNO70tq7s/du3dVVVXV2bNnqwUKFFB1Op3as2dPm5vKx4wZo3788cdJaktSpPbxZjAY1CZNmqjFihVT161bZ5Pvf//7n1UPR2el9DW5ffu2WqJECavL5vH/ITKX+/nnn6sFChRQPT091XfffdeqjLt376pVqlSx6YjhjNTaH3t1ZITvA0eSsj8rVqxQc+bMmabfB0L8V0mAlwzh4eFqcHCw5V4lR8xfkFu3blVz5MihKoqi/vLLL6qq2n7hHTt2TK1evbqqKIr6xRdf2JQxY8YMddWqVeqnn35q6dmYI0cOdcGCBRl+f77//nv1wYMH6qhRo9Sff/7ZKp15SIXQ0FC1X79+6rx58zL8/syaNUtVVe0s0IoVK9TChQtbflhnz56tnj59Wh04cKBaq1Yt9cSJExl+f2bPnq2qqvZefPzxx6qPj49asGBBdfHixeqtW7fU8PBwtX///mqlSpXUw4cPp9n+JGTBggWqoihq+fLl1cePH6uqGhfgmv9GR0ermzZtsgQbAwYMUHft2qUaDAa1b9//b+/Oo6I67zeAf98ZBJwAAgqERaJFjYpV49EerZqFREVTl8QWD11MaU9N0LjEtM3RJsbYJG7Npua0EovNH0RIJNHWk8VoSwShVuvSGkWEeIJLFSUSVIZlZp7fH/zmysiwzzB3hudzjifhru/jHF++d+573/sLzJ8/3yXj79ydpyk99QetaSmPvf3l5eX47W9/2y39AVFPxwKvnd5++2307t0bSql2z9FUXFyMGTNmQCmF6dOna7eJml4hV1dXY8WKFTAajXj66ae123xA4zcuycnJiIqK0q7Sf/Ob37hkIHV35LHfSmq63tk3Lq74lqu7Ph/7nHBAY7G0YsUKxMbGIj4+HvHx8UhPT3fYxlvyVFZW4s0330RkZCSUUhg5ciQiIiLw1FNPeSyPM2azGQ899JDDbeaWpuUoLi7Gq6++ioSEBIwbNw7Dhg1Denq6x/79ONORPHrrD5xpT57u6A+IiAVemz7//HMMHz5c61AnTJiAkpKSdu+/YcMGhIaGIigoCNu2bQPQvMPbvXs3goODkZSUBOB2B3fmzBntvDNmzMDZs2e9Mk/TTK7myc/H7tatW7h48aLDHHOd5anPx+6rr75CQUEB9uzZg7Kysq6FQdfzOLN//34opRAWFobS0lIArU8zUlNTg0uXLrVrzsm2eDKPHvsDZ9qTh0UckfuxwGvF0aNHtaklEhISsHXr1nbPNWXvwL788ktMmTIFSimMGjVK+yVjsVi0baqqqjB48GAMGTIEVVVV2jHWr1+P8PBwfPbZZ16bx51zc+kpjyt+Yekpjyt0JU9b7FPR/PznPwfQ9t+/pz+ftrQnj576g7Z09PMhItdjgdeKiooKBAUFYcmSJV26+s/KykJiYqJDh2dnv7JNSUlpNjje/gSgq3gqj7s6d+ZxztfyOFNcXIw+ffpAKYX9+/e79Ngt8XQevfYHznji8yEiRyzwWmC1WlFZWYm0tDTtNkNH2X9x3rhxA3/+85/h7+8PpRS2bt2qTUdRX18Pi8WCcePGaU8qumMCVk/mccc7TJmnOV/L05ZXXnkFSil8//vfR1VVFd566y2cPHnSLedino7rzjxE1BwLvFZUVVVh6NChOHnyJGw2Gw4dOoSPP/4YhYWFKCsrcyjE2vNL8p133kFYWBgCAgLw7LPPamO28vLyMH36dJSXl7stC8A8bWEe13J1nqasVisuX76svYLNYDBgyJAhOHPmjKtjaJin/TyRh4gc9egCz96BOeu87MvmzZuHpKQkTJ48WRs4rFTjC+fnzp2LnJycDp3zP//5D1JSUhAWFoYRI0bgkUceQWJiInJzc5mHeZinAwoLC2EymTBgwADs3Lmz08exYx595yGijulxBZ79NlZWVpb2toWWmM1mJCcna0+Y2eecavqzUo3v9uzIrOv19fUoKytDUVER3n//feZhHubp4FsLSkpKMHjwYDzzzDOdzgIwj97zEFHn9bgCD2iccX3MmDEYN26c0xesN/15+fLlCAsLw9KlS1FUVIT9+/fj9OnTeO211zBz5kwopTBo0CDk5eV1ew475mGe7qSHPGazWRtXyDy+nYeIOqfHFXjnz5/XppHw9/fH4sWLnU4Ia1dUVITi4mKnx6qtrcWLL74Ik8mE5cuXA3DPgPXWMA/zdCfmYR4i8g49qsCzWq34xz/+gT179mDjxo2Ijo5GXFyc9lqn1qaLsNlsWufW9P8rKyuxfPlyREdHuz/AHZjnNuZxP+a5jXmISO96VIEHQJvvqbKyEitXroRSCj/60Y9w9epVAJ27Qj127BjmzJmDr7/+2qVtbQ/maRvzuA7ztI15iEgPDNLDxMTEiIhIeHi4PPbYYzJ27Fj59NNP5cMPPxQREYOh438lwcHBcv36dYmPj3dpW9uDedrGPK7DPG1jHiLSgx5X4ImIABARke9+97vyxBNPSG1trWRlZUlJSYmIiNhstg4dz2QyycyZM13ezvZintYxj2sxT+uYh4j0oEcWeEopEREJCAiQadOmSXJyshw8eFB27NghIq1f5TrrHPPz82XUqFHuaWw7MM9tzON+zHMb8xCRXvXIAq+phIQEmT9/vvTp00dycnKkoKBARFq+yrV3jjdv3hQRkQ8++EAuXLggSUlJ3dPgNjAP83Qn5mEeItIpD47/65I7Bwt35YXply9fxlNPPQWlFBYsWACz2dziMf/6179iyJAhuO+++xATE4PU1FScP3++0+e2Y56WMQ/ztIV5WqaHPETU/fw8XWB21JkzZ2T9+vXSu3dvASCPP/64PPLII9ptic6IioqSefPmyf79+2X37t0yZcoU+eEPf+h02/PnzwsAMZlMsnnzZnn88cc7fV4R5mkP5mGeljBP2zyZh4g8yBNVZWdYLBYsW7YMcXFxeO655/D8889r703cuHEjgLanAGj68mw7+1VsdXU11qxZA6UUZs2ahf/973/aevsfuytXrjAP8zAP8zAPEemW1xR4GzZswKOPPurQ+Zw8eRKJiYkIDg7GzZs3W9zXarU6dGDOOkIAOH78OCZOnAiTyYS33npLW15XV6cdx1WY5zbmYZ6OYp7b9JiHiDxP9wWe1WpFRUUF7r33XmzYsAFA48vT7R3aH/7wB4SEhODf//53s31tNptDZ3f48GHMnTsXH3/8sdPxJ2azGRkZGTCZTOjfvz+ef/55PPTQQ8jNzWUe5mEe5mEeIvIaui/wAODUqVPo1asXvvjiCwCNnaL9arO4uBgRERG4dOlSi/tXVFRg8eLFUEpBKYUnn3wStbW1DtvYj1dWVoaBAwdCKYWoqChkZGQwD/MwD/MwDxF5Fa8o8AoLCxEYGIiUlBSH5TabDXv37sXChQu12wx3Wr9+PaKjo6GUgtFoxJo1a1o919KlS6GUwurVq13W/jsxz23MwzwdxTy36TEPEemDbgq8ffv24cSJEzh37hwaGhoA3L7qvH79OpKSkqCUwo9//GN88cUX+PbbbwEAeXl5OHHihMOx7Lcnjh49ql3V/uxnP9MGFgPOx6kcOHAAy5Ytc8k7F5mHeZiHeXw1DxHpn8cLvOPHj2Py5MkYP348Hn74YQQHB2PmzJk4duyYQye1b98+JCcnQymFXr16ISYmBj/4wQ+QmJiIyZMnY/Hixdi8eTPKy8sdjr9ixQrt1gfQ2PG1NKeUKwYZMw/zMA/z+GoeIvIeHi3wbt26hblz52LLli0AGh/lX7duHcLDw9G7d2+sWrXKYfuqqiqsXbsWc+bMwcCBAxEZGYmRI0ciICAABoMBSin07dsXL7/8MioqKhz2vXNAMvMwD/MwD/MQka/yaIGXm5uLuLg4XLx4UVtWW1uLv/3tb9qthzfeeKNZZwYA3377LT755BMAjYOUd+zYgbS0NG2/l156CdXV1QBanjaAeZiHeZiHeYjIF3mkwLPfQnj22WcxbNgwh2X2/7788stQSqF///7YvHmztq/9NsOOHTsc5nKy++STTzBp0iTcc889OH36tFtz2DEP8zBP5zGPvvMQkXfy2Dd4VqsVKSkpMBqNWkfVdHqAuro6PPDAA1BKYfz48Thw4IC2DQCkpqZq8zdZLBbtKrahoQE7d+6EUgr5+fnMwzzMwzzMQ0Q9jsFDr0cTg8Egd999t9hsNvnss89ERMRgMIjBYBCr1Sr+/v6yYsUKiYyMlGPHjsmuXbukrq5ODIbGJp87d06ysrK0/YxGo4iI+Pn5SWRkpEREREhgYCDzMA/zMA/zEFGP45ECT/3/i7MTEhLEaDTKP//5T7lw4YK23t6ZTZs2TWbPni319fVSUFAgR44cERGR2tpa8ff3l127dsnhw4e141ksFhERuXLliiQmJsqwYcOYh3mYh3mYh4h6Hg9+e4jdu3dDKYX4+HhtQLGd/ZbEiRMn0K9fP/j5+WHbtm3aGJY33ngDSimMGDECR48eRU1NDYDG6Qa+973v4d133+3eMGAe5ulezMM8REQt8fg8eEOHDoVSCosWLUJlZaXTbdLT06GUQmpqqsPy1NRUmEwmGAwGJCcnY9KkSUhISEBOTk53NN0p5rmNedyPeW5jHiKi2xQAePIbxJycHElNTZWQkBDJzs6WqVOnauNQrFarGI1GOXfunCQkJMjdd98tR44ckZiYGBERqampkdOnT8u+ffvEbDZLRESELFq0yJNxmId5uhXzMA8RkVOerjDr6+sxadIkKKUwd+5clJaWOqy32Wyw2WyYM2cOYmNjcfPmzRZnatcD5mGe7sQ8zENE5IxHHrJoqlevXrJu3ToREfnwww8lKytLrl69KiKNV7hKKVFKSf/+/UUpJXV1ddqgYz1iHubpTszDPEREzni8wBMRmThxorzwwgsiIrJ161bJzMwUkcanzWpra0VE5OLFizJ06FAJDQ31VDPbjXn0jXn0jXmIiFzA018h2pnNZqxevRohISFQSmHLli3ak2a1tbVISUlBQUGBh1vZfsyjb8yjb8xDRNQ1uinw7Pbs2YMxY8ZAKYUJEybgpZdewvDhw/GrX/0KN2/e9HTzOox59I159I15iIg6x+NP0TrT0NAge/bskfLycikvL5cZM2bIww8/7OlmdRrz6Bvz6BvzEBF1nO4KPAA+NciYefSNefSNeYiIOkcXD1k01bTz01nt2SnMo2/Mo2/MQ0TUObr7Bo+IiIiIukZ33+ARERERUdewwCMiIiLyMSzwiIiIiHwMCzwiIiIiH8MCj4iIiMjHsMAjIiIi8jEs8IiIiIh8DAs8IiIiIh/DAo+IiIjIx7DAIyIiIvIxLPCIvNj27dslJCREtm/f7ummdIrFYpEPPvhAHnjgAUlLS/N0c4iIfAYLPCIvtnPnTrlx44bk5uZ6uikdduXKFVmwYIE8+eSTcuDAAenMa7EvX74sgYGBopRy+BMXFycNDQ1uaDURkXdggUfkJQ4cONBs2dKlS2XcuHGyZMkSD7Soa6KioiQzM1N+/etfd/oYr7/+utTV1TVbvmTJEunVq1dXmkdE5NX8PN0AImqbzWaTRYsWyX//+1+H5VOnTpWpU6d6qFWuERkZ2an9rl+/Lu+9954cP35cAgICHNYNGDDABS0jIvJeLPCIvMDatWvl5MmTnm6GW/j5da4b2rJli/z0pz+VUaNGubhFRETej7doiXQuMzNTXnjhBU83Q1dqampk06ZNYrPZ5ODBg2Kz2TzdJCIiXWGBR6RjGzZskLVr12oPIAwaNEgGDRokK1eulFu3bsk777wjY8aMkdWrVzvsV11dLWvWrJHQ0FAREfnmm28kLS1NQkJC5J577pG//OUv2rZ5eXkyceJEMZlMct9990lRUZHTtpw6dUpSU1NlxIgREhQUJCNHjpTMzEyX5rVarfL73/9eYmNjJSgoSGbPni2lpaXNtsvIyJBr167Jxo0bZdKkSTJgwAB5++23xWq1urQ9REReC0SkeyKCpv9cT506hdTUVAQGBkJE8OKLL2rrMjIyMHDgQG2fyspKDB8+HDExMdr2BoMBRUVF+OijjxAQEID+/fvDaDRCRNC3b19UVVU5nP/TTz/FgAEDkJ+fDwA4f/48Ro8eDRHB6tWru5Rt+/btEBHMnz8f8+bNQ58+fRAdHa21v1+/fjh79qzDPj/5yU8wYsQImEwmbTsRwYMPPohvvvmmS+0hIvIFLPCIvMCdBZ7dL3/5y2YFntlsxpdffqnts3DhQhQUFAAAbty4gQkTJkBEkJSUhJSUFHz99dcAGou2uLg4iAh27NihHe/atWsIDw9Hdna2w7n/9a9/acXinQVYR9gLvPDwcGzatAkNDQ0AgN27d2sF3NSpU53uW1dXh71792Ls2LEORZ7Vau10e4iIfAFv0RJ5saioqGbLAgMDJSEhQft53bp1MnHiRBERCQoKkoULF4qISFVVlWRnZ0t8fLyIiMTFxcnMmTNFRKS8vFzbPzMzU27cuCGzZ892OM/IkSNFpPEJ348++qjLWWbMmCGLFy/WHrqYNWuWdut57969cvHixWb7+Pv7y5QpU+TQoUOydOlSEWm85fzee+91uT1ERN6MBR6RF2tprrem04YEBwc7rIuJidGWK6Uc1vXr109ERMxms7bs73//uwCQ0aNHy9ChQ7U/o0aNkr59+0rfvn2loqKiy1mMRmOzZYsWLRJ/f38RETl+/HiL+xoMBnnzzTflscceExGR7OzsLreHiMibcZoUoh7GYGj5us6+Dk3eKlFeXi7h4eFSXFzs9rbdyWQySXx8vJSWlkpVVVWb269bt0527dolZWVl7m8cEZGO8Rs8ImqVxWKRq1evtqvAcgf7RMj2J4JbM2TIEImPj5egoCA3t4qISN9Y4BFRq6KjowWAvP/++07XA5C8vDy3nf/69esiIjJ69Oh2bR8dHS3jx493W3uIiLwBCzwiatX9998vIiK/+93v5Kuvvmq2/t1335VLly655dzV1dVy9uxZuf/++yU2NrbN7S0Wi5SVlUl6erpb2kNE5C1Y4BF5gd69e4uISG1trcPy+vp6ERFpaGhwWN70Z4vF4rDO/tYHZ5MC28feNd1/wYIFctddd8m1a9dkwoQJ8qc//UnOnTsnJSUl2kTMs2bN6my0ZuduKiMjQ4xGo7z22msOy69du+b0GJs3b5Zly5bJ8OHDu9weIiJvxgKPyAskJiaKiMjBgwelpqZGXnnlFbHZbJKfny8iIvn5+Q4Fm325iMjhw4cdjmW/nVpaWupQKFksFiksLBQRkaKiIu14cXFxkpmZKX5+flJRUSHp6enyne98R+69915ZtWqVbNu2rUtj3mJjY8Xf319ycnLkj3/8o1Zc5ubmyquvvirZ2dkyduxYbfvXX39dIiIiZPr06dqDH3V1dbJp0yaxWCyycuXKTreFiMhneHISPiJqn0OHDmHw4MGIiIjAM888g/z8fISHhzu8xSEsLAxHjhxBWlqa9lYKEYHRaERycjKqq6sRFRXlsE9AQABWrVqFzz//HKGhoQ7rQkNDcerUKa0NhYWFmDZtGoKDg3HXXXdhypQpOHTokEvynT17Fk8//TQSEhIQFhaG0aNH44knnkBJSUmzbcvLy/Hoo48iNDQUgYGBmDx5Mp577jmcPn3aJW0hIvIFCnByX4SIiIiIvBZv0RIRERH5GBZ4RERERD6GBR4RERGRj2GBR0RERORj+C5aInKJBx98UC5cuNChfUpLS93UGiKino1P0RIRERH5GN6iJSIiIvIxLPCIiIiIfAwLPCIiIiIfwwKPiIiIyMewwCMiIiLyMSzwiIiIiHwMCzwiIiIiH8MCj4iIiMjH/B95uAaYDYWeGQAAAABJRU5ErkJggg==", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "ds_avg['dissipation_rate'].plot(cmap='turbo', ylim=(0,11))" - ] - }, - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### 7.4 Turbulent Kinetic Energy (TKE) Components\n", - "\n", - "The next parameters we'll find here are the vertical TKE component and the total TKE magnitude. Since we're using the vertical beam on the ADCP, we'll directly measure the vertical TKE component from the along-beam velocity using the `turbulent_kinetic_energy` function. This function is capable of calculating TKE for any along-beam velocity.\n", - "\n", - "We can also use the so-called \"beam-variance\" equations to estimate the Reynolds stress tensor components (i.e. $\\overline{u'^2}$, $\\overline{v'^2}$, $\\overline{w'^2}$, $\\overline{u'v'}$, $\\overline{u'w'^2}$, $\\overline{v'w'^2}$), which define the stresses acting on an element of water. These equations are built into the functions `stress_tensor_5beam` and `stress_tensor4beam`. Since we're using a 5-beam ADCP, we can calculate the total TKE as well using `total_turbulent_kinetic_energy`, which is a wrapper around the 5-beam variance function.\n", - "\n", - "#### Quick ADCP lesson before we dive in:\n", - "\n", - "There are a couple caveats to calculating Reynolds stress tensor components:\n", - " 1. Because this instrument only has 5 beams, we can only find 5 of the 6 components (6 unkowns, 5 knowns)\n", - " 2. Because the ADCP's instrument (XYZ) axes weren't aligned with the flow during deployment, we don't know what direction these components are aligned to (i.e. the 'u' direction is not necessarily the streamwise direction)\n", - " 3. It is possible to rotate the tensor, but we'd need to know all 6 components to do so properly.\n", - "\n", - "That being said, even if we don't know which direction the 3 TKE components ($\\overline{u'^2}$, $\\overline{v'^2}$, $\\overline{w'^2}$) are oriented, we can still combine them and get the total TKE magnitude." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### 7.5 ADCP Noise\n", - "\n", - "The first thing we want to do is calculate the Doppler noise floor from the spectrum we calculated above. (We are making the assumption that the noise floor of the vertical beam is the same as the noise floor of the other 4 beams). This gives us a timeseries of the noise floor, which varies by instrument and with flow speed, at that depth bin.\n", - "\n", - "We can do this using the `doppler_noise_level` function. The two inputs for this function are the power spectra and \"pct_fN\", the percent of the Nyquist frequency that the noise floor exists. Because in this particularly dataset we can't see the noise floor, we'll just use 90% or pct_fN=0.9 as an example. If the noise floor began at 0.4 Hz and ran til our maximum frequency of 0.5 Hz, we'd use pct_fN = 0.4 Hz / 0.5 Hz = 0.8.\n", - "\n", - "Because ADCP noise is a function of range as well as flow speed and instrument frequency, we'll use a for loop to measure the noise from each spectra:" - ] - }, - { - "cell_type": "code", - "execution_count": 28, - "metadata": {}, - "outputs": [], - "source": [ - "# Setting up \"for\" loop\n", - "n = [None]*len(ds.range)\n", - "\n", - "for r in range(len(ds.range)):\n", - " # Calculate doppler noise from spectra from each depth bin\n", - " n[r] = avg_tool.doppler_noise_level(ds_avg['auto_spectra'][r], pct_fN=0.9)\n", - "\n", - "ds_avg['noise'] = xr.concat(n, dim='range')\n", - "\n", - "del n # save memory" - ] - }, - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Now that we know the Doppler noise level, we can use that as input for the TKE functions. We'll first calculate the vertical TKE component, using the function `turbulent_kinetic_energy`, inputting our raw vertical beam data and the noise floors we calculated above for each ensemble." - ] - }, - { - "cell_type": "code", - "execution_count": 29, - "metadata": {}, - "outputs": [], - "source": [ - "# Vertical TKE component (w'w' bar)\n", - "ds_avg['wpwp_bar'] = avg_tool.turbulent_kinetic_energy(ds['vel_b5'], noise=ds_avg['noise'])" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Next we can calculate the TKE magnitude using the function `total_turbulent_kinetic_energy`. This method is a wrapper around the `stress_tensor_5beam` function, which calculates the individual Reynolds stress tensor components and takes the same inputs. As an fyi, this function will drop at least one warning every time it's run, primarily the coordinate system warning. This function also requires the input raw data to be in beam coordinates, so we'll create a copy of the raw data and rotate it to 'beam'. If you do not, this function will do so automatically and rotate the original." - ] - }, - { - "cell_type": "code", - "execution_count": 30, - "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "c:\\users\\mcve343\\mhkit-python\\mhkit\\dolfyn\\adp\\turbulence.py:383: UserWarning: The beam-variance algorithms assume the instrument's (XYZ) coordinate system is aligned with the principal flow directions.\n", - " warnings.warn(\" The beam-variance algorithms assume the instrument's \"\n" - ] - } + "cells": [ + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Analyzing ADCP Data with MHKiT\n", + "\n", + "The following example illustrates a straightforward workflow for analyzing Acoustic Doppler Current Profiler (ADCP) data utilizing MHKiT. MHKiT has integrated the DOLfYN codebase as a module to facilitate ADCP and Acoustic Doppler Velocimetry (ADV) data processing.\n", + "\n", + "Here is a standard workflow for ADCP data analysis:\n", + "\n", + "1. **Import Data**\n", + "\n", + "2. **Review, QC, and Prepare the Raw Data**:\n", + " 1. Calculate or verify the correctness of depth bin locations\n", + " 2. Discard data recorded above the water surface or below the seafloor\n", + " 3. Assess the quality of velocity, beam amplitude, and/or beam correlation data\n", + " 4. Rotate Data Coordinate System\n", + "\n", + "3. **Data Averaging**: \n", + " - If not already executed within the instrument, average the data into time bins of a predetermined duration, typically between 5 and 10 minutes\n", + "\n", + "4. **Speed and Direction**\n", + "\n", + "5. **Plotting**\n", + "\n", + "6. **Saving and Loading DOLfYN datasets**\n", + "\n", + "7. **Turbulence Statistics**\n", + " 1. Turbulence Intensity (TI)\n", + " 2. Power Spectral Densities\n", + " 3. Instrument Noise\n", + " 4. TKE Dissipation Rate\n", + " 5. Noise-corrected TI\n", + " 6. TKE Componenets\n", + " 7. TKE Production\n", + " 8. TKE Balance \n", + "\n", + "\n", + "Begin your analysis by importing the requisite tools:" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "c:\\Users\\mcve343\\anaconda3\\envs\\tsdat-pipelines\\lib\\site-packages\\xarray\\backends\\cfgrib_.py:29: UserWarning: Failed to load cfgrib - most likely there is a problem accessing the ecCodes library. Try `import cfgrib` to get the full error message\n", + " warnings.warn(\n" + ] + } + ], + "source": [ + "from mhkit import dolfyn\n", + "from mhkit.dolfyn.adp import api" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## 1. Importing Raw Instrument Data\n", + "\n", + "One of DOLfYN's key features is its ability to directly import raw data from an Acoustic Doppler Current Profiler (ADCP) right after it has been transferred. In this instance, we are using a Nortek Signature1000 ADCP, with the data stored in files with an '.ad2cp' extension. This specific dataset represents several hours of velocity data, captured at 1 Hz by an ADCP mounted on a bottom lander within a tidal inlet. The list of instruments compatible with DOLfYN can be found in the [MHKiT DOLfYN documentation](https://mhkit-software.github.io/MHKiT/mhkit-python/api.dolfyn.html).\n", + "\n", + "We'll start by importing the raw data file downloaded from the instrument. The `read` function processes the raw file and converts the information into an xarray Dataset. This Dataset includes several groups of variables:\n", + "\n", + "1. **Velocity**: Recorded in the coordinate system saved by the instrument (beam, XYZ, ENU)\n", + "2. **Beam Data**: Includes amplitude and correlation data\n", + "3. **Instrumental & Environmental Measurements**: Captures the instrument's bearing and environmental conditions\n", + "4. **Orientation Matrices**: Used by DOLfYN for rotating through different coordinate frames.\n" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Reading file data/dolfyn/Sig1000_tidal.ad2cp ...\n" + ] + } + ], + "source": [ + "ds = dolfyn.read(\"data/dolfyn/Sig1000_tidal.ad2cp\")" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "There are two ways to see what's in a Dataset. The first is to simply type the dataset's name to see the standard xarray output. To access a particular variable in a dataset, use dict-style (`ds['vel']`) or attribute-style syntax (`ds.vel`). See the [xarray docs](http://xarray.pydata.org/en/stable/getting-started-guide/quick-overview.html) for more details on how to use the xarray format." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "
<xarray.Dataset>\n",
+       "Dimensions:              (time: 55000, dirIMU: 3, dir: 4, range: 28, beam: 4,\n",
+       "                          earth: 3, inst: 3, q: 4, time_b5: 55000,\n",
+       "                          range_b5: 28, x1: 4, x2: 4)\n",
+       "Coordinates:\n",
+       "  * time                 (time) datetime64[ns] 2020-08-15T00:20:00.500999927 ...\n",
+       "  * dirIMU               (dirIMU) <U1 'E' 'N' 'U'\n",
+       "  * dir                  (dir) <U2 'E' 'N' 'U1' 'U2'\n",
+       "  * range                (range) float64 0.6 1.1 1.6 2.1 ... 12.6 13.1 13.6 14.1\n",
+       "  * beam                 (beam) int32 1 2 3 4\n",
+       "  * earth                (earth) <U1 'E' 'N' 'U'\n",
+       "  * inst                 (inst) <U1 'X' 'Y' 'Z'\n",
+       "  * q                    (q) <U1 'w' 'x' 'y' 'z'\n",
+       "  * time_b5              (time_b5) datetime64[ns] 2020-08-15T00:20:00.4384999...\n",
+       "  * range_b5             (range_b5) float64 0.6 1.1 1.6 2.1 ... 13.1 13.6 14.1\n",
+       "  * x1                   (x1) int32 1 2 3 4\n",
+       "  * x2                   (x2) int32 1 2 3 4\n",
+       "Data variables: (12/38)\n",
+       "    c_sound              (time) float32 1.502e+03 1.502e+03 ... 1.498e+03\n",
+       "    temp                 (time) float32 14.55 14.55 14.55 ... 13.47 13.47 13.47\n",
+       "    pressure             (time) float32 9.713 9.718 9.718 ... 9.596 9.594 9.596\n",
+       "    mag                  (dirIMU, time) float32 72.5 72.7 72.6 ... -197.2 -195.7\n",
+       "    accel                (dirIMU, time) float32 -0.00479 -0.01437 ... 9.729\n",
+       "    batt                 (time) float32 16.6 16.6 16.6 16.6 ... 16.4 16.4 15.2\n",
+       "    ...                   ...\n",
+       "    telemetry_data       (time) uint8 0 0 0 0 0 0 0 0 0 0 ... 0 0 0 0 0 0 0 0 0\n",
+       "    boost_running        (time) uint8 0 0 0 0 0 0 0 0 1 0 ... 0 1 0 0 0 0 0 0 1\n",
+       "    heading              (time) float32 -12.52 -12.51 -12.51 ... -12.52 -12.5\n",
+       "    pitch                (time) float32 -0.065 -0.06 -0.06 ... -0.06 -0.05 -0.05\n",
+       "    roll                 (time) float32 -7.425 -7.42 -7.42 ... -6.45 -6.45 -6.45\n",
+       "    beam2inst_orientmat  (x1, x2) float32 1.183 0.0 -1.183 ... 0.5518 0.0 0.5518\n",
+       "Attributes: (12/34)\n",
+       "    filehead_config:       {"CLOCKSTR": {"TIME": "\\"2020-08-13 13:56:21\\""}, ...\n",
+       "    inst_model:            Signature1000\n",
+       "    inst_make:             Nortek\n",
+       "    inst_type:             ADCP\n",
+       "    burst_config:          {"press_valid": true, "temp_valid": true, "compass...\n",
+       "    n_cells:               28\n",
+       "    ...                    ...\n",
+       "    proc_idle_less_12pct:  0\n",
+       "    rotate_vars:           ['vel', 'accel', 'accel_b5', 'angrt', 'angrt_b5', ...\n",
+       "    coord_sys:             earth\n",
+       "    fs:                    1\n",
+       "    has_imu:               1\n",
+       "    beam_angle:            25
" ], - "source": [ - "ds_beam = dolfyn.rotate2(ds, 'beam', inplace=False)\n", - "ds_avg['TKE'] = avg_tool.total_turbulent_kinetic_energy(ds_beam, noise=ds_avg['noise'], orientation='up', beam_angle=25)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "And plotting TKE:" - ] - }, - { - "cell_type": "code", - "execution_count": 31, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 31, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } + "text/plain": [ + "\n", + "Dimensions: (time: 55000, dirIMU: 3, dir: 4, range: 28, beam: 4,\n", + " earth: 3, inst: 3, q: 4, time_b5: 55000,\n", + " range_b5: 28, x1: 4, x2: 4)\n", + "Coordinates:\n", + " * time (time) datetime64[ns] 2020-08-15T00:20:00.500999927 ...\n", + " * dirIMU (dirIMU) : Nortek Signature1000\n", + " . 15.28 hours (started: Aug 15, 2020 00:20)\n", + " . earth-frame\n", + " . (55000 pings @ 1Hz)\n", + " Variables:\n", + " - time ('time',)\n", + " - time_b5 ('time_b5',)\n", + " - vel ('dir', 'range', 'time')\n", + " - vel_b5 ('range_b5', 'time_b5')\n", + " - range ('range',)\n", + " - orientmat ('earth', 'inst', 'time')\n", + " - heading ('time',)\n", + " - pitch ('time',)\n", + " - roll ('time',)\n", + " - temp ('time',)\n", + " - pressure ('time',)\n", + " - amp ('beam', 'range', 'time')\n", + " - amp_b5 ('range_b5', 'time_b5')\n", + " - corr ('beam', 'range', 'time')\n", + " - corr_b5 ('range_b5', 'time_b5')\n", + " - accel ('dirIMU', 'time')\n", + " - angrt ('dirIMU', 'time')\n", + " - mag ('dirIMU', 'time')\n", + " ... and others (see `.variables`)" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "ds_dolfyn = ds.velds\n", + "ds_dolfyn" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## 2. Initial Steps for Data Quality Control (QC)\n", + "\n", + "### 2.1: Set the Deployment Height\n", + "\n", + "When using Nortek instruments, the deployment software does not factor in the deployment height. The deployment height represents the position of the Acoustic Doppler Current Profiler (ADCP) within the water column. \n", + "\n", + "In this context, the center of the first depth bin is situated at a distance that is the sum of three elements: \n", + "1. Deployment height (the ADCP's position in the water column)\n", + "2. Blanking distance (the minimum distance from the ADCP to the first measurement point)\n", + "3. Cell size (the vertical distance of each measurement bin in the water column)\n", + "\n", + "To ensure accurate readings, it is critical to calibrate the 'range' coordinate to make '0' correspond to the seafloor. This calibration can be achieved using the `set_range_offset` function. This function is also useful when working with a down-facing instrument as it helps account for the depth below the water surface. \n", + "\n", + "For those using a Teledyne RDI ADCP, the TRDI deployment software will prompt you to specify the deployment height/depth during setup. If there's a need for calibration post-deployment, the `set_range_offset` function can be utilized in the same way as described above." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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888/n9NPP33KbU45YQHYbbfdZuUpoGfis5/9LB/96Ed597vfzSOPPMKOO+7IO9/5zmntqCAIgiDMK7bhm27POussTjzxRBqNxqT17Xabs846a8slLBs3buQnP/kJjzzyyBNO5xx77LHTafJJGRwc5IILLuCCCy6YtTYFQRAEYV6wDScs3vtSjjyRO++8kyVLlkyrzSknLP/+7//OMcccw/j4OENDQ5MCUkrNasIiCIIgCNss22DCsnjxYpRSKKV49rOfPSlHsNYyPj7OiSeeOK22p5ywfPCDH+T444/nnHPOecKpHkEQBEEQFi4XXHAB3nuOP/54zjrrLIaHh8ttlUqFXXfdlZe+9KXTanvKCcv999/Pe9/7XklWBEEQBGEGFPLDmdSfbxSvHNltt9044IADiON41tqecsJy+OGHc+utt7L77rvPWhCCIAiCsODYxi4JjY6OMjQ0BISXyXY6HTqdzpOWLcpNhSknLEceeSQf/vCH+eUvf8k+++zzhOzpVa961ZSDEARBEARh62bx4sU8+OCDLF++nEWLFj3pTbfFzbjW2idp4emZcsJywgknAPCxj33sCdumG4QgCIIgLDhmKjCcZ5eEvve975VPAH3ve9970oRlJkw5YZG3zAqCIAjCLLCNXRI6+OCDy+9Xr1496+3Pr70VBEEQBGGz8vnPf55dd92VWq3GS17yEn7yk5/Meh+XXXYZ//Iv//KE9f/yL//ytALjp2NaL45rtVrceOONrFmzhiRJJm2binlREARBEBYqcyE//PrXv84pp5zCRRddxEte8hIuuOACDj/8cO655x6WL18+7Vgez7nnnsvFF1/8hPXLly/nHe94x1MKjJ+OKScsP/vZz3jlK19Ju92m1WqxZMkS1q9fT6PRYPny5ZKwCIIgCMKmMAeXhD796U9zwgkn8Pa3vx2Aiy66iP/4j//gS1/6Eqeeeur0Y3kca9asYbfddnvC+l122YU1a9ZMq80p7+0HPvABjjrqKDZs2EC9XueWW27hD3/4A/vvvz+f+tSnphWEIAiCIAjTY3R0dNLS6/WetFySJNx2220cdthh5TqtNYcddhg/+tGPZjWm5cuX8/Of//wJ6++8806WLl06rTanfIbljjvu4OKLL0ZrjTGGXq/H7rvvzic/+UmOO+44Xvva104rkC2J8vmNwxOz0zzTLU+xKZ1bcSO8d/ioNtmEO7G+0qHNiYbnLMXnVt5gAnbgXDAFp71g3c1N0b6wP0e53dhZiKuoqIobWY93tjQNqwmGYe8sKqrgui1UbuTVjcFQNsf32qi4gk8TSNPS3KuMwY4Fo7PrtILRudYsDb+uNRZswmMbsVGM77ZLa7Frj5bf26QbylZzw3NuNw7257hviM63+9YojDyKMqEfby2+PUq0/Spc0oUsGHr1wCJ80oUoxqdhHVrjOy1UFGMWL0fXm6GfKKay617QXIzvtdCDS/Ddcczi5bltuQ4uC/bn3Egd2jOYnZ6Nchmu2kSNrccPLEGNP4bacU945A+oWgMVV4h23C2MeZZiRx4N1evNYIFduSeu2sQ9en84JnEcxjlLS1O01oNlnwCq1gjGbQATQ+TwRXkTh/Fx2WSjtI7wSqNcFk4lmzhYwm0vlM1fQqUgbJs4v3Mbcxh095T/mXmlSzOv86AIxlxF/25/o8L6wn5bmHKNUsQ6GIZrkcZ6j/dQj4NZebQXxj3WGnA0YoNWCv0kTxI0YsOakQ7Lm1WWN2N+uyGjGmlirTFxMAFv16gQG8Xey2Me66RUI832AxWUgrUjPXYeqpK6St6nYnmzQjYh3ofHk2Azdo5VwzVGuhl/ssMQ923sMFCJGE8sy5sVxhNLLQr78Gg7YbBiiI2m6glGZqNop5ZYa8Z7wXy8oZPivC/Nz0YV1mbY0ElLc7L1lKZmCJbrEZuVhuuhakQndYx3MwYrUTleWsF4klEzwZasVRj3XuZwztPI27bGl8cMKMe6MCqHvj3VfJ31oaxznlR5XGoZrsVlPAW1SNNOXb5vYd2GdspAJfwuMzrMG+fDXOhlGan1xEbhvEIp0KjSpqwU4CnXF/PPPMlDJq7QNedz0xcxq/AfuPeexHkqWlExCus9mmBjLqoqgtU5cx5FWO+Aitqywubw4rjpd1jUXbly5aT1Z5xxBmeeeeYTyq9fvx5rLdtvv/2k9dtvvz133333tON4Mt785jfz3ve+l8HBQQ466CAAbrzxRt73vvfxpje9aVptTjlhieMYnf/RW758OWvWrOG5z30uw8PDrF27dlpBCIIgCMJCw/uwzKQ+wNq1aye9iK1arc4wspnz8Y9/nN///vcceuihRFFINZxzHHvssZxzzjnTanPKCct+++3HT3/6U/bcc08OPvhgTj/9dNavX8+VV17J85///GkFIQiCIAgLDZefhZpJfQhvjd2UN8dut912GGN4+OGHJ61/+OGHWbFixbTjeDIqlQpf//rX+fjHP86dd95JvV5nn332YZdddpl2m1O+h+Wcc85hhx12AOATn/gEixcv5l3vehfr1q170juCBUEQBEGYeyqVCvvvvz/XXXdduc45x3XXXTdtIeEz8exnP5vXv/71HHnkkTNKVmAaZ1he9KIXld8vX76ca665ZkYBCIIgCMJCxOfLTOpPlVNOOYXjjjuOF73oRfzpn/4pF1xwAa1Wq3xqaDb58pe/zPnnn89vfvMbICQvH/7wh3nrW986rfam9R6WJ+P222/n9NNP59vf/vZsNSkIgiAI2yzOh2Um9afKG9/4RtatW8fpp5/OQw89xAtf+EKuueaaJ9yIO1M+/elP89GPfpSTTjqJAw88EICbb76ZE088kfXr1/OBD3xgym1OKWG59tpr+e53v0ulUuF//+//ze67787dd9/Nqaeeyr//+79z+OGHTzkAQRAEQRC2HCeddBInnXTSZu3js5/9LBdeeCHHHntsue5Vr3oVe++9N2eeeebmTVguvfRSTjjhBJYsWcKGDRv44he/yKc//WlOPvlk3vjGN/KLX/yC5z73uVMOQBAEQRAWIt57/Axuup1J3c3Ngw8+yAEHHPCE9QcccAAPPvjgtNrc5JtuP/OZz3Deeeexfv16/vmf/5n169fzj//4j9x1111cdNFFkqwIgiAIwhQoLgnNZJmvPOtZz+Kf//mfn7D+61//Onvuuee02tzkMyy//e1vOfroowF47WtfSxRFnH/++ey8887T6lgQBEEQhG2Ts846ize+8Y3cdNNN5T0sP/jBD7juuuueNJHZFDY5Yel0OjQaDQCUUlSr1fLxZkEQBEEQps48PkkyI173utfx4x//mP/zf/4PV199NQDPfe5z+clPfsJ+++03rTandNPtF7/4RQYGBgDIsozLL7+c7bbbblIZkR8KgiAIwjMzF08JbUn2339//umf/mnW2tvkhGXVqlVccskl5ecVK1Zw5ZVXTiqjlJKERRAEQRAWIKOjo5tcdlPezPt4Njlh+f3vfz/lxucV2gS5oYlQaSes8w7lXF90WEjxckmc11EpPFQuywVzuQ68ECEqDTYJYjodBQmiqYDNUDbr91+I5wDf66CquWhw4vpCouhsWJ9v07VmEORl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hBN+g0+6XcEoNalNCJcTUt//PowvVIwqpYvWU36/JSiEnjOpP185++yz+dCHPsTHP/5x9t9/f5rN5qTt07n6MWX54RlnnAHAunXryrMfz3nOc1i2bNmUO38mXvziF3PVVVdx2mmn8bGPfYzddtuNCy64gGOOOWbW+xIEQRCELclML+vM10tCAK985SsBeNWrXjXpvtcisdxs8sOJtNttTjrpJK688sqyQ2MMxx57LJ/97Gdn/czL//gf/4P/8T/+x6y2KQiCIAhzjfMeu40mLJtD6TPlhOUDH/gAN954I9/61rc48MADAbj55pt573vfywc/+EEuvPDCWQ9SEARBEISth4MPPnjW25yyS+ib3/wml156KUcccUT5FM4rX/lKLrnkEr7xjW/MeoCCIAiCsC3i/EyfFJrrPXh6vv/97/OWt7yFAw44gPvvvx+AK6+8kptvvnla7U05YWm322y//fZPWL98+XLa7fa0ghAEQRCEhUZx0+1MlvnKN7/5TQ4//HDq9Tq33357+Qb6kZERzjnnnGm1OeWE5aUvfSlnnHEG3W7/KZROp8NZZ53FS1/60mkFIQiCIAjCtsPZZ5/NRRddxCWXXEIcx+X6Aw88kNtvv31abU75HpYLLriAV7ziFey888684AUvAODOO++kVqtx7bXXTisIQRAEQVhobMtPCd1zzz0cdNBBT1g/PDw87TfgTjlh2WefffjNb37DV77yFe6++24A3vzmN3PMMcdQr9enFYQgCIIgLDTsDJ8Smkndzc2KFSu499572XXXXSetv/nmm9l9992n1eaUEpY0Tdlrr7349re//bTGZEEQBEEQtl4+8YlP8B//8R/ccccdVCqVKZ8VOeGEE3jf+97Hl770JZRSPPDAA/zoRz/iQx/6EB/96EenFdOUEpY4jifduyIIgiAIwvRwMKMnfTbnPbdJknD00Ufz0pe+lEsvvXTK9U899VSccxx66KG0220OOuggqtUqH/rQhzj55JOnFdOULwm95z3v4bzzzuOLX/wiUTTl6oIgCIIgEDQAM1EBbE6NwFlnnQXA5ZdfPq36Sin+5m/+hg9/+MPce++9jI+P87znPY+BgYFpxzTljOOnP/0p1113Hf/1X//FPvvs8wQ/wL/+679OOxhBEARBEKbG6OjopM/VapVqtTpH0QSOP/54PvOZzzA4OMjznve8cn2r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HwoNDaXrrruO9u7d27Adr0Zt6rHb7UREtGPHDvriiy983g927dpFkydPpr///jsgXh92aeABy0VQFIXmzJlDXbt2pfz8fCIqf5Ndt24diaJIhw4dIiLtE9QVV1xBgiBQbGwsffLJJ/7qdrVqU8/Z13R434wC8U3pfOtZuHAhjR8/ngYMGECff/65P7pco9rUc+DAASIiWrNmDaWnp+sDl0Csx8s78NqwYQNdf/31NHr06CqXe+ONN2j06NGUkpKiX0MViGpTj9PppO7du5MgCBQfH08rV65s6G7WWm1fH8bqGw9YalBUVESLFy/WP2VU5P0DvWHDBurTpw+NGzeu0nM7dOign2Y4deoU9e3bl955553673g16qKezMzMBulrbdTl6xMI6qKeBQsW+Ez35ymtmuqpisPhoBdffJE6dOhA33//PRFpF94GymC4ruohIiopKaGHH36YFi5cWG/9PZe6qOfso0aM1Se+6LYaM2fORJMmTbBy5coq78XhvXjupptuwg033IDvvvvO5+uXJ06cwOnTp9GqVSsAQJMmTfDVV1/h0UcfbZgCzlJX9cTGxjZYn2tS16+Pv9VVPXFxcQDKL3Rs3rx5A/S+snPVczYigtFoxO2334727dtj7ty5OHz4MIYOHYqvvvqqAXpcs7qsZ9WqVQgJCcG7777rt6+a11U9Dz74INasWdMAPWYMfNHt2VavXk0xMTHUrl07WrVqVY3Leg+V7t27l0aMGEGRkZG0evVqOnDgAM2dO5c6d+7s93PSXA/X05DOp57qzJ8/n8xmM8myTG3atPFrTVxPZYFUD7u88IClAlVVqW/fvhQREaFP+/PPP6mgoMDnfg9VXfF//Phxuu+++6hNmzaUkJBALVu2pM8++6xB+l0drqcc11P/LqYeIu10yRdffEEtW7akhIQErqeOXWr1sMsPD1jI94LRn376iSwWC/33v/+lp556iuLj46lLly6UkJBAc+bMqfI5FR07dkz/+q+/cD1cT0Oqq3psNhv179+fpkyZ0iD9rg7XE9j1sMvXZT1g2bx5c5XTR44cSYIg0MCBA2nVqlW0adMmmjBhArVu3Vr/pa7qYjN/XxzI9XA9Daku6/F+qq94G4CGxvUEdj2MXZYDlpycHOrRowcJgkCrV68mIt9f0CNHjtDEiRPp119/1acVFRXRxIkTKTExMaBuVkXE9RBxPQ2J6+F6GPMHgagR5c3XgR9++AGTJk1Cs2bN4HK54Ha79W8hEJH+bYwzZ84gLCzM57lz5szBe++9h7Vr1wbMt0u4nnJcT/3jespxPYw1rMvua81t27ZF9+7dMXv2bNx///04cuQI3nzzTQC+mRcVf5m9Y7qDBw+ibdu2iImJadhO14Dr4XoaEtfD9TDmNw1/UMd/vOf8y8rKiIjo77//ptGjR1P37t31PJ+zr5AvLi6mv//+m2bMmEHx8fG0YsWKhu10DbgerqchcT1cD2P+dFkNWCry/uKuWbOGkpKSaOLEiZWWycnJocmTJ1NCQgIlJiZWCjMMJFwP19OQuB6uh7GGdskNWCoGcJ3Ne+GZqqo+n0amTZtGHTt2pO3btxNR+ZXwRUVFlJWVRUuXLq3fTteA6+F6GhLXw/UwFqguqQHLrFmzKD09nUaOHEk///yz/imjul9y7y94bm4u9evXj+6//346dOgQ3XXXXX6/twUR18P1NCyuh+thLJBdEgOWnJwc6tSpE/Xo0YOef/55SkxMpB49etBvv/3ms9zSpUspLi6uyjs0zp49m2RZJlmWKTExUY9Q9weuh+tpSFwP18NYY3BJDFgmTJhA6enp+uNjx46RIAj6IdDjx49TamoqRUdH02uvveZz8yOn00krVqygyMhIat++Pa1Zs6ahu18J18P1NCSuh+thrDFo9AOW48eP01VXXUUzZszQp23bto0GDRpEv//+OxER2e12evPNN+nIkSOVnl9cXEx9+/almTNnNlifa8L1+OJ66hfX44vrYSxwNbobx23ZsgUJCQlo2bKlPm3gwIE4dOgQHnvsMZw5cwbPP/88YmNjUVRUhDvvvBOjR49G165dK7WlqipEUYTb7YYsyw1Zho7r4XoaEtfD9TDWaPl7xFRbX3/9NbVu3Zri4+MpNjaWRo4cSbt37yYiLXF06tSpdN9991FUVBQtW7aMCgsL6eOPP6Y+ffrQqFGjqsxi8Seuh+tpSFwP18NYY9coBiyHDx+m6667jp577jnat28fZWdnU5s2bejOO++k/fv368tNmDCBRo0a5fPckSNHUkpKSkDlY3A95bie+sf1lON6GGu8GsWt+X/99Vfs2LEDw4YNQ9u2bXH33Xfj1VdfxYkTJ/DKK68A0G4vvXHjRlx99dX6Y0A7LBoaGorg4GC/9f9sXA/X05C4Hq6HsUtBozixeerUKSQmJkJRFH3aoEGD8Ouvv2LJkiVYv349brnlFiQlJWHGjBmIiopCYmIiPvjgA3z55ZfIzMz0Y+8r43q4nobE9XA9jF0S/HFY53zl5+eT2WyudH+B7du3U2pqKk2YMIGIiE6fPk29evWihIQEateuHXXv3p2+//57f3S5RlwP19OQuB6uh7FLQaP5ltBtt92GsrIyfPHFFwgJCdGnP/TQQyguLsbHH38Mg8GAkpISnDhxAsePH0fPnj392OOacT1cT0Piergexho9f4+YaisvL49kWaa33nqLHA6HPv3f//43tWvXzo89uzBcT2DjegIb18PY5adRXMMCAF27dsWkSZMwa9YsGAwGDB48GKqqIjc3Fw8++KC/u3feuJ7AxvUENq6HsctPozkl5DVmzBh88skniIuLQ2FhIYKDg5GdnY1OnTr5u2sXhOsJbFxPYON6GLt8NLoBi91uR0FBAX7++WeYTKZG/+mD6wlsXE9g43oYu3w0ugELY4wxxi4/jeLGcYwxxhi7vPGAhTHGGGMBjwcsjDHGGAt4PGBhjDHGWMDjAQtjjDHGAh4PWBhjjDEW8HjAwhhjjLGAxwMWxhhjjAU8HrAwxhhjLODxgIXVq+HDhyMtLa3B15uVlQVBECAIAp588skGX39dysrKQkRERL20nZCQgNdff71e2maMsbrEAxZ2wbwDgup+pk+fjnnz5iErK8sv/QsLC8PRo0cxa9Ysv6y/McjJycGjjz7q1z58++23GDhwIGJiYiAIAj799NNKyxw7dgzDhw9HTEwMgoKC0L9/f/z222/6/EOHDlW7H2ZnZ+vLHT58GAMGDEBQUBCio6PxzDPPwO12n7OP2dnZ6NixI8xmMzp37ozVq1f7zF+5ciX69euHyMhICIKAvLy8WtV+6tQpPPDAAwgLC0NERAQyMjJQWlqqz7fb7Rg+fDg6d+4MWZb9MvhnLFDwgIVdsKNHj+o/r7/+uj5A8P5MnDgR4eHh9XZ04FwEQUCLFi0QGhrql/U3BlFRUQgKCvJrH6xWK7p27YrMzMwq5xMR0tLScODAAXz22WfYvn074uPjkZKSAqvVCgBo1aqVz7539OhRzJgxAyEhIbj11lsBAIqiYMCAAXA6ndi8eTPef/99ZGVlYerUqTX2b/PmzRgyZAgyMjKwfft2pKWlIS0tDbt27fKpoXfv3njllVfOq/YHHngAu3fvxrp16/DFF1/g22+/9RlAKooCi8WCcePGISUl5bzaZuySQ4zVgcWLF1N4eHil6cOGDaNBgwbpj2+88UYaO3YsjR8/niIiIig6OpoWLlxIpaWlNHz4cAoJCaG2bdvS6tWrfdrJz8+n/v37U3BwMEVHR9ODDz5Ix48fP+/+ZGZmUrt27chkMlF0dDTddddd+jxFUejFF1+khIQEMpvN1KVLF8rOzvZ5/q5du2jAgAEUGhpKISEh1Lt3b9q3b5/+/BkzZtAVV1xBRqORunbtSl9++aX+3IMHDxIAWrFiBd10001ksVioS5cutHnz5kp9b9WqFVksFkpLS6M5c+b41JKXl0c33XQThYSEUGhoKPXo0YNycnKq3A6qqtK0adOoVatWZDQaqWXLlvTEE0/o8+Pj4+m1117THwOgRYsWUVpaGlksFmrXrh199tlntd4GRESLFi2ijh07kslkog4dOlBmZmaVfasKAPrkk098pu3Zs4cA0K5du/RpiqJQVFQULVq0qNq2unXrRiNGjNAfr169mkRRpMLCQn3aW2+9RWFhYeRwOKpt595776UBAwb4TEtKSqLHHnus0rLe13j79u3Vtuf1yy+/EACf1+7LL78kQRDor7/+qrT82b9LjF1u+AgLa3Dvv/8+mjVrhp9++glPPPEERo8ejXvuuQe9evXCzz//jH79+mHo0KEoKysDABQVFeGWW25B9+7dkZubizVr1uDYsWO49957z2u9ubm5GDduHGbOnIk9e/ZgzZo1uOGGG/T5L730Ej744AO8/fbb2L17NyZMmIAHH3wQmzZtAgD89ddfuOGGG2AymbB+/Xps27YNI0aM0E8pzJs3D3PnzsWcOXOwc+dOpKam4o477vA5dQEA//73vzFx4kTk5eWhffv2GDJkiN7G1q1bkZGRgbFjxyIvLw8333wznn/+eZ/nP/DAA4iNjUVOTg62bduGyZMnw2AwVFnzihUr8Nprr+Gdd97Bb7/9hk8//RSdO3eucTvNmDED9957L3bu3InbbrsNDzzwAE6dOlWrbbBkyRJMnToVL7zwAgoKCvDiiy/iueeew/vvv1/bl6kSh8MBADCbzfo0URRhMpnw/fffV/mcbdu2IS8vDxkZGfq0LVu2oHPnzmjevLk+LTU1FWfOnMHu3burXf+WLVsqHd1ITU3Fli1bLqieiu1GRETgmmuu0aelpKRAFEVs3br1otpm7JLk7xETuzSczxGW3r1764/dbjcFBwfT0KFD9WlHjx4lALRlyxYiIpo1axb169fPp90//viDANCePXtq3Z8VK1ZQWFgYnTlzptLydrudgoKCKh3tyMjIoCFDhhAR0ZQpU6h169bkdDqrXGdMTAy98MILPtOuvfZaevzxx4mo/NP3u+++q8/fvXs3AaCCggIiIhoyZAjddtttPm3cd999PrWEhoZSVlZWlX0429y5c6l9+/bV9rmqIyzPPvus/ri0tJQA6EeKzrUN2rZtSx999JHPtFmzZlFycnKt+osqjrA4nU6Ki4uje+65h06dOkUOh4NefvllAlBpv/AaPXo0JSYm+kwbOXJkpeWtVisBqHREryKDwVCppszMTIqOjq607PkcYXnhhReoffv2laZHRUXRm2++WWk6H2Fhlzs+wsIaXJcuXfT/S5KEyMhIn0/93k/Af//9NwBgx44d2LBhA0JCQvSfjh07AgD2799f6/X+85//RHx8PNq0aYOhQ4diyZIl+lGcffv2oaysDP/85z991vPBBx/o68jLy0OfPn2qPJpx5swZHDlyBNdff73P9Ouvvx4FBQXV1t+yZUufWgsKCpCUlOSzfHJyss/jp556Co888ghSUlLw8ssv17gN7rnnHthsNrRp0wYjR47EJ598cs6LTCv2Lzg4GGFhYXr/atoGVqsV+/fvR0ZGhs82fP7558/rdTqbwWDAypUrsXfvXjRt2hRBQUHYsGEDbr31Vohi5bcwm82Gjz76yOfoSm0cPnzYp98vvvjiBff5bKNGjfJpmzF2/mR/d4Bdfs7+YycIgs80QRAAAKqqAgBKS0sxcODAKi9o9P7Br43Q0FD8/PPP2LhxI9auXYupU6di+vTpyMnJ0b+ZsWrVKlxxxRU+zzOZTAAAi8VS63XVpKZaa2P69Om4//77sWrVKnz55ZeYNm0ali5divT09ErLtmrVCnv27MHXX3+NdevW4fHHH8err76KTZs2VXsaqarXx9u/mraBdxsuWrSo0qBLkqRa11eVq6++Gnl5eSguLobT6URUVBSSkpJ8Tqd4ffzxxygrK8NDDz3kM71Fixb46aeffKYdO3ZMnxcTE+Pz7Z6mTZvq87zLVXxeixYtat3/mTNnYuLEiZX64x0Ierndbpw6deq8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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "ds[\"vel\"][1].plot()" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [], + "source": [ + "# The ADCP transducers were measured to be 0.6 m from the feet of the lander\n", + "api.clean.set_range_offset(ds, 0.6)" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "So, the center of bin 1 is located at 1.2 m:" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "
<xarray.DataArray 'range' (range: 28)>\n",
+       "array([ 1.2,  1.7,  2.2,  2.7,  3.2,  3.7,  4.2,  4.7,  5.2,  5.7,  6.2,  6.7,\n",
+       "        7.2,  7.7,  8.2,  8.7,  9.2,  9.7, 10.2, 10.7, 11.2, 11.7, 12.2, 12.7,\n",
+       "       13.2, 13.7, 14.2, 14.7])\n",
+       "Coordinates:\n",
+       "  * range    (range) float64 1.2 1.7 2.2 2.7 3.2 ... 12.7 13.2 13.7 14.2 14.7\n",
+       "Attributes:\n",
+       "    units:    m
" ], - "source": [ - "# Remove estimations below 0\n", - "ds_avg['TKE'] = ds_avg['TKE'].where(ds_avg['TKE']>0)\n", - "\n", - "ds_avg['TKE'].plot(cmap='Reds', ylim=(0,11))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "TKE esimations are generally more complete than those of dissipation rates because they are found directly from the along-beam velocity measurements. Missing TKE estimations exist whenever the noise calculated by the function `doppler_noise_level` is greater than the calculated TKE, as TKE can't be less than zero. Noise levels are affected by the instrument's processor and working frequency, water waves and other sources of \"interference\", instrument motion, current speed, intricacies in the spectra calculation, the ability to see the noise floor in the spectra, etc.\n", - "\n", - "You may also note that high TI doesn't always correlate with high TKE. TI is the ratio of flow speed standard devation to the mean, which is naturally lower when flow speeds are higher. When flow speeds are higher, they also have greater kinetic energy and thereby greater TKE.\n", - "\n", - "There is one other important thing to note on TKE measurements by ADCPs: the minimum turbulence length scale that the ADCP is capable of measuring increases with range from the instrument. This means the instrument is only capable of measuring the TKE of larger and larger turbulent structures as the beams travel farther and farther from the instrument head. One of the benefits of calculating w'w' from the vertical beam is that it isn't limited by this beam spread issue." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### 7.6 TKE Production\n", - "\n", - "Though it can't be found from this deployment, we'll go over how to estimate TKE Production. There isn't a specific function in MHKiT-DOLfYN for production, but all the necessary variables are. \n", - "\n", - "If we had aligned the ADCP instrument axes to the flow direction (so \"X\" would align with the main flow), we could use the following equation to estimate production:\n", - "\n", - "$P = -(\\overline{u'w'}\\frac{du}{dz} + \\overline{v'w'}\\frac{dv}{dz} + \\overline{w'w'}\\frac{dw}{dz})$\n", - "\n", - "To start, we need the functions `reynolds_stress_4beam` or `stress_tensor_5beam` to get the stress tensor components $\\overline{u'w'}$ and $\\overline{v'w'}$. We also need the vertical TKE component, $\\overline{w'w'}$. \n", - "\n", - "Both of these functions will give comparable results, but it should be noted that `stress_tensor_4beam` assumes the instrument is oriented with 0 degrees pitch and roll, and will throw a warning if they are greater than 5 degrees. The `stress_tensor_5beam` gives more leeway to instrument tilt, but shouldn't be used if pitch and roll angles are greater than 10 degrees." - ] - }, - { - "cell_type": "code", - "execution_count": 32, - "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "c:\\users\\mcve343\\mhkit-python\\mhkit\\dolfyn\\adp\\turbulence.py:383: UserWarning: The beam-variance algorithms assume the instrument's (XYZ) coordinate system is aligned with the principal flow directions.\n", - " warnings.warn(\" The beam-variance algorithms assume the instrument's \"\n", - "c:\\users\\mcve343\\mhkit-python\\mhkit\\dolfyn\\adp\\turbulence.py:391: UserWarning: 100.0 % of measurements have a tilt greater than 5 degrees.\n", - " warnings.warn(f\" {pct_above_thresh} % of measurements have a tilt \"\n" - ] - } + "text/plain": [ + "\n", + "array([ 1.2, 1.7, 2.2, 2.7, 3.2, 3.7, 4.2, 4.7, 5.2, 5.7, 6.2, 6.7,\n", + " 7.2, 7.7, 8.2, 8.7, 9.2, 9.7, 10.2, 10.7, 11.2, 11.7, 12.2, 12.7,\n", + " 13.2, 13.7, 14.2, 14.7])\n", + "Coordinates:\n", + " * range (range) float64 1.2 1.7 2.2 2.7 3.2 ... 12.7 13.2 13.7 14.2 14.7\n", + "Attributes:\n", + " units: m" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "ds.range" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### 2.2. Discard Data Above Surface Level\n", + "\n", + "To reduce computational load, we can exclude all data at or above the water surface level. Since the instrument was oriented upwards, we can utilize the pressure sensor data along with the function `find_surface_from_P`. However, this approach necessitates that the pressure sensor was calibrated or 'zeroed' prior to deployment. If the instrument is facing downwards or doesn't include pressure data, the function `find_surface` can be used to detect the seabed or water surface.\n", + "\n", + "It's important to note that Acoustic Doppler Current Profilers (ADCPs) do not measure water salinity, so you'll need to supply this information to the function. The dataset returned by this function includes an additional variable, \"depth\". If `find_surface_from_P` is invoked after `set_range_offset`, \"depth\" represents the distance from the water surface to the seafloor. Otherwise, it indicates the distance to the ADCP pressure sensor.\n", + "\n", + "After determining the \"depth\", you can use the nan_beyond_surface function to discard data in depth bins at or above the actual water surface. Be aware that this function will generate a new dataset." + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [], + "source": [ + "api.clean.find_surface_from_P(ds, salinity=31)\n", + "ds = api.clean.nan_beyond_surface(ds)" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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0t3d/Zbr5PN5li5d2nitlNpa3W2aiscqIGKCGhwcpFAoMDAwQD6fb3V3hBBCTGBb43fG+m303fcj8rnM6Nsplula8IER9fVd73oX+++/P1dddRUAxhhmzZrFWWedxXnnnbfB8osXL+acc86hv79/1P1spQk7JkcIIYSY1MboiceDg4PDpjc/EPfNfN/niSeeGPb8Oa01hx9++CafP1csFpkzZw6zZs3i/e9/P3/84x/H9nMYR1LkCCGEENuwWbNmDXsI7qJFi95yuddee40oikb0/LlddtmFG2+8kZ///Of827/9G8YYDjzwQF555ZUx34/xMOmekyOEEEJsE5p9oF993eXLlw+7XDWWz4o74IADht3RfOCBB7Lrrrty3XXXcckll4zZdtarVqv8/ve/Z82aNRhjhr33vve9b8TtSZEjhBBCtECz0Qzr183n81s0JmfKlClYltXU8+ccx2Gfffbh+eefH3mHN+OOO+7gpJNO4rXXXtvgPaUUURSNuE25XCWEEEJsB1zXZb/99hv2/DljDHffffcWP38uiiL+8Ic/0NvbO+b9O+usszjhhBNYuXIlxphh02gKHJAzOUIIIURrNPvU4lGse+6553LyySfzjne8g3e+851ceeWVlEolTj31VABOOukkZsyY0RjX89WvfpW/+qu/YqeddqK/v5+vfe1rvPzyy/zf//t/R9/vjVi9ejXnnnvuBmOGmiFFjhBCCNEKLShyPvjBD7J27VouuOACVq1axd57780dd9zRKCyWLVvWeNIwJLlRp59+OqtWraKjo4P99tuP3/72t+y2226j7/dG/N3f/R333XcfO+6445i1Kc/JEUIIIeq25nNyXv/fX5PPZUffTrFE5/5HT5rfb+VymRNOOIGpU6eyxx574DjOsPc//elPj7hNOZMjhBBCtIDSGtXE3VXNrDsR/fu//zv//d//TSqV4r777hv2ZGWllBQ5QgghxDZDNXm5Sk2ugM4vfelLXHzxxZx33nnDLpk1Q4ocIYQQohWUGnXIZmP9ScT3fT74wQ+OWYEDcgu5EEIIISaAk08+mdtuu21M25QzOUIIIUQrKN3kmZzJdZ4iiiKuuOIK7rzzTvbcc88NBh5/4xvfGHGbUuQIIYQQLRArTdxEodLMuhPRH/7wB/bZZx8Ann766WHvqVFemtuiIuf3v//9iBvebbfdsG2p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jmeTbXPx/YjezjQrX68wf2aBF9YU6c57DJQDIhOTcS36Sj5D1ZBcysGPTCPhG2CoGlL2I+Z0ZbG0wlIKLOgHOnMuq/qrpN3k511kYn63vJ/e9hSRiUm7Fn5k8GxNxrFYG9YoBxEZxyIwYClwLE3asZJUcK2oKYWlwLM1JoZqaMg41rDPL44hiGLW/0is1hPPHa0xcdJ3E8NALaDgOaTrKeWWgsDEBCbG1QrbUqRiTTUyWHHSHxODpZO/by3JwwBHv8H16/7lFYsLL7yQiy66aIPlX3vtNaIoYtq0acPmT5s2jWefffYtt7Fq1aq3XH7VqlWj7vfGfPjDH+bTn/40bW1tjZMp999/P2effXajDhipERc5p59+OmeffTY33ngjSileffVVHn74YT73uc/xla98ZVSd2JhyuYzWw082WZaFMWYjawghhBDbhjhOpmbWB1i+fPmwB+W95X/0twGXXHIJL730Eocddhi2nZQnxhhOOumkUY/JGXGRc95552GM4bDDDqNcLnPIIYfgeR6f+9znOOuss0bViY059thj+ad/+idmz57N7rvvzlNPPcU3vvENTjvttDHdjhBCCLG1mTjGNFHlrF83n89v0dOAp0yZgmVZrF69etj81atX09PT85br9PT0jGj5Zriuy2233cYll1zC7373O9LpNHvssQdz5swZdZsjLnKUUnzpS1/i85//PM8//zzFYpHddtuNXC436k5szHe+8x2+8pWv8KlPfYo1a9Ywffp0Pv7xj3PBBReM+baEEEKIycx1Xfbbbz/uvvtujjvuOCA5U3L33Xdz5plnvuU6BxxwAHfffTfnnHNOY95dd9016sDMLfG2t72NnXfeGaDphwOO+klCruuy22678c53vnNcChyAtrY2rrzySl5++WUqlQp//vOfufTSS3Fdd1y2J4QQQmwt8RhMI3Xuuefy3e9+l5tvvplnnnmGT37yk5RKJU499VQATjrpJM4///zG8meffTZ33HEHX//613n22We56KKLePzxxzdaFDXr+9//PnvssQfpdJp0Os2ee+7JLbfcMur2Rnwm52/+5m/esrJSSpFKpdhpp534+7//e3bZZZdRd0oIIYSY7EycTM2sP1If/OAHWbt2LRdccAGrVq1i77335o477mgMLl62bNmwsbAHHnggP/zhD/nyl7/MP/7jP7Lzzjtz++23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7bXXbtE2Dz300Kb6/Fa2mzE5QgghxESSZFc1c3fV+PXtIx/5CH/84x+56667+OUvf8kDDzzAP/zDP2x2vdNPP52VK1c2piuuuGJE233wwQc58cQTOfDAA1mxYgUAt9xyCw899NCo9kOKHCGEEKIFJurA42eeeYY77riD733ve7zrXe/i4IMP5jvf+Q633norr7766ibXzWQy9PT0NKZ8Pr/F2/3pT3/KkUceSTqd5sknn6RWqwEwMDDAZZddNqp9kSJHCCGE2Ib95V1I64uD0Xr44Ydpb2/nHe94R2Pe4YcfjtaaRx99dJPr/uAHP2DKlCm8/e1v5/zzz6dcLm/xdi+99FKuvfZavvvd7+I4TmP+QQcdxJNPPjnyHUHG5AghhBAtMVZ3V82aNWvY/AsvvJCLLrpo1O2uWrVqg9BM27bp7Oxk1apVG13v7//+75kzZw7Tp0/n97//PV/84hdZunQp//Ef/7FF2126dCmHHHLIBvMLhcKon4Q84YucFStW8MUvfpFf//rXlMtldtppJ2666aZhFaYQQgixrYmavLtq/brLly8fdlnI87y3XP68887j8ssv32SbzzzzzKj78+YxO3vssQe9vb0cdthh/PnPf2bHHXfc7Po9PT08//zz7LDDDsPmP/TQQ8ybN29UfZrQRc66des46KCDWLhwIb/+9a+ZOnUqzz33HB0dHa3umhBCCDEh5PP5LRr78tnPfpZTTjllk8vMmzePnp4e1qxZM2x+GIa8/vrr9PT0bHG/3vWudwHw/PPPb1GRc/rpp3P22Wdz4403opTi1Vdf5eGHH+Zzn/scX/nKV7Z4u282oYucyy+/nFmzZnHTTTc15s2dO7eFPRJCCCHGhoGm7pAa6bjjqVOnMnXq1M0ud8ABB9Df388TTzzBfvvtB8A999yDMaZRuGyJJUuWANDb27tFy5933nkYYzjssMMol8sccsgheJ7H5z73Oc4666wt3u6bTeiBx7/4xS94xzvewQknnEB3dzf77LMP3/3udze5Tq1WG5NHQQshhBDjKYkZaW4aD7vuuitHHXUUp59+Oo899hi/+c1vOPPMM/nQhz7E9OnTgWQoyfz583nssccA+POf/8wll1zCE088wUsvvcQvfvELTjrpJA455BD23HPPLdquUoovfelLvP766zz99NM88sgjrF27lksuuWTU+zKhi5wX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QytFYAzV0FDw6sefSlLMTT15PI6TtHGlwI9iHK2xreT4y7kaSymUqh+3KllOKbA1GGL8KCaqX9axlMKP4vqyyd9r9bj0OI6T43ArFg6SQj7+tpsiRwghhBDbFylyhBBCiBZYH9DZzDRe/umf/okDDzyQTCZDe3v7Fq1zyimnoJQaNh111FHj1sctIWNyhBBCiBaYyLeQ+77PCSecwAEHHMANN9ywxesdddRR3HTTTY3XnudtYunxJ0WOEEIIIYa5+OKLAVi8ePGI1vM8j56ennHo0ejI5SohhBCiBdafyWlmAhgcHBw21Wq1lu3TfffdR3d3N7vssguf/OQn6evra1lfQIocIYQQoiVMHDc9AcyaNYtCodCYFi1a1JL9Oeqoo/j+97/P3XffzeWXX87999/P0UcfTRRFLekPyOUqIYQQYpu2fPly8vl84/XGxsGcd955XH755Zts65lnnmH+/Pmj6seHPvShxt/32GMP9txzT3bccUfuu+8+DjvssFG12SwpcoQQQogWGKuBx/l8fliRszGf/exnOeWUUza5zLx580bdn7dqa8qUKTz//PNS5AghhBDbk62dQj516lSmTp066u2N1CuvvEJfXx+9vb1bbZt/ScbkCCGEEC0QN/mMnPG8hXzZsmUsWbKEZcuWEUURS5YsYcmSJRSLxcYy8+fP52c/+xkAxWKRz3/+8zzyyCO89NJL3H333bz//e9np5124sgjjxy3fm6OnMkRQgghxDAXXHABN998c+P1PvvsA8C9997LggULAFi6dCkDAwMAWJbF73//e26++Wb6+/uZPn06RxxxBJdccklLn5UjRY4QQgjRAhM5oHPx4sWbfUbOm7efTqe58847x60/o7X9XK6qhxDGShN72SRgkzeCO2Nto2rFJPFMKdCa2PaILTcJ9HTTSQin4xI7Hsovodw0ykslAYmVQWLHQ2fbkmWBuFJCuSnMa68QhwFxGIDtEDsehDWUm0IXulD18M31oYzKSUIydVs7cRAkf0YRcaWEnUlhZ1M4+QyxX8XO5VCpLBiDCUJq64qgrSQMNDJU1q7DSrkYP6TaN0gcGfKzpxBVfbRj45d87GwKty2L154DwB8s0zZ7KnbawUSGKAhJd3cQG0NtMAkONX6EsjRRPRR0ffBnHBnCetva0oSlZHm3LYvSmqAUUO6r4KRsUl0F0t0duPks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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "ds[\"vel\"][1].plot()" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### 2.3: Apply an Acoustic Signal Correlation Filter\n", + "\n", + "After removing data from bins at or above the water surface, we typically apply a filter based on acoustic signal correlation to the ADCP data. This helps to eliminate erroneous velocity data points, which can be caused by factors such as bubbles, kelp, fish, etc., moving through one or multiple beams.\n", + "\n", + "You can quickly inspect the data to determine an appropriate correlation value by using the built-in plotting feature of xarray. In the following example, we use xarray's slicing capabilities to display data from beam 1 within a range of 0 to 10 m from the ADCP.\n", + "\n", + "It's important to note that not all ADCPs provide acoustic signal correlation data, which serves as a quantitative measure of signal quality. Older ADCPs may not offer this feature, in which case you can skip this step when using such instruments." + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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9wAAPvroI9SsWRPLli3D4MGDSxxrWccWHSIiojBT314eygcAcnNzgz5ut7vI9XXq1AkrV67EoUOHAAC7du3C2rVr0bt3bwDAkSNHkJmZie7du2vzxMTEoEOHDtiwYcM1ro3IYosOERFRGVWnTp2g79OmTcOzzz5baLrJkycjNzcXTZs2hU6ng9/vxwsvvIAhQ4YAADIzMwEANWvWDJqvZs2a2riKiokOERFRmPkhwx/CRRN13vT0dERHR2vDTSZTkdN//vnnWLRoET799FO0aNECO3fuxLhx45CUlISHH364xHFUBBG9dHU1vcSJiIjKm3BduoqOjg76XCrRefLJJzF58mQMHjwYrVq1woMPPojx48dj1qxZAICEhAQAwMmTJ4PmO3nypDauoopoonM1vcSJiIjo8pxOJ2Q5+E+6TqeDoigAgPr16yMhIQErV67Uxufm5mLTpk3o2LFjqcZa2iJ66epKvcSJiIjKIwUylBDaEoo7b9++ffHCCy8gOTkZLVq0wI4dO/Dqq6/ikUceAQBIkoRx48ZhxowZSElJQf369TF16lQkJSWhX79+JY6zPIhootOpUye88847OHToEBo3bqz1En/11VeLnN7tdgf1OM/NzS2tUImIiK6aX0jwixBe6lnMeefOnYupU6fi8ccfx6lTp5CUlIS//e1veOaZZ7Rp/vGPfyAvLw+PPfYYsrOz0aVLFyxfvhxms7nEcZYHEU10rtRLvKBZs2Zh+vTppRwlERFR2Waz2TBnzhzMmTPnktNIkoTnnnsOzz33XOkFVgZEtI9O/l7i27dvx4cffohXXnkFH374YZHTT5kyBTk5OdonPT29lCMmIiK6snB1RqbQSSKCtzjVqVMHkydPxqhRo7RhM2bMwCeffIIDBw5ccf7c3FzExMQg61ADRFkFDNLFBqp9XidaGCxI89lhlCQk6KyF5vcKH84qLlglPaxy0U13XuELWm5R4wHALXywymY4FBdMkh4O4UGsbNFiaaw3wiDptbjyzwsABkmPLMUJAIiVLchSnEHztzAED8u/fnXdqV4HqutkWCUjPnfE454qJ4LKlep1oJ7ejMfSb8U7dVZp61U5FNcl6wEAVrskdDMLeIVPK58as1UyYrNbxlFvdXya0QG+bicuuRyiiubHE7suOU49/vOfE4CL55aC55g0nx3JelvQMgpOm+l3aOe0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QgJWrlypjc/NzcWmTZvQsWPHYhfvSv7880/8+eefYV9uSVxVi05JelI3b94cej0bjIiIiK618ePHo1OnTpg5cyYGDRqEzZs345133sE777wDIHDpaNy4cZgxYwZSUlK028uTkpLQr1+/sMSgKApmzJiBf/3rX3A4Ag+ctNls+Pvf/46nnnoKshyZtpWrykTatm0LSZIgrrIdTpZlHDp0CA0aNAgpOCIiovIo1PdVFXfeG264AV999RWmTJmC5557DvXr18ecOXMwZMgQbZp//OMfyMvLw2OPPYbs7Gx06dIFy5cvD/kZOqqnnnoK7733Hl588UV07twZALB27Vo8++yzcLlceOGFF8KynuK66iaXTZs2oUaNGlecTgiBli1bhhQUERFRuVfKr3G46667cNddd11yvCRJeO655/Dcc89dk/V/+OGH+Pe//427775bG9a6dWvUqlULjz/+eNlOdG655RY0atQIVatWvaqFdu3aFVFRUaHERUREROXIuXPn0LRp00LDmzZtinPnzkUgooCrumC2atWqq05yAOD7778P6tVNRERUmYTrgYHlSZs2bfDmm28WGv7mm2+iTZs2EYgogL2FiYiIwi3UN5CXw7eXz549G3369MFPP/2k3cm1YcMGpKen4/vvv49YXMVOdIQQ+OKLL7Bq1SqcOnUKiqIEjf/yyy+LtbwrvW2ViIiIyr5bbrkFhw4dwrx583DgwAEAwF/+8hc8/vjjSEpKilhcxU50xo0bh7fffhu33noratasGdLTDq/mbatERETlj3ThE8r85U9SUlLEOh1fSrETnY8//hhffvkl7rzzzpBXfqW3rRIREZVLlejSVWpqKp555hm8/fbbhZ7inJOTg5EjR2LGjBkRe+RMsZ/eExMTE7Zgr/S21YLcbnehN7kSERGVOaX8ZORIevnll1GnTp0iX1URExODOnXq4OWXX45AZAHFTnSeffZZTJ8+HefPnw955erbVlNSUvDjjz9i5MiReOKJJ/Dhhx8WOf2sWbMQExOjfQq+1ZWIiIhK1y+//IKBAwdecvygQYPw888/l2JEwYp96WrQoEH4z3/+g/j4eNSrVw8GgyFo/Pbt2696WcV92+qUKVMwYcIE7Xtubi6THSIiKnuEFPiEMn85kZaWhvj4+EuOr169OtLT00sxomDFbtF5+OGHsW3bNjzwwAMYMGAA7rnnnqBPcVzqbatpaWlFTm8ymbQ3ueZ/o6tB0sEgXczZkvW2IufP9DvgFj6cVVzaMMeF31O9DlhlMzL9gfdzWCUjvMIHr/ABALIUJ7IUJ9wXvudfX6bfAYfiQrLeBi8UbZxB0iNLcSLD79OmU5dVVGwGSQ+v8CFLcWLY0cDTLQdac2CVzYiVLYG4ZDMOdPk4aF51nkeiT2rfE3RWLXaVGlf+MqnDHIoLK10WbdwZv6LFq9anV/i0MqnTHfRd3IW+a/yDNlz9aZXNcCgueIUPC3JqIcVg1car8eavy1jZggz/xdZCg6TXyuJQXIW2c/667GwOxJJiCEyvxg8AM840RaxsQZbixIiY4+hslhErW7TYOpu8QXXlufC6E3W7rHNdvLtQ3S/U5Z29sAw1NnVbbXJX1eoh/7oy/Q54hQ+HfB68l9MUXuGD9UI5ASBBZ0WcbNa2AwDYFT8cigsTYg9o2y7FYMU/jgzQ1pGst6HRqqFobnTBABmN9UZ0MwstrkX2amioPweDpIdB0uOYX0Gaz45EnV7bv1sYLLhhx0CtzhN1evSrchaZfgdMkh6ZfgeuNxphkPSIk8047a8Cr/DhM3sK3ELBSmcTWGUzrJIeB7w2JOkubhsvFCTpgre3us3y19sie7WgbfGbx6ztC2f8CmJlC+rpzdp+rrJeqLMsxYnJJ9ugm/li279aR+58x4RDeGCQ9Kiuk5GgsyJZb8MQ28WHmmUpTqT7quCR6JOwSkZteWqcAHDcb0SCzopY2YIzfgVe4cOkaocx+WQbrHMbYJWMsEpGLQarbA46Dg0X6jR/nLu9F489db9f6bJo5yqVuo/0OdQ7aP/Lf1yf8Su43mhEok4Ph/AgVragv20PAGCbx6MtyyDpYbuwKdT1pBis2vGlnpvUc2QLg0Vbp0HSI9XrQKxswRJHDPZ5A/Oo5V7tkrRto8Y17cSd2jTJehu8wocWBguS9TbEyhak+eza9Oqns1mGQdIjWW+DQdLjdrOz0Plo6qmWGHt0AGySHwBwVnFhtUtCht+HFIMVJ/15KC3q28tD+ZQXMTEx+P333y85/vDhw1f1BvZrpdgtOt999x1+/PFHdOnSJeSVX+ltq0RERFS2de3aFXPnzsVtt91W5Pg33ngDN998cylHdVGxW3Qu1eGoJMaPH4+NGzdi5syZOHz4MD799FO88847GDVqVFiWT0REFBGVqDPylClT8MMPP+D//u//sHnzZuTk5CAnJwebNm3CgAED8OOPP2LKlCkRi6/Yic6//vUv/OMf/8DRo0dDXrn6ttX//Oc/aNmyJZ5//vlCb1slIiIqd9Q+OqF8yol27drhiy++wJo1a9CxY0dUq1YN1apVQ6dOnfDrr7/i888/x3XXXRex+Ip96eqBBx6A0+lEw4YNYbFYCnVGLu6Lu670tlUiIiIq2+666y4cO3YMy5cvx+HDhyGEQOPGjdGjRw9YLJYrL+AaKnaiM2fOnGsQBhERUcUhicAnlPnLm6ioKPTv3z/SYRRS7ESnqNu+iYiIKJ9K9GTksu6q+ugU9wnEdru9RMEQERERhdNVJTqxsbE4derUVS+0Vq1a+OOPP0ocFBERUblWiTojl3VXdelKCIF///vfsFqtV54YgNfrvfJEREREFRUvXZUZV5XoJCcnX/ZlmwUlJCQUuhuLiIio0qgkiU5xurZE6unIV5XohOOZOURERFSxVK1aFZJ0+ctsQghIkgS/319KUQUr9l1XREREdAWVpEVn1apVkQ7hipjoEBERhVsleXv5LbfcEvIyqlWrduWJ8pEkCdu3b7/q92Iy0SEiIqKwcTqdSEtLg8fjCRreunXrIqfPzs7GnDlzEBMTc8VlCyHw+OOPF+syGBMdIiKiMKuMT0Y+ffo0hg0bhh9++KHI8ZdLTgYPHoz4+PirWs+YMWOKFVexX+pJREREV1CJ3l6uGjduHLKzs7Fp0yZERUVh+fLl+PDDD5GSkoJvvvnmkvMpinLVSQ4QeChxgwYNrnr6EiU6v/76Kx544AF07NgRx48fBwB8/PHHWLt2bUkWR0REROXczz//jFdffRXt27eHLMuoW7cuHnjgAcyePRuzZs2KWFzFTnSWLl2Knj17IioqCjt27IDb7QYA5OTkYObMmWEPkIiIiMq+vLw8rWUmNjYWp0+fBgC0atUK27dvL9ay7HY7nnzySdxwww247rrrMGbMGJw5c6ZEcRU70ZkxYwYWLFiAd999N+ihgJ07dy52QYiIiCoiCRf76ZToE+kClECTJk1w8OBBAECbNm3w9ttv4/jx41iwYAESExOLtaxHH30UZ86cwfTp0zFt2jT88ccfGDJkSIniKnZn5IMHD6Jr166FhsfExCA7O7tEQRAREVH5NnbsWGRkZAAApk2bhl69emHRokUwGo1YuHDhZed97bXXMG7cOO3hg1u2bMGhQ4eg0+kABJKom266qURxFbtFJyEhAYcPHy40fO3atcXqHHQtZPod8Aqf9j3V69CGA0CCzgqrbIZduTiPSQrkeikGqzZNpt+Boz4XDJIeGf7z8AofYmULYmWLNn3+danLBYBY2YLVLkmbJla2IMVgRZbiRILOqk2TpTjhFT44FBfSfHZtnEHSI1a2YEmDn+BQXFqc6rrSfHbcsGNg0PwGSQ+rZNTW6RCBW/rWuQ1aPajT51+eGodB0sMqm9ErygNDvvowSTIMkl6LQ/09VrZoy7neGFjvEsfF2wLVZaqsshmb3TJGxBxHluLEt06LFmOaz44ljhhkKU5tPcl6G7zCh9ez6mnLcAgPrLIZWYoTWYoTh3yB+X/zmLVyr3ZJ2rY2SHqtTlO9Djxd/QAcigtWyQiH4tL2DatshkHSa/F6hQ/7vE4YLxxscbIZXuFDc6NLq7PN7kC9qN/jZDPOKi6tfvd5AzE21J/T6swrfDBJehz1uZCgs8ItfGhhsGBs7FGt/vNvm7OKC0ZJQqIusJ5kvS1oGnUbfNJoaVBdf9b5HcTKFq1cAHDbvrthk4F7qpxAPb0ZmX4HMv0ONNYbkaiLguNC3LGyBV7hw5Z2S7Q6tMpmfO6I12JO0Fmxz+vU6q+bWcAg6dHPehBWSY84XWDZVtmMNsY8uIWibQOrZNTiTvPZA9v1wv5rkPTotGsAYmULhtjOIdPv0OL/284HtPJV18na/mCQ9Ej1Bo5Dte7VbfJizV3Y5vEE1Y26vdV9RI0l//6cpTgvTisZ0dDgxIKcWlrMnXYNAAAsyKkFg6SHXTFp604xWLX1vVhzl1Y3DuEpdEwAgDvf+SN/Ga43GoPOB+qxaZXNQecEtbzvNVyiLVvdx9U6V89rjgv1ou5L6noKylKcMEl67XyhniPU7eRQAvuvWk/quUXdLgOtOWhhsGjbaJ1LQTdzoFftapeELMWJFIMVs2r9ELTNdnsvnpQz/Q7tHKCOz78+lXputkpGrfzPx+/FV43+h3RfFbx0rhHOKjJmHb0TKYZAHdfUVSlU5mumEr7U84EHHsDQoUMBANdffz2OHTuGLVu2ID09Hffee+9l5/3999/RoUMH7NixAwBwxx13oE+fPliwYAHmzp2Lhx56CD179ixRXMVu0Xn00UcxduxYvP/++5AkCSdOnMCGDRswceJETJ06tURBEBERVSiV5MnIl2OxWHDddddd1bRvvvkmNm7ciEceeQS33norZs2ahU8++QQrVqyA3+/HwIEDMXr06BLFUexEZ/LkyVAUBbfffjucTie6du0Kk8mEiRMnFvvediIiogqpEiY6fr8fCxcuxMqVK3Hq1CkoihI0/ueff77s/DfddBO2bNmCl156CR07dsTLL7+MpUuXhhxXsRMdSZLw1FNP4cknn8Thw4fhcDjQvHlzWK3WkIMhIiKi8mns2LFYuHAh+vTpg5YtW17xZZ9F0ev1eOqppzBo0CCMGDECH374Id58800kJCSUOK4SPxnZaDSiefPmJV4xERFRRVUZn4y8ePFifP7557jzzjuLPe+uXbvw17/+FQcOHEDr1q3x/vvvY+XKlfjggw/QqVMnPPnkkxg5cmSJ4ip2otO/f/8iszRJkmA2m9GoUSPcf//9aNKkSYkCIiIiKvcq4aUro9GIRo0alWjeRx55BLfccgs+/vhjLF++HCNGjMCqVaswbNgw3HXXXRg/fjw++ugjbNiwodjLLvZdVzExMfj555+xfft2SJIESZKwY8cO/Pzzz/D5fPjss8/Qpk0brFu3rtjBEBERUfn097//Ha+//jqEKH6WdujQITz++ONo2rQpxowZgyNHjmjjatSogU8++QTTp08vUVzFbtFJSEjA/fffjzfffBOyHMiTFEXB2LFjYbPZsHjxYowYMQKTJk3iKyGIiKhyqoQtOmvXrsWqVavwww8/oEWLFkEPFQaAL7/88pLzduvWDY899hgGDx6Mn3/+GZ07dy40TY8ePUoUV7ETnffeew/r1q3TkhwAkGUZY8aMQadOnTBz5kyMHj0aN998c4kCIiIiKu8qYx+dqlWron///iWa96OPPsILL7yAr7/+Gm3atMHkyZPDFlexEx2fz4cDBw6gcePGQcMPHDigvYLdbDaXqLc1ERERlU8ffPBBiebbvXs3WrZsiVdeeeWqpt+3bx+aNGkCvf7qUphiJzoPPvgghg8fjn/+85+44YYbAAQe1Txz5kw89NBDAIBffvkFLVq0KO6iiYiIKoZQn25cDp+MXFLt2rVDZmYmatSocVXTd+zYETt37rzqtzEUO9F57bXXULNmTcyePRsnT54EANSsWRPjx4/HpEmTAASuo/Xq1au4iyYiIqoYKmEf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ERFR2ElK6J/yzm6345133sGNN96INm3aRCwOJjpEREThVglfAaFas2YNHnroISQmJuKVV17Bbbfdho0bN0YsHl66IiIiopBkZmZi4cKFeO+995Cbm4tBgwbB7XZj2bJlEb3jCmCLDhERUdiF8rDA8vbQwL59+6JJkybYvXs35syZgxMnTmDu3LmRDkvDFh0iIqJwq0QPDPzhhx/wxBNPYOTIkUhJSYl0OIWwRYeIiCjMKlOLztq1a2G323H99dejQ4cOePPNN3HmzJlIh6VhokNEREQldtNNN+Hdd99FRkYG/va3v2Hx4sVISkqCoihYsWIF7HZ7RONjokNERBRulfCuqypVquCRRx7B2rVrsWfPHvz973/Hiy++iPj4eNx9990Ri4uJDhERUZhVpktXRWnSpAlmz56NP//8E//5z38iGgsTHSIiIromdDod+vXrh2+++SZiMfCuKyIionCrRHddlXURbdGZP38+WrdujejoaERHR6Njx4744YcfIhkSERFRyCr7pauyJKKJTu3atfHiiy9i27Zt2Lp1K2677Tbcc8892LdvXyTDIiIiogoiopeu+vbtG/T9hRdewPz587Fx40a0aNEiQlERERGFKNQ7p9iiEzZlpo+O3+/HkiVLkJeXh44dOxY5jdvthtvt1r7n5uaWVnhERERXLdTLT7x0FT4Rv+tqz549sFqtMJlMGDFiBL766qtLvgBs1qxZiImJ0T516tQp5WiJiIioPIl4otOkSRPs3LkTmzZtwsiRI/Hwww/jt99+K3LaKVOmICcnR/ukp6eXcrRERERXQRGhfygsJCHK1j1s3bt3R8OGDfH2229fcdrc3FzExMQg/UAtJMVYAABZihMAECsHvnuFDwZJj1SvAykGK7zCBwAwSHptXH4OxQWrbA4aNiztZnyQ/CuyFCdiZQu8wodDPg/iZAVxshlnFRcSdMHLVqfNUpywSsZC68n0O2CSZJzxK/jdVw23m53aNPnnVdfnEB5YJaP286ziwllF1mJQ16tK89mRrLdp5dnndaKuToZVNmvlfj2rHobHHECG34cUg1WbVx3vUFzaOLUcZxUXrJIeVtmMl841QgfL72hjzINbBOJQ69UtfDjmV9BYbwQAnFVcAIAEnVUrv1pnan1ZJWOh+sv0O7DTUw0dTNmFtmn+eM8qLm1bqHEAwD6vE3GyUmi9BbeDWrY42YxDPg9aGCxI89lRTTbAKpuxzePB9cZAfKleBxJ1gTpwKC54oQAA3EIJ2g92exW0Nsja/qHuX8f8CloYgsuilkGdbrVLgl2Jwo/ZLfF8wmrEyhY4FBe2eqLQzSy0ed3Cp+2v+etQHZ5/n8z0O3BWkdFYb9TGZylOnPEr8EBGkg444w+UJf82V/cFLxSc8StIMVi1esx/vKjDVrskdDML7bu6LR0X9gF1enW/VrdrwW2Tf9sWHK5OHyebkeE/j2S9rchlFHWMAxePj4LrMkh6bZxX+LDObUB743ntGErSXTy3rHMpaGhwBp0D8seQpThhgAyTpNfKmf84ipPNcAgPzvgVVNfJWt2qZVaPs/yx5T8uPELAJusAIOg8ccav4JTfgs5mOajuC24nAEHnBXXfzr991WXaFb9WX/u8TrQwWLAgpxaamk7AAD+aG13a/p+/bgvuQw7hw0pnMm6OOoZkvQ2vZ9XDQzG/aXVzxq9ox5Yaj01GkXWRP151XWrdzDt7Ex6ttgFuIQWVJy3HgfpNM5CTk4Po6OhC+0U4qH+XOnWfDr3BfOUZLsHndWH9T9OuaayVRZnpo6NSFCWoHw4REVF5IyHEPjphi4QimuhMmTIFvXv3RnJyMux2Oz799FOsXr0aP/74YyTDIiIiogoioonOqVOn8NBDDyEjIwMxMTFo3bo1fvzxR9xxxx2RDIuIiCg0fDJymRHRROe9996L5OqJiIiuCd5eXnZE/K4rIiIiCs2sWbNwww03wGazIT4+Hv369cPBgweDpnG5XBg1ahTi4uJgtVoxYMAAnDx5MkIRlx4mOkREROEmwvAphl9++QWjRo3Cxo0bsWLFCni9XvTo0QN5eXnaNOPHj8e3336LJUuW4JdffsGJEyfwl7/8JcSCln1l7q4rIiKi8k4SAlII/WzUeQu+AcBkMsFkMhWafvny5UHfFy5ciPj4eGzbtg1du3ZFTk4O3nvvPXz66ae47bbbAAAffPABmjVrho0bN+Kmm24qcaxlHVt0iIiIyqg6deoEvRFg1qxZVzVfTk4OAKBatWoAgG3btsHr9aJ79+7aNE2bNkVycjI2bNgQ/sDLELboEBERhZty4RPK/ADS09ODHhhYVGtOoVkVBePGjUPnzp3RsmVLAEBmZiaMRiOqVq0aNG3NmjWRmZkZQqBlHxMdIiKiMAvXpavo6OhiPxl51KhR2Lt3L9auXVvi9VckvHRFRERUQYwePRr//e9/sWrVKtSuXVsbnpCQAI/Hg+zs7KDpT548iYSEhFKOsnQx0SEiIgq3Ur7rSgiB0aNH46uvvsLPP/+M+vXrB42//vrrYTAYsHLlSm3YwYMHkZaWho4dO5akhOUGL10RERGFWyk/GXnUqFH49NNP8fXXX8Nms2n9bmJiYhAVFYWYmBgMHz4cEyZMQLVq1RAdHY0xY8agY8eOFfqOK4CJDhERUdiV9pOR58+fDwDo1q1b0PAPPvgAQ4cOBQC89tprkGUZAwYMgNvtRs+ePfHWW2+VPMhygokOERFROSeuogXIbDZj3rx5mDdvXilEVHYw0SEiIgo3vtSzzGCiQ0REFGaSEviEMj+FB++6IiIiogqLLTpEREThxktXZQYTHSIionArwbNwCs1PYVEhLl35oGCdK3BBc2pmN8TKFqT57AAAg6RHluJEisGKfV4nDJIeZxUXshSnNs4rfPAKHwDAKpuDlu0VPnyQ/CsciguxsgVe4cNRnwstDBYk6KwwSHok6KzwCp+2bACwK34sccQgVrbAIOmR6XcAAF7PqqctO1a2IFGnR68oD5afj4ZX+LDOpSBWtmCf1wmrZNTiUpdjlYwAgDjZjGfT70acbNbWm+azI9PvwGqXhERdVGAZshkOJRCvQ/iQ6XfALXxYft6IsbFHYZXNqKc3I9XrgPfC+GV5cUjz2eGFgkTdxVz4qM+FBJ0VJkkPh+LCpGqH0c0sLpQXWtkNkh5W2Yw4WcFZxQWH8AAAEnRWZPod2Od1Ik42a3WS6XcgVrbAITw4q7iw2iUhVrZo8/SK8iBWtiDTH4jRITzIUpxI9TqQpTjhFj6YJBlnlUB8h3weLeYWhsByUr0OLHHEaMMz/Q6k+eyIk81wi0CcK53JMEh62CQ/shQnkvU2OC7Uv10xIUtxwqG44IEMLxSkeh045ldggIxY2YJljiZa+QHApejhFj5scccj0+9Apt+BDL8PjfVGZPodeOzPTnAIj1YmNS6v8KGzyYtqsgNvJm2GWyiF9s11LgUGSQ+TpEeq1xG0j7iFD7s8Riw/H9hX1rkNWOKIQZxsRgtDYJpdHqO2j9kunAXsih8AAuUTPsTKFmT4zweOkQsv3kkxWOG4UM8A4Mh/7FwodxtjHlK9DpgkGS+da4Qz/kBdWWWzVoY0nx0GSY9Y2YLVLgle4cNxfyAmx4X9SJ0mQRc4dvd5L25zdd846nMFtpPi0uLK9DuQ6nXAobhgkPRY4oiBV/i0Y13dtur31S4JaT473BeOP5us0+q3s8kbdAz95jFrMXY2y/AIceG41GvHjxqDXfHDC0XbtoE6MsIhPNq5I1a2IMVghVUyIsUQmE/djzP8Pm2f2+yWkep1aMfFWUVGoi4K+a10WeAWCqrrZDQ3BurQLRR867RgrTtaO0eeVWStDlsYLNq2BYDqusC2T9BZteMlVragmmzAOlfgPKvuvzdEHUF743l0Ngf2/7NKYEdK1tu07QcAGf7zWH7eCC8U2BVgiO0cqskGAMDY2KOIlS3IUpwX6+JCffc/3AMpBqt2zgEQdN7e53Vqdabug+p+8VDsRhglCaYL92ir+1BVObjOqHJgiw4REVGYhetdVxQ6JjpEREThxj46ZUaFuHRFREREVBS26BAREYWbABDKs3DYoBM2THSIiIjCjH10yg4mOkREROEmEGIfnbBFUumxjw4RERFVWGzRISIiCjfedVVmMNEhIiIKNwWAFOL8FBa8dEVEREQVFlt0iIiIwox3XZUdTHSIiIjCjX10ygxeuiIiIqIKK6KJzqxZs3DDDTfAZrMhPj4e/fr1w8GDByMZEhERUejUFp1QPhQWEU10fvnlF4waNQobN27EihUr4PV60aNHD+Tl5UUyLCIiotAw0SkzItpHZ/ny5UHfFy5ciPj4eGzbtg1du3aNUFRERERUUZSpzsg5OTkAgGrVqhU53u12w+12a99zc3NLJS4iIqJi4XN0yowy0xlZURSMGzcOnTt3RsuWLYucZtasWYiJidE+derUKeUoiYiIrky9vTyUD4VHmUl0Ro0ahb1792Lx4sWXnGbKlCnIycnRPunp6aUYIRER0VViH50yQxIi8rU5evRofP3111izZg3q169/1fPl5uYiJiYGB/bXRErVaG348vNGdDHlIsPvgwcyWhgs2rg0nx3JehsW5NTCiJjjSPU6AssSRtTSefC714J4nRMpBitSvQ6YJAGbrINbKNjpqYZeUR54hQ+HfB4k6YAzfgXVdTLcQoFHBKY941dQT2+GQdLDK3wwSHpk+h04q8horDfirOJCnGzGsrw49KtyFg7hQaxswT6vEy0MFqR6HfBARpIuELNVMmKd24D2xvPY5TGiqs6llSnV68ABbzxuNZ+DFwpiZQvSfHYt5vzlyVKcWOuqjqaGU9p3t1BgkgL57m8eM240KTBIem3a31xJ+IttZ1C922TAKumxy2NEc6MLdsUPoyTBrgTG2RVo9f6t04Iu5jMAgO/zauOeKidgkgJXTM8qLm2ZJknGHz49oiUPTvktaGhwwirpccyvYP7pbng+YTU2uauiof6ctm3Un8f9NjTQ5yJZb0OW4kSsbME6l4J4nRM2GYiTzXAID+yKHzZZh1g5UHf7vE4YoeCU/2IdeYUPm90yTvhi0d2SAbcItB/HyWbs9iq43mjEPq8TcbKCONkMt/DBC0WrO3W/2OSuijr6bBgvtD+nGKxYft6I5oazWpwAECtbtH2wuk7WYu9slrHP68RpfxU0NdiRoLNq21vdt9T9OVEXhUM+D+JkBXYFqKc345DPgxaGwL5QTTbgnOJFoi5K248y/D6kGKza8bD8vBG3m5046nMhxWDFIns1xOkd6GLKxTG/gjhZQYIuUN+JOj2sshkLcmrhXlsqDJBhlc1I9Tq0Y8EkyTjjD5Rd3T5GSdKWkWK4WJ4Ug1Xb9wFo21Adpx5DqV6Htj0z/Oe1ffzX87XQ23JSO94b643a9lbXqVrnUtDc6EKsbEGm34HjfiOuNxrhFT64hQ9W2aytb5vHg9aGwLGx26vArpjQ2eSFW/jgED5t+6vzqNRhAJDpD2xb9dgwSTKskhGHfB4YoeCANx5tjCeR7quCzmZZ215W2aztI4FlBuo/0+9AnFz43GJXoG3PRF0UDJIe+7xOJOkC+5hDccEqm7V9S61nq2QEABz1ubR9EAB2eaqgjTFPO5+cVkxobZC19al1mqU4YYCMXR4jbjQpyPCfh1EKXK9J0AVvVzUG9acav2qf14nf3Imooc9FZ5MXBkmPdS4FbYweWGWzdl5Tjxu1fuMu1DUAOIQHVsmoLTdLcWr7YXWdjKPZPrRvcRI5OTmIjr74NyOc1L9L3VPGQ68zlXg5Pr8bP6W+dk1jrSwi2kdHCIExY8bgq6++wurVq4uV5BAREZVZigCkENoRlIi3QVQYEU10Ro0ahU8//RRff/01bDYbMjMzAQAxMTGIioqKZGhEREQlxycjlxkR7aMzf/585OTkoFu3bkhMTNQ+n332WSTDIiIiogoi4peuiIiIKp5QOxTz72O4lKnn6BAREVUIvHRVZpSZ28uJiIiIwo0tOkREROGmCIR0+Yl3XYUNEx0iIqJwE0rgE8r8FBa8dEVEREQVFlt0iIiIwo2dkcsMJjpEREThxj46ZQYTHSIionBji06ZwT46REREVGGxRYeIiCjcBEJs0QlbJJUeEx0iIqJw46WrMoOXroiIiKjCYosOERFRuCkKgBAe+qfwgYHhwkSHiIgo3HjpqszgpSsiIiKqsNiiQ0REFG5s0SkzJCHKb23m5uYiJiYG6/clIiuqGmySC1V1LsTJCo77jTBLPgCAS+jxh6cGauhzcdwbizi9A22N5/Dr+VpobspAXZ0MLxSc8Sv4KOsm3B69DzbZDbtiQg1dHrL9ZlTVuZDtN8MLHQzwwwsdGuhz8YcvGjbZDZeiRxujBxl+H0ySQLqvCuzCDJvkAgDE65zIFUY00Puwy1MFANDUYMdZRUZjvRGb3TKaG134yZmIm6OOAwCO+wPT/+HTo4bsxmnFhFo6D373WhCvc2Klswn6WQ/irCIj3VcVdfTZAIB0X1WYJS9q6eywyYBdATyQYYQCD2TYJL8Wt10xwSa7YZZ8yPabtbo1yz784amB7pYMnPErOOUPrFOdf5enJqrJDtxoUrDSZUEdfba2XgP8OOhJRIeoIzBCwa/nG6KJMQPNjS7s8lRBA30ufvPGadOq9aQuXy1DHX02jFBQXSdjl6cKaunsqK6T8ZvHjIYGJ373WmAXZrQ1nsNKZzLamv/EH97qaGo4heq6wHJ2earAAD/idU4AwCm/RdsealncQsLvvmpBdfa714I6+jyk+6rACx1sshvRkge/+6rB7o9CA+NpmCUfjBeuwZ/yW9DG6IFD+HDAa0Nnkxfv5dZFK1M6mhtd+CinOYbHHIBJ0uOQz4MkHRArW7DaJaGzyYt1bgO6mQWyFCdiZQvWuRR4oUM3s0Cq16HVS5IOsEpGHPJ54BJ62BUTGuhzkay3wSt8cAgPfnImorkpQ6uLRJ0eX+cl4c4qf8ItFJxVAsuqq5Mx7Ohd6FdjO9qa/8Rv7sB8ANDCYMGCnFoYEXMcmX6Hto+1NZ6DXQEOeOPR1+KEVwSOsZUuCxrqz6Ge3oxleXFI0mfBCx06m7xYlheH7pYMbRt6ICPbb9bqN17nhE0GzioyTvuroIYuDztdtXG7JQ1nlcC08Ton6unNcAgPNrmrooMpG2td1WGTz6ONMQ9n/ApSDFZ86wxsX4PkQ0P9OXhwMe7fvRY0NDhxwGuDTXajls4DkxTYnwBo+2d743ls9URpsatlaaDPxWnFpJ0X1Drc5TECAOro8/CbN+7C79nI9gf2U5Mk4w+fHg30PriFArsCbT9ubnThN49Z2z/zH6fZfjPMcqB+G+h9+D6vNtqa/4QRinYuUc8NbiFpy/RCB5cwoKH+HHJFIDaXokdzowtuocAq6fFeTlNU1+fiRnMaTvktMMs+2BUTmhrs2OKOR1PDKRz322CAH3X0eTBKEv6d1R42nQtNzCdgk1w44YvV6ua0LxptTceRYrDCK3w46nPhlN+iHafLc1ujX9Xt+CG3NbpYD8KuRAXKZTiDdF9VAEAHUzYMkOEQPpxVLtaDEQpMkoBbSLDJwK/na8GmO4+DriTcad0LmwzMO3sT6ptPo405HX94auDmqOPY6amGhvpz2OkOnOdP+6vgWFYVPHLdDuTk5CA6OrrYf3Ouhvp3qXu1YdDLxhIvx6d48NO5D65prJUFL10RERFRhcVLV0RERGEmhAIhSn7nVCjzUjAmOkREROEmRGgv5iy/vUrKHCY6RERE4SZCfHs5E52wYR8dIiIiqrDYokNERBRuigJIIfSzYR+dsGGiQ0REFG68dFVm8NIVERERVVhs0SEiIgozoSgQIVy64u3l4cNEh4iIKNx46arM4KUrIiIiqrDYokNERBRuigAktuiUBUx0iIiIwk0IAKHcXs5EJ1wieulqzZo16Nu3L5KSkiBJEpYtWxbJcIiIiKiCiWiik5eXhzZt2mDevHmRDIOIiCishCJC/lB4RDTR6d27N2bMmIH+/ftHMgwiIqLwEkronxKYN28e6tWrB7PZjA4dOmDz5s1hLlj5U67uunK73cjNzQ36EBERlTWRaNH57LPPMGHCBEybNg3bt29HmzZt0LNnT5w6deoalLD8KFeJzqxZsxATE6N96tSpE+mQiIiIyoRXX30Vjz76KIYNG4bmzZtjwYIFsFgseP/99yMdWkSVq7uupkyZggkTJmjfc3JykJycjDyHAqfPD1lSoNcpMMoKHH4FvgtPpXQJBU6PH3l6P877fHDq/LAbFTjP++HwKMjVAT4E5nE7vMiT/JBkBXmKH1E6BXn+wHLz/Aq8AAwI/LTrFeT5AtO6FQW5xsAyPJJAnk+BUwRiAgCHToFDKIF5PH4AgN2gwKEAuXoFeW4EYnL6YfddmMcfmN7hU2CWFTgUBXadgjyvAodOwfnzPthFYBlOnx8OfWA+p88Pv+SHQ6cAMuBQAA8AIxR4AEC6GHeeEvjpkwLlU/nkQJ3Z/YEy5fkD61Tnd3r8MMkKcj0KnK7AutX1GqDgvNcHh0+BEQrOu3zIMyiwGwNlt+sVOL0Xp1XrSVs+LpbHCAUmHZDnCZQn8LsCuyFQD04R2Jbnz/vg8AaW6zAEpgMC8xkQWDYArYz5y+IRUqE6y/Ne2Fa+wLaWZAWyFCij0++HwxioMyMuLjfXqCBPKMjz+pHrUXDe4QvEalTgcviQKyswSYHtadcBOtmPPJeEXI+CPLcfuV4Bu6JcGC7gBZDrFXB4L9aLXQcoF5bhEoHtZ9cryNX74RWB9Tudgf1arYtcnYLzTh/sigL3hf0FAHJ1gDfPg/NRF+rOHZgPAHINfpx3+JArX9gHLuxjduOF371+5PoD6wSg7QO5egXOPD/y9IF6y/UEvtv9irYNPRfqS63f/Ptpnj9wzJ13+7T1qvterv5C+dx+2C/sd7J8ISa/glyDH05n4NgySIF4PLgYd55X3W8C+7xdp8AjBfYnANr+mav+9ASXxa4PHIPqeUGtQ23+C/s1ADj0gWPGbgisw+ELlFetf20/NirI81zcP/Mfp3l+BT754rLPOwPbyYiL5xL13OARkrZMLwC3kOHQB6YDALcSWJdbKFCkwP54Xh9YnrqePMUPu+HCfmBQkOcPHDt2vQKjJMHl8MKg88Hp9WvHglo3Tt+Fc6khsE84fBfLn+cNnFcdOgUuhxd5wg+ncqGeDIHlAIDdo0APIO9CHan1YETgnOoREiADzvN+6HR+uNy+QPlkwO3w4rzvwn7sCZxDnZ4L56UL+3We34/zjsC6RCnc0eQT7pBezOmDFwAKXbkwmUwwmUyFpvd4PNi2bRumTJmiDZNlGd27d8eGDRtKHEeFIMoIAOKrr74q1jzp6enqoyf54Ycffvjh56o+6enp1+YPmRDi/PnzIiEhISxxWq3WQsOmTZtW5HqPHz8uAIj169cHDX/yySfFjTfeeM3KWx6UqxadgpKSkpCeng6bzQZJkiIdzmXl5uaiTp06SE9PR3R0dKTDCRnLU7axPGUbyxMZQgjY7XYkJSVds3WYzWYcOXIEHo/nyhNfgRCi0N+2olpz6PIimug4HA4cPnxY+37kyBHs3LkT1apVQ3Jy8hXnl2UZtWvXvpYhhl10dHSZPhEUF8tTtrE8ZRvLU/piYmKu+TrMZjPMZvM1X09+1atXh06nw8mTJ4OGnzx5EgkJCaUaS1kT0c7IW7duRbt27dCuXTsAwIQJE9CuXTs888wzkQyLiIioXDEajbj++uuxcuVKbZiiKFi5ciU6duwYwcgiL6ItOt26dSuVTmFEREQV3YQJE/Dwww+jffv2uPHGGzFnzhzk5eVh2LBhkQ4tosp1H53yxGQyYdq0aRXm+irLU7axPGUby0PXwr333ovTp0/jmWeeQWZmJtq2bYvly5ejZs2akQ4toiTBJhUiIiKqoMrVAwOJiIiIioOJDhEREVVYTHSIiIiowmKiQ0RERBUWEx0iijjeE0FE1woTnTCoaCdpt9uNnTt3AgD8fn9kgwkDl8uF9957Dzt27Ih0KGHh9Xrx559/at/L+/7n9/vhcrkiHUbYKIoCRSn5yxzLGpfLhfXr1wMAfD5fhKMhKj4mOiGaN28e7rvvPowePRq//vprWN5vEklHjhyB1WpFv379kJ2dDZ1OV65P2m+++Sbi4+Px2Wef4fTp0+V++7z66qto06YN+vfvj379+mHv3r2QJKncbqN//etfuOmmm9CvXz/MnTsXmZmZAFBuy/PGG2/g7rvvxpAhQ/D5558jJycn0iGF5OTJk4iJiUGXLl1w9uxZ6PX6crttqPJiolNCO3bswA033IC5c+ciJSUFmzZtwt/+9jcsWbIk0qGF5MCBA6hfvz7q1q2LF198EQDK/AtTL2Xx4sV4++238c477+B///sfevToAaPRGOmwSsRut2Pw4MGYP38+nnvuOTzyyCPIycnBlClTAATe+1aeCCEwZswYvP766xg5ciRq166Nf//73xg8eDCA8leePXv2oFOnTpg3bx5uvfVWZGdnY8aMGZg7d26kQysxIQROnDiB1q1bo02bNhg7diyA8ns+oMqrfJ1NyoiTJ09i7ty5aNeuHTZt2oTnn38eW7ZsQfXq1bFlyxYA5e9yghpvdnY2mjZtittuuw3ffPMNdu/eXe5aDNTLbV9++SV69+6NwYMH4/jx4/j000+xdetW7aV35alMe/bswa5du/Dll1/i//7v/zBy5Ei0b98e1atXBxDYfuVpnzt58iTWrFmDF154AY888gjee+89zJs3D7t37y5377rLycnB+++/j4YNG2L9+vX4+9//jh9++AE33ngj9u/fj/Pnz0c6xBKRJAmZmZmwWCyYMGECvv32W2zcuLHcnQ+ImOiUgF6vh9VqxYgRIxATEwO32w0AaN++vZbolJf/etQ/jmq8mzdvRvfu3fHggw+iRo0aeOmllwCUn/+whRDQ6XTweDzYtGkT7rrrLixatAitW7fGW2+9hb59+6Jv375wOp3lokzqHxSHw4G0tDQYDAZt3N69e1G7dm3s27cPkiSV+X0ufyImSRL27t2Lli1basO6dOmCWbNm4ZVXXsFvv/0WiRCLJf+xU61aNTz++OOIi4uD1+sFAKSkpGDr1q2IioqKZJhXrahEOTU1FZ06dUK/fv1w00034e9//zuAwPmgIvTfo8qh7J/py4ClS5fi7bffxp49e+BwOBAXF4dZs2bhuuuuAwDt/S7p6em4+eabIxnqVVHLs3v3bq0TqNp3xWKxwG63o379+hg6dCh27tyJRx55BMOHD8eZM2ciGfYlFVUel8uFVq1a4Z133sHixYuxcOFCfPfdd1iyZAmcTiceeughAGWzVaeo8lSrVg033HADevbsiYkTJ6JatWo4cuQIVq1ahT59+uDRRx+NcNSXtmnTJgDByb/L5cKNN96IpUuXBk07dOhQNG3aFLNnzwZQNrdP/vIoioLo6GhMmjRJe0O0Xh94heDJkyfLxVuji9o+atKjKArOnDkDm82GqVOn4tChQ7j//vvRv39/HDp0KCLxEhWboEv6/fffRfv27UXt2rVFu3btRO3atcXDDz+sjVcUJej3Tp06ic8//zwCkV6dK5VHCCE6deokvvnmGyGEEJ988omoWrWqkGVZvPHGG0KI4DJHWlHleeihh4QQQvh8PjFixAiRmJgoOnXqJNxutzbfypUrhSRJ4siRIxGKvGhFlefBBx/Uxqenp4svv/xS3HjjjWLatGnC6/WK7OxssWrVKiFJkti2bZsQouxso927d4tOnToJSZK048Lr9Wo/hw4dKu666y7x22+/CSGE8Pv9Qggh3n33XREfHy/OnDkTmcAvoajy+Hw+bXzBeu/du7d4/fXXixxXFlypPEII0b9/f7Fw4UIhhBDLli0TcXFxQpKkMnk+ILoUtuhcxhdffAGTyYT9+/fjf//7H15//XUsWbIE06dPh8fjCbpWffjwYezZsyeoKT4rKytSoRfpcuVR+xE0atQIDocD99xzD4YPH44OHTqgadOm2n+pZek/7KLK88UXX+CZZ56BTqfDvffeC6/Xi+zs7KBOyLVr10ZycjJ27doVwegLK6o8S5cuxbPPPgu3263FfezYMfz1r3+FXq9HTEwMWrZsiVq1auHnn38GUDYum27duhWjR49GXFwc+vbti7feegs+nw96vR5erxd6vR4DBgzA8ePH8dlnnwG4eHk0JiYGMTExOHv2bCSLEORS5dHpdIUu/wLAmTNnsH79elx//fXauFOnTkUk9qJcqTzqZam6desiIyMD/fv3x6BBg3D77bejXr16WutuWTofEF1SpDOtssrn84nrrrtOTJo0KWj422+/Lcxms1i1alXQ8DfeeEO0bdtWCCHE2bNnxbBhw0SfPn3E6dOnSyvky7pceUwmk1i9erUQQoi6desKSZK0/7TPnj0rxowZI2rXri0yMjIiEXqRLlceo9EofvnlFyGEEJMmTRJxcXHizTff1Kb57rvvRJs2bURmZmapxnw5V7u/rVixQnTs2FFs2bJFm2bFihWiWbNmYvfu3aUZ8mVlZWWJ0aNHi3379oklS5aINm3aiJdeekkIEdxq8MQTT4gOHTqITz75RBu2YMEC0bZtW+FwOEo97ku5XHnUlqj8Fi9eLBo2bCiEEOLMmTPikUceES1bthTHjx8v1bgv5WrL07FjRyFJkrj77rvFnj17hMvlEi+++KKQJEkcO3YsUuETFQsTnSKoB3qvXr3EwIEDg4YJIUT79u1F//79hcfj0YaNGjVKPP3002LOnDnCZrOJG264QRw+fLh0A7+EqynPXXfdJYQQYs2aNWLZsmXaJQYhhPj+++/FpEmTxLlz58pEU/XVlKdv375CCCGOHTsmxowZIyRJEvfdd58YO3asiI+PF5MnTxYej6fclOeee+4RQgixc+dOcfPNN4sOHTqId999Vzz33HMiISFBjB49WjidzjJRHjWGvLw8IUTgj+q4ceNEq1atRFpamhBCaJcSjxw5IkaPHi1kWRbDhw8X48ePF1WrVhUvvPCC8Pv95aY8BS/5TJ8+XQwfPly8+uqrwmaziZtuukkcOnSodAO/hKspj8vlEkIIsWvXLvHf//436Hywd+9eMXnyZHHq1KkysX2IroSJziX4/X7xyiuviDZt2og9e/YIIS6enFesWCFkWRZHjx4VQgT+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eOIJdO/evVjLJqJiEERX8MEHH4iYmJhCwx9++GFxzz33aN9vueUWMXr0aDF27FhRtWpVER8fL9555x3hcDjE0KFDhdVqFQ0bNhTff/990HL27NkjevXqJapUqSLi4+PFAw88IE6fPl3seObNmycaNWokTCaTiI+PFwMGDNDG+f1+MXPmTFGvXj1hNptF69atxZIlS4Lm37t3r+jTp4+w2WzCarWKLl26iMOHD2vzT58+XdSqVUsYjUbRpk0b8cMPP2jzHjlyRAAQS5cuFd26dRNRUVGidevWYv369YVir1OnjoiKihL9+vUTr7zySlBZdu7cKbp16yasVquw2WziuuuuE1u2bCmyHhRFEdOmTRN16tQRRqNRJCYmijFjxmjj69atK1577TXtOwDx7rvvin79+omoqCjRqFEj8fXXX191HQghxLvvviuaNm0qTCaTaNKkiZg3b16RsRUFgPjqq6+Chh08eFAAEHv37tWG+f1+UaNGDfHuu+9ecllt27YVjzzyiPb9+++/F7Isi8zMTG3Y/PnzRXR0tHC73ZdczqBBg0SfPn2ChnXo0EH87W9/KzStuo137NhxyeWpfvvtNwEgaNv98MMPQpIkcfz48ULTFzyWiCh82KJDYfXhhx+ievXq2Lx5M8aMGYORI0di4MCB6NSpE7Zv344ePXrgwQcfhNPpBABkZ2fjtttuQ7t27bB161YsX74cJ0+exKBBg4q13q1bt+KJJ57Ac889h4MHD2L58uXo2rWrNn7WrFn46KOPsGDBAuzbtw/jx4/HAw88gF9++QUAcPz4cXTt2hUmkwk///wztm3bhkceeUS79PH666/jX//6F1555RXs3r0bPXv2xN133x10iQUAnnrqKUycOBE7d+5E48aNcd9992nL2LRpE4YPH47Ro0dj586duPXWWzFjxoyg+YcMGYLatWtjy5Yt2LZtGyZPngyDwVBkmZcuXYrXXnsNb7/9NlJTU7Fs2TK0atXqsvU0ffp0DBo0CLt378add96JIUOG4Ny5c1dVB4sWLcIzzzyDF154Afv378fMmTMxdepUfPjhh1e7mQpxu90AALPZrA2TZRkmkwlr164tcp5t27Zh586dGD58uDZsw4YNaNWqFWrWrKkN69mzJ3Jzc7Fv375Lrn/Dhg2FWlN69uyJDRs2lKg8+ZdbtWpVtG/fXhvWvXt3yLKM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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "%matplotlib inline\n", + "ds[\"corr\"].sel(beam=1, range=slice(0, 10)).plot()" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "It's beneficial to also review data from the other beams. A significant portion of this data is of high quality. To avoid discarding valuable data with lower correlations, which could be due to natural variations, we can use the `correlation_filter`. This function assigns a value of NaN (not a number) to velocity values corresponding to correlations below 50%.\n", + "\n", + "However, it's important to note that the correlation threshold is dependent on the specifics of the deployment environment and the instrument used. It's not unusual to set a threshold as low as 30%, or even to forgo the use of this function entirely." + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [], + "source": [ + "ds = api.clean.correlation_filter(ds, thresh=50)" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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5510d3e3u0tCCCHEmFC6xYBOmXi8WW0tcsrlMk8//XTz5yVLlrB48WK6urro6+vjne98J4888gg///nPiaKIlStXAtDV1YVt2+3qthBCCNEyubtq/LX1E3rooYeYP38+8+fPB+Dss89m/vz5nH/++Sxfvpyf/exnPP/88+y777709fU1l9///vft7LYQQgjRsnRujdHCMrK/wl/pAbybctddd/HqV78ax3HYeeeduemmm0b3ZtukrSM5CxYsIEmSTb7+Sq8JIYQQYsttfADvKaecwr/+679udvslS5bw1re+ldNOO43vfOc7LFq0iH/7t3+jr6+PI444Yiv0uHUTek6OEEIIMVm1+tTike77Sg/gfTnXXnstc+bM4ctf/jIAu+22G/feey9f/epXpcgRQgghxKZprdEtzKvZuO8/PvR2rO4yvu+++zjssMOGrTviiCM466yzWm57a5FZS0IIIcQ2bNasWcMegrtw4cIxaXflypVMnTp12LqpU6cyODhIrVYbk2OMNxnJEUIIIdpgrC5XLVu2bNgz5ORZcS+SIkcIIYRog7EqcorF4mYflDsa06ZNY9WqVcPWrVq1imKxSCaTGfPjjQe5XCWEEEKIl9h///1ZtGjRsHW//vWv2X///dvUo5GTIkcIIYRoA6V084GAo1rUyP4KL5fLLF68mMWLFwMvPoB36dKlQJr9eMIJJzS3P+2003jmmWf49Kc/zZNPPsl//ud/8oMf/ICPf/zjY/YZjDe5XCWEEEK0wda+hfyhhx7ikEMOaf589tlnA3DiiSdy0003sWLFimbBAzBnzhz+53/+h49//ON87WtfY+bMmXzrW9/aZm4fBylyhBBCiO3C5h7A+3JPM16wYAF//OMfx7FX40uKHCGEEKINtvZIzvZIihwhhBCiDbSh0S0UKq3su72QIkcIIYRoA6VViynkagx7MzlJGSiEEEKISUlGcoQQQog2kDk540+KHCGEEKINpMgZf/IJCSGEEGJSkpEcIYQQog02PvG4lf3FK5MiRwghhGgDZRhow2hpf/HKpAwUQgghxKQkIzlCCCFEG8jE4/EnRY4QQgjRBlLkjD/5hIQQQggxKclIjhBCCNEGSrd4d1UL+24vpMgRQggh2kAuV40/KXKEEEKINlBatVbkTIKAzsHBwRHvUywWt3hbKXKEEEII0RYdHR0oteXFmlKKv/zlL8ydO3eLtpciRwghhGgDmZOT+tGPfkRXV9dmt0uShLe85S0jaluKHCGEEKINlDZQuoUnHrew70Qxe/ZsDjroILq7u7do+7lz52JZ1ha3L0WOEEIIIdpiyZIlI9r+8ccfH9H2UuQIIYQQ7aCNdGllf/GKJscFPSGEEGJbo3Xry3Zg1apVfP7znx/VvtvHJySEEEKIbdLKlSu56KKLRrWvXK4SQggh2kAZBspoYeJxC/tOJI8++ugrvv7UU0+Num0pcoQQQoh2kDk5AOy7774opUiS5CWvbVw/kmfp/D0pcoQQQgjRNl1dXVx++eUceuihL/v6n//8Z972treNqm0pcoQQQoh20LrFkZzJMa12v/3244UXXmD27Nkv+3p/f//LjvJsCSlyhBBCiDaQJx6nTjvtNCqVyiZf32GHHbjxxhtH1bYUOUIIIUQ7qBbn5KjJMSfnX/7lX17x9c7OTk488cRRtT05ykAhhBBCTBq/+93vqNfrLbcjRY4QQgjRDhvvrmplmaSOOuooli9f3nI7crlKCCGEaAOZk7Npo51o/I8m7yckhBBCiO1aW4ucu+++m7e97W1Mnz4dpRS33377sNeTJOH888+nr6+PTCbDYYcdxl//+tf2dFYIIYQYS3K5apOuu+46pk6d2nI7bS1yKpUK++yzD1dfffXLvn755Zfz9a9/nWuvvZYHHniAXC7HEUccged5W7mnQgghxBjb+JycUS+T92LM+973PqIo4vbbb+eJJ54YdTttnZNz1FFHcdRRR73sa0mScMUVV/C5z32Od7zjHQB8+9vfZurUqdx+++0ce+yxL7tfvV4fNiN7cHBw7DsuhBBCiDH17ne/m4MOOogzzjiDWq3Ga17zGp599lmSJOH73/8+xxxzzIjbnLBl4JIlS1i5ciWHHXZYc12pVOL1r38999133yb3W7hwIaVSqbnMmjVra3RXCCGEGJGNAZ2tLJPJ3XffzRvf+EYAfvKTn5AkCf39/Xz961/nkksuGVWbE7bIWblyJcBLrslNnTq1+drLOffccxkYGGguy5YtG9d+CiGEEKOidevLJDIwMEBXVxcAd9xxB8cccwzZbJa3vvWto56PO7k+IcBxHIrF4rBFCCGEEKmrr76aHXfcEdd1ef3rX8+DDz64yW1vuukmlFLDFtd1x6Vfs2bN4r777qNSqXDHHXdw+OGHA7Bhw4ZRH3PCFjnTpk0DYNWqVcPWr1q1qvmaEEIIsc1qw91Vt956K2effTYXXHABjzzyCPvssw9HHHEEq1ev3uQ+xWKRFStWNJfnnnuulXe9SWeddRbHHXccM2fOZPr06SxYsABIL2Pttddeo2pzwhY5c+bMYdq0aSxatKi5bnBwkAceeID999+/jT0TQgghWqe00fIyUl/5ylc49dRTOfnkk9l999259tpryWaz3HDDDZvup1JMmzatuYzFrd0v58Mf/jD3338/N9xwA/feey+6cTlu7ty5o56T09a7q8rlMk8//XTz5yVLlrB48WK6urrYYYcdOOuss7jkkkvYZZddmDNnDueddx7Tp0/n6KOPbl+nhRBCiLGgWpxXo9J9//EuYsdxcBznJZv7vs/DDz/Mueee21ynteawww57xRt6yuUys2fPJo5jXv3qV3PppZeyxx57jL7fr2C//fZjv/32G7burW9966jba+tIzkMPPcT8+fOZP38+AGeffTbz58/n/PPPB+DTn/40H/3oR/ngBz/Ia1/7WsrlMnfccce4XQ8UQgghtjWzZs0adlfxwoULX3a7tWvXEkXRiG7o2XXXXbnhhhv46U9/yn/9138RxzEHHHAAzz///Ji/j/HQ1pGcBQsWvGI+hVKKz3/+83z+85/fir0SQgghxt9oLzn9/f4Ay5YtG3aTzcuN4ozW/vvvP2yKyAEHHMBuu+3Gddddx8UXXzxmxxkvEtAphBBCtMPGJx63sj9s8Z3EPT09GIbR0g09lmUxf/78YVNNJrIJO/FYCCGEEGPHtm3222+/YTf0xHHMokWLtviGniiKeOyxx+jr6xuvbo4pGckRQggh2qHVB/qNYt+zzz6bE088kde85jW87nWv44orrqBSqXDyyScDcMIJJzBjxozmvJ7Pf/7z/NM//RM777wz/f39fPGLX+S5557j3/7t30bf71fgeR6PPvooq1evJo7jYa+9/e1vH3F7UuQIIYQQbdBqNMNo9n3Pe97DmjVrOP/881m5ciX77rsvd9xxR3My8tKlS5u3bkP6IL5TTz2VlStX0tnZyX777cfvf/97dt9991H3e1PuuOMOTjjhBNauXfuS15RSRFE04jZV8kozfyeBwcFBSqUSAwMD8vRjIYQQr2hr/J2x8Rjr7/spxXxu9O2UK3Tt/45J8/fbLrvswuGHH875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1bBCJ4oiyuUyp5122qja3qIiR56JI4QQQojxcMUVV5AkCaeccgoXXXQRpVKp+Zpt2+y4447sv//+o2p7xHdXCSGEEKJ1EtCZ2njX9pw5czjggAPG9EqQFDlCCCFEO8jlqmF3b8+fP59arUatVnvZbUcTKSVFjhBCCCHaorOzkxUrVtDb20tHR8fLTjzeOCE5iqIRtz+hi5woirjwwgv5r//6L1auXMn06dM56aST+NznPifPMhBCCLFtazVkcxL8Pfib3/ymeefUb37zmzH/u31CFzmXXXYZ11xzDTfffDN77LEHDz30ECeffDKlUomPfexj7e6eEEIIMXpyuYqDDz64+f8LFiwY8/ZH9Qndc889HH/88ey///4sX74cgFtuuYV77713TDv3+9//nne84x289a1vZccdd+Sd73wnhx9+OA8++OCYHkcIIYTYXlx99dXsuOOOuK7L61//+s3+nfrDH/6QefPm4boue+21F7/4xS/GpV833ngjP/zhD1/2+DfffPOo2hxxkXPbbbdxxBFHkMlk+OMf/0i9XgdgYGCASy+9dFSd2JQDDjiARYsW8Ze//AVIHwh07733ctRRR21yn3q9zuDg4LBFCCGEmGg2BnS2sozUrbfeytlnn80FF1zAI488wj777MMRRxyxyVSD3//+97z3ve/lAx/4AH/84x85+uijOfroo3n88cdbffsvsXDhQnp6el6yvre3d9T1xYg/oUsuuYRrr72Wb37zm8Nu8zrwwAN55JFHRtWJTTnnnHM49thjmTdvHpZlMX/+fM466yyOO+64Te6zcOFCSqVSc5k1a9aY9kkIIYQYE22IdfjKV77Cqaeeysknn8zuu+/OtddeSzab5YYbbnjZ7b/2ta9x5JFH8qlPfYrddtuNiy++mFe/+tVcddVVrb77l1i6dClz5sx5yfrZs2ezdOnSUbU54k/oqaee4qCDDnrJ+lKpRH9//6g6sSk/+MEP+M53vsN3v/tdHnnkEW6++Wa+9KUvveKw1bnnnsvAwEBzWbZs2Zj2SQghhJhI/vHqxcYrLP/I930efvhhDjvssOY6rTWHHXYY991338vuc9999w3bHuCII47Y5Pat6O3t5dFHH33J+j/96U90d3ePqs0RTzyeNm0aTz/9NDvuuOOw9ffeey9z584dVSc25VOf+lRzNAdgr7324rnnnmPhwoXN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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "ds[\"vel\"][1].plot()" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### 2.4 Rotate Data Coordinate System\n", + "\n", + "After cleaning the data, the next step is to rotate the velocity data into accurate East, North, Up (ENU) coordinates.\n", + "\n", + "ADCPs utilize an internal compass or magnetometer to determine magnetic ENU directions. You can use the set_declination function to adjust the velocity data according to the magnetic declination specific to your geographical coordinates. This declination can be looked up online for specific coordinates.\n", + "\n", + "Instruments save vector data in the coordinate system defined in the deployment configuration file. To make this data meaningful, it must be transformed through various coordinate systems (\"beam\"<->\"inst\"<->\"earth\"<->\"principal\"). This transformation is accomplished using the `rotate2` function. If the \"earth\" (ENU) coordinate system is specified, DOLfYN will automatically rotate the dataset through the required coordinate systems to reach the \"earth\" coordinates. Setting `inplace` to true will modify the input dataset directly, meaning it will not create a new dataset.\n", + "\n", + "In this case, since the ADCP data is already in the \"earth\" coordinate system, the `rotate2` function will return the input dataset without modifications. The `set_declination` function will work no matter the coordinate system." + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Data is already in the earth coordinate system\n" + ] + } + ], + "source": [ + "dolfyn.set_declination(ds, 15.8, inplace=True) # 15.8 deg East\n", + "dolfyn.rotate2(ds, \"earth\", inplace=True)" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "To rotate into the principal frame of reference (streamwise, cross-stream, vertical), if desired, we must first calculate the depth-averaged principal flow heading and add it to the dataset attributes. Then the dataset can be rotated using the same `rotate2` function. We use `inplace=False` because we do not want to alter the input dataset here." + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [], + "source": [ + "ds.attrs[\"principal_heading\"] = dolfyn.calc_principal_heading(ds[\"vel\"].mean(\"range\"))\n", + "ds_streamwise = dolfyn.rotate2(ds, \"principal\", inplace=False)" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## 3. Average the Data\n", + "\n", + "As this deployment was configured in \"burst mode\", a standard step in the analysis process is to average the velocity data into time bins. \n", + "\n", + "However, if the instrument was set up in an \"averaging mode\" (where a specific profile and/or average interval was set, for instance, averaging 5 minutes of data every 30 minutes), this step would have been performed within the ADCP during deployment and can thus be skipped.\n", + "\n", + "To average the data into time bins (also known as ensembles), you should first initialize the binning tool `ADPBinner`. The parameter \"n_bin\" represents the number of data points in each ensemble. In this case, we're dealing with 300 seconds' worth of data. The \"fs\" parameter stands for the sampling frequency, which for this deployment is 1 Hz. Once the binning tool is initialized, you can use the `bin_average` function to average the data into ensembles." + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": { + "scrolled": true + }, + "outputs": [], + "source": [ + "avg_tool = api.ADPBinner(n_bin=ds.fs * 300, fs=ds.fs)\n", + "ds_avg = avg_tool.bin_average(ds)" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "
<xarray.Dataset>\n",
+       "Dimensions:         (time: 183, dirIMU: 3, range: 28, dir: 4, beam: 4,\n",
+       "                     earth: 3, inst: 3, q: 4, time_b5: 183, range_b5: 28)\n",
+       "Coordinates:\n",
+       "  * time            (time) datetime64[ns] 2020-08-15T00:22:30.001030683 ... 2...\n",
+       "  * dirIMU          (dirIMU) <U1 'E' 'N' 'U'\n",
+       "  * range           (range) float64 1.2 1.7 2.2 2.7 3.2 ... 13.2 13.7 14.2 14.7\n",
+       "  * dir             (dir) <U2 'E' 'N' 'U1' 'U2'\n",
+       "  * beam            (beam) int32 1 2 3 4\n",
+       "  * earth           (earth) <U1 'E' 'N' 'U'\n",
+       "  * inst            (inst) <U1 'X' 'Y' 'Z'\n",
+       "  * q               (q) <U1 'w' 'x' 'y' 'z'\n",
+       "  * time_b5         (time_b5) datetime64[ns] 2020-08-15T00:22:29.938495159 .....\n",
+       "  * range_b5        (range_b5) float64 1.2 1.7 2.2 2.7 ... 13.2 13.7 14.2 14.7\n",
+       "Data variables: (12/38)\n",
+       "    c_sound         (time) float32 1.502e+03 1.502e+03 ... 1.499e+03 1.498e+03\n",
+       "    U_std           (range, time) float32 0.04232 0.04293 0.04402 ... nan nan\n",
+       "    temp            (time) float32 14.49 14.59 14.54 14.45 ... 13.62 13.56 13.5\n",
+       "    pressure        (time) float32 9.712 9.699 9.685 9.67 ... 9.58 9.584 9.591\n",
+       "    mag             (dirIMU, time) float32 72.37 72.4 72.38 ... -197.1 -197.1\n",
+       "    accel           (dirIMU, time) float32 -0.3584 -0.361 ... 9.714 9.712\n",
+       "    ...              ...\n",
+       "    boost_running   (time) float32 0.1267 0.1333 0.13 ... 0.2267 0.22 0.22\n",
+       "    heading         (time) float32 3.287 3.261 3.337 3.289 ... 3.331 3.352 3.352\n",
+       "    pitch           (time) float32 -0.05523 -0.07217 ... -0.04288 -0.0429\n",
+       "    roll            (time) float32 -7.414 -7.424 -7.404 ... -6.446 -6.433 -6.436\n",
+       "    water_density   (time) float32 1.023e+03 1.023e+03 ... 1.023e+03 1.023e+03\n",
+       "    depth           (time) float32 10.28 10.26 10.25 10.23 ... 10.14 10.15 10.15\n",
+       "Attributes: (12/41)\n",
+       "    fs:                        1\n",
+       "    n_bin:                     300\n",
+       "    n_fft:                     300\n",
+       "    description:               Binned averages calculated from ensembles of s...\n",
+       "    filehead_config:           {"CLOCKSTR": {"TIME": "\\"2020-08-13 13:56:21\\"...\n",
+       "    inst_model:                Signature1000\n",
+       "    ...                        ...\n",
+       "    has_imu:                   1\n",
+       "    beam_angle:                25\n",
+       "    h_deploy:                  0.6\n",
+       "    declination:               15.8\n",
+       "    declination_in_orientmat:  1\n",
+       "    principal_heading:         11.1898
" ], - "source": [ - "# Beam-variance equation for 4-beam ADCPs\n", - "stress_vec = avg_tool.reynolds_stress_4beam(ds_beam, noise=ds_avg['noise'], orientation='up', beam_angle=25)\n", - "upwp_ = stress_vec[1]\n", - "vpwp_ = stress_vec[2]\n", - "wpwp_ = ds_avg['wpwp_bar'] # Found from the vertical along-beam velocity (vel_b5) above\n", - "\n", - "# OR #\n", - "\n", - "# Beam-variance equation for 5-beam ADCPs\n", - "tke_vec, stress_vec = avg_tool.stress_tensor_5beam(ds_beam, noise=ds_avg['noise'], orientation='up', beam_angle=25)\n", - "upwp_ = stress_vec[1]\n", - "vpwp_ = stress_vec[2]\n", - "wpwp_ = tke_vec[2]" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "The shear components can be found from the aptly named functions `dudz`, `dvdz`, and `dwdz` in ADPBinner. These functions, which are useful alone in their own right, estimate the shear in the velocity vector between respective depth bins. There is always correlation between velocity measurements in adjacent depth bins, based on ADCP operation principles, which is why \"estimation\" is also used here for shear.\n", - "\n", - "The shear functions operate on the raw velocity vector in the principal reference frame and need to be ensemble-averaged here. This can be done by nesting the `d*dz` function within the ADPBinner's `mean` function. With the ensemble shear known, we can put all the components together to get a production estimation." - ] - }, + "text/plain": [ + "\n", + "Dimensions: (time: 183, dirIMU: 3, range: 28, dir: 4, beam: 4,\n", + " earth: 3, inst: 3, q: 4, time_b5: 183, range_b5: 28)\n", + "Coordinates:\n", + " * time (time) datetime64[ns] 2020-08-15T00:22:30.001030683 ... 2...\n", + " * dirIMU (dirIMU) " + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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V155xZJuGIZuu+029enTRykpKZoyZYo+/fTTI7J/R1uk+jQzDENTp06Vw+HQc889d8g8qc/I9bls2TKdfvrpSktLU2Zmpr7yla/o4MGDUfNcsmSJxo0bJ5/Pp8GDB+vRRx/t9HYTVbT9Kisr01VXXaX8/HylpaVp3Lhxevrppw+ZZzLW59KlSzVt2jQVFBS0ex539ZxMxrqUotdnc3OzbrrpJo0cOVJpaWkqKCjQ1Vdfrd27dx8yX+qz/ePT7Pvf/74cDofmzZt3yHyTtT6RZAwknAULFhher9eYP3++sX79euOaa64xsrOzjfLycmPdunXGRRddZLzwwgvG5s2bjUWLFhnHHXec8fWvfz1qnu+8847hcrmMX//618aGDRuMW265xfB4PMa6detCy9xzzz1GVlaW8dxzzxkffvihccEFFxgDBgwwDh48eKR3+YiKVp9m9913nzF16lRDkvHss89GzZP6jFyf7777rpGZmWnMnTvX+Oijj4xPPvnEeOKJJ4yGhoaIeW7dutVITU01Zs2aZWzYsMF44IEHDJfLZSxcuLDD201Uh9qvM8880zjppJOM999/39iyZYtx1113GU6n01i1alXEPJO1Pl955RXjf//3f41nnnmm3fO4K+dkstalYUSvz8rKSmPKlCnGE088YXzyySfGsmXLjAkTJhgnnnhi1Dypz8jH5xeeeeYZY/To0UZBQYHx+9//PmqeyVyfSC4ENAlowoQJxnXXXReaDgQCRkFBgTF37tx2l3/yyScNr9drNDc3R8zz4osvNs477zzLvIkTJxrf+973DMMwjGAwaOTn5xu/+c1vQumVlZWGz+czHn/88cPZnbjrSH2uXr3aKCwsNEpLSzsU0FCfketz4sSJxi233NKpPH/+858bI0aMsMy75JJLjLPPPrvD201Uh9qvtLQ04+9//7tlnZycHOORRx6JmGcy1+cX7OdxV89J6rJVR9rF5cuXG5KM7du3R1yG+mwVqT537txpFBYWGh999JHRr1+/QwY01CeSBZecJZimpiatXLlSU6ZMCc1zOp2aMmWKli1b1u46VVVVyszMlNsdfo5q//79dfvtt4emly1bZslTks4+++xQntu2bVNZWZllmaysLE2cODHidhNBR+qzvr5el19+uR588EHl5+e3mw/12epQ9VlRUaH3339fubm5Ovnkk5WXl6evfvWrevvtty35nHrqqfrWt74Vmj5UfXblvEgEHdmvk08+WU888YT279+vYDCoBQsWqKGhQaeeempoHerz0Dp6TlKXXVdVVSWHw6Hs7OzQPOqz44LBoK666ir97Gc/04gRI9pdhvpEsiKgSTB79+5VIBBQXl6eZX5eXp7KysraXf6uu+7Stddea5k/aNAg9erVKzRdVlYWNc8v/u/odhNFR+rzxhtv1Mknn6wLL7wwYj7UZ6tD1efWrVslSbfffruuueYaLVy4UOPGjdMZZ5xhuVehuLhYffr0CU1Hqs/q6modPHiw0+dFoujIfj355JNqbm5Wz5495fP59L3vfU/PPvusBg8eHFqe+jy0jp6T1GXXNDQ06KabbtJll12mzMzM0Hzqs+Puvfdeud1u/fjHP464DPWJZOU+9CJIVNXV1TrvvPM0fPhwS++BJC1atCg+hUowL7zwgt58802tXr066nLUZ8cEg0FJ0ve+9z3NnDlTkjR27FgtWrRI8+fP19y5cyVJf//73+NWxkRz6623qrKyUm+88YZ69eql5557ThdffLHeeustjRw5UhL1GUvUZec1Nzfr4osvlmEY+vOf/2xJoz47ZuXKlbr//vu1atUqORyOiMtRn0hW9NAkmF69esnlcqm8vNwyv7y83HI5VE1Njc455xxlZGTo2WeflcfjiZpvfn5+1Dy/+P9Q2000h6rPN998U1u2bFF2drbcbnfosr2vf/3rlkt67KjP9vfri78cDh8+3JI+bNgw7dixI2K+keozMzNTKSkpHT4vEs2h9mvLli364x//qPnz5+uMM87Q6NGjNWfOHI0fP14PPvhgxHyTtT6j6eo5SV1G90Uws337dr3++uuW3pn2UJ/te+utt1RRUaHi4uLQd9H27dv1P//zP+rfv3/E9ahPJAsCmgTj9Xp14oknWnoEgsGgFi1apEmTJklq7Zk566yz5PV69cILL8jv9x8y30mTJrXpZXj99ddDeQ4YMED5+fmWZaqrq/X++++HlklEh6rPm2++WWvXrtWaNWtCL0n6/e9/r7/97W8R86U+26/P/v37q6CgQBs3brSst2nTJvXr1y9ivoeqz46cF4noUPtVX18vqfWadzOXyxXqDWtPstZnNF09J6nLyL4IZj799FO98cYb6tmz5yHXoT7bd9VVV7X5LiooKNDPfvYzvfbaaxHXoz6RNOI9KgE6b8GCBYbP5zMeffRRY8OGDca1115rZGdnG2VlZUZVVZUxceJEY+TIkcbmzZuN0tLS0KulpSWUx+mnn2488MADoel33nnHcLvdxm9/+1vj448/NubMmdPuMMPZ2dnG888/b6xdu9a48MILj5lhhiPVZ3vUzugz1GfYoerz97//vZGZmWk89dRTxqeffmrccsstht/vNzZv3hzK46qrrjJuvvnm0PQXQ4/+7Gc/Mz7++GPjwQcfbHfo0c58joki2n41NTUZgwcPNk455RTj/fffNzZv3mz89re/NRwOh/Hyyy+H8qA+W9XU1BirV682Vq9ebUgy7rvvPmP16tWhUbc6ck5Sl2HR6rOpqcm44IILjL59+xpr1qyxfBc1NjaG8qA+ww51fNq1N8oZ9YlkRUCToB544AGjuLjY8Hq9xoQJE4z33nvPMAzDWLx4sSGp3de2bdtC6/fr18+YM2eOJc8nn3zSOP744w2v12uMGDHC8oPIMFqHNb311luNvLw8w+fzGWeccYaxcePGI72rR0Wk+mxPewEN9Wl1qPqcO3eu0bdvXyM1NdWYNGmS8dZbb1nSv/rVrxozZsywzFu8eLExZswYw+v1GgMHDjT+9re/dXq7iSrafm3atMm46KKLjNzcXCM1NdUYNWpUm2Gcqc9WkdrHL+qmI+ckdRkWrT63bdsW8bto8eLFoTyoz7BDHZ927QU01CeSlcMwDOPI9wMBAAAAQOxxDw0AAACAhEVAAwAAACBhEdAAAAAASFgENAAAAAASFgENAAAAgIRFQAMAAAAgYRHQAAAAAEhYBDQAAAAAEhYBDQAksG9961uaPn16vIsBAEDcuONdAABA+xwOR9T0OXPm6P7775dhGEepRAAAdD8ENADQTZWWlobeP/HEE7rtttu0cePG0Lz09HSlp6fHo2gAAHQbXHIGAN1Ufn5+6JWVlSWHw2GZl56e3uaSs1NPPVU/+tGPdMMNN6hHjx7Ky8vTI488orq6Os2cOVMZGRkaPHiwXn31Vcu2PvroI02dOlXp6enKy8vTVVddpb179x7lPQYAoPMIaADgGPPYY4+pV69eWr58uX70ox/pBz/4gb75zW/q5JNP1qpVq3TWWWfpqquuUn19vSSpsrJSp59+usaOHasPPvhACxcuVHl5uS6++OI47wkAAIdGQAMAx5jRo0frlltu0XHHHafZs2fL7/erV69euuaaa3Tcccfptttu0759+7R27VpJ0h//+EeNHTtWd999t4YOHaqxY8dq/vz5Wrx4sTZt2hTnvQEAIDruoQGAY8yoUaNC710ul3r27KmRI0eG5uXl5UmSKioqJEkffvihFi9e3O79OFu2bNHxxx9/hEsMAEDXEdAAwDHG4/FYph0Oh2XeF6OnBYNBSVJtba2mTZume++9t01effr0OYIlBQDg8BHQAECSGzdunJ5++mn1799fbjdfCwCAxMI9NACQ5K677jrt379fl112mVasWKEtW7botdde08yZMxUIBOJdPAAAoiKgAYAkV1BQoHfeeUeBQEBnnXWWRo4cqRtuuEHZ2dlyOvmaAAB0bw6DR0wDAAAASFD86Q0AAABAwiKgAQAAAJCwCGgAAAAAJCwCGgAAAAAJi4AGAAAAQMIioAEAAACQsAhoAAAAACQsAhoAAAAACYuABgAAAEDCIqABAAAAkLAIaAAAAAAkrP8Pf05JNbw8jNcAAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "%matplotlib inline\n", + "from matplotlib import pyplot as plt\n", + "import matplotlib.dates as dt\n", + "\n", + "ax = plt.figure(figsize=(10, 6)).add_axes([0.14, 0.14, 0.8, 0.74])\n", + "# Plot flow speed\n", + "t = dolfyn.time.dt642date(ds_avg[\"time\"])\n", + "plt.pcolormesh(t, ds_avg[\"range\"], ds_avg[\"U_mag\"], cmap=\"Blues\", shading=\"nearest\")\n", + "# Plot the water surface\n", + "ax.plot(t, ds_avg[\"depth\"])\n", + "\n", + "# Set up time on x-axis\n", + "ax.set_xlabel(\"Time\")\n", + "ax.xaxis.set_major_formatter(dt.DateFormatter(\"%H:%M\"))\n", + "\n", + "ax.set_ylabel(\"Altitude [m]\")\n", + "ax.set_ylim([0, 12])\n", + "plt.colorbar(label=\"Speed [m/s]\")" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": { + "scrolled": false + }, + "outputs": [ + { + "data": { + "image/png": "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gD2RkZHo3LmzbF6nTp3www8/2FzHx8cHPj4+deaLYg1EsaaeD77kS0v5Aa6T1MjXlKxos8ReElPn2026nKIqjh+mFTElgUTB9pd+Xba/iOx/Fdkus/elqJNtz04KZefgbG+P6n6xO9qi7v8xe6NTLUdfPSUtUztR+QUqK7Ot7ufdsTJH/4ChXM/VdEpJtPMq2XsGyR8tBDsto/P2U27QJunn1izIkxiLZD2dnRhmxR8tpD9IzMofOQ7+kFH+oHT1tAxHP3/Krwfp+6fuj1vbz+wnVLa3pwZ7P2CvJ47t5ex9jpw5+ri2DXdT408wSsr3vJQ0+VFrry12ki3pe1Wn+F529JQqu38aViZpdkJ6SZat8ytAEsZHuPqz1t4xqWFR+SIcD/lDbHp6uvXx0qVL8e9//xsff/yx9fKXY8eOYfr06fXeH8cRTg8Tfccdd2DatGlYvnw5zp49i7Nnz+KHH37AQw89hAkTJrhUCVv69++PY8eOyeYdP34ccXFxqm6HiIiIiOhGE9wweZp58+bh3XfftSY3ANChQwe89dZbLt9j0+kenA8++ADPPPMM7r33Xut41V5eXnjooYfwxhtvuFQJW5566in069cPr776Ku666y7s2rULH374IT788ENVt0NEREREdOOpnZZ4XoqTk5ODmpqaOvPNZjPy8vJciul0D46/vz/+/e9/48KFC0hJSUFKSgoKCgrw73//GwEBAS5Vwpabb74ZK1aswNdff42uXbvipZdewqJFi3Dfffepuh0iIiIiohtNEAXVJ08zZMgQPPLII0hOTrbO27t3Lx577DGXh4p2+aqmgIAAdOvWzdXVHTZmzBiMGTPG7dshIiIiIrqx2IPzySefYOrUqbjpppvg7V070ExNTQ2GDx+O//73vy7FdDrBGTRokGyEDKU//vjDpYoQERERETUlwuX/1IznaVq0aIFff/0VJ06cwJEjRwAAHTt2RPv27V2O6XSC06NHD9nz6upq7Nu3DwcPHrR5bxoiIiIiIpIToLM/eqwL8TxVu3bt0K5dO1ViOZ3gvPXWW/XOX7BgAUpLS6+7QkRERERETUFT7cGZNWsWXnrpJYev358zZw6effZZhISEOLS8amne/fffj08++UStcEREREREjVzTHCj67bffRnl5ucPLL168GIWFhQ4vr9qtU7dv3w5fX1+1whERERERNXLq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lyc14xETHCIiIiIiTbAHxz2Y4BARERERaYDX4LgHExwiIiIiIg3odQL0KmYlasbyZExwiIiIiIg0IFye1IxHTHCIiIiIiDShEwToVLxuRs1YnowJDhERERGRBgShdlIzHjWhBKdVfAyMRqPW1SAiatD+3/4V8uca1YOI6HoUFxfja5NJ62pckwB1e3AEnqQGoAklOEREREREDQmvwXEPJjhERERERBrgNTjuwQSHiIiIiEgDHCbaPZjgEBERERFpQLj8n5rxiAkOEREREZEmdELtpGY8YoJDRERERKQJQRAgqDmKGq/BAcAEh4iIiIhIE7rLk5rxiAkOEREREZEm2IPjHkxwiIiIiIg0oBcE6FVMStSM5cmY4BARERERaUHlHhwwwQHABIeIiIiISBMcRc09mOAQEREREWmA98FxDyY4REREREQaEAR1zyrjGWq1mOAQEREREWmAPTjuwQSHiIiIiEgDvAbHPZjgEBERERFpQCcI0Anq3Z5Tx3PUADDBISIiIiLSBK/BcQ8mOEREREREGuA1OO7BBIeIiIiISAPC5UnNeMQEh4iIiIhIE4IgQFDxvDI1Y3kyJjhERERERBpgD457MMEhIiIiItIAe3DcgwkOEREREZEGdBCgU7HfRc1YnowJDhERERGRRpiSqI8JDhERERGRBngfHPdggkNEREREpAkOM+AOTHCIiIiIiDTA9MY9mOAQEREREWlAuPyfmvGICQ4RERERkSbYg+MeTHCIiIiIiDTAHhz30GldAUcsXrwYrVq1gq+vL/r06YNdu3ZpXSUiIiIiImqAGnyC880332DWrFmYP38+kpOT0b17dwwfPhz5+flaV42IiIiIyGWCGybygATnzTffxPTp0zFt2jR07twZH3zwAfz9/fHJJ59oXTUiIiIiImpgGvQ1OFVVVdi7dy/mzJljnafT6TB06FBs37693nUqKytRWVlpfV5UVAQAKC4udm9liYiIiKhBuPK7TxRFjWtiX1lpqaq9LmWlpSpG81wNOsE5f/48zGYzwsPDZfPDw8Nx9OjRetdZuHAhXnjhhTrzY2Ji3FJHIiIiImqYSkpKYDKZtK5GHQaDAREREehzWx/VY0dERMBgMKge15M06ATHFXPmzMGsWbOszy0WCwoKChAaGgpB4JmJVxQXFyMmJgaZmZkwGo1aV8fjsT3VxfZUF9tTXWxPdbE91cO2vEoURZSUlCAqKkrrqtTL19cX6enpqKqqUj22wWCAr6+v6nE9SYNOcJo3bw69Xo+8vDzZ/Ly8PERERNS7jo+PD3x8fGTzgoOD3VVFj2c0Gpv8QVBNbE91sT3VxfZUF9tTXWxP9bAtazXEnhspX1/fJp+IuEuDHmTAYDCgV69eWL9+vXWexWLB+vXrkZSUpGHNiIiIiIioIWrQPTgAMGvWLEydOhU33XQTevfujUWLFqGsrAzTpk3TumpERERERNTANPgE5+6778a5c+fw/PPPIzc3Fz169MDq1avrDDxAzvHx8cH8+fPrnM5HrmF7qovtqS62p7rYnupie6qHbUlUSxAb+vh5REREREREDmrQ1+AQERERERE5gwkOERERERE1GkxwiIiIiIio0WCCQ0REREREjQYTHA+1ePFitGrVCr6+vujTpw927doFACgoKMATTzyBDh06wM/PD7GxsZg5cyaKioquGfO7775Dx44d4evri4SEBPz666+yclEU8fzzzyMyMhJ+fn4YOnQoTpw44Zb9u9FstaeUKIoYOXIkBEHAypUrrxmT7Wm7Pbdv347BgwcjICAARqMRAwYMwKVLl+zG3LhxI3r27AkfHx/Ex8djyZIlTm/XU9nbr9zcXEyePBkREREICAhAz5498cMPP1wzZlNsz82bN2Ps2LGIioqq93Ps6meyKbYlYL89q6urMXv2bCQkJCAgIABRUVGYMmUKsrOzrxmX7Vn/+1Pq0UcfhSAIWLRo0TXjNtX2pCZOJI+zbNky0WAwiJ988ol46NAhcfr06WJwcLCYl5cnHjhwQJwwYYL4008/iSdPnhTXr18vtmvXTpw4caLdmFu3bhX1er34+uuvi4cPHxbnzp0rent7iwcOHLAu89prr4kmk0lcuXKluH//fnHcuHFi69atxUuXLrl7l93KXntKvfnmm+LIkSNFAOKKFSvsxmR72m7Pbdu2iUajUVy4cKF48OBB8ejRo+I333wjVlRU2Ix56tQp0d/fX5w1a5Z4+PBh8d133xX1er24evVqh7frqa61X3/5y1/Em2++Wdy5c6eYlpYmvvTSS6JOpxOTk5Ntxmyq7fnrr7+K//d//ycuX7683s+xK5/JptqWomi/PQsLC8WhQ4eK33zzjXj06FFx+/btYu/evcVevXrZjcn2tP3+vGL58uVi9+7dxaio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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "ax = plt.figure(figsize=(10, 6)).add_axes([0.14, 0.14, 0.8, 0.74])\n", + "# Plot flow direction\n", + "plt.pcolormesh(t, ds_avg[\"range\"], ds_avg[\"U_dir\"], cmap=\"twilight\", shading=\"nearest\")\n", + "# Plot the water surface\n", + "ax.plot(t, ds_avg[\"depth\"])\n", + "\n", + "# set up time on x-axis\n", + "ax.set_xlabel(\"Time\")\n", + "ax.xaxis.set_major_formatter(dt.DateFormatter(\"%H:%M\"))\n", + "\n", + "ax.set_ylabel(\"Altitude [m]\")\n", + "ax.set_ylim([0, 12])\n", + "plt.colorbar(label=\"Horizontal Vel Dir [deg CW from true N]\");" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Saving and Loading DOLfYN datasets\n", + "Datasets can be saved and reloaded using the `save` and `load` functions. Xarray is saved natively in netCDF format, hence the \".nc\" extension.\n", + "\n", + "Note: DOLfYN datasets cannot be saved using xarray's native `ds.to_netcdf`; however, DOLfYN datasets can be opened using `xarray.open_dataset`." + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": {}, + "outputs": [], + "source": [ + "# Uncomment these lines to save and load to your current working directory\n", + "# dolfyn.save(ds, 'your_data.nc')\n", + "# ds_saved = dolfyn.load('your_data.nc')" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## 7. Turbulence Statistics\n", + "\n", + "The next section of this jupyter notebook will run through the turbulence analysis of the data presented here. There was no intention of measuring turbulence in the deployment that collected this data, so results depicted here are not the highest quality. The quality of turbulence measurements from an ADCP depend heavily on the quality of the deployment setup and data collection, particularly instrument frequency, samping frequency and depth bin size.\n", + "\n", + "Read more on proper ADCP setup for turbulence measurements in: Thomson, Jim, et al. \"Measurements of turbulence at two tidal energy sites in Puget Sound, WA.\" IEEE Journal of Oceanic Engineering 37.3 (2012): 363-374.\n", + "\n", + "Most functions related to turbulence statistics in MHKiT-DOLfYN have the papers they originate from referenced in their docstrings.\n", + "\n", + "### 7.1 Turbulence Intensity\n", + "For most users, turbulence intensity (TI), the ratio of the ensemble standard deviation to ensemble flow speed given as a percent, is all most will need. In MHKiT, this can be simply calculated as `.velds.I`, but be aware that this will be a conservative estimate. Another function, `turbulence_intensity`, is capable of subtracting instrument noise from this parameter and is discussed below. The noise-subtracted TI is more accurate and typically 1-2% lower than the non-noise-subtracted estimation.\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 21, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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XBwGDhyI1NRUFBYWYvLkyQCACRMmoF27dkhJSYGfnx969uxpyB8WFgYA+vyCggLMmzcPd9xxByIjI3H48GE88cQT6NKlC0aMGOFB6zzD4IaIiKiZGDduHM6ePYvk5GRkZWWhb9++SE9P1y8yPnbsGCyW6h8Tslqt2LNnD958803k5uYiKioKw4cPx9NPP23qs24UcbnzQk1Afn4+QkNDkZeXxzuniIjosurj/xlyHS8Ht4S/4v5Ny5eEAw9dPM//v7nAIzdEREQmqK27paiyBvucGyIiIiJ38MgNERGRCcx4t1RzweCGiIjIBOpbwT3LT64x8CMiIqImhUduiIiITGDGc26aCwY3REREJrAoCiwK75aqCwxuiIiITMAjN3WH19wQERFRk8IjN0RERCbgkZu6w+CGiIjIBAxu6g5PSxEREVGTwiM3REREJlAUBYoHd0spPHZTJQY3REREJuBpqbrD01JERETUpPDIDRERkQks8OwIA49OVI3BDRERkQkURf24nb/2qtLkMPAjIiKiJoVHboiIiEygaP95kp9cY3BDRERkAt4tVXcY3BAREZmAwU3d4TU3RERE1KTwyA0REZEJLAAsHhx+sYhaq0qTw+CGiIjIBLyguO7wtBQRERE1KTxyQ0REZBIee6kbzSa4Ecd+ggj0V79YrOrU+dGQVm916uWjTu2lWkZhnDrnKcpXpz5+apJC9bulxw21WXUiInJBZB1S/yi5pE5LbeXLcs+of3irv+ni553q9LuvAQBKmzbq8t4Dygs8fQz2SyV1V+EKPH5CMSOjKvG0FBERETUpzebIDRERUUPC59zUHQY3REREJrBAgcWDEMWTvE0dT0sRERE1I8uWLUNMTAz8/PwQHx+PrVu3VivfmjVroCgKxowZY5gvhEBycjLatm0Lf39/JCQk4ODBg3VQ8+pjcENERGQCpRY+NbV27VokJSVh7ty52LFjB/r06YMRI0bgzJkzl8139OhRzJgxA0OGDKm0bPHixXjhhReQlpaGLVu2IDAwECNGjEBxcbEbNawdDG6IiIhMIO+W8uRTU0uXLsWUKVMwefJk9OjRA2lpaQgICMDKlSurzGO323Hvvfdi3rx56Ny5s2GZEAKpqal48skncdttt6F3795YvXo1Tp06hY8++qjmFawlDG6IiIhMUFtHbvLz8w2fkhLXt7PbbDZs374d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iNf3S4fTXRL6+NFSlaj9BLlvyT4IcH7Whxy3ajlCuwNEkevXlisVx7BzHeX21sa+KC2unEffP2RWud3VGYrdxf+AZGO1cSUcxvWU71dOvwMVfzP09ajfhTYeFW+n3z+t3/RSZDv05XIM+zjl0ebZjeUb6qIuKP9T1tdRYV/Tf+9cbEs5T/5++fgby5K/C85p5TiT219rq1Kxb5zL0X7D4dDqFKLdkKL95itB5WNTXCow9kWd8/CCYjT+4KZFixY4fvw4oqOjkZ6erscQQgi375QC3AxunF+a5Sw0NNTl2z3ddcMNN+DAgQOGeb/88ov+8B8iIiJqvG6//Xbcc8896Nq1K86dO4dRo0YBAHbu3Kk/FdkdbgU3kZGROHToEGJiYgzzv/32W3Tu3NntylT02GOP4frrr8fChQvxpz/9CVu3bsWrr76KV199tdbWQUREZAZPLwpuChcUP/fcc4iJicHx48exePFiBGlHk0+fPo2HHnrI7XLdCm6mTJmC6dOnY+XKlVAUBadOncLmzZsxY8YMzJkzx+3KVHTttdfiww8/xOzZszF//nx06tQJqampuPfee2ttHURERKbgreDw9vbGjBkzKs1/7LHHPCrXreBm1qxZcDgcGDZsGIqKinDjjTfC19cXM2bMwMMPP+xRhSq69dZbceutt9ZqmURERNQwHDx4EBs3bsSZM2cqPdQvOTnZrTLdCm4URcHf//53PP744zh06BAKCgrQo0cP/XASERERXR5PSwErVqzA1KlT0bp1a0RGRhrapChK/QY3ko+PT6W7mYiIiKgaeFoKCxYswDPPPIOZM2fWarluBTdjx451GTEqigI/Pz906dIF99xzD66++mqPK0hERERN04ULF3DXXXfVerluPcQvNDQUX331FXbs2KEfVtu5cye++uorlJWVYe3atejTpw/+97//1XZ9iYiImgb54kxPPo3cXXfdhc8//7zWy3X7VvB77rkHL730kv5qdIfDgenTpyM4OBhr1qzBgw8+iJkzZ9bq6xiIiIiaCsWiQPHg1JIneRuKLl26YM6cOfj+++/Rq1cveHsbH8T6yCOPuFWuW8HN66+/jv/97396YAMAFosFDz/8sP5cmsTERAwZMsStShERETV5nh59aQJHbl599VUEBQVh06ZN2LRpk2GZoij1G9yUlZVh//79uOqqqwzz9+/frz8u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vx9vv/02vvrqK/z+979HfHw85s2bhzZt2qB79+5YvXo1Pv30UyxbtszE2lfG9rA99YntYXuImh0zDhfV1N69e4Wfn1+l5zfs3LlTjBgxQjz22GNCCCEuXLggrr/+ehETEyO6dOki+vXrJ7799lszqnxZbA/bU5/YHraHqLlpNHdL3XzzzSgqKsL69esRFBSkz58wYQLy8vLw/vvvw9vbGxcvXkROTg7Onj2LgQMHmljjy2N72J76xPawPUTNitnRVXXt2rVLeHl5ieXLl4uSkhJ9/t///nfRpUsXE2vmHranYWN7Gja2h4gup1FccwMAffr0wcyZM/H000/D29sb48ePh8PhwA8//IA///nPZlevxtieho3tadjYHiK6nEZzWkqaNm0aPvzwQ3To0AFZWVkIDAzEe++9hx49ephdNbewPQ0b29OwsT1E5EqjC26Ki4vx888/Y8eOHfD19W30/6phexo2tqdhY3uIyJVGF9wQERERXU6jeIgfERERUXUxuCEiIqImhcENERERNSkMboiIiKhJYXBDRERETQqDGyIiImpSGNwQERFRk8LghoiIiJoUBjdETUxmZiYURUFubq7ZVSEiMgWfUEzUyA0dOhR9+/ZFamoqAMBms+H8+fOIiIiAoijmVo6IyASN5q3gRFQ9Pj4+iIyMNLsaRESm4WkpokZs0qRJ2LRpE55//nkoigJFUfDGG28YTku98cYbCAsLw/r163H11VcjICAAd955J4qKivDmm28iJiYGLVq0wCOPPAK73a6XXVJSghkzZqBdu3YIDAxEfHw8MjMzzWkoEVEN8MgNUSP2/PPP45dffkHPnj0xf/58AMBPP/1UKV1RURFeeOEFrFmzBhcvXsTtt9+OsWPHIiwsDJ988gl+/fVX3HHHHbjhhhswbtw4AEBiYiL27duHNWvWICoqCh9++CFGjhyJvXv3omvXrvXaTiKimmBwQ9SIhYaGwsfHBwEBAfqpqP3791dKV1paiuXLlyM2NhYAcOedd+Ktt95CdnY2goKC0KNHD9x0003YuHEjxo0bh2PHjmHVqlU4duwYoqKiAAAzZsxAeno6Vq1ahYULF9ZfI4mIaojBDVEzEBAQoAc2ABAREYGYmBgEBQUZ5p05cwYAsHfvXtjtdlx11VWGckpKStCqVav6qTQRkZsY3BA1A97e3obviqK4nOdwOAAABQUFsFqt2L59O6xWqyGdc0BERNQQMbghauR8fHwMFwLXhn79+sFut+PMmTMYMmRIrZZNRFTXeLcUUSMXExODLVu24OjRo8jJydGPvnjiqquuwr333osJEyZg3bp1OHLkCLZu3YqUlBRs2LChFmpNRFR3GNwQNXIzZsyA1WpFjx490KZNGxw7dqxWyl21ahUmTJiAv/71r7j66qsxZswYbNu2DR06dKiV8omI6gqfUExERERNCo/cEBERUZPC4IaIiIiaFAY3RERE1KQwuCEiIqImhcENERERNSkMboiIiKhJYXBDRERETQqDGyIiImpSGNwQERFRk8LghoiIiJoUBjdERETUpDC4ISIioibl/wMDCsMw5Lw1EwAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Turbulence Intensity\n", + "ds_avg[\"TI\"] = ds_avg.velds.I\n", + "ds_avg[\"TI\"].plot(cmap=\"Reds\", ylim=(0, 11))" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### 7.2 Power Spectral Densities (Auto-Spectra)\n", + "\n", + "Other turbulence parameters include the TKE power- and cross-spectral densities (i.e the power spectra), turbulent kinetic energy (TKE, i.e. the variances of velocity vector components), Reynolds stress vector (i.e. the co-variances of velocity vector components), TKE dissipation rate, and TKE production rate. These quantities are primarily used to inform and verify hydrodynamic and coastal models, which take some or all of these quantities as input.\n", + "\n", + "The TKE production rate is the rate at which kinetic energy (KE) transitions from a useful state (able to do \"work\" in the physics sense) to turbulent; TKE is the actual amount of turbulent KE in the water; and TKE dissipation rate is the rate at which turbulent KE is lost to non-motion forms of energy (heat, sound, etc) due to viscosity. The power spectra are used to depict and quantify this energy in the frequency domain, and creating them are the first step in turbulence analysis.\n", + "\n", + "We'll start by looking at the power spectra, specifically the auto-spectra from the vertical beam (\"auto\" meaning the variance of a single vector direction, e.g. $\\overline{u'^2}$, vs \"cross\", meaning the covariance of two directions, e.g. $\\overline{u'w'}$). This can be done using the `power_spectral_density` function from the `ADPBinner` we created (\"avg_tool\"). We'll create spectra at the middle water column, at a depth of 5 m, and use a number of FFT's equal to 1/3 the bin size." + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": {}, + "outputs": [], + "source": [ + "rng = 5 # m\n", + "vel_up = ds[\"vel_b5\"].sel(range_b5=rng, method=\"nearest\") # vertical velocity\n", + "U = ds_avg[\"U_mag\"].sel(\n", + " range=5, method=\"nearest\"\n", + ") # flow speed, for plotting in the next block\n", + "\n", + "ds_avg[\"auto_spectra_5m\"] = avg_tool.power_spectral_density(\n", + " vel_up, freq_units=\"Hz\", n_fft=ds_avg.n_bin // 3\n", + ")" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "In the auto-spectra, we're primarly looking for three components: the energy-producing region, the isotropic turbulence region (so-called \"red noise\"), and the instrument noise floor (termed \"white noise\"). \n", + "\n", + "The block below organizes and plots the power spectra by the corresponding ensemble speed, averaging them by 0.1 m/s velocity bins. Note that if an ensemble is missing data that wasn't filled in, a power spectrum will not be calculated for that ensemble timestamp." + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[Text(0.5, 0, 'Frequency [Hz]'),\n", + " Text(0, 0.5, 'PSD [m2 s-2 Hz-1]'),\n", + " (0.01, 1),\n", + " (0.0005, 0.1)]" + ] + }, + "execution_count": 23, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "import matplotlib as mpl\n", + "\n", + "plt.rcParams.update({\"font.size\": 18, \"font.family\": \"Times New Roman\"})\n", + "\n", + "\n", + "def plot_spectra_by_color(auto_spectra, U_mag, ax, fig, cbar_max=4.0):\n", + " U = U_mag.values\n", + " U_max = U_mag.max().values\n", + "\n", + " # Average spectra into 0.1 m/s velocity bins\n", + " speed_bins = np.arange(0.5, U_max, 0.1)\n", + " time = [t for t in auto_spectra.dims if \"time\" in t][0]\n", + " S_group = auto_spectra.assign_coords({time: U}).rename({time: \"speed\"})\n", + " group = S_group.groupby_bins(\"speed\", speed_bins)\n", + " count = group.count().values\n", + " S = group.mean()\n", + "\n", + " # define the colormap\n", + " cmap = plt.cm.turbo\n", + " # define the bins and normalize\n", + " bounds = np.arange(0.5, cbar_max, 0.1)\n", + " norm = mpl.colors.BoundaryNorm(bounds, cmap.N)\n", + " colors = cmap(norm(speed_bins))\n", + "\n", + " # plot\n", + " for i in range(len(speed_bins) - 1):\n", + " ax.loglog(auto_spectra[\"freq\"], S[i], c=colors[i])\n", + " ax.grid()\n", + "\n", + " # create a second axes for the colorbar\n", + " cax = fig.add_axes([0.8, 0.07, 0.03, 0.88])\n", + " # cax, _ = mpl.colorbar.make_axes(fig.gca())\n", + " sm = mpl.colorbar.ColorbarBase(\n", + " cax,\n", + " cmap=cmap,\n", + " norm=norm,\n", + " spacing=\"proportional\",\n", + " ticks=bounds,\n", + " boundaries=bounds,\n", + " format=\"%1.1f\",\n", + " label=\"Velocity [m/s]\",\n", + " )\n", + "\n", + " # Add -5/3 slope line\n", + " m = -5 / 3\n", + " x = np.logspace(-1, 0.5)\n", + " y = 10 ** (-3) * x**m\n", + " ax.loglog(x, y, \"--\", c=\"black\", label=\"$f^{-5/3}$\")\n", + " ax.legend()\n", + "\n", + " return ax, sm\n", + "\n", + "\n", + "# Set up figure\n", + "fig, ax = plt.subplots(1, 1, figsize=(5, 5))\n", + "fig.subplots_adjust(left=0.2, right=0.75, top=0.95, bottom=0.1)\n", + "\n", + "# Plot spectra by color\n", + "plot_spectra_by_color(ds_avg[\"auto_spectra_5m\"], U, ax, fig, cbar_max=2.0)\n", + "# Set axes\n", + "ax.set(\n", + " xlabel=\"Frequency [Hz]\",\n", + " ylabel=\"PSD [m2 s-2 Hz-1]\",\n", + " xlim=(0.01, 1),\n", + " ylim=(0.0005, 0.1),\n", + ")" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "In the figure above, we can see the energy-producing turbulent structures below a frequency of 0.2 Hz (one tick to the right of \"10^-1\"). The isotropic turbulence cascade, seen by the dashed f^(-5/3) slope (from Kolmogorov's theory of turbulence) begins at around 0.2 Hz and continues until we reach the Nyquist frequency at 0.5 Hz (1/2 the instrument's sampling frequency, 1 Hz). The instrument's noise floor can't be seen here, but will show up as the flattened part of the spectra at the highest frequencies. For this instrument (Nortek Signature1000), the noise floor typically varies around 10^-3, depending on flow speed and range distance." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### 7.3 Instrument Noise\n", + "\n", + "The next thing we want to do is calculate the instrument's Doppler noise floor from the spectrum we calculated above. (We are making the assumption that the noise floor of the vertical beam is the same as the noise floor of the other 4 beams). This gives us a timeseries of the noise floor, which varies by instrument and with flow speed, at that depth bin.\n", + "\n", + "We can do this using the `doppler_noise_level` function. The two inputs for this function are the power spectra and \"pct_fN\", the percent of the Nyquist frequency that the noise floor exists. Because in this particularly dataset we can't see the noise floor, we'll just use 90% or pct_fN=0.9 as an example. If the noise floor began at 0.4 Hz and ran til our maximum frequency of 0.5 Hz, we'd use pct_fN = 0.4 Hz / 0.5 Hz = 0.8." + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": {}, + "outputs": [], + "source": [ + "ds_avg[\"noise_5m\"] = avg_tool.doppler_noise_level(ds_avg[\"auto_spectra_5m\"], pct_fN=0.9)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### 7.4 TKE Dissipation Rate\n", + "\n", + "Because we can see the isotropic turbulence cascade (0.2 - 0.5 Hz) at this depth bin (5 m altitude), we can calculate the TKE dissipation rate at this location from the spectra itself. This can be done using `dissipation_rate_LT83`, whose inputs are the power spectra, the ensemble speed, the frequency range of the isotropic cascade, and the instrument's noise." + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": {}, + "outputs": [], + "source": [ + "# Frequency range of isotropic turubulence cascade in same units as PSD frequency vector\n", + "f_rng = [0.2, 0.5]\n", + "# Dissipation rate\n", + "ds_avg[\"dissipation_rate_5m\"] = avg_tool.dissipation_rate_LT83(\n", + " ds_avg[\"auto_spectra_5m\"], U, freq_range=f_rng, noise=ds_avg[\"noise_5m\"]\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We have just found the spectra and dissipation rate from a single depth bin at an altitude of 5 m from the seafloor, but typically we want the spectra and dissipation rates from the entire measurement profile. If we want to look at the spectra and dissipation rates from all depth bins, we can set up a \"for\" loop on the range coordinate and merge them together:" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": {}, + "outputs": [], + "source": [ + "import xarray as xr\n", + "\n", + "spec = [None] * len(ds.range)\n", + "e = [None] * len(ds.range)\n", + "n = [None] * len(ds.range)\n", + "\n", + "for r in range(len(ds[\"range\"])):\n", + " # Calc spectra from each depth bin using the 5th beam\n", + " spec[r] = avg_tool.power_spectral_density(\n", + " ds[\"vel_b5\"].isel(range_b5=r), freq_units=\"Hz\"\n", + " )\n", + "\n", + " # Calculate doppler noise from spectra from each depth bin\n", + " n[r] = avg_tool.doppler_noise_level(spec[r], pct_fN=0.9)\n", + "\n", + " # Calc dissipation rate from each spectra\n", + " e[r] = avg_tool.dissipation_rate_LT83(\n", + " spec[r], ds_avg.velds.U_mag.isel(range=r), freq_range=f_rng, noise=n[r]\n", + " )\n", + "\n", + "ds_avg[\"auto_spectra\"] = xr.concat(spec, dim=\"range\")\n", + "ds_avg[\"noise\"] = xr.concat(n, dim=\"range\")\n", + "ds_avg[\"dissipation_rate\"] = xr.concat(e, dim=\"range\")\n", + "\n", + "del spec, n, e # save memory" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Now that we have a profile timeseries of dissipation rate, we need apply some quality control (QC). Since we can't look at each individual spectrum to ensure we can see the isotropic turbulence cascade, we want to QC the output from `dissipation_rate_LT83` to make sure what was calculated actually falls on a f^(-5/3) slope. We can do this using the function `check_turbulence_cascade_slope`, which uses linear regression on the log-transformed LT83 equation (ref. to Lumley and Terray, 1983, see docstring) to calculate the spectral slope for the given frequency range. \n", + "\n", + "In our case, we're calculating the slope of each spectrum between 0.2 and 0.5 Hz. We'll use a cutoff of 20% for the error, but this can be lowered if there still appear to be erroneous estimations from visual inspection of the spectra." + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "metadata": {}, + "outputs": [], + "source": [ + "# Quality control dissipation rate estimation\n", + "slope = avg_tool.check_turbulence_cascade_slope(\n", + " ds_avg[\"auto_spectra\"], freq_range=f_rng\n", + ")\n", + "\n", + "# Check that percent difference from -5/3 is not greater than 20%\n", + "mask = abs((slope[0].values - (-5 / 3)) / (-5.3)) <= 0.20\n", + "\n", + "# Keep good data\n", + "ds_avg[\"dissipation_rate\"] = ds_avg[\"dissipation_rate\"].where(mask)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "If we plot the dissipation rate below in a colormap, we can see that the profile map has a lot of missing data. One of the reasons is that the 1 Hz sampling rate doesn't provide enough information needed to make dissipation rate estimations, and the other part is that turbulence measurements push the boundaries of what ADCPs are capable of.\n", + "\n", + "Also, 1x10^-4 to 3x10^-4 $m^2/s^3$ is reasonable for a dissipation rate estimate for the 1 - 1.5 m/s current speeds measured here. They can be a magnitude greater for faster flow speeds, typically increase closer to the seafloor, and depend heavily on bathymetry and regional hydrodynamics." + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 28, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "ds_avg[\"dissipation_rate\"].plot(cmap=\"turbo\", ylim=(0, 11))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### 7.5 Noise-Corrected Turbulence Intensity\n", + "\n", + "Now that we've calculated the noise floor for each ping, we can recalculate TI and include subtracting instrument noise using the `turbulence_intensity` function. If we subtract this from the non-noise corrected function, we can see there's a large difference\n", + "at slower slow speeds, but the average difference is about 0.008 (0.8%). Notice this will also remove measurements where noise is \n", + "high." + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Text(0.5, 1.0, 'TI Difference')" + ] + }, + "execution_count": 29, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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AwYMwNq1a7Fv3z589dVX6NevH9LS0nDfffdp6hUUFFyxXQC477771Fvcz549i+7du2PmzJnYsWMHtm3bhldffRUDBgzA7NmzNfWcl4ecTkmc50+nTp0wYcIEtY1evXph/vz52L17N3788Uc8+eSTbqdX3nlARFXIe89pJKp+TCaT2LNnj/r6BTheibB69WqRnZ0tbDab23pms1kcP35cDBo0SPMKhnfeeUdkZGS4PNn4Ss6fPy9CQ0PVdhYuXCgOHjwoLl26JHJzc8WJEyfEJ598Ivr37y8AiICAAPHggw+qr8kozmq1itOnT4suXbqobT733HPi8uXLmv5v375dNG7cWC0zcuRIcf78efV1GDabTVy6dEnztOOIiAixYcMGYTQaXWJcsmSJ0Ov1mqdYy0/79u1FamqqWjY3N1d89913IjAwUI3p008/FVlZWW5jSktLEz169HDbtqIoYuHChWpZm80mUlJSNPHPnDlTbdtisYi//vpLdO7cWR3/8ssvi+zsbLWN/Px8MXjwYLfTCwgIEIsWLXLbz7LMAyKqekyCiBwuX77s9peV86f4axOkoKCgK9abOHHiVae/du1a8eijj2reZeXuF269evVE27ZtxdChQ8XChQvFyZMnr9jukiVLSmzvyJEjQggh6tevf8X+nz59WnzwwQdljnHfvn3i/vvvF/Xq1RMGg0G0atVKTJ8+XZNgCCFEq1atSmy3JCaTScydO1d06dJFhISEiMjISHHbbbeJTZs2acpdqd8HDx4U48aNK3G8fK2GEPZkctGiRaJbt24iJCREREdHi3vvvVfs2rXrivO/tPOAiKqeIkQZLj4gIiIiqiF4TRARERH5JSZBRERE5JeYBBEREZFfYhJEREREfolJEBEREfklJkFERERUZmazGbNnz0abNm3QqlUr9OvXD1u3bi1XW0ajEe+//z6aN2+OkydPXrFsUlISBgwYgPDwcISFhaFPnz744osvyjXdgHLV8jM2mw3nzp1DeHg4FEXxdneIiKgaE0IgJycHjRo1Up8aXhmMRqPmVTflZTAYEBwcXKY6JpMJgwcPRmpqKjZu3IimTZti9erVGDhwIBITExEfH1+qdvLz8/HBBx9gwYIFOH369FXLf/bZZxg3bhxsNhsCAgJgsViQnJyM5ORk7Nq1C3Pnzi1THHxYYimcPn36qg/R44cffvjh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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "ds_avg[\"turbulence_intensity\"] = avg_tool.turbulence_intensity(\n", + " ds.velds.U_mag, noise=ds_avg[\"noise\"]\n", + ")\n", + "\n", + "(ds_avg[\"TI\"] - ds_avg[\"turbulence_intensity\"]).plot(cmap=\"Greens\", ylim=(0, 11))\n", + "plt.title(\"TI Difference\")" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### 7.6 Turbulent Kinetic Energy (TKE) Components\n", + "\n", + "The next parameters we'll find here are the vertical TKE component and the total TKE magnitude. Since we're using the vertical beam on the ADCP, we'll directly measure the vertical TKE component from the along-beam velocity using the `turbulent_kinetic_energy` function. This function is capable of calculating TKE for any along-beam velocity.\n", + "\n", + "We can also use the so-called \"beam-variance\" equations to estimate the Reynolds stress tensor components (i.e. $\\overline{u'^2}$, $\\overline{v'^2}$, $\\overline{w'^2}$, $\\overline{u'v'}$, $\\overline{u'w'^2}$, $\\overline{v'w'^2}$), which define the stresses acting on an element of water. These equations are built into the functions `stress_tensor_5beam` and `stress_tensor4beam`. Since we're using a 5-beam ADCP, we can calculate the total TKE as well using `total_turbulent_kinetic_energy`, which is a wrapper around the 5-beam variance function.\n", + "\n", + "#### Quick 5-beam ADCP lesson before we dive in:\n", + "\n", + "There are a couple caveats to calculating Reynolds stress tensor components:\n", + " 1. Because this instrument only has 5 beams, we can only find 5 of the 6 components (6 unkowns, 5 knowns)\n", + " 2. Because the ADCP's instrument (XYZ) axes weren't aligned with the flow during deployment, we don't know what direction these components are aligned to (i.e. the 'u' direction is not necessarily the streamwise direction)\n", + " 3. It is possible to rotate the tensor, but we'd need to know all 6 components to do so properly.\n", + "\n", + "That being said, even if we don't know which direction the 3 TKE components ($\\overline{u'^2}$, $\\overline{v'^2}$, $\\overline{w'^2}$) are oriented, we can still combine them and get the total TKE magnitude.\n", + "\n", + "We'll first calculate the vertical TKE component, using the function `turbulent_kinetic_energy`, inputting our raw vertical beam data and the noise floors we calculated above for each ensemble." + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "metadata": {}, + "outputs": [], + "source": [ + "# Vertical TKE component (w'w' bar)\n", + "ds_avg[\"wpwp_bar\"] = avg_tool.turbulent_kinetic_energy(\n", + " ds[\"vel_b5\"], noise=ds_avg[\"noise\"]\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Next we can calculate the TKE magnitude using the function `total_turbulent_kinetic_energy`. This method is a wrapper around the `stress_tensor_5beam` function, which calculates the individual Reynolds stress tensor components and takes the same inputs. As an fyi, this function will drop at least one warning every time it's run, primarily the coordinate system warning. This function also requires the input raw data to be in beam coordinates, so we'll create a copy of the raw data and rotate it to 'beam'. If you do not, this function will do so automatically and rotate the original." + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "c:\\users\\mcve343\\mhkit-python\\mhkit\\dolfyn\\adp\\turbulence.py:401: UserWarning: The beam-variance algorithms assume the instrument's (XYZ) coordinate system is aligned with the principal flow directions.\n", + " warnings.warn(\n" + ] + } + ], + "source": [ + "ds_beam = dolfyn.rotate2(ds, \"beam\", inplace=False)\n", + "ds_avg[\"TKE\"] = avg_tool.total_turbulent_kinetic_energy(\n", + " ds_beam, noise=ds_avg[\"noise\"], orientation=\"up\", beam_angle=25\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "And plotting TKE:" + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 32, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Remove estimations below 0\n", + "ds_avg[\"TKE\"] = ds_avg[\"TKE\"].where(ds_avg[\"TKE\"] > 0)\n", + "\n", + "ds_avg[\"TKE\"].plot(cmap=\"Reds\", ylim=(0, 11))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "TKE esimations are generally more complete than those of dissipation rates because they are found directly from the along-beam velocity measurements. Missing TKE estimations exist whenever the noise calculated by the function `doppler_noise_level` is greater than the calculated TKE, as TKE can't be less than zero. Noise levels are affected by the instrument's processor and working frequency, water waves and other sources of \"interference\", instrument motion, current speed, intricacies in the spectra calculation, the ability to see the noise floor in the spectra, etc.\n", + "\n", + "You may also note that high TI doesn't always correlate with high TKE. TI is the ratio of flow speed standard devation to the mean, which is naturally lower when flow speeds are higher. When flow speeds are higher, they also have greater kinetic energy and thereby greater TKE.\n", + "\n", + "There is one other important thing to note on TKE measurements by ADCPs: the minimum turbulence length scale that the ADCP is capable of measuring increases with range from the instrument. This means the instrument is only capable of measuring the TKE of larger and larger turbulent structures as the beams travel farther and farther from the instrument head. One of the benefits of calculating w'w' from the vertical beam is that it isn't limited by this beam spread issue." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### 7.7 TKE Production\n", + "\n", + "Though it can't be found from this deployment, we'll go over how to estimate TKE Production. There isn't a specific function in MHKiT-DOLfYN for production, but all the necessary variables are. \n", + "\n", + "If we had aligned the ADCP instrument axes to the flow direction (so \"X\" would align with the main flow), we could use the following equation to estimate production:\n", + "\n", + "$P = -(\\overline{u'w'}\\frac{du}{dz} + \\overline{v'w'}\\frac{dv}{dz} + \\overline{w'w'}\\frac{dw}{dz})$\n", + "\n", + "To start, we need the functions `reynolds_stress_4beam` or `stress_tensor_5beam` to get the stress tensor components $\\overline{u'w'}$ and $\\overline{v'w'}$. We also need the vertical TKE component, $\\overline{w'w'}$. \n", + "\n", + "Both of these functions will give comparable results, but it should be noted that `stress_tensor_4beam` assumes the instrument is oriented with 0 degrees pitch and roll, and will throw a warning if they are greater than 5 degrees. The `stress_tensor_5beam` gives more leeway to instrument tilt, but shouldn't be used if pitch and roll angles are greater than 10 degrees." + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "c:\\users\\mcve343\\mhkit-python\\mhkit\\dolfyn\\adp\\turbulence.py:401: UserWarning: The beam-variance algorithms assume the instrument's (XYZ) coordinate system is aligned with the principal flow directions.\n", + " warnings.warn(\n", + "c:\\users\\mcve343\\mhkit-python\\mhkit\\dolfyn\\adp\\turbulence.py:411: UserWarning: 100.0 % of measurements have a tilt greater than 5 degrees.\n", + " warnings.warn(\n" + ] + } + ], + "source": [ + "# Beam-variance equation for 4-beam ADCPs\n", + "stress_vec = avg_tool.reynolds_stress_4beam(\n", + " ds_beam, noise=ds_avg[\"noise\"], orientation=\"up\", beam_angle=25\n", + ")\n", + "upwp_ = stress_vec[1]\n", + "vpwp_ = stress_vec[2]\n", + "wpwp_ = ds_avg[\"wpwp_bar\"] # Found from the vertical along-beam velocity (vel_b5) above\n", + "\n", + "# OR #\n", + "\n", + "# Beam-variance equation for 5-beam ADCPs\n", + "tke_vec, stress_vec = avg_tool.stress_tensor_5beam(\n", + " ds_beam, noise=ds_avg[\"noise\"], orientation=\"up\", beam_angle=25\n", + ")\n", + "upwp_ = stress_vec[1]\n", + "vpwp_ = stress_vec[2]\n", + "wpwp_ = tke_vec[2]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The shear components can be found from the aptly named functions `dudz`, `dvdz`, and `dwdz` in ADPBinner. These functions, which are useful alone in their own right, estimate the shear in the velocity vector between respective depth bins. There is always correlation between velocity measurements in adjacent depth bins, based on ADCP operation principles, which is why \"estimation\" is also used here for shear.\n", + "\n", + "The shear functions operate on the raw velocity vector in the principal reference frame and need to be ensemble-averaged here. This can be done by nesting the `d*dz` function within the ADPBinner's `mean` function. With the ensemble shear known, we can put all the components together to get a production estimation." + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "metadata": {}, + "outputs": [], + "source": [ + "# Find and ensemble-average shear\n", + "dudz = avg_tool.mean(avg_tool.dudz(ds_streamwise[\"vel\"]).values)\n", + "dvdz = avg_tool.mean(avg_tool.dvdz(ds_streamwise[\"vel\"]).values)\n", + "dwdz = avg_tool.mean(avg_tool.dwdz(ds_streamwise[\"vel\"]).values)\n", + "\n", + "# Calculate Production\n", + "P = -(upwp_ * dudz + vpwp_ * dvdz + wpwp_ * dwdz)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### 7.8 TKE Balance \n", + "\n", + "We can plot TKE Production and compare it to our dissipation rate calculations to get an understanding of the TKE balance. In a well mixed coastal environment, we expect production and dissipation to be approximately equal. Our production estimates aren't accurate because our stress components aren't aligned with the flow, so if we plot them, we see drastic differences (1x10^-3 $m^2/s^3$ is quite large) profile here." + ] + }, + { + "cell_type": "code", + "execution_count": 35, + "metadata": {}, + "outputs": [ { - "cell_type": "code", - "execution_count": 33, - "metadata": {}, - "outputs": [], - "source": [ - "# Find and ensemble-average shear\n", - "dudz = avg_tool.mean(avg_tool.dudz(ds_streamwise['vel']).values)\n", - "dvdz = avg_tool.mean(avg_tool.dvdz(ds_streamwise['vel']).values)\n", - "dwdz = avg_tool.mean(avg_tool.dwdz(ds_streamwise['vel']).values)\n", - "\n", - "# Calculate Production\n", - "P = -(upwp_*dudz + vpwp_*dvdz + wpwp_*dwdz)" + "data": { + "text/plain": [ + "Text(0.5, 1.0, 'TKE Balance')" ] + }, + "execution_count": 35, + "metadata": {}, + "output_type": "execute_result" }, { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### 7.7 TKE Balance \n", - "\n", - "We can plot TKE Production and compare it to our dissipation rate calculations to get an understanding of the TKE balance. In a well mixed coastal environment, we expect production and dissipation to be approximately equal. Our production estimates aren't accurate because our stress components aren't aligned with the flow, so if we plot them, we see drastic differences (1x10^-3 $m^2/s^3$ is quite large) profile here." + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAloAAAILCAYAAAAwiTK4AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/H5lhTAAAACXBIWXMAAA9hAAAPYQGoP6dpAACduklEQVR4nOzdeVxU1f/48dfMsIqC4K6gApIbaiauqbiglu0puZvbR/OT+U2tTP2Y1ceyRcv0V7aZS5m5lPYptdJCTdM0c8vUNPddXEBAGJg5vz+uc2FkBoFhhKH38/G4D2buPdu9c+fO4ZxzzzUopRRCCCGEEKLIGYu7AEIIIYQQpZVUtIQQQggh3EQqWkIIIYQQbiIVLSGEEEIIN5GKlhBCCCGEm0hFSwghhBDCTaSiJYQQQgjhJlLREkIIIYRwE6loCSGEEEK4iVS0hBAlwuXLl3n77bepW7cuL774YnEXJ18GDBhAYGAg7733XnEXRQhRQklFS3gsg8Hg0jJz5ky2bt16y3DffvutnmfPnj2dhhs0aJAebufOnYwcOZJmzZoVqmxXr17N1zF44okn8kzH19eXKlWq0Lp1a5577jmOHz9exJ+C68xmM//617+oXbs2Y8eO5a+//iruIuVLYmIin332GdeuXWPOnDnFXRwhRAklFS3h0Zo3b87GjRu5evUqmZmZZGZmsm7dOn37wIED9fXXr1/n4MGDjBs3DoPBAECrVq24fv06mzdvJioqSo9XsWJF1qxZQ2pqKvfdd5++fsmSJfz5558EBAQAYDKZGDlyJDt37rT7sW3atClz5szht99+o2PHjvr6t956i5MnT+ZaDh06xLp16+zC5sd7773HpUuXcrWoREZG8sADD9CpUyeUUmzdupU333yTunXr8tZbbxUoD3fz8fFh1qxZ7Ny5U/9cSgqz2czGjRsdbqtYsSL9+/enbNmyjBw58jaXTAjhKbyKuwBCFFZwcDDff/89wcHBdutNJpP+2mAw4OWlneZeXl7ccccdTJ8+nYyMDD2Mn58fbdq0YdiwYYwfPx6A+Ph47rnnnlx5mkwm/P39ycjIoGrVqixfvpy7777baRkNBgPNmjUjISFBL3NoaKjDsHXq1KFNmzaEh4fn8wiA0WgkJCSEkSNHMnPmTL01aN26ddSuXRuAzMxMpk+fzqRJk8jIyNArmmPGjMl3Pu7m7+9PZGQkISEhXLp0qbiLo1uyZAl///037du3d7j9008/vc0lEkJ4GmnREh6rR48euSpZ+TV8+PBc6ypUqODwdU4pKSn06NGD8PBwfv311zwrWTZlypTJd7n8/f3p0aNHvsPnVLlyZYfrvb29mTBhAk888YS+bsKECZw/f75Q+biTv79/cRdBZzabmTZtWnEXQwjh4aSiJTxWzopDQdWvXz9XN13OlrCcr21SUlLo3r07aWlpbNiwgZo1a+Yrr4J2h40dO1bvmiwIR2XOady4cfrrjIwM1qxZU+A83O1W+3A7TZgwgf379xd3MYQQHk4qWsJjNWvWrNBxvby8aNKkSb7DX7lyhbi4OK5cucKGDRuoVq1aofO+lcjISLy9vd2SblBQkP7+zJkzRZ5HafHyyy+XuLFsQgjPJBUtIW7h9OnTtG/fHrPZTEJCgtMuOld99913zJ8/3y1p2/j6+uqvc3a7XrhwgVdffZXatWszf/58lFK8/PLLVK5cmTp16vDrr7/apZOVlcXChQvp2LEjlStXJiAggPr16zNu3DjOnj17y3IsWbKEzp07U6FCBfz9/WndujXfffddrnAff/xxrjsp169fr29fuXJlnttzSk5O5qWXXqJJkyYEBARQtmxZ2rRpk2ucVadOnZgyZYr+/qWXXtLTfvjhh/X1iYmJzJgxg3r16uU5HcXly5d57bXXaNq0KYGBgQQHB9OyZUtmzJhBenq6wzh//vkno0aNIjAwkGPHjgGwZs0a2rdvT9myZYmIiOD//b//5zRPIUQJooQoZRISEhSgAPX444/nO968efP0eFOmTFFKKbVv3z4VFhamWrdura5evVqo8kyZMkVPd968eU7DvfHGG3luv5XY2Fg9n6NHj+bafvLkSX07oPbs2aMuXLigevfurXx8fOzKOGbMGLuwDz74oJ7OhQsXVPv27VWNGjXU//73P5WUlKQOHjyohgwZogAVGBiovvvuO4dlNJvNqkePHsrLy0tNmzZNnT9/Xp05c0ZNnjxZeXt7K29vb7vjb7FY1Pnz59WgQYP0siQkJOjpWSwWdfbsWTVy5EiH22127Nihqlevrh555BH1559/qmvXrqk1a9aoMmXKKED961//0sNmZmaqzMxMVatWLQWoyZMn6+ssFovKzMxUjz/+uAoMDMx1vtzst99+U2FhYapdu3Zq27Zt6tq1a2rL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Y+rUqYWKXyorWvntx83KytLvZshp2rRpdn3VYWFhbiurEEIIUVi3+65Dk8lEgwYNADhz5ozDMOfPnwegSZMmTtOJjo7We6YcpWNLw8fHh/r16wPQuHFjl/MtqA0bNrBixQoWL15c4C5Dm1JZ0cpvPy447sudMGECSUlJ+nLy5En3FFQIIYRwQXHMo2UbDL5v375c2xITE0lKSiIgIECfud2R4OBgfbJTR+kcPnwYgPbt2+uTmeaVb8443bt3z++u5OmPP/5g8uTJrFixwml9Ij9KZUUrv/244Lgv19fXV++vzm+/tRBCCPFPMHToUIxGo8MHSNvmt+zRo4fdOCxHhg8fDpBnOn379tXXxcXFER4ezv79+3NNGnr16lX2799PeHi4PtmpK/766y/+/e9/s3TpUoKDg3Ntz88jhmxKZUUrv/24AQEBt5wlVgghhCipjAZtLqxCL7eYwNORqKgohg8fzt69e3PNWbVgwQL8/f2ZMmWKvi4hIYGWLVsya9Ysu7ADBgygUaNGLF261K53yWw288UXXxAdHU3//v319V5eXkybNg2r1arPKm/z2WefYbVaeeWVVzCZTDiTlZUF4HB8ts1ff/3FkCFD+Oyzz+zGkgFcv36dt956i08//dRp/JuVyopWcfTjCiGEELdbccwMDzB9+nSaNWvGE088weXLl1FKMWvWLL755hsWLlxoN3v7jBkz2LZtG5MmTbJLw9vbm88//5ysrCzGjh1LVlYWaWlpDBkyBKvVyvLly/H29raL06tXL0aMGMHUqVPZs2cPoM00MGnSJMaMGUOfPn2clvno0aNcuHABgK1btzoMs2fPHtq3b8+uXbu46667qFixor4EBwdTtmxZxo0bZ9fSdiseO71DXjp27IiPjw8XLlwgMTEx1x0IRd2PK4QQQvyTBAQEkJCQwOTJk4mJicFoNBIdHc327dv1xg6bPn36sHHjRgYOHJgrnejoaLZs2cLzzz9PVFQU3t7edO3ald27d+d6nqHNnDlziI6Opnfv3mRkZFClShUWLlyY54zttWrV4syZM3qLVv/+/Xn22WdZvXo1d955J6A1znTo0IErV64AznvFWrRoQZ06dW55jGwMytlAphJu0KBBLFiwgHnz5uV6ijfAwIED+fTTT/nyyy959NFH7bY1a9aMXbt2ceDAgVs+yge0RxMEBQWRlJQk47WE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VRkMBjVixAh17NgxPW5GRoZSSqnFixer2rVr6+OaSuL+2M43pbQupypVqth1uVmtVj3+ihUrVIUKFdT58+dv0944NmnSJGUwGNQ999yjr7t5IPmvv/5q1/106tQppVT2sUhLS1O1atVSL7/88m0ufW557Y8zJeV64Eh+Pp8VK1aUyOuBEO4kFa1CuNXF0NZlMXXqVGUwGFSHDh0chktNTVWvvfaaMhgMyt/fX79bKue4i2XLluk/8vv371e9e/fWf0i6du1aJD9+7tqfK1euqP/973+qfPnyymAwqD59+qidO3faxZk7d67y9vZWoaGhau/evS7vizv358KFC0oppWbOnKmqV6+ujEaj6tevX67Bv88//7x6/fXX81WW/HD3+WY2m1XHjh1V7dq1Hd4t+eyzz9rdEeaqwh6Tc+fOqYiICLvu3Jz/mNjSffvtt1X16tWVt7e3euqpp+zSOH/+vN2zKouCu/bHUR4l4XrgTH72Z/HixapChQq39XogRHGTilYBJCUlqVdffVVt3bo1z3C2C9XatWtVSEiIMhgM6n//+59SKveF5/fff1cxMTHKYDComTNn5krjtddeU0uWLFFvvvmmfidYSEiImjt3bonfn48++khdvnxZPfPMM+qrr76yC2e7FTwxMVENHTpUvf/++yV+f2bMmKGU0lpFFi9erMLCwvQfuJkzZ6p9+/apESNGqJYtW6rdu3eX+P15++23lVLaZ/H6668rPz8/VaNGDbVw4UJ19uxZlZSUpIYNG6YaN26stm/fftv2Jy9z585VBoNBNWzYUKWkpCilsiuatr8ZGRnqu+++03/0hw8frjZs2KDMZrMaMmSIGjhwYL4Gnxf3/uRUkq4HeXG2P7bynzhxQj333HO35XogREkhFa18evfdd5W/v78yGAz5nuPlwIEDqnv37spgMKh7771X777I+R9jcnKymjBhgjKZTGrUqFF695NSWgvEPffco6pUqaL/1/rss88WyYDX27E/ti6OnNsdtUAURavP7fp8bHNKKaVVWiZMmKBq1KihatasqWrWrKlGjhxpF8ZT9ufSpUtq5syZqnLlyspgMKjGjRurSpUqqSeeeKLY9seR69evq44dO9p1fzqbTuDAgQPq1VdfVZGRkap58+aqfv366v+3d+fBNd3/H8dfn4QkbpMQuzS2BiVRypSxtvOlSrVUKSaK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ApiWlsZ169YxKCiI9evXZ2BgIAGwRo0atNvtbu+/efNmNmrUiCkpKSTJM2fO8MknnyQAzpgxwyvfAxERb9EWLZEKLiYmBitXrsSrr756z33Dhg3D5s2bra+nTp2K+Ph4nDt3DpcuXULHjh3hdDoxefJkrFy5EidOnEB6ejr++usvREVFITMzE5s2bbKen5mZiSFDhmDu3Lno0qULACAqKgrx8fEAgFmzZuHkyZMeLhYR8R4NWiICAKhVq9Y9t4WEhKBhw4bW13PnzkXnzp0BAKGhoXj33XcBAHa7HUlJSWjQoAGAvOGpT58+AID09HTr+QkJCbh27Rr69u3r9j6tWrUCkHdE5Lp168qwSkTEtyr5egFExD9Urly5wNuDg4OtP4eFhbndFxkZad1ujHG7r2bNmgCArKws67YffvgBJNGmTZt73qdGjRoAgIyMjFIsvYiIf9KgJSKlFhBQ+EZx133Md3Rjeno6qlevjqNHj3p82URE/IF+dSgiXpObm4tLly7Bbrf7elFERLxCg5aIeE29evVAEqtXry7wfpJITk727kKJiHiQBi0R8Zqnn34aADB58mT8+eef99y/YsUKnD9/3tuLJSLiMRq0RCqYKlWqAACys7Pdbs/JyQEA3L592+32/F/n5ua63ed0OgEADofjnvdx7ZuV//lvvfUWHnnkEfz777/o2LEjPv30U5w+fRrHjx+3Tqh69xGJIiIPMw1aIhVMbGwsAGDXrl24efMmPvroIzidTqSkpAAAUlJS3AYn1+0AsHv3brfXcv2a7+TJk/j333+t23Nzc5GamgoASEtLs14vKioKCQkJqFSpEjIyMjBy5Eg89thjePzxxzFt2jQsW7YMoaGhZR8tIuIjutahSAWze/duDB06FHa7HUOHDkX//v3x0ksv4b///rMeExERga1bt+KTTz7BF198YQ1KgYGB6NGjB1avXo2mTZvi4sWL1nOCg4MxYcIEdO3aFQMHDnTb4b1atWpITU1FixYtAOQNXzNnzkRqaiqcTic6deqE2bNno3379t75JoiIeIkGLREREREP0a8ORURERDxEg5aIiIiIh2jQEhEREfEQDVoiIiIiHqJBS0RERMRDNGiJiIiIeIgGLREREREP0aAlIiIi4iEatEREREQ8RIOWiIiIiIdo0BIRERHxEA1aIiIiIh6iQUtERETEQzRoiYiIiHjI/wFpMqGuno0KogAAAABJRU5ErkJggg==", + "text/plain": [ + "
" ] + }, + "metadata": {}, + "output_type": "display_data" }, { - "cell_type": "code", - "execution_count": 34, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "Text(0.5, 1.0, 'TKE Balance')" - ] - }, - "execution_count": 34, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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oYffvXs3/fr1o3HjxnzwwQf6WL3x48fTs2dPjh8/zs2bNzl27Bj/+Mc/WLBgQa77LYQoAZQQpUx8fLwCFKAef/zxQsWbMmWK2rZtm6pUqZJq1KiROnfuXKHLM3fuXD3duXPnOgxz+PBh1bhxYzVlypRC5/P444/r+SQkJOTYPmXKFH1748aNlcViUUopdfLkSbVx40ZlMBgUoGJjY1Xv3r3VmTNn1JNPPql8fX3VpEmT9HQGDBigALVmzRqneRiNRrVq1aoc2ydMmKAANXHixBzbXn31Vbvjn91vv/2mb4uPj88Rd//+/U63JyQkqJCQENWmTRt9n20GDx6sx1u7dq3dttq1azssi1JKpaamqhMnTujHzFGY8+fPq4oVK6o6deqo1NRUu20pKSmqYcOGClAREREqOTlZX6+UUm+++aZerv79+6vnn39eXb58WSml1NGjR1WlSpUUoBo1apQjXyFEySItWkI48NNPP9GpUycuXbpUpOn+3//9H1WrVrVbgoODueuuu9i/f3+R5XP27FmUUgBcvXqVCRMm8MorrwDajQBfffUVRqP29Q8NDaVdu3ZUqlQJgC1btvDf//6X6tWr85///IebN28ydepUAL777jsWLlxIo0aN6NGjR458J06cSFhYGFarlZEjR5Kenq5v27NnD2+99Rbly5e365qzeeqpp5wOhg8ICMh1fwMDA51uGzt2LFeuXGHKlCn6Ptu0bdtWf33+/Plc88jO39+fWrVqERIS4jTM//3f/5GYmMiTTz6Z427KgIAAZsyYAWitpi+//LK+HiAqKkoP27VrV9566y09r4iICPr16wdoXYypqan5LrcQ4s6TipYQDtSpU0ef7+rAgQO0a9eOkydPupzuK6+8wp49e+yWnTt38tlnn+kVnaLw/PPPU7t2bSpWrEjFihV54403iIyMZNKkSezZs4e6devmiGMbv/XEE09QtmxZfX32uyZnzpwJaN2Ojvj4+DBkyBBAq+ytWLFC3/bWW29hsVjo3Lmzw2kcgoODqV69esF3NhenTp1i1apVeHt7283cbzN8+HCWLFnC3Llz9cpLQTibjuL8+fN8+eWXgPNj1bVrV8LDwwFtPJzZbNa3ZR9L56jcti5spRRJSUkFLrcQ4s6RCUuFcCA8PJw333yTrl27cuDAAY4ePUq7du1Yt26dw0pKfjmasLRq1apERkZisViKpDIHsHDhQurUqYPZbOb69euULVsWHx+fXOPYWntsE7ze7saNG3z//feA8zm7wL5isGHDBvr160dmZqY+nURuNxPc3uLkKtus7pUqVXK4/waDgT59+hQ6fWctcP/73//IzMwEcj9WMTExHDt2jOvXr7N7925atWqVa7o2wcHB+uvsrYZCiJJHWrSEcKJatWps3LhRfzTPyZMnad++vT5gvKi1adOmyNP08fGhQoUKeVay8iMhIQGLxQLkXiGqX7++/to2uP3w4cOkpKQABZvA1VVnzpwBtMlH76Tsz6os6LESQpQuUtESIhchISGsW7eOTp06AdrcUzExMezevbvI88prmoDiZqsogTblhTPZZ+u3TSFx9epVfd2d7OqyPdMxMTGR5OTkO5avK8dKCFG6SEVLiDwEBgayZs0aevbsCWg/nB07dmTr1q1uzdfW9VRShIaG6q9/++03p+Fsg/ABIiMjAW2yVJvCDPov7MOmbd12SinWrVuXa1hnD48ujMIcK1e6pIUQJZdUtITIB19fX5YvX67P55SUlES3bt2Ij493S35nz55l5MiRbkm7sGrUqKHPLL9lyxanLUTZ79Ts1asXoI3Lsj3+Jz4+Ps8HR9u6KG2yd31mHzTuiK0VC9DHPAH6XX6O/PHHH6xcuTLXdAuic+fO+mtHE7Ha2I5Vq1at3PI0ACFE8ZOKlih1sv/QZn9dkHi3/9CDNkh83rx5PPnkk4DWPfTAAw/w9ddf55pu9laL/HrhhRd46KGHChSnsPudWzq3e+qppwCtsjN79myHYXbt2gVoM6zbxiD5+vryt7/9DdAGbz/zzDMO49qOVfauN9C62GytWo5mnl+zZo3+Ovt0Bw0bNqR58+aA1mL13nvv5YibkpLC4MGDGThwoN16200B2cuSnp5u93naXt/+Gbdu3Zro6GgAVqxY4XT8le1Y2c4pm4J8foU5v4QQd45UtESpc+HCBYevCxLPWYuLwWDgP//5Dw888AAAaWlpPProo7z++utOfxxv3rypv3ZUgbvdJ598wtdff+1wnqrcXLx4UX9dkP22sZXz9OnTTsOMGjWK1q1bA/Dqq686vEvyww8/xN/fn48++shu/csvv6xPh/D5558zZMgQffxSUlISTz75pJ73Dz/8wK5du9izZw+gTaNgu1vxnXfeYefOnSilOHToEAMHDrTr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", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - }, - { - "data": { - "image/png": "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4ejoKEaPHi02btyoznd3dxfPPfec0Ol0QqvViosXL4qQkBB1+RdffCHS0tLUfJ9++ml1mSRJokaNGsLb21ts2LBBDBgwwKC8TZs2idzcXHH48GHh4eEhAAgXFxfx888/i8zMTHW/HTx4UHh6egoAwtHRUWzbtk1kZ2erZV65ckWEhYUZ7StlHx85csSo/Vqt1uCtDEWnwYMHq28yICIyhQEaUb6kpCSzf1CVacmSJUbp7ty5U2K6devWqevfvHmzxPUBiLVr14r//Oc/BkFJWaZt27aVqt27d+8WL7/8snjggQeKzc/BwUF4enqK0NBQ0aNHDzFv3jwRFxdnNt8VK1aIRo0aCVdXV9G6dWuxefNmIYQQmZmZol27dsLX11e8/vrrIjc3VwghRFRUlNmylSAtKSlJjBkzRgQEBAgfHx8xePBgERMTI4QQ4tdffxX+/v4iMjJSbN++XQghxODBg03m5+/vL4QQon79+iaXF32VVEpKipg+fboIDw8Xzs7OIjg4WLzwwgvi1q1bxW7b7777TnTp0kV4e3sLNzc30bp1a7F06VIGZ0RUIkmIctzcQkRERESVhvegEREREVkZBmhEREREVoYBGhEREZGVYYBGREREZZabm4v58+ejUaNGCA8PR+fOnbF///4y53P37l1MmDABYWFhCA0NxeDBg3Hjxo1i02zevBlt27ZFWFgYmjdvjuXLl5dYTnZ2Nj7//HM0aNAA165dK3H98pRRoar7KQUiIiKyLdnZ2eKJJ54QjRs3FtevXxdCCLFx40bh5OQkNm7cWOp8rl69KurWrSsGDhwoMjMzhVarFVOmTBEBAQHiwoULJtPMmDFDeHp6ir179wohhDh//rwICAgQL730ksn1MzIyxMKFCw2G8FGe/janrGVUBgZoREREVCavvPKKACB+//13g/lDhw4V7u7u4urVqyXmodVqRevWrUVAQIBIT083mB8SEiKaN2+uDsOj2LJliwAgFixYYDB/6dKlAoDYsGGDUTmpqakiNjZWXL58WWg0mhIDtPKUURk4zEYp6PV63L59G15eXpAkqbqrQ0REVkwIgbS0NNSpUwcaTeXdSZSdna2+/swSzs7OcHV1LfX6165dQ0REBB544AH1tW6Kn3/+GX369MHgwYOxfv36YvP55ptvMGLECLzwwgv47LPPDJZNmzYNH3zwAb744gtMnDgRgPy3ODIyEpcvX8bdu3dRq1Ytdf309HT4+voiMDAQ169fV1+9VlTt2rURGxuLmJgYg/cHKyqijApTJWGgjSvtwKKcOHHixImTMt28ebPS/i5lZWUJdzhUSD0DAwNFVlZWqcueP3++ACDGjRtntCwhIUEAEM7OziI+Pr7YfHr16iUAiG+++cZo2ffffy8A+e0qiiNHjggAomHDhibzU94A8+OPP5ots169egIw34NWEWVUlIKX55FZXl5eAICbN2/C29u7mmtDRETWLDU1FSEhIerfjsqQm5uLTOgwEnXhbMHzfrnQY83dW8jNzS11L9r27dsBAGFhYUbL/Pz8ULduXdy6dQsHDx7EM888YzKPzMxM9R28pvJp1qwZAODEiRNITk6Gr69vseUqaU6fPo3o6Gg8/fTTJtcp6SpYRZRRURiglYKyQ729vRmgERFRqVTFLTFukgOcpfIHaA5CAoQcVBbm4uICFxcXk2lOnDgBAAgODja53NfXF7du3cLJkyfNBmjnz59Hdna22Xx8fX0BAEIInD59Go899lipygWAkydPmlxeGlVRRmlxmA0iIqL7XEhICHx8fNQpKirK5HrZ2dlIT08HUBCsFOXj4wMAiI+PN1teXFyc+rupfJQ8CuejpLGk3JJURRmlxR40IiIiG6WRAAcLOuo0ACCMb+Ex13uWkJCg/u7u7m46z/wHI5QesvLkU/jhCiUfJY0l5ZakKsooLQZoRERENspBkuBgwaVUB5TtFh5nZ2f1d2FmEAjlyVI/P79y51P46VQlHyWNJeWWpCrKKC1e4iQiIqJS8fPzU4OYjIwMk+skJycDAGrWrGk2n8DAQPV3U/koeRTOR0ljSbklqYoySosBGhERkY1ykCyfylSegwMaN24MALh9+7bJde7duwcAeOihh8zm07RpU/UhClP5KHk4OzvjwQcfBAA0b97c4nJLUhVllBYDNCIiIhulXOK0ZCqrnj17AoDRILWAfPN8SkoKPDw80KlTJ7N51KhRAw8//LDZfC5fvgwAeOyxx+Dh4VFiuYXT9O7du7RNMVIVZZQWAzQiIiIqtbFjx0Kj0Zh8Mfrhw4cBAP379zf7oIFi/PjxAFBsPsOGDVPndevWDaGhoTh//rzBU6CAfOnx/PnzCA0NRfv27cvWoEKqoozSYoBGRERko6r6EicAREREYPz48Thz5ozReGCrV6+Gm5sbZs+erc6Ljo5Gu3bt8OmnnxqsO2LECDRr1gwbN240eCoyNzcX69evR9OmTTF8+HB1vqOjI6KioqDX67F27VqDvL755hvo9Xq89957xb6CSavVAgB0Op3J5RVRRkVhgEZERGSjquMSJwAsXLgQrVu3xsSJE5GYmAghBJYsWYKffvoJa9asMRiJ/6OPPsLRo0cxa9YsgzycnJzw7bffQqvVYurUqdBqtcjMzMSYMWOg1+uxefNmODk5GaQZPHgwJkyYgHnz5uH06dMAgAMHDmDWrFl49dVXMXToULN1jomJQWxsLADgyJEjZtezpIyKxGE2iIiIqEw8PDwQHR2Nt99+G23atIFGo0HTpk1x7Ngx9UZ7xdChQ7F//36MHDnSKJ+mTZvi8OHDmD59OiIiIuDk5IQePXrg1KlTBi8qL+yLL75A06ZNMWTIEOTk5KB27dpYs2YN+vbta7a+9evXx+3bt9UetOHDh+ONN97Ajh07TN7wX54yKpokzA32QarU1FT4+PggJSWFr3oiIqJiVcXfDKWMGS6hcLXgVU/ZQo+onBj+fbNC7EEjIiKyURU1UC1ZHwZoRERENqq8N/qr6SuuKlTB+JAAERERkZVhDxoREZGNknvQLLnESdaKARoREZGN4iVO+8VLnERERERWhj1oRERENopPcdovBmhEREQ2SmPhJU5eRrNe3DdEREREVoY9aERERDaKlzjtFwM0IiIiG8WnOO0XL3ESERERWRmbDdC2b9+ODh064Ouvvy52vePHj+PJJ59EaGgoGjZsiGnTpiErK6tqKklERFSJlB40SyayTjYXoG3cuBHt2rXDU089hcOHDxe77k8//YQOHTqga9euiImJwZ9//omDBw+ia9euyMjIqKIaExERVQ7lHjRLJrJONhegtWnTBvv370dERESx6928eRPPP/88unTpgqlTpwIAfHx8sGLFChw5cgRvvPFGVVSXiIio0jjAwh606m4AmWVzAVpYWBhcXFzQsmXLYtebM2cO0tLSMHr0aIP5jRo1Qtu2bfHll1/i/PnzlVlVIiIionKxuQBN4erqanZZXl4eNm3aBADo0KGD0fL27dtDCIHly5dXWv2IiIgqm8bCy5saXuK0WjY7zIZUzEF14MABpKamwsXFBXXr1jVa3qxZMwBAdHR0pdWPiIioslk8zAbjM6tlswFa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", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "# Remove estimations below 0\n", - "P = P.where(P>0)\n", - "P.plot(cmap='turbo', ylim=(0,11))\n", - "plt.title('TKE Production') # remove bogus title\n", - "\n", - "\n", - "\n", - "# Plot difference between production and dissipation\n", - "plt.figure()\n", - "(P - ds_avg['dissipation_rate'].values).plot(ylim=(0,11))\n", - "plt.title('TKE Balance')" + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAmgAAAILCAYAAABcj2C9AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/H5lhTAAAACXBIWXMAAA9hAAAPYQGoP6dpAACNhUlEQVR4nO3dd3wT9f8H8Ncl3ZuyoQUKIgUKiIAgq2wQ/bmQKUWWIG4RxYKK8EWLioLgRIagyBAFFRBFKHsqe8sSZHfPJE3y+f1xvaNpkq50JOH1fDzu0eTuM3OXy7s3PicJIQSIiIiIyGloKroBRERERGSJARoRERGRk2GARkRERORkGKARERERORkGaEREREROhgEaERERkZNhgEZERETkZBigERERETkZBmhEREREToYBGhE5DYPBgOXLl6NLly7o2rVrRTeHiKjCMECjO5okSQ5Ns2fPxp49ewpNt3btWrXOJ554wm664cOHq+kOHjyIcePGoVWrViVqW0pKSpE+g++//x7Dhw9H9erV7Zbl5eWFSpUq4e6778YjjzyC2bNnIzExsVTXxSeffIImTZpg8ODB2Lp1K/gUOiK6owmiOxgA0aZNG7Ft2zaRkpIicnJyRE5Ojvjzzz8FAAFADBs2TJ2fnZ0tTp8+LV599VUhSZKYNWuWEEKI7OxssXPnTtGwYUM1X5UqVcRvv/0mMjMzhdlsVus0Go3ixIkTwt/fXwAQWq1WjBs3Thw8eFBkZWVZtdFsNouuXbuq5X788cfi8uXLVtM///wj/vzzTzVtcnJysT6L69evCx8fH7WeVatWiVu3bomcnByRnp4uDh8+LGbMmCGqVq0qAAh/f38xb948Rz5+CzqdThiNRtGkSRMBQERHR5da2URErsajQqJCIidRqVIl/P7776hUqZLFfK1Wq76WJAkeHvJXxcPDA3fffTdmzpwJvV6vpvHx8UH79u0xevRoTJw4EQDQv39/9OnTx6pOrVYLX19f6PV61KhRA6tWrUKHDh3stlGSJLRq1Qrx8fFqm8PCwmymveuuu9C+fXtEREQU8RO4rXr16mjcuDEOHjwIAGjVqhWqVKkCAAgICEDz5s3RvHlzjBgxAt26dcPx48cxZswYSJKE0aNHF7u+/Ly9vQEATZs2xYkTJxwuj4jIlfEUJ93R+vXrZxWcFdWYMWOs5lWuXNnm67wyMjLQr18/REREYO/evQUGZwo/P78it8vX1xf9+vUrcvq8AgMDC01TrVo1LFu2TH3/2muvISMjo0T12aIEakREdzIGaHRHe+aZZ0qct3HjxlYXsuc98pb3tSIjIwN9+/ZFVlYWtm7dijp16hSpLkmSitW28ePHw9/fv1h5ilNPs2bN0LhxYwBASkoKdu7cWey67LH1uRER3Wl4ipPuaK1atSpxXg8PD7Ro0aLI6ZOTk/HAAw8gMzMTW7duRbVq1Upcd2EaNGhQZmUr8h7VS0tLK/P6iIjuJDyCRlQOrly5gs6dO8NgMCA+Pr7MgrMNGzbgm2++KZOy88rIyMCpU6fU940aNbJKI4TA4sWLER0djUqVKsHLywu1atXCI488gj///LPEdSckJODVV19FZGQkfH19ERAQgEaNGuHll1/G9evXrdLrdDosXrwY9913n3qXbHJyMl599VWEhYUhMDAQDz74IC5evGi3TrPZjIULF6p98fHxQePGjTF16lRkZ2fbzffzzz+jb9++qFq1Kry9vVG/fn08//zzuHr1aon7T0R3BgZoRGXsxIkTuP/++xEYGIj4+Hj1wvuycPTo0TIrO6///e9/yMzMBABER0ejefPmVmliYmIwfPhwRERE4MSJE/j333/x9NNP45dffkGvXr2wbt26Ytd78eJF3HPPPfjss88wbdo03LhxAzt37kTlypXxySefoH379mq7AGD69Olo1qwZhg8fjv379wOQ10erVq2wePFiZGVlISMjA+vXr0fv3r1hNBqt6kxISEB0dDQ+/vhjTJ06Ff/99x/2798PrVaLd955Bx07dkR6erpFnpycHMTExGDmzJmYPHkyzp07hx07dqBOnTr47LPP0KJFCxw+fLjY/SeiO0hF30ZK5Izi4+PV4SaeeuqpIudbtGiRmm/KlClix44dolKlSqJr164iPT29xO2ZMmWKWu6iRYtspjl48KCoVauW3eVFER0drdZz7Ngxi2VGo1EcPHhQxMTEqGkiIyPFpUuXrMr59ddf1TQZGRkWyzp06CAAiJ49e9psw1NPPWV3mI1+/foJAOKJJ56wmP/PP/+o9S1dulSdn56eLrKyskRoaKhaZteuXcWmTZvUNK+99pqa94cffrAoV6/Xi3bt2olKlSqJq1evWixbuHChmm/y5MkWy1566SURFRVlNWxKZmamCAsLEwBEo0aN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h4dYs2aNOhq/0WgU99xzj5pXo9GI4OBgUbNmTbF582bRunVri89+586dQqfTibVr16rtDQ0NFXv37hU6nU5dbz///LO6PDg4WOzevVvo9Xq1L/v37xdVqlSxWlcARL169cQ///xj1f/MzEzxwAMP2MwDQEyYMKFY64aI7jwM0IhyJScn2/1BVaYvvvjCKt/u3bsLzffrr78WKz0AsW3bNjF16lTRpUuXIqXPP509e7ZI/f7xxx/Fs88+qz6CyN6k1WpFUFCQaNiwoXjooYfE7Nmz7T6+ymQyibi4OFGvXj3h6+srOnXqJLZs2SKEEOLq1asiMjJSVKtWTXzwwQdqnlGjRtmst3Llymqa//77Tzz++OMiJCREVKlSRTz99NPi1q1bQgghvv32WxEUFCRat24t9uzZI4QQom3btjbLbNWqlRBC2O1rv379LPpz7do19TPy8vIS9evXF2+88YZITk62+7maTCaxYMECcf/99wt/f3/h7+8vOnbsKFatWlWk9UJEdzZJiGJe3EJEREREZYrXoBERERE5GQZoRERERE6GARoRERGRk2GARkRERORkGKARERERORkGaEREREROxqOiG+AKzGYzrl69isDAQEiSVNHNISIiJyaEQHp6OmrVqqU+o7Us6HQ6GAwGh8vx8vLiUy2cEAO0Irh69SrCw8MruhlERORCLl++jLCwsDIpW6fTobJvALJQ+KPfClOjRg1cuHCBQZqTYYBWBIGBgQDkL1tQUFAFt4aIiJxZWloawsPD1d+OsmAwGJAFE4ahNrwcuFrJADOWXL8Cg8HAAM3JMEArAuW0ZlBQEAM0IiIqkvK4JMZX0sJLKnmAphWS/IAzcjq8SYCIiIjIyfAIGhERkYvSSIDWgQN1GoBH0JwUAzQiIiIXpZUkaB04laoFRyZwVjzFSURERORkeASNiIjIRWkdPMWpLb2mUCljgEZEROSieIrTffEUJxEREZGT4RE0IiIiF8VTnO6LARoREZGL4ilO98VTnEREREROhkfQiIiIXJQEx4608PiZ82KARkRE5KJ4itN9MUAjIiJyUbxJwH3xGjQiIiIiJ8MAjYiIyEXJR9AkB6aS120wGDBjxgw0atQIDRo0QHR0NLZt21bscq5fv46xY8eifv36iIiIwMCBA3Hp0qUC86xatQpt2rRB/fr10bx5c8yfP7/QenQ6HT7/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QCMiInJRDNDcF69BIyIiInIyPIJGRETkoviwdPfFAI2IiMhF8RSn++IpTiIiIiInwyNoRERELkoIB4+g8RSn02KARkRE5KKEWTg0lhlPcTovnuIkIiIicjI8gkZEROSi+LB098UAjYiIyEXxLk73xVOcRERERE6GR9CIiIhclNksrB+cXNz85JQYoBEREbkoYTZBmE0O5SfnxACNiIjIRTFAc1+8Bo2IiIjIyfAIGhERkYsSZrODR9DMpdgaKk2S4CAohUpLS0NwcDBSU1MRFBRU0c0hIiInVh6/GUodtQZ8Do2Xb4nLMRuycXXls+X2+yaEwLx58/Dpp58iKysLoaGhmDx5Mh599NFil5WWloZ3330XP/74I8xmMyIjI/HBBx8gKirKbp7Nmzdj6tSpuHTpEry9vTFixAhMmDABWq3Wbh6TyYTly5cjLi4On376Kbp06VJgu0pShy08xUlERERlTgiBmJgYTJs2Dd9//z3OnTuHjz/+GEOGDMHHH39crLKSkpLQoUMH7NmzB/v27cP58+fRo0cPtG3bFjt27LCZ58svv0SfPn3w3HPP4cKFC4iPj8fChQvRv39/mEzWRyGNRiO+/vprNGvWDEOHDsXx48cLbVdx6ygIAzQiIiIXJYRJvVGgRJMov5sEPvnkEyxduhSzZs1Cs2bNAACdOnXCyy+/jNdeew179uwpclkjR47EmTNnsHTpUoSGhgIAxo8fjxYtWmDAgAFISUmxSP/333/j+eefx+jRozFgwAAAQM2aNTF37lysXr0aH330kc16evfujZ07dyIkJKTQNpW0DnsYoBEREbkoh4IzB+8ALY709HRMmzYNwcHBePzxxy2WxcTEwGw24+WXXy5SWTt27MDPP/+MHj16ICwszKqsa9euYcaMGRbzJ06cCJPJhBEjRljM79WrF6pXr4533nkHycnJFss8PDxQp04dVKpUCXfffXeh7SpJHQVhgEZERERlav369UhOTkabNm3g4WF5f2JkZCSCg4Oxd+9eHD16tNCyli5dCgBo37691bJ27doBABYtWqSeUrx+/To2b94MHx8f3HvvvVZ52rZti+zsbHz33Xd26/Tx8SmwTaVRR34M0IiIiFyUqxxBW7duHQCgfv36VsskSVIv7I+Pj3eoLKWcmzdvqteMrV+/HkII1KlTx+aF+srp1oLqliSpwDaVRh35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", + "text/plain": [ + "
" ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "interpreter": { - "hash": "5cfd453a1a1cce2f32ea80f99ff7da863344217116d39185ac62b248c2577445" - }, - "kernelspec": { - "display_name": "Python 3 (ipykernel)", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.9.12" + }, + "metadata": {}, + "output_type": "display_data" } + ], + "source": [ + "# Remove estimations below 0\n", + "P = P.where(P > 0)\n", + "P.plot(cmap=\"turbo\", ylim=(0, 11))\n", + "plt.title(\"TKE Production\") # remove bogus title\n", + "\n", + "\n", + "# Plot difference between production and dissipation\n", + "plt.figure()\n", + "(P - ds_avg[\"dissipation_rate\"].values).plot(ylim=(0, 11))\n", + "plt.title(\"TKE Balance\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "interpreter": { + "hash": "5cfd453a1a1cce2f32ea80f99ff7da863344217116d39185ac62b248c2577445" + }, + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" }, - "nbformat": 4, - "nbformat_minor": 4 + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.13" + } + }, + "nbformat": 4, + "nbformat_minor": 4 } diff --git a/examples/adv_example.ipynb b/examples/adv_example.ipynb index 3773578c4..1fe898ede 100644 --- a/examples/adv_example.ipynb +++ b/examples/adv_example.ipynb @@ -1,915 +1,922 @@ { - "cells": [ - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Reading ADV Data with MHKiT\n", - "\n", - "This example presents a simplified workflow for analyzing Acoustic Doppler Velocimetry (ADV) data using MHKiT. MHKiT incorporates the DOLfYN codebase as a module to handle ADV and Acoustic Doppler Current Profiler (ADCP) data.\n", - "\n", - "A standard ADV data analysis workflow can be segmented into the following steps:\n", - "\n", - "1. **Raw Data Review**: Evaluate the original data by verifying timestamps and assessing the quality of velocity data, specifically looking for any data spikes.\n", - "\n", - "2. **Data Cleaning**: Identify and eliminate any spurious data points. If needed, bad data points can be replaced with interpolated values.\n", - "\n", - "3. **Data Rotation**: Transform the data into the principal flow coordinates, which are the streamwise, cross-stream, and vertical directions.\n", - "\n", - "4. **Data Averaging**: Aggregate the data into bins or ensembles, each of which spans a predefined time length, typically between 5 and 10 minutes.\n", - "\n", - "5. **Statistical Analysis**: Compute turbulence statistics such as turbulence intensity, Turbulent Kinetic Energy (TKE), and Reynolds stresses for the observed flow field.\n", - "\n", - "Start your analysis by importing the necessary tools:" - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "c:\\Users\\mcve343\\Anaconda3\\lib\\site-packages\\xarray\\backends\\cfgrib_.py:29: UserWarning: Failed to load cfgrib - most likely there is a problem accessing the ecCodes library. Try `import cfgrib` to get the full error message\n", - " warnings.warn(\n" - ] - } - ], - "source": [ - "from mhkit import dolfyn\n", - "from mhkit.dolfyn.adv import api" - ] - }, - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Read Raw Instrument Data" - ] - }, - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "DOLfYN currently only carries support for the Nortek Vector ADV. The example loaded here is a short clip of data from a test deployment to show DOLfYN's capabilities.\n", - "\n", - "Start by reading in the raw datafile downloaded from the instrument. The `dolfyn.read` function reads the raw file and dumps the information into an xarray Dataset, which contains three groups of variables:\n", - "\n", - "1. Velocity, amplitude, and correlation of the Doppler velocimetry\n", - "2. Measurements of the instrument's bearing and environment\n", - "3. Orientation matrices DOLfYN uses for rotating through coordinate frames." - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "scrolled": true - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Reading file data/dolfyn/vector_data01.VEC ...\n" - ] - } - ], - "source": [ - "ds = dolfyn.read('data/dolfyn/vector_data01.VEC')" - ] - }, - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "There are two ways to see what's in a Dataset. The first is to simply type the dataset's name to see the standard xarray output. To access a particular variable in a dataset, use dict-style (`ds['vel']`) or attribute-style syntax (`ds.vel`). See the [xarray docs](http://xarray.pydata.org/en/stable/getting-started-guide/quick-overview.html) for more details on how to use the xarray format." - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "
<xarray.Dataset>\n",
-              "Dimensions:              (x1: 3, x2: 3, time: 122912, dir: 3, beam: 3,\n",
-              "                          earth: 3, inst: 3)\n",
-              "Coordinates:\n",
-              "  * x1                   (x1) int32 1 2 3\n",
-              "  * x2                   (x2) int32 1 2 3\n",
-              "  * time                 (time) datetime64[ns] 2012-06-12T12:00:02.968749046 ...\n",
-              "  * dir                  (dir) <U1 'X' 'Y' 'Z'\n",
-              "  * beam                 (beam) int32 1 2 3\n",
-              "  * earth                (earth) <U1 'E' 'N' 'U'\n",
-              "  * inst                 (inst) <U1 'X' 'Y' 'Z'\n",
-              "Data variables: (12/15)\n",
-              "    beam2inst_orientmat  (x1, x2) float64 2.709 -1.34 -1.364 ... -0.3438 -0.3499\n",
-              "    batt                 (time) float32 13.2 13.2 13.2 13.2 ... nan nan nan nan\n",
-              "    c_sound              (time) float32 1.493e+03 1.493e+03 ... nan nan\n",
-              "    heading              (time) float32 5.6 10.5 10.51 10.52 ... nan nan nan nan\n",
-              "    pitch                (time) float32 -31.5 -31.7 -31.69 ... nan nan nan\n",
-              "    roll                 (time) float32 0.4 4.2 4.253 4.306 ... nan nan nan nan\n",
-              "    ...                   ...\n",
-              "    orientation_down     (time) bool True True True True ... True True True True\n",
-              "    vel                  (dir, time) float32 -1.002 -1.008 -0.944 ... nan nan\n",
-              "    amp                  (beam, time) uint8 104 110 111 113 108 ... 0 0 0 0 0\n",
-              "    corr                 (beam, time) uint8 97 91 97 98 90 95 95 ... 0 0 0 0 0 0\n",
-              "    pressure             (time) float64 5.448 5.436 5.484 5.448 ... 0.0 0.0 0.0\n",
-              "    orientmat            (earth, inst, time) float32 0.0832 0.155 ... -0.7065\n",
-              "Attributes: (12/39)\n",
-              "    inst_make:                   Nortek\n",
-              "    inst_model:                  Vector\n",
-              "    inst_type:                   ADV\n",
-              "    rotate_vars:                 ['vel']\n",
-              "    n_beams:                     3\n",
-              "    profile_mode:                continuous\n",
-              "    ...                          ...\n",
-              "    recorder_size_bytes:         4074766336\n",
-              "    vel_range:                   normal\n",
-              "    firmware_version:            3.34\n",
-              "    fs:                          32.0\n",
-              "    coord_sys:                   inst\n",
-              "    has_imu:                     0
" - ], - "text/plain": [ - "\n", - "Dimensions: (x1: 3, x2: 3, time: 122912, dir: 3, beam: 3,\n", - " earth: 3, inst: 3)\n", - "Coordinates:\n", - " * x1 (x1) int32 1 2 3\n", - " * x2 (x2) int32 1 2 3\n", - " * time (time) datetime64[ns] 2012-06-12T12:00:02.968749046 ...\n", - " * dir (dir) : Nortek Vector\n", - " . 1.07 hours (started: Jun 12, 2012 12:00)\n", - " . inst-frame\n", - " . (122912 pings @ 32.0Hz)\n", - " Variables:\n", - " - time ('time',)\n", - " - vel ('dir', 'time')\n", - " - orientmat ('earth', 'inst', 'time')\n", - " - heading ('time',)\n", - " - pitch ('time',)\n", - " - roll ('time',)\n", - " - temp ('time',)\n", - " - pressure ('time',)\n", - " - amp ('beam', 'time')\n", - " - corr ('beam', 'time')\n", - " ... and others (see `.variables`)" - ] - }, - "execution_count": 4, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "ds_dolfyn = ds.velds\n", - "ds_dolfyn" - ] - }, + "cells": [ + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Reading ADV Data with MHKiT\n", + "\n", + "This example presents a simplified workflow for analyzing Acoustic Doppler Velocimetry (ADV) data using MHKiT. MHKiT incorporates the DOLfYN codebase as a module to handle ADV and Acoustic Doppler Current Profiler (ADCP) data.\n", + "\n", + "A standard ADV data analysis workflow can be segmented into the following steps:\n", + "\n", + "1. **Raw Data Review**: Evaluate the original data by verifying timestamps and assessing the quality of velocity data, specifically looking for any data spikes.\n", + "\n", + "2. **Data Cleaning**: Identify and eliminate any spurious data points. If needed, bad data points can be replaced with interpolated values.\n", + "\n", + "3. **Data Rotation**: Transform the data into the principal flow coordinates, which are the streamwise, cross-stream, and vertical directions.\n", + "\n", + "4. **Data Averaging**: Aggregate the data into bins or ensembles, each of which spans a predefined time length, typically between 5 and 10 minutes.\n", + "\n", + "5. **Statistical Analysis**: Compute turbulence statistics such as turbulence intensity, Turbulent Kinetic Energy (TKE), and Reynolds stresses for the observed flow field.\n", + "\n", + "Start your analysis by importing the necessary tools:" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Quality Control" - ] - }, + "name": "stderr", + "output_type": "stream", + "text": [ + "c:\\Users\\mcve343\\Anaconda3\\lib\\site-packages\\xarray\\backends\\cfgrib_.py:29: UserWarning: Failed to load cfgrib - most likely there is a problem accessing the ecCodes library. Try `import cfgrib` to get the full error message\n", + " warnings.warn(\n" + ] + } + ], + "source": [ + "from mhkit import dolfyn\n", + "from mhkit.dolfyn.adv import api" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Read Raw Instrument Data" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "DOLfYN currently only carries support for the Nortek Vector ADV. The example loaded here is a short clip of data from a test deployment to show DOLfYN's capabilities.\n", + "\n", + "Start by reading in the raw datafile downloaded from the instrument. The `dolfyn.read` function reads the raw file and dumps the information into an xarray Dataset, which contains three groups of variables:\n", + "\n", + "1. Velocity, amplitude, and correlation of the Doppler velocimetry\n", + "2. Measurements of the instrument's bearing and environment\n", + "3. Orientation matrices DOLfYN uses for rotating through coordinate frames." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "scrolled": true + }, + "outputs": [ { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "ADV velocity data tends to have spikes due to Doppler noise, and the common way to \"despike\" the data is by using the phase-space algorithm by Goring and Nikora (2002). DOLfYN integrates this function using a 2-step approach: create a logical mask where True corresponds to a spike detection, and then utilize an interpolation function to replace the spikes." - ] - }, + "name": "stdout", + "output_type": "stream", + "text": [ + "Reading file data/dolfyn/vector_data01.VEC ...\n" + ] + } + ], + "source": [ + "ds = dolfyn.read(\"data/dolfyn/vector_data01.VEC\")" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "There are two ways to see what's in a Dataset. The first is to simply type the dataset's name to see the standard xarray output. To access a particular variable in a dataset, use dict-style (`ds['vel']`) or attribute-style syntax (`ds.vel`). See the [xarray docs](http://xarray.pydata.org/en/stable/getting-started-guide/quick-overview.html) for more details on how to use the xarray format." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ { - "cell_type": "code", - "execution_count": 5, - "metadata": { - "scrolled": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Percent of data containing spikes: 0.73%\n" - ] - } + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "
<xarray.Dataset>\n",
+       "Dimensions:              (x1: 3, x2: 3, time: 122912, dir: 3, beam: 3,\n",
+       "                          earth: 3, inst: 3)\n",
+       "Coordinates:\n",
+       "  * x1                   (x1) int32 1 2 3\n",
+       "  * x2                   (x2) int32 1 2 3\n",
+       "  * time                 (time) datetime64[ns] 2012-06-12T12:00:02.968749046 ...\n",
+       "  * dir                  (dir) <U1 'X' 'Y' 'Z'\n",
+       "  * beam                 (beam) int32 1 2 3\n",
+       "  * earth                (earth) <U1 'E' 'N' 'U'\n",
+       "  * inst                 (inst) <U1 'X' 'Y' 'Z'\n",
+       "Data variables: (12/15)\n",
+       "    beam2inst_orientmat  (x1, x2) float64 2.709 -1.34 -1.364 ... -0.3438 -0.3499\n",
+       "    batt                 (time) float32 13.2 13.2 13.2 13.2 ... nan nan nan nan\n",
+       "    c_sound              (time) float32 1.493e+03 1.493e+03 ... nan nan\n",
+       "    heading              (time) float32 5.6 10.5 10.51 10.52 ... nan nan nan nan\n",
+       "    pitch                (time) float32 -31.5 -31.7 -31.69 ... nan nan nan\n",
+       "    roll                 (time) float32 0.4 4.2 4.253 4.306 ... nan nan nan nan\n",
+       "    ...                   ...\n",
+       "    orientation_down     (time) bool True True True True ... True True True True\n",
+       "    vel                  (dir, time) float32 -1.002 -1.008 -0.944 ... nan nan\n",
+       "    amp                  (beam, time) uint8 104 110 111 113 108 ... 0 0 0 0 0\n",
+       "    corr                 (beam, time) uint8 97 91 97 98 90 95 95 ... 0 0 0 0 0 0\n",
+       "    pressure             (time) float64 5.448 5.436 5.484 5.448 ... 0.0 0.0 0.0\n",
+       "    orientmat            (earth, inst, time) float32 0.0832 0.155 ... -0.7065\n",
+       "Attributes: (12/39)\n",
+       "    inst_make:                   Nortek\n",
+       "    inst_model:                  Vector\n",
+       "    inst_type:                   ADV\n",
+       "    rotate_vars:                 ['vel']\n",
+       "    n_beams:                     3\n",
+       "    profile_mode:                continuous\n",
+       "    ...                          ...\n",
+       "    recorder_size_bytes:         4074766336\n",
+       "    vel_range:                   normal\n",
+       "    firmware_version:            3.34\n",
+       "    fs:                          32.0\n",
+       "    coord_sys:                   inst\n",
+       "    has_imu:                     0
" ], - "source": [ - "# Clean the file using the Goring+Nikora method:\n", - "mask = api.clean.GN2002(ds.vel, npt=5000)\n", - "# Replace bad datapoints via cubic spline interpolation\n", - "ds['vel'] = api.clean.clean_fill(ds['vel'], mask, npt=12, method='cubic', maxgap=None)\n", - "\n", - "print('Percent of data containing spikes: {0:.2f}%'.format(100*mask.mean()))\n", - "\n", - "# If interpolation isn't desired:\n", - "ds_nan = ds.copy(deep=True)\n", - "ds_nan.coords['mask'] = (('dir','time'), ~mask)\n", - "ds_nan['vel'] = ds_nan['vel'].where(ds_nan['mask'])" - ] - }, - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Coordinate Rotations" - ] - }, - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Now that the data has been cleaned, the next step is to rotate the velocity data into true East, North, Up (ENU) coordinates.\n", - "\n", - "ADVs use an internal compass or magnetometer to determine magnetic ENU directions. The `set_declination` function takes the user supplied magnetic declination (which can be looked up online for specific coordinates) and adjusts the orientation matrix saved within the dataset.\n", - "\n", - "Instruments save vector data in the coordinate system specified in the deployment configuration file. To make the data useful, it must be rotated through coordinate systems (\"beam\"<->\"inst\"<->\"earth\"<->\"principal\"), done through the `rotate2` function. If the \"earth\" (ENU) coordinate system is specified, DOLfYN will automatically rotate the dataset through the necessary coordinate systems to get there. The `inplace` set as true will alter the input dataset \"in place\", a.k.a. it not create a new dataset." - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": {}, - "outputs": [], - "source": [ - "# First set the magnetic declination\n", - "dolfyn.set_declination(ds, declin=10, inplace=True) # declination points 10 degrees East\n", - "\n", - "# Rotate that data from the instrument to earth frame (ENU):\n", - "dolfyn.rotate2(ds, 'earth', inplace=True)" + "text/plain": [ + "\n", + "Dimensions: (x1: 3, x2: 3, time: 122912, dir: 3, beam: 3,\n", + " earth: 3, inst: 3)\n", + "Coordinates:\n", + " * x1 (x1) int32 1 2 3\n", + " * x2 (x2) int32 1 2 3\n", + " * time (time) datetime64[ns] 2012-06-12T12:00:02.968749046 ...\n", + " * dir (dir) : Nortek Vector\n", + " . 1.07 hours (started: Jun 12, 2012 12:00)\n", + " . inst-frame\n", + " . (122912 pings @ 32.0Hz)\n", + " Variables:\n", + " - time ('time',)\n", + " - vel ('dir', 'time')\n", + " - orientmat ('earth', 'inst', 'time')\n", + " - heading ('time',)\n", + " - pitch ('time',)\n", + " - roll ('time',)\n", + " - temp ('time',)\n", + " - pressure ('time',)\n", + " - amp ('beam', 'time')\n", + " - corr ('beam', 'time')\n", + " ... and others (see `.variables`)" ] - }, + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "ds_dolfyn = ds.velds\n", + "ds_dolfyn" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Quality Control" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "ADV velocity data tends to have spikes due to Doppler noise, and the common way to \"despike\" the data is by using the phase-space algorithm by Goring and Nikora (2002). DOLfYN integrates this function using a 2-step approach: create a logical mask where True corresponds to a spike detection, and then utilize an interpolation function to replace the spikes." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "scrolled": false + }, + "outputs": [ { - "cell_type": "code", - "execution_count": 10, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "Text(0.5, 1.0, 'Streamwise Direction')" - ] - }, - "execution_count": 10, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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Rx99FBkZGRg5cqTdTIstXbp0wTPPPIMNGzbg8OHDAIBJkyZBoVDgwoULVmVJdxUWFmLhwoUICAjAkiVLXDrHTTfdhJdffhkxMTFo37693eMmT56MV155BStXrsQLL7xg9zhHPx8hISEYPHgwvv76a7z22msICgoCoL+z7r///S9at26NLl26OP8FETVTDJSIfNikSZPQunVrTJ06Fd26dYNOp8ORI0fw+uuvIzQ0FIsXLzYe26tXL3z++edYv349OnTogMDAwHrn94SGhuI///kP5s6di8LCQsyaNQvx8fG4du0a/vjjD1y7dg0rV64EoP+lvWbNGnTr1g29e/fGoUOH8Oqrr6J169Ye/5rj4+PRs2dPbN68GWPGjDHOExo/fjwKCwtRWFiIN954o95zHD16FA888ABuvfVWdO7cGUqlEr/++iuOHj2KJ554AoD+lvkXXngBTz/9NC5evIgbbrgBUVFRyM3NxYEDBxASEoLnn3++wfWeO3cO+/btg06nMw6c/PDDD1FaWopPPvnEatyBox566CFs2LABI0eOxJIlS9C7d2/odDpkZmZi8+bNeOSRRzB48GCMGDECc+bMwUsvvYTc3FzcdNNNUKlUSEtLQ3BwMP76178CcO7z8corr2DChAkYM2YMli5dCqVSiXfeeQfHjx/HunXrbGbAiHwVAyUiH/bMM8/g22+/xfLly5GTkwO1Wo2kpCSMHz8eTz75pLFJGgCef/555OTk4J577kFZWRnatWvX4FYZs2fPRtu2bbFs2TLcd999KCsrQ3x8PPr27Yt58+YZj/v3v/+NgIAAvPLKKygvL8d1112Hr7/+2lgW8zRpWKNpH1Lbtm3RuXNnnDt3rt7+JABITExEx44d8c477+Dy5csQBAEdOnTA66+/bgwcAP3IhNTUVPz73//GunXroFarkZiYiIEDB2LhwoUOrVUab6BQKBAREYEuXbpg/vz5uPfee90q6YWEhGDXrl345z//iffeew/p6ekICgpC27ZtMX78eOMcJEA/z+i6667Dhx9+iDVr1iAoKAipqalmoxec+XyMGjUKv/76K/7+979j3rx50Ol06NOnD/73v/9ZNeoT+TpO5iYiIiKyg+MBiIiIiOxgoERERERkBwMlIiIiIjsYKBERERHZwUCJiIiIyA4GSkRERER2cI6SG3Q6HbKzsxEWFsYBa0RE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", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "import matplotlib.pyplot as plt\n", - "%matplotlib inline\n", - "\n", - "plt.figure()\n", - "plt.loglog(ds_binned['freq'], ds_binned['auto_spectra'].sel(S='Sxx').mean(dim='time'))\n", - "plt.xlabel('Frequency [Hz]')\n", - "plt.ylabel('Energy Density $\\mathrm{[m^2/s^s/Hz]}$')\n", - "plt.title('Streamwise Direction')" - ] - }, + "name": "stdout", + "output_type": "stream", + "text": [ + "Percent of data containing spikes: 0.73%\n" + ] + } + ], + "source": [ + "# Clean the file using the Goring+Nikora method:\n", + "mask = api.clean.GN2002(ds.vel, npt=5000)\n", + "# Replace bad datapoints via cubic spline interpolation\n", + "ds[\"vel\"] = api.clean.clean_fill(ds[\"vel\"], mask, npt=12, method=\"cubic\", maxgap=None)\n", + "\n", + "print(\"Percent of data containing spikes: {0:.2f}%\".format(100 * mask.mean()))\n", + "\n", + "# If interpolation isn't desired:\n", + "ds_nan = ds.copy(deep=True)\n", + "ds_nan.coords[\"mask\"] = ((\"dir\", \"time\"), ~mask)\n", + "ds_nan[\"vel\"] = ds_nan[\"vel\"].where(ds_nan[\"mask\"])" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Coordinate Rotations" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Now that the data has been cleaned, the next step is to rotate the velocity data into true East, North, Up (ENU) coordinates.\n", + "\n", + "ADVs use an internal compass or magnetometer to determine magnetic ENU directions. The `set_declination` function takes the user supplied magnetic declination (which can be looked up online for specific coordinates) and adjusts the orientation matrix saved within the dataset.\n", + "\n", + "Instruments save vector data in the coordinate system specified in the deployment configuration file. To make the data useful, it must be rotated through coordinate systems (\"beam\"<->\"inst\"<->\"earth\"<->\"principal\"), done through the `rotate2` function. If the \"earth\" (ENU) coordinate system is specified, DOLfYN will automatically rotate the dataset through the necessary coordinate systems to get there. The `inplace` set as true will alter the input dataset \"in place\", a.k.a. it not create a new dataset." + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [], + "source": [ + "# First set the magnetic declination\n", + "dolfyn.set_declination(\n", + " ds, declin=10, inplace=True\n", + ") # declination points 10 degrees East\n", + "\n", + "# Rotate that data from the instrument to earth frame (ENU):\n", + "dolfyn.rotate2(ds, \"earth\", inplace=True)" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Once in the true ENU frame of reference, we can calculate the principal flow direction for the velocity data and rotate it into the principal frame of reference (streamwise, cross-stream, vertical). Principal flow directions are aligned with and orthogonal to the flow streamlines at the measurement location. \n", + "\n", + "First, the principal flow direction must be calculated through `calc_principal_heading`. As a standard for DOLfYN functions, those that begin with \"calc_*\" require the velocity data for input. This function is different from others in DOLfYN in that it requires place the output in an attribute called \"principal_heading\", as shown below.\n", + "\n", + "Again we use `rotate2` to change coordinate systems." + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [], + "source": [ + "ds.attrs[\"principal_heading\"] = dolfyn.calc_principal_heading(ds[\"vel\"])\n", + "dolfyn.rotate2(ds, \"principal\", inplace=True)" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Averaging Data\n", + "The next step in ADV analysis is to average the velocity data into time bins (ensembles) and calculate turbulence statistics. These averaged values are then used to calculate turbulence statistics. There are two distinct methods for performing this operation, both of which utilize the same variable inputs and produce identical datasets.\n", + "\n", + "1. **Object-Oriented Approach** (standard): Define an 'averaging object', create a dataset binned in time, and calculate basic turbulence statistics. This is accomplished by initiating an object from the ADVBinner class and then feeding that object with our dataset.\n", + "\n", + "2. **Functional Approach** (simple): The same operations can be performed using the functional counterpart of ADVBinner, turbulence_statistics.\n", + "\n", + "Function inputs shown here are the dataset itself: \n", + " - `n_bin`: the number of elements in each bin; \n", + " - `fs`: the ADV's sampling frequency in Hz; \n", + " - `n_fft`: optional, the number of elements per FFT for spectral analysis; \n", + " - `freq_units`: optional, either in Hz or rad/s, of the calculated spectral frequency vector.\n", + "\n", + "All of the variables in the returned dataset have been bin-averaged, where each average is computed using the number of elements specified in `n_bins`. Additional variables in this dataset include the turbulent kinetic energy (TKE) vector (\"ds_binned.tke_vec\"), the Reynold's stresses (\"ds_binned.stress\"), and the power spectral densities (\"ds_binned.psd\"), calculated for each bin." + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "scrolled": true + }, + "outputs": [], + "source": [ + "# Option 1 (standard)\n", + "binner = api.ADVBinner(n_bin=ds.fs * 600, fs=ds.fs, n_fft=1024)\n", + "ds_binned = binner.bin_average(ds)\n", + "\n", + "# Option 2 (simple)\n", + "# ds_binned = api.calc_turbulence(ds, n_bin=ds.fs*600, fs=ds.fs, n_fft=1024, freq_units=\"Hz\")" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The benefit to using `ADVBinner` is that one has access to all of the velocity and turbulence analysis functions that DOLfYN contains. If basic analysis will suffice, the `turbulence_statistics` function is the most convienent. Either option can still utilize DOLfYN's shortcuts.\n", + "\n", + "See the [DOLfYN API](https://dolfyn.readthedocs.io/en/latest/apidoc/dolfyn.binners.html) for the full list of functions and shortcuts. A few examples are shown below.\n", + "\n", + "Some things to know:\n", + "- All functions operate bin-by-bin.\n", + "- Some functions will fail if there are NaN's in the data stream (Notably the PSD functions)\n", + "- \"Shorcuts\", as referred to in DOLfYN, are functions accessible by the xarray accessor `velds`, as shown below. The list of \"shorcuts\" available through `velds` are listed [here](https://dolfyn.readthedocs.io/en/latest/apidoc/dolfyn.shortcuts.html). Some shorcut variables require the raw dataset, some an averaged dataset.\n", + "\n", + "For instance, \n", + "- `bin_variance` calculates the binned-variance of each variable in the raw dataset, the complementary to `bin_average`. Variables returned by this function contain a \"_var\" suffix to their name.\n", + "- `cross_spectral_density` calculates the cross spectral power density between each direction of the supplied DataArray. Note that inputs specified in creating the `ADVBinner` object can be overridden or additionally specified for a particular function call.\n", + "- `velds.I` is the shortcut for turbulence intensity. This particular shortcut requires a dataset created by `bin_average`, because it requires bin-averaged data to calculate.\n" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "scrolled": true + }, + "outputs": [], + "source": [ + "# Calculate the variance of each variable in the dataset and add to the averaged dataset\n", + "ds_binned = binner.bin_variance(ds, out_ds=ds_binned)\n", + "\n", + "# Calculate the power spectral density\n", + "ds_binned[\"auto_spectra\"] = binner.power_spectral_density(ds[\"vel\"], freq_units=\"Hz\")\n", + "# Calculate dissipation rate from isotropic turbulence cascade\n", + "ds_binned[\"dissipation\"] = binner.dissipation_rate_LT83(\n", + " ds_binned[\"auto_spectra\"], ds_binned.velds.U_mag, freq_range=[0.5, 1]\n", + ")\n", + "\n", + "# Calculate the cross power spectral density\n", + "ds_binned[\"cross_spectra\"] = binner.cross_spectral_density(\n", + " ds[\"vel\"], freq_units=\"Hz\", n_fft_coh=512\n", + ")\n", + "\n", + "# Calculated the turbulence intensity (requires a binned dataset)\n", + "ds_binned[\"TI\"] = ds_binned.velds.I" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Plotting can be performed using matplotlib. As an example, the mean spectrum in the streamwise direction is plotted here. This spectrum shows the mean energy density in the flow at a particular flow frequency." + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Saving and Loading DOLfYN datasets\n", - "Datasets can be saved and reloaded using the `save` and `load` functions. Xarray is saved natively in netCDF format, hence the \".nc\" extension.\n", - "\n", - "Note: DOLfYN datasets cannot be saved using xarray's native `ds.to_netcdf`; however, DOLfYN datasets can be opened using `xarray.open_dataset`." + "data": { + "text/plain": [ + "Text(0.5, 1.0, 'Streamwise Direction')" ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" }, { - "cell_type": "code", - "execution_count": 11, - "metadata": {}, - "outputs": [], - "source": [ - "# Uncomment these lines to save and load to your current working directory\n", - "#dolfyn.save(ds, 'your_data.nc')\n", - "#ds_saved = dolfyn.load('your_data.nc')" + "data": { + "image/png": "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Rx99FBkZGRg5cqTdTIstXbp0wTPPPIMNGzbg8OHDAIBJkyZBoVDgwoULVmVJdxUWFmLhwoUICAjAkiVLXDrHTTfdhJdffhkxMTFo37693eMmT56MV155BStXrsQLL7xg9zhHPx8hISEYPHgwvv76a7z22msICgoCoL+z7r///S9at26NLl26OP8FETVTDJSIfNikSZPQunVrTJ06Fd26dYNOp8ORI0fw+uuvIzQ0FIsXLzYe26tXL3z++edYv349OnTogMDAwHrn94SGhuI///kP5s6di8LCQsyaNQvx8fG4du0a/vjjD1y7dg0rV64EoP+lvWbNGnTr1g29e/fGoUOH8Oqrr6J169Ye/5rj4+PRs2dPbN68GWPGjDHOExo/fjwKCwtRWFiIN954o95zHD16FA888ABuvfVWdO7cGUqlEr/++iuOHj2KJ554AoD+lvkXXngBTz/9NC5evIgbbrgBUVFRyM3NxYEDBxASEoLnn3++wfWeO3cO+/btg06nMw6c/PDDD1FaWopPPvnEatyBox566CFs2LABI0eOxJIlS9C7d2/odDpkZmZi8+bNeOSRRzB48GCMGDECc+bMwUsvvYTc3FzcdNNNUKlUSEtLQ3BwMP76178CcO7z8corr2DChAkYM2YMli5dCqVSiXfeeQfHjx/HunXrbGbAiHwVAyUiH/bMM8/g22+/xfLly5GTkwO1Wo2kpCSMHz8eTz75pLFJGgCef/555OTk4J577kFZWRnatWvX4FYZs2fPRtu2bbFs2TLcd999KCsrQ3x8PPr27Yt58+YZj/v3v/+NgIAAvPLKKygvL8d1112Hr7/+2lgW8zRpWKNpH1Lbtm3RuXNnnDt3rt7+JABITExEx44d8c477+Dy5csQBAEdOnTA66+/bgwcAP3IhNTUVPz73//GunXroFarkZiYiIEDB2LhwoUOrVUab6BQKBAREYEuXbpg/vz5uPfee90q6YWEhGDXrl345z//iffeew/p6ekICgpC27ZtMX78eOMcJEA/z+i6667Dhx9+iDVr1iAoKAipqalmoxec+XyMGjUKv/76K/7+979j3rx50Ol06NOnD/73v/9ZNeoT+TpO5iYiIiKyg+MBiIiIiOxgoERERERkBwMlIiIiIjsYKBERERHZwUCJiIiIyA4GSkRERER2cI6SG3Q6HbKzsxEWFsYBa0RE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", + "text/plain": [ + "
" ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3.9.12 ('base')", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.9.15" - }, - "vscode": { - "interpreter": { - "hash": "357206ab7e4935423e95e994af80e27e7e6c0672abcebb9d86ab743298213348" - } - } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "\n", + "%matplotlib inline\n", + "\n", + "plt.figure()\n", + "plt.loglog(ds_binned[\"freq\"], ds_binned[\"auto_spectra\"].sel(S=\"Sxx\").mean(dim=\"time\"))\n", + "plt.xlabel(\"Frequency [Hz]\")\n", + "plt.ylabel(\"Energy Density $\\mathrm{[m^2/s^s/Hz]}$\")\n", + "plt.title(\"Streamwise Direction\")" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Saving and Loading DOLfYN datasets\n", + "Datasets can be saved and reloaded using the `save` and `load` functions. Xarray is saved natively in netCDF format, hence the \".nc\" extension.\n", + "\n", + "Note: DOLfYN datasets cannot be saved using xarray's native `ds.to_netcdf`; however, DOLfYN datasets can be opened using `xarray.open_dataset`." + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [], + "source": [ + "# Uncomment these lines to save and load to your current working directory\n", + "# dolfyn.save(ds, 'your_data.nc')\n", + "# ds_saved = dolfyn.load('your_data.nc')" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3.9.12 ('base')", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.15" }, - "nbformat": 4, - "nbformat_minor": 4 + "vscode": { + "interpreter": { + "hash": "357206ab7e4935423e95e994af80e27e7e6c0672abcebb9d86ab743298213348" + } + } + }, + "nbformat": 4, + "nbformat_minor": 4 } diff --git a/examples/cdip_example.ipynb b/examples/cdip_example.ipynb index f435d6b76..df2cee51c 100644 --- a/examples/cdip_example.ipynb +++ b/examples/cdip_example.ipynb @@ -51,16 +51,21 @@ "source": [ "from mhkit.wave.io import cdip\n", "import matplotlib.pyplot as plt\n", - "station_number = '100'\n", - "start_date = '2020-04-01'\n", - "end_date= '2020-04-30'\n", - "parameters =['waveHs', 'waveTp', 'waveMeanDirection']\n", "\n", - "data = cdip.request_parse_workflow(station_number=station_number, parameters=parameters, \n", - " start_date=start_date, end_date=end_date)\n", + "station_number = \"100\"\n", + "start_date = \"2020-04-01\"\n", + "end_date = \"2020-04-30\"\n", + "parameters = [\"waveHs\", \"waveTp\", \"waveMeanDirection\"]\n", "\n", - "print('\\n')\n", - "print(f'Returned data: {data.keys()} \\n')\n" + "data = cdip.request_parse_workflow(\n", + " station_number=station_number,\n", + " parameters=parameters,\n", + " start_date=start_date,\n", + " end_date=end_date,\n", + ")\n", + "\n", + "print(\"\\n\")\n", + "print(f\"Returned data: {data.keys()} \\n\")" ] }, { @@ -82,8 +87,8 @@ "metadata": {}, "outputs": [], "source": [ - "station_number='100'\n", - "data_type='historic'\n", + "station_number = \"100\"\n", + "data_type = \"historic\"\n", "nc = cdip.request_netCDF(station_number, data_type)" ] }, @@ -113,7 +118,7 @@ "source": [ "buoy_data = cdip.get_netcdf_variables(nc)\n", "\n", - "print(f'Returned data: {buoy_data.keys()} \\n')" + "print(f\"Returned data: {buoy_data.keys()} \\n\")" ] }, { @@ -405,7 +410,7 @@ } ], "source": [ - "buoy_data['metadata'].keys()" + "buoy_data[\"metadata\"].keys()" ] }, { @@ -447,7 +452,7 @@ } ], "source": [ - "buoy_data['metadata']['meta']\n" + "buoy_data[\"metadata\"][\"meta\"]" ] }, { @@ -481,7 +486,7 @@ } ], "source": [ - "Hs_2011_data = buoy_data[\"data\"][\"wave\"][\"waveHs\"]['2011']\n", + "Hs_2011_data = buoy_data[\"data\"][\"wave\"][\"waveHs\"][\"2011\"]\n", "buoy_name = buoy_data[\"data\"][\"wave\"].name\n", "ax = graphics.plot_boxplot(Hs_2011_data, buoy_title=buoy_name)" ] @@ -514,12 +519,12 @@ } ], "source": [ - "wave_data_May_2011= buoy_data['data']['wave']['2011-05']\n", - "Hs = wave_data_May_2011['waveHs']\n", - "Tp = wave_data_May_2011['waveTp']\n", - "Dp = wave_data_May_2011['waveDp']\n", + "wave_data_May_2011 = buoy_data[\"data\"][\"wave\"][\"2011-05\"]\n", + "Hs = wave_data_May_2011[\"waveHs\"]\n", + "Tp = wave_data_May_2011[\"waveTp\"]\n", + "Dp = wave_data_May_2011[\"waveDp\"]\n", "\n", - "ax = graphics.plot_compendium(Hs, Tp, Dp, buoy_name )" + "ax = graphics.plot_compendium(Hs, Tp, Dp, buoy_name)" ] }, { @@ -555,7 +560,9 @@ } ], "source": [ - "buoy_data = cdip.get_netcdf_variables(nc, start_date='2011-01-01', end_date='2011-12-31', parameters='waveHs')\n", + "buoy_data = cdip.get_netcdf_variables(\n", + " nc, start_date=\"2011-01-01\", end_date=\"2011-12-31\", parameters=\"waveHs\"\n", + ")\n", "buoy_name = buoy_data[\"data\"][\"wave\"].name\n", "ax = graphics.plot_boxplot(buoy_data[\"data\"][\"wave\"][\"waveHs\"], buoy_title=buoy_name)" ] @@ -566,7 +573,9 @@ "source": [ "## 4.b. `request_parse_workflow`\n", "\n", - "In the previous example we requested the NetCDF file and then processed the data. This workflow has been codified into a single function to streamline the process and adds additional functionality as well. The `request_parse_workflow` function accepts a netCDF object or a station number. This means the user may pass a CDIP ndetCDF file loaded from file, pull the data with `request_netcdf` and then pass, or just pass a station number letting the function know what data to parse and return. Secondly, the `request_parse_workflow` function accepts parameters allowing the user to specify to only return specific parameters reducing processing requirements. This is especially useful for processing 2D data which is only processed is specifically requested due to the amount of time it takes to process all the 2D data. Next, `request_parse_workflow` will slice on time by years, start_date, or end date. Years can be a single integer or a list of integers and is not required to be consecutive. If specified the start date will remove any data prior to the specified string (e.g. '2011-01-01') and end_date will remove any data after the speficied date. start_date and end_date may be used together, seperatly or not at all. Years works indpendently of start and end date. Next, the data_type defaults to historic but specifying this as realtime will return realtime data from the buoy. Lastly, there is a the boolean `all_2D_variables`. If set to true the function will return all of the wave 2D variables. It is not reccomended to do this due to the computational expense to do so, Instead it is reccomended to specify 2D quantities of interest using the `parameters` keyword.\n", + "In the previous example we requested the NetCDF file and then processed the data. This workflow has been codified into a single function to streamline the process and adds additional functionality as well. The `request_parse_workflow` function accepts a netCDF object or a station number. This means the user may pass a CDIP netCDF file loaded from file, pull the data with `request_netcdf` and then pass, or just pass a station number letting the function know what data to parse and return. Secondly, the `request_parse_workflow` function accepts parameters allowing the user to specify to only return specific parameters reducing processing requirements. This is especially useful for processing 2D data which is only processed is specifically requested due to the amount of time it takes to process all the 2D data. A print statement indicates whether the function is currently still processing 2D variables. Use the `silent=True` keyword argument to turn off this print statement in production environments.\n", + "\n", + "Next, `request_parse_workflow` will slice on time by years, start_date, or end date. Years can be a single integer or a list of integers and is not required to be consecutive. If specified the start date will remove any data prior to the specified string (e.g. '2011-01-01') and end_date will remove any data after the speficied date. start_date and end_date may be used together, seperatly or not at all. Years works indpendently of start and end date. Next, the data_type defaults to historic but specifying this as realtime will return realtime data from the buoy. Lastly, there is a the boolean `all_2D_variables`. If set to true the function will return all of the wave 2D variables. It is not recommended to do this due to the computational expense to do so, Instead it is recommended to specify 2D quantities of interest using the `parameters` keyword.\n", "\n", "For an example we will create a compendium of HS for the year 2011 from the nc file requested earlier. In this case we can use the years parameter instead of start and end dates.\n" ] @@ -590,13 +599,15 @@ } ], "source": [ - "buoy_data = cdip.request_parse_workflow(station_number='100', years=2011, parameters=['waveHs', 'waveTp', 'waveDp'])\n", + "buoy_data = cdip.request_parse_workflow(\n", + " station_number=\"100\", years=2011, parameters=[\"waveHs\", \"waveTp\", \"waveDp\"]\n", + ")\n", "\n", - "Hs = buoy_data['data']['wave']['waveHs']\n", - "Tp = buoy_data['data']['wave']['waveTp']\n", - "Dp = buoy_data['data']['wave']['waveDp']\n", + "Hs = buoy_data[\"data\"][\"wave\"][\"waveHs\"]\n", + "Tp = buoy_data[\"data\"][\"wave\"][\"waveTp\"]\n", + "Dp = buoy_data[\"data\"][\"wave\"][\"waveDp\"]\n", "buoy_name = buoy_data[\"data\"][\"wave\"].name\n", - "ax = graphics.plot_compendium(Hs, Tp, Dp, buoy_name )" + "ax = graphics.plot_compendium(Hs, Tp, Dp, buoy_name)" ] }, { diff --git a/examples/data/dolfyn/RDI_7f79_2.000 b/examples/data/dolfyn/RDI_7f79_2.000 new file mode 100644 index 0000000000000000000000000000000000000000..f1d773c2a0297a9d0828a20ad3dfbb71acec679d GIT binary patch literal 100328 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�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 3vJ+}(H9WDG=*0OiP%i=Tr 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 BR^9*r literal 0 HcmV?d00001 diff --git a/examples/data/dolfyn/dual_profile.ad2cp b/examples/data/dolfyn/dual_profile.ad2cp new file mode 100644 index 0000000000000000000000000000000000000000..7839b328546c1e71f2ea1f6a3629abac97f57047 GIT binary patch literal 306869 zcmdqK33yahw)cHN5M&aWML{4;Vu+asHO5R3gpj1FQd6cHPLirhWgv4x5;6c`2FJGh zdb_>a+F}pdcHeGIVV8E>w)21!IHIEBgs3Pe!})&eR3HiZe)m4_^M3bvzPB(*)v0s# z*=Oy&{_DSny}f(P9TP8}S$uESO%s=An$lP0q^~rZ4B@5~*_p}nq9dcDmqsQojf$TW z6@OK9;#Dz;^Tv-^krB=*$@7ff@+xP2Lv3kXWaPYX`YlIN{h8Z$3^#cETgVOeTAx5-)>J1;zSb?T~|<;nAw zFO8zH%+MDA*I@OdJp2_os=dMa! zog5pTm=qblB4br1PpBV?N{;S762&3?LOC-kJbOi|d3kb7JhzlLQ9QH!jSM$u@GILa z4H#3CW9U|RTE4+(lA|j^@ARuO`af`*S?^!?ven3Bc}eD~oRaA12&WqDu0cLIT)51T znWsPKYNLsULj5-{j|yL%j=aOujrs$Jr*Z3uxXAEyTk^cj)%o*y0%1s&;DC4aJ`7@LTw#27{;DmwI#JVjJY^3t=1W6vIr zjv9CyJ#a>J%)sH;v(3fG$#HSWI6G#b%dq%DJHvVh7rdm2>5&{wQgt zC?0I}^2~mzF)C3ay@7FHe4=F*CNGUfF8W2LY`ILIu*-4~60?Ju$2dkZfT58LUzU?? zl3_eE3;G48-|zndx#e06A!UtEj7W&>*R5DY7p*H|bX-JCbie9GM#RL0P6!Q+oFMNw zYRVCOicgA&Ow#3(otYhKH8LVPmZ=`n*of%J7`;{GACqvl)yT;HGx|sTOuKSC)UdP? ztv8%&$V^{hT#>U{PRhzL*yaAwp&RHQ6Cz@Gip!> zSYb4+SOpk|n{velWvAw*tyq1=(&?ZX{(lE%o`K9bR8tJue+`+|Wof4WJ04yzN%SKo zDMWrS`||i`bja?9AYU~5tmQW%AuK8OL6??p_RsQw!S+97`TGsM*&qxGyRKV&CKm)H zJTpB@sK{C4K8OQE#YDsokbpSAGBP~Nz{y!O6f#_lg5LfA-_OD`j3)Frx+M-#nvf8L z(}V=@|H5hFqT>c}8V~@6)Nj>IjA^(jk6%NSJQ|6bav4k=t@DkU*ub1+%OIH%QL*6} zndv&wL*T;PvTX7TL!+Mz4w%Bz49Q7CRbju;Sf5py8Oif1#+NvwOU!WqU`b>|{G1$j{hT>5bD|@$n{$k%wO*%xbwj1Av=%6h zjEswoix01FsVPm);W4vuZZOP@oGILBOpb&9qD|77#PDTcZCqkfOiX-iLQK34y>Us= z2{Ey8QE}1XW(H{BBc2KBmcDHHDiByVxiWlNnSeG#1cB#ft-zA=<}8JWS2O%+2Eq9( zi*ARb!tJYbvKdVMOdJWhq#_zxCdCY&a@z@_V{$F=I z_P^OSWKI{j-r4__yyO1YEw9MV9Xyn|ks*kUj4Zu^d6|2L;>$+{_l!%>|M3jf@Betl zH3)q)4Y@Wnx zqw=HD<^jgWbkMZ1wANYftty|BU9FbR3pd$v@tenw`O(#@Ezv7YmIT0M(A8-TwRQD# zmU$aX=cJW7E9=f&PsHU%4OlZ*WhWU-D~H_P;^fjncP51LqYE>$ESAjt$iyLcUg74t zQfD2pp32gy`ZG5Met&fRvZOS-W%Ww?kQ+zEFHf6eD0NrYs-?AOuI9Nh6=F0beDgnN zF}SHIGjvnNBoePEF##t^4#SqEFS$?}!8k+z-|W=o63Y>$!(si@)b#XKdeq5!1_~lG zMfuYrld<-W=aR4_j=1eFmGSo;a z*F;4m5o3yxGvdNixkQgzL?B;A%iK^J&fdFc<9$|dm;35hWYNzw*Ah_*oolM!AOdTNlZx4XK}($k6%(mY+@|L zieC4RUqVD;d}K_#jHt}>pBO)a9Y#Ion{7fZ4Tj8R%x2UpAu35`N2wTPLt3Ov&*<2= zn3$;OxX4nOQie2GW;EnDIwm0j<&vW`kQUALgepYi;$!4sEC*wdXk1c4e0)Mue3BeY z3^zr}<-!4@6Z-E2L6SIQLTqFLKcTzB%84P;WL!dYWMTrbXuU~O47Z7lW0aEO6B9!% zu7Gl9NAbW>36M`PNPo8UoXlm*^cl(xlX$eqIK3IUhB$!SP&yDBdfdC&Y;$LRafC z-&kf9Gc6kHq%}A zROC1wiSDiF7snHekod6vAt^yV2o+39jEWBljk}*wdAYmpwPQlWH`1>Gug~5+QoNr2 zAaz_UzEJ<&5zv{tM@1$`K$;mYT>*T~-kop6dy)yw7yTAYJa?I5=~=0fI;`?eCPx&Z zQVIDph|?3!QxzWTgXUrtQDahS69{PRbjH|)6!A`+dNYqO$EZa=BL zsx6vv=)7npb<{)3lwnJ>CC47sc4;*!Cnk+lb}FZot1pdKcy$g}p1t-jyt!IAtlg%4 zp*^l$s;pF|D<5b_v}d({Y8NZdYe%&^wF@}*bAIBLE0i$hJ55n$C~s?%l{n>TEnN8v zpT{ewI5SqcNZF$8*xtKgeS2%?+UABe)m3XM{l3zQy2|RRLW|jKv*epfod34l>&!K) zd8)m{r8@XeRn=m($W8Nnl4UkKdwU`EPBJ|D>5 z9_YL-t?$6c-v_3gUYDZ8?*E(q7>f03<(2Z_h|O6k2O>VacJT*S{O#^BQzyw7Ov&0H??uf_u9X-KJ88IdgTZ0d+iG3pP`7vlQB`t-!9o42Pk7&nu+NH`RN+Lg_c;X}49_=dbF;cm8OZWQj_O`~>hWa|M z*I!ZYR?GdR6+WxQZZqc_>_x7+bv{qQwv8J$cD1#(H8wXl*OdBvT=4TV%4mw z`ApCfM}b=4w5T@KVqkiz#cs8L?{jTMGGz-mkux3nDjircP0gFF8jY%cUV-Xz%PDTv z=`yQ@sw-D5aX2}WH`8bdi_Wn*3plSxEh;Hei;LurG*v>=PPeN3@F)hA)W$A6O%+-7+x(7HP##c(Jr z=xNy&a2(FGOFWAy=Spmt@|Ct2seOS?e#^g4(V^G0ziDwwCpw&rHq8ecM2Z<8%nzXL#pvE? z^mv$Z0?ePStOh4u)Sdu+T;Rmtw2PE<{yv4YPiSvxC(-W-%3E44NFIYuUyRfr;ryfM z_D9-7+7d?OYkKe+Eu|}e(yC}()fOlQCvNL&uqr=Kf#Qr zHNgmJF`!LD<8v9+W8l(XK)oZ{%bKP=u6zOl9nvmfG#$!*digd8H(Hsayup!4%5&Q5 z+Lc^&T-(pH9is0U%%ZD6v8BpiwfD8@$}6<;opu7r+zpC#^4*JI?Gf$9?Hkv1w>LF* zG&IzE{Z$pEWo2cRo(i8m-(t0x%yx&fw!N~naBENR=B|#Gw)*DQ_Qo>5SM`>aR;Yfj zDIZKRnhFI|)>;jlJKMXrwKX)ZYp$;XQ~bUP)kSfI-&$w}RC4U)+wZ&Ywo2pHOaE~l59mRT(VDh5kw_pg8ZGr!TT78Nu5id3M%!X$Ku{;0NMr&A`T z3a;c8yO^?I4|u{6i%sP_2lh}^SE>a?s$Eqx=c>7vIUJ^9IfJh(YC#F7b3uW8Z30|u zG`BL$Xr33hQgB9YWdW1y1-dPjj|C3>k|M_nFlBy%efPq#X)$2R(af=Fd%={XKM!Dv zSY6ZaGlJJ`c_A?3{(h^wdV4@wjn)0A-|9x5!IY5IJ%cG|$s-}2vTM|^{X;P2ybz|8 zqaoAUPhf=xc*^u)3$)9@lum8eSxgyhbsu6jENAXt0N41ISuh-Jc#RpMF}ucKYvnZu z`}c%442yM%5&;5DU_OpPb53ZNV6#r}%>?Bnh_qh|f-XC6+}yKyLt|TOb7PIaqM^p` zQ~hFFhPces>7k0UGkyOaQNHB!UhX}OQ8=oN z0*7XSBa6`f80^5cN-BN)8XXTZitoZY6O;pJ`dG$!9B6d_#CQ^B@eAh2N1(-@wIF=- z5@pQk$4eD`iUA?QlgY=5%%^GDHcRRw_-*Mz^ z&{hLuKLL01m_c)~N`KULZQHoEr@N(bZGA(N*H_^yb2!VY%6(o-zOBGw$}My_>pT3V zwk;bsZ|d%9UE9#q($-k&_mq3pQh%A>1EN^+&87nP_IvMcwdQQ@>E5tqZCy)iL&F-M z&+qrTie0|4>PlN7z+=oSEZqvG_)S|jt=qI=T|;|AQ|%g$&tKswb$Tjk)efkbECzdN z7d*wEZ&%%BIDsY^k+KH3%nBb5H>|5x1r___{Rf1c0&~ zM%T<($46I>O-lw-Hi9W{E^YaI>4O89vgeVo;C;_#1aB|e8&IFmNO@;ZSaANsn*(>` zm-gNK?Dv65q9KK%AtTTbc*@h~GI`-CFWsD0HUv{fgfK;{?j`5&lo@Eq(qs3+Q#;RM z%3!PeFf(}~mhhBT%-`3w(Xi^@iL z)sinVbg9{@-JxEuh5!b-=q^U=B^)+Ben(ia@uQ63CePkLQ(i{nd}!BFB^FtXg@YW`b|IgWuEaXM*^Ep?1%{{+`@r=j!`73Di75aM{c(IU? z7|EDS03{}XWFzpcMsVHdw6c&p2D!&Kcu0Swwq(B~!muLEG{Hm)86 z3u)si#wmY0Vbt#8%ulp*xYm5Q*Y9}R*BI^n*pm79NHgI|Q@Gb0Fz7O_*b9a{1wQ@& z+8*P%PH^`^P;|UfrreDcx>DJ(dCOXON>f`y-5O7Yx1!ALQa$)S7JMIz(PS?!sa;o5 zYTveDf4)}8)|%>ib_wZ%U9*BDg#sUP5CCf zr|Z}E{jAbxD8?H{mHBbnMZ3j&5dz`{1FRT3n-SG_u6C);B3OwyMT*V>c zwR)*)npET{$}MCH7lTtJs$2XUIU7!5RSS#lxLAfuP4WlTf29!KY=D(jRgWOG=Hge@r8c_LrRdtgKy z7XAwShA~L-d)R?!;{s4c+Bk}ad+`y)GZj^D^%HvVGKlg#v!fn9)W+_*GW&Sd6 zMM0j`ZZ_uIii>NzD$5JEt?ypf(b3f2)ZEmv##8C>c-?M)h1ZL#l5b`fxwh}Vr_G-C zi(MNwY-(v)+u2Z8Q(o%#mwQW9zo*h`w;90-gVhbD{H(&f?Z)-%db=80o150u;`3Bj zmN_dbODoE4W+SX8ub>P}xwXQ;RLqpwD5{N<;>7!Qt5%0<&2vbo!&Q`TR9CAGs5EAf z@Cs*|VAuc&XS;=uaACe`xI#70Bsy}n4od|@SR6%s$5n-V>nL_{HpC_UVykUZbpG`~ zm0D2D)vy$r7GDY^auy3yaT?Uz5}SQ-ym=d9{N`M(Z3)Wi193KNBoYdl##n`HN;ws1Z^c1Z6WoF=KSl@BXMPcW! zVK3)lfiKbHfQPV7f+@$DT?g^nxA(5!xV5!$ZAW`co!?he<*O>Ks;jA~7M=pbwU&A$ zMw^EW@hSmw`3rg%fb{Y~2nv`Dyp*U}YTg?w!h**aX9lOd`9k2HC7CIwv%-RhHf{>s z;V%05_$q82uE^zk=H_wA4R7w!}%G<)%!Sqy7DTlaZnnm+ z&pGFxpx``WW8Z=ik8u1M#`$r)mmjbb@1FiG-t2ttFpZwNBD*UlT>S z222USX(eX!ww49Ley;tDyM9jpR`HaN=n-5K*X+kTdQaO(tnKEGuC|t@)`r?O6<%MZ z+wFAwO8phKe2d*`G}w!swH=k^*6qE$8#Z({bu=}=Rfwl};VG3KFELu2A5(szx^wqE z?e@GoZ`stlzN4MUUBeo0c{NUri_@w-R;!6niNRLhk15+XcK3ERwKmq(t*I*W5zBR! z`^tP}1>BX>3W%q`Q*zMt>wyKJ1V5a~$D4d{URKFRJCwz4lC%ObAA%h=wGidE*g4N# zU{Q;TzyzjkiA^UA)J4|PyxNZU{@>@)&%R*3=_S`F`lvpl{u;ckyK`P-v z#B&5w+-fNNLI=Q=RmB!{Nva_$d~8}An34jfymC&A_5d34v+&H|s*j%!q(@|?{D6jB zdL=R1smuB^c@;-aG)rVvOzF=OzqWzs1?Of)_0od>(%((sdOb_6@e+G}91(xj9 zE?1t_?d3RTzs$oonDrx>=_i=uE3sUMwCx)<_HM$+bak}W`pawm71d?F8h@qV25q%k zjQK8jil;1}(Q>MGkVRe=b+tpyEf&Ntv^xk~F@_9Rs#;{dIxP6>gv{XayY~hPlQL7b zT@@D0J+VH}`A$dQ=!=d8E)h&QDiV`;is5SIo)8Kz{@}O$5)({$v}Sh35KI|05Tjji zPCR7_5?hMz6N*5EFy*Yoh^L6eV&Ei4(CH}NPX&D^fhBii#Ygk`@95`+AV5Bn3Dd_qqBf(HZF-N#@f6=<5l(|90hrWOT;uUd0M?~ecxrssLX*j4B=56H@;;^=TRPTlCF0v$ zS6k<0E>@M6cq-Hil_X@oxJad)@Dx9;kHj{370W!t*h%h(2#5q@LlIe%nyb4qdN8EQc37h74w+lmCFNyo<&uc#0>9D%tRGG_-gLd7Y_n zi-W`Cu!y+j;qI68Y6t(H8!#8$B;#2#X?`eV7n=bYcC^NvNJ z&^TK8j11EaS_ATa77z78j$TL<=OOLD>G!$I1^6K+xzkB3!oOfYi;3@EPBbJNuk3Lm zunTD6OYJX=@>VRzIB;VaJVjXOG}wpalbrPIpIXxC7d0RDW-e{N0OHI5EkA;t#DEZC zct5kTDX+jt7K1D!xzv-wx0a3 z7ZfP1DD{v_wia4V#sa5vO?#EszH?*m=HAYRwH=N19ZlX!uSa!ysw`KsVa0qFJAoIY(XMX3kKn6$=hk&?+dEr3TI%X+ zE6ct7I4b<5UUz;zoX2b^C|h^e?pys5OA+{hTZpwYJ0;F19*IE!gjuN;m^lI7ATQh$ z5P)mI9r1$nL^3{1k(#}PJaLg=ip!#sZ6GpIQYfbtnkD9vt=gO}8oYLjspR4WGbx@l zHCh_bp@;Kmwm>Z+heVX7Sj{o7ES{OU;?V_T(~`iH7y9EVhKB~?DWV}cXvpo?zZRH` zhRo#io@;vok&kZg8~3l{fysg?x`vDiVM@P-3|L*kl*iJerw+lC3kKpT3)^)KIm=UK zz~nEdJ|%0A?=u)vP)0rH^8&Ll2HQ6m9xt^fTEn^8kjOq=P3`I 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 z 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

cSq&j7=)*MHEv-3jmy;qlQA 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 delta 9693 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 HjT` diff --git a/examples/data/dolfyn/test_data/AWAC_test01_clean.nc b/examples/data/dolfyn/test_data/AWAC_test01_clean.nc index 90d68996de242dc49d5b83849f3bf6e2262928a4..96613baf088273cb97a7ce0b5d6c27f118ddf6e1 100644 GIT binary patch delta 10053 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 delta 9861 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 LsFnvLG#U8+%lc)L diff --git a/examples/data/dolfyn/test_data/AWAC_test01_earth2inst.nc b/examples/data/dolfyn/test_data/AWAC_test01_earth2inst.nc index 5657ea3d14fba6e81c9944b54d1d33f6d9b0ed59..6d2946c835bcfbd984c49320ac200230a5e223e9 100644 GIT binary patch delta 33622 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℘JNKA=k$NmozUUp{yK1oRb=VErKrYRHKqHCvndD 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

c+}A!y*m&+U z8v4lz4*l!!bnq{{r9MIE>2ei2hW8gPYMm0#ntKY)hn^sJbFL|7X^s>0#7(GgE$`sm z)D|4EW)~X$S^~YBIJkD^IB4$+#M=g+P;NsZxfb>kUmud-u@y6+_s39);*0b6BxwNi zFh~b`KADM$pB7>AgcMxUcp8p9+zz>72$x5P2`aS~;lNAFQ7P1tY!99S`^p)#jC#-U zvy6@KmKH-tjA8NpwNFH^r5_D=kx3()#$ak-79DBnMm72z0`vEm$kP^OaT*;bOu2tl z@EkKmi0GUu?C-N%Xp^iH%5_48VF{yz;mKiwiCMgG?)VBp{bZ1EU3s9e{FS~Sivpw;j{~6MN}W*AI0&)^@e02If`lc5p{wbg$*~-g=tGug-a%rgt&`kLhlKa1=ZkWVT$oWfjyEStX&c>yp0GE zT2F5lmNYI9ie=1%`#H&+@D3dW8R{X-Z9FZ+k^=0%tyuWBj}cC(*a%zHV}<7rQiZoq z77ORaU93?d{(`yxZG3;RP`I8nK}foOMbMUBCv1$35k}5EF3ejyN2pM-7SccD2-acK zgcG%X!hoiHVN~99;Y+NzADnYSnC2ocTsF+Xu-l@y-B-><=oi0C=(}E1NU?v9$-aid znUHb}2^}WX0>ybrh?@1ad~xe3(sR>zLHd0ND%3q9&)%eB=RhN2W|B31VYv(Er)i3( z=*G}+R2%74kD7@~NDdg^4scheF~*$4P!;CHa*CV7Ef z&j6xk`vGOsL(!4{fy|L!f<<9AjaEyS2rfJMt*lZ%h#g#Am_!$F5pg8MZ!L3ias;hA@=(0syN_>q4|$o_62IQ-fw zM9z#BtWDPmmmJjvF54zfi0lX1i51l5w4&Ni}&(0E_S9hXq`*y*9;s(J<45cb`Jtd^QK8d;6rv;nh_gGn$B%JWc z7V;|;1^FRP0w;G|*t_yEnz~sF+Lzn}7aMKi(!wE}P##n)C~u!FxLv)4(t?(tI>k=7 z2sXk^cO&7^uyWM)nlEhk3&MKQqj4)+k5b=?@Fk-`vo8ctugP{o(XOX>Y4r;_EKb}R z`K%*Uc)g-qBZlI;-JP&qy9$JFy0q=+FYpq*E2kCp6h04d!6Q8j={dVhJpY{=O)GkY zZ7;;+!8ZHmU$BzBsXVY9-yln^OJTN4Azj_NguTMbkxg2^m-w0i#{qaKX9mY@+ zgbjY=HKT>RvC-liYAr}VTqdY(PZ3&wIS8z6knq|yTTt3I zS7^IxC>&3jBXsl_C0Na_6E;RU35tQ7FrXq_FsRrk*!MbuOU|VWiD`*~-%=AHem)2$ z%ewGgbDj{IB_#~s?Lxn>p8c=)A3;MmF5Z!OoVP{n|H6A~OR+}zFGw%#&Ig>}5rpGXBrINVOkemSf zM{GmgYy0>=WhHb~N z)y0@iY-q*ARA*WgTmV})Eyoj|tY{zd0QaQGvgV8Gp`c?8eZg2^(88Bw<82FeM28r} zero{z`6?4FzH=|&0O z$FWhcFZ?cK?YjUUU6pY1`vGVbNv z``xO8a;;60ANy6Y;f5RUkeNj8Zn+Nf&R(R~ff-asN`;Og{i$@b1>JOE5dB3p>H45& z#Qc;iJrJNtRc-xfTVY@R>B&iO;y^VqS~m&0W-G&jU~^Kr?=a!+Z;^w%+Tr|%@@3?V zQv)f8`61a{%8{TMdzqfS<;ixvT4=9HheM+4-1g!C45&{5)t@KfXWUR&I_EUV4m<+m z>?T0ag9{ef*9dV;$R^u%Xv4g9$M?)|KRelbJP zdC6A}wr%PSz03pfsG$y4SK4C3asxd4#uBf5O=g_J7Z9bL88~I{b6C;7u}n2R4)xQb z(0a-M2>fb_eZ`50i}f)^-|sVQ^ESuvZF7mmO>L}wGX-l}p7Ci3nt1BlW}JP1!65T& zXj0yTP6mj2w5-I#8#|=aC6`i16bRDYhe1|pfDLN_X!ihKT;IHx%G-{uMRayvC z$>tFai+g1Iwr2i%yDXUg(~tRRn+k2Ym&ioBAvCZDLTf=D(|4{M&5O?=g9CF(mE<4d zZZn^5Qtn4xX7;8RzFs9aHY?C=4~Nlq$!ti`ep1ueLjw?}Wjp>C0`;_4a+YhaSoiYFX zB{=?W4<=6RgYS!fSlH+4;z7qvXl?(5|FP2%>yJ!8?u^9TPebr_Vg>Y>sEUu54iTMDdGHY3 zZEEvt05V2EOW8rvm}*I{sO%>XSN9}udw5|i%fbUPkSt>AvC#*^tM-}|8U$FaytG1xhlS)%9E-Y{};AQ>FJ47A!a|BsJEP% zxvrhuj}9P-v&1kR#Z6@6SY2|vZ70)bwmZ44VnkoeUd1@1JR&tU^LZ8Ln_z8r9UiTa z#SQBR5)<1Qe8rYTq8+~*9{bNne7qd0E`R4=C$58y2CLvzy)>qBGpitQ!5r`&qKUW9 zYn0IygFq5&g+{4nSodNe#^et`ZH;;$+I?_K&mH(kaUgmRP{5>{N@%m{EQzJyII1bDD3@R;49f1q4 zFGH?HZ90D|dJ~LY6ClR_tK)99%MjJI4ILk{sJ%KC;v3#W=y+9ZnKl8xuBnBm7hga? z=Pl6el?VzSdxP=JFQ6>>0v?a_@pe-mlFAIE5x9?N`1S?s31`XX-N(vG#ugE;pr2%@ zuN1oKA0^UN4)j7v0#UZq;poC=tEffVIr9413X*?4n;A7!np(FQFwfs?BkIqeFvVGK ziP6{Pbm+%jB-Q2}|KiGbqQ8496YUwyl#RYjt_;_wp5BF|x9kfdo4AF9KdNAyZ{5GS@{KUn>(CH-C7xzV|@j>sB;E7ZL|32ms zD0)uEhHKey%WNDP73T6w?e0Oz5gl~@Fb`Ko_QSrm6s^=2h>^~6cKQgx;d6piJu zd9NW}{bqzg69(|fFUR5B2LFZ ze9K9Jo1TxzH*-(QS&!br$TsvN?|aUsG4Gnlqg}?d_8O%py+>2M7gDtT?FV8RRzljZ zoPiW^RXpa#6-lpm{m5NsUz&6@n@o1PTZZF12^YAJ9P&NKnB-}b(gV?qqgfo&aW9pG z*UOM5{vxr(FZ}BCo8Yj_R}9~X1^=h-V3S84CsBDQg%M`UA?U6Gu1*+?+l}*J>fG}X z(W9PkQw}9E(EuC0vP8%XRg^Iok5i;OVa}Mz_}kPQ)oklvv!fASd~px-77a(m4G4!t zY?mNoWqfh=G<4kPh0_ZSL}%2ie8i%=e2+_Em>9VW%#y@KjH4+s>$xIG3i(~ue}53{ z{$PV4I|tK_fhQmaT=3eVY9{;9W;mH2kKWc@JS>fe&YKHSdtpC38J!7dUu?wv`YZ6B zZwA=Sm&R|NbMbY&8dm8219zotp`Y3r_^NEecfIll>k$>u>>_^eA1A|@>I}x;v5I`{ zRN)J_BjwCz&sI{9TOzqx%+P6brqjGjN0|cS17y)hNBYixDBaM$gc$iOpbdd5X}IxT zq8vJf+1+~|@o@7XGlqXA_7w@l!)yWxS`|Q*%rZ!$odU08+>?4H%F@QO8O-)sNb-b9 zBsxD6zPV{Z(DW#B!uSO64tUw8Px^zCZ6A}R>NwF^N#EriJF-h~vMkCM406SOrI zaer0+xQM2$|xI6wENjVxv?G^qZpZebt z{}~z5sWVbZJXRtNd9cEn}91>NsbR~G$wi=_4PD{{Y0 zoi2MgoamOD!=Z}raGLYg!Z;^y=#?iAxxHj?^wRU-(x8hn;!9LnodHF2zfKy}TRw*4WQToV-M$q^&us*5^2S&=xkCk`7=htEoZnB#`L>XS8bUnE<9-XvL`XUWT_JDA{Y+e!O+AW{yi ziJI0@{zNdRL?b10s6~lCanQa2ol2j<Lr9!MFc#f^B_1B{zo4P6jjHQD!SLZWS`EQxdNrM^!YUsKiJkc4QG$q3keYqfLk3e?ly_xJ?9nxH(?q8eKQT|W`H4+)nRdL zBINCDhcTOcAWu76qP=A-7N^$2ooX4Z%qasY|1yc~;g8Vr(gvP~o+j$K&HVJkIz%mJ z6qV|+64G>nnG)~e)THldG6r-(ahDevFXt#(W_y`&eC9!NXP1+^i!I2~xEPYyF`r}R z4}S~Ze$6E6!6?w&G?cf|`$Vk7uhZ!hVM-R6^`V9 z=WkVPw5f;IA$@ScQ7>M8ur%W~<|bd@IGky0Er8~!;&fiynC#FP2C9+}ep+O|GTjM9 zK<=)EVRCVB_l-Ng1TF+B&ej66W(NAZYT)&)&iMVT4<40Wj?<^-gLm*mbQ&1UU)D$# zp^}tv+v8u*$M+z47~jAsDosVIr;b5iN0;4B(!x<=cqr`0lJaxeuwY{ZJlN<$KD6}5 zd(DG!P`^0xM(+XyU+~4tW8-*p<4`a-8jns~2SNOH6HLZz#3LKc@nl5-XkJ?mw?)6d zXIE;$CPxZS#_HoN{|j&e7Q^rw3nN<68Es@f*>b;z(x6W)qI-eUJ&9+s4Qh z5;EL9glNkQ2QRb!Wpzuol20|?VW`${+?mwIWQCfO8<|&NNySwdCcPL|jOmHhdOl2x zCoj=)jU%VxUhwyZ+%J=@_zK&lwa`arY1xRm_sHXqJ&4McTSWT2IXD&1f&oTT_|^F} zWYi5e#$~!c2d&REu%-W0`1NuZ{0v)-CsQrquK#KHQSXZWa~WhS)bN0}FHZibk0Evx z=EtgG!?;e!F22uy7MEZL>&9b3kQ(_FrB4j6xZ?6hCNR&uf`GLOp8C=QA1c3R=0(_` zV~Z>f{j!G~Sk1w_-_n@Av5PUU;YvYv2|@Xe{L*9NcyJyphScpA9SBxEh13)NIH-Rl z%C`caZ7>J}BGhq^bTd5dyAqV;3gNWeI*5sU%M4P?An%9rlEZuB;r8mD=%zfBS*a94 z{5PjSubgV=<8qt?xAw=n>|jzqQjs)HK#(i>0LSYuku)xJILIAzgmbIZ=vku#Vlz&L z+)2%0(!{BiSFoz&?#ZvjAZ8Qz^}<0GgWKj+gF8u`b^#*qA_$H@va zbx9xZYIr#R77TFgPq+bJc$2gTWdj#*fUBCIk~>}&_`H#iUE)E+(;{-ZGMn_y`pt9u zL*+5?;yO@H>O+3c)PVWttNGD6SKz~CE2g!mfp>pC8edx~q08qcI6r9;uAFrbqU6s* zeVZ!Ems=ti8w{srXkurDBKSF{!yw@s2(~iVb88yotC~g@SZiTN-gY>C%7=XH-2y{r z4nlK>?YvdV7|}O$5QmxOXGw5t)8|13P<1T?BW{f*KkJ(yr!EyenzV69 z>}`{V}F267oN9fkpEBpch<~ljy&2nJT`$ z?gT`CLZ(#l8?&H44{2RX_|VNcw_#o{)^TzKfF}6*C2eZdB zyXERggsTiGk6lLASAF1%M{#`TRwoEw*~(i;?|_>^6XW;(GdVcZgfJZwzPYLKx(2_XoS@wPj|~o~UJfu*_BjG^+8Cf{={SI9~1>SrSu6QpG^F z@YMoSpj|>Zi)?Kye^(B=^;5`6dmgN~Td;A4A@wU3K;_q5{5*3M)sQNLLF)dPWFAhG zF59ErhdeB%Q*g)5xUwCswUG8S5*r5%=7Y|jgWjK&V9g36u)3i}+TIL=w2#SPn-s~{ z9e>Rj&wLN=y*|OjLEAyOUX?svk<9TA#kfo_fms*ENzCJN-?mR@39=S4>HRROOmn34{aFJ!^u z2w2{n3*p0h(n)DmOwv^e?0PT<-ko-bB1>1;^*SAfJ_?i6-sAd{vYgw*Zp0QyG(Q1J z@dL|3drs#^o*hFDuR0B3_ua_(&SvuyHihs@>I`wpU`eXr#6-3t-|%D)zkfz9H0yZ* zrQ5)1t{ksyqz}i(9EWGWvf#b;Iez-6mry!76RvH21XUM*!_oqK@P9l1|fUag8}qZFvx>|&U6-~qHHeIzMAxATwN>wuM1 zlNN(T5O?MhhDgT}ufbDc+o9Fi;4svPY8{o~E?d#9Nry0g%vwa8?@vsht{w#H^eFH^bd%$V?^d zWNyNm({?nqXd0}4qJ^GyyXaAccz`9s=J+jKv|(Y~k(t)kOcO7A(8?5qdbti6@;(Oy=kz%!c^^ zkUq0F+S^_x{L>Tsy7MXE(eo7Ocj%B#!_E9OHC31a(X^O-0x4Sc5Z#hPZY#u)PTyd7 zY@$|HbUcQvl`rSBGhXtJi>8y=DW=%L`H!HBls-Vj^MNpCLK69^xE8vWyMpBuN?v{0 z2jh&y#f9(_I_!p#f_Ivr^}QVSeu;q#Z=!jn8TL?Bq*~^4&Vc-q&IiAZ7y0-)mUMjb zVd4{VNwlpzB=S354>?T=UGrkWwpd3KR z#0lcJfQ5xX_~AcQae@3ODA-%UCw+DlU2I|{``#{t4&w%raODVi*GN;}&8pOA%?NCh zQ(=BKuB4aeT!!aKDtJjvgX;QZ!!e!d_&RDheRJ9k4&NJsGW{0OBdL#x)uG$yci|K@ zyH>#QMU4{NoT`bcvm{hSB_1t_IyMQ#U>A@_rd<%d)gtBa(lcF3&KiN1h4?2q<0hGX zIE=Y*z?7sd7|IME*aaKARLJ-3a%lS77Q;G~h@HF(iFqW3++I`1C@U}8Z(ISChPA?l zfd_cgr+U<9L;PoO9~oL;JklH5?l(aDh#;`Y)L^D{#ltAKeUP?ar>x^!AIPioB7F{wWvT|qfWg== zP*6F5m}*pzemi$Un{+ZUUNQr!83P=bQwqOB7-GpCI!vZYI}(%vMK*iiNc9xi~9Q)<@3AWIHXW z+(=SVkK(BIL$uRU4($_m!yczQuwz{b@p~GN%1gQ=ubno+lwcA6t1N}Ty}CDQTn?c# zOK&sJ!{nf&Bark;od_NBS!7_WGI1I<4!QMxDVua3TtlYe@+IQbZGu0!ZMp@og&X3p zVZ-P#jT$&-yoG~HX*Zd|`%*NaHj|n6(usKs3iQ5IADUT`PNJ4M5uLJZtcp8I24`M{ ztEoWJxAmm63r@h@6{@`7v^Rn`Ql6AEmP!N+; zc4=A|GbkN-ZnO)wHr9|8ahg=o`!=r{!F7>Q{bHDi6$bpeN()f1Uqz(f?ILb^qsXuR zI{a*T1DdtE9a2tZmM-huOHx9VVcN@+aOh(v@2!%{s997?T8*nn{uM{^tYr&m2Rvaa zdT1~id4*yi7mLR-b!p2UMLNG{akq-T zF}e)KWkXS^F@bV>Ldif8dhN)m{Zy&O8v9(cK>OfPC_)*LV>BMUoaK0*h*hApa01Eu z&$ba@zV~{W3-`%NeM}lNRiwgy&!&m1#!L>NuH0dg+VEnOk2P6H{^tfVDlMWmSD?bZ#Z7E4l%Wm80lF_Z@t7<#@8}dmaSM z$R^$+G)df|Adr zICDcx|ce%i8G$Lb+BL9N3D1ErB_uhqF-zx4SKg6c8!q5De?|DW{etb!&p4I zu?LU#nUJkBA2!2K48$Aos;2^R8!3ZP{tf)S=_Pz-raU@y>@91oSi&2nIN(4oYb0^L zFqQAI&;Wb4^&yuJI@9n$ad@Qk9)$haLk~7>ff~`v{h*vQJdpoJ`b^nREGuQnL&1gW zyA?=GhHoURq#u#I&F`S~{%vxyr-=8k{{-VUU7yCi7zCMx`DKP@>PS%CIcEDgY49){ zO0)(l($Db^;i6Rx;q=7E7Z<888M^N=8Fc$F465ou+xBWlTA02@bk#q#J+g~@9;{MIiB+j77Q;X z9dS2!j|XRnc8}krEzp(hP`pE`=l?_IHCK|@+5OhsU1aiKSo_hT z|H9g<>}yni`roR9$r<)C(yYpY!|j#-<*$03u}4N)(w%uxv2;gu<=-?6@BdFmz~LeW z{@-*{eH6N}`@7R(iV59zzR+0Qoy736@~pj+TDy(@70Ok}(36w4%!utNtu1YyF{g*L zR>med>7_lsoE%}E(Jm()Br{$$V_7fh^?y>U*omoFMDKff=}7u-l7IOSuob)oV5D(Bj1| zD)wa4lRep6%^qywi&gALT@Uuv&sFT=A~Kk9&GSu4_5!MC#(0#gS}tj$=0m) zWS=#8{^2L(d$KFPd$M5b#X2;3v2ORgIrgK=YIdjH8unP0A6qxrpIva%pRF$mV8`4E zWba>E$EvIdV!z!AVyiKT9X~gS9q?SFb3ts(gdh=%Y8_jAd>yO!Aduasu#UA#5aqRk zSWlx6w$eY8{k}bnm6MKO3tA%BvuD<`L9-*-?<*tOe;WT1dy+$Q^v91xUze5E3sUn<}`5nfN-WSH^?G9rNmxZzFsiCZIM<{C^9L8!s3S)KGhq2GZ z`L`*jrNRSO$V)Ke>bmZZ~8{EyXB(TJ7H05{Iw`{+LI_&uPut5B){Pg`Mix{ zOF5C*(HOSt_1VUcg3w0n_6I%>Go4$DUW?cu6frJgG)+ z5k{$K;5{7Hc@K3hn{b=WBODsrjCzY7VYTp33`%%_Nx2V2Y{*7bQfxps5%c%0P6HO+ zxrgRV!yi8PQ1(6^UVaz19<9gfDR=Oa&2^l6wFd8AszfcrbC@r}>vnP?SZLrO)ZlY5 zx+oj%{L<0*c`6=lOhtuxyRc3+RRo*fiSrCIP!OT?Uu0#YRmoml^f(t^tlf>f`(@(O zuq`4I(gqYt{4jxcLT}3{IOC-OhYg2D;C&Go&Qs|Bhn^~F;NrnU(UR3i6du!a4Z%_Cl=xM}%7vqgvj8p9q~9h|Bs$vr4HIOr}S--#6^9hQF#ozqbNQ^73P{nJRdQi=NXKZd&RyOsYn&~3Dv zx((4H<3IA<2LJ6?cW3^U>DH0BE%-y-_Wtcqw>;NvpqtU%<8JEi{l7izuIr|M>;COP zxAE={{o6pd@ovN2yg&EifV!{$t>1dx{Ey7P9q1mk*a7Z;N7db%e@D=L{kO4hBi;Ai zynhXLU-g^M(aJUF>FsZ&G|0S^dJ6(wR4C95S1af&+Zx)CUQ4Cc)KE$0ZTf4+J?iS$ zKxdRUQTF5`nsv9CzOQ^l`~2b_QbzkB-D=QG4_%Jl3e~!<wfdq`k(AM`#uXlyx(u?uLXW z={wMaI~-`%<3;rL6EC`8>sq=oVl92CvyQ@|X!=_v5Rl|v55|T?9m`UHqgzNRb1iA{(QHF9er~(Yv#0? zt*KtkYB_te3Z`Ccfs_}=o-*@fgQj_~_Uk>^UQ;|+&l4VO{ZkKCBj1Dl6yV8@=Z%_7&pGa3d*}iUG?B!%Hwp`7d9X8R2E!n-AEi7EaM#!#ZOSb#7 zv10<*Rf>VEvGY3irBo2R@@5d*WD?AlPY7lQmjtm(9k^iDUo)8XObKEa4+&y>$OW;b zrt8=(GuN?c4eMCLRY7crM+htPA(SnC6~>+qj$jkr*0bjpA?vkeyjz}CY zC^6OxT1yR_j+FV2&|}3maYWKx*=Ayg?m|oq?BM zBT))#m2_Xb^}BVi`L$6$Ab*fWcBzV2n+1`Ml|`0o3T<*gF3uC;XZ zI`=Z2s8-2h-&RR?!IP+YMR(>TXnQaIIJ5`IRB`8mB+Vn0cbkr8Z}{i~yy z(^a<2{W@DFVVOI#ZIL^ZxloU}T$#+gTkXz7aa=UxwM36;zO2M#Jhf#MV_GGDuDx>@ z@i9rJEciR(ZW%7hUDBlI+w7aYrbAfqv-=JHq%y zMl&YTIgDY?97a*J*In*zc%^nA85I;jp1%wt#@zh*WNLyB$@iL1X20G*Dt#7^%7z%y z_rN?7e#x7xHW$GlRXoV8T6@y(n**`*wI!yC6NpJ2AqqDak%zJ_WLK9T@tw7pT=_MD zJh?WKc$IDO<6~ z%_e?>=a4?3QN-$-cp^Q^i_DQ)Ow@yX$&+?xvg(XGFE2kZwC>b z`5`3m^HQ>3)r}*cE!;`vq^U%CnH{-rHj{)IP9@G;CX*whrjT|IYvPb^LR3#%5wj|5 zqFCWX{+VM>B=M$Xw21{t>0pUX$SktOWg@XPTTG70FDDmFU5IhvN^ByN!qIH%NrRIesxQ`RDsN?36kG6A(agqv*`q{u=?e&&7SNq7js~_iw zyG8O1i`Aj6sEQAqRKZu3e&EgE6hC!WD?h~LIe%XE1Hbm3c*1eBoS&52#BaENh+qGu zm>-kyn^$@LgjZg(jhBmW-~&I^^38i5@*8S0`C<3p@{ebh@VfYnPZ?Lk&*!|K^H+i! z_?EQ0{59?Ce2aZDuh-`YKSFIk|5AjBe0OjcKX=w9K20&1pXe3KOMB(;eICx@gG>(b zKfK?TJ$0MI?{Ti;C-v~+A#y(d;CKmNtOvY>$pPNFX$Y(vx0io#z=yAtJ;^H-NAQXI z0leSwbUt}TBL8Am9?z)<9p`nXU*TQXmGBmtCHw;Wi+ojWE$^jRz+b)nj9)wSI$s{y z%v;o*omqsV^c5>r+rL%?n&jH^2fFZTKgJ}+5 zKP`=K+jEpxj?siwk4nmXrbO@_Q$O&oUo-f~h6+AvYBR^bEGyxg#7&)(n{V+E*KhM9 z{Lk|0qb~BUD>+swlw;-Aa_s0tjxCJmSd+aRTRe|rEp~G3Jx`A9yOm>?i2PTgOxgyH z^-KL*rl1&KB8vWAyA50v8~H6Z-c8-|78M+OP?W!!^|xcEM1Hsa?i}%hCf@TqICj7xj;%e& zv13ni?8e-`4Np(_JE(3u<0CnCIw$rzUhKV1EXQ6C77eZw%YhubCxm0KhI4FSGRJm` zhHXT}^#vTOy^CYdi;WHz4eA{iM_tIVv-WZ9p)-H43Tc0z(hRZTE&N{@*W$lA1*bUH wDdVrr&7%FYq8wOLqzaBB4kLh_Lq(0-~ZKC8E-xA|cCqslrwabMnA}WpohVF%E6J{4IE)HY4%c{ljis#2WR#Zl=F%;V|W`v zM0p=|EO};H(|9e~B0O0iO6r((w)->>S8pL1g+2~3vwn`^J`VZOBD^jgD~3Z?&Wb^N zF@OBBpW1`>FnB00SZ)MIWhhI8K?$p{G6vL;9T>RvKrNvtkSWa8F%;A+macGr%{s?( z7HgFfSvo?ZU#L4zSH~@A52qh3n8ZQhLs<8@{m}TV{(AL5Jt&+u>4y(aI_rp_{a>iO zJZ~X;G;gJbKTlaxPwISQ=HvdZIlNV>)2zM^tjr4geqjd&>cLLp20HQTN3&SRm=W+5 zKeQihoHpKL@*vr+k-TNv4yr;7m6qhni+`i+O?kQ{{itoFKiB?^>J9&cdXcu}^WUhF zNC8StAn<+2QGp{i~<4ShLmsp?OimEL1#PU0BkB{sl#X`SV}>O}OFA@NYtL zc4n5Q^CF^bC`&U-3$wAzj67@DZ=@)}xvJMk&AO^RP!Cw`KLbU^wliPQuRyH8B>sMG zcy6vMJX!!59H96B#b8_PKW$N-@ED(lU1Q`$^an{s{fA`apEgg{O;uVj!~Ij{8pyk= z=D=q2q9EF#e8n(`M=SRO?cMY4qk#m%zN-y(cNRB3v1BR z85rw!px~FqQkN8rhQ%5j{a~%XCMQ??RwBW7F*5PebphNdq z57MORO^9>x^>AgDgXvs>0Y@0`88ClImgE3g;QERMeN;mPRE#wUs06;ul>brfR{!

-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 J759pc{~txLNe%!2 diff --git a/examples/data/dolfyn/test_data/AWAC_test01_earth2principal.nc b/examples/data/dolfyn/test_data/AWAC_test01_earth2principal.nc index c45535ca12d9d63e3579c51e2b4b613abfaece56..f5b5c325625b0392dfbce77224a3c987398ace20 100644 GIT binary patch delta 9485 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 delta 9557 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 XRY?l3Y2E>rRK>7lz~I31K*j$TYvVb8 delta 33936 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 diff --git a/examples/data/dolfyn/test_data/AWAC_test01_ud.nc b/examples/data/dolfyn/test_data/AWAC_test01_ud.nc index dc355593223fce7af26c6fde282bff363294a816..e7dfa248fe55832fbdcab4cbef8b117e6fe64b9b 100644 GIT binary patch delta 33512 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 CK6JqV delta 33606 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

#S%V~uh2g(I-$u8{w6O-5l< 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 diff --git a/examples/data/dolfyn/test_data/BenchFile01.nc b/examples/data/dolfyn/test_data/BenchFile01.nc index fc3f4bcdc199fe20f6ed2be254869c4f28109b1f..3b2af8fc48245ed98f2f56b3f7107c48744d654c 100644 GIT binary patch delta 24551 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 Y4KDD}Mk-pR<_E4%I{-xATHb@{8uK*-L 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

3}D$9cnF9FeT1 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 delta 19612 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 diff --git a/examples/data/dolfyn/test_data/BenchFile01_crop.nc b/examples/data/dolfyn/test_data/BenchFile01_crop.nc new file mode 100644 index 0000000000000000000000000000000000000000..278a872bfe8d8b443d0cf51a1eae3fdd6c4c4208 GIT binary patch literal 163133 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
405oPJ}5zZqx@6ISe;q2-tkX7dM6p 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 delta 15666 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 diff --git a/examples/data/dolfyn/test_data/BenchFile01_rotate_earth2principal.nc b/examples/data/dolfyn/test_data/BenchFile01_rotate_earth2principal.nc index 5acd192b1ec98bfe886025d52e65eabe358e31f0..a71cbbbddf15f69ff0533c5772061887db49c06f 100644 GIT binary patch delta 24321 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 F{{eJWC8_`b delta 15850 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 PG$^e9j#d}-@UZ^_dhj&< delta 15649 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 diff --git a/examples/data/dolfyn/test_data/RDI_7f79_2.nc b/examples/data/dolfyn/test_data/RDI_7f79_2.nc new file mode 100644 index 0000000000000000000000000000000000000000..4874189da212d9c7333b282761586cb65ff191f1 GIT binary patch literal 41715 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 search_buffer... -root - INFO - ###In checkheader. root - INFO - pos 2 -root - INFO - ###Leaving checkheader. +root - INFO - cfgid0: [7f, 7f] root - INFO - Read Header root - INFO - n 0: 0 0000 root - DEBUG - pos: 22, pos_: 0, nbyte: 18, k: -1, byte_offset: -1 @@ -75,10 +71,8 @@ root - INFO - success! root - DEBUG - pos: 581, pos_: 0, nbyte: 85, k: 0, byte_offset: 577 root - DEBUG - pos 0mb/1mb -root - INFO - -->In search_buffer... -root - INFO - ###In checkheader. root - INFO - pos 583 -root - INFO - ###Leaving checkheader. +root - INFO - cfgid0: [7f, 7f] root - INFO - Read Header root - INFO - n 0: 0 0000 root - DEBUG - pos: 603, pos_: 0, nbyte: 18, k: -1, byte_offset: -1 @@ -99,3 +93,9 @@ root - DEBUG - Trying to Read 256 root - INFO - Reading code 0x100... root - INFO - Read Vel root - INFO - success! +root - INFO - n 3: 512 0200 +root - DEBUG - pos: 865, pos_: 0, nbyte: 138, k: 0, byte_offset: -1 +root - DEBUG - Trying to Read 512 +root - INFO - Reading code 0x200... +root - INFO - Read Corr +root - INFO - success! diff --git a/examples/data/dolfyn/test_data/RiverPro_test01.nc b/examples/data/dolfyn/test_data/RiverPro_test01.nc index 7fa3e6d349512e86fe1259ba75c26f723fa0cd98..719ad6102d62ac952c044dfec2d5b3e5f6d40b06 100644 GIT binary patch literal 314861 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 QLQJMptv9Kyqm(^b literal 221718 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 diff --git a/examples/data/dolfyn/test_data/Sig1000_IMU.nc b/examples/data/dolfyn/test_data/Sig1000_IMU.nc index bee45bdb15db2d13dfbc37e85f1739e055276f79..397475f51c15989d0ad5299d9587f1ddfc351b8c 100644 GIT binary patch delta 12861 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 E0U_gX>;M1& delta 13900 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 diff --git a/examples/data/dolfyn/test_data/Sig1000_IMU_bin.nc b/examples/data/dolfyn/test_data/Sig1000_IMU_bin.nc deleted file mode 100644 index 317293a7fd2305ad5bfd780480c58abf198fc7b0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 90337 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%0DWRPa~vpHkVz;nzcr}$nt&B$m!g` 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 T@D!DBS1wF?Amyzul5hP#TNI;{ diff --git a/examples/data/dolfyn/test_data/Sig1000_IMU_rotate_inst2earth.nc b/examples/data/dolfyn/test_data/Sig1000_IMU_rotate_inst2earth.nc index 9944aeb7a03be04f4fab9b720868082487827dda..f7364c5f01fcbb3634bd8928f754e56097431bfe 100644 GIT binary patch delta 13460 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 delta 14259 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 diff --git a/examples/data/dolfyn/test_data/Sig1000_IMU_ud.nc b/examples/data/dolfyn/test_data/Sig1000_IMU_ud.nc index f0f847653c62c30d2c76bef783afbe8cdf28d4f0..05663f6048fddaf2bf8511e6b6c7740fe3e45eff 100644 GIT binary patch delta 12968 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 O$tzS2p|2KS!T%34uY_9w delta 14044 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 diff --git a/examples/data/dolfyn/test_data/Sig1000_tidal_bin.nc b/examples/data/dolfyn/test_data/Sig1000_tidal_bin.nc new file mode 100644 index 0000000000000000000000000000000000000000..4f5ffec15c96ebb729e16ce540a4cd3e211b68c3 GIT binary patch literal 113113 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 literal 0 HcmV?d00001 diff --git a/examples/data/dolfyn/test_data/Sig1000_tidal_clean.nc b/examples/data/dolfyn/test_data/Sig1000_tidal_clean.nc index f5148a4803703fe92bdae7a66e5c99610e4dcfd1..8cb9e667851071815ab154e4bca8e68e9441412e 100644 GIT binary patch delta 16056 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 delta 13578 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 diff --git a/examples/data/dolfyn/test_data/Sig500_Echo_clean.nc b/examples/data/dolfyn/test_data/Sig500_Echo_clean.nc index bf913bfa015de2043de1d366de56c0dca3181bce..099334d74b45801d165a23d7958e1fc4419e62b6 100644 GIT binary patch delta 17003 zcmaJo30zf0_j4C^5E0o#;E94LsNj}ME+8T(F1X+>A)t_K!V`DN+{$u!-SV1Cu32iP z`1~X@Q@_kD(=2nz616_FtS`$i&HQKob7r~R_mIY)Z|>Pgc%BGbi zw-tgZp8gUtY5vUJgHw}-%08ZfawJ76>73SfIQuxl^IJUkl!=6tfTl!+OleC}0vYFJ zo>uEwlA#?FR6-nCQgeEs8#2a#b&bj8~5*Ct1NQ5@0bx7q}gg_u1 zven%!oyh0d&J;qhH~v4L?LkUl97rERknu+R<$fd(i-Hvr16gRu!gO*6ThWV!R2b3_$i8~peLk_HND?8jkPZ55*Fy5TD}42X zvDRkChBUr_V*#UUf$UD;pRas9WanU;?P-`GS8YS@Zj~+)U9n^ZPBSzGM}i#V0G31^ zA^<&gL%`fihf#89snJ#JDW48D8zd0*!(D>42x+PU4JTa)X@JmnY$|la7lCkW2v8a# zkcj}W`XOLmR6*m)j@xX1yQd5TO(6SaZRNf&t+>W7tvDN5X^$N8AJ+U03XwJlrs+EN z&RZh5l&4=fwPp_vI;19Y2lnCr`diICs%&4-)jZgpl;9-5(rgad%|G|8cj(Ky|ND3Y z8H(#AjgTu$lS@_$;4{qMD+3c<8NP0M^&mL}i{AJJu zOidzVb01XMF5xJ;RhoP3P*Lr&MIrOtI5f~<{X3|bgBftJ8m4KfgtE=rUuzh!RcE=bOF&?K6f(AGhB=Ec+b@(%!_{GW@ig;9d(b9VbY|y#iX5fW@Sh~*qnNAgm zaz@sJA7#R0{X__iHxcl23it9RIN=5VGfsHHpY4Pf{5ei|;HUMITqlAM$g2lG$q9dr zkMU$D{97EKUk|>3jz18^kP3lk>k*hz55BM-e6bT=Ol66{v;GqzDxN9`JQo6GPI$pz zUJu?{4}O{xzETua;Y1Ml>Gj}e)PtW{4}O*to@-4dnf+t}nNtsbZaw&U_29(_izycB z`W)p4sxx7cQ$g!LLBEKQ#ZGuJLN7SscaLU>7oG5bjbVtT98WWB-AiT!e821jFLQ#I zb6A*MVHZ|7;f0A_>4X! z6k#nVh^bg}o(=grC;Yl`46)t`FXr@(dhi@ghPYPQQe5@k?G#rjLXUS-nrm%`Mr)r9 zckdWU?0m)b(9>pPvb9)2Qm=E|io}UpDP-?ST zqbzn3V{XZIKJP2}^cXFn4uZ{Rqo0|(E1!Hbw+ptLavvVQ+0D$|Yb$HpNtV%Gss{Ie z?^}b++-`3&HgnmOo6dLH=uYi4b!eu?y$=}MR4r%dDfOGU`9Es$!}@!)n8P}dq%9cs zFlu1FTx~9U!M?g>*S34-kc;1#x&8Mu?kBhV=-CDX&D{60*@j$aE(c?azD|36wmE)* zkqJL~I48sl{;_oQ#s7QHT;`TZtjxMCZ~=i6@5P0hxu;BK+;v8-6>|SM^wSn*?jL5? zLIRnXWaY?Y31RFWoSi_BL4vs`%cLsp1byj>nK z*ie#BZMO4KW4e`eH&!~P+cn^yxML4`tu}M73ap3Q7t8+q zrG6DD!-n-G-Xk>W`DkxtnLTfBx0Io&Lx`KUp?|RFV;l-dK%WpdZp_hl87PtE)0^C( z)9r%3u@^YPxiLFBvbrRULD1Bo?DSyD<%(Rsle#6fvv?wee66_B*0S;r)F~kHwXM&C66KMlr2#w1jk)!|^N&`R? zLQE)nC4x``jgRV_bB@Kj8)G{CkkqANF3Sbzq2=FL? z;WV^BF*N{&kVrwrJ+}!Bj!?`WKn=yv9!t0yLus^(!fgR;O2Zh+K&qn+ z?zm#Fe0n@z8#JN6^3A7;wsyi}<-wrK6z*~s;WBOPGcQFQ=`i+Zvl4WFi7`*q@2&AvHK^46|zj#gpI za?z%q3D$f+@zj3XGNQpxEr@QhSUS*JWZVTBdV}mkua0|JEwQqm;HIR@_sX?RTLZOM zCyv)DPY=+0M=LF~;xD4L?QafK#WsoUBi?Y9a?@=eD{b_@Ri$x)Xdn_B?7g01?&=oq ziPjlC>e{rrRJ;aD6lvla^)S`{J$!qW!8AUioqa@2wgh_c6OKEPR?8%xs$a7Ar%!RC z!OD?9CH{v0@r41Y* z9DGS_g0helAc)hlq=qsiaVg6#o}4ERxsoc>M4gzIT_n!Lk}6ibo3)^_C@*VbCvlXL z)EHipJ1q%F;?onlC&&NloK;wV=4%DjYmX6?V@pC#$?~EF2OWL4{#6qC} zxG-VC5&>g06vYIr!ndahMqXUpf{tqzWdw|d$1IP$+QykJ*s62v6_&k!=AAe#yev%m zR(rZ^QNzN#$ZnQN*@fkKahAyJLaVlG`bhh-@_$QGBduAPzjn9CLkpOmtBo&?dJ=DQ zt-3hDW^3#?3{VXTx;S;T_SLis?XQa9dg`+8n*O__eLXcR|A@HS{`Lm13(f6pIEDQCkbG4)W$Bp@RK4XFS`7h7u z&P9F8+fwVmepA)>OUlKs>9E3YxoxZE`tEAn^IGhH&T{e`ZGKIl`by-(ueQt`pwg)o zCo5X<{DX_5b-$T%qCIrd6$uN%g#||=B1@8lLySq}LhTur5TWk|%ynGAhIVs=q17A~ z>MZyx4Hf2?kvj#6<@dP*D6lzu#23r`-)A}7!r>BbCYuWZ2cUxlNx$ZRl&7V zbkikgmS;E7ug#Xnaj`c2&6Q2DTkI{RNKp}5a~xy=vmN#4n*+Dlr|#UN+DndE6i>8amCmqL|cypC*s++U2-D`4)`tNIg547ynZ9G8> zY5MIoP^EBf^M#%hlMVOczYY4VcUGrl9tx?|%#Zi)zv`?`$*WnhwOlRI^`F?iA>8m~ z)U=hem|9&J(;&sJ|I0=76R`j)`Ff9vHQJ3)J+#B+uJ*eJMu2~!r5p?&Dzt$W4=x$s z;{=?TB_^F={H8g=nGxo-LP$j`TpIUn8}DcvH>rBFD@s4~;;vi7RG<%Io*LXoRy0p) zSlzp&vPZSqPTCKA`I?l#qaGcdxH|xh4G^WFZYSsI;~vT9!VAE&^@oXJg;bCVV*EUk{ZH9h*Hr$uTWScNo5^{ z^`Bi-Dr}OZvX+6#%_%7>1Jk5!$_uEZ4wJA;l4{`vdd(;*ux8~I=ao&KDU6h)Hse%R zaHYV96e~zln{$FY^`?L%7L%m55G2}NAa&)}PLdiWLXaM;%Rt=n99x8v8ZBBPdJWWu z&kJfx(UOY1LLeMjAPB7l0lE%^?e7VKIF-3!?}4)Bd!)b?B;oOcrUs@?1IG)$3)wi% z;LZI}>LoXPz{s3NGwOhtj{}FY8TsftEMMZolxk-R%hjB7x2)Q)XOsEjn(Mr{t{JN_ zf|k&x!_Akp37-l6MTN{NWzfYNalXc2w@~&Qub1w$r(IepX@^%_S37iAo2cK7Ro>Ru z#VPLgWmmRJ_F41d74!mW(i(hT$nD@oQ8F|6`k@m_lKsKwoupx6r9TBCW_|DC1T#hd zq0P^qnf;;_8(39!;%eittV@Y*`<*Rht1{NdS_^4g&>?`jNS8_&Ns5-qSM<|2*|jfL z$87ARwK#+g_0CgguOj>}@M{z{Jsq79VsqYFRZvsZol z8ty?=L&IhN_p59j;iLom#gLAQyU!LoEAKjHTDQ!B!8lK@WD*ba8vALc%{IpCl|_HV zvC+A!1$xt=dqD1r?CzS9$&MU^SwooD_ z;Q@-__PPHYnsWgjy0z!m>a}YmX}866jc|(Z)Z$d@4SOSty0|VHNk`0$tZ&B}xRh1{ zKR9A)dh#w!Uz;Xp3pa-cvH8|WhpifhZI;woj7%zTj)2pgVCIb7`{~DDu={$ibh!_7 z{`4^=yoKnjXoBdhfXf%jf=?6P2fn0vAkQZBTKPgPlR+S*V=Sam%e_mB=hW%rPbikDXm(0H9Poe~B)zI%# zs}IhRn@fE}BQl)&Ka@6k)~#2o%xc{-o(;cq{5&QN*V6dw*CU+0LBApf zYQ+v0GLjT7k(=~0V_(3l;Ll!HZ5vmE*Tl@X_Ut@n)v!fugxb>JS|na%^$_ObD!=9s zQFw8Mm2;V$yMZrW5L^J zcoQ5JE(8aO@EQax`~(3T?g2+MH{1e_V9r3TUc%O2Ws8-lr>TcWDVbcKLio)`?Xf|v zzPebBtv#O%hZ4<(X9TUGS9s%(nHyYv@nw0Xq`NMX|A4vGd-qq=II;9rI?1kZg7NOx z?1|>^`7=DxB>h88j?$)_sW8+alh!}!_UVo$FJs@61@)RP%5+0=B$e!TY~pH@zu|)F z0f}lb)>i9qjG}}&Uxd7;?|N09=$R>4sj8Lp5j^t(TS^1j@v7b8U#dQ)uk~Exs6709 z3HwU~nZW8N5oZ=NiHP2rYm%yLU$Qs6t|Dwn4ueQje4ENr04QKn(oTR009uSE)FcDI z2!dw|no0o-BkcvajLPCkgr@BPh7vre&~%J4ccS0mH!0x*(v7vMSoo8v=ZmJUnj%FH4j>RwzG*|qM&DE zzQEnMV{H#=qC0Vt^bWj5rChf@I^kXY=^FWXtlVDKyoaXx2?P8npH+MvuCfcYwu?JU z&9#ULf!d=HFKdeyMsk%L9Qw4c$}|1QVrM~=%0o?jhgyhmcS#S>fU zD?*i|>PaW$cco@xK%RkSn+GHtVBz1yMKz1r^Sya!R{zM#yXy&ToD;8LhAY!gQ7t0_$$~qswY8`#1j=~yK9{3T) zSir&<3%FZW*yHMV{*do`N_9MfKz;>XYXV(CJBW9^Zb2R`HT+ejNE@(qxbpTxS?hf+ z0I#L=n(j(H_fq}cK#J|XZ%b^Aj1jHF>R9TXv{EvU^31txluvRx&If(@kcKih6RujF zPdZCnoEPBY_uqsl9Zk;X&9BO4FRz}o9Cj1?hLsSpPPl4Ox|%0J2Qf3e$_d8sGMyf9 zl}s0Ijm4x+2KuH$mx_^xDdXZbav$4zj4Vehpb>_Du*8kE8$z^QDyp`lJAtl zFA#ax$KPJDZ+sp61M!*wYJqk(oiSVYdrC>PKUjYaPY)M2gjYKEc!`&&hRTp7zK-x* zKS#JC)DfN><_L=j7Y-7pidKxy;Y#vG2SfXITkyC+Fm2vRlUbeDUgitQ$Fp<&%fW8<9Ia*n^R42)Luyy8>I)m z$-)~wF|3j*c1<5~jYb0w z6}zlQSxI3brHT2FRI%l{V_*r}WK4}JwqH*cT0){RPb%At;qs#ruj{C!m@`QgJF{=? zogL*6vnZ)zv-V`MDJ)w|DI9=#XT5lE3aMg(CAX-rSu;;96(uo|sR z%(N8&`%X z`}8plly?p1@L9?*sV06yb+E6JE`sNypCmXeSlMO>PN9M)7F>8w_Z@CjxWiGd8Y&!B z+sHyH^L}BMX6B>Zvg78Cv7_9Vp-S^wU%VLP%m$F|Y~;6JTV~R`g6fmaly?+9OxK=J z+V4?{$+Ms8R9YErRdD~Trs&xZb@$xSg*9jgkC=gCrg*SjLzWf2alFzoHnpt0oVvR% zqd)p^9)B@2fgKV^_>Ru31WU&q%NJGIu25IEI-|Yvw?w@LLfV}Wou;)D@AkUQRf*6` zPRT*qGpACFvvfJ7U;K$2r~V6l@f7C1f7!;8g{O|Dnd9Hji6SwCh?}5Qf7D4?Xv~ka6@z&75%yQ;MYxukI0j}3yzYyAyq-8<`*8E zZ#sCC3n|e`7p%^rr*~7{H#$9?N@hl`oyRocIKE)(%Yz5UoJ)9U$jzW~+ut3~l*!d` zGXhT4X>KqL=hk5+m3Wm?VmzRB)X6Ut}u!`JN{Im_^BJ-YQyY7OwtB zVWS_jsqkUfh)b*=J!k-BZBHdE#FKAj%rkSY-cRiL7)V4vg}&smU~$8d62sGMDW1Cd_>7_|ZXlLy#n;uCO=L?ULvVy!~Yf-jU+;B>&IBdA&=9OCW zFML-G*I7?Ve0tnZ^BLw9IZjWY7@xV6y!@BDTku0G%?z-;;av@<_+M1}VJ$|s*^aTG zL6nao?x#i@MH`o=^nNO=iPDlp&0ZNm>k^>ZiXzDBHV5pbIg^kQ0jY3%4|vmbr? zZ{|mv1Mc*}Xb`&PJ4c<^1kV!S?NV`hK}j)jZ%9MWjm09NMZ!l_kWVY`--b~nu}c_a3pxC_5u?r_SA4rbhS+D#w2UT)MW&Rq8XkhDE^to2%-q)!7x0e5vhj%Yu0An z_n0z{n~wqGaI9GDkeiR&$CMxAg>8KSXl85hBIVBcX5@F~{y#df>Nvj4!uzG>!thg0 z_!;q3@?$ge)dE?Ujw?eLd#GT?S}-MykGRK1>#oCF*rh;YUD=4iNJ#h=_5=*nY4xR@ zH<##vClsrE>|*uHCzM>Nm*~J+U^I7NofEts;7P4(-Zr<;qf*w7o)Rr=E_N&6q{;u{ zifd-}8IodRZ!FkFhf3a=exf@0w36FEskx-$B(ajBjsX)uu3l@g>RJezp*iHchO!QaAGeS~3 z^np5^m5-E(j50`Pum@o%*+duegH3eNfCo+V_(_Z~#7wtw#!wSO6p&(~3q!+9bRnN= zqKgWpndrifExjE^hKVi;7;d5qLnBOdAum>wdF(TpyzQPb9%V8lT99R;i^({;9r_p( zy?!zy2+ztY1miCZWt$WPeVmCd3<<|1S|;dx73vKWbUr7IbTa=Ym>I#C+ zr;JV)1@H#ybRjQ1ps1*zKLo|l`7ap4(A0J+Bs`dq7lwq#6Leumct|sSW}AIlK6;!~ z1=1{*=`9fShufjgZik-N4t>r&bXGpfH!;N6&uxcZV4{nP7Mke7j-?%X5ikFq78jco zL;)r3&`aB)&ufQ1pVMt(Y(xQN?I@JDL$5H=#d57|hhAl*+w|RUfsvuptJ|U1v_rSH zLtkj3PolFK`oH$R41^Y$=%R-fo9H=w7S^>xUt*#^!)NDGLMP)dhTz5=LP2O5%kH5s zH_;>b?0m#T7k12ZOUTzd$L|P@9>U_Vo@+c9dWb0Gfpg9_t$N_q|Av~<7x9H zLpD*|WPj&pk$jX#=PpD{UW1gL^Y2T&}G-Il>@VkDxL%#6HE zRLX-$`7kNI9kofh58IYQr7)2S1|x;BU-1fHy-It17kXGTCTC|NoY+r&A}~-naia8Y zv;7KI5B7EQNOuK2hy?=FH~V(6eMTA#(IT+6-0=wpYAFa6iA*RNQ;H6DIjVg`h^f+p!!1gSku~CluuN^2r2E{O1Bm0Z*K4e zT^a(}r5D^+pcbM6gWLzQoU;d3p$sB13Mv6vZOczUfCuQ~GwSCNK;5^_}B1lGAt-})G|KE5}>{o zH^g=T(eoo3gh9X!BNrk#OoAU67BVYP4F{xG(F+8?s8g5aJmQ8KV;D8Vs2ip$nxSNX zIZupyiS0sCb}~YK1Uy4PA4HZvLT__U2Lk>e0Q87AdHrCIN9^`L`ejTWodb26p#Y7W zd*-(jjbD-33Mp(G%pj6FEV}M>wb_22u1?!cGC@bP17Klc=*wt5k>NeEIPRk+LzTR~ zyWZqadP$^^p}EcI80jOJY@H!{LyCCSP`$-DyWTMLY(!CZD=H=iVh~baOboF(cl9&g zsizGMzq{0O23;d_wL3!5kVS;=K4%z%AtfC@F^td=eES+&N5%@)NEgT^<9}U8?wk+^ zgpa!~{$B4_a3KcQ*XAj0q(;soY4C0aZ)jNdhJH2pS;N{l_-KRE zL(H9nAL>b};Oxq{w^XB&A5`iR_w=^g_o|(?M0h3;K}dbZYA>IbgVfXUZtCr2!+eih z7#*Rn-^hPgwJ#qiefX&6SA_$We|+%9l09E8SLmkOOWSo$9+{I!CL1KO2*tMRi;7>R zM0A_yk*_fYPGf9Xw&Y>VaxHbbl+spm1T8tz#T)iE z#cmH*CZ2tNhI%^tA&(y)WtvCTe&bFm^Cr4AsdvVW@c>^>)9dQEoZDWH?|o?zt8la_ zHW@0a8h|#fVJcnMvV0WJMOByZSW1sg8tnFGhn&v1^d9xmVlZEgqD(j#aVIR7E{}3PDv*Gi8YfL$N#; zRczeM_<9wCAbbkJJ!j2NDWR3j;R<*^tbV$Y*!H$Q%gRMqd+wB+rACZ%^^j*XLu0jb zp>mlv?>#wbHr*nD{J@qyaLRPSYtPVa#f8wlXrz=KPffxzYy&jStWVoQrCf=WAC)?^ zg>^)mRFrY07H$irF#PPWXR;wsS=qaS#H@;`+voceSsaSMJs zLs>lez%J04h8L6&4KSES4ir8JFo?Qd3MT*zq0tJ3^C_2vL^Q1g7)paV3U>euw9)X7 z;ugTc`UNFAMU^9&D#RrK!%>ugouSKvX-GpU{Q!2My9R}s07GdUNnt*~KpNdpxQIg7 zWgx-EfgT4OL}NQj+6yq8`8k4*0gRwQ8|7XF*agMf-u>BbAFjQaEPML3YLtVvvrK#T zJ-ILJln08>G^bDyHKz6{`uWoqTaGqu!ZxT`ID%#6V- zAieE1;1#-lzJjoWBn%V%t{Z)ViTFK@qVUraDuEIq=I#9Ny;Qt;I)NY#qwxp)p-WS) zPRz_2k%7eBJ>hORR{ta>;R#KOwY1zqPFFD3KvSU>;mNhIw0iWoDdN@uD>N_yh71gG z7l{=bApzB;I=`aWB5vBSLVE}3%3Mo+xwx3aidY10q}05*N#c42D;;V1py5s}0Z&}% zU_~qr52|G;D5(?&V62dH0!f}sjWF49nly&*PDomuAdbdZ5sOD!{D3(BVkL;R9~xrG zueO%lm_v<%2{P6sDWw%PR&i{_N*6{&ZUuQYl?y8h$C70X2`l6@K$2p$lvhpo69ZTg z>&(5X+EP=qu-Y==pkR>$6b(1!^8Dga++kydoV-YK$uB6dlxas9!U}9oG%0iQt=87J zkviu<=WYdMl?C%(Kgn5i%*ElC(pHph3ey(MlG0lqT=@wmS1oJ?L?H=dEE*|t(Hd?J ziDu}S*Ii(}(wv}ImSd=;A=&hra`M_!20r@fv=PrfYs9`EFbvC`rtQ~Fcr@b({_4fz ziOSi~)FlQ2svO4l5@rUWwd~v@AZkoA@*TsC_{<0+ekaq2{n+-$?ZLbZe47b~YD~T; z+wH>w>BxQFgUgZge(OAa@xKt1#P(wEW3(v|6=KQIiX=_$J3C^erhYN=iwH zONfutei|o@Y2KMDnGBKmEN8#(U3EuAB)+cxG`~QNs_fn|zswr_U{q0lS&gM{R5YMG z_1CHxb#Y}v%czp4v8vW|Z@FCR3DNa(H~UUslTk8*wx5gJuHLB53?pYbAk1A@U1QBF zsH`X|ErvBr_qDH~yw&$FYpQy=%tIYqGo$5l*2!gKha@@zlc69TB`}edVb3=;%)PYuKQ^o7 z*Q#Hzx^;f^z|5@C8T!jmFow|ag)~FQ7x28C=cO!9dnYNN<4(4rS@s5+y05(ItG+0i+Y1Z4vL|jER?W z#$k4QfE(Y9w3&nDa5ZwWht2n`jr0GBkq@zo-cQ<9PP@i=S2|umSa2Eh9?N@qkkS!y zq_h0&ZnZZJ?f8WnxmVbJmC1V0n;!D)6+LSZmEsp_RO%Y)N9EeYCN=KJ7ojpjhqlpb zp_R-U(yqlxBcP9mr#|TK+>+GFeJ}R^a(l@a&t_BdXkI+-A)!m84^Y~i-j6%kJ9E0Q?}mzQ zFx^*F*Q0~A-`mjeAzrqt?SHE#m(^pwbn9ep!D(-b_8`>lE2l_pnS zQ`u_5j1))V0_pR6b~g`RIgwvk$~uKN2K~O;h#=het9k}Zi~-uO@5wpf<_`bxkgweyNKgO!86V|rGmK;Y&K;bA{{6`92J<-X z+{ULJdF+MxlQN%9BXA6 zhEyCkX(?aUo=Vd?c+2UID{k@?jNP@P9&&^&#)Y{9QO{m(ChTRzkv>Ko9Av~EU5xlv z2*YA-1a~)J8%pbMRCr^65pNo3#J2|-anWES4jf{{-wrk6-={FlDx`f{CVAR-?xo}G ze<+Lbp5(oub@;Os-4Sm8yly559{|4Qg!bM0@>u`dVOc%fsH@(h)Sz8wF70TeMxEpq z>CE}%19?Y~tLr-tw+X!BETE8$M-7|3Ou0B@eP7N0S81|m&{kHN%~+i-q z2gT?~#dH?D z#B>fS(28DK+94^U<>30BI7$@V8~D!4vk%~@SN}9p>sKa4c!D#hY2<7A`qDO3;$d^O zLyUpYC-dGOYhGX)-wfI|s)Kv`#F!nW=3qA3q`Wp?&tMDeJl3vO;yCFLzq9i?($}qJ z#8y~b;!ck0_G$X&~MP2e`W1-IkV3jRzIEVcSt{ zSFqegyAmwBx4ggkH%ZG3l?SR@p64^8@;EEPG*`7lXXGgL*b6QCL?iD{0zOJUs?`sc zvsv~2I3aX3zZ6-Y=#|=$2jx||Vmt`lJy1MMn=nMq=qm2be&V;3?=Tbk{iUM*v@c&h z+!U>a*GpDC&V~ISeR%2JZ;dB;*ise_b6tm(C~n2YQe9nHElyHc>B{M@HP(FV!Wwa; z!b&t}xLYb}Eah{{EaG&9l^D*FYb|9qamd07*?dTn^UJHmQ41?%iy}!WsI0Eu&QDxe zA*-4sPjUdxqsLuw{K5)ZvLtyeE-$s_St=~m#dYE=h840BNpgjQaGq^$l9*Ol>BShx zogRkaWFcl4R>)E$$(^E=YzCkL*-%m+&OfCiEidDMqDV1xufZG?*R}j?O424^Is{A=qTpi=#PcI)4V<0 z6s38m%7=B&oCrc+?7R`pJadNDzYdqn+rLLzV;%0S=FJS%&eY+ImOF=&aJ+DdgFwf5 zF(#YvV8CDJBsMY^2{AKGqpuoWq|f#*83Unz=HAroBcw6*ohu#li>1xj@p?~rGgcB4 zx2J14@$w5T{a@RU9n*e?2uhoqEseJCY$9((wab+_UK-0?;Kr)$gB`u9Fx&=_n=tW) zfEFUJiO;2RW1|&M!y3+%BPHJtn(YH5`jVrSwp-fXpgmiM1JxaeA9i$Df?vTCM3Ym% zigS~PnQ$uLPP6;`o$Q}t0M;+3MWfGIhP*ez)YXn%kcVkM*Wt)yebsTkzTN~D3ytHx zorVPw`|5-jN0D8&Q^NP_)Az7?5s~nuYm?BP)km8ge#U&Zez#Q&JpZbEKHI;9xW; zI``KYz}IizdX$DJ4hT`ENm|`<>6U57>+#tAjo(}-^=UJnZ8AO%@Uc7lpP+l5 zPF#y>505CSRVP?O)KIIxEG8I!NMnU|{o3E&*lfQ*UdOxGT*aP(0%RgC_7M~ZFpPc@LiNW0jNrEmKqvv& zMgO=5t)NhB3#b8Li2kKLdKF+-Bs@R505B2}pUrlj&I&1s_+gq707jt!0!{!JNxq9< zsS02?8Ytl7RG0W;n)U$7A0k2Y+Az){SHM^1zefZ8h5O5Uv-iD=z z0EW;PZ4_4l3?|9{-3Fg)MRy<81pOz@Pa)_cpQ3ULgFhQx-ce9g#Zp)uV&`WO+dP(Nmmz#yTp$ zmCA9tsMa*#I#+8t;QIJg?#{lybrZ3H+S}p={I`mU$cb4&XmEE8%Hbyp11iDSdZECB$V4R)qiYWI;Vq7dI}}MxxOl;ea96B!+M!fJT*Y98#BC(`I|uBf6mdI)l{6{< zA3K&+F3PK|gjXju^GmD5Yb30s3x0lqkF~Vc!rzIkP1WlC&ynGTgAp;M{R(d?am5%!T-KWJ+-DV z`A@oL9%wH3yx~Xfz!Xtha>siWTOX27={j>j=hO#r$DLxN;Bcm6ijlMt9br}dvHqfd zdY=or&aR{Yu+N%r6c#4+=ppZyS@qL;{s)WB_W>4@#Uj98RNWfRVk0;*?3O(SoMdZ# z8pIA|A#NbSyy+0`=vM-TB<n=vOOe^_f?k1A5SD(J z@v||cd#9_Y1GUz6MWLH%J7~@Wkz12%eU0JVv>0K5v|_XId^sOfK0cMi|JU#>^UdFn zeVldMdf;U}+%E$IJvK$Gyl=Q)-;b&Phd#J(z+VnV_a?otRC_5)PS>N`EE4oVDx|+{ zUzR1txolBvm%34BStp7rfTFqHbXTnetyhHjQhIIjm zm0Uj@>*R)QT${ULa?S17G*J$1yH&0Rr8MoY!?nLm65iA=n-%G#q=8a7b;AiF!m0s9 z`-ofBhKNc9BBWU6yO1}`e^+*CKrSshiT-0!@Jh4!`3ZLWr`orpP>XQI$u4?c6AGYv_#Y0oVQZJwN;G t4QJ`=Tb!gj329Na%b#rwcO3snF7%Zua~-|EmY-{zf-At@{&Nds{~vdUiz)yB diff --git a/examples/data/dolfyn/test_data/Sig500_Echo_crop.nc b/examples/data/dolfyn/test_data/Sig500_Echo_crop.nc index ed7fbe512abfbb60e0eb13ab5b0886e879c78c16..80d4bca8102debdd8f354c834ead412eee9095c6 100644 GIT binary patch delta 15688 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 Ky4#7T$NvFSUSiJx delta 16254 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 diff --git a/examples/data/dolfyn/test_data/Sig500_Echo_earth2inst.nc b/examples/data/dolfyn/test_data/Sig500_Echo_earth2inst.nc index a5e0f5d7d7c84a382a9810bd5b7f2a7b6c36d409..b44b1d8caf58ecd5ecb01cdd3dd9cb674e6927e1 100644 GIT binary patch delta 15816 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 G<^KV`w=}Q- delta 16153 zcmaJ|30zi1*PprfvI-&~o2-JO1}KQ&E{ldcBH~6UB0MUIfbig!`XrfJsrh)*tEP!d z`ntR-Q9fpwX8FGQ)#s90X)b7Gi&>iGQkvhHnLGEn_ZHv$emrx}f6kmaGjrz5nYot@ zk9{^g^jQ&Zdn6)~66r5O<6>^2VFUW*3f}iy3egl42dQPL@$A7emgTRgxu<|IK?1^% z1eutC8en3n!BM6y$9Mc4Uncw| z8h9&*N#G{M`8nR+)PR)BfDR^{^FQUpY5Ry*h;tUuCq5GDD$o@2U&t5}O#B@0Xu`St zPA1%cA!}b-i@ayNf@-W zM7bQkhnVqvwS7$xukehiVU8CxfsbnfAKwIC$Z^(xgm?oJc!8Sp^6U&VPxihp1u#cj)sKdO*rR&!Gv?0QDO8zs<;0vDf8zF zu6Ui|8zsgl&tDQ_<%pr~U0S2HYLNS#y1RR;yScj`sV`z_4wDnbdV`RkvMFC|Yp=T_ zoqyxWd-A@y0j>BDeV~RWcLi4Gn>e{Vu)ub5HX|{*9kA!q%)9~pV77t97skA#{n|`k z%HxPF?Vpu8(T1Jt z?S{5`z|#PPNYwe_j`ktQm2f~L1+~zd7oUqpQwRra(_xUg_@9VIff78yw&x9*GWS#r zn(hftupLD~w&>TZZO}C@cmn&hktrxkzMOzk2nz^_gltXEs1)=Z(G!NCC1n1$PWDC- zMAg0s5yoqYU-n0Xi4ZuvUl+eR79$P5YpP2 zTDJx0BR6=0A#DZO#ecakK$!&S4{bs=qv6g%L?;}Elwmnx!7F^;c)LAL-k0bq+!f@;x#5b>9PAtRTrn^} z;t?0mb9O{6l{@Ce3iV^<@p*xASzeZH)f&c&(UpRr|7MLC0dufOg*ISRO!Px1Lgs%; za=qCSQ=2!KprqeKGm?T5dhOGjE#(@@%A8#5e(SqdL@i(iG~@(X{N;B#_O$&Q(eoqf zN*0nEMlPgMAJRMwJ(+n_trBD?(Z2`*GfO>+epU@uVVD`i%o}z z8$v#iq4k7_L!d3B|EeXvgm^*-s7IW{{(Z6Y?e-@LnRx@VL8p8PFjd_8N5?jPLo5)>WIwh`1xL>SE<<#-|cO|-3?)E z)oWNi`jCtfSXcmL9|#d|8`PVXz3BtP$VN;Wau`h}m17W+cP6*8>4$o~SK3KK#~(ju zIfbqf3vG)~G-MIso6i{Lpyw373x*kb4?nzyULtb^>mUTOJp9{t$Xx}<(fW(FvuP3e1hG*HYt25S}wcF2kpd;ylH0K1xYt!KelK)!pJ|u-)xp?PHz5NRq#g48vgM%=P zhoM=+S~M&&gSv(_Y;Y3>_vZA5bdS@|q``w3JRV={bgdi4)!<7F3*O*|4UP>lmkqwA z9T^n8yHY)(9MvsB+H-2jA9j1a;x!vbcxDhzNO6PZt8)tiPFfg=(Ajs+cgY$7yA#Tg zGxqt*d*_7-*J~BuN*pL{aI}xw^4&bPjk45!3u=z0 zEvF#*>`j(esP2aEtZmdt0-QEWYe}Y|c6&F$D^A&%FSfJSxx09QZxrnI=w_*#XB}e~ zRar954pUzJUUX4jxhb~M)F5k@tKos9S|)w9n!m5+T#YzO=gsNJ4wPy^N} zs1fPn1sj}Xw}(r~PtW~IJ~<>mI{HN>;cYd)sOG$(*XGHChVBlZ`Oe(>VSNV-ZUJ7! z4Xqy~&{~^WUHMk_Xyxcn5Td*?3wKi@Zi&5{tvV-WvkuQOMKAuS&8w{5el@?O=Df{? z^I5qTz5Hso-}8z>uWVxy`(mZ>kT3vZA`2 zEk2}{$!cTLt`%CW_9|oxtCFVXT;d&7qNd$?b-HK!y)|@MITit4*A!-0Jm^yNbd_wDz z_=cwIK!(#Gijn~^Ou;n#qhtb*AvPK?QaTIhP`cYuvIxjP8s|}RCMBcjGyE(AGKhIf z0&N8{obExC;X@!JXyi%Bt3Za(0EvG)Rj(0vX1&y~lI^%8w|G8>YX9Pjg+ym#zi{H^@w*uSJ`;pzK84ifMUpsVHgpLxY^^=!OX zZ+}}C$YTrAqcR){;51ZDgR3QOFaJ!maU@stXF(8f|< z(mEthR*e+$(>a#ZSPKcWlK2rEOHZ>30CwibY%KMsAhhpdDXOwg;ipY3seuNPO3SOQ z{IH27as(mCt+=qdqNcpW_iaXFN!WdxS^!gDDqF1C~<(D<833SkT|v_)3y$j>=DUx}Wi-NNFsisGq5zEoMM z4e&EA#opainIunNl+nSBfDl4tZlJ%CUJ zaR|C}V5pHkoo%E~{ilMzEGSf_bFND z)2(At{FIVODZP_ACM9<4T5rE7n5vOrD|>hI$MUA~Nc^4rVfhljqB3iAkElsSW!0AW zsA!-H%Q zULv2UjQ(f2qvbBu#SPcWj$--36%6gMmF`7x zgIN*IKr|$f2>s=p_uBTl`Emw}*(_TK z12FG~c$^CIZD$F2{k2TO&$iKiBU#tRP+4%nbR|Vdhk=V+68AiX0={~5gN3IEP78fK z6Gt$aURch~t_yXBUJNF`{ZG7WhfMK3B1CwSNQkCIa9D~^MjsLS9q}wtZ$E zzuZNv%##{1d0w=^>qqnWS}FPN z#4I@}zqjMn`S?Su*i(eaXzn1ny4*o>+UK6KAYY8CuX_cD(y0(uFa>Y~M%U>e9vgIj zDeLq(wU+N@VlT-F#~CX^_5EFE)7rk9)!M&d5c0cP0C2} zSZ}0fY%tQX8;$j2Zk{#*xlfGrHZQT>9*0?Acz7*q1+T+s66G8EzUKq;;3WKqaXFW6 zv)UhLQ-7up15Xw+w#8quywHy>E_7fp%azoWhpYsC?dzITC!%yZBDf2O*J{h4$oCD- z6nXcqXr4~rb*$9642EB5nPJx0cfFbG@TIeD*d@d|<<4x}NyuBnrgdUyk6#?WA0gAq zPpY);oNmF#=(G+vCVb3RLku5mt{@+4PQzH&+qc8jQKBn8$C`1xNt$n`n-xj;m^I^usU&)c(rWl?=xWWu4clj}z;fo+JP~LC`aN&$&nH)UisVF<3|RbCp2e6&$NUcu!WH> zY-yxN1{&#X?LvV`NQ*X>+d8&k0QZjBY5M0b=4wQMt27r~*53kq_;Smiz3s zYB6~X<$Zbg=5XVs0l1LCJv;Tp5_v~Pl8dFPs-lXY->^jHo+Q_5Ymv34nxEsa#EbwU zb4z)(W!l6t3qR6fDS}l&;tZRmObc8jGR!22Mbj#^@I{KE80^)>6;)OIn1>}c8gNjc zXI^@;=4U=Ev7W>A-mGb*)no@{t*B@++%|9n!crTxEq8kEh9YiD zSZd3QX#b&z@BdheRf{~>5I`A^1+dgk_TA$j%3}d6wO4svXIRRBF?OSzwkK#D-=47a zlv?gadJ7C%P$0#rCCznx0tSc@XaSbuRR%BhUZRj(h=3=R7ift`MeHR?9#nr&tHFk&a_j4FIJ$QeS70$Y`E})Vy0}A`mm#`0 z^mu10c0BJ5+lbwMJV9^lRbsfMA-7^uE!5+wV@}O$G=kV<#iOx2aeAb% z_4|4VtC`Qsti@%b^_1wSuf=VI9$b@7P+i}0qKQtT;_IT0?q%l>3Cj@&dn$D=2_8yR ziV*6t^982B1lfMDOxc$rbOe`o@As5@c6-|`OAhUIxV?y_y}|6DbLMSSUPT?%v~!Q}&>Qn*GjS0c;^Y0w!%CDyNnR zZ4Ik1ld^9*b$YFm@QN_eqcgc6hx8CE>M5l>QOs06Jt4TaU?vo-+M5;0KfM;x>5pcU z9?}=BuG}f1DPUtENGza2P*~^9Ok8VU_xywP_VeV0wMz?EvIJ>bK-rbF81eQht*$Sm|vJ%K(#HJUpB|rutHhn;Dq-0;tOpayYf>3*mii*ng5Hh|Gk985mZVW|g@LFD@amM#Hz80vBPuRIlSUZo8E z45kwj_b|$IH?gg9a)q!)3xtSDAWsYQo+kWg)4M?}9l;aFvPF z03Bd}dz@>OsHvC0^i(PX?mO0hA_TJ^+eu}~p+sdHfs*18QTE1aXia|V!V+KJKF&89l!KqcutfGYk~~>FMnv;N8J4h9$P;z;@@1Ehz^-#bJrNj28M}j5MO2>w3b=8tzBD%PM9T&ZvOP`0A;p zmHfp6mbhc_E-JQ`&alus>e9)h2PzOXjTMs5Ic-oeoY98Sey6wmrF?ZXoZ}Wc8LO1; zG2$L=$H}3Lhr4cE>v$L==DG{#8LI>AIv8teXuWlVCwc2nwH=)}M17y3wAsri!lacnc*kt)6=3dhyD%X^5^opnc> z>W-mxkG$%2lkB?Ck&w?d-6YuENO5g%<+pxfN?gwM*YDF^&1LLIAIwKtu!DsnF`r66 z;k7;4qKle$>cF%0_6u}Jb9C-6-WP&+6g3uj&o51H$3{avWj*`3b0c0x4%Qvyk9RKA zhJ?vqRhk}1j#|QdpDRa(itES;OJjM4su0uV)17qx7ref30FRF|Kw!J>2eaDOv%P=Z z7tSX8E1wP#jS=`bD(|&#NA*C zf2)TjzIRJx)x+%#<-$^y5payw zfYXk~d~v;7ecf-Y&sg;@->Qld*P{8NNmS8kwa@Hkok~#(rijl7sTWD7;5bMk+W1oO zuoCc4cu9){ra~>fuPLKa9t`;=#W7>5cxkHWau&(y!+Q|(^0%)^=&tW<(!Y`XMh+`W z^er%a#%}IS_mh+TS+Y*TAw( zmJX%)J?h%qpiQ6A@`~X-<@8~a|68%m4(V%jxvn+nzb0_|Dt+0fvFEoHjho zulLZ8X6s?N<68mndxamn>*1AWl_Bn8TB|Q-C;zO+_mj_DAl>$)0|pBo#r3GE(X-fI zC2IMv*cJMn9=^IpkdsFA@elsRVNiGJH;CdhpCn$<^M~D_xZmc#wrtnq*}?LH5ovxe zb+Se4;VU5&p0i`bKs{U@N?`xg>2>$@aCWRnhuUXt-aKlZFoM6rsF>14 zCz|Womq&=iT!YAq@&|98FpS{t@90d^vXGjfo%(uzJtY!zrDcbE@5&s$OoMq>VlAh6*?N1fS@(3ilgnYB*puTK=SLM`2G0pGfQlGYZ{JM%4wBFTIkKY`@ z`0w8JKc&ZqfTL{`%Gk3bb2bWB6oLC z`J+|0*D0eeiDQH(W0ZZD#9+Up^ov=93Pv#IWIxBnOJW0-mW6D2NwHrMV?}uLLqDkh z;)Y3@UJ5DYKb=ht;3LcMeL_nOAo&m z|HH19P8K>EzZK75{JrA+y*RkVgb!AxkY2Dj<_trnw*$wXPzt^mCknSGz{PN&(xOBN zWeza;2l2-w?%K&zpzcnL6QPwOTXfJ5^Of* zEWv5K2MeHrz6Z4?`URjn?rmJISF!EqNb$U__J@C31AH`P9H{QEXSROtWNyisd4GN$ OezBcn*=?~!^Zx^Yyi&3N diff --git a/examples/data/dolfyn/test_data/Sig500_Echo_inst2beam.nc b/examples/data/dolfyn/test_data/Sig500_Echo_inst2beam.nc index 711cdeff1356738621c2f34373056e1a1a3f285e..8e12197df1eabb54fa3488620079fdd50cb410c1 100644 GIT binary patch delta 15582 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 A6951J delta 15987 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 Lw@z6l`T6`GjIZ*$ delta 12179 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 N%jd5C&qy5t{|7g+y^#O_ diff --git a/examples/data/dolfyn/test_data/Sig_SkippedPings01.nc b/examples/data/dolfyn/test_data/Sig_SkippedPings01.nc index 2b2f0857c48a0fcfbd78134f9d1661eed891a57b..90b41d3c7a2bcec3e55080d3cb4c051f0b8212b4 100644 GIT binary patch delta 11541 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 delta 12138 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 KQNi-uN&g3BB2|t6 diff --git a/examples/data/dolfyn/test_data/VelEchoBT01_rotate_beam2inst.nc b/examples/data/dolfyn/test_data/VelEchoBT01_rotate_beam2inst.nc index 2462311e5a763f7613ccf192ca74ccea6280708e..6cefd020c8aa5d246e76f79d71841ed1dae48a3f 100644 GIT binary patch delta 22926 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 delta 22974 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 diff --git a/examples/data/dolfyn/test_data/dat_vm.mat b/examples/data/dolfyn/test_data/dat_vm.mat index ba8c80bda3290ec084d6c5cfa85a305fad35a77e..b71ba2a93a81b78b2d7b0f5419676bf062aad217 100644 GIT binary patch delta 245 zcmX@m!G55FeS(pQTWXSmk&%L-nU$%rm64%>k%5uP?7BN~( z?^(rI0AcM}$v9*Bmz9hO+s~|Ke8YrC_j<-O&gmiR8BL}u>||Uson;r}is@T+01X2X L+t=)3oWcnJL;hSD delta 257 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 L<6zpzf|UOQI5+LE literal 0 HcmV?d00001 diff --git a/examples/data/dolfyn/test_data/vector_data01_bin.nc b/examples/data/dolfyn/test_data/vector_data01_bin.nc index baa0dba0bbbeeaf81a1d921e463e4d83690b14da..a88effa0dd15c63948d22607b6215a866f69b266 100644 GIT binary patch delta 11125 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 delta 9421 zcmb6ed0dp$_I|@4iy*@`!zK>$6S7@2l6NIYx|7X6{#`THcbd4o$6 zc&gS6t4b1RiM$?hK?mDat3pB}1PUc!pLO`)GJBfS5D)1c*ccuHrCxEtp=9GTf;(I# zdjAljrcX|KxC~|BteFkxx<(ISG>;ru8K8q5x#QqP!vu=z>n;8Py8QF}jysGXM5AH6 z$I~}eSl}-2`JRMCe4^A={ zBQlor0pt{fcGZGr`8@F57&g>-&0*Oo1jYsCPjDkMRtUa_3q-%7MD(~$H?svCD>_12 z36bD%V2nzmvDy6KdSH^RTkXX|MX;p%yP2UTDAXs6MHFqH%P~w`;ma1S6lJr;z$Zc4 zdtc5Ibcww8Hc88vm6JuB35|%M6kQpc5F)5iBuYGxf9v|+;ao!)mlu&JSLYKb1G#ov z9vNpWrm{$`JWfU6+*&P|TZfF-QFB+kbV21=xnatFYH z;54ZNt^`LzL`ad84$UFa@O((LR0sVb>Czm~3{Q98>O@E|8P&e5%Vt~L&P5C?ia*t& z;}hfRM$vyQ@sL%M3{ItP6>UE40?04~nd^0Qx^f%FEFyfnF-$ZCb;KK~X%q}1KJ5t4 z<*+Y;d^*Gr!AJODW*l$b9OPlj;64flP~mcWmx6&5Avb^Og9wU{+qaaeC7F%CbuvWn zqbdm&8Qgt>9}x6aGMmR_I9Cx2u`RKX7?9`_^V6p(%H8nS90&`TGW3@x?WH2Tf1x=m z8y*OBpK_yHh}b4eOy`OS!9b0kF6fTQS*S(CfrXy1NpK@D>6zp($usq2$6n%2$<|)o z?{LXr7>zM1(fP5dkbv!fb~WZ?Wf087O!}`i&ySMS1PaG#+gX&d=2ThJq?OlSQln4R z<)*T_9G+`v#HrD@&Ze>^YxNe{ACelKtgflISpO-TE~!I>XyRnO&s1d4O^uC4uME}}73)%jLaT|?gj#ADDpo0^);O)ttxOj2X?4zXCvtV=DX zQXGJR>(p$j)t5ukgdlbAq^^1>n6SxfVnWiW>dGbK(vlLA5)&rarP0%!?2}S_TqCPS zi}6))axZ6{TXHkJ9`-J*&Wwdckpb{S`w*HFoWUHUlZL>%Q98*5w#Vq=*s-Q;7&9#F zSd-U)c*3n{oi~OEQnO(@mE_B%`f;iLOsYf^T%-;XqBYPK=?cc^04b1T7Ri|A=!wuA zsgXh%RvN+nlk{94-9vJZaV$r`9r$oQ3WEzrVVFk_l7{#wJ}UYTs2G!jrNwePgoh@|z?_mN^A5)6Gugf~ z?xezHDzQD%#b@Rq+Lb`i$7{pTXgL$yVRSJQ40GZ&4o=(`XaY)@!>2bFUWwPiH}M*u zdt`+;z0CXJQhWgDM-CaeXpk*9JGSPmp=gSSu#wz;sf>#+hbbdt!f=CB3U&uS;!R*4 z854xbwQ3NTp$qnnOmIW;z3}eHm`Rv!Ywutdh`K+(*E6$x%y&>hGfKzSJ)G4Itl^wc zk-!qN)`cdv5*J%{7(J<7hpLI6oMm@FqruQF^3AYs&HOmTlGKHcW)y^3iKB#BATyX2 z2Ryu#G?vMfu;(C{PH#P>&qy{lX3*!1(_U|8Z0xN|KDEX#`L(ZY zlRS3DCa;N(pWwM@N6Pw)N0VJF7blKM4ova>K0GDmfaiqwJfaP6{r2QtmUs_C<*4NG zeOsm#CckERa#H0($CC5v8j~O1n37zOFg@kdqb`%h zN~!-&m0tcTH74a^>fP)2r%{`DW4Mx9ds?~Xhcuh5l~sDG3ub6Br)b$6X!-6wKRp6!B1!t*v&4^cf`x2fVNOr9AHuSFQ8JSc2Qg#K>7TwEk^suy2g zmSoJCetRia6~Pse_$8vp6BzqhJ5Gc$3*hp7#-MpVR=k5S?$z49v!cATv+|Nza*WT?p+cbyx4(xT&fQCs)XcH)pNL^Jy7p}P(3xLRT-gp_^$@+t ztPz9Uh?{sI=E+fSy?MWvFyR`SFtwiDaWBCObV2@=gl346?(d75rVW@;HcJSy%kn(v zF`|aVhDgY*38rQ3vWJ{=aqdIe+=Zs^QIk#9bON-+2lc2)R76{@%xqy}v8;X|6Mo-4 zD-fB&s7mD)42KPMiJ=UWdO^^>Eo`)Z->X8JZ>d7nGq5YQpZB@f^EVsV{vgdIlDseN|df* zS&3|!{6*8Tr-f}_p=~p@Xxrv_I~_3~f+l3jqfrBk-zOh0{}6JC$3%XkIW<2_<0$Z%seC%UPXmHvceZ2d*SB}Z;LxG?DCi%FJrX-qyOWDdk6Od3NE$4|4W?h}UYK|`-l zL(jteMOKH$hV!u(X8z|#rN@jJaH>r9*aTOTkdObhHTWd@1Y^ydff-(w&%WL8LcKvx z$mx@#BUye_w7wPJt`>&vMZ-Fpm|^~9OMP(up?tuG*5&IV;qh{}Ve<83Ih=!dNL-Nt z`xdL&nIXR-xgyszGoURhfF3>`p_l2c#@p+^J78CNk?Q@X{S^&T5DFi`g}>STO^L9> zTY_Cx3*0`M&++6#Nbs=+h6IrcRguCG*&Vng?9i9|RW~=D88MV7mY-OXA^DTL!$;SVS|$jq4X$wgizt@+>pn9>aFP?GVq}-SLGlV!lpsyf#40LSo%~o>!;|`AQ+_pa{IX-i6;LFmb z7g~2JIet)b@aJj$Zyy%R!SrJo3R?(y;(8iCX2gckS_R&b;v5?WMmDug#R)P8E7zBL z^)`46m$I^U^;M;5MH$dyDFmO?5#bo{LK`9WMek2hvaWKlCL$|(qpjnwKQUHjuq#>B zDMaj-C3%FxxjHSZ^mcW!mMw*|T?zEY@3k=+@~tar)jA~G_=8ffL1a#+cckp*|xPw@yzx5bIv=%j*II4 z;plz$L*Xthr1=DcUi%dL1OSK3`_&H?b@oH!(sEU%PO-=AInC)(B08U4td-86#I2ff z^VuCrQ-02Z!^^m{W18g@CafpqLpRk4#>y;lAq(VG!Y?~&cCCT#fOUZ#Rn?=F^4fC5 z@Km_8E`J)@!t%S)7UspcKV9!0T>2UQEJhC;vk_|><6eVTmY1ty=<$_AQ^|EGXfZk} z4z_ial7$o1N3EG?Iw8mO@ZGvuW6_w|gNDrEI*)v?@Kd2&{J;Bi^BeTjQK&nwlPK=& z3i>ww9{+^3$hGIx6Q{+C^P4cUb&TrGxzN$7_0Z)6?G;`%iW4tEFGc`QVTmjH=&>7| zxtT5$Ej{_gufl9@qHp=itfm8}?Ou@E)}*?$L3XVDQrp8)9@@@MNab|diLHcZa#i~# zrdS82-~Sj#k~5+saBI8C_e_iDZW(6Xzdrc*b9kz?T=lnB`>oalNi$FN%n2r#wUEP0 zGvJF=tM#?wa;&}j{So@^nznTIM@Ypx?|t{lndt|6Z6y+XvBo-7W_&xp|3`bHONXT8 zM>l>t;bYdiza9n0{L<`+53iJ1vQceqx1U>kL$Y;iT*UfS$(4)SwGKXntfnW<8EFiw zAKPhA^0mvVu~=#v%B(f!dVLXHL5hB`!_G@t$2)4eOGULioxY@Zq8tl9%()w9=QwtS z4&pd=Wq6G7>Oy6NM;jRd?%I%278xJ>+~7*l@PZgO5W?qIy>yV<)7c|P(s_ySq(aOk zUmjD+F3%PmECH|vVV#+9dhZAWRuBSB2pWwr8jWz=8&@tsU+2I#NA{{hY~n!&*W=W>k(G^U)6TetVsw`hm4QTFmb^Od$W%QN&PFoZvfO^*}e=YPGN`8rrLKdHFMO$GWsP^pW`1laAUl`~$a)S<`2bAy~MQ zi8NrfB!T7$)-;_@i3h*;eSS%&@1Q=CKKPLcxpF1s1ch}3t6K5_<<>gBKa%e# z7)GLTushv)dcul6-oB*&ek4|g$dB|PnDC>Sq2ejCj$nyP(kbXqu(+K_=5R7rwfqk2 zN3ftJ9h4eOSh>TS_|%y3Yw1p#?Je+p#Y3|W9Vv4_*Van#-r20)bM;sx`0i~|-P}P> zUJG2?`2^tCBt;_2z^!tc23RZ?A(~Y~xs_(#I|ybsozsmC_b5edqn9z(&}AMsBr*az zEtA__>H8E;(i4>=Nf^l35ANwGe^dvk*3w z;*;p{vWQrGVSmiBskNP@w`2Yflf-7a-KPKFq_;ooS#9_1b5?ub z=oY5%|G*=zH+i8@dSs0xUU2!~Y;d{H_R!MdSBY(H_foqUJW7Jg1^JM_?^)=7#W)!Q zpWP?fq!Dfy1UFLnrzHnX%E13QXW&SRMBS8+H(W`C4}a9sPm}aH$-eKod8+>b5cQKq diff --git a/examples/data/dolfyn/test_data/vmdas01_wh.nc b/examples/data/dolfyn/test_data/vmdas01_wh.nc index 118d8d694f34b120331368b9cfb4b464f3a4eb33..a5dc8a5d8cac58f2d5c76b211a25c4ccc9628e68 100644 GIT binary patch delta 8956 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 bFPNq8Z!t;t0%@4mwzv0P>zF=(1o-_wJbvmH delta 8676 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 diff --git a/examples/data/dolfyn/test_data/winriver02.nc b/examples/data/dolfyn/test_data/winriver02.nc index efc7a18a38c4c097c2aba1331d5397d3a0c7a0fa..2954150440f253514bff32d503647d9b6252f7c6 100644 GIT binary patch delta 8387 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 delta 9114 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 AdH?_b diff --git a/examples/data/dolfyn/test_data/winriver02_rotate_ship2earth.nc b/examples/data/dolfyn/test_data/winriver02_rotate_ship2earth.nc index 7946bc2ab12d250c91587fd0f41e5908e1ad248b..5bebdeaf04aa166f39d676fe8db1906509e80d17 100644 GIT binary patch delta 8797 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 delta 9244 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 OiU_Z?pE60l{r?Y#5qGTs diff --git a/examples/data/loads/data_loads_hs.csv b/examples/data/loads/data_loads_hs.csv new file mode 100644 index 000000000..b8ce5a644 --- /dev/null +++ b/examples/data/loads/data_loads_hs.csv @@ -0,0 +1 @@ +0.40673,0.39674,0.38505,0.34103,0.32638,0.29334,0.27756,0.24314,0.27054,0.26734,0.28592,0.31243,0.31519,0.31382,0.31842,0.31164,0.32193,0.32552,0.41583,0.46097,0.5903,0.60056,0.59807,0.47145,0.39956,0.33174,0.30878,0.33933,0.36186,0.41105,0.44378,0.49995,0.51834,0.52657,0.51073,0.46741,0.44081,0.46335,0.47525,0.47893,0.48894,0.51576,0.60331,0.61833,0.60673,0.61081,0.61121,0.60853,0.61522,0.60616,0.60381,0.63214,0.67887,0.71968,0.71415,0.69092,0.66211,0.63839,0.63154,0.65849,0.69483,0.72356,0.76615,0.82743,0.88827,0.93331,0.90081,0.894,0.87774,0.82433,0.73227,0.65491,0.6163,0.59649,0.58346,0.57673,0.56418,0.55044,0.53679,0.58198,0.63923,0.64743,0.62527,0.61164,0.56818,0.51309,0.46352,0.42854,0.39806,0.37252,0.35187,0.3377,0.33475,0.32485,0.30345,0.33498,0.3467,0.45412,0.53758,0.59233,0.62677,0.63128,0.6151,0.60881,0.61632,0.63178,0.6215,0.6104,0.58496,0.5526,0.52883,0.52597,0.52455,0.50662,0.50277,0.52675,0.54616,0.5487,0.53767,0.52689,0.52976,0.53932,0.54713,0.52619,0.52608,0.55061,0.56468,0.57256,0.58781,0.62018,0.63852,0.66245,0.67892,0.83736,0.85744,0.88092,0.89095,0.88104,0.85173,0.7994,0.7424,0.70629,0.67639,0.65177,0.627,0.6044,0.57607,0.54327,0.54135,0.56728,0.60913,0.63919,0.68083,0.70501,0.73576,0.77201,0.7834,0.74204,0.66291,0.5664,0.46366,0.37836,0.3259,0.27394,0.23542,0.24537,0.24663,0.24022,0.24025,0.24,0.23742,0.2354,0.23343,0.2385,0.24571,0.24536,0.23821,0.22158,0.20448,0.20515,0.41876,0.47929,0.58691,0.63255,0.5803,0.58085,0.60698,0.74655,0.6665,0.60979,0.58847,0.51944,0.43965,0.34097,0.24883,0.18545,0.14767,0.2635,0.26328,0.2822,0.28477,0.28862,0.28959,0.30021,0.33952,0.39921,0.42238,0.39851,0.41218,0.44517,0.45562,0.46867,0.50943,0.57518,0.59805,0.5953,0.58549,0.56687,0.5268,0.49429,0.46146,0.4231,0.39399,0.36305,0.33316,0.30498,0.40989,0.39836,0.46113,0.55264,0.61511,0.68646,0.77185,0.83336,0.87335,0.90132,0.91426,0.92191,0.92799,0.93554,0.93019,0.92522,0.91571,0.9038,0.89454,0.89019,0.88369,0.88836,0.87286,0.87121,0.84946,0.83863,0.82845,0.79907,0.7885,0.76042,0.7265,0.71225,0.70995,0.71267,0.71283,0.70667,0.70081,0.69979,0.69624,0.69165,0.68591,0.65022,0.59043,0.5354,0.50241,0.49167,0.4852,0.4837,0.48811,0.48225,0.49138,0.5228,0.54825,0.55675,0.55419,0.55581,0.55111,0.55312,0.57888,0.60591,0.60527,0.63873,0.66838,0.68267,0.68221,0.70573,0.7388,0.76272,0.75589,0.74135,0.71775,0.71013,0.74698,0.7856,0.84754,0.88605,0.87995,0.82829,0.76947,0.6827,0.62436,0.59476,0.5708,0.562,0.54969,0.5462,0.53902,0.52336,0.49857,0.46568,0.46224,0.46892,0.46741,0.45807,0.45256,0.45099,0.46577,0.50494,0.55726,0.60723,0.60804,0.59856,0.5928,0.61181,0.63974,0.66241,0.68274,0.69135,0.68373,0.6577,0.61418,0.55408,0.4964,0.48831,0.59493,0.57295,0.54996,0.5426,0.49419,0.42202,0.36271,0.32241,0.29529,0.2825,0.28697,0.28562,0.27507,0.26195,0.27329,0.26555,0.27396,0.27648,0.26276,0.28643,0.33523,0.34191,0.34922,0.35234,0.35734,0.3963,0.43797,0.42066,0.54178,0.537,0.59658,0.6281,0.62202,0.58277,0.56071,0.50989,0.53804,0.59097,0.65242,0.68887,0.70726,0.69102,0.64384,0.6013,0.57454,0.5438,0.54043,0.5207,0.51263,0.5307,0.48783,0.41244,0.39817,0.43928,0.45743,0.52405,0.56666,0.57186,0.56147,0.56096,0.56096,0.55015,0.53381,0.50214,0.49797,0.50212,0.47292,0.38906,0.37538,0.33216,0.31557,0.30012,0.29388,0.39767,0.40925,0.41231,0.3862,0.33126,0.28576,0.41133,0.60993,0.71552,0.75755,0.86747,0.87923,0.80592,0.75449,0.78292,0.69966,0.49306,0.47129,0.50314,0.5328,0.53295,0.49863,0.44675,0.40748,0.39006,0.39012,0.39266,0.3987,0.39954,0.3798,0.35684,0.3686,0.47993,0.58463,0.63111,0.67614,0.73494,0.79819,0.83974,0.89531,0.82367,0.58512,0.40062,0.33343,0.2627,0.29187,0.37802,0.46351,0.50808,0.54568,0.56092,0.56168,0.56948,0.58197,0.59434,0.60414,0.629,0.6653,0.69675,0.73655,0.78725,0.8205,0.84364,0.90413,0.96808,0.99017,0.99166,0.99428,0.99784,1.0131,1.0198,1.015,1.008,1.0032,0.98912,0.96631,0.93623,0.89414,0.84712,0.83269,0.84003,0.85397,0.85946,0.86876,0.86435,0.85025,0.84138,0.84226,0.82936,0.77095,0.70134,0.63949,0.59137,0.54291,0.47542,0.42163,0.4163,0.41284,0.38784,0.36662,0.3472,0.3347,0.32909,0.37619,0.43334,0.43941,0.41252,0.38774,0.35096,0.30802,0.27308,0.24649,0.22004,0.1893,0.17295,0.16668,0.16941,0.16301,0.1749,0.26218,0.38784,0.42428,0.40865,0.47359,0.49346,0.49591,0.56495,0.69791,0.71544,0.68358,0.65463,0.60002,0.49985,0.38949,0.29809,0.23146,0.19269,0.18204,0.41799,0.38635,0.41841,0.5451,0.61934,0.74303,0.84224,0.89024,0.89356,0.89556,0.90128,0.92265,0.94137,0.96356,0.97632,0.98146,0.98522,0.97891,0.96812,0.95457,0.94929,0.96818,0.98323,0.9732,0.94255,0.89788,0.8658,0.84092,0.81822,0.77253,0.68512,0.60865,0.54436,0.48141,0.41663,0.35753,0.31627,0.28802,0.29878,0.35815,0.35068,0.32157,0.31388,0.31983,0.32868,0.35895,0.41613,0.429,0.4059,0.38642,0.36788,0.362,0.35433,0.3622,0.39634,0.39806,0.39058,0.40668,0.39367,0.34645,0.34939,0.34612,0.3701,0.3895,0.40066,0.40208,0.40786,0.42032,0.42706,0.44117,0.46291,0.47522,0.45585,0.45797,0.4849,0.53456,0.58725,0.63838,0.68846,0.71557,0.68387,0.67231,0.65479,0.64181,0.63276,0.61802,0.59098,0.56499,0.54311,0.53251,0.5422,0.55472,0.5597,0.56353,0.57143,0.5851,0.59313,0.59417,0.58823,0.57489,0.55048,0.5257,0.4999,0.47273,0.43603,0.42269,0.4392,0.50454,0.61927,0.75762,0.81382,0.84781,0.87772,0.89557,0.87012,0.82708,0.79875,0.8249,0.86675,0.88941,0.88789,0.90519,0.89723,0.88503,0.90871,0.92145,0.93499,0.92764,0.9045,0.86686,0.79374,0.68406,0.57755,0.53815,0.53718,0.51946,0.50192,0.49287,0.47047,0.42679,0.37764,0.33625,0.30796,0.29116,0.30087,0.3244,0.30648,0.33628,0.47777,0.51147,0.54114,0.57122,0.59788,0.63533,0.66811,0.69032,0.71458,0.70168,0.6844,0.67224,0.62459,0.55837,0.4811,0.42388,0.3623,0.32897,0.36704,0.38737,0.37422,0.39016,0.39221,0.3862,0.38158,0.38777,0.39397,0.39638,0.40768,0.44938,0.46059,0.45795,0.47849,0.57708,0.62231,0.62305,0.59326,0.58159,0.60867,0.64603,0.65832,0.67272,0.68658,0.67504,0.63211,0.59631,0.58334,0.57868,0.57977,0.56427,0.54664,0.53315,0.5204,0.50498,0.47763,0.44218,0.40055,0.37461,0.37811,0.3794,0.36561,0.35104,0.32894,0.31623,0.30682,0.29407,0.27589,0.25908,0.2512,0.24783,0.23923,0.22438,0.20728,0.18936,0.18261,0.32803,0.34324,0.37506,0.41388,0.4398,0.46229,0.52442,0.60068,0.6007,0.58644,0.58829,0.60519,0.61737,0.62911,0.66193,0.74138,0.82353,0.87168,0.92046,0.93377,0.93813,0.9475,0.96768,0.9642,0.91443,0.81482,0.70507,0.57841,0.46933,0.39191,0.3728,0.30912,0.246,0.22525,0.21723,0.21229,0.21861,0.23582,0.25915,0.32205,0.38561,0.40894,0.41898,0.42651,0.43117,0.43608,0.45499,0.46088,0.47998,0.46036,0.44689,0.46081,0.48939,0.51427,0.52456,0.50419,0.48519,0.4811,0.46123,0.43489,0.41994,0.41393,0.43677,0.4513,0.45,0.45311,0.44509,0.43515,0.41761,0.39147,0.36069,0.33547,0.31212,0.29984,0.29219,0.27168,0.25664,0.25103,0.2635,0.25527,0.26834,0.32126,0.34437,0.36391,0.39542,0.42709,0.43941,0.45082,0.47877,0.49243,0.46773,0.46016,0.4489,0.43141,0.42323,0.42344,0.45863,0.42386,0.41481,0.404,0.39168,0.39758,0.37944,0.35143,0.35745,0.36572,0.36889,0.38372,0.44177,0.45164,0.43314,0.43117,0.44318,0.44274,0.45698,0.48064,0.51373,0.5277,0.53086,0.53009,0.51023,0.48372,0.49583,0.5486,0.52623,0.52687,0.5246,0.50204,0.46256,0.42162,0.38497,0.36888,0.35343,0.31964,0.28588,0.25624,0.22449,0.20492,0.19145,0.17117,0.15276,0.14125,0.13315,0.13084,0.13547,0.13207,0.12949,0.12726,0.12181,0.1276,0.21919,0.16887,0.16348,0.144,0.13416,0.11535,0.10289,0.10412,0.11716,0.12348,0.11193,0.09877,0.09164,0.08919,0.08892,0.08805,0.09437,0.1134,0.13348,0.14215,0.19993,0.2021,0.26805,0.36349,0.39045,0.39581,0.3833,0.35593,0.30482,0.25723,0.23259,0.23718,0.25882,0.24781,0.25643,0.25908,0.27247,0.29663,0.29587,0.27487,0.25988,0.28433,0.28291,0.25666,0.2412,0.23523,0.23108,0.23194,0.24066,0.25094,0.25295,0.26324,0.26506,0.26796,0.28942,0.31754,0.3076,0.31816,0.30699,0.29488,0.28622,0.34154,0.39257,0.34873,0.34531,0.35106,0.34408,0.33102,0.43562,0.53254,0.48659,0.46386,0.45349,0.43424,0.39321,0.34236,0.28121,0.2281,0.18564,0.15431,0.37008,0.317,0.30927,0.30634,0.31963,0.4023,0.46791,0.45801,0.44858,0.44805,0.43287,0.41708,0.4538,0.57104,0.64739,0.65439,0.66097,0.66401,0.64798,0.61782,0.57991,0.5468,0.52635,0.50556,0.47502,0.45486,0.42268,0.4061,0.40948,0.41045,0.41407,0.39277,0.36882,0.36814,0.36434,0.36794,0.39401,0.44127,0.4323,0.42982,0.45618,0.48847,0.49054,0.50046,0.52162,0.56098,0.58584,0.58195,0.55088,0.52797,0.52431,0.55145,0.60233,0.66853,0.75518,0.75436,0.70967,0.68423,0.6412,0.61993,0.62692,0.6357,0.63159,0.59958,0.53841,0.50187,0.47535,0.46223,0.48485,0.53382,0.57975,0.5854,0.57618,0.55782,0.53051,0.51,0.51272,0.50814,0.48971,0.46406,0.42422,0.38983,0.37333,0.35954,0.39315,0.38687,0.36159,0.36229,0.364,0.38672,0.39276,0.39224,0.37814,0.37077,0.36803,0.36742,0.36256,0.35253,0.34228,0.32967,0.33083,0.3436,0.31119,0.29431,0.35462,0.32908,0.31019,0.3104,0.30805,0.30429,0.28519,0.25833,0.23403,0.2084,0.19238,0.18411,0.16854,0.1437,0.11847,0.09932,0.08694,0.07712,0.06854,0.06106,0.05982,0.05576,0.04934,0.05297,0.06451,0.09122,0.11797,0.11497,0.10117,0.3343,0.39155,0.49216,0.55891,0.61463,0.65836,0.71961,0.80299,0.83809,0.83837,0.81445,0.77539,0.77807,0.83431,0.89493,0.93244,0.92533,0.93679,0.95197,0.95239,0.9513,0.96362,0.97249,0.9652,0.94064,0.90632,0.87133,0.86431,0.87762,0.88351,0.92298,0.95054,0.94347,0.94468,0.94036,0.93357,0.93611,0.95049,0.96612,0.97129,0.9529,0.93409,0.91232,0.88503,0.85587,0.86048,0.88963,0.88924,0.85363,0.81752,0.78344,0.7587,0.75462,0.75913,0.76702,0.7363,0.6637,0.59624,0.5188,0.45432,0.4005,0.38004,0.37909,0.39277,0.36779,0.33045,0.29984,0.2695,0.24651,0.22379,0.20225,0.2033,0.20475,0.2241,0.22729,0.20564,0.18348,0.20886,0.36642,0.45148,0.44052,0.42088,0.4503,0.52661,0.54857,0.54076,0.53664,0.52002,0.50329,0.49216,0.48295,0.49118,0.50535,0.47492,0.44168,0.39752,0.34691,0.3151,0.29121,0.30114,0.37884,0.37403,0.35747,0.35117,0.33063,0.29901,0.26203,0.29124,0.36749,0.31971,0.30018,0.29681,0.28843,0.28713,0.26849,0.25019,0.25043,0.24299,0.23212,0.22422,0.22582,0.23452,0.24231,0.25056,0.27641,0.3234,0.33235,0.36287,0.39609,0.43088,0.4778,0.50299,0.56605,0.57664,0.55748,0.54214,0.53189,0.53421,0.54015,0.5528,0.58213,0.55886,0.51828,0.48644,0.46069,0.44194,0.44235,0.48407,0.51819,0.51454,0.53726,0.55816,0.56507,0.56733,0.57391,0.59044,0.62512,0.63892,0.62416,0.60041,0.57547,0.536,0.48513,0.44769,0.42568,0.40412,0.38873,0.36741,0.3535,0.34998,0.34176,0.31846,0.29369,0.27699,0.2522,0.23477,0.21952,0.21041,0.20555,0.20018,0.18962,0.17547,0.15481,0.13734,0.12728,0.12349,0.13018,0.1454,0.15763,0.16212,0.15231,0.15319,0.14975,0.15975,0.21016,0.28148,0.28935,0.26731,0.25332,0.24001,0.22172,0.19645,0.19194,0.19615,0.17466,0.16897,0.17253,0.16308,0.15439,0.15818,0.17076,0.22627,0.23726,0.19532,0.1849,0.17447,0.16466,0.16053,0.16546,0.20141,0.19214,0.16105,0.15782,0.17301,0.20366,0.23765,0.28002,0.3514,0.31335,0.28815,0.28092,0.27211,0.25711,0.24322,0.31655,0.27443,0.28796,0.28701,0.28184,0.29517,0.29365,0.29423,0.34131,0.36334,0.33061,0.29722,0.29216,0.29861,0.30068,0.29111,0.25355,0.22382,0.23915,0.25631,0.23385,0.23002,0.23629,0.24294,0.24875,0.23948,0.21793,0.19738,0.19363,0.19341,0.18914,0.18125,0.17319,0.16577,0.15363,0.13708,0.12499,0.12012,0.12265,0.12418,0.13099,0.21414,0.20353,0.16274,0.15601,0.15228,0.15826,0.20696,0.27745,0.30224,0.30572,0.32436,0.33554,0.32627,0.32002,0.3251,0.35185,0.35935,0.34605,0.33566,0.34139,0.34318,0.36415,0.38138,0.39873,0.42345,0.43825,0.45205,0.46084,0.47239,0.49,0.54233,0.56772,0.60261,0.60452,0.57552,0.53522,0.4975,0.44862,0.41987,0.41873,0.42551,0.40274,0.35804,0.32815,0.30092,0.28111,0.26323,0.25199,0.2622,0.24548,0.22713,0.2191,0.20767,0.18854,0.1593,0.12803,0.10393,0.08752,0.08538,0.07633,0.07049,0.07745,0.07944,0.08638,0.10291,0.10442,0.0959,0.09204,0.11971,0.13361,0.15177,0.16635,0.1725,0.20672,0.21495,0.22297,0.22985,0.23346,0.23714,0.25032,0.33363,0.34201,0.30261,0.28874,0.27461,0.25381,0.23269,0.20114,0.16546,0.15853,0.16726,0.1634,0.15873,0.15339,0.14224,0.13754,0.23255,0.19189,0.17538,0.16425,0.15106,0.1347,0.10732,0.09386,0.25632,0.19776,0.15912,0.14971,0.14651,0.148,0.12862,0.09346,0.08,0.11332,0.0945,0.12593,0.11214,0.09275,0.0878,0.09067,0.10037,0.09661,0.11802,0.16071,0.16832,0.16836,0.19864,0.25593,0.24732,0.2156,0.21829,0.24373,0.27682,0.30344,0.3001,0.27411,0.26411,0.26294,0.26587,0.28961,0.27887,0.28556,0.34087,0.37381,0.39871,0.40497,0.41053,0.43541,0.47438,0.5222,0.58596,0.6439,0.74473,0.81776,0.85229,0.84665,0.80303,0.78351,0.7943,0.7903,0.74678,0.69399,0.64801,0.6068,0.55938,0.50803,0.46501,0.42006,0.38839,0.36907,0.34862,0.32581,0.30609,0.28878,0.27107,0.25597,0.25051,0.24652,0.24448,0.27792,0.26613,0.24938,0.25733,0.31916,0.35983,0.3579,0.39134,0.37305,0.35732,0.36022,0.36948,0.36791,0.34837,0.32088,0.31218,0.3042,0.2922,0.2755,0.2545,0.24849,0.30296,0.29693,0.26996,0.25061,0.22843,0.20538,0.18528,0.16721,0.18672,0.26014,0.21159,0.19187,0.17857,0.15989,0.13906,0.11828,0.21151,0.23783,0.19726,0.17571,0.19068,0.19286,0.18586,0.1765,0.24176,0.25157,0.21753,0.20199,0.22186,0.22828,0.22852,0.22619,0.23034,0.22324,0.20254,0.187,0.17806,0.17204,0.17665,0.2015,0.23213,0.25674,0.27233,0.27752,0.2794,0.27883,0.28682,0.33134,0.35434,0.31781,0.29369,0.27391,0.25694,0.24379,0.22968,0.20936,0.17685,0.15001,0.1302,0.1091,0.09349,0.07984,0.07066,0.05898,0.05396,0.05681,0.0632,0.07745,0.08198,0.07493,0.06234,0.06423,0.09962,0.11628,0.32997,0.28636,0.32849,0.40459,0.46604,0.52618,0.57306,0.59945,0.60233,0.6287,0.6738,0.74015,0.85634,0.94409,0.98228,0.99013,1.006,1.0188,1.0233,1.0355,1.0405,1.0458,1.0432,1.0406,1.0402,1.0305,1.0147,0.98848,0.94343,0.8658,0.75034,0.64375,0.56356,0.51676,0.4869,0.45636,0.432,0.43598,0.41793,0.37959,0.36442,0.36439,0.36577,0.38684,0.43962,0.5257,0.56248,0.56641,0.58018,0.57004,0.55232,0.52949,0.52135,0.51156,0.46829,0.41034,0.37405,0.3363,0.29924,0.26188,0.24121,0.26677,0.2406,0.23376,0.23362,0.23359,0.23548,0.23703,0.2474,0.28329,0.3013,0.29211,0.30922,0.33912,0.36193,0.37486,0.41314,0.45198,0.46057,0.44451,0.44991,0.45129,0.44151,0.44048,0.4666,0.49677,0.51753,0.50485,0.49589,0.49639,0.48571,0.47144,0.46234,0.4631,0.46626,0.5064,0.51257,0.44525,0.39173,0.34941,0.30882,0.27294,0.24508,0.22857,0.22061,0.20956,0.1908,0.17029,0.15476,0.14933,0.14991,0.14283,0.14176,0.14137,0.13801,0.13892,0.14331,0.14603,0.15055,0.15159,0.15156,0.14925,0.14601,0.15208,0.16898,0.16734,0.15367,0.13745,0.13995,0.15999,0.19529,0.226,0.24471,0.24494,0.2397,0.23093,0.22338,0.22578,0.22245,0.21633,0.21448,0.21483,0.21877,0.38429,0.27646,0.27621,0.26028,0.25778,0.24581,0.22491,0.22217,0.21052,0.19498,0.18645,0.19364,0.20213,0.20976,0.20156,0.19651,0.19273,0.19022,0.18948,0.19075,0.19324,0.19557,0.19719,0.19884,0.20087,0.20426,0.21116,0.21718,0.223,0.22578,0.23022,0.23522,0.24463,0.2581,0.27214,0.29051,0.31811,0.35393,0.41364,0.41701,0.40454,0.39367,0.39485,0.41494,0.44416,0.44646,0.44288,0.4377,0.43617,0.44346,0.4587,0.45628,0.44353,0.42314,0.39726,0.37988,0.36368,0.34811,0.33171,0.31408,0.29596,0.27886,0.26577,0.26808,0.27795,0.28106,0.27321,0.27781,0.29161,0.31399,0.33349,0.33633,0.35925,0.36745,0.36972,0.39488,0.42494,0.45181,0.44186,0.4294,0.42648,0.43053,0.41405,0.40883,0.45148,0.4913,0.54261,0.54655,0.54271,0.55217,0.55883,0.56092,0.57281,0.5887,0.57161,0.55656,0.54575,0.53749,0.51882,0.50887,0.51993,0.54434,0.56332,0.53882,0.50585,0.4865,0.47791,0.47907,0.50827,0.49857,0.47224,0.45415,0.44797,0.43654,0.41796,0.39634,0.38243,0.40066,0.45804,0.44747,0.42169,0.39575,0.37795,0.36125,0.35236,0.36312,0.3807,0.36302,0.34226,0.32497,0.30599,0.28498,0.26542,0.26002,0.28488,0.25621,0.23793,0.22239,0.20684,0.20444,0.21613,0.25928,0.23243,0.21396,0.20654,0.20377,0.20021,0.19404,0.19093,0.18854,0.18695,0.18574,0.18469,0.18439,0.18457,0.1899,0.20468,0.21633,0.22159,0.22226,0.21666,0.20615,0.19599,0.18689,0.18044,0.1767,0.17458,0.17643,0.179,0.1828,0.18671,0.19564,0.22281,0.25606,0.28888,0.29068,0.29921,0.29802,0.28825,0.2967,0.32279,0.35125,0.37813,0.37502,0.3503,0.33676,0.33481,0.36885,0.42096,0.43325,0.43808,0.43231,0.39568,0.36785,0.34775,0.33648,0.35647,0.33914,0.33241,0.33325,0.32606,0.31013,0.31462,0.34749,0.4025,0.40124,0.36166,0.36164,0.35987,0.36583,0.36479,0.36965,0.39227,0.41208,0.41364,0.41274,0.40538,0.39046,0.38243,0.40408,0.47221,0.51021,0.52432,0.54249,0.53756,0.52319,0.53252,0.61625,0.71305,0.72257,0.6726,0.63073,0.59818,0.57482,0.56258,0.58965,0.62615,0.62857,0.61227,0.58488,0.55537,0.52353,0.49318,0.47266,0.463,0.45682,0.43756,0.40159,0.37038,0.34902,0.32998,0.31236,0.2948,0.2756,0.26252,0.26313,0.2704,0.27637,0.28472,0.28638,0.30578,0.30175,0.29534,0.30032,0.3054,0.30585,0.30943,0.3352,0.40138,0.42737,0.42147,0.42472,0.42997,0.43228,0.4331,0.43489,0.44968,0.47181,0.44283,0.40104,0.37179,0.34769,0.33086,0.31892,0.33928,0.38233,0.37176,0.35381,0.34074,0.33236,0.32382,0.31298,0.30426,0.29282,0.26774,0.24667,0.22491,0.20742,0.19354,0.18494,0.18607,0.19466,0.19923,0.20094,0.20112,0.1948,0.18377,0.18383,0.22286,0.32993,0.40582,0.42111,0.39648,0.37433,0.37326,0.38394,0.38842,0.37475,0.34776,0.32004,0.29953,0.29476,0.30245,0.29603,0.28356,0.28254,0.30417,0.32295,0.32656,0.31097,0.28362,0.25766,0.24959,0.26234,0.26362,0.2578,0.24817,0.23821,0.22621,0.21387,0.20729,0.21545,0.21545,0.21103,0.20381,0.19579,0.1909,0.19107,0.19586,0.20606,0.21777,0.22487,0.2268,0.227,0.40813,0.33192,0.35669,0.44221,0.51166,0.54633,0.54388,0.53598,0.55428,0.64908,0.77256,0.79772,0.77512,0.76738,0.79921,0.84114,0.87012,0.92156,0.94778,0.93534,0.91056,0.86251,0.81755,0.76778,0.70038,0.63458,0.58664,0.53436,0.48624,0.45407,0.43222,0.42235,0.42553,0.43827,0.45143,0.4606,0.45961,0.43657,0.40976,0.3821,0.35774,0.33815,0.32569,0.32257,0.32351,0.32123,0.31867,0.31502,0.30486,0.29058,0.27844,0.26488,0.24908,0.23708,0.22786,0.21996,0.21112,0.2016,0.19205,0.18348,0.17531,0.18052,0.24911,0.30554,0.27651,0.28302,0.32,0.34724,0.3771,0.40235,0.41016,0.42225,0.44638,0.48025,0.50326,0.49425,0.45754,0.447,0.43425,0.4199,0.41979,0.4585,0.49805,0.49984,0.46742,0.45588,0.44134,0.42281,0.41564,0.45591,0.51834,0.57355,0.56868,0.54653,0.53405,0.52464,0.53113,0.56402,0.58147,0.58111,0.5628,0.54243,0.52544,0.49445,0.46437,0.44119,0.42813,0.41744,0.39651,0.3609,0.33127,0.30004,0.27426,0.24461,0.22231,0.20635,0.19533,0.18594,0.17878,0.17302,0.17723,0.17219,0.17208,0.15461,0.14691,0.14105,0.13673,0.13577,0.15401,0.14702,0.14188,0.14618,0.18103,0.22587,0.27945,0.27225,0.27001,0.28537,0.27631,0.27136,0.268,0.26082,0.25652,0.25409,0.2478,0.24067,0.23789,0.24341,0.23827,0.22511,0.21232,0.19685,0.18484,0.17141,0.15643,0.14193,0.12994,0.13446,0.23434,0.49944,0.73151,0.83017,0.88421,0.91369,0.94369,0.95018,0.93955,0.92887,0.90996,0.89548,0.88812,0.90306,0.90469,0.90081,0.86649,0.81468,0.78361,0.76259,0.73938,0.719,0.67032,0.60327,0.54595,0.49554,0.45812,0.44296,0.44438,0.45248,0.43101,0.40747,0.38413,0.33591,0.31521,0.2861,0.25966,0.23289,0.21423,0.19056,0.17133,0.15524,0.14711,0.14116,0.1305,0.11899,0.10928,0.13685,0.17286,0.19288,0.27086,0.33079,0.3396,0.32469,0.33085,0.36468,0.46885,0.57996,0.6473,0.69441,0.75421,0.79764,0.83546,0.87206,0.92022,0.95571,0.95151,0.95102,0.95434,0.95433,0.94789,0.91772,0.84222,0.76121,0.67668,0.59444,0.52344,0.45148,0.38637,0.33538,0.30745,0.29631,0.31192,0.30867,0.31955,0.33382,0.36218,0.3784,0.38554,0.3825,0.36767,0.35809,0.36114,0.37112,0.37164,0.36823,0.39238,0.42596,0.42773,0.43995,0.44527,0.45321,0.47201,0.51309,0.6127,0.62225,0.62823,0.64077,0.6517,0.63683,0.6201,0.60304,0.57337,0.5181,0.48548,0.47811,0.45138,0.42967,0.419,0.42985,0.41594,0.40083,0.40036,0.41165,0.44595,0.49873,0.60827,0.68785,0.74919,0.8207,0.91129,0.91668,0.94872,0.97034,0.97912,1.0108,1.0225,1.0237,1.018,1.0186,1.0171,1.0232,1.0228,1.0243,1.0234,1.0224,1.0213,1.0207,1.0159,1.0172,1.0192,1.0216,1.0238,1.0247,1.021,1.0213,1.0239,1.0195,1.0148,1.0144,1.0121,1.0025,0.96617,0.92515,0.82908,0.72706,0.73006,0.74442,0.84755,0.92098,0.94847,0.91192,0.90822,0.92318,0.92419,0.90708,0.89881,0.86849,0.79647,0.72102,0.57819,0.42121,0.32473,0.26812,0.22633,0.19292,0.17143,0.17324,0.19528,0.29046,0.38657,0.45214,0.48077,0.48395,0.48267,0.49055,0.47207,0.45675,0.42838,0.39298,0.36339,0.34775,0.33532,0.31995,0.30708,0.29584,0.28269,0.26686,0.24448,0.24872,0.28481,0.36204,0.50519,0.61031,0.64085,0.71148,0.75865,0.7893,0.84537,0.8959,0.92131,0.93961,0.96536,0.99417,1.0025,0.99255,0.97632,0.96835,0.96737,0.9698,0.97171,0.97272,0.9661,0.9396,0.88624,0.79384,0.69012,0.61471,0.53301,0.46253,0.41701,0.37792,0.35823,0.35411,0.36181,0.37911,0.38833,0.40198,0.43664,0.47782,0.50041,0.53878,0.57913,0.6199,0.6408,0.67164,0.69799,0.69962,0.6872,0.6567,0.62198,0.59369,0.57343,0.55904,0.55132,0.54677,0.5535,0.59348,0.60421,0.57739,0.54818,0.53782,0.52744,0.51551,0.51272,0.51975,0.50896,0.49613,0.49327,0.5078,0.5375,0.54564,0.52729,0.49612,0.47683,0.49706,0.54265,0.5792,0.62033,0.65941,0.69156,0.70379,0.67715,0.61384,0.53399,0.47498,0.42968,0.37694,0.32398,0.28653,0.26789,0.26312,0.29219,0.33274,0.41416,0.53094,0.58017,0.60773,0.67452,0.76475,0.80468,0.82433,0.86056,0.90746,0.92492,0.92738,0.93429,0.94547,0.96232,0.97352,0.98346,0.99042,0.99694,0.99202,0.98763,0.98532,0.98455,0.97745,0.9602,0.9357,0.90264,0.87095,0.84295,0.80941,0.77391,0.76731,0.8037,0.80387,0.81227,0.83813,0.86521,0.87734,0.89065,0.94214,0.99744,1.0057,0.97904,0.95686,0.93541,0.89639,0.83487,0.78169,0.73427,0.67771,0.60231,0.53561,0.48284,0.44029,0.41479,0.42127,0.43324,0.46259,0.4669,0.45381,0.42811,0.37819,0.32605,0.28766,0.26137,0.24108,0.22245,0.2081,0.26127,0.32467,0.35444,0.4005,0.51374,0.61872,0.64255,0.64304,0.61794,0.60859,0.60113,0.57931,0.55381,0.52027,0.46588,0.42806,0.41521,0.40184,0.38476,0.36557,0.33968,0.31369,0.29546,0.27951,0.26289,0.25023,0.24006,0.23028,0.22258,0.21577,0.20901,0.20359,0.19823,0.19373,0.18817,0.17163,0.14899,0.27196,0.25847,0.31496,0.33629,0.3447,0.34482,0.32622,0.30643,0.27012,0.24184,0.22212,0.20034,0.25407,0.2394,0.22853,0.30462,0.41677,0.42321,0.39458,0.39991,0.42995,0.45496,0.49812,0.54789,0.56286,0.5476,0.51446,0.53115,0.56496,0.62032,0.65171,0.65213,0.63384,0.61309,0.59549,0.58196,0.57354,0.57513,0.58817,0.58598,0.57685,0.56895,0.55483,0.50905,0.44607,0.38394,0.34978,0.36157,0.40069,0.3779,0.39468,0.47222,0.59336,0.75576,0.89444,0.95942,0.97568,0.97263,0.96141,0.94205,0.89786,0.81967,0.72177,0.62596,0.55388,0.51509,0.47923,0.43491,0.39343,0.35593,0.32291,0.29846,0.38297,0.41405,0.40259,0.40684,0.40241,0.41341,0.4299,0.45945,0.50006,0.53295,0.5403,0.47626,0.46506,0.56831,0.58593,0.54371,0.57042,0.7453,0.85283,0.88342,0.8924,0.88734,0.86459,0.83605,0.80206,0.77107,0.73967,0.71636,0.68733,0.66374,0.64278,0.61459,0.59728,0.58667,0.59004,0.60028,0.60798,0.61248,0.6079,0.60611,0.6116,0.62177,0.63135,0.6368,0.63539,0.62617,0.60747,0.57826,0.54508,0.51396,0.51299,0.52592,0.54078,0.54536,0.53604,0.52065,0.50344,0.4801,0.45791,0.45514,0.4498,0.43502,0.41389,0.38592,0.36295,0.35438,0.37494,0.41077,0.42943,0.42454,0.41431,0.40282,0.3969,0.39186,0.38187,0.37128,0.34233,0.29912,0.2621,0.24422,0.24701,0.26221,0.27289,0.26995,0.26468,0.29075,0.29161,0.31882,0.41623,0.48356,0.47998,0.4786,0.49971,0.52487,0.54632,0.60511,0.65527,0.68798,0.70416,0.69647,0.77355,0.86469,0.87287,0.84503,0.77912,0.70416,0.65119,0.61242,0.57349,0.54077,0.50981,0.4847,0.46292,0.43833,0.4137,0.39067,0.36941,0.34269,0.31562,0.29022,0.26718,0.24515,0.22461,0.21914,0.22217,0.23742,0.28971,0.33488,0.36019,0.38259,0.4091,0.45686,0.49339,0.51266,0.51596,0.5143,0.51096,0.50609,0.49287,0.48222,0.48213,0.49419,0.52563,0.56388,0.57679,0.59899,0.61112,0.65982,0.72769,0.7535,0.77316,0.7905,0.81624,0.84644,0.87438,0.89991,0.89137,0.85834,0.84262,0.85271,0.87706,0.88015,0.86863,0.85091,0.82473,0.78236,0.74874,0.71902,0.67909,0.63385,0.60659,0.58227,0.5566,0.53078,0.50499,0.47413,0.44186,0.40875,0.37081,0.32857,0.29809,0.32312,0.34106,0.35907,0.43202,0.51181,0.57149,0.61536,0.66345,0.71767,0.7621,0.79564,0.81931,0.8402,0.84838,0.85153,0.8417,0.83094,0.82318,0.82083,0.80905,0.77821,0.74407,0.73121,0.74906,0.76536,0.76407,0.76364,0.75601,0.7437,0.76829,0.7631,0.69719,0.62582,0.59315,0.54962,0.49911,0.46607,0.43783,0.41526,0.39228,0.36281,0.36519,0.31966,0.32173,0.31937,0.31248,0.30487,0.29137,0.27837,0.27183,0.27501,0.27305,0.26633,0.2583,0.24662,0.24734,0.26353,0.25087,0.24982,0.25278,0.2672,0.27228,0.28419,0.30241,0.33573,0.3473,0.34022,0.3522,0.37489,0.37557,0.38776,0.4069,0.40824,0.39473,0.367,0.3358,0.31725,0.3106,0.30815,0.3103,0.31884,0.32946,0.3383,0.34339,0.34805,0.35407,0.34703,0.32999,0.31008,0.29093,0.2754,0.25144,0.22767,0.2617,0.2582,0.22377,0.19769,0.21859,0.24447,0.23223,0.24082,0.27685,0.29322,0.28198,0.27543,0.27131,0.26216,0.25579,0.26509,0.26004,0.22525,0.20169,0.1953,0.1987,0.42362,0.39567,0.43746,0.50878,0.58491,0.67324,0.73813,0.90905,0.96743,0.9725,0.97564,0.99359,0.99421,1.001,1.0068,1.0136,1.0117,1.0046,0.9953,0.97177,0.90826,0.78769,0.65912,0.55624,0.49321,0.47766,0.48554,0.50497,0.52529,0.5492,0.5778,0.6363,0.72202,0.79965,0.80715,0.78387,0.77515,0.76353,0.7233,0.66364,0.63996,0.6479,0.63704,0.61815,0.62631,0.65337,0.69595,0.78486,0.80918,0.786,0.74661,0.69202,0.64409,0.60236,0.56102,0.52926,0.52437,0.49834,0.44901,0.4083,0.37177,0.35343,0.34659,0.42006,0.48964,0.4972,0.48775,0.48649,0.45862,0.41056,0.33421,0.29838,0.39215,0.41897,0.50164,0.55018,0.58297,0.63512,0.65859,0.83977,0.95402,0.99333,0.98872,0.99892,1.0014,0.99194,0.98221,0.96883,0.95061,0.9161,0.85532,0.73464,0.59801,0.57063,0.6151,0.85787,0.89342,0.95517,0.99183,1.0058,1.0104,1.0149,1.0231,1.0238,1.0247,1.023,1.0112,1.0055,1.001,1.0009,0.99396,1.0068,1.0157,1.0159,1.0112,1.0135,1.0106,1.0212,1.038,1.0495,1.0554,1.0536,1.0475,1.0506,1.0481,1.0468,1.0454,1.0476,1.0464,1.0457,1.0421,1.0401,1.0373,1.0331,1.0298,1.0279,1.0248,1.0207,1.012,1.0101,1.0076,1.0029,0.99576,0.99734,0.99889,0.99741,0.98038,0.93857,0.90342,0.86097,0.82792,0.78101,0.73324,0.68227,0.63621,0.56478,0.48027,0.41306,0.36037,0.31571,0.26411,0.23422,0.21618,0.21315,0.21108,0.20882,0.19822,0.20278,0.21103,0.22779,0.23708,0.25149,0.26052,0.26185,0.25994,0.25979,0.25629,0.25816,0.26957,0.27494,0.27667,0.28283,0.28928,0.2763,0.25747,0.24459,0.237,0.24341,0.34426,0.34795,0.34876,0.37555,0.40995,0.4499,0.48552,0.50823,0.52224,0.51738,0.50369,0.47875,0.4613,0.4609,0.46403,0.45232,0.45017,0.44518,0.43498,0.41174,0.39036,0.38424,0.38498,0.38644,0.38379,0.37446,0.36224,0.34822,0.33907,0.35472,0.34034,0.32517,0.32928,0.33068,0.32908,0.33298,0.34889,0.37805,0.38271,0.37795,0.37557,0.35977,0.33128,0.31001,0.30196,0.31702,0.34985,0.37444,0.39885,0.42204,0.44106,0.45311,0.46499,0.48079,0.49497,0.51376,0.51941,0.52311,0.51458,0.49882,0.48648,0.49959,0.51453,0.52144,0.52321,0.53131,0.526,0.51296,0.53241,0.57062,0.60545,0.63503,0.65082,0.6547,0.64083,0.62842,0.6589,0.68186,0.68725,0.62898,0.51895,0.41033,0.31999,0.26182,0.22311,0.19848,0.17748,0.16031,0.14581,0.13605,0.12885,0.12786,0.1329,0.13762,0.13621,0.13564,0.20155,0.27587,0.25213,0.24648,0.27886,0.32506,0.34569,0.36201,0.37963,0.44043,0.48736,0.56755,0.67466,0.77335,0.8191,0.83321,0.8393,0.8416,0.834,0.8112,0.77716,0.74161,0.70962,0.6711,0.62639,0.57916,0.54108,0.51212,0.47895,0.46206,0.45443,0.46462,0.49876,0.52921,0.54155,0.54874,0.59241,0.64735,0.66754,0.67,0.67568,0.67254,0.65184,0.60257,0.56336,0.53312,0.51475,0.50899,0.51022,0.53078,0.55003,0.50004,0.40571,0.34655,0.34482,0.41108,0.45091,0.46651,0.47347,0.46555,0.45588,0.45645,0.46014,0.4841,0.50433,0.5172,0.5239,0.53006,0.52641,0.50004,0.43504,0.36608,0.34854,0.32898,0.33672,0.38402,0.42506,0.44499,0.46845,0.48642,0.48891,0.48213,0.49447,0.53201,0.60551,0.65058,0.62054,0.54981,0.48841,0.50422,0.56915,0.6307,0.63005,0.59728,0.5384,0.48117,0.40018,0.35502,0.33495,0.31782,0.30197,0.29214,0.28604,0.29692,0.30867,0.3284,0.33666,0.36076,0.3758,0.40556,0.41326,0.40216,0.38036,0.37514,0.47986,0.83624,0.99295,0.97737,1.0016,1.0077,1.0002,0.94146,0.79766,0.67494,0.67733,0.53391,0.38512,0.28356,0.2042,0.16106,0.19629,0.18394,0.1566,0.13302,0.14878,0.20486,0.262,0.28832,0.31507,0.34323,0.37465,0.43243,0.47028,0.51554,0.56073,0.59821,0.64674,0.70118,0.76339,0.85578,0.94649,0.98892,1.0012,1.0058,1.0184,1.0275,1.0256,1.0152,0.99635,0.97522,0.95555,0.93656,0.92105,0.92021,0.93248,0.94302,0.93085,0.93373,0.9521,0.96747,0.9926,1.0184,1.0218,1.0168,1.0154,1.0189,1.0135,1.0118,1.0129,1.015,1.017,1.0104,0.99063,0.96962,0.92458,0.82729,0.74336,0.68015,0.65563,0.66352,0.63339,0.57963,0.51821,0.46792,0.45059,0.46031,0.48075,0.48775,0.45427,0.41763,0.38941,0.36076,0.32794,0.30135,0.28114,0.29528,0.26618,0.24774,0.24107,0.24144,0.33551,0.33773,0.45297,0.48642,0.46651,0.46929,0.52044,0.57191,0.66102,0.81885,0.88603,0.91649,0.92041,0.93329,0.92869,0.90102,0.87512,0.86065,0.85335,0.84887,0.80076,0.71889,0.64633,0.56738,0.49175,0.43237,0.42955,0.47297,0.52227,0.56613,0.63025,0.68408,0.74751,0.85609,0.90168,0.92807,0.92973,0.93524,0.95807,0.96921,0.97096,0.97781,0.98575,0.98952,0.98227,0.97677,0.97045,0.96231,0.95215,0.93487,0.90436,0.87036,0.83823,0.83113,0.82885,0.78869,0.76033,0.81555,0.88377,0.92592,0.91744,0.90144,0.90452,0.93015,0.96945,0.98773,0.98954,0.98415,0.96328,0.93705,0.8811,0.83334,0.79473,0.79961,0.81192,0.8435,0.81711,0.76867,0.71311,0.6548,0.58692,0.57557,0.61184,0.63641,0.59661,0.57073,0.55217,0.52888,0.51841,0.59516,0.65688,0.66162,0.63081,0.58016,0.53134,0.50084,0.50139,0.5609,0.62938,0.67867,0.66675,0.6683,0.67423,0.65421,0.64826,0.74306,0.89255,0.94101,0.95164,0.96906,0.98281,0.99209,1.0113,1.0171,1.0193,1.0194,1.0138,1.0133,1.0125,1.0074,1.0053,0.99604,0.98678,0.9806,0.94375,0.8943,0.83355,0.76511,0.69834,0.65911,0.64902,0.63616,0.5896,0.52615,0.4837,0.4402,0.3787,0.32881,0.31222,0.39289,0.37663,0.3596,0.33288,0.29619,0.26595,0.24243,0.21149,0.22263,0.25758,0.26874,0.26328,0.25532,0.23769,0.20438,0.16132,0.14599,0.15067,0.15013,0.14273,0.13652,0.13856,0.1639,0.27281,0.26994,0.31679,0.41879,0.55001,0.62792,0.63638,0.612,0.60382,0.60693,0.58651,0.52244,0.46469,0.41827,0.37425,0.3301,0.29291,0.27925,0.30132,0.31816,0.30463,0.25556,0.31645,0.36252,0.37331,0.37439,0.41848,0.46138,0.45209,0.42828,0.41654,0.46365,0.54159,0.59423,0.58361,0.56679,0.54218,0.5258,0.52791,0.59249,0.69365,0.7057,0.66461,0.61985,0.58066,0.5448,0.52601,0.52493,0.53021,0.53217,0.49901,0.46452,0.4356,0.40502,0.35931,0.32136,0.28766,0.26602,0.2563,0.23534,0.21679,0.21093,0.19897,0.18901,0.17721,0.18064,0.20936,0.18794,0.17835,0.15086,0.12,0.0963,0.08422,0.0755,0.06782,0.1044,0.32067,0.37896,0.48569,0.63989,0.70028,0.75816,0.75584,0.70279,0.66204,0.64772,0.64951,0.65032,0.66191,0.68299,0.62098,0.57259,0.53511,0.49826,0.45876,0.41949,0.39849,0.42654,0.42519,0.41058,0.40504,0.40398,0.40362,0.43394,0.48463,0.53436,0.53789,0.55281,0.61983,0.70371,0.74864,0.77942,0.80603,0.8075,0.78862,0.74922,0.70731,0.66903,0.61641,0.55344,0.50222,0.46315,0.46048,0.47439,0.48309,0.50355,0.54464,0.55184,0.5591,0.55272,0.53301,0.5145,0.49705,0.47813,0.4387,0.40467,0.40968,0.41259,0.41951,0.36427,0.32713,0.30039,0.29326,0.30704,0.35554,0.41293,0.43508,0.44794,0.45756,0.44854,0.44022,0.4424,0.45674,0.48384,0.49851,0.49149,0.46166,0.43078,0.38985,0.35907,0.3204,0.27917,0.28037,0.26902,0.24537,0.23377,0.23687,0.24817,0.24451,0.23799,0.22645,0.22052,0.22035,0.22403,0.33629,0.23952,0.1817,0.17883,0.17934,0.17716,0.16408,0.16176,0.30003,0.24258,0.18723,0.18256,0.17639,0.15572,0.14103,0.21605,0.42363,0.34902,0.29806,0.28433,0.28839,0.27843,0.29371,0.37983,0.40218,0.37634,0.35839,0.36758,0.37199,0.38335,0.42766,0.49548,0.51854,0.47854,0.4534,0.44155,0.42598,0.4337,0.42598,0.49289,0.52399,0.46765,0.44327,0.42506,0.39645,0.35331,0.31243,0.2763,0.26709,0.28207,0.29679,0.28281,0.25313,0.34725,0.35465,0.55629,0.72623,0.7272,0.66899,0.61772,0.58679,0.60111,0.66977,0.76744,0.81851,0.81915,0.82401,0.82562,0.81629,0.82215,0.85507,0.8975,0.92239,0.91701,0.9041,0.88839,0.86576,0.86144,0.88241,0.94039,0.97944,0.97345,0.97377,0.97985,0.98151,0.99097,1.0021,1.0126,1.0137,1.0068,0.99908,0.9892,0.97865,0.96556,0.94187,0.8873,0.80103,0.71219,0.65278,0.59413,0.53992,0.50199,0.49628,0.49493,0.4943,0.48653,0.46929,0.44787,0.42284,0.3937,0.36274,0.33715,0.353,0.36059,0.34324,0.32516,0.3133,0.29647,0.27719,0.25027,0.22547,0.25394,0.26612,0.26784,0.27433,0.29242,0.30666,0.3076,0.30685,0.31171,0.32821,0.32616,0.31938,0.32498,0.37956,0.46299,0.51084,0.51428,0.53732,0.54871,0.54294,0.56191,0.6191,0.67107,0.68587,0.69485,0.68992,0.69038,0.69737,0.71562,0.73182,0.76009,0.7609,0.71833,0.68234,0.63914,0.61415,0.60664,0.61651,0.67602,0.73247,0.73244,0.73799,0.73663,0.75089,0.78705,0.82286,0.85845,0.86185,0.82878,0.77644,0.69539,0.62901,0.60125,0.60737,0.5858,0.55503,0.53396,0.50475,0.45829,0.4057,0.35884,0.34423,0.343,0.3286,0.31883,0.31725,0.3228,0.30576,0.27832,0.23612,0.21775,0.19973,0.21213,0.2241,0.19798,0.1939,0.19334,0.19346,0.1862,0.19334,0.21689,0.21301,0.23117,0.24356,0.26771,0.26069,0.23931,0.2276,0.22459,0.22523,0.21674,0.24505,0.36559,0.39944,0.41125,0.37462,0.36638,0.34434,0.31422,0.33024,0.3846,0.41473,0.4244,0.44412,0.4534,0.45138,0.48684,0.57253,0.63538,0.65222,0.66526,0.67682,0.6731,0.65404,0.66674,0.73149,0.79204,0.78992,0.73334,0.68881,0.66036,0.6278,0.59234,0.59865,0.63568,0.64155,0.59524,0.54708,0.50332,0.45466,0.40341,0.35646,0.33618,0.36665,0.34774,0.31418,0.30458,0.27927,0.24327,0.21225,0.18257,0.1598,0.14253,0.12651,0.11245,0.09851,0.08906,0.09187,0.08427,0.11466,0.36646,0.23338,0.23955,0.22118,0.21375,0.22182,0.23755,0.23201,0.23378,0.23772,0.23374,0.22451,0.21588,0.20759,0.1965,0.1954,0.20202,0.20102,0.18967,0.17758,0.17041,0.16405,0.15863,0.15425,0.15014,0.15058,0.17401,0.18869,0.19971,0.20742,0.20694,0.2186,0.22014,0.19693,0.20554,0.2052,0.20607,0.20358,0.25279,0.31813,0.2939,0.28688,0.29658,0.29346,0.28848,0.33797,0.39226,0.4528,0.46014,0.44001,0.41948,0.39839,0.38291,0.36414,0.3384,0.31233,0.29145,0.29073,0.29068,0.28615,0.2855,0.29162,0.30246,0.3116,0.31871,0.31312,0.29152,0.26056,0.22653,0.20366,0.20487,0.21263,0.20421,0.20825,0.21112,0.20342,0.19383,0.18972,0.19237,0.20346,0.21684,0.27861,0.29006,0.29379,0.34057,0.38261,0.57473,0.77845,0.87083,0.86804,0.87037,0.88027,0.91351,0.96973,0.98318,0.98287,0.96228,0.91464,0.87836,0.84654,0.79165,0.70217,0.6665,0.67537,0.65451,0.62201,0.60053,0.58218,0.56278,0.54697,0.54392,0.55939,0.55149,0.53203,0.5237,0.51329,0.52428,0.55149,0.57206,0.55897,0.50897,0.43531,0.39054,0.37011,0.348,0.31421,0.28241,0.25966,0.2394,0.22354,0.21106,0.20717,0.20566,0.20278,0.19785,0.19796,0.20133,0.19936,0.1961,0.19194,0.18906,0.19919,0.25062,0.33346,0.31094,0.28994,0.29941,0.30511,0.30706,0.3257,0.377,0.42004,0.42757,0.42186,0.40572,0.38711,0.36172,0.34387,0.34378,0.36177,0.36316,0.33441,0.32506,0.31579,0.29896,0.2757,0.26411,0.32712,0.26225,0.26039,0.26371,0.26126,0.24405,0.22277,0.22216,0.30387,0.29526,0.26884,0.26012,0.26271,0.25589,0.2345,0.23282,0.26336,0.28785,0.28129,0.27617,0.28552,0.29109,0.29343,0.31016,0.36272,0.35417,0.3205,0.30877,0.29131,0.27498,0.25351,0.26651,0.2934,0.27395,0.25974,0.26053,0.25812,0.24882,0.23111,0.22646,0.25803,0.23787,0.2391,0.2314,0.21713,0.18514,0.15845,0.14645,0.1586,0.18909,0.17228,0.17002,0.17287,0.1694,0.16331,0.14451,0.12915,0.10983,0.11215,0.13959,0.13359,0.13901,0.12903,0.11264,0.10951,0.1667,0.18673,0.17441,0.15808,0.15921,0.17975,0.24659,0.24529,0.22779,0.22381,0.22865,0.22317,0.20788,0.2138,0.22883,0.23332,0.2284,0.21935,0.21824,0.21149,0.19763,0.17736,0.1499,0.16654,0.21988,0.20064,0.19437,0.18676,0.17359,0.15567,0.14906,0.20429,0.18294,0.18018,0.17882,0.17072,0.15775,0.14921,0.15291,0.16969,0.18105,0.22313,0.24668,0.26544,0.2624,0.30391,0.34176,0.32936,0.33569,0.3154,0.29652,0.27431,0.2754,0.3629,0.38045,0.42007,0.45783,0.5185,0.54266,0.57376,0.61932,0.69444,0.78133,0.80214,0.75191,0.70502,0.66067,0.61292,0.58232,0.5828,0.63324,0.65847,0.63128,0.60891,0.59272,0.571,0.55028,0.53238,0.53845,0.53965,0.51986,0.49861,0.49292,0.49562,0.49566,0.4945,0.5088,0.49117,0.45755,0.42746,0.40356,0.38327,0.36897,0.37417,0.3882,0.37117,0.34049,0.31683,0.29784,0.27861,0.27572,0.26432,0.25967,0.25515,0.252,0.24926,0.24316,0.22886,0.22482,0.30821,0.30713,0.28738,0.29302,0.31699,0.33916,0.35855,0.39095,0.44695,0.51455,0.56508,0.57324,0.55407,0.52929,0.50205,0.48169,0.48604,0.51175,0.52236,0.50746,0.48911,0.47922,0.46975,0.46231,0.46726,0.52457,0.56681,0.52391,0.49864,0.49027,0.48281,0.47118,0.47548,0.48929,0.4841,0.473,0.46941,0.46381,0.44629,0.43692,0.47859,0.54412,0.5614,0.57527,0.58965,0.58603,0.56416,0.53465,0.52542,0.51584,0.47399,0.42228,0.38708,0.36014,0.34099,0.32215,0.30157,0.32215,0.35166,0.32773,0.32057,0.31245,0.29212,0.25523,0.22814,0.23157,0.2851,0.29149,0.27503,0.26473,0.26161,0.26631,0.30576,0.34154,0.40278,0.44826,0.46028,0.47764,0.50692,0.53967,0.56405,0.62139,0.67091,0.66263,0.65439,0.64817,0.62735,0.61547,0.62719,0.65787,0.66365,0.6304,0.60794,0.58747,0.56638,0.53639,0.51044,0.49433,0.47706,0.45037,0.42379,0.40006,0.37683,0.34785,0.32616,0.3338,0.35017,0.34889,0.35955,0.35368,0.33842,0.33039,0.34543,0.39549,0.42039,0.42422,0.43781,0.47655,0.46469,0.45664,0.49263,0.62819,0.71691,0.74702,0.68644,0.70046,0.76196,0.85718,0.95844,0.99301,1.0063,1.0213,1.0291,1.033,1.0334,1.031,1.0319,1.036,1.0352,1.0328,1.0285,1.0241,1.0149,1.0169,1.0234,1.024,1.0222,1.0147,0.99537,0.96356,0.93136,0.82654,0.67047,0.56714,0.49205,0.4407,0.3941,0.33245,0.27593,0.22342,0.19729,0.18346,0.16587,0.15737,0.14966,0.14022,0.13017,0.12103,0.11518,0.1254,0.13237,0.12653,0.13792,0.21123,0.22761,0.2023,0.23325,0.2701,0.29796,0.31401,0.321,0.33284,0.35927,0.38894,0.42762,0.47212,0.49399,0.49813,0.50376,0.50561,0.51467,0.52823,0.55232,0.60606,0.66633,0.7042,0.72388,0.71202,0.6688,0.61037,0.53758,0.47188,0.42576,0.39557,0.37306,0.3538,0.33985,0.32873,0.3313,0.39445,0.44178,0.45673,0.45011,0.44749,0.45559,0.45613,0.44128,0.45319,0.47111,0.45591,0.45494,0.45194,0.43786,0.45568,0.50673,0.5546,0.55521,0.54191,0.52573,0.50829,0.47929,0.44907,0.42518,0.38687,0.35222,0.33948,0.33529,0.32506,0.29745,0.26481,0.23836,0.21922,0.21905,0.21605,0.21888,0.23259,0.23149,0.22777,0.21173,0.19897,0.19114,0.18586,0.18233,0.18432,0.19306,0.20955,0.23267,0.2391,0.24719,0.25322,0.25186,0.25692,0.27142,0.28088,0.27931,0.2785,0.28415,0.29241,0.30197,0.31066,0.31644,0.31593,0.31728,0.32972,0.33362,0.33106,0.33232,0.32401,0.31667,0.31189,0.30543,0.29614,0.28636,0.27613,0.26861,0.26502,0.2673,0.27306,0.27748,0.30042,0.34763,0.36126,0.37348,0.38556,0.39902,0.40871,0.43195,0.46327,0.48255,0.48999,0.49727,0.49655,0.48403,0.46411,0.44458,0.43092,0.41937,0.40928,0.39846,0.38723,0.37516,0.36695,0.36423,0.35462,0.33735,0.32712,0.31905,0.31357,0.31235,0.31363,0.31282,0.30941,0.30419,0.29774,0.29029,0.28374,0.27823,0.27421,0.27149,0.2695,0.26734,0.26466,0.26167,0.25924,0.25672,0.25406,0.25118,0.24811,0.24465,0.24059,0.23686,0.23363,0.2305,0.22744,0.22412,0.22023,0.21619,0.21077,0.20879,0.2112,0.21161,0.2124,0.21144,0.20985,0.20937,0.21136,0.2138,0.21414,0.21333,0.21203,0.21086,0.20845,0.20887,0.21945,0.22848,0.24809,0.26631,0.26651,0.27672,0.32036,0.35526,0.356,0.35847,0.3585,0.3738,0.38555,0.40193,0.40546,0.38124,0.36044,0.35451,0.3426,0.32704,0.30863,0.29142,0.27204,0.26192,0.26001,0.25042,0.24451,0.26201,0.2516,0.24173,0.25195,0.25967,0.26549,0.25685,0.24051,0.2204,0.21527,0.21126,0.19942,0.1845,0.16556,0.14188,0.12868,0.23683,0.25769,0.24455,0.24586,0.2443,0.25204,0.26328,0.265,0.28315,0.30064,0.33666,0.3777,0.41028,0.39601,0.34454,0.32516,0.3075,0.28799,0.27087,0.25858,0.2519,0.24884,0.24967,0.25541,0.26481,0.25621,0.25446,0.32235,0.31838,0.31113,0.29624,0.29417,0.30333,0.33704,0.43039,0.46379,0.45905,0.43387,0.44947,0.45463,0.45307,0.44829,0.47352,0.51724,0.54876,0.56683,0.62151,0.64823,0.64667,0.64517,0.71521,0.78419,0.80782,0.80033,0.7988,0.80609,0.81715,0.83119,0.84657,0.83124,0.79711,0.7544,0.72839,0.69474,0.65268,0.61765,0.58534,0.5903,0.6657,0.69216,0.68275,0.66439,0.66724,0.6756,0.72782,0.78446,0.81713,0.80499,0.78548,0.77368,0.77263,0.76246,0.74995,0.71179,0.68688,0.66695,0.64094,0.62674,0.62365,0.64167,0.65048,0.64344,0.60693,0.55388,0.50789,0.47376,0.45313,0.45062,0.48845,0.54218,0.48821,0.4019,0.33414,0.28561,0.25565,0.23968,0.22933,0.22143,0.21724,0.21682,0.21646,0.21487,0.22172,0.2705,0.24584,0.25798,0.30279,0.31392,0.31761,0.32333,0.35191,0.38241,0.45905,0.55338,0.59704,0.60335,0.60626,0.61941,0.60869,0.58233,0.55362,0.53722,0.53037,0.5242,0.53089,0.5421,0.5492,0.53555,0.51206,0.49027,0.4522,0.40816,0.36539,0.33758,0.30985,0.29216,0.2785,0.2712,0.25933,0.2448,0.22863,0.20943,0.19231,0.17977,0.16912,0.15875,0.15403,0.1832,0.26548,0.18921,0.16993,0.15365,0.14323,0.13625,0.13545,0.13935,0.14939,0.1622,0.17079,0.18185,0.20211,0.21573,0.21429,0.20458,0.20099,0.20083,0.20184,0.20563,0.22562,0.3279,0.30416,0.30022,0.32273,0.33892,0.35506,0.36112,0.37178,0.42046,0.46297,0.4814,0.48276,0.48896,0.49927,0.52709,0.63515,0.68374,0.73793,0.7597,0.78507,0.82512,0.85329,0.86631,0.89596,0.91796,0.91899,0.922,0.93005,0.94058,0.94063,0.93907,0.93169,0.91909,0.91864,0.92564,0.93828,0.94258,0.93523,0.92047,0.91004,0.89253,0.88509,0.86036,0.83894,0.79984,0.74359,0.68611,0.64354,0.62625,0.61576,0.58663,0.5515,0.51816,0.48928,0.4676,0.44823,0.43001,0.43136,0.45776,0.48491,0.51348,0.54627,0.59151,0.63256,0.65926,0.6887,0.72622,0.71104,0.70448,0.71752,0.74758,0.79463,0.84939,0.87138,0.88005,0.88872,0.89957,0.90063,0.89894,0.91549,0.93993,0.94613,0.92633,0.89172,0.85327,0.80956,0.77518,0.75213,0.73085,0.723,0.69668,0.62388,0.55721,0.51482,0.47925,0.47467,0.50419,0.52973,0.5183,0.51748,0.53097,0.53826,0.55005,0.59449,0.64309,0.67633,0.67158,0.65353,0.6082,0.57728,0.57998,0.60392,0.59886,0.57938,0.5608,0.5388,0.51065,0.47712,0.44945,0.42604,0.41453,0.42244,0.42373,0.43739,0.45757,0.46647,0.45581,0.44311,0.44964,0.46838,0.48552,0.4999,0.4912,0.47672,0.46473,0.45995,0.45581,0.45826,0.45559,0.4461,0.42344,0.40789,0.39839,0.38656,0.40557,0.41302,0.40897,0.44935,0.5011,0.53066,0.56379,0.67108,0.81822,0.92592,0.95738,0.99355,0.98927,1.0019,1.0212,1.0377,1.0496,1.0409,1.0392,1.0405,1.0403,1.0396,1.0389,1.0423,1.0461,1.048,1.0475,1.0531,1.0495,1.0477,1.0452,1.0502,1.0538,1.0542,1.051,1.0511,1.0518,1.0525,1.0488,1.0481,1.0459,1.0424,1.0417,1.0395,1.0362,1.0289,1.0218,1.0136,0.99453,0.97386,0.92216,0.82523,0.69966,0.60782,0.55558,0.48797,0.45632,0.46794,0.46196,0.4475,0.44757,0.45952,0.4704,0.47452,0.45795,0.4296,0.42749,0.42557,0.4222,0.40654,0.38871,0.37166,0.35389,0.34998,0.36818,0.40128,0.44001,0.51254,0.56053,0.59562,0.6507,0.72749,0.76484,0.79207,0.84794,0.8822,0.89868,0.91725,0.91265,0.87658,0.82395,0.76012,0.68326,0.62543,0.55912,0.51847,0.48343,0.40605,0.33203,0.29165,0.27134,0.38841,0.32735,0.33037,0.38262,0.41987,0.43197,0.47939,0.51625,0.53524,0.54892,0.56954,0.61043,0.65692,0.70357,0.67743,0.6329,0.61114,0.60494,0.60587,0.60891,0.62724,0.67227,0.73118,0.79307,0.84571,0.88441,0.92606,0.95796,0.97967,0.99143,0.99527,0.99521,0.98703,0.98166,0.97337,0.95741,0.94965,0.94278,0.93399,0.91722,0.90072,0.89582,0.88942,0.88239,0.86946,0.85481,0.80381,0.76677,0.71984,0.67054,0.63624,0.61332,0.59285,0.56813,0.53619,0.5097,0.48222,0.45476,0.43015,0.41149,0.39481,0.37698,0.34852,0.31462,0.29281,0.28647,0.29206,0.30122,0.29642,0.28342,0.26724,0.25333,0.24192,0.23256,0.27446,0.24843,0.24219,0.26166,0.27993,0.2903,0.29843,0.31172,0.32796,0.33775,0.34035,0.34102,0.34188,0.33614,0.3225,0.30985,0.30105,0.28542,0.26249,0.25234,0.2546,0.27121,0.28416,0.28532,0.27201,0.25074,0.22472,0.19727,0.1771,0.1676,0.16276,0.15995,0.22368,0.23716,0.24071,0.25416,0.2497,0.25191,0.28026,0.31921,0.37674,0.42854,0.49101,0.53204,0.61746,0.68576,0.69565,0.70148,0.72083,0.73368,0.73649,0.69797,0.65039,0.63601,0.64323,0.66447,0.6866,0.71898,0.7591,0.76302,0.74506,0.71611,0.69471,0.67073,0.63969,0.61325,0.58995,0.57139,0.5569,0.5466,0.53799,0.52486,0.51472,0.51004,0.51141,0.52307,0.5581,0.5792,0.58401,0.59461,0.68089,0.75742,0.7787,0.75976,0.74715,0.75194,0.76925,0.79333,0.83101,0.85769,0.84458,0.80009,0.72653,0.64093,0.5327,0.41652,0.33776,0.42119,0.3416,0.31454,0.36285,0.3876,0.37325,0.36572,0.35258,0.33413,0.29289,0.26396,0.26533,0.24874,0.28824,0.33364,0.35687,0.41475,0.46431,0.49691,0.52496,0.58108,0.61917,0.64109,0.66101,0.69292,0.71491,0.6892,0.62696,0.57161,0.53724,0.53613,0.57411,0.61813,0.61939,0.60208,0.57942,0.55831,0.54014,0.52338,0.5116,0.52201,0.56758,0.63238,0.67152,0.67254,0.65061,0.62028,0.59205,0.57242,0.56194,0.55571,0.56107,0.56158,0.56869,0.57141,0.57163,0.57146,0.56898,0.55666,0.57341,0.60672,0.63901,0.66099,0.66587,0.66502,0.66246,0.65626,0.65689,0.66797,0.67672,0.66735,0.63423,0.60026,0.60135,0.61278,0.62461,0.63429,0.63895,0.63681,0.6332,0.62814,0.62468,0.62709,0.6263,0.61664,0.5942,0.57604,0.64512,0.80428,0.82899,0.8294,0.86313,0.89353,0.93221,0.96661,0.99645,1.0029,0.99185,0.94237,0.80619,0.58623,0.41615,0.34697,0.31892,0.32195,0.37527,0.41327,0.42242,0.41838,0.42334,0.42312,0.42012,0.42147,0.43028,0.41418,0.39965,0.36929,0.33741,0.30201,0.26859,0.24862,0.2374,0.23471,0.2314,0.22437,0.22415,0.31925,0.32559,0.30941,0.32279,0.34371,0.35345,0.36473,0.37278,0.39586,0.42243,0.44087,0.45646,0.47444,0.49972,0.51075,0.51607,0.52266,0.53279,0.54955,0.56226,0.56677,0.56194,0.6746,0.79805,0.86089,0.87591,0.87487,0.88086,0.87197,0.8653,0.86317,0.84802,0.81508,0.78305,0.74028,0.68092,0.63213,0.59314,0.55177,0.52012,0.50157,0.49567,0.50377,0.52578,0.52061,0.51343,0.5173,0.52194,0.52471,0.54737,0.58238,0.58094,0.54563,0.52097,0.50226,0.48437,0.46334,0.47579,0.44959,0.42706,0.39545,0.41043,0.40222,0.36597,0.34484,0.31699,0.30379,0.30988,0.28948,0.27307,0.26835,0.26195,0.2477,0.23581,0.24239,0.26786,0.2925,0.32927,0.35268,0.39066,0.47086,0.5065,0.46171,0.42269,0.38873,0.36034,0.33931,0.32974,0.31694,0.30878,0.30115,0.32041,0.33636,0.31322,0.30591,0.3114,0.31858,0.33594,0.37995,0.39417,0.39664,0.41229,0.45449,0.4344,0.4247,0.44618,0.47344,0.59073,0.7445,0.75627,0.68196,0.59099,0.55087,0.56534,0.57609,0.56056,0.54582,0.55652,0.58378,0.61241,0.64733,0.73047,0.81329,0.81965,0.7992,0.79358,0.77581,0.73114,0.71262,0.69484,0.65059,0.58979,0.53282,0.47573,0.41472,0.35805,0.31751,0.50095,0.44818,0.52599,0.59973,0.61101,0.62335,0.6286,0.64183,0.6689,0.68483,0.65938,0.65226,0.65173,0.63346,0.59441,0.55035,0.51241,0.49593,0.507,0.48719,0.49162,0.49872,0.49368,0.48065,0.45218,0.42012,0.39686,0.3757,0.34788,0.32614,0.29813,0.26932,0.24134,0.21635,0.19454,0.17559,0.15852,0.14519,0.16568,0.22227,0.29127,0.36094,0.43418,0.51229,0.59021,0.62952,0.63018,0.60667,0.57334,0.54791,0.53763,0.52448,0.5018,0.48485,0.47078,0.45374,0.45011,0.44441,0.4431,0.43012,0.42745,0.4246,0.39766,0.36088,0.4187,0.52934,0.60674,0.55447,0.55889,0.6599,0.70811,0.77857,0.95875,0.96371,0.97976,0.94562,0.80082,0.65773,0.50823,0.33933,0.26193,0.2537,0.2368,0.23291,0.23616,0.23942,0.24635,0.25462,0.25289,0.23766,0.21362,0.19032,0.16815,0.15916,0.1621,0.16537,0.16288,0.16184,0.16345,0.16639,0.16435,0.16821,0.25869,0.25856,0.25856,0.27655,0.30894,0.32495,0.33763,0.34692,0.34689,0.34427,0.35784,0.38911,0.40673,0.40437,0.38968,0.37168,0.34253,0.32614,0.40254,0.52909,0.58421,0.58157,0.56706,0.54915,0.52692,0.4902,0.45047,0.41472,0.39317,0.3771,0.35941,0.34377,0.32506,0.29304,0.29174,0.38268,0.38777,0.39508,0.40915,0.45427,0.50001,0.52944,0.5901,0.6152,0.63957,0.6133,0.56105,0.50753,0.46364,0.44545,0.44225,0.41615,0.36827,0.33109,0.3266,0.361,0.41685,0.4329,0.42221,0.39303,0.38243,0.34491,0.31726,0.28667,0.25424,0.2652,0.26445,0.27213,0.28181,0.26832,0.32996,0.42533,0.45716,0.4883,0.54563,0.63182,0.72371,0.7827,0.79301,0.79725,0.81,0.78987,0.77621,0.78428,0.79908,0.81619,0.83703,0.85482,0.87262,0.88751,0.92086,0.97105,0.99151,1.0004,1.0067,1.008,1.0164,1.0257,1.0321,1.0346,1.0275,1.0101,1.0063,1.008,1.0085,1.0072,1.0071,1.0134,1.0119,1.0005,0.98524,0.95144,0.91264,0.87081,0.84457,0.78799,0.72467,0.69661,0.6622,0.63993,0.67689,0.72355,0.85056,0.93433,0.97725,0.9858,1.001,1.0011,1,0.99688,1.0045,1.0124,1.0113,0.97039,0.91072,0.87289,0.83315,0.79311,0.81606,0.83073,0.81703,0.76331,0.7196,0.69459,0.68095,0.68762,0.70685,0.74472,0.77033,0.74794,0.71698,0.66702,0.65055,0.65467,0.6368,0.56546,0.50508,0.44292,0.3773,0.3291,0.29742,0.2707,0.24956,0.29624,0.36453,0.36307,0.34918,0.35142,0.35223,0.34344,0.39459,0.44488,0.4846,0.49833,0.55477,0.64728,0.75438,0.81423,0.8767,0.91819,0.93185,0.89718,0.82412,0.72647,0.64229,0.58632,0.55599,0.53201,0.50895,0.46512,0.42278,0.38187,0.34131,0.29916,0.25765,0.22264,0.19635,0.17475,0.1549,0.13988,0.12673,0.11524,0.10608,0.14474,0.25459,0.21874,0.22779,0.25274,0.26051,0.25365,0.24774,0.24916,0.24937,0.26748,0.46357,0.53048,0.6076,0.71506,0.80503,0.84908,0.87983,0.88961,0.91071,0.93171,0.93609,0.93351,0.95405,0.96355,0.96851,0.95336,0.93775,0.90073,0.8696,0.88615,0.84313,0.80002,0.67722,0.62951,0.62901,0.63976,0.63786,0.62309,0.59507,0.52347,0.43661,0.37099,0.32101,0.28579,0.27579,0.33011,0.3783,0.35891,0.34869,0.36083,0.35969,0.34687,0.33293,0.30353,0.28709,0.26611,0.23523,0.21464,0.20596,0.19474,0.17795,0.15964,0.14661,0.15837,0.18652,0.23239,0.29872,0.3533,0.41913,0.4663,0.48803,0.4963,0.49119,0.46654,0.41852,0.38849,0.4079,0.49121,0.54498,0.55252,0.56941,0.61137,0.65238,0.69177,0.71929,0.7109,0.65575,0.62786,0.66524,0.68396,0.66649,0.60532,0.57653,0.61273,0.69951,0.74026,0.73837,0.71689,0.69567,0.67304,0.64143,0.60183,0.56527,0.52743,0.48471,0.46366,0.49128,0.49978,0.5185,0.5457,0.55871,0.57531,0.62559,0.70206,0.71549,0.74295,0.75708,0.7501,0.72202,0.81591,0.9052,0.91478,0.88508,0.83345,0.77566,0.72723,0.66541,0.59002,0.53857,0.50663,0.48544,0.46931,0.44215,0.40168,0.35757,0.31831,0.29591,0.29066,0.30254,0.32122,0.31978,0.32539,0.33523,0.34822,0.35497,0.34881,0.34117,0.35704,0.45793,0.56755,0.64952,0.67558,0.68971,0.73231,0.78035,0.7766,0.71196,0.66457,0.63624,0.60198,0.56747,0.54341,0.52549,0.51199,0.51761,0.55751,0.60344,0.61582,0.64652,0.70651,0.72807,0.69327,0.6485,0.67113,0.75988,0.7677,0.82845,0.92069,0.95609,0.95208,0.93968,0.86238,0.68952,0.51248,0.40089,0.41028,0.39728,0.46629,0.51308,0.53482,0.58862,0.63316,0.68048,0.79339,0.84026,0.88318,0.88012,0.90605,0.90609,0.90256,0.92331,0.93198,0.92222,0.88888,0.87138,0.85677,0.79566,0.71501,0.66049,0.64981,0.65455,0.64759,0.62499,0.60618,0.58247,0.55528,0.53416,0.52628,0.52233,0.49912,0.46665,0.43216,0.41206,0.38557,0.36091,0.33816,0.35908,0.38573,0.35826,0.33832,0.32098,0.29868,0.27811,0.29233,0.37284,0.40218,0.39728,0.40322,0.40587,0.40298,0.41782,0.46852,0.51901,0.51459,0.49025,0.47178,0.46077,0.45333,0.43086,0.4287,0.47556,0.48876,0.45612,0.42771,0.39639,0.37348,0.36413,0.36595,0.3816,0.40959,0.39923,0.362,0.32679,0.2908,0.26493,0.24224,0.22398,0.22041,0.22284,0.2823,0.25646,0.25942,0.22942,0.23227,0.25475,0.31706,0.29842,0.26598,0.26285,0.26941,0.26346,0.25616,0.24759,0.29447,0.31533,0.2742,0.26621,0.25903,0.23619,0.21621,0.24905,0.33457,0.35568,0.37685,0.3884,0.38021,0.36471,0.35414,0.34784,0.36586,0.35822,0.32243,0.30622,0.28348,0.25908,0.23648,0.21753,0.20332,0.20107,0.20521,0.22058,0.24341,0.2583,0.30505,0.39643,0.41898,0.39896,0.38185,0.36051,0.33635,0.31043,0.28622,0.27245,0.26165,0.24643,0.24162,0.22666,0.21463,0.23422,0.22566,0.19887,0.1867,0.18038,0.17742,0.1754,0.16585,0.15649,0.15109,0.30648,0.33104,0.36067,0.38956,0.39925,0.53212,0.67217,0.83797,0.90241,0.92819,0.94031,0.9482,0.93132,0.90052,0.90982,0.95961,0.92802,0.9259,0.9656,0.9992,1.0165,1.0347,1.0377,1.0464,1.0469,1.0458,1.0404,1.0293,1.0219,1.0169,1.0108,0.98799,0.95172,0.8865,0.8063,0.73051,0.6521,0.62084,0.64335,0.64435,0.61473,0.59182,0.58274,0.5816,0.60881,0.64425,0.68179,0.68727,0.68831,0.66883,0.6581,0.69031,0.71318,0.70412,0.66784,0.59363,0.52228,0.45844,0.40114,0.35447,0.32146,0.28802,0.31736,0.26699,0.25061,0.24025,0.22435,0.22211,0.33736,0.45426,0.50626,0.46253,0.44137,0.43326,0.43749,0.42287,0.41763,0.4617,0.47389,0.43171,0.35477,0.28102,0.21708,0.20808,0.35431,0.42357,0.52519,0.54797,0.55581,0.57708,0.60697,0.6524,0.7165,0.82484,0.90118,0.91035,0.87368,0.80295,0.72173,0.68441,0.71788,0.75216,0.74155,0.72399,0.67009,0.56934,0.48021,0.4193,0.38093,0.41237,0.36431,0.37665,0.41598,0.45792,0.45315,0.4201,0.39378,0.3628,0.38598,0.39451,0.46685,0.53661,0.66435,0.74759,0.77522,0.76661,0.81116,0.831,0.8202,0.77628,0.7069,0.67277,0.67811,0.67448,0.64994,0.61288,0.57661,0.54517,0.51993,0.49073,0.45264,0.42867,0.40368,0.38476,0.36765,0.35613,0.37474,0.383,0.38153,0.38912,0.37932,0.38566,0.3868,0.41723,0.49214,0.53949,0.52458,0.49004,0.45775,0.42624,0.40389,0.39639,0.41198,0.40563,0.39481,0.38332,0.35936,0.32226,0.2822,0.25324,0.23518,0.22699,0.2157,0.20513,0.19289,0.18163,0.17381,0.17531,0.18775,0.20037,0.21006,0.23222,0.25754,0.24978,0.24048,0.26584,0.30497,0.29068,0.28854,0.29167,0.28855,0.32995,0.41551,0.43658,0.45568,0.45051,0.41585,0.37764,0.34602,0.33945,0.37325,0.34838,0.32205,0.30222,0.276,0.24886,0.23459,0.37074,0.4497,0.51321,0.48775,0.48348,0.5009,0.53203,0.55512,0.6012,0.64381,0.69831,0.76334,0.81087,0.85954,0.9299,0.98273,1.0043,1.0055,0.99286,0.98036,0.96654,0.95421,0.93836,0.94244,0.92575,0.87262,0.83083,0.83402,0.7531,0.67911,0.6418,0.6218,0.58709,0.53497,0.47032,0.39075,0.34088,0.27619,0.20575,0.16081,0.13787,0.12355,0.11132,0.10497,0.10689,0.10819,0.10366,0.16048,0.23441,0.20106,0.17977,0.19496,0.20039,0.20577,0.20615,0.22704,0.3211,0.42974,0.48896,0.51485,0.52816,0.54992,0.60478,0.70673,0.78952,0.85091,0.87664,0.89185,0.90172,0.91876,0.92512,0.94596,0.96719,0.98423,0.98399,0.97677,0.94022,0.89722,0.84954,0.79596,0.75286,0.72667,0.69073,0.65667,0.63657,0.64052,0.63556,0.63596,0.64775,0.67898,0.72833,0.71145,0.6739,0.66415,0.66711,0.70242,0.75957,0.79513,0.79001,0.79066,0.77742,0.76168,0.75191,0.77834,0.83622,0.894,0.87759,0.8461,0.80717,0.79438,0.79082,0.79798,0.79385,0.78423,0.71369,0.65336,0.60033,0.55303,0.51157,0.47965,0.46439,0.45961,0.45314,0.44184,0.42616,0.4158,0.41435,0.40754,0.40515,0.39049,0.37127,0.35172,0.34357,0.32686,0.2973,0.27136,0.25142,0.37675,0.44314,0.45766,0.51358,0.50519,0.52285,0.58909,0.66777,0.71293,0.71086,0.69963,0.6963,0.6942,0.69681,0.7368,0.7516,0.74283,0.69837,0.68887,0.70014,0.68489,0.66161,0.68243,0.71454,0.75084,0.75566,0.74588,0.72065,0.68952,0.68074,0.70671,0.73774,0.76781,0.76933,0.75123,0.72764,0.69088,0.69092,0.74893,0.79298,0.79557,0.77721,0.76639,0.75995,0.74303,0.73642,0.73273,0.74842,0.76316,0.73622,0.70685,0.66461,0.6247,0.59787,0.63311,0.71533,0.75187,0.71337,0.65223,0.62822,0.61823,0.59032,0.57598,0.59898,0.62309,0.63273,0.62292,0.60757,0.58709,0.59062,0.62326,0.68051,0.68906,0.64849,0.62396,0.61962,0.61961,0.614,0.60299,0.59652,0.58235,0.54307,0.50864,0.48602,0.47118,0.46125,0.45478,0.45508,0.45887,0.44026,0.4181,0.40281,0.39018,0.37834,0.36359,0.37488,0.40657,0.4096,0.43024,0.44201,0.44992,0.46806,0.50916,0.51967,0.53498,0.53698,0.52734,0.52124,0.51309,0.55801,0.55297,0.56055,0.57382,0.56567,0.54164,0.51864,0.49722,0.48439,0.51224,0.56773,0.53953,0.45674,0.41626,0.40899,0.38853,0.34743,0.28865,0.32272,0.32959,0.30869,0.355,0.38016,0.37888,0.3875,0.40749,0.43043,0.45047,0.42503,0.4271,0.41031,0.39231,0.39044,0.40104,0.4001,0.39353,0.37459,0.37339,0.3959,0.38477,0.38484,0.40202,0.38554,0.3831,0.38089,0.36205,0.33506,0.30852,0.29017,0.29876,0.30063,0.27794,0.27831,0.27476,0.28465,0.30656,0.35477,0.35142,0.34728,0.35851,0.37359,0.3644,0.36268,0.34708,0.33615,0.3445,0.36789,0.37262,0.33193,0.32486,0.3394,0.3495,0.35293,0.35357,0.40401,0.44933,0.44214,0.46569,0.50339,0.54033,0.552,0.52809,0.58037,0.67712,0.70495,0.75157,0.7579,0.74095,0.66776,0.58759,0.53535,0.49959,0.4257,0.39354,0.44106,0.42185,0.39495,0.40085,0.4024,0.38453,0.35978,0.33513,0.31706,0.27357,0.24487,0.24903,0.23349,0.20667,0.18986,0.18033,0.17729,0.17745,0.16797,0.1502,0.1211,0.10389,0.09095,0.07937,0.07357,0.07679,0.0772,0.08233,0.19634,0.28258,0.31352,0.29294,0.27548,0.26128,0.25879,0.26443,0.29206,0.32531,0.34808,0.34137,0.31869,0.30873,0.31426,0.32286,0.33501,0.37099,0.36768,0.33717,0.31883,0.30651,0.28287,0.2535,0.22726,0.20952,0.2094,0.22241,0.22607,0.23505,0.24671,0.25267,0.25496,0.26416,0.26672,0.2746,0.2743,0.27955,0.28297,0.29046,0.30365,0.33903,0.35061,0.35625,0.36835,0.37629,0.37599,0.3702,0.36775,0.37584,0.40234,0.44384,0.47742,0.49718,0.49543,0.50777,0.50674,0.51042,0.54305,0.57146,0.58786,0.61083,0.63393,0.64638,0.66999,0.67707,0.65755,0.64977,0.64852,0.70255,0.77778,0.84454,0.92807,0.93229,0.95117,1.0021,1.0002,1.0052,1.0162,1.0275,1.0257,1.0226,1.0253,1.0258,1.0248,1.0142,0.9906,0.95713,0.92545,0.90843,0.87603,0.80309,0.60146,0.44419,0.33632,0.25536,0.20142,0.16771,0.14727,0.14234,0.14416,0.16356,0.17659,0.19807,0.25948,0.30296,0.28939,0.30926,0.30907,0.29614,0.30795,0.3636,0.40136,0.39879,0.37415,0.37173,0.39625,0.43527,0.41145,0.36963,0.29694,0.25305,0.23599,0.22248,0.21836,0.20862,0.18727,0.16087,0.13957,0.1232,0.11853,0.11802,0.11665,0.11559,0.10473,0.08947,0.10333,0.14348,0.13978,0.13033,0.12845,0.14976,0.21902,0.2186,0.19412,0.19114,0.1936,0.20505,0.22603,0.25535,0.28847,0.25066,0.24217,0.25137,0.2644,0.27315,0.28004,0.29359,0.29265,0.28222,0.28175,0.27768,0.26559,0.25035,0.23239,0.22167,0.22125,0.22008,0.21315,0.20415,0.2108,0.20501,0.19548,0.18027,0.18948,0.24248,0.2157,0.18354,0.17474,0.16333,0.14735,0.12944,0.11265,0.11165,0.15141,0.16569,0.16254,0.15031,0.1237,0.11974,0.13511,0.11724,0.11939,0.10162,0.08997,0.07992,0.0751,0.09096,0.09912,0.11131,0.12392,0.12243,0.12246,0.12516,0.12749,0.13082,0.13881,0.1347,0.1212,0.11678,0.11372,0.10551,0.10861,0.11536,0.13061,0.14443,0.15936,0.16962,0.163,0.1587,0.16238,0.15514,0.14941,0.29507,0.28293,0.30742,0.32313,0.35069,0.38492,0.41528,0.44943,0.44988,0.43455,0.42351,0.41839,0.44417,0.4481,0.42757,0.42074,0.3951,0.4035,0.4266,0.4474,0.43971,0.43509,0.44955,0.46868,0.47513,0.47848,0.48439,0.47536,0.46512,0.45715,0.44385,0.41972,0.39864,0.39579,0.42139,0.43409,0.41646,0.40336,0.39661,0.39121,0.38541,0.37648,0.37877,0.38603,0.37912,0.36817,0.36093,0.36345,0.35914,0.35389,0.37951,0.38819,0.36938,0.36546,0.36083,0.35152,0.33748,0.33817,0.37477,0.41458,0.40787,0.4078,0.41413,0.41525,0.41721,0.4116,0.3902,0.3788,0.36906,0.35509,0.33609,0.31632,0.29195,0.26791,0.25112,0.23788,0.22636,0.21698,0.2081,0.19711,0.18577,0.18004,0.1874,0.23232,0.29567,0.24105,0.24117,0.24722,0.26465,0.30025,0.34327,0.37413,0.36882,0.3829,0.38328,0.37232,0.36021,0.37562,0.39087,0.37028,0.35929,0.35703,0.35454,0.34721,0.3422,0.339,0.33588,0.32634,0.30644,0.28359,0.27153,0.26735,0.26553,0.2776,0.29134,0.28817,0.28463,0.27947,0.26954,0.25619,0.24132,0.23749,0.29576,0.29289,0.28257,0.28921,0.30007,0.30529,0.31395,0.34468,0.39947,0.45093,0.43943,0.42717,0.41615,0.4102,0.40074,0.38393,0.35994,0.33385,0.31569,0.30101,0.28243,0.26048,0.23726,0.21701,0.20571,0.189,0.1927,0.21483,0.22647,0.2344,0.2445,0.25567,0.27008,0.2868,0.28348,0.27018,0.25784,0.2483,0.23931,0.22619,0.23197,0.29644,0.28162,0.29264,0.32615,0.32178,0.31881,0.324,0.33228,0.33064,0.30587,0.29082,0.2757,0.27148,0.27563,0.28064,0.31734,0.31349,0.31378,0.31249,0.30558,0.31267,0.34294,0.41295,0.50625,0.56339,0.53985,0.54099,0.53484,0.52873,0.54423,0.59287,0.62594,0.62329,0.58601,0.55769,0.53633,0.4942,0.40513,0.34528,0.31178,0.28654,0.25948,0.23134,0.20933,0.19426,0.18264,0.17511,0.17022,0.16142,0.15297,0.15584,0.17297,0.16779,0.15801,0.14295,0.11344,0.09786,0.09202,0.09091,0.09025,0.08601,0.07934,0.07497,0.09914,0.1729,0.20473,0.24397,0.24519,0.25772,0.25958,0.2645,0.26114,0.26228,0.26681,0.29877,0.29623,0.30161,0.31298,0.35028,0.38402,0.41021,0.42934,0.43479,0.43918,0.46195,0.49258,0.52026,0.55099,0.58518,0.57624,0.55334,0.54348,0.54719,0.57705,0.61336,0.6529,0.71343,0.70864,0.67867,0.64352,0.61645,0.59123,0.57543,0.56253,0.5345,0.51012,0.48943,0.47372,0.46634,0.46697,0.46504,0.46308,0.46365,0.47063,0.46394,0.44916,0.43419,0.413,0.39138,0.3707,0.35477,0.33205,0.31756,0.30608,0.291,0.27669,0.2628,0.25174,0.24285,0.23444,0.22699,0.21292,0.19365,0.19137,0.19581,0.21512,0.22092,0.21903,0.21714,0.20778,0.19925,0.20258,0.20857,0.20596,0.2099,0.21303,0.21219,0.20767,0.20567,0.21628,0.22684,0.21962,0.19398,0.16242,0.13518,0.11617,0.10524,0.10199,0.10306,0.10286,0.09794,0.08856,0.1079,0.13955,0.15378,0.1776,0.21165,0.24519,0.23519,0.24623,0.27452,0.32608,0.37555,0.41674,0.46231,0.4734,0.459,0.44643,0.43541,0.41635,0.40022,0.38017,0.35514,0.346,0.35964,0.34755,0.3587,0.3785,0.37794,0.38089,0.41068,0.4345,0.44921,0.46686,0.46616,0.44271,0.41934,0.38492,0.34721,0.31191,0.28573,0.26279,0.2474,0.2427,0.23622,0.2314,0.22834,0.21753,0.19612,0.2035,0.21671,0.19839,0.1845,0.17408,0.16119,0.1803,0.27998,0.24826,0.22795,0.22742,0.23003,0.23069,0.22753,0.23792,0.32794,0.30577,0.26876,0.28108,0.28648,0.27577,0.26996,0.25903,0.26574,0.26387,0.268,0.26174,0.24844,0.23538,0.22448,0.23257,0.26077,0.24442,0.23497,0.23634,0.23158,0.22034,0.19667,0.18321,0.2598,0.26894,0.22648,0.22387,0.21724,0.2087,0.19748,0.19868,0.22189,0.24539,0.24434,0.24083,0.24345,0.25074,0.26201,0.28099,0.2838,0.27283,0.28274,0.29792,0.31227,0.32963,0.35196,0.40248,0.43783,0.46837,0.50464,0.47417,0.47475,0.50825,0.53009,0.59442,0.66529,0.6623,0.64155,0.64305,0.67323,0.72525,0.77241,0.8024,0.80902,0.79249,0.76472,0.71982,0.65814,0.60757,0.57353,0.54019,0.49689,0.44569,0.40247,0.3683,0.3463,0.33619,0.33297,0.33022,0.32063,0.31126,0.30029,0.2847,0.27037,0.25805,0.24784,0.2389,0.23517,0.22594,0.21696,0.20865,0.20154,0.20148,0.20722,0.21103,0.21076,0.20822,0.21798,0.23172,0.24351,0.25419,0.27964,0.31915,0.34795,0.34411,0.34484,0.35211,0.36192,0.36403,0.36154,0.38651,0.42381,0.40625,0.38969,0.37475,0.36834,0.37356,0.38469,0.40042,0.39252,0.38466,0.39253,0.41842,0.45719,0.50423,0.54742,0.5721,0.568,0.55159,0.53113,0.501,0.4653,0.43765,0.42693,0.41706,0.40279,0.38064,0.3627,0.34332,0.32149,0.30058,0.29122,0.3062,0.30811,0.30636,0.31973,0.33222,0.35057,0.37456,0.3908,0.4016,0.43639,0.46096,0.47148,0.45856,0.43023,0.4053,0.3972,0.39166,0.38314,0.38762,0.38378,0.37632,0.36776,0.3687,0.38013,0.4106,0.43504,0.41422,0.39319,0.38989,0.40701,0.42444,0.44385,0.49023,0.56496,0.58912,0.58851,0.57121,0.55734,0.54581,0.5401,0.53835,0.5394,0.52251,0.50276,0.48529,0.46643,0.43473,0.40801,0.37551,0.37115,0.35191,0.33189,0.31787,0.31002,0.30093,0.28885,0.27773,0.29176,0.31682,0.3031,0.31547,0.31197,0.29654,0.2727,0.24916,0.24673,0.24412,0.25388,0.26359,0.25503,0.22654,0.20543,0.39857,0.27076,0.23313,0.23982,0.2468,0.26411,0.27414,0.27249,0.27356,0.27122,0.26242,0.24829,0.23419,0.22448,0.21955,0.24085,0.26228,0.26656,0.26337,0.26261,0.25825,0.24624,0.23125,0.22288,0.23007,0.231,0.21055,0.18304,0.17357,0.17525,0.17338,0.16271,0.15961,0.15982,0.20572,0.2007,0.21454,0.2044,0.18826,0.17534,0.17155,0.15076,0.13209,0.11788,0.22849,0.39135,0.49284,0.57053,0.58017,0.58627,0.56251,0.49609,0.39469,0.32091,0.27938,0.25601,0.24105,0.22811,0.21794,0.21113,0.20124,0.1909,0.18786,0.18984,0.191,0.18892,0.18442,0.18535,0.18932,0.20507,0.21291,0.23211,0.29066,0.29536,0.29303,0.30721,0.31549,0.34756,0.3761,0.43832,0.51616,0.57991,0.59225,0.61969,0.64567,0.67319,0.69996,0.6948,0.62816,0.5504,0.48555,0.44443,0.41543,0.39826,0.38558,0.37804,0.37222,0.3621,0.34437,0.3227,0.30176,0.28634,0.2751,0.27316,0.29324,0.32634,0.28651,0.33626,0.33508,0.34132,0.36744,0.38998,0.40335,0.39543,0.37259,0.32548,0.30683,0.27211,0.26323,0.2619,0.26241,0.26453,0.26606,0.26517,0.26605,0.2693,0.27269,0.27598,0.27865,0.28355,0.29179,0.29759,0.31638,0.3365,0.35813,0.39016,0.40397,0.42256,0.42636,0.42376,0.43726,0.47321,0.50487,0.5342,0.53473,0.5336,0.5285,0.51423,0.48381,0.44831,0.41866,0.3911,0.36301,0.33658,0.31499,0.29628,0.28142,0.27387,0.26471,0.25693,0.24627,0.23228,0.21934,0.20892,0.20192,0.21903,0.31917,0.33819,0.37824,0.45978,0.52418,0.55951,0.5709,0.59045,0.63716,0.70081,0.73337,0.74964,0.74756,0.74653,0.74883,0.77969,0.85589,0.87234,0.85632,0.83889,0.82093,0.80393,0.78819,0.7747,0.77423,0.77832,0.78213,0.7817,0.77352,0.76368,0.75244,0.73554,0.70042,0.66612,0.6334,0.60352,0.56756,0.5403,0.5036,0.47169,0.44307,0.42474,0.42239,0.42895,0.43285,0.44008,0.44795,0.44989,0.4514,0.448,0.43787,0.43736,0.47292,0.551,0.6578,0.78197,0.88048,0.93574,0.96176,0.96529,0.96642,0.96571,0.96948,0.97994,0.99057,0.99133,0.9811,0.9687,0.93724,0.89425,0.87109,0.86382,0.85487,0.82559,0.75922,0.71063,0.68232,0.65693,0.63924,0.64601,0.67861,0.68165,0.63737,0.59702,0.57383,0.56687,0.56236,0.5627,0.57046,0.5601,0.53689,0.52018,0.50533,0.49426,0.50088,0.5191,0.53339,0.51701,0.46329,0.42449,0.3835,0.33608,0.30696,0.34249,0.36944,0.42823,0.46151,0.47765,0.52895,0.58733,0.61166,0.63475,0.63099,0.67007,0.7258,0.79756,0.88786,0.93196,0.97802,0.99825,1.0214,1.0271,1.0324,1.0334,1.0338,1.0311,1.0243,1.0166,1.0094,1.005,0.9972,0.99087,0.97911,0.95926,0.92697,0.91211,0.90651,0.90005,0.89619,0.89266,0.88009,0.86876,0.85101,0.84303,0.84401,0.86393,0.88062,0.89024,0.88291,0.8688,0.86606,0.89499,0.90696,0.88843,0.87154,0.8686,0.86378,0.86742,0.87353,0.88665,0.89984,0.89624,0.86703,0.80318,0.74785,0.70734,0.6759,0.63792,0.60394,0.58471,0.56957,0.5476,0.50639,0.45804,0.44045,0.43826,0.44447,0.45253,0.45139,0.44929,0.44093,0.43552,0.43324,0.47393,0.4825,0.47571,0.4826,0.48106,0.48598,0.49069,0.50027,0.53038,0.52037,0.51352,0.51141,0.50569,0.47154,0.43329,0.40719,0.38058,0.52433,0.4692,0.49948,0.52906,0.57832,0.63392,0.69957,0.76284,0.83598,0.8618,0.86996,0.85447,0.83549,0.8159,0.8041,0.80979,0.79487,0.75584,0.71317,0.70809,0.69366,0.68966,0.68059,0.70052,0.73338,0.76688,0.77373,0.77276,0.78784,0.81865,0.83574,0.83289,0.87178,0.90649,0.91403,0.91694,0.92846,0.93741,0.93506,0.94699,0.96365,0.97099,0.97201,0.97219,0.97276,0.97418,0.97384,0.97946,0.98644,0.98296,0.98346,0.98274,0.97714,0.97485,0.98623,1.0086,0.99565,0.96461,0.94385,0.90488,0.82193,0.72893,0.67177,0.61529,0.5689,0.50975,0.47083,0.48278,0.50404,0.51393,0.51667,0.54251,0.58064,0.6,0.58826,0.59845,0.61671,0.59993,0.55743,0.48848,0.49707,0.47658,0.43838,0.4123,0.3906,0.38433,0.38651,0.4303,0.48024,0.52447,0.57242,0.62575,0.65342,0.66399,0.66753,0.68925,0.707,0.71003,0.69831,0.66879,0.63699,0.61717,0.60763,0.615,0.64278,0.64835,0.63129,0.60085,0.56819,0.53355,0.50861,0.48793,0.47406,0.46993,0.46449,0.45708,0.44777,0.43195,0.41554,0.42077,0.43411,0.44974,0.48301,0.54154,0.59396,0.62691,0.64059,0.708,0.76482,0.77965,0.77657,0.77395,0.76408,0.74339,0.71207,0.69089,0.6821,0.66382,0.62995,0.6112,0.60841,0.60913,0.60588,0.59662,0.57812,0.56863,0.56143,0.55174,0.53428,0.50803,0.49664,0.49545,0.50228,0.51081,0.527,0.54496,0.56462,0.58301,0.6019,0.64844,0.7209,0.77571,0.79991,0.81676,0.82886,0.83062,0.83235,0.88603,0.9273,0.93552,0.92879,0.92536,0.91399,0.89883,0.89778,0.90482,0.88428,0.85129,0.83781,0.85298,0.86688,0.86712,0.86689,0.88959,0.90438,0.90549,0.87504,0.82816,0.75428,0.686,0.6273,0.57747,0.53835,0.49411,0.44562,0.40797,0.385,0.37376,0.3738,0.39928,0.45502,0.5024,0.52826,0.56191,0.60495,0.65705,0.71564,0.82152,0.88894,0.90902,0.90144,0.89577,0.90364,0.91676,0.92894,0.96288,0.98563,0.9949,1.0014,1.0029,1.0015,0.99848,0.99884,1.0044,1.0134,1.0121,1.0027,0.99186,0.98593,0.98032,0.9713,0.97003,0.97296,0.9702,0.9639,0.94964,0.93268,0.91289,0.88769,0.89072,0.89814,0.86182,0.77128,0.72659,0.71051,0.70769,0.72347,0.7624,0.78102,0.78403,0.7508,0.70206,0.64854,0.58253,0.53339,0.5209,0.57257,0.60884,0.61922,0.62046,0.61024,0.60987,0.62144,0.67883,0.74863,0.78571,0.80096,0.81738,0.81777,0.78351,0.72503,0.67323,0.62891,0.57753,0.5159,0.47939,0.48302,0.49412,0.48803,0.53681,0.59577,0.62123,0.66889,0.72019,0.72824,0.73324,0.75807,0.80583,0.83581,0.82306,0.80009,0.75495,0.68441,0.60776,0.54946,0.54725,0.58925,0.62344,0.63625,0.62017,0.58008,0.54207,0.51668,0.5372,0.66054,0.75616,0.79565,0.86524,0.92497,0.95264,0.95945,0.96736,0.98628,1.0044,1.0132,1.0303,1.0299,1.0305,1.0318,1.0349,1.0396,1.0407,1.0415,1.0434,1.0411,1.0401,1.0346,1.0273,1.0178,1.0023,0.96932,0.90863,0.82448,0.74934,0.6882,0.62841,0.58369,0.52304,0.47385,0.45172,0.4581,0.46988,0.48157,0.4965,0.51536,0.52878,0.53682,0.54666,0.55774,0.57055,0.57988,0.57813,0.57161,0.57373,0.58201,0.58296,0.5762,0.56221,0.54173,0.52227,0.52756,0.56452,0.60355,0.62559,0.63363,0.62889,0.61617,0.60083,0.58262,0.56157,0.53518,0.50775,0.4873,0.47356,0.45989,0.45495,0.4557,0.468,0.48229,0.51508,0.58115,0.69407,0.80667,0.90862,0.95215,0.96885,0.9688,0.97954,0.99007,0.99728,1.0014,1.0153,1.017,1.017,1.0175,1.0192,1.0203,1.0221,1.0185,1.0219,1.0296,1.0297,1.0243,1.0217,1.0207,1.0136,1.0161,1.0255,1.0274,1.0202,0.99954,0.98441,0.95311,0.9478,0.97339,1.0032,1.0203,1.013,1.0072,1.0112,1.016,1.0135,0.99171,0.971,0.93566,0.87941,0.8002,0.76025,0.73152,0.71812,0.70183,0.68787,0.67369,0.61888,0.53829,0.47381,0.44382,0.42806,0.4359,0.46601,0.49663,0.49044,0.47147,0.4484,0.43064,0.43041,0.41398,0.40493,0.41721,0.42651 diff --git a/examples/data/loads/loads_data_dict.json b/examples/data/loads/loads_data_dict.json index 3351ddbb5..9054afe7d 100644 --- a/examples/data/loads/loads_data_dict.json +++ b/examples/data/loads/loads_data_dict.json @@ -763,24 +763,24 @@ "yawoffset": 0.36065239549512096 }, { - "ActivePower": NaN, - "BL1_EdgeMom": NaN, - "BL1_FlapMom": NaN, - "BL3_EdgeMom": NaN, - "BL3_FlapMom": NaN, - "LSSDW_My": NaN, - "LSSDW_Mz": NaN, - "LSSDW_Tq": NaN, - "TB_ForeAft": NaN, - "TB_SideSide": NaN, - "TTTq": NaN, - "TT_ForeAft": NaN, - "TT_SideSide": NaN, - "WD_ModActive": NaN, - "WD_Nacelle": NaN, - "WD_NacelleMod": NaN, - "uWind_80m": NaN, - "yawoffset": NaN + "ActivePower": 0.0, + "BL1_EdgeMom": 0.0, + "BL1_FlapMom": 0.0, + "BL3_EdgeMom": 0.0, + "BL3_FlapMom": 0.0, + "LSSDW_My": 0.0, + "LSSDW_Mz": 0.0, + "LSSDW_Tq": 0.0, + "TB_ForeAft": 0.0, + "TB_SideSide": 0.0, + "TTTq": 0.0, + "TT_ForeAft": 0.0, + "TT_SideSide": 0.0, + "WD_ModActive": 0.0, + "WD_Nacelle": 0.0, + "WD_NacelleMod": 0.0, + "uWind_80m": 0.0, + "yawoffset": 0.0 }, { "ActivePower": NaN, @@ -823,24 +823,24 @@ "yawoffset": NaN }, { - "ActivePower": NaN, - "BL1_EdgeMom": NaN, - "BL1_FlapMom": NaN, - "BL3_EdgeMom": NaN, - "BL3_FlapMom": NaN, - "LSSDW_My": NaN, - "LSSDW_Mz": NaN, - "LSSDW_Tq": NaN, - "TB_ForeAft": NaN, - "TB_SideSide": NaN, - "TTTq": NaN, - "TT_ForeAft": NaN, - "TT_SideSide": NaN, - "WD_ModActive": NaN, - "WD_Nacelle": NaN, - "WD_NacelleMod": NaN, - "uWind_80m": NaN, - "yawoffset": NaN + "ActivePower": 0.0, + "BL1_EdgeMom": 0.0, + "BL1_FlapMom": 0.0, + "BL3_EdgeMom": 0.0, + "BL3_FlapMom": 0.0, + "LSSDW_My": 0.0, + "LSSDW_Mz": 0.0, + "LSSDW_Tq": 0.0, + "TB_ForeAft": 0.0, + "TB_SideSide": 0.0, + "TTTq": 0.0, + "TT_ForeAft": 0.0, + "TT_SideSide": 0.0, + "WD_ModActive": 0.0, + "WD_Nacelle": 0.0, + "WD_NacelleMod": 0.0, + "uWind_80m": 0.0, + "yawoffset": 0.0 }, { "ActivePower": NaN, @@ -863,24 +863,24 @@ "yawoffset": NaN }, { - "ActivePower": NaN, - "BL1_EdgeMom": NaN, - "BL1_FlapMom": NaN, - "BL3_EdgeMom": NaN, - "BL3_FlapMom": NaN, - "LSSDW_My": NaN, - "LSSDW_Mz": NaN, - "LSSDW_Tq": NaN, - "TB_ForeAft": NaN, - "TB_SideSide": NaN, - "TTTq": NaN, - "TT_ForeAft": NaN, - "TT_SideSide": NaN, - "WD_ModActive": NaN, - "WD_Nacelle": NaN, - "WD_NacelleMod": NaN, - "uWind_80m": NaN, - "yawoffset": NaN + "ActivePower": 0.0, + "BL1_EdgeMom": 0.0, + "BL1_FlapMom": 0.0, + "BL3_EdgeMom": 0.0, + "BL3_FlapMom": 0.0, + "LSSDW_My": 0.0, + "LSSDW_Mz": 0.0, + "LSSDW_Tq": 0.0, + "TB_ForeAft": 0.0, + "TB_SideSide": 0.0, + "TTTq": 0.0, + "TT_ForeAft": 0.0, + "TT_SideSide": 0.0, + "WD_ModActive": 0.0, + "WD_Nacelle": 0.0, + "WD_NacelleMod": 0.0, + "uWind_80m": 0.0, + "yawoffset": 0.0 } ], "bin_means": [ @@ -1647,24 +1647,24 @@ "yawoffset": 0.32465542650598184 }, { - "ActivePower": NaN, - "BL1_EdgeMom": NaN, - "BL1_FlapMom": NaN, - "BL3_EdgeMom": NaN, - "BL3_FlapMom": NaN, - "LSSDW_My": NaN, - "LSSDW_Mz": NaN, - "LSSDW_Tq": NaN, - "TB_ForeAft": NaN, - "TB_SideSide": NaN, - "TTTq": NaN, - "TT_ForeAft": NaN, - "TT_SideSide": NaN, - "WD_ModActive": NaN, - "WD_Nacelle": NaN, - "WD_NacelleMod": NaN, - "uWind_80m": NaN, - "yawoffset": NaN + "ActivePower": 0.0, + "BL1_EdgeMom": 0.0, + "BL1_FlapMom": 0.0, + "BL3_EdgeMom": 0.0, + "BL3_FlapMom": 0.0, + "LSSDW_My": 0.0, + "LSSDW_Mz": 0.0, + "LSSDW_Tq": 0.0, + "TB_ForeAft": 0.0, + "TB_SideSide": 0.0, + "TTTq": 0.0, + "TT_ForeAft": 0.0, + "TT_SideSide": 0.0, + "WD_ModActive": 0.0, + "WD_Nacelle": 0.0, + "WD_NacelleMod": 0.0, + "uWind_80m": 0.0, + "yawoffset": 0.0 }, { "ActivePower": NaN, @@ -1707,24 +1707,24 @@ "yawoffset": NaN }, { - "ActivePower": NaN, - "BL1_EdgeMom": NaN, - "BL1_FlapMom": NaN, - "BL3_EdgeMom": NaN, - "BL3_FlapMom": NaN, - "LSSDW_My": NaN, - "LSSDW_Mz": NaN, - "LSSDW_Tq": NaN, - "TB_ForeAft": NaN, - "TB_SideSide": NaN, - "TTTq": NaN, - "TT_ForeAft": NaN, - "TT_SideSide": NaN, - "WD_ModActive": NaN, - "WD_Nacelle": NaN, - "WD_NacelleMod": NaN, - "uWind_80m": NaN, - "yawoffset": NaN + "ActivePower": 0.0, + "BL1_EdgeMom": 0.0, + "BL1_FlapMom": 0.0, + "BL3_EdgeMom": 0.0, + "BL3_FlapMom": 0.0, + "LSSDW_My": 0.0, + "LSSDW_Mz": 0.0, + "LSSDW_Tq": 0.0, + "TB_ForeAft": 0.0, + "TB_SideSide": 0.0, + "TTTq": 0.0, + "TT_ForeAft": 0.0, + "TT_SideSide": 0.0, + "WD_ModActive": 0.0, + "WD_Nacelle": 0.0, + "WD_NacelleMod": 0.0, + "uWind_80m": 0.0, + "yawoffset": 0.0 }, { "ActivePower": NaN, @@ -1747,24 +1747,24 @@ "yawoffset": NaN }, { - "ActivePower": NaN, - "BL1_EdgeMom": NaN, - "BL1_FlapMom": NaN, - "BL3_EdgeMom": NaN, - "BL3_FlapMom": NaN, - "LSSDW_My": NaN, - "LSSDW_Mz": NaN, - "LSSDW_Tq": NaN, - "TB_ForeAft": NaN, - "TB_SideSide": NaN, - "TTTq": NaN, - "TT_ForeAft": NaN, - "TT_SideSide": NaN, - "WD_ModActive": NaN, - "WD_Nacelle": NaN, - "WD_NacelleMod": NaN, - "uWind_80m": NaN, - "yawoffset": NaN + "ActivePower": 0.0, + "BL1_EdgeMom": 0.0, + "BL1_FlapMom": 0.0, + "BL3_EdgeMom": 0.0, + "BL3_FlapMom": 0.0, + "LSSDW_My": 0.0, + "LSSDW_Mz": 0.0, + "LSSDW_Tq": 0.0, + "TB_ForeAft": 0.0, + "TB_SideSide": 0.0, + "TTTq": 0.0, + "TT_ForeAft": 0.0, + "TT_SideSide": 0.0, + "WD_ModActive": 0.0, + "WD_Nacelle": 0.0, + "WD_NacelleMod": 0.0, + "uWind_80m": 0.0, + "yawoffset": 0.0 } ], "bin_mins": [ @@ -2531,24 +2531,24 @@ "yawoffset": 11.605683455992253 }, { - "ActivePower": NaN, - "BL1_EdgeMom": NaN, - "BL1_FlapMom": NaN, - "BL3_EdgeMom": NaN, - "BL3_FlapMom": NaN, - "LSSDW_My": NaN, - "LSSDW_Mz": NaN, - "LSSDW_Tq": NaN, - "TB_ForeAft": NaN, - "TB_SideSide": NaN, - "TTTq": NaN, - "TT_ForeAft": NaN, - "TT_SideSide": NaN, - "WD_ModActive": NaN, - "WD_Nacelle": NaN, - "WD_NacelleMod": NaN, - "uWind_80m": NaN, - "yawoffset": NaN + "ActivePower": 0.0, + "BL1_EdgeMom": 0.0, + "BL1_FlapMom": 0.0, + "BL3_EdgeMom": 0.0, + "BL3_FlapMom": 0.0, + "LSSDW_My": 0.0, + "LSSDW_Mz": 0.0, + "LSSDW_Tq": 0.0, + "TB_ForeAft": 0.0, + "TB_SideSide": 0.0, + "TTTq": 0.0, + "TT_ForeAft": 0.0, + "TT_SideSide": 0.0, + "WD_ModActive": 0.0, + "WD_Nacelle": 0.0, + "WD_NacelleMod": 0.0, + "uWind_80m": 0.0, + "yawoffset": 0.0 }, { "ActivePower": NaN, @@ -2591,24 +2591,24 @@ "yawoffset": NaN }, { - "ActivePower": NaN, - "BL1_EdgeMom": NaN, - "BL1_FlapMom": NaN, - "BL3_EdgeMom": NaN, - "BL3_FlapMom": NaN, - "LSSDW_My": NaN, - "LSSDW_Mz": NaN, - "LSSDW_Tq": NaN, - "TB_ForeAft": NaN, - "TB_SideSide": NaN, - "TTTq": NaN, - "TT_ForeAft": NaN, - "TT_SideSide": NaN, - "WD_ModActive": NaN, - "WD_Nacelle": NaN, - "WD_NacelleMod": NaN, - "uWind_80m": NaN, - "yawoffset": NaN + "ActivePower": 0.0, + "BL1_EdgeMom": 0.0, + "BL1_FlapMom": 0.0, + "BL3_EdgeMom": 0.0, + "BL3_FlapMom": 0.0, + "LSSDW_My": 0.0, + "LSSDW_Mz": 0.0, + "LSSDW_Tq": 0.0, + "TB_ForeAft": 0.0, + "TB_SideSide": 0.0, + "TTTq": 0.0, + "TT_ForeAft": 0.0, + "TT_SideSide": 0.0, + "WD_ModActive": 0.0, + "WD_Nacelle": 0.0, + "WD_NacelleMod": 0.0, + "uWind_80m": 0.0, + "yawoffset": 0.0 }, { "ActivePower": NaN, @@ -2631,24 +2631,24 @@ "yawoffset": NaN }, { - "ActivePower": NaN, - "BL1_EdgeMom": NaN, - "BL1_FlapMom": NaN, - "BL3_EdgeMom": NaN, - "BL3_FlapMom": NaN, - "LSSDW_My": NaN, - "LSSDW_Mz": NaN, - "LSSDW_Tq": NaN, - "TB_ForeAft": NaN, - "TB_SideSide": NaN, - "TTTq": NaN, - "TT_ForeAft": NaN, - "TT_SideSide": NaN, - "WD_ModActive": NaN, - "WD_Nacelle": NaN, - "WD_NacelleMod": NaN, - "uWind_80m": NaN, - "yawoffset": NaN + "ActivePower": 0.0, + "BL1_EdgeMom": 0.0, + "BL1_FlapMom": 0.0, + "BL3_EdgeMom": 0.0, + "BL3_FlapMom": 0.0, + "LSSDW_My": 0.0, + "LSSDW_Mz": 0.0, + "LSSDW_Tq": 0.0, + "TB_ForeAft": 0.0, + "TB_SideSide": 0.0, + "TTTq": 0.0, + "TT_ForeAft": 0.0, + "TT_SideSide": 0.0, + "WD_ModActive": 0.0, + "WD_Nacelle": 0.0, + "WD_NacelleMod": 0.0, + "uWind_80m": 0.0, + "yawoffset": 0.0 } ], "loads": [ diff --git a/examples/directional_waves.ipynb b/examples/directional_waves.ipynb index 73ed2c6ff..4ee1bc203 100644 --- a/examples/directional_waves.ipynb +++ b/examples/directional_waves.ipynb @@ -182,8 +182,8 @@ } ], "source": [ - "buoy = '42012'\n", - "wave.io.ndbc.available_data('swdir', buoy)" + "buoy = \"42012\"\n", + "wave.io.ndbc.available_data(\"swdir\", buoy)" ] }, { @@ -1084,7 +1084,7 @@ } ], "source": [ - "date = np.datetime64('2021-02-21T12:40:00')\n", + "date = np.datetime64(\"2021-02-21T12:40:00\")\n", "data = data_all.sel(date=date)\n", "directions = np.arange(0, 360, 2.0)\n", "spectrum = wave.io.ndbc.create_directional_spectrum(data, directions)\n", @@ -1165,7 +1165,7 @@ } ], "source": [ - "wave.graphics.plot_directional_spectrum(spectrum, min=0.3)" + "wave.graphics.plot_directional_spectrum(spectrum, color_level_min=0.3)" ] }, { @@ -1195,7 +1195,9 @@ } ], "source": [ - "wave.graphics.plot_directional_spectrum(spectrum, min=0.3, fill=False, nlevels=4)" + "wave.graphics.plot_directional_spectrum(\n", + " spectrum, color_level_min=0.3, fill=False, nlevels=4\n", + ")" ] }, { @@ -1233,7 +1235,7 @@ } ], "source": [ - "data['swden'].plot()" + "data[\"swden\"].plot()" ] }, { @@ -1303,9 +1305,9 @@ } ], "source": [ - "rho = 1025 # kg/m^3\n", - "g = 9.81 # m/s^2\n", - "wave.graphics.plot_directional_spectrum(spectrum*rho*g, name=\"Energy\", units=\"J\")" + "rho = 1025 # kg/m^3\n", + "g = 9.81 # m/s^2\n", + "wave.graphics.plot_directional_spectrum(spectrum * rho * g, name=\"Energy\", units=\"J\")" ] }, { @@ -1318,7 +1320,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3.9.13 ('.venv': venv)", + "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, @@ -1332,9 +1334,8 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.9.13" + "version": "3.9.17" }, - "orig_nbformat": 4, "vscode": { "interpreter": { "hash": "15fd306e44580d8cf431083454c399b84f9cc4f7f2c761501397671836835f49" diff --git a/examples/environmental_contours_example.ipynb b/examples/environmental_contours_example.ipynb index 82a9ef6cd..5109e2164 100644 --- a/examples/environmental_contours_example.ipynb +++ b/examples/environmental_contours_example.ipynb @@ -132,9 +132,9 @@ ], "source": [ "# Specify the parameter as spectral wave density and the buoy number to be 46022\n", - "parameter = 'swden'\n", - "buoy_number = '46022' \n", - "ndbc_available_data= ndbc.available_data(parameter, buoy_number)\n", + "parameter = \"swden\"\n", + "buoy_number = \"46022\"\n", + "ndbc_available_data = ndbc.available_data(parameter, buoy_number)\n", "ndbc_available_data.head()" ] }, @@ -251,7 +251,7 @@ "outputs": [], "source": [ "# Get dictionary of parameter data by year\n", - "filenames= years_of_interest['filename']\n", + "filenames = years_of_interest[\"filename\"]\n", "ndbc_requested_data = ndbc.request_data(parameter, filenames)" ] }, @@ -497,15 +497,15 @@ } ], "source": [ - "# Lastly we will convert a DateTime Index \n", - "ndbc_data={}\n", + "# Lastly we will convert a DateTime Index\n", + "ndbc_data = {}\n", "# Create a Datetime Index and remove NOAA date columns for each year\n", "for year in ndbc_requested_data:\n", " year_data = ndbc_requested_data[year]\n", " ndbc_data[year] = ndbc.to_datetime_index(parameter, year_data)\n", "\n", "# Display DataFrame of 46022 data from 1996\n", - "ndbc_data['1996'].head()" + "ndbc_data[\"1996\"].head()" ] }, { @@ -638,8 +638,8 @@ ], "source": [ "# Intialize empty lists to store the results from each year\n", - "Hm0_list=[]\n", - "Te_list=[]\n", + "Hm0_list = []\n", + "Te_list = []\n", "\n", "# Iterate over each year and save the result in the initalized dictionary\n", "for year in ndbc_data:\n", @@ -648,9 +648,9 @@ " Te_list.append(resource.energy_period(year_data.T))\n", "\n", "# Concatenate list of Series into a single DataFrame\n", - "Te = pd.concat(Te_list ,axis=0)\n", - "Hm0 = pd.concat(Hm0_list ,axis=0)\n", - "Hm0_Te = pd.concat([Hm0,Te],axis=1)\n", + "Te = pd.concat(Te_list, axis=0)\n", + "Hm0 = pd.concat(Hm0_list, axis=0)\n", + "Hm0_Te = pd.concat([Hm0, Te], axis=1)\n", "\n", "# Drop any NaNs created from the calculation of Hm0 or Te\n", "Hm0_Te.dropna(inplace=True)\n", @@ -680,22 +680,22 @@ "outputs": [], "source": [ "# Return period (years) of interest\n", - "period = 100 \n", + "period = 100\n", "\n", "# Remove Hm0 Outliers\n", "Hm0_Te_clean = Hm0_Te[Hm0_Te.Hm0 < 20]\n", "\n", "# Get only the values from the DataFrame\n", - "Hm0 = Hm0_Te_clean.Hm0.values \n", - "Te = Hm0_Te_clean.Te.values \n", + "Hm0 = Hm0_Te_clean.Hm0.values\n", + "Te = Hm0_Te_clean.Te.values\n", "\n", - "# Delta time of sea-states \n", - "dt = (Hm0_Te_clean.index[2]-Hm0_Te_clean.index[1]).seconds \n", + "# Delta time of sea-states\n", + "dt = (Hm0_Te_clean.index[2] - Hm0_Te_clean.index[1]).seconds\n", "\n", "# Get the contour values\n", - "copula = contours.environmental_contours(Hm0, Te, dt, period, 'PCA', return_PCA=True)\n", - "Hm0_contour=copula['PCA_x1']\n", - "Te_contour=copula['PCA_x2']" + "copula = contours.environmental_contours(Hm0, Te, dt, period, \"PCA\", return_PCA=True)\n", + "Hm0_contour = copula[\"PCA_x1\"]\n", + "Te_contour = copula[\"PCA_x2\"]" ] }, { @@ -725,15 +725,19 @@ } ], "source": [ - "fig,ax=plt.subplots(figsize=(8,4))\n", - "#%matplotlib inline\n", - "ax=graphics.plot_environmental_contour(Te, Hm0, \n", - " Te_contour, Hm0_contour, \n", - " data_label='NDBC 46022', \n", - " contour_label='100 Year Contour',\n", - " x_label = 'Energy Period, $Te$ [s]',\n", - " y_label = 'Sig. wave height, $Hm0$ [m]', \n", - " ax=ax)" + "fig, ax = plt.subplots(figsize=(8, 4))\n", + "# %matplotlib inline\n", + "ax = graphics.plot_environmental_contour(\n", + " Te,\n", + " Hm0,\n", + " Te_contour,\n", + " Hm0_contour,\n", + " data_label=\"NDBC 46022\",\n", + " contour_label=\"100 Year Contour\",\n", + " x_label=\"Energy Period, $Te$ [s]\",\n", + " y_label=\"Sig. wave height, $Hm0$ [m]\",\n", + " ax=ax,\n", + ")" ] }, { @@ -764,24 +768,30 @@ } ], "source": [ - "copulas = contours.environmental_contours(Hm0, Te, dt, period, method=['gaussian', 'nonparametric_gaussian'])\n", + "copulas = contours.environmental_contours(\n", + " Hm0, Te, dt, period, method=[\"gaussian\", \"nonparametric_gaussian\"]\n", + ")\n", "\n", - "fig, ax = plt.subplots(figsize=(9,4))\n", + "fig, ax = plt.subplots(figsize=(9, 4))\n", "\n", - "Tes=[Te_contour]\n", - "Hm0s=[Hm0_contour]\n", - "methods=['gaussian', 'nonparametric_gaussian']\n", - "for method in methods: \n", - " Hm0s.append(copulas[f'{method}_x1'])\n", - " Tes.append(copulas[f'{method}_x2'])\n", + "Tes = [Te_contour]\n", + "Hm0s = [Hm0_contour]\n", + "methods = [\"gaussian\", \"nonparametric_gaussian\"]\n", + "for method in methods:\n", + " Hm0s.append(copulas[f\"{method}_x1\"])\n", + " Tes.append(copulas[f\"{method}_x2\"])\n", "\n", - "ax = graphics.plot_environmental_contour(Te, Hm0, \n", - " Tes, Hm0s,\n", - " data_label='NDBC 46050', \n", - " contour_label=['PCA','Gaussian', 'Nonparametric Gaussian'],\n", - " x_label = 'Energy Period, $Te$ [s]',\n", - " y_label = 'Sig. wave height, $Hm0$ [m]', \n", - " ax=ax)" + "ax = graphics.plot_environmental_contour(\n", + " Te,\n", + " Hm0,\n", + " Tes,\n", + " Hm0s,\n", + " data_label=\"NDBC 46050\",\n", + " contour_label=[\"PCA\", \"Gaussian\", \"Nonparametric Gaussian\"],\n", + " x_label=\"Energy Period, $Te$ [s]\",\n", + " y_label=\"Sig. wave height, $Hm0$ [m]\",\n", + " ax=ax,\n", + ")" ] }, { @@ -914,19 +924,19 @@ ], "source": [ "# Intialize empty lists to store the results from each year\n", - "Hm0_list=[]\n", - "Tp_list=[]\n", + "Hm0_list = []\n", + "Tp_list = []\n", "\n", "# Iterate over each year and save the result in the initalized dictionary\n", "for year in ndbc_data:\n", - " year_data = ndbc_data[year] \n", + " year_data = ndbc_data[year]\n", " Hm0_list.append(resource.significant_wave_height(year_data.T))\n", " Tp_list.append(resource.peak_period(year_data.T))\n", "\n", "# Concatenate list of Series into a single DataFrame\n", - "Tp = pd.concat(Tp_list ,axis=0)\n", - "Hm0 = pd.concat(Hm0_list ,axis=0)\n", - "Hm0_Tp = pd.concat([Hm0,Tp],axis=1)\n", + "Tp = pd.concat(Tp_list, axis=0)\n", + "Hm0 = pd.concat(Hm0_list, axis=0)\n", + "Hm0_Tp = pd.concat([Hm0, Tp], axis=1)\n", "\n", "# Drop any NaNs created from the calculation of Hm0 or Te\n", "Hm0_Tp.dropna(inplace=True)\n", @@ -938,8 +948,8 @@ "Hm0_Tp_clean = Hm0_Tp[Hm0_Tp.Tp < 30]\n", "\n", "# Get only the values from the DataFrame\n", - "Hm0 = Hm0_Tp_clean.Hm0.values \n", - "Tp = Hm0_Tp_clean.Tp.values \n", + "Hm0 = Hm0_Tp_clean.Hm0.values\n", + "Tp = Hm0_Tp_clean.Tp.values\n", "\n", "\n", "Hm0_Tp" @@ -1054,8 +1064,8 @@ "gmm = GaussianMixture(n_components=8).fit(X)\n", "\n", "# Save centers and weights\n", - "results = pd.DataFrame(gmm.means_, columns=['Tp','Hm0'])\n", - "results['weights'] = gmm.weights_\n", + "results = pd.DataFrame(gmm.means_, columns=[\"Tp\", \"Hm0\"])\n", + "results[\"weights\"] = gmm.weights_\n", "results" ] }, @@ -1098,9 +1108,9 @@ "# Plot the Sections of Data\n", "labels = gmm.predict(X)\n", "plt.scatter(Tp, Hm0, c=labels, s=40)\n", - "plt.plot(results.Tp, results.Hm0, 'm+')\n", - "plt.xlabel('Peak Period, $Tp$ [s]')\n", - "plt.ylabel('Sig. wave height, $Hm0$ [m]')" + "plt.plot(results.Tp, results.Hm0, \"m+\")\n", + "plt.xlabel(\"Peak Period, $Tp$ [s]\")\n", + "plt.ylabel(\"Sig. wave height, $Hm0$ [m]\")" ] } ], diff --git a/examples/extreme_response_MLER_example.ipynb b/examples/extreme_response_MLER_example.ipynb index d4737efe8..36c2bf11e 100644 --- a/examples/extreme_response_MLER_example.ipynb +++ b/examples/extreme_response_MLER_example.ipynb @@ -62,9 +62,9 @@ } ], "source": [ - "wave_freq = np.linspace( 0.,1,500)\n", - "mfile = pd.read_csv('data/loads/mler.csv')\n", - "RAO = mfile['RAO'].astype(complex)\n", + "wave_freq = np.linspace(0.0, 1, 500)\n", + "mfile = pd.read_csv(\"data/loads/mler.csv\")\n", + "RAO = mfile[\"RAO\"].astype(complex)\n", "RAO[0:10]" ] }, @@ -114,10 +114,10 @@ } ], "source": [ - "Hs = 9.0 # significant wave height\n", - "Tp = 15.1 # time period of waves\n", - "pm = resource.pierson_moskowitz_spectrum(wave_freq,Tp,Hs)\n", - "pm.plot(xlabel='frequency [Hz]',ylabel='response [m^2/Hz]')" + "Hs = 9.0 # significant wave height\n", + "Tp = 15.1 # time period of waves\n", + "pm = resource.pierson_moskowitz_spectrum(wave_freq, Tp, Hs)\n", + "pm.plot(xlabel=\"frequency [Hz]\", ylabel=\"response [m^2/Hz]\")" ] }, { @@ -168,10 +168,14 @@ } ], "source": [ - "mler_data = extreme.mler_coefficients(RAO,pm,1)\n", + "mler_data = extreme.mler_coefficients(RAO, pm, 1)\n", "\n", - "mler_data.plot(y='WaveSpectrum', ylabel='Conditioned wave spectrum [m^2-s]', xlabel='Frequency [Hz]')\n", - "mler_data.plot(y='Phase', ylabel='[rad]', xlabel='Frequency [Hz]')" + "mler_data.plot(\n", + " y=\"WaveSpectrum\",\n", + " ylabel=\"Conditioned wave spectrum [m^2-s]\",\n", + " xlabel=\"Frequency [Hz]\",\n", + ")\n", + "mler_data.plot(y=\"Phase\", ylabel=\"[rad]\", xlabel=\"Frequency [Hz]\")" ] }, { @@ -202,14 +206,14 @@ "source": [ "# generate parameters dict\n", "params = (\n", - " ('startTime',-150.0),\n", - " ('endTime',150.0),\n", - " ('dT',1.0),\n", - " ('T0',0.0),\n", - " ('startX',-300.0),\n", - " ('endX',300.0),\n", - " ('dX',1.0),\n", - " ('X0',0.0)\n", + " (\"startTime\", -150.0),\n", + " (\"endTime\", 150.0),\n", + " (\"dT\", 1.0),\n", + " (\"T0\", 0.0),\n", + " (\"startX\", -300.0),\n", + " (\"endX\", 300.0),\n", + " (\"dX\", 1.0),\n", + " (\"X0\", 0.0),\n", ")\n", "parameters = dict(params)\n", "\n", @@ -217,11 +221,13 @@ "sim = extreme.mler_simulation(parameters=parameters)\n", "\n", "# generate wave number k\n", - "k = resource.wave_number(wave_freq,70)\n", + "k = resource.wave_number(wave_freq, 70)\n", "k = k.fillna(0)\n", "\n", - "peakHeightDesired = Hs/2 * 1.9\n", - "mler_norm = extreme.mler_wave_amp_normalize(peakHeightDesired, mler_data, sim, k.k.values)" + "peakHeightDesired = Hs / 2 * 1.9\n", + "mler_norm = extreme.mler_wave_amp_normalize(\n", + " peakHeightDesired, mler_data, sim, k.k.values\n", + ")" ] }, { @@ -260,8 +266,8 @@ } ], "source": [ - "mler_ts = extreme.mler_export_time_series(RAO.values,mler_norm,sim,k.k.values)\n", - "mler_ts.plot(xlabel='Time (s)',ylabel='[m] / [*]',xlim=[-100,100],grid=True)" + "mler_ts = extreme.mler_export_time_series(RAO.values, mler_norm, sim, k.k.values)\n", + "mler_ts.plot(xlabel=\"Time (s)\", ylabel=\"[m] / [*]\", xlim=[-100, 100], grid=True)" ] }, { diff --git a/examples/extreme_response_contour_example.ipynb b/examples/extreme_response_contour_example.ipynb index 9fe687e0d..a716aa102 100644 --- a/examples/extreme_response_contour_example.ipynb +++ b/examples/extreme_response_contour_example.ipynb @@ -49,13 +49,13 @@ "metadata": {}, "outputs": [], "source": [ - "parameter = 'swden'\n", - "buoy_number = '46022'\n", + "parameter = \"swden\"\n", + "buoy_number = \"46022\"\n", "ndbc_available_data = ndbc.available_data(parameter, buoy_number)\n", "\n", "years_of_interest = ndbc_available_data[ndbc_available_data.year < 2013]\n", "\n", - "filenames = years_of_interest['filename']\n", + "filenames = years_of_interest[\"filename\"]\n", "ndbc_requested_data = ndbc.request_data(parameter, filenames)\n", "\n", "ndbc_data = {}\n", @@ -87,7 +87,7 @@ "Hm0 = Hm0_Te_clean.Hm0.values\n", "Te = Hm0_Te_clean.Te.values\n", "\n", - "dt = (Hm0_Te_clean.index[2]-Hm0_Te_clean.index[1]).seconds" + "dt = (Hm0_Te_clean.index[2] - Hm0_Te_clean.index[1]).seconds" ] }, { @@ -109,11 +109,11 @@ "source": [ "# 100 year contour\n", "period = 100.0\n", - "copula = contours.environmental_contours(Hm0, Te, dt, period, 'PCA')\n", - "hs_contour = copula['PCA_x1']\n", - "te_contour = copula['PCA_x2']\n", + "copula = contours.environmental_contours(Hm0, Te, dt, period, \"PCA\")\n", + "hs_contour = copula[\"PCA_x1\"]\n", + "te_contour = copula[\"PCA_x2\"]\n", "\n", - "# 5 samples \n", + "# 5 samples\n", "te_samples = np.linspace(15, 22, 5)\n", "hs_samples = contours.samples_contour(te_samples, te_contour, hs_contour);" ] @@ -157,11 +157,17 @@ "# plot\n", "fig, ax = plt.subplots(figsize=(8, 4))\n", "ax = graphics.plot_environmental_contour(\n", - " Te, Hm0, te_contour, hs_contour,\n", - " data_label='bouy data', contour_label='100-year contour',\n", - " x_label='Energy Period, $Te$ [s]',\n", - " y_label='Sig. wave height, $Hm0$ [m]', ax=ax)\n", - "ax.plot(te_samples, hs_samples, 'ro', label='samples')\n", + " Te,\n", + " Hm0,\n", + " te_contour,\n", + " hs_contour,\n", + " data_label=\"bouy data\",\n", + " contour_label=\"100-year contour\",\n", + " x_label=\"Energy Period, $Te$ [s]\",\n", + " y_label=\"Sig. wave height, $Hm0$ [m]\",\n", + " ax=ax,\n", + ")\n", + "ax.plot(te_samples, hs_samples, \"ro\", label=\"samples\")\n", "plt.legend()" ] }, @@ -205,29 +211,29 @@ "source": [ "# create the short-term extreme distribution for each sample sea state\n", "t_st = 3.0 * 60.0 * 60.0\n", - "gamma = 3.3 \n", + "gamma = 3.3\n", "t_sim = 1.0 * 60.0 * 60.0\n", "\n", "ste_all = []\n", "i = 0\n", "n = len(hs_samples)\n", "for hs, te in zip(hs_samples, te_samples):\n", - " tp = te / (0.8255 + 0.03852*gamma - 0.005537*gamma**2 + 0.0003154*gamma**3)\n", + " tp = te / (0.8255 + 0.03852 * gamma - 0.005537 * gamma**2 + 0.0003154 * gamma**3)\n", " i += 1\n", " print(f\"Sea state {i}/{n}. (Hs, Te) = ({hs} m, {te} s). Tp = {tp} s\")\n", " # time & frequency arrays\n", - " df = 1.0/t_sim\n", - " T_min = tp/10.0 # s\n", - " f_max = 1.0/T_min\n", - " Nf = int(f_max/df) + 1\n", - " time = np.linspace(0, t_sim, 2*Nf+1)\n", + " df = 1.0 / t_sim\n", + " T_min = tp / 10.0 # s\n", + " f_max = 1.0 / T_min\n", + " Nf = int(f_max / df) + 1\n", + " time = np.linspace(0, t_sim, 2 * Nf + 1)\n", " f = np.linspace(0.0, f_max, Nf)\n", " # spectrum\n", " S = resource.jonswap_spectrum(f, tp, hs, gamma)\n", " # 1-hour elevation time-series\n", " data = resource.surface_elevation(S, time).values.squeeze()\n", " # 3-hour extreme distribution\n", - " ste = extreme.short_term_extreme(time, data, t_st, 'peaks_weibull_tail_fit')\n", + " ste = extreme.short_term_extreme(time, data, t_st, \"peaks_weibull_tail_fit\")\n", " ste_all.append(ste)" ] }, @@ -271,7 +277,7 @@ "\n", "hs_design = hs_samples[max_ind]\n", "te_design = te_samples[max_ind]\n", - "print(f\"Design sea state (Hs, Te): ({hs_design} m, {te_design} s)\")\n" + "print(f\"Design sea state (Hs, Te): ({hs_design} m, {te_design} s)\")" ] }, { diff --git a/examples/extreme_response_full_sea_state_example.ipynb b/examples/extreme_response_full_sea_state_example.ipynb index 258a3fcb2..28cf6c745 100644 --- a/examples/extreme_response_full_sea_state_example.ipynb +++ b/examples/extreme_response_full_sea_state_example.ipynb @@ -52,13 +52,13 @@ "metadata": {}, "outputs": [], "source": [ - "parameter = 'swden'\n", - "buoy_number = '46022'\n", + "parameter = \"swden\"\n", + "buoy_number = \"46022\"\n", "ndbc_available_data = ndbc.available_data(parameter, buoy_number)\n", "\n", "years_of_interest = ndbc_available_data[ndbc_available_data.year < 2013]\n", "\n", - "filenames = years_of_interest['filename']\n", + "filenames = years_of_interest[\"filename\"]\n", "ndbc_requested_data = ndbc.request_data(parameter, filenames)\n", "\n", "ndbc_data = {}\n", @@ -90,7 +90,7 @@ "Hm0 = Hm0_Te_clean.Hm0.values\n", "Te = Hm0_Te_clean.Te.values\n", "\n", - "dt = (Hm0_Te_clean.index[2]-Hm0_Te_clean.index[1]).seconds" + "dt = (Hm0_Te_clean.index[2] - Hm0_Te_clean.index[1]).seconds" ] }, { @@ -122,7 +122,8 @@ "\n", "# Create samples\n", "sample_hs, sample_te, sample_weights = contours.samples_full_seastate(\n", - " Hm0, Te, npoints, levels, dt)" + " Hm0, Te, npoints, levels, dt\n", + ")" ] }, { @@ -160,9 +161,10 @@ "\n", "for period in levels:\n", " copula = contours.environmental_contours(\n", - " Hm0, Te, dt, period, 'PCA', return_PCA=True)\n", - " Hm0_contours.append(copula['PCA_x1'])\n", - " Te_contours.append(copula['PCA_x2'])\n", + " Hm0, Te, dt, period, \"PCA\", return_PCA=True\n", + " )\n", + " Hm0_contours.append(copula[\"PCA_x1\"])\n", + " Te_contours.append(copula[\"PCA_x2\"])\n", "\n", "# plot\n", "fig, ax = plt.subplots(figsize=(8, 4))\n", @@ -170,10 +172,16 @@ "labels = [f\"{period}-year Contour\" for period in levels]\n", "\n", "ax = graphics.plot_environmental_contour(\n", - " sample_te, sample_hs, Te_contours, Hm0_contours,\n", - " data_label='Samples', contour_label=labels,\n", - " x_label='Energy Period, $Te$ [s]',\n", - " y_label='Sig. wave height, $Hm0$ [m]', ax=ax)\n" + " sample_te,\n", + " sample_hs,\n", + " Te_contours,\n", + " Hm0_contours,\n", + " data_label=\"Samples\",\n", + " contour_label=labels,\n", + " x_label=\"Energy Period, $Te$ [s]\",\n", + " y_label=\"Sig. wave height, $Hm0$ [m]\",\n", + " ax=ax,\n", + ")" ] }, { @@ -423,29 +431,29 @@ "source": [ "# create the short-term extreme distribution for each sample sea state\n", "t_st = 3.0 * 60.0 * 60.0\n", - "gamma = 3.3 \n", + "gamma = 3.3\n", "t_sim = 1.0 * 60.0 * 60.0\n", "\n", "ste_all = []\n", "i = 0\n", "n = len(sample_hs)\n", "for hs, te in zip(sample_hs, sample_te):\n", - " tp = te / (0.8255 + 0.03852*gamma - 0.005537*gamma**2 + 0.0003154*gamma**3)\n", + " tp = te / (0.8255 + 0.03852 * gamma - 0.005537 * gamma**2 + 0.0003154 * gamma**3)\n", " i += 1\n", " print(f\"Sea state {i}/{n}. (Hs, Te) = ({hs} m, {te} s). Tp = {tp} s\")\n", " # time & frequency arrays\n", - " df = 1.0/t_sim\n", - " T_min = tp/10.0 # s\n", - " f_max = 1.0/T_min\n", - " Nf = int(f_max/df) + 1\n", - " time = np.linspace(0, t_sim, 2*Nf+1)\n", + " df = 1.0 / t_sim\n", + " T_min = tp / 10.0 # s\n", + " f_max = 1.0 / T_min\n", + " Nf = int(f_max / df) + 1\n", + " time = np.linspace(0, t_sim, 2 * Nf + 1)\n", " f = np.linspace(0.0, f_max, Nf)\n", " # spectrum\n", " S = resource.jonswap_spectrum(f, tp, hs, gamma)\n", " # 1-hour elevation time-series\n", " data = resource.surface_elevation(S, time).values.squeeze()\n", " # 3-hour extreme distribution\n", - " ste = extreme.short_term_extreme(time, data, t_st, 'peaks_weibull_tail_fit')\n", + " ste = extreme.short_term_extreme(time, data, t_st, \"peaks_weibull_tail_fit\")\n", " ste_all.append(ste)" ] }, @@ -494,7 +502,7 @@ } ], "source": [ - "t_st_hr = t_st/(60.0*60.0)\n", + "t_st_hr = t_st / (60.0 * 60.0)\n", "t_return_yr = 100.0\n", "x_t = extreme.return_year_value(lte.ppf, t_return_yr, t_st_hr)\n", "\n", @@ -547,11 +555,11 @@ "# format plot\n", "plt.grid(True, which=\"major\", linestyle=\":\")\n", "ax.tick_params(axis=\"both\", which=\"major\", direction=\"in\")\n", - "ax.xaxis.set_ticks_position('both')\n", - "ax.yaxis.set_ticks_position('both') \n", + "ax.xaxis.set_ticks_position(\"both\")\n", + "ax.yaxis.set_ticks_position(\"both\")\n", "plt.minorticks_off()\n", "ax.set_xticks([0, 5, 10, 15, 20])\n", - "ax.set_yticks(1.0*10.0**(-1*np.arange(11)))\n", + "ax.set_yticks(1.0 * 10.0 ** (-1 * np.arange(11)))\n", "ax.set_xlabel(\"elevation [m]\")\n", "ax.set_ylabel(\"survival function (1-cdf)\")\n", "ax.set_xlim([0, x[-1]])\n", @@ -560,8 +568,8 @@ "\n", "# 100-year return level\n", "s_t = lte.sf(x_t)\n", - "ax.plot([0, x[-1]], [s_t, s_t], '--', color=\"0.5\", linewidth=1)\n", - "ax.plot([x_t, x_t], ylim, '--', color=\"0.5\", linewidth=1)\n" + "ax.plot([0, x[-1]], [s_t, s_t], \"--\", color=\"0.5\", linewidth=1)\n", + "ax.plot([x_t, x_t], ylim, \"--\", color=\"0.5\", linewidth=1)" ] } ], diff --git a/examples/loads_example.ipynb b/examples/loads_example.ipynb index 978b13e8f..50335034b 100644 --- a/examples/loads_example.ipynb +++ b/examples/loads_example.ipynb @@ -16,11 +16,11 @@ "metadata": {}, "outputs": [], "source": [ - "import pandas as pd \n", - "import numpy as np \n", + "import pandas as pd\n", + "import numpy as np\n", "from mhkit import utils\n", - "from mhkit import loads \n", - "import matplotlib.pyplot as plt " + "from mhkit import loads\n", + "import matplotlib.pyplot as plt" ] }, { @@ -238,7 +238,7 @@ } ], "source": [ - "loads_data_file = './data/loads/data_loads_example.csv'\n", + "loads_data_file = \"./data/loads/data_loads_example.csv\"\n", "\n", "# Import csv data file\n", "raw_loads_data = pd.read_csv(loads_data_file)\n", @@ -488,16 +488,16 @@ ], "source": [ "# Use the datetime conversion from the utils module\n", - "datetime = utils.excel_to_datetime(raw_loads_data['Timestamp'])\n", + "datetime = utils.excel_to_datetime(raw_loads_data[\"Timestamp\"])\n", "\n", "# Replace the 'Timestamp' column with our newly formatted datetime\n", - "raw_loads_data['Timestamp'] = datetime \n", + "raw_loads_data[\"Timestamp\"] = datetime\n", "\n", "# Set this as our index for our DataFrame\n", - "loads_data = raw_loads_data.set_index('Timestamp')\n", + "loads_data = raw_loads_data.set_index(\"Timestamp\")\n", "\n", "# Remove the 'time' column since it will not be used\n", - "loads_data.drop(columns='Time',inplace=True)\n", + "loads_data.drop(columns=\"Time\", inplace=True)\n", "loads_data.head()" ] }, @@ -532,12 +532,14 @@ ], "source": [ "# Calculate the damage equivalent load for blade 1 root momement and tower base moment\n", - "DEL_tower = loads.general.damage_equivalent_load(loads_data['TB_ForeAft'],4,\n", - " bin_num=100,data_length=600)\n", - "DEL_blade = loads.general.damage_equivalent_load(loads_data['BL1_FlapMom'],10,\n", - " bin_num=100,data_length=600)\n", - "print('DEL TB_ForeAft: '+ str(DEL_tower))\n", - "print('DEL BL1_FlapMom: '+ str(DEL_blade))" + "DEL_tower = loads.general.damage_equivalent_load(\n", + " loads_data[\"TB_ForeAft\"], 4, bin_num=100, data_length=600\n", + ")\n", + "DEL_blade = loads.general.damage_equivalent_load(\n", + " loads_data[\"BL1_FlapMom\"], 10, bin_num=100, data_length=600\n", + ")\n", + "print(\"DEL TB_ForeAft: \" + str(DEL_tower))\n", + "print(\"DEL BL1_FlapMom: \" + str(DEL_blade))" ] }, { @@ -647,7 +649,7 @@ ], "source": [ "# Calculate the means, maxs, mins, and stdevs for all data signals in the loads data file\n", - "means,maxs,mins,stdevs = utils.get_statistics(loads_data,50,period=600)\n", + "means, maxs, mins, stdevs = utils.get_statistics(loads_data, 50, period=600)\n", "\n", "# Display the results, indexed by the first timestamp of the corresponding statistical window\n", "means" @@ -874,10 +876,10 @@ ], "source": [ "# Load DataFrames containing load statistics\n", - "means = pd.read_csv('./data/loads/data_loads_means.csv')\n", - "maxs = pd.read_csv('./data/loads/data_loads_maxs.csv')\n", - "mins = pd.read_csv('./data/loads/data_loads_mins.csv')\n", - "std = pd.read_csv('./data/loads/data_loads_std.csv')\n", + "means = pd.read_csv(\"./data/loads/data_loads_means.csv\")\n", + "maxs = pd.read_csv(\"./data/loads/data_loads_maxs.csv\")\n", + "mins = pd.read_csv(\"./data/loads/data_loads_mins.csv\")\n", + "std = pd.read_csv(\"./data/loads/data_loads_std.csv\")\n", "\n", "means.head()" ] @@ -932,23 +934,27 @@ } ], "source": [ - "loads.graphics.plot_statistics(means['uWind_80m'],\n", - " means['BL1_FlapMom'],\n", - " maxs['BL1_FlapMom'],\n", - " mins['BL1_FlapMom'],\n", - " y_stdev=std['BL1_FlapMom'],\n", - " xlabel='Wind Speed [m/s]',\n", - " ylabel='Blade Flap Moment [kNm]',\n", - " title = 'Blade Flap Moment Load Statistics')\n", + "loads.graphics.plot_statistics(\n", + " means[\"uWind_80m\"],\n", + " means[\"BL1_FlapMom\"],\n", + " maxs[\"BL1_FlapMom\"],\n", + " mins[\"BL1_FlapMom\"],\n", + " y_stdev=std[\"BL1_FlapMom\"],\n", + " xlabel=\"Wind Speed [m/s]\",\n", + " ylabel=\"Blade Flap Moment [kNm]\",\n", + " title=\"Blade Flap Moment Load Statistics\",\n", + ")\n", "\n", - "loads.graphics.plot_statistics(means['uWind_80m'],\n", - " means['TB_ForeAft'],\n", - " maxs['TB_ForeAft'],\n", - " mins['TB_ForeAft'],\n", - " y_stdev=std['TB_ForeAft'],\n", - " xlabel='Wind Speed [m/s]',\n", - " ylabel='Tower Base Moment [kNm]',\n", - " title = 'Tower Base Moment Load Statistics')" + "loads.graphics.plot_statistics(\n", + " means[\"uWind_80m\"],\n", + " means[\"TB_ForeAft\"],\n", + " maxs[\"TB_ForeAft\"],\n", + " mins[\"TB_ForeAft\"],\n", + " y_stdev=std[\"TB_ForeAft\"],\n", + " xlabel=\"Wind Speed [m/s]\",\n", + " ylabel=\"Tower Base Moment [kNm]\",\n", + " title=\"Tower Base Moment Load Statistics\",\n", + ")" ] }, { @@ -1587,13 +1593,13 @@ ], "source": [ "# Create array containing wind speeds to use as bin edges\n", - "bin_edges = np.arange(3,26,1)\n", - "bin_against = means['uWind_80m']\n", + "bin_edges = np.arange(3, 26, 1)\n", + "bin_against = means[\"uWind_80m\"]\n", "\n", - "# Apply function for means, maxs, and mins \n", - "[bin_means, bin_means_std] = loads.general.bin_statistics(means,bin_against,bin_edges)\n", - "[bin_maxs, bin_maxs_std] = loads.general.bin_statistics(maxs,bin_against,bin_edges)\n", - "[bin_mins, bin_mins_std] = loads.general.bin_statistics(mins,bin_against,bin_edges)\n", + "# Apply function for means, maxs, and mins\n", + "[bin_means, bin_means_std] = loads.general.bin_statistics(means, bin_against, bin_edges)\n", + "[bin_maxs, bin_maxs_std] = loads.general.bin_statistics(maxs, bin_against, bin_edges)\n", + "[bin_mins, bin_mins_std] = loads.general.bin_statistics(mins, bin_against, bin_edges)\n", "\n", "bin_means" ] @@ -1637,8 +1643,8 @@ ], "source": [ "# Specify center of each wind speed bin, and signal name for analysis\n", - "bin_centers = np.arange(3.5,25.5,step=1) \n", - "signal_name = 'TB_ForeAft' \n", + "bin_centers = np.arange(3.5, 25.5, step=1)\n", + "signal_name = \"TB_ForeAft\"\n", "\n", "# Specify inputs to be used in plotting\n", "bin_mean = bin_means[signal_name]\n", @@ -1649,11 +1655,18 @@ "bin_min_std = bin_mins_std[signal_name]\n", "\n", "# Plot binned statistics\n", - "loads.graphics.plot_bin_statistics(bin_centers,bin_mean,bin_max,bin_min,\n", - " bin_mean_std,bin_max_std,bin_min_std,\n", - " xlabel='Wind Speed [m/s]',\n", - " ylabel=signal_name,\n", - " title='Binned Statistics')\n" + "loads.graphics.plot_bin_statistics(\n", + " bin_centers,\n", + " bin_mean,\n", + " bin_max,\n", + " bin_min,\n", + " bin_mean_std,\n", + " bin_max_std,\n", + " bin_min_std,\n", + " xlabel=\"Wind Speed [m/s]\",\n", + " ylabel=signal_name,\n", + " title=\"Binned Statistics\",\n", + ")" ] } ], diff --git a/examples/metocean_example.ipynb b/examples/metocean_example.ipynb index cc94569d7..c8675ac75 100644 --- a/examples/metocean_example.ipynb +++ b/examples/metocean_example.ipynb @@ -262,8 +262,8 @@ ], "source": [ "# Specify the parameter as continuous wind speeds and the buoy number to be 46022\n", - "ndbc_dict = {'parameter':'cwind','buoy_number':'46022'} \n", - "available_data = ndbc.available_data(ndbc_dict['parameter'], ndbc_dict['buoy_number'])\n", + "ndbc_dict = {\"parameter\": \"cwind\", \"buoy_number\": \"46022\"}\n", + "available_data = ndbc.available_data(ndbc_dict[\"parameter\"], ndbc_dict[\"buoy_number\"])\n", "available_data" ] }, @@ -333,7 +333,7 @@ "source": [ "# Slice the available data to only include 2018 and more recent\n", "years_of_interest = available_data[available_data.year == 2018]\n", - "years_of_interest\n" + "years_of_interest" ] }, { @@ -376,8 +376,8 @@ ], "source": [ "# Get dictionary of parameter data by year\n", - "ndbc_dict['filenames'] = years_of_interest['filename']\n", - "requested_data = ndbc.request_data(ndbc_dict['parameter'], ndbc_dict['filenames'])\n", + "ndbc_dict[\"filenames\"] = years_of_interest[\"filename\"]\n", + "requested_data = ndbc.request_data(ndbc_dict[\"parameter\"], ndbc_dict[\"filenames\"])\n", "requested_data" ] }, @@ -554,13 +554,15 @@ ], "source": [ "# Convert the header dates to a Datetime Index and remove NOAA date columns for each year\n", - "ndbc_dict['2018'] = ndbc.to_datetime_index(ndbc_dict['parameter'], requested_data['2018'])\n", + "ndbc_dict[\"2018\"] = ndbc.to_datetime_index(\n", + " ndbc_dict[\"parameter\"], requested_data[\"2018\"]\n", + ")\n", "\n", "# Replace 99, 999, 9999 with NaN\n", - "ndbc_dict['2018'] = ndbc_dict['2018'].replace({99.0:np.NaN, 999:np.NaN, 9999:np.NaN})\n", + "ndbc_dict[\"2018\"] = ndbc_dict[\"2018\"].replace({99.0: np.NaN, 999: np.NaN, 9999: np.NaN})\n", "\n", "# Display DataFrame of 46022 data from 2018\n", - "ndbc_dict['2018']" + "ndbc_dict[\"2018\"]" ] }, { @@ -648,7 +650,9 @@ ], "source": [ "# Input parameters for site of interest\n", - "temperatures = wind_toolkit.elevation_to_string('temperature',[2, 20, 40, 60, 80, 100, 120, 140, 160])\n", + "temperatures = wind_toolkit.elevation_to_string(\n", + " \"temperature\", [2, 20, 40, 60, 80, 100, 120, 140, 160]\n", + ")\n", "temperatures" ] }, @@ -658,11 +662,13 @@ "metadata": {}, "outputs": [], "source": [ - "wtk_inputs = {'time_interval':'1-hour',\n", - " 'wind_parameters':['windspeed_10m','winddirection_10m'],\n", - " 'temp_parameters':temperatures,\n", - " 'year':[2018],\n", - " 'lat_lon':(40.748, -124.527)}" + "wtk_inputs = {\n", + " \"time_interval\": \"1-hour\",\n", + " \"wind_parameters\": [\"windspeed_10m\", \"winddirection_10m\"],\n", + " \"temp_parameters\": temperatures,\n", + " \"year\": [2018],\n", + " \"lat_lon\": (40.748, -124.527),\n", + "}" ] }, { @@ -692,7 +698,7 @@ } ], "source": [ - "requested_region = wind_toolkit.region_selection(wtk_inputs['lat_lon'])\n", + "requested_region = wind_toolkit.region_selection(wtk_inputs[\"lat_lon\"])\n", "requested_region" ] }, @@ -725,7 +731,7 @@ } ], "source": [ - "wind_toolkit.plot_region(requested_region,lat_lon=wtk_inputs['lat_lon'])" + "wind_toolkit.plot_region(requested_region, lat_lon=wtk_inputs[\"lat_lon\"])" ] }, { @@ -859,8 +865,11 @@ ], "source": [ "wtk_wind, wtk_metadata = wind_toolkit.request_wtk_point_data(\n", - " wtk_inputs['time_interval'],wtk_inputs['wind_parameters'],\n", - " wtk_inputs['lat_lon'],wtk_inputs['year'])\n", + " wtk_inputs[\"time_interval\"],\n", + " wtk_inputs[\"wind_parameters\"],\n", + " wtk_inputs[\"lat_lon\"],\n", + " wtk_inputs[\"year\"],\n", + ")\n", "wtk_wind" ] }, @@ -908,21 +917,31 @@ ], "source": [ "# Get WIND Toolkit and NDBC wind data for 2018-01-11\n", - "ndbc_hourly_data = ndbc_dict['2018']['2018-01-11'].resample('h').nearest()\n", - "wtk_hourly_wind = wtk_wind['2018-01-11']\n", + "ndbc_hourly_data = ndbc_dict[\"2018\"][\"2018-01-11\"].resample(\"h\").nearest()\n", + "wtk_hourly_wind = wtk_wind[\"2018-01-11\"]\n", "\n", "# Plot the timeseries\n", "fig = plt.figure()\n", "ax = fig.add_subplot(111)\n", - "ax.set_xlabel('Time, UTC (h)')\n", - "ax.set_ylabel('Speed (m/s)')\n", - "ax.set_title('Hourly mean wind speeds on January 11, 2018')\n", + "ax.set_xlabel(\"Time, UTC (h)\")\n", + "ax.set_ylabel(\"Speed (m/s)\")\n", + "ax.set_title(\"Hourly mean wind speeds on January 11, 2018\")\n", "ax.grid()\n", "ax.set_ylim([5, 14])\n", "ax.set_xlim([0, 24])\n", - "line1 = ax.plot(ndbc_hourly_data.index.hour,ndbc_hourly_data['WSPD'].values,'o',label='NDBC 4m wind speed')\n", - "line2 = ax.plot(wtk_hourly_wind.index.hour,wtk_hourly_wind['windspeed_10m_0'].values,'x',label='WIND Toolkit 10m wind speed')\n", - "ax.legend()\n" + "line1 = ax.plot(\n", + " ndbc_hourly_data.index.hour,\n", + " ndbc_hourly_data[\"WSPD\"].values,\n", + " \"o\",\n", + " label=\"NDBC 4m wind speed\",\n", + ")\n", + "line2 = ax.plot(\n", + " wtk_hourly_wind.index.hour,\n", + " wtk_hourly_wind[\"windspeed_10m_0\"].values,\n", + " \"x\",\n", + " label=\"WIND Toolkit 10m wind speed\",\n", + ")\n", + "ax.legend()" ] }, { @@ -955,12 +974,13 @@ ], "source": [ "# Set the rose bin widths\n", - "width_direction = 10 # in degrees\n", - "width_velocity = 1 # in m/s\n", + "width_direction = 10 # in degrees\n", + "width_velocity = 1 # in m/s\n", "\n", "# Plot the wind rose\n", - "ax = plot_rose(ndbc_hourly_data['WDIR'],ndbc_hourly_data['WSPD'],\n", - " width_direction,width_velocity)\n" + "ax = plot_rose(\n", + " ndbc_hourly_data[\"WDIR\"], ndbc_hourly_data[\"WSPD\"], width_direction, width_velocity\n", + ")" ] }, { @@ -984,8 +1004,12 @@ } ], "source": [ - "ax2 = plot_rose(wtk_hourly_wind['winddirection_10m_0'],wtk_hourly_wind['windspeed_10m_0'],\n", - " width_direction,width_velocity)" + "ax2 = plot_rose(\n", + " wtk_hourly_wind[\"winddirection_10m_0\"],\n", + " wtk_hourly_wind[\"windspeed_10m_0\"],\n", + " width_direction,\n", + " width_velocity,\n", + ")" ] }, { @@ -1026,31 +1050,34 @@ ], "source": [ "wtk_temp, wtk_metadata = wind_toolkit.request_wtk_point_data(\n", - " wtk_inputs['time_interval'],wtk_inputs['temp_parameters'],\n", - " wtk_inputs['lat_lon'],wtk_inputs['year'])\n", + " wtk_inputs[\"time_interval\"],\n", + " wtk_inputs[\"temp_parameters\"],\n", + " wtk_inputs[\"lat_lon\"],\n", + " wtk_inputs[\"year\"],\n", + ")\n", "# wtk_temp = wtk_temp.shift(-7) # optionally UTC to local time\n", "\n", - "# Pick times corresponding to stable and unstable temperature profiles \n", - "stable_temp = wtk_temp.at_time('2018-01-11 03:00:00').values[0]\n", - "unstable_temp = wtk_temp.at_time('2018-01-11 15:00:00').values[0]\n", + "# Pick times corresponding to stable and unstable temperature profiles\n", + "stable_temp = wtk_temp.at_time(\"2018-01-11 03:00:00\").values[0]\n", + "unstable_temp = wtk_temp.at_time(\"2018-01-11 15:00:00\").values[0]\n", "\n", "# Find heights from temperature DataFrame columns\n", "heights = []\n", "for s in wtk_temp.keys():\n", - " s = s.removeprefix('temperature_')\n", - " s = s.removesuffix('m_0')\n", + " s = s.removeprefix(\"temperature_\")\n", + " s = s.removesuffix(\"m_0\")\n", " heights.append(float(s))\n", "heights = np.array(heights)\n", "\n", "# Plot the profiles\n", "fig = plt.figure()\n", "ax = fig.add_subplot(111)\n", - "ax.set_xlabel('Temperature (C)')\n", - "ax.set_ylabel('Height (m)')\n", - "ax.set_title('Temperature profiles from January 11, 2018')\n", + "ax.set_xlabel(\"Temperature (C)\")\n", + "ax.set_ylabel(\"Height (m)\")\n", + "ax.set_title(\"Temperature profiles from January 11, 2018\")\n", "ax.grid()\n", - "line1 = ax.plot(stable_temp,heights,'o-',label='time=03:00:00 UTC')\n", - "line2 = ax.plot(unstable_temp,heights,'x-',label='time=15:00:00 UTC')\n", + "line1 = ax.plot(stable_temp, heights, \"o-\", label=\"time=03:00:00 UTC\")\n", + "line2 = ax.plot(unstable_temp, heights, \"x-\", label=\"time=15:00:00 UTC\")\n", "ax.legend()" ] } diff --git a/examples/mooring_example.ipynb b/examples/mooring_example.ipynb index 1f0dd5e33..6340c190b 100644 --- a/examples/mooring_example.ipynb +++ b/examples/mooring_example.ipynb @@ -473,8 +473,8 @@ } ], "source": [ - "fpath = '.\\data\\mooring\\line1_test.out'\n", - "inputfile = '.\\data\\mooring\\TestInput.MD.dat'\n", + "fpath = \".\\data\\mooring\\line1_test.out\"\n", + "inputfile = \".\\data\\mooring\\TestInput.MD.dat\"\n", "\n", "ds = mooring.io.read_moordyn(fpath, input_file=inputfile)\n", "ds" @@ -917,7 +917,11 @@ } ], "source": [ - "print('The average lay length of the mooring line is: ' + str(laylength.mean().values.round()) + ' meters')" + "print(\n", + " \"The average lay length of the mooring line is: \"\n", + " + str(laylength.mean().values.round())\n", + " + \" meters\"\n", + ")" ] }, { @@ -273117,9 +273121,18 @@ "%matplotlib agg\n", "from IPython.display import HTML\n", "\n", - "dsani = ds.sel(Time=slice(0,10))\n", + "dsani = ds.sel(Time=slice(0, 10))\n", "\n", - "ani = mooring.graphics.animate(dsani, dimension='3d', interval=10, repeat=True, xlabel='X-axis',ylabel='Y-axis',zlabel='Depth [m]', title='Mooring Line Example')\n", + "ani = mooring.graphics.animate(\n", + " dsani,\n", + " dimension=\"3d\",\n", + " interval=10,\n", + " repeat=True,\n", + " xlabel=\"X-axis\",\n", + " ylabel=\"Y-axis\",\n", + " zlabel=\"Depth [m]\",\n", + " title=\"Mooring Line Example\",\n", + ")\n", "HTML(ani.to_jshtml())" ] }, @@ -391699,8 +391712,16 @@ ], "source": [ "%matplotlib agg\n", - "ani2d = mooring.graphics.animate(dsani, dimension='2d', xaxis='x',yaxis='z', repeat=True, \n", - " xlabel='X-axis',ylabel='Depth [m]', title='Mooring Line Example')\n", + "ani2d = mooring.graphics.animate(\n", + " dsani,\n", + " dimension=\"2d\",\n", + " xaxis=\"x\",\n", + " yaxis=\"z\",\n", + " repeat=True,\n", + " xlabel=\"X-axis\",\n", + " ylabel=\"Depth [m]\",\n", + " title=\"Mooring Line Example\",\n", + ")\n", "\n", "HTML(ani2d.to_jshtml())" ] diff --git a/examples/power_example.ipynb b/examples/power_example.ipynb index 3362958b8..8997df4ab 100644 --- a/examples/power_example.ipynb +++ b/examples/power_example.ipynb @@ -13,7 +13,9 @@ { "cell_type": "code", "execution_count": 1, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ "import numpy as np\n", @@ -149,9 +151,13 @@ ], "source": [ "# Read in time-series data of voltage (V) and current (I)\n", - "power_data = pd.read_csv('data/power/2020224_181521_PowRaw.csv',skip_blank_lines=True,index_col='Time_UTC') \n", - "# Convert the time index to type \"datetime\" \n", - "power_data.index=pd.to_datetime(power_data.index)\n", + "power_data = pd.read_csv(\n", + " \"data/power/2020224_181521_PowRaw.csv\", skip_blank_lines=True, index_col=\"Time_UTC\"\n", + ")\n", + "\n", + "# Convert the time index to type \"datetime\"\n", + "power_data.index = pd.to_datetime(power_data.index)\n", + "\n", "# Display the data\n", "power_data.head()" ] @@ -174,29 +180,29 @@ "outputs": [ { "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAA44AAAFNCAYAAABPFDGnAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8QVMy6AAAACXBIWXMAAAsTAAALEwEAmpwYAAEAAElEQVR4nOx9d5wkR3n2U90zu3s56E45nBIoCxAIiRwEJohg44DBBkewjT+DsY2FsU2yTQ4WGZNFzkEB5ZxPWad4Ot1Jd7qc0+7OdNf3R9Vb9VZ1dU/Y3ZnZUz2/n3SzPT3d1dUV3vi8QkqJiIiIiIiIiIiIiIiIiIgyJP1uQERERERERERERERERMRgIyqOEREREREREREREREREZWIimNEREREREREREREREREJaLiGBEREREREREREREREVGJqDhGREREREREREREREREVCIqjhERERERERERERERERGViIpjRERERERERERERERERCWi4hgREREREdECQoirhBBbhRDDge/eJIRYKoTYJYRYK4S4SAjxvJLrfEsIMa7P3SKEuFQIcdzUP0FERERERMTEEBXHiIiIiIiICgghlgB4PgAJ4LXed+8G8FkA/wPgAACHA/gigNdVXPLjUsrZAA4FsAHAtya7ze1ACFHrx30jIiIiIqYnouIYERERERFRjbcAuAlKwXsrHRRCzAPwIQDvkFL+XEq5W0rZkFL+Rkr5L60uKqXcA+D7AE7S1zteeza3CSGWCSFeq48fqY8l+u//E0JsYO04TwjxLmqTEOLr2vO5RgjxX0KIVH/3Z0KI64UQnxFCbAbwgUnom4iIiIiIJwmi4hgREREREVGNtwD4nv7vd4QQB+jjZwIYAfCLbi4qhJgN4M0A7hBC1AH8BsAlAPYH8P8AfE8I8VQp5aMAdgB4uv7pCwDsEkIcr/9+IYCr9edvAWgCOEaf/3IAf8Vu+2wAK6C8o//dTbsjIiIiIp6ciIpjRERERERECXSu4hEAfiylvA3AIwDepL/eD8AmKWWzw8v+sxBiG4DlAGYD+DMAZ+jPH5VSjksprwBwPoA/1r+5GsALhRAH6r9/qv8+EsBcAHdphfZVAN6lvZ8bAHwGwBvZvZ+QUn5OStmUUu7tsN0REREREU9ixPyGiIiIiIiIcrwVwCVSyk367+/rY58BsBnAIiFErUPl8ZNSyn/nB4QQzwTwuJQyZ4dXAThEf74aKr9yNYBrAFwF4E8BjAK4VkqZCyGOAFAHsFYIQddIADzOrsk/R0REREREtI2oOEZERERERAQghJgB4A8BpEKIdfrwMID5QohTAdwIYAzA66E8gBPBEwAOE0IkTHk8HMBD+vPVAD4BpTheDeA6AF+GUhwpTPVx3Z5FFYqsnGA7IyIiIiKepIihqhEREREREWG8HkAG4AQAT9P/HQ/gWgBvkVJuB/CfAL4ghHi9EGKmEKIuhHilEOLjHd7rZgB7ALxHX+NFAF4D4IcAIKV8GMBeAH8C4Gop5Q4A6wG8AVpxlFKuhcqR/JQQYq4QIhFCHC2EeGGXzx8REREREWEQFceIiIiIiIgw3grgm1LKx6SU6+g/AJ8H8GYdovopAO8G8O8ANkJ5/f4ewC87uZGUchxKUXwlgE1QJT3eIqV8gJ12NYDNUsrH2d8CwO3snLcAGAJwH4CtUJ7QgzppS0RERERERAhCyhi1EhEREREREREREREREVGO6HGMiIiIiIiIiIiIiIiIqERUHCMiIiIiIiIiIiIiIiIqERXHiIiIiIiIiIiIiIiIiEpExTEiIiIiIiIiIiIiIiKiElFxjIiIiIiIiIiIiIiIiKhErd8NGBQsWrRILlmypN/NiIiIiIiIiIiIiIiI6Atuu+22TVLKxaHvouKosWTJEixdurTfzYiIiIiIiIiIiIiIiOgLhBCryr6LoaoRERERERERERERERERlYiKY0REREREREREREREREQlouIYERERERERERERERERUYmoOEZERERERERERERERERUIiqOEREREREREREREREREZWIimNEREREREREREREREREJaLiGBEREREREREREREREVGJKVcchRCpEOIOIcT5+u/vCSEeFELcK4T4hhCiro8LIcS5QojlQoi7hRDPYNd4qxDiYf3fW9nx04QQ9+jfnCuEEPr4QiHEpfr8S4UQC6b6OSMiIiIiIiIiIiIiIvZV9MLj+E4A97O/vwfgOAAnA5gB4K/08VcCOFb/9zYAXwKUEgjg/QCeDeB0AO9niuCXAPw1+90r9PFzAFwupTwWwOX674iIiIiIiIiIiIiIiIguMKWKoxDiUACvBvA1OialvFBqALgFwKH6q9cB+I7+6iYA84UQBwH4HQCXSim3SCm3ArgUwCv0d3OllDfpa30HwOvZ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\n", + "image/png": "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vvlm7d69W1lZWZKkH/3oR3r66af197//XZJ0wQUXqLq6Ws8884zRjtGjR2vYsGFauXKlgsGgysvL9cMf/lDXXXed0ZbS0lL95je/0YUXXhjXulVVVamwsFCHDh0y1gkAACBRev7o/xmPdyw9y8GWAACQHHMf/4v+3zu7JElPfX+Mhp/QweEWAfFrTpzINWMr6uvrtXr1alVXV6uyslI1NTXy+XzKzs42lsnJyZHf79err74qSdqwYYOKioqM4J0kTZo0SX6/Xxs3bjSWGTdunBG8k6SpU6dq27ZtOnDggLHMpEmTLO2ZOnWqNmzYIEn66KOPtHv3bssyhYWFGjVqlLFMJDU1NaqqqrL8AwAAAAAAiWHNwHNNiANIOMf37r/+9a/Ky8tTdna2rrrqKj311FMaNGiQRo8erdzcXN1444364osvVF1dreuuu0719fXatet4dH337t3q3Lmz5e8FAgF17NhRu3fvNpYpLS21LBN6HmsZ8/vmz0VaJpK77rpLhYWFxr/u3bs367sBAAAAAADRmeveUQMPqczxAF5FRYW2bNmijRs36uqrr9Zll12m9957TyUlJVqzZo3+8Ic/KC8vT4WFhTp48KBGjBghv0ei6osWLdKhQ4eMfzt37nS6SQAAAAAApAxLBh4zsCOFOV7dOCsrS3379pUkjRw5Um+++aZWrFihBx98UFOmTNH27du1b98+BQIBFRUVqaysTL1795YklZWVae/evZa/V1dXp/3796usrMxYxj5zbeh5rGXM74de69Kli2WZYcOGRV237OxsyxBgAAAAAACQOBmmBB8y8JDKXJfK1tDQoJqaGstrxcXFKioq0vr167V3715985vflCRVVlbq4MGD2rx5s7Hs+vXr1dDQoFGjRhnLvPzyyzp27JixzLp161RRUaEOHToYy/zpT3+y/D/XrVunyspKSVKvXr1UVlZmWaaqqkobN240lgEAAAAAAMmVYYpqMAstUpmjGXiLFi3StGnTdMIJJ+jw4cN6/PHH9eKLL+r555+XJP3617/WwIEDVVJSog0bNujaa6/VggULVFFRIUkaOHCgzjjjDF155ZVauXKljh07pmuuuUYXXnihysvLJUkXXXSRbrvtNs2aNUs33nijtm7dqhUrVugXv/iF0Y5rr71W48eP1z333KOzzjpLq1ev1qZNm7Rq1SpJks/n0/z5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0003adiwYZo7d666deumtWvX6qWXXtKECRN07733SpIOHz6suXPnauzYsbryyiv12WefqaamRt26dXN2xQAAAAAAAJBWUi6A99lnn2nevHlau3at7rzzTl1zzTWWGWN37typhx56SKeffrrGjx9vfO62227Tk08+qccff1wnnniiDhw4oFmzZun999/X1q1bnVodAAAAAAAApLmUCuDt2LFDc+bMUU1NjbKyspSZmal/+7d/U48ePYwsvPr6eh08eFCdOnWSJCO498wzz+iKK67QSy+9pIEDB0qSPvnkE3Xt2tXJVQIAAAAAAECaS6kaeN26dVNFRYWWLl2qOXPm6ODBg3r44YclSRkZGcZ/Q8E7s3/84x/q3Lmz5T2CdwAAAAAAAHBawOkGJFIgENBPf/pT5efnS5JeeuklvfDCC3rjjTc0evTosBlmjx49Kkl65pln9MADD+h73/ueOnfu7EjbAQAAAAAAgEg8n4FXX19veZ6fn2+8NnPmTGVnZ+uRRx6RJEvwbseOHVq2bJkmTZqkOXPm6Nprr9X111+fvIYDAAAAAAAAcfBcAC+UNRcSGhr74YcfSpJR606SKisrNWHCBL3zzjt64oknLJ/r2bOnunXrpnPPPVd79uzR97///SS0HgAAAAAAAGgez0xisXr1aj300EMqKCjQ17/+dV1wwQUqLS3VoUOHNG/ePG3btk2vvPKKsrKyJMkYLvvhhx9q4cKFysrK0l133aUHHnhAgwcP1mWXXWYJ9gEAAAAAAABu5PoMvIMHD2rmzJlasGCBJk6cqJKSEi1fvlz//d//LUkqLCzU0KFDNWbMGB06dMj4XGi4bO/evTVt2jS9/vrrGjx4sFatWqXi4mJJIngHAAAAAAAA13P9JBZvvvmmtm7dqldffVV9+vSRJI0ePVr//Oc/jWWuueYaZWdnh302GAxq06ZNeuSRR3TgwAHdeeedmj9/frKaDgAAAAAAALSaawN4wWBQPp9Pr7zyitq3b69AoLGpXbt21dixY3X48GHl5+crOzvbWN7M5/PpjjvuUNeuXfV///d/xuy0AAAAAAAAgFe4qgbeyy+/rKNHj+r00083Ana/+93vtHjxYlVWVmrixIm64447dODAAZWXlys/P1+XXXaZMQHFzp079ctf/lLnnHOOKisrJR2f9KJdu3aOrRMAAAAAAADQGq6ogbdv3z5ddtllmjBhgm688UZ9/PHHxnszZ87ULbfcon79+unWW2/VhRdeqG3btumpp57SuHHjtGrVKr333nuSpB07dujJJ5/UmjVrjM8TvAMAAAAAAICXOR7Aq6ur05o1a7Rnzx6tXr1aH3zwgVavXq3a2lpjmUsvvVSTJk1Sfn6+5s2bp9LSUlVUVOiMM85QVVWVPv30U0nS2LFj9eijj2r58uVOrQ4AAAAAAACQUI7XwAsEAhoxYoS6deum6dOn6+9//7uWL1+uM844Q8OGDTOWe/XVV9W5c2eVl5cbrx09elQ+n8+Y3EKSTj311GQ2HwAAAAAAAGhTrqiBZ5+AomvXrvrGN76hn//858bEE2+//baGDx+uxYsXa+LEifr444+1ePFinX322frZz36m7OzssEksAAAAAAAAAK9zRQAvpLa2VllZWVqzZo0uuugirV27VpMnTzbev+OOO/Sf//mfyszMVE1NjW644QbNnj3bwRYDAAAAAAAAbctVATyzMWPGKDc3V7/97W9VWlqq/fv3q2PHjqqurta2bds0YsQIp5sIAAAAAAAAtDnXBfDq6uoUCAT07rvvaujQoVq+fLm2b9+u119/XStXrtTIkSOdbiIAAAAAAACQNK4L4Jmdcsop2rRpk0444QQ9+OCDmjp1qtNNAgAAAAAAAJLK73QDItm+fbsGDx6sd999Vw899JB27NhB8A4AAAAAAABpyZUBvIyMDH3729/Wvn37NGvWLKebAwAAAAAAADjG1UNoAQAAAAAAgHTnygw8AAAAAAAAAMcRwAMAAAAAAABcjAAeAAAAAAAA4GIE8AAAAAAAAAAXI4AHAAAAAAAAuBgBPAAAAAAAAMDFCOABAAAAAAAALkYADwAAAAl3+eWXa8aMGU43AwAAICUEnG4AAAAAvMXn8zX5/i233KIVK1YoGAwmqUUAAACpjQAeAAAAmmXXrl3G49///vdasmSJtm3bZryWl5envLw8J5oGAACQkhhCCwAAgGYpKysz/hUWFsrn81ley8vLCxtCO2HCBM2bN0/z589Xhw4dVFpaqoceekjV1dX67ne/q/z8fPXt21fPPvus5f+1detWTZs2TXl5eSotLdUll1yiffv2JXmNAQAAnEUADwAAAEnx6KOPqri4WH/+8581b948XX311TrvvPM0ZswY/eUvf9GUKVN0ySWX6IsvvpAkHTx4UBMnTtTw4cO1adMmPffcc9qzZ4/OP/98h9cEAAAguQjgAQAAICmGDh2qxYsXq1+/flq0aJFycnJUXFysK6+8Uv369dOSJUv0+eef65133pEk3X///Ro+fLjuvPNODRgwQMOHD9cjjzyiF154Qe+//77DawMAAJA81MADAABAUgwZMsR4nJGRoU6dOmnw4MHGa6WlpZKkvXv3SpLefvttvfDCCxHr6W3fvl39+/dv4xYDAAC4AwE8AAAAJEVmZqbluc/ns7wWmt22oaFBknTkyBFNnz5dP/vZz8L+VpcuXdqwpQAAAO5CAA8AAACuNGLECD3xxBPq2bOnAgG6rQAAIH1RAw8AAACuNHfuXO3fv18zZ87Um2++qe3bt+v555/Xd7/7XdXX1zvdPAAAgKQhgAcAAABXKi8v12uvvab6+npNmTJFgwcP1vz581VUVCS/n24sAABIH75gMBh0uhEAAAAAAAAAIuPWJQAAAAAAAOBiBPAAAAAAAAAAFyOABwAAAAAAALgYATwAAAAAAADAxQjgAQAAAAAAAC5GAA8AAAAAAABwMQJ4AAAAAAAAgIsRwAMAAAAAAABcjAAeAAAAAAAA4GIE8AAAAAAAAAAXI4AHAAAAAAAAuNj/B9yFgfiUTE89AAAAAElFTkSuQmCC", "text/plain": [ - "

" + "
" ] }, - "metadata": { - "needs_background": "light" - }, + "metadata": {}, "output_type": "display_data" } ], "source": [ "# First seperate the voltage and current time-series into seperate dataFrames\n", - "voltage = power_data[['MODAQ_Va_V', 'MODAQ_Vb_V', 'MODAQ_Vc_V']]\n", - "current = power_data[['MODAQ_Ia_I','MODAQ_Ib_I','MODAQ_Ic_I']]\n", + "voltage = power_data[[\"MODAQ_Va_V\", \"MODAQ_Vb_V\", \"MODAQ_Vc_V\"]]\n", + "current = power_data[[\"MODAQ_Ia_I\", \"MODAQ_Ib_I\", \"MODAQ_Ic_I\"]]\n", "\n", "# Set the power factor for the system\n", - "power_factor = 0.96 \n", + "power_factor = 0.96\n", "\n", "# Compute the instantaneous AC power in watts\n", - "ac_power = power.characteristics.ac_power_three_phase(voltage, current, power_factor) \n", + "ac_power = power.characteristics.ac_power_three_phase(voltage, current, power_factor)\n", "# Display the result\n", - "ac_power.Power.plot(figsize=(15,5),title='AC Power').set(xlabel='Time',ylabel='Power [W]');" + "ac_power.Power.plot(figsize=(15, 5), title=\"AC Power\").set(\n", + " xlabel=\"Time\", ylabel=\"Power [W]\"\n", + ");" ] }, { @@ -211,7 +217,9 @@ { "cell_type": "code", "execution_count": 4, - "metadata": {}, + "metadata": { + "scrolled": true + }, "outputs": [ { "data": { @@ -238,49 +246,56 @@ " MODAQ_Vb_V\n", " MODAQ_Vc_V\n", " \n", + " \n", + " Time_UTC\n", + " \n", + " \n", + " \n", + " \n", " \n", " \n", " \n", - " 1\n", + " 2020-02-24 18:15:21.499998208\n", " 902.215367\n", " 1218.092331\n", " 433.063162\n", " \n", " \n", - " 2\n", - " 8.499136\n", - " 12.753006\n", - " 28.996487\n", + " 2020-02-24 18:15:21.500018208\n", + " 8.397956\n", + " 12.601184\n", + " 28.651291\n", " \n", " \n", - " 3\n", + " 2020-02-24 18:15:21.500038209\n", " 509.904722\n", " 671.800108\n", " 268.237845\n", " \n", " \n", - " 4\n", + " 2020-02-24 18:15:21.500058210\n", " 10.176332\n", " 15.101179\n", " 26.504936\n", " \n", " \n", - " 5\n", - " 399.622022\n", - " 524.697779\n", - " 217.596577\n", + " 2020-02-24 18:15:21.500078210\n", + " 404.436745\n", + " 531.019439\n", + " 220.218222\n", " \n", " \n", "\n", "" ], "text/plain": [ - " MODAQ_Va_V MODAQ_Vb_V MODAQ_Vc_V\n", - "1 902.215367 1218.092331 433.063162\n", - "2 8.499136 12.753006 28.996487\n", - "3 509.904722 671.800108 268.237845\n", - "4 10.176332 15.101179 26.504936\n", - "5 399.622022 524.697779 217.596577" + " MODAQ_Va_V MODAQ_Vb_V MODAQ_Vc_V\n", + "Time_UTC \n", + "2020-02-24 18:15:21.499998208 902.215367 1218.092331 433.063162\n", + "2020-02-24 18:15:21.500018208 8.397956 12.601184 28.651291\n", + "2020-02-24 18:15:21.500038209 509.904722 671.800108 268.237845\n", + "2020-02-24 18:15:21.500058210 10.176332 15.101179 26.504936\n", + "2020-02-24 18:15:21.500078210 404.436745 531.019439 220.218222" ] }, "execution_count": 4, @@ -289,25 +304,23 @@ }, { "data": { - "image/png": "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Y8fi888/x/Llyw3HlZeX44svvnAsd9myZbjoootwww03oLGxEa+88gp+9rOfwefz4d1334XP58Prr7+Om2++GS+88IJtGXPnzsWFF16Iqqoq5OfnY82aNbj88sujthFBEATR8SFhj3BHW9UgYY8giE7EyJEjUVlZiYqKCsyfP7/V5XEh8lZFRQWuvPJKAIpQWVFRgbFjx7ao3PLyctTU1GDbtm3YsmULxo8fj7y8PHz77bdYvnw5vvzySzDG0Nzc7FhGIBDAwoULsXbtWixevBgff/wx5s6d26L6EARBEB0LEvYId/QALSTsEQQRX7xo4BLJwoULsWrVKrz11luoqqrStw8dOhQbN27EqFGj9G0bN27EsGHO9f34448xa9YsHDx4EG+++SY2b94MxhhCoRAYY3jggQf0chctWmQot7y83LWemhnmli1bdHPTW265BTNmzMCLL76IyspKTJ8+PWoZd955JzjnWLRoEfz+DuZSQBAEQbQI8tlrA84s72hBWQTIjJMgiE7K+eefj9tuuw0jRowwbF+1ahXuueceVFZWAgAqKytx991349prr7WUwTnHQw89hD179mDevHlYu3Ytvve972H79u2orKzEt99+i9LSUrz77ru47LLL8OSTT+KTTz4BAFRVVWH16tW45ZZbXOu5bNkyPPPMM3jzzTd1QfHIkSN6UJknn3wy6rVOnz4dX375JR5++GGDfyJBEATRuSFhrw3o3y0z2VVoOZpGj6JxEgTRySgpKcEVV1xh2V5WVob77rsPCxYswODBg7FgwQLcf//9KCsr0/e57rrr9NQLH374IdavX49AIICKigqceuqphvIWL16MiooKdO/eHc888wxWrlyJQYMGobi4GFdccQWmTZvmWs8hQ4YgIyMDM2fOREZGBgDg+uuvx0033YTRo0cjGAxGvVZJkrBkyRJUVVVFPR9BEATReWC8Q2X4NlJeXs4/+uijZFfDyO3ZAICLmq7Ba2HFNGf1/CG465UtAIDKe09KWtVaxAsXAZv/Dxh/CXBip0x9SBBEG7JlyxYMGTIk2dVoFzzyyCN49NFH8c477yA3NzfZ1dGhe0QQBKGizusBoE/DswDa51yeMbaRc27rE0CavQRRg7RkVyE+kBknQRBEQrj00kuxefPmdiXoEQRBEJ0Lss1LEP8KD9U/T+pfkMSatBIS9giCIBLO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\n", + "image/png": "iVBORw0KGgoAAAANSUhEUgAABNsAAAHGCAYAAABNZY0zAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8pXeV/AAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOydd3gcxf3G3927U5csuXcwJgk9JCSQwI8WCCEhBBIIIRAgoZhQQkkIpNAh9GqMwVSDbYoLGNy7Me69y91ylVWs3q7s7u+Pvb2d2Z3d2zuddJL9/TwP+LRldrbOzDvfImmapoEgCIIgCIIgCIIgCIIgiFYjp7sCBEEQBEEQBEEQBEEQBHGkQGIbQRAEQRAEQRAEQRAEQaQIEtsIgiAIgiAIgiAIgiAIIkWQ2EYQBEEQBEEQBEEQBEEQKYLENoIgCIIgCIIgCIIgCIJIESS2EQRBEARBEARBEARBEESKILGNIAiCIAiCIAiCIAiCIFIEiW0EQRAEQRAEQRAEQRAEkSJIbCMIgiAIgiAIgiAIgiCIFEFiG0EQBEEQBEEQBEEQBEGkCBLbCIIgCILoEIwcORKSJGHlypVtUv7mzZvx+OOPo6SkpE3KZzl48CAef/xxrF27ts2P1RkpKSmBJEnC/37yk5+ku3oEQRAEQRCtwp/uChAEQRAEQbQHmzdvxhNPPIELLrgAxx57bJse6+DBg3jiiSdw7LHH4vTTT2/TY3Vm/vjHP+JXv/oVt6xHjx5pqg1BEARBEERqILGNIAiCIAiCSAs//OEP8ac//cnTtqqqIhQKISsrq41rRRAEQRAE0TrIjZQgCIIgiA7Ln//8Z+Tl5eHAgQO48sorkZeXhx49euCBBx6Aoijctp999hnOOOMM5Ofno6CgAKeeeipef/11ALqL6u9//3sAwIUXXhhzWZw/fz4A4KuvvsJll12Gvn37IjMzE4MHD8ZTTz1lO8YFF1yAU045BZs3b8aFF16InJwc9OvXDy+88EJsm/nz5+PHP/4xAOAvf/lL7FgjR44EAHz77bf4/e9/j4EDByIzMxMDBgzA/fffj+bm5qTPXVVVvPbaazj55JORlZWFXr164fbbb0d1dbXtmg4fPhwnn3wyMjMz0bdvX9x1112oqanhtjn22GPx5z//2bbvBRdcgAsuuIBb9sYbb+Dkk09GTk4OioqK8KMf/QiffPKJbd9EkSQJd999N8aMGROr7/Tp0wEABw4cwM0334xevXohMzMTJ598Mj744ANbGfv378eVV16J3Nxc9OzZE/fffz9mzJjB3ftEzzcYDOKxxx7D8ccfH7t/Dz74IILBoLD+EydOxCmnnBKrp3EOLAcOHMAtt9wSe/4GDRqEO+64A6FQCLt27YIkSXj11Vdt+y1evBiSJOHTTz/1cEUJgiAIgmgvyLKNIAiCIIgOjaIo+MUvfoGzzjoLL730EmbPno2XX34ZgwcPxh133AEAmDVrFv74xz/ioosuwvPPPw8AKC4uxqJFi3DvvffivPPOwz333IOhQ4fiP//5D0488UQAiP07cuRI5OXl4e9//zvy8vIwd+5cPProo6irq8OLL77I1ae6uhqXXnopfve73+Gaa67B+PHj8dBDD+HUU0/FL3/5S5x44ol48skn8eijj2LIkCE499xzAQBnn302AGDcuHFoamrCHXfcgW7dumH58uV44403sH//fowbNy7hcweA22+/HSNHjsRf/vIX3HPPPdi9ezeGDRuGNWvWYNGiRQgEAgCAxx9/HE888QQuvvhi3HHHHdi6dSveeustrFixgtvOK++++y7uueceXH311bj33nvR0tKC9evXY9myZbjuuuvi7t/U1ITKykpuWZcuXWL1mDt3LsaOHYu7774b3bt3x7HHHouysjL85Cc/iYlZPXr0wLRp03DLLbegrq4O9913HwCgubkZF110Efbu3Yt77rkHffv2xahRozB37tyEzpFFVVX85je/wcKFCzFkyBCceOKJ2LBhA1599VVs27YNEydO5LZfuHAhvvjiC9x5553Iz8/H0KFDcdVVV2Hv3r3o1q0bAN3l+Mwzz0RNTQ2GDBmCE044AQcOHMD48ePR1NSE4447Dueccw7GjBmD+++/nyt/zJgxyM/PxxVXXJH0OREEQRAE0QZoBEEQBEEQHYAPP/xQA6CtWLEituymm27SAGhPPvkkt+0PfvAD7Ywzzoj9fe+992oFBQVaJBJxLH/cuHEaAG3evHm2dU1NTbZlt99+u5aTk6O1tLTElp1//vkaAO3jjz+OLQsGg1rv3r21q666KrZsxYoVGgDtww8/9HSsZ599VpMkSduzZ09smddz//bbbzUA2pgxY7jtpk+fzi0vLy/XMjIytEsuuURTFCW23bBhwzQA2gcffBBbdswxx2g33XSTrZ7nn3++dv7558f+vuKKK7STTz7Ztl08du/erQEQ/mfcHwCaLMvapk2buH1vueUWrU+fPlplZSW3/Nprr9W6dOkSu76vvfaaBkAbO3ZsbJvGxkbt+OOPtz0HXs931KhRmizL2rfffstt9/bbb2sAtEWLFsWWAdAyMjK0HTt2xJatW7dOA6C98cYbsWU33nijJssy99wbqKqqaZqmjRgxQgOgFRcXx9aFQiGte/fuwnoTBEEQBJFeyI2UIAiCIIgOz1//+lfu73PPPRe7du2K/V1YWIjGxkbMmjUrqfKzs7Njv+vr61FZWYlzzz0XTU1N2LJlC7dtXl4eF2csIyMDZ555Jlcfr8dqbGxEZWUlzj77bGiahjVr1ti2j3fu48aNQ5cuXfDzn/8clZWVsf/OOOMM5OXlYd68eQCA2bNnIxQK4b777oMsm13A2267DQUFBZgyZYqn+rMUFhZi//79WLFiRcL7AsCQIUMwa9Ys7r/vf//7sfXnn38+TjrppNjfmqZhwoQJuPzyy6FpGne+v/jFL1BbW4vVq1cDAKZOnYo+ffrg6quvju2fk5ODIUOGJFVXQL/WJ554Ik444QTu2D/72c8AIHatDS6++GIMHjw49vdpp52GgoKC2P1TVRUTJ07E5Zdfjh/96Ee240mSBAC45pprkJWVhTFjxsTWzZgxA5WVlZ5j3hEEQRAE0X6QGylBEARBEB2arKwsW4bKoqIiLh7ZnXfeibFjx+KXv/wl+vXrh0suuQTXXHMNLr30Uk/H2LRpEx5++GHMnTsXdXV13Lra2lru7/79+8dEELY+69ev93SsvXv34tFHH8XXX39ti6lmPZaXc9++fTtqa2vRs2dP4fHKy8sBAHv27AEAfO973+PWZ2Rk4LjjjoutT4SHHnoIs2fPxplnnonjjz8el1xyCa677jqcc845nvb/zne+g4svvthx/aBBg7i/KyoqUFNTg3feeQfvvPOOcB/2fI8//njbvbKefyJs374dxcXFjhlTjWMbDBw40LYNe/8qKipQV1eHU045xfW4hYWFuPzyy/HJJ5/gqaeeAqC7kPbr1y8m9BEEQRAE0XEgsY0gCIIgiA6Nz+eLu03Pnj2xdu1azJgxA9OmTcO0adPw4Ycf4sYbb8RHH33kum9NTQ3OP/98FBQU4Mknn8TgwYORlZWF1atX46GHHoKqqp7qo2la3HoqioKf//znqKqqwkMPPYQTTjgBubm5OHDgAP785z97PhaLqqro2bMnZ/XE4iQMuWEVqNj6s3U68cQTsXXrVkyePBnTp0/HhAkTMHz4cDz66KN44oknEj6uFdYKEEDs+vzpT3/CTTfdJNzntNNOS/g4Xs9XVVWceuqpeOWVV4TbDxgwgPu7Nc+KlRtvvBHjxo3D4sWLceqpp+Lrr7/GnXfeyVkpEgRBEATRMSCxjSAIgiCII4KMjAxcfvnluPzyy6GqKu68806MGDECjzzyiNDCyWD+/Pk4fPgwvvjiC5x33nmx5bt37066Lk7H2rBhA7Zt24aPPvoIN954Y2x5su6vADB48GDMnj0b55xzjk2cYjnmmGMAAFu3bsVxxx0XWx4KhbB7927OwqyoqMiWoRTQrcXYfQEgNzcXf/jDH/CHP/wBoVAIv/vd7/C///0P//73v5GVlZX0eYno0aMH8vPzoSiKq0UcoJ/vxo0boWkadz+2bt1q29br+Q4ePBjr1q3DRRdd5HiPE6FHjx4oKCjAxo0b42576aWXokePHhgzZgzOOussNDU14YYbbmh1HQiCIAiCSD00FUYQBEEQRKfn8OHD3N+yLMcsnILBIABdFAJgE1UM6yPW2igUCmH48OFJ1yeRY2mahtdffz3pY11zzTVQFCXmXsgSiURidbj44ouRkZGBoUOHcsd///33UVtbi8suuyy2bPDgwVi6dClCoVBs2eTJk7Fv3z6ufOt1z8jIwEknnQRN0xAOh5M+Jyd8Ph+uuuoqTJgwQShQVVRUxH7/6le/wsGDBzF+/PjYsqamJqH7qdfzveaaa3DgwAG8++67tjKam5vR2NiY0PnIsowrr7wSkyZNwsqVK23r2fvk9/vxxz/+EWPHjsXIkSNx6qmnJmXFRxAEQRBE20OWbQRBEARBdHpuvfVWVFVV4Wc/+xn69++PPXv24I033sDpp5+OE088EQBw+umnw+fz4fnnn0dtbS0yMzPxs5/9DGeffTaKiopw00034Z577oEkSRg1alRSrn4GgwcPRmFhId5++23k5+cjNzcXZ511Fk444QQMHjwYDzzwAA4cOICCggJMmDDBFrstEc4//3zcfvvtePbZZ7F27VpccsklCAQC2L59O8aNG4fXX38dV199NXr06IF///vfeOKJJ3DppZfiN7/5DbZu3Yrhw4fjxz/+MRdo/9Zbb8X48eNx6aWX4pprrsHOnTsxevRoLtg/AFxyySXo3bs3zjnnHPTq1QvFxcUYNmwYLrvsMuTn5yd9Tm4899xzmDdvHs466yzcdtttOOmkk1BVVYXVq1dj9uzZqKqqAqAnfhg2bBhuvPFGrFq1Cn369MGoUaOQk5NjK9Pr+d5www0YO3Ys/vrXv2LevHk455xzoCgKtmzZgrFjx2LGjBnCRAduPPPMM5g5cybOP/98DBkyBCeeeCJKS0sxbtw4LFy4EIWFhbFtb7zxRgwdOhTz5s3D888/n/jFIwiCIAiifUhLDlSCIAiCIAgLH374oQZAW7FiRWzZTTfdpOXm5tq2feyxxzS2GzN+/Hjtkksu0Xr27KllZGRoAwcO1G6//XattLSU2+/dd9/VjjvuOM3n82kAtHnz5mmapmmLFi3SfvKTn2jZ2dla3759tQcffFCbMWMGt42madr555+vnXzyybb63HTTTdoxxxzDLfvqq6+0k046SfP7/RoA7cMPP9Q0TdM2b96sXXzxxVpeXp7WvXt37bbbbtPWrVvHbZPIuRu888472hlnnKFlZ2dr+fn52qmnnqo9+OCD2sGDB7nthg0bpp1wwglaIBDQevXqpd1xxx1adXW1rbyXX35Z69evn5aZmamdc8452sqVK7Xzzz9fO//882PbjBgxQjvvvPO0bt26aZmZmdrgwYO1f/7zn1ptba2tPJbdu3drALQXX3zRcRsA2l133SVcV1ZWpt11113agAEDtEAgoPXu3Vu76KKLtHfeeYfbbs+ePdpvfvMbLScnR+vevbt27733atOnT7fdV6/nq2maFgqFtOeff147+eSTtczMTK2oqEg744wztCeeeII7b6f6H3PMMdpNN91kq+eNN96o9ejRQ8vMzNSOO+447a677tKCwaBt/5NPPlmTZVnbv3+/47UjCIIgCCK9SJrWimlbgiAIgiAIguhEzJ8/HxdeeCHmzZuHCy64IN3VSZgf/OAH6Nq1K+bMmZPuqhAEQRAE4QDFbCMIgiAIgiCITsDKlSuxdu1aLrkGQRAEQRAdD4rZRhAEQRAEQRAdmI0bN2LVqlV4+eWX0adPH/zhD39Id5UIgiAIgnCBLNsIgiAIgiAIogMzfvx4/OUvf0E4HMann36KrKysdFeJIAiCIAgXOpzYtmDBAlx++eXo27cvJEnCxIkTufWapuHRRx9Fnz59kJ2djYsvvhjbt2/ntqmqqsL111+PgoICFBYW4pZbbkFDQ0M7ngVBEARBEATREbngggugaVqnitf2+OOPQ1VVFBcX4/zzz093dQiCIAiCiEOHE9saGxvx/e9/H2+++aZw/QsvvIChQ4fi7bffxrJly5Cbm4tf/OIXaGlpiW1z/fXXY9OmTZg1axYmT56MBQsWYMiQIe11CgRBEARBEARBEARBEMRRSofORipJEr788ktceeWVAHSrtr59++If//gHHnjgAQBAbW0tevXqhZEjR+Laa69FcXExTjrpJKxYsQI/+tGPAADTp0/Hr371K+zfvx99+/YVHisYDCIYDMb+VlUVVVVV6NatGyRJatsTJQiCIAiCIAiCIAiCIDosmqahvr4effv2hSy72651qgQJu3fvxqFDh3DxxRfHlnXp0gVnnXUWlixZgmuvvRZLlixBYWFhTGgDgIsvvhiyLGPZsmX47W9/Kyz72WefxRNPPNHm50AQBEEQBEEQBEEQBEF0Tvbt24f+/fu7btOpxLZDhw4BAHr16sUt79WrV2zdoUOH0LNnT2693+9H165dY9uI+Pe//42///3vsb9ra2sxcOBA7Nu3DwUFBak6hbTx0dRn8FbN1563D9X8EFdV5uG/gU8wuiAPw4oKAQBL9+wHAJzS8j42Zt3C7/Tv/amqLkEQBEEQBEEQBEEQbcjnK/fiqUnF3LK87z1m265h28N41/8afurb4ljWT45xFp+WXrc0+Up2IOrq6jBgwADk5+fH3bZTiW1tSWZmJjIzM23LCwoKjgixLTsnE76gz/P2vpYMZGVmoCAgITtLhi9b37cgU3eplbWc2O8YR8B1IgiCIAiCIAiCIIijgZzcfMiZOdwyY+zPImfm4JhAEwpk5xBbov0MjgRNhcVLqLEOlyDBjd69ewMAysrKuOVlZWWxdb1790Z5eTm3PhKJoKqqKrYNkRgdNqgfQRAEQRAEQRAEQRBtzgnyvnRXoVPRqcS2QYMGoXfv3pgzZ05sWV1dHZYtW4af/vSnAICf/vSnqKmpwapVq2LbzJ07F6qq4qyzzmr3OndWMopWoFwrTHc1CIIgCIIgCIIgCIJIK5Q0MlE6nBtpQ0MDduzYEft79+7dWLt2Lbp27YqBAwfivvvuw9NPP43vfOc7GDRoEB555BH07ds3lrH0xBNPxKWXXorbbrsNb7/9NsLhMO6++25ce+21jplICTHT1R8DoNeKIAiCIAiCIAiCIAjCKx1ObFu5ciUuvPDC2N9G0oKbbroJI0eOxIMPPojGxkYMGTIENTU1+L//+z9Mnz4dWVlZsX3GjBmDu+++GxdddBFkWcZVV12FoUOHtvu5dHa0zmX4SBAEQRAEQRAEQRAEkXY6nNh2wQUXQNOco4RJkoQnn3wSTz75pOM2Xbt2xSeffNIW1TsqoZhtBEEQBEEQBEEQBEEQ3iDTJSJl3DxyhatQShAEQRAEQRAEQRAEcaRDYhsRF68x2+ZuKUdFfbBN60IQBEEQBEEQBEEQBNGRIbGNIAiCIAiCIAiCIAiCIFIEiW1EXMSOoYksJQiCIAiCIAiCIAiiI1HTFPa2odbhwv13eEhsI5JiZeYdwuWfLt/bzjUhCIIgCIIgCIIgCMIrEUXFR4tL8OKMremuyhELiW1EXEr9dhW7u1Qn3Pa12dvbujoEQRAEQRAEQRAEQSTJ6KV78NjXm9JdjSMaEtsIV24L/R2fFeSnuxoEQRAEQRAEQRAEQaSAdftr012FIx4S2whXZqk/SncVCIIgCIIgCIIgCIJIEZpG0dbbGhLbiITY5/eluwoEQRAEQRAEQRAEQRAdFhLbiIQo97llISF1nCAIgiAIgiAIgiA6MpIkpbsKRzyUv5VIGV9nPIz9Wg8Al6W7KgRBEARBEARBEARBCCA30raHxDYiZZwm78Zp2J3uahAEQRAEQRAEQRAEkQCBrt9CDlSluxpHDCS2EQRBEARBEARBEARBHCV8tWE7fLn7oTR+B0Z0saxeU9JbqSMMEtsIgiAIgiAIgiAIgiCOEnIGDYUcqEXLoSsQrv4pIIXTXaUjDkqQQBAEQRAEQRAEQRAEcZQgB2oBAP78jQCAQJfV6azOEQlZthGOZPb6CmqoW7qrQRAEQRAEQRAEQRBEWyEH012DIw4S244aEs82ktF1SRvUgyAIgiAIgiAIgiCIzkIAkXRXodNBbqQEQRAEQRAEQRAEQRCEkAvlNemuQqeDxDYi5Vz+xkJMWncw3dUgCIIgCIIgCIIgCKKVyEl4yh3tkNhGpJwNB2rxt087ufJ9cC3w2mnAxgnprglBEETHpKUW2DYDiITSXROCIAiCIAiiDTleOpDuKnQ6SGwjCBGfXQ/U7AHG35zumhAEQXRM3vo/4JNrgIWvprsmBEEQBEEQRFJ4s1h7IDCujetx5EFiG0GIqCPlniAIwpXavfq/859Jbz0IgiAIgiAIooNBYhtBCCGfdIIgCE/k90l3DQiCIAiCIIgkkDMr0l2FIxYS2whChESvBkEQhCeKjk13DQiCIAiCIIgkkP316a7CEYs/3RUgOheLcrJwRjCY7mq0PZIMaGq6a0EQBNHx0cgSmCAIgiAIojPwny83YM/hRiBgXSOlozpHNGS+QyTEu4Vd0l2F9oEs24jOStUuYP5zQFNVumtCEARBEARBEEQH4pNle7Fox2HBGpo8TTVk2UYQIkhsIzorI84HgnVA+Wbgmo/TXRviqIA6ZwRBEARBEATBQooC0X6UbQYaOkkAxozcdNeAIJIjWKf/u2dJeutBEARBEARBEEQngdxIUw2JbUT7ULkDeOunwEvHp7sm3sjtke4aEETrIOtMgiAIgiAIgiCItECjMSIpwnB2HDpWKrUv3L+8LatDEIQNcu0jCIIgCIIgCIJIByS2EQlzyOfDj44dgP927yZc/yuZhDWCSDsNZemuAXG0QNlICYIgCIIgCIKDxDYiYT4ryIMqSZiUn2Rcs3aI27blUB2W7RJlWSEIgiAIgiAIgiAIgmg7SGwj2gclbP7eu7jND3fpa9/iD+8sxcGaZs/7aJqG977dhaVHkkjXUA7smE2WJwRBpBZVTXcNCIIgCKJtKNsE1JOHwFGHqqS7BsQRBoltRw1pzi6y4MW0HHZ/tXexbU5xOZ6eUoxr31nahjVqZ4b+EBh9FbBhfLprQhDEkYTGdkhJzCcIgiCOEPatAN46G3j5u0C4Jd21IdqL7bOBZ/oC6z5Pd02IIwgS24j2oXZfumsQl5LDjemuQuoJ1ev/bp+R3noQBHFkoTGWbc01aasGQRAEQaSUFe+avyn+7dHDmKuASAvw5ZB014Q4giCxjWgDolYOuxcAZZvb/eir9lS3vpCKLa0vo0ORZstGgiCOLFhXi2B9+upBEARBEKlEYobHGrkVHj0cHWOlUITCgLQnJLYRCcM6DDVK4g/TMdIh4KPLgbd+2j6VYlhZUpXUfhTWjDiiOOHX6a4BcSSjUWeNIAiCOAJhBwQUn/Qo4ugYCH65Zn+6q3BUQWIb0SpK/X7h8uOk0nauSRtCKhyRKmoPAIteB5pTYH0ZDwchnCBSAs32EwRBEEci7GSSGklfPQiiDahrdnimpWD7VuQoQayUEEQrOOKG+KoC+OhVIVLAyMuA6t3AvuXAtWPSXRuCSB7K2EUQBEEckTCT7AoJEMTRQf4Jj6W7CkckZNlGJIyWqJymhNumIilGczIfPhLcpcjKqWNQvVv/d8fs9NaDIFoLWfwSBEEQRyKcGylNLBEEkTwkth01pHFg9FT39B07KSzXqrO4S4UaaQDcWWgXAZcEVqIN4b6L9N0hCIIgjhDYPhr1qwmCaAUkthFtgtQJB19Geypb694ZZrXKi4Fn+gIT7zCXRVjTdxJeOhRHgrUkcXTDxbTpBN9IgiAIgvAC6w3SWSbcCTFHuVi6cHsldpTzGeMdPbmINoHENqJNGCQdSncVEmZHeQMAQIZFCOkMwsjiN/R/131qLlv9sfk7ETfS5e8C0/511DdQbUpneKYIwg1WYKPnmSAIgjhSOP7n5m+aTOq8rBkNvPRd4OCadNckLWw9VI8/vb8MF7+yIN1VOaohsY1IORI0PBIYne5qJMy4VXoqZJss1RlmtfYtty9rKE+urKkPAMveAg6ubl2dCGfaSpxoqzgjSoTEV4KH/S6m4hu5e4E+aUDPGUEQBJFOfAHzN00mtZ6mKuDrvwF7lrTvcb+6C2gsB74Y0r7H7SBsOVSX7ioQILGNSIItmYH4G6WR1uYCsFm2qZ2goT283b4skJV4OaxA00kSWyRMYyWw8DWgvvNZX8aF7RSGGlJTZqgJGHo6MOb3qSmP0N2+R5wHbJ2e7pokT6pj2nx0OTDzYWD7zNaXRRAE0Z7UlQKznwDCzemuCZFqOsOEe0dn5sO6t82Hl5rLVrzvnCys7iAw7SGgUjC2SYbWCKbB+k47CShRcrwOAYltREJImoYl2dnm38n4fYeaUlgjd5L5ztjOqbPOaiXTONTuM3/7kxDrOgMTbgVmPwaMuTrdNUk9QSYuQ6gxNWWWbdKfix2z2vXdPaIZfzNQug749A/prknyRELm71RaUVbvSV1ZBEEQ7cErJwALXwH+1zvdNSFSAcUkTS2Hd/B/H1gNTPk7MPoq8fbj/gwsext496IUVSBJ0enwTuDZ/sAn16SoHu2L01l3Uu2w00JiG9EqtGQ+YDP/m/qKMDS0RFq1vy1BQmeb1WoxzIbZ8/B4n+pKzd/+zFTVqGOxa57+76EN6a1HW9BQZv7OyElNmaw7RWeftQ+3ABXb0l0LoOlwumvQetaOMX+n8htJM7EEQRBEOmHViMoO0Gc40qg74L5+/0r932Btao4nJSl3rPpQ/7eTWtw7dafaWmvrHulk4+Y2hsQ2IuXEtXZr44Hm0Lk74m/kgq3+nW1Wyxj4JvM1lX1MOUfo1IfsT3cN2g4uaH2K7h9bpto6ITvtzH8GePPHwMoP0luPI+Hdaqo0f3dW61+CIAiCsMG00dMeTF81jhTS3edprkrv8dOE5Gpo0Xb35IRQKP5GRxEkthGtIik30nZk+e7EP7Cd3rItBnMeXq1FjoYMg+3lHlu6Hph4F1AbZwYvlaQ6jhYAKEGmzM76LkRZ9Lr+75QH0luPI4HvMrFXOtuEBEEQBEEYBBuADeOBlqglVbrFoaMJUXiSVFu4N1YkuWPHtLRvCStoCMaf/Ha6jNXhA8j9ztMIdP0mxTUjRJDYRrSKpNxI25EXZ2xNeB/JmiChs4lORkKHZDoLnFiT4HmrCjDqd8AMFzfhjtCB8WW0z3FGnAusHa3HiGsvuPuXIgFEaaPYXOkk3aLhEeEqyZxDKr+RS4alriyCII5sKrcDb/4EWDMm/rYE4cSke4EJtwDjb9H/7mz9/s7MzIcFC9uhj9R4OH6ytNK1bV+PBNE0Dac8NgOnPDYDLWH3vqzTVVxY9T5kfyOyek1LfQUJGyS2ESnHyydy1NKOGwTbZtnWDgJDeVM5alpqUlNYTEhIQtja/JWgHI/s/gbYOcd5sNxSp2e1TLdVUXsnfijf1H7Hao1Y6gSblbazu5ESKUTjf7dGSGe/sdUlyZdDEMTRxYIXgYpi4Ks7010TojOzcbz+745Z0QUdYGL4SGL/cud1xZPsy9pjQnL8n/VkaU5JGuoPAbsXtH09XPhq7QHM2lzGLVM1IKLqz+eBGvc4yuxlXLaLCeFEj3e7QmIb0SqSdSN9ZOLGFNckddjdSNt2hqsh1ICLxl2Ecz8/NzUFGgNXbvDrseFaPsL8fSjBexSJ46O/ZpQ+kF7xbmLlppr2TvzQntZ8bZFBi7Vso9lewsD6XLfmeVMovgdBEEkQCcbfpj3J7ZHuGhCpgG3fTv19+upxNCAU1tpBbDOEtDKHsY514q+dvzXldS2497O1uO3jla0oxbyOh+paWl8pIilIbCPShtYRXAoF2ATENhYY9tXvi/1WUiGQtMayjeXru1tdFY6O0ilms2u2B6LnPCO/7Y+VMsu2DuRGun22Hnetg347WkVTFbDqI/3fTkEKv5PsM/b9PyZfDkEQRxfs5FlHaBfkdu5fEG0D255l5KavHkcq4c4g/FgEv3a2uq9pDsffKA6sjikdEeFLOickthEpx6u1W1jpAB0jAelwIzWIaEm66XX/rvlbZNkmt8OrHu9DfrRar4hEiGTTkCdyrJTFbGMa/Obq1JSZDKEmYMxVwKxHgc0T01ePtmLxG8Cke4DxN6e7Jt6wDmxb87xxrspHSFxAgiDaHjYGa0eY0DuSs50fVbATlx1zrNKpmfNk7GdlYxjvLtjFr+8IwpDXfvqqkXq86mBDm1UlFcYpvo5wTY9SSGwj0obaQRswu2Vb2w7+2NmGsJLkTEbvU83fQsu2DvCR7TQWO6lG8Jy3lbVkW8RsYwcw376cmjKTIcxkrNo6PX31aCtWvKf/u2teeuvhmTaybIu4xyAhCIKIwYptYUFWw/bGR2LbEUFbeAkQJrV7Yz+7a1X439RiywapHrMkUZ5XcWrSvXq86kn3xt00FGn9s5SI8MaegczmtKKgbe0KiW1E2jACPHY05DRmI40kG4Ce/fg2VduXtQeROGbhdQfiF6GoCCtHWMdGeB/a6N5wMdtS5UbKiG2N5akps7VkdUluP8nH/91QDky+Hyhdby5rl/dG0IkL1rXDcVOI9buYqphtoQ4wYCYIonPAWp+kyypWYfpt1jaG6KSQZVtaSfWk2+nXJ7GTpZ+28Qv3zY0kGw48PHEDvvvwNOysaDsLOCvkOtoxILGNSDm3+Kd62k7poGKbzyq2JdiBC6thPLHkCcwsmelpe5UZtIbVJC3b2IHv0uHGQnNZe3xwv3nB+7bl1lksQFU1nP/ifJz93FxEOrDgVny4GFurtnrfQSTWdibLNjYt+ilXp6bMZGCF6GP/L8lCLN+cyfcDKz8ARkSTkwTrgTfOAKY9lGT5HjkSOkA2N9LWWLYx372O4ApGEETngPU8SJcFEjvRSG6kRwZt0ZfqjFTu0EN3NFamuybulK4H1o91Xp9MKB1rN23Tl/q/G8YDn/4RaKlNqLjRS3Vrvrfm70y4KpyhZQL7NQaTNOAgUkqnFNsURcEjjzyCQYMGITs7G4MHD8ZTTz3FmVZqmoZHH30Uffr0QXZ2Ni6++GJs3749jbU+eiiQvM1IdBixzfKRlqXWWbZ9se0LjN82Hv/45h+etmet2ZIW20KN5u/MPP3f9p6Nc8roY7BlsvmbFXCiNIUVHKhpRkV9EOX1bTngTl7oaAo34ZrJ1+DqSVcncK9EbqTtYNmWKvfnMPM+t3cmVxZWbEu282vdr2IL//faT4GqncCyt9EcUrBgW0VKzP7txHkGO+NMeqrcSI+mgU1LLTD/eaCS+iYdmvItQM3e+NsR7Q87GdrGIT8cYb9fJLYdGXBtcCdsj1PFO+frSakm3tnmh3Lsa3lpH0ecC3xxG7BrvsMGcfpc7BjKaR9jknTCLcDWqUmHVUlm7JvsE/jU5M1J7kmkkk4ptj3//PN46623MGzYMBQXF+P555/HCy+8gDfeeCO2zQsvvIChQ4fi7bffxrJly5Cbm4tf/OIXaGnpDBlQOi6ptMdIt9jWElbwy9e/jX2kz5V1VzJ/Ky3bypsTc7VrYWZFlWQ7iztmmb+PuzD6w+X6qgqw7B3efa5dSee9T/7YdSHT1S/o1QJHJJx0Jss2tv5LhqWmzGRQ28CCwZ9lWWCe6/2fr8WNHyzHSzMTsGL0SrzAuy01qT9mqrE+16lyI20PsW3ZO8CI89M/Wz/9P8D8Z4DhP01vPQhn6suA4WcBr50af1snStcDe5emrk6ESYewbCNr3COGHifYlx1NE0BWQlGXx33L2vxQ9S0OE9jNNd4LKWcmUBOZtKzaZV9m80Cw/N102Hv5DF+uiR9Sx8rs4jI0hSJQVC0hN9TDjUdpYroORqcU2xYvXowrrrgCl112GY499lhcffXVuOSSS7B8+XIAulXba6+9hocffhhXXHEFTjvtNHz88cc4ePAgJk6cKCwzGAyirq6O+4+wo6bQ/SkVCRJmby7Dsf+akpQP/LSNpSguNe/zSdIeAK2P2ZZo1piGsFl3NRWNulGGW1nFXwPT/mm6z4nI7dH6ujjRSTsvEtPYqtbnxIkk3Egrmytx+ZeX4/0N7ydSPUvMthTN8rNltnPqc45UWLZZsVnqmfd3+ibd+nLM0j2pORZ3GOY7Koqtp3QG0/82ciNtj2/DtH8CpWuB+c+1/bHc2BcVYJK1aCbanlQMMkecC3zwi/SLu0ciHSGQPRvXNNm4u21F3UFg5iNAdRu0Y0cK7DNk9Ak6wnMloK4ljNFL9+BwQ3sLvGmcIJfjxEFsYcbrbN+KvW9xx66i9Q6WbWlgTnEZTnp0Bgb/Zyo+Wmy+y+xjuvFALc57YR6mrC8VlmFUPxWZTYnE6JRi29lnn405c+Zg27ZtAIB169Zh4cKF+OUvfwkA2L17Nw4dOoSLL744tk+XLl1w1llnYcmSJcIyn332WXTp0iX234ABA9r+RI5yIqqG/dVNeGfBTucZjTjc+vFKAMBFL38jXO/2bbSGBfNDFydsMdva2DWhKWIGBE9EbNM0DRNW7cfGA5a4AUYZrNhi7QDW7GPWORzzjL94rougcu7rV36YfNlpRGYsklTPCQgST5Dw7vp3UVJXgtdWv+a5bnqxbRFnhKnrqdekqMwkaA/LNsEHo19RdmqOxR/I/KkIZh7bS3xJNvsxIIjZ1orv5G7m+93Ke6uqGm77eCUemRjHrR0AGspadazWcwTE7jvSYScYkrFgYoVzQfgEopVw/Zw0uZFGWMvcNNXBic+uBxYPBT7+Tbpr0nERCaRqO08AeeTBcevx8MSN+POHK9r3wO2kz2iaZhcSfQH3neY+xfzhILbFm+gQDRZFHgislV0CFnetjUP9zbaK2O/ZxWa/ZdK6g7Hft49ahb1VTbjrk9WO5UxefxBnPjMHdc0dbFLgCKdTim3/+te/cO211+KEE05AIBDAD37wA9x33324/no928ihQ3qHplevXtx+vXr1iq2z8u9//xu1tbWx//bt2yfcjkgdqqrhyjcX4ZmpW/DoV5taXV5LuHWdnICkf3xamyAhUes0hSk/kX0X7qjEP8atw6/fWMivMMpgG481o/lt8nubv9ksiCf82vzdmtgj8c6Djd/W7qRmgBvRPDZWSbiRtihJuru3xWwsW2Y898e2pC3chayWbYLzK8zJaN0xdswGJtzKd8ziiaIiAS7V1OwDXjhOTxKRDNZ6t+ae7JyfmnIAbDxYi1mbyzDKi0ViGw6iDjcE8eD4dVi9t9p5o3S+T6ki1AQcTjzgc6eBfUbWjEp8f9bq6UhIjGKgKrrVVLrpCG6kHdmy7WB04J1Oq/SOjmjSiQtt0HEsgQyL+w3WSfY2p+2vgSRJeHHGVpzx9Gx+RbyxCBsOx8myLe6Yw4vYJvHvdwLven1L6r4L7OM4ZUMptpXVY+/hJgQj7mPV/KwA7v5kDSrqg23uXnoEtXQpoVP29MaOHYsxY8bgk08+werVq/HRRx/hpZdewkcffZR0mZmZmSgoKOD+I9oWRdVQ2aC/8At3tN694sRHp6MuCQu58fm5OHXQQDQGdAszHywfrETdSBNslFiBLRGxbeuheocKRMtwa6CcBvsF/ZjlrRAvO1DnxI573cJqGIsPLEZTuMm2jr23iosIu2oPO8BOXGyLJNthb5OYbaxrahoHEm3hRmpFMBgO+FrZbRh9FbBhHDDzYXOZaIA46DxzWXu4kW4crwvtKz9IsoAUxmw7+Uqm2Nbd22AiCS3iiR+rRwFf3pHU/Xjkq40Yu3I/fjd8scvxO2UXjGfEecAbP+xcMcm2zQA2fuFtW/YZScYNlLOGO4KGIKOvAl45Edg5L7314Cye09TvYO9xuqzriORh43UZ/eb2Dm2QKiJBPXvoHpd2JxmCbR9aSQIwXJSpU4rjRup3mBC13rfHuwC1DvHShJZtIjdSZllDYvG5WwP/aTP/qGkK4ZJXF+C8F+N/h5fuSi7GHNF6OmVP75///GfMuu3UU0/FDTfcgPvvvx/PPvssAKB3b91qp6yMdxEpKyuLrSPSTyTFCRI0DVi8w/vHxPhkPtG9GwDgs2P1rC2tdSNN1B8+WbFt5iYHFyiRG6ntoA7CRarEmiT25bIJJ3/kVvPW2rdw++zbce+8e23r2PvjZtl21Vut6+gkHbuvLWK2sXcjnS4ybSG22coRiW0paib3rzR/i1xi2e9Ge7iRtnZgmko30hRaZEYUsyw1XhsT7xp8fTew7hNgk0dhhmFbmYc4okeC2HY4milu44T01sMrqgp8cg0w/i968oO4sJYSSbwznXXQHo9d0cHdivfSWw9u4iJdbqQktnVquInV6PvOWrZtn4VOw/s/17OHfvjLdNckhTDf3U0TgXcu5AVSH+Oh4GTZZvDqSQ7H8BCzzYphNeoBp3m9Z6cW4+GJG4Tr2L6ME4bBChC/eXpj7o645cVjSHV7W1QeGXTKnl5TUxNkma+6z+eLxVAaNGgQevfujTlz5sTW19XVYdmyZfjpT4/OrF+JWlt5pTXztKlIkNAanI5udyNtW8s2NgNpIiLL8pIq84/8PuZvo7PnVpYXsa2CyeqTKMmIbQluv6t2F4avHY76kIOFnyPuT+3YbWMBAEtL7ZYa7P1xs2wTYn2OXJ7/hMuOldnG2UjTatnWBkKitRxBj8gvp6iZZDOMit4/ti7t4Uba6oGpVWxrxfc8hc/tuFVmCAglXp28Ps+JZEMzivZ0PTqyBXCCdBYhiX3um6uct0sVjYz1AyXCSD1tEqc0QVg30o4Ws42IT7jZ/G20CWwbHG70Vk7JQmDkr4GKNshg7pXSdek7dlvBvtfjbtJFrin/MJf5WMs2NvlUAu+iF8u2FFsmhyIqRizYhdFL9+JATbNt/YeLdsd+p66noEHOKAO8JnizUOBxPHwE2XCnhE4ptl1++eX43//+hylTpqCkpARffvklXnnlFfz2t78FoPt933fffXj66afx9ddfY8OGDbjxxhvRt29fXHnllemt/BFGaz4AXlT71pLMC9/abKTlTWbnujYYfxYgWcs2DlGHU1WwM+DHp/l5sA0p2dl2p8Dz26NxE1Z9BAw7M7GYH2WC4OSBHNddEh2rXznxSry17i28sOKFxHZsBZxlW6LCk7UT7tIRSFoc556DNshGmqDwnFLaxLLNcp0FlkZ+OcGviNODzLp1i9xI2YF4e7iRstV0O56m6a5iVsHJep6tEUBTOGBmM3Ep8Szb2jLmlJdXuOkIcuvoLBY9iT5r7DYZuYkfj3U97RRZhj3QmsQqqUbtAGIbmyAh2k6tOLQCFU0VDjsQHYoIEyPX+I4l866OvAwo+VZPSkE449BH2lbmFBpHsH2IEUDZbKWsQJaQ66ugnyc6bgrjbrL9fFEChaW7xf0Dpy6ml6oFui5A7uBX4c/b7qmORGrolGLbG2+8gauvvhp33nknTjzxRDzwwAO4/fbb8dRTZkaSBx98EH/7298wZMgQ/PjHP0ZDQwOmT5+OrKwsl5KJ9kTVNGQgfZ02p+9SMKcUJX6HgbEHpu6eGvu9v2F/3O2TtWzjEIksmoIr+/fFM9274rOCfH57R8s25ly7H6//O+keoHIrMPVB7/XZt8y9jiIS1JeMhmpdRYIzeew5Bu2Nu5sbMLvOc4IEA9tg1Pk4UtINelukq2fKVNo73TxbjRQHwtY0+7stENt8icRsq9wBvPQdYNFQ+zpWbOMGiNHry76T7WHZxlrsRVwScqx8Hxh1JfDpH/nlqUyQkMJ726vAbOPjWpe1oWgQ16oO6HjB1FtDZ7FsSzTGF3uPuh2f+PG0drZYbQ9KvjV/pzvpQ0e4vmy7qOgxX2+ecTN+Nu5n6akPkRgiyzZNxeTcHKzKzBTv48bh7UBL28c4S5pgPfDlX4FtM9NzfIfv7l9Hr3LYXtC2lDt53jDfo0Qs0oXfMav1fvu2cRJzLhX15jcmmdjkBpnd58TfiEg5nVJsy8/Px2uvvYY9e/agubkZO3fuxNNPP42MDNOUVJIkPPnkkzh06BBaWlowe/ZsfPe7301jrY9MWtPN6r7iJWzLuglnSLzJ9eq91bjt45XYc9ij6XYKkTIqUDJwBi4f0Ndc2IoZe/ZjiUMbgbE3AZX8jAIr4CjJWiM5WLYZbMi0BBB1smZjxafCY/h9InYzZ0dEsYjiXMe2cnW2UcDc21Biz5iKFFq2uTTczUznLyE3Wa9WaBXbvAf7ZsvcMdt5u7YmBZZt3F6a5ilmW0LfuBn/ARorgFmP2Nex74ToXNiZ9PZwN2ODDrsNUhe+rv+71xqHMJUx21JnnXLtmQNiv4WWbU7fvuLJ+ve5JTUxSTy5kcYL/NyZ6Czuc9zz5UVsY84rGXGUc3/vQBZhraEjCavs/Vn9cXrqEOGzkS4pXZKeehDJUfy1+Tv6jheHqvHvnt3x5769kitz6fAUVKyN+OYFYN2nwCe/b5Pia4O12Hx4M7+w1ynmb4fvR8gpuZFoe9ZriBXK2N8Jfa89WralkLV7a5LaL9wOXmFEaumUYhvRcWhpxaxm77W69ccjgdHc8t8NX4xZm8vw19Heg0+mCl/mIfvCVgwiOLHtvYuBzROBUb+FqqkYtXkUNlRs4AQ2m+Ckqt4EIW5AYARc5xuogzWC2TuAP78mJoaNzXIlgQ+8SGxjy/vhjfbVSbYfUqKSL+fOZ2/E3US/VsVsS+B61obMjkRC1o5eRIuq3cCbPwZeHOyxzA7SsLdSbNtXtw/nDeyHtwoLzDJsMdvM5zYburVX8laGLqiCoOntbdnGWSy6iAD1Dq6WHdSNNINJaCHUm7lzZc7h8+v17/M3Arf0trLekY8gsa3TuJEmaEXp1FYmc7yO5H7pRqgJKF3v8dvfgSzbdn2TnjqwAn1nuceECZvcJfq+71ft2egTQuA10WGo3Rd/m1bw6y9/jT9M/gOWly5HdUs1dtbsBP+dEH9XHL82ou/0D29i/pDEv1s9KWCpUfmmVpbHM2m9exiLdjNAaAM6b83bBhLbiFbxQZeCNit7f1UrGzukaKDcig82d3zDMqx2H6bsmoIXVryA66Ze5y7gfHAJ8Ezf+FnTRNn8LAODs5+biwmr9tvXec1Gmkjg1XhiW9GxttW1zWYnNdGMrgnRioG912yk4p29W7b1ye3juM4VLzHb9q9ItNDk6hLbPUX3spWxeV5b/RpqfT4MLyo0CrGXk9M19rOPpAvPCX1B3LJLGt8CTRMLh2xd2iO2k1dxz/H+pdDFwsnaLBE0DTiwCv6I2W4IXTmbGItO0bEavGSojI/spe05kizbUhn/Tolgy6E6PDR+vTBwdKtojRtpMoKimiKxrT0nPT76NTDiXGDTl+13zGRh3+G+p6enDs3V5u9UTJSUrndxk4tTjxXv85OmBv4OGEJn00Rg67R014InlmDsCJYLUmiZuq+qCSMX7Y5ZpamaippgDQBg3r55OO/z83DlV1ei5HBxK44fvRfsPckuFG/KZSNN4B6KPHe8en94wGoUcMWbizB1g8C4o42RfEdIKINOBoltRKvYYnVPTBLWH92gPpj4gHPhjjYISNsGQeG3Vpmus6yAY5vJMISRrVPcCxSJLIJ6vzp7m17sYWbWTSTUAUC5xQw8oWCjwkoyv+0D0bfm74z9nlNcblufMlIltiXaqU4gxtXgQtPqLDHLNg8x2xJ1k2PLzO2R2L57lgBPFKbGvaeVg16bBaSmulqqZETTiiSk17taKkULsg64ReJ4e7ibJZP9lA0Ebu3ItsqNNAWxBjdOAN79GS5f9ZfYIqEb6bxnW38sD3h6bI4ky7ZICuI5ahrweBfgqW648Y2p+HzlPvxrwvrWl2s9Rux3gpZtyYhtqYgppqqo+OBiVI/+bXL7J8qBaOykb1+Ov226Y7ax92TQeempA3dfReEJEqClThc6h5+V+PP2+Q3AlL/r4Qys5CXpDtlWNFXpmSU/vZZvV9JN9H1PaMK3cgewbAS/rL79hRTPMM/ne9/uwuIdyYtKfx29Co9P2oynJuvjhQP1B2LrQsx7sTqLiX2X6PshytjuOLHJim0JvD+ib53oPUqRCLtuXw2qGs3rk/JJpTbixy0u8X0JR0hsI44oRi/dm/pCPX6wP9r0Ee6bdx+OLzSDKDu5OH60+aPYb86y7fBO0ebxYeN6OVi2yZmlaOoyCrO3b8b4lXvs21t/17TiWmYX2Zd1Gcj8YW+wGkLmoGbSOu9WEgm7kbbCQoq7Vxu/8LZTIJrBLoEECWxHL2k3UqeO+tQHvJenV4YpkxfA520txzfbXATuDy/V//36b4kdU0Qr3UhtlkaimG3MuQYMsS2Rg3gZeFqFNKFlm4fBR0NF6zp+nIjgMrHBntPL32PcY6xiWyvqwp57OMlO57pPAQDdGrbFFgnjpnFusW0nFHiyqmbFts5oSRFsMH+Xrm19eVsmx37+FvMBADvLGxw2ThItUcs2dvtWWrYlmRCjqWwDfuYvx3nKDmiRdnRTFGUV72hwbV6aEo4kYLUeF9ZKLpygd4eRuGLrVPu6mj32ZemEdbPsSLEMY88Qcw8z8tz3GXYGMM2SQGzj+JRWCwCaQ6nKMG9+956eUozr3hMkNPPIpoP6JPxXaw+4bqdyXqTx349taj9m+2h9WeszVmyTJBz0+/BWYQGqFWabRN5DY4KBRTgGapt2+vnppgHG7spGFJfWJTy2CTrFvEsBbx4qx7gDpTgp1IHe1U4EiW1Eh+at+TuxdJc4/XFrkSSgS0ZJ/A09frBfWvkS5uydgx01OxKqB5eNdMmbAIBNlZuwqoz9+DMf3dJ1wIRb0V/Srb8KYYkNIZgFkgDkDBqGcPZK/G/lg/DBoYPamjhtLIw7Xgx/nJmtZGO2JTqz7kWQctqVTdW9eqR4G+s1M847gQQJbCKGlMdsS5BmLYK9RnZexr1xZ0UD/vLhCtz0wXLsS4HLd1y8xFpa+BqwQdzJlW0dF41/vkNNYB9CI1NyQs+XFzdSJ8s2ztIszqBx00TgpeOBOU94r5uVZGLENVcBu+brv9sqZltDWevd9aIILds46zyX47RS/PJm2cZmqO2EmUlZYcAto61XGFE+BP3aFGQHWl8ui4t49knxJ7h+yvWoZYNvt9qyLUERXUBpk2nprXQIYSJJV622gBMzUxw3MNQEFE+KHzfX8hwlbPXO4mO8RZKdeMjpnvzx2wu2rWxDC+NQRI1vpTbwp+Zv0XfYlxoPntYSaQMvm1TRErbXTWk23ZlVD98MdrHMDgiMFZsmmsu4vpaEm/r0wvCiQvx3HyM0x3uuep7kXAEn2uh7F1HMul740nz88vVvUd2U2HekvoXvnwcjqfseFqoqTkhAaOuEU4dtColtRIfm+elbcO07S9us/F9mekiD3MaBn1kxRZV0sebaKdfiz9P/jGpZ8IqOOA/YMA7vBF4FAOTA4r4TiznB11uS9L8rQ3vhB7OODQ6bgKujK+wgzCxM+FNEm36omXOauGZfQkIRZ9nmVLy18obIksDsd/KWbew1Ts1ze03jWlw2oC/WZWZwHdHlu82O1A4n65O+P0hJHQDED1RethmY/Rgw4Rbh7rY3SVP5e7B9Jvd3hpSMZZsHN1JrZz5m2cYmLIjTyZr+L/3fha8mUjseN7Ft9cfA+nHi/XyGeJxKN9IUWIYI9hGKbQqbOdDlOKxVTxIdbE8aLfu8pMINs71JdRBwpt0IR8W2lI9tXCyhnl3+LNZXrsf7G94Xb5NUNtLWx2xjL4HaIcS2FLh9p4q2TEAx/1ng8z8BX97uvp2lbR+9bWzyx+SsfJm+SbAB+PBXwIKXvBSS/PHbC+YDqTRXY/Tm0Shm43qlgMqGIE55bAb+OlpgtcQi6FtobTBx2VriTvx5DRHSBmOaUFQskpis5ermibHfX+Tnmhs7XE92MlsSfWPYCR3LxOah6ITwsoaSuMeJ0f9H/N+29kx0vS3vVrx42q2AFc8S5aKXv8E1I1I3dj6OLNpaBYltRwkJu9p5LTclbXpyhbAzAU7EO2s/PDSirclGGm0cHVNawyK21R1AmOlMH/ZFB2OCoPYnyQ5uASJLGX4DyOx575xn3zf2d5I3ePL99mWHGYu/FHdeRDH/HGGO/cacbfjV699a1rvsylyPiEPHR+i6BggEBW9ZTxPKSJSq+8dQouodnGm5uZy7h082z9+xD8ha7rSWeEH0Q4zgJ7AMq2dcrRVAvzZsXEJJ5q5XTJBO5NPZGss2TgSI07HJyHVfLyAYUbB+fw1UVcPKkios2cHERWSvV0OFbmH0xa3iwavfmOVPMEFCdYnzYFgk8jdUAPOfA2r3u5drIBhoCN9FVlh0dZ9l7iVrlesRTwkS/IzFRFPbWHC3Kezgp2iQ83ZKxNu3aMBZsZ+GZVvKM7JxsRHF97+JSbKR2mykrY9NpXS0bJfptmxrSzfSpW/p/xZP8l6H1sKeQ4h5Dr95DtizCJj7VPx4YKJ70uGSsZjfxy/n/gvPr3ge10y+JqVH+HL1AYQUFTM2WQSR5e8CUx80r5PIOpK9hB1FbIu3gdeA/kxfqQ9S2+5IzLPJXrVNmfFjtjl+Sgx3zm5miB5IMjRNw2urXsNXEfO8lVZ4rtjw0oZ7jGVdVt/+sc7W7atJWVl56f7Od3JIbCNahZbG2Lhs9konNACbD9ah0SHZguxJbGtdQ9sYjOD0J2c6rufEtlATgozlRcyUeu0Yx/0lp0Gvy8CAExkz8+37Ov3NoqpA1W7xOuvA18Wqq64ljJdmbMWWQ2ajlchjVdUYwo//NxsjvvEY7465LhI0WyKOZlFWoihcggSn4m1LjCyU3oUw7plI1o0USOkMpiJBHwhE6+1jOiKOwkIqZ1DjZRH0Z6Hc50MI4IW3KOXNZmy5iAT7tZJkbpnhau1JNGHLiIfNss3ItJWAhUa8GDIC/vbJGvxm2CJ8sGg3rn57CbYdNC0TORGAff7DTbC9jYZLjfU83O71rvnA698Hxt8sXq+pOOTzme+OpgLj/6Jblnx8pXO5LIKYYULLNlYAdnUjZWP2JC5uenps2GMIrYHTTLwOtpdvU+l64KluwFvneDigedHqtFyzChvGA18MSVESBos4s/lroGKr8/bcQDyJvkAKYraxgmPHsGxjXcJSIEQsGwG8dipQtSvxfVNwfR3x+u1PZTvHfpNYN9JSJlFIY7xEYCKxLc2JLFzY0uI9IdaKQytwqLGVyQemPgAsHwHsiVphCQX4DmS96RUf43LvJq4ybtGnyUm8cy6wTa7q1JP3cD25cc3M/+r/suenaZi7dy7e3/g+Hg6VxBYridw3a/vm5R2xu67wf4bFotrQOdvjl91BKVLa1rvraIDENuKIRlE1/Grot7hs6LfC9TahSoRbRypO51uChEU7KtHkEtiUjdn2j57d8fnWz2N/e5lLkKzmhTHLNue6cSLjqVfb93X6u5GZBfv6bmDo6cDKD+NX0uZyZpb7zJRiDJu3Azsr4sRFcaCiXhcKnp22xdsOzLFlwRWOaM4ddjaWWsKWbYm4kTL1ml18CD97eT62HvLgspWoG7DxjGydps/2Avq92jIFsCTriF2V6HmwZ8lauXk6frhFz0aWCHESJOxuKsNFA/vhj317C8W28/uYcVkUSLC9XbKPW2a8I4m5kVqaVO5ZMERXh+cgkdhOBX2Zbb0NMGdu1mf3n56iu+pwgjt7PPYcQgIX65g1gIM7rAjD9an4a+HqUfVb8fOB/fB2YYFZlhHs+3DynVThuzj4Z8wGLteOEyATF3k8ibRcspZ26NCqKrDyA+CQh8D3oUb9+/7lX13K8xAva8S5+r/lm+Ifs+gYs7jo+6IBumv4+s/1urcWNmbfjjnA2BuAN8/kNuE8AVrrRpoCy7YllevMIlJgHdd6UixETHtQt16Z+UgSVWnDmG2Ca81mEBTWobWw34RKRgQO5DDHiyeCd1ArlKYq8/ySeG5WHFqBm2fcjJ+P/3nC+7aEBfeoKtrH4b7DWvSfjie2xb2r7CSdzy3WZds9HxFmPKJamsBSnw+T8nIQViOYl5ONp7sVIQxgtXo8IIWgyaa4zPXNDQHL4t2wvSZO3yARsU0Jw1tvL861axALwel4I/W4w60/crWvo1nFdj5IbCNaRWrcSNueksPiuFwiscWG0wd75iPAk0XAZ9e3omZ8ox6SJby++nXzbw8DNptgKIjZZi2Fi9nmz2IqYz1XS9lMPIaYtd03z8eto7Xc8av24uloqvDPVuyzb25dEKzXZyFTESBWYL3keVdmhkdxuDeO/dx415aBtWZ77OuN2FXRiHs/W+OhgvwxfvPGN+JOpsHOufq/n16rz/Ye2gDsXQJ8dh3wxg+5TWPnGx1wskKG42Pq9O68ehLwwiDvbg/McfXf9nOaV7YcALAtM4PPkhgl22e6MQgt2+QANyuZ6LMBQCC2MWXEi93HbiuoP0cg2/yd5ODbx34D2E46+1uUDS9qWVMTquefYLcBZ5ysei/U6eLP8KLCaFmpGdwIIw14DXjPipgeXUUShrVSaoM4Ogv2L8AfJ/8Ru2qi1gvrP9dd/N/2YGW2dZru+hvN8irEi0umJKHeq1WNbA4QjbaZG/Q2eLeAcYS1Ctr8Vfzt2XuUgKhSXFqHa0YswZ4KZpIkSRfQcftmm9Vp4xiyXBvLBo53IqUulMkkRknA/b6VvDlvB3741CyMWWYJ4ZFKizq2rIl3mL/ZzMVxg94aEyIdQyQCAOxZomeznhRNguLSP3Xi7jl3J334tftq7AHjjYQsFexErWb5F9Da+p3zSNxEDyvYWJNudW47K0e2X8g+fVfVNeDX/fviPz2649PtE3BPrx74vCAfvxjQFxKAvO88i8zBjwFSMFpD5lxPvFz/l/3+bpsePzxSvG/T2tHm7/pSeBKm4lrDOU08xy9aLz41g+r/kzdgW9ZNKMlq3fiUSA0kthFp5zuSe8poAGgKpT5TmyQBkocBtaZGoIrckRYP1f/dMtn5GJDiBjVVXDrwrNh272drcOy/pgiOYSFuzDaLkMDN4MWJwyR0k0t8NuhQbTPeW+jgggpBgzPqt8CHvwTWfOzhWPGq4m7Z5obKWL05upGmOEGCce1cRTOHMreX1WHJTktMjmOYgXZLDb+uodzS8TSJHd0Y0Lg8Nswa8WIjPtW+BFLOM+/Jgm1leHkm7/pV5Ddd/TRB4HaJqaQCyV7p7CJgzpOxP2ODfe815FFVyz13cicWvK8CcUfTNIRiwhpreZPcANMvOQxS2XqEGu2dyaYqrCpbhXP3fo4He3Rj9nP5lsYRGfzWb0jKxDbB3WOt1Fytlpk6tyQutnnKYsvFj0v9gO6uOXdh4+GNeGDBA/qC5SO878xaRsz4r3ibOC58mqbhnGP64+xjB6DF0/Uw743RRvF30PxrfcV6/Gnqn7CuYh0SgnXNqzUnehy/r0lmI731o5VYvrsK733LxCpNUpTxM+1um2cjZct3dItPsRupgZyEBYUHwTdVvDhDb3P++yVvGaopEUzJzcG2QAoy5zr1BzWHPpsIw7JbE7Q/6eKb5/Tv3ZqowOH03DSUA/OfB2rt4wIulqIATdPw5rwdmFNsD1p/9yer8b2Hp6OsTuDmxwnqxuQXIxq19hlPkYAStxTWctxjPFKjTOEYx1aB+NuwT1yfiFkHPzSEoh4Qn+74Ira8wu+HBhWST/8uy1m6ZRgnthmJDNg+xqH1jvE860J1WFq6FEqi34N4LqJA/P5WB3HXHp3xbLqrQDCQ2EaknVwpiDt9X+kxfRwCv24+2DaWBV7ElvEr9+KCl+Z7EzssOA24ji80A326NeSs2PbV2oPCbWxx56LlNbk0CrzVjou5vCexLYo/23mdpRHLQ4Ip7Y0EEetbkeXLgGmwvYitLGxwaic3UseA3tZOdNhbbDgpKoq4uSKbx+DPxwcVfp+lnm5JCyQJyGBi+DHXKmKxbOuebwZ3H7m4xKE+8d6vBDomzEB3w/5qvDF3BzdTneMz69NsDDZaamNuY2x2MQUQu0HWmcH4jffK0S1YBPtM7F0CaApWZmVidEG+Gd/Si2Wb4Nm4Y/YdOPvTs1EbrOWP49GN1Apn2cYJUKxlWzNs92jtGHy4UXcdn54XP8OYXkf3DmquZHkmUzSAF947Nqi/m6USK4QlaNm28MBChP0ltuW1wVpsqNjA1MVjsoZWcrg5Km4f9GAda8BaPC8ZJt5GJHTUlQJf3A7sX4mIFol9Nw74xUKKomooLq3TB3vMNY89n+wtZN6dm2fcjHUV6/Dn6X/2ekb2OjOc8Mh04fKGZuZ5SeAeVTTo7xTX1iYpqMpMV11rY0GJO0cvMShTKbZ5OZ7L8Tfvr8Lfx64Vi+wN5cDsx5OLCxeHxeEq/Ktnd1zVv0/rC3N6RgQTcJh4lx7L0EpzNEQDdy/TLALYEgMx55PT3fw99iZg/jPAqCsTPsTCHZV4ccZW3PLRSgDA8hIzVEVlg/5tGbfCIbGYpV7bFDOsSavENk0DPrpcnzBuQ/fexmDEPknrNAHGPAtatH1fxmSXd8ThOkiBw8jq+xm2Vm3lXEePCYu/VQ0hvj0NMy5SkqzfJ/5pFcS1hbMV2E3TbsJtM2/DZ4cWCdc7YhvvCLZZ8V6cQhIcF1i36yTeYkRikNhGtIqSjAAe6d4V1XLrHqUHA5/rLiteXBJTQFMogsnrSl2H+psy9MH79kO12FvVhMU7nV3etleLYwdIDobOOUz8DTfLtrBtb/uX2G7Zppf3sWY2niUBfjB7IpvJ1C3Fua1xFZyNsc2AH5vLfnSLdSPur+6SxxTlVti4JcnSCss2dqDjdNes/XwNwLayeqhWUcSIkSYqQyCGlieScTWKDA0Ra4WsgzV2wA+Jt2hhhInY+UbPI5t5pmZtdkh/Lswa6j477QhTbyOUflPQvAuZTHPW1Fimx4d5bmAsHhNrEaJIEhBqxJiCPLxW1EVY19ggOdnOT3M1oEbwlz698Hy3IozzGxaBXmK22cWpRQcXIagEMXfvXGhKxKxWspZtcLAI4dxIBXEU+3xfXKCbcBWnjrnWYM4p6nGKLdt4gevNtW/i+eWCdodz6/Uutu2r34c7Zt+BsrwXbOuunXwtrpt6Hb7dH41Hp7AiZ4pEFFXVRTV2YiCZshnxGoD4nqgKtgUCGJefa7o3Tn0AWP8Z8N5FCDN1cGprn5++Bb98/Vu8Nmc7V2ehZRtzT4xEQgmfWwID58U7KrGUzdqbwL5Zfv175HN6zxLAz7wfyoGVSZXhGcWLZZvJ+v3VGL00joDhBusyz04EzXsGGP5ToLnGfX9GnFqyoxxfrD4gbo8m3AosfBX44JcAgG3V2xz7bYmyIZJkf0aE4zNimRRtrtHd4NZ/DtQ7tL+t+abUH/IW29ErZZaYjayoyPbrjFAlldsSPkRpjdlf0TRN+BzIbDt10hWC75r+97th07LusNtrEK+tqjuoxx/dOVeYMTsRnA41fWMpTn5sBg7VWvpWCbi9h4UxF6wVEG+TPeAjBLqsxXVTroMimqC1YK3V2hz7iQ2QGXf/WBIp5vhZXSz9ZJMdNbo18ZSK1cL1znjodxzawP+dYhF7b1WS/WOiQ0Ni21FCW6rlE/PzcGvvnqkprFUDDg1+R+c+nv9+uRFztpTb4p35ckpiv3dm6KKDz8MHeG/9XvEKKf632G3WLGzZ9zTJPivrZNlWybg8HvTzYttpMuPC6RYI1jbTIzgZIyAoW052ka2cFYaFDxgT8V3f4KXA2yhAnBhVBjtmCRbGucC1B/gBdmvcSBnLC2vw11jxmsZZzDWFFFzy6gKM+MbSsW9w6CDDMmOXSGBEy/2SoSIUsdxDq5CzyTTphyRzYtu2A2aHx4zZFrbX0bE+Al/Tha+aVz2RjgrTOTeubwOTSVZlOpbKjH9DMzKNVevPOhvrSJEAhBrxXLeueL+wC7ZkBPRrd869sW2MZ8MmVnol1MjVeZEcravTO8Ysb2w2O1yapnFBuWVJxp3BbfhD39761y7JOFCcxY2TZVtEEA8uu6u4QFfLNve4cl0ki/uVF1HjwGo9YL7Lc6iI1jECV1hV8Pa6tzG6eDRjeWU850wdQt6Tt+yrt8egNNjfoFtOTt4VDT3A3rtEgqzvmGNLYBJj2j+Bdy4AVn8UW+Q2oWNuFOHLtIptIosbTcVV/fvgye7dMCUr2p2sMYWXMPMsOd2ldxbobdrQOdt5y7aoRa8m+oYIWFu+Fk8vfRp1oTjCqAfrMsMi/fOV+yyJRLy/awGfIbaxk1nJWbZd1vsnsd/qdlEbmDyapuHuOXfjvwujrsKeLNvM+1DfHMbDE1shyhxismyWMi7B3zwPlG/WM5W6wVxTQ9hsFlnUlCzU/204hKqWKlz19VX43de/S0qItuYDirh8rxRVSywOk1NZ3KQoLKKol2zgCYoCb5yhx3Ys95h4Kh7WkBXceTqcs4v1fzyW7hJbaknsNZF8HiaYgYU5Wc7fnoSs3lo5EHPY/a+jdVHJHr/Z+7MtTOgTL6xMFF+mPiERUkNQGSmt1MGauVnhJ47f6sU/27YxjXFelUwfuu8PsbHS/buzodG5LRaSioFykuLbpqj31rhVCdaZ6BSQ2EakhG2ZGfE38oIgToNXhgdex4bMW1GE+FYIX67Rj+O3zLFkdDXNjo01XlwNHQN1LhqKzCb3NOVe3UgBDbmSOK00X6BeXpgpt8FthtrNsm3bTP5vz24e1kZaw81RC58lWVmmyPXxb3C1bwEe9H/Obe4p3pEXdi/Qg/G/yVjdcWJbYu4BapNp3ahBwpw9czB87XCuM13bHOYGWIb757T1vBvw4WaF74QHG4BJ9wK75lsGx60R2zQErWKbtQPLxqOSJLCd8htGLIj9jnXbop18TxoUW59oJ7epcgt+068PnupWhIQGAEzH0Xh+WDdS1uqwRGnEBWv+hw+7RF1iVZW7pgokTkCpkqOdbsZ1zng2yus9vHNCNC6wclFMxIlv2TZv8wFM21AKAHh55jb88Cl+gL1QrUdxZga2ZQRSY9nGimGsBaYSwt6AH5f274vN0ckHx8GF12QDAopki9gWTxAJNwPvXqgH+982Q1/Guj0axcSJ2dbExK2zWRGz55mA2CaKt2ilyUgYwQ6YvboY7l8FjP4dl8AkFFFxw/vL8Prs7aabC5PZUfFS9oRb9DLXjxPXXRFY1jLlFkctudhwAqzYpsR512UJFjdS95htVm6YdgM+3/o5Xln5iutxnAUve9ktYcWSSMR7MhKjCeMm65J0I81i3g/F5xIGIAnKm8rxzf5v8PXOr1HdUm0RgB3ihDG/E52wssFas1XttK9vrnbfnxHFA9F7ZQidHMx931tnTo62RBL/vlv7J2EXEfXc5+diyKhV3gt3Eki4764GbJ/hsM5YpvHPW6J9KiMUw7Zpie3nFabOYaYdn5OTjav69tbj31ms27J89m88VyTzLFY3id/Vxdst/XHhJIKGq3yma2um9Vpy+8cRtNjr3koxRw+F4VyGY7I0W0H250X4eFgt8TwIi+v318R+v1fYRbhNxPK+5DDFSpJqG5fFrtsss02DGsHCAwvj1qd1iC6Kx4QIFrzeenIjPTIhsY3oWOyc43nTksP8AOhXvuXIlkL4rc+7n35Acm4oP+hSAMBbVkInsU1bMwo/nSpIU840gm7ZxVixTYIWi6/AYuvsRhsytuPhbp2nr9tf3YSgdUaYiWGlV8K5YVE1FVsDAf1quWTePOT32ercX+JddFOVkQcfRbMYVZcwhZvXO1GxTWMt2wDcN/8+vLXuLczea2aLm7y+VPjMWJfN23YY0zYyHb9vXwJWjQQ+vsIiwCYvtvmg2mMNsjPMmQWW8iXu+rCdnrBx7wXPV7dcB7GdE9v0Z2uKUoWSjADGFuSL93FCUC9WSGSD4b7ctQhV4Qa80jVqYRlqgMqsj0i8lWJQlvS6CjLVNofjPyOapmHU5lFYzrkTSVBV8xixo9vcSKPXkfkOZCCCO8boA7Rh83Zwm9uslJKO2eZgsaPyYttlfbrhQMCPP/SLxiPSVPEEQSss2zKY75oWrywA+OAX5u/KaKIMwUSA0I2UqUszG3g+VgVBfBiPYtuuigZM31TKLBGfR8z9RfB+xKV0rW3RtI2l+HZ7JV6dzQxOmXvqKebQ5on6v4tes9cNEN9D9p00tmfaCNaN9EDA72qpolnqHBPbOO0y/nnsrt3tvoFDeyvDPHYwrGJ21AWNs2xLSJiRouXaJxwSRWWETrXP6UmV4QT7Ha8L1YmDxa8ZAzx/LLB3qVGh2CaylFgbyhJRI/h432xszQg4bxSKY/UusGzzxwlrwoplQZGIHAebZZtFHDi5ixmT92Bti+nOWFfqQTx0+A6UF5u/NQ3YxsQYFO0TCfJtfbJxx5JsXzhEk+hMfSrqzXbzgZ7dsS0zA7f2sXvLxJuEPVQb/16u38davGmx52evn3nTNQ09mTiiGaqW5CRTGEIxZs1o4PM/cdnP46IqyPv4YnwceM5xE9uRPAm3DvsCvCUZ4EkJmrdN7LHhtueFTeY7PlAqs4uGwhAGST6X373UeV1KLNvE3x4S0Y5uSGwjOi1vzbe7VHrFl7cZWX0/h+oitpUYbqQeOpMVzRXC5Vf274sp2faZaFYY2OPkggreVbHQwdXSqWEKccFRXTop0Yb3/56fh0M11pgP1nN3LudVVOPq/n3welEXgWm+WccANJvYJo6a4Y1cJDgz7eRGKshgaYUdtLJ13FFtCiKZflko4lmXNWqZuHMME1OCCdycKjdSCZoutrXUmhY9TAa+6RtLsaPMYtnGdB79kvnbiL/x7JTNUFSNs2y78afHxq9P9JkPJdvrUO0i6fYy/Z1oCEZ4N1HrvqFGm2VbQ8QUUIKSIbYxFhsiNzYHFh5YiBdWvIBbGhmXKEmCysbNMp4Ya9BigWXbJb5VKMm6Ho1rv7Qdy+b2lArLNjajMlueyG1OU2MxUQDmPXAbzMWpY4D5roSkOGVFQpy7WUTOxDsLdgotp8RupIzIygzeWqydZC6GnjeLpp+9/A0+WcbEr4o+Q1YLu9gzlWAmxZawwj1TBsLkKV6fi+ZqPTZWDAcLTMFxaxkhJAzNNqKoDZmD6BpZBupL4YSmASpjdWi845xg6kGsihuI2uHZCkjmsadtPIRbP16JGZvK4GO+gYmIbaZlW+vdSCu3mFkGPbkEx2P+88Bn1wNKhPueKKrCX2MjXtpXdwItNVAm3IaSykbuGtr6Hwnw+dbP8eL2T3G1IeSLiPNetITN59LIsJyb6Z7VdNEBc0I2nMT30yr6WN1IfaIBd3M18MoJumjpBnu+x11g/q5jBCtN5ZMK1Oyzi2KhRuBbxsoz2WzHbs/bwbXAh5cB+1a4l2G9xpEgV+4CxRTIjX5Gtc9+D33W2J4W2MkGWRG/q1y7F7VYG5+fi8sG9MWj3Y0QCRo3AdRHUZzbJLfrU8d7M0QaDuMPI5YAX90FFE/SwyB4pWIL/GXrcZ5vg6O3TTKWbbF9RF37zDzH/Rxx6K+67Rlm3idNUgXflOjfP77NXFQVZ1LFiSyxtZ1+mOQnDkxa55XTtppcKs6PSAYS24hOQaoTKeUM+BiBLmswvyi+xYLx4Xcbcz+19CnHdf/t0Q2BrgtiCRcA3nVBcos5xHy4b/ZPh6bZL4Tdsk1FbXMYNc28FZYjzPFtwqKl6LWMibiVkbI+8PqgsIvtYjUxgdazVCOmmYbmRG9s4UDbov6SWOh0hBXbjI7Bus+BZ/sDS95035XZlxVC2c53l+yAJ8u2ler3HI8jSpDgCUtnwQ8FSnOtnijg6Z68yyiACStL8OmyEnOBJFssBRhrsOi/szcfxLwt5VymR1vGU1Hdo+UG2c6p2/0PtwDVjHDBJUjQz/ORiRuxoqQKpzw2A6OX7WLWW7BYtikScOu612N/t8TENrsQ6yUb6Zy9YotcNilDRCSwAEKxzSB34p9ty9jBsdUayI0e+Znc35x73B7GGphzI+UtBQyrM1bQiJXSCjdSP1jRS+KvBZsdFwAivHXUwt31eGbqFjSG7NdPmIyNiUOnMI+fNT4mdz6RBKxf2HKiQo1V9ItdPzZDrhLGgv0LUGONbRRl1Z5qnPDIdMjTH7KtE1rwiY4nYtk7emwsg7JoAGibBaVdcGSFimZZtj3Dlc2mxbIfGqBYM+bxFB+oZraPfi9Yy1wPg6G44rhDGX7JPJfaZkbAccraGwfjMeDa1CQFjxF+85lXkxTXOeY/owvsW6dw4l1Ei/DXp7Gc221vdRAXvDQflfVmfYzv5L4kAntvPrw5/kYuQve6fTWobzLvic/NjRR6RtwIgLfWvRVbFnIq3+U5sn4qIpZthW2GJfbZjuodYhdWVmzbNd+hBhovxM1/1p7MRlMsAp2SnHmN2zs38tfAnoXA+xe7l2ENE9BSm5SwwYmcW6Y6bneSVIJLJ56Op/3v29bZxG9NwfCou+NX+VFxSdOgMN9MzdgWADZO0C3TDNzEYEnm+jgtn9zAZ/1MIPEOO6Hi5G1jn3h3+N4w8ThPlPTJfnHMNoeJQRdYIfBnjUzsWZe+XpBbpwrGNNG/83rikM+HL/NyEWx0D8/jiOs7YGmnM3IdtmPwOIbxmo20rZAyKpB/4n/SWoejGRLbiE7L7GLnAPNeqXTolLF4cSONR1avqbi2X+/Y383MrJvEBgi2wDaVAa75N+kqWRpsTUFZXQuOYZPucWEjfNit9mIWsAKDe+M6dOZmTNuyAd/uW+JYZ9F+rOVfhqY7w2b1GYszjx2AXQG/zT3W0S1RMLMZSPT+MI1trHPy5RD93xl8Y7Ty0Eq8te6tWMwjNgg/bzdo1n9g1xzuOhrnZhUy7bN3zOwe1yFQASmEzJ5TsKZ8jduZ2a57odSA/GrG/WTjBG69D9YYIBKnULCCjFE7GRoONwa5OgpjY1nrE72Gn0Q8iqMjzgVeP00PhM/sr9dBL9fnk/DiDN2NsLElzKy31CdYz4ttAIobTRdpkdjmi1nWxK/qhO0TBEt5yzZVILBwf1s6xt9kZ2FtLBYmI8pw20n2zv6hjbrliuGyt20GMOE25Gi8SOV3sth1sWz7+YC+ePnwCs7C03S9Sd6NlJ1wCEoy7v2MiXFkHTBYkjbsrtYH2/w3RC8vXoIEdjLD/C3pzzN7Pi4WWe4IrLMQ7Xhr/DE+LVuKu+bchZum3yQs6ZVZW+0Lo/fHi9jWEGpArci9zsmNzqpUCoQmjUnC0z2i2J7FMGfZKWH07km4YOwF2FYtzjQoa3ZBfWAhYxnuRWyDhojbS+sgePkl8XXgviUJuC4ZYzDejbT1LnlKkglRhNSXcfH8IqpFbLO8ty3Qv0esNbTRjh2sST6YPXcMa9gDl/MtLq3jrq8Rs00kdi3MzsKlA/rh7l49uOXBpirbtgDs7p6c1TPfX2G/XwqAbYcEIgrT9s7fMxe//fq34nfdgyC7+WAt3pjLuPgpIedYoJZlzSEFuyu9x6B0fedCdm+Af3+xHv8ct45faCmjJeLilsnBX2fWsk377I+O4vff/LpF+J/89kkwPgu3CqiKPTyLpnLPUCy0gaoC42/WLdPKNptlOFZf5s4hr6bYst7dUs/g2WnFuHL44tjfTmOSnVpffoHT9yanW+znz316WyuUjCzP1L6q+M9NC8zvNXt2bl8tTmyTVNs4ZNbmQ9iwXxdor+7XG4/26IYRDvHgrKgARhbkM30pl7bS8t3YNuD3KNUsCaEs7/7w+YI4kwyKquHb7RWob0lRtvEkyRv8clqPf7RDYhvRKSlJpLPgSvxZiVSIbQaf5+dhSVYmDjaZQmFE0GExGFZUiL/07omgBAAaekv2juHD/jH8gmgnpmeYEUO4DawzR4xlm1MWoCi3+abiwWXX4c65Q8yA6SIaeUGFHXSFJQkyVAQKdeFolCB21wXfc8huK3DPSDhAs0BQceIvM/6C4WuH46udXwEAVKZjtTNgCoLsjKvmUK61A+F2rbkYS5KGjG4LkNHtW9w47UZc9PJ8PD15s97RfPdnwPR/M0Xw16KL1Ih6jbFosgye/FBQC8ZVQJJQGarVgxMDyJHMmcmYpQZUPDRhA/4+1uxQC0UNgO+IRjt+ZVy3y+X9M4IjG9lSmY6jEV3l5nMGmSVI7MyvpVyBG6mf6ejqnT0N7D0w7ldr4gfyLn+GG6lgUGQ5xh6/H3f37okb+kYFesbdnX02whLsg9G3z9EtVz67Xv/7k2uADWNxlzKa28xnd7bV2c+4BFmelzK/HyPrNnMWGaollp8QLg4Uf64rSqqwt9p8zoKShNV7qqAC2BXw22NaWoW76PVQme6M8W7FS5DATkIYVm6bSuvwg6dm4XADY3XSUMbHTDKo2AZ8cbsltg0j5kefSWFGW8t1mFylT7rsqt1l3xZAUY5gAiIqqMa1vtSAi8ZdhP87pj8arTPxIpe3llqBZVtYr3PJIrRU7ceSnYcRDJv34thwOPqOMi7BKm9d/XzxyFgmSBEBsO9w9HccgcoaL3VdxTr84KlZegbfss3AyyfosTANHJ7TfjJrxWX/Duh18W6ZZtSLd1tjfoeb7QHIPdBqyzZLAg8uiYXNjbSa+760IDNaB3biQy8vJyM1iRuemWp5z1zENlXj21HjmRHpH58WFAAAFuVkc8tDcx4VF259pxjxrdkiCPqZ5yUsOTjWMs/gFzv0Nk1o2efhGXv8qw3YVlpjLsjvYxevROWoCi5+5Rtc+NJ8rN1XY18fZe4Ws39qi+PrwOjNo3HPnPvx6fISjFu1H5UNjBBmqduvXpsPaBq2BwJYksVbXLshM98qFXC8VqLYxgacW3h0gq3SljVT4/o0KqKTcey3aOo/o5u63C9Jcrd8kuOIbZu/AoonYcQ3fJtgfJPmFJfhLUbsmaeczu/vIWbbVOWsaFVFlm38uf166ALUNrl/f2qRE/vN7h1xuQ4hrv9sv3tLd1bg8mELAU1DbdS9eGFODrwwJS8HL3crMvtSbm3ldj4h3IbyMPpYx1yW/T9Zbs0eyq+/bOi3uOH95Vi883Dcur4+ezs+WeYcVojovJDYRnQIKmUZk/JyoqJSfFI1S+DlcEbXadGO+B/LeDzdvSuG9OnFLYu41KLS78PK7Cx8lZcHCRqeCHxk26aPZKlXLFC12aDmqOwAUI+ZpiJq0SOwGLKVFeWnPrNzuNktA+16PrvooXpTHNXFNlbgs3eOpm90MBGPdrY0zjotQdzO14HHFj8WPa65fQsTJTnHbzb8miZOSGEV12wuu4pYUMnsOQ0Z3efG/t5Z0Yj3Fu4Gtk4FDqwClg43yxDMFjcpzCCImdHU66SgXsvBpowMbA0EAEi4cNPruKp/H+zx+3GLf4qtPAkRBIqWoC5iWoY5GtawA8Podf+1xMxIJuJGzNw3n6TiZKkEv9j+BLqrurDL3kuJjWcDRN1IGbFNAnoETJG3SZZ04URg5enFjZSlWZKwP9p5VxhLnVgnTeRGahk08AHDNUgBc1DuZ7L3hSXJOTbXzjlAJAgVeqf3bI23ivQ7PfvfMjOgDhZpdSHTcsPJsm1/dRMeGr8e28sskwmWAcDv314CjYnz0iJJ8EHFu4UFuKJ/X7yfb8lAZ62TYXXKfAkMgSNeggS2JsZ3eFtZPWqbw5i5kY+3g+E/sZf18RXA+s+Aj34TWySxgzlfCzJ7TsKaMotFqgbb9YoXi8tnjcoOxMQ24XlyA1MVTRFd0NySYf1ui8ptEcRsC+nfm5G/QtNbF+GP7y7F5ytKYqs1CYAaQTUUXN+nF8bm5/FCjvVdF8TI9HFim35OkkiwZpAFYmF9SwQTVu0HFr+hWyVOutdc6TBA/zHTtrFtZ2st2zKYp4zNToxXTtLd+z3ECmVptWWb5Ry4SQhNEJuq5NvYzxZNf3ZaQmYdJMt3MqyomL6xVBc7E6RKy8PHS/bwC12sYlVN49pVv8s3O8Mn7q+E9zJW+hVbTVHdJl4533uZOV4YgMzJDNF1skcLTQ/PmM8a1+rY/3OwmLa7FR6IWiBO21gatfjWMHVDKWeZ+BkjICiKN4H5+RXPY97+2fAX6JMG3D2w1K2xJQRoKn7Xv4+tP+wGK6zrtUp8Ioxr9zRF/D3QNNMS3TiKank3jBfc9X5JsH5f/Wyr4ya2tdQBY28EPv8TssBb8BnP/C0frcTz0033ZNvEs2MGVfvzKeyKCWIAz93q7lEkMd9OVmALe3UjldTYN6UpttzuFVDsNtnPsCtg3c68RqGullAubNIRAIURPnGbGAeX1yhbDnn/vr86e1sshMEp0i70RHWcPYjOAoltRwnp9hePx019e+E/PbrjjaLCNjtGY9DeKHoZ6hsN2weLdqe4RjoRD5Wo9Om2OkWSPUmCaj2LaIPEdsbqLe6ykqTh1t498eNjB6B6puk6abO28hij5o/vLBWvKJ6EdSu+xd2frIwtCksSVzef4NFcuMOhkYsOrNgBgpzoo+2UIMEDrBspOxvHxdHSNE74MX5bj2UT+rhYXOa2/pwSrgPDHMj8bQzALA29BA0aM80ftpyuHyrODSzDtf164+r+fThXy9VZmThFNmdUjSeoqXATsnp/hdzBr5pVd1Lb2IFStOxqJCqU2y2nZKiYkvkffO/QJPytWs/OxV4jWxc20sLHJpIkDMgsiv3dIMvAjH9z1890I43/jJzKvMS/7dcHvxzQD1uay6CJBsZCyzb+/vJHVLg4KJyVKCRXyw9NCePavr3x2359kAPeGthq2aaoGh4bNYMvwMPAPnbqlvO665M1+HzlPjz35lv8DoIy2ec9KEnIQRDDom3B0CKLu4hl8C1Fnyuh2CYSSlnLNnbwZv0Oe3Fzqj/I/xst1SCjcBkyui3CnfNu5nZTNdUmuipxjidsJsJN0fJEz6i5Byve11tdScWjrFjZZgXDMZfuruFDADTsqDBFYAX6xM2HcgPWZ2Xiqe5duWfVdnbP9rcdNSDx77i+I2uJYj9PpwyFGjQ+ZlVshfg6l6GA29ush7No4IZR1UyYz+u8zaX426dr9JXNUYuJg2s9l6lXoZUTjZY4YawbabjuoH0ygIm3FYm2AlPXm8+7cfUVJQRoGt6avxN/Hb0aV7+9GI44TGBs1+zPhJvYpoG3HPS5uJE6Dc1jA/1ICHjzTF1UDzUlL7ZJkmUiI7rOZ9ZAa6XYJkO1Z5O2iW0K0P/HlrKV2P5D1v0BeLY/Fr//AO4csxpnP2dO6LF9BinBhBySrH9fOYtTQZZ01YOIt7OiHl+vM581VliPWGN7Mri12Fy7pypiyzRN5eLmqhL0Z5bdduBPzDIc4a3lAeAYiRGrIi6CNPP9zbA4YTpNEtv7lA51Y65bRtRqXjSXYzMRzdmF4dvuxsbKjeJy9cJjv/jJLGdYsU2LGgNMy83BWccOwMcF+dZc5QlhO63qElQ1hqCoGkoq3TMdy6Jnw+pC7rFOPVDjmNjCyvekvZic+TCWZ93laXui40NiG9Eh2BudfZjt0TQ4GRxd3eKQSjdSEW6WbSxOH3WrVdghpQVPrbwfqx0upRrqhv5SJVZk6xYj87ICMUsxm/jkIraxSYeW7BJY/R1cA3z+J3x/yq85F78I+E6BL54UzN432bAYYgdlCdKKTGrsoLWFaXQ5dymLa4sptvHPkc2yiOlkq2EP8W/YmXJjRs7S+ZShcYOpZ79aza33SQr6+00RmbVE2ZSZgQXqKbbDhrLtM5uO7xYbGD96zxZpjOhjuIq6IZhBZgdYA8KGJQR7za31CHNCqQIgwlyXRkkGTrmae9ZMN9L4VezXYnbaDgT0+zKrZjNnhaJoGqZvLLUPMgRiG+eQJUe4l4191iJRayInmsINKM7MwO6MAA773Z+/2cVl2LJ5A1+Ahyyck3OjQYQtHdPiUt367TlpmGOZRuwg1rItIunuz444uJHy1rJ6XfIr1+nuW5wwLU6QYMRs+61PTxYhxRNWnGI9sYJRpjg+oR6zzXI/kskCFD0XYYgyh/LskzuC7dSIPWaVEgKYgNHfk/ZxVnxqdD92WMhbtgmrw8FbKellSwLrWL72LgUL41aJB6Aym5lcsn+/9eN7F7oMwSeTuSINLUFMWneQb1eXvR23rHOazPZAaa0bqaVNV8o3mb/rS+3XLMBYbUevdSRiXgcZKvLRhFM/+wnw2XWYHBXidlU4vMMbxgMvfRfYu4ybyJiZkx21t7fgcs1VVePEE+OZ2StI1pDNfAIu7n9B7HdIkqCoCtaWLjdl0ZaahMQ2Vph5sGd3yxMZPTD7ProJNB7cSGVoCEgRLM7OwkcF+dAiQXtDpalAlwGWZXrZl8uL0a1Fbzf/78B7sdURRUVJZSNnmeeWwEuIKBultV8iqVx77MS9n67GPZ+uwfTibSg+XMwJ64qg3NjhXL4JvGWb3arcKGGTZorSE/NysbKkkt/W+O12Hppmuy8nSYzlpjXbJ8PUDQcd1zmNSeyWbU5upGadAzEZTORGarG+PuZTHGrZiSEzhzjWzcmyzc2NlE+QoEGChn/10L0wXuxWFOunr2hJPE73fr/Fvf3AKvzwqVm48YNl9jP20AZbn277Hvbn/xx5A1Zk3YkRgVdt60ScKW+JvxHRqSCxjUgLgQStWwr2zwfmPu0ejDQp4nckvLoaJkL/XDPVvVsjZCBFGyAR1qWPN23D2spl+CZfbKJu7TxpAJZE4wnYzjUSX/QJag6xWirMgN5s583mRhrvFrAdHMOyTRAzxuCbbRV4eeZWZ2srZrDi9d6e2ax3vDTOss1cbwwqF+xfgCELLwCySlEly/g6LxfhaOfD2kFys2xTds2PXylWbDMEBJvYpnLlhlv4AZAfKmZqp8f+jjDi0OaMDGzAMbbDCidAHWO2uQ+UMfMR8X7CsvgBnknUDcLaiWbXKiHumVEkCQ1MkpImWQJ6n8LtF4v7pWkYv2o/np++JeH4barGZGuMKPjr6NVYuM3SYRRYObENs5xRCV92SexvNnte2OIGbmAsYe9nhmU7boY/Iw+NwUjMciVWtbAgW56FHYY7h+XaZEStaa2z8sZ9PNR4CAv369Yv7J4KJM71zjbYi4Swz2/W3rBsY/cxYn+dPe8a3YVw+yxmf3GCBJsIFW8wOOb3/OZGPTnrLKeYQprtvvnjdMeEFlzRcxG+f6JYbOAtcqMF2zdSFZsFFDSFKzMXLZDAvlMA1AiyWGtBS5zEeLAuVnL0uymxrthC8dfBsk3gqgvAsQ/Bim2SYLJE39fhmVg9Clijx05VNRU3z7gZwa4jAQA9JNP6L1YWazXIuGk6kc/UWY2T2TcurNimhBApY8Q2/QD89gJXt58MKjRXQ8Np8k4EWg4DW6dCjicGTrhFz3L66bXYWWFOUvyjVw/M6yI4N8E9r6gP4r1vd6HkcCMnnhhi26NfbcKrs7ZhzDJT2ChgbqOPeY4VSBixfgRumHsHHosO8KGpWLSDz8TqJrax7cKy7CzwX7To7xN/w2zv0bKtoB+2ldWjvoW/pj6oeNI/Erf37omXuhVhReNegThob1eMe9tbErun3TFmNS54aT7mb2HCeCSRNRSIiuRT/gEUT7aVcY/vSwQj8UVjvQ1W8eDy3+PaKdeivMm8J4okQasv59p15uguZbKWsmLLtq1VW7GUmRT8Oj8Pd4xagRYufl30vrqJowJX3nv9X5h/GGLo/OeAD37JTeA8/jUbz8/iDeIwFrCFJnFqwzRzgjvg0Ea57V8fdnaNZAVztk118+DhYrZJekxp9gyDvhAChUuxoCbxREXT8sQZRRftOBx3sl2UQXWbxS3UVkat3Zp6iE8Px3JJNBlFPFJt4JGHxDNFE6mFxDYiZczKyca4fA+pkgE84R+ZUNnfmfUXYMGLZrD0FFGXEd9NMuEA/B7Y32g2Grs8xB4wchopmm1ECKNjMTcnG//u0Q0lql0gOzlonqdPsnca90fjddg+8lmFjnUyanLImq1HuLFFbLPMfrrNRHKdz2gnOaI5d3xv+mA53pi7A5PWO8wMMlZjXhu1zGhnmrdsMz+fhrvUXXN0s++GQaNxR+8e+G+PbhjWTX8n4iZIYDptWkuNS2307YbNZ92aDVdLa4wN3iUkxxb7Q+HjZbWYnb0ftQS5QWdM3BC8Dy0hBVj3GbCGD8IvciPl8OSiYli2sRYMZr1yo51i9plixQclWg92Jj0CoFFl3QmN+vHuY/lowi/Ds/D0uIV4a/5OrCgRD1JET68CjbNsM2LAbDhgKcOSlTJWH+P8Bg1DVp+Jsb9Zy7awJNmu4ePduuKiAf1QI8sIM4JipuW9t7ohSRK4JAOANyuacQX5qJJl26Aj4NOvyg6tH79D9Jr8fPzP8cK6v8OXs5OLj6NKVstXnX31+9AQasCkA9/gVwP64b/RgfHA8E4AQBbjrmd7tyqYoOvMM6lygwH9j/WZGfDnr4Mcb5B5YCX3p6HtszP7J8ol5mE5d0gIXKvcxShj7S7VzGq9vfQwluw8HDdmG8tU2+DDwbLNOohUIwAzCZAphblzVaOZcbOZZ4h1r7deTVGryg78jHaXi9kmEF7CEZf2OQHLNo2Ntce5pMexbGusBL6+G/jqTiDcgt21u7Hi0AqoOesAqCiSzMFZ7LvFWi73ONG5/lHYeHeKS9vnCVZEjbRwbWlEbzD47YVudvx3km2//ZrHWG0ttQiG+WPNMsQ21mpUcA+HjFqJp6cUY+SiXdx3nxUbXp+zHf/90nR3Y93kWphJREUC3ln/DgBgsvFuaCoeHLuGP6iLqGJ1AW/IZr7xRv26f8c8JY9iWzgSxiWvLsBvhi3iNpGhIksy34sDoVrBfRNYbUW3cXpjZm0uA8CHwXCtq5CoReeGT4AV7wGfX2+r2zX+bxAq2yDamcMHFZAUaFD5pFHQ2/B7Z96KyydejqBTRmUBomykVlYKsr7L0NASZJ5toz7xxDZBaA9ufcVWYP6zwN7FepZT0XbRvohZF/E9sbopVjRX4u/z/45lpcu45fvVIC4Y2A9vFxYggAjkrL1YXMbHK+POMRFYK3XmuxB2ad94yzZrAjfgm36bkdVnIkaGBRm5W0E8sc2In8ZSWstPQtnKmPNEwsex4pi8Kkl+5VsWfyOiTSGxjUgZf+/VA09274Z9tsw+dq7zz03uIKIYLG2MSJDZV9WEMID3u+Rji8dAna1B1vQPtmJ5ZQMw05bf26sHJufl4oAWp+NhFbokM5W97Vzl+BnGjpHLHdawQU+ZDqQEnCF5cB80YAf80QEkmxXUKWbbzE0WC6KGcr1jxAzYJGiAHMR7XQqwN2puLnJLylNVKKEWNATNurCWbawAYrA5U8+yNTNP/9eWIMEmtrnEN2KJDgpX7WU69EanyCa2qVxQ7hyJfzb0wa15AWsYl6YMTYPMuolFnxFRx0FrKAO+vF3vLBoZ9jSNH5w6dErv+2wNdlW4x86w7i9DxarMTNzRq0fsvoEb+DPiDQAoESisdQgkroOuSFLUEsDc5vvyTrwUeBsPhd7E2xmvAQAWbBO7BYqIaPy1N4Qdm3uiYFDkNpzmM/vCtu+Egjwc9vswPj8PQcYyTbU81lyHTgnBpym2e6s6xGy7YMAF3N+vdy20P3vR52W+8n1+Z4uA58sp4QRfBbzls1/TsLduL371xa/wiwm/wDt79FniKdGB8YUtc+CDwsX7CiCCDwPPmwdhBzyMZQ97nY29r+/bG9n9P8VBa+IZwNWyWpv/rP6DqUcXJsYma+UlciON32rqsILUf8atxh/fXSoORu8gtmVZz0GYhU5kFRPRk0FEyUSYt2yLbpPNfD/5d4wvTvSMC93vOcu2sJ7AY8tUs6qCcmKwwe9jOzgMVFmxjSmVHxwLvmH1jBVQpJm3fpVUS0wx/dgNjYx1xCnizKxclQtMwdrpnfQMa9kWCUHJNmNXRgQJElZVFeNfPbrpgrpRH+Y6WK3uXSew2GdPU1CYw/edKow/a5kMf4J2Y83eGgB2qxy/YJAqskZuZgRHBfbkJLWNQUiWftLBKmdrHtX1KbRbQLlOYrBiW1jfznC3N7D3HSI43FLFB40XJbuIlu00uZmBMKZl/AuvB940i0lSbKspZ+6hoIyQkxs+Qw+pBk69IUWSMC9ShX31+7C8dLmgBmK4aycI4QDwlo/sfmz2ZS9upJqqYHf9Xuc3YsNY/vuxc55jWXf7v+LqIsK6/KnNH2DWnlm4deat3PKhUi2qfD68WVSIDESQO2g43il+BisP8RNIiWRfNuFDQpi/7c+cEeswyCjhmmS3BqzKsvcPu3hM3NEaDjfY29W4bqQe41y7cbzk7EJMdE5IbCNSTm28dNZxcW4qNU1PdCBFWnCXbyK+JyWeJrnZg2ski2gW6eGJGzGqSz5e61qE3/frI9grtUiIBru3fNolj6kv2EDgaqCeN9GWJHywULeSip1rdtRazcV1IpEIQ5LP7NyGIXED47ilKQKx7YBpju2055QNFpNzSba5RsnQkNlrEl7vWoir+ukWIyJ3rQJVxbDhr+DjJbtiy9jZuLDLAMiY3YvrRsqUITJfN89D3y/IhnyOvXPWWVRwWTjZYN16nRROpCrNyWfWabyAFRPbWDQ86v8YT27/nblIVbD5YB32VdZyWzo9SxPXHsSf3nOZeRPEbPNBxZ/79sLCnGw83KNrtF5MXZkOtCJJgBLkY7ZJvKVRBEBJRS1WlZgCyy99K/ALn975/ImsW0YNm7fDuZ4WIppisWzTqaizmPQLOvyqy/1n42CFo9ZEwu0kIMRYtoUsd45/HjUEmspsg9eIQEQGgPUH+AQmpX6fbdBhDHIzrJa0SljPtBbbkJ/HViWJq4cfwNJSPQFLXagOmQ12cd/6bvWUanChbx1bG+YAjLUVazFkueZVUh1suAys/Auej77TFgEqCpdEJZmYbdHVGYxFi/G7usm7e2WRTTB0smwTWN6e8GsoAF4v6oKm3L28ZVvUpTnAlNfEuEta3UhFgy9WZI25SrFi2845wJwngc/+aC7TJNQ28d9fydeAbY0LeQdmzS568Dt5sWwT7NvMiAbhFj47qqRwApDxzf/9G8xkowcxQ/Vnxn4rrU2QwAo9kRYoTAIERQnbzvHPq5/HlLxcnH8Mk7yAeTZqkctZouyvFLw3BqtHcn869l2YOtncmRmsFiDG391yzcyjISOgISO6GZl5AfG39vJh39qsa2750CEJFOIkNzFEO2aSr6reZdKYa+fEz6oMFTWM+Lk6WI6LZ96Ea/r1wc5ozFB9EsfyrETvrZPYdoG8FifK+3h3Nw+Cyx5rXCwAy1grcEEZK3bFn7jKl5rFMeDAi/fWPn03mM+g9RpygqxDNtK9h+1jBFnSMJrNlBuzbLNc4y4DYz/f3T4Wv5l9K17sWhhb1kdivhfFk9CgBHFDn174qCA/1texhkCRABwjmaKczV3UqKPlmS1pFLtdsjEG2W9uSV0Jv2FSlm2sN4RLmAaYHiN8NlI9QYJrHxjAxY2JjeNExLM4s3qC6PskVkYy/Nyju2lH5pSgRwvnowQS24gOx3el/dzf32H+Hj5/B05+bAbw7Qv4Z2AsZmT+y7Z/vI+fOMaDMyI30rqWMLZkiFPJtwVOrqwSNJR6cOO0NplbmRnQV4qKsDkazDw2sDAGEOysWyIU9IOmaZifnY0ynw/fYYPwWxpRm2esFS5mW7QzUrXT3J/ZdM9hfgZ4kXIycyB751OGBn+OXreWaOdVZNmmAdhVXs89W2ycibDLTHVYMo4Vz7LN2eWKRYqKFy0a8/zJTAebQQZvoWKd+fdDjc4k6rT0PIGpg2RxIzWaC/ManC7txM1+3v2gor4Fvxr6LS55eQ5fcUehQkW5sgqVzU5p1g0XWfF5VPp80a3Mukaslm2aymcjtWyjSBKmrNuHzQctAqGFgV29J3CJaCrCjKuq8ZxX1IrENv79dhtO22K2sfd81zfcusaQeawPCgu4cqyu3L5IM/xSBG8VFuDLqNWY4iAiVzTwA+rDss82aDFKt8VsU8LA7MeZDWWbZRu7j0/TOOuUzLCoA+ziqgMA22dHj6VxzxFbY+vTaXVb0he6Cx3ZCFoEanMd+42QJdkutsX7EEZPiQ24b8SpC0UEdXUYrDQby41rKjxPQSwjVQEy8zEnJxvvFXZBcf/FQss29qjss2qNFReWwCdQAf9eG++zj73mQuFFwi0freCWZA98FzMrXsLnBebkgRnX0oPYxlnYsUJtVKxY+jYw9ia9/qz4G2mxTNbwYpvxO5sZxLWEQpi+8RBawuZ2DaEG3D/vfkwv0b+trFu8yoqP22cBy9/lvh/l9S3usSXZax4JIsJYH0bUkKcBdo1WF3sKpyhnCa33hEy+n//bqZqsRb1L3EhrkhdDpP/BwEJzd8X+nLPijOhp8EMRtNcuFkxeLNsMy1cAESZ78VvzdyIUUfHctC349xcbuMkxwwra32Ul3utpWjf6oGJNlinATmzep1slAtgUtaiHqgjENv2u/dlvyTodxZhU4qsf/3kwkgJFd4j+nxleCsrYVCoOyWAgaVosZpuIFVlZsd8j1o/g1uVLZrtn7fNwQpVDNtLRS/fYlklQUV7LWFgZ19Y6nmDe/ze26nEcR3cx216rd8FnpQuwNisTL3UrgibJeGzxY3h4wfPcNpkIY5Bsemp4zUa6u8kutmmahoYQE9+UmQyTrRZ9LpNLjcEImkP29T+VTddtVmBrEbRH2dHvFDsm0ARupCJSIXLZytjLT/pe77f0YZPkPF98l2mWOcoPU3JcgxZf663tEuXqeg/eKkcRJLYdJSST6CxdWDtrhTBfWsOHvmpb4j7oRv/T1qDEq49gFklCHPeVFGO4kYoGlV8r58Td3+pCVhIwxbZQzIRbg886i8i4DQHAR5Gfe6qvWtAPk6o24W+9e+CXA/oigxlc7ArYZ0HZzpENtsGP3sRpm8xOBHtuOy3uiCE2r6NA1NDFKKu1oP1l0Q3bZbAdvxaPYpsxQ2ftQLjFbHN3I1Wj9RS4xolitin8QGh9ZgbGFORBhSBmmyV7IOtapQgs27Ik++zVzOi9sQXedRC5A0XLkD1gFP4w6Q/C9U1hBav2VENjxUim85AXC5ZlnntIYeutH5u3bJP4ASx0S5p4nTxRljsnIpqKEONSYLga5Vgff03lBlhG/ZwIMoKDLUHCaNMlLQIJd40xv5Nf5vOZz6yDkKKMCIKZlRheVIhHo/HQVAfLNli+iSGr6MeQaUuQEIa2/vPYn5pliKCCHwD4NXDvbYZASLC+S5mS5Zh7FkJRNahsUG5fJnedrTPvB6vt2RQnrdlrc+liyUGQC7TPzexzCT7sMe7iNdFGxl82Np0hSraEFTzo/wwlWdcxBYrbuSbDIsa4X6KkA5pooB4BIi047DMt1yWrsKhGuDMJMpaVLTJ/hhHoFqfMQeHnsoAalmjxLLkkrNzDD9x9WfrAdGquKY5PX1eCppAgFl2sFOYZYr6JMjc4j+DTLZ/i3M1DUbxjCrDpS6CRsdCJBDnhRZIUoWss++69PKMYfx29Ck9NNgOijyoehdl7Z+Of3/wTALig4worlo25Gpj6ALBZdzGbvrEUZ/5vDh79ykx6YIO9nkqQs15VlJDrABsAfDk7MTx3Om7r3VMvDrIlOYl3yzvHry1bx66DHPd3nsAynzVDiGbdIZu4mG32N08X2zTLMnP/LuD7Ge6Z7gX9R2bz56dvwXPTtuDtb3bi0+V7Ubd7tbld9Dpk9x2P13N9Mas1H1T4GdOucwPdYr8zDavD6t2Olm39JXNii01wZZ04A8C1u04ELK7TAO9NIXTVjBOXSoJ+HyQHK66He5jnvK3aOSwJ+zxKgUo05O8w74hjNlJRfVX0DDMWicZElPV9SdCzp4n5/u7yy/hi+xeYtGcMABVNkoTJuTk4y7+a28dzNlIBmw7WIRThQy4YSC11AJMwxS0V+8mPzcD3n5gJ67X6nmy6D0eYTMZlPnu/P0sYa9Q5GRy3Wdwt7EzIy8XUfNNC11ZGI281Xy3LeK2oC0oYy83T5J3cNoVwFpVKXPoKbnhJJpQISwc6W+W2Fb5Esxgf4ZDYRhw1TFyjN5TeHC9NhLNI7fwhkQAcK9nTXluz9jhh3UbUVHtpqMu1orjbAMDavdV4Y6PugheWJK53OVOQHYidUf2t/C3+6vuaqWzE9nvRLnNwZZQs+Wvx5PyPwdoFsYMAUWYoGSoXV0kvyH4+miTpll7MeXCWbUoYH2780CxCcCmtoq09GynjRmrfnUGJVpPZyiUbKZsgIYAIru/bG89164rZOdnwR4MPGwRZsQ38ANQU25hrIMhE++rMrbFjcagRocWFP0/v3JU3i2P/zdx0CFe9tZizCMvNMmeec1W7+MhbtklRyzb2XACFtYSTJFznm20LMNwaBmV1RzBsdraMsVH3XMs101TsrOAtxdyGIeGguW1YV1PNlayLqQTkK86uOtYOuxpuhurjrUgiTgMtmxs4bIMO41afKu/mt1NCvEur1bJN4rOR+qBx1jx+pgP/bpcCrMj8ie1dsrpLA8Alr36D695ZaC7wZ3F7jc3PxyeMICnq8D/8xVr8dvgi23KDHKkFJzLnG2IiscVzI403wIgoGgCNC4xuXKdgRMWd/q/5HRwE26aYW3b0fonENqcECRHrtqxFou7SzJ4VKzZbLRsiksTFt7FZoIhitjkifm/Zb/SD49bi4S83OlvqMM+0BBX+vE2Qs/bx7aKm4Jllz6DW58Nj3bsBwVog3IxlWZlYkZUJRJp5y3lJgV9SYnJz7JzYoP7RZWOW7QHG3wJMeQANIb5NcrRsM9ivW/a9MF3/9o4yLHM0Ddg0EThkWptMXW8Ohqvq6jFr/a7Y3xElHNeSKVCkC/irsk3LIs56T/RtECHJDt0oi9Cb4Zx0y/oNM+rBXq9wzI3U3K6e/S5bygxFy7G+j4Y4dJ1vDtZlDQEWD4utc43ZxtzrrRkBXNmvN7Zl8l4RK0qqMFg6gPEZj6NwqzkRIVu+qYYVd7YUxEr1lNjy7/n4iRQAwJ4l0CJhbMrIQL3xHggslcPMhOQy9QTbeighLCtdhq1VfHB6VTPPmhXbJFk/Bptsp74lhDKfD//o0Q2rDcu7OM+JBOOax++XXvUdPu4h6ybL9kPyjn8JJX2XYIohwmsKttZZ2icAsmJ/5mRoOKdumrkgZtlmeV/iTOZXaF34zZntW5iJNAkaHuveFf/u2R0b+66x1EX8jnpJ+NUSVhBkqtjgZyY8ZvwHeOtsoDIaLsPVC0iBklWMnGOHc0vZGrBfKutkCwDkCr41mqTarO5FNMmJyxeP9+iGh7qb+8Vrcx/r3hXvF3bBNf3MpET54N1X/+kfK9xX0zQ8OXmzcF18Uiu2NQfiZ5Un2hYS24gORZXP2yPp1qiw2b9Ylu/WXSNdXSwEiBo2WUr159AdDcAFvnW2Y8r8/KEj1oGO6Ap4aahVQSZTcYkaujCNkhexz+DVjLfwr8BnQHlUgGMb/GjwfbYLYHSscga9jsPZHyOj24LYOtZCRncZsMfC6Gp5XkQCgxo7DmMFxjT2ITWEV1a9Evvbnppdt98ZWZCP6dGOnqsbqWvMNv3suUFgzLLNfn6sCNLgNxvdkkAAPqic0MGJbZIUc1kFgAbZLrbpAYx5RNYbADC7bCXO/fxcbllE44XYZZt3oa6FHxDsr9HrXF5rDpAKmA7uwEgEWf0+wYYeZqdZ5YQ3AJoGlQuML9mC4xdIzSl9p/N9WQgywphRox55loQqmoqQxR3DzbItzFgDucdsk3CJ35zRPKfeGrMtOjCVoolBwi02sdHJjVT4BluePWPAe4a8nd9OiaAlws748l1eBfwASQaws8acTfZlmAPLoV0LIWmqQGyz13tnRSM27KsyF/g5KR5bMjPwbHfTJV8TDAb9UFDT5GzFmoMg8iTz3EISK7Yx8fsECQjY91nkwhpRVds3gxXbbDgM+oy2YMaeGZi2e5r4+VHt9YOqAJEW3h2UTaACIBwJcjVkLduaLc90WIKr2GY8FZJgwMc9aZrsOHBnjyhDwxdrDriIbYwFWtYhZA8YhdxBbzrGbFMAQNPQGGnGrX164eY+vRAMNvDth6Tgo+4KzjmmP/b7fbH2iM+2q/8eLB0ENo4HVryLXF82VzX2eyaM2Ra9thl+yz3fMgUYdxMw/i+xRaMXm+/S0q0H0FBfE/s7otpjtvklq6WO3bo+4DTBxWIkzokVowr7YoGuizHpwHxuOyfsSYf0uscENrAu1uayBjZmm6XMMr8ffiiCsvW/nwm8ry+Y+d/YOjfLNuM51gZfhH/07I6dgvAjEVXDsMBQ/EjmLbQkTeFqaLy7LwTe5eJutXAJK6L0OQ0Lm/bh2n69ca0hFgjiFTfCFE3Xq8fZ1h+MNOLWmbfi6klXx5aF1TCu/OpK3NGrBwBebNMiulDFim1DPlqOR7t3xcy8XNzUtxeA+JZtiiTp1oQOlm0svXL1Mi87TY+fXONT8fu+vTE+P1eYNGOt4YKrqrh66cPcumGFXaD0n2DbR4KGBpkRyoz3xPo+HhbHdTUSOU108URhrasDcgjToxPTlbl8iA2nvrqbeLTncAPu+2wNig/Vo4qZ79ufKWjP9kUt4l2sXDO6LkTOwA/hy+bD/nDW4kx9rOFjACBfkHCol1TladJzimDSPlHiGRisjj4nzWxyGMs2PSWrO7S+xfytFZi7xSl5nDusWJyL1semSwfxU+sdXZDYRnQomgWzFaxFkPEROkF2TozAZu1hmbKhFM9N24Ka5sT810UNm8zZA7U9RjDp1dp3uOUyNEhQBUNLnv0BfoAvamJkqFiWlYk/9emFbZbtDeqZGRK2g2VttCQAp0im9ZHV/k7UhPfGYX5Bc7QRYzszRoedabeN+yD79Q60L8+cgeXiRTm4ke5xOFdrfSu0LsiWxA1fyGIdYs2Q6oOKxoxavNytCP/s2V3fxtqJ9ByzzbBsYysotmyToEFTFZT6fLpLlWyu35CZoXdEmXoEmTooAHyM2FYncCN9IvCRrX7GQNKaBOP+zSNQG+QHXF+q/wf2afz2iztw1fDFAPSgy+93yUcoWj+2c86eZbOWiUDBeq7cMCtcRF0cFUtmRIWL2QZsUQc4dr6K1YHC5W5ENAVhxkLFqLNNiNVU3aKE3del3BAbY8nqRtrrVKYMCaUwBwfW+EbGdy3ij87yh5u57LMAoDq5RwsGQJ8vL8HKkirBxhbUMFoyzVhaAYR5MUGSuAFSvSzj8+3jY3/nWOJINkkh230TiW2AZYDny3QVtYu7RgcRp5nuzfEmJHLQgiAnTjDvVphxXRNkCmQn82uCNXh88eOYt3debFlE0exiW9TKTRizzUE6ViXdeueBhf/BgwseRHVY4AYjSpCgKahvbOBDEjDPwYGAH+cu+Buek83BB/usWgdbEUiYt9l0y3KybJMEb4NtssVhQM4+FaZbqoMwx4ptgRpzuYPYBgA4uJazkgqG6rCr1rQUy5aa8FlBPpplGSO7FMRcgNn7mCmF8A//WJwtm+5buT6zTQorYaisJZbIoiYa4yxgnayMWryhchuwVM80zV7ngBbmzltR7ZZt2bK1fTTX/7NHN4TkMDepJZqAAQBUbLUvE4hUWb2m4D+b3uVd/RywiuxGm2OIbXJGOXbX6pMwEYdve1AgAvuh4DIfH6rEKSg9EMeyzRDblDDqHaxxIoqK3rZBuzGZal5bdtKUjbUaFIkiShjTGksAAHuNPs7St2ybNWjZtmUsB1S7K9ymyk3YXbsbi3L0ffmEC/pvVmyLhMO2flY3ySK+CvAjAi+WbUb/yx+dEPy8m4otmRl4ons3ofgbq63g2RpR1MW2DADgq8eKnMHm30bbGMft2sCYrFQsw242rA1bm9t8kxzL8pqNlOWKry7HxLUH8MjEjQhylrWMVaLxw6E/yeLvska4nN1DiXPvChV7+WfKm9vBkCHatsSxoKv12V2CFzEWpQAwWBYnobjv87XJVc3C6bL3pFwdiUKXzO1HIyS2ER2em32m6bbTzM13pX3C5Vbe/mYnl+mnKBRfaBFZtknQMCMFMyteMWowXzndVg8JQG2CJtXWq1iEOvig4tY+vbAuKxP3RGcsrbAx3TI5sc0u8nCigqVRq4MZ3NdY83zgXUslVf5fAFDC0DTNMtgSnZFOBrOlHqfCIrZ5MFfXS5cQgQ+X+FYI11uzYVkH/zI0hP28KXesY6SEAVVFY7O53rVWhmUb2/l3sGyToeJAdSMuG9AXD/XsjrUFZgd3fm4OctHCycZczDZInDhhzLqy76BogGCcV5Ygk5MVDYCcYYqsHw04iO3l+uD/d/364LWuRVjZTe/M5EfMY7ExLeolgaUA50YKPS4ac20iNmsqCRVaF+45rtZMC6pdWm+4IepWKJrKWbkYbqQ+qxWOpkKxdDrdLNtCIXPwo7uRMvv2/T63br9UxPzNH8N4RmNiW6SZuyoaYBMBDXyZdvfUstpG/H7EEnNBtKitan9+QyWM8MCzYn9mSi1c2EQVvGVbo+XbZp0Nb5DsVii2mG1RuDiC/gxX24qGDP19VOUAQtHMvyIrCZYcKcgNMDirUUZ41TS7G2kwbJ7zu+vfxYTtE3DPvHuwr15v2+ZsKXeMURWMCOrl8AwpkDjrtMpItF7Hngt0GRCtoCBwuBrBjoOHufeGHfB/kZ+HRoX/xrFupNbsoxEJePyrdbG/rdfWOFeRZZu1LMlBXBWKbS6JWkSwz9YeJtOmJgFYOxoaM9GihFuw/NByc18mpmW2qiE7Krax7cNl8jL8zT8RTwVGxpb5mYoHlSDU5prY3wdrGvVEQKo+pVApy7HsnQrTtymra0GYfbGmP2Q7nywEuXsYUewJEnyqxe2Keaan5+ViS/ddnKCRC6YdY9ujsH2iSnMZzBslKopis3aO1U3Q79DPQwOkEHIHv4K7FlyLsBp2tD6zJu6IQBf7L5P5OEdu736i2UitRFQNORC7erHtBWdh4yC2xdoOJcTFKQUAZfdCm0VZWZzQIDLr/u5wDRVOa9Prxfpc+CUF9RY3woDDN5rFzbLt+BCTfCV6bY3qNTDHGiiX4zjpIIR4FMoAoPw7I/FJ9meoM8p2SpDggFEjm8UkMznDTkhcEfjWsSyvCRJYFF8ljC9iBnMb2W9RgyxjUm4OtjdFQ9a4nJsvS5w8bRcjqsYLANAvIphIkdzPIxX48zfG38iBw8wEpht6fHEN+fAe51dEPDGc6ByQ2EZ0eNg05N0lcVr5nk6zqQISjdlmdwlMTSacRFBiQoe9cylDRXzJ0IJlHLYm66/ozaQkP+zgzqtZRYwodosgLhcVt9+JDimh+0iHwQ2PRKnVlRA0jU+KoEqAj7E482WaptusZdsvX52Psjq+4avP5GdXne5qoyxBhsonXGDXh/nZX7G7L3/v/FDRL08GXv8+8N7PEGwx66Y4ay3oItWiwBKUddLqEqzdVyOwbAPKlfJYJ25nDt+hv9E/C6qDG6l+XXlLNx33Z/8Knx7Tyi1wrEGzLwItUmBbPmrxrljijtJsvZwsZoaddbcICwTTMBcDDICmcNYH1gGWIgH1vggisu7q+2S3ouisuo7VKkzfKQJMewjYMkVoIaVoCpcB1ShBsg7MNM1mReTWfQ8xAc3DkoTJa/di6yHdFZpNAKBIEvzMYL/F8kobg8eIzxDbWviEGAAUpwQJAmRonNZriJu2b6USRpi5Bl3kWstsOJDh6K5ul0QGqVs8uZECzEBH8gGy31XUBHTXx2Ul1Qhp+oDIGPg6DTpz0MINDtmtWsKmu7qiKbaBTHmd+W4eaDAtvp5a8lTst5Mg1RISnK+DG+n6rEw80810l91UFhWxv/NzwLA4dIjZlsHZjIpdbVmCjGWbPRspb8FofceMNkUSDIitDqfsdyojIs4SHnsOnQaQDoP6CwcVYUPU9S8iGByGGUE6FG7EyV1Piv3N1isALZZQhn1ehZYRjEgZVsPc+VY2NOP3by8Bws14pagQFx7TH+OqSzB/azk3oXDWM3Mwcol9EpIVsnMkPnuuIrjvkSDb5tuvXbM/KMy4qpfHPC0hQXvgJrZFn5clOytw2uMz9eQWFmwZlaPXNayokHxme3ryo5OdLdtke1vgk1SbBZJVpNKY2JFhVyuO6HEZwdRKRFWR6fDNY58h9h2KsFnEmXckJtgoYZs7elPfn+Ja3zxuWTwrIpmZCIpE4wVaExJY/RZ8ObuwLWD2wwKIoM5iJeTFVdAtZls1k4jA+M4YW65m5sE/zfgf5mY+gG6wW9JpHoWyG2rNccdWww3YeO89JJAAzOt8DBt7ud+P4Gcy77ZwLpjOd8Y5QYI3kapXWOyV8ny3IvynZ3f8breeRdVLJlorn3YxrdYjceJtZgnaUUWSPMWPbg3GtyHZcdzyrEzs8zs4SkbPKYAISrKux4asWxMuvxrmRG+EHDKPCEhsIzoVQ/xTBEsTkc80bqBUncEPUpSWvrY9zAaMNbduZ7Et2vBe5ONNt+WYAX9i9dEEDTnrxtLiZCnHZZ8zy7BnSeVdKTMk1mIKnMDDwnYiPlm2Bxe/8g0aWxgLKVW3bGO7ABqAnwTM66JpZt1ZsU3TFHyxio8vsarfKu5vp67F3NwcSACWq98VrreKbdarZxXbNOgdya6NO4C6A8DBNchCCO91KcDC7Czh/TF4K+NVrM8awg1qdpVV4co3F9k6R9W5pdg4aCZzXP66N2sZYM86xHTaI5AsmRWNczHLmKqcaavfhb61AIBcKb5lW4usQGkeYFv+xNf2VOkS06llLVuq/fZniX2rjQQJ7MDDOvDf7/fjoUFNGHrMAbzcrQjjCvKxOdO8i7b4MpEgsHECsOxt4LPrhOJYWFWxosS02tMFYs0+2NdUaBZBwWq5w9LCBKkPQ8KaPYdxxZt64P9IyBR0VPCWNdZn2/iuRWQ9Zo8WCXPPqApAsQXEd8ara8um+t14LGKKAD4pzFmAqZLkmtHQeu+aJFngRiqud+ydkf2AFD9K5ZnHDsCQog0ojWZSMwShYEQFun3Htn2OxVKILf/+T8zkDLplm15n41llzyG31rTEWFK6BDM3HYpuI7ZsC4vENpc4UpPyzdFoyeHoQFIO6CIkEI1vaRfbMhHmvk1anHhKnBupZV0EEmdp6Lfcc6fYj4A1c6wEH9O+HM/EA2StImNtlMMA0mnwr0oSruvXG02SxD3LxtVl49KFw00I1pptDFsvv2aei9uTVytL+HDnF7G/I2oEYcbtOiwrqPbPQWnlZows1CcqXqxZhT9/uAJ7DlsmkyyvwYrdhyFDQaUsY3lWJrIR5CybI2rEdn38jHVc2KcK+z7s+8re0wgrtlVuQ6Us49aBx+Hz/DxocEj2EGW3YSET/V7uKLeLdY7vQzSZiEFIVRwnMKxupPpzGUEzY30PCCZc/KbFiRc3Uqn5MKoEbmmAFk1+IsYn+BbOUH4ERWbbbeYexioVRr1lsiTS54c2LxDWQl50b32a5fkA8OyyZ2PLVFiyJ0oqco55B18XrMLaaCKILMH3WHaZUIkdW1IcRfDDfsYiLDpJqLp88wZJpqjdLEl4u7AAm8J8HyXbQTRlRaE3C6OWTdHncm6x2I3QinGFWOMB9Pk+AoxoyAb9d5sISj4bqQbJ14DVueZxXAW6JMQ2lnhSZqbgfun5rDVkiDKVphjr8/5NdhZu7d0Th4Tvqc6Kgjrc0qcXfjXAPlZk+aNvTtL1Yu+jHxHIWQcAuXPGbiN0SGwjOiVsh1+C5ipOmBtGkHPcK3hs2b8cN/Fl2c3NZajwF6xF/on/xtVf60FivbofpgrDkssabFyGFs1ImliUA1Ej6G1WzMmyzW5xV8tYx7FCniLx+xolflc+wHXap6w/gB3lDZi5gUm3DkBTI5xlmwYJA2TzvkVqfxD7HeAyzNlTigf9fGerQeM72CxuHZmmCD/IEcVsYyfQFegDrxaYVhgrc2S83rUQd/Tu6XonXuyeh+m5OegnmUFzr5D1OGdG58g467ICXlzULI/JCvV7nPAZZi2xJF5kUiS7pNvkYlPpizrUvV2oC4hCJA0QdLrZzmSTX+9Iy2xdmG23Zdmf/bDlWkNTOfc+6wDLiM3R4DdLDjI3kevcTnsI+F8f7Fo1K7ZIdL8Ol+/HtnJzNl2BFLX+4u8R60YajGZ3dbNsrGbcjcOSXregVo3LvrgMzwR3M8fjB/tWgds4J0U2B7Vc/CZJ4uLcuaFJTMe1vBiY8g90h24pywlcAK7dOAxrNLPjKEkRlGbw35WASzfdGvurWdZFkMOyjL/26oFZOdnIE7hkyVBNlyxfAJB9rteZ5XfHdOXOJRhRAUE8u1zJYtnGXPPTFXOQpUTdNFdnZuInxwzARwX53Be8cB/vrj5k1Kro8a3WX1HBVCSKerS4UOTodrIfMAZ+miqwbFPsFoNxxDY3y7aI5ftizWJpfG9FA0tucK8B/m6My5Uljtz1fXrhyW5FZhvlIRupiLOOHYDPi+wPTJARNEKRRgRV85wDsvkcyjBj7rm1tY9374ayFlOkj6gRziprbI8gsnpPxvULHzK3ida9OWxxG2S6+BqAm2b8CYu+NxEXHtMft/TphTU5CucWGlHDNpGVbTPDsjiGVgYntjGxR9nB9OzHMbRrIZb5Ini6e1dcMLAfykIlDlcBGBfNDGw8B4pg8G1czxGFBZiUlxO7riFFQUb3ucx2iuO7bhPbot9U60SSzbLNZ1qcuL4FxvPo+D5qUXFQDGvZti0jgKv69sa6HAUK85yHWcGUcSNdGDafo3pJgqxFbH3Fs+QtbrWHzLwvhqhljZnL9sdY6+h/ROPTZgksjb30oSUonizggrEwGs7bdGMSYX2dn4c3iwpxY1d+BycbItbKbHeG0V7q92X0kt227RsD3eyFiOqmqdAazJAM7LPo9jVKOhuppEFiwnYAwJpcl3bC8q3MF8RYc0OUFIElS/BOb9f6QoLGxwZNORLzf5O7e/fEsuwsPMkkSrIytWeV4zq9UAkHapqFIVa8wo41gjn7kDvoDeQOfjnp8oj0Q2Ib0enx+k325W6HL7MCq8vFcbcc94OK7H6fAQC2Vm+FpmlYvSfOBzfFOJmUS9BnmhOdfxJtLxSTio7l/uwvma4BbGNoT5CgcR2HCCd+SI62iP/1j2HK0Fmxi48PpUZCsIp+EabjpmnmrBRr2SYLxDYrbuv1YKri9XbLNs3ytwpYOsQZiHCDoQN+b533bZkZ+GfP7shkYqIdK0ddEzQVQ4u64P+O6Y+9fr/tfKzXXYbKDbbClmx7kkUIU8BfI1FGMaMz74OKuTnZeLNIFxBF9JQO245h7Bs7ZnRQIYvi0jjAWbZF45rxlm2uuwPghRKuE7vsbUBTcNzecbFFIku0LuVLOMsfJTqIkzQV+/w+nD5oIE4dNDAqtunXwIgNprh81SLMYDYUzdiW0W0B9tbvxQQmE6YiSZBlxrITQKBoIbIHvA9IIfijdVMk/Ziayg9sVACKS5whFr/GBO9/7+fAivfwkjQUABNYnHG7YgkHeKFakSyJTSzYLdskyJKGV7sWYlFONv7eq4cwI3UAEVOskn2AJLteZxEx11tF1d2ILXxf2slbCjF1bZBMYVptqQU0FY9374qQLOGlbkXgv2nWeomFJ+PvUFhk2eatVYgN2mU5JraVVtej2eLuryoRfNpVxoIcUziPZ9kWVHiXZ5awxFu2/VTezK03nhuxZRs7utcgdzXjpFmv3fqsTIwryI+bIMGLdfjorubkiKwBi/udhD/WrYwtC4eaUB6sif2dIZlim08zB8luEzff5PAxesJqmHPeNdrSipB5HOskigGbuKBWlm2ZA9fkavw3SrG7kbJtRkjm2wtjC7+DaGpYthneBNWM5U6Vz4fDEYdYWgD80eMaoozIakmGis0ZAQwrKsR/enSHDA2BooUo6/Y3ZBSZ/TyfFHF81+1im9iy1mbZJpnttbtvhQYggp1OxjKSioiLG6qP+RZ+XpCPbZkZGNX3MCe2RVhBzDgdS7zN5dlZkJSQ68SsaB0b9iAsiOGpW7axO5h/VUcnsTIlgWVbXLsnYH3XQ/DllMTdrn7vIjy04CHsVUSeLzp3+L+2LRMlbRFRLQirUtvYhGW7Dgu/TyUZdqtnYcmaikixWS+2X+Jm3R6QFOEzGl/A1Gwfi2UFzmJbk0PIF6+4nQMAZAje6XDUUt06Yd0WOPX3qxzC6Hjl2neWtMr7ie2HNeWXAABkf/ywLETHhcQ2ot3RADzevStGFuQ7rI8/AGJjt3m2bEsSa8e4bY8mxmmWxxCQEv2si8oTDQBqmvjG9kxfsVkGcxVECQHYQ7Ad2rAk8THXmC1v8M9mytAbnC0H+Rmig1X1XGMUliQoTCeDnVnN5MQ2+xDWhktnRfE1Oa63J0iA5W8NEtMp+yY7CwFEuBlKzlrPwwPWkGlelwNadCZVU/FuYRc0yDKGFXWBZDljq3WTnlWXuZYWQcsazD8iSbzY5uIK4oOKQ35nc3wA+K68H3IW74aRPfAd+AaMZpbo55DBDi5cSwU0a+wTVeEs26yCjQjWTVo0YxwG8Hi3rpiUmyMURyMSeLdrSJADlVgR2Iknupsz3y1KEIpqWLvJ5r4ORLg4cFJUMLVfkZAkQWYGOYoEZPWeDH/edmQUmuKEYdkWCocslm2AEvIW3FcGc42irqw/lvRvRWxQ4BdbN2qWQNkVPh+KC5wnM6xCaa2cARkqKhnXjy5SI6z4ofBWdnK8dAd2jHMJK5ow4Pnv/Qv4GFjMujpWbIvGbGO/m6zowQpakgZMzfgPMhAWuM25CEge4xHFjiv5Ym6kj01cj6nreWFmXv1OjCrKxJoss25qXDdSxurLKrZB4lxHfyav4dYb3xmRoG+Vg7h1ju9O9FhWl20AowryUZ6VmJtOlqbhMx9v+RlePBSf7jETOgUY1x/DCh1wt0DxWwag/524FkEX9zg3WIuzFsE3T7eKZ0Ubuxsp+zyvzxHH0ApIYss2JWqx9cVq3To93uCbZVBUQNafAwWVTfakLD6oMUHH+Dur92TBdmHHb+qyLP67FImWY81iaX8OxVb+djRkD/gIv+0h7u8CqqsbqdXiM1ZPpi0PsffQaPOVMLoz35wCVYXmkPDGDYX5joQF1rybMzN40Yqpr1FDkRupF4u15d0OIavPl3G3W6DUYOruqSjRxjpuc7q8M245zbL4IZmYb8bQMlyBN++vxh/eWWrr+zZrGSit82YRDk3lkmuEmf6aWx/gs4ynsTLzr7ZwCXYPE9Gkjfd3cIzFaq++lSKUFVHMthPkkmgs6rZU2wzLttYfQ7V21jUN+6qaWzVGZM+9vUMWEW0DiW1EypkUJ0vn6sxMTMjPw8vdioTrW3L2IqvPWEAWZ2c6VdrF/d3WHyNrA6ZpWptny7HCdrdUALsC/mizqeEy3zJP4gxLQHDJRJ2fhpYQJuTl4h89uiEE3uJGddnXWh22M2Z1I3UaHBkNjvVaf716D2SmQ1fh86E+g3lWYus05CCIr/JysTQrEz6oKK+LN6Byu6/e77nIjVSVzTpPzM9DQIpws+Uqd23j31BZNjtaO9R++g+m47YhMwM1WbxowVbr1JYgfJLKZ0wsZ9x9Yb/2urUbUwcXuUK34nI/h4gE+Cximz93F5Bnpjs3ykjEso1Ft2zTOMs2qzWDcD+2TtFn6sxBXaFCt9BYnJ2FCQV5+E/P7sL6WC04IxIQGDwUs3O3YBnjVquqChRFie4jR/91hhVEDZcnUQe6ReJj7rG3wsd8Wyujr8SCrWUWyzYJ4aZKeCEMXYQ94xj7Nz0mLATEWbWs1lHDiwoxtVe5cFsACFnONSRp6A3+ORcN7uximy+h54gtN6yI3UhVTeIEKFZcyGCEF8O1mQ83aP6xn8no1kuJ4CR5D86T1zsmSBCKNx7dSGPPqOyLufr6oNre/bKw3VowrmUbl8yDXxeReDf/aRa3PTNmG3+MTRkZ2JBpWphZ23/HGhnZoC1i0pf5uXihWxE2FtjPz41MTcNumS/LagHjY+65TzPvk1v/wTo9sWhnOVpcA/DzPOr/GF9lPIxMhDgL0SaBkCBD4yaQFEHMNvaKju0GWMU2CbBYKJptiGHZ9vGSEr38BF633tEMuzJU5J/4Xzyw/GqM3DjSVn+V+9vBvU5yjtlmFVgiUYvLDMskgE2aZ66T4tYHlTT487Y7r/Y1Q8nY5fhEyA5WvhHm2Qtzlm2mG6kc5p8/KHY3UpYiyW49w1rdGWIbK+Lc0Lc37mQs1yWBOCgU2+K4bXd0/NG21frtHa1cDCM9WG7QHAsJ++iayr0TXD85Th+wi9SEUyReDPMSsy0RsW17Wa3nbZNBZNlmJEhoD4OGXkxivcRlaB37GehLvIjJTrD3sa2TRRDtA4ltRMr5Kt9dbBN1+lgOD5yMQOFqZHafJVz/emAY97cEb9ZwiTQyLNbGVGvzWRc7bMP7/UEDcUX/vhhe2AUyNJwk7/EkzvDl2REN2HxQ8XiPbpiZl4vx+XkWizQTkRspCztjZ02Q4NQkGWX4LQM6n8ZbeEQkYFmfYmZH/eyyEcT2DD8e7tENt/XpBQkapqx3D2brdhVlIG6MIlE5sqY/LyojfCzMyUYAEe6as+5DXo4SYLYyrzc/YG/J4MVFVlhrlnWBhF0W4kRRyebiqc+2spZtzl0Uny2fm51EuiNsVsJEuumGsMG6IXmxbGPP3LhPkhrB/T2747xj+mN6TkFsfYPgm6bYLNvAWY7FttNMsc14j91EIMVSpiypwp58UJI4izf2nWPfz/31ZtB2azbSeA7qf6mpi9YJWFFUgcoMu2WBDEUvxVFsS2zQZb13LbKGZwPvcd8mUTbSDERM65RogoREh3tGNsmIqtnctABghfY9PgYWsy5bNq0ENWiApvIZmx1uufHtLEAjF8wcYMUbe3ukehTbDHFQhelG6oNqaw8kgeCjxnk+WMs2q4uWNRtp2BIxyTg+a13bIkm4tl9v/KNXD7ZitnJFSIbAbLH4i2UXTBA/NGRabpq1LJkRtTXJFIMkKHi1qAvmZ9vfCdk6AJUU1LgbCHOi/s3+6fi+vAuXyss56yzRN29KQQb3jqsCyza2ffh1jQqhZRtznMt8jNWs4UZqlJ9AP8UokX22X17Fxy3ygU9N4DTxKiHi+E3NtzzXEUmCDwoyLF8Hn/XbzTxHbr3BeJPB2QM+gL//cHzh0G9mQwHw9WQt2+xuxlAjnNgflgCoYeE9ML6EXWC3CGYt2+pD9Zi0c5LQwi1WX8aa2jh+gPkeD4hZLLbvhHUqOXXQQHzcQz9PthXZqfbBW5HfIDczOmnBJOsStjVrx3BtBPvtcrNsM+jJiEV6XayGAZYdJA2+nF3wSluPc0QJEoxQJW0rTmg2q8BpjJFIScAei9ipNVUdato6yzZV+BsA/Pnr4cuJb6VJdCxIbCM6LFKgRrj8OPkQ93cP1EBL1LTLIxrscRD0jm07i22C03u7qEusbonWhu14/igacF3UsLKDoWe7d+U6DGwZ/SWriwc/TOditkkS1xI5zeCZ8W2sg74IJwpYB1eGQJSJMPYHzAGc7sbj3sGzDma5chO4yuz9khE9B4sVBDf4BzhrJy9HYgdSxnlpceI0sR3cZkmGDyp6SWbAXE5sg71DrMDiRiroQs5UfhRdF39oVQ/nhBRWZM6iKwHLNki2BAmexDaBG+m6PRWYm6vHHptcYN6vWkH2XsUSTdFpsKdqCtSo2GZ0Md1EIFY0UyyCBUvYIraxW7H30IgT54PCZ9KU4lsQHhcdOEUkCd92r0SVfw52cR1VFbf3LcB1fXtBDTi4kcreRCGDDVn8M9MsyRgkHeLeGZHYplu2Rc8vatmWyHMEWCzbQrwViAIgJAedLdskU2xTNA17D9e7ukMaGBZhWVLYZuVlCACi75o1w60Txj0Pq1LMbFX0rQwcXG3bN54baZAZlNvjI/Hti03ci14P1mpK5AppleydrFZjYpvlugSSdNFUIcH6RJda3OZ9sulOpsDMZlpesB8fFHbB33r3QDxyBw1DME5PXREEOApIfEILp3hUGmfZpthjtjHrc1VVGErBmkkWUgRSoBIKc22DmluOYTuGG7+by60MlcvgWOYXn6PfxbLNno1U394aN9Ju2cZcN8OaRfgouT9fviw93uonDmFVnMQ2NnRGOGhaZcYmNpUQ186FJAlQ+GzCBsa5ir4jsmIKcC+ueBH/Wfgfp1MBAAQku0eK1UoQaF/Ltrborc8vUAFmUqKsxzm4KPQyqlAASPoz2SVo3lMngwDFeo+M5R7kmv8GxnB/x/MwATRkdp9tWypid2Vj/IQLrcRVbGvjIZZVbKtjviNGFuseEfOLdV8v8bfa2stVNL3sIX7n+IEiZKj4IuNRDAsM5fpn3O9AJbL7f4KcY95NqGwi/ZDYRqQcURMRBvBelwJszuBnDBIbZom53j/bU2Pqy3QOxuuEBkEHRGt/095myWn2JCqyJFge69JjWISIOlrW7jEbx4o95uW+JZZ68UMgdqAVhsSJUU7x6IyBpbWT61P52FK2AXO0EydBxQddTOsjGSrija1dZ6glJa6lT6xObDw7DRgolcM6KNQDtpvndiaTZdJLJibWss14HjcdqIkt6xMRvF0WyzYZGrrL1bFloSzzeqkAZJm/9orFsk2S7R1mI8OqX1KEbgIsVXC3ggXM74mcrGVbbEY/MTfSECe26Ud0ErZE5ekx2+JbcEbUSMx6QIWEcq3QVQRiB9YKjLhd9u3DErj4OU4JTcKa6ToIzrJNinudjfhSzUx9m2VTcJD89diSFcCmzEzUO4htLQFvceGcaJL1BAnsYCZTMLjzSxHzexYV2xIdSsTuf/0h27q7evXAnYMUHMpiRDVm/YLupqgdVhXc88lq7hlzirwZjglgdtdOdkJic0aAs5Ty+o4YYkpIk2Ix2yTWsi2a2CJbcM7x3EhDjNhmjbXHBqK/0TcDwzLe4Nab8c14t2krVmtRJyE9tl0CLpluKLC7QbHxwwBG4IP+Phrn1JTp7LKaKgcqCRoXmN7qxhs7HiuwR7Pk8vVhvmGyeKKR7SfsUXsi55gRyDv+Jazb9BHw+Z/QPVKOTCmcUIZBo0S3SS6fpY1/pZuDYCUpjt9U67fbmMDYVFCJf/boFpPcbF8LZmLL+OUXVDWj2wLH+rPUCyZsAGfrcdXBIj32jighTi4MSxKgisW2mBWp4IuY0WR6A6wsW2lbb0UWxA/lMtTC/J61BZKPt867u1cPnDZoILYLrJVajxab8GDFsUj01pTlmpPQK5hJokM+H+7r2R0rszK5HjafICH+0XuhmvvbF2ck8P/sfXecJFW59nOqqrunJ6ed3dkcSZtgyTlHyUjGgBLUqwQTqKhXRQzXAEY+UVCumEXEgIooZuEiAioZlg0zOxsnh+6uqvP9Uek9p06l7l5Amef3g52urq46VXXqhOc87/MeoT0Cedq/Z1jMCAA48lP373SLHiXZ5oaR7mwkaee+39IkvCty4poA4oN6YtMILtF/HntmFVay57FGexYn66IP4FgxGDdoueHYMk/j5Ytpsm0aLwq+1dqCmzrbce6cXmH7L5rUGeqyIO34rdDzq8zHdsi28ODzxTat3B5hTKqB46fWAXioIb1CCFCvmqk6uHbJaFz2jvMwKYUAMXBhxU72bKPnj5oUepMseVC2YtvP4zNZMRNMH4e59It4jNwXZyAZ/9ziJwN26spGjWQ1cBjMEhQCp4+OhRIkzCHk2L8Kyc8zz0nyB/fYTw8EiUNUK4NUgTWqaWCwhGdT0oPnaDKGRaxP+L0FJoRthRQNEDPuFRPINg6A22nCuLjwzDN5toEB46LKIiklvbyPoZiM6OR4Uwoy3AJDWa8In5Xl4zYsywvlYzir/EH8gy9ILB/gDUzVk5YyY+CEDBWUX+4kvMRzKLnKNidcO5uyzVMFjZN6RUPGQXwFTV1dp8tGSjPpCHhEH62J8qo14Cik5jDXg86ccsJIU1ajgieI8+5iKUyW/MkdjJf0ZAVmxbKgwRbqGI8wOPT2saGFFx5IvTx3Ti/eNmuGP6lM+454CpmyzXxFhgaSXTbvmIM3Kt7lBzoHQ9soaDKPUIIExlz1q40P574R+q13fqrmU6mzZAVSItkmkUlp2gIVLIZQnNagTJjoJEEJgnd1Z4wf9ObHke8WFx6psi3qOimZZtk2Hhvvw3tmdGGLSxxyYcFAXW6qPtSZDb24AQDwh0c+CTzxE7xj7H8yX49FSOYoaLDRQEiv4ahxEitFHkUm2ypwSPVfzdyCXzQ34UeuOX6YbCNtq3sIXRFhkWv/W2T5KcYjFlS1CLJNULYJJI2nbDOFZ24DeGx9MHEXzkFI+/WGIdRjO+P7oSm8lnNSNtIn8jn8qD0hNrpKNC66SfjskSRvjVAm1QQWtJMWCRk1bacelY3g2d3WHpDCx86fg/uaGnFx78zoMNIUg80cs7A3e8r/HBYGiMc4Uf8r5EFsSwznubOVbUrPNnhhpDtvjlWY+TNg5i+EbXKb/GGSxCoOIWWbzbG7ti5y/w8at+M47f9C20WftuC+jzcEBJtMJBvN/0Ljgi+BGUOpyjqNlw7TZNsrBVWGStQLTwqGxgHGI1bzskCVjbReq2YcwHMN4uDc5vZO7Qhu7x/AB7aJg6KoCYTmhrTeSbIlpcHTRGH4cEMDTp7biyk9edK7lRPlEynSBtYh7MfAhWmhHJ4okHYR1+ZNLOXQqY6Nv419vrnWfyHX+UcgNyJ9YydOcqIGvABwlv47ZHMZC+CUN/htu2Ujz0zBjy67f1QwkPOui94X1bXKBKjFbAzxgPCucDqxCk/YTSZOzlShIMEk2UpWrkoEj3IXhAd9mZVt5XFhopgmjJSeQyPXFByXhn+Ef//bYjMe6wrIyigi17It2L6yTcMGPhN/54sTy+eV0XDd1WRUGBNUK5RYKhg7AABb0QbTtWTXYAv+afJ7qoJHzdJJAnUJZCSMrpLLtiCQhAUt853zuX0IfR4NEWGklxjuivNInxNGmpI9b7K8ib97nz11VKEt9nfRocM2zPygEHZoRpBtJmOudpGH3gOfvCG/fd4NnU/7juwwnGOUbQhkm9+W5B31aa0q9FAYKXNImgO0J5T7q5RtKsJIfq+iVavucXj1bYn4OxZqY+UECTTTbpDMRE3K1IrGebejMOPX+INrR8DAxTDSJBISwAZzDBc+/y38tLkJH+zuBCC2zo6aSq6nXMhGSutog/uezLM2uGVKD+8oobHWLUdjHtvsn+uo8cnQb2QwYzTyXQyFkTIGndR2L6P2a/VgsZYDQT2yA820UcNzjVIyqZRiAPCHVjWp77VpllkSxlYmY9iwdTgUrQAE93jYMPGqebNx2IK5/ndZ3w+V/Qv1bOMAzpnTiwebdg7ZpoXGfQ6WVKq1wAd6VFECAGgY6QTZ5f7mcey9cJ6w55qpEoY1hvNnzxS200U40TM3Xdl+WPgQVjMnoVQ4G6mIGWwIVkk8fyUmi9VLEUZqusq2nVM7HDCtDHQ+iG11mH9OKKxQdmfrI/e/2PglvpL/bLhMAtkW8UyktqA473+hN65Hw5zvpCztNF4qTJNt03hJUf8hZ33BAZSkzsi0TSxh2UNS02KvUhl5qa2NHCi7K0BZ7+OPJXJuXS6HR7v7IvYOsIkHpNofi0VMMIYvtbfheUmcxAD0I9h3kLjbWIwJE6SowZxHbOiw8cdiA940cwYGdB09uQ0pTNUV3iMpPMSOmz8n8rt99Kciv4tDzgs7Fry2ALAKLCMYGKoGHnEoEUWQyiidAShY8UOWXbX1GGaBPJ6u/1ssbGEsK9tUCkO6Sp7kiWUzJCadYAiHb6YJsfDguaGJyrYUv6N+WzGeNgBQUgzaNuXFk0Rdpc0t/Pwx593zvCfTmkdbzCtTuO5sMgyM6cFxKFHhBYhWuJN3EvDCSGloFBPCQ1VQ+V1NEMKaqjJKRn3JtiZXceV5rdA7VkAZP2luxE+aAyLZgIWvt7Tjv7s7Ybb04gE+FamEkeG1V95z8chR6EbEL+Kx3RrG2sU/EibDcZMeE+owUlX4l1dv0yrbKhrHObNn4caBXwZkG7PRXyjjsx1tGHfJtqyZW0PnCXljMWxv3oitMx5Q1nZVNlLVeyu3QImkki23JXVUtklhpFwTzeI1l6yiZJs8ja+Vh9ume+Q5F7JARlINpC/9UznIAvzHxiIqECf9w4YVyh4NiO0zVTs3uPfH4M62pOzUFN5zCU08+x7C53Jf9L+jt+uxCIU/0yqRZPGU1HabDBghapIx951Yom0Cg40/Fxtw2Pw5uK9g4KeP9WPb6ITfPtRCoka1RLEqfhcV0uZ670jFFtVkFpxwTpXq12s/ni+G71JWuoVmXd5rylG50fqxk+yVE7G0nJ1sm+snc1BDg+W3UyUyqP1R1xC41K4cMjGJr7e14p9S1AIdy2RVtnnYV3vKLU/8C7ZKew7myAph20jMEHFnJrFgnEdkI3Xa/k5r53v6eX3aRt6t/D5Nc3WXdYjwebX2PJZo8YnYkhBlVxK5f+MLNZ1vGjsf1Y0UAZx55pmZf3PzzTejp6cnecdp/FsjqUurd1/LEG4U6xWmUVH4B1x33y14fcuDuKYuZxBxxLjj9yNnJIsiB+opt07KLAeIISV/bCxif2/1ruM38p4ok7UpOpE0GRNW86LOariTgP21J/BmN7X8+bNnYZuhA3gstpxMMaq3cqPQKh2YZAzfbm3GkROT0G0Nlpae2Mg0W3BR9JWQVMXG8MG5Jjbm78JTG3PYtVIJEaxJuH3WMN75gvO3N+Cjz7DJ5mixckJYmwyHUCOKLxpShPBE1GJiHdCjVslZBTrMRFKMg/uTYIPzyIlvWNmWvhWxGXOykdKwmxS/p3ct764oyirLLIgq87bxCQwM5YECCUlIWc9sz3Q94nIebgwmYSWBbPPKpMP0yTZLMLy3WJg8kKEaQFC1ssECQrhs1NczZ6LitJV/cMOEaF2b0k28d4YzgF4+No7F2A4dFfyyZweAZtgz5uFHU+uBCFNyGV5d8Npa7mX6ZNWtv6uebjnGEdoLuQwlSFCQ7OtzBi6Z1YOTxyLMeCQ4Cpk8nhj5G15vLMHu7vH+Z94ogDaUbAvXov7KtgpjeGzOwwCAeytFHD8hZk7WfCIxXtkmT2qj4DsQSmGkWdoS+Xee5tDDkETc2CT5hzd57sCoQMqUGPO9D+sB5v/LBe/CyCytMRO7987ocvsH57e/aWoEg8IAn9QOWkc9ss1TNmUhWrxSyfcYAHrdpD4aiwpsFaGx6Gyk4fMyMHLfxsgz1WHjcncs8vbuFox+6+9Y3K6ju9MlBmsh26QLGcrPQnt5QFCFRUH0+nI+VCyJbGMMOSZaV1icQWeBinVYMVbISrLT8NYWNxutwURl20sBGsaZFl7rPhKhgNpbfwq6q3A0efzCDWfiQpQH2qKXqe9bhtvu3dMkJZqqek7EFHtnKtt0ALqiMlTAsHHePZisMkt0NZjLtgEIRweleZ0rddLg0XutSigCoKr5xzReHqha2XbXXXchn8+jra0t1X8/+9nPMDY2lnzgafzbQ6XyEL5PPThOD1nbVS+y7cfNTSHT0XuefBJcq7/Z6hXrZ+BzWxxPIXkSG7XKxWDW7Vrl61QdNe2ZGERyoyxVCSqXp+qOMR4o4LzO50z9D/62bUa6ji3fFjbyHW/uAwPwhY42fLazA6fOnR1pSq6C5QYsx2GeIlTB9+qRiIyN7ljiHld9k2VwBYgDgTXas3i38R1UCHE4w7KEzypYEMOwyrJnl7R/BWKGTdmc3ClXBU1LP47fzH84kdTaQSp6VDIFxsMrfWlDLAD3GrgtKNu8+heXidBiwFZdw53NTYDrOaPXkEEtKoz0jgfW+e9woL1MN8h1QtPUYaQy6LPwyGgT0cq2KW4khtuqSIIRPfiNRpQ9lp6vOmRPhYLkAUdJkzEyaZx0B8M68Q360dSGTOfy6ltAtrlhvzFh51kRp2yrMIYeNoQz95olbFdlbP5iRzseKDbg/TPSec5Q3GRtDh3vCdf3r1oFWBRoe6dq1717bZB3LovaIwSvbltiG5213fWgUrbJlgimJoaRAsBstl2YZCapR7PCq5EMwEwWeOpFkm0xbdovmptSJTUQs8oGfwdkm0PGpVnk8OCrxRRtoRf6rsNO1Re0sLHUbc+3W1vASbjWlBacQFWWTUPj/tZalG10HPcPeyGmdGfyn9fCSjQZtEaXosg2OB5+1F/Pa/u9d21EkeEhK91iK6wxci8Dsq0arHP9Lycj5jQaSXJlJjz7KBOTURL1QRfVZZLTQpyQgYEZQ/hTa0mhWwzwuY52NMz6qViumH5nZ9rl5Lg6VPT5fA6TTbUpw+qFNG0GA0cZwDO5XE1360IjyBIbnbd554b1TmPnoWplGwB87nOfS61U+8EPflDLqabxbw7aCH2xPd7nxsMx+t8wri2v6nz1Gr4+l89hWVleWeWwqlQ0xOFJazEYHDPdsLJNfUWVpnV4OD9Zl+uVQ5RsINQZRpl4y1igDYCj3f8sK/PoSizt0JpJ2nhvYPtN6xgAf091Xh9GOMOhxh0lwu0ke1na6wGAtbn45rJo27izbwD7Sl4dtiuLF4yoyffes1WtembBW4y7cSdW+581AGYS2cbElWiqbDPBQhMtU1K2ae5E7aryW3CW/nscqv8TQ4VRaMY4Bg2gPB5fMz/fHYSwFm2uXGVlECdwXtnSwmQM4FxQ/XkkUoHzyHfLBsOFs2dhk2HgDcY4MJBd3k8R9UvGAg9Ib/KTFFpLy6hD5aMUBn3nAiWkEwgDOO8bDc8us+R1bVX2PUq20Ux6plZfsu2o+UfhqUEnfOZ7Lc3CpJv6HE0yHeCAHuF9lAbeO6IxG0bLP3Dj88/hSwD+XLHxtd4evHv7UNXH9iAvSFBUmPN+/6nr1cJ2lbKtFhyot4SOZzMdo4zhM53tdTmHBzljs4xA2RYfRpoWzPWHrFQmQZfKqg4jBUMl4b5bJEHJFIKsv3TaPaWxus6hAhWm7So2HESSigltTZKyiUGcHJqkDWmw041jVPDqh6YYidgusaHDTqVM3DLzr9gUkaBFxvP5HMaI1+Y6eyYA5z62YBKys60OO8jonqBuigO9QhMGyswpbz6WPnFASd4pj2yzy8Kw1WSOAvF+e0+c6maPd/obi7xjioiATFchEsxem0zVedsT1NL/VmAcmqtsKyeSbWql1POYCcBRasrexhQXzJ6JCabhR32blBP3xkVfwLeNSTQMtePtg0MAnHacvt13Kbydo5+vaFswUOfnpkOdPTULIV8r/lhswFkxCvBhxTU32LYQeq6B44qZM/CnxiJu2LoNp4xNOH7HALJIMo7XAoFA1EgpbWbjabz8UHXP8Nvf/hadnZ2p97/nnnswZ060H9I0/rPxQEOwevN0IZ082GYct+Y/lWrfnaVs+25ri9KnabyWUX8EaCpquYmPOt2OeT/Ht2aOJhJBMnYvhQdwFakL5wjMtn2kJKc4RFJGNpAXlG0Rx/AGgBVe05qAj0KlGKoXWRainXCl6OvvtGwUOAeTiFILXmhl2FcJCCYVO1L6R8XhH80BWemEgSYp20S1XkmYZIdJLYuJyjbP7+dxvgAbuLPwQp/WUIZrauTqsjKEwzezKNuumDkDV4z1Y6ISzowYpaYDnMnJJsO5mocbgolytYgKd2MIyDa/HUupoLPgZP9LA6o49t4DExosohKhCRVKMBJbUaVnG1GCMBpGqhl1VUc1GoEf20e6O4W6SsObp5inbKuBbHP/1cBRnHsH/jLxV/ykuQlvn1XAww0NeENv7fYYpZhb401AGLexSdfxs6ZG59n7ZFt9aMwiM9zj0bZKw6e6OhJDirOCEi/9hoET5/biW2Qy6CvbEsJI04LBQuOCm3GC9bxAX1Rrm+5MqNRvSJvrN0SVxWNwxj0FVIS+YJvs81ZleTw0u0kJ8pI6InoSWzvTlyPt1RRhTmkLYgPoM9L35UEbH6e8Sadss/RsT3lLMZiAT1aCd7uNhaNzNLKMo9dAttHLqEBHxZ2qN7NJ9Q8i8MfGoqOCkhScFhgKKMPkTn2731rtL7Robn1UjZuzZiO1iKrYU2obAhn74pEpFLspxrwe5MXttPBsHD7Z2Y73d74AaNHP6paIMFYhjFRKaEHxeKGAF/I5f0xCwcGgGU7dvK291ffeTHNVUe+PVtgkLLpsSRlVkhY658ow0tE6jIPT4p7mpsy/mUeSZXA4/ZSXifwO15bi/Nkzcfy82Slo8gB0DmtEKNv0wlb/75nYkeHo03ipUXWtPvzww2Fk6DgPOeQQFAr1NUiexr8P0ob/9ZKGrC914x7ORlovsg1Qr76U0sRWZMR2O1D8yS9m0gBlS4Z3EQA6FOajZWlAyiGGuHRaFhZp6RJDOKQM8ciSik9DiaNWzv2JZJ18CowaBsIAcEd+SUgpRom1vpzhrPJLxbUZwwK2OVLZ9lhDHpfNmoEnUpLQcRgygvfHBpLDSJk42KoIZWShgViZMcmzzZ1UwvAH7pQo2pFhgq4aeMnn8ZA1nOy3LRVUCJnn1ce4pBQ0nUaX+77sDMNgzmx/suOdM3OChJSEmwevfbSgw+KBso2GAFWgJ05kVXTcOHmfNY16Rum4u4rBbRRKFbFulQjJZ5NXfcqdeBhRPigp4CtXyHPZquv+OSfqkNUsjvj3SKZZzQZeNW82ru3pxndbmkkYaX3Itq+bW3B1TzdoC2UzDX8li2X1Al2A+Xp7KzbmcvhYd7CA65HIorKtFmmbBb1xPbYwC4+TtrbaY5os2seuzSW8yhol+J064vjxBNf0+Y52XN/VgR+770atvZ1XExskDVbkddbcv3JB2VYhZBsdl327tTnTRDpof8Pl875xiK6dS95YAIa482zaIKtgLLDG530SkdWibCN9kcV1vz/tJqHAaVBmDO+d0YWL9W3Cdos53qO0r/HunUeqKDOYZzq7+rc5rfqFjnohzr6m2qfGmZON9H/bWrHNqCDf8UDkvlsMA79qagxtb9VG/b/FBAlqjGjh69iFSbYIvs1N8rsd3cfrQtsbNz5LwimjYfUYA1DmL54vWxKyp5kD1hmG8M78q1AAh0OMbjUMPJ3Sd64TI2gkC5PyQokKTSzsnTmNly/qQiEfddRR+NCHPhTaPjg4iKOOOqoep5jGfyj+FUMw0Mav+mlS7VAp2x5ju9X9PH+2gyxBukQClOFk/fxGSkPvJKjIO0tS09hMDBPbtVxObSbNAYEAkENYSqmUbfUmOGzI4VZZ5hmPtA/jsXZxNUlFJcnODRaA63J3CCQVJRj/WSjgL8ViJmIqCrtOkXASLRwGKsOWlG20i7eA0ESmAlGx6Hm2VdzgKABCKOKODCSEitQGnAmAIZFJWZRtHujRvRVkTwWiAlUaddmOL5oqIUStYODEsy1bGKkFVl1oq/uMTGhCggT6bEtMTxyAqsJIhRALQnCt7fsTPtqdXg2fhP/5xVrhM13xpwqBsj/Mqb4dsVmwik23vVj4QUsz3jRzBrrbggnZX4oNZEGiPvVyAy/h102N6GvZ7G+zmIatdVY1AMDGiAWiJ20nDN97J2j9ruUqOSF+p2IUJGlhMQYzos1qtzyyjSw4ufXQUbYF2x8sNuC7rS24rgqPPRW866GTt782FHB9xLu3RV4dqgLCMyK3k7ZMH+/K9u4/WsjjE53tQkZlD57nZFrPtlpgM45R7pAkd75uV+G74vyvwl7wLb/Nq5eyzYQG030spSrcfn7e3IQBqQ8xwZy654K7mmoAyjBSb0tWZRtF4Lv3MifbqnwFhlpeENXuCe2waozXzYb8vwV7lYjyqhTG5xn3ixt0h2xL8+SiRg+c68JCdy0CBtVvTcaw1e6o+pj1Rtqro/v9q5AXrm1upSLcz7RvzsMNbxI+51L05/LY7E+Ft2EJ64vYexovNepCtt1///34whe+gNNPPx3j4wGDXS6X8bvf/a4ep5jGfyjulDwEuOLv+xqL2HvhPPykObwqFOy785RtKlP87ZP1IYCowbhNBlVyd7rd0PHljjZ8qitd59QUQyIAav+WDU1iiAQHE4ijSgbaywLQSkIuZGVbRVC2qY9Rbz8ixmys0Z4RtnVUagtRpYO0E1zvBzm0zr9nZPC7s2xONXKONB5wJos2yLVYuJ5UJGWbdyUVbvgDd5o0YTQD2Ra1J0ftyjZADmt2fl/gHAVLfWaaVbOBc+RaH8HwrJ3QnzFFGGlGZVtmQtpXN2jChEtIasJTeLapBtH0NGTQODK6MVsZk2BHO6LQiZX3rLUaklsATpvGhMnoi8e23dbeij81FnFb36+F7UH4V31blIoeBMA8aQ7ulCRov4xQOd7TksP7ujthu+98UjZSD/ICVQiEbKOG59U6QlhIVrYJqmFGyDbyvPafDBQK9aAkvKukY6JLe2dG7v98ofZpQD4iTLBERjJZM67e39SIb7a14htd4ns+rGn+e6iB19UHUgWbATvgLnJuF8cPRpNI+OcjrBDSgD4FDoayy1TFJbDIAosBeVSggeO3jUV8feao78PlLSgzBdlWm7LNDSOtQVWchHNGRpN3gpjoQka1Y8xyflSwccjFKNuiQEm1UgplW6oxleaMa9PYpESS1Vzz68UEL9SUc1P12ynGoL2IfagKNoCLemfifd2dVdUAHeI7c8TEpNRHJR+1HeH6m0bZZkqJU+aw7bjeuC3xd9N4aVC34Ohf//rXGBgYwAEHHIAXXnihXoedxisMKrLtqpkzwBnDe2d0AwCeyOfwXC7sL0ZRT7KtFOopeN2OTwegnPSM1a60eRhP6JDTKNRsiMqVMguHFUb+lomEiKweED3b1Ac9Rf8zjNZHMG5k8yyJwkjTJpyn/7Yux/JA1VizTGdYKpNt3mBKUJDVwbek1bJgAnikkPcnWDScbHuKkB0b0WTboK6H6snT+byQaMAj1kwEYS/0bYwb4MpQqaQAZ8DoKSemuDPxqlXZ5g2IdA7kbfUwkoZQcwANc76L8fYns584CSwwIvbfhQzKNg0W9MZ1GU/qPjcSrqQxW0oikSKMVDGBpoNNSnDpDfVTtQEA59nItlonrSZjgsr5xcgLVpQWTdZNbBE+ry9OoKH3u4ARbfIsg5I7UZD7tyjV6c7ArT0m7m5pxhONbnuakmyL818EnCzJHrx3+7mcgYerDJG1wCKTDihtGjyCX/Jso0+4pjBZF17fcpT2dwBiWPfOAEO0+pCqP6vt8zbk5LGDQ45ca3wLZ+l/qCr8KwtscGziruqwFPZsoxjmbbHfx0Ee85XdxreWDNgUlqtsY+D4n852PNJSxod7nMVuj2waIIEm321txoW9M2tKaOD1H/JiWb3AOMccMx1FvTPCSDUrL1ybZoyi0PPTmF+EQUsvJEiIKK8qQ/g3zaPFDRmUbdELl05/99OmRpw1axGGa7BK0AB8css2XNoSRASZjO2URZws+HtDAY82FHB3S3PqHo7OV3Kch4haYbExxfHO0v8Q2pbmfZlq+1f4d3VqK6ZRf9SNbOvt7cXvfvc7rFy5Evvuuy/uv//+eh16Gq8gCGSboqUaZQznzOnF6XNnx052VI2cbUYr4+Kgy6uVjKOih7NdVgNxNZMmSNi5vVBkZjICuQRzTTO1msOWMlmWpd8Jnm0Rx3i2dTuKc76Dby6qD8GxqfMZlKT8QFmykapAh6ErS07YTsizTXGueigYlpfLuLGzHa+ZPcsPz6Nk29YUPn4mGOyIujasaSGy5abOdgwWgvAk7xmLnm3B+zKVYYIVtbpsg/sqx7L7/NKGM1OUiX+dT7aBR4b+iHV0Z07oaDbSbGSbzYCnGqeg5bdnO6U7KLNIggQDttBwVpAcRqqKQPMmAzZnAsE1tODo8M61ICZkSyTbXMVljfSYn+jExYsRRtoikW3NUkbFW+dsQ67979g+4yGkwRHjE7h2e7IHFJfq34tnWR2gpAWhgh5kFdrScrC6r0rWIYAo27w6esXMGVWXT5VAxsM8BQGwzV1NKDCRbJPVLLX2/F7btpT1ocSAA6Ts2PVGHhXBs80SFtLqj+dzORT0IbzJ+Cn2zz1ctxDnKGWkzbgfag8r3vKc15DMidakAqug7N68evkxmgzYlLfwl7kPYkPO6UdfyAfJcQDg4cbgTf94VyceayjgKxHG/mng9Wc7K4yUAWhNiOLwELcAHfXNSTGZKgGgeXJGKGlSvuuPqcoDOBnY6RgrjbJNRRqOQprbuJ5taYa30f0Yhw6O9/R0Y2PjBL7QUT2RzDjHieMTuKJtpVjMl1jZphJ3ZEGR85DNUD0W0lNZg7y0t24aGVGXMRTzVuwKBXzrW9/ClVdeiRNOOAFf+tKX6nH4abxCoWr8holaZ8JTLKRc26wMHlBVOWQSIN/xAB5bendVx6JgXCw358GgcWdPbuJW+TxwAN9oCzziGm079bDPhhhCIk+S6OrcFDOw3g5Peh6pQ8IAGZ73SoDapjYa5/hu3yZ8YNt2HDvhKPBkzzabOToR0Q+r9p7yL8UivtHmDIR/6IZjs4xG+TaLHmxZjCkzX1F4A8IySBgpKNmWria/Zngk0oCXKts8/5o0ZLEM1XXmOGDYyWTbeAaFXmawsGdbWmJoXS6HW2ePVHHOsCJRhy2oL8tM5VYpQhVGOqpp+HlTIwY1TbiOR7bFhxLF+eepkZZsc/6th7KNTqxejEV5mWxbkVNPeCaa0oXo6ki3kCOTbYkhmjsB3jnzRJEmk1vLysF3SUkqODFp9/qj9blodWQSTKJsowrEmwe2oMEO36+SW7wCysJ7Jkyw66Fsc/8d4J34WVP9EpJEwQAXPIboW1YPP7W5FfG9vaR3Jg5fMBcAcPCCefhpnZKuNMSQbd6CBKz4NoyO4bKCjjP31570yba6hZGC4aMz89jROORvC8iw6LZ3sgZFk/d+6HVMkFCQ2sRWq3ZKdyziGrsUClUKDWGyJQs4xIW8uGykHlRh76Ey6O64LQXbFj2W4kL//fcakuRoAB6xF0NmiLQ0ca4vEtIWhSbVarRtXGDcFxwDTFAnV9trGinqlNxcfbO1Bfe2vfTeiNNQoy5zei499euuuw533HEHPv3pT9fj8NP4N8QOTcM3W1swmKKjjlpdUA2EaaiZ10EyAK1MXIFSh3lWNxBal69fh3Dp0LD/d/jOEGVbHeY2lw0OY1FJ/d2zKbLk/K2hgO+RhAycsdRmuc6qf3A9PCGMdL62FTKaFROWWnGPta/wudZwYAPAHuUKzh4d94cRKoWFDQgKsizhlVmQdeCnyjhKkTSR8eoDJW3oRH0y5XW22nYkCeAp22w4Cjqv3PWAzjl0W00o0mcUNRivD4IwUp9+z0iaZoX3jBxlmxtGKnm2VaAnqrd0jtCI8pGGAq7p6cZVs7qFieJT2+K9dbJ6OnErOrs5VVRW/EWZ2u5pBYBNw2JfBP6pSWoDK2bQoNM21dbTeSJpgJiqNQKWVP/mx4RqNWYmSdPBaw8aEKiJ5DDLuabaK0wFmxBClTq0HzYLynPCeKB0n1MxQwsuAFB23y05QcKERifYtQsWvPvQwMr+YszORMFmQqivWWdlW0OExqfetU5FkAKO/UMnhvC/rS144oUEG4oalG3yW1lyO+Z6KdssBmwxxLN493BnZNmmx69nGGmePCYOoGknLgREWVt40GClIkaiwCEq24TEPhnCSGWydFsG55W4LMXJrq3pwOBE7jyycTi0/aUEfbxpPI4Bsd3h0uc72loE8jKuT3qh4QL8t/F15Xep3hdDtIP4RFcHvtNdAbTpLKUvR9RlBrF27Vp0d3cL28466yz89a9/xa233lqPU0zj3wxXz+zGJ7o6cHVPd+K+ItkW3/zSjikg2ziuM74p7KcmUarrlG/rLFb1Oxnf69uEPUrBxIFB7myCT/UII33b0DAuHKh+sD0gqZpGtPTDPjuBxKGZHqOOuc7uTXm29FjXJqZIrzWMVOWtpwqtswFhgpUlvBIAelL6kmQlaZwkCNXfAwvAf82cgVX7fzdQnZAypM2wygGwiKVFzoCp5uewetF8/LYxD5OHw1urhY7oDHJUcZIl0UNmsMD3Iwgj3cneGz7ZFpCkBixR2ZZiqK0BYBFt9iMNBYH8tRLqWdLERgY3o8NaBO+bOhGYFmMo6yTDY7H6lf60kNU2JTs+jC0JOucY5clKIEtSooyy6Pc4K0maFmqyTdxHVv7FgZOkD/VQkFkI2rc2oq4pcK6sy17Zz9urB3M6AqKYhrc5HoxqzKukI1S9yV4DymiowbA/LVpsGz0koyJtuWrtXwFgfU5d96pNbBGFQoyybXP7OnyyqwPnFCXPNonwZxH+n2kgPymvL6hFOUUxxRhK0uKXt5hiFragOP8rYHV+l722t55hpLI3Y9RzqwdGExYLNeK3Wg0sxjCCoB9ReY3KUEVF7MHW+X8bnONhy8bTNah2PdSLbNO4M8b73TOB3cXCciVy7JCEhsnkeWUaUPHAzSnDZOkCpCo1FVVfJy0Kv974FVTzUpNZePXsWfifzvbI35a6HlRuZ3XKTF4PfG3T5uSdXiGoywxiwYIF0BSTkRUrVuB1r3tdPU4RQl9fHy666CJ0dXWhWCxi5cqVeOihwLeEc44PfOAD6O3tRbFYxDHHHINnnnkm5ojTqCc80+G/ZZyQJHWbtCEbIx3hLpqY8jhi2p6pLDsDLOJvAIKOuV6qCbOGV1zuRO5tasxgIhp/t9MYwe4MeuPpWf8QPtc6lFCRoiplm8VEyULa8EoP923oT7Vf1jBSC0xIN58VE5qG3zcW8czIPzBkeJPB6u5qdDZSjoG5jlT/47PyjhqrTqbfOufQopRt5BnVQrYdODkZ6yfFBc827zy11cw8CyaBssk+Pb4pKdu4oGzTEj0aDc4jSVJADIGS1VKhY2Vtn2NUJHS13ht6sirVFZqrBCszCITdow3Ryrp6QZ5YliPC2DQrnaLGCxhOgqmJ92o4JtlKbfmco8F9si24ZlmRJquR4sJdOQuHkdaCKdImtNky2aaaQDnblnQYaG8M7pqownSsCVRISgDhn8e9Rw110e8lYxXfJHy2JNV6rXgs4j2TfWBrRUOkjQHH4xGRAExaqGE1hJHSe/VEPodrlw7gtb09dQsj/X1jeNHYq7V9i+6C0fR8KAKhVvgJEuq4eERVo5wxjJrtNR9zzZRaDdSXi2/dHMfT2sJI6RidjotLEY9CRcIdpD/u/91k23jHPA1nze2tKeEKq2MiOA1ADxsKHa1eyU1OHBvHvI1H1uVYSaBP22bh+ctm4iGZxu5Etcs/WybwVCGP26tWJr/0c10A2G+qhHen8Ih9JaCmcdKZZ56Zar8777yzltOEMDg4iIMPPhhHHnkk7rnnHsyYMQPPPPMMOjo6/H0++clP4nOf+xy+8Y1vYNGiRXj/+9+P448/Ho8//jgaaog9n0b9QZuFpEHwPc2B59bT+Tz2LKlX+uuZjbResKV1HI1zyVIh6HRVYSjVnrPq3yp+mlZR9Fghj+GY1qWUItSk1oysSegxTUzVOFVUkaIqYuVhezG6WvIAdwZ1w6yAqCtvsywMV5kBLGvIyRSLzqiXBjRjZy6vA+Ww31NaRHq2SZ+tOq6TG4ge8InKtupuUt4GvjKwFfsumBs58GWCZ1t9VFg5VkSZOyqsIueQo0o4VbbxIEGCLSvbEi7bAI9dnabrvnYS2ZY1jDRmYqsi87MS0R6cCbWNk+bNQdH8R+L+9YTclpRtNdlma+nee50Ddgr1TUU6XpwSN+tzK9iBf1kc/lnkKLb8P2zfPuXLpWRFGj3zvEoF45oWqaa1Bc825zjHjk/g3qbqEidRNJKqVeBc2atYGocNQLNKsMk9k32aou50PuVt9u5RgVXwr8LOJ4TltyrKs63VsjBSQ2ZLGfXwPaXIRTQPopOlBIlEmgh5wqYH7Ye/0NEOwPHJ+nvDUNXHpOhX+K/ubN2j7wlXR7WNPE44wtyMY8e7McUY/qAgFNMgq6raLwt4OjP7CNiQEmdVGUZKUQ/VroP6hZFq4JjLtoHz6Pa7WugTs7Gl71A8bu+FFiSEedcIDmCQtGGPFgpCtBIAvKF3pv93dKbXAKp7HJfMIxkMq9lz/qd0euidh+KLoK7+d0BN4pG2tjbhv5/97GfQNC20vd74xCc+gXnz5uG2227Dfvvth0WLFuG4447DkiVLADiqthtvvBHXXXcdTjvtNKxatQq33347+vv7cddddymPWSqVMDIyIvw3jRcHdJCRNBj7SntQn37WHDewcZrxdozi27nrcZb2e7zUbD+HuIoRevlIR5SYWS0lasmYpyIh0pJ370zI8vY4SX5gA6goJs6ZlS4ZscUwag8jVSnbVNs65wtEBteiu0B6J67dOoobN4f97KKQFKon4/LeHqzNV084TkqqDAfV3dPIbKRSlau3sq2vZZvyu2rDSKlSruz+LP7XYc+2aokhD9wK3q+iyosowrONvg9DBnB3gmefwaPDfwExpCGZbIv9OoxYsi34W5UlNwt0cp5JI3hvl5RrC+lMgziyTfgm5XvvKHGT3/eKLk6O49SvqrD5OOw2ni7xza/aNBhNa3FjL1G2SeUYYsHkmiFe/UXJtgftXQDUJ/HD7IoJi6hgo5RtgNummCWYXO1xdurc2ZFtW9oxQS2LJ9WAvv5l5IXroWFUXsjWxLpLsf9g7fOCx+ucQEmPGNtMNPdFnotLZNug3aHcLw3ovZph1t9GQEXC7OyMyh7ZWsuib7MpqQelcQID8Jkt2/ClzVtxYkL20ChEjT2SmlWG2sJIOWOwIs79zQhVU5Kis26L1MTeolYEen2ZbKu2XpCx2bYTcL+9V5XHyQYb4ljwps72WAFCGnGC6h7fVEPmVzALa7Qgiu93VRLQ06gvaiLbbrvtNuG/fD6PT37yk6Ht9cbdd9+NffbZB2effTZ6enqw11574ZZbbvG/X7t2LQYGBnDMMcf429ra2rD//vvjL3/5i/KYH/vYxwSCcN68nZsufRoBftuYfjWQqkPmuFmqVCo2b6+rjR/gQP1xfDp/c+oJyc6CxcQihNthSrbV55y1aIDGJDXPbqWyn/WyVtAVd41Z+KZ1TGifrJmK1kxN4YYtauIkCrXeZhVBoHp2Oc0WBlVRq/Ky2vHk0RKOnoh2u+2QsmV9sbM+zyeEiBtFMwB6xFI1pMYE06BHebZJn+2qAwLDiOsAqZon7UrjxAuXYe7GI0LbY8PCmRNG+kBDAc/68pXayDaNB+pt1coidxNO/KV1DMMFJ3GBnI30hz2jwipuqNicO8RwhOcd4Hja+OdMUF9lDyMNl63Jco6h9myLPv8JIxV8cWCL8jstQgk2mTEUvBrIGTapZ1s174AOoAPJE1JTulceUbJyKpxxJ+vCULuZTd20QweezuVwZU83HpSiEqbI0kSJsfhwbZox072eepD2OXCYpC4YiFb7lRkDzCn37VPD86KVQ9uyhpG+WKCl2sFbIpVt3na70oF9BzuFY3yrbwCHxfRzKoykaJOzHDMXo8B4PEohKPV1vIYECd69esaeg5/YB1R9nCzY2ZoT75nX4rF6/fbNQtsstx4jRE2Y9h2RoXNg/vCc8PaE32mstjBSIPu9eeBF8AoNEN/LvH/bjsjv6NjUIwApubbJqEHlSseKdu3edKlPC/V41MOcijjfSqMyNFkF58yehc8Rgq1Ug7It1/En4XOSEnIaLw52/mhxJ+D555/Hl7/8ZSxbtgy//OUv8eY3vxlXXHEFvvGNbwAABgYGAAAzZ84Ufjdz5kz/Oxnvec97MDw87P+3YcMG5X7TqD+qDQdoihkczWEO6dLGqlvp2hmwIa5ihK9aI9/Va0Wp+oHAF91QBg9PFvKJHhbVwOnAVHUg+z3YpAiVSDp3ErpjVpnHEV41Uk74mAWTZiON8amjdcQidaJTkYZe3jJZJyP//SfFiV4uggj7IhkgeNn2qlEL/m9bSyplG+NO5tN6hUpMMoa5ZJDdTu5xScgSmO58Vmk2wMODv7iwcAYbpj6FS3pn4uPzJgHwmsNIuR1MDhsVyjbOOO5ubsIvenbgoYW/AwAYzMqkdPDetPgw0uB+2gmhRFkWGMyxXaAavhTd2yaGkXpliT7BQRNlHDip9u2JylY7vpMyClP8zegSPpft4B5W00NonKMXQ4n7mZq6/l2/bXtoW1aS1IghZ6Pw0e4O/KapEQ9JE809JoNjlRhLrWzzCNh6BLflOEdFIl6jpn9TrrLNShFa8+oR0Yw/LZFQ78QBSfCu5GbzFFhMVB0LxJvXTnBN6NcAYGW5nNnoPg1RumsG9Wmxmtog93U1eLaZYJjkeRxb/p+q25blpYj08xGot0ebDI+IqKU30+BYIXiQbznN3FhtsgQdwG5b9ghtT3rn9tGeFBaUqkHWaITn8zkMSuO8nSMjsPHNuX2xe3RZFs4fVmcZpwt1Xt/bzoI2raRVr5trGVlW5S9rg4psGybPQp4fpVkQW9u6BU8U8riFRG3VAq0QENPTAZwvH/xbkm22bWPNmjW44YYbsNdee+Gyyy7DpZdeiptvvrnqYxYKBbS2tgr/TePFwQe6O5N3UsAbGm3iXaFG7fX6LwHIJM5Lq2yTJdRxcu96GAsDQAuvfzhCvWEx9fVmJRwZByazDlJTDHTiBnADdldom4psq3ATW3gQDhU1UdC5WGPppGRpORx6Koddnz46FtqnGsiDzFwECyN4jGgWdmiOv1VWWIxBS1Hnm20n6LJetXpS09A7Mtv//KFtO3Dp0DCA7BljAQBcg62YcMWqf5iNik6JHqtmss0mWfLyIW9Ix7Ptn1JolBxGmgRfvROrbCNPKiZ0GsimkJrsuyC07U/rNvh1qKKY8McZjedhRaoY7Ih7IqvOdgbGIZJLkxZRtlVRPzWkSY8AVCLqn6otzBr+28JFAuTgCTXJSfFwhM/uvJKsbIs+BiXbPPVX2nvYbEUfOMeBKSlba1wY6XB5FFaKui4TdunJtuCaGjNka60WXo/1LJ8NW9LS03496EKY0m8xKjFEFCZSPDuDAwe76raibaPFir4fdQm/q1HZ5vX3zFATGElYUMlOGNbjsq/dvgOfHwjbXXhrdLUoSHUpLFtOSmWQ8UaW7MTyOVQKqaR3bmauTzh/NdiSy35vZP+9p+1gDJMxICQGHBuL8eQtA7AqBcHr9ZSXGPdIZ6iusLxC5+cv7rxOftpxCts0i7RN2s4RhGzRdRwxfw4+E5PRdBovHv4tybbe3l7ssYe4CrH77rtj/fr1AIBZs2YBADZvFtPObt682f9uGi8etsZkMgPE9MtZ4DVk69CG4+fNxrUzROKDwUYXAu+9HNv5HjtxsJmcjTQ6249KxVQN5pgv/7UN23W+kJG1VjBkC6ExOE81TIpX82lYy+b6n/5grcCwFh60vb15AM8guf51SoNFel/+W6EqkVFtGIUMeVKtp1Cj/HbGP3H4grnYkDBAi0Kaydaons2z7f8NbMHR4xOR35uAoEYocI7ZpjNhqU49p4Er6Iw4QoLBFicQmoWa1yR5oLhste3QCJyDh94VOUFCElp8xVycZ5tF/g5PBGmm1EwKKak+5jhHqx2QilTZdm/nBE6e24uyEU3qNHBZaxPA0tQT2FoyvaWHeE/GiWdbVIbEOOg8HdlmRSjbWhVkhSojcxwWMzFct9VO6OtibrNJKKmphDBSi4WVbWl72dtfMNFlqo+d4xxd0oHk990LI/9RSxMOKf0TPyurIywomqS+IG3bThNEvBh19Lb2VrxgGKhwHTY0od30CDYOcq+5pqS2s05G0oT26+D49JZtOL1/Lv64biPeMBztxVyPkOKawkhBycnqwyFlqLNRB6hHoole08IRk+GQXVv6txrICwTyU/+JfaD/d1uVZJsBJyvo6RuWYjUJlV8ekYDNw8e7OmuKHqkWE9KiMu3L61UavSFe1QY4BHWa2hO1T7VkW5nVEIJaAzhENWinFR8NkIb63of4q9UHTqzBV9taMajr2Jwx2mcaOwc1kW1333238J9t27jvvvtC2+uNgw8+GE899ZSw7emnn8aCBQsAAIsWLcKsWbNw3333+d+PjIzggQcewIEHHohpvLjIGtrn4ciYSTLgTKgmGcNQ5xPYbBj4GTHzLrISfp+/GofpQfY4revPVZWjXnDCSAOM6FGWvEAz57hz4ybcvbG/qnNd4Eq712jPVvX7FxNRyrasInOLZQsjsBEMTM6oVhHGNVxZ/Kj/8d2Vy/HPQri+D0VMXmW0WiLtOJMN+X/PSzBNdiY09ZlcyRM7lmES8c/mZKWKCmmHT9u19E6EnZV4xRRnEMg2g/N4f7UkcJZZ2caYLagqCt33xaqw0oB6trXZNpjU1WvMDHnFOMq29Ofo8hYE4kKnGFGzaeGJC1UiZFJIuedsrzj/Hu6qV7yQVnqmwZyNdbkcnulcG3m4QgztYkeQbS8OxJvye2vQ/3s0YRFLhbTEmBmhbGvgHBc8v0Lom7Mq23IcOGZ7oExIUqNEfWuO7YoySfbApUyecnZJIYyUMfTxrgx+SVqk8skAxzHjHHvu6MHNrreU/B4VbOdZfTVDqNAKaaJP37Iof0EAGHJJKI76hMmmwXlzZsGEgcaGvPAm9RsGbujswPM5w5+kcm6EwkiB7PVIJhxU0DnQxDn2GC8gD8nGQ2qTl9Uj4UlNyrZg0bHaXlwDx17be4VtSe/XeD1Ixojt3plr6c10qU+W38MPVF6Pd1Yux6cqZ1ftdaxxDhMGZk614JrtQRt7fMIcBACsKuitD6ZYOI3Do4UCbupo89WdNKFSmlvwbnKNUSj0/CJxn7RjdO+ZfdM8Wtgu/7o1pcigZLw09kCyMOSckbHYp59mwZbusbYuNj3OXf1FbALBabzYqOnJnn766aFtl19+ufCZMQarTiodD1dffTUOOugg3HDDDTjnnHPw4IMP4itf+Qq+8pWv+Oe86qqrcP3112PZsmVYtGgR3v/+92P27NnKMk/j5YmGBOLk581NeKihgC1GmFA6Wvs7Gll1CpudBRvZBlHLKtUnbT5gqjrC46WADWAGIZX87VV4f716dAz/L2UmH5sFjlJvHhzGFqOIPxWzrphpyBeKgDsmG0MRp4+VcVdbdSa2DPF15Lt9m/BcPof3zugOfVdmtRkRU4SUbREm8anAkVjxi7Ydm9WS4h2zGzDXSjcxGkdjbCdngcGwKdmWnvRTQ1OqG+I82zjjwmA53/V7cCvCkDslGFG2Ndo8dG+ZZuIuKdmJDlupMI1CkMkx+rnZJHRUpWyjfnLZqq5TzvP7ZqLS/gQudhUrznVypSlwJYY088i2RcMzUGrchH530Pua4RHc8RJaSjQWdEzVMUomLZFsRrS9OoC82YjZhPjPmiAhzzm0kT2Arr8CAJpU2XIJVIqjpi0HYWD7KajkPoozR8dwZ0szXjs8gttJBr+iDVRodSaHMcHwuvI1KPJbACSPEyxokWHuOQ7MtLZgn+0H42DjIff4Ilp0AxMplM0UBue4fHDY78/oxG1ljOLGq/sW6ufJ9eGt2/EBKXKAYlzTsKF9LW5qZ1gxGpzzgWIDHig24C/Ua48bAAu3kVkX1yZSJCjxwg8LLulP28E8576q6+CJSZw8No5vtrWixzSxpVo1SIS/YxqYjBESsrqXXgPAJNVvp2VjS0SxGE9HWlYLj5xIG71y9Y5BPJ7Po8tk+Fa7QxbokBYJpMiBCTTgB9bhuFD/NeZUqez3lG0cTBhDJc1BAGBKzz6/XVhFuC/FTW5o4BRjuGbHEOiSRBrq74TxcXyyq6OmMgDJ41UP3vP7g70S3+j/I27o6sB7tg8CmCvst6hi4tGYpEwezJcoKE9+0gzxGduz1oxtuo5FNdYND3HJrabx4qOmGmvbduJ/9SbaAGDffffFj370I3z729/GihUr8JGPfAQ33ngjLrzwQn+fd7/73Xjb296Gyy67DPvuuy/Gxsbwi1/8Ag0R3h/TePnBBiDTTXKoWdSgqCHjwPbFQJHz0BgqTUdlbToZ1tRM5AbCGTuj8BInXo2ErtBc22A4S/+j//kzHe14x4yuzMaxHAyNKYynxXM70AC8d0fw210TwgeCk2p4aJOJayqX4prKpRhFI/YoVd/mMc5in90e5QpOGZtAg2K1usRY3UIIZGVbmjDSKBgpJiDv2T6YmuTqyweebUmhpzbXIv2TAODRhoKg2suBExKpGjBwRbcaq2yDDVMX6xur0bON2UTly+1QEoNJxeRHh5WJ4PbvWtzzpWo2hWcbNb7OlmXNKX9HpYgrB4fR6hI2vrJNcX1RoZFAsPK+ZvNyfLs/CPHbe6qUKWlEPUAVNzmj9jeaqhi8S0kKLbMUMi6NOzW7jJxAjGRNkJDjHHeVTsZxY+N41di4E+acERW7AQBDBQau27YDt/cP4KodQ8I+xZgHZzPgWT4Xz6I3ch8KDhapbPPebYsoPGVyoVnLTsLoAB4nvor07ZFDTCm8ul+vEFLGOU5IofBZO/NR/Lhg4UHFe/xCnhAkXEezHk4slHVqmErZ5v5bcMeDXCDbgv32n5rC8nIFs59/NW6JUQ0mgSuS42RBrZlkNR4m27pi5mDNYKlIy7RYLWUrzqpsO3hyCp/auh3zKsHD0SAuEkSR3jZY1QtlOudw8ooy4b1JQ7ap+sz55Da0QMeFw6NoIb6PGgcWKjx4s8JvHwRlWwo1VaomO/k4WsxeB5NMwIz8taZUwg/6B7B3qRQqa5r7DUjt64vYP8tKtV81FfGD1pbI/bOGptcUVeGDCVnlp/HywL+lZxsAnHzyyfjHP/6BqakpPPHEE7j00kuF7xlj+PCHP4yBgQFMTU3h17/+NXbZZZeXqLTTqAYc4qSpaNvYP0Gx5XXqTxUM/LXBUYeMaAz/yufQMTYz+od1QNykHgBWl8qJq7fP22FPQXtoX0ysvRqwwgPUKDxlzwMAvKZ8berfvBjQFKSNPCe6rb0Vv2puwnMN2Ugrjuwmx16nrYPDIAtKp4+lk6l7g4XvWkfiu9aRAIDZdvUSdz2li0WvIqS0xJiyc3/90AguHor2qlGhnso2LUWGtm7LykQQe6vPSWHDDPHv5ZJyORxGmr4YStAw0uOHnXPrsao9G892PSduSkgmkFwIqvDhobg2OWutDUfZluX18UlJO9o7jGnBrIO56pJjxyfwFqsJb+jeB7PM2lZxTelpecqVKcVEPCo0EghW3kvICUTzzg7De8+2HVhgieQEvaIT5zqJIFTkehrMqZg4bSwIkfeu7H83bcb1W7OFMnlhfmUYwqQga/ifwTksGFixaR98fOv2xH5ThQrP+2XJAdirVA4lFGiwo4e3ftKMlMsT8co2p/xUbSEftakKjyGDcxw1EZBclASIo3SecCfgtWQlPW9ENOiniwWrp0rIx6gR4xIXOPVGQ17hN7gzEiR4bVTBpSpp607Vxp2WjfdXXg+j3I3FFRM3bN2G18T4u0Uioi3sTalWqbh1SG9cn/3ccMcPUn/bEyd4YKwqZdvNEiF5mEusyGHq3qe0Cb+CMUCwv9Mnk+NGVBMb8QtrccjBe3+Z0OanOp6iX1k5FRxFZwzX7hjEyaXgmjTwzIsUKjyTc+obtZ1QDTWaK3IypBTQkhW/cco2ut0bl8tXLH9OawOTmUyqYbGY4pAFohLvuQTf1DRtMH07q8/PKmJ9a7In6DReXFRdA++++25UMoS5/fznP8ekwkBzGv/5qFZlxRVKnSRPKi8s4Jw5vbi0dyY26TpOnTMb583pxUjj5tjf1ooTx+JXf9NIrs8pfzC0zaNf5BXLOHzWfDWOKn0Kf7BXpf7NiwEV6RA1FJzMyJyNolh1g8Y4MGVyf7XxINJWdY/Mi/6h4pm0JIRFxWEHb4vNwvqRykW4xTxJ6b1kgSnvZYtt4+rBoUzlCCdIqJ6CUtVbmUfVkK0zeqTgEOlJpuG9bDA2jPT7fQMS2YYalW2ATc7oERFxK5aM2RgpVDGxi4FlBsR8kfOQsk1GiTEnjLQqZVv0gFNQk7kE4mBuLt58zk9w9awjhGeT1q+FIkS2udepzCQbcwu85/SQvatQ96tLkpEeeXBY0rvcQm7DSQvOxnd2fSPen8JjRwUGLpBh3sLGruUKTku5oODBmxyGlG0Z35dbjb0BBM+umsC7Cnfe/0rMr4diWEB/8h9DwHrX9Ykt22BBixzH5DjH16yTMIwgLLtZIkcLVZBtOoAesqhCM54m1coK0qmkDnD7OS8Ds4dTpLpBS3/Q5BRWxmQgjHuehtv/cy18P7LeoXubkj2JvLLkXQqFqo5p39FhWdjK2/16ccrYBE7N+H4AAI9oC+/oS6eWq9SoMtMgXiMAtMVkYAWyZ1XWuKNAo/ittTc28u7QYqevbEvZjHoloR6jYWWbGhzVW0D4yjbO0E3vVypri/D9pUSuR9Ln9ehrqhaebycjjZOqFz1h427C5zRPnKXwKl0XE26tKf6Wl5I5GMaefRfK2w9B4cl3YDQl8ZvFW3b1VAkYW5b+B3XEr5oacdy82fh7IWaMRK6lPpQgR19zbZ6A06g/qn62Z5xxBoaGhlLvf95552HTpk3Vnm4aNeKlFJVurNL0kSOsejITGlk5s1K/YWC74XTB1k7WcaZZlZCLX5bCDrahLcOvo2EVBvE8n52844sMpbINDN9taca7Z3QJoTLrG7KpOTiqb9A0OCujd/Ztwl9e2CCEXuQrMYN6BQm1vFzC0nIZu5bKMKxsYSWDvDVS23abeTy+Zp2Ev9tL8axiRc1matm6J/XPMimWSSwtRiWSBHmlHQDk1CALK5VMg0/PiyiJbNN49HUfOz7hKEQkj7VamwmqbPMUIXHKNg6OslF7SAmFaQb1rsB54spu2SPbMpzDIyXjQqdMIRup8/f6wu5A8wxAM4Rnc8FIoMDK2xw/2rgJixJCbWSyzbvOqYRJq11pQ2M5eK898voZPkcgC0zGUNh2AIDk0MtqoPPwVO3tW5xr7jZPxJr5nVjePL/qc2sQVUm1XIH3fr7pqN2Eu57UwjVKZa+MORO/uV2O+rIaNYrpPl/5+Z9NFFkNMTN8v51UJCL50NbteO3wCP60biO+9xzHSeMTsKFFtgs5AAavYB0PlPP7SeF0uSpIFDkL4yjSh1nvv3Aeru2J9ljzcMvAVjy2dj2OHhcXwumCg47wyOPjMarIuDrmRUXbMEIJCrKSD2l8wLwxmefZRttm2ne02TZ02ELihqyKTSCabEtrw1CusffROVDWFKr3rUcr9naeVRqFIMWZAzNC2y6rvAM3m6eEyC7fsy3lsb2FRk7ul5NBOXgYUd6uNrSqF8oM7rQlHAzLKhWcu7kJNw9sSfQwPXRiEqrZVU56fwDg1yR7g87DpGgt4NSzTfE8DVOMiolb0M2CEmORajQm/M3xoL2rkmzjlS6UtpwMxg2sy6UbL9ulwLOYm80xewILKhWg5anYfXYWHm5owCbDwBt6o6OqHrIDIjBrZE4Upsm2lx+qdvPknOP1r389CoV0Rs5T/0aG7dOoLz5WpREnh7gSMqlpytXaHOd+iMW4xtBBevan87V5aGRBmq6Tpibff3IK/8glr8769yCDsq3WbIY7CyqyzWLA9d2dAMIrpjKYbeCj2wbw3p5wgoBhvXq/LQ2OSiIHpz6N0TAGs4gbN2/Ft5t68ECzfPzw9RQ48KM+R8a999xdAD09kcK5HkkoP8nnAwByOfWA3oJ6UOsNVHXOUyt15AxmtSnbwueUVSJzTFV+OgIOJdecT3jcDtmg/s6f5BOyjbOMpKTNUZZWYzlVyrn3PioEDUCsuqZamCZV1yUr2yy4YaQZlG3eVdpxZJti9Lhxh+vjpunCpKSB+C0WuY2llUpi9swQ2eZep7zoQnHo+CR+vuEjaF/wKX+bxoEB3gFId8oEkN96EM4ZnsBoz59DSSVqBQMwKIUMr5xkKG76MH5zzelgjAG7nYyDf/iGqo6vcXGQ5ynDv2K+CpcZP8t0LE+tMW9WD7QgyXfi+1LgHFTzbU4sAACMupddXTiV8xtZ2fbOHUP4vuuhM6OSw+aCuh+saCZy7Q+CGaOh7/YqlXCmq2ryyBobDJqbfENGjnO8zrgX3y4FhMafreU4Ynwz7m/yTN6zT6wZRNLr2ME8nspzzBqZAyA+zLDCGP5STGc7wRBeKKRvlWoCOMuycNL2An7eFVa4xb17VNkmJ2+oVwgVhUfgBZ5twXNot2ysd5uuRptjKevDkzxQsafN3CuAq/tmLaUUxwQDtAlwzgS1UhTu6B/Aa3pn+YvSjltTmNCwy2GCDAAqSD8m8BD1vjqEtDqMNK13lbcXJ6vsGngqZdsoj0+GFAcDHBbXfKLq0NEcDtanUEpYSphtmsrQnZyivH3kRWKIz3p+3fpGXD8/HCljKMZw/93diTckTK9N6c7UxxvMGS8dOjGJgycmsUe5jFtItmVKpmsAHrZ3iQ0j1cBTj73s8V1Q3vAaMGMUdrmn+gt4kRD3ju3IkyRSdWgDcy1P1HyMadQfVVPrr3vd69DT04O2trZU/1144YVofQmzek3jpYMypCcFLIQl0SqVHPUyOXHeHNxIslHe4JI4WXBRNV4dSEm2EYl6kirHQzB4SriPWbTVLxFUg05KNWxJyKDT/fTlOCXCrHlHLp3fmbpcHCUyIKHPckdLH46emMTuk+Gj80QCNFuJppr6hVDpD1deQ47k1JeV89R1mkeEkXpjvFKGcJF2KfQkje9aFFTKNlVJmuKyAkbcxiIhaN44OIL9JbI2zhvFLxUpX1Z15HyzghVSSJVFpqqGQtmWC4UZ13+SScm2HHhi22AxQGdWpuxZHhFg29ETkoqKSPTuN9OFKQCdoHh3MEld0gKxLehscgiGyZhwFAMAeA6CLxA4ZjEnVNMi98oZJGso2Pm6TVAoNACT5B6dMzLqeg+1OkQbABh5NHKOd1URSip7QFoMuNdag19Y+2Y+lj8RKnYKRERSNlKdA2dPNKGnrOOja1vwFF8IANg4bPrfZ4Z7zypS29LIOT4/sBVv2zGEhRPRZNOOln409N4JzRgLfacqjwVNoGEpCeZd/zYejDue5bMFhYleqc5ChV5du6lh7OkPYN6W7M8uCTKhpgnvIkdJQahXIoiIuPGe4faXXJGNdGfkzvNK4nm22eQs7bbt+8TNMU3cbR8kKJmqUVzyiLYwWhcp4oW8jpZdP5yKaDtifAKrSmWhjdSBUFvPgZB624MJnhgtIiPqvpjQQvXI60/SLicF3l6ysi1AVHFH0Fj1YqvuKtu8MGLdLXmS19x3W1vwsfnh+QI1+tfM8LjGiTaIPvYTU/sot8sqYQD4YUszvlmMJwXlcWq9NHUcTn968+atuGJwGDds3QYAuG7bDjGMlIfFEwCwK9vo/83AIxdGZdhchzm2HJWhA2oq/8sB/2oNQvg17Hyf2Gm8NKha2XbbbbfVsxzT+A+GbMadFvc3NeIIyZdjR4p0xl8jqysvJtIY/Mo+Bg2sgglpmHmHeTQuNO7zP/tHTZgws/EF4M0vpCrrSwWVsm2K1I+4STIg+mEBwJnbddzZFVAEtYSRtrc0A65NC51MmrozWNqUiyEOIpDFZ88DjX7azoNMR572i0f4/1gRYaTVTGLapUGdVkOCBHANE+vfiKPbvom/tHkDT4YGm2OK3J5qwnaKhLg6fXQcZ46N4VXzgvBpxqOP64dBQsPcqRy4Pokl5Qp2NKS/1kG7HXvYomSf25S0dZVt5N0tcCnLp+acegAA9gdJREFU8k5QtlVMDZ7m3CH44+uhieyebVTZFnX0ivIL95eaLkzc6N/es0maBz7Kl+AiBG1lYy4HlOLVNR6ZMlIc8rc1k3pEJwQmcyZcFtfqYmgtQ+4z3r99EP9CKzRFO5g2UxuFfBSTMd+/Kiv8t6LYLjzvpHLp4DhrrA23bn8/rqBlcY+4riqbCZdsUwxhj5icxBGTk/hognl1FP5srcB8PAIgWOCwoQkK3RbbxpA7FvEmiIPEs60BFYG4Nsa3Aik8xmSId9YJLA2rOWuH/JrS/m+SN+CU8vUAvijsY0VMH+LItpyrWOJMx26lMp4s5NHknqpeIVRUbexdl0+2cR3w22SO36/fiAoYGjnHGC+iyAJipJr+CBFkW9plwJ+3VpG1lqqoOCA/TQ4WaXZvAyhnWBBssm0smcwpuxMbWqhmcua8QVk924q5HLx3XJcyhBftCQBhIr3C9arfDAPcHV85BTXcPjlBbx8JGlqpKQgyMya7cdG2waFjsv9sFGd/X/hOsw3lasD/FeKv3JLuTL2W5WUy8pSxCRw9vgGNnOOvJCux4yXIQu9BKwsWyxiAvpR9QVJ4778rruvuqtp2qd7oNU1sivHkm0Y2/GfW2Gko8PJXPf2743eN4gBAX3sxTtguhh1Rmf0zEf4EP7P3Fz57EvBwvjUHjbaNAyYnoW0/OFN5zdHdkneqM2YgrCSgqCTUU1kOLzdhVSdIAMCMICReHAg5Zdp9SlE2Bdn2oL1r8HUV7x0NlRZC2txzRZFtNtQryFmzvAHhMNJalW3W+DK8emugbNY1hpN2iBYEcQRJFAqSAkNe+b3PWhO5Eu9NpmxoeMPGXvx0Yz9yyBY+tIV34brtO7BmagofHHDUK3Rg610SJdtCoa/VZpCJQcVi+NTmrXjN8IgTmp1A+poMaMlrmcSxaTzbVOCWSzpoujChFU2l3X8Tbo0lXZfuKmbiJvzeL6if4gzi0UgnECYYbGiwwXaask1GCTlocvn3uqgqpY18/ziAf/BFwiQnLfzzF1oFz8Ukss3gwKQZ3qfivid91QzoXZsEmWwb50GbsmCiBaWtR2PPsWz181k+JziN+6/NRR0KVaV79daCjkmX4j73lFcJfrPVKm6GyEJUR8W5jp1BtsltHq2XHDqeJuGVHmY0qi1kVJmAPbS5XpJcN3DTlq04i7Xj66N5ZRkAYF45+0JEI1E7e2+179lG7p0OoM3m6LY94lYX3v3qyPXg+PtPTuGNQ8O4o38gNTnw+5bsIxiDNNo6uEPIENhgMEdWRv4+7nlR3LBlG363fiMaIjoJi2vKrMkc6ZJ1AAG5nSMjGYOHFwwn1l0Ku9yBifVBeL0Fvao2EnDUqWplm/g85rlJAfeaiK+XT1sL/b9V9brCovu2IndybZrDa3Di2n2xnCjnTVut1h1KXKSWx8n16cxUmW4bFQtlmps/NO6sWUIo5UX3/xQ8XchnTlgyjX8PTD/VaUxDAgOwpFzO/LstZNLQaVnA1GwUpAwPdF7dnzOU8+x+rjY2nuBNyu2vGR7FLQNbwSNCBaIwufH1mfavB9p4fDrx7QnKRdOdXF80PIJe08SBw+l8aZLwpvJV6GoNiFF6J3t3rAAALJ9UDQbCTegEJ0bWVZBUUavA3iQrUtkGpvxtNVMzmgUPQGgAnwnuM6OrxBYPhzY+X4W/Is2hkQP3B3oeNERPmrztHAw2N/xnri87IfX5OdfxWGkNvrFpC/4+cgoAKUGCe4k0jLQghZH+o3FnBA4wHD8xiXfvGHKff5JnG0OjwVOH+wDpPNtUWNDumgUzXXg2Qhipp3ZJLLc0idCcpxjnEeQplKjqVCQXgk97T5Wc+gG2c5RtAI6cmAUAONn1CSsjB12ePLXNq+o9llsnBuBm8xQY7mRyD3ciNz9FZnmfGC22C2FxDQnZl50wxHDpD1g60y9TZrjHq0h3pZ8HXp4mDJS3HYsVY9kUbvT91RAoXChhTusqDaM9teE24B1PAc0zBOKmWnqMvlnegodHMF8+OKz4RXWQw8woCS5/502K53WolXqTsarSQJ0927Tw39pMLHYtCyiZfdWOQdy1sR97JpAaKlDyd8yduIrKNgfyu1GBAVsy5s8OhubNh+KM0THcMrAFVw0OY1WpXLVCKv5MznhI9tebMzIbi0vEMB+I9JIDgN80plNc5uAsbnXC8Tl8i5Th3IKODgXZdk9To2D1EnsO9553VYLsrQUuKts4GKyJJRh/7hpY47uQ84v3Ip8hK7zOnfJ77/u+2tMAwsqtH/QN4O6N/Vg6GT8e+pu1h/+3ilSrMIZ8RG9btD3fPYbmSqNA7BsRY/xtMeNmxnlIhapxYNlU7f3ZcRGWLt55g7+rW3iOQlJ4LwCscpPUnF5FVuFaMctMP6ZbM+1n/4rANNk2jWlIYAA+vG1HTcc4dXQcHAztlXj5tqrLeIH3xpQsjCxKnBkZOoE0+FbfAJZlICZ5Avn0kxY1oejBUw1ds2MIv9zQj1yMX1QWfOxNF6C5GKzUMwD3n/AtfO24r6FjfBGACNJGoRgS98o2wLBH9hDCj+hq3x9sZ3WaR2S2+9+2FvxVYYpdzRAnfK01DJS8SaJAtgEFKTR1ThV1s0AmwBqcVWGKE7S/xYSROv/aYELZ9JZZ6QvANby18jYcX/o47rAcg3SbDIh1d0BNw6eHdYlkbKgPiSNkrJTqZU5LCDNhALftUPbnOPjKwIwk/yI3C2VsGKlb/2jonkq1IK/Y61pyWbw7IQ/+/8/exT0mw2/XbcS3+gawolx2w1+0naNs4xxHj83Bp/on8CE3w2OJ5xCam2p6VeooVX8zjgZs584z+PzmbXj7jkF8fHNy9jK/TSh2QCcFlN85GToHxnk4k+aM9uqTTVSGHN+ykLKNZOw0fZo5uVILdYu8Owu6HCLCljzbBGUb+WlFbwRaZgGagT1JRtKsdaezVMB7Km/EYROTOHV0DNdt2+HXde+6/mtoGL9dvzHkU1kNZE82Ufmivn9Rypw42xCfsPQ822wTzHZ6vIftgDjpsmwsqZihrNVp0GrZ6HX7kvPc7LQe2VbmVL0uXoAJHdsRqK+rJdcbB/fEh7ftEEq+s8LeHMWt2AcynsenNwZ9gdfOGRGN+4PFdFluPfLkIP1xAMAlQyNoHJ2P0hZnccqEpvRvvLanG5WYx9hC/GFzClVUA+epyGpLykYalSVTBQMcJjScpD8YOiZFI+dYVDExgvhxKh3nen3ZQROBb2OOcxQjwvmL3Pafmayo1quw89ARvg4G4KzBzIcKIU5JKFvm2C6BGIUJpEu26CC5Xfj6ps34xYY+7DsVv8C/M5C0AEWx90tQvjTYCcOdVzSmybZpTEMCA7CqlF3ZRvHt1mZwALtNFPC2HUP48oCzUie/cJnk3BGhYH7IFU3/XVJnn1pRKqO7/0hMrLsk/XljUOAcvWZ6W/Xn+ezknaJg5WGSO8ig9uypBjNbmwCJxOpq6MR+vfuBuUM91cBCJg+vPXE3YRKfRC7KqJRmY/Gwc4/MsWXYinb/uyE4/m08glCIypSomqR3T8WvZssTqbyZZSAkwb0H8oRjr9EGHDYxiXe6xu8q898k5MlPNMXaaT4m61eQaVATso7pegYlDDdgwsBTfD68ASBdRfZJI3LtE3r2CWTRtjEzgYwUSQ/xHPM744kNEwwWz5bB2Cf5Cdl2yESyEfzhu7jKNs0Qw0iVyrYArx0ewZsGh5F74UJ/mzyJMFKQbZ6aWJeI+op7HTYYum0bK91FBLvOyjbajmgAbK5hj0kGr9aNoUEgs5wdc1W1dKr+hUPD3/kyAE4Y0MXDo+iwkq/N6N4FuPpx97hU5cVjw5QNcCXZprnv2S7l9NmaAaC07QjAJU0qXA4jDc7j9Q1pMkFS8uz0Q9b4fxvuTy3Js60gkG0cV5Xf4uyvu/dBM3DJ8AjevmMQP97Yn2pBjFtO2SvDe2LdC+/FWt4LHcBHt+3AuaNjfl03iVa127KFZ1xtGJ0Jsc0T2kz32fYOLkG3aeHcEccKIlRHXUzEhXB7/aFH/tsmGHfaNZOH202jiqRPeXD8akM//rF2vd+qtzCnXaI2FCplW4nch6o826BW8KRR4qTB0val/t8GXJ80Uk4NPLR45KnKFj97Hn69vg9NVfSzQFidmQMwo+8ElLcfAcBZCI0a7cSFkdIFRS8k25SIbVqvN/N25XHk84/q6ae3hqtsK0pJmqJI0tGIKBMPdNznXcnRpG/cs1SOXDwpSv6h9Jr0KiIMGMJ2Cxqqe7dkxN1hMYxU7dlG4Y1vayrPwLEAgK9u2owcnCz3LwWy+KtOk1qvDNSFbHv++efrcZhpTOM/Bl6q55P1/8NlwyM4xF19riW1M494Xb3BFiWizLHdlftePDyChpHdYE0sVX6fFRqyeYKFPdfSo+n5N4SMXuUwomqhaXqIbPM/u8+ylSkUBNIgZsXsNj9ECwDKMeEbanA8uPmtmNjwWkz2XYQ/2itwk3km3ly+0t/j989mU12qak3SBFSeHEbVvSwloBOAnKZBg44vbt6K17nqg6RMVG2WhXnjImlECSaV0uKq0tsiFRh09bhMCTI9g1pSqWwkq9qufxCrcWD7xuERfK9vwP+8VKEmbbVENcNGElKX9IZaDLDtaDLPNsOTC527mTvJJPmc0TFctSN+ybzT87ZkYtIBWaEBIBS6919Dw7AnFwbllpVtKYhSjyiaPbA/iraN97sqZo/EaGLyhIvV1bOtIJFtps2EtnsHbw17tum5qpRtcZ53ph6oYPUUiVyMfAvQ5viZaaSt1ACAKC7u3LjJv6eA69mmUD9qhvOenT0a7+MZAjmW3P5PErLE+y4pFBkQQ0EX5CeA2S7hZnleXyxG2caxjjsEsuGF/2oGGjjHxcOjWFwxU9Wdyf5zML72rZjqPweww4sbMtnmgT7jahYsAMCSnk9YBwMs3LIn7tvQh073HHr7fOWx7FiyzQsjDSvbaLiqd03VvHNx2XF1siAp13iPWKm470W1xKWKWJPbqcrICrxjW7Z6v7vRih+d9iP/c55zV81FwpW5Q97TMnhKw79ZqzHTsqpORKFqIeh4TJWN1ENcGOkICYH0CE6qhGvg4ugjqvgWtKqfme4q21THVOEBSz2+9tDRGJD+3qXwOWuEbVEj4SLnfl10+h3SX1ShbNNcPzoKhvqEdcb1GvQ7Z95Ty+wnJQb3x6Nr12N/SS1mTWWIVqgDsqgqp8m2VwbqQrYtXboURx55JL75zW9iajr+eBr/5qiHXzmHWlUgD0a2ZDCHbi2oSQDPzH5CyNAUdKSzJoIVo8UVs24EFQDcY+6XqRGp5d7aZlto0FCuk7KNMR2h2C33c7NLss3DNsUvpYkPAw7T/+F/zk5ScYAbsMb2cCdcDJ81X417SNKM8WxCEOXTTpqS6RzYb8IhdK7ZPgi7FpJYoWzTGQsNZOMmSYAz6GbSbzp40N+o7vRzfG7iZJuDCclH9Hz68DaVcpFel+YSr9QfbMVU9nBZjYvPUUVMtkphpDkSpvLC+KbY41tgMHlMrVCQJQacSQHNvqpzjjcOj+KEGJ8UX32m6cJ10MQRqjBS7w7SNiBk/KwlE6UegdcwMQd/WbcR57hkT5SKwXaTJGQJ149DXiKIK5wJk9YScuFspFquqlY7VPPJJdgsWuWjAlUN0vC+GZaFtoag72mzbWGCqIPDVISweWRbPuG9Xygr30hd3H2u6G+6jbf5f3vemWkyQlMVk26VgXY3IcDwegBu3RCIX1GN49VJ32tPWrhJpYq0c7Cn5iLqaUSRbfRTU7XKNi4TeOGwWhO6UDK9exdkhWa7R9ADsg3ca6dI/+D+a1SRzTtu0eZxe3Fwjoh75XmiVjuyUJEYdJtdacNU30VYnrEfuLDJKfvuFaedPstVO8qLFF579Sq3DX71UNBHWq3hRBdp4Y1dR3igiqd10YIeSaeYKXkd770ymXhNtHZGPV47NDpIjz8Vi7C4HuoDVMSpzVlksjIP7zwu8Gzzxry8c4mwT9QiNV1AlEc8sho7DTSos5HuMlk/DzXlebn4dyvGEwm+U7MuvEgIjxA97NxrlaFStkUN2+ulep3Gyxt1IdsefvhhrFq1Cm9/+9sxa9YsXH755XjwwQeTfziNabwM4TV95vrXVH2MqAFBLc1qb5tauh5MstVhZC2VYJWtzbYzh17uUYr2FLifr840CaxlumpBC0005DCiNFCF4zGmRSrbPLJNeZ3SJGW/RZ3i11knCykqSFazZdWgrmjFK4A0AP+9eRK39w/ggpFRWLWwpF6CBOlehMztEw7TwHlo4kwnVh653V0Krm0K+cgQFu+nNtdQJvVIK3Yr91cjfjXc4J5qIzh+NWE8GkST6KKCGBPINmiiwtKOZ2gtBpg8/F50l/JYtHU3qCqmxt2BIrk2j7SIm/DqXoIPJnq2NRKvJ0/RQtVE3kROnOBJpIaRRtkG/zj07Y1+r9ww0jotQeelOmva4mTcgoZQBJRuVKXaiCOyOPHxS0NI6SQxC1W2FW0bDeS+65wLiww6B8oKZWfedtrVJJJdVgnQNnXZrHbhO1o3gmQJKTzbaCbcphnA4z8WvpfDSPNSYg9vkk6VbRS6NNFWQ6rLUri5Vz9D7Sb1qapO2AZLIg9UOreQPyLL3vd69Yzp8co2nXPYvDo1aVydN8nCQGStcOt22l72+LFxzK9UcOiYex0qZRvXUBl1CJjy9kMBIJQ8KwmHNDj2EreO2PhB3ybs6yZv0aRspBY0WNDwsa3b8ZcXNmBhhTY40YRYEtaaC51rIXeG/i2TsRR/a0hnQ+E9nW1FkRSkdyqKsDGl5ZCkdoVi91I59HtAvQDDQyUKg7aV3p6a3CZE/JZ6r3LpaVWTqMoh28LXoVW1fJMetOQagIuNX4ae3e3mscJnVYKNLIgmrl56sm3Novm4qic8tny5Ktv2fJl6yf27oi5k25577ombbroJ/f39uPXWW7Fp0yYccsghWLFiBT7zmc9g69at9TjNNKbxooJmOsoKzphyUFPbCxcVRuqdR91sy92XvIqdhEuHRiK/41wXsg5RnDsyil9u6BO21dLlmdBDqrxqPNtuHtiKBlP6naYi25xz/Y052UhVdz+UxU2aJaez9s0GeZUyCWqSMOk3HDrXsVep7KyWp8wmpj5VOEECeKBs2+qatT/B1WFJHhrsMNn2tD3X/9tbSS00BybXkzw6lXqJ0TDSYLJp6BnqlIJEUK16U/KhOWZAOW9CnV1Xg1j/mhQGvIJnG9eRI2QbVSaq3tfXzJ6FXzSFffzWvvA+PLbt9VBVGN+HhZJt7n75mAoWKNvE+9wqKAKd32sZlW1pwkg90kQm7rfwdjzw3qND+1ejbIub8NMSagAqNsMyLWgnbWjhMNIqlW3nSkoB2idxqmxLcWmCso20lQyAQSaXBjgMySC8oiAWWgb/5e4PfHFgS+h7D6GQHErKSApA2h/4YaRpro0q21afD7SJbVE4jDT4Lse5r7DWo8i23tXJhZD6ZUOqA16mTLnPo2/AC9ZcyNilZQHevPrNsacOezrRtsTzopTeNXKNZ4yO4aCevWPPAQDMvUbNqy+cO+o2SOH3AMDE0PK0iCXbyNunw1EpyYhKQBSFNtvGTzZuwps2O/dDdXYLGqb6zsf42v9CZfAgAEAxA6/w1sEhdOWdCIVmpmNXV+3pZOAkbSR3s2u7eu5mifiGFk2IJaHVHTPliUanIi18RL1rqsRNKnhXsr1tReQ+UVXCgoZuK+jz3mjH+6pRHDo5CQtaWNmmOJkNDZYR700qhlA6OLlzNRaVK7hw2LHNiFq8KXKO31mrALjPkhShGs82javJtp2tqJI924Dwu+F93nNeu/ObGpmnyEQkdfCny4KGiDHefU2N4XvwMhS2Ndg2rtteW5LAaYioC9nmwTAMnHnmmfj+97+PT3ziE3j22Wfxzne+E/PmzcNrX/tabNoUH8oyjWm8VOgyw41jrenaVf5kPzIP8f/OqnCJEkhrwQ5KyKtJWQmqxwrRq5KcRdNJq0plRfKE6nsWCxo4NGEwrLoWY+A4PxuZCsrvmMqzzZs4BVf41Rcs/G9/4J2lNAbf7WTyfcbrTaEwMaHhtAxye68Ex5HQvhmt8RnINA5YZPJXEnzIOJbHqB1leIQkHQityrf571feDXeUJ3wyCpyHBip0sO/VhL5KEO5bQl5QpHyb+J5tNrzwVtGzTV6Bjod6MO7BI2g48VppjAnXPHLrTOV2J4w0uHpV2yGERXEDb628zSnLqz4t7PdfQ8PKc3ykuzO8MYaYZ66KQq1six41dxQ6nD80XQgXapW8hwBRceVN5OKUbbqerKBQHQcAPmmei66mMFlnQ8vs2XZ8GSga6gmmqMZ0wkgpLBXZltGzbfmmVfhG/2YcPz4RuQ9NtKKl6Oso2SZ7tmmUbOOiB1yDzVFWkG1UuHXY5BR2bVP7iIZVAoRckA6rUt2kUe3R+qrlm4AjrhG+t6EJxymQ9y/PgwQQNEEChZFCBSYv3OjSIoFXX999wnJxP7qPHa5zbY09eMueb4k9tyktENC6bk05KqOQoo70i+eOjKIln2xw7pFtuuEei9tgrvp3K+/w9zM4d9W82cdgcWSbRbKuaq7nmQzOstHaOe68AzeaZzu/V6qhGMBzsKfmwRuxFTOMDQ6bmAS8EHkm1nF5QcKC6NkmkCqaUfWodgGcjMXU05KOESyephVJh/2MBVhQ4rhoOLzQGxlGyjXMNS18ZdNm3LppM5qXnZD6fAYPK+OAaJIq3/X72OM9PfJCaFtjroi7+zbhWtfTNCq0vGhz9GGGf35bIFOrUbap63m18xuVX6wKgp+uNw6Sxkve55zbGdRq1fByCcmMS5Agj9xq0/LtHHy3fwBtGTKqTiMZdSXbHnroIbzlLW9Bb28vPvOZz+Cd73wnnnvuOdx7773o7+/HaaedVs/TTWMaNaGLEEHdJlF+RHQMWfGr95wc2kazXTEAl7oT39K2oxKPxyLKwwD82DoIVkk9UY8jKNIgLm27zaKT2mvcuYMFgRiovgH3J8fEl4mSJF6YFRvcB7/a0I+eCMJNWV5VggR3MkHJvW7LxvwKPW5SE5qtieVm/ITl8F1moIQcjhlPzvrowZuk0zDD1mL8oI1xJgxcymQC8pd1G3HwRHpvTqpsu3PjJrx2eAT/3brCV2p4Cqyk9y3HOda1iKttlDDJcQ50LBK+n0Iex4yXsLhcwWuHR7CCDBRXu4RhyLMtU3hUfJk9BZpN6mmTHZ0hKx/hyaJBVOiovJnkkvzeXo3/d+ifgX3FzMMLKhm8gvzJbpRqVhMIOW+wHDfh7Sq6PltMF9oWShME80caRuolgRFDLilSKdsQVrZ9p+u/cMzee4SUqYAzgOdgmcI4i9Dw8UM/rvzOECZPHBVptO2QbdKPNCNTq21bTVhTKoXqhBCOJZAKKUIto8g2DugaJb05GCGXNaiJ9JAtXYQCNVyXCCkrkZKmoGxz/s6l8WyjiTo0A5BIW6euBOeik6k85377ERVGGiJPlRDLmTfE39jQcNEB87FqgehTJ/qrhes/fTZRmNEq+lRqAPZYewLK2w/D1MAp/vnF41JFK2CmyGbsK9u8MhFl2w67LTi2Vw5CJLVY4WlpC8vh2v2uxU1H3uRvy3OOEjfwvZbX4C98pbB/hZJtiCIcso37Bu027Dv1JfzGXuNfkoxuFl7g0DIQiXnOA5878jydbKRBeQs8CCMN9iHvy7anqlYPNfGwFQFtQ50w0uDgp22LX9CLQ9HI4+MbdVyzYyj0XVTxvWs+cKqEfadKMIz05zdcQqpJ8kVWj24ZSluOjz3enu3LyN4upMRLUU+fKnmHeBNobz0Hg7HnVcGp52Sxz/Syblc3/e+ybPxkQz9+s35j7H6dRGXo+9ZFkG0eXjs8mph1PQ71SPpQD8SRbXIrOU1pvTJQF7LtM5/5DFauXImDDjoI/f39uP3227Fu3Tpcf/31WLRoEQ499FB8/etfx8MPP1yP001jGnXBieNqE28GJ8teraskvW3hVWb5mG8bHMbYc+9AeeuxoX097L3AWfF91co5yu8ZgDFeBKwmjD3zHow+9QHh+z22L0CLZeONLrGXNSOoGTNRsGFHhg543Ttd4ZKP1GYlD9CDcznNFVVk0MHeknKQOS4OGjimDKlDVyrbXGUEuX4WCgxNqCMZV+a5rSYLXnvgAgDAVccswxQvQJV8Iwqa9C8Qv5rG3NATOnAxJoJsTkXOkctwfi/TXQk5LKtU8K4dQ+jMt+C0NY5iwjPyTxooqWpthTwzJ/RIPEYZBtoshh/3bcK7pIG7l1jEhoZGBOShniWMNKLM3sTwoEmHFK2Qu3/B6Ch2KZWVk60ofzlNqneqrIPKXyrIpyxeNn6tiaiXYAyvOyBQJHmEVBzZ1tngKug0HRYpdU6YRLqHp8o28FAIdZgASJ8ggbYd5/VswP+c7Yb6LTtO2N8Ly8pSK/JME8gp4fyUbANCIZYHao+HwiOhZfNsK/NkhR8n9yqNysEQEirQa+DCdwaHQLb9sbGoPP7YqouFz3qEoihO2Sbfp3Fy3d45m2XLAAVoSJfGtNDE2IIuqJRp/V5vz8Y2tInlkYjDqGsTIPtRGuJv5nW34F3H7YZ8XnwX6a9U/Ucasm1hd7v4G86RL3eitOUkwHbCy2XClL5rTmbiZI3GuO609QHZZvtkmyWppwGRkGpWHN8GcOHuF+Ko+cFi5aSm4WPmBfhe4wXYdfECYf8KISM1AB8zL8AYb8DnzNODncj9+sac8IKpjDxsbEW7/1nVj7UxUWGqaywTMZDnCBYZSbtiQxPuUdG2/faK7kORpe/2UBlag+9UTgptt6Tz0DNlIRNl6LqhzA7qnEeNM/YWn3Wqd87b11W2aXp0/zLLJYFsMFiT4XBtigWNiuyXUt/0wxZ1Iiba3o2gCRYZ07Qgu4+WxiHcy0LOjTSo4fksNE3MUJDfFEKbmvK4f63sg3s39AtEnQwV6e4h8p3KyDDnU4wj4hAXtWTJ9gAvE4JwGjsXdSHbvvzlL+OCCy7AunXrcNddd+Hkk08OrVL29PTga1/7Wj1ON41p1AUbSSZQShgxeJ1s9Y3gO7ZHrECRDo5xNwV3eUbsue64ZH/c/daDY8k237XNbPMHxx4azUb8Yf1GXDXokG1ZlW2LyxXs06oO8dGshkjix1txFydL4nVmMR1XKdtUCRI4GD5ZOTfy2EpyUKVsY56/DCV0bNGLL2HAYjQ/E9qWjw1TVNeDD5+2Ao9/+HjsNb8Dk8hnqpm+4o9sixsm6QhC5zzkp2ahd/1J+IXrwZfpubnPaJRkMYOeR959/3LMGVjNmopfiZZJoi8ObEEosDTkt5NMmnMAR2qPBEXLEkYUEQr0S30h7tnQh7muevZvHdv97zosGz/sH8BVS88K/S5nRSjbODDIA9WjyrPttBFnQmdN9frbjJBEKivZ5mCy/3zY5XZ8ZGtwHQxAS0MeR+8+Ozife+g4sq3BUxxouvBkaICTN2gWspFyoCKFtYYIgCqVbVh8ePC3Ihutk/Uv/X3LMz2yHmkCeQ+UpZdxP+0pdRhp6rMDpRRkGyUV0mRNFj3bROVaU65J+KzZ8aQoAKBdnBxrEfcr5NlGfyPV760sCIX2lG1ainC9UPiSRLaZXBNsHGifdkP5tf7f/vtWFskVIxXZJu6Tl1SWhy1uRVtjDvmcWMeFXymUsR4R+vUTvo4r11yJvXr2Cu2jSUo+pw8IhzcL+wjZaXl8NmMXgwVn8UH3SA3bBHN/xwWFrFsuOzjnpGLRT5Ulu9SyJ35knIgPnbYcnS2ibxcl23QOPMPnYFXpq/iMeY6/nb4LazY9idlNsxGHf1jLhM9pJs8Nhgaba77qP8lSpMB5UCdJXXLapWC/Rk/ZRtpF2Xcsa/s/2X82Tp/7Dkwh3LaK/plMGFtVEwLsQdONmEVh9f295DBxjKpnsIOYYk5G6ClJZkyf5WxCtiVNnWnP5tNGKctD+04OJiihFrSHfVWToIEL7e8io9ktF8N+Y9nHAsL49433xuxHy+AgSdm2g7eAQV1HjxmfwIe3bsdXN45GnrNW6x8PV668vKbfq8ZnHqaVba9M1KVmPvPMM3jPe96D3t7eyH3y+Txe97rX1eN005hGXXC/YAgudwK1YY8IXwN5mLCZt6sPcOoXnH/zzWjI6Vg1tz1yhVrjPHaV1DHRDSB7FSXh2IkJ3LrqCuV3uUpr5NG87Q2k45EXmLJ4NHgDH06URzT8z7sDFx+yGBv5DMyyMsjRmS4MYp1trpKOkm3MripDGkWss0nMALUx71z30asWYrue/hl6HlGrSXYhHqNW9Ax1aZ3iYChMzMUclzzKMmC33EFzW3tHsNEoCJN9AHh36WFYG8/Gx7ZsgwryOWeZFkYgq0cZGg1xQBo1+fEmBjY0/D/rFH87JVWyqIlOXe1Myjoac2hhhk+0AUDvRJC0wcskqhviBPeujf3QuZpskye/zbYNvv5CYZ89p2yMP3c1Jl4IzNA9MqLoTqZ7TDMTUfrtSw/A7r2tsKfmoPTcO/Eq4vvHAIBpKJCJupcYIS4baXAAMeyIEhK+so28KwzhwXQ4jDTFirSnbKPkxm7B85frZQWG49mWfGQfBaYhH0H8UVWYowhShVjKyrZsnm2mFE7ohdQfXFjob6MK4VTKNhpGqonPpZX4dTEAmkyKKt7BnKzQijCmDxG31NuP3qezv44PnRkQSd7zrUpho6mUbUQdIoRuEoWXd1+k7L96sT3xlDLhmTekcv/rLmd7QbpvdHKuUra579XeM/fGJSsvwccP/TiOmX8Mbl91VbCPpObVECZIQyrSXNDOGhypyDavXjDFfaLKNq/dnSJk6pCiz7NI+3H7ibfjtCWn4SNn34KHP3gils9uCxEcpjBe4LC4Hrqu4iT1lmawEsJjH7eXCJ/TKNYacs6y3X0b+vDTDf1YVInPFt3A7eBaqAKYMyxGkICu0bYdA/8YZdvFrg/aUTP3w6pcB+JQGdob5vDeyOmaso2gNh5cMjpJS7Z9cvmbAACHTgTWGLqmPh8AaNJS4c0X7Y3Pnb8XulvFsUCUsliFGZYFU1pgBFw/16F9AACXD46425IX4ulY/WnvfU2ZeIO2LTZnQmRJb3O6rK4UDE5beGNfGSeNjeMTzU7yCScEOXvbeN4I8QsuRNue0L7dS8rEIxY+vEv23h3VGLuBc5wxNo5uK26uo+Py8lXCtu082UtSRkdDe+bfUDTFtIUhZdu0sO0VgbqQbbfddhu+//3vh7Z///vfxze+8Y16nGIar3DsXkpnylk9RLVBmpX+dEeL3/6xygXqHfe8EDj/u8Db/uZvilJKMAB/t9XKMyBMNmQl2xgHmKbja5s2Y8+pEs4k5vxOGEPQM9KVTe8ONgjfp0t/HlES9yDUs03HG9zw2He6xrNNDTnYYChGrC4pn6ymhUIQvUEtIwP+cL6q+J6yvOOA0DYWQXRxOw8zRQbcjuZG9KchFVx4BMirxifwka3b8eON/QLFeeboGD7YHwz2dde/hE4avIyMHqLMfVXwTKnndQeEE/R8aPDZxEo4bsFxkZ5i8tCZAZghDbDBNNx52p04d9dz8dG9vw0g+l2m5/k/e9egaOT5xHlvAAC3ggnnOfvMw91vPRj3v/NIyPVi0Ujgp+hlMpTN/BdXTOe+KwbAOS6uTuc4x+T4HnjX1mCVtwwDdnmm4NvkmdB/7ZD/wYGTk/jSwNZMYURLZjThnisPxe1v2A+/feeRwvvKAEATFVxtbohHKjJW03HuyBhmmCYuGB4VDNf9AagQRhpOiFJVNlLVO2uQ31EDcu7Uew6WiuzyrvtgFKPJNkbbE64kg0NhpLqRKYzVJASQreXw442b8L2+TVi0yxtIQWg4WvKIn14PzWnoeLZJpSPnP2lsXKlsy+Vksk3dG4QJb3L/6H1afgYK5JjeZF0m/lJBVrZBE+oNnRBTRZZn9I0FQSIkFDugp5m8yQok2T9wH+fZNUuZHelelx26W+iw8iLd7ObZ+OyRn8Ve7UFfo+miqpghHGYWSpBAJtoG56nCSL2wcOa9YzvW+t/ZnCrlHMybCp7DxYPhpEA2eQ579eyF6w+5Hp0NnZFZYS3pHCoSWCywBp7UB0j1S0W2beTdwueGnA4LGtpsjgWmGasEBhzT/EDZRtonaEJ7XnT7CXGhTMSrR8fxg42b8Kk170A+QXHJ/eyxwDmrOkPfTyKoNzaYQLAkKUrfs20HvjiwBSfOPgiPnvpTfGlzQBrO7L9XXAwhKDBxLnDCilnOQpecAThDtuUe0w5ZZwDO2KG06SyseuZMHDQ15W5DYkSDNmOP8MYUnoZAvLLNSNFOy3DquYYlJYZPbN2OWfASQ2k4a0ceC8sVvGdbdObJgqS6pIu2SoNCFw9bpH3xdpf2ofd79bx2/7MqWsabZyT1Vb+09xM+y9YTSWjJtSRGnf7X4FDs940xyjZv1FmGs6hII6xeLphW29UfdSHbPvaxj6G7uzu0vaenBzfccEM9TjGNVziqCX2qBV6DfsJYdDa3aiBP9CI7Dk0Ddj0BaAm8H6JW/hmAe+19Is8Znuhk67Dd4TH2W3Yq/nfTZiwuVxTfO9CFjIJe5xigdWKG8Nssag0P1GuoAgNXDw7j+/157O8OAi7YbwFsMKyIIGjlu3GqRx5GeLbRX+RcGsovi2rQtfwMAMBIcS7sco/w1eJyBXmFAb9eacTY0x8A7GRTX8654AGWBG/wpgE4fWwciysmbDLh/9C2HZhdFkkNzxTeP6e0Wp5FHeVnI6WDYaMQVhICOGZ5L6IWLnOco3ckUE+32jaWzJRWLRnDnOY5uO6A69DT6OwrTxJPWr8brtu2Awe6g+ccTGEfunfSJIjbAWGmMWDV3Ha0NeZCdSlfCUg5BofE0ciEPue2DFGr5p6B857DzWizLBw3MQELurBKqsrMq7sT9pXdy/GVga3YtVLJ1JZ6k9bDdpmBeZ1N4VrHNHQ0BOqINndgnnTfAACagU7bxq839OM9OwaFe0ambMGpEH6Wcqa9NJ5t/oCejqhp3VRkO7Y5S0V2/Wp9H+7oH8DqQg/ymppsoyFG3jM/uyT6bIb4eC1XlZoUALS2OWjmHLuXK0L/w0k7lMa/x/faA2DTCT9TEGUknPG0SLJNyoCpSJCgDtiiyjbpK0Isec9O2UZLCN1ZhWcbPY5AwgvKNrdAVCnWuzqVyoYxcVJbkJVtCw5y/pVJBfL3tsmwKjgyEypVKiqIYZmIEt69QptAQjVyO1EBBgCLBuc75/OfE1HxKDzb2s0cfrmhDw+8sAEz7XB/rgojFSDdK85FAiZxIs5Y2KogVAixrqj2vs8SQ3fLli30r21J/ldAjGdbcMYm2yHv6bOSwzEZ4PQDegGFJLWVp0RkDPvNCt+rM/cKrE2cBYnguyTV1KJKBYdNTjkKZ+k5lVvmxSwKRzwPqQ2iCwBJSzCepxmX7ofzDjBoZFzGBeMWNTRVFIodHWlBCS361tlgwngoV8WU3Y9U8DoVOwiHbank8JO+TbggJrt9aDRCNzQGfcJW3ha5Y1SpOfmXIejPVU/e25bV4yzr/tcdcJ2gPpfxyS3bsOdUvHdenPWBxRgmGcNhC+bivNmz8KdGddby/xQsKlef8OI/CXUh29avX49FixaFti9YsADr16+vxymm8QqHrKT54sAWFBN8LrKANq6MBxOy/9oxkvoYZ8Z0WFHIYpIbGUaK+DCgWg04NQAojQArHV+Tw125f0+xB1wI9BIHWN5fVCY9Y3gRDt0yG3tOldBpWaIkPS10kWwDRM+TpoY8LGi4dHgYlw0O45LN4lBLvhsf8Vb1djwvfuEOvNYNBub5BZQTV0mx4izg4l/grn2/BZDB/THjE/hW/wBmFNpDP+EMwr4UxZy8cg6YGXzFVMRHeIWReDDxcMp5DrEeZQmvhD+QJden50PhekD4vBQ5ztFD+u2ZlhW2TKMhv+7EVz5e91Q7zh0d87c+wecL7w8ljJ1BYLr3R1AsSoP2DqsdH9q6He/ud7ZXIBJDnl+ZxTXlON7gzsTqlC0zcP/6PnS7kzNqfFxWkW1emUh5UoV4eucVCBDFfWAaFrQuwGeP+Cyu3TrHr0WplI9umTTpM0CeGW1POA8RikK7ZzSkIjXK7j0Z5MSbTchcFyYw7ZSebd22jVWlMtDULfiYUQgekO5z9Qz2AaCfdyqUbblMz00IIyUKSkEJllHZRq9nghxngmmhvsmWwhlV/VPO0IH9LguKo1qEUJWL+vjJ98miYYluuwMN+RilgRKarGzThXaAWiPQOqrySERpLJUPpKyQyoXCJtVqLdoWq+pcZIIEchxmhOkImSAVnqGmY9IMwv6abA4zhkz4vxc24N71fWgpOcQ8UxCrNrl+r2QWdMw2LTRyjp83ha8tkWyTSVNKtrkLGPFIDiPlljhZVimpGyVj+x3jZeHczQn1kwHBtUjZSB/mi/3PCyuVUDZS1SIMAMAqI5dUL926rWtMsQIAfObcPXHM7s6CItMkioJr0KfCIgwP/pk1PXTskUUnR5JtkSScVM8NTVzMikNAusqL4e5CISVG2QSgxYf9KhfG82L9PWwsII+/3z/g/0090RxlGy1T9sVpDRym6zYMwG8jLWiCDUsUYvsGIgboapXfzzDZFufZdtlhi2PDSKntRxZkzVDanG9WVXUfJ45PJJYg7nsLwGOFPMY1DU8UkpX4/+7Yu5Q9qcd/IupCtvX09OCxxx4LbX/00UfR1dVVj1NM4xUOeaJxyOQUftA3oN65CsgEiu8PlqGh3pUoqaJ+VUDQSS+qVDIdP1LZxqPJttYGQ/juKX2Zcr94cMAq+5PhhaaJewdG8NMzfxpazTQIs6ZaifqzvRIrh2fgfzdtxm/W96EnQzZS/xyDz/l/ewPJgkaIV6Zh4YxmFDjwtqFhLJwMOjSVPNy/Oy/8gWwNBpf0GTWgnJyNlDFgwYEo51rAyar3ilIJTZwrB61xKQvue8fhoW2JkwRynSqyTR5A0YkeU4aRigP4TLma3AH7bnNIGIpRUHqYWDYilW0GB2ZCDHcIDwTJAE/x/JzfyOooDafuOc//TCf4g7oOPaXXijDPln7zvlNW4cyxcew36UxIyxLZlnPLakFTVtIc57A5AwMXpk7LSsG+ZQVZ60/+SXmyhADrVDok1VvGg+Mes+AYzDWDSWcUMbSye2XwQSYBBLLNBSEydAAlV0XU3Zx396NkWyGyjaSouJcxjiJOKH0cx5Q+KU7KBWWbF3KTTtnmQzMwv3U+3rnPO/HZIz4rEDViggRHiUInxNdULlN6tmUhuE2qtiFEilBHifoqqj2hbXuOksPkHmngIWUbJ2ovxtWkRk7XgJP+B7ji78BV/1Q+O9W7R9/nECm56VH/T1/ZBpapzjsHDpNttC72WBaMchtssxl2pZ2UR3EfOxelqpe8Io6VG/LS++GFaUp1wyTE5vm7nY9zlpyGy9xkSEBMwhf6/imUbbGebRLZZgA4eUlE5k7O0MA5ZllWENqruE9iNlLnX7qYMKq6t0mQiMkKqZca1Mq27QtI1s00YaSSGl2199nG74XPbcWccD9Tedd61yIlSKDkUw5eciO6CKPjT9cehYffL2W8794VhSjVIykZ4LYb+16i3OPz56/BHZfsj9ceuFgaa2hofuFC5W8A0rYoMsEbhhHZJkUm+JJJaFKnk8Yr3j2MIoOyRocoF+ikhDAHkXVmamkhKts0YTzEFxwYe14VvHruk8CuT6INTblAJ6OsWkBQnUfuz8miSJ/htcXSLuRqV81t8z/fsHU7WiwbBUYJeDdSJkXCGwobLDHsVwYrtMZ+n/S2xi3M/bXYMB2m+QpEXci2888/H1dccQV++9vfwrIsWJaF3/zmN7jyyitx3nnn1eMU03iFQ55oaADmmrXJU/M2xwXDo3jN8AhaCeez2dBJJ5C+YRfm2hGt6cn6X3DApDNI/fzmrdhHeyq0z0dOW678bbRnW3SChK+8dh8UDDqpyu5f4xCRTLjAWZNDKBpF2GDCSlyeTsIUYaRTKAhS8WwKqTA8gqGrUVTgXHXs7v4nLg2wU0EIaQsuPM+kISDp+A9aIk6WOIeQYW7KPaZqIGYbU6FtHma3SyvnHFiYtFhEJmCq8DOZ2qPKNo7ApyrYJg44szy3fRZ04VdXH4ZFM0iYga4m22wwWBGDqRw49htzyrmLS2xb8qBIoWyTDehNqRZY0NDaGKh/ctKkLs1EGZBUNvQ3TPMns0VX4WBCh0bIjhwZ1MvhZIBDNFrQUJKmDbuUOL48sAU/3dCvVDBoCrItbTgi50xU6kiTfANcJPGIEifqHF8+5svkeFJbRLNjesI2gQQGSm5A0DuO2xXvOHYXfOk1+wa/1wuCsm1WRP9QItfxJJ+PZ/lccQfyvUmUbZnaKrccr1v+Ohyz4BjxKylk2YYmZFnt510Ksk3P5LU3ThOH0DZZUF+K5uYqFOnzpUooRtuLcBipRerpAtNUqhF8oqxzMdA+T0nAqJRt9BJC94l8tsFw6LLuUMbGVFB5tnGxfvesPRvjz75b8EgU3pfLfw+seR1w3PWJisvy4H6hbcWcdD8i5BYPWYE/VFOuCe/f91ocNRHYX0Sem6o5lWGkMtlG645ItgHAObucgzl6OFsiI+2vn7RCetYWZ0JfqYPDZHlhvLJEkURgRXFWaJsAOUECeVaegjtUXhoCXGiGHZu7G5CzyKZBMacLJNm/0ihcFMo27oY5UtichZRtc9qL6GySzqFFJ3Hxj+97tjGg2A5c9MPwteR1HLy0G7qu+TYCADDJAMCIbDd9glHTQ9fAdC2SVIt8laV+mibLSbq73v0alVJDe3U+HGafoERUvauSp+G9wxfh7TsG8fX+zUIt/KMVLEjZsrKtY1HseZVlceu5XycEZVsy2SY/v+i2NHqutC5n4JrKpQoyk5xHC4jj5eUy/rh+Iy5sDTwoc/58IruybWrTGan3TxPJIPsKHzU+gUZLNL/4Tt8mlAf3R2V0d2HfD8zowqaXoU/bNHYu6kK2feQjH8H++++Po48+GsViEcViEccddxyOOuqoac+2adQFqm631srLGfCeHYN4944hNJB+8MctzX6nkGigS8Ai/qYowMQtA1vxj7Xr0Wnb6GYjoX2Uq+OIJtucCZv6jD0tBXzwtKDz3sN6MqJk0dAAZ6AfoTJ4hmSVMyQlCgCYUtFEo/3a4MngdU46P6ahmCehpkTxE/s097wo+FsI1UhXB15zgLhyycEFj5hd3Qy1acmbKHBwrB5PWFklXmKeIT9dme6Qwo0oqcFZOBuprGzLQjw0GAZ2mdki+hhFKNtsO9ohJ8c55pU1fHRtC77jhl3wJilMRZiIe2UX75VMOFvQhHmsIbUsUQkt5BNGKtuY5k+UZjU6DU1zY6MyzCVqNd+AY3x9k3km0LUM5tEfcvbnOg6ZnMIC01SSbf7kX6NEQczlAPjTug2Y338gxp97V1g5RNBq2wIBoBGyLap+tBUI4SqTACplmxDeyzHlvu9NBQNvO3oZFs2gSTdyQhsZHdaf8D4LZFsQRpRpSi17RZFaLajCuHNsOvGe4A0I3XY9l8kncRIN+LJ5Cu7BQUBnkC1RIDkkZVt5+2FokrL7FqiaVVOr/2ymhd6REvK4ddNm3LR5K2abVmS9plD1b0qyjdaJ0LsZfL7rLQfhGxfvF1oQSgU5GynXwWwxzJHzgkC0AZIStHc1cOrngJZZiWGkvNIZ2tZgSL9ZfCT5EJzneTsgiw3NAPQcCtQ7K+rcOfKsFQl3wu2mqGw7ZI6TBMIjtXVNxwEF0aMUgEBSem1viFjVDTQV6DgCGGxaLJzzkqFgrHTzwBbsNzmFj8x7lfra/HLKyrbgHBzhhRenwOR+HfZu2EmJHyQiRs6WqcLW0RLGSXKBZ/JqOuiwiUlcs33QPbA6QULnZDsAYH4lIFHos9t9TnQoZ95I8Iglnm1CGVS7MjGM1GQMFo9epPCvQgsr20qz9o4kVaK5HrG+0gREeTM+wVqUss2rfyOQSeQEzzamYaU7JJ0RsejzAu/FxcOjoTC7n5RO8P+2wYTxM4sKCY9BKOGV79mmoQnRi7we5krEUkdq+x5aT51FpLgw0lltDdi6IhijahAT8XS7UTBp+hIKmzPYpTmYWH8xPtSfHEmjGu/JNgRUidpi2bhpyzbMqYhk2/JyBaWBM8CJ8tnDB2ZMR/y90lAXsi2fz+O73/0unnzySdxxxx2488478dxzz+HWW29FPqITmcY0siBKlns5CZfICtplFCQ1TTU+ZwxOpp5u08LycpT0KCykTosoDyCG+NUeQ6+N0mLe/8fD5sscwAPFYMBmUD8d7u0j39vqSBsV/NVPSyTbaJYzpeLHUgwae1eJx3CRdiVNvZpJw0idAV9aD7AoOLeMkIHljvBOFiXb3HtMrumaRWdgn5ZF+IybAcy2KbnohaLIyrbgc5Ya5ZsfywkSFAPHo3bvwT6lYAA4kwxUDQ7cZR+MNkv3dTPtcpY/hYpHfn7yBItDExUy0uQqbRUVPdsklZs7mc1PbXf+zRegUbItwY/E4Bxz2TZsRQfwtofADr4ydC108ubBV7YJ54q/oKLN0TG6GLzSGfagWnAI5rqTuoMnpoSJqZAtVTrm+Nq34Ddn/0YqnBxGGia4KQmsASi5k+XAi44cQzMEYiEySUNSGIri3U/r2UbLEgUxBDNMbFdUQY+cozmTRynHJ8zzcS27WiREaTWXjNZLW07CjbPegU4S2t9AyiWSbYSIZ1rIr6vMDew7VcJRrr9nmv5UtQihyr5njS8OfiPXz55A5dWSZ9A0hmOX9yYSpSFlnyKMlJJGRlRobAQ5Hemb5p1foY4qymGkgq9aUENs0hobzAA0Aw2kDYs8dyLZFlYABx/KmN86H/ce9gXcPV4Azvqae37Fuci1ee0Vk83suY3Pn78m+AyOx+edLyyMFMk17TlVwtcGtmBpYy9iIV1XhbRMzqKSRyYF+wh+ck3dyWGkUu0yUpBtZcvGOE9OhvTFzVtx0cio80EP96MWNMwZmYNPbtmGT2zZ7pZHzBze3EjOc+T7hOPnpYzYIbjPbvOI2yfHZkFnQrIGcAYbDFNRi8dCGKlMlOUivdnStsJU2ZbU5wX+juqx6qhMtiWkq2Rg+Pq4jk9t3oo7I+xu8hDbTHPLsagM7Q1rfKm/jYPBjPGCTQMG5/p2wTpnw7P3AUhPWrXVwRvbZCyiDxC3ve+cI4TPOXK9RZfwyurB5j1Da3xXnFnqS9xfNT6XPRXp4/eINzE5CN0/vrwrpj3NXhGoC9nmYZdddsHZZ5+Nk08+GQsWLEj+wTSmkRJRFfWtQ8P42YZ+HDYxGbFHNHjkB+rVkL5h5wBu37QZ927oC1aWlx0v7COvsKtW3KOENFEKG5ZUzhqVVP6Rp8LEZgsT7ztVBXmdkOzBRT0XqiHbxnc/x//bJ9LoZI8xYAfxdePhAeIua0/B/HIFN5J086IaKa2yjX4nXsuc9kZh1dvLYBcrlEqBNx6ySDBhtiuKVTKiqFORbbOK3bht+ZtxrD8ZpiFlTuglvRoOJoRSZHlu/uCFTtb1vLJedjcXkAPw1xc24J4NfVhCMt/mOMfvrNXC87h4+cU4As34+BaPCA6+81RZ4dVqMvlzr0mcI4vXlhhG5EKLI9tkRYCeE7Kl5Sw3LDZS2QYUWHAvguQPwf5jPJzVyifLcoQQT5iuGAjqfKjNyRXx/b4B/KBlH+xSqUSGW8v1wy7PwIxGMRNxdPbf4AnIZJsX9uIr7uhETjNgEoVrIeIy55SSqGJCMvOgDkXRJatnrAYAnNswn5QlmlyhhITuWgBQ5cQgmsMEr1mCAeDEsXFonGOPrj2QHpRsC/5mEtkGALquC8+O2gLQcMRlLKhPNguHo8nhzmmynaqVbSLuO/s+WIJHmrTDqqBv8MIkZ3c0Jye1CZ1YzkaqQRPINvW7Wsyr61ZiggQF2bb77DbFjmHQ/lR3VUI0W2oqZZsiuYHc7zXTUMdxp9+ctehwFK94BFj5agBqso2SlM3ueEGTHxy3hKyp+kV34bnZp4YsADz4bViS0kf6nirbbBCShdSP4rZ/kMKzzMq2CSQQWC7kdyQR3jsmJUjg0HHi+ARWlIM+RFQhkvPkRNKoEJEx2YPX/v7o733hY8n7MnE0a0uknwwhjFTqCzSNRVqe8JQDKINc23MJog9f2SYtxHh9WiX0fsbXCcYY8tBw/MQk2j2ySmrUJ6Xg1sntR2Nq09mgsx0NXDgTq2Is/2zeCcf2R3R2oICcw8IL6DLevmMo8zkBCItau5XK4GCRRJlPaMukKx3Puf9mFUJkbfoZwhmIPzEwgu6ygc8POO0efQoeGUrfjCwlnPZve2WgLmSbZVn42te+hgsuuADHHHMMjjrqKOG/aUyjVsQ1XvNNM1rFEANx7UGtbMvasGuQVD/LRFPa6KCX+G1xcAYIMb+qxliY/hzcUfsoBjnzmjheNTbuf1ZmI5V+U61CykOBhogqyTYNmLO3/7GHDYWOoVvN+FnfJhwdRdIKg5p0T+SxjSIZeeKKWTh9r5n+52Blvja2bfGMZuymbQg22Iq7qAVhE43euzG0Pvhez0E0WpbINslk2cmKRcm2KgouK9vkidkR7/X/bOIcc01xOmuA41WrZgsDtuZ8Mz5vzMOrxl2PIpVnW0jZJhpMAxJRlm8W9o9XNtBJbcQKNNPDnkhaDjo1cDaDidJk37nIaTncsOtrFWcRIYQfKiZ5IU8rxIeRNtnO2xm5esw0NHOOXbWi/9lDsRhM5EJKAtWkWZ4ok3bKy7NCMxRqnCvINlKnNAMPb37Y/xjVJ+w1lqC2l8K0AKCQj/YeOn+38/Gtk76Fd7cSr01J2RaVXIDBIbZNGFgx9VWsmPqqY2Ytn6vDWbz8+NbtuH99H/bv3T+y+LbZArvsEPBhSzORnPR/4z5vXdeE+tFAzdfJNeyqBc/a1jRcsdcVWKwV8T43s3NJmkimUVGolG3ylp5GMUxR5W2HY/4bOPCtQJcbPsu0dAb0FNL76iRIIAoyqJVts9vVaqXELLkKsi1vxNwzIfyPkLeuSqhAlBiRYfCUeHno1tDX8vW95ehdosvjFUtFfpFrO0J71CmTYj8aWqrP3CNE3hi7nx787X2RSLYFddbmDBZZeHP8QcP3uDBEspIzPZlsk+7TMJpDe9hguPLoZaFtmeCHkYoLgfJxZMsHoS2S6kIuVqmGcL2MiZKQDfLjMosDQeRDaBwApy9tgDr0M0FUFhwjIaKjSwveIa8ehEKn3e2yyo5b6igTAXJ71iiGim/gM5EEBo5zRhw7hIMnJqteODcV9dyGhl20ZKVXZ+okZrKQILiXx01MKMk2vwr4SnXxezkRD5CuLylz+o5kvGeKKrtb2cLb1s/GEa7fNj3imNtu5UkzQWtLZWR17OmqiaLa2ciqHpxGMupCtl155ZW48sorYVkWVqxYgdWrVwv/TWMatSLp1a+maYhbIfMawKiVag9NlYTBinQO2c9Dq8O6xmRSOEJMB21Nzkk8vjO44cp4umvfcilaiMyceix4suotkhmoEG5WBUlKjdj9FUdZ2bbH6f7HQ7R/hY6hXDEXnLezN42WnMRDYzh7n0Dh6yltElUOBIfvMiPyu4uGR3DU+ASsyXmh7+jKnH9VT/2cFC4nXCMdTDohoxqGeDBpkFeps5i1/6t/xPmDDn51RRjp0qNDv6V75DiwZkEnjthNGqQKxFZYxROejBDlkvv31tEScNKngH0vBRYeIu4fM9mimeiEVz3k2Sa1I1ZJDCP1Mm1BgzmyFx648AGc0BMQKt5w99Nni/2poNJTKAFCYaCIfud+vb4Pv9rgDL4jlUjeRXrvG7nOlUsXBucN/VBFtsmebWIoMwDJND0g131hjEC26WgmRKnqOo8dn/DDvi46wFGiHb88uj55dWXZzNZIZVtOy2HljJXIU9WHdG1fOuZL6Ch04NOHf1pQ/ziebc75xtCIMVfhFiq5602owfHMoSqgXQgJtGrzbhh/5hpELWMIzRqZaHsTGKbpwn1roIk1Iq5vecVGb3Mvftx2AM5zffJCyrYqyTZVGKn4G8X3h1wNHP/R4DOrInBf9myDJnq2cQ5LQZAZEf1GEtmmCiMtz1yj2NOFoFAKh/pSZVvkYgElWhSqdVlZlEReAGplW2djUNavm47SX+VLS5+SwQxYti1M+uZ17opTFp+CCydJ4GZSX6rLC3OkjWHqibtFF1uYhlfv4qj2VhsRSsMUqk1t6dG4+tiArDxm9x5BnZ4KigQJhm6E3htH7UbJNvK3tJCUSyKBmdPzLJ/temPG7H/CytliOSLur4c4ZZuuMZys/9X/PEbGuLSe/OKqQ6OPn5BR8ojGuXjt8Ag+s3mr33feZR8sXoN7Ltq3DvcejA5dJE6VSCDb0kADx5uHhnHLps34zJZtyaR9BJT1XKq342vfirnaCVgmLdrZcuN5zH87/y4Q7xW6lgof6bsbWMpAuc87jiNEPvFONspBohfdP0bye3NqOWj/ZeLoouERh7iMAAMLtZlcikFSRSRRJT0Np7YnFyDXf02kfYzsaT2N/0zUhWz7zne+g+9973v47ne/ixtvvBGf/exnhf+mMY1aoSWQMiM1qreiNGfJZvbZaEB5b5WZbtYwQ1lFED5g9IB0Yt3lWLbuuPifAyEfKw+dzcXIyXsUkSh6tsWeOqJAwe+/dvEBzh+WF2Ln3jwjGDBMKMhI5SCQPmvF5COiMLHf7jdrP5w6OoZ3eybHALoL7YlH1TWGu996MP7fa/aO3OeaHUO4acs2QXGRsljOoJkM3ExhEuKo2IYRrN5yMLz7xCCrEn3m5+56buyptgw2BOf0YOQVspvwM9luBxOcHOdgTPFO0uNM7PD/DMJIJWWbYNjtfHfn3/uA/S4FXvUpgDGcaTrv1BHjE6GQAv84o7uhMniA/7lkkhXgiGykPgZfECav3v30ypPTcsgRjyYvVOGsvcXMmdSzzYKGnM5w47l7+ttUCQ6iFFozLQutvi9KBLzrsi3xM4B8YzC5SaVsk9slRRipTeolDSP1SRaZbMsFk8l2hdfMBSOj/gTq7cfuijvfchA+d/5e4k4j/aQcQbhuZFY97zoiVGMAcEDvAfjdub/DcQuPEya4TuKL8DNSEiSEAKI+XM00MyjXARjoaMyBMeCm8/YS3g9BfUnqpHedmqYLYcYNhNQzpHt9/7qNuGtjP+Z6szFyvJLUJlWrbNNR3YKMAJacjTT0tUQszetuQYnEokaFkRq6uuEtGuEQb7EACmVbISYc0STG5kJ4uXMcWvrolDMEreFFN9nbUlYuqaB6ht3NQT/yHHcIGZWyjZZT13T0D02JE1wG3HDoDbh2nCysJZEP5Hun7QiejxNGGi7HZNuS4IOex9V7X43PH/V5fL4t6IsZDTdUtW0dC8XPR71f+Liwq0moP9/bJTCGP2vZWQCAt6x+i/payL1bPrcD15wkhpRb0EQihd6j1ecBS44Gjv0IACCXEEaq5Zz+9LLDFnsbIvdtbshjAfFY7So14qCl0YuFcZ5toWMzauTv7DuztYDdZkUTakZCptUHpjbjXTuGcOzEpF8PfmntI+zDFWRbWzGPh94nZphWojXBTzAFGDgMAAdMldDIOQ6ZexiWti/FaUtOy3QcVT2Xk7/ZU3OxRD8fLUkE9iFXA9e8ALzuJ87nN/wKOOZDgOsj64G+uxqce9nBRpX7zOsgiwczA4W4vv7PwjEAtRKst00c4z/JA0sHef9rdgzhZmofIyE+IZZbFkWTSpX09A7ObmvA119zMhpz4UzNTvlefsicUGgaiagL2ZbP57F06dLkHacxjSqRVFEnazXCkuA30BkOy/MKabmsbJM08Oow0mzXkuiHoxgA+2ngeR7FqegBEeDee87VAyKmCZ1M2SR5BN3N1253BmwHTIbNspP8o5QoBVkG25rcTtZ0V6q88BrGgEt/g/87/HaMIzzRUSstqqhDdryyUWMaPrptB14zEgwynh8LpPtHeeGPk+KqsM4YVs1tR0MuYuDTHgwmMq+QA6Ew0ooURiqHothgWDCjxf9MSdKoQURwQPc4sneMPKhTTMCYVFdWL1sQrs/08+Ba/0+PWJAHlZYijFTGtRufw/9s2YaPbtuu/L51eCkmN75eSIBRInU/pLZTTFLoxNS7n0J5Upj9C9fCdTDGkCN+SEqyTXkkEdGhDdHKNjqp00MjSMXxQmGkYZ9EGvalcY6FbDMAoiASQqQ04Z5Sk+KzR0Zx3/o+7DNV8t/9xryONfM7UJCzPj71M/9P73k4CRLClwAQ4otej4IE8AbxgmcbV7dFtupc1PSeHKOJTJindOe5XHzwIjzx4RNCylhhIkFCEf1wal0XwkgL5DxyNtIu28aSihn0C0RFJCvbqs5GyuGH+h/Ye2DiMZRgxK8oAqHqKk3UX3/IMizfPehHvOzAMnIRZFtUciMfSSo5mbypBIoPZoz4f3v1n5YiNgx+haPawmW/C30lK/dotuFIKMYaVPEZhO1L+y05SiinznRYNodwJV492/1UWqj48pD3sCIRDgZXZyMtdxDVkpFHXs/jiHlHoI2EHeapxYLi2eGiO8XPhRbhY2NeFzOGtszFn8//Mx55zSN43/7vwx0n3YHLVl0mHsN7v8h7YhgGOpskJRKY2OfJ9g2vuRM4+ArnYwJZaY44SaM0xTseAtOwW7mCt+8YxDu3D6K93IiVc0U1V8NUR3A5fvnCyrY4eEPoJA6eticHKZRMG81gTObVA3ks5b3jgmqc26kIGdkfrxrIpEch14g7T70T1x9yfabjqOq5DQ3vrlxaXcGKHcG7N39/4JCrgMVHCLusbwraJQYOzhlmMHERWxmuSH1FyeX7HtAZx7t6RjpL5dnG3W+CfQJ4SbzomNj7/q7/Ohh/fs/RWDW3PfJ8/UaaEdk0/t1RF7LtHe94B2666abErD3TmMbLCQdNRKe99jqB7pqXHcTOZCuXQxEU70xGzkfVYa2e24bF3U1Y0NUkDJDspcfgq6/dBz96y0Gxvw8VJ/LdZkIj0lMmk1333wtHxvC3tetxi2suSgeZSYoDJcY2k9NLA12TDKrm7I3hmQeA3lBPsp2obEuAteVomONLURnZK3lnCRsngvJ/ZNt2vG/bDlgbLhD2iZq0+ejeNfhbRbYmZVxs6RUmKlTtFeXZRlVGlCQtJGU08w9ClF9N3eH7rToOuQ5z6SmYO6MTaJNUGBEDX2+uGpeNNCq8rcg5Thif8JVeMmwWbhgqFmUgu0j5FMo2QAgF9NQ71560HI9+wFWaajqu2DGEE8fGsc+UOmMVrccWNOiMCXVHRbalqeWRYX9yGKmUoMADJ5Qe41x91jhlm3caKYx0T+058bTSZPuSlZdghsVx+eCwMLV+1dgEelzvGd+HLc4Ty4XtT8JYZOi0TxzQ+hwTcmekUbYpf0mUVeQYC0h4I3fbAl1jhKinodXkaET96yfE0LToMFI60RaIRY9spCoiOYw0hVpAGUbKsc9UCT/qOAQ3Hnlj4jGUYFpiNtJQqJREjmt6DhfNDsg+LYKoiQojbTSCifclQ8Nosyx8aCsl8pNUctH3zxxzlE0LWxcqv49Vtr36a8B/DwPN4QU3OSxdFfoZgopsyzUBs/fCYOdqDLl+ZppMcGuGUE5DM2BzLo5N1rzO+XffN5LfZSHbxHdSJ757NNy+85TrHc/Xk8WoHI280z0CkaK4L11LgDZi7yCRVIWcSLZBy6El3wJd05HTc1g1Y1U4i6wWDiMF00L3XO6749R/WlJ4s+0QzEolsQy3HBcPj+J1I6OwoWHl/E68i6j6G6aCftEnwDUdWQa9pvscI7pmH7SN3LsnHJJ9REugYPTqesizzb2Px60kivJEDz8X9Lns+qp0v5EgRr64bXQVwgLlgg40fM86EntN3YyFU98KncdD6iG6VK4d+WB+pXHnOPKiB/evSThQ8DuyNQgjVV//1ceoPSWXaJtiiw0A5nhQF1RiB9lvjparw7IVZXUKS9sVLWJMNVlzVNY0/h1QF0r1j3/8I37729/innvuwfLly5HLiR3LnXfeGfHLaUwjHbwGrZ44d4hOYCVJtefZxjTct74PGud41bzZmIhpGDtUvf+mR4WPG/kMYXXnEbseitBw5/CjtxwMDneyTQYdWu+eOGaPmRieDEJPUpFtM5cD6/+i+FLDTBI+tydbj4fgEIq0Y6VUgxBG2pRsEqs6p4+EwbauMXyych6AnwjblWRChkGMtf1wlLYnhO9GYFnrAjw14iiwWm2O80bH8AFLJGFzSUQAJa7ItVw0PII3Do/gyJmd0g8YhGFTriiQHbJnmwVNyHLHOYMlZJENDpVMtrm/mxwKNjW0h5+dEb6fGqmbrV3u5OXI9wKjA8Dq893Dq+9VVDbSJhKS4g2mP3hKluyOwFjr84DkLdyYJ9dTDFbwlZ5tgGAI7vWYXS2NQGMwqbp0eCT0OwqZbNMYBGWb0tOqFvhkWziMlD5Pi4QRalHti6ZBqJcKzzaTKtvIT3Xl5I+hp7EH9w3ZYCPD+EtDUC+pr6RhGHjV7r2pJi1e3eGMoZG07wvGm7CuyUkM45OmlDyMmZTKyjYV8a9cuIxQtuWG1gPtre7vnO1RmXFpneM6ySjqKY5Sh5FSRaFbFhpGGqFs23tBB54aGMV5+4Z9JlXQXRXz0kpFrRRZcpTzb5yKhGmJ2UhDZKDcNuUb0U0U0pypn1saZdux4xO4YnAYO+izUCik8zRjZ0xdtcZ2w/jat+CO914YbHzzn4FfnOccu8pFcLmP1NO8LyqyTS8Al/wG//f4ZuCbTgKTUFZFzRC6J53prsKanNNrU+nCRVIYKSG5xiU7iQbOfWWwrjGY7vvNmmcAl/4mfCym4eSxcfQbOhb17IYNI08626MiCwRFmaiu1xgTVVRJiQqAoA+h7QwLq8LkZEZxYyRuRntXAUG99B99grKN4vgVs7FkWQ+Mu4NEB3SRqsEm7X4KAuvEsXHc09yEgW2nOGVLqNeUrBybvz/w+BPC92taFvh/e/VAHit49S9H++9q3icpUVpaCOTUsR+q6hiA2s/VqyMjWpvAXO6qFfGwFSQ9q8Ysfyg/S3jWXhjpvdbe+ETuFnJsByyqvyLHjAsjBYArj1mGnzzWj2e3jCm/j4PR9Bw5fVjZJoOW4Ek3SzPtY7yyClWlzkOxnYnpBAn1R10o1fb2dpxxxhk4/PDD0d3djba2NuG/aUyjVrQq/HdqxeJy4C8hZzgKBpoMPZaFbtvGe8kKnYddhwKy6NgpM/Q9NjwofJRl4XdZkskosrfJeZW9j8YCVQsdnDIvjCPYlI5s2yMijJThzNExnDsyips2bxU6nCjVmhBGWs2qDh2YJfhL5HQNa+3Zoe1KZVuMT9s/7YXCZxVZFxn+u/+bhI/t+bDPiDwYSrwvx30UKLTik5VzhcH+8lIZ3ZYdfqaqrH2TO8iG4GHZjIXCSLkUmkL9q5JDpNzfzSSEFmNhksxQJPqgBJ83eSl2AOf+L7DbSd7BlKf1CAf5WdN0915d7GqWCENVWRKwzwJCsBHVECa2KZVtAmHi3c8Y3y8VZP85TQojFdQxZ3wl8XgeopVtnlwwPox03A7qRCzRIas0XHS7KjSbkG00LNS/LlW4pvtM6TcF8tuj9+jFF2Sftgh4dYdDE47RYBEy0XtX0z47GuoKrmx/s4RI6eC4dGgYy8pldA8vcrbRx7fosODvWauCc1DFMw+uQchGSq5DDCNVPDcaRsrVZNv8zkY88oFjcd3J6cht30R9JEKd0LM78LaHgXc8GX0QTY/MRtqSb8H79n9fOMyUMfGdzTWhkKMelup3JKrdpl6CXnAkbfEXtDuKnxNXzCJFSFa2TaEAgMGemo9W2q8Q36NUnm0KyMo9nYaRzlyh/I2lGCMYmgFoGnJEzRZSbUl9gcY0cM7FftHbh/42qZ0m9XcTd+7xnLJTxkMnJv16qVIAq471sa3b8Y1NW4T3InoaRRe3nHK+/qCFmNNexAX7zceqeWRBLMYLLbSP5J0o9+1ZlG1IGle777F/e2L7JLEcS2a2AUzHvlMlHDk+gUuGhmHpAfHW5Z1brgtHXqc8+se3bsd96/swNebUvT1mh8dRFA1kMUEl9GeKxUaZyPHbZnqPq1G2Pfkz4asfWocgDYTSpKkjEYhStgHAb95xuLD9otws4fNcUzGvScDv5l6O+XZAenlLavIiDP1eBdou9xneM4oeG6dZEEiDnHSvGWO4x9pXWS4Pa3kwz1CNeZL9v6fxn4y6PP3bbrst9r9pTKNWJHmuVKpoZEUlWsTvyXHbpRTYf1y3AXPHggGTmvZJ8opRkDYZr6UYioGRQFcjWViKbieFHMaBacgBuG77II6amJRWoiJC8EAnm1WcWyDb4puwtmJOeY+VZNvTv4w+pfQ5U7rublHe/sE9r8CqGatwoxWQM3IZVVkkBczcA7jmBXzJOk0g23yKuKD2GvPBdGA8IJ1krxJ5wG6DYXFPMLhtyEC22Wa780fHQuBNfwLe/mRQBrlMcjFpXYkiViPqQFQ20l+SQZN33aHbfdi71Ofyjl0OD/SF91ZW+6Ul2wTyKdkjSVS26dA0MYxUUDitPhc47UuJxwRSeLZxlbItmIhNcEK2QSQRxMNRNZiGGw65AQtthk9vceqmScNRyc9iw5rcMhVJ+0497zTNSN3GevfBhoZ228YhE5M4aGISRYuQgN41JHi2BedPVrbZCWybEIq64FBcMTiMO/sGAFe9Iz73Cxxy/rxvg3UuCrYzWnfcfkHTBSKdKtvEbKTxYaQVGKIy1r1GxgBDV7+vKqWK5t3bNa9V/gaAE7LXELOoG6Fsayu04U/n/Qnn7XaeQKQGJyfXm2+EQYidLstSZ/+NULa1FYLyNbn1kpLHHztjP9xwxkp8imQbbmkwAvXu4e9WHvcZIzkrYkdDR+I+Ksim6rzYAezzRmex47V3K39TUfT53iST3hsm1wEpjJQxBtuWPSzdvxu7AqVY757xF0HqpHes921swA83bsIe5YqgbEsEzQLKqNLJOW5rg4E3HrII377UTZpD23y37vz3qcvxx2uORFtjDrtQc/+osPOjP0j2cevjtqeDbcxTBwewwcS6GdMW2T27R34HwE++5LeXceOtkJeq7odwf27LNlw5OKwmfpkOYYS1+jzMaS/i3gYxcZcGuFYATlmuODq+7tNxicWt0PdMaP+8RRX5Xiqu1x1//uaYW/GlgS2hr/12kt4PiaD7tbV3ZLlbChE+gykSlKjw5sFhZVt15O6z8LMrDnGsZgjyTKwvdKw3v2U+0sBkObx1MFi89haV5PurXugn4xdSLf7e4LxDtE3wxhXvPcmpxx87ayUMjeG9J+2WqpwqMDAcNe8oYVtHYx7XXx0kLFH1J+vtYIyjgcPmokJu2mbrlY26OfOZpon7778fzz33HC644AK0tLSgv78fra2taG5uTj7ANHYyXo45T+qHJwrVhfR5CJEpPDy4kDuGNpujrdKIyY0X4F3H7AsMpDEbFc+UibSJQD7p0UrG1oA4PEuUDO/nGvWqOgs5AQTNKBZxOEHZxjQA4YGQjDfb7Xhy9Wwcv3wWwF8HrPsTMO+A8ABk2fHCx+YGQzjf4ooVKkMaRIUXUMxuj1hllwa785rn4I6T7gC+Gp3RqpBLsQ6ieaEPYbIthBm7A1v+FXxmGjA3yLyl8iqhg5qvvX5/zO0MTJ67CPHckhPNnz1ct3kS19kXwJ4iHmuziCKiPCr+oKiYFFJlG4vorhLCSOUB8zjIirf7byjcMoHEZbbT3sxua0D/sML70ZS2KSY8dKUzULZlG1zTQbQfRkpCkEOk7fLTgR9LWe4UiHw/4pRt5O+uzh4AG50yMOAz5+ypPp5mAFbJ//0pS07BKb/8GFBxjk/DUend8CfHqufkCXppOCRtuzJMWrz7wJkTDPtlN4vZxe0Lg7Ios5FGn4MJqjT1hC5pXC6QbSSTpKdGEsgDTQMOeqvzJwn5p9lwgzBS0bOtQM8jK2r8Cwor2yzoTn2E6JMXpzxQTsS9SXIuu9I0KB9TKlss2/JJhIMmp/CvQkHMfKrnAM9tIdcEZpXx4439KDOGNjsqQYK63WCM4dbjb8XAv76PhWv/n3N48v1uM2Zj/7kOIffge4+GxbnjuXfyjcABbwZ6V4sHfMOvgAe+jE/3nQ5ERE194tBP4Jcv/BKvX/569Q4JkJVthsaAkz/j/BeB8niYfGjJO/1DqULCyhTJceTnb4eUbe5DzDcBb33QGdck1QstXMdzXMMuFefBqjzbIkHKTNtuzyfx62/YD2vmkz6sY2FAjJF3Q0lcRamW9n49cJ8UPtj3kFim5+4Tvra5hjFOwlbjyLaEttAPI/XPR8pMiUD5O8Bpd6TjK8eamg7km4HOJYBVBlpnQ9MYjlk+B/ibs8vPrP2wB1uHzpnzgA3OtmJU8igXNHETVbl5mJVv9//2FOJy+bxFCKFmusTZjGI3WKkMGf55VWTbW/8GbHoE99yRrj37Oyc2M3teEL1jDN40NIxPKu774p5WYLa4SMEYi806/MaVb4z8jmLJjGbkNojJ0ngorgfII141R0t9oWupQZ/Re0/aHR89Y6Wf8G3N/A48+ZETnAUdRSR4GjhJpoL38ayRMTBmoLctqE/q1iLYqgP4oXUoiLMyRsoj1RVoGv8RqAvZtm7dOpxwwglYv349SqUSjj32WLS0tOATn/gESqUSbr755nqcZhqvYNRHHOxgwcC++NfYEWDaNZFnoGGkceBgMEdXYUnLSghdsjcwk2ZNz/E52BPPC7+XkfVaWTTF4kBXkG3kJPLEumgZmHSz2u3WuRtw0v84Xyw/A/jZ25Ul8K6dho5GhY/RSYoz6HYmVAbnMBWTsR9v7Mfi+UsBL/SLnwP07OYoxkb6xZ2lgYKhid4ojHtkWzZRbzi8IPz7V+89N7QNAFCSSCXvGmNm1JnqAFW2uce0p2ZBaxhwNq48GzjyfcDn9gx+o+nO4NaFfH02F8m25XPahMlGDsBnF5yJ0Tl7oqepR1msNeNApbR/9CrjY98L/tYLSs+2Gc0NAJz7p0et/keRbcwbKEsDaHK/vO/SzLUAoNWyMKLrmBp3VlL3X9yFH/29L7wjUQ06hZGu7Y33iso27w+VYsiDlzmQIOzZxgSvp5BiI98EXPRD4E9XAwCuXHMl/rXtX3jjc38DsN7fLZKA9z3b3IE0nTQT/5+lc+YCow7ZxsBQzEcM4FVKPhKKZ/Hgvmmc4ybzDPG6VOTNkHMdTUTZ1m6nDz2nCBIkiHVszfwuPDTqJDpRJkhIG0Yqm8C7SAr9E8JISd3ylIBRSp2CoeM9J+6GyYqFlkIQeuldJ9M0YVAYqWyrEK8nn2yj5XDaj5xEtsV5CKqu2bd3MMIZpVODqYNIaSjj5UPD6LIsHAqi8tBFZRvKwOJKMDlUKRLjSJt9Z+0LbHrK/9zIOT68z7uBfLOgfOtpJRPxXEOYaAOcDIDz98frntyC+7/+fzh3n7AH3kmLT8JJi08K/zYCQS/uQFa2pVF/lZtnApPrhW1eeGv/cFBnwh55Rsj7861HLcXP/xHxHrWnU9ioPMY4YV69cmRVttF2545LDsLElCESbUCyDcDoQGw5nfPQOqYiqjRgWOx/LGgYBfEwjClHYoixu9jhv7f0/Z23n1RWecEqHOI6uzOP52R+ytvnrf/njInc+0yVZ18yT8cTfD5uP/YA4FbHmiVpQSKn5fCdk7+DilWBzW3c8g/HK+xzR34Oj217DMcWqGebc6404zyfOGMaWhQhpcOlYf97eiQAQPdS5z/8TP6ZDyFiFZqfvOCFgnpRU4VGoxETppOxOLy87p1I3Q+qwh3/3+GfxYPb/4nTlpyW6vyr57bjiYeJUhVwk2yJx75c/yk+YZ4feRzq9zrLt5YQr8Uj2jxEKafTwrOhuHd9H37TWMTpY+NAo5hARnUGRsrFOPAcny2QbbWgxbIxWuN11YJuM1kQMY141IVsu/LKK7HPPvvg0UcfRVdXl7/9jDPOwKWXVplaeBrTiIBWoxy3ZbwXvNIFRPi6v3lwGNxTv5CeT7U6vntvKxaXmnDIsm6x93+915mKZb3ZPAVn6X8Ijqk4f5oIJ2Fg7P5RzOmYrCgaRVUYKenEOBgWlStYm8+5xzEw6SpXBB+yRuoxQg2yNV+BQLsDeYrjGezTAQ0dUDXbNob08ACggXPpfCyYgCR4vziD6JRhpBF4/UELgYeCMlsRYbdRqgbM219dRhLaUDA0XHPCbvjwTx93dskSSkzII+9XvNQDeGTbWV8N/4ZpoEaFBVSEr63QwIiFKuYxHXsAy87AUzueggqeKmnFnBS+nSpVG4CupgbAFYnlohIxKEJEgICzsSQDa/rs/SyMoYmC+v5/r38Avy8WsX3NW3HfE4O4/vQVuGD/+ZjVKq1U73Mx8NcvBp/pO9i1DJi3H/Ttj/ubDJWyLVUYqaRs00TPNvUkkuELA1vwaEMBb1jxBmdw/bwYshNNtsUo2wgZY+SDiUGs8FaljCPXbRFPOg3AQ7YzfI2dHDMN4DbmmyY+eOAH0b1jHdjaD5Nypn/37YhJGF35bvDCC1OGkVJfqxyiwkjjy0WJohzxB0xDal1+uEuy/zE4RpCN1BDDSMkzFci2f/4w+FsRRuop2/zjc085F1ksRGVrAyB6IGYF0wS/SQ/0egrcyZqNFhLaR6831xjUeTgTPiXZljQhkurFGUtOjQ+BTcCRu/Xgb9cdE5pwVgO5ysnXFxUiS1FRKM3yLgnbXJD6cArNwN4z98ZJi07CorZFAIAFXU247Ihdgd8nlz0S5H4foT8KVOR32fm7IUEl5ewqLxI62GdBtzpJ0LEfAV74E3Dgf6mP9/QvlOUUUGwHVp0H2BWgWbGoxXTg4CuB53/rb8oxM3X4YXJom7Q4myWM1Dsv0/0++rny84hEKPtq8HkKjh2InpFwWN4VeBfectwtWNCyAL3NvThy/pGCj5qnoLzs8KXAA8HvvbqyfHYr4OVXIIsrBQ7cvbEfAMOpc3vFk1fj84aMY78ILGxbiFOf/iO64hLLKerF7PYGYDK8/aDeA3DQwuhIDBmMiaNuDeoxhSabZQOgLZG25wVAn/OeeAv5WcbuIRx/A/DL98bu4t3/WZaFC0apbFgkD2VQYvY71lG4wzoRJ9YpcvRb/QM4ZV7Ye/rFwoGTiuiNaWRCXci2P/zhD/jzn/+MfF7s8BcuXIi+PsWq/zSmkRG0zaqV37cVAY50tXN1qQQbCim4AqfuOQenHHx4uIOcf4B3YGHzVMggVKFsi+lrbzziRty7/l707FiP24b+ASBY/Vk9rw1z2hsxv1PKzKYKIxVWzxg6bAtr3bLRUJ9IU8+TP0sOEJAdNIw0jbKtCzrO3+18NOgN+NUjt2BIMS7UOKIHoyHfL/Hm6RpThsTlJXIpDp1NeWGgEKWKiwyRiiIEyQDs8Q+fAF1jPtmWCSTU7oFiA46dmMT8/MHow2OY1xKR9Y8xoVznGffjowjUAqFr1Az4SQ3Iyi4QXUe4ZzqcZpwZce90qgJS+J4BALrJ+uH8g4L9/TBSOTQkuO5A2Sadf5FnGixun2NaOH90DDhyD7z1SGfbvgs7EYJMHlKyrdcxqU/0bEsVRior28RJsZKUYgyHT07h8MkpJcEFxCk/PWWbgmxbdQ7Q/zAwey/kNwf1uBynnlB6f1ESSCTblrB+/AH/v737Do+qTP8G/j0zk0nvIQWSUJIAoUhVeg0IiKgUlSpNARdRBNQVXd21l8Uu6vIDwroKLBLfdV3b4oIdVFx0RQVEadJJSICEtJn3j8nMPGfmnJkzLTPJfD/XxcXkzCnPtFPucz/3c4nrQsjC72pS+0nA3g8cXoKbI4gxDqg537D9huxIh2XEEUVtF9oaM9tMDutS2j8pXgQPvRvY9igA+XfHIFzo15q9q0FlvYAxGvTygSXEAKrqPti5G2kd9A6BYJWgtkBp/ba5I+yZbfnpcZ6NOCcpVw91LIINQP33Z4wD6uyjl9fAAKVjt9popPa2uL455A2nwV38xPGiVtPIxgoDFljf58s7ZwL41jJR4X3QSTo8Pvhx2WSfC54bneuJKv3eJl+ag/d3n8DQDi2cnrMRvp9moV2q5Q3S8oG7ftXWbd3VKJ8TXlF/TtI5ZfmVmeM1D5Bg0hgEsme2eRBsE7vXq9wQc0nheC+r++fhV6NvVl/5BFnNNktboyLk79WQDhlYntsRM/u3Aay9dW31Qi3LtK2tU35fZN1ItUdd/FHj32w2W24euNyQ/Xv51zmX4e3vjmLR8AJcfEfpnEHjfqr7NODIV0D7MYgbeAfw698si8NyDad2E0/27nS6BnjXUqNSF20/t7J2Qh2k/x4enL7LCV2Lby4rx0vJzjc6FI+9Dh+K4i1M4RpyXd0YmBCBNqluBg/TqI0Xg1T4Is7hpN25AzB5yi/BNpPJhPp6553pkSNHEB+vPfWVSM1FYWfn67Go3GzZ4aoNj6C2W1XMNpAk5QsI2zT5QtoKhKoral2EotZFeOmfM4V1WFsqYcV1Cl1OZCdyChd2Tq9YQ7Atwf1dFsdTTH3DXSzZya5Oj+V9LHea/r1LebREPczqB3sNmW3iief+hhsChZnxQJnDulROiIZ3TEf1R85dTwAgKSYCZystR37VkySnE2nJaXuOF8e/nr4Arcwm+wXO+YbUkffmzcfusiFoLQxv78TFWV09dPIDrLULp6QXgm1SQ9uVLyYuNmSH1ms50VTtCioEFdRGnhPTZTpfY1+24T11rsOioRtpq57AvG1AQjawebjrtiu2yfEuvfAdGHh7wzbt7bCNAOkyYOP8PsoCGma9UzdSxW5twoiUNhoCQLL5bME2YT5DpC0IH/HBH2yT61zt4mQZq3r5/3AejVTfkCencxVMSsq1dSWVtdlxO2quWQn83VKQXy2zTQwMRVu7OGqst3fRoUaldRsPj++Ce978HgBQr3SwGbQUiE4B2g6G4cKvtsl6IevrFJIs0zSlR9vfl5yUWFyd1RK5qdGyzHFx7J04o0rtXVv3X7Fmm84hg9QamFdvjmowD5DVQHx/8WB8+vNpdM9JUp9f1j4dlMYQUtyerL6CcIFjjAGqK2x/1qiMqud2FGmn45X2Ls2Nqc6sg+O5gpaRwxf2vh1fHf8SU7KL8OwvJQ3LWd5nMRDpGLxWDwj5eJHnmFUO5QvH2EgD/rnIzQiRwmdXabJf7asd/xyXcb1uL0ea1Omd3rvziHEYWEK9DSaVvOMZnWYgw1iI+xuyuXzKbNPpLZl5nuq/CPjiBdkk8TzJ53rzstFIrW2Xf+cTY6Iwb3Ae5JQCj24CVG4GXPI3TUFU4bs5uH0LDG5vCTRXKv3OtX6Pr1lp+WAkCdlphVj4zVnEm0y2bqSarnfiM+yblY3c7QfC+3Lz2XIMqKrC1edWIr6DPfP91/Jf0TOjp8OCktt9dU2MvaSN9XUmxng/gqwja++jbpX1+DYmsMeNTId4jqfXqeTML52AL7/8cjzzzDO2vyVJwvnz53H//ffjiiu014wgUvP3BHvQVmnk0RnlFU7T1FQ2FI9VvVdhFjI7hG0ppy8Ly7UdrGHrjsE2Z2IhYTXyEw1r1oDKzAo128TlTZDEHoWyCzXJw51snSTUWHJ4dTUNWRcmsVufhotCg8vMNscLaYdgm6Sc2fbkzdcprExor5Ah1aVVouxgIz6ONQqjJaq9FsezQltmm3/uFplN9ott++WhhM6pndUvkN2wFDcXvodKI2xZg20qJyGVZku73I2s6LRegTyzTSWDw7FLc4OIhpNGx9+t0u9YMWujZQ8gzkWmgyuOF0/iXfpES20/8SLtv1ENr83D0UgdM9skyLszK9ZKi00DFn8P3GkP2Dj273Nbs01pNFKR1pNzWbdZecYAIB8gQQfgrXrL71IxiGhty5QNQJtBwJz35evV2jahW5/J1vVdvow4yIGt+LbGbqQTUy0n8gMqqxq2YWl3mpChpHhjRx8B9JkHpHeUB6GFz+CY2VLGw2Uw0vYi7Ovo2DIJz07uAcnhvSk32/co0Wp106y1hITveK1Z7/TdBFxnR7kMtgn1ivQ6CUPat0BitMYLGZ1eFlIYG9cOADD/kvmulzt3TGhclCwrolYlm8ltZpvja/RyhMFAiJfkA1w40tL7Oic+B1smf4IbB/3JNs2a2ebyvELtffD1GKmw3oH63c6zaQpOi8E2P2eauMpsc9T/VvtjSS97jecbemTIb2iq/64GtrQEGGN09n2PARLuvPRO9M8cat+Mpsw2h/dQ4eaJR+IygMQcVEoxOGS2BGDc3kSwniMkaqjppzAaqXM5CVevV7mGn+Ky4ijQbmj6Lgq6wPkmpFoQVUbltSneaPMkA1eo77fgbIUtwy7KdY678qrEG/9e7gpK6oUg+u43hXUD3apr8OHtY2TzX6xX6TLpZjCWOiHYJknOweUHBzzovrEurDp+EreWnsU9J6vcz0whxy/BthUrVuCzzz5Dp06dcPHiRUydOtXWhfTxxx93vwIiNy64OQAtKz2LpeVVaBfhvv6J9UQyQmUkHAlm+wFHrNmmeBASpvVf5HbbjueOSut8f/dxp2mutqtY9kAk60bqvD2Tw6mvWJRUNYCUmq84eW/yENtja42FJTULUIVI3Fi7DIBDgFHDQdzgWLNNtrzDiZxwMAUAvdLFjzEeUUY3Sb0J8vobBqGWXL2QpfHKjF6u1wM4d6GwBSz8NEKwUNdq7IVKy3vq4QnbV6b2sr9N0KFKLGpovRhQGIVQLfuxCpaLb21Dniu0N6evrDaOamabykmvNeBQ55DALctsawim/HT8nIY2esDx4klvAG78DzD7PVsXUzFgsssabBNfi+M6FN5HsaaZdb8mfvRRBpULnaQceQ1GjzPb3AXbNCbNK3YjFWp/icE2sz1zS/GCxPp+ZXQGZr1t78rvaTaRbARDa3ak/HXWyt5ja31PbV23Lolvg38f+g3PN4xsau1iKWYkugtQi4FaQ0IO0HkCSrvfbMu40lTaSLFenk72yQ+JsVy05iU6ZncIYtMaGiWv2WZSzGzzMtjWsof6c+5IOtlx9qH0IfjnNf/EVXlXOc+r9rZLkqwrq9qrcF+zzf/dSP1lfpIl4zW1rt4WKBWDh5rKAcD5nMEWbBMDwI5voNpn70M9O09oGiBH+OyGJllKF2TEZKjN7V5fYVRoT4JtwijijpltcbAUxZd3I1Xf33Vt0RWbxm3CB4NW2KZZzwbFz/GEdcRtjzLbdMrTtZIk4NZd+F3Lv6O24Rh+tspNhty8rZYadzPf0rb+BvJRbxX2iyKHMhpa1u/Je6B1sKZ/XP0P3NfvPkzSJzs9p+mcS+V7kagwcqt3AVP5C8mUyjzOkBK/gx5/iyauBvovwpLam+3TzttHS95YNxSDqp9GXgv5DWkt3UhF1ptmkWVCryLJuaffNfnXYNeMXbiy3ZUaX4Dd5vqByKivx03lFSg0l3q8vK/YjdR3fjnSZ2dn49tvv8Xy5ctx++23o0ePHnjsscfw3//+F+npyiPVEXlCaVf3YO1022MdgFmX3Ijuke6/b9YLp2hJHBZJkj2yHxTEYJuCU/YR3cTRHe0LuetG6sxdcWxn1rtyKk+LJ3INF8lixsuEntm47KJ4N8fFHeiFX1kCBsltFDdVqxMz2yxKTIMxNuZ1fGyyHIxMKl0cVC9gAPWTcTeZAQadBL3jXT7rG9WyIVVc6UJOLAAO4JLsJNtja/v/e9/l6NIqEV/fOwLf/VFeYF7G5Bhss2a2+T/Y1vVitWXkPg+DbX+tk7e/HjpcMAsnXdb3X3I+KVWrWWM9QW6VFKP4PIR6HCg/5Py8qdahELxaN1KVE+UG1a6CbQ3/X6j2c6aCUreg7F5A6362P8WaUYtLG/o0i68lOslhBUrdSMW785bPXAywaSr8DTi9b+onxQ3TrZkdar8/b4Jt1jbIgm32z1yWfat0RaI1+9VdNpHYjdXajdRhHeK3xdOabdBHILO+3tYR0WQLbNiXr6t3fRAQf3MGvQG4di3KBtxr37yW379OYT/s8DrzIpPxwcQPsP7K9S7W09AW4ftcB73sAtbbYJskts1bkg5ta+0X6QZ9BNoktlG5keTifRcy23QqmSOuRiO1LOjwGkOoG+m0pM548uRp/P3ocdt+JVrYf1R7OSKddTAR+futkgXlqPccoP1o4MpnvNq2VpqK0gu/jRHJnfF/l/8fNo3b5P1Gha7RHnUjPfKV0Cbl7m2yERvd7Is7pnREYmSSfXaFec5caDhX9qZmm7Cf+X2n2QCAQZUas3P0BlmX7fKqWvTPS0W7FrHomKVQoiijs6XGnZZMMuE4YL0h1zcvVTF7X5Gs8LFijRnhofL7tjLl90BEDGbV3Km8nAvtktrh2vbXwqiQhaqahSxyrGVqXVbpu+hNITmHZaKkavWabSrBwa8r7ANqKFXeTHNVr7LrJODyhyB7P4Ub31tN3XHY7BwsH912tPO6Oqj30LO2SldrD9qZLrZSnFev06uX5nHhrtp5Hi9DocUvNdsAwGAwYPr06e5nJPKC0i76iNmhi5ek01Srxmx2vbOTBduEHaNi0fD//g24umHUwdhUYP7HQIRYFNN1sE29ELk7Hhz8FIJtALD7T6Pw6+kLiCn9AVF7LmBlcpJlduE93HVql3xdLeQZUI52XvgZaDjO64UDqFlnQJ+2sdjxa6k8a0bDgSfCZWab6+V1kgQDVDLLpqwHvnkV6DmjoZHqF1o6nRigsSxvvbByecAHnAOTfs5sE79TBsBturuSxZd3xLaD9rvBTl0tbV38nO/6qp08WDOtOmSq1O0c+QCwxkWQsr4Gh+vsRX51at1I3YzgWe1QX0lpgASzhjt3hdU1buex0dDnKivWnj0Zb42we3jxLQ+26SFJEhJjIvDkpEsQodcpdyNV4jRAgptupEoDJIh0eqTW1eOMQY/hkou6rUqfndAd0VRnv2ioFU5XFIMaXnY1d16Pc5AoIyEaEMZ60gnzKHaxchXQc8hisX4HxSwid18fWWZbQ+BN3G+rjows0pDZppcMyIpzGGXPkbUt8fb5TpsTLd1jG1YmZgOrqa13zlqRHNvpDUmHP50uxbPJiZhccR7ooPA9aTMIOPAJ0HOm83NWenE5YZ+rk1DX8Pt1+7471XIMncw2g96I0RcsmVFlDftIsTtyjLtscBVRipkyDn+r/V6MMcDUjV5t1xPaBhQRSkboDeiT5VwPziPiTThPghnnhJ4PDt1IrWTHby03PoR5rAFxsW6kz6ORNpjWdhyGF05B5p87um+TgiEFLTDukiyYzRq7yrsitPeKbjnI7dWvYbAjYb1KoyAbFEo+KJ0/uMuQA/B5zHD87pY7sW35e4rPaxGhsO4Yg8oNTlF9tfJ04XW1sg7+4FWwTd6ufaZsp3fprNn1AAIn6yvtzWpY+N36S23TNJ/fWImDJ/XKxh2DhzjNojiy8KVzVVfZyjZ4gbx/kBpPS/MAzr0zqOnxyyf417/+1eXzN9xwgz82Q+TAcdctabprYL3rd9CUjta6k/ifqQ1UM9vc1mxzkOUwQEHbwcCZn1Vb7HVyrnhX1F3pUJW7prGRBnRplQjo43BcaEg7YzIO1VZ41axKg707nvhuSQCu652DHb+WIjk20j6akIbPSw+4yKBx/dqNep1CsK1hm/GZwBChcK3jCJJKy8AeiNBcW8PazcppXX5KzRbuYuvNZktmm5LEXOUMMgB56QnAQfvfJuiUTwkUTiDVCkSP6NISP01QuEtoFe+mC44hGuLv0qR2Yeoms63GLP/+yzNuGoJtGj6KlvV+ykRsIGZT2DKlXH2fFRpZJxvxUWe7Q3xtb5VRaFUbozGzzRZsc9+NdM3xE/h/cXGY3aJQfbtKn504qqXJfjJeY7SfBHt0oeUYwPQgs+2SnGRMTMrGzAERwI/2WfRKF7Aaa7Y5jrJnPa5EGOzv5WVtUl02UVazrWFb4kh9bjOsAMUsVcfPU9J7cKGe3Qsoug8Pvbcfx5CqXLPNRbv6ZPXB3378G6L0UfK6OX4ItqXX1+Ph06Xy9oqmrAeOfG0JumkgBqONBh3qaiy/B4Mno5GGUBdSALL3Rfzsnr6+G46UVqFTywSPVjcsZxi2H9uOfi37KTzr8D5pzYT1g031Q3Gtfpt88x52I/VLRqJYT9WT2qppwg3PuHT5QB4NzF4E22afrcDapATcmdgdAFAn9BvWeRNss2W2yb/zWXFZkI1q7gGD3jIgmT9G7BTbGxMVhcvaNmTai4M5CF3HkTcc2P8foM8Cp+UVTyA0BNtMZrPT8cjTGKJB4XhmVBu5XTRomfJ0oa1zyit8+K7LX8gP5tZO5xX31c5WXvSal4DSXzG7y1j8513LzXBrKw6aM71sD2TfuRHtk4EWzr87xWtIhffg90cN+CH+LG4rO2tZtcYmuBxQxYWVdVfhd4a38EjtFACfebUOCh6/HOFuu+022d+1tbWorKyE0WhETEwMg20UEErHJH3pL26/1dZi1zNr78LWQXtw08ddMdS8UrZe+8m0fSulUDjZHHaP641dNg/4eo3tT+eLWOdXoWWnHXF4B5AYq21+MZNC6U6dJE/QnpzUBdsuHHSeTwOd0KVRdkiRgPE9WiErKQrdzp4H/mldwPWBR2dueMe01mxzXF4n4YA5E7JTD7UTxqF3AXv+5XJ9gFhM1+2sQkMi7Cdx1u1fOOXBCrTRA+qZbQs+Bh5vA7R1vpuHVr0AoXdKPXTQSQonwx50I42KMAKuujGqfQ6T1gIfPQFc9TxSP7X/vurV5hen1zkXt6112CGIF8rW36Orz/KRgY9g/U/r8ftv/6M+k4+irSfrjq9xegnwtwmqy4lZenW+jNfl8Dv0R822drV1WFJ2Fshw0UVKaQRP4bduNtt/ueeE/ZhiBrNTt1uHNittU4kQ1E2Ji7aM8Hxmv2yWSWm98XbVEVzeWsjMFG9quLrAdXiusqE2olGvwz8WDsA73x/DbUUFLpsodrm0PhZrvmnKbBM/c6Emo+yd1XKhLr6fg5bi//5l2YfKa7a5/50NyR6Cl0a8hPbJ7VG0qcgyv6uRqLVyXF6pPlZkPJA3TD6t3VDgl22KqxSDGbKMQrejkSqMvhsqxO7bwr5kfI9sr1b37LBncbH+orYubZ7ULPPU9BLgtUlYXmO5sD8uOQeytXUjVdhX+UukB8G2S64Htj5seRyVCMSkOc0iuzFc9qvT8050BtxedhbTK84hPXeKZR1iZpvCzWcnqpltCt0yB94OfLICWshKn/kjyGZbmbj/UwlOCV3HMWUDUHbQ3rtD9vtVOAsXg4kq+zAPy4MpMigkASh1yT9hTkKGdNY+IUoleC7psPG3Y/iqdW9MPHfIPuiEpxRfiHzaOajsG7pPBQBkXhDrV1verOgIHVTKbbsnvuGHv7R0NXVqobYPoFOVDtOqPa+f5k1mGwA8UXc9NtYPxUFzBuIbOdjWxZNeHaTIL7fWysrKZP/Onz+PPXv2YODAgVi/3kWtDyKNNO2eJEB34bTb2awX2AfMWcCYJ3Aczidf9gEShDo6Qit+f6ZhJ+uucLNOucuQ2t+AtuKmxjr7zs/WFc5VcWcrpWAbJDE5CkYf7jJHV9sP4BKAPSbLifovpy5Ap5PQPy8NsVHCiY3w/rr8jL2s2QYA1XA8kVLZksvMNiHDSsOFo2v+7UYqvh49XGS2RScDfyyXFw++4xdg0Te2ETKtVDPbFDKRVO/UufseqV1sdpkALNwOpHdEut5+sutYN0txO6f3OT0tr9EmAQrBthv6tVFt5ri8cXh97OvI9G9iGwDg9/nXY0hlFcaev2CZ4Phe5hcJf8h/4JMvzZFloJig03bRqMQps03t1MD63fVggARXv1GlkWRlF/0SUhqGoe9YJwTbxAyicc8C6Z2AEX9S2YaHRek1ZHwlGuPx5tVv4ubuQvFlMQvCg8y2Cw2jYxsNOnTLScLdYwrddtkTM9usj8UAm6avgVK3V4dupJoCQiqfr2PWJeA6G1iSJAxsNRDpMfa6q/7qRiqjtT6WSl1SAKgTfoqyw6sno5GGXGab8+flC0mSVANtSYkOAx8kehfQ0yS/CLj3JF6vt+xLlTJXtJQf8XtmW49plv9bD/BsOTEweeQrxa7IidIFYZ6v3a+zIcieXl9ve21isE1LmQVNo5HaHms/TslGpPRntE38Hqhl8Irny4ZIeRkVh+/R9EJLGaXHBj1mmfDjW6rzWmkaqd0NSWHdSsG2R2unyieo7Qd1enSqqcVMfarrXiXuWyb7S/Fax80axOOctSZtvkI2mmY9hFJXnnyXFOZ1bLvhvGXQOFOt60FdKmsrXT7vohENWX3+jDi79o8jR/GH06W49tx59zOTSwE72hcUFOCxxx5zynojChxJU26HeMdd6eJUrRupmO0RYzsRcddtxPUBx7qWK7p6lhodJRykVbNQlCjdwZN0SBG6yEXpNKSgq4iR5IVvldsm3qp0vQuyzal2wPfmgqVG5cDhal2/fmx7aA1EGDUN+Wdfymk7sxqy6Pou9GA9Cmuus9fEMpjhWc222FQgNQ8AkChZTr66VFej3qyD4qmQwsWi6iiCbrvruX//JsXl2R7nJLZR2Y6wfXcZEirbTI3V8J0f96zl/yG/dz+vRtNaj8YLJ07Zw8EeBLr/eFVnjO5qv0itE7qResxxNFKzyj7FOl+9Q5am03wau8sp1AB0vOj/4PBv+PjgEcRL9s9IdnHcaxbwuy8sI6wqtsWxy5q7zDax7c43XSzzKHxOxljXz1s5fEetmW2astEaKGW2id1QNX0LZJk61gFQHIJtWmqKqbyfZuE901KzTZWvQSnH9mnNoiq6H+g8AZi22ekp8RxC7BrrUbDN39lRvpINTGJ5fX6IBci8OLUn7hrdEd3aOpzvuLrR5Q/6CIzubNlmdmfn4Jam0nmy4LQfLp0yOgN37Adm/tP9vGrtOLVHcZa+uh/sf2j5nikc1zMS7OcRhVkauxArvUduyjy4XWWgYgvx4ndQ7XinPTP/rsvuwmdTPsPYdmMtE6rKhHmV1688rILzvLGuapMpvKeZsZlOxyCnQV3U9oNaj/HuOJ5TKA46Z+0lovz+JEclwyAZYNAZkKB1OGRXCsURqJW3qdwW919CfU0qzu/7PS7sX+pyvncPvOt2Xe6Y1c7PvHDJxWq8evS44nPtautw3bnzrBjnBwF9Dw0GA44ePRrITVAztfRMGb6NisSWWEtmS1ZdHQ5HyA8OzsMRm21FNF0xKQ6QYN95SWbl0UgVebjPU8tsq6nz7EBiFAcf8DnYJiHKbMYHh36DDkBZG+8vArqeaY2jcWWYXl5hXbnC9tzXsrA9bX2gGmzzrK2RJpNiV0OHrblkz2zz4H0X66pY75ZmdrVkmvnKbES7n6/FauPTDd1INXTbUbAqtT/+9uu/sKisHFuhU/h9weGk3PL61bqRug0c1bkfkSy+vg5bDv2GCzoJqdEqdawShALuCtsUL4zNTieA1uw8DZ9lt+uBgpFATIr7ebWKd7jodPV9drjyjYrQo3WLBFstMe8HW4FCZpvaxUfDdA0DJNiXcXWhoNA1S5g2sXcuIr8HIs0mVNbbszU0fV62bXjYjVSxa6tj3TeF77bY5ciDARKs3Zwj3AVqxFWIAyToFJbXEiSR7YcVunyJ0x0Zou2/X4d5rAMGGCOMtu4+1mOuV5kpfs9s03jaG5MCXLtW8aksyd59SHxN7ruRKrznoUJWsy0wbRt7icpgG1q6mvromcnd8b/fytEzJwkojMdbx5OADy1F4jV9Lz04b9HMsZ6rFhpuZMgCK5qyU4XfxMWzAICWSdG4d2whTlRcxMB8re0Ub6QqdSP1/H0TPxu/Bt5ihQHWHEeMt23cVVa283MJRrWgpEqwTSGa3TErHscr5Oeo1/RQHt0SkGe2PVIVgW0dh+HmbjcDW14Aqu3nl9ERjt3pVW4wWj83W9kTL/cFDi9ZlsDQ8LovbZuCCGM6WiYq3yA26Az4fOrnQG01DI+3BgDERvqwb1Lq0uzUbO++ZGYzYK5LcjtfYUohfiz90e18rlQfH4+orBKf1mH1+KnTyK6rR9+qKmyPDvx+OFz5Jdj21ltvyf42m804duwYXnjhBQwY4GGKNBGAgtpazKo4h65tcwEALerrNQTbGrrRuWFSOJE8ZrQHQ45EGJBT5ZzREGHWAY53hzzMbHNss1IXUC13k41drgVO/Ee2Dk0SFE52G15jVkN3rbPCBUFRbpHz/C6My22DlH1RuMvwd/W2qZx8uXwVagd8x4ubQa7vKuXXOo94Z9+GZ8E2rwXgVq2+Lh5p+obvpngS6YHCiGRbEXETdIpDrSvdAfe6G2lirvtG5RUh4/PngRRXRfZdZ7bJPy/lzFLNgVN/BtoA2QiOADzPdhF+F3VmvffdSD2t2WbtAq2lG6nLzDaFC0ehe/X947oC31sex1w8aV/Moy4gjoEydwERpW6kGrKjjGKwzVXNNuVgmyeZsmKA2xZsE15XeoKGOjvi+yBktsnnUfk+Tvw/YOM0+bIN/nHLALzwn5/RsiIOaPjITG4yGFzydX+ppWabD8S4r9uBO0K5G6kQLK4PULBNVSNk+UVF6BtGmwTQdRLOVR6EdefiebAtiIFSDe/VObPGwL9tHuF7mW0f7fHGQe08aZnlPXIsMaC0P80bBnzyZ02rlP2+/HnuZBACPGaVYJsHmW1O8oqA/R9aHqsE86zn+n+b2wfTV+8AYAlyWm2c1xe7j1bg+kvVBzzKEEb7HWeKxLihDbXwjDGyYJtkNslPfzRntnn7nsuXk5XmaTjG3zK8PZB3qeOCMpau6PbPoUurRExJzsHwjm4G2PKS8gAJSt1IvXtfvD5HE9Sdb+9+Jg91qq5hsC2A/BJsu+aaa2R/S5KEFi1aYPjw4VixQlsRTCJ3BlZW4dOYaPSpUstMgqbMNqWd5DcJ9nWaAMVupF0q3QSOlDg9759+GZFp7W3BNiuXdX4mrAJO/gC0G6bwpGOtDXubc+I9G9UwQqdDMuwZS4qvVlbxVuMFh9b50lwfhFx/P7QG20LsIgkO3+l6L4uZCu+xCZLmYJvqCMDugm1aRjrMGwbM/TeQ0FJ9HlntFfnd2nmD28H0ufh9k3/GybGRuGeEi0CeP7iqEaXTW4pcX2w4KVZ6L4f/Adj+EjDyTwrL299Dkz+7kULCnAFtlWZsmMFdZpvWoIJCJsT3Qrc9lQtFTaNtqm3fbWabws0ALUGoCO+6kdbCueaaO7LRSBsCbzqdhCcnXYKLtfXo3NJ13RgAKlmFOvlOW+29ShG+Gw7vReeWiXhpei/g/+yv09qNVFNtLEGEGQHIbPM92FYrDATk0cWTrBtpiB1HhAFG6hr7GBeELrXiPsTjYFsjjp7q3A4xg1V5f/9y/ThMMWx1nl+N0mAp7jjeKAIcjsURztOsj9sMBGa/B6S4D+aJvy+/3qYUf38KI7pa5nEVbHPTGjFrMUq+P06LM+L0+RoM62ipTzmwIA2/PnoFJEnCPW/+zzZfq+Ro9GmnktHfoIMhHnefLrXcLE8QtuPQw6Guvk5eOErtc7a+Zut74vVvUzmxAC5ufqoSvkMGnYRHJ1yiuRUJUQZUXLR+vrKDm/Km3JW+8ZHeD4F6c10Sas4MhC7yJAxxe31bV8P/geqtTRZ+OWKY/NGXmsJOyZFjmJCt3K3AugO45GI1vouKxPhzFzCsshIfxMbg8gtV2FLfQ2EpSdMponrxb/u2leoLWO6uOGRGeXjx4BjAUMrO01KMtkOMvftZtmQZ1XLJSBeBpkuuU3/O4TVcFO7yna5yP+CESCeZcbPBXoPEeoAd21X4nJUKc6s1zaOtK1t/U1/M+9TyOM7VoAQaL+pU61kFkazbSGWZ+oyuONRYerN+IH5neAvI6i5sSDxkuMvi8NMFVM5lrp930a3m7jEdUWlqCzTUiDY7dHltER+NmwZ7ePfeU9m9XT8fnWwPtim9Z4OXWTI2lfY1Bntw0acLZIcTwH/dOhgtshQC7R6MRmp/rDE7wLZuYR+rcmLqNoNIbRvu2uP4vFJ2BuBbzTbhOUtWm+W1iDXX3EmKSrI9Tom2Z1te29uDmyNKwQPJofu4llqZqjUb5YFgwPOabRHmQIxG6sNp78DbgU+fxsr6q22TPHpNsgBnAEfg9IbRXnjc+nl5Hbz3VBCCV3oh2KLpMxR/C2IWa2PT0I20zCwUkVcYrdSJJxmXs/5lGUk9Nc/5Odl+oeH7feZn5edb93PfLsg/G39kBSkSM8/aDbWPQuzLvkeWcS//fr9z6yB88csZXCGcF1tfm+Tp65V0mGotYJ8ofDfEmz9wvvZQ3f9Yt+lrzbZTjkEg5wQGzddPYhuO7fKoGW3SYvHdkYbzK3F/prZtL79ikgRNuRT+CLYBQPXJKwEA8YX+qyFMgRNit9YonOTW1SJard5Tg/87fhIbfjuOq89fQKLJjGvPXUCiyYSPTN0U94mK2TgOlGu2Cc9LYmabUO9JcW43e2aH4I5iHSwv5ES3wLqjJ/CPI0fRSjoDAEiN83JgA4eDaY1wQFItfq+2KqcBISyqaoWTGZVupNdVWE4YLq2zT4v09GRfYf5+eal4/ORpFFbX4A+nXQzVrbkbaeB2m/eP6yT7352OmZbBEQyy7s2+ZzeZoMM+czbuzS8Bbtxin+fkbsX5FTXWBVRcuvCHQzBbkhAbZT+pNAcjI8HdyVWkfYAL1XnVvptCraN6P45Gmp4QrbwuW0DMk5ptLtokPqcU2PFHwNZpNFI36zQKn8e5hsLBWrKjxAtwV/stIfuyXjj+edKNNC06DS8WvYhnhj2DVnHq9XxcEt8XtQESVL+PGoqey4L3lrV6FCRFoIJt3g8AhKL7gZu24sU6e7DtREW19uU9GcylsenFwH1jdyMNRrBN2LyW76X4PYoIZrBNaMeIPyrOIusGPPRu9+uUBdvcfPZtBgKdxys/Jw7OpBTU9mqABDED0ePFtRG7kWod3McH6QlRuLp7K8VsZp2nmXxKGcoA0Mmyj/qo3pIF5jxAQoBrtqne2PamZ4uwjDBYmaZFPZpbJbNNcSA955rhWqj2BBHc2eNBTevyh9BLHWie/HKEW7JkieZ5n3rqKX9skpqJCEmHKoV9lHVStNmMzjWWbnEV5hgkSJZhk3u1TsZZxAMO42/UaLjYdBcsMUMMtrlZzt32zI6ZbMAOU0f00f3UsE6FWgAaYyU9qz04yXfF4TXUCgfl/xz6Dx4coH3H7/hqrO/jR3tPKc8lHHimV5xD1+pqdEzpiMsMZwEAqfUqtTRUKb95V6R2xxWHPnezrIvPsvcc4Os1APxQs82F2QPaYkKPbCTGaLsQe/e2Qfj2SDk6XYwFXmuY6Cp7zxWF0QOrjGkuanvY34d/jf8XKmoqMOVfU+zPN9YFlNIddpGrLByTixp+/hLruhuITyMUChc3PgWBHbu0qQZQGj5z68WJar0+rRcsbk68/XGx42lmm/h5qQbblAZIEDIJ6l3sm4XfU51wCubJAAkAMDh7sEfzO1HJbJPRlNnm/jtbb6vZ5kkDG4JtvgZcnbISfQhySRLQqidqcMz3tgSzK6ISg73OX31j34dv2bNxtwfHzDYtwTYxayiIwTbxO2TthtlhLLDnX1gRfRtwEbiAaKD/IqCuBmihob6Tv0bJNcbZR+FU+p15kVXaOJltwjmTTiV45TEva3qJj7WsQu38ZvAyIC0f9/ytvGG9DufGbmu2ubmh5o7aeajsRWnNbPPX5+4+s83lAAlCvTnHckRaEylUaxw3SJf6YUiry/HgB9sQ2eJDVJ8ermm9vooxNVIWc5jyy9H+v//9L/773/+itrYWHTp0AADs3bsXer0ePXvaD6IB21FSkxRpBm5J7o5Hznzp9JzSz/6wuQU6SwcBANd0b2UpVv6GMIMk4dWEeIUlHdftLtgm2bPfVA40XaqtdbE8+05LMOO42d7tpwrKo/C4JRzI6hu6NXrd48PhNcYJBVcraiq8XKmF9YBUL+7Ixe3tecf2UAegR3UNxIRbs8Ij1xtUmS9eQzFVVycVQretQNds0xpoAyz71O45ScB+4XWr1R9xvzLbQ1uNJZdxEvtJQ26CZbCD0VI83jOfs0z05GIy23WRXJ+I2amObVIdmdYPJq0FvlwFjH7M9XyyO+kentwLRZ59ykZxqmum1sXCsb6jynxaMyWUslwzugAnvne9fk84vTYPfr9tBigvo3TCLHTpRYyLAKvOuZYZEITzI/FzsbZdp8ewyipsSohHYn29i2CqlvpV9tdj70bqYWYbEIDMNv9mlHXMjMdPx89pm9mb2liNRch0qTJbAm+NdvnlS9debzfpacaUGDwwxqrPF2hKIypOeR0wm/HFy18AZQ3Brssf0r5O8Tecqb0elhMxCGn9fsdlAOdPWB4b3Z+fO/J2dEiPxAmDSvlyPPaDOuFcWdNrVxv5W5KAzuNxxPwvAIDeKbNNZf9j3Q/UVjqv3yNqew8vMtt8MLxjBr49Uo7kmAj59UHrgYrzaz0O/8/UFr10++zLaWxPUmSSy+etmW81p0egtrwnzLUpsudTYo0oveBlXWYXplecw/boKIy4UOn3dZOfgm3jxo1DfHw81q1bh+TkZABAWVkZZs+ejUGDBmHpUtcjBFL4ui6+PVrtfhtdq2swuHW29gUNyqOtVWsoOmx2c1FqhniYEC4YzDqc3/d7/CN2MQpqvatncBFGxUOQhpq3Do20z7TN1N2jNihsXfZX11jPBkWQr8mxKKrSTCqHpQGLgc+esZwkfvw7+XOu3pSk1sDZg64b5lCgVpHL7m5iF8sQvGkgdoOo8zLj0aEbKQDoHa9CxBNnhZOwJ/Q5uO7wVuTX1AJtgzFim5vito4nmIGsSdRlguWfO77cSTf4KbPN8aJC9bfgGGzTULPN1T5SabCUlt3twTZ/8CXYZn29Wmq2AcDsdy3191wN6CEEFrwd0cwvxGOlvuF4KukwsOoiXj16HG1q69QvNrVckArrr/eyZpshEN1I/ZxR1rllogfBNjGDKMSCbcI5VTVCrG0BIB7bNHUjFbNVI4I4ap/4e4tMEKZLeHzSJbj5bzuxcFi+h+uUgN9tt5w7iIEnT4ldE637zLT2wjmD57/lgI4jcvlDwA9vWWox2jYY+G6krmz/5Yx98x5ntqmfPziV2DGofIetZS0unvWgEQoUzq0yEiIB8cb7hVNO8/jbzUPzkJsajf55aUDVfvsTBZcrzq8Y4LS+ln63AJ8/B3S6Bmv+OwSzDB8Iy2k7l4zUuxsp3BoUlWCudd0romurRBzQtFV1sQ2fR4zZjDXHT7qZm7zllz3JihUr8Oijj9oCbQCQnJyMhx56iKORkkt6SYfBVReRbDLJRhl1u9u65HqPLpTb1di7i7kLlpjEeYQDjRmWUWAuqRbuKlS7yfxyaGMpErCvleUC/L8m5ROi8T201OCxr9fnTCuHEwrJh9R55yoGHnS9HfknYPkxoO0g1fUpmvmWixb4iUIgKqQkCN8Zb0cjFbL36tUyUTqMsT9WOBGV9AZcerEaySZTkLpJKXz+skwAhzb5Ur/Jb3y40ytc9J0z+3ABqDUgpXU+Twpu25Zp2O+MfBDodA0wrSFtecBiAMD5Gz5AVIQOvVsnKy6uytNupJrWofLdbt1f/htRIguyBDHYJr4mgz3YJgHoXl2DJJPJtwEShKCAt5ltSSaT77/RAGS2XdWtpe1/LQMa2ciCbSHWjVS4CByu3xW8djQSj0cjFW9iGbzskeAPeoMla/qal5wCY3kt4vDB7UNwdXcv6jimF1pudPhCduNIYTRSLwQ047f/IuDGf8tvxvqtG6l30uLsv0OfarY5zuaU2aay/7EF28qd1+8R5/1ifnqc/Jqo8ozTPP5mNOgwvkc2MhKigKRc+xMqUVzl71tDm4vut4yiO+EvqDXL3z8t9cK1OG76QvO8Jb/r7/V2nur/IB49edpyrk4B55ejfUVFBU6dco5Qnzp1CufOabzjR+Ep0b7zG3P+AnZEazyJUclsU2OSPXZ98C+sqUGFdR53GU1uA37y59+9bZDlgFNxOa59fJfiEv3z3dR4ctiutV2RHoxmJ6O1a5gGP2ddiZIfL+CxiP8DoJbZ5qKdDqN8HTE07KJcXZgkt7E/1hKAnbbZ/TyOZANlePH+6CICWx8svdD+2NvMNmGoetWLY3dBFG9rEgUyw0z87BxPMEOiK5eG0R/VCBd9x80p3odunAYRcFOzzd18Wi9YZJltDfPFpADXrbNPH/knoOh+xOl02HVfvWJRaZc8HSBBqX2Oy/hyESYEj+LNvnXT94n4mqxtcgqmaqjJV3NeZf3O3dK1ut/YBv8q/wk3nS0H0rwcAMLWDj/WbGvwzPXdMXdgW3RqmYC7Nn/nXVtCrayKwTmomRAVCvvHwJBltmn5KMSSA8H+7LRkTAeDbAAQe9d0XzT6Ox3kbqTi91LbaKQKx1Cl9ToG21RnbPjNW7tNe/v5KZzT6RyH7PSmvvCgZd61B7AEEm//wfsbOHqDbRRdx1enNbOtU2onvP3L295tH5Z65f/+4QRijXrPz4UEIwuuAS7M9Hp58oxfUjTGjx+P2bNno6SkBEeOHMGRI0ewefNmzJ07FxMmBPag8Nhjj0GSJCxevNg27eLFi1i4cCFSU1MRFxeHiRMn4sSJEwFtB3mp6yQ/rkz9wNSmVsxsc/217ypmrgnrVAyyuLtr53DAKcxKsOwgk1vLimPLVqnpRM6+3k4tE/Dg1Z2RHOuf0Uh9uRNZZUzFQbO9PppX75nAbH0vfM0CyBXuABWMUNmYiwO/r91IG/MOqbc128RREs0q3UgrhBFJFAvaextsC+DdNVkWjsPFY0gE2wSentwLmW01vnT9ClZmm8rIxM7rszwXFaF3/k66E4jMNl+yNYTta74ACgTxNdiyGCTIjqNqfbjE7+lP/1Kep95+zLUe67TG1CdFZWPt8ZNINJkVg0AecTye+qE+mE4noVtOkuVY7sl9giB3UXNJoXtTbGQjHLdifei26ANxP6L3NLONlCmNtutjwMrTbFifyW4U+VKawbvF5ME2LdvRUj8TqIDGOoN+O9Y57xidrm1Mng6ABiCjk5ftaZDYyjkjNNHNIFsaDlxag22TO07Gst7LcF2yd7URn5h4CW4Zlo+3bx3kfmYKGX452r/88ssYM2YMpk6ditatW6N169aYOnUqRo8ejZUrV/pjE4q++uorvPLKK7jkEvmX9vbbb8c///lPbNq0CR999BGOHj0a8KAfeUnlwietXsNFSE4fp0mXJLS1PS4Ugmazy89hztly/O3ocdu0KZflQokOQkBOchds89eJgKTwyAVh559zYTdm9Gvjl21b/vRltyDJ3iflLDBhmqtC4iLNwRiVA17Xa4EJ/wcs+kbbNmb+U/5cxRHbQ69Gagtk5pYjb7uRisE2tcw2YUALxd+uv0Y18yfhNUgNF9ol9Q3FcQffGYwWqfP0PRPe7xqfBkhwXFZrzTa1zCet3UjFwE6Avi9as7WUF7b8pzXzT9MqQyyjCZBnp8kCoBq6kVoDdY7qnTN5TVr3g2IQ3Ncue07BVv8G2D3as8t+FyH2PQiJLvWNx+MMokAOptNcKAXbfLxR6um9FZ9JfgqId59m+T+zq0eLiedcml66xizyzfUaR692qt/qv8w2s9ksn+7NjeEA3KT4XfffuZlD4bV4GU2N0EVgZueZaB+VpjqPq9IEybFGLBvVAW3TLMHTRhlAhHzml29tTEwMVq5ciTNnzthGJi0tLcXKlSsRGxuYUXvOnz+PadOmYdWqVbJaceXl5Vi9ejWeeuopDB8+HL169cLatWvx+eefY/v27arrq66uRkVFhewfNS6zsM/oXKMhYJDkXMh/YZurbY/1wg4r3mTC7WXl6CYE4H431H43o3Wl/YRelujsrvugu4sHLzJntCW2Cds972PWpj+zNiQJZrMYbFNgLbwKAH3dHeQaRGi84FL7PHQ64JJrgVQXd7CMcfbH2ZfJn/vmr7aHITlAgsjrYJv9u2rSNBqpUjdSb2sSNU43UmubltUuwKaB/wI6XRW47WqmrRuIIuHk2rfMNo0Bd80ZcBovWGRdYAL0u/KlC6itG6ljd+oQCST7IkfYx4llGbQU3Banx2cqz6PQbd6k9WcuBn58DQI5vgY/Z7OmeJJRLtsnhthxRMjiOWJWvxD0v+C8D2JQ47ezVe4X6D4diE4Guk0JYKuaOKWabT7uK4Oa2eZLVl7r/sCtu4AbP/RoMfkhUUs3Um3Z4bUwAC06ul+fYzaft9cD1mCjE+EgEJfuxYr9/32I8uKGjuP1oNbMNvvy/rGoxyI/rYkCya8h4mPHjuHYsWMoKChAbGysJYodIAsXLsTYsWMxYoS8S9jOnTtRW1srm96xY0fk5ubiiy/UCw8++uijSExMtP3LyfF+REYKjF/NKif1ghjhokESvn75tc4n/jkp9vpgl52Vj1Zp72oqCdMaHl96kzCnm+94SlvXzyvQdqfCj78tFxfa0wune7w6k7vMNr3KhZ3AOmJP37jWQF6Rw3vuig/vizEGmLcNmP+xy+Ce4qAPoaDDFZb/L5vv3fKyzDbL5+ZylDbFYJu2kbFsrCdk/sowa9nTeZpCsM0EHS5E+1gLKhA8zQIQfku1vpRg9XvNNi8y2wJVH8cfo5ECAanl81l9Z7+sxytigE08V9PYLclmrMogWApBf+2ZbUIAK8Qz224dXoDhHdPx3JQe7meWXciHWLANAGIsQbZHa6cGflu9Zln+L/pD4LelQHz7z1ZquEEVmwos+xkY/3LgGtXUib81vX8GSGj0WKzG0T01SWnrcX1pjzPbPCndoeXGheOx7eRuLa1wFpPiNKniYp18MIqOY71bd2NTytJz+LvK7GEdcT/FR3ShVo6AFPnlUzpz5gyKiorQvn17XHHFFTh27BgAYO7cuVi6dKk/NiGzYcMGfPPNN3j00Uednjt+/DiMRiOSkpJk0zMyMnD8+HGn+a3uvvtulJeX2/4dPnzY380Oe/1qXHcFbFXrOqX4/tpZeKN+MDDnfeUZJAniV/oiPBnVRz6H8mikDY8bCmRaJnq/w4w1Kh/INZ2D5/b1ervOG1S/GG2b6Fmw0GyWJ0ArBtvEEa9UDhSfTv4Uzw57Fs9e9XdgRgkQlaA4n0336UBiDtBlokftdW5bDyCrm8tZQjazbdIaYNY7wOA7vFteoRupy1o2SgEHTzPbrn4RWLYP6HiF1lYqu+Vr4Lq/AvlFzs8JGTaSkNVSpznNJsDE99jTGjFpBUDHK7GxbijqfepG6m3NNpXvh+YBEjTWbPOFL1lpss/Gj6PUXfdXICUPRwY9BgCIjghyppzaa1MLKorHPXGAGlG98/E8Qq9x3ynrRurv0Uj9OwpoYkwE1sy61DZCqeu2hHDNNgBY8iPwux34l8lSoiOg1Q+ufAZY/D3Q84YAbkSd+Npq67UGgUNsBNmQI7yPfgq2NXpmm2wgjMbfL3vcbdaT4OCA2yz/d71O2/p84vxCvj18Vt6DxJv3Nyg3KZz3D2tmXSr7+zd4VnuyQOhGOvr8Be+a1YieqWMpLl/45chx++23IyIiAocOHUJhoX1UvOuvvx5LlizBihUqdz69cPjwYdx2223497//jago/w2/HRkZichIzyLT5F99L1bjzjNlKFDpQnoGiVhWuwCT1AJNUUmyKL/kwYmiQinPhv/s60uWGuramOXhJH+QpY5rWSAq0f083hIO2J4Ou94yKVpDLQP3XceiDFEYnjtc+4aveREwmXwraKuRdzXbGqEQekQ00GaA98sLF7jWT8XpRDe2BXChYeRpfwyQIElediVwkFZg+afk/En7Y+E1vv3dMdw4qJ3v2/ZVZLz3y0oSMPk13PV7lSL1mtfjmNmmtWabrwMkNELNNl9GI5XtqzTUMtOq09VAp6txPYBh/S4iJSZI9bL63wr89DbQa7Z9mpaLN3HUaLVjkUJmm1Hr6GmybqQ+npcFYDRSr8mOTyF408ZgBNI7AtgPIKCd+y2/fYVSIMEwqnOG+5nIPfHc2E/dSDUNXuFP/9tkfxyEgLh4zq0p+8mT41LXSUBWd/UbJID/jsNq793Zg+7ncSU9CNngCp9D15ZuEgDc6B1j71kxqOoi3ouzl9wKxTpstWbeaPCFX/YkH3zwAR5//HFkZ2fLphcUFODgwYMqS3ln586dOHnyJHr27AmDwQCDwYCPPvoIzz33HAwGAzIyMlBTU4OzZ8/Kljtx4gQyM913Q6TAcXfYkNI7Y0bFOfS96OWoT92nyYNtHi0sn1uv1+HFqT1l03vofnZezIdbv7KQnfhHMNPmHf5OiXROBXdldOdMTOxtP4H2dTRSjzRCoA3wsjCqtyOENiYhEHWt/iMACt1Ixzxuf6z0fofiAAnZ9juQktC+i7VejIQVCL4E2/zF28w21Zpe3nQjDVRmmw/dSIXRXgOVhZceHwWD1iCUv13+IHDrf4HoJPs0La8zIhqY/4nln/geiRRqtkVqzeDz5wAJAa7Z5rVQ7EYaRsQc/OzkGBdzkmbiTUU/jUYabj8T8ZRLU/K9rHSHhoBIWr7rDM3qcxo2qoGn9ebcWfQNMPtdS/tDgm+3IqQI+z7Hsd6bqwESqGnyyxnehQsXEBPjfLAqLS31e7ZYUVER/ve//2HXrl22f71798a0adNsjyMiIvDhh/ailHv27MGhQ4fQr18/F2tu7kLgiJWgUiNp4mpg9GPA9a96v+4J/wcYjLI7ArERyl/vldN64oPb7SPzGHTOpS2HFWZi7CVZygcMMTIWgIylRr+rodA17NFBj2J64XQMyx3m0ap0OglTL2tj+1scLEFcv02dl4HVxibUJTKZvdltNoGDp5BN0ko6bZnk+P0XThCUa7Z5mNnWGMTMG+FCW9/ow5yp2PNesFugkP2l8t44TlbNbNNY32zf+9rm84XWAKESWSCpEbLwQoHWbMOsSyz/1Ch0I22fEacwo4JAdiMNlf1SKJyTuRHIustBJ7w0Q6gcC5q6A5/YH1t/Zz7uK89dDOKNyvJDjb5J8bxE0+9Plonsh0t6vwXbNLTFk2Bbap5l0IkAULzmGn6v8EcA9oNiyRsfVj+p/SSkx6Rjcmxge2nsN2sok0Cq/BJsGzRoEP76V/tofZIkwWQy4YknnsCwYZ5drLsTHx+PLl26yP7FxsYiNTUVXbp0QWJiIubOnYslS5Zg69at2LlzJ2bPno1+/fqhb18/1rkizyXlKk/vOgnoe7PLg/KPJpVlrRouqHXCwUZfW6k46xVds9A+w55N8vsxHeVDoULY+SpddMouwPy/E270O3kKRc+vbHcl7rrsLm3FN5Md6rrV2A/WyZLCgVtc59drPGhoEKV1kP3Zp61nGX9NgnCBa4Al68sp4cZdkfhQDLYJ3zed8BqTYkIkw6U2BOp1aM3a8iYDTusJ9dkAXdg4dZH14OKvnXj+ojKIQHPjr+6y1nIPkQl4fkoP3D2mI3q11rjfFLuR+npDy7GOZKikytRpGAGTGoXLgYDIO9bfmY/Btn/975gfGuOlINRsi46w76+iVeo6y3hausMdk58y/jVltoXG704xk6yfMMpnIG46+HoTqUFiZCK2TNqCe5J6oE2Ncza5v7xnutT9TKTKL1dDTzzxBIqKivD111+jpqYGd955J3bv3o3S0lJ89tln/tiER55++mnodDpMnDgR1dXVGDVqFFauXNno7SAHwo711aPqg1Uoed/UW/mJK58Gjn0L5FtGnxX3if2rLuKr6CgkRrqub5aXHofDqqPsKRwM2o+2P/ZhJ1yQEW8pGAogO9kewPP48DPuWa/bYNmgj0N9x6QAZb/a/xYO1gmSQiBBXL+/7qIFmnDC2E//A/rc1AwD98IF7kcmyyARThchOjdBFH+f+PmD2LVc6D6REhsiNToTsoGKI8Ftg+yzdLUH8qJmm9a77dUV2ubzlFNmk4b2LPkRKDsA5PZRfr5ZZ7b5aSCIsSuA1Hyg22SMS/XwrrgYbNtZ7NsxTnwNWkbjayzV54PdAreacV5bs35tIcXHgFWMUY/KmkYs+dCqF/DbTsvjINxUiRJ65MRHabgh6M9aokDj1Be2CpFgW4JRof6au3IDfgzAie9CtxauB2hTXF6SAEhINAXyswuNz6qp8svVUJcuXbB371688MILiI+Px/nz5zFhwgQsXLgQWVlZ/tiES9u2bZP9HRUVhRdffBEvvvhiwLcdrmrODIYx9WPb37f1vA3fnvoW2w5vc7ncu4d/wxGDAd2rNQy1LlDsjggAvefI/rxotq83o64Ob13zFtJj0oGH1U/2h7ZvgcMtHLq3KNyVW1XXMGKirN6B9zvcF6f2wIoP9mLuwLZIjjWi+PMDnq3g/rNA5RkgNs3trK5pvIDWSjgItZRKATgUIBbX35gHdl84vCfN8k64cCH6St2VABQGSBC7hkUqdAkLxZptsm4W9hMofw297rOYlNAKtnmS2Vau0m5ZN1KN+5NGq9mm4XuZ0NLyT3WdIfLdDgR/XbzFpADD7/FuWX/WVZMFD0MkmxVQrGlHjSdkMpubOx/PAx6d0BW3bdiF7jlJ/mmPO53HC8E2N+d57ccAe98N7o1FT0Yj1aKFvBcHYj0bZbMp6taiG2Z2moncBKEHley8QelcMTDBNr2fzi2uOnceb8Xbz9GjzRKqPBk1kPzK5z1EbW0tRo8ejZdffhn33OPliRU1OfUX5UHUG7veCADouq6ry+Wy6+qRXddwl+ryh/zerjohsh8BoG1iQxfH+JbAuaOKy0iShDapcYCYWGHd4QkHUV1EFJ67tod8YR8u2LOTY/D09d0BAGfOe1G7TJL8EGiD75ltTpzfE1nQRnwcKgEPt5phcM2RcIFb23BocHrVNUI2hlGhsL9jl61QoNK1NXTqEYVAO7QGxxyf2/UacI1C1rjmARJU2uBPOr2lDdbAvj+2Ey7dSIMVMD8jDEY0+E7f1iV+F10VBm9s/uquFUghsGsKlM4tE7F0ZHu0TFIZ4IP8w8fgwdXdW6F7TlLjDWIh/i7d3Qy++gXg4yeBnjcEtk2uaCzdcVU3jdnF2Q69iKyjzzdjkiRh2aXLHCfaHyudK/rh/DGtrh6nDXp0r7Zf/0kKAd7Jl+Zgw1eHsWaWSg8vy4Iur1Kmm2OwSqmnETUKn88YIyIi8N133/mjLdRE9Ujv4X4mAANaDpBPSGvvcv7/mjwfdabGbM+8kZ3KtnTdxgyDwwmX9YJDuBM+Z2A75wNWRheP2xhynLrQenhylJgj/1vhIJQWJ3TZa4oXqr6ecFi/RwnZrucLJiGzTQ/LSabTcd9d98CQrNkmdiMzoG2aZYj1sV1DpOBrKFzQyrKZXJyyac5S8yKbKGCZbRIg7t+9vfgT92uhkrUZCKEQbBO7WF5ynW/r0ilntgZdfehntoXCrimQFhUVYGKvED4mNwd+2Ie0To1tvAGNzMKVg7uAeGyaZYT2jM6BbZMrbrLSV8/sjbFds/Dg1c3gWqUJeGVGLwDAn6913x30/cO/4bODh5FUbw/qSpCcug8vGJKHnx4cjeEdMxxXIXCsO+4gqY3b9lDg+OVqaPr06Vi9ejUee+wxf6yOmpguadp24mPajgFwm31CchuX86+tG4Uexp9dzuMoP9q+MzKJexs36eAdDIl48NQZZNY3nF5aTxCEO+GSeCC7dRdw/iTQwnXA0BuNfoLra2bbFU9a/u89u2GC8ytYMDRPef1NpRupr11+5rwPfPRYQLI5/UYItumswTbHQ3aHK4Ae04G2Q5XXEZLBNvnF9lu3DMC+k+fRo7G6pbgTCtk23nYjTe+kPJ8334NABuEjouwDUfgls60ZB9u0jiQbSMmt7Y99PUbIgu0hEGzL6AKc+N4yMBRRc5fq+U3zoBLrXnUeH7x2aOXm5khRYQaKCl0Facg97VdlozpnYt/DYxDhNLqYMyMAo8mMSuH6VC/pkRIrry1qBhAV4eZYLEmuW5nTF9i9222bKDD8cpZfV1eHNWvWYMuWLejVqxdiY2Nlzz/11FP+2AwFgbk+CpL+ol/W5ZQe61gbwHHbXnTdy4ywd22r82R5SYdrzl+Q/Q1AfidcbH9KW8s/PxHfm8bv3eZjzba4dOC6dfa/FS6OYo1q3dSayL1zX7v8ZPcCpm3yT1sCRewyDZULXIMRuNpFLcxQHCDBIfATHxWBnrnJwWuPo6teAP42ARh6t8+rMui9vPsvedmNdMhdyvPJ3nON+5NAFq+XZbZ5G9QTM9uaYHauVuJxLliZbX0WAFv+6J91hdoNgMmvA/s+AHrODHZLiPyr+zRLaQFRr1lAxVGg3dBgtMhzYmZbTOOPOj+iUwZe23FIe03BUNu/NSetBwLnjinfVHRxbNQSaJMRzn2UupFqEp8lu5q6/EIl/iHUbJP0zfgGYRPgl1/m999/j549ewIA9u7dK3vO6y8OhTRzncLoLQ6y47Jx5Ly9gHbj1EgyKzyC+ws5tdFIZXfCm+l32d8124TA1LZ6Syq1LENKltnWRIJtYVAkVvwNeP1NF38vodLVrt6zwVgaXWYXYOkev4zMlRjtZeaOt5ltaplCkhfZUYYAjg6r96KGXLjy9+h23oiItgx+dOGU23ITbslqtoVAZltya+Cym4LdCk3EUdKJ3FLah+sjgBH3N35bvGWqcz9PAA1t3wKbb+6PvBax7mcG5DeS6ryo/exOjxn+X2dTMettS/KA0rmsqwGUPGTuOhE4+ykAhd4kWvW8AdI3j9v+7H2xGsmRySirLvNHE8lHPgXbfvnlF7Rt2xZbt271V3uoiTBpCLb5qgL2g00NNJ4km80Yf+48dkRFYdSFSvv0kX+yjDDUZ7629dgy2xrnIi2oYTynQKOPrYmwH/zPQuGEoSlmtrUdHOwWNI5O18B0Zj/+e9DLrh/iyXao3GWtPGN/HOQTaVV+uikVa/TyPZdlarmq2aYxC1Z2t11jwCaQmW1+GSW3md5scRICmW0AcOXT/llPqI5GGsLW39QXT/97L5ZfURjsplBT0vU64Os16uUFmoIgD1wiSRJ6tfYg8z4iyv74ixeAUQ/7t0FpBf5dX1MiSYG94fS7HcD3m2HsezOwaQgAICkyybt16SNcnqF4HcQjv/ApelBQUIBTp+yFw6+//nqcOHHC50ZRIPg5qGGyX7zERijfgTH7uM1D5nScMluCen+tH6l5uQdOl+LdI0cRK2ZNJeUCi78D+i1UXsjxItJ6kSELtnm5sxp4u+V/X0dVCxStF9Ba5Q23PVTsCixuz3FgilAVLhm6161D/U0foc46GqmnL9sgnPiFSrBNLETezLOaYiO9fM+9HSBB7f00RAHpnS0nqlndtbUhkIEdWTkAb7fTRG4M+Ex4nc3h96J1pF2y6ZeXir8v6IfCrMDfVKVmpHU/YNE3wE1NOAHD3ARGCRZFBHiUVu4zAye9IzD8HkQI3ZUjFbJDU+O03Yh0PEMRexYGopfhR/WX+H2dzZVPvyLHboHvvPMOLlzg0LLhwFyXDJgtO4BZnWcFbDuXVr8M/LEcF6A1KGP5Tnr8xVa7iJQ0Zny4UnS/5QRk2HLvlm8MWruRaaFw0awaeB37Z9+2RX6n96UeVSgG2+LS7Y+badD0kuxEAMDUPjlu5lThbc02tXklCZi31dI9NkvjCVm3Kdrm84ZfMtvCRHMbdVV8DaEwGAlRc5aaJ8+2amqaSmkTKzEjPBADOjDY1qhMCjWvE6K0ZWR3rHFdMiUrNsurNqn5n9l/dcubO/6KyGvzcjbgfzP/p5rZ5sjQGBffXo9c5pjd1XCCrjXjw+WqJcsJiIvlo4UBBOK8zU7xhdaLbQ9lR9fisjYp6rWkkrmzDjU+xaNk3UhD5EK9zaBgtyDgNs7rh/cWD3IzNLwL3tZsc/VlMUQCcW5qHYrZvonZruf1haxmm5ffy6Z2EeY1MdjWDIJT4ucdDrU3ich7/W4BYtOB/ouC3RJtxDqUXa/1zzqnvWF/nNPXP+ukgJtRfs7l8ylRDgN+dLgigK0hkU9nUpIkOaUmckCE8LBuzmUYkJfq0TKp0Z7NrzSQcVaimztm3gbb1LpSitMD+N2OitDj7UUDYTbLA2+NRmcATA3d7fwYJLm05ktsnN9Xfb8QHUKjQhIAH/fhYmZbsIqrOwqDY1K0UY+OmT50+ZJ1tfNDN1KtohJ9W14ryYsacuFKPOyGym/YF+LnbdRYdJyIwlN8BrBsb9M5b9D54UaSo4KRwO27gbOHgOxe/lkngAev7gy877fVNUu+DCQY4XDNLK7r6ryr8eOZH+UL+OFcqNIciRgpAANzNDM+BdvMZjNmzZqFyEhLNsPFixexYMECxMbKT2hKSkp82QyFoCHt3d8hHpE7Aut+WOfX7eanx7meweRtsC2A3Ug16tKqkS48legjgLqqhj/8+zoVgzfjXwHOnwRa+DjSHIWWUBwgQaaJnEA3Nq37Oafgmo/vp9eZyB6qEkbkYrDNjWbWjdSbkXGJKHw1lUAbIK9H6s/9dWK2X7PNr+udjesvzWWwzY38ZC8HJ3MjOz4b9/a9F3Wf12Fq4VTLRD9k699bOxtPGV/2eT3NnU9XQzNnzpT9PX36dJ8aQ83LVflXoX/L/pi/ZT6mFzbSd8Nf3Uh1CsG25ly7QFbXphFGbOs2OfDboMYXijXbRJFugvXhSmvml78z2xor2CZePCW38W4dTa1wtrfEE/DmEJxqpBHFiYganb5p7N+emNQt2E0IaevHrscnv33i07Vyizr7OUqU2eyU6JAZm4mXRwqBsb43Az+97fX2AOA3M0szaOHT1dDatWv91Q4KUTVlfRCZ9pFXy+qgQ/9W/fG/mf+zT4xOlmcZiPwxqo7fu5H6oWZbUyDeHdNrG/mGmj+Pb3yJgdpQDLa16BjsFoQmWXf5Zhhs8wdTXbBb0EjEzLbQvXjTTBcmN8yIKPxw8J9moUtaF3RJ6+LTOiIAfHHgMHQAdOOexe2JSfjDZ39QXyC9k0/bu2DWOnAh8cyDXKo5MxwXT4xF1eEZgd+YOGqgip657mp8eZkW63QRaR0gQQywNedgm3DAZrDNtVAMIgWI6iiyamSZbSF04jfsHqDjlYEZras5ED8rVwEWfwfbvN1fE3mjdH+wW0BE5D+1F+2PL5wOXjsoJMSZzYgxm4FeszCm7RjoJB0yYrwcOMuN4vrLA7Le5ih8rhrJa7Wlg5CZEIULeLVRt3vcbB855cOlQ7BtzylM75vreqHEHC+3ppLZJk6vrfRy3U2AGFRsjG6kTVlCy2C3oNF4nNkmZqeGUibokDvdzxPONI9Gqraf9FJTymwLF8151NWKo8FuARGR/6S2sz/m8TS8RSUBF88Cox8HAETqI/HltC+hC1BGdxXcDFhINgy2UciqFH7IeS3ikNdCQ72lTC/TcB0vIq2ZHuJO6vMXgKG/9279oU48SDOzjRp4fNmdmA0k5Voy3IzxgWgSBYLWIvJOmW2+DpDQjAM7TVYz/kySWge7BURE/hMt9PaprwleO1zJ6m5/nJRrGeWU/G/hl8DhHUCHK2yTIvWRLhbQrn1GHFDul1WFJXYjJQKgmtkmXlzWnGu85jQ2sR6RPzLb4hrSlm/80Pd1UdOh0wOL/gvc/HnzqPcULsT9XHMcIIG0YwCUiKjpCbXj6dC7Lf9f8aR9WmRCcNrSCB68unNwGxCfAXS6Sj5ohp+8NL2X39cZTpjZRprVnu2JiKRvMLDVwGA3xf9Ua7aFScBAPEj7YwS6ZXstF22h1JWQPObVdXcADvQUYGKAzWU3UofnfA3MdL0W2PYo0LKnb+sh/wm1CzYiIlLX7xZg/1agy8Rgt0Ru6O+BgUsAQ3j0linIaL69OZR6lv1n6RCU/WACtgahQU1MmEQSyBM1Zwbb/zDbgyUXj49H1ZHp+POQPwehVQHmGBOyBonCMdjmr8L2zS3Q1naI5f/ec4Pbjkbk8QAJ1DTJarZ5kNlWfti37abmAXf+Csz9t2/rcYfZWkRE1ByNehj43eeAMTbYLXEWJoG2sZdk4bI2Ke5nbMoumy/7s12LOERFhNBAaCEsTCIJ5Kjqt+tUn6s71wm15d1Rc2YgYBZ2lOYI1J3rgtgIH3bo1rTi7tO9X0dAqNVsa2YBIzWyzLYwec2emroRmPM+0P/WYLek0aTF+qfeA4U4WTdSDzLb8ob7vu2YlMBnQxpYyFe7ZhyY5LGNiCiImuc++MWpPaHTNc/XhpEPWP7PLwpuO5owBtvCVF2F6247F49ORvXJKz1e77UVbuqaXTYPWPQNcNXzHq87oNRqEYnT4zIbrz2NrRlfX/lNRDSQ2zcsapE9P6UHpvbJxYSerYLdFGoMmkcjdXguIjow7fG3mGZ+x9mfmmMW4PB7AX0kMPrRYLeEiIio6cjwcuBBsmn+V43kF9FGbamiCSZ7hpSkdBdZkixdh9QCFlGJAIIwpLBjW5VqtolFPpsb1ukhwbhuLfHI+K4w6HmICAs6L0cj1TWR+nzJbYLdgiakGQbbBt8BLD8KZHULdkuIiMJXJgM3TcX8msXAkLvsPRgyuwa1PU1ZEzlTpmC7tSgfqz/9Fdf2ynE9Y6fxwNH/AADaJbbzfEOz3gE+fAC3HhkNXPSioV5TGY305y32abEtGq85ja4ZXmARkTZej0baROp1jPgTcP4k0CPUyhdQo+HALUREwTX6USA6Gbjk+mC3xHfRKUBVKWBoIhn+Hrp32V1ASox9QkLL4DWmiePZRxhrc7QvDrTcrmne3q1TML5Httv5Ilq0twXbFDPb3MnsAkz7O/b/eRuAC54v7y2njI2Gi8jDO9TnaU6Y2UYUviStmW3CPl3SNZ0u1bGpwLS/B7sVTUNz7EZKRETBF53cfLrzz3ob+PABYNg9wW6J/3Wbihwx0EY+aSJnyhQIBpP2UWK0/uhmdJqBguQCLOqxyNtmBYdTN1KFnwaDbUTUHHlTs62pdCH1lzFPWP6/5qXgtoOIiIiCK6OzZeC0rEuC3RLvRCerP2f0PtBWbpYvO7Cyyut1NRdhdrZMgZZgTEDJVSXBboYXHINtDX/3XQhsf1E+rTliNgNR+BK7jmrtRqqLCFx7QlGf+UC3KUBUQrBbEljN+ThHREREATvWmx2up6dWnMOnMc2zq61WzThVh2TCMZjSbYr2edUGSGjRwT7NVO97m0IVM9uIwpdj91DV+TTWdmuumnugDWjeGdxERERkkVdk+X/iaocn3ATiGgYz1IJnFMxsIwWmWheppU1JTh/t8zoV/m74u04YpaE5B6Sa82sjItdkNdsYbAtvzGwjIiJq9maUAPV1lgGENs/VvlwGR5X1BAOO5MRcpz1iHdLS2nsws8MFhvVCUnbh2YyzAxlsIwpf3oxG2lRGIiXPMLONiIgoPHgyUvfNnwO9ZgET/w8AYNS7vzmXVteMe4VpxMy2MBZdnST7u6asD+or2wWnMf5044fA6b1AmwHal1EbIEG88GzWAalmHEgkItd0WkcjDeMBEsJFsz7OERERkVcyOgPjnrX9mZ8e53aRDrW1gWxRk8Cz5TBmrJOPGFJ9fHyQWuJn2b0t/zzh1I1UL/8f4EUIETVPXo1Gysy2ZsnEE2MiIiJyTXJIVPm4visu0f0SpNaELvYXCBNdjG2C3YSmxXpRKe5IGGwjouaI3UiJiIiIyEtHzGnBbkJIYrAtTETrjMFuQmhzzObQNfwtjuLKYBsRNUeaB0gQbj4ws615yh9p+T+6mQyURERERK6lNIMyUiGK3UgpJPXPT8Uvpy8gPrKRvqJqo5GCwTYiaubEIBq7kYa3K54EklsDXa8NdkuIiIioMRiihceRwWtHM8RgG4Wk5VcUol1aHEZ2ymicDToNkNBwISnLbOMgAkTUDImBM63dSDlAQvMUnQQMvzfYrSAiIqLGktgKOLnb8rj/rcFtSzPDbqQUkmKMBswZ2BY5KTHuZ/YHLZlt0SmN0xYiosaktRYba7YRERERNS9D77Y/jk4KWjOaIwbbiACFmm0NF5K5/ezTsns1XnuIiBqLLsL+WHM3Up4+EBERETV5UYmeL9Oio+zPraYefmpM88J+IGFoZnkFXgh2I0KNWmZbeiEw/2MgLrPx20RE1BjE+hyualOyGykRERERxcpHH/3YdEmQGhLaeGs6DI07dyHYTQg9qt1IAWR1A+IbqXYcEVFjixAK49bXqM/HbqREREREAbP8CkvG2O/HdHQzpx/xBmrA8J0NI+8e/g0n9AZ0qK0NdlNCkOMACYxDE1GYMETZH9e7OD4ws42IiIgoYOYNzsOEntlIi2vEUUGTWwM9ZwLGOI5G6mc8Ww4j2XX1yK6rD3YzQpOrzDYiouZMHI3ZZWabMJ+rUUuJiIiIyCuNGmizuuq5xt9mGGBEgQiQX0QCvJAkovCkuRspTx+IiIiIiNTwbJkIYGYbERHAbqRERERE5JFqGF0+b653/XxzxYgCEeCc2cbi30QUjrRmtjH7l4iIiIgavF5fFOwmhBwG24gAZrYREQEeBNuY2UZEREREFu/UXxbsJoQcni2Hsd/MaW7nmXJZLnq3Tm6E1gSZY3CNWRtEFI60diNl9i8RERERkSoG28LYPnM24t3M8+iEro3SlqBzymyTlOcjImrO2I2UiIiIiMhn7CtHBCgE23ghSURhqK5a/TmORkpEREREpAnPlokAAI4DJITZTyMuI9gtIKJQEJ2k/pws2MbsXyIiIiIiNWEWUSBSEe4128zmYLeAiIJp1jtATl/gmpfU55EF2BhsIyIiIiJSw5ptYeiFuquD3YTQw9FIiSictRkAzH3f9TziTYij3wS2PURERERETRgjCmHooJldBp04dolisI2ISE7cL5YdCFoziIiIiCjIRj4AAKiIznE7q9kUFejWhCRGFEhVpCGMvh7hPkBCbItgt4CIQl247ReJiIiISNmA24A7fkHFTdtVZ6k8NBv1FzNRdWRmIzYsdLAbKalaPKJ9sJvQeJwy28KsHtG1xcBbi4Ahdwa7JUQUqsIg47e+vh61tbXBbgY1MREREdDrGYwmIqIwE5uK7Fj1p+svdEDlrx0arz0hhsE2UqULp3hTuA+Q0KK9+3pNRBTemnGwzWw24/jx4zh79mywm0JNVFJSEjIzMyGF2806IiIiUsRgW5hwN9akud7YKO0IWRwggYjItWZ8E8IaaEtPT0dMTAwDJqSZ2WxGZWUlTp48CQDIysoKcouIiIgoFDDYRgSwZhsRkTvifjK3X/Da4Wf19fW2QFtqamqwm0NNUHR0NADg5MmTSE9PZ5dSIiIKK52yEoDjwW5F6GmS6TuPPvooLr30UsTHxyM9PR3XXHMN9uzZI5vn4sWLWLhwIVJTUxEXF4eJEyfixIkTQWpx0zSsY3qwm9B4mNlGROSamO3V84bgtcPPrDXaYmJigtwSasqs3x/W/CMionDzzOTuwW5CSGqSEYWPPvoICxcuxPbt2/Hvf/8btbW1uPzyy3HhwgXbPLfffjv++c9/YtOmTfjoo49w9OhRTJgwIYitbnraZ8QHuwmNyKHLUDPuLkVE5LNmmP3LrqPkC35/iIgoXLXPiEdcJDtNOmqS78h7770n+7u4uBjp6enYuXMnBg8ejPLycqxevRqvv/46hg8fDgBYu3YtCgsLsX37dvTt29dpndXV1aiurrb9XVFREdgXESKqjl6LqIy3UHWk+WQpeIWZbURE2vGGBBERERE1yGsRB5wKditCS7OIKJSXlwMAUlJSAAA7d+5EbW0tRowYYZunY8eOyM3NxRdffKG4jkcffRSJiYm2fzk5OYFveAioK++F83vvR31lXrCbElwMthERaccsHiIiIiJqMPmy8IifeKLJRxRMJhMWL16MAQMGoEuXLgAso4oZjUYkJSXJ5s3IyMDx48qV++6++26Ul5fb/h0+fDjQTQ8hTf5r4DvHC0cG24iI1DXDbqRERERE5J2oCJ4bOmryEYWFCxfi+++/x4YNG3xaT2RkJBISEmT/KIw4BtvYRYqISB33kSFh1qxZkCQJCxYscHpu4cKFkCQJs2bNsk07fPgw5syZg5YtW8JoNKJ169a47bbbcObMGdmyQ4cOhSRJkCQJkZGRaNWqFcaNG4eSkhLVtnTs2BGRkZGqNzXffvttDBkyBPHx8YiJicGll16K4uJiTa9z586dkCQJ27dvV3y+qKjIp7q8gV4/ERERhZ8mHWy75ZZb8Pbbb2Pr1q3Izs62Tc/MzERNTQ3Onj0rm//EiRPIzMxs5FZSk8BupERE2sVlBLsF1CAnJwcbNmxAVVWVbdrFixfx+uuvIzc31zbtl19+Qe/evbFv3z6sX78eP//8M15++WV8+OGH6NevH0pLS2Xrvemmm3Ds2DHs378fmzdvRqdOnTB58mTMmzfPqQ2ffvopqqqqMGnSJKxbt87p+eeffx5XX301BgwYgB07duC7777D5MmTsWDBAixbtszta+zVqxe6deuGNWvWOD134MABbN26FXPnznW7nmCtn4iIiMJPk4womM1m3HLLLXjzzTfxn//8B23btpU936tXL0RERODDDz+0TduzZw8OHTqEfv36NXZzm6QV13YLdhMal1OwjVkbREROJq0Bht8L5FwW7JYElNlsRmVNXVD+mc1mj9ras2dP5OTkyLLOSkpKkJubix49etimLVy4EEajER988AGGDBmC3NxcjBkzBlu2bMFvv/2Ge+65R7bemJgYZGZmIjs7G3379sXjjz+OV155BatWrcKWLVtk865evRpTp07FjBkznAJWhw8fxtKlS7F48WI88sgj6NSpE/Lz87F06VI8+eSTWLFiBXbs2OH2dc6dOxcbN25EZWWlbHpxcTGysrIwevRovPrqq+jduzfi4+ORmZmJqVOn4uTJk5reRy3rJyIiImWpccZgNyHkNMnRSBcuXIjXX38d//jHPxAfH2/rspCYmIjo6GgkJiZi7ty5WLJkCVJSUpCQkIBFixahX79+iiORkpwkARN7ZbufsTlhZhsRkXtdJga7BY2iqrYene57Pyjb/uGBUYgxenZ6NmfOHKxduxbTpk0DAKxZswazZ8/Gtm3bAAClpaV4//338fDDDyM6Olq2bGZmJqZNm4aNGzdi5cqVkFwMfjFz5kwsXboUJSUltkGozp07h02bNmHHjh3o2LEjysvL8cknn2DQoEEAgDfeeAO1tbWKGWzz58/H8uXLsX79evTp08fla5w2bRruuOMOvPHGG7jhBssI6mazGevWrcOsWbOg1+tRW1uLBx98EB06dMDJkyexZMkSzJo1C++8847b91DL+omIiEhZSgyDbY6aZEThpZdeQnl5OYYOHYqsrCzbv40bN9rmefrpp3HllVdi4sSJGDx4MDIzM13WGiG79PjIYDeh8THYRkRETdT06dPx6aef4uDBgzh48CA+++wzTJ8+3fb8vn37YDabUVhYqLh8YWEhysrKcOrUKZfb0el0aN++PQ4cOGCbtmHDBhQUFKBz587Q6/WYPHkyVq9ebXt+7969SExMRFZWltP6jEYj2rVrh71797p9jSkpKRg/frwsc27r1q04cOAAZs+eDcASdBwzZgzatWuHvn374rnnnsO7776L8+fP+2X9REREpCI1P9gtCDlNMrNNSxeLqKgovPjii3jxxRcboUXNyx/HdQ52E4KAAyQQEZFFdIQePzwwKmjb9lSLFi0wduxYFBcXw2w2Y+zYsUhLS3Oaz9MuqkrMZrMs+23NmjWywN706dMxZMgQPP/884iPj9e0TqNR293wOXPmYNSoUdi/fz/y8vKwZs0aDBkyBPn5lhP8nTt34o9//CO+/fZblJWVwWQyAQAOHTqETp06+bx+IiIiUhGp7ZgfTpi+Q05aMLPNeXRSIiIKG5IkIcZoCMo/V904XZkzZw6Ki4uxbt06zJkzR/Zcfn4+JEnCjz/+qLjsjz/+iOTkZLRo0cLlNurr67Fv3z5brdwffvgB27dvx5133gmDwQCDwYC+ffuisrLSNkp8QUEBysvLcfToUaf11dTUYP/+/Wjfvr2m11hUVITc3FwUFxejoqICJSUltoELLly4gFGjRiEhIQGvvfYavvrqK7z55pu27fi6fiIiIiJPMNhGBMiDbRwcgYiImpjRo0ejpqYGtbW1GDVKnpWXmpqKkSNHYuXKlbJRSwHg+PHjeO2113D99de7DfStW7cOZWVlmDjRUrtv9erVGDx4ML799lvs2rXL9m/JkiW2rqSTJk2CwWDAihUrnNb38ssvo7Ky0lYjzR2dTofZs2dj3bp1eP3112E0GjFp0iQAwE8//YQzZ87gsccew6BBg9CxY0fNgyNoWT8RERGRJxhsIwLkmWys10ZERE2MXq/Hjz/+iB9++EGxmP8LL7yA6upqjBo1Ch9//DEOHz6M9957DyNHjkSrVq3w8MMPy+avrKzE8ePHceTIEWzfvh133XUXFixYgJtvvhnDhg1DbW0tXn31VUyZMgVdunSR/bvxxhuxY8cO7N69G7m5uXjiiSfwzDPP4J577sFPP/2E/fv346mnnsKdd96Jhx56CF26dNH8OmfPno3ffvsNy5cvx5QpU2wDPuTm5sJoNOL555/HL7/8grfeegsPPvigx++j2vqJiIhIu+0m5Tqx4YRRBSJAHmxjvTYiImqCEhISkJCQoPhcQUEBvv76a7Rr1w7XXXcd8vLyMG/ePAwbNgxffPEFUlJSZPOvWrUKWVlZyMvLw4QJE/DDDz/YRiwFgLfeegtnzpzB+PHjnbZVWFiIwsJCW3bb7bffjpKSEnzyySfo3bs38vPzsXTpUhQXF2P58uUevcbc3FyMGDECZWVlsu6yLVq0QHFxMTZt2oROnTrhsccew5///GeP1u1q/URERKRduTk22E0IOsnsj2q5zVBFRQUSExNRXl6ueuLalHzzXjF6br8NAHBH7Txsqh+qOu8bC/qhd5sU1eebpdJfgee6Wx5HxAD3HAtqc4iIqHFcvHgRv/76K9q2bYuoqKhgNycslJaWoqioCAkJCXj33XcRExMT7Cb5jN8jIiIKe39MtD38oL4X5tUutf194LGxwWiR33kSJ2JmGxHAmm1ERESNJCUlBVu2bEFRURG++OKLYDeHiIiIyO8YbCMCHIJt/FkQEREFUmpqKu677z4UFRUBABYsWIC4uDjFfwsWLPB5e4FePxEREZHIEOwGEIUEWc02BtuIiIga0wMPPIBly5YpPuePch6BXj8RERGRiME2IoCZbUREREGUnp6O9PT0Jrt+IiIiIhGjCmFoW333YDchBAmZbazZRkREREREREReYrAtDJ1Ckuzvy8Jt5FElzGwjIiIiIiIiIj9gVIHw8PguKOpo71qRFGMMYmuCRKzZxmAbEREREREREXmJUYUwd9fojijIiEdvIbstPz0uiC0KEma2EREREREREZEfMKoQ5gYVpAW7CSGCmW1ERERERERE5DtGFQgAEBcV5gPTyrqRBq8ZRERE5L2hQ4di8eLFwW4GERERhTkG28Jci/hIAMB1vbMxojADD1zdOcgtChIx2MZoGxERNQGzZs2CJElYsGCB03MLFy6EJEmYNWuWbdrhw4cxZ84ctGzZEkajEa1bt8Ztt92GM2fOyJYdOnQoJEmCJEmIjIxEq1atMG7cOJSUlKi2pWPHjoiMjMTx48cVn3/77bcxZMgQxMfHIyYmBpdeeimKi4s1vc6dO3dCkiRs375d8fmioiJMmDBB07pc6dq1q+J7CQCvvvoqIiMjcfr0aZ+3Q0RERM0fg21hLiMhCgAQadDj/2b2xg392gS3QcEiq9nGYBsRETUNOTk52LBhA6qqqmzTLl68iNdffx25ubm2ab/88gt69+6Nffv2Yf369fj555/x8ssv48MPP0S/fv1QWloqW+9NN92EY8eOYf/+/di8eTM6deqEyZMnY968eU5t+PTTT1FVVYVJkyZh3bp1Ts8///zzuPrqqzFgwADs2LED3333HSZPnowFCxZg2bJlbl9jr1690K1bN6xZs8bpuQMHDmDr1q2YO3eu2/W4M3fuXKf30mrt2rW46qqrkJbG8htERETkHoNtYaImkieHrjGzjYiIGpjNQM2F4Pwzmz1qas+ePZGTkyPLOispKUFubi569Ohhm7Zw4UIYjUZ88MEHGDJkCHJzczFmzBhs2bIFv/32G+655x7ZemNiYpCZmYns7Gz07dsXjz/+OF555RWsWrUKW7Zskc27evVqTJ06FTNmzHAKiB0+fBhLly7F4sWL8cgjj6BTp07Iz8/H0qVL8eSTT2LFihXYsWOH29c5d+5cbNy4EZWVlbLpxcXFyMrKwujRo23T6urqcMsttyAxMRFpaWn4wx/+ALOG93X69OmoqqrC5s2bZdN//fVXbNu2zS8BPSIiIgoPYV6oK3yUpfbEitpJ+MXcMthNCU3MbCMiIqvaSuCRIB0vlx8FjLEeLTJnzhysXbsW06ZNAwCsWbMGs2fPxrZt2wAApaWleP/99/Hwww8jOjpatmxmZiamTZuGjRs3YuXKlZBcHANnzpyJpUuXoqSkBCNGjAAAnDt3Dps2bcKOHTvQsWNHlJeX45NPPsGgQYMAAG+88QZqa2sVM9jmz5+P5cuXY/369ejTp4/L1zht2jTccccdeOONN3DDDTcAAMxmM9atW4dZs2ZBr9fb5l23bh3mzp2LL7/8El9//TXmzZuH3Nxc3HTTTS63kZaWhquvvhpr1qzB9OnTbdOLi4uRnZ2Nyy+/3OXyRERERFbMbAsXkoTn6yfgX6a+wW5JaGLNNiIiaqKmT5+OTz/9FAcPHsTBgwfx2WefyYJF+/btg9lsRmFhoeLyhYWFKCsrw6lTp1xuR6fToX379jhw4IBt2oYNG1BQUIDOnTtDr9dj8uTJWL16te35vXv3IjExEVlZWU7rMxqNaNeuHfbu3ev2NaakpGD8+PGyzLmtW7fiwIEDmD17tmzenJwcPP300+jQoQOmTZuGRYsW4emnn3a7DcCSQbdt2zb8+uuvAOwBvZkzZ0Kn42kzERERacPMNiKAmW1ERGQXEWPJMAvWtj3UokULjB07FsXFxTCbzRg7dqxibTEtXSndMZvNsuw3xyyw6dOnY8iQIXj++ecRHx+vaZ1Go1HTfHPmzMGoUaOwf/9+5OXlYc2aNRgyZAjy8/Nl8/Xt21fWxn79+mHFihWor6+XZcApGTlyJLKzs7F27Vo88MAD+PDDD3Ho0CGngB4RERGRK7xFRwSANduIiMhGkixdOYPxz8sbPnPmzEFxcTHWrVuHOXPmyJ7Lz8+HJEn48ccfFZf98ccfkZycjBYtWrjcRn19Pfbt24e2bdsCAH744Qds374dd955JwwGAwwGA/r27YvKykps2LABAFBQUIDy8nIcPeocvKypqcH+/fvRvn17Ta+xqKgIubm5KC4uRkVFBUpKSvxeR02n02HWrFlYt24dTCYT1q5di2HDhqFdu3Z+3Q4RERE1bwy2EQHMbCMioiZt9OjRqKmpQW1tLUaNGiV7LjU1FSNHjsTKlSudRto8fvw4XnvtNVx//fUu67UBllpoZWVlmDhxIgDLwAiDBw/Gt99+i127dtn+LVmyxNaVdNKkSTAYDFixYoXT+l5++WVUVlbaarC5o9PpMHv2bKxbtw6vv/46jEYjJk2a5DSf44AL27dvR0FBgdusNqvZs2fj8OHDKCkpwZtvvsmBEYiIiDy03dQp2E0IOnYjJQJYs42IiJo0vV5vy1xTCiq98MIL6N+/P0aNGoWHHnoIbdu2xe7du3HHHXegVatWePjhh2XzV1ZW4vjx46irq8ORI0fw5ptv4umnn8bNN9+MYcOGoba2Fq+++ioeeOABdOnSRbbsjTfeiKeeegq7d+9G586d8cQTT2DZsmWIiorCjBkzEBERgX/84x9Yvnw5HnroIaflXZk9ezYeeOABLF++HFOmTHEa8AEADh06hCVLlmD+/Pn45ptv8PzzzysG+9S0bdsWw4cPx7x58xAZGYkJEyZoXpaIiIiAf9T3D3YTgo6ZbUQAoBPizrWVwWsHERGRlxISEpCQkKD4XEFBAb7++mu0a9cO1113HfLy8jBv3jwMGzYMX3zxBVJSUmTzr1q1CllZWcjLy8OECRPwww8/2EYsBYC33noLZ86cwfjx4522VVhYiMLCQlt22+23346SkhJ88skn6N27N/Lz87F06VIUFxdj+fLlHr3G3NxcjBgxAmVlZU7dZa1uuOEGVFVV4bLLLsPChQtx2223Yd68eR5tZ+7cuSgrK8PUqVMRFRXl0bJEREThzswEFkhmf1TLbYYqKiqQmJiI8vJy1RPXpuTd/x3Dza994zT9wGNjg9CaEPXHRMv/EbHAPUEqjE1ERI3q4sWL+PXXX9G2bVsGVRpJaWkpioqKkJCQgHfffRcxMZ4PChFq+D0iIqKwZ72eBtDz4ssohT2O0lziDp7EiZjZRuSE8WciIqJASUlJwZYtW1BUVIQvvvgi2M0hIiIi8jsG24icMOWViIgokFJTU3HfffehqKgIALBgwQLExcUp/luwYIFftvnJJ5+obiMuLs4v2yAiIiICOEBCWLvnisJgNyE06bSNVkZERET+8cADD2DZsmWKz/mrnEfv3r2xa9cuv6yLiIiIyBUG28LQ24sG4ov9ZzB7QJtgNyU06fizICIiakzp6elIT08P6Daio6ORn58f0G0QERERcAGsX8qoQhjq0ioRXVolup8xXDHYRkREREREROSVahiD3YSgY822MKHXsQ6ZZvqIYLeAiIiIiIiIiJoopvCEiaEd0tEjNwldmdHmHjPbiIiIiIiIiLTL7Qccch5lPNYYnjXRGVUIE0aDDm/+bkCwm9E0MNhGREREREREpF1Wd8VgW7hiN1IiR+xGSkRERERERKTdkDuBNoOAq14IdktCAoNtRI6Y2UZERERERESkXUwKMOttoOcM2eSbh+YFqUHBxWAbkSMG24iIqAmYNWsWJEnCggULnJ5buHAhJEnCrFmzbNMOHz6MOXPmoGXLljAajWjdujVuu+02nDlzRrbs0KFDIUkSJElCZGQkWrVqhXHjxqGkpES1LR07dkRkZCSOHz+u+Pzbb7+NIUOGID4+HjExMbj00ktRXFys6XXu3LkTkiRh+/btis8XFRVhwoQJmtal5MSJE4iIiMCGDRsUn587dy569uzp9fqJiIjCzSXZllrxV3VriYXD8oPcmuBgsI3IEbuREhFRE5GTk4MNGzagqqrKNu3ixYt4/fXXkZuba5v2yy+/oHfv3ti3bx/Wr1+Pn3/+GS+//DI+/PBD9OvXD6WlpbL13nTTTTh27Bj279+PzZs3o1OnTpg8eTLmzZvn1IZPP/0UVVVVmDRpEtatW+f0/PPPP4+rr74aAwYMwI4dO/Ddd99h8uTJWLBgAZYtW+b2Nfbq1QvdunXDmjVrnJ47cOAAtm7dirlz57pdj5qMjAyMHTtWcf0XLlzA3//+d5/WT0REFG5ev6kvXruxD56+vjskSQp2c4KCwTYiRzoG24iIwpnZbEZlbWVQ/pnNZo/a2rNnT+Tk5MiyzkpKSpCbm4sePXrYpi1cuBBGoxEffPABhgwZgtzcXIwZMwZbtmzBb7/9hnvuuUe23piYGGRmZiI7Oxt9+/bF448/jldeeQWrVq3Cli1bZPOuXr0aU6dOxYwZM5wCVocPH8bSpUuxePFiPPLII+jUqRPy8/OxdOlSPPnkk1ixYgV27Njh9nXOnTsXGzduRGVlpWx6cXExsrKyMHr0aACAyWTCE088gfz8fERGRiI3NxcPP/ywpvV/+OGHOHTokGz6pk2bUFdXh2nTprldBxEREVnERRowID8Nel14BtoAjkZK5EzPnwURUTirqqtCn9f7BGXbO6buQExEjEfLzJkzB2vXrrUFhNasWYPZs2dj27ZtAIDS0lK8//77ePjhhxEdHS1bNjMzE9OmTcPGjRuxcuVKl3efZ86ciaVLl6KkpAQjRowAAJw7dw6bNm3Cjh070LFjR5SXl+OTTz7BoEGDAABvvPEGamtrFTPY5s+fj+XLl2P9+vXo08f1+z1t2jTccccdeOONN3DDDTcAsARF161bh1mzZkGv1wMA7r77bqxatQpPP/00Bg4ciGPHjuGnn35y+x5eccUVyMjIQHFxMe677z7b9LVr12LChAlISkpyuw4iIiIiK2a2ETlizTYiImpCpk+fjk8//RQHDx7EwYMH8dlnn2H69Om25/ft2wez2YzCwkLF5QsLC1FWVoZTp0653I5Op0P79u1x4MAB27QNGzagoKAAnTt3hl6vx+TJk7F69Wrb83v37kViYiKysrKc1mc0GtGuXTvs3bvX7WtMSUnB+PHjZZlzW7duxYEDBzB79mwAlsDfs88+iyeeeAIzZ85EXl4eBg4ciBtvvNHt+vV6PWbOnIni4mJbduH+/fvxySefYM6cOW6XJyIiIhIxqkDkiN1IiYjCWrQhGjumuu/aGKhte6pFixYYO3asLVA0duxYpKWlOc3naRdVJWazWZb9tmbNGllgb/r06RgyZAief/55xMfHa1qn0WjUNN+cOXMwatQo7N+/H3l5eVizZg2GDBmC/HxL4eUff/wR1dXVKCoq8uAVydf/2GOPYevWrRg+fDjWrl2LNm3aYPjw4V6tj4iIiMIXM9uIHDGzjYgorEmShJiImKD887aI8Jw5c1BcXIx169Y5ZWLl5+dDkiT8+OOPisv++OOPSE5ORosWLVxuo76+Hvv27UPbtm0BAD/88AO2b9+OO++8EwaDAQaDAX379kVlZaVtZM+CggKUl5fj6NGjTuurqanB/v370b59e02vsaioCLm5uSguLkZFRQVKSkpkAxc4dpH1VEFBAQYNGoS1a9fCZDLhr3/9K2bPnh22hZ2JiIjIewy2EVnFNlxkFI4LbjuIiIg8NHr0aNTU1KC2thajRo2SPZeamoqRI0di5cqVslFLAeD48eN47bXXcP3117sNKq1btw5lZWWYOHEiAMvACIMHD8a3336LXbt22f4tWbLE1pV00qRJMBgMWLFihdP6Xn75ZVRWVtpqsLmj0+kwe/ZsrFu3Dq+//jqMRiMmTZpke76goADR0dH48MMPNa1Pydy5c7F582Zs3rwZv/32G2bNmuX1uoiIiCh8MYWHyOp324Fj3wJ57C5CRERNi16vt2WuWQcLEL3wwgvo378/Ro0ahYceeght27bF7t27cccdd6BVq1ZOI3ZWVlbi+PHjqKurw5EjR/Dmm2/i6aefxs0334xhw4ahtrYWr776Kh544AF06dJFtuyNN96Ip556Crt370bnzp3xxBNPYNmyZYiKisKMGTMQERGBf/zjH1i+fDkeeughp+VdmT17Nh544AEsX74cU6ZMkWWzRUVF4a677sKdd94Jo9GIAQMG4NSpU9i9e7csA86Va6+9Frfeeivmz5+Pyy+/HDk5OZrbRkRERGTFzDYiq9g0IL8IYHcRIiJqghISEpCQkKD4XEFBAb7++mu0a9cO1113HfLy8jBv3jwMGzYMX3zxBVJSUmTzr1q1CllZWcjLy8OECRPwww8/2EYsBYC33noLZ86cwfjx4522VVhYiMLCQlt22+23346SkhJ88skn6N27N/Lz87F06VIUFxdj+fLlHr3G3NxcjBgxAmVlZYoDF/zhD3/A0qVLcd9996GwsBDXX389Tp48qXn9MTExmDx5sur6iYiIiLSQzP6oltsMVVRUIDExEeXl5aonrkRERNS0Xbx4Eb/++ivatm2LqKioYDcnLJSWlqKoqAgJCQl49913ERMTE+wm+YzfIyIioubPkzgRM9uIiIiIqNGkpKRgy5YtKCoqwhdffBHs5hARERH5HYNtRERERNSoUlNTcd9996GoqAgAsGDBAsTFxSn+W7Bggc/be+SRR1TXP2bMGJ/XT0RERCRiN1IV7EZKRETU/LH7X2g4efIkKioqFJ9LSEhAenq6T+svLS1FaWmp4nPR0dFo1aqVT+vn94iIiKj58yROxNFIiYiIiCio0tPTfQ6ouZKSkuI0CAQRERFRoLAbKREREYU9JvqTL/j9ISIiIhGDbURERBS2IiIiAACVlZVBbgk1Zdbvj/X7REREROGN3UiJiIgobOn1eiQlJeHkyZMAgJiYGEiSFORWUVNhNptRWVmJkydPIikpCXq9PthNIiIiohDAYBsRERGFtczMTACwBdyIPJWUlGT7HhEREREx2EZERERhTZIkZGVlIT09HbW1tcFuDjUxERERzGgjIiIiGQbbiIiIiGDpUsqgCRERERH5qlkPkPDiiy+iTZs2iIqKQp8+ffDll18Gu0lERERERERERNSMNdtg28aNG7FkyRLcf//9+Oabb9CtWzeMGjWK9ViIiIiIiIiIiChgJLPZbA52IwKhT58+uPTSS/HCCy8AAEwmE3JycrBo0SL8/ve/d5q/uroa1dXVtr/Ly8uRm5uLw4cPIyEhodHaTUREREREREREoaWiogI5OTk4e/YsEhMTXc7bLGu21dTUYOfOnbj77rtt03Q6HUaMGIEvvvhCcZlHH30Uf/rTn5ym5+TkBKydRERERERERETUdJw7dy48g22nT59GfX09MjIyZNMzMjLw008/KS5z9913Y8mSJba/z549i9atW+PQoUNu30QiIiIiIiIiImq+zGYzzp07h5YtW7qdt1kG27wRGRmJyMhIp+mJiYnsRkpEREREREREFOa0JmM1ywES0tLSoNfrceLECdn0EydOIDMzM0itIiIiIiIiIiKi5q5ZBtuMRiN69eqFDz/80DbNZDLhww8/RL9+/YLYMiIiIiIiIiIias6abTfSJUuWYObMmejduzcuu+wyPPPMM7hw4QJmz56tafnIyEjcf//9il1LiYiIiIiIiIiIlEhms9kc7EYEygsvvIAnn3wSx48fR/fu3fHcc8+hT58+wW4WERERERERERE1U8062EZERERERERERNSYmmXNNiIiIiIiIiIiomBgsI2IiIiIiIiIiMhPGGwjIiIiIiIiIiLyEwbbiIiIiIiIiIiI/ITBNiIiIiIiIiIiIj9hsI2IiIiIiIiIiMhPwjbYZjabg90EIiIiIiIiIiJqZsIq2LZt2zbcfPPNOHLkCCRJgslkCnaTiIiIiIiIiIioGQmLYNu5c+dwxx134IorrsDmzZuxdu1aAIBOFxYvn4iIiIiIiIiIGklYRJv27t2LL774Ai+88AKuvfZa/Pvf/8ZXX30FAMxuIyIiIiIiIiIivwmLYFuvXr1w9913Y86cOZgxYwYMBgPWrFkDgNltRERERERERETkP80u0rRz50785S9/wccff4yjR48CsAyGMHbsWABA3759MWTIEOzatQv/7//9PwBAfX19sJpLRERERERERETNSLMJtpWWlmLSpEkYOXIkNm7ciEmTJmHWrFmoq6uDJEkwm822oNrUqVPRokULvPbaazh//jz0ej1HJyUiIiIiIiIiIp81i2Db4cOHbYG17du345133sGaNWtw4sQJPPPMMwAASZKg1+sBAAUFBRg7diwOHz6MdevWAbDUdSMiIiIiIiIiIvJFswi2nT9/HomJiVi2bBnat2+PyMhIDBkyBJmZmaiqqpLNax0Q4brrrkNhYSE2b96MBQsWoLCwEKtXrw5G84mIiIiIiIiIqJkwBLsB/tCyZUs8+uijyM7OBmAJqMXHx+PcuXOIioqSzWsdECE5ORkxMTHYtm0bjh07hpKSElxzzTWN3XQiIiIiIiIiImpGmmywzWQy2QJniYmJSExMBGAZDEGn06G0tBS//vor+vbta5suSRIAoKKiAhMmTMCnn36Kp556CosXLw7KayAiIiIiIiIioualyXQj/dvf/ib72xpo+/LLLwEAdXV1AGALqO3cuRNxcXHo0KGDLNAGAAkJCZg+fTpOnz7NQBsREREREREREflNyAfbNm/ejKysLCxduhTHjx+3TTeZTHjuuefQt29fnD59GgaDJUnPOqro9u3bkZeXh/T0dEiShBUrVuAvf/mLbflZs2YhLi6ucV8MERERERERERE1ayEbbDt48CD69OmDG2+8EUuWLMGJEyeQmZlpe16n02Ho0KGYP38+SktLbdOtGWz/+c9/MH78eOzatQudO3fGfffdZ+tqSkREREREREREFAiS2ZoKFkJqamqwfPlyPPXUUzh79iwSEhJQW1uLQ4cOITU1FUlJSQDkddtE+/btQ69evRATE4PTp09jyZIleOKJJxr5VRARERERERERUbgJycw2o9GIOXPmID09HcXFxVi/fj26du2K66+/Hh07dsSLL76I06dPQ6fTwWQyOS1fU1ODmJgYjBgxAsePH2egjYiIiIiIiIiIGkVIZLbt3bsXrVu3RmRkJOrr66HX62EymfDEE09g+fLl6N69OxYuXIjs7Gy88847+OijjzB06FA888wzAIBz585h4cKFGDRoEG666SacOnUK1dXVyM7ODu4LIyIiIiIiIiKisBLUYNupU6ewaNEivPPOO3jkkUdwyy23yEYOPXz4MFatWoWioiIMGTLEttyf/vQnlJSU4PXXX0fnzp1RVlaGuXPnYu/evfj++++D9XKIiIiIiIiIiCjMBS3YduDAAcyfPx/V1dUwGo2IiIjAypUr0bp1a1t2W319Pc6ePYvU1FQAsAXi3n77bcyZMwcfffQRCgsLAQC//fYbWrVqFYyXQkREREREREREBCCINduys7PRoUMHPPbYY5g/fz7Onj2L1atXAwD0er3tf2ugTfTzzz8jPT1d9hwDbUREREREREREFGyGoG3YYMDDDz+M+Ph4AMBHH32ErVu3Yvv27ejbt6/TSKNVVVUAgLfffhsvvfQSbrzxRqSnpwel7UREREREREREREoaNbOtvr5e9nd8fLxt2pQpUxAZGYk1a9ZYGiYE2g4cOIAnnngCI0aMwPz583HbbbfhjjvuaLyGExERERERERERaRDQYJs1G83K2j30l19+AQBbbTYA6NevH4YOHYrvvvsOmzdvli3Xpk0bZGdnY9KkSThx4gR+97vfBbLZREREREREREREXgnIAAkbNmzAqlWrkJCQgGHDhuH6669HRkYGysvLsWjRIuzZsweffPIJjEYjANi6jP7yyy9YsmQJjEYjHn30Ubz00kvo2rUrZs6cKQvMERERERERERERhSK/ZradPXsWU6ZMwe23347hw4ejRYsWeOqpp/DGG28AABITE9GtWzf0798f5eXl9kY0dBlt164dxowZg88//xxdu3bFX/7yF6SlpQEAA21ERERERERERBTy/DpAwldffYXvv/8en376KfLy8gAAffv2xcGDB23z3HLLLYiMjHRa1mw24+uvv8aaNWtQVlaGRx55BIsXL/Zn84iIiIiIiIiIiALKL8E2s9kMSZLwySefICYmBgaDfbWtWrXCoEGDcO7cOcTHxyMyMtI2v0iSJDz44INo1aoVtmzZYhullIiIiIiIiIiIqKnwumbbxx9/jKqqKhQVFdmCa+vXr8e9996Lfv36Yfjw4XjwwQdRVlaGli1bIj4+HjNnzrQNbnD48GE8//zzGD9+PPr16wfAMqBCdHS0n14aERERERERERFR4/K4Ztvp06cxc+ZMDB06FHfddReOHDlie27KlCm4//77UVBQgD/+8Y+YPHky9uzZgzfffBODBw/GX/7yF/zwww8AgAMHDqCkpASbNm2yLc9AGxERERERERERNWUeBdvq6uqwadMmnDhxAhs2bMC+ffuwYcMG1NTU2Oa54YYbMGLECMTHx2PRokXIyMhAhw4dMHr0aFRUVODo0aMAgEGDBmHdunV46qmn/PuKiIiIiIiIiIiIgsSjmm0GgwE9e/ZEdnY2xo0bh59++glPPfUURo8eje7du9vm+/TTT5Geno6WLVvaplVVVUGSJNvACQAwYMAA318BERERERERERFRiPC4Zpvj4AatWrXClVdeiT//+c+2QQ2+/fZb9OjRA/feey+GDx+OI0eO4N5778XVV1+Nxx9/HJGRkU4DJBARERERERERETV1Xg+QUFNTA6PRiE2bNmHq1Kl45513MHLkSNvzDz74IF599VVERESguroad955J+bNm+e3hhMREREREREREYUar4Ntov79+yM2NhZ/+9vfkJGRgdLSUqSkpODChQvYs2cPevbs6Y+2EhERERERERERhTSfgm11dXUwGAzYvXs3unXrhqeeegr79+/H559/jpdffhm9evXyZ1uJiIiIiIiIiIhCml8y2wDgsssuw9dff43c3Fy88sorGDVqlD9WS0RERERERERE1GTofF3B/v370bVrV+zevRurVq3CgQMHGGgjIiIiIiIiIqKw5HOwTa/XY+LEiTh9+jTmzp3rjzYRERERERERERE1SX7rRkpERERERERERBTufM5sIyIiIiIiIiIiIgsG24iIiIiIiIiIiPyEwTYiIiIiIiIiIiI/YbCNiIiIiIiIiIjITxhsIyIiIiIiIiIi8hMG24iIiIiIiIiIiPyEwTYiIiIiIiIiIiI/YbCNiIiIqBmaNWsWrrnmmkbfbnFxMSRJgiRJWLx4saZlZs2aZVvm//2//xfQ9hEREREFmiHYDSAiIiIiz0iS5PL5+++/H88++yzMZnMjtUguISEBe/bsQWxsrKb5n332WTz22GPIysoKcMuIiIiIAo/BNiIiIqIm5tixY7bHGzduxH333Yc9e/bYpsXFxSEuLi4YTQNgCQZmZmZqnj8xMRGJiYkBbBERERFR42E3UiIiIqImJjMz0/YvMTHRFtyy/ouLi3PqRjp06FAsWrQIixcvRnJyMjIyMrBq1SpcuHABs2fPRnx8PPLz8/Huu+/KtvX9999jzJgxiIuLQ0ZGBmbMmIHTp0973OaVK1eioKAAUVFRyMjIwKRJk3x9G4iIiIhCEoNtRERERGFi3bp1SEtLw5dffolFixbh5ptvxrXXXov+/fvjm2++weWXX44ZM2agsrISAHD27FkMHz4cPXr0wNdff4333nsPJ06cwHXXXefRdr/++mvceuuteOCBB7Bnzx689957GDx4cCBeIhEREVHQsRspERERUZjo1q0b7r33XgDA3XffjcceewxpaWm46aabAAD33XcfXnrpJXz33Xfo27cvXnjhBfTo0QOPPPKIbR1r1qxBTk4O9u7di/bt22va7qFDhxAbG4srr7wS8fHxaN26NXr06OH/F0hEREQUApjZRkRERBQmLrnkEttjvV6P1NRUdO3a1TYtIyMDAHDy5EkAwLfffoutW7faasDFxcWhY8eOAID9+/dr3u7IkSPRunVrtGvXDjNmzMBrr71my54jIiIiam4YbCMiIiIKExEREbK/JUmSTbOOcmoymQAA58+fx7hx47Br1y7Zv3379nnUDTQ+Ph7ffPMN1q9fj6ysLNx3333o1q0bzp496/uLIiIiIgox7EZKRERERIp69uyJzZs3o02bNjAYfDttNBgMGDFiBEaMGIH7778fSUlJ+M9//oMJEyb4qbVEREREoYGZbURERESkaOHChSgtLcWUKVPw1VdfYf/+/Xj//fcxe/Zs1NfXa17P22+/jeeeew67du3CwYMH8de//hUmkwkdOnQIYOuJiIiIgoPBNiIiIiJS1LJlS3z22Weor6/H5Zdfjq5du2Lx4sVISkqCTqf9NDIpKQklJSUYPnw4CgsL8fLLL2P9+vXo3LlzAFtPREREFByS2Ww2B7sRRERERNQ8FBcXY/HixV7VY5MkCW+++SauueYav7eLiIiIqLEws42IiIiI/Kq8vBxxcXG46667NM2/YMECxMXFBbhVRERERI2DmW1ERERE5Dfnzp3DiRMnAFi6j6alpbld5uTJk6ioqAAAZGVlITY2NqBtJCIiIgokBtuIiIiIiIiIiIj8hN1IiYiIiIiIiIiI/ITBNiIiIiIiIiIiIj9hsI2IiIiIiIiIiMhPGGwjIiIiIiIiIiLyEwbbiIiIiIiIiIiI/ITBNiIiIiIiIiIiIj9hsI2IiIiIiIiIiMhPGGwjIiIiIiIiIiLyk/8P+08h5NY+D2cAAAAASUVORK5CYII=", "text/plain": [ - "
" + "
" ] }, - "metadata": { - "needs_background": "light" - }, + "metadata": {}, "output_type": "display_data" } ], "source": [ "# Compute the instantaneous frequency\n", - "inst_freq = power.characteristics.instantaneous_frequency(voltage) \n", + "inst_freq = power.characteristics.instantaneous_frequency(voltage)\n", "\n", "# Display the result\n", - "inst_freq.plot(figsize=(15,5), ylim=(0,100),\n", - " title='Instantaneous Frequency').set(xlabel='Time [s]',\n", - " ylabel='Frequency [Hz]');\n", + "inst_freq.plot(figsize=(15, 5), ylim=(0, 100), title=\"Instantaneous Frequency\").set(\n", + " xlabel=\"Time [s]\", ylabel=\"Frequency [Hz]\"\n", + ")\n", "inst_freq.head()" ] }, @@ -316,7 +329,7 @@ "metadata": {}, "source": [ "## Power Quality\n", - "The `power.quality` module can be used to compute harmonics of current. and voltage and current distortions following IEC/TS 62600-30 and IEC/TS 61000-4-7. Harmonics and harmonic distortion are required as part of a power quality assessment and characterize the stability of the produced power. " + "The `power.quality` module can be used to compute current or voltage harmonics and current distortions following IEC/TS 62600-30 and IEC/TS 61000-4-7. Harmonics and harmonic distortion are required as part of a power quality assessment and characterize the stability of the produced power. " ] }, { @@ -328,23 +341,21 @@ "outputs": [ { "data": { - "image/png": "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l0olJk+ezNlnn91VtmTJEubPn8/cuXOZN28eS5Ys6Vp3ySWXMGfOHBYsWMCRRx7JxRdfzPr163vsY8mSJZgZq1ev7lH+8MMPc9JJJ3H00Udz1FFHcf311+8x1quuuoprr70WgNNOO42+Tq55yy238PGPf7xPdQeDEsQRri1fIhcLqbVUj/JkLEnRjGIpGKbIRERERESGV01NDc888wzZbBaAe++9l5kzZ3atX7ZsGYsXL+auu+5i1apV3H333SxevJinn366q84111zDsmXLePbZZzn++OM5/fTTKRQKXevr6+s59dRTqa+v7yrbvHkz73vf+7jxxhtZvXo1f/zjH7npppu48847h+BdV5YmqRnh2nIl2mPO1HhVj/JkLEURKBSLwxOYiIiIiEine/4RNi8f3DanzYO3/cteq5111ln88pe/5Pzzz6e+vp4LL7yQhx56CIBrr72WL37xi8yZMweAOXPm8IUvfIFrrrmGW2+9tUc7ZsanP/1p7rzzTu655x7OO+882traePjhh7n//vs555xz+MpXvgLAddddxyWXXMIJJ5wAwKRJk7j66qv58pe/zDve8Y4+vb1bb72VD3/4w5RKJW6++WZOOumkPh+aSlIP4gjX3tFBW9yoS9b2KE/GkhTMKOazwxSZiIiIiMjwu+CCC/jpT39KLpfj6aef5uSTT+5at2LFCk488cQe9RctWsSKFSt6be+EE07oGk561113ceaZZ3LkkUcyceJEli5dusd2V65c2ee4Ozo6eOqpp7j++uu59NJL+7xdpVWsB9HMbgbOBra6+3FR2c+Ao6Iq44Amd1+4m23XAK1AAJQGcqPH/V2+tYGWWIwxqboe5al4Cjcjn28fpshERERERCJ96OmrlPnz57NmzRrq6+s566yzBtyeu3e9rq+v55Of/CRQTkTr6+t3SQz768ILLwTg9a9/PS0tLTQ1NTFu3LhBaXsgKjnE9Bbge8CPOwvc/b2dr83sX4HmPWz/RnffXrHo9hNtbZsJzBiXGd+jPBUv3/wwl28bjrBEREREREaMc889l8WLF/PAAw/Q0NDQVX7MMcewdOlSFixY0FW2dOlSjj322F7bevLJJ3nTm95EY2Mj9913H8uXL8fMCIIAM+Oaa67pave8887r0e6iRX3v1+p+C7vdLQ+Xig0xdfcHgcbdrbPyu38PUL+79fKKtvZNAIyvntCjPJ2IEsSCEkQRERERGd0uvfRSrrzySubNm9ejfPHixXzzm99kzZo1AKxZs4ZvfOMbfPazn92lDXfnu9/9Lps2beLMM8/kjjvu4P3vfz9r165lzZo1rFu3jjlz5vDQQw/xsY99jFtuuYWnnnoKgIaGBq644gq+/OUv9znmn/3sZ0B5NtSxY8cyduzY/r35QTZck9S8Dtji7s/1st6B35qZA//p7t/vrSEzuwy4DGD27NmDHuhw68huA2BC7ZQe5Z0JYr6gIaYiIiIiMrrNmjWLyy+/fJfyhQsX8q1vfYtzzjmHYrFIMpnk6quvZuHChV11Pve5z/G1r32Njo4OTjnlFO6//35SqRT19fV8/vOf79Heu971Lurr67nhhhu47bbbuOyyy2hubmbNmjXccsstvOENb+hzzJlMhuOPP55iscjNN9/c7/c+2Kz7GNtBb9zsEOD/Oq9B7FZ+A/C8u/9rL9vNdPcNZjYFuBf4RNQjuUeLFi3yvt5PZH9x7Y/+gR9xDz846UpOnnt+V/ltv/0S39p0F1fM+DIXvOU9wxihiIiIiIxGq1atYu7cucMdxohw/fXXc8MNN/Dggw8yfvz4vW8wSHb3GZjZ0oHM4TLks5iaWQJ4J/Cz3uq4+4boeStwJzAy5nwdBvlCEwBjaqf1KE8nMwAUCh1DHZKIiIiIiHTz0Y9+lOXLlw9pclgpwzHE9M3Aandfv7uVZlYDxNy9NXp9BvDVoQxwJMmVWiAFY2pn9CjPJMv3RSyWlCCKiIiIiIwUX//617n99tt7lL373e/miiuu2ON2P/zhD/n3f//3HmWvfe1rue666wY9xj2p5G0u6oHTgElmth640t1vAi5gp8lpzGwG8AN3PwuYCtwZzeKTAP7b3X9dqThHuoK3AjCmZnKP8q4Esaj7IIqIiIiIjBRXXHHFXpPB3fngBz/IBz/4wQpEtG8qliC6+4W9lF+ym7KNwFnR6xeBBTvXGa0KYQcxd2qSNT3Kq9LVABQDJYgiIiIiIjI4hvwaRNk3BbLUhEbMen5UVanOBDE3HGGJiIiIiMgBSAniCJe3ArW+600zU8nOBDE/1CGJiIiIiMgBSgniCJeLlajezUjgVKKcIJbUgygiIiIiIoNECeII5u7kYgE1pHZZl4yGmAahehBFREREZHQyMy666KKu5VKpxOTJkzn77LO7ypYsWcL8+fOZO3cu8+bNY8mSJV3rLrnkEubMmcOCBQs48sgjufjii1m/vufNFpYsWYKZsXr16h7lDz/8MCeddBJHH300Rx11FNdff/0eY73qqqu49tpr9+n9rVmzhuOOO27vFQeREsQRLFsM6Ig51ZbeZV0qWQtASQmiiIiIiIxSNTU1PPPMM2Sz5Ykb7733XmbOnNm1ftmyZSxevJi77rqLVatWcffdd7N48WKefvrprjrXXHMNy5Yt49lnn+X444/n9NNPp1AodK2vr6/n1FNPpb7+lRsxbN68mfe9733ceOONrF69mj/+8Y/cdNNN3HnnnUPwritrOO6DKH3Uli3SFofqePUu61KdPYhBYZd1IiIiIiJD6VuPfovVjav3XnEfHD3haD5/0uf3Wu+ss87il7/8Jeeffz719fVceOGFPPTQQwBce+21fPGLX2TOnDkAzJkzhy984Qtcc8013HrrrT3aMTM+/elPc+edd3LPPfdw3nnn0dbWxsMPP8z999/POeecw1e+8hUArrvuOi655BJOOOEEACZNmsTVV1/Nl7/8Zd7xjnfsNebnn3+ej3zkI2zbto14PM7tt9/OYYcdtk/Hp1LUgziCtbY20RqLUZuo3WVdZw9iQHGowxIRERERGTEuuOACfvrTn5LL5Xj66ac5+eSTu9atWLGCE088sUf9RYsWsWLFil7bO+GEE7qGk951112ceeaZHHnkkUycOJGlS5fusd2VK1f2Kea/+Zu/4WMf+xjLli3jkUceYfr06X3abiioB3EEa27aSMmM2tSYXdalovsiBqESRBEREREZXn3p6auU+fPns2bNGurr6znrrLMG3J67d72ur6/nk5/8JFBOROvr63dJDPdVa2srGzZs6OppzGQyA2pvsClBHMGaWjYCUJcZv8u6ZKI8cU2oHkQRERERGeXOPfdcFi9ezAMPPEBDQ0NX+THHHMPSpUtZsGBBV9nSpUs59thje23rySef5E1vehONjY3cd999LF++HDMjCALMjGuuuaar3fPOO69Hu4sWLarMGxxCGmI6gjW1bQJgbNXEXdYlLIG5E3hpqMMSERERERlRLr30Uq688krmzZvXo3zx4sV885vfZM2aNUB5VtBvfOMbfPazn92lDXfnu9/9Lps2beLMM8/kjjvu4P3vfz9r165lzZo1rFu3jjlz5vDQQw/xsY99jFtu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\n", + "image/png": "iVBORw0KGgoAAAANSUhEUgAABOcAAAHWCAYAAAA8fO0eAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8pXeV/AAAACXBIWXMAAA9hAAAPYQGoP6dpAACyWUlEQVR4nOzdd3RUdd7H8c+dmh46Seihg4IKiqCILCpiQ7GBIiI2FNYCWNC1YX107QV3XRBWV7FhWQsWBEUpKyAqRYHQSygJpE6f+/wxyWhMAplk0sj7dc49mbn3d3/3O8O453k+51cM0zRNAQAAAAAAAKhxltouAAAAAAAAAGioCOcAAAAAAACAWkI4BwAAAAAAANQSwjkAAAAAAACglhDOAQAAAAAAALWEcA4AAAAAAACoJYRzAAAAAAAAQC0hnAMAAAAAAABqCeEcAAAAAAAAUEsI5wAAANCgjR07Vu3bt6/tMgAAQANFOAcAABqcjIwMXX/99UpPT1dMTIySkpJ00kkn6dlnn5XL5art8irt008/1f3331/h9qeeeqqOOuqoMq9t2bJFhmHo73//e5SqAwAAQFlstV0AAABATfrkk0908cUXy+l0asyYMTrqqKPk9Xr13Xff6bbbbtOaNWv0z3/+s7bLrJRPP/1UL774YkQBHaRXXnlFwWCwtssAAAANFOEcAABoMDZv3qyRI0eqXbt2+vrrr5Wamhq+NmHCBG3cuFGffPJJVJ5VUFCg+Pj4UudN05Tb7VZsbGxUnlNfuN1uORwOWSx1b+KG3W6v7RIAAEADVvf+ryMAAIBq8vjjjys/P18zZswoEcwV69Spk26++WZJv0/rnDVrVql2hmGUGJ12//33yzAMrV27VpdddpkaN26sk08+WZLUvn17nXPOOfr888/Vt29fxcbG6h//+Ick6eDBg7rlllvUpk0bOZ1OderUSf/3f/9XYhTXH6eX/vOf/1THjh3ldDp1/PHH64cffgi3Gzt2rF588cVwfcVHNGVnZ2vKlCk6+uijlZCQoKSkJA0bNkw//fRTiXYLFy6UYRiaM2eO/va3v6lVq1aKi4tTbm6uxo4dq4SEBG3btk3nnHOOEhIS1KpVq3Dtv/zyi/7yl78oPj5e7dq10xtvvFGqjk2bNuniiy9WkyZNFBcXpxNPPLFUqFpcw9tvv62HH35YrVu3VkxMjIYMGaKNGzeWaFvWmnPBYFDPPvusjj76aMXExKh58+Y688wztXz58nCbL7/8UieffLIaNWqkhIQEde3aVXfddVdVvmIAANAAMXIOAAA0GP/973+Vnp6uAQMGVEv/F198sTp37qxHHnlEpmmGz//2228aNWqUrr/+el177bXq2rWrCgsLNWjQIO3cuVPXX3+92rZtq8WLF2vq1KnavXu3nnnmmRJ9v/HGG8rLy9P1118vwzD0+OOPa8SIEdq0aZPsdruuv/567dq1S19++aVee+21CtccCAS0f//+UucPHDhQ6tymTZv0wQcf6OKLL1aHDh20Z88e/eMf/9CgQYO0du1apaWllWj/4IMPyuFwaMqUKfJ4PHI4HOFnDhs2TKeccooef/xx/ec//9HEiRMVHx+vu+++W5dffrlGjBihl19+WWPGjFH//v3VoUMHSdKePXs0YMAAFRYW6qabblLTpk01e/ZsnXfeeXr33Xd1wQUXlKjhsccek8Vi0ZQpU5STk6PHH39cl19+uZYtW3bI7+Xqq6/WrFmzNGzYMF1zzTXy+/1atGiRli5dqr59+2rNmjU655xz1KtXL02bNk1Op1MbN27U999/X+HvHgAAQCKcAwAADURubq527typ4cOHV9szevfuXeZIr40bN2revHkaOnRo+NxDDz2kjIwM/fjjj+rcubMk6frrr1daWpqeeOIJTZ48WW3atAm337ZtmzZs2KDGjRtLkrp27arhw4fr888/1znnnKP+/furS5cu+vLLLzV69OgK1/zrr7+qefPmFWp79NFHa/369SWmpl5xxRXq1q2bZsyYoXvuuadEe7fbreXLl5eawut2uzV69GhNnTpVknTZZZcpLS1N48aN05tvvqlLL71UknT66aerW7dumj17dnik4mOPPaY9e/Zo0aJF4dGJ1157rXr16qVJkyZp+PDhJepzu91atWpVOBhs3Lixbr75Zq1evbrczTAWLFigWbNm6aabbtKzzz4bPj958uRw6Prll1/K6/Xqs88+U7NmzSr0/QEAAJSFaa0AAKBByM3NlSQlJiZW2zPGjx9f5vkOHTqUCOYk6Z133tHAgQPVuHFj7d+/P3ycdtppCgQC+vbbb0u0v/TSS8PBnCQNHDhQUmg0W1W0b99eX375Zanj9ddfL9XW6XSGg69AIKCsrKzwdM6VK1eWan/llVeWu7beNddcE37dqFEjde3aVfHx8brkkkvC57t27apGjRqV+IyffvqpTjjhhHAwJ0kJCQm67rrrtGXLFq1du7bEc6666qpwMCdV7Ht77733ZBiG7rvvvlLXiqcKN2rUSJL04YcfspkEAACoEkbOAQCABiEpKUmSlJeXV23PKJ56WZHzGzZs0M8//1zuqLW9e/eWeN+2bdsS74uDurKmn0YiPj5ep512WqnzW7ZsKXWueB22l156SZs3b1YgEAhfa9q0aan25X0fxWu4/VFycrJat25dap285OTkEp9x69at6tevX6k+u3fvHr7+xxFxlfneMjIylJaWpiZNmpTb5tJLL9W//vUvXXPNNbrzzjs1ZMgQjRgxQhdddFGd3PQCAADUXYRzAACgQUhKSlJaWppWr15dofblbabwx0Dqz8obJVbW+WAwqNNPP1233357mfd06dKlxHur1Vpmuz+ubVfdHnnkEd1zzz0aN26cHnzwQTVp0kQWi0W33HJLmaPHyvs+yvss1fEZq+t7i42N1bfffqsFCxbok08+0bx58/TWW2/pL3/5i7744otynwsAAPBnhHMAAKDBOOecc/TPf/5TS5YsUf/+/Q/ZtniE1cGDB0uc37p1a1Rq6dixo/Lz88sctVZZ0d6d9c/effddDR48WDNmzChx/uDBgzW27lq7du3022+/lTr/66+/hq9XVceOHfX5558rOzv7kKPnLBaLhgwZoiFDhuipp57SI488orvvvlsLFiyI6r8rAAA4sjHmHgAANBi333674uPjdc0112jPnj2lrmdkZIQ3AEhKSlKzZs1Krf320ksvRaWWSy65REuWLNHnn39e6trBgwfl9/sj7jM+Pj58f3WwWq2lRpy988472rlzZ7U8ryxnnXWW/ve//2nJkiXhcwUFBfrnP/+p9u3bq0ePHlV+xoUXXijTNPXAAw+Uulb8+bOzs0tdO+aYYyRJHo+nyjUAAICGg5FzAACgwejYsaPeeOMNXXrpperevbvGjBmjo446Sl6vV4sXL9Y777yjsWPHhttfc801euyxx3TNNdeob9+++vbbb7V+/fqo1HLbbbfpo48+0jnnnKOxY8eqT58+Kigo0C+//KJ3331XW7ZsiXg0Wp8+fSRJN910k4YOHSqr1aqRI0dGpV4pNPJw2rRpuuqqqzRgwAD98ssv+s9//qP09PSoPeNw7rzzTr35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IYQYJRKcG0IikeCKK64gkUiMdlLEKJE8ICQPCJB8ICQPCMkDQvKAkDwgJA+I2N7MB0rvjTFghRBCCCGEEEIIIYQQr0lqzgkhhBBCCCGEEEIIMUokOCeEEEIIIYQQQgghxCiR4JwQQgghhBBCCCGEEKNEgnNCCCGEEEIIIYQQQowSCc4N4cc//jFTpkwhmUwyd+5cVq9ePdpJEiPkz3/+M2eeeSbjx49HKcWyZcvKtmut+dKXvkRzczOpVIr58+ezYcOGsn06Ojo4//zzqayspLq6mosuuoi+vr59+C3EG3XVVVfxtre9jYqKChoaGjj77LNZt25d2T6FQoElS5ZQV1dHNpvl7//+79m+fXvZPps3b2bBggWk02kaGhq49NJLCYJgX34V8QZde+21HHPMMVRWVlJZWcm8efO44447Stvl+o893/zmN1FKsXTp0tI6yQcHvi9/+csopcqmGTNmlLZLHhgbXn75ZT784Q9TV1dHKpXi6KOP5tFHHy1tl/vCA9uUKVN2KweUUixZsgSQcmAsCMOQL37xixx88MGkUimmTp3KV7/6VQaPmSnlwIGvt7eXpUuXMnnyZFKpFCeccAKPPPJIafs+ywNalLnlllu04zj6F7/4hX766af1xz72MV1dXa23b98+2kkTI+BPf/qT/vznP69/+9vfakD/7ne/K9v+zW9+U1dVVelly5bpJ598Ur///e/XBx98sM7n86V9TjvtND1z5kz917/+VT/wwAN62rRp+rzzztvH30S8Eaeeeqq+/vrr9dq1a/WaNWv0GWecoSdNmqT7+vpK+1x88cV64sSJ+t5779WPPvqofvvb365POOGE0vYgCPRRRx2l58+fr5944gn9pz/9SdfX1+vPfvazo/GVxOv0hz/8Qf/v//6vXr9+vV63bp3+3Oc+p23b1mvXrtVay/Ufa1avXq2nTJmijznmGH3JJZeU1ks+OPBdccUV+sgjj9Tbtm0rTa2traXtkgcOfB0dHXry5Ml60aJFetWqVfqFF17Qd911l964cWNpH7kvPLDt2LGjrAy45557NKBXrFihtZZyYCz4+te/ruvq6vTy5cv1pk2b9O23366z2az+/ve/X9pHyoED34c+9CF9xBFH6JUrV+oNGzboK664QldWVuqtW7dqrfddHpDg3C7mzJmjlyxZUnodhqEeP368vuqqq0YxVWJv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OHEiiUSCadOm8fOf/xytNdOmTeM73/lOWRrWrFmz12oOvvjii0PWUjz55JNH/FhCCCGEEHuDBOeEEEIIIfaxX/7ylziOw0MPPcR1111HV1cX73nPezjuuON49NFHufPOO9m+fXtZU8xLL72UlStX8vvf/567776b+++/n8cff/x1Hdf3fU499VQqKip44IEHeOihh8hms5x22ml4nlfab8WKFTz//POsWLGCX/7yl9xwww1lAb4LLriAm2++mR/84Ac8++yz/Od//ifZbBalFIsXL96txuD111/Pu971LqZNm/bGTtirmDhxItu2bStNTzzxBHV1dbzrXe8a8WMJIYQQQuwN0qxVCCGEEGIvWL58OdlstvT69NNP5/bbbwdg+vTpfPvb3y5t+9rXvsZxxx3HN77xjdK6X/ziF0ycOJH169czfvx4fv7zn/OrX/2KU045BYgDfAcddNDrStOtt95KFEX87Gc/QykFxIGz6upq7r//ft773vcCUFNTw49+9CNM02TGjBksWLCAe++9l4997GOsX7+e2267jXvuuYf58+cDcMghh5SOsWjRIr70pS+xevVq5syZg+/73HTTTbvVpttT5513HqZplq1zXZcFCxYAYJpmqTlsoVDg7LPPZt68eXz5y19+Q8cTQgghhNjXJDgnhBBCCLEXvPvd7+baa68tvc5kMqXlWbNmle375JNPsmLFirJg3oDnn3+efD6P53nMnTu3tL62tpbDDjvsdaXpySefZOPGjVRUVJStLxQKPP/886XXRx55ZFlArLm5maeeegqIm6iapslJJ5005DHGjx/PggUL+MUvfsGcOXP44x//iOu6nHPOOa8rrQO++93vloKAAy677DLCMNxt38WLF9Pb28s999yDYUgDESGEEEK8NUhwTgghhBBiL8hkMsM24xwcqAPo6+vjzDPP5Fvf+tZu+zY3N+9xX21KKbTWZesG9xXX19fHrFmzuPHGG3d77+DBKmzb3u1zoygCIJVKvWY6PvrRj/KRj3yE7373u1x//fWce+65pNPpPfoOu2pqatrtPFZUVNDV1VW27mtf+xp33XUXq1ev3i34KIQQQgixP5PgnBBCCCHEKDv++OP5zW9+w5QpU7Cs3W/Ppk6dim3brFq1ikmTJgHQ2dnJ+vXry2qwjRs3jm3btpVeb9iwgVwuV3acW2+9lYaGBiorK99QWo8++miiKGLlypW71WgbcMYZZ5DJZLj22mu58847+fOf//yGjrWnfvOb3/CVr3yFO+64g6lTp+7VYwkhhBBCjDSp7y+EEEIIMcqWLFlCR0cH5513Ho888gjPP/88d911FxdeeCFhGJLNZrnooou49NJLue+++1i7di2LFi3arenme97zHn70ox/xxBNP8Oijj3LxxReX1YI7//zzqa+v56yzzuKBBx5g06ZN3H///Xzyk59k69ate5TWKVOmsHDhQhYvXsyyZctKn3HbbbeV9jFNk0WLFvHZz36W6dOnM2/evJE5UUNYu3YtF1xwAZdddhlHHnkkLS0ttLS00NHRsdeOKYQQQggxkiQ4J4QQQggxysaPH89DDz1EGIa8973v5eijj2bp0qVUV1eXAnBXX301J554ImeeeSbz58/nne985259111zzTVMnDiRE088kX/6p3/i3//938uak6bTaf785z8zadIkPvjBD3L44Ydz0UUXUSgUXldNumuvvZZ/+Id/4OMf/zgzZszgYx/7GP39/WX7XHTRRXiex4UXXvgmzsxre/TRR8nlcnzta1+jubm5NH3wgx/cq8cVQgghhBgpSu/aMYkQQgghhHhLOPnkkzn22GP53ve+N9pJ2c0DDzzAKaecwpYtW2hsbHzVfRctWkRXVxfLli3ba+nZF8cQQgghhHgjpOacEEIIIYQYMa7rsnXrVr785S9zzjnnvGZgbsDy5cvJZrMsX758RNPzwAMPkM1mhxwEQwghhBBifyADQgghhBBCiBFz8803c9FFF3Hsscfy3//933v0nm9/+9t84QtfAOLRaUfS7NmzWbNmDQDZbHZEP1sIIYQQYiRIs1YhhBBCCCGEEEIIIUaJNGsVQgghhBBCCCGEEGKUSHBOCCGEEEIIIYQQQohRIsE5IYQQQgghhBBCCCFGiQTnhBBCCCGEEEIIIYQYJRKcE0IIIYQQQgghhBBilEhwTgghhBBCCCGEEEKIUSLBOSGEEEIIIYQQQgghRokE54QQQgghhBBCCCGEGCX/H8UzmcNi2rOUAAAAAElFTkSuQmCC", "text/plain": [ - "
" + "
" ] }, - "metadata": { - "needs_background": "light" - }, + "metadata": {}, "output_type": "display_data" } ], "source": [ "# Set the nominal sampling frequency\n", - "sample_freq = 50000 #[Hz]\n", + "sample_freq = 50000 # [Hz]\n", "\n", "# Set the frequency of the grid the device would be conected to\n", - "grid_freq = 60 #[Hz] \n", + "grid_freq = 60 # [Hz]\n", "\n", "# Set the rated current of the device\n", "rated_current = 18.8 # [Amps]\n", @@ -353,9 +364,9 @@ "harmonics = power.quality.harmonics(current, sample_freq, grid_freq)\n", "\n", "# Plot the results\n", - "harmonics.plot(figsize=(15,5),xlim=(0,900),\n", - " title='Current Harmonics').set(ylabel='Harmonic Amplitude',\n", - " xlabel='Frequency [Hz]');" + "harmonics.plot(figsize=(15, 5), xlim=(0, 900), title=\"Current Harmonics\").set(\n", + " ylabel=\"Harmonic Amplitude\", xlabel=\"Frequency [Hz]\"\n", + ");" ] }, { @@ -396,6 +407,12 @@ " MODAQ_Ib_I\n", " MODAQ_Ic_I\n", " \n", + " \n", + " frequency\n", + " \n", + " \n", + " \n", + " \n", " \n", " \n", " \n", @@ -433,12 +450,13 @@ "" ], "text/plain": [ - " MODAQ_Ia_I MODAQ_Ib_I MODAQ_Ic_I\n", - "0 0.247401 1.948879 1.991755\n", - "60 29.761108 29.305038 29.127020\n", - "120 1.870176 1.291483 1.206478\n", - "180 1.007562 0.648012 0.535090\n", - "240 0.727466 0.437456 0.370414" + " MODAQ_Ia_I MODAQ_Ib_I MODAQ_Ic_I\n", + "frequency \n", + "0 0.247401 1.948879 1.991755\n", + "60 29.761108 29.305038 29.127020\n", + "120 1.870176 1.291483 1.206478\n", + "180 1.007562 0.648012 0.535090\n", + "240 0.727466 0.437456 0.370414" ] }, "execution_count": 6, @@ -448,7 +466,7 @@ ], "source": [ "# Calcualte Harmonic Subgroups\n", - "h_s = power.quality.harmonic_subgroups(harmonics,grid_freq) \n", + "h_s = power.quality.harmonic_subgroups(harmonics, grid_freq)\n", "# Display the results\n", "h_s.head()" ] @@ -469,44 +487,11 @@ "outputs": [ { "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
MODAQ_Ia_IMODAQ_Ib_IMODAQ_Ic_I
THCD8.9725116.0966175.929491
\n", - "
" - ], "text/plain": [ - " MODAQ_Ia_I MODAQ_Ib_I MODAQ_Ic_I\n", - "THCD 8.972511 6.096617 5.929491" + "MODAQ_Ia_I 8.972511\n", + "MODAQ_Ib_I 6.096617\n", + "MODAQ_Ic_I 5.929491\n", + "dtype: float64" ] }, "execution_count": 7, @@ -515,15 +500,15 @@ } ], "source": [ - "#Finally we can compute the total harmonic current distortion as a percentage \n", - "THCD=power.quality.total_harmonic_current_distortion(h_s,rated_current) \n", + "# Finally we can compute the total harmonic current distortion as a percentage\n", + "THCD = power.quality.total_harmonic_current_distortion(h_s)\n", "THCD" ] } ], "metadata": { "kernelspec": { - "display_name": "Python 3", + "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, @@ -537,7 +522,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.8.5" + "version": "3.9.17" } }, "nbformat": 4, diff --git a/examples/qc_example.ipynb b/examples/qc_example.ipynb index d0afc5370..d1b25ad52 100644 --- a/examples/qc_example.ipynb +++ b/examples/qc_example.ipynb @@ -71,13 +71,13 @@ ], "source": [ "# Load data from the csv file into a DataFrame\n", - "data = pd.read_csv('data/qc/wave_elevation_data.csv', index_col='Time') \n", + "data = pd.read_csv(\"data/qc/wave_elevation_data.csv\", index_col=\"Time\")\n", "\n", "# Plot the data\n", - "data.plot(figsize=(15,5), ylim=(-60,60)) \n", + "data.plot(figsize=(15, 5), ylim=(-60, 60))\n", "\n", "# Print the first 5 rows of data\n", - "print(data.head()) " + "print(data.head())" ] }, { @@ -110,7 +110,7 @@ ], "source": [ "# Convert the index to datetime\n", - "data.index = utils.index_to_datetime(data.index, origin='2019-05-20') \n", + "data.index = utils.index_to_datetime(data.index, origin=\"2019-05-20\")\n", "\n", "# Print the first 5 rows of data\n", "print(data.head())" @@ -151,10 +151,10 @@ "outputs": [], "source": [ "# Define expected frequency of the data, in seconds\n", - "frequency = 0.002 \n", + "frequency = 0.002\n", "\n", "# Run the timestamp quality control test\n", - "results = qc.check_timestamp(data, frequency) " + "results = qc.check_timestamp(data, frequency)" ] }, { @@ -196,10 +196,10 @@ ], "source": [ "# Plot cleaned data\n", - "results['cleaned_data'].plot(figsize=(15,5), ylim=(-60,60)) \n", + "results[\"cleaned_data\"].plot(figsize=(15, 5), ylim=(-60, 60))\n", "\n", "# Print the first 5 rows of the cleaned data\n", - "print(results['cleaned_data'].head()) " + "print(results[\"cleaned_data\"].head())" ] }, { @@ -222,7 +222,7 @@ ], "source": [ "# Print the first 5 rows of the mask\n", - "print(results['mask'].head()) " + "print(results[\"mask\"].head())" ] }, { @@ -253,7 +253,7 @@ "source": [ "# Print the test results summary\n", "# The summary is transposed (using .T) so that it is easier to read.\n", - "print(results['test_results'].T) " + "print(results[\"test_results\"].T)" ] }, { @@ -300,16 +300,16 @@ ], "source": [ "# Define corrupt values\n", - "corrupt_values = [-999] \n", + "corrupt_values = [-999]\n", "\n", "# Run the corrupt data quality control test\n", - "results = qc.check_corrupt(results['cleaned_data'], corrupt_values) \n", + "results = qc.check_corrupt(results[\"cleaned_data\"], corrupt_values)\n", "\n", "# Plot cleaned data\n", - "results['cleaned_data'].plot(figsize=(15,5), ylim=(-60,60)) \n", + "results[\"cleaned_data\"].plot(figsize=(15, 5), ylim=(-60, 60))\n", "\n", "# Print test results summary\n", - "print(results['test_results'].T)" + "print(results[\"test_results\"].T)" ] }, { @@ -359,16 +359,16 @@ ], "source": [ "# Define expected lower and upper bound ([lower bound, upper bound])\n", - "expected_bounds = [-50, 50] \n", + "expected_bounds = [-50, 50]\n", "\n", "# Run expected range quality control test\n", - "results = qc.check_range(results['cleaned_data'], expected_bounds) \n", + "results = qc.check_range(results[\"cleaned_data\"], expected_bounds)\n", "\n", "# Plot cleaned data\n", - "results['cleaned_data'].plot(figsize=(15,5), ylim=(-60,60)) \n", + "results[\"cleaned_data\"].plot(figsize=(15, 5), ylim=(-60, 60))\n", "\n", "# Print test results summary\n", - "print(results['test_results'].T) " + "print(results[\"test_results\"].T)" ] }, { @@ -411,19 +411,19 @@ ], "source": [ "# Define expected lower bound (no upper bound is specified in this example)\n", - "expected_bound = [0.001, None] \n", + "expected_bound = [0.001, None]\n", "\n", "# Define the moving window, in seconds\n", - "window = 0.02 \n", + "window = 0.02\n", "\n", "# Run the delta quality control test\n", - "results = qc.check_delta(results['cleaned_data'], expected_bound, window) \n", + "results = qc.check_delta(results[\"cleaned_data\"], expected_bound, window)\n", "\n", "# Plot cleaned data\n", - "results['cleaned_data'].plot(figsize=(15,5), ylim=(-60,60))\n", + "results[\"cleaned_data\"].plot(figsize=(15, 5), ylim=(-60, 60))\n", "\n", "# Print test results summary\n", - "print(results['test_results'].T) " + "print(results[\"test_results\"].T)" ] }, { @@ -442,7 +442,7 @@ "outputs": [], "source": [ "# Extract final cleaned data for MHKiT analysis\n", - "cleaned_data = results['cleaned_data'] " + "cleaned_data = results[\"cleaned_data\"]" ] } ], diff --git a/examples/river_example.ipynb b/examples/river_example.ipynb index c03959924..aadc547fc 100644 --- a/examples/river_example.ipynb +++ b/examples/river_example.ipynb @@ -73,11 +73,13 @@ ], "source": [ "# Use the requests method to obtain 10 years of daily discharge data\n", - "data = river.io.usgs.request_usgs_data(station=\"15515500\",\n", - " parameter='00060',\n", - " start_date='2009-08-01',\n", - " end_date='2019-08-01',\n", - " data_type='Daily')\n", + "data = river.io.usgs.request_usgs_data(\n", + " station=\"15515500\",\n", + " parameter=\"00060\",\n", + " start_date=\"2009-08-01\",\n", + " end_date=\"2019-08-01\",\n", + " data_type=\"Daily\",\n", + ")\n", "\n", "# Print data\n", "print(data)" @@ -113,12 +115,12 @@ "column_name = data.columns[0]\n", "\n", "# Rename to a shorter key name e.g. 'Q'\n", - "data = data.rename(columns={column_name: 'Q'})\n", + "data = data.rename(columns={column_name: \"Q\"})\n", "\n", "# Convert to discharge data from ft3/s to m3/s\n", - "data.Q = data.Q / (3.28084)**3\n", + "data.Q = data.Q / (3.28084) ** 3\n", "\n", - "# Plot the daily discharge \n", + "# Plot the daily discharge\n", "ax = river.graphics.plot_discharge_timeseries(data.Q)" ] }, @@ -155,7 +157,7 @@ ], "source": [ "# Calculate exceedence probability\n", - "data['F'] = river.resource.exceedance_probability(data.Q)\n", + "data[\"F\"] = river.resource.exceedance_probability(data.Q)\n", "\n", "# Plot the flow duration curve (FDC)\n", "ax = river.graphics.plot_flow_duration_curve(data.Q, data.F)" @@ -199,7 +201,7 @@ ], "source": [ "# Load discharge to velocity curve at turbine location\n", - "DV_curve = pd.read_csv('data/river/tanana_DV_curve.csv')\n", + "DV_curve = pd.read_csv(\"data/river/tanana_DV_curve.csv\")\n", "\n", "# Create a polynomial fit of order 2 from the discharge to velocity curve.\n", "# Return the polynomial fit and and R squared value\n", @@ -241,10 +243,10 @@ ], "source": [ "# Use polynomial fit from DV curve to calculate velocity ('V') from discharge at turbine location\n", - "data['V'] = river.resource.discharge_to_velocity(data.Q, p)\n", + "data[\"V\"] = river.resource.discharge_to_velocity(data.Q, p)\n", "\n", - "# Plot the velocity duration curve (VDC) \n", - "ax = river.graphics.plot_velocity_duration_curve(data.V, data.F )" + "# Plot the velocity duration curve (VDC)\n", + "ax = river.graphics.plot_velocity_duration_curve(data.V, data.F)" ] }, { @@ -282,7 +284,7 @@ ], "source": [ "# Calculate the power produced from turbine velocity to power curve\n", - "VP_curve = pd.read_csv('data/river/tanana_VP_curve.csv')\n", + "VP_curve = pd.read_csv(\"data/river/tanana_VP_curve.csv\")\n", "\n", "# Calculate the polynomial fit for the VP curve\n", "p2, r_squared_2 = river.resource.polynomial_fit(VP_curve.V, VP_curve.P, 2)\n", @@ -321,10 +323,12 @@ ], "source": [ "# Calculate power from velocity at the turbine location\n", - "data['P'] = river.resource.velocity_to_power(data.V, \n", - " polynomial_coefficients=p2,\n", - " cut_in=VP_curve.V.min(), \n", - " cut_out=VP_curve.V.max())\n", + "data[\"P\"] = river.resource.velocity_to_power(\n", + " data.V,\n", + " polynomial_coefficients=p2,\n", + " cut_in=VP_curve.V.min(),\n", + " cut_out=VP_curve.V.max(),\n", + ")\n", "# Plot the power duration curve\n", "ax = river.graphics.plot_power_duration_curve(data.P, data.F)" ] @@ -356,7 +360,7 @@ ], "source": [ "# Calculate the Annual Energy produced\n", - "s = 365. * 24 * 3600 # Seconds in a year\n", + "s = 365.0 * 24 * 3600 # Seconds in a year\n", "AEP = river.resource.energy_produced(data.P, s)\n", "\n", "print(f\"Annual Energy Produced: {AEP/3600000:.2f} kWh\")" diff --git a/examples/short_term_extremes_example.ipynb b/examples/short_term_extremes_example.ipynb index 05cf9f8dc..193252ffe 100644 --- a/examples/short_term_extremes_example.ipynb +++ b/examples/short_term_extremes_example.ipynb @@ -39,7 +39,7 @@ "import numpy as np\n", "import matplotlib.pyplot as plt\n", "\n", - "from mhkit.loads import extreme \n", + "from mhkit.loads import extreme\n", "from mhkit.wave.resource import jonswap_spectrum, surface_elevation" ] }, @@ -57,7 +57,7 @@ "outputs": [], "source": [ "# short-term period in seconds\n", - "t_st = 3.0 * 60.0 * 60.0 " + "t_st = 3.0 * 60.0 * 60.0" ] }, { @@ -86,19 +86,18 @@ "T_min = 1 # s\n", "Tp = 8 # s\n", "Hs = 1.5 # m\n", - "df = 1/t_st\n", - "f_max = 1/T_min\n", - "Nf = int(f_max/df) + 1\n", + "df = 1 / t_st\n", + "f_max = 1 / T_min\n", + "Nf = int(f_max / df) + 1\n", "f = np.linspace(0.0, f_max, Nf)\n", "S = jonswap_spectrum(f, Tp, Hs)\n", "\n", "# time in seconds\n", - "time = np.linspace(0, t_st, 2*Nf+1)\n", + "time = np.linspace(0, t_st, 2 * Nf + 1)\n", "\n", "# 10 distinct time-series\n", "N = 10\n", - "qoi_timeseries = [surface_elevation(\n", - " S, time).values.squeeze() for i in range(N)]" + "qoi_timeseries = [surface_elevation(S, time).values.squeeze() for i in range(N)]" ] }, { @@ -145,15 +144,15 @@ "timeseries = qoi_timeseries[i]\n", "plt.plot(time, timeseries)\n", "plt.title(\"Full 3 hours\")\n", - "plt.xlabel('time [s]')\n", - "plt.ylabel('elevation [m]')\n", + "plt.xlabel(\"time [s]\")\n", + "plt.ylabel(\"elevation [m]\")\n", "\n", "plt.figure()\n", "timeseries = qoi_timeseries[i]\n", "plt.plot(time[time <= 120], timeseries[time <= 120])\n", "plt.title(\"First 2 minutes\")\n", - "plt.xlabel('time [s]')\n", - "plt.ylabel('elevation [m]');" + "plt.xlabel(\"time [s]\")\n", + "plt.ylabel(\"elevation [m]\");" ] }, { @@ -225,11 +224,16 @@ "i = 0 # select: 0-9\n", "\n", "plt.figure()\n", - "line, = plt.plot(time, qoi_timeseries[i], alpha=0.5, label='time-series')\n", - "plt.plot(time[np.argmax(qoi_timeseries[i])], block_maxima[i],\n", - " 'o', color=line.get_color(), label='maximum')\n", - "plt.xlabel('time [s]')\n", - "plt.ylabel('elevation [m]')\n", + "(line,) = plt.plot(time, qoi_timeseries[i], alpha=0.5, label=\"time-series\")\n", + "plt.plot(\n", + " time[np.argmax(qoi_timeseries[i])],\n", + " block_maxima[i],\n", + " \"o\",\n", + " color=line.get_color(),\n", + " label=\"maximum\",\n", + ")\n", + "plt.xlabel(\"time [s]\")\n", + "plt.ylabel(\"elevation [m]\")\n", "plt.legend();" ] }, @@ -260,11 +264,11 @@ ], "source": [ "plt.figure()\n", - "plt.plot(block_maxima, 'o')\n", + "plt.plot(block_maxima, \"o\")\n", "plt.title(\"Block maxima\")\n", - "plt.xlabel('time series')\n", - "plt.ylabel('maximum elevation [m]')\n", - "plt.ylim([0, np.max(block_maxima*1.1)]);" + "plt.xlabel(\"time series\")\n", + "plt.ylabel(\"maximum elevation [m]\")\n", + "plt.ylim([0, np.max(block_maxima * 1.1)]);" ] }, { @@ -328,22 +332,26 @@ ], "source": [ "# print distribution statistics\n", - "print(f'GEV:\\n Expected value: {ste_gev.expect()} m\\n 95% interval: ({ste_gev.ppf(0.025)} m, {ste_gev.ppf(0.975)} m)')\n", - "print(f'Gumbel:\\n Expected value: {ste_gum.expect()} m\\n 95% interval: ({ste_gum.ppf(0.025)} m, {ste_gum.ppf(0.975)} m)')\n", + "print(\n", + " f\"GEV:\\n Expected value: {ste_gev.expect()} m\\n 95% interval: ({ste_gev.ppf(0.025)} m, {ste_gev.ppf(0.975)} m)\"\n", + ")\n", + "print(\n", + " f\"Gumbel:\\n Expected value: {ste_gum.expect()} m\\n 95% interval: ({ste_gum.ppf(0.025)} m, {ste_gum.ppf(0.975)} m)\"\n", + ")\n", "\n", "# plot CDF and PDF\n", "x = np.linspace(0, 3, 1000)\n", - "fig, axs = plt.subplots(1,2)\n", + "fig, axs = plt.subplots(1, 2)\n", "axs[0].plot(x, ste_gev.pdf(x))\n", "axs[0].plot(x, ste_gum.pdf(x))\n", - "axs[0].plot(block_maxima, np.zeros(N), 'k.')\n", - "axs[1].plot(x, ste_gev.cdf(x), label='GEV')\n", - "axs[1].plot(x, ste_gum.cdf(x), label='Gumbel')\n", - "axs[0].set_ylabel('PDF')\n", - "axs[1].set_ylabel('CDF')\n", + "axs[0].plot(block_maxima, np.zeros(N), \"k.\")\n", + "axs[1].plot(x, ste_gev.cdf(x), label=\"GEV\")\n", + "axs[1].plot(x, ste_gum.cdf(x), label=\"Gumbel\")\n", + "axs[0].set_ylabel(\"PDF\")\n", + "axs[1].set_ylabel(\"CDF\")\n", "axs[1].legend()\n", - "axs[0].set_xlabel('elevation [m]')\n", - "axs[1].set_xlabel('elevation [m]');" + "axs[0].set_xlabel(\"elevation [m]\")\n", + "axs[1].set_xlabel(\"elevation [m]\");" ] }, { @@ -366,7 +374,7 @@ "outputs": [], "source": [ "t_end = 1.0 * 60.0 * 60.0\n", - "timeseries_1hr = qoi_timeseries[0][time" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "ax = tidal.graphics.plot_current_timeseries(data.d, data.s, flood)" - ] - }, + "name": "stderr", + "output_type": "stream", + "text": [ + "c:\\Users\\mcve343\\Anaconda3\\lib\\site-packages\\xarray\\backends\\cfgrib_.py:29: UserWarning: Failed to load cfgrib - most likely there is a problem accessing the ecCodes library. Try `import cfgrib` to get the full error message\n", + " warnings.warn(\n" + ] + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "from mhkit import tidal" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Loading Data from NOAA-Currents\n", + " \n", + "This example uses 1 year of data from the NOAA-Currents sites. A map of available currents stations is available at https://tidesandcurrents.noaa.gov/map/. The tidal io module includes two functions to import data: `request_noaa_data` which pulls data from the website, and `read_noaa_json` which loads a JSON file. The request function can save the JSON file for later use. \n", + "\n", + "For simplicity, this example loads data from a JSON file into a pandas DataFrame. This data contains 1 year of 6 minute averaged data from the Southampton Shoal Channel LB 6 (Station Number: s08010) in San Francisco Bay. The data includes 6 minute averaged direction [degrees] and speed [cm/s] indexed by time. The DataFrame key names returned by NOAA are 'd' for direction and 's' for speed. Since MHKIT uses SI units, speed is converted to m/s. " + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "The plot above shows missing data for most of early and mid-2017. The IEC standard recommends a minimum of 1 year of 10 minute averaged data (See IEC 201 for full description). For the demonstration, this dataset is sufficient. To look at a specific month we can slice the dataset before passing to the plotting function." - ] - }, + "name": "stdout", + "output_type": "stream", + "text": [ + " s d b\n", + "2016-11-08 12:04:00 0.673 358 4\n", + "2016-11-08 12:34:00 0.689 360 4\n", + "2016-11-08 12:46:00 0.738 356 4\n", + "2016-11-08 12:58:00 0.744 359 4\n", + "2016-11-08 13:10:00 0.648 358 4\n", + "... ... ... ..\n", + "2018-04-01 22:02:00 0.089 296 4\n", + "2018-04-01 22:14:00 0.102 356 4\n", + "2018-04-01 22:26:00 0.011 3 4\n", + "2018-04-01 22:38:00 0.060 193 4\n", + "2018-04-01 23:20:00 0.439 165 4\n", + "\n", + "[18890 rows x 3 columns]\n" + ] + } + ], + "source": [ + "# Load tidal data, South Hampton Shoal LB 6\n", + "data, metadata = tidal.io.noaa.read_noaa_json(\"data/tidal/s08010.json\")\n", + "\n", + "# Convert discharge data from cm/s to m/s\n", + "data.s = data.s / 100\n", + "\n", + "# Print data\n", + "print(data)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The data can also be obtained using the function `request_noaa_data` in the tidal IO module. \n", + "To use this function, we need a station number, parameter type, start date, and end date.\n", + "The station number can be found on the NOAA tides and currents website linked above. \n", + "The IEC standard recommends 1 year of 10-minute direction and velocity data. The request function allows users to easily pull any timeframe of data although NOAA limits any one pull to 30 days.\n", + "\n", + "The following code, which has been commented out for this demonstration, can be used to pull data from the NOAA website. This function can be used to save data to a JSON for later use." + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ { - "cell_type": "code", - "execution_count": 7, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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FStWRPph2bJlAIDVq1djcHAQ999/P6666ipceumlfd93IcJxW9xxe88992Dz5s049thj8ZznPKfrekcffTQuuuiivu+/kOC4Le643blzJ04//XTceuutOOqoo3Duuedi7969+NKXvoTHH38cV155JV7/+tf3ff+FAsfs3I3ZLVu24JZbbsHixYux//7747bbbsNLXvIS/Nd//Zf156+//no8+9nPxkknnYQDDzwQy5cvx7Zt2/C1r30N999/P8466yx885vfRK1W67sNCwWO2+KO22uuuQY333yz9b3//M//xF133YX3vve9eMtb3tJ3GxYKHLdzM26zXI9nsng4bos7bnkmi4fjtrjjdi7PZEUcB/o9qtUq/uAP/gAHHXQQtm7dii984QvYvn07XvWqV6Uy7M/MzODcc8/FD3/4Q5x44ok455xzcP/99+Pqq6/G4OAgvvOd7+Ckk06K/E7a/V0vSmUL9Ulp+Pa3v+1fc801fqPRiLz+8MMP+xs2bPAB+FdffXXw+q5du/yVK1f6g4OD/k9/+tPg9ampKf/kk0/2Afif/vSnI9e6//77/e9973v+rl27fN/3/TPPPNMH4N9xxx2p2/tXf/VXPgD/TW96U6rf+8UvfuHfdNNN/szMjO/7vg/AX79+fezPp+2XfjjvvPN8AP4HPvCByOtvetObfAD+a1/72sjrMzMz/le/+lX/oYce8n3f9y+77DIfgH/VVVeluu9ChOPWThHG7d133+0D8F/+8penus++AMetnSKM2ze84Q0+AP/CCy/06/V68Ppjjz3mb9q0yR8YGPBvv/32VG1YCHDM2sljzH7nO9/xf/e73/mtVsu/7rrrfAD+S17yktifn5mZ8ZvNZtfrs7OzQR9+5jOfSdWGhQLHrZ0ijNs4duzY4Y+MjPiDg4P+448/nvr3FwIct3akx22W6/FMFg/HrZ0ijFueyeLhuLVThHE7l2eyoo6DI444wgfgX3/99V3tWrVqlQ/Av+eee/r+O//+7//eB+BfdNFFkbPDNddc4wPwjzzyyK4zhdT+TlEmWygdGguEd7/73T4A/0//9E+D1z760Y/GLozf/va3fQD+6aefnnjdrJN5vV7316xZ4wPwf/vb36b6XZNek3kStn7pxe9//3sfgL958+auyWL37t3+okWL/JGREX/Pnj2x1+DmuT84bu3M1bjl5jkbHLd25mrcqk3rrbfe2nW9f/7nf/YB+G9+85sz/Q0LFY5ZO1nGrInrweGKK67wAfjvfve7M7dhocJxa2e+x+0HPvABH4D/whe+MPP9FzIct3Ykxm2W6/FM1h8ct3bmatzyTJYNjls7czVui3Imm89xMDw87I+Pj1vfe9aznuUD8H/2s5/19Xe0Wi1/48aNPgD/rrvu6nr/9NNP9wH43/72t2Ov4XouKZstlDU0FgiDg4MAgIGBgeC16667DgDw9Kc/vevnzzjjDIyOjuJHP/oRZmZmxNvzxS9+EY888gjOOOMMHH744eLX7xdbv/RC9dt5552HSiX6iIyNjeHUU0/F1NQUbrzxRrmG7qNw3NqZ63H70EMP4cMf/jD+/u//Hh/+8Ifxy1/+0qH1Cx+OWztzNW4feeQRAMCBBx7YdT312re+9a10jV/gcMzayTJmJWk2m4HG8DHHHDMvbSgyHLd25nvcXnXVVQCA17zmNfNy/6LDcWtHetzO93Ow0OC4tTPX45ZnsnRw3NqZq3FblDPZfI6Do48+Grt378Z3v/vdyOuPPvoobrzxRqxbtw5HHnlkX9e68847cd999+Gwww7D5s2bu94///zzAYR/Wx6UzRZKh8YCoNFo4JOf/CSA6AN7++23AwAOOeSQrt+p1WrYvHkzGo0G7rrrLvE2feQjHwEAvPa1rxW/dr/E9UsvkvpNf/13v/udYwv3bThu7czHuP3mN7+JP/qjP8Lb3vY2/NEf/RGOPfZYnH322bjvvvvSNn/Bw3FrZy7H7cqVKwEAd999d9fPq/5V1yUcs3FkHbMubN26Fe985ztx2WWX4U/+5E9w+OGH49prr8Uf/uEf4pnPfOactKEscNzamY9xq/OjH/0Iv/rVr3DooYfi7LPPnvP7Fx2OWzvS43a+n4OFBsetnfkYtzyT9Q/HrZ25HLdFOJPN9zi48sorsWTJEpx33nl4wQtegLe+9a249NJLceSRR2Lp0qW45pprMDIy0te1imCHLEIb0kCHxgLgr/7qr3Drrbfi/PPPx9Oe9rTg9V27dgEAlixZYv099frOnTtF23PPPffgW9/6FlasWIHnPe95otdOQ1y/9GK++m1fg+PWzlyO29HRUbzjHe/Az3/+c+zYsQM7duzAd7/7XZx99tm4/vrrg8JeJITj1s5cjltl+H3nO9+JZrMZvL5t2za8//3vB9AuqDY1NZXqb1iocMzayTpmXdi6dSve9a534fLLL8e//du/4c4778Rf/uVfpioWuK/AcWtnPsatjjLWvPrVr57ze5cBjls70uN2vp+DhQbHrZ25HLc8k6WH49bOXI7bIpzJ5nscnHLKKfjRj36EQw89FFdffTXe85734GMf+xjq9Tpe/vKX4wlPeELf1yqCHbIIbUhDbb4bQNy44oor8I//+I847LDD8B//8R+pftf3fQCA53mibbrqqqvQarXw8pe/HENDQ13vv/Od7+x67ZJLLsGmTZvE2pDUL/fccw8+8YlP9NUuG3n1274Ex62duR63q1atwuWXXx75uTPOOAPXXnstTjvtNNx444346Ec/ije84Q3p/pAFCsetnbket5dffjmuvfZaXH311fjtb3+Lc889F5OTk/jiF7+IsbExjI6OYnJyEtVqNfPftFDgmLWT55hN4vDDD4fv+2g2m3jwwQfxhS98AX/zN3+D733ve/jKV76C5cuXO99jIcBxa2e+xq1i165d+OxnP4vBwUFccsklYtddKHDc2pEety79TLrhuLUz1+OWZ7J0cNzametxO99nsiKMg2984xt40YtehCc+8Yn45Cc/icMPPxyPPPII/uVf/gVve9vb8JWvfAXf/e53Uau1Te8u40CizQvOFpp7lQ6SG6qQ5BFHHOE//PDDXe+feOKJiUVojjrqKB+A/5vf/Cb2HmkLItXrdX/t2rU+AP+2226z/gyArn/XXXdd7DWRsiBSr35RhXLMf4q3vOUtPgD/fe97n/X6f/qnf+oD8D/4wQ/GtoEF6OLhuLVThHGrc9VVV/kA/AsvvLDvv2Ehw3FrZ77G7WOPPea//vWv9zdv3uwPDAz4q1at8l/5ylf6d999t+95nr9kyZK+/4aFCsesHdcxG/fzWYvvfeYzn/EhWLix7HDc2inCuP2Xf/kXH2AxcBsct3akx22v69ngmSwejls7RRi3OjyTReG4tTNf43a+zmRFGAfbtm3zly5d6q9fv97fu3dv1/vPec5zfAD+xz/+8eC1pHHw5S9/2QfgP/OZz7Te7+qrr/YB+C94wQti29xrf7fQbKF0aJSU9773vT4A/+ijj/YfffRR68+85CUv8QH4n/rUp7req9fr/ujoqF+r1fzp6enY+6SdzD//+c/7APwzzzyzr5/vhzSTeT/90gu1aXjNa15j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", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "# Slice December of 2017 out of the full dataset\n", - "dec17_data = data.loc['2017-12-01':'2017-12-31']\n", - "\n", - "# Plot December of 2017 as current timeseries\n", - "ax = tidal.graphics.plot_current_timeseries(dec17_data.d, dec17_data.s, flood)" - ] - }, + "name": "stdout", + "output_type": "stream", + "text": [ + "Data request URL: https://tidesandcurrents.noaa.gov/api/datagetter?begin_date=20161101&end_date=20161201&station=s08010&product=currents&units=metric&time_zone=gmt&application=web_services&format=xml\n", + "Data request URL: https://tidesandcurrents.noaa.gov/api/datagetter?begin_date=20161201&end_date=20161231&station=s08010&product=currents&units=metric&time_zone=gmt&application=web_services&format=xml\n", + "Data request URL: https://tidesandcurrents.noaa.gov/api/datagetter?begin_date=20161231&end_date=20170130&station=s08010&product=currents&units=metric&time_zone=gmt&application=web_services&format=xml\n", + "Data request URL: https://tidesandcurrents.noaa.gov/api/datagetter?begin_date=20170130&end_date=20170301&station=s08010&product=currents&units=metric&time_zone=gmt&application=web_services&format=xml\n", + "Data request URL: https://tidesandcurrents.noaa.gov/api/datagetter?begin_date=20170301&end_date=20170331&station=s08010&product=currents&units=metric&time_zone=gmt&application=web_services&format=xml\n", + "Data request URL: https://tidesandcurrents.noaa.gov/api/datagetter?begin_date=20170331&end_date=20170430&station=s08010&product=currents&units=metric&time_zone=gmt&application=web_services&format=xml\n", + "Data request URL: https://tidesandcurrents.noaa.gov/api/datagetter?begin_date=20170430&end_date=20170530&station=s08010&product=currents&units=metric&time_zone=gmt&application=web_services&format=xml\n", + "Data request URL: https://tidesandcurrents.noaa.gov/api/datagetter?begin_date=20170530&end_date=20170629&station=s08010&product=currents&units=metric&time_zone=gmt&application=web_services&format=xml\n", + "Data request URL: https://tidesandcurrents.noaa.gov/api/datagetter?begin_date=20170629&end_date=20170729&station=s08010&product=currents&units=metric&time_zone=gmt&application=web_services&format=xml\n", + "Data request URL: https://tidesandcurrents.noaa.gov/api/datagetter?begin_date=20170729&end_date=20170828&station=s08010&product=currents&units=metric&time_zone=gmt&application=web_services&format=xml\n", + "Data request URL: https://tidesandcurrents.noaa.gov/api/datagetter?begin_date=20170828&end_date=20170927&station=s08010&product=currents&units=metric&time_zone=gmt&application=web_services&format=xml\n", + "Data request URL: https://tidesandcurrents.noaa.gov/api/datagetter?begin_date=20170927&end_date=20171027&station=s08010&product=currents&units=metric&time_zone=gmt&application=web_services&format=xml\n", + "Data request URL: https://tidesandcurrents.noaa.gov/api/datagetter?begin_date=20171027&end_date=20171126&station=s08010&product=currents&units=metric&time_zone=gmt&application=web_services&format=xml\n", + "Data request URL: https://tidesandcurrents.noaa.gov/api/datagetter?begin_date=20171126&end_date=20171226&station=s08010&product=currents&units=metric&time_zone=gmt&application=web_services&format=xml\n", + "Data request URL: https://tidesandcurrents.noaa.gov/api/datagetter?begin_date=20171226&end_date=20180125&station=s08010&product=currents&units=metric&time_zone=gmt&application=web_services&format=xml\n", + "Data request URL: https://tidesandcurrents.noaa.gov/api/datagetter?begin_date=20180125&end_date=20180224&station=s08010&product=currents&units=metric&time_zone=gmt&application=web_services&format=xml\n", + "Data request URL: https://tidesandcurrents.noaa.gov/api/datagetter?begin_date=20180224&end_date=20180326&station=s08010&product=currents&units=metric&time_zone=gmt&application=web_services&format=xml\n", + "Data request URL: https://tidesandcurrents.noaa.gov/api/datagetter?begin_date=20180326&end_date=20180401&station=s08010&product=currents&units=metric&time_zone=gmt&application=web_services&format=xml\n" + ] + } + ], + "source": [ + "# data, metadata = tidal.io.noaa.request_noaa_data(station='s08010', parameter='currents',\n", + "# start_date='20161101', end_date='20180401',\n", + "# proxy=None, write_json='data/s08010.json')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Principal Flow Directions\n", + "As an initial check on the data, a velocity plot can be created to identify data gaps. To consider the velocity in one of the principal flow directions we apply the `principal_flow_directions` function. This function returns 2 directions (in degrees) corresponding to the flood and ebb directions of the tidal site. Principal flow directions are calculated based on the highest frequency directions. These directions are often close to 180 degrees apart but are not required to be.\n", + "\n", + "The `plot_current_timeseries` function plots velocity in either direction using the speed timeseries. " + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "# Specify histogram bin width for directions to calculate the principal flow directions\n", + "width_direction = 1 # in degrees\n", + "\n", + "# Compute two principal flow directions\n", + "direction1, direction2 = tidal.resource.principal_flow_directions(\n", + " data.d, width_direction\n", + ")\n", + "\n", + "# Set flood and ebb directions based on site knowledge\n", + "flood = direction1 # Flow into\n", + "ebb = direction2 # Flow out" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The time series of current data can be plotted using the `plot_current_timeseries` function, which can include either the flood or ebb directions." + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Joint Probability Distribution\n", - "\n", - "Direction and velocity can be viewed as a joint probability distribution on a polar plot. This plot helps visually show the flood and ebb directions and the frequency of particular directional velocities. " + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAABjUAAAMWCAYAAAC5gwQ2AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/NK7nSAAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOzdd5wdVd0/8M+WbHqHUJKQANKrEKlSBdToozx2RVAUFbEhj+WnKEVBUOnSewepoYWQTkJ6732zm+xutvd297bfHze7O3d35k47M+fMzOftyxebW2a+d8qZmfM9JS+dTqdBRERERERERERERESkuHzZARAREREREREREREREVnBpAYREREREREREREREQUCkxpERERERERERERERBQITGoQEREREREREREREVEgMKlBRERERERERERERESBwKQGEREREREREREREREFApMaREREREREREREREQUCExqEBERERERERERERFRIBTKDiDqUqkUKioqMHz4cOTl5ckOh4iIiIiIiIiIiIjId+l0Gi0tLTj00EORn2/cH4NJDckqKiowceJE2WEQEREREREREREREUm3d+9eTJgwwfB9JjUkGz58OIDMjhoxYoTkaOyJx+OYOXMmLrvsMgwYMEB2OBRRPA7JTzzeSDYeg6QCHoekEh6PJBuPQVIBj0PyE4838lJzczMmTpzYU2duhEkNybqHnBoxYkQgkxpDhgzBiBEjWIiRNDwOyU883kg2HoOkAh6HpBIejyQbj0FSAY9D8hOPN/KD2TQNnCiciIiIiIiIiIiIiIgCgUkNIiIiIiIiIiIiIiIKBCY1iIiIiIiIiIiIiIgoEJjUICIiIiIiIiIiIiKiQGBSg4iIiIiIiIiIiIiIAoFJDSIiIiIiIiIiIiIiCgQmNYiIiIiIiIiIiIiIKBCY1CAiIiIiIiIiIiIiokBgUoOIiIiIiIiIiIiIiAKBSQ0iIiIiIiIiIiIiIgoEJjWIiIiIiIiIiIiIiCgQmNQgIiIiIiIiIiIiIqJAYFKDiIiIiIiIiIiIiIgCgUkNIiIiIiIiIiIiIiIKBCY1iIiIiIiIiIiIiIgoEJjUICIiIiIiIiIiIiKiQGBSg4iIiIiIiIiIiIiIAoFJDSIiIiIiIiIiIiIiCgQmNYiIiIiIiIiIiIiIKBCY1CAiIiIiIiIiIiIiokBgUoOIiIiIiIiIiIiIiAKBSQ0iIiIiIiIiIiIiIgoEJjWIiIiIiIiIiIiIiCgQmNQgIiIiIiIiIiIiIqJAYFKDiIiIiIiIiIiIiIgCgUkNIiIiIiIiIiIiIiIKBCY1iIiIiIiIiIiIiIgoEJjUICIiIiIiIiIiIiKiQGBSg4iIiIiIiIiIiCJtxsZK7KxukR0GEVlQKDsAIiIiIiIiIiIiIlkW76zFtS+uAgCU3PklydEQkRn21CAiIiIiIiIiIqLI2lDeJDsEIrKBSQ0iIiIiIiIiIiIiIgoEJjWIiIiIiIiIiIiIiCgQmNQgIiIiIiIiIiIiIqJAYFKDiIiIiIiIiIiIiIgCgUkNIiIiIiIiIiIiiqy8PNkREJEdTGoQEREREREREREREVEgMKlBRERERERERERERESBwKQGEREREREREREREREFApMaREREREREREREREQUCExqEBERERERERERERFRIDCpQUREREREREREREREgcCkBhERERERERERERERBQKTGkREREREREREREREFAhMahAREREREREREVFk5SFPdghEZAOTGkREREREREREREREFAhMahARERERERERERERUSAwqUFERERERERERERERIHApAYREREREREREREREQUCkxpERERERERERERERBQITGoQEREREREREREREVEgMKlBRERERERERERERESBwKQGEREREREREREREREFApMaREREREREREREFFl5ebIjICI7mNQgIiIiIiIiIiIiIqJAYFKDiIiIiIiIiIiIiIgCgUkNIiIiIiIiIiIiIiIKBCY1iIiIiIiIiIiIiIgoEJjUICIiIiIiIiIiIiKiQGBSg4iIiIiIiIiIiIiIAoFJDSIiIiIiIiIiIiIiCgQmNYiIiIiIiIiIiIiIKBCY1CAiIiIiIiIiIiIiokBgUoOIiIiIiIiIiIiIiAKBSQ0iIiIiIiIiIiIiIgoEJjWIiIiIiIiIiIiIiCgQmNQgIiIiIiIiIiIiIqJAYFKDiIiIiIiIiIiIiIgCgUkNIiIiIiIiIiIiIiIKBCY1iIiIiIiIiIiIAi6ZSqOsoV12GEREnmNSg4iIiIiIiIiIKOCufWkNPvvPeZi1uUp2KEREnmJSg4iIiIiIiIiIKODmb68FANz8zkbJkQRPXl6e7BCIyAYmNYiIiIiIiIiISFlPfbIb5945F3vrObSSFRVNnbJDICLyFJMaRERERERERESkrL+/vxnljR2448MtskMJpM54Eul0WnYYRETCMKlBRERERERERERK6ehK4r8r9qC6pbfXQSLJinm7qls6cexfZ+Cqp5fLDiWQVpTU444Pt6AznpQdChFpFMoOgIiIiIiIiIiISOsf07fghaWlmDhmcM9rTGnY9+7aCgDAwh21kiMJpm8+ugQAMHxgIX558VGSoyGibuypQURERERERERESpm9pQoAsLe+Q3IkwcYJsMUorm2THQIRaTCpQURERERERERESoklUrJDCIV85jSIKISY1CAiIiIiIiIiIqXUt3XJDiEUmNOwhhOpEwULkxpEREREREREREQUWe+uq5AdAhHZwKQGERERERERERFRCOVz/ClL1pc1yQ6BiGxgUoOIiIiIiIiIiCiEmNKwb19TB254bS02ljPRQaSqQtkBEBERERERERERmeG0Bw7kMa1h129eXYvlu+vx1upy2aEQkQH21CAiIiIiIiIiIgohpjTs21nd2v9FJtSIlMKkBhERERERERERUUCVN3YY9mJhRw37uMmI1Mfhp4iIiIiIiIiIiALohSUl+Os7m3DuQfrtlvNYRS8GNyORUthTg4iIiIiIiIiIKID+NWMbAGBRlUFSg5XxYnD4KSKlMKlBREREREREREQUQsxp2MdEEJH6mNQgIiIiIiIiIiIKIpMKeFbQZ3TGk5i1uQqtsYSFT3OjEamOSQ0iIiIiIiIiIgoAjgHUj8km4ZwaGbd/sAU/eX4lfvbCStmhEJEATGoQERERERERERGFEHtqZPx35V4AwKKddaaf5TYjUh+TGkREREREREREREFkOvwUa+gBIN/GZuAWI1IfkxpEREREREREREQhxAr6jHwmd4hChUkNIiIiIiIiIiKiEGJdfgY3A1G4MKlBREREREREREQUQkxqZNjpqcFtRqQ+JjWIiIiIiIiIiIgCyKz+PY99FADYS1RwmxGpj0kNIiIiIiIiIiKiEGKvgwyjCdPrWmOobOr0OZrw2V7Vgg/W75MdBkVIoewAiIiIiIiIiIiIiLxilNw5/bbZ/gYSIHvq2rG0uA7/e9p43PLuJizfXY/3fvVZFOh89rJ7FwAARg85E+d86gB/A6VIYlKDiIiIiIiIiMhH766rwNEHDcOxB4+QHUqgpNOyIwiOBdtrsLKkHkeO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WREREREREVG61FeWJCIiIiJdGVD6AgCQ40k8b8WsYEddRQF+/a1xSV/vW5xrUkuIiIiIiIjIabhSg4iIiMgkRq9QeOCM8ehbnIvfnzNR98/Ws+0XzxmIE8f3w+/OmRgLwJTkeXXcAhERERERETkVV2oQEREROcSCoVVYMLTK6mYoyvd58KPjRwEAnrhwKn76whpcs3iIxa0iIiIiIiIiO2BQg4iIiIgsM7xvER46a4LVzSAiIiIiIiKbYPopIiIiIpNYXcCbiIiIiIiIyO4Y1CAicijJqArERGRblQG/1U0gIiIiIiIiygjTTxEROVQ4bHRJYiKym2sPG4Jdh9pw0vhqzb/LSwoRERERERGJgEENIiIioixRmp+DB84Yb3UziIiIiIiIiNLG9FNEREQkvNuPGgYA+PnJo61tCBERERERERFZiis1iIiISHinT6nBCeOr4fe6rW6KrpjSiYiIiIiIiEgbrtQgInIoFgonp3FaQIOIiIiIiIiItGNQg4iIiMgijD0SERERERERacOgBhERERERERERERER2QKDGkREDhVmsn4iIiIiIiIiInIYBjWIiIiITGLvWjcMlBIREREREZH1GNQgInIoew+eEmWH48b2s7oJRERERERERLbisboBRERERNlCnhbur+dPwYSaEgtbQ0RERERERGQ/XKlBREREZIHR1cW2WlE1fWA5AKAi4LO4JURERERERJTNuFKDiIiIiBTdfvRwDOtThCUje1vdFCIiIiIiIspiDGoQERERWSBss8LbAb8X355ZZ3UziIiIiIiIKMsxqEFE5FBj+xdjSK8ABpTlWd0UIupkp3RTRERERERERCJiUIOIyKE8bheeuWwGB1GJiIiIiIiIiMgxWCiciMjBGNAgIiIiIiIiIiInYVCDiIiIiIiIiIiIiIhsgUENIiIiIpP0KfYDACQJ8LrYDSMiIiIiIiLSijU1iIiIiEzi87jx6a2L4JYkuFxMD0dERERERESkFYMaRERERCYq8LH7RURERERERJQu5j0gIiIiIiIiIiIiIiJbYFCDiIiIiIiIiIiIiIhsgUENIiIiIiIiIiIiIiKyBQY1iIiIiIiIiIiIiIjIFhjUICIiIiIiIiIiIiIiW2BQg4iIiIiIiIiIiIiIbIFBDSIiIiIiIiIiIiIisgUGNYiIiIiIiIiIiIiIyBYY1CAiIiIi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", + "text/plain": [ + "
" ] - }, + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "ax = tidal.graphics.plot_current_timeseries(data.d, data.s, flood)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The plot above shows missing data for most of early and mid-2017. The IEC standard recommends a minimum of 1 year of 10 minute averaged data (See IEC 201 for full description). For the demonstration, this dataset is sufficient. To look at a specific month we can slice the dataset before passing to the plotting function." + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ { - "cell_type": "code", - "execution_count": 8, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAA8QAAALeCAYAAABslti+AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/NK7nSAAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOzdd3gU1dfA8e/sJtn0HgghlRAIvYN0CEUp0n4IAkoR7K8oKgKKFAERFUFULKhUQYpUQaR3pIZOCCUJNQkJ6T278/6xZGFJKIGQUM7HZx/ZKXfuzC7snLn3nquoqqoihBBCCCGEEEI8ZTQlXQEhhBBCCCGEEKIkSEAshBBCCCGEEOKpJAGxEEIIIYQQQoinkgTEQgghhBBCCCGeShIQCyGEEEIIIYR4KklALIQQQgghhBDiqSQBsRBCCCGEEEKIp5IExEIIIYQQQgghnkoSEAshhBBCCCGEeCpJQCyEEE+RMWPGoCgKW7ZsKemqiEJQFIUWLVqUdDXM9O/fH0VRiIyMfKjHadGiBYqiPNRjPKqe5nMXQojiIgGxEELcJ71ez4wZM2jevDmurq5YWlpSqlQpqlevzqBBg1i5cmWx12nWrFkoisKsWbOK/diPkkcxgLzZvn376NOnD35+fuh0OhwdHQkMDOT555/nyy+/JC0traSr+NCkpaUxdepUQkJCKFWqFFZWVjg7O1O/fn0++eQTzp07V9JVfGzlBdD38sAr74HGzS+tVoubmxshISH88ccf91WH1NRUxo0bR40aNbC3t8fBwYEqVarw2muvkZOTc19lCiHEw2RR0hUQQojHkV6vp2PHjqxduxZnZ2c6dOiAt7c3165d48yZM8ydO5ewsDA6depU0lUVj5h58+bRr18/VFUlJCSErl27otVqiYiIYPfu3fz9999069aN8uXLl3RVi9x///1H9+7duXTpEt7e3rRv3x4vLy/S09M5dOgQX331FV999RX//fcftWvXLunqPhU6d+5MzZo1AcjOzubcuXOsXLmSzZs3c+LECSZMmHDPZUVGRtKmTRvOnDlD06ZNefPNN1FVlcjISJYsWcI333yDpaXlQzoTIYS4PxIQCyHEfViwYAFr166lRo0abN26FScnJ7P1CQkJHDhwoIRqJx5V6enpvPXWWyiKwrp162jVqpXZeoPBwObNm3F3dy+hGj48J0+e5NlnnyU1NZUvvviCDz74AAsL89uQ8+fP89FHH5GcnFxCtXz6dOnShf79+5st279/P/Xq1eObb77h008/xdra+q7lZGdn07VrV6KiolixYkW+h4F6vR6NRjomCiEePfIvkxBC3IedO3cCxm6HtwbDAC4uLrRu3Trf8szMTCZOnEi1atWwtbXF0dGRpk2b8ueff+bbdsuWLSiKwpgxYwqsg7+/P/7+/qb3LVq0YMCAAQAMGDDArCtkQeM8lyxZQv369bG1tcXV1ZWePXty8eLFfNsdOHCAd999lxo1auDq6oq1tTVBQUG8//77XLt2Ld/2N3fbXr9+PU2bNsXe3h4PDw8GDBhAYmIiYLzpbt++PS4uLtjb29O5c2eioqLylZfXDTQrK4uRI0cSEBCATqcjMDCQsWPHkp2dne/YAFu3bjW7Brdex4ULF9K0aVOcnJywsbGhatWqfP7552RmZt72WqenpzN06FB8fX3R6XSUL1+eL774AlVV8+1TkKNHj5KSkkLVqlXzBcMAGo2GVq1a4ezsXOD+cXFxvPbaa5QpUwadTkeVKlX47bffCtzWYDAwffp06tWrh729PXZ2dtStW5fp06djMBjybb98+XJeeuklKlSogJ2dHfb29tSuXZupU6ei1+vv6fzu5J133iE5OZlhw4YxbNiwfMEwgK+vL3/++ScNGzbMty43N5fPP/+coKAgdDodPj4+DB06lKysrAc+l5vHQ//8889Uq1YNa2trSpcuzauvvmr6zt7sfr8Te/bsoXv37nh6emJlZYWPjw+vv/46ly9fvoerWDzq1q2Lq6srmZmZpKSk3NM+c+fO5dChQ7z77rsF9ozRarUyHloI8UiSFmIhhLgPHh4eAISHh9/zPtnZ2bRt25bt27dTuXJl3n77bdLT01m8eDG9evUiNDSUSZMm3Xed+vfvj7OzMytWrDDrBgnkC7CmT5/OypUr6dSpE82bN2fPnj0sWrSIQ4cOceTIEXQ6nWnbGTNmsGzZMpo3b07r1q3R6/Xs37+fKVOmsGbNGvbt24eDg0O++qxcuZK///6bjh078sYbb7Br1y5mzZpFZGQk48aNo02bNjRv3pyBAwdy7NgxVq5cyZkzZzh69GiBLUk9evRg3759dO/eHUtLS1asWMGYMWPYv38/K1euRFEUatasyejRoxk7dix+fn5mLV83jykeNmwYX375JR4eHvTp0wc7OzvWrFnDJ598wtq1a9mwYQNWVlZmx8/JyaFt27ZcvnyZdu3aYWFhwfLlyxkxYgQZGRmMHTv2rp9R3vfm8uXLpKamYm9vf9d98iQmJtK4cWOsrKzo3r07mZmZLFmyhEGDBqHRaEwPQ/L07t2bhQsX4uvry6BBg1AUhWXLlvH222+zbdu2fA9hhg8fjkajoUGDBpQtW5bExEQ2btzIkCFD2Lt3L/Pnz7/nut4qIiKCjRs3Ym1tzUcffXTX7W/+/t18Ptu3b6ddu3Y4OjqyZs0avv76a2JjY5k9e3aRnMtHH33Ev//+y/PPP0/btm3ZvHkzv/76K+Hh4WzdujXf9oX9TsycOZNXX30Va2trOnXqhLe3N6dPn+bXX39l1apV/Pfff/j6+t71+jxsBw8e5Nq1a/j7+5u+s3ezYMECwPjvUFRUFGvWrCExMRFfX1+ee+453NzcHmaVhRDi/qlCCCEK7dChQ6qlpaWqKIrap08fddGiReq5c+fuuM+ECRNUQO3YsaOak5NjWh4dHa36+PiogLp9+3bT8s2bN6uAOnr06ALL8/PzU/38/MyWzZw5UwXUmTNnFrjP6NGjVUB1cHBQjxw5YrauV69eKqD++eefZssjIyPV3NzcfGX99NNPKqBOnDixwDpotVp169atpuV6vV5t3bq1CqhOTk7qvHnzzPZ79dVXVUBdvny52fLmzZurgBoUFKReu3bNtDwjI0N95plnVECdM2eO2T6A2rx58wKvwY4dO1RA9fPzU2NiYkzLc3Jy1Pbt26uAOn78eLN9/Pz8VEBt166dmp6ebloeExOjOjk5qY6Ojmp2dnaBx7uZwWBQGzRooAJq9erV1WnTpql79+5VMzMz77gfoALqwIEDzT6L48ePq1qtVg0ODjbb/o8//lABtW7dumpqaqppeWpqqlq7dm0VyHf9z5w5k++4er1e7dOnjwqou3fvNlvXr18/FVAjIiLuet6zZ89WAbVx48Z33fZWeZ9/7dq11fj4eLNzCQwMVDUajXr58uUiORdfX181KirKtDwnJ0dt2rSpCqj//fef2T6F/U6cOnVKtbS0VIOCgvLVd+PGjapGo1E7d+5c4Lnfq7ztN2/efNdt8865c+fO6ujRo9XRo0erI0aMUHv16qXa2dmpfn5+6s6dO+/52I6Ojqq1tbU6efJk1cLCwvSdBVQ7Ozv1t99+u+eyhBCiOElALIQQ92nx4sVqmTJlzG783Nzc1G7duqmrV6/Ot31gYKCqKIp66tSpfOt++eUXFVAHDBhgWvYwA+KRI0fmW7dp0yYVUD/44IPbn/RNDAaD6ujoqLZs2bLAOrz88sv59skLjJo2bZpv3datW1VAHTNmjNnyvJv8W4NeVb1xjVq0aGG2/E4B8cCBA1VAnTFjRr51YWFhqkajUQMCAsyW5wU/BQVaffv2VQH16NGjBR7vVufPn1dDQkLMvjeWlpZqgwYN1K+++kpNSUnJtw+g2traqsnJyfnWNWvWTAXM1rVq1UoF1PXr1+fbft26dSqQ73O7nf3796uAOnbsWLPlhQmIJ02apAJqz5497+mYN8v7/Dds2JBv3ahRo1RAXbVq1T2Vdbdz+fXXX/Pt8/vvv6uA+t1335ktL+x34r333lOBAv9tUFVV7dKli6rRaNSkpCTTsuIIiAt62djYqEOHDjV7AHUnmZmZpodgiqKow4cPV8+fP6/Gx8erv//+u2pvb68qiqJu3Ljxns9FCCGKi3SZFkKI+9S9e3c6d+7M5s2b2bFjB6GhoezYsYOlS5eydOlSXnnlFX799VcURSElJYWzZ8/i7e1NhQoV8pWVN9744MGDxVL3unXr5lvm4+MDGBOC3SwnJ4eff/6ZP//8kxMnTpCUlGQ2BvXSpUsFHqNOnTr5lnl5ed11XUHjmAGaN2+eb1nTpk2xsLAgNDS0wH0Kkrdty5Yt862rWLEi3t7eREREkJiYaNbV3NnZmcDAwHz73O663Y6Pjw8bN27k5MmTrF+/nv3797N371727NnDnj17mD59Ops2bTIbHw5QoUKFArum5x0/MTHRtD40NBSNRlPgNWvZsiVarTbfdy0+Pp6vvvqKNWvWcO7cuXxTP93uc74X6vXxtA8yhrQw39n7PZfCHAMK953YvXs3YMwNsHfv3nz7xMbGYjAYOH36dIF/Px6WmTNnmoYW6PV6Ll68yOzZsxkzZgwrV65k//79d+3anzcuW6/X88ILLzBx4kTTugEDBpCamsrgwYOZNGkSISEhD+1chBDifkhALIQQD8DS0pK2bdvStm1bwHhD+Ndff/HKK6/w+++/06lTJzp37kxSUhIAnp6eBZZTpkwZANN2D1tBicDykhzdmnSoZ8+eLFu2jHLlytG5c2c8PT1NYzynTp1aYFKjux3jTutuN1dp6dKl8y3Lmzc1Nja2wH0Kci+fxfnz50lKSjILiAuq8831LmziqUqVKlGpUiXT+7CwMF555RV2797NkCFDWLZsmdn2hTl+UlKSaW7sgrZ3d3c3u2aJiYnUq1ePiIgI6tevT9++fXF1dcXCwoLExES+/fbb237O9+JuDzvuxb1+Zx/kXArz9+J2299un/j4eAC++uqrAvfJk5qaesf1D5NWq8XPz49Ro0YRHh7OH3/8wXfffceIESPuuJ+trS1WVlZkZ2fTuXPnfOu7du3K4MGDC3wQIIQQJU0CYiGEKEJarZYePXpw9OhRxo8fz8aNG+ncubPpxjk6OrrA/a5cuQKY32DnJZbKzc0tcJ+kpKTb3pAXlf3797Ns2TJatWrFP//8YxZgGQwGvvzyy4d6/JvFxMTkSzik1+uJj4/H0dHxnsu5+bMoqHWvoM+iOAQHBzN37lzKly/Pxo0bH6gsJycnrl27Rk5OTr6gODc3l7i4OLNr9uuvvxIREcHo0aPzZePevXs333777QPVp0mTJoDx+/Swv7cP+1zuV945JyUlFer7WlIaNGjAH3/8cc9BbMWKFTl69GiBGdJdXFwAyMjIKMoqCiFEkZBpl4QQ4iHI67qa11XUwcGBwMBALl26xOnTp/Ntv3nzZgBq165tWpZ3E3nhwoV82585c6bAqWC0Wi1Q+NbK2zlz5gwAnTt3zhdY7d27t1hvcAvK8rt9+3Zyc3OpVauW2XKNRnPba5C37ZYtW/KtO3PmDBcvXiQgIOC2Ux89TLd+b+5XrVq1MBgMbNu2Ld+6bdu2odfrzb5reZ/z//73v3zbF3TdCysgIIDWrVuTmZl51xZS4IFaox/2udyvZ555BjB+Zx8Hed29C5qiqyB504gdP34837pjx44B5BsGIIQQjwIJiIUQ4j4sWLCA9evXF3izGB0dzYwZMwBo1qyZafkrr7yCqqoMHTrULFiLi4tj3Lhxpm3yBAcH4+joyIoVK8y6t2ZkZDB48OAC65U3tUlBQfT9yLuBvTV4jI2N5e233y6SY9yrcePGmY3JzMzMNHXlvHXKITc3t9teg7xrPH78eK5evWpartfr+fDDDzEYDAwcOLCoqw8Ypx+aNm1agV3jVVVlwoQJgPn35n7kneOIESNIT083LU9PT2f48OEAZueY9znnPZjJExoaajYe9EF89913ODo6MnHiRCZPnlxgz4fz58/z4osvmsbb3o/iOJf78X//939YWloyZMiQAqdry87OfmSC5YSEBGbOnAmYT1d2J6+//joWFhZMnTrVbE7lzMxMPvnkEwBefPHFIq+rEEI8KOkyLYQQ92HPnj18++23eHp60qRJEwICAgBjwLN69WoyMjLo3Lkz3bt3N+3z4Ycf8s8//7BixQpq1KhB+/btTfMQx8bG8tFHH5m6loJxfPL777/PmDFjqFWrFl27diU3N5f169fj5eVlGpd5s4YNG2Jra8vUqVOJj483jbt955137qubar169WjcuDFLly6lUaNGNGnShJiYGP755x8qVqxYYB0elsqVK1OlShWzeYjPnj1Lhw4dePnll822bdWqFX/++SedO3emVq1aWFhY0KxZM5o1a0ajRo346KOP+PLLL6latSrdu3fHzs6Of/75h2PHjtGkSROGDh36UM4hKSmJd999l6FDh9K4cWOqVq2Kg4MDsbGxbNq0iXPnzlGqVCkmT578QMfp3bs3K1asYNGiRVSpUoUuXbqgKArLly8nIiKCHj160KdPH9P2ffv25auvvmLIkCFs2bKFoKAgTp8+zd9//023bt1YuHDhg546wcHB/Pvvv/zvf//jww8/5Ntvv6VVq1Z4eXmRlpbG4cOH2blzJ4qiMGzYsPs+TnGcy/0IDg7m999/55VXXqFKlSo899xzVKhQgZycHM6fP8/27dvx8PAgLCzsgY/1xRdfMGvWrALXDR482Kx3wPLly4mMjARuJNVatWoV8fHx1KtXjzfeeOOejhkcHMykSZP44IMPqF69Ol26dMHW1pZ///2X8PBwGjRo8ECfqxBCPDQlmuNaCCEeU+fPn1e///57tUuXLmqFChVUBwcH1dLSUvX09FTbtWunzp07V9Xr9fn2y8jIUCdMmKBWqVJFtba2Vu3t7dXGjRur8+fPL/A4BoNBnTRpklquXDnV0tJS9fHxUYcOHaqmpaUVOO2SqqrqP//8oz7zzDOqnZ2daRqVvKlx8qZdKmhaloiICBVQ+/XrZ7Y8Pj5effPNN1U/Pz9Vp9Op5cqVU0eMGHHbOtxp6qc7TSV1u+PnTSWTmZmpfvLJJ6q/v79qZWWlBgQEqGPGjClwDt+YmBi1V69eaqlSpVSNRlPgMRcsWKA2btxYtbe3V3U6nVq5cmV1/PjxakZGRr7ybnetVfXO1/RWmZmZ6rJly9Q333xTrVWrllqqVCnVwsJCdXR0VGvXrq1+/PHHamxsbL79uMM0Ureb/kiv16s//PCDWqdOHdXGxka1sbFRa9eurX7//fcFfjePHz+uPv/886qHh4dqa2ur1q5dW50xY8ZtP5fCTLt0s5SUFPWbb75RW7RooXp4eJid//Dhw/PN532nqYdu910rynO53Xf2fr8TR44cUfv166f6+vqqVlZWqouLi1qlShX1tddeyzct0f1Ou3Sn17Jly8zO+daXg4ODWq9ePfXLL78s8O/C3fz9999qy5YtVUdHR1Wn06mVKlVSP/vsM7O5moUQ4lGiqOoDDlQSQgghHqIWLVqwdevWBx5XK4QQQghxKxlDLIQQQgghhBDiqSQBsRBCCCGEEEKIp5IExEIIIYQQQgghnkoyhlgIIYQQQgghxFNJWoiFEEIIIYQQQjyVJCAWQgghhBBCCPFUkoBYCCGEEEIIIcRTSQJiIYQQQgghhBBPJQmIhRBCCCGEEEI8lSQgFkIIIYQQQgjxVJKAWAghhBBCCCHEU0kCYiGEEEIIIYQQTyUJiIUQQgghhBBCPJUkIBZCCCGEEEII8VSSgFgIIYQQQgghxFNJAmIhhBBCCCGEEE8lCYiFEEIIIYQQQjyVJCAWQgghhBBCCPFUkoBYCCGEeEwpioKiKPj5+ZGZmVngNv7+/iiKQm5ubjHXTgghhHj0SUAshBBCPObOnz/P1KlTS7oaQgghxGNHUVVVLelKCCGEEKLwFEXBxcXF1AJ89uxZ3N3dzbbx9/cnKiqKnJwcLCwsSqimQgghxKNJWoiFEEKIx5itrS2ffvopycnJjB07tqSrI4QQQjxWJCAWQgghHnNvv/02gYGB/Pzzz4SHh5d0dYQQQojHhgTEQgghxGPO0tKSL774gpycHIYPH17S1RFCCCEeGxIQCyGEEE+A7t2707BhQ5YtW8aOHTtKujpCCCHEY0ECYiGEEOIJMXnyZAA++OADJGemEEIIcXcSEAshhBBPiIYNG9K9e3f27t3LokWLSro6QgghxCNPAmIhhBDiCfLFF19gaWnJiBEjyM7OLunqCCGEEI80CYiFEEKIJ0hgYCBvvfUWERERfPfddyVdHSGEEOKRJgGxEEII8QDGjBmDoihs2bLlnvdp0aIFiqI8tDqNGjUKZ2dnJkyYQGpq6kM7jhBCCPG4k4BYCCGEuImiKHd9HTp0qKSreUeurq58/PHHJCQkEB8fX9LVEUIIIR5ZFiVdASGEEOJRNHr06Nuu8/T0LMaa3J/Bgwczffp0IiMjS7oqQgghxCNLAmIhhBCiAGPGjCnpKtzVnaZW0ul0REREFGNthBBCiMePdJkWQgghisjs2bOpVasWNjY2lCpVildeeYXo6Ojbbp+VlcXIkSMJCAhAp9MRGBjI2LFjJTu0EEIIUUwkIBZCCCGKwJQpU3jjjTeoUaMG7733HhUrVmTmzJk0atSIq1evFrhPjx49+P3333n++ef5v//7PxRFYcyYMfzvf/+7Y+uvEEIIIYqGdJkWQgghCnC7LtPW1tYMHz483/J//vmHPXv2UKtWLdOyIUOGMHXqVIYPH85vv/2Wb5+TJ09y/PhxXFxcAJgwYQItW7bk77//Zt68ebz88stFczJCCCGEKJCiyiNoIYQQwuRu0yE5OTmRmJhoej9mzBjGjh3LK6+8ki/oTUpKws/Pj6ysLBITE9HpdIBx2qWtW7cyZ86cfEHvli1baNmyJS1atGDz5s1Fc1JCCCGEKJB0mRZCCCEKoKpqga+bg+GbNW/ePN8yJycnatasSWZmJidPnrynfZo2bYqFhQWhoaEPfA5CCCGEuDMJiIUQQogiULp06QKX503RlJSUdE/7aLVa3NzcSE5OLtoKCiGEECIfCYiFEEKIIhATE1Pg8rws005OTve0j16vJz4+HkdHx6KtoBBCCCHykYBYCCGEKAJbt27NtywpKYlDhw5hbW1NpUqV7mmf7du3k5uba5acSwghhBAPhwTEQgghRBGYO3duvnG/Y8aMISkpiV69epkSat1s3LhxJCQkmN5nZmYyYsQIAAYMGPBwKyyEEEIImXZJCCGEKMjtpl0C6NKlCzVr1jRb1r59exo3bkyPHj0oU6YMO3bsYMeOHfj7+/PFF18UWE7lypWpUqUK3bt3x9LSkhUrVnD27Fk6dOggUy4JIYQQxUACYiGEEKIAY8eOve06f3//fAHxe++9R9euXZkyZQoLFy7E3t6e/v378/nnn1OqVKkCy1m4cCHjxo3jjz/+4PLly5QtW5YxY8YwfPjwu07/JIQQQogHJ/MQCyGEEEIIIYR4KkkLsRBCCFHM0tLSiI+PJyUlhZSUFFJTU83+n/fn5ORk0//z/pySkkJGRgYGg8H00uv1qKqKwWAwZbUuU6YMiqKg0WhML61Wi1arxd7eHgcHB9PL0dHR9Oeb1+X9Oe//jo6OuLu7Y2Ehtw9CCHEnmZmZZGdnl8ixrayssLa2LpFjP46khVgIIYQoAqqqkpKSwuXLl7ly5YrpdenSJS5fvmxaHh0dTWpqKoqiYGtra/ays7Mz+7OdnZ0pIHV0dDT9387OzhTcKopi+rNGo+HYsWMkJibyzDPPoNFo0Ov15ObmmoLn7OxsU5B9c/Cd90pPTze90tLSzN5nZWWh0Whwd3fH09OTMmXKULZsWby8vPDy8qJMmTKml6enJ1ZWViX9sQghRLHLzMwkwM+e6Fh9iRzf09OTiIgICYrvkQTEQgghxD1QVZWYmBjCw8MJDw/n1KlTREREmALdmJgYMjIysLa2xt3dHVdXVxwdHfH19aVMmTJ4eXnh7e2Nr68vfn5+lCpVCq1WW+T1zMnJYc2aNbRv3x5LS8siLTszM5MLFy4QFRXF+fPnuXTpkuncY2NjiYuLIy4ujmvXrmEwGHB1dTUFzt7e3gQFBVGhQgUqVKhAUFAQtra2RVo/IYR4FCQnJ+Pk5ETUAX8cHYp3Up/kFAN+dSJJSkqS+ezvkfR5EkIIIW6SlJTE6dOnTYFvWFgYp06d4syZM6SmpuLp6Ymfnx/+/v4EBgbSrFkzU6Dr7++Pq6srGo2G5ORktm/fTocOHUr6lIqMtbU1QUFBBAUF3XG77OxsLly4YHpdvHiRixcvsnPnTubPn8/58+dJTU3Fy8uLoKAggoODqVixoilY9vf3L/JgXgghipu9g4K9Q/EmSDQgCRkLSwJiIYQQT6WYmBgOHDjAsWPHOHXqFGFhYZw+fZqrV6/i7OxsasktX748ISEhVKlShWrVqt3zE3edTkdubi65ublP3ZhbKysrAgMDCQwMLHC9wWDgwoULHD16lBMnTnDq1ClWrVpFVFQUFy5cQFVV/Pz8qFixIhUrViQ4OJhatWpRrVo16QIohBCiSD1dv9BCCCGeStHR0Rw4cIADBw6wb98+Dhw4wJUrV/D19aVChQoEBgbSvXt3KleuTPXq1SlTpswDH9PKygpFUcjKynrqAuK70Wg0+Pn54efnR8eOHc3W5ebmcurUKY4dO8aJEyc4ffo0O3fuJCwsjPT0dCpVqkS9evWoW7cutWvXpkaNGhIkCyEeSXrVgL6YB6fqVUPxHvAJIL/QQgghnihXrlzJF/zGxMTg5+dHpUqVqFmzJoMGDaJJkya4ubk9tHooioK1tTWZmZnY2dk9tOM8aSwsLKhSpQpVqlQxW24wGDh58iQ7d+5k3759zJkzhxEjRpCamkpwcLApSK5Tpw41atTAxsamhM6geCxZsoStW7dy6NAhDh8+TEpKCn369GHevHkPXPbcuXPp27cvADNmzGDQoEEPXOaDiImJwcvLi7fffptp06aVaF2EEE8eCYiFEEI8ttLT09m1axc7duwwBb+xsbH4+flRuXJlatasyWuvvUaTJk1wdXUt9vrpdDoyMzOL/bhPIo1GYwqUX3vtNcAYJIeHh5s+/z/++IORI0eSkpJCxYoVqVevHg0aNKB58+ZUqlQJRXlyxtaNHz+ew4cPY29vj7e3N2FhYUVS7oULF3jnnXewt7cnNTW1SMp8UCtWrMBgMNC1a9eSrooQ4gkkAbEQQojHRl4AvHnzZjZt2sSBAwdwc3Ojdu3a1K5dm7feeovGjRvj7Oxc0lUFjEmosrKySroaTyyNRkNwcDDBwcGmVkyDwcDp06dNQfKsWbN4//33sbe3p3nz5oSEhNCiRYvHPkCeMmUK3t7elC9fnq1bt9KyZcsHLlNVVQYMGICbmxvdunXj66+/LoKaPrhly5bh5uZGs2bNSroqQhSKARUDxdtnuriP9yQo3jzgQgghRCGkp6ezceNGRo4cSaNGjXB2duall17iyJEjdOvWjdDQUC5dusTq1asZN24cHTp0eGSCYcDUZVoUH41GQ8WKFRk4cCA//fQTe/bsISEhgdmzZ+Pj48OcOXOoU6cOpUqV4oUXXuDHH3/k5MmTPG6zULZs2ZKgoKAiDeqnTZvGpk2bmDlz5n1389+8eTOKovDhhx9y4MABOnfujKurK05OTvzvf/8jJiYGgBMnTtC7d29KlSqFk5MTHTt25Pz58/nKS0pKYtOmTTz//PP5pinbvn07Xbt2JTAw0DTdWZ06dRgxYsR91V0I8XSSgFgIIcQjo6AAuE+fPhw+fJiuXbty8OBBLl++zKpVqxg6dChVqlRBo3l0f8qky/Sjwdramvbt2zNlyhT+++8/4uPjmTVrFmXLlmXWrFnUqlXrsQ+QH9TJkycZPnw477777gO1xB48eBCA8PBwmjVrhqWlJQMHDsTHx4elS5cyaNAgVq5cSYMGDUhLS6Nfv34EBQWxevVq07jlm61evZrs7Gy6detmtvzzzz+nWbNmHDhwgFatWvH+++/TuXNncnJy+Pfff++7/kIUJUMJ/ScKR7pMCyGEKFGnTp1i5cqVrFixgr179+Li4kK9evXo0qULv/zyC5UrV36kg947sba2JiEhoaSrIW5ha2tLhw4dTHNEp6ens3nzZtavX8/MmTMZMmQIDg4OtGnThi5duvDss8/i5ORUwrV+eHJzc3n55Zfx9fXl888/f6Cy8gLi/fv3s2fPHqpWrQrAp59+iq+vL2vXruXAgQNs2LCBBg0aAJCVlUVgYCDbtm0jMzPTLGv4smXLsLOzo02bNqZlMTExjBo1imbNmrF+/XqsrKzM6hAXF/dA5yCEeLpIQCyEEKJY5ebmsnPnTlauXMny5cu5ePEi9erV47nnnuPHH3985Ft9C0NaiB8PBQXIGzZsYNWqVXz88ce89NJLNG3alC5duvD888/j7+9fshUuYp999hmhoaHs2LHjgbNz5wXEs2fPNgXDAI6OjgQEBHDo0CEmT55sCobB+PckKCiIS5cukZaWZgqIMzMzWbt2Le3atTMLksPCwtDr9VSsWDFfMAzg7u7+QOcghHi6SEAshBDioUtOTmbt2rWsWLGC1atXo9FoaNasGZ988gndunV7pMb9FiVJqvV4srW1pVOnTnTq1AmAo0ePsnDhQubOncv7779PhQoV6NKlC507d6Zu3bqP9QOcvXv38vnnn/PBBx/QsGHDByorLS2N8PBwypUrZ9aimycqKgpXV1deeOGFAtc5ODiYTYW2bt06UlNT82WXrlKlCk5OTsyYMYOYmBh69erFs88+i4uLywPVX4iipldV9MU8/KK4j/ckeHz/BRdCCPFIi4yM5LvvvqN169a4u7vz8ccfY2try8KFC4mNjWX58uW88sorT2wwDDcCYoNBxnQ9zqpVq8b48ePZu3cvly9f5q233uLgwYO0atWKMmXKMGjQIFatWkV6enpJV7VQ8rpKV6hQgXHjxj1weYcPH8ZgMNC6det86yIjI0lISKBFixZYWJi3xyQlJREZGUmtWrXMli9btgwrKytTy30ed3d3duzYQffu3dmwYQO9evWiVKlSdOjQgdDQ0Ac+DyHE00UCYiGEEEXmyJEjjBw5kqpVqxIUFMTcuXN55plnOHDgAGfOnGHGjBk8++yz+W6In1Q6nQ5AWomfIB4eHrz99tv8888/xMXF8dNPP5Gdnc2bb76Jq6srHTt25Lfffnssxo6npqYSHh7OyZMnsba2RlEU02vs2LEAvPrqqyiKwnvvvXfX8vK6S9etWzffugMHDtx23cGDB1FVldq1a5uW6fV6Vq1aRUhISIHjt6tWrcrixYtJSEhg/fr1dO3alTVr1tCmTRv5+yYeGXnTLhX3SxTO03FHIoQQ4qE5f/488+fPZ86cOURERNCsWTPefPNNevTogYeHR0lXr0RpNBqsrKzIysp64LGZ4tGj0+no2rUrXbt2xWAwsH//fhYvXsyUKVN48803ad++PS+//DIdOnQwGwP7qNDpdAwcOLDAdQcPHiQ0NJQmTZpQsWLFe+pOnRcQ16lTJ9+6vIC4oHV5rbo3r9u2bRvx8fH5ukvfysrKitatW9O6dWsaNmzIf//9R0xMDL6+vnetrxBCgATEQggh7kNCQgJLlixh7ty57N69m/r16/PGG2/Qt2/fJ7oL9P2QxFpPB41GQ/369alfvz5fffUVhw4d4tdff+W9997jlVde4YUXXuCll16iWbNmJTLm+OzZs+Tk5BAYGIilpSUANjY2/PrrrwVuP2bMGEJDQ+nXrx+DBg26p2McPHgQKysrs2RaefIC4ptbgW/e79Z1S5cuRaPR0LlzZ7NtQ0NDcXR0JDAw0Gx5Xku3j48P3t7e91RfIR42Ayr6Ym6xlRbiwpOAWAghxD3JzMxkzZo1zJkzhzVr1hAUFMT//vc/5s6di5+fX0lX75ElibWeTjVr1uT7779n2rRprF+/ntmzZ9O1a1fs7Ozo3bs3L7/8MtWqVbvv8pcvX87y5csBiI6OBmD37t30798fMI6z/frrr03bt2rViqioKCIiIh5KluysrCxOnDhB9erVC8z8fPDgQfz8/ArMAH3w4EHs7OwIDg42LVu+fDmNGjWidOnSZttOmzaN2bNnU79+fapUqUKpUqWIiIhg5cqVAMycOfOxTnImhCh+EhALIYS4LYPBwLZt25g3bx6LFy/G0dGRTp06sWfPnnwJcETBpIX46abRaHj22Wd59tlnycrKYsmSJcybN4/69etTrlw5+vXrR69evfDx8SlUuYcOHWL27Nlmy86dO8e5c+cA8PPzMwuIH7Zjx46Rk5NTYJfoqKgo4uLiaNasWb516enphIeH06BBA1Mgu2/fPi5evMiQIUPybd+5c2dyc3PZu3cvixcvJjMzEy8vL3r37s2wYcMICgoq+pMTQjzRFFWV3NxCCCHMnThxgtmzZ/PHH3+QlpbGc889R//+/WnTpo20vhTS8ePHyc3NpUaNGsVyvJycHNasWUP79u1NXWPFo+fatWvMmTOHRYsWsW/fPho1akTfvn3p0aMHDg4OJV29EvXxxx8zceJEzp07R0BAQElXR4hCS05OxsnJibNhnjg4FO9vZkqKgcDgaJKSknB0dCzWYz+u5K5GCCEEYOzyOH/+fJo0aUKtWrU4fPgwX3zxBdHR0SxYsIBnn31WguH7IF2mRUFcXV1577332LVrF6dPn6Zp06Z89dVXlClThtdff/2pnj5o2bJl1KhRQ4JhIUSxkDsbIYR4yp0+fZoPP/wQLy8vRowYQfPmzYmMjGTt2rW89NJLpqmDxP2xtraWLtPijvz9/Rk/fjxhYWGsXLmSuLg4GjVqRL169Zg5c+ZjN7/xgzp58iSHDh0q6WoI8cD0qloiL1E4EhALIcRTKDc3l6VLl9KqVSuqVKnC0aNH+f3334mIiGDChAmUKVOmpKv4xCjsGOLcHD0Htpzk4LYw9HrDQ6lT0rVUdq09QsTJyw+lfHH/QkJC+Ouvv7hw4QLPP/88n3/+OWXKlOGdd94hLCyspKsnhBBPHEmqJYQQT5HY2FhmzJjB9OnTAejVqxezZs0qdEIfce/yukyrqoqiKHfcVq838OnLP3JoRzgA9VtVYcys1+66X2FEn4/n3Q5fk5yQBsC7X77Ic70bFVn5omi4u7szatQoRo4cyfr16/n++++pUaMGTZo0YfDgwXTs2BGtVlvS1RRCiMeetBALIcRTYN++fbz88sv4+PiwcuVKJkyYQFRUFF9//bUEww+ZTqfDYDCQk5Nz123PHLlgCoYB9m48TmTYlSKtz9oFu0lNzjC9/2PK2iItXxStvCzVq1at4syZM9SoUYPXX3+dgIAAJk2aRHx8fElXUQhxG4YSeonCkYBYCCGeULm5uSxYsIB69erRokULcnNz2blzJ3v27KF///5YWEgnoeJgYWGBVqu9p27T1rb5528taNmDsLa1Im+CCUVRirx88fD4+PjwzTffcP78eT799FMWLVpE2bJleeWVVzh+/HhJV08IIR5LEhALIcQTJjMzk59++omgoCA+/PBD2rdvz/nz51mwYAF169Yt6eo9dRRFuedM034Vy/C/N0JM73u/9xxl/NyLtD4d+zYhsIo3ADobS/7v8x5FWr54+KysrHj11Vc5cOAAmzdvJikpidq1a5vmCBdCPBr0qCXyEoUjzQNCCPGESElJ4ccff2Ty5Mk4ODgwZMgQ3njjDayspAWwpBUmsdagkV3o/mYrFEXBydW+yOti72TLt6s/IO5KIo6u9ljbyPfjcdawYUP++usvzpw5w/jx42nZsiX169fnk08+oXXr1kU6/lwIIZ5E0kIshBCPuatXrzJy5Eh8fHyYN28ekyZN4tSpUwwePFiC4UdEYecidnZzeCjBcB6NRkOpsq4SDD9Bypcvz6xZszh37hzVq1fnhRdeoG7duixduhSDQUYVCiHE7UhALIQQj6kLFy4wePBg/Pz82LhxI7Nnz+bQoUP0799fss8+Ygo79ZIQ98vT05Np06YRGRnJc889x5tvvkmlSpWYNWvWPSV2E0IUHb1aMi9ROBIQCyHEYyYsLIx+/fpRvnx5Tp48yZo1a9i9ezedO3dGo5F/1h9FhW0hFuJBOTs7M2HCBCIiIhg4cCCjR48mICCAadOmkZ6eXtLVE0KIR4bcOQkhxGPiwIEDdOvWjRo1apCcnMzu3btZv349LVq0KOmqibu4uYU4JTGdzIzsEq6ReFrY2try0UcfcfbsWT799FOmT5+Oj48P48ePJzExsaSrJ8QTTaZdejxIQCyEEI+448eP8/zzz9O0aVPs7e05duwYy5Yto3bt2iVdNXGPrK2tyczMZOrQBfSoOpzulT5i/SLJBiyKj4WFBa+//jonTpxg+vTpLFu2DF9fX8aPH09aWlpJV08IIUqMBMRCCPGIioqKom/fvtSpUwdHR0dOnTrFnDlzCAoKKumqPbGuXklkyU+b+Gf+brKzcousXGtra9LS0vl3wW4A9LkGvv1oAZnp0o1aFC+NRkPPnj05cOAAc+fO5c8//6RcuXL8+OOPMsZYiCJmQEFfzC8Dklm+sCQgFkKIR0xcXBxDhgwhODiYa9eusX//fv744w98fHxKumpPtMS4FN5p/zW/f7GKacMXMv7134usbJ1Oh6oa0Fre+NnV5xqKNOgWorA6d+7MkSNHmDBhApMmTSI4OJiFCxdKVmohxFNFAmIhhHhEpKWlMW7cOMqVK8e+fftYv349f//9N1WrVi3pqj0VDm47RVJ8KqrBmKJz36YTpCQWTVdSnU6HoiiUq1rGtKz1C/VxdLErkvKFuF8ajYZBgwYRHh7O66+/zuDBg6lTpw7r168v6aoJIUSxsCjpCgghxNMuJyeHGTNmMGbMGDw9PZk3bx6dOnUq6Wo9ddzLOJn+rChgbavD2lZXJGUrioJOp2P4T/04c/AytvbW1G4eXCRlC1EUrKys+Oijj3jrrbcYN24c3bt3p06dOnz55ZfUrVu3pKsnxGPJoBpfxX1MUTjSQiyEECXEYDCwYMECKlasyNdff80XX3zBoUOHJBguIdUbBtHnvWfRWVvi7O7AJz8PwNKq6J4b63Q6UAw0e742dVtWlimyxCPJ3t6eSZMmcebMGQIDA2nWrBndu3cnPDy8pKsmhBAPhfwaCyFEMVNVlX///ZfatWszZMgQ3nzzTcLCwnjllVckSCphL73fjuXhXzH/wDjqNCvaFtxHeS7i3euO8mnfn5n8/h/ERyeVdHXEI8DDw4MZM2Zw9OhRAKpXr85rr73G5cuXS7hmQjw+ijuhVt5LFI7ceQkhRDE6deoUbdu2pWfPnrRr144zZ84wdOhQrKysSrpq4iHLm3rpUXPq8HnGvfo7+7eeZNOyA4zq/0uB22Vn5bBp6T7WLfyPtJSMYq6lKCmBgYEsWbKEXbt2ERkZSfny5fnss88eye+yEELcDwmIhRCiGKSmpjJs2DBq1qxJ6dKlOX36NBMnTsTe3r6kqyaKiU6neySDiFOhUaiqCioY9AbOnbhETrZ59muDwcCol37kq3fmMOX9P3i/0zdkZWSXUI1FSahduzbr1q1j2bJlLFiwgMqVK7NmzZqSrpYQQjwwCYiFEOIhUlWVxYsXU7FiRdatW8f69euZN28eHh4eJV01Ucwe1S7TwbX8UBQFFNBoFcpVLptv7PTliDgO7zpten8+PJoT+84Vd1XFI+DZZ5/l6NGjvPLKK/Tq1YtOnToRGRlZ0tUS4pEkXaYfDxIQCyHEQxIWFkbr1q158803GTp0KAcOHKBJkyYlXS1xi/2bT/DtRwtY8uOGfC2jRelBW4h3/XuECW/MZPGPG40tukWkQg1fPp3xCvVaVKJVt3qMm/1avm3snW3QaMxvspzcpHfD08rCwoKRI0dy4sQJLC0tqVy5snSjFkI8thS1KH9VhRBCkJqaymeffcZ3331H9+7dmTJlCu7u7iVdLVGA0G1hfNzrBzRaDarBwLO9GvHuV71ITkgjLDQKLz83vANLF8mxrl27xt69e3nuuedMy3Jzc8nKyiIrK4vc3Nzbvs6fvkL40fNY6rRY6rQ4e9jjXsbJFBirqmr6c15QYm1tbWz5xTjtU95Lq9ViaWmJVqvFwsICCwsLkuPTiY9JwsPTFe9ypbGwsDCtt7S0xNrami3LDjL948Xo9QZeer8dvd57DiEA1q1bx7vvvktWVhbfffcdHTp0KOkqCVGikpOTcXJyYscxL+wdirf9MTXFQJOql0lKSsLR0bFYj/24knmIhRCiiOR1j37vvfcoXbo0GzZsoHHjxiVdLXEH+7ecRKvVoNcbAPhv3VF6/F8b3us0heSENBRFYei3L9GyS51ClZuTk0NWVhaZmZmmV2pqKllZWezcudO0LDc3F0VRsLKywtLS0hSg5r3ygtKwAxe4ejmZnMxccrL0GHJVxvz+Wr6AF4w3YocPH6ZWrVpotVrgRsCsqmqBwfZ/G49haa0lIvwiSSm+OLramtbn5OSQk5MDtvDWj8+i01ljY2PNoUOHsLa2RqfTYW1tbXrpdDrJlv6Uadu2LUePHuXLL7+kd+/eNGvWjGnTphEQEFDSVRNCiLuSgFgIIYrAyZMnefvttzly5AgjR45k8ODBEhQ8BvwqljEFwxqtBv9KXqyZt4vUZGMWZVVVmTv5nwID4uzsbFJTU0lLSyM1NdXsz3q9Ho1GYxYs5mUS9/T0xN7e3mx5XjB7O3PObObofxdM720drG87Dt3BwYHDhw/j4uKCpaXlXa/Bn19v57/1Z8jrLxZzKptJC94220av1+cL8DMzM8nIyCAhIcH0PjvbmGhLp9Nhb29v9rKzs8POzk7+XjyhLCws+Pjjj+nXrx/vvvsuVapUYdiwYQwbNgxra+uSrp4QJaIkxvTKGOLCk4BYCCEeQF736GnTpvHCCy+waNEi6R79GGn9Qn2iz8ezdcUBfAJLM/jLF/l73k7yokMLSy2uXnZcvnw5X9CbnZ2NTqfDzs4Oe3t7nJ2dKVu2rCnYtbS0zBfoXr58GXd3d5ycnApVzw+nvsRbbSaRlpKJRqvwwTe9i+wauJZyQtEoqHoVjVaDW+n8ddNqtdja2mJra3vHsgwGA1lZWaSnp5uu1bVr17hw4QKpqamoqoqtra0pQL45YL65i/eTbsmSJWzdupVDhw5x+PBhUlJS6NOnD/Pmzbun/ePj41m2bBmrV6/m6NGjXLp0CSsrK6pVq8aAAQMYMGBAiT14KFu2LEuWLGHDhg288847TJgwgWeffZZVq1aVSH2EEOJuJCAWQoj7tHHjRgYMGICbmxsbN26U7tGPIY1GQ9+hHeg7tAO5ubkkJSVRp20AKdk1sXG2wMXTDq1WS3h4uClw8/DwMP35Xlpgb5aXWKuwAXEpLxcWHp7A1cuJOHs4YG1TdPNWv/z+c0SEXebkgUgCq5Rl0MfP33dZGo0GGxsbbGxscHNzM1unqioZGRlmDxWio6NJS0sjLS0NCwsLnJ2dcXJywtnZGWdnZ+zs7J7IIHn8+PEcPnwYe3t7vL29CQsLK9T+ixcv5s0338TT05OQkBB8fX2JiYlh6dKlDBo0iDVr1rBkyZISvXatW7fm3XffZdq0aWzZsoWePXvyww8/yANDIcQjRwJiIYQopJSUFIYOHcrcuXMZNmwYn3zyiWmspng85AW/iYmJJCYmkpSUREpKCjqdDmdnZ1p2qochR4OXd2lc3JyLLLCwtra+70y8Wgstnr5ud9+wkJxc7Zm8ZDCqqhb6PA0Gwz23RCqKcttWZr1eT0pKiukzOXv2LMnJyWg0GlOAnPd/e3v7xz5InjJlCt7e3pQvX56tW7fSsmXLQu1foUIFli9fTseOHc3+7fn888+pX78+S5cu5a+//qJ79+5FXfVCWbFiBbGxsRw+fJiBAwdSqVIlfvnlF7p27Vqi9RKiuOjRoC/mSX30xXq0J4MExEIIUQibNm1iwIABeHh4sGfPHqpWrVrSVRJ3oaoqKSkpxMXFkZCQQGJiIqmpqabg19nZGS8vL5ydnR96t928gHj9X/uIDLtC7WYVqdO04kM73r04dfg8kwbP5drVZJ7r+Qyvfdr5rkGuXm9g2kd/smHJXpzdHfjk5wFUrlvuvuug1WpNn4Wfnx9gDLZTUlJMDy0iIiJISkpCURRTgOzm5oabmxs6ne6+j10SChsA3yokJKTA5Z6enrzxxht88sknbNmypVAB8ebNmwkJCeGDDz6gV69efPbZZ2zfvh29Xk/r1q2ZPn06pUuX5sSJE4wfP54NGzaQlZVF06ZNmT59Or6+vmblJSUlsWnTJnr37k25cuXYuHEjP/zwAwMGDOCHH35Ap9MRFhbGpUuXsLe3x8/Pj7Zt2zJx4sQHujZCCFFYEhALIcQ9SE1N5aOPPmL27Nl89NFHjBw5UlqFH1E3B8Dx8fHExcWh1+txdXXF1dWVsmXL4uTkhI2NzUM5fsTJy4QdiqJCdV8Cq5Q1W6fT6Ti67wy/jdqMRqth6W/bGD1jAM+0qlI0xw6PZvPfB3ELhOysnHvq0j3hrVnERSehGlRWzNpO5ToBNOtY8477bF1+gHUL/wMg4WoyX7w9mzl7xhbFKZjktQ47OTndNkgOCwsjJSUFR0dH3NzccHd3x93d3ZTA7GmUd+6F7c5/8OBBAMLDw2nWrBnt2rVj4MCB/PPPPyxdupTs7GxeffVV+vTpQ0hICP369WPz5s2sXr2avn37smXLFrPyVq9eTXZ2Nt26dQOMn+c777xDbGws8+fP5+LFizRv3pyePXsSExPDvn37+PfffyUgFk8UVVUwqMXbo0Ut5uM9CSQgFkKIu9iyZQv9+/fHzc1NWoUfQXcKgN3d3QkMDMTZ2blIkgxFX7jGsf3n8A/ypHxV73zr920+yeiBM1ANxu7Ho355hWfa3Pi+WFtbExeTAIBBb0CjVdi19miRBMSXo+J4r8cPKFoYMKouXw9fzOjv+91xH1VVuRaTjGowJhFTFIWrVxLveqxrscnGRFwGFdWgkng15YHrfy8KCpKzsrJMn/vNAbK7u7spSH5aAuTc3Fxmz54NYDbf9b3IC4j3799v9u/cp59+iq+vL2vXruXAgQNs2LCBBg0aAMZrHxgYyLZt28jMzDTLJr1s2TLs7Oxo06aNaVlMTAwTJ06kUaNG/N///R9jxozBzc2N77//Hjc3N+Li4h7o/IUQ4n5IQCyEELeRmprKsGHDmDVrFkOHDuXTTz+VVuFHRHp6OjExMcTFxT3UAPhabDKJcSn4VfDkXNgVPuz5A9lZuaDAh1++SKuu5tMx/T1vB1yfvkhFZdXcHWYBsU6nw9HNBo1Wg0FvQDWAl3/B0ycV1oEdp8nOysVSpzW9z8nOxdLq9j/1iqIQ0rUO65fsA0XBUmdBwzZ3D84bt6/B/G/XkpmWhapCu5caFck53A+dToeXlxdeXl7AnQNkDw8P3N3dsbB4Mm9/hg8fzrFjx2jXrh3PPvtsofbNC4hnz55t9tDP0dGRgIAADh06xOTJk03BMBivfVBQEJcuXSItLc0UEGdmZrJ27VratWtnFiSHhYWh1+sJDg5myJAhdOnShf79+1OpUiVmzJhB586dH+T0hRDivjyZvwhCCPGAtm7dSr9+/XB1deW///6jWrVqJV2lp5qqqiQkJBAdHU1MTAwpKSmm1r9y5crh4uJS5NPMbFq2n8nv/4FBr1KuSlkCq/uSm2u4XiFYMmNLvoDYycUeRQOqHjQaBScXO7P11tbWuJVxoHyVskSejsYnsBQd+jS8p/okxqWwZoGxm3L7Xs/g7O5gtt7L3zzhlmspByws7/4Ax9LaChTjtavWoPw9Je7y9HXjrXHd2bfpBNUbBdH+pUcnw3pBAXLeg5Njx46RkZGBh4cHnp6eeHp6PjFz5E6dOpXJkydTsWJF5syZU6h909LSCA8Pp1y5cmYtunmioqJwdXXlhRdeKHCdg4ODWVbxdevWkZqami95VpUqVXBycmLGjBnExMTQq1cvli5dyty5c3n55Zfp2LEj33//Pa6uroWqvxCPKpmH+PEgAbEQQtwkLS2NYcOG8fvvv/Phhx8yevRoaRUuIbm5uVy9etUUBBsMBkqXLk2FChUoVapUocdIFtZPo5di0Bube8+duISju4NpfmKNRsHeKf8Y5L4ftiP8yHmiwqPx8vdgwLCOZuutra3Jysoi/NhFAM6euMzYN2bx9Z9vFViH7KwcLK0syM7KZUj374i9aOxuvX7JPn76dyg66xvXoE7jCgx4/1lWXx/bO2Jy77smCLtyPp41f+w2vT+w7RThRy4QXNPvjvvN/XoNC6atM+6zNYw6zSs9lAzYRUGn01G2bFnKli2Lqqqm6Z4uXLjAkSNHcHJyMgXHjo6Oj2UG62+//ZYhQ4ZQqVIlNm3aVOipjQ4fPozBYKB169b51kVGRpKQkEC3bt3ytawnJSURGRlJ06ZNzZYvW7YMKysrOnToYLbc3d2dHTt2MHbsWNasWcPKlSuxsLCgbdu2LFq0iIkTJ5paizt16lSocxBCiPslAbEQQly3d+9eXnzxRZydndm9ezc1atQo6So9dTIyMoiJiSE6OpqrV69iY2ODp6cndevWxdXVtchbge9ErzeY/qwA1euXIyUpk7MnLuHkZs9bo7vk28fd05kf//2IzPRsrG2t8gVXOp0OVTVgqdOSk2WcHOP4/oh8Ux5lZWQz4fXf2bfpBG6lneg/ohPR56+Z1kdfuEZE2OV8gWuPV1vQtX9j1qxZQ7lgTxKupjB/2jpSktJp37sh1Z8pXwRXBpb9usX054y0LLasOMCL77S94z452bksnr6BcycuUad5JZ7r3bDYg09FUXBwcMDBwYGgoCCysrJM37fTp09jZWVlCo7d3Nwei4dhX3/9NUOHDqVq1aps3LiRUqVKFbqMvO7SdevWzbfuwIEDt1138OBBVFWldu3apmV6vZ5Vq1YREhJS4HzbVatWZfHixWRnZ7Nt2zZ++eUXFi9ezJ49e7hw4QI//fQTL730El26dGH69OnY29sX+nyEeFToVQ16tZinXVKL9XBPBAmIhRBPPYPBwDfffMOoUaMYPHgwEyZMeCxuhJ8U6enpXLx4kStXrpCUlISLiwuenp5UqVKlROecHTjieb77ZDGoUMbfg44vN+bF/2tDSmI6do42aLXGm5zU5HQ2LjuIi7s9TdvXQFEUbOwKngbI0tISg0HF1sGSpKwbs0Vmpmeb7fP3nB3s33wSMGZxXjR9nTGJlarC9evhVjp/sHEzVVX5pO9PRJ2ORlVhxz+Hmf7PUHzLlzZtU8bXjY4vNeLvebsAaNq+OhWq+9z12ji62JGVkYOqqhgMKo6udw9afv98JSt+2wqo7FxzGK2FhrY9n7nrfg+TTqfD19cXX19f9Ho9cXFxREdHExoaSk5ODqVLl6Zs2bKULl36kfw3YeLEiXz88cfUrFmT9evXF7plOE9eQFynTp186/IC4oLWhYaG5lu3bds24uPj7zrXsJWVFa1bt6Z169Y0bNiQ//77j6tXrzJkyBCef/55evXqRe3atVm8eLE8nBRCPFQSEAshnmpxcXH07duXw4cPs3z5ctq2vXMrlyga2dnZXL58mYsXL3Lt2jU8PDwICAigdOnSD21O2W1/H+LInjNUqO5Lm+717hpot3+pMTWbVCA+JpkKNXzQWRszFRsMKqE7wvEpXxprWyv6NZ1AVmYOACvn7OTrhW/ftkxFUVBULbaOViTFZZqWXzgbaxaIJsWnGgNgvTHgTLmWbszVdVOdYy5ew6OM822PlZGWTUTYFdN7vUHl5IEIs4AY4K2xXen4ciP0uQYCgsvc0wOID6e+xLhXfyMlMZ1G7arT5oX6d90ndFuYMaDH2OX8yK7TJR4Q30yr1VK6dGlKly5N9erVSUpKIjo6mhMnThAaGoqXlxc+Pj64ubkV+0Oas2fPkpOTQ2BgoGmowLhx4xg1ahR16tRh3bp1DzTu9uDBg1hZWRWYQT8vIL65Ffjm/W5dt3TpUjQaTb4EWaGhoTg6OhIYGGi2PDw8nJMnT+Lj44O3tzFze/ny5dm9ezfvv/8+DRs2ZPLkybzxxhuPZXd28XQzoGCgeFuIDUgTcWFJQCyEeGpt376dnj17UqlSJQ4dOoSHR9Fk+xUF0+v1xMTEcPHiRWJiYnB0dMTHx4d69eo9tCA4z/ole/lm6J9otRpWz9tF8rVUur8ectf9vPw9zLJAR4Rd5oOe08lIy8LCQkv9lpVMwTDA8QORJMan4ux2+xZTCwtLbJ10ZsFtRnq22TYh3eqy8vetZF3vtt225zMs+m2b2TaZt+xzKxs7K0r7uHL1cgKG69Mq+VXwZM7kNZw9dpFaTSrS+ZVmKIqCX5DnXa6EuWrPlOfPwxPIycpFZ3NvUxpVrO3PhTMxGAzGID+oum+hjlmcFEXB2dkZZ2dnKlasSEJCAhcvXmTfvn1oNBq8vb3x9vYusEvwvVi+fDnLly8HIDo6GoDdu3fTv39/wDjW9uuvvzZt36pVK6KiooiIiMDf35/Zs2czatQotFotTZs2Zdq0afmO4e/vbyrvTrKysjhx4gTVq1cvcHqqgwcP4ufnV2Dr88GDB7GzsyM4ONjs3Bo1akTp0uYPXqZNm8bs2bOpX78+VapUoVSpUkRERLBy5UoAZs6caTYkwsLCgmnTptGqVSsGDRrEhg0b+O2333B2dr7rOQkhRGFIQCyEeOro9Xo+//xzJk6cyPDhwxk5cmSxjk19mqiqSnx8PBcvXuTSpUvodDq8vb2pXLnyQx0bePVKIl++M4eoU1d4pm01UlMzQbkxLnjXumP3FBDHXkrgy/fmcv50DI2erU6uQSUr0xiI6vV6Th0+b9wwL7hVVbOxxwVxdXPCye1GQi5bex3lq3iZbeMf7MX0DcM5uC0ML38PajcL5mpcCptXGLuoBlXzpvoz5QnddYYToVFUqulL7cZBZmUoisLnc15nxoSVJCek0WVAM7atOsTy37aiqip7N57AwkpLx5eb3PU6FESj0dxzMAzwxtj/YWmp5czRi9QLqUzH/k3vvtMjQFEUXF1dcXV1pWrVqly9epWLFy+yfft27OzsTMGxjU3+JGu3c+jQIdN8wXnOnTvHuXPnAPDz8zMLiG8VEREBGL+DU6dOLXCb5s2b31NAfOzYMXJycgrsEh0VFUVcXBzNmjXLty49PZ3w8HAaNGhg+vdz3759XLx4kSFDhuTbvnPnzuTm5rJ3714WL15MZmYmXl5e9O7dm2HDhhEUFJRvn7z96tSpQ8+ePalZsyaLFy+mXr16dz0vIYS4V4qa139JCCGeAtHR0fTu3ZszZ84wb968Am/0xINLTk7mwoULXLp0Cb1eT9myZfH29sbFxaVYuj1+2vcnDm47hUFvQFGgepOKHNlzFtWgotEoPNuzAYM/73HXcj5+6UcO7z5jKqdinXKEH71ofK9RqFTDhxOHLpjtM+rHfjRsffu5fA8fPkxaShY7lp0FoMfrLfGvcPcWWoPBwJE958jOzKFmo/Ls2nCcSR8uRFGMY4uHTupBSKda5OTksGbNGtq3b58vE/fbz33FuROXAFA0Ck071CC4biA7/z2Kb/lSDBzWATuHew/snma5ublcuXKFixcvcvXqVdzc3PD29sbLy+uhZ0B/VH388cdMnDiRc+fOERAQUKRl6/V6Pv74Y7777jvGjx/PkCFDpAu1eGQlJyfj5OTEyiOB2DkUb/6BtBQ9naqfJSkpCUdHx2I99uNKWoiFEE+N9evX07t3b+rXr8+hQ4dkrssiptfruXz5MpGRkSQlJVGmTBlq1KiBh4dHsbfAX464iuF6S62i0eBZ1oXS3esTuuMUlWr7M3D48/dUzqVbyinr60pcdBJx0UnY2unoN7Q9w176mZuHbOlzC24hzsrINmaftrYmNzeXjyb3uuOxMzOy2bryIKpBpdnztbC1t6ZmwxtZolf/uQe4ceiV83cT0qnWHcusXNefiLDLqAYV1aCitbLkl89XAXAyNIrkxAxGfv/yHcsQRhYWFvj4+ODj40NmZiaXLl0iIiKCo0eP4u3tjb+//1PXvXfZsmXUqFGjyINhMI7xnjRpEiEhIQwYMICNGzcyZ84cs/mPhRDifkhALIR44uXm5jJq1CimTp3K2LFj+eCDD6SLdBFKSUkhKiqK8+fPo9Pp8Pf3p0GDBgWORywuLbvW5Y8pa9FoNRgMBpo9X4vazYLvvuOt5XSpw8IfNqDRalANKq2712fwxJ6mhFbWtla8+EYIf/64CYDgmr7Ub5n/ODvXHOLLt2aSnZVLxzeeoWbrcnc8rj5Xz7Ae3xN+vUv2ipnb+HbVB1jpbvxsx1xKRM1rIVMUoi8kMPK1mRw5FMHAT+qwY90xWnYwD5AHjeyMlc6S8CMXqN2sIgkJ6Wi1GvR6AwaDStihqEJfI1VVmT9tPVv/PoR3OQ/eGd8dFw+HQpdzL/S5es4cvYiDsy1eAY/OmH9ra2sCAwMJDAwkMTGRqKgoduzYgb29PQEBAZQtWzbfHL5PopMnTz70Yzz77LOEhobSq1cvqlevzsKFC2nS5P66/QvxsJXMtEv31/n34sWLjBo1irVr1xIfH0+ZMmXo0qULo0ePxsXF5a77z5o1iwEDBtxxG41Gg16vv+M2JeHJ/9dZCPFUu3DhAi+++CLR0dFs3ryZBg0alHSVnggGg4Ho6GgiIiK4du0aXl5e1K9fv0Qy8Bakz5DnKOPnzpljF/AuV4qganefSqggfT9oR9kADy6ciaF+SGWq1jdmyM1Iz2LD0v1UrOlLv/efo1mHGqSlZBJcwxcLS/PucaqqMvndOWRn5QJwZMcZfGu4oqoqSQlp2DvY5NsnIuyKKRgGiAy7wukj56lS70YgnZNtLA9FAVUlJTWD/f+dxVJnvPmaOnYZzdvVMHv4o7O24tVPu5jeb//nCKvm7rpejGLWAn2vNvy1n3nfrgPgYsRVsjIXMGH2a4Uu526yMrIZ1uM7ToUag/ZBn3bhf/cwDry45SXjqly5MpcuXeLcuXMcO3YMHx8fAgICcHB4OA8LnialS5dmw4YNfPbZZ7Rt25ZPPvmEESNGyINOIe7T2bNnadSoEbGxsXTu3Jng4GD27t3Lt99+y9q1a9m5c+dde2PUrFmT0aNHF7hu+/btbNq0iXbt2j2M6j8wCYiFEE+s9evX07NnT1q2bMk///wjY2mKQFZWFlFRUURGRgLGTLZ169Z96FmiC0tRFCrU8OWXsctITkjj1/Er+Hz+W1SqU7iunBqNhjbdzacU2rnuKOPfmmN6P+Lbl2jW4fbzpBr0BrIybmSiTk/KQq/q+bDXj5w4GIW9ow1jf+lP5dr+pm2c3OyNgW7eswUVnN3Nk5Bl5QXE1+n16o3tAYNq7HZta2dttt3Jg5EkxKVSo2F5cnP1poRgKlCvZaXbnsft7N18o1VQNaiEH7lwh63v385/DpuCYYCZn6+k04BmWFo9mrcylpaW+Pv74+fnR0JCAhEREWzZsgU3NzfKlStH6dKlH4mHR48rjUbDmDFjaNmyJS+//DJbtmxh4cKFMhRGiPvw1ltvERsby7Rp03jnnXdMy99//32mTJnCJ598wk8//XTHMmrWrEnNmjULXNewYUMAXnut6B+WFgV5lCaEeOKoqsrUqVPp3Lkzn376KX/99ZcEww8oMTGRgwcPsm7dOq5evUq1atVo06YNFSpUeOSC4TyLp28gNTkDgKzMHGZ/tdq0Tp97/122Zk9ea/Z+xkTjGNzLUXGcOXEJg8F8DLHWQku3N1qZ3ltbW6NoVE4dNQaOqSmZTPt0qdk+Tq72WOgsrgfFCmgUYi8lmm1j52BzI7u1oqC10KJqNKjXW8l0Ogts7axJTkwnJTEdgDlT1vJ+9+8Z98Ys3u74Davn/3ejQAW2rDpU6OtxMfKq2Xtbe+vbbHlDxMnLfNDtW15t+Tn/zN99T8d5XIPHvCzVderUoU2bNri5uXH48GE2bNjAmTNnyMnJuXsh4raaN29OaGgoOTk51K1blxMnTpR0lYQwMc5DXPyvwjh79izr1q0jICCAt99+22zd2LFjsbOzY86cOaSmpt7XNTh27Bj//fcfZcuWpUOHDvdVxsP2aD5WFUKI+5SVlcWbb77JqlWrWL58OW3bti3pKj228qZMCg8P59q1a/j4+NC8efPH5uFCvmFUKiTGpzL61d8JP3KBcpW8GDvjFdw97z6X7LF9EezZeJyyAR43uipfl56ayR/frWfedxsAqNWoPJ/NeMWsG/Qrn3SmbsvKJMalULNZRTZv3Yi1nSVpSdmgqsTHJpuVmZ2VQ26OedCeEJfMxlWHOH3sEjUaBPDi6y34buwK0/pKtXw5GnreFCRn5ar88tUals7aCUDvN1qwaPom0/YxF67h7OGARqtg0Buzb7uVLvxnG3M+3uz93a6nwWBg5Ms/kRiXgsGgMm34Qvwret619b7Rc9UJruNP2IFIAAaO7PzItg7fjrW1NRUrViQoKIjo6GjOnTvHqVOn8Pf3JzAwEGvruz9MEPm5ubmxceNG/u///o9nnnmG+fPn07Fjx5KulhCPhc2bNwPQtm3bfMMOHBwcaNy4MevWrWPPnj20atWqoCLu6OeffwZg4MCBaLXFm3H7Xj1evyRCCHEHMTExdOnShaSkJHbv3k358oUfDymMgXB0dDSnT58mNTWVcuXKUadOnUe2Jfh2ur/Ziv/WHyM1KR0rnSUvfdCO2d+s5czxiwBEhl/h96/W3DXb89E9Z/mo14+m9+WrlTVbX79lJeZ9v8H0PnTXGQ7uCKf+Td2PFUXBr2IZos/HcXJfBIqqwc7RyhgQKwppKZnkZOeaAjx7Rxuq1CvH8QORxtZfrYbzkfH8OWMbikZh+bxdvPtZF9zKOBF/NQVLSy3Wtuafjwr8NWunqa1g/k9bsLKyQJ+RbdompFMtsjJziTobQ4XqPvR9t3APkFRVJSMt22yZpe7OtxaZ6dlcu+UBwPkzMXcNiHU2Vnz917ucO3EJB2c7PH0f3+zCGo0GLy8vvLy8uHbtGqdPn2b9+vX4+vpSvnx57OzsSrqKjx2tVsuPP/5I9erV6dGjB6NGjWLYsGGPbc8C8WQwoEFfzB1yDdfnHkhONv93VqfTFfg7furUKYDbzgUeFBTEunXrCA8PL3RAnJGRwbx589BoNAwaNKhQ+xYn6TItxFNMURTjjbqfH5mZmQVu4+/vj6Io5OYaW8UOHDiAoig888wzBW4/f/58U7kXLuQfS5iWloaVlRX29vZF2lXw4MGD1K5dGxcXF/bu3SvB8H0wGAxcuHCBzZs3c/jwYby8vGjTpg3BwcGPXTAM4FfBk5k7P+Xrpe8ya/doqtYPJDE+FdVgvFkw6NV8gVme7Kwcjvx3hvNnYlj62zazdWePX+ad8f+jYZvK9HmnDa+O6GQ27RLke0vC1WTeCpnA1Pf/YGy/n0hNzMTW4cZctaqKqVtznpjLiabWXoNBZc3ifaAxBqFo4Ldv/iX+agoAOTl6jh6IuNGFGtAWkGCoU78mppbrus0rojdA5NlYVBSuxaViKGR2UoPBfNwycNc5lW3sdFSq449Go6DRarDUWVCtwb39fdVaaAmq7vtYB8O3cnV1pUGDBjRv3pzc3Fw2bdrEgQMH8t3Minvz5ptv8s8//zB16lR69+5NRkbGQz/m/fyW3rrvnV6HDh166Ocgnjw+Pj44OTmZXhMnTixwu6SkJACcnAru3ZO3PDExsdB1WLRoEYmJibRr1w4fn/tLblkcpIVYCMH58+eZOnUqw4cPv+u2tWrVwsXFhf3795OcnJyv++ymTZtQFAVVVdm0aRP9+vUzW799+3ZycnJo1aoVlpaWFIVFixYxYMAA3nrrLSZNmiSZRgtJr9dz/vx5zpw5g6IolC9fHh8fn0eua1NOdi4zPlvGga1hVKjuy/9N7IGdo80d97F3sjXLzPzsC/XZs/EEYAzkmjxXDYCNKw6y9e/DlAv2pOuAZgzr9QNR4dEA+AWXMStTNag816M+7V+88VCo19utWPDDRgB8A0tTu7H5k/bd/xwm4XrwCnDtSgo2Dubf/6SEdFxL3fj7dHOXaUWBnLxxz9cD0MxM8wdK2Vm5KAaVvGfdpdztuJCUCZrrOxhU2vWsT++3QkhLycTd04kutUaZDhB7JYl1S/fTY1CLgi5lgbRaDd1fbcGSX7YA4OhqR+932txxH0VRGDf7df76ZTMpiek827MBXv7u93zMJ5WjoyN16tQhODiYM2fOsHXrVkqVKkVQUJAkiiqk5s2bs2fPHjp16kSTJk1YuXIlZcuWvfuOD6gwv6W3ul12XgBPzzs/ZBKPrpKcdunChQtm92j3+2BbvV7e/fS2+OWXXwB4/fXX7+vYxUUCYiGeci4uLiiKwsSJExk0aBDu7ne+MdVoNLRo0YJly5axdetWnn/+ebP1mzZtonXr1uzbt6/AgHjTJuMYxvsZh3Irg8HAqFGj+Pbbb/npp594+eWXH7jMp0lOTg4RERGcO3cOnU5HpUqV8PLyemQfKCz5cSN/z95h7NIdFYelzoL3v+lTqDKeaVWZHm+EsPBn45ipX79cQ3JSBnOnGqcN2rc1jJ3rj3HxejAMcOF0DBqNYmwNBeo0q5jvGtVqVJ4FP25GUeD8uVgW/LjJrPuxo+tNGaIVyE7PwdndFjQKCuDibo+Xn3mrZ7/3n+PbkUtABRcPRyrUC2DXxhOmMgIqeHL6xGXT9vb2OlLjUlGuVy36/DW0Oi36XGOSLztnGzzLuqC10GJrb41ebyA7W2/Wqhx1OrZQ1xNg4PCONGxTlYSrKdRsVP6uDykA7Bxt6Pth+0If62lgZ2dHjRo1qFixImfPnmX37t04OTlRoUIFPDw8pAvwPfLz82P37t307t2bOnXqsGLFioc67V5hf0tvNWbMmIdTMfHUcnR0vKecH3ktwHktxbfK661yuxbk2zlx4gS7du3C29ub9u0f7X/vH827HiFEsbG1teXTTz8lOTmZsWPH3tM+ecFsXnCbJzIykoiICFq1akWzZs3yrb95nwcNiFNSUujSpQuzZ89m48aNEgwXQk5ODmFhYaxbt46YmBhq1qxJixYt8Pb2fmSDYYDIU1dMraMGg8q5E5fuab/MjGx+Gbecj3p+z6IfN7Ltn8OmddmZuSyftd1s+4vn4szeW1hqmbr8Xbq/1oLXPunEqJ/75zvG+qUHQMnrzqywbPYOs/WN2tegdU9ji7KNnY4ajYKp0SgARaOgKgoaCy23xjnP9WzAL2uHMn7mIH5e+yGDP+1M5Zq+aDQKVWr5Me6Hl6nbrCIWdjpcvZzx9HQBburBrCjGqZg0GtBoSEvN4sqFaxzZe47jByMxGAxotOaft3eAO18Mmc+I/jPYveE4509H07/peLpWGc6kd+eZWgpuVbmOP42fq3ZPwbC4N9bW1lSpUoU2bdrg4eHBgQMH2Lp1KzExMbf9HIQ5W1tbli5dyquvvkpISAhz5859qMcq7G+pEI+CihUrAhAeHl7g+tOnTwNQoUKFQpX7OCTTyqOo8q+qEE8tRVEoW7YsERERVKpUifPnz3Ps2DGzf/T8/f2JiooiJycHCwtjp5KTJ09SuXJlqlWrxpEjR0zb/vbbbwwaNIg9e/awa9cuhgwZwqlTp0zlJSQk4O7ujouLC7GxsfcdfEVERNCxY0fs7OxYuXKldCe7R3q9nsjISMLDw7G3t6dSpUqFbsUoSRuX7OXr9+ah0Wow6A289H47+rzf7q77fffxItb++Z+phdfV241rsTe6L1vpLMjOMh/XV6FSGcKPnEdRFAZ//gLPvVjwmPk8496Zy671x81aW/8+Oh6thflNQFZGNhZWFkRFRbJq0TbWzrlxA9KgRUXGTDfvUXHmxGUO7zlLQEVPajcy74a9Zd0xPv/kL+MbRcHLy4no8Bgs7C159ZPa/D7hIJnZN43xVaFa1bLGRF1A8/bVCaxclt+vTyPlH1Sa7PRsoi/EY1BVFBSsdRoyUm6Miez1Thv63uGaq6rK33N3cmjXacpX8eaFN0LMsm0DnNgfwfLftqKzsaTPe889UeOBH6bc3FwiIyM5ffo0Dg4OVK5cWbpSF8KiRYsYNGgQr7/+Ol988UWR3qDf729p3r6APOR4wiQnJ+Pk5MT8Q1WxdSjeYDA9RU/vmsdISkq6pxbis2fPUr58efz9/Tl79qzZvVlKSgplypTBYDBw9erVe074l5mZiZeXF0lJSURGRj7S44dBukwLIQBLS0u++OILXnjhBYYPH87SpUvvuH1e19pjx45x9epVPDw8AGPrb944uLyxKps2bTLdFGzZsgWDwUDLli3vOxjeunUrXbt2pX379vz+++9YWVndVzlPE1VVuXjxImFhYWi1WmrVqkXp0qUfu66XrbrXR2up5fCOcAKretP+5cYAxF5K4JfxK4iPSaJDn0a0/l89s/2O748wBcMajYKDg84sIL41GLa2seKrRW9zJSoeBxdbXD3ufkNRs2F5dm0wn//02tUUPMo4my2zsrYkPTUTnU6Hrb35GOIzJ66YvT+y7xwjBvyGqqqoKrz9aScq1PBl55aTeHq5cPhAhHF88PWP8XJ0EtZlnMhVjV2ky9f259jeiBsFKnD0QKSpa9jWNUfo+VoLrKwtycrMpk2n2vRuPN60uYpKRmqWWZ2O/nf2jtdh9R+7mD56KSiwe91RMtKzeGXYjelvYi8lMLzXD+hzjF21D+86ze/bP80XNIv8LCwsKF++PH5+fpw5c4Zdu3bh4eFB5cqVcXBwKOnqPfJ69OhBhQoV6Nq1K0ePHmXhwoWF7gJ6N4X9Lb3Z7bpMW1tb39eYZCHuVWBgIG3btmXdunX88MMPvPPOO6Z1o0ePJi0tjddff90UDOfk5HD27FksLS0JDAwssMzFixeTkJBAx44dH/lgGCQgFkJc1717dxo2bMiyZcvYsWMHTZo0ueP2LVu25I8//mDz5s306NEDMM5l17RpU7RaLdWrV8fNzY1NmzbxxhtvAA/eXXrBggUMHDiQ0aNHM2zYsPsq42miqioxMTGcPHmSnJwcKlWqhLe392MXCN+sRec6tOhcx2zZmEG/EhkejWqAsNAoSnu7Uq3BjR/pGg3Lc/60sZupwaBStV45os5e7xatgJWVBX2HtGXJjG3YO9nwwaQeWOksObY/gr9+24aDkw3vjOtGxKlofvliNQCvDe9Am251TccoX9krX11jLyeyb3s4Z09cpmbDQIIqefFJ7x+4HBlHzRblqNrWPMlP1XoBfDdhJbs3h+EXWApHB2tjN2xjfMvSOTu5dG2dcX5lVcXJ1Q5jPuvrLUyKQkZWLpZWxpD3ZHg06vUstcYNVLOE0Crw1ci/OHfKOF76+OEL+JYvxYVzV1FVFY2iYOtoTWrSjSy9dVsE3/HzOfrfWVNSPRUI3REON/1VPX30AjmmBxAqVy8nEh+dSGkfaSW+V5aWllSqVImAgADCw8PZsmUL3t7eBAcHY2MjXdbvpGbNmuzbt4/OnTub5lb18sr/d/dBFPa3NM/tulk7OTlJQPwY06sKerV4f3Pv53jTp0+nUaNGDB48mI0bN1KpUiX27NnD5s2bqVChAhMmTDBte+nSJSpVqoSfnx+RkZEFlpeXTOu11167r3Mobo/uYDEhRLGbPHkyAB988MFdu2/dOo745MmTXLlyhZYtWwLGbmDNmzdn8+bNprLytg0JCSl03aZOncqrr77KrFmzJBi+B9euXWPnzp2Ehobi6+tLq1at8PHxeayD4YLo9QYiwq6YgkYUDUt/32q2zcCPO9Pz7dbUD6nMG6O78uboLvhVKG1sXdVoyM7Rk3A1lS/mvEbNxkHsXH+cvVvC+H70Mq6cj+fM8UuMHPArUz7+i9SkDFKTMpjy8V/EXk40HaNcsBfObnbGLtOKgqLRsGXNYb4bs5y1f+3n8yELmPjuPKIvxAMQcTIaWwdLHJ1t0VhoqFrXn/LVyvL3kv3Ex6cSuj+C8LArpvmbNFqFtFw9BkDVGF9JiemYmodV8o1BRr1loUZD2261TG9bdqppCoYB9mwJo1Jtf8A4HdL/BjVn2soh+AaVxsHZlo4vN6ZFlzpM/mgh00YuIelaKqnJGfz16xYW/bSJxPhUgqp5o3KjNT64lp9ZlcpV8sLCUouiKGg0Cs7uDhzefZrJQ+axcel+6TZaCNbW1lSvXp2QkBD0ej0bN27k+PHjZGdn333np5i7uzubN28mKCiIZ555xjQHa1EqzG9pHmNPkPyv+5nqRojCCgwMZP/+/fTv3589e/YwefJkzp49y+DBg9m9ezdubvf+0PLkyZPs2LHjsUimlUdaiIUQJg0bNqR79+4sWbKERYsW0bNnz9tumxcQb9y40ez/Nwe7LVq0YOnSpRw5coTSpUtz4sQJvL29C5WYQVVVRowYwc8//8yKFSuKJDv1kyw5OZmTJ09y9epVypcvT4MGDYpseqtHkVarwcnNgaRrqeQFhxfOmGdKttJZ0O+WjMbxN02BhKKwasF/rFmyn6zMHFBVNq0MNa02GFSSEtKNyamuU1WVa1eTKeXlDIDO2hI7R1sSr6XnFcn2f48Z99cbUDQKsdFJGPTGm+O0xCw0GoUaTQLZ9u8Jzp+PR7vztGmKJBW4lpBKzYaBHNp9Fp9ypciy1HAtNctYuKqiGlRc3e1IiE8DBZo1D2bL5pOoNte7H1/vlqzeNIb4pXee5aW326LRKmxdd4zN/xy9ETSrKmsX70MBVD0snbmdnq+35Od1xgdQKYnp9Gk8jpxs4/RPW/4+jEcpBy6cvQoKrFnwH+9OfIEyvh4kJaRSu0kFBo4wz0Jfxs+dsTNfY/FPG7G2tcLFw4EpHywAYMOSfVy9lMCLd5m2SZizs7Ojbt26JCYmcvLkSdavX09QUBDlypUzG6sqbrCysuKvv/7ijTfeoGHDhqxdu5b69esXWfmF+S0V4lHh4+PDzJkz77qdv7//HR/0VKpU6bF7uCktxEIIM1988QWWlpaMGDHiji0Nvr6+BAYGcubMGS5cuMCmTZtwcXGhRo0apm3yWos3bdp0X92lc3Jy6N+/P3PnzmXTpk0SDN9BZmYmoaGhbN26FRsbG1q3bk1wcPATHQznadWtjimoUzQKfkF3T7Km1WrMWk+zs3PJSMvCoDdgMKhci0vFSmeBRqtB0SgE1/TF3dPJGHNrFNAoZGSY//2wtrEyBqCAQQVHJxs0mhstuFXqBhiPqdGQm6OSm2PgWKhxjG9yYgbHDp2/0aqrKGRm5jJhxiv8fXQ8P614FxcPR9Tr5asAWoWhY7tSp3lF2narQ7M2VdDbW2LQGQNirYMOtApoNcY6axXcSzlQyssZ99JObF93zLwF+ZYmZn2ugdSkdNP7jcsPmIJhgIy0LM6fiTW2ZBlUYi5cY8zA34i+eI2MtGz2bQkjK8N8rmSA2s0qMnH+W4z+dRDb/z5ktm713O35thf3xtnZmYYNG1K/fn2uXLnChg0biIqKeuxuTIuLRqPhl19+4f/+7/8ICQlh7dq1RVr+vf6WiiebHk2JvEThyBUTQpgJDAzkrbfeIiIigu++++6O2+YFqBs2bGDr1q00b97cLFlWlSpV8PDwuK+AOD09nc6dO7Nr1y527NhBrVq17r7TU8hgMHD27Fk2btxITk4OISEhVK9eHWtr65Ku2m2dCo1i1qS/WbfwPwwGw913uIuX33uWRm2rYW1rRaVafrw1tisAR/ee49OBvzHu7dlE3TSvMEC7nubzkdra6UzdyRWNgr2jNV/Nf5OOfRrSdUBTRv7QF4+yzjcCUo3Cmj/3mJXR9n918no4owIOLvY0blsVT28X2vesT/XafmZBZ2piFnaOxgcWqqqiN6ioGo3xGNdfB/47wyeD5zHuo4UEVy5r7C5toaBaKhg0GkZ8tJB9e8/x79ojfDn5H1MLM0C2xjiu+GbGuYdzUVUVnbWlKfjOe3mUuZFArFaj8pQq62J673G9NdzMTcdTFGOCMtVgDJCzMnK4eO7O8xpb3pJMy8b+0f3ePi48PDxo1qwZ1atX59SpU2zfvl263d7BZ599xqRJk+jWrRvz5s0rsnIL81sqhChZ0pdGCJHPqFGjmD17NhMmTLhjNuiQkBB++eUXpkyZwrVr10wtwnkURaFFixasXbvWND3IvYwfjo+Pp0OHDuTk5LB79+7Hamqg4hQfH8+RI0fQ6/XUq1ePUqVKlXSV7iosNJIPuk4FFAx6AxFhl3l9dLcHKtPaVsenP5pPV3T1ciKf9J9Bbo4eRYHj+yKYve0TYxAI9HozhPCjFzm48zTWNlZ8PLU3acmZ/DF9EwaDgRcGNsM/uAwnx13g9LFLLJ+7izJ+btcDQGMQePCWjMtpKZnGx8zX+yifPHKeNUduZG3+e6753MQZydk4udpwnmQAqlT34eiRizc2UBQ+GfyHMRmWomCV1+KrXK+Dgil7tqpCekY2WN7y9/WmFmeA/p2nEheTgkaj8NJrzTm8L9K4DWDnYM305e+x7Z8jWFlb0rxDDeKikzhz/BL+FTxp1KYqNZ4J5PD1824QUonj+yJITTYm3WrX6xm2rz5MWkoGqGBjr6OsvzuxlxJwLeVYYCbp18d044v/mw0qaLQaBn/x4u0+ZlEIiqLg5eVFqVKlOH36NDt27MDHx4dKlSpJZv4CvP3225QqVYoBAwYQHR3Nhx9+WCTl3utvqXhyGVQNBrV4P3uD9AopNAmIhRD5uLq68vHHH/PRRx/dcbuQkBAUReHo0aMA+QLivGWLFy8mJSWF4OBgypYtm2+bm124cIE2bdpQtmxZVq5cec9z3j1NMjMzOXHiBJcvX6ZChQoEBgY+8pPe59n5zxHygmGA9Yv2PnBAfLP01CziYpK4GBFLTrYxm7GqQtK1NK5eTsC7nPGhgZWVBRN+fYX5P25i7dIDzJu+ideGtUdvULkYGc83ny5j/YpQTh+7BBgDz4uRcaDcuLFJS8kiMz0ba1tjgFHWz82UBAvFeFMSeyWRUtenXmrZpS6r5+wk8tQVUMDL1wPXUqU5dijOGJNqjK3CaK+3uhpU43VSFFAhNSMbdBZmY35V1dharVHAw8WOmMRUcu2M3wVnSwtyHK1JTTFOneThbk/c9URgBoPK3F+28vGXPVg8awcubvYMHtkJO0drGj9bDUdnG04fu8SwPj+RlZmD1kLDmJ8H8P6kHhzfH0m5yl6sW7yXfVvCjKerwIkDkXy18C0WTt+EqqqEdKnN4E5TuHrZGBBPWvA23oHmD22ad6pN+WrenA+PoUINX9w8i3YanKedhYUFlSpVwsfHh2PHjrFx40YqV66Mr6/vE5dg70G98MILeHh40K1bN6Kjo/nyyy8fOIi9199SuP20SwBdunShZs2aD1QXIcTtSUAshCjQ4MGDmT59+m1T6oOxa161atU4cuQI7u7uVK1aNd82NwfJd2sdPn78OG3btqVx48bMnz9fEsLcwmAwEBERQVhYGKVKlaJVq1aP3TQrnj6uN4I8jK2qu/49QqNnq99XeckJaVyJisM3yJOIU9GMGPAr2Zk5ODjbYGGpRa83oABObvZm3X8BDuw8zZzvjcng4qKTGPPWXGPyrOuO7o8EuDFVUd4MR5ob72/u8q0qN29stHPDcbpeny/ZzsGab//+gLPHLuDs7sCl2POsWXYgr4GWI6HnweqmBxsWGmN8ndct2eJ6wGwalqxgaW9Fdk4uesDSxZpcfRYaC+MGKdYKi/94l9B9Ebi62TP+oz/Nu1AbVJq1rUqztsa/t9GXEnil3TdEX0zA09uFgHIepocKBr2B3yat5uK5q+Tm6rFzsKZBq8qo188/7xz8gjz5aEpvAL5+/w/iYxIBSIxLYeaXf/Ppz69wq7IBpSgb8Oj3bnic2dvb06BBA6Kjozl27BhRUVFUr14dZ2fnkq7aI6VFixZs2rSJDh06EB0dzcyZMx84D8O9/JbC7addAmMSIwmIH08lMaZXj7QQF5bcbQrxFLtTshWdTkdERMRdyzh8+PAd1wcHB99TUpddu3bRoUMHXnrpJb799lvpXnaLvO7RBoPhsekeXZDnejXkj2//JSH2epZnBTYu2XdfAfGxPWcZ+bKxBdPZ3R6diwPZmcYkTimJGQRU9MTLxwVLnSV93mmDlc54YxsXnUR8bDKRp2NMZZkySd/EwkJDbvaNgNfG1pKMm5JKocC65QfZtuYI58KuUKn29SmGrmeBBsjMyOHtF3/kQsRVnmkezIfjulKpTgAAV65extbe0njrkhen3tpqp7nR3Vk1qKha5UYmaoNKVq7++nuVqCuJqFYa1OvrM1UVFGhyfe5gNw9H4uLSbmSp1ij8NOVfjoaep1otXxIuJZimkoq9nIiCMTkYGIPvq1cSydUbzz8jPYvj+yK4+a92SJfaZlVPjEs1ZdU2GFQy0rK4k7SUTKaNWEhifCovvt2aWk0q3nF7UTiKolCmTBnpRn0XNWvWZOfOnTz77LM8//zz/PXXX3ftqfQgv6WS9EyIkicBsRCixK1atYoXX3yRESNGMHLkyJKuziMlMzOT48ePc+XKFSpWrEhgYOBj/bBAa6GlZuMKbF0ZikFvQKMouF3vUlxYs778m+zrLZjJCelos81vLONikpm+8j2zZVtWhfLV0D8x6FVKebtgYak1ZpZWVSpUKYuzqx17t4WDRqHzy40oF+TJwl824+Rix/+N6cJbL3yPPvdGkLxh+UHOnLwCqkro7rNorYyt0lxvyV2zdD/xsSkYDCrb1x8jMNiT6rX9CT92kTLlbHErZYd6fWytolGwdbAmJdOYkVZRVchL0qwAaMySWKka5aZWaQVVBb0V6HXG9QZFxcryxs98ds4tCcwUhaXXE4OdPnWFMh4OpptzVYW062OD8wJyR1d70tOyrm+jcC022VSURquQmpRhem8wGIg4ddnscM061uROXg35nITr02Ed2X2Gb/56l0p1/O+4jyg8rVZLcHAwPj4+HD16VLpRF8Df359du3bx3HPP0bJlS9asWSO5LIR4gj2+d1VCiCfCggULePHFF5k6daoEwzdRVZWoqCg2btyIwWCgVatWBAUFPdbBcJ5Bn3SmQg0ftBYaqjYI5OX3n7uvclTT/ENGbh4OZuvLV8k/Xv2Xz/82tVpevZxI/SZBqIqxJTX8xCUCgj1RLIzB7F9zdnLqxCV+Wf0+X817Hb/ypXn1g3bXp13SYKGz5GJUvLHg64GE3pAXDF8f95ucacwerRgD2EN7zvF+7x/5acIqZnyxFo1WNe2vqpBzUxIsVaNB1WJMlGWhQdEau2XrLRT0lgoGDRgswGCpGF86BVVrXA6gt1L47fet9Or9I8OGL8LR1daYIVu5pXv39T/nKorp+6XRKCQnpJldO3tHa+PUUoCrhwMBwWXQaI3bG/QqfhVuTHeVkpjOtZhks/0tLG//DD41Kd0UDOdZNUemYHqY7OzsaNCgATVr1iQ8PJzt27eTkpJy9x2fEm5ubmzduhVnZ2eaNGlCdHT03XcS4hYGQK8qxfp68Lkbnj7SQiyEKDHz5s3jtddeY9asWfTo0aOkq/PIyMjI4NChQyQnJ1O3bl1Kly5d0lUqUq6lHJmyfMgDl9P3w/aM7PsTuTl6tJZamrWrSuTZOI7sPUe54DJ8OCn/d+rW7okx0YkoimJavnL+HrNuwKsX7aVO4/LMnLoOjaJQt2lF1OuJtXL1KrkYMKZIvjHf8M3dnxWNcv3Rs3G6pnPhV0xBfHpKNrZ2FqgWN1rlMrNzTcGqgmLWIgwKqrUWQ14B1wN3U5dqrYrBEmMQjTFY/nPxXhQFoq8m4+3pdGOMsqpiodWQm6M31VWjVfhx2TuEH79E+cpleLPDVLNrZedow7wdn3D1SiJlfN2Ii07iqw//JCE2mTbd69Gy042p0aLCr+S79gGVvPIty2PrYH1zT3MAfO9hPuk7OXPsAj98vJjUpHReeKs1bXs+80DlPYnyulF7eHgQFhbG1q1bCQ4OJjAwUFqLAVtbW9asWUPXrl1p1qwZW7Zswcvr9t9jIcTj6fFvahBCPJZmzZrF66+/zty5cyUYvi6vVXjTpk3odDpCQkKeuGC4KNVoFESf954DjQa93sCiHzdRpZYPy0I/Y/KCN3G9pcUY4NURHU0BpK2djrJ+N7pBKhoFS515tm6DQWXcu/OJOhNDxOlolszeYdz/endlFQVVq7kx9lcxtq7mlWdlbYGi1ZiC5PTMHDTXs0hnpOVipdOitdTcmH9Yq2Cw1GCw0KC3UEB742faoIFcjGN/Ve314yuKqcVXr1UwaI0tw3A9MNZcD6oVlYsxSaBgStSlh5tas1Wc3eyxc7Shah1/XFztr5/PjTmKG7aqgq29NX5BnuRk6/nszdmEHTpPzOVEHF3szAKohKup+a69+x0ySGs0Gt6Z0AOthfF8qzUIpMdb9zZneUH0uXo+feknwg9FcfFsLFM+mE/44fP3Xd6TzsLCgqpVq9KwYUMiIyPZsWMHqan5P8OnkYWFBcuWLaNKlSo0bdqUixcv3n0nIa4zoCmRlygcaSEWQhS7GTNm8N577zF//nw6d+5c0tV5JGRkZHD48GESExOpU6cOnp4P1jr2tDhxMBK4MR/v/q1h9Hjj9oFUSOfaLJu1nTPHL5OWmsW2vw/jV6kMUeeuoqJQ2suVlKTLphbjOo3Ls397uGl/Q64ebu76a9aAa4w23Uo7EhubjKoolPZ25VrCRdP8wWV83VDSc4iKuIqdkwN6vQE7R0tSU/XY2mmxcbLC1s4SK50GK0sNbk425KRnYWmlwdnNlkw1F0sL4zorSw2WFgqKotyYalij4GhtrN+brf0g5/rUTKqKwaCSm20gO9tATrYeVQ8Z6TnG9zkGSpeyZ8KImeRkGahQ1ZsKNT25eDae9NQcNIpCjWcCTae6ZVUoUTclJftt0mo69mloCoprN62AaylHEq4mo6pQP6QyTnlB9m20692Qdr0b3nGbe5WWkklinHn33wuno6lQw/eBy16yZAlbt27l0KFDHD58mJSUFPr06cO8efPuq7yLFy8yatQo1q5dS3x8PGXKlKFLly6MHj0aFxeXuxdQhNzc3GjRogUnT55ky5YteHt7U69ePd58802mTZtWrHV5lFhYWLBkyRJ69uxJ06ZN2bp1K76+D/5dEkI8GiQgFkIUqx9//JGhQ4eycOFCOnbsWNLVKXGqqnLhwgWOHj1KmTJlCAkJkYyvhRBYuaxxLtzrgVhqcib6XD2JCWmcCD1PWT83ylUsY9o+OzuXM8evJ3tSFBRVJS42BY1Wg8GgcibsCl1eakh8bDJXLibg5euOs+slkpOMGaidXOy4lpxpVgcrGytys3JQAW8/Vy5eSjLV5+TRi9i5WOPgZIm9oxVOzhY42NsQWN8JW3sLQKFXn0CsrLQYDCpp6bmkZejJytaTk2NAVRWatK6BPlfFoCgs+fcw2bkq2bkGsnIMZKkqBsUY9OoVMFhCaUcdz1fzYPnhWCyv5BobiAGNBqxVsLLSYGmpQWelxUKrYGWlwc7BkuzsDPwrOmNppcHaNpeQ3oFAAAaDioXWksjLYURfi0Sn05FhSKRSg9Kkp+SQHJ9BVpre7Jo4ONvx/eoP2fZ3KLb21rTobJ6B+mFzcLYlqIYvZ49eAEXB0lJL1WfKF0nZ48eP5/Dhw9jb2+Pt7U1YWNh9l3X27FkaNWpEbGwsnTt3Jjg4mL179/Ltt9+ydu1adu7ciZubW5HU+15ZWFhQrVo1vLy82LJlC5999hn16tUr1jo8irRaLQsXLqR3796moNjf37+kqyWEKAISEAshis3333/P8OHDWbRoEe3bty/p6pQ4aRV+cL3eacuGZQeIu57AKeJUNHOnrWflor2kp2WBAu+P7Ya3vzsr5uxEZ2NlNi0SimLMnHy9PEWjEHU2loO7zwJwJuwKzzSrSPSlBKLOXcVSZ4m1tZ7MjOvpnxVo170uq//ah5OrDp2TQu2A0ji76nBys8bZTYe1jQVpqTmkJGWTnppLWnI2CfE5XIrMwc7ZiuPHEwkLSyIjQ0+OTmMcU6wYp1KyUBR69WzP4WMXKVPGkb1hScau0AoYDKDquDENk6qSba9wxZDN83hwKTYDXXSOcb0BQEWboTdGxwbjqGYl78RVFTJz0d6Uifrz6X2p2SCAzMxMsrKyyMzMNL3iYxMoV90NW0crHN2ssbDUsGHDBuzs7LC3tze92vSsi42NTbGPR1UUhQl/vMXSXzaRlpTBc30aUdrbtUjKnjJlCt7e3pQvX56tW7eazbVeWG+99RaxsbFMmzaNd955x7T8/fffZ8qUKXzyySf89NNPRVHtQnNzc2PWrFn4+/uTmZnJ2bNnKVeu3FM9tlir1bJgwQL69OlDkyZN2L59OwEBASVdLfEI06sa9Goxz0NczMd7EkhALIQoFj/++CPDhw9nzJgxVKz4dM8vmtcqfOzYMUqXLi2twg/ASmdhlnhKo9Wwb2c4GRnGqYtQ4ddv1pKemG6aLknRKqi5N2VvytWDxY1kU1Y6SzQaBYNBRTWoHDkQQVqKcQ7d+Nhk/Cu441nOEQudim85ZywsM3ltRE2yMvUkxmeSdC2LhPgsIs8mkxiXSVq6gcwsPSpgaaEhJyPX1ILsH+xMrkElNccAFgqKhQbTvYyqkKvCi6//ChhjWtX+xnpVcz2j9PWq51ooqFY35i3OdVbQReeNAVaNBWg1xuBXC6pevT5j0/XrZ6U1TTxsZ6ejej1/tFotdnZ26Kys2bDkCBGnrlC3aUXWzTtFeuqNlvKy5VyZOPcV0tLSSE1NJTY2lnPnzpGeno6iKNjZ2WFtbYOrqwsuLi5cu5LGiX3nCaxSlpqNgh7gG3B7Ds629Puo6HuhPEgAfLOzZ8+ybt06AgICePvtt83WjR07ll9++YU5c+bw9ddfY29/5+7mAJs3byYkJIQPPviAXr168dlnn7F9+3b0ej2tW7dm+vTplC5dmhMnTjB+/Hg2bNhAVlYWTZs2Zfr06fm6ACclJbFu3Tp69+7NM888Q2hoKJcvX6ZWrVqEhobyzTffcOTIES5duoS9vT1+fn60bduWiRMnFsn1eVTp9Xpef/11MjIyaN68Odu3b8fPz6+kqyWEeAASEAshHroZM2YwdOhQFi1aRMOGDdm9ezcAgYGBd9nzyZOdnU1oaCgJCQnUqlWLMmXK3H2nJ8yxPWf56t25JCek0WVgC/oObf9ArU4tn6/N4l82o2iM3Z7tnWxvZCtWFJKTMiDXYBrua5xG98bxLBR4pm1Vtq8/jkGFY6FRGAwqigZc3K0p7W2Pq2cpPLzscPe0ASDxWjZXLqaxd8clsjNULp9PJiPDOCeyjY0lGWnXW2ZVeKZ5BXbtOQsqZF2vk3I983RaWi62DpbGxFxgzCCt5mWP5kbWagU0KuRoQb2elMvA9cRZeVmlb32moijkYhy+jGpsNVWNfzBeC60G9Ddaym+ewyotLYtrcSk4u9ijs7Zk5uR/WDZzO4qisGXVIUp7u5gFxL6BxkzFHh4eZlUwGAxcjYlnyvD5oNXjGeBEQJVSoDWQaZnJlk1nuXQ5irpNq+Hk5IS1tfU9fuqPv82bNwPQtm3bfNOpOTg40LhxY9atW8eePXto1eruCcYOHjwIQHh4OM2aNaNdu3YMHDiQf/75h6VLl5Kdnc2rr75Knz59CAkJoV+/fmzevJnVq1fTt29ftmzZYlbe6tWryc7Oplu3bri7u9OyZUtOnDjBunXr+OWXXzhx4gTPPfcc7u7uxMTEsG/fPv79998nOiDOyclh9+7d6HQ6Fi9ezEsvvWQKin18fEq6euIRZEDBQPH2qiju4z0JJCAWQjxUM2fO5L333mPBggWmbtJPa1AcHx/P/v37cXZ2fmpbhQ0GA5+9+iupiRmoqsqf362jSr1y1G1Z6b7L7P/hc1w4F8t/m06i0Wo4vOs0WFmaBb2Yx3u4lHIwznurKGgtLdi58QTWthZ4+dlTxt+eUl52uHnagApx0enERadz8sBVYi+mUS7Yl337I/JX5PrxMjJzb7Raa2DX7jM3sj2rKlhpTC2xqZl6HFx1pqmSMGD8Zb4pEEa9UXXTdnm9vi2MWaYBFAMYFNBbXt9WVVG0CobrybY0ehXVwlhP1aCi5KimfVFB0WMcaGzMwsXwV37nyvlrBAaXITMlw5ScS6NR8AksRXJiOhmpWfiWL8V74/9X4Gej0Wj4/uNlHN4WBcDhzRfR2YQDKq5ednj4OGBjE421i0JqairW1tY4Ozvj4uKCu7s7zs7OT8Tc2wU5deoUAEFBBbeQBwUFsW7dOsLDwwsVEO/fv589e/ZQtWpVAD799FN8fX1Zu3YtBw4cYMOGDTRo0ACArKwsAgMD2bZtG5mZmWYPJJYtW4adnR1t2rQBjGOLS5cuTd++fRk6dCjly5endu3aWFpamvaJi4u7jyvxeMgLhi0tLalfvz5arZb58+fTs2dPU1Bctmz+uc+FEI8+CYiFEA/N3Llzefvtt1mwYAGdOnUyLXdxcXmqgmJVVQkPD+f06dNUrlyZgICAp3YcXk5WLikJ6WbLTh+9kC8gVlWVf//8j/2bTxBQyYseb7fB0srCbP2Po5eydv5urO2ssHKwA4zZpjVaDRpLLbm5N8bDanQWqJm5oIBOZ0lg5bIcO3COMgEOeJVzxCvQCVcPa67FZnA5KpVje2O5ejmdpPhMVBUq1/TB1bUUmWmJuJdyNJWrXJ96yWwCXbg+l3BeUHw9aNXkrcA0djc1PQdPb9vrAa8xW7SDjQ7Psk54l3Fl23/hZBtUUzCtB7DENA5Yr+HGL7kKehsVC1P8qBqbh68H1waMrcRcD5AtLLWoN81DjF69MZZaUYi+mABAxOloPL2cTd3IDarK4f/OkZNt7Pqdk63H3snmtp/5xbNXzd7nZOtBVblyNomYyBRsLZ15/YNW5OTkkJSURFJSEteuXePs2bPo9XpcXV1xd3d/4gLkpKQkAJycCp6OKm95YmLiPZWXFxDPnj3bFAwDODo6EhAQwKFDh5g8ebIpGAb+n73zjo+izP/4+5nZ3fRCCAESAqETeu+9ieUUFMUOZ/mp54lYTj17P7uc9ayA/VQE9Wx0aSH0XkJLQockpCdbZp7fHzOzhYRqICHu+/VaSHaemefZ2WQzn/l+v58vISEhtGzZkn379lFSUuIVxOXl5fz6669ceOGFASJ569atrFu3jrS0NJo1a8aCBQvo3r271w07Pt7Xxqw2UZkYBp/R1tixY72i+M+Y9RPk+ARriM8PgoI4SJAgZ4Uvv/zS22e4stZKfxZRXF5ezurVqyktLaV///7ExsZW95KqlZAwB30v7MjSX9Z7n/vm3TkMv7In9RrGep+bO30F/37gKxCw9NcNFB4t4Y6nx3q3L/xxLT9OXQRgCLMSN4pdRdck6Dp14iI5crjQO17X4cpb+oPqpnXXBuzeuYduo7qSd6iM/bsLWTV3L4cPOSnMd9K+S2MOZpZSVOQEjPrbrN05FK/fB0DmjkM0a9OAvYfyQQiatajPlvW+3qRWcNf7vQDd24vYSFmWipH6XFLiISLcZqRBC4GUkhKbxqYDOWw6kIMtRKA7McS0BtiFNxVbV6Qhjq3X6DDnspk1xBEKUui+bGjhtzABbl1HNUW7wDAUsxSxBKQZxZY6NGgUR2RECHmHCmnYpC4bV2Z65z2wJ49f/rucslIXHXo0pXXHwNTRiOgwzBxxkJLWnZKxO+xsSN9Jk5b1uf3x0QDY7Xbi4+PJ2niEbatzaNM1hVZdk8jJySEnJ6fWC+RjsVp/ncrNs5KSEjIyMmjWrJk3outPVlYWcXFxXHnllZVui4qKCnCznjVrFsXFxYwZMyZgbLt27YiJieHtt99mz5493HDDDSxevJi2bdvWWsOt44lhC1VV+fbbbxkzZgyDBw9m4cKFwf7xQYKcZwQFcZAgQaqcn376iZtvvpkpU6ZwxRWVp1JC7RfFhw8fZvXq1cTHx9OjR4+A1MI/M5NeujpAEJcVO1n9+xYuuNrXg3b90u1GKyRNRyJZvXBbwDE2Lt8ReFCXmxadGrMvO5dmbROp37gus39YS90GYaS0iaVpm1jiEz0U53tY9NsGSvI0Nq3YT1mpB6SkUdO6jBjdnemfLmXj+j2Ehzv8hK2gpNgZMF3W7iO4HSqqKti8ZT+KXUGX0tuLWGrSELGY2dGq8IsYS8P0WQhKynUiwm1eoepRBR5d90Zq3VIaf6mFdQxzg+GGhaaANH+sdAF6iPCmVes2ie4zrEbohhEXmN+rvnRrqUsU6XvFdocNrczlFdKZWw+Qf6QIkEj/3HOTt57+3nx5gmfen0C3/q0AKC4sY+fm/b6BQnDZXwcx6JLO6LpeQczOnb6CVyZ95o1G/+ONGxg6pjvNmjVDSklRUVEFgZyQkECDBg2oX78+ISEhFdZWU7EiwFak+FgKCwsDxp2IdevWoes6w4cPr7AtMzOTo0ePcvnll2OzBV72FRQUkJmZyYABAwKenzFjBg6Hg4svvjjg+fj4eBYvXsxTTz3Fzz//zA8//EC7du146KGH2LlzJ4MHD65VpSAnE8MWqqry3XffcemllzJixAgWLVp0Su9bkCBBaga187ZqkCBBqo1ly5Yxbtw4XnvtNcaNG3fS8ZYo3rZtGzt37jwHKzz76LrOli1bWL58OampqXTr1i0ohv2IiA4jKjY8IJqUcExLnJYdG6NrRsqzoghSuwW2NukzskPA90IRTHz2CtRQO0cL8in35DL+H50YfXMb4uqHk3tAZ82cfD5/eQ2/z9jN6oV7qNcgzoiKKgo5R0qY/ulS7/FKS11e8akogigrJdiMsuqqQFEEmmlKZQ+xIYVACiOCK1Xhqxu2+YlhMMapAmkTlDg1wkNVpE2g2wCb6R6tCnSbOU7FEMMKhtiW4DHLkHUH6Krx0EIwxlhT2QS6as6nGP9jsx5mqrcwH6qCsMSpEDRuWo83vrqDvz92KXc/cRlHDxcipdHvOO9wESFhdu88IeGGALL09JyZq33vC37rMQkzx1cW2Z03YyVgpL4DzPtuhe9YQhAdHU2zZs3o2bMno0aNol+/foTYQ9m1axe//fYbixYtYvv27RQVFXkjrDUVy20/IyOj0u3bt28HoFWrVic9lpUu3b179wrbVq1addxtq1evRkpJ166+PtGapvHjjz8ydOjQSkVd+/bt+eabbzh69CizZ8+mbdu23HHHHSxdupT58+eTm5t70vWeD5yqGLaw2WzMmDGDqKgoLr30UsrLy084PsifAw2lWh5BTo9ghDhIkCBVxpYtW7jooou4//77uf322095v9oUKS4rK2PVqlW4XC4GDhxIdHT0yXf6k6EoCo9/dAuv3vM5RfmljLl1MF36B7biuvjGfhQXlrF87iaat0vi5keMtPtdm/fxwfM/UF7iYsiY7qT9tp6ImBCuvm8Iq1avYuxdqTjLPGRuySf9t31kbM1H13SEEKiqgqZLhBDoQM6RQiNCKqGs3AVWjbLZp7hOvUhS2zYioWEsI0d34W/X+vrB6pqOVayrKAKb3QZmPa4En4GW9wnzP6uW1xTMpW5jbWFhKsVOHSml0UrJFLZSB6TwtkfySImMNBSmhiGEvX/JVd9cmHOhCqQEgZGOrQvfRkX4DZYQEmrHWepCUQSDhrXl43/PRkqdCy/vHmBKJlSB0+lBqApSlyQ3T2DX1v3oZhunOL8a64joMMbfeyHTXv0FgLbdUnj/Xz/yzJ2fMOiSzkx6/kpsdp/QaJAc580MUFRB/Ua+NN5jKcgr5uFx75G5dT916kXx5LRbcEQLDh48yNatWwkLC6NBgwY0aNCAuLi4GpdabbVvmjVrVoVoeVFREUuWLCEsLIzevXuf9FiWIO7WrVuFbZYgrmzbmjVrKmxbuHAhubm5FdKlj8XhcDB8+HCGDx9Onz59eOqpp1i5ciVpaWm0atWKli1bnrcp1Kcrhi1CQkL4+eef6devH9dddx1ff/31Ke8bJEiQ6iMoiIMECVIl7N27lxEjRjBu3DiefPLJ096/NojigwcPsmbNGho0aEDv3r0rpCcG8dG+Z3OmLHn8uNsVReGaiSO5ZuJI73Mup4d/3vAfivNLsYepKOEubn5xCG7NyYF9+ziYWcK29bnk7Dd638bUi/T2HpZSoutaQKS2tNhpCE/FT+9Z24VAtauodpWZ/03n99kbfYsTAuGRRMY4CIkKJaFhDOHhDpYv3+2nR6X3WEIa7tCaGSkWYIpUo7a5tFwjItpOUb7TaNHhJ4jNEmY0q01ypJnmLIwIsbTjbbtk5GH7LKnVEumN0EqMcdJSxNJIfPbrTsXUb+9k26b91K0XyUM3fUR5uRskbF2/l1sevJiv3pmHoipE1QlnX1auUWMsIDYugqatGrI74wAdujfjmtuHBLyXV985jCGXdaG02MnL93/JgaxcdF0yd8Yq4upF4SwuJ6ZuJGNuGcyEBy7hQFYuW1btpm33pkx4IDBl159v3p5D9vaDABTkFvPRs//jxa/vIiUlBY/Hw5EjRzh48CArV65E13UaNmxIo0aNiI+PP6dCbefOnbjdbpo3bx6QKdK8eXNGjhzJrFmzePvtt7nrrru825544glKSkq47bbbiIiIOOkcq1evxuFwBJhpWViC2D8K7L/fsdu+++47FEWp4P2wZs0aoqOjK3w2Z2RksGXLFpKTk+nSpQvNmzdn5cqV5OTk0LVr1/OuldaZimGLmJgYfvvtN/r168ddd93F22+/fd7eGAjyx9GlQJfn9v0/1/PVBoJXa0GCBPnD5OXlMWLECHr16sXbb799xsc5X0WxlNKb8t2xY8dgP8qzRN7hAuKTw+gzOoXGbePI2VfM6rm7Wb8wm5J8J0IRxDYyXG5Dw+xMuGsEk5/7EaQRFa5bL4oje/KOP4Gmg8138ZtzqIhF+zcDcPRoifGkV+RKSkuc5Osah/JLsNkUdEWYTX9NsevSvEZVml3xClkpTZdpYZhgFZd7iAizIQtdhlBVrXkMwSmtGmIwzbh8xwmIEGuglEkiioC2EJUtcVuLsebDehkC3Q6KZhwo1GGjbnwUfQe1ZtvGvZSVurznwVnuZuFvGwgJs9OmSxNyjxRBtu88Nm5Rn2fe/6vR5uk4F/71zZT4nIMF3nRoRRFMf38+aEZkfOPyXTz/+R08/8Xfjv8e+VFa5EtJ1XVJSYHPvdxms9GwYUMaNmyIlJKjR4+yd+9eVq5ciaIoNGrUiEaNGp1RnefMmTOZOXMmYNwEA0hLS2PChAmAUWf7yiuveMcPGzaMrKwsdu/eTUpKSsCx3nnnHfr27cvEiROZO3cuqamppKenM3/+fFq1asVzzz130vU4nU42b95Mx44dK63fXb16NU2aNKnUAXr16tVERETQpk2bgNfXt2/fCsZQb7zxBtOmTaNnz560a9eOhIQEdu/ezQ8//AAYLfYURSE2NpZBgwaxbt06fv/9d3r27Ol1oa7p/FExbJGUlMSvv/7KwIEDadCgAY8/fvybf0GCBKl+goI4SJAgf4jS0lIuueQS6tevz5dffvmH0xLPN1Hs8XhYvXo1BQUFDBgwIJgiXcVIKcnJyWHv3r3s37+fvqNbsG35QdL/t4uyQg+xdSMoyfcZXvUf0porbx9GdJ0IQkLt1KkXxY9fLyc6Jpwbbx/MO8/9yPKFRs1mn2FtSJu/1TeZXknNqWKGYnWM9GPw1t26QlSv0HRruukUba4bY7ylD3Uh0S1jLSkJCbVRjg7C6EUcGa4irbZMwhC+lkGXENKo/wWkYph1Waneul0aEWIBKKCWQORe83XopoAWhqGWkCDt5nF0aThMmyFkt1+9rcvpCezhDGxbuwcBLPltI8IW+Dveom0ixmk5eVRi1FW9+Ob9+caNAiHQ3R6vSl+zaBtulyegvdaJuPD6fsybsRKXZpzHsX+raChlrSsuLo64uDjat2/PkSNH2Lt3L4sWLSI8PJzk5GSSkpIIDw8/pXnXrl3LtGnTAp7btWsXu3btAqBJkyYBgvhEWNHUxx9/nF9//ZWff/6Zhg0bMnHiRJ544gni4uJOeoyNGzfidrsrTYnOysoiJyeHgQMHVthWWlpKRkYGvXr18n5ur1ixgr1793LPPfdUGH/ZZZfh8XhYvnw533zzDeXl5SQmJnLttdfy4IMPBvRTttvtdOvWjZ07d7JkyRI6depU428UVpUYtmjTpg0//PADI0eOpH79+tx2221VtNIgQYJUNUFBHCRIkDPG4/Fw1VVXUVZWxqxZs6rMXfR8EcWlpaWkp6fjcDgYNGhQrXJXrW4KCwvZs2cPe/fuRdd1kpKS6NOnD5pTkL9zHjED6nHp+P7s2XGIl+/9woisSkifu5nr7r6AkFAjNbXXgFZ06p7CV1MW8cl7C7joml64NY01aTtJm7+VmLhwCvKMyGLr9klsyzgUuBBTaCKsVGVf+yCrn29ADrS1D3jrdwF000jLELmCcqF73aCLnWaE2EqLVixBjPm6hNcCU6rCJ4AxUqalarbnUcHll10rwTDqwnSXdvuyq1GMOmrVrHX2aL6ezQdOFEWnQsvlCt+fiL/+40Jatk/iwJ48YmLDmPyPr4zlKIL4hrEB9cQno1Wnxrw//2E2r9xNk9YNadY26aT7KIpC/fr1qV+/Ph6PhwMHDrB37162bNlCXFwcjRo1Iikp6YQmeE8++eRplYVkZmaecHtycjJTpkw55eMdS7du3Y5rINakSZPjbgsPD8fj8QQ8N2PGDIBK64dHjx7N6NGjT3ldQghatGhBVFQUK1eupLCwkLZt29bI9OGqFsMWvXv35osvvuCqq64iISHhpHXZQWofejWYXOlBU63TJiiIgwQJckZIKfm///s/tmzZwtKlS4mMjKzS49d0UZyTk8OKFStISkqiffv2Nc6w53zE4/Gwf/9+MjMzKSwspGHDhnTu3Jl69eoFnN87n7mC8jIXy+Zuxh7qoE69KI4eKQIg50A+P322FBEWwu+zNtK4aT3KnG5WpO1AAHN/WQ8uj1ezFuSV8vArV9OqXRINGsUxduiLFBWWeecygrR+YV9hPSznaGlut2qP8Y3FFLYIpC0w9dmf4nKNiFDVqB229vFejwuve7O1zRLOHiTSJo2osZlCLSMkOZ2MwXooSLe5owLCDmi+GmIUkIYPGKqqcM3YN5HAuHG9DGMrU0g5bAqucrd3vQkNYzl8IB+Axs0T6DM0teKLOg7FhWW06tSY/hd2RAhBWbGT76cspE58FBNfHHfaYql+cl3qJx/feOtE2Gw2kpOTSU5Opry8nH379pGVlcXGjRtJSkoiJSWF2NjYGingzhYzZsygU6dONG3atMqOWb9+fQYOHEh6ejpFRUU1znX/bIlhi0suuYS3336b66+/nl9++aXSaH2QIEGqFyFrel+CIEGC1EgefvhhpkyZwqJFi2jRosVZm+fo0aOkpaXRunXrGiOKMzMz2bhxI+3bt69QExjk9CkqKiIzM5M9e/YQGhpKSkoKycnJx71odrs83HfV22zfuBcAu13FXW7UvCqKoNdFnVm6yGhZo6gCqSreulUhBNLtQfhFRG+9bxRXTDD6sBbml/LsQ1+zef1e7CEqZcUub4TNSINWvOLUHWFDt6tGlBhMRWrqZiEQ0tex1xmjgs1MubaixnYj4tujWQxN6oXy3zWHjedV6a1F9k5simVnBEgHRpq2lOh1de+tbSl1CIFQofBS3ZY8sHc7UasV3zF0UDXfMZViDZu1QJdOSKnmnVItcYEmEQLuf2oMMz76nf2ZOTRtk8i9/7qCRbM2ER0bzrBLuxAadmqZEb99s4I3HvsWXZP0HNKGx94ef1oR4XOF1Zt37969REREkJKSQqNGjYImeX8Qt9vNypUrKS0tpVevXlV+E/VM13Q2xbA/L774Is8//zyLFy+mQ4cOJ98hyHlNYWEhMTExPL98CKGR5/azo7zYw8M951NQUBAs4zpFgp/uQYIEOW3eeOMN3n33XebMmXNWxTDUrEixruts3LiRffv20adPH+rWPbPIVBDjXB46dIhdu3aRl5dHYmIivXr1Ii4u7rgRuW1rs0iftxkppVcMA7jdmrfWt26DWGISoo0WS5qOrkkUm0BRDOMlKSWqItB92o+2XZvgdnvI2LiPsIgQNq3bi1vTcHn0iotQjPZFCIEs90CozUhHBqN1UbidcpfH0LweUHRMAS2N/sJm+rWORA9RkAoUeTQiQ30p0940bKtOGHxtmOy+dGqbFLhsvpRpI4VbGg+AMIlH1VB11Xcscw6hSyMIbbWHOibBQVcEimakoU95ey6f/3ofABmb9nLnVe/gLHd764B3bt6Hx60x5sZ+NG3dsNL3zuPWeOuJ79DNvs3L528lbc4mBlzYsdLx1UlMTAydOnWiXbt27N27l8zMTDZt2kTjxo1p2rRpjRBy5yN2u53evXuzadMmFi5cSPfu3UlISKi29ZxLMQzw4IMPcvDgQUaMGMGyZcuCN1ODBKlBBAVxkCBBTov//ve//POf/2TGjBmVmricDWqCKHa5XKxYsQKXy8WgQYNO2YAnSCBOp5Ps7Gx2794NQEpKCt27dyckJOSE+21etZt/XPUmgCGq/KN1Al7/ZiJFBaXkHizg8JEiNE1HUYx0436DWqNJOLj/KMMv7kRquyT++X9TKC8z0oDfePp7cg4XUVRQZrQi8vYjNv6LqxdFXq7hMq0IgeY3sfTLlpZCUObyM6Syge42xaZLoocLM4XaaMFkpVAXaRqRISrS59FliGDLldqqY+aY+mJA2jSw+xodCxXDQQtAlegYUXMkCEX6tUY+5qaDzVyb2YtJ+N0McPqlS//4ZTpul1F3KnXJ28/9gHQbY3//eT3T5jxAbN2KglHXdW8LrMqOWxOx2WykpKTQpEkTjh49yu7du5k/fz7x8fE0bdqU+vXr/6nSqasCIQTt27cnOjqa5cuXk5qaSrNmzc75eTzXYtji1Vdf5dChQ4wYMYK0tLRKnb+DBAly7gkK4iBBgpwyS5Ys4a9//SsffvghI0eOPPkOVUh1iuLCwkLS09OJiYmhV69ewdTJM6C0tJQdO3aQnZ1NnTp1aN++PQ0aNKhQe114tITMbQdo3KI+sfFR3ueX/LIeEOhmqnNYmJ3ycg+KIrjln5eQ3KI+d/3ldQ5k5wLQrndzXEIhe/cRNq/fy13/vJivpi3hvddnERUdRlm52ysJd2ccquCq7N+P2BLDAJruM9MS4IusCszIsRJwDGkzoskKErefuJWqWQusQKFHI9LhV0OMKXr9v7daLfm1XUJiiGFVN5arWdNbdcMSVTHTzk3TMZ8OlmhCGNneZlBZmq7TkWEOnEVO7xyjr+7lfUlh4b70aCGM98M6pMvpYe2yHQy+uDMA82auYtorv2Bz2Lj98cu46rbB/Pc/8wFIbp5An+HtOB/wd6lu164dWVlZrFu3DlVVadmyJcnJyUEPgdOkcePGREZGsnz5cgoLC+nYseM5E6XVJYbBMHX75JNPuOiii7jkkkv4/fffT3ozMMj5jYZAq8w84izPGeT0CF7VBQkS5JTIzs5m9OjRPPTQQ1x77bXVsobqEMWHDx9mxYoVNG/enNatWwcjQqdJYWEhO3bsYN++fTRo0ID+/fsTGxtb6didm/bywJVvUVpcTkionee/+BttuxvmPgmN6njFsKIqNG3dgOc/uwMhBI4QG4t+XucVwwAbl++CKCOKX17u5ol7vwRTtBQVloHdBi4PxyIwIp8BNbz+SGnUEQM2rGixz1hLWi2TjKcRGGnFEkMc62YNslSMdkk6UODxYFcVQhwK5Zpu1CH7C2LBMQ7UZtRZgrBpKJZYVo0WTaopyoWqGwLcfGVC8UWgwT/VWiBKPd6WUMVlLmyW4BcwcFR778u/YkJ/Fs3exNGcIkLD7JQV+VpeAfz82VJ++3wpfUd15N2nvjd7E8Mzd0zji/Qn6DO8HQVHS+jYq/kp1x6fDjkH8vnklZ8oyC3m4hv603NY1Yru0NBQWrduTcuWLdm7dy/bt29n69attGjRgiZNmgRvlp0GcXFxDBo0iPT0dNLS0ujZs+dZd+qvTjFsYbPZ+O677+jVqxe33XYbU6ZMCf5dCRKkmgl+cgcJEuSklJSU8Je//IUhQ4bw6KOPVutazqUo3rNnD+vWraNz5840atTorM1TGzl69CgZGRkcPnyY5ORkhgwZctLay2//M4/yUkNguVwevnzjN5755HYALr6uH7s272fRT2sJjQghqVkCR/YdpVFzowYxKtZMYbeuKx22YxydK15wykqfhaiYUIqKXYFPmunLYeEOSl2aL53ZraOHqd6IslcQm+ISjF7ECqCrZg2xuV2zGWPLkbg0nahQlbJyP0F8rLO0KaS92wQoVna3MISnouheLa+qOlJI42JbYopTn7GX7yJcooWoqKW6IY6lX0K1hHde/JlOnZJp06kxX09ZxNHcYiPqbbNUuvQ6bm9YYvR4XrtkO5hiQ0pwOz3kHS6kdafGlZzxqkFKyaPXv8ueHYeQus6KeZt585d/0Lxd1f/uKopC48aNSU5O5sCBA2zfvp2MjAyaNWtG06ZNgy3YTpGwsDD69+/PqlWrWLx4MX369CEsLOyszFUTxLBFZGQkP/zwA71792by5MmV9n0OUjvQpYIuz20GybmerzYQFMRBggQ5IVJKxo8fj6qqfPLJJzUiNfBciOIdO3awbds2evbsWa3GL+cTUkpycnLIyMjg6NGjpKSkMHz48FO+wBWKT54KQCgKmkfj67fnsGnFLlp3TSEmPoqD2bnM/mY582asZOqiR4lvEEunPi3o3K8la9N2GPvrpsOzV/MdI3+FMKLAum9Cm03F7dEpOlpqRJD9MddWXu4x+gub6cWqW6KFWyZYAikM8ywj1CyQSCuYa4hhuyGadUyDK3OaQrdGRIiKdJl1tX6CWLfaMFkp16rPBEsIHYfDgxCg6yClsALYKKqGpkqvq7VQzJpnKRE+ny1DBCvm+ZDS24rJYk3aDtYvyjCcum2+3/+SonIQ5vGlBN2vacUxES+7QyWxydmtl3SWu8nadsD3hJRsW5N1VgSxhRCCxMREGjZsyJEjR9i+fTvbt28nJSWF5s2bnzVxV5uw2Wz06NGDdevWsWjRIvr06UNUVNTJdzwNapIYtmjevDlffvkll156KW3btuWCCy6o7iUFCfKnJSiIgwQJckKeffZZli5dyvLlywkNDa3u5Xg5W6JYSsnmzZvJzs6mb9++1KlTp0qOW5uRUnLw4EEyMjIoKSmhWbNm9OjR47SjZOPuHMGqBVspPFpCaEQIN9x7IV+/PYdPX/0ZKWHVwq3eqCOA5tGZ8uL/2LA6m5yDBThC7F63aeHRkP4xYFMIehF+Ns4Y/7k9furYG/U0v7WOYaVHm7pQtwlvxBfMOlw/MYuluYUw6ob964JtvshvkdtDZJgNWWadU3z1ySo+8y5d+mqIgVCHB0WRKEJHFwqaLr2CWFV13IolWAlIn0YL7LgoPL70aY7VCh4NWYnhNkB8/RhyDxSgKAK93FX5IKBug9hTarFUUlTO6w98xablO2nXszn3vHQ1EVGn9rkTEmonuWV99u06gq7rCAStOp+9iLQ/QggSEhJISEggLy+P7du3M2fOHJKTk2nVqlXQhO8kKIpC586d2bp1K4sXL/Y6zlcFNVEMWwwfPpx//etfjBs3juXLl9OqVavqXlKQKkbj3Nf0aicfEuQYgoI4SJAgx2XGjBm88MILzJo1q0amDFe1KNZ1nbVr15Kbm8uAAQOC7VVOgZycHDZv3kxpaSktWrQgJSXljOsom7RqwNSlj7Nv9xEaNq5LRHQY0176n0/Hyor7rFq6k4KjpYDpWmw0AfZFLFXhy42W0qgjlrLCwaxIKd6hPkFssyl4hPD2I/ZGaoVAuCVSiIAUZ93PFdqsIvamUnsfmILYFLqFmkaUQ/XWBqP4BKwUoNvM5xzWNmMtqqphU62XrKPoYDcNtmyKjlsl8OrIvAcgVX+B7Av0GqdBEBIRAkhSGsWxc90edKQhev0PJQSvf347xYVlbEjfwbuPTj/2jHqZcN+oCu9dZUx75SfSfluPrkvSfltP3frR3PHk5ae0rxCC5z7/G1Ne+JGC3GL+Mn4ALdonn9K+VUlcXBy9evWisLCQ7du3M3fuXFJSUmjVqlXQQOkECCFITU0lJCSEpUuX0qNHD+rXr/+HjlmTxbDF3Xffzfr167nkkktYvnz5cT0WggQJcvao/tzHIEGC1Eg2bNjAjTfeyL///W/69etX3cs5LpYo3rZtGzt37jzj43g8HpYvX05BQUFQDJ8CBQUFLFu2jPT0dOrXr8/w4cNp0aLFHzYVCosIoUX7RkREG6mmqd2b+hk+C1JaN/COVVSlQmquN+1aCHC6fSnRuvGw2xQURdChSxNapSZ69wsJswcuRJOERzpAAY+mI6U03Z+FVwyjCFQhvHW9UrHSm4UxThFIm0BXQarCK4IxH1L4osSFmkZUiIpmw1tbbDlR62avYanIAEMuVLCpEofqxqG6sStubIqOYvYhtqkSIaQxj3lfwPrfMuGynK6FLn29jjWdcqcbl1ujTErad2+K3WGjWZuGCFUxbiooCsP+0oV6DWNp2rohpYXlgW/FMaUV0XGV/z5JKVnw/Wo+n/wr29fvMaO7xvp1XbJv1+FK9zse9RLr8MAbN/Lc53+j98gOp7VvVRMdHU23bt0YOHAgJSUlzJkzh23btuHxVDRzC+KjWbNmdOnShRUrVpCdnX3GxzkfxLDFe++9R0JCAuPGjUPTgvG9IEHONcEIcZAgQSqQk5PDJZdcwl//+lduueWW6l7OSfmjkWKXy8WyZctQVZX+/ftjt9tPvtOflJKSErZu3cr+/ftp2rQpXbp0OatRr6v/PgKkZEP6Ttr1aMbVd41k2eyNbFq5mz27jnBofwEFeb62SHXrx5B3uABdkyia0YfXP1gZGxtBaZmTDauzsDtUhl3WmQU/b8BZ7kGxKUaPYwBVobTUlwIswZcKLQ1hDPiixQFp08eMlWZNsSbRVb90a9UUtgoUah4aOhw+Z2m/FGddkWC35pKGO7S5LUR1+SLECiiaNCLEblAVnyDGP2qtYESNrQg0oCmgGAXG3h7Eui7J2nWEsKbxNGuXSJ16UezYedh7Ordt2us9P72Gt+Pz139F16XpBh54o8J5nHTqT1/5mS/fmIWiCL6c/BuX3zGM1Yu2oaoKmqbT78JOle53PhETE0Pv3r3Jzc1l06ZN7N69m1atWpGSklIjPBlqIklJSdjtdm/v9xYtWpzW/ueTGAajjnrmzJn06NGDBx98kFdeeaW6lxSkigiaap0fBAVxkCBBAnC73Vx++eW0atWK119/vbqXc8qcqSguLS0lLS2NqKgounXrVuMvnKoLp9NJRkYGmZmZJCUlMWzYsLNeF1laXM6mFbvoe2EnrrvnQu/zqd2a8uKkL9DMNkw2h42U1ERSuzbhujuH8e9Hp7N5VSZRseFoDhv79uabe0qOHC7wCle3S2POzxvAEoAenXZdGlOnbhSDL+rAMw9/67eaY3oMI5GKld+M12QLCMi98rlOY/zjX0esmhFjAYVSo5Xd5ttm1RALwCaNiDIYuc1+gtim6thV3a9EWkExezTZVQ2k3c9YjICUaW8JtQBsAtwYtc52BVxmaF3TyNi4z1yvqarNlHRHiO8SommbRCb/cA+LflpHzsEC5s5c7d1md9jo2r/y2sjf/ptunHtdoqgCT7mbh98Zz5ZVmbTt3pT+tUAQW9StW5cBAwZw8OBBtmzZws6dO0lNTSUpKSnYdqcSEhIS6NevH8uWLaO8vJx27dqd0nk638SwRXx8PDNmzGDgwIF07NiRG2+8sbqXFCTIn4YAQZydnU1OTk51rSVIEC/x8fE0bnxuzFCCBDJx4kQOHTrE8uXLz5sLCYvTFcWFhYWkpaXRoEEDOnbsGLworQSPx8OOHTvYsWMH9erVY9CgQURHR5/1efNzipj4l9c4su8oALc9MYbRNw8CYNmcTV4xDOBxebjm9iH0Gdme4oIyrvy/wdx39bsUFZYb3lGhfhH/Y3steeuCjSfr1I3ksVfGAaCowhcxlqboNXfXvQJYeMWrf02ut2bYnE8IAeX4tV0yRalqpFsX4CHKrqLbfPN5WzupeHsPG3P5XKbtqtFmySqblmg4MJyqrdRpr/C1hLrASCG3XoOU6B6/GmLF/wQF5EEHvkl+Nwg2r9zNjA8XEBJqJ6pulK/rlHkeHSGVZ13Ub1SH/JxCdM2ILK9btoNtG/Zw0bV9apUYthBC0LBhQxo0aMCePXvYvHkz27dvp127dkE3+0qIjY2lf//+pKWl4XQ66dKlywmj6uerGLbo3LkzH330EePHj6dVq1b07t27upcU5A+iSQXtHEdsz/V8tQGvIM7OziY1NZXS0tLqXE+QIACEh4ezZcuWoCg+x7zzzjv897//JS0tjZiYmOpezhlxqqI4Pz+fpUuX0qxZM1q3bh0Uw8cgpeTAgQNs2LCBsLAw+vTpQ926dc/Z/PNmrCRnf773+09f/dkriBObVFyHJiV3XPI6WdsPEW66EuumaBaWQZaUhluyv+ATwoi6mmxck82vM1ezaN5m4upEkJNTbGzQ/cSliVWLq5RpeEIVX7ozvsgvQiB1Qxw7BLgVX8RY2izHaEmB7iZaVX2RW91XHm3UDJv9h9FBld5tipA4FM0rQENVjRDTRStccQaIeOn3hVACba9UfwNut+49NfKYGwb+ztuR5nk+sv8oD13zNh63sY6oOpHYHDY8bg2pSy64qleF98vivtev47nbp7B/9xHsoQ4yMw6ga5LNK3eTkBRHh15nr894dSKEoHHjxiQlJbF7925WrlxJ3bp16dChQ9CR+hgiIyMZMGAAy5YtY8WKFXTv3r1SoXu+i2GLK6+8kvXr13PZZZexevVqkpKSqntJQYLUeryCOCcnh9LSUj777DNSU1Orc01B/uRs2bKF66+/npycnKAgPocsWLCA+++/n2+++YbWrVtX93L+ECcTxUePHiUtLY1WrVqddm3an4GioiI2bNhAYWEhbdu2JTk5+ZzfMHCE2M22SQY2hy+hqeuA1nTt34rVizMA6Ni7OWvTdrDHNGAqKy4PiE5GR4eSX1huPCElAS2VwGzVBChgD1F5/dkfjKECvD2MjGcwwr0YAtlmfG1zY7Q3Unw1xN5exOA10AKfyzSKnzmWgCI0wlUV1Q4eJOh+5leKBLt/72HpjR47FA82byRYYlPAbr74MLsHhAaoRi21X12zkR7te0mq3+mIjQ6lpLzEqOMtcfkpc995U1WFXeuzuazjo7Rom4jb6fGeoYLcYhqk1MNZ7mbYmG789YGLKn+TgaSmCbzz24NomsYlze8P2LZjw55aK4gtVFWlRYsWJCcns3nzZubNm0fLli1p0aLFeSvozgahoaH07duXtLQ0VqxYQY8ePQLOT20RwxZPPfUUGzdu5NJLL2Xx4sXBftZBgpxlKtQQp6am0rVr1+pYS5AgQaqJgwcPctVVV/Hoo49y8cUXV/dyqoTjieK8vDzS0tJo06ZNlfUuri14PB62bdvG7t27adKkCT169Kg2g7HhY3swd/oKtq7JwmZXuev5qwK2PzvtVjK3HUTzaDRrm8hL933lDXlKCfUaxpB/tBS3WyM/rwRsxgWyN1Lqh6Iq6Gaj3YKCMt8GXx8iFCmNuKtSiTi0UpuFvyD21QqDX1RYwWeKJQDToboID5qURNkV8nTPMfW9ElTd1x9Ykd5sZZuioyrWcIldcRFmTmxTNKSqga5WSOn275OMryQZgAtHd+OKS7ry9D1fsG3DXl+rKgHtujRGtSlsS99FcZFxk2HzmmyEww5uj/kaVQ7uzUMA309dzOU3D6JOvShORPqczRWea9ez2Qn3qU2EhITQpUsXmjRpwvr169mzZw8dOnT4w22HahMOh8MripcvX+4VvrVNDIPRl/nzzz+nV69eTJo0iffee6+6lxTkDJEI9HPch1ie4/lqA0FTrSBB/uRomsa1115L9+7deeihh6p7OVXKsaI4NjaWZcuWkZqaSrNmf56L7ZMhpWT//v1s3LiR8PBwBgwYUK0p83mHCpg/cxXDr+jB3S+Oo26DWKJiA9NIhRA0bdMQgMP7j9KxVzOW/LYRXdcQQtBnRHt++Nx439EDo8JCSq94RUp0P1NkV7m7Qisnc0KjjhhrrAhwb7ZMtbztjfxSo70mVlgu0fjEsCq9YrVIN+qI89zuwLpfm5kmbUaChd/XNiG9BtcCFxGqm1Bp/GkPtzlBqD4nbOG3Hpvva3S/r4F+vVtQt14UhfmlgTcPVIVN67KNUyECK4pbdEwmOsKBy+Vhw4pM77lyuzwc2pd3UkGcveMgQhFIMzVdtSm06vjnyxCKi4tj0KBBZGZmsmrVqmAa9THY7Xb69OnjbfnWtWtXli9fXqvEsEV4eDjffPMNPXv2ZNiwYVx11VUn3ylIkCBnRFAQBwnyJ+df//oXO3bsYO3atbWyBYglipcsWYKUkg4dOpCSklLdy6ox+KdHt2vXjkaNGlVrPXXR0RLuuugVjh4pQkpJp34t+deXdx53/C//TeeNx6aDhEbN6jF6wgBSOzdm17YD3jECkB4NR2QornI30iMxehOZyGNjxuZ+QgQIQqHp6HYFFGHqZ4n0plRLb5q0xDTC8hegfmLZa6qlYxTvmhHeIqkRbVd8dbtWhFiVKDYd4Vfoaxlmme2QAQhX3YSpHl/KtKKhKDq6VAPbLoG5kzQNv/xOFPDzT2tZnb6LMqfb10/42NOlKgH+ZBde3ZsLr+pJWYmTW4a/SL5Zex1dJ5zNqzLJzymm17C2x/3Z6jawDZ++9gtCVZC6pPeI9pWO+zMghKBp06YkJiYG06grwW6307t3b9LS0pg7dy516tSpdWLYok2bNkyePJlbbrmFbt26BbOazkOCplrnB0FBHCTIn5hFixbx/PPP88svvxAXF1fdyzlrWAJDCIGmadW8mpqBruts27aNnTt3Vnt6tD/r0raTd7jQ9/2S7eQdKqRug4oRaykl7z//ozeyuXfXEZCSZqmJ1Euqc8xgM/qLZax8TB0x+Kyara8BoUNEbCilZS5sikKZnyGXVP0EsO6Xd2xFZK1+wwLjr63AbLtkjTXrgs3vC6WbaJsNLGdrHTNNWqLaNUMEC5C68ApZ/8ueEEXHpkiEub9d0cwaYrtf6yfr5UmfkbXbV/+MLvntp/UogO7WvGXHx54r1abQpnNj8nKKGHVlTy68qicAYREhvP7tXXw/dRHFhWUs/GU9H/zrfwCM/b/B3PxA5SUZpUXl9BnRnrwjRXQf1IYr/m9IpeP+TFSWRt25c2fi4+Ore2k1AiklQgh0XffdRKqF3HTTTcybN48rr7yStLS0s9r3PUiQPyvBWwhBgvxJycnJYdy4cTzwwAMMGjSoupdz1rBqhtu1a0e/fv28IvDPTH5+Pr///juHDh1iwIABdOjQoUaIYYD4hrG+bwQ4Qu1ExBzfUObYC+GNK3YDEBUdxqCLOx5/omOvn491UTZRBLg9OlKC2635xlgp1EIgFYFaZojggLZKwkyVNtOnpQ3QzO0KKIpq1AMLCUgKpIcYm82IBFsPRYKioaoadpuO3aZjs2moio4i9IC1SiBcdVLHYdT22hUNXdoD06Wtemd861Jc/hbThrjXdDP67a2ZDjxddetG4ip3061/S0bf2C9gW0JSHW595FIaNon33oQA+N9nSyt9Kzak7+Sh694hbfYmtqzKJPdQISGhjkrH/hmx0qibNWvGsmXLWL9+PR6Pp7qXVW1YNcMOh4Nhw4YhpWT58uW1+mbn+++/T1lZGQ8++GB1LyXIaaJLUS2PIKdHUBAHCfInRErJjTfeSJs2bXj88cerezlnDctNOjU1laZNm3rTp/+soljXdbZs2cLixYtJTExk4MCBNa69VpsuKUx48BJCwx3E1o3k4XcnEBpWuTgSQlSIOC7431pWLTLcp3sOahMw1ts6SUozX9mPY4S13a4iMdyuXS4Pundf4x8pQHqkV2w63IapFSpGFNg00NIx/1eNh3QakVkjhVoaLZ8UiVAlRdJDtKKCqiNUHWHTUewail3HbvPgsLsJsblx2NwIoaEqFVQ94YqTcOEEIFwtR0rFV9csfA+vwJXgjjy2vzC+CLY3Yo7vRoAQHMk8ws4t+/n1v8v56OWfK31/6sRHec+bUAQxcZGVjls+bxOKonjbZC35ZX2l445l/bId3DN6MpMufY01i7ad0j7nK0IImjVrxpAhQygsLGT+/Pnk5ORU97LOOccaaIWEhNC7d288Hk+tFsXh4eF89dVXfPjhh/zwww/VvZwgQWodpy2IMzMzEUIwatSoKl3IggULEELw5JNPVulx/wj5+flMnDiRPn360KBBA0JCQkhKSmLo0KFMnz69QmRi6tSpCCFO+Bg2bNgpza3rOm+99RZdu3YlPDyc6OhoBg0aVOkH4b59+5g8eTIjR46kcePGOBwOGjRowBVXXEF6evpx5ygsLOSWW24hPj6e5s2b88Ybb5zeCQpy3vLaa6+xdu1avvzyy1pZNwzG76/lJu1voPVnFcXHRoVbt25dY9/7cX8fwYxtL/PlmufoNfzEtaR9hrer8Nz8H1YD0GtIqk/Ega/lEiB0iWr1GvIfY+LRjEbAZeVudI8pngUIt+br7etXG+w118LPWEvFaLlkM/9XjE5NlghGBaFIFMUwySoSbqIVFcUmzYeOohqPELuGQ/XgsHkIsXmwqx5UNVDUhysuIhS31WSJaMVpRp/xtVyyHv67Hu/HQAjCwkOM06MeM8is19R1yfYNeyvdfdiYbgz+S2cQEBsXwYOvXVPpuEbN63vFsKIqJLc8ubNy4dESHr/xPbatySJj3R6e+OsHAan2tZWIiAj69ev3p4wWH89N2jLacrvdrFixAl3XT3Kk85NOnTrx4osvMn78eLKzs6t7OUGC1CqCNcQnICcnh48//pjevXszevRo4uLiOHz4MD/++CNjx47l1ltv5f333/eO79y5M0888USlx/r222/ZtGkTF1xwwUnnlVJy1VVXMX36dJo3b87NN9+M0+nk+++/57LLLuPNN9/k73//u3f8m2++yYsvvkjz5s0ZMWIECQkJbN++nZkzZzJz5ky+/PLLSt0Jb7nlFmbPns0NN9xAbm4u99xzD2FhYdx6661ncLaCnC8sX76cRx99lJkzZ9balh5FRUUsXbqUVq1aVWpCcrI+xbUJXdfJyMhgx44dtGjRglatWtVYIXwqeNwa5aUuIqJDEUIQGx+Jogp0zXeDsl33pgBERIYSEmbHWWam7Uq8btMCQVJyXbKzcgMnMMWurssAIS0UBYnE0peY9buaMM20FOF1l/amS1tfY9QRG+nTCqiaKUwNISzM2uAi3EQrNlRV8y5XUXSEAIfqwa4azTR0FaTU8UgloKVypM3p/xJQBKg2Hc2jBPZVstZyCsxY+BC6Lrl8yAs4yz3e8yE1iaIIpJR0HdCq0n1tdpUHX7+O+1++GkVVjmuoNWJsD/btOsyCH1aTlFKPe16uXDj7cyA7F6dfOrbb5eFAVg5xCdGn9sLOY4QQNG/enPr167NmzRrmz59Ply5danVt8claK1mieOnSpaxcuZIePXpUqzng2eLOO+9k/vz5jBs3joULF9aYUpcgx0dDQTvHCbnner7aQFAQn4CmTZuSn5+PzRZ4moqKiujduzcffPABd999N+3aGRGKzp0707lz5wrHcblcvPXWW9hsNsaPH3/SeadPn8706dPp168fs2fP9jZkf/755+nevTv3338/l1xyidcpt2fPnixcuJABAwYEHGfRokUMGzaMO+64g8suuyzAiKGsrIzp06fz008/eaP9SUlJTJkyJSiIazH5+flceeWVTJw48ZRuzpyPlJWVsXTpUpo2bUqLFi2OO+7PIIoLCgpYvdqIllZ3K6Uz5fupC5n97QoaJMcx8JLO/PvBryktLqfboDY8/t5NOELtPP7OeF6+/yuc5W4GXdKZUVf1JPdQAV+8PReHw+YVxALL2dlIb96z67A30nkiFCHQrYwgs0WR0X5JGAFnS/i6TPdqKxpr/i/MNkfSMtCyzLTMtGShSISAYuEmWthRFCPCJYTEZkaBHaqbUJtEsTK/pUKZxxEgdEs9ISSH5BGrGA7PQup4PMe5MPK+BnwiH8Ay2JKSMLuNUb2fJTTMTnm5xzeVEIy7dRCHsnJo2aERYyYMqHB4f1Sbyo6Ne/nlyzQio8MYe9sQomIjfOdXUbjpob9w00N/OeFx/GnSsj516kVRkFcCQGRMGCmtG57y/rWByMhI+vfvz65du1i2bBlNmjQhNTW1wjXL+c6p9hm2RPGiRYtYv349HTt2rJWi+OOPP6Zr1648/vjj/Otf/6ru5QQJUis4a7cQXC4Xb775JhdccAHJycmEhISQkJDA5Zdfzpo1awLGPvnkkwwZYjhKPvXUUwEpxpmZmWdriSdFVdVK/7BERUV5xcSOHTtOepwZM2aQm5vLJZdcckoRuZkzZwLw8MMPe8UwQHx8PPfccw9Op5MpU6Z4n7/88ssriGEwLoCHDBlCXl4eGzZsCNimaRpSyoBIkaIotTbVKIiReXDzzTfTqFEjnn/++epezlnB5XKRlpZG/fr1adOmzUnH19b0aSklGRkZLFq0iIYNGzJo0KAaL4Y1TUfzBNb/LZu9kf88OYOdG/eSNmsjL0/6nLISIwq66vetzPpmOQC9hrbl29VP8+Pmf3H/S+OQUvLQDe/z69fpFOUV4+8IVT+pDopiGmJ5TvJ5pxjiVve6Rwtfu16z77CQxtf+JlWWn4kVGdZthrO0tElv/18r1VqYplpCSIpwEYkNu03DbtOwqcb/DptGuF0jRPUYD8VDuN2DKnR0abZZBpxS0MBeSKhinMcEUYgUSsB8ATXEZvp0p2YN6dElBQeguHUz7VtQ6jIiwuXmDQXp97hgbA/+Ofk6xt48CNVMp87ecYhJV7zJDf2f5Yu35jD/xzVMffUXFv60jvvHvsGvXy3j2/fm8c/r3mXN4m3s2rzvFH86KhIaHsKr393NRdf1ZdQ1vXltxiQioo9vvubP3r17uemmm0hMTCQkJISUlBQmTZrE0aNHT2sNP/zwA8OHD6dRo0aEhYXRrFkzrxPwucKKFg8ePJj8/HwWLFjgfR2HDh1CVVUmTpx4ztZT1ZyqGLZwOBz06dOHgwcPsm1b7awrj46O5osvvuCNN95g1qxZ1b2cICchaKp1fnDWbiPm5eUxadIkBgwYwEUXXUSdOnXYtWsXP/zwA7/88gsLFy6kR48eAAwePJjMzEymTZvGoEGDGDx4sPc4sbGxZ2uJZ0x5eTnz5s1DCEHbtm1POv6jjz4CjBTlU+HQoUOAEaE+Fuu5efPm8dRTT530WFY6zbHCPjIykgsvvJBrrrmG66+/nry8PL788ktef/31U1pjkPOPd999l0WLFrF69epa2a/R4/GQnp5ORETEaUUGalukuLy8nNWrV1NaWkr//v1r5Gfosfz2ZRrvPPoNmqZzw/0XMebWIfz+4xqW/LLe6AUsJbqmo/vpZUURFBeWVnq8grwS9u4+4ntC1xgyuhudejcnOi6CpyZ+5tsmpa/Xrp8vhMAStsJXcmvV30oziipASIlmRoNtZQJXpPG1sFKmbT63aSNl2jLikt5jCXN8MS5UIYhWbJQID6ow06QFhCgeHKpEmP2OhaajKjq6FN4U6ZZhRwgRLkIVD4VAhMOF3ebG6bH7GWUZc9oLfKegVPNw2+V9WbVkZ2CLJf/Qsd/vU3KTuiQlV2zT9swd09iflYOuSz6d/JvxPlnp7JrmPb87N+3j4WveAeC6e0Zx/b0XVvo+noyGTeK589mxp7XPzp076du3L4cPH+ayyy6jTZs2LF++nH//+9/8+uuvLFmyhLp16570OPfffz+vvvoqdevWZfTo0cTHx7Njxw6+//57pk+fztSpU7nxxhvP6HWdCVa0eMeOHSxZsoTU1FTmzp2LruuMGTPmnK2jKjldMWwRHh5Onz59WLx4MSEhIZVeS53v9OzZkyeffJLrrruO9evX07Dhnys7IkiQquasCeI6deqQnZ1NUlJSwPObNm2id+/ePPzww8yePRvAK4CnTZvG4MGDT9tY63THT5o06bQuEvPz85k8eTK6rnP48GF+/vln9uzZwxNPPEHLli1PuG9WVhZz584lKSnplI3I6tWrB8Du3btJTU0N2LZ7t9FSJCMj46THyc7OZs6cOTRo0IAOHTpU2D5t2jTuvvtuPv30UyIjI3nmmWcCapOD1B7Wrl3L/fffz5dffkmjRo2qezlVjq7rrFy5EiEE3bt3P+0a2doiig8fPszq1auJj4+vMX2FT8bRI4X8+8GvjD6+wNQX/seiXzewc5MVPZRmxhAkNa3Hnp2HAYiICmPIZd0AKCks4/D+fJKa1sMRYiM6Npy69aM5eqQI3exVevHVPfnkjTlsWZuNqipomm6mUEtfrpQQKIpA1yVRMWEUljgDuw1ZmlCX3r7CqkfgMaPCdgkuxawpxkqRNsZJBaRqziV9KdOaB+whhtDVkJThIQobpbhx2Dw4VGOdDtVNuE3zRagRKKYgRhq1zaquEaWUA0Z5TLRSiltTA8Ww+TqFn0N1xu7D3Pf4NxCmQJlOgOxQ8IWFrffMTFM+FksM+6Obtca6bq5TCKRfJtKX//6Nq+4cgSPk3KT5/u1vf+Pw4cO88cYb3HXXXd7n7733Xl5//XUeeeQR/vOf/5zwGAcPHuT111+nfv36rF+/noSEBO+2+fPnM3ToUJ544olzKojBiBa3bNmSunXrsnLlSsrKymjcuDEDBw48p+uoCs5UDFtER0fTq1cvb9/exMTEs7TS6uO+++7j999/59prr2XOnDm18kZ3kCDnirP2F8hyZD6Wdu3aMWTIEH777TfcbneVXLCdSqTUnwkTJpy2IPafw2638/LLL3PfffeddN8pU6ag6zp//etfT/nD6sILL+TLL7/khRdeYOjQoYSGhgKQm5vL5MmTvWs6EW63mxtuuAGn08lLL71U6dzx8fF8/vnnp7SmIOcvTqeTa665hptuuonLLrusupdT5UgpWbduHWVlZfTv3/+MLwrOZ1Gs67o37btDhw40btz4vKmdKy4o84phAITwE8MAgo59WtCmcxPG3TmcHRv3cnhfHl36tyYuIZoNy3fy2F8/xFnmJiGpDg/++zpmTV9Ji/bJFOcbwu2KWwbx6/SVrF++CwCp+rlK6zoSBYSh/CKiQ3nmtWvYvGEfH/9nLi63XsGBWrh1ZIjqS6EW+ESwv5Oz4jPXkoo0v7faGBmRXzwgkKbRtaAIN3VVhSKbG5viIUQ10qnDVI1QxY0qJBKBQMUmdNxSYNeFGUV2ESlcIBRygVDhxqZquPSKN4g8oRBi6Vq3tSYBDsDlO/dWajh+pmWhYRX/bhcXlhES5qCs1NzZL9qu65I69aIoKyojKjacI3vyvNsUVTFS2I9B82hkrMsmNDyEpqlVI2Z27tzJrFmzaNq0KXfeeWfAtqeeeor333+fTz75hFdeeYXIyMpbRIFxo1vXdXr16hUghgGGDBlCVFTUabVEskT0fffdxzXXXMPTTz/NokWL0DSN4cOH884771C/fn02b97Ms88+y5w5c3A6nQwYMIB33nmHxo0bBxwvLi6Orl27snDhQl544QXy8/O9Ue9Fixbx2muvsX79evbt20dkZCRNmjRh5MiRNaYe9Y+KYYu6devSvXt3Vq5cicPhqHWmY4qi8Mknn9ClSxdee+01/vGPf1T3koJUgo6Cfo5Nrs71fLWBs3pLdu3atbz00kssXryYgwcP4na7A7bn5ORUSZrHse2PqpqUlBSklGiaxp49e/jqq6945JFHWLp0KV9//fVxDSx0XWfKlCkIIbjppptOeb5rrrmGKVOmMH/+fDp06MCoUaNwu90BrsAn+gOh6zo33XQTCxcu5NZbb+WGG244vRccpFZhZVC8+uqr1buQs8SWLVs4cuQIAwYM+MM32M5HUVxWVsaqVatwOp0MHDiQ6Ojzx2XX7fKwe/M+YhOiyD9cFNgeyU+E3vb4aJq2MURRh17NAd/78sFzP+Iy3Y+PHCzgkZs/xuV0gzR6CH80+x/E1Ytiyut+tXa6BLPlkrA6MZnp0YUF5dzzf9OQulGfi83n0GyZUCkSNMy/PUIEtl7C97WVKm2lHnsjxP6iGRUhdLOOGEpxUU+G4dbdxBFBtO4gDBuxmhsHKnZpQ9HtKLqDXp4wHFLFjoJAEFXYg70CNHcsADnbHuH+dhHoEjQkLl3i1HScusRdqqElS1weHZdTQ5bolJZplBS7Kc93U1LipqzA5Q0MCwWvoVirSgTq7/9b6xPDlXD0UIFx80DTad+rGRvTdyGE4PanLsdmD/x75nZ5eOTad9iwzPDoGHvHMG5+xHcz70BWDvm5xTRv1+i0Isvz588HYOTIkRWySKKioujXrx+zZs0iPT39hC0SW7ZsSUhICOnp6Rw+fLhChLioqOi00pQt47uMjAwGDhzIhRdeyM0338wvv/zCd999h8vl4tZbb+W6665j6NChjB8/nvnz5/PTTz9x4403smDBggrHnDVrFs899xzff/89aWlptGrVim+//ZZHHnmE5ORkRo0aRXx8PIcOHWLFihX89ttvNUIQV5UYtrAy5NLT0+nfv3+N91I4XeLi4nj33XcZO3Ysf/nLX07JOyNIkCAVOWuCeOnSpQwdOhQw/vi0bNmSyMhIhBDMnDmTdevW4XQ6z9b0ZwVVVUlJSeGhhx5CVVUeeOABPvjgA+64445Kx8+ePZvs7GyGDRt2WjUsNpuNX375hRdeeIEvvviC999/n5iYGMaMGcP9999Pq1atvGnVxyKl5NZbb+Wzzz7j+uuvP2nqV5DazYoVK5g8eTLz5s0LcBmvLezcuZOsrCz69+8fYED3RzifRPHBgwdZs2YNDRo0oHfv3ueVu6yu6zx2w7usW7LdeMJbt2pEICXCqCm+d5RXDFeG5tHxz+ct9xNl5WUudmzeR89BbWjRNtFwlcZvuKL4q2Hf2jQ/sy0/Qy3rCWE5NJt1xNKbQm1usCLDuhkRNsWkVHRCbIJ6thASHHYSVAd1VQdxQhAl7ERhJwIbTTzRlGouSpVynIoTt+LGrpSA6sKtlOARHtzCw66yaNxCQxMaUkiuq5dGoqMYZ1kj9mRfT3KTKbz/22U4tRBsNoFDUQhRFEIUQViJQqQUOGwK0TYbofEKYaEqURE2IsJsOBxGWnlpiYeSYg+lxW6KC92UlWiMvqYTJSUlhIWFeYWlzX6Snz1dGsZfZW6uu+dC4hvGEhEVSp16FW/grFm0zSuGAb59dy5X/m040XUi+N+0Rbz92LcgIaVNQ175bhIRUaEnntvEMlk6XqlTy5YtmTVrFhkZGScUxHFxcbz88stMmjSJtm3bMmbMGG8N8Q8//MDIkSNP62+vJYhXrlxJeno67dsbvbcfe+wxGjduzK+//sqqVauYM2cOvXr1AozMn+bNm7Nw4ULKy8u9mWQWM2bMICIigpEjR1JWVkZ6ejput5tRo0bx/fff43A4AsafTkT7bFHVYtiiSZMmOJ1O0tLSGDBgABERESff6Tzioosu4qqrrmL8+PEsXbo0mDpdw9CkQDvHJlfner7awFm7enruuedwOp0sXryYfv36BWxbtmwZ69atq7K5znYNcWWMHDmSBx54gAULFhxXEJ+umZY/ISEhPPHEExX6Glt3grt3715hH13XueWWW5gyZQrXXHMNU6dOPa/7jQb5Y5SXl3PjjTdy++2306dPn+peTpWzd+9etmzZQr9+/YiKiqrSY9d0UazrOlu2bCEzM5OOHTuSnJxcbWspPFrCO49+Q9a2g/S/qBPXTLrglD53srYd9IlhMM2lBJGx4fzz7Ql06tcSKfE6GB+PG+69gGfvmIbm0YmIDEFXVMpLnUgpUVWVJi2MrJr/e+hiFv22Ho/brB1G+EWiTVHsNc3CK5qtqLCvTZKJriO9F54ShGL0GtaMfaIdKvXDQ0iIsVHP4aCew049h50Y1UaJrnFYd3FEd5KrudjnKKUEF0XCTT81GkXoLIvMwKG4CFE9qAIahuYRrrqxmct26pApm4HpMq1JBTUsm/jwIvSIw+zJvp64yCwyC104rfX74dgvCS03zntorl+CnUdHMQPo0UIQGWEjIspOh06JtO1bj8hoO7lH95E91/CxkJqC0FUaNk6g7yUt2LnhEHkHS+narxXp8zYjMES322NE8R1hDlLaJBJb9/gpyRVSqM10ciklHz73vfe9ydx6gAUzV3LxDf1P+DNiUVBgOIkdL0poPX+ykiSAu+66iyZNmjBhwgQ+/PBD7/MtWrRg/PjxFVKpT4QliKdNm+YVw2DUwTZt2pS1a9fy6quvesUwGNcILVu2ZN++fZSUlAQI4vLycn799VcuvPBCQkNDvY+ioiImTJhAQUFBhZvq1Z1OfLbEsEXLli0DRHFtu0H81ltv0a5dO1599VUeeOCB6l5OkCDnHWdNEO/cuZO4uLgKYri0tNT74e+P9eGnaVqFbSfjbNcQV8b+/fuBiu7NFrm5uXz//ffExcVVqcOjVfN79dVXBzzvL4bHjRvHp59+GrxL+CfHulH04osvVu9CzgKHDx9m7dq19OjRgzp16pyVOWqqKHa5XKxYsQKXy8WgQYNOWOt4Lph8/xekz9mErulkbt1PXP0YLryu70n3i4iuGNV767cHaNomMaD+OedgASsWbKVewxi6DWxdoTa697B2fDT/Ib58ey5zZ6xC6m7iE2Op36gOV98+lITEWP7z7A/8/NUyIxhs1StLHRTzM9KtQagvNdpq9iukmf5sCTRpGmV5baeNr6NtNuo3CKNhnRDqx4SSVMdBhE3lSLmbAx4XRzxudheVc9BRymFclKFhdmsCICq8xKwhhhKbjYZaNHbFg11xEarq2IQkVHHhEBo2YbhUK0JBRXrX7NQkCTYPihAo5pOqEMc0GfZhs/7UCuGNYCON/k0S8OhQWOKiKN+IuO/YfBQBTLhtMIOHdiIs3M6/7p5Gfl4BMQlh1E3KJi4xlBbd2hAWYScqOoqLbmpPTHQMnnL435Q0PC6dq/42/IRiGKDLgNb0GNqWFfM2A3Dj/RcTFRtulkcdU89dhbXyVvnVqRzzX//6F48++ih33303f//732nQoAFbt27ln//8J9ddd523ZOxklJSUkJGRQbNmzRgxYkSF7VlZWcTFxXHllVdWui0qKqqCK/asWbMoLi4OuPZo3749o0ePZsOGDaiqipSSYcOGERdX0S38XHO2xTAY72n79u1xOp0sW7aMfv36nVcZNScjMjKS9957j8svv5y//OUvFQxZg1Qf1dEG6Uzn27t3L48//ji//vorubm5NGzYkNGjR/PEE0+c9rXWokWLmDx5MkuXLiUvL4+4uDg6dOjApEmTuOiii85ofWeTs/Zp0KRJEzIyMti0aRPt2rUDDLF7//33c+TIkQrjrQ/lvXv3nvZcZ6uGeO3atTRt2rTC3eS8vDwefvhhwDDAqoxPP/0Ul8vF9ddff8I7kTt37sTtdtO8efOA+sfCwsIKtYDffvstH3/8MT169ODyyy/3Pq/rOjfffDNTp07lyiuv5LPPPguK4T85VhuR+fPnV0iNO98pKipixYoVdOzY8ZT6ev8RapooLiwsJD09nZiYGHr16lUjLui2b9jjTTFWVIXdp9hbNiEpjlsfH81Hz/2A1CXX3TuKZqmGEeOODXtYl7aDOgnRvPP0TEoKywEYd8dQJtxX+Wfub18v9359eE8utz18CTs27WP+D2uYM2OVscFP6CiapGPvpuzMOEiz1g3JOpBPbm6x74BCIKRRYCwtcymMNkL1G4aT2CicxOQI6tcNISxEJafEzf4CJ7tzSpmbf5T95S7cUuKOlIahlgDd5kao0huMxk/fWUsrV8qI8MTjUDRCFY0QxY0iIER4CFF0rzZXpEQRpYBxY0FHUOAJIyXEjS6Mz/9QVF/E+xiEZekhpZHabb1ma7AVQIeAA0x9bwGf/OsnVEWgu9yg6+zZCvh9zkTEOPjb0xcTFR3J0YI88vPzaTMslqioKIo8R8jK0omPjyc8PLyC+HSVu3n+9o9ZMW8zMXUjGXl1b1Yu2MK2tVn83+NjuO3JMbz50NdIKWnevhFDxlTMljoe1t9yK1J8LIWFhQHjjse8efN4+OGHGTNmDK+99pr3+a5duzJjxgxatWrFq6++ym233XbSz4x169ah6zrDhw+vsC0zM5OjR49y+eWXV/hdLygoIDMzkwEDBlTYb8aMGTgcDi6++GLvc/Hx8SxevJinnnqKZ599lkmTJvHEE0+QmZnJ008/TZcuXU64zrPFuRDDFkIIunTpwrJly1i1ahU9e/Y8b8wHT4VRo0Z5U6fT0tKC14FBTouqakkH8Oyzz/LYY48RHx/PJZdcQsOGDcnJyWHNmjUsWLCgdgniDRs2MGHChEq3de3albvuuotZs2bRv39/rrrqKkJDQ1mwYAH79u1j8ODBFUwg2rRpQ2JiIl999RXh4eE0atQIIQR33HFHtZkgTJ06lQ8//JAhQ4bQpEkTIiIiyMrK4qeffqK4uJgrrriCa6+9ttJ9TzVdetiwYWRlZbF7925SUlK8z/fq1Yvk5GRSU1MJDQ1l+fLlLFiwgGbNmvHNN98EfNA9/fTTTJ06lcjISFq1asWzzz5bYZ7Ro0fTuXPn0z8JQc47rFTpO+64g969e1f3cqoUl8tFeno6TZs2reCseraoKaL44MGDrFq1iubNm9O6dcVIaXXRc2hbfvk8DSGM2tsuA1uf8r6X/99QLr6hPxIIDTME1bql23n4uneQukQKBeFnuDRz6qJKBfGOTfsrPPfqQ99QWmz6VHjToI0U6TF/HcDw0V1o5lebfNsN7xmC2FcqbHRHkpCQFE5SowgaJUfQMDEct0dn775Sdu8tIW19HkeOOsmvI7w1xaUJZiQZvxpiYbhJo8gA7zBrQiEkAnDbyghzhmBTNByKG4eiowodh9CxCw+qMG8+SIVoxUkJoQgJHk0nVpXYhIrVOMkurL5Px3DMTWRvhrKVQm5FSgP+kX5jDOdoVBV03dfH2aSkwEXePidDL0w1d5GUl5ezKyObret3sDfiINg8hIaGEh8fT926db0C+X+fLGL53E0AFOaV8M07c401qoLMbQeZsuQxug9OJT+nmKapiRUMuU5E69bGz+bx2hZu326k8Ldq1eqEx/npp58Aw1H6WMLDw+nZsyczZsxgzZo1J/28sDLmKiuDWrVq1XG3rV69GiklXbt2DXhe0zR+/PFHhg4dWuHaqX379nzzzTe4XC4WLFiAruskJiZy+eWXs3Xr1nOeRnwuxbCFqqr06NGDhQsXsnXr1loXSX3rrbdo3749r7zyCg8++GB1LyfIeURVtKQD+Prrr3nssccYPnw43333XYWStmMNlmsKZyyI9+/fz7Rp0yrdlp+fz8SJE/n22295/vnn+eyzzwgPD2fo0KHMmDGDp59+usI+qqry3Xff8eCDD/Lpp59SVFQEGKnB1SWIx44dS0FBAcuWLWPhwoWUlpYSFxdH//79ufHGG7n66qsrvShdvnw5GzdupGfPnpX2/z0Vxo0bx3fffceyZctwu900bdqURx99lH/84x8VIseZmZkAFBcX89xzz1V6vJSUlKAg/pPwxBNPoCgKL7zwQnUvpUqxeg1HRUWd84uY6hTFUkq2b99ORkYGXbp0qbSdXXVy+9NjqZcUx57tB+k9sgN9Luh4WvuHhAVmMMz51oj0Gtmx0qvdhIDo2IpmOCWFZRzem+ftH2zhFcPG3gGZtnXqRgSIYYCRF3fmP2/MNrbHh9C0eRSNmkTSMCkcj0eyd28Ju3YWsWDRIfJM92VPhOpnBiZ87tLmlAHiWgCqRCi6oR8t0y1dQUrpbb3kVMoI00KwCQ2H0AlRNBQhUYSHEOHxildV0QmxeSj1SBQBNiloYHeiohgRbUAVKnbVjdNT0X39RNJDWtFxxajbjQyzU1pknE9R7kYcG3bW9QrO4H1HtvOdfSEozC3jsWs+xlnqQtclg0d34a+PXkhOTg7Z2dmsW7eO0NBQ3CFltOjegKyNObjKPN5j6prk0J5cSovKqZdYh3qJp18qYQnYWbNmoet6QK17UVERS5YsISws7KQ3El0uI428smw3/+dPRWBagrhbt24VtlmCuLJta9asqXTbwoULyc3NPWGplsPhYOTIkXg8Hl5++WUefvhhdu/efU4diqtDDFs4HA569uzJokWLiI6OrnGfqX8EK3V6zJgxXHrppbVO8J+PSKmgy3Pr5yNPc76qakmn6zoPPvggYWFhfPHFF5X6u1RFu92zwWkLYqsF0alwxRVXcMUVV1R4furUqUydOrXC87169aq0fUB10b9/f/r3PzWzDn969ux5yufIErPH8uSTT56yWdjxzmeQPx/p6em8+eabtTJVevPmzZSXlzNgwIBqiY5Whyj2eDysXbuWvLw8+vfv/4e9D84GdoeNq+8aWWXHi0uI9motIQSxdSM5mltMZHQY978S6J3gcrq598q3yN5+yBivKr7P3mMEmj+/TV/JmAkDvNFFj0cjOSWS/kMbktIiishIO3uyisncUciSOfs5UuACVTHbKAmkatYbm6IRAE0ibYbwFi6Q4aYIdoO0m7nHHokS4qehVdB0w+TLqiF2KmXYsBEuBDZFQxVGhNiGB9VszWRp7UT7UQo9sWiALkIAGwqaKVhBQcGmmj2ijsXPS8w4X4HP+0S9oOeA1oy5vDtTXvmFDWk7Kz+WaX4mgCtvGUhi40CTpuVzN1Hmd5NiwfdruO/V673mUx6Ph7y8PHaG7aZ0ZDGDb0jlwI58sjbmkrUxh+I8J01aNSD8FB2lK6N58+aMHDmSWbNm8fbbbwdEQZ544glKSkq47bbbAlyIKytrGjBgAG+99Rbvv/8+t912W4Cg+uWXX1iyZAmhoaH07XvyWvrVq1fjcDgCzLQsLEF8bBTY2q+ybd999x2KogT0nF+zZg3R0dEVPrN27drFiy++yNixY2nYsCHR0dEkJlZNz+cTUZ1i2CI6Oppu3bqxcuVKIiIiauRn65lywQUXcPXVV3PjjTeSlpZWI0prgtRsqqol3dKlS8nMzGTs2LHUqVOHn376iY0bNxIaGkrPnj1rtMFr8LckSJBagpUq/be//S3AjbQ2kJWVRXZ2NoMGDarWu4vnUhRbrVJUVWXgwIEV2qqcj+i6zo9TFrFl9W7adm/GJeP7V/jje9WdI8hYl826pTto3CKBJz+6lToJ0dgdaoWxGev3esUwgNT144pgf/btzuGnL5eQtWsPcY3CCI0RuF0adrtg8fwD7M0sxuORoBliFZuCNJWo9LpRC4QL9FCJFAKlXKKHAgrYysEVgTcK7FWwLomI1BGKz9xa2gQeTeJwGHHdUt2Jhka47sCjGmnSNqHjEBJV+NygFQH1QkrIcEqEFHh0jQPOSOrYC72CWCAocZ/gxtjxRPExRcerV+7m4cdHExEeglAEUjccwRUh0DwCEepAKAq62VqpWdtGFaaq19AX0RWKICYuAtXmez9tNhsJCQkkJCTQpFEzVi3eRPtO9WnRvpQyZzGeckmzlikcPXqUOnXqnPFNsXfeeYe+ffsyceJE5s6dS2pqKunp6cyfP59WrVpVyLKqrKxp7NixDB8+nDlz5pCamsqYMWNo0KABW7Zs4X//+x9SSl544YWT1ts5nU42b95Mx44dK72BuXr1apo0aVKpA/Tq1auJiIioENWdOXMmffv2DfBXeOONN5g2bRo9e/akXbt2JCQksHv3bn744QcArrnmGtq2bcvq1aspLCw8qyUZNUEMWzRo0IDWrVuzfPnyWvMZa/Hmm296U6cfeuih6l7OnxoNgcbZ+X060Zzg80WwCAkJqTRzpapa0q1YsQIwfre6devG+vXrA7YPHDiQb7/99ritY6uToCAOEqSW8Pjjj2O323n++eereylVSl5eHhs2bKBXr141on/kuRDFR48eJT09nfr169OxY8daY47y7btzmfKvHxGK4PfvV+N2ebjitqEBYyKiQvnXl3dWSGldtWgbr9z3JSVF5VxxyyBuvHdUJW7FwtuyR5eSzn2as2PrQcpKnGgeDVUVNEmtQ8su9dAicomsL8jYcIDdmaUcOlDmjYqOvb4Pa1fsZmfGQV9NrfBzmMbbbhhNgrSB6hK4hRGVVk2RKa1AsjAHIxCKRFHMemJTYLtcEBFq7HPUFYZTLSNcd1AsNBzCg6JIkDoKut8rBYcCipBIJHVD3WwujaNtZOAFEELxtZE6zjWZNzhsrVMSEFW2m5H0q28fwtqlOygvcyEl6G6jlZKUZi9mjFrfrO0HgcDU+V4j2jH29qH875PFxMRF8o9/X39c0ZXYtB6JTQd7v3e73Rw+fJiDBw+ybNkyVFWlUaNGNGrUiOjo6NMSb82bN2flypVeJ9Wff/6Zhg0bMnHiRJ544olTcl1WFIWff/6Zt99+m6+++ooZM2Z4S6ouuugiJk6cyMiRJ8+a2LhxI263u9KU6KysLHJychg4cGCFbaWlpWRkZNCrV6+A35EVK1awd+9e7rnnnoDxl112GR6Ph+XLl/PNN99QXl5OYmIi1157LQ8++KD3InjAgAGkp6dTWFhI165dqzyyWJPEsEWLFi0oLCxkxYoV9O3bt0asqSqIiIjgvffeY/To0Vx66aW0bdu2upcUpBo4tiXjE088UWn2aVW1pDt8+DAA7777Ls2aNWPevHn06NGDrKws7rvvPn777TeuvPLKGpUNbBEUxEGC1AKWLVvGW2+9xYIFC2pVqnRZWRnLly+nbdu2NeqO4tkUxYcOHWLFihWkpqbSrFmzGmOeVRWsXrgV8ImnNYu2VRDEFv4X+h63xnN/+8TsLwxfvT2Xjr1b0KVfS25//DI+fulndF3SpktjQsMcRESHMuKKHmxdv5e1K3aT2DSall3iadY+jvISD4ezy/j6pVUUHClHC7VDZBjgCy4rwDOvXs21f5lsfK+DRzEGCCEMWWqZZtkMMy3Vqh8O+F+iIvAI3YwSO1CE4Rpt6WxVkegiDChFACVaBG61nAgZRqmiY1MkitDR8Xp2GfMCxkokQggURdItMifgHBo+YjpYbtPHw8/kS1i5234tEEeMMsRt647JTJn3ABtX7Oa526f44si6jrCpCLOOu2t/w5Tqf9MWMX/mKhqmxHPrY6O5+eFLufnhS0+wkMqx2+0kJSWRlJSEruscOXKEvXv3smjRIq8JZ6NGjQgPDz+l4yUnJzNlypRTGnu8sia73c6kSZOYNGnSKb6KinTr1u245VVNmjQ57rbw8HA8Zl9nf2bMmAFQoX549OjRjB49+qTriY6OZtCgQaSnp5OWlkavXr2q7O9JTRTDYPy8d+7cmcWLF7N+/Xo6d+5caz5zR44cyTXXXMONN97IsmXLgqnTf0L27NkT4Dt0psZ5p9qSzmqdK6Vk+vTpXh+ldu3aeR34f//9d9LS0mpc+vS5rfIOEiRIleN0Ohk/fjx33nknPXv2rO7lVBkej4f09HQaNGhA06ZNq3s5FbBE8bZt29i5s5K6yjMgOzubFStW0KVLF5o3b15rLswsWnZojFAsV2VBiw7JJ9nDwFnmoqzEGWCOnHvIuKN92YQB3PXsFXg8GhtX7Gblwm0kJNahRccGuEU+1z/YhRHXtsTj0vjpoy18+cpa5n2TQUGBKSicLkAG/DXM2HKA+HrRSCECk4eVQOMsaZo4S1Hxgdkv2BtV9nlvIYREERJVkcbXpvO04TRtx62WEqI5UAWoGGnSbiEDNK0AQhRLJEucHpV69rKA8yaASHt5pa2XpN/DO9h8vVJKb/tiIeCyy311qrFxkfQZ3pbYetFG3bCqoArJmPH9GTmmO899cBPtu6Ww5Jd1vP3ot2xeuZv5M1by4t8/OeF7fKooikL9+vXp1q0bo0aNomXLluTm5jJnzhwWL15MZmam1/Tqz8aMGTPo1KnTH/q8dDgc9O3bF4fDweLFiykrKzv5TiehpophC1VV6dmzJ4cOHWLXrl3VvZwq5Y033iAvL49XXnmlupfyp0WXvl7E5+5hzB0dHR3wOJ4grqqWdFav4mbNmlUwFQ4LC+OCCy4ADPPhmkbwdlGQIOc5r776KsBxHcbPR6SUrFmzBlVV6dixY40VhlUZKd6xYwfbtm2jZ8+eXqOh2sYN91+Ey+Vm47KddOzTgmsnXXBK+0VEh9FnRDvSZhvteFRVYcOynURGh/Lte/PJ2mmkadkcCs0710MLz2fRokXUbRjFj1PXsG9HQYADtbQMt1QF1aOhaRpS2LyicMeOg1x9xZtIhwqabuZF+4ymJBhC2O9Y0hKdlkC2UpSt6KtXEBti2PqRVhXQhAezOhkhJC61jBAtFJuwI4QTVYCspJmw9VshBISoLnaXR9LB7rugkUCx55ioqde22zdIKgJ0U3BbKdNu3Tt81i8buGxMd8IjjIupBT+sJT+vBMu9u0PPFtz64MUB02xZudtbb6xrkoy1WYDpFr9gK8WFZfQa2paI6LBK3vFTw2azkZycTHJyMuXl5ezbt4+srCw2bNhAUlISKSkpf6je+Hxjy5YtVXIcqzXR+vXrWbhwIX379q3ULfZUqOli2CIsLIyePXuydOlSoqKias1ncEREBO+88463Tei5alcY5PyiqlrSWcc5nkmdJZir4kZbVRMUxEGCnMdkZ2fz3HPPMX369FqVKp2RkcHRo0cZNGhQBSOlmsYfFcVSSjZt2sTevXvp169frXI7PRZHqJ07nh57Rvs+/NaNvPqPr1jwwxo0TWf2dyuZ/e0KkDoxDcLpN6YZrbolUHzUyea0A4weexFRMRG8+8j8Y9vu+lAV8HgQZS5kjN2bM11Y7gaXxzcGHeHS0O2Kty+vVIxUaTwg7aaoLAUZiyEqPYAdbz9jA6u9kk8QYxwuQCR7bKWEuaNQkKhY2jUUKct9PYzBr6IYwu1QrImANFsd3de6ykq3FgEL8s6PIpCaLyysqwI8xvcfvT2PT/6zgGdevZruvZqzbf0eVFVB03SQsHd3xfZDG5bvNFLjzfPVrL1htPX6g/9lzrem8Urjurz1471/SBRbhIaG0rx5c5o3b05hYSGZmZmkpaURHh5OSkoKycnJwZTR00BRFDp16sTWrVtZtGgRvXv3PqX6an/OFzFsERcXR8eOHVm5ciUDBw48YXuZ84lRo0YxbNgwJk2axHfffVfdy/nToVdD26XTna+qWtINHDgQm83Gjh07cLlcFa5LN27cCOA1KKxJ1OwrzSBBgpyQSZMmMXz4cEaNGlXdS6kyDh8+zPbt2+nVq9cZ17uca840fVrXdVavXs2BAwdqbFulmoLNrqKqitc0Cylp0i6Oi+/oyNj7uuEIUfn5g0188+oacrLKiasXTWiYg+GjKxoWeRGGqBVlvhRbb7shrwmV0VpJtdyiEb4osClYpWI8VBegGKnSlJsRZIFhUCUMcWgZYfs/7Ko063cNsexRS3HoYSjCX/I6zIphKzKNYZjl91LqO0rxoOExHbF0NBw2d+BrPlYLewxh7TP+Mp+3xpmRY03TeeIfX/H47VNRbKYYFoCqUOLWuGHES/z3gwX855nv+filn8hYt8e8wWC8X536tqS4sMwrhgEOZuey4vetx39/zpDo6Gg6duzIBRdcQLNmzcjKyuK3335jw4YNFBcXV/l8tRUhBKmpqbRp04alS5dy8ODBU973fBPDFo0bN6Zx48asWLHCWw9ZG3jzzTeZPXs2s2bNqu6lBKmBWC3pMjMzefvttwO2WS3pbrzxRq+xqdvtZuvWrRWud+Lj4xk3bhz5+fkVDF5nz57Nb7/9RkxMTI28Zj1tQZyZmYkQoka+mOrms88+47bbbqN79+6EhIQghDhhf+B9+/YxefJkRo4cSePGjXE4HDRo0IArrriC9PT0Pzz+dHnppZcQpmnMsmXL/vDchYWF3HLLLcTHx9O8eXPeeOONP7zGID5mzZrF7Nmzeeutt6p7KVVGeXk5q1evpn379ietValpnK4otmqki4qKGDBgQK2JRpxNOvRqjqIK2g9I5JpHetB/bAv278jni6fTWfVzNvXq10Oxqxw6UMj4wS/w1O1T+f2H1UTFBJpmBWAFMU0qjPF/QoL0hWyNqLCfkZZN8QnLEFM4G/2HrWOBpywwOiwEGDfjpRWoxW0rweEJ87Y49qEg/R6an7iVEoo1BR0dacaOdSlxy2MMtY4V+25AFYao90vzVjyBjtYAbpfG8kXbmfn5Mkb/dQA9BrdBhNopLXNx5GABU96YzQ+fLeXbD3+HY6KxMXWjcITYUNVjelxWQXT4eNhsNpo0acKgQYPo06cPLpeL+fPns2zZMnJzc8/avLWNZs2a0aVLF1auXEl2dvZJx5+vYtiibdu2qKrqjWbVBpo0acK9997LnXfeidPpPPkOQaoMHVEtj9PlnXfeISEhgYkTJzJ69Gj++c9/MnToUF5//fUKLen27dtHampqpS2YXnvtNVq0aMFTTz3FoEGDuP/++7nyyiu58MILUVWVDz74oEbe/A9GiKuQRx99lPfff5+srCwaNmx40vFvvvkm99xzD7t27WLEiBHcd9999O/fn++//56+ffvy9ddf/6Hxp8OWLVt4/PHHj9vW5kzmvuWWW5g+fTrXXnstvXv35p577uGDDz444zUG8eF0Ornzzju57777Ktjqn69IKVm9ejXx8fE0adKkupdzRpyqKHY6nSxZsgRd1+nXr1+t6n/5Rzi8L4/nb5/CP8a+we8/rA7Y5na7SekUwy0v9KfbsCY4tCi6d+pFnch6DLyoC//+/h72Z+eimyox91Ahy+ZtweX0UHS0FPArnxWgKIKufZobIVspCS13IhW/WuBjRKSugPDoxhjV2CgFRmqx+bVloCUF6H77q/gEgdtpC1iH93/p+15Ty7Br4Rxj6YVHGgYtUhpBZ93vT7gANOHEI3V0cwKX1LxBbV/NsN8dACGQIX5fW2ZhUqLofge29tN9Cz94oIDx919k1mb7XqwupZEqfYya7zG4jTfd3aLPyPZ0Hdias40Qgri4OLp168aIESOIjo5m2bJlLF68mEOHDh3XzTmIj6SkJHr16sWGDRu89YSVcb6LYTDSxbt3786+ffvYt29fdS+nynjkkUcQQvDaa69V91KC1ECslnQTJkwgPT2dV199lZ07dzJx4kTS0tJO2lfdIiEhgfT0dO655x6ys7N54403mDdvHhdffDGLFi3iyiuvPMuv5MwIFtRUIR9++CEtW7akSZMmvPDCC/zzn/884fiePXuycOFCBgwYEPD8okWLGDZsGHfccQeXXXaZN230dMefKpqmMX78eDp16kSrVq347LPP/vBay8rKmD59Oj/99JM3myApKYkpU6Zw6623ntb6glTk1VdfRQjBww8/XN1LqTK2b99OaWkpPXr0OK9NcE5WU1xeXs7SpUuJjIykW7du1XLBmHuwgDf/+V/27z7CsLE9uOrOETXinD9+43vs2XkY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", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "# Set the joint probability bin widths\n", - "width_direction = 1 # in degrees\n", - "width_velocity = 0.1 # in m/s\n", - "\n", - "# Plot the joint probability distribution\n", - "ax = tidal.graphics.plot_joint_probability_distribution(data.d, data.s, \\\n", - " width_direction, width_velocity, metadata=metadata, flood=flood, ebb=ebb)" + "data": { + "image/png": "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FStWRPph2bJlAIDVq1djcHAQ999/P6666ipceumlfd93IcJxW9xxe88992Dz5s049thj8ZznPKfrekcffTQuuuiivu+/kOC4Le643blzJ04//XTceuutOOqoo3Duuedi7969+NKXvoTHH38cV155JV7/+tf3ff+FAsfs3I3ZLVu24JZbbsHixYux//7747bbbsNLXvIS/Nd//Zf156+//no8+9nPxkknnYQDDzwQy5cvx7Zt2/C1r30N999/P8466yx885vfRK1W67sNCwWO2+KO22uuuQY333yz9b3//M//xF133YX3vve9eMtb3tJ3GxYKHLdzM26zXI9nsng4bos7bnkmi4fjtrjjdi7PZEUcB/o9qtUq/uAP/gAHHXQQtm7dii984QvYvn07XvWqV6Uy7M/MzODcc8/FD3/4Q5x44ok455xzcP/99+Pqq6/G4OAgvvOd7+Ckk06K/E7a/V0vSmUL9Ulp+Pa3v+1fc801fqPRiLz+8MMP+xs2bPAB+FdffXXw+q5du/yVK1f6g4OD/k9/+tPg9ampKf/kk0/2Afif/vSnI9e6//77/e9973v+rl27fN/3/TPPPNMH4N9xxx2p2/tXf/VXPgD/TW96U6rf+8UvfuHfdNNN/szMjO/7vg/AX79+fezPp+2XfjjvvPN8AP4HPvCByOtvetObfAD+a1/72sjrMzMz/le/+lX/oYce8n3f9y+77DIfgH/VVVeluu9ChOPWThHG7d133+0D8F/+8penus++AMetnSKM2ze84Q0+AP/CCy/06/V68Ppjjz3mb9q0yR8YGPBvv/32VG1YCHDM2sljzH7nO9/xf/e73/mtVsu/7rrrfAD+S17yktifn5mZ8ZvNZtfrs7OzQR9+5jOfSdWGhQLHrZ0ijNs4duzY4Y+MjPiDg4P+448/nvr3FwIct3akx22W6/FMFg/HrZ0ijFueyeLhuLVThHE7l2eyoo6DI444wgfgX3/99V3tWrVqlQ/Av+eee/r+O//+7//eB+BfdNFFkbPDNddc4wPwjzzyyK4zhdT+TlEmWygdGguEd7/73T4A/0//9E+D1z760Y/GLozf/va3fQD+6aefnnjdrJN5vV7316xZ4wPwf/vb36b6XZNek3kStn7pxe9//3sfgL958+auyWL37t3+okWL/JGREX/Pnj2x1+DmuT84bu3M1bjl5jkbHLd25mrcqk3rrbfe2nW9f/7nf/YB+G9+85sz/Q0LFY5ZO1nGrInrweGKK67wAfjvfve7M7dhocJxa2e+x+0HPvABH4D/whe+MPP9FzIct3Ykxm2W6/FM1h8ct3bmatzyTJYNjls7czVui3Imm89xMDw87I+Pj1vfe9aznuUD8H/2s5/19Xe0Wi1/48aNPgD/rrvu6nr/9NNP9wH43/72t2Ov4XouKZstlDU0FgiDg4MAgIGBgeC16667DgDw9Kc/vevnzzjjDIyOjuJHP/oRZmZmxNvzxS9+EY888gjOOOMMHH744eLX7xdbv/RC9dt5552HSiX6iIyNjeHUU0/F1NQUbrzxRrmG7qNw3NqZ63H70EMP4cMf/jD+/u//Hh/+8Ifxy1/+0qH1Cx+OWztzNW4feeQRAMCBBx7YdT312re+9a10jV/gcMzayTJmJWk2m4HG8DHHHDMvbSgyHLd25nvcXnXVVQCA17zmNfNy/6LDcWtHetzO93Ow0OC4tTPX45ZnsnRw3NqZq3FblDPZfI6Do48+Grt378Z3v/vdyOuPPvoobrzxRqxbtw5HHnlkX9e68847cd999+Gwww7D5s2bu94///zzAYR/Wx6UzRZKh8YCoNFo4JOf/CSA6AN7++23AwAOOeSQrt+p1WrYvHkzGo0G7rrrLvE2feQjHwEAvPa1rxW/dr/E9UsvkvpNf/13v/udYwv3bThu7czHuP3mN7+JP/qjP8Lb3vY2/NEf/RGOPfZYnH322bjvvvvSNn/Bw3FrZy7H7cqVKwEAd999d9fPq/5V1yUcs3FkHbMubN26Fe985ztx2WWX4U/+5E9w+OGH49prr8Uf/uEf4pnPfOactKEscNzamY9xq/OjH/0Iv/rVr3DooYfi7LPPnvP7Fx2OWzvS43a+n4OFBsetnfkYtzyT9Q/HrZ25HLdFOJPN9zi48sorsWTJEpx33nl4wQtegLe+9a249NJLceSRR2Lp0qW45pprMDIy0te1imCHLEIb0kCHxgLgr/7qr3Drrbfi/PPPx9Oe9rTg9V27dgEAlixZYv099frOnTtF23PPPffgW9/6FlasWIHnPe95otdOQ1y/9GK++m1fg+PWzlyO29HRUbzjHe/Az3/+c+zYsQM7duzAd7/7XZx99tm4/vrrg8JeJITj1s5cjltl+H3nO9+JZrMZvL5t2za8//3vB9AuqDY1NZXqb1iocMzayTpmXdi6dSve9a534fLLL8e//du/4c4778Rf/uVfpioWuK/AcWtnPsatjjLWvPrVr57ze5cBjls70uN2vp+DhQbHrZ25HLc8k6WH49bOXI7bIpzJ5nscnHLKKfjRj36EQw89FFdffTXe85734GMf+xjq9Tpe/vKX4wlPeELf1yqCHbIIbUhDbb4bQNy44oor8I//+I847LDD8B//8R+pftf3fQCA53mibbrqqqvQarXw8pe/HENDQ13vv/Od7+x67ZJLLsGmTZvE2pDUL/fccw8+8YlP9NUuG3n1274Ex62duR63q1atwuWXXx75uTPOOAPXXnstTjvtNNx444346Ec/ije84Q3p/pAFCsetnbket5dffjmuvfZaXH311fjtb3+Lc889F5OTk/jiF7+IsbExjI6OYnJyEtVqNfPftFDgmLWT55hN4vDDD4fv+2g2m3jwwQfxhS98AX/zN3+D733ve/jKV76C5cuXO99jIcBxa2e+xq1i165d+OxnP4vBwUFccsklYtddKHDc2pEety79TLrhuLUz1+OWZ7J0cNzametxO99nsiKMg2984xt40YtehCc+8Yn45Cc/icMPPxyPPPII/uVf/gVve9vb8JWvfAXf/e53Uau1Te8u40CizQvOFpp7lQ6SG6qQ5BFHHOE//PDDXe+feOKJiUVojjrqKB+A/5vf/Cb2HmkLItXrdX/t2rU+AP+2226z/gyArn/XXXdd7DWRsiBSr35RhXLMf4q3vOUtPgD/fe97n/X6f/qnf+oD8D/4wQ/GtoEF6OLhuLVThHGrc9VVV/kA/AsvvLDvv2Ehw3FrZ77G7WOPPea//vWv9zdv3uwPDAz4q1at8l/5ylf6d999t+95nr9kyZK+/4aFCsesHdcxG/fzWYvvfeYzn/EhWLix7HDc2inCuP2Xf/kXH2AxcBsct3akx22v69ngmSwejls7RRi3OjyTReG4tTNf43a+zmRFGAfbtm3zly5d6q9fv97fu3dv1/vPec5zfAD+xz/+8eC1pHHw5S9/2QfgP/OZz7Te7+qrr/YB+C94wQti29xrf7fQbKF0aJSU9773vT4A/+ijj/YfffRR68+85CUv8QH4n/rUp7req9fr/ujoqF+r1fzp6enY+6SdzD//+c/7APwzzzyzr5/vhzSTeT/90gu1aXjNa15j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", + "text/plain": [ + "
" ] - }, + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Slice December of 2017 out of the full dataset\n", + "dec17_data = data.loc[\"2017-12-01\":\"2017-12-31\"]\n", + "\n", + "# Plot December of 2017 as current timeseries\n", + "ax = tidal.graphics.plot_current_timeseries(dec17_data.d, dec17_data.s, flood)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Joint Probability Distribution\n", + "\n", + "Direction and velocity can be viewed as a joint probability distribution on a polar plot. This plot helps visually show the flood and ebb directions and the frequency of particular directional velocities. " + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Rose plot\n", - "\n", - "A rose plot shows the same information as the joint probability distribution but the probability is now the r-axis, and the velocity is the contour value. As compared to a joint probability distribution plot, a rose plot can be more readable when using larger bins sizes." + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAA8QAAALeCAYAAABslti+AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/NK7nSAAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOzdd3gU1dfA8e/sJtn0HgghlRAIvYN0CEUp0n4IAkoR7K8oKgKKFAERFUFULKhUQYpUQaR3pIZOCCUJNQkJ6T278/6xZGFJKIGQUM7HZx/ZKXfuzC7snLn3nquoqqoihBBCCCGEEEI8ZTQlXQEhhBBCCCGEEKIkSEAshBBCCCGEEOKpJAGxEEIIIYQQQoinkgTEQgghhBBCCCGeShIQCyGEEEIIIYR4KklALIQQQgghhBDiqSQBsRBCCCGEEEKIp5IExEIIIYQQQgghnkoSEAshhBBCCCGEeCpJQCyEEE+RMWPGoCgKW7ZsKemqiEJQFIUWLVqUdDXM9O/fH0VRiIyMfKjHadGiBYqiPNRjPKqe5nMXQojiIgGxEELcJ71ez4wZM2jevDmurq5YWlpSqlQpqlevzqBBg1i5cmWx12nWrFkoisKsWbOK/diPkkcxgLzZvn376NOnD35+fuh0OhwdHQkMDOT555/nyy+/JC0traSr+NCkpaUxdepUQkJCKFWqFFZWVjg7O1O/fn0++eQTzp07V9JVfGzlBdD38sAr74HGzS+tVoubmxshISH88ccf91WH1NRUxo0bR40aNbC3t8fBwYEqVarw2muvkZOTc19lCiHEw2RR0hUQQojHkV6vp2PHjqxduxZnZ2c6dOiAt7c3165d48yZM8ydO5ewsDA6depU0lUVj5h58+bRr18/VFUlJCSErl27otVqiYiIYPfu3fz9999069aN8uXLl3RVi9x///1H9+7duXTpEt7e3rRv3x4vLy/S09M5dOgQX331FV999RX//fcftWvXLunqPhU6d+5MzZo1AcjOzubcuXOsXLmSzZs3c+LECSZMmHDPZUVGRtKmTRvOnDlD06ZNefPNN1FVlcjISJYsWcI333yDpaXlQzoTIYS4PxIQCyHEfViwYAFr166lRo0abN26FScnJ7P1CQkJHDhwoIRqJx5V6enpvPXWWyiKwrp162jVqpXZeoPBwObNm3F3dy+hGj48J0+e5NlnnyU1NZUvvviCDz74AAsL89uQ8+fP89FHH5GcnFxCtXz6dOnShf79+5st279/P/Xq1eObb77h008/xdra+q7lZGdn07VrV6KiolixYkW+h4F6vR6NRjomCiEePfIvkxBC3IedO3cCxm6HtwbDAC4uLrRu3Trf8szMTCZOnEi1atWwtbXF0dGRpk2b8ueff+bbdsuWLSiKwpgxYwqsg7+/P/7+/qb3LVq0YMCAAQAMGDDArCtkQeM8lyxZQv369bG1tcXV1ZWePXty8eLFfNsdOHCAd999lxo1auDq6oq1tTVBQUG8//77XLt2Ld/2N3fbXr9+PU2bNsXe3h4PDw8GDBhAYmIiYLzpbt++PS4uLtjb29O5c2eioqLylZfXDTQrK4uRI0cSEBCATqcjMDCQsWPHkp2dne/YAFu3bjW7Brdex4ULF9K0aVOcnJywsbGhatWqfP7552RmZt72WqenpzN06FB8fX3R6XSUL1+eL774AlVV8+1TkKNHj5KSkkLVqlXzBcMAGo2GVq1a4ezsXOD+cXFxvPbaa5QpUwadTkeVKlX47bffCtzWYDAwffp06tWrh729PXZ2dtStW5fp06djMBjybb98+XJeeuklKlSogJ2dHfb29tSuXZupU6ei1+vv6fzu5J133iE5OZlhw4YxbNiwfMEwgK+vL3/++ScNGzbMty43N5fPP/+coKAgdDodPj4+DB06lKysrAc+l5vHQ//8889Uq1YNa2trSpcuzauvvmr6zt7sfr8Te/bsoXv37nh6emJlZYWPjw+vv/46ly9fvoerWDzq1q2Lq6srmZmZpKSk3NM+c+fO5dChQ7z77rsF9ozRarUyHloI8UiSFmIhhLgPHh4eAISHh9/zPtnZ2bRt25bt27dTuXJl3n77bdLT01m8eDG9evUiNDSUSZMm3Xed+vfvj7OzMytWrDDrBgnkC7CmT5/OypUr6dSpE82bN2fPnj0sWrSIQ4cOceTIEXQ6nWnbGTNmsGzZMpo3b07r1q3R6/Xs37+fKVOmsGbNGvbt24eDg0O++qxcuZK///6bjh078sYbb7Br1y5mzZpFZGQk48aNo02bNjRv3pyBAwdy7NgxVq5cyZkzZzh69GiBLUk9evRg3759dO/eHUtLS1asWMGYMWPYv38/K1euRFEUatasyejRoxk7dix+fn5mLV83jykeNmwYX375JR4eHvTp0wc7OzvWrFnDJ598wtq1a9mwYQNWVlZmx8/JyaFt27ZcvnyZdu3aYWFhwfLlyxkxYgQZGRmMHTv2rp9R3vfm8uXLpKamYm9vf9d98iQmJtK4cWOsrKzo3r07mZmZLFmyhEGDBqHRaEwPQ/L07t2bhQsX4uvry6BBg1AUhWXLlvH222+zbdu2fA9hhg8fjkajoUGDBpQtW5bExEQ2btzIkCFD2Lt3L/Pnz7/nut4qIiKCjRs3Ym1tzUcffXTX7W/+/t18Ptu3b6ddu3Y4OjqyZs0avv76a2JjY5k9e3aRnMtHH33Ev//+y/PPP0/btm3ZvHkzv/76K+Hh4WzdujXf9oX9TsycOZNXX30Va2trOnXqhLe3N6dPn+bXX39l1apV/Pfff/j6+t71+jxsBw8e5Nq1a/j7+5u+s3ezYMECwPjvUFRUFGvWrCExMRFfX1+ee+453NzcHmaVhRDi/qlCCCEK7dChQ6qlpaWqKIrap08fddGiReq5c+fuuM+ECRNUQO3YsaOak5NjWh4dHa36+PiogLp9+3bT8s2bN6uAOnr06ALL8/PzU/38/MyWzZw5UwXUmTNnFrjP6NGjVUB1cHBQjxw5YrauV69eKqD++eefZssjIyPV3NzcfGX99NNPKqBOnDixwDpotVp169atpuV6vV5t3bq1CqhOTk7qvHnzzPZ79dVXVUBdvny52fLmzZurgBoUFKReu3bNtDwjI0N95plnVECdM2eO2T6A2rx58wKvwY4dO1RA9fPzU2NiYkzLc3Jy1Pbt26uAOn78eLN9/Pz8VEBt166dmp6ebloeExOjOjk5qY6Ojmp2dnaBx7uZwWBQGzRooAJq9erV1WnTpql79+5VMzMz77gfoALqwIEDzT6L48ePq1qtVg0ODjbb/o8//lABtW7dumpqaqppeWpqqlq7dm0VyHf9z5w5k++4er1e7dOnjwqou3fvNlvXr18/FVAjIiLuet6zZ89WAbVx48Z33fZWeZ9/7dq11fj4eLNzCQwMVDUajXr58uUiORdfX181KirKtDwnJ0dt2rSpCqj//fef2T6F/U6cOnVKtbS0VIOCgvLVd+PGjapGo1E7d+5c4Lnfq7ztN2/efNdt8865c+fO6ujRo9XRo0erI0aMUHv16qXa2dmpfn5+6s6dO+/52I6Ojqq1tbU6efJk1cLCwvSdBVQ7Ozv1t99+u+eyhBCiOElALIQQ92nx4sVqmTJlzG783Nzc1G7duqmrV6/Ot31gYKCqKIp66tSpfOt++eUXFVAHDBhgWvYwA+KRI0fmW7dp0yYVUD/44IPbn/RNDAaD6ujoqLZs2bLAOrz88sv59skLjJo2bZpv3datW1VAHTNmjNnyvJv8W4NeVb1xjVq0aGG2/E4B8cCBA1VAnTFjRr51YWFhqkajUQMCAsyW5wU/BQVaffv2VQH16NGjBR7vVufPn1dDQkLMvjeWlpZqgwYN1K+++kpNSUnJtw+g2traqsnJyfnWNWvWTAXM1rVq1UoF1PXr1+fbft26dSqQ73O7nf3796uAOnbsWLPlhQmIJ02apAJqz5497+mYN8v7/Dds2JBv3ahRo1RAXbVq1T2Vdbdz+fXXX/Pt8/vvv6uA+t1335ktL+x34r333lOBAv9tUFVV7dKli6rRaNSkpCTTsuIIiAt62djYqEOHDjV7AHUnmZmZpodgiqKow4cPV8+fP6/Gx8erv//+u2pvb68qiqJu3Ljxns9FCCGKi3SZFkKI+9S9e3c6d+7M5s2b2bFjB6GhoezYsYOlS5eydOlSXnnlFX799VcURSElJYWzZ8/i7e1NhQoV8pWVN9744MGDxVL3unXr5lvm4+MDGBOC3SwnJ4eff/6ZP//8kxMnTpCUlGQ2BvXSpUsFHqNOnTr5lnl5ed11XUHjmAGaN2+eb1nTpk2xsLAgNDS0wH0Kkrdty5Yt862rWLEi3t7eREREkJiYaNbV3NnZmcDAwHz73O663Y6Pjw8bN27k5MmTrF+/nv3797N371727NnDnj17mD59Ops2bTIbHw5QoUKFArum5x0/MTHRtD40NBSNRlPgNWvZsiVarTbfdy0+Pp6vvvqKNWvWcO7cuXxTP93uc74X6vXxtA8yhrQw39n7PZfCHAMK953YvXs3YMwNsHfv3nz7xMbGYjAYOH36dIF/Px6WmTNnmoYW6PV6Ll68yOzZsxkzZgwrV65k//79d+3anzcuW6/X88ILLzBx4kTTugEDBpCamsrgwYOZNGkSISEhD+1chBDifkhALIQQD8DS0pK2bdvStm1bwHhD+Ndff/HKK6/w+++/06lTJzp37kxSUhIAnp6eBZZTpkwZANN2D1tBicDykhzdmnSoZ8+eLFu2jHLlytG5c2c8PT1NYzynTp1aYFKjux3jTutuN1dp6dKl8y3Lmzc1Nja2wH0Kci+fxfnz50lKSjILiAuq8831LmziqUqVKlGpUiXT+7CwMF555RV2797NkCFDWLZsmdn2hTl+UlKSaW7sgrZ3d3c3u2aJiYnUq1ePiIgI6tevT9++fXF1dcXCwoLExES+/fbb237O9+JuDzvuxb1+Zx/kXArz9+J2299un/j4eAC++uqrAvfJk5qaesf1D5NWq8XPz49Ro0YRHh7OH3/8wXfffceIESPuuJ+trS1WVlZkZ2fTuXPnfOu7du3K4MGDC3wQIIQQJU0CYiGEKEJarZYePXpw9OhRxo8fz8aNG+ncubPpxjk6OrrA/a5cuQKY32DnJZbKzc0tcJ+kpKTb3pAXlf3797Ns2TJatWrFP//8YxZgGQwGvvzyy4d6/JvFxMTkSzik1+uJj4/H0dHxnsu5+bMoqHWvoM+iOAQHBzN37lzKly/Pxo0bH6gsJycnrl27Rk5OTr6gODc3l7i4OLNr9uuvvxIREcHo0aPzZePevXs333777QPVp0mTJoDx+/Swv7cP+1zuV945JyUlFer7WlIaNGjAH3/8cc9BbMWKFTl69GiBGdJdXFwAyMjIKMoqCiFEkZBpl4QQ4iHI67qa11XUwcGBwMBALl26xOnTp/Ntv3nzZgBq165tWpZ3E3nhwoV82585c6bAqWC0Wi1Q+NbK2zlz5gwAnTt3zhdY7d27t1hvcAvK8rt9+3Zyc3OpVauW2XKNRnPba5C37ZYtW/KtO3PmDBcvXiQgIOC2Ux89TLd+b+5XrVq1MBgMbNu2Ld+6bdu2odfrzb5reZ/z//73v3zbF3TdCysgIIDWrVuTmZl51xZS4IFaox/2udyvZ555BjB+Zx8Hed29C5qiqyB504gdP34837pjx44B5BsGIIQQjwIJiIUQ4j4sWLCA9evXF3izGB0dzYwZMwBo1qyZafkrr7yCqqoMHTrULFiLi4tj3Lhxpm3yBAcH4+joyIoVK8y6t2ZkZDB48OAC65U3tUlBQfT9yLuBvTV4jI2N5e233y6SY9yrcePGmY3JzMzMNHXlvHXKITc3t9teg7xrPH78eK5evWpartfr+fDDDzEYDAwcOLCoqw8Ypx+aNm1agV3jVVVlwoQJgPn35n7kneOIESNIT083LU9PT2f48OEAZueY9znnPZjJExoaajYe9EF89913ODo6MnHiRCZPnlxgz4fz58/z4osvmsbb3o/iOJf78X//939YWloyZMiQAqdry87OfmSC5YSEBGbOnAmYT1d2J6+//joWFhZMnTrVbE7lzMxMPvnkEwBefPHFIq+rEEI8KOkyLYQQ92HPnj18++23eHp60qRJEwICAgBjwLN69WoyMjLo3Lkz3bt3N+3z4Ycf8s8//7BixQpq1KhB+/btTfMQx8bG8tFHH5m6loJxfPL777/PmDFjqFWrFl27diU3N5f169fj5eVlGpd5s4YNG2Jra8vUqVOJj483jbt955137qubar169WjcuDFLly6lUaNGNGnShJiYGP755x8qVqxYYB0elsqVK1OlShWzeYjPnj1Lhw4dePnll822bdWqFX/++SedO3emVq1aWFhY0KxZM5o1a0ajRo346KOP+PLLL6latSrdu3fHzs6Of/75h2PHjtGkSROGDh36UM4hKSmJd999l6FDh9K4cWOqVq2Kg4MDsbGxbNq0iXPnzlGqVCkmT578QMfp3bs3K1asYNGiRVSpUoUuXbqgKArLly8nIiKCHj160KdPH9P2ffv25auvvmLIkCFs2bKFoKAgTp8+zd9//023bt1YuHDhg546wcHB/Pvvv/zvf//jww8/5Ntvv6VVq1Z4eXmRlpbG4cOH2blzJ4qiMGzYsPs+TnGcy/0IDg7m999/55VXXqFKlSo899xzVKhQgZycHM6fP8/27dvx8PAgLCzsgY/1xRdfMGvWrALXDR482Kx3wPLly4mMjARuJNVatWoV8fHx1KtXjzfeeOOejhkcHMykSZP44IMPqF69Ol26dMHW1pZ///2X8PBwGjRo8ECfqxBCPDQlmuNaCCEeU+fPn1e///57tUuXLmqFChVUBwcH1dLSUvX09FTbtWunzp07V9Xr9fn2y8jIUCdMmKBWqVJFtba2Vu3t7dXGjRur8+fPL/A4BoNBnTRpklquXDnV0tJS9fHxUYcOHaqmpaUVOO2SqqrqP//8oz7zzDOqnZ2daRqVvKlx8qZdKmhaloiICBVQ+/XrZ7Y8Pj5effPNN1U/Pz9Vp9Op5cqVU0eMGHHbOtxp6qc7TSV1u+PnTSWTmZmpfvLJJ6q/v79qZWWlBgQEqGPGjClwDt+YmBi1V69eaqlSpVSNRlPgMRcsWKA2btxYtbe3V3U6nVq5cmV1/PjxakZGRr7ybnetVfXO1/RWmZmZ6rJly9Q333xTrVWrllqqVCnVwsJCdXR0VGvXrq1+/PHHamxsbL79uMM0Ureb/kiv16s//PCDWqdOHdXGxka1sbFRa9eurX7//fcFfjePHz+uPv/886qHh4dqa2ur1q5dW50xY8ZtP5fCTLt0s5SUFPWbb75RW7RooXp4eJid//Dhw/PN532nqYdu910rynO53Xf2fr8TR44cUfv166f6+vqqVlZWqouLi1qlShX1tddeyzct0f1Ou3Sn17Jly8zO+daXg4ODWq9ePfXLL78s8O/C3fz9999qy5YtVUdHR1Wn06mVKlVSP/vsM7O5moUQ4lGiqOoDDlQSQgghHqIWLVqwdevWBx5XK4QQQghxKxlDLIQQQgghhBDiqSQBsRBCCCGEEEKIp5IExEIIIYQQQgghnkoyhlgIIYQQQgghxFNJWoiFEEIIIYQQQjyVJCAWQgghhBBCCPFUkoBYCCGEEEIIIcRTSQJiIYQQQgghhBBPJQmIhRBCCCGEEEI8lSQgFkIIIYQQQgjxVJKAWAghhBBCCCHEU0kCYiGEEEIIIYQQTyUJiIUQQgghhBBCPJUkIBZCCCGEEEII8VSSgFgIIYQQQgghxFNJAmIhhBBCCCGEEE8lCYiFEEIIIYQQQjyVJCAWQgghhBBCCPFUkoBYCCGEeEwpioKiKPj5+ZGZmVngNv7+/iiKQm5ubjHXTgghhHj0SUAshBBCPObOnz/P1KlTS7oaQgghxGNHUVVVLelKCCGEEKLwFEXBxcXF1AJ89uxZ3N3dzbbx9/cnKiqKnJwcLCwsSqimQgghxKNJWoiFEEKIx5itrS2ffvopycnJjB07tqSrI4QQQjxWJCAWQgghHnNvv/02gYGB/Pzzz4SHh5d0dYQQQojHhgTEQgghxGPO0tKSL774gpycHIYPH17S1RFCCCEeGxIQCyGEEE+A7t2707BhQ5YtW8aOHTtKujpCCCHEY0ECYiGEEOIJMXnyZAA++OADJGemEEIIcXcSEAshhBBPiIYNG9K9e3f27t3LokWLSro6QgghxCNPAmIhhBDiCfLFF19gaWnJiBEjyM7OLunqCCGEEI80CYiFEEKIJ0hgYCBvvfUWERERfPfddyVdHSGEEOKRJgGxEEII8QDGjBmDoihs2bLlnvdp0aIFiqI8tDqNGjUKZ2dnJkyYQGpq6kM7jhBCCPG4k4BYCCGEuImiKHd9HTp0qKSreUeurq58/PHHJCQkEB8fX9LVEUIIIR5ZFiVdASGEEOJRNHr06Nuu8/T0LMaa3J/Bgwczffp0IiMjS7oqQgghxCNLAmIhhBCiAGPGjCnpKtzVnaZW0ul0REREFGNthBBCiMePdJkWQgghisjs2bOpVasWNjY2lCpVildeeYXo6Ojbbp+VlcXIkSMJCAhAp9MRGBjI2LFjJTu0EEIIUUwkIBZCCCGKwJQpU3jjjTeoUaMG7733HhUrVmTmzJk0atSIq1evFrhPjx49+P3333n++ef5v//7PxRFYcyYMfzvf/+7Y+uvEEIIIYqGdJkWQgghCnC7LtPW1tYMHz483/J//vmHPXv2UKtWLdOyIUOGMHXqVIYPH85vv/2Wb5+TJ09y/PhxXFxcAJgwYQItW7bk77//Zt68ebz88stFczJCCCGEKJCiyiNoIYQQwuRu0yE5OTmRmJhoej9mzBjGjh3LK6+8ki/oTUpKws/Pj6ysLBITE9HpdIBx2qWtW7cyZ86cfEHvli1baNmyJS1atGDz5s1Fc1JCCCGEKJB0mRZCCCEKoKpqga+bg+GbNW/ePN8yJycnatasSWZmJidPnrynfZo2bYqFhQWhoaEPfA5CCCGEuDMJiIUQQogiULp06QKX503RlJSUdE/7aLVa3NzcSE5OLtoKCiGEECIfCYiFEEKIIhATE1Pg8rws005OTve0j16vJz4+HkdHx6KtoBBCCCHykYBYCCGEKAJbt27NtywpKYlDhw5hbW1NpUqV7mmf7du3k5uba5acSwghhBAPhwTEQgghRBGYO3duvnG/Y8aMISkpiV69epkSat1s3LhxJCQkmN5nZmYyYsQIAAYMGPBwKyyEEEIImXZJCCGEKMjtpl0C6NKlCzVr1jRb1r59exo3bkyPHj0oU6YMO3bsYMeOHfj7+/PFF18UWE7lypWpUqUK3bt3x9LSkhUrVnD27Fk6dOggUy4JIYQQxUACYiGEEKIAY8eOve06f3//fAHxe++9R9euXZkyZQoLFy7E3t6e/v378/nnn1OqVKkCy1m4cCHjxo3jjz/+4PLly5QtW5YxY8YwfPjwu07/JIQQQogHJ/MQCyGEEEIIIYR4KkkLsRBCCFHM0tLSiI+PJyUlhZSUFFJTU83+n/fn5ORk0//z/pySkkJGRgYGg8H00uv1qKqKwWAwZbUuU6YMiqKg0WhML61Wi1arxd7eHgcHB9PL0dHR9Oeb1+X9Oe//jo6OuLu7Y2Ehtw9CCHEnmZmZZGdnl8ixrayssLa2LpFjP46khVgIIYQoAqqqkpKSwuXLl7ly5YrpdenSJS5fvmxaHh0dTWpqKoqiYGtra/ays7Mz+7OdnZ0pIHV0dDT9387OzhTcKopi+rNGo+HYsWMkJibyzDPPoNFo0Ov15ObmmoLn7OxsU5B9c/Cd90pPTze90tLSzN5nZWWh0Whwd3fH09OTMmXKULZsWby8vPDy8qJMmTKml6enJ1ZWViX9sQghRLHLzMwkwM+e6Fh9iRzf09OTiIgICYrvkQTEQgghxD1QVZWYmBjCw8MJDw/n1KlTREREmALdmJgYMjIysLa2xt3dHVdXVxwdHfH19aVMmTJ4eXnh7e2Nr68vfn5+lCpVCq1WW+T1zMnJYc2aNbRv3x5LS8siLTszM5MLFy4QFRXF+fPnuXTpkuncY2NjiYuLIy4ujmvXrmEwGHB1dTUFzt7e3gQFBVGhQgUqVKhAUFAQtra2RVo/IYR4FCQnJ+Pk5ETUAX8cHYp3Up/kFAN+dSJJSkqS+ezvkfR5EkIIIW6SlJTE6dOnTYFvWFgYp06d4syZM6SmpuLp6Ymfnx/+/v4EBgbSrFkzU6Dr7++Pq6srGo2G5ORktm/fTocOHUr6lIqMtbU1QUFBBAUF3XG77OxsLly4YHpdvHiRixcvsnPnTubPn8/58+dJTU3Fy8uLoKAggoODqVixoilY9vf3L/JgXgghipu9g4K9Q/EmSDQgCRkLSwJiIYQQT6WYmBgOHDjAsWPHOHXqFGFhYZw+fZqrV6/i7OxsasktX748ISEhVKlShWrVqt3zE3edTkdubi65ublP3ZhbKysrAgMDCQwMLHC9wWDgwoULHD16lBMnTnDq1ClWrVpFVFQUFy5cQFVV/Pz8qFixIhUrViQ4OJhatWpRrVo16QIohBCiSD1dv9BCCCGeStHR0Rw4cIADBw6wb98+Dhw4wJUrV/D19aVChQoEBgbSvXt3KleuTPXq1SlTpswDH9PKygpFUcjKynrqAuK70Wg0+Pn54efnR8eOHc3W5ebmcurUKY4dO8aJEyc4ffo0O3fuJCwsjPT0dCpVqkS9evWoW7cutWvXpkaNGhIkCyEeSXrVgL6YB6fqVUPxHvAJIL/QQgghnihXrlzJF/zGxMTg5+dHpUqVqFmzJoMGDaJJkya4ubk9tHooioK1tTWZmZnY2dk9tOM8aSwsLKhSpQpVqlQxW24wGDh58iQ7d+5k3759zJkzhxEjRpCamkpwcLApSK5Tpw41atTAxsamhM6geCxZsoStW7dy6NAhDh8+TEpKCn369GHevHkPXPbcuXPp27cvADNmzGDQoEEPXOaDiImJwcvLi7fffptp06aVaF2EEE8eCYiFEEI8ttLT09m1axc7duwwBb+xsbH4+flRuXJlatasyWuvvUaTJk1wdXUt9vrpdDoyMzOL/bhPIo1GYwqUX3vtNcAYJIeHh5s+/z/++IORI0eSkpJCxYoVqVevHg0aNKB58+ZUqlQJRXlyxtaNHz+ew4cPY29vj7e3N2FhYUVS7oULF3jnnXewt7cnNTW1SMp8UCtWrMBgMNC1a9eSrooQ4gkkAbEQQojHRl4AvHnzZjZt2sSBAwdwc3Ojdu3a1K5dm7feeovGjRvj7Oxc0lUFjEmosrKySroaTyyNRkNwcDDBwcGmVkyDwcDp06dNQfKsWbN4//33sbe3p3nz5oSEhNCiRYvHPkCeMmUK3t7elC9fnq1bt9KyZcsHLlNVVQYMGICbmxvdunXj66+/LoKaPrhly5bh5uZGs2bNSroqQhSKARUDxdtnuriP9yQo3jzgQgghRCGkp6ezceNGRo4cSaNGjXB2duall17iyJEjdOvWjdDQUC5dusTq1asZN24cHTp0eGSCYcDUZVoUH41GQ8WKFRk4cCA//fQTe/bsISEhgdmzZ+Pj48OcOXOoU6cOpUqV4oUXXuDHH3/k5MmTPG6zULZs2ZKgoKAiDeqnTZvGpk2bmDlz5n1389+8eTOKovDhhx9y4MABOnfujKurK05OTvzvf/8jJiYGgBMnTtC7d29KlSqFk5MTHTt25Pz58/nKS0pKYtOmTTz//PP5pinbvn07Xbt2JTAw0DTdWZ06dRgxYsR91V0I8XSSgFgIIcQjo6AAuE+fPhw+fJiuXbty8OBBLl++zKpVqxg6dChVqlRBo3l0f8qky/Sjwdramvbt2zNlyhT+++8/4uPjmTVrFmXLlmXWrFnUqlXrsQ+QH9TJkycZPnw477777gO1xB48eBCA8PBwmjVrhqWlJQMHDsTHx4elS5cyaNAgVq5cSYMGDUhLS6Nfv34EBQWxevVq07jlm61evZrs7Gy6detmtvzzzz+nWbNmHDhwgFatWvH+++/TuXNncnJy+Pfff++7/kIUJUMJ/ScKR7pMCyGEKFGnTp1i5cqVrFixgr179+Li4kK9evXo0qULv/zyC5UrV36kg947sba2JiEhoaSrIW5ha2tLhw4dTHNEp6ens3nzZtavX8/MmTMZMmQIDg4OtGnThi5duvDss8/i5ORUwrV+eHJzc3n55Zfx9fXl888/f6Cy8gLi/fv3s2fPHqpWrQrAp59+iq+vL2vXruXAgQNs2LCBBg0aAJCVlUVgYCDbtm0jMzPTLGv4smXLsLOzo02bNqZlMTExjBo1imbNmrF+/XqsrKzM6hAXF/dA5yCEeLpIQCyEEKJY5ebmsnPnTlauXMny5cu5ePEi9erV47nnnuPHH3985Ft9C0NaiB8PBQXIGzZsYNWqVXz88ce89NJLNG3alC5duvD888/j7+9fshUuYp999hmhoaHs2LHjgbNz5wXEs2fPNgXDAI6OjgQEBHDo0CEmT55sCobB+PckKCiIS5cukZaWZgqIMzMzWbt2Le3atTMLksPCwtDr9VSsWDFfMAzg7u7+QOcghHi6SEAshBDioUtOTmbt2rWsWLGC1atXo9FoaNasGZ988gndunV7pMb9FiVJqvV4srW1pVOnTnTq1AmAo0ePsnDhQubOncv7779PhQoV6NKlC507d6Zu3bqP9QOcvXv38vnnn/PBBx/QsGHDByorLS2N8PBwypUrZ9aimycqKgpXV1deeOGFAtc5ODiYTYW2bt06UlNT82WXrlKlCk5OTsyYMYOYmBh69erFs88+i4uLywPVX4iipldV9MU8/KK4j/ckeHz/BRdCCPFIi4yM5LvvvqN169a4u7vz8ccfY2try8KFC4mNjWX58uW88sorT2wwDDcCYoNBxnQ9zqpVq8b48ePZu3cvly9f5q233uLgwYO0atWKMmXKMGjQIFatWkV6enpJV7VQ8rpKV6hQgXHjxj1weYcPH8ZgMNC6det86yIjI0lISKBFixZYWJi3xyQlJREZGUmtWrXMli9btgwrKytTy30ed3d3duzYQffu3dmwYQO9evWiVKlSdOjQgdDQ0Ac+DyHE00UCYiGEEEXmyJEjjBw5kqpVqxIUFMTcuXN55plnOHDgAGfOnGHGjBk8++yz+W6In1Q6nQ5AWomfIB4eHrz99tv8888/xMXF8dNPP5Gdnc2bb76Jq6srHTt25Lfffnssxo6npqYSHh7OyZMnsba2RlEU02vs2LEAvPrqqyiKwnvvvXfX8vK6S9etWzffugMHDtx23cGDB1FVldq1a5uW6fV6Vq1aRUhISIHjt6tWrcrixYtJSEhg/fr1dO3alTVr1tCmTRv5+yYeGXnTLhX3SxTO03FHIoQQ4qE5f/488+fPZ86cOURERNCsWTPefPNNevTogYeHR0lXr0RpNBqsrKzIysp64LGZ4tGj0+no2rUrXbt2xWAwsH//fhYvXsyUKVN48803ad++PS+//DIdOnQwGwP7qNDpdAwcOLDAdQcPHiQ0NJQmTZpQsWLFe+pOnRcQ16lTJ9+6vIC4oHV5rbo3r9u2bRvx8fH5ukvfysrKitatW9O6dWsaNmzIf//9R0xMDL6+vnetrxBCgATEQggh7kNCQgJLlixh7ty57N69m/r16/PGG2/Qt2/fJ7oL9P2QxFpPB41GQ/369alfvz5fffUVhw4d4tdff+W9997jlVde4YUXXuCll16iWbNmJTLm+OzZs+Tk5BAYGIilpSUANjY2/PrrrwVuP2bMGEJDQ+nXrx+DBg26p2McPHgQKysrs2RaefIC4ptbgW/e79Z1S5cuRaPR0LlzZ7NtQ0NDcXR0JDAw0Gx5Xku3j48P3t7e91RfIR42Ayr6Ym6xlRbiwpOAWAghxD3JzMxkzZo1zJkzhzVr1hAUFMT//vc/5s6di5+fX0lX75ElibWeTjVr1uT7779n2rRprF+/ntmzZ9O1a1fs7Ozo3bs3L7/8MtWqVbvv8pcvX87y5csBiI6OBmD37t30798fMI6z/frrr03bt2rViqioKCIiIh5KluysrCxOnDhB9erVC8z8fPDgQfz8/ArMAH3w4EHs7OwIDg42LVu+fDmNGjWidOnSZttOmzaN2bNnU79+fapUqUKpUqWIiIhg5cqVAMycOfOxTnImhCh+EhALIYS4LYPBwLZt25g3bx6LFy/G0dGRTp06sWfPnnwJcETBpIX46abRaHj22Wd59tlnycrKYsmSJcybN4/69etTrlw5+vXrR69evfDx8SlUuYcOHWL27Nlmy86dO8e5c+cA8PPzMwuIH7Zjx46Rk5NTYJfoqKgo4uLiaNasWb516enphIeH06BBA1Mgu2/fPi5evMiQIUPybd+5c2dyc3PZu3cvixcvJjMzEy8vL3r37s2wYcMICgoq+pMTQjzRFFWV3NxCCCHMnThxgtmzZ/PHH3+QlpbGc889R//+/WnTpo20vhTS8ePHyc3NpUaNGsVyvJycHNasWUP79u1NXWPFo+fatWvMmTOHRYsWsW/fPho1akTfvn3p0aMHDg4OJV29EvXxxx8zceJEzp07R0BAQElXR4hCS05OxsnJibNhnjg4FO9vZkqKgcDgaJKSknB0dCzWYz+u5K5GCCEEYOzyOH/+fJo0aUKtWrU4fPgwX3zxBdHR0SxYsIBnn31WguH7IF2mRUFcXV1577332LVrF6dPn6Zp06Z89dVXlClThtdff/2pnj5o2bJl1KhRQ4JhIUSxkDsbIYR4yp0+fZoPP/wQLy8vRowYQfPmzYmMjGTt2rW89NJLpqmDxP2xtraWLtPijvz9/Rk/fjxhYWGsXLmSuLg4GjVqRL169Zg5c+ZjN7/xgzp58iSHDh0q6WoI8cD0qloiL1E4EhALIcRTKDc3l6VLl9KqVSuqVKnC0aNH+f3334mIiGDChAmUKVOmpKv4xCjsGOLcHD0Htpzk4LYw9HrDQ6lT0rVUdq09QsTJyw+lfHH/QkJC+Ouvv7hw4QLPP/88n3/+OWXKlOGdd94hLCyspKsnhBBPHEmqJYQQT5HY2FhmzJjB9OnTAejVqxezZs0qdEIfce/yukyrqoqiKHfcVq838OnLP3JoRzgA9VtVYcys1+66X2FEn4/n3Q5fk5yQBsC7X77Ic70bFVn5omi4u7szatQoRo4cyfr16/n++++pUaMGTZo0YfDgwXTs2BGtVlvS1RRCiMeetBALIcRTYN++fbz88sv4+PiwcuVKJkyYQFRUFF9//bUEww+ZTqfDYDCQk5Nz123PHLlgCoYB9m48TmTYlSKtz9oFu0lNzjC9/2PK2iItXxStvCzVq1at4syZM9SoUYPXX3+dgIAAJk2aRHx8fElXUQhxG4YSeonCkYBYCCGeULm5uSxYsIB69erRokULcnNz2blzJ3v27KF///5YWEgnoeJgYWGBVqu9p27T1rb5528taNmDsLa1Im+CCUVRirx88fD4+PjwzTffcP78eT799FMWLVpE2bJleeWVVzh+/HhJV08IIR5LEhALIcQTJjMzk59++omgoCA+/PBD2rdvz/nz51mwYAF169Yt6eo9dRRFuedM034Vy/C/N0JM73u/9xxl/NyLtD4d+zYhsIo3ADobS/7v8x5FWr54+KysrHj11Vc5cOAAmzdvJikpidq1a5vmCBdCPBr0qCXyEoUjzQNCCPGESElJ4ccff2Ty5Mk4ODgwZMgQ3njjDayspAWwpBUmsdagkV3o/mYrFEXBydW+yOti72TLt6s/IO5KIo6u9ljbyPfjcdawYUP++usvzpw5w/jx42nZsiX169fnk08+oXXr1kU6/lwIIZ5E0kIshBCPuatXrzJy5Eh8fHyYN28ekyZN4tSpUwwePFiC4UdEYecidnZzeCjBcB6NRkOpsq4SDD9Bypcvz6xZszh37hzVq1fnhRdeoG7duixduhSDQUYVCiHE7UhALIQQj6kLFy4wePBg/Pz82LhxI7Nnz+bQoUP0799fss8+Ygo79ZIQ98vT05Np06YRGRnJc889x5tvvkmlSpWYNWvWPSV2E0IUHb1aMi9ROBIQCyHEYyYsLIx+/fpRvnx5Tp48yZo1a9i9ezedO3dGo5F/1h9FhW0hFuJBOTs7M2HCBCIiIhg4cCCjR48mICCAadOmkZ6eXtLVE0KIR4bcOQkhxGPiwIEDdOvWjRo1apCcnMzu3btZv349LVq0KOmqibu4uYU4JTGdzIzsEq6ReFrY2try0UcfcfbsWT799FOmT5+Oj48P48ePJzExsaSrJ8QTTaZdejxIQCyEEI+448eP8/zzz9O0aVPs7e05duwYy5Yto3bt2iVdNXGPrK2tyczMZOrQBfSoOpzulT5i/SLJBiyKj4WFBa+//jonTpxg+vTpLFu2DF9fX8aPH09aWlpJV08IIUqMBMRCCPGIioqKom/fvtSpUwdHR0dOnTrFnDlzCAoKKumqPbGuXklkyU+b+Gf+brKzcousXGtra9LS0vl3wW4A9LkGvv1oAZnp0o1aFC+NRkPPnj05cOAAc+fO5c8//6RcuXL8+OOPMsZYiCJmQEFfzC8Dklm+sCQgFkKIR0xcXBxDhgwhODiYa9eusX//fv744w98fHxKumpPtMS4FN5p/zW/f7GKacMXMv7134usbJ1Oh6oa0Fre+NnV5xqKNOgWorA6d+7MkSNHmDBhApMmTSI4OJiFCxdKVmohxFNFAmIhhHhEpKWlMW7cOMqVK8e+fftYv349f//9N1WrVi3pqj0VDm47RVJ8KqrBmKJz36YTpCQWTVdSnU6HoiiUq1rGtKz1C/VxdLErkvKFuF8ajYZBgwYRHh7O66+/zuDBg6lTpw7r168v6aoJIUSxsCjpCgghxNMuJyeHGTNmMGbMGDw9PZk3bx6dOnUq6Wo9ddzLOJn+rChgbavD2lZXJGUrioJOp2P4T/04c/AytvbW1G4eXCRlC1EUrKys+Oijj3jrrbcYN24c3bt3p06dOnz55ZfUrVu3pKsnxGPJoBpfxX1MUTjSQiyEECXEYDCwYMECKlasyNdff80XX3zBoUOHJBguIdUbBtHnvWfRWVvi7O7AJz8PwNKq6J4b63Q6UAw0e742dVtWlimyxCPJ3t6eSZMmcebMGQIDA2nWrBndu3cnPDy8pKsmhBAPhfwaCyFEMVNVlX///ZfatWszZMgQ3nzzTcLCwnjllVckSCphL73fjuXhXzH/wDjqNCvaFtxHeS7i3euO8mnfn5n8/h/ERyeVdHXEI8DDw4MZM2Zw9OhRAKpXr85rr73G5cuXS7hmQjw+ijuhVt5LFI7ceQkhRDE6deoUbdu2pWfPnrRr144zZ84wdOhQrKysSrpq4iHLm3rpUXPq8HnGvfo7+7eeZNOyA4zq/0uB22Vn5bBp6T7WLfyPtJSMYq6lKCmBgYEsWbKEXbt2ERkZSfny5fnss88eye+yEELcDwmIhRCiGKSmpjJs2DBq1qxJ6dKlOX36NBMnTsTe3r6kqyaKiU6neySDiFOhUaiqCioY9AbOnbhETrZ59muDwcCol37kq3fmMOX9P3i/0zdkZWSXUI1FSahduzbr1q1j2bJlLFiwgMqVK7NmzZqSrpYQQjwwCYiFEOIhUlWVxYsXU7FiRdatW8f69euZN28eHh4eJV01Ucwe1S7TwbX8UBQFFNBoFcpVLptv7PTliDgO7zpten8+PJoT+84Vd1XFI+DZZ5/l6NGjvPLKK/Tq1YtOnToRGRlZ0tUS4pEkXaYfDxIQCyHEQxIWFkbr1q158803GTp0KAcOHKBJkyYlXS1xi/2bT/DtRwtY8uOGfC2jRelBW4h3/XuECW/MZPGPG40tukWkQg1fPp3xCvVaVKJVt3qMm/1avm3snW3QaMxvspzcpHfD08rCwoKRI0dy4sQJLC0tqVy5snSjFkI8thS1KH9VhRBCkJqaymeffcZ3331H9+7dmTJlCu7u7iVdLVGA0G1hfNzrBzRaDarBwLO9GvHuV71ITkgjLDQKLz83vANLF8mxrl27xt69e3nuuedMy3Jzc8nKyiIrK4vc3Nzbvs6fvkL40fNY6rRY6rQ4e9jjXsbJFBirqmr6c15QYm1tbWz5xTjtU95Lq9ViaWmJVqvFwsICCwsLkuPTiY9JwsPTFe9ypbGwsDCtt7S0xNrami3LDjL948Xo9QZeer8dvd57DiEA1q1bx7vvvktWVhbfffcdHTp0KOkqCVGikpOTcXJyYscxL+wdirf9MTXFQJOql0lKSsLR0bFYj/24knmIhRCiiOR1j37vvfcoXbo0GzZsoHHjxiVdLXEH+7ecRKvVoNcbAPhv3VF6/F8b3us0heSENBRFYei3L9GyS51ClZuTk0NWVhaZmZmmV2pqKllZWezcudO0LDc3F0VRsLKywtLS0hSg5r3ygtKwAxe4ejmZnMxccrL0GHJVxvz+Wr6AF4w3YocPH6ZWrVpotVrgRsCsqmqBwfZ/G49haa0lIvwiSSm+OLramtbn5OSQk5MDtvDWj8+i01ljY2PNoUOHsLa2RqfTYW1tbXrpdDrJlv6Uadu2LUePHuXLL7+kd+/eNGvWjGnTphEQEFDSVRNCiLuSgFgIIYrAyZMnefvttzly5AgjR45k8ODBEhQ8BvwqljEFwxqtBv9KXqyZt4vUZGMWZVVVmTv5nwID4uzsbFJTU0lLSyM1NdXsz3q9Ho1GYxYs5mUS9/T0xN7e3mx5XjB7O3PObObofxdM720drG87Dt3BwYHDhw/j4uKCpaXlXa/Bn19v57/1Z8jrLxZzKptJC94220av1+cL8DMzM8nIyCAhIcH0PjvbmGhLp9Nhb29v9rKzs8POzk7+XjyhLCws+Pjjj+nXrx/vvvsuVapUYdiwYQwbNgxra+uSrp4QJaIkxvTKGOLCk4BYCCEeQF736GnTpvHCCy+waNEi6R79GGn9Qn2iz8ezdcUBfAJLM/jLF/l73k7yokMLSy2uXnZcvnw5X9CbnZ2NTqfDzs4Oe3t7nJ2dKVu2rCnYtbS0zBfoXr58GXd3d5ycnApVzw+nvsRbbSaRlpKJRqvwwTe9i+wauJZyQtEoqHoVjVaDW+n8ddNqtdja2mJra3vHsgwGA1lZWaSnp5uu1bVr17hw4QKpqamoqoqtra0pQL45YL65i/eTbsmSJWzdupVDhw5x+PBhUlJS6NOnD/Pmzbun/ePj41m2bBmrV6/m6NGjXLp0CSsrK6pVq8aAAQMYMGBAiT14KFu2LEuWLGHDhg288847TJgwgWeffZZVq1aVSH2EEOJuJCAWQoj7tHHjRgYMGICbmxsbN26U7tGPIY1GQ9+hHeg7tAO5ubkkJSVRp20AKdk1sXG2wMXTDq1WS3h4uClw8/DwMP35Xlpgb5aXWKuwAXEpLxcWHp7A1cuJOHs4YG1TdPNWv/z+c0SEXebkgUgCq5Rl0MfP33dZGo0GGxsbbGxscHNzM1unqioZGRlmDxWio6NJS0sjLS0NCwsLnJ2dcXJywtnZGWdnZ+zs7J7IIHn8+PEcPnwYe3t7vL29CQsLK9T+ixcv5s0338TT05OQkBB8fX2JiYlh6dKlDBo0iDVr1rBkyZISvXatW7fm3XffZdq0aWzZsoWePXvyww8/yANDIcQjRwJiIYQopJSUFIYOHcrcuXMZNmwYn3zyiWmspng85AW/iYmJJCYmkpSUREpKCjqdDmdnZ1p2qochR4OXd2lc3JyLLLCwtra+70y8Wgstnr5ud9+wkJxc7Zm8ZDCqqhb6PA0Gwz23RCqKcttWZr1eT0pKiukzOXv2LMnJyWg0GlOAnPd/e3v7xz5InjJlCt7e3pQvX56tW7fSsmXLQu1foUIFli9fTseOHc3+7fn888+pX78+S5cu5a+//qJ79+5FXfVCWbFiBbGxsRw+fJiBAwdSqVIlfvnlF7p27Vqi9RKiuOjRoC/mSX30xXq0J4MExEIIUQibNm1iwIABeHh4sGfPHqpWrVrSVRJ3oaoqKSkpxMXFkZCQQGJiIqmpqabg19nZGS8vL5ydnR96t928gHj9X/uIDLtC7WYVqdO04kM73r04dfg8kwbP5drVZJ7r+Qyvfdr5rkGuXm9g2kd/smHJXpzdHfjk5wFUrlvuvuug1WpNn4Wfnx9gDLZTUlJMDy0iIiJISkpCURRTgOzm5oabmxs6ne6+j10SChsA3yokJKTA5Z6enrzxxht88sknbNmypVAB8ebNmwkJCeGDDz6gV69efPbZZ2zfvh29Xk/r1q2ZPn06pUuX5sSJE4wfP54NGzaQlZVF06ZNmT59Or6+vmblJSUlsWnTJnr37k25cuXYuHEjP/zwAwMGDOCHH35Ap9MRFhbGpUuXsLe3x8/Pj7Zt2zJx4sQHujZCCFFYEhALIcQ9SE1N5aOPPmL27Nl89NFHjBw5UlqFH1E3B8Dx8fHExcWh1+txdXXF1dWVsmXL4uTkhI2NzUM5fsTJy4QdiqJCdV8Cq5Q1W6fT6Ti67wy/jdqMRqth6W/bGD1jAM+0qlI0xw6PZvPfB3ELhOysnHvq0j3hrVnERSehGlRWzNpO5ToBNOtY8477bF1+gHUL/wMg4WoyX7w9mzl7xhbFKZjktQ47OTndNkgOCwsjJSUFR0dH3NzccHd3x93d3ZTA7GmUd+6F7c5/8OBBAMLDw2nWrBnt2rVj4MCB/PPPPyxdupTs7GxeffVV+vTpQ0hICP369WPz5s2sXr2avn37smXLFrPyVq9eTXZ2Nt26dQOMn+c777xDbGws8+fP5+LFizRv3pyePXsSExPDvn37+PfffyUgFk8UVVUwqMXbo0Ut5uM9CSQgFkKIu9iyZQv9+/fHzc1NWoUfQXcKgN3d3QkMDMTZ2blIkgxFX7jGsf3n8A/ypHxV73zr920+yeiBM1ANxu7Ho355hWfa3Pi+WFtbExeTAIBBb0CjVdi19miRBMSXo+J4r8cPKFoYMKouXw9fzOjv+91xH1VVuRaTjGowJhFTFIWrVxLveqxrscnGRFwGFdWgkng15YHrfy8KCpKzsrJMn/vNAbK7u7spSH5aAuTc3Fxmz54NYDbf9b3IC4j3799v9u/cp59+iq+vL2vXruXAgQNs2LCBBg0aAMZrHxgYyLZt28jMzDTLJr1s2TLs7Oxo06aNaVlMTAwTJ06kUaNG/N///R9jxozBzc2N77//Hjc3N+Li4h7o/IUQ4n5IQCyEELeRmprKsGHDmDVrFkOHDuXTTz+VVuFHRHp6OjExMcTFxT3UAPhabDKJcSn4VfDkXNgVPuz5A9lZuaDAh1++SKuu5tMx/T1vB1yfvkhFZdXcHWYBsU6nw9HNBo1Wg0FvQDWAl3/B0ycV1oEdp8nOysVSpzW9z8nOxdLq9j/1iqIQ0rUO65fsA0XBUmdBwzZ3D84bt6/B/G/XkpmWhapCu5caFck53A+dToeXlxdeXl7AnQNkDw8P3N3dsbB4Mm9/hg8fzrFjx2jXrh3PPvtsofbNC4hnz55t9tDP0dGRgIAADh06xOTJk03BMBivfVBQEJcuXSItLc0UEGdmZrJ27VratWtnFiSHhYWh1+sJDg5myJAhdOnShf79+1OpUiVmzJhB586dH+T0hRDivjyZvwhCCPGAtm7dSr9+/XB1deW///6jWrVqJV2lp5qqqiQkJBAdHU1MTAwpKSmm1r9y5crh4uJS5NPMbFq2n8nv/4FBr1KuSlkCq/uSm2u4XiFYMmNLvoDYycUeRQOqHjQaBScXO7P11tbWuJVxoHyVskSejsYnsBQd+jS8p/okxqWwZoGxm3L7Xs/g7O5gtt7L3zzhlmspByws7/4Ax9LaChTjtavWoPw9Je7y9HXjrXHd2bfpBNUbBdH+pUcnw3pBAXLeg5Njx46RkZGBh4cHnp6eeHp6PjFz5E6dOpXJkydTsWJF5syZU6h909LSCA8Pp1y5cmYtunmioqJwdXXlhRdeKHCdg4ODWVbxdevWkZqami95VpUqVXBycmLGjBnExMTQq1cvli5dyty5c3n55Zfp2LEj33//Pa6uroWqvxCPKpmH+PEgAbEQQtwkLS2NYcOG8fvvv/Phhx8yevRoaRUuIbm5uVy9etUUBBsMBkqXLk2FChUoVapUocdIFtZPo5di0Bube8+duISju4NpfmKNRsHeKf8Y5L4ftiP8yHmiwqPx8vdgwLCOZuutra3Jysoi/NhFAM6euMzYN2bx9Z9vFViH7KwcLK0syM7KZUj374i9aOxuvX7JPn76dyg66xvXoE7jCgx4/1lWXx/bO2Jy77smCLtyPp41f+w2vT+w7RThRy4QXNPvjvvN/XoNC6atM+6zNYw6zSs9lAzYRUGn01G2bFnKli2Lqqqm6Z4uXLjAkSNHcHJyMgXHjo6Oj2UG62+//ZYhQ4ZQqVIlNm3aVOipjQ4fPozBYKB169b51kVGRpKQkEC3bt3ytawnJSURGRlJ06ZNzZYvW7YMKysrOnToYLbc3d2dHTt2MHbsWNasWcPKlSuxsLCgbdu2LFq0iIkTJ5paizt16lSocxBCiPslAbEQQly3d+9eXnzxRZydndm9ezc1atQo6So9dTIyMoiJiSE6OpqrV69iY2ODp6cndevWxdXVtchbge9ErzeY/qwA1euXIyUpk7MnLuHkZs9bo7vk28fd05kf//2IzPRsrG2t8gVXOp0OVTVgqdOSk2WcHOP4/oh8Ux5lZWQz4fXf2bfpBG6lneg/ohPR56+Z1kdfuEZE2OV8gWuPV1vQtX9j1qxZQ7lgTxKupjB/2jpSktJp37sh1Z8pXwRXBpb9usX054y0LLasOMCL77S94z452bksnr6BcycuUad5JZ7r3bDYg09FUXBwcMDBwYGgoCCysrJM37fTp09jZWVlCo7d3Nwei4dhX3/9NUOHDqVq1aps3LiRUqVKFbqMvO7SdevWzbfuwIEDt1138OBBVFWldu3apmV6vZ5Vq1YREhJS4HzbVatWZfHixWRnZ7Nt2zZ++eUXFi9ezJ49e7hw4QI//fQTL730El26dGH69OnY29sX+nyEeFToVQ16tZinXVKL9XBPBAmIhRBPPYPBwDfffMOoUaMYPHgwEyZMeCxuhJ8U6enpXLx4kStXrpCUlISLiwuenp5UqVKlROecHTjieb77ZDGoUMbfg44vN+bF/2tDSmI6do42aLXGm5zU5HQ2LjuIi7s9TdvXQFEUbOwKngbI0tISg0HF1sGSpKwbs0Vmpmeb7fP3nB3s33wSMGZxXjR9nTGJlarC9evhVjp/sHEzVVX5pO9PRJ2ORlVhxz+Hmf7PUHzLlzZtU8bXjY4vNeLvebsAaNq+OhWq+9z12ji62JGVkYOqqhgMKo6udw9afv98JSt+2wqo7FxzGK2FhrY9n7nrfg+TTqfD19cXX19f9Ho9cXFxREdHExoaSk5ODqVLl6Zs2bKULl36kfw3YeLEiXz88cfUrFmT9evXF7plOE9eQFynTp186/IC4oLWhYaG5lu3bds24uPj7zrXsJWVFa1bt6Z169Y0bNiQ//77j6tXrzJkyBCef/55evXqRe3atVm8eLE8nBRCPFQSEAshnmpxcXH07duXw4cPs3z5ctq2vXMrlyga2dnZXL58mYsXL3Lt2jU8PDwICAigdOnSD21O2W1/H+LInjNUqO5Lm+717hpot3+pMTWbVCA+JpkKNXzQWRszFRsMKqE7wvEpXxprWyv6NZ1AVmYOACvn7OTrhW/ftkxFUVBULbaOViTFZZqWXzgbaxaIJsWnGgNgvTHgTLmWbszVdVOdYy5ew6OM822PlZGWTUTYFdN7vUHl5IEIs4AY4K2xXen4ciP0uQYCgsvc0wOID6e+xLhXfyMlMZ1G7arT5oX6d90ndFuYMaDH2OX8yK7TJR4Q30yr1VK6dGlKly5N9erVSUpKIjo6mhMnThAaGoqXlxc+Pj64ubkV+0Oas2fPkpOTQ2BgoGmowLhx4xg1ahR16tRh3bp1DzTu9uDBg1hZWRWYQT8vIL65Ffjm/W5dt3TpUjQaTb4EWaGhoTg6OhIYGGi2PDw8nJMnT+Lj44O3tzFze/ny5dm9ezfvv/8+DRs2ZPLkybzxxhuPZXd28XQzoGCgeFuIDUgTcWFJQCyEeGpt376dnj17UqlSJQ4dOoSHR9Fk+xUF0+v1xMTEcPHiRWJiYnB0dMTHx4d69eo9tCA4z/ole/lm6J9otRpWz9tF8rVUur8ectf9vPw9zLJAR4Rd5oOe08lIy8LCQkv9lpVMwTDA8QORJMan4ux2+xZTCwtLbJ10ZsFtRnq22TYh3eqy8vetZF3vtt225zMs+m2b2TaZt+xzKxs7K0r7uHL1cgKG69Mq+VXwZM7kNZw9dpFaTSrS+ZVmKIqCX5DnXa6EuWrPlOfPwxPIycpFZ3NvUxpVrO3PhTMxGAzGID+oum+hjlmcFEXB2dkZZ2dnKlasSEJCAhcvXmTfvn1oNBq8vb3x9vYusEvwvVi+fDnLly8HIDo6GoDdu3fTv39/wDjW9uuvvzZt36pVK6KiooiIiMDf35/Zs2czatQotFotTZs2Zdq0afmO4e/vbyrvTrKysjhx4gTVq1cvcHqqgwcP4ufnV2Dr88GDB7GzsyM4ONjs3Bo1akTp0uYPXqZNm8bs2bOpX78+VapUoVSpUkRERLBy5UoAZs6caTYkwsLCgmnTptGqVSsGDRrEhg0b+O2333B2dr7rOQkhRGFIQCyEeOro9Xo+//xzJk6cyPDhwxk5cmSxjk19mqiqSnx8PBcvXuTSpUvodDq8vb2pXLnyQx0bePVKIl++M4eoU1d4pm01UlMzQbkxLnjXumP3FBDHXkrgy/fmcv50DI2erU6uQSUr0xiI6vV6Th0+b9wwL7hVVbOxxwVxdXPCye1GQi5bex3lq3iZbeMf7MX0DcM5uC0ML38PajcL5mpcCptXGLuoBlXzpvoz5QnddYYToVFUqulL7cZBZmUoisLnc15nxoSVJCek0WVAM7atOsTy37aiqip7N57AwkpLx5eb3PU6FESj0dxzMAzwxtj/YWmp5czRi9QLqUzH/k3vvtMjQFEUXF1dcXV1pWrVqly9epWLFy+yfft27OzsTMGxjU3+JGu3c+jQIdN8wXnOnTvHuXPnAPDz8zMLiG8VEREBGL+DU6dOLXCb5s2b31NAfOzYMXJycgrsEh0VFUVcXBzNmjXLty49PZ3w8HAaNGhg+vdz3759XLx4kSFDhuTbvnPnzuTm5rJ3714WL15MZmYmXl5e9O7dm2HDhhEUFJRvn7z96tSpQ8+ePalZsyaLFy+mXr16dz0vIYS4V4qa139JCCGeAtHR0fTu3ZszZ84wb968Am/0xINLTk7mwoULXLp0Cb1eT9myZfH29sbFxaVYuj1+2vcnDm47hUFvQFGgepOKHNlzFtWgotEoPNuzAYM/73HXcj5+6UcO7z5jKqdinXKEH71ofK9RqFTDhxOHLpjtM+rHfjRsffu5fA8fPkxaShY7lp0FoMfrLfGvcPcWWoPBwJE958jOzKFmo/Ls2nCcSR8uRFGMY4uHTupBSKda5OTksGbNGtq3b58vE/fbz33FuROXAFA0Ck071CC4biA7/z2Kb/lSDBzWATuHew/snma5ublcuXKFixcvcvXqVdzc3PD29sbLy+uhZ0B/VH388cdMnDiRc+fOERAQUKRl6/V6Pv74Y7777jvGjx/PkCFDpAu1eGQlJyfj5OTEyiOB2DkUb/6BtBQ9naqfJSkpCUdHx2I99uNKWoiFEE+N9evX07t3b+rXr8+hQ4dkrssiptfruXz5MpGRkSQlJVGmTBlq1KiBh4dHsbfAX464iuF6S62i0eBZ1oXS3esTuuMUlWr7M3D48/dUzqVbyinr60pcdBJx0UnY2unoN7Q9w176mZuHbOlzC24hzsrINmaftrYmNzeXjyb3uuOxMzOy2bryIKpBpdnztbC1t6ZmwxtZolf/uQe4ceiV83cT0qnWHcusXNefiLDLqAYV1aCitbLkl89XAXAyNIrkxAxGfv/yHcsQRhYWFvj4+ODj40NmZiaXLl0iIiKCo0eP4u3tjb+//1PXvXfZsmXUqFGjyINhMI7xnjRpEiEhIQwYMICNGzcyZ84cs/mPhRDifkhALIR44uXm5jJq1CimTp3K2LFj+eCDD6SLdBFKSUkhKiqK8+fPo9Pp8Pf3p0GDBgWORywuLbvW5Y8pa9FoNRgMBpo9X4vazYLvvuOt5XSpw8IfNqDRalANKq2712fwxJ6mhFbWtla8+EYIf/64CYDgmr7Ub5n/ODvXHOLLt2aSnZVLxzeeoWbrcnc8rj5Xz7Ae3xN+vUv2ipnb+HbVB1jpbvxsx1xKRM1rIVMUoi8kMPK1mRw5FMHAT+qwY90xWnYwD5AHjeyMlc6S8CMXqN2sIgkJ6Wi1GvR6AwaDStihqEJfI1VVmT9tPVv/PoR3OQ/eGd8dFw+HQpdzL/S5es4cvYiDsy1eAY/OmH9ra2sCAwMJDAwkMTGRqKgoduzYgb29PQEBAZQtWzbfHL5PopMnTz70Yzz77LOEhobSq1cvqlevzsKFC2nS5P66/QvxsJXMtEv31/n34sWLjBo1irVr1xIfH0+ZMmXo0qULo0ePxsXF5a77z5o1iwEDBtxxG41Gg16vv+M2JeHJ/9dZCPFUu3DhAi+++CLR0dFs3ryZBg0alHSVnggGg4Ho6GgiIiK4du0aXl5e1K9fv0Qy8Bakz5DnKOPnzpljF/AuV4qganefSqggfT9oR9kADy6ciaF+SGWq1jdmyM1Iz2LD0v1UrOlLv/efo1mHGqSlZBJcwxcLS/PucaqqMvndOWRn5QJwZMcZfGu4oqoqSQlp2DvY5NsnIuyKKRgGiAy7wukj56lS70YgnZNtLA9FAVUlJTWD/f+dxVJnvPmaOnYZzdvVMHv4o7O24tVPu5jeb//nCKvm7rpejGLWAn2vNvy1n3nfrgPgYsRVsjIXMGH2a4Uu526yMrIZ1uM7ToUag/ZBn3bhf/cwDry45SXjqly5MpcuXeLcuXMcO3YMHx8fAgICcHB4OA8LnialS5dmw4YNfPbZZ7Rt25ZPPvmEESNGyINOIe7T2bNnadSoEbGxsXTu3Jng4GD27t3Lt99+y9q1a9m5c+dde2PUrFmT0aNHF7hu+/btbNq0iXbt2j2M6j8wCYiFEE+s9evX07NnT1q2bMk///wjY2mKQFZWFlFRUURGRgLGTLZ169Z96FmiC0tRFCrU8OWXsctITkjj1/Er+Hz+W1SqU7iunBqNhjbdzacU2rnuKOPfmmN6P+Lbl2jW4fbzpBr0BrIybmSiTk/KQq/q+bDXj5w4GIW9ow1jf+lP5dr+pm2c3OyNgW7eswUVnN3Nk5Bl5QXE1+n16o3tAYNq7HZta2dttt3Jg5EkxKVSo2F5cnP1poRgKlCvZaXbnsft7N18o1VQNaiEH7lwh63v385/DpuCYYCZn6+k04BmWFo9mrcylpaW+Pv74+fnR0JCAhEREWzZsgU3NzfKlStH6dKlH4mHR48rjUbDmDFjaNmyJS+//DJbtmxh4cKFMhRGiPvw1ltvERsby7Rp03jnnXdMy99//32mTJnCJ598wk8//XTHMmrWrEnNmjULXNewYUMAXnut6B+WFgV5lCaEeOKoqsrUqVPp3Lkzn376KX/99ZcEww8oMTGRgwcPsm7dOq5evUq1atVo06YNFSpUeOSC4TyLp28gNTkDgKzMHGZ/tdq0Tp97/122Zk9ea/Z+xkTjGNzLUXGcOXEJg8F8DLHWQku3N1qZ3ltbW6NoVE4dNQaOqSmZTPt0qdk+Tq72WOgsrgfFCmgUYi8lmm1j52BzI7u1oqC10KJqNKjXW8l0Ogts7axJTkwnJTEdgDlT1vJ+9+8Z98Ys3u74Davn/3ejQAW2rDpU6OtxMfKq2Xtbe+vbbHlDxMnLfNDtW15t+Tn/zN99T8d5XIPHvCzVderUoU2bNri5uXH48GE2bNjAmTNnyMnJuXsh4raaN29OaGgoOTk51K1blxMnTpR0lYQwMc5DXPyvwjh79izr1q0jICCAt99+22zd2LFjsbOzY86cOaSmpt7XNTh27Bj//fcfZcuWpUOHDvdVxsP2aD5WFUKI+5SVlcWbb77JqlWrWL58OW3bti3pKj228qZMCg8P59q1a/j4+NC8efPH5uFCvmFUKiTGpzL61d8JP3KBcpW8GDvjFdw97z6X7LF9EezZeJyyAR43uipfl56ayR/frWfedxsAqNWoPJ/NeMWsG/Qrn3SmbsvKJMalULNZRTZv3Yi1nSVpSdmgqsTHJpuVmZ2VQ26OedCeEJfMxlWHOH3sEjUaBPDi6y34buwK0/pKtXw5GnreFCRn5ar88tUals7aCUDvN1qwaPom0/YxF67h7OGARqtg0Buzb7uVLvxnG3M+3uz93a6nwWBg5Ms/kRiXgsGgMm34Qvwret619b7Rc9UJruNP2IFIAAaO7PzItg7fjrW1NRUrViQoKIjo6GjOnTvHqVOn8Pf3JzAwEGvruz9MEPm5ubmxceNG/u///o9nnnmG+fPn07Fjx5KulhCPhc2bNwPQtm3bfMMOHBwcaNy4MevWrWPPnj20atWqoCLu6OeffwZg4MCBaLXFm3H7Xj1evyRCCHEHMTExdOnShaSkJHbv3k358oUfDymMgXB0dDSnT58mNTWVcuXKUadOnUe2Jfh2ur/Ziv/WHyM1KR0rnSUvfdCO2d+s5czxiwBEhl/h96/W3DXb89E9Z/mo14+m9+WrlTVbX79lJeZ9v8H0PnTXGQ7uCKf+Td2PFUXBr2IZos/HcXJfBIqqwc7RyhgQKwppKZnkZOeaAjx7Rxuq1CvH8QORxtZfrYbzkfH8OWMbikZh+bxdvPtZF9zKOBF/NQVLSy3Wtuafjwr8NWunqa1g/k9bsLKyQJ+RbdompFMtsjJziTobQ4XqPvR9t3APkFRVJSMt22yZpe7OtxaZ6dlcu+UBwPkzMXcNiHU2Vnz917ucO3EJB2c7PH0f3+zCGo0GLy8vvLy8uHbtGqdPn2b9+vX4+vpSvnx57OzsSrqKjx2tVsuPP/5I9erV6dGjB6NGjWLYsGGPbc8C8WQwoEFfzB1yDdfnHkhONv93VqfTFfg7furUKYDbzgUeFBTEunXrCA8PL3RAnJGRwbx589BoNAwaNKhQ+xYn6TItxFNMURTjjbqfH5mZmQVu4+/vj6Io5OYaW8UOHDiAoig888wzBW4/f/58U7kXLuQfS5iWloaVlRX29vZF2lXw4MGD1K5dGxcXF/bu3SvB8H0wGAxcuHCBzZs3c/jwYby8vGjTpg3BwcGPXTAM4FfBk5k7P+Xrpe8ya/doqtYPJDE+FdVgvFkw6NV8gVme7Kwcjvx3hvNnYlj62zazdWePX+ad8f+jYZvK9HmnDa+O6GQ27RLke0vC1WTeCpnA1Pf/YGy/n0hNzMTW4cZctaqKqVtznpjLiabWXoNBZc3ifaAxBqFo4Ldv/iX+agoAOTl6jh6IuNGFGtAWkGCoU78mppbrus0rojdA5NlYVBSuxaViKGR2UoPBfNwycNc5lW3sdFSq449Go6DRarDUWVCtwb39fdVaaAmq7vtYB8O3cnV1pUGDBjRv3pzc3Fw2bdrEgQMH8t3Minvz5ptv8s8//zB16lR69+5NRkbGQz/m/fyW3rrvnV6HDh166Ocgnjw+Pj44OTmZXhMnTixwu6SkJACcnAru3ZO3PDExsdB1WLRoEYmJibRr1w4fn/tLblkcpIVYCMH58+eZOnUqw4cPv+u2tWrVwsXFhf3795OcnJyv++ymTZtQFAVVVdm0aRP9+vUzW799+3ZycnJo1aoVlpaWFIVFixYxYMAA3nrrLSZNmiSZRgtJr9dz/vx5zpw5g6IolC9fHh8fn0eua1NOdi4zPlvGga1hVKjuy/9N7IGdo80d97F3sjXLzPzsC/XZs/EEYAzkmjxXDYCNKw6y9e/DlAv2pOuAZgzr9QNR4dEA+AWXMStTNag816M+7V+88VCo19utWPDDRgB8A0tTu7H5k/bd/xwm4XrwCnDtSgo2Dubf/6SEdFxL3fj7dHOXaUWBnLxxz9cD0MxM8wdK2Vm5KAaVvGfdpdztuJCUCZrrOxhU2vWsT++3QkhLycTd04kutUaZDhB7JYl1S/fTY1CLgi5lgbRaDd1fbcGSX7YA4OhqR+932txxH0VRGDf7df76ZTMpiek827MBXv7u93zMJ5WjoyN16tQhODiYM2fOsHXrVkqVKkVQUJAkiiqk5s2bs2fPHjp16kSTJk1YuXIlZcuWvfuOD6gwv6W3ul12XgBPzzs/ZBKPrpKcdunChQtm92j3+2BbvV7e/fS2+OWXXwB4/fXX7+vYxUUCYiGeci4uLiiKwsSJExk0aBDu7ne+MdVoNLRo0YJly5axdetWnn/+ebP1mzZtonXr1uzbt6/AgHjTJuMYxvsZh3Irg8HAqFGj+Pbbb/npp594+eWXH7jMp0lOTg4RERGcO3cOnU5HpUqV8PLyemQfKCz5cSN/z95h7NIdFYelzoL3v+lTqDKeaVWZHm+EsPBn45ipX79cQ3JSBnOnGqcN2rc1jJ3rj3HxejAMcOF0DBqNYmwNBeo0q5jvGtVqVJ4FP25GUeD8uVgW/LjJrPuxo+tNGaIVyE7PwdndFjQKCuDibo+Xn3mrZ7/3n+PbkUtABRcPRyrUC2DXxhOmMgIqeHL6xGXT9vb2OlLjUlGuVy36/DW0Oi36XGOSLztnGzzLuqC10GJrb41ebyA7W2/Wqhx1OrZQ1xNg4PCONGxTlYSrKdRsVP6uDykA7Bxt6Pth+0If62lgZ2dHjRo1qFixImfPnmX37t04OTlRoUIFPDw8pAvwPfLz82P37t307t2bOnXqsGLFioc67V5hf0tvNWbMmIdTMfHUcnR0vKecH3ktwHktxbfK661yuxbk2zlx4gS7du3C29ub9u0f7X/vH827HiFEsbG1teXTTz8lOTmZsWPH3tM+ecFsXnCbJzIykoiICFq1akWzZs3yrb95nwcNiFNSUujSpQuzZ89m48aNEgwXQk5ODmFhYaxbt46YmBhq1qxJixYt8Pb2fmSDYYDIU1dMraMGg8q5E5fuab/MjGx+Gbecj3p+z6IfN7Ltn8OmddmZuSyftd1s+4vn4szeW1hqmbr8Xbq/1oLXPunEqJ/75zvG+qUHQMnrzqywbPYOs/WN2tegdU9ji7KNnY4ajYKp0SgARaOgKgoaCy23xjnP9WzAL2uHMn7mIH5e+yGDP+1M5Zq+aDQKVWr5Me6Hl6nbrCIWdjpcvZzx9HQBburBrCjGqZg0GtBoSEvN4sqFaxzZe47jByMxGAxotOaft3eAO18Mmc+I/jPYveE4509H07/peLpWGc6kd+eZWgpuVbmOP42fq3ZPwbC4N9bW1lSpUoU2bdrg4eHBgQMH2Lp1KzExMbf9HIQ5W1tbli5dyquvvkpISAhz5859qMcq7G+pEI+CihUrAhAeHl7g+tOnTwNQoUKFQpX7OCTTyqOo8q+qEE8tRVEoW7YsERERVKpUifPnz3Ps2DGzf/T8/f2JiooiJycHCwtjp5KTJ09SuXJlqlWrxpEjR0zb/vbbbwwaNIg9e/awa9cuhgwZwqlTp0zlJSQk4O7ujouLC7GxsfcdfEVERNCxY0fs7OxYuXKldCe7R3q9nsjISMLDw7G3t6dSpUqFbsUoSRuX7OXr9+ah0Wow6A289H47+rzf7q77fffxItb++Z+phdfV241rsTe6L1vpLMjOMh/XV6FSGcKPnEdRFAZ//gLPvVjwmPk8496Zy671x81aW/8+Oh6thflNQFZGNhZWFkRFRbJq0TbWzrlxA9KgRUXGTDfvUXHmxGUO7zlLQEVPajcy74a9Zd0xPv/kL+MbRcHLy4no8Bgs7C159ZPa/D7hIJnZN43xVaFa1bLGRF1A8/bVCaxclt+vTyPlH1Sa7PRsoi/EY1BVFBSsdRoyUm6Miez1Thv63uGaq6rK33N3cmjXacpX8eaFN0LMsm0DnNgfwfLftqKzsaTPe889UeOBH6bc3FwiIyM5ffo0Dg4OVK5cWbpSF8KiRYsYNGgQr7/+Ol988UWR3qDf729p3r6APOR4wiQnJ+Pk5MT8Q1WxdSjeYDA9RU/vmsdISkq6pxbis2fPUr58efz9/Tl79qzZvVlKSgplypTBYDBw9erVe074l5mZiZeXF0lJSURGRj7S44dBukwLIQBLS0u++OILXnjhBYYPH87SpUvvuH1e19pjx45x9epVPDw8AGPrb944uLyxKps2bTLdFGzZsgWDwUDLli3vOxjeunUrXbt2pX379vz+++9YWVndVzlPE1VVuXjxImFhYWi1WmrVqkXp0qUfu66XrbrXR2up5fCOcAKretP+5cYAxF5K4JfxK4iPSaJDn0a0/l89s/2O748wBcMajYKDg84sIL41GLa2seKrRW9zJSoeBxdbXD3ufkNRs2F5dm0wn//02tUUPMo4my2zsrYkPTUTnU6Hrb35GOIzJ66YvT+y7xwjBvyGqqqoKrz9aScq1PBl55aTeHq5cPhAhHF88PWP8XJ0EtZlnMhVjV2ky9f259jeiBsFKnD0QKSpa9jWNUfo+VoLrKwtycrMpk2n2vRuPN60uYpKRmqWWZ2O/nf2jtdh9R+7mD56KSiwe91RMtKzeGXYjelvYi8lMLzXD+hzjF21D+86ze/bP80XNIv8LCwsKF++PH5+fpw5c4Zdu3bh4eFB5cqVcXBwKOnqPfJ69OhBhQoV6Nq1K0ePHmXhwoWF7gJ6N4X9Lb3Z7bpMW1tb39eYZCHuVWBgIG3btmXdunX88MMPvPPOO6Z1o0ePJi0tjddff90UDOfk5HD27FksLS0JDAwssMzFixeTkJBAx44dH/lgGCQgFkJc1717dxo2bMiyZcvYsWMHTZo0ueP2LVu25I8//mDz5s306NEDMM5l17RpU7RaLdWrV8fNzY1NmzbxxhtvAA/eXXrBggUMHDiQ0aNHM2zYsPsq42miqioxMTGcPHmSnJwcKlWqhLe392MXCN+sRec6tOhcx2zZmEG/EhkejWqAsNAoSnu7Uq3BjR/pGg3Lc/60sZupwaBStV45os5e7xatgJWVBX2HtGXJjG3YO9nwwaQeWOksObY/gr9+24aDkw3vjOtGxKlofvliNQCvDe9Am251TccoX9krX11jLyeyb3s4Z09cpmbDQIIqefFJ7x+4HBlHzRblqNrWPMlP1XoBfDdhJbs3h+EXWApHB2tjN2xjfMvSOTu5dG2dcX5lVcXJ1Q5jPuvrLUyKQkZWLpZWxpD3ZHg06vUstcYNVLOE0Crw1ci/OHfKOF76+OEL+JYvxYVzV1FVFY2iYOtoTWrSjSy9dVsE3/HzOfrfWVNSPRUI3REON/1VPX30AjmmBxAqVy8nEh+dSGkfaSW+V5aWllSqVImAgADCw8PZsmUL3t7eBAcHY2MjXdbvpGbNmuzbt4/OnTub5lb18sr/d/dBFPa3NM/tulk7OTlJQPwY06sKerV4f3Pv53jTp0+nUaNGDB48mI0bN1KpUiX27NnD5s2bqVChAhMmTDBte+nSJSpVqoSfnx+RkZEFlpeXTOu11167r3Mobo/uYDEhRLGbPHkyAB988MFdu2/dOo745MmTXLlyhZYtWwLGbmDNmzdn8+bNprLytg0JCSl03aZOncqrr77KrFmzJBi+B9euXWPnzp2Ehobi6+tLq1at8PHxeayD4YLo9QYiwq6YgkYUDUt/32q2zcCPO9Pz7dbUD6nMG6O78uboLvhVKG1sXdVoyM7Rk3A1lS/mvEbNxkHsXH+cvVvC+H70Mq6cj+fM8UuMHPArUz7+i9SkDFKTMpjy8V/EXk40HaNcsBfObnbGLtOKgqLRsGXNYb4bs5y1f+3n8yELmPjuPKIvxAMQcTIaWwdLHJ1t0VhoqFrXn/LVyvL3kv3Ex6cSuj+C8LArpvmbNFqFtFw9BkDVGF9JiemYmodV8o1BRr1loUZD2261TG9bdqppCoYB9mwJo1Jtf8A4HdL/BjVn2soh+AaVxsHZlo4vN6ZFlzpM/mgh00YuIelaKqnJGfz16xYW/bSJxPhUgqp5o3KjNT64lp9ZlcpV8sLCUouiKGg0Cs7uDhzefZrJQ+axcel+6TZaCNbW1lSvXp2QkBD0ej0bN27k+PHjZGdn333np5i7uzubN28mKCiIZ555xjQHa1EqzG9pHmNPkPyv+5nqRojCCgwMZP/+/fTv3589e/YwefJkzp49y+DBg9m9ezdubvf+0PLkyZPs2LHjsUimlUdaiIUQJg0bNqR79+4sWbKERYsW0bNnz9tumxcQb9y40ez/Nwe7LVq0YOnSpRw5coTSpUtz4sQJvL29C5WYQVVVRowYwc8//8yKFSuKJDv1kyw5OZmTJ09y9epVypcvT4MGDYpseqtHkVarwcnNgaRrqeQFhxfOmGdKttJZ0O+WjMbxN02BhKKwasF/rFmyn6zMHFBVNq0MNa02GFSSEtKNyamuU1WVa1eTKeXlDIDO2hI7R1sSr6XnFcn2f48Z99cbUDQKsdFJGPTGm+O0xCw0GoUaTQLZ9u8Jzp+PR7vztGmKJBW4lpBKzYaBHNp9Fp9ypciy1HAtNctYuKqiGlRc3e1IiE8DBZo1D2bL5pOoNte7H1/vlqzeNIb4pXee5aW326LRKmxdd4zN/xy9ETSrKmsX70MBVD0snbmdnq+35Od1xgdQKYnp9Gk8jpxs4/RPW/4+jEcpBy6cvQoKrFnwH+9OfIEyvh4kJaRSu0kFBo4wz0Jfxs+dsTNfY/FPG7G2tcLFw4EpHywAYMOSfVy9lMCLd5m2SZizs7Ojbt26JCYmcvLkSdavX09QUBDlypUzG6sqbrCysuKvv/7ijTfeoGHDhqxdu5b69esXWfmF+S0V4lHh4+PDzJkz77qdv7//HR/0VKpU6bF7uCktxEIIM1988QWWlpaMGDHiji0Nvr6+BAYGcubMGS5cuMCmTZtwcXGhRo0apm3yWos3bdp0X92lc3Jy6N+/P3PnzmXTpk0SDN9BZmYmoaGhbN26FRsbG1q3bk1wcPATHQznadWtjimoUzQKfkF3T7Km1WrMWk+zs3PJSMvCoDdgMKhci0vFSmeBRqtB0SgE1/TF3dPJGHNrFNAoZGSY//2wtrEyBqCAQQVHJxs0mhstuFXqBhiPqdGQm6OSm2PgWKhxjG9yYgbHDp2/0aqrKGRm5jJhxiv8fXQ8P614FxcPR9Tr5asAWoWhY7tSp3lF2narQ7M2VdDbW2LQGQNirYMOtApoNcY6axXcSzlQyssZ99JObF93zLwF+ZYmZn2ugdSkdNP7jcsPmIJhgIy0LM6fiTW2ZBlUYi5cY8zA34i+eI2MtGz2bQkjK8N8rmSA2s0qMnH+W4z+dRDb/z5ktm713O35thf3xtnZmYYNG1K/fn2uXLnChg0biIqKeuxuTIuLRqPhl19+4f/+7/8ICQlh7dq1RVr+vf6WiiebHk2JvEThyBUTQpgJDAzkrbfeIiIigu++++6O2+YFqBs2bGDr1q00b97cLFlWlSpV8PDwuK+AOD09nc6dO7Nr1y527NhBrVq17r7TU8hgMHD27Fk2btxITk4OISEhVK9eHWtr65Ku2m2dCo1i1qS/WbfwPwwGw913uIuX33uWRm2rYW1rRaVafrw1tisAR/ee49OBvzHu7dlE3TSvMEC7nubzkdra6UzdyRWNgr2jNV/Nf5OOfRrSdUBTRv7QF4+yzjcCUo3Cmj/3mJXR9n918no4owIOLvY0blsVT28X2vesT/XafmZBZ2piFnaOxgcWqqqiN6ioGo3xGNdfB/47wyeD5zHuo4UEVy5r7C5toaBaKhg0GkZ8tJB9e8/x79ojfDn5H1MLM0C2xjiu+GbGuYdzUVUVnbWlKfjOe3mUuZFArFaj8pQq62J673G9NdzMTcdTFGOCMtVgDJCzMnK4eO7O8xpb3pJMy8b+0f3ePi48PDxo1qwZ1atX59SpU2zfvl263d7BZ599xqRJk+jWrRvz5s0rsnIL81sqhChZ0pdGCJHPqFGjmD17NhMmTLhjNuiQkBB++eUXpkyZwrVr10wtwnkURaFFixasXbvWND3IvYwfjo+Pp0OHDuTk5LB79+7Hamqg4hQfH8+RI0fQ6/XUq1ePUqVKlXSV7iosNJIPuk4FFAx6AxFhl3l9dLcHKtPaVsenP5pPV3T1ciKf9J9Bbo4eRYHj+yKYve0TYxAI9HozhPCjFzm48zTWNlZ8PLU3acmZ/DF9EwaDgRcGNsM/uAwnx13g9LFLLJ+7izJ+btcDQGMQePCWjMtpKZnGx8zX+yifPHKeNUduZG3+e6753MQZydk4udpwnmQAqlT34eiRizc2UBQ+GfyHMRmWomCV1+KrXK+Dgil7tqpCekY2WN7y9/WmFmeA/p2nEheTgkaj8NJrzTm8L9K4DWDnYM305e+x7Z8jWFlb0rxDDeKikzhz/BL+FTxp1KYqNZ4J5PD1824QUonj+yJITTYm3WrX6xm2rz5MWkoGqGBjr6OsvzuxlxJwLeVYYCbp18d044v/mw0qaLQaBn/x4u0+ZlEIiqLg5eVFqVKlOH36NDt27MDHx4dKlSpJZv4CvP3225QqVYoBAwYQHR3Nhx9+WCTl3utvqXhyGVQNBrV4P3uD9AopNAmIhRD5uLq68vHHH/PRRx/dcbuQkBAUReHo0aMA+QLivGWLFy8mJSWF4OBgypYtm2+bm124cIE2bdpQtmxZVq5cec9z3j1NMjMzOXHiBJcvX6ZChQoEBgY+8pPe59n5zxHygmGA9Yv2PnBAfLP01CziYpK4GBFLTrYxm7GqQtK1NK5eTsC7nPGhgZWVBRN+fYX5P25i7dIDzJu+ideGtUdvULkYGc83ny5j/YpQTh+7BBgDz4uRcaDcuLFJS8kiMz0ba1tjgFHWz82UBAvFeFMSeyWRUtenXmrZpS6r5+wk8tQVUMDL1wPXUqU5dijOGJNqjK3CaK+3uhpU43VSFFAhNSMbdBZmY35V1dharVHAw8WOmMRUcu2M3wVnSwtyHK1JTTFOneThbk/c9URgBoPK3F+28vGXPVg8awcubvYMHtkJO0drGj9bDUdnG04fu8SwPj+RlZmD1kLDmJ8H8P6kHhzfH0m5yl6sW7yXfVvCjKerwIkDkXy18C0WTt+EqqqEdKnN4E5TuHrZGBBPWvA23oHmD22ad6pN+WrenA+PoUINX9w8i3YanKedhYUFlSpVwsfHh2PHjrFx40YqV66Mr6/vE5dg70G98MILeHh40K1bN6Kjo/nyyy8fOIi9199SuP20SwBdunShZs2aD1QXIcTtSUAshCjQ4MGDmT59+m1T6oOxa161atU4cuQI7u7uVK1aNd82NwfJd2sdPn78OG3btqVx48bMnz9fEsLcwmAwEBERQVhYGKVKlaJVq1aP3TQrnj6uN4I8jK2qu/49QqNnq99XeckJaVyJisM3yJOIU9GMGPAr2Zk5ODjbYGGpRa83oABObvZm3X8BDuw8zZzvjcng4qKTGPPWXGPyrOuO7o8EuDFVUd4MR5ob72/u8q0qN29stHPDcbpeny/ZzsGab//+gLPHLuDs7sCl2POsWXYgr4GWI6HnweqmBxsWGmN8ndct2eJ6wGwalqxgaW9Fdk4uesDSxZpcfRYaC+MGKdYKi/94l9B9Ebi62TP+oz/Nu1AbVJq1rUqztsa/t9GXEnil3TdEX0zA09uFgHIepocKBr2B3yat5uK5q+Tm6rFzsKZBq8qo188/7xz8gjz5aEpvAL5+/w/iYxIBSIxLYeaXf/Ppz69wq7IBpSgb8Oj3bnic2dvb06BBA6Kjozl27BhRUVFUr14dZ2fnkq7aI6VFixZs2rSJDh06EB0dzcyZMx84D8O9/JbC7addAmMSIwmIH08lMaZXj7QQF5bcbQrxFLtTshWdTkdERMRdyzh8+PAd1wcHB99TUpddu3bRoUMHXnrpJb799lvpXnaLvO7RBoPhsekeXZDnejXkj2//JSH2epZnBTYu2XdfAfGxPWcZ+bKxBdPZ3R6diwPZmcYkTimJGQRU9MTLxwVLnSV93mmDlc54YxsXnUR8bDKRp2NMZZkySd/EwkJDbvaNgNfG1pKMm5JKocC65QfZtuYI58KuUKn29SmGrmeBBsjMyOHtF3/kQsRVnmkezIfjulKpTgAAV65extbe0njrkhen3tpqp7nR3Vk1qKha5UYmaoNKVq7++nuVqCuJqFYa1OvrM1UVFGhyfe5gNw9H4uLSbmSp1ij8NOVfjoaep1otXxIuJZimkoq9nIiCMTkYGIPvq1cSydUbzz8jPYvj+yK4+a92SJfaZlVPjEs1ZdU2GFQy0rK4k7SUTKaNWEhifCovvt2aWk0q3nF7UTiKolCmTBnpRn0XNWvWZOfOnTz77LM8//zz/PXXX3ftqfQgv6WS9EyIkicBsRCixK1atYoXX3yRESNGMHLkyJKuziMlMzOT48ePc+XKFSpWrEhgYOBj/bBAa6GlZuMKbF0ZikFvQKMouF3vUlxYs778m+zrLZjJCelos81vLONikpm+8j2zZVtWhfLV0D8x6FVKebtgYak1ZpZWVSpUKYuzqx17t4WDRqHzy40oF+TJwl824+Rix/+N6cJbL3yPPvdGkLxh+UHOnLwCqkro7rNorYyt0lxvyV2zdD/xsSkYDCrb1x8jMNiT6rX9CT92kTLlbHErZYd6fWytolGwdbAmJdOYkVZRVchL0qwAaMySWKka5aZWaQVVBb0V6HXG9QZFxcryxs98ds4tCcwUhaXXE4OdPnWFMh4OpptzVYW062OD8wJyR1d70tOyrm+jcC022VSURquQmpRhem8wGIg4ddnscM061uROXg35nITr02Ed2X2Gb/56l0p1/O+4jyg8rVZLcHAwPj4+HD16VLpRF8Df359du3bx3HPP0bJlS9asWSO5LIR4gj2+d1VCiCfCggULePHFF5k6daoEwzdRVZWoqCg2btyIwWCgVatWBAUFPdbBcJ5Bn3SmQg0ftBYaqjYI5OX3n7uvclTT/ENGbh4OZuvLV8k/Xv2Xz/82tVpevZxI/SZBqIqxJTX8xCUCgj1RLIzB7F9zdnLqxCV+Wf0+X817Hb/ypXn1g3bXp13SYKGz5GJUvLHg64GE3pAXDF8f95ucacwerRgD2EN7zvF+7x/5acIqZnyxFo1WNe2vqpBzUxIsVaNB1WJMlGWhQdEau2XrLRT0lgoGDRgswGCpGF86BVVrXA6gt1L47fet9Or9I8OGL8LR1daYIVu5pXv39T/nKorp+6XRKCQnpJldO3tHa+PUUoCrhwMBwWXQaI3bG/QqfhVuTHeVkpjOtZhks/0tLG//DD41Kd0UDOdZNUemYHqY7OzsaNCgATVr1iQ8PJzt27eTkpJy9x2fEm5ubmzduhVnZ2eaNGlCdHT03XcS4hYGQK8qxfp68Lkbnj7SQiyEKDHz5s3jtddeY9asWfTo0aOkq/PIyMjI4NChQyQnJ1O3bl1Kly5d0lUqUq6lHJmyfMgDl9P3w/aM7PsTuTl6tJZamrWrSuTZOI7sPUe54DJ8OCn/d+rW7okx0YkoimJavnL+HrNuwKsX7aVO4/LMnLoOjaJQt2lF1OuJtXL1KrkYMKZIvjHf8M3dnxWNcv3Rs3G6pnPhV0xBfHpKNrZ2FqgWN1rlMrNzTcGqgmLWIgwKqrUWQ14B1wN3U5dqrYrBEmMQjTFY/nPxXhQFoq8m4+3pdGOMsqpiodWQm6M31VWjVfhx2TuEH79E+cpleLPDVLNrZedow7wdn3D1SiJlfN2Ii07iqw//JCE2mTbd69Gy042p0aLCr+S79gGVvPIty2PrYH1zT3MAfO9hPuk7OXPsAj98vJjUpHReeKs1bXs+80DlPYnyulF7eHgQFhbG1q1bCQ4OJjAwUFqLAVtbW9asWUPXrl1p1qwZW7Zswcvr9t9jIcTj6fFvahBCPJZmzZrF66+/zty5cyUYvi6vVXjTpk3odDpCQkKeuGC4KNVoFESf954DjQa93sCiHzdRpZYPy0I/Y/KCN3G9pcUY4NURHU0BpK2djrJ+N7pBKhoFS515tm6DQWXcu/OJOhNDxOlolszeYdz/endlFQVVq7kx9lcxtq7mlWdlbYGi1ZiC5PTMHDTXs0hnpOVipdOitdTcmH9Yq2Cw1GCw0KC3UEB742faoIFcjGN/Ve314yuKqcVXr1UwaI0tw3A9MNZcD6oVlYsxSaBgStSlh5tas1Wc3eyxc7Shah1/XFztr5/PjTmKG7aqgq29NX5BnuRk6/nszdmEHTpPzOVEHF3szAKohKup+a69+x0ySGs0Gt6Z0AOthfF8qzUIpMdb9zZneUH0uXo+feknwg9FcfFsLFM+mE/44fP3Xd6TzsLCgqpVq9KwYUMiIyPZsWMHqan5P8OnkYWFBcuWLaNKlSo0bdqUixcv3n0nIa4zoCmRlygcaSEWQhS7GTNm8N577zF//nw6d+5c0tV5JGRkZHD48GESExOpU6cOnp4P1jr2tDhxMBK4MR/v/q1h9Hjj9oFUSOfaLJu1nTPHL5OWmsW2vw/jV6kMUeeuoqJQ2suVlKTLphbjOo3Ls397uGl/Q64ebu76a9aAa4w23Uo7EhubjKoolPZ25VrCRdP8wWV83VDSc4iKuIqdkwN6vQE7R0tSU/XY2mmxcbLC1s4SK50GK0sNbk425KRnYWmlwdnNlkw1F0sL4zorSw2WFgqKotyYalij4GhtrN+brf0g5/rUTKqKwaCSm20gO9tATrYeVQ8Z6TnG9zkGSpeyZ8KImeRkGahQ1ZsKNT25eDae9NQcNIpCjWcCTae6ZVUoUTclJftt0mo69mloCoprN62AaylHEq4mo6pQP6QyTnlB9m20692Qdr0b3nGbe5WWkklinHn33wuno6lQw/eBy16yZAlbt27l0KFDHD58mJSUFPr06cO8efPuq7yLFy8yatQo1q5dS3x8PGXKlKFLly6MHj0aFxeXuxdQhNzc3GjRogUnT55ky5YteHt7U69ePd58802mTZtWrHV5lFhYWLBkyRJ69uxJ06ZN2bp1K76+D/5dEkI8GiQgFkIUqx9//JGhQ4eycOFCOnbsWNLVKXGqqnLhwgWOHj1KmTJlCAkJkYyvhRBYuaxxLtzrgVhqcib6XD2JCWmcCD1PWT83ylUsY9o+OzuXM8evJ3tSFBRVJS42BY1Wg8GgcibsCl1eakh8bDJXLibg5euOs+slkpOMGaidXOy4lpxpVgcrGytys3JQAW8/Vy5eSjLV5+TRi9i5WOPgZIm9oxVOzhY42NsQWN8JW3sLQKFXn0CsrLQYDCpp6bmkZejJytaTk2NAVRWatK6BPlfFoCgs+fcw2bkq2bkGsnIMZKkqBsUY9OoVMFhCaUcdz1fzYPnhWCyv5BobiAGNBqxVsLLSYGmpQWelxUKrYGWlwc7BkuzsDPwrOmNppcHaNpeQ3oFAAAaDioXWksjLYURfi0Sn05FhSKRSg9Kkp+SQHJ9BVpre7Jo4ONvx/eoP2fZ3KLb21rTobJ6B+mFzcLYlqIYvZ49eAEXB0lJL1WfKF0nZ48eP5/Dhw9jb2+Pt7U1YWNh9l3X27FkaNWpEbGwsnTt3Jjg4mL179/Ltt9+ydu1adu7ciZubW5HU+15ZWFhQrVo1vLy82LJlC5999hn16tUr1jo8irRaLQsXLqR3796moNjf37+kqyWEKAISEAshis3333/P8OHDWbRoEe3bty/p6pQ4aRV+cL3eacuGZQeIu57AKeJUNHOnrWflor2kp2WBAu+P7Ya3vzsr5uxEZ2NlNi0SimLMnHy9PEWjEHU2loO7zwJwJuwKzzSrSPSlBKLOXcVSZ4m1tZ7MjOvpnxVo170uq//ah5OrDp2TQu2A0ji76nBys8bZTYe1jQVpqTmkJGWTnppLWnI2CfE5XIrMwc7ZiuPHEwkLSyIjQ0+OTmMcU6wYp1KyUBR69WzP4WMXKVPGkb1hScau0AoYDKDquDENk6qSba9wxZDN83hwKTYDXXSOcb0BQEWboTdGxwbjqGYl78RVFTJz0d6Uifrz6X2p2SCAzMxMsrKyyMzMNL3iYxMoV90NW0crHN2ssbDUsGHDBuzs7LC3tze92vSsi42NTbGPR1UUhQl/vMXSXzaRlpTBc30aUdrbtUjKnjJlCt7e3pQvX56tW7eazbVeWG+99RaxsbFMmzaNd955x7T8/fffZ8qUKXzyySf89NNPRVHtQnNzc2PWrFn4+/uTmZnJ2bNnKVeu3FM9tlir1bJgwQL69OlDkyZN2L59OwEBASVdLfEI06sa9Goxz0NczMd7EkhALIQoFj/++CPDhw9nzJgxVKz4dM8vmtcqfOzYMUqXLi2twg/ASmdhlnhKo9Wwb2c4GRnGqYtQ4ddv1pKemG6aLknRKqi5N2VvytWDxY1kU1Y6SzQaBYNBRTWoHDkQQVqKcQ7d+Nhk/Cu441nOEQudim85ZywsM3ltRE2yMvUkxmeSdC2LhPgsIs8mkxiXSVq6gcwsPSpgaaEhJyPX1ILsH+xMrkElNccAFgqKhQbTvYyqkKvCi6//ChhjWtX+xnpVcz2j9PWq51ooqFY35i3OdVbQReeNAVaNBWg1xuBXC6pevT5j0/XrZ6U1TTxsZ6ejej1/tFotdnZ26Kys2bDkCBGnrlC3aUXWzTtFeuqNlvKy5VyZOPcV0tLSSE1NJTY2lnPnzpGeno6iKNjZ2WFtbYOrqwsuLi5cu5LGiX3nCaxSlpqNgh7gG3B7Ds629Puo6HuhPEgAfLOzZ8+ybt06AgICePvtt83WjR07ll9++YU5c+bw9ddfY29/5+7mAJs3byYkJIQPPviAXr168dlnn7F9+3b0ej2tW7dm+vTplC5dmhMnTjB+/Hg2bNhAVlYWTZs2Zfr06fm6ACclJbFu3Tp69+7NM888Q2hoKJcvX6ZWrVqEhobyzTffcOTIES5duoS9vT1+fn60bduWiRMnFsn1eVTp9Xpef/11MjIyaN68Odu3b8fPz6+kqyWEeAASEAshHroZM2YwdOhQFi1aRMOGDdm9ezcAgYGBd9nzyZOdnU1oaCgJCQnUqlWLMmXK3H2nJ8yxPWf56t25JCek0WVgC/oObf9ArU4tn6/N4l82o2iM3Z7tnWxvZCtWFJKTMiDXYBrua5xG98bxLBR4pm1Vtq8/jkGFY6FRGAwqigZc3K0p7W2Pq2cpPLzscPe0ASDxWjZXLqaxd8clsjNULp9PJiPDOCeyjY0lGWnXW2ZVeKZ5BXbtOQsqZF2vk3I983RaWi62DpbGxFxgzCCt5mWP5kbWagU0KuRoQb2elMvA9cRZeVmlb32moijkYhy+jGpsNVWNfzBeC60G9Ddaym+ewyotLYtrcSk4u9ijs7Zk5uR/WDZzO4qisGXVIUp7u5gFxL6BxkzFHh4eZlUwGAxcjYlnyvD5oNXjGeBEQJVSoDWQaZnJlk1nuXQ5irpNq+Hk5IS1tfU9fuqPv82bNwPQtm3bfNOpOTg40LhxY9atW8eePXto1eruCcYOHjwIQHh4OM2aNaNdu3YMHDiQf/75h6VLl5Kdnc2rr75Knz59CAkJoV+/fmzevJnVq1fTt29ftmzZYlbe6tWryc7Oplu3bri7u9OyZUtOnDjBunXr+OWXXzhx4gTPPfcc7u7uxMTEsG/fPv79998nOiDOyclh9+7d6HQ6Fi9ezEsvvWQKin18fEq6euIRZEDBQPH2qiju4z0JJCAWQjxUM2fO5L333mPBggWmbtJPa1AcHx/P/v37cXZ2fmpbhQ0GA5+9+iupiRmoqsqf362jSr1y1G1Z6b7L7P/hc1w4F8t/m06i0Wo4vOs0WFmaBb2Yx3u4lHIwznurKGgtLdi58QTWthZ4+dlTxt+eUl52uHnagApx0enERadz8sBVYi+mUS7Yl337I/JX5PrxMjJzb7Raa2DX7jM3sj2rKlhpTC2xqZl6HFx1pqmSMGD8Zb4pEEa9UXXTdnm9vi2MWaYBFAMYFNBbXt9WVVG0CobrybY0ehXVwlhP1aCi5KimfVFB0WMcaGzMwsXwV37nyvlrBAaXITMlw5ScS6NR8AksRXJiOhmpWfiWL8V74/9X4Gej0Wj4/uNlHN4WBcDhzRfR2YQDKq5ednj4OGBjE421i0JqairW1tY4Ozvj4uKCu7s7zs7OT8Tc2wU5deoUAEFBBbeQBwUFsW7dOsLDwwsVEO/fv589e/ZQtWpVAD799FN8fX1Zu3YtBw4cYMOGDTRo0ACArKwsAgMD2bZtG5mZmWYPJJYtW4adnR1t2rQBjGOLS5cuTd++fRk6dCjly5endu3aWFpamvaJi4u7jyvxeMgLhi0tLalfvz5arZb58+fTs2dPU1Bctmz+uc+FEI8+CYiFEA/N3Llzefvtt1mwYAGdOnUyLXdxcXmqgmJVVQkPD+f06dNUrlyZgICAp3YcXk5WLikJ6WbLTh+9kC8gVlWVf//8j/2bTxBQyYseb7fB0srCbP2Po5eydv5urO2ssHKwA4zZpjVaDRpLLbm5N8bDanQWqJm5oIBOZ0lg5bIcO3COMgEOeJVzxCvQCVcPa67FZnA5KpVje2O5ejmdpPhMVBUq1/TB1bUUmWmJuJdyNJWrXJ96yWwCXbg+l3BeUHw9aNXkrcA0djc1PQdPb9vrAa8xW7SDjQ7Psk54l3Fl23/hZBtUUzCtB7DENA5Yr+HGL7kKehsVC1P8qBqbh68H1waMrcRcD5AtLLWoN81DjF69MZZaUYi+mABAxOloPL2cTd3IDarK4f/OkZNt7Pqdk63H3snmtp/5xbNXzd7nZOtBVblyNomYyBRsLZ15/YNW5OTkkJSURFJSEteuXePs2bPo9XpcXV1xd3d/4gLkpKQkAJycCp6OKm95YmLiPZWXFxDPnj3bFAwDODo6EhAQwKFDh5g8ebIpGAb+n73zjo+izP/4+5nZ3fRCCAESAqETeu+9ieUUFMUOZ/mp54lYTj17P7uc9ayA/VQE9Wx0aSH0XkJLQockpCdbZp7fHzOzhYRqICHu+/VaSHaemefZ2WQzn/l+v58vISEhtGzZkn379lFSUuIVxOXl5fz6669ceOGFASJ569atrFu3jrS0NJo1a8aCBQvo3r271w07Pt7Xxqw2UZkYBp/R1tixY72i+M+Y9RPk+ARriM8PgoI4SJAgZ4Uvv/zS22e4stZKfxZRXF5ezurVqyktLaV///7ExsZW95KqlZAwB30v7MjSX9Z7n/vm3TkMv7In9RrGep+bO30F/37gKxCw9NcNFB4t4Y6nx3q3L/xxLT9OXQRgCLMSN4pdRdck6Dp14iI5crjQO17X4cpb+oPqpnXXBuzeuYduo7qSd6iM/bsLWTV3L4cPOSnMd9K+S2MOZpZSVOQEjPrbrN05FK/fB0DmjkM0a9OAvYfyQQiatajPlvW+3qRWcNf7vQDd24vYSFmWipH6XFLiISLcZqRBC4GUkhKbxqYDOWw6kIMtRKA7McS0BtiFNxVbV6Qhjq3X6DDnspk1xBEKUui+bGjhtzABbl1HNUW7wDAUsxSxBKQZxZY6NGgUR2RECHmHCmnYpC4bV2Z65z2wJ49f/rucslIXHXo0pXXHwNTRiOgwzBxxkJLWnZKxO+xsSN9Jk5b1uf3x0QDY7Xbi4+PJ2niEbatzaNM1hVZdk8jJySEnJ6fWC+RjsVp/ncrNs5KSEjIyMmjWrJk3outPVlYWcXFxXHnllZVui4qKCnCznjVrFsXFxYwZMyZgbLt27YiJieHtt99mz5493HDDDSxevJi2bdvWWsOt44lhC1VV+fbbbxkzZgyDBw9m4cKFwf7xQYKcZwQFcZAgQaqcn376iZtvvpkpU6ZwxRWVp1JC7RfFhw8fZvXq1cTHx9OjR4+A1MI/M5NeujpAEJcVO1n9+xYuuNrXg3b90u1GKyRNRyJZvXBbwDE2Lt8ReFCXmxadGrMvO5dmbROp37gus39YS90GYaS0iaVpm1jiEz0U53tY9NsGSvI0Nq3YT1mpB6SkUdO6jBjdnemfLmXj+j2Ehzv8hK2gpNgZMF3W7iO4HSqqKti8ZT+KXUGX0tuLWGrSELGY2dGq8IsYS8P0WQhKynUiwm1eoepRBR5d90Zq3VIaf6mFdQxzg+GGhaaANH+sdAF6iPCmVes2ie4zrEbohhEXmN+rvnRrqUsU6XvFdocNrczlFdKZWw+Qf6QIkEj/3HOTt57+3nx5gmfen0C3/q0AKC4sY+fm/b6BQnDZXwcx6JLO6LpeQczOnb6CVyZ95o1G/+ONGxg6pjvNmjVDSklRUVEFgZyQkECDBg2oX78+ISEhFdZWU7EiwFak+FgKCwsDxp2IdevWoes6w4cPr7AtMzOTo0ePcvnll2OzBV72FRQUkJmZyYABAwKenzFjBg6Hg4svvjjg+fj4eBYvXsxTTz3Fzz//zA8//EC7du146KGH2LlzJ4MHD65VpSAnE8MWqqry3XffcemllzJixAgWLVp0Su9bkCBBaga187ZqkCBBqo1ly5Yxbtw4XnvtNcaNG3fS8ZYo3rZtGzt37jwHKzz76LrOli1bWL58OampqXTr1i0ohv2IiA4jKjY8IJqUcExLnJYdG6NrRsqzoghSuwW2NukzskPA90IRTHz2CtRQO0cL8in35DL+H50YfXMb4uqHk3tAZ82cfD5/eQ2/z9jN6oV7qNcgzoiKKgo5R0qY/ulS7/FKS11e8akogigrJdiMsuqqQFEEmmlKZQ+xIYVACiOCK1Xhqxu2+YlhMMapAmkTlDg1wkNVpE2g2wCb6R6tCnSbOU7FEMMKhtiW4DHLkHUH6Krx0EIwxlhT2QS6as6nGP9jsx5mqrcwH6qCsMSpEDRuWo83vrqDvz92KXc/cRlHDxcipdHvOO9wESFhdu88IeGGALL09JyZq33vC37rMQkzx1cW2Z03YyVgpL4DzPtuhe9YQhAdHU2zZs3o2bMno0aNol+/foTYQ9m1axe//fYbixYtYvv27RQVFXkjrDUVy20/IyOj0u3bt28HoFWrVic9lpUu3b179wrbVq1addxtq1evRkpJ166+PtGapvHjjz8ydOjQSkVd+/bt+eabbzh69CizZ8+mbdu23HHHHSxdupT58+eTm5t70vWeD5yqGLaw2WzMmDGDqKgoLr30UsrLy084PsifAw2lWh5BTo9ghDhIkCBVxpYtW7jooou4//77uf322095v9oUKS4rK2PVqlW4XC4GDhxIdHT0yXf6k6EoCo9/dAuv3vM5RfmljLl1MF36B7biuvjGfhQXlrF87iaat0vi5keMtPtdm/fxwfM/UF7iYsiY7qT9tp6ImBCuvm8Iq1avYuxdqTjLPGRuySf9t31kbM1H13SEEKiqgqZLhBDoQM6RQiNCKqGs3AVWjbLZp7hOvUhS2zYioWEsI0d34W/X+vrB6pqOVayrKAKb3QZmPa4En4GW9wnzP6uW1xTMpW5jbWFhKsVOHSml0UrJFLZSB6TwtkfySImMNBSmhiGEvX/JVd9cmHOhCqQEgZGOrQvfRkX4DZYQEmrHWepCUQSDhrXl43/PRkqdCy/vHmBKJlSB0+lBqApSlyQ3T2DX1v3oZhunOL8a64joMMbfeyHTXv0FgLbdUnj/Xz/yzJ2fMOiSzkx6/kpsdp/QaJAc580MUFRB/Ua+NN5jKcgr5uFx75G5dT916kXx5LRbcEQLDh48yNatWwkLC6NBgwY0aNCAuLi4GpdabbVvmjVrVoVoeVFREUuWLCEsLIzevXuf9FiWIO7WrVuFbZYgrmzbmjVrKmxbuHAhubm5FdKlj8XhcDB8+HCGDx9Onz59eOqpp1i5ciVpaWm0atWKli1bnrcp1Kcrhi1CQkL4+eef6devH9dddx1ff/31Ke8bJEiQ6iMoiIMECVIl7N27lxEjRjBu3DiefPLJ096/NojigwcPsmbNGho0aEDv3r0rpCcG8dG+Z3OmLHn8uNsVReGaiSO5ZuJI73Mup4d/3vAfivNLsYepKOEubn5xCG7NyYF9+ziYWcK29bnk7Dd638bUi/T2HpZSoutaQKS2tNhpCE/FT+9Z24VAtauodpWZ/03n99kbfYsTAuGRRMY4CIkKJaFhDOHhDpYv3+2nR6X3WEIa7tCaGSkWYIpUo7a5tFwjItpOUb7TaNHhJ4jNEmY0q01ypJnmLIwIsbTjbbtk5GH7LKnVEumN0EqMcdJSxNJIfPbrTsXUb+9k26b91K0XyUM3fUR5uRskbF2/l1sevJiv3pmHoipE1QlnX1auUWMsIDYugqatGrI74wAdujfjmtuHBLyXV985jCGXdaG02MnL93/JgaxcdF0yd8Yq4upF4SwuJ6ZuJGNuGcyEBy7hQFYuW1btpm33pkx4IDBl159v3p5D9vaDABTkFvPRs//jxa/vIiUlBY/Hw5EjRzh48CArV65E13UaNmxIo0aNiI+PP6dCbefOnbjdbpo3bx6QKdK8eXNGjhzJrFmzePvtt7nrrru825544glKSkq47bbbiIiIOOkcq1evxuFwBJhpWViC2D8K7L/fsdu+++47FEWp4P2wZs0aoqOjK3w2Z2RksGXLFpKTk+nSpQvNmzdn5cqV5OTk0LVr1/OuldaZimGLmJgYfvvtN/r168ddd93F22+/fd7eGAjyx9GlQJfn9v0/1/PVBoJXa0GCBPnD5OXlMWLECHr16sXbb799xsc5X0WxlNKb8t2xY8dgP8qzRN7hAuKTw+gzOoXGbePI2VfM6rm7Wb8wm5J8J0IRxDYyXG5Dw+xMuGsEk5/7EaQRFa5bL4oje/KOP4Gmg8138ZtzqIhF+zcDcPRoifGkV+RKSkuc5Osah/JLsNkUdEWYTX9NsevSvEZVml3xClkpTZdpYZhgFZd7iAizIQtdhlBVrXkMwSmtGmIwzbh8xwmIEGuglEkiioC2EJUtcVuLsebDehkC3Q6KZhwo1GGjbnwUfQe1ZtvGvZSVurznwVnuZuFvGwgJs9OmSxNyjxRBtu88Nm5Rn2fe/6vR5uk4F/71zZT4nIMF3nRoRRFMf38+aEZkfOPyXTz/+R08/8Xfjv8e+VFa5EtJ1XVJSYHPvdxms9GwYUMaNmyIlJKjR4+yd+9eVq5ciaIoNGrUiEaNGp1RnefMmTOZOXMmYNwEA0hLS2PChAmAUWf7yiuveMcPGzaMrKwsdu/eTUpKSsCx3nnnHfr27cvEiROZO3cuqamppKenM3/+fFq1asVzzz130vU4nU42b95Mx44dK63fXb16NU2aNKnUAXr16tVERETQpk2bgNfXt2/fCsZQb7zxBtOmTaNnz560a9eOhIQEdu/ezQ8//AAYLfYURSE2NpZBgwaxbt06fv/9d3r27Ol1oa7p/FExbJGUlMSvv/7KwIEDadCgAY8/fvybf0GCBKl+goI4SJAgf4jS0lIuueQS6tevz5dffvmH0xLPN1Hs8XhYvXo1BQUFDBgwIJgiXcVIKcnJyWHv3r3s37+fvqNbsG35QdL/t4uyQg+xdSMoyfcZXvUf0porbx9GdJ0IQkLt1KkXxY9fLyc6Jpwbbx/MO8/9yPKFRs1mn2FtSJu/1TeZXknNqWKGYnWM9GPw1t26QlSv0HRruukUba4bY7ylD3Uh0S1jLSkJCbVRjg7C6EUcGa4irbZMwhC+lkGXENKo/wWkYph1Waneul0aEWIBKKCWQORe83XopoAWhqGWkCDt5nF0aThMmyFkt1+9rcvpCezhDGxbuwcBLPltI8IW+Dveom0ixmk5eVRi1FW9+Ob9+caNAiHQ3R6vSl+zaBtulyegvdaJuPD6fsybsRKXZpzHsX+raChlrSsuLo64uDjat2/PkSNH2Lt3L4sWLSI8PJzk5GSSkpIIDw8/pXnXrl3LtGnTAp7btWsXu3btAqBJkyYBgvhEWNHUxx9/nF9//ZWff/6Zhg0bMnHiRJ544gni4uJOeoyNGzfidrsrTYnOysoiJyeHgQMHVthWWlpKRkYGvXr18n5ur1ixgr1793LPPfdUGH/ZZZfh8XhYvnw533zzDeXl5SQmJnLttdfy4IMPBvRTttvtdOvWjZ07d7JkyRI6depU428UVpUYtmjTpg0//PADI0eOpH79+tx2221VtNIgQYJUNUFBHCRIkDPG4/Fw1VVXUVZWxqxZs6rMXfR8EcWlpaWkp6fjcDgYNGhQrXJXrW4KCwvZs2cPe/fuRdd1kpKS6NOnD5pTkL9zHjED6nHp+P7s2XGIl+/9woisSkifu5nr7r6AkFAjNbXXgFZ06p7CV1MW8cl7C7joml64NY01aTtJm7+VmLhwCvKMyGLr9klsyzgUuBBTaCKsVGVf+yCrn29ADrS1D3jrdwF000jLELmCcqF73aCLnWaE2EqLVixBjPm6hNcCU6rCJ4AxUqalarbnUcHll10rwTDqwnSXdvuyq1GMOmrVrHX2aL6ezQdOFEWnQsvlCt+fiL/+40Jatk/iwJ48YmLDmPyPr4zlKIL4hrEB9cQno1Wnxrw//2E2r9xNk9YNadY26aT7KIpC/fr1qV+/Ph6PhwMHDrB37162bNlCXFwcjRo1Iikp6YQmeE8++eRplYVkZmaecHtycjJTpkw55eMdS7du3Y5rINakSZPjbgsPD8fj8QQ8N2PGDIBK64dHjx7N6NGjT3ldQghatGhBVFQUK1eupLCwkLZt29bI9OGqFsMWvXv35osvvuCqq64iISHhpHXZQWofejWYXOlBU63TJiiIgwQJckZIKfm///s/tmzZwtKlS4mMjKzS49d0UZyTk8OKFStISkqiffv2Nc6w53zE4/Gwf/9+MjMzKSwspGHDhnTu3Jl69eoFnN87n7mC8jIXy+Zuxh7qoE69KI4eKQIg50A+P322FBEWwu+zNtK4aT3KnG5WpO1AAHN/WQ8uj1ezFuSV8vArV9OqXRINGsUxduiLFBWWeecygrR+YV9hPSznaGlut2qP8Y3FFLYIpC0w9dmf4nKNiFDVqB229vFejwuve7O1zRLOHiTSJo2osZlCLSMkOZ2MwXooSLe5owLCDmi+GmIUkIYPGKqqcM3YN5HAuHG9DGMrU0g5bAqucrd3vQkNYzl8IB+Axs0T6DM0teKLOg7FhWW06tSY/hd2RAhBWbGT76cspE58FBNfHHfaYql+cl3qJx/feOtE2Gw2kpOTSU5Opry8nH379pGVlcXGjRtJSkoiJSWF2NjYGingzhYzZsygU6dONG3atMqOWb9+fQYOHEh6ejpFRUU1znX/bIlhi0suuYS3336b66+/nl9++aXSaH2QIEGqFyFrel+CIEGC1EgefvhhpkyZwqJFi2jRosVZm+fo0aOkpaXRunXrGiOKMzMz2bhxI+3bt69QExjk9CkqKiIzM5M9e/YQGhpKSkoKycnJx71odrs83HfV22zfuBcAu13FXW7UvCqKoNdFnVm6yGhZo6gCqSreulUhBNLtQfhFRG+9bxRXTDD6sBbml/LsQ1+zef1e7CEqZcUub4TNSINWvOLUHWFDt6tGlBhMRWrqZiEQ0tex1xmjgs1MubaixnYj4tujWQxN6oXy3zWHjedV6a1F9k5simVnBEgHRpq2lOh1de+tbSl1CIFQofBS3ZY8sHc7UasV3zF0UDXfMZViDZu1QJdOSKnmnVItcYEmEQLuf2oMMz76nf2ZOTRtk8i9/7qCRbM2ER0bzrBLuxAadmqZEb99s4I3HvsWXZP0HNKGx94ef1oR4XOF1Zt37969REREkJKSQqNGjYImeX8Qt9vNypUrKS0tpVevXlV+E/VM13Q2xbA/L774Is8//zyLFy+mQ4cOJ98hyHlNYWEhMTExPL98CKGR5/azo7zYw8M951NQUBAs4zpFgp/uQYIEOW3eeOMN3n33XebMmXNWxTDUrEixruts3LiRffv20adPH+rWPbPIVBDjXB46dIhdu3aRl5dHYmIivXr1Ii4u7rgRuW1rs0iftxkppVcMA7jdmrfWt26DWGISoo0WS5qOrkkUm0BRDOMlKSWqItB92o+2XZvgdnvI2LiPsIgQNq3bi1vTcHn0iotQjPZFCIEs90CozUhHBqN1UbidcpfH0LweUHRMAS2N/sJm+rWORA9RkAoUeTQiQ30p0940bKtOGHxtmOy+dGqbFLhsvpRpI4VbGg+AMIlH1VB11Xcscw6hSyMIbbWHOibBQVcEimakoU95ey6f/3ofABmb9nLnVe/gLHd764B3bt6Hx60x5sZ+NG3dsNL3zuPWeOuJ79DNvs3L528lbc4mBlzYsdLx1UlMTAydOnWiXbt27N27l8zMTDZt2kTjxo1p2rRpjRBy5yN2u53evXuzadMmFi5cSPfu3UlISKi29ZxLMQzw4IMPcvDgQUaMGMGyZcuCN1ODBKlBBAVxkCBBTov//ve//POf/2TGjBmVmricDWqCKHa5XKxYsQKXy8WgQYNO2YAnSCBOp5Ps7Gx2794NQEpKCt27dyckJOSE+21etZt/XPUmgCGq/KN1Al7/ZiJFBaXkHizg8JEiNE1HUYx0436DWqNJOLj/KMMv7kRquyT++X9TKC8z0oDfePp7cg4XUVRQZrQi8vYjNv6LqxdFXq7hMq0IgeY3sfTLlpZCUObyM6Syge42xaZLoocLM4XaaMFkpVAXaRqRISrS59FliGDLldqqY+aY+mJA2jSw+xodCxXDQQtAlegYUXMkCEX6tUY+5qaDzVyb2YtJ+N0McPqlS//4ZTpul1F3KnXJ28/9gHQbY3//eT3T5jxAbN2KglHXdW8LrMqOWxOx2WykpKTQpEkTjh49yu7du5k/fz7x8fE0bdqU+vXr/6nSqasCIQTt27cnOjqa5cuXk5qaSrNmzc75eTzXYtji1Vdf5dChQ4wYMYK0tLRKnb+DBAly7gkK4iBBgpwyS5Ys4a9//SsffvghI0eOPPkOVUh1iuLCwkLS09OJiYmhV69ewdTJM6C0tJQdO3aQnZ1NnTp1aN++PQ0aNKhQe114tITMbQdo3KI+sfFR3ueX/LIeEOhmqnNYmJ3ycg+KIrjln5eQ3KI+d/3ldQ5k5wLQrndzXEIhe/cRNq/fy13/vJivpi3hvddnERUdRlm52ysJd2ccquCq7N+P2BLDAJruM9MS4IusCszIsRJwDGkzoskKErefuJWqWQusQKFHI9LhV0OMKXr9v7daLfm1XUJiiGFVN5arWdNbdcMSVTHTzk3TMZ8OlmhCGNneZlBZmq7TkWEOnEVO7xyjr+7lfUlh4b70aCGM98M6pMvpYe2yHQy+uDMA82auYtorv2Bz2Lj98cu46rbB/Pc/8wFIbp5An+HtOB/wd6lu164dWVlZrFu3DlVVadmyJcnJyUEPgdOkcePGREZGsnz5cgoLC+nYseM5E6XVJYbBMHX75JNPuOiii7jkkkv4/fffT3ozMMj5jYZAq8w84izPGeT0CF7VBQkS5JTIzs5m9OjRPPTQQ1x77bXVsobqEMWHDx9mxYoVNG/enNatWwcjQqdJYWEhO3bsYN++fTRo0ID+/fsTGxtb6didm/bywJVvUVpcTkionee/+BttuxvmPgmN6njFsKIqNG3dgOc/uwMhBI4QG4t+XucVwwAbl++CKCOKX17u5ol7vwRTtBQVloHdBi4PxyIwIp8BNbz+SGnUEQM2rGixz1hLWi2TjKcRGGnFEkMc62YNslSMdkk6UODxYFcVQhwK5Zpu1CH7C2LBMQ7UZtRZgrBpKJZYVo0WTaopyoWqGwLcfGVC8UWgwT/VWiBKPd6WUMVlLmyW4BcwcFR778u/YkJ/Fs3exNGcIkLD7JQV+VpeAfz82VJ++3wpfUd15N2nvjd7E8Mzd0zji/Qn6DO8HQVHS+jYq/kp1x6fDjkH8vnklZ8oyC3m4hv603NY1Yru0NBQWrduTcuWLdm7dy/bt29n69attGjRgiZNmgRvlp0GcXFxDBo0iPT0dNLS0ujZs+dZd+qvTjFsYbPZ+O677+jVqxe33XYbU6ZMCf5dCRKkmgl+cgcJEuSklJSU8Je//IUhQ4bw6KOPVutazqUo3rNnD+vWraNz5840atTorM1TGzl69CgZGRkcPnyY5ORkhgwZctLay2//M4/yUkNguVwevnzjN5755HYALr6uH7s272fRT2sJjQghqVkCR/YdpVFzowYxKtZMYbeuKx22YxydK15wykqfhaiYUIqKXYFPmunLYeEOSl2aL53ZraOHqd6IslcQm+ISjF7ECqCrZg2xuV2zGWPLkbg0nahQlbJyP0F8rLO0KaS92wQoVna3MISnouheLa+qOlJI42JbYopTn7GX7yJcooWoqKW6IY6lX0K1hHde/JlOnZJp06kxX09ZxNHcYiPqbbNUuvQ6bm9YYvR4XrtkO5hiQ0pwOz3kHS6kdafGlZzxqkFKyaPXv8ueHYeQus6KeZt585d/0Lxd1f/uKopC48aNSU5O5sCBA2zfvp2MjAyaNWtG06ZNgy3YTpGwsDD69+/PqlWrWLx4MX369CEsLOyszFUTxLBFZGQkP/zwA71792by5MmV9n0OUjvQpYIuz20GybmerzYQFMRBggQ5IVJKxo8fj6qqfPLJJzUiNfBciOIdO3awbds2evbsWa3GL+cTUkpycnLIyMjg6NGjpKSkMHz48FO+wBWKT54KQCgKmkfj67fnsGnFLlp3TSEmPoqD2bnM/mY582asZOqiR4lvEEunPi3o3K8la9N2GPvrpsOzV/MdI3+FMKLAum9Cm03F7dEpOlpqRJD9MddWXu4x+gub6cWqW6KFWyZYAikM8ywj1CyQSCuYa4hhuyGadUyDK3OaQrdGRIiKdJl1tX6CWLfaMFkp16rPBEsIHYfDgxCg6yClsALYKKqGpkqvq7VQzJpnKRE+ny1DBCvm+ZDS24rJYk3aDtYvyjCcum2+3/+SonIQ5vGlBN2vacUxES+7QyWxydmtl3SWu8nadsD3hJRsW5N1VgSxhRCCxMREGjZsyJEjR9i+fTvbt28nJSWF5s2bnzVxV5uw2Wz06NGDdevWsWjRIvr06UNUVNTJdzwNapIYtmjevDlffvkll156KW3btuWCCy6o7iUFCfKnJSiIgwQJckKeffZZli5dyvLlywkNDa3u5Xg5W6JYSsnmzZvJzs6mb9++1KlTp0qOW5uRUnLw4EEyMjIoKSmhWbNm9OjR47SjZOPuHMGqBVspPFpCaEQIN9x7IV+/PYdPX/0ZKWHVwq3eqCOA5tGZ8uL/2LA6m5yDBThC7F63aeHRkP4xYFMIehF+Ns4Y/7k9furYG/U0v7WOYaVHm7pQtwlvxBfMOlw/MYuluYUw6ob964JtvshvkdtDZJgNWWadU3z1ySo+8y5d+mqIgVCHB0WRKEJHFwqaLr2CWFV13IolWAlIn0YL7LgoPL70aY7VCh4NWYnhNkB8/RhyDxSgKAK93FX5IKBug9hTarFUUlTO6w98xablO2nXszn3vHQ1EVGn9rkTEmonuWV99u06gq7rCAStOp+9iLQ/QggSEhJISEggLy+P7du3M2fOHJKTk2nVqlXQhO8kKIpC586d2bp1K4sXL/Y6zlcFNVEMWwwfPpx//etfjBs3juXLl9OqVavqXlKQKkbj3Nf0aicfEuQYgoI4SJAgx2XGjBm88MILzJo1q0amDFe1KNZ1nbVr15Kbm8uAAQOC7VVOgZycHDZv3kxpaSktWrQgJSXljOsom7RqwNSlj7Nv9xEaNq5LRHQY0176n0/Hyor7rFq6k4KjpYDpWmw0AfZFLFXhy42W0qgjlrLCwaxIKd6hPkFssyl4hPD2I/ZGaoVAuCVSiIAUZ93PFdqsIvamUnsfmILYFLqFmkaUQ/XWBqP4BKwUoNvM5xzWNmMtqqphU62XrKPoYDcNtmyKjlsl8OrIvAcgVX+B7Av0GqdBEBIRAkhSGsWxc90edKQhev0PJQSvf347xYVlbEjfwbuPTj/2jHqZcN+oCu9dZUx75SfSfluPrkvSfltP3frR3PHk5ae0rxCC5z7/G1Ne+JGC3GL+Mn4ALdonn9K+VUlcXBy9evWisLCQ7du3M3fuXFJSUmjVqlXQQOkECCFITU0lJCSEpUuX0qNHD+rXr/+HjlmTxbDF3Xffzfr167nkkktYvnz5cT0WggQJcvao/tzHIEGC1Eg2bNjAjTfeyL///W/69etX3cs5LpYo3rZtGzt37jzj43g8HpYvX05BQUFQDJ8CBQUFLFu2jPT0dOrXr8/w4cNp0aLFHzYVCosIoUX7RkREG6mmqd2b+hk+C1JaN/COVVSlQmquN+1aCHC6fSnRuvGw2xQURdChSxNapSZ69wsJswcuRJOERzpAAY+mI6U03Z+FVwyjCFQhvHW9UrHSm4UxThFIm0BXQarCK4IxH1L4osSFmkZUiIpmw1tbbDlR62avYanIAEMuVLCpEofqxqG6sStubIqOYvYhtqkSIaQxj3lfwPrfMuGynK6FLn29jjWdcqcbl1ujTErad2+K3WGjWZuGCFUxbiooCsP+0oV6DWNp2rohpYXlgW/FMaUV0XGV/z5JKVnw/Wo+n/wr29fvMaO7xvp1XbJv1+FK9zse9RLr8MAbN/Lc53+j98gOp7VvVRMdHU23bt0YOHAgJSUlzJkzh23btuHxVDRzC+KjWbNmdOnShRUrVpCdnX3GxzkfxLDFe++9R0JCAuPGjUPTgvG9IEHONcEIcZAgQSqQk5PDJZdcwl//+lduueWW6l7OSfmjkWKXy8WyZctQVZX+/ftjt9tPvtOflJKSErZu3cr+/ftp2rQpXbp0OatRr6v/PgKkZEP6Ttr1aMbVd41k2eyNbFq5mz27jnBofwEFeb62SHXrx5B3uABdkyia0YfXP1gZGxtBaZmTDauzsDtUhl3WmQU/b8BZ7kGxKUaPYwBVobTUlwIswZcKLQ1hDPiixQFp08eMlWZNsSbRVb90a9UUtgoUah4aOhw+Z2m/FGddkWC35pKGO7S5LUR1+SLECiiaNCLEblAVnyDGP2qtYESNrQg0oCmgGAXG3h7Eui7J2nWEsKbxNGuXSJ16UezYedh7Ordt2us9P72Gt+Pz139F16XpBh54o8J5nHTqT1/5mS/fmIWiCL6c/BuX3zGM1Yu2oaoKmqbT78JOle53PhETE0Pv3r3Jzc1l06ZN7N69m1atWpGSklIjPBlqIklJSdjtdm/v9xYtWpzW/ueTGAajjnrmzJn06NGDBx98kFdeeaW6lxSkigiaap0fBAVxkCBBAnC73Vx++eW0atWK119/vbqXc8qcqSguLS0lLS2NqKgounXrVuMvnKoLp9NJRkYGmZmZJCUlMWzYsLNeF1laXM6mFbvoe2EnrrvnQu/zqd2a8uKkL9DMNkw2h42U1ERSuzbhujuH8e9Hp7N5VSZRseFoDhv79uabe0qOHC7wCle3S2POzxvAEoAenXZdGlOnbhSDL+rAMw9/67eaY3oMI5GKld+M12QLCMi98rlOY/zjX0esmhFjAYVSo5Xd5ttm1RALwCaNiDIYuc1+gtim6thV3a9EWkExezTZVQ2k3c9YjICUaW8JtQBsAtwYtc52BVxmaF3TyNi4z1yvqarNlHRHiO8SommbRCb/cA+LflpHzsEC5s5c7d1md9jo2r/y2sjf/ptunHtdoqgCT7mbh98Zz5ZVmbTt3pT+tUAQW9StW5cBAwZw8OBBtmzZws6dO0lNTSUpKSnYdqcSEhIS6NevH8uWLaO8vJx27dqd0nk638SwRXx8PDNmzGDgwIF07NiRG2+8sbqXFCTIn4YAQZydnU1OTk51rSVIEC/x8fE0bnxuzFCCBDJx4kQOHTrE8uXLz5sLCYvTFcWFhYWkpaXRoEEDOnbsGLworQSPx8OOHTvYsWMH9erVY9CgQURHR5/1efNzipj4l9c4su8oALc9MYbRNw8CYNmcTV4xDOBxebjm9iH0Gdme4oIyrvy/wdx39bsUFZYb3lGhfhH/Y3steeuCjSfr1I3ksVfGAaCowhcxlqboNXfXvQJYeMWrf02ut2bYnE8IAeX4tV0yRalqpFsX4CHKrqLbfPN5WzupeHsPG3P5XKbtqtFmySqblmg4MJyqrdRpr/C1hLrASCG3XoOU6B6/GmLF/wQF5EEHvkl+Nwg2r9zNjA8XEBJqJ6pulK/rlHkeHSGVZ13Ub1SH/JxCdM2ILK9btoNtG/Zw0bV9apUYthBC0LBhQxo0aMCePXvYvHkz27dvp127dkE3+0qIjY2lf//+pKWl4XQ66dKlywmj6uerGLbo3LkzH330EePHj6dVq1b07t27upcU5A+iSQXtHEdsz/V8tQGvIM7OziY1NZXS0tLqXE+QIACEh4ezZcuWoCg+x7zzzjv897//JS0tjZiYmOpezhlxqqI4Pz+fpUuX0qxZM1q3bh0Uw8cgpeTAgQNs2LCBsLAw+vTpQ926dc/Z/PNmrCRnf773+09f/dkriBObVFyHJiV3XPI6WdsPEW66EuumaBaWQZaUhluyv+ATwoi6mmxck82vM1ezaN5m4upEkJNTbGzQ/cSliVWLq5RpeEIVX7ozvsgvQiB1Qxw7BLgVX8RY2izHaEmB7iZaVX2RW91XHm3UDJv9h9FBld5tipA4FM0rQENVjRDTRStccQaIeOn3hVACba9UfwNut+49NfKYGwb+ztuR5nk+sv8oD13zNh63sY6oOpHYHDY8bg2pSy64qleF98vivtev47nbp7B/9xHsoQ4yMw6ga5LNK3eTkBRHh15nr894dSKEoHHjxiQlJbF7925WrlxJ3bp16dChQ9CR+hgiIyMZMGAAy5YtY8WKFXTv3r1SoXu+i2GLK6+8kvXr13PZZZexevVqkpKSqntJQYLUeryCOCcnh9LSUj777DNSU1Orc01B/uRs2bKF66+/npycnKAgPocsWLCA+++/n2+++YbWrVtX93L+ECcTxUePHiUtLY1WrVqddm3an4GioiI2bNhAYWEhbdu2JTk5+ZzfMHCE2M22SQY2hy+hqeuA1nTt34rVizMA6Ni7OWvTdrDHNGAqKy4PiE5GR4eSX1huPCElAS2VwGzVBChgD1F5/dkfjKECvD2MjGcwwr0YAtlmfG1zY7Q3Unw1xN5exOA10AKfyzSKnzmWgCI0wlUV1Q4eJOh+5leKBLt/72HpjR47FA82byRYYlPAbr74MLsHhAaoRi21X12zkR7te0mq3+mIjQ6lpLzEqOMtcfkpc995U1WFXeuzuazjo7Rom4jb6fGeoYLcYhqk1MNZ7mbYmG789YGLKn+TgaSmCbzz24NomsYlze8P2LZjw55aK4gtVFWlRYsWJCcns3nzZubNm0fLli1p0aLFeSvozgahoaH07duXtLQ0VqxYQY8ePQLOT20RwxZPPfUUGzdu5NJLL2Xx4sXBftZBgpxlKtQQp6am0rVr1+pYS5AgQaqJgwcPctVVV/Hoo49y8cUXV/dyqoTjieK8vDzS0tJo06ZNlfUuri14PB62bdvG7t27adKkCT169Kg2g7HhY3swd/oKtq7JwmZXuev5qwK2PzvtVjK3HUTzaDRrm8hL933lDXlKCfUaxpB/tBS3WyM/rwRsxgWyN1Lqh6Iq6Gaj3YKCMt8GXx8iFCmNuKtSiTi0UpuFvyD21QqDX1RYwWeKJQDToboID5qURNkV8nTPMfW9ElTd1x9Ykd5sZZuioyrWcIldcRFmTmxTNKSqga5WSOn275OMryQZgAtHd+OKS7ry9D1fsG3DXl+rKgHtujRGtSlsS99FcZFxk2HzmmyEww5uj/kaVQ7uzUMA309dzOU3D6JOvShORPqczRWea9ez2Qn3qU2EhITQpUsXmjRpwvr169mzZw8dOnT4w22HahMOh8MripcvX+4VvrVNDIPRl/nzzz+nV69eTJo0iffee6+6lxTkDJEI9HPch1ie4/lqA0FTrSBB/uRomsa1115L9+7deeihh6p7OVXKsaI4NjaWZcuWkZqaSrNmf56L7ZMhpWT//v1s3LiR8PBwBgwYUK0p83mHCpg/cxXDr+jB3S+Oo26DWKJiA9NIhRA0bdMQgMP7j9KxVzOW/LYRXdcQQtBnRHt++Nx439EDo8JCSq94RUp0P1NkV7m7Qisnc0KjjhhrrAhwb7ZMtbztjfxSo70mVlgu0fjEsCq9YrVIN+qI89zuwLpfm5kmbUaChd/XNiG9BtcCFxGqm1Bp/GkPtzlBqD4nbOG3Hpvva3S/r4F+vVtQt14UhfmlgTcPVIVN67KNUyECK4pbdEwmOsKBy+Vhw4pM77lyuzwc2pd3UkGcveMgQhFIMzVdtSm06vjnyxCKi4tj0KBBZGZmsmrVqmAa9THY7Xb69OnjbfnWtWtXli9fXqvEsEV4eDjffPMNPXv2ZNiwYVx11VUn3ylIkCBnRFAQBwnyJ+df//oXO3bsYO3atbWyBYglipcsWYKUkg4dOpCSklLdy6ox+KdHt2vXjkaNGlVrPXXR0RLuuugVjh4pQkpJp34t+deXdx53/C//TeeNx6aDhEbN6jF6wgBSOzdm17YD3jECkB4NR2QornI30iMxehOZyGNjxuZ+QgQIQqHp6HYFFGHqZ4n0plRLb5q0xDTC8hegfmLZa6qlYxTvmhHeIqkRbVd8dbtWhFiVKDYd4Vfoaxlmme2QAQhX3YSpHl/KtKKhKDq6VAPbLoG5kzQNv/xOFPDzT2tZnb6LMqfb10/42NOlKgH+ZBde3ZsLr+pJWYmTW4a/SL5Zex1dJ5zNqzLJzymm17C2x/3Z6jawDZ++9gtCVZC6pPeI9pWO+zMghKBp06YkJiYG06grwW6307t3b9LS0pg7dy516tSpdWLYok2bNkyePJlbbrmFbt26BbOazkOCplrnB0FBHCTIn5hFixbx/PPP88svvxAXF1fdyzlrWAJDCIGmadW8mpqBruts27aNnTt3Vnt6tD/r0raTd7jQ9/2S7eQdKqRug4oRaykl7z//ozeyuXfXEZCSZqmJ1Euqc8xgM/qLZax8TB0x+Kyara8BoUNEbCilZS5sikKZnyGXVP0EsO6Xd2xFZK1+wwLjr63AbLtkjTXrgs3vC6WbaJsNLGdrHTNNWqLaNUMEC5C68ApZ/8ueEEXHpkiEub9d0cwaYrtf6yfr5UmfkbXbV/+MLvntp/UogO7WvGXHx54r1abQpnNj8nKKGHVlTy68qicAYREhvP7tXXw/dRHFhWUs/GU9H/zrfwCM/b/B3PxA5SUZpUXl9BnRnrwjRXQf1IYr/m9IpeP+TFSWRt25c2fi4+Ore2k1AiklQgh0XffdRKqF3HTTTcybN48rr7yStLS0s9r3PUiQPyvBWwhBgvxJycnJYdy4cTzwwAMMGjSoupdz1rBqhtu1a0e/fv28IvDPTH5+Pr///juHDh1iwIABdOjQoUaIYYD4hrG+bwQ4Qu1ExBzfUObYC+GNK3YDEBUdxqCLOx5/omOvn491UTZRBLg9OlKC2635xlgp1EIgFYFaZojggLZKwkyVNtOnpQ3QzO0KKIpq1AMLCUgKpIcYm82IBFsPRYKioaoadpuO3aZjs2moio4i9IC1SiBcdVLHYdT22hUNXdoD06Wtemd861Jc/hbThrjXdDP67a2ZDjxddetG4ip3061/S0bf2C9gW0JSHW595FIaNon33oQA+N9nSyt9Kzak7+Sh694hbfYmtqzKJPdQISGhjkrH/hmx0qibNWvGsmXLWL9+PR6Pp7qXVW1YNcMOh4Nhw4YhpWT58uW1+mbn+++/T1lZGQ8++GB1LyXIaaJLUS2PIKdHUBAHCfInRErJjTfeSJs2bXj88cerezlnDctNOjU1laZNm3rTp/+soljXdbZs2cLixYtJTExk4MCBNa69VpsuKUx48BJCwx3E1o3k4XcnEBpWuTgSQlSIOC7431pWLTLcp3sOahMw1ts6SUozX9mPY4S13a4iMdyuXS4Pundf4x8pQHqkV2w63IapFSpGFNg00NIx/1eNh3QakVkjhVoaLZ8UiVAlRdJDtKKCqiNUHWHTUewail3HbvPgsLsJsblx2NwIoaEqFVQ94YqTcOEEIFwtR0rFV9csfA+vwJXgjjy2vzC+CLY3Yo7vRoAQHMk8ws4t+/n1v8v56OWfK31/6sRHec+bUAQxcZGVjls+bxOKonjbZC35ZX2l445l/bId3DN6MpMufY01i7ad0j7nK0IImjVrxpAhQygsLGT+/Pnk5ORU97LOOccaaIWEhNC7d288Hk+tFsXh4eF89dVXfPjhh/zwww/VvZwgQWodpy2IMzMzEUIwatSoKl3IggULEELw5JNPVulx/wj5+flMnDiRPn360KBBA0JCQkhKSmLo0KFMnz69QmRi6tSpCCFO+Bg2bNgpza3rOm+99RZdu3YlPDyc6OhoBg0aVOkH4b59+5g8eTIjR46kcePGOBwOGjRowBVXXEF6evpx5ygsLOSWW24hPj6e5s2b88Ybb5zeCQpy3vLaa6+xdu1avvzyy1pZNwzG76/lJu1voPVnFcXHRoVbt25dY9/7cX8fwYxtL/PlmufoNfzEtaR9hrer8Nz8H1YD0GtIqk/Ega/lEiB0iWr1GvIfY+LRjEbAZeVudI8pngUIt+br7etXG+w118LPWEvFaLlkM/9XjE5NlghGBaFIFMUwySoSbqIVFcUmzYeOohqPELuGQ/XgsHkIsXmwqx5UNVDUhysuIhS31WSJaMVpRp/xtVyyHv67Hu/HQAjCwkOM06MeM8is19R1yfYNeyvdfdiYbgz+S2cQEBsXwYOvXVPpuEbN63vFsKIqJLc8ubNy4dESHr/xPbatySJj3R6e+OsHAan2tZWIiAj69ev3p4wWH89N2jLacrvdrFixAl3XT3Kk85NOnTrx4osvMn78eLKzs6t7OUGC1CqCNcQnICcnh48//pjevXszevRo4uLiOHz4MD/++CNjx47l1ltv5f333/eO79y5M0888USlx/r222/ZtGkTF1xwwUnnlVJy1VVXMX36dJo3b87NN9+M0+nk+++/57LLLuPNN9/k73//u3f8m2++yYsvvkjz5s0ZMWIECQkJbN++nZkzZzJz5ky+/PLLSt0Jb7nlFmbPns0NN9xAbm4u99xzD2FhYdx6661ncLaCnC8sX76cRx99lJkzZ9balh5FRUUsXbqUVq1aVWpCcrI+xbUJXdfJyMhgx44dtGjRglatWtVYIXwqeNwa5aUuIqJDEUIQGx+Jogp0zXeDsl33pgBERIYSEmbHWWam7Uq8btMCQVJyXbKzcgMnMMWurssAIS0UBYnE0peY9buaMM20FOF1l/amS1tfY9QRG+nTCqiaKUwNISzM2uAi3EQrNlRV8y5XUXSEAIfqwa4azTR0FaTU8UgloKVypM3p/xJQBKg2Hc2jBPZVstZyCsxY+BC6Lrl8yAs4yz3e8yE1iaIIpJR0HdCq0n1tdpUHX7+O+1++GkVVjmuoNWJsD/btOsyCH1aTlFKPe16uXDj7cyA7F6dfOrbb5eFAVg5xCdGn9sLOY4QQNG/enPr167NmzRrmz59Ply5danVt8claK1mieOnSpaxcuZIePXpUqzng2eLOO+9k/vz5jBs3joULF9aYUpcgx0dDQTvHCbnner7aQFAQn4CmTZuSn5+PzRZ4moqKiujduzcffPABd999N+3aGRGKzp0707lz5wrHcblcvPXWW9hsNsaPH3/SeadPn8706dPp168fs2fP9jZkf/755+nevTv3338/l1xyidcpt2fPnixcuJABAwYEHGfRokUMGzaMO+64g8suuyzAiKGsrIzp06fz008/eaP9SUlJTJkyJSiIazH5+flceeWVTJw48ZRuzpyPlJWVsXTpUpo2bUqLFi2OO+7PIIoLCgpYvdqIllZ3K6Uz5fupC5n97QoaJMcx8JLO/PvBryktLqfboDY8/t5NOELtPP7OeF6+/yuc5W4GXdKZUVf1JPdQAV+8PReHw+YVxALL2dlIb96z67A30nkiFCHQrYwgs0WR0X5JGAFnS/i6TPdqKxpr/i/MNkfSMtCyzLTMtGShSISAYuEmWthRFCPCJYTEZkaBHaqbUJtEsTK/pUKZxxEgdEs9ISSH5BGrGA7PQup4PMe5MPK+BnwiH8Ay2JKSMLuNUb2fJTTMTnm5xzeVEIy7dRCHsnJo2aERYyYMqHB4f1Sbyo6Ne/nlyzQio8MYe9sQomIjfOdXUbjpob9w00N/OeFx/GnSsj516kVRkFcCQGRMGCmtG57y/rWByMhI+vfvz65du1i2bBlNmjQhNTW1wjXL+c6p9hm2RPGiRYtYv349HTt2rJWi+OOPP6Zr1648/vjj/Otf/6ru5QQJUis4a7cQXC4Xb775JhdccAHJycmEhISQkJDA5Zdfzpo1awLGPvnkkwwZYjhKPvXUUwEpxpmZmWdriSdFVdVK/7BERUV5xcSOHTtOepwZM2aQm5vLJZdcckoRuZkzZwLw8MMPe8UwQHx8PPfccw9Op5MpU6Z4n7/88ssriGEwLoCHDBlCXl4eGzZsCNimaRpSyoBIkaIotTbVKIiReXDzzTfTqFEjnn/++epezlnB5XKRlpZG/fr1adOmzUnH19b0aSklGRkZLFq0iIYNGzJo0KAaL4Y1TUfzBNb/LZu9kf88OYOdG/eSNmsjL0/6nLISIwq66vetzPpmOQC9hrbl29VP8+Pmf3H/S+OQUvLQDe/z69fpFOUV4+8IVT+pDopiGmJ5TvJ5pxjiVve6Rwtfu16z77CQxtf+JlWWn4kVGdZthrO0tElv/18r1VqYplpCSIpwEYkNu03DbtOwqcb/DptGuF0jRPUYD8VDuN2DKnR0abZZBpxS0MBeSKhinMcEUYgUSsB8ATXEZvp0p2YN6dElBQeguHUz7VtQ6jIiwuXmDQXp97hgbA/+Ofk6xt48CNVMp87ecYhJV7zJDf2f5Yu35jD/xzVMffUXFv60jvvHvsGvXy3j2/fm8c/r3mXN4m3s2rzvFH86KhIaHsKr393NRdf1ZdQ1vXltxiQioo9vvubP3r17uemmm0hMTCQkJISUlBQmTZrE0aNHT2sNP/zwA8OHD6dRo0aEhYXRrFkzrxPwucKKFg8ePJj8/HwWLFjgfR2HDh1CVVUmTpx4ztZT1ZyqGLZwOBz06dOHgwcPsm1b7awrj46O5osvvuCNN95g1qxZ1b2cICchaKp1fnDWbiPm5eUxadIkBgwYwEUXXUSdOnXYtWsXP/zwA7/88gsLFy6kR48eAAwePJjMzEymTZvGoEGDGDx4sPc4sbGxZ2uJZ0x5eTnz5s1DCEHbtm1POv6jjz4CjBTlU+HQoUOAEaE+Fuu5efPm8dRTT530WFY6zbHCPjIykgsvvJBrrrmG66+/nry8PL788ktef/31U1pjkPOPd999l0WLFrF69epa2a/R4/GQnp5ORETEaUUGalukuLy8nNWrV1NaWkr//v1r5Gfosfz2ZRrvPPoNmqZzw/0XMebWIfz+4xqW/LLe6AUsJbqmo/vpZUURFBeWVnq8grwS9u4+4ntC1xgyuhudejcnOi6CpyZ+5tsmpa/Xrp8vhMAStsJXcmvV30oziipASIlmRoNtZQJXpPG1sFKmbT63aSNl2jLikt5jCXN8MS5UIYhWbJQID6ow06QFhCgeHKpEmP2OhaajKjq6FN4U6ZZhRwgRLkIVD4VAhMOF3ebG6bH7GWUZc9oLfKegVPNw2+V9WbVkZ2CLJf/Qsd/vU3KTuiQlV2zT9swd09iflYOuSz6d/JvxPlnp7JrmPb87N+3j4WveAeC6e0Zx/b0XVvo+noyGTeK589mxp7XPzp076du3L4cPH+ayyy6jTZs2LF++nH//+9/8+uuvLFmyhLp16570OPfffz+vvvoqdevWZfTo0cTHx7Njxw6+//57pk+fztSpU7nxxhvP6HWdCVa0eMeOHSxZsoTU1FTmzp2LruuMGTPmnK2jKjldMWwRHh5Onz59WLx4MSEhIZVeS53v9OzZkyeffJLrrruO9evX07Dhnys7IkiQquasCeI6deqQnZ1NUlJSwPObNm2id+/ePPzww8yePRvAK4CnTZvG4MGDT9tY63THT5o06bQuEvPz85k8eTK6rnP48GF+/vln9uzZwxNPPEHLli1PuG9WVhZz584lKSnplI3I6tWrB8Du3btJTU0N2LZ7t9FSJCMj46THyc7OZs6cOTRo0IAOHTpU2D5t2jTuvvtuPv30UyIjI3nmmWcCapOD1B7Wrl3L/fffz5dffkmjRo2qezlVjq7rrFy5EiEE3bt3P+0a2doiig8fPszq1auJj4+vMX2FT8bRI4X8+8GvjD6+wNQX/seiXzewc5MVPZRmxhAkNa3Hnp2HAYiICmPIZd0AKCks4/D+fJKa1sMRYiM6Npy69aM5eqQI3exVevHVPfnkjTlsWZuNqipomm6mUEtfrpQQKIpA1yVRMWEUljgDuw1ZmlCX3r7CqkfgMaPCdgkuxawpxkqRNsZJBaRqziV9KdOaB+whhtDVkJThIQobpbhx2Dw4VGOdDtVNuE3zRagRKKYgRhq1zaquEaWUA0Z5TLRSiltTA8Ww+TqFn0N1xu7D3Pf4NxCmQJlOgOxQ8IWFrffMTFM+FksM+6Obtca6bq5TCKRfJtKX//6Nq+4cgSPk3KT5/u1vf+Pw4cO88cYb3HXXXd7n7733Xl5//XUeeeQR/vOf/5zwGAcPHuT111+nfv36rF+/noSEBO+2+fPnM3ToUJ544olzKojBiBa3bNmSunXrsnLlSsrKymjcuDEDBw48p+uoCs5UDFtER0fTq1cvb9/exMTEs7TS6uO+++7j999/59prr2XOnDm18kZ3kCDnirP2F8hyZD6Wdu3aMWTIEH777TfcbneVXLCdSqTUnwkTJpy2IPafw2638/LLL3PfffeddN8pU6ag6zp//etfT/nD6sILL+TLL7/khRdeYOjQoYSGhgKQm5vL5MmTvWs6EW63mxtuuAGn08lLL71U6dzx8fF8/vnnp7SmIOcvTqeTa665hptuuonLLrusupdT5UgpWbduHWVlZfTv3/+MLwrOZ1Gs67o37btDhw40btz4vKmdKy4o84phAITwE8MAgo59WtCmcxPG3TmcHRv3cnhfHl36tyYuIZoNy3fy2F8/xFnmJiGpDg/++zpmTV9Ji/bJFOcbwu2KWwbx6/SVrF++CwCp+rlK6zoSBYSh/CKiQ3nmtWvYvGEfH/9nLi63XsGBWrh1ZIjqS6EW+ESwv5Oz4jPXkoo0v7faGBmRXzwgkKbRtaAIN3VVhSKbG5viIUQ10qnDVI1QxY0qJBKBQMUmdNxSYNeFGUV2ESlcIBRygVDhxqZquPSKN4g8oRBi6Vq3tSYBDsDlO/dWajh+pmWhYRX/bhcXlhES5qCs1NzZL9qu65I69aIoKyojKjacI3vyvNsUVTFS2I9B82hkrMsmNDyEpqlVI2Z27tzJrFmzaNq0KXfeeWfAtqeeeor333+fTz75hFdeeYXIyMpbRIFxo1vXdXr16hUghgGGDBlCVFTUabVEskT0fffdxzXXXMPTTz/NokWL0DSN4cOH884771C/fn02b97Ms88+y5w5c3A6nQwYMIB33nmHxo0bBxwvLi6Orl27snDhQl544QXy8/O9Ue9Fixbx2muvsX79evbt20dkZCRNmjRh5MiRNaYe9Y+KYYu6devSvXt3Vq5cicPhqHWmY4qi8Mknn9ClSxdee+01/vGPf1T3koJUgo6Cfo5Nrs71fLWBs3pLdu3atbz00kssXryYgwcP4na7A7bn5ORUSZrHse2PqpqUlBSklGiaxp49e/jqq6945JFHWLp0KV9//fVxDSx0XWfKlCkIIbjppptOeb5rrrmGKVOmMH/+fDp06MCoUaNwu90BrsAn+gOh6zo33XQTCxcu5NZbb+WGG244vRccpFZhZVC8+uqr1buQs8SWLVs4cuQIAwYM+MM32M5HUVxWVsaqVatwOp0MHDiQ6Ojzx2XX7fKwe/M+YhOiyD9cFNgeyU+E3vb4aJq2MURRh17NAd/78sFzP+Iy3Y+PHCzgkZs/xuV0gzR6CH80+x/E1Ytiyut+tXa6BLPlkrA6MZnp0YUF5dzzf9OQulGfi83n0GyZUCkSNMy/PUIEtl7C97WVKm2lHnsjxP6iGRUhdLOOGEpxUU+G4dbdxBFBtO4gDBuxmhsHKnZpQ9HtKLqDXp4wHFLFjoJAEFXYg70CNHcsADnbHuH+dhHoEjQkLl3i1HScusRdqqElS1weHZdTQ5bolJZplBS7Kc93U1LipqzA5Q0MCwWvoVirSgTq7/9b6xPDlXD0UIFx80DTad+rGRvTdyGE4PanLsdmD/x75nZ5eOTad9iwzPDoGHvHMG5+xHcz70BWDvm5xTRv1+i0Isvz588HYOTIkRWySKKioujXrx+zZs0iPT39hC0SW7ZsSUhICOnp6Rw+fLhChLioqOi00pQt47uMjAwGDhzIhRdeyM0338wvv/zCd999h8vl4tZbb+W6665j6NChjB8/nvnz5/PTTz9x4403smDBggrHnDVrFs899xzff/89aWlptGrVim+//ZZHHnmE5ORkRo0aRXx8PIcOHWLFihX89ttvNUIQV5UYtrAy5NLT0+nfv3+N91I4XeLi4nj33XcZO3Ysf/nLX07JOyNIkCAVOWuCeOnSpQwdOhQw/vi0bNmSyMhIhBDMnDmTdevW4XQ6z9b0ZwVVVUlJSeGhhx5CVVUeeOABPvjgA+64445Kx8+ePZvs7GyGDRt2WjUsNpuNX375hRdeeIEvvviC999/n5iYGMaMGcP9999Pq1atvGnVxyKl5NZbb+Wzzz7j+uuvP2nqV5DazYoVK5g8eTLz5s0LcBmvLezcuZOsrCz69+8fYED3RzifRPHBgwdZs2YNDRo0oHfv3ueVu6yu6zx2w7usW7LdeMJbt2pEICXCqCm+d5RXDFeG5tHxz+ct9xNl5WUudmzeR89BbWjRNtFwlcZvuKL4q2Hf2jQ/sy0/Qy3rCWE5NJt1xNKbQm1usCLDuhkRNsWkVHRCbIJ6thASHHYSVAd1VQdxQhAl7ERhJwIbTTzRlGouSpVynIoTt+LGrpSA6sKtlOARHtzCw66yaNxCQxMaUkiuq5dGoqMYZ1kj9mRfT3KTKbz/22U4tRBsNoFDUQhRFEIUQViJQqQUOGwK0TYbofEKYaEqURE2IsJsOBxGWnlpiYeSYg+lxW6KC92UlWiMvqYTJSUlhIWFeYWlzX6Snz1dGsZfZW6uu+dC4hvGEhEVSp16FW/grFm0zSuGAb59dy5X/m040XUi+N+0Rbz92LcgIaVNQ175bhIRUaEnntvEMlk6XqlTy5YtmTVrFhkZGScUxHFxcbz88stMmjSJtm3bMmbMGG8N8Q8//MDIkSNP62+vJYhXrlxJeno67dsbvbcfe+wxGjduzK+//sqqVauYM2cOvXr1AozMn+bNm7Nw4ULKy8u9mWQWM2bMICIigpEjR1JWVkZ6ejput5tRo0bx/fff43A4AsafTkT7bFHVYtiiSZMmOJ1O0tLSGDBgABERESff6Tzioosu4qqrrmL8+PEsXbo0mDpdw9CkQDvHJlfner7awFm7enruuedwOp0sXryYfv36BWxbtmwZ69atq7K5znYNcWWMHDmSBx54gAULFhxXEJ+umZY/ISEhPPHEExX6Glt3grt3715hH13XueWWW5gyZQrXXHMNU6dOPa/7jQb5Y5SXl3PjjTdy++2306dPn+peTpWzd+9etmzZQr9+/YiKiqrSY9d0UazrOlu2bCEzM5OOHTuSnJxcbWspPFrCO49+Q9a2g/S/qBPXTLrglD53srYd9IlhMM2lBJGx4fzz7Ql06tcSKfE6GB+PG+69gGfvmIbm0YmIDEFXVMpLnUgpUVWVJi2MrJr/e+hiFv22Ho/brB1G+EWiTVHsNc3CK5qtqLCvTZKJriO9F54ShGL0GtaMfaIdKvXDQ0iIsVHP4aCew049h50Y1UaJrnFYd3FEd5KrudjnKKUEF0XCTT81GkXoLIvMwKG4CFE9qAIahuYRrrqxmct26pApm4HpMq1JBTUsm/jwIvSIw+zJvp64yCwyC104rfX74dgvCS03zntorl+CnUdHMQPo0UIQGWEjIspOh06JtO1bj8hoO7lH95E91/CxkJqC0FUaNk6g7yUt2LnhEHkHS+narxXp8zYjMES322NE8R1hDlLaJBJb9/gpyRVSqM10ciklHz73vfe9ydx6gAUzV3LxDf1P+DNiUVBgOIkdL0poPX+ykiSAu+66iyZNmjBhwgQ+/PBD7/MtWrRg/PjxFVKpT4QliKdNm+YVw2DUwTZt2pS1a9fy6quvesUwGNcILVu2ZN++fZSUlAQI4vLycn799VcuvPBCQkNDvY+ioiImTJhAQUFBhZvq1Z1OfLbEsEXLli0DRHFtu0H81ltv0a5dO1599VUeeOCB6l5OkCDnHWdNEO/cuZO4uLgKYri0tNT74e+P9eGnaVqFbSfjbNcQV8b+/fuBiu7NFrm5uXz//ffExcVVqcOjVfN79dVXBzzvL4bHjRvHp59+GrxL+CfHulH04osvVu9CzgKHDx9m7dq19OjRgzp16pyVOWqqKHa5XKxYsQKXy8WgQYNOWOt4Lph8/xekz9mErulkbt1PXP0YLryu70n3i4iuGNV767cHaNomMaD+OedgASsWbKVewxi6DWxdoTa697B2fDT/Ib58ey5zZ6xC6m7iE2Op36gOV98+lITEWP7z7A/8/NUyIxhs1StLHRTzM9KtQagvNdpq9iukmf5sCTRpGmV5baeNr6NtNuo3CKNhnRDqx4SSVMdBhE3lSLmbAx4XRzxudheVc9BRymFclKFhdmsCICq8xKwhhhKbjYZaNHbFg11xEarq2IQkVHHhEBo2YbhUK0JBRXrX7NQkCTYPihAo5pOqEMc0GfZhs/7UCuGNYCON/k0S8OhQWOKiKN+IuO/YfBQBTLhtMIOHdiIs3M6/7p5Gfl4BMQlh1E3KJi4xlBbd2hAWYScqOoqLbmpPTHQMnnL435Q0PC6dq/42/IRiGKDLgNb0GNqWFfM2A3Dj/RcTFRtulkcdU89dhbXyVvnVqRzzX//6F48++ih33303f//732nQoAFbt27ln//8J9ddd523ZOxklJSUkJGRQbNmzRgxYkSF7VlZWcTFxXHllVdWui0qKqqCK/asWbMoLi4OuPZo3749o0ePZsOGDaiqipSSYcOGERdX0S38XHO2xTAY72n79u1xOp0sW7aMfv36nVcZNScjMjKS9957j8svv5y//OUvFQxZg1Qf1dEG6Uzn27t3L48//ji//vorubm5NGzYkNGjR/PEE0+c9rXWokWLmDx5MkuXLiUvL4+4uDg6dOjApEmTuOiii85ofWeTs/Zp0KRJEzIyMti0aRPt2rUDDLF7//33c+TIkQrjrQ/lvXv3nvZcZ6uGeO3atTRt2rTC3eS8vDwefvhhwDDAqoxPP/0Ul8vF9ddff8I7kTt37sTtdtO8efOA+sfCwsIKtYDffvstH3/8MT169ODyyy/3Pq/rOjfffDNTp07lyiuv5LPPPguK4T85VhuR+fPnV0iNO98pKipixYoVdOzY8ZT6ev8RapooLiwsJD09nZiYGHr16lUjLui2b9jjTTFWVIXdp9hbNiEpjlsfH81Hz/2A1CXX3TuKZqmGEeOODXtYl7aDOgnRvPP0TEoKywEYd8dQJtxX+Wfub18v9359eE8utz18CTs27WP+D2uYM2OVscFP6CiapGPvpuzMOEiz1g3JOpBPbm6x74BCIKRRYCwtcymMNkL1G4aT2CicxOQI6tcNISxEJafEzf4CJ7tzSpmbf5T95S7cUuKOlIahlgDd5kao0huMxk/fWUsrV8qI8MTjUDRCFY0QxY0iIER4CFF0rzZXpEQRpYBxY0FHUOAJIyXEjS6Mz/9QVF/E+xiEZekhpZHabb1ma7AVQIeAA0x9bwGf/OsnVEWgu9yg6+zZCvh9zkTEOPjb0xcTFR3J0YI88vPzaTMslqioKIo8R8jK0omPjyc8PLyC+HSVu3n+9o9ZMW8zMXUjGXl1b1Yu2MK2tVn83+NjuO3JMbz50NdIKWnevhFDxlTMljoe1t9yK1J8LIWFhQHjjse8efN4+OGHGTNmDK+99pr3+a5duzJjxgxatWrFq6++ym233XbSz4x169ah6zrDhw+vsC0zM5OjR49y+eWXV/hdLygoIDMzkwEDBlTYb8aMGTgcDi6++GLvc/Hx8SxevJinnnqKZ599lkmTJvHEE0+QmZnJ008/TZcuXU64zrPFuRDDFkIIunTpwrJly1i1ahU9e/Y8b8wHT4VRo0Z5U6fT0tKC14FBTouqakkH8Oyzz/LYY48RHx/PJZdcQsOGDcnJyWHNmjUsWLCgdgniDRs2MGHChEq3de3albvuuotZs2bRv39/rrrqKkJDQ1mwYAH79u1j8ODBFUwg2rRpQ2JiIl999RXh4eE0atQIIQR33HFHtZkgTJ06lQ8//JAhQ4bQpEkTIiIiyMrK4qeffqK4uJgrrriCa6+9ttJ9TzVdetiwYWRlZbF7925SUlK8z/fq1Yvk5GRSU1MJDQ1l+fLlLFiwgGbNmvHNN98EfNA9/fTTTJ06lcjISFq1asWzzz5bYZ7Ro0fTuXPn0z8JQc47rFTpO+64g969e1f3cqoUl8tFeno6TZs2reCseraoKaL44MGDrFq1iubNm9O6dcVIaXXRc2hbfvk8DSGM2tsuA1uf8r6X/99QLr6hPxIIDTME1bql23n4uneQukQKBeFnuDRz6qJKBfGOTfsrPPfqQ99QWmz6VHjToI0U6TF/HcDw0V1o5lebfNsN7xmC2FcqbHRHkpCQFE5SowgaJUfQMDEct0dn775Sdu8tIW19HkeOOsmvI7w1xaUJZiQZvxpiYbhJo8gA7zBrQiEkAnDbyghzhmBTNByKG4eiowodh9CxCw+qMG8+SIVoxUkJoQgJHk0nVpXYhIrVOMkurL5Px3DMTWRvhrKVQm5FSgP+kX5jDOdoVBV03dfH2aSkwEXePidDL0w1d5GUl5ezKyObret3sDfiINg8hIaGEh8fT926db0C+X+fLGL53E0AFOaV8M07c401qoLMbQeZsuQxug9OJT+nmKapiRUMuU5E69bGz+bx2hZu326k8Ldq1eqEx/npp58Aw1H6WMLDw+nZsyczZsxgzZo1J/28sDLmKiuDWrVq1XG3rV69GiklXbt2DXhe0zR+/PFHhg4dWuHaqX379nzzzTe4XC4WLFiAruskJiZy+eWXs3Xr1nOeRnwuxbCFqqr06NGDhQsXsnXr1loXSX3rrbdo3749r7zyCg8++GB1LyfIeURVtKQD+Prrr3nssccYPnw43333XYWStmMNlmsKZyyI9+/fz7Rp0yrdlp+fz8SJE/n22295/vnn+eyzzwgPD2fo0KHMmDGDp59+usI+qqry3Xff8eCDD/Lpp59SVFQEGKnB1SWIx44dS0FBAcuWLWPhwoWUlpYSFxdH//79ufHGG7n66qsrvShdvnw5GzdupGfPnpX2/z0Vxo0bx3fffceyZctwu900bdqURx99lH/84x8VIseZmZkAFBcX89xzz1V6vJSUlKAg/pPwxBNPoCgKL7zwQnUvpUqxeg1HRUWd84uY6hTFUkq2b99ORkYGXbp0qbSdXXVy+9NjqZcUx57tB+k9sgN9Luh4WvuHhAVmMMz51oj0Gtmx0qvdhIDo2IpmOCWFZRzem+ftH2zhFcPG3gGZtnXqRgSIYYCRF3fmP2/MNrbHh9C0eRSNmkTSMCkcj0eyd28Ju3YWsWDRIfJM92VPhOpnBiZ87tLmlAHiWgCqRCi6oR8t0y1dQUrpbb3kVMoI00KwCQ2H0AlRNBQhUYSHEOHxildV0QmxeSj1SBQBNiloYHeiohgRbUAVKnbVjdNT0X39RNJDWtFxxajbjQyzU1pknE9R7kYcG3bW9QrO4H1HtvOdfSEozC3jsWs+xlnqQtclg0d34a+PXkhOTg7Z2dmsW7eO0NBQ3CFltOjegKyNObjKPN5j6prk0J5cSovKqZdYh3qJp18qYQnYWbNmoet6QK17UVERS5YsISws7KQ3El0uI428smw3/+dPRWBagrhbt24VtlmCuLJta9asqXTbwoULyc3NPWGplsPhYOTIkXg8Hl5++WUefvhhdu/efU4diqtDDFs4HA569uzJokWLiI6OrnGfqX8EK3V6zJgxXHrppbVO8J+PSKmgy3Pr5yNPc76qakmn6zoPPvggYWFhfPHFF5X6u1RFu92zwWkLYqsF0alwxRVXcMUVV1R4furUqUydOrXC87169aq0fUB10b9/f/r3PzWzDn969ux5yufIErPH8uSTT56yWdjxzmeQPx/p6em8+eabtTJVevPmzZSXlzNgwIBqiY5Whyj2eDysXbuWvLw8+vfv/4e9D84GdoeNq+8aWWXHi0uI9motIQSxdSM5mltMZHQY978S6J3gcrq598q3yN5+yBivKr7P3mMEmj+/TV/JmAkDvNFFj0cjOSWS/kMbktIiishIO3uyisncUciSOfs5UuACVTHbKAmkatYbm6IRAE0ibYbwFi6Q4aYIdoO0m7nHHokS4qehVdB0w+TLqiF2KmXYsBEuBDZFQxVGhNiGB9VszWRp7UT7UQo9sWiALkIAGwqaKVhBQcGmmj2ijsXPS8w4X4HP+0S9oOeA1oy5vDtTXvmFDWk7Kz+WaX4mgCtvGUhi40CTpuVzN1Hmd5NiwfdruO/V673mUx6Ph7y8PHaG7aZ0ZDGDb0jlwI58sjbmkrUxh+I8J01aNSD8FB2lK6N58+aMHDmSWbNm8fbbbwdEQZ544glKSkq47bbbAlyIKytrGjBgAG+99Rbvv/8+t912W4Cg+uWXX1iyZAmhoaH07XvyWvrVq1fjcDgCzLQsLEF8bBTY2q+ybd999x2KogT0nF+zZg3R0dEVPrN27drFiy++yNixY2nYsCHR0dEkJlZNz+cTUZ1i2CI6Oppu3bqxcuVKIiIiauRn65lywQUXcPXVV3PjjTeSlpZWI0prgtRsqqol3dKlS8nMzGTs2LHUqVOHn376iY0bNxIaGkrPnj1rtMFr8LckSJBagpUq/be//S3AjbQ2kJWVRXZ2NoMGDarWu4vnUhRbrVJUVWXgwIEV2qqcj+i6zo9TFrFl9W7adm/GJeP7V/jje9WdI8hYl826pTto3CKBJz+6lToJ0dgdaoWxGev3esUwgNT144pgf/btzuGnL5eQtWsPcY3CCI0RuF0adrtg8fwD7M0sxuORoBliFZuCNJWo9LpRC4QL9FCJFAKlXKKHAgrYysEVgTcK7FWwLomI1BGKz9xa2gQeTeJwGHHdUt2Jhka47sCjGmnSNqHjEBJV+NygFQH1QkrIcEqEFHh0jQPOSOrYC72CWCAocZ/gxtjxRPExRcerV+7m4cdHExEeglAEUjccwRUh0DwCEepAKAq62VqpWdtGFaaq19AX0RWKICYuAtXmez9tNhsJCQkkJCTQpFEzVi3eRPtO9WnRvpQyZzGeckmzlikcPXqUOnXqnPFNsXfeeYe+ffsyceJE5s6dS2pqKunp6cyfP59WrVpVyLKqrKxp7NixDB8+nDlz5pCamsqYMWNo0KABW7Zs4X//+x9SSl544YWT1ts5nU42b95Mx44dK72BuXr1apo0aVKpA/Tq1auJiIioENWdOXMmffv2DfBXeOONN5g2bRo9e/akXbt2JCQksHv3bn744QcArrnmGtq2bcvq1aspLCw8qyUZNUEMWzRo0IDWrVuzfPnyWvMZa/Hmm296U6cfeuih6l7OnxoNgcbZ+X060Zzg80WwCAkJqTRzpapa0q1YsQIwfre6devG+vXrA7YPHDiQb7/99ritY6uToCAOEqSW8Pjjj2O323n++eereylVSl5eHhs2bKBXr141on/kuRDFR48eJT09nfr169OxY8daY47y7btzmfKvHxGK4PfvV+N2ebjitqEBYyKiQvnXl3dWSGldtWgbr9z3JSVF5VxxyyBuvHdUJW7FwtuyR5eSzn2as2PrQcpKnGgeDVUVNEmtQ8su9dAicomsL8jYcIDdmaUcOlDmjYqOvb4Pa1fsZmfGQV9NrfBzmMbbbhhNgrSB6hK4hRGVVk2RKa1AsjAHIxCKRFHMemJTYLtcEBFq7HPUFYZTLSNcd1AsNBzCg6JIkDoKut8rBYcCipBIJHVD3WwujaNtZOAFEELxtZE6zjWZNzhsrVMSEFW2m5H0q28fwtqlOygvcyEl6G6jlZKUZi9mjFrfrO0HgcDU+V4j2jH29qH875PFxMRF8o9/X39c0ZXYtB6JTQd7v3e73Rw+fJiDBw+ybNkyVFWlUaNGNGrUiOjo6NMSb82bN2flypVeJ9Wff/6Zhg0bMnHiRJ544olTcl1WFIWff/6Zt99+m6+++ooZM2Z4S6ouuugiJk6cyMiRJ8+a2LhxI263u9KU6KysLHJychg4cGCFbaWlpWRkZNCrV6+A35EVK1awd+9e7rnnnoDxl112GR6Ph+XLl/PNN99QXl5OYmIi1157LQ8++KD3InjAgAGkp6dTWFhI165dqzyyWJPEsEWLFi0oLCxkxYoV9O3bt0asqSqIiIjgvffeY/To0Vx66aW0bdu2upcUpBo4tiXjE088UWn2aVW1pDt8+DAA7777Ls2aNWPevHn06NGDrKws7rvvPn777TeuvPLKGpUNbBEUxEGC1AKWLVvGW2+9xYIFC2pVqnRZWRnLly+nbdu2NeqO4tkUxYcOHWLFihWkpqbSrFmzGmOeVRWsXrgV8ImnNYu2VRDEFv4X+h63xnN/+8TsLwxfvT2Xjr1b0KVfS25//DI+fulndF3SpktjQsMcRESHMuKKHmxdv5e1K3aT2DSall3iadY+jvISD4ezy/j6pVUUHClHC7VDZBjgCy4rwDOvXs21f5lsfK+DRzEGCCEMWWqZZtkMMy3Vqh8O+F+iIvAI3YwSO1CE4Rpt6WxVkegiDChFACVaBG61nAgZRqmiY1MkitDR8Xp2GfMCxkokQggURdItMifgHBo+YjpYbtPHw8/kS1i5234tEEeMMsRt647JTJn3ABtX7Oa526f44si6jrCpCLOOu2t/w5Tqf9MWMX/mKhqmxHPrY6O5+eFLufnhS0+wkMqx2+0kJSWRlJSEruscOXKEvXv3smjRIq8JZ6NGjQgPDz+l4yUnJzNlypRTGnu8sia73c6kSZOYNGnSKb6KinTr1u245VVNmjQ57rbw8HA8Zl9nf2bMmAFQoX549OjRjB49+qTriY6OZtCgQaSnp5OWlkavXr2q7O9JTRTDYPy8d+7cmcWLF7N+/Xo6d+5caz5zR44cyTXXXMONN97IsmXLgqnTf0L27NkT4Dt0psZ5p9qSzmqdK6Vk+vTpXh+ldu3aeR34f//9d9LS0mpc+vS5rfIOEiRIleN0Ohk/fjx33nknPXv2rO7lVBkej4f09HQaNGhA06ZNq3s5FbBE8bZt29i5s5K6yjMgOzubFStW0KVLF5o3b15rLswsWnZojFAsV2VBiw7JJ9nDwFnmoqzEGWCOnHvIuKN92YQB3PXsFXg8GhtX7Gblwm0kJNahRccGuEU+1z/YhRHXtsTj0vjpoy18+cpa5n2TQUGBKSicLkAG/DXM2HKA+HrRSCECk4eVQOMsaZo4S1Hxgdkv2BtV9nlvIYREERJVkcbXpvO04TRtx62WEqI5UAWoGGnSbiEDNK0AQhRLJEucHpV69rKA8yaASHt5pa2XpN/DO9h8vVJKb/tiIeCyy311qrFxkfQZ3pbYetFG3bCqoArJmPH9GTmmO899cBPtu6Ww5Jd1vP3ot2xeuZv5M1by4t8/OeF7fKooikL9+vXp1q0bo0aNomXLluTm5jJnzhwWL15MZmam1/Tqz8aMGTPo1KnTH/q8dDgc9O3bF4fDweLFiykrKzv5TiehpophC1VV6dmzJ4cOHWLXrl3VvZwq5Y033iAvL49XXnmlupfyp0WXvl7E5+5hzB0dHR3wOJ4grqqWdFav4mbNmlUwFQ4LC+OCCy4ADPPhmkbwdlGQIOc5r776KsBxHcbPR6SUrFmzBlVV6dixY40VhlUZKd6xYwfbtm2jZ8+eXqOh2sYN91+Ey+Vm47KddOzTgmsnXXBK+0VEh9FnRDvSZhvteFRVYcOynURGh/Lte/PJ2mmkadkcCs0710MLz2fRokXUbRjFj1PXsG9HQYADtbQMt1QF1aOhaRpS2LyicMeOg1x9xZtIhwqabuZF+4ymJBhC2O9Y0hKdlkC2UpSt6KtXEBti2PqRVhXQhAezOhkhJC61jBAtFJuwI4QTVYCspJmw9VshBISoLnaXR9LB7rugkUCx55ioqde22zdIKgJ0U3BbKdNu3Tt81i8buGxMd8IjjIupBT+sJT+vBMu9u0PPFtz64MUB02xZudtbb6xrkoy1WYDpFr9gK8WFZfQa2paI6LBK3vFTw2azkZycTHJyMuXl5ezbt4+srCw2bNhAUlISKSkpf6je+Hxjy5YtVXIcqzXR+vXrWbhwIX379q3ULfZUqOli2CIsLIyePXuydOlSoqKias1ncEREBO+88463Tei5alcY5PyiqlrSWcc5nkmdJZir4kZbVRMUxEGCnMdkZ2fz3HPPMX369FqVKp2RkcHRo0cZNGhQBSOlmsYfFcVSSjZt2sTevXvp169frXI7PRZHqJ07nh57Rvs+/NaNvPqPr1jwwxo0TWf2dyuZ/e0KkDoxDcLpN6YZrbolUHzUyea0A4weexFRMRG8+8j8Y9vu+lAV8HgQZS5kjN2bM11Y7gaXxzcGHeHS0O2Kty+vVIxUaTwg7aaoLAUZiyEqPYAdbz9jA6u9kk8QYxwuQCR7bKWEuaNQkKhY2jUUKct9PYzBr6IYwu1QrImANFsd3de6ykq3FgEL8s6PIpCaLyysqwI8xvcfvT2PT/6zgGdevZruvZqzbf0eVFVB03SQsHd3xfZDG5bvNFLjzfPVrL1htPX6g/9lzrem8Urjurz1471/SBRbhIaG0rx5c5o3b05hYSGZmZmkpaURHh5OSkoKycnJwZTR00BRFDp16sTWrVtZtGgRvXv3PqX6an/OFzFsERcXR8eOHVm5ciUDBw48YXuZ84lRo0YxbNgwJk2axHfffVfdy/nToVdD26XTna+qWtINHDgQm83Gjh07cLlcFa5LN27cCOA1KKxJ1OwrzSBBgpyQSZMmMXz4cEaNGlXdS6kyDh8+zPbt2+nVq9cZ17uca840fVrXdVavXs2BAwdqbFulmoLNrqKqitc0Cylp0i6Oi+/oyNj7uuEIUfn5g0188+oacrLKiasXTWiYg+GjKxoWeRGGqBVlvhRbb7shrwmV0VpJtdyiEb4osClYpWI8VBegGKnSlJsRZIFhUCUMcWgZYfs/7Ko063cNsexRS3HoYSjCX/I6zIphKzKNYZjl91LqO0rxoOExHbF0NBw2d+BrPlYLewxh7TP+Mp+3xpmRY03TeeIfX/H47VNRbKYYFoCqUOLWuGHES/z3gwX855nv+filn8hYt8e8wWC8X536tqS4sMwrhgEOZuey4vetx39/zpDo6Gg6duzIBRdcQLNmzcjKyuK3335jw4YNFBcXV/l8tRUhBKmpqbRp04alS5dy8ODBU973fBPDFo0bN6Zx48asWLHCWw9ZG3jzzTeZPXs2s2bNqu6lBKmBWC3pMjMzefvttwO2WS3pbrzxRq+xqdvtZuvWrRWud+Lj4xk3bhz5+fkVDF5nz57Nb7/9RkxMTI28Zj1tQZyZmYkQoka+mOrms88+47bbbqN79+6EhIQghDhhf+B9+/YxefJkRo4cSePGjXE4HDRo0IArrriC9PT0Pzz+dHnppZcQpmnMsmXL/vDchYWF3HLLLcTHx9O8eXPeeOONP7zGID5mzZrF7Nmzeeutt6p7KVVGeXk5q1evpn379ietValpnK4otmqki4qKGDBgQK2JRpxNOvRqjqIK2g9I5JpHetB/bAv278jni6fTWfVzNvXq10Oxqxw6UMj4wS/w1O1T+f2H1UTFBJpmBWAFMU0qjPF/QoL0hWyNqLCfkZZN8QnLEFM4G/2HrWOBpywwOiwEGDfjpRWoxW0rweEJ87Y49qEg/R6an7iVEoo1BR0dacaOdSlxy2MMtY4V+25AFYao90vzVjyBjtYAbpfG8kXbmfn5Mkb/dQA9BrdBhNopLXNx5GABU96YzQ+fLeXbD3+HY6KxMXWjcITYUNVjelxWQXT4eNhsNpo0acKgQYPo06cPLpeL+fPns2zZMnJzc8/avLWNZs2a0aVLF1auXEl2dvZJx5+vYtiibdu2qKrqjWbVBpo0acK9997LnXfeidPpPPkOQaoMHVEtj9PlnXfeISEhgYkTJzJ69Gj++c9/MnToUF5//fUKLen27dtHampqpS2YXnvtNVq0aMFTTz3FoEGDuP/++7nyyiu58MILUVWVDz74oEbe/A9GiKuQRx99lPfff5+srCwaNmx40vFvvvkm99xzD7t27WLEiBHcd9999O/fn++//56+ffvy9ddf/6Hxp8OWLVt4/PHHj9vW5kzmvuWWW5g+fTrXXnstvXv35p577uGDDz444zUG8eF0Ornzzju57777Ktjqn69IKVm9ejXx8fE0adKkupdzRpyqKHY6nSxZsgRd1+nXr1+t6n/5Rzi8L4/nb5/CP8a+we8/rA7Y5na7SekUwy0v9KfbsCY4tCi6d+pFnch6DLyoC//+/h72Z+eimyox91Ahy+ZtweX0UHS0FPArnxWgKIKufZobIVspCS13IhW/WuBjRKSugPDoxhjV2CgFRmqx+bVloCUF6H77q/gEgdtpC1iH93/p+15Ty7Br4Rxj6YVHGgYtUhpBZ93vT7gANOHEI3V0cwKX1LxBbV/NsN8dACGQIX5fW2ZhUqLofge29tN9Cz94oIDx919k1mb7XqwupZEqfYya7zG4jTfd3aLPyPZ0Hdias40Qgri4OLp168aIESOIjo5m2bJlLF68mEOHDh3XzTmIj6SkJHr16sWGDRu89YSVcb6LYTDSxbt3786+ffvYt29fdS+nynjkkUcQQvDaa69V91KC1ECslnQTJkwgPT2dV199lZ07dzJx4kTS0tJO2lfdIiEhgfT0dO655x6ys7N54403mDdvHhdffDGLFi3iyiuvPMuv5MwIFtRUIR9++CEtW7akSZMmvPDCC/zzn/884fiePXuycOFCBgwYEPD8okWLGDZsGHfccQeXXXaZN230dMefKpqmMX78eDp16kSrVq347LPP/vBay8rKmD59Oj/99JM3myApKYkpU6Zw6623ntb6glTk1VdfRQjBww8/XN1LqTK2b99OaWkpPXr0OK9NcE5WU1xeXs7SpUuJjIykW7du1XLBmHuwgDf/+V/27z7CsLE9uOrOETXinD9+43vs2XkYXdPZuHwnCY3iaNq2ATt37iQzM5OYmBj69OtNvXr1vOtt3dl386TAFL4VMR2xhEAIGHRxJ+59bix2h41t67I5mJ1LXGIs99z9hSHkjtVHQnijppqQhvu0wBDGlohUMOpwdTOKbEWHlWMPFoYQRQGHBktrGmOdSik2PRRxTB2YW9qQ6N4yYJcMTJmOtpfgkhLdTJl2oWO3lVOuO7wBYauo2dt7WDHFvm611JAIjxVAPtaaWnr/j60bydwf1/r1qlK8olkoAlVV8LiMdO3r7x1F/eS6zLj1I++hFFUQExd5zn/uQkNDadu2LS1btmT37t2sWbOG0NBQWrZsSWJiYo34Paip1KtXj379+rFs2TI8Hg9t2rQJOF+1QQxbhIeH07lzZ9asWUNsbOxxgwXnEw6Hg8mTJ3PllVdy3XXXBQ22glTgVFvSpaSknPBGYlxcHK+99tp5dfPlrEeIp02bRu/evYmMjCQyMpLevXszbdq0CuMWLFiAEIInn3yS1atXc8EFFxAVFUVMTAxjxow5bi/AmsTw4cNPK7J1+eWXVxCYAAMGDGDIkCHk5eWxYcOGMx5/qrz44ousW7eOjz/++Lh/wE53bk3TjCiDX2G+oijoul7hGEFOD8tIa/LkybXGSCs3N5eMjAy6d++O3W6v7uX8YY4XKS4vL2fJkiXExMTQvXv3artgfOHvU1kxbzN7dhxi6gv/qxCNrQ7cLg9ZGQfRzQhiVFwoGdu3Mnv2bIqKiujTpw/9+/cnISHB6AWs68yZvoIpL/6PjSt2UZRfSp26laSdC0uxgmpTkBIW/LSOrz9YAEDrTo1Z+tt6/jH2Tbw2VYLKjaekKYQVYUaTpSGENV+EWHFi1BgreIWnrERjHau7XH4fjSXShURi18LwM8fGLVVc3ocNTRo/P9ZSy3VBOTpO3RTEUqKb972l/z/+qdaatV5f9NeKgFd6HoGwiBCu//swtm/eF/hihCC5WT1atE3ixc9v58vVz/DV2me5btIodF2nIK/EN68uiYo9tb7BZwO73U6rVq0YMWIEjRs3ZtOmTcydO5fMzMxaVTta1cTGxtKvXz+ysrLYsmWL96K4Nolhi8TERJKTk1m5cmWtuXa56KKLGDZsGPfcc091L+VPgyZFtTyCnB5nNUJ8zz33MHnyZJKSkrj55psRQjB9+nQmTJjAunXrKr1zsHLlSl5++WUGDx7Mbbfdxpo1a5g5cyYbNmxg48aNf5rUQksUnKor5umOt9i4cSNPPfUUjz76KO3atTu9RZ5g7sjISC688EKuueYarr/+evLy8vjyyy95/fXXz2iOID4mTZrEsGHDuOiii6p7KVWCy+Vi5cqVtG3btkbWlZwpx0aKExMTWbp0KbGxsXTt2rVaI1G7N+/3Ck9FVcjcegAuq7blAGB32GjVqTH7sg7R9YIUWvduQEydCLr26ER0dHSF8Z++9itfvTUbRVX45j9ziYgMpTi/FEJDvAItLCKEslInAkFknXCKCsxWDxI+e2sul13fj+0b97Dwp3VGRNSjg0NBHNt/GIzosrf1kjTeP7PoV8WIskoBqhM8Zn9iPBh/ZStLw65weBvgQhFQoit41DJsnjB0uy/j2YPizXiWEjymILYixv87lMrVSb4bky4J5Z6QY+YVgf+Z/ZJRBEIY+djCbd0YCHSk7jWwNX37tqD34FTqxEfiLPcEKPu4elF8MOuBSl9f2uyNHD3iHxkXXPF/g49/Qs4RqqrSrFkzUlJS2LdvH9u3bycjI4M2bdqQnJwcjBhXQlRUFP369WPJkiVIKWnZsiXLli2rVWLYol27dixatIjNmzfTvn376l5OlfDmm2/Svn17Zs+ezYgRI6p7OUGC1AjOmiBetGgRkydPJjU1lbS0NK9BzlNPPUXv3r15/fXXufzyy+nfv3/Afj/99BNfffUV48aN8z5344038umnnzJz5kyuvvrqU5r/ySefPK31Tpo0qcZcjGdnZzNnzhwaNGhQobF1VYy38Hg8TJgwgdTUVB566KEqX+u0adO4++67+fTTT4mMjOSZZ57h73//+xnNE8TAMtKqLWYfVt1wbGwsTZs2re7lVDmWKF66dCkZGRk0aNCAzp07V/tFds9h7VgwcxVCMSKt56KO82S43W4mPD2czMzdFB1xk1SnOb2HdTru+HkzVgKgazpCCIoLTbFb7sQe5uCJj26hRbskfvtmBbouOXKogJ//uzzgGEcO5pO5bb/viXInhJwgQ8FUolIo3nphHemtPZaKafxsGW05AesebjkQhtdpOlAzGAJbMV2nc51heMw64nJpCHHjR0ZFlypC6kgU3L4MZiRwVI+gVIJqPn9Us+Mxla/3R86MlnsDCLphqCXMULS3Fto71ieIr/+/QSQl1uHrjxeSn1fCnsycAEHcZ0jqcU9doV90GIxa47DwqrvBnXeogB+mLETXJZeM709C0um1CFIUheTkZBo1asTevXvZunUrO3bsoG3bttSvX7/af2drGlFRUfTv358lS5awZ88eoqOja50YBuOGSffu3fn999+pW7fuKfnD1HQsg62//e1vbNy48bzp5nC+cj60XQpyFgWx5a785JNPBrjFxsTE8MQTT3DNNdcwderUCoJ44MCBAWIY4KabbuLTTz9lxYoVpyyIn3rqqdNa74QJE2qEIHa73dxwww04nU5eeumlk/5xOd3x/jz//POsW7eO9PT0M0pTPdnc8fHxfP7556d93CCVYxlp3Xvvveet6dSx7Nq1i8LCQgYPHlxrLzhDQ0Ox2+2Ul5cTFRVVI17npJevIblFfQ5m59L/4s507NOy2taiaRq7d+8mIyODmJgYBg0eeEr9ThNT6pFzsABd0420TT/h5i5z8eOnS1m7fBdRMeH846WrqFs/hl++XuFN8QyPDGHO92v4bupiI6rs9qAUlaNHRyD9m/0e83apZTruEBWpGu6h0ooGS7xfe12nhYLbPw3bMs3yWM7SxiTKMX2Jc1wxuNVSbJ4w3CgIdBTp7WKMlCoaoOmKN6VaSkHDsAJytEjs0vjTXoYDh82Dy+MwTo+VFW21kJKgqIDuWzMIcCi+tGq/TNEQh40nJ37G5jVZxiYhzFIYY3CbDo2O+371GtaW6DrhFJp13qPG9cYRUjWXIK5yN/eOfp0j+/MBmDt9OR/8/ijhkacvuIUQJCcnk5iYSFZWFmvWrCEyMpK2bduesqnMn4WQkBAcDgfFxcVERUXV+J7xZ0pkZCSdOnXy1hOHhZ09Z/RzxSOPPMIXX3zBa6+9dlK/myBB/gycNUG8Zs0aAAYPHlxhm/Xc2rVrK2zr2rVrhecaNTL+yObn55/y/GfDNbKyqHNVRpZ1Xeemm25i4cKF3Hrrrdxwww1VOt6fdevW8eyzz3L//fdXes6req1B/jivvfYaQggeeeSR6l5KlXD06FG2bNlC3759a00t9LFYBlrx8fGkpKSwbNkyhBAVjLbONY5QO9fcfUG1rkFKSXZ2Ntu2bcPhcNCtWzdvffCpcM9LV/Pi3Z+Svf0QPYemMv+7lb7PfUUh/fdtALjKC3jm75/x3/THeP2/f+PTN2YTHhnCBWO78+itU43xQoDDTrduzdl6tITCYrMtSSV/RuxucCl4jbas6LDuJ4jBJzAtHyshVKTUQICz3IbN7jGnlmY/YmsyiYdQ3GaEWCLQpOKN6OoS3LqKDnh0FSmFGSEWFHlCkAicus0cK/CYXyN8vYWF5T0mDLdqVViRbb8UaQnCCj2bm5IaxbFxVab/u0j9RnG4XB6GXtSJYZdUHtF3uzy8fO8XXjE8/PIe3PXc2ErHngnZ2w9yaE+e9/u8Q4Xs2rSP9r3O/PfMSqVOTk5m586dpKWlUa9ePVJTUytN4f+zYdUMh4aG0q1bN9LS0lAUhbZt29aIm35VTaNGjcjJyWHlypX069fvvBf/lsHWVVddxfXXX19rulUECXKmnDVBXFhYiKIo1KtXr8K2+vXroygKBQUFFbZV1nvUqk2tbqOLyqLOVRVZllJy66238tlnn3H99dfzn//8p0rHH8v48eNp3rz5aaeWV8XcQU6f7Oxsnn32Wb755ptaIR7dbjcrV66kdevWpxQNPB+xWivFxsbSpUsXhBAndJ/+M5Gbm8v69evxeDy0bduWpKSkU7qIllJSXuoiLCKEhKQ6vPrtRO82m6ow679mT3S/Y0kJxYVl5BwqpHWHRjz7wV/5/J25vHj/fyscv13vFnStF8l/3plnHqeSNQh8rtOAJqShKBGGMZUQRlTVRuUtnABPmQMZ6fHqTyGkOUR606M9tlLsWjigokkdyxdalwK3ruBBxS0VJB4kRgTYhZ0S6TB6IAOFeiiK0NGFEiju/ZN5TPtp72Zh5HT7L1ma59fusBETF0FBfqk3nfreJ0fTofuJyx2Wz9/M2iW+Vj3zZq7kzmevIDSsaj7L6iXVwe6w4XF7kICqKNRPrprPFbvdTps2bWjatCkZGRn8/vvvNG7cmNTU1FrxWXwmVGag1a9fPxYvXowQgtTU1Fopitu3b8/ChQvZunUrbdu2re7l/GEuvvhihg4dyqRJk5g+fXp1L6fWoiPQz7HJ1Zn0If6zc9YEcXR0NLquc+TIERISEgK2HT58GF3Xz+pd1rNRQ3y2ehXqus4tt9zClClTvKnkJ7r7eLrjK2PdunUAxzUp69OnDwAzZsxg9OjRVTp3kNPnvvvuq1VGWuvWrSMyMpIWLVpU91LOCi6Xy+sm7W+gdbKWTLWd8vJyNm/ezP79+2nVqhXNmzc/5TKPPTsP8ciN73Nk/1HadG7C01NvJSrG51J817/GsfindZQWl4OuWUrTK0Yfu/lj3vv5Xub/by2fvTW34gRmKyEhTvDZqwiwKUYRsDCcpo16YYEqjBRiKUAWg6yLMbcOFUPNRmRXmGLUunQR0ozUAm61jFBXHUAgUfFYjtVS4JECFzZcmoKUmreGOMTuxinteKQh1Mp1Ox6JLzRshqyl9y+/9EaxAy6fPBX/1kVEhrJyyXby88uM0QISGsYeVwyXl7p47q5Pydiwl4aNA8WplIbLdFURExfJYx/ewofPzEDXJRMe+gv1EutU2fHBSA/u0KEDTZs2ZcOGDcydO5e2bdvSuHHjWin+jsfx3KQjIyO9RluKotCmTZtqXmnVY7PZ6N69OwsXLqRevXqVBnzON9566y06dOjA3LlzGTZsWHUvJ0iQauOsCeIuXbqwZs0aFixYwFVXXRWw7ffffwegc+fOZ2v686aG2F9gjhs3jk8//fSEF4inO/543HzzzZU+v3DhQrZv386ll15KvXr1SElJqfK5g5wey5cv56effmLTpk3VvZQqYf/+/Rw+fJihQ4fWygtJj8fDsmXLiIiIqNRN+s8oinVdZ/fu3WzdupWEhASGDh1KePjptdx554nvyD2YD0DG+mw+ff1X3B6dA1m5jLqqF4P/0pnEpvXYtWmvUdPq8YDD542QvfsIe3cf4fdf1lcUgFLSol0iG5btZOEvGxB1w5EOvz+P1g5m32FHkU55nIq0mUcx64al+bVDgFNgCFEP4DD31zCis8KI9KKbtcOygqEzLrUUmxbunV6XwhDDgIZKqWZD0+1mWyWBBiiKJE+LIEyHSCBfi8Bmd+Nxq77XAYZI959XCNB8UWLVXxCbP79FhWW8+vT35k0GgZSSIznFzPrfWvoPSSU8ItCY56nbp7I2bQcAhUdLCIkMxVlcbpwuVfB/w1/gH69fR8feVXNTrMfQtvQYevajdlb7yIMHD7JhwwaysrLo2LFjjfAgOducrLVSVFQUffv2ZfHixYSEhNRKo8To6Gjatm3L2rVrGTJkyGl39qhpNGnShDvuuIP777+fVatWBQMcZwGJOOcRWxmMEJ82Z+03efz48Xz88cc89dRTjBo1yhsNLiws9IrV8ePHn63pz1o0tyrRdZ2bb76ZqVOncuWVV/LZZ5+dVAyfzniAnTt34na7iWZcNgABAABJREFUad68eYBx1ocffljp+AkTJrB9+3b++c9/0rt37z80d5A/jpSSBx54gBtuuKFWXFw4nU7Wr19Px44da2ULNV3XWblyJYqi0L179+NeXNQmUTzjg/n8OG0xcfWjufvFq0luUT9gu5UerWkaPXr0qJAxdKoU5JV4zZt0XfLr1ytwu41I8LplO/F4NO577VqevuUjDu3JpXn7JLZvP+LdXwJvPD2T9SszDQFrmUUJwWP/vpa2nZtwbf/njKdK3YYg9vbXBavfkZQSoZuRYaRRw+sdY6ZJK8aMUvg6LhmLsAaBrguEClLaEcKNqUm92cxuWzl2T5ifp5XAg4omQZMKbt2BW7fcRAW6Dnnl4cQ6nLh1B5EY43SP3fcazBOhlPt9rxhK3HLNRoJaplXow6x5dPJyioxzJwGbgq4ovPL0D3z7+TLemnpLgEnW1rVZAfs7y9xG+FtKNI9O7qECnr5tCv9d/Qyqen5dhAshaNiwIfXq1WP79u0sXryY5OTkWp1Gfap9hqOjo+nduzdLly4lJCSExMTEc7zSs0/Tpk05cOAAmzZtolOn4zvhny889thjTJ06lW+++aaCqW2QIH8WzlgQb9iwgQkTJlS6rWvXrkycOJG77rrL2+/siiuuQErJd999x549e5g4cSIDBw480+lrJB9++CGLFy8GjPNjPbdgwQIARo8eHZB+/PTTTzN16lQiIyNp1aoVzz77bIVjjh492htJP93xAMOGDSMrK4vdu3cHRHtPlzOZO8gfZ/bs2axdu5Zvv/22updSJWzYsIG4uDiSkpKqeylVjpSStWvXUlZWRv/+/U96w6g2iOJVv2/l/adnAnBoby5P3vQBHy18FDDSxjdu3HhG6dGVMeamgbz2j6+837tdHm+0EuDr9+bx/q//4OPFjyGlRNd0xg9/idxDhQCodsUQw2DsYzpDA/zrH1/zxbyHsNlVPG4NxelBryR7QeoSaVNACGO7pePM2mEpMQQjpmgUoAiBZk2kg6WSNc0QVv7T+GcRl4tSbFoYmIJbSnBLQwA7dRWnZsOtK+hSNSIQEjTFRqmuEqqbUV0ZilAlUjOzps2HVVIsfM2I/Ry3QGg+Yy3f4vx6Ewv8bbLJ3HmYLRv30qlbive5OvWiOZCdW+EcWqFwKaGksAy3040afn62fbHZbKSmppKcnOxNo27Xrl2t6198qmLYIi4uju7du7Ny5UrsdnutSC32RwhB586dmT9/PomJief964uMjOTee+/l4Ycf5vLLLz+jriNBjo8uq6GG+BzPVxs4Y0G8f/9+pk2bVum2/Px8Jk6cyBtvvEGXLl149913ef/99wGjyflTTz3FX//61zOdusayePHiCudkyZIlLFmyBICUlJQAQZyZmQlAcXExzz33XKXHTElJ8YrM0x1flVTn3H9WdF3ngQce4Pbbbyc+Pr66l/OH2b9/P0eOHGHIkCG16mLRYvPmzeTk5DBgwIBTvqA430Xxnh0HvV/rmmR/5hE0Tefw4UOsW7eO2NjYM0qProwRY3sy4+Pf2b3lgO9JK4opBHa/FGchBKpN5d3vJ/HYbVPYtm4PuibN1kcVf/Y8bo2tG/Zw/d+H88mbs82yX1lxrEeCXZiOzRJdKGbKMehCGj19wQjzasAxPwZWoBlAagKpyoBArO43rVNxoqAitBA8ihNQcOugSRVd2nDqNjy6QJNGDraOwKWrlGphuM0iYadmQzdVbUApsZky7X2J/sJXSt8478L8nvO2pAo8PzGx4axP38n/PltKRHQYE5+9gucnfkZRfqkx1tcfyrtPjyGphJ6nYtgfK436wIEDrF+/nv3799OpU6cTtufZsGwH7zz2LeUlTq6790KGj+15Dld86pyuGLZo0KABHTp0YPny5fTv379Sw9TzmYiICNq2bcuaNWsYMmTIeS8i77nnHv7zn//w0Ucfcfvtt1f3coIEOecIaeYWr169mm7durFq1aozasMTJEhVEfxZNPjqq6+YNGkSO3fuJCIiorqX84dwOp3MmzePDh06eNuo1SZ27txJRkYGAwYMIDIy8rT3P3r0KGlpabRu3fq8EsVZ2w7w9wtfRtclUkp6DkvlL3d259ChQ7Rv377KI2UzPv6d95/5HlVV0DQdYbMZKcyK4OkPbqL7oIpGPjeNfJkDe/JMoSpAVX1CTtO9Qq1+/WgO7zuKdBjb3XXCAqKgSIkmQUYY253h4Iox0qo1FUP8CnBHGgLZrUpkNKCAFqL7osmqKQhtLhwxGkJIosOc3iWF2VwIAd3q7KLf3mvYkvgzZY58dKDMo+CUobh0waHyaDRdoAjFrDGGBiEFNAgrIkSqdMm6gbTkr5i+oCu6roIOjiKj0FkUQojbmE+YzRuERyek2HidEfvLqRsfSXh4CAf25OFxeowWTBB4k0BVUASMv20IAwa15o4LX0XTdYQQJDapy39+uY+i/FJuHf4SxQVl3vNoKfD7Xrma4VfUTCF4prhcLjZs2HDC34HyMhfXdnmE8hKXUd4l4D9z/kmT1g2radWVc6Zi2J+MjAx27drFgAEDzvu/Y8cipWTp0qXePsXnOx9++CGPPPIIu3btqnXvVXVQWFhITEwMV8wZjz3i3JZSuEtcTB8+jYKCgmCbuFPk/HYDCBKkluJyuXj44Ye57777asUfpvXr11O3bt1amSq9Z88etmzZQr9+/c5IDMP5Gylu0rohL0+fyNxvVxDfOILoxgput5shQ4acMDp2poz+60Bi6kSwdW02HXo1p1XHZDI27KVZakOSUipPW2zWpiEH9uQZ0VkdsAlfQFRVsNugc4+mrFmU4dtJSih2QbRfnbsQqLqOB6P3sKMcXLEYQlcc03dYATsClzCNqixjLfAZdGkqUtdAMdKdVT/NJAGXruBSy1C1cDRZYEatBW6pokmB2+wvbKVT69JI4y7VHejSEC4lmh3QQR5jquVfsmumjiuuwPOWm1NMLsXmeRJGxNu7jzAewgg2t+uUzLa12Xg8mjmNZO/uHP796HdcecsgPkt7nKW/beDV+79A8zPsikuoXVFDwNtT+8CBA6xbt67SaHFBbjFlVq9rAAn7dh+pUYK4KsQwQMuWLXE6naSlpTFgwABCQs7/jACL2pY6fdNNN/Hvf/+byZMn88gjj1T3cmoNulRMr4dzO2eQ0yN4xoIEqYFYpmd33313Na/kj7N//35ycnLo2LFjrUuVPnz4MOvWraNnz57UqfPH2rxYonjbtm3s3LmzilZ49mnWLpHelzcjKhnatWtLr169TiqGdV3ng2dmcm23x7j/ijc4WFmtaSUIIRg6pjt/e+pyBlzUifqN4hhwYcfjimGAGyaODPjeMMDy1c5ef9dwWqQmVhijenQjguzNcTZTjz1GLa0lgLHKby0zLd10nBY+/WnkQvsvAJAquq6ga8Jn8GUOBShwhuJSy7B5ItBR0FGQQuDRFTy6wOlR0HSBphv1aR5d4NJUyjUHJZqhvi3R7F0n5lo1Am22BaiewPMmMdynjci6YtZd+4Swt05awu9zNxEZG25uE0ZkXVGY+/1q7r36XcpLXcQ3iCEk1BclufTG/nTp34raSsOGDRk6dCh2u5358+ezZ88er9lnfMNYmqYmoigCRVWIjAmj7Ul6OZ9LqkoMg/E72759e2JjY0lLS8PtdlfhSqufiIgI2rVrx5o1a87716YoCs8++ywvvvgiubmn9pkcJEhtISiIgwSpYRQXF/Pkk0/y6KOPnveOpU6nk3Xr1tVKV+n8/HxWrFhBp06dztg5+VjON1F85MgR5s2b540Kn2pP1tnfLOe7DxZw9EgRm1ft4sWJn5z23Af35DLx0tcY3fYhnv/7NFxOT6XjkpvFk9w8AUUVKF6nZekVdjO+SOPiq3sREmb+rmk6KApCUfh/9s47Poo6/ePv72xJL5AASQgkIQkQepUmoIhgx3bWU8/2885+6p1n1zvFcqeenvU89ex3VuyISBcIhNBLCJCEJEBCAqRny8z398fMbEmCkFA2y+3b15pkpz2zG7Lzmed5Po+lzuHtfTUEoXBrXjGM9I5wMvftxiNAzYWK+VHrY2wFesZaSoHT6dtaq4vQnc3xOCzNWNUINAzRKxVcUuCSVlRNQZX6w63pGYhGl5VmTaFZ1QWMU7UifTMF5rF9BLipbIUn1ezNcusP4TEIMzPh0sfMTAIF60p58s4P9BV8lmmqpL62iW2bynnq9vdoavBmRfuPSDvhbpC1xMwWDx8+nI0bN7JixQqcTicWi8LTH9/G5XdM54IbTuGFb+4hPjEm0OECR1cMmwghGDFiBHa7nZUrV6Jp2qE3CiLS09OJiopi06ZNgQ7liJkxYwaDBg1i5syZgQ7lhME01TrejxDtIySIQ4ToZDz//PMkJSUd1MU9mDBLpU+00RvNzc3k5ubSt29fevXqdVT3HQyiWNM0Nm/eTG5uLv379z+srLAv5Tv2Igx1KjXYsrqEVYu2HHI7KSUfPj+by4fez2+nPUPh+jIcTU4Wf7uWF+/7b5vbKIrC0/++gXOvGMfU80dw6pmD8ShjAQf2N7J4/iZS+xjGdar0cVIWenbURAgUN153qgbjwt7UuwIsLcVmq++F52epKUhN0OS0+ZQ+6+to2GlWmrG5I9GkglsqCBRcmhVVWlClG1V6M8SaFDiljWa3HZemi5hmzernpu1xmfYJw2M0Zqxjq3F5M72e5dJbDm68Dp6vQrB19U59rJL3jfIstlgUeqYlUrOv3pMhFUKwf29d6zfrBMXMFgMsWLCAffv2EdMlil/ffRY3PHQ+KRmdo9T2WIhhE0VRGD16NA6Hgw0bNhy1/XYGzNLp0tJSKisrAx3OEfPUU0/xyiuvsHPnzkCHEiLEcSMkiEOE6ERUVVXx17/+lccff/ygM2yDhfLycqqqqhg6dOgJlQlSVZUVK1aQmJhIVlbWMTlGZxbFTU1NLF26lF27djFp0iTS09Pb9f5KKQmPtCF9ZwxJePJ3/z5k5mjlvE2897dvOVBVh6PJv+l10bdreOOJL7nzgr/z7nOz/fbVJTGG395/Lnc9cTE33jXdK3YNQffOq/PpkqBn6Dx5T49QlH7OyIqR+ZUCIhq944qkz1Qij3j0aRP1PVczxSxVkJpAamFo0nso/WGh2aLPInZLBSkVVEDVLLg0AZqGamSG9UyxwKUqODUrTqNk2qkpSLM82ufltuLzsxFvhNWCrdaNzan5l1MDKb26IiyKpxS6JULVWjlyd+/ZhT79U3jwpV+T1KsrZ1853rMsMiack88MfhOi9mC32znppJPIzMxk6dKlFBYWem4QdAaOpRg2sdlsjBkzhvLycs/kihMFs3R6zZo1QV86PWnSJE455RQefvjhQIcSIsRxI2SqFSJEJ+KJJ55gyJAhnHfeeYEO5YhwuVysX7+eIUOGnFAmKlJK1q5di5SSYcOGHVOh3xmNtioqKsjPzycpKYmxY8ditbb/I+TDv8/m/We/N5Sl9/VrqGvG7VSxhx/8RtDu4r3eH1o4UbmcKp//ayEABWt2sq+yhjufurTVPhK6xSLMMmCD5iYXl9x0CnmLCtA0CW4VabV4j6MIP1FMkxui7V4NKND7co2Xw5xHbFX1SU2+5dP6CuY5CKSRfVVVARZQNe9s4ibFQaIWgWpkjt3SgksqaJrAYhG4pOLZlaqBtCi4NAWLca/bqVlB0UC1eLPD0rgT7iuSpcThVCHagsWpomj+v9djxmcz6z8r2npL9HJrTT8Hi1XBZrMyZEwm191zJmnZPTyr3fTw+QwZm0V1RQ3jTh9Et5Qj67kPRoQQZGZm0rVrV/Ly8qiqqmLEiBEB/xt5PMSwSWRkJKNHj2b58uVER0efECMFTdLT09m1axebN29myJAhgQ7niHjmmWcYPXo0f/zjHxkwYECgwwlqNGMs3vE+Zoj2EdwpqBAhTiBKSkp49dVXeeqppwIdyhGzefNmYmNjT7hS6e3bt7N3795jftFo0lkyxZqmsXHjRlauXMmgQYMYPnx4h8QwwI//zTV26p8dm3LhKOzhvzzLc9SpA7CH21AsCmiqp+y6LeZ/md/m86VFe4mLaz0XOTImnKfevZHwSDuK2yyFVnSl2QLFIX20vN5H7PfbYGRlPTdMJHpvccuEoEtvypWa0DO9msDl9or1JuHArkbglhZUaUEa/cKejLGm4FYVXG79e6cqcGo2vVQafWax0BSz4tnoEz7oS6aPkLIqSKTHGAwBGemGaPG5h6HPL5bgVPXzFIKouChiukSxYlEBvz3v73z02nzva6YoTDhjCOddM/F/Ugz70qVLF0455RSsVivz58+nqqoqYLEcTzFskpiYyKBBg1i5ciWNjY3H/HjHCyEEQ4YMoaSkhJqamkCHc0QMHjyYCy64gD/96U+BDiVEiONCSBCHCNFJePjhhznttNM4+eSTAx3KEVFTU8POnTtPOFfpiooKtmzZwkknnXRMRgodjECL4qamJpYsWUJlZSWTJ0/+xZ5p1a3y0v0fc/mwB/jjr15k7679rdbp0TtBF7QAUmPs6YO49x9XcdezVxwylp59uvP3b+7hot9O4f8euZBLf3day0pdD21p5eqKWu668nUO7Knxy/jGxkWwcfVOnnngM5pcqlczSolw+5dMg5kI1oWw0mCabuERi0qzz8rmuCJNeA2tPGldgTRUp1sFTRO4jX5gKQUNipMwNRzVGNvhlkI30ZIKQiiecR4S/WuzK8wYrawHomqAaaplHrelIG7xswD9RoAhcsMi7KxZXdKqr/jU0wYSAVgavXXhtfsb2LvHKwTef+lHnA4Xs/+znL/d9SFfvbP4iA2VysrKuO6660hJSSEsLIz09HTuvPNO9u9v/bt2OCxevJiLLrqI5ORkwsLCSE5OZtq0aXz33XdHFOehsNlsjBo1iv79+7N8+XIKCgr8SqgrKiqwWCzcfvvtxyyGQIhhk/T0dHr27Elubi5ud9uGeMFITEwMffr0Yd26dZ2qJL4jPPnkk8ydO5elS5cGOpSgJmSqFRyESqZDhOgEbN++nY8++oj8/LazWsGClJJ169bRp0+fDs/k7YzU1dWRl5fH0KFDj3i8UkcIVPn0vn37WLFiBT169GDIkCGHvGD+5t0lfPveEpC6OHrurg948j+3+q1z518vZ+bv3qZsWwXjpg/mzr9dgT3slzPDvmTkpJCRM0OPb28tP32ex97dBwCw2i24nboCvfaP53i2kVLywLVvkP/zNrDb9GphhxusClkDenLepWN47qHPvGZTNgs43RBh9ymvlv5GU80qRFoJa4TGGKMe2iyVBpzGU8KtP2cRAtVTNm1eKFtAVUFBH8EkJEII0+yZBuHEJm2g2nAJFU0KXJqClAKJ8EuySylodlqItFuwGve6G2sjfOY/idaC2CPM0UW/CorbkPqG0VZzs5OfftpkeF/rolgRcNsfzqChsobNa3fSUOO9A6CfnvlaCb77cBmv/3kWiiL46Ys8mhocXHrz1MN+v33Zvn0748ePp7KykhkzZtC/f39WrFjBCy+8wOzZs/n5559JSEg47P09/vjjPPTQQyQmJnLOOeeQnJxMVVUVq1evZsGCBZx11lkdivNwEUKQnp5Oly5dWLFiBbW1tZ7qiy+//BJN07jggguOybEDKYZNBg0axLJly8jPz2f06NEnzA3Ufv368dNPP1FaWkrv3r0DHU6HSU9P59e//jWPPvooc+bMCXQ4IUIcU1oJ4s2bNwcijhAhPPwv/g4+88wznH766QwaNCjQoRwRpaWlNDU10bfviTNf1OVykZubS3p6+lF3lG4Px1sU79y5k3Xr1pGTk0OfPn0O62J1V9FeFEVBUzU0VaNsR2vH1eS0RP7x3R+OSoxdu8Xy2pw/UrBmJ92S44nvFsOmvCK6pcST0d9brj/38zxWLynUfzDEmpAgXRo7S6p59omvIcwGblXvh5VGH7FprKVJsCpeYQnYmjScvpXXUoJbQMtJaW7Ahqd/F4FudGXWZ2kCicTtVhBCAmFo0oECNEg3GhpWdwQOa6PhKu1EEo5b6uXSimHqpc8kVmh02LEY9xfqq6KMumf8eoj9MJ2fpUBxGOlsz+gkaUyoEt54jX7mi896DlnbpL9eCp7jSCmN3xVJ1sBU1vy8VT9NQ73nLdziJ4h//GQF8z5bSVLvBK6971xiu0Qd7O3m5ptvprKykhdffJHbbrvN8/xdd93F888/zwMPPMBrr7120O19+fjjj3nooYeYOnUqn3/+OTEx/mOPjqcxUlxcHJMmTWLlypUsXryYMWPG8MUXX5CQkMCkSZOO+vE6gxgGr/P0woULKSgooH///gGJ42hjtVoZNGgQ69evJzk5GZvt8G/4dTYeeugh+vbtS35+PiNGjAh0OEFJIDK2oQxx+/EI4sTERCIjI/n1r38dyHhChAB0440TyWzjl9i9ezfvvPMOCxYsCHQoR4TL5WLjxo0MHTq0w/2lnQ0pJXl5eURHR3cKY5HjIYqllGzatImSkhJOOumkds1YHnfGEL769yIUiy6KTzlv5FGPryWR0eEMP9l7A+akKa3fp9IduhmXAN3dWkEXfFYFh0v1rCetemZYCIFisaAaLtNCE15XbCEQUqJoAunWwKaAQ0K4gkXFmwX2/eo79khrsVwFpMDdrKBYJEJIz8WMUyo0KQ7saiQ1lmbcmsAuJI2qomeUNcWrdyXYrCoWK7iNsUtRqQ3U7gvTxapqiOE2KpaFqs8hlnYF6dC8ZmUS/dwxRK5PCaiqSYiwY2lw+I1t8tkroyf2RXO4WDFvsy6UFUHmwJ6eNVbO38Rzd30AgLJcsKe0mic/uqV1gOjZ4Tlz5pCRkcEtt/iv89hjj/HPf/6Td999l7/97W+HrE7RNI17772XiIgIPvzww1ZiGGiXiJk/fz5Tpkzh7rvv5vLLL+fPf/4zixcvRlVVpk6dyiuvvEKPHj3YtGkTjz/+OHPnzsXhcDBx4kReeeUVevfuTVhYGOPHj2f9+vUsWLCAXbt2ce6557YSq4sXL+a5555j3bp1lJeXEx0dTVpaGtOmTePJJ588ZKydRQyb2O12xowZw+LFi4mJiaFnz56H3igISElJoaSkJOgNtnr16sWFF17IzJkz+fTTTwMdTogQxwzPVWvv3r3ZvHlzQM0dQoQwSUxMDOpSo/bw3HPPMWbMGMaOHRvoUI6IzZs3ExcXR3JycqBDOWoUFBTQ2NjIpEmTOk0537EUxS6Xi7y8PM85t7fsfdiEvjz939vI/WkjvTK7M+2yzvE7feZlY/jkdcPgye2GMDONK7zlvYbgk8KbycWtgVVp06/TU/ksBFYnuFsaBbsBO1gRuE0RbjhRC2m4SwMCoY9sciioYRqKopdCS8ChWmlSHNjUcNzGiCWLAm6XaaolPGOSVQ0i7G30LEoNpAWhAi0nKhmrKw6M1wE/526EHqdHvwtz5pS+zK9R25x3bOwzqVdXfnXDZIQQNNQ3s3ZpIQNGpvObP5yNo8lJ7YFGNq8q0s9Xk2iqZNPKHVTvqSEhKa7Vacyfr79/06ZNazWSLiYmhgkTJjBnzhxyc3M57bTTWr8OPixdupTi4mIuvvhiunTpwrfffsuGDRsIDw/npJNOYty4cb+4fUvMVpetW7cyadIkzjzzTK6//nq+//57Pv/8c5xOJzfeeCNXXnklU6ZM4ZprrmH+/Pl8++23XH311Z6boYqiMHToUAoKCrj//vtbeRXMnDmTBx54gF69enHGGWeQmJhIRUUFK1eu5IcffjikIO5sYtgkNjaWESNGsGrVKmJjY9u8QRFsCCEYPHgwCxYsIC0tjbi41r/TwcLDDz/MkCFD2Lp16wlV/RUihC9+aZzevXv/z4iQECE6A/v37+fVV1/ls88+C3QoR4RppDV58uROIxyPlL1797Jt2zYmTZrU6UrejoUorq+vJzc3l6ioqCM65yHjsxkyPvuI4zmaJPdK4Fc3naqLYuEjgt0q2FuIAptV7x8WAtHoQMaEG2OXaDWf1ywjtjSDGm3sU0O3nG5GL5UWIAxDK6Fr0xb7EXp/rmZHU/XZyqqmYFEkTS4LjcJBmBqBKi2oEqTpMC0Fqs94JFUDt6pgt6r47V0TXmdoaKOHWCDMtLGZARY+aWfTLEz6iGJhlFK3dOD2WXf/3jrCDNfw3z3i7YNdt6yQR697g6Z6Bz37dPOUUgM4HW6um/gXnvzoFgaMyvDbdUFBAQDZ2W3/bmVnZzNnzhy2bt16SEG8cuVKAJKSkhg5ciTr1q3zWz5p0iQ+/fRTunXr9ov7MTEFcV5eHrm5uZ7Wl4ceeojevXsze/ZsVq1axdy5cxkzZgwADoeDzMxMFi1aRHNzM+Hh4Z79ffLJJxQXF/PYY4+xbt06Bg0axN69e3n44YeZNGkSP/74I3a7f23+oZIZnVUMmyQnJ5ORkUFeXh6TJk3qdPF1BF+DrZNPPjloPxv79evH9OnTefrpp3nzzTcDHU7QESqZDg5CLtMhQgSQl156if79+zN9+vRAh9JhfI20ToQ7+wDNzc2sWrWKQYMGERsbG+hw2uRouk/v27ePRYsWkZSUxJgxYzrdDYDDRUrJf1+eyzUT/szdF71A6bYKz7JLf3uqLnLBtF9GKOiir6UQNFAA0ezylgRLPOOiJBLFoadcLWYKVcMzXslurm+UHQspUKTQvzd1pOdwupKUqoLmFmhGP3CN00aDcBKmheOWAremoKJ4XKeltKBq+kNKCw1NVn0esXE6jv02/Sw0T0uwz4uFp6fYc+2ktXgN/L73bmb+3KNnF4S19WWEEJDcq2ur5wFe/NPHNDfown9XcRWTzh1OXIK3EsHldPPJqz+12s4cY3OwTJv5/IEDB9pc7ktlpd7b/uqrr9LU1MS8efOoq6tjw4YNTJ8+nUWLFvGrX/3qkPsxMQXxO++84+cDERsbS0ZGBm63m2effdYjhgHCwsLIzs5GSklDQ4Pn+ebmZmbPnk16ejqTJ0+mqqqKFStWsHnzZlRVpV+/fq3EMPCLLUadXQyb5OTkYLFY2LBhQ6BDOWr069ePxsZGSktLAx3KEfHwww/z/vvvU1ZWFuhQQoQ4JpwYjX4hQgQhDQ0N/P3vf+fVV18NdChHxIlmpCWlJD8/n8TERNLS0gIdzi9yNDLFe/bsIS8vjwEDBtCnT5+jHeJxJfenjfz7r98CULX7AH++6S3e+Ok+AKJiIuiR2pWKsn0IKY2hSUIvi7b7fBQaajIi3EZTneopC/bNrmoSsApsTZJmMzPskmATCNXYhZkZVvAYawmzRBvDqMvio1AFoAqQAlUVCCGR7ghcNkkXVyy9mpOJ0MIIV8OwuqKIlnbCLDYsCCxCF9sWK1icEIdev31rVA7ubAVVSjQNpCpxqZKGZpV6h5v6JpX6ZpX6Gicum4v6WjcOl9t7fwDjHPzEtPSI4927D2BBATSvu7SEiOgw/vTsZW2+R82NDs84GiEEKendUFWNZbPXoWl6ebatZdb+MPDd56FQVdWzzWeffcbgwYMBGDhwIF988QV9+/Zl4cKFLFu27JDl0w0NDWzdupU+ffpw+umnt1peUlJC165d2xTYJSUlxMTE+Dljz5kzh/r6ei644AKioqKYOHEiubm5aJpGSkoKb7zxBhUVFVx++eVMnz79kK73wSKGQS8ZHzVqFAsWLCAxMfGE6Cc+UQy2Ro0axYQJE3j22Wd5/vnnAx1OUBHKEAcHIUEcIkSA+Ne//kX37t25+OKLAx1Kh3G5XGzatIkhQ4acMEZahYWFNDY2Bs0YkCMRxaaT9PDhw0+Ii8+yHXuNsUUSTZPsKq7ycT2GO2ZezAO/+Zd3PqgQKJqG5nKDRaHfwFR+87tT6ZWWQHRsBGuWbafJ4eKpJ7/xO46QEikUvcRKlWAXKC7QbLrGdYMuIFV0YQz+Zlqgm3UB3S12etnCSLaGEWe1EGuxEi8UYjUbEcKK5pRoaIRJOw3CQR0uqnFSRAP7XQJVSDQkqpTYw5wIi0YPIjhHzeBrSxF15dFYpAVFg7AmgR1BrM1CTJiFrlE20rqGE5MWS3S4lYhwC5omaWxyU9+o0tDgprHORV2tk8qKJiormmlu8pkZq2qgwKQzhrD427X6awM01jtobmrbpfmKO6bzj/s+BiAqJpxpl47B6XCzIXc7NdX1xHSJ4td3ndlqOzMDbGaKW1JbW+u33i9hisg+ffp4xLBJREQE06dP580332TFihWHFMRr165F0zSmTm09Sqq4uJj9+/dz4YUXtvr7WFNTQ3FxMRMnTvR7/osvvsBut3P22WcDurnXuHHjWLVqFW+88Qb//e9/+fTTT/nqq6+wWq1MmzaNxx9/nOHDh7c6fjCJYZPIyEiGDRvG6tWriY+PJyrq4K7jwUJKSgrFxcVs2bKl1e9bMPHAAw9w3nnn8eCDD7ZrvFmIEMHAiXEFGyJEkOF0OnnmmWd45JFHWhnEBBMFBQXExsaeMEZa1dXVbN26lZNPPjmo7uS3VxRLKdm2bRtbt25lzJgxh90reTTZsamcDSu2kzkwlYGj25+ZPlBdj8vppltyvOe5kRP78e9nvtHn9GqSMVMH+t3UGD4ui5dm3c66FTso3LyLn77Te0cVVUNqGkVbd3P/re+RkBhDZnYPXC6VGZePoXdaAqU7q/XMqcdpWSJ96pAtTpAR3vm9CMAJWEGRurdV93AbyVF2ekWE0TPMTmpYOELALpeDcreDCpeTQmcjNaIZR6SDOuFicLhggjud/0Tmo0lwawo1TZFoUtDoCjdHAyMlxIQ3YFWgUjZyDhmUinr21SmAFeGAsDo946sYc4cVpy7uw/eqKKrEKgRRUVaioqxER1qJirAQE24lsVs4AwbGEx8fZojjZiorGqna2UDVrgZi4yNbtVffc/mr3P30JZxy9lB2FVexs3APfYf04qxfT6DvsDT27Kxi0EmZxCfqbRbvLHuEirJ99EjtSlhE65Lgfv36AbpxVVsUFupjtQ6nUsXcV3x8fJvLTcHc1NR0yH2Z5dKjRo1qtWzVqlUHXZafn4+U0m+UjaqqfP3110yZMsVP2FssFkaPHs3atWu54ooreO6551i9ejX//Oc/+eSTT8jNzaW8vJywMK+zWzCKYZOUlBSqqqrIy8tj4sSJQf0ZCXrVwpAhQzwGW521DedQnHbaaQwaNIgXX3yRxx57LNDhhAhxVAkJ4hAhAsAHH3yA1WrluuuuC3QoHaaxsZGioqJO5cB8JDidTvLy8sjJyTnohXJn5nBFsZSSjRs3UlZWxoQJEwJyrquXFPDgr19FU3UxeffzVzL14pMOe/tPXvuJt57+BiRMvWgUd/3tCoQQZOSk8LdPbmfBl6vo2iOOGddObLVtn5wU1q8qZt6Xq/XZwqArSouCyxjBVF1VR/XeWoSENSuLuOvRGSxcWMDO0mp27z4Amm4qhQWsTSpuuwULevU1QqKogsRYG8kxYaR0CaNnVBgpEXYQUN7spMzhYEVNPZ9YK6lQnd5JSEZfr8RNWIQTBagVkkjNbvQNgyYVVE1B0wTgBmn1tEHrz/mUYUsQijBGO/nMIDYT5BKQepm3QKBqktp6N7X1RhZYSixOzdM7HWYXdO8eYTzCycmJJz4hnPqaZqZf1Ze95fVUlTewt6yBplonz9/3CXarYOZNb6OqGuFRYTz7+R1kDUola1Cq3/sSFmGnd3bSQd/zU089FdBLijVN8xNJdXV1/Pzzz0RERByWW/+kSZOwWq1s27YNp9PZqifX7GFNT08/5L5MQTxyZOsRY6YgbmvZ6tWrWy1btGgR1dXVXHDBBa3WF0J4HKhzc3MZO3YsH3/8MePGjWP58uVUVFR4TFGDWQybDBw4kMWLF7Np0ya/vuxgJSYmxjPNxbeXPNi49957ue666/jDH/7Q7ikE/6vo9hLH9xqpjXkDIQ5BSBCHCHGcUVWVJ598kltvvTWoy4y3bNlCSkpKUI+TMJFSekr0grmP9lCiWNM0Vq9ezb59+5g4cWLAyhHn/DfX7xP7m3eXHLYgPlBd7xHDAHM/y2PaJWMZPEY/1/7D0+g/vO3eb03T+PDFOXz2zs/6E6oGVlMs+LhPG1lgMyP87KOzUO0WsFk8q+LWwGbF4gI3knC7Qt+kKPomR5PVLRJFgd31TsqaHeTuraW80UGl04VLSGSEvg81VvU6M5u4BELYkNKFBhyQLiKxoaoKGgK3pgtfKRUjZmNskwTVbUHaVM8ONSlAVfwdsk317THVkpitzvooJbyvgYreQ63pGzgdGmU7Gyjf2QCaRHGo2O2Cbt3C6Z4SSbceEfQdlkh8twj2VzRSvGk/sz9ehCb1gzqbncx6cyF3PXvFYb3XvmRmZjJt2jTmzJnDyy+/zG233eZZ9sgjj9DQ0MBNN93k9zu9fft2XC4XmZmZfhUfiYmJXHrppXzwwQfMnDmTRx991LPsxx9/5IcffiAuLo4zzjjjkHHl5+djt9vbFG2mIPbNAvtu13LZ559/jqIozJgxw2/d1atXExsbS2ZmJv379ycsLIylS5eSnJzM5s2b6dWrF6mp+g2GE0EMg54VHzVqFAsXLiQxMZGkpIPfLAkW+vXrx9y5c9m3bx9du7ZtOtfZOf/883n44Yd5/fXXufvuuwMdTogQR43gvRoPESJImTVrFrW1tX4XdMFGbW0t5eXlTJkyJdChHBV27NhBTU0Np5xyStBnuw8mijVNIy8vj4aGBiZOnOg35uV4E58Q7RFoikWhS7fDLyF0u9ytbn87m9vuV53/5SrmfJxLt5QuXPvHc1j83Ro+eGEOWK1gUcyBR8a4JA3PUF8TX7HaYj6vQBITa6VPn1jSs2JI7R5BZY2TrXsbWbp9F2VuB1IIXBGAoUlRwCqMucTC5xi+qBKEYlg/S2pVDYEgXAujDheaMY/YFMFgfJVeEeydZGQMVdaEdw6xIfJ9T81qimDwKQnXn5NS08c0m6+TuVxKUMDplOwqrmd3cT043QjAbhf0zIxjwlnZhEVLBkzpwc4N1ezcVE14ZMdbEV555RXGjx/P7bffzk8//UROTg65ubnMnz+fvn378sQTT/itf9ppp1FSUkJRUVGrbO9zzz1Hbm4ujz32GPPnz2f06NGUlJTwxRdfYLFYeOONNw5ZPeFwODweCm05P+fn55OWltamA3R+fj5RUVH079/f89ysWbMYP348PXr08Fv3xRdf5J133uGkk05i4MCBdO/eHbfbzahRoxg6dCgPP/wwiqKcMGLYJDo6mqFDh5Kfn8+pp57aai5zsBEeHk5mZiabNm1iwoQJQflZoygKd911Fw888AC33nqrX5l+iLYJmWoFByFBHCLEcURKyRNPPMENN9wQUEFypGzevJm0tLQTwvCkrq6OzZs3M27cuDYvaoORlqI4PT2dvLw8mpqamDBhQsDP8/I7plOwpoTNq4rpmdGNm3zm1B6KhB5xjJjUj/xF+lzanBHpDBmX1Wq9dcu28cwd7wOgWATlOypJ6dNdX+h2I4UVfAWDX3+wjs1uwa1qSE13TxYCkpIjyciMISMzhtg4O2XljRRuq+XblZVUN7qN7K9ARun7Ew4B4YbmVtEzsObFSsu6NgGouh5WVVAUgUNCIy7C1XAOCE2fRaxpaJoFsHj1qSZwuyzYwjSksX8pQbh1ka84TDHs43ZtjIqSBxm1JIRxLqYxmeYzd9hU3cbq9jArikXgaHLhdEq6de/BFdedT+G6Uv7+wPt0T49m7HlZxHYLY9myZSQlJZGUlNQukZOZmUleXh4PP/wws2fP5rvvviM5OZnbb7+dRx55pF1Zt+7du5Obm8vjjz/OF198wbJly4iJieHss8/mvvvuO6zS6w0bNuByudosiS4pKaGqqopJkya1WtbY2Ojp3zdLv1euXElZWRm///3vW60/Y8YM3G43K1as4JNPPqG5uZmUlBTsdjt33303/fv3P+HEsElqaiqVlZWsWbOGsWPHBqWI9CUrK4vi4mIqKytb3fgIFq655hqeeOIJ3nvvPW644YZAhxMixFFBSClbfiSHCBHiGDF37lx+9atfUVxcHLSlxvv27WPp0qVMnTo1qEU96DcoFi9eTNeuXU+IPrWW7N+/n6VLlxIREYHFYul0ot/tUrHa2nfh/uGLc3jvue8BsIfb+PusO8non9JqvY9fmcu///adLmbRezCv+9M5vPmU7hgtFQXC9eyG9JRCC29WWErQIDo+nG49I0jPiSc9MxYEFO+oo2h7HUUlDTgtAs0CrjgLCIErDKRF4LYDNoEmQDU1n+G35Y7Sv3fFu6FlwtQBFocFmdKIEBAW5uBOZQBzlTK2ihpUDRoaLEAYmhujZFqAW8EW7iI8xkGEEDwoR/AYq2nMjwVNYK0Dq1M31RJGT7DVCTSphDfROlMtAZeGRdWFs6LqalqoEtwaiimIXRpCk6T27squwgq/XXy89EFi4iNxNDmprqile88uNDua2LNnD3v27GHfvn3ExsaSlJREcnJy0P5NPBrcf//9PPnkk+zYsYOMjIzD3q6iooKVK1cSHh5OVFTUCSWGTVwuF/PmzaN///6dfhTe4bBt2zZKS0uDuiLp+eef56WXXqKwsDDoTc+OFbW1tcTFxTHl299ijTq+mXR3g4N5Z79GTU1N0Jq4HW9CGeIQIY4jzz//PJdeemnQXvhJKdm0aRNZWVlBL4YBj6mOb9niiURsbCyxsbHs37+f/v37dyoxDLRbDAPMemuh53u3y83i79a2KYgHjMrwiGHQf3dXzt9EWKQdR6MLPwWoSW+5tCEWu3YPZ8CoRPoOSaC5SWV7wQG+/bKEPbubPL3FGkCUDSENpYtEcQu9J9cBmlVPCKtmD69hbCXc6J++jUDLPwXG85qqoFjA5Vaotbt1Yy2hoGqAMEum9R5iBKCB6rSgSQW3VHTx7bQgND02aR7bt59YBWFVDJXcxovtO3vYZ1SVLcyK2ujEcPkC9FFLvnfXBd4kcliEnZR0vWw42hZNVlYWWVlZOJ1OKioq2LNnD9u2bSM6Opq0tDRSU1ODyuX9aPDFF18wdOjQdolhgK5duxIREUFDQwP9+vU74cQw6KOnhg0bRl5eHt27dw/60umMjAx27NhBWVkZvXr1CnQ4HeLmm29m5syZfP/9954RYSHaJlQyHRyEBHGIEMeJHTt28OOPP7Jx48ZAh9JhKioqqKurC2qXTJO6ujoKCgoYN25cUJubHQyzZ1jTNMaNG8fKlSuxWCztmlPcmZBS8tojn1G3v8FT1qtpkriubZftDzopk5PPGsqS79Z6ntu6rpQ7nryUZ37/oWEaZfQNa1J3jLYpZA2MZ8CIRBKTI9m+aT/f/3c7u8qbQAg0i/BzplbQfacAhEsi7boBlQAUDTSpq0+hgemBJUAfVKyAaAYZi78YVUCoApwgw0BVFWo1N1HYcSN0J2lhZIUx9qkBqkCxG07TRoiaAlKTCIRXDIMuzFVQpGxbCBv7xSiZ9ihb44sqdZdtoUnMyVMpvbqwf0+N+WbRJTGKyKhfvgFjt9vp1asXvXr1wuVyUV5eTklJCRs3bqRnz56kpaXRpUuXoM2itYfNmze3exuzTDoyMpIBAwawatUqLBYLKSmtbxAFOz169CA5OfmEKJ22WCz079+fLVu20LNnz6DMsIaFhXH55Zfz4osvhgRxiBOC4PtXGCJEkPLyyy9zyimnkJ2dHehQOoSUks2bN9O3b9+gz96YrtLp6ekkJCQEOpyjjimGm5qaGDduHN26dWPcuHEUFBSwffv2QIfXIVbO28RXby3SRayRrRwzZSBnXj7+oNucdaW+TAi9H3fI2CxGTe6P1WrRdaDTBQ4XyUmRnHpeGtfcPZih43pQuHE/7zy7lp9mFbN7Z4O+M7OMui0EWFx6k7FiZI8V06XZ7D+WhnCVIBz6V5ts+0aMbmClZ4E1l0KtdBGNTR+3JBWkajo/m5lp021aF+Capn+0Syl0TWv0CvuacOlaXYCqIZGm6bQ/vo7UhgCRoI/LslmQhtGYYhVsyCv2OQHBvoo67r78VRwHMTxric1mIz09ncmTJ3tmzy5btowFCxZQXFyMqqqH3sn/EC17hpOTkxk1ahT5+fns3r37qB3nQHUdS75dw7YNpUdtnx1l8ODB1NbWsnPnzkCHcsT06tULi8VCcXFxoEPpMHfddRfz588/6GzwEDpmhvh4P0K0j5AgDhHiONDY2Mibb77JrbfeGuhQOkxZWRkul+uwZnN2drZt24bL5SInJyfQoRx1TLHf0NDA+PHjPWXSptFWsIriA1V13h9UDdwq1913Dq//+Que/+N/KC5oLQKGT+jLVXedSfbgXpxx2Vj++MJVxMRHcu41EwBI7RvPmdflcN7vcrBY4Zv3C/nv65tZv3IvDqf0P54QPmZUvst0oSY0QJMIKXVHZ1MEo2d7fcWoFXOZ97lW1GCkeC3UqCox2JGaIYZRvOXS0hDHKkjNPzRplnL7CmJTlAsJzSrWOs3PTdtbJS2xGF89TxrreaxHLHppdrekOJQ2Us2F68tYuXALmqahqlqr5QcjLi6OoUOHMn36dPr06UNRURE//PADmzZtoqmp6bD3c6JyMAOtpKQkRo4cyapVq9i7d+8RH6eitJqbTpnJEze9xW1n/JVv3ll8xPs8EszS6Q0bNgT974EQgpycHAoKCnC5Du+mUWcjPT2dqVOn8vLLLwc6lBAhjpiQIA4R4jjwwQcf0L17d84555xAh9IhVFVl8+bN9O/fP+h71MxS6eHDhwf9ubTFpk2b2LdvX5sGWsEsik86bSBdusV4fp40YwT3//o1Zv9nOXM/W8HdF7/Igep6v23++9KPvPe379i6ZidLvl1LQ20Tqqoy6vR0Lrl3BFOv6k/V7gbef24dcz/ZQcWuRv+D+og4aZYXS+HvxOyQRjm08GZUNfS+Yrf+o8UQyB4xan5vilRfLSnAJd3gNMWsQo2mEoMNTVXQNAua2yiZNsWuUz+esEs0TaCqviOYNO8xpY/21UBYBZpV+B3bgzF7GH7hQkHqF/Znnj+Ci6+b6LOtV5mvXlzA+X3/yPn9/sCsNxceZEdtY7VaSUtL45RTTmH06NHU1dUxd+5cVq5cyb59+9q1rxOFQ7lJJycnM2TIEFasWMGBAweO6Fhz/ptLfa3338SHf599RPs7GvTo0YOUlBTWrFlDsHvCJiUlER0dHXR/i3254447ePvtt6mvrz/0yv+jhDLEwUFIEIcIcYyRUvLiiy9y7bXXBmWvEEBxcTFWqzVoDUBMNE0jPz+fjIyMdo1oCRa2bdvGzp07GTdu3EFNz4JVFMcnxvDSD/dyy8xf8adXfsMlt5xO9Z4aNFVDUyWNdc3kL9rit83Hr/7k+b6+tpEFs5cx+/sf2LtvDzERCbz/lxWs/GEnjbVOhPQaRAH69y5d2AmztFhRvH21xsNqimMB5mwmU3xam9HLp/FmhD2ruaHtOmUgFhSXYmR4BTWqmxisqG7hcZZG0zPCuoOXaZwljZFLZo+18LhKK6r0yUgb5dxCIO34zCD2WW7OmfLdxvwqBFJARmoXZLOLd56bwydvLvIu1/Rjde0ey3fvLcHldON2qrz+2BfsKm5/5lIIQbdu3RgzZgxTpkwhIiKCpUuXkpubS21tbbv3F6wc7mil3r1707dvX5YvX05DQ0OHjxceadd/x9Dfg/Dj7JR7MAYNGnRClE4LIRgwYADbtm3D4XAEOpwOcfrpp5Oamsp7770X6FBChDgigvPqPESIIGLJkiWUlJRwyy23BDqUDqGqKtu2baN///5BbWQCsH37dtxu9wnpKl1aWkpBQQFjx44lOjr6F9cNFlGsulU0n9m3UTHh1O5rZPXiAipLq4mICvPLar5w38cUbdnl+TkyOhwhIG1QAhf9cRRuWwM/vL2Wv//ue3as3ovqlghNgsvoT9V0o62oCBvCqeofkGbPsjmSCVrWJXt+Fj7XtMIsOfbt3fXFHH/U3MYyBaxYPaK31q0SK6w+JdICoSoIVdHLqhGGEZeiZ5GNDLHUfMq8VZ9YfQ22fPHLVPuIZF8xbK4mBCWb97Tej2d0lSA8wtbq3Gv2dVygAURFRTFo0CCmTp1KREQECxcuJD8/n8bGxkNvHMS0d85wVlYWqampLFu2jObmtn7JDs3ZV59Mv+H6mKOwCBu3P31Zh/ZztDmRSqcTEhJISEhgx44dgQ6lQyiKwvXXX8+LL74Y9Bn7EP/bhARxiBDHmJdffpkLLrggaGfBlZWVYbVaSU5ODnQoR0RjYyMFBQUMGzbshCuVrqioYO3atYwePZouXboc1jadXRR/8Pz3zMi8mwv7/YG5n64A4Lm7P+T9577nx09y+cuNb3HDA+dhD/MavLldKj/8Z7nn55ufnMH5d41k8uX92bujkQ8eW0bhqkqQMP+LVXRPNaoEPD3CulBsrHOQ0T8JAOE2RKAxVqmVKBYCS71bzwRreDLCppAUbmMTs2wadGdoI0Ns3UdrwWwxtzcyxG4Nm1CIkBa9VFr1Fec+X5stSBWPA7V0YYxd0tc3nabNDDZS6v3NLTGdpTXf/mEjK262D1uFrpl/4R7Zru0VfssTesSSNSj14Bu0g/DwcIYMGcKUKVOQUjJv3jw2bNgQtJm2X6K9Yhj07OPAgQPp0qULy5cv71CfamR0OM99+XveW/ln/rN2JsMm9O1I+MeEHj16kJSUxIYNGwIdyhGTnZ1NUVFR0PYS33TTTezatYvFiwPbY95ZkVIE5BGifYQEcYgQx5C9e/fyxRdfcMcddwQ6lA4hpaSwsJDs7Oygzw5v2LCBlJSUE85Vet++faxcuZJhw4bRvXv3dm3bWUXxtvWlvP/s96iqhqPJxfN3f0jd/gZW/LQRKSWaKhEKVO8+QEb/ZBTFzGZKImMjqK2tZfny5exr2sXJU0cxbfrpTD1nou6O7ENy7wRQFL3kuAWX/d8pXHzjJCZMzeG6m0/jjHOH0TXByLyb4tDAIsF2wIlwe52QTeGpmE+5W5+nkGD7pemHhoh2aBKH1IjVbLoYdgt/Ea3ppl6aBppbQXMbsakWr8u0KcjNamhjjrGljXMHfSyTRxgr3qyvvtC4UWBu6nMlkZQSDy43uFx6QMY2QhGMnjIQm/3ojjiLiopi5MiRTJw40dNjXFBQgNvdxgsehHREDJsIIRg+fDh2u50VK1Z0yKlbCEFicjxhEZ1rhjnAwIEDqayspLKyMtChHBEJCQlER0cHreN0dHQ0559/Pq+++mqgQwkRosOEBHGIEMeQt99+m8GDBzNixIhAh9Ihdu3ahaZppKYenaxOoKisrGTv3r0MGDAg0KEcVRoaGsjNzSUnJ6fD79HRFMVVuw/4u0F3kJb70FSN+tom0vunoFgU4zlJer9kbvnLxcTERwIwYEwavYZEsXDhQqKiopg6dSrdE1JY9sNG6uuaGDXZWypvDQ9jbe4OfVSSEPQfkEJUjF5iPf2CEcybvZ6P31/GkiWFuFSNK6+fxKv/ug6hCF9d6dGlmgWwK+DyF90Wp16mLFqYLOsOzgd5GAi8TtK1qpsYaQOXQEjFa8plCFtVlWAX4FLAZYgmTUGVqp61lr4ZYolF07+2qnKUeu+0onmC8A3IM35KdbqRhss0EmLiI3j2vf/jT3+9BKGquhg2NzN6nCedO5xjRVxcHOPGjWPMmDFUVFQwd+5cioqK/Erug40jEcMmiqJw0kkn4Xa7TwgjKl/Cw8Pp378/69atC+qxXEII+vbty/bt24P2PO644w4+//zzo+JufqKhIQLyCNE+ju6t2hAhQnjQNI3XX3+de+65J9ChdAgzO5yVlRW0ZmCg90CvW7eOnJycgxpNBSMul4vc3FxSU1PJzMw8on2ZonjZsmUA7d6flJIX7/0Psz/Ut7/6D2dz+R3TOxzPoDGZ9OzTnfIdeuZn2Ml9SeqdwH2vXMPjN71N9Z4DTL9sLCefPQwhBG8veYD16zZSVl7KyvmbWTW7mOvu7Y7SvItHb3yL+lq9z/CMy8Yw5fyRzJu1Crdb1bPDQiAlWBXBPY+dz+7S/fz43Vp2bPdmnd57fT7v/e177HERaOE241ay94JDCoGm6FljRfWaTSP1VSW6AG6Vs/QVwS1KoFX0HQnjULWamzhhRWiGGLb4ZInN7K8KWP3rmBUpvCOePOXVuvu0gr/eNcu0heK7cgs0CW4N4dbAoiBVDSEgMiaMxbPX07V7DKeeP4L5s/IBGHFyX7IGpTL61AEMGnNkv6eHQ2JiIhMnTmTPnj1s2rSJ7du3079/f3r27BlUVS5HQwybWK1WxowZw6JFiygsLKRv385T+nykZGRksHPnTrZv3x7U59WjRw/sdjs7d+4kIyMj0OG0mxEjRjB48GDefvtt/vjHPwY6nBAh2k1IEIcIcYyYN28e+/fv59prrw10KB2isrKSpqYmevfuHehQjojt27djsVhOiPnJJlJK8vPzCQ8PZ+DAgUdln0ciigtWl3jEMMC7f/2WaZeOJSEprkOxhEeG8cI3d7P4m9XYw2xMPHc4Qgg+efUnCteVAjDn4xWcd+0k6ptqWL9+PU21Kp/9fRX7duumTS/e9zGaW/OIXoAf/ruC1D5GybymgcXiKQXetLaUDTe/B+E2pBC64PQLyooTgXBryLAW4sQtsbgkWoyeidU03Zla+opcxfutqUKFhq6UXUCLilTVhl4abbRI16oqsYrVyAobaVlPiEY/rwukzWcnbmP8k5kZNjZDSt0d2906j+B360tKMwHswdro8t/GeG0ryg8w66NlKBqMGJ/F5bedzo+frqC+tolJ544gc2BPDsanr/7E3E9XkJrVg9uevIS4rr9sCncohBAkJyfTo0cPSktL2bhxIyUlJQwfPpzIyMgj2vfx4GiKYZPw8HDGjBnD4sWLiY2NJSkp6ShEGngURWHIkCEsW7aMXr16EREREeiQOoQQguzsbLZs2UJaWlpQ3oS+/vrr+dvf/sY999wTlPGH+N8m9BsbIsQx4tVXX+XCCy8M2qxkYWEhmZmZWK3Be9+sqamJrVu3MmTIkBPqA3rLli3U1dUxatSoo3peHS2fdja3NoNxOo7MICYqNoIzrhjPlItGY7NbcTndfPveUs/yxoZGFi/4mfXr1yPrInjjDz+yb5d3FqZm9vOaPawCouMi6DfUuMGjaaDpWWIpBJqnV9bbj+xBSoy0qV8psAeL8Bpp+RhP+Y8xAumm9axfCTiM0mizJlkKiEZPKRsZZF9BLExR7HkY+0JBuIQ3Fe0WmAWYSltl2Yqgdc20T8zmGCrjNUlIiKL/YB9ha4xX8nWhllKy6udCPvrHj1TtrmHbhjIevvafBy3V/fyN+bw58ytKtu7h5+/X8psJf+HNJ79q83eqvSiKQlpaGlOmTCEqKop58+ZRVFTUqcuGj4UYNomLi2P48OGsWrXqhBpXlZCQQHJyctAbbPXsqf/b2rVr1yHW7Jxce+217N+/n3nz5gU6lE5FaA5xcHDiXCGGCNGJqKio4Ouvvw5aM619+/ZRU1MTlKVbvpyIRlrl5eXs2LGDMWPGYLcffaObjojiAaP7MHhslufnU84fSVLvo/uaW6wK4ZH6+WaO6M4l95+E1W5hypQpvDvzx9YVvqaLsqaPTYqMieCWP1/IlXdMJ3tIL49w9WxmZpKl1GcStxCzOP2dpH2FZGqvLvqnqSb9BbGBZxyTircP1yd7LBpoLVYBHHjEbq3qJtYQR8Lt7xgtND3DJFR0gWyMXUIDBb1kWjHPyeMyLf2NskwXbXOOsDkWysdQq7qqgU2FlfpsWlV6z1d4hbWiCKJivDcBNU2yr7IWR1NbdtYw57+5xoukH6O5yclnbyzgrae/bnP9jmCO6TnppJMoLCxk6dKlnXJM07EUwyY9e/YkMzOT3NxcnM6235Ng5EQw2FIUhaysLAoLCzv1TZuDER4ezoUXXhgy1woRlIQEcYgQx4CPPvqIwYMHM3jw4ECH0iG2bt1Keno6Npvt0Ct3UsyLoxPJSOvAgQOsXr2akSNHEhMTc8yO015RbLVZmPnRLcz86Bae+fR2/vDiVUe9X1NRFO56/jLOuHEwJ1+czf5ilWlnnUZYWBgWq5m91UXa+ddOYvjJRj+hpjH1wpFccP0knrrrI6497Rki44yS3LYMbIwRTHpPri4iJ00dwMMvXElsfKSu2xz+25WV7UdaBEqjnpoVLnyypmB1CSQ+45hAd2o26pEjHJY2zbUsppu0hDozQ4xAaLr4FZr50EdGKY3G80Z4iltgMTMFZi+xKYz9hDDe781RS1L6XyGYTchWRX+0zKQLgRCCXpnduefJi7GH21AsCkIRDBmbRXhkWJvva7eUeN8D6LvUJBtWFLW5/pHQvXt3Tj31VKKiopg/fz7FxcWdRngcDzFs0q9fP+Li4li5cmVQm475YhpsrV+/PqjPqXfv3jgcDioqKgIdSoe45ZZb+Prrr9m/f3+gQ+k0hMYuBQfBWwsZIkQn5t133+Wyyy4LdBgdora2lr179zJs2LBAh9JhNE1j/fr19O/fP2hL1lvS3NxMbm4u/fr1Oy79f+3tKbbaLAyf2O+YxVNeXk6d3MPYaYPpl92P+K7e/uSb/3IxT978b1S3RnrfJK68czoRUWFsXlWM1W6hW0oXfj1xpmf9tbnbSezZlaryfeB2g++NH81whfYRjIt/2MiGVcUkpXShtqYJiypbG2QJgVUDp5RYhECfSiSRitAdpQUoSN39s0WGGIFe5mz1eU4FCwqq1C/ua1SVWItVz9oaItijRU0BLQWyGYTdKBN34ZMVli3W982C+34V+k0B45wOC7MkHLDZrYydMoDnP7+DHz9dQWyXKGZcO+mgm97+1KXcPP0Z6uuavZlmIRg6Luug2xwJZrY4JSWFNWvWsGvXLoYNGxbQ3uLjKYZBryYYMWIEixcvZsOGDQwZMuSYHu944WuwlZ2dHehwOoTFYiEzM5PCwkJ69OgRVEZwAMOHDyc7O5vPPvuMG264IdDhhAhx2IQyxCFCHGUKCgrYuHFj0JppFRYW0rt376AWkkVFRQghgr7k20RKSV5eHomJiWRlHRuh0BadYU6xw+Fg5cqVrFu3jiFDhjBmzEl+YhhgwplD+WDVX3j1x3t5afYfiI6LxGK1MGhMJv2Hp+N2t84YSSE4aeogXfwZgk4ogsRuMR5RrK+of91f1cC29WWte4tb4tTTs8KNt0cY/LKy0pv49YwtQsVnjJIei5TSUxZd53YTqxgl06rw9BILYxtT/FqkwOLSj6MYotlM7npmEmt4Zgz7VnB7nKhNgSulN04p9e1cKvi8nvo5eEu0CzfvQlU10vol0294OpGxkTTWOzgY3VK6MHxSf4QxTgsh6NGrK7/549kH3eZoYGaLIyMjA5otPt5i2MR0ni4vL6e0tPS4HPNYoygKgwcPZuvWrTgcB/+d6+ykp6dTW1tLdXV1oEPpEBdeeCHvvvtuoMPoNIR6iIODkCAOEeIo8/777zNx4kS6desW6FDaTWNjI7t27Tquouto43K52Lp1KwMGDDhhjLQKCgpwOBwMHTr0uGcMAiGKdxVX8dnr8/hx1mLmzZuHlJIpU6Z4TGfaIq5rNOn9U7BYWwuKHj270Hew/5zm6opaVizYglAUcLig2UlifAT1jQ6vcVYLgSRNoWwaTvm+F8I7dklfWc/EeVytjP5haf7copdYSKE/jP8A3Iq377fWrRJpsWA3eoWFG095tHDrvcKK5iPEMdYxG6U16RHc3h5in/gNUS6k1EuuBXpftXFuqT27csmFo7C7VX0zs//Yp38YIKt/ChaLwgv3fcLTd3zA63+exc1nPUt1Rc1B3jkIi7B7QlEUQXrfZGz2Y1/AZmaLR48eTUFBAcuWLTuuvcWBEsMmkZGRjBgxgnXr1lFfX3/oDYKAxMREEhIS2Lp1a6BD6TA2m40+ffqwbdu2QIfSIW644QaWLVvGzp07Ax1KiBCHzYlxtRgiRCdBSsn777/P5ZdfHuhQOkRRURFJSUlERUUFOpQOs337dqKjo+nRo0egQzkq7N27l23btjF69OiAOX4friiuKNvHRy/8wKx/LaD5ICZKh2JXcRW3n/1XCosKqG7Yw66NDYwePZqwsLZ7UA+X2/5yIUIRXidp8wGe5w80uWh2qmC1tJ39FQIcLj0r6tTaXEc4TdGMd2yRlFCv/6y0dJo28a3BNncb7jXOatRUVCmJViwomt4fLFS9n1hRDQltmG0ppiDWdKGNps8jVjTdbVqY5yK8gltfXxf6CnoG3VD1gKS0bB+ffroCt6p5hbzicyLGMadfNBK3S+XHz1bqpyKh7kAjy37ceND35orbp9G1eywAsV2iuPYYZ4db0r17d6ZMmUJERATz589nz549x/yYgRbDJj169CA9PZ2VK1eittVTH4QMGDCA4uLiTmmcdrhkZGSwd+/eoLxRkZaWxujRo/nwww8DHUqIEIdNSBCHCHEUWb58OdXV1UEpiN1uNyUlJUFdZuxwONi2bRsDBgwIut6rtnA4HKxatYpBgwYRGxsb0FgOJYoPVNVx+5l/5f1nv+Ofj33Ow1e91qES1KVz1jD1+gEkpETz6VMrmfXK0qPyXmYN6MmT/76R3pndvc7JFq85VHh0GC7f0uq2julyo6j6OVl8zafwflUANInFKDEWxuJwY7nFt3fXN0PchL/LtDR2pgmP+bNprOU2Sp0VFRS3t9RZUUFx4RHXitvbX3wwPJV1mu6gLTAy4YrxGvg6UQOabwbes63356gY3eQsJjbS7yXs0u3gJnDJvRN4a8EDvLngft75+SHS+h7/Gbk2m43hw4czbNgw8vLyjqnTb2cRwyY5OTlYLJagH1tkEhsbS0pKClu2bAl0KB0mPDyc5ORkioqOvrnc8eDSSy/lvffeC3QYnYKQqVZwEBLEIUIcRd577z2mTZsWUIOWjlJeXk5ERERQjygqKCigW7duQX0OJlJKVq1aRWJiImlpaYEOB/hlUbx2aSG1+xvQNN28af3ybRyoqmvX/g8cOIC9ezP1+5r58u/5NNY66dLtyG8EaJrGuuXbcLvc2MIMAy0fAyeEwNmsq0gphOfh6WsFfV2LYmROzR37lB0L4e0JbllObR7P7N011/MsA2sjrVymBRg9xQI0oQtii1El4JvM09Czw5ouiC3GMovTO12pTVHsUxnuCccj1lvE7/Na+S3TDBVt0bPsrz79HVUVtdz30lXEdolCsQjOuWo8404f2EYAXmx2KylpidjDAuts37NnT04++WR27NhBfn7+Uc+adjYxDHrv7ahRoygvLw/aGbgtycnJoby8PKjnLffp04edO3fidrey8Ov0XHPNNezYsYN169YFOpQQIQ6LkCAOEeIo4XK5+M9//sPVV18d6FDajZSSoqIiMjIygjaz2tDQQElJCTk5OYEO5ahQWFhIY2NjQPqGf4mDieLuPbt4vhcCIqLCiIqNOOz9lpeXs2TJEvoP6EuYGo9AkJgUz32v/qbDsS6fs4Hfnv40l454mHuveI0Hr3mD/ZU1eom0B4liEfTpl4TF5i9OdHHvY7BlZkwbjXJwn7JpaSpYRWBxGNuYWsqtr+HXT+yLACuKd4ySNDO7Qt/WMNqqNYy1hKJng3Eb+1L1Mmmh6VlhixGeZ8yScfhWSIyUsH+WmzY1mnlOPg7URkm4r7ivq2lizqxVDJ+QzUcrH+XLzU+RNbAnT9/2Hh+99CNOh4vX/zKLCwbcy/WnPEHh+s5n6BQfH8/kyZNpaGhgyZIlNDU1HZX9dkYxbBIZGcmwYcNYvXo1DQ0NgQ7niImMjCQ9PZ1NmzYFOpQO06VLF6KiooLS9Cw+Pp5TTz01lCVGzxAfb0OtUIa4/YQEcYgQR4kffviBsLAwzj77+Pa/HQ327dtHY2Mjqamph165k7JlyxZ69uwZ8NLio0F1dTVbt25l1KhRnXIWdFuiOGdkBjc8dD4x8ZF079mVh9684bCyfVJKNm/ezJo1axg1ahR9+/blticv5esdz/Fu7qPkjEj/xe3r9jfw19vf4/az/saXby/yPF9RWs3jN71Fydbd1Nc2e57ft+sAE6YOYMCINE46pT+9+nRn6NgsHnzpKlJS4vyzoL6zds2HMD44GxxYnG7/rK6xvmKUUivGNhajSlpx4HVrbomnPFp4v0rDGMvjNK0Sa7EghW6mpWhGmbRpsmXuV7b4erAEk28cmvR+bbNcXIJbw2KeZ0tDMR/2V9cZTwsWfJnP3//4HxZ/t5b3nv2Ox3/7NrPeXEhzo5PdO6t54uZ/HyS4wBIeHs6ECROIiYlh4cKFRzxXtTOLYZOUlBR69epFXl5eUM/yNenbty9VVVVB69ZsTkooKirqNPOy28Ovf/1rPvjggxPidynEiU9IEIcIcZR49913Oeecczrlhc6hKCoqonfv3gEzbTpSampq2LVrF/379w90KEeM2+0mPz+fnJwc4uPjAx3OQWlLFF900xQ+3vAU/17+KMNPPvRMYrfbzYoVKygvL2fixIkdmq983+WvMO+LPArXl/Law5/x+T/nAVBeVIWqam1mRi+6diIz37yeA/sb2FlSTX7uDt7822x2bt7tL37B6zjtixAoigCrQLQ50glwa3p21uPoDDa3sU9zPnDL3fqMXcI3U2w8X+t267OI7UIXwC7DZdppiHDwlE6DvgwNhMJBDmiOZ9KX6Q7T0hi35B25JKVENLtRXJpeTm4851cC7pNlnv3BMv7069fYnF/Mmp+3olgUfZ8S1q/Y7tlGapKq3Qdax9VJsFgsnrmqP//8c4czdcEghk0GDhyIpmkUFBQEOpQjJiwsjKysLDZt2hSUghIgNTUVh8NBVVVVoENpNxdffDHNzc0sXLgw0KGEOEzKysq47rrrSElJISwsjPT0dO6888523RBMT09HCNHmoyOf8ceL4Lz6DRGik1FbW8vXX3/NggULAh1Ku3E4HOzevZtTTz010KF0mM2bN5Oenh6Uvdst2bhxI5GRkfTp0yfQoRwSUxQvW7YMgMzMzMPetqGhgRUrVmC325k0aRJ2u73VOrlzN/DmE18BcN395zH29EGt1tmxqczv5+8+WMqF/zeF7CGpxMRH0lDXjJQaUleFnHXFODL6JfPkHe9TsL7cU/q7+MeNeuVvQzPSbgWEd2SR4ps1NdyZEWBRPM7M0jTqMlZR3KDZhC4wrULPvBo9yTZ0TezBLF12g7Di3Y80D6dni+vcGqlhxixirUVvsI+Bl0cQS/0sPK7Xfsc0S73BnEmszzaWYDPHLRlfnBoWuxXp0vSXwcwiyxZNyFKC042qaqzN3c591/yTvgNT0Dxl1tDc6DISzAJNk0y5YFSr97QzIYQgMzOTmJgY8vLyqK2tbZdpXzCJYdBvAowYMYLFixeTnJzcqW/KHQ6ZmZkUFRVRUVHRqS/GD4bFYqF3794UFxcH3ShHu93OmWeeyfvvvx/U1xdHiq/34vE8ZnvZvn0748ePp7KykhkzZtC/f39WrFjBCy+8wOzZs/n5558P258lLi6OO++8s9Xz0dHRHYjs+BASxCFCHAW++OILevfuzZgxYwIdSrvZuXMnXbt27dR/qH6J6upqqqurGT58eKBDOWL27t1LaWkpp556aqfqG/4lOiKKq6qqWLlyJampqQwcOLDNedH7Kmt5/P/ewu3SG27/csO/eOn7P5AxwH8WcWzXaGqqvaNJEnrEARATH8XzX/6er95ehMWqMPVXJxGfEEPX7rG8/NCnLP9pI5gi3By/ZLeB04VwGjXGNv0jUpr/87wlXvErpPQaQhsreUSmlCgIvWVYE3pvrob+VTW++ohfUQuyi/dnj0uXpn+pdbmJsVj1daXhBi2M0mrNyAjjs0/NyPqafcimsDf6m31fdaFKI6uNdzQVePuEMU5SohtoqT4iWxhjn5oc3h1KcDS5WJ+73bNOs7uOwgPLqGoqRsVBQtdE+jo09u8/gy5dvD3o7eW9997zeDe88cYb3HDDDR3e18Ho3r07kyZNIjc3l7q6OkaOHHnQdoaKigpSUlL43e9+xyWXXBI0YtgkLi6O7Oxs8vPzmTx5ctDE3RY2m41+/fqxadMmevToETR/V31JS0tj/vz5NDc3Ex4eHuhw2sU111zDxRdfzMsvvxx0sf+vcfPNN1NZWcmLL77Ibbfd5nn+rrvu4vnnn+eBBx7gtddeO6x9xcfH8+ijjx6jSI8NoZLpECGOAu+99x4XXHBBoMNoN1JKiouLg3rU0tatW8nIyDjiObWBxuVysWbNGgYMGBB0c6APd04x6Ddgli9fzoABAxg8eHCbYhigsnyfRwyDbnB13xWv0FDrb3D02L//j/BIXdjGxEdyx9OXeZb1zOjG7/58Ef/38AX0yemJLcxK0ZZdrFlaiHAb+/a5dR8W4SNwhACXG4tVad3za/bRulT/TKkq/YSy3216t3GstsYrgZ5wVo3ZwqohcDWhZ1ONMuo6l0qs1eL5WWjCz4gL3+8xeos1oWeKW+oABSOrq8cl3XoGW7bMLQg9y+01FsNzc8BXXIyakIW1hSmZ7zEbXQdYuutDyus30i22F3fdfRdpaRm8+I8XGTliVIf7PEtLS7ntttuOyw296OhoJk2aBMCiRYsOarb15ZdfomkaWVlZQSeGTbKzs1EUha1btwY6lCMmLS0Np9N5XOZLHwuio6Pp2rUrO3fuDHQo7Wbq1KnEx8fz7bffBjqUgKEhAvJoD9u3b2fOnDlkZGRwyy23+C177LHHiIqK4t133w3KudiHS0gQhwhxhOzevZuFCxcek6zEsWbv3r2oqhqUpWSgj+mprq5uV6luZ2XTpk1ERkYG7c2JwxHFxcXFrF+/njFjxhxylFR6/xS6dvefXVtTXe/NOBr0G5bGpxuf4t0Vj/HR6sdJyfCWFUopaW7SLZdXLdrClSc9ws1n/JV9FTX6Ci63n2obNDIdxeLNjkpFwS0lo6cNxBZp13WvkQ4WAoRLBbcKLt1tWpgty6Zg9plVbJZjWV2GuPSrmdaxCFPQCuOBt59Y0wVxtNWiJ3oxSqJNAawaCWDpkynWz0IPwZwrjPHVLHE2bKKFRX9O+py/iTBLnn21slEmLm0WpM1CbGIs1997NslpCZ59S7OHWwg2Vs/DqTUyOuMsvv3+a84++TK67hlNWvQwiop3cMPVv2v9ghwCKSXXXnstCQkJ/Pa3v2339h3BZrMxZswYEhISWLJkSZuOzJ9//jlxcXGMGjUqKMUw6KOYhg8fzvbt24/YUCzQWCwWsrKyjuls6WNNRkYGJSUlQRe/oijMmDGDd999N9ChhPgF5s+fD8C0adNa3aSOiYlhwoQJNDU1kZube1j7czgcvP/++8ycOZMXXniB+fPnH/URdkebkCAOEeIImTVrFkOGDCErKyvQobSb4uJievfufdAsXWensLCQ3r17B3122CyVHjZsWFCW9Jn8kijevn07GzduZNy4cYfVCxceYeep/9yqm1f5kJgc32pdi9VCt+R4LFav8Ni5rYKLh9zPBQP+xMVDH+DlBz/FbZRCNzc6dc3ncoHTCaoKbje3PzKDnqagFgIZZkULs5H78zYcEqSRAY2Lj+IPM3+FUBSQ+kUfmlFa7OPSLFThnSVsfLUYJc4WN/4C07f/1zDD8mR8jUe9U8UiBFEWRRezbqlnk92647TvfjxobWSHfUqdTXdp2Ybm9TS/SRBNLoQ0xkxpmp4dV7wCe+7363j1qW/ZvXOfT/ZbglBodNdS3VxChDWOrlpfnrnjfb4yHMGzY8diETa++WFWu7MPL774IvPmzePtt9/ucFXF/PnzEUJwzz33sGrVKmbMmEHXrl2Ji4vjoosuoqKiAtBvWF1xxRV0796d+Ph4HnzwQaKioliyZIlf3FVVVcybN48JEyYwbtw4PzG8ePFiLrjgAjIzMwkPDycxMZGRI0dy3333dSj2Y41ZOr169WqaGpsp2lRO3YHGQIfVIdLS0qivrw9KcyqApKQkVFVl7969gQ6l3fzmN79h9uzZJ8Q4r44gjTFIx/sBur+N78PhcLQZo2mil52d3eZy8/nDrRjZs2cPV111FQ888AB33nknU6ZMITs7+5AGa3369Dnix4svvnhYMbYkOK+CQ4ToRMyaNYtp06YFOox209zczJ49e0hPTw90KB2ivr6ePXv2BOWNCF9cLherV69m4MCBQVcq3RZtieKtW7dSUFDA+PHj6dq162Hvq1d2Eg+8fh1xCdFERIVx40PnkzXo8EaDPf67t2ms1z/8G2qbqNx9wFsdLaB33yTd+VLVEM0OcLqYec9/2Fm6TzfIArCaqWDjYbfQtXs05142hknTDYMvQ0kqqgS3itCkp1xakbrhlqICGL286OJWMbK7pqu0r6O0b+ZX+KznViWNbpVYixXVLKnWfPZjZrBNPE7ZpumVZ0Gr18s06JI2i48JlwRV6kZbqobS7EZpdiOcqn7jpuX4JatpxuXzvBBUN+ulnonhaQghqK6opWB9GcKiYFXsdAlLxq26Djv7ALqR3p/+9CfuuOMOTxlzR8jPzwf039FJkyZhs9m4/vrr6dWrF59//jk33HADX331FWPGjKGhoYFrrrmG7Oxsvv32W+6//35SU1NZsmQJtbW1uFwuXnjhBVwuFzfeeKOfGJ45cyaTJk1i1apVnHbaadx1113MmDEDl8vFDz/80OH4jzXZ2dloquQfj73DzdOe5qpRD7H25+Aro7bZbPTp04fCwsJAh9IhFEXxmGsFGyNHjiQpKYkff/wx0KH8z9GrVy/i4uI8jyeffLLN9Wpq9KqpuLi4Npebzx84cOCQx7z22mv56aef2LNnDw0NDaxfv56bbrqJ4uJizjzzTNauXXvQbYuLi9m/f78xlaD9j5KSksOKsS1CplohQhwB9fX1LFiwgKeffjrQobSb8vJyEhISgtaZedu2bfTs2TNo4zfZsmULUVFRQXtjoi1MUbx06VIqKiqoqalhwoQJB/2w/SXGnzGE8WcMafd2Nfv8sxFWmxWpaWiqJLZLFN17daOkaJ++UErCYsPZsr5MF3I2C9Kt6nrSL70qqDrQzPuvzOOTtxahWASa2V8rBNLIGJv7xKi8UKREQy+BllIimoBI4R2J5KNPhRv9k9kUsGaG2Aijzq33EVco6KXbpsj2Efu+eEqopfGDNM2y8H6VEkUPzqhQEB49bI7LwKaAS/MahrUw3tLLwFW/8UsAYeE2GvfpJbeRdq9xlqpqRMaE03CgkZQevagq2cnWrVs57bTT2ng3/XG73Vx11VX07t2bmTNnHnL9X8IUxHl5eeTm5jJokH6j46GHHqJ3797Mnj2bVatWMXfuXI9posPhIDMzk0WLFtGnTx8sFgs///wzYWFh/Pzzz0RFRXHGGWd4jlFRUcHDDz/MpEmT+PHHH1s5qnfmrKWiKOxcXUvmqG6sWxDNvl0N/OvxWfzj+z8GOrR206dPH7Zt28b+/fuPyMQtUPTu3Zv58+fjdDrbdOXvzJx66ql89dVXnH/++YEO5X+K0tJSYmNjPT93tJrOLNU/nAq2Rx55xO/nQYMG8dprrxEdHc2zzz7Lo48+yhdffHHQ7X//+9/z8MMPdyjOI6l2DGWIQ4Q4AubMmUNKSgrDhg0LdCjtprS0lNTUw8u2dTaampooLS0N+uxwTU0NJSUlDBkyJKhLpduiS5cu9OzZk71799K7d+8OieEj4ZRz/V3HJ541lDcXPMDMD37HGz/dx8pF3jmrUggcTp/+JqkbTOFw+5tJCcCqv0+OZjeaQ0VoGrg1/YLB05ordcFouDmD0IWwIXKtqunqbPYYex/C6V82LXxLoSXUOXVBjE1/Uqj646CY2WG1hRg2RbKnVFp4rwgMZ2khBJj9w5oh8M3fU/P8TFSpzzM2XayN+c0Wm0Cx699bFf+L+JxRffim+HnOuXIycHjZB4A///nPrF69mn//+99EREQc1jYHwxTE77zzjkcMA8TGxpKRkYHb7ebZZ5/1myAQFhZGdnY2UkoaGxvJzMxEURTq6+vZvXs3Z555pp+j7pYtW1BVlX79+rUpZBITE4/oHI41znqNDQvLOPnSfoBEbWP2djBgt9tJS0sL2ixxdHQ0sbGx7Nq1K9ChtJsLLriAr7/+Gq2tue4nOJoUAXmA/nfM93EwQWx+PpuZ4pbU1tb6rdcRTJ+HRYsWdXgfx5JQhjhEiCNg1qxZQTlfr66ujrq6OlJSUgIdSofYvn073bt397vzGWxIKVm3bh19+vQhJibm0BscAQ11TVSU7iMloxvhEccns1BYWMju3bsZOXIk69atIzw8/LDNz5zNLt579ju2rS9l5OQcLrzp1Hbf+f3doxeS0COWlQu2MGRMJlfeOR1FUUjqlcDs/y73Ebp6n29EpJ3GRqfnOQAFTW+x9RzacGK2KF6jKUXRxaYFXTwqLZyWjawwqtA/cTUQFr3U2dYEbt/RSxoIF2BrkZiWIFV9vTqXmxirVTfBskhUzRhvLAy926IvWTGFtuLN+iK9hxSm8ZcwxjhJn3ikxNJsZH1V6e0ZNvfjG6Pqc6HrE3xjbTNZg1LZPj+fi//vFPI/PYDL6UYogm1rd3LTaU+i9ao2Njv0TaEVK1Ywc+ZM7r77bsaNG3fI9X+JhoYGtm7dSp8+fTj99NNbLS8pKaFr16786le/anNZTEwMsbGxLFu2jNjYWCoqKvjTn/7USvQOHDiQuLg43njjDSoqKrj88suZPn160GQpz7tuEn+4+O9kjepBv7HJXPp/Zwc6pA6TlZXF3LlzqaurO+Z/d48FqamplJWVBV1F0ZlnnonT6WTFihWMHTs20OGEaEG/fv2Ag/cImzeR+vbt2+FjdO/eHeAXe8lXrlx5RNelR7J9KEMcIkQHUVWVb7/9losuuijQobSbsrIykpKSDjpHszPjdDopLi4+oj/MnYHS0lIaGxuP+XlsXbuTq096hFumPc214x6jbEflMT0e6DcsCgsLGT9+PKmpqYc9ksnkzSe+5LPX57FmyVbefOJLvnlnSYfiuOR3U/nrf2/lqrvO9Ajq5iYn//zLLE8GEwAhcDQ4W21vi7Bx3oxhelmznjLV3ZMtLVyYzYywuUufjK1HeBru0p7SZg0UTR+xhBtQdfFsAz9TLU+Psek07VSJMc3DhPAs9xzR91PdVwQbcZqZXyGNXmef10BPcRtf9dpoPX5V879YEPibh2kS4XC22JeXihI9u7B57XbufPpSfvvIBWguNweq6thVtJcFX68ADp19MEul+/bty1/+8pdfXPdwWLt2LZqmMXXq1FbLzF62U045BavVP3dQU1NDcXExw4YNY9myZZ7RSl9++SXz5s0jPj7e76IvMTGRJUuWcPHFFzN37lwuv/xyunfvztlnn83q1auP+DyONSnp3Xj9pwfI6J3J6b8ZyshT+gc6pA4TERFBampq0GaJe/bsyb59+2hsDC5zM7vdzsknn8yXX34Z6FCOO2ZHyfF+tAczsTNnzpxWWfy6ujp+/vlnIiIijuhmhukR0adPn4OuM3LkSJKTkzt8jCPZPiSIQ4ToIMuXL0fTNKZPnx7oUNqFlJKysrKgLZfesWMHXbp0CZrsSlu4XC42bdrE4MGDW11sH23efeYbmht0c6na/fX89x9zjunxiouL2bJlC+PGjfMInPbMKQbYkLtdz1aiZzY35xUdtfj+cuObNNU7dEHsdnue11yqx3HZxOVUueSGyYwam+V1uxZCz6qCIQy9M4gVQzAr4CcYUcHq028rpGGwpemjmhS8I5MAnznELR5mybTNAuaIJyGNY0lvWbcn4yxRpPCIcQ9S6j+asZr6t+UVlapBkwvhcCOBpN5ddeMsiwIWgcWicNm1J9Oza6RX6ANjpw7Aavf+Xrtq9O+XLsrjr3d9xO6SKo9IlxJqHXqGeF+xg7svfIHn7v6Q2v2tswj19fVs3bqVzZs3Ex4e7ulvFkLw2GOPAXDjjTcihODOO+9stX1LzHLpUaNGtVq2atWqgy7Lz89HSum5qXjSSScB8PXXX1NZWUmvXr34+eef/UTLoEGD+OSTT9i/fz8//vgjF1xwAd999x2nn376QZ1fOxPRcZGMO3UkcfFxbNmyJdDhHBFZWVmUl5cHnagECA8Pp1u3bpSXlwc6lHZz7rnn/k8K4mAgMzOTadOmUVxczMsvv+y37JFHHqGhoYGrr77aY/zpcrnYsmVLq8/zjRs3sm/fvlb7Ly0t5dZbbwXg17/+9TE6iyMjVDIdIkQH+fLLLzn55JOPuaA52uzfvx+Xy0WPHj0CHUq7UVWVoqIiRo4cGehQjogtW7YQGxt7RHdCDxe3W/NqIckx7f8rLS1lw4YNjBs3rtUNC1MUL1u2DOAXy6cHj8uiaMsupCaRmmTA6KMzm9nZ7CLf7B025/L6ZjPdGtj9S57vuup1brj7DNYu34ZT07DYrajhNnC4EW5V7xlWVXALvb9YRReMhuBECI/4Q5MIq6JXG5vZX5cEu08MqtcoC/ApX9Z3U+9UibFZPb3F0gK4hV4ubdziNluFhRvdJVoRfmXQnv36xIVAN87yRdN0Q7BwvZJkV/kBv5dLVTX+8/YSbrxlCh+/NJe6miaGj89myrnDWT5ng15OLiEhvDcA1U3FSCkpWFtKbNco6muacKkOalx7CAsLZ8EHhVgVG1tWl7Bvby2Pv+s/WzgsLIzrr7+etsjPz2f16tWcfPLJ9OvX77DKqU1B3NbfE1MQt7UsLy8PgJycHM+c4fnz51NdXc0FF1zAwIEDUVWVpUuXcvLJJ/v1E9vtdqZOncrUqVMZN24cy5cvp6Kigt69ex8y3kAjhGDIkCEsWLAgIL4AR4uYmBiSkpLYsWOHX994sGBmuLOysoLKe+Liiy/mtttuY8eOHb+YJQwRGF555RXGjx/P7bffzk8//UROTg65ubnMnz+fvn378sQTT3jWLS8vJycnh7S0ND/n808++YSnnnqKU089lYyMDGJiYtixYwfffPMNzc3NnHXWWdxzzz0djnHv3r28/PLLbNy4EdBvNN58882HNcrxUATXlXyIEJ2IL7/88oj+YQeK0tJSevbsGZSzh8vKyggLCzsqf/wChWmkNXny5ONyMXPFndPZlLcDl8NNeGQYF//u0C6+HaG6upq1a9dy0kknkZCQ0OY6hyuKr7v/PMIj7GzbUMbwif04++qTjyg21a3y5pNfs/zHDdgjbLgcbiMDLYntEkntfj1TJIBhY/qwOneHZ9uqilr+9sBnuFwqRIXpNxQEyHArNGp62bEQesW0b4ZZk54xRAK9P1c4BdLoI7YIffyx4gZplmQbulRz4+0JVsBuEcRYrcSGWegWbqNbhI0z07sSa7cQY7MQbbWgWASKEFgUQVy4/tH+uym90FQ9LpdLo6FJpb7JTX2jm4Z6Nw2Nbhrr3DTUu2hqdBkGYAYSsChoUV4TFmkFnO5Wv7cf/3MBr35zF263mzn/zeWdv32PMIzEQBJpjychIo3qphJK69dwau8R/OmFK/n+o+V8/P1buEudTBh5BvbKMDRVQ1M1Vi1fw5YtW8jMzPS0dkRERPCvf/2rzff40UcfZfXq1VxzzTXccMMNh/V7kZ+fj91ub1MUmYJ4xIgRfs+7XC7P+JiLL77YM1rp888/R1EUZsyY4RGO+fn5zJ8/n6ysrFbzPc1Md69evYKqWicmJoY+ffqwbt06Tj755KASZL706dOH5cuX079//6C7qZ2cnMzatWupra0NqpsS5tztr7/+mjvuuCPQ4Rw3fOcCH89jtpfMzEzy8vJ4+OGHmT17Nt999x3JycncfvvtPPLII4c1MvHUU0+loKCA1atXs2zZMhoaGoiPj+fkk0/mqquu4qqrrurw34ylS5dy5plnUl9fT2JiIs3NzXz22Wc8//zzzJ49+4h704Prr0CIEJ2Ebdu2UVRUFHT9w5qmUV5e7ueYGixIKSkqKiIjIyNoL8KklKxfv95z5/R4MGRcNm///Ag7t+0hIyeF+ISjf9zGxkZWrlzJwIEDPcYZB8NXFGuqRnWJA03V2FVSxZolW8ka2JMrfn8mv/nTuUctvq/+vZgv3lqom0wpgsiYCCKj7My4bjLZQ3vz4A1v4XK4sVgtbMkr9hglm7hdautsMuh9w6rhqCwVhFtDsVtQpdTnKUmJFMIjdq0qOM1UrxAoKohmwGr0IEuID7eSHB9GcpydnjFhJMeEEWWz4NI06hwqzapGhFXBKgSVDS62Nzfi2K/RHC71lmMp6RFl57ycbny5oRJRD1ZNEq4oREVaiY60EhNpJalrGNER+s+REbqo23/ASWVlM5V7m6msbGZvRSOq7zmbfdQmxotUt7eOHz5Zwc/frqZ4y2404XWjFopCbHwkY6PP48dNb7Kpah4LCyI48MoGPfuwQM8+PHDfQzx3+8cgQBGCpbs/JSfndYqKio6JgZDD4WDTpk0MGTKkTefn/Px80tLS/BygXS4Xy5Yto7CwkKioKAYOHOhZNmvWLMaPH++pvBFCMGzYMN59912+//57VqxY4fn3UVRUxFdffQXA22+/HXQ3J/v168dPP/1EWVkZvXr1CnQ4HaJr165ERUUFpUGV1WolOTmZsrKyoBLEANOnT+fLL7/8nxLEwUSvXr14++23D7leenq6ZxSTL5MnT2by5MnHIjRuv/12RowYwbvvvuv5u7Nw4UJ+9atf8fvf/95zo72jhARxiBAd4Ouvv2bUqFGHdcesM1FZWYnVag26uEEv9W5oaAjaCzCAPXv2UF9ff9xdNhOS4khIOjYXTm63mxUrVpCcnHzYF5ZdunRh7NixzP9pIblfbWP9gjLPsvyFW2hqdPK7Px+9m00lhXtQFEXPPmqS+MRo/jX/fj544QfuveIVdBWmoKoqapORvrW0EClmT63ZSywBl163LDSJdKsIm5EVVTWEougeW2b5snntoIKw6oo73G6hf/cIeiSFkRyrP8KsCpX1TsrrHWza28CPxfupbnLRbJS6h1sVHpyQztyifTg1CS6N8BqBIw6PCK2sc3JeTjdKax2IKg3FraG4hV+ZtHBpKEZfsiIkUQi694ige49weqZEMnxYV2KibRzY56Cyoom9FU3sLm+korjO38la1UBKSrdXsmPTLu9JKgqKzUrfIb146NVr6No9ljlf/opbf3sn8+cu5McffyA+tis5PU5iSt8ZDBiSxb0vXc2Sb9eQ1DuBDf/8nAP11R16vzVN4+t3lrBlVREDRvXh7KsntBKdGzZswOVytVkSXVJSQlVVFZMmTfI8Z4phVVUpLS1lzJgxnn2uXLmSsrIyfv/73/vtx2Kx0KVLF8aPH09DQwOffPIJzc3NpKSkcMUVV3Dvvfe2yhwHA1arlQEDBrB582ZSUlI8WfJgQghBRkYG27dvJy0tLehusqamprJmzRoGDBgQVLFfdtllzJw5k5qamqAT8x0lWDLEnYXvvvuOs846q9Xza9euZfbs2X7XgJMnT+bKK6/ktddeO+LjhgRxiBAdYNasWZxxxhmBDqPdmLOHg+kD1GTHjh2kpaUFXXmbiZSSzZs307dv36A9h5ZIKVm9ejVWq5XBgwe36/eqpqKJL/++inNuHQbgEcVSStYtO7oOsKNPHcAP/81FseiieNy0QZRur+D9v/+g97mCt9dXgDTHKPkgAJqcYLcihcBis0BMGDTppcamCRgSLCq4bRI04W9dKSWJdhsZWTFkp0SRmhhOda2TsppmNu9uYF7BfirqnLikRFr1kmnZYixTs9RwaRoxYVaqm1yg6COc/EYgKd6vQpOgGm7R0huH6cEFeoK7walSXFRHcXG9Z50oq0L3pAi694ggKSWSESfprQrFhbUUF9ZQtqMO934nCMGSHzcSHhWGo9Gp3xSQGi99fScZ/fURGE6Hm9cf+I6s8Mlk9jSEpluv0S5aV8nj//cmr869j1PO00uUb3hgRrve40cffZRHH30UgI9fmcvbT36NUAQLvszH5XRz4f/5j8cbOXJkmxkOgLS0NL9lphi22WxMmDABt9vtt/4XX3wB6LNWW3L++eezf/9+oqOjefLJJw9ZQREspKamsm3bNoqLiw97nFpnIzU1lY0bN1JdXd3pZ0G3pFu3bmiaRlVVVVC1EOXk5JCens7s2bO59NJLAx1OiE7IOeecw5VXXsnf//53v/arbt26sXTpUk47zdv2pWkaubm5oR7iECECwf79+1m6dCn//Oc/Ax1Ku3C5XOzZs+eYlbMcS5qbm9m9e3dQznw2KS0tRVXVoCvP+yW2bt3K/v37mTx5crvLPiOiwtm7s45vXlrjJ4qFIhh00tG5wHY53dTXNDJ++mAefO1a8hZuJr1vMudcfTLb1pfqK0mpi2JNAyPTJYDemd0p2e4/okoIgXSpEGn3tttG2BD1Drp0jaa22YV0qUjDxEoXnJLkpEgy06LokxZNXKyNkspmtpTV882KSmqb3LgsEmkVuggXAgXQVPSffcSu0CuzqXeoxNgtVDc6dfHrW5qN11QL9LFMQnrLtM05xKa7tN60rGesPTc0DDHY3KSys6ienUX1xvE1kpIjyMiOY8zkJKadn0b59hpKNu6neNM+ZlwxmaXfr6G5wcEVd05HsSj88PEKsgen0iUxhsb6Zv83yMi2a0Dxtkqq9hwgMSm+3e9zS/IX6S7I5k2K1UsKWgniw8VXDJsGWi354osvGDp0KBkZbZu/denShaFDh5KXl8ekSZOIjo7uUCydCSEEOTk5rF69mt69ewflCD+LxUJaWhpFRUVBJ4gVRfHMJA4mQQxw2mmnMWvWrP8ZQaxJgTjOGVstiDPEc+bM4aabbmLAgAG8+OKLnt+Tm266iUceeYQlS5YwfPhwHA4Hs2fPpqCggMcff/yIjxsSxCFCtJPvv/+ezMxMzyDzYGH37t3ExMQQGxsb6FDazc6dO0lISAjaC0lVVdmyZQsDBgwIun7Bg7F7924KCwuZOHEiYWFhh96gBUm9E7jmj2fz7l+/45uX1jDjzpGk9OlGtK0LV9195hHHV7C6hIeufo26A41kDU5l5oe3MOGMIYA+i3jtskISk+Ko2lMDqkpEbARNzW6PO/TUc4bx5otzfLKq6OJR8fbHml+l3cL++mYUi6JXJbtUunWNZNCQBLKzYhDAjp0NLM2ronhXI/URQhewBopbF7Ga4j2OUI2D+lzYmBXPdU5dEHueN2MD/0yxAKkZuld6T8Wrl43vFGkIb58decY64ZdZ3lPeyJ7yRtYu2kO4dJE2sCuZQxMYPyOd6CgLf5jxKz3ztrKEW856DlXVEELw4KtXM3BUBptWFSMUCIuw01TX7I1DwMsPfcYjb7TtIt0esgf3Yt2ybbqRmRBkDuyYadXhiGGAzZs3H3JfvXr1ora2ltzcXCZNmhSUArIlPXr0ICYmhm3btpGTkxPocDpEeno68+bNo7m52c8NPBhITU1l6dKlDBkyJKjK1i+88EIuueQSXC7XCfHvIMTRZerUqaxfv5777ruPK6+8kg8//JDXXnuNhx9+mLi4OP72t795jA179uzJCy+8wG233XbExw0J4hAh2snXX38dlJnK3bt3k5KSEugw2o2UkpKSEj8Dm2CjqKgIu91Oz549Ax3KUaG2tpb8/HxGjBhxRH1gl902jXN/MwmkxKk2syxqGf369SMsorXJkYmz2cXK+ZuwWBVGnzoAi7XtC8GXH/yE+tomAHZsLOeLN+Zz9R/OBuDP//cWa34uBAEWm5Xsob0o21EFmgvQZx9vyivCoumeWSY9enZhz+4a7zglE7sV6XRjsQr6D0pgwMhEuiSGU1BYy9c/lLOrstlr0qWgu0/b8exDzwhLhEXo4lQaGWZV6COBzXsoxj7qnSrRdgum+5dvQtgfY86wz6Qlc8aw9DPLMsY2mXrYHBllCnQF3TXb57WIibBTVdbAusV7WLdoN0m943n0zSsoKSnRy1BLm+ieFsPuHTVIJF+98zN/eecmvv1gKY31zZx+8WhefeRz8hZsNmYiw+6dVW2+l+3lqrvPwtnsYsOKHQwZl8UVd7a/veVwxXB7GDBgAHV1deTl5TF27NigbF3xRQjBgAEDWLp0KRkZGUEnKAGioqJISEhg586d9O3bN9DhtIv4+HhsNhtVVVVBNUbxtNNOw2KxsGzZMr8+/RAhTCIjI3nhhRe49NJLuf766xkwYADPPPMMd955J3feeSd1dXUAR9WcNCSIQ4RoB1JK5s+fz+uvvx7oUNqFqqrs3bs3KO/iV1ZWoqoqSUlJgQ6lQ7hcLrZu3crIkSOD/gIYdHfe3NxcsrKyjsoNlqgY/SI6iohDjmRyu1TuveQfbMkvBvTe4MfevanN17Whrtnb1yuEp1y3ucnJ6iVb9eclqEKfi+sVrAKJYPn8LUhV0821LHpJ9cmn5vDph8v1ecVWb6Y4Nj6MwcOTyRmWQM1+B5vyq9iyvY4mBNKmeDKgAGigODXUMJ+PXyFQNKmPW7Khi2Gp/70RCp5yOzPGOqebGPsvfHz7ZIt1My+zOVq2Xsdc3qqd1kxVG6srgtjYcFAl9eX7qDJGVZnxO5tUErt2Jy0tjdraWmZ9+CPTr8+hfr+D9Ut2ExFjJyIqjIt9SpfPu2YiKxdsRrEINFUy9cLRBz+ndmAPt/G7v1zc4e2PhRgGXUCOHDmSRYsWsWnTpqC+yWfStWtXunXrxtatWxkyZEigw+kQ6enpbNiwgezs7KD6Gy2EICkpiT179gSVILZYLIwePZr58+f/Twhi4x7kcT/micD48eNZu3Ytjz76KLfccgsfffQR//rXv47JHOsTo3YvRIjjhNkzOXXq1ECH0i727t1LWFjYcRv1czQpLi4mLS0taEuNt23bRlxc3AlhpqNpGitXriQ+Pv6YZFO6dOnCkEHD2bRpM1s2F7RavmV1sUcMA6ycv4nSbRVt7uvSW7z/RsPCbZx5xXjP910SYxCK8IxS8r948ClRtigIVUU4XQi3yudvLdKNoIy0cffkCM68MI0rbuxLVKyNbz7azif/KmBjfjVqjQPF4WqdtAUsLlpfsUgQTuPKSdNA042vcKNnZzXDIEvqGWLfkmkVWu3L91shhV/Zs0cEmz3E+HiImXH5hiclUpNc+9vTaCquQnG1OiL7Kmv5x4OfsnpxAU21bmp3Cz54YhUbl+1h6OSe5EyOY+OGjTidTs82o07J4Zn/3Mqlt5zO/a9cw0Ud7PM9mhwrMWxis9kYM2YMJSUllJaWHtV9B4qcnBxKSkpoaGgIdCgdIikpCU3TqKysPPTKnQxTEB/MIK6zMmnSJH766adAhxEiCLDb7cycOZPc3Fz279/P4MGDefbZZ4/673woQxwiRDtYsGABgwcPJioqKtChtIs9e/aQlJQUVHe/QTfTqqioYPDgwYEOpUM4HA62b9/O+PHjg+61bwtzVM2xKvdct7SQh69+jdju4Zx7u4NdRXspXFFJfGI0M64/hajo1iWZEVFt9y9P/dVJRMdFUFPdwKgpA+iWHA/oWZVH37yB5//4ETu3V+qjkYwS6PhuMRyo9rmoF+jGT5oEq7dEuUtiGGOm9qR3nxjW51ez+Mdd1Ne59MyxeeNG07A2qTijvfs3UUAX1YaJlpmMtbokbs1n3nHL3mAJaJI6p0panPFaCIFqM0Ws9M9Go1dgezBKk4Vnhz779kW23J8AVWP216ux2iy4XKr/ORk1zwu/zGfh53mExUXhdLqRCDbnVrI5t5LU7DjCrouguKSEvn2z6dOnDxaLhcFjMhk8pnO4FB9rMWwSHR3NqFGjWLFiBdHR0XTp0uWYHOd4ERsbS2pqKlu2bGlzjFVnR1EU0tLSKCkpCapMK0BiYiJut5uamhri4+MDHc5hc8YZZ/DYY48FZe92e9EzxMd77NJxPdxRZ/fu3XzwwQeUlJSQnp7OFVdcwfDhw8nLy+Ppp5/mwQcf5OOPP+bNN99k0KBBR+WYwZlyCREiQMybN4/x48cHOox2IaX0COJgo7y8nISEBCIjIwMdSofYsWMHXbt2Dcq5zy2pqKjwzF89VmOj3nryK5wON3t31vH1P1ZTVbOHHUU7eOfpb3nixjfJGNCTS26ZqlfyCsH1D8ygW0prMeFocvKHi17kLze+xUsPfMJ6Y4xTQ10zK+ZtxGZTePqjW9DcGqhGtlOTHNhbZwg9jIfQBa5hpBUVF8Yp52dwyU05NNa5eP+1LSybv5v6WiPrac4oNrcFhEv1c3cG46s5pNhT1S08Jc6ew6M7S6Ph7eFVoc7hUzItQbO2zjZ70Lw9xkLinYeM/zqe7YzYhDGbWX9eP3ZBwR7GnDPUf0azWQ+oSc+cZkezSy9X96kVLNt6gNfu/IFFHxZQurOUuXPnUlJSgqZpbQR0/DleYtike/fu9O3bl/z8fFS1dcY92MjOzmbXrl00NjYeeuVOSK9evaioqPCrYAgGFEWhe/fu7NmzJ9ChtIthw4YRGxtLbm5uoEMJ0clYtWoVOTk53HvvvXz88cfce++95OTkkJ+fj8Vi4f777/eMexw5ciSPPPIILpfriI8bEsQhQhwmUkoWLFgQdOXSBw4cQFVVv3luwYI5NzkYcblcFBUVBZ1RS1u4XC7WrFnDoEGDjunNCU/PL1C1s45v/rGakWekM+iUVPIWbMbtUrn2vvP4dOPTfLr5aS7+3Wlt7mf+rFVsyisCQFM1XnrgE/ZV1vK7qU/yyDX/5OZpz/DTZyuJT4j2ijnFN9uJX0Y3LMrG2DN6c9ndQ7CFKfznxfUs/r6Uxhqn/7qK0D9VBWARunBsVvWxRy0QquYnfPXt8ZY0+xhhCc3n4dBdpqPDLJ51FCn0uuk2svYeIy1Pn7CPaNdPGNzSmE0sEZpEaFqLrLHQS8yRLFhciObTP40QnHHRSDAvSHxvlphZZCnBqS9ft6iYVV+VM2jQIAoLC5k/fz67du0KaMnn8RbDJllZWVitVrZs2XJcjncsiY6OJjk5mW3btgU6lA4RHR1NbGwsu3btCnQo7cYsmw4mFEVh1KhRzJ8/P9ChhOhk3HPPPURHR7N161YqKiooLCwkNjaWe+65x7NO//79WbJkCc888wzPPfccw4cPP+LjhgRxiBCHydatW6mpqfEbCh4MmIYbwdaDW1dXR11dXVA6Y4Pe+xwdHR2UNyJasmHDBmJjY+ndu/cxPc41956D1aaLkYjoMH1O8T9WM+qsDMad3xeLVf8djoqNILKN8mkTt9Pt/7NLZd7nK6naXeN57v3nviciwnCwaokpNC2CYaf05Ip7h5OQHMGXr27kpw8LqatoaFM4+24Lulm0YpyPJ/NsYGvEv65NGqLcgVcQGw/FfGhgdUN9s5som0Xv+5WgWo3T8MwbNncqDA2sZ6KFmbFt4TBtllULzTDzEsIvoe27LkgIt6EoAsUiSOmdwI0PziCtX7K3vNqHG+49i3DF6IsGUATzvsznxw/XMGXKFPr06cO6detYtGgR1dXVrd+Lg7Dip438476PmfXmAlR3xzOsgRLDoIuCESNGUFRUxL59+47bcY8V2dnZ7Ny5k+bm5kOv3Anp1asXZWVlgQ6j3fTo0YPa2lqampoCHUq7mDhxIvPmzQt0GMccKUVAHsHK6tWrueyyyzzGmhkZGVxyySXk5+f7rSeE4I477mDdunUkJycf8XGD6wo5RIgAEuz9w8FGWVkZSUlJQTmnUFVVtm/fHnSupW1RUVHBrl27GDZs2DE/lxGT+vPvZY/w18/v4N3cx7jhofMRqpX1P+xhxPR0duzYcVj7mTxjJCkZ3Tw/X/OHs7GH25A+Es9mt7K7uEoXamaW2BR0UpKQFMGFtwwia1gCP7y/lW//tZmqsnq9N9iqgEvVdadvya8heiWGqDSzo26tVdm0AkYZtH+Tr+L0ClNPibNhqoUEoUKjQ0WTkiibBaGBNKdUmRdBLauQTZFsll+3zMa6vSpaAz27regl3FLgLakGUCURUWGMmtyPsafmcNFvxrPm50JKCvZ4XwMDIQTjpg7kxofP18/f4s0s//eVn1i9pJC6PW7K8pqpq3SybNky1q9fj9vtf0OjJSvmbeSR3/yT2R8t4/XHvuBfj3/5i+sfjECKYZOYmBj69et3QpROx8XFkZiY6Pfv1NHk5Imb3uL87Lu585xnqSzvvMK/Z8+e7Nu3L+jKvu12O127dg26LPGZZ55Jbm5u0N5ACXFs6Nq1KyUlJX7PFRcXH7T1LCMjwzOX+EgImWqFCHGYzJs3j3HjxgU6jHbR2NhIXV1d0DkcSykpKys7amYJx5vS0lLsdntQ3ojwxbdUOiIi4rgcs2uPOLr2iAPgopumcNFNUwDYv3//L45k8iUmPpKXf/gjm/OK6NIthvT+KTQ3Opj/eR5bVpdgtVm47clLePev31G6owIpNV0JWhUURTBiSipDT0lh7aLd5M8vR3P5KEwhUDV0IWyXRqmyV0xLnwysMH4Wbgm2FhlXCTg0iLD4ZZuFVfMpHzbmDPsIaYuUuKSgwakSa7NS16SCFHqvsaILW89tC7fRP2wacnnqsP3vhQtNesu6FdosvdZj1supmw40smLxVmhoYulXq7DarUa5uKILaIuFsHArv73vHFLSEknuncD3Hy5j28Zyv9dm8TermfPRMhRFoKoal9w2hbi4AyxYsIDhw4cftLpi5U+bUCwKmqq/L0t/WM9Nj17YdswHoTOIYZOsrCx2797N5s2bg/Zvnkl2djbLly8nOzsbm83Gp6/9xM/fr0VqksL1pbx038f8+d3fBjrMNgkLC6Nbt26UlZUFXauLWTadkZER6FAOm6FDh3r6iCdPnhzocI4ZbVbbHIdjBiuXX345Tz75JDfccAOjR48mLy+Pzz//nPvuu++YHjckiEOEOAzM+cP/+te/Ah1Ku9izZw8JCQnY7fZDr9yJ2LdvHy6XK+gcP0EfTVRYWEj//v2DPju8fv3641IqfTh06dLlkHOKfQmPsDN8Yj/vz5FhPDvrTvaUVBPbNYrouEj6Dkvjnae/4UB1HedcPZHthWU0Cz2DNevVDVTvNkoQFeFpwwVdPCpCoDU5ERFhxtM+GWbwflUligKqObvYFxfQsvJbaWF8JXU1KzQNTy20ZoxeMvqIhQTps9gU2Irb7CE2H8K/LsxYz2PchbnywX9vhVtDUY0d2mygOnC7VbDZkIriceN2uCWfvbeMMy4dgxCCmR/czO3nPceesn2GPpc01DYhDDEMMO+zfJLTz2Tlz+upOVBH17hEJp46rpWJW+/sJI8YViwK6f3aVy7XmcQw6DcHhg8fzsKFC0lOTg7qNouEhARiY2M9/gl7y/frN4aQaKrGnp2HXxYfCFJTUyksLAy66p6kpCQ2b96M2+0+ZqaHRxuzj3jevHkntCAO0T4effRRmpqa+Oc//8lbb71FZGQkd9xxB48++ugxPW6oZDpEiMOgoKCA2traoO0fDjbKysro2bNn0PU9Ax5Tlp49ewY4kiNjz5497N69+7iUSh8upiguKChg+/btAKhule/e/5l3//otRZt/2RBHURRSMroRHacbg3VLjueev/+aP79zE/XOfYR3a6R4fRXfvLYRt8P7uydNt2mrBSwWjwD2jDRSTZfm1j26ihSe5z09vMbqNjct+oiNmcGq9JY/m89rwiif1sum6x0qMTaLnt1VweLG616tGdtavTOW9Syz9Bp3gSdOxa359Bf7/Jszs7nmz4b5mC6H/cc7eR25vc+XFVfx+l/0cuaY+Ehe+uZuLrxuMiefOZRH37iewWMyPS7TikUhoUccL/zxvyydtZVPn1rJtk3FzJ8/v1Vv8VlXTeCim6aQ1DuB0VMGcOdfL+Nw6Wxi2CQmJob+/fuzevXqQ5aMd3b69u3Ljh07UFWVyTNGIjWJYpjWTbt0bICj+2WSk5NpbGyktrY20KG0i+joaCIiIoJulvL/Qh9xqIe4fdhsNp577jnq6+upqKigvr6e559//pi3zwXHbaQQIQJMMPYPu1wuqqurGTJkSKBDaReaplFeXs6YMWMCHUq7kVKybds2MjMzg1LMmzidTtauXXtcS6UPl5aZ4lkvLWfupytQLAqfvjaPf3z/B9L6Hn6pen19PXl5eezaXcGP72ygqrQeoQic7oMUnQlBv6G92bahDE2TxMVHUFPbrDtkC9PbytciWujl1W4BFul3c8EiJW43xjxivCOP3BqECaSpLX0yuAK9Mrq+WR+9JFTD1NohkXZFF+qKOfJJ6ne9pTRGKZk6299RW1oEwq2hmTOMfecL+74MLrdfP7FN6Enu2MRoaupcYPU169KP+dX7S7nhvnOx2ixExUZw44MzPKuobpXSbXtY8u0aUrN6MOXC0RSsLQXgQGUjXzy3ipmfX8eyZcvIyMggJycHRVGwWBRueHAGN/js63DorGLYJDMzk127drFly5agLp3u3r07YWFhlJaWMnxiP/72xR2sXlRAev8Uxp/ZuT+PrFYrycnJlJWVERcXF+hw2kVycjIVFRVBZUR55pln/s/MIw7Rfrp163bolY4SwXvFFiLEcSQY+4erqqqIiIggOjo60KG0i8rKSqxWa1DO7t2/fz8NDQ2dosT4SDhertIdxTdTXHWgAtDHK7ndKrlzNxz2fiorK1m0aBGJiYkseH+bbpploLnU1uZTAlCgcMsuYuIiQNWoKd3XWjh6ZhmbZdO6+PWUJZsmXhKEQ0Oo+jrCmP8rVDyl0Jjm1KZWlRLcUN+sEmO36B3Dqv684tS8M4uBsP3e3mehHUTgS3QTLdCFuymKwWsEZmaSER7zsa7dYvhkzeO8v/IxUrNT9HJwj6DGcyMgLMzG4u/WsmrhllajlSxWCzc//itenvMnZn54C+OmDSY6PhLFovdy9xnQkyHDBzF58mQqKipYvnx5h+fEdnYxDN7S6eLi4nY5bnc2hBD06dOHoqIipJQMGNWHK+86kwlnDe001Sa/RGpqKmVlZQEdBdYRevToQUVFRVDFbfYRL1++PNChhPgfJySIQ4Q4BME6f7iqquq43l07WpSVlZGamhoUF04t2bFjB7179w6aHq626Iyl0m1hiuIRZ6QzZEovQJ9jnNTr0P2Xmqbxw5cL+XnJUkRTFAMHDuT6P52LxcjqJ3SPpUtiNKi+Zlq+20sO1DYhMT5E65t91m39mnk+aA0R7Oc27TDLqc3nJUIRCNWcCSx9SqH1763NkvomN1F2i96jrEk0qwBNoKgCYVTcOqMVfRuX0WcM/sIdfMq9AXtLkSh9/o9X+EtJWLgNW5iVn75azabVO73Lfda1KaAIyTN3vs+Dv/kn/3jgE7+9N9Q2ccc5z3LliAe5fNgD7Creywtf3cVF/3cqV/7+DJ786BYURSEmJoaJEydisVhYtGhRu8tZg0EMm5wopdM9e/akqakpKIV9t27dkFIGXexdunTB5XJRX19/6JU7Cf8T84hlgB5ByIABA3jllVcCsn1IEIcIcQiCtX+4urqaxMTEQIfRLjRNC7qSL5Pm5mZ2794dVC6fLXG73axdu5bBgwd3ulLptujSpQsD+g5i9Fl9GHlGBhf/dgoTzxnmWb5tQxk/fpxL2Q5vX52qqnz7xVyqayr46uV1vPiHr3n/7z8QHhnGC1//nmc/u52XvruH/ZW1usBzq96Li5Y9s8bPitmfa/hRtZLExvglj8iV0pNItUqvy7MwhLEAlGbNY4QlNMP8GcPQWpM0NOmmWopq9B37xmfcyJA2/SjCYvRBmyv5mmxJn23MOcM++/JspurxCMPxa/fOajauKqGoQM/Q+2aSkZLemd0ZPbEvjXXekSrff7Scxnrvz1++tZDt6/US6cb6Zl66/2NS0hO57r5zueKO6cTER3rWNcVsz549Wbx48WGPmAkmMWySmZlJWFgYBQUFHd5HoLOEVquVtLQ0ioqKAhpHR1AUhaSkJHbv3h3oUNqFxWKha9euQSfk/xf6iEMcHlu2bKGqqiog2wdvGiNEiOPEzz//zIABA4Kqf9jpdFJTUxN0bqVVVVVYrdag690CKCkpITExMehK1H3Zvn07kZGR9OrVK9ChHDYDh/clJb0bkTHL6NevnyervfCrfJ669R09o2qz8NR/byVzcAorV66kvr6Oz/++hoYavfz2o5fmIjWN8Eg7z/znFsIjw1ocRXrFo28ptN2KdLj1MmZVA5tVz+QK9Nm+Vp913RLFJtEMYyp8NKxwSV286g3I+mxhi0DRfKS1KXAkKCqGILbqAlnVzbIkgMWnfNvXPEtonvJr30yxQC/fNvWxifBkg80ybVU/RyFA6ML92T/+hwuvm8SCb9bomWi3odxVSdmWXbj2+WSqDLOx/ZV1REbrvYKNdc0eES416See20IIQU5ODrGxseTl5dGvXz+ysrIOWskQjGIY9PMcMmQIixYtIiMjg8jIyENvZLDm5608fes71O1v4JxrJnLToxcGrNIjPT2dn376iaampqC4weZLUlIS69evZ9CgQZ26UqYliYmJVFVVkZ6eHuhQDptp06bx5z//OagcsttFIEyugthUa8GCBR3e9kj+rZ6Av3khQhxd8vLygs7gpLq6mujo6KAzqdizZw9JSUlBdQECejampKSEwYMHBzqUDuNwONi2bRtjx44Nute/rZFMX7yxwCP6NFXjp1nLKNuXSGJiIjUlFo8YBqk7JisKjmYXn72xgO6pLfrXVU13mDYFsS9WBVSJcLqRYaYLpjC1LUZaVR/TJEGoGtJ0cjbiszolbjMFLI1t/WYv4V1f6tq2ocFFVLhFH4EkQbpBWEEq3v2iSp9wBfpsphan4JSgSjSfWcpIiRRCH/VklGkrDrcxwkl6hHtF+X7+9cx3jD19IDs2lVNZth+Mmc0SyB7Wmz1l+/xOYdF3a7j81tMBmHjOML5+ZwlOzQkSLrttWutzboOePXsSFRVFbm4utbW1DBs2rJXYDVYxbBIXF0dKSgpbtmxhxIgRh7WNlJKZN71FfU0jUsKXby5k2IS+jJ0WmL9LUVFRdOvWjZ07d9KvX79Db9CJ6NatGw6Hg7q6OmJjYwMdzmGTkJDg6d0Olr/jw4YNQ1EUNm3aFHQmoCGOPgsWLDgiUdxRQoI4RIhDsHLlSq6++upAh9Euqqqqgq5cWkpJRUVFUH4gmkYmwTjiymTr1q0kJCQEXVWBSUtRHBMfiWIRaKokOTueXiOjyMjIIDs7m7Vzyr0GUhZTnOoisLHRwSf/XODdsZQIRUGqmneskO/MYWPGqgLIJidahN27XJVg83YmCVUDYUGoEk1B3xe6wLU4JZrNyN9K3SgLi/QIVE9/MYAbGhrcWBRBhEWh2anphlyKRKp6iTSAogn9whi87tCGG7Z+bmDR9Gyv9InTc0z0bDCqpr9OZoZY1fTlFgtOTbJsUYH+vM0CDs2z+5T0btjDrDibXZ7XMiZOzxTW1TTyxC3v4nSrYLEwcnJ/zrhi/GG/3/Hx8UyePJkVK1awbNkyxowZ4xnLEexi2KR///7MmzePrKyswxJlbpdKXU2jX//gvsrAjg9KT09n/fr19O3bN2gEGujlx926dWPPnj1BJYh9+4hjYmICHc5hYbVa6devH6tWrQrKz/8QR4+j0Uve0eqIkCAOEeIXcLlcrF+/ngkTJgQ6lHZRXV1NdnZ2oMNoF3V1dTgcjqAT8gDFxcWkpaUF7ailxsZGiouLmTx5cqBDOSJ8RfH5t46lZOtuwuIUzvi/IeT0y6Fv374AuJ0qChJNGuLT0z8LFeUHWu035v/ZO+84K6rzjX/PzC3bC7uwy9I7SC+iIAjYFVHUaOy9xRYTzS9GE1ETS2KMURNjR6OxK/YIKiCKSu+97rJsX7be3dtmzu+Pmblld5EFdrk75j6fz4W9d2bOeefWec7zvs+bkUhdtWGihU7YfUOa6c9OFRnQmjk5R7dgMut5pTRdoQnNCaAErOJhI3VaChFq5RQ5nsVRZYOOL6CR5nbga/CjCokeNLYrpheTEjTNuiJhEV0A3axrlhDVfzhyX4lBgBWTpGPp32ZdsqqEz8OhRrVmeuvZBfTonsmeiBrugSMM5/IVCzdTXlQVenzF15upr2kkJb31qbUJCQlMnDgxRIqtTgA/BTIMhsLaq1cvNm3a1Ko2dE6XgxPOGcf895cjhCAlPZHxJw49ApHuHzk5Oaxdu5bS0lJyc1vfDq0jIDc3l/z8/ND3hh0QWUdsF0IMMGzYMJYvX85VV10V61DaHFaL9yM9px0Ry2sQe169xRHHEcKmTZtwOByMGjUq1qG0GnatHy4pKaFz5862u4D1er2UlZXRq1evWIdyyNi0aRN5eXm2UkL2B4sUl1YW8atnZnLWrWMYf8w4Bg8Np2yefslEEpJcYdU0Qu0t2F6G6ohWSz3VDWR1SQ2lHDczolJESDkWvkD4WGnW1ZqEsZlSa92kWctr9j6WmCZaZv2uiObFoVpgT4NGiks1CK0uUHQMh2lzCtVPc8dR677lXq0YKnIL5thGyrXlgK1JUBTS05MMUd1y1W6q+kU8l0jYs6Msov5ZsmHZTgDSOkV7MqgOhX/d/z7vP7+QYEBrIZiW4XA4OOaYY3C5XHz77bcsXrz4J0GGLQwaNIjy8vJWGyX9+vFL+c2Tl3HdrJn8c95vye6a0b4BHgCKotCrVy/y8/NjGsehICcnh+rqanw+X6xDOShYdcR2wtixY1m+fHmsw4jjfxhxQhxHHD+CFStWMGjQIFtdWNm9fthu2Lt3L1lZWbYzjbFQW1tLUVERQ4YMiXUobYbMzEwGDhxIQUEB3bp1a2YS1qN/Ds8vvId7nrmSTtkRJmgmcZMSklITQmRP1yWNHp+ptobJXSTRw6EgdYnwBZtsa7qvcV8JkVKTFGsggubfVhPipmQ25OIM6FDfGCQlUTV6EJtqr6KBwyqPVkyFOqT0NlGwrXpfyygsktxKGRKNLUdsgJp9HoJB3aiXVsLPmXWMYvUsVgQZWSmkZSaFUsMRgvxthjv06EkDOevKySAM0zMtqDP//eU8/+CHPPiL2WhBjS2r8yncUcqBoKoqo0ePprGxEY/H02JNsV3hdrvp378/GzdubJVztKoqnHDu0Zxz7TQ652UegQgPjO7du1NWVnbIPaRjhYSEBDIyMlrtaN5RkJWVRUVFRcydxg8GEydOZO3atbZuNbY/SNNU60jf4jg4xAlxHHH8CJYvX87QobFNOTtY2LF+2Ov1Ul1dbUtCvGfPHrp37x7rMA4ZGzdupHfv3gflZNvRUVZWxubNmxkyZAglJSXs2LGj2T6duqQx6YxR6P6AkeYbcfGo6xJXglGPqpg1xqoijLrjoE7YojmiN5HVhkkRUW2VwqqwqRKbZJYmbZaEgBCFM9OpRVNCbIxg/KuDpzFIcoIjwlW6uZIcelxKFMVo4WS0fzLD1yVSbelSQISVZGsoi8CrSjhoKQ2+q+ngDyIlDBzRg/Ovn8rf37uVnoO6GmOZz1Hxnn3mUyb4xX3n8uHmR8ntGZ3NsmT+Rn57wVPcfuZjXDflQV7/++ctxBdGIBBgyZIlZGRkkJWVxdKlSwkEAj96jJ3Qr18/6uvrKS098OJAR0RKSgppaWkUFRXFOpSDRk5Oju0IsR37EY8ZMwYhBJs3b451KHH8jyJOiOOI40ewbNkyxo0bF+swDgp27D9cWlpKRkYGbnfTdjcdG3V1ddTV1dmybzIY75WKigpb1cgdCBUVFSxdupRRo0YxcOBAJkyYwMaNm3j83le4YMy9/Ommf9PoCadATp05FjTNILsmhIC0jCSuv3tGSN2tq24wSKymgS9oEONmKrFqqKEBLVo5NQmwpf6G05AJHxs5DiYBVcKuz+HewQbrFRitl1IS1XB/4shUaHOQcLp1+N8QURcYdc+RLDqkKEsjZVqToVppaRmRWXGZUHSJCGqGaZIi2L65mPNvmEZOt0x6D+waqp9GCAaN7Bn1erncDlwhd24DTqfKhqU7Q/dfe+y/Uf2LIxFpoHXMMcdw9NFH43K5+OGHH34yapPT6WTgwIGtVok7Inr06EFhYWGswzhodO3alfLycjSt9Wn8sYZVR2yntOlIY62fHKSIzS2Og0KcEMcRx34QDAZtZ6hl5/phO6rDhYWF5Obmhtxt7QQpJRs3bqR///62W4jYH2pra1myZAnDhw8PqfZfvbWSd/68lG5Dkuk9IoPv5q7l33/7L7qu8+Y/5rF+yU6GjOvDmZccG6q3dLgcXH/3Waz+bpvRN7hJnawQwiCSfi2chmwRRVUxtulhkiukDBPuCMVVQPPU6qAEnVDb4xCizLmM18/jCZKc2EQh1o2bMW9Y2RWRZlrWfEGzxlltcvEkI4hziIAJ02Wb6DphIQj6g1HPka5Ldm0qQkrJskVbDKJskuJjTmrewu4X958bqtsWiuDMyyY126clh+KW3KRVVeXoo49GURSWLVtmWwLZFL1790bTNFuSSjBaZe3bt4+GhoZYh3JQSE1Nxe1224pcglFH3Nq6846CoUOHxuuI44gZ4i7TccSxH2zatAkhhK0MtexYP6zrOuXl5QwePDjWoRwUpJQUFhbarke1hZKSEurr6zn22GNjHcphY+332/n41a8ZeHwnevfuFTI48zb4mP3QR+iKyifPrOfMG43X6oPZ37J0/iaKIupTA/4gL331Wwp3lZOdm05qehJvPzs/PElTQmb2+ZSabrQbitwkTEKsmD2FMQmd2Y5Jh9BytNBluIYXICARDou8RpDxCIVYCEAVeMwa4lCICMP3y+KAupkabUnKkaTY+ruJ2huaLJKAm+TeG6hhR+kiKup34tcacTtS6JI2kP4ZE3E5EyPGhaULN9HvqG6UminSfq2R0oZtnHrSaSgpXsorSnG5XAwfPpyrrrqKl7/9A4U7y+k9qCvJqQlsX5PP2u+3A3D5/00nMTl60ebHWis5HA7Gjx/PokWL2Lhx40GVvZSWlpKXl8fNN9/Mk08+2erj2huqqjJ48OCQAZ7daqTdbjedO3emsLDQVhkpQgi6dOlCWVmZrdrqZWdn264f8dixY3nrrbdiHUYc/6OIK8RxxLEfWIZaDod91o2qqqro1KlTrMM4KNTU1KAoiu0cjvft20cgELDVRZIFKSWbNm1i0KBBtlS3I1GcX8HvL/sXnfqqFG6u4Klffsg3n67m2fvnMH/OCqO1kq5TvqeeT/61jnGn9mT48XkU5VdGEcHt6wrRghp9BnUlNd2op778V6eFa2UVJcI9uYnq2MRYKnQBquvGrYm6G1VzLERYKZYSh4wYMxSfCPHYyItbT6NmKsQyYrdwqyUlYPRHjkqDjohJSIkeScZDMZokWJOmA7WgwVvJD9tfYm/1WtKS8uiVfQyJrgwKKpexZM+r+IMRyl9Qp7HeR+Gucrr36wKKoKR+CxsqvqCibg/Ck8LYgdPopPZm+bKVXHvttdxw8zWMnNCfjKwUnC4HD715C099/hte/PYPXHjrKVFPd2v6DFsp1Pn5+RQUFDTbvj98+OGH6LrOOeec0+pjjhS6d++O0+lk9+7dsQ7lkGClTdtNtbej2pqRkYHf76exsTHWobQalrGWndLTW4PIr98jeYvj4GCfK/044jjCsKOhVk1Nje0IWkVFBVlZWbZZxbZQWFhIt27dbNl7uLi4mEAgcMgN7DsStq8v5Niz++JKcPDZv9YQ9Os89IuXUVUFTdMxzKEkBAKUF9ZHKcXrFhaGrhwUVcHhdBAMaDx7//v88MUG+h7VjczOaVRVRJjTRL5Pg0FwOML5z5F1wLoOJlGzVOIQdNksTTlKwLVMuESTPZpc5HgagiQnqtH7CVC8Rs606jd7LZsxCVO1BgxXa0A6mrx/rf2DMkzKdY1Ne/+LX2tgcNdT6NnlmNDCwJbCueRXLmVrxSKGZZ1snLeAPbvKue0cQ2Ht1CWNyvoMRneeQZfEPgihQK1gcPpg+qVOYGX1u7z//vu89957/OxnPzNiVxX6D4t2B4fWkWELKSkpjBs3jqVLl5KSktKqxcI5c+aQlZXF8ccff8B9jzSEEAwePJi1a9fSp08f23335Obmsnr1ampra0lPT491OK1GVlYWy5cvx+/343K5Yh1Oq6CqKqmpqVRXV9vGMHHs2LFIKdm8ebPtrr3iaB+MHDmSG2+8kUsvvbTd+2rb69s0jjiOIJYtW8bYsWNjHUarIaWkurqajIyMWIdyULCjK7au6xQVFdnWXXrnzp307dvXdhfULSE1R6Xv6C7MfX4detB0hxaYZLgJNFMpfmY9407tyYQZ/QFQVMGv/3oRDqfKBy9+zaevLqaiuJplCzZSu88TPl5Ek1RVVRk4rJvZT1iP2q/Z8o7WQu1wZC0uYfVXBPRQT+JoRC/9exqDuF0qTqfl+mzGaJ57qP7XMteKqDEOxWf2T468Cd1s42TG0+DbR2X9LhKdGfToPD5qUaBf7hRUxUlRzXoC+EERONxO1nwfdvbeV15HXqd+5CT1M8iwdf6AU0liRF/Dp2HhwoUs/u8aXvzTh3z3+VrKi6p48U8f8uKfPqS8qKoZGV60aBFCCO68805WrFjB2WefTadOnUhPT+e8886jtLSULl26kJmZybx58xg4cCDp6emceeaZLarGNTU1zJ8/nxkzZjQj2t988w3nnHMO/fr1IyEhgezsbMaOHcvvfve7Fl6n9kNubi6qqtrSsdnhcNC1a1fb1UEnJCSQkpJiO5U4PT2dmpqaWIfRavxkjbVkjG4/AWzcuJFbbrmFvLw8rr/++natMbf/1VAccbQDgsEga9euZeLEibEOpdVobGwkEAjYauVd13VbumJXVVUB2C49HYyL/urq6lCdrZ1RUVFBYUk+vbr1Z9CIPhx3xkhOOO/oUC/cZnljug7BIOW7qvnkH6sZc2ovHvvsBuZs+gsnnnc0AHt2lCLMhQKpSzSfH8vZOcQiVQWhKjwz906efO9WfvPI+XQxDbmiENSiFWWLNFt1uZEwFVchJUrQuDVNxW76d6NPR9Ok0XopAtK6G0GEQy2ULBdqU8WOPC0w642DuuWoBVKyry4fgKzUvqHnxorZIVxkJHZHl0FqfCWGyVZQjz5v4KJbT8HpcoTNxoQI7TJgmPFe3LujnD9d9yLvP7+AP177Ajed/AjvP7+A959fwP9d8ASLFy+OUoZXrlwJwNatWzn++ONxOp1cc8019OjRg/fff59rr72Wjz76iNNOO409e/Zw7733MmTIED799FMuv/zyZi/Xp59+it/v59xzz416/KGHHuL4449nxYoVnHjiifz617/m7LPPJhAIMHfu3GbjtCeEEPTp04edO3ceeOcOiK5du9qujREYadN2M9bKyMiguro61mEcFOLGWnFEorCwkAceeIDOnTvzwgsvcMwxxzBu3DheeOEFPB7PgQc4CMRTpuOIowVs2bIFwFYKcXV1NampqbYyW6murrZl/XBJSQk5OTm2S/MGQx3u3r27bVL/9gePx8OyZcsYPnw4vXr1YsK00QB4G/3UVNaz6pstuNwOQ+EVcOmvTyclLZEXH/wIIeDnN57GxOOG8v333wOwdlERCz5aRV21x+CqqmK5YRlEVlEjDK4kUgiuO+NvXHLziUw5fQSVe/aBlX5sKb2SUA2uAKQmw8vQMmyyZY1p3VcwdtOj6ogxSKpmjm9KzZ7GIMlJKtX1EX13TbItaEKio+ayBjTGinorKyI8j5B4vIYyluTuFD2e8QdJ7k5Uenbh8VeRndS72ULEuMkDefnPnyAU08RLl6iKYNo54zjm5KP4xZ2XAuBuzMYL6KbCXV9j1D+6ElSOPa8vQZ/O5MnhNGmLEC9fvpwlS5aQ5s5m88rdXHzeVUw7bSKff/45K1as4Msvv2TcuHF89913PPnkk5x77rksWrQIr9cbZUA4Z84ckpOTOfnkk0OPlZaWcu+993L88cfzxRdfNPvcxIIk9ezZk82bN7Nv3z7bLcp17tyZFStWUF9fT0pKSqzDaTWys7PZtm1brMM4KGRkZLBlyxbbGWu98847sQ4jjg6CnJwc7rnnHu6++24+//xznn32WT799FNuuOEG7rjjDi699FKuv/56Ro4cedhzxRXiOOJoARs2bKBv3762MtSqqamxlToMhiu2HeuH7domyufzUVhYSN++fWMdymFBSsnKlSvJy8trpnR7G/xsWLoTvzdAXXUjg8b05q3VD3LJ7adx9tVT+GDbo8zZ+ijTL5tEZmYmY0ePY8OGTaxctoaCbSVGvbBDBaEYRloh3heh2Ea8X//z9FdsXlNgtGcKRJjBWPsHDXInIapuWEBUCyYpDUU6qobXqn+OmFOEBjMQMtaKhFUnbB1v1Q9HElWrVlma8nFkmp0Zs0Wcg7rRt9mhJkSPoesIKXEqbvOwJr2CheD0C8eTlOhEKMI4P6BLj04888VvueOvF/HBF6+yfv16Tj/9dCYfNwVFsdLHjRZM7kSVM24ZTcAbZPSo0VELfhYhfuWVV9Dr3Nx08iM8fsfr3HP+s3TJyiUYDPLYY49xzDHHhNox7du3j7PPPttsWxVWGLxeL59//jmnn356FEnevHkzmqYxaNCgFheRYpHd4nQ66dmzpy1VYqfTSXZ2NqWlpQfeuQMhKyuLmpoa/H5/rENpNdLS0vD7/Xi9Lffw7ogYN24cmzZtsp3x2o9BShGT208JQghOP/10PvjgAwoKCpg1axYZGRk888wzjBkzhokTJ/LKK6/g8/kOeY44IY4jjhawdetW2xkOxeuHjwzq6upoaGigS5cusQ7loLF7926ysrJsp8g3xY4dO/D5fC0ar6z7fju1VR503XBI3rIqn2AEUVUUJap2unBbFR8/vZZxp/Rk+PHdwgNFXk9E9hWW0uCOQhg3BP2HdsfldhgLO1o0cRa6jvQFIpTh8IWekCCDZp8kVYBDQZrEVwnoCG+TOmgJOmZtsElW6xsCJCeoUftI1ZhMN0mvsNKkLWMui4G3dLLScKa2iPcBL6uECF28hiqnIxYMvnhvOUFND02nqApDj+5L975d+Pvf/85jjz3GoEGD+Pe//82Vv53BMScPIy0zmWNPGcFv/3EZM+8YjyIUjj76aLJyMkPjejwetm7dSt++fTn55JP59NXFaGbPaAkU7CmgU6dOnH/++aFjEhISGDVqFJMnT6Znz55R/drnzZtHfX19M3fpoUOHkp6ezvPPP8/ZZ5/Nm2++GSqZiCX69OlDcXGxrVyELeTk5NgubdqOdcQOhyNkrGUXjBgxgpqaGls9z3EcWXTt2pU//OEPPPXUU+Tm5iKl5IcffuDqq6+mR48ePPXUU4c0bpwQxxFHC9i8eTP9+vWLdRithh0NtexaP1xaWkp2dratsgfAeI/k5+fTp0+fWIdyWKirq2Pz5s2MHj26xdcgK7c52d+5af8GRBnZKWGjrVN6MHxy1zBZVMLEzulSQZdG3+Em7ZPuvm423Qfk0KlzSnMCKYRBlCPMs6IkXiV6X0vUFRIcQRmu/ZXR+1u1wZ4GzehFHEHaFU1G7BtWmUXUzUxfbqqA6zL6HHQdh2oqwJrX2KZpCLP+GCEiFGR3NIOWkqAvyHdz1yEcDnA6Se+SzjW/O4snnniCX/3qVwwZMoSFCxeSnZ1Ncloi9754HW+te5jfPXMFIqOBQSN7c/UtF3HMScOjntY1a9ag6zonnXQSAI0NPqzJG7RafIFGpk6d2uw9kpiYyA8//MCvfvWrKBVqzpw5uFwupk+fHrV/dnY23377LT/72c/48ssvueiii+jSpQvTp09n1apVxAopKSl07tz5oFpKdRTk5uZSWVlpK7UV4nXERwIZGRl07tyZrVu3xjqUtsWhmGIdzu0niqKiIv74xz/Su3dvzjnnHMrKyjj77LP58MMPueeeewC4/fbbue+++w567DghjiOOFrBlyxYGDRoU6zBaDa/Xi9/vt5XyZ+f6YTumS5eVlSGltF1brkhIKVm1ahW9evWKUvciMef5hc1Sg5/47Vv7HbPfUd245LaTKd/r4ZNn1plKcV4E6YXeg3MZOq43DqfSYtp0VWU9OzaXUFlhpuDq4aJcCUhFhAy1winPkTGK6L9lhArc4hMRPqahUYs21dIkIkJYDpG+pinTIZdrmqVBh/829klOMJ7rBt8+I/26STgNfkMxTXZ1MuOS4f7LugRVDcVRVVHPNZfcwu23386wYcNYuHBhs89Ta1orWenS48aNA6DngNzQ81frL4va1vS4F154gby8PLZs3MrT97zDQ794iQ/mfMAJJ5zQYtnJsGHDeOedd6iqquKLL77gnHPO4bPPPuPkk08+rBS9w0WvXr3Iz8+3XXppUlISqamplJWVxTqUg4Id+xHbzWkajPf1T44Qx3HIkFLy2WefMXPmTHr37s2sWbMIBALcc8897N69mzlz5jBjxgweeOABtm/fzqhRo3j++ecPep44IY4jjiaQUrJt2zaGDRsW61BaDctQy06q5b59+2xXP+z3+9m3b58tCfHu3bvp2bNnm7Rayt9azNv/+IJFH688ohfjO3bswO/3M2TIkBa3B/xBvv1sjXEnouXQvrIaLhr9e/54/Ut4asMpplvXFPDU795m/vvLQNMoL6gLk+LJeSAlGdmp7N5ayurF2wn6tXDLpP1BSoQWQQgVgVAVI9cZmrkvR6VYW1BkuEVSQEYfo0XX+3oagqQkORC6eYwAafFHYdUQW07T4bTvyBTwqDTqiDJoa9ZOqb0BqKzfabzeEfEGg16qGwpRhIP0xLzwc99ERbfu79j3Ax9+9SqjRo1iwYIFzUoPWttn2CLElvHhuKnh90RdoDxqWyRWrVqFx+NB0zTWb9jAwk+W8+F7n1BdU83xE09ocS4LLpeLk046ibfffptjjz2WysrKmNbC5uTkoOu67YglGCqx3dKmrTriQCBw4J07CCyF2E6LJr169QoZm8bxv40//elP9OnThxkzZvDRRx9x3HHH8eabb1JQUMADDzxAt27dovZPS0vjzDPPPKTvljghjiOOJqisrKSmpobhw4cfeOcOArulS4M9Yy4tLSUtLY3ExMRYh3JQ8Hq9lJaWtkmrpV0b93LraY/y8l8+4eFfvMzshz9ugwgPjAOlSgM4nCoZ2SnNSKfUJdWV9fwwbx0v/+VTAIp2l3PneU/y+Zs/UFxQGSKHBik20qdHHN+Nmn31xiCRKc/+QDS5tFoUWRnIgrAxlXlcKCJTYRVmKrRipURHQlEM/hzUUb26MZZuFBArVpqzSWQ9ngDJiWrUOcuIVG+BsEIDKQxibpYtRxt0SdB01EjCa/6f5O5EVkpfGv3VFFSaLVF0CUGN7SWL0GSAbunDcCiuUFxevYZ+YzPRhR4aZ/u+79i27xu65fThq6++alYu0VoyDAYhdrlcoYXLUccN5K5/XM74E4/CmW2k4o4ZM6bF4wAGDRjCzlVlTP75QEoadgCCXlnRCy2rVq1ix44dzcbYunUrmzZtokePHjHtRa4oCj179iQ/Pz9mMRwqcnNzKS0tRdf1A+/cQZCQkEBCQoKtFNf09HR8Pp+tjLX69+//kyLEcVOtQ8e9995LdXU1N910Exs2bGDBggVccMEFPyr+HH300S221TsQ7CMnxRHHEcLWrVvJzs62VTuL6upq25k8VVdX06NHj1iHcVCoqKiw3fMMUFBQQOfOnUlKSjrssRZ9sgpN00OOwZ+//h1X333WYY/7Y7BSpXv37r3fVGkwnCj/8Py1PPrLV6muqGPEhAFUV9azdY1RZ6nrksIdhpq27ocdBPxB88DQACAl1SUNLHxjOyddPhiJZN03xZGTIKRE+gNGayanCqG+RTLUVkgIgdQ0w6na4nVB3WjN1FRB1QnvY0HFUIORRl/lSM6sSIQuQJFGynSS+VPeVATSpbnqbZBcYSnGItyQKZShITGctS2JOBiVd82QbqexdMcrbC6ay766XSS7s6hp2Mu+hgKSnJ0Y0HmKsa9msO21++aw8O1yju99A0mONPbWrmf7vsUIFM77+QyefPLJqFA1TSMYDHLWWWcdkAz7fD42btzIiBEjopyfp5w1hilnjeHpzvfQq1evFv0JVq5cSXJyMiNHD+fZ//uUKVcM4KiJ3an7upxxx42I2vfJJ5/klVdeYfz48QwdOpQuXbqwa9cuPvroIwBmz57dJhkXh4NevXrx1VdfNWsh1dGRkZGBEIKamhoyMzMPfEAHgaW42sX7ItJYyy4LuYMHD+bjj4/MQmscHRv/+te/uPTSS0lOTm71MWeeeSZnnnnmQc8VJ8RxxNEEW7dubRMl7UiipqaGgQMHxjqMViMQCODxeGynEFdUVLRJv7sjCctMqyVH5kNBdteMUJ9YRRFk52W0ybg/hvz8/B9NlY7EUeP6MHvxvaH7c9/6ga1rClAUga5LJp1hkJ6eA820dymxGHGPATnMvPp4zrh4It5GPzec9iem3zgCEKz7tjhqHgEQ1JBOtbkirVh1wCADmkGCrV7E4ekiDiCaJAPoJkf2aehJ0T2Q0a2aZIX6+iBJCSpCl0irp7Bi0F3VrxntoMBMkTZJrq6bLaAixoTwdiuWiNZRye5OHNvvaraXfk1F/Q7K67bjdqTQM3Ms/bMn4VLNi21dA02noT6itlYIGoI15qnqzciwhQH9BnP5Bdeja5KFHyyj0eNj8pmjSO9k9KvdV1ZL0e4KqhuLCQQCLaZE5+fnU1FRwfHHH99sW0NDA1u3bg21YZr10vX869GXufSKixnYdygDR/aM2v/ss88mGAyydOlS3nnnHbxeL3l5eVx88cX89re/ZcCAAS2ex5FEcnIy2dnZFBQU2Oo3QAhBVlYWFRUVtiTEdoJVR9y1a9dYh9IqDB8+nB07dqDreswXnNoEsTC6sk+G/I9iyJAhVFZW/igh3rNnD7t27WrxO/9gECfEccTRBFu2bLFVy6VAIIDP5yM1NTXWobQa1mq12+2OdSitRkNDA42NjbbKHACoqqoiEAi0Wd3zqRdOYPPK3Xz94UpyunfiN08cfGrSwSAYDLJ582ZGjBjxo6rh/nD8maN59a+fUVlSA1Ky7oftTL9sEkPG9CYjK4XqijpDPVUEQ8f25oyLJ4aOrdhTzydPr+XMmwwSve7bYvodlceEE47itae+MNRfTTf6FkeaVJmQukWKdXCpxjWKLqP6EYNRu6Rr0mDAFvFVBXpARw1C0KuD21SiJSQnKORmJZHVyU1KitHu6eIZPXG7VZyqIDXFCcAll/fH59Px1AdoqA3QUB+grtZPRUkj5ZU+gppuKNrCVLUDZh61RdAhnCouJYnOVIZ3P9Mk5UST5lCNogCHg6l9bow6xwFZkzjntMt49D/Rj3/13hK2F2zG3xBk3gvr+PMvXqbnoDyWzd8IwNtPf8m/5v2WrWsKmHXV8wT8QdI6JVO4s4xufTo3e7179eq133rJpKQkgsFg6H5e785o6VXs2NHIzy+f2Wz/mTNnMnNm88c7Gnr06MH27dttRYjBMKkqKyvrEAsLrUVGRgZ79uyJdRgHhdTUVOrq6mIdRqsxdOhQAoEAhYWF9OzZ88AHxPGTxbRp05g1axb33nvvfvf597//zb333oumafvdpzWIE+I44miCLVu22OrCwuPx4HQ6o1IHOzpqampadHPtyKioqCAjI8NWxmVguGLn5OS02Uq7w6lyx+OXcsfjl7bJeAfCzp07SUxMPGR1Y+WizVQWV4fuf/3hSm6471wyO6cxaFRPli3YZCjeUpLXO0ywEhJdXHbH6bzy6Gd88vRazrp1FOddO4WjJ4xi9ffbw8TVrO9NTHbRfWBXtm0sikiHNtRVoetIXQm3cYpUiU0irWgS3douzH+cCsKvk5XkoPegNHp0SyYn201ykoOqaj8VFT7qPUECAY0du+soLvcRDOh0znRx0pSufDV3L6oCyUkOUlKcJKU46ZyXxDFTuuJOUNlX4aW0uJH8nbXs2VFHEEL1xZF1xKFaYyuLuinftM5Xl8YiQUvbkAweFX1xGwgEqNVK8TcGmfvcWrSgTmVpDaV7w69X+d4qVn27hXefmR/qJ11f08icFxZyy4Pnc7iYM2cOffr0YcyYMTQ2NtomrTQSOTk5rFq1ioaGhjYpizhSyM7OZtOmTbZSAtPT0/F4PAQCAZxOZ6zDaRVSUlIoLi4+8I4dBAkJCeTl5bF169afCCGOyMY5onPaH60xg5NWOdBhwl5XdnHEcQSwZcsWzjqrfWsi2xL19fWkpKTEOoyDgh0NtezYMxkMQmynFmKR8Pv9bNu2jfHjxx/yD15qejRBUFUFd6KxeHTbIz/n0dtfY/fmIo45eRgzr5kSte+FN5/M5DNGUV/bSHa3ZJYsXcKuXbtorPeFiJ5FFi/5xYls3VpiEGILQoRrhoNBcLui0qLDnNh0pRYKFlvukpPAgIFp9OmTSnqGi4K9DeTvbWD56koqihsJBPSQetuzRxLllX72FHoAQWW5l5OmdKVkbwNBnxbuLRyRdp2a5qRz1yRy85I4dnIup87oSWF+Pbu31bJ9/T58HnO13eppLDCkbK3JBYqlEusRztrQjBiPnzKYy355Sui+ZaCVkZXOS79biCYFqCo9BnRlz45Sgv7wan9m5zSEEv36t5U7/aZNmwBYtmwZW7ZsYdSoUW0y7pGEy+UiKyuLkpIS+vbtG+twWo20tDQURaG6uto2mTeRxlp2+T1ITk6mvr6+zYjDkYDVesnqMx5HHPtDQUFBm2RIxglxHHFEQNd1du7caSuHabsSYjsaatmtftjj8VBfX29LIzCAbdu2kZmZSefOzVNjW4vhE/pz5pWT+eTlb3A4VW7784UkpRjmQ51y0nn4jZt/9HgrLfe7L9azel4pjQ0+1n5tqi2muquqCi63k62rC8IHNuktLHQdqZmmWoTNrcDsOYzAocDgYZ0YPiKT9AwXO7bV8sM3JRTurKPBoYaUY2GqttKsFfZ4gqQkqIaCq0gjhRvQE1TwadH1ySZhrasJUFdTw87NNXw3v5j0DBe9B6Qx4KgMjjspj12bq1m3tIzS3fXRbaEUwkqxiYdeuIp9JTUs+Wo93y/cgmaRZlMJz+iUzGW/PJmyPfvo1rczwWAw5Cad5swiGAgPuGtzMbf9+QKef+AD/N4AF9x8MkOP7stVvz2Te694Dp83QHqnZM69buqPvm4HiyFDhrBgwQL69etnq/ITC1YbIzsRYquOuLKy0jaEGOxnrJWcnEwwGMTn89nGeK1Pnz4/KafpOFqPBx54IOr+woULW9xP0zT27NnDm2++yXHHHXfY88YJcRxxRGDv3r34/f42MyA6EvB4PLYixJahlp1Spu1aP1xSUkJ2drZtUvsi0djYyK5du5g0adJhjSOE4OY/nc9Vd83A4VBxJbT8XEgpeeUvn/L5mz/QOS+T3/z9EnoOMOqut6zdwx9/8QoAm1cnc+YNw2n0+Az3aSk59qSj+NcfPzTMtNxNxo9wdhaajnSGVWCLaLpcCqOO6cLwsVnU1QVYu3ofW7fUhlRSxasjUtToVGtABA3nLk9DkOQkBwLDb0ua4qzmUiBoulRHQrdaRVktnKCmys+apRWsWVpBRoaDoWOymX5Rf2r2+Vi+YC/5W6xWMwKBNLKmzfjf+OdXrF+2y1SRlfA5IxkyoidDRnbn1umPATB5xkgmnd831Fpp/ZKdzV6L8dOGctqFE9B1iaoaJzNiwgD+veQ+Sgoq6Tkgh4SktvUfSElJoWfPnmzevJmjjz66Tcc+EsjNzWXDhg22SuUF+9YR26n1ksPhIDExEY/HYxtCPGDAABYvXhzrMNoGcVOtg8J9990X+lsIwcKFC/dLigG6devGI488ctjzxglxHHFEYOvWrXTr1s02PxpgKMRtZZh0JFBTUxNKO7ML7Fw/bBdn0abYvHkzubm5bZZan5SSgJSSlYs2U1/TyNipQ0hODb8HF328irf++SUAddUeHrxxNs9+9TsAVi3eGtqvvNDDJ8+u58wbhoGEdd8UsWnZToQijFZUAc1oxdREkQ25TFsmXICqCoaNyWLsxBwqy738973dFJZ4w2TVhBSg+DR0d4SpmB6u7W2oD5KcqKILCWrE3JZ5l262gzJJalR5WbjENxRrdYWP7+btZekXezhqbGemzexDdaWXH+buoWRXXdRhmdkpJhk2DcVC5mLGHiW7y9i0dDsArgSVrH4KjZ4Ax51yHKqqMmx8X8ZOGcyKrzcDcNaVk8nKTQ89P5FIy0wmLbP17TcOFgMHDuSrr76iqqrKVs7HYKiAKSkplJWV0a1bt1iH02rYtY64sLAw1mEcFKy06R9rW9eRMGTIEGbPnh3rMOKIARYsWAAYi9QnnHACV155JVdccUWz/VRVJSsri0GDBrXJd4e9ru7iiKOdsXXrVlul8kopbZcybcf64aqqKtupw4FAgMrKSkaPHh3rUA4adXV1FBYWMm3atFbtv37JDnZvKWLkxIH06J+z3/3+cfc7fPaaoTrk9c7myU/vJDnNMFEqyq8ItWbSNUlJQWXoOE9NQxSxLS+sN0nxUNB11i0sBJfT4ICajnQ5otKMZaRCG5SgSPoOyWDSiXl4vRpfflxAwU7TBVZVmrlQSwGKpqN7pZGybJJryyHaUx+gW/fkZu2fEMKs+8VUhU1zFxGZQt3kSdIkwiTHQU1n3felbF5exsjjujL9ikHs3VHL4o92U1/jB6CqvK65Z4xFioMaVWW1gEGGz7hxBP7GIFlJXUOO4apD5f6Xr2fb2gJcbid9huTt9/VrbyQmJtK3b182btzYJil4RxpW2rSdCHFaWhpCCGpra23zu5CRkUF9fb2t1PiUlBTq6+tjHUarMWLECAoKCvD7/bYyDG0RcYX4oDBlStjL44orrmDmzJlRj7UX7LEcF0ccRwgFBQW2upjw+XwEg8GDaloea9TV1ZGWlhbrMA4KdiTxZWVlpKamHhHX2WBAa5UbZGuxY8cOunfv3qqFnv/+5zt+c94T/PPud7jp5EfYtGJXi/s1enwhMgxQtLuCJV9tCN0/9qRhKKqCYpo39R/WHc3st9zvqG5m319CRLc8v4ZP/rGGcaf1YviUbkw6dRiqy2EQWn8wtJ+EKKKamOLklJm9mHpad35YVMLbs7dRsCviQjXSfdqCufqt6hJVB8Vs54RmmFk11AdITnKgBqJjRMroH3mrPZIe0SbJarPUdB9NM2ubIRCQLJ+/l9cfXY3XE+D824czeFx2cwMtSxnWJfgDYLbBcCU6QmS4aH0joyZGm7ypqsLg0b3pe1S3mJv+9O/fn6qqKtv1mgWDEJeWlqLr+oF37iAQQoT65NoFCQkJuN1uWxFMuxHifv36AVBUVHSAPeP4KWP27NlHzOQ2TojjiCMChYWFtko/tmqC7JTKazdFW9d1W6kX29fv4XcX/oNP31qA1ti+X/FaUOPPt7zCjL6/4qKR97B+yY7DHtPn87Fnz55WmwN9+NLC0N+6Lpn31pIW91MdKg5XdB9jy1wLoM+QPO566jKTj0o2LtvJ0/e8jabpjJ40kGlnjzYInq4b/0tJeamXT57byLjT+1DjqUQLGkREWK7RllIqjZTlvkMzufCmIaiq4I3nt7B1Q3U4mFDrIt2MwFCWpQCpCtD0UIq0kBKhSxQJQjdSppOSHCg+HeENhgiuo9pvDi5DIq6QMqxY6DKilZIMxy6l8X8kOVUEjY0aC9/fxZevb2fcSd2ZfvVgktNc0fGD0YDZPI9IMrz04z1UVzawZU2E+VgHg8vlokePHuzYcfjv5SONzMxMhBDs27cv1qEcFCyTKjvBSkG2C5KTk/F4PLEOo9VwOBx06tQpTojjOGKIE+I44ohAUVGRrRRiu5FLsJ8JWG1tLYqi2EKF9zX6ufvCf7Luh+1kdE3gP498RdGu8nabb/77y1n4wQqQUFvl4S+3vnLYY+bn59OpU6dWm66lZ6WGVF2kJD2r5feWy+3gV3+9GIfTIMUnnDuO8SceFbXP3p3lhrqmG+Rw7ltLuGTsH7hw1O8p27OP866fFlZQTVXUSp8ed0pPhk8yF9OEQGhmPbGUCEUw4eRuTJ3Rk8Xz9vL5O7torPVHqcihrDrdUpUxUqIVI4Va0yMJK6HzFVLSWB8kOcVI03b4dJz1AWNfU+EOKcIW2RXCTIsmSokWAUMVtkhxFKwaYQEFm6t4+/G1NNQF+Nltw8ntlRLaRVFFSFkOpUk3BJj70gYqimvI31bC3Zc9w4M3zubfj32Gz+uno6Fv374UFRXh9XpjHcpBQQgRUontBDsSYrsprikpKXg8njbN5GlvdO7c2Vb9k/cLKWJzsyEURcHhcLB169bQfVVVD3hrC1HIPrJSHHEcARQXF8cJcTsiEAjg8/lsQS4t1NTUkJ6eHvNUztagsrSGuuoG8gZkoAV1SnZVU7CthLw+h9626MdQXVEXMpOSUlKz7/AUCF3X2bVrFyNGjGj1MTc/eD73XvYMpYX7GDKuD+f/4sT97nvCOeM47rQR+L0BUk1zpsrSGuprGgFY8OEKwxgLUBSBUBRqqxsA2LhiN2OnDMHpVAhE9MgFkxQ/s44zbxwOQmHd4hLA4I9Op8LJP+9HWic37724hZoqf4TBlkSqhNVV63Fdmu2ZCLVaItmFbAwiVBFSii067akP4HAouBNVfH4ZncLcNHs25AAd7uUrfX6EHtGjVDdZua4bJl1Nj1cEfq/Ggnd2cNQxXZh+zRAqd2vMe3M9qoA6jxd3koPTrx8eIsNa0IxWl/i9Ab79fC3icygvrOKOxy/Z72sWC6SmppKdnc3u3bsZPHhwrMM5KFhu03bqlJCenk5tba2tjLVSUlJsleadlJSElJKGhgbb/P7+ZAhxHK3G8ccfjxAiVOpl3T8SiBPiOOKIQHFxsa1MtTwej21cI8Eg8C6Xy1YmGXaqH+7SrRM5PbLoPTKLgg2VJCS6GDCiZ7vNN/nM0bz11Dw8dYaSNuOKyYc1XmlpaUjlai16Dshl9vez8HsDuBMP/L5yJ7pC+336n+/45x/eQ0qJqgoj5VlVQdfJzElHSthnmkIJIaivaeDkn43ns/98Z6RNR1y8lxfU8umz65h+o9HDfN3iElIz3Zxx5SBqq32898Im/P5wGrKE6BytSFdqHaMrU2gbhtGWwHSMJmQWLRVBICAJ+HWSUpx4q/1oLnMOVQEZbG621SQdWqgKaMHwNggZdkXBqg9WFKRupHBvXFJGdbmXky8ZwOipuSz+eCeuFDczbhyG1xNNhiMGAiGQusZy0126o6Fv376sXr2agQMH2oakgUEiGhsbqaurs00/5ZSUFBRFoa6uzjbt+JKTk9m7d2+sw2g1FEUhKSkJj8cTJ8RHGC0l3ByJOe2Ipu2VfqzdUlvDPt/yccTRzvD5fFRXV9OzZ/sRiLaGx+M5IqZJbQW7KdpgL0LscKo8+t5tDDm2G+mpmTz6/i9DLWzaA7k9s/jXV7/j5gfPZ9bs67jm92cf1nj5+fn06tXroFeEhRCtIsOR0IIaz9w/J5RCqGkRRFBVGDN1CBfddkpof5fbwSkXHMO5108L198GAhAMkt0lhWfm/R+qksAnz25g3IndGH9yN86+4SgKt9fw39mb8deGU4NDZNgyoWrSokmR0vjTehoEBgl1KAhdGmZaEanTEvB4AiSmOPFlOAmkGGvd/hQVgppxTGjysFt2CKpqnLcesS0ypshb+EkPEfainbW8/+QaegzJ5MSLBnLGtUfRUOfnv8+va0KGBQglPLai4vMHQuZlHQldunRBCEFZWVmsQzkoOByOUG9fu8Ay1rJT2rSVMm2nFGS71T3n5OTYatEhDnsjrhDHEYeJkpISFEWxlULs9Xpt1c/XbvXDlqGWXVQLgIzOKTgTFa668xzcbne7z9c5L5MzD1MZBmhsbKSsrIyRI0e2QVQ/Dm+Dj3efmU8wGJ36HE5dVvj6k9X86i8X0m9oNwp3lnPU0X1wuZ2UFu4z04bN9WRNp9+QbvzitEeRwnhs4dvbOOXywezdXsPij/NBGiRXD2rgdGDIu0pYAY5whbbIqAjoyARHVEsj3aWi+rWIlGmJ1AEnNHiCJGa6oCEQOh2Z5AjFiC7CfYLVFtbChdmOqaXnw4qtmdAbTr+uq/Tx3xc3cv6vR+FrDPLGs+tN0dki1nqUom6N3ejxs3LhJvL6duard5fxwYtfk5aZzJ1PXMqw8f2ax3mEIISgZ8+e5Ofn28poEaBTp05UVVXFOoyDglVH3KtXr1iH0iokJyejaRper5fExMRYh9MqJCYm4vP5Yh1Gq9GtW7dQT1pbI952yRaIE+I44jBRXFxMVlaWbRybdV3H7/fbihDX19fbquVSfX09QghbkfiamppQWxA7oaCggC5durT7xeWqb7cy68rnCPiDIeUVICTJKgpIid+n8eHL3zLzqsmkZiZz18//SUVxNZ1y08ER0WfY4TDaNwkBKqRmujnurL5sXVFO76GdGH5cLuu+LTbMrII6Umhmr2Giaoej/pcSBYEmZbiGGMBh9ElWhJG2LMAgu8KBpyFIcrIjbH5lHiYVgTAdqqNU58i0aWmqzvtLrQ6pYOYATZRidB1XooNpFw6gZHctKRlujju7L1+/tS1inJYS0oy65XuveDbq/BsbfNz1838w85opXH7ndFwJsen12rNnT7788ksaGxttQ3rAIJd79uyJdRgHhfT0dHbt2hXrMFoNVVVJTEzE4/HY5r3hdrttZRSXl5f3k0iZjqP1eOCBBw7pOCEEf/jDHw5rbntc+ccRxxFAUVGRrepxrZVeOxGf+vp68vLyYh1Gq1FfX09qaqotDLUs2CnFOxJ79+5l0KBBB97xMOD3Bbn/mucNMgwGv4tM11WVKKK4eO46Zl41mVce/ZR9pYaBzr6yWlDUZi2J0CVOp+C0a44if2Ml37y7nc7dUzjzFyNA6qz7tsRISQ7qCFUx3KzVyHEi2Kr5mAhq6G5HBMEV4FKRQT2s9ppO0Q31QVJcqvmYeUAwog+xpQyrkQsAJsx64BYJcTO3aat4WYRbK7lVzrhmCP7GIF/8ewsut8LM20Yw6sTurF6w1zgvXZKUkkBDvXFBrqqCtMxkqoqrm79QErSgznvPLcDvC3LTH3/WfJ8jgKSkJLKysiguLm51G7COgPT0dDweD4FAAKczNosJB4vU1FRbpfNCOG06Ozs71qG0CgkJCbZKS+/RowclJSWxDuN/CoWFhdx77718/vnnVFZW0rVrV2bOnMmsWbPIzMw8pDFfffVVLr/8cgCef/55rr322v3ue9999x3SHHFCHEccbYji4mI6d24fN972gNfrxe1228bwRUppuxpiu8UL9iTEHo+H+vp6unTp0uZjSyl55a+f8dnr3+F0OfA1BlrcLzktkSFH92XFoi0mB5TUV3t4+dHPWLdsN7qiYPREiiaJqkPF4VDweQOccMkgGmt9fPveNpAi1JLpzBuGAYJ1i0sQmo7uC6K4HeiKDCu6IoKoWqW8QQkOHem0nJ4lgVQnrrpASLlVhET3aXg8ATrlJOJo0BDJBrF11gVMIiyMkJUWFnak2R6qNWs+IUUZkxgLXC7BGVcbZHjuv7fQq38OZYX7+O6DAqZd1I99pY0UbNxnmnRJ/vberSiKYOCIHqxYuIk/XPZMdCxRadq0SW/rw0Fubi4lJSW2IsQJCQkkJCRQU1NjG7KWnJxMIBDA7/fbxnTRbq2XEhISbJUy3bNnTyorK221sNMiYtEG6RDm27FjBxMnTqSsrIyzzz6bwYMHs3TpUp544gk+//xzFi9efNCi0Z49e7j11ltb/VmJZYp8nBDHEYeJ4uLidrkgby/YrX7Y5/OhaZptHC7BIMR2ihcMQmynOngw6vezs7Pb5aJnwYcreeufX4YfsMyjIq4XRk7oz6kXTeBf981B6qbFM5Ldm4vYvc3s6SqEkSqt66YyagyQ4Fb502s38sZLn9CpazLvP7EWKY3jQTFI8QsbOfM6o+fxusUlCF0iNR0hBFKVZl0x4Xki2iIJ3agVNh4XoEAwQUX16aHzEZrEUx+kRx8HigbORt08PqL9UtNUaTPVGV22rA5HPtasxhmQFhkebJDh17aiBXR2bjBMcOprGhFv65x48UA++Mdaqkobaajz0WdwVxJMA7RRkwYxatJAVn+7FYRg8JjepKQlsnzhptD5j5jQvzUvc7vBamNkt4tyqybXLoTY6XTidrupr6+nU6dOsQ6nVUhOTqaioiLWYbQaCQkJtkqZ7tmzJ0IISkpKbPebZkfcdNNNlJWV8eSTT3LrrbeGHv/1r3/N448/zj333MMzzzzzIyNEQ0rJVVddRVZWFueeey5//etfD3jMlClTDin2toA9pKU44jgC2Lt3Lzk5ObEOo9WwFGK7oLGxEZfLhdq0r2kHht0U4kAggMfjsZUJGBiEuL2Mi/bubMFtN7JmVwjW/LCDR29/jboqj6nQ6tFqZcgNGiPN2eEwNuk6E04dxoL/LmXYcbl8PnszvsZgdO9eKSnPr+WT5zcw7qTuDD8u11RldYSuN+8TTMTivgQlMqVbGLHoTiVs7GXe9/g0kpIcSCnDfiqa1tzJOiKuyDGj9okYu3lwhkLucilMv8Ykw69uQQuYadwO1SD4qsLONRWs/7aIUy4fjOoQ9OyfQ/neKtYv3YHfF8ThVLntLxfhTnKjqApbVueDgCt+M51Rxw3ggptO5Oq7D8+5/HCRnJxMSkqKrVybwSDEduqTC/ZTXBMTE2lsbIx1GK2GpRDresdzdW8JbrebzMxM29cRCxmb28Fgx44dzJs3jz59+nDzzTdHbbv//vtJTk7m3//+90F9Pp988knmz5/P7NmzbSEsxAlxHHGY2Lt3L127do11GK2G3RRiu8UL9nPFtgy17PQ8BwIBKisr240Qjz/hqObpwBYJjMB+u6dEpkhb+wiBI8nNpDNGsejjlaR1lXz/ST5VZU0vjsM1vuX5dQYpPrE7I47LQZipyoqUoXZHEpAKRoqzKszM5BZIqaqESbMQ4FDweIIkJznQnQJ/qvHTLusDzU9MEt1eqamZVtO/LXKsKCG3VJdLZfpVg/A3asz9zzajtZLeZByTUK//tgSk4NxfjGPSacO4/qRH+M0F/+C2sx6jod7LmsVb8XkD6LrRamr5ws288tfPWL14G4GAhssd+0Q2K23aTrBbGyOwHyG2m+JqLaDbKW06Ozvb9oTYDrBSlU855ZRmZXipqakcd9xxNDY2smTJklaNt2nTJu666y5++ctfcvzxx7d5vO2BOCGOIw4TxcXFdOvWLdZhtBo+n89WxMdu8fr9fvx+vy1WNi3YsX64rKyM1NTUduunPWhUL/748vXk9OiEw7Wf7ATF7I+rqKFa3mlnjyE1IymsFjdxZQ74gnw7bz0TzulPVYmHTd9HXLRpZjunSC6qS8p31fLJCxsYd2IPRkzsgtCBQBD8QWN86xfZUqMVI31aeIMgBDLipqsR5DOo0dCgkZCgIjMdSIexzdcruUlNbkT/D4sYR6hFEsJztPQ8qQquRAfTrxqEr1ELK8PmtuZKtKSx1seYsaPp0jeRhZ8tC23J31LC1x+vIrdnuCZNmOdrkfj3n1vA9nWxd0vOzc2ltLTUNsoaGApxfX09gUDLNfMdEcnJyXg8nliH0WpYiqtdehErioLL5bIViY8T4sNDbW1t1G1/iyFbtmwBYMCAAS1utx7funXrAecMBoNcdtll9OzZk4ceeuig4lUUBYfDEZpHURRUVT3grS26w8R+6TWOODoI7Fan4vV6bZUaazeFuL6+Hrfbbau6wZqaGtsR4vZMl7YwbsoQXv7mD9RWefj56N832+5wOggGwmRHKIILbz2FydNH8eBNL6MFdTK7pJGYlkRRfqWxky7pPiiDvqO78M7DSyEQIC07jdp9EQpXBKm1VOrygno+eX4DZ143FFBY+30pCkF0ISDBAYpJRgVGa6YgqEEIWGOYhFNPUFHqgwhdInxBGmt86LokOUGl0W+RVIFOxMp3JFnVDOIpzJplGdlb2bzAl1IaSra5j8utMv3ygfgag8z9z1ZDGW5CgkVkvbEERRH89vxnOWZ6X47/+QDe+fNytKARn6oqjDpuIFf+33TmvLCQxJQESvKjazIb6mOvZmVmZqIoCvv27bNNTa7Ves1OxlopKSkUFhbGOoxWI1Jxtctvm91U7S5dulBUVBTrMA4PEeuQR3ROaHZNO2vWrBadnK3yiv1dU1qPtybr5IEHHmDVqlV8++23B92S7Pjjj0cIEVogt+4fCcQJcRxxYFz4VVdXt/uFeVvCbjXEdovXbvXDYPxY2SnLQdd1SktLOfbYY0OP7dy4l0WfrCa7azqnXTgBh7Ptas7TMpP5+U0n8dbThslWtz7Z3POvq7j/utmU7q0ydhKCoUf3pUe/LqxavI1hEwaSnZvG9Xefxb7yWm6e/ji6LhECJs7sy7JPd1Ff7aN73xwuvPUkHrvzTeNapKVaeZNYlu+JJMWSNd+Vojh09KCO7lKJvHqSDgEBierV0JIcEY8raE6BQxOgutATHHgagyQnOmn0R5DIZr2EabbNiDfSeEuEUr2lEAgIk2FvkLmvb0Xz69E1x+Z4/Y7KIyHBSU1ZLV6Pj8qSagCWzd1Fz6MyGXpcV9Z+vZfM7FSOnzEagJ/fcjI/v+VkpJTcf80LLPliPQCDx/TmqHF9WvfitiOEEOTk5ITM3+wCq47YLjGnpKTg8XiMhRgbtLpTVRWn02mrxV67OU1nZmayb9++WIdhW+zZs4e0tLTQ/UO9BrOyIA70uVy6dCkPPfQQd9xxBxMmTDjoeRYuXPij99sTcUIcRxwYK7zBYDCuuLYjvF5v1BdzR0djY2O7pfG2BwKBAPX19bZSiK3VZqu/Yf6WYm4/63E0TUfXdDat2M1v/n5pm8555f9Np3h3OYs+WsHebSX837l/56zrTuT1p74wdpCS9d9v4x9/eI/P3jTqpYQQOBwOFn+2Cl3TQMLAo3NQHQobl5SCw0FJcTWrf9hB555ZlO2tjp5URKQCmxcUUaRYCNYsLkYJakicSHeTrAQHCK15uq6e4ABPEKkaKq2nUSMlQaXC8lKKNtMO82wZoeQ2JbWhfc1YdYnLrYTJ8BvbzZph3XDdbnJMSrKbrt0zOe1n49i6Op9P//M9UpPoQckPH+/khEsHs+m7IqpKa5B6NEkXQvCH569hxdeb0IM6Y6YMadMFkcNBly5d2LZtW6zDOChYTtN2QVJSEpqmxRXXdoTb7bZVvCkpKbZ6D7eIGLZdSktLa9V1l3Xtuz8jvtra2qj9WoKVKj1w4ED++Mc/HmzEMUe8hjiOOCBk5HGojcePNHRdt9VFA9iTwNspXjsaalkp3taq85IvNxAMaugm+Vv08apmx6z5bhvPPTCHz15bjNYCSTwQdF3n209WhdLY6msbSU11061XJ6P2V9MQimD515tRzL69Ukq+mrOc+ppGkBLVqTDu9F4s+zwf3TSlCgZ1vvpgZZgMRzo374d0WqR43AndGDkxF6FJlEDzXsdG2jVR9b7G42ZLYB3QJZ6GIMkJEQRSYLhYaxKCupFebZHhKBftiDGl+Y8ZtysxIk369W2mm7QwnKSFWfesmMdoOmu+28bn7yzjsd+8RWJKIu4Ek9wrCnu21VJV2sjIk3rhcKqojuZkV1UVxp8wlGNPGd4hDLUsZGZmUltbi2bVh9sAdiPEluJqJwXTboqr3Qh8amqqrYzW7IpBgwYB+68RthYDBw4cuN8x6uvr2bp1K5s2bSIhIcFoG2je7r//fgCuu+46hBDcfvvtBx1jIBBg7dq1fPPNN6xdu7bN/RE6zq9NHHHEEHV1dSiKYhtF0PoisFMKst0IptfrtVXKdH19va0UeGhuAta1V3ZINVQUQU736H6kqxdv5XcXP42qKGiazt5d5Vz3h5kHNacQgrTMZGoq6400MAmZnVPpNySP4t0VBsEFuvXOpqzYXC2XkqA/GPr7qIld8XmCbF9VHkVyW/TWiXzQ/FsXAtxOUBRKi71Gn+JrjzKU4mUVCF8QmRCtEgtdR/Hp6InR69i6ACWgodQFaagLkBJBiB3V/uj64f2lTWP2JFYUQs7YgMslOPOyAfgazJphPWIsq9VyZIxSRtUhf/fFBh577zZefOQTVnxjXGj98MkuZtw4nMnTxncownsgJCYm4nA4qK2ttc3CaVpaGvX19ei63sw5tqPCImx2ydayG8G0ej3bBWlpaSF10raIYQ1xazFt2jQA5s2b1+z7oq6ujsWLF5OYmBhV3tQUbreba665psVtK1euZNWqVUyaNIlBgwYdVDp1ZWUld911F6+//nrUZy0hIYGLL76Yhx9+uE3KQuzzaxRHHO2I+vp6kpKSbHPREAwGEULYJl4pZVzRbmfYLV4wCLG1Mg0wafpILrjpRD5/4weyctP5zRPR6dLfz12HYpJhMBTkQyHE595wIq8+9hkBf4BTLzyWyTNGM3zCAKor69m+rpBRkwZyx98u4pPXvufLOcvZs600pKgKBUZM6cZ3H+405dmIwS3CGfm5tIioooS3J7oNV2Ypwe2gtNTLx89vYMb1QwFYs7ScoEMFR6TJlUDx6+hO3XjcHEtLdiAaQHepNDRopCU7cNQbKmZCWSNaZFwy9E9UfAJAB2mpn4qCy22S4UaNuW9uN4yzlQilu1ltcpNxFQW/P8jdlz5LdWV9yBCsrKCekt211LqCrPq2E6OOG2iLelEhREhxtQshtr4PfD7fQZvbxAp2S+m1W7wOh4NgMBjrMFqNlJQU6urqYh3GTx79+vXjlFNOYd68efzzn//k1ltvDW2bNWsWHo+HG264IdR1IxAIsGPHDpxOJ/369QOMRcMXXnihxfHvu+8+Vq1axRVXXMG1117b6rhKS0s57rjj2LlzJ+np6YwfPz7UBm/16tW8+OKLLFiwgMWLF5OTk3MYz0CcEMcRB2CsgNmpvU4wGMThcNjiQhLCfQ/jinb7wW7xappGXV1dlEIshOCqu2Zw1V0zWjymW98uoXRqRVXo3j/8A7hx+U5ee+y/CCG47M4zGDymd4tjzHt7CS898rE5oYKmSRRFoVOXNP781i1R+15w4wlMPmMk10x9yFCThaD3MGMleve6cn5x/7n8674PoydoaWU+kkBCNLEUgEulrMLHR89t4KzrhyKBNSsrkU4FXVXAoSCdRlsjNaCjOZSodGcpjP89DUE6d07A4bUMUBTAJLkBzWjx5HJARKpyyNHarBcWElxOwfQIMhwMhFOoQ984EUZaSAmWS7cSThEvK6tF+JtffK/7upApPx/I7y/5FyddcAy/evSiFp60jgfLpMouiGyzYxdCbDfFNSEhgYqKigPv2EFgN0Kcnp5uK0Xbznj66aeZOHEit912G1999RVDhgxhyZIlLFiwgIEDB/Lggw+G9t27dy9DhgyhV69e7N69u91iuvvuu9m5cye333479913X1QWXG1tLbNmzeKJJ57gnnvu2S8Zby3sIS/FEUc7w1KI7YJgMIjakottB4XP58PhcNgm5rii3f6ora3F4XAc1IX69EsnctaVk+nUJY3hx/Tj149dDEB1ZR13X/Q0qxdvZdW3W/jdRf+krqrlfqbv/OurqPtff9S8TjkSXXtmkZmVFHJdPmpCVzZ+V4Q7wcWAYS20aZOm4VSzOuAWfm4tdikEOFTKq4N8NHsLR5/YjZFjslACenPzK2tcM90bKdESHIigjscTJDnZQTDR+JxJYcZiKb8up6FMR0IRZg9hwKHiTLBqhjXmvrWDYNBUtx1qqBdylEmYLsEXNE6l6di62c4JwjXQgSAF6yvQgjq9hmcz780fqN3Pa9XRYLeaXIjXuLY37Pb82o0Qp6am2l8hljG6HST69evH8uXLufLKK1myZAmPPfYYO3bs4LbbbuP7778nKyvrwIO0MT755BMmT57M3/72t2YlYWlpaTz++OMcd9xxfPzxx4c9V1whjiMODIXYboS4LRqRHykEg0Fb9fP1+/1IKW1FMO3W1sqqHz6YLAfVofKLB87jFw+cF/X43p3l+Br9oftej48Hb5xNeVEVx54ynKt/NyNk4JSSFk3AXQk//r789tM17Cs1LshSMtzkDcjg23e3c/S0Idz1839E1N4SQYIjCKO1CBSpEPsDBjmN6CscaslU7uWjlzYz4+rBIGD1miqkFaKUBvHUpNEmyTgQISRokvoGgxDrLmObNycJ585aIwYlfIUkI+eNUKtdLsGZl5g1w29sI6gRkbbdwpOjGUZdUWZhTf+OdJLW9dBAm78rZvCEruSvr8Tpssd3WXp6eshYyy6Le3ZL6Y0rru0Lu8WbkZERV4iPIHr06MHs2bMPuF/v3r1DrZhag/vuu6/F/scHQl1dHZMmTfrRfSZPnszKlSsPeuymiCvEccSB8aGzS0oZGOmmdiPEdorX6/XaStEG+ynE1dXVbWac02tgLinpiSiqQFEFDqfKuiXbKdpdwfvPLeClh8Orx3f943ISko2FA0UR3PH4Jfsdt2h3OX++/VUzDRj6jOhM8Y5q6vY18s0nq/H7ggbJCwaNm6YRxRyFCKvFEURR0aWRSqw1r+dFCMr3Bfj431sN9+mRncL7mdsVXSIQCIsgA1IVePwaSQkqwvxl15MczXisjFSEI7iry61w5qVGmvTnb+0gKAU41ZadqHUZIrpR45uKdUgZD2qgBY2bHq5PRgi2LS+h++BO3PTgeSQmd8yFnNoqD6V7KkMXfklJSSFjLbsgrri2L+xGMO0Wb3p6Oh6PPTJI9gubKMQdEYMHD6a4uPhH9ykuLo7yIjlUxAlxHHFgpEzbqYY4EAjYimDajRDbLV3ajineVsultkBKehKPvvdLpp49lmkzx9EpNz3kFg0w5/kF5G8xflRzemQxZ9OfeWPlH/l452NMOHnYfsf94KVFaMFwq6New7PZva4SvUn/3MjU5/EnHGW0a2rqLq3p4axpidECyR8EXzCaRFp9ist8fDx7C+NPyGP00PSoVGkR0A2yaY3t1xACGuoCKIog0ezdK/x6cwU+sp7Z/NvlEpx5cX+DDL+53eDfShOl17prqbzC3EeN2E/XzZsErw/8/tD5Nn2++gzpRVp6GqOm9gFAC2p46joOcfv01W+5cMTdXDnhfh645gW0oIYQgvT0dFvVEduNENtN0bYbwVRV1Vatw9LT0/H7/W3eYicOe+CXv/wlb731FmvXrm1x++rVq3n77bf51a9+ddhz2ecKNY442hHxlOn2hd3iDQQCtkrxtqNpWWNjY5suQvUenMdvnrwcgBcf+oh3//VViPhJCUu+XE+vQV1D+2dkpx5wTKEIhCKQmsSVoNK1fzpfv7G52X7pnVK47I7Tefre91k6f2MU2QwrwxLd4zVqcZ1Og9iaJFgGMB5XoslreVEDH7+0hRlXDwIBq9ZXg6IgANWrI4WGdKiGeZaU6H4dr08j2W0QYld5QzT51XSjd3CEe7XLpRhp0l6Nz9/YjqbJKGOsKIdqKQ2C3UTxDu1n1TVHMmBz8cDpdhDwWxfiAneik7y8rpSUlFC6s54//WI2jfU+Jp46nN/94woczthlZ/i9Af71+3dDyvAP89ax9KsNTDh1BMnJyTQ2NsYstoNFQkKCrWownU6nrciPRYil9dno4HA4HOi6bptWXJaje319vW3c3eM4dCxatCjqfp8+fTj55JMZP348l19+Occffzw5OTmUlpby9ddf8+qrr3LGGWfQq1evw57bPleoccTRjrCbQhxPmW5f2C1er9eLy+WyTYq3ruv4/f52I/BX/vZMvnjrB2r2eUKEbvHcdcx7dynd+nah75BuTDx1OAOG9+Db/67h0/98T2Z2Clf99kw6d80IjTN28iC+fG8ZDXVeegzJorqkgbpKb1gtlaCogsfevZXZf/ksoqZK0mtADtUVHiMGgRGH02H87/MZdb1m6yWhSdA1pFOGHaA1Q2ktL6zn4xc3M+OaweBQWb1mX4iMSpMchyAEHk+QVJPw6slulCp/2PzKUq413agZjkyTfmcnmlCMWuPQ+ZnnoxtEN4oM63p4mzl3yFRLYqjD1tOhCHoNzGX7+r2hUAeN7Elubi4//PADr836EK/HWNT5bu465s9ZzikXHHMIr3zbQNN0NF2PeszvM1TAhIQE2xFiuymumqbZimBKKdF13Rbfv9bvWjAYxOVyxTiaAyM1NRUhBHV1dfYlxNJqBXCE57Qhpk6d2uLnXkrJCy+8wIsvvhj1GMAHH3zAhx9+eNiZD/a54osjjnZEbW0tKSkpsQ6j1bAbYbObK7bdnt+2MtTy1DWyYM5yAE4492iSUg4/BbvR42PO8wuoqazn5AuOof/wHqEL9PYixKqq8Mhbt/DXX75KeVE1SRlJbN+wF13T2bu7kmULNvPOs/P55cMX8Lf/e9MgbkKw8tutvLjgbpJTE/jmk9U8dPPLIWW0a9909m6tCptmmdA1yd0X/pNhE41+uhLjQj5/czEoEe/5kImVElZsdWnU+0qJ1HUIBEylWDG2WenTez18/NIWzrx6EFIVrFm1r8XzlgI8jRrJScZ7V7pUsFK+I9smSXC5FKZbyvA7Ow1l2EqNjkz31sw4Ih+PVIItoh11nhI1NRmt1gOKQKhKmAybY8yfs5yLbzsFXddxJoqIjHFBVWUdi/+7BneCizFTBh1xJSsx2c1515/Ae8/OB4zsg2NOMnpEu91uqqqqjmg8hwM7piDbiWBaMdrlNy4yXjsQYlVVSUxMtFWWQxyHjnvvvTdmC2H2ueKLI452RF1dHampB06h7CiwG2GLx9u+aAtDrYA/yJ3n/J3dW4pBwmevLuaJT+88bAfg+69+jrXfb0cIwX//8x1Pf3kXSRkO3G53uxKd3oPz+Mfc3wJw6TH3hfoXg7GyLKVg4UerCDXilVBT6eGOnz3Fvz6/k7ee/hKEYpA9XSe7ZyobFhU2n0hKyoqq6JybRve+nSnYVooiBJoujfRkCBPgJscBRm9gIRCabpJViXQ6o92ngbIiDx+/uo0Zlw0ACWtW7kMJ6uiu6ItwT2OQJJMQowikIkwn6PBYLpfC9MsH4GsM8vk7u8JkOAQRNsgSIlqts9RmzGNUkJoMnaoFLahBgguHAkF/RL2zCb83EKrJPfWScbz6sEE+U9ITmf/OMgq2lQAw5awx3PXPK5o/7+2Ma35/NpOmj6K+poHhx/bHnWiQB7sprpZJlZ0UV7AnwbRDyYoQwnZ1z8nJybZ2mhYRPwVHck474lCcqNsKHb+AII7/SaxYsQIhBMcee2yL219//XWEEAgh2LNnT7PtHo8Hl8tFSkpKq+qR4oS4fRGPt33RFoZaO9YXsntzcSjNddemInZu3PvjBx0Afm+ANYu3IXWJrukE/EHWLN7abgZgjR4fq7/dwt6dZVGPH3PS0DAhNEmZrun0HZIXTTyFIH9rCR++9DV7dlWEtgmnSna3FMqLGo3638g2SwBCobrSw8yrJpOalmCQb2sfEUEuLUSqxNb8qkm+I1s2mXNIKcGlUl7cwMevbmP8xC6MGpmJ8Gmo9X4UXxDh01ACOp6GIEkJpqmWN2gMr4YVXpfbIsMan79tkuGmsB5qqedwUI/YIeJ8QudqpVQbKnKIDFvbTTR4fOzYuJeMjAyGTejFQ6/dyK//ehE3zpoZIsMAX3+0koriasr27qOiuLp5rO0EIQSDx/Rm3LSjQmQY7OeCnJCQEDLdswMURUEIYRvCZhFMOxlV2Y0QJyUlHZZCbF0r/tht9erVbRdwHLaEfa744vifwujRo8nMzGT58uXU1tY2a8g9f/58Iz1RSubPn88VV0QrCN988w2BQIATTzyxVeZIPp/PFqu7FuxG2DRNs5UDst2e37ZQiDM7p5qkybgvhDAeOww43Q4652VQWVITcmbu0S+nXVpEVZXX8svpf6V8bxUIuP2vF3PqhRMA+MV955KRncrbT39BMBAmmysWbebCm0/izX9+ZQxiEr8VCzcaNaMmgcvokoSUUFNu1o4qSrj/sKkQzX13OXPfWQbSSlFWoo2p9qfORZJiTQNdR0jFzEiW0YQdKC9p5OPXtjPj0v4ArFtaju7TEE4FGdBpqPaT193wQ3BVeAhGLAK43CrTLwu3VtI0TPkigvT6gxD53rfMvyKJc3TWeIRqrBsbpB5N6iMPNM+jod7HA9e/xB9fv4L8/HwmT54MwPqlO6KfHkXw70c/44t3lgBwwc0ncdVdM1p+Lo8ALEJsF1MiVVVxOp22caG3o4IZj7d94XK52iQrY9asWfvdlpube9jj7xdmQs0RhU0V4ljCPld8cfxPQVEUpk6dypw5c/j666+ZMSP6Amj+/PmcdNJJLFu2rEVCPH++kX534okntmo+u6RnWbDLxZgFuxHMYDBoi4tHC4FA4LBd0nN6ZHHrwz/nhT9+AMB1955Dl26dDmtMIQT3v3IjT/72Taor6ph57VRGTBzApk2b2nwBat6bP1BpKYgSXn744xAhdjhVBgzrTjAQbZS0a1MRtz54PpuW7WTNDztMYqfRf3hPqmt87NxYhK5LMrskUlXSEM3vhEA41GaPhS9ETNYYWXeriOgLFSGi1WZVDZleCVPRlpaabKU9A+VFnpD7tJCStcsqkAHjGF9FIyl9DD8EoYdJqcvVhAwHLSUXk8SbxlmKYtQzW0TcMpcShA20IgmxBAIRKdFRRJnQgkFoe4RZVXlRNSkpKVHqz9Cj+zL9suP49NXFKKrCeTeewDv//DK0/e1/fsnpF08kt2cWsYD1vvX5fLbpXe90OvFbLbBsALsRNrvFa7fWS4qioDcxuTsUxDIdN45Dh67rvPvuu8ybN4+9e/e2mO0ihOCrr746rHnsc4Uax/8cTjzxRObMmcP8+fOjCPHu3bvZtWsXN9xwA4mJiSHyG4mDJcR2MfCwYJd6MAuaptnq+bUbgW+rBZIzLj2O0y+ZCNBm768+Q/J4/KNfRz3WHgqx6lCiuKbqiH4+9kegCraVMOula3nhgTlsXL6LUccN5KJfnsrMa6fx1zveYPnCTSSlu/DUhn+Eh47rzQ1/OJv7rpvNvrLa6AEjnzddjzCjEs1X7fUmqdXW/yGWLQx1Vkpko99ol6QoiKBOxd6ImmIhWLukDCQ01PpJTDbfu6Yy4XKpTL9yED6vxtw3t4fJcEQcIiIG0VTZ1vVo11KLHEtpHGc5Y0euDujSKMqyyHVkn2Xz7wmnDCMpKYlAIBD6jhBCcMtDF3DFb6ajOlXyt5ZEEWKAYCB25ENRlJBiZRdCrChKhAN6x4cdCaad4rUb2ooQx2E/eL1eTjvtNL755pvQdW/kd5l1vy2uV+wjMcXxP4cTTjgBoNmqj3V/2rRpTJs2jcLCQrZu3RraXlVVxapVq8jKymLkyJGtmitOiNsXdovXbgS+LZ9fq6aqPeH3+9vc4fS0iyfSa6CR9qY4VNzJCfzltleprjDUx96DunL7Xy4kJT2CxOiSv//mTV7/+1xufeRC/vXl77jh/vNwuZ2kd0pm2lmjAElymouGWj/oGqmpbu5/4WoGDO/BnY9dGEW8c7plRAfV1JlZ08Jtj8wa23D/3ohbqL44PIwiBIomUQKaQZIVQfmeej5+dTvjJucwYnw2eHw07GskKcUsE9HMmuGrBuLzBkNkWETGY5HhSDQlT0IYVwuR9ciKANUw7ZKKQArjFnbTFmEFPILsO1wOcrp3onvfzqiqoLKkDiFEs5TI1MxkklISGDiyJ+OmDgk9PuWsMXTr26XlN8ERgtvttpXi2vQisqPDbgqmnX7bwH7vhzgh/t/FI488wqJFi/jd735HeXk5Ukruu+8+ioqKeP311+nRowcXXnhhm3wf20cCieN/DkOGDCEvL4/169dTXl5O586dAUP9TUtLY+zYsaH0tfnz5zNw4EAAFi5ciK7rTJs2rdWqma7rtvtRi6N9Yaf3g90WHKSUbZ7yn5KexD/m/paPXv6G5x74gKLdFZTs2UdVRR0Pv34TAKdecAxTzhzFQze/wrIFm0LHvv/iIjK7pDP17NGoqsJbT8/H7wswbHwfkJKkNBe1lV6QkroqDwXbSuneLweny8E/PvkVd1/6DFXldZQWttAOqYnia6Q+R7xWQc1QWJvWGUsZVo9bgvmaVxTW88nLW5hx5SBEUGfzynKcpvO0M8nBqRcZbtIhZdiMSUReEDepU24We8j4q4nJlnlKoVRpvakjtR49hq4T9AfN50myd1c5m1bmc8msY/D5fM16wXsbfHz13jLGTBnM9MsnkZqRxJCxvWP+XhdC2OoC3W6EItav708ddnt+2ztlOiEhgbvuuuuwx4+j7fHuu+8yevRo/vSnP0U9npuby4UXXsj48eMZNWoUf//737njjjsOa644IY6jQ2PatGn85z//YcGCBVxwwQUALFiwgMmTJ6OqKiNGjCArK4v58+dz4403AgefLg1xhbi9EY+3fWG3mvL2ild1qNRU1qOoCrqmo2s629YUhLZLKbn36hdYZxk3ma7OuoQXHv6Ed59fiLfBT6PHSI/+7xs/AJCY4qRkV01Itd2+cS+/v/YlGuq8KIpAb5bCG64fVh2KYV5lna+lmErCinEgGFZUm5JiaJmoRtYU720I1RQDBIM6DofCaZcMwOsJMveNbVFkuNm4kSnSTdHS5yCK5Efu08SgCxG9f8hcRoSmqyiuRhGOZnVhmqZz18//yZbV+QgBuT2zeXre/3WI97ndUpDtpggCtoo3/vy2L9pqAer+++9v8fH09PR2JcQCjnzbpSM7Xbth586dXHvttaH7QoiozjF9+/Zl+vTpvPzyy4dNiGP/yxJHHD8Ci9RaJHfTpk0UFxczbdo0wPhwTJkyhQULFoS+4K19rZTr1sBuhALst8obj7f9YDcC357xDp/QH10zMj4URTBq0sDQtvqaBtYt2WHy1YiUXjOmqvK6EBkG0HWJw+UwSK1pyCUE/Ov+D2is94X2McaIJLKEnJc1v2YYSwkR/h9zd4cajkOGJjWIctC8NXVrtup8AaFJow2SLinf6+Hj2VsYd0K3UKz+Ro25r29DC8jw+JFp2U1gpT2H0p/Nlk/7NUmNjMt6TpuOb01jGXK1QO6Ld1fwwoMf8Nlri0MPF+0qZ8vq/NA0xfkVbFq5u6UojjjsRoDi8bYv4vG2L9pKIZbW91mTW3V19eEHGUe7wOl0Rnk1pKamUl5eHrVPr1692Llz52HPFVeI4+jQsAixVTds/R9JdqdOncr777/P2rVrycnJYePGjXTv3j2UQt0a6LqOlLJVPYs7AnRdR9O0eLztBDvGq+t6PF5gxIR+/O5fV/Ddf9fQpXsm5//ipNA8TrdKZpcUPLXeiAvC/aQLm8jqkoLiECiqwOk2s0gUpXkvYj2CNkZcbDpcDqN1b6SjdCQ0BXSt+XghJdl0ZlYthTlaSZaWezVQXd7Il29t54wrDKX46w92GrE7WlCCm6jRsqXz15vEYZloGYGY+1gu1OY+QQWCQZJS3KRmJpOclkBFUQ11+zwRDtORRFribfRTWVrNM/e9S2pWEseeNIykNDcJSU60iAvh9KzkDvMeDwQCHSaW1sBO8UopCQaD8XjbCXaLVwhhq5ryONoO3bt3Z+/evaH7AwcO5Pvvv4/aZ9WqVXTqdHgdMQCEtNMyURz/k+jfvz87duygoKCAX/7ylyxcuJCKioqQort+/XqGDx/O3/72N3Jycrjkkku44oorePnll1s9x+TJkxk3bhxTp05tn5OII4444ogjjjjiiOOgcM8993DPPfdw0UUXHdLxInLx8AiitraW9PR0ej3yIMoRbuOoe73k33UPNTU1pKWlHdG52xLXX389X375ZUgBfuihh/j973/PVVddxbnnnsuCBQt4/PHHufjii3n11VcPa664QhxHh8eJJ57Ijh07+PLLL/n666+ZMmVKVHrz0KFD6dy5M/PnzycnJyd0zMFAURS6d+/OGWec0aaxtxeWLFlCt27d6N69e6xDaRXi8bYvli5dSteuXenRo0esQ2kVOkK8m1ft5rn75tDo8XLeDSdw0vnHhLb5vH50XfLKXz7lq3eXccq1w9i5upyty0sAOOln47n09tN49o8fsmlVPjndM6mpqKO8uBot2CS1T0qOPXkY404YwoKP1rBhZX6083RL5lmRKceWQmz1KY7cHnGB50xQOfXKIfh8GpUlHkZP7oavMcjKb4pZv6LC2EkzHKWNMt6w1ivMtOgoNTgSEY+JprE1hZSgSaMHsgXz7649O1G8uyJ6X+CsXwxn7YICdm8wTMkyO6fywvzfNR+7g2Dx4sX07duXrl27xjqUVsFu8X7//ff06tWLvLy8WIfSKnz33Xf07t07Hm87YdasWbYraYujbXDxxRezZ88edu/eTe/evbn99tv58MMPmT17Ni+//DJSSvr3788jjzxy2HPFCXEcHR4nnHACzz33HI8//jj79u0L1Q9bEEIwdepUPv/881DaxMHUD0O4RsXpdLZZ3O0Joz5SsVW8qqrG4z1MbFqxi9kPf4wW1Ljk16cz5vjBgPH+tdP74UjFW1q4DyGgS7fm6VTDxw/gqc/+r8XjrLhOOnc8c99YQmOdH6dLJdBgmGdtXr6bW079K0PG9eaJ92/nlzMfp7KkxqgnjoRJ+EryKznl3GM45dxjePTON5n/4cqo7YiItGOI7k8sJYR6nAbDpFXXQwTZlejglCsG423UmPvaVvoNN3ouf/b6Nk6/eACajtGnONLlOrKXo0m4pdKC03Woxtkg5lG131Yc1t/WmFZrqNA4xlgFW0qjxzX/diWqeGoDBHxGWqTXE+jw72Wn09nhY4yE3eJ1OBy2iVcIYbt47fR+sKPHSxT2a8LQznP+BDB16tSozM2kpCQWL17Mhx9+yPbt2+nduzczZswgKSnpsOeKE+I4OjxOOOEEhBCsW7cOoBkhth575513qKurY/DgwXTr1u2g5lBV1VYmE3YyUAL7mXh0xHg9dY3cc8nTeBv8IGHWFc/y0uJ76ZyXabu2Ku0dr5SSZ+59j49mLwJg5jVTuOH+8w56nCFj+/DPz/+Pz+Z8SVKaYaIlhGDXpmIAvvt8HXXVDVSWRpDhqJZExue0cGc5vzjpEbp0z2TosQNwOFWCAbMmTtOMixeHqf7qZo9i6/mxFGRrXEstNsd2Jaicce1R+LwGGdaCkpoqI9aKMi8fv7qNGZcNAAFrl5SDQwk7QOuEx1IUg8RGGWIJ47qqWf0w4VjDT7p5Pkb80pSihR7Rekkz91eiFebUTgkkmC30EHDFnR07U8dubfripnvtCzvGaye0VReQ/bVdApg5cyajRo067DniaH84HA7OO+/gf88POG6bjxhHHG2Mzp07M3z4cNauXUt2djbDhg1rtk8kST5YdRiMC3Q7mTZ0RML2Y7DTxQIYCyQd7f1QtmdfyNkYIBjQKNxZRue8TNu9HxwOR7sauhRsLQmRYYAPXvya0y89jp4Dcg96rF4Dcznp3GMoL6tgxMgRPDPrfWOD+Z7etnYPU2aMZsEHKyNSoYkynW6sa2R3bSO7d1Ww9NvtxudB08LkFsCvhVf1I9shOR3NlVoAVQ2T4cYgc1/fbrR3EoLaKi8ACW6F8pJGPn5tOzMu7Q/AmqUVhkGXLhEqgEDqOuhmyE0+qwL23/4p8rHIhQBHOLVbKsIgxbpp/qUb7tt/efNGcrp3wpWg8vU3C3jotZvYvraIznkZ9Oyf06rXJlYIBDq+guYiYIEAAQAASURBVB0JuylsdovXTt+9YD8C31bvh/21XQLo3bt3+xHiuELcZqitraWmpob09PQ2r42OE+I4bIE1a9b86PbBgwcf1o+S3fpK2g12W3DoiIQ4r09nsnLSqaqoAyAx2U3fo4xMCLsR4oSEhGZ9Z9sSgWZ9gQkrsoeAhIQEdKkx9Oi+xgMWMRWCERP7c+LMseRvLmbnxr0RFyICFJMYCoXIKxQpJZ27dSLQ0Eh1Rb2xyUqFNnaITm1u2i8YcLkVzrj2KPyNQeb+ewsaSsj4OWj2HE7PSqSutpby4oYQKZaqypoVlYBEBnQE0iDIQoJmEGApCKu4utGySQQ1c78mTtWh041os9SU2FvtpqQEqZGdk07/od3YvLqA2ro6FEUhLT2FsccPOpSX54hCSonP5yPhCJvkHA7sRoCCwSAOh30uT+1G4O0GKeVhPb92+m2Mozn8fj+PPvooL730Ert37w493rt3b66++mp+85vf4HK5Dnse+3zjxBFHO8JuhM1u8TocDoLB5iSlo6IjxutOdPHXObfzztNfogU1zrluGumdUoCOGe+PISEhgcrKynYbv+9R3Zhw6nC+n2uUWUw8fSR9hhyagYym6SQmJlJfX0/eqM5GLbHf+uxJGmq9/P6yZ5sf2DTFr0ltbmVpNX+afR21VR4eudVyx7TyjIXZaJgwkYy4ILSUYYsMB4MSEpRmCm5GJxeFOwB0yosb+OjNXZx1UR8QsGZ5BTgVpC6NVGlFINFBk+EWT2CQbEUgFWHUBqNHE/SoWuEfufC00r4dgl8+/DOe+dNHzHtnGb2HdmLCWX2p3echPStl/8d3EPj9fqSUuK0UbxsgGAy2ScrpkYLdCLHd4rUbgbdbvHG0Herq6jjxxBNZsWIFQgh69uxJbm4uJSUl5Ofnc++99/LRRx/x1VdfkZJyeL8f9vkExxFHO8LlcuH3+2MdRqvhcDjihLgd0VHjze2Zxa2P/LzZ4263G6/XG4OIDg3tHa+iKPz++WvYuHwXAEeN63NQCtn6JTv4ft46tq8vZN2SHaRnJXHhveMpKSyPIMOAhPVLd7Y8SFMFtcl93R/k7kufsfKUI9RgxUilFoRrdH+MDGtAgjO8jxCYntGkZSUYDtLSmLespJGP3t7NWRf0AWDNyn1IIZGajmL1M25qDBZSeY34pLVd1xHBYLQztakmt5hGbaV8C8lDN79Co9d4HrO7p1Cyu5Zf/uwpnvv8N7jcDmqrPDx6+2tsXrmbERMGcMffLiYppWMosl6vF4fDYRsCpOu67RRtuxHMeLztC7vF2xRCGrcjPedPAbNmzWL58uWce+65PProo/Tp0ye0bdeuXdx5553MmTOHWbNm8dhjjx3WXPEllzjiAFJSUqivr491GK1GRyVs+0NHTEH+Mdjt+W3vFOS2RkJCQrsTeEVRGDa+H8PG9zsodWH9kh383wX/4IMXv2bt99uRuqS63ENViYe//ubfJCS7EYpAURWSU3+EZETWB4NpKqUZjtGaZhBfoZj5ySZCpJjo1kwmXAkqZ1w31CDDL28ylGGnEialTVKs0zs1UTE1nbLiBj56exdHH5fDiLFZBtF1KoYCLATSpSJVBdl0AcEizE7VvDmQilGLjD+I8AURAQ2h6RAIGuep6+E2TSFTMEmjx48w5+vcPYWKwnpKC6vYtGo3AC8+9BErFm2mvs7Ld/PW8cfrX2rxKfb7AhTuKMXbeOQWM+1GLq3vBbso2rquo+u6rQiQpmm2itduBLOhoYHU1NRYhxFHDPDOO+8watQo3n333SgyDNCnTx/effddRo4cydtvv33Yc8UJcRxxAKmpqdTV1cU6jFbDboQtHm/74kgQzLaEReBjXdvVUO/l209Xs+rbLaFYfvhyPUIRzVoolRfUkZWXjLfBz8iJA5hx5WSe+PQOsrumtzx4JAGWEa2JLCJswUqPjrxPE5IsRJgMNwSZ+8pmtGCE8hqpxFpzA+lZCSCEoRZIDBU4oFFW0siHb+9i/MQujBxjtGiSDgXdaRJhAajix31ZFGHcHCq4HEiHapBqjJp2ITHIsaabTtqmQ7a5GDB0TG+QkuzuKZQXGouRyamJAOzeXBQ+HSFY/f32EFm2ULS7nKuPe4DrpjzI5ePvNeq3jwAaGxttR4hdLpdtUqat7127xGtHAm83QuzxeOxNiGWMbj8BVFRUcOqpp+53uxCCU089tU1KsOKEOI44gLS0NDweT6zDaDXsRtji8bYv7EaI3W43uq63q9P0geCpa+S2M/7Kgze8xN0X/pN/3G2sMOf1ykbXmreEKs2vJbdvOoqqMGBET26871y69elCVdkBFtJCaq9FhiPqby3uqyjm/8Ko33Wo4HCElF9nokGGfQ1B5r6yKUyGQ2nKETcFw5kaSM90h+uQdQlBzZhe0ygrbeTDd3YxfkIXRo7NNlsvCaQqQiQch4J0WCRZNHeZjjwXhwJO1dwfhGq1dyI0NxHP6/qlO0nNdJOQ5KBibz1Iyaf/+Y7V320zFiOazFe4szxq6jefmkdVufHce2oaefmRj3/8dWgj2E0h9nq9tlGHgVAmkV0Im/U7YZd4NU1DSmmbeHVdp7Gx8bDrQ+OwJ3r37k11dfWP7lNTU0Pv3r0Pe644IY4jDgyFOJ4y3X6Ix9u+cLvdHUJxbS2cTieqqsaUxC+bv5G9O8tC9z97dTGeukZOuuAYuvXJDpG5Y08exsTThlOwoZKu/TNwJzqYctbo0HEDRvZAiTChGjGxf3gSy3HZIr9R7YuakL6mhFNRwOHAmZrA9OuHG32GX99m1AxLs8+v2wGKMBRZaNH5OaWT2xALVFPNxVSMg3o0KTaVYhSB3rTNkiqQQkSnUUfWC0edB+BQ0a19ND26X3EEeg/tRNH2GoJeDXTJ528u4XeXPsv2TSVRJF8oghHH9Is6NuANhp5PKcHvPTKLK3YjmF6v11YEPhAIoKqqbVyx7aZoWwsOdom3sbGRYDBob4U4jkPGddddx9tvv01hYWGL2wsKCnjrrbe47rrrDnuuOCGOIw6MGuKGhoZYh9FqqKpqK8JmN4Jpt3gTEhJC7WDsgsTERBobG2My94cvfc1LD0crig6nitPpYNWizey11EgpWTZ/A7c8eD4DhvWmpqyBrv3T+eKdpaHj/vDcNUybOYYRE/pz+iUTWfvDjrDaa6qu1lih/6VsntLWNO0Zo2Z4+rVDjD7D/9lmKMMWUXA6ooloCynTtdU+MrISwjFAiJwqAH6NsuIGPny3iVLsVNCtqwNrDlVEp1EHtTBpieq/bJJ9VSCdaoiEt4ReQzuRv3Ff882WuRjGoTfeO5Oc7p2idjnn+mk43UYvYNWh8PPbTmlxjrZGY2MjiYmJR2SutoDdCLHd0nmteOMEvn1QVVUFYG+FOJ4y3WoUFBRE3c4991wmT57MmDFjeOihh/j222/Ztm0b3377LQ8++CDjxo1j6tSpnHPOOYc9t32+deKIox2RmppqK0JsN8Jmt3hdLpetyKWqqjidTlulc6alpVFTU0NOTs4RnXf5gk08M+t9447pqqw6FG77y4W4Epw01ke/7pomueToWUhd4kjrS+/h2Xz40iKmnT2WQaN70alLGnc+filV5XVceuws46CW2hIJJXqbpoXTpSOVXXN/q2bY12CS4ZAnnZUa3Tx9WUS6QAM1+7xkZCWwZ2c4rVtIkAHDxVo4VKQURk3xO7s4+3zTfXpFJSigS4nQZZivCiOlW+pmX1urN7HEqJMWEftBuPWUappvhZRiicut0rVfOoXrPOGLtyYKd1ZuOg/++0Z6DcylKQaO7Mntf7mQd5+dT2bnNLrkZTbbpz1QW1tL3759j8hcbQE7fSeAEa+dFPg4gW9f1NTUoKqqrd7DcRw6evfu3eJ7U0rJH/7whxYf/+CDD/joo48O+xrTPp/iOOJoR9hNIY63XWpfJCYm4vP5bNX/0KojTk/fj8lTB0N6ejo1NTVHfN5dm4sQQhjp5RIUVeGdDY+QmGxccI0/aSg9+ndhz/ayEDmzSObudRVM/8UIVIfC3Zc8zRMf/5ru/QxCX1tVj64dYFk+kvQqCiDMFkvRac6uRAdnXDMEf0PAMNBCNcimppPgUPBax0Q6OJtKrvAHQz03ait9ZGS5TeXWNLQ2CbgM6qAqRia3hpE+/e4uzv6Z1ZKpEhzG8yQDejidLMLsCvRwmybdJOmRMUWet4iO9ZjTB+BU3fxp9o386pwn2bauaUqc5KhxfVskwwCFO0r56+2voes6QhH87sJ/MPu7WaiO9lO+/H4/DQ0NtvmMgaEQ20lds6OibRe1FexH4Kurq0lJSbENgW8J8bZLrcfll18es9faPp+KOOJoR8QV4vaF3VK8LYXC5/PZJj3Sbr2IMzIyyM/PP+Lzjp40kJcVEChIKRkzZXCIDAMkpSTwxCd38p/HP+e95xZEHVu2u5aGWj99R2azfWUZc15YyK0PG32hu/fLYcCIHmxbu8fYOfI3XbaQwxapIkfAafYZ9jUabtJ6QEegG5xWl/h003QrggRHQjod4DIu0KurfPQZmGHwbouEC4HASuWWIRdqqRl9ikOkWMKaVaZzp1NBBvTwRZY0zkk6HMYdCUKoEAwYc5j1xT92WdNtUCoDB/VHVVWkroGuNXPY/uHL9QT8QZyu5pcq29cXopkmXVKTlBdVU1NZT6ec9iOr1dXVJCUl4XK52m2OtobdCKbdFG27EUy7xVtTU0NycnKsw4jjCOHll1+O2dz2kD7iiKOdkZKSEneZbke43W78fr9tTJ8URcHlctmKYNrNaTojI4OGhgb8/iPXQxag//AePPzGLZx8/nguvPUU7v7XVc32SUx2c8mvTqNH/3A69yk/P4beg3LZ9F0xR03qhhAiShlSVYVREweEBzFJY8gJWtdQHWZ6dDAYvc2EM9HB9OuGmgZa29EIu1ILYZpiCQE6zVVYiyArIsQpa6v8pGe5kaoCia7Q8VKIcO9iM1iBBA3Kik2jLaslk0m6ZWT9sNSNXsQOk5yrZh9j1awX1qXRfziybloP38/MTSKlk4uVCwrYtamIHRuKmjtYAwFfcL9mWQNH9MThVM2e0ILcnlmkZxvGO1pQa5fvmurqajIyMtp83PaE3Qix3eL1+/3xFO92RF1dna0yHFqEFLG5xXFQsM+nIo442hGpqakxM/g5FNiREIO9Vv+tXrl2gd0IscvlIjExkerqarp06XJE5x4xoT8jJvRv9vi2tXt45OaXqSyt4ZSfH8vfP7qdVd9sJSklgVGTBrJh6U4euP55jp7ehz7DunDeDdNCx855cSHvPDO/5QnNVGUtEAzV4TYlgK5Eh1Ez7NXCBlqKgkQz+K2iGG2RwCTVmmGs1ZT4CUJj1+zzkpruQkl0hFs1mXXTlrKLRY7BILGaDJHis8/vA1Ia6dOKQLoE0qejKkr0vAJQQOrCINaKAH+weTo4xnzDJ+WxfVU5CWjM/2BF2I3bOjfzmCkzRpOc1jxDo2h3Bc/cP4cuPbJITHLRZ0gel95xBhVFVTx111usWLSZ9E4p3PPs1Qw/tvnrfKioqamxVbq0ZbRnl+9cMAhxWlparMNoNezmOm43QlxTU2N/QhxHm2DPnj2sWrUq9D08ZswYunfv3mbj2+dTEUcc7Qg7KsS6rtumxtUyfbLT6r/dCGZCQgIVFRWxDuOgkJGRQU1NzREnxPvDwzfNpnTPPnRd8vHL35DeKYWcHp0YOLInQgiGHdOPpz+/i8Xf/MC5t00gp4fRqqiypIbn7v+gualUCE1SmyPVXUWEDbQag4YyHGxCciPJsEVgm7ZYAlN1Do/d4NEI+HUyMlxUVvgiYos4tgVlVuiSsqKGMCkWwiDFYDhQByRKyB9LhsdRFKSuIxQzddsk7iJCKU5KczFgTGc+eGotdzwyjd2b9obVXAEJiS6OGtuH42eM4qTzxodi8vsCSF3iTnQx66rnKNpdEeoXff1957JzQyF/vO7FUL137b56Hrn5Ff6z4o/Nzu9QUV1dTa9evdpsvPaGlZVjl+9csJ9CbLd47UiI4y2X/rexe/dubrjhBr788stm204++WSeeeaZNulDbJ9PRRxxtCNSU1MJBAK2+XFzOo12I36/3xbxgv0Ipt1qcpOTk9m9e3eswzgoZGRkUF1dHeswQqgorkHXwwTvtcc/B4wU6r9/9CsyO6fx2wueoqa6jgvvPZa3n53LBTecytL5G4xjTPMqpGTAyB5MPGUEXXtl8foT8yjYXtpkNglCweVWOOP6YfibtlaSEjQN0XTByzL6ikx51vVwH+JI92kpqa70kpFpEOJQH2HFcKSOIsMRpNToVSwp2xtBiqVptCUEOFX0gIZiPVeR/F2YCnREeyjpD5jDCsae1J2CzVVUFtYydFxvho7tzbplO/lh3jqkLvHW+1i1aDP11Q2MnzaUlx75mE0rdlG0sxyk5KJfnkrhjjIisWvjXj579dsoh20pDVLcVrAMteyUMl1XV4fb7baV6ZNdfoMt2E3RDgQCoesHO6C+vt7+hDgWbZDsUZ12QBQXFzNp0iSKioro1asXU6ZMoWvXrhQXF/Ptt98yb948Jk2axPLly8nNbdmAsbXo+NJSHHEcAVhfuB3p4vzHENlmxy6IpyC3L9LT06mvr7dVKn1HI8QnnX80AKJJSyOfN8C8t5ew6OOVFO2uwFPtY8PXhZRXF6HrOsmpCRH1soAu+ePLN3DhLSeT2zObPTvLWiSfLrcwyLBXY+5rW00DLYxU46AW7RQa4d4swajftaAYrZCaeXcJQXWlj4wMt1FSZqY2oxAmx83coEXEXUFZYX1UTbFFbHEo6IqIPm8hwFRtQ6nbwqwtVlXSO7kYdHQOSz/dSW7PLJwuB64EJ/c+ezXpmcmh2KWErWsKmHXVc8x/bxl7d5SZJdmS1//+OQOGd0cxa4cVVTD82P7NFw6AMy+f1OyxQ4UdDbVqampsReDtmuJtt3jtlOJdV1dnf0IcxyHjj3/8I0VFRTz88MNs27aNl19+mYcffpiXX36ZLVu28Je//IWioiL+9Kc/HfZccUIcRxxAUlISQogOdXF+INhNwbRbvImJibaqK09MTMTtdsekldGhIjMzk8bGxg7j8H7zgxdww33nooRSmg2GJnVJSnoSLndYWVn1RT6de6ZRUVHBMScNo//w7gaR1XXOu2Ea6Z2MurdNK3eHOadFEBUVV6KTM28eRWJyInNf2xpOk5YSoeuIoNaEREcEGkk2rZvTYdwiaogBaiq9ZHRymcpvRHpzJOePVIutbeZzIBCU59fx0dsmKR6bZT43hsmXbpJxS9EOzWOR79DJS445qz+7N1QRaJSU5Fdw7bSHKNpdDkBddfRnLTktge3r9hiKfRMDsUt/fTrnXj+NaTPH8fDrN9H3qG5c+/uzQ27UKRlJ3P7Xi7j+vnN/5NU+OFRUVNCpU6c2G+9IwG4mYNbvg50IZpzAty/q6upspcC3BKvt0pG+/RTw2WefcfLJJ/Pb3/62Waq/qqrceeednHLKKXzyySeHPVc8ZTqOODCUkNTUVFvVYNpNwbRbvHarK4ew4pqVlRXrUFoFp9NJVlYWJSUl9O3bN9bhoKoK3fp0RgtaPb4NcthvaDfOunIyDofKl+8uZe332wn6dNISOrF+/XqmTJnC3z74FZtW7CI5LZF+Q7tTWVLDU/e8w65NReEJpJkmnaByxo3D8dYHGNR3KLq2MrwdIKBF7N9EWbZSkpuZaVmKLwYxBdB1qiu8dO+X1mQf43ipRBxDBEe26owxSbGqUJZfx0dv7eSsn/c1jLaWWzXFKkKXBoFvGos1qKqQ1yeF7gPSeevRlTQ0GM7RJXsqeeb+D3hg9nVMmj6Srz9cGTrm13+7hPeenc/mlbuj+jsPGNGD0ZMHMf7EoVGnP27aUfx72f1UFFXTo38O7sS2VXJLSkoYNGhQm47Z3qiurqZbt26xDqPVqK+vJzk52Ra+GBBXtI8Eamtr6dOnT6zDiCNGKCkp4ZJLLvnRfcaOHcvChQsPe644IY4jDhNdunRh7969sQ6j1bAbwbSb6ZNFiO1iXAYdLwW5NcjNze0whBig9+CuON0OgiYpTUlP5NF3byUhyUgzfOStWyjOryQ1PZHk9EQWLVrEli1bOOqooxgxIdx26c+3vcqGpTtMhRMUh4quScNN+oZh+BuCzJ29kcJxjUiv32hfBOAPMvyYfmzfXExjYyCKFAtdIhUjpVvqesgdujlC7l5GynRWAiKoI53mHJJwrbGlCOsRrtNShttGhdo+GX2YP3pzJ2ddaLxWa5ZVGMTaqRop2QHNSDuL4uoCZ4LCtPP788Nnu/HU+EMGXLqmU11ZR2nhPtYv2wmKQHWo3PKn80hOdnP6hRPo3rcLVeW19DD7PB97yvAW+xIDZGSlkpHV9umVHo+H+vr6DmP+1hoEg0Hq6+tt5YptEWK7wOfzIaW0VQqy3QhxeXk5EyZMiHUYccQI6enpFBQU/Og+BQUFbfI9FyfEccRhomvXrhQWFsY6jFbDjoTYbvGqqorH47FNDVN6ejpFRUUH3rEDITc3lw0bNnQYs5fOeZk89MbNvPP0lzhdDi6744wQGQYjmySvd3bo/pgxY1i0aBFdu3YlMzMz9PjOjXvDBl2ArumGMhxBhrWgZO33240dAmZvYl1HVQWNDf7oml5TERaaRCqqYYql6wb3tFynFUHTdOjqfT4SkxwkOBW8Ps0grpqEBDWaUCsgNRnOrJYyPIw5tghC2a5aPnpjB2dd1BckrF1ukGJUs8exP2i0XrIINjDhtB7UVHrZuKw8Qtk2Rj/rism8/8JCqsrrjOdJ13nl0c+oLjVS/3sMyOGJT+4kMTl2pKOkpITs7OwO8f5sLWpqanC73SQmNm9b1VFRX19vqxY7Xq8Xp9NpG9MyOyra5eXldO3aNdZhHB7iplqHjOOOO453332XW265hWOOOabZ9iVLlvDOO+8wffr0w54rTojjiMNEt27dbEUmEhISqKysjHUYrYbdCLEQguTkZFu5XGZkZFBXV2er1hrJycmkpKRQVlZ2xNM7pZS8+tfP+PyN7+nSLZM7Hr+UHv1zGDa+H8PG92vVGGlpafTr24/58xax7MM9jJo4iAtuOpGjxvZm2fyNxk7CbK104wj8ngBzX9pgZjVHk0MrVXn1kp1hMhyZGh0MIp1Oo49x+CSiSXBkbbCAgF/HUxcgIyuB4qIGpFMBd7iPcFSadEAzYtIluFSz57HxWQDApSL8GuW76/joP9s56+L+ICVrl5qZH4qCVBXQJcJM2+45MJ0BI7N454l1xuk6VMN4S8AVv5nOSecdzeZVu0MO0VKXVFfUhU5hz7ZSli/YyOQzR7fq9WgPlJSU2O6i3G71w2Ao8XZS4e1GLq02XHZStCsqKsjLy4t1GHHECPfccw+ffvopkydP5qKLLmLq1KmhrLKFCxfyxhtvoCgKd99992HPZY88wDjiOALIy8ujuLg41mG0GnYjmJbLtGxa+9iBkZycbKs64oSEBNxuN7W1tbEO5aBg/cAdaXz76WreeHIeVeV1bFu3hwdveOmQxln45kZK91TRZaCbVx79lA9fWsTtj16Iw+UwyLDbJMONQebO3oCmR7LXyNRlAQ5HKKU47OBsGlYpClhpz5F1urpOyMgqNC6hY6srvWRkuZEOEVaFI5y0pZTGzaEYxzojFC8RITYIYZBioCK/no9e3c7Rk3IYcXRYMUdVwKEgnSrpWW5OurA/33ywm7qqiD7IQoAiCJhp6f2H9TBSwK1z1aO/IyIV+iONQCBAZWXlYbf0ONKwIyG2o0JsJ0Ls9XpxOBy2WSzVdZ2KigrbLUY1QywMtexzmfWjGDt2LG+//Tapqam8+uqrXHvttZx55plce+21vPrqq6SlpfH2228zduzYw57LHp+KOOI4AsjLy2PNmjWxDqPVsKNrM0BDQ4Nt6sRSUlKor2+7XqbtDSEE6enpVFdX28oRNzc3lx9++OGI12vv3VVu1uNKdE1StLvlGndd19GC+n5rVzcs38XeXaWce+dYxp3em82r8jnn2qn85e1beO3xzxg8tTNpGcms/O9eNC1SDaa5OZYSoQxHmVOFiWTT1kjNr31k1DHVFV4yOrnNYyN2E4YiG3KVdoCUolnbKaQearFsja5ISfmeOj56bTtnXdofgLVLykJtmVyJKqdfMYiNS0rZtqq8xedtz07jcT2omSQ4fCaKItB1ybRzxzF26uAWjz8SKC0tJTU1laSkpJjFcCioqamxlbKm6zoNDQ22IsR2q3m2G4EvLi4mGAzanxDHcVg4++yzKSgo4IMPPmDVqlXU1NSQnp7O6NGjmTlzZpt9BuOEOI44TOTl5dnK9ClScRVCHPiAGENRFJKSkvB4PLa5iEhJSTmgoUNHgx2NtTIzM1EUhX379pGdnX3gA9oI408cymt/+y9SGCZVk84Y2WyfpV9t4M+3vEJDvZfTLprArY/8vBlpH3Fsf3Zu2Mt/n1vHOb8ag1vPACAlM5GxM3qgKireMhdL528mOj0akDooanMCbCFSJVYUI93YoUYRacsTutmhQiAVheoqPzk9kg3S2bTcMbKFkwLSIRAhV2dzZKEYcVpwqsiARNEllXvq+eiVrZx1xUCElKxdWo4QcPLP+lJb5WfJgmKkEEbNM0Q5ZI+ZZJiQjZ0ymMRkNz6vH12XjJsyhJwenagoqWHq2WObPd+aplNVVktGdioOZ/vWb5aUlNhOHQ4Gg9TV1dlKIfZ4PAghbFXz7PF4bOPoD/YjxAUFBaSkpNjmeiGOtsfVV1/NsGHD+PWvf80ll1xyQMfpw0GcEMcRh4muXbvajhDruk4gEMDlatsWI+0FS3G1S52Y3RRiMAixnVL/wVA5c3Nz2bt37xElxH2P6sbfPvgVX3+0ks55GUy/bFLUdl3XeeTml2n0+EDC569/z9EnDGXiaSOi9rvqrjNJSHaxY30hDn8aSqdGtmzYzjfzf6Cx3s/c59ehyUh9NbrPMcFgSBV2pSbi94XvW0ZbqKpRbiAw+/1axLp5PbG0tinGrXqfj0EjO4Ee3me/CrWqGEq9buXehQl8ePFNgqogNSPOiqIGPn51GzMuGwBIOucmkZLu4oMXNhvDuxxIXwChy6g5n7jnXZ578COuv+csnvz0DhZ8sIK0Tiks/mw1//3Pd0gJS75cz9/m3M6QsUbrlcqSGv7vgqco2lVOZudUHnr9JnoPbh8lNBgMUlpaysSJE9tl/PZCbW0tbrfbVuTHUlvtsLhrob6+np49e8Y6jFbDbjXPe/bsIScnJ9ZhHD7iplqHjP/85z/cfvvtR2SueA1xHHGY6Nq1K+Xl5ei6fuCdOwCsWiA7pU3bjWCmpqbi8/ls9RxHGmvZCT179qSwsPCIxz1wZE+u+8NMZl4ztVlKdDCghciwhZrK5u9fp8vB5Xecwf2zr+ecy09m2LBhbN62AV3XmfvcOrRA0+8USUKS0yC2mh4mvkCX3DSGjetjPG7dLALtUKPJrDnW/q99jBrl6io/GZnuln/wW0rLVgVSjahvbrofhvqMyxGqSS7fU8/Hr2zh2BO70aN/Gh+9vAW/L+K8XQ6j73GkEi6h0ePnibvfRSgKl91xBmdfdTwblu1C1426ZoFg/dKdoWHeeHIuJQWGmWBNZT0v/OnD/Z794WLv3r0kJSXZSmmFcP2wncillQZpF0gp8Xg8tkrxtptCvGfPHlul/cfR9ujVq9cRE6rihDiOOEzk5eXh9/spL2+53q0jwm51xHYjxE6nk+TkZGpqamIdSqthGWvZKWYw0qYTExM7lNO7y+3k1AvDPTAzO6cy4dThP3pMIBCgoKAAp8NNp64p5A3MACEMDmgJt4qg71HdwkRYMWuDVYWyvVUkJjlRHZE/zybpFSKsNlh9gkPZzU2JMiHPrtoaP4oqSElzGSpxUxIcBWlcGQjjop/ImzW/eZy03K0VBYHOiGNzaKwLoCqCgcOb1LALAW6n4ULdwrzf/Dfs39BvaDcUcz8pJf2Hdw9tMxYojCB0KWmob7/vv/z8fHr16mUrYglQVVVlK3IJ9iPEjY2NSCltVVvu9Xpt5TBdVFT00yDEMka3nwAuvPBC/vvf/1JVVdXuc8UJcRxxmLCMU/Lz82MdSquRlJREQ0NDrMNoNezm2gz2q8kVQtC5c2fKyspiHcpBQQhBr169Otzn77Y//5w/vHAtt/35Qp7+4i4ysvffgisQCPD999/jdDo59fSTkXUJnHLNcIZO7oZDVTj+9FG43A50XbJp5W4ciW6yctNRLOUX8PuCLFuwCS0QjKjbjWi/FOnAbNX67s+53STJuoTaaj+ZnVxRNbyhY0N3ZcjhWrZg1hWqA7bIt0mI3YkqZ145hOzcJN57diMfz97CuKl5jDimc4sp2c0gJa/89TO+fG8ZAHc/cxVjpw5m0Oje/OqvFzF60qDQrmddeTyqWTesKILzf3GS8dz7gzw76z1uOvkRnvrdW3gb/S0/J61EbW0ttbW19OjR47DGOdKQUlJWVkbnzp1jHcpBwW6u2PX19SQlJR1RE8DDRUNDg60IfElJyU+DEMdxyPj973/P2LFjmTZtGh9//DGlpaXtNle8hjiOOCKQk5PDnj17GD9+fKxDaRVSUlJsRTBTUlJoaGhA0zRUtX3NcNoKGRkZtur3DMb7eNu2bQwZMiTWoRwUevTowaZNmzqUWqQoSrOa4ZYQSYbHjx/P3DeX8OHzS3EmSE65ZhhZecksnrMGzSSxUpcEdY1r7z2HN576gj07SlvgtRFu0hZvDanEMkRIWzTjioDEqCPO6ORmT74HXbdUYKs+2JoqYhxFgFtF+jTj0cjgBCFinpmdwBkX9qWy1Mv7b24h2BigsT7Ax7O3MOOqQSBh7Q+l4Zro0DlIw+Fb0822UfDa3+cycsIA7rrkGUoLq0hKSeCLd5by/bz1XPKr0+g/rDuDRvfi+QV3s2V1Ab0Hd6XnAMPw6o0n5vLhS4uQUpK/pRiX28kN9517wNdtf9i1axd5eXk4nc5DHiMWqKqqQkppK5d5r9eL1+vtMJ/51sBuLaKklLaLuaysjNGjY9d/vK0QaoV0hOf8KcAy2ZNSMnPmzP3uJ4Q47HKrOCGOI44IdO3alT179sQ6jFYjOTnZdkZgqqri8XhIS0uLdTitQkZGBjt27Ih1GAeFnJwcVq5caTtFwOVy0b17d3bu3GmrC6GmZHjTynyeuucdY6OUvP/Yck69djjTfzGCr/69CU+NL3Tscw98wE1/+hmP3PJvNK15rbHh8CzD/YMjSaW5S2uufqqr/EbrpZa4c9MuSxDqUyxdCmrQYONSl8a0Zgz9BqUxbUYv1i0tY+n8IlNgNshueZEnTIoxSbEuQZdG2rQ008CDWmj66so6/nrnG5QXG+n+DfVe1q/YjaLrrP1+G//+4T6S0xLJ6ZFFTo9od9+dG/aGepzrumT72kP/Hg8EAuzZs4dJkyYdeOcOhpKSEnJycmylXNbU1JCcnGyrxQe7kUufz4emabZybC4vL48rxP/jmDx58hErWYkT4jjiiEC3bt06VA3jgZCSksLu3btjHUarIYQI1RHbhRCnp6fj9Xrx+Xy2qb9yOp1kZWVRUlJC3759Yx3OQaFv3758/fXXHHXUUbZ4vi0y7K33U7SjkSR9B3vzIxaphKC+2s+Hj6/k+IsGccHvjua7OdvZsqQEdElVWS1//783SM1MprqiLnyYYtXQ8uMKsIxwgraOtTYB0qwF3lfjo2//NHSXAgHdMLiKUJetUUL/W3xKKGhBDdVyl5bgTnRw/Mnd6Nkv9f/ZO+/4tuqrjX9/V8t7O97xtrMHcTYkhDALlFFWW0gpdLIKnVBaRkuhtHRAoaWl7AKFsl5KGSGQvfey43jHI957S7q/948ryZLjEG/5Bn0/HyW2dMfR1fB97jnnOax9/xjFec19sUi0PmWgrqKD/z6Xz6U3ZYOUHNxcrfUdK+Dq2DIqyI4eBJKeLisHthYiDO7iX6AKQWdnL1s+Psh5Vw9cvXPG8ilsX3PINb/4jBHMLi4rKyM0NFRXJbxOqquryc7OPvWCEwi9lUuDNnJJT+O42tvb8ff3101lFkB9fb1vBvEXnHXr1o3bvnyC2IcPN+Lj43U1ssZZMq2qqm4yAiPtI1ZVlRcffZ+17+wiPjWaH/7x60xKGLvyQKexVnNzs65GQMTGxupSEIeEhBAREUFpaemEP7F3iuG2pi7+9oMPNWdkVfLt+6/AZDZit6tIKYmbHMmNP7mYD17dQuHuXJZ/NZu02dFseO0IHW1WOlq7AYc5lMN9S6rubszamCPhHKs02ACdglcRNLZYmRduQTUIQOmT0M7tCVwu0C6N7cj2SrOC7FXBoJCaGsSKixKpqezk30/n0dner0zNaRDmyAbXVXbw32ePcOnNmkA9sLm6n8AX4GdB9vQ4epQlihDYkY7SbNW1/LOP/vekgvjSG8/CaDJwcFshU+amcOk3zxrsUfJASklJSQnTpk0b1vrepKOjQ1dj7Zw0Nzfrap4v6C9DrLd4VVX1CWIfNDY2AoxLC4g+zqB9+BgnEhMTdSWIneWwXV1dXo5k8AQHB9Pa2jrs9T99cydvPLWGuqpmDm4r4tHbXhrF6AZGb8ZaoAni+vp6rFart0MZMunp6RQXF0/o2N3LpLe9WYTdpmoiFti9Lo/H3rydi766mOtuO48n3vsh1h4b+zYe5djhBl5/eAfd7b1c98uFzP9SCmY/t6zNCSXRmhjGUWbsPqLJscCJ9/fbhl1Ac6uVkBATikFBGhWHQ7RbD7EzY6wIzzMDARgVouL8ueyaVFZeksTmNVV88J+SPjHsnI/sEteaYzaO8mqnKM5ZmcCsRdF9mWTnTQDmvnJZ1W7ntl9fSXhkkId47mzrKzXvjxCCL12/lJ89+Q0uu3n5sC8QVlRUaBcxdHgiXl1dTVRUlK5Kj0F/GWKbzUZnZ6euBGZHR4euyqVramro6enxlUx/QXn//ffJzMwkOjqa6OhoMjMzee+998Z0nz5B7MOHG5mZmbrqIRZCEBgYqKtRRqGhoSMaCVReWOMayaLaVcoLq0crtJMSHh4+Lrb/o0lgYCBBQUG6c5sGrQc6KCiI4uLiUy/sBfr3DEfFhqMYNOGmGASTEiLImjWZ2x66ilU/vIjAEH8a61pdvVC9nTY2vl5A+uSpxKWH8bVfLmLW2Ymeo5bcRx2533CURNtVXPbQLmHbV/7s/F86xGlbpx2bTRISYUYqoq+c2jFiyZkydq3j+D0szMyXLkzgquvSqK3t4sVnj3LkUJPHfvrHKJ3xK33x1ld28P4zueScN5lZi2P61naWhCuKJoqFQKoqFj8TX/6GZw/v3DOzBnw9ujt72Pj+XnZ+ljuiOfJ2u50jR44wZcoU3VTcuFNdXa2rMl7QLubqzVCrpaUFi8XiMvzRA3rLEB84cIDo6GjdtFZ9Lr6xS0Ni586dXHHFFRQVFSGlNo++qKiIr3zlK2zbtm3M9qu/b3wfPsaQrKwsjh07ht1u93Yog0Zvs33DwsJoa2sbtiPggpXTkap0ieKlF80ezfAGJDIykoaGhhGdbHsDZ9m03hBCMG3aNAoLC+npOXlW0Bv0F8MGg4Eb77mUafPTMJoMTJufxo13X3LCevHJUZjMfV1KX7p+CXMXTWPleSvorjex+JIsVv16CTkXpRAQ7NbNJFWCwk488Raq4zuqn1h2iWjQ/sIrWhmwFJKmll7Cwy3afQqoBqHdHOs5BbJUICEhkEsuSuD661Lp6bHz/CtFbNlUS0+vijQrA/c1D+B47f5bXUUH7/8zl5xzEpm1cJLnCCln3GYTKArp0xO47rbzuOVXV5I1O4lzv5LDL/9+4wm77O7q5c5L/8jD33ue+1Y9ze9uH37FSGlpKQaDQXejlkB7XzY0NOhOENfX1xMWFqarrLbeMtqgP0Gcm5tLZmamt8Pw4QUee+wx7HY79913HzU1NdTU1HD//fdjt9v54x//OGb79fUQ+/DhRlpaGr29vRQXF+vmy1hvgtjPzw+LxUJra+uw+kJmLEznt6/fxuYP9xObHMml31g2BlF64sxetLS0EB4ePub7Gy1iY2PZtm2brnrMnURGRhIZGcnRo0eZOXOmt8MBBhbDAKERQfz+zR+cdL317+3ht7e96DCNFnz1Bxdw/V0XApA1azJZsyYjpWTnpv1UJ7Xw9fsXcSyvkYJdNZQfaWLq3BR2bsjvE5vqAK7T7kK4X3rAIMGmCIcgNiNLAZOCcGZzFVBtkrAwMxlpwczIDsHfz8ih3GbWba6hrcMOUqIoIKQAo4LdatOMtk4yjskZk4fll+gTxZd8exphkUH0dpjZ9lmeY+qTY0mTifyDFYRGBLHhv3s5uvcYR/eU0VzbygPPfRuDsa/EfP/mo5Tl97W5rP+/PXznviuIiBlaxtFqtXL06FHmzp07bq6mo0lNTQ3BwcG6cpUHaGhoICoqytthDImJNBZuMKiqSkdHh64EcX5+PlOmDN8Yz4d+2bJlC2eddRYPPPCA677777+ftWvXsmXLljHbr77OkHz4GGMsFgtJSUkcPHjQ26EMGr0JYiEEoaGhI+rJnbUkk+//+iqu+NYKjKaxd80UQhAVFaW7ecTh4eEoiuIyptAb06ZNo7S0lM7OTm+HclIxPBjee36Dh0atKKjB2mvnlT99xEPffZ6PX9fKwBacNYemEsm/H95BQ1UH87+Uwo2/WUJstoHpi2IICbdopdIe4hdH+bQbzkoGtxJrCTS2WgkPMyFNCtIgMJgECYkBLFs8iW98LY1V16QwOT6AbXsb+cdrxWzcVUebs09YCFSzoa9H2GLQjLicYbgy1Xj2MxsE0iC05Rx31VV08P7fD5MxN5zOrgYCgxxu4hLXeh+8voO7rnycQzuKXb3Nu9Yd4dHbX6K8sEY7jkU15O875vHUFYOCxd886NfGSVFREUFBQboyznNHj+XSoGWI9SaI9ZYhdnqM6KnEu7i4eMKbKg4W5xzi8b7pldraWhYtWnTC/QsXLqSurm7M9uvLEPvw0Y+srCxyc3O58sorvR3KoBipa7M30KNJVWRkJPX19WRkZHg7lEEjhCAmJsZltqM3QkJCiI+P58iRI5xxxhlei2MkYhggNDIIxaCg2lWEEIREBPLMr9/hf//aAlKy+cP9mMxGzrkihx//4Wvc9ZUn2PVhKbs+LCU+PZKolEDSZ0Wy5NIUbFaVxupOasvbqTveqblUd9jo6LRj7bZrotSZpZXa3GB/fyOh0RaMRkFibAAXnhVDTKQfkWFmunrslFR0sHF3PeUVHfTacKR0tR5gYXc7s1IEqgEMdu1xKbT3mLRLj9JocULmWGjCWFURKo45xZ28/4/DXPKd6SCPcdDNfVoIQWCQhYLKJk/hr8DGD/aza20etzx0FX/+8WvY7SrCoCDtKgaDwi2/uZrAkKGd+Pf09FBYWMjixYt1mR1WVZWamhqWLFni7VCGRFdXFx0dHePiIDta2Gw22tradCWI29vbCQwM1FWVUFlZGVlZA3sG+Bg7KioquO+++/joo49oaGggLi6Oyy+/nPvvv3/Q1XE/+9nP2LVrF0ePHqW+vh5/f3+Sk5O5/PLLue22207pKG+1Wgc0gAsICBh2q91g8AliHz76MWXKFPLz870dxqAJCgqiq6sLm82G0aiPj3RYWJiu3LwBoqKiyM/P1135cWxsLIcPH2b69Om6PNmfOnUqn376KRkZGV4xWBmqGM7bU8r7L25k68dalck3776Ub//yco4VVFNZXEfa1Hi+fteF/OjKx12u1IpBYf+WAs65IofAEH+e+t+PKM6rorm+jQe+/TxVxU0cWFeFYhRMSgomPMafqMQgpi+MITDERECwGaNJwWpVsVtVVIcY/eZ3pmAyKyiKoKvbTnevneBAI20dNgrL6jne2ENbl6MXWUqEVaIobk7RSFQhXGJXABgNWgbaaEQVKoZeOxgAm+pm6NLP7MuJQUFKFYEmmOsq2t1EscrBzTUuU62cpZkc2JSP6ibuEQLsKl0dPfznb5969PTPXzmdnz/9TfyGkR3Oz88nOjpad6N/nDQ0NGAwGHQl0kCf/cOtra1YLBb8/Py8Hcqg0Vv/sN1u59ixY6eXINZBxraoqIglS5ZQW1vLZZddxpQpU9ixYwePP/44H330EZs3bx7Ud+Sf/vQnzjjjDM477zwmTZpER0cH27Zt44EHHuAf//gHW7duZfLkyePwjIaGPs6effgYR7Kzs/n3v//t7TAGjcViwWg00tHRoZu+JndjLb2I+NDQUIQQuusjjo6Opqenh+bmZl3F7SQgIICUlBRyc3NZuHDhuIr6oYrhzR/u56HvPudx8vPXX77JP9b+nGfW3UtPt9Ul2PwCzC6Rp9pVkjL6SnVNZiPZsyfTXN+G0WTAZrMjpIq0C6pLWqgua4MdtUhF0TKvJiNmPwMBwSYMisDkp3DlTVP4v3fK6Gi30dlpo9usYAoxcsfXM9iR20RPtx2MitY45XB6lgb6ZhKD1qcsVYSdPqHrnvk1KNgVOwZVaE/FIV6lm8GX8BgRpTleS7ubKC5v4/2nD3DJ97Q+8YPrK0FK/vnQu2AyecxDxm7XBDmC1pZu1/1CQEhE4LDEcEdHB2VlZSxfvnzI604UKioqiIuL090FL72WSzv/FugFvQni4uJienp6SE9P93YoXyhuueUWamtreeKJJ7j99ttd9//whz/kT3/6E/feey9PP/30KbfT2to64AWje++9l4cffphHHnmEv/3tb5+7jRdeeIF169Z53FdaWgrAOeecc8LyQgg+/fTTU8b2eegnzeHDxziRlZVFWVmZt8MYNEIIQkJCRjTKaLzx8/PDbDaPaB7xeCOEcLlN6wmj0UhiYqKu3tP9yc7Oprm5mcrKynHb53DKpD94ZcuAmYDGWm3kklOwSSk55jSCkhKkVu7bn7CoYK677VwsARaMfqa+Xls4Ifva26PSXN9DQ00X9dVaz2BjQw9t7VbsqkSxqnTZVDq6bYSHW5AmbX9SoAlhRfsfcMsQgzQ4y5+lZgpm7fcEndUSJkUb4eRcV1H6hKwrY6z9ZwmwcPcfv8pvXvgWsxdnaD3FfztAzgXJzFye0Le++/N03af1Krc0deIfohlITUqI4IYffenEA38KpJTs3buXyZMn63a8i9VqpbKykuTkZG+HMmT0aKilt/5h0ASKnt7fBw8eJCkpCYvFcuqF9YAOxi4VFRWxevVqUlNTufXWWz0ee/DBBwkMDOSll14alF/NyaonrrnmGte+TkVpaSnr1q3zuJWWliKlPOF+522k6CM148PHOJKVlUVVVRXd3d26KYsa6Wzf8UYI4eoj1lP/WFRUFLW1tbrqIwZITk5m06ZNzJgxQzcZeXfMZjOzZs1i3759REVFjfnncrg9w5GTQlAMAtWt7zY+JYrsuSeKFYufCVtbt/aLELzx1Bqi4sN5/tH3sdvsfPOnl5A+I5FXn1yjlQ1LibXH5nCYxpFdBo/r2o6Mc59U7otDKAIUoRlrhZg43tiDVFUty6z0lThLu8SjRloI7CaBoVcieu1Io0BVQVEdj5u03mjFkf11CmdnLC6XaSkd6ht6unrJ3VfGkb1lFBysQBgN1B3v5v2nD3HJ92YAcHB9lcdz6l+GLQQsOn8m192ykuj4sGFlh0tKSujq6hrQwEUvVFZWEhQUpDuR1tnZSWdnp66+/0ETxHFxcd4OY9BIKXXnip2bm3t6lUvrgLVr1wJw/vnnn9ASFhwczNKlS1m9ejXbt29n5cqVw9rHf//7XwBmzZo1qFjGG/2dGfnwMcYkJSVhMBjIzc31qpHPUAgLC9NdBnCkTtPeYNKkSeTm5uqq1Bu090dQUJBuM0kA8fHxVFVVsX//fhYsWDBmJYsjMdC68WeXUHrkOAUHy4mOD+fCry7i0m+cdYJYE0Jw68NX87s7/uUSes31bfz2the1mcESfnfXv/j2fVf09dC6j1Ryf+6qitbEi5twdMuq4ixj1m6NbVYiQs2a67MQoMi+EmeDxC7A4BzH5NyNATAIVD+DS+RKu4rB6hC9fkZklw2huBlsuWYhK1qMqtv2gPf+tdXTHVsI6io7eP8fuVzynWmA4OCGyn6ZcO25KYpAVSXVZfV857zfYfEzcfdfrmfRyumDep1AK5V2luHr6bPcn9LSUlJSUrwdxpCpqakhMjJSV/3DejTUamtrAzRRoxeOHj3qG7k0zjh9c042bjQzM5PVq1dz9OjRQQvixx57jPb2dlpaWti1axebNm1i7ty53HPPPZ+7nrfaV/T7V8CHjzFCURTS09M5dOiQrgTxgQMHkFLqprcpIiKCQ4cOeTuMIREcHIy/vz91dXW6yhKAliUuLS3VrSAGmDlzJmvXrqWiooKkpKRR3/5I3aQjYkJ54oMfY7cPXALtTvbcVO0Ht8+r6jbDV6qS/z67TnNxVt2Fo/uPjrJm9+yp++ffo39XW7exrZfYCIuWWBaOfl9Xny5IM0irBIOzDxhQBDYkRvdNKwIVqeWnhUA1KRisKhgFWNW+5LRLGOMSwCf9hhJC6yl2iWI4uKEKVBWDUTB7cRZZc5Kx9doRQvCfv2uZhJ4eK4/96DX+s/fXg/r+c5ZKJyUlER0dfcrlJyrNzc20t7eTkJDg7VCGjB7HRDU1NeHn56ebyjHQZ89zaWmpq7z2dMAbY5Cc++vflmaxWAYsRXdWGJ6sksB5/1CSGI899hg1NTWu3y+66CJeeOGFCWte6Osh9uFjALKzs8nLy/N2GIPGaZjhvBqsByIjI+no6HDNSNQLcXFxVFdXezuMIZOYmEhbW5uuSuv7Y7FYmDVrFgcPHqS7u3tUtz1SMezOqcQwQHR8GEGhbuOBBExKcJieOfpuq481MHPe5L4+XFVqplKKcCtrFmC19+vVPfHk1+lo3dBuJTzY7MoYOw20nL9Lg9vAYEdc2tgkt+06HlYNbvtx/iyEJrId8bhni4Wq9olhVSvNForAZDJ4xK4ZbR0i54LJzDwrDpDYbSp7Nh7F39/MzXdfQnRcmNuTg+6OXo8LCp9HcXExXV1dTJ8++IzyRKSsrIyEhARdZVlB+6zV19frbuaz0wRMT+JSb+XS4Bu5NJokJSURGhrquj3yyCPD2o7zoutQ3vvV1dVIKamurubtt9+mqKiIOXPmsGfPnmHFMNb4BLEPHwOQnZ1NQUGBt8MYNIqi6M5Yy2QyERYWRn19vbdDGRLOub6yf/ZtgmMymUhISKCkpMTbobhoa+6k9EgV1t7BzxaMj49n0qRJ7N+/f9Reg9EUw4PFZDbylw9+wpKLZjFrcQaPvn47T/z3hwSF+GuCU9WqPSKigvjyDUtISo3WenRdGVeBMDh6dI0Gtz7dfsfE3dDKLmls6yUiuM+9WaKJYJcoNjgWdt+OlJoI99guCIPA7nxcKNid8Tm1sZSOkm607LBdBZsNbE4Br23nd//6rue2naL4qf3kXOgw2nKwf6v2vXzWl2YRManPKOiKm5cN6kJEe3s7eXl5zJ07V9el0larlfLycl2WS9fV1REQEKAr52PQryu2nkq8e3p6qKysPL0EsRdNtcrLy2lpaXHdTlau7LxocrJzSGemeTgXV2JiYrjiiiv45JNPaGhoYNWqVUPexnig378GPnyMIVlZWSO2cB9vnCZVY1FKOlZERUXR0NCgq5gjIiKQUtLU1KQ7Q5i0tDQ2btzItGnTMJuHbkI0muzZcIQHb3qG3m4r8SlR/OHduwiLGlyf26xZs/jss89GpXTaG2LYSezkSH75j5sBaG5o56+/eBM/PxPtDjFqMCqsf98h/IUAdwEn0eYNG8QAYtU9w+vIztolwg7NHVZMBkGwv4G2LnvfRQXFmS6W2I0CxS4RyD63aCFRrVJbTLplCgyAzfGzScFus2NwZmpVicEgWHbBDNa9u8cVt2YULZBScs5lc/noje0nHhxF0eYU//UAl9yimbAc2lBF1ixtfmVYVDB/+/BH7FqfT3h0MHOWnNroTkrJvn37mDx5su6ETX+OHTtGSEiILkep6bFc2maz0dTUpJs2Kugz1NKTIM7NzcVgMOjqnGAiExISMiiH8ezsbEDr3x4IZ4JoJBcqJk+ezLRp09i3b9+EvLjkyxD78DEAU6ZMobi4GNW9d2+C4xTEeiIqKkp3GWJFUVxZYr0RGho6YQzY/n7/W1h7rABUlzfwf8+tH/S6ZrOZOXPmsH///hFVRYy1GJZSYrfZB7XsY3f+i00f7Kf+eDMAX7p+CbOWZOLWjAtygO+j/uXJoM3rda7j/EnV5gTbVWjusBERbHH1DXuUWAuBanLrK3a/3zyA8FYEqtsymI19vcwGBXuPjXX/t4/Y5GgUfzPCYmLhudO58YcXcPuDV3DVt5bz8Rs7TsxIO7LO9VWdrHu1iJwLUlh6eSZf+lqfI3RIeCDTc1IICQsYVLl0bm4uPT09TJs27ZTLTmSklBQXF5OWlubtUIaMlJKamhrdCWJn/3BAQIC3Qxk0zhYqPWXi9+7dS0ZGxrhemPQBK1asAGD16tUnnPe2tbWxefNm/P39R+zIX1WlTQ+YiK+vTxD78DEAs2fPprm5eVDz0iYKztFLeirljYiI0GUfcWxsrC4FMWhZ4pKSEq9f7LFZ7W4aSGCzDk44OomNjSUrK4vt27fT09Mz5P2PtRg+vLOYr825l0tS7uR3t714SmFccOAYqsN0SjEo+AVYiIoL78vECvoyxP37hd3MtARaNtj1iwNhECgO/dvYZiU82IR0d6x29hALwDGX+AQMjg0gPYy8PJZVwO7e32wyIIHqikZUu+agvX1DPps+2Mdf7nmdn1z9RF9Zdf/nZVCQQMmhWt7/2wEy50fx2j/+69rVK3/+iBvP/DW3XfwYP7v2SXq7rSc9vseOHaOsrEz3rtKgZVhVVSU+Pt7boQyZxsZGAN1V19TX1xMZGam7/uGQkJATxuhMZHbu3Mm8efO8Hcao4jTVGu/bUEhPT+f888+ntLSUp556yuOx+++/n46ODlatWkVgYCCg/f08cuTICefIR44cGfDcSFVV7r33Xmpra1myZMmErGzRz6fEh49xJDAwkMzMTDZv3uztUAZNcHAwUspBDU6fKOi1j3jSpEm0t7fr6lg7iYuLQwjB8ePHvRrHN352CYrDiCkkPJBLVp055G1kZmYSERHBzp07hyTwx6NM+ne3vUBLQztIWPvOLj59a+eAy5XkVXHTWb+mtbkThEAIgWpXmTY/jcJD5W6ZTzfh67o5HnIKSZegPPGkXQXXeKXGdkcfMU49LN0uTkhN4PYvw3YsrCqulVzzhoXiGNPkLO32NyFNiiaaFcWz99mxXsER7aSpo7Vbm5FMvzM49wt7iqCuooP3n9xP3JQgioqKeP/lzfzr8dWu7R7eVcKW1QcHPMaNjY0cOHCAnJwcXWXLTkZxcTGpqam6EjpOqquriYmJ0ZWwBF//8Hhx8OBB5s+f7+0wvpD89a9/ZdKkSdxxxx1cfvnl3HPPPZxzzjn86U9/Iisri9/85jeuZSsrK5k6deoJI5g++ugjkpKSWLlyJd/5zne45557uOmmm8jMzOThhx8mNjaWZ555Zryf2qDQ37epDx/jRE5ODjt3DnwSOxFRFEWXs331WDZtMpmYNGkSlZWV3g5lyAghSE1Npbi42KtxLLv0DP654Zc8/NqtPLP+XmKShj6KQQjBnDlzsNlsrrFjp2K8eoZb6tv7nDkVQXNd64DLPXbXK9SUN7r0YExSBBffsJT6480UHXa8v4SjXFrtL3wdOH+WEmmzn5jdFUIzznII2MZ2K5HBJpeolhLXGCZNeIOqCNQBktpSuO8PNx3bd59QHNldo+LIOGv9wh6xKwpYzEgpiZwUzIVXzWdmTiqT4sNONAZzUFfeRk1uD/n5+Wxet8Pj+WlP/8T1urq62LFjB1OnTmXSpEkDbldPtLa20tjYqMvxaVJKKisrdZfZdvYP+wTx2KKqKnl5eaddhtibplpDIT09nV27dnHjjTeyfft2/vCHP1BUVMQdd9zB1q1bBzUu6dxzz+U73/kODQ0NvP322/z+97/nrbfeIiIigvvvv5/Dhw8PqWUlLS2NJ5544nOXeeqpp0alfUTfdUM+fIwh8+fP58033/R2GEPCKYj1ZEgRFRXFwYMDZ3YmMklJSRw5coSsrCzdZTuSk5M5evQotbW1XhUJcclRxCWP7CTTaDSycOFC1q9fT0hIyOf+YRxPA61LblzGW09rxnz+ARbOunRgM57G2haP/tfqYw3876VN+LuPZHJmXnt7wWzCmQF25VWdglAIsJjAz+1Pu8NJGpeQFTS09TI/I9Qtw+wWkEMUqwaJYnTbtyMOaVaQVnuffpbOZXCkoSVILRZhdGSJVRAKYJeemWJHhvPL3ziLmQsz+OFXHnc9t75SbkFAoIXJaVFMnZuMX6CFrhozc89Nwm5XObheu2gQkxTBkgtmehxbu93O9u3biYmJ0WW/7UDk5+czefLkAWeJTnQaGhqw2+26uzChx/5hp6GWnkYuFRUV0dzczJw5c7wdyheWpKQknn/++VMul5KSMuAFyBkzZpxQcj0SSktLT5nkaW5uHhVfFJ8g9uHjJMybN4+HHnrI22EMibCwMI4dO+btMIZEREQEnZ2ddHV14e/vf+oVJggxMTHs3btXdy6eoGW4MzIyyMvLIzo6WneCvj/+/v4sWLCALVu2EBwcTHR09AnLjLeb9M2/uIzpC9Koq2pi4XkziUkcuGdyztIs1v2f04FZugRoV3uPp3hEy7xa/Ez09toICPLj/GsX8tbLWzz6gHEfPSScklkiheIQrYLGdhthgSYUASoCbPLEswEDSCPQS59wdmSU7WaB0u3IWOMmz6Wq9a5JQBFIKRAGBVSpzUFWVYThxPfac799H7OfyTErWTrUs3Y8wqMC+fmTq4hPjea75/2OzrYupJRkz0tg8ZValrSupJvH370Ti1+fc7qUkr1792IwGJg1a5bu3+OgCbOampoTyhT1QkVFBfHx8bor9dZj/7DTUCs4eHDO/ROBzZs3k5WVpasLD4NimBnbEe/zC0J7e/uoTM3wCWIfPk7CnDlzaGhooKioiPT0dG+HMyiioqLYv38/NptNN8Yxzj7i2tpaXZUBGo1G4uPjqaio0J0ghj5zraqqKhISEk69wgQnIiKCmTNnsnPnTs4880yPURPeGK0khGDxBbNOuZx/oMVREe12BuMuah1Z3dSpcfRaVY47zKk6WrrIP1ih9e+qzszrScYvOd2kpUCoktYuG3YpCQs00dhuRVEcI5ycy7qehGtKkidGx6gniSaKVenKFrvMXNzmJUuhIIQEadMMtJyCyNo3f9rDEEtIl9FWc10bD3zrWb7/4JW0t3S6Fjmyq5Kv33kB/ldayMrOJiQ80CPE/Px8GhoaSInN4s2/fUpiWgxLLtK3MM7NzSUtLU1XFw6d2O12qqqqRuxS6w3q6up09bcJtGx8eHi4ri4+nI6GWj6GTv+kTnNz84CJHrvdTnl5OW+99daoVADp55Piw8c4ExQUREZGhq6MtQICArBYLDQ1NXk7lCERExNDTU2Nt8MYMomJiVRUVOjK2duJ0WgkOzubvLw8rztOjxbJycmkpaWxZcsWl+GZN+cMD4ak9EkuMezsvfVACISAH/7+qxjNRlSHg7QQYHSKYdDEr6r2OTY7F8LZIyxQhNQmN0lJk7OPWFsQVHGCGLY7TLRO6P8VYMVRou309lLpM9cCTSgLgWsYlFS156aqmhDusYKtTxC71pGSyel9JbVSSjpauwh1E7xCCAKC/Jg9fwpnnnUmRUWFHm6nhYWFFBcXExOaxI++/Dgv/u5/PPSdZ3nt8Y8H85JMSGpra2lpaSEzM9PboQyLmpoaTCbThHSX/Ty6u7tpbm4mJibG26EMCT2agB04cMBnqOWDlJQUUlNTSU1NBeDxxx93/e5+y8jIYMWKFRQWFvLtb397xPvVRwrJhw8vkZOTw44dO1i1apW3QxkUQgiXSdVAZaMTlbi4OAoKCrDb7RNOsHwezmNcV1enu744gMmTJ1NYWMixY8dISUnxdjijQnZ2Nna7nc2bN7No0SL2798/YcUwwKU3LqOqrJ4tHx0gJTuOWx+6ivu/9SwVRbUAhEcHc/cTqzBZjAQG+2krSYmKQu7uUuKTI6kq1y6ACSmRVjs4n6Z70lhIVEVBMWq6s7HNSkSQaWD/KmfTsSK1bLDN3TtLE7rCH+hw3Ke6Z5G1nmEXzt5lg6FvIzY7CEhMj6GiqO9CmFAE0+alcM9fb+S75z1KV0c3UoXp81OZt3wK3/r5l/nP058SEOTHnY9ei8lsJNwczuLFi9m6dau2DSE4evQoS5Ys4d9//FRLjDsuGnz06ha+dueFg39xJghSSnJzc8nMzMRkMp16hQlIRUUFiYmJusvQ19TUEBYWhp+fn7dDGTRSSurr63XXN3/kyJHTMkM8nDFIo7FPvbJq1SqE0IwYX3rpJWbNmjVgX7nBYCAyMpKVK1dy/vnnj3i/PkHsw8fnMH/+fN555x1vhzEkoqKidNdHHBwcjNlspr6+XldX4oUQriyxHgWxoihMmzaNAwcOkJiYqJsy+89DCMG0adOw2Wxs2LCB8PDwCSuGAYwmA7c+dDW3PnS1674/v3MnGz/Yj8GosPySudTXtPCdCx7Dblc1cWnUnkuv1UbVsUYPAyoBJ4gOp3k0isMlGmho6yUiyKw5Ug9Qbe3YnGsd4X6n6uzztQMCKVXP1Z1GXM44TAakXdUEuyq1+ITgj2/dztH95VQU11KSV0V4dDBXffccAkP8eeK9u1jz1k4Cgv255PolCCH4yrfP5ivfPvuEOMPDNVG8efNmpJQsXbqUsLAwAkP9XdUPikEQnaCv2bdOqqqq6Onp0Z3AcWK1WqmpqWHq1KneDmXIVFdXExsb6+0whkRbWxt2u11X2fiioiIaGhp8hlo+eOGFF1w/v/TSS1xxxRXcd999Y75fX8m0Dx+fw7x588jLy/N2GEMiKiqKpqYmbP3LEScwQghiY2MHHOg+0UlMTKSqqkpXx9uduLg4/P39vT6GaTSx2Ww0NzdjsVjo6Oigq6vL2yF9Lq1NHTzzq3d47M5/cWh7EYEh/lx43SLOu2oBZj8Tz/3+Q00Mg+ccYtOJFzAkoDqFqE2bmyQAqQiPbHBDm02bRewQw9J5czwunPsCpNJvupKzCtpp2uU0ynI4TPf97NaXbDRoM4wd842DQvwIDgtk3vIpnH3ZPEwBFo6V1HNwZwkA8SnRrPrRl7jqOyvwCzi1o7KzTUQIQVNTEwe2FvCfpz/ThLuiEDs5irv+8LVTbmei4RxFM2XKlAl7UedUVFVVERISoiuDJ9B6FOvq6nQniBsaGoiIiNBV//DmzZvJzMw8LeaEn4BOxi5NRFRVHRcxDD5B7MPH5zJ37lwaGhooKSnxdiiDJiAgAD8/PxobG70dypBwCmK99eOGhoYSGBhIVVWVt0MZFs6MakFBAb29vd4OZ8Q4e4bNZjPnnHMOCQkJbNq0yeW6OhG574aneffZdax9Zyd3X/sXyo4edz1WeKicbZ8eHnhF9ywsjvMgixEsmlCWijb2SIJjzrBwZIgFje29miDGMS1JQZtVbEATrg5U56xiV+k1rlFOqmObApB2ta90WkpX0lm4m4UZjdp2hEAxGrDbNcH+q1te5IN/b2PrmsM8+P0XOLJvaBUuBQUFHDlyhKVLl7J06VLy8/NZ8/4mbL3a9hWDwqzFmSSm6a+Ko6ysDCGErkbp9aesrEyX8dfV1WGxWHQn5J2u2Hpix44d5OTkeDsMH19g9F8f58PHGBIcHEx6ejqbN292NfhPdIQQREZG0tDQoKsy3qioKGw2m+7GGAkhSE5OprS0lMmTJ3s7nGERHR1NeHg4BQUFTJ8+3dvhDJuBDLSmT5+OwWBg06ZNLFq0aMKVEXZ39ZK/z32GouTwjmKSs+IA+PV3n8fea+0bRQRaybIiwK66yqcB7T53Uy5FuBydJcJD1Da2Wwn2M2IyCnqkdBlkaSJbatXQru1o62CnL0NsACwK2OyOCmnNwRrHz9j7XdhyzTMWSINCS1Mnbz+3ka/cvIy8PaV92WsBezcfpbWxjdikSCZnnjw7J6XkyJEjlJaWsmTJEtf3xuLFi+lsX8vMikQOrC13bFdfvaugVTrk5+cza9YsXWX73GlpaaG1tVWXgthZLq2nvme99g8fOHCAK6+80tth+JiANDQ08Nxzz7Fz506amppcF1LdEULw6aefjmg/PkHsw8cpcBprXX/99d4OZdDosY9YURQmTZpEdXW1rgQxaMPsc3NzaWlpITQ01NvhDItp06axadMm3Y51OZmbtBCCqVOnYjKZ2Lx5M3PmzCExMdHL0fZh8TMROzmS2somVEdZdOrUeEArF6s/3qwJYINbNliqGAxGkjNjiE+fxMY1uQzsjtWHFFLL9jqcoLusKp09diJCTFS19vb1ETtmFatIrYTMOcoYLZOsuM8kRmIDTEJ7QNpUt7Iz99pq6coaYzJo2lhK2po7URSFjOkJFOVVaQ7aEl77y2qsnb2A5K7ff5Xzrz1xVI/NZmPPnj20tLSwZMkS8naU09qUz8JzpxMeEU5KfBbqhRIpJccONnPV984Z/IsyQSguLiYgIIC4uDhvhzJsSktLSUhI0J0ZmJSS6upq3Zk86bF/GCAvL093x3rQ+OYQD5vc3FxWrFhBfX3951YPjsZFK31ecvThYxyZP38+Bw4c8HYYQ0KPfcSAbvuITSYTCQkJlJaWejuUYRMWFkZsbCz5+fneDmXIDGa0UkZGBvPnz2f//v3k5uZOmNJ8IQQP/ev7nLEsm4xZSfz4z9czdZ5WjaIoCmd+aY5jSbceYoMBu11Skl/NpjWH+8SwXSLt6oDnQkLiMMjqc8hqaLcSEWTWtqn09RBr5dO4NRQ75g67n3MIoSWR/RS3vmb6eoedI6CkREjZt6pBcYn7C69ZAMD9T9/Isi/NJil9EkiJ1aqC2QRC4aXHPjjhuXR2drJx40Z6e3tZtmwZL/32Yx68+Z/86cevccv5v6O5oZ2cM2eweMlizrp6Cve/cj0Jqfpx3Qfo7e2loKCAadOm6SpD6Y7VaqWiokKXDvbNzc3Y7XbdlR7X19frrn+4pKSEhoYG5s6d6+1QfEwwfvKTn1BXV8fPfvYziouLsVqtqKp6wm2grPFQ0c8nxocPL7FgwQIOHDigq1mteu0jjomJobW1dcKbIA1Eamoq5eXlWK1Wb4cybKZMmUJ5eTnNzc3eDmXQDGXOcExMDMuWLaOqqoodO3Z49bVqa+7kl6ue5sqpP+Vv973FT59YxV8++Akrr1rgsdyP//g1bv31VXz11vNISnOIOocAllKiqrLPxwo0wTmAgBK9Eml3iF5FuzV29BIVpBlruQthqYDqOIyuBLGUfeOcnL8btRnJrseFomWz7dIxakQSHjLAuBqjggSe/8NHfPbuboLDAvjZH7/mSDo7SqsdbtoGk+fr2dDQwPr164mIiGDJkiUIDHzw6hbX4421rWxbfRCApOR4zjxzKSWlxR5zivVAXl4eERERupsl605FRQWBgYG6q/gBrVw6JiZGV8IStM+H3t4zn376KdnZ2aenoRZ9Y5fG+3Y6sGnTJi6++GIefvhhUlJSxtRYUF+fdB8+vMD8+fPp6upi165d3g5l0Lj3EesJs9lMREQEx48fP/XCE4ywsDBCQkJ0V6ruTlBQEJmZmezdu1cXF4CGIoadBAcHs2zZMux2Oxs3bqSjo+OU64wFLz/2AXs2HKGrvYe9G/N5/tH3B1zOZDZyyQ1LWfXDi7Qsp9PUSkpUo0Gb7+swuZIWw4BiWAKK3SFoFekSxQ3tViICtVJWj/FLAqQJl1AGBtiullVWEdgN0pVBFgiEM2MtQdrsWq+zKxiH4DUZ2PTRQX7/43/zi2/+E1VV8fM/saw2bUYShQfLaW5op6ysjK1btzJlyhRmz56NoigYTQr+/Vyog8MDXT87RzLl5+frRhTX1dVRXl7OrFmzvB3KsJFSUlJSQlpami4z3Hoct+TsH9abIF67di3nnKO/lgYfY4+UkmnTpo3LvnyC2IePU2CxWFi0aBEfffSRt0MZElFRUdTX13s7jCGTkJBAZWWlt8MYFmlpaZSUlEyYctzhkJWVhRBiwpdOD0cMOzGbzSxatIhJkyaxfv166urqxjDSgakub9B6ZgFVlVQfO/Gz2lDTwmN3/otff/tZjh44xvd+eRmhEUGaADYofYZa7qOYoK+02e5IFTjGHRmcLtOOW327lcggs9sYJc8MsuomiKWUnm3KDrdqidRcrZ19xoojDkffXEtzl5Y1VlXtf4mbwZbGwR3FVJbU84PfXNWXHXZwYEshd1zyB556+EV2bttN8bZmDLa+HndFUfjp4zfgF2AG4LxrFrD4/Bkex1FPothms7Fv3z6mTZtGYGDgqVeYoNTX19PT00NCQoK3Qxkyra2tdHR0EBMT4+1QhoSzf1hvGfkdO3awYsUKb4cxdoz1eKWT3U4D5s2bN27nIj5B7MPHIDj33HPZtGmTt8MYEtHR0TQ1NelulE58fDxNTU1ey9yNhPj4eGw2G7W1td4OZdgoisLcuXMpKiqasKXTIxHDThRFYcaMGUyfPp3t27dz+PDhUelDGixnX64ZyCiOGb4rLvccOWK3q3zv3N/y6du72PLxQe667E8AmhDWnoDnBh0Ozh59vv2MqTULaFzLNLZbiXQrmfYw1hICq9K3rOZY7ehkdjvhkga3jLBzOdcy0jWWydkCrfUYC7CpfcJXCIJC/UmbmsBPHrvOJagtFhN+QYIrfjyPuPQw3nhkOx+/vJOfXvUE7a1dPP7T17h25j28+fQa/vrxT3kn/3f88LGvDVjmqhdRfPjwYfz9/XUz1eBkFBcXk5ycrMvZyeXl5cTGxurOCKy2tpbIyEhdlXlXVlZSVFTE8uXLvR2KjwnIfffdxwcffMC6devGfF8+l2kfPgbB2WefzR/+8AdUVdXNH5uAgACCg4Opra2dUK66p8JisRATE0NFRQXZ2dneDmdIKIpCamoqhYWFussuuBMaGkpmZiZ79uxh+fLlE+qkdjTEsDvJyclERESwZ88e1q1bx9y5c4mIiBilaE/OOVfkEBIWSO6uYqbMS2HBOdPZuymfDf+3h+iEcKYtSKO9pa+XXrVLPntnJ10dPY47+qUA5ABpAYcTtAQMSHrds7pC0NhlxWwQBFkMtPTa+8Sv8/8AoN1zs9IEWOkTxQaB7LYjpdQmQ6mOWBS0FLPDWEsz2kIT8qodoapIRQFVJTI6mPAobdbrOZfPY8b8NKrK6jm0/xD+UZID68rZ/b8S7DZNVbc0tPP6X1bz8WtbkRLydpfyxM/+zSP/vu1zj7lTFG/duhWA9PT0z11+vHGWSq9YsUKXZcZO2traqK2t1WXJt5SSyspKXcZeXV2tu4z8hx9+yJQpU4iO1pfpnY/xoby8nMsuu4zzzz+fr33ta8ybN++kkzxWrVo1on35BLEPH4PA2Ue8c+dOFi5c6O1wBo3TtVlPghggMTGRI0eOuMp39URqaioFBQU0NjaOi7AaKzIzMzl+/DhHjx5l6tSp3g4HGH0x7CQ4OJizzjqLoqIitmzZQmpqKlOmTBnzCwE5K6aSs0I7tnm7S7j3q39FKFp/8JwzT7wYFBIRjLVXy2ILKZF2u2em2JmVdeJe8uw2cslZXm2T0NJlIyLQRIvV7lqnLyus/axKieIsyZYSO2CQfYupZgOqQaJ02UBKpEFB2N0ywO4u084svLO0WhF0d3lWsfgFG2ixVjEpLYj3ntxN0T6Hp4AQKAICQ/zpaO1CURTsdhXVrlJVMriy94kqik+XUmmAwsJCEhMTdTm+raGhAbvdzqRJk7wdypDo7e2lsbFRd6OLPvvss9O+f9gbJleni6nWjTfeiHB4Zrz00ku89NJLJ5wTSikRQvgEsQ8f44HZbGbx4sV89NFHuhPEW7Zs0VVmGzQ34H379tHS0qK7fiiz2UxKSgoFBQW6eq/0x1k6vXHjRmJjY70+13KsxLATRVHIzMwkJiaGvXv3jmu2GGDP+iMIgWsW8eEdRSy5cCZbPtIck6Piw6iraiQqNpT66hatTNlqB7N2ciCF0Myr3FyZXeIX3EqpHW7QDho6rEQGGClr0RK6Ltyzxe4nIEKAIvtKnwHpr0CHHZuUmBzrSMeirhMz6bZNZ322Y9srHeXjqqpSWFjI0aNHSZ6czFt/3kLR3ir8Asxc9f2VHN1/DKPRwPU/+hKtje189OpWFIOCaldZcYVnyfnnMRFF8eHDhwkICNB9qXRnZycVFRWcffbZ3g5lWFRUVJCQkKCrv5cANTU1hISE6O4ixI4dO3j00Ue9HYaPCcrzzz8/bvvyCWIfPgbJypUrx6WPYTQJCwvDYDDQ0NCgq5Iko9FIXFwc5eXluhPEoJ1gr1mzhtbWVkJCQrwdzrBxlk7v3bvXq6XTYy2G3QkJCeGss86isLDQlS3Ozs7GaBzbP5cpU+JRHWXQikEhJTuOX/z9JopzK3nsh69SVlDNf57+DP9AP4wGgc2q9s39BUAipIK0q3g0Dzt6eCVoJlvS80S/ocNKVJC5L5nbryBDBRQhPR9wtgk7M79CE+TCbAC7XdO+jl5iqTqWkYDNkR12e/3MZiPfuudiWlpa2LdvHzabjTmz5rHx3QNsX30YgJ4uKx+/to2XdjwIaKOVgsICePQ/t7Pzs1ySMmJYedX8IRztiSWKT5dSaYCioiJiY2MJDg72dihDxm63U1lZyeLFi70dypDRoyt2RUUFxcXFLFu2zNuhjC3eMLk6TTLE3/jGN8ZtX/q6BObDhxc5++yz2bVrly7G0TgRQrjKpvVGYmIilZWVujreTvz9/UlKSqKgoMDboYyYzMxMFEXxmuv0eIphJ4qikJWVxbJly2hsbGTNmjUUFxeP6XtxyUWzuOnnXyYpI4YzlmVz7z9uQghBWFQwpfnHkapEtUs6WruwdVu1bLC7eFIUpCI052nhUqx9j3s4T+O6NXRYiQx0GGu5Pz0BKALVKD2FtyPTq7rvWwqkQfbNQHa6SDtKooWiEGBRwK4i7Cpz5qcQEGghKiaEXzxxLQcPHmDDhg1ER0djawziuyv/yEt//gQcFyGklLS3dALwrz9+yNdz7mPVwgf47N3dfPOeSznvmoXDyuhNBKMtq9XK3r17mT59uu5LpXt6eigrKyMzM9PboQyLmpoaLBaL16thhoqqqtTW1upOEPv6h31MJHwZYh8+Bsn8+fPp6enRZR/xwYMHmTFjhq6yD84/kvX19brr5wJNSH722WdMnTqVgIAAb4czbBRF4YwzzmDDhg3ExcWN68niSMSw3dFXGhweQFjk8LJVISEhnHnmmVRXV5OXl0dRURFTp04lISFh1D9LQgiuvuVcrr7lXI/7g0MD8A+00N3Zq43zcvYCS4k0GrQeYukQraYBjo9bmAarxGZRcB971NhuZX6yo4pBei4PoBo0d2nsuEyqnWZdCO1+AahCwSAkNgWMUtHKuUET1XaVXzx5Iy31bUTGhDBrYTo9PT3k5+dTVlZEQmACK1euxGK2cPeV97rGUaEoDhMulSu/s4K648288uePXbF99OpWLrxuEdlzkodzyAHvZ4pzc3MJDAwkJSVlXPc7FhQXFxMREaHLqh7QMpaJiYm6+jsJ2t9Io9F4UrOhiYpv/rCPiYRPEPvwMUj02kccHR1NT08PbW1tuirfFUKQmJhIeXm5LgVxYGAgcXFxFBYW6tKx1J2QkJBxL50eiRju7urlnmuf5MieUhSDwo/+9HXOuXJoJbVOhBDExcURGxtLeXk5ubm5FBQUMG3aNCZNmjQmJ89SSlS7isFowOxn4oF/fosnfv4GjU0ddPVoaVxpMvYZUzkFav8yOSHcksQCU49EtahYzZ49xOEBJhThNlJJW9xhkKX9rAIGj/FKOBylHYsbNPMtg1mBTptHDIHBfiRnTCJySQZWq5UjR45QWFhIdHQ0y5cvd30vWXtt2G39Rl8ZjWC1sm3NYXLOmX7CsertsZ1w31Dxlig+nUqlrVYrJSUlLFiwwNuhDIve3l5qamqYNm2at0MZMs5yab29h3bs2MHvfvc7b4cx9vhKpgdNWloaQgjWrFlDamoqaWlpg1pPCDHiKh9fybQPH0Ng5cqVuptHbDAYiI6O1m3Z9PHjx7HZRn7S6w0yMzM5duwY3d3d3g5lxGRmZmIwGDh48KCWqRxDRlom/dlbOzmypxTQTKqe+vl/RhyzEILJkyezcuVKJk+ezJ49e9i8eTMNDQ2jejy2rD7IVbPu5ctTfsozv3kPKSXTclJ57D+3Y/Sz9C3oFMPQV85ss3uUSUv30UxSG79kN3mu09JpRQJhfkbthMDjqQjtsrkjc3zis9SEuFC1BaTDldrZV+yko6WLm770B9Z9so01a9ZQV1fH4sWLWbhwocdFOpPZyLW3rPTchZSgKJTkVfLZ2zs5+7IzXA/NXpLJtHkpAx7HoTLe5dNdXV3s3r2bGTNm6L5UGqC0tJSgoCAiIyO9HcqwqKqqIiQkhKCgIG+HMiSklL7+YR+nDaqqerQmqaqqVUOd4jYa7Uy+DLEPH0Pg7LPP5ve//73uXJtjY2MpKysjKyvL26EMidDQUAIDA6msrCQ5efhlkd4iNDSUSZMmkZ+fz+zZs70dzohQFIUFCxawfv16QkJCBn3ldqiMRs+wzWp3ajWAE7OOI8BgMJCens7kyZMpLCxk27ZtBAUFkZaWNmJ32t4eG4/+4F/0dlsBePuf6wiPCuLlxz6gt8eGCNIcZF3C1Cl+HRlioSj9RKt0E82ODLAi3NbRzLAaHX3EjV22AcqmBTYkRkXbhlQdY0RcB0Qg7I4UiEFAr8OIyxFIUIiJGefEMW1uFEWFxRzeXEPZoQbSsg/w0z9/nei4MI+IV/3wQj57dw81FY2eB0dCW3MnP3n8ei6+filWq51Zi9IxGEevWmG8MsV2u50dO3YQExOjy++1/litVgoKCsjJydFdltJJWVkZkydP9nYYQ6a1tZXe3l6ioqK8HcqQ+PDDD5k6daru4h4O7pPsxnOfeqS0tPRzfx9L9HNG78PHBCAnJ8fVR6wnYmJiaG5u1l2mUghBSkrKuH4pjjZTp07l2LFjtLe3ezuUEePv78+CBQvIzc2lrm5wc1+HwmgZaK24Iof4lD6jlm/cfcmon6ibTCamTp3K+eefT1JSEvn5+axevZojR47Q1dU1rG32dPe6xLCTl//4oassWHb3DLyi27xfd6Mt91mUEq2seaDS6oaOXqICzJ7rOLU2oBrxGL8kwKGunbv13KY0G0hMCeL8r6Tw9VunERbhx0f/LuQ/Tx4md/txOjt6ObS7lO+c+yi3XfwYB7YWesTzg4evwuxn6rtDVRGK4KKvLUFRFGYsTGfumVmjKoadjHWmWErJvn37UBSFWbNm6VZAulNQUEBoaKhuzZGam5tpa2sjMTHR26EMmerqaiZNmuS1CQDDxdc/7GOi4csQ+/AxBMxmM0uWLOGDDz7QVR+xn58fYWFh1NTU6C4jkZiYyOHDh2lubtalWUtwcDCJiYkcOXKEnJzBz0qdqERERDBz5kx27tzJ8uXLR63cczTdpIPDAnhq9c/I211CxKQQkrPiRiXGgTCZTKSlpZGamkpNTQ2lpaUcPXqUSZMmkZycTExMzJCyxqHhgbQ0dQAQHh1MU01L34M2lcAQA+0dvQiT0W1WsHCMVVI1MytHWbSQjjpnxWGM5ZYtdqeh3eZymkY6RLG7TjMBVoeoVrSftVFK2oZUwGCHoAAjM2aGM2NaOCaTIH9/I6/+LY+2ph6w2rXZyc4Y7Crdnb0U51Zx303P8Mr2BwgM0TLgc8/M4pVt99FQ00JHSydlR6uZlpNGctb4lIWOZaa4sLCQhoYGli1bpjsRMxBdXV0UFxezdOlS3Yr70tJSEhMTMZlMp154glFdXa3L2dVfqPnDvh7iUaO1tZWWlhZCQ0NH3RPHlyH24WOIfOlLX2LNmjXeDmPIxMbGcvz4cW+HMWRMJhOJiYm6zhJPmTKF6upqmpubvR3KqJCcnMzkyZPZvn07Vqv11CucgrEYreTnb2bumdljKobdcY44W7RoEeeddx7h4eEcPHiQjz/+mD179lBVVXXKY/Xq4x/T2tQBUiIEZM5I9Mh0IwQRsaEYBNDVA6rEbDFCjxUc834Vmx3R6ywRd6ttVunrdXY7QZNAQ6dj9JJzcel2U+m7dC60ccSuZYDwIBPzZ4dzzaVJfOtr6SQkBrJ5Yw3PP36YrWsqaWvu1USwyYBUQBgcLteKpr6llPR09VJf3exxLIJC/EnOjGVaThoXfW3JuIlhJ2ORKa6uriY/P58FCxbg5+c3Ktv0Ns6LP3obVeTEarVSUVGhS5fvrq4uWlpaiImJ8XYoQyIvL4+ysjJWrlx56oV9fOGx2Ww88sgjZGRkEB4eTkpKCuHh4WRkZPDb3/521DxmfILYh48hcumll7Jz504aGxtPvfAEIiEhgdraWnp6TlJ2OYFJSUmhoqJiVMSXN/D39yc1NZXc3FxvhzJqTJs2DX9/f3bv3j0iUylvzBkea/z9/cnOzua8885jwYIFWCwW8vLy+Oijj9i6dSvFxcV0dnaesF5jbZtLwEpV0trUwe/euI0ZC9KJjAtD8TdTWVKPFALhbwaBVmJtUBDWvj5pi7+mYEWvXdO1ziY2gyOTjKcwbujoJTLANHDjmbuBtdCEekKkH2fPieBbX07mm1+eTHJcIEeLWnn2lULeea+cwoKWgRMUFkcGTnHMK1YUFIMgOj6Mx+9+g2vn/oK//PyNE3q+K4pqufXix7hy5j08McDjY8VoiuLW1lZ2797N3LlzdVnpMhDt7e0cO3aMqVOnejuUYVNRUUFwcLAuX5OKigqioqKwWCynXngC8e9//5ulS5fq8pj7GF96eno499xz+cUvfkFpaSlJSUksWLCApKQkSktLuffeezn33HPp7e0d8b58gtiHjyGSmZlJSkoKb731lrdDGRKBgYGEh4dTVVXl7VCGTFhYGCEhIZSXl3s7lGGTmZlJc3PzmPTeegNFUcjJyaG9vZ28vLxhbeN0FMPuCCGIjIxk+vTprFy5khUrVjBp0iSOHz/OmjVrWLduHXl5eRw/fpyuri7Ou2q+hw/WyitzeOjbz3JoeyGdbd2odomqSlRnibQTRSDdylV7nBlig+JK5zqrp8Gt3Nlxq+vqJdTPiNng2IZznJLUThJigizMSg7m0nkx3HlJKlcsjyXAz8iGvfU8+e9i3lpTxf5DzXS021Dsqjaz2GjoZ1ituWKrJoNLeJv8TFz5rRVExYZxZG8ZrU0dfPDqVv7+q3c9juPv7nqFkiPH6Wrv4cPXtvHPh/87shdmCIyGKO7t7WXHjh0u47XThby8PJKSkggOHt6cb28jpaSkpESX2WHQBHFSUpK3wxgyH3/8MVdccYW3wxg3hPTO7XTgj3/8Ixs2bOCiiy4iNzeX0tJStm7dSmlpKfn5+Vx66aVs3LiRP/7xjyPel08Q+/AxDC6//HL++9/xOykbLRITE6moqPB2GMMiNTWV4uLiMR/5M1aYzWYyMjLIzc3V7XPoj8lkYuHChZSUlAz5fXW6i+GBCAoKIj09naVLl3LhhReSkZFBV1cXeXl5rF69mvruMn7490v59m/O574XbqC1qZWj+48B0NXhMMQTeCZyncLWZNB6iQ0K0tmzbDa4zLAUx7rYNcXtPGESQKdNpctqJzLAREywmTMSgrkkK5Lv5MRz7/IUbs6JZ1ZyMG09Nt7YVs2f/1fCh1tqKCjrwGrVNiRUqblNS8Coid9rvnGm5wGQEs2uWsMvwMzN91xKVWmdRzn3B69uwdrbVwZXfazBY4TUey9upLGudQSvxNAYiShWVZWdO3cSHBzMlClTxijC8aepqYmamhqys7O9Hcqwqa+vp6enR5dmWq2trXR0dOhu3FJ9fT27d+/m0ksv9XYoPnTAq6++yvTp03nvvfdOmJKSnp7O22+/zfTp03nllVdGvC+fqZYPH8Pgsssu45lnnsFms2E06udjlJCQwMGDB+no6NDd7Mv4+HgOHz5MXV0dkyZN8nY4wyItLY2SkhIqKyt1eRI2EMHBweTk5LBz505XFcKp+CKK4f6YzWYSExNd7wObzUZLSwvNzc20RGn/B0zu5frfLKWltpPOll7sNjBb/Ghq6KLiWDOdrb10tFnp6dRcrqQikOY+sy33yy6KAsGBJiIjDAQHmgjyMxJkMRDsZyQwwIBBEXx7QQJWVXK8tYeq1h62Hmuhqq2Xxg6tR9nkNM9W3OuoQbGq2pgl4XTlghUrp1FdVu/5pIUAVQVVE+WXrdIE85S5yWz/NNdl0mXvtdPZ3k1ohDYT9oxlWaz/7z7XZlRVsm/zUZpqWklIjWbheTPG3NBpuEZbhw8fpre3l4ULF+rWdKo/UkoOHz5Mamoq/v7+3g5n2JSUlDB58mRdfv+Ul5cTGxurOyOwN998k4yMjDEb2zch8ZlqDZuioiJuv/32kxpTKorCRRddxF/+8pcR70s/Z/I+fEwgFi1ahKIofPzxx1x88cXeDmfQmM1mYmJiqKio0N2VfYPBQHJyMsXFxboVxEajkenTp3Po0CFiYmJ0dzJzMmJiYpgyZQo7duxg+fLln2sY5BPDA2M0GomMjCQyMtJ1X3FeBb+94zksQUYCQsycecks4lIjOFZcTeqsEAKCzJj9DKh2id2uojqMs5zJ1JtuytQqlRWByaggpaSj205bj532Hhvt3Xbaum1UdPRgMiocb+vho6JGbXqT3c1t2qPWWsOughGJUEHaJXYBBtUxi9gmWf/xAWSXDaEofQ7XUiJ67K6a8JzlU9i9/ggBgRaMRgWbTQUpmb00k5Dwvgt2t//manauzaOzvQcEBAX786cfvordZkdKuP5HF/H1Oy8c09cHhi6Ky8rKqKioYNmyZbq6cHoqKioq6Ojo0NWkhf50dnZSXV3Nueee6+1QhoyUkoqKCubMmePtUIbM+++/z+WXX+7tMHzoBLPZTEdHx+cu09HRMSrnUqfPN7QPH+OIwWDg4osv5u2339aVIAZcI4CysrJ0l7FISUlhzZo1tLe3ExQU5O1whkVCQoKr/2XGjBneDmfUSE9Pp7W1la1bt7J06VLMZvMJy/jE8NBIm5rIb168nYPbCklIm0T2HG1kWkZaB7df9xR1x1swGgX+gSYtaRtsQVhMmC0KX/lqGu/+XzlddhW7Aaw2lVa7xCYE9mA8RjD1BoC/v4GoABOqot2H3dNNWmh3OUqvBXZ/ibHTYRitaHXcdjsY7JpztM1owGAGabMjVKGpa1Ur75YCDEJQdKicv9z9OoqioKoqGTOSOPfqBVz41UUIIejq6KamvJHI2FDCooLobOsGCUajgl2VrvHL/3tp07gIYhi8KD5+/DgHDx5k0aJFuqvG+TysViuHDx9mxowZur6gV1JSQkxMDAEBAd4OZcg0NDSgqqru5j739vayceNG7r33Xm+H4kMnzJw5kzfffJMHH3zQ42Kxk/r6et58801mz5494n35eoh9+Bgml112GZ999pm3wxgysbGxdHd363IEkL+/P/Hx8aM2BsUbCCGYNWsWpaWltLaOXx/kWCOEYM6cOQQGBrJly5YTHMF9Ynh4RMeHc86V811iGKDgUAVNx1vApmLvVWlv6Ka5w05jQw8Ndd3U12r9xo2NPTS0WWlus9HRpSLRErgeCMAG9V1WIv0dTtMCpKL97zJocc5bcupoR58w7v3wBufKmhu1BDAatGVUzaFLBpiRAWZsUvLXX7+HUBRUuwoSaisbueyby7D4mSk8WM6qeb/g+yt+w01LHqSqpK/8urmhHamqgCbGI2NCR/OQn5JT9RTX1NSwe/du5s2bR1RU1LjGNtbk5+cTHBysa3Mwq9VKaWkpGRkZ3g5lWFRUVJCQkDCk+eYTgY8++giz2cyCBQu8Hcr4I8f5dppw2223UVtby4IFC3j++ecpKSmhq6uLkpISnn/+eRYuXEhdXR233XbbiPelr0+TDx8TiPPPP5+qqir27dvn7VCGhMFgIC4uTrfmWpmZmRw7dozu7m5vhzJsQkJCSElJ4eDBg6eNwRb0OU/7+fmxdetWlyj2ieHR5ZUn12C3q5o+lZpxE0Ig1P7vJekoeXYYX9mlp4B1YLBCfaeVqACT5kbtJoil+0mW84xBAM6X0Glk7fhXqhIMBs2pWnFT3/2FuL8Z1S6RQtuoYlA8Zka/9Oh/6WjTPuMdrZ4jqoQQLDhnGooiiEmK5Id//LrH45XFtTzz63d56ff/o6WxfYAjOHJOJorr6urYuXMnc+fOJS5ufGZgjxetra2UlJQwc+ZM3VUXuVNSUkJISMiAGaeJjt1u160Hxdtvv80ll1zi+/73MWiuvfZafvKTn1BSUsK3vvUtMjIyCAoKIiMjg29961uUlJTwk5/8hGuuuWbE+/KVTPvwMUyCg4M5++yzeeONN3TXy5OYmMiePXuYPn267q4yh4SEMGnSJIqKipg+fbq3wxk22dnZfPrpp7o9uTkZiqIwf/58tm/fzvbt28nJyWHHjh0+MTyKGM1GhBBIqZUnC0XrD0ZFM62SDrHiFC2OxK3i6PV1qVNHf7ABqO/uxd9oINCs0GFVXWXTCBDOMUz9NFCPBIvTSAu0/SrCVRrtWt61ntsdAlSDQta0ybQ3aOZYP3j0Ote2rb22vnJtCalT4jhWVItiUPj+A1dy4XWLtOfeT5g1N7Rx56V/0PqNpWTLR/t5avXdGAyj/z3Xv3w6LCyM7du3M3v2bF1nUAdCSsmBAwdITU0lJCTE2+EMG7vdTnFxse7+ZjupqanBYrEMyrxworFu3Tr+/Oc/ezuMcccbY5BOl7FLAI8++iiXXXYZzz33HPv27aOlpYXQ0FDmzp3LTTfdxOLFi0dlPz5B7MPHCHB+SB9++GFvhzIknL1H9fX1ujSoyszMZMuWLWRmZg7Yq6oHTCYTM2bM4PDhw6eVwRZoVQgLFixg69atfPrpp4SHh/vE8Chy848u5Oc3P0d3V69Wniy1Xl38TH0i2IkqkUqfAFZs0jPb67jfKiXNPTai/E102Ho0lWylT8NK6VmKJwQyUCLaNQ2uAMJ9GeH8XWoi2S49BbUE/Ezc//cbByx5/uqdF3J4RxHWHhtmfzN3/e46UqcnIgSui3gDZSmP7C6lvaXL9XtZfjV1lU3ETh6bbKBTFG/evBkpJbNmzdLlbNhTUVlZSXt7u66NtACOHTuGxWIhJibG26EMi4qKChITE3WXod+zZw/Hjx/nvPPO83YoPnTIkiVLWLJkyZjuQ1+pIR8+JhiXXnop+/fvp7q62tuhDAkhBImJiZSXl3s7lGERERFBWFgYJSUl3g5lRCQkJBAYGEh+fr63Qxl1pJSoqooQAlVVT6vScG8zdW4y13znbEcmVrtP9Nihx3biwgJNkAqQCOz+ikcZtXvStqHLSqS/2bMdzSWIxYlZB4Ojj1iRCCm1WcQ4jLMcIli45gs7xi05s81SM8X69gV/4I8/fZ3efrHPWpLFc1sf5KHXbuO5rQ+QMWsyBoNyyoqW+NRol1gQQuAfZCEsOvjzD+gIsdvtrp9ttgFeA51jtVo5dOiQ7o20VFWlsLCQzMxM3QlK0EypampqdFlR9Prrr3POOeecVgZzg2a8+4dPsz7i8cIniH34GAFJSUlMmzaNN954w9uhDJnExESOHz+u2xO4rKwsiouLdRs/aCfss2fPprS0lMbGRm+HM2o4e4bNZjMrV65ECOHRU+xj5Ij+FxiEABWMiueJvnT/VTjMsCRIITzPnXqhrttKVKAJadB6iKXTROtkJ1fOhL9BIOxaploT3wKMClK4GW9JATa742fpDIfOHitr3trFO8+uP2HzUXFhzDt7KuHRgy/RnZwZy48fv5741GhSpsbxqxe/h5//2FWR1NbWsm3bNmbOnMmZZ555UqMtPXPo0CFCQkJ0XwZeWVmJEIL4+HhvhzIsqqqqCAkJ0eWEhU8++cQ3bsnHhMYniH34GCGXXXYZ//vf/7wdxpAJDQ0lKChIt+Za0dHR+Pv7U1ZW5u1QRkRwcDDZ2dns2bPHI9OkV/obaFksFhYtWoTRaGTLli309vZ6O8TTAukUlo4+YmkxgcmATe0TnAMZaGl3u/UYOzJlxm6o77YS5efIACpgd5whaO9KR3a3HzZHr7CHDBfatqXzDMPRWyxURyYZt+WNCiiC48cahn4QTsI5V87n2Y2/5K+r72bGws+fFTwSampq2LFjB7NnzyY5OfmU7tN6pKamhqqqKubMmaPLrKoTKSUFBQVkZGTozjcDtPhLS0tJTk72dihD5vjx4xw4cIBLLrnE26H40AEGg2HINz8/PyZPnsy1117Ljh07hrVf/X0r+PAxwbjiiivYtGmT7kboCCFISUmhtLRUl+WsQggyMzMpLCzUXHZ1TEZGBmazmby8PG+HMiJO5ibt7Cn28/Njy5Yt9PT0eDnSiYPNaufJn7/B9Tm/5Bdf/yuNtYP/HhHuplmKQBoV5wPa//1K55zJXiHdlnEuLzVjrSg/t9FLZk50h/YMAGuQJqpdl3Lc+oilIjwywlovseop2IVAlZKlF84c9POeCFRVVbFz507OOOMMj57h00kUW61W9u3bx4wZM3Q5r9ed6upqent7ddvf3dzcTHt7uy6z9C+//PJpaTQ3WJymWuN90ytOs8ih3Hp7e6moqOA///kPZ511Fhs2bBjyfn2C2IePETJnzhwSExN5+eWXvR3KkElISKC9vV2XM4kB4uPjMRgMuu2FdiKEYO7cubounT7VaCWDwcD8+fMJCgpi48aNtLW1eSnSiUNdVRN/ued1/vfyJhqqW9i76ShP/OzfJyxn7bXx1t8/46+/fJOD2woBWLhiKopBoCjCMRpJuoStMwEsFc++Xwma0D1hPJPmJF3fbSXSz4TLiNrg+N8IAsGApdMmTRCrFuESw8K5M4sR1e5YSVU1QSwdP9u18mlFEfzyr6uYf/bU4RzCcUdKSUlJCXv27GHevHkDlt+eLqL44MGDhISEMHnyZG+HMiLcs8N6NfYrLS0lKSlJlz3cb7zxBqtWrfJ2GD50gqqqQ77ZbDaqqqp48sknsdvt/PrXvx7yfn2C2IePESKE4IYbbuDf/z7xRHaiYzKZSEpKorS01NuhDAtnlrigoED3WeLg4GCmTJmiy9Lpwc4ZVhTFJSI2btxIbW3tOEc6cTi4rZCbz3qI1a9vx5mGVe0q5YU1Jyz7+zte5p8P/R//fXEjP7vmSfL2lJI2NZ77/raKxedN58pvnqUtaNc+A9J9xJBDkEr6ZgsLR1+v0zRLop0MNDmMrcL8jJ5jltzPFPqLYucyRgWhOjITzmWEQPUzeJZIg6v0Wgi47lvLiYrTxwgZVVU5cOAA+fn5LFmy5HPnDOtdFFdXV3P8+HHdl0qDNhu6vb1dl+XGoH2/VlZWkpKS4u1QhkxBQQH79+/n2muv9XYo3sNnqjXmKIpCbGwst9xyC1dffTU7d+4c+jbGIC4fPr5wfP3rX2fbtm267MdNSUmhsrJSt4ZHzhK4Y8eOeTmSkZOenq670unBimEnQgimTZvGrFmz2LFjB4WFhbos2R8pb/z1U2xWx4UPZ3YXOOuSuScsu+nD/Y7ltGzXx69t5dCuEh667V9s/vgQ/3t1KxazAcWmgqr29e7iyOziyBorwiV+td9dCyGFQAUae6xE+5kcc5TchLT7XGH3kmfpdv7l5nrtwmzst7yjZNouMQmF1/76GXde+1d+91PNmLC+upmda3Opr24e4hEdW3p6etiyZQtNTU0sX76ciIiIU66jV1Hc29vL/v37mTFjBv7+/t4OZ0RIKcnLyyMzM1OX2VWA8vJyQkJCCA0N9XYoQ+aZZ55hxYoVxMbGejsUH18QMjMzh9XC6BPEPnyMAqmpqcyfP59nn33W26EMmdDQUEJCQnRbdqwoClOnTiU/P1/XjtPgWTrd0DB6JkNjxVDFsDuJiYksXbqUoqIi9u7dq7us+EgxW4yuNl5hUEhMi+aOR69j1U++5LGctdeGdO+7BWw2O/9++jOsjoxur9WujS2SUhOlrrnD7n3COFyfoa+uGUe/sOP3/sZagE1xLO9Y1NUsLF0roxq1fdndxzmBS0SrbgZgIBCqSmR0ENbevs/r2vf3sf3Tw9x81m+47xv/4OZlvyF3V8lQDikA7z67jq9M+xlfnfsLtnx0YMjrD0RLSwvr16/HYrFw5plnDkkk6lEUO12l9V4qDVqvd3d3N6mpqd4OZVjo2UwL4J133uGGG27wdhg+vkD86le/GlbFoE8Q+/AxSqxatYq3337b22EMi9TUVEpKSnSbqYuPj8diseh+LjFopdNTp05l9+7dE9qReSRi2El4eDjLly+nvb2dzZs3093dPQaRTkxW/fhLBIdrMznDIoO4//nvcNHXl5zggGsyG0lIi+4bX4TkkhvOpKK4TltACJcAlkYFYXCkdukrh9bKo2Vf5tgpjF21zMLVM+whiB39w4g+nasZtog+8xZAdezSHqA4ssRuRlpCaCXcQvQ1N6uSxpoTr+C/+Y+1WK2aSLb22vjP058O6ZgW51by9wfeobOtm+b6Nh659QU62kb2nqqqqmLjxo0kJyeTk5OD0Wgc8jb0JIrLy8uprq4+LUqlVVUlLy+P7OzsYb1uE4GGhga6u7t1OXt48+bNVFZWcsUVV3g7FK/iM9XSBz5B7MPHKHH11VeTl5fHwYMHvR3KkImPj6e3t5e6ujpvhzIsnGW4BQUFE1pEDpa0tDRCQ0PZu3fvhLxIMRpi2Imfnx9Lly4lMDCQ9evX09TUNIqRTlySs+N4cev9PLPu57yw5X4S0yaddNlH/n0bK66Yx5yzsrj36ZuYckZKn3B2Wke7lV07M7rOMmmEQEqh/e7eG+xYxjWFyXpihhiDllm2u7/E7qJXSlSDoydZUfpice1AIs0Gz5Jr4bYNB5ExIQSHBngsYjIPTcTUH2/2+N3Wa6e1sX1I2+gLW3LkyBH27t3LvHnzyM7OHpFA1IMobm9v58CBA5xxxhm6L5WGvjYaPWe6i4uLSU5O1qUZ2HPPPcdll12my7nJPr54+ASxDx+jRGRkJBdccAHPPPOMt0MZMgaDgZSUFF1nWCdNmkRYWBgFBQXeDmXEOEunW1paKC4u9nY4HoymGHZiMBg444wzSE9PZ/PmzbrsxR8OFn8ziekxmP0+v7cxOj6cnz6xikdeu40zL54DwPzl2X0CWErNudlqd5llASCEtohj9q9HX7B0CGHniCWhzSKuG0AQI0B110fO1LNTTRsd2zK6j3vqay4WzhhdN8d27Krr9ss/f51vuGXNg8MDuf6uC127rCqp4+XHPuDdf66jp2vgi17T56cRFReGULSM95QzUohJOnWvb39sNhs7d+6kvLycs84663PNs4bCRBbFdrudXbt2kZycfFr0e9psNo4cOcK0adN0OXcYoKuri5qaGl2We9vtdv73v//5yqXBZ6qlE/RZQ+LDxwRl1apV/PjHP+bPf/6z7v4Ip6SksGbNGjo6OggMDPR2OMNi2rRpbNq0ibS0NN1nOMxmM/PmzWPr1q1EREQQHu59J96xEMNOhBBkZGQQHBzMrl27aG1tZerUqbov2xwrbv7ZxQSG+LNvayFFR6vpsdpRVBW11+6ZiQXXCZIUmqeVa5xSv+UUtAxxuMWEUQhs7pleBZeoFnbcxLi2AdUkMFhBGkCxOfqYHWJc6bb27cRuc2Sp3cQ8YDQZSM6K5cWt91FT3khMUgQWPzOgjae6/aLf093Vi1RVdq3N5aFXbjnhmASG+PPE/37Ep2/txOxn4vxrFg75e7izs5Pt27djNptZtmwZFotlSOufCqco3rp1K6AZ6U0EDh8+7Kq0OR0oLi7G399/1C5meIOSkhImTZqkyxnQ77//PjabjfPOO8/bofjwMSj0dcbuw8cE55JLLqGxsZG1a9d6O5Qh4+/vT2xsrG5HMAGEhYURExNDfn6+t0MZFSIjI8nKymLXrl1edwEfSzHsTkxMDMuWLaOqqopt27bR1dU1JvvRM23NHdRXNfHV76/gty99h1c3/JzwqCAwKWA2IGzO8UuaQ7QAFGepdP/rC6Iv0SsFtFvtdNtVzyyxZyW2R/bXiWoAicRmURCqxCQEF180E9FlQxoNWum/lGA0epp9AfPPnkJSejRH9h2jsbaNyZmxLjEMsHdjPp3t3ah2FSlh9/ojdHX0DHhswqNDuOp7K/nyjcvwC/AUs8WHKzi0vbDP3bsfx48fZ/369URERLB48eJRF8OuGCdYpriqqory8nJycnJ0dyF3IHp7eykoKGDatGm6vaBmt9spKyvTZXYY4MUXX+S6667TrbO3jy8evgyxDx+jiL+/P1/5yld44YUXWLlypbfDGTKpqans2LFD1yYkU6dOZe3ataSnpxMcHOztcEZMZmYm9fX17Nu3j5ycHK+c4I2XGHYSHBzM8uXLOXDgAGvXrmXGjBkkJSXp9uR2NPnsnV388cevYZcgzCakEJj8zBjNBhKSoyk/3uwyVJGKQBoA6TZqyXkMbXieATh1kNrXR1ztKE1WBbjrJOEy+BJ9YlkRoIA90Ajtdmw2lY8/PAQWo6adzUaUli4UhzA2W4zc/LNLSEqLJnNmIj+8+kmKcqsAiEsMQ5GSS29cxmXfXEZsUmTfvhVBUKg/Fv+hnWg//8h7vPHkJ4BWSv3of+5wlar39vZy8OBBampqmDlzpmuU21gyUTLFHR0d7Nu3j7lz5+q2Mqg/BQUFhIeHEx0d7e1Qhk1FRQVms1mXz6Gjo4NPPvmENWvWeDuUiYE3Sph9JdNDRv+XAn34mGDccMMNfPDBB7o0d4qMjCQwMJCysjJvhzJsgoKCmDx5sq5m+X4eQgjmzZtHQ0ODV7L34y2GnZhMJubNm8cZZ5xBbm4u27dv/8Jni6WU/OXe/2C3q2A0oqoSKQS9PVY623soL6sHwOrn+NPuMNRyGW+5ZYgVtySvK0OsADao7+71yBBrywisRu0XKQHV8Yhbz5odbfs2R6m03a469i/AoCANTvcu6O2xERhsYe7STDZ/dNAlhgGOlzdRWVzH0/e9xd5N+cxaksk3776UkIhA4pOjeOD57wwpk9nR1sUbT33i+v3InlJ2rs3V9nX8OJ999hlWq5UVK1aMixh24u1MsbNvOCEhgfj4+HHf/1jQ1dVFSUmJrku/pZQUFhaSkZGhy4uAr776KtHR0SxYsMDbofjwMWh8gtiHj1Hm7LPPxmw2884773g7lCEjhCAzM5PCwkJdz4XNzs6mrq6O+vp6b4cyKlgsFnJycjh8+PC4zif2lhh2JzY2lnPOOQeTycTatWs5duzYhHTeHg+klH3lvk6h6byBK40rTdrr1Cd2+8YwOU21XEZXCq6bBIQN6rscxlrOw+zIJNuMuAS1EOKE8UuaaZegN9jRpOxhpCWRAea+2IGI6JBTPudjBTUAXHPbeby69zc8tfpnTMtJG9JxUxQFpZ+wEIpk9+7d7N27l2nTprFw4UKv+A54SxRLKTlwQJvTPGPGjHHb71hz+PBh4uLiCAsL83Yow+b48ePYbLZxvTgzmrz22mvccMMNuhTzY4Fv7JI+8AliHz5GGYPBwNe//nVefvllb4cyLOLi4jAajbp2+vXz8yM7O5sDBw4Ma0D7RCQqKorp06ezY8cOOjs7x3x/E0EMO3EajM2dO/cLnS1WFIUbfniR551OwSkg0FlG7LhgIBWHGHY3z3LvI3acATiFs1ZXrZVMR5/gfC3B33Gi5eop9nSOdp3/+hn67nfHoGgaWxFc/Z2zmbMkA1VVOfOiWWRMT+hbTlURBgWjycCcJZkAbF9ziKun383lWT/hDz98ZUifa/9ACzfde5nr93O/PpdWWe3KCk+ePNmrJ+/eEMXFxcXU1NR4/bM9mtTV1VFTU6P77HBBQQEZGRm67Oeurq5m06ZNXH/99d4OxYePIaG/T5sPHzrghhtu4NNPPx3XbN5o4cwSFxQU6DoTl5amZZEm2tiikZCamkp8fDzbt2/HZrON2X4mkhh2Jy4uziNbXF5eruv36HC45vsr+dlfVvXdIQCDJno7G9s95/u6jVRyIt3FMY4ksNJXMq0IqOvqN3pJwdUj7L6uawOy3/3uWWvpthwCVRGYLSa+vGop77+8hcun/Zyvzn+AFZedwZnnTwebzVXh/e37ryA5Ow5VVfnd7S/T1akZaa35zw62fjy0ee9f+d5Kntt2Hz9/5VqmLI/xalZ4IMZTFNfW1pKXl8eCBQsmzPMfKaqqcvDgQbKzs3X9nOrq6ujo6CA5OdnboQyLZ555htmzZ5OZmentUCYOYz1e6WQ3H0PCJ4h9+BgDZs+ezdSpU/nrX//q7VCGRWJiIqqqUlVVdeqFJyiKojBz5kzy8/NPq2zizJkzMZvN7NmzZ0zE4EQVw07cs8WHDx9mx44ddHd3ezusceWsL81m+rwUh310nzoVQiDauz0EsHMZqcoTxbCKSwy7L1/fbSXAaCDA4JZCdltvIISjr9iZAVbFwCtIi5HeLis/uOpJ/vrgO1h7bVh7bTzz0Hsc2FaoLSMlBoNC9THtgqLdpmqu0m5v99amjpMHMwDV1dXsP7wbk5+Rc845x+tZ4YEYD1Hc3t7Orl27mD17NhERQ5/RPFFxXvh0XgjVKwUFBaSlpenS1FJVVf71r3/xve99z9uh+PAxZHyC2IePMeLWW2/lX//6ly5LdhVFISMjQ/dZ4ujoaGJiYsjNzfV2KKOGoijk5OTQ0tIy6uOlJroYdseZLTYajXz22WeUlpbq8rM2HAwGhYdf+BZLzj+x91NIXCLZ2T8sAWlzyxo7UfAsr3aI4167pLXX5tFH3P/Iun53ims7CLeNWwMd7x3niCbnz0bt/qa6thOyGGFRwQhH7Ha7SmL6JABMZiMXfX2Ja7nwSSEsPn/mwAenH52dnezevZvdu3dPuKzwQIylKLZarWzfvp3k5GTd9qcORFdXF0eOHGHWrFm6LDN20tTURFNTk25F/Zo1azh+/DjXXXedt0Px4WPI6Pebw4ePCc51113H8ePH+eSTT0698ARk8uTJdHV1UVtb6+1QRsT06dOprq4+bQy2QDPZWrhwIUVFRaOWxdeTGHbini0uLCzks88+o7KyUtcXcQaL2Wxk8cqBeyUVWz/5KgQG0IytnMbQAi2j6xDMrt5iBY/RS/23YzNxYmm0ABzjnZwP2YOMfaXbqqrd0MYm2RWF8KhgMmcmujYdkxjOsaPVSFUiBFxwzUIuuHaR6/HbHr6aB57/Nnc99lX+uvpnhEV9/ki13t5eDh06xKeffoqUcsJmhQdiLESxlJJdu3YREBCg6x7bgTh8+DCxsbFERUV5O5QRcfToUVJSUjCbzadeeALy1FNPccMNN5w247tGCyGlV24+hoZPEPvwMUYEBgZyww036LZs2mg0kp6eTkFBgbdDGRH+/v6nncEWQEhICGeccQZ79uyhqalpRNvSoxh2x5ktzsjI4NChQ2zYsIG6ujpvhzXmzMxJxWAyePTrKsCcWW7ZPzcTLUObva8f2F0Iuy/naOCt79dH7BK6ln53gLZ/t2yz83HVTXwKtBNDJOBnoqmujXOuzOGuR6/hrkevca/8RigK/kEWDIa+UxQhBAvPncH51y4iLDLopMfEZrORn5/PJ598QltbG8uWLSMnJ2dCZ4UHYjRFsZSSQ4cO0dnZ6bVZ5mOF00hr+vTp3g5lRLS2tlJbW+u1edQjpaamho8//thXLq1zKioquOmmm4iPj8disZCSksKdd9456HOMhoYG/vnPf3LFFVeQkZGBv78/oaGhnHnmmTz77LMT+hzMJ4h9+BhDvve977F69Wpqamq8HcqwSE1NpaWlhcbGRm+HMiKcJWglJSVejmR0iYuLY+rUqWzbto329vZhbUPvYtiJoiikpKSwcuVK4uPj2blzJ1u2bKG5udnboY0Zmz/NRbU7TjAcs37D48OoPFANOEqmkUi71JK4djezK3AIY9yW7RvJVOc2esm9Hdju1Mhuy0tk3ygnJ0JoywrhaawlAYNASsk/Hn6fsqPH6e3uxT/Q4iqXRkr8AiwMBVVVKSkpYc2aNVRXV7Nw4UIWL15MaGjokLYzkRgtUVxYWEhlZSWLFi3CZOrvHq5fThcjLdBeo6SkJN0+jyeffJK5c+cyc+bgWhm+UOjEVKuoqIh58+bx/PPPs2DBAu666y7S0tJ4/PHHWbx48aBMYv/zn//w7W9/m23btrFw4ULuvPNOvvKVr3Do0CG+9a1vcfXVV0/YCi6fIPbhYwyZOXMmc+bM4amnnvJ2KMPCZDKRkpLC0aNHvR3KiHAabB05cuS0M2BKT09n8uTJbNmyZcjmYaeLGHbHaDSSmZnJueeeS2hoKJs2bWLnzp3DvmAwkTEYlL6krNREaX1LF60NjufqcKB25IKx+fXLDFpPsmEBDd1Wov3NjnnFbo85vX7cjbYcpdMu33PHCZk1xG3usIrmgE3f/1JK3n5uPU/98i2MJgNGk7bxyZkxXHHz8kEdAykllZWVfPbZZxQXFzNr1iyWLVum+/JZJyMVxWVlZRw9epTFixefdqWsp4uRVmdnJ5WVlWRkZHg7lGGhqiqvvPIKt9xyi7dD8TECbrnlFmpra3niiSd49913+e1vf8tnn33GXXfdRX5+Pvfee+8pt5GVlcW7775LRUUFr7zyCo888gjPPfccR44cISkpibfffpu33nprHJ7N0PEJYh8+xphbbrmFl19+eUKXinwe6enp1NXV0dra6u1QRoTTYOvAgQMT9grlcJk2bRpRUVFs27YNq/VkKseT01EMu2M2m5k+fTorV650jWnav3+/7i+I2G12WhrbkVISHeuW/XTL/NoDHKrVmXA1K0hFoPT2e9+rHot5lFfXd1qJ9DOe6BPtnInksaLjZxMe4lkYhesx6fz+U1WUrl5HYBLnacjRgxVYrSooBq7+/rmEhJ9avNXW1rJ+/XoOHTpEZmYmK1asID4+/rQqCYbhi+Lq6moOHjzIwoULdZ0pH4iOjg6OHDnCzJkzdW2kBVp2OC4ujqCgk7cCTGT++9//0tjYyFVXXeXtUHwMk6KiIlavXk1qaiq33nqrx2MPPvgggYGBvPTSS6e8sHzOOedw2WWXnXA+ERsb6yqnX7du3ajGPlro+1vEhw8dcPXVV9Pa2jphr4qdCj8/PyZPnsyRI0e8HcqImTlzJg0NDboeJzUQQgjmzJmDv78/27dvx263f+7yp7sYdsff3585c+Zw9tln09PTw5o1a8jNzdXlKK6CA+V8Pec+rpvzC24++xH+8qt3PRcQgJTYTf0EoZSoEoy9nncr4GGE5U5TjxVFCEJNJ45/kbjpb/f/Fc9WZGdZNUKA1YbotpIcG4JiVx3u0w71rCi4R/HSHz8+6TGQUlJXV8fmzZvZtWsXCQkJnHvuuSQnJ+teGH0eQxXFjY2N7Nq1izPOOOO0yZY7kVKyb98+EhMTiY6O9nY4I6Krq4tjx47pem7vk08+ybe//W3dlnuPNUJ65zYU1q5dC8D5559/wvdocHAwS5cupauri+3btw/7ODjN4iZq28bp+9fDh48Jgp+fH9/5znd0a64FWhlMbW3tiM2bvI3FYmHWrFkcOHBA95nC/jjHMamqyu7du0+aBf8iiWF3goODWbBgAUuXLqW1tZU1a9awe/duXb2nn/rFf2hr7gSDgePVrTQ3tPeJSrfXW/bPkDpNr1Q8FKvhcxKpdhWauq1E+fedvDjFbY/T4NmZLRbO/Yt+/Wt9PcoYFIQqWXHJXAJD/LS7jAb8A0wEBnueSNdUNFJ4qMIzHrudsrIy1q1bx86dO4mIiOC8884jMzPzC/MeHqwobm1tZdu2bUyfPp34+PhxjHB8KC0tpaOjQ/dGWgD5+fnExsbqNoNfUFDA+vXrfeXSOsc5wvFkF2ac9w+3fc5ms/Hiiy8CcOGFFw5rG2ON/iZ/+/ChQ2655Rb+8Ic/kJeXx9SpU70dzpDx9/cnLS2N3NxclixZouuSxISEBKqqqjhw4ADz58/X9XPpj9FoZNGiRWzcuJH9+/cze/Zsj+f3RRXD7oSHh7No0SLa29spKSlh8+bNhISEkJaWRnx8/ITOMna0daOqEsyO182q9v0M0GsFg1Ye7YHUtLAi6ROuwvPxE1Aco5f8TRS2dGnLO6ueLSDbPKunNdEtUaVEEcLVJ2w3KRh77AhFAWz8++m1PPnWbbQ2dZCYGk1YZBAFB8u547LHPXb/2x/8i8AAMwvPm8rslZM5duwYFouFtLQ0EhMTMRq/mKcvTlG8detWgBNciTs7O9m6dStpaWmkpqZ6I8QxpaOjg8OHD7Nw4cIJm2kaLG1tbZSXl7NixQpvhzJs/vCHP3DBBReclu+1UWOYJlcj3iec0OpmsViwWE40LGxpaQE46YUZ5/3DNam8++67OXToEBdddBEXXHDBsLYx1kzcv/w+fJxGJCUlcfHFF/PYY495O5Rhk5mZSUtLy2kxzmbWrFk0NDRQWVnp7VBGHbPZzJIlS6itreXQoUOuTLFPDHsSFBTEzJkzueCCC0hISCAvL4/Vq1eTm5tLR0eHt8MbkKu/v1L7QTrOsJyZWedNKNpsYZPjT7ub46hUcMwidvzT/yTN7WcptNuAs4j7r+JRMi1QDWhiWGr/2wMN2iKqipBg7bVxeHcpyVmxrvFJGTMSiUkKd21XCFDMNlJygvGL76Ywt5ScnBxWrFhBSkrKF1YMOzlZprirq4vNmzcTGxtLdna2FyMcG5yl0klJSbovlQbIy8tj8uTJuu0d7uzs5I033uCOO+7wdig+TkJSUhKhoaGu2yOPPDKs7TjPI4aTQPjzn//MH/7wB7Kzs3nppZeGtf/xwCeIffgYJ37wgx/w1ltv6dbt1mQykZmZSW5uru5NqSwWC7Nnz+bgwYOnXek0aBn9pUuXcvz4cQ4fPkxvb69PDJ8Ek8lEeno65557LnPnzqW9vZ1PP/2ULVu2UFlZOaHM8M6/ZiFPvP8jbnngMrJnT0Yxu80gFqJvvnCvFrOrnwzHDGAXfWZXrpJnO/2co6HOkSGWznMgxW35/vOLHagW0bdPBNIoUAVgNmK3GJAC/vLwf7n6zN9w320vY7XaEELw5RuWEhhqZt75k/naL+Zz9lezaK7t4o1HdlCwuYno6OjTqppjpPQXxU4xHB0dzaxZs07LY1VSUkJHRwfTpk3zdigjprGxkdraWl1fuPjHP/5BVFQU5557rrdDmdB4s4e4vLyclpYW1+2ee+4ZMEZnBtiZKe6PM9M81NL+xx9/nLvuuoupU6eybt26Ce1n4BPEPnyME8uXLychIYG//e1v3g5l2KSlpdHT03NamFLFx8cTFRV1WrpOAwQGBrJ06VLXSBqj0egTw5+DEIKYmBgWLFjA+eefT1RUFLm5uXz88cccOnSIhoaGCSGOM2clERYdQtHhSlRbXzxCEcQmRYCUmNv6uWdJiXD6rLnKpvF0hO5b1IV7htiZNfYw4RL0yzLLExuTpcAa5MjoWkxaFtlRTr1jQz7/eWED5eXlxE4z8/X7FjApOZht/y3llfu3sfP9Elrqupi1RL+GQ2OJUxQfOXKEdevWERkZeUKbxOlCR0cHubm5zJ07V/el0lJK8vLySEtLw8/Pz9vhDJt//vOf3HHHHafl++10ISQkxOM2ULk04Lowc7Ie4YKCAkDzkxksjz32GHfeeSczZsxg3bp1xMbGDjH68eWLXXfkw8c4IoTgjjvu4LHHHuNHP/rRhO5VPBkGg4EpU6aQl5dHXFycLp+DO7NmzeKzzz6jsrKSxMREb4cz6pjNZsxmM+3t7QQHB+v+9Rov/Pz8yMrKIjMzk/r6esrLy9mxYwcAMTExxMbGEh0d7ZUTcyklj9/7Fjar3VWmjBAEBJi54vqlPP37D7UeXnCULQMIzcjZ7qyTFpp4VYSWGXZkfp2ZXdU5eqnbSpjFiFER2FTpaD3WyqHtAgyyb92+ANFKph0xCEAaFe13x6zksAgLKVPCSJkShn9UK0VFRcTFxTF79mzUFQLTD4y88891FOdWcsayKZx39YIxPqr6xc/PD5PJRHd3N8HBwaelOJFSsnfv3tOmVLq2tpaWlhYWLNDv+/rjjz+mrKyMVatWeTsUH6OAs4999erVqKrqca7Q1tbG5s2b8ff3Z9GiRYPa3iOPPMLPf/5z5syZwyeffDKhM8NOfILYh49xZNWqVfziF7/g1Vdf5frrr/d2OMMiKSmJwsJCysrKdG+k4Syd3rdvH1FRUbq+Wt8fZ8+wn58f8+bNc5nwzJgx47Q8aR4LhBBER0cTHR2NlJLGxkaqq6vJy8tj9+7dREVFuQRyQEDAuMXV063NmhYSpE0ldUoc1333HJZdOIPGhnbe+WC35/NwCFGEQKhaFtdVHW0DacSzfBqt57jFZseqSsL9jdR1WjVzLilQALufxOCcXDXAuorap5KFgLjEAFIyQkhNDyYk3EJlcSuFBxvZ+lEVL3740xPek1+94/xBHYvjZfXk7iwmZWo86dNPv4tan4d7mXRycjLbtm1DCHGC0ZbeKSkpoaura9An4xMZKSW5ublkZWXpOtP98MMP8/3vf5+QkBBvhzLx8aKp1mBJT0/n/PPPZ/Xq1Tz11FPcfvvtrsfuv/9+Ojo6+O53v0tgoDYf3mq1UlRU5Go5cufXv/419913H/PmzWP16tVERESM+OmMB0KejrWCPnxMYB555BFef/119u3b5+1Qho3Tpfncc889LQxudu3ahdVqZdGiRaeFWBzIQKujo8NluDNz5szT4nl6k/b2dmpqaqiurqahoYHg4GBiY2OJjY0lLCxsTI/vq0+t4eXHP9EyvG5X8n/992+Qc1Y2HZ1drPlkNX/+dxG9VhVUibFTRQhBe7QCJqGNZlI0YWzzBwSaIZYAuxnNgUvA7VMT+KyyidzGTm0nPWBUJVjB0s8OwfWMe+0Ed0NKQiDpSUGkTQ4ECaVFrZTmNVOZ14DV6jj1UCXX3rycb/5wYOfRd59dz/89v4GwqCB+8Oh1pGTHuR7L31vGT656HGuPDQT87MlvcPZl80Z+gHVAZ2enSww7y6SbmprYunUr2dnZp40obm1tZcOGDSxcuPC0yA5XVFSQm5vLypUrddu+sm3bNs4++2xKS0snfBmsN2ltbSU0NJQzrvsNBvP4Xmy393az59/30tLSMuiLFkVFRS5Dzssuu4ypU6eyfft21q5dS1ZWFlu2bCEyMhLQRp+lpqaSnJxMaWmpaxsvvvgiN954IwaDgdtvv33AnuOUlBRuvPHG0Xiao4pPEPvwMc60tLSQlJTEq6++yiWXXOLtcIaFlJKNGzcSExOja1MQJ1arlXXr1pGSknLSOXx64fPcpJ0n0REREcydO9dXQj1K9Pb2UltbS3V1NTU1NRgMBiIjIwkLCyM0NJSwsDDMZvOo7jN/fzl3ftXNj0BK0qbE8eNHr2Ht//YSmdZLfWc4z7+6DYNVaklcIeiIUbTRTBIwahLW5oeHILb5gXS8bb6WOonKzh42VLVogtcGxl5AlVhacGWHI4JMxIVZiAs1ExtuITHCj5ZWK0Wl7RSXtlNX2obSrTUyKy1dmph3lGhPTp/E3/97p8fza2vu4J1n1/Pa46u1dRRBVFwYL2y5z3Wx4Y8/eoVP39yBatdOYzJmJfGXD34yqsd5ItLa2srWrVuJi4s74eLW6SSKbTYbGzZsIC4uTpfjCvujqiqffvopWVlZJCcnezucYXPxxReTlJTE008/7e1QJjROQTzvWu8I4t2vD00Qg2bCdd999/HRRx/R0NBAXFwcl19+Offff79HpvdkgviBBx7gwQcf/Nx9LF++nHXr1g31KY05+k/t+PChM0JDQ7n11lv57W9/q1tBLIRg2rRpbN++ndTU1FE/2R9vTCYTOTk5bN68mcjISN2U+PTnVKOVAgICOOuss9i2bRvbtm1jwYIFp0WG39uYzWYSExNJTExEVVUaGhpoamqiqamJ0tJSOjs7CQgIcIlj520kn5vs2UmedwhBW2snP/ja3xAGyU0/n8e//7MTAwIMIB39w8KulTR7ID3/lyquDHFdj5VoP3OfubQCUf4m4gPNJCVZiAu3EBNqxqgIalp6qW7u4XB5O599cpzmlr7SbkwK5h4VpERVwODWZ5ySGeMKZff6I+zdmM8nb++ktakTDAqoElWV1FY2YbPaMZm192xgsCO1jURRBEEh/sM+nnqhoaGB7du3k56eTlZW1gmVCKeaU6wnDh06hMlkOi0uuoImIgwGA5MnT/Z2KMPm0KFDrFmzhry8PG+H4mMMSEpK4vnnnz/lcikpKQOakT7wwAM88MADYxDZ2OM7E/Lhwwvcdddd/PnPf2bjxo2cddZZ3g5nWERFRREREUF+fj4zZ870djgjJjw8nKlTp7Jr1y7OPvts3Yn8wc4Z9vPzY+nSpezYsYPNmzezaNGikzpP+hg6iqK4+o6d9Pb20tzcTHNzMy0tLZSVldHZ2Ym/v78rixwaGoq/vz9+fn6YzeZBlVxHx4VSd7zFZQ2dOTOJzZ/mYvTv99orQjO6AkSPBKNzHHGfKAUQKqCAYgVhgWCTEYkkOcjCJcmRJAaYiQ+woAA17b1UN/Rw8Fgbq1t6qGvtRVX7yqYtbVa3ucd4joeymKDLilAEmdPjufOhK1n7f7vZuvoQG9/bg1AcJd3OdRzZ5LlLMl1iGODa285j36ajlB6pIiw6mO8+cOVgXiLdcvz4cXbv3s2MGTNISUk56XKngyiuqKigqqqKFStWnBaVLFarlaNHj+reBfxXv/oVV155JWlpad4OxYePUcUniH348AKTJk3ipptu4qGHHuLjjz/2djjDZvr06WzYsIHk5OTTwlwjLS2Nuro69u7dy4IFC3Rz4jJYMezEZDKxaNEi9uzZw8aNG1myZMm4mkJ90TCbzUyaNIlJkya57uvt7aWlpcUllCsqKuju7sZm0+by+vn5YbFY8PPz87i53/eXN2/j4btepbaqmelzkx2pXVCVk79vzQj8/YwE+hsJCjIQ7GckIED7P9hsINhiJMhiINBkQJWSLruKn6JgEF3srm/nvfYGmuoc4rdLYnKfRCW0EARg8xcY2qXLbEu4JRMMFhNnLcvm2u+uIH1qPE8/+A7/98JGx4MKUnU4YDswmgx89dZzueJbZ3s8l7CoYP76yc9obeogKDQAg0H/wulklJWVcfDgQc444wzi4+NPubyeRXF7ezv79+9n3rx5+PufHln//Px8l8+AXiktLeW9995j586d3g5FX+jAVMuHr4fYhw+vUVZWRlZWFtu3b2fOnDneDmfYHDp0iJaWFpYsWaIbAfl59Pb2snbtWjIyMnRxEjlUMeyOlJKDBw9SVVXF4sWLBzTA8DG+2Gw2enp66O7u9rj1v89q1cqRpaOcWLVr/0tVogIBgSa6e+woQhu5JITA4JgRbFclHd122npttHXbabM6fu6x09ar/Vzvb6fdbsdiUPjVzBTuP1BKb48KEpRWbeSSsElMvZ7nXsKuuVrTKwlssLnGLSk9dpReu5ZBlhKluQsBfPvui3nx9/+jt8sxO1lKLZvtGCdl9jPxs8evZ8n5+q9CGQ5SSo4ePUphYSELFy4c8vgSvfUU2+12Nm7cSFRUFDNmzPB2OKNCa2sr69evZ/ny5bq+cHzzzTdTXV3N//73P2+HogtcPcTXeKmH+I2h9xB/kfFliH348BLJyclcc801/PrXv+att97ydjjDJjs7m08//fS0meVrNpvJyclh69atLmOkicpIxDBoImnmzJlYLBY2bdrEggULTgsnVz1jNBoxGo2u8RYno6O9i2+ufAQptf5ZoWjCVzGbMAYauOJb03jnwwp6elVUu4pq10YS9yiSVrPQ3KQtgBDYnWOXRJ+47TZpv3erKm1WG1F+Jip7ejTzLQWMNnCMJNYQfb8LIRDOlLCUYNPSxqpJwWBVQWgl0UJKnvnt/0BVwWAAu10bDWWA2YsyuPU3VzMpIRyzRb/jaUaCqqocPHiQ48ePc+aZZw7rgpXeMsWHDx92eVScDkgpOXDgAKmpqboWJnV1dbz++uusXr3a26HoEuFLPU54Tt/6Ih8+dMA999zD+++/T2FhobdDGTYmk4kZM2Zw+PBhV9ZK70RGRpKVleUaxzQRGakYdiKEIDs7mxkzZrB9+3ZKSkoGNMvwMcGQ0NbYTXtTD60N3bTUddFU101DdScNFdqIpIaGHhobe2huttLaZqW93UpPmx0hZd8JmpQeKV4h3U7eHAUf9T1Woi2mPtHsp603YEGI46xCOhysBY5WYLcxT0iQfqa+/bvWVUBKpIQvXb+UxLRJX1gx3Nvby7Zt22hoaGDZsmUjqt5wiuL8/HyKiopGMcrRpaqqivLycnJyck6LvmGAyspK2tvbdW8M9vDDDzN37lyWLFni7VB8+BgTTo9vHB8+dMq0adO48MILeeihh7wdyohISEggMDCQo0ePejuUUSMzM5OAgAD2798/4QTiaIlhd5KTk10nzQcOHEBV1VOv5MNrBAb7c/HXFrl+t/gZT/iDLmwSoWo3R+pW07h2qWVlrVqDr1Dx6HPrn82o67ESZTHhekcYQEg3NdxfGEvtQktPgHObwvW/lGgl0c5+35N0WXz6zi7XzyVHqvjkzR1UFNWe7HCcVjhn7xoMBs4666xR6e+f6KK4o6ODffv2MWfOnFNWR+gFq9XKoUOHmDFjBiaTfi/stLa28sILL3Dvvfd6OxR9IqV3bj6GhE8Q+/DhZe69917eeOMNjh8/7u1Qho0QglmzZlFcXExra6u3wxkVhBDMmzePhoaGCZXBHwsx7CQyMpJly5bR1NTEli1b6OnpGbVt+xh9bn3gCh7913e572/f4N/bH+B/+Y+y6vZzCQ7TjIgU6ejphT6xK0CxOR2lHWrUYYTlkR12ux5S12sl2s/thF7Rtiekx2KuDLLzPnugURO/HllgrTdYSElgsB9mk/b+FYrQSqYdBIdpomjr6oPc+qXH+OOPX+N7FzzKga0T57M4FlRXV7Nx40YSEhJYsGDBqAqpiSqKrVYr27dvJzExkYSEBG+HM2rk5+cTFBSk++f02GOPkZyczAUXXODtUHz4GDN8gtiHDy+zYMECFi5cyMMPP+ztUEZESEgIqampHDx4cMJlVIeLxWJh4cKF5OfnU11d7e1wxlQMOwkICODMM8/EYrGwYcMGWlpaRn0fPkYHIQSzFqaz+Nzp+AVoY8K++v1zeOb9O90Wgr4hws71QLGjZY6duH9kJRhbHClj0a9k2j2LLMWJGV7Rtw2PUUtSIuwqQghS0qN5+YMf8uauB/jX5l/wxDt3cM+fv47iMP3yCzBz5c3LAXj3+Q2u7xNVlfz35U3DPFoTGyklBQUF7Nq1izlz5jB16tQxMSmcaKJYSsmePXuwWCynjYkWaFnVkpISZs2apWuzye7ubv7xj3/w85//XNfPw4ePU+ETxD58TADuvfdeXn75ZZqbm70dyojIzs6mra2Nqqoqb4cyaoSFhTF37lx2795NW1ub1+IYDzHsxGg0kpOTw+TJk9m0adNp9Xp+EXD1X6pqn9DtJ3hBYOxBE6rOcmm3m7kXl6B1lkwLBU/BK09S8ey2L7sz6+yWfZ46I4EP39lNc1MHwaEBBIX488mbO0nMiOPL31zGc+t/QepUbbRQUIg/iiMOIQRBIf60NXVweGcxbU0dwz5GEwm73c6ePXsoLi7mzDPPHPOM4kQSxUeOHKG1tZX58+efNn3DTvd+vRtpATz11FMEBQXxla98xduh6BZn5c1433wMjdPj28eHD52zcuVKsrOz+dWvfuXtUEaEyWRi+vTpHDp0aMKaUQ2HhIQE0tLS2L59O729veO+//EUw06cZltz585l7969HD582NdXPMGRUvK3X/8fX1uieRJoGR3tzEiAVr4MWk2zlAg7YJcIpOfJFFqptbPUuaHXilEIQix97ztVSm280glBoM2vcPQR2y2OfTnHKUnJB+/u5bXnNnLnN/+JzWbn/m89y+6N+RwrqOG9FzdTXtzXK3zzPZcSHR8OQEJKFEsumMk3Fj/Ij698nG8sfpCCA+WjdwC9QFtbGxs2bKCzs5Ply5ePm6v9RBDFlZWVFBcXs3DhQsxms1diGAsqKytpa2vTvZFWd3c3f/rTn7j33nvH5W+ODx/exCeIffiYAAghePTRR3nmmWd03UsMkJiYeNoZbAFMmTKF4OBgdu3aNa7C0Bti2J34+HiWLVtGbW0tmzZtorOzc1z372PwbF2Ty3svb8Fu096foW29xMeGObK50lG6DMLuNNnSeneF83Gn43S/bLJdQlOvTSubdtAbrP0v3EqxtTsc20Xbpt1fcQhxx0Yd4lhKyfGKJp548F3Ki+tR7X07Lcnrq0iIT4nmuQ338vreh/j7mrv58JUt9DhmFnd39fLaEx+PwpHzDuXl5WzYsIFJkyaxdOlS/PzGd1apN0Vxc3Mze/fuZd68ebrPorpzuhhpATz66KMEBQVxww03eDsUfTNABc643HwMCZ8g9uFjgnD22WezePFi7rnnHm+HMiJOR4Mt0J7XGWecQXd3N4cPHx6XfXpbDDsJDg52jX5Zt26dr4R6gtJY5/l5a1clNcX1muB1u4YjpNY/LO1uIhg+9yTKWTbtWsbSr1za4xeJ3bFdaTFoDwmBRO3rW3YI8I/f26s5ThsNYBAoBsHMhZ6zchVFISQ80DHfuG9H2jQn/fU12mw29u7dy6FDh8jJyWH69OleKxf2hiju7u5mx44dZGVlERsbOy77HC9OFyOt5uZm/vKXv/DII49gNBq9HY4PH2OOTxD78DGBePTRR3n99dfJz8/3digjIiQkhLS0NPbu3XtaldmaTCYWLlxIeXk5ZWVlY7qviSKGnRgMBmbPns2cOXPYu3cvBw4cwO7mCuzDu1QU1RIUbCEw2K9PJCoCxaqCTZs97HJ7ViUCzYXapWTdf3bi9vLW91iJNptRQduWoxrblVR209UIgXQ8LtS++zAo2hgo53JSarOHHY9HxITxyMvfJW1qPLm7S3j/5U2UHPG8+PK1Oy/AL9ACgF+gha/+QF/Ot62traxfv56Ojg7OPvtsYmJivB3SuIpiu93Ozp07iYiIIDMzc0z3Nd40NjZSWlqqeyMtgAceeID09HQuv/xyb4fiw8e44Lvs48PHBGLu3Llcdtll3H333bzzzjveDmdETJkyhXXr1lFYWEhWVpa3wxk1AgMDmT9/Ptu3bycoKIjIyMhR38dEE8PuxMfHExoayq5du9i4cSM5OTkEBQV5O6wvNB++tpUnfv4GSIiICeXKm84GtNJ2adSyqkKVuGtTKYU2lsmtlNrDkRoBvRL8tfvquq1MCQlwiFltQSnRLqsLR420uyo2grCCQGBXwKCiuVJDnzAXAlTp2uWkhDB2rjvCu89vZOvHBwBQDAoPv/w9Zi/RxFP69ERe3Ho/lcV1JKRFExQ68hm944GUkrKyMg4dOkR6ejrZ2dkTykTKKYq3bt0KQHp6+inWGDpSSteFtLlz5+peNLpjt9vZu3cvWVlZui8Br6ys5Nlnn+X9998/rV4jbyFUtwuD47hPH0Nj4nwb+/DhA4Df/OY3fPjhh+zYscPboYwIg8HA3LlzOXr06GlVOg0QHR3N9OnT2bFjx6g7T09kMewkMDCQs846i6ioKNatW0dJSclpM2pLj7zwu/ddQrSprhWjoe8k9oRXRUpt7rDqMLpyatN+fcNIibHN+bNWMh3tZxqgX9jtDiH69qf0uUtbAw2uWceqcy6x6mhOBq1kGjiyr5y3nt3A1k8Oo1laa3F8/MZ2j6cQFBpA9txk3Yjh7u5udu7cyZEjR1i4cCFTp06dUGLYyVhnigsKCqipqWHhwoUT8nttJBw5cgSj0UhGRoa3QxkxP//5z1m6dCnLly/3dig+fIwbE+8b2YePLzjp6encfPPN3H333d4OZcRERESQmpp62pVOA6SmppKcnMzWrVvp6uoalW3qQQw7URSFGTNmsGDBAgoKCtiyZYvPcMtLGE1uxV5SYjQZXD+76pnBVRYtVDyNV1RcgtV1EwKjvc95uqG7lwizUdOujnXVk10DcfUka+JXmpU+R2rh2J/7ukpf5li6Z48dhEYEDv5gTCCklFRWVrJ27VqEEKxYsYLo6Ghvh/W5jJUoLisro6CggMWLF+Pv7z9q250INDY2UlJSwhlnnDEhL3QMhSNHjvD666/z6KOPejuU0wefqZYu0Pcn14eP05T77ruP7du38/HH+nVQdTJlyhTsdjuFhYXeDmXUmTp1KtHR0WzdunXEY6b0JIbdmTRpEitWrCAwMJC1a9dSWlrqyxaPM7f86isuEZw6NZ6VV84H4I57LiE5I1o7OXL07mruz26zKvuJY/fzKcUxpxigxWrHJiURZoexlhTYTzYpx1FybRVuJdlOjH1iXeB4XDlZWaYgc9Zkvnr7+UM9JF6np6eHnTt3cuDAAWbNmsX8+fOxWCzeDmtQjLYoPn78OAcPHmThwoWE/j979x0X1ZX+cfxzp9F7r4KIoNjF3kCNSUyiaaYX0zYb09sm+Zlqkk3vZc1mNz0xajbRVDX2RrGhqKiIgCDSe51y7++PYQawRFFgYDjv12sSYGbunBkp9zvnnOfx8OiAEXYflh7SMTExuLm52Xo45+2JJ57gyiuvZOjQobYeiiB0KbGHWBC6oYCAAB555BGeeuopLrjggh79rrNl6fSWLVsIDAzs8furWpMkiaFDh5KamkpKSgrjxo07pyDbU8OwhVarZdiwYQQHB7Nr1y4KCgoYNmwYzs49Y0lrTzfhoiF8m/oCFaU1hEb6ISvm1RhbVqVTcrS8ZTl0czi1LJVWLLPFalArYJQVULfM1lrCs+V/pY3mStPl1eY3f2Q1YFRa7SHGOgMsAWgBo3n/skkBtXW/cksPY0kCpfXmZkmFpZpXeEwQ7y57qJNetc5z7Ngx9uzZg6+vL1OnTu0xQbi1jtpTXFZWxo4dOxgxYgS+vr4dOcRuISMjA51OZxdLpS1vwmdkZNh6KHbF+uZjFz+m0D499yxbEOzc448/Tm5uLosWLbL1UM6bl5eXXVadBvPS4fj4eGRZPqcexT09DLfm7+/P1KlTcXJyErPFXczdy4U+0YGoNS3fP2mpWTRWNbSsbVYAy/enrJj7EctKqynhVgeUJPNb5jLW25Q2GvB3bO6tqiinOINQWnoQWz41fwmjm2VmWG5ZPg34+LmDwdhyCJUEkoRKrSIwzPucXw9b6MmzwqdyvjPF1dXVpKSkEBcXR3BwcCeM0LYsVaXtpUDYE088wV133UVkZKSthyIIXU4EYkHoptzd3Xn66ad54YUX7KK9TUxMjN0undZoNIwdO5ba2lr27Nlz1iHQnsKwhVarZfjw4cTHx3Pw4EE2b95MVVWVrYfVK8kmBZWsoG4ymvv/muTmGWKsS6Ul+a9nMCRj855ixdx6yddB27yKWgLrkum2+35lS8C2LJmWMRfOal62rTTfdO690/jPzw+iPiFMqDQqPH1ciR4cSmODviNfkk6hKArZ2dmsWbMGRVFITEzs8X1oLc41FNfX15OUlETfvn3tMmDZ21Lp33//ne3bt/PMM8/YeiiCYBMiEAtCNzZv3jwaGxv58MMPbT2U82bPVacBdDod48ePp6ioiAMHDpzx9vYYhlsLCAhg2rRpeHt7s3HjRvbs2XPe+6yF9lOpVSiShKQ3IUkqa2Vny35itb5Vq6RTUOsBWQIZShsM+DpqW/oLWwpknVBp2lrISyOZM3ireloo5hlgxSDz5buruOuSd9A4tVSvHhQfiaubA5WlNXz3/p88c9t/uvUqg/LycjZs2MDhw4cZMWIEo0ePxtHR0dbD6lDtDcV6vZ6kpCQCAwOJiYnpghF2PXtaKi3LMvPnz+fRRx/F39/f1sOxP5Ye8F19EdpFBGJB6MYcHBx46aWXeP3112lsbLT1cM6bZen0zp077W7pNICTkxPjxo0jOzubI0eOnPZ29h6GLTQaDXFxcSQkJFBbW8uaNWs4evRotw449uSeJy9l/AUDm/fmmudmJcsMcXNolfRyq2rUzXe0Vt8CbY15D7BESyC2zibLcMrFK2pz/2FJkjBpmx/Hco5m2cfcfNPSwir0jUZQqUiYPZzLrh9DdXk9smzuc7w39QgVJebWZnXVDbz96Hfce+HrfPXGb5hMtvsd0tTUxK5du9i6dStBQUFMnTqVwMBAm42ns51tKDYajSQnJ+Pm5saQIUPsYinxicrKyuxqqfR3331HXl4ejz32mK2HIgg2IwKxIHRzN954I15eXixYsMDWQ+kQMTExyLLMoUOHbD2UTuHu7s7YsWPZv38/R48ePen63hKGW3Nzc2PcuHEMGTKEjIwMsYy6i2g0Kprqm1pmDORWMwfWmYTmZdOm5kTcps+wZM7RJsAApXUG3HUaHNTmYlwSErK27bHazEwo5v9IJksRr2aGU6RoRSFt62ECWu8blsDBSYeLu7lNz7+e/R9rfkjlyP5jLPpgFT9/vrFDXqf2aL08Wq/Xk5iYSExMTK/4OT5TKDaZTKSmpqJSqRg5cqRdhMUTGQwGdu3aRWxsrF0slW5qauLZZ5/lmWeesYvn0x1ZtqR09UVoHxGIBaGbU6vVfPDBB7z//vsd2hfSVtRqNSNHjuTw4cOUlpbaejidwtvbmzFjxrBnzx7y8vKsX++NYdhCkiSCg4OZNm0aPj4+bNy4kd27d9vFyofu6sPnl7NtQ2ZLSDW2zKhaT5wse4Sx/KcVqXmFM+Zg3GiUqTOY8HW2FNbCXElaaX3nVhWnFUCjsj6WyVFlLurloEY+cXmfJFFb08CB3UcZNC4KByctOp2GsH7+7N+eDcCh3UeRmwuEqVQqjuw71uGv2V8pLi5mw4YNZGVlMXLkSMaMGYOLS8/skXyuTheKLWHYZDIxZswYu/zdpigKe/bswcnJ6Zyrbnc3L7zwAg4ODsybN8/WQxEEmxKBWBB6gMTERC655BLuv/9+Ww+lQ3h4eBAXF8f27dtpamqy9XA6hZ+fH6NHj2b37t3k5+f36jDcmkajYeDAgSQkJNDU1MTq1avJyMgQ+4s7i0lGMpqQZBlNo9G899eyXUEBjUJLFeqGE+6rtN0eDCfsI25VnOtE1olirdQSjrXqlsytU7c8LuYxmfQmFr70C3u35dBkkNEbTGTtzeeZ2//Dm498S211gzlvSxKySWb4pP7n+qq0S0VFBVu3bmX79u2EhISQmJhIQEBAlzx2d3RiKDaZTGzbtg2DwcDYsWPRarW2HmKnOHr0KCUlJXYz+52VlcX777/Pv/71L7v9NxOEsyX6EAtCD/H2228TGxvL8uXLmT17tq2Hc94iIiIoLS1l586djB071i5OME7k7+/PqFGj2LZtG46Ojri4uPTqMNyam5sbo0ePpry8nP3795OTk0N0dDSRkZHi9ekgKpV5r64iK0iSjEJzpWcJFEmB5uu1VUaM7lrcnVW0LnenWKaOTZjfPpeaA7GTDkmuM4diLaDn5JZNkmItvGVSQNOm0Itkbq8EbZZYK633BDd/XVHAZJRZ++N2FFkBJCIHBnPFnQlMvXJUB75aJ6utrSUjI4OioiIiIyOJj49Hp9Od+Y69gCUUb926ldzcXNRqNePHj7fbYFVdXU16erpdFU27//77ufTSS0lISLD1UOxb6/oMXfmYQruIGWJB6CFCQkJ49tlnefTRR+1iVlWSJIYNG0Ztba1dtmKy8Pb2xsnJifr6ekJDQ0XYO4G3tzcTJkxgxIgR5OXlicJbHcjRUYuimAtpIWOdoZWa9w1bliurTfD4DQl8OP86632tq6AlUMnN+4xlKK034OekBRlzsS3LsU4gW97fUloV1tKbWo6rSM1bjFsV9DqxWnWrz5Xm2WRJkgiO8GP61aM7rahWY2Mju3fvZt26dWi1WqZNm0ZcXJwIwydwd3fH3d2dmpoagoKC7DYMG41Gtm/fTt++fe2mCvPy5cvZtGkTb7/9tq2HIgjdggjEgtCDPPTQQ2g0GrspsKXVaq39asvLy209nA5nWSbt7OxMfHy8dfm00JYkSQQEBJCQkMDAgQM5ePAg69atIz8/XwTj89BQ19TSfxhQtQqQEiCZmkOtSeH7n1J59Z3f2x7AGmpbQnRZvQEfJ23z1eYbqE4qpqVAq/d9ZBcJyaCgUqtBpbK2amquuWW9r1bXcieNVoWTU6uApVab9zQrCtGDw3jw0re4NOJh7r/4DcoKO6ZAW2NjI/v27WP16tXo9XoSEhIYNmwYTk5OHXJ8e2JZJi3LMuPGjePw4cN2UePiVPbu3YtWqyU2NtbWQ+kQTU1NPPLIIzz77LMEBwfbejh2TxTV6hnEkmlB6EG0Wi0ff/wxs2bN4s477yQyMtLWQzpvXl5eDBgwgO3bt5OQkGA3szCn2jOs0WhITU1FURTCwsJsPcRuR5IkQkNDCQ4OJjc3l4yMDA4cOEC/fv0ICwsTs+vtZJlVRW9E5+KAm5cLhfqWvdqSyry/16iVKKiug6paCFBbZ2YVSyA2Yi6eJUFpvR5fJ23LrLAioVhKSCuKNUSbew6DpCigUVnffVekVrW7HDTQaB7PbY9eRHAfH2STjCwrhEf5c+8lrWavJImoQaFceM0Ysvbmc3iv+Y2lIxnH+PzVX3js3ZvO+XWqq6vj8OHDHD16FH9/fyZMmICXl9c5H8/emUwmUlJSMBqN1mXS48aNIykpCcBuCk4B5OfnU1BQQGJiIiqVfcwhLViwAJ1Ox0MPPWTroQhCt2EfP92C0ItMnTqVmTNnct9999l6KB2mb9++uLu7s2vXLruYETxdAS1/f3/GjBnD7t27yc3NtfEouy+VSkVkZCTTpk0jJiaGI0eO8Oeff3L48GFRfOscSJKEodFAeV5520JWzWRHtbXSM9B2trd5u6+5NRNU1BnRqiVcHdTWZdSyqnlWAqxLsmm9Z7jV58opHn9QfAQrFifz8r1f8coD31BRUkN4vwCcXR1bHcc8w3zZrZOoKKm29jGXTQrlxec2Q1xdXc2OHTtYu3YtRqORKVOmMGbMGBGG/4Klz7DJZGLcuHHWZdJn26e4J6mtrWX37t2MGDHCblYJZGdn89577/Hxxx/b7RL3bufEivpddRHaRQRiQeiB3nnnHTZs2MDPP/9s66F0CEmSGDFiBJWVlWRnZ9t6OOflTNWk/fz8GDt2LHv37iUzM9Mu3gDoLCqVirCwMBITExk6dCgFBQX8+eefHDhwwC720Xc6qe3/jZYPZaW5JzHWXsEnlpO2tGGyzBJbAq9JVqhqNOLrom27f9jSWlhpOYLcfHxJkcxtlkwKkk6NDKAoeHi7IKkk9m7P4fjRli0TX771B9kHjxM9JLTVsm2FnIPHAbjo+vFtxnrxDW0/P5Py8nJSUlLYsGEDGo2GqVOnMnLkSNzd3dt1nN6mqamJLVu2ALQJwxb2FIpNJhPbt2+nT58+BAYG2no4Hea+++7jkksuITEx0dZDEYRuRSyZFoQeyFJg65FHHuHCCy/EwcHB1kM6bzqdjvj4eJKSkvD29sbT09PWQ2q3s22t5Ovry4QJE0hOTqaxsZFBgwbZZZXtjiJJEkFBQQQGBlJaWkpmZiaHDx8mNDTUurpAONmkCwezbcMh6uqbkE2W2Vpzka02b8MYZXN7JACDAjrze+Wtsi2tv1BWb8DHWUue3Gj+WvNMsaJqe1tJMs8qI0OTiwbnGqP5iypz6enqyoaWw0tSq8rSCg9c+b752CoVmEyo1BKxw/sAMO7Cwbyz/GEyduQQO7wPA0aeeeuILMsUFBSQnZ1NdXU1ERERDB061G4qBne2+vp6tm7dioeHByNGjDjt7zZLKO7py6f37duHJEkMHDjQ1kPpMMuXL2fDhg0cPHjQ1kMRhG5HzBALQg9lKbD14osv2nooHcbHx4f+/fuzffv2Hrc0tr19hj09PZk0aRJFRUXs2LHDugRUOD1JkvDz82P8+PFMmjQJRVHYuHEjmzdvpqCgQLyGJ3jon1ezJPU5rrptMtD8DvgpKjOr9S2zxWrDCSsWWr9P03yb0jpD8z5ixXxR06Z6tSSbP1aklpllxaXVz4NG1XJYddvTEJVawt3b1Rq+JbUK3xAvZlw9mvkf32oehqLQd0AIV9yZcMYw3NDQwIEDB1i1ahUHDhwgODiYGTNmEBcXJ8LwWaqqqmLjxo34+/sTHx9/xt9tPX2muKCggLy8POLj4+1m33BTUxOPPvoozz33HCEhIbYeTq8iimr1DGKGWBB6KJ1Ox8cff8zs2bO544477KLAFkB0dDRlZWXs2LGDMWPG9IiZ0/aGYQsXFxcmTpxIcnIyycnJjBo1SuzrOkseHh4MHz6cuLg4cnNz2bdvH3v27KFPnz706dMHZ2dnWw+x25j78Az8gz3JPnicEeOjqWhoIvtIMcuW7zLPzJqw9gw+Zc/M1j+CJiivMxDl44QitxSTVikKJllqeZvdsgrbkr8lqVXhrVZ7lVUqLOutgyL8eHvxPF689yvKi6uRZQUJSJw9ktsfnwlAUV4ZT9/yCflZxUQPCWPBl3fj6ePaZriKolBSUkJOTg6FhYX4+fkxfPhw/P39e8Tvk+6ktLSU1NRUoqKi6N+//1m/fj11pri6uppdu3YxfPhwXFxcbD2cDrNgwQI0Go0opCUIp2Efb30JQi81depULr74Yu6//35bD6XDSJJEfHw8tbW17N+/39bDOaNzDcMWjo6OTJgwAYCtW7eKvbHtpNPpiI6OZvr06QwfPpzq6mpWr15NUlIS+fn5GI1GWw/RpuprG1EUuPT6sdz//BVMmDGIS2eP5L6HLkKlkkBWUFCsM7zaxlZpWKFtGG4OzGV15iXTrfcgK4BKVqzFt6yzxJa7KkqrnK207J1vdfzCvHJ0DlrmPXs5Ht7mMBIZG8TVd06x3ubTl5ZTkFMCQNa+Y3z37grrdXV1dRw8eJDVq1ezc+dOXF1dmTZtGuPGjSMgIECE4XY6fvw4ycnJxMXFERMT0+7Xr6fNFOv1elJSUoiKirKrdkSikJaNKTa6CO0iZogFoYd75513iI2NZenSpcyZM8fWw+kQWq2WMWPGsHHjRtzd3btti6LzDcMWWq2WsWPHsnPnTjZt2sS4cePsanaiK1h6GQcEBNDQ0MDRo0c5ePAgaWlpBAcHExoaip+fX68KRS/d9xWpaw7g5uHEs5/cxqD4llUkkiRZ9xVLMtaAKutpOZkycfJZgmSeIfZy1qJSN9+mufWSecm00rIfuHlG2NyCScLoANoG8+eKqqUglyV3K4pCRWkNUQOD+XrTfCrLask+eJycQ4UMGhWJSqWisrTGOm5FUaitriM7O5u8vDwqKysJCAhg4MCBBAUF2c1yV1vIyclh7969jBw5kqCgoHM+Tk+ZKZZlmW3btuHh4UFMTIyth9Oh7r77bmbOnMnUqVNtPRRB6LZEIBaEHi4kJITXX3+dBx54gKlTp+Lj42PrIXUINzc3Ro0aRWpqKq6urt2uFUpHhWELlUrFyJEj2bt3rzUUe3h4dNBoexcnJydiYmLo378/VVVV5Ofns3PnTgBCQ0MJDQ3Fw8PD7sPxri2ZANRWN/L2E4v5bM2Tba63rJBWK2A0KaCWzEucLaHWdNIhQQVVdUYURcHTWUtVlaFlv2+rGWGUVp837yOWNVKrCeHmR5ckJK0aySQT1tePwFDzz7miwCsPfsu+HTkAJFw6jH+8fT2X3jqJg7tz6TPIl/6jAugzyJP8/HzCwsIYM2aMXRQYtCVFUTh06BBZWVmMGzeuQ/6e9IRQvHfvXvR6fY/ZpnO2PvnkE3bs2EFGRoathyII3ZoIxIJgB/7+97+zdOlS6//thb+/P7GxsaSmpjJ58uRu0wuyo8OwhSRJDBo0CAcHBzZv3syIESPOa3amt5MkCU9PTzw9PYmLi6OkpIT8/Hw2b96Mk5OTtXK1l5eXXZ0EW6ian5OiKNQ2V3RuTadTo9e3Sr0mcJDAUs7OPGsLJ7ZlUoDyeiM+rlqqKw3WWWCpueI0KsV6Q0kFktF8IEXTPKWsAFo16Fv2Dk+9cBCzbh6PWmP+Wdq3I9sahgG2rk4nI30kbiEKf3s7EdkIAf5BDB4+QKym6CAmk4m0tDRKS0uZOHFih1Zv786hOCcnh2PHjjFlyhQ0Gvs5Lc7Ly+PJJ5/kk08+wd/f39bD6bVsUeRKFNVqP/v5yReEXkySJD7//HMGDRpkV0unwXziVF1dTWpqKhMnTuyw8HmuOisMW0iSRP/+/XF1dWXHjh1ER0e3q5iNcGqSJOHv74+/vz9DhgyhqKiIwsJCkpOTUalUBAQEEBgYiJ+fn92cFDs6a2lqMO+hvvKOySdd7+7hRGlJrfkTk2KukKW0tD9SA0aFVkWwsP6/rFaPr6uWHAXMDYsVc/slFJClljQtW/6vgLbVEuZW384lJdXccN+0NkucdQ5a3Lwd6DPQm4iB3gT1dScnL5uIyHAmTpqIp6en+JnoQA0NDaSmpiJJElOmTOmUCtzdMRSXlpayd+9exo4da3eF+G6//XamTp3KNddcY+uhCEK3Zx9/9QVBoE+fPrz55pvcf//9drV0WpIkhg4dypYtW0hLS2PEiBE2OxHu7DDcWnBwMC4uLqSkpFBdXc3w4cPtJqjZmkajISQkhJCQEGRZpry8nMLCQvbt20dDQwN+fn4EBgbi7+/fo0+S3/nfA6QnZxMQ4sXQcf1Our6yot76sVovIzuqra2STtLqa5ICZbUGvF20LWuiFQVJNleSViTLPuLmdkwy1n3FsmJuQ4zcsnfYoDdRXVmPBDQZ6iktK+V4+XGuf3IkBYeryNlXxsYfDhPaJ4C3llzUga+QAFBRUUFKSgr+/v4MHTq0U3+vdadQXF9fz7Zt2xg0aBC+vr42G0dnWLhwITt37hRLpbsDufkNwa5+TKFdxNmVINiRv/3tbyxZsoS7776bH374wdbD6TBqtZrRo0ezYcMGsrKy6Nfv5JP7ztaVYdjCw8ODKVOmsG3bNjZv3szo0aN7dEDrjlQqFb6+vvj6+hIXF0dtbS2FhYXk5eWxZ88enJyc8PX1xcfHB19f3x71+vsGeDDj6lGnvV6rU2M0mitbKSqppQCWXgHdCbPClg3HKNZK00NCXM1FtFpdrbLcx3IsY/MBZJAUCaODCl2juceTpJYICHImOMKVxd/8jE+gIyaTQlMtbF9xiNwDlej1inXGusyxuqNeGqFZXl4eu3fvZsCAAfTt27dL3mzsDqHYaDSSkpJCSEgIERERXf74nSkvL4+nnnqKf//732KptCCcJRGIBcGOSJLEZ599xqBBg1iyZIldLZVydHRk9OjRbNmyBTc3NwICArrssW0Rhi0cHBwYP3486enpbNy4kVGjRtnN7H93I0kSbm5uuLm5ER0djcFgoLy8nNLSUnJyckhLS2sTkH18fHB2du4xS3erK+rQOWhxdNYBMGZsP9av3Q9IbZowavUKRo35yydVmm7Op+W1BnxcdZgUy9UtS60ly1JpS5/i5mrSapVEQKQrEZ6OBPdxITjMBZNRoSCnhsN7y9j4UyXlxQ3m2Y2GxuY7qa1LtkMi/SgtrOTPJanIsszFN4zH27/j9rn2JoqisH//fnJzcxk9enSXBydbhmJFUdi5cyc6nY5BgwZ12eN2BVmWue2225g2bZpdbZ3q0WzRBklMELebCMSCYGcsS6ctVaftaSmYl5cXw4YNY/v27UyaNKlDi76cji3DsIVKpWLIkCG4u7uTlJTE4MGD6dOnT5ePo7fRarXWVk7AKQOyVqvFw8PDWrzLw8Oj24VkWZZ5+8mlrFm+C5Va4qGXr+aCK0aaA/Ga/YBiDr5qcyqWZMsyZ1AZQVbTUkkac4ul8ho97k4atDoJRa9Yq0qbT/4ktBL4+zjg7+tAgI8jAb4O+Ho5oDeYKMip5ejhGpLWFFBRUGedUcZgMs8qS1JL6yZZBrUaSTJXzf7bBa/TVGMuELZycQr/XvMkjs4nV5ZuatDz6YvLSE86zOBx/bjrmctxcNJ19kvdIxgMBnbs2EFtbS2TJk3Czc3NJuOwVSg+ePAgVVVVTJkyxe5ac/3rX/8iLS1NLJUWhHYSgVgQ7JBl6fTf/vY3fvzxR1sPp0OFhoZSU1NDcnIykyZN6tTK090hDFtIkkRkZCSurq5s27aN6upq4uLi7O6Erjs7MSCbTCaqq6uprKyksrKSQ4cOUV1djUajsYZjNzc3XF1dcXV1RaezTSDbsSmTNct3gQSyrPDu0/9jyswhTJ0WR/LWTDasy8BZqyZyQDB7MwpwMqqobQ7AKqOCopNaimA1r4uu18s06E34uGkx1Mt4u+nwdtUQ4OlAoK8jPp469HqZotJGiksaSd1VS3FJI1WVBhwqmpqP1dy7GJpDMC0zG1oN6A34BnlSXlaHbJIBhYZ6vXV/XMmxCg6n5zNozMlB6pu3/uD3b7agyAp5WUU4OTtwx9OzO+017ilqa2tJSUnB2dmZKVOmoNVqbTqerg7Fubm5ZGVlMWnSJJv9PHaW3Nxcnn76aT799FP8/PxsPRxB6FFEIBYEO9R66fSiRYu4/vrrbT2kDhUbG0tjYyNJSUlMnDixU05sulMYbs3Pz48pU6aQmprK5s2biY+P71H7Wu2JWq3Gy8urTY/s1iG5qqqKo0ePUltbS1NTEzqdDhcXF2tAdnV1xdnZGUdHRxwcHDptVvnw/mPNlawwF7YyyVRXNuAb4I6vr3l2sKnRiI+LIyuWP8KBnCLuXrDYPEMsm7Oqm6MGd0cNPk5afBw0+Lpo0agkbpsWBkBljYGKaj2lFXqS0sooKm6gttrYUmVasuxRVsydmQAk6YQiXubZZwCdiyOPv3MDdXV63vu/E1rJqSSQFSSVhF/IqfuTZ+3LR2kOzoqscGT/sQ57PXsqy774iIgIBg4c2G1WMXRVKD5+/Djp6emMHTu2S1YXdSXLUunp06dz9dVX23o4QivWlnRd/JhC+4hALAh2qk+fPrz11ls8/PDDXHDBBXa1dNpSeXrbtm2kpKQwfvz4Dg2s3TUMW7i4uDB58mT27t3L+vXrGTZsGMHBwbYelsCpQzKYv6fq6uqora2ltraWmpoajh8/Tl1dHQaDAUmScHBwwMHBAUdHxzYXrVaLRqNpc1Gr1db/nynYBIZ5A+ZMqnXQoHVQU99Qy5GsalKS9xEZ5YZWq6KuroykrdvQ6CRuSAjG1VGDq5MaR50ak6xQ02SkvM5AWZ2Bo6WNOKhVFFc3sSG1DEVWkBQFVXPPYUkGlaml2rRlf7F1v7JsecFUYLRsMpasRbiMJpmxFwxCo1WzcMEymhqbuyOrJJydnXB21nHH/11GQKj3KZ9zfOIAdm06iEolIcsKIxNi2/cPaUeMRiPp6ekcP36ckSNHEhgYaOshnaSzQ3FZWRk7duxg5MiRdvW30OLjjz9mz549Yqm0IJwjSVEUsfVaEOyUoihccMEFuLm58dNPP9l6OB3OaDSSlJSETqdj1KhRHbJ8uLuH4RMdO3aMtLQ0wsLCiIuL6/bjFU5mMploamqisbGxzcXyNYPBgNFobHNp/adbo9EgSVKbYKzX69HpdCiKgqIoNDbo0bTqAyzLYDIq1NXpMRhkDHqZ+gYj9Y0yNbUGqiSFmkYTdY1GyrQy9Xq5ZdpBVtA0wYT+nvi46fhjQ6G1ArXaQEtPYpM5JNO6l7GsoKvStzx5RUFlMFk/toZj4Ju1/8A3wIOHrnqfzL35yCbzc/7b/MvYtT6DvalZxA6P4MmPbsXdy6XNa6ooCn98u5X9244wcFRfLr5xfLeZEe1K1dXVbN++Ha1WS3x8fKduMekIFRUVJCUlERMT02GhuLq6ms2bNzNw4EC7qygNkJOTw7Bhw/jvf//LVVddZevhCM2qq6vx8PBgwrTn0Wg6vq/3XzEaG9my5nmqqqrsbjVEZxGBWBDs3NGjR4mLi2PhwoXceOONth5Oh9Pr9WzevBlvb2+GDh16Xie9PS0MW9TV1bF9+3YURSE+Ph5XV1dbD0noZCaTCZPJdFJAVhQFg8HA1q1bmTBhAlqtFkmSqK1pZNuGgzg46PjPwo1UV5kLU8kaCTTmoCw7tHy/N3pozK2YJGjykFotuQYUcyCODXFhXLQn3/yWZ62kKjXJqGheImgwf4xJQaVVmfcBy6BuMqEyNAdfRUEjm5dxqyUw6c3hWFLBu9/9nZjBYRTklPLaI99RkFtKwmXDkYwmfvtmM7JJQaWWmHHNWB58/bpOf817EkVROHr0KOnp6URFRRETE9Nj6g10ZCiur69n06ZNREREEBMT00Ej7D5kWWbatGn4+fmxZMkSWw9HaEUE4p6lZ/x2FAThnIWHh/PBBx9w//33k52dbevhdDidTse4ceMoLi7mwIED53ycnhqGwbyEetKkSfj6+rJhwwby8/NtPSShk6nVanQ6Hc7Ozri7u+Ph4dGm2jVg/Zq7uzvBIf7MvmESg0b1s4ZhM8naIolW749LloJXJgUMirmQlWXpc/PNymsNeLtqra2GJcV8uJZq0woqvYxKVszhWDafdCitZqqRJC69ZhSPvHAFky+Is35ZkeHZe74CIDjCl/d+fIClOxZw7/NXUHSs3DpbLJsUjueWdtwLawcMBgM7d+4kIyOD0aNHM2DAgB4ThqFl+fTBgwfJyso65+M0NTWRlJREYGAg/fv378ARdh8vv/wyBw4c4OOPP7b1UAShR+s5vyEFQThnt956KxdffDHXXHMNRqPR1sPpcE5OTowbN47s7GyOHDnS7vv35DBsoVKpGDRoECNGjGDPnj2kpaXZ5b+1cH402rbf25bizieuq5BkkEwykmKuNI1Cc2iWkGRzPq6oNuCoU+PqoLYWjZEslaIVc9ErCZpDdPMNFHNZacXyMXDxVfHMmD2c0uLqNmOoqqinsb7ppOeQOHskACq1edSJV8Sf24thhyorK9mwYQONjY0kJCR0eX/hjnK+odhoNJKSkoK7uztDhgyxy+XymzZt4pVXXuH777+3y33R9kJSbHMR2kcEYkHoBSRJYuHChVRWVvLoo4/aejidws3NjbFjx7J//36OHTv7irL2EIZbCwoKIiEhgZqaGjZs2EB5ebmthyR0I4FBnm2/ICun/tggW6ujqmRLb2LFfAFQwGhSqK434uWpbe5DbA67kqy0PSk78eRMAaX57EMFLPs+BYD4CdEnjff955ef9LWEy0fy0td/59p7L+CFL/7GhdeNRVEU1i/fwSfP/Y8tf+w++xfETsiyzKFDh9i8eTNhYWGMHz8eR8euXabZ0c41FMuyzLZt21Cr1YwYMcIuw3BlZSU33XQTTz75JFOmTLH1cAShxxOBWBB6CTc3N5YuXcqnn37K8uUnn2TaA29vb0aNGsWuXbsoKSk54+3tLQxbODs7M2HCBMLCwti6dSv79u3DZDLZelhCd2GZsVUUMLVOqy3BQWNovk5WUDW19Au2hGE15sBbVqPH20uHZF1S3bLc2tLiyXIc67JrALV59lhRFEqLzDPDM648eab3cEYBj175HndMfomfv9hk/frIhAHc8vgljJ5mXmb98+cbeW3eF/zy+UZeuvM//LkkpeNer26uurqaTZs2kZeXx/jx44mJibGbENjeUKwoCrt27aKxsdGufqe3JssyN910E3379mX+/Pm2Ho5wJoqNLkK7iEAsCL3IsGHDeOONN7jrrrvsdp9pQEAAQ4YMITU19S9nR+01DFuoVCr69+/P5MmTKS0tZf369VRUVNh6WEI3oGq9TFrdKji1CqzmpdLm1knaJkugBUzm21lWQFfUGPB205o/UVoCs/X2CqhaB3DlhGCsKOxMzeKLD/7kufu/QdK0PS0pzy/jwM4cCnJK+dez/2NPUiYmo4mGurZLqTf/ugsAk8lcrGvrH2kd8Ep1b7Isk5mZycaNG/H19SUhIQFv71O3oerJzjYUK4rC3r17KS8vZ9y4cWi12i4cZdd55513SE5O5rvvvrO7v1uCYCsiEAtCLzNv3jwmTpzItddea7ezhuHh4QwYMIDk5ORThkB7D8Otubu7M2nSJMLCwtiyZQv79++323934ezoHDSnvuKEbGwuqgUqkzkcS3JLUJaaE3F5jR4fN12bJdKyZXk15rytAvqE+ViDsmVptaUytmxSWPSfjRzadwxJJeHi6YSPvxu3PTiDurIa5FZLuTf+lsbVQ+dz5aCnePWBr60BOKxfgHVPsUolEdI34KSnt/GXXTxzy0Le+8f3VJbVntdraGs1NTVs2rSJo0ePMn78eLtvuXamUKwoCvv376egoMAuloufTmpqKs888wzfffcdQUFBth6OINgNEYgFoZeRJInPPvuM/Px8u15u1bdvX2JiYkhKSqKystL69d4Uhi1azxYXFxezYcMGMVvciwW03kcsty54RUvxLLntfSTFPFusks2/QyzhttwyQ6w037l5qTSYZ6KD/dxQ9CbyMoub+xKbjy0hmYtuSRKubo7WMCvLCg5OOr5d9yTX/m0KwyZEI6kkVGoVGq2atct30thg7mO84ZddbPrdvF/49vmzGXPBYLz83Jl02XBuevTiNuNPTz7MK/O+YPu6DFYtSeHFu/7Tga9o11EUhczMTDZs2GDXs8KncrpQrCgKGRkZ5OfnM2HCBFxcXP7iKD1XdXU1N9xwAw8++CAzZsyw9XCEs2TeQtL1F6F9TvM2sSAI9szT05OlS5eSkJBAYmIiF154oa2H1CmioqKQZdnak9XZ2bnXheHW3N3dmTx5MocPH2bLli3WNw162+vQ2118+Qg+eWeV+RPJXBlaURQkg4KiVlm+bJ7BtexFNSmgkdq0XQIor9bj5aozTy43L5FWA5JRBgmOFVWjhlbB23y8KVMH0K+vP2q1Cjc3B95tVTyrorSGY7llODnruPef17Bh+Q6qyuuYdkU8j8x5v83j11bWA+Dq4cyz/73rtM85Y2cOkiShNO9rPrgz9zxeQduoqalh165d6PV6xo8f32uCcGuWUJyUlASYf8cfPHiQo0ePMmHCBLvuwX777bfj5+fHiy++aOuhCILdEYFYEHqp0aNH8+KLL3Lbbbexa9cuAgJOXmJoD6Kjo1EUha1bt+Lo6Iijo2OvDMMWltniwMBAdu7cyfHjxxk8eHCPbc8itF92ZpE18EomBTTqk/p0qDDP1irNeVgy0WpNmQKyuShWVa25tZebq5aaSoM57kqt9hI3kwD0Jm742xQi+vozKXEAarWKutpGjh0ta/PYigKfvP4b29ZmAHD5LRO454UrkSSJWbdOYtlnGwHw8nNjwkVDzuo5DxgRYV2irVJLxIzoc1b36w5MJhOZmZkcPnyYiIgIBgwY0Gt/f0HbUFxcXExVVRUTJkzAzc3N1kPrNB9++CFr1qxh9+7daDTi1L1HOcWKmy55TKFdxE+VIPRijzzyCGvXruX6669n9erVqFT2uYsiMjKS7OxsampqGDZsWK8+mbSwzBZnZ2ezbds2/P39GTRoEE5OTrYemtBBDu4+yn8WLKehXs8ND8xgyqwRAKg1quYpYPP/QgI9aDCaUKkkjlfVtxxABqn5V4KkNBfJkiRQpOZlz2aVtQY8PXXUVhrMaVYlWR9HaTCYb6SY9xRn7smnuqyOfTtziY4J4sOXf0GvN6LWqDEZTdbl1qnrD1iPv+yrLVxw5Uj6xgTxt6dnEz85lorSGuITBuDp0zIjaDLJqNWn/h02eGw/nvp4LqsWJ+MX7MWt/7jkvF/fzqYoCoWFhezduxedTseECRPw8vKy9bC6BS8vL4KDg8nNzaVfv352HYZ3797Nk08+yXfffUd4eLithyPYsfz8fJ599llWrFhBWVkZQUFBXH755Tz33HNn/bvnhx9+YMOGDaSlpbF7925qamq48cYb+eabbzp59OdHBGJB6MUkSeLLL79kyJAhLFiwgOeff97WQ+pwlj3D7u7ueHl5kZyczPjx4/Hw8LD10GxOpVIRFRVFSEgI+/btY82aNcTExBAVFWW3b470Ji//7TOqyutRZIVX7/+aw4eLOZ5fgYevK4pJBklCkRXyj1cCzRO6DurmZdIKElJzdS0JyaSgWMpTW9oqNS+nLq/W4+2lJf+IeVm0p6czck0TDXV6832MsjXc7kg5Yp2plSTAaJ7KsBTHslJJbfoib16RTt+YICRJYuSU2DY3PZZdzPNzPyU/u5jhE2N4+t+34+x6clGlyZcNZ/Jlw8/rNe0qtbW17N27l4qKCgYOHEh4eLjdtFI6X4qicODAAQoLCxk5ciR79uzB0dGRqKgoWw+tw9XX13Pddddx5513MmvWLFsPRzgHttjTey6Pl5WVxfjx4ykuLmb27NnExsaSmprKe++9x4oVK9iyZQs+Pj5nPM5LL73E7t27cXV1JTQ0lAMHDpzLU+hyIhALQi/n6+vL4sWLufDCC0lMTGTKlCm2HlKHOVUBLZVKxZYtWxg/fjyenp62HmK34OjoyMiRIykrK2PPnj0cPXpULKO2A3W1jSjNoVJx1LL0i83mj9USqFTm2VhJos25k0kxnxlYWiepzPuGpUbMS6YtS6uVlo/Lq/R4ezhYT8IqKupR1xub2zqpUUzNJ4RKS2VpaKnDJVk+aT2QE8JfYd7pW6h9+H9LKcgpAQXSthzih4VrueWxme17sboJo9FIZmYmWVlZhIWFMWLECHQ6na2H1W1YCmhZ9gy7ubnh4uLSZk+xPbnrrrtwcnLitddes/VQBDs3b948iouLef/997n//vutX3/kkUd45513mD9/PgsXLjzjcd555x1CQ0Pp168fGzZsIDExsTOH3WHEFIAgCEyaNIlnnnmG6667jry8PFsPp0Ocrpp0//796d+/P1u3bhWVlk/g4+PDlClTiIiIYNu2bWzbto2GhgZbD0voCLrT9GRtDqKq5orPKrVkbqFEc9sl2XxRGSzVS5u/riioFFApUFFtwNtd23J7Wm0ftiyhlmmzp9jqFGcharWKmLjg5kJd5vH1iws57VMrK6yytmaSJImKkuqzfVW6DUVROH78OGvXrqW4uJgJEyYwdOhQEYZbsbRWysvLa7Nn+Gz7FPc077zzDr/99htLly7FwcHB1sMR7FhWVharVq0iMjKSe++9t811L7zwAi4uLnz11VfU1p65XV1iYiLR0dE9bkWLCMSCIADw5JNPMnnyZGbPnk1jY6Oth3NeztRaqV+/fsTExLB161bKyspOc5TeybKMetq0aajVatasWcOhQ4dE72J7YlmdbOkdbDAhm2QU+RSVWCzLm2VzAS7rRcZacbqiSo+Xu65lyldWzNn3xGV7llng1hdZMTculs2JWaNWYdKbOLjnGAHhPkQNDOa6uxOZfcuE0z6dy26dZP1YAqZfPfqcXxpbqKmpITk5mbS0NGJiYpg8ebLYK3wCRVHYu3evtbXSiXuG7S0Ur1y5kvnz57N06VK7m/XudRQbXdph3bp1AMyYMeOk7VJubm5MmDCBhoYGUlJS2nfgHkQsmRYEATDPrHz++edMmDCBm266iSVLlvTIfaRn22c4KioKtVpNUlIS8fHxBAYGdvFIuzdHR0dGjBhBnz59SE9PJzs7m9jYWMLCwnrk90VvlDBrOH8u2Q6ATqNCb7Isd7YUyDJ/Kqkla3iVLcukaTXTqyhoAIPlJKv5CkUGUCiv0OPuqkWjkjAaLTPOQPN7KFKrvcC0dF5qGUur64z6ljdejudX8OvuBWg0f10E77K5kwjt50/uweMMHd+fyAHBZ/Hq2F5DQwMHDhwgPz+fPn36MHLkSDEjfAqyLLNz504qKyuZOHHiafsMn6olU090+PBhbrzxRv75z39ywQUX2Ho4Qi9w8OBBwNyV41Sio6NZtWoVhw4dYtq0aV05tC4jArEgCFbOzs78/PPPjBw5skcW2TrbMGwRERGBTqdj+/btDB48mD59ek4rlq5iWUZdUFBARkYGhw8fZsCAAQQFBfW4JVG9zb0vz2HSJSOor2mk39Bwnrzzc0qKq/DwcKaquvHUswhGGXRq63Wt/4UlGRQV1hkISwXqhkYTTXoTnm4aysr0AAQEeRLg48rwUZE4qFV89dFa1GqJwSMi2JZ02HxHa19i815mjUaFsantSoSq8jp8/N3P+FyHT4xh+MSYdrw6tqPX68nMzCQ7O5vAwEASExPtun/u+TAYDGzbtg29Xs/EiRNxdDy5WFprPT0U19bWMmvWLGbNmsWDDz5o6+EIHeHE+ghd9ZhAdXXb7SMODg6nXH5fVVUFcNpio5avV1ZWduAguxcRiAVBaCMsLIzly5czbdo0Bg8ezFVXXWXrIZ2V9oZhi+DgYHQ6HSkpKTQ1NfXIvS+dTZIkQkJCCAoK4ujRo+zZs4fMzEwGDhyIn5+frYcnnIZKpWJU4kAAfv4umZKCSgBqKuqR1KqWPCzTXDCL5iJapzleo4zs2LI6YPqEWFZvOggmmcpKPZ5eDpSVNoECVVX1fLv0PgAMBiNpyUfYmZzF9q2HT6qAOvnCwfSNCSQk3IeXH15k/bqDkxZvP/tpp2M0Gjly5AiZmZl4eXkxceJEUdjvLzQ1NZGcnIxGo2HChAlotafZB3+CnhqKZVnmmmuuwcPDg3/961/i75Bw3sLCwtp8/txzz53TREdLZwD7/Z4UgVgQhJOMGzeOjz76iNtvv53+/fszePBgWw/pL51rGLbw9fVl4sSJJCUl0dTUxKBBg+z6F/+5UqlUREREEBoaypEjR0hNTcXLy4uBAweKE/tu7vD+Y6jUErJJQZEV1FoJk6UCNbS0OPqLmQyVDJJeRpHMs8Vr12ZYC5GUV+rx8nFAOghI0Fhv4I+fdrA37SgoCjuSszjVT5QkwQPPzsbVzTzz9/xHN/Pl+3/i6e3C469eYxc/h7Isc/ToUQ4cOICTkxOjR48WbySdQV1dHUlJSXh6ejJ8+PB2/07viaH4iSeeYPfu3ezcuVMU0RI6RF5eHu7uLStsTvd9ZZkBtswUn8gy02zP7SpFIBYE4ZRuu+029uzZw+zZs9m2bdtZ9Z+zhfMNwxYeHh5MmjTJGopHjBgh9sqehkajoX///kRERJCZmcnmzZsJDAwkJibmpGI3QvcwZFRfVv20E0kydxhWLAWwFKztlwBoMoFadULbI8XaZklSVC2dl1rdr6JSj6eng7VdkwS88/IvLSFYapW1JQlJlkExF9/64IVlPPXmdQCMTYhlbELbPsMAdTWNSBKn7C/cXSmKYt1qADBkyBCx1eAsVFVVkZSURHBwMIMHDz7n16snheKvv/6ajz/+mE2bNhEQEGDr4QgdyFKZv6sfE8Dd3b1NID6dmBjzdpNDhw6d8vrMzEzA3KXDXomzPUEQTuuNN94gKiqKK664AqPRaOvhnKSjwrCFi4sLkyZNoq6ujuTkZAwGQweN1D7pdDri4uKYNm0aGo2G9evXs23bNrveZ9RTTZs1jAdfuJwJ0+O44pZx5uJZln3CijnASoBKJZ3UA9i6hFpp+zWpVVHqiko9Xl4667GQlTY9hy2FuizHbn3dhpXpf1nF/Ku3/+Dqof/H1UPms/jj1e141rYhyzK5ubmsWbOGffv20a9fP6ZOnUpwcLAIw2dQWlrK5s2b6du373mFYYueUH06NTWVefPm8fnnnzNixAhbD0fohSy9gletWoV8QreBmpoatmzZgpOTE2PHjrXF8LqECMSCIJyWRqNhyZIlFBQUMG/ePFsPp42ODsMWDg4OjB8/HoAtW7bQ1NTUIce1Z05OTgwbNozp06fj6OjI5s2b2bp1K6WlpW1DkWAzkiRx8dWjePrdG/jb4zMZOCwcSWoOwCrJWvhFMZ2i9ZJF8+yvNUjLCpJRRjIpVJbr8fJyaG6jZD6WNcxYvgekVqHY8vPaPFGduffYKR/y6OEiFn3wp3mSWlH44o3fKczrnq3SjEYjWVlZ/Pnnnxw+fJj+/fszffp0IiIixGqTs1BQUEBycjKDBg2if//+HfbmQXcOxYWFhVx11VU8+OCDXHPNNbYejtAZTtVurisu7RAVFcWMGTPIycnho48+anPdc889R11dHbfccou1wrvBYODAgQPd7ufpfIgl04Ig/CUvLy9+/fVXxowZw5AhQ7jvvvtsPaROC8MWWq2WsWPHsnPnTjZt2sS4ceNO2+pDaOHk5MTgwYPp37+/dY+xq6sr0dHRBAYGitmxbkKSJP75r1tZ8dMOGhv07N+bT8qmQyBJqBQFkyybQ6sktTmxkgDF1Hb9n6Q2/5tWVTbh6KjGwUGFvqHVbK/l/qc6P2s186woCo/M+ZDqyjquujOBi68dg77JSGVZ7Ul3a6jtXm9S6fV6srOzOXLkCM7OzgwePFgsjW6n7Oxs9u3bx8iRIwkKCurw43fH5dN6vZ5Zs2YxYsQIFixYYOvhCL3cxx9/zPjx43nggQdYs2YNAwYMICUlhXXr1tG/f39efvll622PHTvGgAED6NOnDzk5OW2Os2zZMpYtWwaY3/ABSEpKYu7cuYC5Zsubb77ZFU+pXUQgFgThjGJjY/n++++56qqrGDhwIFOnTrXZWDo7DFuoVCpGjhzJ3r172bRpE6NHj8bb27tTHsveODg4MGDAAPr160dOTg67d+8mIyOD6OhoQkJCxGxZN+DorOPyG8cBsOTLzaRszjTP6gIak4xRowZFwcFBQ1NTy3YJy3JokMx5VgJQMJgUamsNePo4UJxfDwo46DTom8zbDk7I1ugcNBgM5uAcFRPA/Fv/TUOduWXT+/N/IHNvPquWbkOWFfxCvSnJLwdg+MT+9InpHj3DGxoayMrKIicnBy8vL0aOHImfn58Iwu2gKAoZGRnk5OQwbty4Tq1V0d1C8W233UZ9fT3ffvut+J1oxyS57faSrnrM9oqKimL79u08++yzrFixgt9//52goCAeeOABnnvuubM+/0lLS+PLL79s87UjR45w5MgRAPr06dMtA7GkiPVsgiCcpTfeeIM33niDLVu2nLaBe2fqqjDcmqIoZGdns3//foYMGUJ4eHinP6a9MZlM5OXlWQtz9O3bl/Dw8LNuoyK0j8Fg4Pfff2fmzJln9RoXF1Zy2+z3MRrNATWojw9F1Q3oDabmIlwnaC6apYB5uXXzJ1deHUHGrjIO7SkHRUGtMs8oK80nZyqVZN67LMGU6QPZuHwX0LySWlag9d61E0Ll3f93GYFh3sRPiUWj7fyf+79SWVlJdnY2+fn5+Pv7Ex0dLd4sOwcGg4EdO3ZQW1vLmDFjuqwgX0VFBUlJScTExNgsFP/zn//kzTffZMeOHURGRtpkDELnqq6uxsPDg4QxT6PRdG0xQKOxkfUpL1FVVXVWRbUEMUMsCEI7PPbYYxw8eJALL7yQrVu3EhjYdTM1tgjDYF5e2rdvX9zc3Ni2bRvV1dUMHDhQvKPfDmq1moiICMLDwzl+/DhHjhwhIyODsLAwIiMjxR9sGyvILcPYZLQG2/zCKiSd2lohuvXsrpeXMxXFteZK0YqCRqPCYDJvBK4ob8TbW2euIA3IRqxpWq1W4eSso76uCVlW2PDnfiSVhGTZk3yGSdW+A4Px9nNj06+7iBoUSmiUPxuW7+R4TiljLhhE1KDQNrevrqjj58830tRo4OIbxhMc4Xter5EsyxQUFJCdnU1VVRWhoaFMmTJFfO+eo9raWlJSUnB2dmby5MnodLoue2xbzxR/9tlnvPzyy6xcuVKEYUHoJkQgFgThrEmSxMKFC7nyyiu56KKL2LhxY5ecENoqDLfm5+fHlClTSElJobq6mvj4+C49ibMHKpWKkJAQQkJCrLNsGzZswNvbm4iICIKCgsQbDTZwLK/csvIZaNsiRCVJhIf7kJ1TCkBNVQOSSTZP4CpgamgpnlVVpico2OmkgKtWqzCZZGprGts+sEoFsmW/sYTOUYtRb2TM9IE01OpJSzoMQL+4EAyNBv4+7RVMRhmVWmLchUPY8usuVCqJ7979g3d+eZToIebVGyaTzD/mfEBeZiFIEisXJfHphvl4eLu2+7VpaGggNzeXnJwcNBoNkZGRjBkzRvzsn4eSkhK2bdtGeHi4zd5ctFUo/vnnn7nvvvtYtGgREydO7JLHFGzsHIpcdchjCu0iArEgCO2i0WhYvHgx06dP59JLL2X16tWdenLYHcKwhaUt086dO9m4cWOXLvOzN56engwfPpy4uDhyc3PJyMggPT2d8PBw+vTpI4qYdYDy4mreeXwx2RkFjJkex30vzUHncPKf/dET2/aWVDUZcPF1pbq6ATc3R44eLbPmW5NJAY0KyWieBTa3Jzb3I64sb2TgEC8sV9z9yIXkHC5i3e/paDRqvP3cKTxW2VJ5vNVJm7OrA99umk9Bbik5BwuJGRrGkQPHMRlNjJ0ex+v3f4VsMt9ekRWSV6UDIMsKKkli06+7rIG4OL+c3IPHsQykprKejB05jL1g0Fm9boqiUFxcTE5ODkVFRfj7+zNs2DACAgLE/uDz0N22n3R1KE5KSuKmm27ivffeY/bs2Z36WIIgtI8IxIIgtJuTkxO//vorEydO5Nprr+V///tfp7zL353CsIVlLBkZGWzcuJH4+HgCAgJsPaweS6fTER0dTb9+/SgpKSEnJ4c1a9bg5+dHWFgYgYGBaDTiT9W5+GTBMtJTspBNMqt/SCU00o9r5k0/6XZevi5t9+/K4OGso7qinprKBuQTM6BaBc2BODzcm6NHzXuGK8ua8PDU8en/7sPVzRGNRs31017D1Hzb40fLrHuDVZKEb5g3Ph5O6HQa7vjHTJLX7OO1h74FxVx0680l9xE92LwU2sXNCUkloZgUJJWEk7MD9SYTsklBNsn4h7Ts4fXyc8PRWUdTgwGluf3T2SyZrqurIz8/n6NHj2IymejTpw+DBw/G2dm5PS+7cAqyLLNnzx4KCwsZP358t9lz3VWhOCMjg1mzZvGPf/yDu+66q1MeQ+immlvLdfljCu0izjIEQTgnXl5erFq1irFjxzJv3jwWLlzYocfvjmHYQpIkBg4ciLu7O9u2bSM2NpaoqCgxe3QeJEnC398ff39/GhoaOHr0KAcPHiQtLY3g4GBCQ0NFBd92KsgpQW7uKyypVOQcKuTLN3/HoDdyyU3jUWs1rPrfdvwCT9j2oFGRf6zSvKVYVkDFSUWu3vjwZupqGtmWkkVebhkoCjUVjUgqCXcvBypL6qmurLeGYWi7TVhRFEqKqnn6jWv58b8b+PGzjWTvy7eeyBmNJn7/LokHX5kDwM2PXcy+bUc4nluKb5AnD7xyLf958ScKj5Yx6bLhXHzjeOuxHZ0deOGLv/HxMz/Q1GDgpkcuJjz61PUOmpqaKCgoIC8vj8rKSgICAoiLiyMwMFAs3+8gTU1NpKamYjKZmDJlCk5OTrYeUhudHYqPHTvGRRddxLXXXsv8+fM79NiCIHQMUWVaEITzcuDAAcaPH899993XYb0Uu3MYPlFFRQWpqan4+fkxdOjQbj3WnkZRFKqqqsjPzyc/Px+A0NBQQkND8fDwEOH4NCxVpmtzdHzzzipUahWyScYn0IOK4mqQJBxdHWjQKyiyYs6grZZSKxoVsrNDy+enCMQOtU2YjDIOLjoaDCZr5a0b7xnAgdRKdm06ar6h5oRQecJxdCYThkaDueWTSjIHcFlBpZa4fO4k7po/y3pbk0mmurwWd29X1OpzD6tGo5GioiLy8vIoLi7Gy8uL0NBQgoODcXBwOPMBhLNWVVVFSkoK3t7eDBs2rFuv9uiM6tOVlZVMnDiRAQMG8P3334u/D72Itcr0qPm2qTK97WVRZboduu9vJkEQeoTY2Fj++OMPpk2bRkBAAPfee+95Ha8nhWEwzy5MmTKF1NRUNm/ezKhRo8QSyw4iSRKenp54enoSFxdHSUkJ+fn5bN68GScnJ2s4FvuNT23OPdMICPUl99BxwvsF8Pbj3zdfo1BfZ4Dmny0JUAxGHNydMDQZGZcQS25JDbnZ5kJaKrVk3r/bqty0ZeZZ32jAycWBxgZzv2FDExgMrYpnNe8vPh29UTbPHEsSigKOjloa6/WE9wtkzt/b9jtXq1V4+Z3byZ2iKNbvn4KCAuv3z+DBg8X3TyfJz88nLS2N/v37Ex0d3e3fwOromeKmpiZmzpyJn58f33zzTbf/WyZ0DklRzHUWuvgxhfYRgVgQhPM2ZswYfvjhB6688kr8/f2ZM2fOOR2np4VhC0dHRyZMmMDevXtZv349w4cPJygoyNbDsiutl1QPGTKEwsJC8vPzOXjwIO7u7gQFBREYGIi7u3u3P/HuKpIkMf2qUQDUVTfwzj8Wc7pFYSoklqc8Z/28sdHAru3ZuLg68sVn69mTlnfKyqUSMCkhloP7jlFaVE1VaSMevq1mQ06oOO3krKOp0WDuRwzmvcutjjtySgz3vXAl7t4u571k2Wg0UlJSQmFhIUVFRYB5hcHEiRPFCoNOZDQaSU9P5/jx48THx3dpe77z1VGh2GQycdVVV1FfX8+KFSvEygNB6OZEIBYEoUNcdNFFfPLJJ9x22234+fmRkJDQrvv31DBsoVarGTp0KL6+vuzcuZOwsDDi4uJ63PPoCTQajXV2uKmpiaKiIgoLC8nMzESn0xEQEEBQUBA+Pj7i9W9m0BtRTHJLONUb0LjrMBrMbY+uvTuhze0dHbWMa64+PWpUX/bsyrP2KUYBSadBaTLi6+9OZVktx7JLkE0Kx3IqiYz1bDmQSaZP/yBKCisZPCKCW+6bzidv/MHx/ArGTonhj682YzK13Dy0rz+evqev3K4oCsv+u55dGw/Sb3AY1z0wA52D1np9Q0OD9fuhpKQEJycnAgMDiY+Px8fHR4TgTlZdXc327dvRarUkJiZ2u/3CZ6MjQvEdd9zB/v37SUpKEktWezvRdqlHEIFYEIQOc/PNN1NUVMRVV13F2rVrGTp06Fndr6eH4dZCQkLw9PRk+/btbNq0ifj4eFxd29//VDg7Dg4OhIeHEx4ejslkoqysjOPHj5OWloZer8ff35/AwEACAgJ69SyNq4cz7l4u1FbVm2dnJXjj67/R0KAnJNIP/yDP0943fXdem0qpEjDrprHMuHAIoRG+3H/dv6wtkarLmvD0c2pzQnb3oxfx29JU8nNK2bbpEP4B7uxJyeKX75IIiw4gb38BEuAT4M6sWyac9Pip6/bz03834OLmSER0IN++/QcA29dn0FDXxHUPT6OwsJDCwkKqqqrw8vIiMDCQuLg40RatiyiKwtGjR0lPTycqKoqYmJgeXZTsfELxk08+yW+//UZycrLoQCAIPYQIxIIgdKjHHnuMwsJCLrnkEjZt2kRkZORf3t6ewrCFpV/x/v372bBhA0OHDiU0NNTWw7J7arXauqxaURSqq6spLCwkOzubtLQ0PD098fX1xdfXF2+UcIqVAABJ3klEQVRv725d4KejabRqXvr673z09FLqahq5Zt40Yof3+cv71NY0kptdwoyLhrAt+Uib68JDvHl+3leYjDKxw/uQm1WMWq2ivKQBN08H3DwczRWe753Oks82smd7NrJJ4Yv3VrU5Tl52KU+8eyM+vm5EDw7FyaXtmxa5mYW8cMd/kBVzv+Ht6zNw9XEiuJ8HwdFeePST2bRpE/7+/kRGRvb6Nz5swWAwsGfPHkpKShg9ejT+/v62HlKHOJdQ/Pbbb/Pxxx+zYcOGTu9rLPQQCiCf8VYd/5hCu/SeswFBELrM66+/TmlpKVOnTmX9+vX06XPqE297DMMWKpWKQYMG4ePjw65duygtLWXQoEG9KoTZkiRJeHh44OHhQUxMDA0NDZSUlFBaWsru3btpaGjAy8sLHx+fXhOQo4eE8e7Pj5zVbXOzS3jors+oq21Cp9OQMHUAG9cfAODKa0bx4bPLrPuRt6zay8XXjmL7pkzc3BxRqVT8Z8WD1v3cS7/cZJ1BthboaiUg1IuBw079OyJrbz7OHjqC+3kSHO1JcD9PXDwdKMmt5vjhSuoKYM71F9vV746epLKyku3bt+Pk5ERCQgKOjl1bTbeztScUf/jhhzzzzDP88ssvDB8+vKuGKAhCBxBtlwRB6BQmk4mbb76Z5ORkNmzYQFhYWJvr7TkMn6i+vp4dO3ZgMBiIj48Xe8q6gfr6ekpLS62XxsbGNgHZy8sLrVZ75gN1Q5a2SzNnzmzXc1AUhYLcMrQ6NR+9s5KkTYearwC/QHcqyuswGmUcHLUYSmqQ5JbTB0lq7lkMXP3AYCIj+vLrFztRqSQc3B3ZmZSFJIEsK0y7bBhrfkkD4ILZw3nkxause3sVRaGuro7y8nJKS0spKiymobGBkqM1FByupCCzkrDwIOqqGuk3OIxbHpuJg5OuY1444awpikJ2djb79+8nOjqa/v372/X+7DO1ZFq4cCGPPvooP/30EzNmzLDBCIXuxtJ2KXHEU2jUXdx2ydTIup2viLZL7SACsSAIncZoNHLTTTexY8cO1q9fT0hICNC7wrCFLMscOHCAI0eOMHjwYMLDw+36BLKnaR2Qy8rKqK+vx8XFBQ8PDzw9Pa3/1+m6d/gyGU0c3pfHgZzd7QrEsizzxmOLWf9rGgDO4d7U1DQ1F9JSQKWydl1SqSSURgOqBv0pl+ZNu64f5cfr2bXW3Dta66Dhijsnk5NZTNzwcK68ZSJVFXXo9UbcPHVUVlZSVVVFZWUllZWVyLKMvl4hI/UYZQUN5O4toqFGD5iD940PXsiND13UES+XcA70ej1paWlUVFQwcuRIfH19bT2kLnG6UPzpp5/y4IMP8sMPPzBz5kwbjlDoTiyBeOrwJ20SiNfuelUE4naw7/VhgiDYlEaj4ZtvvuHaa68lMTGRjRs34uPj0+vCMJiXUA8cONBahbqoqIihQ4eK/Y7dhLOzs7U4F5h7iFpCWkVFBTk5OdTX1+Ps7NwmIHt4eKDT6brFmxuNDXqemPM+2QeOccdbCfzx7VZmzZ3S5jblxdUcO1JM5IBgXD1a+mXv35lrDcMANeV1oFVjLUutKCjNH8uyeT/v6fapVZU24uHT8n1taDKSm1nEwfRcystLKCk/xpCxYVRXVyPLMu7u7nh6ehIaGkpcXBx7U47y8sNfW+/f+qVVqVVExgaf2wsknLfi4mLS0tJwd3cnISGhV/3+OtXy6c8//5wHH3yQxYsXizAsCD2YCMSCIHQqjUbD999/z5w5c0hISOCNN97A19e3V4Xh1vz9/UlMTGT37t2sXbuWIUOGWGfOhe7DwcHBWqDLQq/Xt5nNzM3Npb6+Hq1Wi4uLC66urtaL5fOu3Je86ZddHEo7itbR/HP1xWu/cMnNk1CrzdV+07Yc4tmbF2LQG3HzdOatZQ8T1s9cBbe4oLLtwUwKWPKwgvk/arBME+tcHDDUNQHg4uZI39hA0rfl4Oymxc3TmcAIJ8Ze2gdPXyc8/Bxx93FkcMIgygrrKTlWi75Og7HClbzD5YxOCGDo0FjrQ+/cvKbNUBQFvAPcqSiqRjbKvPbA13yy+kkCw306/kUUTslgMLBv3z6OHTtGXFwcffr06RZvAnW11qH4119/5amnnuLbb7/lsssus/XQhO5KwQZtl7r24eyBCMSCIHQ6rVbLkiVLuPLKK3n00UdZt25drwzDFg4ODowaNYqCggL27NlDQUEBQ4YM6VWzLT2RTqc7KSQbjUbq6uqora21XoqKiqitrcVgMODo6GgNyE5OTjg6Ora5dOTs8kk7oE749Os3frP2Ha6raeTHf6/jwdevAyAkou2yV0lWmnNwcw9NSUIlSbi4anB21eLqpuW6ZxKpqa7Dy98ZvaGRiVcFoaDg4OBAQ30DarWK/MxK9iY1Ulmhp7ZSbz0vLD5i5FBaLmqVit++S+aFf9/G6ARzKB4/PY4/FiW3GU95UTU071HWNxrYvz1bBOIuYpkVdnFxITExEWdn5zPfyY55eXmRn5/Pk08+yddff80VV1xh6yEJgnCeRCAWBKFL6HQ6fvzxR66++mpr9emgoCBbD8tmJEkiJCQEHx8f9uzZY+3bHBwsloP2JBqNxlrNujVFUdDr9SeFZUsBr6amJgwGA5Ik4eDg0CYkOzg4oNVq0Wg01otarW7zueVrrcP05MuG8/PnGzl6+DgANz8+0zo7DJhne1USOp0anZMGnbNERUUFRqMRZy+J/iP90GhVaB3UOLhocfZ2xMVNh7OrBhdXLY7OGmRZob7OSH2tAUc3CQ9fH1xcXHBxcUExqtix4TAaVwdU6gL2bDpOTVkDSBKOHk4tkySKwuGMAlDAZJJRq1VsW3/AGojjp8Si0aqt4V1SSTi4OKKva7T2UA7vH9hp/6aCmWVWOD8/n7i4OCIiInrlrPCJPvvsMx566CG++eYbrrrqKlsPRxCEDiCKagmC0KUMBgPXXnst6enprFu3TvTnxRyejh07xp49e/Dz8xOzxb2EyWSisbHRGpAtHzc2NmI0Gk+6mEwmjEYjstzS1NISii1BRULCZJIxyUZ0Oh2Kolhnjg16A5KqJdAoMjg6OaDRaFBJKg7uzsfQZMLQZKKxwUi9Huqq9dTVGqirMVBXb6KxwdRcTVrhm18exj/Q/EZATVU998x8m7LiKlBg7otj+eO/+ynKrTGPy0GL3CoQazQqFIPR2oLpnmdmM+vm8daxvf/0D/zxfQoqtQqVSuIfb13PL59vpLa6gavvnsrUK+M7659FoO2s8PDhw3v9rLCFpYDWokWLmD17tq2HI3Rj1qJaQ59Ao+7av+dGUxNrd78mimq1g5ghFgShS2m1WhYvXswNN9zAlClTWLt27Wn7FPcWkiQRGhqKr6+vmC3uRdRqtXV2tT1kWW4TlKFlubSiKBgMBrZu3cqoUaPQarXWsPzBU0vYueEghkYTBr2JQWOi6BMbzP7tOQwZF8WRA3Xs256DpJLQOGhoVLXd1qCoW8K0BFRV1lFTXsvxvDIMTSbKiqqs15cfr8PDz8kaiB10ahqaTNbl19FxIbi7OZKTWcSEGXFccsPYNo917wtX4hPgwcqlqShAaVE1ry+9v12vk9B+BoOB/fv3k5eXJ2aFT7Bw4UIeeeQRlixZwqWXXmrr4QiC0IFEIBYEoctptVoWLVrEzTffTEJCAmvXriUyMtLWw7I5R0dHRo0axbFjx0hLS6OgoIDBgweL2WKhDZVKhU6nO20LKIPBAICHh0ebtkuBIf401OxFkRVUKomGOj1/fJeELCvkHDzO1X9PZNSUWGoq65l2xUheffpHsjOLAFBrJGRos+z5k3/+wr6th83Xt16aDdSUNxIa5c2h7cWo1Srue3Y2637fw84thwmJ8OWxV+actG+5NbVaxdqfd1FWVI0sK/z7n78Q3i+AkZP6n+OrJpxJSUkJu3btsu4Vbu8bNfbsgw8+4IknnhCtlYT2k7EW6+/SxxTaRQRiQRBswtKSae7cuSQkJLBy5UpiY2PPfEc713q2ePfu3axbt464uDhCQ0PFTI1wXm56+CJqKuvYszWTuNFRFBwtM+/JxTyznJdZxHOf3mG9fWCQBzmZhSgKmPQyqFQtJ3YKpG/LxhKDTSYZnwB3qsrrcHDSMmL8ANx8HLj8uhn4BHjg7efGtMtHIssyKlXb8HwqJpNMQW5pm8JgRw8XMXJSf0qPVwLgG+R5/i+KQFNTExkZGeTn5zNw4EAiIyPF75pW3njjDZ5//nmWLVvGjBkzbD0cQRA6wZn/KgmCYNdMJhOffvopU6ZMwdvbG61Wi7+/P0OGDOHOO+/k559/BuCtt95CkiSefPLJUx7nb3/7G5Ik0a9fv1Nev2rVKiRJanNCoVar+eKLL7jkkkuYPHkyycnJp7xvb+To6Mjo0aMZPHgw+/fvZ8uWLVRVVZ35joJwGg5OOh56/Xo+2/wsj759I6MSBwKgat5XPGx8dJvb52QWgawgKQpqlYRWo2puIYJ5qviEYGtoMrJ83z9ZumMBccP7UV9fR/SgULz93Ky3KTlexeJ/ryd1/QFMJpl/vfAT18c/y2NzPqAov9wczLOKKD1eSfykGCRJQqVWodaoGD4hmk9fXMbNo5/j5tHP8ckLP3bq62XvFEUhJyeHNWvW0NTURGJiIn379hVhuJksyzz66KO89NJL/Pbbb2cMw2f7txRg/fr11r3/p7t4enp28jMUuoKkKDa5CO0jZogFoRczmUxceumlrFixAk9PTy655BJCQ0MpLy/n8OHDfP311xw4cIBZs2Yxbdo0ANasWXPKY61duxZJksjKyiI3N/ekfcFr164FsB7HQq1W89FHHxEYGMiMGTNYtGgRl1xySSc8257HUok6ICCAgwcPsmnTJvr06UNsbGybpbCCcC6uuWcqjs46DqblMmh0FDNvGNfm+n4Dgig8VgGKgiyDYpTb9NOUTlgmHRTuY539dXV1pa6ujsYGPRk7c/HwdsEkKzx4zUfNRbkgdkgoB1KzAKiurOONR77Fy9eNzX/sAWDO36cyYHgfKkprmDp7BGqVxI//Xmd9vGX/2cBF14+nj6g43W4VFRXs3r0bg8HAiBEjCAwUr2FrJpOJW2+9lT///JONGzcydOjQM97+bP+WttanTx/mzp17ymM6Ojp21NMRBOEMRCAWhF5s0aJFrFixgqFDh7Jhw4aTWsdUVFSwY8cOAIYOHYqPjw87d+6ksrKyzbvXeXl5ZGVlMWfOHJYuXcratWu57bbb2hzrdIEYzMHv2WefJSAggDlz5vDxxx+f9iShN9JoNMTFxREeHk56ejpr1qwRy6iF86ZSqbj8tsmnvd7RUYtEcz9iWUbrqEXfZLQWxvLycqayvskakk1Gk/W+zs7OmEwm/nHTR2TuMbeBCozwtYZhgAN78lGpJGRZQTYpHNlfQENdk/X6pQvX8l3qC3g1zzBn7cs/aYyGJsP5vAS9Tuvl0dHR0fTr169X94Q/lcbGRi6//HIyMzNJTk4+q/oW7flb2lpERATPP/98Rw1dEIRzJJZMC0IvtmXLFgDmzp170h9wAC8vL6ZPnw6YQ2tiYiKyLLNhw4Y2t7PMGj/88MN4eXlZw69FVVUVO3fuxNPTkxEjRpx2PHfffTfffvst9957L6+99tp5PTd75Obmxrhx46zLqDdv3iyWUQudxsPbxbxlWDEX4YoZGGRusyRJODpoGDgoFJUkgQIqScLNwxl9k5GNv+xi82+7QVZTX19vPV5hXnmbGWYUrHuYgTZh2KJ1i6nIAcGMnTHY+vmYCwbRNy6kQ5+zvVIUhezs7DbLo2NiYkQYPkF5eTlTpkyhuLiYpKSksy722J6/pUIvoyi2uQjtImaIBaEX8/PzA+DQoUNndfupU6fyww8/sGbNmjY9GNesWYObmxujRo1i8uTJJwXi9evXYzKZSExMPGNBnSuuuII//viDWbNmUVhYyFtvvXVWRXh6C7GMWugq1905hd0pWRzOOI6LmyOJFw/l/ReWA9BkNJG2I5eQCF/ysorx8HHljqcuZf6NH7M39QgAVzwSj4efE8cOm9+0UUkScptAfPKJW+TAELIzCgC49OYJ+AS0hAuVSsXT/76dfc3HjxvdV/xuOAvl5eXs2bNHLI8+g7y8PGbMmEFISAg//fQTbm5uZ75Ts/b+LRUEoXsRgVgQerGrrrqKV199lYULF1JdXc3s2bOJj48/7bviluXOJwbedevWMWnSJDQaDYmJiSxfvpwDBw5Yq0b/1XLpU5k8eTIbN25kxowZFBUV8fXXX4uZjBOcahn1wIEDCQsLE8uohQ6h1Wqor2oAk0xNWR3/+3yT9TpFgbqaRr7881EMjSbcvZzJPnDcGoYBinIqCevnzf6kQlAUwqP8MJpk8o+UAjDugoEcTD1MZVktigIarZpnF95GeUk1OkctUQNPnv1Vq1UMGXfqwn1CW2J59Nnbu3cvM2fOZMKECXz55ZenbWl2Ou39W2qRk5Nz2iXTsbGxXHfdde0ah9AN2WLGVswQt5sIxILQiw0dOpTvvvuOBx54gG+//ZZvv/0WAB8fH6ZMmcIdd9zRpudi//79CQ0NZd++fRQVFVlnKY8dO8ZDDz0EQGJiImAOwecaiAGGDBlCcnIyF1xwARdffDHLli3D2dm5I562XbEsoz5+/Djp6ekcOXKEgQMH4u/vb+uhCT2QQW8kde1+TEYZnbOO40fLrZ2WjuWUwglvthQfq6JvbBAAru5Oba6rKqknINILCXNh6pyDx7ntsZkEhfugc9QSPzmGorwyvn5nBU0NBq68K4HAcB8Cw306/4naMaPRSFZWFocPH8bX11f0FD6DTZs2ccUVV3DjjTfyzjvvnNOqg/b+LbXIzc3lhRdeOOUxZ8+eLQKxIHQRsdZIEHq5q6++mtzcXFauXMkzzzzDpZdeislk4scff+SSSy7hjjvuQGn1buPUqVMB86wwtIRdSxAePHgwvr6+1q8XFxezb98+goKC2t1nOCIigq1bt1JeXk5CQgJlZWXn/XztkSRJBAcHM336dEJCQti+fTtbtmyhoqLC1kMTehBZlnnujv/w0j1f8Mr9X/H567+2uV6tOnnlgUFvtH4cGO7DHfNnoVKrUKkkxiQMwdlda/39oVKpqK9tZNLFQxiTOAC1WkVwhB9PvHczz/77dgaN6nvasW3fcIBPXlzOqqWpbX4fCS1kWebIkSOsXr2aoqIixowZw5gxY0QY/gvLly9n5syZPProo7z77rvntQS/vX9LAaZMmYKiKKe8LFu27DyfnSAIZ0sEYkEQ0Gq1zJgxgwULFvDLL79QWlrK4sWLcXFx4bPPPmvTP/HE9ktr1qzB09OT4cOHA+ZwNnnyZNatW4eiKKxduxZFUdo1O9yan58f69evx9PTk4kTJ5Kbm3uez9Z+qdVqoqOjueCCC/Dy8mLLli1s27aN2tpaWw9N6MbKi6spyi8nL6uYXZtb9kAePVjIzGtGo9VpcHJx4NFX5+DooEEC80VRyM8uaXOsq++eyo8Zr/Ljgde49KYpuHo5oFKbg7RWqyZx1slF9bL25TPvwte4fvh8vn13xUmhIenPvTxz23/45astvPPEEr774M8Ofw16MkVRyM/PZ82aNeTk5DB06FAmTZqEr6+vrYfWrf373//m+uuv5/333+epp57qkK0m7flbKvQSoqhWjyACsSAIJ1Gr1VxzzTU8/PDDQNvew633ESuKwvr165kyZUqbd9YTExMpLy8nLS3tnJZLn8jV1ZVff/2V4cOHM3HiRHbu3HnOx+oNtFotAwcOZNq0aeh0OtatW0daWhoNDQ22HprQzSz+aDU3jn6OuRNf5Ou3fj/p+stuGMvytAX8b9tzTL1sOEajqeWES5KoKDv5zRYHRx0OjjocHR3RaNQ8s/Am7n3+Cj7+7RH6RAecdPsXbv+U7P0FVJbW8s1bf5C0Mr3N9Umr9qJSS5hM5orTG3/d3UHPvmdTFIXi4mI2bNjA/v376d+/P4mJiQQFBYk6An9BlmWef/55Hn74YZYsWXJSi8CO9Fd/SwVB6D5EIBYE4bQsVTZbz9iEhITQv39/jhw5wvLlyykrK7Mul7ZovY+4IwIxgE6n45tvvuHGG28kISGBxYsXn9fxegMnJyeGDh1KYmIiBoOBNWvWsG/fPvR6va2HJnQDlWW1fPHGb9bPt6xI59KbxyOpJJBg1q0TiYgxhytLwLr4mtGAeSuxk7OOCRcMOu3xJUnCxcWFPrF+XHrTeIL7nDxjKcsyJQWVbb628vukNp8HR/ihNHdfUqlVhPUT++PLy8vZunUr27dvJzQ0lGnTptGnTx8RhM+gsbGR6667jo8++ojVq1dz6aWXdsnjnupvqdBLyDa6CO0iimoJQi+2aNEifH19mTZt2kl7pwoLC/n0008Bc9Xn1qZOncqhQ4d49tlnAU4KxHFxcfj7+/Pll1+SlZVFdHQ0YWFh5z1elUrFq6++yuDBg7n99tvZvXs3L730kmi9cgaurq6MGjWKiooK9u/fz+rVq4mOjqZv376i6mwvZjQYT/paQ20TSvNM7Mrvk5l543j6RLe06bln/mUMjo+krKiacdMHEhjq/ZeP4erq+pdL9lUqFS5ujtTVNJ72NlfeOYXjeWVsX5dB5MBg7ltw5Zmemt2qqakhIyOD4uJioqKiGD16tGi3dpby8/OZNWsWsiyzY8cOwsPDO+zY5/q3VBCE7kEEYkHoxVJSUnjvvfcIDAxk4sSJ1hYR2dnZ/PbbbzQ0NDB79myuvvrqNvebNm0aCxcuJD09HR8fHwYPHnzSsRMSEliyZIn19h3pxhtvpH///syaNYu9e/eyaNEiUTjmLHh5eTFhwgSKi4vZv38/WVlZREVFERERIU6qeyHfQE8uvHYsKxcnAxAXH8m29RnW6w0GE+uW7WDu45dYv6ZSqZCA1HUZZKbncfvjM/EN9Djx0FZnCsQAl9wyiSUf/YmlHPWkS4e3uV7noOHhV69p/xO0I1VVVWRmZnL8+HHCw8OZPn06jo6Oth5Wj7FlyxbmzJljbavU0R0LzvVv6V+1XQJ46KGH8PT07NCxCl1LUhSkLl4Z0NWPZw9EIBaEXuzRRx8lOjqa1atXs2fPHlauXEljYyM+Pj4kJCRwww03cMMNN5y0DC8xMRFJklAUhYSEhFMu00tMTLQGYktl6o40atQoduzYwezZsxk7diw///zzGXs+Cmb+/v74+flRVFREZmYmhw4dIjIykqioKBwcHGw9PKELPfjqNcy4ZjRNjQYGj47ivkvepLayHllWkGUZTx/XNrc/kHaUfz74DSigUkvkHCrk418ePu3xXVxczlgd/pbHZ+Id4E7W3nyGTezP1CviO+S52YOysjIOHTpEWVkZ4eHhTJs2TbSfa6f//Oc/PPjggzz11FPMnz+/U5aVn+vf0r9quwQwd+5cEYgFoQtIitjQIAhCD9bY2Midd97Jn3/+yaJFizolfNu7E0+6+/XrJ066ezCDwcDvv//OzJkz2z3zn5mexwt3/ZeyoirGXTCIJz+4FZ1Dy3vny7/awsIXl7e5zy/7X0GjPfXS+/LyclJTU7nooova/Tz2ph7hz6UpeHi7cs28abh69I7vSUVRrG9WVVdXExkZSd++fcWMcDuZTCYefvhhPv/8c77++msuv/xyWw9J6EWqq6vx8PBgev9H0Ki79o1mo6mJ1YfepqqqCnd39y597J5KzBALgtCjOTo68vXXX/Pmm29y6aWX8sYbb3Dvvffaelg9io+PD+PGjaOyspLMzEzWrFlDSEgI0dHR1mIwQu8QPTiMr5OeQzbJqDUnh9wBw5v3XTa/l+7o/Ncneq6urjQ1NWEwGNoVznMOHufJ6z40P4yikLEzmzeWPnDW9++JZFmmoKCAzMxMmpqa6Nu3L2PHjhXbGc5BVVUVV199NYcOHWLr1q2n3NYjCF3CFm2QxFxnu4lALAhCjydJEo8//jhxcXFcf/31pKen89FHH4mCUe3k6enJqFGjqK2t5fDhw6xfv56AgACio6Px8vKy9fCETmTQG9HqzKcEkiSdMgwDuLg5tjnZaqxvYv/OHIaMiTrl7XU6HTqdjtra2nZ9D+1JOozJ2FIqdW/KkTZjtCcmk4m8vDwOHz6MLMtER0cTHh4ufn+dowMHDjBr1iwCAwPZsWOH6McsCMIZidKsgiDYjZkzZ5KSksLq1auZOnXqGfcuCqfm6urKsGHDmD59Os7OzmzZsoUtW7ZQVFQk2obYmfLiKu675E1m9X+ceRe9QWlh5V/e3sFRd9LXnFzOPEt8usJajQ16ZPnkHiGRA4LbfK5Sq6ipqPvLx+lp9Ho9mZmZ/Pnnnxw5coSYmBimT59OZGSkCMPn6LfffmP8+PFMmzaNNWvWiDAs2J6s2OYitIsIxIIg2JXY2Fi2bduGVqtl9OjRpKen23pIPZaTkxODBg1ixowZ+Pj4sGvXLtasWUNWVhYGg8HWwxM6wJdv/kH2gQIAcjML+fy13/7y9r6BHtz2+ExzRWjg8tsm0S8u5C/v4+rqSl1d2zBr0Bt58e+fc8WAJ7h2+NPsST7c5vrBY6JwdmvZM6vIMiu+Tz7bp9WtVVVVsWvXLlatWkVRUZG1V3hYWJhoIXceXnvtNebMmcNLL73Ev/71L7HUXBCEs2Z/a48EQej1vLy8WLFiBY899hgTJ07k3Xff5bbbbrP1sHosnU5HbGws/fv3p6CggCNHjpCRkUFYWBiRkZGiaEcPVllWg9w8myCbZCpKq894n2vuTmTm9WMxGWU8vM3tzjb9uov/LVyLq6czf3vuCsJb9S52cXGhurrtcdf8uJ2tK/YAUFfdyJsPf8tXSc+1uY2LmyP1tY2gAJKEWt1zw6Isyxw/fpzs7GwqKysJDQ1l0qRJeHicvmWVcHaqq6u57bbbWLduHb///jsJCQm2HpIgCD2MCMSCINgljUbDu+++y7hx47jrrrtYu3Ytn3zyiaiefB5UKhWhoaGEhoZSWVnJkSNH2LBhA15eXkRERBAUFCSWevYwF18/jm1rM1BQQIJLbpxwVvdzdXeyfpy1L59X7vkCRVFQqSXm3/AxXyQ/bw2wrq6uFBQUtLl/dUUdkkpCkRUURaG68uTl0PcsuIp/3vMFRoOJsCh/Zt50dmPrTurr68nNzSU3Nxe1Wk1kZCSjR49Gpzt56bnQfqmpqVx//fUEBASQlpZGeHi4rYckCG2Jolo9ggjEgiDYtWuvvZb4+HjmzJnDyJEj+f777xk6dKith9XjeXp6MmLECOLi4sjLy+PAgQOkp6cTHh5OREQELi4uth6icBbGTh/Eez8/TMbOHGKGhhMzrE+7j5GdUWDdWy6bFEqPV1JX3YC7l/l7wLKHWFEUax/WKZcNZ+nCNdRWNQAwY87ok447bsZgvt2+gPLiakL7+p+2tVN3Y2mblJOTQ3FxMQEBAQwfPhx/f/9O6YHbG8myzFtvvcVzzz3HQw89xIIFC9BoxCmtIAjnRvz2EATB7kVFRZGUlMQTTzzBxIkTef3117nnnntsPSy74ODgQL9+/YiKiqK0tJScnBzWrl2Lj48P4eHhBAYGihPVbi56cBjRg8PafK2msp762kb8Q7zOGOIGjoxEo1Ujm2SQIKxfIG6eLSsxXFxcMJlMbN+4n89eXYFsMnHrYzO58YEZfPLCMgBWLkpmxjVj6TcotM2x3b1crMG6u6urqyMvL4+jR4+iKAp9+vRh6NChODk5nfnOwlkrLy/n5ptvJjU1lWXLljFjxgxbD0kQ/oINZogRM8TtJc5SBEHoFRwcHHj33XdJTExk7ty5rF27ls8//xxXV1dbD80uSJKEn58ffn5+NDY2cvToUQ4ePEhaWhpBQUGEhYXh6+srigb1ACu/T+b9Jxcjm2TGTI/jmU/vOG0bJoDgSD9eW3o/v321GRd3Z65/cEabEK1Wq3F0dOTT15eTf6gcBfjnvV8RENyyf9ZolFmxKIn7Xp7TmU+twzU1NXHs2DHy8/OprKwkICCAwYMHExAQIL7XO8GmTZu48cYbiYqKYs+ePQQFBdl6SIIg2AERiAVB6FVmz57N7t27ufbaaxk+fDiLFi0iPj7e1sOyK46OjvTv35/o6GiqqqrIz89n586dAISEhBAWFoaHh4dYPtoNGQ0mPpy/xDzbC6Ss3sfWlelMumTYX95vYHxfBsb3Pe31GpUOV0+ddaLEZJLR6NSoVJK5qJeimHsc9wBGo5HCwkLy8/MpLi7Gy8uLsLAwxo4dK/YGdxJZlnnppZd49dVXeeqpp/i///s/Ua9A6BnEHuIeQQRiQRB6nfDwcDZu3Mizzz7LlClTePHFF3nkkUdsPSy7I0kSnp6eeHp6EhcXR0lJCfn5+WzZsgVHR0drgS6x37j7kE0yJkPbvsD6xvNvseXj64VvsCvWpXwKTLh4CL8Wb6amoh5nN0dGTIk978fpLLIsU1paSn5+PgUFBTg5OREaGsrgwYPF928nKykp4frrr2ffvn2sWLGCyZMn23pIgiDYGRGIBUHolbRaLa+88goJCQnceOONrFu3jq+//hpPT09bD80uSZKEv78//v7+GI1GioqKyM/P5+DBg3h5eREaGkpwcDAODg62HmqvpnPUcsE1o1m1OMX8uYOWIeP6nfK2RoOJuhpz8awzzfa7e7jjHehszcMqlURZYTUqCSQJ6qobWHD7f/jv5mfw9Oke2xgURaGystK6JBogNDSUiRMnihUOXWTVqlXcdtttDBkyhPT0dHx9fW09JEEQ7JAIxIIg9GoXXngh6enpXH/99QwbNoxvvvmGiRMn2npYdk2j0RASEkJISAhNTU0UFBSQn59Peno6Xl5eBAYGEhgYiKurqwgdNpB/pARJMq+6M+gN/Pb1FuY+cWmb22TszOG5uf+mprKegfGRvPjV3Ti7nn7Js6urK95BbqhUIMsKsqzgG+RBVVlLu6X62kayM44xfGJMpz23MzGZTJSWllJYWEhhYSFGo5GgoCBGjBiBn5+f+H7sIiaTiaeffpr33nuPBQsW8Mgjj4g92ULPJCt0eZErWSyZbi8RiAVB6PWCgoJYs2YNL730EjNmzODee+/l5ZdfFvsBu4CDgwORkZFERkbS2NhoDSIHDhzAycnJGo69vb3FCXEXqa2ss25Bk1QqairrT7rNe08spqbK/PX9O7JZ9t8N3PDghac9pqurK46uai66fiw5B44zdvogLr5hHMs+XU9jXRMKoNGqCe8X2BlP6S81NTVRVFREYWEhxcXF6HQ6AgMDGT58OD4+PmKvahc7cOAAt956K8ePH2fdunWMGTPG1kMSBMHOiUAsCIKAuRLuc889x4UXXsgtt9zCihUr+OKLLxg5cqSth9ZrODo6EhERQUREBEajkZKSEoqKiti+fTuyLBMQEGC9aLVaWw/Xbl35t6m8+/giANQaFRffMO6k2xTnl7dMeiiwY8OBvwzETk5OSJLEbU9e3Kay+6vf38eXb/yGyWji+gcuxCfQ47TH6CiKolBbW2t986WiogIPDw8CAwOJiYnB3d1dzATbgCzLvPrqq/zzn//kuuuuY9WqVXh4dP73gyB0KkU2X7r6MYV2EYFYEAShlbFjx7J7926eeeYZJk2axP3338/LL78seul2MY1GQ1BQEEFBQSiKQkVFBUVFRWRmZrJz5058fHwIDAzE19dXBJgOduF1Y4mICeJoZiGDxkQR1OfkfZuevq401DVZP9do/3oWVZIkXFxcqK2tbROIo4eE8dLXf++4wZ+G0WikvLyc4uJiCgsLaWhowN/fn7CwMEaNGoWjY8+ocG2vDh48yK233kpeXh7/+9//uPDC07+5IgiC0NHEGZ4gCMIJnJycePPNN7nqqqu45ZZb+OOPP/j888/FbLGNSJKEt7c33t7eDBgwgPr6egoLCykqKiIjIwOVSoWvry8+Pj74+fnh5uYmAvJ5ihneh5jhfU57/bSrRvHN2yusn4+ZHnfGY7q6ulJbW9sh4zsTSwAuLS2ltLSUyspKnJyc8PPzIy4uDj8/P/EmVzcgyzKvvfYa//znP7nmmmtYuXKlmBUWBKHLib8GgiAIpzFu3Dj27NnD008/zaRJk3jggQd46aWXxIm0jTk7O9O3b1/69u2LLMtUVlZSWlpKcXExGRkZqNVqfHx88PX1xdfXVwTkTnDd/TPQOWg5mJbLoNFRzLpt0hnv05mB+HQB2NfXl4iICHx9fXF2du6UxxbOTWZmJrfeeiu5ubksXbqUiy66yNZDEoSOJ/oQ9wjirE4QBOEvODk58dZbb3HllVdy66238vvvv/PFF18wYsQIWw9NAFQqlXX2GGgTkIuKiti/f3+bgOzt7Y27u7so0HWe1GoVc+6Z1q77uLi4UFFR0SGP39TURGVlJWVlZSIA9zCyLPPmm2/y4osvcvXVV/PHH3+IWWFBEGxKBGJBEISzMGHCBPbs2cP8+fOZOHEiDz74IC+++KKYLe5m/iogFxYWkpGRgclkwt3dHU9PTzw9PfHw8MDd3V1UE+5kbm5u5zRDbAm/lZWVVFVVUVlZSUNDAy4uLnh7e4sA3INkZmYyd+5csrOzWbJkCRdffLGthyQInUu0XeoRxJmcIAjCWXJ2duadd97hqquuajNbPHz4cFsPTTiN1gG5f//+KIpCXV2dNVgdO3aM/fv3YzQarSHZw8MDT09PEZI7mIuLC42NjRgMhtNWCW9sbLT+21gujY2NuLi44OnpiZeXF5GRkXh6eopK4z2ILMu89dZbvPjii1x55ZX89ttveHp62npYgiC0kp+fz7PPPsuKFSsoKysjKCiIyy+/nOeeew4vL68uP05XEoFYEAShnSZOnEh6ejr/93//x4QJE7j33nt58cUXRaXaHkCSJFxdXXF1dSUkJAQwt+Gpr6+3BrDjx4+TkZGB0WjEzc0NNzc3631cXFxwdXUVYewc6HQ6tFottbW1ODo6Ultba71Y3qRoHX59fHyIiorCw8NDvN492N69e7n77rs5cuQI33//PTNnzrT1kARBOEFWVhbjx4+nuLiY2bNnExsbS2pqKu+99x4rVqxgy5Yt+Pj4dNlxupoIxIIgCOfA2dmZd999l6uvvpq7776bH374wVqZWuhZLC2BXFxc2oTkhoYGKisrraGtuLiYuro69Ho9Dg4ObQKy5WMXFxcxq4z59dPr9dTV1bUJvbIss2nTJhRFsb5erq6uBAQE0K9fPxF+7UhtbS1PPvkk//3vf7n55pv59ddfu+3skCB0mh5SVGvevHkUFxfz/vvvc//991u//sgjj/DOO+8wf/58Fi5c2GXH6WqSoohSZIIgCOfDYDDw4Ycf8txzzzF27Fg++ugjoqOjbT0soZPo9fo2Ia/1xyaTCScnJ5ycnHBwcMDR0bHNxfI1nU7XaZWvDQYDv//+OzNnzuyUcCnLMo2NjdZLU1PTSZ/X19djMBisbxxYLkVFRbi5uTFo0CBR2MyOffXVV/zf//0fgYGBLFy4kPj4eFsPSRC6VHV1NR4eHkwPvhuNyqFLH9soN7G64BOqqqpwd3c/4+2zsrLo168fkZGRHD58uM3v5pqaGoKCgpBlmeLi4jZ95DvrOLYgZogFQRDOk1ar5eGHH+a6667jscceY9iwYdx7770sWLBALKO2Qzqdrk3hLgtFUWhsbKSurq5NQKyurqakpMT6udFoRJKkNgHZ0dERjUaDRqNBrVZbPz7VxXL9uQZqWZYxGo2nvJhMppO+ZjAY2oRdvV4P0Gbslo89PT1xdHTEyckJFxeXkwK5yWSitrZWhGE7lZ6ezrx589i3bx+vv/46t99+u/i3Fno3BRvMELfv5uvWrQNgxowZJ/28urm5MWHCBFatWkVKSgrTpp2+u0BHHccWRCAWBEHoIEFBQXz77bds3LiRefPmsXTpUl5//XXmzJlj66EJXUCSJOvs8F8xGo0nzaw2NTVhNBqt/z9dOJVl2Xocy9JsSZKs4bh1SF69ejWKomBZCGb5+MRj/FX41mg0ODs74+3t3Sb8Ojg4nFPQcXV1pbCwsN33E7q32tpannjiCT777DNuvfVWli1b1i33CQqCcLKDBw8CnHZlW3R0NKtWreLQoUN/GWQ76ji2IAKxIAhCB5s8eTJpaWl8+OGH3HHHHXz66adiGbVgpdForEuI26v17K7JZGoTdi3/NxgMbN26lVGjRqHVatuEZUmS2sw0d9ay7dNxdXWltrYWRVG6/LGFjifLMl999RXz588nODiYTZs2ieXRgtCaDfcQV1dXt/my5c3ME1VVVQGcth+45euVlZV/+bAddRxbEOtYBEEQOoFGo+Ghhx7i0KFD+Pv7M2zYMB5//HEaGxttPTShB1OpVOh0OpydnXFzc8Pd3R13d3c8PDys7aIs7WwsX7PcxlIt27I82xaB1MXFxToTLvRs6enpTJ48mUceeYQXXniBlJQUEYYFoRsJCwuz/h3w8PDglVdeOafjWN5wPd+/GR11nM4gArEgCEInCgwM5JtvvmHFihX88ccfxMbGsnTpUlsPSxBsQqPR4OTkRG1tra2HIpyj6upq5s2bx+jRoxk0aBCHDx/mzjvvFHuFBaGbycvLo6qqynp56qmnTnk7y8ytZYb3RJaZ5tPN/Hb0cWxB/PYSBEHoApMmTSItLY2HH36YO+64g6lTp7J9+3ZbD0sQupyLiwt1dXW2HobQTkajkXfffZfY2Fi2bdvGpk2bWLhw4UnF5QRBaEWWbXMB6+ogy+VUy6UBYmJiADh06NApr8/MzASgf//+f/lUO+o4tiACsSAIQhfRaDQ8+OCDZGZmMnDgQCZOnMjll19u/SMhCL2BZR+x0DPIsszXX3/NgAEDeOedd3jttdfE8mhBsCOJiYkArFq1qk3RRTC3S9qyZQtOTk6MHTu2S45jCyIQC4IgdLGAgAA+/PBD9u/fj5OTE0OGDGHu3LkcP37c1kMThE4nAnHPsWLFCkaOHMlDDz3Efffdx6FDh7j55pvF8mhBOFuWolpdfWmHqKgoZsyYQU5ODh999FGb65577jnq6uq45ZZbcHFxAcy97g8cOEBWVtZ5Hac7kRSlna+aIAiC0KHS0tJ44okn2Lp1K3fddRfPPfdct9xjI/QMBoOB33//nZkzZ57UB7g7KCoqYu/evd2u7YbQIiUlhSeeeILt27fz6KOP8thjj+Hm5mbrYQlCj1FdXY2HhwfT/e5Ao9J16WMbZT2rS/5LVVUV7u7uZ3WfrKwsxo8fT3FxMbNnz2bAgAGkpKSwbt06+vfvz9atW62t1HJycoiMjKRPnz7k5OSc83G6E/EWnyAIgo0NGzaMlStX8ssvv7Bp0yaioqJ46aWXRCVewS65urpSV1d30pI6wfYOHjzI7NmzmTJlCoMHD+bIkSO88MILIgwLgp2Liopi+/btzJ07l5SUFN566y2ysrJ44IEHSEpKOusQ21HH6WqiD7EgCEI3kZCQQGpqKj/99BNPPvkkn376KU899RR33XUXarXa1sMThA7h7OwMQENDQ7dcOtcbHTt2jPnz57N48WKuuOIK9u/fT9++fW09LEHo+WzYh7i9wsLC+Pzzz894u4iICP5qgfHZHqc7ETPEgiAI3YgkSVx55ZXs37+fZ555hgULFjB48GDRqkmwG5Ik4eLiIvYRdwNVVVU89NBDxMbGUlhYSHJyMt99950Iw4Ig9CoiEAuCIHRDGo2GO++8k6ysLObOnctdd93FqFGj+PHHH8VSU6HHE4W1bKu8vJynnnqKqKgokpKS+PXXX1mxYgVDhw619dAEwb7Iim0uQruIQCwIgtCNOTk58Y9//IPs7GxmzpzJ7bffzpAhQ/jss88wmUy2Hp4gnBMRiG3j+PHj3HvvvURGRrJmzRo+++wzkpOTmTJliq2HJgiCYDMiEAuCIPQAXl5evPDCC+Tn53Pbbbcxf/58+vfvzzvvvCOKbwk9jgjEXSszM5NbbrmFqKgoDh48yLJly0hJSWHWrFlIkmTr4QmC3VIU2SYXoX1EIBYEQehBXF1defTRR8nJyeGpp57iww8/JDIykueff14EDKHHsFSaFjrXrl27uOKKKxg0aBA1NTVs3LiR1atXk5iYKIKwIAhCMxGIBUEQeiAHBwfuvPNODh06xLvvvstPP/1EeHg4jzzyCCUlJbYeniD8JRcXFxoaGjAajbYeil3asGEDF1xwAWPHjsXd3Z3du3fz008/ER8fb+uhCYIgdDsiEAuCIPRgarWaa665hrS0NL777ju2bdtG3759ueuuu8jNzbX18AThlBwcHNBoNGKWuAPJsszy5csZN24cF198MQMGDCAzM5Mvv/yS2NhYWw9PEHonxQYFtbq6zZMdEIFYEATBDkiSxEUXXcSmTZtYsWIFx44dIzY2luuuu469e/faeniC0IYkSWIfcQcxGo188cUXDBs2jFtvvZVp06aRm5vL+++/T3h4uK2HJwiC0O2JQCwIgmBnJkyYwO+//05KSgqSJDFixAgmT57M4sWLRWVqodsQgfj8FBUV8dRTTxEREcFTTz3FTTfdxNGjR3nppZfw8/Oz9fAEQQDzbK0tLkK7iEAsCIJgp4YMGcKiRYvIzs4mISGB+++/n759+/Lss89SVlZm6+EJvZwIxOdmy5YtXH311URGRrJp0ybefvttjh49yj/+8Q/c3d1tPTxBEIQeRwRiQRAEOxcSEsKCBQvIy8vjlVdeYeXKlYSHh3PdddeRmppq6+EJvdS5VJrem5LF8s82kL3/WCeNqntqamri3//+NyNHjmT69Ol4enqydetWNm/ezDXXXINWq7X1EAVBEHosja0HIAiCIHQNBwcHbrjhBm644Qa2b9/O+++/z+TJkxk4cCBz587ljjvuwMXFxdbDFHoJFxcXamtrURTlrFoArfw+iXcfWwSAWq3in9/fy5Bx0Z09TJvKyMjg3Xff5ccff8TFxYV7772XO+64A29vb1sPTRCEsyHLIHVxX2DRh7jdxAyxIAhCLxQfH89XX31FQUEBt9xyCx9++CGhoaHMnTuXXbt22Xp4Qi/g6uqKwWBAr9ef1e1/+WKT9WMFhVWLUzpraDal1+v54osvmDhxIkOHDqWoqIhvvvmGI0eO8Pjjj4swLAiC0MFEIBYEQejFvL29eeihhzh48CA//fQTDQ0NjBkzhtGjR/PBBx9QVVVl6yEKdkqj0eDo6HjW+4i9/dxRqZtPWxTw9HHtxNF1vfT0dO677z7Cw8OZP38+M2bMICcnh2XLlnHhhReiUolTNkHocURRrR5B/HYVBEEQkCSJhIQEFi9eTH5+PldeeSUffvghQUFBXHbZZSxZsuSsZ/IE4Wy1p7DW31+8iuAIXwAGxEdy7f0zOnNoXSI/P58XXniBIUOGMHLkSHJzc/n000/Jzc3l2WefJTg42NZDFARBsHuSooi3EQRBEISTKYpCWloaX3/9Nd999x1Go5GZM2cyd+5cEhISxIxVN2UwGPj999+ZOXNmty+2tHv3brRaLQMHDjzr+xgNJjRadSeOqnNVV1fz1VdfsXjxYpKTkxk1ahS33norV199NT4+PrYeniAIHaC6uhoPDw+mOl+HRtJ16WMbFT1r67+nqqpKVJ4/S+JsRhAEQTglSZIYPnw4b7/9NseOHeP7779HkiRmz55N3759efDBB9m7d6+thyn0YJbCWu3RE8OwXq9nyZIlXHbZZQQFBfHBBx9w0UUXkZmZydatW7n77rtFGBYEQbAREYgFQRCEM1Kr1UyfPp0vv/yS4uJiXn/9dbKyshgxYgRDhw5lwYIFHDvWu1rhCOfPnnsRy7LM+vXrueWWWwgJCeGBBx4gOjqazZs3c+DAAebPn09ERISthykIgtDriUAsCIIgtIuTkxPXXHMNv/76KwUFBfz9739nxYoVREREMHnyZD744ANKSkpsPUyhB7D0IraX3VuyLJOSksJDDz1EVFQUl112GQCLFi3i2LFjvP322wwfPvys2kwJgmAHRFGtHkEEYkEQBOGc+fr6cs8997B161YOHTrEjBkz+OSTTwgODmbUqFE8/fTTpKen23qYQjfl7OyMoig0NDTYeijnrKmpiR9//JGbb76Z8PBwEhISyMrK4tVXX6WoqIivvvqK6dOno1b3vKXegiAIvYEIxIIgCEKHiIyM5Omnn2bv3r0cPnyYW2+9leTkZEaOHElUVBR33XUXK1aswGg02nqoQjehUqlwdnbuccumS0pK+PDDD7n44outbwo5Ojryr3/9i7KyMn755ReuvfZanJ2dbT1UQRBsSVZscxHaRWPrAQiCIAj2p0+fPtx3333cd999VFdXs3LlSpYtW8b111+PJElMmjSJWbNmcdVVV+Hp6Wnr4Qo2ZNlH7O/vb+uh/KX09HQWL17MypUrSUtLIyYmhssvv5wXXniB+Ph4UXVdEAShhxKBWBAEQehU7u7uzJkzhzlz5mA0Gtm6dSvLly/nlVdeYd68eYwaNYqLLrqIa6+9lujoaFsPV+hi3bWwltFoZPXq1fzvf/9j7dq15OXlMXnyZG699VZ++OEH+vTpY+shCoIgCB1ABGJBEAShy2g0GiZPnszkyZN56623OHjwIL/88gs//fQTzz//POHh4YwaNYrExEQuvvhiETp6AVdXVwoKCmw9DEwmE0lJSaxYsYItW7awc+dOJEnikksu4dVXX+XCCy8UPT0FQWgfRQFkGzym0B4iEAuCIAg2ExMTQ0xMDI899hjl5eVs3LiRdevW8dFHHzFv3jwiIyOtAXnmzJmEhYXZeshCB7PVDLElAK9cuZItW7awY8cOTCYTEyZM4OKLL+a1115jxIgRaDTiVEkQBMGeid/ygiAIQrfg7e3N5ZdfzuWXXw5AWVkZmzZtYt26dXz44Yfcc889IiDbIRcXFxoaGjCZTJ1aidlkMpGcnMzKlSvZvHkzO3fuxGg0MmHCBC666CJeffVVEYAFQehQiqygSF07Y2svbey6kvitLwiCIHRLPj4+JwVkywzyBx98wD333EPfvn0ZNWoUU6ZMYeLEiQwcOFAUN+phHB0dUavV1NXVdeiS5NraWrZu3crmzZutM8BGo5Hx48dz4YUX8sorrzBixAi0Wm2HPaYgCILQ84hALAiCIPQIPj4+XHHFFVxxxRVA24C8cOFCHnjgAZycnIiNjWXQoEHEx8czfvx4Bg8eLEJyNyZJknXZ9LkG4traWrZs2UJycjK7du1i//79HDlyBHd3d+Lj45kxYwb//Oc/RQAWBKFrKTJdv4e4ix/PDohALAiCIPRIJwbkpqam/2/vzmLiLPc4jv8GBNqwzIAsQ0sZQJa2UilFLkAUG2sT2yqcFnrRRiWUuISLGuOS2Bi9IDZWL1qjidq01qZKvHChKtItsQ0omhJsaK3A2GGTxYLslcIs58I4J2Npz2kPBabz/SQThuf9z/s8Lxckv3me93l19uxZNTQ06PTp03r//fe1fft2BQUFeYTke+65RytWrLipy3Nxfa7nPuKRkRF99913+v7779XY2Kjz58/LZrPJaDRq1apVys7O1mOPPaasrCzFx8fLYDDc5NEDALwZgRgAcEsICgpSVlaWsrKy9MQTT0iSJicnPULyvn379OyzzyowMFBpaWlKT09XRkaG7rzzTmVkZCgmJmaOr8I3TReI7Xa7Wltb1dTUpKamJv3000/u8BsREeEOv6WlpcrKylJcXBzhFwBw3Qwu7rwGAPiQyclJnTt3zh2Sz5w5I6vVqv7+foWHhys+Pl4Wi0XJycnumeUVK1YoJCRkrof+P5mamlJ1dbXWrVs375cHO51O/fbbbzp16pQaGxs1NDQkm82m9vZ2dXZ2yuFwyGKxaOnSpe4vO7KysrR48WLCL4B5a2RkREajUfcb/qXbDLP7f9jumtK3rs81PDzMo+L+R8wQAwB8SmBgoDIzM5WZmamysjJ3+9DQkFpbW9XS0qKWlhb98ssvOnHihKxWqy5duqSYmBhZLBYlJCQoNTVVy5YtU1pamiwWi8LDw7lP+Srsdru6urrU1tamc+fOqbm5Wb/++qva29vV3t6usbExmc1mJScna/ny5Vq/fr1SU1OVmpqqxMTEeR/qAQDejUAMAIAkk8mk7OxsZWdne7S7XC719va6g3Jzc7MaGxtVWVmpzs5OXb58WQsWLFBUVJQiIyMVFRWl6Ohomc1mLVq0SHFxce5Z5+jo6FsmOF++fFkdHR3q6OhQZ2enurq61NPTo76+Pl28eFG///67BgYGNDAwIKfTqfDwcN1xxx1KS0tTTk6OHn/8caWmpio5OdlrZt8B4LqwqZZXIBADAHANBoNBsbGxio2NVX5+vscxl8ul4eFh9fT0qKenR93d3e6fHR0dqq+vV3d3t/r6+jQ+Pq7AwEBFRkYqMjJSJpNJwcHB7ldoaKhCQ0MVEhKisLAwhYWFyWg0ymg0ut+bTCaZTKb/e0OwiYkJDQ4Oanh4WENDQxoeHtbIyIiGh4c1OjqqkZERjY2NaXR0VKOjo7p06ZLGx8c1Pj6u/v5+9ff3a3BwUNJfm5v9Hf4XL16spUuXavXq1Vq0aJH772Y2mxUUFPR/jRkAgJuBQAwAwA0yGAzukLps2bJr1o6NjXmE5v7+fo/QOTIyop6eHo2MjGh0dNR9bHx8XGNjY5qYmHCfKygoSAaDQX5+fvLz85PBYJC/v7+7zeFwSPorsDudTrlcLjkcDrlcLtntdtntdkmSn5+fgoODFRIS4g7lISEhCg0NVVhYmEJDQxUbG+vRFhMT4w670dHRLGkGgKuwa0qa5d2a7Jqa3Q5vAWyqBQCAF7Db7RofH3fP2P4ddp1OpxwOh8f7v4PyP1/+/v7y9/d3B9yFCxeyORUAzLCJiQklJiaqt7d3Tvo3m82y2WxasGDBnPTvbQjEAAAAADCDJiYmNDk5OSd9BwYGEoavA4EYAAAAAOCTbo2tLgEAAAAAuE4EYgAAAACATyIQAwAAAAB8EoEYAAAAAOCTCMQAAAAAAJ9EIAYAAAAA+CQCMQAAAADAJxGIAQAAAAA+iUAMAICXczgc2rt3r/Lz8xUREaGAgABFR0frrrvuUllZmQ4fPjzXQwQAYF4yuFwu11wPAgAA3BiHw6ENGzaopqZGJpNJ69evV1xcnP744w9ZrVbV1dUpOztbtbW1cz1UAADmndvmegAAAODGVVZWqqamRhkZGTp58qSMRqPH8cHBQTU0NMzR6AAAmN9YMg0AgBerq6uTJJWUlFwRhiUpPDxca9asme1hAQDgFQjEAAB4saioKElSS0vLHI8EAADvwz3EAAB4sTNnzig7O1t2u11btmxRQUGB7r77biUmJs710AAAmPeYIQYAwItlZGTo448/ltls1kcffaTNmzcrKSlJkZGR2rRpk6qrq+dsbCUlJTIYDGpra5uzMfzTgQMHZDAYdODAgbkeCgBgHiAQAwDg5YqKitTe3q4jR47o5Zdf1oYNG+RwOPTZZ59p/fr12rZtm2ZqQZjBYLjmi6AJAPAm7DINAMAtICAgQGvXrtXatWsl/fU4pk8//VSlpaXav3+/HnnkERUUFMxYf6+88sq07StXrpyxPgAAuNkIxAAA3IL8/f21efNmNTU1qaKiQidOnJjRQPzqq6/O2LkAAJgrLJkGAOAWFhoaKkkztmR6pnzyySe69957ZTQatXDhQqWnp+u1117TxMTEtPWnT5/Wxo0bFR0draCgIFksFj399NPq7u6ett5qtaq4uFjh4eEKDg5Wbm6uvvrqq5t5SQAAL8QMMQAAXqyyslKRkZF64IEH5Ofn+T13b2+v9u7dK0m677775mJ403rxxRe1a9cuRUVFaevWrQoODlZ1dbV27NihmpoaHT9+XIGBge76qqoqFRcXy2AwqKioSPHx8Tp9+rTeffddVVVVqba2VklJSe761tZW5eTkaGBgQA899JBWrlwpq9WqwsJCrVu3bi4uGQAwTxGIAQDwYj/88IP27Nkjs9msvLw89+OWbDabvv76a/35558qKChQUVHRjPY73ZLphIQElZSUXPNzdXV12rVrlywWi3788UdFR0dLknbu3KmCggJVV1frjTfe0I4dOyRJY2NjKi0tldPp1KlTp5Sbm+s+186dO/XSSy/pySef1LFjx9zt5eXlGhgY0O7du7V9+3Z3e1VVlQoLC2/8ogEAtxyeQwwAgBfr7OzU4cOHdfz4cf3888/q6enRxMSEbr/9dmVmZmrLli3asmXLFbPHN8pgMFz1WH5+vr799lv37yUlJfrwww9ls9mUkJAgSSorK9O+ffu0d+9elZWVeXy+ublZy5cvl8Vi0YULFyRJhw4d0qOPPqqtW7fq0KFDHvVTU1NKSUlRe3u72traZLFY1NXVpSVLligxMVGtra3y9/f3+Mz999+vkydP6oMPPviv4R0AcOtjhhgAAC+2ZMkSlZeXq7y8fFb7vdHv0xsbGyVJq1evvuJYWlqa4uLiZLPZNDQ0JJPJdM36gIAA5efn6+DBg2psbJTFYnHX5+XlXRGGpf8EYgAAJDbVAgAAs2h4eFiSZDabpz0eGxvrUXej9TExMdPWX+08AADfRCAGAACzxmg0Svprw6/p9PT0eNTdaH1fX9+09Vc7DwDANxGIAQDArMnMzJQkj3uN/2a1WtXV1aXExESZTKb/Wm+321VbWytJWrVqlUd9bW2tHA7HFZ+Z7jwAAN9FIAYAALOmtLRUklRRUaGLFy+62x0Oh5577jk5nU5t27bN3V5YWKiIiAhVVlaqvr7e41y7d+/WhQsXtGbNGsXHx0uS4uLi9OCDD8pms+ntt9/2qK+qquL+YQCABzbVAgAAsyY3N1cvvPCCdu3apfT0dBUVFSk4OFjffPONzp49q7y8PD3//PPu+pCQEO3fv1/FxcXKz89XcXGx4uPj1dDQoKNHj8psNuu9997z6OOdd95RTk6OnnnmGR09elQZGRmyWq36/PPP9fDDD+vLL7+c7csGAMxTzBADAIBZ9frrr6uyslIpKSk6ePCg3nrrLTmdTlVUVOjYsWMKDAz0qC8oKFBdXZ3WrVunI0eO6M0339T58+f11FNPqaGhQUlJSR71KSkpqq+v16ZNm1RXV6c9e/aos7NTX3zxhTZu3DiblwoAmOd4DjEAAAAAwCcxQwwAAAAA8EkEYgAAAACATyIQAwAAAAB8EoEYAAAAAOCTCMQAAAAAAJ9EIAYAAAAA+CQCMQAAAADAJxGIAQAAAAA+iUAMAAAAAPBJBGIAAAAAgE8iEAMAAAAAfBKBGAAAAADgkwjEAAAAAACf9G/OzPmr+hGOwAAAAABJRU5ErkJggg==", + "text/plain": [ + "
" ] - }, + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Set the joint probability bin widths\n", + "width_direction = 1 # in degrees\n", + "width_velocity = 0.1 # in m/s\n", + "\n", + "# Plot the joint probability distribution\n", + "ax = tidal.graphics.plot_joint_probability_distribution(\n", + " data.d,\n", + " data.s,\n", + " width_direction,\n", + " width_velocity,\n", + " metadata=metadata,\n", + " flood=flood,\n", + " ebb=ebb,\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Rose plot\n", + "\n", + "A rose plot shows the same information as the joint probability distribution but the probability is now the r-axis, and the velocity is the contour value. As compared to a joint probability distribution plot, a rose plot can be more readable when using larger bins sizes." + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ { - "cell_type": "code", - "execution_count": 9, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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vCdPnsyHH36Im5sbL7/8MnZ2dmzdupXp06ezfft2du3ahaWlZa7za7VaevTowY0bN3j66acxNzfn999/Z+rUqWRmZjJnzpyH/o0Mr5sbN26QlpaGvb39Q48xSEpKon379lhaWjJgwAA0Gg2//vorI0aMwMzMzHjDxeCll15i3bp1eHl5MWLECFQqFRs3bmTMmDHs27cvz42eKVOmYGZmRuvWrfH09CQpKYmQkBAmTpzIkSNH+Pnnnwsd679FR0cTEhKCtbU177333kP3v//1d//17N+/n6effhpHR0e2bt3KokWLuHXrFqtWrSqRa3nvvff43//+R58+fejRowe7d+/m22+/5fz58+zduzfP/kV9TaxYsYLXX38da2tr+vbtS/Xq1blw4QLffvstW7Zs4fDhw3h5eT30+Sltf/31F3fu3MHHx8f4mn2YNWvWAPfeh65cucLWrVtJSkrCy8uLp556isqVK5dmyEIIUb4pQgghiuzEiROKhYWFolKplJdffln55ZdflMuXLz/wmPnz5yuA0rt3b0Wr1RrL4+LilBo1aiiAsn//fmP57t27FUCZNWtWvvV5e3sr3t7eucpWrFihAMqKFSvyPWbWrFkKoDg4OCgnT57Mte3FF19UAGXt2rW5ymNiYhSdTpenrq+++koBlAULFuQbg1qtVvbu3Wssz8nJUbp166YASqVKlZQff/wx13Gvv/66Aii///57rvLAwEAFUGrXrq3cuXPHWJ6Zmam0adNGAZTVq1fnOgZQAgMD830ODhw4oACKt7e3Eh8fbyzXarVKr169FECZN29ermO8vb0VQHn66aeVjIwMY3l8fLxSqVIlxdHRUcnOzs73fPfT6/VK69atFUBp3Lix8tlnnylHjhxRNBrNA48DFEB57bXXcv0toqKiFLVardSrVy/X/j/99JMCKC1atFDS0tKM5WlpaUpAQIAC5Hn+L168mOe8OTk5yssvv6wASlhYWK5tQ4cOVQAlOjr6ode9atUqBVDat2//0H3/zfD3DwgIUBITE3Ndi5+fn2JmZqbcuHGjRK7Fy8tLuXLlirFcq9UqHTt2VADl8OHDuY4p6mvi3LlzioWFhVK7du088YaEhChmZmZKv3798r32wjLsv3v37ofua7jmfv36KbNmzVJmzZqlTJ06VXnxxRcVOzs7xdvbWzl48GChz+3o6KhYW1sr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w8bGhtq1a7NixYoixVIcknQLIcQTSKfTsWHDBrp27UqDBg2IjIzk+++/Jzo6mvnz51O1alVTh/jYkDHdoiiCgoL47bffuHbtGn369OH999+natWqjBs3jrNnz5o6PCGeOObm5gwZMoSVK1fmSlTXr19PdnY2L7/8MpGRkfTs2ZNnn32WkydPsm7dOg4cOMDYsWPzrVNRFIKDg7lz5w579+5l586dXLp0KddEhH/++SfPPvsszzzzDMePHyckJIQWLVrkW9/Ro0cBWLFiBTdv3uTo0aP4+PjQrVu3PAnlihUrGDZs2ANbkD/66CMaN27MX3/9xdSpU5k4cSI7d+584PM0ffp03n33XU6cOEGdOnV48cUX0el0wL1VC7Kysti3bx+RkZF88MEH2NvbP7C+/GRkZPDZZ5+xdu1atm/fzp49e3j22WfZunUrW7du5YcffuCbb77h119/zXXc5s2b6devHwD/+c9/OH36NNu2bePMmTN8+eWXuLq6FjmWIlOEEEI8MeLj45V58+Yp1apVU6pVq6a88847ytWrV00d1mMtNTVV2bx5sxKbdks5dedaqZ8vOztb+f3335Xs7OxSP5cofTk5Ocr27duV3r17K5aWlkpQUJDy+++/KzqdztShCVHhZWZmKqdPn1YyMzMfuN+ZM2cUQAkNDTWWderUSXnxxRcVRVGUwYMHK2+88UauY/bv36+YmZkZ6/b29lY++eQTRVEUZceOHYparc71+RsVFaUAypEjRxRFUZS2bdsqL7/8coEx3V+foigKoGzcuDHXPuvWrVOcnZ0VjUajKIqinDhxQlGpVEp0dPQD633qqadylQ0aNEh5+umn8z1XdHS0Aijffvttnms5c+aMoiiK0qhRI2X27NkFnvNh16YoirJixQoFUC5evGgsGzlypGJra6ukpqYay3r27KmMHDnS+LtGo1EcHByUkydPKoqiKH369FGGDx/+wPOvWLFCqVSp0kPjLOzrR1EURVq6hRDiCXD06FEGDx5MjRo12Lx5M/Pnz+fKlSssWrSIGjVqmDq8Ci1H0ROXcYdjCdFsufI3X5/ez+yjW3lz3y8M2rGC50N+QK/X0+23FTyz5UeycnSmDllUIIbZz7ds2cLFixdp0qQJI0eOxNfXlw8++IDExERThyjEY69evXq0a9eO77//HoBLly6xf/9+Xn31VQCOHTvG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3/zmN5w5c4bFixej0+n47LPPOHv2LKmpqd0afWVmZvLaa6/xzjvv4O19/dF1crmcCRMmYG9vz+HDh4mIiMDPb3BuGA11w63Hz8+PhoYG0tLSBn3qhZBYWFjw5ptv8rvf/Y67775baqomITHImDzS/emnnzJ16lRsbW2xtbVl6tSpPbrPASQlJSGTyVi3bh3Hjx/nxhtvxM7ODgcHBxYuXNij3ftQZN68eQZ9ud122209TCx0zrdLSEigpqaGU6dO9fv8vvLqq6+SmZnJJ598ctUvSUP31mg06HS6bhcPcrm8xyB6CcM5d+4cL774Im+++eaIShtuamoiPT2diRMn4uTkJLScazLYEe+mpib279+PTqdj1qxZkuE2EYOVYt7c1vn5KaWBGsbGjRvJy8ujoaGB9957r0/PmThxIuvWrevxb9GiRX3eV19KpVAoSEpK4p///Cd///vfycjIYNq0aWzbto2vvvqq6/yjR4+Snp7Oe++9xwcffMCHH37Iu+++2/W4no6ODu677z5mzJhh0M1qmUzGmDFjiI2N5cyZM5w6dcrk373DxXDrGT9+PJaWlpw4cYL/9hMeEdxyyy3MnTuX1atXCy1FQmLEYVLTvXr1apYuXcr58+e5//77Wb58OWVlZSxdupTHH3+81+ekp6cTHx+PmZlZV330jh07mDdvHiqVypRyhxT6O699nb1p6Pl6Tp8+zfr163nuuecYP368YSKvsbetrS0333wzd911F4899hiLFy/m9ddf5+677+7XHhL/Y9WqVcydO5dbbrlFaCmDhkajIT09HV9fX3x8fISW0ycGy3hXVlayf/9+3N3diY2NHTFRGyGYMn5wIkM6XafxNldAi6p9UPYUAwkJCQQHBw96ScXXX39NVVUVd911F5MnT+563NLSkhdeeAHonAurp6Skc+Z7TExM12PTpk3rdgzg9ddfJzs7m48++qhfr8nNzY1Zs2Zx6dIlUlNTaW83zXtpuBlu6AwCTJ48mdra2hHXWO3tt9/u6gkjISExeJgsvfzAgQO8+eabhIWFkZKS0jU/cv369UydOpWNGzdy2223ERfXfRzKjz/+yFdffcUdd9zR9di9997L559/zo4dO/pcZ7Vu3TqD9K5atQpHR0eDnmMqzp07x549e/Dw8CAiIsLo5+vp6Ohg6dKlhIWF8fTTTxtd66effspjjz3G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Emg0GtjZ2aFjx47o0qULfH19dcW6U6dOBjOLgIiIqClYuomIiJpIq9WivLwchYWFKCwsREFBge7PO2/FxcWorKyEmZkZHB0d4ejoCLlcDqlUqrtZW1vD2toaMpkMNjY2sLGxga2tLWxtbXUfy+VyyOXy+y4C9zClu7q6Gjdv3kR5eTnKyspQXl6OiooKlJeX49atW6ioqIBSqcStW7dw69Yt3L59G5WVlaisrMSNGzdw48YN3Lx5EwDg4OCgO8Dg6uqK9u3bo127dro/27VrBxcXF5ibm+vl34CIiKi1Y+kmIiJqAUqlskExv3HjRoNiW190KyoqcOvWLd3nKisroVQqUV1drduXubk5RCIRTExMYGJiApFIBLFYrLtPrVYD+PuggEajgVarhVqthlarhUqlgkqlAgCYmJhAKpVCJpPpir9MJoO1tTVsbGx0f955n7Ozs65QKxQKTv8mIiJ6AJZuIiIiA6BSqVBZWakbea4v1BqNBmq1usHH9WX8nzexWAyxWKwr0ZaWllyQjIiISM9YuomIiIiIiIj0pHUstUpERERERETUBrF0ExEREREREekJSzcRERERERGRnrB0ExEREREREekJSzcRERERERGRnrB0ExEREREREekJSzcRERERERGRnrB0ExEREREREekJSzcRERERERGRnrB0ExERGTi1Wo3Vq1cjLCwM9vb2MDU1hUKhQM+ePTFjxgz88ccfQkckIiIyWiKtVqsVOgQRERE1jVqtxvDhwxEXFwe5XI5hw4bBzc0NpaWluHTpEhITExEUFITDhw8LHZWIiMgoSYQOQERERE0XGxuLuLg4+Pv74+DBg7C1tW3w+Zs3b+LUqVMCpSMiIiJOLyciIjJgiYmJAICYmJi7CjcA2NnZITIysqVjERER0f9i6SYiIjJgTk5OAICMjAyBkxAREVFjeE43ERGRATt79iyCgoKgUqkwceJEREdHIzAwEN7e3kJHIyIiInCkm4iIyKD5+/vj559/houLC3766SeMHz8eHTp0gKOjI8aMGYOdO3cKli0mJgYikQjZ2dmCZfintWvXQiQSYe3atUJHISIiI8HSTUREZODGjh2LnJwc7Nq1C++//z6GDx8OtVqNzZs3Y9iwYZg+fTqaa2KbSCS6741lloiIqCGuXk5ERNQGmJqaIioqClFRUQD+vpTY77//jueffx5r1qzByJEjER0d3WyP9+GHHzZ6f0BAQLM9BhERUVvA0k1ERNQGicVijB8/HikpKVi0aBH27dvXrKX7o48+arZ9ERERtWWcXk5ERNSGWVtbA0CzTS9vLhs3bsSAAQNga2sLS0tL9OjRA5988gmqq6sb3f7kyZMYPXo0FAoFzM3N4enpiZdeegkFBQWNbn/p0iWMGzcOdnZ2kEqlCA4Oxp9//qnPp0RERNQojnQTEREZsNjYWDg6OmLQoEEwMWl4LL2oqAirV68GAISGhgoRr1Fvv/02Fi9eDCcnJ0yaNAlSqRQ7d+7E/PnzERcXh71798LMzEy3/bZt2zBu3DiIRCKMHTsWHh4eOHnyJFatWoVt27bh8OHD6NChg277zMxM9OvXDyUlJXj66acREBCAS5cuYdSoURg6dKgQT5mIiIwYSzcREZEBO3bsGJYvXw4XFxeEhIToLhWWlZWFHTt2oKqqCtHR0Rg7dmyzPm5j08u9vLwQExNz369LTEzE4sWL4enpiePHj0OhUAAAPv30U0RHR2Pnzp1YsmQJ5s+fDwBQKpV4/vnnodFokJCQgODgYN2+Pv30U7z77rt48cUXsWfPHt39M2fORElJCZYtW4ZZs2bp7t+2bRtGjRrV9CdNRETUBLxONxERkQHLzc3FH3/8gb179yI1NRWFhYWorq6Gg4MDevXqhYkTJ2LixIl3jYI3lUgkuufnwsLCcODAAd3fY2Ji8OOPPyIrKwteXl4AgBkzZuC///0vVq9ejRkzZjT4+vT0dHTr1g2enp64cuUKAGDDhg2YPHkyJk2ahA0bNjTYvq6uDj4+PsjJyUF2djY8PT2Rl5cHd3d3eHt7IzMzE2KxuMHXhIeH4+DBg/jhhx8eeICAiIioOXCkm4iIyIC5u7tj5syZmDlzZos+blOP2ScnJwMAIiIi7vpcly5d4ObmhqysLJSVlUEul993e1NTU4SFhWHdunVITk6Gp6enbvuQkJC7Cjfwf6WbiIiopXAhNSIiImox5eXlAAAXF5dGP9+uXbsG2zV1e2dn50a3v9d+iIiI9IWlm4iIiFqMra0tgL8XeWtMYWFhg+2aun1xcXGj299rP0RERPrC0k1EREQtplevXgDQ4NzvepcuXUJeXh68vb0hl8sfuL1KpcLhw4cBAL17926w/eHDh6FWq+/6msb2Q0REpE8s3URERNRinn/+eQDAokWLcP36dd39arUab7zxBjQaDaZPn667f9SoUbC3t0dsbCySkpIa7GvZsmW4cuUKIiMj4eHhAQBwc3PDU089haysLKxcubLB9tu2beP53ERE1OK4kBoRERG1mODgYLz11ltYvHgxevTogbFjx0IqleKvv/7C+fPnERISgjfffFO3vUwmw5o1azBu3DiEhYVh3Lhx8PDwwKlTp7B79264uLjgu+++a/AY33zzDfr164fZs2dj9+7d8Pf3x6VLl7BlyxaMGDEC27dvb+mnTURERowj3URERNSiPv/8c8TGxsLHxwfr1q3D119/DY1Gg0WLFmHPnj0wMzNrsH10dDQSExMxdOhQ7Nq1C1988QUuXryIf/3rXzh16hQ6dOjQYHsfHx8kJSVhzJgxSExMxPLly5Gbm4utW7di9OjRLflUiYiIeJ1uIiIiIiIiIn3hSDcRERERERGRnrB0ExEREREREekJSzcRERERERGRnrB0ExEREREREekJSzcRERERERGRnrB0ExEREREREekJSzcRERERERGRnrB0ExEREREREekJSzcRERERERGRnrB0ExEREREREekJSzcRERERERGRnrB0ExEREREREekJSzcRERERERGRnvx//LdVHQ0PisIAAAAASUVORK5CYII=", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "# Define bin sizes\n", - "width_direction = 10 # in degrees\n", - "width_velocity = 0.25 # in m/s\n", - "\n", - "# Create a rose plot\n", - "ax = tidal.graphics.plot_rose(data.d, data.s, width_direction, \\\n", - " width_velocity, metadata=metadata, flood=flood, ebb=ebb)" + "data": { + "image/png": "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vCdPnsyHH36Im5sbL7/8MnZ2dmzdupXp06ezfft2du3ahaWlZa7za7VaevTowY0bN3j66acxNzfn999/Z+rUqWRmZjJnzpyH/o0Mr5sbN26QlpaGvb39Q48xSEpKon379lhaWjJgwAA0Gg2//vorI0aMwMzMzHjDxeCll15i3bp1eHl5MWLECFQqFRs3bmTMmDHs27cvz42eKVOmYGZmRuvWrfH09CQpKYmQkBAmTpzIkSNH+Pnnnwsd679FR0cTEhKCtbU177333kP3v//1d//17N+/n6effhpHR0e2bt3KokWLuHXrFqtWrSqRa3nvvff43//+R58+fejRowe7d+/m22+/5fz58+zduzfP/kV9TaxYsYLXX38da2tr+vbtS/Xq1blw4QLffvstW7Zs4fDhw3h5eT30+Sltf/31F3fu3MHHx8f4mn2YNWvWAPfeh65cucLWrVtJSkrCy8uLp556isqVK5dmyEIIUb4pQgghiuzEiROKhYWFolKplJdffln55ZdflMuXLz/wmPnz5yuA0rt3b0Wr1RrL4+LilBo1aiiAsn//fmP57t27FUCZNWtWvvV5e3sr3t7eucpWrFihAMqKFSvyPWbWrFkKoDg4OCgnT57Mte3FF19UAGXt2rW5ymNiYhSdTpenrq+++koBlAULFuQbg1qtVvbu3Wssz8nJUbp166YASqVKlZQff/wx13Gvv/66Aii///57rvLAwEAFUGrXrq3cuXPHWJ6Zmam0adNGAZTVq1fnOgZQAgMD830ODhw4oACKt7e3Eh8fbyzXarVKr169FECZN29ermO8vb0VQHn66aeVjIwMY3l8fLxSqVIlxdHRUcnOzs73fPfT6/VK69atFUBp3Lix8tlnnylHjhxRNBrNA48DFEB57bXXcv0toqKiFLVardSrVy/X/j/99JMCKC1atFDS0tKM5WlpaUpAQIAC5Hn+L168mOe8OTk5yssvv6wASlhYWK5tQ4cOVQAlOjr6ode9atUqBVDat2//0H3/zfD3DwgIUBITE3Ndi5+fn2JmZqbcuHGjRK7Fy8tLuXLlirFcq9UqHTt2VADl8OHDuY4p6mvi3LlzioWFhVK7du088YaEhChmZmZKv3798r32wjLsv3v37ofua7jmfv36KbNmzVJmzZqlTJ06VXnxxRcVOzs7xdvbWzl48GChz+3o6KhYW1sr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w8bGhtq1a7NixYoixVIcknQLIcQTSKfTsWHDBrp27UqDBg2IjIzk+++/Jzo6mvnz51O1alVTh/jYkDHdoiiCgoL47bffuHbtGn369OH999+natWqjBs3jrNnz5o6PCGeOObm5gwZMoSVK1fmSlTXr19PdnY2L7/8MpGRkfTs2ZNnn32WkydPsm7dOg4cOMDYsWPzrVNRFIKDg7lz5w579+5l586dXLp0KddEhH/++SfPPvsszzzzDMePHyckJIQWLVrkW9/Ro0cBWLFiBTdv3uTo0aP4+PjQrVu3PAnlihUrGDZs2ANbkD/66CMaN27MX3/9xdSpU5k4cSI7d+584PM0ffp03n33XU6cOEGdOnV48cUX0el0wL1VC7Kysti3bx+RkZF88MEH2NvbP7C+/GRkZPDZZ5+xdu1atm/fzp49e3j22WfZunUrW7du5YcffuCbb77h119/zXXc5s2b6devHwD/+c9/OH36NNu2bePMmTN8+eWXuLq6FjmWIlOEEEI8MeLj45V58+Yp1apVU6pVq6a88847ytWrV00d1mMtNTVV2bx5sxKbdks5dedaqZ8vOztb+f3335Xs7OxSP5cofTk5Ocr27duV3r17K5aWlkpQUJDy+++/KzqdztShCVHhZWZmKqdPn1YyMzMfuN+ZM2cUQAkNDTWWderUSXnxxRcVRVGUwYMHK2+88UauY/bv36+YmZkZ6/b29lY++eQTRVEUZceOHYparc71+RsVFaUAypEjRxRFUZS2bdsqL7/8coEx3V+foigKoGzcuDHXPuvWrVOcnZ0VjUajKIqinDhxQlGpVEp0dPQD633qqadylQ0aNEh5+umn8z1XdHS0Aijffvttnms5c+aMoiiK0qhRI2X27NkFnvNh16YoirJixQoFUC5evGgsGzlypGJra6ukpqYay3r27KmMHDnS+LtGo1EcHByUkydPKoqiKH369FGGDx/+wPOvWLFCqVSp0kPjLOzrR1EURVq6hRDiCXD06FEGDx5MjRo12Lx5M/Pnz+fKlSssWrSIGjVqmDq8Ci1H0ROXcYdjCdFsufI3X5/ez+yjW3lz3y8M2rGC50N+QK/X0+23FTyz5UeycnSmDllUIIbZz7ds2cLFixdp0qQJI0eOxNfXlw8++IDExERThyjEY69evXq0a9eO77//HoBLly6xf/9+Xn31VQCOHTvG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3/zmN5w5c4bFixej0+n47LPPOHv2LKmpqd0afWVmZvLaa6/xzjvv4O19/dF1crmcCRMmYG9vz+HDh4mIiMDPb3BuGA11w63Hz8+PhoYG0tLSBn3qhZBYWFjw5ptv8rvf/Y67775baqomITHImDzS/emnnzJ16lRsbW2xtbVl6tSpPbrPASQlJSGTyVi3bh3Hjx/nxhtvxM7ODgcHBxYuXNij3ftQZN68eQZ9ud122209TCx0zrdLSEigpqaGU6dO9fv8vvLqq6+SmZnJJ598ctUvSUP31mg06HS6bhcPcrm8xyB6CcM5d+4cL774Im+++eaIShtuamoiPT2diRMn4uTkJLScazLYEe+mpib279+PTqdj1qxZkuE2EYOVYt7c1vn5KaWBGsbGjRvJy8ujoaGB9957r0/PmThxIuvWrevxb9GiRX3eV19KpVAoSEpK4p///Cd///vfycjIYNq0aWzbto2vvvqq6/yjR4+Snp7Oe++9xwcffMCHH37Iu+++2/W4no6ODu677z5mzJhh0M1qmUzGmDFjiI2N5cyZM5w6dcrk373DxXDrGT9+PJaWlpw4cYL/9hMeEdxyyy3MnTuX1atXCy1FQmLEYVLTvXr1apYuXcr58+e5//77Wb58OWVlZSxdupTHH3+81+ekp6cTHx+PmZlZV330jh07mDdvHiqVypRyhxT6O699nb1p6Pl6Tp8+zfr163nuuecYP368YSKvsbetrS0333wzd911F4899hiLFy/m9ddf5+677+7XHhL/Y9WqVcydO5dbbrlFaCmDhkajIT09HV9fX3x8fISW0ycGy3hXVlayf/9+3N3diY2NHTFRGyGYMn5wIkM6XafxNldAi6p9UPYUAwkJCQQHBw96ScXXX39NVVUVd911F5MnT+563NLSkhdeeAHonAurp6Skc+Z7TExM12PTpk3rdgzg9ddfJzs7m48++qhfr8nNzY1Zs2Zx6dIlUlNTaW83zXtpuBlu6AwCTJ48mdra2hHXWO3tt9/u6gkjISExeJgsvfzAgQO8+eabhIWFkZKS0jU/cv369UydOpWNGzdy2223ERfXfRzKjz/+yFdffcUdd9zR9di9997L559/zo4dO/pcZ7Vu3TqD9K5atQpHR0eDnmMqzp07x549e/Dw8CAiIsLo5+vp6Ohg6dKlhIWF8fTTTxtd66effspjjz3G559/jq2tLc8//zyPPvpov/aR6ET/RXn69GmhpQwqZ86cQSaT9fvGkFCYOtW8sLCQrKwsIiMjpVTBQSB63GgUCjkajekzdpova6ZmbTlyMloGm/Lycj744AOqq6txcXFh2rRpREZGGrRGYmIiQK8NZmfOnIm1tTUpKSm0tbWhVCq7MuLS09MJCwsDOqPfQNex3Nxc1q9fz/PPPz+gkYg2NjbEx8dz/Phx9u/fT2xsrFEzYYaj4dZjYWHB5MmTSUlJwdnZechcA5oafVO1P/7xj5w+fdrgkkQJCYn+YTLTre/avW7dui7DDeDg4MDatWu566672LJlSw/TPXPmzG6GG+C+++7j888/5+jRo3023evXrzdI79KlS4fEB65arWbx4sW0tbXx2muvXfcLzNDzL+ell14iMzOTtLS0fkXHrre3q6srX3zxhcHrSvSOvnna448/Pmg1ekOB8vJySktLmT17drdyheGCKYy3TqcjKyuLc+fOMX36dGkc2CBha6VkXIA7p85eMPlenR3MO5up+bg7mny/kcru3bt7RPxmz57Np59+2ucbWbm5uQAEBwf3OGZmZkZAQABnzpyhsLCQsLAwpkyZQlRUFA899BCHDx/uqumeMmUKkydPRqfTsXz5csLDw42SBqw3xFlZWRw8eJDY2FijfGYMZ8Otx8XFhZCQENLT05k1a9aIyRR69tln+de//sUbb7xx3f5DEhISxsFkpvvEiRNA55fXlegfy8jI6HEsKiqqx2P6dNK6uro+72+KGp3eoufGjJBrtVruu+8+9u/fzwMPPMDixYuNev7lZGZm8sILL/DEE0/0+jM3tlaJgfPGG28gk8l49tlnhZYyaLS0tJCRkcHEiROv2ll/OGBM463VasnIyKC6upr4+HhsbW2NJVOiD8SE+w2K6W5u7cDF3pzKS1WU24BKpaKtrQ2VSoVKpaK9vR2dTodOp0Or1Xb7b30p1r59+5DL5cjl8m6duRUKBUqlEktLSywtLVEqlVhZWXU9ZmFhIfqu99bW1vz1r39lwYIFjBkzBoCTJ0+ybt06EhMTmTt3LhkZGX363KmvrwfoFmC4HP3j+msYuVze1WRt27ZtyGQybr31VjZu3IhcLuftt98mLS2N9PR0GhoaWLFiBd999x1qtZr58+fz3nvv9amp2uXoM4WsrKw4fPgwU6ZMwd3d3aA1LkcMhltPcHAwVVVVZGZmEh0dLfr3Pvyvqdrvf/977rnnnhE3BUVCQghMZrobGhqQy+W4ubn1OObu7o5cLu/6orqc3r609LXCvY3dGEx6i54bK0Ku0+l44IEH2Lp1K/fccw/vv/++Uc+/kiVLlhAYGGhwGr4x9pYwnHPnzvHCCy/w9ddfj5jmaVqtlvT0dLy9vQ2+wByKGMN4d3R0kJ6eTmtrK/Hx8UO2g7uYmRLuyz93pA5oDZkMXO0scLEzx9bKDFtLBbaWZthaKbr+21qpQKfT0Vh1jrz2mi6DbGVlhaOjIxYWFl1m+nJTrf9uPXnyJBMnTkShUPQw5Xpj3tbWRmNjI5cuXeoy8x0dHchksm6m/Mp/Dg4Ow/69N2rUKP72t791e2zmzJns2rWLuLg40tLS+Pjjj3nssccGvJc+CHC5mfPy8uL//b//1+PckpISnnnmGZ5++mkiIyNZsGABSUlJvPvuu9jb2/Poo49y2223kZqa2i9zOGbMGJRKJUePHu13WYqYDDd0/l6ioqJISkqipKQEf39/oSUNCr/61a+YM2cOq1at4ptvvhFajoSE6DGZ6ba3t0er1XLp0iVGjRrV7VhlZSVarRZ7e3tTbW+Smm5TdbjUarUsX76czZs3d6XdXyuN1tDzeyMzMxPgqhdO+qYu27dv7zZOxRh7SxjOn/70pxHXPC07OxuNRmPw6J6hzECMd3t7e9c4obi4uBGTBjnUiAj0xNrSnBaVuk/ny2Tgam+Bp6MSD6fOf+4OFuiAqoZ2Gls1NKs6qG1WU1rVSpNKQ5Oqg0B3K7xcrHDxHMOC2VMN0mhnZ8fJkydxdnY2+H3S0dHRLaKuN+fNzc1UV1fT0tJCc3MzlpaWODo64uDg0PW/VlZWBu01FDEzM2P58uWkpaWxf//+PplufbCgt0ACdAYhLj/vWvzf//0fvr6+PPfcc+Tn5/Pdd9/x/PPPc++99wLQ2NjIvffeS2JiInPmzOnry+qGt7c35ubmHD16lPb2doNqxsVmuPVYWloSHR1NWloazs7OJr0+HUq88847REREsHfvXubOnSu0HAkJUWMy0z1p0iROnDhBUlISv//977sdS05OBjpHdZiK4VLTfbmJveOOO/j888+v+SVm6PlX4/777+/18f3795Ofn89vf/tb3Nzcut3xNdbeEoZx5MgRfvzxR86cOSO0lEHj4sWLFBUVMWvWLNG9x/pjvFtaWkhJScHOzo7o6GjR/UyGE2ZmCqLGjuZgRmGPY/L/GmwPJ2WXyR7laIFWCxfr2qioa+NYQT0VtW3UNKq51m1cJxtzQrwV1DQM7qxuMzMzzMzMrplWrVaraWhooK6ujrq6OsrKymhqakKpVOLo6NjNjFtaWg67dF19oKC5ublP54eGhpKenk5eXh7R0dHdjnV0dFBUVISZmVlXGvvV2Lx5M3v27OHQoUNYWFiQnZ0NdC+7069/5syZfptu6HyNM2bMIDU1FZVKxfjx46/7exKr4dbj5uZGYGAgR48eZdasWQZPgxmO+Pn58fDDD/PEE09w7NgxKYgiIWFCTPaJsmTJEj755BPWr1/PTTfd1HXXsKGhocsQL1myxFTbD4u5i1qtlvvvv58tW7bwu9/9jq1bt17XcBtyPkBBQQFqtZrAwMBuEY+PP/641/OXLl1Kfn4+f/nLX5g69X/Rlf7sLTFwdDodTz31FIsXLyYgIEBoOYNCa2srx48fZ8KECaKdN22I8W5oaCAlJQUPDw8iIyOHnYERI1PCfTmYUYi9lRkB7lZ4/jeCPcrBAs1/DfaF2jbSz9ZTUddGdWPfouKXo2+kdr56cE13XzA3N8fFxQUXF5euxzo6Oqivr+8y4uXl5TQ2NnYZcQcHB5ydnXF1dR3y3x1paWkA1zXJeubMmcMXX3zBzp07ueuuu7od279/Py0tLcycOfOaXaIvXLjA448/zooVK7q+e/XXMZfPazfm6FRHR0fi4uK6OqtPmjTpqqZL7IZbT2hoKNXV1Zw6dYpJkyYJLWdQ+Otf/8qWLVv4+uuvezQylpCQMB79Nt2nTp1i6dKlvR6Liopi5cqVrFixgrfffpvw8HBuv/12dDod3377LaWlpaxcuZKZM2f2d/shyccff8zBgweBzp+P/rGkpCQAFixY0C1V+29/+xtbtmzB1taWkJCQrnmel7NgwYKujABDzweYO3cuJSUlFBUVDahOqT97Swyc3bt3k5GRwbZt24SWMihotVqOHTuGu7u76Bu79MV419TUkJqaSmBgICEhIZLhFhidTkddXR1+TnD/PB/c7C0oq1FRXtPGkfz/RrCbDDfYvdGk6sDmvyPDhgNmZmbXNOL19fVkZmbS3t6Om5sbHh4euLu7C1YbnpaWxqRJk3r0yEhOTuaNN94A4J577ul2rL6+ngsXLuDg4ICnp2fX44sWLeLPf/4zX331FStWrOia1a1SqXjuuecAePjhh6+p55FHHsHR0ZEXX3yx6zH9iMQffviBhQsXdv335ccGiq2tLfHx8aSmppKWltaroR4phhs6m9xFR0eTlJREaWmp6L+HoPM98Pjjj/PMM89w2223SaVLEhImot+mu7y8nE8//bTXY3V1daxcuZJNmzYxadIk3nvvPT788EOg84ti/fr1LFu2rL9bD1kOHjzY42dy6NAhDh06BIC/v383011cXAxAU1NTty/ay/H39+8ysoaeb0yE3HukotVqeeqpp3jooYdwdXUVWs6gkJeXR1tbW7csCzFzLeNdXV1NamoqYWFhfY64SRgfjUbDpUuXqKiooKKiAo1Gg7u7O2fOt5JRUI5KbZqZ3c0qDQq5jOaWVpOsPxhcacR1Oh2NjY1UVFRQUlJCZmYmjo6OeHh44OHhgZ2d3YBuLO3YsYMdO3YAUFFRAUBKSkpXgMDV1ZXXX38dgD//+c+cOXOG2bNnd01IOXXqFHv37gXg+eefZ/r06d3W3759O8uWLWPJkiVdY1Ghs4fNRx99xKJFi5g9ezZ33nknzs7OfP/99+Tm5rJo0aJrRhD//e9/s337dnbt2tUtrT8oKIiFCxeyefNmmpqasLe3Z8uWLcTExJCQkNDvn9OVWFpadqWap6amEhsb25VaPZIMtx4rKysmTZpEeno6Tk5OI2JCxOrVq3n//ff55z//yUMPPSS0nCGJ/2evCC3hmhTf+7RR1tm2bRvJyclkZGSQmZlJY2Mjd999N1u3bjV4rfPnz7NmzRp27txJdXU1np6eLFiwgLVr1+Lk5CSIrurqarZv386PP/7IqVOnKCsrw8LCgoiICJYtW8ayZctMVmYh0/03f+n48eNER0dz7Nixfo2QkpAwFtJ7sZOvvvqKVatWUVBQMKzHZfWVuro6Dh48SHx8fJ8aDomJ2tpaUlJSCA0NJTAwkKqqKtLS0hg/fvyI6aQ7lFCpVFy8eJGKigouXbqEUqnsMoYuLi7I5XLWf7CTnw5mmVTHn24N4Nu0S3z19/8z6HlqtZqffvqJW265ZUhHrfryczaEdevWXbOfi5+fX9cN5H/+859s376d06dPU1VVhVqtxt3dnWnTpvHoo48SHx/f4/lbtmzp1XTrOXToEC+++CIpKSmoVCqCgoK47777WLly5VXNanV1NePGjeNXv/oVn3zySY/jdXV1PPbYY10jw2644Qbeffddk0x06OjoIDW1szP/1KlT0el0I85wX87Jkyepr68nLi5uRGQZffzxxzz77LMUFhaOiGsOPSqViqKiIgICAq6ZeTNSTPfEiRPJzMzE1tYWHx8fcnJy+mVuCwoKmD59OpWVldx6662MHTuWI0eOkJiYSGhoKIcOHeqWGTVYut5//30efvhhPDw8mDNnDr6+vly8eJFvv/2W+vp6brvttq5Rjn2hr+8fkEy3xBBEei92dqoeO3YsDz/8ME8++aTQckyOVqslOTkZT09Pxo4dK7QcQdAbb29vb0pLS4mIiMDPz09oWSOCyyOwFRUV1NXVXTcC+/OhLNa9v9Okuh68cTS7MqrY+uqDmCn6bkCHi+m+nKtlFHh4eDBq1KgRMypRaDo6OkhLS0Oj0aDT6bCwsBiRhhs6fxZJSUkEBAT0a8TjcEOr1TJhwgTuvPNOnn32WaHlDBqS6e5OYmIiPj4+BAUFkZycTEJCQr/M7Y033siuXbvYtGkTK1as6Hr88ccfZ+PGjTz44IMGjRw2lq59+/bR2NjIr3/9626faxUVFcTExFBaWsrXX3/NokWL+rSeIaZbalMoITEE0Te6M8aM2OFAbm4uMpmMkJAQoaUIhpOTE2PHjqW4uBgPDw/JcA8CbW1tnD17ln379rF//35qa2vx8/Nj/vz5zJw5k5CQEOzt7Xu94x0z3vS/nyaVBhulgrrG4VHXPRAUCgUeHh5MnDiRG2+8kenTp2NjY8PZs2fZuXMnaWlpXLx4cVg0SR3OmJmZER0dTWNjI83NzURFRY1Iww2dP4uJEyeSnZ1NU1OT0HJMjlwu54UXXuDVV1+lurpaaDkSApGQkEBwcPCAsjsKCgrYtWsXAQEBPPLII92OrV+/HhsbGz777DOD/q6MoQs6G1/eeuutPT7XPDw8ukor9L24jI1kuiUkhhhNTU2sW7eO5557bkREd+rq6igoKLhm59yRQFVVFVlZWYSEhFBZWUlBQYHQkkSJTqejsrKSo0ePsmvXLi5evEhoaCg333wzsbGx+Pn59am5l4ujDYE+fU+N6w/Nqg5srcyGTTM1YyGTyXByciIsLIzZs2czd+5c7O3tycjIYPfu3eTk5NDSMrJ+JoOFWq3myJEjODk54eDgwNGjR+no6BBalmC4urri5+fHiRMnRsQNn1tvvZXw8HBeeukloaVIDGMSExMBmD9/fo/rOjs7O2bMmEFra2vXpIihgv6a21QZYiP3CldCYoiyceNGPDw8rjodQExoNBqOHz9OcHDwiKvjvpzq6mrS0tKIiIggLCyMadOmkZubKxlvI6JSqcjLy2PPnj0cP34ca2trEhISmDFjBj4+Pv2K5k0xcbS7c2zY4M/qHmrY2NgQFhbGDTfcQGRkJPX19ezZs4eUlBTKy8vRak3TzG6kcXnTtNjYWGJjY5HJZKSlpY1o4x0WFkZbW9uI+Tx+5ZVX+Mc//sG5c+eEliIxTMnNzQUgODi41+P6x/Py8gZN0/Xo6OjoaoZ90003mWQPyXRLSAwhqqqq+Pvf/84LL7wwIqK+eXl5yOXyq34wjwT0Y8HGjx/flVKu72ouGe+BU1tby7Fjx9i9ezfV1dWMHz+e+fPnM378+AF3JY4J9zWSyt5pau003bUj3HTrkcvleHh4EBsbyw033ICzszOnT59mz5495Ofn097eLrTEYUtvXcrNzMyIjY1Fp9Nx5MgRNBqN0DIFwczMjEmTJpGTk0NjY6PQckzOzJkzmT17NmvWrBFaisQwpb6+HuCqwRT943V1dYMl6bo8/fTTnD59mptvvpkbb7zRJHv0e2SYhISE8XnxxReJjIzkt7/9rdBSTE5tbS0FBQXEx8ePiBsMvdHQ0EBqaipjx47t0aW8L3O8JXpHq9Vy4cIFCgoKaGhowNfXl4SEBKOP/okaOxpzMwXqDtOYkSZVB7aW1iMuvbwvWFlZERoaSkhICBUVFRQWFpKbm4uPjw9jxozB3t5eaInDhmuNBdMb75SUFI4dO8aUKVNGRCfvK3FxcelKM4+Pjxf9z+C1115jypQpPPXUU4wbN05oORIiQ1+qof87Ki4u7nUixLp16wZFz5tvvsmGDRsIDQ3ls88+M9k+kumWkBgilJSU8N5777Fnzx6hpZgcjUbDiRMnRnRaeWtrKykpKdfsjCsZb8Nob2+nuLiYoqIi5HI5Y8aMYdq0aSarz7KyNCc80IMTuWUmWb9JpcFGinRfE5lMhqenJ56entTX11NYWEhycjIuLi6MGTMGd3d30RukgdCXOdzm5uZMnTqVAwcOcPLkSSIjI0fkzzQsLIykpCQKCgoICgoSWo5JiYiIYOHChTz99NN8//33QsuRGGbor+v0Ee8raWho6HZecXFxr+MeB8N0v/XWW6xevZqwsDD27duHq6uryfYameElCYkhyJo1a5g7dy5xcXFCSzE5ubm5IzqtvL29nZSUFNzd3a87Ik1KNb8+HR0d5Obmsnv3bi5dukRkZCTz5s0jMDDQ5COzYsJNV9fdrNJgaznyGqn1FwcHByZNmsT8+fNxcXEhIyOD5ORkKisrR0QTLEPpi+HWY2FhwbRp06ioqOiq1xxpjLQ085dffpk9e/Zw+PBhoaVIDDNCQ0OBq9ds5+fnA3RNrJk9ezY6na7HP1Pz+uuvs2rVKsLDw0lKSsLDw8Ok+0mmW0JiCFBQUMCXX37Jq6++KrQUk1NbW0thYSFRUVEjMq1cPwfXxsamzxEjyXj3jlarpbCwkD179nDx4kViY2OZMWMGnp6egxaJm2LCuu4mVQdKc/mIGBlmTJRKJaGhodxwww34+PiQnp7O4cOHqa2tFVrakMEQw63H2tqaadOmUVhYSFFR0SCoHHq4uLjg7+8/IrqZ+/v7c8899wxaiq+EeEhISABg165dPRpdNjY2cujQIaysrJg6daoQ8oDOm0pPPvkkEydOJDExkVGjRpl8zx7p5dnZ2SbfVELiWozE9+Brr73GDTfcQHh4uNBSTIpWqyUjI4Pg4OARWXOp1WpJT09HJpMxefJkg246SKnm/0On01FWVkZ2djYKhYIJEybg4eEhSMrruDEe2FkraWxpM/rare1aNFodKpXK6GuPBBQKBUFBQfj5+ZGfn8+hQ4dwd3cnLCzM6PX9w4n+GG499vb2XTXeSqUSLy8vEyodmowdO5akpCSKiooYM2aM0HJMyl//+ldCQkI4fvw4UVFRQsuRGGKo1WoKCgowNzfvdk0SGBjI/Pnz2bVrF++++y4rVqzoOrZ27Vqam5t58MEHsbGxGXRtAM8//zxr1qwhOjqaXbt24ezsbDIdl9Nlul1dXbG2tuaee+4ZlI0lJK6FtbW1SesqhhIXLlzg008/JSkpSWgpJqe4uBiNRiP6erje0Ol0ZGZm0traSlxcXL9GVI10463T6bh06RJZWVm0t7cTGhqKr6+voPWlCrmc6HGjSUo/a5L1m1QdtLcb39CPJMzNzRk3bhwBAQHk5eWRmJjI6NGjCQ0NxcrKSmh5g8pADLceFxcXoqOjOXbsGBYWFiPmu1qPmZkZERERpKen4+3tjVKpFFqSyRg9ejS33XYbL730Etu2bRNajsQgsGPHDnbs2AFARUUFACkpKV1jbF1dXXn99dcBKCsrIywsDD8/P4qLi7ut849//IPp06ezcuVK9u7dS1hYGGlpaSQmJhISEsKLL75oMl3X0vbpp5+yZs0aFAoF8fHxbNq0qcde/v7+Jhnb22W6fX19yc7OpqqqyuibSEgYiqurK76+ph3HM1R44403iI2NFTTNZjBQqVRkZ2czZcqUfl3oDXeys7O5dOkS8fHxA6ozHqnGu6amhuzsbOrr6wkJCSEgIGDIvI+mjPc1meluVmnQaUfujGRjYmVlxYQJEwgMDCQ7O5u9e/cSEBBAcHAwFhYWQsszOcYw3Ho8PT2JiIggLS2NuLi4EdcQ093dHTc3N86cOSP6CPCaNWuIjIwkLy+vqwZXQrxkZGR0zavWU1hYSGFhIQB+fn7dzO3VCAwMJD09nTVr1rBz505++uknPD09WblyJWvXrjU4umwsXfrSGI1Gw5tvvtnrObNmzTKJ6ZbpxF6UIiExhKmtrWX06NF88803JpsLOFQ4fvw4HR0dxMTECC1l0CkuLiY7O5u4uDjs7OyMsmZtbS0pKSmEhoaK2ng3NjaSnZ1NZWUlgYGBBAUFmbw5mqGcq6jld09uNsnai6Z7UHyxhVeevAc7G8s+PUetVvPTTz9xyy23DLmf1VCitraWrKws6uvrCQ4OZsyYMUPmRo6xMabhvpy8vDwKCwuZNWvWiMsaaGlpYd++fUyfPn3Q0lOF4re//S1ubm7885//FFqK0VGpVBQVFREQEIClZd8+YyUk9Bjy/hl5XYwkJIYQ77zzDmPHjhW94a6pqaG8vFz0Neu9UVVVxenTp4mJiTGa4QbxN1drbW0lIyODpKQklEol8+bNIywsbEiaSF8PJzxdTdOjoKm1AxsrM2obWk2y/kjGycmJGTNmMHnyZMrKytizZw8lJSU9Gv8Md0xluAGCg4MZNWoUR44cQaMxzbz6oYq1tTXBwcGcPHlS9E3V1qxZw9atWzl//rzQUiQkhi2S6ZaQEIjm5mbefPNNnnrqKaGlmBStVsvJkycJCQnB2tpaaDmDSktLC0ePHiU8PBwXFxejry9G463T6SgoKGDv3r10dHSQkJDAhAkThnwEYsp405TDNLdpsLVUUCPN6jYZo0aNYtasWYSHh5Ofn8/+/fuvOl92uGFKww2dc9InTJiATCYjIyND9ObzSoKCgujo6BB9N/fJkyczY8YMNmzYILQUCYlhi2S6JSQE4uOPP2bUqFEsWrRIaCkmpbi4mI6ODlGnQPeGfjSYt7c3/v7+JttHTMa7ubmZQ4cOUVhYyNSpU5k8efKw6TJtqnndTa3/ndXd0GyS9SU6kclkeHt7M2fOHNzd3Tlw4AA5OTnDOuptasOtR6FQEBMTQ1VVFWfPmqa3wVBFoVAQERFBTk4ObW3ibnj47LPP8uGHH1JdXS20FAmJYYlkuiUkBKC9vZ3XXnuN1atXi3pWdVtbG9nZ2URGRoq2VrI3dDodx48fx8LCYlBS6oe78dbpdBQWFpKYmIi9vT0JCQnDriPylPG+mKKJepOqA1tLBbX1Unr5YCCXywkLCyMuLo7y8vJhG/UeLMOtx9LSktjYWHJzc7l48aJJ9xpquLu74+rqSlZWltBSTMrcuXMJDw/vtduzhITE9RHv1b6ExBDmiy++wMzMjPvuu09oKSblzJkzuLm5MWrUKKGlDCq5ubnU19czZcqUQbupMlyNtz66XVBQwNSpU4mMjMTMzOz6TxxiONpZEeJr/Pd5k0qfXi5FugcTR0dHZs2a1RX1zs3NHTZR78E23HocHR2ZOHEi6enpNDY2DsqeQ4Xw8HDKysqoqakRWopJ+fOf/8xbb71FU1OT0FIkJIYdkumWkBhkNBoNL7/8Mo8++uiwNBd9ZaQ2TysvL6egoIDY2NhBH0M0nIy3GKLbV2KKuu4mVQfWSgW1Uk33oKNQKAgLC2PGjBmUlZWxf/9+GhoahJZ1TYQy3Hp8fHwICAggLS2N9vb2Qd1bSEZKU7UFCxbg4+PDBx98ILQUCYlhh2S6JSQGmR07dtDQ0MCKFSuElmIydDodJ0+eJDg4eEQ1T6uvr+f48eNERUVhb2+abtbXYzgY7+bmZg4fPtx1c2K4RrevxBR13c0qDTKZjMZmyXQLhZOTE7NmzWLUqFHs379/yEa9hTbcesLCwrCzsyM9PX1I/pxMhb6pWnFxsdBSTIZcLufxxx/n9ddfF30Nu4SEsZFMt4TEIKLT6XjxxRdZvnz5kO/GPBBKS0tRq9UEBQUJLWXQUKvVHDlyhODgYDw9PQXVMlSN9+XRbVtbWxISEnBzcxNaltGYGOqN0ty4Rkerg5Y2Da2tKqOuK2EYCoWCcePGDdmo91Ax3NDZlC4qKgqVSkVOTo5gOgYbhUJBeHg4OTk5qNVqoeWYjCVLlmBtbc3nn38utBQJiWGFZLolJAaRvXv3UlRUxJNPPim0FJOh0WjIyckhLCxsxDRP0+l0ZGRkYGtrS0hIiNBygKFnvPXR7bNnzxIbG8uECRNEEd2+HKWFGZEh3kZft0nVQccIStUdygzFqPdQMtx6zM3NmTx5MoWFhVRWVgotZ9Bwd3fHzs5uSHzmmgqFQsGjjz7Kyy+/LPh7X0JiOCGZbgmJQWTjxo3ccccdODg4CC3FZBQVFWFubo63t/HNx1CluLiYmpoaoqKikJmihXU/GSrG+9y5c6KNbl9JTLgp6ro1aDXijZwNN66Meh84cIDmZmEa3Q1Fw63H3t6eiIgIjh8/jko1MjI1ZDIZ48aN4+zZs6J+zX/84x9paGjg559/FlqKhMSwQTLdEhKDRGFhIbt37+ZPf/qT0FJMhlqtJi8vj3Hjxg0p82lK6uvrOXPmDNHR0SiVSqHl9EBI463Vajl16hSnT58mJiaGCRMmYG5uPqgaBpsp401T122mAHWHxuhrS/QffdTbycmJ/fv3U1VVNaj7D2XDrcfX1xc3NzeOHTsm6gZjl+Ps7Iybmxt5eXlCSzEZSqWSu+66SxofJiFhAJLplpAYJN59911mz55NcHCw0FJMxtmzZ7G3tx8xI8I6Ojo4evQoQUFBQ7rzthDGu729ndTUVC5dutSVjjsSCPUbhYOtcfs1NKk6sFUqqJE6mA85FAoFkZGRjBs3jtTUVIqKigZl3+FguKEz8hsZGUlra6uoTeiVhIWFUVJSIlgGxGDw+OOPk5iYOKJ+rxISA0Ey3RISg0BLSwv//Oc/efTRR4WWYjJUKhUFBQUjJsqt0+nIzMzEysqK0NBQoeVcl8E03o2Njezfvx+FQkF8fDw2NjYm3W8oIZfLjD46rKlVg62Vgpp6yXQPVfz8/Jg2bRo5OTlkZmaatNZ1uBhuPebm5kyZMoX8/PxBzwYQCnt7e3x8fETdSM7f35958+bx7rvvCi1FQmJYIJluCYlB4IsvvmDUqFH8+te/FlqKycjNzWXUqFE4OzsLLWVQKC0tpbKycsjVcV+LwTDeFy9eZP/+/Xh7exMTEyP6dPLeMLrpVnVgY2kmzeoe4ri4uDBr1ixqa2s5fPiwSUYqDTfDrcfBwYHx48dz7NixETNqauzYsVy4cIH6+nqhpZiMxx57jM2bN9PU1CS0FAmJIY+4WsdKSAxBdDodmzZtYtmyZcjl4rzP1dTUxLlz55g9e7bQUgaFhoYGTp48SUxMDFZWVkLLMQi98U5JSQEgMDDQKOvqdDrOnj1Lbm4uEydOxMfHxyjrDkeMPa+7WaXB1lIhme5hgLW1NXFxcZw4cYL9+/cTExNjtMaZw9Vw6/H39+fSpUscP36cqVOnDpublf3FysoKf39/srKymDZtmtByTMINN9yAj48Pn3/+OQ8//LDQckzKr/avFFrCNflxpnHq67dt20ZycjIZGRlkZmbS2NjI3XffzdatW/u8RnV1Ndu3b+fHH3/k1KlTlJWVYWFhQUREBMuWLevX9bAxdOnx9/enpKSk12Pu7u5UVFQYvGZfkEy3hISJOXjwICUlJTzyyCNCSzEZOTk5+Pj4YGdnJ7QUk6PVajl+/DgBAQHDtk7Z2MZbo9GQkZFBVVUVcXFxODo6GkHl8MXLzQGfUQ6crzROhKvpv6a7pk689aFiwszMjMmTJ5OXl8fBgweJiorC09NzQGsOd8MNnfXdkyZNIikpiaKiIsaMGSO0JJMTEhLC7t27qaqqGtJ9P/qLXC7n/vvvZ9OmTTz00EOiv5EyEnjhhRfIzMzE1ta23yUSX3/9NQ8//DAeHh7MmTMHX19fLl68yLfffsvy5cv56aef2LZtm0HvF2PouhwHBwdWrVrV43FbW9sBrXstJNMtIWFi3n33XRYuXIi9vb3QUkxCXV0dFRUVzJ07V2gpg0JeXh46nY6wsDChpQwIYxnv1tZWjhw5gkwmY9asWVhaGreJ2HAlJtyP8/tOGmWtJlUHZgo5dY2S6R4uyGQyQkNDsbOz49ixYwQHBxMSEtIvUyIGw63H3NycSZMmkZqairu7u+j7PVhYWBAcHMyZM2eYOXOmKE3pgw8+yN/+9jcOHDjAzJkzhZYjMUA2btyIj48PQUFBJCcnk5CQYPAaISEh7Nixg1//+tfdPq9eeuklYmJi+Pbbb/nmm29YtGjRoOq6HEdHR9atWzegNQxFnLmuEhJDhEuXLrF9+3Yee+wxoaWYjKysLAICAoZdmnV/qK+v5+zZs0yaNEkUpQIDrfGura0lOTkZOzs7ZsyYIRnuyzBminl7h472Di1NLa1GW1NicPDy8iI+Pp6SkhLS09Pp6Ogw6PliMtx6XF1d8fX15cSJEyNijNiYMWNobW3lwoULQksxCba2tixYsID33ntPaCkSRiAhIYHg4OAB3SCaM2cOt956a4/PKw8PDx566CEAkpKSBl2X0Az/q0YJiSHM5s2biYiIICoqSmgpJqGmpoba2lpRj0HTo08rDwwMFFX6dH+Nd2lpKYcOHSI4OJhJkyaJwgwYk8njRiM34sVBk0qDSqUy2noSg4eDgwOzZs2ira2NgwcP0trat5snYjTcesaNG0drayuFhYVCSzE5ZmZmhISEkJubK9qbDI899hjffvstly5dElqKxBDHwsICQPAmq21tbWzdupWXXnqJt956i8TERDQajUn3lEy3hISJ0Gq1fPDBB9x///1CSzEZ+fn5+Pv7d32Iihn9LNLhMB7MUAw13vn5+V2N5AIDA4f1nWdTYWdjSViAu9HWa1Z1oG4fGV2fxYhSqWT69Ok4OTmRnJxMQ0PDNc8Xs+GGTiM6adIksrOzR0Tnaz8/P9ra2rh48aLQUkxCVFQUERERbN68WWgpEkOYjo4OPv30UwBuuukmQbVUVFSwePFinn32WVatWsWcOXMIDg4mOTnZZHtKNd0SEiZi37591NbWsmzZMqGlmISGhgYqKyuZMGGC0FJMTl1dHWfPniUuLk4UaeW90Zcab51OR25uLkVFRcTFxRmtK7MYaVK3ETjOjTOFxumC2qTSoNNo0ei0NLW3UtfeSl2bivr2Vlo1HWh1Wjq0OrQ6LZoODQrgp3NZmJmZoZDJMJPLsTFT4qi0xNHCCkelJVZmUjnAYCKXy4mMjESpVHLo0CGmT5/e69+Q2A23Hn2aeUZGBjNmzBD1zTuFQkFgYCD5+fm4u7uL8rXef//9vP766zzxxBOi/Z6UGBhPP/00p0+f5uabb+bGG28UTMeyZcuIj49n/Pjx2NnZUVhYyDvvvMOHH37IzTffTEpKikmubSXTLSFhIt577z1uu+020da55ufn4+vrK9rXp0er1XLixAmCgoJElVbeG9cy3jqdjqysLEpLS5kxY4ZoGwMOhOzaSpLKCkkqK+D4pTJCbNyMtnZTawcyGUz8f2/Q2H7tumAlcl5zCOWpQ7/QhrbXc+QyuCdkIn+LFS7a0J8RMIcPH+aFF14gNTUVlUpFUFAQ9913HytWrDDYnBqyVkVFBatXr2bv3r3IZDLmzp3LG2+8gYeHR491n3vuOd5++22ysrLw9vbudkwmkzF27FjkcnmX8b78c2WkGG4948aNIzExkcLCQqONLxyq+Pv7k5eXR3V1tSg7mS9btoxnn32Wffv2MW/ePKHlSAwx3nzzTTZs2EBoaCifffZZt2PFxcVs2bKlx3NM1ehs7dq13f5/eHg477//Pra2tmzYsIF169axfft2o+8rmW4JCRNw8eJFfvjhB44dOya0FJPQ3NxMeXk5c+bMEVqKycnNzQU6u3GOBHoz3jqdjtOnT1NeXk5cXJxJR2oMN05XV/B9URb/Kc6hvKV7ynBecxWeVkraWg1rntUbTSoNbg4WyHVmwMDX0+rA1lzY5oeGjoD57rvvuP3227G0tOSOO+7A2dmZH374gdWrV3Po0CG+/vrrPu9tyFparZbf/OY3nDlzhsWLF6PT6fjss884e/Ysqamp3aJ6mZmZvPbaa7zzzjs9DPflhISEdBnvadOm4ezsPOIMN/wvzVzfzVzMny3m5uYEBASQn58vStNtaWnJbbfdxnvvvSeZboluvPXWW6xevZqwsDD27dvX4/1fXFzM+vXrezxvsLuLP/TQQ2zYsIH9+/ebZH3JdEtImIAvv/ySiIgIIiIihJZiEs6ePYuXl5fox73U19dTUFBAfHz8iEqXu9x463Q6mpubqaysJC4uTvS/875Q3FDL9sLT/FCcTWFDTa/nyGUyAmydcAux5Gxm5YD3bFZpCHA3w8Hcknq1cRqquVhaG2Wd/mLICJiGhgaWL1+OQqEgKSmJyZMnA/D8888zZ84ctm3bxldffcWdd9553X0NXevo0aOkp6ezZcsWlixZAkBsbCzLly8nPT2dmJgYoLNe8b777mPGjBk88MAD19URFBSEQqEgJSWF6Oho8vLyRpTh1jOS0swDAwPZvXs3dXV1osyceuSRR4iNjaW2thYnJyeh5UgMAV5//XWefPJJwsPD2bt3L6NGjepxzuzZs4dEk0G9tuZm04znHDlXkRISg8hnn33GHXfcIbQMk6BSqTh37pzoO5brdDpOnjxJQEDAiKxddnJyYurUqWRlZVFeXs6MGTNGtOFuVrfz7/xMfrdzK7N3fMBbJw/1MNyOFlZMdvIhRumLW4Ud5zIaMbc1TpPBJlUHtpYK7BTd17M2M8dFaY2bpQ0eVnZ4W9vjY9OZ+u9hbYu7lS1uljY4Ka0wv+LGkauVsL9PQ0bAfP3111RVVXHXXXd1mWTojK698MILAPzjH//o076GrlVSUgLQZa4Bpk2b1u0YdF5cZmdn89FHH/XZOAYEBBAWFkZaWho6nW7EGW4948aNo7m5mdLSUqGlmBSlUomvry/5+flCSzEJkyZNIjg4mG+++UZoKRJDgJdffpknn3ySiRMnkpiY2KvhHkqkpaUBnWP+TIEU6ZaQMDK5ubmcOXNGtA3UCgoKcHNzE31Nb2lpKa2traLsVt4XdDodpaWlKJVKOjo6uHDhguhrLnvjZNUFPss9zk8lObR0qHsctzNXMtZ2FOpaDXm51ZzWdR+ZU9FmnDvmTSoNNpYKPJrsaW/W0dzaTkNzOx0aLc10H3OilMtgAtRltdOm/V/0QIE5tkpz7GwssLY0x1NhZxRtg0FiYiLQe8fbmTNnYm1tTUpKCm1tbSiVSqOu5efXOXM9PT2dsLAwoDP6DXQdy83NZf369Tz//PMEBQX1+XWp1WrOnz+PnZ0djY2N1NXV4eLi0ufniwUzMzPCw8M5deoUnp6ego8TMiVBQUHs3buXpqYmUabT33bbbXz22WcsX75caCkSJkatVlNQUIC5uXmP64Pnn3+eNWvWEB0dza5du3B2dh4S2s6cOYOnp2cPPaWlpTz66KMA3HPPPSbRJJluCQkjs3XrVuLj43FzM14TpaGCWq2muLi4K8ojVtRqNVlZWURGRmJmNvI+JvU13BcvXiQ+Pp62trZrdjUXG1qdjj2l+XycdYQjled7HDeXK4hw8EDeKCP3bDWnNFdPHy+prWO0oxX1dX2bzXw1mlUarCwUaGs6KL147XFT16K1TU1rW+fNA0elsDXdhqDvrdBbho2ZmRkBAQGcOXOGwsLCLmNsrLWmTJlCVFQUDz30EIcPH+6q6Z4yZQqTJ09Gp9OxfPlywsPDWb16dZ9f0+U13DNmzKC0tJTU1NSu0WIjDS8vL0pKSsjJyRFtaRaAtbU13t7enD17lokTJwotx+gsX76cV155hXPnzuHr6yu0HAkD2bFjBzt27AA6G0gCpKSksHTpUqCzHOT1118HoKysjLCwMPz8/CguLu5a49NPP2XNmjUoFAri4+PZtGlTj338/f271jS2rmtp+/rrr3nllVdISEggICCgq3v5f/7zH1QqFbfccgtPPPFEn3UZwsi7mpSQMCE6nY6tW7fy3HPPCS3FJBQWFuLg4DDodywHm+zsbOzt7fH09BRayqCj71Kub5pmbW2NtbX1dceJiYWkskLWH9lNUWNtj2MBts546OwoLKwl62xVn9bTAZ4BTtSfGKDpbtOg1eowZhW2i42wNd2GUF9fD3DVUg/943V1dUZfSy6XdzVZ27ZtGzKZjFtvvZWNGzcil8t5++23SUtLIz09nYaGBlasWMF3332HWq1m/vz5vPfeez2aqvXWNM3f3x+NRkNKSkqPruYjAZlMRkREBMnJyfj6+oq6rCc4OJikpCRCQ0Oxsho+N7/6gp+fH1OmTOFf//oXTz/9tNByJAwkIyOja5a2nsLCQgoLC4HO3+/l5rY3ioqKANBoNLz55pu9njNr1iyDTLcxdEFnWVNubi4nTpwgJSWF5uZmHB0diYuLY/HixSxevNhkfSUk0y0hYURSU1Oprq7mrrvuElqK0eno6KCwsJDo6GihpZiU+vp6zp07x6xZs0Td0Odq5Obmdo0Fu7yGuy9zvMWAjZl5N8NtLlcw0cGLxgvtFBfWcQHD08U11sZ5HzW3aVAaqdeMXCbDyVo8F/v6JjzG+JvtbS0vLy/+3//7fz3OLSkp4ZlnnuHpp58mMjKSBQsWkJSUxLvvvou9vT2PPvoot912G6mpqV3rXatLeWBgIFqtlpSUlBE5ms/Ozo6AgABOnjxJXFycaD+D7ezscHd3p6CggPDwcKHlGJ077riDDz/8UFSm+8eZPaO1YmTdunV97hru7+/fawM0Q9YwhS64urZZs2Yxa9YsIyrrO1IjNQkJI/L5558zf/58rK2HTwSpr5w7dw4rKytRps3r0TdPGzNmDHZ2w6fe1Vjk5+dTVFTE9OnTe339euOdm5tLQUGBAApNzxT30Ux288HBwpJpDn64Vdpx6lglxeV1/V6zpKneKNqaVBrMtcZx3U7WVsjlw8fQ6KOe+ij1lTQ0NHQ7b7DW+r//+z98fX157rnnyM/P57vvvuOJJ57g3nvvZcGCBbz88sscOXKkq468L2PBgoODGTNmDIcPH6axsfG6GsRGaGgoLS0tnD/fs7RDTAQHB1NcXEx7e7vQUozOkiVLKCws5OTJk0JLkZAYMkimW0LCSKjVar766ivuvfdeoaUYHZ1OR1FREYGBgaKNPEBnI42WlpYRM5P7csrKysjLy2PatGnXjK6NBOO9MmwGskI5J05UUNMwsLRwgEtNzXh4DzxVtknVgSVaPCzNCbazIsrZllmjHLjBw4kbPZ242cuZX3k787cJAQDM93TiJk8n5ns6Mc/Dkelu9kQ42uBvo8TP3hqNRnOdHYcO+oaGeXl5PY51dHRQVFSEmZlZn7rOGmutzZs3s2fPHv75z39iYWFBdnY2AFFRUV3n6DODzpw5Y9Ac7pCQEEaPHk1aWpooTdm10DdV0//MxIqTkxMODg6i7Nju6OhIQkICn3/+udBSJCSGDFJ6uYSEkfjll19QKpX86le/ElqK0bl06RLt7e14eXkJLcVkjOTmaXV1dZw4cYLJkyf3qY5U7Knm8X7+jHZwJP9StdHWdPa2paLs+hFvKws57o5KPByVOFibYWulwMbSDDtLBXbWZshlMsZ7WNKg7qBBraGpQ0O7VotG19kATquDNo0WpUKOQiZDoZAhl8lQyGR4KeTYmyuwNzfDzlzBf/7zH8zMzLC0tOz2z9bWFgcHB+zt7YfMfPo5c+bwxRdfsHPnzh7lO/v376elpYWZM2det3O5sda6cOECjz/+OCtWrGDq1KnA/9LS29raus5TqTpnqutrtfs6h1smkzFu3Diampo4evQo06ZNGzK/i8HAy8uL4uJi0TdVCwgIICcnhzFjxojuhvY999zDE088wauvvjqi3rsSEldjZF1ZSkiYkM8++4xf//rXopyxWlRUhL+/vyhfm568vDzs7OxGXPM0lUpFWloaISEheHh49Pl5YjbeMpmM+2ZE85cdu4y2ZrNZz6iylYUcDyclnk6dJtvDSYmjjTm1TWou1rVR26zmXJWa5lYNTaoOxvrYYKVU8FnVpV52+B+7LtTwtwkB/Fxe021k2OX8KjyEl34zD5VK1eNfaWkpp0+fRqvVYm9vj6OjIw4ODjg6OgpmxBctWsSf//xnvvrqK1asWNE1X1ulUnU1rnz44Ye7Pae+vp4LFy7g4ODQ7e+6P2tdySOPPIKjoyMvvvhi12Pjx48H4IcffmDhwoVd/62nr4Zbj0wmIyoqigMHDnDmzBlRm88rkclkREZGkpSUhL+/v2jLfby8vDh9+jSVlZW4u7sLLceoLFq0iEcffZTk5GQSEhKEliMhITiS6ZaQMAINDQ388MMPJCUlCS3F6DQ3N1NZWUlkZKTQUkxGa2srRUVFom7c0xsajYajR4/i4uLS6/ik6yFm4/3riLFs2pfChQbj1NQW1Nbi4WBBoLsVPi6WnZFsG3NqmtRcrG2jvLaN44UNVNS2oVJre13D1d6CQE9zLM3MUHV0DEiPq60NSqUSpVLZa+2yTqejubmZuro66uvrKSsr48yZM2i1Wuzs7HB0dMTNzY1Ro0b1e6ayISNg7O3t+eijj1i0aBGzZ8/mzjvvxNnZme+//57c3FwWLVrEHXfc0W397du3s2zZMpYsWcKWLVu6Hu/PWpfz73//m+3bt7Nr165uzQaDgoJYuHAhmzdvpqmpCXt7e7Zs2UJYWBgxMTEGGW495ubmxMbGsn//fuzt7bvmgo8E7Ozs8PX1JTs7m5iYGKHlmAS5XI6/vz+FhYWiM90WFhbcfPPNbN26VTLdEhJIpltCwihs374dX19fYmNjhZZidIqLi/Hw8BDdWJPLycnJwcPDY0SN6NE3jdNoNEyaNKnfNxvEarzNFQqWTovi5V+S+72GHPCztWScvTVhDtY4h5lTdLGFkksq0s82cLHu6ga7N5pUGmwtzXCwskTV2NRvXQDO1xkXJpPJsLW1xdbWFh8fH+B/Rry+vp66ujpyc3M5duwYrq6ueHh44OHhYVATSUNHwCxYsIDk5GRefPFFvvnmG1QqFUFBQbzxxhusXLnSoPdwf9eqrq5mxYoVLFu2jBtuuKHH8U8++QQ7O7uukWHTpk3jySefJDY2tt+ZQjY2NkyZMoXU1FRsbW1xcXHp1zrDkdDQUPbs2UNNTY1oR1X6+/uTn59PU1MTtra2QssxKkuWLGHRokW8++67WFpaCi1HQkJQZLre+qlLSEgYxLx585g8eTKvvPKK0FKMikaj4ZdffiEmJgZXV1eh5ZiEhoYGkpOTmTNnTreoldgpKCggPz+fWbNmGeWGSm1tLSkpKYSGhorGeLe0q0nY+DH1rao+P8dSLiPkvyZ7rL01Wh1kNzSTVd+Cs5UTpw71vyOzt7OS26Z58NWlJs5W11z1PKVcxt8mBLAms+iq6eUv/PYGFkUNfFRRc3MzFRUVVFRUUF1djZ2dHR4eHri7u+Pk5DSiMkcux5CmaX2lqKiInJwcZs2aJcoJGVcjKyuL2tpapk+fLtr3U3p6OpaWlqIbH6bVavH392fjxo3cfvvtQsvpFZVKRVFREQEBAdKNAQmDMeT9I3U2kJAYIBcuXCA5OZnly5cLLcXolJeXo1QqRR1Zyc7Oxs/Pb0QZ7srKyq6UTWNlMIixq7m1hTl3x0y47nnmchmTnW25P9CDv0b4M9fDibr2DjYXVPDC6RK2nasiq76FS5q26651LZpUGmyUCmzM+pfOfTku14l09xUbGxsCAwOZMWMGN998M8HBwTQ3N5Oamsovv/xCRkYGNTU1vc5LFSumMNzQ2XTLy8uLI0eO0DHA8oLhRHBwMPX19Vy6dO1eBsMZf39/zp07N6wmCvQFuVzOrbfeymeffSa0FAkJwZHSyyUkBsiOHTuIjIwkKChIaClGp7i4GH9/f9FGF2pqarh06RLz5s0TWsqg0dTURHp6OpGRkUZP1xRjqvnimElsPnyMVnVPk+NlZUGMix2TnO2obVdzrLqJ7aVV1LT3bogKqmtwsTJH1dq/MUhNKg1yuQw7I5g4Y5nuyzE3N8fHxwcfHx+0Wi3V1dWUl5eTkpKClZUV/v7++Pj4YGFhYfS9hwqmMtx6IiIiOHz4cNe0AbF+Nl+Oubk5ISEhZGVl4ebmJsrX7OLiglKppLy8nNGjRwstx6gsXbqU6dOn09zcPKJubktIXIkU6ZaQGCA7duxg/vz5QsswOg0NDdTX14vuAkCPTqcjKyuLwMDAEZNSplarSUtLw9fXF19fX5PsIbaIt5ONFbdP+l/Kp0IGUc62PBrixUPBXihkMj4+e4E3c8o4cKn+qoYboEOrxTew/1kjGq2O1nYNNrKBf3W72Jo2PVkul+Pm5saECRO48cYbCQoKoqysjF9++YXjx49TV1dn0v2FwNSGGzp/rlOmTKGurq7XOeNiJSAggLa2NsrKyoSWYhJkMhn+/v4UFxcLLcXoREdH4+Hhwe7du4WWIiEhKJLplpAYAE1NTSQlJV2z0+1wpbi4GC8vL9FGpSorK2lsbBRlhkJv6HQ6jh07hrW1dddoI1MhNuO9bHo0jhbm3ODhxF/G+5Lg7kh6TSMvni7hm9IqSlv6njYudxhYglmzSoOlEQJ9poh0Xw0zMzN8fX2Jj49n1qxZKBQKDh48yIEDBygvL0er7XszuaHKYBhuPUqlkpiYGPLz8ykvLzfZPkMJhULB2LFjyc7OFsX7pTdGjx5NfX09DQ0NQksxOgkJCXz//fdCy5CQEBTJdEtIDIBdu3bh5eXFxIkThZZiVDo6OigtLcXf319oKSZBH+UOCQnp97ij4UZWVhZNTU2DlpIqFuPd0tJCZVEBfx43Gh9rJf8uucQb2edJrWq8apOya1GuGljX8SZVB8oB1kfbWFhgaS5MdZm9vT0TJkxg/vz5eHp6cvr0afbs2UNRUdGwNVODabj1ODg4EBUVxfHjx6mvrzf5fkOB0aNHI5fLRRkNhs4RW15eXqJ8fQsXLuSHH34Ytn/jEhLGQDLdEhIDYMeOHaKcP1leXo61tTVOTk5CSzEJFy5coL29XbQ3Fa7k/PnzlJSUEBsbO6g3GYaz8W5ra+P06dPs3bsXrVZL4MRJbC6sIK+xlYFY3tK6epyc+x9lblJpMB9gTzIXG+HH/1lYWBAUFMS8efMYP348hYWF7Nu3j7KysmHVdE0Iw63Hy8uL4OBg0tLSaG9vH7R9hUIulxMWFkZeXp7oGo7p8ff3p7S0VHSv7+abb6a9vZ0jR44ILUVCQjAk0y0h0U80Gg0//vjjkB2DMRDOnz+Pj4+PKBvW6HQ68vLyCAoKGtQLZKFobW3l5MmTTJo0CTs7u0Hff7gZ746ODnJzc9mzZw+NjY3MnDmT6OhoIv19mRUcYJQ9PP37fzOrSaXBTDewaNH1ZnQPJnK5HG9vbxISEggODub06dMkJydTWVkptLTrIqTh1hMSEoKdnR2nT58e9L2FwNPTEwsLC0pLS4WWYhKcnJxQKpVcvHhRaClGxcLCgri4OL777juhpUhICIbUvVxCop+kpqai1Wq58cYbhZZiVFQqFVVVVUyaNEloKSbh0qVLtLa24ufnJ7QUk6PT6cjMzMTd3R1PT0/BdAyHruZarZaSkhJyc3OxtrYmNja2x2z6B+Imk5xfZPDaFgoFwS4u2GvNqTnfiJm8/6a5qbUDVwdlv58P4GriJmr9QS6X4+fnh4+PD4WFhaSnp+Pg4MC4ceOGZMbNUDDc0NmAa+LEiezbt4+Kigo8PDwE0TFYyGQygoODyc3NxdfXF7lcXLEjmUyGj48P58+fx8vLS2g5RuU3v/kNmzZt4uWXXxZaSr/4NH+60BKuyZLgw0ZZZ9u2bSQnJ5ORkUFmZiaNjY3cfffdbN261aB1/P39KSkp6fWYu7s7FRUVgujS8/3337Np0yZycnKorq7G09OT6OhoHn/8caZNm9avNa+HZLolJPrJd999R1xcHGZm4vozKisrw8XFxWjzm4caeXl5jBkzRnS/t94oLS2lrq6OOXPmCC1lyBpvnU5HWVkZOTk5yGQyIiMj8fT07DXLY7KfDxN9PMk4f+G665rJ5YS5uWGtklOcfYnzef+LXKns2pHJoD9Z1M0qDUqFDLlMhrafadhDKdJ9JQqFguDgYPz8/MjPz+fQoUO4u7sTFhaGra2t0PKAoWO49VhZWREREUFGRgZz5swRbfNLPd7e3mRnZ1NeXo6Pj4/QcoyOj48PiYmJtLe3i+p3uWjRIlasWEFhYSFjxowRWo7EVXjhhRfIzMzE1tYWHx8fcnJy+r2Wg4MDq1at6vF4fz7LjanriSeeYMOGDbi4uLBgwQJcXV05e/Ys3333Hd988w1btmzh3nvv7ff6V0P8V50SEibiu+++44knnhBahtEpLS0lIMA4abRDjZqaGurq6oiJiRFaislpbW3l1KlTREVFDZkLt6FmvBsbGzlx4gStra2MHTu2q1HTtXggbgqPfHX1LrzBLs646iw5l1PFufze7+TXNbYy2t2R0ot1BmtuUmmwsVRgb6mkrlVl8PMBXIew6dZjYWHB+PHjGTNmDLm5uSQmJhIUFERISIigJneoGW49o0ePpry8nFOnThEdHS20HJMil8sJCgoiPz8fb29v0ZVB2draYm9vT3l5uaj6jri6uhIdHc0PP/zAY489JrQciauwceNGfHx8CAoKIjk5eUB9ixwdHVm3bt2Q0lVRUcHGjRtxd3fn5MmTjBo1qutYYmIic+bMYe3atSYx3eLKy5GQGCTOnj1LUVGR6Oq5GxsbaWxsFF1am578/HwCAgKGjAk1Ffq0cg8PD0HTyntjKNR463Q6zp49S3JyMk5OTsydOxc/P78+parOCR1DkJtzt8ccrSyZ6uHN2DZ7Ko9Uk3W0jKbGa48Rc3XqX9S2SdWBraUCB2X/U8yHcqT7SqysrJg4cSIzZ87k4sWLJCcnCzbje6gabuhMS54wYQIXL140OG1zOOLn50dbW9uwqP3vD/oUc7Fx4403SnXdQxx9f42hdjPLWLpKSkrQarXExsZ2M9z6Pezs7KiqqhrQHldDMt0SEv3ghx9+YPLkyTg7O1//5GHE+fPn8fDwEOUYrYaGBiorKwWPrg4G+rTyiIgIoaX0ipDGu6mpiYMHD1JcXMy0adOIiIgwqNRAJpNx3/TJAIx2dGCasxfmuW1kHzrPhfN9H93Uqupft+lmlQYLMzmOyv7fOBqKNd3Xw8HBgZkzZ+Lt7c3BgwcHfV7zUDbceqysrAgPDycjI0P03cwVCgVjxowhLy9PaCkmwdvbm5qaGlpaWoSWYlTuvPNODhw4MGLG3I102tra2Lp1Ky+99BJvvfUWiYmJgnfmDw4ORqlUkpaW1uOmXWJiIo2Njdxwww0m2VtKL5eQ6Ac7duzgpptuElqGUdHpdJw/f57w8HChpZiE/Px8fH19sbS0FFqKSdGnlUdHRw/piP5gp5rrdDoKCwvJzs7Gz8+PsLCwftf1/yZyLHsP55KeVkyWrq5faxSVVWNupkDdYdgFiEqtpUOjxcGs/zfGhlOk+3LkcjmhoaF4eHhw4sQJKioqmDRpEo6OjibddzgYbj0jKc08ICCA/Px8qqurcXFxEVqOUbG0tMTNzY3z588TEhIitByjERYWhr+/Pzt37uSOO+4QWo6EiamoqGDx4sXdHgsICGDz5s3MmjVLEE3Ozs78/e9/Z9WqVYwbN46FCxd21XR///33zJ8/n/fff98ke0uRbgkJA6mtreXw4cOi+8Kora1FrVbj7u4utBSj09zcTHl5OUFBQUJLMSk6nY6MjAw8PT2HRRfjwYp466PbRUVF/YpuX4m5QkHcGD8GMrC7Ta3B36t/mTJNKg12iv5/fQ+FOd0DQR/19vT05ODBg+Tk5Jgs6j2cDDd0TzO/cOH6Df+GM+bm5gQEBIg22q1PMR9Oc+v7wty5c9mxY4fQMiRMzLJly9i7dy8VFRU0Nzdz6tQpHnzwQYqLi7n55pvJzMwUTNuKFSvYvn07Wq2Wjz/+mFdeeYVt27bh6+vLkiVLeqSdGwvJdEtIGMjPP/9MYGAgoaGhQksxKqWlpXh7e4tuBAtAQUEBnp6e2NjYCC3FpJw7d46GhoZhla1gSuOt0+koKCggKSkJR0dHZs+ebbSI2K0JEdjbDixrwta6f3XZTSoNVvS/rs1FBH8HcrmcsWPHEh8fz4ULF0hOTqahocGoeww3w61H3808MzNT9GnmgYGBVFVVGf13PxTw9PSkpaVFdK/ttttu4+eff0atVgstRcKErF27ljlz5uDu7o61tTXh4eG8//77PP7447S2tnZrsFZcXMy6det6/DMVL7/8MgsXLmTp0qUUFBTQ3NzMsWPHGDNmDHfffTdPPfWUSfaV0sslJAzkhx9+GFA3x6GIVqulrKyM2NhYoaUYHbVaTWlpKdOnD+0ZmwOltbWV06dPD/m08t4wRaq5RqPhxIkT1NTUMHXq1B4ztweKtaUFi+ZN4JMdaf1eo66hf/WazaoOrJQKwkeNwkKuwBwZcp0cHTpkOjD7rx+PGeVFhw6QQYdMh1qrRa3T4mA1sDnfQwkHBwdmzZpFbm4u+/fvJyoqyiiNIIer4dbj4+MzItLMlUolPj4+FBUVMWHCBKHlGBUzMzM8PT05f/48Dg4OQssxGnPnzkWhUJCSksLMmTOFliMxyDz00ENs2LCB/fv3dz1WXFzM+vXre5xrCuO9b98+nnnmGRYuXMgbb7zR9XhUVBTbt28nJCSEDRs28OCDDxq97E18IS0JCROi0+lITEwUXT13ZWUlZmZmomsMB50RfFtbW5ycnISWYjKGW1p5bxgz4t3a2sqBAwdobW1l5syZRjfceu6YH4WlRf/vXReX1/Qr2t3UqsGiQ0dpykUKDpWTc6iMrMOlZB8+T1bKeXKOlAGQk1ZG1uHzZB06T97BMooOX6Atp2nIdaUdKHK5nLCwMKKjozlx4gQ5OTkDSskd7oYbRlaaeUBAAKWlpaKMnIoxxVyhUDBlyhQSExOFliIhAPrU7ebm5q7HZs+ejU6n6/HPFPz4448AvQbPrK2tiYmJQavVcuLECaPvLZluCQkDyMvLo7a2lnnz5gktxaiUl5eLct6pTqejqKhItHPH9ejTyodqt/K+YgzjXVNTQ3JyMg4ODkyfPt2kjfMc7az4zaz+p/LrAD9Pw28GNbVpMO+nD3SyH55N1PqCp6cn8fHxlJaWcvToUTo6OgxeQwyGW4+lpeWISDN3dHTE3t6ec+fOCS3F6Li5uaHVaqmtrRVailGZOXMme/fuFVqGhACkpXVmh40ZM0aQ/fWfhZcuXer1uP5x5QDGcl4NyXRLSBhAUlISERERoqoN1mq1XLx4ccjNczYGly5dor29HW9vb6GlmIz29nbOnDnDhAkTRDHqbSDG+9y5cxw+fJiQkBAmTpw4KIbpDzdHoxhAUzNzM8M1NrV2YK7oXxRAzKYbwN7enpkzZ6JWqzlw4IBBI5fEZLj1+Pj44OTkRFZWltBSTMqYMWMoKioSVUQYOrM43N3dRZetcNNNN5GWloZKpRJaisQAUKvV5OTk9PiuPnPmDDU1NT3OLy0t5dFHHwXgnnvuEURbfHw8AB9++CFlZWXdjv38888cOnQIS0tLk5QkSjXdEhIGsG/fPtHVBuvvoIsx/bq4uBg/Pz9RXDxfjfz8fBwdHYdtWnlvGFrjrdPpOHPmDOfOnSMmJsZknUd7w8vNgXkxIfySktOv51dcMnxebZNKg6VZ/7JSnEVuuqEzQjFt2jROnTpFcnIyMTEx122gJ0bDDZ1p5uPHjycxMZHAwEDs7OyElmQSvLy8OH36NJcuXRrUv//BwMPDg+zsbMaPHy+0FKMxceJE7O3tSUtLE2x0lETv7Nixo6u7fEVFBQApKSksXboUAFdXV15//XUAysrKCAsLw8/Pj+Li4q41vv76a1555RUSEhIICAjAzs6OwsJC/vOf/6BSqbjlllt44oknTKbrWtoWLVrEvHnz2LNnD2FhYSxcuLDrb+w///kPOp2OV155xSRjCCXTLSHRR3Q6HUlJSXz00UdCSzEqFRUVuLu7iy61vLW1lYsXL4rqQuVKWltbKSoqIi4uTmgpRqevxlutVpOenk5LSwszZ87E1tZ2MGUCsPjXU/pvumuaGOVsS2VNU5+f06TqwFqpwNLCDFW7YSnUYo9065HL5UyYMAF7e3tSUlIIDw/H39+/13PFarj12Nra4uvrS05ODlOmTBFajkmQy+X4+vpSXFwsOtPt5ubGsWPHaGpqEuTzzRTI5XImT55MYmKiZLqHGBkZGXz66afdHissLKSwsBAAPz+/bua2NxISEsjNzeXEiROkpKTQ3NyMo6MjcXFxLF68mMWLFxt8zWkMXdD53vvpp5949913+eqrr9i+fTstLS04Oztzyy23sHLlSubPn2+Qtr4i04ktF0dCwkTk5uYyYcIEqqurRZVevnfvXsLCwozS8XcokZubS01NDdOmTRNaisk4ceIEGo2GyZMnCy3FZNTW1pKSkkJoaGgP461SqTh8+DDW1tZER0cLml6/6u/fknKyuF/PnRDiRWZeeZ/Pt7VUsPLX/mxOvMiF6p5m3cJMxhMLxvD6jkLaO7p/xT96ZzyLfyVO43U1qqqqOHr0KH5+foSFhXW72BO74dbT2trK3r17mTFjhiizmqCzMdPevXu54YYbsLIa3rPor+Tw4cO4u7sbvZuykLz00kvs3LmzWxdrIVCpVF29X0zZA0RCnBjy/pFquiUk+ogY67mbmppoaWkRXWRAp9NRUlJy1ciWGGhsbOT8+fOMHTtWaCkm5Wo13q2trRw8eBBHR0diY2MFr2e/99f9N7JarWH3vpvbNOh0OlzsDb9AHAnp5Vfi6upKXFwcpaWlnDlzpqvud6QYbuic3T1mzBiysrJEV/esx8bGBjc3N1E2VPPw8OhKqRULN998s1TXLTGikEy3hEQf2bdvn+iiphUVFbi6umJmJq5Kk8rKSnQ6He7u7kJLMRnZ2dn4+vqKJt3wWlxpvFtaWjh48CCurq5MmjRpSJRGRIWNJjyof80Iiy/UIDfgNeh0ncbb3sbweewjJb38Suzs7IiLi6O8vJyTJ0/S3t4+Ygy3nuDgYOrr66/atVcM+Pv7U1JSIrobCx4eHlRXV4uqC72+/EPfzVpCQuxIpltCog/o53OLbVRYRUWFqBpw6SktLWX06NHI5eL8iKupqaGyspLQ0FChpQwaeuOdk5NDUlIS7u7uTJgwYUgYbj339jNtu7G5jdEehqX8Nqs02FoabhSdHUam6YbOSGhcXByVlZXs3bsXMzOzEWO4AczNzQkJCRF1tNvd3R2NRkNVVZXQUoyKtbU1dnZ2VFZWCi3FaOjruvft2ye0FAmJQUGcV6QSEkYmNzeXhoYG5s6dK7QUo9He3k5NTY3oTLdaraaiogIfHx+hpZgEnU5HVlYWgYGBI67+TKlUolAo0Gg0WFtbDynDDTAzOhB/L+d+PdfFQDPcpNJgaW746x+pkW495ubmmJubo9FosLKyEu2NuasREBBAW1sb5eV97yEwnJDL5Xh7e3P+/HmhpRgdMaaYx8fHS6ZbYsQwsr5tJCT6iRjruS9evIi9vb3oGs5cuHABW1tb7O3thZZiEiorK2loaCAoKEhoKYNKa2srhw4dwsvLixkzZpCXl2fwHG9TI5PJuOdX/Wtq19RqWNpoU2sHyn6MDRuJNd169DXcSqWS2bNnU1VVxenTp0Ub9e0NhULB2LFjyc7ORqvVCi3HJPj4+FBeXo5GoxFailHx8PDg4sWLovq93XzzzRw5ckSq65YYEUimW0KiD4i1nltsUW6A8+fPiz7KHRISInjjsMFEpVJx6NAh3NzciIiIwNnZudfmakOBm6aHMcrZ8Dr74rIqLMz7nubc1KbBXGGYWbSzVmJuNjJSqa/kyqZptra2TJ8+nfLyclGnW/fG6NGjkclklJSUCC3FJDg5OaFUKrl48aLQUoyKo6MjCoWC6upqoaUYDX1dd2pqqtBSJCRMjmS6JSSug34+t5jqubVaLZWVlaIz3a2trVRVVeHt7S20FJNQVlaGWq0mICBAaCmDht4sOTk5davhvlpXc6ExN1Nw103RBj+vvUNLgLdLr8cUchleLvZE+Lozxc+DGI9ROOkssDEw0D1SU8uv1qXcxsaGGTNmUFpaSn5+vsAqBw+5XE5YWBi5ubl0dBg25304IJPJ8PHxobS0VGgpRkUmk4kuxfzyed0SEmJHMt0SEtdBjPXcNTU1KBQKHBwchJZiVMrKynBxcRFdyjx03ijJzs4mNDR0xDR+0ul0HD9+HKVS2WuX8qFqvBckRGBvozT4edbKzuwFTxc7ovw9iPFwYxyWOJ9touVAKaU788j/OZe8ffmcO30Rhc6wNNOR2ETtemPBbG1tmTZtGnl5eVy4cEEglYOPp6cn1tbWQ+rvxpj4+PhQWVkpqm7f0NkoTmwRfKmuW2KkIJluCYnrcOjQIcaNGyeqeu6qqipcXV2HXCOqgSLm1PLi4mIUCgW+vr5CSxk0srOzaWxsZPLkyVdteDUUjbe1pQW3z51o8PNq6lvwr9XReuA8hT/lkrfvLOVZF1GrekYjW5rUKJWGfYWPtEh3X+dwOzg4MGnSJI4fP05DQ8MgqxQGmUzGuHHjOHv2rOiMKXTeTHFwcBBdwzgXFxeam5tFVQM9f/58jh49KsqsCwmJy5FMt4TEdUhPTyc8PFxoGUZFb7rFRENDA42NjXh5eQktxehoNBry8vIICwsT3Y2Sq3H+/HmKioqIjY3FwuLa86iHovG+48ZJKC3MDHrOuYu1dLT17cKzpUmNpbUChaLvX+MjqYlaXw23Hm9vbwIDA0lLSxOlCe0NV1dXnJ2dRZta7+PjI7ou5hYWFjg4OIhqJNrEiRORy+VkZWUJLUVCwqRIpltC4jocPXqUyZP715F4KKLRaKitrRWd6T5//jweHh6ibDB2/vx5LCwsRFeDfzXq6urIyMggOjoaOzu7Pj1nqBlvJ3trfh0/3qDn6HTgMa5vv+OWpg4UCjmjHPpeSmEM0+3v749MJuv1n6Hvz/Pnz3Pffffh5eWFUqnE39+fVatWUVtb2+Pc9vZ2nn32WQICAnBwcGD27Nmkp6f3uu7OnTuxsLDgyJEjBs3hDg0NxcHBgaNHj4qqQ/S1CA0Npbi4WJRRRm9vb2pqamhpaRFailFxdXUVlek2MzMjNDSUY8eOCS1FQsKkGHYbXkJihKFWqzl16hQzZswQWorRqK2txdzcXFTp8jqdjvLycsaNGye0FKOj0+koKCggMDBwRES5VSoVaWlphIaGGmzi9MY7JSUFgMDAQFNI7DP33DKZHYkn0Wj73hlbY9e3m0Ydai3tbRrc7C25UNPcp+cYK73cwcGBVatW9Xjc1rbvXdsLCgqYPn06lZWV3HrrrYwdO5YjR47w1ltvsXPnTg4dOoSLy/8ayz399NNs3LiRhQsX4u/vz1dffcWcOXPIzs7u1jixrq6O++67jxtuuIHVq1cb1P9AJpMRFRXFgQMHOH36NJGRkX1+7nDFyckJW1tbzp07x5gxY4SWY1SUSiVubm6Ul5eLasSiq6srp0+fFlqGUQkPDyc9PZ1ly5YJLUVCwmRIpltC4hpkZ2djZmbGxIkThZZiNMRYz93U1ERrayujRo0SWorRqaqqoq2tTbS16pej0Wg4cuQIrq6u/b5IHkrG22uUA3NjQ9iVktvn55yvb+zzuc2Nahxt+p7ZYaxGao6Ojqxbt25Aa/zxj3+ksrKSTZs2sWLFiq7HH3/8cTZu3Mizzz7L+++/D3TeePrggw9YunQpmzdv7np+SEgIX3zxBU899RTQeZN0+fLltLa28tlnn/Wr4aCZmRmxsbEkJydjb2+Pv7//gF7nUEcmkzFmzBhyc3MJCAgQ1fcCdM62LisrE5Xp1td1t7a2iqZpaHR0NF9++aXQMiQkTIqUXi4hcQ2OHTsmum7RYqznrqiowM3NDTMz8d1HLCwsxM/PT1Tvwd7Q6XRkZmai0+mYOHHigC7+h1Kq+eJfxRh0/qW6Zlz9nPt0bkuTGjtl39/zQ6WRWkFBAbt27SIgIIBHHnmk27H169djY2PDZ599RlNTEwCXLl2ipaWFmJj//SyDgoJwdXXtmjWtVqv56KOP2L59O2+//faASjGsra2ZMmUKp0+fFlUa79Xw8vKio6ODyspKoaUYHQ8PD2pqakRVp29ubo6Dg4Oo5nVPnz6dkydPirLMQUJCj/iuUCUkjEh6ejrjxxtWlzmU0ddziylyD52me/To0ULLMDrNzc1UVlaOiDTXc+fOUVlZyaxZs4xyg2GoRLxD/NyYFulPysniPj/HKdCFqpKa657X0qTGyqHvMF03HQAA329JREFUo8mMFelua2tj69atnDt3DhsbGyIjI5k5c2aff2/6mbzz58/v0ZXezs6OGTNmsGvXLtLS0pg7dy5ubm5YW1t3q+EuKiqiuroaPz8/1Go1ycnJvPbaa9x0003cc889A36Nrq6uXSmvCQkJKJWGj4AbLigUCvz9/SksLMTd3V1oOUbFysoKe3t7Ll68KKrvCH1dt1gyoKKiopDJZOTk5AzZxrXaihChJVwTuUeeUdbZtm0bycnJZGRkkJmZSWNjI3fffTdbt241eK3vv/+eTZs2kZOTQ3V1NZ6enkRHR/P4448zbdq0Pq9TXV3N9u3b+fHHHzl16hRlZWVYWFgQERHBsmXLWLZs2VUnnFyN8+fPs2bNGnbu3NmlbcGCBaxduxYnJydDX2qfkCLdEhLXQGxN1Gpra7GwsBBVPXdbWxu1tbWiu1iEzii3p6enaFIIr0ZLSwunT59m0qRJRn2tQyXivfjXUww6X2XRtyh/S5MaAwLdRuteXlFRweLFi3n22WdZtWoVc+bMITg4mOTk5D49Pze3M90+ODi41+P6x/PyOi8iZTIZDzzwAJ988gm33347f/rTn5g5cyY2Njb8/ve/JyUlhc8//5za2lo++OADI7zCTvz8/HBycuLUqVNGW3Oo4u/vT1VVFY2NfS9vGC54eHhQUVEhtAyjIjVTkzAVL7zwAu+88w4ZGRnd+mUYyhNPPMGtt95KRkYGN910E4899hhRUVF89913zJgxg88++6zPa3399dc88MADpKamEhsby6pVq7j99ts5ffo0y5cv53e/+x06Xd97pxQUFBAdHc3mzZuJiYlh9erVjBkzhrfeeotp06aZLItEMt0SEleho6NDdE3UxFjPffHiRRwcHERnTDs6OkTZ3OhKdDodGRkZeHl5meTGyVAw3tFhoxkf2Pd058JLtcj6MAqsuakDiz4mBViYK7C1Hni0dtmyZezdu5eKigqam5s5deoUDz74IMXFxdx8881kZmZed436+nqgsyFbb+gfr6ur63rs1Vdf5emnn+bYsWN89NFHjBkzhl9++YVz585RWFjIv/71L1599VW8vLxYv349np6emJmZER0dzaFDh/r1WmUyGRMmTKCyslJ0856vxNLSEm9vbwoLC4WWYnQ8PDyorKwUVUf6y+u6xcL48eOvOpFAYvDYuHEjeXl5NDQ08N577/VrjYqKCjZu3Ii7uztZWVl8/PHHvPLKK2zbto1ffvkFnU7H2rVr+7xeSEgIO3bs4Pz583zxxRe8/PLLfPLJJ+Tk5DB69Gi+/fZbvvnmmz6vd3lPkR07dvDKK6+wb98+Vq9eTW5uLs8++2x/XvZ1kUy3hMRVyM7ORiaTiSoVu6qqqltHYDFQUVEhylFaZWVl2NjYmCzNaahQUlJCY2OjSVMKh4LxvteAaHdzazteY69/A6K1SY2FWd9uoBmrnnvt2rXMmTMHd3d3rK2tCQ8P5/333+fxxx+ntbV1wA3WgK6IxeU3B5VKJS+//DLFxcU0NDSwZ88e1Go1MpmMt956i+nTp/Pggw+yadMm1q1bx4MPPsjPP/+MnZ0dN910ExcvXuyXFktLSyIjIzl58iRtbW0Dfm1DGX9/f86fPy+6uloHBwfMzMxEFRkWY113dHQ0R48eFVrGiCchIYHg4OABBWdKSkrQarXExsb2aHCbkJCAnZ2dQX+Pc+bM4dZbb+1RwuTh4cFDDz0EQFJSUp/WMrSniDGRTLeExFXQN1ETS3MuMc7n1mg0VFZWitJ0l5SU4OfnJ6qshCtpaWnhzJkzTJw40eTz1YU23rOig/D36luDNAAbH/vrntPcpMaijz82UzdR01/47N+//7rn6iPZ+oj3lTQ0NHQ770rUajUpKSmYm5uTnJxMTk4OH3/8MTKZjL///e/MnTuXdevWccMNN/DZZ5/R3NzMu+++25+XBXTOex4JaeZOTk5YW1uLLqqvnyEvpZgPbfTN1DQajdBSJAZIcHAwSqWStLS0Hg0aExMTaWxs5IYbbjDKXhYWFgB9voboS0+R1tZW0tLSjKLvciTTLSFxFcTWRK2urk5087mrq6uxsLDA3v76BmU4UV9fT0NDg2ia5PSGqdPKe0NI4y2Tybj7lr73h6jTXj/a2NKoxlLZt/xyJzvTll/ooxnNzdefGR4aGgr8r2b7SvLz84HOlMIrudxw29vb88ILL7B+/XqCg4NpaGigvLycqKiorvN9fX1xdXXlzJkzBr8mPSMlzVwmk+Hn50dxcbHQUoyO3nQbUvc51HFxcRFdpFun05GTkyO0FIkB4uzszN///ncuXbrEuHHjeOCBB/jLX/7C7373O2666Sbmz5/fNRJyIHR0dPDpp58CcNNNN/XpOYb2FDEmkumWkLgKR48eJTo6WmgZRqOurg4nJydRRU4vXLiAh4eHqF4TdEa5vby8TB79FZLBSCvvDSGN980zwnBzsu3TuUUXa7CwtrjmOS1Naswt5Jgrrv/+d3Yw7c02fVSgLz0IEhISANi1a1ePOtvGxkYOHTqElZUVU6dO7XbscsM9efJk/u///o/w8HD+9Kc/dTvvyjRwlUpl8Ou5En2aeWZmpqjTzH18fLpu+okJV1dX2tvbRfW6nJycaGpqQq1WCy3FKEjN1MTFihUr2L59O1qttltNt6+vL0uWLOmRdt4fnn76aU6fPs3NN9/MjTfe2Kfn9KeniLGQTLeERC90dHRw8uRJpk+fLrQUo1FXV3fVD5nhSlVVFW5ubkLLMCoajYbz58/j5+cntBSToU8rnzRpkiA3FoQy3uZmCu68Mer6JwLqDi1e4dcum1C1atBotLg5WF53PWf7gUe6z5w5Q01Nz1FmpaWlPProowDdxnWp1WpycnJ6/IwDAwOZP38+xcXFPdK+165dS3NzM/fee2+3rJzLDXdMTAz/+Mc/OHLkCP/85z+76vzs7e3x9vZm586dXXXJycnJNDY2GiVrydvbGxcXF06ePDngtYYqFhYWeHl5dc0/FwsKhUJ06diWlpYolUpR3UiQmqmJh5dffpmFCxeydOlSCgoKaG5u5tixY4wZM4a7776bp556quvc4uJi1q1b1+PftXjzzTfZsGEDoaGhBnVCvx699RQxFuIoVpWQMDL69BOxRboHMv5hqNHa2kpTU5OoatQBysvLUSqVODv3vf53OKHT6cjMzMTLy8sod7r7i1BzvBfOiWTL92k0tlw/Wmrmcn2j3NLUgZujFeU11+5ibIxI99dff80rr7xCQkICAQEB2NnZUVhYyH/+8x9UKhW33HILTzzxRNf5ZWVlhIWF9Zqy/I9//IPp06ezcuVK9u7dS1hYGGlpaSQmJhISEsKLL77Yde6VhvvcuXM8++yz/PnPf2bChAnd1n3qqad47LHHiI+PJzY2li+++AJbW9seDXP6g0wmIzIyksTERMrLy/Hy8hrwmkMRPz8/jhw5wrhx4/o8e3044OLiQlVV1aD9rQ8Gjo6O1NXViaZBanR0NF9//bXQMiQGyL59+3jmmWdYuHAhb7zxRtfjUVFRbN++nZCQEDZs2MCDDz5IYGAgxcXFrF+/vsc6VzPeb731FqtXryYsLIx9+/YZdB040J4iA0GKdEtI9MKZM2cYM2aMaJqoqdVqmpqacHR0FFqK0aiursbBwUF0KdglJSX4+/uLLmVez6VLl6itrR30tPLeECLibWNlwe3zJlz/ROBiH8YBtTSpcba1wMHaDA9HC7yclUwM6Oxx4OGoxM3BAmulAke760fDr0dCQgILFy6kqKiIf/3rX7zxxhskJSURFxfHp59+yn/+85+upjbXIzAwkPT0dJYuXUpaWhobNmygoKCAlStXkpKS0mUirjTcCoWCBx54gNGjR/PXv/61x7orVqzg+eefp7S0lPfee4+AgAB27txptL4BlpaWjBs3jqysLFGNoLocFxcXlEolFy5cEFqKUXF1daW6ulpUdd160y0WJk+eTHZ2tqh+RyORH3/8EfhfKdHlWFtbExMTg1ar5cSJEwDMnj0bnU7X419vvP7666xatYrw8HCSkpIMbqQ7kJ4iA0UcjkJCwsjk5eXh7+8vtAyj0dDQgFKpxNJy4BfeQwX9zHEx0dbWRk1NjagyLC5Hp9ORlZVFSEjIkLlZIkTE+475UXz58zHa1Nfu0ltaWY+vmy0Nl5qQycDR1ZJRnta4eVrj5GaJja05Di5K3BVyYoOsUam1aLQ67Kw6v9oXxLpjZibD0lyBuvosv/xyHktLS6ysrHBwcMDR0RFHR0eUyr7N7541axazZs3q8+v09/e/5sXz6NGj2bx581WP92a4Afbs2XPV58hkMp577jmee+65Pus0lNGjR3P27FlKSkoICAgw2T5CIZPJ8Pb25sKFC6Jq5ujg4IBOp6O+vl40N6AdHR0pKysTWobRiIyMpL6+nurqatF9v48k2tvbgc6b7L2hf7yv3z16Xn75ZZ555hkmTpzI7t27+/UeubKnyOUdzK/VU8QYSKZbQqIXcnJyRJWCVldXJ5qLDD1VVVVDIlpqTC5evIiDgwNWVqbtNC0UZWVltLW1DTmjMtjG29nBml/PDOebvZnXPM/d0YJp0a5YKzS4enS+J6outnLpQgsFWbU0NagJm+CCwsWGLw+Wore3FmYynlgwhvd/OUd7hw4zuYwPnl2Ep4s1KpWKlpYW6uvrKS0tpbm5GUtLS5ydnXF3d8fd3d3gCyFTcDXDPRSQy+WEhYVx8uRJRo8eLZqMqMvx8PCgoKCgx0XpcEYul3d1/BbL96GDgwNNTU10dHSI4n3o6OiIm5sbeXl5kukeBqjVagoKCjA3N+/2vRkfH88777zDhx9+yIMPPtittPHnn3/m0KFDWFpaGtQ36fnnn2fNmjVER0eza9eu65bgXU2bvqfIrl27ePfdd1mxYkXXMX1PkQcffNAkk36G/1+ohIQJyM3NZenSpULLMBpiM92tra00NzeLpo5NT0VFhShnjgNotVqys7MZO3bskDJQegbbeN99SzQ7Ek+i0f4vEiyTgf8oK0K8bAj2tMHKQkF9g5aTB0q5WN5CXZWKKwPH7t42eI2y5VrJmB1aHR6jnHBx7Nk5Xa1Wd0WWioqKyMjIwMnJCQ8PDzw9PbG17Vu3dWMylA23Hk9PT/Lz8yksLDRJGqLQODg4YGZmRlVVlaC9F4yNvpmaWG6q65up1dfXi+b70M/Pj7y8PFE1sh1O7Nixgx07dgB0zbZPSUnpuiZ2dXXl9ddfB67et2PRokXMmzePPXv2EBYWxsKFC/Hw8CA7O5v//Oc/6HQ6XnnllT6/Zz/99FPWrFmDQqEgPj6eTZs29TjH39+/23W7sXqKGBPJdEtIXIFOpyM/P19UUdS6ujpRNf0RYz23RqOhsrKyq95IbJSUlCCXyxk9erTQUq7KYBpv71GOzIkJYXdqLnZWCiYF2DMhwB6FXE5VdQdpu8spOF2Ng4M1tTVXn33d3KhGeZ2RYTIZONpZ93rM3NwcV1dXXF1dCQ0NRaVSUVFRQUVFBTk5OTg7O+Pn54eXl9egRDyHg+GGzhTscePGceTIEfz9/ftcyz5ckMlkXbOtxWS6XVxcyMvLQ6fTiaJvhkwmE10zNT8/v65mthKDT0ZGRtfsaz2FhYUUFhYCnb8fvem+GnK5nJ9++ol3332Xr776iu3bt9PS0oKzszO33HILK1euZP78+X3WVFRUBHReJ7355pu9njNr1qw+B8v0PUXWrFnDzp07+emnn/D09GTlypWsXbvWZI1sJdMtIXEF1dXV1NfXExERIbQUo9DR0SG6JmpirOeuqqrCwsICe3t7oaUYnY6ODnJzc5kwYcKQT1UdTOP9u4Sx2OrqCPG2obpew4kDlziTdqFbNLu2phlPbyculNX2ukZLkxqL69x7srexxEzRt5+7paUl/v7++Pv709bWRmlpKTk5OZw+fZqAgAACAgJMZjCHi+HW4+bmhrOzM3l5eaK6SavHw8ODzMxMIiIiRGFQQZx13Q4ODlftxDwcCQoKGpKmW+7Re+MtsdGXcV16rtW3w9zcnFWrVrFq1apB1dQXbXD9niKmYGhf/UhICIC+lkgsI5vq6+ulJmrDAH1quVgubi+noKAAa2vrYZM6b+qu5g0NDaSlpVFamI2HvT3//jCHbW+f5HTqhR7p4wAuo65+I6alSY3S/NrvGSf73qPc10OpVBIUFMTcuXOZNGkSVVVV7N69m7y8vK452MZiuBluPWFhYRQXF9Pah07zww1XV1fa29tFNQf68rpusSC2DuZjx44dkqZbQmKgSKZbQuIK8vLy8PPzE1qG0dDXc4vFzKlUKtHVc+t0OtHWc7e1tXH27FnGjRs3rN6DpjDera2tnDhxguTkZKysrJg3bx4Tw8Kprby2YWtvU1/1WEuTGgulnGv9aJ0d+me69chkMtzd3ZkxYwYxMTFcuHCBPXv2UFxcbJSxWcPVcEOn4fHw8CAnJ0doKUZHoVAwatSorrpOsaCv6xYLjo6ONDY2Gv1GmFBERER0NfGTkBATkumWkLiC3NxcUY0Lq6+vx8HBQWgZRqO2thZbW1tR1XPX19fT0dEhqhsJes6ePYuLi8uwzEwwlvHWarXk5eWxd+9etFotc+bMITIyEktLSyZOCSBkvPc1n3+u6BKKq6SHtzR1IJPJsFFe3ag69zPS3Rtubm7MnDmTyMhIzp49S1JSErW1vae+94XhbLj1hIWFcf78eZqamoSWYnT0dd1iwsnJaUDv2aGGvpmaWDISxo8fj1qt5vz580JLkZAwKpLplpC4gtzcXIKCgoSWYTQaGxtFVScsplo8PRcvXmTUqFHD0nBcC7VaTXFx8bDu7jxQ493Q0MCBAwcoLS1l+vTpREdH9xhF8vslcddcQ9WqxneMW6/HtFodrS0dONpc/SaUMU03dEa+vby8mDNnDj4+Phw6dIisrCw0mmvPHb8SMRhuABsbG7y8vExSiiA07u7u1NfXo1KphJZiNBwcHGhraxPNa5LJZNjZ2dHY2Ci0FKNgaWmJl5cXeXkjo4ZaYuQgmW4JiSvIzc1l7NixQsswCjqdjubmZpPMGxQKsY0/A7hw4YIoU8tLS0uxtbXFyclJaCkDoj/GWz8FYf//Z+++w+PMyrvxf5/pvUgjzaiOerMsy7aK5Sa33Q1LWZaFDW/IQkJ+lEAogfdKQgkElvC+eQOBFHYJhIRkYYElgSxZFnbXvUhWsWRZstV7m1Gd3mee3x/akSVbslVm5pk5cz7X5WvXanM/Vpvvc59zn8uXodPpcOLEiU3nRBw5WYZs44NXOSiUm89kcNn9SNNsfrb7Tvd0PwyPx0NJSQmOHz+O+fl5XLp0acsdRFICd1hhYSEmJyfh92++FSARicViaLVamM1mrkuJGIFAAIVCQdQ+aIVCAadz81MOEk342DCKIgkN3RS1RigUwsjICDGTy30+H/x+Pydn7UYLaaHb7XbDZrNBr9dzXUpEsSyLkZERFBQUJNRe7s1sJ3j7fD40NzdjfHwchw8fxp49ex4YKnk8Ht79zJEHfkybdfN93y6HH4UpStRl6VFnSMcB/UpX/KAhDXU5BmSplQ/82LulUqlw7Nix1a53+HiXzZAWuIGVfbVqtRrj4+NclxJxer2euCXmGo2GqInfcrmcqO0N+fn5dJgaRRwauilqjenpafh8PuzZs4frUiLC4XBAIpFAICDjdECPxwOv10vUHnWz2YyUlBTizvmdm5tDIBBAVtaD9ysnkq0Eb7vdjsuXL4PP56OxsXHLpyCceds+pKZtHo4nR+chk4s3fJ3L4QfP7sHAGwMYOD+I4UsrtQ1dHMbAa/1QMtEPteGud0NDA/r6+tDV1bXhICQSA3dYQUEBRkdHH3hMTSIyGAyYn58nZlAXQN7Eb4VCQVToLi4uJnI4IZXcaOimqDUGBgaQlZVFzPFaDoeDuC63QqEg5iYCAGKnlo+OjiIvLy/uz+XergcFb7PZjMuXLyMzMxN1dXXbGvYnFArw5O8d2vT1oRCLnLyNh9E5HX5I5Zt/T2hSYre9JDU1FY2NjVhaWkJzczO8Xu/q60gO3ACQkZGBUChE1FJsAFAqlZBIJERN/Far1cSFbqfTScwNn/Ly8pgvLyfl346Kre183ZD1bIiidmlgYAA5OTlclxExdD93fAsEApifnyduabnb7cbc3BxRR++ttVHwHh8fR1tbG/bt27fj49He+lTtA/dui8QbB2uXww+xZPNf59oYhm4AkMlkOHbsGIRCIa5cuQKXy0V84AZWuv1Go5G4JebhI+NIWmKuVqvh8XiIGaYmk8nAsiwx58VXVVVhYmICPp8v6o8V/llE2jwGKjbCXzdb+Z1GQzdFrTExMUHUcljSOt2kTS5fWlqCRCKBUhndPbexNj4+jvT0dEilmw/3SnRrg3drayt6enrQ0NCA7OzsHX9MmVyMt767dtPXz5k23oPqsgcgekDojmWnO0wgEKC2thbp6em4cuUKrl69SnTgDsvNzYXZbCYm/ITp9XrMz89zXUbECIVCKBQKYvZ183g8yGQyYpaYFxYWAgBmZmai/lhCoRBisRhWq5V2u6ltYVkWVqsVYrF4SyvbyFmjSVERMDU1RdRSX4fDgdzcXK7LiBiLxbL6y5gEpHXugZVfQhMTE8QMI3wQrVYLo9GIoaEhFBQUROSc9Sf/1yH88sVm+Lz37581z1iQolNgaWH9E2uX0w+haOPQLZYIIZVtvBc82hiGQVlZGWZmZuBwOFBTU0N04AZWOo5paWmYmJhAaWkp1+VEjEajgcvlgs/nI2b+RHiJOSkrjcL7utPT07kuZdcEAgFSUlIwMzODvLy8qD+eTqfD9PQ0pqamoFarIRQKiRgASkUHy7Lw+/2wWq1wOBxbbtbR0E1Ra8zMzKCyspLrMiKCtOPCwueqkjREjbTOPbAyQI1lWWKeyD7I+Pg4xsbGUF1djdu3b0Mmk+36ppA2VYEzb6vGq//VvuHrM7JT7gvdTrt/0063JEOGZ/77Z1BKxEiVy5CmkKNQm4o6fQ7SpNH92eD3+3H9+nWoVCrI5XJcv34dR48eJXoFBADk5eWhu7sbJSUlxDxxF4lEkMlksFgsRIQ6YOVGwtLSEtdlRAxpx4alpaVhdnY2Jo+lUqkAAAsLC5ieno7JY1KJTywWIysra/Xr52Fo6KaoNWZnZ4lZXu52u8GyLDGhOzyJfTvDqeKdxWIhbt/z9PQ0srOziRugdq/5+Xl0d3fj0KFD0Ol0UKlUaG5uBoBdB+/3PHMEv/3vDoSC90//DgXvX/7ocvjB5zMQS/jweoLrXifRStF6c/0STZ1GisLcFPzbk+8BL0qh8N493DweDzdv3kRLSwuOHj1K1DDEe+n1enR2dmJ5eXnL0+sTgVqthtVqJSZ0KxQKTExMcF1GxMjlcqL23ccydAMrwVulUsHv9yMYDD78Haikxufzt/18lNzfehS1A7Ozs8QMUnM4HJDJZMSEH9L2p/t8PrhcLqI63SzLwmw2o66ujutSosrhcKCtrQ1VVVXQ6VYmiof3eEcieGfmpODoqXJcfuP2fa+bnlwEwwBrtx76fSEE/CHIFML7QrdULsZevRpWrwczNjsCoRAWLG7sN0hjFrjDS8r37duHpqYmdHZ2oqamhpgu8L14PN7q4DGSQjeJx2yFJ36T8LVI2rFhsQ7dYUKhkKib+1T8IOPZOEVFgNfrhcViIWYPNGkhlbTrsVgskMlkxOyPBLC6VJOkoHEvv9+PlpYW5Obm3vezYivneG8Fy7IofaJow9fZLC5k5ty/d9xp90OmuP8+upAvxESTCdYbFqhGQij3q9GQkokzRQU7ru9BHjSlnMfjoba2FsvLyzE/DijWDAYDUV1HgLzQHZ747XK5uC4lIhQKBVwuFzFdWr1eT5d6U0ShoZui3mQymcDj8YjpdLtcLshkMq7LiBjSQrfVaiVqfzqw8j2k1+uJ6BpthGVZ3LhxAzKZDHv27NnwbXYbvJunx/GJX/0PvnL2CrKPbvyzKEV3//eB0+FHStr93++M6G7oDQZZzExYcKdtGgdyMrdd28Ns5VgwsViM+vp6DA4OctLFipX09HQ4HA6i9tiq1erVYWokCE/8JuVzJJFIwOPxiJmcn5WVRUM3RRQauinqTbOzs0hNTSVmr6HH44FEsvmZv4mGpKFwAJmTy00mE1HT/+81NjYGm8320KXROwne0w4r/ur8WfzJC6/gbOcwAsEQRGWaDd/W7bo/9LgcfmhS7h9QFtpgWHiGToUcvXZLdW3Vds7hVqvVqK6uxs2bN4k5J/leQqEQOp2OqG63WCyGVCol5pgtgKwl2QzDQCwWE/M9lZmZSfSNOSr50NBNUW+amZmJyJE/8YKk0B2exE5Sp5u00O1wOOByuZCWlsZ1KVHhdDpx+/Zt7N+/f0v7/bYTvG/MTOMjP/lv/PRyN5weHyrT01HmV6OjaQKZFfdPgZ8YnYdQtD7Uuux+yFX3b1Xwb/B4dZWR3UKzncAdlp2dDZ1Oh1u3bhF7Ni5dYh7/SArdwEq3m5TQnZOTQ9z3D5XcaOimqDfNzs4SFRhICt3hSeykLJcncYiayWSCTqcjcgANy7K4efMmcnJytvUzYqvBuyw1DV5XEOkKOWpkekw2mzEzYQEACIz3b0HweQPIyVtfh8vhh0xx/7+9J3j/ed+1eyI3MX8ngTusqqoKi4uLxC4hNRgMWFxchN+/0a2PxBQ+25oUJIZur9fLdRkRkZubS9z3D5XcaOimqDfNzs4ScxQKsDIYjpTQTdokdqvVCqlUStQQNbPZTOzS8tHRUTidTlRUVGz7fbcSvOViEb755FsgHPFjsHt9Z6dnYg464/2D6eQK8bq/uxx+SKT3B16Pf33oZhigdk9kOt27CdzAynLlffv24datW8R059aSyWRQKpUwm81clxIxGo2GqOXlcrmcmD3dAFmd7tzcXDAMQ7vdFDHIeAZLUREwPT0Nvf7+pZyJKBAIIBAIQCwWP/yNEwBpQ9RIW1ru8/mwuLhIzPfPWj6fD729vaiurt5xF38rwbsqNwPvOVV938tDLAvVnvu761bL+onLTkcAIvH9+8yZrgXkLQPVMhXqsg04ta8QGuX9e7+3a7eBOywzMxM6nQ69vb27rikehY8OI4VGo4HT6SSm+0jaxG+S9nSLxWJotVq6r5siBg3dFPWm6elpZGRkcF1GRHg8HjAMQ0wnlbQhalarlajQPTc3B6VSSczy/7UGBgaQkpKy61UwWwne/9+TDSjPv//GRc/UPFRp6286TY7OQ668u5LF5fBDKF7/K51hVo4Ys8xaMdY+iYHX+1EgjJ/AHVZRUYGpqSnY7fZd1xZvDAYD5ubmiNm3Hh6mRsoSc4lEAj6fT0y3m6RONwDodDoauili0NBNUW+anZ1FVlYW12VERHg/NylHN3k8Hkiluw8L8YK0Tvfy8jJRQwjDXC4XxsbGdrSsfCMPC94CPg9f+eO3QCJaf4ICCxb5B7LXv4wFcoy6u7U6/BCKeOAL7n7PK9UyhELrw97+usJdXUOkAzew0m3Mzc0lstut0WgQDAaJ2jesVquJWWLOMAxRQZWkawFo6KbIQkM3Rb3JZDIRc0Y3Sfu5AbKGwvn9fjidTqLO6Catcx/W39+PjIyMiH6uHha8jRkp+MT/Or76931GA7IXQhi4MgKZfP12Eb7w7q9wtzOAUIiFTH53Cbz8nrcXiQXYu3/n+7mjEbjDSktLMTc3h6WlpYh9zHjA4/GIGz5G2gRzkoaPkXQtwMp59zMzM1yXQVERQUM3RWFlOrHFYiFmEJTH4yFmPzdA1vU4nU6IRCJirif8vUNa6HY4HJiamkJZWVnEP/bDgve7z1Tjdw6VoUqkwPhv+rE8Y4Xb5UNh6fqfT3MzlnV/97qDkCnvhm6JbP3X2J7qXIjEO9uXHs3ADayEhcLCQiK73SR1hgFAqVQS1bknaR+0RCKB3+8nZo+6Vqsl7kYclbxo6KYorHSGA4EAMd1HkjrDLMsSdT0kXQuwEk5ZliVq0B0ADA8PIzMzM2qzBB4WvD/1u8dgHVte97LJe87nnjfbkKZXrf7dafdDvubYMJF4/TL1/XUFO6o12oE7rLCwEMvLy0QFVIB2huMdSUuyRSIRGIYh5noUCgVsNhvXZVBURNDQTVHA6l17rVbLcSWRQVKwCwQCCIVCxFwPSV17YGV/ulqtJuY4N2AlZE5OTqKwcHf7nx/mQcE7RafEp7/4jnUvsyy7ULpn/dwJfYZm9f8dNh+U6rtfW3z++s/JgfrtX0+sAjewEhiys7MxMjIStcfgQviYLZKGqXm9XmKuh6TQzTAMUZ170lZVUMmNnGdJFLULdrsdPB6PmOnLJO3p9ng84PP5EAgED3/jBEDSDRFgZT83KStEwiYnJ6FSqWKyZP5BwfvwyXI89sT+dS+bN9nA490dlhYIhFb/3+XwQ5t6d+DgmjeDSi1DUdn2TmeIZeAOy8/Px/T0NDFHUgErwSEUChETHiQSCViWJabbTWLnnpTrUalUtNNNEYOGborCSqdbJpMR063z+/07PlM43pA2iZ2kGyIAeZPYWZbF+Pg4jEZjzB7zQcH7j//3W5CRdXcFjnnWgpI13e6p8YXVEO5y+KHQ3D0mMLhmcnl1Xf62voe4CNzAyv5npVKJqampmDxeLPB4PKhUKmKWzfP5fAiFQmK6qSR1ugFAKBQSc9NKoVAQeZQglZzISBgUtUt2u52oc6ADgQBRnWGSlmOT1OlmWZa4yeU2mw1OpzPmxwduFrylMjH+7GtPgbdmqbjTfjcgOOweZBlXjmtzOvyQyu9+3/t9gdX/387Scq4Cd5jRaMTk5GRMHzPa6L7u+EXScmwAEAgECAQCD3/DBKBWq4lZIUJRNHRTFO52uklBWugmJaQCZF2Pw+FAKBSCUqnkupSIMZlMSE9P5+T7Z7PgXVGVg/f+wdHVv0+OLaybZK7RysHn8yAWiiCR3q3b573b7TpwaGuhm+vADQAGgwEWi4WoIERi6Cbl8yORSBAMBonpDpMUupVKJe10U8SgoZuisNLppqE7Pnm9XuI63aRcj81mg0qlImZbBrASurk8OnCz4P37Hz6BkorMu2+4ZqW4y+4Gc2cQU+duQiS++wqnY6UTmZmTsm7g2mbiIXADKyFIo9HAbDZz8vjRQNqxYSR1h4VCIXg8HjGde5JCt0ajoZ1uihjkPFOiqF2w2+2QSqUPf8MEwLIsUaE7EAgQsz89PHyIlE632+0m5vsGWLkhYrVaodfrOa1jo+DNF/DxZ88+BbFk5XthuM+EnDwdAGBifBEA4FxyQyTmIbx1225zA9jaUWHxErjDDAYDTCYTpzVEklQqRSAQICYMkdTpZhiGqKBK0rWo1Wo4nU6uy6CoiKChm6KwskyWlD3dwWAQADh/0hwpJN1A8Pl8YFmWmNBN0lJ5YKXLrdVq42IlwkbB+8rMJArfWrL6NnLlyr+93xdEbm0xXBY3GB6zusTc51154r2//sGhO94CN7ASuufn51d/niU60s5PJil0A2QFVT6fT8y1qNVq+Hw+Ypb+U8mNhm6KAlnLy8NPUkkJqiSFbo/HA6FQGBehJhJI6toDwMLCAtLT07kuY9Xa4P1vr7yB//rvTtgGllaXmff3TKGkPAN7i1KhkgoR9Ifg9wQgVdxdGcLwGPzi1zfwz/9+AfNL9++NjMfADazs5RQKhVheXua6lIhgGIaooErSIDWArNAtEAiIuVml1a6c3ECXmFMkoKGbokBWpzsQCIBhGGL22ZIWuuOhixoppHW64/H4s3DwTgl5sJfPYqp7FuZZC/QZauzJ00A0NYuun1/B3MjKUmy31Yts+crZ3XkKBgersnDn0jBe+9frkInWb9OI18ANrIRUEoePkRJUSbqBAJAXukm5FqVSCYZh6DA1ighkPJOlqF2y2WxQKBRclxER4ZBKyrnWpIVukkIqSdfj9/vhdDqhVqu5LuU+Wq0Wx48dBdircNk86Lo+B0OpHrd+egECkQCadBWmBmahSlXCueSC27LyBHWkqQ8VqSudore9uwZyxd3PVTwH7jCNRkOHj8Wp8LWwLEvE7xqSgipJ18Ln8yGVSmnopohARiuMonbJbrcTF7pJEQgE4jIQ7ARJIRUg63qsViskEkncXo9Wq8Xx40dx5NFc7DuUjv5+MyqfOISAL4Dc8mwAQFZJBuwLTsg0d6/BGWIgEPLxyDv3r74sEQI3sLKfk7RONymhWyKRgGVZ+Hw+rkuJCJKCKknXAgByuZwuL6eIQEM3FZdu3LgBhmFw6NChDV//4osvgmEYMAyDycnJ+17vdDohEomgUCi2NIDDbrcTc9YwiaGblOshaQ90eBIzKcvl43Fp+b3uDd6zzhDSjWkY6hyFTCUFn8fAueiCWr/ys0wkE8JksqKsMgt/9tF/x9CQKWECN3D3uCBShiiRFLoFAgEEAgExy+VJGj5GWuiWyWS76nSHnys+6M/NmzcjVzBFbYKMZ7IUcfbv3w+tVov29vbVs4DXOn/+PBiGAcuyOH/+PD7wgQ+se/2VK1fg9/tx+vTpLR03RdJZ0CSFVICs6/H7/cSEbo/HA4ZhIBKJuC4lIhwOR0LceAsHb+AqlIFBTJgkWJhaROXRMkwNzECQmgF94cpRYjklWZi8PYhQng5pqUpkZ2kSJnADKyFVKBTC6XTG/Q2RrZBIJFhYWOC6jIgRCoXE3BAhafgYaaFbJBJF5GbVl7/85U1fZzAYdv3xKephyHgmSxGHx+PhxIkT+OUvf4lLly7h7W9/+7rXnz9/HmfOnEFbW9uGofv8+fMAgNOnT2/p8UhawhwMBom5FpZlEQwGiQndpOx/BO527Um6nntv7sWrcPBmQyHYTMtQpZZhoncaTqsLQoEQ0jeXl0vkIuSWZmH45Wv4x47/i9a21oQJ3GGkDR8j5VqAld/ToVCI6zIiQiAQEHMDgc/nE3MDAYjc19lf/dVf7b4YitoFurycilvhwBwO0GFjY2MYHR3F6dOncfz48ftev/Z9thq6Q6FQwjwJfRiSgh1px5+FQiFipsqTtDoESLz96VK5Ard6Paj//QPgawG1TonS2sKVfenKldUHyyYrnFYnfucTb8H49FDCBW6ArCXZYrGYqNAdXm1GApK6wyR9XgCybu5QyY2MZ38UkU6dOgUAOHfu3LqXh/9+8uRJnDx5ElNTUxgYGFh9/fLyMjo7O5Gamop9+/Zt6bFICt0kCT9xIOUmAmk3REj6nkm00C0RCfHOx+px5dUZ1L93H3JrDbDO2+C0uCGSr2ypkSgkUKYqIDUE4HT6Ei5wA2RN/CatA0lSuCPtWkhCQzdFCjLaRxSRysvLkZmZiZ6eHszPzyMtLQ3AShdbpVLh4MGDq5228+fPo6SkBABw8eJFhEIhnDx5cstdxVAoRMwvKpKCHQ3d8Yu0a0nEzn3VwTz8+bPvxXe/9GNU/U4R5Bo5zHcWwReuBGu5WoLytxbA6/RBxUtNuMANkNXpJinYASthiJTrIe1zQ9K1RHt5uUQiwV/8xV/s+uNT1MPQ0E3FtZMnT+LHP/4xLly4gKeffhoAcOHCBRw7dgx8Ph9VVVVITU3F+fPn8dGPfhTA9peWA2R1ukkKQ6QhaXk5SV9ngUAALMsm5FA4voCP7Pxs3Pp5P6reUwK+kI9QMAQen4e9T5bA5/TBvcDDkcf2P/yDxSGRSAS32811GRFBWrBjGIaYDiQpP8uAu9dCys/oSH2dfeUrX9nw5Wq1moZuKibIePZHEevefd29vb2YnZ3FyZMnAaz8MG5sbMSFCxdWn8yE3za8PH0rSApDADlPIGinO36R9D2TyF9neoMGb/v/TgKp6bjzyhhyavQIBVeuJ+QPoe+34xi/PoL//PavOa50Z0gKquHOMCnXQ9LnBiCrO0ySSHW6w9979/6xWCy7L5KitoB2uqm4Fg7d4X3c4f+uDdQnTpzAL37xC9y6dQt6vR537txBdnb26nLzrQiFQmBZlojppYFAAKFQiIhrCV+D3+8noqMSCoWI+dyEu8MkXIvP5wNw95oSjc3ihCjoh9cRwNjlWRSeyQIATDSbIRDyERD6UVCdm5Cfq/AJBolY+73Cg7p8Ph8xN6z8fj8RnxuSfjaH5waQ8nXGMAxRsxCo5MWwifgMg0oqRUVFGB4exsTEBD71qU/h4sWLWFhYWP1l0tPTg7179+Lv/u7voNfr8b73vQ8f+MAH8MMf/nDLj3Hs2DHU1NTgxIkT0bkIiqIoiqIoalu+8IUv4Atf+AL+1//6Xzt6/7XL7SmKS7TTTcW906dPY3h4GGfPnsWlS5fQ2Ni47u7tnj17kJaWhvPnz0Ov16++z3bweDxkZ2fj8ccfj2jtXBgfH8fc3Bxqa2u5LmXXfD4fzp49i8cee4yIPfetra3IyMhATk4O16Xs2sTEBMxmMxFfZ36/H2+88QYeffTRhD2ezu/348qlqzCPL8A170FGVSoC3iAm202YvGGCxWyFoSIHn/vBH0MsSZy96yMjI7Bardi/PzH3pK/ldrtx4cIFIn7PAMC1a9dQUFCAjIwMrkvZtdHRUSwvL+PAgQNcl7JrHo8H58+fx1ve8paE3DJzry9/+ctEdOwpKjGfXVBJ5dSpU/je976Hb33rW1haWlrdzx3GMAxOnDiB3/72t0hJSVl9n+0I7xkSCoURq5srAoEADMMQcS3hO9MCgSBhw9BaPB4PPB6PiM+NQCAAy7JEXEv4hk6ift/4/X60t7dDpVFi+toC7BYHMpCK7v8eQuUThfA4vJgZMMO95MJUvwllNYVcl7xl4a+xRPy83Mvr9RLz/R9GyueGpJ/N4W0MiTgYciMkzQ+hklviP4uliHfq1CkwDIPu7m4AuC90h1/285//HHa7HWVlZcjKytrWY/D5fLr0KA6RtiyMpPNGSTouiMfjQSQSJdxZ3cBK4G5uboZQKERdXR1u/KwPzqWVI7ac8y50/2IIe99VBPuiHc4ZP/7jB1fwtQP5CfMk1uPxJNxRbpshaZAisHI9ifJ19DAkfW5I+bkcFqnTZTY7MgwA3vnOd6K6unrXj0FRD0JDNxX30tLSsHfvXty6dQs6nQ6VlZX3vc3aIL7dLjew8qSblEEdpE2UJQlJnxuSjgsCALFYnHDnQd8buPl8PtLz9ZgcmAIAWBatmLg9DYfFiYYP7sP1F29CtLQEl80NhUbOcfVb4/F4oFKpuC4jIkgKdsBKGCLlekj5uQyQ+XUWiZs7mx0ZBgB5eXk0dFNRR0M3lRC6uroe+PqysrJd/dIkqWsHkPMEInx3OxAIELHsj6TQLRKJVqd+k0AikSRU6N4ocAPAvJeFl135/+yKDNjUTswNLuCVZy/gbX95EtdfvIkPV30Wf/6TT2PfkTIuL2FLEnH1wWa8Xi8xS34BssJdMBgkYm4IQNbnBdj9igpSfudSiY+MdUEUtUskdbr5fD4xHUgejwc+n7+6Ry3RkbS8PNFC6sNIJBJ4vV6uy9iSzQI3AHz8z96KoM0BAJBqxBi+OQbrgg0pqSn45Rdfx6Hfq0b546X4q8/9Av/8d7+Fzxff31skhW6SrgUgK9wFg0Ei5oYA5O2BJu16qORFv4opCmR17QQCATEhFVi5iUDSDRFSrkUikRBzfjIAyGQyOBwOrst4qAcF7rCU0pXp+CEE4bS6UHwgH91XeqHRavHLL76O8lNGFO9V4xc/bsZrL3fE+hK2LBAIwOv1QiaTcV1KRHi9XqJCdyAQIKY7HAgEiAndJF0LQN71UMmLhm6KAqBQKBLiCfdWkBa6SbqeRNw3vBmhUAgej5cw3eGHUavVsFqtXJfxQFsJ3ABwa3gJACDWiJBZaMBk/ywEQj7M4/PwWHz41VfOov5kJp58fxXe9u74PfLNarVCLBYTE1RJ6nSHQiH4fD5iroekYEfStQCAy+WCUqnkugyK2jUauikKgFKphN1u57qMiCBpOTZAVuhOpCXMD8MwDFFLzDUaDex2e9x+rW01cDvsbvjfXDKuMSiRmqXFstmCsvpiWOdtyCzKgHxPBX75wwGkZ/MxPDwcy8vYFovFAo1Gw3UZEUPSJPbwzzFSroekoErSCgQAcDqdNHRTRKChm6IAqFQqOJ1OrsuICJJCKkDW9ZAUUgGyOvcSiQRisRg2m43rUu6z1cANAJaluz/H1AYlfO6VbTML00tgGKCvZRBSER/zsy784t/6caurB0NDQ1G/hp2wWq3EhW5SOsPhGwik7LUlLXSTMHgUWFlR4Xa7oVAouC6FonaNjJ+WFLVLSqWSqOXloVCImIFdJIVukkIqQF7nXq1Ww2KxcF3KOtsJ3MD60A2GwdLCMngCHkyjcyitLQIADPyqCel61Wrwvn27Ny473haLBWq1musyIobE0E0KkkI3SUPh3G43AoEA7XRTRKChm6Kwsqfb5XJxXUZEhH/ZkjKwi6TQHQ6ppNwQIa1zn5KSgoWFBa7LWLXdwA0Ay2tCt9sZROqxSuTVla783eEBwzAoatyLFJ0SIokQp959CEeOHkF/f39cBW+PxwOHwwGtVst1KRFDWugm5VoAskI3ScvLl5eXAYB2uiki0NBNUVjpdJMWukkJqqSFbgDEdIdJC90GgwFzc3NxccNqJ4EbACxLd1fsLM67IJYyUOamAwDG70yh+vdPo3fGib7b03j0XfvxwT9ohC41BQ0NDXEVvM1mMzQaDTHBLhAIIBgMEnM9dBJ7/CLpBoLVagWfzyfqa41KXjR0UxTI6nQzDEPUMDWSroXH40EkEtHQHadUKhVEIhHn3e6dBm4A8LAh5FRlAgDcjiA0KWLYfezq61mXe/X/f/OzdvT1TAEAtFptXAVvk8kEg8HAdRkR4/F4wOPxiNlrSzvd8Yuka7FYLFAoFMScB08lNxq6KQpkdboBsrrDYrGYmJAKkBVUlUolbDYbWJZ9+BsnAIZhYDAYYDKZOKthN4EbAEZdTvT4VrrdngADTaoEExOL2P+7x5H/5DHcGllGtjEVABAMhvD//vIX8Lw5bC1egncwGMT8/DxRodtms0GpVBITHkja0x0MBhEMBom5HpJCt9VqhVwu57oMiooIGropCiudblKmlwNkhW6ShnUBZA1TU6lU8Pv9cLvdD3/jBBEO3VzcSNht4AaAIwcK8EdPNQAAGPChThUjFGThEYoxPrYIAFCqZatvPz2xiH/+1murf4+H4D0/Pw+xWEzU8CQ6FC5+eTwrsw5EIhHXpUQESaHbbrfT/dwUMWjopiisdOxICg6khW5SQipA1vXw+Xwolcq4m/i9GzqdDqFQKOZLzCMRuAHgSFU+3vfYQQCAQiyDUi0CX8BAJL77JLz/9hTS9KrVv7/6X+24frl/9e9cB+/JyUlkZmYS0xUGyDxznKTQLRaLifl6Iyl0W61WGropYtDQTVGgne54RlJnGCCvc6/RaIgK3TweD7m5uRgfH4/ZY0YqcN9LIZfC7wtBnSLGvMm6+vJQkIU+U7Pubb/9tV/Bsnz3ZyBXwdvr9cJkMsFoNMbsMaONZVmiQjfLskQNUiPpBgJAXugmacULldxo6KYorHS6/X4/MeGOpH3QEokEfr8/LiZKRwJJnW5gJXRbrdaHv2ECMRqNmJ2djcnnKVqBGwDUWgUsix5oUiQwzViQorv75HXg9gxUmrvLzJcXHfjWsy+ve38ugvf4+DhSUlKI6m6FzxpWqVQPf+MEEP7dQsoeaNJCt9frJeZz43A4aOimiEFDN0UBqz/USenYkRTswsv+SLqJQMrnBgDUajUsFgsxw9SAlZUvOp0OY2NjUX2caAZuANBo5bAseqFJXXkCnpF998xrny8AY0Haure/fqkfr/6ifd3LYhm8Q6EQRkdHUVBQENXHiTWLxQKlUknMkVQejwdCoZCo6yEldLMsS9T12O12GropYtDQTVEAZDIZGIYhJnSTtCSbYRiiroekawFWQjdpw9QAoLCwEKOjo1HbphHtwA0Aaq0M1iUvNKkrT8DZ0PobIyMDJkhl64dH/fPfvYbpycV1L4tV8J6engaPxyNqajlA93PHO5KWypN2HrzdbidmhQhF0dBNUVgJdkqlkvPzeSOFtG4qSUFVJpPB4/EQs1yexGFqAJCWlga5XB6VkBmLwA0Aaq18ZXn5m53u6Yn1Ydrp8KKoLGPdyzxuH/72L3+BYDC07uXRDt6hUAh9fX0oKSkhZqBVGGmh2+VyQSqVcl1GxJB0/Fn4PHhS9nTbbDaivneo5EZDN0W9KT09HdPT01yXERGkhW6SrkcikUAkEhG1D1qtVhN1PcDKjbiKigoMDQ3B5/NF7OPGKnADd0O3+s1Ot9XiQtabZ3SHTY0vQiBY/1Sgt3sKP/nBpfs+XjSD99jYGPh8PnJzcyP6cbnGsiysVitRx4WRdhOBpM59+FpIuXE1Pz9P3MoXKnnR0E1Rb8rIyMDU1BTXZUQESSEVIOt6GIYhbuK3RqPB8vIy12VEnE6nQ0pKCgYGBiLy8WIZuIGV5eWWRS+kMgHE0pXHSkldP6BsedGB0srsdS+TqSS4NmVCz9DsfR8zGsE7EAhgYGAA5eXlxISFMJfLBb/fT1zoJul6SArdJC2VB1ZCd0ZGxsPfkKISAA3dFPWmrKwszMzMcF1GREgkEgSDQWKODZPJZHC5XFyXETGkdYbT09OxuLgIv9/PdSkRV1FRgbGxsV1//cU6cAOASCSASCSC0+5f3dftdt3ftV+ctwMAGB6D4hNFcJVp4BMz4Is2fooQ6eA9NDQEuVxOZEfLbDYjNTWVmKFjgUAAdrudmE633++H3++HTCZ7+BsnAJJuIADAwsICMjMzuS6DoiKChm6KelNmZiZmZ+/v7CQioVAIHo9HTHdYoVDA4XBwXUbEkNbpVigUkMlkmJ+f57qUiFOr1cjKykJXV9eOJ7RzEbjDNClv7utOWdmzOjE6D4Fw/eObppex/5EyyI/lYDTkxgfeXYfn//w9KM/Vb/pxIxW87XY7hoaGsGfPHuK63ABgMpmIuplgs9kgEomI2dPtcDggEokgEoke/sYJgKT96aFQCAsLC7TTTRGDhm6KelNmZibm5ua4LiMiSJv4HQ7dpBxLpdFoYLfbiRmmBgAGgwEmk4nrMqKisrISNpsNExMT235fLgM3sPbYsJXul897/1FhADA3Y8EjJ8rxw6/8Hn7v9EGIBA+vc7fBm2VZdHZ2Ii8vDykpKdt+/3jn9/uxsLBAVOgO7+cm5QaJw+Eg6kx4kjrds7OzCAQCNHRTxKChm6LelJmZScz0coCsfdByuRzBYJCY65FKpRAKhbDZbFyXEjEGgwFms5mYGyNrCYVCVFdXo6enZ1tHo3EduAFAkyqHdenuBHMAkMvv74RN3zahITMDaartBZDdBO/wkLry8vJtvV+imJubg0KhgFwu57qUiCFtKJzT6STq80PSnu6JiQnivn+o5EZDN0W9KSMjg7jQ7fV6uS4jIvh8PqRSKZxOJ9elRATDMFCr1UQtMQ93KpeWljiuJDr0ej0yMjLQ2dm5pRsL8RC4gfs73QBgWd54f/pL/351R4+xk+Btt9vR39+PAwcOELPf+V6kLS0HyJtcTjvd8WtychJ6/eZbXCgq0dDQTVFvysjIwPz8PEKh0MPfOAGQtLwcoPu64x3DMNDr9cQuMQeAvXv3wuFwYHBw8IFvFy+BG7i7p1udcre7PTW+AIXy/ifm7U1DGB7Y2edvO8Hb7/ejra0N+fn5RC4rB1b2o5rNZqJCdzAYJGqIGkBDdzybnJykQ9QootDQTVFvyszMhM/nI2YYFGkTv0kM3SRNMAfI3tcNrCwzr6+vx8DAwKZDF+MpcAOANkUB27IPPD4DhUoIAAiFWGQbdRu+/Us/3Fm3G9ha8GZZFjdu3IBEIiF2WTmwsuKDx+NBq9VyXUrEWK1WCIVCYoaosSxLVOj2+XwIBALEfH5mZmZo6KaIQkM3Rb1JqVRCJpNhfHyc61IiQi6XE7McGyDvejQaDWw2G1HD1NLS0uByuYi6OXIvtVqNAwcOoKOj4749+fEWuIGVTncoxMK27IVGd7cDJhBu/Ov/8tnbME3v/Mz1hwXv3t5eOBwO1NTUgMcj9ymIyWSCXq8nZuAYcHc/NynX5PV6EQwGidkz7HQ6IRaLIRQKuS4lIkwmEw3dFFHI/Y1HUTug1+sxOTnJdRkRQdrEb9I63VKpFAKBgKhhakKhEDqdjuhuN7CyKqawsBAtLS2rcxPiMXADgCZ1pYtnXfKuHhsGAObZjVdZhIIh/OcL13b1mJsF76mpKYyOjqK+vp6YI5o2Q/dzxz+HwwGpVBo336u75XA4iLmBAKwMIqShmyIJDd0UtUZGRgYxoZu0id8KhQJOp5OYPfcMwxC3rxtY+R6anp7muoyoKy0thVarRXNzM1wuV1wGbmBlkBoALC961g1TmzdZkaZXbfg+r//qJizLu1tVcm/wNplMuHnzJmpra6FUKnf1seOdxWKBx+NBWtr9R7MlMhJDNylLywHyrmd+fp6GboooNHRT1BpZWVmYmZnhuoyI4PP5kMlkxHSHZTIZeDwe7HY716VEjFqtJm5fd1ZWFux2O3HXdS+GYXDgwAGIxWKcP38efD4/7gI3sLK8HACsi16oU9cfFabP0Gz4Pl6vHy//5PquHzscvHt7e9HW1oYDBw4gPT191x833o2PjyM7OxsCgYDrUiImPESNpOPCrFYrVKqNbzwlIqfTSVToXlhYoGd0U0ShoZui1sjMzNx0QFIiImkfNImdYdKuB1hZYp6VlYWxsTGuS4m6YDAIn88HPp8Pv98fl/vzlSophEI+LPd0ugEgGNx81civft4Gt2v3Rw56vV6wLAuGYbZ1xnmiCgQCmJqagtFo5LqUiLLZbBAIBJDJZFyXEjEkdu5JWV4eCoVo6KaIQ0M3Ra2RnZ1NVOgmbR80iWdb22w2+Hw+rkuJKKPRiKmpKQQCAa5LiZrwHm6RSIQzZ85AJpPh6tWrcXligPrNs7pVGhF4/LtDsCbHF7DZTCyHzY1Xf3FjV487MTGB9vZ2HDx4EEeOHNnWOd6Janp6GjKZjKgwB6x0HVNTU4kZohYKhWCz2Yjp3JM2id1sNsPr9dLl5RRRaOimqDWKi4uJ2dMNkBe6STtmSyqVQqVSwWw2c11KRGm1WkilUmK2atzr3qFpQqEQNTU10Ol0uHTpEhYWFrgucR2NVg6n3Y+APwS19u4Sc4fNg5y8jY8OA4BfvNiMgH/73ftQKISenh709PSgvr4emZmZ2zrHO5GNj4/DaDQSE07DSBsMZ7fbwePxiAmpHo+HqEnst27dQlpaGlHL/ymKhm6KWqOkpAQTExNxuUx0J0gN3aQMUwPIPNuaYRjk5eVhZGSEmOn5YZtNKefxeKiqqkJ5eTmuX78eV8vrNakrT8Qti15o7tnXrU7ZPHQsmG0495tb23osv9+PlpYWmM1mHD9+fN0wMdKD9/LyMmw2G3JycrguJaK8Xi+Wl5eh1+u5LiViLBYLUcefOZ1OyGSyuJspsVN37txBcXEx12VQVETR0E1RaxQUFMDn82FkZITrUiJCLpfD5XIRE1IVCgUYhiFqmJrBYMDc3BwxN3rCcnNz4XQ6sbS0xHUpEbOVY8Hy8vJw6NAh9Pb24ubNm3GxxD48wdy65L1vX7fL/uDTDX7+71e3fOPEYrHg0qVLYBgGx48f37CLSHLwHhkZQW5uLjHnJIeZzWao1WpIJJKHv3GCoPu541t/fz/Kysq4LoOiIoqGbopaQywWIycnB93d3VyXEhEymQwMw8TlPtOdYBiGuInfarUaAoEAi4uLXJcSUQKBAEajkZgbWNs5h1un06GxsREOhwMXLlzgfLm59s2zuleGqa3vdE+MzUMk2nzK9uTYApov9j3w44dCIfT29uLq1avIyclBfX39A4MnicHb4/FgZmYG+fn5XJcScaQtLQdWJpeTsp8bIO+4sJGREZSWlnJdBkVFFA3dFHWPkpIS3Llzh+syIoJhGMjlcuKWmJM0TI1hGCKXmANAfn4+TCZTwk+t3k7gDpPJZDhy5AgKCgpw/fp1dHd3c9b1VmvvLi9X39Pp9vuCyC188HnSL/371U1fF+5um81mHDt2DKWlpVtaskta8B4bG4NOpyPuDPJgMIi5uTmiQnd4iBpJnW7SjgsbHx9HSUkJ12VQVETR0E1R9ygrK0N/fz/XZUQMifu6SQrdwN193aTtf5bL5dDr9QkdqnYSuMMYhkFhYSFOnDgBi8WCCxcuYGpqKuaf5/BZ3ZZFDzQp4vteL5WKHvj+vd1T6O4YW/cyr9eL7u5uXL16FRkZGTh+/Pi2O4ekBO9AIICxsTEUFhZyXUrELSwsQCQSETXQKvz7kKSQarfbibmeYDCIiYkJGrop4tDQTVH3KC0tjashSLtF2nJsjUYDm81GzD51YGU5ss/ng81m47qUiAt/PyVit3s3gXsthUKBo0ePoqSkBLdv38alS5cwNzcXs/CtfXNYmnXJC5lCCJF4/XUsLz78ptzPfrjS7Q4EAujv78fZs2fhdDpx/PhxlJWVgcfb2dMJEoL38PAwZDLZuqFxpAgvLSdl4BiwMvBOo9EQc01+vx9Op5OY5fIjIyPwer1E3sSikhsN3RR1j5KSEoyPj3NdRsSQdra1QqEAn88n6pr4fD7S09OJXGKuVqthMBjQ1/fgfcHxJlKBO4xhGBiNRpw5cwbZ2dlob29HU1MTFhYWoh6+w51urycIl9N/377u6YlFqDSyB36Mm23DaL1+E2fPnoXZbMahQ4dw6NChiHRAEzl4e71eDA0NoaKigpgQF8ayLJH7uRcXF5GSksJ1GRFjtVohkUggFt+/iiURdXd3Iycnh5jroagwGrop6h4lJSWYmZmBx/Pgqb6JQqPRwOFwwO/3c11KRDAMg9TUVM6HU0Uaqfu6AaC8vBxTU1MJ08mPdOBei8/no6ioCI888ghSUlLQ2tqKixcvYnx8PGp7vrWpd6carxwbtn5fN8sCWbmpG76vJlWMw49m4f2f3ouR4VHs27cPx44dQ2rqxm+/4xoTNHgPDg4iNTUVOt3m550nKqvVikAgQNy1LSwsEHVNpE1iv3PnDl1aThGJhm6KukdOTg74fD4xw9QkEgkkEglRS8x1Oh1xoVuv18NqtRJzs2ctuVwOo9GI3t5erkt5qGgG7rWEQiHKy8vx6KOPIj8/HyMjI3jttddw8+bNiB8hp9bIV7uw1g0mmAMAj3e3SytTCFFxIBVPfKAYT3+kHDK5EK+8OIR///tbYFhJ1Dq6iRa8XS4XRkdHUV5eznUpUWEymZCenr7jrQPxyOVywePxENfpJil0DwwM0OPCKCKR85OUoiKEx+OhsLAQPT09XJcSMRqNhrjQvbS0RNS+brFYDK1WS2y3u6SkBPPz83F9bnesAvdaAoEAeXl5OHHiBA4fPgyGYdDZ2Ynf/OY3aGtrw+TkJLxe7+4eQ8iHXLnS3d6o0w0AHo8TB48Z8NQfleL9n65EaVUqRvus+I9vdePsL8dgnnIiFAzhv37UtKtaHiaRgndfXx8yMzOJ2Ut7LxKXli8sLECr1UIg2PyYvERjsViI+hocGxujx4VRRCLnpw5FRVBpaWlCdOW2irR93UqlcnVfN0kdi/AS87y8PK5LiTiJRILCwkLcuXMHR44cibv9r1wE7rUYhoFWq4VWq0VVVRWsVitMJhOGh4fR0dEBmUwGjUYDtVoNjUYDlUoFsVi85X9HbYocDpsbtmUvSqtSUFypRVqGDGkZMugMMvB4wNy0Bz1t8xgfssHj2nip+2v/3Yn3fegENFr5hq+PhHDwbm5uBoC4HKhks9kwPT2NU6dOcV1KVLjdbthsNuj1eq5LiaiFhYWIb43gkt/vh8PhIKrTTY8Lo0hFQzdFbaC0tBSDg4NclxExGo0G09PTXJcRMWv3dZMWuvv6+hAIBIjqxIQVFRVhbGwMc3NzcfVknuvAfS+GYaDRaKDRaFBWVgafzweLxQKr1QqLxYLx8XG4XC4wDAOxWLy6hUQkEoHH460OZuvu7gbLsvB6vTj1ZCb4gkxIpAKwLIvqwwY4PSysQR6Gh7y4M21BoUKJwVsPXong9frx8k9b8IE/jm7YjPfg3dvbC6PRCLk8ejcfuGQymZCSkgKR6MHHySUSlmWxsLCA6upqrkuJmPAQNYnk/tUricjr9WJ6epqGbopI5D2ro6gIKCkpwblz57guI2LWDlMTCoVclxMROp0OJpOJqF/OCoUCUqkUc3NzyMzM5LqciBMKhSgpKcGdO3eQnp4eF93ueAvcGxGJREhPT0d6evrqy4LBIDweDzweD7xeLzweD3w+H0Kh0Op+cLFYDIFAAJ1Oh9tDdvSPLMHqceGtB5T46Q0z7O71+8YztVubRP4/P2/F0x84AqksutOF4zV4Ly4uYn5+Ho888gjXpUTN7OwscUvL6X7u+Hfnzh3w+Xzk5ORwXQpFRRzd001RGygrK8PIyAgxe4bDx4kkyvTorSBxXzfDMMjJySHqyLp75eXlIRAIYGxsjOtSEiJwb4bP50MulyM1NRWZmZkoKChAWVkZKioqVocQlZSUoLS0FEajERZWgCu9s7g1Og+LM4AUxf0dzNG5ZTD8hz8tsFvd+M0vb0T8mjYSb3u8Q6EQenp6UFRUROyRRk6nEwsLC8jOzua6lIii+7njX2dnJ4qKihLqZzFFbRUN3RS1gX379sFiscTFk7xI0Wg0xO7rJklubi7m5+fhcrm4LiUq+Hw+9u3bhzt37nB6jYkcuHdCq7p7DveSw48U5f0rXpweH7IqHrzsXyQVouR0MX7dP4ZAIHIT1h8knoL30NAQgsEgiouLOa0jmiYmJqDX64lZshy2uLhI1H5ugLzjwtra2nDw4EGuy6CoqKChm6I2IJfLUVxcjGvXrnFdSsSQFroZhoFOp8P8/DzXpUSUVCqFXq/HxMQE16VETXp6OrKystDZ2bm6/ziWki1wA0CK+u7e4yW7DymKjbeZyDI3XmKeUaZH4eNlcO/RonV2Dj2jJvy2qS8qtW4kHoK3zWbDwMAA9u/fT+zXTCgUwsTEBHHDHFmWxfz8PFHnc5M4RK27uxu1tbVcl0FRUUFDN0VtoqamBm1tbVyXETGkTTAHVs62JvGILaPRiPHxcaKWzt9rz549cDqdMV9mnoyBGwBSVNLV/19y+JG6QacbAJZD/tX/1+VqUfJYKRSNuejleXBjbBZ2193jy174dVtMb5pwGbxDoRA6OjpQUFAArVYb08eOJbPZDIZh1s0PIIHVakUgECCq022z2VYHKZIgFAqht7eXdropYtHQTVGbqK2txa1bt7guI2JSUlLgcDh2feZvPNHr9bBarXC73VyXElHhJ7xzc3McVxI9QqEQ1dXVuH37NpxOZ0weM1kDN7B+efmi3b9pp3vUtIzSt5ZBeiwHQ4oQWidNmJq3bvi2YzNLuNI5EpV6N8NV8B4cHEQoFCL+/ODx8XHk5ubGxZDDSDKZTEhPTyfqe35xcZGooXDDw8OwWCxETZenqLVo6KaoTRw8eBB9fbFbPhltYrEYSqUSi4uLXJcSMWKxGFqtFmazmetSIorH4yE3N5fogWrAys2F7Oxs3Lx5M+od02QO3ACQol6zp9vuh0YuBG+DXBUIhmBDCLOLWxu6+B//0xqpErcs1sHbZrNhcHCQ6GXlwMrZ3HNzczAajVyXEnEmk4m4aewLCwtELZe/du0aSkpKIJPJHv7GFJWAaOimqE1UV1djcXGR88E9kaTT6bCwsMB1GRFlMBiIXWJuNpuJ6+LfKxbLzJM9cAPrO902dwBBloVGvnG3WyLe+nTn7qFZdPZP7bq+7YpV8E6WZeXASpc7PT0dUqn04W+cQNxuN2w2G/T6Bw8JTCShUAhLS0tEhW46RI0iHQ3dFLUJhUKBoqIiooap6XQ6ojrdwEronp+fRyAQ4LqUiJLJZNDr9RgdHeW6lKiK9jJzGrhXKKRiiIV3r33Zvvm+7rklx7Y+9n/8DzezL2IRvJNlWXkwGMTY2Bjy8/O5LiXiTCYTUlJSIBLdf0xeorJYLODz+VAqlVyXEjG3bt2iQ9QootHQTVEPUFNTg9bW2C+fjJbU1FTYbDai9nUrFApIpVLippgDQEFBAcbHxxEMxuZoJq6kp6cjJycHnZ2dER0eRwP3els5NgwApuesSFFvvdvZ1DWKoUluvv+iGbwtFktSLCsHgJmZGQgEAuIGqAHkLi1PTU0lau99X18f7XRTRKOhm6IegLRhaiTu62YYhtgl5jqdDmKxGFNTsV++G2t79uyB3+/H7du3I/LxaOC+39p93SvD1Dbv/GWnb28p9Qu/bt9xXbsVjeDt8XjQ2tqK0tJS4peVsyyL4eFhFBQUEBXiACAQCGBhYYHI0E3S0vLh4WEsLi7SIWoU0WjopqgHOHjwIHp7e7kuI6JI3ddtNps5OfM5mhiGQWFhIYaHh4m7tnsJBALU1dVhampq1wPkaODe2FY73TvxxvV+zC5sbfhaNEQyeAeDQbS1tSE1NRVFRUURqjB+LS0twel0Ijc3l+tSIm5ubg4ymQwKhYLrUiKGxP3c165dQ3FxMVGfJ4q6Fw3dFPUA+/fvx+LiIlH7aknc152SkoJQKITl5WWuS4m47OxseL1e4m6UbEQul6O2thbd3d07/hqlgXtz60K33YfUTY4NA4Aps2VbHzsYDOHFV7nrdgORCd4sy+LWrVsIhUKorq4mrvO7kZGRERiNRggEWx+glyhIXFpO4n7u1tZW1NTUcF0GRUUVDd0U9QBKpRKFhYVEDVMjcV83j8eDwWDAzMwM16VEHJ/Ph9FoxMhIbM9D5opOp8OePXvQ2toKl8u1rfelgfvBUu7pdCukAogEG4fKJZsL2Xr1tj7+ry71wGLndtr+boP3yMgIzGZz0nz9uN1umEwmIgeoBYNBmEwmZGRkcF1KRJG4n5sOUaOSAQ3dFPUQpA1TI3FfN7DSEZ6amiJyGXZ+fj7m5uZgs3G3fDeW8vPzkZmZiZaWli1PpaeB++HWhm63LwSXN4iUB3S70zTbW+rp8QXw0uudO64vUnYavOfm5tDb24u6ujrijs3azPDwMNLT0yGXy7kuJeLMZjOEQiFxe/JJ288NAL29vXSIGkU8Grop6iFIG6YGkLmvOy0tDQCInGIulUqRm5tL3HyBB9m7dy+EQiE6OjoeeiOFBu6tWTtIDQjv6958mJrHt/1j+H5+9ibcHv+23y/Sthu8HQ4H2tvbUVVVhZSUlBhUyD2Xy4XR0VGUlZVxXUpUTE1NITs7m6iOMIn7uUdHR7G4uIj9+/dzXQpFRRUN3RT1EHV1dat7/EhBYuhmGGa1202i0tJSzM/PY2lpietSYoLH46G2thZWqxUDAwObvh0N3Fu3dk838Oa+7gcMUxudWYKAv72nCTaHB/99sXtH9UXaVoO33+9HS0sLjEYjkcPENtPX14fMzEyo1dvbRpAI/H4/zGYzsrOzuS4lokjcz33u3DmUlpbSIWoU8WjopqiHqK2thdvtRns7t0OCIkmn08HhcMDt5nb/ZaRlZ2djZmZmy0uSE4lEIkFhYSHu3LlD5BL6jYjFYtTV1WFoaAiTk5P3vZ4G7u25L3Q7/A9cXu7x+pGfuf2u709+ewOBQHycLf+w4B2eVC6TyVBRUcFBhdyw2WyYnp4mtss9MzMDlUpFVDgFVpbMp6WlEdW9v3DhAk6dOsV1GRQVdTR0U9RDiMViHDp0CL/97W+5LiViRCIRUlJSiDvbWq1WQyqVEnddYUVFRbDb7Zibm+O6lJhRq9Wora1FV1cXpqenV19OA/f23bu8fOWs7gcfG6aUS7b9OOZFO16/3r/t94uWzYJ3KBRCW1sbAoEAampqiAoyD9Pb2wuj0UjkXm7g7tJy0phMJuj1eq7LiKjW1lacPHmS6zIoKupo6KaoLThz5gyuXr3KdRkRFT7bmiSkLzEXCoUoLi5Oqm43AKSnp6O2thadnZ2YnZ2lgXuHNEopeGuC5ZL9wXu6Aex4GvkLr7TF1dfovcE7FAqhvb0dHo8HDQ0NEAojd2Z5vFtaWsL8/DxKSkq4LiUq3G43FhcXkZWVxXUpEeVyuWC324kK3dPT0xgeHkZjYyPXpVBU1NHQTVFbcOLECbS3txO1r9tgMGB+fp64pdjZ2dmYm5sj6ki0tfLz8+H3+4m9sbAZvV6PgwcP4saNG7h8+TIN3DvA5/GgVtztXC87/BAJGMglm/8bjs8uQSF9cDDfyMj0Iq52xtcxd+Hg3dfXh8uXL8PpdOLw4cNJFbhZlsWdO3dQVFQEiWT7qxgSwdTUFNLS0oi7PpPJhNTUVIhE2/9+jFe/+c1vUFZWtjoIlaJIRkM3RW1BeF93W1sb16VEjEKhgFQqJW6pslwuh1arJfLMbmDl3O6ysjL09fURdRNoK3Q6HSQSCZxOJ4xGIw3cO7B2X3cgxMLqCiD1AUvMgyEWxh3s6waA//h1/P28VKvV0Gq1sFqtyMzMJCrAbIXZbIbdbkdhYSHXpUQNqUvLzWYzUV1uADh//jzdz00lDRq6KWoLRCIRGhoaiNrXDQAZGRnELTEHVrrdExMTXJcRNTk5OeDz+RgbG+O6lJgJLymXy+U4cOAAOjo6iL2xEk0bDlN7wARzABAKdnZz49bADG72Tz/8DWMkvKTc6/Xi0KFDGB4e3tY53omOZVn09vaipKSE2O6+1WqF0+lERkYG16VElN/vx8LCAgwGA9elRBTdz00lExq6KWqLTp8+TeS+bpPJFFd7LyMhOzsbdrsdVquV61KigmEYlJeXo7+/H34/92ciR9u9e7izs7NRU1ODjo6OpFtmv1v3ndW9hX3d5kX7jh/vhVfio9sdDAbR2toKl8uFI0eOQK/Xb+scbxJMTU3B7/cjLy+P61KiZmxsDFlZWRAIBFyXElHz8/OQyWREHas1NTWFkZERHD9+nOtSKComaOimqC0icV+3VqsFy7JYXl7mupSIEgqFyMrKIroTbDAYoFAoiA8Mmw1NMxgMqKurw82bNzE6OspxlYlju8eGAcDsgg1p2p092b/WNYKRqYUdvW+k+Hw+XL9+HT6fD0eOHFldUr7Vc7xJEAwG0dvbi7KyMmK3Zfj9fkxOThJ5U8FkMhHX5ab7ualkQ0M3RW1RbW0tvF4vUfu6eTwe9Ho9kUds5eXlYXJykthOMMMwqKiowNDQELFD4x42pTw9PX01NHV1dRF1QyxaUu87Nsz3wD3dYZlpqh09HssC/8Fht9tut+Py5csQCAQbTilPluA9NjYGgUCAnJwcrkuJmunpaSgUCmg0Gq5LiSiWZWE2m4kL3fR8birZ0NBNUVtE8r5uEkO3RqOBQqFYd7YzaVJTU6HT6TAwMMB1KRG31WPBUlNTcfz4cSwvL6OpqYnYGxCRcl+n2+6HRiHEw46oDoV2tgVFIhVgMuTAjMW2o/ffDZPJhMuXLyMrKwt1dXWb7mMmPXj7/X4MDAygoqKC2LPIWZbF2NgY8vLyiLvGpaUlAEBKys4GGsar1tZWGrqppEJDN0VtA4n7utPS0uBwOOB0OrkuJaIYhkFeXh5GR0eJ27O+VkVFBcbGxuBwOLguJWK2ew63TCbD0aNHIRaLcfnyZWL38kdCyj2h2+YKgGUBjfzB3e4J0/a2oGhTZag4kg1XPh/X5qbwb803tl3rTrEsi8HBQbS3t6O6uhrl5eUPDWIkB++hoSEoFAriJl+vtby8DKfTSeTUcpPJBL1eT9TNBLqfm0pGNHRT1DaQuK9bKBRCp9MR2e3Ozs6G2+1e7RSQSKVSITc3Fzdv3iTi5sJ2A3eYQCBATU0NcnNzcfXqVczOzka50sR0b6ebxcp53Q/b1211eGDM0D7wbYRCHsqqM5DToMeE1oNm0zTsXh8A4D87erDscu+q9q0IBoPo6OjAyMgIjh49iqysrC2/L4nB22q1Ynh4GHv37iUqtN1rdHQUubm5xA1QA8jdz11eXg6dTsd1KRQVMzR0U9Q21NTUELevG1hZYk7i8UsCgQC5ubkYGRnhupSoqqiogNvtTviBYjsN3GEMw6C0tBT79+/HjRs30N/fT8SNiEi6t9MNAEsO30OPDQOAVLX8vpcxDIP8kjSUHs2Gr0SEFrsJPXNzCN3z7+72B/Dj1ps7rnsr3G43rl69CqfTicbGxh3t7SUpeIdCIXR2dqKwsJC4fc5reTwezMzMID8/n+tSIs5ms8HtdiM9PZ3rUiKK7uemkhEN3RS1DSKRCIcPH8arr77KdSkRlZWVtbo8jzT5+fkwmUxwu6PfZeOKUChEdXU17ty5k7Cfw90G7rUyMzNx7NgxjI+Po729ndhhejtx75FhALBo929pmJrTs9K1Fgp5KCxPR9mRbAj3ynAzuIDW2WnYPA/eT/+jlptw+6LzuVhaWsKlS5egVCpx5MgRSCSSHX8sUoL3wMAAWJZFaWkp16VE1fj4OHQ6HVHHaYVNTk7CYDAQ18FvbW3FiRMnuC6DomKKhm6K2qbHH38cZ8+e5bqMiBKJRNDr9USeeSyXy5GWlkb08WHAyt78nJwcdHZ2Jlx3N5KBO0ytVqOxsRF+vx8XLlzA3NxcBCpNfBKxEFLx+oC95Hj4Wd0AMDq9iIIjGXAU8tHhm0eLaRrzTteWH9vi9uDnHT3brvlBgsEgbt++jaamJhQXF2P//v0R+fpJ9OBttVoxNDSE/fv3g8cj96leKBTC2NgYkV1ulmUxPT1N3D713t5ejI+P4/Tp01yXQlExRe5PYoqKkre//e1oa2sjbp9wdnY2pqamEi6wbUVhYSFGR0cRCAS4LiWq9uzZA7fbnVDL6aMRuMPEYjEaGhpQXFyMtrY2dHV10a437u92L9kfvqcbAHz+IHyhIDz+nX8f/bD5BgLByMzEWF5exsWLF7GwsIDjx4+jsLAwovuWEzV4h0IhdHR0EL+sHFjpBPP5fCKHxC0uLiIYDBK3tPynP/0pjhw5QvzXJkXdi4Zuitqm4uJi5OXl4b/+67+4LiWiDAYDPB4PLBYL16VEnE6ng1wuJ77bLRAIsH//fvT29ibENPNoBu4whmGQn5+PkydPwuFw0K43Njo2zAeVTAAh/+GBVc0+vCP+IDNWO37d07erjxEMBnHnzh1cu3YNOTk5OHbsGFSqnZ0j/jCJGLzDRwiSvqycZVkMDQ2huLiYyCFxU1NTyMrKIm6lwmuvvYYnn3yS6zIoKubI+k6mqBh55zvfif/5n//huoyI4vP5yMjIIHKJOcMwKCkpwfDwMILBINflRJVOp0uIaeaxCNxryWQyHD58GMXFxWhtbU3qrve9odvlC8HtC0K7hW63zbz15eSb+Zdr7Tv+2lxeXsalS5cwNzeH48ePo6SkJOqhJJGCd7IsKweA2dlZBAIB5OTkcF1KxAWDQSKXli8sLODGjRt4+9vfznUpFBVzZP9EpqgoeeKJJ3DlyhXilitnZ2djenqaqCPRwgwGA4RCISYnJ7kuJerC08zjdZl5rAN32EZd7/n5+Zg8djzZeIK5H6lbmGA+NbYM9Y6HlLGoKEpDMCuI6+bxbb3n2u52VlYWjh8/HrXu9kYSIXiHl5UXFRURv3SXZVkMDAygqKiIyJsLZrMZYrEYWu2Dj+lLNP/5n/+JoqIiFBQUcF0KRcUceT+pKCoGDh06BB6Ph9dee43rUiIqLS0NwMrdaNIwDIPi4mIMDQ3FdQc4EuJ5mTlXgXstuVyOw4cPo6ioCC0tLejo6CB6uv29Ngzd9q0NU2NZFoWa7QUBqViA6koDMqpkyMiV4q8OnUCDIW9L78uyLEwmEy5evLja3S4tLeUkaMV78A4vKy8pKeG4kuibn5+H2+2G0WjkupSomJqaQnZ2NnHL5l955RW8853v5LoMiuIEDd0UtQN8Ph9vfetb8Ytf/ILrUiKKYRhkZ2cT2w3OyspCKBQi8kzye4WXmcfTNPN4CNxhDMOgoKAAp06dAsuyOHfuHHp6euDz+TirKVY2OjZsye7b0jA1ABB7txYEio0p2HswDYoSHvbkpeJfTr8L3zn+FOr0W5s0vbi4iKtXr6KzsxN5eXkx725vJF6Dt8ViwdDQEA4cOEBk5/deg4ODKCgoIO4oLQDw+Xwwm83ELS33+Xy4cuUK3vGOd3BdCkVxgvyfzBQVJU888QTOnz/PdRkRl52dvbpXjjQ8Hg9FRUWr59eSrqKiAh6PJy6WmcdT4F5LJpPh4MGDOHbsGOx2O9544w309/cT+fUfdu+ebiB8bNjWQvfcuHXT12Xrldi/34D0KgnS8yT4QFU13njiw/jLmkdRqN7aFGabzYaWlhY0NzcjLS0NZ86cQWFhYdyEyXgL3qFQCJ2dnSgqKoJarea6nKhbWlrC8vIykceEASt71VUqFXHnjv/2t7+FSCRCXV0d16VQFCfIu0VIUTHy6KOPYmZmBjdv3kR1dTXX5USMWq2GVCqFyWQi7k47ABiNRgwMDGBubo7IY2bWCi8zv379OvR6PWdP4uI1cK+lVqvR0NCAhYUF3L59G6OjoygtLYXRaIybsBcpWpX0vpct2v1I3WKne2HegawcFaatdgBAboYaqelSzMGGFJkQj+QW4HdyS5Ep12yrLpfLhb6+PkxPT8NoNOKRRx6BWCze1seIlXDwbm5uBrByLCFX+vv7ASTHsnJgpcudn58PkWh3k/Tj1eTkJJG/e3/xi1/gbW97W1z+/KeoWKChm6J2SKlU4sSJE3jppZeICt0MwyAnJ2d1Txlp+Hw+CgoKMDAwgPT0dOL2zN1Lp9PBaDSivb0dR48ejflyzEQI3GvpdDocP34cs7Oz6O3txfDwMMrLy5GZmUnM10qKWn7fy5YdfkhEfMjEfLi8D5/wX5ymRUqhFLN+K9LVYhzLyMWjuaXIV+q2XY/X68XAwADGxsaQmZmJU6dOQS6/v8Z4Ew/Be35+HsPDwzh27BhxN4c2YrPZMDc3h3379nFdSlS43W4sLS2hpqaG61Ii7uLFi/j2t7/NdRkUxRnyf0JTVBQ98cQTeP3117kuI+Kys7MxNzdH7HCp/Px82O32pJlcvWfPHvD5/JgfI5ZogTuMYRhkZmbi5MmTKC4uRk9PD86fP4/R0VEilp1vNEjNH2RhcwW2vK87aAngj6r349dv+wP86Mz78JE9R7YduO12O7q6uvDGG2/A4XDg+PHjOHjwYEIE7jAul5o7nU60tbVh7969SbGsHAB6e3thNBoh2fEE/fg2Pj6O9PR04q6vo6MDs7OzeOSRR7guhaI4Q0M3Re3C29/+dnR1dcFkMnFdSkTJZDKkp6djfHx7x/okCqFQiJKSEty5cycp9nbzeDzU1dVhaWkJg4ODMXnMRA3ca/F4PBiNRpw5cwbFxcUYHx/H66+/jtu3b8Pl2v151VxRKyTg8+//9b/k8G3p2DAAGOtZwKPZ5VCL7w/wD8KyLMxmM5qbm3Hx4kUEg0EcPXoUDQ0NCRscuQjefr8fLS0tyMnJIXaC972WlpYwPz9P7DL6UCiE8fFx5OXlcV1KxP3sZz9LmBUsFBUtNHRT1C7k5OSgoqICL730EtelRFxeXh7Gx8eJPLMbWOl2+3w+TE9Pc11KTIjFYtTX12NgYACzs7NRfSwSAvdafD4fubm5aGxsRH19PZxOJ86dO4fr169jdnY24b5HGIaBRnH/vu6VY8O2FrptTi96R7d+s9Hj8WBgYADnzp1DZ2cntFotHnnkERw4cICIM6VjGbxZlkVHRwckEgn27NkT1ceKFyzL4s6dOygsLCSuCxxmNpvBMAyRs0beeOMNelQYlfRo6KaoXXriiSfw61//musyIk6v14NhGJjNZq5LiQo+n4/S0lL09vYmXGjaKbVajQMHDqCjowM2my0qj0Fa4F6LYRikpqairq4OZ86cgVarRXd3N15//XXcuXMn7s5Ef5ANh6k5/FtaXq7RylC2PwNdsw8O3aFQCGazGa2trXj99dexsLCA8vJyPProoygrKyMuPMUqePf29sJut6OmpiYp9nEDwNzcHOx2O4qKirguJWrGxsZgNBqJmR0RNjs7i1u3buFtb3sb16VQFKfoIDWK2qUnn3wS3/zmN2Gz2Tg/QzaSGIaB0WjE2NgYMjIyuC4nKnJycjA0NISxsTEUFBRwXU5MZGZmrh7J1NjYGNEJwCQH7ntJpVKUlpaipKQEc3NzGB8fx/nz56FQKGAwGGAwGKDVauP2CXSKWg5MLqx72ZLdj+q89T/DBAIeDNlqKHUyhCQMZtx2jFtsGLe5wQ4J8HtH9697e7/fD7PZDJPJBLPZDIFAgJycHJw+fToplpZGe7ja1NQURkdHcfz4cWKnd98r3OUuKSmBULi1lRiJxul0Yn5+nqihrGEvvPAC9u3bh6ysLK5LoShO0dBNUbtUXV2N7OxsvPDCC/j4xz/OdTkRlZubi/7+fjidTiKfMPN4PFRUVKCrqwu5ubkxn+zNldLSUthsNrS1taGhoSEi3bJkCtxrhZeD6vV6+P1+zM3NwWQy4fr162AYZjWAp6WlxdXXV8o9nW4enwEjEyFFKUTFoWz4BCEseT2YtFixGLIAy5b7Pkbn5CzcPj9Cfh9MJhNMJhMWFxehVCphMBhw+PBhaDSauL3xEC3RCt4WiwU3b95EbW0tlEplRD5mIpiamoLf7ydyr3PY+Pg4DAYDpNL7V6Akupdeegnvf//7uS6DojgXP88AKCpBMQyDZ555Bj/96U+JC91SqRQGgwFjY2PE7h00GAwYHBzE8PAwSktLuS4nJhiGwYEDB3DlyhX09PSgqqpqVx8vWQP3vYRCIbKyspCVlYVQKISlpSWYTCbcvn0bbrcbaWlp0Ov10Ol0UCgUnIbRrJJUGGGAI+CDxe2Bxe1BJ2vFu5CCfqsZS77Np7SLeAyypGKUqqQ4d/48Qj4vdDodMjIysH//fshk2xuuRqJIB2+Px4OWlhaUlZURued3M8FgEH19fSgrKyP250owGMT4+DgOHjzIdSkRNzg4iK6uLrzyyitcl0JRnKOhm6Ii4H3vex++8pWvEHm2dUFBAVpbW1FaWhpXnbpIYRgGFRUVaGlpQV5eHsRiMdclxYRAIEB9fT0uXboElUq14y4SDdwb4/F40Ol00Ol0qKyshN1uh9lsxvT0NHp6elaGmWk0UKvVq/9VKpUxC+KMmIdbG8xrWPL5oRMLV0N3OGBnycTIkomQLRNDJxbCEQhiyO7GeIiHD7/lLcQu+92NSAXvYDCI1tZW6HQ6Ts4C59LY2Bj4fD5ycnK4LiVqpqenIRKJkJaWxnUpEff9738fJ0+ehMFg4LoUiuIcec+gKYoD+fn5qK2txQ9+8AN8+ctf5rqciEpNTYVEIsH09DSxR9PodDqkpqZiYGAAe/fu5bqcmJHJZKitrcX169ehUCig023vnGUauLdOqVRCqVSiqKgIoVAIdrsdFosFVqsVo6Ojq4Pt1oZwuVwOsVgMiUQS8RteqfK73WgGgEzAg1IggDsQQr1OhQMpSmTJRNCJhbD7g5h2ezHt8qJr2Ylplxf2QBAAUOJm8XEauDe12+DNsiy6urrAsiyqq6uTaqm+3+/HwMAA8dc9OjqK/Px8Iq/xl7/8Jb70pS9xXQZFxQUauikqQt7//vfj+eefJy50MwyDgoICjIyMIDc3l8gnBgBQUVGBS5cuwWg0EjUQ72HCndi2tjY0NjZueWkwDdw7x+PxoFar151LHQqF4HA4YLFYYLFYMD4+DrfbDY/HA5ZlIRAIIJFIIJFIVoN4+A+fzwfDMODxeGAYBsHgSiCen58Hn88Hy7IIhULw+/3weDzweDwQLy3h4yWZUAkFUAj4EPAYeIIhhFgWyiAf7Ut23Fy2Y8rlg+PNgL2RwbkFLDic0CnIm/kQKbsJ3iMjI5ifn8fx48eT7nusv78fKpWK6C7p0tISHA4HkZ38a9euYXp6Gk8++STXpVBUXGBYlmW5LoKiSLC4uIiMjAzcuHGDuG5pIBDA66+/jvr6eqSmpnJdTtT09PTAarXi8OHDxN5c2MytW7ewuLiIo0ePPnSpMA3cscOyLHw+HzweD7xe72poDv/xer0IBoOrwTr8X7fbDblcvhrEGYaBSCRaDezLXj/+4XIrbP4g7P4AbIEg/CEWdalKVGnk+JfhrZ/B/bfv+h28vao8iv8KZFheXkZzczNKS0u3FLzNZjPa2tpw5MgRaLXaGFQYP2w2Gy5duoTGxkaib4LeuHEDQqFw13M14tEf/dEfweVy4Sc/+QnXpVBUXKCdboqKkNTUVDz22GP4/ve/j3/4h3/gupyIEggEyM3NxcjICNGhu7S0FOfOncP09DRxe/MfprKyEtevX0dLSwsOHTq06XJmGrhji2EYiMXibc0a8Pv9ePXVV9HY2LjpDZRZqx23fnXhvpfPe/zQSba3XLxpZIKG7i3YTsd7YWEBbW1tqK6uTrrAzbIsbt26hfz8fKIDt8fjwczMDE6cOMF1KREXDAbx61//Gv/6r//KdSkUFTd2f04MRVGr3v/+9+Pll19GKBTiupSIKygogMlkgsPh4LqUqBEKhaisrERPTw/8fj/X5cQUj8dDXV0dAKClpWV1ifJaNHCTI1W+8dFE814/tCIhBNtY6dE0PBGpsogXDt79/f0YHh7e8G2WlpbQ0tKCvXv3Jt3NP2BlsJjD4SD+NInh4WGkp6cTefzbK6+8gkAggEceeYTrUigqbtDQTVER9La3vQ1LS0u4cOH+DlKik8lkyMrKwtDQENelRFVWVhYUCgX6+/u5LiXmBAIBDh06hGAwiLa2tnU3j2jgJotIIIBCLLrv5Y5AEJ5gCDrx1rvdZrsDw/OLkSyPaA8K3haLBc3NzSgvLyd2cOWD+P1+9PT0oLKykuiJ+D6fD2NjYyguLua6lKj493//d7z3ve8l+nNIUdtFQzdFRZBUKsVTTz2FH/7wh1yXEhXFxcWYnJyE2+3mupSoYRgGVVVV6yZKJxOBQICGhgZ4vV60t7evDuCigZs8ayeYr7Xg9SNtB0vMqa3bKHhbrVY0NTWhtLQUBQUFHFfIjf7+figUCmRlZXFdSlSNjo5CrVYjJSWF61Iizul04o033sAzzzzDdSkUFVdo6KaoCHvmmWfw6quvwufzcV1KxCmVSuj1+k2XRZJCpVIhPz8f3d3dSMZZk0KhEA0NDXA6nWhvb0dTUxMN3ATaLHTPe3zb6nQDdIn5TqwN3rdv30ZTUxMKCwtRVFTEdWmcsNlsGB0dRVVVFdGDLAOBAEZGRlBSUsJ1KVHx4osvIi0tbXW7EkVRK2jopqgIO3HiBEQiEX75y19yXUpUFBcXY2xsjMibCmuVlpbCbrdjenqa61I4IRKJUFtbC7PZDLfbjZqaGhq4CZOq2LzTvd3Q3To2hUCQvFkW0abValFVVYWhoSGo1Wri9zFvhmVZdHd3Ez88DQDGx8chlUqRlpbGdSlR8ZOf/ATPPPMM0TdOKGonaOimqAjj8/l43/vehxdeeIHrUqJCq9VCq9ViZGSE61Kiau1QNdJvMGzE7/ejo6MDKSkpEIlE6OzsJHJAYDLbtNO9g+XlTp8Pt6ZnI1FWUrFareju7kZubi6Wl5eJX0W0mcnJSdjtduJvOoRCIQwPD6O4uJjIUGoymXD16lX8/u//PtelUFTcoaGboqLgmWeewblz57C4SOZwoZKSEoyMjCAQCHBdSlRlZWVBo9Ggu7ub61Jiau0e7kOHDuHIkSNwuVxoa2vbcKo5lZhSNplgvuDZfqcbAK7RJebbsry8jGvXrqGwsBD79+/H4cOHHzjVnFRutxs9PT3Yt28f8YO3pqamwOPxkJmZyXUpUfH9738f+/btI3ZAHEXtBg3dFBUF+/btQ3l5OZ577jmuS4kKnU4HuVyOsbExrkuJKoZhsG/fPphMJphMJq7LiYmNhqaJxWIcPnwYXq8XLS0txN9sSRY6uXzDl897/ZAL+JDxt/cUoZkOU9uypaWl1aFp4b29WzlOjDQsy6Krqwt6vR4ZGRlclxNVLMticHCQ2C53KBTCj370I3z0ox/luhSKiks0dFNUlHz84x/Hj370IyKX5DIMg5KSEgwPDxPf+ZRKpdi7dy9u3rxJ/DLzB00pF4lEaGhoQDAYpMGbEJt1un0hFjZ/YNvd7lvTJjg83kiURrSFhQU0NzejoqIChYWF616XbMF7cnISFosFe/fu5bqUqJudnUUgEEBOTg7XpUTF2bNnMTs7i/e+971cl0JRcYmGboqKkve+972YnZ3FG2+8wXUpUWEwGCAUCjE1NcV1KVGXk5ND/DLzrRwLFp5qDgBNTU3wemnASmS6TQapAcC8Z/v7ugOhEFrHyP95sBsmkwnXr19HZWUl8vPzN3ybZAne4WXl1dXVEInuPzOeJOEud1FREXg8Mp96f+c738EzzzwD+SYraCgq2ZH5nU9RcUAul+OZZ54hdok5wzAoKirC4OAg8cdqhZeZm81mzM6SNyxqO+dwCwQCHDp0CDKZDJcuXYLVao1hpVQkpWwySA3Y2QRzgJ7XvRmWZTEwMID29nYcOHAARqPxgW9PevBeu6zcYDBwXU7Uzc/Pw+VyPfTznqjMZjNee+01urScoh6Ahm6KiqKPfvSjeP3112E2m7kuJSqys7PBsiwmJsh/oi2VSlFZWYmuri6ilplvJ3CH8fl8HDx4EHl5ebhy5QpmZmZiUCkVaZtNLwfenGBOQ3dEBINB3LhxA2NjYzh27NiWh2iRHLyTaVk5y7Lo6+tDQUEBBAIB1+VExT/90z9h//79SfH5pKidoqGboqJo7969qK6uxne+8x2uS4kKHo+H8vJy9Pf3E7+3GyBvmflOAndYeF//wYMH0dnZib6+PuJXPJBGLZVAuMnnfMHjh06ytSW/fB6Dghwt9u8zgJfLYtZpi2SZCc3tduPKlStwu904fvw41Gr1tt6fxODtdrvR3d2dFMvKgZW93C6X6779+6QIhUL48Y9/jI997GNcl0JRcY2GboqKso997GN44YUXiByoBqwcqyUSiTA6Osp1KVG3dpl5ond3dxO418rIyMCxY8cwOTmJtrY2OmAtwaTINh6mNu/1QycWYKMZy6lqKSqK0nCg2oCSAylgi4K4IzSh2T6OHosJV2fHolpzolhaWsKlS5egVqtx+PBhSCSSHX0ckoI3y7K4efMmMjIykmJZeSgUQm9vL0pLS4ntcv/P//wPlpaW8O53v5vrUigqrtHQTVFR9p73vAc2mw3/9V//xXUpUcEwDMrLyzEwMAC/3891OVEnlUpRVVWFmzdvwuVycV3OjkQqcIepVCo0NjbC7/fjypUrCfvvkoxSNxmmtuzzg88wqMpNxb4KPfYfMKD4gBbSch6mUy3oCE2hyTaOW5ZZuAJ3v+8LVCmg6x2AiYkJNDU1oaSkBNXV1bv+HiMleA8PD8NutyfNMuTJyUmwLEvsXm5gZWn5hz70IUilG9/AoyhqBZm33SgqjkgkEnz4wx/Gc889h/e85z1clxMV6enpUKvVGBoaQnl5OdflRF12djYWFhZw48YNHDlyJKGm0UY6cIeFjxTr6enBpUuXUFdXh9TU1Ih8bCp6irNTwFMCAjEPjICFnwnBzfox53VgIeSDRWJFv8cJeO5/XwaAUanFIX0uDhly0WDIhV6mjPk1xBOWZXH79m1MTEygrq4O6enpEfvY4eDd3NwMAAm3XHl5eRl9fX04fPgwhMLtzwtINMFgEH19fdizZ09C/Y7YjsHBQVy6dAnf+973uC6FouIeDd0UFQMf+9jH8M1vfhO9vb1EhtJwt7upqQn5+fk7XkaZSCorK3H58mX09fWhoqKC63K2JFqBO4zH46GqqgoqlQrNzc2orKxEXl5eRB+Diiy/Ooj2xUlgg10B8zIf0nki9MMJEY+PAnUK9qToV/+Ua9OhEpH/vb5Vfr8f7e3tcLlcOH78OBQKRcQfI1GDd/jfpqysDCkpKVyXExOjo6MQi8XIysriupSo+eY3v4nHHnts0+PvKIq6i4ZuioqBnJwcvPWtb8U3vvEN/OAHP+C6nKhISUlBeno6+vv7sW/fPq7LiTqBQICamhpcvnwZOp0uoh2taIh24F4rLy8PCoUCbW1tsNlsqKysJLbTk+h0krvLy0U8PtKkcuhlSuQpNcgNiFElkuArlZXIVWggoJ/DTdntdrS0tEChUOD48eNR7eQmWvBmWRadnZ1QKpVxX2uk+P1+DAwMoKamBgyz0WSExOdyufDSSy/hZz/7GdelUFRCYFg6bpaiYuLixYt45zvfiampqah0QOKB3W7HxYsXcfLkSWKv8V4TExO4ffs2Tpw4Ebd72mIZuNdyuVxoaWmBSCRCbW1tUkwqjgd+vx+vvvoqHn/88YeGv0mHBXafF3qZEili6bqAMDY2htnZWTQ0NES75IQ2NzeH9vZ2GI1GVFRUxCxkLS8vo7m5GaWlpXEdZkdHRzEwMIATJ05ALBZzXU5M3LlzB8vLyzh8+DCxofvb3/42nnvuOfT39xN7jRQVSfS2NUXFSGNjI7KysvD8889zXUrUKJVKZGdno6+vj+tSYiYnJwfp6eno6OiIyyOzuArcACCTyXDs2DEIhUJcuHCB2PPqE1mOQoOKFD1SJbL7njjL5XI4HA6OKot/gUAA3d3daG1txd69e7Fnz56Yho9EGK5mtVpx+/ZtHDx4MGkCt9vtxsjISExvwHDhX/7lX/DJT36S6GukqEiioZuiYoRhGHzyk5/E9773PWKPDwOAsrIymEwmWCwWrkuJifAxYm63GwMDA1yXsw6XgTtMIBCgtrYWZWVlaG9vR0dHR1JMuSeBQqGAy+VCMBjkupS4s7i4iIsXL2J5eRmNjY3IycnhpI54Dt5+vx9tbW0oLi6GTqfjupyYGRgYgF6vh1ar5bqUqHnttdcwPj6O97///VyXQlEJg4Zuioqh97///bBYLHjxxRe5LiVqpFIp8vPzcefOHa5LiZlwsBwcHMT8/DzX5QCIj8AdxjAMjEYjTp06Ba/Xi/Pnz9OudwKQSCTg8/lwOp1clxI3AoEAenp60NzcjLy8PBw7dgxKJbcT2+MxeLMsi1u3bkEqlaKkpITrcmLG4XBgYmKCyIGpa33961/HH//xH0OlUnFdCkUlDBq6KSqGpFIpPvOZz+Ab3/gG16VEVXFxMSwWC0wmE9elxIxarcbevXvR3t7OeUiJp8C9llQqxaFDh1a73p2dnbTrHccYhoFCoaBLzN+0tLSEixcvYmlpCY2NjSgqKoqbpbXxFryHh4exsLCAgwcPxs2/USz09PQgNzeX6Jkm169fR0tLCz7zmc9wXQpFJRQauikqxj72sY9hZGQEr7zyCtelRI1IJEJFRQW6u7uTammq0WhEVlYWWltbEQhscAZTDMRr4A5b2/V2u904f/485ubmuC6L2oRCoeD8JhLXgsEgenp60NTUFDfd7Y3ES/A2m83o6+tDXV1dUhwfGWYymbC0tER8l/vZZ5/FH/zBH8BgMHBdCkUlFBq6KSrG1Go1Pv7xj+P//t//y3UpUWU0GiEUCjE4OMh1KTFVWVkJkUjEyWC1eA/ca0mlUjQ0NKCsrAxtbW206x2nkn2Y2tLSEi5cuBCX3e2NcB287XY72tvbUV1dTfSe5nsFg0F0d3ejoqKC6FMaenp6cPbsWfzZn/0Z16VQVMKhoZuiOPCnf/qnuHHjBq5cucJ1KVETHjA2NDSUVJ0yHo+H2tpa2Gw29Pf3x+xxEylwh4W73idPnqRd7ziVrMvLg8Egbt++jaamJhiNxrjtbm+Eq+Dt8/nQ0tKC/Px8ZGdnx+xx48Hg4CBEIhGMRiPXpUTVV7/6VbzrXe9CQUEB16VQVMKhoZuiOJCeno4PfvCD+NrXvsZ1KVGl1WqRnZ2Nnp4erkuJKZFIhLq6OgwPD2N6ejrqj5eIgXstmUyGhoYGlJaWoq2tDTdv3qRd7ziRjKE7vHd7cXERjY2NKC4ujuvu9kZiHbxDoRBu3LgBhUJB/PLqezmdTgwNDaGqqirhvk62Y2xsDL/61a/w+c9/nutSKCoh0dBNURz5sz/7M1y8eBE3b97kupSoKi8vx+LiYlINVQMAlUqFgwcPorOzM6rHpyV64A5jGAZ5eXk4efIkXC4XLly4gMnJybg8+zyZKBQK+Hw++Hw+rkuJOq/Xi1u3bqGpqQm5ubk4evRownS3NxLL4H3nzh24XK6kG5wGAN3d3cjOziZ+Of2zzz6L06dPY+/evVyXQlEJiYZuiuKI0WjE008/jWeffZbrUqJKLBajvLw86YaqAYDBYEBJSQlaW1vh8Xgi/vFJCdxrhbveZWVl6O3txcWLF2E2m2n45ohQKIRYLCa62+33+9HX14c33ngDbrd7tbvN4yX+U6RYBO+JiQlMTEygvr4eQqEwKo8Rr5JleNr8/Dx+9rOf4Qtf+ALXpVBUwkr83ygUlcA+97nP4ZVXXsHQ0BDXpURVXl4ehEIh8de5keLiYqSkpKCtrS2iNx1IDNxhDMMgNzcXp0+fRm5uLjo6OnDt2jUsLS1xXVpSksvlRM5lCAaDGB4extmzZzE/P4+GhgbU19cndHd7I9EM3ouLi7h16xZqamqIPiZrI2uHp4nFYq7Liaqvf/3r2L9/Pw4fPsx1KRSVsGjopigOVVRU4Hd+53eI39vNMAyqqqowODhI5JP3B2EYBvv37wcAtLe3IxQK7fpjkhy41+Lz+SgsLMSZM2eQmpqKpqYmtLa2wm63c11aUiFtXzfLspicnMT58+cxPj6O/fv34+jRo0hNTeW6tKiJRvC22WxoaWlBZWUl0tPTI/IxE8ng4CCEQiHxw9NsNht++MMf0i43Re0SDd0UxbEvfOELeOmllzA7O8t1KVGVkpKSlEPVgJXwWF9fD6fTiVu3bu1qqXSyBO61hEIhysvLcebMGUgkEly8eBGdnZ1wu91cl5YUSAndLMvCZDLh4sWL6O3tRVlZGU6ePAmDwZAU+5AjGbxdLheam5tRWFiIvLy8yBSYQMLD0/bt20f81843vvENGI1GPPbYY1yXQlEJjYZuiuJYXV0d6uvr8fWvf53rUqIuWYeqASsTzRsaGjA3N4e+vr4dfYxkDNxrSSQSVFVV4dSpUwgGgzh37hxu376dFEO+uERC6F5aWsK1a9fQ2dm5unUhJyeH+MB0r0gEb6/Xi+bm5tWZFcmGZdmkGZ7m8Xjwve99D5///OeT7nuFoiKNhm6KigNf+MIX8MILL0R1ynU8EIvF2LNnD7q6upLySCipVIqGhgaMjY1hZGRkW++b7IF7LblcjpqaGhw9ehQ2mw1vvPEGBgYGEAgEuC6NSOE93Yk4zC68BLqpqQk6nQ5nzpxBYWFhUn//7CZ4BwIBXL9+HSqVivgjsjYzPT2N5eVl4oenAcB3vvMdKBQKPPXUU1yXQlEJj4ZuiooDp0+fRmlpKb761a9yXUrU5ebmQqlUJuUycwBQKpWor6/HnTt3tnyGNw3cG9NoNGhoaEBdXR1mZ2dx9uxZDA8PJ+UNnWiSy+UIBoNRmcAfLVarFR0dHbh06RKkUinOnDmDsrKypJuuvZmdBO9QKIS2tjYIBAIcOHAgKQO3x+PBrVu3sG/fPuKHp3k8HnzrW9/CF77wBfo7h6IigIZuiooDDMPgb/7mb/D973+f+L3dDMOguroaMzMzMJvNXJfDiZSUFNTW1qKzsxNzc3MPfFsauB8uLS0Nx48fR1VVFaanp/Haa6/h1q1bCb8kOl7w+XzIZLK4//dkWRazs7O4du0arly5Ah6Ph1OnTqGqqgoSiYTr8uLOdoI3y7Lo7OyE1+tN2p9DLMuiq6sL6enpyMzM5LqcqPubv/kbKBQKPPPMM1yXQlFEYNhEXC9GUYR69NFHkZmZiR/+8IdclxJ14+Pj6Ovrw6lTp5K2+zQxMYHu7m4cOXIEGo3mvtfTwL0zy8vLGBkZwczMDNLS0lBQUIC0tLSk6cz5/X68+uqrePzxxyP2vRXew5ufnx+RjxdJfr8f4+PjGB0dRSgUQkFBAYxGI0QiEdelJYTl5WU0NzejtLQUhYWF972eZVncvn0bs7OzOHbsWNLewJicnMTt27dx8uRJ4rvcFosFRUVF+P73v48nn3yS63Ioigg0dFNUHOns7MThw4dx8+ZNlJaWcl1OVLEsi+vXr0MsFuPAgQNcl8OZoaEhDA4O4siRI1CpVKsvp4F79zweD0ZHRzE2NgaxWIy8vDzk5OQQf5MnGqG7u7sbALB3796IfLxIsFqtGBsbw+TkJNRqNQoKCpCRkQEejy7i264HBe++vj6MjY3h6NGjSXcWd5jH48H58+dRXV2dFF3uT3/602hubsb169eT5mYlRUUbDd0UFWfe+973wuv14pe//CXXpUSd2+3G+fPncfDgQRgMBq7L4Ux/fz9GRkZWgzcN3JEVDAYxPT2NsbEx2Gw2ZGZmwmg0IiUlhcgnlNEI3aOjozCbzTh06FBEPt5O+f1+TE9PY3x8HHa7HVlZWcjPz99wpQi1PRsF73t/NiUjlmXR2toKPp+PmpoarsuJuunpaZSVleGVV15BY2Mj1+VQFDEEXBdAUdR6f/3Xf409e/agtbUVdXV1XJcTVVKpFJWVlejq6kJKSkrSLgctLS0Fy7JoampCfX09uru7aeCOID6fj9zcXOTm5sJms2F8fBwtLS0Qi8UwGo3Iyckhfrnobsnlcs72dLMsC4vFgvHxcUxNTUGhUMBoNCI7O5v4VQuxFN7j3dzcDGDlZlWyB24AmJqawvLyMk6dOsV1KTHx+c9/HkeOHKGBm6IijHa6KSoOffzjH0dvby/Onz/PdSlRR5eZrwjvmxwZGYFWq8Xhw4dp4I6iYDCImZkZjI+PY3l5Genp6TAYDNDr9Qm/ZzUanW6Xy4U33ngDb3/722OyfDsctE0mE2ZnZ+F2u5GdnQ2j0Ui72lG2vLyMq1evgmEYHDt2DGq1muuSOBNeVr5//35kZGRwXU7U9fX1obq6Gi0tLdi3bx/X5VAUUWinm6Li0Je+9CUUFBTgtddew2OPPcZ1OVEVnmZ+/vx5mEympF1mHggEsLi4CKlUCqfTCafTmdTdpWjj8/nIyclBTk4OHA7HagDv6uqCRqOBXq9HRkYGlEolkUvQt0sqlYLP58PpdEKpVEblMQKBABYWFmAymWAymRAMBqHX61FSUgKDwQCBgD5liYX5+fnVGysLCwtJG7rD08rDPwuSwZ//+Z/jXe96Fw3cFBUF9DcYRcUhvV6Pz3zmM/jc5z6HRx55hPjBQOFl5jdv3sSpU6eSbpl5eA+3SCTCkSNHMDQ0hKamJhw+fJgG7xhQKBQoKSlBSUkJPB4PzGYzTCYTBgcHIRKJYDAYYDAYoNPpiP9e3AzDMKtLzCMZutf+e8/Pz0MsFsNgMODgwYNITU1N2n9vroT3cB89ehShUGh1qflGU81Jl2zLyltaWvDaa6+ht7eX61Ioikh0eTlFxSmbzYb8/Hz8wz/8A973vvdxXU7UsSyLlpaW1WE1ydJd3GxoWvjJ7+HDh5O208S1YDCI+fn51VAYCATWLUOP15tD0VheDgBtbW3QaDQoLi7e8cdgWRZ2ux2zs7MwmUywWq3QaDSrNzboygJusCyL/v5+jI6OrtvD/bDjxEjlcrlw8eLFpFlWDgAnTpzA3r178Y//+I9cl0JRRKKhm6Li2Le+9S08//zz6O3tTYr9vR6PBxcvXkRZWRny8vK4LifqHjalfGBgAENDQ6ivr0dqaipHVVLA3T3G4QBus9mQkpICvV4PrVYLtVodN0O9ohW679y5A5/Ph+rq6i2/D8uycLlcsFqtq0vHfT4f0tLSiNlDn+hYlkVPTw+mp6c3XF2TbME7FArhypUr0Gg0SbPM+tVXX8XTTz+NkZERpKenc10ORRGJhm6KimNerxfFxcX47Gc/i0996lNclxMT8/PzaGlpwfHjx4leWr3VY8FGR0dx+/Zt1NTUJO1+93jkcrlgNpsxNzcHi8UCj8cDuVwOjUYDjUYDtVoNjUbDSRCPVuiemJjAxMQEjh49uuHrwwHbYrHAYrHAarXCYrEgEAhApVJBq9VCr9cjLS0tKW4iJoJQKISOjg5YLBY0NDRALpdv+HbJFLxv376Nubk5HD9+PCm+TkOhEA4ePIh3vOMd+MpXvsJ1ORRFLLqnm6LimFgsxte+9jV87nOfw0c+8pGk6AilpaWhqKgIbW1taGxsJHJ40nbO4c7Pz4dYLEZ7ezv27t0Lo9EYw0qpzchkMuTn5yM/Px/AyiqNcMhcXFzEyMgI3G73ahAPh3CugngkKBSK1WPD7g3Y4ZAdDtgajQYZGRkoLy+HSqVKivCSaPx+P9ra2uDz+XD06NEH/n659zgxUoO32WzG6OgoGhsbk+Zr9sUXX8Tk5CT+9//+31yXQlFEo51uiopzwWAQ+/btwzve8Q58/etf57qcmGBZFteuXYNMJiPuGLHtBO61FhYW0NLSguLiYhQXF9N9rwnA6/Xe1/UNB3G1Wg2VSgWJRLL6RywWQywW7/pzG6lOdzAYhMfjgdfrhcfjgcPhQG9vL1JTU2Gz2dYF7PCNBRqwE4PX68X169chEAhQV1e35a8TkjvebrcbFy9eRGVlJXJycrguJya8Xi/Ky8vxqU99KmlW01EUV2jopqgEcOHCBbz97W9HV1cXcU90NhN+ArRnzx7k5uZyXU5E7DRwh1mtVjQ3NyMrKwuVlZU0eCcgr9e7GsDtdvtqoPV4PPD7/WAYBmKxeF0QvzeYSyQSiEQi8Hi8Db8GNgvdLMuCZVkEg8HVx137+Gv/eL3eDeuZm5tDYWEhMjMzoVQqacBOQE6nE83NzdBoNNi/f/+2P4ckBu9QKISmpibI5XLs37+f63Ji5vOf/zx++ctf4tatWwm7AoeiEgUN3RSVIH73d38Xdrsdr776KtelxIzZbF5dZh6ts4FjZbeBO2y3T5ip+LU2DG8UgsP/7/P51r0fwzCrATz8x+fzQSAQrAbt8J8wHo+3aaBf+0ckEq0L9leuXEF+fj6ys7Nj9u9CRU74xl1mZib27t274xt3pAXv3t5ezMzMELulaSPDw8PYt28fXnnlFZw4cYLrciiKeDR0U1SCmJ6eRllZGX70ox/hiSee4LqcmCFhqE2kAnfYTpeGUmQIhULw+/0IhUKrYXrt//t8PjQ1NeHo0aOroXltMOfxeBAKhTsKXB0dHZDJZCgrK4vClVHRFOktKqQE72QZ3nmvxx9/HCqVCj/96U+5LoWikgKP6wIoitqarKwsfOlLX8JnP/tZeL1ersuJmfLycvD5fPT09HBdyo5EOnADKwP2Dh8+DB6Ph8uXL68Ot6KSQ7hLLZVKIZPJIJfLoVQqoVKpVge2AYBKpYJSqYRCoYBcLodUKt2we70da4epUYljbGwM169fR2VlJUpKSiKyNSU8XK2/vx/Dw8MRqDL2PB4Pbty4gcrKyqQK3C+//DKuXLmCv/u7v+O6FIpKGjR0U1QC+fSnPw2BQICvfvWrXJcSMzweDzU1NZiensb09DTX5WxLNAJ3mFAoRH19PfR6PS5fvoy5ubmIfWyK2gwN3YklFArh1q1b6O3txaFDhyJ++kEiB2+WZdHR0QGdTpdUp0J4vV585jOfwZe+9CVkZmZyXQ5FJQ0auikqgQiFQjz33HP4+7//e4yOjnJdTszIZDJUV1fj5s2bsNvtXJezJdEM3GE8Hg+VlZWorKxEa2srhoeHQXcMUdEUDt306yz++Xw+NDc3Y3FxEY2NjdDpdFF5nEQN3v39/XC5XNi3b19SDaX86le/CpFIhE9/+tNcl0JRSYWGbopKMKdOncLjjz+OP/mTP+G6lJjKzMxEfn4+Wlpa7hskFW9iEbjXys3NxeHDhzE4OIiuri6EQqGoPh6VvORy+erANyp+2Ww2XLp0CUKhEMeOHYNMJovq4yVa8J6ZmcHw8HDSzcQYHR3F3//93+O5555LquumqHhAQzdFJaBvfetbuHTpEn71q19xXUpMlZeXQ6lUor29PW6DZawDd1hKSgoaGxthsVhw7do1GoqoqODz+ZBKpXSJeRybnZ3FlStXkJOTg9ra2phN406U4G21WtHR0YEDBw4k1T5uAPiTP/kTvPWtb8XJkye5LoWikg4N3RSVgMJD1T7zmc8kVbhiGAYHDhyAx+PBnTt3uC7nPlwF7jCpVIqjR49CKpXi0qVLsFqtMX18KjnQfd3xiWVZDAwM4MaNG9i/fz/Kyspivmw63oO31+tdneCekZHBdTkx9fLLL+PSpUt0eBpFcYSGbopKUOGhas8++yzXpcRUeIDYxMQExsfHuS5nFdeBO0wgEODgwYPIy8vDlStXMD4+TvffUhFFQ3f88fv9aGtrw9jYGI4dO8bpgKx4Dd6hUAhtbW1ISUlBSUkJ1+XElNfrxWc/+1l8+ctfRlZWFtflUFRSoqGbohKUSCRKyqFqwMq+0traWnR3d2NpaYnrcuImcIcxDIOSkhLU1dWht7cXHR0d8Pv9nNZEkYOG7viytLSEixcvIhQKobGxEWq1muuS4i54syyLW7duIRAIoLq6OqkGpwErw9MEAgEdnkZRHKKhm6IS2KlTp/CWt7wFn/jEJ7guJebS0tJQUVGB1tZWuN1uzuqIt8C9Vnp6Ok6cOAGPx0OXm1MRQ0N3fGBZFkNDQ2hqakJ+fj7q6+shFou5LmtVPAXv0dFRmEwm1NfXx2yPe7ygw9MoKj7Q0E1RCS48VO3nP/8516XEXH5+PgwGA1paWhAIBGL++PEcuMMkEgkOHz6MnJwcXLlyBaOjo3S5ObUrcrkcLpcrbocZJoPw3uTR0VEcOXIERUVFcdm9jYfgPT8/jzt37qCurg5SqZSTGrj0kY98BI8//jhOnTrFdSkUldRo6KaoBJeVlYX/9//+Hz75yU9icXGR63JiimEYVFVVgc/n4+bNmzENk4kQuMMYhkFpaSkOHTqEgYEBtLe30+Xm1I7JZDIwDAOXy8V1KUlpYWEBFy9eBI/Hw4kTJ6DVarku6YG4DN5OpxNtbW3Yu3cvUlJSYvrY8eCf//mfcePGDfzTP/0T16VQVNKjoZuiCPDRj34U5eXl+OhHP8p1KTHH4/FQV1eHpaUlDAwMxOQxEylwr6XT6XDixAkEAgFcvHgRy8vLXJdEJSCGYSCXy+kS8xhjWRb9/f24fv06SkpKUFtbmzDLhbkI3n6/Hy0tLcjNzYXRaIzJY8aTyclJ/MVf/AWef/55pKenc10ORSU9GropigAMw+Df/u3f8Nvf/jYpl5mLxWLU19djaGgIk5OTUX2sRA3cYWKxGIcOHUJ+fj6uXbuG/v5+ukyY2ja6rzu2nE4nrl27hsnJSRw7dgz5+flxuZz8QWIZvMOTyqVSKSoqKqL6WPHqgx/8IE6dOoWnn36a61IoigIN3RRFDKPRiG984xv4xCc+kXTLzAFArVajtrYWXV1dmJubi8pjJHrgDmMYBkVFRTh69ChmZmZw+fJlOmSN2haFQgGn08l1GcRjWRYjIyO4cOECVCoVTpw4ERfTyXcqFsGbZVl0dHTA5/OhpqYGPF7yPdX97ne/i46ODjz//PNcl0JR1JuS7ycRRRHswx/+MPbs2YOPfOQjXJfCifT0dFRXV6O1tTXiS6dJCdxraTQaHD9+HHq9HleuXKFdb2rL6PLy6At3t4eHh1FfX4+qqioiJm9HM3izLIuenh5YLBY0NDQkzPL7SJqcnMTnPvc5fPe736XLyikqjtDQTVEEYRgG//qv/4rXXnsNL730EtflcCI7Oxvl5eW4fv16xEIBiYE7jM/no7y8HEeOHMH09DQuX74Mm83GdVlUnKPLy6NnbXdbqVTi5MmTSEtL47qsiIpW8B4cHMT09DQaGhri6vi0WAmFQvjDP/xDnD59Gu95z3u4LoeiqDVo6KYowoSXmX/yk5/EwsIC1+VworCwEEajEU1NTbs+w5vkwL2WVqtFY2Mj0tPTcfnyZdr1ph5IoVDA4/FwclQfyZxOJ5qamla72/v27SOiu72RSAfv8fFxDA4OoqGhAXK5PAIVJp7nn38eN2/epMvKKSoO0dBNUQQKLzP/8Ic/zHUpnCkvL0daWhquX7++4+OxkiVwh/H5fFRUVKzretO93tRGRCIRhEIh7XZHyNrutkKhwIkTJ4jrbm8kUsHbZDKhu7sb9fX1Cb3nfTfGx8fxxS9+Ed/97neT4muHohINDd0URaDwMvM33ngDP/nJT7guhxMMw2Dfvn2QSqVoaWlBMBjc1vsnW+Be696ud3d3Nz3Xm1qHYRg6TC1ClpaWcOnSpXXd7WTai7zb4L20tIT29nYcOHAAOp0uChXGv/Cy8jNnzuDd73431+VQFLUBGropilBGoxHf/OY38ad/+qdJu8ycx+OhpqYGoVAIN27cAMuyW3q/ZA7cYeGu94kTJ2C323Hu3DlMTExs+d+QIh8dprY7Xq8XnZ2daGpqQkZGBk6dOpW0HcqdBm+bzYbr169jz549yMzMjGKF8e25557DrVu38Nxzz3FdCkVRm6Chm6II9qEPfQiVlZX40Ic+xHUpnBEIBDh06BDsdju6uroeGhpp4F5PqVSioaEBe/fuRW9vL65evUqXnFMA6DC1nWJZFqOjozh37hx8Ph9OnjyJ0tLSpP9Zs93g7Xa70dzcjIKCAuTn58egwvg0NjaGL37xi/jnf/7npL1pQ1GJgIZuiiJYeJn52bNn8eMf/5jrcjgjEolw+PBhmM1m9Pb2bhq8aeDeGMMwyMrKwunTp5GSkoIrV67QJecUDd07EF5KPjQ0hAMHDqC+vj5ph35tZKvB2+PxoKmpCQaDAaWlpTGsML6El5U/+uijeOqpp7guh6KoB6Chm6IIl5ubi3/8x3/EJz7xCYyOjnJdDmekUikOHz6MiYkJ9Pf33/d6GrgfTiAQYM+ePWhsbKRLzqnV0E0//w+30VJyg8HAdVlx6WHB2+v1oqmpCRqNBlVVVWAYhoMq48Nf//Vfo6+vjy4rp6gEQEM3RSWBD3zgA3jLW96Cp59+OqmP+FEqlTh8+DDGxsbWBW8auLcnvOS8qqoKfX19uHTpEubm5mj4SjJyuRyBQABer5frUuKW3+9HX18fzp49S5eSb8NmwTscuFUqFfbv35/UgfvKlSv4P//n/+CnP/1p0g6Qo6hEQkM3RSUBhmHw3e9+FxaLBZ/97Ge5LodTKpUKhw8fxsjICAYGBmjg3iGGYZCZmYnTp08jOzsb7e3taGpqwtLSEtelUTEiEAggkUjoBPMNhEIhjIyM4OzZs5ifn8ehQ4foUvJtujd4+3w+NDc3Q6FQ4MCBA+DxkvcprMViwe///u/jL/7iL9DY2Mh1ORRFbQHD0tYERSWNmzdv4vDhw/jJT36CJ554gutyOGW1WnHt2jUIBAIolUoauHfJ7/djcHAQIyMjSE9PR3l5OZRKJddlJSW/349XX30Vjz/+eNSPnrp27Rqys7NhNBqj+jiJgmVZTE1Noa+vD3w+H+Xl5TAYDEndkd2t5eVlNDU1QSAQQKvVoqamJqkDdygUwjve8Q44nU6cPXuW/t6iqAQh4LoAiqJip7q6Gn/7t3+LD33oQzh48CCys7O5LokzMpkMEokEDocDRqORPnHZJaFQiIqKChQUFKC/vx8XL15ETk4OSktLIZVKuS6PihI6TG0Fy7KYm5vDnTt34Pf7UVZWhpycHBq2I0Aul6+uqNBqtUkduAHgW9/6Fq5fv47u7m76e4uiEgjtdFNUkmFZFk899RTMZjMuX76clL+01y4pLy0tRUtLCwoKCpJ6Cm6kORwO9Pb2wmw2Iz8/H4WFhZBIJFyXlRRi2ekeHh7GwsIC6uvro/o48YplWSwuLqKvrw82mw2lpaXIy8tLyp+r0eD1etHc3AyZTIbCwkK0tLSgtLQUhYWFXJfGidbWVpw4cQL//d//jUcffZTrciiK2obkvl1IUUkofIzY1NQUvvCFL3BdTszdu4c7JSUFR44cwcjICPr6+ugwsAhRKBSora3F0aNHYbPZcPbsWXR1dcHlcnFdGhVBydrpZlkWJpMJV69eRUtLC1JTU/HII4+gsLCQBu4ICQ9Nk8vlqKmpQWpq6rbO8SaNzWbD7/3e7+FTn/oUDdwUlYDo8nKKSkIajQY///nPceLECZw8eRKPPfYY1yXFxGZD01QqFY4cOYKmpiawLIuysjK6LDRCNBoNGhoaYLVaMTg4iHPnziEzMxPFxcVQqVRcl0ftkkKhgNPpBMuySfE9EwqFMDMzg8HBQXi9XhQWFuLQoUNRX1GQbMLncKtUqnVD08LD1ZqbmwEgqTreH/zgB5GWloZnn32W61IoitoBGropKknV1dXh2WefxR/+4R+is7MTer2e65Ki6mFTysPB+9q1awgEAqisrEyKEBErarUaNTU1cDgcGBoawqVLl5Ceno7i4mKkpKRwXR61Q+H9+i6Xi+jJ3MFgEBMTExgaGgIAFBUVITc3l3a1o8DlcqGpqQlarRb79++/bw93Mgbvf/qnf8K5c+fQ1dUFgYA+daeoRET3dFNUEmNZFm9729vgdrtx9uxZYgfUbOdYMKfTiebm5k2f8FGR4Xa7MTw8jLGxMWi1WhQXFyMtLY3e6IiAWO7pBoBz586hsrKSyBt3fr8fY2NjGB4ehkgkQnFxMbKysujPhSix2Wxobm5GRkYG9u7d+8CfB8vLy2hubiZ+j3dXVxeOHDmCF198Ee94xzu4LoeiqB2ioZuiktzCwgKqqqrw4Q9/GH/1V3/FdTkRt5NzuD0eD65fvw6RSITa2lq6dDSKfD4fRkdHMTIyArFYjPz8fOTk5NBuzi7EOnS3tLRAp9MRFXzsdjtGR0cxMTEBlUqF4uJievRXlC0uLqKlpQWFhYUoKSnZ0r816cHb5XLh4MGDeOyxx/Dtb3+b63IoitoFGropisKVK1fw2GOP4Te/+Q0aGxu5LididhK4175va2srAoEADh06BLFYHMVKqWAwiKmpKYyOjsLpdMJoNCIvLw8KhYLr0hJOrEP37du3EQgEsG/fvqg/VjSxLAuz2YyRkREsLi4iMzMTBQUF0Gq1XJdGvNnZWdy4cQOVlZXIy8vb1vuSHLzf9773obe3F83NzfR3EEUlONpKoCgKx44dw1/+5V/ive99L1pbW5GTk8N1Sbu2m8ANrJw7fejQIXR0dODKlStoaGgges8q1/h8PoxGI3Jzc7G8vIyRkRFcuHABqampyMvLg8FgoEt645RCocDU1BTXZeyY2+3GxMQExsfHwbIs8vLycPDgQRpyYmRsbAw9PT04ePAgMjIytv3+pO7x/ta3voVf//rXuHHjBv1apCgC0E43RVEAVro8733vezE4OIimpqaEPlN5t4F7LZZl0d3djZmZGTQ0NECtVkewUupBPB7PahgKBoOroZze/HiwWHe6FxYW0NHRkVDHGIVCIczPz2N8fBwmkwlpaWnIy8uDXq+nN3dihGVZDAwMYHh4GHV1ddDpdLv6eCR1vF977TU8+eSTePnll/HII49wXQ5FURFAQzdFUatcLheOHDmCwsJCvPTSSwn55DOSgTuMZVkMDg5icHAQ9fX1u35ySG0Py7KYm5vD2NgYzGYzNBoNcnJykJmZSTtAG4h16PZ4PHjttdfw1re+Na734rMsC4vFgqmpKUxPTwMAcnNzkZeXB5lMxnF1ySVaNzNJCN5DQ0M4dOgQvvjFL+LTn/401+VQFBUhNHRTFLXO5OQkDh48iI997GMJN1gtGoF7rfHxcXR3d+PAgQPIzMyM6Memtsbr9WJmZgZTU1NYXl5Geno6cnJyoNfr4zrwxVKsQzfLsnj11Vdx9OjRuFwJ4nQ6MTU1hampKXg8HmRkZCA7O5tOy+dIMBhER0cHrFYrDh8+HPEbHokcvB0OB+rq6nDo0CH84Ac/oF+fFEUQ+gyFoqh1cnJy8PLLL+P06dPYu3cvnnrqKa5L2pJoB24AMBqNEIlEuHHjBrxeL/Lz8yP+GNSDhSec5+fnr4apvr4+dHZ2IjMzk4YpDjAMA4VCAYfDETeh+96bM3q9HmVlZfTmDMfWDqg8duxYVFaqJOoe71AohKeffhpqtRrPP/88/RlGUYShv3koirpPQ0MDvvOd7+CDH/wgSkpKsHfvXq5LeqBYBO6wjIwMNDQ0oLW1FXa7HZWVlQm5DJ8EcrkcpaWlKCkpgdVqxdTUFDo6OgAABoMBBoMBOp2OhqwYCIduLrlcLphMJphMJiwsLECr1SI7Oxt1dXV0G0IcsNvtaGlpgUKhQH19fVS/LxMxeP/5n/85urq60NHRQb9eKYpAdHk5RVGb+tM//VO8/PLLaGtrQ2pqKtflbCiWgXstl8uFlpaW1bO8RSJRTB6XejCWZbGwsLAavrxeL9LS0mAwGKDX6xN6QOBWxXp5OQD09/fD6XTiwIEDMXk84O4e7fDn2m63IzU1dfWGCx24Fz/MZjPa29uRl5eHioqKmHVxE2Wp+QsvvICPfvSjuHLlSky/hyiKih0auimK2lQgEMBb3vIWeL1enD9/Pu46hlwF7rBAILC6N7G+vh4qlSqmj089GMuysNvtq6HMYrFAo9FAr9cjIyMDSqWSyCWcXITuqakpjIyM4Pjx41F9nGAwiPn5+dXPaTAYhF6vh8FgQHp6Or35FWdYlsXw8DD6+vqwb98+To6jjPfg3draitOnT+MHP/gBnn76aa7LoSgqSmjopijqgZaXl1FbW4tTp07he9/7HtflrOI6cIexLIv+/n4MDw/jwIEDOzpnlooNr9e7Gtbm5+chFAqh0+lW/8hkMiJCOBeh22KxoKmpCW95y1si+m8YDAZhsViwsLCAhYUFLC0tQSKRrHazU1NT6faOOBUMBtHV1YX5+XnU1dVBq9VyVku8Bm+TyYTa2lp84AMfwNe+9jWuy6EoKoriq21FUVTc0Wq1eOWVV1BfX4+qqir8yZ/8CdclxU3gBlaGSJWVlUGlUuHGjRsoKSlBcXExEeGNNGKxGEajEUajEcFgEEtLS1hYWMDk5CS6urogFouJDOGxIJfL4ff74fP5drUf9d6Qvby8DIFAAJ1Oh8zMTFRVVUGhUNDPS5zzeDxobW0Fy7I4fvw4pFIpp/XE4x5vn8+Hd7zjHThw4AC++tWvcl0ORVFRRkM3RVEPVVZWhp/+9Kd46qmnUFFRgVOnTnFWSzwF7rUyMzMhl8vR0tICm82G6urquFuOT93F5/ORlpaGtLQ0ACtbBZaXl9eFcIlEgtTUVKSkpECtVkOtVsfN11u8EQqFkEgkcDqd2wrdHo8HFosFFosFi4uLNGQTYHl5Ga2trdDpdKiuro6b75l4C95/+If/f3t3HhZV2bgP/B5mWGeAYRtQdhXFBUEFS0QWJTQ3zC3Tr4ppv96ycmk12zTfFi3TtC7L9zVTi7RyyTTcUFEUV1QUWVRAdhUEHGSb5fdHX+YriRsyHIa5P9c1lzgcztyDOMN9nuc8Zxpu376Nn376ibM1iIwAp5cT0UNbsmQJlixZgsTERPj4+LT447fWwn2nmpoaHD9+HGq1Gk888YTgIzzUNHeW8PpSWFdXB2tra9ja2kIul0Mul8PGxqbVHVwRYno5ACQmJsLd3R0eHh6Nfr6qqgrl5eW672dZWRlqamogk8kgl8thb28PR0dHlmwDlpeXhzNnzsDX1xcdO3Zslf+OrWGq+SeffIIvvvgCp06d4qUniYwESzcRPTStVosXXngB8fHxOHLkCFxcXFrssQ2hcNfTaDQ4e/YsiouLERQU1GpXfqeHp9VqUVVVhbKysgbFsa6uTlcara2tIZPJIJVKIZVKBfsZFap0nzlzBmZmZujUqROUSqXuVlFRoSvYjR20aMmMpB8ajQZpaWnIyspCYGAgnJ2dhY50X0IW7zVr1uDVV1/Frl27EBIS0qKPTUTCYekmokeiUqkwevRoXL16FQkJCS2yYrchFe56Wq0WWVlZSE1N5XnebZRWq9VNjy4vL8etW7dQWVkJpVIJtVoNKysrXQmXyWS6jy0tLfU6nVTfpVur1UKlUuH27dsNynVJSQmqq6uh1Wphbm6ue87W1taQy+WwtbVtdbMC6PFVVVXh1KlTqK2tRVBQEKytrYWO9FCEKN5//PEHJkyYgNjYWERHR7fIYxJR68DSTUSPrKqqCpGRkRCLxdi7d69eL9NjiIX7TmVlZTh58iSsrKzQu3dvo7hOtLGrL+P1ZbS+iCuVSty+fRtarRZmZmawsLCAubk5LCws7rqZm5vD1NQUEonkkQt6U0q3VquFWq2GSqVCbW0tqqurUV1djZqaGt3Hd/5drVZDIpHoirVMJoNKpUJBQQHCw8M5em0kioqKkJycDBcXF/j5+RncQZWWLN5Hjx7F4MGD8eWXX+KFF17Q62MRUevD0k1ETXLz5k2EhISgc+fO+P333/UycmfohbteXV0dzp49ixs3bqBPnz66xbvI+Gg0Gl1xvVehrf+4/u3ZxMQEEokEYrEYEonkrptIJNLdgL8LdE5ODjw8PGBiYgKtVtugVKvVatTV1en+Xn+rJxaLGz0I8M/76h+7nlKpxP79+zF8+HDO6mjjNBoNUlNTkZOTg549ewpy/e3m0hLF++LFiwgNDcWsWbPw3nvv6eUxiKh1Y+kmoibLz8/Hk08+iWHDhmHVqlXNuu+2Urjr1Reh8+fPo2PHjujSpQtXrKV7urMk//P2z/vrS/Wd5TorKwsdOnSAWCzWFfL68n6/m1gsbvL/NY1Ggz///BORkZGwsrJq5u8ItRaVlZU4efIkNBoNgoKCIJPJhI702PRZvPPz8xEcHIwRI0ZgxYoVPCBFZKQMax4QEbUqrq6u2LNnD4KDg6FQKJrtWqNtrXADf1/P28vLC/b29jhx4gRKSkrQp08frm5OjRKJRLoi/Kjq6uqQlZUFX1/fFp3mbWJiAisrKyiVSpbuNqqgoADJyclwc3NDjx492sRrM6C/y4mVlZVh8ODB6Nu3L5YvX87CTWTEOMxCRI/F19cXf/31F5YuXYpvvvnmsffXFgv3nWxsbBAWFgapVIoDBw6guLhY6EhEzUYmk0GpVAodg5qZWq3G2bNnkZycjF69esHf37/NvTbXF+/09HRcvnz5sfdXU1ODoUOHwsnJCRs2bGhz3y8iejQc6Saix/bEE0/gt99+w+jRo6FQKDBu3Lgm7aetF+56EokEvXr1Qm5uLk6cOAFvb2907dqV083J4LF0tz1KpRInTpyAiYkJwsPDIZVKhY6kN8014q1WqzFmzBjcvn0bcXFxMDc3b86YRGSAWLqJqFkMGTIE3333HaZNmwYnJyeEh4c/0tcbS+G+k7u7O+RyOU6ePInr16+jd+/eLXIJNiJ9kclkKCgoEDoGNQOtVovs7GxcuHABXl5e6Natm1EcGGyO4j19+nSkpqbi6NGjfE0nIgAs3UTUjCZPnozi4mKMGTMG8fHx8Pf3f6ivM8bCXc/a2hqhoaFIT09HQkICfHx84OPjYxS/3FLbI5VKUVlZKXQMekyVlZU4c+YMKisr8cQTTxjdFRcep3i/88472LFjB5KSkuDs7KyviERkYFi6iahZvfHGGygqKsKwYcNw6NAheHt733d7Yy7c9cRiMbp164Z27drh9OnTKCoqQq9evThCQgZHJpPh9u3bUKvVRvl/2dDdObrt7u6Ovn37Gu0115tSvJcuXYpvv/0WBw8e1Pt1v4nIsHAohYia3eLFixEZGYmBAwciJyfnntuxcDdkZ2eH8PBwODo6IiEhARkZGdBoNELHInpoFhYWEIvFHO02QLdv38aRI0eQmZmJvn37wt/f32gLd71HWVxt5cqVeP/997F161b06tWrhRISkaFg6SaiZmdiYoL//ve/6NevHyIiIpCbm3vXNizcjROLxejevTuCg4ORm5uLQ4cOoaKiQuhYRA9FJBJxMTUDo9VqkZWVhf3790MqlSIiIgIKhULoWK3GwxTvVatW4e2338aWLVswcODAFk5IRIaApZuI9EIsFmPdunXo27cvBg4ciPz8fN3nWLgfzN7enqPeZJBYug3HnaPbQUFBCAgIMPrR7cbcr3ivXr0ac+fOxa+//oqoqCiBEhJRa8fSTUR6I5FIsGHDBvTs2RMREREoKipi4X4EHPUmQySTyTi9vJWrP3ebo9sPr7Hi/cMPP2DWrFnYuHEjhg4dKnBCImrNWLqJSK8kEgl++eUXdOvWDeHh4YiLi2PhfkT/HPW+ePEiVCqV0LGIGiWVSjnS3YpVVFQgMTER6enpHN1+RHcW7+XLl2PmzJn46aefMGLECKGjEVErx9JNRHpnamqKTZs2oVOnTnj99dfh4eHBwv2I6ke9Q0JCcP36dcTHx6OwsBBarVboaEQNcHp561RXV4eUlBQcPHgQdnZ2GDhwIEe3m8DOzg55eXl45513sG7dOjzzzDNCRyIiA8DSTUQtwszMDJs3b4avry8GDhyIwsJCoSMZJLlcjgEDBqBLly44c+YMkpKSWHCoVZHJZKitrUVtba3QUQh/TyXPzc3Fvn37UFFRgbCwMHTv3p2j2020Zs0azJ49Gxs2bMDYsWOFjkNEBoKlm4hajJmZGX7//Xd0794doaGhyMvLEzqSQRKJRPD09MSgQYNgZWWFAwcOcMo5tRqmpqYwNzfnwaBWoH4qeWpqKvz8/BAcHAwbGxuhYxms1atX45VXXkFsbCzGjBkjdBwiMiAs3UTUokxNTbFx40YEBAQgLCzsvtfxpvszMzODv79/gynnBQUFnHJOguMUc2E1NpXc1dUVIpFI6GgGa9WqVZg1axY2bdqE6OhooeMQkYFh6SaiFmdqaorY2Fj07dsX4eHhyMrKEjqSQbtzyvnZs2c55ZwEJ5VKuYK5ADiVXD9WrFiBuXPn4rfffsPw4cOFjkNEBoilm4gEUX85sZCQEISHhyMtLU3oSAatsSnnqampqKurEzoaGSGOdLe8mzdvciq5HixZsgTvvPMOtm7dysuCEVGTsXQTGTm1Wo3Vq1cjLCwM9vb2MDU1hUKhQM+ePTFjxgz88ccfAIAvv/wSIpEI77zzTqP7+X//7/9BJBKhU6dOjX5+9+7dEIlEiIqK0t0nFouxdu1aDBs2DKGhoUhKSmr+J2hk7pxyfvPmTezZsweXLl2CWq0WOhoZEZbulqNUKnHixAkkJibC3t6eU8mbiUajweuvv45FixZhx44dDd67GvOw76UAcODAAYhEovve5HK5np8hEbUkidABiEg4arUaw4cPR1xcHORyOYYNGwY3NzeUlpbi0qVLWL9+PdLS0jBy5EgMGjQIALBv375G9xUfHw+RSITLly8jJycHnp6ed30egG4/9cRiMb755hu4uLggKioKsbGxGDZsmB6erXGRy+UIDg7GtWvXkJqaiitXrqBLly7w8PDgL+OkdzKZDJWVldBqtfx505Oqqiqkp6cjNzcX7u7uGDRoECwtLYWO1Sao1WpMnToVe/bsQUJCAvz9/R+4/cO+l97J09MTMTExje7TwsKiuZ4OEbUCLN1ERiw2NhZxcXHw9/fHwYMHYWtr2+DzN2/exKlTpwAA/v7+cHBwwOnTp1FWVtbgKHxubi4uX76McePG4ddff0V8fDymTZvWYF/3Kt3A31OjP/jgAzg7O2PcuHH49ttv7/mLCD08kUgEZ2dnKBQK5Ofn4+LFi7h8+TK6du0KFxcXliHSGysrK6jValRXV7MINrO6ujpkZmbiypUrcHZ2Rnh4OKytrYWO1WZUV1dj1KhRyMzMRFJSEry9vR/4NY/yXnonLy8vfPTRR80VnYhaMU4vJzJiiYmJAICYmJi7fkkAADs7O0RGRgL4u8BFRERAo9Hg4MGDDbarH/2eM2cO7OzsdAW7Xnl5OU6fPg25XI7evXvfM8+LL76In376CTNnzsTnn3/+WM+N/o9IJIKbmxsGDRoELy8vnD17FocPH0ZJSYnQ0aiNEovFkEqlnGLejNRqNTIzM7Fnzx7cvHkT/fv3R1BQEAt3MyotLUVYWBiuXbuGo0ePPlThBh7tvZSIjBNLN5ERc3JyAgBkZGQ81PYDBw4EcPcU83379sHa2hpBQUEIDQ29q3QfOHAAarUaERERMDG5/8vOM888g7/++guffvop5syZA41G87BPhx7AxMQEHTp0QGRkJBQKBZKSkpCUlITy8nKho1EbxNLdPDQaDXJycrB3717k5+cjMDAQwcHBsLOzEzpam5Kbm4v+/fvD2toaBw8ehEKheOivfdT3UiIyPpxeTmTExowZg88++wyrVq1CRUUFoqOjERgYeM+j+/VTw/9Zqvfv348BAwZAIpEgIiIC27ZtQ1paGnx9fRts39jU8saEhoYiISEBUVFRKC4uxvr16yEWi5v6NOkfJBIJunTpAi8vL2RkZCAhIQHt27eHj48PVzumZsPF1B6PRqNBQUEB0tPTodVq0b17dy6Qpifnz5/H0KFD0b9/f/z4448wMzN7pK9/1PfSetnZ2fecXu7r64sJEyY8Ug4iar1EWq1WK3QIIhLOb7/9htdeew2FhYW6+xwcHBAWFobp06ffdYkUd3d35OXloaioCM7OzkhPT4evry+WLFmCN954A+fOnYO/vz+++eYbvPzyywAAPz8/nD9/HhcvXtQV8YeRnZ2Np556Ct7e3ti6dSusrKya50lTA7dv30ZGRgZyc3OhUCjQuXNnjqIZsLq6OuzcuRNDhw4V9PrMWVlZKCoqQr9+/QTLYIjUajVyc3ORmZkJAOjUqRM8PT0fOEuImubQoUN45plnMGnSJHz11VdN/j4/ynvpgQMHEBERcd/9RUdHY+vWrU3KQkStD1/BiYzc2LFjkZOTg127duH999/H8OHDoVarsXnzZgwbNgzTp0/Hncfm6qeY79+/H8D/jWLX/wLh5+cHR0dH3f3Xrl3DhQsX0K5du0cq3MDfi8wcOXIEpaWlCA8P5znIemJlZYWAgABERkZCKpUiMTERiYmJuHbtGnhclpqqfgVzejj1C6Tt2bMHV65cga+vLwYNGgRvb28Wbj3Ztm0bhg4ditdffx3Lli17rO/zo76XAkBYWBi0Wm2jNxZuoraFr+JEBFNTU0RFRWHhwoXYvn07bty4gY0bN0IqlWLNmjUNri/6z0uH7du3D3K5HL169QLw96JdoaGh2L9/P7RaLeLj46HVah96avk/OTk54cCBA5DL5QgJCUFOTs5jPlu6F0tLS/To0QNRUVFwcHDAyZMnkZCQgIKCApZvemT1pZvrMtxfTU0NLl68iD179qCwsBD+/v6IiIiAu7s7y7Yeff/993juuefw9ddfY968ec0ybf9R3kuJyLjw1ZyI7iIWizF+/HjMmTMHQMOF0+48r1ur1eLAgQMICwtr8MthREQESktLcebMmUc+n7sxMpkMf/75J3r16oWQkBCcPn26yfuiBzMzM4Ovry+ioqLg5uaGlJQUxMfH4+rVqyxQ9NAsLCwgFos52n0PVVVVSElJ0a1G3rdvXwwYMADt2rXjedt6pNFo8NFHH2HOnDnYtGnTXZe3bE73ey8lIuPChdSI6J7qL0Vz5yinq6srOnfujIyMDGzbtg0lJSV3nZtW//f4+PhmKd3A30Vww4YNePfddxEeHo7Vq1fj2Weffax90v1JJBJ07NgRXl5eyMvLQ0ZGBtLS0tCpUyd4eHhAIuFbCN2bSCTSrWDOy1r9n1u3buHSpUvIy8uDs7MzQkJCIJfLhY5lFKqrqzFlyhTs378fe/fubbH1Bhp7LyUi48LfmIiMWGxsLBwdHTFo0KC7pjEWFRVh9erVAP5eTfxOAwcOREZGBj744AMAuKt0d+/eHQqFAj/++CMuX74MHx8fuLu7P3ZeExMTfPbZZ/Dz88Pzzz+Ps2fPYtGiRZyCqWdisRienp7w8PBAQUEBMjMzkZaWBg8PD3h7e0MqlQodkVoprmD+N61Wi+LiYly5cgUlJSVwdXVFeHg4D0a0oLy8PIwcORIajQanTp2Ch4dHs+27qe+lRGQ8WLqJjNixY8ewfPlyuLi4ICQkRHd5k6ysLOzYsQNVVVWIjo7G2LFjG3zdoEGDsGrVKqSkpMDBwQF+fn537Ts8PBybNm3Sbd+cJk2ahM6dO2PkyJE4f/48YmNjWfxagEgkgqurK9q3b4/S0lJkZWUhPj4eTk5O8Pb2hkKh4LRYasDYS3dtbS2uXr2KrKwsaDQaeHl5oXfv3rCwsBA6mlFJTEzEuHHjdJcEa+4rYTT1vfR+lwwDgNmzZ3MWBFEbwdJNZMRef/11+Pj4YO/evTh37hx27dqF6upqODg4IDw8HBMnTsTEiRPvKlIREREQiUTQarUIDw9vtGhFREToSnf9iufNKSgoCKdOnUJ0dDSefPJJ/PHHHw+8Jio1D5FIBAcHBzg4OKCqqgo5OTlITk6GRCKBl5cXPDw8Hvk6t9Q2SaVSo7zqwM2bN5GdnY38/HzI5XJ069YN7dq146wcAfznP//BrFmzMG/ePMyfP18vBwab+l6ak5ODBQsW3HO/MTExLN1EbQSv001EBq26uhozZszAnj17EBsbq5eCTw+m0WhQUFCA7Oxs3Lx5E+3bt4eXlxfs7e05+t3CWst1ugGgtLQUx48fx5AhQwTN0RJUKhXy8vKQnZ0NpVIJd3d3eHl5wdbWVuhoRkmtVmPOnDn44YcfsH79eowaNUroSERkxDjSTUQGzcLCAuvXr8cXX3yB4cOHY8mSJZg5c6bQsYyOiYkJ3Nzc4Obmhlu3biE7OxvHjh2DhYUFvLy84OrqCnNzc6FjUguTyWSoqalBXV2d4AcA9EGr1aKsrAxXr15FXl4epFKp7ue9LT5fQ1FeXo6xY8ciIyMDR44cafQUKCKilsTSTUQGTyQS4c0330T37t3x3HPPISUlBd988w3EYrHQ0YyStbU1/Pz80LVrVxQUFCAnJwfnz5+HQqGAm5sbXFxcuPK5kTAzM4OZmRmUSiXs7OyEjtNsKisrkZeXh7y8PFRXV6N9+/YIDg6GXC7nzA6BpaWlYeTIkXBxccGpU6fg6OgodCQiIk4vJ6K2JS0tDcOHD4erqys2b94MBwcHoSMRGpaUqqoqtG/fHm5ubnBycmJJaWataXo5ABw6dAheXl7NcgUDIdXU1KCgoAC5ubkoKyuDs7Oz7iASD/C1Djt27MDkyZPx7LPP4uuvv24VP/9ERABLNxG1QTdv3sS4ceOQlZWFrVu3cmphK6LValFeXq4r4AB009JtbW1ZwJtBayvdycnJsLS0hK+vr9BRHplKpUJRURHy8vJw7do12NnZwc3NDa6urlwssJX5/PPPsWDBAnzxxRd4+eWXhY5DRNQA5/cRUZtjZ2eHuLg4vPHGGwgJCcGyZcswbdo0oWMR/j4VQC6XQy6Xo3v37rh+/Try8vJw+PBhWFpa6go4LwHXdkilUlRUVAgd46FpNBrcuHEDeXl5KCgo0P1c+vn58eeyFaqoqMC0adOwf/9+7Ny5E+Hh4UJHIiK6C0s3EbVJEokEy5YtQ79+/fDCCy8gPj4e3333XbNfn5WaTiQSQaFQQKFQoGfPniguLkZubi7S09Mhk8ng4uICFxcX2NnZcQTcgMlkMhQUFAgd477q6upw7do1FBUVobi4WLcwYEhICGdgtGLHjx/Hc889B2dnZ5w5cwYeHh5CRyIiahRLNxG1ac8++ywCAwMxbtw49OnTB7/88gv8/f2FjkX/IJFI4OrqCldX1wYFKCkpCSYmJnB2doaLiwucnJy4CJuBkclkUCqV0Gq1raq8VlZWoqioCEVFRSgpKdEd6HnyySd5oKeV02g0+PLLL/Hhhx9i9uzZWLhwIV8XiKhV4ysUEbV5HTt2xNGjR/H2228jJCQEixcvxksvvSR0LLoHU1NTXQHXaDQoLS1FUVERLly4gKqqKjg5OcHFxQXOzs6wtLQUOi49gFQqhVqtRnV1taD/XlqtFjdv3tQVbaVSCQcHB7i4uCAgIIBTxw1EaWkpJk+ejOPHj2Pr1q2IiooSOhIR0QOxdBORUTA3N8eyZcsQERGBmJgYxMfH44cffoBMJhM6Gt2HiYkJHB0d4ejoiO7du0OpVKKoqAi5ubk4d+4cbG1t4ezsDCcnJ8jlcq4i3QqJxWJYWVmhsrKyxUt3dXU1SkpKcO3aNRQXF0Oj0cDZ2RldunSBQqFoFQvN0cM7dOgQJk2ahI4dO+LcuXNo166d0JGIiB4KSzcRGZXo6GicPXsWzz77LHr16oXY2FgEBgYKHYsegkgkgrW1NaytreHj44OamhoUFxejuLgY2dnZqKurg729va6ks4S3HlKpFEqlUu/XTK4v2Tdu3MCNGzegVCpha2sLR0dHBAYGwt7eHiYmJnrNQM1Po9Fg0aJF+OyzzzBv3jy8++67/L9NRAaFpZuIjI6HhwcSEhLwwQcfICwsDB9//DHmzp0rdCx6RObm5vDw8ICHhwe0Wi2USqWubGVlZUGlUsHOzo4lvBWoP6+7ud2rZDs4OKBbt25wcHDgpb0M3PXr1/Hcc8/hwoULiIuLQ2hoqNCRiIgeGUs3ERklU1NTfPrppwgPD8ekSZOwf/9+rF+/HnK5XOho1AR3joJ7e3tDq9Xi1q1bukJ25coVqNVqXQm3s7ODra0tzM3NhY5uFGQyGa5du/ZY+6g/sFJWVobS0lJdybaxsYGjoyNLdhu0e/duTJs2DT179kRKSoreZ0oQEekLSzcRGbXBgwcjJSUFzz33HAICArBhwwaEhIQIHYsek0gkgo2NDWxsbBot4VevXsXt27dhaWkJuVwOW1tb3fXDWcSbn0wmw5UrVx56+/p/r/LycpSVlen+1Gq1sLW1hZ2dHUt2G6ZWq/Hee+9h+fLlWLhwIebOncvTAojIoLF0E5HRa9euHfbt24dFixYhKioKM2fOxL///W/+Mt+G/LOEA0BtbW2DUpebm6tb7OvOEs4i/vhkMhlu374NjUZzV3mqL9h3luvy8nIAgI2NDeRyOdzd3eHn5wdra2uWrzYuLS0NU6dORWFhIfbv348nnnhC6EhERI+NpZuICH+vsPzhhx9i8ODBmDJlCuLi4rB27Vr06dNH6GikJ2ZmZnBycoKTk5Puvrq6ugblr76Im5ubQyqVQiaTQSaT6T6WSqU8T/whWFhYAAAKCgqgVqtRWVkJpVIJpVKJyspKiEQi2NrawtbWFp6enpDL5ZDJZCzYRkSj0eCzzz7DJ598ggkTJmD37t2wtbUVOhYRUbMQabVardAhiIhak6qqKrz//vv49ttv8eqrr+Lf//43JBIeozRWdXV1uoJYXxLrP1ar1bCysrqrkEulUlhYWAjyc1NXV4edO3di6NChLXpJLK1Wi9raWlRVVTX4HtV/z+rq6mBqagpbW9u7DlzIZDKIRKIWy0qtS3p6OqZOnYrc3FysWbMGgwcPFjoSEVGzYukmIrqHo0ePYsqUKbC0tMQPP/zAUW9qQKvVorq6+q5R2/o/tVotJBIJLCwsGtzMzc3v+ntzluPmLt1arRY1NTWoqalBdXX1Xbf6+2tqaqDRaGBqatrgIET97eLFi3B0dESnTp2a4VlSW6DRaPD555/jk08+wfjx47F06VKObhNRm8ShGyKie+jXrx/OnTuH9957DwMGDMBrr72GRYsWcdSbAPx9nrilpSUsLS3vWlW5ftT3zlJafystLW1wn0ajgVgshpmZGSQSCSQSCcRise7je93EYjFEIpFuhLj+Y7VaDQAoKSmBWCxG/bF1rVYLjUYDlUp1102tVjd6v0qlQm1tLbRaLUxNTe86cODo6HjXfff6/2FjY6OXy4aRYcrMzMTUqVORk5ODX3/9FUOGDBE6EhGR3nCkm4joISQmJmLq1KmwsrLC2rVr0bt3b6EjURug1WpRV1eH6upq1NXVPVIhVqvV0Gq1ulv9/rRaLaqqqmBlZXVXKTcxMWm0vN+v3Jubm8Pc3Pyxz13PyclBXl4e+vfv/9jfNzJcGo0GX3zxBT7++GOMHTsWy5Yt4+g2EbV5HK4hInoI/fv3x7lz5zB//nyEhIRg1qxZ+PjjjznqTY9FJBLBzMysWVfKr59eHh4e3qLndD+ItbU1R7qNXGZmJmJiYpCVlYVNmzbh6aefFjoSEVGL4LKgREQPycrKCl999RV2796NTZs2oU+fPkhOThY6FpFBkEqluhF9Mi4ajQZLlixBnz594OPjg9TUVBZuIjIqLN1ERI8oJCQEKSkpiIiIQP/+/fHmm2+iurpa6FhErZqZmRlMTU1RWVkpdBRqQefPn8eAAQOwdOlS/PLLL1i7di3kcrnQsYiIWhRLNxFRE1hZWWHZsmXYvXs3du7cia5du+L3338XOhZRqyUSiSCTyTjF3EgolUq88sorCAoKQvfu3ZGamoqhQ4cKHYuISBAs3UREjyEkJARnzpzBa6+9hmnTpiEqKgqZmZlCxyJqlWQyGUe6jcC6devg6+uLpKQkHDp0CN9//z3s7OyEjkVEJBiWbiKix2Rqaoo5c+YgPT0dTk5OCAgIwFtvvcUp50T/IJVKOdLdhqWkpGDAgAGYPXs2PvroIxw/fhyBgYFCxyIiEhxLNxFRM2nXrh1++ukn/PXXX7op57/++qvQsYhaDU4vb5uUSiVmzpyJvn37onv37sjMzMSMGTNgYsJfM4mIAJZuIqJmFxoaijNnzmDWrFmYPn06p5wT/a/60l1/XXEybBqNBmvXrkWXLl1w/PhxHDp0CKtWrYKDg4PQ0YiIWhWWbiIiPZBIJJg9ezYyMjKgUCgQEBDAVc7J6EmlUqhUKtTU1AgdhR5TSkoKQkNDMXfuXCxYsADHjh3jVHIiontg6SYi0iMXFxds2LABcXFx+Ouvv+Dr68sp52S0JBIJLC0tOcXcgFVUVODll19G37590aNHD1y6dIlTyYmIHoCvkERELWDAgAE4c+YM5syZg+nTp2PgwIE4efKk0LGIWpxUKuUK5gZIpVJh2bJl8PX1xYkTJ3RTye3t7YWORkTU6rF0ExG1EIlEglmzZiEzMxPdunVDSEgIRo0axfO9yahwMTXDotFosH79enTt2hVfffUVPv/8c04lJyJ6RCzdREQtzNnZGStXrkRqaiosLS3Rs2dPxMTEoLCwUOhoRHrH0m044uLi0KdPH8yePRuvvPIKMjIyMHnyZE4lJyJ6RHzVJCISSIcOHRAbG4ujR4+isLAQnTt3xty5c1FeXi50NCK9Yelu/Y4dO4bw8HCMHTsWI0eORHZ2NmbNmgVzc3OhoxERGSSWbiIigQUEBGDXrl3Yvn07Dh06hI4dO2LRokVc4ZnaJJlMhsrKSmg0GqGj0D+kp6cjOjoaYWFh8PPzw5UrV7BgwQJYW1sLHY2IyKCxdBMRtRLh4eE4fvw4vv/+e6xbtw6dO3fGqlWroFarhY5G1GysrKwAAFVVVQInoXr5+fmIiYlBQEAApFIpUlNTsWLFCigUCqGjERG1CSzdREStiEgkwujRo5Gamor3338fCxcuhJ+fHy8zRm2GSCSCVCrlFPNWoLy8HLNnz4avry+KioqQlJSEn3/+GR06dBA6GhFRm8LSTUTUCkkkEsyYMQOXL19GTEwMXnjhBQQFBWHz5s2clksGj+d1C6u0tBTz5s1Dx44dcfToUfz555+Ii4uDv7+/0NGIiNoklm4iolbM0tISb731FrKysjB06FA8//zz6NmzJ9asWcNp52SwWLqFUVhYiJkzZ8Lb2xv79u3DmjVrkJSUhLCwMKGjERG1aSzdREQGwM7ODgsWLEBeXh6mTZuG+fPno3Pnzvjqq6+44BoZHJbulpWZmYkpU6agY8eOSE9Px9atW3Hs2DGMHDkSIpFI6HhERG0eSzcRkQGRyWR4/fXXkZ2djXnz5mHlypXw9vbGRx99xBJDBqN+BXPSr+TkZDzzzDPo0aMHbt26hYSEBOzduxcREREs20RELYilm4jIAJmbm2PGjBnIyMjAsmXLsGXLFnh4eGDu3Lm4fv260PGI7ksqlaKqqgoqlUroKG3SwYMH8dRTT+HJJ5+EjY0Nzp49iy1btiAwMFDoaERERomlm4jIgInFYowfPx5nzpzBzz//jBMnTqBDhw544YUXkJOTI3Q8okaZm5tDIpFwtLsZaTQabNu2Df369cPTTz+Nrl27IjMzEz/++CN8fX2FjkdEZNRYuomI2gCRSIQhQ4bg0KFDiIuLQ35+Pnx9fTFhwgScP39e6HhEDYhEIp7X3UxUKhXWrl2LgIAATJ06FYMGDUJOTg6+/vpreHh4CB2PiIjA0k1E1Ob0798fO3fuxLFjxyASidC7d2+EhoZi48aNXPGcWg2W7sdTXFyMefPmwcvLC/PmzcP//M//4OrVq1i0aBGcnJyEjkdERHdg6SYiaqN69uyJ2NhYZGVlITw8HK+++io6dOiADz74ACUlJULHIyPH0t00iYmJGDt2LLy9vXHo0CEsXboUV69exVtvvQUbGxuh4xERUSNYuomI2jhXV1csXLgQubm5+PTTT7Fr1y54eHhgwoQJOH78uNDxyEhxBfOHV1NTg++//x59+vRBZGQk5HI5jhw5gsOHD2P8+PEwNTUVOiIREd0HSzcRkZEwNzfHxIkTcezYMRw8eBBmZmYIDQ1F79698fXXX7MAUYuSSqVQKpXQarVCR2m1Ll68iBdffBFubm745JNPMGHCBOTn5+M///kPAgIChI5HREQPiaWbiMgIBQYGYt26dSgoKMCUKVOwcuVKuLm5ISYmBsnJyULHIyMgk8lQV1eH2tpaoaO0KrW1tVi7di1CQkLg7++P4uJibNiwAVeuXMGbb74Je3t7oSMSEdEjYukmIjJi9vb2mD17NtLT07FlyxZUVVXhiSeeQN++fbFixQqUl5cLHZHaKIlEAgsLC57X/b9SUlLwyiuvwMPDA/Pnz0dUVBSys7OxdetWDB48GCYm/JWNiMhQ8RWciIggEokQHh6OjRs3Ii8vD6NHj8bKlSvRrl07jBgxAps2beKIJDU7Y19MLS8vDwsWLEDPnj3Rp08f5OTkYPXq1cjJycEHH3yA9u3bCx2RiIiaAUs3ERE1oFAo8M477yAtLQ2JiYnw8fHBa6+9hvbt22PKlCmIj4+HRqMROia1Aca4mFpFRQVWrlyJAQMGwNvbG7t27cLMmTNRWFiI7du3Y8SIEZBIJELHJCKiZsTSTUREjRKJROjVqxeWLl2K/Px8/PLLLxCJRIiOjkaHDh0wa9YsnD9/XuiYZMDqF1Nr62pra7Fp0yaMGDEC7dq1w4oVKzBkyBBkZmbiyJEjePHFF+Hg4CB0TCIi0hOWbiIieiCxWIzIyEj8+OOPuHbtGhYvXozLly+jd+/e8Pf3x8KFC5Gfny90TDIwbXl6uUajwYEDBzBlyhS4urritddeg4+PDw4fPoy0tDTMnz8fXl5eQsckIqIWwNJNRESPxNLSEuPHj8eff/6JgoIC/Otf/0JcXBy8vLwQGhqKFStW4Pr160LHJANQP728rVw2TKPR4NixY5g9ezY6duyIESNGAABiY2ORn5+PpUuXolevXhCJRAInJSKilsTSTURETebo6IiXXnoJR44cQUZGBqKiovDdd9+hffv2CAoKwnvvvYeUlBShY1IrZWVlBa1Wi6qqKqGjNFlNTQ02b96MyZMnw8PDA+Hh4bh8+TI+++wzFBcXY926dYiMjIRYLBY6KhERCUSkbSuHl4mIqNXIycnB9u3bsXXrViQkJMDd3R0DBw7EmDFjEBkZyYWi9Kiurg47d+7E0KFDYWpqKnScB9q7dy969uwJhUIhdJSHdv36dWzcuBE7duzA4cOHYWVlhZEjR2LkyJEYNGgQrKyshI5IREStCEs3ERHpVUVFBXbt2oWtW7di586dEIlEGDBgAEaOHIkxY8ZALpcLHbFNMbTSnZSUBIVCgQ4dOggd5b5SUlKwceNG7Nq1C2fOnEGXLl0watQojBw5EoGBgbyONhER3RNLNxERtRiVSoUjR45g27Zt2LZtG3JzcxEUFIQhQ4bg2WefhY+Pj9ARDZ6hle7z589Do9GgZ8+eQkdpQKVSYe/evfj9998RHx+P3NxchIaGYtSoURgxYgQ8PT2FjkhERAaCpZuIiASTnp6O7du3Y8uWLTh27Bg8PDwQFBSEiIgIPP300yw2TWBopTs7OxsFBQUIDg4WNIdarcbRo0cRFxeHxMREnD59GiKRCMOGDcOoUaMwePBg2NjYCJqRiIgME0s3ERG1CqWlpUhISMD+/fsRHx+PCxcuwNvbW1fChw4dCnd3d6FjtnqGVrpv3LiB06dPIyoqqkUft75k79q1C4mJiTh16hTUajX69++PQYMGITw8HL179+b6A0RE9NhYuomIqFUqKSnBoUOHWMIfkaGV7qqqKuzevRvDhw/X6wrfarUaSUlJ2LVrFw4fPozTp09DpVKxZBMRkd6xdBMRkUEoKSlpMBKempqKDh06ICgoCGFhYQgJCUG3bt2MfkErQyvdWq0WO3bsQGhoaLNO31YqlThy5AgOHz6sG8lWqVQIDg5uULIN4XtERESGjaWbiIgM0p0lPCEhAampqbC0tISvry969OiBwMBABAcHw8/Pz6iKuKGVbgA4cOAAOnfujPbt2zfp65VKJRITE5GUlITk5GSkpqbiypUrsLGxQWBgIEs2EREJiqWbiIjahJqaGpw/fx6nTp3CyZMnceLECVy4cAHm5uYNinj//v3h5+en16nMQjLE0n3y5EnY2Nigc+fOD9y2oqICR44cwdGjR5GcnIyLFy8iKysLtra26N27N4KCghAYGIg+ffrAw8MDIpGoBZ4BERHRvbF0ExFRm1VbW9toETczM0OXLl3Qo0cP+Pv7o3v37vD394ezs7PQkR+bIZbutLQ03L59G71799bdp1KpkJmZiZSUFKSkpODMmTO6gm1vb39XwXZzc2PBJiKiVomlm4iIjEptbS0uXLigK+Jnz57FpUuXcOPGDdjZ2cHDwwOenp7o1KmTboTcz88PMplM6OgPxZBKt0ajQX5+PhISEpCcnIyysjJkZWUhJycHubm5UKvV8PT0hK+vL/r06aO7ubq6smATEZHBYOkmIiICUFZWhszMTGRkZCAjIwNpaWlIT0/HpUuXcPv2bTg7O8PT0xNeXl7o3Lkzunbtii5dusDT0xN2dnat5rzx1la6VSoV8vLykJ2djQsXLiA9PR2XL19GTk4OcnJyoFQq4eLigk6dOqFbt27o0qULOnfujM6dO8Pb27tVPAciIqLHwdJNRER0H1qtFkVFRboynp6ejvT0dKSlpSE3Nxc1NTWwsLCAk5MTHB0d4eTkBIVCARcXF7Rv3x5ubm660XOFQqH3ct5SpbumpgZXr17F1atXkZubi7y8PBQWFqK4uBjXr1/HtWvXUFJSgpKSEmg0GtjZ2aFjx47o0qULfH19dcW6U6dOBjOLgIiIqClYuomIiJpIq9WivLwchYWFKCwsREFBge7PO2/FxcWorKyEmZkZHB0d4ejoCLlcDqlUqrtZW1vD2toaMpkMNjY2sLGxga2tLWxtbXUfy+VyyOXy+y4C9zClu7q6Gjdv3kR5eTnKyspQXl6OiooKlJeX49atW6ioqIBSqcStW7dw69Yt3L59G5WVlaisrMSNGzdw48YN3Lx5EwDg4OCgO8Dg6uqK9u3bo127dro/27VrBxcXF5ibm+vl34CIiKi1Y+kmIiJqAUqlskExv3HjRoNiW190KyoqcOvWLd3nKisroVQqUV1drduXubk5RCIRTExMYGJiApFIBLFYrLtPrVYD+PuggEajgVarhVqthlarhUqlgkqlAgCYmJhAKpVCJpPpir9MJoO1tTVsbGx0f955n7Ozs65QKxQKTv8mIiJ6AJZuIiIiA6BSqVBZWakbea4v1BqNBmq1usHH9WX8nzexWAyxWKwr0ZaWllyQjIiISM9YuomIiIiIiIj0pHUstUpERERERETUBrF0ExEREREREekJSzcRERERERGRnrB0ExEREREREekJSzcRERERERGRnrB0ExEREREREekJSzcRERERERGRnrB0ExEREREREekJSzcRERERERGRnrB0ExERGTi1Wo3Vq1cjLCwM9vb2MDU1hUKhQM+ePTFjxgz88ccfQkckIiIyWiKtVqsVOgQRERE1jVqtxvDhwxEXFwe5XI5hw4bBzc0NpaWluHTpEhITExEUFITDhw8LHZWIiMgoSYQOQERERE0XGxuLuLg4+Pv74+DBg7C1tW3w+Zs3b+LUqVMCpSMiIiJOLyciIjJgiYmJAICYmJi7CjcA2NnZITIysqVjERER0f9i6SYiIjJgTk5OAICMjAyBkxAREVFjeE43ERGRATt79iyCgoKgUqkwceJEREdHIzAwEN7e3kJHIyIiInCkm4iIyKD5+/vj559/houLC3766SeMHz8eHTp0gKOjI8aMGYOdO3cKli0mJgYikQjZ2dmCZfintWvXQiQSYe3atUJHISIiI8HSTUREZODGjh2LnJwc7Nq1C++//z6GDx8OtVqNzZs3Y9iwYZg+fTqaa2KbSCS6741lloiIqCGuXk5ERNQGmJqaIioqClFRUQD+vpTY77//jueffx5r1qzByJEjER0d3WyP9+GHHzZ6f0BAQLM9BhERUVvA0k1ERNQGicVijB8/HikpKVi0aBH27dvXrKX7o48+arZ9ERERtWWcXk5ERNSGWVtbA0CzTS9vLhs3bsSAAQNga2sLS0tL9OjRA5988gmqq6sb3f7kyZMYPXo0FAoFzM3N4enpiZdeegkFBQWNbn/p0iWMGzcOdnZ2kEqlCA4Oxp9//qnPp0RERNQojnQTEREZsNjYWDg6OmLQoEEwMWl4LL2oqAirV68GAISGhgoRr1Fvv/02Fi9eDCcnJ0yaNAlSqRQ7d+7E/PnzERcXh71798LMzEy3/bZt2zBu3DiIRCKMHTsWHh4eOHnyJFatWoVt27bh8OHD6NChg277zMxM9OvXDyUlJXj66acREBCAS5cuYdSoURg6dKgQT5mIiIwYSzcREZEBO3bsGJYvXw4XFxeEhIToLhWWlZWFHTt2oKqqCtHR0Rg7dmyzPm5j08u9vLwQExNz369LTEzE4sWL4enpiePHj0OhUAAAPv30U0RHR2Pnzp1YsmQJ5s+fDwBQKpV4/vnnodFokJCQgODgYN2+Pv30U7z77rt48cUXsWfPHt39M2fORElJCZYtW4ZZs2bp7t+2bRtGjRrV9CdNRETUBLxONxERkQHLzc3FH3/8gb179yI1NRWFhYWorq6Gg4MDevXqhYkTJ2LixIl3jYI3lUgkuufnwsLCcODAAd3fY2Ji8OOPPyIrKwteXl4AgBkzZuC///0vVq9ejRkzZjT4+vT0dHTr1g2enp64cuUKAGDDhg2YPHkyJk2ahA0bNjTYvq6uDj4+PsjJyUF2djY8PT2Rl5cHd3d3eHt7IzMzE2KxuMHXhIeH4+DBg/jhhx8eeICAiIioOXCkm4iIyIC5u7tj5syZmDlzZos+blOP2ScnJwMAIiIi7vpcly5d4ObmhqysLJSVlUEul993e1NTU4SFhWHdunVITk6Gp6enbvuQkJC7Cjfwf6WbiIiopXAhNSIiImox5eXlAAAXF5dGP9+uXbsG2zV1e2dn50a3v9d+iIiI9IWlm4iIiFqMra0tgL8XeWtMYWFhg+2aun1xcXGj299rP0RERPrC0k1EREQtplevXgDQ4NzvepcuXUJeXh68vb0hl8sfuL1KpcLhw4cBAL17926w/eHDh6FWq+/6msb2Q0REpE8s3URERNRinn/+eQDAokWLcP36dd39arUab7zxBjQaDaZPn667f9SoUbC3t0dsbCySkpIa7GvZsmW4cuUKIiMj4eHhAQBwc3PDU089haysLKxcubLB9tu2beP53ERE1OK4kBoRERG1mODgYLz11ltYvHgxevTogbFjx0IqleKvv/7C+fPnERISgjfffFO3vUwmw5o1azBu3DiEhYVh3Lhx8PDwwKlTp7B79264uLjgu+++a/AY33zzDfr164fZs2dj9+7d8Pf3x6VLl7BlyxaMGDEC27dvb+mnTURERowj3URERNSiPv/8c8TGxsLHxwfr1q3D119/DY1Gg0WLFmHPnj0wMzNrsH10dDQSExMxdOhQ7Nq1C1988QUuXryIf/3rXzh16hQ6dOjQYHsfHx8kJSVhzJgxSExMxPLly5Gbm4utW7di9OjRLflUiYiIeJ1uIiIiIiIiIn3hSDcRERERERGRnrB0ExEREREREekJSzcRERERERGRnrB0ExEREREREekJSzcRERERERGRnrB0ExEREREREekJSzcRERERERGRnrB0ExEREREREekJSzcRERERERGRnrB0ExEREREREekJSzcRERERERGRnrB0ExEREREREekJSzcRERERERGRnvx//LdVHQ0PisIAAAAASUVORK5CYII=", + "text/plain": [ + "
" ] - }, + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Define bin sizes\n", + "width_direction = 10 # in degrees\n", + "width_velocity = 0.25 # in m/s\n", + "\n", + "# Create a rose plot\n", + "ax = tidal.graphics.plot_rose(\n", + " data.d,\n", + " data.s,\n", + " width_direction,\n", + " width_velocity,\n", + " metadata=metadata,\n", + " flood=flood,\n", + " ebb=ebb,\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Velocity Duration Curve\n", + "\n", + "The velocity duration curve shows the probability of achieving a particular velocity value. After computing the exceedance probability, the rank order of velocity values can be plotted as follows." + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Velocity Duration Curve\n", - "\n", - "The velocity duration curve shows the probability of achieving a particular velocity value. After computing the exceedance probability, the rank order of velocity values can be plotted as follows." + "data": { + "image/png": "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Y4qJiSn07IXPP/9cnTp10rx589SzZ089/vjjatu2rSZPnqy2bdsWe+G9OM8++6xuu+027dy5U3feeacefvhhOZ1Ovfjii4qJiVFOTk6h7SdNmqTo6GjNnj1b0dHRevLJJ3XDDTcoISFBH3744UWP1b17dz322GOSpJYtWxY8U2L06NFq1aqVGjVqpB49emjx4sWKi4sr8voVK1Zo69at6tevn0JDQy/p/C7m3CyZuLg4de3aVTabTffee6/Cw8M1c+ZMDR8+XHPmzFH79u2Vnp6uIUOGqEGDBvr555919913F9nfzz//rJycHN18882Flr/++uvq2rWrNmzYoGuuuUZPPPGE+vXrp9zcXM2fP/+KzwMAAAAob3jGBgAAAFCBVa1aVf3799e0adM0ffr0IhfMJ02aJOnM8zjOiYuL0/3336/IyEgtWbKk0O2eFi1apF69eunRRx/V7NmzL3rsFStW6M0331SdOnW0du1aVatWTZI0duxY9evXT3PnztVbb72lF198UdKZmQsPPvig/P39tWzZMjVt2rTQ/g4dOnTR43Xv3l1169bVhAkT1KpVq2KfffHggw9q8eLFmjhxosaNG1do3SeffCJJuv/++y96nEt1rthYv3691qxZo2bNmkmS/vnPf6p27dqaN2+eNmzYoF9//VXt27eXJGVnZ6tevXpaunSpsrKy5OnpWbC/WbNmycfHR7169SpYlpCQoJdfflldu3bVwoULZbfbC2VISkpyybkAAAAA5QkzNgAAAIAK7lxp8dfbUcXHx2v+/PkKDQ3VTTfdVLD8o48+Um5ursaPH1/kGRY9e/ZU37599eOPPyo1NfWix/38888lSS+99FJBqSFJVqtV77zzjsxmsz799NNCx83Ly9M///nPIqWGJIWHh1/iGV9Y//79VbNmTU2dOlXZ2dkFy0+dOqXp06erXr16uvbaa6/4ONL/io2pU6cWlBqS5O/vr4iICOXl5entt98uKDUkycPDQw0aNJDT6VR6enrB8qysLM2bN099+vQpVHbs2LFD+fn5ioqKKlJqSFJISIhLzgUAAAAoT5ixAQAAAFRwPXv2VL169bRs2TLt3LlTUVFRkqTPPvtM+fn5GjZsmKzW//3XYNWqVZKk2NhYrV27tsj+EhMT5XA4tGvXLrVp0+aCx920aZMkqUePHkXWRUVFqVatWtq3b5+S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", + "text/plain": [ + "
" ] - }, + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Calculate exceedance probability of data\n", + "data[\"F\"] = tidal.resource.exceedance_probability(data.s)\n", + "\n", + "# Plot the velocity duration curve (VDC)\n", + "ax = tidal.graphics.plot_velocity_duration_curve(data.s, data.F)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Plot by phase direction\n", + "\n", + "MHKiT can produce plots of velocity by probability and exceedance probability for each tidal phase. Using the ebb and flood direction calculated earlier we can simply pass our directions, velocities, ebb, and flood direction to createthe following plots:" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ { - "cell_type": "code", - "execution_count": 10, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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Y4qJiSn07IXPP/9cnTp10rx589SzZ089/vjjatu2rSZPnqy2bdsWe+G9OM8++6xuu+027dy5U3feeacefvhhOZ1Ovfjii4qJiVFOTk6h7SdNmqTo6GjNnj1b0dHRevLJJ3XDDTcoISFBH3744UWP1b17dz322GOSpJYtWxY8U2L06NFq1aqVGjVqpB49emjx4sWKi4sr8voVK1Zo69at6tevn0JDQy/p/C7m3CyZuLg4de3aVTabTffee6/Cw8M1c+ZMDR8+XHPmzFH79u2Vnp6uIUOGqEGDBvr555919913F9nfzz//rJycHN18882Flr/++uvq2rWrNmzYoGuuuUZPPPGE+vXrp9zcXM2fP/+KzwMAAAAob3jGBgAAAFCBVa1aVf3799e0adM0ffr0IhfMJ02aJOnM8zjOiYuL0/3336/IyEgtWbKk0O2eFi1apF69eunRRx/V7NmzL3rsFStW6M0331SdOnW0du1aVatWTZI0duxY9evXT3PnztVbb72lF198UdKZmQsPPvig/P39tWzZMjVt2rTQ/g4dOnTR43Xv3l1169bVhAkT1KpVq2KfffHggw9q8eLFmjhxosaNG1do3SeffCJJuv/++y96nEt1rthYv3691qxZo2bNmkmS/vnPf6p27dqaN2+eNmzYoF9//VXt27eXJGVnZ6tevXpaunSpsrKy5OnpWbC/WbNmycfHR7169SpYlpCQoJdfflldu3bVwoULZbfbC2VISkpyybkAAAAA5QkzNgAAAIAK7lxp8dfbUcXHx2v+/PkKDQ3VTTfdVLD8o48+Um5ursaPH1/kGRY9e/ZU37599eOPPyo1NfWix/38888lSS+99FJBqSFJVqtV77zzjsxmsz799NNCx83Ly9M///nPIqWGJIWHh1/iGV9Y//79VbNmTU2dOlXZ2dkFy0+dOqXp06erXr16uvbaa6/4ONL/io2pU6cWlBqS5O/vr4iICOXl5entt98uKDUkycPDQw0aNJDT6VR6enrB8qysLM2bN099+vQpVHbs2LFD+fn5ioqKKlJqSFJISIhLzgUAAAAoT5ixAQAAAFRwPXv2VL169bRs2TLt3LlTUVFRkqTPPvtM+fn5GjZsmKzW//3XYNWqVZKk2NhYrV27tsj+EhMT5XA4tGvXLrVp0+aCx920aZMkqUePHkXWRUVFqVatWtq3b5+S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", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "# Calculate exceedance probability of data\n", - "data['F'] = tidal.resource.exceedance_probability(data.s)\n", - "\n", - "# Plot the velocity duration curve (VDC)\n", - "ax = tidal.graphics.plot_velocity_duration_curve(data.s, data.F)" + "data": { + "text/plain": [ + "" ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" }, { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Plot by phase direction\n", - "\n", - "MHKiT can produce plots of velocity by probability and exceedance probability for each tidal phase. Using the ebb and flood direction calculated earlier we can simply pass our directions, velocities, ebb, and flood direction to createthe following plots:" + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAA/gAAAK4CAYAAADA9FZPAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/NK7nSAAAACXBIWXMAAA9hAAAPYQGoP6dpAADTT0lEQVR4nOzde3yU5Z3//9d9mMwMiByLYkRAxEi/FIEUaYNQpApdbBF3cSvKt1XQ3a5a1HapuLYCrfVEt7au2N1VpNuyYlu/rdhKS4poOcRF5CA/uohIQTBiMUgAYSYz9+H3R8iYyDEkcCf39X4+Hj68yAyTz8X1nuuea+5r7rHCMAwRERERERERkVbNjroAEREREREREWk6LfBFREREREREYkALfBEREREREZEY0AJfREREREREJAa0wBcRERERERGJAS3wRURERERERGJAC3wRERERERGRGNACX0RERERERCQGtMAXERERERERiQEt8EVERERERERioEUu8J999lm+/vWvM2zYMM4880wsy2LixIkn9VjvvPMOkyZN4pxzziGZTNKzZ0/uuOMO9uzZ08xVi4iIiIiIiETHjbqAI7nvvvt4/fXXOeOMMzj33HN54403TupxtmzZQllZGbt27eKqq67ioosu4tVXX+XHP/4xf/jDH1ixYgWdO3du5upFRERERERETr8WeQb/kUce4c0332Tfvn385Cc/OenHueWWW9i1axePPvoozz33HA8++CBLlizhzjvvZNOmTdxzzz3NWLWIiIiIiIhIdKwwDMOoiziWl19+mcsuu4zrr7+eefPmnfDf27JlCxdccAG9evXirbfewrY/ei9j//79dOvWjSAI2LVrF2ecccapKF1ERERERETktGmRZ/Cbw0svvQTAqFGjGizuAdq1a8fQoUPJZDKsXLkyivJEREREREREmlWL/Ax+c9i0aRMAffr0OeLtffr0oby8nDfffJPPf/7zR7xPTU0NNTU1hT8HQcAHH3xA586dsSyr+YsWERERERERqScMQ/bv388555xz2Mnrj4vtAn/v3r0AtG/f/oi31/28urr6qI/xwAMPMHPmzGavTURERERERKQxduzYwbnnnnvM+8R2gX88dZceONaZ+LvvvptvfOMbhT/v3buX8847j23bttGxY0d83wfAcZwGbc/zsCyr0LZtG9u2j9rO5/M4jlNo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LaFPn9o+zZlTTnFxbZ/mz19Ip05Z0mmP+fMXkk57dOqUZf782j4VF+9nzpzaPvXpU81jj9X2qX//Kh5+uLZPQ4bsZObM2j6NGLGDadNq+zRmzFZuv712nMaP38zNN9eO08SJG5k4sbZPN9+8nvHja/t0++1rGTOmrk+vMmLEjiP06WGy2exh4zRnzhyKi71W2qeG49Sr136eeeYi/uM/XjzCOIXMnz+fMAwPy9677757qE+5Ften5s/eX4HarxGr/3yqu3jzmDEftsI+fTRO3/nOSp555iIuvfTdY4xT7e+vrq5u9fMexG8ub2qfVq5cyZlnnonjOE3uU0lJX66++mo2b95MaWkp119/Pa+//jqlpaXcdNNNvPLKK5SWljJlyhRefPFFSktLmTZtGr/73e8oLS3lu9/9Lr/85S8pLS3lBz/4AT/96U8pLS1l9uzZzJ49m9LSUn7605/ygx/8gNLSUn75y1/y3e9+l9LSUn73u98xbdo0SktLefHFF5kyZQqlpaW88sor3HTTTZSWlvL6669z/fXXU1payubNm7n66qspLS2lsrKS0aNHM2zYMCorKxk2bBijR4+msrKS0tLSI/appKQv//u//9vis3eirLCFXXb7H/7hH3jiiSd44oknuOmmmw67/V/+5V944IEHeOCBBwoLuyP51re+xaxZs7Btm3Xr1vGpT32qcFsmk+HCCy/knXfeoaKi4qjb9Y90Br979+588MEHdOzYscW8U2hZFmvWrKF///6kUilWr17NpZdeyopvZxnQK95n8Fdvcxn6XYeKigouvvjiBu+qrV27lsGDB/Pa9xMM6Nl6+nQy47TmbZdf7bmV8ePHU1paWsje66+/zqc//WlWfT/JoJ6tq0+NHafXt+b49LcDVq1axaBBgxo8n9auXcull17KsnuyDOrVevp0ouPkkWBN8hsMqvkh67fmGfb9FMuXL2fgwIEt4mxCHM+QtLQ+AaxZs4aLL764cCb/WH16/fXXKSsrw/dX4HmlMT+Dv45UaijLly+ntLS0ME7r1q3j0ksvpaZmGUFQ2sr6dPg4QcjXv/46//mf/di/P/WxcVpDOj2MZcuWMWjQoAbZW716NYMHD8a2X6OoqH+L6lPzZ28N2exgXnvtNS6++OLC82nNmjUMHjwY130N2764lfXpo3Fq0ybH1772//HYYxcTBPZRxmkt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PFAXGUgkEowZM6bW+/70pz+xefNmrr/+eoqKirR9vxGqq3WgX79+uK7Lzp07yeVyVZ+YXGnr1q0AdOrUqW4HIOekruY/l8sBnPSDFCtvTyQSdVG2NEJ6PSiV9HowYsz9hT6pTXFxcQiEs2bNqnH7pEmTQiD81re+VXVbLpcLt23bFu7cufOcziONS11l4J//+Z9DILz66qvDgwcP1nvdUnfqKgO1KS0tDYFwzpw5dVqz1K26ysCdd94ZAmFpaWmN21etWhValhW2aNEiPHz4cH0MQc5BXcz/M888EwLhRRddFO7fv7/GfStWrAgtywqTyWT4t7/9rf4GInXi0/4Gul4PFr5zyYBeD0aPFYaffMKGNAq7du2id+/eHDhwgCFDhnDFFVewceNGXnrpJbp168aGDRto06YNAHv27KFz58507NiRPXv2nPV5pHGpiww88cQTjBo1CsdxuOeee2p9f12nTp0YNWpUA41KzkRdrQO1efDBB5k2bRpz5sxh7Nix9TwSOVt1lYEDBw7Qp08fdu7cSb9+/ao+RX/JkiVYlsXChQu54447DIxQTqUu5j8IAgYMGMALL7xAs2bNuP3222nXrh3btm3jt7/9LWEY8uijjzJx4kRDo5RTWbp0KUuXLgXg3XffZeXKlVx66aX07dsXgAsvvJCf/vSngF4PFqq6yIBeD0aU4V8wSC3eeuutcNSoUWG7du3CWCwW/t3f/V04YcKEE37rtnv37hAIO3bseE7nkcbnXDNQeZX2VF833HBDww1IzlhdrQPH0xX880ddZeDgwYPhpEmTwk6dOoWxWCxs3bp1OHjw4PDVV19tgFHI2aqL+c/lcuHPfvaz8Etf+lLYrFmz0HGc8DOf+Uw4aNCgcOXKlQ00Ejkbn/Y8Xn2+9XqwMNVFBvR6MJp0BV9ERERERESkAOhT9EVEREREREQKgBp8ERERERERkQKgBl9ERERERESkAKjBFxERERERESkAavBFRERERERECoAafBEREREREZECoAZfREREREREpACowRcREREREREpAGrwRURERERERAqAGnwREZHz2KhRo7Asiz179jTY9+zUqROdOnVqsO9X3S9/+Ussy6r6uvXWW43UcSZuu+22GjX/8pe/NF2SiIgUKDX4IiIi9WDEiBFYlsXPf/7zT33sTTfdhGVZ/Pa3v22AyupHZePdUM3rkCFDKC0tZeTIkQ3y/QCuvPJKPv/5z5/xfzdixAhKS0sZMmRIPVQlIiJyjBp8ERGRevDNb34TgDlz5pzycbt27eLll1+mffv2fPnLX26I0s7Ziy++yIsvvmi0hqFDh/Lggw82WIO/Y8cO/vrXv3L77bef8X87YsQIHnzwQYYOHVr3hYmIiFSjBl9ERKQe3HjjjXTr1o3Nmzfzpz/96aSPmzt3LmEYMnr0aBzHacAKz16XLl3o0qWL6TIa1JIlSwDOqsEXERFpKGrwRURE6sm4ceOAiia+Np7n8ctf/hLbthkzZkzV7du3b2fUqFF06NCBRCLBRRddxIgRIygrKzuj7//MM8/Qt29fWrRoQSqVonv37vzkJz8hk8nU+vj9+/czYcIELrvsMpLJJK1bt+aaa67hoYceqvG449+Df+ONN1JSUgJASUlJjfeb79mzh6lTp2JZFk8++WSt3/f111/Hsiy+8pWvnNH4avPggw9iWRZr1qxh0aJFXH311TRp0oRLLrmE7373u2SzWQB+//vfc8MNN9CsWTNatWrFXXfdxaFDh0563meffZbOnTvTo0ePqtuWLFnCTTfdRLt27UgkErRr147rr7+e2bNnn/M4REREzoYafBERkXpy9913E4/HWbhwIel0+oT7f/vb3/Luu+9SXFxMx44dAXj++ee56qqrWLhwIb169WLixInccsstPPvss1xzzTWn3A1Q3ZQpUxg2bBhlZWXceeed/K//9b8Iw5Dvf//7FBcXk8vlajz+j3/8I1/4whf4t3/7N9q3b8/EiRMZMWIEF1xwAQ8++OApv9eoUaOq3l9e+d74yq+WLVvy7W9/G9u2+Y//+I9a//tf/OIXAHzrW986rbGdjn/7t39jzJgxFBUV8Y//+I+0adOGn/3sZ3z729/mV7/6Fbfddhtt2rTh29/+Np/73Od46qmnuPPOO2s919tvv82mTZtqXL3/+c9/zle/+lW2b9/O4MGDue+++7jtttvI5XL6ED0RETEnFBERkXrzD//wDyEQPvHEEyfcN3DgwBAIn3322TAMw/DQoUNhy5YtwwsvvDDctm1bjcdu3bo1bNq0adijR48at999990hEO7evbvqtldeeSUEwo4dO4bvvfde1e35fL7qe/7oRz+quj2bzYadOnUKgXDhwoUn1PnWW2/V+HfHjh3Djh071rhtwYIFIRAuWLCg1v8fBg0aFALhX/7ylxq3HzlyJGzatGnYoUOH0PO8Wv/bM/k+paWlIRA2b948/Otf/1p1eyaTCT/3uc+Ftm2HLVu2DNesWVN1XxAEYXFxcQiEmzdvPuGcjz/+eAiE69atq7qtZ8+eYTwer/H/b6X333//rGoXERE5V7qCLyIiUo8qP2zv+G36+/fvZ+XKlbRr165qa/qTTz7JBx98wLRp07j88strPP7KK69k3LhxbNmyhf/zf/7PKb/nggULAPjBD35A27Ztq253XZd//dd/xbZt5s2bV3X7f//3f7Nnzx4GDx7M8OHDTzhfhw4dzmDEtfvOd74DwP/+3/+7xu1PP/00H3/8MePGjavTzyCYOHEiV1xxRdW/E4kE3/jGNwiCgK985SvccMMNVfdZllV19f7Pf/7zCedasmQJbdu2pXfv3jX+G9d1icViJzz+wgsvrLNxiIiInAnXdAEiIiKF7Oabb6ZLly6sW7eOsrIyioqKAJg/fz6+71NSUoLrVjwdv/rqqwBs2bKl1m3xO3bsACreo3/llVee9Htu3rwZqPjze8crKiris5/9LLt37+aDDz6gZcuW/OEPfwCo10/xv/XWW+ncuTNPPfUUM2bMIJVKAfAf//EfuK5b4zMI6sLVV199wm2XXHLJp963f//+GrcfOnSIl19+mZKSEmz72HWRO++8k/vuu48rr7ySYcOG0a9fP/r06cNnPvOZuhyGiIjIGVGDLyIiUo8sy2Ls2LHcf//9zJ07l5kzZxIEAfPnz8eyrBqN7cGDB4FP/9N6H3300Snv//DDDwFo165drfdffPHFvPXWW3z44Ye0bNmSDz74AID27duf7rDOmG3bfOtb32Lq1Kn86le/4u6772bjxo38+c9/5vbbb69qsOtKixYtTrit8hcpp7ovn8/XuP2///u/8TyPr371qzVu/+53v8uFF17Iv//7v/PYY4/xs5/9DMuyuOmmm5g5cyZXXXVVXQ1FRETktGmLvoiISD0rKSkhFovx5JNPks/n+f3vf8/evXurru5Xqmw8//znPxOG4Um/7r777lN+v8rzvPvuu7Xe/84779R4XMuWLYGKD5OrT2PGjCGRSFR92F7l/9blh+vVtSVLltC8eXNuvvnmE+676667+MMf/sDBgwdZvnw5Y8aMYc2aNRQXF/P+++8bqFZERKJODb6IiEg9u+iiixg8eDAHDhxg2bJlVe/Hr3x/fqVrr70WgHXr1p3T9+vZsycAa9asOeG+nTt3sn//fjp37lzV2Fd+35UrV57196x8/7zv+yd9zIUXXsgdd9zBq6++yiuvvMIzzzxD586dKS4uPuvvW5/Ky8tZtWoVgwYNIh6Pn/RxLVu2ZODAgcyZM4dRo0Zx8ODBc55DERGRs6EGX0REpAGMGzcOgJkzZ/Lcc8/xmc98hqFDh9Z4TElJCS1btmTatGm89tprJ5wjCIJam/bjjR49GoAf/ehHNa4k+77P9773PYIgqPHWgK985St06tSJpUuX8qtf/eqE853Olf02bdoAsG/fvlM+rvLD9v7hH/6B8vJyvvnNb2JZ1qee34Tf/e53pNPpGn8er9Lzzz+P53kn3H7gwAEAkslkvdcnIiJyPL0HX0REpAEUFxfTuXNnNm7cCMDdd999wlXhNm3a8F//9V/cfvvtXHvttdxyyy1ceeWV2LbNW2+9xauvvsrBgwfJZDKn/F69e/fmn/7pn3jkkUfo3r07X//612natCm/+93v2Lp1K9dffz2TJ0+uenw8HufXv/41xcXFfOMb3+AXv/gF11xzDel0mm3btrF69epam9nqrrvuOpo0acKjjz7KwYMHueiiiwC45557arzn/brrrqNHjx5s2bKFWCxGSUnJGf3/2JCWLFlCMpms9cMHhw0bRjKZ5Prrr6dTp06EYci6devYtGkTV111Ff379zdQsYiIRJ0afBERkQZQ+YF6P/jBDwAYO3ZsrY+75ZZbeOONN/jpT3/KypUrWbduHfF4nEsuuYSbb76Zr33ta6f1/WbMmEHPnj15/PHHq97736VLF370ox9x3333nfDLhS9+8Yts2bKF6dOn87vf/Y5XXnmFZs2a0bVrV6ZNm/ap369Vq1b85je/Ydq0aSxYsICPP/4YgJEjR57woXYlJSVMnDiR22+/veoXAY1NPp9n+fLl/P3f/z0XXHDBCfdPnz6dlStX8qc//YkVK1aQTCbp2LEjM2bM4B//8R9PuaVfRESkvlhhGIamixAREZHouOuuu3jqqad48cUXa/3wulP55S9/SUlJCQsWLGDUqFH1UyCwatUqBgwYwPz58+tsl0FD1S4iItGl9+CLiIhIg9m7dy/PPPMMn/vc5864ua+upKQEy7K49dZb67C6Y5YsWYLjOHzlK18553PddtttWJbVqN+OICIihUFX8EVERKTePfXUU5SVlfHMM8+wc+dOnn322Vo/vO7TbNmyhaVLl1b9u2vXrowcObIOK617CxcuZMeOHVX/Hjp0KD169DBXkIiIFCw1+CIiIlLvbrzxRtauXUuHDh343ve+xz333GO6JBERkYKjBl9ERERERESkAOg9+CIiIiIiIiIFQA2+iIiIiIiISAFQgy8iIiIiIiJSANTgi4iIiIiIiBQANfgiIiIiIiIiBUANvoiIiIiIiEgBUIMvIiIiIiIiUgDU4IuIiIiIiIgUgP8P0vqeIpnWhe8AAAAASUVORK5CYII=", + "text/plain": [ + "
" ] - }, + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "tidal.graphics.tidal_phase_probability(data.d, data.s, flood, ebb)" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ { - "cell_type": "code", - "execution_count": 11, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 11, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAA/gAAAK4CAYAAADA9FZPAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/NK7nSAAAACXBIWXMAAA9hAAAPYQGoP6dpAADTT0lEQVR4nOzde3yU5Z3//9d9mMwMiByLYkRAxEi/FIEUaYNQpApdbBF3cSvKt1XQ3a5a1HapuLYCrfVEt7au2N1VpNuyYlu/rdhKS4poOcRF5CA/uohIQTBiMUgAYSYz9+H3R8iYyDEkcCf39X4+Hj68yAyTz8X1nuuea+5r7rHCMAwRERERERERkVbNjroAEREREREREWk6LfBFREREREREYkALfBEREREREZEY0AJfREREREREJAa0wBcRERERERGJAS3wRURERERERGJAC3wRERERERGRGNACX0RERERERCQGtMAXERERERERiQEt8EVERERERERioEUu8J999lm+/vWvM2zYMM4880wsy2LixIkn9VjvvPMOkyZN4pxzziGZTNKzZ0/uuOMO9uzZ08xVi4iIiIiIiETHjbqAI7nvvvt4/fXXOeOMMzj33HN54403TupxtmzZQllZGbt27eKqq67ioosu4tVXX+XHP/4xf/jDH1ixYgWdO3du5upFRERERERETr8WeQb/kUce4c0332Tfvn385Cc/OenHueWWW9i1axePPvoozz33HA8++CBLlizhzjvvZNOmTdxzzz3NWLWIiIiIiIhIdKwwDMOoiziWl19+mcsuu4zrr7+eefPmnfDf27JlCxdccAG9evXirbfewrY/ei9j//79dOvWjSAI2LVrF2ecccapKF1ERERERETktGmRZ/Cbw0svvQTAqFGjGizuAdq1a8fQoUPJZDKsXLkyivJEREREREREmlWL/Ax+c9i0aRMAffr0OeLtffr0oby8nDfffJPPf/7zR7xPTU0NNTU1hT8HQcAHH3xA586dsSyr+YsWERERERERqScMQ/bv388555xz2Mnrj4vtAn/v3r0AtG/f/oi31/28urr6qI/xwAMPMHPmzGavTURERERERKQxduzYwbnnnnvM+8R2gX88dZceONaZ+LvvvptvfOMbhT/v3buX8847j23bttGxY0d83wfAcZwGbc/zsCyr0LZtG9u2j9rO5/M4jlNo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LaFPn9o+zZlTTnFxbZ/mz19Ip05Z0mmP+fMXkk57dOqUZf782j4VF+9nzpzaPvXpU81jj9X2qX//Kh5+uLZPQ4bsZObM2j6NGLGDadNq+zRmzFZuv712nMaP38zNN9eO08SJG5k4sbZPN9+8nvHja/t0++1rGTOmrk+vMmLEjiP06WGy2exh4zRnzhyKi71W2qeG49Sr136eeeYi/uM/XjzCOIXMnz+fMAwPy9677757qE+5Ften5s/eX4HarxGr/3yqu3jzmDEftsI+fTRO3/nOSp555iIuvfTdY4xT7e+vrq5u9fMexG8ub2qfVq5cyZlnnonjOE3uU0lJX66++mo2b95MaWkp119/Pa+//jqlpaXcdNNNvPLKK5SWljJlyhRefPFFSktLmTZtGr/73e8oLS3lu9/9Lr/85S8pLS3lBz/4AT/96U8pLS1l9uzZzJ49m9LSUn7605/ygx/8gNLSUn75y1/y3e9+l9LSUn73u98xbdo0SktLefHFF5kyZQqlpaW88sor3HTTTZSWlvL6669z/fXXU1payubNm7n66qspLS2lsrKS0aNHM2zYMCorKxk2bBijR4+msrKS0tLSI/appKQv//u//9vis3eirLCFXXb7H/7hH3jiiSd44oknuOmmmw67/V/+5V944IEHeOCBBwoLuyP51re+xaxZs7Btm3Xr1vGpT32qcFsmk+HCCy/knXfeoaKi4qjb9Y90Br979+588MEHdOzYscW8U2hZFmvWrKF///6kUilWr17NpZdeyopvZxnQK95n8Fdvcxn6XYeKigouvvjiBu+qrV27lsGDB/Pa9xMM6Nl6+nQy47TmbZdf7bmV8ePHU1paWsje66+/zqc//WlWfT/JoJ6tq0+NHafXt+b49LcDVq1axaBBgxo8n9auXcull17KsnuyDOrVevp0ouPkkWBN8hsMqvkh67fmGfb9FMuXL2fgwIEt4mxCHM+QtLQ+AaxZs4aLL764cCb/WH16/fXXKSsrw/dX4HmlMT+Dv45UaijLly+ntLS0ME7r1q3j0ksvpaZmGUFQ2sr6dPg4QcjXv/46//mf/di/P/WxcVpDOj2MZcuWMWjQoAbZW716NYMHD8a2X6OoqH+L6lPzZ28N2exgXnvtNS6++OLC82nNmjUMHjwY130N2764lfXpo3Fq0ybH1772//HYYxcTBPZRxmkt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PFAXGUgkEowZM6bW+/70pz+xefNmrr/+eoqKirR9vxGqq3WgX79+uK7Lzp07yeVyVZ+YXGnr1q0AdOrUqW4HIOekruY/l8sBnPSDFCtvTyQSdVG2NEJ6PSiV9HowYsz9hT6pTXFxcQiEs2bNqnH7pEmTQiD81re+VXVbLpcLt23bFu7cufOcziONS11l4J//+Z9DILz66qvDgwcP1nvdUnfqKgO1KS0tDYFwzpw5dVqz1K26ysCdd94ZAmFpaWmN21etWhValhW2aNEiPHz4cH0MQc5BXcz/M888EwLhRRddFO7fv7/GfStWrAgtywqTyWT4t7/9rf4GInXi0/4Gul4PFr5zyYBeD0aPFYaffMKGNAq7du2id+/eHDhwgCFDhnDFFVewceNGXnrpJbp168aGDRto06YNAHv27KFz58507NiRPXv2nPV5pHGpiww88cQTjBo1CsdxuOeee2p9f12nTp0YNWpUA41KzkRdrQO1efDBB5k2bRpz5sxh7Nix9TwSOVt1lYEDBw7Qp08fdu7cSb9+/ao+RX/JkiVYlsXChQu54447DIxQTqUu5j8IAgYMGMALL7xAs2bNuP3222nXrh3btm3jt7/9LWEY8uijjzJx4kRDo5RTWbp0KUuXLgXg3XffZeXKlVx66aX07dsXgAsvvJCf/vSngF4PFqq6yIBeD0aU4V8wSC3eeuutcNSoUWG7du3CWCwW/t3f/V04YcKEE37rtnv37hAIO3bseE7nkcbnXDNQeZX2VF833HBDww1IzlhdrQPH0xX880ddZeDgwYPhpEmTwk6dOoWxWCxs3bp1OHjw4PDVV19tgFHI2aqL+c/lcuHPfvaz8Etf+lLYrFmz0HGc8DOf+Uw4aNCgcOXKlQ00Ejkbn/Y8Xn2+9XqwMNVFBvR6MJp0BV9ERERERESkAOhT9EVEREREREQKgBp8ERERERERkQKgBl9ERERERESkAKjBFxERERERESkAavBFRERERERECoAafBEREREREZECoAZfREREREREpACowRcREREREREpAGrwRURERERERAqAGnwREZHz2KhRo7Asiz179jTY9+zUqROdOnVqsO9X3S9/+Ussy6r6uvXWW43UcSZuu+22GjX/8pe/NF2SiIgUKDX4IiIi9WDEiBFYlsXPf/7zT33sTTfdhGVZ/Pa3v22AyupHZePdUM3r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", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "tidal.graphics.tidal_phase_probability(data.d, data.s, flood, ebb) " + "data": { + "text/plain": [ + "" ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" }, { - "cell_type": "code", - "execution_count": 12, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 12, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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iLkccNbDcMItVhciIiIiIhYxdKr/Aw88QCwWY9asWTz22GOZW/o1cDgcnHDCCXzxxRfNObyIiBxQGj76NXz4a9BWLSIiIiKyH80a+H/66adcdNFFHH744fts06NHDzZv3tzswppr6tSpXHzxxXTu3Bmv10vnzp0588wzef/99/doO2PGDEaPHk2bNm0oLCxk8ODBPP7447aa0iGHLujrzoeD/kzQ193qUsSmDiljnz8Br18HiWj2CxNbCQaDfPjhhwSDQatLERtTzsQMypkYzY4Za9bAv6qqim7duu23TSqVIhaLNauo5nrooYc45ZRTmDJlCmeffTY///nPOffcc6msrGTy5MmN2k6YMCHT9sILL+SWW24hFovx05/+lMsvv9zUuiW3eRMheu/4BG9C91EXYxxyxha9CS9cBOGqrNYl9uL1eunduzder/YrEeMoZ2IG5UyMZseMuZvzpA4dOrBy5cr9tlm0aBHdu5v3Cemrr77KPffcw+mnn85///tfSkpKGj0ej8cz/x8KhbjhhhtwuVxMnjyZY445BoBx48YxatQoXn/9dV5++WVdABAAfIkgA7a9bXUZYmNZydi6afD0WfW3+yvb/4VZaZl8Ph8DBgywugyxOeVMzKCcidHsmLFmfeI/atQo3n33XVasWLHXx7/44gs+/fRTzjrrrEMqrqlSqRR33HEHfr+fl156aY9BP4DH48n8/2uvvUZFRQVjx47NDPqh/h/4oYceAuBvf/ub8YVLXkg4vewq7EtCu/qLQbKWsR1L4V+nw9aF2SlMbCWRSLBr1y4SiYTVpYiNKWdiBuVMjGbHjDVr4H/nnXficrk4+eST+fvf/55Zy79o0SKefPJJzj33XEpKSrj99tuzWuy+zJgxg7Vr13LOOefQunVr3nvvPX73u9/xpz/9ifLy8j3aT5o0CYCzzz57j8dOOeUUCgsLKS8vJxrVmlmBGm8npg64lxpvJ6tLEZvKasaqt8Az34HVkw/9WGIrNTU1TJ06lZqaGqtLERtTzsQMypkYzY4Za9bAf8CAAbzxxhtEo1FuueUW/vWvf5FOpxk8eHBmrfx///tfevToke1696rh7gGdOnVi6NChfPe73+VXv/oVP/nJTxg+fDgjRoxgx44dmfbLli0DoF+/fnscy+1207t3bxKJBKtXr97na0ajUUKhUKM/QOa/Df8fDoeB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mvh7LBZj8+bNFBUV7fb7JPPU1tZSUVHBypUru/T1GyRzKWOSDsqZpINyJumgnEmqZVLGTNOkrq6O3r1773Zct5z4tx4Jaf3kf3u1tbVtxu2Mx+PB42l7dczW5RpiT/n5+V3+f3zJbMqYpINyJumgnEk6KGeSapmSsd3NW1t1yyscDB06FICFCxfu9PmqqioAhgwZkraaRERERERERFKhW078jznmGADeeecdYrFYm+fq6uqYNm0aPp+Pww8/3IryRERERERERJKmW078Bw0axIknnsiyZcv4wx/+0Oa52267jYaGBi6++GJycvbsdhliTx6Ph9tuu22HUztEkkUZk3RQziQdlDNJB+VMUs2OGTPM9q77b1OLFy9mzJgxbNiwgTPOOIPhw4fzySefMGXKFIYMGcL06dMpKiqyukwRERERERGRvdJtJ/4AK1eu5NZbb+Wtt96iurqasrIyzjzzTG677TYKCwutLk9ERERERERkr3Xrib+IiIiIiIiI3XXLc/xFREREREREugtN/EVERERERERsTBN/6XZWrVrF97//fXr37o3H46F///5ce+21bNmypUPfX11dzd/+9jfOOuss9tlnH3w+H36/n7Fjx/L444/vcItI6Z72Nmc7849//APDMDAMg7/97W9JrFYyVTJz9tFHH3HOOedQVlaGx+OhrKyME088kTfeeCMFlUumSFbGXnnlFY4//njKy8vx+XwMHDiQ8847jxkzZqSocskU//vf//jJT37CUUcdRX5+PoZh8H//93+deq1U/O4Ve0hGzjJ9DqBz/KVb2f5uDsOGDWPmzJlMmTKFoUOHMm3atHbv5vDnP/+ZH/7wh5SWlnLsscfSt29f1q9fzwsvvEAgEODss8/mf//7H4ZhpOmnkq4mGTnb3sqVKxk1ahTRaJT6+nomTZrEpZdemqKfQDJBMnP261//mltuuYXi4mJOPfVUysrK2LRpE7Nnz+aYY47hd7/7XYp/GumKkpWx66+/ngceeICioiLOPPNMiouLWbRoEa+88gqRSIS///3vXHzxxWn4iaQrOuCAA/jyyy/Jzc2lvLyc+fPnc+GFF/LPf/5zj14nFb97xT6SkbOMnwOYIt3IiSeeaALmo48+2ubx6667zgTMK664ot3XeP/9982XXnrJjEQibR5fu3atWVFRYQLmc889l9S6JbMkI2fbisVi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S9rbnO2KPvGXbSUrZ9XV1eZ1111n9u/f33S73WZhYaF5+umnmzNmzEjDTyFdWTIyFgqFzIceesg87LDDzLy8PNPpdJo9e/Y0J0yYYL799ttp+kmkq2pvv2rbTLX3XtbRvEr3k4ycZfocQJ/4i4iIiIiIiNiYruovIiIiIiIiYmOa+IuIiIiIiIjYmCb+IiIiIiIiIjamib+IiIiIiIiIjWniLyIiIiIiImJjmviLiIiIiIiI2Jgm/iIiIiIiIiI2pom/iIiIiIiIiI1p4i8iImJT/fv3p3///mnb3rJlyzAMg4kTJ6Ztm9uaOHEihmEkvn7zm99YUseeyM3NbVPzsmXLrC5JRERsSBN/ERERSanWCXm6JrXXXHMNt912G2PHjk3L9tavX4/T6eTqq6/e4++9+eabue2229h///1TUJmIiEicy+oCRERExB769OnDvHnz8Pv9ltZx7bXXpnWlw8svv0wsFuOss87a4++9+eabgfhqiS+//DLZpYmIiACa+IuIiEiSuN1uhg0bZnUZaffiiy9SVFTEuHHjrC5FRERkp7TUX0REJM1mzJiBYRicffbZuxwzePBgPB4PmzdvbvP422+/zSmnnEJxcTEej4dBgwZxww03UFNT0+HtNzc3c++99zJq1Ciys7PJz8/nqKOO4j//+c8uv2fmzJl85zvfoU+fPng8HsrKyjjxxBP573//mxizs3P8DcPgqaeeAmDAgAGJc9lbP5E//PDDcTqduzwN4P7778cwDB544IEO/3y78q1vfQvDMAiHw9x5550MGjQIr9fL0KFDmTRpUmLcH/7wB0aOHInP56O8vJzbb7+dWCy209cMBAJMnjyZ0047DafTCUAwGOShhx7iwAMPpKCggOzsbCoqKjjttNN499139/rnEBER2VP6xF9ERCTNjjjiCIYMGcJrr71GdXU1RUVFbZ6fPn06ixYt4pxzzqGwsDDx+J133sltt91GUVEREyZMoKSkhK+++or777+fN954g+nTp7e7zD4UCnHiiSfy0UcfMWLECH70ox/R2NjIc889xwUXXMDs2bP57W9/2+Z7Jk2axA9/+EOcTienn346gwcPZsOGDXz66af88Y9/5Nvf/vYut3fbbbfx0ksv8eWXX3LNNdfQo0cPgMSfV111FZdccgmTJk3i7rvvbvO9pmny17/+FY/HwyWXXNJeWzvs/PPP55NPPuGUU07B7Xbzv//9j8svv5ysrCxmzZrFM888w6mnnsrxxx/Pq6++yh133IHP5+MXv/jFDq/1+uuvEwqF2hzEufjii/nvf//LyJEjufjii/H5fKxZs4apU6fy9ttvc8IJJyTtZxEREekQU0RERNLu7rvvNgHzscce2+G5K664wgTMV155JfHY5MmTTcA88sgjzZqamjbjn3zySRMwr7nmmjaP9+vXz+zXr99Ot3vqqaea4XA48fi6devMiooKEzA/+uijxONz5841XS6XWVBQYM6ZM2eHWlesWJH476VLl5qAeckll7QZc8kll5iAuXTp0h2+v7m52SwuLjZLS0vb1GOapvn++++bgPnd7353h+/bmd1txzRN8+ijjzYB8+CDDza3bNmSeHzx4sWm2+02/X6/2b9/f3PVqlWJ52pqaszi4mKzuLh4h/pM0zTPPfdcMycnx2xqakqMNwzDHD16tBmJRHYYv2nTpk7VLiIisje01F9ERMQCF110EQ6HI7EMvlUwGOTZZ5+lpKSEk08+OfH4o48+CsBf//rXHT7VnzhxIgcccADPPPNMu9t94oknEkvnXa6tC/969erFLbfckhjT6k9/+hORSIRbbrmFfffdd4fXq6io6MBPu2sej4fvfe97rFu3jldeeaXNc3/5y18AuPLKK/dqG9v77W9/m1hxADBw4EDGjh1LIBDglltuoU+fPonn/H4/p512Gps2bWL16tVtXqe5uZm33nqLk08+Ga/XC4DD4cA0TTweDw7HjrtZ26/uEBERSQct9RcREbFARUUFxx57LO+99x7ffPMNI0aMAOCVV16hpqaG6667rs3EfMaMGbjd7jbn1G8rFAqxcePGnZ460Kquro7FixdTXl7OkCFDdnj++OOPB+Dzzz9PPPbxxx8DtDkIkWxXXnkl999/P3/5y18SS+Y3bNjASy+9xIgRIzjqqKOSur3Ro0fv8Fjv3r3bfW7VqlX069cv8fg777xDfX19m6v55+Xlcdppp/Hqq69y4IEHcs455zB27FgOO+wwsrOzk/pziIiIdJQm/iIiIha55JJLeO+993jqqacS59W3rgDY/pz26upqIpEId9xxx25fs76+fpcT/0AgAEBpaelOny8rK2szDkhcNHDbT8GTbeDAgYwfP563336bpUuXMmDAAJ588klCoRBXXHFF0re3s+sgtB5k2d1z4XC4zeMvvvgiWVlZTJgwoc3jzz77LL/97W955plnuPXWWwHwer18+9vf5v7776dnz55J+TlEREQ6Skv9RURELHL22WeTl5fHP//5T6LRKBs2bODtt99m//33Z//9928z1u/3U1BQgGmau/3a9hPp7bVOatetW7fT59euXdtmHGy9CN/2y9yT7aqrrsI0TSZNmpT40+fzcdFFF6V0u50VjUZ59dVXOfbYY3c4WODz+bj99ttZuHAhK1as4J///Cdjx47l6aef5txzz7WoYhER6c408RcREbFIdnY25557LmvWrOG9997jX//6F5FIZKdXsD/88MPZsmULc+fO7fT28vLyGDRoEKtXr6aqqmqH56dMmQLAQQcd1Ga7EL+NYGe13uYuGo3ucsyECRPo168fTzzxBG+++SaLFy/m29/+NgUFBZ3ebip9+OGHVFdXt1nmvzMVFRVceOGFvP322wwePJgPP/xwh1s0ioiIpJom/iIiIhZqvef9008/zdNPP43L5eLCCy/cYdx1110HwGWXXcaaNWt2eL6hoSFxPv7ufP/738c0TW644YY2E/FNmzZx1113Jca0+uEPf4jL5eLOO+9k/vz5O7zeqlWr2t1m66kHK1eu3OUYh8PBFVdcwfr167n00kuB5F/UL5leeOEFHA4HZ5xxRpvHN27cyCeffLLD+IaGBurq6nA6nW2u3SAiIpIO+s0jIiJioaOOOooBAwbw3HPPEQ6HOe200ygpKdlh3HHHHcdvfvMbbrrpJgYPHswpp5zCgAEDqK+vZ/ny5VRWVjJ27Fjeeuut3W7v+uuv58033+Tll19m//3355RTTqGxsZHnnnuODRs28POf/5yxY8cmxo8YMYI//vGPXHnllRxwwAGcfvrpDB48mE2bNvHpp5/i9/sTKwV25bjjjuO+++7jsssu45xzziE3N5cePXrw4x//uM24H/zgB9x+++2sXbuW/fbbL7HaoCt66aWXGDNmDL169Wrz+OrVqzn88MMZPnw4Bx10EBUVFdTW1vLaa6+xbt06fvzjH5Ofn29R1SIi0l1p4i8iImIhwzC4+OKLExft29ky/1a/+MUvOPLII3n00UeZOnUqL7/8Mn6/nz59+nD55Zfz3e9+t93tZWVl8e677/Lggw/yzDPP8Nhjj+Fyudh///15+OGHueCCC3b4nssuu4yRI0dy//3388EHH/DSSy9RXFzMfvvtl/h0fnfGjx/PAw88wKRJk3jooYcIhUL069dvh4l/SUkJEyZM4MUXX+zSn/Z/+umnrFq1KrEKY1v9+/fnjjvu4IMPPmDKlCls2rSJwsJChg4dym9+8xvOP/98CyoWEZHuzjBN07S6CBEREZFYLMagQYPYuHEja9as2eNPxidOnMhTTz3F0qVL6d+/f2qKBG6++WbuvfdelixZwoABA5LymumqXUREuied4y8iIiJdwn//+1+WLVvGxRdfvFfL4QcMGIBhGPzmN79JYnVbvfjii+y///5JmfTn5uZiGEbiNo4iIiKpoKX+IiIiYqlf//rXbN68mccff5zc3FxuuummTr3OmWee2ebT8m2vVZBM8+bNS9pr3XzzzYRCocTfW2+fKCIikkxa6i8iIiKWMgwDt9vNvvvuywMPPMCxxx5rdUkiIiK2ok/8RURExFL6DEJERCS1dI6/iIiIiIiIiI1p4i8iIiIiIiJiY5r4i4iIiIiIiNiYJv4iIiIiIiIiNqaJv4iIiIiIiIiNaeIvIiIiIiIiYmOa+IuIiIiIiIjYmCb+IiIiIiIiIjamib+IiIiIiIiIjf0/1qhXxg7oJ6IAAAAASUVORK5CYII=", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "tidal.graphics.tidal_phase_exceedance(data.d, data.s, flood, ebb)" + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAA/4AAAKxCAYAAADq5XfAAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/NK7nSAAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOzdd3xb1f3/8ZeWJXlm70kmJQ2EQIAwEsJsKDuMlM0PKC2ULlpK2QRKW76ldFBa2rBLmYWwCSNRlklIyGj23tOJLXloS78/jEVMluPo3itdv5+PRx4Q6+jq45O3r3WuzjnXkU6n04iIiIiIiIiILTmtLkBEREREREREjKOBv4iIiIiIiIiNaeAvIiIiIiIiYmMa+IuIiIiIiIjYmAb+IiIiIiIiIjamgb+IiIiIiIiIjWngLyIiIiIiImJjGviLiIiIiIiI2Jjb6gLsIpVKsXnzZkpKSnA4HFaXIyIiIiIiIjaXTqeprq6mS5cuOJ37/lxfA/8s2bx5M927d7e6DBEREREREWlhNmzYQLdu3fb5uAb+WVJSUgLUd3hpaanF1Ug2hUIh5syZw9ChQ/VvK4ZQxsQMypmYQTkTMyhnYrR8ylgoFKJ79+6Z8ei+ONLpdNqkmmwtFApRVlZGMBjM+XCIiIiIiIhI/mvqOFSb+4mIiIiIiIjYmAb+IgcQCoX45JNPCIVCVpciNqWMiRmUMzGDciZmUM7EaHbMmAb+Igfg8Xjo0qULHo/H6lLEppQxMYNyJmZQzsQMypkYzY4Z0xr/LNEafxERERERETGT1viLZEkymSQYDJJMJq0uRWxKGRMzKGdiBuVMzKCcidHsmDEN/EUOoLq6msmTJ1NdXW11KWJTypiYQTkTMyhnYgblTIxmx4xpqn+WaKq/fSUSCaqrqykpKcHtdltdjtiQMiZmUM7EDMqZmKEl5ywej9vqU+hclUgkqK2tpaioyPSMuVyug9pboKnjUA38s0QDfxERERERMUIoFKKiooJoNGp1KWICr9dLu3btmjSubOo4tGVdIhNphkgkwtq1a+nVqxc+n8/qcsSGlDExg3ImZlDOxAwtLWehUIhNmzZRXFxMu3bt8Hg8OBwOq8uytVQqRSwWo6CgAKfTvNXx6XSaeDxOMBhk06ZNAFn7UFkDf5EDiMVirFu3ji5durSIXy5iPmVMzKCciRmUMzFDS8tZRUUFxcXFdOvWTQN+kySTSeLxOF6vF5fLZepr+/1+SkpK2LhxIxUVFVkb+Guqf5Zoqr+IiIiIiGRTPB5n5cqVdO3aVWOMFqZhpkffvn33u+Zft/MTERERERHJYw0b+R3MZm9iDw3/5tnazFEDf5EDCIVCTJo0iVAoZHUpYlPKmJhBORMzKGdihpaYM03xN1cymSQUCll6B4Vs/5tr4C9yAB6Ph7Zt2+pKqxhGGRMzKGdiBuVMzKCcidEcDgdut9tWF1y0xj9LtMZfRERERESyKRKJsGbNGnr37t0iNjKUrzX1315r/EWyJJlMUlNTY+lUH7E3ZUzMoJyJGZQzMYNyJk1x//3343A4mDx5cpOfM3LkSBwOB+l0mmQyiZ0+I9ft/EQOoLq6mkAgwIgRI2jVqpXV5YgNKWNiBuVMzKCciRmUs8Z6/eo9q0vYr7W/PScrx2nKtPu5c+dy1FFHHfJrNVxcKi4uxu22x5DZHt+FiIGKioo48cQTKSoqsroUsSllTMygnIkZlDMxg3LWst133337fKxTp05ZeQ2n00lRURFOp30myGvgL3IAHo+Hdu3aWV2G2JgyJmZQzsQMypmYQTlr2e6//37DX8PpdNpq0A9a4y9yQJFIhBUrVhCJRKwuRWxKGRMzKGdiBuVMzKCcycF67rnnGDJkCH6/nw4dOnD99dezdevWfbYPh8P86le/onfv3ni9Xvr06cMDDzxALBYzsersysmB/+uvv86PfvQjTj75ZEpLS3E4HFx55ZX7fc6MGTMYPXo0bdq0obCwkMGDB/P444/vd9OP5557jmHDhlFcXExZWRkjR47k3Xffzfa3I3kuGo2yYsUKotGo1aWITSljYgblTMygnIkZlDM5GH/84x+5+eabOfLII/nJT37CgAEDeOaZZxg+fDg7duzY63Muu+wynnvuOc455xxuvfVWHA4H999/PxdffHHebviXk1P9H3roIebPn09xcTHdunVj6dKl+20/YcIELr74Ynw+H5dddhlt2rThnXfe4ac//SnTp0/ntdde2+M5t99+O3/4wx/o1q0bN954I7FYjJdffplzzz2Xv/zlL9x6661GfXuSZ8rKyhg9erTVZYiNKWNiBuVMzKCciRmUs5ZtX1P9fT4fv/rVr/b4+gcffMDMmTMZMmRI5ms//elPefzxx/nVr37F+PHj93jO0qVLWbx4Ma1btwbg4Ycf5tRTT+Xdd9/lxRdf5KqrrsrON2MiRzoHL1lMmjSJbt260bdvXwKBAKeeeipXXHEFL7744h5tQ6EQffr0IRQKMX36dI455higfgrQqFGjKC8v5z//+Q+XX3555jkzZszgxBNPpE+fPnzxxReZf9C1a9cydOhQamtrWbp0Kb169WpyzU29f6KIiIiIiEhTNOVe7trVv15ZWRlVVVWZv99///088MADXH/99XsM7oPBID179iQajVJVVYXX6wXqb+cXCAR4/vnn9xjcT548mVNPPZWRI0cyadKkrHxP+9OUf3to+jg0J6f6n3rqqfTr169Jt2x47bXXqKioYOzYsZlBP9Rf8XnooYcA+Nvf/tboOU8++SQAd999d2bQD9CrVy9uueUWotEoTz/9dDa+FbGB6upqpkyZQnV1tdWliE0pY2IG5UzMoJyJGZSzli2dTu/1z+6D/t2NGDFij6+VlZVx1FFHEYlEWLJkyR6Pn3TSSVRXVzdaNn7yySfjdruZO3du1r4XM+XkwP9gNFxtOfvss/d47JRTTqGwsJDy8vJGa4D295zvfOc7jdqIuFwuSkpKcLlcVpciNqWMiRmUMzGDciZmUM7kYHTs2HGvX2+49V8wGNzrc76ZL5fLRdu2bQmFQtkv0gR5P/BftmwZAP369dvjMbfbTe/evUkkEqxevRqA2tpaNm3aRHFx8V7v89hwnOXLl+/3daPRKKFQqNEfoFEQQqEQ4XAYgGQySVVVFfF4HKifurF7yKqrq6mrqwMglUo1atswBaVBTU0NtbW1AJmrWw07TMZiMaqqqjKbTtTW1h5U25qamszrVFVVZS6YxONxqqqqSKVSANTV1TW6yhoMBjM7qza0bbhCFg6H9+iXhraJROKAbb/Zh4lE4oB9mM3+TqVS9O/fn8LCwkPqw4a2DX34zbbBYLBZ/X0wfdjQtqEPs9Xfe+vD3dvuntmGtg19eKj5NiKz2ervvfXh3to2bEgai8V0jiD/zhHZyqzR5wiv18uQIUNwOBw6RxxkH1p9jti9ba6fI1KpFEOGDKGwsFDniGb2t95HHPgcEYvFOOKIIygsLLT9OSIUCmXqTaVSjT6BTiaTmfpyWUP9yWSyUf2JRCJTfyqVIpFI7Ldtg2+2PVC/bN68ea9tG3b1LykpydTZ0K6iogKfz9doI79YLMbOnTspLS0lnU7vtf7da2h4nUNpm06nG2Vgf5k9kLwf+DecFMrKyvb6eMPXG04IB9t+Xx555BHKysoyf7p37w7ArFmzMm3mzJnDihUrgPof6kAgkHn9DRs2MH369EzbuXPnZi5ixGIxAoEAO3fuBGDTpk1MnTo103b+/PmZKSmJRIJAIJDZkXLr1q0EAoFMOBYuXMjChQuB+uAEAgG2zv8UgB07dhAIBDLBW7JkCfPnz8+8ztSpU9m0aRMAO3fuJBAIZE6cy5YtazTNZfr06WzYsAGo7+NAIJA5aa1YsYI5c+Zk2paXl7N27Vqg/qQfCAQyAV6zZk2jPpw1a1ajizaBQCBzcly3bh3l5eV77e9oNEogEKCyshKAjRs3Mm3atEzbefPmZTaNjMfjBAIBKioqANiyZQtTpkzJtF2wYAH/+9//MieKQCDA9u3bAdi2bRuBQCDzw7lo0aJMfwP1/f3VSaWioqJRfy9dupR58+Y16u+NGzcCUFlZSSAQyPwgL1++nC+//DLTdsaMGaxfv75Rfzf88ly1ahWzZ8/OtP38888z/V1TU9Oov9euXcvnn3+eaTt79mxWrVoF1P/S2j2z69evZ8aMGZm2X375ZeYC2d76e/fM7t7fDZlt6O+GzDZYuHAhixYtAupPjIFAgG3btgGwfft2AoFA5uS4ePFiFixYkHnulClT2LJlS6P+bngT8c3+njZt2j77e2+ZXbduHVD/CzkQCGTeVKxevXqPzK5Zs6ZRfzf88l+7du1eM9vwhidnzhFfZVbniKafIxYvXgyQ0+eI2tpaIpEIK1eu1DmC/DpHQI69jzjAOSISiZBKpXSO+Eq+nCPy7X3Eli1bSKVStj9HfPHFF5mfx2g02mjQ13Bez3UN9UcikczPNdR/fw39m0wmqampafS9NmQSyPTX7m0bfm4ikUijx2tqahoNhj/77LPMv3k0GqW2tpZgMMi8efPw+XwcdthhQOOLApMnT860bfDJJ5+QSCQYMmQIqVSKmpqaTPtYLNbo36auri7zb5NOp6mpqcn87Mbj8UZtw+Fwo3/H3dsmk0m++OKL/Z4jGvJ9IDm5ud/uGjZR2Nfmfv3792fFihWsWLGCvn377vH48OHDKS8vp7y8nOOPP57NmzfTtWtXunbtmvlh3V08HqegoACv17vfH6RoNNooUKFQiO7du7Nhwwa6deuW+ZrH48Hv95NMJqmurqaoqAiPx0MkEiEajWYuNFRXV+NyuSgsLCSVShEKhTJto9Eo4XCYVq1aAfVhcDgcFBUVkU6nCQaDFBYWUlBQQCwWo66ujrKyMhwORyasmbYrZ1H42uUUXPIUsZ4j9mibTqcpLi4G6i9++P1+vF4v8Xic2tpaSktLcTqd1NXVkUwmM1fIgsEgXq8Xn8+XadswBSscDhOPxzObTYRCIQoKCvD5fCQSCWpqavbb9pt9WFxcjNvt3m8fZrO/N2/ezBdffMGIESMyG2fsr7/31YcNbRv68Jttg8EgPp/voPv7YPqwoW1DH2arv/fWh5FIJNN298w2tG3ow0PNtxGZzVZ/760PY7HYHm0b3vAcffTRdOrUydpzhAX9ne/niGxl1uhzRMNA7Pjjj8fv9+sckUfniJx6H3GAtsFgMPM7E9A5Io/OEfn0PmLTpk18+eWXjBgxAr/fb+tzxM6dO6moqOCwww6joKCAdDqdmYKeTCZxOBwc9usPyGVrHhmNw+HIDJIb6k8kEjidTpxOJ6lUilQqhcvl2mdbj8cDfP2JfkPbVCq113558MEHeeCBB/B4PHz++eccffTRmba33347jz/+ONdeey3jx4/H6XSSTqcZOXIkU6ZMoV+/fkycOJEuXbpQUFBAJBJh5MiRzJw5k+eee46rrrqKZDK5R/1utztTQ0P96XS6WW1jsRirV6+mXbt2tG/ffp+ZjcfjdOjQ4YCb++X9wP/YY49l9uzZzJ49m6FDh+7x+KBBg1i0aBGLFy/m8MMPp7a2luLiYoqLi/e6IUhFRQXt27enQ4cOTb56Anm0q//mufDUSHB54bIXoP9ZVleU8+LxODt37qRt27aZE45INiljYgblTMygnIkZWlLOtKv/1xo2fr/vvvv22eaCCy7gqKOOAr7e1f/8889n4sSJXHrppXTu3Jlp06Yxbdo0evXqxcyZM+nQoUPm+Q27+p933nl88cUXXHzxxRQUFDBhwgRWrVrFOeecwzvvvNOkTegPVbZ39XcbUaSZBgwYwOzZs1m+fPkeA/9EIsGaNWtwu92ZKRxFRUV07dqVTZs2sWXLFjp37tzoOQ1TvPr372/ON2CVZBReuRIufQEG7LnJoXzN4/HsdT8IkWxRxsQMypmYQTkTMyhnLdsDDzywz8d69eqVGfg3+MlPfsKFF17IH//4R1555RWKi4u59tpr+c1vftNo0L+7V199lXHjxvHvf/87M2P8/vvv51e/+pUpg34j5P3Af9SoUfz73//mww8/ZOzYsY0emzJlCnV1dZxyyimZezM2POeFF17gww8/5Lrrrmv0nA8++CDTxvaSMXj1KrjkORg42upqclY0GmXTpk107dq1UY5EskUZEzMoZ2IG5UzMoJw1lq1P1HPdwU5Uv//++7n//vszf7/mmmsO+JzJkycD9ev977nnHh588EGczrzfFg+wweZ+Y8aMoV27drz88suNNiKJRCLcfffdAPzgBz9o9Jybb74ZgIcffjiziQjUb1DyxBNP4PV697ggYFvJGLx6NSx51+pKclY4HGbRokWNNiMRySZlTMygnIkZlDMxg3ImRkulUoTD4by4a0JT5eQa/7feeou33noLqN9d9qOPPuKwww7j5JNPBqBdu3b83//9X6P2Y8aMwefzcfnll9OmTRvefvttli1bxpgxY3j11Vf3mJLx85//nMcee4xu3boxZswYYrEYr7zyCjt37uQvf/kLt95660HVnHdr/L/J6YExT8O3zjO9JBERERER2VNT13mL/bSINf7z5s3jueeea/S11atXZ27H0rNnz0YD/wsuuIBAIMDDDz/MG2+8QSQSoW/fvjz22GPcdttte12H8Yc//IHBgwfz17/+laeeegqn08nRRx/NL37xC7773e8a+w3molQcXr8OLh4PR1xgdTUiIiIiIiKSJTn5iX8+yvtP/Bs43XDxv+CIC00rKdfV1NQwf/58jjzyyMytM0SySRkTMyhnYgblTMzQknKmT/ytkUwmCYfD+P3+zG0CzZbtT/zzfo2/ZFkqAW/cAAvfsLqSnOFwOPB6vXm7g6fkPmVMzKCciRmUMzGDciZmsFu+cnKqv1gslYA3boR0Gr49xupqLFdUVMQxxxxjdRliY8qYmEE5EzMoZ2IG5UyM5nK5KCoqsrqMrNIn/rJ36ST89yZY8KrVlVgunU4Tj8cP+hYiIk2ljIkZlDMxg3ImZlDOxGjpdJpUKmWrjGngL/uWTsKb34f5L1tdiaWCwSDvv/8+wWDQ6lLEppQxMYNyJmZQzsQMypkYLZlMEgqFSCaTVpeSNRr4y/6lU/DWD2Def6yuxDKFhYUcc8wxFBYWWl2K2JQyJmZQzsQMypmYQTkTozmdTgoLC3E67TNc1hp/ObB0Cib8sP6/Q66wuhrTFRQU0LVrV6vLEBtTxsQMypmYQTkTMyhnYjSn00lBQYHVZWSVfS5hiLHSKXj7VvjyBasrMV0sFmP9+vXEYjGrSxGbUsbEDMqZmEE5EzMoZ2K0VCpFNBollUpZXUrWaOAvTZdOwds/gjnPWV2Jqerq6pg7dy51dXVWlyI2pYyJGZQzMYNyJmZQzsRoqVSKcDhsq4G/I22nrQotFAqFKCsrIxgMUlpaanU5+7Z5Ljw18hAP4oDv/hGOuS4bFeW8dDpNOp3G4XDY7n6ekhuUMTGDciZmUM7EDC0pZ5FIhDVr1tC7d298Pp/V5bQYuw+RrcpYU//tmzoO1Sf+0gxpePen8MV4qwsxhcPhwOl02v4Xi1hHGRMzKGdiBuVMzKCcyYFce+21OBwO1q5d26znN1xUymbGnn32WRwOB88++2zWjnkwtLmfNFMa3vt5/fT/YTdaXYyhamtrWbhwIYMGDaKoqMjqcsSGlDExg3ImZlDOxAzK2TfcX2Z1Bft3f3Zuu3igQfgzzzzDtddem5XXSiaThMNh/H4/LpcrK8e0mgb+cgjS8P7tkE7DcTdZXYyIiIiIiNjcfffdt9evH3XUUeYWkmc08JdD98Ev6j/5P/5mqysxRFFREccdd5zVZYiNKWNiBuVMzKCciRmUs5bt/vvvN/w1XC4XxcXFhr+OmbTGX7Ljwzug/G9WV2GIdDpNKpVC+2CKUZQxMYNyJmZQzsQMypkcildeeYWTTz6ZsrIy/H4/gwYN4je/+Q2RSCTTpmEDyXQ6zezZs7nooovo0KEDXq+Xnj178oMf/IDNmzfv9fgrV67kkksuoXXr1hQVFTF8+HDeffdds769fdLAX7Lnozthxl+triLrgsEg77zzDsFgdtYniXyTMiZmUM7EDMqZmEE5k+a64447uPzyy1m2bBlXXHEFt956K+l0mrvuuoszzzyTWCwG1K/xDwaDvPnmmwwfPpz33nuPM844g5/97Gf079+fv//97xxzzDGsXr260fFXrFjB8ccfz+uvv84JJ5zAj3/8Y7p168YFF1zAf//7Xyu+5QxN9ZfsmnhX/bT/E2+zupKsKSwsZMiQIRQWFlpditiUMiZmUM7EDMqZmEE5a9n2NtW/V69eB9zYb/r06fz+97+nZ8+ezJo1iw4dOgDwyCOPcP755/P+++/z6KOPctddd+F0Okkmk9x4442kUimmTJnC8OHDM8d65JFH+PWvf833v/99Pv7448zXb7nlFnbu3Mnjjz/Oj3/848zXJ0yYwAUXXHBI3/eh0sBfsu/je+oH/yf9xOpKsqKgoIAePXpYXYbYmDImZlDOxAzKmZhBOWvZHnjggT2+NmLEiAMO/J955hkA7r777sygH8DtdvPYY4/x4YcfMn78+MzA/4MPPmDXrl1cccUVjQb9ALfffjv/+Mc/+OSTT1i3bh09e/Zk48aNfPzxx/Tu3Ztbb721Ufvzzz+fESNGEAgEmvldHzpN9RdjfHIfTH3M6iqyIhaLsWnTpszUH5FsU8bEDMqZmEE5EzMoZy3b7uvvG/5Mnjz5gM+bO3cuAKeeeuoejw0YMIBu3bqxZs0aqqqqSKVSzJ49e5/tPR4PI0aMaHTchv+edNJJe70F4MiRI5v0/RlFA38xzqcPwJT/s7qKQ1ZXV8fs2bOpq6uzuhSxKWVMzKCciRmUMzGDcibN0bAnRKdOnfb6eOfOnTPtUqkUu3btanL73f/bsWPHvbbf13HMoqn+YqzPxtVP+x/xS6srabaysjJGjx6N260fFzGGMiZmUM7EDMqZmEE5k+YoKysDYOvWrfTp02ePx7ds2ZJp53K5aNeuXab93uzefvf/btu2ba/t93Ucs+gTfzHepIdh8m+trqLZHA4HHo8Hh8NhdSliU8qYmEE5EzMoZ2IG5UyaY8iQIQB7XRawcuVKNm7cSO/evWnVqhUOh4Ojjz56n+0TiQTTpk0DyLRrOP60adNIJpN7PKcpyxGMpIG/mGPyIzDpN1ZX0Sy1tbXMnj2b2tpaq0sRm1LGxAzKmZhBORMzKGfSHNdffz0ADz30EDt27Mh8PZlMcvvtt5NKpfh//+//Zb52xhln0KZNG/7zn//w+eefNzrW448/zurVqzn99NMzG01269aNM844gzVr1vDXvza+xfmECRMs3dgPNNVfzBT4HaTTMOouqys5KOl0mmg0SjqdtroUsSllTMygnIkZlDMxg3ImzTF8+HB++ctf8vvf/55BgwYxZswYioqK+OCDD1i4cCEnnXQSv/jFLzLti4qK+Ne//sVll13GiBEjuOSSS+jRowdz5sxh4sSJdOrUiX/84x+NXuOJJ57ghBNO4Cc/+QkTJ07kyCOPZOXKlbz55puce+65vPPOO2Z/2xka+Iu5pvy+fs3/afdYXUmTFRcXc+KJJ1pdhtiYMiZmUM7EDMqZmEE5k+b63e9+x5AhQ/jrX//K888/Tzwep0+fPjz00EP8/Oc/p6CgAACXy0VxcTEXXngh06dP5ze/+Q0fffQRwWCQTp06cfPNN3PPPffQpUuXRsfv168fn3/+Ob/61a/45JNPmDx5MoMHD+att95ix44dlg78HWldKsuKUChEWVkZwWCQ0tJSq8vZt81z4amRVlcBJ/0MTr/P6ipERERERHJWJBJhzZo19O7dG5/PZ3U5YqKm/ts3dRyqNf5ijWmPwcf3Wl1Fk1RVVfHOO+9QVVVldSliU8qYmEE5EzMoZ2IG5UyMlkgkqKqqIpFIWF1K1mjgL9aZ/ieYeLfVVRyQ3+/niCOOwO/3W12K2JQyJmZQzsQMypmYQTkTozmdTvx+P06nfYbLWuMv1prxl/oN/8562OpK9snr9XLYYYdZXYbYmDImZlDOxAzKmZhBOROjOZ1OvF6v1WVklX0uYUj+Kv8rfHin1VXsUzweZ+vWrcTjcatLEZtSxsQMypmYQTkTMyhnYrRUKkU8HieVSlldStZo4C+54fO/wQd3WF3FXtXW1jJz5kzdK1YMo4yJGZQzMYNyJmZQzsRoqVSK2tpaWw38tat/lmhX/ywZdhOMftTqKhpJpVLEYjEKCgpstc5HcocyJmZQzsQMypmYoSXlTLv6WyOdTpNOp3E4HDgcDktqyPau/lrjL7ll1lOQTsHo/wOLfsi+yel06kQrhlLGxAzKmZhBORMzKGdiNCsH/Eax9yUyyU9f/Ave+1n9pn85oK6ujrlz51JXV2d1KWJTypiYQTkTMyhnYoaWmDNN0jZXMpmkrq6OZDJpWQ3Z/jfXwF9y0+yn4d2f5MTgP5lMUl1dbekPvtibMiZmUM7EDMqZmKEl5czlcgFoI0MLWJ2vhn/zhgwcKq3xzxKt8TfI0VfDuX/OmWn/IiIiIiJmWr16NR6Ph27dutlu+rnsXTqdZuPGjcTj8QPeulJr/MUevny+fs3/uX8Bm2/eIiIiIiLyTe3atWPTpk1s3LiRsrIyPB6PLgDYVDqdJh6PEwwGqampoWvXrlk7tgb+kvvmvlg/5f+8v1oy+A8Gg0yfPp0TTzyRsrIy019f7E8ZEzMoZ2IG5UzM0NJy1vApbkVFBZs2bbK4mpYhlUoRjUbxer2W3DnC6/XStWvXrM4k18Bf8sO8f9d/8n/+30wf/Hu9Xvr164fX6zX1daXlUMbEDMqZmEE5EzO0xJyVlpZSWlpKPB63fO15SxCNRtmyZQudO3c2PWculwuPx5P142qNf5Zojb9JBl8GF/xd0/5FRERERKTFa+o4VKMnyS8LXoE3vw8p8650xuNxKioqtJuqGEYZEzMoZ2IG5UzMoJyJ0eyYMQ38Jf/871X4702mDf5ra2uZPn06tbW1pryetDzKmJhBORMzKGdiBuVMjGbHjGmqf5Zoqr8FjrgILv4XOLNzb8t9SSaThMNh/H5/1u6jKbI7ZUzMoJyJGZQzMYNyJkbLp4zpdn5if4v+W7/h38XjwWVclF0uF8XFxYYdX0QZEzMoZ2IG5UzMoJyJ0eyYMU31l/y2+C14/TpIJgx7iXA4zIIFCwiHw4a9hrRsypiYQTkTMyhnYgblTIxmx4xp4C/5b8nb8Pq1kDRm8414PM7OnTtttbmH5BZlTMygnIkZlDMxg3ImRrNjxrTGP0u0xj8HDPwuXPIsuLJ/30sREREREZFco9v5Scuz9F149WpIxKyuREREREREJGdo4C/2sux9ePWqrA7+Q6EQH330EaFQKGvHFNmdMiZmUM7EDMqZmEE5E6PZMWMa+Iv9LP8QXrkSEtGsHK6goICePXtSUFCQleOJfJMyJmZQzsQMypmYQTkTo9kxY1rjnyVa45+D+p4Bl/8b3F6rKxEREREREck6rfEXWfkx/GcsxCOHdJhEIkFlZSWJhHG3DJSWTRkTMyhnYgblTMygnInR7JgxDfzF3lZ9Ci8f2uC/pqaGKVOmUFNTk8XCRL6mjIkZlDMxg3ImZlDOxGh2zJim+meJpvrnuMNOhbH/AY//oJ+aTCapqamhuLgYl8tlQHHS0iljYgblTMygnIkZlDMxWj5lTFP9RXa3ehK8dBnE6g76qS6Xi7Kyspz/oZf8pYyJGZQzMYNyJmZQzsRodsyYBv7ScqwJwEuXHvTgPxwOs3jxYsLhsEGFSUunjIkZlDMxg3ImZlDOxGh2zJgG/tKyrJ0K/74EYrVNfko8Hmfz5s3E43EDC5OWTBkTMyhnYgblTMygnInR7JgxrfHPEq3xzzM9T4QrXoOCIqsrERERERERaRat8RfZn3XT4cUxELXPTp0iIiIiIiJ7o4G/tFzrZ8CLF0O0er/NQqEQn3zyCaFQyKTCpKVRxsQMypmYQTkTMyhnYjQ7ZkwDf2nZNnxeP/iP7PuH2uPx0LlzZzwej4mFSUuijIkZlDMxg3ImZlDOxGh2zJjW+GeJ1vjnuW7HwpX/BV8O/9uJiIiIiIjsRmv8RQ7Gxi/ghQshEtzjoWQySSgUIplMWlCYtATKmJhBORMzKGdiBuVMjGbHjGngL9Jg02x4/gIIVzX6cnV1NZMmTaK6ev97AYg0lzImZlDOxAzKmZhBOROj2TFjmuqfJZrqbyNdhsBVb4G/FQCJRIJQKERpaSlut9vS0sSelDExg3ImZlDOxAzKmRgtnzKmqf4izbV5Ljx/PoQrAXC73bRp0ybnf+glfyljYgblTMygnIkZlDMxmh0zpoG/yN5smQfPnQd1u4hEIixbtoxIJGJ1VWJTypiYQTkTMyhnYgblTIxmx4xp4C+yL1sXwPPnEQ3uYM2aNUSjUasrEpuKRqPKmBhOORMzKGdiBuVMjGbHjGmNf5Zojb+NdTgCrnoTSjpaXYmIiIiIiEiG1viLZMv2RfD0mbBrtdWViIiIiIiIHDQN/EUOoNrbhckdrqf6hath6/+sLkdsqLq6msmTJ9vqljGSe5QzMYNyJmZQzsRodsyYBv4iB+BKRWlduxJXzWZ45hxYO93qksRmXC4XrVu3xuVyWV2K2JhyJmZQzsQMypkYzY4Z0xr/LNEa/xbE7YMxz8DA0VZXIiIiIiIiLZjW+ItkSdLhpq6gHUnHV/fxTETglSth7r+tLUxsI5lMUldXRzKZtLoUsTHlTMygnIkZlDMxmh0zpoG/yAFU+7ry8RGPUe3r+vUX00mYcAtM/7N1hYltVFdX8/HHH9tqHZnkHuVMzKCciRmUMzGaHTOmqf5Zoqn+9hV3+qgs6kPr2lV4UpE9G5z4YzjjQfMLE9uIx+NUVlbSunVrPB6P1eWITSlnYgblTMygnInR8iljTR2Huk2sSSQveVIROlQv2neD6X+Cup1w7p/BaZ8NQMQ8Ho+HDh06WF2G2JxyJmZQzsQMypkYzY4Z01R/kQOIuEtZ2f5sIu79zOSY+yK8ejXE9zIjQOQAIpEIK1euJBJRfsQ4ypmYQTkTMyhnYjQ7ZkwDf5EDiHpasazzhUQ9rfbfcOm78OLFEAmZUpfYRzQaZdmyZUSjUatLERtTzsQMypmYQTkTo9kxY1rjnyVa4y8ZnQbDlf+F4vZWVyIiIiIiIjam2/mJWGXrAnj6TKhca3UlIiIiIiIiGviLHEi1txNT+91NtbdT05+0azWMPwu27WdTQJGvVFdXM3XqVFvdMkZyj3ImZlDOxAzKmRjNjhnTwF/kAFzpBEXRbbjSiYN7Ys1WeGY0rP/cmMLENlwuF0VFRbhcuiuEGEc5EzMoZ2IG5UyMZseMaY1/lmiNv+yT2w+XPg/9z7S6EhERERERsRGt8RfJkhQuou4SUjTzil8iDC+PhfmvZLcwsY1UKkU0GiWVSllditiYciZmUM7EDMqZGM2OGdPAX+QAQv5ufPjtJwj5uzX/IKkEvPl9KP9b9goT2wiFQnz44YeEQroVpBhHORMzKGdiBuVMjGbHjGngL3IARbEdDFv1R4piOw7xSGn46E749MGs1CX2UVRUxLBhwygqKrK6FLEx5UzMoJyJGZQzMZodM6Y1/lmiNf5yUIZeC+f8EZy69iYiIiIiIs2jNf4iWRJ1l7C27alE3SXZO+icZ+G1ayARzd4xJW9Fo1HWrl1LNKo8iHGUMzGDciZmUM7EaHbMmAb+IgcQ9rRhQferCXvaZPfAS96Gf18C0ZrsHlfyTjgcZsGCBYTDYatLERtTzsQMypmYQTkTo9kxY5rqnyWa6i/N1mUIXPE6FLWzuhIREREREckjmuovki82z4Wnz4aqDVZXIiIiIiIiNqSBv8gB1Hg7MqPPL6jxdjTuRXaugPFnwvalxr2G5KyamhpmzJhBTY2WfYhxlDMxg3ImZlDOxGh2zJgG/iIH4Ein8CTDONIpY1+oejM8czZs+MLY15Gc43A48Hg8OBwOq0sRG1POxAzKmZhBOROj2TFjWuOfJVrjL1njKYLLnoe+p1tdiYiIiIiI5DCt8RfJkjQOEs4C0ph0xS9eCy9dDv973ZzXE8ul02kSiQS6DitGUs7EDMqZmEE5E6PZMWMa+IscQNDfg/eO/BdBfw/zXjQVhzdugJlPmfeaYplgMMh7771HMBi0uhSxMeVMzKCciRmUMzGaHTOmgb/IARTGKhi69m8UxipMfuU0fPALmPQbk19XzFZYWMjQoUMpLCy0uhSxMeVMzKCciRmUMzGaHTOmNf5ZojX+Yqhjb4DvPApOXasTEREREZF6WuMvkiUxVxEbWg8n5iqyrogv/gVv/D9IxKyrQQwTi8XYsGEDsZj+fcU4ypmYQTkTMyhnYjQ7ZkwDf5EDqCtox5e9bqauoJ21hSz6L7x0KcRqra1Dsq6uro4vv/ySuro6q0sRG1POxAzKmZhBOROj2TFjmuqfJZrqb19pHKQcLpzpJA5y4Mel61C44nUobGN1JZIl6XSaVCqF0+m01f1iJbcoZ2IG5UzMoJyJ0fIpY5rqL5IlDtK40oncGPQDbJoDT58NwY1WVyJZ4nA4cLlcOf+LRfKbciZmUM7EDMqZGM2OGbPVwP/tt9/m9NNPp1u3bvj9fg477DAuueQSysvL99p+xowZjB49mjZt2lBYWMjgwYN5/PHHSSaTJlcuuay2oD2zet9GbUF7q0v5WsUyGH8W7FhudSWSBbW1tcyaNYvaWi3jEOMoZ2IG5UzMoJyJ0eyYMdsM/G+//XbOP/985s2bx9lnn82Pf/xjjj76aCZMmMCJJ57I888/36j9hAkTOOWUU5gyZQoXXnght9xyC7FYjJ/+9KdcfvnlFn0Xkovqp/q7SZNjV/xCG+GZs+tnAEhea5hOppVXYiTlTMygnIkZlDMxmh0zZos1/lu3bqVr1660b9+eBQsW0KFDh8xjkyZNYtSoUfTq1Ys1a9YA9esg+vTpQygUYvr06RxzzDEARCIRRo0aRXl5Of/5z38O6gKA1viLZQqK4bIXoc+pVlciIiIiIiImalFr/NetW0cqleK4445rNOgHOPXUUykpKaGioiLztddee42KigrGjh2bGfQD+Hw+HnroIQD+9re/mVO8yKGK1dTv9r/oTasrERERERGRHGSLgX+/fv3wer3MnDmT7du3N3ps0qRJVFdXc8YZZzT6GsDZZ5+9x7FOOeUUCgsLKS8vJxqNGlu45IUqf08mDHmeKn9Pq0vZt2QMXr8evhhvdSXSDFVVVUyYMIGqqiqrSxEbU87EDMqZmEE5E6PZMWO2GPi3adOGRx99lB07dvCtb32LG2+8kTvvvJNLLrmEs88+mzPPPJO///3vmfbLli0D6i8YfJPb7aZ3794kEglWr169z9eMRqOEQqFGf4DMfxv+PxwOA5BMJqmqqiIejwP1ywqCwWCmbXV1deY+kalUqlHbaDTaKHQ1NTWZjSbS6TRVVVXEYjEAYrEYVVVVmfUotbW1jdvWxoi5iuvbugqp8vfMrF2vLWhHjbdj5nWq/D2JuksAiDv9VPl7ksIFQJ2nLdXeTpm2QX93Iu7Sr9r6qPL3JOnwABD2tCHk6/J1v/i6EXGXAZBwFnyjbWtCvq67te1K2NO6vg8dHqr8PUk4vfV96C4j6Ov+dR96u1DnaftVWzdV/p7Enb6v2pYS9PfYrW0n6gra1fc3rvq2rsL6/naXNBrkp3By+KZX8cd2ksZBlb8nMVfRV31Y9I0+bE9NwdezTqr8PYl+o79TX/3Y1ff37n3YY7f+ru/DlGP3/u78dVtf99360Fvfh7jgvZ8RnvTYPnOYSCSoqqoikUjU93c4fMDMNrQ92Mzu3nb3zDa0bcjsoea7pqbm6/6uqspcsIvH41RVVZFKper7sK6O6urqr/swGCQSiTRq27Cx5/7aNvRhQ9uD7cO9tfX7/QwePJhYLGb9OcKC/t5bH2arv/fVh1aek/fVhw1tG/rwm22DwWCz+ruhDwsKCjjqqKNwOBw6RxxkH1p9jti9ba6fI1KpFEcddRR+v1/niGb2t1XniKb0Ya6cI2KxGIMGDcLv9+sckWfniHx5H+H3+zniiCMyff/NPszFc8SB2GLgD/CjH/2IN998k1Qqxb/+9S9++9vf8vrrr9OjRw+uueaaRksAGv5RysrK9nqshq/v/g/yTY888ghlZWWZP9271w9AZ82alWkzZ84cVqxYAdSHLBAIZF57w4YNTJ8+PdN27ty5mQsSsViMQCDAzp07Adi0aRNTp07NtJ0/fz5LliwB6sMcCATYsWMHUL/fQSAQyIRj4cKFLFy4EKgPUmDxVraWHQXAjpIjCAwclxlIL+lyCfO7X5t5nan972VTq2EA7CzuT2DgOGLu+kHssk7nM7fnTZm20/veyYY2J9X3b2EvAgPHZQbsKzqMZk6vH2balve5nbXtRgFQ7etKYOC4zAB4TbvTmXXYTzJtZ/W+jdXtzwKg1tuBwMBxhL4a7K9rO4Lyvr/4ur973cyKjucAEPW0IjBwHJVFfQDY2Ho40/rdlWk7r8cNLO10IQBxdyGBgeOoKBoAwJayY5gy4P5M26VdxhAs7IU3WUPS6SEwcBzbS78NwLbSIwkMHJcZoC/qOpaF3a7MPDcwcBxbWw0FoKL4W/X97fLXH7fzxczrft3X/d3vHja2Ph6AyqJ+BAaOI/rVxZTlnc7ly57fz7Sd0fcO1rc9ub6//T0JDBxHXUH9RY9VK1cwe9J78FUGPv/8c9auXQvUn1gCgUDmhLF27Vo+//zzzHFnz57NqlWrgPoT7u6ZXb9+PTNmzMi0/fLLL1m+vP6uAtFolEAgQGVlZX1/b9zYKLPz5s1j6dKlwNeZbVh+05DZBgsXLmTRokVA/YkyEAiwbds2ALZv304gEMicvBcvXsyCBQsyz50yZQpbtmyp7++KCgKBQOYku3TpUubNm5dpO23aNDZurL8lYmVlJYFAIHPiXLFiBXPmfL1pYnl5OevWrQPqf0EEAoHMCXr16tWNfu5nzZqV2U+kob8bfnGtXbu20V1GGs4RXq+X9u3bU15ebv05IhBg69atAOzYsYNAIJD5pbdkyRLmz5+feZ2pU6eyadMmAHbu3EkgEMj8olq2bBlz587NtJ0+fTobNmwA6s/BgUAg84t2b/3dkNnq6upGmV2zZs0e/d1wkba2tpZAIJD5hb5u3bq99jfsPbPTpk3LtN09s/F4vFFmt2zZwpQpUzJtFyxYwOLFi4H6NwKBQCAz+2zbtm0EAoHMG5lFixZl+hto1N8NmW3o729mdurUqfvM7PLly/nyyy8zbWfMmMH69esb9XcymaRnz55s2LCB2bNnZ9rqHJH75wjIofcRBzhHLFmyhJ49e+L1enWO+Eq+nCMaBimrVq3K+XNEeXk5fr8fr9erc0SenSPy5X2E1+slmUw2+lnI1XNEQ74PxBab+0H9QPzuu+/mxz/+MbfeeiudOnVi6dKl3HnnnUycOJFf/OIX/P73vwegf//+rFixghUrVtC3b989jjV8+HDKy8spLy/n+OOP3+vrRaPRRldXQqEQ3bt3Z8OGDXTr1i3zNY/Hg9/vJ5lMUl1dTVFRER6Ph0gkQjQazVxkqK6uxuVyUVhYSCqVIhQKZdpGo1HC4TCtWrUC6k8CDoeDoqIi0uk0wWCQwsJCCgoKiMVi1NXVUVZWhsPhyJxUMm1XzqLw5YsoSNYQcxVSV9CesvB6HKSpLWhH2uGiOFofnip/T/zxXXgT1cSdfmq9HSgNb8RJkjpPW5JODyXR+h/soL873ngQXyJE3Omj1tuRkshmXOk4YU8b4i4fpZHN9f3i60ZBohpfIkjCWUCNt/NubVsTdxVSGtn0VduueJJ1+OOVJB0eqn1dKI5uxZ2KEnGXEXWXUhapPwlUe7vgSkUpjO8k6XBT7etKUXQbnlSEiLuUqKcVZeH1X7XthCudoDBWQQoXIX83imI78CTriLpLCHva0Cpcf4Ku9PeisvAwulV9jicZJujvQWGsgoJkLTFXEXUF7Xbrw/akcVAc2/51H8Z24t2tv0vDG3CS+qq/3RRn+rAHvnjlV/1d34elkY040w39XUBJtP6XUdDXHW8i9FUfeqnxdvpGH/op7XciXPAkodpwJoeJRIKamhqKi4txu92Ew2Hi8XhmI5C9Zbah7cFmNhKJZNruntmGtg2ZPdR8p9NpiovrL0hVVVVl3gjE43Fqa2spLS3F6XRSV1dHMpmkpKR+VkUwGMTr9eLz+TJtS0pKcLlc+23b0IcNbQ+2D2Ox2B5tXS4X27dvx+v10qpVK2vPERb09976sKCgICv9va8+tPKcvK8+bGjb0IffbBsMBvH5fAfd3w196PV6qayspKioCIfDsdc+1DkiN88ROfU+4gBtY7EY4XCYdu3aUVdXp3NEHp0jmtKHuXKO2LlzJ+FwmE6dOpFOp3WOyKNzRL68j0ilUmzevJni4mLatWuX0+eIeDxOhw4dDri5ny0G/p999hmnnXYaF154If/9738bPVZXV0f//v3ZsmULy5cvp0+fPhx77LHMnj2b2bNnM3To0D2ON2jQIBYtWsTixYs5/PDDm1SDdvW3r6qvPlEfsfSezMWAvNH3DLj0eSgotLoS2Y+qqioCgQAjRozI/BIQyTblTMygnIkZlDMxWj5lrEXt6v/ee+8B9Tv4f1NhYSHDhg0jlUplposMGFA/pbthetHuEokEa9aswe12c9hhhxlYteSL0vAGvrPgB5SGN1hdysFb+TG8cAGEK62uRPajtLSU73znO7l90VDynnImZlDOxAzKmRjNjhmzxcC/YS1Iw9qTb2r4utdbv5Z91Kj69eUffvjhHm2nTJlCXV0dw4cPz7SXls1JioJkLU5SVpfSPBtmwjOjIbTF6kpkH5xOJwUFBTidtjglS45SzsQMypmYQTkTo9kxY7b4Tk4+uX6Ts6eeeiqzQUSDDz74gOnTp+Pz+Rg+fDgAY8aMoV27drz88suNNmyIRCLcfffdAPzgBz8wqXrJdbUF7ZjT8/vUfnUXgLy0fTGMPxN2rrK6EtmL2tpa5syZk1knJ2IE5UzMoJyJGZQzMZodM+a2uoBsGDNmDKeffjqffPIJhx9+OBdeeCGdOnViyZIlvPvuu6TTaX7729/Stm39ruelpaX885//ZMyYMYwcOZLLL7+cNm3a8Pbbb7Ns2TLGjBnDZZddZvF3Jbki7XAT9rQh7cjzH5fg+vrB/5VvQJejrK5GdtOwMZENtlyRHKaciRmUMzGDciZGs2PGbLG5H9TfJuGJJ57g5ZdfZvHixdTV1dGmTRuGDRvGbbfdxplnnrnHc6ZPn87DDz9MeXk5kUiEvn37cv3113PbbbfhcrkO6vW1uZ/kjYISGPsS9D7F6kpEREREROQQNHUcapuBv9U08Je84vLCmPFw+LlWVyIiIiIiIs3Uonb1FzFS0N+Ddwf/k6C/h9WlZE8yCq9eA3Oes7oSof7etO+++y7BYNDqUsTGlDMxg3ImZlDOxGh2zJgG/iIH4ItXcviWV/HFbXZLvHQS3rkNpj5mdSUtns/n4/DDD8fn81lditiYciZmUM7EDMqZGM2OGdNU/yzRVH/JayfcCmc+BA6H1ZWIiIiIiEgTaaq/SJbEnT62l3ybuNM+V/z2UP5XeOsHkExYXUmLFI/H2b59O/F43OpSxMaUMzGDciZmUM7EaHbMmAb+IgdQ6+1Ied9fUOvtaHUpxpr/H3jlCoiHra6kxamtraW8vNxW94qV3KOciRmUMzGDciZGs2PGNNU/SzTV375SDhdRdyneRAhnOml1OcbrcQKMfRn8rayupMVIpVJEo1G8Xi9Op67HijGUMzGDciZmUM7EaPmUMU31F8kSZzqJP17ZMgb9AOvL4dlzoHqb1ZW0GE6nE7/fn/O/WCS/KWdiBuVMzKCcidHsmDH7fCciBqnztGVe92up87S1uhTzbFsIT58Ju1ZbXUmLUFdXx7x586irq7O6FLEx5UzMoJyJGZQzMZodM6aBv8gBJJ0FBP29SDoLrC7FXJVr4emzYev/rK7E9pLJJMFgkGSyhcwqEUsoZ2IG5UzMoJyJ0eyYMa3xzxKt8Rfb8pbB2P9ArxOtrkRERERERHajNf4ikh3RILx4ESx93+pKRERERESkGTTwFzmAoK87Hwz6K0Ffd6tLsU4iAq9cCXP/bXUlthQMBvnggw8IBoNWlyI2ppyJGZQzMYNyJkazY8Y08Bc5AG8iRJ8dH+JNhKwuxVrpJEy4Bab/2epKbMfr9dKnTx+8Xq/VpYiNKWdiBuVMzKCcidHsmDGt8c8SrfGXFmX4bXDmOKurEBERERFp0bTGXyRLEk4vO4v6k3Da54rfIZvx5/pP/1P22enUSolEgp07d5JIJKwuRWxMORMzKGdiBuVMjGbHjGngL3IANd5OTOt/NzXeTlaXklvmvgivXg3xiNWV5L2amhqmTZtGTU2N1aWIjSlnYgblTMygnInR7JgxTfXPEk31t6+kw0NdQVsKYztxpeNWl5N7ep5Uf7s/Xw7nPsclk0nq6uooLCzE5XJZXY7YlHImZlDOxAzKmRgtnzKmqf4iWeJKxymJbtWgf1/WTYNnz4GaHVZXkrdcLhclJSU5/4tF8ptyJmZQzsQMypkYzY4Z08Bf5ADCntYs7Po9wp7WVpeSu7YugKfPhMq1VleSl8LhMAsXLiQcDltditiYciZmUM7EDMqZGM2OGdPAX+QA4i4/20sGEXf5rS4lt+1aDePPgm2LrK4k78TjcbZv3048rlklYhzlTMygnIkZlDMxmh0zpjX+WaI1/iJf8ZXB916FHsdbXYmIiIiIiK1pjb+IWCMShOcvgKXvW12JiIiIiIiggb/IAYV8XZn4rT8Q8nW1upT8kQjDK1fCnGetriQvhEIhJk6cSCgUsroUsTHlTMygnIkZlDMxmh0zpoG/yAF4ErV0r5yBJ1FrdSn5JZ2Ed34Mk39rdSU5z+Px0L17dzwej9WliI0pZ2IG5UzMoJyJ0eyYMa3xzxKt8RfZj6HXwTmPgVPXGkVEREREskVr/EWyJOEooMrfk4SjwOpS8tecZ+DVqyAesbqSnJRIJKiqqiKRSFhditiYciZmUM7EDMqZGM2OGWv2wD+ZTPLnP/+Z4447jrKyMtxud+axuXPn8sMf/pDly5dnpUgRK9X4OhMYOI4aX2erS8lvS9+FFy6AcKXVleScmpoaAoEANTU1VpciNqaciRmUMzGDciZGs2PGmjXVPxaL8Z3vfIfJkyfTpk0bvF4vW7ZsIZlMAlBVVUWnTp244447eOCBB7JedC7SVH/7SjgKqPF1pjiyBXc6ZnU5+a/94XDlG1CmzRIbJBIJampqKC4ubnQRVSSblDMxg3ImZlDOxGj5lDFDp/o/+uijTJo0ifvuu49t27Zxww03NHq8VatWnHLKKXz00UfNObxITnGnY7QKr9OgP1t2LIHxZ8D2pVZXkjPcbjetWrXK+V8skt+UMzGDciZmUM7EaHbMWLMG/v/+97858cQTuffee3E6nTgcjj3a9O7dm/Xr1x9ygSJWC7tbsaTzxYTdrawuxT5Cm+Dps2BdudWV5IRwOMySJUsIh8NWlyI2ppyJGZQzMYNyJkazY8aaNfBfs2YNxx9//H7btGnThl27djWrKJFcEncXsaH1cOLuIqtLsZdIVf2a/yXvWl2J5eLxOBs2bCAej1tditiYciZmUM7EDMqZGM2OGWvW3AW/308wGNxvm/Xr19OqVavmHF4kp5RGNnHm4p9bXYY9JSLw6tVwzv/BMddbXY1lSktLOfPMM60uQ2xOORMzKGdiBuVMjGbHjDXrE/+jjjqKiRMnEovtfc1zMBjko48+YtiwYYdUnIi0AOkkvPtTmPQbqysREREREbGlZg38b7zxRtavX8/VV19NKBRq9FhVVRXXXnstlZWV3HzzzVkpUsRKIV8XPhv4G0K+LlaXYm+B38Hbt0EqaXUlpguFQnz22Wd7nE9Fskk5EzMoZ2IG5UyMZseMNWuq/9ixY/nkk0945plneOuttzJT+o855hgWLVpENBrllltuYfTo0dmsVcQSnmSYDtUL8STts7lHzvryOajdAWOeBo/f6mpM4/F46NChAx6Px+pSxMaUMzGDciZmUM7EaHbMmCOdTqeb++Rnn32WP/3pTyxYsICGwxxxxBH87Gc/47rrrstakfmgqfdPtNzmufDUSKurENm/7sfB2JehsI3VlYiIiIiI5KymjkMPaeDfIBwOU1lZSVlZGUVFLXPncw387Svp8FBX0JbC2E5cafvs7Jnz2g+EK9+Asm5WV2K4ZDJJXV0dhYWFuFwuq8sRm1LOxAzKmZhBOROj5VPGmjoObdYa/2/y+/106dKlxQ76xd6qfV347Fu/p1pr/M21Yyn86wzYttjqSgxXXV3NZ599RnV1tdWliI0pZ2IG5UzMoJyJ0eyYsWYN/OfMmcODDz7Itm3b9vr41q1befDBB5k3b96h1CaSE4qjWzlp+UMUR7daXUrLU70Znjkb1k63uhJDFRcXc9JJJ1FcXGx1KWJjypmYQTkTMyhnYjQ7ZqxZU/2/973vMXXqVNavX4/D4djj8VQqRe/evRkxYgTPP/98VgrNdZrqL2Igtw8u+id86zyrKxERERERyRmGTvUvLy/n1FNP3eugH8DpdHLqqacyfbq9P6WTliHiLmN5x+8ScZdZXUrLlYjAa9fAF/+yuhJDRCIRli9fTiQSsboUsTHlTMygnIkZlDMxmh0z1qyB/9atW+nevft+23Tt2pUtW7Y0qyiRXBJ1l7Kq/dlE3Tk8k6MlSKfgvZ/Dp+OsriTrotEoq1atIhqNWl2K2JhyJmZQzsQMypkYzY4Za9ZU/7Zt23LxxRfz1FNP7bPNTTfdxGuvvUZlZeUhFZgvNNVfxERDroJz/wTO3N5lVURERETESIZO9T/qqKOYMGECNTU1e328urqaCRMmcNRRRzXn8CIi+zf3BXj5CoiHra5ERERERCTnNWvgf9NNN7Fjxw7OPPNMFixY0OixBQsWcPbZZ1NRUcFNN92UlSJFrFTt7Uyg//1UeztbXYrsbvkH8Nx5ULfL6koOWXV1NYFAwFa3jJHco5yJGZQzMYNyJkazY8bczXnSZZddxgcffMDzzz/PkCFD6NixI127dmXTpk1s27aNdDrNNddcw9ixY7Ndr4jpXKkYZeG1uFIxq0uRb9o4C54+C658A1r1sLqaZnO5XJSVleFyaemCGEc5EzMoZ2IG5UyMZseMNWuNf4OnnnqKv/zlLyxatCjztUGDBnHbbbdxww03ZKXAfKE1/iIWKulcP/jveITVlYiIiIiImKap49BDGvg3qKuro6qqilatWlFYWHioh8tLGvjbV8rhIuouxZsI4UwnrS5H9sVbBmNfgl4nWV3JQUulUkSjUbxeL05ns1ZgiRyQciZmUM7EDMqZGC2fMmbo5n7fVFhYSJcuXVrsoF/sLeTrxsRBfyLk62Z1KbI/0SC8cBEsesvqSg5aKBRi4sSJhEIhq0sRG1POxAzKmZhBOROj2TFjWfnEX/SJv53FnT4qi/rRunYFnlTE6nLkQBxOOPt3cFz+bC4aj8eprKykdevWeDweq8sRm1LOxAzKmZhBOROj5VPGDP/Ef9KkSZxzzjl06NABj8eDy+Xa44/b3ay9A0VyiicVoUP1/zTozxfpFHzwC/jkAasraTKPx5M5l4oYRTkTMyhnYgblTIxmx4w1a2T+zjvvcOGFF5JKpejRowcDBgzQIF9sK+ouYWPr4+lW+TnehH1u6WF70x6Dmu1w7p/Aldvnp2g0ysaNG+nWrRter9fqcsSmlDMxg3ImZlDOxGh2zFiz3g0/8MADFBQU8NZbb3HmmWdmuyaRnBLxtGZJ50tpV7NMA/98M+9FqN0OlzwHBbm7B0kkEmHJkiW0a9fONr9cJPcoZ2IG5UzMoJyJ0eyYsWat8ff7/Vx++eU888wzRtSUl7TGXySHdT0GrngNCttYXYmIiIiISNYYusa/uLiYNm30BlpE8sSm2TD+TKhcZ3UlIiIiIiKma9bA/7TTTqO8vDzbtYjkpBpvJ6b1vZMabyerS5FDsXNF/eB/6/+srmQPNTU1TJs2jZqaGqtLERtTzsQMypmYQTkTo9kxY80a+P/ud79j1apVPPTQQ+hugGJ3jnQCf3wXjnTC6lLkUNVshWdGw5opVlfSiMPhwO/343A4rC5FbEw5EzMoZ2IG5UyMZseMNWuN//XXX8/atWsJBAL06tWLo446irKysj0P7nAwfvz4rBSa67TGXySPuArgwn/AoIusrkREREREpNmaOg5t1sDf6WzaRAGHw0EymTzYw+clDfztK4WThMuPOxnGScrqciRbHE44+7dw3PetroRUKkUikcDtdjf5/CpysJQzMYNyJmZQzsRo+ZQxQzf3W7NmTZP+rF69utnfgEiuCPm788HgJwn5u1tdimRTOgUf/BI+vs/qSgiFQnzwwQeEQiGrSxEbU87EDMqZmEE5E6PZMWPu5jypZ8+e2a5DJGcVxnZw7Oo/UxjbYXUpYoTpj0PNdjjvL+Bq1inxkBUWFnLsscdSWFhoyetLy6CciRmUMzGDciZGs2PGmjXVX/akqf4iea7v6XDp81BQZHUlIiIiIiJNYuhU/90lk0m2bdvG+vXr9/pHJN9FXcWsazuCqKvY6lLESCs/gefOhdqdpr90NBpl3bp1RKNR019bWg7lTMygnIkZlDMxmh0z1uyB/4IFCxg9ejQlJSV06dKF3r177/HnsMMOy2atIpYIF7RlXo//R7igrdWliNE2zYHxZ0DlWlNfNhwOM2/ePMLhsKmvKy2LciZmUM7EDMqZGM2OGWvWVP/FixczbNgwAEaNGsW7777LkUceSceOHfnyyy+pqKjg1FNPpUePHjzzzDNZLzoXaaq/iI0Ud4QrXofOg62uRERERERknwyd6v/QQw8Rj8eZNm0ab7/9NgAXXnghH374IWvWrOG6665j8eLFPPjgg82rXkTESjXb4NlzYPVkqysRERERETlkzRr4BwIBvvvd73LUUUdlvtYwcaCoqIh//OMftG7dmnvuuScrRYpYqaagA58f9jNqCjpYXYqYKRqCf18C/3vd8Jeqqanh888/p6amxvDXkpZLORMzKGdiBuVMjGbHjDVr4F9RUUG/fv0yf3e73dTV1TX6+6mnnsrEiRMPvUIRizlI40wncKAbYLQ4yRi8cQOU/83Ql3E4HDidThwOh6GvIy2bciZmUM7EDMqZGM2OGWvWTavbtGlDbW1t5u/t2rXbYwf/goICgsHgoVUnkgOKYjsYtubPVpchlknDR3dC9RY440Ew4BdAUVFRZt8UEaMoZ2IG5UzMoJyJ0eyYsWZ94t+nTx/Wrl2b+fvQoUP5+OOP2b59OwC1tbVMmDCB3r17Z6VIESulcZB0uEljnyt+0gwz/gxv3gzJeNYPnU6nSSaTNGOvVZEmU87EDMqZmEE5E6PZMWPNGvifeeaZTJo0KfOp/80338yuXbsYMmQIl1xyCYMGDWLdunXccMMNWS1WxApBfw/ePeppgv4eVpciVlvwMrx0GUSzu94rGAzy7rvvapaUGEo5EzMoZ2IG5UyMZseMNWvgf+ONNzJ+/PjMfQ3POeccHn/8ccLhMG+88QY7duzgjjvu4LbbbstqsSJWKIxVcPTav1MYq7C6FMkFqz6F574LtdnLQ2FhIUcffTSFhYVZO6bINylnYgblTMygnInR7JgxRzqL8xeSySQVFRV06NDBVhshNEVT759ouc1z4amRVlchkv/aHAZX/hfaaEmTiIiIiFijqePQZn3ivy8ul4uOHTu2uEG/2FvMVcTG1scTcxVZXYrkkl2rYfyZsHneIR8qFouxceNGYrHYodclsg/KmZhBORMzKGdiNDtmLKsDfxE7qitox5xeP6SuoJ3VpUiuqd0Oz34XVk06pMPU1dUxZ86cRrdFFck25UzMoJyJGZQzMZodM9akqf6jRo1q3sEdDj799NNmPTffaKq/faVxkHR6cKXiOLDPzp6SRU4PXPAkDL6kWU9v2DnW5XJpxpQYRjkTMyhnYgblTIyWTxlr6jjU3ZSDTZ48ea9fdzgce73FQcPXc72TRJrCQRp3yj7TfMQAqTj890ao2QbDbz3opzscDtzuJp2ORZpNORMzKGdiBuVMjGbHjDVpqn8qlWr0JxKJcO6559K7d2+eeeYZ1qxZQzgcZs2aNTz99NMcdthhnH/++UQiEaPrFzFcbUF7vuh1K7UF7a0uRXJaGibeBR/dBQe5Z2ptbS1ffPFF5hapIkZQzsQMypmYQTkTo9kxY81a4z9u3DjmzJnD7Nmzueaaa+jZsyder5eePXty7bXXMnPmTGbNmsW4ceOyXa+I6dIOJ3GXn7RDW2JIE5T/tf7T/2S8yU9Jp9PE4/G9zqASyRblTMygnIkZlDMxmh0z1qzb+R122GGce+65/OlPf9pnmx//+Me88847rF69+pAKzBda4y8ijRx2Klz2IniLra5ERERERGzK0Nv5bd68mYKCgv228Xg8bNmypTmHFxHJf6snwbPnQM0OqysRERERkRauWQP/bt26MWHChH3e1zAajTJhwgS6du16SMWJ5IIqf0/ePuoZqvw9rS5F8s2WeTD+DNi5ar/NqqqqePvtt6mqqjKlLGmZlDMxg3ImZlDOxGh2zFizBv7XXHMNK1euZNSoUUyZMoVkMglAMpkkEAhw2mmnsXr1aq699tps1ipiCX98F4M3PI8/vsvqUiQfVa6Bp8+qX2azD36/n8GDB+P3+00sTFoa5UzMoJyJGZQzMZodM9asNf7xeJxLLrmEt99+G4fDgdPppE2bNuzatYtUKkU6nea8887j9ddft91tEPZFa/xFZL8KiuHS56HvaVZXIiIiIiI2Yegaf4/Hw1tvvcWLL77IqFGjKCsrY9euXZSVlXHaaafx73//m7feeqvFDPrF3uKuQraUDiHuKrS6FMlnsRp46TKY/8oeD8XjcbZs2UI83vQ7AYgcLOVMzKCciRmUMzGaHTN2SPcn+973vsfHH39MRUUF8XiciooKJk6cyNixY7NVn4jlagvaM6vPT6ktaG91KZLvUnF48/swvfEdUWpra5k1a5at7hUruUc5EzMoZ2IG5UyMZseMNWuqv+xJU/3tK4WLuLsQT6IOJ0mryxG7OP4WOOthcDhIpVLE43E8Hg9O5yFdjxXZJ+VMzKCciRmUMzFaPmWsqePQQ5qLP3/+fF566SWWLl1KbW0tn3zyCQBr165l1qxZnHHGGbRu3fpQXkLEck6SeBPVVpchdvP5E1CzDS54Eqe7AK/Xa3VFYnNOp1M5E8MpZ2IG5UyMZseMNfvyxb333svQoUN59NFHeeedd5g0aVLmsVQqxdixY3nxxRezUqSIleoK2vFljxupK2hndSliNwtfh3+Poa5yO19++SV1dXVWVyQ2VldXp5yJ4ZQzMYNyJkazY8aaNfB/+eWXeeihhzjjjDOYN28ed955Z6PHDzvsMI455hjefvvtrBQpYqWkw02ttyNJhzarFAOsCZB8/QZqQ1WZW6OKGCGZTFJbW6uciaGUMzGDciZGs2PGmrXGf/jw4VRUVLBw4UIKCgp44IEHePDBBxt1zLXXXsvkyZNZu3ZtNuvNWVrjLyKHpFVPuPK/0K6v1ZWIiIiISJ4w9HZ+//vf/zjrrLMoKCjYZ5suXbqwbdu25hxeRKTlqVoH48+A9TOtrkREREREbKZZA/90On3A3Q23bduGz+drVlEiuSTo78F7g/9B0N/D6lLEpjIZoxiePx+WvGt1SWJDwWCQ9957j2AwaHUpYmPKmZhBOROj2TFjzRr49+vXj/Ly8n0+nkwmmTZtGkcccUSzCxPJFd54FQO2vIk3XmV1KWJTjTKWCMOrV8Gsf1pdltiM1+tlwIABttulWHKLciZmUM7EaHbMWLMG/pdeeilz5szh8ccf3+vjjzzyCCtXruR73/veodQmkhN8iRB9d3yILxGyuhSxqT0ylk7B+7fDx/fBwW/DIrJXPp+Pvn37ajaeGEo5EzMoZ2I0O2asWZv7hcNhTjzxRObPn8+xxx4LwBdffMFPf/pTpk6dyuzZszn++OMJBAK43S1jJ3Rt7mdfcaePyqI+tK5dhScVsbocsaH9ZmzwZXD+E+DyWFOc2EY8HqeyspLWrVvj8ShPYgzlTMygnInR8iljhm7u5/f7mTRpEldddRVz5sxh1qxZpNNpHnvsMebMmcOVV17Jhx9+2GIG/WJvtd6OlPe9g1pvR6tLEZvab8YWvAIvXgwRzTiRQ1NbW0t5eTm1tbVWlyI2ppyJGZQzMZodM9asT/x3t2vXLr744gt27txJWVkZw4YNo3379tmqL2/oE3/7SjrcRD2t8MarcKUTVpcjNtSkjHX8NlzxGpR2Nrc4sY1kMkk0GsXr9eJyuawuR2xKORMzKGditHzKWFPHoYc88Jd6GviLiOFKu8GVb0CHgVZXIiIiIiI5wNCp/rtbsmQJb775Ji+88MKhHkokJ9V52jK/29XUedpaXYrYVJMzFtoIT58Ja6ebU5jYSl1dHfPnz6eurs7qUsTGlDMxg3ImRrNjxpo98J83bx5Dhw5l0KBBjBkzhmuvvTbzWCAQoLCwkHfeeScbNYpYKun0UlnUl6TTPrfzkNxyUBmLBOGFC2Hhf40vTGwlmUxSWVlJMpm0uhSxMeVMzKCcidHsmLFmTfVfvnw5w4YNI5lMcuONN7J8+XI++OCDTMek02m6d+/OaaedxnPPPZf1onORpvqLiLkccNbDcMItVhciIiIiIhYxdKr/Aw88QCwWY9asWTz22GOZW/o1cDgcnHDCCXzxxRfNObyIiBxQGj76NXz4a9BWLSIiIiKyH80a+H/66adcdNFFHH744fts06NHDzZv3tzswppr6tSpXHzxxXTu3Bmv10vnzp0588wzef/99/doO2PGDEaPHk2bNm0oLCxk8ODBPP7447aa0iGHLujrzoeD/kzQ193qUsSmDiljnz8Br18HiWj2CxNbCQaDfPjhhwSDQatLERtTzsQMypkYzY4Za9bAv6qqim7duu23TSqVIhaLNauo5nrooYc45ZRTmDJlCmeffTY///nPOffcc6msrGTy5MmN2k6YMCHT9sILL+SWW24hFovx05/+lMsvv9zUuiW3eRMheu/4BG9C91EXYxxyxha9CS9cBOGqrNYl9uL1eunduzder/YrEeMoZ2IG5UyMZseMuZvzpA4dOrBy5cr9tlm0aBHdu5v3Cemrr77KPffcw+mnn85///tfSkpKGj0ej8cz/x8KhbjhhhtwuVxMnjyZY445BoBx48YxatQoXn/9dV5++WVdABAAfIkgA7a9bXUZYmNZydi6afD0WfW3+yvb/4VZaZl8Ph8DBgywugyxOeVMzKCcidHsmLFmfeI/atQo3n33XVasWLHXx7/44gs+/fRTzjrrrEMqrqlSqRR33HEHfr+fl156aY9BP4DH48n8/2uvvUZFRQVjx47NDPqh/h/4oYceAuBvf/ub8YVLXkg4vewq7EtCu/qLQbKWsR1L4V+nw9aF2SlMbCWRSLBr1y4SiYTVpYiNKWdiBuVMjGbHjDVr4H/nnXficrk4+eST+fvf/55Zy79o0SKefPJJzj33XEpKSrj99tuzWuy+zJgxg7Vr13LOOefQunVr3nvvPX73u9/xpz/9ifLy8j3aT5o0CYCzzz57j8dOOeUUCgsLKS8vJxrVmlmBGm8npg64lxpvJ6tLEZvKasaqt8Az34HVkw/9WGIrNTU1TJ06lZqaGqtLERtTzsQMypkYzY4Za9bAf8CAAbzxxhtEo1FuueUW/vWvf5FOpxk8eHBmrfx///tfevToke1696rh7gGdOnVi6NChfPe73+VXv/oVP/nJTxg+fDgjRoxgx44dmfbLli0DoF+/fnscy+1207t3bxKJBKtXr97na0ajUUKhUKM/QOa/Df8fDoeB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mvh7LBZj8+bNFBUV7fb7JPPU1tZSUVHBypUru/T1GyRzKWOSDsqZpINyJumgnEmqZVLGTNOkrq6O3r1773Zct5z4tx4Jaf3kf3u1tbVtxu2Mx+PB42l7dczW5RpiT/n5+V3+f3zJbMqYpINyJumgnEk6KGeSapmSsd3NW1t1yyscDB06FICFCxfu9PmqqioAhgwZkraaRERERERERFKhW078jznmGADeeecdYrFYm+fq6uqYNm0aPp+Pww8/3IryRERERERERJKmW078Bw0axIknnsiyZcv4wx/+0Oa52267jYaGBi6++GJycvbsdhliTx6Ph9tuu22HUztEkkUZk3RQziQdlDNJB+VMUs2OGTPM9q77b1OLFy9mzJgxbNiwgTPOOIPhw4fzySefMGXKFIYMGcL06dMpKiqyukwRERERERGRvdJtJ/4AK1eu5NZbb+Wtt96iurqasrIyzjzzTG677TYKCwutLk9ERERERERkr3Xrib+IiIiIiIiI3XXLc/xFREREREREugtN/EVERERERERsTBN/6XZWrVrF97//fXr37o3H46F///5ce+21bNmypUPfX11dzd/+9jfOOuss9tlnH3w+H36/n7Fjx/L444/vcItI6Z72Nmc7849//APDMDAMg7/97W9JrFYyVTJz9tFHH3HOOedQVlaGx+OhrKyME088kTfeeCMFlUumSFbGXnnlFY4//njKy8vx+XwMHDiQ8847jxkzZqSocskU//vf//jJT37CUUcdRX5+PoZh8H//93+deq1U/O4Ve0hGzjJ9DqBz/KVb2f5uDsOGDWPmzJlMmTKFoUOHMm3atHbv5vDnP/+ZH/7wh5SWlnLsscfSt29f1q9fzwsvvEAgEODss8/mf//7H4ZhpOmnkq4mGTnb3sqVKxk1ahTRaJT6+nomTZrEpZdemqKfQDJBMnP261//mltuuYXi4mJOPfVUysrK2LRpE7Nnz+aYY47hd7/7XYp/GumKkpWx66+/ngceeICioiLOPPNMiouLWbRoEa+88gqRSIS///3vXHzxxWn4iaQrOuCAA/jyyy/Jzc2lvLyc+fPnc+GFF/LPf/5zj14nFb97xT6SkbOMnwOYIt3IiSeeaALmo48+2ubx6667zgTMK664ot3XeP/9982XXnrJjEQibR5fu3atWVFRYQLmc889l9S6JbMkI2fbisVi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S9rbnO2KPvGXbSUrZ9XV1eZ1111n9u/f33S73WZhYaF5+umnmzNmzEjDTyFdWTIyFgqFzIceesg87LDDzLy8PNPpdJo9e/Y0J0yYYL799ttp+kmkq2pvv2rbTLX3XtbRvEr3k4ycZfocQJ/4i4iIiIiIiNiYruovIiIiIiIiYmOa+IuIiIiIiIjYmCb+IiIiIiIiIjamib+IiIiIiIiIjWniLyIiIiIiImJjmviLiIiIiIiI2Jgm/iIiIiIiIiI2pom/iIiIiIiIiI1p4i8iImJT/fv3p3///mnb3rJlyzAMg4kTJ6Ztm9uaOHEihmEkvn7zm99YUseeyM3NbVPzsmXLrC5JRERsSBN/ERERSanWCXm6JrXXXHMNt912G2PHjk3L9tavX4/T6eTqq6/e4++9+eabue2229h///1TUJmIiEicy+oCRERExB769OnDvHnz8Pv9ltZx7bXXpnWlw8svv0wsFuOss87a4++9+eabgfhqiS+//DLZpYmIiACa+IuIiEiSuN1uhg0bZnUZaffiiy9SVFTEuHHjrC5FRERkp7TUX0REJM1mzJiBYRicffbZuxwzePBgPB4PmzdvbvP422+/zSmnnEJxcTEej4dBgwZxww03UFNT0+HtNzc3c++99zJq1Ciys7PJz8/nqKOO4j//+c8uv2fmzJl85zvfoU+fPng8HsrKyjjxxBP573//mxizs3P8DcPgqaeeAmDAgAGJc9lbP5E//PDDcTqduzwN4P7778cwDB544IEO/3y78q1vfQvDMAiHw9x5550MGjQIr9fL0KFDmTRpUmLcH/7wB0aOHInP56O8vJzbb7+dWCy209cMBAJMnjyZ0047DafTCUAwGOShhx7iwAMPpKCggOzsbCoqKjjttNN499139/rnEBER2VP6xF9ERCTNjjjiCIYMGcJrr71GdXU1RUVFbZ6fPn06ixYt4pxzzqGwsDDx+J133sltt91GUVEREyZMoKSkhK+++or777+fN954g+nTp7e7zD4UCnHiiSfy0UcfMWLECH70ox/R2NjIc889xwUXXMDs2bP57W9/2+Z7Jk2axA9/+EOcTienn346gwcPZsOGDXz66af88Y9/5Nvf/vYut3fbbbfx0ksv8eWXX3LNNdfQo0cPgMSfV111FZdccgmTJk3i7rvvbvO9pmny17/+FY/HwyWXXNJeWzvs/PPP55NPPuGUU07B7Xbzv//9j8svv5ysrCxmzZrFM888w6mnnsrxxx/Pq6++yh133IHP5+MXv/jFDq/1+uuvEwqF2hzEufjii/nvf//LyJEjufjii/H5fKxZs4apU6fy9ttvc8IJJyTtZxEREekQU0RERNLu7rvvNgHzscce2+G5K664wgTMV155JfHY5MmTTcA88sgjzZqamjbjn3zySRMwr7nmmjaP9+vXz+zXr99Ot3vqqaea4XA48fi6devMiooKEzA/+uijxONz5841XS6XWVBQYM6ZM2eHWlesWJH476VLl5qAeckll7QZc8kll5iAuXTp0h2+v7m52SwuLjZLS0vb1GOapvn++++bgPnd7353h+/bmd1txzRN8+ijjzYB8+CDDza3bNmSeHzx4sWm2+02/X6/2b9/f3PVqlWJ52pqaszi4mKzuLh4h/pM0zTPPfdcMycnx2xqakqMNwzDHD16tBmJRHYYv2nTpk7VLiIisje01F9ERMQCF110EQ6HI7EMvlUwGOTZZ5+lpKSEk08+OfH4o48+CsBf//rXHT7VnzhxIgcccADPPPNMu9t94oknEkvnXa6tC/969erFLbfckhjT6k9/+hORSIRbbrmFfffdd4fXq6io6MBPu2sej4fvfe97rFu3jldeeaXNc3/5y18AuPLKK/dqG9v77W9/m1hxADBw4EDGjh1LIBDglltuoU+fPonn/H4/p512Gps2bWL16tVtXqe5uZm33nqLk08+Ga/XC4DD4cA0TTweDw7HjrtZ26/uEBERSQct9RcREbFARUUFxx57LO+99x7ffPMNI0aMAOCVV16hpqaG6667rs3EfMaMGbjd7jbn1G8rFAqxcePGnZ460Kquro7FixdTXl7OkCFDdnj++OOPB+Dzzz9PPPbxxx8DtDkIkWxXXnkl999/P3/5y18SS+Y3bNjASy+9xIgRIzjqqKOSur3Ro0fv8Fjv3r3bfW7VqlX069cv8fg777xDfX19m6v55+Xlcdppp/Hqq69y4IEHcs455zB27FgOO+wwsrOzk/pziIiIdJQm/iIiIha55JJLeO+993jqqacS59W3rgDY/pz26upqIpEId9xxx25fs76+fpcT/0AgAEBpaelOny8rK2szDkhcNHDbT8GTbeDAgYwfP563336bpUuXMmDAAJ588klCoRBXXHFF0re3s+sgtB5k2d1z4XC4zeMvvvgiWVlZTJgwoc3jzz77LL/97W955plnuPXWWwHwer18+9vf5v7776dnz55J+TlEREQ6Skv9RURELHL22WeTl5fHP//5T6LRKBs2bODtt99m//33Z//9928z1u/3U1BQgGmau/3a9hPp7bVOatetW7fT59euXdtmHGy9CN/2y9yT7aqrrsI0TSZNmpT40+fzcdFFF6V0u50VjUZ59dVXOfbYY3c4WODz+bj99ttZuHAhK1as4J///Cdjx47l6aef5txzz7WoYhER6c408RcREbFIdnY25557LmvWrOG9997jX//6F5FIZKdXsD/88MPZsmULc+fO7fT28vLyGDRoEKtXr6aqqmqH56dMmQLAQQcd1Ga7EL+NYGe13uYuGo3ucsyECRPo168fTzzxBG+++SaLFy/m29/+NgUFBZ3ebip9+OGHVFdXt1nmvzMVFRVceOGFvP322wwePJgPP/xwh1s0ioiIpJom/iIiIhZqvef9008/zdNPP43L5eLCCy/cYdx1110HwGWXXcaaNWt2eL6hoSFxPv7ufP/738c0TW644YY2E/FNmzZx1113Jca0+uEPf4jL5eLOO+9k/vz5O7zeqlWr2t1m66kHK1eu3OUYh8PBFVdcwfr167n00kuB5F/UL5leeOEFHA4HZ5xxRpvHN27cyCeffLLD+IaGBurq6nA6nW2u3SAiIpIO+s0jIiJioaOOOooBAwbw3HPPEQ6HOe200ygpKdlh3HHHHcdvfvMbbrrpJgYPHswpp5zCgAEDqK+vZ/ny5VRWVjJ27Fjeeuut3W7v+uuv58033+Tll19m//3355RTTqGxsZHnnnuODRs28POf/5yxY8cmxo8YMYI//vGPXHnllRxwwAGcfvrpDB48mE2bNvHpp5/i9/sTKwV25bjjjuO+++7jsssu45xzziE3N5cePXrw4x//uM24H/zgB9x+++2sXbuW/fbbL7HaoCt66aWXGDNmDL169Wrz+OrVqzn88MMZPnw4Bx10EBUVFdTW1vLaa6+xbt06fvzjH5Ofn29R1SIi0l1p4i8iImIhwzC4+OKLExft29ky/1a/+MUvOPLII3n00UeZOnUqL7/8Mn6/nz59+nD55Zfz3e9+t93tZWVl8e677/Lggw/yzDPP8Nhjj+Fyudh///15+OGHueCCC3b4nssuu4yRI0dy//3388EHH/DSSy9RXFzMfvvtl/h0fnfGjx/PAw88wKRJk3jooYcIhUL069dvh4l/SUkJEyZM4MUXX+zSn/Z/+umnrFq1KrEKY1v9+/fnjjvu4IMPPmDKlCls2rSJwsJChg4dym9+8xvOP/98CyoWEZHuzjBN07S6CBEREZFYLMagQYPYuHEja9as2eNPxidOnMhTTz3F0qVL6d+/f2qKBG6++WbuvfdelixZwoABA5LymumqXUREuied4y8iIiJdwn//+1+WLVvGxRdfvFfL4QcMGIBhGPzmN79JYnVbvfjii+y///5JmfTn5uZiGEbiNo4iIiKpoKX+IiIiYqlf//rXbN68mccff5zc3FxuuummTr3OmWee2ebT8m2vVZBM8+bNS9pr3XzzzYRCocTfW2+fKCIikkxa6i8iIiKWMgwDt9vNvvvuywMPPMCxxx5rdUkiIiK2ok/8RURExFL6DEJERCS1dI6/iIiIiIiIiI1p4i8iIiIiIiJiY5r4i4iIiIiIiNiYJv4iIiIiIiIiNqaJv4iIiIiIiIiNaeIvIiIiIiIiYmOa+IuIiIiIiIjYmCb+IiIiIiIiIjamib+IiIiIiIiIjf0/1qhXxg7oJ6IAAAAASUVORK5CYII=", + "text/plain": [ + "
" ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "base", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.9.12" - }, - "vscode": { - "interpreter": { - "hash": "1b38577481a8c337d860514619746143ecc67292e11e5807b52b737c5351e332" - } + }, + "metadata": {}, + "output_type": "display_data" } + ], + "source": [ + "tidal.graphics.tidal_phase_exceedance(data.d, data.s, flood, ebb)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "base", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.12" }, - "nbformat": 4, - "nbformat_minor": 4 + "vscode": { + "interpreter": { + "hash": "1b38577481a8c337d860514619746143ecc67292e11e5807b52b737c5351e332" + } + } + }, + "nbformat": 4, + "nbformat_minor": 4 } diff --git a/examples/tidal_performance_example.ipynb b/examples/tidal_performance_example.ipynb index 1eb311853..a3cd56c62 100644 --- a/examples/tidal_performance_example.ipynb +++ b/examples/tidal_performance_example.ipynb @@ -1,690 +1,715 @@ { - "cells": [ - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Tidal Power Performance Analysis\n", - "\n", - "The following example demonstrates a simple workflow for conducting the power performance analysis of a turbine, given turbine specifications, power data, and Acoustic Doppler Current Profiler (ADCP) water measurements.\n", - "\n", - "In this case, the turbine specifications can be broken down into\n", - " 1. Shape of the rotor's swept area\n", - " 2. Turbine rotor diameter/height and width\n", - " 3. Turbine hub height (center of swept area)\n", - "\n", - "Additional data needed:\n", - " - Power data from the current energy converter (CEC)\n", - " - 2-dimensional water velocity data\n", - "\n", - "In this jupyter notebook, we'll be covering the following three topics:\n", - " 1. CEC power-curve\n", - " 2. Velocity profiles\n", - " 3. CEC efficiency profile (or power coefficient profile)\n", - "\n", - "Start by importing the necessary tools:" - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": { - "scrolled": true - }, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "c:\\Users\\mcve343\\Anaconda3\\lib\\site-packages\\xarray\\backends\\cfgrib_.py:29: UserWarning: Failed to load cfgrib - most likely there is a problem accessing the ecCodes library. Try `import cfgrib` to get the full error message\n", - " warnings.warn(\n" - ] - } - ], - "source": [ - "import numpy as np\n", - "import matplotlib.pyplot as plt\n", - "\n", - "from mhkit.tidal import performance\n", - "from mhkit.dolfyn import load" - ] - }, - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "In this case, we'll use ADCP data from the ADCP example notebook. I am importing a dataset from the ADCP example notebook. This data retains the original timestamps (1 Hz sampling frequency) and was rotated into the principal coordinate frame (streamwise-cross_stream-up)." - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "scrolled": true - }, - "outputs": [], - "source": [ - "# Open processed ADCP dataset\n", - "ds = load('data/tidal/adcp.principal.a1.20200815.nc')" - ] - }, - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Next, since we don't have power data, we'll invent a mock timeseries based off the cube of water velocity, just to have something to work with." - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": {}, - "outputs": [], - "source": [ - "# Streamwise and hub-height water velocity\n", - "streamwise_vel = ds['vel'].sel(dir='streamwise')\n", - "hub_height_vel = abs(streamwise_vel.isel(range=10))\n", - "\n", - "# Emulate power data\n", - "power = hub_height_vel**3 * 1e5\n", - "# Emulate cut-in speed by setting power at flow speeds below 0.5 m/s to 0 W\n", - "power = power.where(abs(streamwise_vel.mean('range')) > 0.5, 0)" - ] - }, - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "The first step for any of the following calculations is to first split velocity into ebb and flood tide. You'll need some background information on the site to know which direction is positive and which is negative in the data." - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": {}, - "outputs": [], - "source": [ - "ebb = streamwise_vel.where(streamwise_vel > 0)\n", - "flood = streamwise_vel.where(streamwise_vel < 0)" - ] - }, - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "With the ebb and flood velocities, we can also divide the power data into that for ebb and flood tides." - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": {}, - "outputs": [], - "source": [ - "# Make sure ebb and flood are on same timestamps\n", - "power = power.interp(time=streamwise_vel['time'])\n", - "\n", - "power_ebb = power.where(~ebb.mean('range').isnull(), 0)\n", - "power_flood = power.where(~flood.mean('range').isnull(), 0)" - ] - }, - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Power-curve\n", - "\n", - "Now with power and velocity divided into ebb and flood tides, we can calculate the power curve for the CEC in both conditions\n" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": {}, - "outputs": [], - "source": [ - "power_curve_ebb = performance.power_curve(\n", - " power_ebb,\n", - " velocity=ebb,\n", - " hub_height=4.2,\n", - " doppler_cell_size=0.5, \n", - " sampling_frequency=1, \n", - " window_avg_time=600,\n", - " turbine_profile='circular',\n", - " diameter=3,\n", - " height=None,\n", - " width=None)\n", - "power_curve_flood = performance.power_curve(\n", - " power_flood,\n", - " velocity=flood,\n", - " hub_height=4.2,\n", - " doppler_cell_size=0.5, \n", - " sampling_frequency=1, \n", - " window_avg_time=600,\n", - " turbine_profile='circular',\n", - " diameter=3,\n", - " height=None,\n", - " width=None)" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
U_avgU_avg_power_weightedP_avgP_stdP_maxP_min
U_bins
(0.0, 0.1]0.0674590.0000000.0000000.0000000.0000000.000000
(0.1, 0.2]0.1156140.0000000.0000000.0000000.0000000.000000
(0.2, 0.3]0.2496760.2256390.0000000.0000000.0000000.000000
(0.3, 0.4]0.3396000.3155610.0000000.0000000.0000000.000000
(0.4, 0.5]0.4593930.4372492890.7249862660.8100225551.535008229.914964
(0.5, 0.6]0.5485070.53297419677.3435184645.89093624323.23445415031.452582
(0.6, 0.7]0.6714490.65536240369.4355173679.26013545506.30667737083.470337
(0.7, 0.8]0.7261890.70484552413.9720242856.73714257360.86147350670.102583
(0.8, 0.9]0.8439580.82591679944.0008559798.56967496206.92802566531.815452
(0.9, 1.0]0.9387010.920960103970.0421755828.263891112163.97743499100.055332
(1.0, 1.1]1.0466071.026293148511.10000818809.350864171583.550611124179.073981
(1.1, 1.2]1.1473481.127691200340.8205816299.518554209073.741656187772.752668
\n", - "
" - ], - "text/plain": [ - " U_avg U_avg_power_weighted P_avg P_std \\\n", - "U_bins \n", - "(0.0, 0.1] 0.067459 0.000000 0.000000 0.000000 \n", - "(0.1, 0.2] 0.115614 0.000000 0.000000 0.000000 \n", - "(0.2, 0.3] 0.249676 0.225639 0.000000 0.000000 \n", - "(0.3, 0.4] 0.339600 0.315561 0.000000 0.000000 \n", - "(0.4, 0.5] 0.459393 0.437249 2890.724986 2660.810022 \n", - "(0.5, 0.6] 0.548507 0.532974 19677.343518 4645.890936 \n", - "(0.6, 0.7] 0.671449 0.655362 40369.435517 3679.260135 \n", - "(0.7, 0.8] 0.726189 0.704845 52413.972024 2856.737142 \n", - "(0.8, 0.9] 0.843958 0.825916 79944.000855 9798.569674 \n", - "(0.9, 1.0] 0.938701 0.920960 103970.042175 5828.263891 \n", - "(1.0, 1.1] 1.046607 1.026293 148511.100008 18809.350864 \n", - "(1.1, 1.2] 1.147348 1.127691 200340.820581 6299.518554 \n", - "\n", - " P_max P_min \n", - "U_bins \n", - "(0.0, 0.1] 0.000000 0.000000 \n", - "(0.1, 0.2] 0.000000 0.000000 \n", - "(0.2, 0.3] 0.000000 0.000000 \n", - "(0.3, 0.4] 0.000000 0.000000 \n", - "(0.4, 0.5] 5551.535008 229.914964 \n", - "(0.5, 0.6] 24323.234454 15031.452582 \n", - "(0.6, 0.7] 45506.306677 37083.470337 \n", - "(0.7, 0.8] 57360.861473 50670.102583 \n", - "(0.8, 0.9] 96206.928025 66531.815452 \n", - "(0.9, 1.0] 112163.977434 99100.055332 \n", - "(1.0, 1.1] 171583.550611 124179.073981 \n", - "(1.1, 1.2] 209073.741656 187772.752668 " - ] - }, - "execution_count": 7, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "power_curve_flood" - ] - }, - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Next we can plot the two power curves. A velocity bin is missing in the ebb tide power curve in this example because the data is so short, there are no samples for that bin." - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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E6NHj2bFihWMGDGClJQUtm3bxqJFi7TrHRwciImJ0Z6zR48eeHt7X/a1k5KScHd3x2KxUF5ert35LCgo4Pz589odTpthw4axf/9+AKKiovD19WXjxo0YjUYGDBjAHXfcwYcffgiog6jt7mdycjJlZWWMHj3a7vkqKioYOHCg3bHBgwdf8WcnhBBtjYxNMjYJIVo3meC1Yjqd7opDUUb07ESQyZmM/LI69zrogECTMyN6dmr0tNRLly6lsrKSzp07a8cURcFoNJKbm4u3tzdTp07l6aefZv78+XzxxRf07duXAQMGaG3rciV7LXr37s13332HwWAgODgYJycnAAoKCgC0sJvqz2k7ptPpGDlyJAkJCTg6OhIfH09UVBQWi4WkpCS2bt3KM888A4DVagXgxx9/tHufgPaaNm5ubpfttxAd1cLEheh1emYMmFHr3OL9i7EqVmZGz2yBnokrJWOTjE1CdHStfSyTEM12wqDX8erESEAdMKuzff/qxMhGH0ArKyv55z//ybx580hMTNQe+/fvJywsjBUrVgBw5513UlZWxurVq/niiy+0kBmAPn36UFlZyb59+7RjJ06cIC8v77Kv7+joSI8ePejatavdYObp6UlwcLBd6A2o6bIjIiK07+Pj40lISCAhIYH4+Hh0Oh0jRozgvffeo7S0VLvLGhkZiZOTE6mpqfTo0cPuERISck2fnRAdkV6nZ0HiAhbvX2x3fPH+xSxIXIBeJ8NSeyJjk4xNQrRHrX0skxW8dmRcVBCL7o/h9e+T7dJRB5qceXViJOOighr9NX/44Qdyc3N55JFHMJlMdud+/etfs3TpUp588knc3NyYNGkSr7zyCocPH2bKlClauz59+nDrrbfy2GOPsWjRIoxGI88++ywuLi617nJejeeff55XX32V7t27Ex0dzbJly0hMTNQGdlAH0aeffhoHBwdGjBihHXv22WeJiYnB09MTAA8PD5577jl+97vfYbVaGT58OAUFBWzduhV3d3cefPDBa+6nEB2J7W7ngsQF2ve2AXFW9Kw674aKtk3GJnsyNgnR9lUfyxQUnhjwRKsay2SC186MiwpidGQgO1NyyCwsw9/DmSFdfRr97qjN0qVLufXWW2sNoKCmen7rrbfYu3cvMTExTJ06lQkTJjBy5EhCQ0Pt2v7zn//kkUceYeTIkQQGBvL2229z6NAh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4eHBHXfcwR133MHcuXMZO3Ysc+fOZfTo0U3yenWx/RETHh6ubfT/+OOPGTp0qF276p/z1KlTefrpp5k/fz5ffPEFffv2bXV3okXLO198ngslF3DQOdD/Yqp6MGwY/h7OV3C1jhwnNYSuh1ePpuukuHYyNsnY1IRkbBItZVfGLnLKcvBy8mJoSlV4ZrXsmXBp/12fXj0hsCvknLp0MmgABEc3U28bJhO81kynu7pQFJ9u6gPAoeqXf5chzfLD5ubmRo8etf8Y69GjB46OjmzevJkpU6YAaojK7t27eeaZZ7R28fHxbNiwgR07dvDGG2/g5eVFZGQkc+fOxd/fn4iICEDd3G2xWMjMzNRCMa5H9T6npaXh4OBQ5/toSjqdjj59+rB161ZAvcML2O2DMJlMBAUFsX37dkaOHAlAZWUle/bsISYm5qpfs7S0lCVLljBy5Egt7KZz586cOnWqwbued955J48//jirV6/miy++YNq0aVf92qL9s63eRfpG4npqu3owfDhDuvoQZHImI7+szn14OiDQ5EyZTp089PCWCV6rJGOTjE1VZGwS7YktPPOWgBswHlkKegfofWm13GJV2Fm9wHnJRTB1gdwzl/YXtxIywRNNys3NjSeeeILnn38eHx8fQkNDeffddykpKeGRRx7R2sXHx/O3v/0NHx8fIiMjtWPz58/X4u4BevXqxdSpU3nggQeYN28eAwcO5OLFi6xfv55+/fpx2223Nev7S01NJScnh9TUVCwWi3bXtUePHnZ3bW0SExN59dVXmTZtGpGRkTg6OrJx40Y++eQTXnzxRUDNKubi4sLq1avp0qULzs7OmEwmnn76ad555x169uxJREQE77//Pnl5eVfUz8zMTMrKyigsLGTPnj28++67XLx4UdskD/Daa68xe/ZsPD09GT9+POXl5ezevZvc3FzmzJkDqP89J02axCuvvMLhw4e1P4yEqG7Phar9d969IfsHQAehsRj0Ol6dGMkTn++tdY0OmGJYy5Od0pmZqd4hlRU80VRkbLInY5Po6MxWM2tT1wLVwjPDR4DrpULmRzIKKCirxM3RQN9gTzDoYdYOyE2FxBXgEVjXU7cImeC1Vx6B6gbPVvDD9s4772C1Wpk2bRqFhYUMHjyYn376CW9vb62N7c5fXFycFr4SFxfHBx98UCsL1rJly5g7dy7PPvss586d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", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "def plot_power_curve(P_curve, ax):\n", - " ax.plot(P_curve['U_avg'], P_curve['P_avg'], '-o', color='C0', label='Avg Power')\n", - " ax.plot(P_curve['U_avg'], (P_curve['P_avg'] - P_curve['P_std']), '--+', color='C1', label='Power - 1 Std Dev')\n", - " ax.plot(P_curve['U_avg'], (P_curve['P_avg'] + P_curve['P_std']), '-+', color='C1', label='Power + 1 Std Dev')\n", - " ax.plot(P_curve['U_avg'], P_curve['P_min'], '--x', color='C2', label='Min Power')\n", - " ax.plot(P_curve['U_avg'], P_curve['P_max'], '-x', color='C2', label='Max Power')\n", - " ax.set(xlabel='Flow Speed at Hub Height [m/s]', ylabel='Power [W]')\n", - " ax.legend()\n", - "\n", - "fig, ax = plt.subplots(1,2, figsize=(10,7))\n", - "plot_power_curve(power_curve_ebb, ax[0])\n", - "plot_power_curve(power_curve_flood, ax[1])" - ] - }, - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Velocity Profiles\n", - "Various velocity profiles can be created next from the water velocity data, and we can do this again with ebb and flood tide. These functions are following three steps:\n", - " 1. Reshape the data into bins by time (ensembles)\n", - " 2. Apply a function to the ensembles to get ensemble statistics (mean, root-mean-square (RMS), or standard devation)\n", - " 3. Regroup and bin the ensemble statistics by flow speed\n", - "\n", - "These profiles are created using the `velocity_profiles` method, and a profile is specified using the \"function\" argument. For the average velocity profiles, we'll set the function = 'mean'.\n" - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": {}, - "outputs": [], - "source": [ - "avg_profile_ebb = performance.velocity_profiles(\n", - " velocity=ebb, \n", - " hub_height=4.2,\n", - " water_depth=10,\n", - " sampling_frequency=1, \n", - " window_avg_time=600,\n", - " function='mean')\n", - "avg_profile_flood = performance.velocity_profiles(\n", - " velocity=ebb, \n", - " hub_height=4.2,\n", - " water_depth=10,\n", - " sampling_frequency=1, \n", - " window_avg_time=600,\n", - " function='mean')\n" - ] - }, - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### RMS Tidal Velocity\n", - "\n", - "For RMS velocity profiles, we'll set the function = 'rms'." - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": {}, - "outputs": [], - "source": [ - "rms_profile_ebb = performance.velocity_profiles(\n", - " velocity=ebb, \n", - " hub_height=4.2,\n", - " water_depth=10,\n", - " sampling_frequency=1, \n", - " window_avg_time=600,\n", - " function='rms')\n", - "rms_profile_flood = performance.velocity_profiles(\n", - " velocity=ebb, \n", - " hub_height=4.2,\n", - " water_depth=10,\n", - " sampling_frequency=1, \n", - " window_avg_time=600,\n", - " function='rms')" - ] - }, - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Std Dev Tidal Velocity\n", - "\n", - "And to get the standard deviation, we'll set function = 'std'." - ] - }, - { - "cell_type": "code", - "execution_count": 11, - "metadata": {}, - "outputs": [], - "source": [ - "std_profile_ebb = performance.velocity_profiles(\n", - " velocity=ebb, \n", - " hub_height=4.2,\n", - " water_depth=10,\n", - " sampling_frequency=1, \n", - " window_avg_time=600,\n", - " function='std')\n", - "std_profile_flood = performance.velocity_profiles(\n", - " velocity=ebb, \n", - " hub_height=4.2,\n", - " water_depth=10,\n", - " sampling_frequency=1, \n", - " window_avg_time=600,\n", - " function='std')" - ] - }, - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Finally, we can plot these variables together based on ebb and flood tides. The following code plots the mean and RMS profiles as line plots with \"x\" and \"+\" markers, respectively, and shades the area between +/- 1 standard deviation from the mean." - ] - }, - { - "cell_type": "code", - "execution_count": 12, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "Text(0.5, 1.0, 'Flood Tide')" - ] - }, - "execution_count": 12, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAA0oAAAJuCAYAAACOkPJ5AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/NK7nSAAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOzdeXxU133//9edRSON9gUhCQnEDkJgxBK22IaAMcFLncROWieO3SZu2qTN6uZbf5s0idPEv+SbJk3dLE2a1o2z2nHSOl4wNt5ZhADJIMQmLAQSEkL7Mlpm5t7fH1czkkDL3NG9oxnp83w8eICuZu69YEtvnXM/53MUTdM0hBBCCCGEEEIE2ab6BoQQQgghhBAi2shASQghhBBCCCGuIQMlIYQQQgghhLiGDJSEEEIIIYQQ4hoyUBJCCCGEEEKIa8hASQghhBBCCCGuIQMlIYQQQgghhLiGDJSEEEIIIYQQ4hoyUBJCCCGEEEKIa8hASYhRPP744yiKMuav1157LfhaRVH4m7/5m5DPeeTIEcP3M969XHtfDzzwAIWFhSGf96tf/arh+xFCCGGN8fLnoYceCr6usLCQBx54YErucaLs2Lp1a0iZ9dWvfjX4971w4cKE1926dStbt2417e8hxEQcU30DQkSz//qv/2LZsmXXHS8qKorofRw8eHDEx1//+td59dVXeeWVV0YcLyoqoqCggM985jORvD0hhBAmGy1/8vLypuhujPnhD39IZ2dn8OPnnnuOf/qnf7ru75Sfn4/L5eLgwYPk5uZOxa0KMS4ZKAkxjuLiYtatWzfVt8HGjRtHfDxr1ixsNtt1xwFSUlIidVtCCCEsEi35E45rJxNPnz4NjP13mjVrVkTuSwijpPROCJP8+7//O0uWLMHlclFUVMRvfvObUV/X1tbGn//5n5ORkUFiYiJ33HEH77zzjmn3MVrpXWdnJw8++CCZmZkkJSWxa9cuzp49O+r7z507x7333kt2djYul4vly5fzgx/8wLT7E0IIYY2LFy/ykY98ZMT373/+539GVdURr2ttbeWTn/wkc+bMIS4ujgULFvAP//AP9Pf3j3idkewI12ild5qm8e1vf5t58+YRHx/PmjVreOGFF0Z9f2dnJw899BDz588nLi6OOXPm8NnPfpaenh5T71PMTPJESYhx+P1+fD7fiGOKomC320cce+aZZ3j11Vd55JFHSExM5Ic//CF/9md/hsPh4O677x7x2o997GPccsst/OpXv+LSpUt86UtfYuvWrRw/fpy0tDTT/w6apnHXXXdx4MAB/vEf/5H169ezf/9+3vve91732qqqKjZv3szcuXP553/+Z3JycnjxxRf59Kc/TXNzM1/5yldMvz8hhBDXGy1/HI6xf2y7evUqmzdvZmBggK9//esUFhby7LPP8tBDD3H+/Hl++MMfAtDX18e2bds4f/48X/va11i1ahVvvvkmjz76KBUVFTz33HOAseww29e+9jW+9rWv8bGPfYy7776bS5cu8eCDD+L3+1m6dGnwdR6Ph5tvvpm6ujr+7//9v6xatYqTJ0/yj//4j5w4cYKXX34ZRVEsv18xjWlCiOv813/9lwaM+stut494LaAlJCRojY2NwWM+n09btmyZtmjRouvO+b73vW/E+/fv368B2j/90z+FfH/333+/lpiYOObn5s2bF/z4hRde0ADt+9///ojXfeMb39AA7Stf+Urw2K233qrl5+drHR0dI177N3/zN1p8fLzW2toa8j0KIYQwbrz88Xq9wdfNmzdPu//++4Mf//3f/70GaKWlpSPO99d//deaoijamTNnNE3TtB//+McaoD355JMjXvetb31LA7S9e/dqmmYsO0L9O5WVlY35uZqaGk3TNK2trU2Lj48fMytvvvnm4LFHH31Us9ls1533d7/7nQZozz//fMj3KMRopPROiHH8/Oc/p6ysbMSv0tLS6163fft2Zs+eHfzYbrfzoQ99iOrqaurq6ka89sMf/vCIjzdv3sy8efN49dVXLfk7BM577XXvvffeER/39fWxb98+3ve+9+F2u/H5fMFfu3fvpq+vj0OHDllyj0IIIUYaLX/Ge6L0yiuvUFRUxLve9a4Rxx944AE0TQs2/3nllVdITEy8rtoh0EFv3759QOjZYbaDBw/S19c3ZlYO9+yzz1JcXMzq1atHZNatt956XYdaIcIhpXdCjGP58uUhLabNyckZ81hLSwv5+fkTvralpWUSdzq2lpYWHA4HmZmZo97f8Nf5fD4ee+wxHnvssVHP1dzcbMk9CiGEGCnU/AloaWkZdWuIQKe8QMa0tLSQk5NzXUladnY2DodjxOtCyQ6zBa4/Xq4GXLlyherqapxO56jnkswSkyUDJSFM0NjYOOaxa0NmrNcu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HWjf30Cr1aJXr15wc3PTtw0YMAAigitXriA4OLhLMzfWnjGsWLEC0dHRWLhwIQBgyJAhcHJyQkxMDP74xz9a/LteljSPO8JS5jF1LtYm8z+nWZvqsTaZliXN446wlHncGbr1J0p2dnYICwtDamqqQXtqaiqioqKa3ScyMrLJ9vv27UN4eDhUKlWXZW1Oe/ID9av8mTNnYvPmzWY/b9fYMbi6uuLf//43Tp48qf9JSkpCv379cPLkSYwaNcpU0QG0728QHR2N77//HuXl5fq2vLw8KJVK+Pr6dmne5rRnDHfv3oVSafjyYWNjA+DHd78smSXN4/aypHlMnYu1yfzPadameqxNpmVJ87i9LGkedwpT3jnCEjXcenLDhg2Sk5Mj8+bNEycnJ7l48aKIiCxatEimT5+u377h1o0vvvii5OTkyIYNGyziFqxtzb9582axtbWVd999VwoLC/U/t2/fNkt+EePH0Ji57yxkbP6ysjLx9fWVn/3sZ/Kf//xHMjIyJDg4WJ5//nlzDcHoMSQnJ4utra2sW7dO8vPzZf/+/RIeHi4jR440S/6ysjLJzs6W7OxsASCrVq2S7Oxs/S1kLX0eG5vfEucxdS7WJvM/p1mbWJs6irXJ/PO4o7r9QklE5N133xV/f3+xs7OT4cOHS0ZGhv53M2bMkNjYWIPt09PTZdiwYWJnZycBAQHy3nvvmTixIWPyx8bGCoAmPzNmzDB98PsY+ze4n7mLkYjx+U+fPi1jxowRBwcH8fX1lfnz58vdu3dNnNqQsWNYs2aNhISEiIODg2i1Wnn22WflypUrJk5dLy0trcXntaXPY2PzW+o8ps7F2mT+5zRrE2tTR7A2WcY87giFiBV8FklERERERGRC3foaJSIiIiIiouZwoURERERERNQIF0pERERERESNcKFERERERETUCBdKREREREREjXChRERERERE1AgXSkRERERERI1woURERERERNQIF0pEFiA9PR0KhQK3b9+2yOM1Pq5CocDkyZM79dit2bRpk77vefPmmbRvIqLuiLWpdaxNDzculMhivP/++3BxcUFtba2+rby8HCqVCjExMQbbZmZmQqFQIC8vr9XjdtULMwBcu3YNKpUKn3zySbO/nz17NoYMGdLp/bYmKioKhYWFcHNzA1D/Qu7u7t5px8/NzcWmTZs65VgFBQVQq9UoLS1t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", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "def plot_velocity_profiles(avg_profile, rms_profile, std_profile, ax):\n", - " alt = avg_profile.index\n", - " mean = avg_profile.values.T\n", - " rms = rms_profile.values.T\n", - " std = std_profile.values.T\n", - "\n", - " ax.plot(mean[0], alt, '-x', label=avg_profile.columns[0])\n", - " ax.plot(mean[1], alt, '-x', label=avg_profile.columns[1])\n", - " ax.plot(mean[2], alt, '-x', label=avg_profile.columns[2])\n", - "\n", - " ax.fill_betweenx(alt, mean[0]-std[0], mean[0]+std[0], facecolor='lightblue')\n", - " ax.fill_betweenx(alt, mean[1]-std[1], mean[1]+std[1], facecolor='moccasin')\n", - " ax.fill_betweenx(alt, mean[2]-std[2], mean[2]+std[2], facecolor='palegreen')\n", - "\n", - " ax.plot(rms[0], alt, '+', color='C0')\n", - " ax.plot(rms[1], alt, '+', color='C1')\n", - " ax.plot(rms[2], alt, '+', color='C2')\n", - " ax.set(xlabel='Water Velocity [m/s]', ylabel='Altitude [m]', ylim=(0,10))\n", - " ax.legend()\n", - "\n", - "fig, ax = plt.subplots(1, 2, figsize=(10, 7))\n", - "plot_velocity_profiles(avg_profile_ebb, rms_profile_ebb, std_profile_ebb, ax[0])\n", - "ax[0].set_title('Ebb Tide')\n", - "plot_velocity_profiles(avg_profile_flood, rms_profile_flood, std_profile_flood, ax[1])\n", - "ax[1].set_title('Flood Tide')" - ] - }, - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Current Energy Converter Efficiency\n", - "\n", - "The CEC efficiency, or device power coefficient, can be found using the `device_efficiency` method." - ] - }, - { - "cell_type": "code", - "execution_count": 13, - "metadata": {}, - "outputs": [], - "source": [ - "efficiency_ebb = performance.device_efficiency(\n", - " power=power_ebb,\n", - " velocity=ebb,\n", - " water_density=ds['water_density'],\n", - " capture_area=np.pi*1.5**2,\n", - " hub_height=4.2,\n", - " sampling_frequency=1,\n", - " window_avg_time=600)\n", - "efficiency_flood = performance.device_efficiency(\n", - " power=power_flood,\n", - " velocity=flood,\n", - " water_density=ds['water_density'],\n", - " capture_area=np.pi*1.5**2,\n", - " hub_height=4.2,\n", - " sampling_frequency=1,\n", - " window_avg_time=600)" - ] - }, - { - "attachments": {}, - "cell_type": "markdown", - "metadata": {}, - "source": [ - "And these efficiency curves can be plotted as profiles:" - ] - }, - { - "cell_type": "code", - "execution_count": 14, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "Text(0.5, 1.0, 'Flood Tide')" - ] - }, - "execution_count": 14, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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BocjyeY2b96My5cvS/d1Oh1Wr16NDh06GPWCAcCXX35pdH/Xrl24cOGC1RYfHDJkSK3XXbVqldF9Dw8PDBkyBIcOHUL37t3Rp0+fGrdbE0oisi/Dhg3D8ePHcfDgQaPjK1asgEqlkuLBsGHDUFJSgu+//77GeYbHAdPjh6UNGDAAbm5udcbLm9177704d+4cAgICao1bpi5eTZbBnjCymKNHj9aYmQQAHTp0MFrTJjAwEEOHDsXrr78uzY48efJkrctU7N+/H8888wwefvhhZGZmYs6cOWjdujWef/55q7yHkSNHYvDgwZg1axZKS0vRp08f7Ny5E1988UWNc99//30MGjQId955J6ZMmYJ27dqhuLgYZ8+exU8//VRjcVgisi8vvfQSVqxYgXvuuQf/+te/EB4ejrVr12LJkiWYMmUKOnXqBAB48skn8dFHH2HChAnIyMhAt27dsGPHDixYsAB33303hg8fDsC8+GFJLVq0wMyZM/Hmm28axcuEhIQaw5HTp0/Hd999h8GDB+Oll15C9+7dodfrcfHiRWzcuBF///vf0b9/f6u2l24i98wAUr76ZiYBEEuXLpXOBSCmTp0qlixZIjp06CBcXFxEly5dxJdfflnra27cuFE88cQTws/PT7i7u4u7775bnDlzxqz2mTM7UgghCgoKxNNPPy38/PyEh4eHGDFihDh58mSts5vS09PF008/LVq3bi1cXFxEy5YtxcCBA82avUlETVPfTMKb3To7UgghLly4IMaPHy8CAgKEi4uL6Ny5s3jnnXeETqczOi83N1c899xzIjQ0VDg7O4vw8HAxe/ZsUV5ebnSeOfGjse/p1tmRQgih1+tFYmKiCAsLE66urqJ79+7ip59+ErGxsUazI4UQoqSkRLz22muic+fOwtXVVfj6+opu3bqJl156yWjmOlmfSggh5Ej+iIiIiJoz1oQRERERyYBJGBEREZEMmIQRERERyYBJGBEREZEMmIQRERERyYBJGBEREZEMHH6xVr1ejz///BPe3t419v0iIuUSQqC4uBitWrWCk5Myv08yPhE5JlPjk8MnYX/++SfCwsLkbgYRWUlmZmaN7a6UgvGJyLE1FJ8cPgnz9vYGUP2D8PHxkbk1RGQpRUVFCAsLk/7GlYjxicgxmRqfHD4JM3Tx+/j4MMgROSAlD+MxPhE5tobikzILKYiI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", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "def plot_efficiency(efficiency, ax):\n", - " means = efficiency.U_avg.values.T\n", - " eta = efficiency.Efficiency.values.T\n", - " ax.plot(means, eta, '-o')\n", - " ax.set(xlabel=\"Hub Height Flow Velocity [m/s]\", ylabel='Efficiency [%]')\n", - "\n", - "fig, ax = plt.subplots(1, 2, figsize=(7, 6))\n", - "plot_efficiency(efficiency_ebb, ax[0])\n", - "ax[0].set_title('Ebb Tide')\n", - "plot_efficiency(efficiency_flood, ax[1])\n", - "ax[1].set_title('Flood Tide')" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "base", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.9.15" - }, - "vscode": { - "interpreter": { - "hash": "357206ab7e4935423e95e994af80e27e7e6c0672abcebb9d86ab743298213348" - } - } + "cells": [ + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Tidal Power Performance Analysis\n", + "\n", + "The following example demonstrates a simple workflow for conducting the power performance analysis of a turbine, given turbine specifications, power data, and Acoustic Doppler Current Profiler (ADCP) water measurements.\n", + "\n", + "In this case, the turbine specifications can be broken down into\n", + " 1. Shape of the rotor's swept area\n", + " 2. Turbine rotor diameter/height and width\n", + " 3. Turbine hub height (center of swept area)\n", + "\n", + "Additional data needed:\n", + " - Power data from the current energy converter (CEC)\n", + " - 2-dimensional water velocity data\n", + "\n", + "In this jupyter notebook, we'll be covering the following three topics:\n", + " 1. CEC power-curve\n", + " 2. Velocity profiles\n", + " 3. CEC efficiency profile (or power coefficient profile)\n", + "\n", + "Start by importing the necessary tools:" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "c:\\Users\\mcve343\\Anaconda3\\lib\\site-packages\\xarray\\backends\\cfgrib_.py:29: UserWarning: Failed to load cfgrib - most likely there is a problem accessing the ecCodes library. Try `import cfgrib` to get the full error message\n", + " warnings.warn(\n" + ] + } + ], + "source": [ + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "\n", + "from mhkit.tidal import performance\n", + "from mhkit.dolfyn import load" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "In this case, we'll use ADCP data from the ADCP example notebook. I am importing a dataset from the ADCP example notebook. This data retains the original timestamps (1 Hz sampling frequency) and was rotated into the principal coordinate frame (streamwise-cross_stream-up)." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "scrolled": true + }, + "outputs": [], + "source": [ + "# Open processed ADCP dataset\n", + "ds = load(\"data/tidal/adcp.principal.a1.20200815.nc\")" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Next, since we don't have power data, we'll invent a mock timeseries based off the cube of water velocity, just to have something to work with." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "# Streamwise and hub-height water velocity\n", + "streamwise_vel = ds[\"vel\"].sel(dir=\"streamwise\")\n", + "hub_height_vel = abs(streamwise_vel.isel(range=10))\n", + "\n", + "# Emulate power data\n", + "power = hub_height_vel**3 * 1e5\n", + "# Emulate cut-in speed by setting power at flow speeds below 0.5 m/s to 0 W\n", + "power = power.where(abs(streamwise_vel.mean(\"range\")) > 0.5, 0)" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The first step for any of the following calculations is to first split velocity into ebb and flood tide. You'll need some background information on the site to know which direction is positive and which is negative in the data." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "ebb = streamwise_vel.where(streamwise_vel > 0)\n", + "flood = streamwise_vel.where(streamwise_vel < 0)" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "With the ebb and flood velocities, we can also divide the power data into that for ebb and flood tides." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "# Make sure ebb and flood are on same timestamps\n", + "power = power.interp(time=streamwise_vel[\"time\"])\n", + "\n", + "power_ebb = power.where(~ebb.mean(\"range\").isnull(), 0)\n", + "power_flood = power.where(~flood.mean(\"range\").isnull(), 0)" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Power-curve\n", + "\n", + "Now with power and velocity divided into ebb and flood tides, we can calculate the power curve for the CEC in both conditions\n" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [], + "source": [ + "power_curve_ebb = performance.power_curve(\n", + " power_ebb,\n", + " velocity=ebb,\n", + " hub_height=4.2,\n", + " doppler_cell_size=0.5,\n", + " sampling_frequency=1,\n", + " window_avg_time=600,\n", + " turbine_profile=\"circular\",\n", + " diameter=3,\n", + " height=None,\n", + " width=None,\n", + ")\n", + "power_curve_flood = performance.power_curve(\n", + " power_flood,\n", + " velocity=flood,\n", + " hub_height=4.2,\n", + " doppler_cell_size=0.5,\n", + " sampling_frequency=1,\n", + " window_avg_time=600,\n", + " turbine_profile=\"circular\",\n", + " diameter=3,\n", + " height=None,\n", + " width=None,\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
U_avgU_avg_power_weightedP_avgP_stdP_maxP_min
U_bins
(0.0, 0.1]0.0674590.0000000.0000000.0000000.0000000.000000
(0.1, 0.2]0.1156140.0000000.0000000.0000000.0000000.000000
(0.2, 0.3]0.2496760.2256390.0000000.0000000.0000000.000000
(0.3, 0.4]0.3396000.3155610.0000000.0000000.0000000.000000
(0.4, 0.5]0.4593930.4372492890.7249862660.8100225551.535008229.914964
(0.5, 0.6]0.5485070.53297419677.3435184645.89093624323.23445415031.452582
(0.6, 0.7]0.6714490.65536240369.4355173679.26013545506.30667737083.470337
(0.7, 0.8]0.7261890.70484552413.9720242856.73714257360.86147350670.102583
(0.8, 0.9]0.8439580.82591679944.0008559798.56967496206.92802566531.815452
(0.9, 1.0]0.9387010.920960103970.0421755828.263891112163.97743499100.055332
(1.0, 1.1]1.0466071.026293148511.10000818809.350864171583.550611124179.073981
(1.1, 1.2]1.1473481.127691200340.8205816299.518554209073.741656187772.752668
\n", + "
" + ], + "text/plain": [ + " U_avg U_avg_power_weighted P_avg P_std \\\n", + "U_bins \n", + "(0.0, 0.1] 0.067459 0.000000 0.000000 0.000000 \n", + "(0.1, 0.2] 0.115614 0.000000 0.000000 0.000000 \n", + "(0.2, 0.3] 0.249676 0.225639 0.000000 0.000000 \n", + "(0.3, 0.4] 0.339600 0.315561 0.000000 0.000000 \n", + "(0.4, 0.5] 0.459393 0.437249 2890.724986 2660.810022 \n", + "(0.5, 0.6] 0.548507 0.532974 19677.343518 4645.890936 \n", + "(0.6, 0.7] 0.671449 0.655362 40369.435517 3679.260135 \n", + "(0.7, 0.8] 0.726189 0.704845 52413.972024 2856.737142 \n", + "(0.8, 0.9] 0.843958 0.825916 79944.000855 9798.569674 \n", + "(0.9, 1.0] 0.938701 0.920960 103970.042175 5828.263891 \n", + "(1.0, 1.1] 1.046607 1.026293 148511.100008 18809.350864 \n", + "(1.1, 1.2] 1.147348 1.127691 200340.820581 6299.518554 \n", + "\n", + " P_max P_min \n", + "U_bins \n", + "(0.0, 0.1] 0.000000 0.000000 \n", + "(0.1, 0.2] 0.000000 0.000000 \n", + "(0.2, 0.3] 0.000000 0.000000 \n", + "(0.3, 0.4] 0.000000 0.000000 \n", + "(0.4, 0.5] 5551.535008 229.914964 \n", + "(0.5, 0.6] 24323.234454 15031.452582 \n", + "(0.6, 0.7] 45506.306677 37083.470337 \n", + "(0.7, 0.8] 57360.861473 50670.102583 \n", + "(0.8, 0.9] 96206.928025 66531.815452 \n", + "(0.9, 1.0] 112163.977434 99100.055332 \n", + "(1.0, 1.1] 171583.550611 124179.073981 \n", + "(1.1, 1.2] 209073.741656 187772.752668 " + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "power_curve_flood" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Next we can plot the two power curves. A velocity bin is missing in the ebb tide power curve in this example because the data is so short, there are no samples for that bin." + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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E6NHj2bFihWMGDGClJQUtm3bxqJFi7TrHRwciImJ0Z6zR48eeHt7X/a1k5KScHd3x2KxUF5ert35LCgo4Pz589odTpthw4axf/9+AKKiovD19WXjxo0YjUYGDBjAHXfcwYcffgiog6jt7mdycjJlZWWMHj3a7vkqKioYOHCg3bHBgwdf8WcnhBBtjYxNMjYJIVo3meC1Yjqd7opDUUb07ESQyZmM/LI69zrogECTMyN6dmr0tNRLly6lsrKSzp07a8cURcFoNJKbm4u3tzdTp07l6aefZv78+XzxxRf07duXAQMGaG3rciV7LXr37s13332HwWAgODgYJycnAAoKCgC0sJvqz2k7ptPpGDlyJAkJCTg6OhIfH09UVBQWi4WkpCS2bt3KM888A4DVagXgxx9/tHufgPaaNm5ubpfttxAd1cLEheh1emYMmFHr3OL9i7EqVmZGz2yBnokrJWOTjE1CdHStfSyTEM12wqDX8erESEAdMKuzff/qxMhGH0ArKyv55z//ybx580hMTNQe+/fvJywsjBUrVgBw5513UlZWxurVq/niiy+0kBmAPn36UFlZyb59+7RjJ06cIC8v77Kv7+joSI8ePejatavdYObp6UlwcLBd6A2o6bIjIiK07+Pj40lISCAhIYH4+Hh0Oh0jRozgvffeo7S0VLvLGhkZiZOTE6mpqfTo0cPuERISck2fnRAdkV6nZ0HiAhbvX2x3fPH+xSxIXIBeJ8NSeyJjk4xNQrRHrX0skxW8dmRcVBCL7o/h9e+T7dJRB5qceXViJOOighr9NX/44Qdyc3N55JFHMJlMdud+/etfs3TpUp588knc3NyYNGkSr7zyCocPH2bKlClauz59+nDrrbfy2GOPsWjRIoxGI88++ywuLi617nJejeeff55XX32V7t27Ex0dzbJly0hMTNQGdlAH0aeffhoHBwdGjBihHXv22WeJiYnB09MTAA8PD5577jl+97vfYbVaGT58OAUFBWzduhV3d3cefPDBa+6nEB2J7W7ngsQF2ve2AXFW9Kw674aKtk3GJnsyNgnR9lUfyxQUnhjwRKsay2SC186MiwpidGQgO1NyyCwsw9/DmSFdfRr97qjN0qVLufXWW2sNoKCmen7rrbfYu3cvMTExTJ06lQkTJjBy5EhCQ0Pt2v7zn//kkUceYeTIkQQGBvL2229z6NAh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4eHBHXfcwR133MHcuXMZO3Ysc+fOZfTo0U3yenWx/RETHh6ubfT/+OOPGTp0qF276p/z1KlTefrpp5k/fz5ffPEFffv2bXV3okXLO198ngslF3DQOdD/Yqp6MGwY/h7OV3C1jhwnNYSuh1ePpuukuHYyNsnY1IRkbBItZVfGLnLKcvBy8mJoSlV4ZrXsmXBp/12fXj0hsCvknLp0MmgABEc3U28bJhO81kynu7pQFJ9u6gPAoeqXf5chzfLD5ubmRo8etf8Y69GjB46OjmzevJkpU6YAaojK7t27eeaZZ7R28fHxbNiwgR07dvDGG2/g5eVFZGQkc+fOxd/fn4iICEDd3G2xWMjMzNRCMa5H9T6npaXh4OBQ5/toSjqdjj59+rB161ZAvcML2O2DMJlMBAUFsX37dkaOHAlAZWUle/bsISYm5qpfs7S0lCVLljBy5Egt7KZz586cOnWqwbued955J48//jirV6/miy++YNq0aVf92qL9s63eRfpG4npqu3owfDhDuvoQZHImI7+szn14OiDQ5EyZTp089PCWCV6rJGOTjE1VZGwS7YktPPOWgBswHlkKegfofWm13GJV2Fm9wHnJRTB1gdwzl/YXtxIywRNNys3NjSeeeILnn38eHx8fQkNDeffddykpKeGRRx7R2sXHx/O3v/0NHx8fIiMjtWPz58/X4u4BevXqxdSpU3nggQeYN28eAwcO5OLFi6xfv55+/fpx2223Nev7S01NJScnh9TUVCwWi3bXtUePHnZ3bW0SExN59dVXmTZtGpGRkTg6OrJx40Y++eQTXnzxRUDNKubi4sLq1avp0qULzs7OmEwmnn76ad555x169uxJREQE77//Pnl5eVfUz8zMTMrKyigsLGTPnj28++67XLx4UdskD/Daa68xe/ZsPD09GT9+POXl5ezevZvc3FzmzJkDqP89J02axCuvvMLhw4e1P4yEqG7Phar9d969IfsHQAehsRj0Ol6dGMkTn++tdY0OmGJYy5Od0pmZqd4hlRU80VRkbLInY5Po6MxWM2tT1wLVwjPDR4DrpULmRzIKKCirxM3RQN9gTzDoYdYOyE2FxBXgEVjXU7cImeC1Vx6B6gbPVvDD9s4772C1Wpk2bRqFhYUMHjyYn376CW9vb62N7c5fXFycFr4SFxfHBx98UCsL1rJly5g7dy7PPvss586d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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "def plot_power_curve(P_curve, ax):\n", + " ax.plot(P_curve[\"U_avg\"], P_curve[\"P_avg\"], \"-o\", color=\"C0\", label=\"Avg Power\")\n", + " ax.plot(\n", + " P_curve[\"U_avg\"],\n", + " (P_curve[\"P_avg\"] - P_curve[\"P_std\"]),\n", + " \"--+\",\n", + " color=\"C1\",\n", + " label=\"Power - 1 Std Dev\",\n", + " )\n", + " ax.plot(\n", + " P_curve[\"U_avg\"],\n", + " (P_curve[\"P_avg\"] + P_curve[\"P_std\"]),\n", + " \"-+\",\n", + " color=\"C1\",\n", + " label=\"Power + 1 Std Dev\",\n", + " )\n", + " ax.plot(P_curve[\"U_avg\"], P_curve[\"P_min\"], \"--x\", color=\"C2\", label=\"Min Power\")\n", + " ax.plot(P_curve[\"U_avg\"], P_curve[\"P_max\"], \"-x\", color=\"C2\", label=\"Max Power\")\n", + " ax.set(xlabel=\"Flow Speed at Hub Height [m/s]\", ylabel=\"Power [W]\")\n", + " ax.legend()\n", + "\n", + "\n", + "fig, ax = plt.subplots(1, 2, figsize=(10, 7))\n", + "plot_power_curve(power_curve_ebb, ax[0])\n", + "plot_power_curve(power_curve_flood, ax[1])" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Velocity Profiles\n", + "Various velocity profiles can be created next from the water velocity data, and we can do this again with ebb and flood tide. These functions are following three steps:\n", + " 1. Reshape the data into bins by time (ensembles)\n", + " 2. Apply a function to the ensembles to get ensemble statistics (mean, root-mean-square (RMS), or standard devation)\n", + " 3. Regroup and bin the ensemble statistics by flow speed\n", + "\n", + "These profiles are created using the `velocity_profiles` method, and a profile is specified using the \"function\" argument. For the average velocity profiles, we'll set the function = 'mean'.\n" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [], + "source": [ + "avg_profile_ebb = performance.velocity_profiles(\n", + " velocity=ebb,\n", + " hub_height=4.2,\n", + " water_depth=10,\n", + " sampling_frequency=1,\n", + " window_avg_time=600,\n", + " function=\"mean\",\n", + ")\n", + "avg_profile_flood = performance.velocity_profiles(\n", + " velocity=ebb,\n", + " hub_height=4.2,\n", + " water_depth=10,\n", + " sampling_frequency=1,\n", + " window_avg_time=600,\n", + " function=\"mean\",\n", + ")" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### RMS Tidal Velocity\n", + "\n", + "For RMS velocity profiles, we'll set the function = 'rms'." + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [], + "source": [ + "rms_profile_ebb = performance.velocity_profiles(\n", + " velocity=ebb,\n", + " hub_height=4.2,\n", + " water_depth=10,\n", + " sampling_frequency=1,\n", + " window_avg_time=600,\n", + " function=\"rms\",\n", + ")\n", + "rms_profile_flood = performance.velocity_profiles(\n", + " velocity=ebb,\n", + " hub_height=4.2,\n", + " water_depth=10,\n", + " sampling_frequency=1,\n", + " window_avg_time=600,\n", + " function=\"rms\",\n", + ")" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Std Dev Tidal Velocity\n", + "\n", + "And to get the standard deviation, we'll set function = 'std'." + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [], + "source": [ + "std_profile_ebb = performance.velocity_profiles(\n", + " velocity=ebb,\n", + " hub_height=4.2,\n", + " water_depth=10,\n", + " sampling_frequency=1,\n", + " window_avg_time=600,\n", + " function=\"std\",\n", + ")\n", + "std_profile_flood = performance.velocity_profiles(\n", + " velocity=ebb,\n", + " hub_height=4.2,\n", + " water_depth=10,\n", + " sampling_frequency=1,\n", + " window_avg_time=600,\n", + " function=\"std\",\n", + ")" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Finally, we can plot these variables together based on ebb and flood tides. The following code plots the mean and RMS profiles as line plots with \"x\" and \"+\" markers, respectively, and shades the area between +/- 1 standard deviation from the mean." + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Text(0.5, 1.0, 'Flood Tide')" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" }, - "nbformat": 4, - "nbformat_minor": 4 + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAA0oAAAJuCAYAAACOkPJ5AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/NK7nSAAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOzdeXxU133//9edRSON9gUhCQnEDkJgxBK22IaAMcFLncROWieO3SZu2qTN6uZbf5s0idPEv+SbJk3dLE2a1o2z2nHSOl4wNt5ZhADJIMQmLAQSEkL7Mlpm5t7fH1czkkDL3NG9oxnp83w8eICuZu69YEtvnXM/53MUTdM0hBBCCCGEEEIE2ab6BoQQQgghhBAi2shASQghhBBCCCGuIQMlIYQQQgghhLiGDJSEEEIIIYQQ4hoyUBJCCCGEEEKIa8hASQghhBBCCCGuIQMlIYQQQgghhLiGDJSEEEIIIYQQ4hoyUBJCCCGEEEKIa8hASYhRPP744yiKMuav1157LfhaRVH4m7/5m5DPeeTIEcP3M969XHtfDzzwAIWFhSGf96tf/arh+xFCCGGN8fLnoYceCr6usLCQBx54YErucaLs2Lp1a0iZ9dWvfjX4971w4cKE1926dStbt2417e8hxEQcU30DQkSz//qv/2LZsmXXHS8qKorofRw8eHDEx1//+td59dVXeeWVV0YcLyoqoqCggM985jORvD0hhBAmGy1/8vLypuhujPnhD39IZ2dn8OPnnnuOf/qnf7ru75Sfn4/L5eLgwYPk5uZOxa0KMS4ZKAkxjuLiYtatWzfVt8HGjRtHfDxr1ixsNtt1xwFSUlIidVtCCCEsEi35E45rJxNPnz4NjP13mjVrVkTuSwijpPROCJP8+7//O0uWLMHlclFUVMRvfvObUV/X1tbGn//5n5ORkUFiYiJ33HEH77zzjmn3MVrpXWdnJw8++CCZmZkkJSWxa9cuzp49O+r7z507x7333kt2djYul4vly5fzgx/8wLT7E0IIYY2LFy/ykY98ZMT373/+539GVdURr2ttbeWTn/wkc+bMIS4ujgULFvAP//AP9Pf3j3idkewI12ild5qm8e1vf5t58+YRHx/PmjVreOGFF0Z9f2dnJw899BDz588nLi6OOXPm8NnPfpaenh5T71PMTPJESYhx+P1+fD7fiGOKomC320cce+aZZ3j11Vd55JFHSExM5Ic//CF/9md/hsPh4O677x7x2o997GPccsst/OpXv+LSpUt86UtfYuvWrRw/fpy0tDTT/w6apnHXXXdx4MAB/vEf/5H169ezf/9+3vve91732qqqKjZv3szcuXP553/+Z3JycnjxxRf59Kc/TXNzM1/5yldMvz8hhBDXGy1/HI6xf2y7evUqmzdvZmBggK9//esUFhby7LPP8tBDD3H+/Hl++MMfAtDX18e2bds4f/48X/va11i1ahVvvvkmjz76KBUVFTz33HOAseww29e+9jW+9rWv8bGPfYy7776bS5cu8eCDD+L3+1m6dGnwdR6Ph5tvvpm6ujr+7//9v6xatYqTJ0/yj//4j5w4cYKXX34ZRVEsv18xjWlCiOv813/9lwaM+stut494LaAlJCRojY2NwWM+n09btmyZtmjRouvO+b73vW/E+/fv368B2j/90z+FfH/333+/lpiYOObn5s2bF/z4hRde0ADt+9///ojXfeMb39AA7Stf+Urw2K233qrl5+drHR0dI177N3/zN1p8fLzW2toa8j0KIYQwbrz88Xq9wdfNmzdPu//++4Mf//3f/70GaKWlpSPO99d//deaoijamTNnNE3TtB//+McaoD355JMjXvetb31LA7S9e/dqmmYsO0L9O5WVlY35uZqaGk3TNK2trU2Lj48fMytvvvnm4LFHH31Us9ls1533d7/7nQZozz//fMj3KMRopPROiHH8/Oc/p6ysbMSv0tLS6163fft2Zs+eHfzYbrfzoQ99iOrqaurq6ka89sMf/vCIjzdv3sy8efN49dVXLfk7BM577XXvvffeER/39fWxb98+3ve+9+F2u/H5fMFfu3fvpq+vj0OHDllyj0IIIUYaLX/Ge6L0yiuvUFRUxLve9a4Rxx944AE0TQs2/3nllVdITEy8rtoh0EFv3759QOjZYbaDBw/S19c3ZlYO9+yzz1JcXMzq1atHZNatt956XYdaIcIhpXdCjGP58uUhLabNyckZ81hLSwv5+fkTvralpWUSdzq2lpYWHA4HmZmZo97f8Nf5fD4ee+wxHnvssVHP1dzcbMk9CiGEGCnU/AloaWkZdWuIQKe8QMa0tLSQk5NzXUladnY2DodjxOtCyQ6zBa4/Xq4GXLlyherqapxO56jnkswSkyUDJSFM0NjYOOaxa0NmrNcu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HWjf30Cr1aJXr15wc3PTtw0YMAAigitXriA4OLhLMzfWnjGsWLEC0dHRWLhwIQBgyJAhcHJyQkxMDP74xz9a/LteljSPO8JS5jF1LtYm8z+nWZvqsTaZliXN446wlHncGbr1J0p2dnYICwtDamqqQXtqaiqioqKa3ScyMrLJ9vv27UN4eDhUKlWXZW1Oe/ID9av8mTNnYvPmzWY/b9fYMbi6uuLf//43Tp48qf9JSkpCv379cPLkSYwaNcpU0QG0728QHR2N77//HuXl5fq2vLw8KJVK+Pr6dmne5rRnDHfv3oVSafjyYWNjA+DHd78smSXN4/aypHlMnYu1yfzPadameqxNpmVJ87i9LGkedwpT3jnCEjXcenLDhg2Sk5Mj8+bNEycnJ7l48aKIiCxatEimT5+u377h1o0vvvii5OTkyIYNGyziFqxtzb9582axtbWVd999VwoLC/U/t2/fNkt+EePH0Ji57yxkbP6ysjLx9fWVn/3sZ/Kf//xHMjIyJDg4WJ5//nlzDcHoMSQnJ4utra2sW7dO8vPzZf/+/RIeHi4jR440S/6ysjLJzs6W7OxsASCrVq2S7Oxs/S1kLX0eG5vfEucxdS7WJvM/p1mbWJs6irXJ/PO4o7r9QklE5N133xV/f3+xs7OT4cOHS0ZGhv53M2bMkNjYWIPt09PTZdiwYWJnZycBAQHy3nvvmTixIWPyx8bGCoAmPzNmzDB98PsY+ze4n7mLkYjx+U+fPi1jxowRBwcH8fX1lfnz58vdu3dNnNqQsWNYs2aNhISEiIODg2i1Wnn22WflypUrJk5dLy0trcXntaXPY2PzW+o8ps7F2mT+5zRrE2tTR7A2WcY87giFiBV8FklERERERGRC3foaJSIiIiIiouZwoURERERERNQIF0pERERERESNcKFERERERETUCBdKREREREREjXChRERERERE1AgXSkRERERERI1woURERERERNQIF0pEFiA9PR0KhQK3b9+2yOM1Pq5CocDkyZM79dit2bRpk77vefPmmbRvIqLuiLWpdaxNDzculMhivP/++3BxcUFtba2+rby8HCqVCjExMQbbZmZmQqFQIC8vr9XjdtULMwBcu3YNKpUKn3zySbO/nz17NoYMGdLp/bYmKioKhYWFcHNzA1D/Qu7u7t5px8/NzcWmTZs65VgFBQVQq9UoLS1t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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "def plot_velocity_profiles(avg_profile, rms_profile, std_profile, ax):\n", + " alt = avg_profile.index\n", + " mean = avg_profile.values.T\n", + " rms = rms_profile.values.T\n", + " std = std_profile.values.T\n", + "\n", + " ax.plot(mean[0], alt, \"-x\", label=avg_profile.columns[0])\n", + " ax.plot(mean[1], alt, \"-x\", label=avg_profile.columns[1])\n", + " ax.plot(mean[2], alt, \"-x\", label=avg_profile.columns[2])\n", + "\n", + " ax.fill_betweenx(alt, mean[0] - std[0], mean[0] + std[0], facecolor=\"lightblue\")\n", + " ax.fill_betweenx(alt, mean[1] - std[1], mean[1] + std[1], facecolor=\"moccasin\")\n", + " ax.fill_betweenx(alt, mean[2] - std[2], mean[2] + std[2], facecolor=\"palegreen\")\n", + "\n", + " ax.plot(rms[0], alt, \"+\", color=\"C0\")\n", + " ax.plot(rms[1], alt, \"+\", color=\"C1\")\n", + " ax.plot(rms[2], alt, \"+\", color=\"C2\")\n", + " ax.set(xlabel=\"Water Velocity [m/s]\", ylabel=\"Altitude [m]\", ylim=(0, 10))\n", + " ax.legend()\n", + "\n", + "\n", + "fig, ax = plt.subplots(1, 2, figsize=(10, 7))\n", + "plot_velocity_profiles(avg_profile_ebb, rms_profile_ebb, std_profile_ebb, ax[0])\n", + "ax[0].set_title(\"Ebb Tide\")\n", + "plot_velocity_profiles(avg_profile_flood, rms_profile_flood, std_profile_flood, ax[1])\n", + "ax[1].set_title(\"Flood Tide\")" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Current Energy Converter Efficiency\n", + "\n", + "The CEC efficiency, or device power coefficient, can be found using the `device_efficiency` method." + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [], + "source": [ + "efficiency_ebb = performance.device_efficiency(\n", + " power=power_ebb,\n", + " velocity=ebb,\n", + " water_density=ds[\"water_density\"],\n", + " capture_area=np.pi * 1.5**2,\n", + " hub_height=4.2,\n", + " sampling_frequency=1,\n", + " window_avg_time=600,\n", + ")\n", + "efficiency_flood = performance.device_efficiency(\n", + " power=power_flood,\n", + " velocity=flood,\n", + " water_density=ds[\"water_density\"],\n", + " capture_area=np.pi * 1.5**2,\n", + " hub_height=4.2,\n", + " sampling_frequency=1,\n", + " window_avg_time=600,\n", + ")" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "And these efficiency curves can be plotted as profiles:" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Text(0.5, 1.0, 'Flood Tide')" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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BocjyeY2b96My5cvS/d1Oh1Wr16NDh06GPWCAcCXX35pdH/Xrl24cOGC1RYfHDJkSK3XXbVqldF9Dw8PDBkyBIcOHUL37t3Rp0+fGrdbE0oisi/Dhg3D8ePHcfDgQaPjK1asgEqlkuLBsGHDUFJSgu+//77GeYbHAdPjh6UNGDAAbm5udcbLm9177704d+4cAgICao1bpi5eTZbBnjCymKNHj9aYmQQAHTp0MFrTJjAwEEOHDsXrr78uzY48efJkrctU7N+/H8888wwefvhhZGZmYs6cOWjdujWef/55q7yHkSNHYvDgwZg1axZKS0vRp08f7Ny5E1988UWNc99//30MGjQId955J6ZMmYJ27dqhuLgYZ8+exU8//VRjcVgisi8vvfQSVqxYgXvuuQf/+te/EB4ejrVr12LJkiWYMmUKOnXqBAB48skn8dFHH2HChAnIyMhAt27dsGPHDixYsAB33303hg8fDsC8+GFJLVq0wMyZM/Hmm28axcuEhIQaw5HTp0/Hd999h8GDB+Oll15C9+7dodfrcfHiRWzcuBF///vf0b9/f6u2l24i98wAUr76ZiYBEEuXLpXOBSCmTp0qlixZIjp06CBcXFxEly5dxJdfflnra27cuFE88cQTws/PT7i7u4u7775bnDlzxqz2mTM7UgghCgoKxNNPPy38/PyEh4eHGDFihDh58mSts5vS09PF008/LVq3bi1cXFxEy5YtxcCBA82avUlETVPfTMKb3To7UgghLly4IMaPHy8CAgKEi4uL6Ny5s3jnnXeETqczOi83N1c899xzIjQ0VDg7O4vw8HAxe/ZsUV5ebnSeOfGjse/p1tmRQgih1+tFYmKiCAsLE66urqJ79+7ip59+ErGxsUazI4UQoqSkRLz22muic+fOwtXVVfj6+opu3bqJl156yWjmOlmfSggh5Ej+iIiIiJoz1oQRERERyYBJGBEREZEMmIQRERERyYBJGBEREZEMmIQRERERyYBJGBEREZEMHH6xVr1ejz///BPe3t419v0iIuUSQqC4uBitWrWCk5Myv08yPhE5JlPjk8MnYX/++SfCwsLkbgYRWUlmZmaN7a6UgvGJyLE1FJ8cPgnz9vYGUP2D8PHxkbk1RGQpRUVFCAsLk/7GlYjxicgxmRqfHD4JM3Tx+/j4MMgROSAlD+MxPhE5tobikzILKYiI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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "def plot_efficiency(efficiency, ax):\n", + " means = efficiency.U_avg.values.T\n", + " eta = efficiency.Efficiency.values.T\n", + " ax.plot(means, eta, \"-o\")\n", + " ax.set(xlabel=\"Hub Height Flow Velocity [m/s]\", ylabel=\"Efficiency [%]\")\n", + "\n", + "\n", + "fig, ax = plt.subplots(1, 2, figsize=(7, 6))\n", + "plot_efficiency(efficiency_ebb, ax[0])\n", + "ax[0].set_title(\"Ebb Tide\")\n", + "plot_efficiency(efficiency_flood, ax[1])\n", + "ax[1].set_title(\"Flood Tide\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "base", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.15" + }, + "vscode": { + "interpreter": { + "hash": "357206ab7e4935423e95e994af80e27e7e6c0672abcebb9d86ab743298213348" + } + } + }, + "nbformat": 4, + "nbformat_minor": 4 } diff --git a/examples/upcrossing_example.ipynb b/examples/upcrossing_example.ipynb new file mode 100644 index 000000000..cbb67838a --- /dev/null +++ b/examples/upcrossing_example.ipynb @@ -0,0 +1,182 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# MHKit Upcrossing Analysis Example\n", + "\n", + "The following shows an example of using the upcrossing functionality in the [MHKiT Utils module](https://mhkit-software.github.io/MHKiT/mhkit-python/api.utils.html).\n", + "\n", + "This example performs an upcrossing analysis on a surface elevation trace to plot some quantities of interest. Such an upcrossing analysis could be applied to any time domain signal, such as a device response." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "from mhkit.wave.resource import jonswap_spectrum, surface_elevation\n", + "from mhkit.utils import upcrossing, peaks, troughs, heights, periods\n", + "import numpy as np\n", + "import matplotlib.pyplot as plt" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Compute the surface elevation" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "# Peak period and significant wave height\n", + "Tp = 10 # s\n", + "Hs = 2.5 # m\n", + "gamma = 3.3\n", + "\n", + "# Create frequency vector using a return period of 1hr\n", + "Tr = 3600 # s\n", + "df = 1.0 / Tr # Hz\n", + "f = np.arange(0, 1, df)\n", + "\n", + "# Calculate spectrum\n", + "spec = jonswap_spectrum(f, Tp, Hs, gamma)\n", + "\n", + "# Calculate surface elevation\n", + "fs = 10.0 # Hz\n", + "t = np.arange(0, Tr, 1 / fs)\n", + "\n", + "eta = surface_elevation(spec, t)" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "plt.figure()\n", + "plt.plot(t, eta)\n", + "plt.xlabel(\"t [s]\")\n", + "plt.ylabel(\"$\\eta$ [m]\")\n", + "plt.title(f\"Surface elevation for Tp={Tp}s, Hs={Hs}m\")\n", + "plt.grid()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Plot the individual wave heights and periods" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "heights = heights(t, eta.values.squeeze())\n", + "periods = periods(t, eta.values.squeeze())\n", + "\n", + "plt.figure()\n", + "plt.plot(periods, heights, \"o\")\n", + "plt.xlabel(\"Zero crossing period [s]\")\n", + "plt.ylabel(\"Wave height [m]\")\n", + "plt.grid()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Plot the crest probability of exceedance distribution" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "crests = peaks(t, eta.values.squeeze())\n", + "crests_sorted = np.sort(crests)\n", + "\n", + "N = crests_sorted.size\n", + "\n", + "# Exceedance probability. Crests are in ascending order\n", + "# meaning the first element has P(exceedance) = 1, and\n", + "# the final element has P(exceedance) = 1 / N\n", + "Q = np.arange(N, 0, -1) / N\n", + "\n", + "plt.figure()\n", + "plt.semilogy(crests_sorted, Q, \"o\")\n", + "plt.xlabel(\"Crest height [m]\")\n", + "plt.ylabel(\"P(exceedance)\")\n", + "plt.grid()\n", + "plt.show()" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.17" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/examples/wave_example.ipynb b/examples/wave_example.ipynb index 728a0b526..02680f530 100644 --- a/examples/wave_example.ipynb +++ b/examples/wave_example.ipynb @@ -236,12 +236,12 @@ } ], "source": [ - "ndbc_data_file = 'data/wave/data.txt'\n", + "ndbc_data_file = \"data/wave/data.txt\"\n", "\n", "# ndbc.read_file outputs the NDBC file data into two variables.\n", - " # raw_ndbc_data is a pandas DataFrame containing the file data. \n", - " # meta contains the meta data, if available. \n", - "[raw_ndbc_data, meta] = wave.io.ndbc.read_file(ndbc_data_file) \n", + "# raw_ndbc_data is a pandas DataFrame containing the file data.\n", + "# meta contains the meta data, if available.\n", + "[raw_ndbc_data, meta] = wave.io.ndbc.read_file(ndbc_data_file)\n", "raw_ndbc_data.head()" ] }, @@ -487,7 +487,7 @@ ], "source": [ "# Transpose raw NDBC data\n", - "ndbc_data = raw_ndbc_data.T \n", + "ndbc_data = raw_ndbc_data.T\n", "ndbc_data.head()" ] }, @@ -568,8 +568,8 @@ } ], "source": [ - "# Compute the enegy periods from the NDBC spectra data \n", - "Te = wave.resource.energy_period(ndbc_data) \n", + "# Compute the enegy periods from the NDBC spectra data\n", + "Te = wave.resource.energy_period(ndbc_data)\n", "Te.head()" ] }, @@ -642,8 +642,8 @@ } ], "source": [ - "# Compute the significant wave height from the NDBC spectra data \n", - "Hm0 = wave.resource.significant_wave_height(ndbc_data) \n", + "# Compute the significant wave height from the NDBC spectra data\n", + "Hm0 = wave.resource.significant_wave_height(ndbc_data)\n", "Hm0.head()" ] }, @@ -717,11 +717,11 @@ ], "source": [ "# Set water depth to 60 m\n", - "h = 60 \n", + "h = 60\n", "\n", "# Compute the energy flux from the NDBC spectra data and water depth\n", - "J = wave.resource.energy_flux(ndbc_data,h) \n", - "J.head() " + "J = wave.resource.energy_flux(ndbc_data, h)\n", + "J.head()" ] }, { @@ -756,8 +756,8 @@ } ], "source": [ - "# Convert the energy period DataFrame to a Series. \n", - "Te = Te.squeeze() \n", + "# Convert the energy period DataFrame to a Series.\n", + "Te = Te.squeeze()\n", "Te.head()" ] }, @@ -799,10 +799,10 @@ ], "source": [ "# Alternatively, convert to Series by calling a specific column in the DataFrame\n", - "Hm0= Hm0['Hm0']\n", + "Hm0 = Hm0[\"Hm0\"]\n", "print(Hm0)\n", "\n", - "J = J['J'] \n", + "J = J[\"J\"]\n", "print(J)" ] }, @@ -822,9 +822,9 @@ "outputs": [], "source": [ "# Set the random seed, to reproduce results\n", - "np.random.seed(1) \n", + "np.random.seed(1)\n", "# Generate random power values\n", - "P = pd.Series(np.random.normal(200, 40, 743),index = J.index) " + "P = pd.Series(np.random.normal(200, 40, 743), index=J.index)" ] }, { @@ -1407,18 +1407,20 @@ ], "source": [ "# Calculate capture length\n", - "L = wave.performance.capture_length(P, J) \n", + "L = wave.performance.capture_length(P, J)\n", "\n", "# Generate bins for Hm0 and Te, input format (start, stop, step_size)\n", - "Hm0_bins = np.arange(0, Hm0.values.max() + .5, .5) \n", + "Hm0_bins = np.arange(0, Hm0.values.max() + 0.5, 0.5)\n", "Te_bins = np.arange(0, Te.values.max() + 1, 1)\n", "\n", "# Create capture length matrices using mean, standard deviation, count, min and max statistics\n", - "LM_mean = wave.performance.capture_length_matrix(Hm0, Te, L, 'mean', Hm0_bins, Te_bins)\n", - "LM_std = wave.performance.capture_length_matrix(Hm0, Te, L, 'std', Hm0_bins, Te_bins)\n", - "LM_count = wave.performance.capture_length_matrix(Hm0, Te, L, 'count', Hm0_bins, Te_bins)\n", - "LM_min = wave.performance.capture_length_matrix(Hm0, Te, L, 'min', Hm0_bins, Te_bins)\n", - "LM_max = wave.performance.capture_length_matrix(Hm0, Te, L, 'max', Hm0_bins, Te_bins)\n", + "LM_mean = wave.performance.capture_length_matrix(Hm0, Te, L, \"mean\", Hm0_bins, Te_bins)\n", + "LM_std = wave.performance.capture_length_matrix(Hm0, Te, L, \"std\", Hm0_bins, Te_bins)\n", + "LM_count = wave.performance.capture_length_matrix(\n", + " Hm0, Te, L, \"count\", Hm0_bins, Te_bins\n", + ")\n", + "LM_min = wave.performance.capture_length_matrix(Hm0, Te, L, \"min\", Hm0_bins, Te_bins)\n", + "LM_max = wave.performance.capture_length_matrix(Hm0, Te, L, \"max\", Hm0_bins, Te_bins)\n", "\n", "# Show mean capture length matrix\n", "LM_mean" @@ -2002,7 +2004,9 @@ ], "source": [ "# Create capture length matrices using frequency\n", - "LM_freq = wave.performance.capture_length_matrix(Hm0, Te, L,'frequency', Hm0_bins, Te_bins)\n", + "LM_freq = wave.performance.capture_length_matrix(\n", + " Hm0, Te, L, \"frequency\", Hm0_bins, Te_bins\n", + ")\n", "\n", "# Show capture length matrix using frequency\n", "LM_freq" @@ -2022,7 +2026,9 @@ "outputs": [], "source": [ "# Demonstration of arbitrary matrix generator\n", - "PM_mean_not_standard = wave.performance.capture_length_matrix(Hm0, Te, P, 'mean', Hm0_bins, Te_bins)" + "PM_mean_not_standard = wave.performance.capture_length_matrix(\n", + " Hm0, Te, P, \"mean\", Hm0_bins, Te_bins\n", + ")" ] }, { @@ -2041,7 +2047,9 @@ "outputs": [], "source": [ "# Demonstration of passing a callable function to the matrix generator\n", - "LM_variance = wave.performance.capture_length_matrix(Hm0, Te, L, np.var, Hm0_bins, Te_bins)" + "LM_variance = wave.performance.capture_length_matrix(\n", + " Hm0, Te, L, np.var, Hm0_bins, Te_bins\n", + ")" ] }, { @@ -2599,7 +2607,7 @@ ], "source": [ "# Create wave energy flux matrix using mean\n", - "JM = wave.performance.wave_energy_flux_matrix(Hm0, Te, J, 'mean', Hm0_bins, Te_bins)\n", + "JM = wave.performance.wave_energy_flux_matrix(Hm0, Te, J, \"mean\", Hm0_bins, Te_bins)\n", "\n", "# Create power matrix using mean\n", "PM_mean = wave.performance.power_matrix(LM_mean, JM)\n", @@ -2639,7 +2647,9 @@ "print(\"MAEP from timeseries = \", maep_timeseries)\n", "\n", "# Calcaulte maep from matrix\n", - "maep_matrix = wave.performance.mean_annual_energy_production_matrix(LM_mean, JM, LM_freq)\n", + "maep_matrix = wave.performance.mean_annual_energy_production_matrix(\n", + " LM_mean, JM, LM_freq\n", + ")\n", "print(\"MAEP from matrices = \", maep_matrix)" ] }, @@ -2671,7 +2681,7 @@ ], "source": [ "# Plot the capture length mean matrix\n", - "ax = wave.graphics.plot_matrix(LM_mean) " + "ax = wave.graphics.plot_matrix(LM_mean)" ] }, { @@ -2715,10 +2725,17 @@ "source": [ "# Customize the matrix plot\n", "import matplotlib.pylab as plt\n", - "plt.figure(figsize=(6,6))\n", + "\n", + "plt.figure(figsize=(6, 6))\n", "ax = plt.gca()\n", - "wave.graphics.plot_matrix(PM_mean, xlabel='Te (s)', ylabel='Hm0 (m)', \\\n", - " zlabel='Mean Power (kW)', show_values=False, ax=ax)" + "wave.graphics.plot_matrix(\n", + " PM_mean,\n", + " xlabel=\"Te (s)\",\n", + " ylabel=\"Hm0 (m)\",\n", + " zlabel=\"Mean Power (kW)\",\n", + " show_values=False,\n", + " ax=ax,\n", + ")" ] } ], diff --git a/examples/wecsim_example.ipynb b/examples/wecsim_example.ipynb index 4106fb52f..3dceda943 100644 --- a/examples/wecsim_example.ipynb +++ b/examples/wecsim_example.ipynb @@ -26,7 +26,7 @@ "metadata": {}, "outputs": [], "source": [ - "from mhkit import wave\n", + "from mhkit import wave\n", "import scipy.io as sio\n", "import matplotlib.pyplot as plt" ] @@ -59,7 +59,7 @@ ], "source": [ "# Relative location and filename of simulated WEC-Sim data (run with mooring)\n", - "filename = './data/wave/RM3MooringMatrix_matlabWorkspace_structure.mat' \n", + "filename = \"./data/wave/RM3MooringMatrix_matlabWorkspace_structure.mat\"\n", "\n", "# Load data using the `wecsim.read_output` function which returns a dictionary of dataFrames\n", "wecsim_data = wave.io.wecsim.read_output(filename)" @@ -226,13 +226,13 @@ ], "source": [ "# Store WEC-Sim output from the Wave Class to a new dataFrame, called `wave_data`\n", - "wave_data = wecsim_data['wave']\n", + "wave_data = wecsim_data[\"wave\"]\n", "\n", "# Display the wave type from the WEC-Sim Wave Class\n", "wave_type = wave_data.name\n", "print(\"WEC-Sim wave type:\", wave_type)\n", "\n", - "# View the WEC-Sim output dataFrame for the Wave Class \n", + "# View the WEC-Sim output dataFrame for the Wave Class\n", "wave_data" ] }, @@ -313,8 +313,8 @@ } ], "source": [ - "# Store WEC-Sim output from the Body Class to a new dictionary of dataFrames, i.e. 'bodies'. \n", - "bodies = wecsim_data['bodies']\n", + "# Store WEC-Sim output from the Body Class to a new dictionary of dataFrames, i.e. 'bodies'.\n", + "bodies = wecsim_data[\"bodies\"]\n", "\n", "# Data fron each body is stored as its own dataFrame, i.e. 'body1' and 'body2'.\n", "bodies.keys()" @@ -343,8 +343,8 @@ } ], "source": [ - "# Store Body Class dataFrame for Body 1 as `body1`. \n", - "body1 = bodies['body1']\n", + "# Store Body Class dataFrame for Body 1 as `body1`.\n", + "body1 = bodies[\"body1\"]\n", "\n", "# Display the name of Body 1 from the WEC-Sim Body Class\n", "print(\"Name of Body 1:\", body1.name)" @@ -384,7 +384,7 @@ ], "source": [ "# Print a list of Body 1 columns that end with 'dof1'\n", - "[col for col in body1 if col.endswith('dof1')]" + "[col for col in body1 if col.endswith(\"dof1\")]" ] }, { @@ -427,11 +427,11 @@ "body1.position_dof3.plot()\n", "plt.xlabel(\"Time [s]\")\n", "plt.ylabel(\"Heave Position [m]\")\n", - "plt.title('Body 1')\n", + "plt.title(\"Body 1\")\n", "\n", - "# Use Pandas to calculate the maximum and minimum heave position of Body 1 \n", - "print(\"Body 1 max heave position =\", body1.position_dof3.max(),\"[m]\")\n", - "print(\"Body 1 min heave position =\", body1.position_dof3.min(),\"[m]\")" + "# Use Pandas to calculate the maximum and minimum heave position of Body 1\n", + "print(\"Body 1 max heave position =\", body1.position_dof3.max(), \"[m]\")\n", + "print(\"Body 1 min heave position =\", body1.position_dof3.min(), \"[m]\")" ] }, { @@ -472,14 +472,14 @@ ], "source": [ "# Create a list of Body 1 data columns that start with 'position'\n", - "filter_col = [col for col in body1 if col.startswith('position')]\n", + "filter_col = [col for col in body1 if col.startswith(\"position\")]\n", "\n", "# Plot filtered 'position' data for Body 1\n", "body1[filter_col].plot()\n", - "plt.xlabel('Time [s]')\n", - "plt.ylabel('Position [m or rad]')\n", - "plt.title('Body 1')\n", - "plt.legend(loc='center left', bbox_to_anchor=(1, 0.5))" + "plt.xlabel(\"Time [s]\")\n", + "plt.ylabel(\"Position [m or rad]\")\n", + "plt.title(\"Body 1\")\n", + "plt.legend(loc=\"center left\", bbox_to_anchor=(1, 0.5))" ] }, { @@ -763,8 +763,8 @@ } ], "source": [ - "# Store Body Class dataFrame for Body 2 as `body2` \n", - "body2 = bodies['body2']\n", + "# Store Body Class dataFrame for Body 2 as `body2`\n", + "body2 = bodies[\"body2\"]\n", "\n", "# Display the name of Body 2 from the WEC-Sim Body Class\n", "print(\"Name of Body 2:\", body2.name)\n", @@ -814,13 +814,13 @@ ], "source": [ "# Store WEC-Sim output from the PTO Class to a DataFrame, called `ptos`\n", - "ptos = wecsim_data['ptos']\n", + "ptos = wecsim_data[\"ptos\"]\n", "\n", "# Display the name of the PTO from the WEC-Sim PTO Class\n", "print(\"Name of PTO:\", ptos.name)\n", "\n", "# Print a list of available columns that end with 'dof1'\n", - "[col for col in ptos if col.endswith('dof1')]" + "[col for col in ptos if col.endswith(\"dof1\")]" ] }, { @@ -854,10 +854,10 @@ "source": [ "# Use Pandas to plot pto internal power in heave (DOF 3)\n", "# NOTE: WEC-Sim requires a negative sign to convert internal power to generated power\n", - "(-1*ptos.powerInternalMechanics_dof3/1000).plot()\n", + "(-1 * ptos.powerInternalMechanics_dof3 / 1000).plot()\n", "plt.xlabel(\"Time [s]\")\n", "plt.ylabel(\"Power Generated [kW]\")\n", - "plt.title('PTO')" + "plt.title(\"PTO\")" ] }, { @@ -1133,7 +1133,7 @@ ], "source": [ "# Store WEC-Sim output from the Constraint Class to a new dataFrame, called `constraints`\n", - "constraints = wecsim_data['constraints']\n", + "constraints = wecsim_data[\"constraints\"]\n", "\n", "# Display the name of the Constraint from the WEC-Sim Constraint Class\n", "print(\"Name of Constraint:\", constraints.name)\n", @@ -1376,7 +1376,7 @@ ], "source": [ "# Store WEC-Sim output from the Mooring Class to a new dataFrame, called `mooring`\n", - "mooring = wecsim_data['mooring']\n", + "mooring = wecsim_data[\"mooring\"]\n", "\n", "# View the PTO Class dataFrame\n", "mooring.head()" @@ -1411,8 +1411,8 @@ ], "source": [ "# Use the MHKiT Wave Module to calculate the wave spectrum from the WEC-Sim Wave Class Data\n", - "sample_rate=60\n", - "nnft=1000 # Number of bins in the Fast Fourier Transform\n", + "sample_rate = 60\n", + "nnft = 1000 # Number of bins in the Fast Fourier Transform\n", "ws_spectrum = wave.resource.elevation_spectrum(wave_data, sample_rate, nnft)\n", "\n", "# Plot calculated wave spectrum\n", @@ -1514,7 +1514,7 @@ "Hm0 = wave.resource.significant_wave_height(ws_spectrum)\n", "\n", "# Display calculated Peak Wave Period (Tp) and Significant Wave Height (Hm0)\n", - "display(Tp,Hm0)" + "display(Tp, Hm0)" ] } ], diff --git a/figures/logo.png b/logo.png similarity index 100% rename from figures/logo.png rename to logo.png diff --git a/mhkit/__init__.py b/mhkit/__init__.py index 49c1b44b9..f4c919a76 100644 --- a/mhkit/__init__.py +++ b/mhkit/__init__.py @@ -11,12 +11,13 @@ # Register datetime converter for a matplotlib plotting methods from pandas.plotting import register_matplotlib_converters as _rmc + _rmc() # Ignore future warnings -_warn.simplefilter(action='ignore', category=FutureWarning) +_warn.simplefilter(action="ignore", category=FutureWarning) -__version__ = 'v0.7.0' +__version__ = "v0.8.0" __copyright__ = """ Copyright 2019, Alliance for Sustainable Energy, LLC under the terms of diff --git a/mhkit/dolfyn/__init__.py b/mhkit/dolfyn/__init__.py index 307a6932f..cb459e50f 100644 --- a/mhkit/dolfyn/__init__.py +++ b/mhkit/dolfyn/__init__.py @@ -1,5 +1,10 @@ from mhkit.dolfyn.io.api import read, read_example, save, load, save_mat, load_mat -from mhkit.dolfyn.rotate.api import rotate2, calc_principal_heading, set_declination, set_inst2head_rotmat +from mhkit.dolfyn.rotate.api import ( + rotate2, + calc_principal_heading, + set_declination, + set_inst2head_rotmat, +) from .rotate.base import euler2orient, orient2euler, quaternion2orient from .velocity import VelBinner from mhkit.dolfyn import adv diff --git a/mhkit/dolfyn/adp/__init__.py b/mhkit/dolfyn/adp/__init__.py index f1d1e0517..4dc7607ef 100644 --- a/mhkit/dolfyn/adp/__init__.py +++ b/mhkit/dolfyn/adp/__init__.py @@ -1,2 +1 @@ from . import api - diff --git a/mhkit/dolfyn/adp/clean.py b/mhkit/dolfyn/adp/clean.py index f4cc896b0..e89124d11 100644 --- a/mhkit/dolfyn/adp/clean.py +++ b/mhkit/dolfyn/adp/clean.py @@ -1,5 +1,6 @@ """Module containing functions to clean data """ + import numpy as np import xarray as xr from scipy.signal import medfilt @@ -40,15 +41,15 @@ def set_range_offset(ds, h_deploy): the surface and downward-facing ADCP's transducers. """ - r = [s for s in ds.dims if 'range' in s] + r = [s for s in ds.dims if "range" in s] for val in r: ds[val] = ds[val].values + h_deploy - ds[val].attrs['units'] = 'm' + ds[val].attrs["units"] = "m" - if hasattr(ds, 'h_deploy'): - ds.attrs['h_deploy'] += h_deploy + if hasattr(ds, "h_deploy"): + ds.attrs["h_deploy"] += h_deploy else: - ds.attrs['h_deploy'] = h_deploy + ds.attrs["h_deploy"] = h_deploy def find_surface(ds, thresh=10, nfilt=None): @@ -78,9 +79,13 @@ def find_surface(ds, thresh=10, nfilt=None): # This finds the first point that increases (away from the profiler) in # the echo profile edf = np.diff(ds.amp.values.astype(np.int16), axis=1) - inds2 = np.max((edf < 0) * - np.arange(ds.vel.shape[1] - 1, - dtype=np.uint8)[None, :, None], axis=1) + 1 + inds2 = ( + np.max( + (edf < 0) * np.arange(ds.vel.shape[1] - 1, dtype=np.uint8)[None, :, None], + axis=1, + ) + + 1 + ) # Calculate the depth of these quantities d1 = ds.range.values[inds] @@ -101,12 +106,17 @@ def find_surface(ds, thresh=10, nfilt=None): dfilt[dfilt == 0] = np.NaN d = dfilt - ds['depth'] = xr.DataArray(d.astype('float32'), - dims=['time'], - attrs={'units': 'm', - 'long_name': 'Depth', - 'standard_name': 'depth', - 'positive': 'down'}) + ds["depth"] = xr.DataArray( + d.astype("float32"), + dims=["time"], + attrs={ + "units": "m", + "long_name": "Depth", + "standard_name": "depth", + "positive": "down", + }, + ) + def find_surface_from_P(ds, salinity=35): """ @@ -137,9 +147,9 @@ def find_surface_from_P(ds, salinity=35): .. math:: \\rho - \\rho_0 = -\\alpha (T-T_0) + \\beta (S-S_0) + \\kappa P Where :math:`\\rho` is water density, :math:`T` is water temperature, - :math:`P` is water pressure, :math:`S` is practical salinity, - :math:`\\alpha` is the thermal expansion coefficient, :math:`\\beta` is - the haline contraction coefficient, and :math:`\\kappa` is adiabatic + :math:`P` is water pressure, :math:`S` is practical salinity, + :math:`\\alpha` is the thermal expansion coefficient, :math:`\\beta` is + the haline contraction coefficient, and :math:`\\kappa` is adiabatic compressibility. """ @@ -153,31 +163,37 @@ def find_surface_from_P(ds, salinity=35): a = 0.15 # thermal expansion coefficient, kg/m^3/degC b = 0.78 # haline contraction coefficient, kg/m^3/ppt k = 4.5e-3 # adiabatic compressibility, kg/m^3/dbar - rho = rho0 - a*(T-T0) + b*(S-S0) + k*P + rho = rho0 - a * (T - T0) + b * (S - S0) + k * P # Depth = pressure (conversion from dbar to MPa) / water weight - d = (ds.pressure*10000)/(9.81*rho) + d = (ds.pressure * 10000) / (9.81 * rho) - if hasattr(ds, 'h_deploy'): + if hasattr(ds, "h_deploy"): d += ds.h_deploy description = "Depth to Seafloor" else: description = "Depth to Instrument" - ds['water_density'] = xr.DataArray( - rho.astype('float32'), - dims=['time'], - attrs={'units': 'kg m-3', - 'long_name': 'Water Density', - 'standard_name': 'sea_water_density', - 'description': 'Water density from linear approximation of sea water equation of state'}) - ds['depth'] = xr.DataArray( - d.astype('float32'), - dims=['time'], - attrs={'units': 'm', - 'long_name': description, - 'standard_name': 'depth', - 'positive': 'down'}) + ds["water_density"] = xr.DataArray( + rho.astype("float32"), + dims=["time"], + attrs={ + "units": "kg m-3", + "long_name": "Water Density", + "standard_name": "sea_water_density", + "description": "Water density from linear approximation of sea water equation of state", + }, + ) + ds["depth"] = xr.DataArray( + d.astype("float32"), + dims=["time"], + attrs={ + "units": "m", + "long_name": description, + "standard_name": "depth", + "positive": "down", + }, + ) def nan_beyond_surface(ds, val=np.nan, beam_angle=None, inplace=False): @@ -204,7 +220,7 @@ def nan_beyond_surface(ds, val=np.nan, beam_angle=None, inplace=False): Notes ----- - Surface interference expected to happen at + Surface interference expected to happen at `distance > range * cos(beam angle) - cell size` """ @@ -212,29 +228,32 @@ def nan_beyond_surface(ds, val=np.nan, beam_angle=None, inplace=False): ds = ds.copy(deep=True) # Get all variables with 'range' coordinate - var = [h for h in ds.keys() if any(s for s in ds[h].dims if 'range' in s)] + var = [h for h in ds.keys() if any(s for s in ds[h].dims if "range" in s)] if beam_angle is None: - if hasattr(ds, 'beam_angle'): - beam_angle = ds.beam_angle * (np.pi/180) + if hasattr(ds, "beam_angle"): + beam_angle = ds.beam_angle * (np.pi / 180) else: - raise Exception("'beam_angle` not found in dataset attributes. "\ - "Please supply the ADCP's beam angle.") + raise Exception( + "'beam_angle` not found in dataset attributes. " + "Please supply the ADCP's beam angle." + ) # Surface interference distance calculated from distance of transducers to surface - if hasattr(ds, 'h_deploy'): - range_limit = ((ds.depth-ds.h_deploy) * np.cos(beam_angle) - - ds.cell_size) + ds.h_deploy + if hasattr(ds, "h_deploy"): + range_limit = ( + (ds.depth - ds.h_deploy) * np.cos(beam_angle) - ds.cell_size + ) + ds.h_deploy else: range_limit = ds.depth * np.cos(beam_angle) - ds.cell_size bds = ds.range > range_limit # Echosounder data needs only be trimmed at water surface - if 'echo' in var: + if "echo" in var: bds_echo = ds.range_echo > ds.depth - ds['echo'].values[..., bds_echo] = val - var.remove('echo') + ds["echo"].values[..., bds_echo] = val + var.remove("echo") # Correct rest of "range" data for surface interference for nm in var: @@ -251,7 +270,7 @@ def nan_beyond_surface(ds, val=np.nan, beam_angle=None, inplace=False): def correlation_filter(ds, thresh=50, inplace=False): """ - Filters out data where correlation is below a threshold in the + Filters out data where correlation is below a threshold in the along-beam correlation data. Parameters @@ -268,7 +287,7 @@ def correlation_filter(ds, thresh=50, inplace=False): Returns ------- ds : xarray.Dataset - Elements in velocity, correlation, and amplitude are removed if below the + Elements in velocity, correlation, and amplitude are removed if below the correlation threshold Notes @@ -280,27 +299,30 @@ def correlation_filter(ds, thresh=50, inplace=False): ds = ds.copy(deep=True) # 4 or 5 beam - if hasattr(ds, 'vel_b5'): - tag = ['', '_b5'] + if hasattr(ds, "vel_b5"): + tag = ["", "_b5"] else: - tag = [''] + tag = [""] # copy original ref frame coord_sys_orig = ds.coord_sys # correlation is always in beam coordinates - rotate2(ds, 'beam', inplace=True) + rotate2(ds, "beam", inplace=True) # correlation is always in beam coordinates for tg in tag: - mask = ds['corr'+tg].values <= thresh + mask = ds["corr" + tg].values <= thresh - for var in ['vel', 'corr', 'amp']: + for var in ["vel", "corr", "amp"]: try: - ds[var+tg].values[mask] = np.nan + ds[var + tg].values[mask] = np.nan except: - ds[var+tg].values[mask] = 0 - ds[var+tg].attrs['Comments'] = 'Filtered of data with a correlation value below ' + \ - str(thresh) + ds.corr.units + ds[var + tg].values[mask] = 0 + ds[var + tg].attrs["Comments"] = ( + "Filtered of data with a correlation value below " + + str(thresh) + + ds.corr.units + ) rotate2(ds, coord_sys_orig, inplace=True) @@ -332,22 +354,22 @@ def medfilt_orient(ds, nfilt=7): ds = ds.copy(deep=True) - if getattr(ds, 'has_imu'): + if getattr(ds, "has_imu"): q_filt = np.zeros(ds.quaternions.shape) for i in range(ds.quaternions.q.size): q_filt[i] = medfilt(ds.quaternions[i].values, nfilt) ds.quaternions.values = q_filt - ds['orientmat'] = quaternion2orient(ds.quaternions) + ds["orientmat"] = quaternion2orient(ds.quaternions) return ds else: # non Nortek AHRS-equipped instruments - do_these = ['pitch', 'roll', 'heading'] + do_these = ["pitch", "roll", "heading"] for nm in do_these: ds[nm].values = medfilt(ds[nm].values, nfilt) - return ds.drop_vars('orientmat') + return ds.drop_vars("orientmat") def val_exceeds_thresh(var, thresh=5, val=np.nan): @@ -373,15 +395,15 @@ def val_exceeds_thresh(var, thresh=5, val=np.nan): var = var.copy(deep=True) - bd = np.zeros(var.shape, dtype='bool') - bd |= (np.abs(var.values) > thresh) + bd = np.zeros(var.shape, dtype="bool") + bd |= np.abs(var.values) > thresh var.values[bd] = val return var -def fillgaps_time(var, method='cubic', maxgap=None): +def fillgaps_time(var, method="cubic", maxgap=None): """ Fill gaps (nan values) in var across time using the specified method @@ -404,14 +426,14 @@ def fillgaps_time(var, method='cubic', maxgap=None): xarray.DataArray.interpolate_na() """ - time_dim = [t for t in var.dims if 'time' in t][0] + time_dim = [t for t in var.dims if "time" in t][0] - return var.interpolate_na(dim=time_dim, method=method, - use_coordinate=True, - limit=maxgap) + return var.interpolate_na( + dim=time_dim, method=method, use_coordinate=True, limit=maxgap + ) -def fillgaps_depth(var, method='cubic', maxgap=None): +def fillgaps_depth(var, method="cubic", maxgap=None): """ Fill gaps (nan values) in var along the depth profile using the specified method @@ -434,8 +456,8 @@ def fillgaps_depth(var, method='cubic', maxgap=None): xarray.DataArray.interpolate_na() """ - range_dim = [t for t in var.dims if 'range' in t][0] + range_dim = [t for t in var.dims if "range" in t][0] - return var.interpolate_na(dim=range_dim, method=method, - use_coordinate=False, - limit=maxgap) + return var.interpolate_na( + dim=range_dim, method=method, use_coordinate=False, limit=maxgap + ) diff --git a/mhkit/dolfyn/adp/turbulence.py b/mhkit/dolfyn/adp/turbulence.py index 72c4704ae..d85f365ab 100644 --- a/mhkit/dolfyn/adp/turbulence.py +++ b/mhkit/dolfyn/adp/turbulence.py @@ -16,7 +16,7 @@ def _diffz_first(dat, z): 1 dimensional vector to be differentiated z : array-like Vertical dimension to differentiate across - + Returns ------- out : array-like @@ -36,7 +36,7 @@ def _diffz_centered(dat, z): 1 dimensional vector to be differentiated z : array-like Vertical dimension to differentiate across - + Returns ------- out : array-like @@ -48,7 +48,7 @@ def _diffz_centered(dat, z): Can use 2*np.diff b/c depth bin size never changes """ - return (dat[2:]-dat[:-2]) / (2*np.diff(z)[1:, None]) + return (dat[2:] - dat[:-2]) / (2 * np.diff(z)[1:, None]) def _diffz_centered_extended(dat, z): @@ -61,7 +61,7 @@ def _diffz_centered_extended(dat, z): 1 dimensional vector to be differentiated z : array-like Vertical dimension to differentiate across - + Returns ------- out : array-like @@ -70,19 +70,31 @@ def _diffz_centered_extended(dat, z): Notes ----- Top - bottom centered difference with endpoints determined - with a first difference. Ensures the output array is the + with a first difference. Ensures the output array is the same size as the input array. """ - out = np.concatenate((_diffz_first(dat[:2], z[:2]), - _diffz_centered(dat, z), - _diffz_first(dat[-2:], z[-2:]))) + out = np.concatenate( + ( + _diffz_first(dat[:2], z[:2]), + _diffz_centered(dat, z), + _diffz_first(dat[-2:], z[-2:]), + ) + ) return out class ADPBinner(VelBinner): - def __init__(self, n_bin, fs, n_fft=None, n_fft_coh=None, - noise=None, orientation='up', diff_style='centered_extended'): + def __init__( + self, + n_bin, + fs, + n_fft=None, + n_fft_coh=None, + noise=None, + orientation="up", + diff_style="centered_extended", + ): """ A class for calculating turbulence statistics from ADCP data @@ -99,12 +111,14 @@ def __init__(self, n_bin, fs, n_fft=None, n_fft_coh=None, n_fft_coh : int Number of data points to use for coherence and cross-spectra ffts Default: `n_fft_coh`=`n_fft` - noise : float, list or numpy.ndarray - Instrument's doppler noise in same units as velocity + noise : float or array-like + Instrument noise level in same units as velocity. Typically + found from `adp.turbulence.doppler_noise_level`. + Default: None. orientation : str, default='up' Instrument's orientation, either 'up' or 'down' diff_style : str, default='centered_extended' - Style of numerical differentiation using Newton's Method. + Style of numerical differentiation using Newton's Method. Either 'first' (first difference), 'centered' (centered difference), or 'centered_extended' (centered difference with first and last points extended using a first difference). @@ -115,11 +129,11 @@ def __init__(self, n_bin, fs, n_fft=None, n_fft_coh=None, self.orientation = orientation def _diff_func(self, vel, u): - """ Applies the chosen style of numerical differentiation to velocity data. + """Applies the chosen style of numerical differentiation to velocity data. - This method calculates the derivative of the velocity data 'vel' with respect to the 'range' - using the differentiation style specified in 'self.diff_style'. The styles can be 'first' - for first difference, 'centered' for centered difference, and 'centered_extended' for + This method calculates the derivative of the velocity data 'vel' with respect to the 'range' + using the differentiation style specified in 'self.diff_style'. The styles can be 'first' + for first difference, 'centered' for centered difference, and 'centered_extended' for centered difference with first and last points extended using a first difference. Parameters @@ -135,14 +149,14 @@ def _diff_func(self, vel, u): The calculated derivative of the velocity data. """ - if self.diff_style == 'first': - out = _diffz_first(vel[u].values, vel['range'].values) + if self.diff_style == "first": + out = _diffz_first(vel[u].values, vel["range"].values) return out, vel.range[1:] - elif self.diff_style == 'centered': - out = _diffz_centered(vel[u].values, vel['range'].values) + elif self.diff_style == "centered": + out = _diffz_centered(vel[u].values, vel["range"].values) return out, vel.range[1:-1] - elif self.diff_style == 'centered_extended': - out = _diffz_centered_extended(vel[u].values, vel['range'].values) + elif self.diff_style == "centered_extended": + out = _diffz_centered_extended(vel[u].values, vel["range"].values) return out, vel.range def dudz(self, vel, orientation=None): @@ -171,16 +185,16 @@ def dudz(self, vel, orientation=None): if not orientation: orientation = self.orientation sign = 1 - if orientation == 'down': + if orientation == "down": sign *= -1 - dudz, rng = sign*self._diff_func(vel, 0) - return xr.DataArray(dudz, - coords=[rng, vel.time], - dims=['range', 'time'], - attrs={'units': 's-1', - 'long_name': 'Shear in X-direction'} - ) + dudz, rng = sign * self._diff_func(vel, 0) + return xr.DataArray( + dudz, + coords=[rng, vel.time], + dims=["range", "time"], + attrs={"units": "s-1", "long_name": "Shear in X-direction"}, + ) def dvdz(self, vel): """ @@ -204,12 +218,12 @@ def dvdz(self, vel): """ dvdz, rng = self._diff_func(vel, 1) - return xr.DataArray(dvdz, - coords=[rng, vel.time], - dims=['range', 'time'], - attrs={'units': 's-1', - 'long_name': 'Shear in Y-direction'} - ) + return xr.DataArray( + dvdz, + coords=[rng, vel.time], + dims=["range", "time"], + attrs={"units": "s-1", "long_name": "Shear in Y-direction"}, + ) def dwdz(self, vel): """ @@ -233,12 +247,12 @@ def dwdz(self, vel): """ dwdz, rng = self._diff_func(vel, 2) - return xr.DataArray(dwdz, - coords=[rng, vel.time], - dims=['range', 'time'], - attrs={'units': 's-1', - 'long_name': 'Shear in Z-direction'} - ) + return xr.DataArray( + dwdz, + coords=[rng, vel.time], + dims=["range", "time"], + attrs={"units": "s-1", "long_name": "Shear in Z-direction"}, + ) def shear_squared(self, vel): """ @@ -266,8 +280,8 @@ def shear_squared(self, vel): """ shear2 = self.dudz(vel) ** 2 + self.dvdz(vel) ** 2 - shear2.attrs['units'] = 's-2' - shear2.attrs['long_name'] = 'Horizontal Shear Squared' + shear2.attrs["units"] = "s-2" + shear2.attrs["long_name"] = "Horizontal Shear Squared" return shear2 @@ -286,7 +300,7 @@ def doppler_noise_level(self, psd, pct_fN=0.8): Returns ------- - doppler_noise (xarray.DataArray): + doppler_noise (xarray.DataArray): Doppler noise level in units of m/s Notes @@ -299,19 +313,19 @@ def doppler_noise_level(self, psd, pct_fN=0.8): `N` is the constant variance or spectral density, and `f_{c}` is the characteristic frequency. - The characteristic frequency is then found as + The characteristic frequency is then found as .. :math: f_{c} = pct_fN * (f_{s}/2) where `f_{s}/2` is the Nyquist frequency. - Richard, Jean-Baptiste, et al. "Method for identification of Doppler noise - levels in turbulent flow measurements dedicated to tidal energy." International + Richard, Jean-Baptiste, et al. "Method for identification of Doppler noise + levels in turbulent flow measurements dedicated to tidal energy." International Journal of Marine Energy 3 (2013): 52-64. - Thiébaut, Maxime, et al. "Investigating the flow dynamics and turbulence at a - tidal-stream energy site in a highly energetic estuary." Renewable Energy 195 + Thiébaut, Maxime, et al. "Investigating the flow dynamics and turbulence at a + tidal-stream energy site in a highly energetic estuary." Renewable Energy 195 (2022): 252-262. """ @@ -320,38 +334,41 @@ def doppler_noise_level(self, psd, pct_fN=0.8): if not isinstance(pct_fN, float) or not 0 <= pct_fN <= 1: raise ValueError("`pct_fN` must be a float within the range [0, 1].") if len(psd.shape) != 2: - raise Exception('PSD should be 2-dimensional (time, frequency)') + raise Exception("PSD should be 2-dimensional (time, frequency)") # Characteristic frequency set to 80% of Nyquist frequency - fN = self.fs/2 + fN = self.fs / 2 fc = pct_fN * fN # Get units right if psd.freq.units == "Hz": f_range = slice(fc, fN) else: - f_range = slice(2*np.pi*fc, 2*np.pi*fN) + f_range = slice(2 * np.pi * fc, 2 * np.pi * fN) # Noise floor N2 = psd.sel(freq=f_range) * psd.freq.sel(freq=f_range) - noise_level = np.sqrt(N2.mean(dim='freq')) + noise_level = np.sqrt(N2.mean(dim="freq")) + time_coord = psd.dims[0] # no reason this shouldn't be time or time_b5 return xr.DataArray( - noise_level.values.astype('float32'), - dims=['time'], - attrs={'units': 'm s-1', - 'long_name': 'Doppler Noise Level', - 'description': 'Doppler noise level calculated ' - 'from PSD white noise'}) + noise_level.values.astype("float32"), + coords={time_coord: psd.coords[time_coord]}, + attrs={ + "units": "m s-1", + "long_name": "Doppler Noise Level", + "description": "Doppler noise level calculated " "from PSD white noise", + }, + ) def _stress_func_warnings(self, ds, beam_angle, noise, tilt_thresh): """ Performs a series of checks and raises warnings for ADCP stress calculations. - This method checks several conditions relevant for ADCP stress calculations and raises - warnings if these conditions are not met. It checks if the beam angle is defined, - if the instrument's coordinate system is aligned with the principal flow directions, - if the tilt is above a threshold, if the noise level is specified, and if the data + This method checks several conditions relevant for ADCP stress calculations and raises + warnings if these conditions are not met. It checks if the beam angle is defined, + if the instrument's coordinate system is aligned with the principal flow directions, + if the tilt is above a threshold, if the noise level is specified, and if the data set is in the 'beam' coordinate system. Parameters @@ -374,41 +391,50 @@ def _stress_func_warnings(self, ds, beam_angle, noise, tilt_thresh): """ # Error 1. Beam Angle - b_angle = getattr(ds, 'beam_angle', beam_angle) + b_angle = getattr(ds, "beam_angle", beam_angle) if b_angle is None: raise Exception( - " Beam angle not found in dataset and no beam angle supplied.") + " Beam angle not found in dataset and no beam angle supplied." + ) # Warning 1. Memo - warnings.warn(" The beam-variance algorithms assume the instrument's " - "(XYZ) coordinate system is aligned with the principal " - "flow directions.") + warnings.warn( + " The beam-variance algorithms assume the instrument's " + "(XYZ) coordinate system is aligned with the principal " + "flow directions." + ) # Warning 2. Check tilt - tilt_mask = calc_tilt(ds['pitch'], ds['roll']) > tilt_thresh + tilt_mask = calc_tilt(ds["pitch"], ds["roll"]) > tilt_thresh if sum(tilt_mask): pct_above_thresh = round(sum(tilt_mask) / len(tilt_mask) * 100, 2) - warnings.warn(f" {pct_above_thresh} % of measurements have a tilt " - f"greater than {tilt_thresh} degrees.") + warnings.warn( + f" {pct_above_thresh} % of measurements have a tilt " + f"greater than {tilt_thresh} degrees." + ) # Warning 3. Noise level of instrument is important considering 50 % of variance # in ADCP data can be noise if noise is None: - warnings.warn(' No "noise" input supplied. Consider calculating "noise" ' - 'using `calc_doppler_noise`') + warnings.warn( + ' No "noise" input supplied. Consider calculating "noise" ' + "using `calc_doppler_noise`" + ) noise = 0 # Warning 4. Likely not in beam coordinates after running a typical analysis workflow - if 'beam' not in ds.coord_sys: - warnings.warn(" Raw dataset must be in the 'beam' coordinate system. " - "Rotating raw dataset...") - ds.velds.rotate2('beam') + if "beam" not in ds.coord_sys: + warnings.warn( + " Raw dataset must be in the 'beam' coordinate system. " + "Rotating raw dataset..." + ) + ds.velds.rotate2("beam") return b_angle, noise - + def _check_orientation(self, ds, orientation, beam5=False): """ - Determines the beam order for the beam-stress rotation algorithm based on + Determines the beam order for the beam-stress rotation algorithm based on the instrument orientation. Note: Stacey defines the beams for down-looking Workhorse ADCPs. @@ -424,11 +450,11 @@ def _check_orientation(self, ds, orientation, beam5=False): ds : xarray.Dataset Raw dataset in beam coordinates orientation : str - The orientation of the instrument, either 'up' or 'down'. - If None, the orientation will be retrieved from the dataset or the + The orientation of the instrument, either 'up' or 'down'. + If None, the orientation will be retrieved from the dataset or the instance's default orientation. beam5 : bool, default=False - A flag indicating whether a fifth beam is present. + A flag indicating whether a fifth beam is present. If True, the number 4 will be appended to the beam order. Returns @@ -438,36 +464,38 @@ def _check_orientation(self, ds, orientation, beam5=False): phi2 : float, optional The mean of the roll values in radians. Only returned if 'beam5' is True. phi3 : float, optional - The mean of the pitch values in radians, negated for Nortek instruments. + The mean of the pitch values in radians, negated for Nortek instruments. Only returned if 'beam5' is True. """ if orientation is None: - orientation = getattr(ds, 'orientation', self.orientation) + orientation = getattr(ds, "orientation", self.orientation) - if 'TRDI' in ds.inst_make: - phi2 = np.deg2rad(self.mean(ds['pitch'].values)) - phi3 = np.deg2rad(self.mean(ds['roll'].values)) - if 'down' in orientation.lower(): + if "TRDI" in ds.inst_make: + phi2 = np.deg2rad(self.mean(ds["pitch"].values)) + phi3 = np.deg2rad(self.mean(ds["roll"].values)) + if "down" in orientation.lower(): # this order is correct given the note above beams = [0, 1, 2, 3] # for down-facing RDIs - elif 'up' in orientation.lower(): + elif "up" in orientation.lower(): beams = [0, 1, 3, 2] # for up-facing RDIs else: raise Exception( - "Please provide instrument orientation ['up' or 'down']") + "Please provide instrument orientation ['up' or 'down']" + ) # For Nortek Signatures - elif ('Signature' in ds.inst_model) or ('AD2CP' in ds.inst_model): - phi2 = np.deg2rad(self.mean(ds['roll'].values)) - phi3 = -np.deg2rad(self.mean(ds['pitch'].values)) - if 'down' in orientation.lower(): + elif ("Signature" in ds.inst_model) or ("AD2CP" in ds.inst_model): + phi2 = np.deg2rad(self.mean(ds["roll"].values)) + phi3 = -np.deg2rad(self.mean(ds["pitch"].values)) + if "down" in orientation.lower(): beams = [2, 0, 3, 1] # for down-facing Norteks - elif 'up' in orientation.lower(): + elif "up" in orientation.lower(): beams = [0, 2, 3, 1] # for up-facing Norteks else: raise Exception( - "Please provide instrument orientation ['up' or 'down']") + "Please provide instrument orientation ['up' or 'down']" + ) if beam5: beams.append(4) @@ -477,7 +505,7 @@ def _check_orientation(self, ds, orientation, beam5=False): def _beam_variance(self, ds, time, noise, beam_order, n_beams): """ - Calculates the variance of the along-beam velocities and then subtracts + Calculates the variance of the along-beam velocities and then subtracts noise from the result. Parameters @@ -496,19 +524,20 @@ def _beam_variance(self, ds, time, noise, beam_order, n_beams): Returns ------- bp2_ : xarray.DataArray - Enxemble-averaged along-beam velocity variance, + Enxemble-averaged along-beam velocity variance, written "beam-velocity prime squared bar" in units of m^2/s^2 """ # Concatenate 5th beam velocity if need be if n_beams == 4: - beam_vel = ds['vel'].values + beam_vel = ds["vel"].values elif n_beams == 5: - beam_vel = np.concatenate((ds['vel'].values, - ds['vel_b5'].values[None, ...])) + beam_vel = np.concatenate( + (ds["vel"].values, ds["vel_b5"].values[None, ...]) + ) # Calculate along-beam velocity prime squared bar - bp2_ = np.empty((n_beams, len(ds.range), len(time)))*np.nan + bp2_ = np.empty((n_beams, len(ds.range), len(time))) * np.nan for i, beam in enumerate(beam_order): bp2_[i] = np.nanvar(self.reshape(beam_vel[beam]), axis=-1) @@ -521,7 +550,7 @@ def _beam_variance(self, ds, time, noise, beam_order, n_beams): def reynolds_stress_4beam(self, ds, noise=None, orientation=None, beam_angle=None): """ - Calculate the stresses from the covariance of along-beam + Calculate the stresses from the covariance of along-beam velocity measurements Parameters @@ -547,20 +576,21 @@ def reynolds_stress_4beam(self, ds, noise=None, orientation=None, beam_angle=Non Assumes ADCP instrument coordinate system is aligned with principal flow directions. - Stacey, Mark T., Stephen G. Monismith, and Jon R. Burau. "Measurements - of Reynolds stress profiles in unstratified tidal flow." Journal of + Stacey, Mark T., Stephen G. Monismith, and Jon R. Burau. "Measurements + of Reynolds stress profiles in unstratified tidal flow." Journal of Geophysical Research: Oceans 104.C5 (1999): 10933-10949. """ # Run through warnings b_angle, noise = self._stress_func_warnings( - ds, beam_angle, noise, tilt_thresh=5) + ds, beam_angle, noise, tilt_thresh=5 + ) # Fetch beam order beam_order = self._check_orientation(ds, orientation, beam5=False) # Calculate beam variance and subtract noise - time = self.mean(ds['time'].values) + time = self.mean(ds["time"].values) bp2_ = self._beam_variance(ds, time, noise, beam_order, n_beams=4) # Run stress calculations @@ -569,16 +599,20 @@ def reynolds_stress_4beam(self, ds, noise=None, orientation=None, beam_angle=Non vpwp_ = (bp2_[2] - bp2_[3]) / denm return xr.DataArray( - np.stack([upwp_*np.nan, upwp_, vpwp_]).astype('float32'), - coords={'tau': ["upvp_", "upwp_", "vpwp_"], - 'range': ds.range, - 'time': time}, - attrs={'units': 'm2 s-2', - 'long_name': 'Specific Reynolds Stress Vector'}) - - def stress_tensor_5beam(self, ds, noise=None, orientation=None, beam_angle=None, tke_only=False): + np.stack([upwp_ * np.nan, upwp_, vpwp_]).astype("float32"), + coords={ + "tau": ["upvp_", "upwp_", "vpwp_"], + "range": ds.range, + "time": time, + }, + attrs={"units": "m2 s-2", "long_name": "Specific Reynolds Stress Vector"}, + ) + + def stress_tensor_5beam( + self, ds, noise=None, orientation=None, beam_angle=None, tke_only=False + ): """ - Calculate the stresses from the covariance of along-beam + Calculate the stresses from the covariance of along-beam velocity measurements Parameters @@ -605,7 +639,7 @@ def stress_tensor_5beam(self, ds, noise=None, orientation=None, beam_angle=None, Assumes small-angle approximation is applicable. Assumes ADCP instrument coordinate system is aligned with principal flow - directions, i.e. u', v' and w' are aligned to the instrument's (XYZ) + directions, i.e. u', v' and w' are aligned to the instrument's (XYZ) frame of reference. The stress equations here utilize u'v'_ to account for small variations @@ -618,91 +652,122 @@ def stress_tensor_5beam(self, ds, noise=None, orientation=None, beam_angle=None, energy estimates from various ADCP beam configurations: Theory." J. of Phys. Ocean (2007): 1-35. - Guerra, Maricarmen, and Jim Thomson. "Turbulence measurements from - five-beam acoustic Doppler current profilers." Journal of Atmospheric + Guerra, Maricarmen, and Jim Thomson. "Turbulence measurements from + five-beam acoustic Doppler current profilers." Journal of Atmospheric and Oceanic Technology 34.6 (2017): 1267-1284. """ # Check that beam 5 velocity exists - if 'vel_b5' not in ds.data_vars: + if "vel_b5" not in ds.data_vars: raise Exception("Must have 5th beam data to use this function.") # Run through warnings b_angle, noise = self._stress_func_warnings( - ds, beam_angle, noise, tilt_thresh=10) + ds, beam_angle, noise, tilt_thresh=10 + ) # Fetch beam order - beam_order, phi2, phi3 = self._check_orientation( - ds, orientation, beam5=True) + beam_order, phi2, phi3 = self._check_orientation(ds, orientation, beam5=True) # Calculate beam variance and subtract noise - time = self.mean(ds['time'].values) + time = self.mean(ds["time"].values) bp2_ = self._beam_variance(ds, time, noise, beam_order, n_beams=5) # Run tke and stress calculations th = np.deg2rad(b_angle) sin = np.sin cos = np.cos - denm = -4 * sin(th)**6 * cos(th)**2 - - upup_ = (-2*sin(th)**4*cos(th)**2*(bp2_[1]+bp2_[0]-2*cos(th)**2*bp2_[4]) + - 2*sin(th)**5*cos(th)*phi3*(bp2_[1]-bp2_[0])) / denm - - vpvp_ = (-2*sin(th)**4*cos(th)**2*(bp2_[3]+bp2_[0]-2*cos(th)**2*bp2_[4]) - - 2*sin(th)**4*cos(th)**2*phi3*(bp2_[1]-bp2_[0]) + - 2*sin(th)**3*cos(th)**3*phi3*(bp2_[1]-bp2_[0]) - - 2*sin(th)**5*cos(th)*phi2*(bp2_[3]-bp2_[2])) / denm - - wpwp_ = (-2*sin(th)**5*cos(th) * - (bp2_[1]-bp2_[0] + 2*sin(th)**5*cos(th)*phi2*(bp2_[3]-bp2_[2]) - - 4*sin(th)**6*cos(th)**2*bp2_[4])) / denm + denm = -4 * sin(th) ** 6 * cos(th) ** 2 + + upup_ = ( + -2 + * sin(th) ** 4 + * cos(th) ** 2 + * (bp2_[1] + bp2_[0] - 2 * cos(th) ** 2 * bp2_[4]) + + 2 * sin(th) ** 5 * cos(th) * phi3 * (bp2_[1] - bp2_[0]) + ) / denm + + vpvp_ = ( + -2 + * sin(th) ** 4 + * cos(th) ** 2 + * (bp2_[3] + bp2_[0] - 2 * cos(th) ** 2 * bp2_[4]) + - 2 * sin(th) ** 4 * cos(th) ** 2 * phi3 * (bp2_[1] - bp2_[0]) + + 2 * sin(th) ** 3 * cos(th) ** 3 * phi3 * (bp2_[1] - bp2_[0]) + - 2 * sin(th) ** 5 * cos(th) * phi2 * (bp2_[3] - bp2_[2]) + ) / denm + + wpwp_ = ( + -2 + * sin(th) ** 5 + * cos(th) + * ( + bp2_[1] + - bp2_[0] + + 2 * sin(th) ** 5 * cos(th) * phi2 * (bp2_[3] - bp2_[2]) + - 4 * sin(th) ** 6 * cos(th) ** 2 * bp2_[4] + ) + ) / denm tke_vec = xr.DataArray( - np.stack([upup_, vpvp_, wpwp_]).astype('float32'), - coords={'tke': ["upup_", "vpvp_", "wpwp_"], - 'range': ds.range, - 'time': time}, - attrs={'units': 'm2 s-2', - 'long_name': 'TKE Vector', - 'standard_name': 'specific_turbulent_kinetic_energy_of_sea_water'}) + np.stack([upup_, vpvp_, wpwp_]).astype("float32"), + coords={ + "tke": ["upup_", "vpvp_", "wpwp_"], + "range": ds.range, + "time": time, + }, + attrs={ + "units": "m2 s-2", + "long_name": "TKE Vector", + "standard_name": "specific_turbulent_kinetic_energy_of_sea_water", + }, + ) if tke_only: return tke_vec else: # Guerra Thomson calculate u'v' bar from from the covariance of u' and v' - ds.velds.rotate2('inst') + ds.velds.rotate2("inst") vel = self.detrend(ds.vel.values) - upvp_ = np.nanmean(vel[0] * vel[1], axis=-1, - dtype=np.float64).astype(np.float32) - - upwp_ = (sin(th)**5*cos(th)*(bp2_[1]-bp2_[0]) + - 2*sin(th)**4*cos(th)*2*phi3*(bp2_[1]+bp2_[0]) - - 4*sin(th)**4*cos(th)*2*phi3*bp2_[4] - - 4*sin(th)**6*cos(th)*2*phi2*upvp_) / denm - - vpwp_ = (sin(th)**5*cos(th)*(bp2_[3]-bp2_[2]) - - 2*sin(th)**4*cos(th)*2*phi2*(bp2_[3]+bp2_[2]) + - 4*sin(th)**4*cos(th)*2*phi2*bp2_[4] + - 4*sin(th)**6*cos(th)*2*phi3*upvp_) / denm + upvp_ = np.nanmean(vel[0] * vel[1], axis=-1, dtype=np.float64).astype( + np.float32 + ) + + upwp_ = ( + sin(th) ** 5 * cos(th) * (bp2_[1] - bp2_[0]) + + 2 * sin(th) ** 4 * cos(th) * 2 * phi3 * (bp2_[1] + bp2_[0]) + - 4 * sin(th) ** 4 * cos(th) * 2 * phi3 * bp2_[4] + - 4 * sin(th) ** 6 * cos(th) * 2 * phi2 * upvp_ + ) / denm + + vpwp_ = ( + sin(th) ** 5 * cos(th) * (bp2_[3] - bp2_[2]) + - 2 * sin(th) ** 4 * cos(th) * 2 * phi2 * (bp2_[3] + bp2_[2]) + + 4 * sin(th) ** 4 * cos(th) * 2 * phi2 * bp2_[4] + + 4 * sin(th) ** 6 * cos(th) * 2 * phi3 * upvp_ + ) / denm stress_vec = xr.DataArray( - np.stack([upvp_, upwp_, vpwp_]).astype('float32'), - coords={'tau': ["upvp_", "upwp_", "vpwp_"], - 'range': ds.range, - 'time': time}, - attrs={'units': 'm2 s-2', - 'long_name': 'Specific Reynolds Stress Vector'}) + np.stack([upvp_, upwp_, vpwp_]).astype("float32"), + coords={ + "tau": ["upvp_", "upwp_", "vpwp_"], + "range": ds.range, + "time": time, + }, + attrs={ + "units": "m2 s-2", + "long_name": "Specific Reynolds Stress Vector", + }, + ) return tke_vec, stress_vec - def total_turbulent_kinetic_energy(self, - ds, - noise=None, - orientation=None, - beam_angle=None): + def total_turbulent_kinetic_energy( + self, ds, noise=None, orientation=None, beam_angle=None + ): """ - Calculate magnitude of turbulent kinetic energy from 5-beam ADCP. + Calculate magnitude of turbulent kinetic energy from 5-beam ADCP. Parameters ---------- @@ -726,25 +791,26 @@ def total_turbulent_kinetic_energy(self, combines the TKE components. Warning: the integral length scale of turbulence captured by the - ADCP measurements (i.e. the size of turbulent structures) increases + ADCP measurements (i.e. the size of turbulent structures) increases with increasing range from the instrument. """ tke_vec = self.stress_tensor_5beam( - ds, noise, orientation, beam_angle, tke_only=True) + ds, noise, orientation, beam_angle, tke_only=True + ) - tke = tke_vec.sum('tke') / 2 - tke.attrs['units'] = 'm2 s-2' - tke.attrs['long_name'] = 'TKE Magnitude', - tke.attrs['standard_name'] = 'specific_turbulent_kinetic_energy_of_sea_water' + tke = tke_vec.sum("tke") / 2 + tke.attrs["units"] = "m2 s-2" + tke.attrs["long_name"] = ("TKE Magnitude",) + tke.attrs["standard_name"] = "specific_turbulent_kinetic_energy_of_sea_water" - return tke.astype('float32') + return tke.astype("float32") def check_turbulence_cascade_slope(self, psd, freq_range=[0.2, 0.4]): """ - This function calculates the slope of the PSD, the power spectra + This function calculates the slope of the PSD, the power spectra of velocity, within the given frequency range. The purpose of this - function is to check that the region of the PSD containing the + function is to check that the region of the PSD containing the isotropic turbulence cascade decreases at a rate of :math:`f^{-5/3}`. Parameters @@ -752,13 +818,13 @@ def check_turbulence_cascade_slope(self, psd, freq_range=[0.2, 0.4]): psd : xarray.DataArray ([[range,] time,] freq) The power spectral density (1D, 2D or 3D) freq_range : iterable(2) (default: [6.28, 12.57]) - The range over which the isotropic turbulence cascade occurs, in + The range over which the isotropic turbulence cascade occurs, in units of the psd frequency vector (Hz or rad/s) Returns ------- (m, b): tuple (slope, y-intercept) - A tuple containing the coefficients of the log-adjusted linear + A tuple containing the coefficients of the log-adjusted linear regression between PSD and frequency Notes @@ -767,9 +833,9 @@ def check_turbulence_cascade_slope(self, psd, freq_range=[0.2, 0.4]): .. math:: S(k) = \\alpha \\epsilon^{2/3} k^{-5/3} + N - The slope of the isotropic turbulence cascade, which should be - equal to :math:`k^{-5/3}` or :math:`f^{-5/3}`, where k and f are - the wavenumber and frequency vectors, is estimated using linear + The slope of the isotropic turbulence cascade, which should be + equal to :math:`k^{-5/3}` or :math:`f^{-5/3}`, where k and f are + the wavenumber and frequency vectors, is estimated using linear regression with a log transformation: .. math:: log10(y) = m*log10(x) + b @@ -778,35 +844,35 @@ def check_turbulence_cascade_slope(self, psd, freq_range=[0.2, 0.4]): .. math:: y = 10^{b} x^{m} - Where :math:`y` is S(k) or S(f), :math:`x` is k or f, :math:`m` - is the slope (ideally -5/3), and :math:`10^{b}` is the intercept of + Where :math:`y` is S(k) or S(f), :math:`x` is k or f, :math:`m` + is the slope (ideally -5/3), and :math:`10^{b}` is the intercept of y at x^m=1. """ if not isinstance(psd, xr.DataArray): raise TypeError("`psd` must be an instance of `xarray.DataArray`.") - if not hasattr(freq_range, '__iter__') or len(freq_range) != 2: + if not hasattr(freq_range, "__iter__") or len(freq_range) != 2: raise ValueError("`freq_range` must be an iterable of length 2.") - + idx = np.where((freq_range[0] < psd.freq) & (psd.freq < freq_range[1])) idx = idx[0] - x = np.log10(psd['freq'].isel(freq=idx)) + x = np.log10(psd["freq"].isel(freq=idx)) y = np.log10(psd.isel(freq=idx)) - y_bar = y.mean('freq') - x_bar = x.mean('freq') + y_bar = y.mean("freq") + x_bar = x.mean("freq") # using the formula to calculate the slope and intercept n = np.sum((x - x_bar) * (y - y_bar), axis=0) - d = np.sum((x - x_bar)**2, axis=0) + d = np.sum((x - x_bar) ** 2, axis=0) - m = n/d - b = y_bar - m*x_bar + m = n / d + b = y_bar - m * x_bar return m, b - def dissipation_rate_LT83(self, psd, U_mag, freq_range=[0.2, 0.4]): + def dissipation_rate_LT83(self, psd, U_mag, freq_range=[0.2, 0.4], noise=None): """ Calculate the TKE dissipation rate from the velocity spectra. @@ -817,8 +883,12 @@ def dissipation_rate_LT83(self, psd, U_mag, freq_range=[0.2, 0.4]): U_mag : xarray.DataArray (time) The bin-averaged horizontal velocity (a.k.a. speed) from a single depth bin (range) f_range : iterable(2) - The range over which to integrate/average the spectrum, in units + The range over which to integrate/average the spectrum, in units of the psd frequency vector (Hz or rad/s) + noise : float or array-like + Instrument noise level in same units as velocity. Typically + found from `adp.turbulence.doppler_noise_level`. + Default: None. Returns ------- @@ -850,33 +920,47 @@ def dissipation_rate_LT83(self, psd, U_mag, freq_range=[0.2, 0.4]): """ if len(psd.shape) != 2: - raise Exception('PSD should be 2-dimensional (time, frequency)') + raise Exception("PSD should be 2-dimensional (time, frequency)") if len(U_mag.shape) != 1: - raise Exception('U_mag should be 1-dimensional (time)') - if not hasattr(freq_range, '__iter__') or len(freq_range) != 2: + raise Exception("U_mag should be 1-dimensional (time)") + if not hasattr(freq_range, "__iter__") or len(freq_range) != 2: raise ValueError("`freq_range` must be an iterable of length 2.") - + if noise is not None: + if np.shape(noise)[0] != np.shape(psd)[0]: + raise Exception("Noise should have same first dimension as PSD") + else: + noise = np.array(0) + + # Noise subtraction from binner.TimeBinner._psd_base + psd = psd.copy() + if noise is not None: + psd -= noise**2 / (self.fs / 2) + psd = psd.where(psd > 0, np.min(np.abs(psd)) / 100) + freq = psd.freq idx = np.where((freq_range[0] < freq) & (freq < freq_range[1])) idx = idx[0] - if freq.units == 'Hz': - U = U_mag/(2*np.pi) + if freq.units == "Hz": + U = U_mag / (2 * np.pi) else: U = U_mag a = 0.5 - out = (psd[:, idx] * freq[idx]**(5/3) / - a).mean(axis=-1)**(3/2) / U.values + out = (psd[:, idx] * freq[idx] ** (5 / 3) / a).mean(axis=-1) ** ( + 3 / 2 + ) / U.values return xr.DataArray( - out.astype('float32'), - attrs={'units': 'm2 s-3', - 'long_name': 'TKE Dissipation Rate', - 'standard_name': 'specific_turbulent_kinetic_energy_dissipation_in_sea_water', - 'description': 'TKE dissipation rate calculated using ' - 'the method from Lumley and Terray, 1983', - }) + out.astype("float32"), + attrs={ + "units": "m2 s-3", + "long_name": "TKE Dissipation Rate", + "standard_name": "specific_turbulent_kinetic_energy_dissipation_in_sea_water", + "description": "TKE dissipation rate calculated using " + "the method from Lumley and Terray, 1983", + }, + ) def dissipation_rate_SF(self, vel_raw, r_range=[1, 5]): """ @@ -904,18 +988,18 @@ def dissipation_rate_SF(self, vel_raw, r_range=[1, 5]): Notes ----- - Dissipation rate outputted by this function is only valid if the isotropic - turbulence cascade can be seen in the TKE spectra. + Dissipation rate outputted by this function is only valid if the isotropic + turbulence cascade can be seen in the TKE spectra. - Velocity data must be in beam coordinates and should be cleaned of surface + Velocity data must be in beam coordinates and should be cleaned of surface interference. This method calculates the 2nd order structure function: .. math:: D(z,r) = [(u'(z) - u`(z+r))^2] - where `u'` is the velocity fluctuation `z` is the depth bin, - `r` is the separation between depth bins, and [] denotes a time average + where `u'` is the velocity fluctuation `z` is the depth bin, + `r` is the separation between depth bins, and [] denotes a time average (size 'ADPBinner.n_bin'). The stucture function can then be used to estimate the dissipation rate: @@ -934,14 +1018,15 @@ def dissipation_rate_SF(self, vel_raw, r_range=[1, 5]): if not isinstance(vel_raw, xr.DataArray): raise TypeError("`vel_raw` must be an instance of `xarray.DataArray`.") - if not hasattr(r_range, '__iter__') or len(r_range) != 2: + if not hasattr(r_range, "__iter__") or len(r_range) != 2: raise ValueError("`r_range` must be an iterable of length 2.") if len(vel_raw.shape) != 2: raise Exception( - "Function input must be single beam and in 'beam' coordinate system") + "Function input must be single beam and in 'beam' coordinate system" + ) - if 'range_b5' in vel_raw.dims: + if "range_b5" in vel_raw.dims: rng = vel_raw.range_b5 time = self.mean(vel_raw.time_b5.values) else: @@ -951,28 +1036,27 @@ def dissipation_rate_SF(self, vel_raw, r_range=[1, 5]): # bm shape is [range, ensemble time, 'data within ensemble'] bm = self.demean(vel_raw.values) # take out the ensemble mean - e = np.empty(bm.shape[:2], dtype='float32')*np.nan - n = np.empty(bm.shape[:2], dtype='float32')*np.nan + e = np.empty(bm.shape[:2], dtype="float32") * np.nan + n = np.empty(bm.shape[:2], dtype="float32") * np.nan bin_size = round(np.diff(rng)[0], 3) - R = int(r_range[0]/bin_size) - r = np.arange(bin_size, r_range[1]+bin_size, bin_size) + R = int(r_range[0] / bin_size) + r = np.arange(bin_size, r_range[1] + bin_size, bin_size) # D(z,r,time) D = np.zeros((bm.shape[0], r.size, bm.shape[1])) for r_value in r: # the i in d is the index based on r and bin size # bin size index, > 1 - i = int(r_value/bin_size) + i = int(r_value / bin_size) for idx in range(bm.shape[1]): # for each ensemble # subtract the variance of adjacent depth cells - d = np.nanmean( - (bm[:-i, idx, :] - bm[i:, idx, :]) ** 2, axis=-1) + d = np.nanmean((bm[:-i, idx, :] - bm[i:, idx, :]) ** 2, axis=-1) # have to insert 0/nan in first bin to match length spaces = np.empty((i,)) spaces[:] = np.NaN - D[:, i-1, idx] = np.concatenate((spaces, d)) + D[:, i - 1, idx] = np.concatenate((spaces, d)) # find best fit line y = mx + b (aka D(z,r) = A*r^2/3 + N) to solve # epsilon for each depth and ensemble @@ -981,50 +1065,52 @@ def dissipation_rate_SF(self, vel_raw, r_range=[1, 5]): for i in range(D.shape[1], D.shape[0]): # average ensembles together if not all(np.isnan(D[i, R:, idx])): # if no nan's - e[i, idx], n[i, idx] = np.polyfit(r[R:] ** 2/3, - D[i, R:, idx], - deg=1) + e[i, idx], n[i, idx] = np.polyfit( + r[R:] ** 2 / 3, D[i, R:, idx], deg=1 + ) else: e[i, idx], n[i, idx] = np.nan, np.nan # A taken as 2.1, n = y-intercept - epsilon = (e/2.1)**(3/2) - noise = np.sqrt(n/2) + epsilon = (e / 2.1) ** (3 / 2) + noise = np.sqrt(n / 2) epsilon = xr.DataArray( - epsilon.astype('float32'), - coords={vel_raw.dims[0]: rng, - vel_raw.dims[1]: time}, + epsilon.astype("float32"), + coords={vel_raw.dims[0]: rng, vel_raw.dims[1]: time}, dims=vel_raw.dims, - attrs={'units': 'm2 s-3', - 'long_name': 'TKE Dissipation Rate', - 'standard_name': 'specific_turbulent_kinetic_energy_dissipation_in_sea_water', - 'description': 'TKE dissipation rate calculated from the ' - '"structure function" method from Wiles et al, 2006.' - }) + attrs={ + "units": "m2 s-3", + "long_name": "TKE Dissipation Rate", + "standard_name": "specific_turbulent_kinetic_energy_dissipation_in_sea_water", + "description": "TKE dissipation rate calculated from the " + '"structure function" method from Wiles et al, 2006.', + }, + ) noise = xr.DataArray( - noise.astype('float32'), - coords={vel_raw.dims[0]: rng, - vel_raw.dims[1]: time}, - attrs={'units': 'm s-1', - 'long_name': 'Structure Function Noise Offset', - }) + noise.astype("float32"), + coords={vel_raw.dims[0]: rng, vel_raw.dims[1]: time}, + attrs={ + "units": "m s-1", + "long_name": "Structure Function Noise Offset", + }, + ) SF = xr.DataArray( - D.astype('float32'), - coords={vel_raw.dims[0]: rng, - 'range_SF': r, - vel_raw.dims[1]: time}, - attrs={'units': 'm2 s-2', - 'long_name': 'Structure Function D(z,r)', - 'description': '"Structure function" from Wiles et al, 2006.' - }) + D.astype("float32"), + coords={vel_raw.dims[0]: rng, "range_SF": r, vel_raw.dims[1]: time}, + attrs={ + "units": "m2 s-2", + "long_name": "Structure Function D(z,r)", + "description": '"Structure function" from Wiles et al, 2006.', + }, + ) return epsilon, noise, SF def friction_velocity(self, ds_avg, upwp_, z_inds=slice(1, 5), H=None): """ - Approximate friction velocity from shear stress using a + Approximate friction velocity from shear stress using a logarithmic profile. Parameters @@ -1051,18 +1137,20 @@ def friction_velocity(self, ds_avg, upwp_, z_inds=slice(1, 5), H=None): raise TypeError("`upwp_` must be an instance of `xarray.DataArray`.") if not isinstance(z_inds, slice): raise TypeError("`z_inds` must be an instance of `slice(int,int)`.") - + if not H: H = ds_avg.depth.values - z = ds_avg['range'].values + z = ds_avg["range"].values upwp_ = upwp_.values sign = np.nanmean(np.sign(upwp_[z_inds, :]), axis=0) - u_star = np.nanmean(sign * upwp_[z_inds, :] / - (1 - z[z_inds, None] / H), axis=0) ** 0.5 + u_star = ( + np.nanmean(sign * upwp_[z_inds, :] / (1 - z[z_inds, None] / H), axis=0) + ** 0.5 + ) return xr.DataArray( - u_star.astype('float32'), - coords={'time': ds_avg.time}, - attrs={'units': 'm s-1', - 'long_name': 'Friction Velocity'}) + u_star.astype("float32"), + coords={"time": ds_avg.time}, + attrs={"units": "m s-1", "long_name": "Friction Velocity"}, + ) diff --git a/mhkit/dolfyn/adv/__init__.py b/mhkit/dolfyn/adv/__init__.py index 9468875d3..4dc7607ef 100644 --- a/mhkit/dolfyn/adv/__init__.py +++ b/mhkit/dolfyn/adv/__init__.py @@ -1 +1 @@ -from . import api \ No newline at end of file +from . import api diff --git a/mhkit/dolfyn/adv/clean.py b/mhkit/dolfyn/adv/clean.py index e33c95043..7bf95d46a 100644 --- a/mhkit/dolfyn/adv/clean.py +++ b/mhkit/dolfyn/adv/clean.py @@ -1,16 +1,18 @@ """Module containing functions to clean data """ + import numpy as np import warnings from ..velocity import VelBinner from ..tools.misc import group, slice1d_along_axis -warnings.filterwarnings('ignore', category=np.RankWarning) + +warnings.filterwarnings("ignore", category=np.RankWarning) sin = np.sin cos = np.cos -def clean_fill(u, mask, npt=12, method='cubic', maxgap=6): +def clean_fill(u, mask, npt=12, method="cubic", maxgap=6): """ Interpolate over mask values in timeseries data using the specified method @@ -22,7 +24,7 @@ def clean_fill(u, mask, npt=12, method='cubic', maxgap=6): Logical tensor of elements to "nan" out (from `spikeThresh`, `rangeLimit`, or `GN2002`) and replace npt : int - The number of points on either side of the bad values that + The number of points on either side of the bad values that interpolation occurs over method : string Interpolation method to use (linear, cubic, pchip, etc). Default is 'cubic' @@ -43,7 +45,7 @@ def clean_fill(u, mask, npt=12, method='cubic', maxgap=6): u.values[..., mask] = np.nan # Remove bad data for 2D+ and 1D timeseries variables - if 'dir' in u.dims: + if "dir" in u.dims: for i in range(u.shape[0]): u[i] = _interp_nan(u[i], npt, method, maxgap) else: @@ -101,13 +103,12 @@ def _interp_nan(da, npt, method, maxgap): ntail += 1 pos += 1 - if (ntail == npt or pos == len(da)): + if ntail == npt or pos == len(da): # This is the block we are interpolating over i_int = i[start:pos] - da[i_int] = da[i_int].interpolate_na(dim=da.dims[-1], - method=method, - use_coordinate=True, - limit=maxgap) + da[i_int] = da[i_int].interpolate_na( + dim=da.dims[-1], method=method, use_coordinate=True, limit=maxgap + ) # Reset searching = True ntail = 0 @@ -141,7 +142,7 @@ def fill_nan_ensemble_mean(u, mask, fs, window): """ u = u.where(~mask) - bnr = VelBinner(n_bin=window*fs, fs=fs) + bnr = VelBinner(n_bin=window * fs, fs=fs) if len(u.shape) == 1: var = u.values[None, :] @@ -158,12 +159,11 @@ def fill_nan_ensemble_mean(u, mask, fs, window): # diff = number of extra points extra_nans = vel_reshaped.shape[-1] - diff if diff: - vel = np.empty((var.shape[0], var.shape[-1]+extra_nans)) + vel = np.empty((var.shape[0], var.shape[-1] + extra_nans)) extra = var[:, -diff:] - empty = np.empty((vel.shape[0], extra_nans))*np.nan + empty = np.empty((vel.shape[0], extra_nans)) * np.nan extra = np.concatenate((extra, empty), axis=-1) - vel_reshaped = np.concatenate( - (vel_reshaped, extra[:, None, :]), axis=1) + vel_reshaped = np.concatenate((vel_reshaped, extra[:, None, :]), axis=1) extra_mean = np.nanmean(extra, axis=-1) vel_mean = np.concatenate((vel_mean, extra_mean[:, None]), axis=-1) @@ -172,11 +172,12 @@ def fill_nan_ensemble_mean(u, mask, fs, window): vel_mean_matrix = np.tile(vel_mean[..., None], (1, 1, bnr.n_bin)) vel_missing = np.isnan(vel_reshaped) vel_mask = np.ma.masked_array(vel_mean_matrix, ~vel_missing).filled(np.nan) - vel_filled = np.where(np.isnan(vel_reshaped), vel_mask, - vel_reshaped + np.nan_to_num(vel_mask)) + vel_filled = np.where( + np.isnan(vel_reshaped), vel_mask, vel_reshaped + np.nan_to_num(vel_mask) + ) # "Unshape" the data for i in range(var.shape[0]): - vel[i] = np.ravel(vel_filled[i], 'C') + vel[i] = np.ravel(vel_filled[i], "C") if diff: # Trim off the extra means u.values = np.squeeze(vel[:, :-extra_nans]) @@ -212,7 +213,7 @@ def spike_thresh(u, thresh=10): def range_limit(u, range=[-5, 5]): """ - Returns a logical vector that is True where the values of `u` are + Returns a logical vector that is True where the values of `u` are outside of `range`. Parameters @@ -232,12 +233,13 @@ def range_limit(u, range=[-5, 5]): def _calcab(al, Lu_std_u, Lu_std_d2u): - """Solve equations 10 and 11 of Goring+Nikora2002 - """ - return tuple(np.linalg.solve( - np.array([[cos(al) ** 2, sin(al) ** 2], - [sin(al) ** 2, cos(al) ** 2]]), - np.array([(Lu_std_u) ** 2, (Lu_std_d2u) ** 2]))) + """Solve equations 10 and 11 of Goring+Nikora2002""" + return tuple( + np.linalg.solve( + np.array([[cos(al) ** 2, sin(al) ** 2], [sin(al) ** 2, cos(al) ** 2]]), + np.array([(Lu_std_u) ** 2, (Lu_std_d2u) ** 2]), + ) + ) def _phaseSpaceThresh(u): @@ -252,27 +254,28 @@ def _phaseSpaceThresh(u): du[1:-1] = (u[2:] - u[:-2]) / 2 # And again. d2u[2:-2] = (du[1:-1][2:] - du[1:-1][:-2]) / 2 - p = (u ** 2 + du ** 2 + d2u ** 2) + p = u**2 + du**2 + d2u**2 std_u = np.std(u, axis=0) std_du = np.std(du, axis=0) std_d2u = np.std(d2u, axis=0) - alpha = np.arctan2(np.sum(u * d2u, axis=0), np.sum(u ** 2, axis=0)) + alpha = np.arctan2(np.sum(u * d2u, axis=0), np.sum(u**2, axis=0)) a = np.empty_like(alpha) b = np.empty_like(alpha) with warnings.catch_warnings() as w: warnings.filterwarnings( - 'ignore', category=RuntimeWarning, message='invalid value encountered in ') + "ignore", category=RuntimeWarning, message="invalid value encountered in " + ) for idx, al in enumerate(alpha): a[idx], b[idx] = _calcab(al, Lu * std_u[idx], Lu * std_d2u[idx]) theta = np.arctan2(du, u) - phi = np.arctan2((du ** 2 + u ** 2) ** 0.5, d2u) - pe = (((sin(phi) * cos(theta) * cos(alpha) + - cos(phi) * sin(alpha)) ** 2) / a + - ((sin(phi) * cos(theta) * sin(alpha) - - cos(phi) * cos(alpha)) ** 2) / b + - ((sin(phi) * sin(theta)) ** 2) / (Lu * std_du) ** 2) ** -1 + phi = np.arctan2((du**2 + u**2) ** 0.5, d2u) + pe = ( + ((sin(phi) * cos(theta) * cos(alpha) + cos(phi) * sin(alpha)) ** 2) / a + + ((sin(phi) * cos(theta) * sin(alpha) - cos(phi) * cos(alpha)) ** 2) / b + + ((sin(phi) * sin(theta)) ** 2) / (Lu * std_du) ** 2 + ) ** -1 pe[:, np.isnan(pe[0, :])] = 0 - return (p > pe).flatten('F') + return (p > pe).flatten("F") def GN2002(u, npt=5000): @@ -297,16 +300,16 @@ def GN2002(u, npt=5000): return GN2002(u.values, npt=npt) if u.ndim > 1: - mask = np.zeros(u.shape, dtype='bool') + mask = np.zeros(u.shape, dtype="bool") for slc in slice1d_along_axis(u.shape, -1): mask[slc] = GN2002(u[slc], npt=npt) return mask - mask = np.zeros(len(u), dtype='bool') + mask = np.zeros(len(u), dtype="bool") # Find large bad segments (>npt/10): # group returns a vector of slice objects. - bad_segs = group(np.isnan(u), min_length=int(npt//10)) + bad_segs = group(np.isnan(u), min_length=int(npt // 10)) if bad_segs.size > 2: # Break them up into separate regions: sp = 0 @@ -323,7 +326,7 @@ def GN2002(u, npt=5000): for ind in range(len(bad_segs)): bs = bad_segs[ind] # bs is a slice object. # Clean the good region: - mask[sp:bs.start] = GN2002(u[sp:bs.start], npt=npt) + mask[sp : bs.start] = GN2002(u[sp : bs.start], npt=npt) sp = bs.stop # Clean the last good region. mask[sp:ep] = GN2002(u[sp:ep], npt=npt) @@ -335,12 +338,13 @@ def GN2002(u, npt=5000): mask_last = np.zeros_like(mask) + np.inf mask[0] = True # make sure we start. while mask.any(): - mask[:nbins * npt] = _phaseSpaceThresh( - np.array(np.reshape(u[:(nbins * npt)], (npt, nbins), order='F'))) + mask[: nbins * npt] = _phaseSpaceThresh( + np.array(np.reshape(u[: (nbins * npt)], (npt, nbins), order="F")) + ) mask[-npt:] = _phaseSpaceThresh(u[-npt:]) c += 1 if c >= 100: - raise Exception('GN2002 loop-limit exceeded.') + raise Exception("GN2002 loop-limit exceeded.") if mask.sum() >= mask_last.sum(): break mask_last = mask.copy() diff --git a/mhkit/dolfyn/adv/motion.py b/mhkit/dolfyn/adv/motion.py index 43ac8c3d4..7db6f2797 100644 --- a/mhkit/dolfyn/adv/motion.py +++ b/mhkit/dolfyn/adv/motion.py @@ -11,21 +11,24 @@ class MissingDataError(ValueError): pass + class DataAlreadyProcessedError(Exception): pass + class MissingRequiredDataError(Exception): pass + def _get_body2imu(make_model): - if make_model == 'nortek vector': + if make_model == "nortek vector": # In inches it is: (0.25, 0.25, 5.9) return np.array([0.00635, 0.00635, 0.14986]) else: raise Exception("The imu->body vector is unknown for this instrument.") -class CalcMotion(): +class CalcMotion: """ A 'calculator' for computing the velocity of points that are rigidly connected to an ADV-body with an IMU. @@ -44,22 +47,17 @@ class CalcMotion(): _default_accel_filtfreq = 0.03 - def __init__(self, ds, - accel_filtfreq=None, - vel_filtfreq=None, - to_earth=True): - + def __init__(self, ds, accel_filtfreq=None, vel_filtfreq=None, to_earth=True): self.ds = ds - self._check_filtfreqs(accel_filtfreq, - vel_filtfreq) + self._check_filtfreqs(accel_filtfreq, vel_filtfreq) self.to_earth = to_earth self._set_accel() self._set_acclow() - self.angrt = ds['angrt'].values # No copy because not modified. + self.angrt = ds["angrt"].values # No copy because not modified. def _check_filtfreqs(self, accel_filtfreq, vel_filtfreq): - datval = self.ds.attrs.get('motion accel_filtfreq Hz', None) + datval = self.ds.attrs.get("motion accel_filtfreq Hz", None) if datval is None: if accel_filtfreq is None: accel_filtfreq = self._default_accel_filtfreq @@ -72,48 +70,58 @@ def _check_filtfreqs(self, accel_filtfreq, vel_filtfreq): warnings.warn( f"The default accel_filtfreq is {datval} Hz. " "Overriding this with the user-specified " - "value: {accel_filtfreq} Hz.") + "value: {accel_filtfreq} Hz." + ) if vel_filtfreq is None: - vel_filtfreq = self.ds.attrs.get('motion vel_filtfreq Hz', None) + vel_filtfreq = self.ds.attrs.get("motion vel_filtfreq Hz", None) if vel_filtfreq is None: vel_filtfreq = accel_filtfreq / 3.0 self.accel_filtfreq = accel_filtfreq self.accelvel_filtfreq = vel_filtfreq - def _set_accel(self, ): + def _set_accel( + self, + ): ds = self.ds - if ds.coord_sys == 'inst': - self.accel = np.einsum('ij...,i...->j...', - ds['orientmat'].values, - ds['accel'].values) - elif self.ds.coord_sys == 'earth': - self.accel = ds['accel'].values.copy() + if ds.coord_sys == "inst": + self.accel = np.einsum( + "ij...,i...->j...", ds["orientmat"].values, ds["accel"].values + ) + elif self.ds.coord_sys == "earth": + self.accel = ds["accel"].values.copy() else: - raise Exception(("Invalid coordinate system '%s'. The coordinate " - "system must either be 'earth' or 'inst' to " - "perform motion correction.") - % (self.ds.coord_sys)) - - def _check_duty_cycle(self, ): + raise Exception( + ( + "Invalid coordinate system '%s'. The coordinate " + "system must either be 'earth' or 'inst' to " + "perform motion correction." + ) + % (self.ds.coord_sys) + ) + + def _check_duty_cycle( + self, + ): """ Function to check if duty cycle exists and if it is followed consistently in the datafile """ - n_burst = self.ds.attrs.get('duty_cycle_n_burst') + n_burst = self.ds.attrs.get("duty_cycle_n_burst") if not n_burst: return # duty cycle interval in seconds - interval = self.ds.attrs.get('duty_cycle_interval') + interval = self.ds.attrs.get("duty_cycle_interval") actual_interval = ( - self.ds.time[n_burst:].values - self.ds.time[:-n_burst].values)/1e9 + self.ds.time[n_burst:].values - self.ds.time[:-n_burst].values + ) / 1e9 rng = actual_interval.max() - actual_interval.min() mean = actual_interval.mean() # Range will vary depending on how datetime64 rounds the timestamp # But isn't an issue if it does - if rng > 2 or (mean > interval+1 and mean < interval-1): + if rng > 2 or (mean > interval + 1 and mean < interval - 1): raise Exception("Bad duty cycle detected") # If this passes, it means we're safe to blindly skip n_burst for every integral @@ -121,17 +129,21 @@ def _check_duty_cycle(self, ): def reshape(self, dat, n_bin): # Assumes shape is (3, time) - length = dat.shape[-1]//n_bin - return np.reshape(dat[..., :length*n_bin], (dat.shape[0], length, n_bin)) + length = dat.shape[-1] // n_bin + return np.reshape(dat[..., : length * n_bin], (dat.shape[0], length, n_bin)) - def _set_acclow(self, ): + def _set_acclow( + self, + ): # Check if file is duty cycled n = self._check_duty_cycle() if n: - warnings.warn(" Duty Cycle detected. " - "Motion corrected data may contain edge effects " - "at the beginning and end of each duty cycle.") + warnings.warn( + " Duty Cycle detected. " + "Motion corrected data may contain edge effects " + "at the beginning and end of each duty cycle." + ) self.accel = self.reshape(self.accel, n_bin=n) self.acclow = acc = self.accel.copy() @@ -146,10 +158,13 @@ def _set_acclow(self, ): if np.isnan(acc).any(): warnings.warn( "Error filtering acceleration data. " - "Please decrease `accel_filtfreq`.") + "Please decrease `accel_filtfreq`." + ) acc = np.nan_to_num(acc) - def calc_velacc(self, ): + def calc_velacc( + self, + ): """ Calculates the translational velocity from the high-pass filtered acceleration signal. @@ -170,8 +185,13 @@ def calc_velacc(self, ): hp = self.accel - self.acclow # Integrate in time to get velocities - dat = np.concatenate((np.zeros(list(hp.shape[:-1]) + [1]), - cumtrapz(hp, dx=1 / samp_freq, axis=-1)), axis=-1) + dat = np.concatenate( + ( + np.zeros(list(hp.shape[:-1]) + [1]), + cumtrapz(hp, dx=1 / samp_freq, axis=-1), + ), + axis=-1, + ) if self.accelvel_filtfreq > 0: filt_freq = self.accelvel_filtfreq @@ -179,14 +199,15 @@ def calc_velacc(self, ): # Applied twice by 'filtfilt' = 4th order butterworth filt = ss.butter(2, float(filt_freq) / (samp_freq / 2)) for idx in range(hp.shape[0]): - dat[idx] = dat[idx] - \ - ss.filtfilt(filt[0], filt[1], dat[idx], axis=-1) + dat[idx] = dat[idx] - ss.filtfilt(filt[0], filt[1], dat[idx], axis=-1) # Fill nan with zeros - happens for some filter frequencies if np.isnan(dat).any(): - warnings.warn("Error filtering acceleration data. " - "Please decrease `vel_filtfreq`. " - "(default is 1/3 `accel_filtfreq`)") + warnings.warn( + "Error filtering acceleration data. " + "Please decrease `vel_filtfreq`. " + "(default is 1/3 `accel_filtfreq`)" + ) dat = np.nan_to_num(dat) if n: @@ -195,9 +216,9 @@ def calc_velacc(self, ): acclow_shaped = np.empty(self.angrt.shape) accel_shaped = np.empty(self.angrt.shape) for idx in range(hp.shape[0]): - velacc_shaped[idx] = np.ravel(dat[idx], 'C') - acclow_shaped[idx] = np.ravel(self.acclow[idx], 'C') - accel_shaped[idx] = np.ravel(self.accel[idx], 'C') + velacc_shaped[idx] = np.ravel(dat[idx], "C") + acclow_shaped[idx] = np.ravel(self.acclow[idx], "C") + accel_shaped[idx] = np.ravel(self.accel[idx], "C") # return acclow and velacc self.acclow = acclow_shaped @@ -209,7 +230,7 @@ def calc_velacc(self, ): def calc_velrot(self, vec, to_earth=None): """ - Calculate the induced velocity due to rotations of the + Calculate the induced velocity due to rotations of the instrument about the IMU center. Parameters @@ -245,17 +266,16 @@ def calc_velrot(self, vec, to_earth=None): # cross-product of omega (rotation vector) and the vector. # u=dz*omegaY-dy*omegaZ,v=dx*omegaZ-dz*omegaX,w=dy*omegaX-dx*omegaY # where vec=[dx,dy,dz], and angrt=[omegaX,omegaY,omegaZ] - velrot = np.array([(vec[2][:, None] * self.angrt[1] - - vec[1][:, None] * self.angrt[2]), - (vec[0][:, None] * self.angrt[2] - - vec[2][:, None] * self.angrt[0]), - (vec[1][:, None] * self.angrt[0] - - vec[0][:, None] * self.angrt[1]), - ]) + velrot = np.array( + [ + (vec[2][:, None] * self.angrt[1] - vec[1][:, None] * self.angrt[2]), + (vec[0][:, None] * self.angrt[2] - vec[2][:, None] * self.angrt[0]), + (vec[1][:, None] * self.angrt[0] - vec[0][:, None] * self.angrt[1]), + ] + ) if to_earth: - velrot = np.einsum('ji...,j...->i...', - self.ds['orientmat'].values, velrot) + velrot = np.einsum("ji...,j...->i...", self.ds["orientmat"].values, velrot) if dimflag: return velrot[:, 0, :] @@ -271,16 +291,16 @@ def _calc_probe_pos(ds, separate_probes=False): ----------- ds : xarray.Dataset ADV dataset - separate_probes : bool - If a Nortek Vector ADV, this function returns the - transformation matrix of positions of the probe's + separate_probes : bool + If a Nortek Vector ADV, this function returns the + transformation matrix of positions of the probe's acoustic recievers to the ADV's instrument frame of reference. Optional, default = False Returns ------- vec : 3x3 numpy.ndarray - Transformation matrix to convert from ADV probe to + Transformation matrix to convert from ADV probe to instrument frame of reference """ @@ -294,26 +314,28 @@ def _calc_probe_pos(ds, separate_probes=False): # In the coordinate system of the center of the probe (origin at # the acoustic transmitter) then, the positions of the centers of # the receivers is: - if separate_probes and _make_model(ds) == 'nortek vector': + if separate_probes and _make_model(ds) == "nortek vector": r = 0.076 # The angle between the x-y plane and the probes phi = np.deg2rad(-30) # The angles of the probes from the x-axis: - theta = np.deg2rad(np.array([0., 120., 240.])) - return (np.dot(ds['inst2head_rotmat'].values.T, - np.array([r * np.cos(theta), - r * np.sin(theta), - r * np.tan(phi) * np.ones(3)])) + - vec[:, None]) + theta = np.deg2rad(np.array([0.0, 120.0, 240.0])) + return ( + np.dot( + ds["inst2head_rotmat"].values.T, + np.array( + [r * np.cos(theta), r * np.sin(theta), r * np.tan(phi) * np.ones(3)] + ), + ) + + vec[:, None] + ) else: return vec -def correct_motion(ds, - accel_filtfreq=None, - vel_filtfreq=None, - to_earth=True, - separate_probes=False): +def correct_motion( + ds, accel_filtfreq=None, vel_filtfreq=None, to_earth=True, separate_probes=False +): """ This function performs motion correction on an IMU-ADV data object. The IMU and ADV data should be tightly synchronized and @@ -332,7 +354,7 @@ def correct_motion(ds, a second frequency to high-pass filter the integrated acceleration. Optional, default = 1/3 of `accel_filtfreq` - to_earth : bool + to_earth : bool All variables in the ds.props['rotate_vars'] list will be rotated into either the earth frame (to_earth=True) or the instrument frame (to_earth=False). Optional, default = True @@ -357,7 +379,7 @@ def correct_motion(ds, ``velacc`` is the translational component of the head motion (from accel, the high-pass filtered accel sigal) - ``acclow`` is the low-pass filtered accel sigal (i.e., + ``acclow`` is the low-pass filtered accel sigal (i.e., The primary velocity vector attribute, ``vel``, is motion corrected such that: @@ -408,44 +430,44 @@ def correct_motion(ds, ds = ds.copy(deep=True) # Check that no nan's exist - if ds['accel'].isnull().sum(): + if ds["accel"].isnull().sum(): raise MissingDataError("There should be no missing data in `accel` variable") - if ds['angrt'].isnull().sum(): + if ds["angrt"].isnull().sum(): raise MissingDataError("There should be no missing data in `angrt` variable") - if hasattr(ds, 'velrot') or ds.attrs.get('motion corrected', False): - raise DataAlreadyProcessedError('The data appears to already have been ' - 'motion corrected.') + if hasattr(ds, "velrot") or ds.attrs.get("motion corrected", False): + raise DataAlreadyProcessedError( + "The data appears to already have been " "motion corrected." + ) - if not hasattr(ds, 'has_imu') or ('accel' not in ds): - raise MissingRequiredDataError('The instrument does not appear to have an IMU.') + if not hasattr(ds, "has_imu") or ("accel" not in ds): + raise MissingRequiredDataError("The instrument does not appear to have an IMU.") - if ds.coord_sys != 'inst': - rotate2(ds, 'inst', inplace=True) + if ds.coord_sys != "inst": + rotate2(ds, "inst", inplace=True) # Returns True/False if head2inst_rotmat has been set/not-set. # Bad configs raises errors (this is to check for those) rot._check_inst2head_rotmat(ds) # Create the motion 'calculator': - calcobj = CalcMotion(ds, - accel_filtfreq=accel_filtfreq, - vel_filtfreq=vel_filtfreq, - to_earth=to_earth) + calcobj = CalcMotion( + ds, accel_filtfreq=accel_filtfreq, vel_filtfreq=vel_filtfreq, to_earth=to_earth + ) ########## # Calculate the translational velocity (from the accel): - ds['velacc'] = xr.DataArray(calcobj.calc_velacc(), - dims=['dirIMU', 'time'], - attrs={'units': 'm s-1', - 'long_name': 'Velocity from IMU Accelerometer'} - ).astype('float32') + ds["velacc"] = xr.DataArray( + calcobj.calc_velacc(), + dims=["dirIMU", "time"], + attrs={"units": "m s-1", "long_name": "Velocity from IMU Accelerometer"}, + ).astype("float32") # Copy acclow to the adv-object. - ds['acclow'] = xr.DataArray(calcobj.acclow, - dims=['dirIMU', 'time'], - attrs={'units': 'm s-2', - 'long_name': 'Low-Frequency Acceleration from IMU'} - ).astype('float32') + ds["acclow"] = xr.DataArray( + calcobj.acclow, + dims=["dirIMU", "time"], + attrs={"units": "m s-2", "long_name": "Low-Frequency Acceleration from IMU"}, + ).astype("float32") ########## # Calculate rotational velocity (from angrt): @@ -454,60 +476,65 @@ def correct_motion(ds, velrot = calcobj.calc_velrot(pos, to_earth=False) if separate_probes: # The head->beam transformation matrix - transMat = ds.get('beam2inst_orientmat', None) + transMat = ds.get("beam2inst_orientmat", None) # The inst->head transformation matrix - rmat = ds['inst2head_rotmat'] + rmat = ds["inst2head_rotmat"] # 1) Rotate body-coordinate velocities to head-coord. velrot = np.dot(rmat, velrot) # 2) Rotate body-coord to beam-coord (einsum), # 3) Take along beam-component (diagonal), # 4) Rotate back to head-coord (einsum), - velrot = np.einsum('ij,kj->ik', - transMat, - np.diagonal(np.einsum('ij,j...->i...', - np.linalg.inv(transMat), - velrot))) + velrot = np.einsum( + "ij,kj->ik", + transMat, + np.diagonal(np.einsum("ij,j...->i...", np.linalg.inv(transMat), velrot)), + ) # 5) Rotate back to body-coord. velrot = np.dot(rmat.T, velrot) - ds['velrot'] = xr.DataArray(velrot, - dims=['dirIMU', 'time'], - attrs={'units': 'm s-1', - 'long_name': 'Velocity from IMU Gyroscope'} - ).astype('float32') + ds["velrot"] = xr.DataArray( + velrot, + dims=["dirIMU", "time"], + attrs={"units": "m s-1", "long_name": "Velocity from IMU Gyroscope"}, + ).astype("float32") ########## # Rotate the data into the correct coordinate system. # inst2earth expects a 'rotate_vars' property. # Add velrot, velacc, acclow, to it. - if 'rotate_vars' not in ds.attrs: - ds.attrs['rotate_vars'] = ['vel', 'velrot', 'velacc', 'accel', - 'acclow', 'angrt', 'mag'] + if "rotate_vars" not in ds.attrs: + ds.attrs["rotate_vars"] = [ + "vel", + "velrot", + "velacc", + "accel", + "acclow", + "angrt", + "mag", + ] else: - ds.attrs['rotate_vars'].extend(['velrot', 'velacc', 'acclow']) + ds.attrs["rotate_vars"].extend(["velrot", "velacc", "acclow"]) # NOTE: accel, acclow, and velacc are in the earth-frame after # calc_velacc() call. inst2earth = rot._inst2earth if to_earth: # accel was converted to earth coordinates - ds['accel'].values = calcobj.accel - to_remove = ['accel', 'acclow', 'velacc'] - ds = inst2earth(ds, rotate_vars=[e for e in - ds.attrs['rotate_vars'] - if e not in to_remove]) + ds["accel"].values = calcobj.accel + to_remove = ["accel", "acclow", "velacc"] + ds = inst2earth( + ds, rotate_vars=[e for e in ds.attrs["rotate_vars"] if e not in to_remove] + ) else: # rotate these variables back to the instrument frame. - ds = inst2earth(ds, reverse=True, - rotate_vars=['acclow', 'velacc'], - force=True) + ds = inst2earth(ds, reverse=True, rotate_vars=["acclow", "velacc"], force=True) ########## # Copy vel -> velraw prior to motion correction: - ds['vel_raw'] = ds.vel.copy(deep=True) + ds["vel_raw"] = ds.vel.copy(deep=True) # Add it to rotate_vars: - ds.attrs['rotate_vars'].append('vel_raw') + ds.attrs["rotate_vars"].append("vel_raw") ########## # Remove motion from measured velocity @@ -517,10 +544,10 @@ def correct_motion(ds, # measures a velocity in the opposite direction. # use xarray to keep dimensions consistent - velmot = ds['velrot'] + ds['velacc'] - ds['vel'].values += velmot.values + velmot = ds["velrot"] + ds["velacc"] + ds["vel"].values += velmot.values - ds.attrs['motion corrected'] = 1 - ds.attrs['motion accel_filtfreq Hz'] = calcobj.accel_filtfreq + ds.attrs["motion corrected"] = 1 + ds.attrs["motion accel_filtfreq Hz"] = calcobj.accel_filtfreq return ds diff --git a/mhkit/dolfyn/adv/turbulence.py b/mhkit/dolfyn/adv/turbulence.py index 022012928..83ae80a7a 100644 --- a/mhkit/dolfyn/adv/turbulence.py +++ b/mhkit/dolfyn/adv/turbulence.py @@ -8,7 +8,7 @@ class ADVBinner(VelBinner): """ - A class that builds upon `VelBinner` for calculating turbulence + A class that builds upon `VelBinner` for calculating turbulence statistics and velocity spectra from ADV data Parameters @@ -24,35 +24,36 @@ class ADVBinner(VelBinner): n_fft_coh : int Number of data points to use for coherence and cross-spectra fft's. Optional, default `n_fft_coh` = `n_fft` - noise : float, list or numpy.ndarray - Instrument's doppler noise in same units as velocity + noise : float or array-like + Instrument noise level in same units as velocity. Typically + found from `adv.turbulence.doppler_noise_level`. + Default: None. """ - def __call__(self, ds, freq_units='rad/s', window='hann'): + def __call__(self, ds, freq_units="rad/s", window="hann"): out = type(ds)() out = self.bin_average(ds, out) - noise = ds.get('doppler_noise', [0, 0, 0]) - out['tke_vec'] = self.turbulent_kinetic_energy(ds['vel'], noise=noise) - out['stress_vec'] = self.reynolds_stress(ds['vel']) + noise = ds.get("doppler_noise", [0, 0, 0]) + out["tke_vec"] = self.turbulent_kinetic_energy(ds["vel"], noise=noise) + out["stress_vec"] = self.reynolds_stress(ds["vel"]) - out['psd'] = self.power_spectral_density(ds['vel'], - window=window, - freq_units=freq_units, - noise=noise) + out["psd"] = self.power_spectral_density( + ds["vel"], window=window, freq_units=freq_units, noise=noise + ) for key in list(ds.attrs.keys()): - if 'config' in key: + if "config" in key: ds.attrs.pop(key) out.attrs = ds.attrs - out.attrs['n_bin'] = self.n_bin - out.attrs['n_fft'] = self.n_fft - out.attrs['n_fft_coh'] = self.n_fft_coh + out.attrs["n_bin"] = self.n_bin + out.attrs["n_fft"] = self.n_fft + out.attrs["n_fft_coh"] = self.n_fft_coh return out def reynolds_stress(self, veldat, detrend=True): """ - Calculate the specific Reynolds stresses + Calculate the specific Reynolds stresses (cross-covariances of u,v,w in m^2/s^2) Parameters @@ -78,8 +79,7 @@ def reynolds_stress(self, veldat, detrend=True): time = self.mean(veldat.time.values) vel = veldat.values - out = np.empty(self._outshape(vel[:3].shape)[:-1], - dtype=np.float32) + out = np.empty(self._outshape(vel[:3].shape)[:-1], dtype=np.float32) if detrend: vel = self.detrend(vel) @@ -87,25 +87,29 @@ def reynolds_stress(self, veldat, detrend=True): vel = self.demean(vel) for idx, p in enumerate(self._cross_pairs): - out[idx] = np.nanmean(vel[p[0]] * vel[p[1]], - -1, dtype=np.float64 - ).astype(np.float32) - - da = xr.DataArray(out.astype('float32'), - dims=veldat.dims, - attrs={'units': 'm2 s-2', - 'long_name': 'Specific Reynolds Stress Vector'}) - da = da.rename({'dir': 'tau'}) - da = da.assign_coords({'tau': self.tau, 'time': time}) - + out[idx] = np.nanmean(vel[p[0]] * vel[p[1]], -1, dtype=np.float64).astype( + np.float32 + ) + + da = xr.DataArray( + out.astype("float32"), + dims=veldat.dims, + attrs={"units": "m2 s-2", "long_name": "Specific Reynolds Stress Vector"}, + ) + da = da.rename({"dir": "tau"}) + da = da.assign_coords({"tau": self.tau, "time": time}) + return da - def cross_spectral_density(self, veldat, - freq_units='rad/s', - fs=None, - window='hann', - n_bin=None, - n_fft_coh=None): + def cross_spectral_density( + self, + veldat, + freq_units="rad/s", + fs=None, + window="hann", + n_bin=None, + n_fft_coh=None, + ): """ Calculate the cross-spectral density of velocity components. @@ -114,7 +118,7 @@ def cross_spectral_density(self, veldat, veldat : xarray.DataArray The raw 3D velocity data. freq_units : string - Frequency units of the returned spectra in either Hz or rad/s + Frequency units of the returned spectra in either Hz or rad/s (`f` or :math:`\\omega`) fs : float (optional) The sample rate. Default = `binner.fs` @@ -135,7 +139,7 @@ def cross_spectral_density(self, veldat, if not isinstance(veldat, xr.DataArray): raise TypeError("`veldat` must be an instance of `xarray.DataArray`.") - if ('rad' not in freq_units) and ('Hz' not in freq_units): + if ("rad" not in freq_units) and ("Hz" not in freq_units): raise ValueError("`freq_units` should be one of 'Hz' or 'rad/s'") fs_in = self._parse_fs(fs) @@ -143,46 +147,57 @@ def cross_spectral_density(self, veldat, time = self.mean(veldat.time.values) veldat = veldat.values if len(np.shape(veldat)) != 2: - raise Exception("This function is only valid for calculating TKE using " - "the 3D velocity vector from an ADV.") + raise Exception( + "This function is only valid for calculating TKE using " + "the 3D velocity vector from an ADV." + ) - out = np.empty(self._outshape_fft(veldat[:3].shape, n_fft=n_fft, n_bin=n_bin), - dtype='complex') + out = np.empty( + self._outshape_fft(veldat[:3].shape, n_fft=n_fft, n_bin=n_bin), + dtype="complex", + ) # Create frequency vector, also checks whether using f or omega - if 'rad' in freq_units: - fs = 2*np.pi*fs_in - freq_units = 'rad s-1' - units = 'm2 s-1 rad-1' + if "rad" in freq_units: + fs = 2 * np.pi * fs_in + freq_units = "rad s-1" + units = "m2 s-1 rad-1" else: fs = fs_in - freq_units = 'Hz' - units = 'm2 s-2 Hz-1' - coh_freq = xr.DataArray(self._fft_freq(fs=fs_in, units=freq_units, n_fft=n_fft, coh=True), - dims=['coh_freq'], - name='coh_freq', - attrs={'units': freq_units, - 'long_name': 'FFT Frequency Vector', - 'coverage_content_type': 'coordinate'} - ).astype('float32') + freq_units = "Hz" + units = "m2 s-2 Hz-1" + coh_freq = xr.DataArray( + self._fft_freq(fs=fs_in, units=freq_units, n_fft=n_fft, coh=True), + dims=["coh_freq"], + name="coh_freq", + attrs={ + "units": freq_units, + "long_name": "FFT Frequency Vector", + "coverage_content_type": "coordinate", + }, + ).astype("float32") for ip, ipair in enumerate(self._cross_pairs): - out[ip] = self._csd_base(veldat[ipair[0]], - veldat[ipair[1]], - fs=fs, - window=window, - n_bin=n_bin, - n_fft=n_fft) - - csd = xr.DataArray(out.astype('complex64'), - coords={'C': self.C, - 'time': time, - 'coh_freq': coh_freq}, - dims=['C', 'time', 'coh_freq'], - attrs={'units': units, - 'n_fft_coh': n_fft, - 'long_name': 'Cross Spectral Density'}) - csd['coh_freq'].attrs['units'] = freq_units + out[ip] = self._csd_base( + veldat[ipair[0]], + veldat[ipair[1]], + fs=fs, + window=window, + n_bin=n_bin, + n_fft=n_fft, + ) + + csd = xr.DataArray( + out.astype("complex64"), + coords={"C": self.C, "time": time, "coh_freq": coh_freq}, + dims=["C", "time", "coh_freq"], + attrs={ + "units": units, + "n_fft_coh": n_fft, + "long_name": "Cross Spectral Density", + }, + ) + csd["coh_freq"].attrs["units"] = freq_units return csd @@ -200,7 +215,7 @@ def doppler_noise_level(self, psd, pct_fN=0.8): Returns ------- - doppler_noise (xarray.DataArray): + doppler_noise (xarray.DataArray): Doppler noise level in units of m/s Notes @@ -213,54 +228,56 @@ def doppler_noise_level(self, psd, pct_fN=0.8): `N` is the constant variance or spectral density, and `f_{c}` is the characteristic frequency. - The characteristic frequency is then found as + The characteristic frequency is then found as .. :math: f_{c} = pct_fN * (f_{s}/2) where `f_{s}/2` is the Nyquist frequency. - Richard, Jean-Baptiste, et al. "Method for identification of Doppler noise - levels in turbulent flow measurements dedicated to tidal energy." International + Richard, Jean-Baptiste, et al. "Method for identification of Doppler noise + levels in turbulent flow measurements dedicated to tidal energy." International Journal of Marine Energy 3 (2013): 52-64. - Thiébaut, Maxime, et al. "Investigating the flow dynamics and turbulence at a - tidal-stream energy site in a highly energetic estuary." Renewable Energy 195 + Thiébaut, Maxime, et al. "Investigating the flow dynamics and turbulence at a + tidal-stream energy site in a highly energetic estuary." Renewable Energy 195 (2022): 252-262. """ - + if not isinstance(psd, xr.DataArray): raise TypeError("`psd` must be an instance of `xarray.DataArray`.") if not isinstance(pct_fN, float) or not 0 <= pct_fN <= 1: raise ValueError("`pct_fN` must be a float within the range [0, 1].") # Characteristic frequency set to 80% of Nyquist frequency - fN = self.fs/2 + fN = self.fs / 2 fc = pct_fN * fN # Get units right if psd.freq.units == "Hz": f_range = slice(fc, fN) else: - f_range = slice(2*np.pi*fc, 2*np.pi*fN) + f_range = slice(2 * np.pi * fc, 2 * np.pi * fN) # Noise floor N2 = psd.sel(freq=f_range) * psd.freq.sel(freq=f_range) - noise_level = np.sqrt(N2.mean(dim='freq')) + noise_level = np.sqrt(N2.mean(dim="freq")) return xr.DataArray( - noise_level.values.astype('float32'), - dims=['dir', 'time'], - attrs={'units': 'm/s', - 'long_name': 'Doppler Noise Level', - 'description': 'Doppler noise level calculated ' - 'from PSD white noise'}) + noise_level.values.astype("float32"), + coords={"S": psd["S"], "time": psd["time"]}, + attrs={ + "units": "m/s", + "long_name": "Doppler Noise Level", + "description": "Doppler noise level calculated " "from PSD white noise", + }, + ) def check_turbulence_cascade_slope(self, psd, freq_range=[6.28, 12.57]): """ - This function calculates the slope of the PSD, the power spectra + This function calculates the slope of the PSD, the power spectra of velocity, within the given frequency range. The purpose of this - function is to check that the region of the PSD containing the + function is to check that the region of the PSD containing the isotropic turbulence cascade decreases at a rate of :math:`f^{-5/3}`. Parameters @@ -268,14 +285,14 @@ def check_turbulence_cascade_slope(self, psd, freq_range=[6.28, 12.57]): psd : xarray.DataArray ([time,] freq) The power spectral density (1D or 2D) freq_range : iterable(2) (default: [6.28, 12.57]) - The range over which the isotropic turbulence cascade occurs, in + The range over which the isotropic turbulence cascade occurs, in units of the psd frequency vector (Hz or rad/s) Returns ------- (m, b): tuple (slope, y-intercept) - A tuple containing the coefficients of the log-adjusted linear - regression between PSD and frequency + A tuple containing the coefficients of the log-adjusted linear + regression between PSD and frequency Notes ----- @@ -283,9 +300,9 @@ def check_turbulence_cascade_slope(self, psd, freq_range=[6.28, 12.57]): .. math:: S(k) = \\alpha \\epsilon^{2/3} k^{-5/3} + N - The slope of the isotropic turbulence cascade, which should be - equal to :math:`k^{-5/3}` or :math:`f^{-5/3}`, where k and f are - the wavenumber and frequency vectors, is estimated using linear + The slope of the isotropic turbulence cascade, which should be + equal to :math:`k^{-5/3}` or :math:`f^{-5/3}`, where k and f are + the wavenumber and frequency vectors, is estimated using linear regression with a log transformation: .. math:: log10(y) = m*log10(x) + b @@ -293,36 +310,36 @@ def check_turbulence_cascade_slope(self, psd, freq_range=[6.28, 12.57]): Which is equivalent to .. math:: y = 10^{b} x^{m} - - Where :math:`y` is S(k) or S(f), :math:`x` is k or f, :math:`m` - is the slope (ideally -5/3), and :math:`10^{b}` is the intercept of + + Where :math:`y` is S(k) or S(f), :math:`x` is k or f, :math:`m` + is the slope (ideally -5/3), and :math:`10^{b}` is the intercept of y at x^m=1. """ if not isinstance(psd, xr.DataArray): raise TypeError("`psd` must be an instance of `xarray.DataArray`.") - if not hasattr(freq_range, '__iter__') or len(freq_range) != 2: + if not hasattr(freq_range, "__iter__") or len(freq_range) != 2: raise ValueError("`freq_range` must be an iterable of length 2.") - + idx = np.where((freq_range[0] < psd.freq) & (psd.freq < freq_range[1])) idx = idx[0] - x = np.log10(psd['freq'].isel(freq=idx)) + x = np.log10(psd["freq"].isel(freq=idx)) y = np.log10(psd.isel(freq=idx)) - y_bar = y.mean('freq') - x_bar = x.mean('freq') + y_bar = y.mean("freq") + x_bar = x.mean("freq") # using the formula to calculate the slope and intercept n = np.sum((x - x_bar) * (y - y_bar), axis=0) - d = np.sum((x - x_bar)**2, axis=0) + d = np.sum((x - x_bar) ** 2, axis=0) - m = n/d - b = y_bar - m*x_bar + m = n / d + b = y_bar - m * x_bar return m, b - def dissipation_rate_LT83(self, psd, U_mag, freq_range=[6.28, 12.57]): + def dissipation_rate_LT83(self, psd, U_mag, freq_range=[6.28, 12.57], noise=None): """ Calculate the dissipation rate from the PSD @@ -333,9 +350,13 @@ def dissipation_rate_LT83(self, psd, U_mag, freq_range=[6.28, 12.57]): U_mag : xarray.DataArray (...,time) The bin-averaged horizontal velocity [m/s] (from dataset shortcut) freq_range : iterable(2) - The range over which to integrate/average the spectrum, in units - of the psd frequency vector (Hz or rad/s). + The range over which to integrate/average the spectrum, in units + of the psd frequency vector (Hz or rad/s). Default = [6.28, 12.57] rad/s + noise : float or array-like + Instrument noise level in same units as velocity. Typically + found from `adv.turbulence.calc_doppler_noise`. + Default: None. Returns ------- @@ -369,49 +390,64 @@ def dissipation_rate_LT83(self, psd, U_mag, freq_range=[6.28, 12.57]): if not isinstance(psd, xr.DataArray): raise TypeError("`psd` must be an instance of `xarray.DataArray`.") if len(U_mag.shape) != 1: - raise Exception('U_mag should be 1-dimensional (time)') - if len(psd.time)!=len(U_mag.time): + raise Exception("U_mag should be 1-dimensional (time)") + if len(psd.time) != len(U_mag.time): raise Exception("`U_mag` should be from ensembled-averaged dataset") - if not hasattr(freq_range, '__iter__') or len(freq_range) != 2: + if not hasattr(freq_range, "__iter__") or len(freq_range) != 2: raise ValueError("`freq_range` must be an iterable of length 2.") + if noise is not None: + if np.shape(noise)[0] != 3: + raise Exception("Noise should have same first dimension as velocity") + else: + noise = np.array([0, 0, 0])[:, None, None] + + # Noise subtraction from binner.TimeBinner.calc_psd_base + psd = psd.copy() + if noise is not None: + psd -= noise**2 / (self.fs / 2) + psd = psd.where(psd > 0, np.min(np.abs(psd)) / 100) + freq = psd.freq idx = np.where((freq_range[0] < freq) & (freq < freq_range[1])) idx = idx[0] - if freq.units == 'Hz': - U = U_mag/(2*np.pi) + if freq.units == "Hz": + U = U_mag / (2 * np.pi) else: U = U_mag a = 0.5 - out = (psd.isel(freq=idx) * - freq.isel(freq=idx)**(5/3) / a).mean(axis=-1)**(3/2) / U + out = (psd.isel(freq=idx) * freq.isel(freq=idx) ** (5 / 3) / a).mean( + axis=-1 + ) ** (3 / 2) / U return xr.DataArray( - out.astype('float32'), - attrs={'units': 'm2 s-3', - 'long_name': 'TKE Dissipation Rate', - 'standard_name': 'specific_turbulent_kinetic_energy_dissipation_in_sea_water', - 'description': 'TKE dissipation rate calculated using ' - 'the method from Lumley and Terray, 1983', - }) - - def dissipation_rate_SF(self, vel_raw, U_mag, fs=None, freq_range=[2., 4.]): + out.astype("float32"), + attrs={ + "units": "m2 s-3", + "long_name": "TKE Dissipation Rate", + "standard_name": "specific_turbulent_kinetic_energy_dissipation_in_sea_water", + "description": "TKE dissipation rate calculated using " + "the method from Lumley and Terray, 1983", + }, + ) + + def dissipation_rate_SF(self, vel_raw, U_mag, fs=None, freq_range=[2.0, 4.0]): """ Calculate dissipation rate using the "structure function" (SF) method Parameters ---------- vel_raw : xarray.DataArray (time) - The raw velocity data upon which to perform the SF technique. + The raw velocity data upon which to perform the SF technique. U_mag : xarray.DataArray The bin-averaged horizontal velocity (from dataset shortcut) fs : float The sample rate of `vel_raw` [Hz] freq_range : iterable(2) The frequency range over which to compute the SF [Hz] - (i.e. the frequency range within which the isotropic + (i.e. the frequency range within which the isotropic turbulence cascade falls). Default = [2., 4.] Hz @@ -423,9 +459,9 @@ def dissipation_rate_SF(self, vel_raw, U_mag, fs=None, freq_range=[2., 4.]): if not isinstance(vel_raw, xr.DataArray): raise TypeError("`vel_raw` must be an instance of `xarray.DataArray`.") - if len(vel_raw.time)==len(U_mag.time): + if len(vel_raw.time) == len(U_mag.time): raise Exception("`U_mag` should be from ensembled-averaged dataset") - if not hasattr(freq_range, '__iter__') or len(freq_range) != 2: + if not hasattr(freq_range, "__iter__") or len(freq_range) != 2: raise ValueError("`freq_range` must be an iterable of length 2.") veldat = vel_raw.values @@ -434,7 +470,7 @@ def dissipation_rate_SF(self, vel_raw, U_mag, fs=None, freq_range=[2., 4.]): fs = self._parse_fs(fs) if freq_range[1] > fs: - warnings.warn('Max freq_range cannot be greater than fs') + warnings.warn("Max freq_range cannot be greater than fs") dt = self.reshape(veldat) out = np.empty(dt.shape[:-1], dtype=dt.dtype) @@ -449,15 +485,17 @@ def dissipation_rate_SF(self, vel_raw, U_mag, fs=None, freq_range=[2., 4.]): out[slc[:-1]] = (cv2m / 2.1) ** (3 / 2) return xr.DataArray( - out.astype('float32'), + out.astype("float32"), coords=U_mag.coords, dims=U_mag.dims, - attrs={'units': 'm2 s-3', - 'long_name': 'TKE Dissipation Rate', - 'standard_name': 'specific_turbulent_kinetic_energy_dissipation_in_sea_water', - 'description': 'TKE dissipation rate calculated using the ' - '"structure function" method', - }) + attrs={ + "units": "m2 s-3", + "long_name": "TKE Dissipation Rate", + "standard_name": "specific_turbulent_kinetic_energy_dissipation_in_sea_water", + "description": "TKE dissipation rate calculated using the " + '"structure function" method', + }, + ) def _up_angle(self, U_complex): """ @@ -498,11 +536,11 @@ def _integral_TE01(self, I_tke, theta): out = np.empty_like(I_tke.flatten()) for i, (b, t) in enumerate(zip(I_tke.flatten(), theta.flatten())): out[i] = np.trapz( - cbrt(x**2 - 2/b*np.cos(t)*x + b**(-2)) * - np.exp(-0.5 * x ** 2), x) + cbrt(x**2 - 2 / b * np.cos(t) * x + b ** (-2)) * np.exp(-0.5 * x**2), + x, + ) - return out.reshape(I_tke.shape) * \ - (2 * np.pi) ** (-0.5) * I_tke ** (2 / 3) + return out.reshape(I_tke.shape) * (2 * np.pi) ** (-0.5) * I_tke ** (2 / 3) def dissipation_rate_TE01(self, dat_raw, dat_avg, freq_range=[6.28, 12.57]): """ @@ -514,10 +552,10 @@ def dissipation_rate_TE01(self, dat_raw, dat_avg, freq_range=[6.28, 12.57]): The raw (off the instrument) adv dataset dat_avg : xarray.Dataset The bin-averaged adv dataset (calc'd from 'calc_turbulence' or - 'do_avg'). The spectra (psd) and basic turbulence statistics + 'do_avg'). The spectra (psd) and basic turbulence statistics ('tke_vec' and 'stress_vec') must already be computed. freq_range : iterable(2) - The range over which to integrate/average the spectrum, in units + The range over which to integrate/average the spectrum, in units of the psd frequency vector (Hz or rad/s). Default = [6.28, 12.57] rad/s @@ -531,15 +569,16 @@ def dissipation_rate_TE01(self, dat_raw, dat_avg, freq_range=[6.28, 12.57]): raise TypeError("`dat_raw` must be an instance of `xarray.Dataset`.") if not isinstance(dat_avg, xr.Dataset): raise TypeError("`dat_avg` must be an instance of `xarray.Dataset`.") - if not hasattr(freq_range, '__iter__') or len(freq_range) != 2: + if not hasattr(freq_range, "__iter__") or len(freq_range) != 2: raise ValueError("`freq_range` must be an iterable of length 2.") # Assign local names U_mag = dat_avg.velds.U_mag.values I_tke = dat_avg.velds.I_tke.values - theta = np.angle(dat_avg.velds.U.values) - \ - self._up_angle(dat_raw.velds.U.values) - freq = dat_avg['psd'].freq.values + theta = np.angle(dat_avg.velds.U.values) - self._up_angle( + dat_raw.velds.U.values + ) + freq = dat_avg["psd"].freq.values # Calculate constants alpha = 1.5 @@ -552,26 +591,31 @@ def dissipation_rate_TE01(self, dat_raw, dat_avg, freq_range=[6.28, 12.57]): # Estimate values # u & v components (equation 6) - out = (np.nanmean((psd[0] + psd[1]) * freq**(5/3), -1) / - (21/55 * alpha * intgrl))**(3/2) / U_mag + out = ( + np.nanmean((psd[0] + psd[1]) * freq ** (5 / 3), -1) + / (21 / 55 * alpha * intgrl) + ) ** (3 / 2) / U_mag # Add w component - out += (np.nanmean(psd[2] * freq**(5/3), -1) / - (12/55 * alpha * intgrl))**(3/2) / U_mag + out += ( + np.nanmean(psd[2] * freq ** (5 / 3), -1) / (12 / 55 * alpha * intgrl) + ) ** (3 / 2) / U_mag # Average the two estimates out *= 0.5 return xr.DataArray( - out.astype('float32'), - coords={'time': dat_avg.psd.time}, - dims='time', - attrs={'units': 'm2 s-3', - 'long_name': 'TKE Dissipation Rate', - 'standard_name': 'specific_turbulent_kinetic_energy_dissipation_in_sea_water', - 'description': 'TKE dissipation rate calculated using the ' - 'method from Trowbridge and Elgar, 2001' - }) + out.astype("float32"), + coords={"time": dat_avg.psd.time}, + dims="time", + attrs={ + "units": "m2 s-3", + "long_name": "TKE Dissipation Rate", + "standard_name": "specific_turbulent_kinetic_energy_dissipation_in_sea_water", + "description": "TKE dissipation rate calculated using the " + "method from Trowbridge and Elgar, 2001", + }, + ) def integral_length_scales(self, a_cov, U_mag, fs=None): """ @@ -601,26 +645,31 @@ def integral_length_scales(self, a_cov, U_mag, fs=None): if not isinstance(a_cov, xr.DataArray): raise TypeError("`a_cov` must be an instance of `xarray.DataArray`.") - if len(a_cov.time)!=len(U_mag.time): + if len(a_cov.time) != len(U_mag.time): raise Exception("`U_mag` should be from ensembled-averaged dataset") acov = a_cov.values fs = self._parse_fs(fs) - scale = np.argmin((acov/acov[..., :1]) > (1/np.e), axis=-1) + scale = np.argmin((acov / acov[..., :1]) > (1 / np.e), axis=-1) L_int = U_mag.values / fs * scale return xr.DataArray( - L_int.astype('float32'), - coords={'dir': a_cov.dir, 'time': a_cov.time}, - attrs={'units': 'm', - 'long_name': 'Integral Length Scale', - 'standard_name': 'turbulent_mixing_length_of_sea_water'}) - - -def turbulence_statistics(ds_raw, n_bin, fs, n_fft=None, freq_units='rad/s', window='hann'): + L_int.astype("float32"), + coords={"dir": a_cov.dir, "time": a_cov.time}, + attrs={ + "units": "m", + "long_name": "Integral Length Scale", + "standard_name": "turbulent_mixing_length_of_sea_water", + }, + ) + + +def turbulence_statistics( + ds_raw, n_bin, fs, n_fft=None, freq_units="rad/s", window="hann" +): """ - Functional version of `ADVBinner` that computes a suite of turbulence + Functional version of `ADVBinner` that computes a suite of turbulence statistics for the input dataset, and returns a `binned` data object. Parameters @@ -629,7 +678,7 @@ def turbulence_statistics(ds_raw, n_bin, fs, n_fft=None, freq_units='rad/s', win The raw adv datset to `bin`, average and compute turbulence statistics of. freq_units : string - Frequency units of the returned spectra in either Hz or rad/s + Frequency units of the returned spectra in either Hz or rad/s (`f` or :math:`\\omega`). Default is 'rad/s' window : string or array The window to use for calculating spectra. diff --git a/mhkit/dolfyn/binned.py b/mhkit/dolfyn/binned.py index 1db825dc2..0bdb00f73 100644 --- a/mhkit/dolfyn/binned.py +++ b/mhkit/dolfyn/binned.py @@ -3,19 +3,19 @@ from .tools.fft import fft_frequency, psd_1D, cpsd_1D, cpsd_quasisync_1D from .tools.misc import slice1d_along_axis, detrend_array from .time import epoch2dt64, dt642epoch -warnings.simplefilter('ignore', RuntimeWarning) + +warnings.simplefilter("ignore", RuntimeWarning) class TimeBinner: - def __init__(self, n_bin, fs, n_fft=None, n_fft_coh=None, - noise=[0, 0, 0]): + def __init__(self, n_bin, fs, n_fft=None, n_fft_coh=None, noise=[0, 0, 0]): """ Initialize an averaging object Parameters ---------- n_bin : int - Number of data points to include in a 'bin' (ensemble), not the + Number of data points to include in a 'bin' (ensemble), not the number of bins fs : int Instrument sampling frequency in Hz @@ -38,14 +38,15 @@ def __init__(self, n_bin, fs, n_fft=None, n_fft_coh=None, self.n_fft = n_bin elif n_fft > n_bin: self.n_fft = n_bin - warnings.warn( - "n_fft must be smaller than n_bin, setting n_fft = n_bin") + warnings.warn("n_fft must be smaller than n_bin, setting n_fft = n_bin") if n_fft_coh is None: self.n_fft_coh = int(self.n_fft) elif n_fft_coh > n_bin: self.n_fft_coh = int(n_bin) - warnings.warn("n_fft_coh must be smaller than or equal to n_bin, " - "setting n_fft_coh = n_bin") + warnings.warn( + "n_fft_coh must be smaller than or equal to n_bin, " + "setting n_fft_coh = n_bin" + ) def _outshape(self, inshape, n_pad=0, n_bin=None): """ @@ -77,8 +78,7 @@ def _parse_nfft(self, n_fft=None): return self.n_fft if n_fft > self.n_bin: n_fft = self.n_bin - warnings.warn( - "n_fft must be smaller than n_bin, setting n_fft = n_bin") + warnings.warn("n_fft must be smaller than n_bin, setting n_fft = n_bin") return n_fft def _parse_nfft_coh(self, n_fft_coh=None): @@ -86,8 +86,10 @@ def _parse_nfft_coh(self, n_fft_coh=None): return self.n_fft_coh if n_fft_coh > self.n_bin: n_fft_coh = int(self.n_bin) - warnings.warn("n_fft_coh must be smaller than or equal to n_bin, " - "setting n_fft_coh = n_bin") + warnings.warn( + "n_fft_coh must be smaller than or equal to n_bin, " + "setting n_fft_coh = n_bin" + ) return n_fft_coh def _check_ds(self, raw_ds, out_ds): @@ -109,17 +111,22 @@ def _check_ds(self, raw_ds, out_ds): for v in raw_ds.data_vars: if np.any(np.array(raw_ds[v].shape) == 0): - raise RuntimeError(f"{v} cannot be averaged " - "because it is empty.") - if 'DutyCycle_NBurst' in raw_ds.attrs and \ - raw_ds.attrs['DutyCycle_NBurst'] < self.n_bin: - warnings.warn(f"The averaging interval (n_bin = {self.n_bin})" - "is larger than the burst interval " - "(NBurst = {dat.attrs['DutyCycle_NBurst']})") + raise RuntimeError(f"{v} cannot be averaged " "because it is empty.") + if ( + "DutyCycle_NBurst" in raw_ds.attrs + and raw_ds.attrs["DutyCycle_NBurst"] < self.n_bin + ): + warnings.warn( + f"The averaging interval (n_bin = {self.n_bin})" + "is larger than the burst interval " + "(NBurst = {dat.attrs['DutyCycle_NBurst']})" + ) if raw_ds.fs != self.fs: - raise Exception(f"The input data sample rate ({raw_ds.fs}) does not " - "match the sample rate of this binning-object " - "({self.fs})") + raise Exception( + f"The input data sample rate ({raw_ds.fs}) does not " + "match the sample rate of this binning-object " + "({self.fs})" + ) if out_ds is None: out_ds = type(raw_ds)() @@ -127,11 +134,12 @@ def _check_ds(self, raw_ds, out_ds): o_attrs = out_ds.attrs props = {} - props['fs'] = self.fs - props['n_bin'] = self.n_bin - props['n_fft'] = self.n_fft - props['description'] = 'Binned averages calculated from ' \ - 'ensembles of size "n_bin"' + props["fs"] = self.fs + props["n_bin"] = self.n_bin + props["n_fft"] = self.n_fft + props["description"] = ( + "Binned averages calculated from " 'ensembles of size "n_bin"' + ) props.update(raw_ds.attrs) for ky in props: @@ -140,24 +148,25 @@ def _check_ds(self, raw_ds, out_ds): # plus those defined above) raise AttributeError( "The attribute '{}' of `out_ds` is inconsistent " - "with this `VelBinner` or the input data (`raw_ds`)".format(ky)) + "with this `VelBinner` or the input data (`raw_ds`)".format(ky) + ) else: o_attrs[ky] = props[ky] return out_ds def _new_coords(self, array): """ - Function for setting up a new xarray.DataArray regardless of how + Function for setting up a new xarray.DataArray regardless of how many dimensions the input data-array has """ dims = array.dims dims_list = [] coords_dict = {} - if len(array.shape) == 1 & ('dir' in array.coords): - array = array.drop_vars('dir') + if len(array.shape) == 1 & ("dir" in array.coords): + array = array.drop_vars("dir") for ky in dims: dims_list.append(ky) - if 'time' in ky: + if "time" in ky: coords_dict[ky] = self.mean(array.time.values) else: coords_dict[ky] = array.coords[ky].values @@ -198,34 +207,33 @@ def reshape(self, arr, n_pad=0, n_bin=None): n_bin = self._parse_nbin(n_bin) if arr.shape[-1] < n_bin: - raise Exception('n_bin is larger than length of input array') + raise Exception("n_bin is larger than length of input array") npd0 = int(n_pad // 2) npd1 = int((n_pad + 1) // 2) shp = self._outshape(arr.shape, n_pad=0, n_bin=n_bin) out = np.zeros( - self._outshape(arr.shape, n_pad=n_pad, n_bin=n_bin), - dtype=arr.dtype) + self._outshape(arr.shape, n_pad=n_pad, n_bin=n_bin), dtype=arr.dtype + ) if np.mod(n_bin, 1) == 0: # n_bin needs to be int n_bin = int(n_bin) # If n_bin is an integer, we can do this simply. - out[..., npd0: n_bin + npd0] = ( - arr[..., :(shp[-2] * shp[-1])]).reshape(shp, order='C') + out[..., npd0 : n_bin + npd0] = (arr[..., : (shp[-2] * shp[-1])]).reshape( + shp, order="C" + ) else: - inds = (np.arange(np.prod(shp[-2:])) * n_bin // int(n_bin) - ).astype(int) + inds = (np.arange(np.prod(shp[-2:])) * n_bin // int(n_bin)).astype(int) # If there are too many indices, drop one bin if inds[-1] >= arr.shape[-1]: - inds = inds[:-int(n_bin)] + inds = inds[: -int(n_bin)] shp[-2] -= 1 out = out[..., 1:, :] n_bin = int(n_bin) - out[..., npd0:n_bin + npd0] = (arr[..., inds] - ).reshape(shp, order='C') + out[..., npd0 : n_bin + npd0] = (arr[..., inds]).reshape(shp, order="C") n_bin = int(n_bin) if n_pad != 0: - out[..., 1:, :npd0] = out[..., :-1, n_bin:n_bin + npd0] - out[..., :-1, -npd1:] = out[..., 1:, npd0:npd0 + npd1] + out[..., 1:, :npd0] = out[..., :-1, n_bin : n_bin + npd0] + out[..., :-1, -npd1:] = out[..., 1:, npd0 : npd0 + npd1] return out @@ -336,7 +344,7 @@ def variance(self, arr, axis=-1, n_bin=None): def standard_deviation(self, arr, axis=-1, n_bin=None): """ Reshape the array `arr` to shape (...,n,n_bin+n_pad) - and take the standard deviation of each bin along the + and take the standard deviation of each bin along the specified `axis`. Parameters @@ -354,8 +362,17 @@ def standard_deviation(self, arr, axis=-1, n_bin=None): return np.nanstd(self.reshape(arr, n_bin=n_bin), axis=axis, dtype=np.float32) - def _psd_base(self, dat, fs=None, window='hann', noise=0, - n_bin=None, n_fft=None, n_pad=None, step=None): + def _psd_base( + self, + dat, + fs=None, + window="hann", + noise=0, + n_bin=None, + n_fft=None, + n_pad=None, + step=None, + ): """ Calculate power spectral density of `dat` @@ -371,10 +388,10 @@ def _psd_base(self, dat, fs=None, window='hann', noise=0, The white-noise level of the measurement (in the same units as `dat`). n_bin : int - n_bin of veldat2, number of elements per bin if 'None' is taken + n_bin of veldat2, number of elements per bin if 'None' is taken from VelBinner n_fft : int - n_fft of veldat2, number of elements per bin if 'None' is taken + n_fft of veldat2, number of elements per bin if 'None' is taken from VelBinner n_pad : int (optional) The number of values to pad with zero. Default = 0 @@ -403,36 +420,34 @@ def _psd_base(self, dat, fs=None, window='hann', noise=0, dat = self.reshape(dat, n_pad=n_pad) for slc in slice1d_along_axis(dat.shape, -1): - out[slc] = psd_1D(dat[slc], n_fft, fs, - window=window, step=step) - if noise != 0: - out -= noise**2 / (fs/2) + out[slc] = psd_1D(dat[slc], n_fft, fs, window=window, step=step) + if np.any(noise): + out -= noise**2 / (fs / 2) # Make sure all values of the PSD are >0 (but still small): out[out < 0] = np.min(np.abs(out)) / 100 return out - def _csd_base(self, dat1, dat2, fs=None, window='hann', - n_fft=None, n_bin=None): + def _csd_base(self, dat1, dat2, fs=None, window="hann", n_fft=None, n_bin=None): """ Calculate the cross power spectral density of `dat`. Parameters ---------- dat1 : numpy.ndarray - The first (shorter, if applicable) raw dataArray of which to + The first (shorter, if applicable) raw dataArray of which to calculate the cpsd. dat2 : numpy.ndarray - The second (the shorter, if applicable) raw dataArray of which to + The second (the shorter, if applicable) raw dataArray of which to calculate the cpsd. fs : float (optional) The sample rate (Hz). window : str String indicating the window function to use. Default is 'hanning' n_fft : int - n_fft of veldat2, number of elements per bin if 'None' is taken + n_fft of veldat2, number of elements per bin if 'None' is taken from VelBinner n_bin : int - n_bin of veldat2, number of elements per bin if 'None' is taken + n_bin of veldat2, number of elements per bin if 'None' is taken from VelBinner Returns @@ -444,7 +459,7 @@ def _csd_base(self, dat1, dat2, fs=None, window='hann', ----- PSD's are calculated based on sample rate units - The two velocity inputs do not have to be perfectly synchronized, but + The two velocity inputs do not have to be perfectly synchronized, but they should have the same start and end timestamps """ @@ -453,7 +468,7 @@ def _csd_base(self, dat1, dat2, fs=None, window='hann', n_fft = self.n_fft_coh # want each slice to carry the same timespan n_bin2 = self._parse_nbin(n_bin) # bins for shorter array - n_bin1 = int(dat1.shape[-1]/(dat2.shape[-1]/n_bin2)) + n_bin1 = int(dat1.shape[-1] / (dat2.shape[-1] / n_bin2)) oshp = self._outshape_fft(dat1.shape, n_fft=n_fft, n_bin=n_bin1) oshp[-2] = np.min([oshp[-2], int(dat2.shape[-1] // n_bin2)]) @@ -461,17 +476,16 @@ def _csd_base(self, dat1, dat2, fs=None, window='hann', # The data is detrended in psd, so we don't need to do it here: dat1 = self.reshape(dat1, n_pad=n_fft) dat2 = self.reshape(dat2, n_pad=n_fft) - out = np.empty(oshp, dtype='c{}'.format(dat1.dtype.itemsize * 2)) + out = np.empty(oshp, dtype="c{}".format(dat1.dtype.itemsize * 2)) if dat1.shape == dat2.shape: cross = cpsd_1D else: cross = cpsd_quasisync_1D for slc in slice1d_along_axis(out.shape, -1): - out[slc] = cross(dat1[slc], dat2[slc], n_fft, - fs, window=window) + out[slc] = cross(dat1[slc], dat2[slc], n_fft, fs, window=window) return out - def _fft_freq(self, fs=None, units='Hz', n_fft=None, coh=False): + def _fft_freq(self, fs=None, units="Hz", n_fft=None, coh=False): """ Wrapper to calculate the ordinary or radial frequency vector @@ -486,7 +500,7 @@ def _fft_freq(self, fs=None, units='Hz', n_fft=None, coh=False): (default: False) i.e. use self.n_fft_coh instead of self.n_fft. n_fft : int - n_fft of veldat2, number of elements per bin if 'None' is taken + n_fft of veldat2, number of elements per bin if 'None' is taken from VelBinner Returns @@ -502,11 +516,13 @@ def _fft_freq(self, fs=None, units='Hz', n_fft=None, coh=False): fs = self._parse_fs(fs) - if ('Hz' not in units) and ('rad' not in units): - raise Exception('Valid fft frequency vector units are Hz \ - or rad/s') + if ("Hz" not in units) and ("rad" not in units): + raise Exception( + "Valid fft frequency vector units are Hz \ + or rad/s" + ) - if 'rad' in units: - return fft_frequency(n_fft, 2*np.pi*fs) + if "rad" in units: + return fft_frequency(n_fft, 2 * np.pi * fs) else: return fft_frequency(n_fft, fs) diff --git a/mhkit/dolfyn/io/api.py b/mhkit/dolfyn/io/api.py index e540d53d0..1364a46dc 100644 --- a/mhkit/dolfyn/io/api.py +++ b/mhkit/dolfyn/io/api.py @@ -7,20 +7,27 @@ from .rdi import read_rdi from .base import _create_dataset, _get_filetype from ..rotate.base import _set_coords -from ..time import date2matlab, matlab2date, date2dt64, dt642date, date2epoch, epoch2date +from ..time import ( + date2matlab, + matlab2date, + date2dt64, + dt642date, + date2epoch, + epoch2date, +) def _check_file_ext(path, ext): filename = path.replace("\\", "/").rsplit("/")[-1] # windows/linux # for a filename like mcrl.water_velocity-1s.b1.20200813.150000.nc file_ext = filename.rsplit(".")[-1] - if '.' in filename: + if "." in filename: if file_ext != ext: raise IOError("File extension must be of the type {}".format(ext)) if file_ext == ext: return path - return path + '.' + ext + return path + "." + ext def _decode_cf(dataset: xr.Dataset) -> xr.Dataset: @@ -76,7 +83,7 @@ def read(fname, userdata=True, nens=None, **kwargs): userdata : True, False, or string of userdata.json filename (default ``True``) Whether to read the '.userdata.json' file. nens : None, int or 2-element tuple (start, stop) - Number of pings or ensembles to read from the file. + Number of pings or ensembles to read from the file. Default is None, read entire file **kwargs : dict Passed to instrument-specific parser. @@ -88,19 +95,21 @@ def read(fname, userdata=True, nens=None, **kwargs): """ file_type = _get_filetype(fname) - if file_type == '': - raise IOError("File '{}' looks like a git-lfs pointer. You may need to " - "install and initialize git-lfs. See https://git-lfs.github.com" - " for details.".format(fname)) + if file_type == "": + raise IOError( + "File '{}' looks like a git-lfs pointer. You may need to " + "install and initialize git-lfs. See https://git-lfs.github.com" + " for details.".format(fname) + ) elif file_type is None: - raise IOError("File '{}' is not recognized as a file-type that is readable by " - "DOLfYN. If you think it should be readable, try using the " - "appropriate read function (`read_rdi`, `read_nortek`, or " - "`read_signature`) found in dolfyn.io.api.".format(fname)) + raise IOError( + "File '{}' is not recognized as a file-type that is readable by " + "DOLfYN. If you think it should be readable, try using the " + "appropriate read function (`read_rdi`, `read_nortek`, or " + "`read_signature`) found in dolfyn.io.api.".format(fname) + ) else: - func_map = dict(RDI=read_rdi, - nortek=read_nortek, - signature=read_signature) + func_map = dict(RDI=read_rdi, nortek=read_nortek, signature=read_signature) func = func_map[file_type] return func(fname, userdata=userdata, nens=nens, **kwargs) @@ -130,16 +139,13 @@ def read_example(name, **kwargs): """ testdir = dirname(abspath(__file__)) - exdir = normpath(join(testdir, relpath('../../../examples/data/dolfyn/'))) - filename = exdir + '/' + name + exdir = normpath(join(testdir, relpath("../../../examples/data/dolfyn/"))) + filename = exdir + "/" + name return read(filename, **kwargs) -def save(ds, filename, - format='NETCDF4', engine='netcdf4', - compression=False, - **kwargs): +def save(ds, filename, format="NETCDF4", engine="netcdf4", compression=False, **kwargs): """ Save xarray dataset as netCDF (.nc). @@ -167,31 +173,41 @@ def save(ds, filename, See the xarray.to_netcdf documentation for more details. """ - filename = _check_file_ext(filename, 'nc') + filename = _check_file_ext(filename, "nc") # Handling complex values for netCDF4 - ds.attrs['complex_vars'] = [] + ds.attrs["complex_vars"] = [] for var in ds.data_vars: if np.iscomplexobj(ds[var]): - ds[var+'_real'] = ds[var].real - ds[var+'_imag'] = ds[var].imag + ds[var + "_real"] = ds[var].real + ds[var + "_imag"] = ds[var].imag ds = ds.drop_vars(var) - ds.attrs['complex_vars'].append(var) + ds.attrs["complex_vars"].append(var) # For variables that get rewritten to float64 elif ds[var].dtype == np.float64: - ds[var] = ds[var].astype('float32') - - if compression: - enc = dict() - for ky in ds.variables: - enc[ky] = dict(zlib=True, complevel=1) - if 'encoding' in kwargs: - # Overwrite ('update') values in enc with whatever is in kwargs['encoding'] - enc.update(kwargs['encoding']) - else: - kwargs['encoding'] = enc + ds[var] = ds[var].astype("float32") + + # Write variable encoding + enc = dict() + if "encoding" in kwargs: + enc.update(kwargs["encoding"]) + for ky in ds.variables: + # Save prior encoding + enc[ky] = ds[ky].encoding + # Remove unexpected netCDF4 encoding parameters + # https://github.com/pydata/xarray/discussions/5709 + params = ["szip", "zstd", "bzip2", "blosc", "contiguous", "chunksizes"] + [enc[ky].pop(p) for p in params if p in enc[ky]] + + if compression: + # New netcdf4-c cannot compress variable length strings + if ds[ky].size <= 1 or isinstance(ds[ky].data[0], str): + continue + enc[ky].update(dict(zlib=True, complevel=1)) + + kwargs["encoding"] = enc # Fix encoding on datetime64 variables. ds = _decode_cf(ds) @@ -214,25 +230,26 @@ def load(filename): An xarray dataset from the binary instrument data. """ - filename = _check_file_ext(filename, 'nc') + filename = _check_file_ext(filename, "nc") - ds = xr.load_dataset(filename, engine='netcdf4') + ds = xr.load_dataset(filename, engine="netcdf4") # Convert numpy arrays and strings back to lists for nm in ds.attrs: - if type(ds.attrs[nm]) == np.ndarray and ds.attrs[nm].size > 1: + if isinstance(ds.attrs[nm], np.ndarray) and ds.attrs[nm].size > 1: ds.attrs[nm] = list(ds.attrs[nm]) - elif type(ds.attrs[nm]) == str and nm in ['rotate_vars']: + elif isinstance(ds.attrs[nm], str) and nm in ["rotate_vars"]: ds.attrs[nm] = [ds.attrs[nm]] # Rejoin complex numbers - if hasattr(ds, 'complex_vars') and len(ds.complex_vars): - if len(ds.complex_vars[0]) == 1: - ds.attrs['complex_vars'] = [ds.complex_vars] - for var in ds.complex_vars: - ds[var] = ds[var+'_real'] + ds[var+'_imag'] * 1j - ds = ds.drop_vars([var+'_real', var+'_imag']) - ds.attrs.pop('complex_vars') + if hasattr(ds, "complex_vars"): + if len(ds.complex_vars): + if len(ds.complex_vars[0]) == 1: + ds.attrs["complex_vars"] = [ds.complex_vars] + for var in ds.complex_vars: + ds[var] = ds[var + "_real"] + ds[var + "_imag"] * 1j + ds = ds.drop_vars([var + "_real", var + "_imag"]) + ds.attrs.pop("complex_vars") return ds @@ -262,20 +279,18 @@ def save_mat(ds, filename, datenum=True): """ def copy_attrs(matfile, ds, key): - if hasattr(ds[key], 'units'): - matfile['units'][key] = ds[key].units - if hasattr(ds[key], 'long_name'): - matfile['long_name'][key] = ds[key].long_name - if hasattr(ds[key], 'standard_name'): - matfile['standard_name'][key] = ds[key].standard_name + if hasattr(ds[key], "units"): + matfile["units"][key] = ds[key].units + if hasattr(ds[key], "long_name"): + matfile["long_name"][key] = ds[key].long_name + if hasattr(ds[key], "standard_name"): + matfile["standard_name"][key] = ds[key].standard_name - filename = _check_file_ext(filename, 'mat') + filename = _check_file_ext(filename, "mat") # Convert time to datenum - t_coords = [t for t in ds.coords if np.issubdtype( - ds[t].dtype, np.datetime64)] - t_data = [t for t in ds.data_vars if np.issubdtype( - ds[t].dtype, np.datetime64)] + t_coords = [t for t in ds.coords if np.issubdtype(ds[t].dtype, np.datetime64)] + t_data = [t for t in ds.data_vars if np.issubdtype(ds[t].dtype, np.datetime64)] if datenum: func = date2matlab @@ -289,19 +304,25 @@ def copy_attrs(matfile, ds, key): dt = func(dt642date(ds[ky])) ds[ky].data = dt - ds.attrs['time_coords'] = t_coords - ds.attrs['time_data_vars'] = t_data + ds.attrs["time_coords"] = t_coords + ds.attrs["time_data_vars"] = t_data # Save xarray structure with more descriptive structure names - matfile = {'vars': {}, 'coords': {}, 'config': {}, - 'units': {}, 'long_name': {}, 'standard_name': {}} + matfile = { + "vars": {}, + "coords": {}, + "config": {}, + "units": {}, + "long_name": {}, + "standard_name": {}, + } for ky in ds.data_vars: - matfile['vars'][ky] = ds[ky].values + matfile["vars"][ky] = ds[ky].values copy_attrs(matfile, ds, ky) for ky in ds.coords: - matfile['coords'][ky] = ds[ky].values + matfile["coords"][ky] = ds[ky].values copy_attrs(matfile, ds, ky) - matfile['config'] = ds.attrs + matfile["config"] = ds.attrs sio.savemat(filename, matfile) @@ -318,7 +339,7 @@ def load_mat(filename, datenum=True): filename : str Filename and/or path with the '.mat' extension datenum : bool - If true, converts time from datenum. If false, converts time from + If true, converts time from datenum. If false, converts time from "epoch time". Returns @@ -331,19 +352,25 @@ def load_mat(filename, datenum=True): scipy.io.loadmat() """ - filename = _check_file_ext(filename, 'mat') + filename = _check_file_ext(filename, "mat") data = sio.loadmat(filename, struct_as_record=False, squeeze_me=True) - ds_dict = {'vars': {}, 'coords': {}, 'config': {}, - 'units': {}, 'long_name': {}, 'standard_name': {}} + ds_dict = { + "vars": {}, + "coords": {}, + "config": {}, + "units": {}, + "long_name": {}, + "standard_name": {}, + } for nm in ds_dict: key_list = data[nm]._fieldnames for ky in key_list: ds_dict[nm][ky] = getattr(data[nm], ky) - ds_dict['data_vars'] = ds_dict.pop('vars') - ds_dict['attrs'] = ds_dict.pop('config') + ds_dict["data_vars"] = ds_dict.pop("vars") + ds_dict["attrs"] = ds_dict.pop("config") # Recreate dataset ds = _create_dataset(ds_dict) @@ -351,16 +378,20 @@ def load_mat(filename, datenum=True): # Convert numpy arrays and strings back to lists for nm in ds.attrs: - if type(ds.attrs[nm]) == np.ndarray and ds.attrs[nm].size > 1: + if isinstance(ds.attrs[nm], np.ndarray) and ds.attrs[nm].size > 1: try: - ds.attrs[nm] = [x.strip(' ') for x in list(ds.attrs[nm])] + ds.attrs[nm] = [x.strip(" ") for x in list(ds.attrs[nm])] except: ds.attrs[nm] = list(ds.attrs[nm]) - elif type(ds.attrs[nm]) == str and nm in ['time_coords', 'time_data_vars', 'rotate_vars']: + elif isinstance(ds.attrs[nm], str) and nm in [ + "time_coords", + "time_data_vars", + "rotate_vars", + ]: ds.attrs[nm] = [ds.attrs[nm]] - if hasattr(ds, 'orientation_down'): - ds['orientation_down'] = ds['orientation_down'].astype(bool) + if hasattr(ds, "orientation_down"): + ds["orientation_down"] = ds["orientation_down"].astype(bool) if datenum: func = matlab2date @@ -368,15 +399,15 @@ def load_mat(filename, datenum=True): func = epoch2date # Restore datnum to np.dt64 - if hasattr(ds, 'time_coords'): - for ky in ds.attrs['time_coords']: + if hasattr(ds, "time_coords"): + for ky in ds.attrs["time_coords"]: dt = date2dt64(func(ds[ky].values)) ds = ds.assign_coords({ky: dt}) - ds.attrs.pop('time_coords') - if hasattr(ds, 'time_data_vars'): - for ky in ds.attrs['time_data_vars']: + ds.attrs.pop("time_coords") + if hasattr(ds, "time_data_vars"): + for ky in ds.attrs["time_data_vars"]: dt = date2dt64(func(ds[ky].values)) ds[ky].data = dt - ds.attrs.pop('time_data_vars') + ds.attrs.pop("time_data_vars") return ds diff --git a/mhkit/dolfyn/io/base.py b/mhkit/dolfyn/io/base.py index 8f3b4469a..545035cdb 100644 --- a/mhkit/dolfyn/io/base.py +++ b/mhkit/dolfyn/io/base.py @@ -23,18 +23,18 @@ def _get_filetype(fname): ' - if the file looks like a GIT-LFS pointer. """ - with open(fname, 'rb') as rdr: + with open(fname, "rb") as rdr: bytes = rdr.read(40) code = bytes[:2].hex() - if code in ['7f79', '7f7f']: - return 'RDI' - elif code in ['a50a']: - return 'signature' - elif code in ['a505']: + if code in ["7f79", "7f7f"]: + return "RDI" + elif code in ["a50a"]: + return "signature" + elif code in ["a505"]: # AWAC - return 'nortek' - elif bytes == b'version https://git-lfs.github.com/spec/': - return '' + return "nortek" + elif bytes == b"version https://git-lfs.github.com/spec/": + return "" else: return None @@ -42,13 +42,12 @@ def _get_filetype(fname): def _find_userdata(filename, userdata=True): # This function finds the file to read if userdata: - for basefile in [filename.rsplit('.', 1)[0], - filename]: - jsonfile = basefile + '.userdata.json' + for basefile in [filename.rsplit(".", 1)[0], filename]: + jsonfile = basefile + ".userdata.json" if os.path.isfile(jsonfile): return _read_userdata(jsonfile) - elif isinstance(userdata, (str, )) or hasattr(userdata, 'read'): + elif isinstance(userdata, (str,)) or hasattr(userdata, "read"): return _read_userdata(userdata) return {} @@ -60,232 +59,269 @@ def _read_userdata(fname): """ with open(fname) as data_file: data = json.load(data_file) - for nm in ['body2head_rotmat', 'body2head_vec']: + for nm in ["body2head_rotmat", "body2head_vec"]: if nm in data: - new_name = 'inst' + nm[4:] + new_name = "inst" + nm[4:] warnings.warn( - f'{nm} has been deprecated, please change this to {new_name} \ - in {fname}.') + f"{nm} has been deprecated, please change this to {new_name} \ + in {fname}." + ) data[new_name] = data.pop(nm) - if 'inst2head_rotmat' in data: - if data['inst2head_rotmat'] in ['identity', 'eye', 1, 1.]: - data['inst2head_rotmat'] = np.eye(3) + if "inst2head_rotmat" in data: + if data["inst2head_rotmat"] in ["identity", "eye", 1, 1.0]: + data["inst2head_rotmat"] = np.eye(3) else: - data['inst2head_rotmat'] = np.array(data['inst2head_rotmat']) - if 'inst2head_vec' in data and type(data['inst2head_vec']) != list: - data['inst2head_vec'] = list(data['inst2head_vec']) + data["inst2head_rotmat"] = np.array(data["inst2head_rotmat"]) + if "inst2head_vec" in data and type(data["inst2head_vec"]) != list: + data["inst2head_vec"] = list(data["inst2head_vec"]) return data def _handle_nan(data): """ - Finds trailing nan's that cause issues in running the rotation + Finds trailing nan's that cause issues in running the rotation algorithms and deletes them. """ - nan = np.zeros(data['coords']['time'].shape, dtype=bool) - l = data['coords']['time'].size + nan = np.zeros(data["coords"]["time"].shape, dtype=bool) + l = data["coords"]["time"].size - if any(np.isnan(data['coords']['time'])): - nan += np.isnan(data['coords']['time']) + if any(np.isnan(data["coords"]["time"])): + nan += np.isnan(data["coords"]["time"]) # Required for motion-correction algorithm - var = ['accel', 'angrt', 'mag'] - for key in data['data_vars']: + var = ["accel", "angrt", "mag"] + for key in data["data_vars"]: if any(val in key for val in var): - shp = data['data_vars'][key].shape + shp = data["data_vars"][key].shape if shp[-1] == l: if len(shp) == 1: - if any(np.isnan(data['data_vars'][key])): - nan += np.isnan(data['data_vars'][key]) + if any(np.isnan(data["data_vars"][key])): + nan += np.isnan(data["data_vars"][key]) elif len(shp) == 2: - if any(np.isnan(data['data_vars'][key][-1])): - nan += np.isnan(data['data_vars'][key][-1]) + if any(np.isnan(data["data_vars"][key][-1])): + nan += np.isnan(data["data_vars"][key][-1]) trailing = np.cumsum(nan)[-1] if trailing > 0: - data['coords']['time'] = data['coords']['time'][:-trailing] - for key in data['data_vars']: - if data['data_vars'][key].shape[-1] == l: - data['data_vars'][key] = data['data_vars'][key][..., :-trailing] + data["coords"]["time"] = data["coords"]["time"][:-trailing] + for key in data["data_vars"]: + if data["data_vars"][key].shape[-1] == l: + data["data_vars"][key] = data["data_vars"][key][..., :-trailing] return data def _create_dataset(data): - """Creates an xarray dataset from dictionary created from binary + """ + Creates an xarray dataset from dictionary created from binary readers. Direction 'dir' coordinates are set in `set_coords` """ - ds = xr.Dataset() - tag = ['_avg', '_b5', '_echo', '_bt', '_gps', '_ast', '_sl'] - - FoR = {} - try: - beams = data['attrs']['n_beams'] - except: - beams = data['attrs']['n_beams_avg'] + + tag = ["_avg", "_b5", "_echo", "_bt", "_gps", "_altraw", "_altraw_avg", "_sl"] + + ds_dict = {} + for key in data["coords"]: + ds_dict[key] = {"dims": (key), "data": data["coords"][key]} + + # Set various coordinate frames + if "n_beams_avg" in data["attrs"]: + beams = data["attrs"]["n_beams_avg"] + else: + beams = data["attrs"]["n_beams"] n_beams = max(min(beams, 4), 3) - beams = np.arange(1, n_beams+1, dtype=np.int32) - FoR['beam'] = xr.DataArray(beams, dims=['beam'], name='beam', attrs={ - 'units': '1', 'long_name': 'Beam Reference Frame'}) - FoR['dir'] = xr.DataArray(beams, dims=['dir'], name='dir', attrs={ - 'units': '1', 'long_name': 'Reference Frame'}) + beams = np.arange(1, n_beams + 1, dtype=np.int32) - for key in data['data_vars']: + ds_dict["beam"] = {"dims": ("beam"), "data": beams} + ds_dict["dir"] = {"dims": ("dir"), "data": beams} + data["units"].update({"beam": "1", "dir": "1"}) + data["long_name"].update({"beam": "Beam Reference Frame", "dir": "Reference Frame"}) + + # Iterate through data variables and add them to new dictionary + for key in data["data_vars"]: # orientation matrices - if 'mat' in key: - if 'inst' in key: # beam2inst & inst2head orientation matrices - ds[key] = xr.DataArray(data['data_vars'][key], - coords={'x1': beams, 'x2': beams}, - dims=['x1', 'x2'], - attrs={'units': '1', - 'long_name': 'Rotation Matrix'}) - elif 'orientmat' in key: # earth2inst orientation matrix + if "mat" in key: + if "inst" in key: # beam2inst & inst2head orientation matrices + if "x1" not in ds_dict: + ds_dict["x1"] = {"dims": ("x1"), "data": beams} + ds_dict["x2"] = {"dims": ("x2"), "data": beams} + + ds_dict[key] = {"dims": ("x1", "x2"), "data": data["data_vars"][key]} + data["units"].update({key: "1"}) + data["long_name"].update({key: "Rotation Matrix"}) + + elif "orientmat" in key: # earth2inst orientation matrix if any(val in key for val in tag): - tg = '_' + key.rsplit('_')[-1] + tg = "_" + key.rsplit("_")[-1] else: - tg = '' - earth = xr.DataArray(['E', 'N', 'U'], dims=['earth'], name='earth', attrs={ - 'units': '1', 'long_name': 'Earth Reference Frame'}) - inst = xr.DataArray(['X', 'Y', 'Z'], dims=['inst'], name='inst', attrs={ - 'units': '1', 'long_name': 'Instrument Reference Frame'}) - time = data['coords']['time'+tg] - ds[key] = xr.DataArray(data['data_vars'][key], - coords={'earth': earth, - 'inst': inst, 'time'+tg: time}, - dims=['earth', 'inst', 'time'+tg], - attrs={'units': data['units']['orientmat'], - 'long_name': data['long_name']['orientmat']}) + tg = "" + + ds_dict["earth"] = {"dims": ("earth"), "data": ["E", "N", "U"]} + ds_dict["inst"] = {"dims": ("inst"), "data": ["X", "Y", "Z"]} + ds_dict[key] = { + "dims": ("earth", "inst", "time" + tg), + "data": data["data_vars"][key], + } + data["units"].update( + {"earth": "1", "inst": "1", key: data["units"]["orientmat"]} + ) + data["long_name"].update( + { + "earth": "Earth Reference Frame", + "inst": "Instrument Reference Frame", + key: data["long_name"]["orientmat"], + } + ) # quaternion units never change - elif 'quaternions' in key: + elif "quaternions" in key: if any(val in key for val in tag): - tg = '_' + key.rsplit('_')[-1] + tg = "_" + key.rsplit("_")[-1] else: - tg = '' - q = xr.DataArray(['w', 'x', 'y', 'z'], dims=['q'], name='q', attrs={ - 'units': '1', 'long_name': 'Quaternion Vector Components'}) - time = data['coords']['time'+tg] - ds[key] = xr.DataArray(data['data_vars'][key], - coords={'q': q, - 'time'+tg: time}, - dims=['q', 'time'+tg], - attrs={'units': data['units']['quaternions'], - 'long_name': data['long_name']['quaternions']}) + tg = "" + + if "q" not in ds_dict: + ds_dict["q"] = {"dims": ("q"), "data": ["w", "x", "y", "z"]} + data["units"].update({"q": "1"}) + data["long_name"].update({"q": "Quaternion Vector Components"}) + + ds_dict[key] = {"dims": ("q", "time" + tg), "data": data["data_vars"][key]} + data["units"].update({key: data["units"]["quaternions"]}) + data["long_name"].update({key: data["long_name"]["quaternions"]}) + else: - # Assign each variable to a dataArray - ds[key] = xr.DataArray(data['data_vars'][key]) - # Assign metadata to each dataArray - for md in ['units', 'long_name', 'standard_name']: - if key in data[md]: - ds[key].attrs[md] = data[md][key] - try: # make sure ones with tags get units - tg = '_' + key.rsplit('_')[-1] - if any(val in key for val in tag): - ds[key].attrs[md] = data[md][key[:-len(tg)]] - except: - pass - - # Fill in dimensions and coordinates for each dataArray - shp = data['data_vars'][key].shape - l = len(shp) - if l == 1: # 1D variables - if any(val in key for val in tag): - tg = '_' + key.rsplit('_')[-1] + shp = data["data_vars"][key].shape + if len(shp) == 1: # 1D variables + if "_altraw_avg" in key: + tg = "_altraw_avg" + elif any(val in key for val in tag): + tg = "_" + key.rsplit("_")[-1] else: - tg = '' - ds[key] = ds[key].rename({'dim_0': 'time'+tg}) - ds[key] = ds[key].assign_coords( - {'time'+tg: data['coords']['time'+tg]}) - - elif l == 2: # 2D variables - if key == 'echo': - ds[key] = ds[key].rename({'dim_0': 'range_echo', - 'dim_1': 'time_echo'}) - ds[key] = ds[key].assign_coords({'range_echo': data['coords']['range_echo'], - 'time_echo': data['coords']['time_echo']}) + tg = "" + ds_dict[key] = {"dims": ("time" + tg), "data": data["data_vars"][key]} + + elif len(shp) == 2: # 2D variables + if key == "echo": + ds_dict[key] = { + "dims": ("range_echo", "time_echo"), + "data": data["data_vars"][key], + } + elif key == "samp_altraw": + ds_dict[key] = { + "dims": ("n_altraw", "time_altraw"), + "data": data["data_vars"][key], + } + elif key == "samp_altraw_avg": + ds_dict[key] = { + "dims": ("n_altraw_avg", "time_altraw_avg"), + "data": data["data_vars"][key], + } + # ADV/ADCP instrument vector data, bottom tracking elif shp[0] == n_beams and not any(val in key for val in tag[:3]): - if 'bt' in key and 'time_bt' in data['coords']: - tg = '_bt' + if "bt" in key and "time_bt" in data["coords"]: + tg = "_bt" else: - tg = '' - if any(key.rsplit('_')[0] in s for s in ['amp', 'corr', 'dist', 'prcnt_gd']): - dim0 = 'beam' + tg = "" + if any( + key.rsplit("_")[0] in s + for s in ["amp", "corr", "dist", "prcnt_gd"] + ): + dim0 = "beam" else: - dim0 = 'dir' - ds[key] = ds[key].rename({'dim_0': dim0, - 'dim_1': 'time'+tg}) - ds[key] = ds[key].assign_coords({dim0: FoR[dim0], - 'time'+tg: data['coords']['time'+tg]}) + dim0 = "dir" + ds_dict[key] = { + "dims": (dim0, "time" + tg), + "data": data["data_vars"][key], + } + # ADCP IMU data elif shp[0] == 3: if not any(val in key for val in tag): - tg = '' + tg = "" else: tg = [val for val in tag if val in key] tg = tg[0] - dirIMU = xr.DataArray([1, 2, 3], dims=['dirIMU'], name='dirIMU', attrs={ - 'units': '1', 'long_name': 'Reference Frame'}) - ds[key] = ds[key].rename({'dim_0': 'dirIMU', - 'dim_1': 'time'+tg}) - ds[key] = ds[key].assign_coords({'dirIMU': dirIMU, - 'time'+tg: data['coords']['time'+tg]}) - - ds[key].attrs['coverage_content_type'] = 'physicalMeasurement' - - elif l == 3: # 3D variables - if 'vel' in key: - dim0 = 'dir' + + if "dirIMU" not in ds_dict: + ds_dict["dirIMU"] = {"dims": ("dirIMU"), "data": [1, 2, 3]} + data["units"].update({"dirIMU": "1"}) + data["long_name"].update({"dirIMU": "Reference Frame"}) + + ds_dict[key] = { + "dims": ("dirIMU", "time" + tg), + "data": data["data_vars"][key], + } + + elif "b5" in tg: + ds_dict[key] = { + "dims": ("range_b5", "time_b5"), + "data": data["data_vars"][key], + } + + elif len(shp) == 3: # 3D variables + if "vel" in key: + dim0 = "dir" else: # amp, corr, prcnt_gd, status - dim0 = 'beam' + dim0 = "beam" - if not any(val in key for val in tag) or ('_avg' in key): - if '_avg' in key: - tg = '_avg' + if not any(val in key for val in tag) or ("_avg" in key): + if "_avg" in key: + tg = "_avg" else: - tg = '' - ds[key] = ds[key].rename({'dim_0': dim0, - 'dim_1': 'range'+tg, - 'dim_2': 'time'+tg}) - ds[key] = ds[key].assign_coords({dim0: FoR[dim0], - 'range'+tg: data['coords']['range'+tg], - 'time'+tg: data['coords']['time'+tg]}) - elif 'b5' in key: - # xarray can't handle coords of length 1 - ds[key] = ds[key][0] - ds[key] = ds[key].rename({'dim_1': 'range_b5', - 'dim_2': 'time_b5'}) - ds[key] = ds[key].assign_coords({'range_b5': data['coords']['range_b5'], - 'time_b5': data['coords']['time_b5']}) - elif 'sl' in key: - ds[key] = ds[key].rename({'dim_0': dim0, - 'dim_1': 'range_sl', - 'dim_2': 'time'}) - ds[key] = ds[key].assign_coords({'range_sl': data['coords']['range_sl'], - 'time': data['coords']['time']}) + tg = "" + ds_dict[key] = { + "dims": (dim0, "range" + tg, "time" + tg), + "data": data["data_vars"][key], + } + + elif "b5" in key: + # "vel_b5" sometimes stored as (1, range_b5, time_b5) + ds_dict[key] = { + "dims": ("range_b5", "time_b5"), + "data": data["data_vars"][key][0], + } + elif "sl" in key: + ds_dict[key] = { + "dims": (dim0, "range_sl", "time"), + "data": data["data_vars"][key], + } else: - ds = ds.drop_vars(key) - warnings.warn(f'Variable not included in dataset: {key}') - - ds[key].attrs['coverage_content_type'] = 'physicalMeasurement' + warnings.warn(f"Variable not included in dataset: {key}") + + # Create dataset + ds = xr.Dataset.from_dict(ds_dict) + + # Assign data array attributes + for key in ds.variables: + for md in ["units", "long_name", "standard_name"]: + if key in data[md]: + ds[key].attrs[md] = data[md][key] + if len(ds[key].shape) > 1: + ds[key].attrs["coverage_content_type"] = "physicalMeasurement" + try: # make sure ones with tags get units + tg = "_" + key.rsplit("_")[-1] + if any(val in key for val in tag): + ds[key].attrs[md] = data[md][key[: -len(tg)]] + except: + pass - # coordinate attributes + # Assign coordinate attributes for ky in ds.dims: - ds[ky].attrs['coverage_content_type'] = 'coordinate' - r_list = [r for r in ds.coords if 'range' in r] + ds[ky].attrs["coverage_content_type"] = "coordinate" + r_list = [r for r in ds.coords if "range" in r] for ky in r_list: - ds[ky].attrs['units'] = 'm' - ds[ky].attrs['long_name'] = 'Profile Range' - ds[ky].attrs['description'] = 'Distance to the center of each depth bin' - time_list = [t for t in ds.coords if 'time' in t] + ds[ky].attrs["units"] = "m" + ds[ky].attrs["long_name"] = "Profile Range" + ds[ky].attrs["description"] = "Distance to the center of each depth bin" + time_list = [t for t in ds.coords if "time" in t] for ky in time_list: - ds[ky].attrs['units'] = 'seconds since 1970-01-01 00:00:00' - ds[ky].attrs['long_name'] = 'Time' - ds[ky].attrs['standard_name'] = 'time' + ds[ky].attrs["units"] = "seconds since 1970-01-01 00:00:00" + ds[ky].attrs["long_name"] = "Time" + ds[ky].attrs["standard_name"] = "time" - # dataset metadata - ds.attrs = data['attrs'] + # Set dataset metadata + ds.attrs = data["attrs"] return ds diff --git a/mhkit/dolfyn/io/nortek.py b/mhkit/dolfyn/io/nortek.py index 4709df7aa..3cfc71e00 100644 --- a/mhkit/dolfyn/io/nortek.py +++ b/mhkit/dolfyn/io/nortek.py @@ -14,8 +14,9 @@ from ..rotate import api as rot -def read_nortek(filename, userdata=True, debug=False, do_checksum=False, - nens=None, **kwargs): +def read_nortek( + filename, userdata=True, debug=False, do_checksum=False, nens=None, **kwargs +): """ Read a classic Nortek (AWAC and Vector) datafile @@ -31,7 +32,7 @@ def read_nortek(filename, userdata=True, debug=False, do_checksum=False, do_checksum : bool Whether to perform the checksum of each data block. Default = False nens : None, int or 2-element tuple (start, stop) - Number of pings or ensembles to read from the file. + Number of pings or ensembles to read from the file. Default is None, read entire file Returns @@ -45,17 +46,18 @@ def read_nortek(filename, userdata=True, debug=False, do_checksum=False, for handler in logging.root.handlers[:]: logging.root.removeHandler(handler) filepath = Path(filename) - logfile = filepath.with_suffix('.dolfyn.log') - logging.basicConfig(filename=str(logfile), - filemode='w', - level=logging.NOTSET, - format='%(name)s - %(levelname)s - %(message)s') + logfile = filepath.with_suffix(".dolfyn.log") + logging.basicConfig( + filename=str(logfile), + filemode="w", + level=logging.NOTSET, + format="%(name)s - %(levelname)s - %(message)s", + ) userdata = _find_userdata(filename, userdata) - with _NortekReader(filename, debug=debug, do_checksum=do_checksum, - nens=nens) as rdr: - rdr.readfile() + rdr = _NortekReader(filename, debug=debug, do_checksum=do_checksum, nens=nens) + rdr.readfile() rdr.dat2sci() dat = rdr.data @@ -63,41 +65,44 @@ def read_nortek(filename, userdata=True, debug=False, do_checksum=False, dat = _handle_nan(dat) # Search for missing timestamps and interpolate them - coords = dat['coords'] - t_list = [t for t in coords if 'time' in t] + coords = dat["coords"] + t_list = [t for t in coords if "time" in t] for ky in t_list: tdat = coords[ky] tdat[tdat == 0] = np.NaN if np.isnan(tdat).any(): - tag = ky.lstrip('time') - warnings.warn("Zero/NaN values found in '{}'. Interpolating and " - "extrapolating them. To identify which values were filled later, " - "look for 0 values in 'status{}'".format(ky, tag)) - tdat = time._fill_time_gaps( - tdat, sample_rate_hz=dat['attrs']['fs']) - coords[ky] = time.epoch2dt64(tdat).astype('datetime64[ns]') + tag = ky.lstrip("time") + warnings.warn( + "Zero/NaN values found in '{}'. Interpolating and " + "extrapolating them. To identify which values were filled later, " + "look for 0 values in 'status{}'".format(ky, tag) + ) + tdat = time._fill_time_gaps(tdat, sample_rate_hz=dat["attrs"]["fs"]) + coords[ky] = time.epoch2dt64(tdat).astype("datetime64[ns]") # Apply rotation matrix and declination rotmat = None declin = None for nm in userdata: - if 'rotmat' in nm: + if "rotmat" in nm: rotmat = userdata[nm] - elif 'dec' in nm: + elif "dec" in nm: declin = userdata[nm] else: - dat['attrs'][nm] = userdata[nm] + dat["attrs"][nm] = userdata[nm] # Create xarray dataset from upper level dictionary ds = _create_dataset(dat) ds = _set_coords(ds, ref_frame=ds.coord_sys) - if 'orientmat' not in ds: - ds['orientmat'] = _calc_omat(ds['time'], - ds['heading'], - ds['pitch'], - ds['roll'], - ds.get('orientation_down', None)) + if "orientmat" not in ds: + ds["orientmat"] = _calc_omat( + ds["time"], + ds["heading"], + ds["pitch"], + ds["roll"], + ds.get("orientation_down", None), + ) if rotmat is not None: rot.set_inst2head_rotmat(ds, rotmat, inplace=True) @@ -114,11 +119,11 @@ def read_nortek(filename, userdata=True, debug=False, do_checksum=False, def _bcd2char(cBCD): - """Taken from the Nortek System Integrator Manual + """Taken from the Nortek System Integrator Manual "Example Program" Chapter. """ cBCD = min(cBCD, 153) - c = (cBCD & 15) + c = cBCD & 15 c += 10 * (cBCD >> 4) return c @@ -128,13 +133,13 @@ def _bitshift8(val): def _int2binarray(val, n): - out = np.zeros(n, dtype='bool') + out = np.zeros(n, dtype="bool") for idx, n in enumerate(range(n)): - out[idx] = val & (2 ** n) + out[idx] = val & (2**n) return out -class _NortekReader(): +class _NortekReader: """ A class for reading reading nortek binary files. This reader currently only supports AWAC and Vector data formats. @@ -153,27 +158,38 @@ class _NortekReader(): bufsize : int The size of the read buffer to use. Default = 100000 nens : None, int or 2-element tuple (start, stop) - Number of pings or ensembles to read from the file. + Number of pings or ensembles to read from the file. Default is None, read entire file """ _lastread = [None, None, None, None, None] - fun_map = {'0x00': 'read_user_cfg', - '0x04': 'read_head_cfg', - '0x05': 'read_hw_cfg', - '0x07': 'read_vec_checkdata', - '0x10': 'read_vec_data', - '0x11': 'read_vec_sysdata', - '0x12': 'read_vec_hdr', - '0x71': 'read_microstrain', - '0x20': 'read_awac_profile', - } - - def __init__(self, fname, endian=None, debug=False, - do_checksum=True, bufsize=100000, nens=None): + fun_map = { + "0x00": "read_user_cfg", + "0x04": "read_head_cfg", + "0x05": "read_hw_cfg", + "0x07": "read_vec_checkdata", + "0x10": "read_vec_data", + "0x11": "read_vec_sysdata", + "0x12": "read_vec_hdr", + "0x20": "read_awac_profile", + "0x30": "read_awac_waves", + "0x31": "read_awac_waves_hdr", + "0x36": "read_awac_waves", # "SUV" + "0x71": "read_microstrain", + } + + def __init__( + self, + fname, + endian=None, + debug=False, + do_checksum=True, + bufsize=100000, + nens=None, + ): self.fname = fname self._bufsize = bufsize - self.f = open(_abspath(fname), 'rb', 1000) + self.f = open(_abspath(fname), "rb", 1000) self.do_checksum = do_checksum self.filesize # initialize the filesize. self.debug = debug @@ -187,29 +203,32 @@ def __init__(self, fname, endian=None, debug=False, self._npings = nens else: if len(nens) != 2: - raise TypeError('nens must be: None (), int, or len 2') - warnings.warn("A 'start ensemble' is not yet supported " - "for the Nortek reader. This function will read " - "the entire file, then crop the beginning at " - "nens[0].") + raise TypeError("nens must be: None (), int, or len 2") + warnings.warn( + "A 'start ensemble' is not yet supported " + "for the Nortek reader. This function will read " + "the entire file, then crop the beginning at " + "nens[0]." + ) self._npings = nens[1] self._n_start = nens[0] if endian is None: - if unpack('HH', self.read(4)) == (1445, 24): - endian = '>' + if unpack("HH", self.read(4)) == (1445, 24): + endian = ">" else: - raise Exception("I/O error: could not determine the " - "'endianness' of the file. Are you sure this is a Nortek " - "file?") + raise Exception( + "I/O error: could not determine the " + "'endianness' of the file. Are you sure this is a Nortek " + "file?" + ) self.endian = endian self.f.seek(0, 0) # This is the configuration data: self.config = {} - err_msg = ("I/O error: The file does not " - "appear to be a Nortek data file.") + err_msg = "I/O error: The file does not " "appear to be a Nortek data file." # Read the header: if self.read_id() == 5: self.read_hw_cfg() @@ -223,49 +242,54 @@ def __init__(self, fname, endian=None, debug=False, self.read_user_cfg() else: raise Exception(err_msg) - if self.config['hdw']['serial_number'][0:3].upper() == 'WPR': - self.config['config_type'] = 'AWAC' - elif self.config['hdw']['serial_number'][0:3].upper() == 'VEC': - self.config['config_type'] = 'ADV' + if self.config["hdw"]["serial_number"][0:3].upper() == "WPR": + self.config["config_type"] = "AWAC" + elif self.config["hdw"]["serial_number"][0:3].upper() == "VEC": + self.config["config_type"] = "ADV" # Initialize the instrument type: - self._inst = self.config.pop('config_type') + self._inst = self.config.pop("config_type") # This is the position after reading the 'hardware', # 'head', and 'user' configuration. pnow = self.pos # Run the appropriate initialization routine (e.g. init_ADV). - getattr(self, 'init_' + self._inst)() + getattr(self, "init_" + self._inst)() self.f.close() # This has a small buffer, so close it. # This has a large buffer... - self.f = open(_abspath(fname), 'rb', bufsize) + self.f = open(_abspath(fname), "rb", bufsize) self.close = self.f.close if self._npings is not None: self.n_samp_guess = self._npings self.f.seek(pnow, 0) # Seek to the previous position. - da = self.data['attrs'] - if self.config['n_burst'] > 0: - fs = round(self.config['fs'], 7) - da['duty_cycle_n_burst'] = self.config['n_burst'] - da['duty_cycle_interval'] = self.config['burst_interval'] + da = self.data["attrs"] + if self.config["n_burst"] > 0: + fs = round(self.config["fs"], 7) + da["duty_cycle_n_burst"] = self.config["n_burst"] + da["duty_cycle_interval"] = self.config["burst_interval"] if fs > 1: - burst_seconds = self.config['n_burst']/fs + burst_seconds = self.config["n_burst"] / fs else: - burst_seconds = round(1/fs, 3) - da['duty_cycle_description'] = "{} second bursts collected at {} Hz, with bursts taken every {} minutes".format( - burst_seconds, fs, self.config['burst_interval']/60) - self.burst_start = np.zeros(self.n_samp_guess, dtype='bool') - da['fs'] = self.config['fs'] - da['coord_sys'] = {'XYZ': 'inst', - 'ENU': 'earth', - 'beam': 'beam'}[self.config['coord_sys_axes']] - da['has_imu'] = 0 # Initiate attribute + burst_seconds = round(1 / fs, 3) + da["duty_cycle_description"] = ( + "{} second bursts collected at {} Hz, with bursts taken every {} minutes".format( + burst_seconds, fs, self.config["burst_interval"] / 60 + ) + ) + self.burst_start = np.zeros(self.n_samp_guess, dtype="bool") + da["fs"] = self.config["fs"] + da["coord_sys"] = {"XYZ": "inst", "ENU": "earth", "beam": "beam"}[ + self.config["coord_sys_axes"] + ] + da["has_imu"] = 0 # Initiate attribute if self.debug: - logging.info('Init completed') + logging.info("Init completed") @property - def filesize(self,): - if not hasattr(self, '_filesz'): + def filesize( + self, + ): + if not hasattr(self, "_filesz"): pos = self.pos self.f.seek(0, 2) # Seek to the end of the file to determine the filesize. @@ -274,49 +298,61 @@ def filesize(self,): return self._filesz @property - def pos(self,): + def pos(self): return self.f.tell() - def init_ADV(self,): - dat = self.data = {'data_vars': {}, 'coords': {}, 'attrs': {}, - 'units': {}, 'long_name': {}, 'standard_name': {}, - 'sys': {}} - da = dat['attrs'] - dv = dat['data_vars'] - da['inst_make'] = 'Nortek' - da['inst_model'] = 'Vector' - da['inst_type'] = 'ADV' - da['rotate_vars'] = ['vel'] - dv['beam2inst_orientmat'] = self.config.pop('beam2inst_orientmat') - self.config['fs'] = 512 / self.config['awac']['avg_interval'] - da.update(self.config['usr']) - da.update(self.config['adv']) - da.update(self.config['head']) - da.update(self.config['hdw']) + def init_ADV(self): + dat = self.data = { + "data_vars": {}, + "coords": {}, + "attrs": {}, + "units": {}, + "long_name": {}, + "standard_name": {}, + "sys": {}, + } + da = dat["attrs"] + dv = dat["data_vars"] + da["inst_make"] = "Nortek" + da["inst_model"] = "Vector" + da["inst_type"] = "ADV" + da["rotate_vars"] = ["vel"] + dv["beam2inst_orientmat"] = self.config.pop("beam2inst_orientmat") + self.config["fs"] = 512 / self.config["awac"]["avg_interval"] + da.update(self.config["usr"]) + da.update(self.config["adv"]) + da.update(self.config["head"]) + da.update(self.config["hdw"]) # No apparent way to determine how many samples are in a file - dlta = self.code_spacing('0x11') + dlta = self.code_spacing("0x11") self.n_samp_guess = int(self.filesize / dlta + 1) - self.n_samp_guess *= int(self.config['fs']) - - def init_AWAC(self,): - dat = self.data = {'data_vars': {}, 'coords': {}, 'attrs': {}, - 'units': {}, 'long_name': {}, 'standard_name': {}, - 'sys': {}} - da = dat['attrs'] - dv = dat['data_vars'] - da['inst_make'] = 'Nortek' - da['inst_model'] = 'AWAC' - da['inst_type'] = 'ADCP' - dv['beam2inst_orientmat'] = self.config.pop('beam2inst_orientmat') - da['rotate_vars'] = ['vel'] - self.config['fs'] = 1. / self.config['awac']['avg_interval'] - da.update(self.config['usr']) - da.update(self.config['awac']) - da.update(self.config['head']) - da.update(self.config['hdw']) - - space = self.code_spacing('0x20') + self.n_samp_guess *= int(self.config["fs"]) + + def init_AWAC(self): + dat = self.data = { + "data_vars": {}, + "coords": {}, + "attrs": {}, + "units": {}, + "long_name": {}, + "standard_name": {}, + "sys": {}, + } + da = dat["attrs"] + dv = dat["data_vars"] + da["inst_make"] = "Nortek" + da["inst_model"] = "AWAC" + da["inst_type"] = "ADCP" + dv["beam2inst_orientmat"] = self.config.pop("beam2inst_orientmat") + da["rotate_vars"] = ["vel"] + self.config["fs"] = 1.0 / self.config["awac"]["avg_interval"] + da.update(self.config["usr"]) + da.update(self.config["awac"]) + da.update(self.config["head"]) + da.update(self.config["hdw"]) + + space = self.code_spacing("0x20") if space == 0: # code spacing is zero if there's only 1 profile self.n_samp_guess = 1 @@ -326,62 +362,62 @@ def init_AWAC(self,): def read(self, nbyte): byts = self.f.read(nbyte) if not (len(byts) == nbyte): - raise EOFError('Reached the end of the file') + raise EOFError("Reached the end of the file") return byts def findnext(self, do_cs=True): """Find the next data block by checking the checksum and the sync byte(0xa5) """ - sum = np.uint16(int('0xb58c', 0)) # Initialize the sum + sum = np.uint16(int("0xb58c", 0)) # Initialize the sum cs = 0 func = _bitshift8 func2 = np.uint8 - if self.endian == '<': + if self.endian == "<": func = np.uint8 func2 = _bitshift8 while True: - val = unpack(self.endian + 'H', self.read(2))[0] + val = unpack(self.endian + "H", self.read(2))[0] if func(val) == 165 and (not do_cs or cs == np.uint16(sum)): self.f.seek(-2, 1) return hex(func2(val)) sum += cs cs = val - def read_id(self,): - """Read the next 'ID' from the file. - """ + def read_id(self): + """Read the next 'ID' from the file.""" self._thisid_bytes = bts = self.read(2) - tmp = unpack(self.endian + 'BB', bts) + tmp = unpack(self.endian + "BB", bts) if self.debug: - logging.info('Position: {}, codes: {}'.format(self.f.tell(), tmp)) + logging.info("Position: {}, codes: {}".format(self.f.tell(), tmp)) if tmp[0] != 165: # This catches a corrupted data block. if self.debug: - logging.warning("Corrupted data block sync code (%d, %d) found " - "in ping %d. Searching for next valid code..." % - (tmp[0], tmp[1], self.c)) + logging.warning( + "Corrupted data block sync code (%d, %d) found " + "in ping %d. Searching for next valid code..." + % (tmp[0], tmp[1], self.c) + ) val = int(self.findnext(do_cs=False), 0) self.f.seek(2, 1) if self.debug: - logging.debug( - ' ...FOUND {} at position: {}.'.format(val, self.pos)) + logging.debug(" ...FOUND {} at position: {}.".format(val, self.pos)) return val return tmp[1] - def readnext(self,): - id = '0x%02x' % self.read_id() + def readnext(self): + id = "0x%02x" % self.read_id() if id in self.fun_map: func_name = self.fun_map[id] out = getattr(self, func_name)() # Should return None self._lastread = [func_name[5:]] + self._lastread[:-1] return out else: - logging.warning('Unrecognized identifier: ' + id) + logging.warning("Unrecognized identifier: " + id) self.f.seek(-2, 1) return 10 def readfile(self, nlines=None): - print('Reading file %s ...' % self.fname) + print("Reading file %s ..." % self.fname) retval = None try: while not retval: @@ -392,7 +428,7 @@ def readfile(self, nlines=None): self.findnext() retval = None if self._npings is not None and self.c >= self._npings: - if 'microstrain' in self._dtypes: + if "microstrain" in self._dtypes: try: self.readnext() except: @@ -400,10 +436,10 @@ def readfile(self, nlines=None): break except EOFError: if self.debug: - logging.info(' end of file at {} bytes.'.format(self.pos)) + logging.info(" end of file at {} bytes.".format(self.pos)) else: if self.debug: - logging.info(' stopped at {} bytes.'.format(self.pos)) + logging.info(" stopped at {} bytes.".format(self.pos)) self.c -= 1 _crop_data(self.data, slice(0, self.c), self.n_samp_guess) @@ -416,7 +452,7 @@ def findnextid(self, id): if nowid == 16: shift = 22 else: - sz = 2 * unpack(self.endian + 'H', self.read(2))[0] + sz = 2 * unpack(self.endian + "H", self.read(2))[0] shift = sz - 4 self.f.seek(shift, 1) return self.pos @@ -434,161 +470,189 @@ def code_spacing(self, searchcode, iternum=50): except EOFError: break if self.debug: - logging.info('p0={}, pos={}, i={}'.format(p0, self.pos, i)) + logging.info("p0={}, pos={}, i={}".format(p0, self.pos, i)) # Compute the average of the data size: return (self.pos - p0) / (i + 1) def checksum(self, byts): - """Perform a checksum on `byts` and read the checksum value. - """ + """Perform a checksum on `byts` and read the checksum value.""" if self.do_checksum: - if not np.sum(unpack(self.endian + str(int(1 + len(byts) / 2)) + 'H', - self._thisid_bytes + byts)) + \ - 46476 - unpack(self.endian + 'H', self.read(2)): - + if ( + not np.sum( + unpack( + self.endian + str(int(1 + len(byts) / 2)) + "H", + self._thisid_bytes + byts, + ) + ) + + 46476 + - unpack(self.endian + "H", self.read(2)) + ): raise Exception("CheckSum Failed at {}".format(self.pos)) else: self.f.seek(2, 1) - def read_user_cfg(self,): + def read_user_cfg(self): # ID: '0x00 = 00 if self.debug: - logging.info('Reading user configuration (0x00) ping #{} @ {}...' - .format(self.c, self.pos)) + logging.info( + "Reading user configuration (0x00) ping #{} @ {}...".format( + self.c, self.pos + ) + ) cfg_u = self.config byts = self.read(508) # the first two bytes are the size. - tmp = unpack(self.endian + - '2x18H6s4HI9H90H80s48xH50x6H4xH2x2H2xH30x8H', - byts) - cfg_u['usr'] = {} - cfg_u['adv'] = {} - cfg_u['awac'] = {} - - cfg_u['transmit_pulse_length_m'] = tmp[0] # counts - cfg_u['blank_dist'] = tmp[1] # overridden below - cfg_u['receive_length_m'] = tmp[2] # counts - cfg_u['time_between_pings'] = tmp[3] # counts - cfg_u['time_between_bursts'] = tmp[4] # counts - cfg_u['adv']['n_pings_per_burst'] = tmp[5] - cfg_u['awac']['avg_interval'] = tmp[6] - cfg_u['usr']['n_beams'] = tmp[7] + tmp = unpack(self.endian + "2x18H6s4HI9H90H80s48xH50x6H4xH2x2H2xH30x8H", byts) + cfg_u["usr"] = {} + cfg_u["adv"] = {} + cfg_u["awac"] = {} + + cfg_u["transmit_pulse_length_m"] = tmp[0] # counts + cfg_u["blank_dist"] = tmp[1] # overridden below + cfg_u["receive_length_m"] = tmp[2] # counts + cfg_u["time_between_pings"] = tmp[3] # counts + cfg_u["time_between_bursts"] = tmp[4] # counts + cfg_u["adv"]["n_pings_per_burst"] = tmp[5] + cfg_u["awac"]["avg_interval"] = tmp[6] + cfg_u["usr"]["n_beams"] = tmp[7] TimCtrlReg = _int2binarray(tmp[8], 16).astype(int) # From the nortek system integrator manual # (note: bit numbering is zero-based) - cfg_u['usr']['profile_mode'] = [ - 'single', 'continuous'][TimCtrlReg[1]] - cfg_u['usr']['burst_mode'] = str(bool(~TimCtrlReg[2])) - cfg_u['usr']['power_level'] = TimCtrlReg[5] + 2 * TimCtrlReg[6] + 1 - cfg_u['usr']['sync_out_pos'] = ['middle', 'end', ][TimCtrlReg[7]] - cfg_u['usr']['sample_on_sync'] = str(bool(TimCtrlReg[8])) - cfg_u['usr']['start_on_sync'] = str(bool(TimCtrlReg[9])) - cfg_u['PwrCtrlReg'] = _int2binarray(tmp[9], 16) - cfg_u['A1'] = tmp[10] - cfg_u['B0'] = tmp[11] - cfg_u['B1'] = tmp[12] - cfg_u['usr']['compass_update_rate'] = tmp[13] - cfg_u['coord_sys_axes'] = ['ENU', 'XYZ', 'beam'][tmp[14]] - cfg_u['usr']['n_bins'] = tmp[15] - cfg_u['bin_length'] = tmp[16] - cfg_u['burst_interval'] = tmp[17] - cfg_u['usr']['deployment_name'] = tmp[18].partition(b'\x00')[ - 0].decode('utf-8') - cfg_u['usr']['wrap_mode'] = str(bool(tmp[19])) - cfg_u['deployment_time'] = np.array(tmp[20:23]) - cfg_u['diagnotics_interval'] = tmp[23] + cfg_u["usr"]["profile_mode"] = ["single", "continuous"][TimCtrlReg[1]] + cfg_u["usr"]["burst_mode"] = str(bool(~TimCtrlReg[2])) + cfg_u["usr"]["power_level"] = TimCtrlReg[5] + 2 * TimCtrlReg[6] + 1 + cfg_u["usr"]["sync_out_pos"] = [ + "middle", + "end", + ][TimCtrlReg[7]] + cfg_u["usr"]["sample_on_sync"] = str(bool(TimCtrlReg[8])) + cfg_u["usr"]["start_on_sync"] = str(bool(TimCtrlReg[9])) + cfg_u["PwrCtrlReg"] = _int2binarray(tmp[9], 16) + cfg_u["A1"] = tmp[10] + cfg_u["B0"] = tmp[11] + cfg_u["B1"] = tmp[12] + cfg_u["usr"]["compass_update_rate"] = tmp[13] + cfg_u["coord_sys_axes"] = ["ENU", "XYZ", "beam"][tmp[14]] + cfg_u["usr"]["n_bins"] = tmp[15] + cfg_u["bin_length"] = tmp[16] + cfg_u["burst_interval"] = tmp[17] + cfg_u["usr"]["deployment_name"] = tmp[18].partition(b"\x00")[0].decode("utf-8") + cfg_u["usr"]["wrap_mode"] = str(bool(tmp[19])) + cfg_u["deployment_time"] = np.array(tmp[20:23]) + cfg_u["diagnotics_interval"] = tmp[23] Mode0 = _int2binarray(tmp[24], 16) - cfg_u['user_soundspeed_adj_factor'] = tmp[25] - cfg_u['n_samples_diag'] = tmp[26] - cfg_u['n_beams_cells_diag'] = tmp[27] - cfg_u['n_pings_diag_wave'] = tmp[28] + cfg_u["user_soundspeed_adj_factor"] = tmp[25] + cfg_u["n_samples_diag"] = tmp[26] + cfg_u["n_beams_cells_diag"] = tmp[27] + cfg_u["n_pings_diag_wave"] = tmp[28] ModeTest = _int2binarray(tmp[29], 16) - cfg_u['usr']['analog_in'] = tmp[30] + cfg_u["usr"]["analog_in"] = tmp[30] sfw_ver = str(tmp[31]) - cfg_u['usr']['software_version'] = sfw_ver[0] + \ - '.'+sfw_ver[1:3]+'.'+sfw_ver[3:] - cfg_u['usr']['salinity'] = tmp[32]/10 - cfg_u['VelAdjTable'] = np.array(tmp[33:123]) - cfg_u['usr']['comments'] = tmp[123].partition(b'\x00')[ - 0].decode('utf-8') - cfg_u['awac']['wave_processing_method'] = [ - 'PUV', 'SUV', 'MLM', 'MLMST', 'None'][tmp[124]] + cfg_u["usr"]["software_version"] = ( + sfw_ver[0] + "." + sfw_ver[1:3] + "." + sfw_ver[3:] + ) + cfg_u["usr"]["salinity"] = tmp[32] / 10 + cfg_u["VelAdjTable"] = np.array(tmp[33:123]) + cfg_u["usr"]["comments"] = tmp[123].partition(b"\x00")[0].decode("utf-8") + cfg_u["awac"]["wave_processing_method"] = [ + "PUV", + "SUV", + "MLM", + "MLMST", + "None", + ][tmp[124]] Mode1 = _int2binarray(tmp[125], 16) - cfg_u['awac']['prc_dyn_wave_cell_pos'] = int(tmp[126]/32767 * 100) - cfg_u['wave_transmit_pulse'] = tmp[127] - cfg_u['wave_blank_dist'] = tmp[128] - cfg_u['awac']['wave_cell_size'] = tmp[129] - cfg_u['awac']['n_samples_wave'] = tmp[130] - cfg_u['n_burst'] = tmp[131] - cfg_u['analog_out_scale'] = tmp[132] - cfg_u['corr_thresh'] = tmp[133] - cfg_u['transmit_pulse_lag2'] = tmp[134] # counts - cfg_u['QualConst'] = np.array(tmp[135:143]) + cfg_u["awac"]["prc_dyn_wave_cell_pos"] = int(tmp[126] / 32767 * 100) + cfg_u["wave_transmit_pulse"] = tmp[127] + cfg_u["wave_blank_dist"] = tmp[128] + cfg_u["awac"]["wave_cell_size"] = tmp[129] + cfg_u["awac"]["n_samples_wave"] = tmp[130] + cfg_u["n_burst"] = tmp[131] + cfg_u["analog_out_scale"] = tmp[132] + cfg_u["corr_thresh"] = tmp[133] + cfg_u["transmit_pulse_lag2"] = tmp[134] # counts + cfg_u["QualConst"] = np.array(tmp[135:143]) self.checksum(byts) - cfg_u['usr']['user_specified_sound_speed'] = str(Mode0[0]) - cfg_u['awac']['wave_mode'] = ['Disabled', 'Enabled'][int(Mode0[1])] - cfg_u['usr']['analog_output'] = str(Mode0[2]) - cfg_u['usr']['output_format'] = ['Vector', 'ADV'][int(Mode0[3])] # noqa - cfg_u['vel_scale_mm'] = [1, 0.1][int(Mode0[4])] - cfg_u['usr']['serial_output'] = str(Mode0[5]) - cfg_u['reserved_EasyQ'] = str(Mode0[6]) - cfg_u['usr']['power_output_analog'] = str(Mode0[8]) - cfg_u['mode_test_use_DSP'] = str(ModeTest[0]) - cfg_u['mode_test_filter_output'] = ['total', 'correction_only'][int(ModeTest[1])] # noqa - cfg_u['awac']['wave_fs'] = ['1 Hz', '2 Hz'][int(Mode1[0])] - cfg_u['awac']['wave_cell_position'] = ['fixed', 'dynamic'][int(Mode1[1])] # noqa - cfg_u['awac']['type_wave_cell_pos'] = ['pct_of_mean_pressure', 'pct_of_min_re'][int(Mode1[2])] # noqa - - def read_head_cfg(self,): + cfg_u["usr"]["user_specified_sound_speed"] = str(Mode0[0]) + cfg_u["awac"]["wave_mode"] = ["Disabled", "Enabled"][int(Mode0[1])] + cfg_u["usr"]["analog_output"] = str(Mode0[2]) + cfg_u["usr"]["output_format"] = ["Vector", "ADV"][int(Mode0[3])] # noqa + cfg_u["vel_scale_mm"] = [1, 0.1][int(Mode0[4])] + cfg_u["usr"]["serial_output"] = str(Mode0[5]) + cfg_u["reserved_EasyQ"] = str(Mode0[6]) + cfg_u["usr"]["power_output_analog"] = str(Mode0[8]) + cfg_u["mode_test_use_DSP"] = str(ModeTest[0]) + cfg_u["mode_test_filter_output"] = ["total", "correction_only"][ + int(ModeTest[1]) + ] # noqa + cfg_u["awac"]["wave_fs"] = ["1 Hz", "2 Hz"][int(Mode1[0])] + cfg_u["awac"]["wave_cell_position"] = ["fixed", "dynamic"][ + int(Mode1[1]) + ] # noqa + cfg_u["awac"]["type_wave_cell_pos"] = ["pct_of_mean_pressure", "pct_of_min_re"][ + int(Mode1[2]) + ] # noqa + + def read_head_cfg(self): # ID: '0x04 = 04 if self.debug: - logging.info('Reading head configuration (0x04) ping #{} @ {}...' - .format(self.c, self.pos)) + logging.info( + "Reading head configuration (0x04) ping #{} @ {}...".format( + self.c, self.pos + ) + ) cfg = self.config - cfg['head'] = {} + cfg["head"] = {} byts = self.read(220) - tmp = unpack(self.endian + '2x3H12s176s22sH', byts) + tmp = unpack(self.endian + "2x3H12s176s22sH", byts) head_config = _int2binarray(tmp[0], 16).astype(int) - cfg['head']['pressure_sensor'] = ['no', 'yes'][head_config[0]] - cfg['head']['compass'] = ['no', 'yes'][head_config[1]] - cfg['head']['tilt_sensor'] = ['no', 'yes'][head_config[2]] - cfg['head']['carrier_freq_kHz'] = tmp[1] - cfg['beam2inst_orientmat'] = np.array( - unpack(self.endian + '9h', tmp[4][8:26])).reshape(3, 3) / 4096. + cfg["head"]["pressure_sensor"] = ["no", "yes"][head_config[0]] + cfg["head"]["compass"] = ["no", "yes"][head_config[1]] + cfg["head"]["tilt_sensor"] = ["no", "yes"][head_config[2]] + cfg["head"]["carrier_freq_kHz"] = tmp[1] + cfg["beam2inst_orientmat"] = ( + np.array(unpack(self.endian + "9h", tmp[4][8:26])).reshape(3, 3) / 4096.0 + ) self.checksum(byts) - def read_hw_cfg(self,): + def read_hw_cfg(self): # ID 0x05 = 05 if self.debug: - logging.info('Reading hardware configuration (0x05) ping #{} @ {}...' - .format(self.c, self.pos)) + logging.info( + "Reading hardware configuration (0x05) ping #{} @ {}...".format( + self.c, self.pos + ) + ) cfg_hw = self.config - cfg_hw['hdw'] = {} + cfg_hw["hdw"] = {} byts = self.read(44) - tmp = unpack(self.endian + '2x14s6H12x4s', byts) - cfg_hw['hdw']['serial_number'] = tmp[0][:8].decode('utf-8') - cfg_hw['ProLogID'] = unpack('B', tmp[0][8:9])[0] - cfg_hw['hdw']['ProLogFWver'] = tmp[0][10:].decode('utf-8') - cfg_hw['board_config'] = tmp[1] - cfg_hw['board_freq'] = tmp[2] - cfg_hw['hdw']['PIC_version'] = tmp[3] - cfg_hw['hdw']['hardware_rev'] = tmp[4] - cfg_hw['hdw']['recorder_size_bytes'] = tmp[5] * 65536 + tmp = unpack(self.endian + "2x14s6H12x4s", byts) + cfg_hw["hdw"]["serial_number"] = tmp[0][:8].decode("utf-8") + cfg_hw["ProLogID"] = unpack("B", tmp[0][8:9])[0] + cfg_hw["hdw"]["ProLogFWver"] = tmp[0][10:].decode("utf-8") + cfg_hw["board_config"] = tmp[1] + cfg_hw["board_freq"] = tmp[2] + cfg_hw["hdw"]["PIC_version"] = tmp[3] + cfg_hw["hdw"]["hardware_rev"] = tmp[4] + cfg_hw["hdw"]["recorder_size_bytes"] = tmp[5] * 65536 status = _int2binarray(tmp[6], 16).astype(int) - cfg_hw['hdw']['vel_range'] = ['normal', 'high'][status[0]] - cfg_hw['hdw']['firmware_version'] = tmp[7].decode('utf-8') + cfg_hw["hdw"]["vel_range"] = ["normal", "high"][status[0]] + cfg_hw["hdw"]["firmware_version"] = tmp[7].decode("utf-8") self.checksum(byts) def rd_time(self, strng): - """Read the time from the first 6bytes of the input string. - """ - min, sec, day, hour, year, month = unpack('BBBBBB', strng[:6]) - return time.date2epoch(datetime(time._fullyear(_bcd2char(year)), - _bcd2char(month), - _bcd2char(day), - _bcd2char(hour), - _bcd2char(min), - _bcd2char(sec)))[0] + """Read the time from the first 6bytes of the input string.""" + min, sec, day, hour, year, month = unpack("BBBBBB", strng[:6]) + return time.date2epoch( + datetime( + time._fullyear(_bcd2char(year)), + _bcd2char(month), + _bcd2char(day), + _bcd2char(hour), + _bcd2char(min), + _bcd2char(sec), + ) + )[0] def _init_data(self, vardict): """Initialize the data object according to vardict. @@ -600,9 +664,9 @@ def _init_data(self, vardict): how to initialize each data variable. """ - shape_args = {'n': self.n_samp_guess} + shape_args = {"n": self.n_samp_guess} try: - shape_args['nbins'] = self.config['usr']['n_bins'] + shape_args["nbins"] = self.config["usr"]["n_bins"] except KeyError: pass for nm, va in list(vardict.items()): @@ -613,70 +677,78 @@ def _init_data(self, vardict): else: if nm not in self.data[va.group]: self.data[va.group][nm] = va._empty_array(**shape_args) - self.data['units'][nm] = va.units - self.data['long_name'][nm] = va.long_name + self.data["units"][nm] = va.units + self.data["long_name"][nm] = va.long_name if va.standard_name: - self.data['standard_name'][nm] = va.standard_name + self.data["standard_name"][nm] = va.standard_name - def read_vec_data(self,): + def read_vec_data(self): # ID: 0x10 = 16 c = self.c dat = self.data if self.debug: - logging.info('Reading vector velocity data (0x10) ping #{} @ {}...' - .format(self.c, self.pos)) + logging.info( + "Reading vector velocity data (0x10) ping #{} @ {}...".format( + self.c, self.pos + ) + ) - if 'vel' not in dat['data_vars']: + if "vel" not in dat["data_vars"]: self._init_data(nortek_defs.vec_data) - self._dtypes += ['vec_data'] + self._dtypes += ["vec_data"] byts = self.read(20) - ds = dat['sys'] - dv = dat['data_vars'] - (ds['AnaIn2LSB'][c], - ds['Count'][c], - dv['PressureMSB'][c], - ds['AnaIn2MSB'][c], - dv['PressureLSW'][c], - ds['AnaIn1'][c], - dv['vel'][0, c], - dv['vel'][1, c], - dv['vel'][2, c], - dv['amp'][0, c], - dv['amp'][1, c], - dv['amp'][2, c], - dv['corr'][0, c], - dv['corr'][1, c], - dv['corr'][2, c]) = unpack(self.endian + '4B2H3h6B', byts) + ds = dat["sys"] + dv = dat["data_vars"] + ( + ds["AnaIn2LSB"][c], + ds["Count"][c], + dv["PressureMSB"][c], + ds["AnaIn2MSB"][c], + dv["PressureLSW"][c], + ds["AnaIn1"][c], + dv["vel"][0, c], + dv["vel"][1, c], + dv["vel"][2, c], + dv["amp"][0, c], + dv["amp"][1, c], + dv["amp"][2, c], + dv["corr"][0, c], + dv["corr"][1, c], + dv["corr"][2, c], + ) = unpack(self.endian + "4B2H3h6B", byts) self.checksum(byts) self.c += 1 - def read_vec_checkdata(self,): + def read_vec_checkdata(self): # ID: 0x07 = 07 if self.debug: - logging.info('Reading vector check data (0x07) ping #{} @ {}...' - .format(self.c, self.pos)) + logging.info( + "Reading vector check data (0x07) ping #{} @ {}...".format( + self.c, self.pos + ) + ) byts0 = self.read(6) checknow = {} - tmp = unpack(self.endian + '2x2H', byts0) # The first two are size. - checknow['Samples'] = tmp[0] - n = checknow['Samples'] - checknow['First_samp'] = tmp[1] - checknow['Amp1'] = tbx._nans(n, dtype=np.uint8) + 8 - checknow['Amp2'] = tbx._nans(n, dtype=np.uint8) + 8 - checknow['Amp3'] = tbx._nans(n, dtype=np.uint8) + 8 + tmp = unpack(self.endian + "2x2H", byts0) # The first two are size. + checknow["Samples"] = tmp[0] + n = checknow["Samples"] + checknow["First_samp"] = tmp[1] + checknow["Amp1"] = tbx._nans(n, dtype=np.uint8) + 8 + checknow["Amp2"] = tbx._nans(n, dtype=np.uint8) + 8 + checknow["Amp3"] = tbx._nans(n, dtype=np.uint8) + 8 byts1 = self.read(3 * n) - tmp = unpack(self.endian + (3 * n * 'B'), byts1) - for idx, nm in enumerate(['Amp1', 'Amp2', 'Amp3']): - checknow[nm] = np.array(tmp[idx * n:(idx + 1) * n], dtype=np.uint8) + tmp = unpack(self.endian + (3 * n * "B"), byts1) + for idx, nm in enumerate(["Amp1", "Amp2", "Amp3"]): + checknow[nm] = np.array(tmp[idx * n : (idx + 1) * n], dtype=np.uint8) self.checksum(byts0 + byts1) - if 'checkdata' not in self.config: - self.config['checkdata'] = checknow + if "checkdata" not in self.config: + self.config["checkdata"] = checknow else: - if not isinstance(self.config['checkdata'], list): - self.config['checkdata'] = [self.config['checkdata']] - self.config['checkdata'] += [checknow] + if not isinstance(self.config["checkdata"], list): + self.config["checkdata"] = [self.config["checkdata"]] + self.config["checkdata"] += [checknow] def _sci_data(self, vardict): """ @@ -700,92 +772,104 @@ def _sci_data(self, vardict): if retval is not None: dat[nm] = retval - def sci_vec_data(self,): + def sci_vec_data(self): self._sci_data(nortek_defs.vec_data) dat = self.data - dat['data_vars']['pressure'] = ( - dat['data_vars']['PressureMSB'].astype('float32') * 65536 + - dat['data_vars']['PressureLSW'].astype('float32')) / 1000. - dat['units']['pressure'] = 'dbar' - dat['long_name']['pressure'] = 'Pressure' - dat['standard_name']['pressure'] = 'sea_water_pressure' + dat["data_vars"]["pressure"] = ( + dat["data_vars"]["PressureMSB"].astype("float32") * 65536 + + dat["data_vars"]["PressureLSW"].astype("float32") + ) / 1000.0 + dat["units"]["pressure"] = "dbar" + dat["long_name"]["pressure"] = "Pressure" + dat["standard_name"]["pressure"] = "sea_water_pressure" - dat['data_vars'].pop('PressureMSB') - dat['data_vars'].pop('PressureLSW') + dat["data_vars"].pop("PressureMSB") + dat["data_vars"].pop("PressureLSW") # Apply velocity scaling (1 or 0.1) - dat['data_vars']['vel'] *= self.config['vel_scale_mm'] + dat["data_vars"]["vel"] *= self.config["vel_scale_mm"] - def read_vec_hdr(self,): + def read_vec_hdr(self): # ID: '0x12 = 18 if self.debug: - logging.info('Reading vector header data (0x12) ping #{} @ {}...' - .format(self.c, self.pos)) + logging.info( + "Reading vector header data (0x12) ping #{} @ {}...".format( + self.c, self.pos + ) + ) byts = self.read(38) # The first two are size, the next 6 are time. - tmp = unpack(self.endian + '8xH7B21x', byts) + tmp = unpack(self.endian + "8xH7B21x", byts) hdrnow = {} - hdrnow['time'] = self.rd_time(byts[2:8]) - hdrnow['NRecords'] = tmp[0] - hdrnow['Noise1'] = tmp[1] - hdrnow['Noise2'] = tmp[2] - hdrnow['Noise3'] = tmp[3] - hdrnow['Spare0'] = byts[13:14].decode('utf-8') - hdrnow['Corr1'] = tmp[5] - hdrnow['Corr2'] = tmp[6] - hdrnow['Corr3'] = tmp[7] - hdrnow['Spare1'] = byts[17:].decode('utf-8') + hdrnow["time"] = self.rd_time(byts[2:8]) + hdrnow["NRecords"] = tmp[0] + hdrnow["Noise1"] = tmp[1] + hdrnow["Noise2"] = tmp[2] + hdrnow["Noise3"] = tmp[3] + hdrnow["Spare0"] = byts[13:14].decode("utf-8") + hdrnow["Corr1"] = tmp[5] + hdrnow["Corr2"] = tmp[6] + hdrnow["Corr3"] = tmp[7] + hdrnow["Spare1"] = byts[17:].decode("utf-8") self.checksum(byts) - if 'data_header' not in self.config: - self.config['data_header'] = hdrnow + if "data_header" not in self.config: + self.config["data_header"] = hdrnow else: - if not isinstance(self.config['data_header'], list): - self.config['data_header'] = [self.config['data_header']] - self.config['data_header'] += [hdrnow] + if not isinstance(self.config["data_header"], list): + self.config["data_header"] = [self.config["data_header"]] + self.config["data_header"] += [hdrnow] - def read_vec_sysdata(self,): + def read_vec_sysdata(self): # ID: 0x11 = 17 c = self.c if self.debug: - logging.info('Reading vector system data (0x11) ping #{} @ {}...' - .format(self.c, self.pos)) + logging.info( + "Reading vector system data (0x11) ping #{} @ {}...".format( + self.c, self.pos + ) + ) dat = self.data - if self._lastread[:2] == ['vec_checkdata', 'vec_hdr', ]: + if self._lastread[:2] == [ + "vec_checkdata", + "vec_hdr", + ]: self.burst_start[c] = True - if 'time' not in dat['coords']: + if "time" not in dat["coords"]: self._init_data(nortek_defs.vec_sysdata) - self._dtypes += ['vec_sysdata'] + self._dtypes += ["vec_sysdata"] byts = self.read(24) # The first two are size (skip them). - dat['coords']['time'][c] = self.rd_time(byts[2:8]) - ds = dat['sys'] - dv = dat['data_vars'] - (dv['batt'][c], - dv['c_sound'][c], - dv['heading'][c], - dv['pitch'][c], - dv['roll'][c], - dv['temp'][c], - dv['error'][c], - dv['status'][c], - ds['AnaIn'][c]) = unpack(self.endian + '2H3hH2BH', byts[8:]) + dat["coords"]["time"][c] = self.rd_time(byts[2:8]) + ds = dat["sys"] + dv = dat["data_vars"] + ( + dv["batt"][c], + dv["c_sound"][c], + dv["heading"][c], + dv["pitch"][c], + dv["roll"][c], + dv["temp"][c], + dv["error"][c], + dv["status"][c], + ds["AnaIn"][c], + ) = unpack(self.endian + "3H3h2BH", byts[8:]) self.checksum(byts) - def sci_vec_sysdata(self,): + def sci_vec_sysdata(self): """Translate the data in the vec_sysdata structure into scientific units. """ dat = self.data - fs = dat['attrs']['fs'] + fs = dat["attrs"]["fs"] self._sci_data(nortek_defs.vec_sysdata) - t = dat['coords']['time'] - dv = dat['data_vars'] - dat['sys']['_sysi'] = ~np.isnan(t) + t = dat["coords"]["time"] + dv = dat["data_vars"] + dat["sys"]["_sysi"] = ~np.isnan(t) # These are the indices in the sysdata variables # that are not interpolated. - nburst = self.config['n_burst'] - dv['orientation_down'] = tbx._nans(len(t), dtype='bool') + nburst = self.config["n_burst"] + dv["orientation_down"] = tbx._nans(len(t), dtype="bool") if nburst == 0: num_bursts = 1 nburst = len(t) @@ -793,7 +877,7 @@ def sci_vec_sysdata(self,): num_bursts = int(len(t) // nburst + 1) for nb in range(num_bursts): iburst = slice(nb * nburst, (nb + 1) * nburst) - sysi = dat['sys']['_sysi'][iburst] + sysi = dat["sys"]["_sysi"][iburst] if len(sysi) == 0: break # Skip the first entry for the interpolation process @@ -803,242 +887,328 @@ def sci_vec_sysdata(self,): p = np.poly1d(np.polyfit(inds, t[iburst][inds], 1)) t[iburst] = p(arng) elif len(inds) == 1: - t[iburst] = ((arng - inds[0]) / (fs * 3600 * 24) + - t[iburst][inds[0]]) + t[iburst] = (arng - inds[0]) / (fs * 3600 * 24) + t[iburst][inds[0]] else: - t[iburst] = (t[iburst][0] + arng / (fs * 24 * 3600)) + t[iburst] = t[iburst][0] + arng / (fs * 24 * 3600) - tmpd = tbx._nans_like(dv['heading'][iburst]) + tmpd = tbx._nans_like(dv["heading"][iburst]) # The first status bit should be the orientation. - tmpd[sysi] = dv['status'][iburst][sysi] & 1 + tmpd[sysi] = dv["status"][iburst][sysi] & 1 tbx.fillgaps(tmpd, extrapFlg=True) tmpd = np.nan_to_num(tmpd, nan=0) # nans in pitch roll heading slope = np.diff(tmpd) tmpd[1:][slope < 0] = 1 tmpd[:-1][slope > 0] = 0 - dv['orientation_down'][iburst] = tmpd.astype('bool') - tbx.interpgaps(dv['batt'], t) - tbx.interpgaps(dv['c_sound'], t) - tbx.interpgaps(dv['heading'], t) - tbx.interpgaps(dv['pitch'], t) - tbx.interpgaps(dv['roll'], t) - tbx.interpgaps(dv['temp'], t) - - def read_microstrain(self,): - """Read ADV microstrain sensor (IMU) data - """ + dv["orientation_down"][iburst] = tmpd.astype("bool") + tbx.interpgaps(dv["batt"], t) + tbx.interpgaps(dv["c_sound"], t) + tbx.interpgaps(dv["heading"], t) + tbx.interpgaps(dv["pitch"], t) + tbx.interpgaps(dv["roll"], t) + tbx.interpgaps(dv["temp"], t) + + def read_microstrain(self): + """Read ADV microstrain sensor (IMU) data""" + def update_defs(dat, mag=False, orientmat=False): - imu_data = {'accel': ['m s-2', 'Acceleration'], - 'angrt': ['rad s-1', 'Angular Velocity'], - 'mag': ['gauss', 'Compass'], - 'orientmat': ['1', 'Orientation Matrix']} + imu_data = { + "accel": ["m s-2", "Acceleration"], + "angrt": ["rad s-1", "Angular Velocity"], + "mag": ["gauss", "Compass"], + "orientmat": ["1", "Orientation Matrix"], + } for ky in imu_data: - dat['units'].update({ky: imu_data[ky][0]}) - dat['long_name'].update({ky: imu_data[ky][1]}) + dat["units"].update({ky: imu_data[ky][0]}) + dat["long_name"].update({ky: imu_data[ky][1]}) if not mag: - dat['units'].pop('mag') - dat['long_name'].pop('mag') + dat["units"].pop("mag") + dat["long_name"].pop("mag") if not orientmat: - dat['units'].pop('orientmat') - dat['long_name'].pop('orientmat') + dat["units"].pop("orientmat") + dat["long_name"].pop("orientmat") # 0x71 = 113 if self.c == 0: - logging.warning('First "microstrain data" block ' - 'is before first "vector system data" block.') + logging.warning( + 'First "microstrain data" block ' + 'is before first "vector system data" block.' + ) else: self.c -= 1 if self.debug: - logging.info('Reading vector microstrain data (0x71) ping #{} @ {}...' - .format(self.c, self.pos)) + logging.info( + "Reading vector microstrain data (0x71) ping #{} @ {}...".format( + self.c, self.pos + ) + ) byts0 = self.read(4) # The first 2 are the size, 3rd is count, 4th is the id. - ahrsid = unpack(self.endian + '3xB', byts0)[0] - if hasattr(self, '_ahrsid') and self._ahrsid != ahrsid: - logging.warning('AHRS_ID changes mid-file!') + ahrsid = unpack(self.endian + "3xB", byts0)[0] + if hasattr(self, "_ahrsid") and self._ahrsid != ahrsid: + logging.warning("AHRS_ID changes mid-file!") if ahrsid in [195, 204, 210, 211]: self._ahrsid = ahrsid c = self.c dat = self.data - dv = dat['data_vars'] - da = dat['attrs'] - da['has_imu'] = 1 # logical - if 'accel' not in dv: - self._dtypes += ['microstrain'] + dv = dat["data_vars"] + da = dat["attrs"] + da["has_imu"] = 1 # logical + if "accel" not in dv: + self._dtypes += ["microstrain"] if ahrsid == 195: - self._orient_dnames = ['accel', 'angrt', 'orientmat'] - dv['accel'] = tbx._nans((3, self.n_samp_guess), - dtype=np.float32) - dv['angrt'] = tbx._nans((3, self.n_samp_guess), - dtype=np.float32) - dv['orientmat'] = tbx._nans((3, 3, self.n_samp_guess), - dtype=np.float32) - rv = ['accel', 'angrt'] - if not all(x in da['rotate_vars'] for x in rv): - da['rotate_vars'].extend(rv) + self._orient_dnames = ["accel", "angrt", "orientmat"] + dv["accel"] = tbx._nans((3, self.n_samp_guess), dtype=np.float32) + dv["angrt"] = tbx._nans((3, self.n_samp_guess), dtype=np.float32) + dv["orientmat"] = tbx._nans((3, 3, self.n_samp_guess), dtype=np.float32) + rv = ["accel", "angrt"] + if not all(x in da["rotate_vars"] for x in rv): + da["rotate_vars"].extend(rv) update_defs(dat, mag=False, orientmat=True) if ahrsid in [204, 210]: - self._orient_dnames = ['accel', 'angrt', 'mag', 'orientmat'] - dv['accel'] = tbx._nans((3, self.n_samp_guess), - dtype=np.float32) - dv['angrt'] = tbx._nans((3, self.n_samp_guess), - dtype=np.float32) - dv['mag'] = tbx._nans((3, self.n_samp_guess), - dtype=np.float32) - rv = ['accel', 'angrt', 'mag'] - if not all(x in da['rotate_vars'] for x in rv): - da['rotate_vars'].extend(rv) + self._orient_dnames = ["accel", "angrt", "mag", "orientmat"] + dv["accel"] = tbx._nans((3, self.n_samp_guess), dtype=np.float32) + dv["angrt"] = tbx._nans((3, self.n_samp_guess), dtype=np.float32) + dv["mag"] = tbx._nans((3, self.n_samp_guess), dtype=np.float32) + rv = ["accel", "angrt", "mag"] + if not all(x in da["rotate_vars"] for x in rv): + da["rotate_vars"].extend(rv) if ahrsid == 204: - dv['orientmat'] = tbx._nans((3, 3, self.n_samp_guess), - dtype=np.float32) + dv["orientmat"] = tbx._nans( + (3, 3, self.n_samp_guess), dtype=np.float32 + ) update_defs(dat, mag=True, orientmat=True) if ahrsid == 211: - self._orient_dnames = ['angrt', 'accel', 'mag'] - dv['angrt'] = tbx._nans((3, self.n_samp_guess), - dtype=np.float32) - dv['accel'] = tbx._nans((3, self.n_samp_guess), - dtype=np.float32) - dv['mag'] = tbx._nans((3, self.n_samp_guess), - dtype=np.float32) - rv = ['angrt', 'accel', 'mag'] - if not all(x in da['rotate_vars'] for x in rv): - da['rotate_vars'].extend(rv) + self._orient_dnames = ["angrt", "accel", "mag"] + dv["angrt"] = tbx._nans((3, self.n_samp_guess), dtype=np.float32) + dv["accel"] = tbx._nans((3, self.n_samp_guess), dtype=np.float32) + dv["mag"] = tbx._nans((3, self.n_samp_guess), dtype=np.float32) + rv = ["angrt", "accel", "mag"] + if not all(x in da["rotate_vars"] for x in rv): + da["rotate_vars"].extend(rv) update_defs(dat, mag=True, orientmat=False) - byts = '' + byts = "" if ahrsid == 195: # 0xc3 byts = self.read(64) - dt = unpack(self.endian + '6f9f4x', byts) - (dv['angrt'][:, c], - dv['accel'][:, c]) = (dt[0:3], dt[3:6],) - dv['orientmat'][:, :, c] = ((dt[6:9], dt[9:12], dt[12:15])) + dt = unpack(self.endian + "6f9f4x", byts) + (dv["angrt"][:, c], dv["accel"][:, c]) = ( + dt[0:3], + dt[3:6], + ) + dv["orientmat"][:, :, c] = (dt[6:9], dt[9:12], dt[12:15]) elif ahrsid == 204: # 0xcc byts = self.read(78) # This skips the "DWORD" (4 bytes) and the AHRS checksum # (2 bytes) - dt = unpack(self.endian + '18f6x', byts) - (dv['accel'][:, c], - dv['angrt'][:, c], - dv['mag'][:, c]) = (dt[0:3], dt[3:6], dt[6:9],) - dv['orientmat'][:, :, c] = ((dt[9:12], dt[12:15], dt[15:18])) + dt = unpack(self.endian + "18f6x", byts) + (dv["accel"][:, c], dv["angrt"][:, c], dv["mag"][:, c]) = ( + dt[0:3], + dt[3:6], + dt[6:9], + ) + dv["orientmat"][:, :, c] = (dt[9:12], dt[12:15], dt[15:18]) elif ahrsid == 211: byts = self.read(42) - dt = unpack(self.endian + '9f6x', byts) - (dv['angrt'][:, c], - dv['accel'][:, c], - dv['mag'][:, c]) = (dt[0:3], dt[3:6], dt[6:9],) + dt = unpack(self.endian + "9f6x", byts) + (dv["angrt"][:, c], dv["accel"][:, c], dv["mag"][:, c]) = ( + dt[0:3], + dt[3:6], + dt[6:9], + ) else: - logging.warning('Unrecognized IMU identifier: ' + str(ahrsid)) + logging.warning("Unrecognized IMU identifier: " + str(ahrsid)) self.f.seek(-2, 1) return 10 self.checksum(byts0 + byts) self.c += 1 # reset the increment - def sci_microstrain(self,): - """Rotate orientation data into ADV coordinate system. - """ + def sci_microstrain(self): + """Rotate orientation data into ADV coordinate system.""" # MS = MicroStrain - dv = self.data['data_vars'] + dv = self.data["data_vars"] for nm in self._orient_dnames: # Rotate the MS orientation data (in MS coordinate system) # to be consistent with the ADV coordinate system. # (x,y,-z)_ms = (z,y,x)_adv - (dv[nm][2], - dv[nm][0]) = (dv[nm][0], - -dv[nm][2].copy()) - if 'orientmat' in self._orient_dnames: + (dv[nm][2], dv[nm][0]) = (dv[nm][0], -dv[nm][2].copy()) + if "orientmat" in self._orient_dnames: # MS coordinate system is in North-East-Down (NED), # we want East-North-Up (ENU) - dv['orientmat'][:, 2] *= -1 - (dv['orientmat'][:, 0], - dv['orientmat'][:, 1]) = (dv['orientmat'][:, 1], - dv['orientmat'][:, 0].copy()) - if 'accel' in dv: + dv["orientmat"][:, 2] *= -1 + (dv["orientmat"][:, 0], dv["orientmat"][:, 1]) = ( + dv["orientmat"][:, 1], + dv["orientmat"][:, 0].copy(), + ) + if "accel" in dv: # This value comes from the MS 3DM-GX3 MIP manual - dv['accel'] *= 9.80665 + dv["accel"] *= 9.80665 if self._ahrsid in [195, 211]: # These are DAng and DVel, so we convert them to angrt, accel here - dv['angrt'] *= self.config['fs'] - dv['accel'] *= self.config['fs'] + dv["angrt"] *= self.config["fs"] + dv["accel"] *= self.config["fs"] - def read_awac_profile(self,): + def read_awac_profile(self): # ID: '0x20' = 32 dat = self.data if self.debug: - logging.info('Reading AWAC velocity data (0x20) ping #{} @ {}...' - .format(self.c, self.pos)) - nbins = self.config['usr']['n_bins'] - if 'temp' not in dat['data_vars']: + logging.info( + "Reading AWAC velocity data (0x20) ping #{} @ {}...".format( + self.c, self.pos + ) + ) + nbins = self.config["usr"]["n_bins"] + if "temp" not in dat["data_vars"]: self._init_data(nortek_defs.awac_profile) - self._dtypes += ['awac_profile'] + self._dtypes += ["awac_profile"] # Note: docs state there is 'fill' byte at the end, if nbins is odd, # but doesn't appear to be the case - n = self.config['usr']['n_beams'] - byts = self.read(116 + n*3 * nbins) + n = self.config["usr"]["n_beams"] + byts = self.read(116 + n * 3 * nbins) c = self.c - dat['coords']['time'][c] = self.rd_time(byts[2:8]) - ds = dat['sys'] - dv = dat['data_vars'] - (dv['error'][c], - ds['AnaIn1'][c], - dv['batt'][c], - dv['c_sound'][c], - dv['heading'][c], - dv['pitch'][c], - dv['roll'][c], - p_msb, - dv['status'][c], - p_lsw, - dv['temp'][c],) = unpack(self.endian + '7HBB2H', byts[8:28]) - dv['pressure'][c] = (65536 * p_msb + p_lsw) + dat["coords"]["time"][c] = self.rd_time(byts[2:8]) + ds = dat["sys"] + dv = dat["data_vars"] + ( + dv["error"][c], + ds["AnaIn1"][c], + dv["batt"][c], + dv["c_sound"][c], + dv["heading"][c], + dv["pitch"][c], + dv["roll"][c], + p_msb, + dv["status"][c], + p_lsw, + dv["temp"][c], + ) = unpack(self.endian + "5H2hBBHh", byts[8:28]) + dv["pressure"][c] = 65536 * p_msb + p_lsw # The nortek system integrator manual specifies an 88byte 'spare' # field, therefore we start at 116. - tmp = unpack(self.endian + str(n * nbins) + 'h' + - str(n * nbins) + 'B', byts[116:116 + n*3 * nbins]) + tmp = unpack( + self.endian + str(n * nbins) + "h" + str(n * nbins) + "B", + byts[116 : 116 + n * 3 * nbins], + ) for idx in range(n): - dv['vel'][idx, :, c] = tmp[idx * nbins: (idx + 1) * nbins] - dv['amp'][idx, :, c] = tmp[(idx + n) * nbins: (idx + n+1) * nbins] + dv["vel"][idx, :, c] = tmp[idx * nbins : (idx + 1) * nbins] + dv["amp"][idx, :, c] = tmp[(idx + n) * nbins : (idx + n + 1) * nbins] self.checksum(byts) self.c += 1 - def sci_awac_profile(self,): + def sci_awac_profile(self): self._sci_data(nortek_defs.awac_profile) # Calculate the ranges. - cs_coefs = {2000: 0.0239, - 1000: 0.0478, - 600: 0.0797, - 400: 0.1195} + cs_coefs = {2000: 0.0239, 1000: 0.0478, 600: 0.0797, 400: 0.1195} h_ang = 25 * (np.pi / 180) # Head angle is 25 degrees for all awacs. # Cell size - cs = round(float(self.config['bin_length']) / 256. * - cs_coefs[self.config['head']['carrier_freq_kHz']] * np.cos(h_ang), ndigits=2) + cs = round( + float(self.config["bin_length"]) + / 256.0 + * cs_coefs[self.config["head"]["carrier_freq_kHz"]] + * np.cos(h_ang), + ndigits=2, + ) # Blanking distance - bd = round(self.config['blank_dist'] * - 0.0229 * np.cos(h_ang) - cs, ndigits=2) + bd = round(self.config["blank_dist"] * 0.0229 * np.cos(h_ang) - cs, ndigits=2) - r = (np.float32(np.arange(self.config['usr']['n_bins']))+1)*cs + bd - self.data['coords']['range'] = r - self.data['attrs']['cell_size'] = cs - self.data['attrs']['blank_dist'] = bd + r = (np.float32(np.arange(self.config["usr"]["n_bins"])) + 1) * cs + bd + self.data["coords"]["range"] = r + self.data["attrs"]["cell_size"] = cs + self.data["attrs"]["blank_dist"] = bd - def dat2sci(self,): + def read_awac_waves_hdr(self): + # ID: '0x31' + c = self.c + if self.debug: + print( + "Reading vector header data (0x31) ping #{} @ {}...".format( + self.c, self.pos + ) + ) + hdrnow = {} + dat = self.data + ds = dat["sys"] + dv = dat["data_vars"] + if "time" not in dat["coords"]: + self._init_data(nortek_defs.waves_hdrdata) + byts = self.read(56) + # The first two are size, the next 6 are time. + tmp = unpack(self.endian + "8x4H3h2HhH4B6H5h", byts) + dat["coords"]["time"][c] = self.rd_time(byts[2:8]) + hdrnow["n_records_alt"] = tmp[0] + hdrnow["blank_dist_alt"] = tmp[1] # counts + ds["batt_alt"][c] = tmp[2] # voltage (0.1 V) + dv["c_sound_alt"][c] = tmp[3] # c (0.1 m/s) + dv["heading_alt"][c] = tmp[4] # (0.1 deg) + dv["pitch_alt"][c] = tmp[5] # (0.1 deg) + dv["roll_alt"][c] = tmp[6] # (0.1 deg) + dv["pressure1_alt"][c] = tmp[7] # min pressure previous profile (0.001 dbar) + dv["pressure2_alt"][c] = tmp[8] # max pressure previous profile (0.001 dbar) + dv["temp_alt"][c] = tmp[9] # (0.01 deg C) + hdrnow["cell_size_alt"][c] = tmp[10] # (counts of T3) + hdrnow["noise_alt"][c] = tmp[11:15] # noise amplitude beam 1-4 (counts) + hdrnow["proc_magn_alt"][c] = tmp[15:19] # processing magnitude beam 1-4 + hdrnow["n_past_window_alt"] = tmp[ + 19 + ] # number of samples of AST window past boundary + hdrnow["n_window_alt"] = tmp[20] # AST window size (# samples) + hdrnow["Spare1"] = tmp[21:] + self.checksum(byts) + if "data_header" not in self.config: + self.config["data_header"] = hdrnow + else: + if not isinstance(self.config["data_header"], list): + self.config["data_header"] = [self.config["data_header"]] + self.config["data_header"] += [hdrnow] + + def read_awac_waves(self): + """Read awac wave and suv data""" + # IDs: 0x30 & 0x36 + c = self.c + dat = self.data + if self.debug: + print( + "Reading awac wave data (0x30) ping #{} @ {}...".format( + self.c, self.pos + ) + ) + if "dist1_alt" not in dat["data_vars"]: + self._init_data(nortek_defs.wave_data) + self._dtypes += ["wave_data"] + # The first two are size + byts = self.read(20) + ds = dat["sys"] + dv = dat["data_vars"] + ( + dv["pressure"][c], # (0.001 dbar) + dv["dist1_alt"][c], # distance 1 to surface, vertical beam (mm) + ds["AnaIn_alt"][c], # analog input 1 + dv["vel_alt"][0, c], # velocity beam 1 (mm/s) East for SUV + dv["vel_alt"][1, c], # North for SUV + dv["vel_alt"][2, c], # Up for SUV + dv["dist2_alt"][ + c + ], # distance 2 to surface, vertical beam (mm) or vel 4 for non-AST + dv["amp_alt"][0, c], # amplitude beam 1 (counts) + dv["amp_alt"][1, c], # amplitude beam 2 (counts) + dv["amp_alt"][2, c], # amplitude beam 3 (counts) + # AST quality (counts) or amplitude beam 4 for non-AST + dv["quality_alt"][c], + ) = unpack(self.endian + "3H4h4B", byts) + self.checksum(byts) + self.c += 1 + + def dat2sci(self): for nm in self._dtypes: - getattr(self, 'sci_' + nm)() - for nm in ['data_header', 'checkdata']: + getattr(self, "sci_" + nm)() + for nm in ["data_header", "checkdata"]: if nm in self.config and isinstance(self.config[nm], list): self.config[nm] = _recatenate(self.config[nm]) - def __exit__(self, type, value, trace): - self.close() - - def __enter__(self): - return self - def _crop_data(obj, range, n_lastdim): for nm, dat in obj.items(): @@ -1049,12 +1219,11 @@ def _crop_data(obj, range, n_lastdim): def _recatenate(obj): out = type(obj[0])() for ky in list(obj[0].keys()): - if ky in ['__data_groups__', '_type']: + if ky in ["__data_groups__", "_type"]: continue val0 = obj[0][ky] if isinstance(val0, np.ndarray) and val0.size > 1: - out[ky] = np.concatenate([val[ky][..., None] for val in obj], - axis=-1) + out[ky] = np.concatenate([val[ky][..., None] for val in obj], axis=-1) else: out[ky] = np.array([val[ky] for val in obj]) return out diff --git a/mhkit/dolfyn/io/nortek2.py b/mhkit/dolfyn/io/nortek2.py index fe4e3c9e7..fd984a817 100644 --- a/mhkit/dolfyn/io/nortek2.py +++ b/mhkit/dolfyn/io/nortek2.py @@ -14,8 +14,15 @@ from ..time import epoch2dt64, _fill_time_gaps -def read_signature(filename, userdata=True, nens=None, rebuild_index=False, - debug=False, **kwargs): +def read_signature( + filename, + userdata=True, + nens=None, + rebuild_index=False, + debug=False, + dual_profile=False, + **kwargs +): """ Read a Nortek Signature (.ad2cp) datafile @@ -26,13 +33,15 @@ def read_signature(filename, userdata=True, nens=None, rebuild_index=False, userdata : bool To search for and use a .userdata.json or not nens : None, int or 2-element tuple (start, stop) - Number of pings or ensembles to read from the file. + Number of pings or ensembles to read from the file. Default is None, read entire file rebuild_index : bool Force rebuild of dolfyn-written datafile index. Useful for code updates. Default = False debug : bool Logs debugger ouput if true. Default = False + dual_profile : bool + Set to true if instrument is running multiple profiles. Default = False Returns ------- @@ -45,11 +54,13 @@ def read_signature(filename, userdata=True, nens=None, rebuild_index=False, for handler in logging.root.handlers[:]: logging.root.removeHandler(handler) filepath = Path(filename) - logfile = filepath.with_suffix('.dolfyn.log') - logging.basicConfig(filename=str(logfile), - filemode='w', - level=logging.NOTSET, - format='%(name)s - %(levelname)s - %(message)s') + logfile = filepath.with_suffix(".dolfyn.log") + logging.basicConfig( + filename=str(logfile), + filemode="w", + level=logging.NOTSET, + format="%(name)s - %(levelname)s - %(message)s", + ) if nens is None: nens = [0, None] @@ -61,51 +72,58 @@ def read_signature(filename, userdata=True, nens=None, rebuild_index=False, else: # passes: it's a list/tuple/array if n != 2: - raise TypeError('nens must be: None (), int, or len 2') + raise TypeError("nens must be: None (), int, or len 2") userdata = _find_userdata(filename, userdata) - rdr = _Ad2cpReader(filename, rebuild_index=rebuild_index, debug=debug) + rdr = _Ad2cpReader( + filename, rebuild_index=rebuild_index, debug=debug, dual_profile=dual_profile + ) d = rdr.readfile(nens[0], nens[1]) rdr.sci_data(d) + if rdr._dp: + _clean_dp_skips(d) out = _reorg(d) _reduce(out) # Convert time to dt64 and fill gaps - coords = out['coords'] - t_list = [t for t in coords if 'time' in t] + coords = out["coords"] + t_list = [t for t in coords if "time" in t] for ky in t_list: tdat = coords[ky] tdat[tdat == 0] = np.NaN if np.isnan(tdat).any(): - tag = ky.lstrip('time') - warnings.warn("Zero/NaN values found in '{}'. Interpolating and " - "extrapolating them. To identify which values were filled later, " - "look for 0 values in 'status{}'".format(ky, tag)) - tdat = _fill_time_gaps(tdat, sample_rate_hz=out['attrs']['fs']) - coords[ky] = epoch2dt64(tdat).astype('datetime64[ns]') + tag = ky.lstrip("time") + warnings.warn( + "Zero/NaN values found in '{}'. Interpolating and " + "extrapolating them. To identify which values were filled later, " + "look for 0 values in 'status{}'".format(ky, tag) + ) + tdat = _fill_time_gaps(tdat, sample_rate_hz=out["attrs"]["fs"]) + coords[ky] = epoch2dt64(tdat).astype("datetime64[ns]") declin = None for nm in userdata: - if 'dec' in nm: + if "dec" in nm: declin = userdata[nm] else: - out['attrs'][nm] = userdata[nm] + out["attrs"][nm] = userdata[nm] # Create xarray dataset from upper level dictionary ds = _create_dataset(out) ds = _set_coords(ds, ref_frame=ds.coord_sys) - if 'orientmat' not in ds: - ds['orientmat'] = _euler2orient( - ds['time'], ds['heading'], ds['pitch'], ds['roll']) + if "orientmat" not in ds: + ds["orientmat"] = _euler2orient( + ds["time"], ds["heading"], ds["pitch"], ds["roll"] + ) if declin is not None: set_declination(ds, declin, inplace=True) # Convert config dictionary to json string for key in list(ds.attrs.keys()): - if 'config' in key: + if "config" in key: ds.attrs[key] = json.dumps(ds.attrs[key]) # Close handler @@ -114,32 +132,53 @@ def read_signature(filename, userdata=True, nens=None, rebuild_index=False, logging.root.removeHandler(handler) handler.close() - return ds - - -class _Ad2cpReader(): - def __init__(self, fname, endian=None, bufsize=None, rebuild_index=False, - debug=False): + # Return two datasets if dual profile + if rdr._dp: + return split_dp_datasets(ds) + else: + return ds + + +class _Ad2cpReader: + def __init__( + self, + fname, + endian=None, + bufsize=None, + rebuild_index=False, + debug=False, + dual_profile=False, + ): self.fname = fname self.debug = debug self._check_nortek(endian) self.f.seek(0, 2) # Seek to end self._eof = self.f.tell() - self._index = lib.get_index(fname, - reload=rebuild_index, - debug=debug) + self.start_pos = self._check_header() + self._index, self._dp = lib.get_index( + fname, + pos=self.start_pos, + eof=self._eof, + rebuild=rebuild_index, + debug=debug, + dp=dual_profile, + ) self._reopen(bufsize) self.filehead_config = self._read_filehead_config_string() - self._ens_pos = self._index['pos'][lib._boolarray_firstensemble_ping( - self._index)] + self._ens_pos = self._index["pos"][ + lib._boolarray_firstensemble_ping(self._index) + ] self._lastblock_iswhole = self._calc_lastblock_iswhole() self._config = lib._calc_config(self._index) self._init_burst_readers() self.unknown_ID_count = {} - def _calc_lastblock_iswhole(self, ): - blocksize, blocksize_count = np.unique(np.diff(self._ens_pos), - return_counts=True) + def _calc_lastblock_iswhole( + self, + ): + blocksize, blocksize_count = np.unique( + np.diff(self._ens_pos), return_counts=True + ) standard_blocksize = blocksize[blocksize_count.argmax()] return (self._eof - self._ens_pos[-1]) == standard_blocksize @@ -147,17 +186,36 @@ def _check_nortek(self, endian): self._reopen(10) byts = self.f.read(2) if endian is None: - if unpack('<' + 'BB', byts) == (165, 10): - endian = '<' - elif unpack('>' + 'BB', byts) == (165, 10): - endian = '>' + if unpack("<" + "BB", byts) == (165, 10): + endian = "<" + elif unpack(">" + "BB", byts) == (165, 10): + endian = ">" else: raise Exception( "I/O error: could not determine the 'endianness' " "of the file. Are you sure this is a Nortek " - "AD2CP file?") + "AD2CP file?" + ) self.endian = endian + def _check_header(self): + def find_all(s, c): + idx = s.find(c) + while idx != -1: + yield idx + idx = s.find(c, idx + 1) + + # Open the entire file + self._reopen(self._eof) + pk = self.f.peek(1) + # Search for multiple saved headers + found = [i for i in find_all(pk, b"GETCLOCKSTR")] + if len(found) < 2: + return 0 + else: + start_idx = found[-1] - 11 + return start_idx + def _reopen(self, bufsize=None): if bufsize is None: bufsize = 1000000 @@ -165,15 +223,17 @@ def _reopen(self, bufsize=None): self.f.close() except AttributeError: pass - self.f = open(_abspath(self.fname), 'rb', bufsize) + self.f = open(_abspath(self.fname), "rb", bufsize) - def _read_filehead_config_string(self, ): + def _read_filehead_config_string( + self, + ): hdr = self._read_hdr() out = {} - s_id, string = self._read_str(hdr['sz']) - string = string.decode('utf-8') + s_id, string = self._read_str(hdr["sz"]) + string = string.decode("utf-8") for ln in string.splitlines(): - ky, val = ln.split(',', 1) + ky, val = ln.split(",", 1) if ky in out: # There are more than one of this key if not isinstance(out[ky], list): @@ -185,11 +245,11 @@ def _read_filehead_config_string(self, ): out[ky] = val out2 = {} for ky in out: - if ky.startswith('GET'): + if ky.startswith("GET"): dat = out[ky] - d = out2[ky.lstrip('GET')] = dict() - for itm in dat.split(','): - k, val = itm.split('=') + d = out2[ky.lstrip("GET")] = dict() + for itm in dat.split(","): + k, val = itm.split("=") try: val = int(val) except ValueError: @@ -202,43 +262,60 @@ def _read_filehead_config_string(self, ): out2[ky] = out[ky] return out2 - def _init_burst_readers(self, ): + def _init_burst_readers( + self, + ): self._burst_readers = {} for rdr_id, cfg in self._config.items(): if rdr_id == 28: self._burst_readers[rdr_id] = defs._calc_echo_struct( - cfg['_config'], cfg['n_cells']) + cfg["_config"], cfg["n_cells"] + ) elif rdr_id == 23: self._burst_readers[rdr_id] = defs._calc_bt_struct( - cfg['_config'], cfg['n_beams']) + cfg["_config"], cfg["n_beams"] + ) else: self._burst_readers[rdr_id] = defs._calc_burst_struct( - cfg['_config'], cfg['n_beams'], cfg['n_cells']) + cfg["_config"], cfg["n_beams"], cfg["n_cells"] + ) def init_data(self, ens_start, ens_stop): outdat = {} nens = int(ens_stop - ens_start) - n26 = ((self._index['ID'] == 26) & - (self._index['ens'] >= ens_start) & - (self._index['ens'] < ens_stop)).sum() + + # ID 26 and 31 recorded infrequently + def n_id(id): + return ( + (self._index["ID"] == id) + & (self._index["ens"] >= ens_start) + & (self._index["ens"] < ens_stop) + ).sum() + + n_altraw = {26: n_id(26), 31: n_id(31)} + if not n_altraw[26] and 26 in self._burst_readers: + self._burst_readers.pop(26) + if not n_altraw[31] and 31 in self._burst_readers: + self._burst_readers.pop(31) + for ky in self._burst_readers: - if ky == 26: - n = n26 - ens = np.zeros(n, dtype='uint32') + if (ky == 26) or (ky == 31): + n = n_altraw[ky] + ens = np.zeros(n, dtype="uint32") else: - ens = np.arange(ens_start, - ens_stop).astype('uint32') + ens = np.arange(ens_start, ens_stop).astype("uint32") n = nens outdat[ky] = self._burst_readers[ky].init_data(n) - outdat[ky]['ensemble'] = ens - outdat[ky]['units'] = self._burst_readers[ky].data_units() - outdat[ky]['long_name'] = self._burst_readers[ky].data_longnames() - outdat[ky]['standard_name'] = self._burst_readers[ky].data_stdnames() + outdat[ky]["ensemble"] = ens + outdat[ky]["units"] = self._burst_readers[ky].data_units() + outdat[ky]["long_name"] = self._burst_readers[ky].data_longnames() + outdat[ky]["standard_name"] = self._burst_readers[ky].data_stdnames() + return outdat def _read_hdr(self, do_cs=False): res = defs.header.read2dict(self.f, cs=do_cs) - if res['sync'] != 165: + if res["sync"] != 165: raise Exception("Out of sync!") return res @@ -262,27 +339,30 @@ def readfile(self, ens_start=0, ens_stop=None): ens_stop = int(ens_stop) nens = ens_stop - ens_start outdat = self.init_data(ens_start, ens_stop) - outdat['filehead_config'] = self.filehead_config - print('Reading file %s ...' % self.fname) + outdat["filehead_config"] = self.filehead_config + print("Reading file %s ..." % self.fname) c = 0 - c26 = 0 + c_altraw = {26: 0, 31: 0} self.f.seek(self._ens_pos[ens_start], 0) while True: try: hdr = self._read_hdr() except IOError: return outdat - id = hdr['id'] - if id in [21, 22, 23, 24, 28]: # vel, bt, vel_b5, echo + id = hdr["id"] + if id in [21, 22, 23, 24, 28]: # "burst data record" (vel + ast), + # "avg data record" (vel_avg + ast_avg), "bottom track data record" (bt), + # "interleaved burst data record" (vel_b5), "echosounder record" (echo) self._read_burst(id, outdat[id], c) - elif id in [26]: # alt_raw (altimeter burst) - rdr = self._burst_readers[26] - if not hasattr(rdr, '_nsamp_index'): + elif id in [26, 31]: + # "burst altimeter raw record" (_altraw), "avg altimeter raw record" (_altraw_avg) + rdr = self._burst_readers[id] + if not hasattr(rdr, "_nsamp_index"): first_pass = True - tmp_idx = rdr._nsamp_index = rdr._names.index('altraw_nsamp') # noqa + tmp_idx = rdr._nsamp_index = rdr._names.index("nsamp_alt") shift = rdr._nsamp_shift = calcsize( - defs._format(rdr._format[:tmp_idx], - rdr._N[:tmp_idx])) + defs._format(rdr._format[:tmp_idx], rdr._N[:tmp_idx]) + ) else: first_pass = False tmp_idx = rdr._nsamp_index @@ -290,50 +370,53 @@ def readfile(self, ens_start=0, ens_stop=None): tmp_idx = tmp_idx + 2 # Don't add in-place self.f.seek(shift, 1) # Now read the num_samples - sz = unpack('= _posnow): + while self.f.tell() >= _posnow: c += 1 if c + ens_start + 1 >= nens_total: # Again check end of count list @@ -375,15 +457,42 @@ def sci_data(self, dat): continue rdr = self._burst_readers[id] rdr.sci_data(dnow) - if 'vel' in dnow and 'vel_scale' in dnow: - dnow['vel'] = (dnow['vel'] * - 10.0 ** dnow['vel_scale']).astype('float32') - - def __exit__(self, type, value, trace,): - self.f.close() - - def __enter__(self,): - return self + if "vel" in dnow and "vel_scale" in dnow: + dnow["vel"] = (dnow["vel"] * 10.0 ** dnow["vel_scale"]).astype( + "float32" + ) + + +def _altraw_reorg(outdat, tag=""): + """Submethod for `_reorg` particular to raw altimeter pings (ID 26 and 31)""" + for ky in list(outdat["data_vars"]): + if ky.endswith("raw" + tag) and not ky.endswith("_altraw" + tag): + outdat["data_vars"].pop(ky) + outdat["coords"]["time_altraw" + tag] = outdat["coords"].pop("timeraw" + tag) + # convert "signed fractional" to float + outdat["data_vars"]["samp_altraw" + tag] = ( + outdat["data_vars"]["samp_altraw" + tag].astype("float32") / 2**8 + ) + + # Read altimeter status + outdat["data_vars"].pop("status_altraw" + tag) + status_alt = lib._alt_status2data(outdat["data_vars"]["status_alt" + tag]) + for ky in status_alt: + outdat["attrs"][ky + tag] = lib._collapse( + status_alt[ky].astype("uint8"), name=ky + ) + outdat["data_vars"].pop("status_alt" + tag) + + # Power level index + power = {0: "high", 1: "med-high", 2: "med-low", 3: "low"} + outdat["attrs"]["power_level_alt" + tag] = power[ + outdat["attrs"].pop("power_level_idx_alt" + tag) + ] + + # Other attrs + for ky in list(outdat["attrs"]): + if ky.endswith("raw" + tag): + outdat["attrs"][ky.split("raw")[0] + "_alt" + tag] = outdat["attrs"].pop(ky) def _reorg(dat): @@ -392,17 +501,31 @@ def _reorg(dat): (organized by ID), and combines them into a single dictionary. """ - outdat = {'data_vars': {}, 'coords': {}, 'attrs': {}, - 'units': {}, 'long_name': {}, 'standard_name': {}, - 'sys': {}, 'altraw': {}} - cfg = outdat['attrs'] - cfh = cfg['filehead_config'] = dat['filehead_config'] - cfg['inst_model'] = (cfh['ID'].split(',')[0][5:-1]) - cfg['inst_make'] = 'Nortek' - cfg['inst_type'] = 'ADCP' - - for id, tag in [(21, ''), (22, '_avg'), (23, '_bt'), - (24, '_b5'), (26, '_ast'), (28, '_echo')]: + outdat = { + "data_vars": {}, + "coords": {}, + "attrs": {}, + "units": {}, + "long_name": {}, + "standard_name": {}, + "sys": {}, + "altraw": {}, + } + cfg = outdat["attrs"] + cfh = cfg["filehead_config"] = dat["filehead_config"] + cfg["inst_model"] = cfh["ID"].split(",")[0][5:-1] + cfg["inst_make"] = "Nortek" + cfg["inst_type"] = "ADCP" + + for id, tag in [ + (21, ""), + (22, "_avg"), + (23, "_bt"), + (24, "_b5"), + (26, "raw"), + (28, "_echo"), + (31, "raw_avg"), + ]: if id in [24, 26]: collapse_exclude = [0] else: @@ -410,211 +533,322 @@ def _reorg(dat): if id not in dat: continue dnow = dat[id] - outdat['units'].update(dnow['units']) - outdat['long_name'].update(dnow['long_name']) - for ky in dnow['units']: - if not dnow['standard_name'][ky]: - dnow['standard_name'].pop(ky) - outdat['standard_name'].update(dnow['standard_name']) - cfg['burst_config' + tag] = lib._headconfig_int2dict( - lib._collapse(dnow['config'], exclude=collapse_exclude, - name='config')) - outdat['coords']['time' + tag] = lib._calc_time( - dnow['year'] + 1900, - dnow['month'], - dnow['day'], - dnow['hour'], - dnow['minute'], - dnow['second'], - dnow['usec100'].astype('uint32') * 100) + outdat["units"].update(dnow["units"]) + outdat["long_name"].update(dnow["long_name"]) + for ky in dnow["units"]: + if not dnow["standard_name"][ky]: + dnow["standard_name"].pop(ky) + outdat["standard_name"].update(dnow["standard_name"]) + cfg["burst_config" + tag] = lib._headconfig_int2dict( + lib._collapse(dnow["config"], exclude=collapse_exclude, name="config") + ) + outdat["coords"]["time" + tag] = lib._calc_time( + dnow["year"] + 1900, + dnow["month"], + dnow["day"], + dnow["hour"], + dnow["minute"], + dnow["second"], + dnow["usec100"].astype("uint32") * 100, + ) tmp = lib._beams_cy_int2dict( - lib._collapse(dnow['beam_config'], exclude=collapse_exclude, - name='beam_config'), 21) - cfg['n_cells' + tag] = tmp['n_cells'] - cfg['coord_sys_axes' + tag] = tmp['cy'] - cfg['n_beams' + tag] = tmp['n_beams'] - cfg['ambig_vel' + - tag] = lib._collapse(dnow['ambig_vel'], name='ambig_vel') - - for ky in ['SerialNum', 'cell_size', 'blank_dist', 'nominal_corr', - 'power_level_dB']: - cfg[ky + tag] = lib._collapse(dnow[ky], - exclude=collapse_exclude, - name=ky) - - for ky in ['c_sound', 'temp', 'pressure', 'heading', 'pitch', 'roll', - 'mag', 'accel', 'batt', 'temp_clock', 'error', - 'status', 'ensemble', - ]: - outdat['data_vars'][ky + tag] = dnow[ky] - if 'ensemble' in ky: - outdat['data_vars'][ky + tag] += 1 - outdat['units'][ky + tag] = '#' - outdat['long_name'][ky + tag] = 'Ensemble Number' - outdat['standard_name'][ky + tag] = 'number_of_observations' - - for ky in ['vel', 'amp', 'corr', 'prcnt_gd', 'echo', 'dist', - 'orientmat', 'angrt', 'quaternions', 'ast_pressure', - 'alt_dist', 'alt_quality', 'alt_status', - 'ast_dist', 'ast_quality', 'ast_offset_time', - 'altraw_nsamp', 'altraw_dsamp', 'altraw_samp', - 'status0', 'fom', 'temp_press', 'press_std', - 'pitch_std', 'roll_std', 'heading_std', 'xmit_energy', - ]: + lib._collapse( + dnow["beam_config"], exclude=collapse_exclude, name="beam_config" + ), + 21, # always 21 here + ) + cfg["n_cells" + tag] = tmp["n_cells"] + cfg["coord_sys_axes" + tag] = tmp["cy"] + cfg["n_beams" + tag] = tmp["n_beams"] + cfg["ambig_vel" + tag] = lib._collapse(dnow["ambig_vel"], name="ambig_vel") + + for ky in [ + "SerialNum", + "cell_size", + "blank_dist", + "nominal_corr", + "power_level_dB", + ]: + cfg[ky + tag] = lib._collapse(dnow[ky], exclude=collapse_exclude, name=ky) + + for ky in [ + "c_sound", + "temp", + "pressure", + "heading", + "pitch", + "roll", + "mag", + "accel", + "batt", + "temp_clock", + "error", + "status", + "ensemble", + ]: + outdat["data_vars"][ky + tag] = dnow[ky] + if "ensemble" in ky: + outdat["data_vars"][ky + tag] += 1 + outdat["units"][ky + tag] = "#" + outdat["long_name"][ky + tag] = "Ensemble Number" + outdat["standard_name"][ky + tag] = "number_of_observations" + + for ky in [ + "vel", + "amp", + "corr", + "prcnt_gd", + "echo", + "dist", + "orientmat", + "angrt", + "quaternions", + "pressure_alt", + "le_dist_alt", + "le_quality_alt", + "status_alt", + "ast_dist_alt", + "ast_quality_alt", + "ast_offset_time_alt", + "nsamp_alt", + "dsamp_alt", + "samp_alt", + "status0", + "fom", + "temp_press", + "press_std", + "pitch_std", + "roll_std", + "heading_std", + "xmit_energy", + ]: if ky in dnow: - outdat['data_vars'][ky + tag] = dnow[ky] + outdat["data_vars"][ky + tag] = dnow[ky] # Move 'altimeter raw' data to its own down-sampled structure if 26 in dat: - ard = outdat['altraw'] - for ky in list(outdat['data_vars']): - if ky.endswith('_ast'): - grp = ky.split('.')[0] - if '.' in ky and grp not in ard: - ard[grp] = {} - ard[ky.rstrip('_ast')] = outdat['data_vars'].pop(ky) - - # Read altimeter status - alt_status = lib._alt_status2data(outdat['data_vars']['alt_status']) - for ky in alt_status: - outdat['attrs'][ky] = lib._collapse( - alt_status[ky].astype('uint8'), name=ky) - outdat['data_vars'].pop('alt_status') - - # Power level index - power = {0: 'high', 1: 'med-high', 2: 'med-low', 3: 'low'} - outdat['attrs']['power_level_alt'] = power[outdat['attrs'].pop( - 'power_level_idx_alt')] + _altraw_reorg(outdat) + if 31 in dat: + _altraw_reorg(outdat, tag="_avg") # Read status data - status0_vars = [x for x in outdat['data_vars'] if 'status0' in x] + status0_vars = [x for x in outdat["data_vars"] if "status0" in x] # Status data is the same across all tags, and there is always a 'status' and 'status0' status0_key = status0_vars[0] - status0_data = lib._status02data(outdat['data_vars'][status0_key]) - status_key = status0_key.replace('0', '') - status_data = lib._status2data(outdat['data_vars'][status_key]) + status0_data = lib._status02data(outdat["data_vars"][status0_key]) + status_key = status0_key.replace("0", "") + status_data = lib._status2data(outdat["data_vars"][status_key]) # Individual status codes # Wake up state - wake = {0: 'bad power', 1: 'power on', 2: 'break', 3: 'clock'} - outdat['attrs']['wakeup_state'] = wake[lib._collapse( - status_data.pop('wakeup_state'), name=ky)] + wake = {0: "bad power", 1: "power on", 2: "break", 3: "clock"} + outdat["attrs"]["wakeup_state"] = wake[ + lib._collapse(status_data.pop("wakeup_state"), name=ky) + ] # Instrument direction # 0: XUP, 1: XDOWN, 2: YUP, 3: YDOWN, 4: ZUP, 5: ZDOWN, # 7: AHRS, handle as ZUP - nortek_orient = {0: 'horizontal', 1: 'horizontal', 2: 'horizontal', - 3: 'horizontal', 4: 'up', 5: 'down', 7: 'AHRS'} - outdat['attrs']['orientation'] = nortek_orient[lib._collapse( - status_data.pop('orient_up'), name='orientation')] + nortek_orient = { + 0: "horizontal", + 1: "horizontal", + 2: "horizontal", + 3: "horizontal", + 4: "up", + 5: "down", + 7: "AHRS", + } + outdat["attrs"]["orientation"] = nortek_orient[ + lib._collapse(status_data.pop("orient_up"), name="orientation") + ] # Orientation detection - orient_status = {0: 'fixed', 1: 'auto_UD', 3: 'AHRS-3D'} - outdat['attrs']['orient_status'] = orient_status[lib._collapse( - status_data.pop('auto_orientation'), name='orient_status')] + orient_status = {0: "fixed", 1: "auto_UD", 3: "AHRS-3D"} + outdat["attrs"]["orient_status"] = orient_status[ + lib._collapse(status_data.pop("auto_orientation"), name="orient_status") + ] # Status variables - for ky in ['low_volt_skip', 'active_config', 'telemetry_data', 'boost_running']: - outdat['data_vars'][ky] = status_data[ky].astype('uint8') + for ky in ["low_volt_skip", "active_config", "telemetry_data", "boost_running"]: + outdat["data_vars"][ky] = status_data[ky].astype("uint8") # Processor idle state - need to save as 1/0 per netcdf attribute limitations for ky in status0_data: - outdat['attrs'][ky] = lib._collapse( - status0_data[ky].astype('uint8'), name=ky) + outdat["attrs"][ky] = lib._collapse(status0_data[ky].astype("uint8"), name=ky) - # Remove status0 variables - keep status variables as they useful for finding missing pings - [outdat['data_vars'].pop(var) for var in status0_vars] + # Remove status0 variables - keep status variables as they are useful for finding missing pings + [outdat["data_vars"].pop(var) for var in status0_vars] # Set coordinate system if 21 not in dat: - cfg['rotate_vars'] = [] - cy = cfg['coord_sys_axes_avg'] + cfg["rotate_vars"] = [] + cy = cfg["coord_sys_axes_avg"] else: - cfg['rotate_vars'] = ['vel', ] - cy = cfg['coord_sys_axes'] - outdat['attrs']['coord_sys'] = {'XYZ': 'inst', - 'ENU': 'earth', - 'beam': 'beam'}[cy] + cfg["rotate_vars"] = [ + "vel", + ] + cy = cfg["coord_sys_axes"] + outdat["attrs"]["coord_sys"] = {"XYZ": "inst", "ENU": "earth", "beam": "beam"}[cy] # Copy appropriate vars to rotate_vars - for ky in ['accel', 'angrt', 'mag']: - for dky in outdat['data_vars'].keys(): - if dky == ky or dky.startswith(ky + '_'): - outdat['attrs']['rotate_vars'].append(dky) - if 'vel_bt' in outdat['data_vars']: - outdat['attrs']['rotate_vars'].append('vel_bt') - if 'vel_avg' in outdat['data_vars']: - outdat['attrs']['rotate_vars'].append('vel_avg') + for ky in ["accel", "angrt", "mag"]: + for dky in outdat["data_vars"].keys(): + if dky == ky or dky.startswith(ky + "_"): + outdat["attrs"]["rotate_vars"].append(dky) + if "vel_bt" in outdat["data_vars"]: + outdat["attrs"]["rotate_vars"].append("vel_bt") + if "vel_avg" in outdat["data_vars"]: + outdat["attrs"]["rotate_vars"].append("vel_avg") return outdat +def _clean_dp_skips(data): + """ + Removes zeros from interwoven measurements taken in a dual profile + configuration. + """ + + for id in data: + if id == "filehead_config": + continue + # Check where 'ver' is zero (should be 1 (for bt) or 3 (everything else)) + skips = np.where(data[id]["ver"] != 0) + for var in data[id]: + if var not in ["units", "long_name", "standard_name"]: + data[id][var] = np.squeeze(data[id][var][..., skips], axis=-2) + + def _reduce(data): - """This function takes the output from `reorg`, and further simplifies the + """ + This function takes the output from `reorg`, and further simplifies the data. Mostly this is combining system, environmental, and orientation data --- from different data structures within the same ensemble --- by averaging. """ - - dv = data['data_vars'] - dc = data['coords'] - da = data['attrs'] + + dv = data["data_vars"] + dc = data["coords"] + da = data["attrs"] # Average these fields - for ky in ['c_sound', 'temp', 'pressure', - 'temp_press', 'temp_clock', 'batt']: - lib._reduce_by_average(dv, ky, ky + '_b5') + for ky in ["c_sound", "temp", "pressure", "temp_press", "temp_clock", "batt"]: + lib._reduce_by_average(dv, ky, ky + "_b5") # Angle-averaging is treated separately - for ky in ['heading', 'pitch', 'roll']: - lib._reduce_by_average_angle(dv, ky, ky + '_b5') - - if 'vel' in dv: - dc['range'] = ((np.arange(dv['vel'].shape[1])+1) * - da['cell_size'] + - da['blank_dist']) - da['fs'] = da['filehead_config']['BURST']['SR'] - tmat = da['filehead_config']['XFBURST'] - if 'vel_avg' in dv: - dc['range_avg'] = ((np.arange(dv['vel_avg'].shape[1])+1) * - da['cell_size_avg'] + - da['blank_dist_avg']) - dv['orientmat'] = dv.pop('orientmat_avg') - tmat = da['filehead_config']['XFAVG'] - da['fs'] = da['filehead_config']['PLAN']['MIAVG'] - da['avg_interval_sec'] = da['filehead_config']['AVG']['AI'] - da['bandwidth'] = da['filehead_config']['AVG']['BW'] - if 'vel_b5' in dv: - dc['range_b5'] = ((np.arange(dv['vel_b5'].shape[1])+1) * - da['cell_size_b5'] + - da['blank_dist_b5']) - if 'echo_echo' in dv: - dv['echo'] = dv.pop('echo_echo') - dc['range_echo'] = ((np.arange(dv['echo'].shape[0])+1) * - da['cell_size_echo'] + - da['blank_dist_echo']) - - if 'orientmat' in data['data_vars']: - da['has_imu'] = 1 # logical + for ky in ["heading", "pitch", "roll"]: + lib._reduce_by_average_angle(dv, ky, ky + "_b5") + + if "vel" in dv: + dc["range"] = (np.arange(dv["vel"].shape[1]) + 1) * da["cell_size"] + da[ + "blank_dist" + ] + da["fs"] = da["filehead_config"]["BURST"]["SR"] + tmat = da["filehead_config"]["XFBURST"] + if "vel_avg" in dv: + dc["range_avg"] = (np.arange(dv["vel_avg"].shape[1]) + 1) * da[ + "cell_size_avg" + ] + da["blank_dist_avg"] + if "orientmat" not in dv: + dv["orientmat"] = dv.pop("orientmat_avg") + tmat = da["filehead_config"]["XFAVG"] + da["fs"] = da["filehead_config"]["PLAN"]["MIAVG"] + da["avg_interval_sec"] = da["filehead_config"]["AVG"]["AI"] + da["bandwidth"] = da["filehead_config"]["AVG"]["BW"] + if "vel_b5" in dv: + # vel_b5 is sometimes shape 2 and sometimes shape 3 + dc["range_b5"] = (np.arange(dv["vel_b5"].shape[-2]) + 1) * da[ + "cell_size_b5" + ] + da["blank_dist_b5"] + if "echo_echo" in dv: + dv["echo"] = dv.pop("echo_echo") + dc["range_echo"] = (np.arange(dv["echo"].shape[0]) + 1) * da[ + "cell_size_echo" + ] + da["blank_dist_echo"] + + if "orientmat" in data["data_vars"]: + da["has_imu"] = 1 # logical # Signature AHRS rotation matrix returned in "inst->earth" # Change to dolfyn's "earth->inst" - dv['orientmat'] = np.rollaxis(dv['orientmat'], 1) + dv["orientmat"] = np.rollaxis(dv["orientmat"], 1) else: - da['has_imu'] = 0 - - theta = da['filehead_config']['BEAMCFGLIST'][0] - if 'THETA=' in theta: - da['beam_angle'] = int(theta[13:15]) - - tm = np.zeros((tmat['ROWS'], tmat['COLS']), dtype=np.float32) - for irow in range(tmat['ROWS']): - for icol in range(tmat['COLS']): - tm[irow, icol] = tmat['M' + str(irow + 1) + str(icol + 1)] - dv['beam2inst_orientmat'] = tm + da["has_imu"] = 0 + + theta = da["filehead_config"]["BEAMCFGLIST"][0] + if "THETA=" in theta: + da["beam_angle"] = int(theta[13:15]) + + tm = np.zeros((tmat["ROWS"], tmat["COLS"]), dtype=np.float32) + for irow in range(tmat["ROWS"]): + for icol in range(tmat["COLS"]): + tm[irow, icol] = tmat["M" + str(irow + 1) + str(icol + 1)] + dv["beam2inst_orientmat"] = tm # If burst velocity isn't used, need to copy one for 'time' - if 'time' not in dc: + if "time" not in dc: for val in dc: - if 'time' in val: + if "time" in val: time = val - dc['time'] = dc[time] + dc["time"] = dc[time] + + +def split_dp_datasets(ds): + """ + Splits a dataset containing dual profiles into individual profiles + """ + + # Figure out which variables belong to which profile based on length of time variables + t_dict = {} + for t in ds.coords: + if "time" in t: + t_dict[t] = ds[t].size + + other_coords = [] + for key, val in t_dict.items(): + if val != t_dict["time"]: + if key.endswith("altraw"): + # altraw goes with burst, altraw_avg goes with avg + continue + other_coords.append(key) + # Fetch variables, coordinates, and attrs for second profiling configuration + other_vars = [ + v for v in ds.data_vars if any(x in ds[v].coords for x in other_coords) + ] + other_tags = [s.split("_")[-1] for s in other_coords] + other_coords += [v for v in ds.coords if any(x in v for x in other_tags)] + other_attrs = [s for s in ds.attrs if any(x in s for x in other_tags)] + critical_attrs = [ + "inst_model", + "inst_make", + "inst_type", + "fs", + "orientation", + "orient_status", + "has_imu", + "beam_angle", + ] + + # Create second dataset + ds2 = type(ds)() + for a in other_attrs + critical_attrs: + ds2.attrs[a] = ds.attrs[a] + for v in other_vars: + ds2[v] = ds[v] + # Set rotate_vars + rotate_vars2 = [v for v in ds.attrs["rotate_vars"] if v in other_vars] + ds2.attrs["rotate_vars"] = rotate_vars2 + # Set orientation matricies + ds2["beam2inst_orientmat"] = ds["beam2inst_orientmat"] + ds2 = ds2.rename({"orientmat_" + other_tags[0]: "orientmat"}) + # Set original coordinate system + cy = ds2.attrs["coord_sys_axes_" + other_tags[0]] + ds2.attrs["coord_sys"] = {"XYZ": "inst", "ENU": "earth", "beam": "beam"}[cy] + ds2 = _set_coords(ds2, ref_frame=ds2.coord_sys) + + # Clean up first dataset + [ds.attrs.pop(ky) for ky in other_attrs] + ds = ds.drop_vars(other_vars + other_coords) + for itm in rotate_vars2: + ds.attrs["rotate_vars"].remove(itm) + + return ds, ds2 diff --git a/mhkit/dolfyn/io/nortek2_defs.py b/mhkit/dolfyn/io/nortek2_defs.py index 6b9b1d8f2..82723545c 100644 --- a/mhkit/dolfyn/io/nortek2_defs.py +++ b/mhkit/dolfyn/io/nortek2_defs.py @@ -4,15 +4,15 @@ from . import nortek2_lib as lib -dt32 = 'float32' +dt32 = "float32" grav = 9.81 # The starting value for the checksum: -cs0 = int('0xb58c', 0) +cs0 = int("0xb58c", 0) def _nans(*args, **kwargs): out = np.empty(*args, **kwargs) - if out.dtype.kind == 'f': + if out.dtype.kind == "f": out[:] = np.NaN else: out[:] = 0 @@ -20,15 +20,15 @@ def _nans(*args, **kwargs): def _format(form, N): - out = '' + out = "" for f, n in zip(form, N): if n > 1: - out += '{}'.format(n) + out += "{}".format(n) out += f return out -class _DataDef(): +class _DataDef: def __init__(self, list_of_defs): self._names = [] self._format = [] @@ -46,22 +46,22 @@ def __init__(self, list_of_defs): if len(itm) > 4: self._units.append(itm[4]) else: - self._units.append('1') + self._units.append("1") if len(itm) > 5: self._long_name.append(itm[5]) else: - self._long_name.append('') + self._long_name.append("") if len(itm) > 6: self._standard_name.append(itm[6]) else: - self._standard_name.append('') + self._standard_name.append("") if itm[2] == []: self._N.append(1) else: self._N.append(int(np.prod(itm[2]))) - self._struct = Struct('<' + self.format) + self._struct = Struct("<" + self.format) self.nbyte = self._struct.size - self._cs_struct = Struct('<' + '{}H'.format(int(self.nbyte // 2))) + self._cs_struct = Struct("<" + "{}H".format(int(self.nbyte // 2))) def init_data(self, npings): out = {} @@ -80,7 +80,9 @@ def read_into(self, fobj, data, ens, cs=None): data[nm][..., ens] = np.asarray(d).reshape(shp) @property - def format(self, ): + def format( + self, + ): return _format(self._format, self._N) def read(self, fobj, cs=None): @@ -99,24 +101,22 @@ def read(self, fobj, cs=None): off = cs0 cs_res = sum(self._cs_struct.unpack(bytes)) + off if csval is not False and (cs_res % 65536) != csval: - raise Exception('Checksum failed!') + raise Exception("Checksum failed!") out = [] c = 0 for idx, n in enumerate(self._N): if n == 1: out.append(data[c]) else: - out.append(data[c:(c + n)]) + out.append(data[c : (c + n)]) c += n return out def read2dict(self, fobj, cs=False): - return {self._names[idx]: dat - for idx, dat in enumerate(self.read(fobj, cs=cs))} + return {self._names[idx]: dat for idx, dat in enumerate(self.read(fobj, cs=cs))} def sci_data(self, data): - for ky, func in zip(self._names, - self._sci_func): + for ky, func in zip(self._names, self._sci_func): if func is None: continue data[ky] = func(data[ky]) @@ -140,7 +140,7 @@ def data_stdnames(self): return stdnms -class _LinFunc(): +class _LinFunc: """A simple linear offset and scaling object. Usage: @@ -165,129 +165,248 @@ def __call__(self, array): return array -header = _DataDef([ - ('sync', 'B', [], None), - ('hsz', 'B', [], None), - ('id', 'B', [], None), - ('fam', 'B', [], None), - ('sz', 'H', [], None), - ('cs', 'H', [], None), - ('hcs', 'H', [], None), -]) +header = _DataDef( + [ + ("sync", "B", [], None), + ("hsz", "B", [], None), + ("id", "B", [], None), + ("fam", "B", [], None), + ("sz", "H", [], None), + ("cs", "H", [], None), + ("hcs", "H", [], None), + ] +) _burst_hdr = [ - ('ver', 'B', [], None), - ('DatOffset', 'B', [], None), - ('config', 'H', [], None), - ('SerialNum', 'I', [], None), - ('year', 'B', [], None), - ('month', 'B', [], None), - ('day', 'B', [], None), - ('hour', 'B', [], None), - ('minute', 'B', [], None), - ('second', 'B', [], None), - ('usec100', 'H', [], None), - ('c_sound', 'H', [], _LinFunc(0.1, dtype=dt32), 'm s-1', - 'Speed of Sound', 'speed_of_sound_in_sea_water'), - ('temp', 'H', [], _LinFunc(0.01, dtype=dt32), - 'degree_C', 'Temperature', 'sea_water_temperature'), - ('pressure', 'I', [], _LinFunc(0.001, dtype=dt32), - 'dbar', 'Pressure', 'sea_water_pressure'), - ('heading', 'H', [], _LinFunc(0.01, dtype=dt32), - 'degree', 'Heading', 'platform_orientation'), - ('pitch', 'h', [], _LinFunc(0.01, dtype=dt32), - 'degree', 'Pitch', 'platform_pitch'), - ('roll', 'h', [], _LinFunc(0.01, dtype=dt32), 'degree', 'Roll', 'platform_roll'), - ('beam_config', 'H', [], None), - ('cell_size', 'H', [], _LinFunc(0.001), 'm'), - ('blank_dist', 'H', [], _LinFunc(0.01), 'm'), - ('nominal_corr', 'B', [], None, '%'), - ('temp_press', 'B', [], _LinFunc(0.2, -20, dtype=dt32), - 'degree_C', 'Pressure Sensor Temperature'), - ('batt', 'H', [], _LinFunc(0.1, dtype=dt32), - 'V', 'Battery Voltage', 'battery_voltage'), - ('mag', 'h', [3], _LinFunc(0.1, dtype=dt32), 'uT', 'Compass'), - ('accel', 'h', [3], _LinFunc(1. / 16384 * grav, dtype=dt32), - 'm s-2', 'Acceleration'), - ('ambig_vel', 'h', [], _LinFunc(0.001, dtype=dt32), 'm s-1'), - ('data_desc', 'H', [], None), - ('xmit_energy', 'H', [], None, 'dB', 'Sound Pressure Level of Acoustic Signal'), - ('vel_scale', 'b', [], None), - ('power_level_dB', 'b', [], _LinFunc(dtype=dt32), 'dB', 'Power Level'), - ('temp_mag', 'h', [], None), # uncalibrated - ('temp_clock', 'h', [], _LinFunc(0.01, dtype=dt32), - 'degree_C', 'Internal Clock Temperature'), - ('error', 'H', [], None, '1', 'Error Code'), - ('status0', 'H', [], None, '1', 'Status 0 Code'), - ('status', 'I', [], None, '1', 'Status Code'), - ('_ensemble', 'I', [], None), + ("ver", "B", [], None), + ("DatOffset", "B", [], None), + ("config", "H", [], None), + ("SerialNum", "I", [], None), + ("year", "B", [], None), + ("month", "B", [], None), + ("day", "B", [], None), + ("hour", "B", [], None), + ("minute", "B", [], None), + ("second", "B", [], None), + ("usec100", "H", [], None), + ( + "c_sound", + "H", + [], + _LinFunc(0.1, dtype=dt32), + "m s-1", + "Speed of Sound", + "speed_of_sound_in_sea_water", + ), + ( + "temp", + "h", + [], + _LinFunc(0.01, dtype=dt32), + "degree_C", + "Temperature", + "sea_water_temperature", + ), + ( + "pressure", + "I", + [], + _LinFunc(0.001, dtype=dt32), + "dbar", + "Pressure", + "sea_water_pressure", + ), + ( + "heading", + "H", + [], + _LinFunc(0.01, dtype=dt32), + "degree", + "Heading", + "platform_orientation", + ), + ("pitch", "h", [], _LinFunc(0.01, dtype=dt32), "degree", "Pitch", "platform_pitch"), + ("roll", "h", [], _LinFunc(0.01, dtype=dt32), "degree", "Roll", "platform_roll"), + ("beam_config", "H", [], None), + ("cell_size", "H", [], _LinFunc(0.001), "m"), + ("blank_dist", "H", [], _LinFunc(0.01), "m"), + ("nominal_corr", "B", [], None, "%"), + ( + "temp_press", + "b", + [], + _LinFunc(0.2, -20, dtype=dt32), + "degree_C", + "Pressure Sensor Temperature", + ), + ( + "batt", + "H", + [], + _LinFunc(0.1, dtype=dt32), + "V", + "Battery Voltage", + "battery_voltage", + ), + ("mag", "h", [3], _LinFunc(0.1, dtype=dt32), "uT", "Compass"), + ( + "accel", + "h", + [3], + _LinFunc(1.0 / 16384 * grav, dtype=dt32), + "m s-2", + "Acceleration", + ), + ("ambig_vel", "h", [], _LinFunc(0.001, dtype=dt32), "m s-1"), + ("data_desc", "H", [], None), + ("xmit_energy", "H", [], None, "dB", "Sound Pressure Level of Acoustic Signal"), + ("vel_scale", "b", [], None), + ("power_level_dB", "b", [], _LinFunc(dtype=dt32), "dB", "Power Level"), + ("temp_mag", "h", [], None), # uncalibrated + ( + "temp_clock", + "h", + [], + _LinFunc(0.01, dtype=dt32), + "degree_C", + "Internal Clock Temperature", + ), + ("error", "H", [], None, "1", "Error Code"), + ("status0", "H", [], None, "1", "Status 0 Code"), + ("status", "I", [], None, "1", "Status Code"), + ("_ensemble", "I", [], None), ] _bt_hdr = [ - ('ver', 'B', [], None), - ('DatOffset', 'B', [], None), - ('config', 'H', [], None), - ('SerialNum', 'I', [], None), - ('year', 'B', [], None), - ('month', 'B', [], None), - ('day', 'B', [], None), - ('hour', 'B', [], None), - ('minute', 'B', [], None), - ('second', 'B', [], None), - ('usec100', 'H', [], None), - ('c_sound', 'H', [], _LinFunc(0.1, dtype=dt32), 'm s-1', - 'Speed of Sound', 'speed_of_sound_in_sea_water'), - ('temp', 'H', [], _LinFunc(0.01, dtype=dt32), - 'degree_C', 'Temperature', 'sea_water_temperature'), - ('pressure', 'I', [], _LinFunc(0.001, dtype=dt32), - 'dbar', 'Pressure', 'sea_water_pressure'), - ('heading', 'H', [], _LinFunc(0.01, dtype=dt32), - 'degree', 'Heading', 'platform_orientation'), - ('pitch', 'h', [], _LinFunc(0.01, dtype=dt32), - 'degree', 'Pitch', 'platform_pitch'), - ('roll', 'h', [], _LinFunc(0.01, dtype=dt32), 'degree', 'Roll', 'platform_roll'), - ('beam_config', 'H', [], None), - ('cell_size', 'H', [], _LinFunc(0.001), 'm'), - ('blank_dist', 'H', [], _LinFunc(0.01), 'm'), - ('nominal_corr', 'B', [], None, '%'), - ('unused', 'B', [], None), - ('batt', 'H', [], _LinFunc(0.1, dtype=dt32), - 'V', 'Battery Voltage', 'battery_voltage'), - ('mag', 'h', [3], None, 'uT', 'Compass'), - ('accel', 'h', [3], _LinFunc(1. / 16384 * grav, dtype=dt32), - 'm s-2', 'Acceleration', ''), - ('ambig_vel', 'I', [], _LinFunc(0.001, dtype=dt32), 'm s-1'), - ('data_desc', 'H', [], None), - ('xmit_energy', 'H', [], None, 'dB', 'Sound Pressure Level of Acoustic Signal'), - ('vel_scale', 'b', [], None), - ('power_level_dB', 'b', [], _LinFunc(dtype=dt32), 'dB'), - ('temp_mag', 'h', [], None), # uncalibrated - ('temp_clock', 'h', [], _LinFunc(0.01, dtype=dt32), - 'degree_C', 'Internal Clock Temperature'), - ('error', 'I', [], None, '1', 'Error Code'), - ('status', 'I', [], None, '1', 'Status Code'), - ('_ensemble', 'I', [], None), + ("ver", "B", [], None), + ("DatOffset", "B", [], None), + ("config", "H", [], None), + ("SerialNum", "I", [], None), + ("year", "B", [], None), + ("month", "B", [], None), + ("day", "B", [], None), + ("hour", "B", [], None), + ("minute", "B", [], None), + ("second", "B", [], None), + ("usec100", "H", [], None), + ( + "c_sound", + "H", + [], + _LinFunc(0.1, dtype=dt32), + "m s-1", + "Speed of Sound", + "speed_of_sound_in_sea_water", + ), + ( + "temp", + "h", + [], + _LinFunc(0.01, dtype=dt32), + "degree_C", + "Temperature", + "sea_water_temperature", + ), + ( + "pressure", + "I", + [], + _LinFunc(0.001, dtype=dt32), + "dbar", + "Pressure", + "sea_water_pressure", + ), + ( + "heading", + "H", + [], + _LinFunc(0.01, dtype=dt32), + "degree", + "Heading", + "platform_orientation", + ), + ("pitch", "h", [], _LinFunc(0.01, dtype=dt32), "degree", "Pitch", "platform_pitch"), + ("roll", "h", [], _LinFunc(0.01, dtype=dt32), "degree", "Roll", "platform_roll"), + ("beam_config", "H", [], None), + ("cell_size", "H", [], _LinFunc(0.001), "m"), + ("blank_dist", "H", [], _LinFunc(0.01), "m"), + ("nominal_corr", "B", [], None, "%"), + ("unused", "B", [], None), + ( + "batt", + "H", + [], + _LinFunc(0.1, dtype=dt32), + "V", + "Battery Voltage", + "battery_voltage", + ), + ("mag", "h", [3], None, "uT", "Compass"), + ( + "accel", + "h", + [3], + _LinFunc(1.0 / 16384 * grav, dtype=dt32), + "m s-2", + "Acceleration", + "", + ), + ("ambig_vel", "I", [], _LinFunc(0.001, dtype=dt32), "m s-1"), + ("data_desc", "H", [], None), + ("xmit_energy", "H", [], None, "dB", "Sound Pressure Level of Acoustic Signal"), + ("vel_scale", "b", [], None), + ("power_level_dB", "b", [], _LinFunc(dtype=dt32), "dB"), + ("temp_mag", "h", [], None), # uncalibrated + ( + "temp_clock", + "h", + [], + _LinFunc(0.01, dtype=dt32), + "degree_C", + "Internal Clock Temperature", + ), + ("error", "I", [], None, "1", "Error Code"), + ("status", "I", [], None, "1", "Status Code"), + ("_ensemble", "I", [], None), ] _ahrs_def = [ - ('orientmat', 'f', [3, 3], None, '1', 'Orientation Matrix'), - ('quaternions', 'f', [4], None, '1', 'Quaternions'), - ('angrt', 'f', [3], _LinFunc(np.pi / 180, dtype=dt32), 'rad s-1', 'Angular Velocity'), + ("orientmat", "f", [3, 3], None, "1", "Orientation Matrix"), + ("quaternions", "f", [4], None, "1", "Quaternions"), + ( + "angrt", + "f", + [3], + _LinFunc(np.pi / 180, dtype=dt32), + "rad s-1", + "Angular Velocity", + ), ] def _calc_bt_struct(config, nb): - flags = lib._headconfig_int2dict(config, mode='bt') + flags = lib._headconfig_int2dict(config, mode="bt") dd = copy(_bt_hdr) - if flags['vel']: + if flags["vel"]: # units handled in Ad2cpReader.sci_data - dd.append(('vel', 'i', [nb], None, 'm s-1', 'Platform Velocity from Bottom Track')) - if flags['dist']: - dd.append(('dist', 'i', [nb], _LinFunc(0.001, dtype=dt32), 'm', 'Bottom Track Measured Depth')) - if flags['fom']: - dd.append(('fom', 'H', [nb], None, '1', 'Figure of Merit')) - if flags['ahrs']: + dd.append( + ("vel", "i", [nb], None, "m s-1", "Platform Velocity from Bottom Track") + ) + if flags["dist"]: + dd.append( + ( + "dist", + "i", + [nb], + _LinFunc(0.001, dtype=dt32), + "m", + "Bottom Track Measured Depth", + ) + ) + if flags["fom"]: + dd.append(("fom", "H", [nb], None, "1", "Figure of Merit")) + if flags["ahrs"]: dd += _ahrs_def return _DataDef(dd) @@ -295,14 +414,27 @@ def _calc_bt_struct(config, nb): def _calc_echo_struct(config, nc): flags = lib._headconfig_int2dict(config) dd = copy(_burst_hdr) - dd[19] = ('blank_dist', 'H', [], _LinFunc(0.001)) # m - if any([flags[nm] for nm in ['vel', 'amp', 'corr', 'alt', 'ast', - 'alt_raw', 'p_gd', 'std']]): + dd[19] = ("blank_dist", "H", [], _LinFunc(0.001)) # m + if any( + [ + flags[nm] + for nm in ["vel", "amp", "corr", "le", "ast", "altraw", "p_gd", "std"] + ] + ): raise Exception("Echosounder ping contains invalid data?") - if flags['echo']: - dd += [('echo', 'H', [nc], _LinFunc(0.01, dtype=dt32), 'dB', - 'Echo Sounder Acoustic Signal Backscatter', 'acoustic_target_strength_in_sea_water')] - if flags['ahrs']: + if flags["echo"]: + dd += [ + ( + "echo", + "H", + [nc], + _LinFunc(0.01, dtype=dt32), + "dB", + "Echo Sounder Acoustic Signal Backscatter", + "acoustic_target_strength_in_sea_water", + ) + ] + if flags["ahrs"]: dd += _ahrs_def return _DataDef(dd) @@ -310,53 +442,157 @@ def _calc_echo_struct(config, nc): def _calc_burst_struct(config, nb, nc): flags = lib._headconfig_int2dict(config) dd = copy(_burst_hdr) - if flags['echo']: + if flags["echo"]: raise Exception("Echosounder data found in velocity ping?") - if flags['vel']: - dd.append(('vel', 'h', [nb, nc], None, 'm s-1', 'Water Velocity')) - if flags['amp']: - dd.append(('amp', 'B', [nb, nc], _LinFunc(0.5, dtype=dt32), '1', 'Acoustic Signal Amplitude', - 'signal_intensity_from_multibeam_acoustic_doppler_velocity_sensor_in_sea_water')) - if flags['corr']: - dd.append(('corr', 'B', [nb, nc], None, '%', 'Acoustic Signal Correlation', - 'beam_consistency_indicator_from_multibeam_acoustic_doppler_velocity_profiler_in_sea_water')) - if flags['alt']: + if flags["vel"]: + dd.append(("vel", "h", [nb, nc], None, "m s-1", "Water Velocity")) + if flags["amp"]: + dd.append( + ( + "amp", + "B", + [nb, nc], + _LinFunc(0.5, dtype=dt32), + "1", + "Acoustic Signal Amplitude", + "signal_intensity_from_multibeam_acoustic_doppler_velocity_sensor_in_sea_water", + ) + ) + if flags["corr"]: + dd.append( + ( + "corr", + "B", + [nb, nc], + None, + "%", + "Acoustic Signal Correlation", + "beam_consistency_indicator_from_multibeam_acoustic_doppler_velocity_profiler_in_sea_water", + ) + ) + if flags["le"]: # There may be a problem here with reading 32bit floats if # nb and nc are odd - dd += [('alt_dist', 'f', [], _LinFunc(dtype=dt32), 'm', 'Altimeter Range', 'altimeter_range'), - ('alt_quality', 'H', [], _LinFunc(0.01, dtype=dt32), '1', 'Altimeter Quality Indicator'), - ('alt_status', 'H', [], None, '1', 'Altimeter Status')] - if flags['ast']: dd += [ - ('ast_dist', 'f', [], _LinFunc(dtype=dt32), 'm', 'Acoustic Surface Tracking Range'), - ('ast_quality', 'H', [], _LinFunc(0.01, dtype=dt32), '1', - 'Acoustic Surface Tracking Quality Indicator'), - ('ast_offset_time', 'h', [], _LinFunc(0.0001, dtype=dt32), - 's', 'Acoustic Surface Tracking Time Offset to Velocity Ping'), - ('ast_pressure', 'f', [], None, 'dbar', 'Pressure measured during AST ping', - 'sea_water_pressure'), - ('ast_spare', 'B7x', [], None), + ( + "le_dist_alt", + "f", + [], + _LinFunc(dtype=dt32), + "m", + "Altimeter Range Leading Edge Algorithm", + "altimeter_range", + ), + ( + "le_quality_alt", + "H", + [], + _LinFunc(0.01, dtype=dt32), + "dB", + "Altimeter Quality Indicator Leading Edge Algorithm", + ), + ("status_alt", "H", [], None, "1", "Altimeter Status"), + ] + if flags["ast"]: + dd += [ + ( + "ast_dist_alt", + "f", + [], + _LinFunc(dtype=dt32), + "m", + "Altimeter Range Acoustic Surface Tracking", + "altimeter_range", + ), + ( + "ast_quality_alt", + "H", + [], + _LinFunc(0.01, dtype=dt32), + "dB", + "Altimeter Quality Indicator Acoustic Surface Tracking", + ), + ( + "ast_offset_time_alt", + "h", + [], + _LinFunc(0.0001, dtype=dt32), + "s", + "Acoustic Surface Tracking Time Offset to Velocity Ping", + ), + ( + "pressure_alt", + "f", + [], + None, + "dbar", + "Pressure measured during AST ping", + "sea_water_pressure", + ), + # This use of 'x' here is a hack + ("spare", "B7x", [], None), ] - if flags['alt_raw']: + if flags["altraw"]: dd += [ - ('altraw_nsamp', 'I', [], None, '1', 'Number of Altimeter Samples'), - ('altraw_dsamp', 'H', [], _LinFunc(0.0001, dtype=dt32), 'm', - 'Altimeter Distance between Samples'), - ('altraw_samp', 'h', [], None), + ("nsamp_alt", "I", [], None, "1", "Number of Altimeter Samples"), + ( + "dsamp_alt", + "H", + [], + _LinFunc(0.0001, dtype=dt32), + "m", + "Altimeter Distance between Samples", + ), + ("samp_alt", "h", [], None, "1", "Altimeter Samples"), ] - if flags['ahrs']: + if flags["ahrs"]: dd += _ahrs_def - if flags['p_gd']: - dd += [('percent_good', 'B', [nc], None, '%', 'Percent Good', - 'proportion_of_acceptable_signal_returns_from_acoustic_instrument_in_sea_water')] - if flags['std']: - dd += [('pitch_std', 'h', [], - _LinFunc(0.01, dtype=dt32), 'degree', 'Pitch Standard Deviation'), - ('roll_std', 'h', [], - _LinFunc(0.01, dtype=dt32), 'degree', 'Roll Standard Deviation'), - ('heading_std', 'h', [], - _LinFunc(0.01, dtype=dt32), 'degree', 'Heading Standard Deviation'), - ('press_std', 'h', [], - _LinFunc(0.1, dtype=dt32), 'dbar', 'Pressure Standard Deviation'), - ('std_spare', 'H22x', [], None)] + if flags["p_gd"]: + dd += [ + ( + "percent_good", + "B", + [nc], + None, + "%", + "Percent Good", + "proportion_of_acceptable_signal_returns_from_acoustic_instrument_in_sea_water", + ) + ] + if flags["std"]: + dd += [ + ( + "pitch_std", + "h", + [], + _LinFunc(0.01, dtype=dt32), + "degree", + "Pitch Standard Deviation", + ), + ( + "roll_std", + "h", + [], + _LinFunc(0.01, dtype=dt32), + "degree", + "Roll Standard Deviation", + ), + ( + "heading_std", + "h", + [], + _LinFunc(0.01, dtype=dt32), + "degree", + "Heading Standard Deviation", + ), + ( + "press_std", + "h", + [], + _LinFunc(0.1, dtype=dt32), + "dbar", + "Pressure Standard Deviation", + ), + ("std_spare", "H22x", [], None), + ] return _DataDef(dd) diff --git a/mhkit/dolfyn/io/nortek2_lib.py b/mhkit/dolfyn/io/nortek2_lib.py index f3575b6e6..3336651f5 100644 --- a/mhkit/dolfyn/io/nortek2_lib.py +++ b/mhkit/dolfyn/io/nortek2_lib.py @@ -26,9 +26,13 @@ def _reduce_by_average_angle(data, ky0, ky1, degrees=True): rad_fact = 1 if ky1 in data: if ky0 in data: - data[ky0] = np.angle( - np.exp(1j * data.pop(ky0) * rad_fact) + - np.exp(1j * data.pop(ky1) * rad_fact)) / rad_fact + data[ky0] = ( + np.angle( + np.exp(1j * data.pop(ky0) * rad_fact) + + np.exp(1j * data.pop(ky1) * rad_fact) + ) + / rad_fact + ) else: data[ky0] = data.pop(ky1) @@ -36,56 +40,65 @@ def _reduce_by_average_angle(data, ky0, ky1, degrees=True): # This is the data-type of the index file. # This must match what is written-out by the create_index function. _index_version = 1 -_hdr = struct.Struct(' 60) # This probably indicates a corrupted byte, so we just insert None. @@ -94,113 +107,174 @@ def _calc_time(year, month, day, hour, minute, second, usec, zero_is_bad=True): return dt -def _create_index(infile, outfile, N_ens, debug): +def _create_index(infile, outfile, init_pos, eof, debug): logging = getLogger() - print("Indexing {}...".format(infile), end='') - fin = open(_abspath(infile), 'rb') - fout = open(_abspath(outfile), 'wb') - fout.write(b'Index Ver:') - fout.write(struct.pack(' 0: - # Covers all id keys saved in "burst mode" - ens[idk] = last_ens[idk]+1 + if last_ens[idk] > 0: + if (ens[idk] == 1) or (ens[idk] < last_ens[idk]): + # Covers all id keys saved in "burst mode" + # Covers ID keys not saved in sequential order + ens[idk] = last_ens[idk] + 1 if last_ens[idk] > 0 and last_ens[idk] != ens[idk]: N[idk] += 1 - fout.write(struct.pack(' N_id)[0] + # Check if spacing is equal for dual profiling ADCPs + if dp: + skip_size = np.diff(ibad) + n_skip, count = np.unique(skip_size, return_counts=True) + # If multiple skips are of the same size, assume okay + for n, c in zip(n_skip, count): + if c > 1: + skip_size[skip_size == n] = 0 + # assume last "ibad" element is always good for dp's + mask = np.append(skip_size, 0).astype(bool) if any(skip_size) else [] + ibad = ibad[mask] for ib in ibad: FLAG = True # The ping number reported here may not be quite right if # the ensemble count is wrong. - warnings.warn("Skipped ping (ID: {}) in file {} at ensemble {}." - .format(id, infile, idx['ens'][inds[ib + 1] - 1])) - hwe[inds[(ib + 1):]] += 1 - ens[inds[(ib + 1):]] += 1 - - # This block fixes skips that originate from before this file. - delta = max(hwe[:N_id]) - hwe[:N_id] - for d, id in zip(delta, idx['ID'][:N_id]): - if d != 0: - FLAG = True - hwe[id == idx['ID']] += d - ens[id == idx['ID']] += d + warnings.warn( + "Skipped ping (ID: {}) in file {} at ensemble {}.".format( + id, infile, idx["ens"][inds[ib + 1] - 1] + ) + ) + hwe[inds[(ib + 1) :]] += 1 + ens[inds[(ib + 1) :]] += 1 - if np.any(np.diff(ens) > 1) and FLAG: - idx['ens'] = np.unwrap(hwe.astype(np.int64), period=period) - hwe[0] + return dp def _boolarray_firstensemble_ping(index): """ - Return a boolean of the index that indicates only the first ping in + Return a boolean of the index that indicates only the first ping in each ensemble. """ - dens = np.ones(index['ens'].shape, dtype='bool') - dens[1:] = np.diff(index['ens']) != 0 + dens = np.ones(index["ens"].shape, dtype="bool") + dens[1:] = np.diff(index["ens"]) != 0 return dens -def get_index(infile, reload=False, debug=False): +def get_index(infile, pos=0, eof=2**32, rebuild=False, debug=False, dp=False): """ This function reads ad2cp.index files @@ -219,21 +293,21 @@ def get_index(infile, reload=False, debug=False): Tuple containing info held within index file """ - index_file = infile + '.index' - if not path.isfile(index_file) or reload: - _create_index(infile, index_file, 2 ** 32, debug) - f = open(_abspath(index_file), 'rb') + index_file = infile + ".index" + if not path.isfile(index_file) or rebuild or debug: + _create_index(infile, index_file, pos, eof, debug) + f = open(_abspath(index_file), "rb") file_head = f.read(12) - if file_head[:10] == b'Index Ver:': - index_ver = struct.unpack('> n) & 1) -def _headconfig_int2dict(val, mode='burst'): +def _headconfig_int2dict(val, mode="burst"): """ Convert the burst Configuration bit-mask to a dict of bools. @@ -330,7 +408,7 @@ def _headconfig_int2dict(val, mode='burst'): For 'burst' configs, or 'bottom-track' configs. """ - if (mode == 'burst') or (mode == 'avg'): + if (mode == "burst") or (mode == "avg"): return dict( press_valid=_getbit(val, 0), temp_valid=_getbit(val, 1), @@ -340,8 +418,8 @@ def _headconfig_int2dict(val, mode='burst'): vel=_getbit(val, 5), amp=_getbit(val, 6), corr=_getbit(val, 7), - alt=_getbit(val, 8), - alt_raw=_getbit(val, 9), + le=_getbit(val, 8), + altraw=_getbit(val, 9), ast=_getbit(val, 10), echo=_getbit(val, 11), ahrs=_getbit(val, 12), @@ -349,7 +427,7 @@ def _headconfig_int2dict(val, mode='burst'): std=_getbit(val, 14), # bit 15 is unused ) - elif mode == 'bt': + elif mode == "bt": return dict( press_valid=_getbit(val, 0), temp_valid=_getbit(val, 1), @@ -371,9 +449,9 @@ def _status02data(val): bi = _BitIndexer(val) out = {} if any(bi[15]): # 'status0_in_use' - out['proc_idle_less_3pct'] = bi[0] - out['proc_idle_less_6pct'] = bi[1] - out['proc_idle_less_12pct'] = bi[2] + out["proc_idle_less_3pct"] = bi[0] + out["proc_idle_less_6pct"] = bi[1] + out["proc_idle_less_12pct"] = bi[2] return out @@ -383,18 +461,18 @@ def _status2data(val): # Integrators Guide (2017) bi = _BitIndexer(val) out = {} - out['wakeup_state'] = bi[28:32] - out['orient_up'] = bi[25:28] - out['auto_orientation'] = bi[22:25] - out['previous_wakeup_state'] = bi[18:22] - out['low_volt_skip'] = bi[17] - out['active_config'] = bi[16] - out['echo_index'] = bi[12:16] - out['telemetry_data'] = bi[11] - out['boost_running'] = bi[10] - out['echo_freq_bin'] = bi[5:10] + out["wakeup_state"] = bi[28:32] + out["orient_up"] = bi[25:28] + out["auto_orientation"] = bi[22:25] + out["previous_wakeup_state"] = bi[18:22] + out["low_volt_skip"] = bi[17] + out["active_config"] = bi[16] + out["echo_index"] = bi[12:16] + out["telemetry_data"] = bi[11] + out["boost_running"] = bi[10] + out["echo_freq_bin"] = bi[5:10] # 2,3,4 unused - out['bd_scaling'] = bi[1] # if True: cm scaling of blanking dist + out["bd_scaling"] = bi[1] # if True: cm scaling of blanking dist # 0 unused return out @@ -404,25 +482,26 @@ def _alt_status2data(val): # Integrators Guide (2017) bi = _BitIndexer(val) out = {} - out['tilt_over_5deg'] = bi[0] - out['tilt_over_10deg'] = bi[1] - out['multibeam_alt'] = bi[2] - out['n_beams_alt'] = bi[3:7] - out['power_level_idx_alt'] = bi[7:10] + out["tilt_over_5deg"] = bi[0] + out["tilt_over_10deg"] = bi[1] + out["multibeam_alt"] = bi[2] + out["n_beams_alt"] = bi[3:7] + out["power_level_idx_alt"] = bi[7:10] return out def _beams_cy_int2dict(val, id): - """Convert the beams/coordinate-system bytes to a dict of values. - """ + """Convert the beams/coordinate-system bytes to a dict of values.""" if id == 28: # 0x1C (echosounder) return dict(n_cells=val) - + elif id in [26, 31]: + return dict(n_cells=val & (2**10 - 1), cy="beam", n_beams=1) return dict( - n_cells=val & (2 ** 10 - 1), - cy=['ENU', 'XYZ', 'beam', None][val >> 10 & 3], - n_beams=val >> 12) + n_cells=val & (2**10 - 1), + cy=["ENU", "XYZ", "beam", None][val >> 10 & 3], + n_beams=val >> 12, + ) def _isuniform(vec, exclude=[]): @@ -442,8 +521,7 @@ def _collapse(vec, name=None, exclude=[]): elif _isuniform(vec, exclude=exclude): return list(set(np.unique(vec)) - set(exclude))[0] else: - uniq, idx, counts = np.unique( - vec, return_index=True, return_counts=True) + uniq, idx, counts = np.unique(vec, return_index=True, return_counts=True) if all(e == counts[0] for e in counts): val = max(vec) # pings saved out of order, but equal # of pings @@ -452,11 +530,14 @@ def _collapse(vec, name=None, exclude=[]): if not set(uniq) == set([0, val]) and set(counts) == set([1, np.max(counts)]): # warn when the 'wrong value' is not just a single zero. - warnings.warn("The variable {} is expected to be uniform, but it is not.\n" - "Values found: {} (counts: {}).\n" - "Using the most common value: {}".format( - name, list(uniq), list(counts), val)) - + warnings.warn( + "The variable {} is expected to be uniform, but it is not.\n" + "Values found: {} (counts: {}).\n" + "Using the most common value: {}".format( + name, list(uniq), list(counts), val + ) + ) + return val @@ -471,33 +552,41 @@ def _calc_config(index): A dict containing the key information for initializing arrays. """ - ids = np.unique(index['ID']) + ids = np.unique(index["ID"]) config = {} for id in ids: - if id not in [21, 22, 23, 24, 26, 28]: + if id not in [21, 22, 23, 24, 26, 28, 31]: continue if id == 23: - type = 'bt' - elif id == 22: - type = 'avg' + type = "bt" + elif (id == 22) or (id == 31): + type = "avg" else: - type = 'burst' - inds = index['ID'] == id - _config = index['config'][inds] - _beams_cy = index['beams_cy'][inds] + type = "burst" + inds = index["ID"] == id + _config = index["config"][inds] + _beams_cy = index["beams_cy"][inds] + # Check that these variables are consistent if not _isuniform(_config): - raise Exception("config are not identical for id: 0x{:X}." - .format(id)) + raise Exception("config are not identical for id: 0x{:X}.".format(id)) if not _isuniform(_beams_cy): - raise Exception("beams_cy are not identical for id: 0x{:X}." - .format(id)) + err = True + if id == 23: + # change in "n_cells" doesn't matter + lob = np.unique(_beams_cy) + beams = list(map(_beams_cy_int2dict, lob, 23 * np.ones(lob.size))) + if all([d["cy"] for d in beams]) and all([d["n_beams"] for d in beams]): + err = False + if err: + raise Exception("beams_cy are not identical for id: 0x{:X}.".format(id)) + # Now that we've confirmed they are the same: config[id] = _headconfig_int2dict(_config[0], mode=type) config[id].update(_beams_cy_int2dict(_beams_cy[0], id)) - config[id]['_config'] = _config[0] - config[id]['_beams_cy'] = _beams_cy[0] - config[id]['type'] = type - config[id].pop('cy', None) + config[id]["_config"] = _config[0] + config[id]["_beams_cy"] = _beams_cy[0] + config[id]["type"] = type + config[id].pop("cy", None) return config diff --git a/mhkit/dolfyn/io/nortek_defs.py b/mhkit/dolfyn/io/nortek_defs.py index 180af05eb..c3e6a9757 100644 --- a/mhkit/dolfyn/io/nortek_defs.py +++ b/mhkit/dolfyn/io/nortek_defs.py @@ -1,8 +1,9 @@ import numpy as np + nan = np.nan -class _VarAtts(): +class _VarAtts: """ A data variable attributes class. @@ -36,11 +37,21 @@ class _VarAtts(): A list of names for each dimension of the array. """ - def __init__(self, dims=[], dtype=None, group='data_vars', - view_type=None, default_val=None, - offset=0, factor=1, - title_name=None, units='1', dim_names=None, - long_name='', standard_name=''): + def __init__( + self, + dims=[], + dtype=None, + group="data_vars", + view_type=None, + default_val=None, + offset=0, + factor=1, + title_name=None, + units="1", + dim_names=None, + long_name="", + standard_name="", + ): self.dims = list(dims) if dtype is None: dtype = np.float32 @@ -66,7 +77,7 @@ def shape(self, **kwargs): if hit: return a else: - return self.dims + [kwargs['n']] + return self.dims + [kwargs["n"]] def _empty_array(self, **kwargs): out = np.zeros(self.shape(**kwargs), dtype=self.dtype) @@ -102,241 +113,431 @@ def sci_func(self, data): vec_data = { - 'AnaIn2LSB': _VarAtts(dims=[], - dtype=np.uint8, - group='sys', - ), - 'Count': _VarAtts(dims=[], - dtype=np.uint8, - group='sys', - units='1', - ), - 'PressureMSB': _VarAtts(dims=[], - dtype=np.uint8, - group='data_vars', - ), - 'AnaIn2MSB': _VarAtts(dims=[], - dtype=np.uint8, - group='sys', - ), - 'PressureLSW': _VarAtts(dims=[], - dtype=np.uint16, - group='data_vars', - ), - 'AnaIn1': _VarAtts(dims=[], - dtype=np.uint16, - group='sys', - ), - 'vel': _VarAtts(dims=[3], - dtype=np.float32, - group='data_vars', - factor=0.001, - default_val=nan, - units='m s-1', - long_name='Water Velocity', - ), - 'amp': _VarAtts(dims=[3], - dtype=np.uint8, - group='data_vars', - units='1', - long_name='Acoustic Signal Amplitude', - standard_name='signal_intensity_from_multibeam_acoustic_doppler_velocity_sensor_in_sea_water' - ), - 'corr': _VarAtts(dims=[3], - dtype=np.uint8, - group='data_vars', - units='%', - long_name='Acoustic Signal Correlation', - ), + "AnaIn2LSB": _VarAtts( + dims=[], + dtype=np.uint8, + group="sys", + ), + "Count": _VarAtts( + dims=[], + dtype=np.uint8, + group="sys", + units="1", + ), + "PressureMSB": _VarAtts( + dims=[], + dtype=np.uint8, + group="data_vars", + ), + "AnaIn2MSB": _VarAtts( + dims=[], + dtype=np.uint8, + group="sys", + ), + "PressureLSW": _VarAtts( + dims=[], + dtype=np.uint16, + group="data_vars", + ), + "AnaIn1": _VarAtts( + dims=[], + dtype=np.uint16, + group="sys", + ), + "vel": _VarAtts( + dims=[3], + dtype=np.float32, + group="data_vars", + factor=0.001, + default_val=nan, + units="m s-1", + long_name="Water Velocity", + ), + "amp": _VarAtts( + dims=[3], + dtype=np.uint8, + group="data_vars", + units="1", + long_name="Acoustic Signal Amplitude", + standard_name="signal_intensity_from_multibeam_acoustic_doppler_velocity_sensor_in_sea_water", + ), + "corr": _VarAtts( + dims=[3], + dtype=np.uint8, + group="data_vars", + units="%", + long_name="Acoustic Signal Correlation", + ), } vec_sysdata = { - 'time': _VarAtts(dims=[], - dtype=np.float64, - group='coords', - default_val=nan, - units='seconds since 1970-01-01 00:00:00', - long_name='Time', - standard_name='time', - ), - 'batt': _VarAtts(dims=[], - dtype=np.float32, - group='data_vars', - default_val=nan, - factor=0.1, - units='V', - long_name='Battery Voltage', - ), - 'c_sound': _VarAtts(dims=[], - dtype=np.float32, - group='data_vars', - default_val=nan, - factor=0.1, - units='m s-1', - long_name='Speed of Sound', - standard_name='speed_of_sound_in_sea_water', - ), - 'heading': _VarAtts(dims=[], - dtype=np.float32, - group='data_vars', - default_val=nan, - factor=0.1, - units='degree', - long_name='Heading', - standard_name='platform_orientation', - ), - 'pitch': _VarAtts(dims=[], - dtype=np.float32, - group='data_vars', - default_val=nan, - factor=0.1, - units='degree', - long_name='Pitch', - standard_name='platform_pitch', - ), - 'roll': _VarAtts(dims=[], - dtype=np.float32, - group='data_vars', - default_val=nan, - factor=0.1, - units='degree', - long_name='Roll', - standard_name='platform_roll' - ), - 'temp': _VarAtts(dims=[], - dtype=np.float32, - group='data_vars', - default_val=nan, - factor=0.01, - units='degree_C', - long_name='Temperature', - standard_name='sea_water_temperature', - ), - 'error': _VarAtts(dims=[], - dtype=np.uint8, - group='data_vars', - default_val=nan, - long_name='Error Code', - ), - 'status': _VarAtts(dims=[], - dtype=np.uint8, - group='data_vars', - default_val=nan, - long_name='Status Code' - ), - 'AnaIn': _VarAtts(dims=[], - dtype=np.float32, - group='sys', - default_val=nan, - ), - 'orientation_down': _VarAtts(dims=[], - dtype=bool, - group='data_vars', - default_val=nan, - long_name='Orientation of ADV Communication Cable' - ), + "time": _VarAtts( + dims=[], + dtype=np.float64, + group="coords", + default_val=nan, + units="seconds since 1970-01-01 00:00:00 UTC", + long_name="Time", + standard_name="time", + ), + "batt": _VarAtts( + dims=[], + dtype=np.float32, + group="data_vars", + default_val=nan, + factor=0.1, + units="V", + long_name="Battery Voltage", + ), + "c_sound": _VarAtts( + dims=[], + dtype=np.float32, + group="data_vars", + default_val=nan, + factor=0.1, + units="m s-1", + long_name="Speed of Sound", + standard_name="speed_of_sound_in_sea_water", + ), + "heading": _VarAtts( + dims=[], + dtype=np.float32, + group="data_vars", + default_val=nan, + factor=0.1, + units="degree", + long_name="Heading", + standard_name="platform_orientation", + ), + "pitch": _VarAtts( + dims=[], + dtype=np.float32, + group="data_vars", + default_val=nan, + factor=0.1, + units="degree", + long_name="Pitch", + standard_name="platform_pitch", + ), + "roll": _VarAtts( + dims=[], + dtype=np.float32, + group="data_vars", + default_val=nan, + factor=0.1, + units="degree", + long_name="Roll", + standard_name="platform_roll", + ), + "temp": _VarAtts( + dims=[], + dtype=np.float32, + group="data_vars", + default_val=nan, + factor=0.01, + units="degree_C", + long_name="Temperature", + standard_name="sea_water_temperature", + ), + "error": _VarAtts( + dims=[], + dtype=np.uint8, + group="data_vars", + default_val=nan, + long_name="Error Code", + ), + "status": _VarAtts( + dims=[], + dtype=np.uint8, + group="data_vars", + default_val=nan, + long_name="Status Code", + ), + "AnaIn": _VarAtts( + dims=[], + dtype=np.float32, + group="sys", + default_val=nan, + ), + "orientation_down": _VarAtts( + dims=[], + dtype=bool, + group="data_vars", + default_val=nan, + long_name="Orientation of ADV Communication Cable", + ), } awac_profile = { - 'time': _VarAtts(dims=[], - dtype=np.float64, - group='coords', - units='seconds since 1970-01-01 00:00:00', - long_name='Time', - standard_name='time', - ), - 'error': _VarAtts(dims=[], - dtype=np.uint16, - group='data_vars', - long_name='Error Code', - ), - 'AnaIn1': _VarAtts(dims=[], - dtype=np.float32, - group='sys', - default_val=nan, - units='n/a', - ), - 'batt': _VarAtts(dims=[], - dtype=np.float32, - group='data_vars', - default_val=nan, - factor=0.1, - units='V', - long_name='Battery Voltage', - ), - 'c_sound': _VarAtts(dims=[], - dtype=np.float32, - group='data_vars', - default_val=nan, - factor=0.1, - units='m s-1', - long_name='Speed of Sound', - standard_name='speed_of_sound_in_sea_water', - ), - 'heading': _VarAtts(dims=[], - dtype=np.float32, - group='data_vars', - default_val=nan, - factor=0.1, - units='degree', - long_name='Heading', - standard_name='platform_orientation', - ), - 'pitch': _VarAtts(dims=[], - dtype=np.float32, - group='data_vars', - default_val=nan, - factor=0.1, - units='degree', - long_name='Pitch', - standard_name='platform_pitch', - ), - 'roll': _VarAtts(dims=[], - dtype=np.float32, - group='data_vars', - default_val=nan, - factor=0.1, - units='degree', - long_name='Roll', - standard_name='platform_roll' - ), - 'pressure': _VarAtts(dims=[], - dtype=np.float32, - group='data_vars', - default_val=nan, - factor=0.001, - units='dbar', - long_name='Pressure', - standard_name='sea_water_pressure', - ), - 'status': _VarAtts(dims=[], - dtype=np.float32, - group='data_vars', - default_val=nan, - long_name='Status Code' - ), - 'temp': _VarAtts(dims=[], - dtype=np.float32, - group='data_vars', - default_val=nan, - factor=0.01, - units='degree_C', - long_name='Temperature', - standard_name='sea_water_temperature', - ), - 'vel': _VarAtts(dims=[3, 'nbins', 'n'], # how to change this for different # of beams? - dtype=np.float32, - group='data_vars', - default_val=nan, - factor=0.001, - units='m s-1', - long_name='Water Velocity', - ), - 'amp': _VarAtts(dims=[3, 'nbins', 'n'], - dtype=np.uint8, - group='data_vars', - units='1', - long_name='Acoustic Signal Amplitude', - standard_name='signal_intensity_from_multibeam_acoustic_doppler_velocity_sensor_in_sea_water', - ), + "time": _VarAtts( + dims=[], + dtype=np.float64, + group="coords", + units="seconds since 1970-01-01 00:00:00 UTC", + long_name="Time", + standard_name="time", + ), + "error": _VarAtts( + dims=[], + dtype=np.uint16, + group="data_vars", + long_name="Error Code", + ), + "AnaIn1": _VarAtts( + dims=[], + dtype=np.float32, + group="sys", + default_val=nan, + units="n/a", + ), + "batt": _VarAtts( + dims=[], + dtype=np.float32, + group="data_vars", + default_val=nan, + factor=0.1, + units="V", + long_name="Battery Voltage", + ), + "c_sound": _VarAtts( + dims=[], + dtype=np.float32, + group="data_vars", + default_val=nan, + factor=0.1, + units="m s-1", + long_name="Speed of Sound", + standard_name="speed_of_sound_in_sea_water", + ), + "heading": _VarAtts( + dims=[], + dtype=np.float32, + group="data_vars", + default_val=nan, + factor=0.1, + units="degree", + long_name="Heading", + standard_name="platform_orientation", + ), + "pitch": _VarAtts( + dims=[], + dtype=np.float32, + group="data_vars", + default_val=nan, + factor=0.1, + units="degree", + long_name="Pitch", + standard_name="platform_pitch", + ), + "roll": _VarAtts( + dims=[], + dtype=np.float32, + group="data_vars", + default_val=nan, + factor=0.1, + units="degree", + long_name="Roll", + standard_name="platform_roll", + ), + "pressure": _VarAtts( + dims=[], + dtype=np.float32, + group="data_vars", + default_val=nan, + factor=0.001, + units="dbar", + long_name="Pressure", + standard_name="sea_water_pressure", + ), + "status": _VarAtts( + dims=[], + dtype=np.float32, + group="data_vars", + default_val=nan, + long_name="Status Code", + ), + "temp": _VarAtts( + dims=[], + dtype=np.float32, + group="data_vars", + default_val=nan, + factor=0.01, + units="degree_C", + long_name="Temperature", + standard_name="sea_water_temperature", + ), + "vel": _VarAtts( + dims=[3, "nbins", "n"], # how to change this for different # of beams? + dtype=np.float32, + group="data_vars", + default_val=nan, + factor=0.001, + units="m s-1", + long_name="Water Velocity", + ), + "amp": _VarAtts( + dims=[3, "nbins", "n"], + dtype=np.uint8, + group="data_vars", + units="1", + long_name="Acoustic Signal Amplitude", + standard_name="signal_intensity_from_multibeam_acoustic_doppler_velocity_sensor_in_sea_water", + ), +} + +waves_hdrdata = { + "time_alt": _VarAtts( + dims=[], + dtype=np.float64, + group="coords", + default_val=nan, + units="seconds since 1970-01-01 00:00:00 UTC", + long_name="Time", + standard_name="time", + ), + "batt_alt": _VarAtts( + dims=[], + dtype=np.uint16, + group="data_vars", + default_val=nan, + factor=0.1, + units="V", + long_name="Battery Voltage", + ), + "c_sound_alt": _VarAtts( + dims=[], + dtype=np.float32, + group="data_vars", + default_val=nan, + factor=0.1, + units="m s-1", + long_name="Speed of Sound", + standard_name="speed_of_sound_in_sea_water", + ), + "heading_alt": _VarAtts( + dims=[], + dtype=np.float32, + group="data_vars", + default_val=nan, + factor=0.1, + units="degree", + long_name="Heading", + standard_name="platform_orientation", + ), + "pitch_alt": _VarAtts( + dims=[], + dtype=np.float32, + group="data_vars", + default_val=nan, + factor=0.1, + units="degree", + long_name="Pitch", + standard_name="platform_pitch", + ), + "roll_alt": _VarAtts( + dims=[], + dtype=np.float32, + group="data_vars", + default_val=nan, + factor=0.1, + units="degree", + long_name="Roll", + standard_name="platform_roll", + ), + "pressure1_alt": _VarAtts( + dims=[], + dtype=np.float32, + group="data_vars", + default_val=nan, + factor=0.001, + units="dbar", + long_name="Pressure Min", + standard_name="sea_water_pressure", + ), + "pressure2_alt": _VarAtts( + dims=[], + dtype=np.float32, + group="data_vars", + default_val=nan, + factor=0.001, + units="dbar", + long_name="Pressure Max", + standard_name="sea_water_pressure", + ), + "temp_alt": _VarAtts( + dims=[], + dtype=np.float32, + group="data_vars", + default_val=nan, + factor=0.01, + units="degree_C", + long_name="Temperature", + standard_name="sea_water_temperature", + ), +} + +waves_data = { + "pressure_alt": _VarAtts( + dims=[], + dtype=np.float32, + group="data_vars", + default_val=nan, + factor=0.001, + units="dbar", + long_name="Pressure", + standard_name="sea_water_pressure", + ), + "dist1_alt": _VarAtts( + dims=[], + dtype=np.uint16, + group="data_vars", + default_val=nan, + factor=0.001, + units="m", + long_name="AST distance1 on vertical beam", + standard_name="altimeter_range", + ), + "dist2_alt": _VarAtts( + dims=[], + dtype=np.uint16, + group="data_vars", + default_val=nan, + factor=0.001, + units="m", + long_name="AST distance2 on vertical beam", + standard_name="altimeter_range", + ), + "AnaIn1_alt": _VarAtts( + dims=[], + dtype=np.float32, + group="sys", + default_val=nan, + units="n/a", + ), + "vel_alt": _VarAtts( + dims=[4, "n"], + dtype=np.float32, + group="data_vars", + default_val=nan, + factor=0.001, + units="m s-1", + long_name="Water Velocity", + ), + "amp_alt": _VarAtts( + dims=[4, "n"], + dtype=np.uint8, + group="data_vars", + default_val=nan, + units="1", + long_name="Acoustic Signal Amplitude", + standard_name="signal_intensity_from_multibeam_acoustic_doppler_velocity_sensor_in_sea_water", + ), + "quality_alt": _VarAtts( + dims=[], + dtype=np.float32, + group="data_vars", + default_val=nan, + units="1", + long_name="Altimeter Quality Indicator", + ), } diff --git a/mhkit/dolfyn/io/rdi.py b/mhkit/dolfyn/io/rdi.py index 68ffac611..92996c7f3 100644 --- a/mhkit/dolfyn/io/rdi.py +++ b/mhkit/dolfyn/io/rdi.py @@ -14,8 +14,15 @@ from ..rotate.api import set_declination -def read_rdi(filename, userdata=None, nens=None, debug_level=-1, - vmdas_search=False, winriver=False, **kwargs): +def read_rdi( + filename, + userdata=None, + nens=None, + debug_level=-1, + vmdas_search=False, + winriver=False, + **kwargs, +): """ Read a TRDI binary data file. @@ -26,7 +33,7 @@ def read_rdi(filename, userdata=None, nens=None, debug_level=-1, userdata : True, False, or string of userdata.json filename Whether to read the '.userdata.json' file. Default = True nens : None, int or 2-element tuple (start, stop) - Number of pings or ensembles to read from the file. + Number of pings or ensembles to read from the file. Default is None, read entire file debug_level : int Debug level [0 - 2]. Default = -1 @@ -34,7 +41,7 @@ def read_rdi(filename, userdata=None, nens=None, debug_level=-1, Search from the end of each ensemble for the VMDAS navigation block. The byte offsets are sometimes incorrect. Default = False winriver : bool - If file is winriver or not. Automatically set by dolfyn, this is helpful + If file is winriver or not. Automatically set by dolfyn, this is helpful for debugging. Default = False Returns @@ -47,19 +54,20 @@ def read_rdi(filename, userdata=None, nens=None, debug_level=-1, for handler in logging.root.handlers[:]: logging.root.removeHandler(handler) filepath = Path(filename) - logfile = filepath.with_suffix('.dolfyn.log') - logging.basicConfig(filename=str(logfile), - filemode='w', - level=logging.NOTSET, - format='%(name)s - %(levelname)s - %(message)s') + logfile = filepath.with_suffix(".dolfyn.log") + logging.basicConfig( + filename=str(logfile), + filemode="w", + level=logging.NOTSET, + format="%(name)s - %(levelname)s - %(message)s", + ) # Reads into a dictionary of dictionaries using netcdf naming conventions # Should be easier to debug - with _RDIReader(filename, - debug_level=debug_level, - vmdas_search=vmdas_search, - winriver=winriver) as ldr: - datNB, datBB = ldr.load_data(nens=nens) + rdr = _RDIReader( + filename, debug_level=debug_level, vmdas_search=vmdas_search, winriver=winriver + ) + datNB, datBB = rdr.load_data(nens=nens) dats = [dat for dat in [datNB, datBB] if dat is not None] @@ -68,58 +76,57 @@ def read_rdi(filename, userdata=None, nens=None, debug_level=-1, dss = [] for dat in dats: for nm in userdata: - dat['attrs'][nm] = userdata[nm] + dat["attrs"][nm] = userdata[nm] # Pass one if only one ds returned - if not np.isfinite(dat['coords']['time'][0]): + if not np.isfinite(dat["coords"]["time"][0]): continue # GPS data not necessarily sampling at the same rate as ADCP DAQ. - if 'time_gps' in dat['coords']: + if "time_gps" in dat["coords"]: dat = _remove_gps_duplicates(dat) # Convert time coords to dt64 - t_coords = [t for t in dat['coords'] if 'time' in t] + t_coords = [t for t in dat["coords"] if "time" in t] for ky in t_coords: - dat['coords'][ky] = tmlib.epoch2dt64(dat['coords'][ky]) + dat["coords"][ky] = tmlib.epoch2dt64(dat["coords"][ky]) # Convert time vars to dt64 - t_data = [t for t in dat['data_vars'] if 'time' in t] + t_data = [t for t in dat["data_vars"] if "time" in t] for ky in t_data: - dat['data_vars'][ky] = tmlib.epoch2dt64(dat['data_vars'][ky]) + dat["data_vars"][ky] = tmlib.epoch2dt64(dat["data_vars"][ky]) # Create xarray dataset from upper level dictionary ds = _create_dataset(dat) ds = _set_coords(ds, ref_frame=ds.coord_sys) # Create orientation matrices - if 'beam2inst_orientmat' not in ds: - ds['beam2inst_orientmat'] = xr.DataArray( - _calc_beam_orientmat(ds.beam_angle, - ds.beam_pattern == 'convex'), - coords={'x1': [1, 2, 3, 4], - 'x2': [1, 2, 3, 4]}, - dims=['x1', 'x2'], - attrs={'units': '1', - 'long_name': 'Rotation Matrix'}) - - if 'orientmat' not in ds: - ds['orientmat'] = _calc_orientmat(ds) + if "beam2inst_orientmat" not in ds: + ds["beam2inst_orientmat"] = xr.DataArray( + _calc_beam_orientmat(ds.beam_angle, ds.beam_pattern == "convex"), + coords={"x1": [1, 2, 3, 4], "x2": [1, 2, 3, 4]}, + dims=["x1", "x2"], + attrs={"units": "1", "long_name": "Rotation Matrix"}, + ) + + if "orientmat" not in ds: + ds["orientmat"] = _calc_orientmat(ds) # Check magnetic declination if provided via software and/or userdata _set_rdi_declination(ds, filename, inplace=True) # VMDAS applies gps correction on velocity in .ENX files only - if filename.rsplit('.')[-1] == 'ENX': - ds.attrs['vel_gps_corrected'] = 1 + if filename.rsplit(".")[-1] == "ENX": + ds.attrs["vel_gps_corrected"] = 1 else: # (not ENR or ENS) or WinRiver files - ds.attrs['vel_gps_corrected'] = 0 + ds.attrs["vel_gps_corrected"] = 0 dss += [ds] if len(dss) == 2: - warnings.warn("\nTwo profiling configurations retrieved from file" - "\nReturning first.") + warnings.warn( + "\nTwo profiling configurations retrieved from file" "\nReturning first." + ) # Close handler if debug_level >= 0: @@ -137,22 +144,23 @@ def _remove_gps_duplicates(dat): (in addition to the GPS unit's timestamp). """ - dat['data_vars']['hdwtime_gps'] = dat['coords']['time'] + dat["data_vars"]["hdwtime_gps"] = dat["coords"]["time"] # Remove duplicate timestamp values, if applicable - dat['coords']['time_gps'], idx = np.unique(dat['coords']['time_gps'], - return_index=True) + dat["coords"]["time_gps"], idx = np.unique( + dat["coords"]["time_gps"], return_index=True + ) # Remove nan values, if applicable - nan = np.zeros(dat['coords']['time'].shape, dtype=bool) - if any(np.isnan(dat['coords']['time_gps'])): - nan = np.isnan(dat['coords']['time_gps']) - dat['coords']['time_gps'] = dat['coords']['time_gps'][~nan] - - for key in dat['data_vars']: - if ('gps' in key) or ('nmea' in key): - dat['data_vars'][key] = dat['data_vars'][key][idx] + nan = np.zeros(dat["coords"]["time"].shape, dtype=bool) + if any(np.isnan(dat["coords"]["time_gps"])): + nan = np.isnan(dat["coords"]["time_gps"]) + dat["coords"]["time_gps"] = dat["coords"]["time_gps"][~nan] + + for key in dat["data_vars"]: + if ("gps" in key) or ("nmea" in key): + dat["data_vars"][key] = dat["data_vars"][key][idx] if sum(nan) > 0: - dat['data_vars'][key] = dat['data_vars'][key][~nan] + dat["data_vars"][key] = dat["data_vars"][key][~nan] return dat @@ -163,44 +171,46 @@ def _set_rdi_declination(dat, fname, inplace): included in the heading and in the velocity data. """ - declin = dat.attrs.pop('declination', None) # userdata declination + declin = dat.attrs.pop("declination", None) # userdata declination - if dat.attrs['magnetic_var_deg'] != 0: # from TRDI software if set - dat.attrs['declination'] = dat.attrs['magnetic_var_deg'] - dat.attrs['declination_in_orientmat'] = 1 # logical + if dat.attrs["magnetic_var_deg"] != 0: # from TRDI software if set + dat.attrs["declination"] = dat.attrs["magnetic_var_deg"] + dat.attrs["declination_in_orientmat"] = 1 # logical - if dat.attrs['magnetic_var_deg'] != 0 and declin is not None: + if dat.attrs["magnetic_var_deg"] != 0 and declin is not None: warnings.warn( "'magnetic_var_deg' is set to {:.2f} degrees in the binary " "file '{}', AND 'declination' is set in the 'userdata.json' " "file. DOLfYN WILL USE THE VALUE of {:.2f} degrees in " "userdata.json. If you want to use the value in " "'magnetic_var_deg', delete the value from userdata.json and " - "re-read the file." - .format(dat.attrs['magnetic_var_deg'], fname, declin)) - dat.attrs['declination'] = declin + "re-read the file.".format(dat.attrs["magnetic_var_deg"], fname, declin) + ) + dat.attrs["declination"] = declin if declin is not None: set_declination(dat, declin, inplace) -class _RDIReader(): - _pos = 0 - progress = 0 - _cfac = 180 / 2 ** 31 - _source = 0 - _fixoffset = 0 - _nbyte = 0 - _search_num = 30000 # Maximum distance? to search - _debug7f79 = None - - def __init__(self, fname, navg=1, debug_level=0, vmdas_search=False, winriver=False): +class _RDIReader: + def __init__( + self, fname, navg=1, debug_level=-1, vmdas_search=False, winriver=False + ): self.fname = _abspath(fname) - print('\nReading file {} ...'.format(fname)) + print("\nReading file {} ...".format(fname)) self._debug_level = debug_level self._vmdas_search = vmdas_search self._winrivprob = winriver - self.flag = 0 + self._vm_source = 0 + self._pos = 0 + self.progress = 0 + self._cfac = 180 / 2**31 + self._fixoffset = 0 + self._nbyte = 0 + self.n_cells_diff = 0 + self.n_cells_sl = 0 + self.cs_diff = 0 + self.cs = [] self.cfg = {} self.cfgbb = {} self.hdr = {} @@ -209,24 +219,21 @@ def __init__(self, fname, navg=1, debug_level=0, vmdas_search=False, winriver=Fa # Check header, double buffer, and get filesize self._filesize = getsize(self.fname) space = self.code_spacing() # '0x7F' - self._npings = int(self._filesize / (space + 2)) - if self._debug_level >= 0: - logging.info('Done: {}'.format(self.cfg)) - logging.info('self._bb {}'.format(self._bb)) - logging.info(self.cfgbb) + self._npings = self._filesize // space + if self._debug_level > -1: + logging.info("Done: {}".format(self.cfg)) + logging.info("self._bb {}".format(self._bb)) + logging.info("self.cfgbb: {}".format(self.cfgbb)) self.f.seek(self._pos, 0) self.n_avg = navg - self.ensemble = defs._ensemble(self.n_avg, self.cfg['n_cells']) + self.ensemble = defs._ensemble(self.n_avg, self.cfg["n_cells"]) if self._bb: - self.ensembleBB = defs._ensemble(self.n_avg, self.cfgbb['n_cells']) + self.ensembleBB = defs._ensemble(self.n_avg, self.cfgbb["n_cells"]) - self.vars_read = defs._variable_setlist(['time']) + self.vars_read = defs._variable_setlist(["time"]) if self._bb: - self.vars_readBB = defs._variable_setlist(['time']) - - if self._debug_level >= 0: - logging.info(' %d pings estimated in this file' % self._npings) + self.vars_readBB = defs._variable_setlist(["time"]) def code_spacing(self, iternum=50): """ @@ -237,7 +244,7 @@ def code_spacing(self, iternum=50): p0 = self._pos # Get basic header data and check dual profile if not self.read_hdr(): - raise RuntimeError('No header in this file') + raise RuntimeError("No header in this file") self._bb = self.check_for_double_buffer() # Turn off debugging to check code spacing @@ -249,52 +256,48 @@ def code_spacing(self, iternum=50): except: break # Compute the average of the data size: - size = (self._pos - p0) / (i+1) * 0.995 + size = (self._pos - p0) / (i + 1) self.f = fd self._pos = p0 self._debug_level = debug_level return size - def read_hdr(self,): - fd = self.f - cfgid = list(fd.read_ui8(2)) - nread = 0 - if self._debug_level >= 0: - logging.info('pos {}'.format(self.f.pos)) - logging.info('cfgid0: [{:x}, {:x}]'.format(*cfgid)) - while (cfgid[0] != 127 or cfgid[1] != 127) or not self.checkheader(): - nextbyte = fd.read_ui8(1) - if nextbyte is None: - return False - pos = fd.tell() - nread += 1 - cfgid[1] = cfgid[0] - cfgid[0] = nextbyte - if not pos % 1000: - if self._debug_level >= 0: - logging.info(' Still looking for valid cfgid at file ' - 'position %d ...' % pos) + def read_hdr(self): + """ + Scan file until 7f7f is found + """ + if not self.search_buffer(): + return False self._pos = self.f.tell() - 2 self.read_hdrseg() return True - def check_for_double_buffer(self,): + def read_hdrseg(self): + fd = self.f + hdr = self.hdr + hdr["nbyte"] = fd.read_i16(1) + spare = fd.read_ui8(1) + ndat = fd.read_ui8(1) + hdr["dat_offsets"] = fd.read_ui16(ndat) + self._nbyte = 4 + ndat * 2 + + def check_for_double_buffer(self): """ VMDAS will record two buffers in NB or NB/BB mode, so we need to figure out if that is happening here """ found = False pos = self.f.pos - if self._debug_level >= 0: + if self._debug_level > -1: logging.info(self.hdr) - logging.info('pos {}'.format(pos)) + logging.info("pos {}".format(pos)) self.id_positions = {} - for offset in self.hdr['dat_offsets']: - self.f.seek(offset+pos - self.hdr['dat_offsets'][0], rel=0) + for offset in self.hdr["dat_offsets"]: + self.f.seek(offset + pos - self.hdr["dat_offsets"][0], rel=0) id = self.f.read_ui16(1) self.id_positions[id] = offset - if self._debug_level >= 0: - logging.info('pos {} id {}'.format(offset, id)) + if self._debug_level > -1: + logging.info("id {} offset {}".format(id, offset)) if id == 1: self.read_fixed(bb=True) found = True @@ -306,21 +309,27 @@ def check_for_double_buffer(self,): self._vmdas_search = True return found - def mean(self, dat): - if self.n_avg == 1: - return dat[..., 0] - return np.nanmean(dat, axis=-1) - def load_data(self, nens=None): if nens is None: - self._nens = int(self._npings / self.n_avg) - elif (nens.__class__ is tuple or nens.__class__ is list): + # Attempt to overshoot WinRiver2 or *Pro filesize + if (self.cfg["coord_sys"] == "ship") or ( + self.cfg["inst_model"] + in [ + "RiverPro", + "StreamPro", + ] + ): + self._nens = int(self._filesize / self.hdr["nbyte"] / self.n_avg * 1.1) + else: + # Attempt to overshoot other instrument filesizes + self._nens = int(self._npings / self.n_avg) + elif nens.__class__ is tuple or nens.__class__ is list: raise Exception(" `nens` must be a integer") else: self._nens = nens - if self._debug_level >= 0: - logging.info(' taking data from pings 0 - %d' % self._nens) - logging.info(' %d ensembles will be produced.\n' % self._nens) + if self._debug_level > -1: + logging.info(" taking data from pings 0 - %d" % self._nens) + logging.info(" %d ensembles will be produced.\n" % self._nens) self.init_data() for iens in range(self._nens): @@ -333,97 +342,103 @@ def load_data(self, nens=None): ens = [self.ensemble] vars = [self.vars_read] datl = [self.outd] + cfgl = [self.cfg] if self._bb: ens += [self.ensembleBB] vars += [self.vars_readBB] datl += [self.outdBB] + cfgl += [self.cfgbb] for var, en, dat in zip(vars, ens, datl): + for nm in var: + dat = self.save_profiles(dat, nm, en, iens) + # reset flag after all variables run + self.n_cells_diff = 0 + + # Set clock clock = en.rtc[:, :] if clock[0, 0] < 100: clock[0, :] += defs.century - - for nm in var: - # If n_cells has increased (WinRiver transects) - ds = defs._get(dat, nm) - bn = self.mean(en[nm]) - # Check that - # 1. n_cells has changed, - # 2. nm is a beam variable - # 3. n_cells is greater than any previous - if self.flag > 0 and len(ds.shape) == 3 and (ds.shape[0] != bn.shape[0]): - # increase the size of original dataset - a = np.empty( - (self.flag, ds.shape[1], ds.shape[2]))*np.nan - ds = np.append(ds, a, axis=0) - defs._setd(dat, nm, ds) - # Copy the ensemble to the dataset. - ds[..., iens] = bn - # reset after all variables run - self.flag = 0 - try: dates = tmlib.date2epoch( - tmlib.datetime(*clock[:6, 0], - microsecond=clock[6, 0] * 10000))[0] + tmlib.datetime(*clock[:6, 0], microsecond=clock[6, 0] * 10000) + )[0] except ValueError: - warnings.warn("Invalid time stamp in ping {}.".format( - int(self.ensemble.number[0]))) - dat['coords']['time'][iens] = np.NaN + warnings.warn( + "Invalid time stamp in ping {}.".format( + int(self.ensemble.number[0]) + ) + ) + dat["coords"]["time"][iens] = np.NaN else: - dat['coords']['time'][iens] = np.median(dates) - - self.cleanup(self.cfg, self.outd) - if self._bb: - self.cleanup(self.cfgbb, self.outdBB) + dat["coords"]["time"][iens] = np.median(dates) # Finalize dataset (runs through both nb and bb) - for dat in datl: - self.finalize(dat) - if 'vel_bt' in dat['data_vars']: - dat['attrs']['rotate_vars'].append('vel_bt') + for dat, cfg in zip(datl, cfgl): + dat, cfg = self.cleanup(dat, cfg) + dat = self.finalize(dat) + if "vel_bt" in dat["data_vars"]: + dat["attrs"]["rotate_vars"].append("vel_bt") - dat = self.outd datbb = self.outdBB if self._bb else None - return dat, datbb - - def init_data(self,): - outd = {'data_vars': {}, 'coords': {}, - 'attrs': {}, 'units': {}, 'long_name': {}, - 'standard_name': {}, 'sys': {}} - outd['attrs']['inst_make'] = 'TRDI' - outd['attrs']['inst_type'] = 'ADCP' - outd['attrs']['rotate_vars'] = ['vel', ] + return self.outd, datbb + + def init_data(self): + outd = { + "data_vars": {}, + "coords": {}, + "attrs": {}, + "units": {}, + "long_name": {}, + "standard_name": {}, + "sys": {}, + } + outd["attrs"]["inst_make"] = "TRDI" + outd["attrs"]["inst_type"] = "ADCP" + outd["attrs"]["rotate_vars"] = [ + "vel", + ] # Currently RDI doesn't use IMUs - outd['attrs']['has_imu'] = 0 + outd["attrs"]["has_imu"] = 0 if self._bb: - outdbb = {'data_vars': {}, 'coords': {}, - 'attrs': {}, 'units': {}, 'long_name': {}, - 'standard_name': {}, 'sys': {}} - outdbb['attrs']['inst_make'] = 'TRDI' - outdbb['attrs']['inst_type'] = 'ADCP' - outdbb['attrs']['rotate_vars'] = ['vel', ] - outdbb['attrs']['has_imu'] = 0 - + outdbb = { + "data_vars": {}, + "coords": {}, + "attrs": {}, + "units": {}, + "long_name": {}, + "standard_name": {}, + "sys": {}, + } + outdbb["attrs"]["inst_make"] = "TRDI" + outdbb["attrs"]["inst_type"] = "ADCP" + outdbb["attrs"]["rotate_vars"] = [ + "vel", + ] + outdbb["attrs"]["has_imu"] = 0 + + # Preallocate variables and data sizes for nm in defs.data_defs: - outd = defs._idata(outd, nm, - sz=defs._get_size(nm, self._nens, self.cfg['n_cells'])) + outd = defs._idata( + outd, nm, sz=defs._get_size(nm, self._nens, self.cfg["n_cells"]) + ) self.outd = outd if self._bb: for nm in defs.data_defs: - outdbb = defs._idata(outdbb, nm, - sz=defs._get_size(nm, self._nens, self.cfgbb['n_cells'])) + outdbb = defs._idata( + outdbb, nm, sz=defs._get_size(nm, self._nens, self.cfgbb["n_cells"]) + ) self.outdBB = outdbb if self._debug_level > 1: - logging.info(np.shape(outdbb['data_vars']['vel'])) + logging.info(np.shape(outdbb["data_vars"]["vel"])) if self._debug_level > 1: - logging.info('{} ncells, not BB'.format(self.cfg['n_cells'])) + logging.info("{} ncells, not BB".format(self.cfg["n_cells"])) if self._bb: - logging.info('{} ncells, BB'.format(self.cfgbb['n_cells'])) + logging.info("{} ncells, BB".format(self.cfgbb["n_cells"])) - def read_buffer(self,): + def read_buffer(self): fd = self.f self.ensemble.k = -1 # so that k+=1 gives 0 on the first loop. if self._bb: @@ -435,304 +450,300 @@ def read_buffer(self,): return False startpos = fd.tell() - 2 self.read_hdrseg() - if self._debug_level >= 0: - logging.info('Read Header', hdr) + if self._debug_level > -1: + logging.info("Read Header", hdr) byte_offset = self._nbyte + 2 self._read_vmdas = False - for n in range(len(hdr['dat_offsets'])): + for n in range(len(hdr["dat_offsets"])): id = fd.read_ui16(1) if self._debug_level > 0: - logging.info(f'n {n}: {id} {id:04x}') + logging.info(f"n {n}: {id} {id:04x}") self.print_pos() retval = self.read_dat(id) - if retval == 'FAIL': + if retval == "FAIL": break byte_offset += self._nbyte - if n < (len(hdr['dat_offsets']) - 1): - oset = hdr['dat_offsets'][n + 1] - byte_offset + if n < (len(hdr["dat_offsets"]) - 1): + oset = hdr["dat_offsets"][n + 1] - byte_offset if oset != 0: if self._debug_level > 0: - logging.debug( - ' %s: Adjust location by %d\n' % (id, oset)) + logging.debug(" %s: Adjust location by %d\n" % (id, oset)) fd.seek(oset, 1) - byte_offset = hdr['dat_offsets'][n + 1] + byte_offset = hdr["dat_offsets"][n + 1] else: - if hdr['nbyte'] - 2 != byte_offset: + if hdr["nbyte"] - 2 != byte_offset: if not self._winrivprob: if self._debug_level > 0: - logging.debug(' {:d}: Adjust location by {:d}\n' - .format(id, hdr['nbyte'] - 2 - byte_offset)) - self.f.seek(hdr['nbyte'] - 2 - byte_offset, 1) - byte_offset = hdr['nbyte'] - 2 + logging.debug( + " {:d}: Adjust location by {:d}\n".format( + id, hdr["nbyte"] - 2 - byte_offset + ) + ) + self.f.seek(hdr["nbyte"] - 2 - byte_offset, 1) + byte_offset = hdr["nbyte"] - 2 # Check for vmdas again because vmdas doesn't set the offsets # correctly, and we need this info: if not self._read_vmdas and self._vmdas_search: - if self._debug_level >= 1: - logging.info( - 'Searching for vmdas nav data. Going to next ensemble') + if self._debug_level > 0: + logging.info("Searching for vmdas nav data. Going to next ensemble") self.search_buffer() # now go back to where vmdas would be: fd.seek(-98, 1) id = self.f.read_ui16(1) if id is not None: - if self._debug_level >= 1: - logging.info(f'Found {id:04d}') + if self._debug_level > 0: + logging.info(f"Found {id:04d}") if id == 8192: self.read_dat(id) readbytes = fd.tell() - startpos - offset = hdr['nbyte'] + 2 - readbytes + offset = hdr["nbyte"] + 2 - readbytes self.check_offset(offset, readbytes) self.print_pos(byte_offset=byte_offset) return True + def print_progress(self): + self.progress = self.f.tell() + if self._debug_level > 1: + logging.debug( + " pos %0.0fmb/%0.0fmb\n" + % (self.f.tell() / 1048576.0, self._filesize / 1048576.0) + ) + if (self.f.tell() - self.progress) < 1048576: + return + def search_buffer(self): """ Check to see if the next bytes indicate the beginning of a data block. If not, search for the next data block, up to _search_num times. """ - id = self.f.read_ui8(2) + fd = self.f + id = fd.read_ui8(2) if id is None: return False - id1 = list(id) + cfgid = list(id) + pos_7f79 = False search_cnt = 0 - fd = self.f - if self._debug_level >= 2: - logging.info(' -->In search_buffer...') - while (search_cnt < self._search_num and - ((id1[0] != 127 or id1[1] != 127) or - not self.checkheader())): - search_cnt += 1 - nextbyte = fd.read_ui8(1) - if nextbyte == None: - return False - id1[1] = id1[0] - id1[0] = nextbyte - if search_cnt == self._search_num: - raise Exception( - 'Searched {} entries... Bad data encountered. -> {}' - .format(search_cnt, id1)) - elif search_cnt > 0: - if self._debug_level >= 1: - logging.info(' Searched {} bytes to find next ' - 'valid ensemble start [{:x}, {:x}]\n' - .format(search_cnt, *id1)) + + if self._debug_level > -1: + logging.info("pos {}".format(fd.pos)) + logging.info("cfgid0: [{:x}, {:x}]".format(*cfgid)) + # If not [127, 127] or if the file ends in the next ensemble + while (cfgid != [127, 127]) or self.check_eof(): + if cfgid == [127, 121]: + # Search for the next header or the end of the file + skipbytes = fd.read_i16(1) + fd.seek(skipbytes - 2, 1) + id = fd.read_ui8(2) + if id is None: # EOF + return False + cfgid = list(id) + pos_7f79 = True + else: + # Search til we find something or hit the end of the file + search_cnt += 1 + nextbyte = fd.read_ui8(1) + if nextbyte is None: # EOF + return False + cfgid[0] = cfgid[1] + cfgid[1] = nextbyte + + if pos_7f79 and self._debug_level > -1: + logging.info("Skipped junk data: [{:x}, {:x}]".format(*[127, 121])) + + if search_cnt > 0: + if self._debug_level > 0: + logging.info( + " Searched {} bytes to find next " + "valid ensemble start [{:x}, {:x}]\n".format(search_cnt, *cfgid) + ) + return True - def checkheader(self,): - if self._debug_level > 1: - logging.info(" ###In checkheader.") + def check_eof(self): + """ + Returns True if next header is bad or at end of file. + """ fd = self.f - valid = False - if self._debug_level >= 0: - logging.info('pos {}'.format(self.f.pos)) + out = True numbytes = fd.read_i16(1) + # Search for next config id if numbytes > 0: fd.seek(numbytes - 2, 1) cfgid = fd.read_ui8(2) if cfgid is None: if self._debug_level > 1: - logging.info('EOF') - return False + logging.info("EOF") + return True + # Make sure one is found, either 7f7f or 7f79 if len(cfgid) == 2: fd.seek(-numbytes - 2, 1) if cfgid[0] == 127 and cfgid[1] in [127, 121]: - if cfgid[1] == 121 and self._debug7f79 is None: - self._debug7f79 = True - if self._debug_level > 1: - logging.warning('7f79!!!') - valid = True + out = False else: fd.seek(-2, 1) - if self._debug_level > 1: - logging.info(" ###Leaving checkheader.") - return valid - - def read_hdrseg(self,): - fd = self.f - hdr = self.hdr - hdr['nbyte'] = fd.read_i16(1) - spare = fd.read_ui8(1) - ndat = fd.read_ui8(1) - hdr['dat_offsets'] = fd.read_ui16(ndat) - self._nbyte = 4 + ndat * 2 - - def print_progress(self,): - self.progress = self.f.tell() - if self._debug_level > 1: - logging.debug(' pos %0.0fmb/%0.0fmb\n' % - (self.f.tell() / 1048576., self._filesize / 1048576.)) - if (self.f.tell() - self.progress) < 1048576: - return + return out def print_pos(self, byte_offset=-1): - """Print the position in the file, used for debugging. - """ - if self._debug_level >= 2: - if hasattr(self, 'ensemble'): + """Print the position in the file, used for debugging.""" + if self._debug_level > 1: + if hasattr(self, "ensemble"): k = self.ensemble.k else: k = 0 logging.debug( - f' pos: {self.f.tell()}, pos_: {self._pos}, nbyte: {self._nbyte}, k: {k}, byte_offset: {byte_offset}') - - def check_offset(self, offset, readbytes): - fd = self.f - if offset != 4 and self._fixoffset == 0: - if self._debug_level > 0: - if fd.tell() == self._filesize: - logging.error( - ' EOF reached unexpectedly - discarding this last ensemble\n') - else: - logging.debug(" Adjust location by {:d} (readbytes={:d},hdr['nbyte']={:d})\n" - .format(offset, readbytes, self.hdr['nbyte'])) - self._fixoffset = offset - 4 - fd.seek(4 + self._fixoffset, 1) - - def remove_end(self, iens): - dat = self.outd - if self._debug_level > 0: - logging.info(' Encountered end of file. Cleaning up data.') - for nm in self.vars_read: - defs._setd(dat, nm, defs._get(dat, nm)[..., :iens]) + f" pos: {self.f.tell()}, pos_: {self._pos}, nbyte: {self._nbyte}, k: {k}, byte_offset: {byte_offset}" + ) def read_dat(self, id): - function_map = {0: (self.read_fixed, []), # 0000 1st profile fixed leader - 1: (self.read_fixed, [True]), # 0001 - # 0010 Surface layer fixed leader (RiverPro & StreamPro) - 16: (self.read_fixed_sl, []), - # 0080 1st profile variable leader - 128: (self.read_var, [0]), - # 0081 2nd profile variable leader - 129: (self.read_var, [1]), - # 0100 1st profile velocity - 256: (self.read_vel, [0]), - # 0101 2nd profile velocity - 257: (self.read_vel, [1]), - # 0103 Waves first leader - 259: (self.skip_Nbyte, [74]), - # 0110 Surface layer velocity (RiverPro & StreamPro) - 272: (self.read_vel, [2]), - # 0200 1st profile correlation - 512: (self.read_corr, [0]), - # 0201 2nd profile correlation - 513: (self.read_corr, [1]), - # 0203 Waves data - 515: (self.skip_Nbyte, [186]), - # 020C Ambient sound profile - 524: (self.skip_Nbyte, [4]), - # 0210 Surface layer correlation (RiverPro & StreamPro) - 528: (self.read_corr, [2]), - # 0300 1st profile amplitude - 768: (self.read_amp, [0]), - # 0301 2nd profile amplitude - 769: (self.read_amp, [1]), - # 0302 Beam 5 Sum of squared velocities - 770: (self.skip_Ncol, []), - # 0303 Waves last leader - 771: (self.skip_Ncol, [18]), - # 0310 Surface layer amplitude (RiverPro & StreamPro) - 784: (self.read_amp, [2]), - # 0400 1st profile % good - 1024: (self.read_prcnt_gd, [0]), - # 0401 2nd profile pct good - 1025: (self.read_prcnt_gd, [1]), - # 0403 Waves HPR data - 1027: (self.skip_Nbyte, [6]), - # 0410 Surface layer pct good (RiverPro & StreamPro) - 1040: (self.read_prcnt_gd, [2]), - # 0500 1st profile status - 1280: (self.read_status, [0]), - # 0501 2nd profile status - 1281: (self.read_status, [1]), - # 0510 Surface layer status (RiverPro & StreamPro) - 1296: (self.read_status, [2]), - 1536: (self.read_bottom, []), # 0600 bottom tracking - 1793: (self.skip_Ncol, [4]), # 0701 number of pings - 1794: (self.skip_Ncol, [4]), # 0702 sum of squared vel - 1795: (self.skip_Ncol, [4]), # 0703 sum of velocities - 2560: (self.skip_Ncol, []), # 0A00 Beam 5 velocity - 2816: (self.skip_Ncol, []), # 0B00 Beam 5 correlation - 3072: (self.skip_Ncol, []), # 0C00 Beam 5 amplitude - 3328: (self.skip_Ncol, []), # 0D00 Beam 5 pct_good - # Fixed attitude data format for Ocean Surveyor ADCPs - 3000: (self.skip_Nbyte, [32]), - 3841: (self.skip_Nbyte, [38]), # 0F01 Beam 5 leader - 8192: (self.read_vmdas, []), # 2000 - # 2013 Navigation parameter data - 8211: (self.skip_Nbyte, [83]), - 8226: (self.read_winriver2, []), # 2022 - 8448: (self.read_winriver, [38]), # 2100 - 8449: (self.read_winriver, [97]), # 2101 - 8450: (self.read_winriver, [45]), # 2102 - 8451: (self.read_winriver, [60]), # 2103 - 8452: (self.read_winriver, [38]), # 2104 - # 3200 Transformation matrix - 12800: (self.skip_Nbyte, [32]), - # 3000 Fixed attitude data format for Ocean Surveyor ADCPs - 12288: (self.skip_Nbyte, [32]), - 12496: (self.skip_Nbyte, [24]), # 30D0 - 12504: (self.skip_Nbyte, [48]), # 30D8 - # 4100 beam 5 range - 16640: (self.read_alt, []), - # 4400 Firmware status data (RiverPro & StreamPro) - 17408: (self.skip_Nbyte, [28]), - # 4401 Auto mode setup (RiverPro & StreamPro) - 17409: (self.skip_Nbyte, [82]), - # 5803 High resolution bottom track velocity - 22531: (self.skip_Nbyte, [68]), - # 5804 Bottom track range - 22532: (self.skip_Nbyte, [21]), - # 5901 ISM (IMU) data - 22785: (self.skip_Nbyte, [65]), - # 5902 Ping attitude - 22786: (self.skip_Nbyte, [105]), - # 7001 ADC data - 28673: (self.skip_Nbyte, [14]), - } + function_map = { + # 0000 1st profile fixed leader + 0: (self.read_fixed, []), + # 0001 2nd profile fixed leader + 1: (self.read_fixed, [True]), + # 0010 Surface layer fixed leader (RiverPro & StreamPro) + 16: (self.read_fixed_sl, []), + # 0080 1st profile variable leader + 128: (self.read_var, [0]), + # 0081 2nd profile variable leader + 129: (self.read_var, [1]), + # 0100 1st profile velocity + 256: (self.read_vel, [0]), + # 0101 2nd profile velocity + 257: (self.read_vel, [1]), + # 0103 Waves first leader + 259: (self.skip_Nbyte, [74]), + # 0110 Surface layer velocity (RiverPro & StreamPro) + 272: (self.read_vel, [2]), + # 0200 1st profile correlation + 512: (self.read_corr, [0]), + # 0201 2nd profile correlation + 513: (self.read_corr, [1]), + # 0203 Waves data + 515: (self.skip_Nbyte, [186]), + # 020C Ambient sound profile + 524: (self.skip_Nbyte, [4]), + # 0210 Surface layer correlation (RiverPro & StreamPro) + 528: (self.read_corr, [2]), + # 0300 1st profile amplitude + 768: (self.read_amp, [0]), + # 0301 2nd profile amplitude + 769: (self.read_amp, [1]), + # 0302 Beam 5 Sum of squared velocities + 770: (self.skip_Ncol, []), + # 0303 Waves last leader + 771: (self.skip_Ncol, [18]), + # 0310 Surface layer amplitude (RiverPro & StreamPro) + 784: (self.read_amp, [2]), + # 0400 1st profile % good + 1024: (self.read_prcnt_gd, [0]), + # 0401 2nd profile pct good + 1025: (self.read_prcnt_gd, [1]), + # 0403 Waves HPR data + 1027: (self.skip_Nbyte, [6]), + # 0410 Surface layer pct good (RiverPro & StreamPro) + 1040: (self.read_prcnt_gd, [2]), + # 0500 1st profile status + 1280: (self.read_status, [0]), + # 0501 2nd profile status + 1281: (self.read_status, [1]), + # 0510 Surface layer status (RiverPro & StreamPro) + 1296: (self.read_status, [2]), + 1536: (self.read_bottom, []), # 0600 bottom tracking + 1793: (self.skip_Ncol, [4]), # 0701 number of pings + 1794: (self.skip_Ncol, [4]), # 0702 sum of squared vel + 1795: (self.skip_Ncol, [4]), # 0703 sum of velocities + 2560: (self.skip_Ncol, []), # 0A00 Beam 5 velocity + 2816: (self.skip_Ncol, []), # 0B00 Beam 5 correlation + 3072: (self.skip_Ncol, []), # 0C00 Beam 5 amplitude + 3328: (self.skip_Ncol, []), # 0D00 Beam 5 pct_good + # Fixed attitude data format for Ocean Surveyor ADCPs + 3000: (self.skip_Nbyte, [32]), + 3841: (self.skip_Nbyte, [38]), # 0F01 Beam 5 leader + 8192: (self.read_vmdas, []), # 2000 + # 2013 Navigation parameter data + 8211: (self.skip_Nbyte, [83]), + 8226: (self.read_winriver2, []), # 2022 + 8448: (self.read_winriver, [38]), # 2100 + 8449: (self.read_winriver, [97]), # 2101 + 8450: (self.read_winriver, [45]), # 2102 + 8451: (self.read_winriver, [60]), # 2103 + 8452: (self.read_winriver, [38]), # 2104 + # 3200 Transformation matrix + 12800: (self.skip_Nbyte, [32]), + # 3000 Fixed attitude data format for Ocean Surveyor ADCPs + 12288: (self.skip_Nbyte, [32]), + 12496: (self.skip_Nbyte, [24]), # 30D0 + 12504: (self.skip_Nbyte, [48]), # 30D8 + # 4100 beam 5 range + 16640: (self.read_alt, []), + # 4400 Firmware status data (RiverPro & StreamPro) + 17408: (self.skip_Nbyte, [28]), + # 4401 Auto mode setup (RiverPro & StreamPro) + 17409: (self.skip_Nbyte, [82]), + # 5803 High resolution bottom track velocity + 22531: (self.skip_Nbyte, [68]), + # 5804 Bottom track range + 22532: (self.skip_Nbyte, [21]), + # 5901 ISM (IMU) data + 22785: (self.skip_Nbyte, [65]), + # 5902 Ping attitude + 22786: (self.skip_Nbyte, [105]), + # 7001 ADC data + 28673: (self.skip_Nbyte, [14]), + } # Call the correct function: - if self._debug_level >= 2: - logging.debug(f'Trying to Read {id}') + if self._debug_level > 1: + logging.debug(f"Trying to Read {id}") if id in function_map: if self._debug_level > 1: - logging.info(' Reading code {}...'.format(hex(id))) + logging.info(" Reading code {}...".format(hex(id))) retval = function_map.get(id)[0](*function_map[id][1]) if retval: return retval if self._debug_level > 1: - logging.info(' success!') + logging.info(" success!") else: self.read_nocode(id) def read_fixed(self, bb=False): self.read_cfgseg(bb=bb) self._nbyte += 2 - if self._debug_level >= 0: - logging.info('Read Fixed') - - # Check if n_cells changed (for winriver transect files) - if hasattr(self, 'ensemble') and (self.ensemble['n_cells'] != self.cfg['n_cells']): - diff = self.cfg['n_cells'] - self.ensemble['n_cells'] - if diff > 0: - self.flag = diff - self.ensemble = defs._ensemble(self.n_avg, self.cfg['n_cells']) - # Not concerned if # of cells decreases - if self._debug_level >= 1: - logging.warning('Number of cells changed to {}' - .format(self.cfg['n_cells'])) - - def read_fixed_sl(self,): + if self._debug_level > -1: + logging.info("Read Fixed") + + # Check if n_cells has increased (for winriver transect files) + if hasattr(self, "ensemble"): + self.n_cells_diff = self.cfg["n_cells"] - self.ensemble["n_cells"] + # Increase n_cells if greater than 0 + if self.n_cells_diff > 0: + self.ensemble = defs._ensemble(self.n_avg, self.cfg["n_cells"]) + if self._debug_level > 0: + logging.warning( + f"Maximum number of cells increased to {self.cfg['n_cells']}" + ) + + def read_fixed_sl(self): # Surface layer profile cfg = self.cfg - cfg['surface_layer'] = 1 - cfg['n_cells_sl'] = self.f.read_ui8(1) - cfg['cell_size_sl'] = self.f.read_ui16(1) * .01 - cfg['bin1_dist_m_sl'] = round(self.f.read_ui16(1) * .01, 4) - - if self._debug_level >= 0: - logging.info('Read Surface Layer Config') + cfg["surface_layer"] = 1 + n_cells = self.f.read_ui8(1) + # Check if n_cells is greater than what was used in prior profiles + if n_cells > self.n_cells_sl: + self.n_cells_sl = n_cells + if self._debug_level > 0: + logging.warning( + f"Maximum number of surface layer cells increased to {n_cells}" + ) + cfg["n_cells_sl"] = n_cells + # Assuming surface layer profile cell size never changes + cfg["cell_size_sl"] = self.f.read_ui16(1) * 0.01 + cfg["bin1_dist_m_sl"] = round(self.f.read_ui16(1) * 0.01, 4) + + if self._debug_level > -1: + logging.info("Read Surface Layer Config") self._nbyte = 2 + 5 def read_cfgseg(self, bb=False): @@ -745,71 +756,79 @@ def read_cfgseg(self, bb=False): fd = self.f tmp = fd.read_ui8(5) prog_ver0 = tmp[0] - cfg['prog_ver'] = tmp[0] + tmp[1] / 100. - cfg['inst_model'] = defs.adcp_type.get(tmp[0], - 'unrecognized firmware version') + cfg["prog_ver"] = tmp[0] + tmp[1] / 100.0 + cfg["inst_model"] = defs.adcp_type.get(tmp[0], "unrecognized firmware version") config = tmp[2:4] - cfg['beam_angle'] = [15, 20, 30][(config[1] & 3)] + cfg["beam_angle"] = [15, 20, 30][(config[1] & 3)] beam5 = [0, 1][int((config[1] & 16) == 16)] - cfg['freq'] = ([75, 150, 300, 600, 1200, 2400, 38][(config[0] & 7)]) - cfg['beam_pattern'] = (['concave', - 'convex'][int((config[0] & 8) == 8)]) - cfg['orientation'] = ['down', 'up'][int((config[0] & 128) == 128)] - simflag = ['real', 'simulated'][tmp[4]] + cfg["freq"] = [75, 150, 300, 600, 1200, 2400, 38][(config[0] & 7)] + cfg["beam_pattern"] = ["concave", "convex"][int((config[0] & 8) == 8)] + cfg["orientation"] = ["down", "up"][int((config[0] & 128) == 128)] + simflag = ["real", "simulated"][tmp[4]] fd.seek(1, 1) - cfg['n_beams'] = fd.read_ui8(1) + beam5 - cfg['n_cells'] = fd.read_ui8(1) - cfg['pings_per_ensemble'] = fd.read_ui16(1) - cfg['cell_size'] = fd.read_ui16(1) * .01 - cfg['blank_dist'] = fd.read_ui16(1) * .01 - cfg['profiling_mode'] = fd.read_ui8(1) - cfg['min_corr_threshold'] = fd.read_ui8(1) - cfg['n_code_reps'] = fd.read_ui8(1) - cfg['min_prcnt_gd'] = fd.read_ui8(1) - cfg['max_error_vel'] = fd.read_ui16(1) / 1000 - cfg['sec_between_ping_groups'] = ( - np.sum(np.array(fd.read_ui8(3)) * - np.array([60., 1., .01]))) + cfg["n_beams"] = fd.read_ui8(1) + beam5 + # Check if number of cells has changed + n_cells = fd.read_ui8(1) + if ("n_cells" not in cfg) or (n_cells != cfg["n_cells"]): + cfg["n_cells"] = n_cells + if self._debug_level > 0: + logging.info(f"Number of cells set to {cfg['n_cells']}") + cfg["pings_per_ensemble"] = fd.read_ui16(1) + # Check if cell size has changed + cs = fd.read_ui16(1) * 0.01 + if ("cell_size" not in cfg) or (cs != cfg["cell_size"]): + self.cs_diff = cs if "cell_size" not in cfg else (cs - cfg["cell_size"]) + cfg["cell_size"] = cs + if self._debug_level > 0: + logging.info(f"Cell size set to {cfg['cell_size']}") + cfg["blank_dist"] = fd.read_ui16(1) * 0.01 + cfg["profiling_mode"] = fd.read_ui8(1) + cfg["min_corr_threshold"] = fd.read_ui8(1) + cfg["n_code_reps"] = fd.read_ui8(1) + cfg["min_prcnt_gd"] = fd.read_ui8(1) + cfg["max_error_vel"] = fd.read_ui16(1) / 1000 + cfg["sec_between_ping_groups"] = np.sum( + np.array(fd.read_ui8(3)) * np.array([60.0, 1.0, 0.01]) + ) coord_sys = fd.read_ui8(1) - cfg['coord_sys'] = (['beam', 'inst', - 'ship', 'earth'][((coord_sys >> 3) & 3)]) - cfg['use_pitchroll'] = ['no', 'yes'][(coord_sys & 4) == 4] - cfg['use_3beam'] = ['no', 'yes'][(coord_sys & 2) == 2] - cfg['bin_mapping'] = ['no', 'yes'][(coord_sys & 1) == 1] - cfg['heading_misalign_deg'] = fd.read_i16(1) * .01 - cfg['magnetic_var_deg'] = fd.read_i16(1) * .01 - cfg['sensors_src'] = np.binary_repr(fd.read_ui8(1), 8) - cfg['sensors_avail'] = np.binary_repr(fd.read_ui8(1), 8) - cfg['bin1_dist_m'] = round(fd.read_ui16(1) * .01, 4) - cfg['transmit_pulse_m'] = fd.read_ui16(1) * .01 - cfg['water_ref_cells'] = list(fd.read_ui8(2)) # list for attrs - cfg['false_target_threshold'] = fd.read_ui8(1) + cfg["coord_sys"] = ["beam", "inst", "ship", "earth"][((coord_sys >> 3) & 3)] + cfg["use_pitchroll"] = ["no", "yes"][(coord_sys & 4) == 4] + cfg["use_3beam"] = ["no", "yes"][(coord_sys & 2) == 2] + cfg["bin_mapping"] = ["no", "yes"][(coord_sys & 1) == 1] + cfg["heading_misalign_deg"] = fd.read_i16(1) * 0.01 + cfg["magnetic_var_deg"] = fd.read_i16(1) * 0.01 + cfg["sensors_src"] = np.binary_repr(fd.read_ui8(1), 8) + cfg["sensors_avail"] = np.binary_repr(fd.read_ui8(1), 8) + cfg["bin1_dist_m"] = round(fd.read_ui16(1) * 0.01, 4) + cfg["transmit_pulse_m"] = fd.read_ui16(1) * 0.01 + cfg["water_ref_cells"] = list(fd.read_ui8(2)) # list for attrs + cfg["false_target_threshold"] = fd.read_ui8(1) fd.seek(1, 1) - cfg['transmit_lag_m'] = fd.read_ui16(1) * .01 + cfg["transmit_lag_m"] = fd.read_ui16(1) * 0.01 self._nbyte = 40 - if cfg['prog_ver'] >= 8.14: + if cfg["prog_ver"] >= 8.14: cpu_serialnum = fd.read_ui8(8) self._nbyte += 8 - if cfg['prog_ver'] >= 8.24: - cfg['bandwidth'] = fd.read_ui16(1) + if cfg["prog_ver"] >= 8.24: + cfg["bandwidth"] = fd.read_ui16(1) self._nbyte += 2 - if cfg['prog_ver'] >= 16.05: - cfg['power_level'] = fd.read_ui8(1) + if cfg["prog_ver"] >= 16.05: + cfg["power_level"] = fd.read_ui8(1) self._nbyte += 1 - if cfg['prog_ver'] >= 16.27: + if cfg["prog_ver"] >= 16.27: # cfg['navigator_basefreqindex'] = fd.read_ui8(1) fd.seek(1, 1) - cfg['serialnum'] = fd.read_ui32(1) - cfg['beam_angle'] = fd.read_ui8(1) + cfg["serialnum"] = fd.read_ui32(1) + cfg["beam_angle"] = fd.read_ui8(1) self._nbyte += 6 self.configsize = self.f.tell() - cfgstart - if self._debug_level >= 0: - logging.info('Read Config') + if self._debug_level > -1: + logging.info("Read Config") def read_var(self, bb=False): - """ Read variable leader """ + """Read variable leader""" fd = self.f if bb: ens = self.ensembleBB @@ -818,22 +837,24 @@ def read_var(self, bb=False): ens.k += 1 ens = self.ensemble k = ens.k - self.vars_read += ['number', - 'rtc', - 'number', - 'builtin_test_fail', - 'c_sound', - 'depth', - 'heading', - 'pitch', - 'roll', - 'salinity', - 'temp', - 'min_preping_wait', - 'heading_std', - 'pitch_std', - 'roll_std', - 'adc'] + self.vars_read += [ + "number", + "rtc", + "number", + "builtin_test_fail", + "c_sound", + "depth", + "heading", + "pitch", + "roll", + "salinity", + "temp", + "min_preping_wait", + "heading_std", + "pitch_std", + "roll_std", + "adc", + ] ens.number[k] = fd.read_ui16(1) ens.rtc[:, k] = fd.read_ui8(7) ens.number[k] += 65535 * fd.read_ui8(1) @@ -845,8 +866,7 @@ def read_var(self, bb=False): ens.roll[k] = fd.read_i16(1) * 0.01 ens.salinity[k] = fd.read_i16(1) ens.temp[k] = fd.read_i16(1) * 0.01 - ens.min_preping_wait[k] = (fd.read_ui8( - 3) * np.array([60, 1, .01])).sum() + ens.min_preping_wait[k] = (fd.read_ui8(3) * np.array([60, 1, 0.01])).sum() ens.heading_std[k] = fd.read_ui8(1) ens.pitch_std[k] = fd.read_ui8(1) * 0.1 ens.roll_std[k] = fd.read_ui8(1) * 0.1 @@ -854,45 +874,45 @@ def read_var(self, bb=False): self._nbyte = 2 + 40 cfg = self.cfg - if cfg['inst_model'].lower() == 'broadband': - if cfg['prog_ver'] >= 5.55: + if cfg["inst_model"].lower() == "broadband": + if cfg["prog_ver"] >= 5.55: fd.seek(15, 1) cent = fd.read_ui8(1) ens.rtc[:, k] = fd.read_ui8(7) ens.rtc[0, k] = ens.rtc[0, k] + cent * 100 self._nbyte += 23 - elif cfg['inst_model'].lower() == 'ocean surveyor': + elif cfg["inst_model"].lower() == "ocean surveyor": fd.seek(16, 1) # 30 bytes all set to zero, 14 read above self._nbyte += 16 - if cfg['prog_ver'] > 23: + if cfg["prog_ver"] > 23: fd.seek(2, 1) self._nbyte += 2 else: ens.error_status[k] = np.binary_repr(fd.read_ui32(1), 32) - self.vars_read += ['pressure', 'pressure_std'] + self.vars_read += ["pressure", "pressure_std"] self._nbyte += 4 - if cfg['prog_ver'] >= 8.13: + if cfg["prog_ver"] >= 8.13: # Added pressure sensor stuff in 8.13 fd.seek(2, 1) ens.pressure[k] = fd.read_ui32(1) / 1000 # dPa to dbar ens.pressure_std[k] = fd.read_ui32(1) / 1000 self._nbyte += 10 - if cfg['prog_ver'] >= 8.24: + if cfg["prog_ver"] >= 8.24: # Spare byte added 8.24 fd.seek(1, 1) self._nbyte += 1 - if cfg['prog_ver'] >= 16.05: + if cfg["prog_ver"] >= 16.05: # Added more fields with century in clock cent = fd.read_ui8(1) ens.rtc[:, k] = fd.read_ui8(7) ens.rtc[0, k] = ens.rtc[0, k] + cent * 100 self._nbyte += 8 - if cfg['prog_ver'] >= 56: + if cfg["prog_ver"] >= 56: fd.seek(1) # lag near bottom flag self._nbyte += 1 - if self._debug_level >= 0: - logging.info('Read Var') + if self._debug_level > -1: + logging.info("Read Var") def switch_profile(self, bb): if bb == 1: @@ -900,91 +920,88 @@ def switch_profile(self, bb): cfg = self.cfgbb # Placeholder for dual profile mode # Solution for vmdas profile in bb spot (vs nb) - tag = '' + tag = "" elif bb == 2: ens = self.ensemble cfg = self.cfg - tag = '_sl' + tag = "_sl" else: ens = self.ensemble cfg = self.cfg - tag = '' + tag = "" return ens, cfg, tag def read_vel(self, bb=0): ens, cfg, tg = self.switch_profile(bb) - self.vars_read += ['vel'+tg] - n_cells = cfg['n_cells'+tg] + self.vars_read += ["vel" + tg] + n_cells = cfg["n_cells" + tg] k = ens.k - vel = np.array( - self.f.read_i16(4 * n_cells) - ).reshape((n_cells, 4)) * .001 - ens['vel'+tg][:n_cells, :, k] = vel + vel = np.array(self.f.read_i16(4 * n_cells)).reshape((n_cells, 4)) * 0.001 + ens["vel" + tg][:n_cells, :, k] = vel self._nbyte = 2 + 4 * n_cells * 2 - if self._debug_level >= 0: - logging.info('Read Vel') + if self._debug_level > -1: + logging.info("Read Vel") def read_corr(self, bb=0): ens, cfg, tg = self.switch_profile(bb) - self.vars_read += ['corr'+tg] - n_cells = cfg['n_cells'+tg] + self.vars_read += ["corr" + tg] + n_cells = cfg["n_cells" + tg] k = ens.k - ens['corr'+tg][:n_cells, :, k] = np.array( + ens["corr" + tg][:n_cells, :, k] = np.array( self.f.read_ui8(4 * n_cells) ).reshape((n_cells, 4)) self._nbyte = 2 + 4 * n_cells - if self._debug_level >= 0: - logging.info('Read Corr') + if self._debug_level > -1: + logging.info("Read Corr") def read_amp(self, bb=0): ens, cfg, tg = self.switch_profile(bb) - self.vars_read += ['amp'+tg] - n_cells = cfg['n_cells'+tg] + self.vars_read += ["amp" + tg] + n_cells = cfg["n_cells" + tg] k = ens.k - ens['amp'+tg][:n_cells, :, k] = np.array( + ens["amp" + tg][:n_cells, :, k] = np.array( self.f.read_ui8(4 * n_cells) ).reshape((n_cells, 4)) self._nbyte = 2 + 4 * n_cells - if self._debug_level >= 0: - logging.info('Read Amp') + if self._debug_level > -1: + logging.info("Read Amp") def read_prcnt_gd(self, bb=0): ens, cfg, tg = self.switch_profile(bb) - self.vars_read += ['prcnt_gd'+tg] - n_cells = cfg['n_cells'+tg] + self.vars_read += ["prcnt_gd" + tg] + n_cells = cfg["n_cells" + tg] - ens['prcnt_gd'+tg][:n_cells, :, ens.k] = np.array( + ens["prcnt_gd" + tg][:n_cells, :, ens.k] = np.array( self.f.read_ui8(4 * n_cells) ).reshape((n_cells, 4)) self._nbyte = 2 + 4 * n_cells - if self._debug_level >= 0: - logging.info('Read PG') + if self._debug_level > -1: + logging.info("Read PG") def read_status(self, bb=0): ens, cfg, tg = self.switch_profile(bb) - self.vars_read += ['status'+tg] - n_cells = cfg['n_cells'+tg] + self.vars_read += ["status" + tg] + n_cells = cfg["n_cells" + tg] - ens['status'+tg][:n_cells, :, ens.k] = np.array( + ens["status" + tg][:n_cells, :, ens.k] = np.array( self.f.read_ui8(4 * n_cells) ).reshape((n_cells, 4)) self._nbyte = 2 + 4 * n_cells - if self._debug_level >= 0: - logging.info('Read Status') + if self._debug_level > -1: + logging.info("Read Status") - def read_bottom(self,): - self.vars_read += ['dist_bt', 'vel_bt', 'corr_bt', 'amp_bt', - 'prcnt_gd_bt'] + def read_bottom(self): + self.vars_read += ["dist_bt", "vel_bt", "corr_bt", "amp_bt", "prcnt_gd_bt"] fd = self.f ens = self.ensemble k = ens.k cfg = self.cfg - if self._source == 2: - self.vars_read += ['latitude_gps', 'longitude_gps'] + if self._vm_source == 2: + self.vars_read += ["latitude_gps", "longitude_gps"] fd.seek(2, 1) long1 = fd.read_ui16(1) fd.seek(6, 1) @@ -998,10 +1015,9 @@ def read_bottom(self,): ens.corr_bt[:, k] = fd.read_ui8(4) ens.amp_bt[:, k] = fd.read_ui8(4) ens.prcnt_gd_bt[:, k] = fd.read_ui8(4) - if self._source == 2: + if self._vm_source == 2: fd.seek(2, 1) - ens.longitude_gps[k] = ( - long1 + 65536 * fd.read_ui16(1)) * self._cfac + ens.longitude_gps[k] = (long1 + 65536 * fd.read_ui16(1)) * self._cfac if ens.longitude_gps[k] > 180: ens.longitude_gps[k] = ens.longitude_gps[k] - 360 if ens.longitude_gps[k] == 0: @@ -1010,9 +1026,10 @@ def read_bottom(self,): qual = fd.read_ui8(1) if qual == 0: if self._debug_level > 0: - logging.info(' qual==%d,%f %f' % (qual, - ens.latitude_gps[k], - ens.longitude_gps[k])) + logging.info( + " qual==%d,%f %f" + % (qual, ens.latitude_gps[k], ens.longitude_gps[k]) + ) ens.latitude_gps[k] = np.NaN ens.longitude_gps[k] = np.NaN fd.seek(71 - 45 - 16 - 17, 1) @@ -1021,81 +1038,81 @@ def read_bottom(self,): # Skip reference layer data fd.seek(26, 1) self._nbyte = 2 + 68 - if cfg['prog_ver'] >= 5.3: + if cfg["prog_ver"] >= 5.3: fd.seek(7, 1) # skip to rangeMsb bytes ens.dist_bt[:, k] = ens.dist_bt[:, k] + fd.read_ui8(4) * 655.36 self._nbyte += 11 - if cfg['prog_ver'] >= 16.2 and (cfg.get('sourceprog') != 'WINRIVER'): + if cfg["prog_ver"] >= 16.2 and (cfg.get("sourceprog") != "WINRIVER"): fd.seek(4, 1) # not documented self._nbyte += 4 - if cfg['prog_ver'] >= 56.1: + if cfg["prog_ver"] >= 56.1: fd.seek(4, 1) # not documented self._nbyte += 4 - if self._debug_level >= 0: - logging.info('Read Bottom Track') + if self._debug_level > -1: + logging.info("Read Bottom Track") - def read_alt(self,): - """Read altimeter (vertical beam range) """ + def read_alt(self): + """Read altimeter (vertical beam range)""" fd = self.f ens = self.ensemble k = ens.k - self.vars_read += ['alt_dist', 'alt_rssi', 'alt_eval', 'alt_status'] + self.vars_read += ["alt_dist", "alt_rssi", "alt_eval", "alt_status"] ens.alt_eval[k] = fd.read_ui8(1) # evaluation amplitude ens.alt_rssi[k] = fd.read_ui8(1) # RSSI amplitude ens.alt_dist[k] = fd.read_ui32(1) / 1000 # range to surface/seafloor ens.alt_status[k] = fd.read_ui8(1) # status bit flags self._nbyte = 7 + 2 - if self._debug_level >= 0: - logging.info('Read Altimeter') + if self._debug_level > -1: + logging.info("Read Altimeter") - def read_vmdas(self,): + def read_vmdas(self): """Read VMDAS Navigation block""" fd = self.f - self.cfg['sourceprog'] = 'VMDAS' + self.cfg["sourceprog"] = "VMDAS" ens = self.ensemble k = ens.k - if self._source != 1 and self._debug_level >= 0: - logging.info(' \n***** Apparently a VMDAS file \n\n') - self._source = 1 - self.vars_read += ['time_gps', - 'clock_offset_UTC_gps', - 'latitude_gps', - 'longitude_gps', - 'avg_speed_gps', - 'avg_dir_gps', - 'speed_made_good_gps', - 'dir_made_good_gps', - 'flags_gps', - 'pitch_gps', - 'roll_gps', - 'heading_gps', - ] + if self._vm_source != 1 and self._debug_level > -1: + logging.info(" \n***** Apparently a VMDAS file \n\n") + self._vm_source = 1 + self.vars_read += [ + "time_gps", + "clock_offset_UTC_gps", + "latitude_gps", + "longitude_gps", + "avg_speed_gps", + "avg_dir_gps", + "speed_made_good_gps", + "dir_made_good_gps", + "flags_gps", + "pitch_gps", + "roll_gps", + "heading_gps", + ] # UTC date time utim = fd.read_ui8(4) date_utc = tmlib.datetime(utim[2] + utim[3] * 256, utim[1], utim[0]) # 1st lat/lon position after previous ADCP ping # This byte is in hundredths of seconds (10s of milliseconds): - utc_time_first_fix = tmlib.timedelta( - milliseconds=(int(fd.read_ui32(1) / 10))) - ens.clock_offset_UTC_gps[k] = fd.read_i32( - 1) / 1000 # "PC clock offset from UTC" in ms + utc_time_first_fix = tmlib.timedelta(milliseconds=(int(fd.read_ui32(1) / 10))) + ens.clock_offset_UTC_gps[k] = ( + fd.read_i32(1) / 1000 + ) # "PC clock offset from UTC" in ms latitude_first_gps = fd.read_i32(1) * self._cfac longitude_first_gps = fd.read_i32(1) * self._cfac # Last lat/lon position prior to current ADCP ping - utc_time_fix = tmlib.timedelta( - milliseconds=(int(fd.read_ui32(1) / 10))) + utc_time_fix = tmlib.timedelta(milliseconds=(int(fd.read_ui32(1) / 10))) ens.time_gps[k] = tmlib.date2epoch(date_utc + utc_time_fix)[0] ens.latitude_gps[k] = fd.read_i32(1) * self._cfac ens.longitude_gps[k] = fd.read_i32(1) * self._cfac ens.avg_speed_gps[k] = fd.read_ui16(1) / 1000 - ens.avg_dir_gps[k] = fd.read_ui16(1) * 180 / 2 ** 15 # avg true track + ens.avg_dir_gps[k] = fd.read_ui16(1) * 180 / 2**15 # avg true track fd.seek(2, 1) # avg magnetic track ens.speed_made_good_gps[k] = fd.read_ui16(1) / 1000 - ens.dir_made_good_gps[k] = fd.read_ui16(1) * 180 / 2 ** 15 + ens.dir_made_good_gps[k] = fd.read_ui16(1) * 180 / 2**15 fd.seek(2, 1) # reserved ens.flags_gps[k] = int(np.binary_repr(fd.read_ui16(1))) fd.seek(6, 1) # reserved, ADCP ensemble # @@ -1103,50 +1120,52 @@ def read_vmdas(self,): # ADCP date time utim = fd.read_ui8(4) date_adcp = tmlib.datetime(utim[0] + utim[1] * 256, utim[3], utim[2]) - time_adcp = tmlib.timedelta( - milliseconds=(int(fd.read_ui32(1) / 10))) + time_adcp = tmlib.timedelta(milliseconds=(int(fd.read_ui32(1) / 10))) - ens.pitch_gps[k] = fd.read_ui16(1) * 180 / 2 ** 15 - ens.roll_gps[k] = fd.read_ui16(1) * 180 / 2 ** 15 - ens.heading_gps[k] = fd.read_ui16(1) * 180 / 2 ** 15 + ens.pitch_gps[k] = fd.read_ui16(1) * 180 / 2**15 + ens.roll_gps[k] = fd.read_ui16(1) * 180 / 2**15 + ens.heading_gps[k] = fd.read_ui16(1) * 180 / 2**15 fd.seek(10, 1) self._nbyte = 2 + 76 - if self._debug_level >= 0: - logging.info('Read VMDAS') + if self._debug_level > -1: + logging.info("Read VMDAS") self._read_vmdas = True - def read_winriver2(self, ): + def read_winriver2(self): startpos = self.f.tell() self._winrivprob = True - self.cfg['sourceprog'] = 'WinRiver2' + self.cfg["sourceprog"] = "WinRiver2" ens = self.ensemble k = ens.k - if self._debug_level >= 0: - logging.info('Read WinRiver2') - self._source = 3 + if self._debug_level > -1: + logging.info("Read WinRiver2") + self._vm_source = 3 spid = self.f.read_ui16(1) # NMEA specific IDs if spid in [4, 104]: # GGA sz = self.f.read_ui16(1) dtime = self.f.read_f64(1) if sz <= 43: # If no sentence, data is still stored in nmea format - empty_gps = self.f.reads(sz-2) + empty_gps = self.f.reads(sz - 2) self.f.seek(2, 1) else: # TRDI rewrites the nmea string into their format if one is found start_string = self.f.reads(6) - if type(start_string) != str: - if self._debug_level >= 1: - logging.warning(f'Invalid GGA string found in ensemble {k},' - ' skipping...') - return 'FAIL' + if not isinstance(start_string, str): + if self._debug_level > 0: + logging.warning( + f"Invalid GGA string found in ensemble {k}," " skipping..." + ) + return "FAIL" self.f.seek(1, 1) gga_time = self.f.reads(9) - time = tmlib.timedelta(hours=int(gga_time[0:2]), - minutes=int(gga_time[2:4]), - seconds=int(gga_time[4:6]), - milliseconds=int(float(gga_time[6:])*1000)) + time = tmlib.timedelta( + hours=int(gga_time[0:2]), + minutes=int(gga_time[2:4]), + seconds=int(gga_time[4:6]), + milliseconds=int(float(gga_time[6:]) * 1000), + ) clock = self.ensemble.rtc[:, :] if clock[0, 0] < 100: clock[0, :] += defs.century @@ -1155,115 +1174,127 @@ def read_winriver2(self, ): self.f.seek(1, 1) ens.latitude_gps[k] = self.f.read_f64(1) tcNS = self.f.reads(1) # 'N' or 'S' - if tcNS == 'S': + if tcNS == "S": ens.latitude_gps[k] *= -1 ens.longitude_gps[k] = self.f.read_f64(1) tcEW = self.f.reads(1) # 'E' or 'W' - if tcEW == 'W': + if tcEW == "W": ens.longitude_gps[k] *= -1 ens.fix_gps[k] = self.f.read_ui8(1) # gps fix type/quality ens.n_sat_gps[k] = self.f.read_ui8(1) # of satellites # horizontal dilution of precision - ens.hdop_gps[k] = self.f.read_float(1) - ens.elevation_gps[k] = self.f.read_float(1) # altitude + ens.hdop_gps[k] = self.f.read_f32(1) + ens.elevation_gps[k] = self.f.read_f32(1) # altitude m = self.f.reads(1) # altitude unit, 'm' - h_geoid = self.f.read_float(1) # height of geoid + h_geoid = self.f.read_f32(1) # height of geoid m2 = self.f.reads(1) # geoid unit, 'm' - ens.rtk_age_gps[k] = self.f.read_float(1) + ens.rtk_age_gps[k] = self.f.read_f32(1) station_id = self.f.read_ui16(1) - self.vars_read += ['time_gps', 'longitude_gps', 'latitude_gps', 'fix_gps', - 'n_sat_gps', 'hdop_gps', 'elevation_gps', 'rtk_age_gps'] + self.vars_read += [ + "time_gps", + "longitude_gps", + "latitude_gps", + "fix_gps", + "n_sat_gps", + "hdop_gps", + "elevation_gps", + "rtk_age_gps", + ] self._nbyte = self.f.tell() - startpos + 2 elif spid in [5, 105]: # VTG sz = self.f.read_ui16(1) dtime = self.f.read_f64(1) if sz <= 22: # if no data - empty_gps = self.f.reads(sz-2) + empty_gps = self.f.reads(sz - 2) self.f.seek(2, 1) else: start_string = self.f.reads(6) - if type(start_string) != str: - if self._debug_level >= 1: - logging.warning(f'Invalid VTG string found in ensemble {k},' - ' skipping...') - return 'FAIL' + if not isinstance(start_string, str): + if self._debug_level > 0: + logging.warning( + f"Invalid VTG string found in ensemble {k}," " skipping..." + ) + return "FAIL" self.f.seek(1, 1) - true_track = self.f.read_float(1) + true_track = self.f.read_f32(1) t = self.f.reads(1) # 'T' - magn_track = self.f.read_float(1) + magn_track = self.f.read_f32(1) m = self.f.reads(1) # 'M' - speed_knot = self.f.read_float(1) + speed_knot = self.f.read_f32(1) kts = self.f.reads(1) # 'N' - speed_kph = self.f.read_float(1) + speed_kph = self.f.read_f32(1) kph = self.f.reads(1) # 'K' mode = self.f.reads(1) # knots -> m/s ens.speed_over_grnd_gps[k] = speed_knot / 1.944 ens.dir_over_grnd_gps[k] = true_track - self.vars_read += ['speed_over_grnd_gps', - 'dir_over_grnd_gps'] + self.vars_read += ["speed_over_grnd_gps", "dir_over_grnd_gps"] self._nbyte = self.f.tell() - startpos + 2 elif spid in [6, 106]: # 'DBT' depth sounder sz = self.f.read_ui16(1) dtime = self.f.read_f64(1) if sz <= 20: - empty_gps = self.f.reads(sz-2) + empty_gps = self.f.reads(sz - 2) self.f.seek(2, 1) else: start_string = self.f.reads(6) - if type(start_string) != str: - if self._debug_level >= 1: - logging.warning(f'Invalid DBT string found in ensemble {k},' - ' skipping...') - return 'FAIL' + if not isinstance(start_string, str): + if self._debug_level > 0: + logging.warning( + f"Invalid DBT string found in ensemble {k}," " skipping..." + ) + return "FAIL" self.f.seek(1, 1) - depth_ft = self.f.read_float(1) + depth_ft = self.f.read_f32(1) ft = self.f.reads(1) # 'f' - depth_m = self.f.read_float(1) + depth_m = self.f.read_f32(1) m = self.f.reads(1) # 'm' - depth_fathom = self.f.read_float(1) + depth_fathom = self.f.read_f32(1) f = self.f.reads(1) # 'F' ens.dist_nmea[k] = depth_m - self.vars_read += ['dist_nmea'] + self.vars_read += ["dist_nmea"] self._nbyte = self.f.tell() - startpos + 2 elif spid in [7, 107]: # 'HDT' sz = self.f.read_ui16(1) dtime = self.f.read_f64(1) if sz <= 14: - empty_gps = self.f.reads(sz-2) + empty_gps = self.f.reads(sz - 2) self.f.seek(2, 1) else: start_string = self.f.reads(6) - if type(start_string) != str: - if self._debug_level >= 1: - logging.warning(f'Invalid HDT string found in ensemble {k},' - ' skipping...') - return 'FAIL' + if not isinstance(start_string, str): + if self._debug_level > 0: + logging.warning( + f"Invalid HDT string found in ensemble {k}," " skipping..." + ) + return "FAIL" self.f.seek(1, 1) ens.heading_gps[k] = self.f.read_f64(1) tt = self.f.reads(1) - self.vars_read += ['heading_gps'] + self.vars_read += ["heading_gps"] self._nbyte = self.f.tell() - startpos + 2 def read_winriver(self, nbt): self._winrivprob = True - self.cfg['sourceprog'] = 'WINRIVER' - if self._source not in [2, 3]: - if self._debug_level >= 0: - logging.warning('\n***** Apparently a WINRIVER file - ' - 'Raw NMEA data handler not yet implemented\n') - self._source = 2 + self.cfg["sourceprog"] = "WINRIVER" + if self._vm_source not in [2, 3]: + if self._debug_level > -1: + logging.warning( + "\n***** Apparently a WINRIVER file - " + "Raw NMEA data handler not yet implemented\n" + ) + self._vm_source = 2 startpos = self.f.tell() sz = self.f.read_ui16(1) - tmp = self.f.reads(sz-2) + tmp = self.f.reads(sz - 2) self._nbyte = self.f.tell() - startpos + 2 def skip_Ncol(self, n_skip=1): - self.f.seek(n_skip * self.cfg['n_cells'], 1) - self._nbyte = 2 + n_skip * self.cfg['n_cells'] + self.f.seek(n_skip * self.cfg["n_cells"], 1) + self._nbyte = 2 + n_skip * self.cfg["n_cells"] def skip_Nbyte(self, n_skip): self.f.seek(n_skip, 1) @@ -1272,76 +1303,199 @@ def skip_Nbyte(self, n_skip): def read_nocode(self, id): # Skipping bytes from codes 0340-30FC, commented if needed hxid = hex(id) - if hxid[2:4] == '30': + if hxid[2:4] == "30": logging.warning("Skipping bytes from codes 0340-30FC") # I want to count the number of 1s in the middle 4 bits # of the 2nd two bytes. # 60 is a 0b00111100 mask - nflds = (bin(int(hxid[3]) & 60).count('1') + - bin(int(hxid[4]) & 60).count('1')) + nflds = bin(int(hxid[3]) & 60).count("1") + bin(int(hxid[4]) & 60).count( + "1" + ) # I want to count the number of 1s in the highest # 2 bits of byte 3 # 3 is a 0b00000011 mask: - dfac = bin(int(hxid[3], 0) & 3).count('1') + dfac = bin(int(hxid[3], 0) & 3).count("1") self.skip_Nbyte(12 * nflds * dfac) else: - if self._debug_level >= 0: - logging.warning(' Unrecognized ID code: %0.4X' % id) + if self._debug_level > -1: + logging.warning(" Unrecognized ID code: %0.4X" % id) self.skip_nocode(id) def skip_nocode(self, id): # Skipping bytes if ID isn't known offsets = list(self.id_positions.values()) idx = np.where(offsets == self.id_positions[id])[0][0] - byte_len = offsets[idx+1] - offsets[idx] - 2 + byte_len = offsets[idx + 1] - offsets[idx] - 2 self.skip_Nbyte(byte_len) - if self._debug_level >= 0: + if self._debug_level > -1: logging.debug(f"Skipping ID code {id}\n") - def cleanup(self, cfg, dat): - dat['coords']['range'] = (cfg['bin1_dist_m'] + - np.arange(self.ensemble['n_cells']) * - cfg['cell_size']) + def check_offset(self, offset, readbytes): + fd = self.f + if offset != 4 and self._fixoffset == 0: + if self._debug_level > 0: + if fd.tell() == self._filesize: + logging.error( + " EOF reached unexpectedly - discarding this last ensemble\n" + ) + else: + logging.debug( + " Adjust location by {:d} (readbytes={:d},hdr['nbyte']={:d})\n".format( + offset, readbytes, self.hdr["nbyte"] + ) + ) + self._fixoffset = offset - 4 + fd.seek(4 + self._fixoffset, 1) + + def remove_end(self, iens): + dat = self.outd + if self._debug_level > 0: + logging.info(" Encountered end of file. Cleaning up data.") + for nm in self.vars_read: + defs._setd(dat, nm, defs._get(dat, nm)[..., :iens]) + def save_profiles(self, dat, nm, en, iens): + ds = defs._get(dat, nm) + if self.n_avg == 1: + bn = en[nm][..., 0] + else: + bn = np.nanmean(en[nm], axis=-1) + + # If n_cells has changed (RiverPro/StreamPro WinRiver transects) + if len(ds.shape) == 3: + if "_sl" in nm: + # This works here b/c the max number of surface layer cells + # is smaller than the min number of normal profile cells used. + # Extra nan cells created after this if-statement + # are trimmed off in self.cleanup. + bn = bn[: self.cfg["n_cells_sl"]] + else: + # Set bn to current ping size + bn = bn[: self.cfg["n_cells"]] + # If n_cells has increased, we also need to increment defs + if self.n_cells_diff > 0: + a = np.empty((self.n_cells_diff, ds.shape[1], ds.shape[2])) * np.nan + ds = np.append(ds, a.astype(ds.dtype), axis=0) + defs._setd(dat, nm, ds) + # If the number of cells decreases, set extra cells to nan instead of + # whatever is stuck in memory + if ds.shape[0] != bn.shape[0]: + n_cells = ds.shape[0] - bn.shape[0] + a = np.empty((n_cells, bn.shape[1])) * np.nan + bn = np.append(bn, a.astype(ds.dtype), axis=0) + + # Keep track of when the cell size changes + if self.cs_diff: + self.cs.append([iens, self.cfg["cell_size"]]) + self.cs_diff = 0 + + # Then copy the ensemble to the dataset. + ds[..., iens] = bn + defs._setd(dat, nm, ds) + + return dat + + def cleanup(self, dat, cfg): + # Clean up changing cell size, if necessary + cs = np.array(self.cs) + cell_sizes = cs[:, 1] + + # If cell sizes change, depth-bin average the smaller cell sizes + if len(self.cs) > 1: + bins_to_merge = cell_sizes.max() / cell_sizes + idx_start = cs[:, 0].astype(int) + idx_end = np.append(cs[1:, 0], self._nens).astype(int) + + dv = dat["data_vars"] + for var in dv: + if (len(dv[var].shape) == 3) and ("_sl" not in var): + # Create a new NaN var to save data in + new_var = (np.zeros(dv[var].shape) * np.nan).astype(dv[var].dtype) + # For each cell size change, reshape and bin-average + for id1, id2, b in zip(idx_start, idx_end, bins_to_merge): + array = np.transpose(dv[var][..., id1:id2]) + bin_arr = np.transpose(np.mean(self.reshape(array, b), axis=-1)) + new_var[: len(bin_arr), :, id1:id2] = bin_arr + # Reset data. This often leaves nan data at farther ranges + dv[var] = new_var + + # Set cell size and range + cfg["n_cells"] = self.ensemble["n_cells"] + cfg["cell_size"] = cell_sizes.max() + dat["coords"]["range"] = ( + cfg["bin1_dist_m"] + np.arange(cfg["n_cells"]) * cfg["cell_size"] + ) + + # Save configuration data as attributes for nm in cfg: - dat['attrs'][nm] = cfg[nm] - - if 'surface_layer' in cfg: # RiverPro/StreamPro - dat['coords']['range_sl'] = (cfg['bin1_dist_m_sl'] + - np.arange(self.cfg['n_cells_sl']) * - cfg['cell_size_sl']) - # Trim surface layer profile to length - dv = dat['data_vars'] + dat["attrs"][nm] = cfg[nm] + + # Clean up surface layer profiles + if "surface_layer" in cfg: # RiverPro/StreamPro + dat["coords"]["range_sl"] = ( + cfg["bin1_dist_m_sl"] + + np.arange(0, self.n_cells_sl) * cfg["cell_size_sl"] + ) + # Trim off extra nan data + dv = dat["data_vars"] for var in dv: - if 'sl' in var: - dv[var] = dv[var][:cfg['n_cells_sl']] - dat['attrs']['rotate_vars'].append('vel_sl') + if "sl" in var: + dv[var] = dv[var][: self.n_cells_sl] + dat["attrs"]["rotate_vars"].append("vel_sl") + + return dat, cfg + + def reshape(self, arr, n_bin=None): + """ + Reshape the array `arr` to shape (...,n,n_bin). + """ + + out = np.zeros( + list(arr.shape[:-1]) + [int(arr.shape[-1] // n_bin), int(n_bin)], + dtype=arr.dtype, + ) + shp = out.shape + if np.mod(n_bin, 1) == 0: + # n_bin needs to be int + n_bin = int(n_bin) + # If n_bin is an integer, we can do this simply. + out[..., :n_bin] = (arr[..., : (shp[-2] * shp[-1])]).reshape(shp, order="C") + else: + inds = (np.arange(np.prod(shp[-2:])) * n_bin // int(n_bin)).astype(int) + # If there are too many indices, drop one bin + if inds[-1] >= arr.shape[-1]: + inds = inds[: -int(n_bin)] + shp[-2] -= 1 + out = out[..., 1:, :] + n_bin = int(n_bin) + out[..., :n_bin] = (arr[..., inds]).reshape(shp, order="C") + n_bin = int(n_bin) + + return out def finalize(self, dat): - """Remove the attributes from the data that were never loaded. """ + Remove the attributes from the data that were never loaded. + """ + for nm in set(defs.data_defs.keys()) - self.vars_read: defs._pop(dat, nm) for nm in self.cfg: - dat['attrs'][nm] = self.cfg[nm] + dat["attrs"][nm] = self.cfg[nm] # VMDAS and WinRiver have different set sampling frequency - da = dat['attrs'] - if hasattr(da, 'sourceprog') and (da['sourceprog'].lower() in ['vmdas', 'winriver', 'winriver2']): - da['fs'] = round(np.diff(dat['coords']['time']).mean() ** -1, 2) + da = dat["attrs"] + if ("sourceprog" in da) and ( + da["sourceprog"].lower() in ["vmdas", "winriver", "winriver2"] + ): + da["fs"] = round(1 / np.median(np.diff(dat["coords"]["time"])), 2) else: - da['fs'] = (da['sec_between_ping_groups'] * - da['pings_per_ensemble']) ** (-1) - da['n_cells'] = self.ensemble['n_cells'] + da["fs"] = 1 / (da["sec_between_ping_groups"] * da["pings_per_ensemble"]) for nm in defs.data_defs: shp = defs.data_defs[nm][0] - if len(shp) and shp[0] == 'nc' and defs._in_group(dat, nm): + if len(shp) and shp[0] == "nc" and defs._in_group(dat, nm): defs._setd(dat, nm, np.swapaxes(defs._get(dat, nm), 0, 1)) - def __enter__(self,): - return self - - def __exit__(self, type, value, traceback): - self.f.close() + return dat diff --git a/mhkit/dolfyn/io/rdi_defs.py b/mhkit/dolfyn/io/rdi_defs.py index 8c65812db..a91148a53 100644 --- a/mhkit/dolfyn/io/rdi_defs.py +++ b/mhkit/dolfyn/io/rdi_defs.py @@ -1,105 +1,325 @@ import numpy as np century = 2000 -adcp_type = {4: 'Broadband', - 5: 'Broadband', - 6: 'Navigator', - 10: 'Rio Grande', - 11: 'H-ADCP', - 14: 'Ocean Surveyor', - 16: 'Workhorse', - 19: 'Navigator', - 23: 'Ocean Surveyor', - 28: 'ChannelMaster', - 31: 'StreamPro', - 34: 'Explorer', - 37: 'Navigator', - 41: 'DVS', - 43: 'Workhorse', - 44: 'RiverRay', - 47: 'SentinelV', - 50: 'Workhorse', - 51: 'Workhorse', - 52: 'Workhorse', - 53: 'Navigator', - 55: 'DVS', - 56: 'RiverPro', - 59: 'Meridian', - 61: 'Pinnacle', - 66: 'SentinelV', - 67: 'Pathfinder', - 73: 'Pioneer', - 74: 'Tasman', - 76: 'WayFinder', - 77: 'Workhorse', - 78: 'Workhorse', - } - -data_defs = {'number': ([], 'data_vars', 'uint32', '1', 'Ensemble Number', 'number_of_observations'), - 'rtc': ([7], 'sys', 'uint16', '1', 'Real Time Clock', ''), - 'builtin_test_fail': ([], 'data_vars', 'bool', '1', 'Built-In Test Failures', ''), - 'c_sound': ([], 'data_vars', 'float32', 'm s-1', 'Speed of Sound', 'speed_of_sound_in_sea_water'), - 'depth': ([], 'data_vars', 'float32', 'm', 'Depth', 'depth'), - 'pitch': ([], 'data_vars', 'float32', 'degree', 'Pitch', 'platform_pitch'), - 'roll': ([], 'data_vars', 'float32', 'degree', 'Roll', 'platform_roll'), - 'heading': ([], 'data_vars', 'float32', 'degree', 'Heading', 'platform_orientation'), - 'temp': ([], 'data_vars', 'float32', 'degree_C', 'Temperature', 'sea_water_temperature'), - 'salinity': ([], 'data_vars', 'float32', 'psu', 'Salinity', 'sea_water_salinity'), - 'min_preping_wait': ([], 'data_vars', 'float32', 's', 'Minimum Pre-Ping Wait Time Between Measurements', ''), - 'heading_std': ([], 'data_vars', 'float32', 'degree', 'Heading Standard Deviation', ''), - 'pitch_std': ([], 'data_vars', 'float32', 'degree', 'Pitch Standard Deviation', ''), - 'roll_std': ([], 'data_vars', 'float32', 'degree', 'Roll Standard Deviation', ''), - 'adc': ([8], 'sys', 'uint8', '1', 'Analog-Digital Converter Output', ''), - 'error_status': ([], 'attrs', 'float32', '1', 'Error Status', ''), - 'pressure': ([], 'data_vars', 'float32', 'dbar', 'Pressure', 'sea_water_pressure'), - 'pressure_std': ([], 'data_vars', 'float32', 'dbar', 'Pressure Standard Deviation', ''), - 'vel': (['nc', 4], 'data_vars', 'float32', 'm s-1', 'Water Velocity', ''), - 'amp': (['nc', 4], 'data_vars', 'uint8', '1', 'Acoustic Signal Amplitude', - 'signal_intensity_from_multibeam_acoustic_doppler_velocity_sensor_in_sea_water'), - 'corr': (['nc', 4], 'data_vars', 'uint8', '1', 'Acoustic Signal Correlation', - 'beam_consistency_indicator_from_multibeam_acoustic_doppler_velocity_profiler_in_sea_water'), - 'prcnt_gd': (['nc', 4], 'data_vars', 'uint8', '%', 'Percent Good', - 'proportion_of_acceptable_signal_returns_from_acoustic_instrument_in_sea_water'), - 'status': (['nc', 4], 'data_vars', 'float32', '1', 'Status', ''), - 'dist_bt': ([4], 'data_vars', 'float32', 'm', 'Bottom Track Measured Depth', ''), - 'vel_bt': ([4], 'data_vars', 'float32', 'm s-1', 'Platform Velocity from Bottom Track', ''), - 'corr_bt': ([4], 'data_vars', 'uint8', '1', 'Bottom Track Acoustic Signal Correlation', ''), - 'amp_bt': ([4], 'data_vars', 'uint8', '1', 'Bottom Track Acoustic Signal Amplitude', ''), - 'prcnt_gd_bt': ([4], 'data_vars', 'uint8', '%', 'Bottom Track Percent Good', ''), - 'time': ([], 'coords', 'float64', 'seconds since 1970-01-01 00:00:00', 'Time', 'time'), - 'alt_dist': ([], 'data_vars', 'float32', 'm', 'Altimeter Range', 'altimeter_range'), - 'alt_rssi': ([], 'data_vars', 'uint8', 'dB', 'Altimeter Recieved Signal Strength Indicator', ''), - 'alt_eval': ([], 'data_vars', 'uint8', 'dB', 'Altimeter Evaluation Amplitude', ''), - 'alt_status': ([], 'data_vars', 'uint8', 'bit', 'Altimeter Status', ''), - 'time_gps': ([], 'coords', 'float64', 'seconds since 1970-01-01 00:00:00', 'GPS Time', 'time'), - 'clock_offset_UTC_gps': ([], 'data_vars', 'float64', 's', 'Instrument Clock Offset from UTC', ''), - 'latitude_gps': ([], 'data_vars', 'float32', 'degrees_north', 'Latitude', 'latitude'), - 'longitude_gps': ([], 'data_vars', 'float32', 'degrees_east', 'Longitude', 'longitude'), - 'avg_speed_gps': ([], 'data_vars', 'float32', 'm s-1', 'Average Platform Speed', 'platform_speed_wrt_ground'), - 'avg_dir_gps': ([], 'data_vars', 'float32', 'degree', 'Average Platform Direction', 'platform_course'), - 'speed_made_good_gps': ([], 'data_vars', 'float32', 'm s-1', 'Platform Speed Made Good', 'platform_speed_wrt_ground'), - 'dir_made_good_gps': ([], 'data_vars', 'float32', 'degree', 'Platform Direction Made Good', 'platform_course'), - 'flags_gps': ([], 'data_vars', 'float32', 'bits', 'GPS Flags', ''), - 'fix_gps': ([], 'data_vars', 'int8', '1', 'GPS Fix', ''), - 'n_sat_gps': ([], 'data_vars', 'int8', 'count', 'Number of Satellites', ''), - 'hdop_gps': ([], 'data_vars', 'float32', '1', 'Horizontal Dilution of Precision', ''), - 'elevation_gps': ([], 'data_vars', 'float32', 'm', 'Elevation above MLLW', ''), - 'rtk_age_gps': ([], 'data_vars', 'float32', 's', 'Age of Received Real Time Kinetic Signal', ''), - 'speed_over_grnd_gps': ([], 'data_vars', 'float32', 'm s-1', 'Platform Speed over Ground', 'platform_speed_wrt_ground'), - 'dir_over_grnd_gps': ([], 'data_vars', 'float32', 'degree', 'Platform Direction over Ground', 'platform_course'), - 'heading_gps': ([], 'data_vars', 'float32', 'degree', 'GPS Heading', 'platform_orientation'), - 'pitch_gps': ([], 'data_vars', 'float32', 'degree', 'GPS Pitch', 'platform_pitch'), - 'roll_gps': ([], 'data_vars', 'float32', 'degree', 'GPS Roll', 'platform_roll'), - 'dist_nmea': ([], 'data_vars', 'float32', 'm', 'Depth Sounder Range', ''), - 'vel_sl': (['nc', 4], 'data_vars', 'float32', 'm s-1', 'Surface Layer Water Velocity', ''), - 'corr_sl': (['nc', 4], 'data_vars', 'uint8', '1', 'Surface Layer Acoustic Signal Correlation', - 'beam_consistency_indicator_from_multibeam_acoustic_doppler_velocity_profiler_in_sea_water'), - 'amp_sl': (['nc', 4], 'data_vars', 'uint8', '1', 'Surface Layer Acoustic Signal Amplitude', - 'signal_intensity_from_multibeam_acoustic_doppler_velocity_sensor_in_sea_water'), - 'prcnt_gd_sl': (['nc', 4], 'data_vars', 'uint8', '%', 'Surface Layer Percent Good', - 'proportion_of_acceptable_signal_returns_from_acoustic_instrument_in_sea_water'), - 'status_sl': (['nc', 4], 'data_vars', 'float32', '1', 'Surface Layer Status', ''), - } +adcp_type = { + 4: "Broadband", + 5: "Broadband", + 6: "Navigator", + 10: "Rio Grande", + 11: "H-ADCP", + 14: "Ocean Surveyor", + 16: "Workhorse", + 19: "Navigator", + 23: "Ocean Surveyor", + 28: "ChannelMaster", + 31: "StreamPro", + 34: "Explorer", + 37: "Navigator", + 41: "DVS", + 43: "Workhorse", + 44: "RiverRay", + 47: "SentinelV", + 50: "Workhorse", + 51: "Workhorse", + 52: "Workhorse", + 53: "Navigator", + 55: "DVS", + 56: "RiverPro", + 59: "Meridian", + 61: "Pinnacle", + 66: "SentinelV", + 67: "Pathfinder", + 73: "Pioneer", + 74: "Tasman", + 76: "WayFinder", + 77: "Workhorse", + 78: "Workhorse", +} + +data_defs = { + "number": ( + [], + "data_vars", + "uint32", + "1", + "Ensemble Number", + "number_of_observations", + ), + "rtc": ([7], "sys", "uint16", "1", "Real Time Clock", ""), + "builtin_test_fail": ([], "data_vars", "bool", "1", "Built-In Test Failures", ""), + "c_sound": ( + [], + "data_vars", + "float32", + "m s-1", + "Speed of Sound", + "speed_of_sound_in_sea_water", + ), + "depth": ([], "data_vars", "float32", "m", "Depth", "depth"), + "pitch": ([], "data_vars", "float32", "degree", "Pitch", "platform_pitch"), + "roll": ([], "data_vars", "float32", "degree", "Roll", "platform_roll"), + "heading": ( + [], + "data_vars", + "float32", + "degree", + "Heading", + "platform_orientation", + ), + "temp": ( + [], + "data_vars", + "float32", + "degree_C", + "Temperature", + "sea_water_temperature", + ), + "salinity": ([], "data_vars", "float32", "psu", "Salinity", "sea_water_salinity"), + "min_preping_wait": ( + [], + "data_vars", + "float32", + "s", + "Minimum Pre-Ping Wait Time Between Measurements", + "", + ), + "heading_std": ( + [], + "data_vars", + "float32", + "degree", + "Heading Standard Deviation", + "", + ), + "pitch_std": ([], "data_vars", "float32", "degree", "Pitch Standard Deviation", ""), + "roll_std": ([], "data_vars", "float32", "degree", "Roll Standard Deviation", ""), + "adc": ([8], "sys", "uint8", "1", "Analog-Digital Converter Output", ""), + "error_status": ([], "attrs", "float32", "1", "Error Status", ""), + "pressure": ([], "data_vars", "float32", "dbar", "Pressure", "sea_water_pressure"), + "pressure_std": ( + [], + "data_vars", + "float32", + "dbar", + "Pressure Standard Deviation", + "", + ), + "vel": (["nc", 4], "data_vars", "float32", "m s-1", "Water Velocity", ""), + "amp": ( + ["nc", 4], + "data_vars", + "uint8", + "1", + "Acoustic Signal Amplitude", + "signal_intensity_from_multibeam_acoustic_doppler_velocity_sensor_in_sea_water", + ), + "corr": ( + ["nc", 4], + "data_vars", + "uint8", + "1", + "Acoustic Signal Correlation", + "beam_consistency_indicator_from_multibeam_acoustic_doppler_velocity_profiler_in_sea_water", + ), + "prcnt_gd": ( + ["nc", 4], + "data_vars", + "uint8", + "%", + "Percent Good", + "proportion_of_acceptable_signal_returns_from_acoustic_instrument_in_sea_water", + ), + "status": (["nc", 4], "data_vars", "float32", "1", "Status", ""), + "dist_bt": ([4], "data_vars", "float32", "m", "Bottom Track Measured Depth", ""), + "vel_bt": ( + [4], + "data_vars", + "float32", + "m s-1", + "Platform Velocity from Bottom Track", + "", + ), + "corr_bt": ( + [4], + "data_vars", + "uint8", + "1", + "Bottom Track Acoustic Signal Correlation", + "", + ), + "amp_bt": ( + [4], + "data_vars", + "uint8", + "1", + "Bottom Track Acoustic Signal Amplitude", + "", + ), + "prcnt_gd_bt": ([4], "data_vars", "uint8", "%", "Bottom Track Percent Good", ""), + "time": ( + [], + "coords", + "float64", + "seconds since 1970-01-01 00:00:00", + "Time", + "time", + ), + "alt_dist": ([], "data_vars", "float32", "m", "Altimeter Range", "altimeter_range"), + "alt_rssi": ( + [], + "data_vars", + "uint8", + "dB", + "Altimeter Recieved Signal Strength Indicator", + "", + ), + "alt_eval": ([], "data_vars", "uint8", "dB", "Altimeter Evaluation Amplitude", ""), + "alt_status": ([], "data_vars", "uint8", "bit", "Altimeter Status", ""), + "time_gps": ( + [], + "coords", + "float64", + "seconds since 1970-01-01 00:00:00", + "GPS Time", + "time", + ), + "clock_offset_UTC_gps": ( + [], + "data_vars", + "float64", + "s", + "Instrument Clock Offset from UTC", + "", + ), + "latitude_gps": ( + [], + "data_vars", + "float32", + "degrees_north", + "Latitude", + "latitude", + ), + "longitude_gps": ( + [], + "data_vars", + "float32", + "degrees_east", + "Longitude", + "longitude", + ), + "avg_speed_gps": ( + [], + "data_vars", + "float32", + "m s-1", + "Average Platform Speed", + "platform_speed_wrt_ground", + ), + "avg_dir_gps": ( + [], + "data_vars", + "float32", + "degree", + "Average Platform Direction", + "platform_course", + ), + "speed_made_good_gps": ( + [], + "data_vars", + "float32", + "m s-1", + "Platform Speed Made Good", + "platform_speed_wrt_ground", + ), + "dir_made_good_gps": ( + [], + "data_vars", + "float32", + "degree", + "Platform Direction Made Good", + "platform_course", + ), + "flags_gps": ([], "data_vars", "float32", "bits", "GPS Flags", ""), + "fix_gps": ([], "data_vars", "int8", "1", "GPS Fix", ""), + "n_sat_gps": ([], "data_vars", "int8", "count", "Number of Satellites", ""), + "hdop_gps": ( + [], + "data_vars", + "float32", + "1", + "Horizontal Dilution of Precision", + "", + ), + "elevation_gps": ([], "data_vars", "float32", "m", "Elevation above MLLW", ""), + "rtk_age_gps": ( + [], + "data_vars", + "float32", + "s", + "Age of Received Real Time Kinetic Signal", + "", + ), + "speed_over_grnd_gps": ( + [], + "data_vars", + "float32", + "m s-1", + "Platform Speed over Ground", + "platform_speed_wrt_ground", + ), + "dir_over_grnd_gps": ( + [], + "data_vars", + "float32", + "degree", + "Platform Direction over Ground", + "platform_course", + ), + "heading_gps": ( + [], + "data_vars", + "float32", + "degree", + "GPS Heading", + "platform_orientation", + ), + "pitch_gps": ([], "data_vars", "float32", "degree", "GPS Pitch", "platform_pitch"), + "roll_gps": ([], "data_vars", "float32", "degree", "GPS Roll", "platform_roll"), + "dist_nmea": ([], "data_vars", "float32", "m", "Depth Sounder Range", ""), + "vel_sl": ( + ["nc", 4], + "data_vars", + "float32", + "m s-1", + "Surface Layer Water Velocity", + "", + ), + "corr_sl": ( + ["nc", 4], + "data_vars", + "uint8", + "1", + "Surface Layer Acoustic Signal Correlation", + "beam_consistency_indicator_from_multibeam_acoustic_doppler_velocity_profiler_in_sea_water", + ), + "amp_sl": ( + ["nc", 4], + "data_vars", + "uint8", + "1", + "Surface Layer Acoustic Signal Amplitude", + "signal_intensity_from_multibeam_acoustic_doppler_velocity_sensor_in_sea_water", + ), + "prcnt_gd_sl": ( + ["nc", 4], + "data_vars", + "uint8", + "%", + "Surface Layer Percent Good", + "proportion_of_acceptable_signal_returns_from_acoustic_instrument_in_sea_water", + ), + "status_sl": (["nc", 4], "data_vars", "float32", "1", "Surface Layer Status", ""), +} def _get(dat, nm): @@ -141,21 +361,21 @@ def _idata(dat, nm, sz): long_name = data_defs[nm][4] standard_name = data_defs[nm][5] arr = np.empty(sz, dtype=dtype) - if dtype.startswith('float'): + if dtype.startswith("float"): arr[:] = np.NaN dat[group][nm] = arr - dat['units'][nm] = units - dat['long_name'][nm] = long_name + dat["units"][nm] = units + dat["long_name"][nm] = long_name if standard_name: - dat['standard_name'][nm] = standard_name + dat["standard_name"][nm] = standard_name return dat def _get_size(name, n=None, ncell=0): sz = list(data_defs[name][0]) # create a copy! - if 'nc' in sz: - sz.insert(sz.index('nc'), ncell) - sz.remove('nc') + if "nc" in sz: + sz.insert(sz.index("nc"), ncell) + sz.remove("nc") if n is None: return tuple(sz) return tuple(sz + [n]) @@ -168,7 +388,7 @@ def __iadd__(self, vals): return self -class _ensemble(): +class _ensemble: n_avg = 1 k = -1 # This is the counter for filling the ensemble object @@ -181,9 +401,11 @@ def __init__(self, navg, n_cells): self.n_avg = navg self.n_cells = n_cells for nm in data_defs: - setattr(self, nm, - np.zeros(_get_size(nm, n=navg, ncell=n_cells), - dtype=data_defs[nm][2])) + setattr( + self, + nm, + np.zeros(_get_size(nm, n=navg, ncell=n_cells), dtype=data_defs[nm][2]), + ) - def clean_data(self,): - self['vel'][self['vel'] == -32.768] = np.NaN + def clean_data(self): + self["vel"][self["vel"] == -32.768] = np.NaN diff --git a/mhkit/dolfyn/io/rdi_lib.py b/mhkit/dolfyn/io/rdi_lib.py index dac0b710b..df0851a0f 100644 --- a/mhkit/dolfyn/io/rdi_lib.py +++ b/mhkit/dolfyn/io/rdi_lib.py @@ -3,40 +3,40 @@ from os.path import expanduser -class bin_reader(): +class bin_reader: """ Reads binary data files. It is mostly for development purposes, to simplify learning a data file's format. Reading binary data files should minimize the number of calls to struct.unpack and file.read because many calls to these functions (i.e. using the code in this module) are slow. """ - _size_factor = {'B': 1, 'b': 1, 'H': 2, - 'h': 2, 'L': 4, 'l': 4, 'f': 4, 'd': 8} - _frmt = {np.uint8: 'B', np.int8: 'b', - np.uint16: 'H', np.int16: 'h', - np.uint32: 'L', np.int32: 'l', - float: 'f', np.float32: 'f', - np.double: 'd', np.float64: 'd', - } + + _size_factor = {"B": 1, "b": 1, "H": 2, "h": 2, "L": 4, "l": 4, "f": 4, "d": 8} + _frmt = { + np.uint8: "B", + np.int8: "b", + np.uint16: "H", + np.int16: "h", + np.uint32: "L", + np.int32: "l", + float: "f", + np.float32: "f", + np.double: "d", + np.float64: "d", + } @property - def pos(self,): + def pos(self): return self.f.tell() - def __enter__(self,): - return self - - def __exit__(self,): - self.close() - - def __init__(self, fname, endian='<', checksum_size=None, debug_level=0): + def __init__(self, fname, endian="<", checksum_size=None, debug_level=0): """ Default to little-endian '<'... *checksum_size* is in bytes, if it is None or False, this function does not perform checksums. """ self.endian = endian - self.f = open(expanduser(fname), 'rb') + self.f = open(expanduser(fname), "rb") self.f.seek(0, 2) self.fsize = self.tell() self.f.seek(0, 0) @@ -47,7 +47,7 @@ def __init__(self, fname, endian='<', checksum_size=None, debug_level=0): self.cs = checksum_size self.debug_level = debug_level - def checksum(self,): + def checksum(self): """ The next byte(s) are the expected checksum. Perform the checksum. """ @@ -55,9 +55,9 @@ def checksum(self,): cs = self.read(1, self.cs._frmt) self.cs(cs, True) else: - raise Exception('CheckSum not requested for this file') + raise Exception("CheckSum not requested for this file") - def tell(self,): + def tell(self): return self.f.tell() def seek(self, pos, rel=1): @@ -70,7 +70,7 @@ def reads(self, n): val = self.f.read(n) self.cs and self.cs.add(val) try: - val = val.decode('utf-8') + val = val.decode("utf-8") except: if self.debug_level > 5: print("ERROR DECODING: {}".format(val)) @@ -88,28 +88,25 @@ def read(self, n, frmt): return np.array(unpack(self.endian + frmt * n, val)) def read_ui8(self, n): - return self.read(n, 'B') - - def read_float(self, n): - return self.read(n, 'f') + return self.read(n, "B") - def read_double(self, n): - return self.read(n, 'd') + def read_f32(self, n): + return self.read(n, "f") - read_f32 = read_float - read_f64 = read_double + def read_f64(self, n): + return self.read(n, "d") def read_i8(self, n): - return self.read(n, 'b') + return self.read(n, "b") def read_ui16(self, n): - return self.read(n, 'H') + return self.read(n, "H") def read_i16(self, n): - return self.read(n, 'h') + return self.read(n, "h") def read_ui32(self, n): - return self.read(n, 'L') + return self.read(n, "L") def read_i32(self, n): - return self.read(n, 'l') + return self.read(n, "l") diff --git a/mhkit/dolfyn/rotate/api.py b/mhkit/dolfyn/rotate/api.py index 65a6277b1..835b170e2 100644 --- a/mhkit/dolfyn/rotate/api.py +++ b/mhkit/dolfyn/rotate/api.py @@ -9,20 +9,20 @@ # The 'rotation chain' -rc = ['beam', 'inst', 'earth', 'principal'] +rc = ["beam", "inst", "earth", "principal"] rot_module_dict = { # Nortek instruments - 'vector': r_vec, - 'awac': r_awac, - 'signature': r_sig, - 'ad2cp': r_sig, - + "vector": r_vec, + "awac": r_awac, + "signature": r_sig, + "ad2cp": r_sig, # TRDI instruments - 'rdi': r_rdi} + "rdi": r_rdi, +} -def rotate2(ds, out_frame='earth', inplace=True): +def rotate2(ds, out_frame="earth", inplace=True): """ Rotate a dataset to a new coordinate system. @@ -46,8 +46,8 @@ def rotate2(ds, out_frame='earth', inplace=True): ----- - This function rotates all variables in ``ds.attrs['rotate_vars']``. - - In order to rotate to the 'principal' frame, a value should exist for - ``ds.attrs['principal_heading']``. The function + - In order to rotate to the 'principal' frame, a value should exist for + ``ds.attrs['principal_heading']``. The function :func:`calc_principal_heading ` is recommended for this purpose, e.g.: @@ -62,18 +62,19 @@ def rotate2(ds, out_frame='earth', inplace=True): ds = ds.copy(deep=True) csin = ds.coord_sys.lower() - if csin == 'ship': - csin = 'inst' + if csin == "ship": + csin = "inst" # Returns True/False if head2inst_rotmat has been set/not-set. r_vec._check_inst2head_rotmat(ds) - if out_frame == 'principal' and csin != 'earth': + if out_frame == "principal" and csin != "earth": warnings.warn( "You are attempting to rotate into the 'principal' " "coordinate system, but the dataset is in the {} " "coordinate system. Be sure that 'principal_heading' is " - "defined based on the earth coordinate system.".format(csin)) + "defined based on the earth coordinate system.".format(csin) + ) rmod = None for ky in rot_module_dict: @@ -81,22 +82,26 @@ def rotate2(ds, out_frame='earth', inplace=True): rmod = rot_module_dict[ky] break if rmod is None: - raise ValueError("Rotations are not defined for " - "instrument '{}'.".format(_make_model(ds))) + raise ValueError( + "Rotations are not defined for " "instrument '{}'.".format(_make_model(ds)) + ) # Get the 'indices' of the rotation chain try: iframe_in = rc.index(csin) except ValueError: - raise Exception("The coordinate system of the input " - "dataset, '{}', is invalid." - .format(ds.coord_sys)) + raise Exception( + "The coordinate system of the input " + "dataset, '{}', is invalid.".format(ds.coord_sys) + ) try: iframe_out = rc.index(out_frame.lower()) except ValueError: - raise Exception("The specified output coordinate system " - "is invalid, please select one of: 'beam', 'inst', " - "'earth', 'principal'.") + raise Exception( + "The specified output coordinate system " + "is invalid, please select one of: 'beam', 'inst', " + "'earth', 'principal'." + ) if iframe_out == iframe_in: print("Data is already in the {} coordinate system".format(out_frame)) @@ -108,13 +113,13 @@ def rotate2(ds, out_frame='earth', inplace=True): while ds.coord_sys.lower() != out_frame.lower(): csin = ds.coord_sys - if csin == 'ship': - csin = 'inst' + if csin == "ship": + csin = "inst" inow = rc.index(csin) if reverse: - func = getattr(rmod, '_' + rc[inow - 1] + '2' + rc[inow]) + func = getattr(rmod, "_" + rc[inow - 1] + "2" + rc[inow]) else: - func = getattr(rmod, '_' + rc[inow] + '2' + rc[inow + 1]) + func = getattr(rmod, "_" + rc[inow] + "2" + rc[inow + 1]) ds = func(ds, reverse=reverse) if not inplace: @@ -130,7 +135,7 @@ def calc_principal_heading(vel, tidal_mode=True): vel : np.ndarray (2,...,Nt), or (3,...,Nt) The 2D or 3D velocity array (3rd-dim is ignored in this calculation) tidal_mode : bool - If true, range is set from 0 to +/-180 degrees. If false, range is 0 to + If true, range is set from 0 to +/-180 degrees. If false, range is 0 to 360 degrees. Default = True Returns @@ -165,8 +170,7 @@ def calc_principal_heading(vel, tidal_mode=True): dt = np.ma.masked_invalid(dt) # Divide the angle by 2 to remove the doubling done on the previous # line. - pang = np.angle( - np.nanmean(dt, -1, dtype=np.complex128)) / 2 + pang = np.angle(np.nanmean(dt, -1, dtype=np.complex128)) / 2 else: pang = np.angle(np.nanmean(dt, -1)) @@ -225,8 +229,8 @@ def set_declination(ds, declin, inplace=True): if not inplace: ds = ds.copy(deep=True) - if 'declination' in ds.attrs: - angle = declin - ds.attrs.pop('declination') + if "declination" in ds.attrs: + angle = declin - ds.attrs.pop("declination") else: angle = declin cd = np.cos(-np.deg2rad(angle)) @@ -234,28 +238,28 @@ def set_declination(ds, declin, inplace=True): # The ordering is funny here because orientmat is the # transpose of the inst->earth rotation matrix: - Rdec = np.array([[cd, -sd, 0], - [sd, cd, 0], - [0, 0, 1]]) + Rdec = np.array([[cd, -sd, 0], [sd, cd, 0], [0, 0, 1]]) - if ds.coord_sys == 'earth': + if ds.coord_sys == "earth": rotate2earth = True - rotate2(ds, 'inst', inplace=True) + rotate2(ds, "inst", inplace=True) else: rotate2earth = False - ds['orientmat'].values = np.einsum('kj...,ij->ki...', - ds['orientmat'].values, - Rdec, ) - if 'heading' in ds: - ds['heading'] += angle + ds["orientmat"].values = np.einsum( + "kj...,ij->ki...", + ds["orientmat"].values, + Rdec, + ) + if "heading" in ds: + ds["heading"] += angle if rotate2earth: - rotate2(ds, 'earth', inplace=True) - if 'principal_heading' in ds.attrs: - ds.attrs['principal_heading'] += angle + rotate2(ds, "earth", inplace=True) + if "principal_heading" in ds.attrs: + ds.attrs["principal_heading"] += angle - ds.attrs['declination'] = declin - ds.attrs['declination_in_orientmat'] = 1 # logical + ds.attrs["declination"] = declin + ds.attrs["declination_in_orientmat"] = 1 # logical if not inplace: return ds @@ -295,31 +299,32 @@ def set_inst2head_rotmat(ds, rotmat, inplace=True): if not inplace: ds = ds.copy(deep=True) - if not ds.inst_model.lower() == 'vector': - raise Exception("Setting 'inst2head_rotmat' is only supported " - "for Nortek Vector ADVs.") - if ds.get('inst2head_rotmat', None) is not None: + if not ds.inst_model.lower() == "vector": + raise Exception( + "Setting 'inst2head_rotmat' is only supported " "for Nortek Vector ADVs." + ) + if ds.get("inst2head_rotmat", None) is not None: raise Exception( "You are setting 'inst2head_rotmat' after it has already " - "been set. You can only set it once.") + "been set. You can only set it once." + ) csin = ds.coord_sys - if csin not in ['inst', 'beam']: - rotate2(ds, 'inst', inplace=True) + if csin not in ["inst", "beam"]: + rotate2(ds, "inst", inplace=True) - ds['inst2head_rotmat'] = xr.DataArray(np.array(rotmat), - dims=['x1', 'x2'], - coords={'x1': [1, 2, 3], - 'x2': [1, 2, 3]}) + ds["inst2head_rotmat"] = xr.DataArray( + np.array(rotmat), dims=["x1", "x2"], coords={"x1": [1, 2, 3], "x2": [1, 2, 3]} + ) - ds.attrs['inst2head_rotmat_was_set'] = 1 # logical + ds.attrs["inst2head_rotmat_was_set"] = 1 # logical # Note that there is no validation that the user doesn't # change `ds.attrs['inst2head_rotmat']` after calling this # function. - if not csin == 'beam': # csin not 'beam', then we're in inst + if not csin == "beam": # csin not 'beam', then we're in inst ds = r_vec._rotate_inst2head(ds) - if csin not in ['inst', 'beam']: + if csin not in ["inst", "beam"]: rotate2(ds, csin, inplace=True) if not inplace: diff --git a/mhkit/dolfyn/rotate/base.py b/mhkit/dolfyn/rotate/base.py index 13503e61b..d7cdef541 100644 --- a/mhkit/dolfyn/rotate/base.py +++ b/mhkit/dolfyn/rotate/base.py @@ -10,8 +10,7 @@ def _make_model(ds): The make and model of the instrument that collected the data in this data object. """ - return '{} {}'.format(ds.attrs['inst_make'], - ds.attrs['inst_model']).lower() + return "{} {}".format(ds.attrs["inst_make"], ds.attrs["inst_model"]).lower() def _check_rotmat_det(rotmat, thresh=1e-3): @@ -30,72 +29,81 @@ def _check_rotmat_det(rotmat, thresh=1e-3): def _check_rotate_vars(ds, rotate_vars): if rotate_vars is None: - if 'rotate_vars' in ds.attrs: + if "rotate_vars" in ds.attrs: rotate_vars = ds.rotate_vars else: - warnings.warn(" 'rotate_vars' attribute not found." - "Rotating `vel`.") - rotate_vars = ['vel'] + warnings.warn(" 'rotate_vars' attribute not found." "Rotating `vel`.") + rotate_vars = ["vel"] return rotate_vars def _set_coords(ds, ref_frame, forced=False): """ - Checks the current reference frame and adjusts xarray coords/dims + Checks the current reference frame and adjusts xarray coords/dims as necessary. Makes sure assigned dataarray coordinates match what DOLfYN is reading in. """ make = _make_model(ds) - XYZ = ['X', 'Y', 'Z'] - ENU = ['E', 'N', 'U'] + XYZ = ["X", "Y", "Z"] + ENU = ["E", "N", "U"] beam = ds.beam.values - principal = ['streamwise', 'x-stream', 'vert'] + principal = ["streamwise", "x-stream", "vert"] # check make/model - if 'rdi' in make: - inst = ['X', 'Y', 'Z', 'err'] - earth = ['E', 'N', 'U', 'err'] - princ = ['streamwise', 'x-stream', 'vert', 'err'] + if "rdi" in make: + inst = ["X", "Y", "Z", "err"] + earth = ["E", "N", "U", "err"] + princ = ["streamwise", "x-stream", "vert", "err"] - elif 'nortek' in make: - if 'signature' in make or 'ad2cp' in make: - inst = ['X', 'Y', 'Z1', 'Z2'] - earth = ['E', 'N', 'U1', 'U2'] - princ = ['streamwise', 'x-stream', 'vert1', 'vert2'] + elif "nortek" in make: + if "signature" in make or "ad2cp" in make: + inst = ["X", "Y", "Z1", "Z2"] + earth = ["E", "N", "U1", "U2"] + princ = ["streamwise", "x-stream", "vert1", "vert2"] else: # AWAC or Vector inst = XYZ earth = ENU princ = principal - orient = {'beam': beam, 'inst': inst, 'ship': inst, 'earth': earth, - 'principal': princ} - orientIMU = {'beam': XYZ, 'inst': XYZ, 'ship': XYZ, 'earth': ENU, - 'principal': principal} + orient = { + "beam": beam, + "inst": inst, + "ship": inst, + "earth": earth, + "principal": princ, + } + orientIMU = { + "beam": XYZ, + "inst": XYZ, + "ship": XYZ, + "earth": ENU, + "principal": principal, + } if forced: - ref_frame += '-forced' + ref_frame += "-forced" # Update 'dir' and 'dirIMU' dimensions - attrs = ds['dir'].attrs - attrs.update({'ref_frame': ref_frame}) + attrs = ds["dir"].attrs + attrs.update({"ref_frame": ref_frame}) - ds['dir'] = orient[ref_frame] - ds['dir'].attrs = attrs - if hasattr(ds, 'dirIMU'): - ds['dirIMU'] = orientIMU[ref_frame] - ds['dirIMU'].attrs = attrs + ds["dir"] = orient[ref_frame] + ds["dir"].attrs = attrs + if hasattr(ds, "dirIMU"): + ds["dirIMU"] = orientIMU[ref_frame] + ds["dirIMU"].attrs = attrs - ds.attrs['coord_sys'] = ref_frame + ds.attrs["coord_sys"] = ref_frame # These are essentially one extra line to scroll through - tag = ['', '_echo', '_bt'] + tag = ["", "_echo", "_bt"] for tg in tag: - if hasattr(ds, 'coord_sys_axes'+tg): - ds.attrs.pop('coord_sys_axes'+tg) + if hasattr(ds, "coord_sys_axes" + tg): + ds.attrs.pop("coord_sys_axes" + tg) return ds @@ -122,12 +130,12 @@ def _beam2inst(dat, reverse=False, force=False): """ if not force: - if not reverse and dat.coord_sys.lower() != 'beam': - raise ValueError('The input must be in beam coordinates.') - if reverse and dat.coord_sys != 'inst': - raise ValueError('The input must be in inst coordinates.') + if not reverse and dat.coord_sys.lower() != "beam": + raise ValueError("The input must be in beam coordinates.") + if reverse and dat.coord_sys != "inst": + raise ValueError("The input must be in inst coordinates.") - rotmat = dat['beam2inst_orientmat'] + rotmat = dat["beam2inst_orientmat"] if isinstance(force, (list, set, tuple)): # You can force a distinct set of variables to be rotated by @@ -135,16 +143,17 @@ def _beam2inst(dat, reverse=False, force=False): rotate_vars = force else: rotate_vars = [ - ky for ky in dat.rotate_vars if dat[ky].shape[0] == rotmat.shape[0]] + ky for ky in dat.rotate_vars if dat[ky].shape[0] == rotmat.shape[0] + ] - cs = 'inst' + cs = "inst" if reverse: # Can't use transpose because rotation is not between # orthogonal coordinate systems rotmat = inv(rotmat) - cs = 'beam' + cs = "beam" for ky in rotate_vars: - dat[ky].values = np.einsum('ij,j...->i...', rotmat, dat[ky].values) + dat[ky].values = np.einsum("ij,j...->i...", rotmat, dat[ky].values) if force: dat = _set_coords(dat, cs, forced=True) @@ -154,7 +163,7 @@ def _beam2inst(dat, reverse=False, force=False): return dat -def euler2orient(heading, pitch, roll, units='degrees'): +def euler2orient(heading, pitch, roll, units="degrees"): """ Calculate the orientation matrix from DOLfYN-defined euler angles. @@ -163,8 +172,8 @@ def euler2orient(heading, pitch, roll, units='degrees'): The matrices H, P, R are the transpose of the matrices for rotation about z, y, x as shown here https://en.wikipedia.org/wiki/Rotation_matrix. The transpose is used - because in DOLfYN the orientation matrix is organized for - rotation from EARTH --> INST, while the wiki's matrices are organized for + because in DOLfYN the orientation matrix is organized for + rotation from EARTH --> INST, while the wiki's matrices are organized for rotation from INST --> EARTH. Parameters @@ -187,7 +196,7 @@ def euler2orient(heading, pitch, roll, units='degrees'): - a "ZYX" rotation order. That is, these variables are computed assuming that rotation from the earth -> instrument frame happens by rotating around the z-axis first (heading), then rotating - around the y-axis (pitch), then rotating around the x-axis (roll). + around the y-axis (pitch), then rotating around the x-axis (roll). Note this requires matrix multiplication in the reverse order. - heading is defined as the direction the x-axis points, positive @@ -201,11 +210,11 @@ def euler2orient(heading, pitch, roll, units='degrees'): instrument's x-axis """ - if units.lower() == 'degrees': + if units.lower() == "degrees": pitch = np.deg2rad(pitch) roll = np.deg2rad(roll) heading = np.deg2rad(heading) - elif units.lower() == 'radians': + elif units.lower() == "radians": pass else: raise Exception("Invalid units") @@ -227,19 +236,28 @@ def euler2orient(heading, pitch, roll, units='degrees'): one = np.ones_like(sr) H = np.array( - [[ch, sh, zero], - [-sh, ch, zero], - [zero, zero, one], ]) + [ + [ch, sh, zero], + [-sh, ch, zero], + [zero, zero, one], + ] + ) P = np.array( - [[cp, zero, -sp], - [zero, one, zero], - [sp, zero, cp], ]) + [ + [cp, zero, -sp], + [zero, one, zero], + [sp, zero, cp], + ] + ) R = np.array( - [[one, zero, zero], - [zero, cr, sr], - [zero, -sr, cr], ]) + [ + [one, zero, zero], + [zero, cr, sr], + [zero, -sr, cr], + ] + ) - return np.einsum('ij...,jk...,kl...->il...', R, P, H) + return np.einsum("ij...,jk...,kl...->il...", R, P, H) def orient2euler(omat): @@ -258,18 +276,17 @@ def orient2euler(omat): positive clockwise from North (this is *opposite* the right-hand-rule around the Z-axis), range 0-360 degrees. pitch : np.ndarray - The pitch angle (degrees). Pitch is positive when the x-axis + The pitch angle (degrees). Pitch is positive when the x-axis pitches up (this is *opposite* the right-hand-rule around the Y-axis). roll : np.ndarray - The roll angle (degrees). Roll is positive according to the + The roll angle (degrees). Roll is positive according to the right-hand-rule around the instrument's x-axis. """ - if isinstance(omat, np.ndarray) and \ - omat.shape[:2] == (3, 3): + if isinstance(omat, np.ndarray) and omat.shape[:2] == (3, 3): pass - elif hasattr(omat, 'orientmat'): - omat = omat['orientmat'].values + elif hasattr(omat, "orientmat"): + omat = omat["orientmat"].values # Note: orientation matrix is earth->inst unless supplied by an external IMU hh = np.rad2deg(np.arctan2(omat[0, 0], omat[0, 1])) @@ -286,7 +303,7 @@ def orient2euler(omat): def quaternion2orient(quaternions): """ - Calculate orientation from Nortek AHRS quaternions, where q = [W, X, Y, Z] + Calculate orientation from Nortek AHRS quaternions, where q = [W, X, Y, Z] instead of the standard q = [X, Y, Z, W] = [q1, q2, q3, q4] Parameters @@ -305,23 +322,43 @@ def quaternion2orient(quaternions): """ omat = type(quaternions)(np.empty((3, 3, quaternions.time.size))) - omat = omat.rename({'dim_0': 'earth', 'dim_1': 'inst', 'dim_2': 'time'}) + omat = omat.rename({"dim_0": "earth", "dim_1": "inst", "dim_2": "time"}) for i in range(quaternions.time.size): - r = R.from_quat([quaternions.isel(q=1, time=i), - quaternions.isel(q=2, time=i), - quaternions.isel(q=3, time=i), - quaternions.isel(q=0, time=i)]) + r = R.from_quat( + [ + quaternions.isel(q=1, time=i), + quaternions.isel(q=2, time=i), + quaternions.isel(q=3, time=i), + quaternions.isel(q=0, time=i), + ] + ) omat[..., i] = r.as_matrix() # quaternions in inst2earth reference frame, need to rotate to earth2inst omat.values = np.rollaxis(omat.values, 1) - earth = xr.DataArray(['E', 'N', 'U'], dims=['earth'], name='earth', attrs={ - 'units': '1', 'long_name': 'Earth Reference Frame', 'coverage_content_type': 'coordinate'}) - inst = xr.DataArray(['X', 'Y', 'Z'], dims=['inst'], name='inst', attrs={ - 'units': '1', 'long_name': 'Instrument Reference Frame', 'coverage_content_type': 'coordinate'}) - return omat.assign_coords({'earth': earth, 'inst': inst, 'time': quaternions.time}) + earth = xr.DataArray( + ["E", "N", "U"], + dims=["earth"], + name="earth", + attrs={ + "units": "1", + "long_name": "Earth Reference Frame", + "coverage_content_type": "coordinate", + }, + ) + inst = xr.DataArray( + ["X", "Y", "Z"], + dims=["inst"], + name="inst", + attrs={ + "units": "1", + "long_name": "Instrument Reference Frame", + "coverage_content_type": "coordinate", + }, + ) + return omat.assign_coords({"earth": earth, "inst": inst, "time": quaternions.time}) def calc_tilt(pitch, roll): @@ -334,16 +371,16 @@ def calc_tilt(pitch, roll): Instrument roll in degrees pitch : numpy.ndarray or xarray.DataArray Instrument pitch in degrees - + Returns ------- tilt : numpy.ndarray Vertical inclination of the instrument in degrees """ - if 'xarray' in type(pitch).__module__: + if "xarray" in type(pitch).__module__: pitch = pitch.values - if 'xarray' in type(roll).__module__: + if "xarray" in type(roll).__module__: roll = roll.values tilt = np.arctan( diff --git a/mhkit/dolfyn/rotate/rdi.py b/mhkit/dolfyn/rotate/rdi.py index 9f58e3738..36e91c8dd 100644 --- a/mhkit/dolfyn/rotate/rdi.py +++ b/mhkit/dolfyn/rotate/rdi.py @@ -31,15 +31,16 @@ def _inst2earth(adcpo, reverse=False, rotate_vars=None, force=False): """ csin = adcpo.coord_sys.lower() - cs_allowed = ['inst', 'ship'] + cs_allowed = ["inst", "ship"] if reverse: - cs_allowed = ['earth'] + cs_allowed = ["earth"] if not force and csin not in cs_allowed: - raise ValueError("Invalid rotation for data in {}-frame " - "coordinate system.".format(csin)) + raise ValueError( + "Invalid rotation for data in {}-frame " "coordinate system.".format(csin) + ) - if 'orientmat' in adcpo: - omat = adcpo['orientmat'] + if "orientmat" in adcpo: + omat = adcpo["orientmat"] else: omat = _calc_orientmat(adcpo) @@ -52,11 +53,11 @@ def _inst2earth(adcpo, reverse=False, rotate_vars=None, force=False): # view (not a new array) rotmat = np.rollaxis(omat.data, 1) if reverse: - cs_new = 'inst' - sumstr = 'jik,j...k->i...k' + cs_new = "inst" + sumstr = "jik,j...k->i...k" else: - cs_new = 'earth' - sumstr = 'ijk,j...k->i...k' + cs_new = "earth" + sumstr = "ijk,j...k->i...k" # Only operate on the first 3-components, b/c the 4th is err_vel for nm in rotate_vars: @@ -91,18 +92,17 @@ def _calc_beam_orientmat(theta=20, convex=True, degrees=True): c = -1 else: c = 1 - a = 1 / (2. * np.sin(theta)) - b = 1 / (4. * np.cos(theta)) - d = a / (2. ** 0.5) - return np.array([[c * a, -c * a, 0, 0], - [0, 0, -c * a, c * a], - [b, b, b, b], - [d, d, -d, -d]]) + a = 1 / (2.0 * np.sin(theta)) + b = 1 / (4.0 * np.cos(theta)) + d = a / (2.0**0.5) + return np.array( + [[c * a, -c * a, 0, 0], [0, 0, -c * a, c * a], [b, b, b, b], [d, d, -d, -d]] + ) def _calc_orientmat(adcpo): """ - Calculate the orientation matrix using the raw + Calculate the orientation matrix using the raw heading, pitch, roll values from the RDI binary file. Parameters @@ -123,12 +123,12 @@ def _calc_orientmat(adcpo): (Tilt 1) is recorded in the variable leader. P is set to 0 if the "use tilt" bit of the EX command is not set.""" - r = np.deg2rad(adcpo['roll'].values) - p = np.arctan(np.tan(np.deg2rad(adcpo['pitch'].values)) * np.cos(r)) - h = np.deg2rad(adcpo['heading'].values) + r = np.deg2rad(adcpo["roll"].values) + p = np.arctan(np.tan(np.deg2rad(adcpo["pitch"].values)) * np.cos(r)) + h = np.deg2rad(adcpo["heading"].values) - if 'rdi' in adcpo.inst_make.lower(): - if adcpo.orientation == 'up': + if "rdi" in adcpo.inst_make.lower(): + if adcpo.orientation == "up": """ ## RDI-ADCP-MANUAL (Jan 08, section 5.6 page 18) Since the roll describes the ship axes rather than the @@ -139,7 +139,7 @@ def _calc_orientmat(adcpo): to 0 if the "use tilt" bit of the EX command is not set. """ r += np.pi - if (adcpo.coord_sys == 'ship' and adcpo.use_pitchroll == 'yes'): + if adcpo.coord_sys == "ship" and adcpo.use_pitchroll == "yes": r[:] = 0 p[:] = 0 @@ -163,14 +163,29 @@ def _calc_orientmat(adcpo): # The 'orientation matrix' is the transpose of the 'rotation matrix'. omat = np.rollaxis(rotmat, 1) - earth = xr.DataArray(['E', 'N', 'U'], dims=['earth'], name='earth', attrs={ - 'units': '1', 'long_name': 'Earth Reference Frame', 'coverage_content_type': 'coordinate'}) - inst = xr.DataArray(['X', 'Y', 'Z'], dims=['inst'], name='inst', attrs={ - 'units': '1', 'long_name': 'Instrument Reference Frame', 'coverage_content_type': 'coordinate'}) - return xr.DataArray(omat, - coords={'earth': earth, - 'inst': inst, - 'time': adcpo.time}, - dims=['earth', 'inst', 'time'], - attrs={'units': '1', - 'long_name': 'Orientation Matrix'}) + earth = xr.DataArray( + ["E", "N", "U"], + dims=["earth"], + name="earth", + attrs={ + "units": "1", + "long_name": "Earth Reference Frame", + "coverage_content_type": "coordinate", + }, + ) + inst = xr.DataArray( + ["X", "Y", "Z"], + dims=["inst"], + name="inst", + attrs={ + "units": "1", + "long_name": "Instrument Reference Frame", + "coverage_content_type": "coordinate", + }, + ) + return xr.DataArray( + omat, + coords={"earth": earth, "inst": inst, "time": adcpo.time}, + dims=["earth", "inst", "time"], + attrs={"units": "1", "long_name": "Orientation Matrix"}, + ) diff --git a/mhkit/dolfyn/rotate/signature.py b/mhkit/dolfyn/rotate/signature.py index 8d333a136..771842842 100644 --- a/mhkit/dolfyn/rotate/signature.py +++ b/mhkit/dolfyn/rotate/signature.py @@ -22,23 +22,23 @@ def _inst2earth(adcpo, reverse=False, rotate_vars=None, force=False): The list of variables to rotate. By default this is taken from adcpo.rotate_vars. force : bool - Do not check which frame the data is in prior to performing + Do not check which frame the data is in prior to performing this rotation. Default = False """ if reverse: # The transpose of the rotation matrix gives the inverse # rotation, so we simply reverse the order of the einsum: - sumstr = 'jik,j...k->i...k' - cs_now = 'earth' - cs_new = 'inst' + sumstr = "jik,j...k->i...k" + cs_now = "earth" + cs_new = "inst" else: - sumstr = 'ijk,j...k->i...k' - cs_now = 'inst' - cs_new = 'earth' + sumstr = "ijk,j...k->i...k" + cs_now = "inst" + cs_new = "earth" # if ADCP is upside down - if adcpo.orientation == 'down': + if adcpo.orientation == "down": down = True else: # orientation = 'up' or 'AHRS' down = False @@ -52,14 +52,18 @@ def _inst2earth(adcpo, reverse=False, rotate_vars=None, force=False): return elif cs != cs_now: raise ValueError( - "Data must be in the '%s' frame when using this function" % - cs_now) + "Data must be in the '%s' frame when using this function" % cs_now + ) - if 'orientmat' in adcpo: - omat = adcpo['orientmat'] + if "orientmat" in adcpo: + omat = adcpo["orientmat"] else: - omat = _euler2orient(adcpo['time'], adcpo['heading'].values, adcpo['pitch'].values, - adcpo['roll'].values) + omat = _euler2orient( + adcpo["time"], + adcpo["heading"].values, + adcpo["pitch"].values, + adcpo["roll"].values, + ) # Take the transpose of the orientation to get the inst->earth rotation # matrix. @@ -67,12 +71,18 @@ def _inst2earth(adcpo, reverse=False, rotate_vars=None, force=False): _dcheck = rotb._check_rotmat_det(rmat) if not _dcheck.all(): - warnings.warn("Invalid orientation matrix (determinant != 1) at indices: {}. " - "If rotated, data at these indices will be erroneous." - .format(np.nonzero(~_dcheck)[0]), UserWarning) + warnings.warn( + "Invalid orientation matrix (determinant != 1) at indices: {}. " + "If rotated, data at these indices will be erroneous.".format( + np.nonzero(~_dcheck)[0] + ), + UserWarning, + ) # The dictionary of rotation matrices for different sized arrays. - rmd = {3: rmat, } + rmd = { + 3: rmat, + } # The 4-row rotation matrix assume that rows 0,1 are u,v, # and 2,3 are independent estimates of w. @@ -99,30 +109,35 @@ def _inst2earth(adcpo, reverse=False, rotate_vars=None, force=False): signIMU = np.array([1, -1, -1], ndmin=dat.ndim).T if not reverse: if n == 3: - dat = np.einsum(sumstr, rmd[3], signIMU*dat) + dat = np.einsum(sumstr, rmd[3], signIMU * dat) elif n == 4: - dat = np.einsum('ijk,j...k->i...k', rmd[4], sign*dat) + dat = np.einsum("ijk,j...k->i...k", rmd[4], sign * dat) else: - raise Exception("The entry {} is not a vector, it cannot" - "be rotated.".format(nm)) + raise Exception( + "The entry {} is not a vector, it cannot" + "be rotated.".format(nm) + ) elif reverse: if n == 3: - dat = signIMU*np.einsum(sumstr, rmd[3], dat) + dat = signIMU * np.einsum(sumstr, rmd[3], dat) elif n == 4: - dat = sign*np.einsum('ijk,j...k->i...k', rmd[4], dat) + dat = sign * np.einsum("ijk,j...k->i...k", rmd[4], dat) else: - raise Exception("The entry {} is not a vector, it cannot" - "be rotated.".format(nm)) + raise Exception( + "The entry {} is not a vector, it cannot" + "be rotated.".format(nm) + ) else: # 'up' and AHRS if n == 3: dat = np.einsum(sumstr, rmd[3], dat) elif n == 4: - dat = np.einsum('ijk,j...k->i...k', rmd[4], dat) + dat = np.einsum("ijk,j...k->i...k", rmd[4], dat) else: - raise Exception("The entry {} is not a vector, it cannot" - "be rotated.".format(nm)) + raise Exception( + "The entry {} is not a vector, it cannot" "be rotated.".format(nm) + ) adcpo[nm].values = dat.copy() adcpo = rotb._set_coords(adcpo, cs_new) diff --git a/mhkit/dolfyn/rotate/vector.py b/mhkit/dolfyn/rotate/vector.py index bc833d7dd..3fcd856a3 100644 --- a/mhkit/dolfyn/rotate/vector.py +++ b/mhkit/dolfyn/rotate/vector.py @@ -28,28 +28,28 @@ def _beam2inst(dat, reverse=False, force=False): def _rotate_inst2head(advo, reverse=False): """ - Rotates the velocity vector from the instrument frame to the ADV probe (head) frame or + Rotates the velocity vector from the instrument frame to the ADV probe (head) frame or vice versa. - This function uses the rotation matrix 'inst2head_rotmat' to rotate the velocity vector 'vel' - from the instrument frame to the head frame ('inst->head') or from the head frame to the + This function uses the rotation matrix 'inst2head_rotmat' to rotate the velocity vector 'vel' + from the instrument frame to the head frame ('inst->head') or from the head frame to the instrument frame ('head->inst'). Parameters ---------- advo: dict - A dictionary-like object that includes the rotation matrix 'inst2head_rotmat' + A dictionary-like object that includes the rotation matrix 'inst2head_rotmat' and the velocity vector 'vel' to be rotated. reverse: bool, optional - A boolean value indicating the direction of the rotation. - If False (default), the function rotates 'vel' from the instrument frame to the head frame. + A boolean value indicating the direction of the rotation. + If False (default), the function rotates 'vel' from the instrument frame to the head frame. If True, the function rotates 'vel' from the head frame to the instrument frame. Returns ------- advo: dict - The input dictionary-like object with the rotated velocity vector. + The input dictionary-like object with the rotated velocity vector. If 'inst2head_rotmat' doesn't exist in 'advo', the function returns the input 'advo' unmodified. """ @@ -57,9 +57,9 @@ def _rotate_inst2head(advo, reverse=False): # This object doesn't have a head2inst_rotmat, so we do nothing. return advo if reverse: # head->inst - advo['vel'].values = np.dot(advo['inst2head_rotmat'].T, advo['vel']) + advo["vel"].values = np.dot(advo["inst2head_rotmat"].T, advo["vel"]) else: # inst->head - advo['vel'].values = np.dot(advo['inst2head_rotmat'], advo['vel']) + advo["vel"].values = np.dot(advo["inst2head_rotmat"], advo["vel"]) return advo @@ -80,12 +80,14 @@ def _check_inst2head_rotmat(advo): Returns True if 'inst2head_rotmat' exists, was set correctly, and is valid (False if not). """ - if advo.get('inst2head_rotmat', None) is None: + if advo.get("inst2head_rotmat", None) is None: # This is the default value, and we do nothing. return False if not advo.inst2head_rotmat_was_set: - raise Exception("The inst2head rotation matrix exists in props, " - "but it was not set using `set_inst2head_rotmat.") + raise Exception( + "The inst2head rotation matrix exists in props, " + "but it was not set using `set_inst2head_rotmat." + ) if not rotb._check_rotmat_det(advo.inst2head_rotmat.values): raise ValueError("Invalid inst2head_rotmat (determinant != 1).") return True @@ -107,20 +109,20 @@ def _inst2earth(advo, reverse=False, rotate_vars=None, force=False): The list of variables to rotate. By default this is taken from advo.attrs['rotate_vars']. force : bool - Do not check which frame the data is in prior to performing + Do not check which frame the data is in prior to performing this rotation. Default = False """ if reverse: # earth->inst # The transpose of the rotation matrix gives the inverse # rotation, so we simply reverse the order of the einsum: - sumstr = 'jik,j...k->i...k' - cs_now = 'earth' - cs_new = 'inst' + sumstr = "jik,j...k->i...k" + cs_now = "earth" + cs_new = "inst" else: # inst->earth - sumstr = 'ijk,j...k->i...k' - cs_now = 'inst' - cs_new = 'earth' + sumstr = "ijk,j...k->i...k" + cs_now = "inst" + cs_new = "earth" rotate_vars = rotb._check_rotate_vars(advo, rotate_vars) @@ -131,17 +133,18 @@ def _inst2earth(advo, reverse=False, rotate_vars=None, force=False): return elif cs != cs_now: raise ValueError( - "Data must be in the '%s' frame when using this function" % - cs_now) + "Data must be in the '%s' frame when using this function" % cs_now + ) - if hasattr(advo, 'orientmat'): - omat = advo['orientmat'] + if hasattr(advo, "orientmat"): + omat = advo["orientmat"] else: - if 'vector' in advo.inst_model.lower(): - orientation_down = advo['orientation_down'] + if "vector" in advo.inst_model.lower(): + orientation_down = advo["orientation_down"] - omat = _calc_omat(advo['time'], advo['heading'], advo['pitch'], - advo['roll'], orientation_down) + omat = _calc_omat( + advo["time"], advo["heading"], advo["pitch"], advo["roll"], orientation_down + ) # Take the transpose of the orientation to get the inst->earth rotation # matrix. @@ -149,15 +152,20 @@ def _inst2earth(advo, reverse=False, rotate_vars=None, force=False): _dcheck = rotb._check_rotmat_det(rmat) if not _dcheck.all(): - warnings.warn("Invalid orientation matrix (determinant != 1) at indices: {}. " - "If rotated, data at these indices will be erroneous." - .format(np.nonzero(~_dcheck)[0]), UserWarning) + warnings.warn( + "Invalid orientation matrix (determinant != 1) at indices: {}. " + "If rotated, data at these indices will be erroneous.".format( + np.nonzero(~_dcheck)[0] + ), + UserWarning, + ) for nm in rotate_vars: n = advo[nm].shape[0] if n != 3: - raise Exception("The entry {} is not a vector, it cannot " - "be rotated.".format(nm)) + raise Exception( + "The entry {} is not a vector, it cannot " "be rotated.".format(nm) + ) advo[nm].values = np.einsum(sumstr, rmat, advo[nm]) advo = rotb._set_coords(advo, cs_new) @@ -191,34 +199,32 @@ def _earth2principal(advo, reverse=False, rotate_vars=None): # the rest of the function) if reverse: - cs_now = 'principal' - cs_new = 'earth' + cs_now = "principal" + cs_new = "earth" else: ang *= -1 - cs_now = 'earth' - cs_new = 'principal' + cs_now = "earth" + cs_new = "principal" rotate_vars = rotb._check_rotate_vars(advo, rotate_vars) cs = advo.coord_sys.lower() if cs == cs_new: - print('Data is already in the %s coordinate system' % cs_new) + print("Data is already in the %s coordinate system" % cs_new) return elif cs != cs_now: raise ValueError( - 'Data must be in the {} frame ' - 'to use this function'.format(cs_now)) + "Data must be in the {} frame " "to use this function".format(cs_now) + ) # Calculate the rotation matrix: cp, sp = np.cos(ang), np.sin(ang) - rotmat = np.array([[cp, -sp, 0], - [sp, cp, 0], - [0, 0, 1]], dtype=np.float32) + rotmat = np.array([[cp, -sp, 0], [sp, cp, 0], [0, 0, 1]], dtype=np.float32) # Perform the rotation: for nm in rotate_vars: dat = advo[nm].values - dat[:2] = np.einsum('ij,j...->i...', rotmat[:2, :2], dat[:2]) + dat[:2] = np.einsum("ij,j...->i...", rotmat[:2, :2], dat[:2]) advo[nm].values = dat.copy() # Finalize the output. @@ -273,7 +279,7 @@ def _calc_omat(time, hh, pp, rr, orientation_down=None): return _euler2orient(time, hh, pp, rr) -def _euler2orient(time, heading, pitch, roll, units='degrees'): +def _euler2orient(time, heading, pitch, roll, units="degrees"): # For Nortek data only. # The heading, pitch, roll used here are from the Nortek binary files. @@ -281,7 +287,7 @@ def _euler2orient(time, heading, pitch, roll, units='degrees'): # Returns a rotation matrix that rotates earth (ENU) -> inst. # This is based on the Nortek `Transforms.m` file, available in # the refs folder. - if units.lower() == 'degrees': + if units.lower() == "degrees": pitch = np.deg2rad(pitch) roll = np.deg2rad(roll) heading = np.deg2rad(heading) @@ -291,7 +297,7 @@ def _euler2orient(time, heading, pitch, roll, units='degrees'): # This also involved swapping the sign on sh in the def of omat # below from the values provided in the Nortek Matlab script. - heading = (np.pi / 2 - heading) + heading = np.pi / 2 - heading ch = np.cos(heading) sh = np.sin(heading) @@ -313,14 +319,29 @@ def _euler2orient(time, heading, pitch, roll, units='degrees'): omat[1, 2, :] = sr * cp omat[2, 2, :] = cp * cr - earth = xr.DataArray(['E', 'N', 'U'], dims=['earth'], name='earth', attrs={ - 'units': '1', 'long_name': 'Earth Reference Frame', 'coverage_content_type': 'coordinate'}) - inst = xr.DataArray(['X', 'Y', 'Z'], dims=['inst'], name='inst', attrs={ - 'units': '1', 'long_name': 'Instrument Reference Frame', 'coverage_content_type': 'coordinate'}) - return xr.DataArray(omat, - coords={'earth': earth, - 'inst': inst, - 'time': time}, - dims=['earth', 'inst', 'time'], - attrs={'units': '1', - 'long_name': 'Orientation Matrix'}) + earth = xr.DataArray( + ["E", "N", "U"], + dims=["earth"], + name="earth", + attrs={ + "units": "1", + "long_name": "Earth Reference Frame", + "coverage_content_type": "coordinate", + }, + ) + inst = xr.DataArray( + ["X", "Y", "Z"], + dims=["inst"], + name="inst", + attrs={ + "units": "1", + "long_name": "Instrument Reference Frame", + "coverage_content_type": "coordinate", + }, + ) + return xr.DataArray( + omat, + coords={"earth": earth, "inst": inst, "time": time}, + dims=["earth", "inst", "time"], + attrs={"units": "1", "long_name": "Orientation Matrix"}, + ) diff --git a/mhkit/dolfyn/time.py b/mhkit/dolfyn/time.py index 576c395d1..ed25b23a5 100644 --- a/mhkit/dolfyn/time.py +++ b/mhkit/dolfyn/time.py @@ -12,7 +12,7 @@ def _fullyear(year): def epoch2dt64(ep_time): """ - Convert from epoch time (seconds since 1/1/1970 00:00:00) to + Convert from epoch time (seconds since 1/1/1970 00:00:00) to numpy.datetime64 array Parameters @@ -27,14 +27,14 @@ def epoch2dt64(ep_time): """ # assumes t0=1970-01-01 00:00:00 - out = np.array(ep_time.astype('int')).astype('datetime64[s]') - out = out + ((ep_time % 1) * 1e9).astype('timedelta64[ns]') + out = np.array(ep_time.astype("int")).astype("datetime64[s]") + out = out + ((ep_time % 1) * 1e9).astype("timedelta64[ns]") return out def dt642epoch(dt64): """ - Convert numpy.datetime64 array to epoch time + Convert numpy.datetime64 array to epoch time (seconds since 1/1/1970 00:00:00) Parameters @@ -48,7 +48,7 @@ def dt642epoch(dt64): Epoch time (seconds since 1/1/1970 00:00:00) """ - return dt64.astype('datetime64[ns]').astype('float') / 1e9 + return dt64.astype("datetime64[ns]").astype("float") / 1e9 def date2dt64(dt): @@ -66,7 +66,7 @@ def date2dt64(dt): Single or array of datetime64 object(s) """ - return np.array(dt).astype('datetime64[ns]') + return np.array(dt).astype("datetime64[ns]") def dt642date(dt64): @@ -89,7 +89,7 @@ def dt642date(dt64): def epoch2date(ep_time, offset_hr=0, to_str=False): """ - Convert from epoch time (seconds since 1/1/1970 00:00:00) to a list + Convert from epoch time (seconds since 1/1/1970 00:00:00) to a list of datetime objects Parameters @@ -104,12 +104,12 @@ def epoch2date(ep_time, offset_hr=0, to_str=False): Returns ------- time : datetime.datetime - The converted datetime object or list(strings) + The converted datetime object or list(strings) Notes ----- The specific time instance is set during deployment, usually sync'd to the - deployment computer. The time seen by DOLfYN is in the timezone of the + deployment computer. The time seen by DOLfYN is in the timezone of the deployment computer, which is unknown to DOLfYN. """ @@ -161,7 +161,7 @@ def date2str(dt, format_str=None): """ if format_str is None: - format_str = '%Y-%m-%d %H:%M:%S.%f' + format_str = "%Y-%m-%d %H:%M:%S.%f" if not isinstance(dt, list): dt = [dt] @@ -208,9 +208,10 @@ def date2matlab(dt): time = list() for i in range(len(dt)): mdn = dt[i] + timedelta(days=366) - frac_seconds = (dt[i]-datetime(dt[i].year, dt[i].month, - dt[i].day, 0, 0, 0)).seconds / (24*60*60) - frac_microseconds = dt[i].microsecond / (24*60*60*1000000) + frac_seconds = ( + dt[i] - datetime(dt[i].year, dt[i].month, dt[i].day, 0, 0, 0) + ).seconds / (24 * 60 * 60) + frac_microseconds = dt[i].microsecond / (24 * 60 * 60 * 1000000) time.append(mdn.toordinal() + frac_seconds + frac_microseconds) return time @@ -238,9 +239,10 @@ def matlab2date(matlab_dn): time.append(day + dayfrac) # Datenum is precise down to 100 microseconds - add difference to round - us = int(round(time[i].microsecond/100, 0))*100 - time[i] = time[i].replace(microsecond=time[i].microsecond) + \ - timedelta(microseconds=us-time[i].microsecond) + us = int(round(time[i].microsecond / 100, 0)) * 100 + time[i] = time[i].replace(microsecond=time[i].microsecond) + timedelta( + microseconds=us - time[i].microsecond + ) return time @@ -253,7 +255,7 @@ def _fill_time_gaps(epoch, sample_rate_hz): """ # epoch is seconds since 1970 - dt = 1. / sample_rate_hz + dt = 1.0 / sample_rate_hz epoch = fillgaps(epoch) if np.isnan(epoch[0]): i0 = np.nonzero(~np.isnan(epoch))[0][0] @@ -263,6 +265,6 @@ def _fill_time_gaps(epoch, sample_rate_hz): # Search backward through the array to get the 'negative index' ie = -np.nonzero(~np.isnan(epoch[::-1]))[0][0] - 1 delta = np.arange(1, -ie, 1) * dt - epoch[(ie + 1):] = epoch[ie] + delta + epoch[(ie + 1) :] = epoch[ie] + delta return epoch diff --git a/mhkit/dolfyn/tools/fft.py b/mhkit/dolfyn/tools/fft.py index 8810c78b0..7d8c08503 100644 --- a/mhkit/dolfyn/tools/fft.py +++ b/mhkit/dolfyn/tools/fft.py @@ -1,5 +1,6 @@ import numpy as np from .misc import detrend_array + fft = np.fft.fft @@ -28,16 +29,27 @@ def fft_frequency(nfft, fs, full=False): if full: return f else: - return np.abs(f[1:int(nfft / 2. + 1)]) + return np.abs(f[1 : int(nfft / 2.0 + 1)]) def _getwindow(window, nfft): - if window == 'hann': - window = np.hanning(nfft) - elif window == 'hamm': - window = np.hamming(nfft) - elif window is None or window == 1: + if window is None: + window = np.ones(nfft) + elif isinstance(window, (int, float)) and window == 1: window = np.ones(nfft) + elif isinstance(window, str): + if "hann" in window: + window = np.hanning(nfft) + elif "hamm" in window: + window = np.hamming(nfft) + else: + raise ValueError("Unsupported window type: {}".format(window)) + elif isinstance(window, np.ndarray): + if len(window) != nfft: + raise ValueError("Custom window length must be equal to nfft") + else: + raise ValueError("Invalid window parameter") + return window @@ -68,7 +80,7 @@ def _stepsize(l, nfft, nens=None, step=None): if nens is None and step is None: if l == nfft: return 0, 1, int(nfft) - nens = int(2. * l / nfft) + nens = int(2.0 * l / nfft) return int((l - nfft) / (nens - 1)), nens, int(nfft) elif nens is None: return int(step), int((l - nfft) / step + 1), int(nfft) @@ -78,7 +90,7 @@ def _stepsize(l, nfft, nens=None, step=None): return int((l - nfft) / (nens - 1)), int(nens), int(nfft) -def cpsd_quasisync_1D(a, b, nfft, fs, window='hann'): +def cpsd_quasisync_1D(a, b, nfft, fs, window="hann"): """ Compute the cross power spectral density (CPSD) of the signals `a` and `b`. @@ -148,21 +160,24 @@ def cpsd_quasisync_1D(a, b, nfft, fs, window='hann'): step[1], nens, nfft = _stepsize(l[1], nfft, nens=nens) fs = np.float64(fs) window = _getwindow(window, nfft) - fft_inds = slice(1, int(nfft / 2. + 1)) - wght = 2. / (window ** 2).sum() - pwr = fft(detrend_array(a[0:nfft]) * window)[fft_inds] * \ - np.conj(fft(detrend_array(b[0:nfft]) * window)[fft_inds]) + fft_inds = slice(1, int(nfft / 2.0 + 1)) + wght = 2.0 / (window**2).sum() + pwr = fft(detrend_array(a[0:nfft]) * window)[fft_inds] * np.conj( + fft(detrend_array(b[0:nfft]) * window)[fft_inds] + ) if nens - 1: - for i1, i2 in zip(range(step[0], l[0] - nfft + 1, step[0]), - range(step[1], l[1] - nfft + 1, step[1])): - pwr += fft(detrend_array(a[i1:(i1 + nfft)]) * window)[fft_inds] * \ - np.conj( - fft(detrend_array(b[i2:(i2 + nfft)]) * window)[fft_inds]) + for i1, i2 in zip( + range(step[0], l[0] - nfft + 1, step[0]), + range(step[1], l[1] - nfft + 1, step[1]), + ): + pwr += fft(detrend_array(a[i1 : (i1 + nfft)]) * window)[fft_inds] * np.conj( + fft(detrend_array(b[i2 : (i2 + nfft)]) * window)[fft_inds] + ) pwr *= wght / nens / fs return pwr -def cpsd_1D(a, b, nfft, fs, window='hann', step=None): +def cpsd_1D(a, b, nfft, fs, window="hann", step=None): """ Compute the cross power spectral density (CPSD) of the signals `a` and `b`. @@ -229,8 +244,8 @@ def cpsd_1D(a, b, nfft, fs, window='hann', step=None): step, nens, nfft = _stepsize(l, nfft, step=step) fs = np.float64(fs) window = _getwindow(window, nfft) - fft_inds = slice(1, int(nfft / 2. + 1)) - wght = 2. / (window ** 2).sum() + fft_inds = slice(1, int(nfft / 2.0 + 1)) + wght = 2.0 / (window**2).sum() s1 = fft(detrend_array(a[0:nfft]) * window)[fft_inds] if auto_psd: pwr = np.abs(s1) ** 2 @@ -238,18 +253,18 @@ def cpsd_1D(a, b, nfft, fs, window='hann', step=None): pwr = s1 * np.conj(fft(detrend_array(b[0:nfft]) * window)[fft_inds]) if nens - 1: for i in range(step, l - nfft + 1, step): - s1 = fft(detrend_array(a[i:(i + nfft)]) * window)[fft_inds] + s1 = fft(detrend_array(a[i : (i + nfft)]) * window)[fft_inds] if auto_psd: pwr += np.abs(s1) ** 2 else: - pwr += s1 * \ - np.conj( - fft(detrend_array(b[i:(i + nfft)]) * window)[fft_inds]) + pwr += s1 * np.conj( + fft(detrend_array(b[i : (i + nfft)]) * window)[fft_inds] + ) pwr *= wght / nens / fs return pwr -def psd_1D(a, nfft, fs, window='hann', step=None): +def psd_1D(a, nfft, fs, window="hann", step=None): """ Compute the power spectral density (PSD). @@ -286,7 +301,7 @@ def psd_1D(a, nfft, fs, window='hann', step=None): Notes ----- - Credit: This function's line of code was copied from JN's fast_psd.m + Credit: This function's line of code was copied from JN's fast_psd.m routine. See Also diff --git a/mhkit/dolfyn/tools/misc.py b/mhkit/dolfyn/tools/misc.py index de0400772..f97485151 100644 --- a/mhkit/dolfyn/tools/misc.py +++ b/mhkit/dolfyn/tools/misc.py @@ -50,8 +50,9 @@ def detrend_array(arr, axis=-1, in_place=False): x = np.arange(sz[axis], dtype=np.float_).reshape(sz) x -= np.nanmean(x, axis=axis, keepdims=True) arr -= np.nanmean(arr, axis=axis, keepdims=True) - b = np.nanmean((x * arr), axis=axis, keepdims=True) / \ - np.nanmean((x ** 2), axis=axis, keepdims=True) + b = np.nanmean((x * arr), axis=axis, keepdims=True) / np.nanmean( + (x**2), axis=axis, keepdims=True + ) arr -= b * x return arr @@ -82,7 +83,7 @@ def group(bl, min_length=0): if not any(bl): return np.empty(0) - vl = np.diff(bl.astype('int')) + vl = np.diff(bl.astype("int")) ups = np.nonzero(vl == 1)[0] + 1 dns = np.nonzero(vl == -1)[0] + 1 if bl[0]: @@ -95,7 +96,7 @@ def group(bl, min_length=0): dns = np.array([len(bl)]) else: dns = np.concatenate((dns, [len(bl)])) - out = np.empty(len(dns), dtype='O') + out = np.empty(len(dns), dtype="O") idx = 0 for u, d in zip(ups, dns): if d - u < min_length: @@ -134,12 +135,12 @@ def slice1d_along_axis(arr_shape, axis=0): if axis < 0: axis += nd ind = [0] * (nd - 1) - i = np.zeros(nd, 'O') + i = np.zeros(nd, "O") indlist = list(range(nd)) indlist.remove(axis) i[axis] = slice(None) itr_dims = np.asarray(arr_shape).take(indlist) - Ntot = np.product(itr_dims) + Ntot = np.prod(itr_dims) i.put(indlist, ind) k = 0 while k < Ntot: @@ -165,18 +166,18 @@ def convert_degrees(deg, tidal_mode=True): deg: float or array-like Number or array in 'degrees CCW from East' or 'degrees CW from North' tidal_mode : bool - If true, range is set from 0 to +/-180 degrees. If false, range is 0 to + If true, range is set from 0 to +/-180 degrees. If false, range is 0 to 360 degrees. Default = True Returns ------- out : float or array-like - Input data transformed to 'degrees CW from North' or + Input data transformed to 'degrees CW from North' or 'degrees CCW from East', respectively (based on `deg`) Notes ----- - The same algorithm is used to convert back and forth between 'CCW from E' + The same algorithm is used to convert back and forth between 'CCW from E' and 'CW from N' """ @@ -223,11 +224,10 @@ def fillgaps(a, maxgap=np.inf, dim=0, extrapFlg=False): nd = a.ndim if dim < 0: dim += nd - if (dim >= nd): - raise ValueError("dim must be less than a.ndim; dim=%d, rank=%d." - % (dim, nd)) + if dim >= nd: + raise ValueError("dim must be less than a.ndim; dim=%d, rank=%d." % (dim, nd)) ind = [0] * (nd - 1) - i = np.zeros(nd, 'O') + i = np.zeros(nd, "O") indlist = list(range(nd)) indlist.remove(dim) i[dim] = slice(None, None) @@ -238,18 +238,21 @@ def fillgaps(a, maxgap=np.inf, dim=0, extrapFlg=False): # Here we extrapolate the ends, if necessary: if extrapFlg and gd.__len__() > 0: if gd[0] != 0 and gd[0] <= maxgap: - a[:gd[0]] = a[gd[0]] + a[: gd[0]] = a[gd[0]] if gd[-1] != a.__len__() and (a.__len__() - (gd[-1] + 1)) <= maxgap: - a[gd[-1]:] = a[gd[-1]] + a[gd[-1] :] = a[gd[-1]] # Here is the main loop if gd.__len__() > 1: inds = np.nonzero((1 < np.diff(gd)) & (np.diff(gd) <= maxgap + 1))[0] for i2 in range(0, inds.__len__()): ii = list(range(gd[inds[i2]] + 1, gd[inds[i2] + 1])) - a[ii] = (np.diff(a[gd[[inds[i2], inds[i2] + 1]]]) * - (np.arange(0, ii.__len__()) + 1) / - (ii.__len__() + 1) + a[gd[inds[i2]]]).astype(a.dtype) + a[ii] = ( + np.diff(a[gd[[inds[i2], inds[i2] + 1]]]) + * (np.arange(0, ii.__len__()) + 1) + / (ii.__len__() + 1) + + a[gd[inds[i2]]] + ).astype(a.dtype) return a @@ -289,27 +292,28 @@ def interpgaps(a, t, maxgap=np.inf, dim=0, extrapFlg=False): # Here we extrapolate the ends, if necessary: if extrapFlg and gd.__len__() > 0: if gd[0] != 0 and gd[0] <= maxgap: - a[:gd[0]] = a[gd[0]] + a[: gd[0]] = a[gd[0]] if gd[-1] != a.__len__() and (a.__len__() - (gd[-1] + 1)) <= maxgap: - a[gd[-1]:] = a[gd[-1]] + a[gd[-1] :] = a[gd[-1]] # Here is the main loop if gd.__len__() > 1: - inds = _find((1 < np.diff(gd)) & - (np.diff(gd) <= maxgap + 1)) + inds = _find((1 < np.diff(gd)) & (np.diff(gd) <= maxgap + 1)) for i2 in range(0, inds.__len__()): ii = np.arange(gd[inds[i2]] + 1, gd[inds[i2] + 1]) - ti = (t[ii] - t[gd[inds[i2]]]) / np.diff(t[[gd[inds[i2]], - gd[inds[i2] + 1]]]) - a[ii] = (np.diff(a[gd[[inds[i2], inds[i2] + 1]]]) * ti + - a[gd[inds[i2]]]).astype(a.dtype) + ti = (t[ii] - t[gd[inds[i2]]]) / np.diff( + t[[gd[inds[i2]], gd[inds[i2] + 1]]] + ) + a[ii] = ( + np.diff(a[gd[[inds[i2], inds[i2] + 1]]]) * ti + a[gd[inds[i2]]] + ).astype(a.dtype) return a def medfiltnan(a, kernel, thresh=0): """ - Do a running median filter of the data. Regions where more than + Do a running median filter of the data. Regions where more than ``thresh`` fraction of the points are NaN are set to NaN. Parameters @@ -317,9 +321,9 @@ def medfiltnan(a, kernel, thresh=0): a : numpy.ndarray 2D array containing data to be filtered. kernel_size : numpy.ndarray or list, optional - A scalar or a list of length 2, giving the size of the median - filter window in each dimension. Elements of kernel_size should - be odd. If kernel_size is a scalar, then this scalar is used as + A scalar or a list of length 2, giving the size of the median + filter window in each dimension. Elements of kernel_size should + be odd. If kernel_size is a scalar, then this scalar is used as the size in each dimension. thresh : int Maximum gap in *a* to filter over @@ -344,9 +348,9 @@ def medfiltnan(a, kernel, thresh=0): kernel = [1, kernel] out = medfilt2d(a, kernel) if thresh > 0: - out[convolve2d(np.isnan(a), - np.ones(kernel) / np.prod(kernel), - 'same') > thresh] = np.NaN + out[ + convolve2d(np.isnan(a), np.ones(kernel) / np.prod(kernel), "same") > thresh + ] = np.NaN if flag_1D: return out[0] return out diff --git a/mhkit/dolfyn/velocity.py b/mhkit/dolfyn/velocity.py index 47d3a6528..24b14d375 100644 --- a/mhkit/dolfyn/velocity.py +++ b/mhkit/dolfyn/velocity.py @@ -7,13 +7,13 @@ from .tools.misc import slice1d_along_axis, convert_degrees -@xr.register_dataset_accessor('velds') # 'vel dataset' -class Velocity(): +@xr.register_dataset_accessor("velds") # 'vel dataset' +class Velocity: """ All ADCP and ADV xarray datasets wrap this base class. - The turbulence-related attributes defined within this class - assume that the ``'tke_vec'`` and ``'stress_vec'`` data entries are + The turbulence-related attributes defined within this class + assume that the ``'tke_vec'`` and ``'stress_vec'`` data entries are included in the dataset. These are typically calculated using a :class:`VelBinner` tool, but the method for calculating these variables can depend on the details of the measurement @@ -27,7 +27,7 @@ class Velocity(): ######## # Major components of the dolfyn-API - def rotate2(self, out_frame='earth', inplace=True): + def rotate2(self, out_frame="earth", inplace=True): """ Rotate the dataset to a new coordinate system. @@ -173,100 +173,128 @@ def __getitem__(self, key): def __contains__(self, val): return val in self.ds - def __repr__(self, ): - time_string = '{:.2f} {} (started: {})' - if ('time' not in self or dt642epoch(self['time'][0]) < 1): - time_string = '-->No Time Information!<--' + def __repr__( + self, + ): + time_string = "{:.2f} {} (started: {})" + if "time" not in self or dt642epoch(self["time"][0]) < 1: + time_string = "-->No Time Information!<--" else: - tm = self['time'][[0, -1]].values + tm = self["time"][[0, -1]].values dt = dt642date(tm[0])[0] - delta = (dt642epoch(tm[-1]) - - dt642epoch(tm[0])) / (3600 * 24) # days + delta = (dt642epoch(tm[-1]) - dt642epoch(tm[0])) / (3600 * 24) # days if delta > 1: - units = 'days' + units = "days" elif delta * 24 > 1: - units = 'hours' + units = "hours" delta *= 24 elif delta * 24 * 60 > 1: delta *= 24 * 60 - units = 'minutes' + units = "minutes" else: delta *= 24 * 3600 - units = 'seconds' + units = "seconds" try: - time_string = time_string.format(delta, units, - dt.strftime('%b %d, %Y %H:%M')) + time_string = time_string.format( + delta, units, dt.strftime("%b %d, %Y %H:%M") + ) except AttributeError: - time_string = '-->Error in time info<--' + time_string = "-->Error in time info<--" p = self.ds.attrs - t_shape = self['time'].shape + t_shape = self["time"].shape if len(t_shape) > 1: - shape_string = '({} bins, {} pings @ {}Hz)'.format( - t_shape[0], t_shape, p.get('fs')) + shape_string = "({} bins, {} pings @ {}Hz)".format( + t_shape[0], t_shape, p.get("fs") + ) else: - shape_string = '({} pings @ {}Hz)'.format( - t_shape[0], p.get('fs', '??')) - _header = ("<%s data object>: " - " %s %s\n" - " . %s\n" - " . %s-frame\n" - " . %s\n" % - (p.get('inst_type'), - self.ds.attrs['inst_make'], self.ds.attrs['inst_model'], - time_string, - p.get('coord_sys'), - shape_string)) - _vars = ' Variables:\n' + shape_string = "({} pings @ {}Hz)".format(t_shape[0], p.get("fs", "??")) + _header = ( + "<%s data object>: " + " %s %s\n" + " . %s\n" + " . %s-frame\n" + " . %s\n" + % ( + p.get("inst_type"), + self.ds.attrs["inst_make"], + self.ds.attrs["inst_model"], + time_string, + p.get("coord_sys"), + shape_string, + ) + ) + _vars = " Variables:\n" # Specify which variable show up in this view here. # * indicates a wildcard # This list also sets the display order. # Only the first 12 matches are displayed. - show_vars = ['time*', 'vel*', 'range', 'range_echo', - 'orientmat', 'heading', 'pitch', 'roll', - 'temp', 'press*', 'amp*', 'corr*', - 'accel', 'angrt', 'mag', 'echo', - ] + show_vars = [ + "time*", + "vel*", + "range", + "range_echo", + "orientmat", + "heading", + "pitch", + "roll", + "temp", + "press*", + "amp*", + "corr*", + "accel", + "angrt", + "mag", + "echo", + ] n = 0 for v in show_vars: if n > 12: break - if v.endswith('*'): + if v.endswith("*"): v = v[:-1] # Drop the '*' for nm in self.variables: if n > 12: break if nm.startswith(v): n += 1 - _vars += ' - {} {}\n'.format(nm, self.ds[nm].dims) + _vars += " - {} {}\n".format(nm, self.ds[nm].dims) elif v in self.ds: - _vars += ' - {} {}\n'.format(v, self.ds[v].dims) + _vars += " - {} {}\n".format(v, self.ds[v].dims) if n < len(self.variables): - _vars += ' ... and others (see `.variables`)\n' + _vars += " ... and others (see `.variables`)\n" return _header + _vars ###### # Duplicate valuable xarray properties here. @property - def variables(self, ): + def variables( + self, + ): """A sorted list of the variable names in the dataset.""" return sorted(self.ds.variables) @property - def attrs(self, ): + def attrs( + self, + ): """The attributes in the dataset.""" return self.ds.attrs @property - def coords(self, ): + def coords( + self, + ): """The coordinates in the dataset.""" return self.ds.coords ###### # A bunch of DOLfYN specific properties @property - def u(self,): + def u( + self, + ): """ The first velocity component. @@ -279,10 +307,12 @@ def u(self,): - earth: east - principal: streamwise """ - return self.ds['vel'][0].drop('dir') + return self.ds["vel"][0].drop("dir") @property - def v(self,): + def v( + self, + ): """ The second velocity component. @@ -295,10 +325,12 @@ def v(self,): - earth: north - principal: cross-stream """ - return self.ds['vel'][1].drop('dir') + return self.ds["vel"][1].drop("dir") @property - def w(self,): + def w( + self, + ): """ The third velocity component. @@ -311,37 +343,47 @@ def w(self,): - earth: up - principal: up """ - return self.ds['vel'][2].drop('dir') + return self.ds["vel"][2].drop("dir") @property - def U(self,): + def U( + self, + ): """Horizontal velocity as a complex quantity""" return xr.DataArray( - (self.u + self.v * 1j).astype('complex64'), - attrs={'units': 'm s-1', - 'long_name': 'Horizontal Water Velocity'}) - + (self.u + self.v * 1j).astype("complex64"), + attrs={"units": "m s-1", "long_name": "Horizontal Water Velocity"}, + ) + @property - def U_mag(self,): + def U_mag( + self, + ): """Horizontal velocity magnitude""" return xr.DataArray( - np.abs(self.U).astype('float32'), - attrs={'units': 'm s-1', - 'long_name': 'Water Speed', - 'standard_name': 'sea_water_speed'}) + np.abs(self.U).astype("float32"), + attrs={ + "units": "m s-1", + "long_name": "Water Speed", + "standard_name": "sea_water_speed", + }, + ) @property - def U_dir(self,): + def U_dir( + self, + ): """ - Angle of horizontal velocity vector. Direction is 'to', - as opposed to 'from'. This function calculates angle as - "degrees CCW from X/East/streamwise" and then converts it to + Angle of horizontal velocity vector. Direction is 'to', + as opposed to 'from'. This function calculates angle as + "degrees CCW from X/East/streamwise" and then converts it to "degrees CW from X/North/streamwise". """ + def convert_to_CW(angle): - if self.ds.coord_sys == 'earth': + if self.ds.coord_sys == "earth": # Convert "deg CCW from East" to "deg CW from North" [0, 360] angle = convert_degrees(angle, tidal_mode=False) relative_to = self.ds.dir[1].values @@ -353,18 +395,23 @@ def convert_to_CW(angle): return angle, relative_to # Convert from radians to degrees - angle, rel = convert_to_CW(np.angle(self.U)*(180/np.pi)) + angle, rel = convert_to_CW(np.angle(self.U) * (180 / np.pi)) return xr.DataArray( - angle.astype('float32'), + angle.astype("float32"), dims=self.U.dims, coords=self.U.coords, - attrs={'units': 'degrees_CW_from_' + str(rel), - 'long_name': 'Water Direction', - 'standard_name': 'sea_water_to_direction'}) + attrs={ + "units": "degrees_CW_from_" + str(rel), + "long_name": "Water Direction", + "standard_name": "sea_water_to_direction", + }, + ) @property - def E_coh(self,): + def E_coh( + self, + ): """ Coherent turbulent energy @@ -376,11 +423,14 @@ def E_coh(self,): E_coh = (self.upwp_**2 + self.upvp_**2 + self.vpwp_**2) ** (0.5) return xr.DataArray( - E_coh.astype('float32'), - coords={'time': self.ds['stress_vec'].time}, - dims=['time'], - attrs={'units': self.ds['stress_vec'].units, - 'long_name': 'Coherent Turbulence Energy'}) + E_coh.astype("float32"), + coords={"time": self.ds["stress_vec"].time}, + dims=["time"], + attrs={ + "units": self.ds["stress_vec"].units, + "long_name": "Coherent Turbulence Energy", + }, + ) @property def I_tke(self, thresh=0): @@ -389,14 +439,15 @@ def I_tke(self, thresh=0): Ratio of sqrt(tke) to horizontal velocity magnitude. """ - I_tke = np.ma.masked_where(self.U_mag < thresh, - np.sqrt(2 * self.tke) / self.U_mag) + I_tke = np.ma.masked_where( + self.U_mag < thresh, np.sqrt(2 * self.tke) / self.U_mag + ) return xr.DataArray( - I_tke.data.astype('float32'), + I_tke.data.astype("float32"), coords=self.U_mag.coords, dims=self.U_mag.dims, - attrs={'units': '% [0,1]', - 'long_name': 'TKE Intensity'}) + attrs={"units": "% [0,1]", "long_name": "TKE Intensity"}, + ) @property def I(self, thresh=0): @@ -406,61 +457,73 @@ def I(self, thresh=0): Ratio of standard deviation of horizontal velocity to horizontal velocity magnitude. """ - I = np.ma.masked_where(self.U_mag < thresh, - self.ds['U_std'] / self.U_mag) + I = np.ma.masked_where(self.U_mag < thresh, self.ds["U_std"] / self.U_mag) return xr.DataArray( - I.data.astype('float32'), + I.data.astype("float32"), coords=self.U_mag.coords, dims=self.U_mag.dims, - attrs={'units': '% [0,1]', - 'long_name': 'Turbulence Intensity'}) + attrs={"units": "% [0,1]", "long_name": "Turbulence Intensity"}, + ) @property - def tke(self,): - """Turbulent kinetic energy (sum of the three components) - """ - tke = self.ds['tke_vec'].sum('tke') / 2 - tke.name = 'TKE' - tke.attrs['units'] = self.ds['tke_vec'].units - tke.attrs['long_name'] = 'TKE' - tke.attrs['standard_name'] = 'specific_turbulent_kinetic_energy_of_sea_water' + def tke( + self, + ): + """Turbulent kinetic energy (sum of the three components)""" + tke = self.ds["tke_vec"].sum("tke") / 2 + tke.name = "TKE" + tke.attrs["units"] = self.ds["tke_vec"].units + tke.attrs["long_name"] = "TKE" + tke.attrs["standard_name"] = "specific_turbulent_kinetic_energy_of_sea_water" return tke @property - def upvp_(self,): + def upvp_( + self, + ): """u'v'bar Reynolds stress""" - return self.ds['stress_vec'].sel(tau="upvp_").drop('tau') + return self.ds["stress_vec"].sel(tau="upvp_").drop("tau") @property - def upwp_(self,): + def upwp_( + self, + ): """u'w'bar Reynolds stress""" - return self.ds['stress_vec'].sel(tau="upwp_").drop('tau') + return self.ds["stress_vec"].sel(tau="upwp_").drop("tau") @property - def vpwp_(self,): + def vpwp_( + self, + ): """v'w'bar Reynolds stress""" - return self.ds['stress_vec'].sel(tau="vpwp_").drop('tau') + return self.ds["stress_vec"].sel(tau="vpwp_").drop("tau") @property - def upup_(self,): + def upup_( + self, + ): """u'u'bar component of the tke""" - return self.ds['tke_vec'].sel(tke="upup_").drop('tke') + return self.ds["tke_vec"].sel(tke="upup_").drop("tke") @property - def vpvp_(self,): + def vpvp_( + self, + ): """v'v'bar component of the tke""" - return self.ds['tke_vec'].sel(tke="vpvp_").drop('tke') + return self.ds["tke_vec"].sel(tke="vpvp_").drop("tke") @property - def wpwp_(self,): + def wpwp_( + self, + ): """w'w'bar component of the tke""" - return self.ds['tke_vec'].sel(tke="wpwp_").drop('tke') + return self.ds["tke_vec"].sel(tke="wpwp_").drop("tke") class VelBinner(TimeBinner): @@ -487,38 +550,53 @@ class VelBinner(TimeBinner): # This defines how cross-spectra and stresses are computed. _cross_pairs = [(0, 1), (0, 2), (1, 2)] - tke = xr.DataArray(["upup_", "vpvp_", "wpwp_"], - dims=['tke'], - name='tke', - attrs={'units': '1', - 'long_name': 'Turbulent Kinetic Energy Vector Components', - 'coverage_content_type': 'coordinate'}) - - tau = xr.DataArray(["upvp_", "upwp_", "vpwp_"], - dims=['tau'], - name='tau', - attrs={'units': '1', - 'long_name': 'Reynolds Stress Vector Components', - 'coverage_content_type': 'coordinate'}) - - S = xr.DataArray(['Sxx', 'Syy', 'Szz'], - dims=['S'], - name='S', - attrs={'units': '1', - 'long_name': 'Power Spectral Density Vector Components', - 'coverage_content_type': 'coordinate'}) - - C = xr.DataArray(['Cxy', 'Cxz', 'Cyz'], - dims=['C'], - name='C', - attrs={'units': '1', - 'long_name': 'Cross-Spectral Density Vector Components', - 'coverage_content_type': 'coordinate'}) - + tke = xr.DataArray( + ["upup_", "vpvp_", "wpwp_"], + dims=["tke"], + name="tke", + attrs={ + "units": "1", + "long_name": "Turbulent Kinetic Energy Vector Components", + "coverage_content_type": "coordinate", + }, + ) + + tau = xr.DataArray( + ["upvp_", "upwp_", "vpwp_"], + dims=["tau"], + name="tau", + attrs={ + "units": "1", + "long_name": "Reynolds Stress Vector Components", + "coverage_content_type": "coordinate", + }, + ) + + S = xr.DataArray( + ["Sxx", "Syy", "Szz"], + dims=["S"], + name="S", + attrs={ + "units": "1", + "long_name": "Power Spectral Density Vector Components", + "coverage_content_type": "coordinate", + }, + ) + + C = xr.DataArray( + ["Cxy", "Cxz", "Cyz"], + dims=["C"], + name="C", + attrs={ + "units": "1", + "long_name": "Cross-Spectral Density Vector Components", + "coverage_content_type": "coordinate", + }, + ) def bin_average(self, raw_ds, out_ds=None, names=None): """ - Bin the dataset and calculate the ensemble averages of each + Bin the dataset and calculate the ensemble averages of each variable. Parameters @@ -559,36 +637,42 @@ def bin_average(self, raw_ds, out_ds=None, names=None): for ky in names: # set up dimensions and coordinates for Dataset dims_list = raw_ds[ky].dims + if any([ar for ar in dims_list if "altraw" in ar]): + continue coords_dict = {} for nm in dims_list: - if 'time' in nm: + if "time" in nm: coords_dict[nm] = self.mean(raw_ds[ky][nm].values) else: coords_dict[nm] = raw_ds[ky][nm].values # create Dataset - if 'ensemble' not in ky: + if "ensemble" not in ky: try: # variables with time coordinate - out_ds[ky] = xr.DataArray(self.mean(raw_ds[ky].values), - coords=coords_dict, - dims=dims_list, - attrs=raw_ds[ky].attrs - ).astype('float32') + out_ds[ky] = xr.DataArray( + self.mean(raw_ds[ky].values), + coords=coords_dict, + dims=dims_list, + attrs=raw_ds[ky].attrs, + ).astype("float32") except: # variables not needing averaging pass # Add standard deviation std = self.standard_deviation(raw_ds.velds.U_mag.values) - out_ds['U_std'] = xr.DataArray( - std.astype('float32'), + out_ds["U_std"] = xr.DataArray( + std.astype("float32"), dims=raw_ds.vel.dims[1:], - attrs={'units': 'm s-1', - 'long_name': 'Water Velocity Standard Deviation'}) + attrs={ + "units": "m s-1", + "long_name": "Water Velocity Standard Deviation", + }, + ) return out_ds - def bin_variance(self, raw_ds, out_ds=None, names=None, suffix='_var'): + def bin_variance(self, raw_ds, out_ds=None, names=None, suffix="_var"): """ - Bin the dataset and calculate the ensemble variances of each + Bin the dataset and calculate the ensemble variances of each variable. Complementary to `bin_average()`. Parameters @@ -630,21 +714,24 @@ def bin_variance(self, raw_ds, out_ds=None, names=None, suffix='_var'): for ky in names: # set up dimensions and coordinates for dataarray dims_list = raw_ds[ky].dims + if any([ar for ar in dims_list if "altraw" in ar]): + continue coords_dict = {} for nm in dims_list: - if 'time' in nm: + if "time" in nm: coords_dict[nm] = self.mean(raw_ds[ky][nm].values) else: coords_dict[nm] = raw_ds[ky][nm].values # create Dataset - if 'ensemble' not in ky: + if "ensemble" not in ky: try: # variables with time coordinate - out_ds[ky+suffix] = xr.DataArray(self.variance(raw_ds[ky].values), - coords=coords_dict, - dims=dims_list, - attrs=raw_ds[ky].attrs - ).astype('float32') + out_ds[ky + suffix] = xr.DataArray( + self.variance(raw_ds[ky].values), + coords=coords_dict, + dims=dims_list, + attrs=raw_ds[ky].attrs, + ).astype("float32") except: # variables not needing averaging pass @@ -680,17 +767,18 @@ def autocovariance(self, veldat, n_bin=None): indat = veldat.values n_bin = self._parse_nbin(n_bin) - out = np.empty(self._outshape(indat.shape, n_bin=n_bin)[:-1] + - [int(n_bin // 4)], dtype=indat.dtype) + out = np.empty( + self._outshape(indat.shape, n_bin=n_bin)[:-1] + [int(n_bin // 4)], + dtype=indat.dtype, + ) dt1 = self.reshape(indat, n_pad=n_bin / 2 - 2) # Here we de-mean only on the 'valid' range: - dt1 = dt1 - dt1[..., :, int(n_bin // 4): - int(-n_bin // 4)].mean(-1)[..., None] + dt1 = dt1 - dt1[..., :, int(n_bin // 4) : int(-n_bin // 4)].mean(-1)[..., None] dt2 = self.demean(indat) se = slice(int(n_bin // 4) - 1, None, 1) sb = slice(int(n_bin // 4) - 1, None, -1) for slc in slice1d_along_axis(dt1.shape, -1): - tmp = np.correlate(dt1[slc], dt2[slc], 'valid') + tmp = np.correlate(dt1[slc], dt2[slc], "valid") # The zero-padding in reshape means we compute coherence # from one-sided time-series for first and last points. if slc[-2] == 0: @@ -703,100 +791,168 @@ def autocovariance(self, veldat, n_bin=None): dims_list, coords_dict = self._new_coords(veldat) # tack on new coordinate - dims_list.append('lag') - coords_dict['lag'] = np.arange(n_bin//4) + dims_list.append("lag") + coords_dict["lag"] = np.arange(n_bin // 4) - da = xr.DataArray(out.astype('float32'), - coords=coords_dict, - dims=dims_list,) - da['lag'].attrs['units'] = 'timestep' + da = xr.DataArray( + out.astype("float32"), + coords=coords_dict, + dims=dims_list, + ) + da["lag"].attrs["units"] = "timestep" return da + def turbulence_intensity(self, U_mag, noise=0, thresh=0, detrend=False): + """ + Calculate noise-corrected turbulence intensity. + + Parameters + ---------- + U_mag : xarray.DataArray + Raw horizontal velocity magnitude + noise : numeric + Instrument noise level in same units as velocity. Typically + found from `.turbulence.doppler_noise_level`. + Default: None. + thresh : numeric + Theshold below which TI will not be calculated + detrend : bool (default: False) + Detrend the velocity data (True), or simply de-mean it + (False), prior to computing TI. + """ + + if "xarray" in type(U_mag).__module__: + U = U_mag.values + if "xarray" in type(noise).__module__: + noise = noise.values + + if detrend: + up = self.detrend(U) + else: + up = self.demean(U) + + # Take RMS and subtract noise + u_rms = np.sqrt(np.nanmean(up**2, axis=-1) - noise**2) + u_mag = self.mean(U) + + ti = np.ma.masked_where(u_mag < thresh, u_rms / u_mag) + + dims = U_mag.dims + coords = {} + for nm in U_mag.dims: + if "time" in nm: + coords[nm] = self.mean(U_mag[nm].values) + else: + coords[nm] = U_mag[nm].values + + return xr.DataArray( + ti.data.astype("float32"), + coords=coords, + dims=dims, + attrs={ + "units": "% [0,1]", + "long_name": "Turbulence Intensity", + "comment": f"TI was corrected from a noise level of {noise} m/s", + }, + ) + def turbulent_kinetic_energy(self, veldat, noise=None, detrend=True): """ - Calculate the turbulent kinetic energy (TKE) (variances + Calculate the turbulent kinetic energy (TKE) (variances of u,v,w). Parameters ---------- veldat : xarray.DataArray - Velocity data array from ADV or single beam from ADCP. + Velocity data array from ADV or single beam from ADCP. The last dimension is assumed to be time. noise : float or array-like - A vector of the noise levels of the velocity data with - the same first dimension as the velocity vector. + Instrument noise level in same units as velocity. Typically + found from `.turbulence.doppler_noise_level`. + Default: None. detrend : bool (default: False) Detrend the velocity data (True), or simply de-mean it - (False), prior to computing tke. Note: the psd routines + (False), prior to computing TKE. Note: the PSD routines use detrend, so if you want to have the same amount of variance here as there use ``detrend=True``. - + Returns ------- tke_vec : xarray.DataArray dataArray containing u'u'_, v'v'_ and w'w'_ """ - if 'xarray' in type(veldat).__module__: + if "xarray" in type(veldat).__module__: vel = veldat.values - if 'xarray' in type(noise).__module__: + if "xarray" in type(noise).__module__: noise = noise.values if len(np.shape(vel)) > 2: - raise ValueError("This function is only valid for calculating TKE using " - "velocity from an ADV or a single ADCP beam.") + raise ValueError( + "This function is only valid for calculating TKE using " + "velocity from an ADV or a single ADCP beam." + ) # Calc TKE if detrend: - out = np.nanmean(self.detrend(vel)**2, axis=-1) + out = np.nanmean(self.detrend(vel) ** 2, axis=-1) else: - out = np.nanmean(self.demean(vel)**2, axis=-1) + out = np.nanmean(self.demean(vel) ** 2, axis=-1) - if 'dir' in veldat.dims: + if "dir" in veldat.dims: # Subtract noise if noise is not None: if np.shape(noise)[0] != 3: raise Exception( - 'Noise should have same first dimension as velocity') + "Noise should have same first dimension as velocity" + ) out[0] -= noise[0] ** 2 out[1] -= noise[1] ** 2 out[2] -= noise[2] ** 2 # Set coords - dims = ['tke', 'time'] - coords = {'tke': self.tke, - 'time': self.mean(veldat.time.values)} + dims = ["tke", "time"] + coords = {"tke": self.tke, "time": self.mean(veldat.time.values)} else: # Subtract noise if noise is not None: if np.shape(noise) > np.shape(vel): raise Exception( - 'Noise should have same or fewer dimensions as velocity') - out -= noise ** 2 + "Noise should have same or fewer dimensions as velocity" + ) + out -= noise**2 # Set coords dims = veldat.dims coords = {} for nm in veldat.dims: - if 'time' in nm: + if "time" in nm: coords[nm] = self.mean(veldat[nm].values) else: coords[nm] = veldat[nm].values return xr.DataArray( - out.astype('float32'), + out.astype("float32"), dims=dims, coords=coords, - attrs={'units': 'm2 s-2', - 'long_name': 'TKE Vector', - 'standard_name': 'specific_turbulent_kinetic_energy_of_sea_water'}) - - def power_spectral_density(self, veldat, - freq_units='rad/s', - fs=None, - window='hann', - noise=None, - n_bin=None, n_fft=None, n_pad=None, - step=None): + attrs={ + "units": "m2 s-2", + "long_name": "TKE Vector", + "standard_name": "specific_turbulent_kinetic_energy_of_sea_water", + }, + ) + + def power_spectral_density( + self, + veldat, + freq_units="rad/s", + fs=None, + window="hann", + noise=0, + n_bin=None, + n_fft=None, + n_pad=None, + step=None, + ): """ Calculate the power spectral density of velocity. @@ -805,17 +961,16 @@ def power_spectral_density(self, veldat, veldat : xr.DataArray The raw velocity data (of dims 'dir' and 'time'). freq_units : string - Frequency units of the returned spectra in either Hz or rad/s + Frequency units of the returned spectra in either Hz or rad/s (`f` or :math:`\\omega`) fs : float (optional) The sample rate. Default is `binner.fs` window : string or array Specify the window function. Options: 1, None, 'hann', 'hamm' - noise : float or array-like - A vector of the noise levels of the velocity data with - the same first dimension as the velocity vector. - Default = 0. + noise : numeric or array + Instrument noise level in same units as velocity. + Default: 0 (ADCP) or [0, 0, 0] (ADV). n_bin : int (optional) The bin-size. Default: from the binner. n_fft : int (optional) @@ -835,76 +990,93 @@ def power_spectral_density(self, veldat, fs_in = self._parse_fs(fs) n_fft = self._parse_nfft(n_fft) - if 'xarray' in type(veldat).__module__: + if "xarray" in type(veldat).__module__: vel = veldat.values - if 'xarray' in type(noise).__module__: - noise = noise.values - if ('rad' not in freq_units) and ('Hz' not in freq_units): + if ("rad" not in freq_units) and ("Hz" not in freq_units): raise ValueError("`freq_units` should be one of 'Hz' or 'rad/s'") - + # Create frequency vector, also checks whether using f or omega - if 'rad' in freq_units: - fs = 2*np.pi*fs_in - freq_units = 'rad s-1' - units = 'm2 s-1 rad-1' + if "rad" in freq_units: + fs = 2 * np.pi * fs_in + freq_units = "rad s-1" + units = "m2 s-1 rad-1" else: fs = fs_in - freq_units = 'Hz' - units = 'm2 s-2 Hz-1' - freq = xr.DataArray(self._fft_freq(fs=fs_in, units=freq_units, n_fft=n_fft), - dims=['freq'], - name='freq', - attrs={'units': freq_units, - 'long_name': 'FFT Frequency Vector', - 'coverage_content_type': 'coordinate'} - ).astype('float32') + freq_units = "Hz" + units = "m2 s-2 Hz-1" + freq = xr.DataArray( + self._fft_freq(fs=fs_in, units=freq_units, n_fft=n_fft), + dims=["freq"], + name="freq", + attrs={ + "units": freq_units, + "long_name": "FFT Frequency Vector", + "coverage_content_type": "coordinate", + }, + ).astype("float32") # Spectra, if input is full velocity or a single array - if len(vel.shape) == 2: - assert vel.shape[0] == 3, "Function can only handle 1D or 3D arrays." \ - " If ADCP data, please select a specific depth bin." - if (noise is not None) and (np.shape(noise)[0] != 3): - raise Exception( - 'Noise should have same first dimension as velocity') + if len(vel.shape) >= 2: + if vel.shape[0] != 3: + raise ValueError( + "Function can only handle 1D or 3D arrays." + " If ADCP data, please select a specific depth bin." + ) + if np.array(noise).any(): + if np.size(noise) != 3: + raise ValueError("Noise is expected to be an array of 3 scalars") else: + # Reset default to list of 3 zeros noise = np.array([0, 0, 0]) - out = np.empty(self._outshape_fft(vel[:3].shape, n_fft=n_fft, n_bin=n_bin), - dtype=np.float32) + + out = np.empty( + self._outshape_fft(vel[:3].shape, n_fft=n_fft, n_bin=n_bin), + dtype=np.float32, + ) for idx in range(3): - out[idx] = self._psd_base(vel[idx], - fs=fs, - noise=noise[idx], - window=window, - n_bin=n_bin, - n_pad=n_pad, - n_fft=n_fft, - step=step) - coords = {'S': self.S, - 'time': self.mean(veldat['time'].values), - 'freq': freq} - dims = ['S', 'time', 'freq'] + out[idx] = self._psd_base( + vel[idx], + fs=fs, + noise=noise[idx], + window=window, + n_bin=n_bin, + n_pad=n_pad, + n_fft=n_fft, + step=step, + ) + coords = { + "S": self.S, + "time": self.mean(veldat["time"].values), + "freq": freq, + } + dims = ["S", "time", "freq"] else: - if (noise is not None) and (len(np.shape(noise)) > 1): - raise Exception( - 'Noise should have same first dimension as velocity') - else: - noise = np.array(0) - out = self._psd_base(vel, - fs=fs, - noise=noise, - window=window, - n_bin=n_bin, - n_pad=n_pad, - n_fft=n_fft, - step=step) - coords = {veldat.dims[-1]: self.mean(veldat[veldat.dims[-1]].values), - 'freq': freq} - dims = [veldat.dims[-1], 'freq'] + if np.array(noise).any() and np.size(noise) > 1: + raise ValueError("Noise is expected to be a scalar") + + out = self._psd_base( + vel, + fs=fs, + noise=noise, + window=window, + n_bin=n_bin, + n_pad=n_pad, + n_fft=n_fft, + step=step, + ) + coords = { + veldat.dims[-1]: self.mean(veldat[veldat.dims[-1]].values), + "freq": freq, + } + dims = [veldat.dims[-1], "freq"] return xr.DataArray( - out.astype('float32'), + out.astype("float32"), coords=coords, dims=dims, - attrs={'units': units, - 'n_fft': n_fft, - 'long_name': 'Power Spectral Density'}) + attrs={ + "units": units, + "n_fft": n_fft, + "long_name": "Power Spectral Density", + }, + ) diff --git a/mhkit/loads/__init__.py b/mhkit/loads/__init__.py index cd0ea3c22..4c21c7391 100644 --- a/mhkit/loads/__init__.py +++ b/mhkit/loads/__init__.py @@ -1,3 +1,12 @@ +""" +The `loads` package of the MHKiT (Marine and Hydrokinetic Toolkit) library +provides tools and functionalities for analyzing and visualizing loads data +from marine and hydrokinetic (MHK) devices. This package is designed to +assist engineers, researchers, and analysts in understanding the forces and +stresses applied to MHK devices under various operational and environmental +conditions. +""" + from mhkit.loads import general from mhkit.loads import graphics -from mhkit.loads import extreme \ No newline at end of file +from mhkit.loads import extreme diff --git a/mhkit/loads/extreme.py b/mhkit/loads/extreme.py deleted file mode 100644 index b282c0826..000000000 --- a/mhkit/loads/extreme.py +++ /dev/null @@ -1,757 +0,0 @@ -import numpy as np -import pandas as pd -from scipy import stats -from scipy import optimize -from mhkit.wave.resource import frequency_moment - - -def global_peaks(t, data): - """ - Find the global peaks of a zero-centered response time-series. - - The global peaks are the maxima between consecutive zero - up-crossings. - - Parameters - ---------- - t: np.array - Time array. - data: np.array - Response time-series. - - Returns - ------- - t_peaks: np.array - Time array for peaks - peaks: np.array - Peak values of the response time-series - """ - assert isinstance(t, np.ndarray), 't must be of type np.ndarray' - assert isinstance(data, np.ndarray), 'data must be of type np.ndarray' - - # eliminate zeros - zeroMask = (data == 0) - data[zeroMask] = 0.5 * np.min(np.abs(data)) - # zero up-crossings - diff = np.diff(np.sign(data)) - zeroUpCrossings_mask = (diff == 2) | (diff == 1) - zeroUpCrossings_index = np.where(zeroUpCrossings_mask)[0] - zeroUpCrossings_index = np.append(zeroUpCrossings_index, len(data) - 1) - # global peaks - npeaks = len(zeroUpCrossings_index) - peaks = np.array([]) - t_peaks = np.array([]) - for i in range(npeaks - 1): - peak_index = np.argmax( - data[zeroUpCrossings_index[i]:zeroUpCrossings_index[i + 1]]) - t_peaks = np.append(t_peaks, t[zeroUpCrossings_index[i] + peak_index]) - peaks = np.append(peaks, data[zeroUpCrossings_index[i] + peak_index]) - return t_peaks, peaks - - -def number_of_short_term_peaks(n, t, t_st): - """ - Estimate the number of peaks in a specified period. - - Parameters - ---------- - n : int - Number of peaks in analyzed timeseries. - t : float - Length of time of analyzed timeseries. - t_st: float - Short-term period for which to estimate the number of peaks. - - Returns - ------- - n_st : float - Number of peaks in short term period. - """ - assert isinstance(n, int), 'n must be of type int' - assert isinstance(t, float), 't must be of type float' - assert isinstance(t_st, float), 't_st must be of type float' - - return n * t_st / t - - -def peaks_distribution_weibull(x): - """ - Estimate the peaks distribution by fitting a Weibull - distribution to the peaks of the response. - - The fitted parameters can be accessed through the `params` field of - the returned distribution. - - Parameters - ---------- - x : np.array - Global peaks. - - Returns - ------- - peaks: scipy.stats.rv_frozen - Probability distribution of the peaks. - """ - assert isinstance(x, np.ndarray), 'x must be of type np.ndarray' - - # peaks distribution - peaks_params = stats.exponweib.fit(x, f0=1, floc=0) - param_names = ['a', 'c', 'loc', 'scale'] - peaks_params = {k: v for k, v in zip(param_names, peaks_params)} - peaks = stats.exponweib(**peaks_params) - # save the parameter info - peaks.params = peaks_params - return peaks - - -def peaks_distribution_weibull_tail_fit(x): - """ - Estimate the peaks distribution using the Weibull tail fit - method. - - The fitted parameters can be accessed through the `params` field of - the returned distribution. - - Parameters - ---------- - x : np.array - Global peaks. - - Returns - ------- - peaks: scipy.stats.rv_frozen - Probability distribution of the peaks. - """ - assert isinstance(x, np.ndarray), 'x must be of type np.ndarray' - - # Initial guess for Weibull parameters - p0 = stats.exponweib.fit(x, f0=1, floc=0) - p0 = np.array([p0[1], p0[3]]) - # Approximate CDF - x = np.sort(x) - npeaks = len(x) - F = np.zeros(npeaks) - for i in range(npeaks): - F[i] = i / (npeaks + 1.0) - # Divide into seven sets & fit Weibull - subset_shape_params = np.zeros(7) - subset_scale_params = np.zeros(7) - setLim = np.arange(0.60, 0.90, 0.05) - func = lambda x, c, s: stats.exponweib(a=1, c=c, loc=0, scale=s).cdf(x) - for set in range(7): - xset = x[(F > setLim[set])] - Fset = F[(F > setLim[set])] - popt, _ = optimize.curve_fit(func, xset, Fset, p0=p0) - subset_shape_params[set] = popt[0] - subset_scale_params[set] = popt[1] - # peaks distribution - peaks_params = [1, np.mean(subset_shape_params), 0, - np.mean(subset_scale_params)] - param_names = ['a', 'c', 'loc', 'scale'] - peaks_params = {k: v for k, v in zip(param_names, peaks_params)} - peaks = stats.exponweib(**peaks_params) - # save the parameter info - peaks.params = peaks_params - peaks.subset_shape_params = subset_shape_params - peaks.subset_scale_params = subset_scale_params - return peaks - - -def peaks_distribution_peaks_over_threshold(x, threshold=None): - """ - Estimate the peaks distribution using the peaks over threshold - method. - - This fits a generalized Pareto distribution to all the peaks above - the specified threshold. The distribution is only defined for values - above the threshold and therefore cannot be used to obtain integral - metrics such as the expected value. A typical choice of threshold is - 1.4 standard deviations above the mean. The peaks over threshold - distribution can be accessed through the `pot` field of the returned - peaks distribution. - - Parameters - ---------- - x : np.array - Global peaks. - threshold : float - Threshold value. Only peaks above this value will be used. - Default value calculated as: `np.mean(x) + 1.4 * np.std(x)` - - Returns - ------- - peaks: scipy.stats.rv_frozen - Probability distribution of the peaks. - """ - assert isinstance(x, np.ndarray), 'x must be of type np.ndarray' - if threshold is None: - threshold = np.mean(x) + 1.4 * np.std(x) - assert isinstance(threshold, float - ), 'threshold must be of type float' - - # peaks over threshold - x = np.sort(x) - pot = x[(x > threshold)] - threshold - npeaks = len(x) - npot = len(pot) - # Fit a generalized Pareto - pot_params = stats.genpareto.fit(pot, floc=0.) - param_names = ['c', 'loc', 'scale'] - pot_params = {k: v for k, v in zip(param_names, pot_params)} - pot = stats.genpareto(**pot_params) - # save the parameter info - pot.params = pot_params - - # peaks - class _Peaks(stats.rv_continuous): - - def __init__(self, *args, **kwargs): - self.pot = kwargs.pop('pot_distribution') - self.threshold = kwargs.pop('threshold') - super().__init__(*args, **kwargs) - - def _cdf(self, x): - x = np.atleast_1d(np.array(x)) - out = np.zeros(x.shape) - out[x < self.threshold] = np.NaN - xt = x[x >= self.threshold] - if xt.size != 0: - pot_ccdf = 1. - self.pot.cdf(xt-self.threshold) - prop_pot = npot/npeaks - out[x >= self.threshold] = 1. - (prop_pot * pot_ccdf) - return out - - peaks = _Peaks(name="peaks", pot_distribution=pot, threshold=threshold) - # save the peaks over threshold distribution - peaks.pot = pot - return peaks - - -def ste_peaks(peaks_distribution, npeaks): - """ - Estimate the short-term extreme distribution from the peaks - distribution. - - Parameters - ---------- - peaks_distribution: scipy.stats.rv_frozen - Probability distribution of the peaks. - npeaks : float - Number of peaks in short term period. - - Returns - ------- - ste: scipy.stats.rv_frozen - Short-term extreme distribution. - """ - assert callable(peaks_distribution.cdf - ), 'peaks_distribution must be a scipy.stat distribution.' - assert isinstance(npeaks, float), 'npeaks must be of type float' - - class _ShortTermExtreme(stats.rv_continuous): - - def __init__(self, *args, **kwargs): - self.peaks = kwargs.pop('peaks_distribution') - self.npeaks = kwargs.pop('npeaks') - super().__init__(*args, **kwargs) - - def _cdf(self, x): - peaks_cdf = np.array(self.peaks.cdf(x)) - peaks_cdf[np.isnan(peaks_cdf)] = 0.0 - if len(peaks_cdf) == 1: - peaks_cdf = peaks_cdf[0] - return peaks_cdf ** self.npeaks - - ste = _ShortTermExtreme(name="short_term_extreme", - peaks_distribution=peaks_distribution, - npeaks=npeaks) - return ste - - -def block_maxima(t, x, t_st): - """ - Find the block maxima of a time-series. - - The timeseries (t,x) is divided into blocks of length t_st, and the - maxima of each bloock is returned. - - Parameters - ---------- - t : np.array - Time array. - x : np.array - global peaks timeseries. - t_st : float - Short-term period. - - Returns - ------- - block_maxima: np.array - Block maxima (i.e. largest peak in each block). - """ - assert isinstance(t, np.ndarray), 't must be of type np.ndarray' - assert isinstance(x, np.ndarray), 'x must be of type np.ndarray' - assert isinstance(t_st, float), 't_st must be of type float' - - nblock = int(t[-1] / t_st) - block_maxima = np.zeros(int(nblock)) - for iblock in range(nblock): - ix = x[(t >= iblock * t_st) & (t < (iblock+1)*t_st)] - block_maxima[iblock] = np.max(ix) - return block_maxima - - -def ste_block_maxima_gev(block_maxima): - """ - Approximate the short-term extreme distribution using the block - maxima method and the Generalized Extreme Value distribution. - - Parameters - ---------- - block_maxima: np.array - Block maxima (i.e. largest peak in each block). - - Returns - ------- - ste: scipy.stats.rv_frozen - Short-term extreme distribution. - """ - assert isinstance( - block_maxima, np.ndarray), 'block_maxima must be of type np.ndarray' - - ste_params = stats.genextreme.fit(block_maxima) - param_names = ['c', 'loc', 'scale'] - ste_params = {k: v for k, v in zip(param_names, ste_params)} - ste = stats.genextreme(**ste_params) - ste.params = ste_params - return ste - - -def ste_block_maxima_gumbel(block_maxima): - """ - Approximate the short-term extreme distribution using the block - maxima method and the Gumbel (right) distribution. - - Parameters - ---------- - block_maxima: np.array - Block maxima (i.e. largest peak in each block). - - Returns - ------- - ste: scipy.stats.rv_frozen - Short-term extreme distribution. - """ - assert isinstance( - block_maxima, np.ndarray), 'block_maxima must be of type np.ndarray' - - ste_params = stats.gumbel_r.fit(block_maxima) - param_names = ['loc', 'scale'] - ste_params = {k: v for k, v in zip(param_names, ste_params)} - ste = stats.gumbel_r(**ste_params) - ste.params = ste_params - return ste - - -def ste(t, data, t_st, method): - """ - Alias for `short_term_extreme`. - """ - ste = short_term_extreme(t, data, t_st, method) - return ste - - -def short_term_extreme(t, data, t_st, method): - """ - Approximate the short-term extreme distribution from a - timeseries of the response using chosen method. - - The availabe methods are: 'peaks_weibull', 'peaks_weibull_tail_fit', - 'peaks_over_threshold', 'block_maxima_gev', and 'block_maxima_gumbel'. - For the block maxima methods the timeseries needs to be many times - longer than the short-term period. For the peak-fitting methods the - timeseries can be of arbitrary length. - - Parameters - ---------- - t: np.array - Time array. - data: np.array - Response timeseries. - t_st: float - Short-term period. - method : string - Method for estimating the short-term extreme distribution. - - Returns - ------- - ste: scipy.stats.rv_frozen - Short-term extreme distribution. - """ - assert isinstance(t, np.ndarray), 't must be of type np.ndarray' - assert isinstance(data, np.ndarray), 'x must be of type np.ndarray' - assert isinstance(t_st, float), 't_st must be of type float' - assert isinstance(method, str), 'method must be of type string' - - peaks_methods = { - 'peaks_weibull': peaks_distribution_weibull, - 'peaks_weibull_tail_fit': peaks_distribution_weibull_tail_fit, - 'peaks_over_threshold': peaks_distribution_peaks_over_threshold} - blockmaxima_methods = { - 'block_maxima_gev': ste_block_maxima_gev, - 'block_maxima_gumbel': ste_block_maxima_gumbel, - } - - if method in peaks_methods.keys(): - fit_peaks = peaks_methods[method] - _, peaks = global_peaks(t, data) - npeaks = len(peaks) - time = t[-1]-t[0] - nst = number_of_short_term_peaks(npeaks, time, t_st) - peaks_dist = fit_peaks(peaks) - ste = ste_peaks(peaks_dist, nst) - elif method in blockmaxima_methods.keys(): - fit_maxima = blockmaxima_methods[method] - maxima = block_maxima(t, data, t_st) - ste = fit_maxima(maxima) - else: - print("Passed `method` not found.") - return ste - - -def full_seastate_long_term_extreme(ste, weights): - """ - Return the long-term extreme distribution of a response of - interest using the full sea state approach. - - Parameters - ---------- - ste: list[scipy.stats.rv_frozen] - Short-term extreme distribution of the quantity of interest for - each sample sea state. - weights: list[floats] - The weights from the full sea state sampling - - Returns - ------- - ste: scipy.stats.rv_frozen - Short-term extreme distribution. - """ - assert isinstance( - ste, list), 'ste must be of type list[scipy.stats.rv_frozen]' - assert isinstance(weights, (list, np.ndarray) - ), 'weights must be of type list[floats]' - - class _LongTermExtreme(stats.rv_continuous): - - def __init__(self, *args, **kwargs): - weights = kwargs.pop('weights') - # make sure weights add to 1.0 - self.weights = weights / np.sum(weights) - self.ste = kwargs.pop('ste') - self.n = len(self.weights) - super().__init__(*args, **kwargs) - - def _cdf(self, x): - f = 0.0 - for w_i, ste_i in zip(self.weights, self.ste): - f += w_i * ste_i.cdf(x) - return f - - return _LongTermExtreme(name="long_term_extreme", weights=weights, ste=ste) - - -def mler_coefficients(rao, wave_spectrum, response_desired): - """ - Calculate MLER (most likely extreme response) coefficients from a - sea state spectrum and a response RAO. - - Parameters - ---------- - rao: numpy ndarray - Response amplitude operator. - wave_spectrum: pd.DataFrame - Wave spectral density [m^2/Hz] indexed by frequency [Hz]. - response_desired: int or float - Desired response, units should correspond to a motion RAO or - units of force for a force RAO. - - Returns - ------- - mler: pd.DataFrame - DataFrame containing conditioned wave spectral amplitude - coefficient [m^2-s], and Phase [rad] indexed by freq [Hz]. - """ - try: - rao = np.array(rao) - except: - pass - assert isinstance(rao, np.ndarray), 'rao must be of type np.ndarray' - assert isinstance(wave_spectrum, pd.DataFrame - ), 'wave_spectrum must be of type pd.DataFrame' - assert isinstance(response_desired, (int, float) - ), 'response_desired must be of type int or float' - - freq_hz = wave_spectrum.index.values - # convert from Hz to rad/s - freq = freq_hz * (2*np.pi) - # change from Hz to rad/s - wave_spectrum = wave_spectrum.iloc[:, 0].values / (2*np.pi) - # get delta - dw = (2*np.pi - 0.) / (len(freq)-1) - - spectrum_r = np.zeros(len(freq)) # [(response units)^2-s/rad] - _s = np.zeros(len(freq)) # [m^2-s/rad] - _a = np.zeros(len(freq)) # [m^2-s/rad] - _coeff_a_rn = np.zeros(len(freq)) # [1/(response units)] - _phase = np.zeros(len(freq)) - - # Note: waves.A is "S" in Quon2016; 'waves' naming convention - # matches WEC-Sim conventions (EWQ) - # Response spectrum [(response units)^2-s/rad] -- Quon2016 Eqn. 3 - spectrum_r[:] = np.abs(rao)**2 * (2*wave_spectrum) - - # calculate spectral moments and other important spectral values. - m0 = (frequency_moment(pd.Series(spectrum_r, index=freq), 0)).iloc[0, 0] - m1 = (frequency_moment(pd.Series(spectrum_r, index=freq), 1)).iloc[0, 0] - m2 = (frequency_moment(pd.Series(spectrum_r, index=freq), 2)).iloc[0, 0] - wBar = m1 / m0 - - # calculate coefficient A_{R,n} [(response units)^-1] -- Quon2016 Eqn. 8 - # Drummen version. Dietz has negative of this. - _coeff_a_rn[:] = np.abs(rao) * np.sqrt(2*wave_spectrum*dw) * \ - ((m2 - freq*m1) + wBar*(freq*m0 - m1)) / (m0*m2 - m1**2) - - # save the new spectral info to pass out - # Phase delay should be a positive number in this convention (AP) - _phase[:] = -np.unwrap(np.angle(rao)) - - # for negative values of Amp, shift phase by pi and flip sign - # for negative amplitudes, add a pi phase shift, then flip sign on - # negative Amplitudes - _phase[_coeff_a_rn < 0] -= np.pi - _coeff_a_rn[_coeff_a_rn < 0] *= -1 - - # calculate the conditioned spectrum [m^2-s/rad] - _s[:] = wave_spectrum * _coeff_a_rn[:]**2 * response_desired**2 - _a[:] = 2*wave_spectrum * _coeff_a_rn[:]**2 * \ - response_desired**2 - - # if the response amplitude we ask for is negative, we will add - # a pi phase shift to the phase information. This is because - # the sign of self.desiredRespAmp is lost in the squaring above. - # Ordinarily this would be put into the final equation, but we - # are shaping the wave information so that it is buried in the - # new spectral information, S. (AP) - if response_desired < 0: - _phase += np.pi - - mler = pd.DataFrame( - data={'WaveSpectrum': _s, 'Phase': _phase}, index=freq_hz) - mler = mler.fillna(0) - return mler - - -def mler_simulation(parameters=None): - """ - Define the simulation parameters that are used in various MLER - functionalities. - - See `extreme_response_contour_example.ipynb` example for how this is - useful. If no input is given, then default values are returned. - - Parameters - ---------- - parameters: dict (optional) - Simulation parameters. - Keys: - ----- - 'startTime': starting time [s] - 'endTime': ending time [s] - 'dT': time-step size [s] - 'T0': time of maximum event [s] - 'startx': start of simulation space [m] - 'endX': end of simulation space [m] - 'dX': horizontal spacing [m] - 'X': position of maximum event [m] - - Returns - ------- - sim: dict - Simulation parameters including spatial and time calculated - arrays. - """ - if not parameters == None: - assert isinstance(parameters, dict), 'parameters must be of type dict' - - sim = {} - - if parameters == None: - sim['startTime'] = -150.0 # [s] Starting time - sim['endTime'] = 150.0 # [s] Ending time - sim['dT'] = 1.0 # [s] Time-step size - sim['T0'] = 0.0 # [s] Time of maximum event - - sim['startX'] = -300.0 # [m] Start of simulation space - sim['endX'] = 300.0 # [m] End of simulation space - sim['dX'] = 1.0 # [m] Horiontal spacing - sim['X0'] = 0.0 # [m] Position of maximum event - else: - sim = parameters - - # maximum timestep index - sim['maxIT'] = int( - np.ceil((sim['endTime'] - sim['startTime'])/sim['dT'] + 1)) - sim['T'] = np.linspace(sim['startTime'], sim['endTime'], sim['maxIT']) - - sim['maxIX'] = int(np.ceil((sim['endX'] - sim['startX'])/sim['dX'] + 1)) - sim['X'] = np.linspace(sim['startX'], sim['endX'], sim['maxIX']) - - return sim - - -def mler_wave_amp_normalize(wave_amp, mler, sim, k): - """ - Function that renormalizes the incoming amplitude of the MLER wave - to the desired peak height (peak to MSL). - - Parameters - ---------- - wave_amp: float - Desired wave amplitude (peak to MSL). - mler: pd.DataFrame - MLER coefficients generated by 'mler_coefficients' function. - sim: dict - Simulation parameters formatted by output from - 'mler_simulation'. - k: numpy ndarray - Wave number. - - Returns - ------- - mler_norm : pd.DataFrame - MLER coefficients - """ - try: - k = np.array(k) - except: - pass - assert isinstance(mler, pd.DataFrame), 'mler must be of type pd.DataFrame' - assert isinstance(wave_amp, (int, float) - ), 'wave_amp must be of type int or float' - assert isinstance(sim, dict), 'sim must be of type dict' - assert isinstance(k, np.ndarray), 'k must be of type ndarray' - - freq = mler.index.values * 2*np.pi - dw = (max(freq) - min(freq)) / (len(freq)-1) # get delta - - wave_amp_time = np.zeros((sim['maxIX'], sim['maxIT'])) - for ix, x in enumerate(sim['X']): - for it, t in enumerate(sim['T']): - # conditioned wave - wave_amp_time[ix, it] = np.sum( - np.sqrt(2*mler['WaveSpectrum']*dw) * - np.cos(freq*(t-sim['T0']) - k*(x-sim['X0']) + mler['Phase']) - ) - - tmp_max_amp = np.max(np.abs(wave_amp_time)) - - # renormalization of wave amplitudes - rescale_fact = np.abs(wave_amp) / np.abs(tmp_max_amp) - # rescale the wave spectral amplitude coefficients - spectrum = mler['WaveSpectrum'] * rescale_fact**2 - - mler_norm = pd.DataFrame(index=mler.index) - mler_norm['WaveSpectrum'] = spectrum - mler_norm['Phase'] = mler['Phase'] - - return mler_norm - - -def mler_export_time_series(rao, mler, sim, k): - """ - Generate the wave amplitude time series at X0 from the calculated - MLER coefficients - - Parameters - ---------- - rao: numpy ndarray - Response amplitude operator. - mler: pd.DataFrame - MLER coefficients dataframe generated from an MLER function. - sim: dict - Simulation parameters formatted by output from - 'mler_simulation'. - k: numpy ndarray - Wave number. - - Returns - ------- - mler_ts: pd.DataFrame - Time series of wave height [m] and linear response [*] indexed - by time [s]. - - """ - try: - rao = np.array(rao) - except: - pass - try: - k = np.array(k) - except: - pass - assert isinstance(rao, np.ndarray), 'rao must be of type ndarray' - assert isinstance(mler, pd.DataFrame), 'mler must be of type pd.DataFrame' - assert isinstance(sim, dict), 'sim must be of type dict' - assert isinstance(k, np.ndarray), 'k must be of type ndarray' - - freq = mler.index.values * 2*np.pi # convert Hz to rad/s - dw = (max(freq) - min(freq)) / (len(freq)-1) # get delta - - # calculate the series - wave_amp_time = np.zeros((sim['maxIT'], 2)) - xi = sim['X0'] - for i, ti in enumerate(sim['T']): - # conditioned wave - wave_amp_time[i, 0] = np.sum( - np.sqrt(2*mler['WaveSpectrum']*dw) * - np.cos(freq*(ti-sim['T0']) + mler['Phase'] - k*(xi-sim['X0'])) - ) - # Response calculation - wave_amp_time[i, 1] = np.sum( - np.sqrt(2*mler['WaveSpectrum']*dw) * np.abs(rao) * - np.cos(freq*(ti-sim['T0']) - k*(xi-sim['X0'])) - ) - - mler_ts = pd.DataFrame(wave_amp_time, index=sim['T']) - mler_ts = mler_ts.rename(columns={0: 'WaveHeight', 1: 'LinearResponse'}) - - return mler_ts - - -def return_year_value(ppf, return_year, short_term_period_hr): - """ - Calculate the value from a given distribution corresponding to a particular - return year. - - Parameters - ---------- - ppf: callable function of 1 argument - Percentage Point Function (inverse CDF) of short term distribution. - return_year: int, float - Return period in years. - short_term_period_hr: int, float - Short term period the distribution is created from in hours. - - Returns - ------- - value: float - The value corresponding to the return period from the distribution. - """ - assert callable(ppf) - assert isinstance(return_year, (float, int)) - assert isinstance(short_term_period_hr, (float, int)) - - p = 1 / (return_year * 365.25 * 24 / short_term_period_hr) - - return ppf(1 - p) diff --git a/mhkit/loads/extreme/__init__.py b/mhkit/loads/extreme/__init__.py new file mode 100644 index 000000000..318a2cdc8 --- /dev/null +++ b/mhkit/loads/extreme/__init__.py @@ -0,0 +1,39 @@ +""" +This package provides tools and functions for extreme value analysis +and wave data statistics. + +It includes methods for calculating peaks over threshold, estimating +short-term extreme distributions,and performing wave amplitude +normalization for most likely extreme response analysis. +""" + +from mhkit.loads.extreme.extremes import ( + ste_peaks, + block_maxima, + ste_block_maxima_gev, + ste_block_maxima_gumbel, + ste, + short_term_extreme, + full_seastate_long_term_extreme, +) + +from mhkit.loads.extreme.mler import ( + mler_coefficients, + mler_simulation, + mler_wave_amp_normalize, + mler_export_time_series, +) + +from mhkit.loads.extreme.peaks import ( + _peaks_over_threshold, + global_peaks, + number_of_short_term_peaks, + peaks_distribution_weibull, + peaks_distribution_weibull_tail_fit, + automatic_hs_threshold, + peaks_distribution_peaks_over_threshold, +) + +from mhkit.loads.extreme.sample import ( + return_year_value, +) diff --git a/mhkit/loads/extreme/extremes.py b/mhkit/loads/extreme/extremes.py new file mode 100644 index 000000000..d89545c9d --- /dev/null +++ b/mhkit/loads/extreme/extremes.py @@ -0,0 +1,293 @@ +""" +This module provides functionality for estimating the short-term and +long-term extreme distributions of responses in a time series. It +includes methods for analyzing peaks, block maxima, and applying +statistical distributions to model extreme events. The module supports +various methods for short-term extreme estimation, including peaks +fitting with Weibull, tail fitting, peaks over threshold, and block +maxima methods with GEV (Generalized Extreme Value) and Gumbel +distributions. Additionally, it offers functionality to approximate +the long-term extreme distribution by weighting short-term extremes +across different sea states. + +Functions: +- ste_peaks: Estimates the short-term extreme distribution from peaks + distribution using specified statistical methods. +- block_maxima: Finds the block maxima in a time-series data to be used + in block maxima methods. +- ste_block_maxima_gev: Approximates the short-term extreme distribution + using the block maxima method with the GEV distribution. +- ste_block_maxima_gumbel: Approximates the short-term extreme + distribution using the block maxima method with the Gumbel distribution. +- ste: Alias for `short_term_extreme`, facilitating easier access to the + primary functionality of estimating short-term extremes. +- short_term_extreme: Core function to approximate the short-term extreme + distribution from a time series using chosen methods. +- full_seastate_long_term_extreme: Combines short-term extreme + distributions using weights to estimate the long-term extreme distribution. +""" + +from typing import Union + +import numpy as np +from scipy import stats +from scipy.stats import rv_continuous + +import mhkit.loads.extreme.peaks as peaks_distributions + + +def ste_peaks(peaks_distribution: rv_continuous, npeaks: float) -> rv_continuous: + """ + Estimate the short-term extreme distribution from the peaks + distribution. + + Parameters + ---------- + peaks_distribution: scipy.stats.rv_frozen + Probability distribution of the peaks. + npeaks : float + Number of peaks in short term period. + + Returns + ------- + short_term_extreme: scipy.stats.rv_frozen + Short-term extreme distribution. + """ + if not callable(peaks_distribution.cdf): + raise TypeError("peaks_distribution must be a scipy.stat distribution.") + if not isinstance(npeaks, float): + raise TypeError(f"npeaks must be of type float. Got: {type(npeaks)}") + + class _ShortTermExtreme(stats.rv_continuous): + def __init__(self, *args, **kwargs): + self.peaks = kwargs.pop("peaks_distribution") + self.npeaks = kwargs.pop("npeaks") + super().__init__(*args, **kwargs) + + def _cdf(self, x, *args, **kwargs): + peaks_cdf = np.array(self.peaks.cdf(x, *args, **kwargs)) + peaks_cdf[np.isnan(peaks_cdf)] = 0.0 + if len(peaks_cdf) == 1: + peaks_cdf = peaks_cdf[0] + return peaks_cdf**self.npeaks + + short_term_extreme_peaks = _ShortTermExtreme( + name="short_term_extreme", peaks_distribution=peaks_distribution, npeaks=npeaks + ) + return short_term_extreme_peaks + + +def block_maxima( + time: np.ndarray, global_peaks_data: np.ndarray, time_st: float +) -> np.ndarray: + """ + Find the block maxima of a time-series. + + The timeseries (time, global_peaks) is divided into blocks of length t_st, and the + maxima of each bloock is returned. + + Parameters + ---------- + time : np.array + Time array. + global_peaks_data : np.array + global peaks timeseries. + time_st : float + Short-term period. + + Returns + ------- + block_max: np.array + Block maxima (i.e. largest peak in each block). + """ + if not isinstance(time, np.ndarray): + raise TypeError(f"time must be of type np.ndarray. Got: {type(time)}") + if not isinstance(global_peaks_data, np.ndarray): + raise TypeError( + f"global_peaks_data must be of type np.ndarray. Got: {type(global_peaks_data)}" + ) + if not isinstance(time_st, float): + raise TypeError(f"time_st must be of type float. Got: {type(time_st)}") + + nblock = int(time[-1] / time_st) + block_max = np.zeros(int(nblock)) + for iblock in range(nblock): + i_x = global_peaks_data[ + (time >= iblock * time_st) & (time < (iblock + 1) * time_st) + ] + block_max[iblock] = np.max(i_x) + return block_max + + +def ste_block_maxima_gev(block_max): + """ + Approximate the short-term extreme distribution using the block + maxima method and the Generalized Extreme Value distribution. + + Parameters + ---------- + block_max: np.array + Block maxima (i.e. largest peak in each block). + + Returns + ------- + short_term_extreme_rv: scipy.stats.rv_frozen + Short-term extreme distribution. + """ + if not isinstance(block_max, np.ndarray): + raise TypeError(f"block_max must be of type np.ndarray. Got: {type(block_max)}") + + ste_params = stats.genextreme.fit(block_max) + param_names = ["c", "loc", "scale"] + ste_params = dict(zip(param_names, ste_params)) + short_term_extreme_rv = stats.genextreme(**ste_params) + short_term_extreme_rv.params = ste_params + return short_term_extreme_rv + + +def ste_block_maxima_gumbel(block_max): + """ + Approximate the short-term extreme distribution using the block + maxima method and the Gumbel (right) distribution. + + Parameters + ---------- + block_max: np.array + Block maxima (i.e. largest peak in each block). + + Returns + ------- + ste: scipy.stats.rv_frozen + Short-term extreme distribution. + """ + if not isinstance(block_max, np.ndarray): + raise TypeError(f"block_max must be of type np.ndarray. Got: {type(block_max)}") + + ste_params = stats.gumbel_r.fit(block_max) + param_names = ["loc", "scale"] + ste_params = dict(zip(param_names, ste_params)) + short_term_extreme_rv = stats.gumbel_r(**ste_params) + short_term_extreme_rv.params = ste_params + return short_term_extreme_rv + + +def ste(time: np.ndarray, data: np.ndarray, t_st: float, method: str) -> rv_continuous: + """ + Alias for `short_term_extreme`. + """ + ste_dist = short_term_extreme(time, data, t_st, method) + return ste_dist + + +def short_term_extreme( + time: np.ndarray, data: np.ndarray, t_st: float, method: str +) -> Union[rv_continuous, None]: + """ + Approximate the short-term extreme distribution from a + timeseries of the response using chosen method. + + The availabe methods are: 'peaks_weibull', 'peaks_weibull_tail_fit', + 'peaks_over_threshold', 'block_maxima_gev', and 'block_maxima_gumbel'. + For the block maxima methods the timeseries needs to be many times + longer than the short-term period. For the peak-fitting methods the + timeseries can be of arbitrary length. + + Parameters + ---------- + time: np.array + Time array. + data: np.array + Response timeseries. + t_st: float + Short-term period. + method : string + Method for estimating the short-term extreme distribution. + + Returns + ------- + short_term_extreme_dist: scipy.stats.rv_frozen + Short-term extreme distribution. + """ + if not isinstance(time, np.ndarray): + raise TypeError(f"time must be of type np.ndarray. Got: {type(time)}") + if not isinstance(data, np.ndarray): + raise TypeError(f"data must be of type np.ndarray. Got: {type(data)}") + if not isinstance(t_st, float): + raise TypeError(f"t_st must be of type float. Got: {type(t_st)}") + if not isinstance(method, str): + raise TypeError(f"method must be of type string. Got: {type(method)}") + + peaks_methods = { + "peaks_weibull": peaks_distributions.peaks_distribution_weibull, + "peaks_weibull_tail_fit": peaks_distributions.peaks_distribution_weibull_tail_fit, + "peaks_over_threshold": peaks_distributions.peaks_distribution_peaks_over_threshold, + } + blockmaxima_methods = { + "block_maxima_gev": ste_block_maxima_gev, + "block_maxima_gumbel": ste_block_maxima_gumbel, + } + + if method in peaks_methods: + fit_peaks = peaks_methods[method] + _, peaks = peaks_distributions.global_peaks(time, data) + npeaks = len(peaks) + time = time[-1] - time[0] + nst = peaks_distributions.number_of_short_term_peaks(npeaks, time, t_st) + peaks_dist = fit_peaks(peaks) + short_term_extreme_dist = ste_peaks(peaks_dist, nst) + elif method in blockmaxima_methods: + fit_maxima = blockmaxima_methods[method] + maxima = block_maxima(time, data, t_st) + short_term_extreme_dist = fit_maxima(maxima) + else: + print("Passed `method` not found.") + return short_term_extreme_dist + + +def full_seastate_long_term_extreme(short_term_extreme_dist, weights): + """ + Return the long-term extreme distribution of a response of + interest using the full sea state approach. + + Parameters + ---------- + ste: list[scipy.stats.rv_frozen] + Short-term extreme distribution of the quantity of interest for + each sample sea state. + weights: list, np.ndarray + The weights from the full sea state sampling + + Returns + ------- + ste: scipy.stats.rv_frozen + Short-term extreme distribution. + """ + if not isinstance(short_term_extreme_dist, list): + raise TypeError( + "short_term_extreme_dist must be of type list[scipy.stats.rv_frozen]." + + f"Got: {type(short_term_extreme_dist)}" + ) + if not isinstance(weights, (list, np.ndarray)): + raise TypeError( + f"weights must be of type list or np.ndarray. Got: {type(weights)}" + ) + + class _LongTermExtreme(stats.rv_continuous): + def __init__(self, *args, **kwargs): + weights = kwargs.pop("weights") + # make sure weights add to 1.0 + self.weights = weights / np.sum(weights) + self.ste = kwargs.pop("ste") + # Disabled bc not sure where/ how n is applied + self.n = len(self.weights) # pylint: disable=invalid-name + super().__init__(*args, **kwargs) + + def _cdf(self, x, *args, **kwargs): + weighted_cdf = 0.0 + for w_i, ste_i in zip(self.weights, self.ste): + weighted_cdf += w_i * ste_i.cdf(x, *args, **kwargs) + return weighted_cdf + + return _LongTermExtreme( + name="long_term_extreme", weights=weights, ste=short_term_extreme_dist + ) diff --git a/mhkit/loads/extreme/mler.py b/mhkit/loads/extreme/mler.py new file mode 100644 index 000000000..2922fc3b9 --- /dev/null +++ b/mhkit/loads/extreme/mler.py @@ -0,0 +1,458 @@ +""" +This module provides functionalities to calculate and analyze Most +Likely Extreme Response (MLER) coefficients for wave energy converter +design and risk assessment. It includes functions to: + + - Calculate MLER coefficients (`mler_coefficients`) from a sea state + spectrum and a response Amplitude Response Operator (ARO). + - Define and manipulate simulation parameters (`mler_simulation`) used + across various MLER analyses. + - Renormalize the incoming amplitude of the MLER wave + (`mler_wave_amp_normalize`) to match the desired peak height for more + accurate modeling and analysis. + - Export the wave amplitude time series (`mler_export_time_series`) + based on the calculated MLER coefficients for further analysis or + visualization. +""" + +from typing import Union, List, Optional, Dict, Any + +import pandas as pd +import xarray as xr +import numpy as np +from numpy.typing import NDArray + +from mhkit.wave.resource import frequency_moment + +SimulationParameters = Dict[str, Union[float, int, np.ndarray]] + + +def _calculate_spectral_values( + freq_hz: Union[np.ndarray, pd.Series], + rao_array: np.ndarray, + wave_spectrum: Union[pd.Series, pd.DataFrame, np.ndarray], + d_w: float, +) -> Dict[str, Union[float, np.ndarray]]: + """ + Calculates spectral moments and the coefficient A_{R,n} from a given sea state spectrum + and a response RAO. + + Parameters + ---------- + spectrum_r : Union[np.ndarray, pd.Series] + Real part of the spectrum. + freq_hz : Union[np.ndarray, pd.Series] + Frequencies in Hz corresponding to spectrum_r. + rao : numpy ndarray + Response Amplitude Operator (RAO) of the system. + wave_spectrum : Union[pd.Series, pd.DataFrame, np.ndarray] + Wave spectrum values corresponding to freq_hz. + d_w : float + Delta omega, the frequency interval. + + Returns + ------- + Dict[str, Union[float, np.ndarray]] + A dictionary containing spectral moments (m_0, m_1, m_2) and the coefficient A_{R,n}. + """ + # Note: waves.A is "S" in Quon2016; 'waves' naming convention + # matches WEC-Sim conventions (EWQ) + # Response spectrum [(response units)^2-s/rad] -- Quon2016 Eqn. 3 + spectrum_r = np.abs(rao_array) ** 2 * (2 * wave_spectrum) + + # Calculate spectral moments + m_0 = frequency_moment(pd.Series(spectrum_r, index=freq_hz), 0).iloc[0, 0] + m_1 = frequency_moment(pd.Series(spectrum_r, index=freq_hz), 1).iloc[0, 0] + m_2 = frequency_moment(pd.Series(spectrum_r, index=freq_hz), 2).iloc[0, 0] + + # Calculate coefficient A_{R,n} + coeff_a_rn = ( + np.abs(rao_array) + * np.sqrt(2 * wave_spectrum * d_w) + * ((m_2 - freq_hz * m_1) + (m_1 / m_0) * (freq_hz * m_0 - m_1)) + / (m_0 * m_2 - m_1**2) + ) + + return { + "m_0": m_0, + "m_1": m_1, + "m_2": m_2, + "coeff_a_rn": coeff_a_rn, + } + + +def mler_coefficients( + rao: Union[NDArray[np.float_], pd.Series, List[float], List[int], xr.DataArray], + wave_spectrum: Union[pd.Series, pd.DataFrame, xr.DataArray, xr.Dataset], + response_desired: Union[int, float], + frequency_dimension: str = "", + to_pandas: bool = True, +) -> Union[pd.DataFrame, xr.Dataset]: + """ + Calculate MLER (most likely extreme response) coefficients from a + sea state spectrum and a response RAO. + + Parameters + ---------- + rao: numpy ndarray + Response amplitude operator. + wave_spectrum: pandas Series, pandas DataFrame, xarray DataArray, or xarray Dataset + Wave spectral density [m^2/Hz] indexed by frequency [Hz]. + DataFrame and Dataset inputs should only have one data variable + response_desired: int or float + Desired response, units should correspond to a motion RAO or + units of force for a force RAO. + frequency_dimension: string (optional) + Name of the xarray dimension corresponding to frequency. If not supplied, + defaults to the first dimension. Does not affect pandas input. + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. + + Returns + ------- + mler: pandas DataFrame or xarray Dataset + DataFrame containing conditioned wave spectral amplitude + coefficient [m^2-s], and Phase [rad] indexed by freq [Hz]. + """ + + if isinstance(rao, (list, pd.Series, xr.DataArray)): + rao_array = np.array(rao) + elif isinstance(rao, np.ndarray): + rao_array = rao + else: + raise TypeError( + "Unsupported type for 'rao'. Must be one of: list, pd.Series, \ + np.ndarray, xr.DataArray." + ) + + if not isinstance(rao_array, np.ndarray): + raise TypeError(f"rao must be of type np.ndarray. Got: {type(rao_array)}") + if not isinstance( + wave_spectrum, (pd.Series, pd.DataFrame, xr.DataArray, xr.Dataset) + ): + raise TypeError( + f"wave_spectrum must be of type pd.Series, pd.DataFrame, " + f"xr.DataArray, or xr.Dataset. Got: {type(wave_spectrum)}" + ) + if not isinstance(response_desired, (int, float)): + raise TypeError( + f"response_desired must be of type int or float. Got: {type(response_desired)}" + ) + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + + # Convert input to xarray DataArray + if isinstance(wave_spectrum, (pd.Series, pd.DataFrame)): + wave_spectrum = wave_spectrum.squeeze().to_xarray() + + if isinstance(wave_spectrum, xr.Dataset): + if len(wave_spectrum.data_vars) > 1: + raise ValueError( + f"wave_spectrum can only contain one variable. Got {list(wave_spectrum.data_vars)}." + ) + wave_spectrum = wave_spectrum.to_array() + + if frequency_dimension == "": + frequency_dimension = list(wave_spectrum.coords)[0] + + # convert from Hz to rad/s + freq_hz = wave_spectrum.coords[frequency_dimension].values * (2 * np.pi) + wave_spectrum = wave_spectrum.to_numpy() / (2 * np.pi) + + # get frequency step + d_w = 2.0 * np.pi / (len(freq_hz) - 1) + + spectral_values = _calculate_spectral_values(freq_hz, rao_array, wave_spectrum, d_w) + + # save the new spectral info to pass out + # Phase delay should be a positive number in this convention (AP) + _phase = -np.unwrap(np.angle(rao_array)) + + # for negative values of Amp, shift phase by pi and flip sign + # for negative amplitudes, add a pi phase shift, then flip sign on + # negative Amplitudes + _phase[spectral_values["coeff_a_rn"] < 0] -= np.pi + spectral_values["coeff_a_rn"][spectral_values["coeff_a_rn"] < 0] *= -1 + + # calculate the conditioned spectrum [m^2-s/rad] + conditioned_spectrum = ( + wave_spectrum * spectral_values["coeff_a_rn"] ** 2 * response_desired**2 + ) + + # if the response amplitude we ask for is negative, we will add + # a pi phase shift to the phase information. This is because + # the sign of self.desiredRespAmp is lost in the squaring above. + # Ordinarily this would be put into the final equation, but we + # are shaping the wave information so that it is buried in the + # new spectral information, S. (AP) + if response_desired < 0: + _phase += np.pi + + mler = xr.Dataset( + { + "WaveSpectrum": (["frequency"], np.array(conditioned_spectrum)), + "Phase": (["frequency"], _phase + np.pi * (response_desired < 0)), + }, + coords={"frequency": freq_hz}, + ) + mler.fillna(0) + + return mler.to_pandas() if to_pandas else mler + + +def mler_simulation( + parameters: Optional[SimulationParameters] = None, +) -> SimulationParameters: + """ + Define the simulation parameters that are used in various MLER + functionalities. + + See `extreme_response_contour_example.ipynb` example for how this is + useful. If no input is given, then default values are returned. + + Parameters + ---------- + parameters: dict (optional) + Simulation parameters. + Keys: + ----- + - 'startTime': starting time [s] + - 'endTime': ending time [s] + - 'dT': time-step size [s] + - 'T0': time of maximum event [s] + - 'startx': start of simulation space [m] + - 'endX': end of simulation space [m] + - 'dX': horizontal spacing [m] + - 'X': position of maximum event [m] + The following keys are calculated from the above parameters: + - 'maxIT': int, maximum timestep index + - 'T': np.ndarray, time array + - 'maxIX': int, maximum index for space + - 'X': np.ndarray, space array + + Returns + ------- + sim: dict + Simulation parameters including spatial and time calculated + arrays. + """ + if not isinstance(parameters, (type(None), dict)): + raise TypeError( + f"If specified, parameters must be of type dict. Got: {type(parameters)}" + ) + + sim = {} + + if parameters is None: + sim["startTime"] = -150.0 # [s] Starting time + sim["endTime"] = 150.0 # [s] Ending time + sim["dT"] = 1.0 # [s] Time-step size + sim["T0"] = 0.0 # [s] Time of maximum event + sim["startX"] = -300.0 # [m] Start of simulation space + sim["endX"] = 300.0 # [m] End of simulation space + sim["dX"] = 1.0 # [m] Horiontal spacing + sim["X0"] = 0.0 # [m] Position of maximum event + else: + sim = parameters + + # maximum timestep index + sim["maxIT"] = int(np.ceil((sim["endTime"] - sim["startTime"]) / sim["dT"] + 1)) + sim["T"] = np.linspace(sim["startTime"], sim["endTime"], sim["maxIT"]) + + sim["maxIX"] = int(np.ceil((sim["endX"] - sim["startX"]) / sim["dX"] + 1)) + sim["X"] = np.linspace(sim["startX"], sim["endX"], sim["maxIX"]) + + return sim + + +def mler_wave_amp_normalize( + wave_amp: float, + mler: Union[pd.DataFrame, xr.Dataset], + sim: SimulationParameters, + k: Union[NDArray[np.float_], List[float], pd.Series], + **kwargs: Any, +) -> Union[pd.DataFrame, xr.Dataset]: + """ + Function that renormalizes the incoming amplitude of the MLER wave + to the desired peak height (peak to MSL). + + Parameters + ---------- + wave_amp: float + Desired wave amplitude (peak to MSL). + mler: pandas DataFrame or xarray Dataset + MLER coefficients generated by 'mler_coefficients' function. + sim: dict + Simulation parameters formatted by output from + 'mler_simulation'. + k: numpy ndarray + Wave number + frequency_dimension: string (optional) + Name of the xarray dimension corresponding to frequency. If not supplied, + defaults to the first dimension. Does not affect pandas input. + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. + + Returns + ------- + mler_norm : pandas DataFrame or xarray Dataset + MLER coefficients + """ + frequency_dimension = kwargs.get("frequency_dimension", "") + to_pandas = kwargs.get("to_pandas", True) + + k_array = np.array(k, dtype=float) if not isinstance(k, np.ndarray) else k + + if not isinstance(mler, (pd.DataFrame, xr.Dataset)): + raise TypeError( + f"mler must be of type pd.DataFrame or xr.Dataset. Got: {type(mler)}" + ) + if not isinstance(wave_amp, (int, float)): + raise TypeError(f"wave_amp must be of type int or float. Got: {type(wave_amp)}") + if not isinstance(sim, dict): + raise TypeError(f"sim must be of type dict. Got: {type(sim)}") + if not isinstance(frequency_dimension, str): + raise TypeError( + "frequency_dimension must be of type bool." + + f"Got: {type(frequency_dimension)}" + ) + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + + # If input is pandas, convert to xarray + mler_xr = mler.to_xarray() if isinstance(mler, pd.DataFrame) else mler() + + # Determine frequency dimension + freq_dim = frequency_dimension or list(mler_xr.coords)[0] + # freq = mler_xr.coords[freq_dim].values * 2 * np.pi + # d_w = np.diff(freq).mean() + + wave_amp_time = np.array( + [ + np.sum( + np.sqrt( + 2 + * mler_xr["WaveSpectrum"].values + * np.diff(mler_xr.coords[freq_dim].values * 2 * np.pi).mean() + ) + * np.cos( + mler_xr.coords[freq_dim].values * 2 * np.pi * (t - sim["T0"]) + - k_array * (x - sim["X0"]) + + mler_xr["Phase"].values + ) + ) + for x in np.linspace(sim["startX"], sim["endX"], sim["maxIX"]) + for t in np.linspace(sim["startTime"], sim["endTime"], sim["maxIT"]) + ] + ).reshape(sim["maxIX"], sim["maxIT"]) + + rescale_fact = np.abs(wave_amp) / np.max(np.abs(wave_amp_time)) + + # Rescale the wave spectral amplitude coefficients and assign phase + mler_norm = xr.Dataset( + { + "WaveSpectrum": ( + ["frequency"], + mler_xr["WaveSpectrum"].data * rescale_fact**2, + ), + "Phase": (["frequency"], mler_xr["Phase"].data), + }, + coords={"frequency": (["frequency"], mler_xr.coords[freq_dim].data)}, + ) + return mler_norm.to_pandas() if to_pandas else mler_norm + + +def mler_export_time_series( + rao: Union[NDArray[np.float_], List[float], pd.Series], + mler: Union[pd.DataFrame, xr.Dataset], + sim: SimulationParameters, + k: Union[NDArray[np.float_], List[float], pd.Series], + **kwargs: Any, +) -> Union[pd.DataFrame, xr.Dataset]: + """ + Generate the wave amplitude time series at X0 from the calculated + MLER coefficients + + Parameters + ---------- + rao: numpy ndarray + Response amplitude operator. + mler: pandas DataFrame or xarray Dataset + MLER coefficients dataframe generated from an MLER function. + sim: dict + Simulation parameters formatted by output from + 'mler_simulation'. + k: numpy ndarray + Wave number. + frequency_dimension: string (optional) + Name of the xarray dimension corresponding to frequency. If not supplied, + defaults to the first dimension. Does not affect pandas input. + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. + + Returns + ------- + mler_ts: pandas DataFrame or xarray Dataset + Time series of wave height [m] and linear response [*] indexed + by time [s]. + + """ + frequency_dimension = kwargs.get("frequency_dimension", "") + to_pandas = kwargs.get("to_pandas", True) + + if not isinstance(rao, np.ndarray): + raise TypeError(f"rao must be of type ndarray. Got: {type(rao)}") + if not isinstance(mler, (pd.DataFrame, xr.Dataset)): + raise TypeError( + f"mler must be of type pd.DataFrame or xr.Dataset. Got: {type(mler)}" + ) + if not isinstance(sim, dict): + raise TypeError(f"sim must be of type dict. Got: {type(sim)}") + if not isinstance(k, (np.ndarray, list, pd.Series)): + raise TypeError(f"k must be of type ndarray. Got: {type(k)}") + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + if not isinstance(frequency_dimension, str): + raise TypeError( + f"frequency_dimension must be of type str. Got: {type(frequency_dimension)}" + ) + + rao = np.array(rao, dtype=float) if not isinstance(rao, np.ndarray) else rao + k = np.array(k, dtype=float) if not isinstance(k, np.ndarray) else k + # If input is pandas, convert to xarray + mler = mler if isinstance(mler, xr.Dataset) else mler.to_xarray() + + # Handle optional frequency dimension + frequency_dimension = ( + frequency_dimension if frequency_dimension else list(mler.coords)[0] + ) + freq = mler.coords[frequency_dimension].values * 2 * np.pi + d_w = np.diff(freq).mean() + + wave_height = np.zeros(len(sim["T"])) + linear_response = np.zeros(len(sim["T"])) + for i, t_i in enumerate(sim["T"]): + cos_terms = np.cos( + freq * (t_i - sim["T0"]) + - k * (sim["X0"] - sim["X0"]) + + mler["Phase"].values + ) + wave_height[i] = np.sum(np.sqrt(2 * mler["WaveSpectrum"] * d_w) * cos_terms) + + linear_response[i] = np.sum( + np.sqrt(2 * mler["WaveSpectrum"] * d_w) + * np.abs(rao) + * np.cos(freq * (t_i - sim["T0"]) - k * (sim["X0"] - sim["X0"])) + ) + + # Construct the output dataset + mler_ts = xr.Dataset( + { + "WaveHeight": (["time"], wave_height), + "LinearResponse": (["time"], linear_response), + }, + coords={"time": sim["T"]}, + ) + + # Convert to pandas DataFrame if requested + return mler_ts.to_dataframe() if to_pandas else mler_ts diff --git a/mhkit/loads/extreme/peaks.py b/mhkit/loads/extreme/peaks.py new file mode 100644 index 000000000..3f588237a --- /dev/null +++ b/mhkit/loads/extreme/peaks.py @@ -0,0 +1,481 @@ +""" +This module provides utilities for analyzing wave data, specifically +for identifying significant wave heights and estimating wave peak +distributions using statistical methods. + +Functions: +- _calculate_window_size: Calculates the window size for peak + independence using the auto-correlation function of wave peaks. +- _peaks_over_threshold: Identifies peaks over a specified + threshold and returns independent storm peak values adjusted by + the threshold. +- global_peaks: Identifies global peaks in a zero-centered + response time-series based on consecutive zero up-crossings. +- number_of_short_term_peaks: Estimates the number of peaks within a + specified short-term period. +- peaks_distribution_weibull: Estimates the peaks distribution by + fitting a Weibull distribution to the peaks of the response. +- peaks_distribution_weibull_tail_fit: Estimates the peaks distribution + using the Weibull tail fit method. +- automatic_hs_threshold: Determines the best significant wave height + threshold for the peaks-over-threshold method. +- peaks_distribution_peaks_over_threshold: Estimates the peaks + distribution using the peaks over threshold method by fitting a + generalized Pareto distribution. + +References: +- Neary, V. S., S. Ahn, B. E. Seng, M. N. Allahdadi, T. Wang, Z. Yang, + and R. He (2020). "Characterization of Extreme Wave Conditions for + Wave Energy Converter Design and Project Risk Assessment.” J. Mar. + Sci. Eng. 2020, 8(4), 289; https://doi.org/10.3390/jmse8040289. + +""" + +from typing import List, Tuple, Optional + +import numpy as np +from numpy.typing import NDArray +from scipy import stats, optimize, signal +from scipy.stats import rv_continuous + +from mhkit.utils import upcrossing + + +def _calculate_window_size(peaks: NDArray[np.float64], sampling_rate: float) -> float: + """ + Calculate the window size for independence based on the auto-correlation function. + + Parameters + ---------- + peaks : np.ndarray + A NumPy array of peak values from a time series. + sampling_rate : float + The sampling rate of the time series in Hz (samples per second). + + Returns + ------- + float + The window size determined by the auto-correlation function. + """ + n_lags = int(14 * 24 / sampling_rate) + deviations_from_mean = peaks - np.mean(peaks) + acf = signal.correlate(deviations_from_mean, deviations_from_mean, mode="full") + lag = signal.correlation_lags(len(peaks), len(peaks), mode="full") + idx_zero = np.argmax(lag == 0) + positive_lag = lag[idx_zero : idx_zero + n_lags + 1] + acf_positive = acf[idx_zero : idx_zero + n_lags + 1] / acf[idx_zero] + + window_size = sampling_rate * positive_lag[acf_positive < 0.5][0] + return window_size / sampling_rate + + +def _peaks_over_threshold( + peaks: NDArray[np.float64], threshold: float, sampling_rate: float +) -> List[float]: + """ + Identifies peaks in a time series that are over a specified threshold and + returns a list of independent storm peak values adjusted by the threshold. + Independence is determined by a window size calculated from the auto-correlation + function to ensure that peaks are separated by at least the duration + corresponding to the first significant drop in auto-correlation. + + Parameters + ---------- + peaks : np.ndarray + A NumPy array of peak values from a time series. + threshold : float + The percentile threshold (0-1) to identify significant peaks. + For example, 0.95 for the 95th percentile. + sampling_rate : float + The sampling rate of the time series in Hz (samples per second). + + Returns + ------- + List[float] + A list of peak values exceeding the specified threshold, adjusted + for independence based on the calculated window size. + + Notes + ----- + This function requires the global_peaks function to identify the + maxima between consecutive zero up-crossings and uses the signal processing + capabilities from scipy.signal for calculating the auto-correlation function. + """ + threshold_unit = np.percentile(peaks, 100 * threshold, method="hazen") + idx_peaks = np.arange(len(peaks)) + idx_storm_peaks, storm_peaks = global_peaks(idx_peaks, peaks - threshold_unit) + idx_storm_peaks = idx_storm_peaks.astype(int) + + independent_storm_peaks = [storm_peaks[0]] + idx_independent_storm_peaks = [idx_storm_peaks[0]] + + window = _calculate_window_size(peaks, sampling_rate) + + for idx in idx_storm_peaks[1:]: + if (idx - idx_independent_storm_peaks[-1]) > window: + idx_independent_storm_peaks.append(idx) + independent_storm_peaks.append(peaks[idx] - threshold_unit) + elif peaks[idx] > independent_storm_peaks[-1]: + idx_independent_storm_peaks[-1] = idx + independent_storm_peaks[-1] = peaks[idx] - threshold_unit + + return independent_storm_peaks + + +def global_peaks(time: np.ndarray, data: np.ndarray) -> Tuple[np.ndarray, np.ndarray]: + """ + Find the global peaks of a zero-centered response time-series. + + The global peaks are the maxima between consecutive zero + up-crossings. + + Parameters + ---------- + time: np.array + Time array. + data: np.array + Response time-series. + + Returns + ------- + time_peaks: np.array + Time array for peaks + peaks: np.array + Peak values of the response time-series + """ + if not isinstance(time, np.ndarray): + raise TypeError(f"time must be of type np.ndarray. Got: {type(time)}") + if not isinstance(data, np.ndarray): + raise TypeError(f"data must be of type np.ndarray. Got: {type(data)}") + + # Find zero up-crossings + inds = upcrossing(time, data) + + # We also include the final point in the dataset + inds = np.append(inds, len(data) - 1) + + # As we want to return both the time and peak + # values, look for the index at the peak. + # The call to argmax gives us the index within the + # upcrossing period. Therefore to get the index in the + # original array we need to add on the index that + # starts the zero crossing period, ind1. + def find_peak_index(ind1, ind2): + return np.argmax(data[ind1:ind2]) + ind1 + + peak_inds = np.array( + [find_peak_index(ind1, inds[i + 1]) for i, ind1 in enumerate(inds[:-1])], + dtype=int, + ) + + return time[peak_inds], data[peak_inds] + + +def number_of_short_term_peaks(n_peaks: int, time: float, time_st: float) -> float: + """ + Estimate the number of peaks in a specified period. + + Parameters + ---------- + n_peaks : int + Number of peaks in analyzed timeseries. + time : float + Length of time of analyzed timeseries. + time_st: float + Short-term period for which to estimate the number of peaks. + + Returns + ------- + n_st : float + Number of peaks in short term period. + """ + if not isinstance(n_peaks, int): + raise TypeError(f"n_peaks must be of type int. Got: {type(n_peaks)}") + if not isinstance(time, float): + raise TypeError(f"time must be of type float. Got: {type(time)}") + if not isinstance(time_st, float): + raise TypeError(f"time_st must be of type float. Got: {type(time_st)}") + + return n_peaks * time_st / time + + +def peaks_distribution_weibull(peaks_data: NDArray[np.float_]) -> rv_continuous: + """ + Estimate the peaks distribution by fitting a Weibull + distribution to the peaks of the response. + + The fitted parameters can be accessed through the `params` field of + the returned distribution. + + Parameters + ---------- + peaks_data : NDArray[np.float_] + Global peaks. + + Returns + ------- + peaks: scipy.stats.rv_frozen + Probability distribution of the peaks. + """ + if not isinstance(peaks_data, np.ndarray): + raise TypeError( + f"peaks_data must be of type np.ndarray. Got: {type(peaks_data)}" + ) + + # peaks distribution + peaks_params = stats.exponweib.fit(peaks_data, f0=1, floc=0) + param_names = ["a", "c", "loc", "scale"] + peaks_params = dict(zip(param_names, peaks_params)) + peaks = stats.exponweib(**peaks_params) + # save the parameter info + peaks.params = peaks_params + return peaks + + +# pylint: disable=R0914 +def peaks_distribution_weibull_tail_fit( + peaks_data: NDArray[np.float_], +) -> rv_continuous: + """ + Estimate the peaks distribution using the Weibull tail fit + method. + + The fitted parameters can be accessed through the `params` field of + the returned distribution. + + Parameters + ---------- + peaks_data : np.array + Global peaks. + + Returns + ------- + peaks: scipy.stats.rv_frozen + Probability distribution of the peaks. + """ + if not isinstance(peaks_data, np.ndarray): + raise TypeError( + f"peaks_data must be of type np.ndarray. Got: {type(peaks_data)}" + ) + + # Initial guess for Weibull parameters + p_0 = stats.exponweib.fit(peaks_data, f0=1, floc=0) + p_0 = np.array([p_0[1], p_0[3]]) + # Approximate CDF + peaks_data = np.sort(peaks_data) + n_peaks = len(peaks_data) + cdf_positions = np.zeros(n_peaks) + for i in range(n_peaks): + cdf_positions[i] = i / (n_peaks + 1.0) + # Divide into seven sets & fit Weibull + subset_shape_params = np.zeros(7) + subset_scale_params = np.zeros(7) + set_lim = np.arange(0.60, 0.90, 0.05) + + def weibull_cdf(data_points, shape, scale): + return stats.exponweib(a=1, c=shape, loc=0, scale=scale).cdf(data_points) + + for local_set in range(7): + global_peaks_set = peaks_data[(cdf_positions > set_lim[local_set])] + cdf_positions_set = cdf_positions[(cdf_positions > set_lim[local_set])] + # pylint: disable=W0632 + p_opt, _ = optimize.curve_fit( + weibull_cdf, global_peaks_set, cdf_positions_set, p0=p_0 + ) + subset_shape_params[local_set] = p_opt[0] + subset_scale_params[local_set] = p_opt[1] + # peaks distribution + peaks_params = [1, np.mean(subset_shape_params), 0, np.mean(subset_scale_params)] + param_names = ["a", "c", "loc", "scale"] + peaks_params = dict(zip(param_names, peaks_params)) + peaks = stats.exponweib(**peaks_params) + # save the parameter info + peaks.params = peaks_params + peaks.subset_shape_params = subset_shape_params + peaks.subset_scale_params = subset_scale_params + return peaks + + +# pylint: disable=R0914 +def automatic_hs_threshold( + peaks: NDArray[np.float_], + sampling_rate: float, + initial_threshold_range: Tuple[float, float, float] = (0.990, 0.995, 0.001), + max_refinement: int = 5, +) -> Tuple[float, float]: + """ + Find the best significant wave height threshold for the + peaks-over-threshold method. + + This method was developed by: + + > Neary, V. S., S. Ahn, B. E. Seng, M. N. Allahdadi, T. Wang, Z. Yang and R. He (2020). + > "Characterization of Extreme Wave Conditions for Wave Energy Converter Design and + > Project Risk Assessment.” + > J. Mar. Sci. Eng. 2020, 8(4), 289; https://doi.org/10.3390/jmse8040289. + + Please cite this paper if using this method. + + After all thresholds in the initial range are evaluated, the search + range is refined around the optimal point until either (i) there + is minimal change from the previous refinement results, (ii) the + number of data points become smaller than about 1 per year, or (iii) + the maximum number of iterations is reached. + + Parameters + ---------- + peaks: NDArray[np.float_] + Peak values of the response time-series. + sampling_rate: float + Sampling rate in hours. + initial_threshold_range: Tuple[float, float, float] + Initial range of thresholds to search. Described as + (min, max, step). + max_refinement: int + Maximum number of times to refine the search range. + + Returns + ------- + Tuple[float, float] + The best threshold and its corresponding unit. + + """ + if not isinstance(sampling_rate, (float, int)): + raise TypeError( + f"sampling_rate must be of type float or int. Got: {type(sampling_rate)}" + ) + if not isinstance(peaks, np.ndarray): + raise TypeError(f"peaks must be of type np.ndarray. Got: {type(peaks)}") + if not len(initial_threshold_range) == 3: + raise ValueError( + f"initial_threshold_range must be length 3. Got: {len(initial_threshold_range)}" + ) + if not isinstance(max_refinement, int): + raise TypeError( + f"max_refinement must be of type int. Got: {type(max_refinement)}" + ) + + range_min, range_max, range_step = initial_threshold_range + best_threshold = -1 + years = len(peaks) / (365.25 * 24 / sampling_rate) + + for i in range(max_refinement): + thresholds = np.arange(range_min, range_max, range_step) + correlations = [] + + for threshold in thresholds: + distribution = stats.genpareto + over_threshold = _peaks_over_threshold(peaks, threshold, sampling_rate) + rate_per_year = len(over_threshold) / years + if rate_per_year < 2: + break + distributions_parameters = distribution.fit(over_threshold, floc=0.0) + _, (_, _, correlation) = stats.probplot( + peaks, distributions_parameters, distribution, fit=True + ) + correlations.append(correlation) + + max_i = np.argmax(correlations) + minimal_change = np.abs(best_threshold - thresholds[max_i]) < 0.0005 + best_threshold = thresholds[max_i] + if minimal_change and i < max_refinement - 1: + break + range_step /= 10 + if max_i == len(thresholds) - 1: + range_min = thresholds[max_i - 1] + range_max = thresholds[max_i] + 5 * range_step + elif max_i == 0: + range_min = thresholds[max_i] - 9 * range_step + range_max = thresholds[max_i + 1] + else: + range_min = thresholds[max_i - 1] + range_max = thresholds[max_i + 1] + + best_threshold_unit = np.percentile(peaks, 100 * best_threshold, method="hazen") + return best_threshold, best_threshold_unit + + +def peaks_distribution_peaks_over_threshold( + peaks_data: NDArray[np.float_], threshold: Optional[float] = None +) -> rv_continuous: + """ + Estimate the peaks distribution using the peaks over threshold + method. + + This fits a generalized Pareto distribution to all the peaks above + the specified threshold. The distribution is only defined for values + above the threshold and therefore cannot be used to obtain integral + metrics such as the expected value. A typical choice of threshold is + 1.4 standard deviations above the mean. The peaks over threshold + distribution can be accessed through the `pot` field of the returned + peaks distribution. + + Parameters + ---------- + peaks_data : NDArray[np.float_] + Global peaks. + threshold : Optional[float] + Threshold value. Only peaks above this value will be used. + Default value calculated as: `np.mean(x) + 1.4 * np.std(x)` + + Returns + ------- + peaks: rv_continuous + Probability distribution of the peaks. + """ + if not isinstance(peaks_data, np.ndarray): + raise TypeError( + f"peaks_data must be of type np.ndarray. Got: {type(peaks_data)}" + ) + if threshold is None: + threshold = np.mean(peaks_data) + 1.4 * np.std(peaks_data) + if threshold is not None and not isinstance(threshold, float): + raise TypeError( + f"If specified, threshold must be of type float. Got: {type(threshold)}" + ) + + # peaks over threshold + peaks_data = np.sort(peaks_data) + pot = peaks_data[peaks_data > threshold] - threshold + npeaks = len(peaks_data) + npot = len(pot) + # Fit a generalized Pareto + pot_params = stats.genpareto.fit(pot, floc=0.0) + param_names = ["c", "loc", "scale"] + pot_params = dict(zip(param_names, pot_params)) + pot = stats.genpareto(**pot_params) + # save the parameter info + pot.params = pot_params + + # peaks + class _Peaks(rv_continuous): + def __init__( + self, pot_distribution: rv_continuous, threshold: float, *args, **kwargs + ): + self.pot = pot_distribution + self.threshold = threshold + super().__init__(*args, **kwargs) + + # pylint: disable=arguments-differ + def _cdf(self, data_points, *args, **kwds) -> NDArray[np.float_]: + # Convert data_points to a NumPy array if it's not already + data_points = np.atleast_1d(data_points) + out = np.zeros_like(data_points) + + # Use the instance's threshold attribute instead of passing as a parameter + below_threshold = data_points < self.threshold + out[below_threshold] = np.NaN + + above_threshold_indices = ~below_threshold + if np.any(above_threshold_indices): + points_above_threshold = data_points[above_threshold_indices] + pot_ccdf = 1.0 - self.pot.cdf( + points_above_threshold - self.threshold, *args, **kwds + ) + prop_pot = npot / npeaks + out[above_threshold_indices] = 1.0 - (prop_pot * pot_ccdf) + return out + + peaks = _Peaks(name="peaks", pot_distribution=pot, threshold=threshold) + peaks.pot = pot + return peaks diff --git a/mhkit/loads/extreme/sample.py b/mhkit/loads/extreme/sample.py new file mode 100644 index 000000000..3da0377de --- /dev/null +++ b/mhkit/loads/extreme/sample.py @@ -0,0 +1,52 @@ +""" +This module provides statistical analysis tools for extreme value +analysis in environmental and engineering applications. It focuses on +estimating values corresponding to specific return periods based on +the statistical distribution of observed or simulated data. + +Functionality: +- return_year_value: Calculates the value from a given distribution + corresponding to a specified return year. This function is particularly + useful for determining design values for engineering structures or for + risk assessment in environmental studies. + +""" + +from typing import Callable + + +def return_year_value( + ppf: Callable[[float], float], return_year: float, short_term_period_hr: float +) -> float: + """ + Calculate the value from a given distribution corresponding to a particular + return year. + + Parameters + ---------- + ppf: callable function of 1 argument + Percentage Point Function (inverse CDF) of short term distribution. + return_year: int, float + Return period in years. + short_term_period_hr: int, float + Short term period the distribution is created from in hours. + + Returns + ------- + value: float + The value corresponding to the return period from the distribution. + """ + if not callable(ppf): + raise TypeError("ppf must be a callable Percentage Point Function") + if not isinstance(return_year, (float, int)): + raise TypeError( + f"return_year must be of type float or int. Got: {type(return_year)}" + ) + if not isinstance(short_term_period_hr, (float, int)): + raise TypeError( + f"short_term_period_hr must be of type float or int. Got: {type(short_term_period_hr)}" + ) + + probability_of_exceedance = 1 / (return_year * 365.25 * 24 / short_term_period_hr) + + return ppf(1 - probability_of_exceedance) diff --git a/mhkit/loads/general.py b/mhkit/loads/general.py index 0c38b6bc7..119731443 100644 --- a/mhkit/loads/general.py +++ b/mhkit/loads/general.py @@ -1,79 +1,148 @@ +""" +This module provides tools for analyzing and processing data signals +related to turbine blade performance and fatigue analysis. It implements +methodologies based on standards such as IEC TS 62600-3:2020 ED1, +incorporating statistical binning, moment calculations, and fatigue +damage estimation using the rainflow counting algorithm. Key +functionalities include: + + - `bin_statistics`: Bins time-series data against a specified signal, + such as wind speed, to calculate mean and standard deviation statistics + for each bin, following IEC TS 62600-3:2020 ED1 guidelines. It supports + output in both pandas DataFrame and xarray Dataset formats. + + - `blade_moments`: Calculates the flapwise and edgewise moments of turbine + blades using derived calibration coefficients and raw strain signals. + This function is crucial for understanding the loading and performance + characteristics of turbine blades. + + - `damage_equivalent_load`: Estimates the damage equivalent load (DEL) + of a single data signal using a 4-point rainflow counting algorithm. + This method is vital for assessing fatigue life and durability of + materials under variable amplitude loading. + +References: +- C. Amzallag et. al., International Journal of Fatigue, 16 (1994) 287-293. +- ISO 12110-2, Metallic materials - Fatigue testing - Variable amplitude fatigue testing. +- G. Marsh et. al., International Journal of Fatigue, 82 (2016) 757-765. +""" + +from typing import Union, List, Tuple, Optional from scipy.stats import binned_statistic -import pandas as pd +import pandas as pd +import xarray as xr import numpy as np import fatpack +from mhkit.utils.type_handling import to_numeric_array -def bin_statistics(data,bin_against,bin_edges,data_signal=[]): + +def bin_statistics( + data: Union[pd.DataFrame, xr.Dataset], + bin_against: np.ndarray, + bin_edges: np.ndarray, + data_signal: Optional[List[str]] = None, + to_pandas: bool = True, +) -> Tuple[Union[pd.DataFrame, xr.Dataset], Union[pd.DataFrame, xr.Dataset]]: """ - Bins calculated statistics against data signal (or channel) + Bins calculated statistics against data signal (or channel) according to IEC TS 62600-3:2020 ED1. - + Parameters ----------- - data : pandas DataFrame - Time-series statistics of data signal(s) + data : pandas DataFrame or xarray Dataset + Time-series statistics of data signal(s) bin_against : array Data signal to bin data against (e.g. wind speed) bin_edges : array Bin edges with consistent step size - data_signal : list, optional + data_signal : list, optional List of data signal(s) to bin, default = all data signals - + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. + Returns -------- - bin_mean : pandas DataFrame + bin_mean : pandas DataFrame or xarray Dataset Mean of each bin - bin_std : pandas DataFrame + bin_std : pandas DataFrame or xarray Dataset Standard deviation of each bim """ - assert isinstance(data, pd.DataFrame), 'data must be of type pd.DataFram' - try: bin_against = np.asarray(bin_against) - except: 'bin_against must be of type np.ndarray' - try: bin_edges = np.asarray(bin_edges) - except: 'bin_edges must be of type np.ndarray' + if not isinstance(data, (pd.DataFrame, xr.Dataset)): + raise TypeError( + f"data must be of type pd.DataFrame or xr.Dataset. Got: {type(data)}" + ) + + # Use _to_numeric_array to process bin_against and bin_edges + bin_against = to_numeric_array(bin_against, "bin_against") + bin_edges = to_numeric_array(bin_edges, "bin_edges") + + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + # If input is pandas, convert to xarray + if isinstance(data, pd.DataFrame): + data = data.to_xarray() + + if data_signal is None: + data_signal = [] # Determine variables to analyze - if len(data_signal)==0: # if not specified, bin all variables - data_signal=data.columns.values + if len(data_signal) == 0: # if not specified, bin all variables + data_signal = list(data.keys()) else: - assert isinstance(data_signal, list), 'must be of type list' + if not isinstance(data_signal, list): + raise TypeError( + f"data_signal must be of type list. Got: {type(data_signal)}" + ) - # Pre-allocate list variables - bin_stat_list = [] - bin_std_list = [] + # Pre-allocate variable dictionaries + bin_stat_list = {} + bin_std_list = {} # loop through data_signal and get binned means for signal_name in data_signal: # Bin data - bin_stat = binned_statistic(bin_against,data[signal_name], - statistic='mean',bins=bin_edges) - # Calculate std of bins - std = [] - stdev = pd.DataFrame(data[signal_name]) - stdev.set_index(bin_stat.binnumber,inplace=True) - for i in range(1,len(bin_stat.bin_edges)): - try: - temp = stdev.loc[i].std(ddof=0) - std.append(temp[0]) - except: - std.append(np.nan) - bin_stat_list.append(bin_stat.statistic) - bin_std_list.append(std) - - # Convert to DataFrames - bin_mean = pd.DataFrame(np.transpose(bin_stat_list),columns=data_signal) - bin_std = pd.DataFrame(np.transpose(bin_std_list),columns=data_signal) - - # Check for nans - if bin_mean.isna().any().any(): - print('Warning: some bins may be empty!') + bin_stat_mean = binned_statistic( + bin_against, data[signal_name], statistic="mean", bins=bin_edges + ) + bin_stat_std = binned_statistic( + bin_against, data[signal_name], statistic="std", bins=bin_edges + ) + + bin_stat_list[signal_name] = ("index", bin_stat_mean.statistic) + bin_std_list[signal_name] = ("index", bin_stat_std.statistic) + + # Convert to Datasets + bin_mean = xr.Dataset( + data_vars=bin_stat_list, + coords={"index": np.arange(0, len(bin_stat_mean.statistic))}, + ) + bin_std = xr.Dataset( + data_vars=bin_std_list, + coords={"index": np.arange(0, len(bin_stat_std.statistic))}, + ) + + # Check for nans + for variable in list(bin_mean.variables): + if bin_mean[variable].isnull().any(): + print("Warning: bins for some variables may be empty!") + break + + if to_pandas: + bin_mean = bin_mean.to_pandas() + bin_std = bin_std.to_pandas() return bin_mean, bin_std -def blade_moments(blade_coefficients,flap_offset,flap_raw,edge_offset,edge_raw): - ''' +def blade_moments( + blade_coefficients: np.ndarray, + flap_offset: float, + flap_raw: np.ndarray, + edge_offset: float, + edge_raw: np.ndarray, +) -> Tuple[np.ndarray, np.ndarray]: + """ Transfer function for deriving blade flap and edge moments using blade matrix. Parameters @@ -88,42 +157,51 @@ def blade_moments(blade_coefficients,flap_offset,flap_raw,edge_offset,edge_raw): Derived offset of raw edge signal obtained during calibration process edge_raw : numpy array Raw strain signal of blade in the edgewise direction - + Returns -------- M_flap : numpy array Blade flapwise moment in SI units M_edge : numpy array Blade edgewise moment in SI units - ''' - - try: blade_coefficients = np.asarray(blade_coefficients) - except: 'blade_coefficients must be of type np.ndarray' - try: flap_raw = np.asarray(flap_raw) - except: 'flap_raw must be of type np.ndarray' - try: edge_raw = np.asarray(edge_raw) - except: 'edge_raw must be of type np.ndarray' - - assert isinstance(flap_offset, (float,int)), 'flap_offset must be of type int or float' - assert isinstance(edge_offset, (float,int)), 'edge_offset must be of type int or float' - + """ + + # Convert and validate blade_coefficients, flap_raw, and edge_raw + blade_coefficients = to_numeric_array(blade_coefficients, "blade_coefficients") + flap_raw = to_numeric_array(flap_raw, "flap_raw") + edge_raw = to_numeric_array(edge_raw, "edge_raw") + + if not isinstance(flap_offset, (float, int)): + raise TypeError( + f"flap_offset must be of type int or float. Got: {type(flap_offset)}" + ) + if not isinstance(edge_offset, (float, int)): + raise TypeError( + f"edge_offset must be of type int or float. Got: {type(edge_offset)}" + ) + # remove offset from raw signal flap_signal = flap_raw - flap_offset edge_signal = edge_raw - edge_offset # apply matrix to get load signals - M_flap = blade_coefficients[0]*flap_signal + blade_coefficients[1]*edge_signal - M_edge = blade_coefficients[2]*flap_signal + blade_coefficients[3]*edge_signal + m_flap = blade_coefficients[0] * flap_signal + blade_coefficients[1] * edge_signal + m_edge = blade_coefficients[2] * flap_signal + blade_coefficients[3] * edge_signal - return M_flap, M_edge + return m_flap, m_edge -def damage_equivalent_load(data_signal, m, bin_num=100, data_length=600): - ''' - Calculates the damage equivalent load of a single data signal (or channel) - based on IEC TS 62600-3:2020 ED1. 4-point rainflow counting algorithm from +def damage_equivalent_load( + data_signal: np.ndarray, + m: Union[float, int], + bin_num: int = 100, + data_length: Union[float, int] = 600, +) -> float: + """ + Calculates the damage equivalent load of a single data signal (or channel) + based on IEC TS 62600-3:2020 ED1. 4-point rainflow counting algorithm from fatpack module is based on the following resources: - + - `C. Amzallag et. al. Standardization of the rainflow counting method for fatigue analysis. International Journal of Fatigue, 16 (1994) 287-293` - `ISO 12110-2, Metallic materials - Fatigue testing - Variable amplitude @@ -131,7 +209,7 @@ def damage_equivalent_load(data_signal, m, bin_num=100, data_length=600): - `G. Marsh et. al. Review and application of Rainflow residue processing techniques for accurate fatigue damage estimation. International Journal of Fatigue, 82 (2016) 757-765` - + Parameters: ----------- @@ -143,25 +221,29 @@ def damage_equivalent_load(data_signal, m, bin_num=100, data_length=600): Number of bins for rainflow counting method (minimum=100) data_length : float/int Length of measured data (seconds) - + Returns -------- DEL : float Damage equivalent load (DEL) of single data signal - ''' - - try: data_signal = np.array(data_signal) - except: 'data_signal must be of type np.ndarray' - assert isinstance(m, (float,int)), 'm must be of type float or int' - assert isinstance(bin_num, (float,int)), 'bin_num must be of type float or int' - assert isinstance(data_length, (float,int)), 'data_length must be of type float or int' + """ + + to_numeric_array(data_signal, "data_signal") + if not isinstance(m, (float, int)): + raise TypeError(f"m must be of type float or int. Got: {type(m)}") + if not isinstance(bin_num, (float, int)): + raise TypeError(f"bin_num must be of type float or int. Got: {type(bin_num)}") + if not isinstance(data_length, (float, int)): + raise TypeError( + f"data_length must be of type float or int. Got: {type(data_length)}" + ) - rainflow_ranges = fatpack.find_rainflow_ranges(data_signal,k=256) + rainflow_ranges = fatpack.find_rainflow_ranges(data_signal, k=256) # Range count and bin - Nrf, Srf = fatpack.find_range_count(rainflow_ranges, bin_num) + n_rf, s_rf = fatpack.find_range_count(rainflow_ranges, bin_num) - DELs = Srf**m * Nrf / data_length - DEL = DELs.sum() ** (1/m) + del_s = s_rf**m * n_rf / data_length + del_value = del_s.sum() ** (1 / m) - return DEL + return del_value diff --git a/mhkit/loads/graphics.py b/mhkit/loads/graphics.py index 291e028af..26847f5ef 100644 --- a/mhkit/loads/graphics.py +++ b/mhkit/loads/graphics.py @@ -1,8 +1,36 @@ -import matplotlib.pyplot as plt +""" +This module provides functionalities for plotting statistical data +related to a given variable or dataset. + + - `plot_statistics` is designed to plot raw statistical measures + (mean, maximum, minimum, and optional standard deviation) of a + variable across a series of x-axis values. It allows for + customization of plot labels, title, and saving the plot to a file. + + - `plot_bin_statistics` extends these capabilities to binned data, + offering a way to visualize binned statistics (mean, maximum, minimum) + along with their respective standard deviations. This function also + supports label and title customization, as well as saving the plot to + a specified path. +""" + +from typing import Optional, Dict, Any import numpy as np +import matplotlib.pyplot as plt + +from mhkit.utils.type_handling import to_numeric_array + -def plot_statistics(x,y_mean,y_max,y_min,y_stdev=[],**kwargs): - ''' +# pylint: disable=R0914 +def plot_statistics( + x: np.ndarray, + y_mean: np.ndarray, + y_max: np.ndarray, + y_min: np.ndarray, + y_stdev: Optional[np.ndarray] = None, + **kwargs: Dict[str, Any], +) -> plt.Axes: + """ Plot showing standard raw statistics of variable Parameters @@ -17,7 +45,7 @@ def plot_statistics(x,y_mean,y_max,y_min,y_stdev=[],**kwargs): Array of min statistical values of variable y_stdev : numpy array, optional Array of standard deviation statistical values of variable - **kwargs : optional + **kwargs : optional x_label : string x axis label for plot y_label : string @@ -30,53 +58,72 @@ def plot_statistics(x,y_mean,y_max,y_min,y_stdev=[],**kwargs): Returns -------- ax : matplotlib pyplot axes - ''' - - try: x = np.array(x) - except: 'x must be of type np.ndarray' - try: y_mean = np.array(y_mean) - except: 'y_mean must be of type np.ndarray' - try:y_max = np.array(y_max) - except: 'y_max must be of type np.ndarray' - try: y_min = np.array(y_min) - except: 'y_min must be of type np.ndarray' - - x_label = kwargs.get("x_label", None) - y_label = kwargs.get("y_label", None) - title = kwargs.get("title", None) + """ + if y_stdev is None: + y_stdev = [] + + input_variables = [x, y_mean, y_max, y_min, y_stdev] + + variable_names = ["x", "y_mean", "y_max", "y_min", "y_stdev"] + # Convert each input variable to a numeric array, ensuring all are numeric + for i, variable in enumerate(input_variables): + input_variables[i] = to_numeric_array(variable, variable_names[i]) + + x, y_mean, y_max, y_min, y_stdev = input_variables + + x_label = kwargs.get("x_label", None) + y_label = kwargs.get("y_label", None) + title = kwargs.get("title", None) save_path = kwargs.get("save_path", None) - - assert isinstance(x_label, (str, type(None))), 'x_label must be of type str' - assert isinstance(y_label, (str, type(None))), 'y_label must be of type str' - assert isinstance(title, (str, type(None))), 'title must be of type str' - assert isinstance(save_path, (str, type(None))), 'save_path must be of type str' - - fig, ax = plt.subplots(figsize=(6,4)) - ax.plot(x,y_max,'^',label='max',mfc='none') - ax.plot(x,y_mean,'o',label='mean',mfc='none') - ax.plot(x,y_min,'v',label='min',mfc='none') - - if len(y_stdev)>0: ax.plot(x,y_stdev,'+',label='stdev',c='m') + + if not isinstance(x_label, (str, type(None))): + raise TypeError(f"x_label must be of type str. Got: {type(x_label)}") + if not isinstance(y_label, (str, type(None))): + raise TypeError(f"y_label must be of type str. Got: {type(y_label)}") + if not isinstance(title, (str, type(None))): + raise TypeError(f"title must be of type str. Got: {type(title)}") + if not isinstance(save_path, (str, type(None))): + raise TypeError(f"save_path must be of type str. Got: {type(save_path)}") + + fig, ax = plt.subplots(figsize=(6, 4)) + ax.plot(x, y_max, "^", label="max", mfc="none") + ax.plot(x, y_mean, "o", label="mean", mfc="none") + ax.plot(x, y_min, "v", label="min", mfc="none") + + if len(y_stdev) > 0: + ax.plot(x, y_stdev, "+", label="stdev", c="m") ax.grid(alpha=0.4) - ax.legend(loc='best') - - if x_label!=None: ax.set_xlabel(x_label) - if y_label!=None: ax.set_ylabel(y_label) - if title!=None: ax.set_title(title) - + ax.legend(loc="best") + + if x_label: + ax.set_xlabel(x_label) + if y_label: + ax.set_ylabel(y_label) + if title: + ax.set_title(title) + fig.tight_layout() - - if save_path==None: plt.show() - else: + + if save_path is None: + plt.show() + else: fig.savefig(save_path) plt.close() return ax -def plot_bin_statistics(bin_centers, bin_mean,bin_max, bin_min, - bin_mean_std, bin_max_std, bin_min_std, - **kwargs): - ''' +# pylint: disable=R0913 +def plot_bin_statistics( + bin_centers: np.ndarray, + bin_mean: np.ndarray, + bin_max: np.ndarray, + bin_min: np.ndarray, + bin_mean_std: np.ndarray, + bin_max_std: np.ndarray, + bin_min_std: np.ndarray, + **kwargs: Dict[str, Any], +) -> plt.Axes: + """ Plot showing standard binned statistics of single variable Parameters @@ -95,7 +142,7 @@ def plot_bin_statistics(bin_centers, bin_mean,bin_max, bin_min, Standard deviations of max binned statistics bin_min_std : numpy array Standard deviations of min binned statistics - **kwargs : optional + **kwargs : optional x_label : string x axis label for plot y_label : string @@ -108,55 +155,99 @@ def plot_bin_statistics(bin_centers, bin_mean,bin_max, bin_min, Returns -------- ax : matplotlib pyplot axes - ''' - - try: bin_centers = np.asarray(bin_centers) - except: 'bin_centers must be of type np.ndarray' - - try: bin_mean = np.asarray(bin_mean) - except: 'bin_mean must be of type np.ndarray' - try: bin_max = np.asarray(bin_max) - except:'bin_max must be of type np.ndarray' - try: bin_min = np.asarray(bin_min) - except: 'bin_min must be of type type np.ndarray' - - try: bin_mean_std = np.asarray(bin_mean_std) - except: 'bin_mean_std must be of type np.ndarray' - try: bin_max_std = np.asarray(bin_max_std) - except: 'bin_max_std must be of type np.ndarray' - try: bin_min_std = np.asarray(bin_min_std) - except: 'bin_min_std must be of type np.ndarray' - - x_label = kwargs.get("x_label", None) - y_label = kwargs.get("y_label", None) - title = kwargs.get("title", None) + """ + + input_variables = [ + bin_centers, + bin_mean, + bin_max, + bin_min, + bin_mean_std, + bin_max_std, + bin_min_std, + ] + variable_names = [ + "bin_centers", + "bin_mean", + "bin_max", + "bin_min", + "bin_mean_std", + "bin_max_std", + "bin_min_std", + ] + + # Convert each input variable to a numeric array, ensuring all are numeric + for i, variable in enumerate(input_variables): + input_variables[i] = to_numeric_array(variable, variable_names[i]) + + ( + bin_centers, + bin_mean, + bin_max, + bin_min, + bin_mean_std, + bin_max_std, + bin_min_std, + ) = input_variables + + x_label = kwargs.get("x_label", None) + y_label = kwargs.get("y_label", None) + title = kwargs.get("title", None) save_path = kwargs.get("save_path", None) - - assert isinstance(x_label, (str, type(None))), 'x_label must be of type str' - assert isinstance(y_label, (str, type(None))), 'y_label must be of type str' - assert isinstance(title, (str, type(None))), 'title must be of type str' - assert isinstance(save_path, (str, type(None))), 'save_path must be of type str' - - fig, ax = plt.subplots(figsize=(7,5)) - ax.errorbar(bin_centers,bin_max,marker='^',mfc='none', - yerr=bin_max_std,capsize=4,label='max') - ax.errorbar(bin_centers,bin_mean,marker='o',mfc='none', - yerr=bin_mean_std,capsize=4,label='mean') - ax.errorbar(bin_centers,bin_min,marker='v',mfc='none', - yerr=bin_min_std,capsize=4,label='min') - + + if not isinstance(x_label, (str, type(None))): + raise TypeError(f"x_label must be of type str. Got: {type(x_label)}") + if not isinstance(y_label, (str, type(None))): + raise TypeError(f"y_label must be of type str. Got: {type(y_label)}") + if not isinstance(title, (str, type(None))): + raise TypeError(f"title must be of type str. Got: {type(title)}") + if not isinstance(save_path, (str, type(None))): + raise TypeError(f"save_path must be of type str. Got: {type(save_path)}") + + fig, ax = plt.subplots(figsize=(7, 5)) + ax.errorbar( + bin_centers, + bin_max, + marker="^", + mfc="none", + yerr=bin_max_std, + capsize=4, + label="max", + ) + ax.errorbar( + bin_centers, + bin_mean, + marker="o", + mfc="none", + yerr=bin_mean_std, + capsize=4, + label="mean", + ) + ax.errorbar( + bin_centers, + bin_min, + marker="v", + mfc="none", + yerr=bin_min_std, + capsize=4, + label="min", + ) + ax.grid(alpha=0.5) - ax.legend(loc='best') - - if x_label!=None: ax.set_xlabel(x_label) - if y_label!=None: ax.set_ylabel(y_label) - if title!=None: ax.set_title(title) - + ax.legend(loc="best") + + if x_label: + ax.set_xlabel(x_label) + if y_label: + ax.set_ylabel(y_label) + if title: + ax.set_title(title) + fig.tight_layout() - - if save_path==None: plt.show() - else: + + if save_path is None: + plt.show() + else: fig.savefig(save_path) plt.close() return ax - diff --git a/mhkit/mooring/graphics.py b/mhkit/mooring/graphics.py index a8dc678df..389953c45 100644 --- a/mhkit/mooring/graphics.py +++ b/mhkit/mooring/graphics.py @@ -29,8 +29,22 @@ from matplotlib.animation import FuncAnimation -def animate(dsani, dimension='2d', xaxis='x', yaxis='z', zaxis='y', xlim=None, ylim=None, zlim=None, - interval=10, repeat=False, xlabel=None, ylabel=None, zlabel=None, title=None): +def animate( + dsani, + dimension="2d", + xaxis="x", + yaxis="z", + zaxis="y", + xlim=None, + ylim=None, + zlim=None, + interval=10, + repeat=False, + xlabel=None, + ylabel=None, + zlabel=None, + title=None, +): """ Graphics function that creates a 2D or 3D animation of the node positions of a mooring line over time. @@ -73,25 +87,26 @@ def animate(dsani, dimension='2d', xaxis='x', yaxis='z', zaxis='y', xlim=None, y Raises ------ TypeError - Checks for correct input types for dsani, dimension, xaxis, yaxis, zaxis, xlim, ylim, + Checks for correct input types for dsani, dimension, xaxis, yaxis, zaxis, xlim, ylim, zlim, interval, repeat, xlabel, ylabel, zlabel, and title """ - _validate_input(dsani, xlim, ylim, interval, repeat, - xlabel, ylabel, title, dimension) - if dimension == '3d': + _validate_input( + dsani, xlim, ylim, interval, repeat, xlabel, ylabel, title, dimension + ) + if dimension == "3d": if not isinstance(zlim, (list, type(None))): - raise TypeError('zlim must be of type list') + raise TypeError("zlim must be of type list") if not isinstance(zlabel, (str, type(None))): - raise TypeError('zlabel must be of type str') + raise TypeError("zlabel must be of type str") if not isinstance(xaxis, str): - raise TypeError('xaxis must be of type str') + raise TypeError("xaxis must be of type str") if not isinstance(yaxis, str): - raise TypeError('yaxis must be of type str') + raise TypeError("yaxis must be of type str") if not isinstance(zaxis, str): - raise TypeError('zaxis must be of type str') + raise TypeError("zaxis must be of type str") current_idx = list(dsani.dims.mapping.keys())[0] - dsani = dsani.rename({current_idx: 'time'}) + dsani = dsani.rename({current_idx: "time"}) nodes_x, nodes_y, nodes_z = _get_axis_nodes(dsani, xaxis, yaxis, zaxis) @@ -99,18 +114,18 @@ def animate(dsani, dimension='2d', xaxis='x', yaxis='z', zaxis='y', xlim=None, y xlim = _find_limits(dsani[nodes_x]) if not ylim: ylim = _find_limits(dsani[nodes_y]) - if dimension == '3d' and not zlim: + if dimension == "3d" and not zlim: zlim = _find_limits(dsani[nodes_z]) fig = plt.figure() - if dimension == '3d': - ax = fig.add_subplot(projection='3d') + if dimension == "3d": + ax = fig.add_subplot(projection="3d") else: ax = fig.add_subplot() ax.grid() - if dimension == '2d': - ln, = ax.plot([], [], '-o') + if dimension == "2d": + (ln,) = ax.plot([], [], "-o") def init(): ax.set(xlim=xlim, ylim=ylim) @@ -122,8 +137,8 @@ def update(frame): y = dsani[nodes_y].isel(time=frame).to_array().values ln.set_data(x, y) - elif dimension == '3d': - ln, = ax.plot([], [], [], '-o') + elif dimension == "3d": + (ln,) = ax.plot([], [], [], "-o") def init(): ax.set(xlim3d=xlim, ylim3d=ylim, zlim3d=zlim) @@ -137,33 +152,41 @@ def update(frame): ln.set_data(x, y) ln.set_3d_properties(z) - ani = FuncAnimation(fig, update, frames=len(dsani.time), - init_func=init, interval=interval, repeat=repeat) + ani = FuncAnimation( + fig, + update, + frames=len(dsani.time), + init_func=init, + interval=interval, + repeat=repeat, + ) return ani -def _validate_input(dsani, xlim, ylim, interval, repeat, xlabel, ylabel, title, dimension): +def _validate_input( + dsani, xlim, ylim, interval, repeat, xlabel, ylabel, title, dimension +): """ Validate common input parameters for animate function. """ if not isinstance(dsani, xr.Dataset): - raise TypeError('dsani must be of type xr.Dataset') + raise TypeError("dsani must be of type xr.Dataset") if not isinstance(xlim, (list, type(None))): - raise TypeError('xlim must be of type list') + raise TypeError("xlim must be of type list") if not isinstance(ylim, (list, type(None))): - raise TypeError('ylim must be of type list') + raise TypeError("ylim must be of type list") if not isinstance(interval, int): - raise TypeError('interval must be of type int') + raise TypeError("interval must be of type int") if not isinstance(repeat, bool): - raise TypeError('repeat must be of type bool') + raise TypeError("repeat must be of type bool") if not isinstance(xlabel, (str, type(None))): - raise TypeError('xlabel must be of type str') + raise TypeError("xlabel must be of type str") if not isinstance(ylabel, (str, type(None))): - raise TypeError('ylabel must be of type str') + raise TypeError("ylabel must be of type str") if not isinstance(title, (str, type(None))): - raise TypeError('title must be of type str') - if dimension not in ['2d', '3d']: + raise TypeError("title must be of type str") + if dimension not in ["2d", "3d"]: raise ValueError('dimension must be either "2d" or "3d"') @@ -191,10 +214,10 @@ def _get_axis_nodes(dsani, xaxis, yaxis, zaxis): nodesZ : list List of nodes along the z-axis """ - nodes = [s for s in list(dsani.data_vars) if 'Node' in s] - nodes_x = [s for s in nodes if f'p{xaxis}' in s] - nodes_y = [s for s in nodes if f'p{yaxis}' in s] - nodes_z = [s for s in nodes if f'p{zaxis}' in s] + nodes = [s for s in list(dsani.data_vars) if "Node" in s] + nodes_x = [s for s in nodes if f"p{xaxis}" in s] + nodes_y = [s for s in nodes if f"p{yaxis}" in s] + nodes_z = [s for s in nodes if f"p{zaxis}" in s] return nodes_x, nodes_y, nodes_z @@ -213,9 +236,9 @@ def _find_limits(dataset): Min and max plot limits for axis """ x_1 = dataset.min().to_array().min().values - x_1 = x_1 - abs(x_1*0.1) + x_1 = x_1 - abs(x_1 * 0.1) x_2 = dataset.max().to_array().max().values - x_2 = x_2 + abs(x_2*0.1) + x_2 = x_2 + abs(x_2 * 0.1) return [x_1, x_2] diff --git a/mhkit/mooring/io.py b/mhkit/mooring/io.py index bb5715193..a85c92358 100644 --- a/mhkit/mooring/io.py +++ b/mhkit/mooring/io.py @@ -16,15 +16,16 @@ dataset = read_moordyn(filepath="FAST.MD.out", input_file="FAST.MD.input") """ + import os import pandas as pd def read_moordyn(filepath, input_file=None): """ - Reads in MoorDyn OUT files such as "FAST.MD.out" and - "FAST.MD.Line1.out" and stores inside xarray. Also allows for - parsing and storage of MoorDyn input file as attributes inside + Reads in MoorDyn OUT files such as "FAST.MD.out" and + "FAST.MD.Line1.out" and stores inside xarray. Also allows for + parsing and storage of MoorDyn input file as attributes inside the xarray. Parameters @@ -45,15 +46,16 @@ def read_moordyn(filepath, input_file=None): Checks for correct input types for filepath and input_file """ if not isinstance(filepath, str): - raise TypeError('filepath must be of type str') + raise TypeError("filepath must be of type str") if input_file: if not isinstance(input_file, str): - raise TypeError('input_file must be of type str') + raise TypeError("input_file must be of type str") if not os.path.isfile(filepath): raise FileNotFoundError(f"No file found at provided path: {filepath}") - data = pd.read_csv(filepath, header=0, skiprows=[ - 1], sep=' ', skipinitialspace=True, index_col=0) + data = pd.read_csv( + filepath, header=0, skiprows=[1], sep=" ", skipinitialspace=True, index_col=0 + ) data = data.dropna(axis=1) dataset = data.to_xarray() @@ -80,11 +82,13 @@ def _moordyn_input(input_file, dataset): return Dataset that includes input file parameters as attributes """ - with open(input_file, 'r', encoding='utf-8') as moordyn_file: - for line in moordyn_file: # loop through each line in the file + with open(input_file, "r", encoding="utf-8") as moordyn_file: + for line in moordyn_file: # loop through each line in the file # get line type property sets - if line.count('---') > 0 and (line.upper().count('LINE DICTIONARY') > 0 or - line.upper().count('LINE TYPES') > 0): + if line.count("---") > 0 and ( + line.upper().count("LINE DICTIONARY") > 0 + or line.upper().count("LINE TYPES") > 0 + ): linetypes = dict() # skip this header line, plus channel names and units lines line = next(moordyn_file) @@ -92,19 +96,21 @@ def _moordyn_input(input_file, dataset): line = next(moordyn_file) units = line.split() line = next(moordyn_file) - while line.count('---') == 0: + while line.count("---") == 0: entries = line.split() linetypes[entries[0]] = dict() for x in range(1, len(entries)): linetypes[entries[0]][variables[x]] = entries[x] line = next(moordyn_file) - linetypes['units'] = units[1:] - dataset.attrs['LINE_TYPES'] = linetypes + linetypes["units"] = units[1:] + dataset.attrs["LINE_TYPES"] = linetypes # get properties of each Point - if line.count('---') > 0 and (line.upper().count('POINTS') > 0 - or line.upper().count('POINT LIST') > 0 - or line.upper().count('POINT PROPERTIES') > 0): + if line.count("---") > 0 and ( + line.upper().count("POINTS") > 0 + or line.upper().count("POINT LIST") > 0 + or line.upper().count("POINT PROPERTIES") > 0 + ): # skip this header line, plus channel names and units lines line = next(moordyn_file) variables = line.split() @@ -112,19 +118,21 @@ def _moordyn_input(input_file, dataset): units = line.split() line = next(moordyn_file) points = dict() - while line.count('---') == 0: + while line.count("---") == 0: entries = line.split() points[entries[0]] = dict() for x in range(1, len(entries)): points[entries[0]][variables[x]] = entries[x] line = next(moordyn_file) - points['units'] = units[1:] - dataset.attrs['POINTS'] = points + points["units"] = units[1:] + dataset.attrs["POINTS"] = points # get properties of each line - if line.count('---') > 0 and (line.upper().count('LINES') > 0 - or line.upper().count('LINE LIST') > 0 - or line.upper().count('LINE PROPERTIES') > 0): + if line.count("---") > 0 and ( + line.upper().count("LINES") > 0 + or line.upper().count("LINE LIST") > 0 + or line.upper().count("LINE PROPERTIES") > 0 + ): # skip this header line, plus channel names and units lines line = next(moordyn_file) variables = line.split() @@ -132,24 +140,24 @@ def _moordyn_input(input_file, dataset): units = line.split() line = next(moordyn_file) lines = {} - while line.count('---') == 0: + while line.count("---") == 0: entries = line.split() lines[entries[0]] = dict() for x in range(1, len(entries)): lines[entries[0]][variables[x]] = entries[x] line = next(moordyn_file) - lines['units'] = units[1:] - dataset.attrs['LINES'] = lines + lines["units"] = units[1:] + dataset.attrs["LINES"] = lines # get options entries - if line.count('---') > 0 and "options" in line.lower(): + if line.count("---") > 0 and "options" in line.lower(): line = next(moordyn_file) # skip this header line options = {} - while line.count('---') == 0: + while line.count("---") == 0: entries = line.split() options[entries[1]] = entries[0] line = next(moordyn_file) - dataset.attrs['OPTIONS'] = options + dataset.attrs["OPTIONS"] = options moordyn_file.close() diff --git a/mhkit/mooring/main.py b/mhkit/mooring/main.py index c4221a850..a5ebeafa4 100644 --- a/mhkit/mooring/main.py +++ b/mhkit/mooring/main.py @@ -27,40 +27,41 @@ def lay_length(dataset, depth, tolerance=0.25): Checks for correct input types for ds, depth, and tolerance """ if not isinstance(dataset, xr.Dataset): - raise TypeError('dataset must be of type xr.Dataset') + raise TypeError("dataset must be of type xr.Dataset") if not isinstance(depth, (float, int)): - raise TypeError('depth must be of type float or int') + raise TypeError("depth must be of type float or int") if not isinstance(tolerance, (float, int)): - raise TypeError('tolerance must be of type float or int') + raise TypeError("tolerance must be of type float or int") # get channel names chans = list(dataset.keys()) - nodes_x = [x for x in chans if 'x' in x] - nodes_y = [y for y in chans if 'y' in y] - nodes_z = [z for z in chans if 'z' in z] + nodes_x = [x for x in chans if "x" in x] + nodes_y = [y for y in chans if "y" in y] + nodes_z = [z for z in chans if "z" in z] # check if the dataset contains the necessary 'x', 'y', 'z' nodes if not nodes_x or not nodes_y or not nodes_z: - raise ValueError('The dataset must contain x, y, and z node data') + raise ValueError("The dataset must contain x, y, and z node data") if len(nodes_z) < 3: raise ValueError( - 'This function requires at least 3 nodes to calculate lay length') + "This function requires at least 3 nodes to calculate lay length" + ) # find name of first z point where tolerance is exceeded - laypoint = dataset[nodes_z].where(dataset[nodes_z] > depth+abs(tolerance)) + laypoint = dataset[nodes_z].where(dataset[nodes_z] > depth + abs(tolerance)) laypoint = laypoint.to_dataframe().dropna(axis=1).columns[0] # get previous z-point lay_indx = nodes_z.index(laypoint) - 1 lay_z = nodes_z[lay_indx] # get corresponding x-point and y-point node names - lay_x = lay_z[:-1] + 'x' - lay_y = lay_z[:-1] + 'y' + lay_x = lay_z[:-1] + "x" + lay_y = lay_z[:-1] + "y" lay_0x = nodes_x[0] lay_0y = nodes_y[0] # find distance between initial point and lay point laylength_x = dataset[lay_x] - dataset[lay_0x] laylength_y = dataset[lay_y] - dataset[lay_0y] - line_lay_length = (laylength_x**2 + laylength_y**2) ** (1/2) + line_lay_length = (laylength_x**2 + laylength_y**2) ** (1 / 2) return line_lay_length diff --git a/mhkit/power/__init__.py b/mhkit/power/__init__.py index 0056a8f31..5cae03212 100644 --- a/mhkit/power/__init__.py +++ b/mhkit/power/__init__.py @@ -1,3 +1,6 @@ +""" +Power Module +""" + from mhkit.power import quality from mhkit.power import characteristics - diff --git a/mhkit/power/characteristics.py b/mhkit/power/characteristics.py index 08578f984..0ae45a789 100644 --- a/mhkit/power/characteristics.py +++ b/mhkit/power/characteristics.py @@ -1,112 +1,252 @@ +""" +This module contains functions for calculating electrical power metrics from +measured voltage and current data. It supports both direct current (DC) and +alternating current (AC) calculations, including instantaneous frequency +analysis for AC signals and power calculations for three-phase AC systems. +The calculations can accommodate both line-to-neutral and line-to-line voltage +measurements and offer flexibility in output formats, allowing results to be +saved as either pandas DataFrames or xarray Datasets. + +Functions: + instantaneous_frequency: Calculates the instantaneous frequency of a measured + voltage signal over time. + + dc_power: Computes the DC power from voltage and current measurements, providing + both individual channel outputs and a gross power calculation. + + ac_power_three_phase: Calculates the magnitude of active AC power for three-phase + systems, considering the power factor and voltage measurement configuration + (line-to-neutral or line-to-line). +""" + +from typing import Union import pandas as pd +import xarray as xr import numpy as np from scipy.signal import hilbert -import datetime +from mhkit.utils import convert_to_dataset -def instantaneous_frequency(um): +def instantaneous_frequency( + measured_voltage: Union[pd.Series, pd.DataFrame, xr.DataArray, xr.Dataset], + time_dimension: str = "", + to_pandas: bool = True, +) -> Union[pd.DataFrame, xr.Dataset]: """ Calculates instantaneous frequency of measured voltage - - + Parameters ----------- - um: pandas Series or DataFrame - Measured voltage (V) indexed by time + measured_voltage: pandas Series, pandas DataFrame, xarray DataArray, + or xarray Dataset Measured voltage (V) indexed by time + + time_dimension: string (optional) + Name of the xarray dimension corresponding to time. If not supplied, + defaults to the first dimension. Does not affect pandas input. + + to_pandas: bool (Optional) + Flag to save output to pandas instead of xarray. Default = True. - Returns --------- - frequency: pandas DataFrame - Frequency of the measured voltage (Hz) indexed by time + frequency: pandas DataFrame or xarray Dataset + Frequency of the measured voltage (Hz) indexed by time with signal name columns - """ - assert isinstance(um, (pd.Series, pd.DataFrame)), 'um must be of type pd.Series or pd.DataFrame' - - if isinstance(um.index[0], datetime.datetime): - t = (um.index - datetime.datetime(1970,1,1)).total_seconds() + """ + if not isinstance( + measured_voltage, (pd.Series, pd.DataFrame, xr.DataArray, xr.Dataset) + ): + raise TypeError( + "measured_voltage must be of type pd.Series, pd.DataFrame, " + + f"xr.DataArray, or xr.Dataset. Got {type(measured_voltage)}" + ) + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + if not isinstance(time_dimension, str): + raise TypeError( + f"time_dimension must be of type bool. Got: {type(time_dimension)}" + ) + + # Convert input to xr.Dataset + measured_voltage = convert_to_dataset(measured_voltage, "data") + + if time_dimension != "" and time_dimension not in measured_voltage.coords: + raise ValueError( + "time_dimension was supplied but is not a dimension " + + f"of measured_voltage. Got {time_dimension}" + ) + + # Get the dimension of interest + if time_dimension == "": + time_dimension = list(measured_voltage.coords)[0] + + # Calculate time step + if isinstance(measured_voltage.coords[time_dimension].values[0], np.datetime64): + time = ( + measured_voltage[time_dimension] - np.datetime64("1970-01-01 00:00:00") + ) / np.timedelta64(1, "s") else: - t = um.index + time = measured_voltage[time_dimension] + d_t = np.diff(time) + + # Calculate frequency + frequency = xr.Dataset() + for var in measured_voltage.data_vars: + freq = hilbert(measured_voltage[var]) + instantaneous_phase = np.unwrap(np.angle(freq)) + f_instantaneous = np.diff(instantaneous_phase) / (2.0 * np.pi) * (1 / d_t) - dt = pd.Series(t).diff()[1:] + frequency = frequency.assign({var: (time_dimension, f_instantaneous)}) + frequency = frequency.assign_coords( + {time_dimension: measured_voltage.coords[time_dimension].values[0:-1]} + ) - if isinstance(um,pd.Series): - um = um.to_frame() + if to_pandas: + frequency = frequency.to_pandas() - columns = um.columns - frequency=pd.DataFrame(columns=columns) - for column in um.columns: - f = hilbert(um[column]) - instantaneous_phase = np.unwrap(np.angle(f)) - instantaneous_frequency = np.diff(instantaneous_phase) /(2.0*np.pi) * (1/dt) - frequency[column] = instantaneous_frequency - return frequency -def dc_power(voltage, current): + +def dc_power( + voltage: Union[pd.Series, pd.DataFrame, xr.DataArray, xr.Dataset], + current: Union[pd.Series, pd.DataFrame, xr.DataArray, xr.Dataset], + to_pandas: bool = True, +) -> Union[pd.DataFrame, xr.Dataset]: """ Calculates DC power from voltage and current Parameters ----------- - voltage: pandas Series or DataFrame + voltage: pandas Series, pandas DataFrame, xarray DataArray, or xarray Dataset Measured DC voltage [V] indexed by time - current: pandas Series or DataFrame + + current: pandas Series, pandas DataFrame, xarray DataArray, or xarray Dataset Measured three phase current [A] indexed by time - + + to_pandas: bool (Optional) + Flag to save output to pandas instead of xarray. Default = True. + Returns -------- - P: pandas DataFrame + power_dc: pandas DataFrame or xarray Dataset DC power [W] from each channel and gross power indexed by time """ - assert isinstance(voltage, (pd.Series, pd.DataFrame)), 'voltage must be of type pd.Series or pd.DataFrame' - assert isinstance(current, (pd.Series, pd.DataFrame)), 'current must be of type pd.Series or pd.DataFrame' - assert voltage.shape == current.shape, 'current and volatge must have the same shape' - - - P = current.values * voltage.values - P = pd.DataFrame(P) - P['Gross'] = P.sum(axis=1, skipna=True) + if not isinstance(voltage, (pd.Series, pd.DataFrame, xr.DataArray, xr.Dataset)): + raise TypeError( + "voltage must be of type pd.Series, pd.DataFrame, " + + f"xr.DataArray, or xr.Dataset. Got {type(voltage)}" + ) + if not isinstance(current, (pd.Series, pd.DataFrame, xr.DataArray, xr.Dataset)): + raise TypeError( + "current must be of type pd.Series, pd.DataFrame, " + + f"xr.DataArray, or xr.Dataset. Got {type(current)}" + ) + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + + # Convert inputs to xr.Dataset + voltage = convert_to_dataset(voltage, "voltage") + current = convert_to_dataset(current, "current") - return P + # Check that sizes are the same + if not ( + voltage.sizes == current.sizes + and len(voltage.data_vars) == len(current.data_vars) + ): + raise ValueError("current and voltage must have the same shape") -def ac_power_three_phase(voltage, current, power_factor, line_to_line=False): + power_dc = xr.Dataset() + gross = None + + # Multiply current and voltage variables together, in order they're assigned + for i, (current_var, voltage_var) in enumerate( + zip(current.data_vars, voltage.data_vars) + ): + temp = current[current_var] * voltage[voltage_var] + power_dc = power_dc.assign({f"{i}": temp}) + if gross is None: + gross = temp + else: + gross = gross + temp + + power_dc = power_dc.assign({"Gross": gross}) + + if to_pandas: + power_dc = power_dc.to_dataframe() + + return power_dc + + +def ac_power_three_phase( + voltage: Union[pd.Series, pd.DataFrame, xr.DataArray, xr.Dataset], + current: Union[pd.Series, pd.DataFrame, xr.DataArray, xr.Dataset], + power_factor: float, + line_to_line: bool = False, + to_pandas: bool = True, +) -> Union[pd.DataFrame, xr.Dataset]: """ - Calculates magnitude of active AC power from line to neutral voltage and current + Calculates magnitude of active AC power from line to neutral voltage and current Parameters ----------- - voltage: pandas DataFrame - Time-series of three phase measured voltage [V] indexed by time - current: pandas DataFrame - Time-series of three phase measured current [A] indexed by time - power_factor: float + voltage: pandas Series, pandas DataFrame, xarray DataArray, or xarray Dataset + Measured DC voltage [V] indexed by time + + current: pandas Series, pandas DataFrame, xarray DataArray, or xarray Dataset + Measured three phase current [A] indexed by time + + power_factor: float Power factor for the efficiency of the system - line_to_line: bool + + line_to_line: bool (Optional) Set to true if the given voltage measurements are line_to_line - + + to_pandas: bool (Optional) + Flag to save output to pandas instead of xarray. Default = True. + Returns -------- - P: pandas DataFrame - Magnitude of active AC power [W] indexed by time with Power column + power_ac: pandas DataFrame or xarray Dataset + Magnitude of active AC power [W] indexed by time with Power column """ - assert isinstance(voltage, pd.DataFrame), 'voltage must be of type pd.DataFrame' - assert isinstance(current, pd.DataFrame), 'current must be of type pd.DataFrame' - assert len(voltage.columns) == 3, 'voltage must have three columns' - assert len(current.columns) == 3, 'current must have three columns' - assert current.shape == voltage.shape, 'current and voltage must be of the same size' - + if not isinstance(voltage, (pd.Series, pd.DataFrame, xr.DataArray, xr.Dataset)): + raise TypeError( + "voltage must be of type pd.Series, pd.DataFrame, " + + f"xr.DataArray, or xr.Dataset. Got {type(voltage)}" + ) + if not isinstance(current, (pd.Series, pd.DataFrame, xr.DataArray, xr.Dataset)): + raise TypeError( + "current must be of type pd.Series, pd.DataFrame, " + + f"xr.DataArray, or xr.Dataset. Got {type(current)}" + ) + if not isinstance(line_to_line, bool): + raise TypeError(f"line_to_line must be of type bool. Got: {type(line_to_line)}") + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + + # Convert inputs to xr.Dataset + voltage = convert_to_dataset(voltage, "voltage") + current = convert_to_dataset(current, "current") - abs_current = np.abs(current.values) - abs_voltage = np.abs(voltage.values) + # Check that sizes are the same + if len(voltage.data_vars) != 3: + raise ValueError("voltage must have three columns") + if len(current.data_vars) != 3: + raise ValueError("current must have three columns") + if current.sizes != voltage.sizes: + raise ValueError("current and voltage must be of the same size") + + power = dc_power(voltage, current, to_pandas=False)["Gross"] + power.name = "Power" + power = ( + power.to_dataset() + ) # force xr.DataArray to be consistently in xr.Dataset format + power_ac = np.abs(power) * power_factor if line_to_line: - power = abs_current * (abs_voltage * np.sqrt(3)) - else: - power = abs_current * abs_voltage - - power = pd.DataFrame(power) - P = power.sum(axis=1) * power_factor - P = P.to_frame('Power') - - return P + power_ac = power_ac * np.sqrt(3) + + if to_pandas: + power_ac = power_ac.to_pandas() + + return power_ac diff --git a/mhkit/power/quality.py b/mhkit/power/quality.py index 27f89c20f..8f830348d 100644 --- a/mhkit/power/quality.py +++ b/mhkit/power/quality.py @@ -1,208 +1,378 @@ +""" +This module contains functions for calculating various aspects of power quality, +particularly focusing on the analysis of harmonics and interharmonics in electrical +power systems. These functions are designed to assist in power quality assessments +by providing tools to analyze voltage and current signals for their harmonic +and interharmonic components based on the guidelines and methodologies +outlined in IEC 61000-4-7. + +Functions in this module include: + +- harmonics: Calculates the harmonics from time series of voltage or current. + This function returns the amplitude of the time-series data harmonics indexed by + the harmonic frequency, aiding in the identification of harmonic distortions + within the power system. + +- harmonic_subgroups: Computes the harmonic subgroups as per IEC 61000-4-7 standards. + Harmonic subgroups provide insights into the distribution of power across + different harmonic frequencies, which is crucial for understanding the behavior + of non-linear loads and their impact on the power quality. + +- total_harmonic_current_distortion (THCD): Determines the total harmonic current + distortion, offering a summary metric that quantifies the overall level of + harmonic distortion present in the current waveform. This metric is essential + for assessing compliance with power quality standards and guidelines. + +- interharmonics: Identifies and calculates the interharmonics present in the + power system. Interharmonics, which are frequencies that occur between the + fundamental and harmonic frequencies, can arise from various sources and + potentially lead to power quality issues. +""" + +from typing import Union import pandas as pd import numpy as np -import scipy.integrate as integrate -from scipy.optimize import fsolve -from scipy.signal import hilbert -from scipy import signal, fft, fftpack +from scipy import fftpack +import xarray as xr +from mhkit.utils import convert_to_dataset -#This group of functions are to be used for power quality assessments - -def harmonics(x,freq,grid_freq): +def harmonics( + signal_data: Union[pd.Series, pd.DataFrame, xr.DataArray, xr.Dataset], + freq: Union[float, int], + grid_freq: int, + to_pandas: bool = True, +) -> Union[pd.DataFrame, xr.Dataset]: """ - Calculates the harmonics from time series of voltage or current based on IEC 61000-4-7. + Calculates the harmonics from time series of voltage or current based on IEC 61000-4-7. Parameters ----------- - x: pandas Series or DataFrame + signal_data: pandas Series, pandas DataFrame, xarray DataArray, or xarray Dataset Time-series of voltage [V] or current [A] - + freq: float or Int Frequency of the time-series data [Hz] - + grid_freq: int Value indicating if the power supply is 50 or 60 Hz. Options = 50 or 60 - - + + to_pandas: bool (Optional) + Flag to save output to pandas instead of xarray. Default = True. + Returns -------- - harmonics: pandas DataFrame - Amplitude of the time-series data harmonics indexed by the harmonic + harmonic_amplitudes: pandas DataFrame or xarray Dataset + Amplitude of the time-series data harmonics indexed by the harmonic frequency with signal name columns """ - assert isinstance(x, (pd.Series, pd.DataFrame)), 'Provided voltage or current must be of type pd.DataFrame or pd.Series' - assert isinstance(freq, (float, int)), 'freq must be of type float or integer' - assert (grid_freq == 50 or grid_freq == 60), 'grid_freq must be either 50 or 60' + if not isinstance(signal_data, (pd.Series, pd.DataFrame, xr.DataArray, xr.Dataset)): + raise TypeError( + "signal_data must be of type pd.Series, pd.DataFrame, " + + f"xr.DataArray, or xr.Dataset. Got {type(signal_data)}" + ) + + if not isinstance(freq, (float, int)): + raise TypeError(f"freq must be of type float or integer. Got {type(freq)}") - # Check if x is a DataFrame - if isinstance(x, (pd.DataFrame)) == True: - cols = x.columns - - x = x.to_numpy() - sample_spacing = 1./freq - frequency_bin_centers = fftpack.fftfreq(len(x), d=sample_spacing) + if grid_freq not in [50, 60]: + raise ValueError(f"grid_freq must be either 50 or 60. Got {grid_freq}") - harmonics_amplitude = np.abs(np.fft.fft(x, axis=0)) + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got {type(to_pandas)}") - harmonics = pd.DataFrame(harmonics_amplitude, index=frequency_bin_centers) - harmonics = harmonics.sort_index() - - # Keep the signal name as the column name - if 'cols' in locals(): - harmonics.columns = cols + # Convert input to xr.Dataset + signal_data = convert_to_dataset(signal_data, "data") - if grid_freq == 60: - hz = np.arange(0,3060,5) - elif grid_freq == 50: - hz = np.arange(0,2570,5) + sample_spacing = 1.0 / freq + # Loop through all variables in signal_data + harmonic_amplitudes = xr.Dataset() + for var in signal_data.data_vars: + dataarray = signal_data[var] + dataarray = dataarray.to_numpy() - harmonics = harmonics.reindex(hz, method='nearest') - harmonics = harmonics/len(x)*2 + frequency_bin_centers = fftpack.fftfreq(len(dataarray), d=sample_spacing) + harmonics_amplitude = np.abs(np.fft.fft(dataarray, axis=0)) + + harmonic_amplitudes = harmonic_amplitudes.assign( + {var: (["frequency"], harmonics_amplitude)} + ) + harmonic_amplitudes = harmonic_amplitudes.assign_coords( + {"frequency": frequency_bin_centers} + ) + harmonic_amplitudes = harmonic_amplitudes.sortby("frequency") + + if grid_freq == 60: + hertz = np.arange(0, 3060, 5) + elif grid_freq == 50: + hertz = np.arange(0, 2570, 5) - - return harmonics + harmonic_amplitudes = harmonic_amplitudes.reindex( + {"frequency": hertz}, method="nearest" + ) + harmonic_amplitudes = ( + harmonic_amplitudes / len(signal_data[list(signal_data.dims)[0]]) * 2 + ) + if to_pandas: + harmonic_amplitudes = harmonic_amplitudes.to_pandas() -def harmonic_subgroups(harmonics, grid_freq): + return harmonic_amplitudes + + +def harmonic_subgroups( + harmonic_amplitudes: Union[pd.Series, pd.DataFrame, xr.DataArray, xr.Dataset], + grid_freq: int, + frequency_dimension: str = "", + to_pandas: bool = True, +) -> Union[pd.DataFrame, xr.Dataset]: """ Calculates the harmonic subgroups based on IEC 61000-4-7 Parameters ---------- - harmonics: pandas Series or DataFrame - Harmonic amplitude indexed by the harmonic frequency + harmonic_amplitudes: pandas Series, pandas DataFrame, xarray DataArray, or xarray Dataset + Harmonic amplitude indexed by the harmonic frequency + grid_freq: int Value indicating if the power supply is 50 or 60 Hz. Options = 50 or 60 + frequency_dimension: string (optional) + Name of the xarray dimension corresponding to frequency. If not supplied, + defaults to the first dimension. Does not affect pandas input. + + to_pandas: bool (Optional) + Flag to save output to pandas instead of xarray. Default = True. + Returns -------- - harmonic_subgroups: pandas DataFrame - Harmonic subgroups indexed by harmonic frequency + subgroup_results: pandas DataFrame or xarray Dataset + Harmonic subgroups indexed by harmonic frequency with signal name columns - """ - assert isinstance(harmonics, (pd.Series, pd.DataFrame)), 'harmonics must be of type pd.DataFrame or pd.Series' - assert (grid_freq == 50 or grid_freq == 60), 'grid_freq must be either 50 or 60' - - # Check if harmonics is a DataFrame - if isinstance(harmonics, (pd.DataFrame)) == True: - cols = harmonics.columns - - + """ + if not isinstance( + harmonic_amplitudes, (pd.Series, pd.DataFrame, xr.DataArray, xr.Dataset) + ): + raise TypeError( + "harmonic_amplitudes must be of type pd.Series, pd.DataFrame, " + + f"xr.DataArray, or xr.Dataset. Got {type(harmonic_amplitudes)}" + ) + + if grid_freq not in [50, 60]: + raise ValueError(f"grid_freq must be either 50 or 60. Got {grid_freq}") + + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + + if not isinstance(frequency_dimension, str): + raise TypeError( + f"frequency_dimension must be of type str. Got: {type(frequency_dimension)}" + ) + + # Convert input to xr.Dataset + harmonic_amplitudes = convert_to_dataset(harmonic_amplitudes, "harmonic_amplitudes") + + if ( + frequency_dimension != "" + and frequency_dimension not in harmonic_amplitudes.coords + ): + raise ValueError( + "frequency_dimension was supplied but is not a dimension " + + f"of harmonic_amplitudes. Got {frequency_dimension}" + ) + if grid_freq == 60: - - hz = np.arange(0,3060,60) - elif grid_freq == 50: - - hz = np.arange(0,2550,50) - - j=0 - i=0 - cols=harmonics.columns - harmonic_subgroups=np.ones((np.size(hz),np.size(cols))) - for n in hz: - - harmonics=harmonics.sort_index(axis=0) - ind=pd.Index(harmonics.index) - - indn = ind.get_loc(n, method='nearest') - for col in cols: - harmonic_subgroups[i,j] = np.sqrt(np.sum([harmonics[col].iloc[indn-1]**2,harmonics[col].iloc[indn]**2,harmonics[col].iloc[indn+1]**2])) - j=j+1 - j=0 - i=i+1 - - harmonic_subgroups = pd.DataFrame(harmonic_subgroups,index=hz) - - # Keep the signal name as the column name - if 'cols' in locals(): - harmonic_subgroups.columns = cols - - return harmonic_subgroups - -def total_harmonic_current_distortion(harmonics_subgroup,rated_current): + hertz = np.arange(0, 3060, 60) + else: + hertz = np.arange(0, 2550, 50) + + # Sort input data index + if frequency_dimension == "": + frequency_dimension = list(harmonic_amplitudes.dims)[0] + harmonic_amplitudes = harmonic_amplitudes.sortby(frequency_dimension) + + # Loop through all variables in harmonics + subgroup_results = xr.Dataset() + for var in harmonic_amplitudes.data_vars: + dataarray = harmonic_amplitudes[var] + subgroup = np.zeros(np.size(hertz)) + for ihz in np.arange(0, len(hertz)): + current_frequency = hertz[ihz] + ind = dataarray.indexes[frequency_dimension].get_loc(current_frequency) + + data_subset = dataarray.isel({frequency_dimension: [ind - 1, ind, ind + 1]}) + subgroup[ihz] = (data_subset**2).sum() ** 0.5 + + subgroup_results = subgroup_results.assign({var: (["frequency"], subgroup)}) + subgroup_results = subgroup_results.assign_coords({"frequency": hertz}) + + if to_pandas: + subgroup_results = subgroup_results.to_pandas() + + return subgroup_results + + +def total_harmonic_current_distortion( + harmonics_subgroup: Union[pd.Series, pd.DataFrame, xr.DataArray, xr.Dataset], + frequency_dimension: str = "", + to_pandas: bool = True, +) -> Union[pd.DataFrame, xr.Dataset]: """ Calculates the total harmonic current distortion (THC) based on IEC/TS 62600-30 Parameters ---------- - harmonics_subgroup: pandas DataFrame or Series + harmonics_subgroup: pandas Series, pandas DataFrame, xarray DataArray, or xarray Dataset Subgrouped current harmonics indexed by harmonic frequency - - rated_current: float - Rated current of the energy device in Amps - + + frequency_dimension: string (optional) + Name of the xarray dimension corresponding to frequency. If not supplied, + defaults to the first dimension. Does not affect pandas input. + + to_pandas: bool (optional) + Flag to save output to pandas instead of xarray. Default = True. + Returns -------- - THCD: pd.DataFrame - Total harmonic current distortion indexed by signal name with THCD column + thcd_result: pd.DataFrame or xarray Dataset + Total harmonic current distortion indexed by signal name with THCD column """ - assert isinstance(harmonics_subgroup, (pd.Series, pd.DataFrame)), 'harmonic_subgroups must be of type pd.DataFrame or pd.Series' - assert isinstance(rated_current, float), 'rated_current must be a float' - - harmonics_sq = harmonics_subgroup.iloc[2:50]**2 + if not isinstance( + harmonics_subgroup, (pd.Series, pd.DataFrame, xr.DataArray, xr.Dataset) + ): + raise TypeError( + "harmonics_subgroup must be of type pd.Series, pd.DataFrame, " + + f"xr.DataArray, or xr.Dataset. Got {type(harmonics_subgroup)}" + ) + + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + + if not isinstance(frequency_dimension, str): + raise TypeError( + f"frequency_dimension must be of type bool. Got: {type(frequency_dimension)}" + ) + + # Convert input to xr.Dataset + harmonics_subgroup = convert_to_dataset(harmonics_subgroup, "harmonics_subgroup") + + if ( + frequency_dimension != "" + and frequency_dimension not in harmonics_subgroup.coords + ): + raise ValueError( + "frequency_dimension was supplied but is not a dimension " + + f"of harmonics. Got {frequency_dimension}" + ) + + if frequency_dimension == "": + frequency_dimension = list(harmonics_subgroup.dims)[0] + harmonics_sq = harmonics_subgroup.isel({frequency_dimension: slice(2, 50)}) ** 2 + harmonics_sum = harmonics_sq.sum() + + thcd_result = ( + np.sqrt(harmonics_sum) / harmonics_subgroup.isel({frequency_dimension: 1}) + ) * 100 - harmonics_sum=harmonics_sq.sum() + if isinstance(thcd_result, xr.DataArray): + thcd_result.name = ["THCD"] - THCD = (np.sqrt(harmonics_sum)/harmonics_subgroup.iloc[1])*100 - THCD = pd.DataFrame(THCD) # converting to dataframe for Matlab - THCD.columns = ['THCD'] - THCD = THCD.T + if to_pandas: + thcd_result = thcd_result.to_pandas() - return THCD + return thcd_result -def interharmonics(harmonics,grid_freq): + +def interharmonics( + harmonic_amplitudes: Union[pd.Series, pd.DataFrame, xr.DataArray, xr.Dataset], + grid_freq: int, + frequency_dimension: str = "", + to_pandas: bool = True, +) -> Union[pd.DataFrame, xr.Dataset]: """ - Calculates the interharmonics from the harmonics of current + Calculates the interharmonics from the harmonic_amplitudes of current Parameters ----------- - harmonics: pandas Series or DataFrame - Harmonic amplitude indexed by the harmonic frequency + harmonic_amplitudes: pandas Series, pandas DataFrame, xarray DataArray, or xarray Dataset + Harmonic amplitude indexed by the harmonic frequency grid_freq: int Value indicating if the power supply is 50 or 60 Hz. Options = 50 or 60 + frequency_dimension: string (optional) + Name of the xarray dimension corresponding to frequency. If not supplied, + defaults to the first dimension. Does not affect pandas input. + + to_pandas: bool (Optional) + Flag to save output to pandas instead of xarray. Default = True. + Returns ------- - interharmonics: pandas DataFrame + interharmonic_groups: pandas DataFrame or xarray Dataset Interharmonics groups """ - assert isinstance(harmonics, (pd.Series, pd.DataFrame)), 'harmonics must be of type pd.DataFrame or pd.Series' - assert (grid_freq == 50 or grid_freq == 60), 'grid_freq must be either 50 or 60' - + if not isinstance( + harmonic_amplitudes, (pd.Series, pd.DataFrame, xr.DataArray, xr.Dataset) + ): + raise TypeError( + "harmonic_amplitudes must be of type pd.Series, pd.DataFrame, " + + f"xr.DataArray, or xr.Dataset. Got {type(harmonic_amplitudes)}" + ) + + if grid_freq not in [50, 60]: + raise ValueError(f"grid_freq must be either 50 or 60. Got {grid_freq}") + + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + + # Convert input to xr.Dataset + harmonic_amplitudes = convert_to_dataset(harmonic_amplitudes, "harmonic_amplitudes") + + if ( + frequency_dimension != "" + and frequency_dimension not in harmonic_amplitudes.coords + ): + raise ValueError( + "frequency_dimension was supplied but is not a dimension " + + f"of harmonic_amplitudes. Got {frequency_dimension}" + ) if grid_freq == 60: - - hz = np.arange(0,3060,60) - elif grid_freq == 50: - - hz = np.arange(0,2550,50) - - j=0 - i=0 - cols=harmonics.columns - interharmonics=np.ones((np.size(hz),np.size(cols))) - for n in hz: - harmonics=harmonics.sort_index(axis=0) - ind=pd.Index(harmonics.index) - - indn = ind.get_loc(n, method='nearest') - for col in cols: + hertz = np.arange(0, 3060, 60) + elif grid_freq == 50: + hertz = np.arange(0, 2550, 50) + + # Sort input data index + if frequency_dimension == "": + frequency_dimension = list(harmonic_amplitudes.dims)[0] + harmonic_amplitudes = harmonic_amplitudes.sortby(frequency_dimension) + + # Loop through all variables in harmonic_amplitudes + interharmonic_groups = xr.Dataset() + for var in harmonic_amplitudes.data_vars: + dataarray = harmonic_amplitudes[var] + subset = np.zeros(np.size(hertz)) + + for ihz in np.arange(0, len(hertz)): + current_frequency = hertz[ihz] + ind = dataarray.indexes[frequency_dimension].get_loc(current_frequency) + if grid_freq == 60: - subset = harmonics[col].iloc[indn+1:indn+11]**2 - subset = subset.squeeze() - else: - subset = harmonics[col].iloc[indn+1:indn+7]**2 - subset = subset.squeeze() - - interharmonics[i,j] = np.sqrt(np.sum(subset)) - j=j+1 - j=0 - i=i+1 - - - interharmonics = pd.DataFrame(interharmonics,index=hz) - - return interharmonics + data = dataarray.isel({frequency_dimension: slice(ind + 1, ind + 11)}) + subset[ihz] = (data**2).sum() ** 0.5 + else: + data = dataarray.isel({frequency_dimension: slice(ind + 1, ind + 7)}) + subset[ihz] = (data**2).sum() ** 0.5 + + interharmonic_groups = interharmonic_groups.assign( + {var: (["frequency"], subset)} + ) + interharmonic_groups = interharmonic_groups.assign_coords({"frequency": hertz}) + + if to_pandas: + interharmonic_groups = interharmonic_groups.to_pandas() + + return interharmonic_groups diff --git a/mhkit/qc/__init__.py b/mhkit/qc/__init__.py index 841442eca..c325f37f2 100644 --- a/mhkit/qc/__init__.py +++ b/mhkit/qc/__init__.py @@ -1,2 +1,8 @@ -from pecos.monitoring import check_timestamp, check_missing, check_corrupt, \ - check_range, check_delta, check_outlier +from pecos.monitoring import ( + check_timestamp, + check_missing, + check_corrupt, + check_range, + check_delta, + check_outlier, +) diff --git a/mhkit/river/__init__.py b/mhkit/river/__init__.py index 452810833..8406b8cf1 100644 --- a/mhkit/river/__init__.py +++ b/mhkit/river/__init__.py @@ -1,5 +1,4 @@ -from mhkit.river import performance +from mhkit.river import performance from mhkit.river import graphics -from mhkit.river import resource -from mhkit.river import io - +from mhkit.river import resource +from mhkit.river import io diff --git a/mhkit/river/graphics.py b/mhkit/river/graphics.py index 46b621f88..396ce1271 100644 --- a/mhkit/river/graphics.py +++ b/mhkit/river/graphics.py @@ -1,10 +1,10 @@ import numpy as np -import pandas as pd -import matplotlib.pyplot as plt +import xarray as xr +import matplotlib.pyplot as plt +from mhkit.utils import convert_to_dataarray -def _xy_plot(x, y, fmt='.', label=None, xlabel=None, ylabel=None, title=None, - ax=None): +def _xy_plot(x, y, fmt=".", label=None, xlabel=None, ylabel=None, title=None, ax=None): """ Base function to plot any x vs y data @@ -14,241 +14,304 @@ def _xy_plot(x, y, fmt='.', label=None, xlabel=None, ylabel=None, title=None, Data for the x axis of plot y: array-like Data for y axis of plot - + Returns ------- ax : matplotlib.pyplot axes - + """ if ax is None: - plt.figure(figsize=(16,8)) - params = {'legend.fontsize': 'x-large', - 'axes.labelsize': 'x-large', - 'axes.titlesize':'x-large', - 'xtick.labelsize':'x-large', - 'ytick.labelsize':'x-large'} + plt.figure(figsize=(16, 8)) + params = { + "legend.fontsize": "x-large", + "axes.labelsize": "x-large", + "axes.titlesize": "x-large", + "xtick.labelsize": "x-large", + "ytick.labelsize": "x-large", + } plt.rcParams.update(params) ax = plt.gca() - + ax.plot(x, y, fmt, label=label, markersize=7) - + ax.grid() - - if label: ax.legend() - if xlabel: ax.set_xlabel(xlabel) - if ylabel: ax.set_ylabel(ylabel) - if title: ax.set_title(title) - + + if label: + ax.legend() + if xlabel: + ax.set_xlabel(xlabel) + if ylabel: + ax.set_ylabel(ylabel) + if title: + ax.set_title(title) + plt.tight_layout() - + return ax def plot_flow_duration_curve(D, F, label=None, ax=None): """ - Plots discharge vs exceedance probability as a Flow Duration Curve (FDC) - + Plots discharge vs exceedance probability as a Flow Duration Curve (FDC) + Parameters ------------ D: array-like Discharge [m/s] indexed by time - - F: array-like + + F: array-like Exceedance probability [unitless] indexed by time - + label: string Label to use in the legend - + ax : matplotlib axes object - Axes for plotting. If None, then a new figure with a single + Axes for plotting. If None, then a new figure with a single axes is used. - + Returns --------- ax : matplotlib pyplot axes - + """ # Sort by F - temp = pd.DataFrame({'D': D, 'F': F}) - temp.sort_values('F', ascending=False, kind='mergesort', inplace=True) - - ax = _xy_plot(temp['D'], temp['F'], fmt='-', label=label, xlabel='Discharge [$m^3/s$]', - ylabel='Exceedance Probability', ax=ax) - plt.xscale('log') + temp = xr.Dataset(data_vars={"D": D, "F": F}) + temp.sortby("F", ascending=False) + + ax = _xy_plot( + temp["D"], + temp["F"], + fmt="-", + label=label, + xlabel="Discharge [$m^3/s$]", + ylabel="Exceedance Probability", + ax=ax, + ) + plt.xscale("log") return ax def plot_velocity_duration_curve(V, F, label=None, ax=None): """ - Plots velocity vs exceedance probability as a Velocity Duration Curve (VDC) - + Plots velocity vs exceedance probability as a Velocity Duration Curve (VDC) + Parameters ------------ - V: array-like + V: array-like Velocity [m/s] indexed by time - - F: array-like + + F: array-like Exceedance probability [unitless] indexed by time - + label: string Label to use in the legend - + ax : matplotlib axes object - Axes for plotting. If None, then a new figure with a single + Axes for plotting. If None, then a new figure with a single axes is used. - + Returns --------- ax : matplotlib pyplot axes - + """ # Sort by F - temp = pd.DataFrame({'V': V, 'F': F}) - temp.sort_values('F', ascending=False, kind='mergesort', inplace=True) - - ax = _xy_plot(temp['V'], temp['F'], fmt='-', label=label, xlabel='Velocity [$m/s$]', - ylabel='Exceedance Probability', ax=ax) + temp = xr.Dataset(data_vars={"V": V, "F": F}) + temp.sortby("F", ascending=False) + + ax = _xy_plot( + temp["V"], + temp["F"], + fmt="-", + label=label, + xlabel="Velocity [$m/s$]", + ylabel="Exceedance Probability", + ax=ax, + ) return ax def plot_power_duration_curve(P, F, label=None, ax=None): """ - Plots power vs exceedance probability as a Power Duration Curve (PDC) + Plots power vs exceedance probability as a Power Duration Curve (PDC) Parameters ------------ - P: array-like + P: array-like Power [W] indexed by time - - F: array-like + + F: array-like Exceedance probability [unitless] indexed by time - + label: string Label to use in the legend - + ax : matplotlib axes object - Axes for plotting. If None, then a new figure with a single + Axes for plotting. If None, then a new figure with a single axes is used. - + Returns --------- ax : matplotlib pyplot axes - + """ # Sort by F - temp = pd.DataFrame({'P': P, 'F': F}) - temp.sort_values('F', ascending=False, kind='mergesort', inplace=True) - - ax = _xy_plot(temp['P'], temp['F'], fmt='-', label=label, xlabel='Power [W]', - ylabel='Exceedance Probability', ax=ax) + temp = xr.Dataset(data_vars={"P": P, "F": F}) + temp.sortby("F", ascending=False) + + ax = _xy_plot( + temp["P"], + temp["F"], + fmt="-", + label=label, + xlabel="Power [W]", + ylabel="Exceedance Probability", + ax=ax, + ) return ax - -def plot_discharge_timeseries(Q, label=None, ax=None): + +def plot_discharge_timeseries(Q, time_dimension="", label=None, ax=None): """ Plots discharge time-series - + Parameters ------------ Q: array-like Discharge [m3/s] indexed by time - + + time_dimension: string (optional) + Name of the xarray dimension corresponding to time. If not supplied, + defaults to the first dimension. + label: string Label to use in the legend - + ax : matplotlib axes object - Axes for plotting. If None, then a new figure with a single + Axes for plotting. If None, then a new figure with a single axes is used. - + Returns --------- - ax : matplotlib pyplot axes - + ax : matplotlib pyplot axes + """ + Q = convert_to_dataarray(Q) + + if time_dimension == "": + time_dimension = list(Q.coords)[0] + ax = _xy_plot( - Q.index, - Q, - fmt='-', - label=label, - xlabel='Time', - ylabel='Discharge [$m^3/s$]', - ax=ax + Q.coords[time_dimension].values, + Q, + fmt="-", + label=label, + xlabel="Time", + ylabel="Discharge [$m^3/s$]", + ax=ax, ) - + return ax def plot_discharge_vs_velocity(D, V, polynomial_coeff=None, label=None, ax=None): """ Plots discharge vs velocity data along with the polynomial fit - + Parameters ------------ - D : pandas Series + D : array-like Discharge [m/s] indexed by time - - V : pandas Series + + V : array-like Velocity [m/s] indexed by time - + polynomial_coeff: numpy polynomial - Polynomial coefficients, which can be computed using - `river.resource.polynomial_fit`. If None, then the polynomial fit is - not included int the plot. - + Polynomial coefficients, which can be computed using + `river.resource.polynomial_fit`. If None, then the polynomial fit is + not included int the plot. + ax : matplotlib axes object - Axes for plotting. If None, then a new figure with a single + Axes for plotting. If None, then a new figure with a single axes is used. - + Returns --------- ax : matplotlib pyplot axes - + """ - ax = _xy_plot(D, V, fmt='.', label=label, xlabel='Discharge [$m^3/s$]', - ylabel='Velocity [$m/s$]', ax=ax) + ax = _xy_plot( + D, + V, + fmt=".", + label=label, + xlabel="Discharge [$m^3/s$]", + ylabel="Velocity [$m/s$]", + ax=ax, + ) if polynomial_coeff: x = np.linspace(D.min(), D.max()) - ax = _xy_plot(x, polynomial_coeff(x), fmt='--', label='Polynomial fit', - xlabel='Discharge [$m^3/s$]', ylabel='Velocity [$m/s$]', - ax=ax) + ax = _xy_plot( + x, + polynomial_coeff(x), + fmt="--", + label="Polynomial fit", + xlabel="Discharge [$m^3/s$]", + ylabel="Velocity [$m/s$]", + ax=ax, + ) return ax def plot_velocity_vs_power(V, P, polynomial_coeff=None, label=None, ax=None): """ - Plots velocity vs power data along with the polynomial fit - + Plots velocity vs power data along with the polynomial fit + Parameters ------------ - V : pandas Series + V : array-like Velocity [m/s] indexed by time - - P: pandas Series + + P: array-like Power [W] indexed by time - + polynomial_coeff: numpy polynomial - Polynomial coefficients, which can be computed using - `river.resource.polynomial_fit`. If None, then the polynomial fit is - not included int the plot. - + Polynomial coefficients, which can be computed using + `river.resource.polynomial_fit`. If None, then the polynomial fit is + not included int the plot. + ax : matplotlib axes object - Axes for plotting. If None, then a new figure with a single + Axes for plotting. If None, then a new figure with a single axes is used. - + Returns --------- ax : matplotlib pyplot axes - + """ - ax = _xy_plot(V, P, fmt='.', label=label, xlabel='Velocity [$m/s$]', - ylabel='Power [$W$]', ax=ax) + ax = _xy_plot( + V, + P, + fmt=".", + label=label, + xlabel="Velocity [$m/s$]", + ylabel="Power [$W$]", + ax=ax, + ) if polynomial_coeff: x = np.linspace(V.min(), V.max()) - ax = _xy_plot(x, polynomial_coeff(x), fmt='--', label='Polynomial fit', - xlabel='Velocity [$m/s$]', ylabel='Power [$W$]', ax=ax) - + ax = _xy_plot( + x, + polynomial_coeff(x), + fmt="--", + label="Polynomial fit", + xlabel="Velocity [$m/s$]", + ylabel="Power [$W$]", + ax=ax, + ) + return ax diff --git a/mhkit/river/io/__init__.py b/mhkit/river/io/__init__.py index bf2aea4d1..852964f7b 100644 --- a/mhkit/river/io/__init__.py +++ b/mhkit/river/io/__init__.py @@ -1,2 +1,2 @@ from mhkit.river.io import usgs -from mhkit.river.io import d3d +from mhkit.river.io import d3d diff --git a/mhkit/river/io/d3d.py b/mhkit/river/io/d3d.py index d4db2e266..19a61df62 100644 --- a/mhkit/river/io/d3d.py +++ b/mhkit/river/io/d3d.py @@ -2,20 +2,21 @@ import scipy.interpolate as interp import numpy as np import pandas as pd +import xarray as xr import netCDF4 import warnings def get_all_time(data): - ''' - Returns all of the time stamps from a D3D simulation passed to the function + """ + Returns all of the time stamps from a D3D simulation passed to the function as a NetCDF object (data) - + Parameters ---------- - data: NetCDF4 object + data: NetCDF4 object A NetCDF4 object that contains spatial data, e.g. velocity or shear - stress generated by running a Delft3D model. + stress generated by running a Delft3D model. Returns ------- @@ -23,25 +24,26 @@ def get_all_time(data): Returns an array of integers representing the number of seconds after the simulation started and that the data object contains a snapshot of simulation conditions at that time. - ''' - - assert type(data)== netCDF4._netCDF4.Dataset, 'data must be NetCDF4 object' + """ + + if not isinstance(data, netCDF4._netCDF4.Dataset): + raise TypeError("data must be a NetCDF4 object") - seconds_run = np.ma.getdata(data.variables['time'][:], False) + seconds_run = np.ma.getdata(data.variables["time"][:], False) return seconds_run def index_to_seconds(data, time_index): - ''' - The function will return 'seconds_run' if passed a 'time_index' + """ + The function will return 'seconds_run' if passed a 'time_index' Parameters ---------- - data: NetCDF4 object + data: NetCDF4 object A NetCDF4 object that contains spatial data, e.g. velocity or shear - stress, generated by running a Delft3D model. - time_index: int + stress, generated by running a Delft3D model. + time_index: int A positive integer to pull the time index from the dataset. 0 being closest to time 0. Default is last time index -1. @@ -49,87 +51,98 @@ def index_to_seconds(data, time_index): ------- seconds_run: int, float The 'seconds_run' is the seconds corresponding to the 'time_index' increments. - ''' + """ return _convert_time(data, time_index=time_index) def seconds_to_index(data, seconds_run): - ''' + """ The function will return the nearest 'time_index' in the data if passed an integer number of 'seconds_run' - + Parameters ---------- - data: NetCDF4 object + data: NetCDF4 object A NetCDF4 object that contains spatial data, e.g. velocity or shear - stress, generated by running a Delft3D model. + stress, generated by running a Delft3D model. seconds_run: int, float - A positive integer or float that represents the amount of time in seconds + A positive integer or float that represents the amount of time in seconds passed since starting the simulation. Returns ------- time_index: int - The 'time_index' is a positive integer starting from 0 + The 'time_index' is a positive integer starting from 0 and incrementing until in simulation is complete. - ''' + """ return _convert_time(data, seconds_run=seconds_run) def _convert_time(data, time_index=None, seconds_run=None): - ''' - Converts a time index to seconds or seconds to a time index. The user - must specify 'time_index' or 'seconds_run' (Not both). The function - will returns 'seconds_run' if passed a 'time_index' or will return the + """ + Converts a time index to seconds or seconds to a time index. The user + must specify 'time_index' or 'seconds_run' (Not both). The function + will returns 'seconds_run' if passed a 'time_index' or will return the closest 'time_index' if passed a number of 'seconds_run'. Parameters ---------- - data: NetCDF4 object + data: NetCDF4 object A NetCDF4 object that contains spatial data, e.g. velocity or shear - stress, generated by running a Delft3D model. - time_index: int + stress, generated by running a Delft3D model. + time_index: int An integer to pull the time index from the dataset. 0 being closest - to the start time. + to the start time. seconds_run: int, float - An integer or float that represents the amount of time in seconds + An integer or float that represents the amount of time in seconds passed since starting the simulation. Returns ------- QoI: int, float - The quantity of interest is the unknown value either the 'time_index' - or the 'seconds_run'. The 'time_index' is an integer starting from 0 + The quantity of interest is the unknown value either the 'time_index' + or the 'seconds_run'. The 'time_index' is an integer starting from 0 and incrementing until in simulation is complete. The 'seconds_run' is the seconds corresponding to the 'time_index' increments. - ''' - - assert type(data)== netCDF4._netCDF4.Dataset, 'data must be NetCDF4 object' - assert time_index or seconds_run, 'input of time_index or seconds_run needed' - assert not(time_index and seconds_run), f'only one time_index or seconds_run' - assert isinstance(time_index, (int, float)) or isinstance(seconds_run, (int, - float)),'time_index or seconds_run input must be a int or float' - + """ + + if not isinstance(data, netCDF4._netCDF4.Dataset): + raise TypeError("data must be NetCDF4 object") + + if not (time_index or seconds_run): + raise ValueError("Input of time_index or seconds_run needed") + + if time_index and seconds_run: + raise ValueError("Only one of time_index or seconds_run should be provided") + + if not ( + isinstance(time_index, (int, float)) or isinstance(seconds_run, (int, float)) + ): + raise TypeError("time_index or seconds_run input must be an int or float") + times = get_all_time(data) - + if time_index: - QoI= times[time_index] + QoI = times[time_index] if seconds_run: - try: - idx=np.where(times == seconds_run) - QoI=idx[0][0] - except: + try: + idx = np.where(times == seconds_run) + QoI = idx[0][0] + except: idx = (np.abs(times - seconds_run)).argmin() - QoI= idx - warnings.warn( f'Warning: seconds_run not found. Closest time stamp' - +'found {times[idx]}', stacklevel= 2) + QoI = idx + warnings.warn( + "Warning: seconds_run not found. Closest time stamp" + + f"found {times[idx]}", + stacklevel=2, + ) return QoI -def get_layer_data(data, variable, layer_index=-1, time_index=-1): - ''' - Get variable data from the NetCDF4 object at a specified layer and timestep. +def get_layer_data(data, variable, layer_index=-1, time_index=-1, to_pandas=True): + """ + Get variable data from the NetCDF4 object at a specified layer and timestep. If the data is 2D the layer_index is ignored. Parameters @@ -139,490 +152,658 @@ def get_layer_data(data, variable, layer_index=-1, time_index=-1): stress, generated by running a Delft3D model. variable: string Delft3D outputs many vairables. The full list can be - found using "data.variables.keys()" in the console. + found using "data.variables.keys()" in the console. layer_index: int - An integer to pull out a layer from the dataset. 0 being closest + An integer to pull out a layer from the dataset. 0 being closest to the surface. Default is the bottom layer, found with input -1. - time_index: int + time_index: int An integer to pull the time index from the dataset. 0 being closest to the start time. Default is last time index, found with input -1. + to_pandas : bool (optional) + Flag to output pandas instead of xarray. Default = True. + Returns ------- - layer_data: DataFrame - DataFrame with columns of "x", "y", "waterdepth", and "waterlevel" location - of the specified layer, variable values "v", and the "time" the + layer_data: pd.DataFrame or xr.Dataset + Dataset with columns of "x", "y", "waterdepth", and "waterlevel" location + of the specified layer, variable values "v", and the "time" the simulation has run. The waterdepth is measured from the water surface and the - "waterlevel" is the water level diffrencein meters from the zero water level. - ''' - - assert isinstance(time_index, int), 'time_index must be an int' - assert isinstance(layer_index, int), 'layer_index must be an int' - assert type(data)== netCDF4._netCDF4.Dataset, 'data must be NetCDF4 object' - assert variable in data.variables.keys(), 'variable not recognized' + "waterlevel" is the water level diffrencein meters from the zero water level. + """ + + if not isinstance(time_index, int): + raise TypeError("time_index must be an int") + + if not isinstance(layer_index, int): + raise TypeError("layer_index must be an int") + + if not isinstance(data, netCDF4._netCDF4.Dataset): + raise TypeError("data must be NetCDF4 object") + + if variable not in data.variables.keys(): + raise ValueError("variable not recognized") + + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + coords = str(data.variables[variable].coordinates).split() - var=data.variables[variable][:] - max_time_index= data['time'].shape[0]-1 # to account for zero index - assert abs(time_index) <= max_time_index, (f'time_index must be less than' - +'the absolute value of the max time index {max_time_index}') - - x=np.ma.getdata(data.variables[coords[0]][:], False) - y=np.ma.getdata(data.variables[coords[1]][:], False) - - - if type(var[0][0]) == np.ma.core.MaskedArray: - max_layer= len(var[0][0]) - - assert abs(layer_index) <= max_layer,( f'layer_index must be less than' - +'the max layer {max_layer}') - v= np.ma.getdata(var[time_index,:,layer_index], False) - dimensions= 3 - - else: - assert type(var[0][0])== np.float64, 'data not recognized' - dimensions= 2 - v= np.ma.getdata(var[time_index,:], False) - - #waterdepth + var = data.variables[variable][:] + max_time_index = data["time"].shape[0] - 1 # to account for zero index + + if abs(time_index) > max_time_index: + raise ValueError( + f"time_index must be less than the absolute value of the max time index {max_time_index}" + ) + + x = np.ma.getdata(data.variables[coords[0]][:], False) + y = np.ma.getdata(data.variables[coords[1]][:], False) + + if type(var[0][0]) == np.ma.core.MaskedArray: + max_layer = len(var[0][0]) + + if abs(layer_index) > max_layer: + raise ValueError(f"layer_index must be less than the max layer {max_layer}") + + v = np.ma.getdata(var[time_index, :, layer_index], False) + dimensions = 3 + + else: + if type(var[0][0]) != np.float64: + raise TypeError("data not recognized") + + dimensions = 2 + v = np.ma.getdata(var[time_index, :], False) + + # waterdepth if "mesh2d" in variable: - cords_to_layers= {'mesh2d_face_x mesh2d_face_y': {'name':'mesh2d_nLayers', - 'coords':data.variables['mesh2d_layer_sigma'][:]}, - 'mesh2d_edge_x mesh2d_edge_y': {'name':'mesh2d_nInterfaces', - 'coords':data.variables['mesh2d_interface_sigma'][:]}} - bottom_depth=np.ma.getdata(data.variables['mesh2d_waterdepth'][time_index, :], False) - waterlevel= np.ma.getdata(data.variables['mesh2d_s1'][time_index, :], False) - coords = str(data.variables['waterdepth'].coordinates).split() - + cords_to_layers = { + "mesh2d_face_x mesh2d_face_y": { + "name": "mesh2d_nLayers", + "coords": data.variables["mesh2d_layer_sigma"][:], + }, + "mesh2d_edge_x mesh2d_edge_y": { + "name": "mesh2d_nInterfaces", + "coords": data.variables["mesh2d_interface_sigma"][:], + }, + } + bottom_depth = np.ma.getdata( + data.variables["mesh2d_waterdepth"][time_index, :], False + ) + waterlevel = np.ma.getdata(data.variables["mesh2d_s1"][time_index, :], False) + coords = str(data.variables["waterdepth"].coordinates).split() + + elif str(data.variables[variable].coordinates) == "FlowElem_xcc FlowElem_ycc": + cords_to_layers = { + "FlowElem_xcc FlowElem_ycc": { + "name": "laydim", + "coords": data.variables["LayCoord_cc"][:], + }, + "FlowLink_xu FlowLink_yu": { + "name": "wdim", + "coords": data.variables["LayCoord_w"][:], + }, + } + bottom_depth = np.ma.getdata(data.variables["waterdepth"][time_index, :], False) + waterlevel = np.ma.getdata(data.variables["s1"][time_index, :], False) + coords = str(data.variables["waterdepth"].coordinates).split() else: - cords_to_layers= {'FlowElem_xcc FlowElem_ycc':{'name':'laydim', - 'coords':data.variables['LayCoord_cc'][:]}, - 'FlowLink_xu FlowLink_yu': {'name':'wdim', - 'coords':data.variables['LayCoord_w'][:]}} - bottom_depth=np.ma.getdata(data.variables['waterdepth'][time_index, :], False) - waterlevel= np.ma.getdata(data.variables['s1'][time_index, :], False) - coords = str(data.variables['waterdepth'].coordinates).split() - - layer_dim = str(data.variables[variable].coordinates) - - cord_sys= cords_to_layers[layer_dim]['coords'] - layer_percentages= np.ma.getdata(cord_sys, False) #accumulative - - if layer_dim == 'FlowLink_xu FlowLink_yu': - #interpolate - x_laydim=np.ma.getdata(data.variables[coords[0]][:], False) - y_laydim=np.ma.getdata(data.variables[coords[1]][:], False) - points_laydim = np.array([ [x, y] for x, y in zip(x_laydim, y_laydim)]) - + cords_to_layers = { + "FlowElem_xcc FlowElem_ycc LayCoord_cc LayCoord_cc": { + "name": "laydim", + "coords": data.variables["LayCoord_cc"][:], + }, + "FlowLink_xu FlowLink_yu": { + "name": "wdim", + "coords": data.variables["LayCoord_w"][:], + }, + } + bottom_depth = np.ma.getdata(data.variables["waterdepth"][time_index, :], False) + waterlevel = np.ma.getdata(data.variables["s1"][time_index, :], False) + coords = str(data.variables["waterdepth"].coordinates).split() + + layer_dim = str(data.variables[variable].coordinates) + + cord_sys = cords_to_layers[layer_dim]["coords"] + layer_percentages = np.ma.getdata(cord_sys, False) # accumulative + + if layer_dim == "FlowLink_xu FlowLink_yu": + # interpolate + x_laydim = np.ma.getdata(data.variables[coords[0]][:], False) + y_laydim = np.ma.getdata(data.variables[coords[1]][:], False) + points_laydim = np.array([[x, y] for x, y in zip(x_laydim, y_laydim)]) + coords_request = str(data.variables[variable].coordinates).split() - x_wdim=np.ma.getdata(data.variables[coords_request[0]][:], False) - y_wdim=np.ma.getdata(data.variables[coords_request[1]][:], False) - points_wdim=np.array([ [x, y] for x, y in zip(x_wdim, y_wdim)]) - - bottom_depth_wdim = interp.griddata(points_laydim, bottom_depth, - points_wdim) - water_level_wdim= interp.griddata(points_laydim, waterlevel, - points_wdim) - - idx_bd= np.where(np.isnan(bottom_depth_wdim)) - - for i in idx_bd: - bottom_depth_wdim[i]= interp.griddata(points_laydim, bottom_depth, - points_wdim[i], method='nearest') - water_level_wdim[i]= interp.griddata(points_laydim, waterlevel, - points_wdim[i], method='nearest') - - - waterdepth=[] - - if dimensions== 2: - if layer_dim == 'FlowLink_xu FlowLink_yu': + x_wdim = np.ma.getdata(data.variables[coords_request[0]][:], False) + y_wdim = np.ma.getdata(data.variables[coords_request[1]][:], False) + points_wdim = np.array([[x, y] for x, y in zip(x_wdim, y_wdim)]) + + bottom_depth_wdim = interp.griddata(points_laydim, bottom_depth, points_wdim) + water_level_wdim = interp.griddata(points_laydim, waterlevel, points_wdim) + + idx_bd = np.where(np.isnan(bottom_depth_wdim)) + + for i in idx_bd: + bottom_depth_wdim[i] = interp.griddata( + points_laydim, bottom_depth, points_wdim[i], method="nearest" + ) + water_level_wdim[i] = interp.griddata( + points_laydim, waterlevel, points_wdim[i], method="nearest" + ) + + waterdepth = [] + + if dimensions == 2: + if layer_dim == "FlowLink_xu FlowLink_yu": z = [bottom_depth_wdim] - waterlevel=water_level_wdim + waterlevel = water_level_wdim else: z = [bottom_depth] else: - if layer_dim == 'FlowLink_xu FlowLink_yu': - z = [bottom_depth_wdim*layer_percentages[layer_index]] - waterlevel=water_level_wdim + if layer_dim == "FlowLink_xu FlowLink_yu": + z = [bottom_depth_wdim * layer_percentages[layer_index]] + waterlevel = water_level_wdim else: - z = [bottom_depth*layer_percentages[layer_index]] - waterdepth=np.append(waterdepth, z) + z = [bottom_depth * layer_percentages[layer_index]] + waterdepth = np.append(waterdepth, z) + + time = np.ma.getdata(data.variables["time"][time_index], False) * np.ones(len(x)) + + index = np.arange(0, len(time)) + layer_data = xr.Dataset( + data_vars={ + "x": (["index"], x), + "y": (["index"], y), + "waterdepth": (["index"], waterdepth), + "waterlevel": (["index"], waterlevel), + "v": (["index"], v), + "time": (["index"], time), + }, + coords={"index": index}, + ) + + if to_pandas: + layer_data = layer_data.to_pandas() - time= np.ma.getdata(data.variables['time'][time_index], False)*np.ones(len(x)) + return layer_data - layer= np.array([ [x_i, y_i, d_i, w_i, v_i, t_i] for x_i, y_i, d_i, w_i, v_i, t_i in - zip(x, y, waterdepth, waterlevel, v, time)]) - layer_data = pd.DataFrame(layer, columns=['x', 'y', 'waterdepth','waterlevel', 'v', 'time']) - return layer_data +def create_points(x, y, waterdepth, to_pandas=True): + """ + Generate a Dataset of points from combinations of input coordinates. + + This function accepts three inputs and combines them to generate a + Dataset of points. The inputs can be: + - 3 points + - 2 points and 1 array + - 1 point and 2 arrays + - 3 arrays (x and y must have the same size) + For 3 points or less, every combination will be in the output. + For 3 arrays, x and y are treated as coordinate pairs and combined + with each value from the waterdepth array. -def create_points(x, y, waterdepth): - ''' - Turns three coordinate inputs into a single output DataFrame of points. - In any order the three inputs can consist of 3 points, 2 points and 1 array, - or 1 point and 2 arrays. The final output DataFrame will be the unique - combinations of the 3 inputs. - Parameters ---------- - x: float, array or int - x values to create points. - y: float, array or int - y values to create points. - waterdepth: float, array or int - waterdepth values to create points. + x : int, float, array-like + X values (longitude) for the points. + y : int, float, array-like + Y values (latitude) for the points. + waterdepth : int, float, array-like + Waterdepth values for the points. + to_pandas : bool (optional) + Flag to output pandas instead of xarray. Default = True. Returns ------- - points: DateFrame - DataFrame with columns x, y and waterdepth points. - - Example + points : xr.Dataset or pd.DataFrame + A Dataset with columns 'x', 'y', and 'waterdepth' representing the generated points. + + Example ------- - If the inputs are 2 arrays: and [3,4,5] and 1 point [6], the output - will contain 6 array combinations of the 3 inputs as shown. - - x=np.array([1,2]) - y=np.array([3,4,5]) - waterdepth= 6 - d3d.create_points(x,y,waterdepth) - + 2 arrays and 1 point: + >>> x = np.array([1, 2]) + >>> y = np.array([3, 4, 5]) + >>> waterdepth = 6 + >>> create_points(x, y, waterdepth) + x y waterdepth 0 1.0 3.0 6.0 1 2.0 3.0 6.0 2 1.0 4.0 6.0 3 2.0 4.0 6.0 4 1.0 5.0 6.0 - 5 2.0 5.0 6.0 - ''' - - assert isinstance(x, (int, float, np.ndarray)), ('x must be a int, float' - +' or array') - assert isinstance(y, (int, float, np.ndarray)), ('y must be a int, float' - +' or array') - assert isinstance(waterdepth, (int, float, np.ndarray)), ('waterdepth must be a int, float' - +' or array') - - directions = {0:{'name': 'x', - 'values': x}, - 1:{'name': 'y', - 'values': y}, - 2:{'name': 'waterdepth', - 'values': waterdepth}} - - for i in directions: - try: - N=len(directions[i]['values']) - except: - directions[i]['values'] = np.array([directions[i]['values']]) - N=len(directions[i]['values']) - if N == 1 : - directions[i]['type']= 'point' - elif N > 1 : - directions[i]['type']= 'array' - else: - raise Exception(f'length of direction {directions[i]["name"]} was' - +'neagative or zero') - - # Check how many times point is in "types" - types= [directions[i]['type'] for i in directions] - N_points = types.count('point') - - if N_points >= 2: - lens = np.array([len(directions[d]['values']) for d in directions]) - max_len_idx = lens.argmax() - not_max_idxs= [i for i in directions.keys()] - - del not_max_idxs[max_len_idx] - - for not_max in not_max_idxs: - N= len(directions[max_len_idx]['values']) - vals =np.ones(N)*directions[not_max]['values'] - directions[not_max]['values'] = np.array(vals) - - x_new = directions[0]['values'] - y_new = directions[1]['values'] - depth_new = directions[2]['values'] - - request= np.array([ [x_i, y_i, depth_i] for x_i, y_i, depth_i in zip(x_new, - y_new, depth_new)]) - points= pd.DataFrame(request, columns=[ 'x', 'y', 'waterdepth']) - - elif N_points == 1: - # treat as plane - #find index of point - idx_point = types.index('point') - max_idxs= [i for i in directions.keys()] - print(max_idxs) - del max_idxs[idx_point] - #find vectors - XX, YY = np.meshgrid(directions[max_idxs[0]]['values'], - directions[max_idxs[1]]['values'] ) - N_X=np.shape(XX)[1] - N_Y=np.shape(YY)[0] - ZZ= np.ones((N_Y,N_X))*directions[idx_point]['values'] - - request= np.array([ [x_i, y_i, z_i] for x_i, y_i, z_i in zip(XX.ravel(), - YY.ravel() , ZZ.ravel())]) - columns=[ directions[max_idxs[0]]['name'], - directions[max_idxs[1]]['name'], directions[idx_point]['name']] - - points= pd.DataFrame(request, columns=columns) - else: - raise Exception('Can provide at most two arrays') - - return points - - -def variable_interpolation(data, variables, points='cells', edges= 'none'): - ''' - Interpolate multiple variables from the Delft3D onto the same points. + 5 2.0 5.0 6.0 + + 3 arrays (x and y must have the same length): + >>> x = np.array([1, 2, 3]) + >>> y = np.array([4, 5, 6]) + >>> waterdepth = np.array([1, 2]) + >>> create_points(x, y, waterdepth) + + x y waterdepth + 0 1.0 4.0 1.0 + 1 2.0 5.0 1.0 + 2 3.0 6.0 1.0 + 3 1.0 4.0 2.0 + 4 2.0 5.0 2.0 + 5 4.0 6.0 2.0 + """ + + # Check input types + inputs = {"x": x, "y": y, "waterdepth": waterdepth} + for name, value in inputs.items(): + # Convert lists to numpy arrays + if isinstance(value, list): + value = np.array(value) + inputs[name] = value # Update the value in the dictionary + + # Check data type + if not isinstance(value, (int, float, np.ndarray, pd.Series, xr.DataArray)): + raise TypeError( + f"{name} must be an int, float, np.ndarray, pd.Series, or xr.DataArray. Got: {type(value)}" + ) + + # Check for empty arrays + if isinstance(value, (np.ndarray, pd.Series, xr.DataArray)) and len(value) == 0: + raise ValueError(f"{name} should not be an empty array") + + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + + x_array_like = not isinstance(x, (int, float)) + y_array_like = not isinstance(y, (int, float)) + waterdepth_array_like = not isinstance(waterdepth, (int, float)) + + if x_array_like and y_array_like and waterdepth_array_like: + # if all inputs are arrays, grid the coordinate and waterdepth + y_grid, waterdepth_grid = np.meshgrid(y, waterdepth) + y_grid = y_grid.ravel() + waterdepth_grid = waterdepth_grid.ravel() + + x_grid, _ = np.meshgrid(x, waterdepth) + x_grid = x_grid.ravel() + else: + # if at least one input is a point, grid all inputs + x_grid, y_grid, waterdepth_grid = np.meshgrid(x, y, waterdepth) + x_grid = x_grid.ravel() + y_grid = y_grid.ravel() + waterdepth_grid = waterdepth_grid.ravel() + + index = np.arange(0, len(x_grid)) + points = xr.Dataset( + data_vars={ + "x": (["index"], x_grid), + "y": (["index"], y_grid), + "waterdepth": (["index"], waterdepth_grid), + }, + coords={"index": index}, + ) + + if to_pandas: + points = points.to_pandas() + + return points + + +def variable_interpolation( + data, + variables, + points="cells", + edges="none", + x_max_lim=float("inf"), + x_min_lim=float("-inf"), + y_max_lim=float("inf"), + y_min_lim=float("-inf"), + to_pandas=True, +): + """ + Interpolate multiple variables from the Delft3D onto the same points. Parameters ---------- - data: NetCDF4 object + data: NetCDF4 object A NetCDF4 object that contains spatial data, e.g. velocity or shear - stress generated by running a Delft3D model. + stress generated by running a Delft3D model. variables: array of strings Name of variables to interpolate, e.g. 'turkin1', 'ucx', 'ucy' and 'ucz'. The full list can be found using "data.variables.keys()" in the console. - points: string, DataFrame + points: string, pd.DataFrame, or xr.Dataset The points to interpolate data onto. 'cells'- interpolates all data onto the Delft3D cell coordinate system (Default) - 'faces'- interpolates all dada onto the Delft3D face coordinate system - DataFrame of x, y, and waterdepth coordinates - Interpolates data onto user + 'faces'- interpolates all dada onto the Delft3D face coordinate system + Dataset of x, y, and waterdepth coordinates - Interpolates data onto user povided points. Can be created with `create_points` function. - edges: sting: 'nearest' - If edges is set to 'nearest' the code will fill in nan values with nearest - interpolation. Otherwise only linear interpolarion will be used. - + edges: string: 'nearest' + If edges is set to 'nearest' the code will fill in nan values with nearest + interpolation. Otherwise only linear interpolarion will be used. + to_pandas : bool (optional) + Flag to output pandas instead of xarray. Default = True. + Returns ------- - transformed_data: DataFrame - Variables on specified grid points saved under the input variable names - and the x, y, and waterdepth coordinates of those points. - ''' - - assert isinstance(points, (str, pd.DataFrame)),('points must be a string ' - +'or DataFrame') - if isinstance ( points, str): - assert any([points == 'cells', points=='faces']), ('points must be' - +' cells or faces') - assert type(data)== netCDF4._netCDF4.Dataset, 'data must be nerCDF4 object' + transformed_data: pd.DataFrame or xr.Dataset + Variables on specified grid points saved under the input variable names + and the x, y, and waterdepth coordinates of those points. + """ + + if not isinstance(points, (str, pd.DataFrame, xr.Dataset)): + raise TypeError( + f"points must be a string, pd.DataFrame, or xr.Dataset. Got {type(points)}." + ) + + if isinstance(points, xr.Dataset): + points = points.to_pandas() + + if isinstance(points, str): + if not (points == "cells" or points == "faces"): + raise ValueError( + f"If a string, points must be cells or faces. Got {points}" + ) + + if not isinstance(data, netCDF4._netCDF4.Dataset): + raise TypeError(f"data must be netCDF4 object. Got {type(data)}") + + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") data_raw = {} for var in variables: - var_data_df = get_all_data_points(data, var,time_index=-1) - var_data_df=var_data_df.loc[:,~var_data_df.T.duplicated(keep='first')] - data_raw[var] = var_data_df - if type(points) == pd.DataFrame: - print('points provided') - elif points=='faces': - points = data_raw['ucx'][['x','y','waterdepth']] - elif points=='cells': - points = data_raw['turkin1'][['x','y','waterdepth']] - - transformed_data= points.copy(deep=True) - - for var in variables : - transformed_data[var] = interp.griddata(data_raw[var][['x','y','waterdepth']], - data_raw[var][var], points[['x','y','waterdepth']]) - if edges == 'nearest' : - idx= np.where(np.isnan(transformed_data[var])) - + var_data_df = get_all_data_points(data, var, time_index=-1, to_pandas=True) + var_data_df["depth"] = var_data_df.waterdepth - var_data_df.waterlevel # added + var_data_df = var_data_df.loc[:, ~var_data_df.T.duplicated(keep="first")] + var_data_df = var_data_df[var_data_df.x > x_min_lim] + var_data_df = var_data_df[var_data_df.x < x_max_lim] + var_data_df = var_data_df[var_data_df.y > y_min_lim] + var_data_df = var_data_df[var_data_df.y < y_max_lim] + data_raw[var] = var_data_df + if isinstance(points, pd.DataFrame): + print("points provided") + elif points == "faces": + points = data_raw["ucx"][["x", "y", "waterdepth"]] + elif points == "cells": + points = data_raw["turkin1"][["x", "y", "waterdepth"]] + + transformed_data = points.copy(deep=True) + + for var in variables: + transformed_data[var] = interp.griddata( + data_raw[var][["x", "y", "waterdepth"]], # waterdepth to depth + data_raw[var][var], + points[["x", "y", "waterdepth"]], + ) + if edges == "nearest": + idx = np.where(np.isnan(transformed_data[var])) + if len(idx[0]): - for i in idx[0]: - transformed_data[var][i]= (interp - .griddata(data_raw[var][['x','y','waterdepth']], - data_raw[var][var], - [points['x'][i],points['y'][i], - points['waterdepth'][i]], method='nearest')) - + for i in idx[0]: + transformed_data[var][i] = interp.griddata( + data_raw[var][["x", "y", "waterdepth"]], + data_raw[var][var], + [points["x"][i], points["y"][i], points["waterdepth"][i]], + method="nearest", + ) + + if not to_pandas: + transformed_data = transformed_data.to_dataset() + return transformed_data -def get_all_data_points(data, variable, time_index=-1): - ''' - Get data points for a passed variable for all layers at a specified time from - the Delft3D NetCDF4 object by iterating over the `get_layer_data` function. +def get_all_data_points(data, variable, time_index=-1, to_pandas=True): + """ + Get data points for a passed variable for all layers at a specified time from + the Delft3D NetCDF4 object by iterating over the `get_layer_data` function. Parameters ---------- - data: Netcdf4 object + data: Netcdf4 object A NetCDF4 object that contains spatial data, e.g. velocity or shear - stress, generated by running a Delft3D model. + stress, generated by running a Delft3D model. variable: string Delft3D variable. The full list can be of variables can be - found using "data.variables.keys()" in the console. + found using "data.variables.keys()" in the console. time_index: int - An integer to pull the time step from the dataset. + An integer to pull the time step from the dataset. Default is last time step, found with the input -1. - + to_pandas : bool (optional) + Flag to output pandas instead of xarray. Default = True. + Returns ------- - all_data: DataFrame + all_data: xr.Dataset or pd.Dataframe Dataframe with columns x, y, waterdepth, waterlevel, variable, and time. - The waterdepth is measured from the water surface and the "waterlevel" is + The waterdepth is measured from the water surface and the "waterlevel" is the water level diffrence in meters from the zero water level. - - ''' - - assert isinstance(time_index, int), 'time_index must be a int' - assert type(data)== netCDF4._netCDF4.Dataset, 'data must be NetCDF4 object' - assert variable in data.variables.keys(), 'variable not recognized' + + """ + + if not isinstance(time_index, int): + raise TypeError("time_index must be an int") + + if not isinstance(data, netCDF4._netCDF4.Dataset): + raise TypeError("data must be NetCDF4 object") + + if variable not in data.variables.keys(): + raise ValueError("variable not recognized") + + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") max_time_index = len(data.variables[variable][:]) - assert abs(time_index) <= max_time_index, (f'time_index must be less than' - +'the max time index {max_time_index}') + if abs(time_index) > max_time_index: + raise ValueError( + f"time_index must be less than the max time index {max_time_index}" + ) if "mesh2d" in variable: - cords_to_layers= {'mesh2d_face_x mesh2d_face_y': {'name':'mesh2d_nLayers', - 'coords':data.variables['mesh2d_layer_sigma'][:]}, - 'mesh2d_edge_x mesh2d_edge_y': {'name':'mesh2d_nInterfaces', - 'coords':data.variables['mesh2d_interface_sigma'][:]}} + cords_to_layers = { + "mesh2d_face_x mesh2d_face_y": { + "name": "mesh2d_nLayers", + "coords": data.variables["mesh2d_layer_sigma"][:], + }, + "mesh2d_edge_x mesh2d_edge_y": { + "name": "mesh2d_nInterfaces", + "coords": data.variables["mesh2d_interface_sigma"][:], + }, + } + + elif str(data.variables[variable].coordinates) == "FlowElem_xcc FlowElem_ycc": + cords_to_layers = { + "FlowElem_xcc FlowElem_ycc": { + "name": "laydim", + "coords": data.variables["LayCoord_cc"][:], + }, + "FlowLink_xu FlowLink_yu": { + "name": "wdim", + "coords": data.variables["LayCoord_w"][:], + }, + } + else: + cords_to_layers = { + "FlowElem_xcc FlowElem_ycc LayCoord_cc LayCoord_cc": { + "name": "laydim", + "coords": data.variables["LayCoord_cc"][:], + }, + "FlowLink_xu FlowLink_yu": { + "name": "wdim", + "coords": data.variables["LayCoord_w"][:], + }, + } + + layer_dim = str(data.variables[variable].coordinates) + + try: + cord_sys = cords_to_layers[layer_dim]["coords"] + except: + raise Exception("Coordinates not recognized.") else: - cords_to_layers= {'FlowElem_xcc FlowElem_ycc':{'name':'laydim', - 'coords':data.variables['LayCoord_cc'][:]}, - 'FlowLink_xu FlowLink_yu': {'name':'wdim', - 'coords':data.variables['LayCoord_w'][:]}} - - layer_dim = str(data.variables[variable].coordinates) - - try: - cord_sys= cords_to_layers[layer_dim]['coords'] - except: - raise Exception('Coordinates not recognized.') - else: - layer_percentages= np.ma.getdata(cord_sys, False) - - x_all=[] - y_all=[] - depth_all=[] - water_level_all=[] - v_all=[] - time_all=[] - + layer_percentages = np.ma.getdata(cord_sys, False) + + x_all = [] + y_all = [] + depth_all = [] + water_level_all = [] + v_all = [] + time_all = [] + layers = range(len(layer_percentages)) for layer in layers: - layer_data= get_layer_data(data, variable, layer, time_index) - - x_all=np.append(x_all, layer_data.x) - y_all=np.append(y_all, layer_data.y) - depth_all=np.append(depth_all, layer_data.waterdepth) - water_level_all=np.append(water_level_all, layer_data.waterlevel) - v_all=np.append(v_all, layer_data.v) - time_all= np.append(time_all, layer_data.time) - - known_points = np.array([ [x, y, waterdepth, waterlevel, v, time] - for x, y, waterdepth, waterlevel, v, time in zip(x_all, y_all, - depth_all, water_level_all, v_all, time_all)]) - - all_data= pd.DataFrame(known_points, columns=['x','y','waterdepth', 'waterlevel' - ,f'{variable}', 'time']) + layer_data = get_layer_data(data, variable, layer, time_index) + + x_all = np.append(x_all, layer_data.x) + y_all = np.append(y_all, layer_data.y) + depth_all = np.append(depth_all, layer_data.waterdepth) + water_level_all = np.append(water_level_all, layer_data.waterlevel) + v_all = np.append(v_all, layer_data.v) + time_all = np.append(time_all, layer_data.time) + + index = np.arange(0, len(time_all)) + all_data = xr.Dataset( + data_vars={ + "x": (["index"], x_all), + "y": (["index"], y_all), + "waterdepth": (["index"], depth_all), + "waterlevel": (["index"], water_level_all), + f"{variable}": (["index"], v_all), + "time": (["index"], time_all), + }, + coords={"index": index}, + ) + + if to_pandas: + all_data = all_data.to_pandas() return all_data - -def turbulent_intensity(data, points='cells', time_index= -1, - intermediate_values = False ): - ''' - Calculate the turbulent intensity percentage for a given data set for the +def turbulent_intensity( + data, points="cells", time_index=-1, intermediate_values=False, to_pandas=True +): + """ + Calculate the turbulent intensity percentage for a given data set for the specified points. Assumes variable names: ucx, ucy, ucz and turkin1. Parameters ---------- - data : NetCDF4 object + data: NetCDF4 object A NetCDF4 object that contains spatial data, e.g. velocity or shear stress, generated by running a Delft3D model. - points : string, DataFrame - Points to interpolate data onto. - 'cells': interpolates all data onto velocity coordinate system (Default). - 'faces': interpolates all data onto the TKE coordinate system. - DataFrame of x, y, and z coordinates: Interpolates data onto user - provided points. - time_index : int + points: string, pd.DataFrame, xr.Dataset + Points to interpolate data onto. + 'cells': interpolates all data onto velocity coordinate system (Default). + 'faces': interpolates all data onto the TKE coordinate system. + DataFrame of x, y, and z coordinates: Interpolates data onto user + provided points. + time_index: int An integer to pull the time step from the dataset. Default is - late time step -1. - intermediate_values : boolean (optional) - If false the function will return position and turbulent intensity values. + late time step -1. + intermediate_values: boolean (optional) + If false the function will return position and turbulent intensity values. If true the function will return position(x,y,z) and values need to calculate turbulent intensity (ucx, uxy, uxz and turkin1) in a Dataframe. Default False. - + to_pandas : bool (optional) + Flag to output pandas instead of xarray. Default = True. + Returns ------- - TI_data : Dataframe - If intermediate_values is true all values are output. - If intermediate_values is equal to false only turbulent_intesity and - x, y, and z variables are output. - x- position in the x direction - y- position in the y direction + TI_data: xr.Dataset or pd.DataFrame + If intermediate_values is true all values are output. + If intermediate_values is equal to false only turbulent_intesity and + x, y, and z variables are output. + x- position in the x direction + y- position in the y direction waterdepth- position in the vertical direction turbulet_intesity- turbulent kinetic energy divided by the root mean squared velocity - turkin1- turbulent kinetic energy - ucx- velocity in the x direction - ucy- velocity in the y direction - ucz- velocity in the vertical direction - ''' - - assert isinstance(points, (str, pd.DataFrame)),('points must a string or' - +' DataFrame') - if isinstance ( points, str): - assert any([points == 'cells', points=='faces']), ('points must be cells' - +' or faces') - assert isinstance(time_index, int), 'time_index must be a int' - max_time_index= data['time'].shape[0]-1 # to account for zero index - assert abs(time_index) <= max_time_index, (f'time_index must be less than' - +'the absolute value of the max time index {max_time_index}') - assert type(data)== netCDF4._netCDF4.Dataset, 'data must be nerCDF4 object' - assert 'turkin1' in data.variables.keys(), ('Varaiable turkin1 not' - +' present in Data') - assert 'ucx' in data.variables.keys(),'Varaiable ucx 1 not present in Data' - assert 'ucy' in data.variables.keys(),'Varaiable ucy 1 not present in Data' - assert 'ucz' in data.variables.keys(),'Varaiable ucz 1 not present in Data' - - TI_vars= ['turkin1', 'ucx', 'ucy', 'ucz'] + turkin1- turbulent kinetic energy + ucx- velocity in the x direction + ucy- velocity in the y direction + ucz- velocity in the vertical direction + """ + + if not isinstance(points, (str, pd.DataFrame, xr.Dataset)): + raise TypeError("points must be a string, pd.DataFrame, xr.Dataset") + + if isinstance(points, str): + if not (points == "cells" or points == "faces"): + raise ValueError("points must be cells or faces") + + if not isinstance(time_index, int): + raise TypeError("time_index must be an int") + + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + + if isinstance(points, xr.Dataset): + points = points.to_pandas() + + max_time_index = data["time"].shape[0] - 1 # to account for zero index + if abs(time_index) > max_time_index: + raise ValueError( + f"time_index must be less than the absolute value of the max time index {max_time_index}" + ) + + if not isinstance(data, netCDF4._netCDF4.Dataset): + raise TypeError("data must be netCDF4 object") + + for variable in ["turkin1", "ucx", "ucy", "ucz"]: + if variable not in data.variables.keys(): + raise ValueError(f"Variable {variable} not present in Data") + + TI_vars = ["turkin1", "ucx", "ucy", "ucz"] TI_data_raw = {} for var in TI_vars: - var_data_df = get_all_data_points(data, var ,time_index) - TI_data_raw[var] = var_data_df - if type(points) == pd.DataFrame: - print('points provided') - elif points=='faces': - points = TI_data_raw['turkin1'].drop(['waterlevel','turkin1'],axis=1) - elif points=='cells': - points = TI_data_raw['ucx'].drop(['waterlevel','ucx'],axis=1) - + var_data_df = get_all_data_points(data, var, time_index) + TI_data_raw[var] = var_data_df + if type(points) == pd.DataFrame: + print("points provided") + elif points == "faces": + points = TI_data_raw["turkin1"].drop(["waterlevel", "turkin1"], axis=1) + elif points == "cells": + points = TI_data_raw["ucx"].drop(["waterlevel", "ucx"], axis=1) + TI_data = points.copy(deep=True) - for var in TI_vars: - TI_data[var] = interp.griddata(TI_data_raw[var][['x','y','waterdepth']], - TI_data_raw[var][var], points[['x','y','waterdepth']]) - idx= np.where(np.isnan(TI_data[var])) - + for var in TI_vars: + TI_data[var] = interp.griddata( + TI_data_raw[var][["x", "y", "waterdepth"]], + TI_data_raw[var][var], + points[["x", "y", "waterdepth"]], + ) + idx = np.where(np.isnan(TI_data[var])) + if len(idx[0]): - for i in idx[0]: - TI_data[var][i]= interp.griddata(TI_data_raw[var][['x','y','waterdepth']], - TI_data_raw[var][var], - [points['x'][i],points['y'][i], points['waterdepth'][i]], - method='nearest') - - u_mag=unorm(np.array(TI_data['ucx']),np.array(TI_data['ucy']), - np.array(TI_data['ucz'])) - - neg_index=np.where( TI_data['turkin1']<0) - zero_bool= np.isclose( TI_data['turkin1'][ TI_data['turkin1']<0].array, - np.zeros(len( TI_data['turkin1'][TI_data['turkin1']<0].array)), - atol=1.0e-4) - zero_ind= neg_index[0][zero_bool] - non_zero_ind= neg_index[0][~zero_bool] - TI_data.loc[zero_ind,'turkin1']=np.zeros(len(zero_ind)) - TI_data.loc[non_zero_ind,'turkin1']=[np.nan]*len(non_zero_ind) - - TI_data['turbulent_intensity']= np.sqrt(2/3*TI_data['turkin1'])/u_mag * 100 #% - + for i in idx[0]: + TI_data[var][i] = interp.griddata( + TI_data_raw[var][["x", "y", "waterdepth"]], + TI_data_raw[var][var], + [points["x"][i], points["y"][i], points["waterdepth"][i]], + method="nearest", + ) + + u_mag = unorm( + np.array(TI_data["ucx"]), np.array(TI_data["ucy"]), np.array(TI_data["ucz"]) + ) + + neg_index = np.where(TI_data["turkin1"] < 0) + zero_bool = np.isclose( + TI_data["turkin1"][TI_data["turkin1"] < 0].array, + np.zeros(len(TI_data["turkin1"][TI_data["turkin1"] < 0].array)), + atol=1.0e-4, + ) + zero_ind = neg_index[0][zero_bool] + non_zero_ind = neg_index[0][~zero_bool] + TI_data.loc[zero_ind, "turkin1"] = np.zeros(len(zero_ind)) + TI_data.loc[non_zero_ind, "turkin1"] = [np.nan] * len(non_zero_ind) + + TI_data["turbulent_intensity"] = ( + np.sqrt(2 / 3 * TI_data["turkin1"]) / u_mag * 100 + ) # % + if intermediate_values == False: - TI_data= TI_data.drop(TI_vars, axis = 1) - + TI_data = TI_data.drop(TI_vars, axis=1) + + if not to_pandas: + TI_data = TI_data.to_dataset() + return TI_data diff --git a/mhkit/river/io/usgs.py b/mhkit/river/io/usgs.py index 4583d458c..54c97966c 100644 --- a/mhkit/river/io/usgs.py +++ b/mhkit/river/io/usgs.py @@ -1,28 +1,38 @@ -import pandas as pd -import numpy as np +import os import json import requests +import shutil +import pandas as pd +from mhkit.utils.cache import handle_caching -def _read_usgs_json(text): - + +def _read_usgs_json(text, to_pandas=True): data = pd.DataFrame() - for i in range(len(text['value']['timeSeries'])): + for i in range(len(text["value"]["timeSeries"])): try: - site_name = text['value']['timeSeries'][i]['variable']['variableDescription'] #text['value']['timeSeries'][i]['sourceInfo']['siteName'] - site_data = pd.DataFrame(text['value']['timeSeries'][i]['values'][0]['value']) - site_data.set_index('dateTime', drop=True, inplace=True) + site_name = text["value"]["timeSeries"][i]["variable"][ + "variableDescription" + ] + site_data = pd.DataFrame( + text["value"]["timeSeries"][i]["values"][0]["value"] + ) + site_data.set_index("dateTime", drop=True, inplace=True) site_data.index = pd.to_datetime(site_data.index, utc=True) - site_data.rename(columns={'value': site_name}, inplace=True) + site_data.rename(columns={"value": site_name}, inplace=True) site_data[site_name] = pd.to_numeric(site_data[site_name]) site_data.index.name = None - del site_data['qualifiers'] + del site_data["qualifiers"] data = data.combine_first(site_data) except: pass - - return data # we could also extract metadata and return that here -def read_usgs_file(file_name): + if not to_pandas: + data = data.to_dataset() + + return data + + +def read_usgs_file(file_name, to_pandas=True): """ Reads a USGS JSON data file (from https://waterdata.usgs.gov/nwis) @@ -30,27 +40,41 @@ def read_usgs_file(file_name): ---------- file_name : str Name of USGS JSON data file - + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. + Returns ------- - data : pandas DataFrame - Data indexed by datetime with columns named according to the parameter's + data : pandas DataFrame or xarray Dataset + Data indexed by datetime with columns named according to the parameter's variable description """ + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + with open(file_name) as json_file: text = json.load(json_file) - - data = _read_usgs_json(text) - - return data + + data = _read_usgs_json(text, to_pandas) + + return data -def request_usgs_data(station, parameter, start_date, end_date, - data_type='Daily', proxy=None, write_json=None): +def request_usgs_data( + station, + parameter, + start_date, + end_date, + data_type="Daily", + proxy=None, + write_json=None, + clear_cache=False, + to_pandas=True, +): """ - Loads USGS data directly from https://waterdata.usgs.gov/nwis using a + Loads USGS data directly from https://waterdata.usgs.gov/nwis using a GET request - + The request URL prints to the screen. Parameters @@ -64,43 +88,89 @@ def request_usgs_data(station, parameter, start_date, end_date, end_date : str End date in the format 'YYYY-MM-DD' (e.g. '2018-12-31') data_type : str - Data type, options include 'Daily' (return the mean daily value) and + Data type, options include 'Daily' (return the mean daily value) and 'Instantaneous'. proxy : dict or None - To request data from behind a firewall, define a dictionary of proxy settings, + To request data from behind a firewall, define a dictionary of proxy settings, for example {"http": 'localhost:8080'} write_json : str or None Name of json file to write data - + clear_cache : bool + If True, the cache for this specific request will be cleared. + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. + Returns ------- - data : pandas DataFrame - Data indexed by datetime with columns named according to the parameter's + data : pandas DataFrame or xarray Dataset + Data indexed by datetime with columns named according to the parameter's variable description """ - assert data_type in ['Daily', 'Instantaneous'], 'data_type must be Daily or Instantaneous' - - if data_type == 'Daily': - data_url = 'https://waterservices.usgs.gov/nwis/dv' - api_query = '/?format=json&sites='+station+ \ - '&startDT='+start_date+'&endDT='+end_date+ \ - '&statCd=00003'+ \ - '¶meterCd='+parameter+'&siteStatus=all' + if not data_type in ["Daily", "Instantaneous"]: + raise ValueError(f"data_type must be Daily or Instantaneous. Got: {data_type}") + + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + + # Define the path to the cache directory + cache_dir = os.path.join(os.path.expanduser("~"), ".cache", "mhkit", "usgs") + + # Create a unique filename based on the function parameters + hash_params = f"{station}_{parameter}_{start_date}_{end_date}_{data_type}" + + # Use handle_caching to manage cache + cached_data, metadata, cache_filepath = handle_caching( + hash_params, cache_dir, write_json, clear_cache + ) + + if cached_data is not None: + return cached_data + + # If no cached data, proceed with the API request + if data_type == "Daily": + data_url = "https://waterservices.usgs.gov/nwis/dv" + api_query = ( + "/?format=json&sites=" + + station + + "&startDT=" + + start_date + + "&endDT=" + + end_date + + "&statCd=00003" + + "¶meterCd=" + + parameter + + "&siteStatus=all" + ) else: - data_url = 'https://waterservices.usgs.gov/nwis/iv' - api_query = '/?format=json&sites='+station+ \ - '&startDT='+start_date+'&endDT='+end_date+ \ - '¶meterCd='+parameter+'&siteStatus=all' - - print('Data request URL: ', data_url+api_query) - - response = requests.get(url=data_url+api_query,proxies=proxy) + data_url = "https://waterservices.usgs.gov/nwis/iv" + api_query = ( + "/?format=json&sites=" + + station + + "&startDT=" + + start_date + + "&endDT=" + + end_date + + "¶meterCd=" + + parameter + + "&siteStatus=all" + ) + + print("Data request URL: ", data_url + api_query) + + response = requests.get(url=data_url + api_query, proxies=proxy) text = json.loads(response.text) - - if write_json is not None: - with open(write_json, 'w') as outfile: - json.dump(text, outfile) - - data = _read_usgs_json(text) - - return data + + # handle_caching is only set-up for pandas, so force this data to output as pandas for now + data = _read_usgs_json(text, True) + + # After making the API request and processing the response, write the + # response to a cache file + handle_caching(hash_params, cache_dir, data=data, clear_cache_file=clear_cache) + + if write_json: + shutil.copy(cache_filepath, write_json) + + if not to_pandas: + data = data.to_dataset() + + return data diff --git a/mhkit/river/performance.py b/mhkit/river/performance.py index ac4529793..c805517ab 100644 --- a/mhkit/river/performance.py +++ b/mhkit/river/performance.py @@ -1,15 +1,16 @@ import numpy as np + def circular(diameter): """ - Calculates the equivalent diameter and projected capture area of a + Calculates the equivalent diameter and projected capture area of a circular turbine - + Parameters ------------ diameter : int/float Turbine diameter [m] - + Returns --------- equivalent_diameter : float @@ -17,23 +18,25 @@ def circular(diameter): projected_capture_area : float Projected capture area [m^2] """ - assert isinstance(diameter, (int,float)), 'diameter must be of type int or float' - + if not isinstance(diameter, (int, float)): + raise TypeError(f"diameter must be of type int or float. Got: {type(diameter)}") + equivalent_diameter = diameter - projected_capture_area = (1/4)*np.pi*(equivalent_diameter**2) - + projected_capture_area = (1 / 4) * np.pi * (equivalent_diameter**2) + return equivalent_diameter, projected_capture_area + def ducted(duct_diameter): """ Calculates the equivalent diameter and projected capture area of a ducted turbine - + Parameters ------------ duct_diameter : int/float Duct diameter [m] - + Returns --------- equivalent_diameter : float @@ -41,25 +44,29 @@ def ducted(duct_diameter): projected_capture_area : float Projected capture area [m^2] """ - assert isinstance(duct_diameter, (int,float)), 'duct_diameter must be of type int or float' - + if not isinstance(duct_diameter, (int, float)): + raise TypeError( + f"duct_diameter must be of type int or float. Got: {type(duct_diameter)}" + ) + equivalent_diameter = duct_diameter - projected_capture_area = (1/4)*np.pi*(equivalent_diameter**2) + projected_capture_area = (1 / 4) * np.pi * (equivalent_diameter**2) return equivalent_diameter, projected_capture_area + def rectangular(h, w): """ - Calculates the equivalent diameter and projected capture area of a + Calculates the equivalent diameter and projected capture area of a retangular turbine - + Parameters ------------ h : int/float Turbine height [m] w : int/float Turbine width [m] - + Returns --------- equivalent_diameter : float @@ -67,24 +74,27 @@ def rectangular(h, w): projected_capture_area : float Projected capture area [m^2] """ - assert isinstance(h, (int,float)), 'h must be of type int or float' - assert isinstance(w, (int,float)), 'w must be of type int or float' - - equivalent_diameter = np.sqrt(4.*h*w / np.pi) - projected_capture_area = h*w + if not isinstance(h, (int, float)): + raise TypeError(f"h must be of type int or float. Got: {type(h)}") + if not isinstance(w, (int, float)): + raise TypeError(f"w must be of type int or float. Got: {type(w)}") + + equivalent_diameter = np.sqrt(4.0 * h * w / np.pi) + projected_capture_area = h * w return equivalent_diameter, projected_capture_area + def multiple_circular(diameters): """ - Calculates the equivalent diameter and projected capture area of a + Calculates the equivalent diameter and projected capture area of a multiple circular turbine - + Parameters ------------ - diameters: list + diameters: list List of device diameters [m] - + Returns --------- equivalent_diameter : float @@ -92,16 +102,18 @@ def multiple_circular(diameters): projected_capture_area : float Projected capture area [m^2] """ - assert isinstance(diameters, list), 'diameters must be of type list' - + if not isinstance(diameters, list): + raise TypeError(f"diameters must be of type list. Got: {type(diameters)}") + diameters_squared = [x**2 for x in diameters] equivalent_diameter = np.sqrt(sum(diameters_squared)) - projected_capture_area = 0.25*np.pi*sum(diameters_squared) + projected_capture_area = 0.25 * np.pi * sum(diameters_squared) return equivalent_diameter, projected_capture_area -def tip_speed_ratio(rotor_speed,rotor_diameter,inflow_speed): - ''' + +def tip_speed_ratio(rotor_speed, rotor_diameter, inflow_speed): + """ Function used to calculate the tip speed ratio (TSR) of a MEC device with rotor Parameters @@ -117,24 +129,31 @@ def tip_speed_ratio(rotor_speed,rotor_diameter,inflow_speed): -------- TSR : numpy array Calculated tip speed ratio (TSR) - ''' - - try: rotor_speed = np.asarray(rotor_speed) - except: 'rotor_speed must be of type np.ndarray' - try: inflow_speed = np.asarray(inflow_speed) - except: 'inflow_speed must be of type np.ndarray' - - assert isinstance(rotor_diameter, (float,int)), 'rotor diameter must be of type int or float' + """ + try: + rotor_speed = np.asarray(rotor_speed) + except: + "rotor_speed must be of type np.ndarray" + try: + inflow_speed = np.asarray(inflow_speed) + except: + "inflow_speed must be of type np.ndarray" - rotor_velocity = rotor_speed * np.pi*rotor_diameter + if not isinstance(rotor_diameter, (float, int)): + raise TypeError( + f"rotor_diameter must be of type int or float. Got: {type(rotor_diameter)}" + ) + + rotor_velocity = rotor_speed * np.pi * rotor_diameter TSR = rotor_velocity / inflow_speed return TSR -def power_coefficient(power,inflow_speed,capture_area,rho): - ''' + +def power_coefficient(power, inflow_speed, capture_area, rho): + """ Function that calculates the power coefficient of MEC device Parameters @@ -152,20 +171,27 @@ def power_coefficient(power,inflow_speed,capture_area,rho): -------- Cp : numpy array Power coefficient of device [-] - ''' - - try: power = np.asarray(power) - except: 'power must be of type np.ndarray' - try: inflow_speed = np.asarray(inflow_speed) - except: 'inflow_speed must be of type np.ndarray' - - assert isinstance(capture_area, (float,int)), 'capture_area must be of type int or float' - assert isinstance(rho, (float,int)), 'rho must be of type int or float' + """ + + try: + power = np.asarray(power) + except: + "power must be of type np.ndarray" + try: + inflow_speed = np.asarray(inflow_speed) + except: + "inflow_speed must be of type np.ndarray" + + if not isinstance(capture_area, (float, int)): + raise TypeError( + f"capture_area must be of type int or float. Got: {type(capture_area)}" + ) + if not isinstance(rho, (float, int)): + raise TypeError(f"rho must be of type int or float. Got: {type(rho)}") # Predicted power from inflow - power_in = (0.5 * rho * capture_area * inflow_speed**3) + power_in = 0.5 * rho * capture_area * inflow_speed**3 - Cp = power / power_in + Cp = power / power_in return Cp - diff --git a/mhkit/river/resource.py b/mhkit/river/resource.py index c4a0e760c..2a0e06ffd 100644 --- a/mhkit/river/resource.py +++ b/mhkit/river/resource.py @@ -1,20 +1,21 @@ -import pandas as pd +import xarray as xr import numpy as np from scipy.stats import linregress as _linregress from scipy.stats import rv_histogram as _rv_histogram +from mhkit.utils import convert_to_dataarray def Froude_number(v, h, g=9.80665): """ Calculate the Froude Number of the river, channel or duct flow, to check subcritical flow assumption (if Fr <1). - + Parameters ------------ - v : int/float + v : int/float Average velocity [m/s]. h : int/float - Mean hydrolic depth float [m]. + Mean hydraulic depth float [m]. g : int/float Gravitational acceleration [m/s2]. @@ -24,40 +25,60 @@ def Froude_number(v, h, g=9.80665): Froude Number of the river [unitless]. """ - assert isinstance(v, (int,float)), 'v must be of type int or float' - assert isinstance(h, (int,float)), 'h must be of type int or float' - assert isinstance(g, (int,float)), 'g must be of type int or float' - - Fr = v / np.sqrt( g * h ) - - return Fr + if not isinstance(v, (int, float)): + raise TypeError(f"v must be of type int or float. Got: {type(v)}") + if not isinstance(h, (int, float)): + raise TypeError(f"h must be of type int or float. Got: {type(h)}") + if not isinstance(g, (int, float)): + raise TypeError(f"g must be of type int or float. Got: {type(g)}") + + Fr = v / np.sqrt(g * h) + + return Fr -def exceedance_probability(D): +def exceedance_probability(D, dimension="", to_pandas=True): """ Calculates the exceedance probability - + Parameters ---------- - D : pandas Series - Data indexed by time [datetime or s]. - - Returns + D : pandas Series, pandas DataFrame, xarray DataArray, or xarray Dataset + Discharge indexed by time [datetime or s]. + + dimension: string (optional) + Name of the relevant xarray dimension. If not supplied, + defaults to the first dimension. Does not affect pandas input. + + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. + + Returns ------- - F : pandas DataFrame + F : pandas DataFrame or xarray Dataset Exceedance probability [unitless] indexed by time [datetime or s] - """ - assert isinstance(D, (pd.DataFrame, pd.Series)), 'D must be of type pd.Series' # dataframe allowed for matlab - - if isinstance(D, pd.DataFrame) and len(D.columns) == 1: # for matlab - D = D.squeeze().copy() - - # Calculate exceedence probability (F) - rank = D.rank(method='max', ascending=False) - F = 100* (rank / (len(D)+1) ) - - F = F.to_frame('F') # for matlab - + """ + if not isinstance(dimension, str): + raise TypeError(f"dimension must be of type str. Got: {type(dimension)}") + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + + D = convert_to_dataarray(D) + + if dimension == "": + dimension = list(D.coords)[0] + + # Calculate exceedance probability (F) + rank = D.rank(dim=dimension) + rank = len(D[dimension]) - rank + 1 # convert to descending rank + F = 100 * rank / (len(D[dimension]) + 1) + F.name = "F" + + F = F.to_dataset() # for matlab + + if to_pandas: + F = F.to_pandas() + return F @@ -81,7 +102,7 @@ def polynomial_fit(x, y, n): List of polynomial coefficients R2 : float Polynomical fit coeffcient of determination - + """ try: x = np.array(x) @@ -91,132 +112,176 @@ def polynomial_fit(x, y, n): y = np.array(y) except: pass - assert isinstance(x, np.ndarray), 'x must be of type np.ndarray' - assert isinstance(y, np.ndarray), 'y must be of type np.ndarray' - assert isinstance(n, int), 'n must be of type int' - - # Get coeffcients of polynomial of order n + if not isinstance(x, np.ndarray): + raise TypeError(f"x must be of type np.ndarray. Got: {type(x)}") + if not isinstance(y, np.ndarray): + raise TypeError(f"y must be of type np.ndarray. Got: {type(y)}") + if not isinstance(n, int): + raise TypeError(f"n must be of type int. Got: {type(n)}") + + # Get coeffcients of polynomial of order n polynomial_coefficients = np.poly1d(np.polyfit(x, y, n)) - + # Calculate the coeffcient of determination - slope, intercept, r_value, p_value, std_err = _linregress(y, polynomial_coefficients(x)) + slope, intercept, r_value, p_value, std_err = _linregress( + y, polynomial_coefficients(x) + ) R2 = r_value**2 - + return polynomial_coefficients, R2 - -def discharge_to_velocity(D, polynomial_coefficients): + +def discharge_to_velocity(D, polynomial_coefficients, dimension="", to_pandas=True): """ - Calculates velocity given discharge data and the relationship between + Calculates velocity given discharge data and the relationship between discharge and velocity at an individual turbine - + Parameters ------------ - D : pandas Series + D : numpy ndarray, pandas DataFrame, pandas Series, xarray DataArray, or xarray Dataset Discharge data [m3/s] indexed by time [datetime or s] polynomial_coefficients : numpy polynomial - List of polynomial coefficients that discribe the relationship between + List of polynomial coefficients that describe the relationship between discharge and velocity at an individual turbine - - Returns + dimension: string (optional) + Name of the relevant xarray dimension. If not supplied, + defaults to the first dimension. Does not affect pandas input. + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. + + Returns ------------ - V: pandas DataFrame + V: pandas DataFrame or xarray Dataset Velocity [m/s] indexed by time [datetime or s] - """ - assert isinstance(D, (pd.DataFrame, pd.Series)), 'D must be of type pd.Series' # dataframe allowed for matlab - assert isinstance(polynomial_coefficients, np.poly1d), 'polynomial_coefficients must be of type np.poly1d' - - if isinstance(D, pd.DataFrame) and len(D.columns) == 1: # for matlab - D = D.squeeze().copy() - + """ + if not isinstance(polynomial_coefficients, np.poly1d): + raise TypeError( + f"polynomial_coefficients must be of type np.poly1d. Got: {type(polynomial_coefficients)}" + ) + if not isinstance(dimension, str): + raise TypeError(f"dimension must be of type str. Got: {type(dimension)}") + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type str. Got: {type(to_pandas)}") + + D = convert_to_dataarray(D) + + if dimension == "": + dimension = list(D.coords)[0] + # Calculate velocity using polynomial - vals = polynomial_coefficients(D) - V = pd.Series(vals, index=D.index) - - V = V.to_frame('V') # for matlab - + V = xr.DataArray( + data=polynomial_coefficients(D), + dims=dimension, + coords={dimension: D[dimension]}, + ) + V.name = "V" + + V = V.to_dataset() # for matlab + + if to_pandas: + V = V.to_pandas() + return V - -def velocity_to_power(V, polynomial_coefficients, cut_in, cut_out): + +def velocity_to_power( + V, polynomial_coefficients, cut_in, cut_out, dimension="", to_pandas=True +): """ - Calculates power given velocity data and the relationship + Calculates power given velocity data and the relationship between velocity and power from an individual turbine - + Parameters ---------- - V : pandas Series + V : numpy ndarray, pandas DataFrame, pandas Series, xarray DataArray, or xarray Dataset Velocity [m/s] indexed by time [datetime or s] polynomial_coefficients : numpy polynomial - List of polynomial coefficients that discribe the relationship between + List of polynomial coefficients that describe the relationship between velocity and power at an individual turbine cut_in: int/float Velocity values below cut_in are not used to compute P cut_out: int/float Velocity values above cut_out are not used to compute P - - Returns + dimension: string (optional) + Name of the relevant xarray dimension. If not supplied, + defaults to the first dimension. Does not affect pandas input. + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. + + Returns ------- - P : pandas DataFrame + P : pandas DataFrame or xarray Dataset Power [W] indexed by time [datetime or s] - """ - assert isinstance(V, (pd.DataFrame, pd.Series)), 'V must be of type pd.Series' # dataframe allowed for matlab - assert isinstance(polynomial_coefficients, np.poly1d), 'polynomial_coefficients must be of type np.poly1d' - assert isinstance(cut_in, (int,float)), 'cut_in must be of type int or float' - assert isinstance(cut_out, (int,float)), 'cut_out must be of type int or float' - - if isinstance(V, pd.DataFrame) and len(V.columns) == 1: - V = V.squeeze().copy() - - # Calculate power using tranfer function and FDC - vals = polynomial_coefficients(V) - + """ + if not isinstance(polynomial_coefficients, np.poly1d): + raise TypeError( + f"polynomial_coefficients must be of type np.poly1d. Got: {type(polynomial_coefficients)}" + ) + if not isinstance(cut_in, (int, float)): + raise TypeError(f"cut_in must be of type int or float. Got: {type(cut_in)}") + if not isinstance(cut_out, (int, float)): + raise TypeError(f"cut_out must be of type int or float. Got: {type(cut_out)}") + if not isinstance(dimension, str): + raise TypeError(f"dimension must be of type str. Got: {type(dimension)}") + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type str. Got: {type(to_pandas)}") + + V = convert_to_dataarray(V) + + if dimension == "": + dimension = list(V.coords)[0] + + # Calculate velocity using polynomial + power = polynomial_coefficients(V) + # Power for velocity values outside lower and upper bounds Turbine produces 0 power - vals[V < cut_in] = 0. - vals[V > cut_out] = 0. + power[V < cut_in] = 0.0 + power[V > cut_out] = 0.0 + + P = xr.DataArray(data=power, dims=dimension, coords={dimension: V[dimension]}) + P.name = "P" + + P = P.to_dataset() + + if to_pandas: + P = P.to_pandas() - P = pd.Series(vals, index=V.index) - - P = P.to_frame('P') # for matlab - return P def energy_produced(P, seconds): """ Returns the energy produced for a given time period provided - exceedence probability and power. - + exceedance probability and power. + Parameters ---------- - P : pandas Series + P : numpy ndarray, pandas DataFrame, pandas Series, xarray DataArray, or xarray Dataset Power [W] indexed by time [datetime or s] seconds: int or float Seconds in the time period of interest - + Returns ------- E : float - Energy [J] produced in the given time frame + Energy [J] produced in the given length of time """ - assert isinstance(P, (pd.DataFrame, pd.Series)), 'D must be of type pd.Series' # dataframe allowed for matlab - assert isinstance(seconds, (int, float)), 'seconds must be of type int or float' + if not isinstance(seconds, (int, float)): + raise TypeError(f"seconds must be of type int or float. Got: {type(seconds)}") + + P = convert_to_dataarray(P) - if isinstance(P, pd.DataFrame) and len(P.columns) == 1: # for matlab - P = P.squeeze().copy() - # Calculate Histogram of power - H, edges = np.histogram(P, 100 ) + H, edges = np.histogram(P, 100) # Create a distribution - hist_dist = _rv_histogram([H,edges]) + hist_dist = _rv_histogram([H, edges]) # Sample range for pdf - x = np.linspace(edges.min(),edges.max(),1000) + x = np.linspace(edges.min(), edges.max(), 1000) # Calculate the expected value of Power - expected_val_of_power = np.trapz(x*hist_dist.pdf(x),x=x) + expected_val_of_power = np.trapz(x * hist_dist.pdf(x), x=x) # Note: Built-in Expected Value method often throws warning - #EV = hist_dist.expect(lb=edges.min(), ub=edges.max()) + # EV = hist_dist.expect(lb=edges.min(), ub=edges.max()) # Energy - E = seconds * expected_val_of_power - - return E + E = seconds * expected_val_of_power + return E diff --git a/mhkit/tests/dolfyn/base.py b/mhkit/tests/dolfyn/base.py index 13327baa4..780b9688c 100644 --- a/mhkit/tests/dolfyn/base.py +++ b/mhkit/tests/dolfyn/base.py @@ -7,15 +7,16 @@ def rfnm(filename): testdir = dirname(abspath(__file__)) - datadir = normpath(join(testdir, relpath( - '../../../examples/data/dolfyn/test_data/'))) - return datadir + '/' + filename + datadir = normpath( + join(testdir, relpath("../../../examples/data/dolfyn/test_data/")) + ) + return datadir + "/" + filename def exdt(filename): testdir = dirname(abspath(__file__)) - exdir = normpath(join(testdir, relpath('../../../examples/data/dolfyn/'))) - return exdir + '/' + filename + exdir = normpath(join(testdir, relpath("../../../examples/data/dolfyn/"))) + return exdir + "/" + filename def assert_allclose(dat0, dat1, *args, **kwargs): @@ -30,8 +31,9 @@ def assert_allclose(dat0, dat1, *args, **kwargs): _assert_allclose(dat0, dat1, *args, **kwargs) # Check attributes for nm in dat0.attrs: - assert dat0.attrs[nm] == dat1.attrs[nm], "The " + \ - nm + " attribute does not match." + assert dat0.attrs[nm] == dat1.attrs[nm], ( + "The " + nm + " attribute does not match." + ) # If test debugging for v in names: dat0[v] = time.epoch2dt64(dat0[v]) @@ -46,9 +48,9 @@ def save_netcdf(data, name, *args, **kwargs): io.save(data, rfnm(name), *args, **kwargs) -def load_matlab(name, *args, **kwargs): +def load_matlab(name, *args, **kwargs): return io.load_mat(rfnm(name), *args, **kwargs) -def save_matlab(data, name, *args, **kwargs): +def save_matlab(data, name, *args, **kwargs): io.save_mat(data, rfnm(name), *args, **kwargs) diff --git a/mhkit/tests/dolfyn/test_analysis.py b/mhkit/tests/dolfyn/test_analysis.py index f75d5e952..da10f5449 100644 --- a/mhkit/tests/dolfyn/test_analysis.py +++ b/mhkit/tests/dolfyn/test_analysis.py @@ -1,5 +1,9 @@ from . import test_read_adp as tr, test_read_adv as tv -from mhkit.tests.dolfyn.base import load_netcdf as load, save_netcdf as save, assert_allclose +from mhkit.tests.dolfyn.base import ( + load_netcdf as load, + save_netcdf as save, + assert_allclose, +) from mhkit.dolfyn import VelBinner, read_example import mhkit.dolfyn.adv.api as avm import mhkit.dolfyn.adp.api as apm @@ -15,14 +19,14 @@ class analysis_testcase(unittest.TestCase): @classmethod def setUpClass(self): self.adv1 = tv.dat.copy(deep=True) - self.adv2 = read_example('vector_burst_mode01.VEC', nens=90) + self.adv2 = read_example("vector_burst_mode01.VEC", nens=90) self.adv_tool = VelBinner(n_bin=self.adv1.fs, fs=self.adv1.fs) self.adp = tr.dat_sig.copy(deep=True) with pytest.warns(UserWarning): - self.adp_tool = VelBinner(n_bin=self.adp.fs*20, - fs=self.adp.fs, - n_fft=self.adp.fs*40) + self.adp_tool = VelBinner( + n_bin=self.adp.fs * 20, fs=self.adp.fs, n_fft=self.adp.fs * 40 + ) @classmethod def tearDownClass(self): @@ -33,19 +37,19 @@ def test_do_func(self): ds_vec = self.adv_tool.bin_variance(self.adv1, out_ds=ds_vec) # test non-integer bin sizes - mean_test = self.adv_tool.mean(self.adv1['vel'].values, n_bin=ds_vec.fs*1.01) + mean_test = self.adv_tool.mean(self.adv1["vel"].values, n_bin=ds_vec.fs * 1.01) ds_sig = self.adp_tool.bin_average(self.adp) ds_sig = self.adp_tool.bin_variance(self.adp, out_ds=ds_sig) if make_data: - save(ds_vec, 'vector_data01_avg.nc') - save(ds_sig, 'BenchFile01_avg.nc') + save(ds_vec, "vector_data01_avg.nc") + save(ds_sig, "BenchFile01_avg.nc") return - assert np.sum(mean_test-ds_vec.vel.values) == 0, "Mean test failed" - assert_allclose(ds_vec, load('vector_data01_avg.nc'), atol=1e-6) - assert_allclose(ds_sig, load('BenchFile01_avg.nc'), atol=1e-6) + assert np.sum(mean_test - ds_vec.vel.values) == 0, "Mean test failed" + assert_allclose(ds_vec, load("vector_data01_avg.nc"), atol=1e-6) + assert_allclose(ds_sig, load("BenchFile01_avg.nc"), atol=1e-6) def test_calc_func(self): c = self.adv_tool @@ -54,94 +58,144 @@ def test_calc_func(self): test_ds = type(self.adv1)() test_ds_adp = type(self.adp)() - test_ds['acov'] = c.autocovariance(self.adv1.vel) - test_ds['tke_vec_detrend'] = c.turbulent_kinetic_energy( - self.adv1.vel, detrend=True) - test_ds['tke_vec_demean'] = c.turbulent_kinetic_energy( - self.adv1.vel, detrend=False) - test_ds['psd'] = c.power_spectral_density( - self.adv1.vel, freq_units='Hz') + test_ds["acov"] = c.autocovariance(self.adv1.vel) + test_ds["tke_vec_detrend"] = c.turbulent_kinetic_energy( + self.adv1.vel, detrend=True + ) + test_ds["tke_vec_demean"] = c.turbulent_kinetic_energy( + self.adv1.vel, detrend=False + ) + test_ds["psd"] = c.power_spectral_density(self.adv1.vel, freq_units="Hz") # Test ADCP single vector spectra, cross-spectra to test radians code - test_ds_adp['psd_b5'] = c2.power_spectral_density( - self.adp.vel_b5.isel(range_b5=5), freq_units='rad', window='hamm') - test_ds_adp['tke_b5'] = c2.turbulent_kinetic_energy(self.adp.vel_b5) + test_ds_adp["psd_b5"] = c2.power_spectral_density( + self.adp.vel_b5.isel(range_b5=5), freq_units="rad", window="hamm" + ) + test_ds_adp["tke_b5"] = c2.turbulent_kinetic_energy(self.adp.vel_b5) if make_data: - save(test_ds, 'vector_data01_func.nc') - save(test_ds_adp, 'BenchFile01_func.nc') + save(test_ds, "vector_data01_func.nc") + save(test_ds_adp, "BenchFile01_func.nc") return - assert_allclose(test_ds, load('vector_data01_func.nc'), atol=1e-6) - assert_allclose(test_ds_adp, load('BenchFile01_func.nc'), atol=1e-6) + assert_allclose(test_ds, load("vector_data01_func.nc"), atol=1e-6) + assert_allclose(test_ds_adp, load("BenchFile01_func.nc"), atol=1e-6) def test_fft_freq(self): - f = self.adv_tool._fft_freq(units='Hz') - omega = self.adv_tool._fft_freq(units='rad/s') + f = self.adv_tool._fft_freq(units="Hz") + omega = self.adv_tool._fft_freq(units="rad/s") - np.testing.assert_equal(f, np.arange(1, 17, 1, dtype='float')) - np.testing.assert_equal(omega, np.arange( - 1, 17, 1, dtype='float')*(2*np.pi)) + np.testing.assert_equal(f, np.arange(1, 17, 1, dtype="float")) + np.testing.assert_equal(omega, np.arange(1, 17, 1, dtype="float") * (2 * np.pi)) def test_adv_turbulence(self): dat = tv.dat.copy(deep=True) bnr = avm.ADVBinner(n_bin=20.0, fs=dat.fs) tdat = bnr(dat) - acov = bnr.autocovariance(dat.vel) - - assert_identical(tdat, avm.turbulence_statistics( - dat, n_bin=20.0, fs=dat.fs)) - - tdat['stress_detrend'] = bnr.reynolds_stress(dat.vel) - tdat['stress_demean'] = bnr.reynolds_stress(dat.vel, detrend=False) - tdat['csd'] = bnr.cross_spectral_density( - dat.vel, freq_units='rad', window='hamm', n_fft_coh=10) - tdat['LT83'] = bnr.dissipation_rate_LT83(tdat.psd, tdat.velds.U_mag) - tdat['SF'] = bnr.dissipation_rate_SF(dat.vel[0], tdat.velds.U_mag) - tdat['TE01'] = bnr.dissipation_rate_TE01(dat, tdat) - tdat['L'] = bnr.integral_length_scales(acov, tdat.velds.U_mag) + acov = bnr.autocovariance(dat["vel"]) + + assert_identical(tdat, avm.turbulence_statistics(dat, n_bin=20.0, fs=dat.fs)) + + tdat["stress_detrend"] = bnr.reynolds_stress(dat["vel"]) + tdat["stress_demean"] = bnr.reynolds_stress(dat["vel"], detrend=False) + tdat["csd"] = bnr.cross_spectral_density( + dat["vel"], freq_units="rad", window="hamm", n_fft_coh=10 + ) + tdat["LT83"] = bnr.dissipation_rate_LT83(tdat["psd"], tdat.velds.U_mag) + tdat["noise"] = bnr.doppler_noise_level(tdat["psd"], pct_fN=0.8) + tdat["LT83_noise"] = bnr.dissipation_rate_LT83( + tdat["psd"], tdat.velds.U_mag, noise=tdat["noise"] + ) + tdat["SF"] = bnr.dissipation_rate_SF(dat["vel"][0], tdat.velds.U_mag) + tdat["TE01"] = bnr.dissipation_rate_TE01(dat, tdat) + tdat["L"] = bnr.integral_length_scales(acov, tdat.velds.U_mag) slope_check = bnr.check_turbulence_cascade_slope( - tdat['psd'][-1].mean('time'), freq_range=[10, 100]) + tdat["psd"][-1].mean("time"), freq_range=[10, 100] + ) + tdat["psd_noise"] = bnr.power_spectral_density( + dat["vel"], freq_units="rad", noise=[0.06, 0.04, 0.01] + ) if make_data: - save(tdat, 'vector_data01_bin.nc') + save(tdat, "vector_data01_bin.nc") return assert np.round(slope_check[0].values, 4), 0.1713 - assert_allclose(tdat, load('vector_data01_bin.nc'), atol=1e-6) - + assert_allclose(tdat, load("vector_data01_bin.nc"), atol=1e-6) def test_adcp_turbulence(self): - dat = tr.dat_sig_i.copy(deep=True) - bnr = apm.ADPBinner(n_bin=20.0, fs=dat.fs, diff_style='centered') + dat = tr.dat_sig_tide.copy(deep=True) + dat.velds.rotate2("earth") + dat.attrs["principal_heading"] = apm.calc_principal_heading( + dat.vel.mean("range") + ) + bnr = apm.ADPBinner(n_bin=20.0, fs=dat.fs, diff_style="centered") tdat = bnr.bin_average(dat) - tdat['dudz'] = bnr.dudz(tdat.vel) - tdat['dvdz'] = bnr.dvdz(tdat.vel) - tdat['dwdz'] = bnr.dwdz(tdat.vel) - tdat['tau2'] = bnr.shear_squared(tdat.vel) - tdat['psd'] = bnr.power_spectral_density(dat['vel'].isel( - dir=2, range=len(dat.range)//2), freq_units='Hz') - tdat['noise'] = bnr.doppler_noise_level(tdat['psd'], pct_fN=0.8) - tdat['stress_vec4'] = bnr.reynolds_stress_4beam( - dat, noise=tdat['noise'], orientation='up', beam_angle=25) - tdat['tke_vec5'], tdat['stress_vec5'] = bnr.stress_tensor_5beam( - dat, noise=tdat['noise'], orientation='up', beam_angle=25, tke_only=False) - tdat['tke'] = bnr.total_turbulent_kinetic_energy( - dat, noise=tdat['noise'], orientation='up', beam_angle=25) + + tdat["dudz"] = bnr.dudz(tdat["vel"]) + tdat["dvdz"] = bnr.dvdz(tdat["vel"]) + tdat["dwdz"] = bnr.dwdz(tdat["vel"]) + tdat["tau2"] = bnr.shear_squared(tdat["vel"]) + tdat["I"] = tdat.velds.I + tdat["ti"] = bnr.turbulence_intensity(dat.velds.U_mag, detrend=False) + dat.velds.rotate2("beam") + + tdat["psd"] = bnr.power_spectral_density( + dat["vel"].isel(dir=2, range=len(dat.range) // 2), freq_units="Hz" + ) + tdat["noise"] = bnr.doppler_noise_level(tdat["psd"], pct_fN=0.8) + tdat["stress_vec4"] = bnr.reynolds_stress_4beam( + dat, noise=tdat["noise"], orientation="up", beam_angle=25 + ) + tdat["tke_vec5"], tdat["stress_vec5"] = bnr.stress_tensor_5beam( + dat, noise=tdat["noise"], orientation="up", beam_angle=25, tke_only=False + ) + tdat["tke"] = bnr.total_turbulent_kinetic_energy( + dat, noise=tdat["noise"], orientation="up", beam_angle=25 + ) + tdat["ti_noise"] = bnr.turbulence_intensity( + dat.velds.U_mag, detrend=False, noise=tdat["noise"] + ) # This is "negative" for this code check - tdat['wpwp'] = bnr.turbulent_kinetic_energy(dat['vel_b5'], noise=tdat['noise']) - tdat['dissipation_rate_LT83'] = bnr.dissipation_rate_LT83( - tdat['psd'], tdat.velds.U_mag.isel(range=len(dat.range)//2), freq_range=[0.2, 0.4]) - tdat['dissipation_rate_SF'], tdat['noise_SF'], tdat['D_SF'] = bnr.dissipation_rate_SF( - dat.vel.isel(dir=2), r_range=[1, 5]) - tdat['friction_vel'] = bnr.friction_velocity( - tdat, upwp_=tdat['stress_vec5'].sel(tau='upwp_'), z_inds=slice(1, 5), H=50) + tdat["wpwp"] = bnr.turbulent_kinetic_energy(dat["vel_b5"], noise=tdat["noise"]) + tdat["dissipation_rate_LT83"] = bnr.dissipation_rate_LT83( + tdat["psd"], + tdat.velds.U_mag.isel(range=len(dat.range) // 2), + freq_range=[0.2, 0.4], + ) + tdat["dissipation_rate_LT83_noise"] = bnr.dissipation_rate_LT83( + tdat["psd"], + tdat.velds.U_mag.isel(range=len(dat.range) // 2), + freq_range=[0.2, 0.4], + noise=tdat["noise"], + ) + ( + tdat["dissipation_rate_SF"], + tdat["noise_SF"], + tdat["D_SF"], + ) = bnr.dissipation_rate_SF(dat.vel.isel(dir=2), r_range=[1, 5]) + tdat["friction_vel"] = bnr.friction_velocity( + tdat, upwp_=tdat["stress_vec5"].sel(tau="upwp_"), z_inds=slice(1, 5), H=50 + ) slope_check = bnr.check_turbulence_cascade_slope( - tdat['psd'].mean('time'), freq_range=[0.4, 4]) + tdat["psd"].mean("time"), freq_range=[0.4, 4] + ) + tdat["psd_noise"] = bnr.power_spectral_density( + dat["vel"].isel(dir=2, range=len(dat.range) // 2), + freq_units="Hz", + noise=0.01, + ) if make_data: - save(tdat, 'Sig1000_IMU_bin.nc') + save(tdat, "Sig1000_tidal_bin.nc") return + with pytest.raises(Exception): + bnr.calc_psd(dat["vel"], freq_units="Hz", noise=0.01) + + with pytest.raises(Exception): + bnr.calc_psd(dat["vel"][0], freq_units="Hz", noise=0.01) + assert np.round(slope_check[0].values, 4), -1.0682 - assert_allclose(tdat, load('Sig1000_IMU_bin.nc'), atol=1e-6) + + assert_allclose(tdat, load("Sig1000_tidal_bin.nc"), atol=1e-6) diff --git a/mhkit/tests/dolfyn/test_api.py b/mhkit/tests/dolfyn/test_api.py index 57320cb71..272ff1215 100644 --- a/mhkit/tests/dolfyn/test_api.py +++ b/mhkit/tests/dolfyn/test_api.py @@ -3,22 +3,24 @@ make_data = False -vec = load('vector_data01.nc') -sig = load('BenchFile01.nc') -rdi = load('RDI_test01.nc') +vec = load("vector_data01.nc") +sig = load("BenchFile01.nc") +rdi = load("RDI_test01.nc") class api_testcase(unittest.TestCase): def test_repr(self): _str = [] - for dat, fnm in [(vec, rfnm('vector_data01.repr.txt')), - (sig, rfnm('BenchFile01.repr.txt')), - (rdi, rfnm('RDI_test01.repr.txt')), ]: + for dat, fnm in [ + (vec, rfnm("vector_data01.repr.txt")), + (sig, rfnm("BenchFile01.repr.txt")), + (rdi, rfnm("RDI_test01.repr.txt")), + ]: _str = dat.velds.__repr__() if make_data: - with open(fnm, 'w') as fl: + with open(fnm, "w") as fl: fl.write(_str) else: - with open(fnm, 'r') as fl: + with open(fnm, "r") as fl: test_str = fl.read() assert test_str == _str diff --git a/mhkit/tests/dolfyn/test_clean.py b/mhkit/tests/dolfyn/test_clean.py index e237bd569..17c3d3f3e 100644 --- a/mhkit/tests/dolfyn/test_clean.py +++ b/mhkit/tests/dolfyn/test_clean.py @@ -15,50 +15,48 @@ def test_GN2002(self): td_imu = tv.dat_imu.copy(deep=True) mask = avm.clean.GN2002(td.vel, npt=20) - td['vel'] = avm.clean.clean_fill( - td.vel, mask, method='cubic', maxgap=6) - td['vel_clean_1D'] = avm.clean.fill_nan_ensemble_mean( - td.vel[0], mask[0], fs=1, window=45) - td['vel_clean_2D'] = avm.clean.fill_nan_ensemble_mean( - td.vel, mask, fs=1, window=45) + td["vel"] = avm.clean.clean_fill(td.vel, mask, method="cubic", maxgap=6) + td["vel_clean_1D"] = avm.clean.fill_nan_ensemble_mean( + td.vel[0], mask[0], fs=1, window=45 + ) + td["vel_clean_2D"] = avm.clean.fill_nan_ensemble_mean( + td.vel, mask, fs=1, window=45 + ) mask = avm.clean.GN2002(td_imu.vel, npt=20) - td_imu['vel'] = avm.clean.clean_fill( - td_imu.vel, mask, method='cubic', maxgap=6) + td_imu["vel"] = avm.clean.clean_fill(td_imu.vel, mask, method="cubic", maxgap=6) if make_data: - save(td, 'vector_data01_GN.nc') - save(td_imu, 'vector_data_imu01_GN.nc') + save(td, "vector_data01_GN.nc") + save(td_imu, "vector_data_imu01_GN.nc") return - assert_allclose(td, load('vector_data01_GN.nc'), atol=1e-6) - assert_allclose(td_imu, load('vector_data_imu01_GN.nc'), atol=1e-6) + assert_allclose(td, load("vector_data01_GN.nc"), atol=1e-6) + assert_allclose(td_imu, load("vector_data_imu01_GN.nc"), atol=1e-6) def test_spike_thresh(self): td = tv.dat_imu.copy(deep=True) mask = avm.clean.spike_thresh(td.vel, thresh=10) - td['vel'] = avm.clean.clean_fill( - td.vel, mask, method='cubic', maxgap=6) + td["vel"] = avm.clean.clean_fill(td.vel, mask, method="cubic", maxgap=6) if make_data: - save(td, 'vector_data01_sclean.nc') + save(td, "vector_data01_sclean.nc") return - assert_allclose(td, load('vector_data01_sclean.nc'), atol=1e-6) + assert_allclose(td, load("vector_data01_sclean.nc"), atol=1e-6) def test_range_limit(self): td = tv.dat_imu.copy(deep=True) mask = avm.clean.range_limit(td.vel) - td['vel'] = avm.clean.clean_fill( - td.vel, mask, method='cubic', maxgap=6) + td["vel"] = avm.clean.clean_fill(td.vel, mask, method="cubic", maxgap=6) if make_data: - save(td, 'vector_data01_rclean.nc') + save(td, "vector_data01_rclean.nc") return - assert_allclose(td, load('vector_data01_rclean.nc'), atol=1e-6) + assert_allclose(td, load("vector_data01_rclean.nc"), atol=1e-6) def test_clean_upADCP(self): td_awac = tp.dat_awac.copy(deep=True) @@ -73,22 +71,22 @@ def test_clean_upADCP(self): td_sig = apm.clean.correlation_filter(td_sig, thresh=50) if make_data: - save(td_awac, 'AWAC_test01_clean.nc') - save(td_sig, 'Sig1000_tidal_clean.nc') + save(td_awac, "AWAC_test01_clean.nc") + save(td_sig, "Sig1000_tidal_clean.nc") return - assert_allclose(td_awac, load('AWAC_test01_clean.nc'), atol=1e-6) - assert_allclose(td_sig, load('Sig1000_tidal_clean.nc'), atol=1e-6) + assert_allclose(td_awac, load("AWAC_test01_clean.nc"), atol=1e-6) + assert_allclose(td_sig, load("Sig1000_tidal_clean.nc"), atol=1e-6) def test_clean_downADCP(self): td = tp.dat_sig_ie.copy(deep=True) # First remove bad data - td['vel'] = apm.clean.val_exceeds_thresh(td.vel, thresh=3) - td['vel'] = apm.clean.fillgaps_time(td.vel) - td['vel_b5'] = apm.clean.fillgaps_time(td.vel_b5) - td['vel'] = apm.clean.fillgaps_depth(td.vel) - td['vel_b5'] = apm.clean.fillgaps_depth(td.vel_b5) + td["vel"] = apm.clean.val_exceeds_thresh(td.vel, thresh=3) + td["vel"] = apm.clean.fillgaps_time(td.vel) + td["vel_b5"] = apm.clean.fillgaps_time(td.vel_b5) + td["vel"] = apm.clean.fillgaps_depth(td.vel) + td["vel_b5"] = apm.clean.fillgaps_depth(td.vel_b5) # Then clean below seabed apm.clean.set_range_offset(td, 0.5) @@ -96,24 +94,24 @@ def test_clean_downADCP(self): td = apm.clean.nan_beyond_surface(td) if make_data: - save(td, 'Sig500_Echo_clean.nc') + save(td, "Sig500_Echo_clean.nc") return - assert_allclose(td, load('Sig500_Echo_clean.nc'), atol=1e-6) + assert_allclose(td, load("Sig500_Echo_clean.nc"), atol=1e-6) def test_orient_filter(self): td_sig = tp.dat_sig_i.copy(deep=True) td_sig = apm.clean.medfilt_orient(td_sig) - apm.rotate2(td_sig, 'earth', inplace=True) + apm.rotate2(td_sig, "earth", inplace=True) td_rdi = tp.dat_rdi.copy(deep=True) td_rdi = apm.clean.medfilt_orient(td_rdi) - apm.rotate2(td_rdi, 'earth', inplace=True) + apm.rotate2(td_rdi, "earth", inplace=True) if make_data: - save(td_sig, 'Sig1000_IMU_ofilt.nc') - save(td_rdi, 'RDI_test01_ofilt.nc') + save(td_sig, "Sig1000_IMU_ofilt.nc") + save(td_rdi, "RDI_test01_ofilt.nc") return - assert_allclose(td_sig, load('Sig1000_IMU_ofilt.nc'), atol=1e-6) - assert_allclose(td_rdi, load('RDI_test01_ofilt.nc'), atol=1e-6) + assert_allclose(td_sig, load("Sig1000_IMU_ofilt.nc"), atol=1e-6) + assert_allclose(td_rdi, load("RDI_test01_ofilt.nc"), atol=1e-6) diff --git a/mhkit/tests/dolfyn/test_motion.py b/mhkit/tests/dolfyn/test_motion.py index 47c193a95..e066058e0 100644 --- a/mhkit/tests/dolfyn/test_motion.py +++ b/mhkit/tests/dolfyn/test_motion.py @@ -3,7 +3,11 @@ from mhkit.dolfyn.adv.motion import correct_motion from . import test_read_adv as tv -from mhkit.tests.dolfyn.base import load_netcdf as load, save_netcdf as save, assert_allclose +from mhkit.tests.dolfyn.base import ( + load_netcdf as load, + save_netcdf as save, + assert_allclose, +) from mhkit.dolfyn.adv import api from mhkit.dolfyn.io.api import read_example as read import unittest @@ -29,50 +33,49 @@ def test_motion_adv(self): tdm0 = tv.dat_imu.copy(deep=True) tdm0.velds.set_declination(0.0, inplace=True) tdm0 = api.correct_motion(tdm0) - tdm0.attrs.pop('declination') - tdm0.attrs.pop('declination_in_orientmat') + tdm0.attrs.pop("declination") + tdm0.attrs.pop("declination_in_orientmat") # test motion-corrected data rotation tdmE = tv.dat_imu.copy(deep=True) tdmE.velds.set_declination(10.0, inplace=True) - tdmE.velds.rotate2('earth', inplace=True) + tdmE.velds.rotate2("earth", inplace=True) tdmE = api.correct_motion(tdmE) # ensure trailing nans are removed from AHRS data - ahrs = read('vector_data_imu01.VEC', userdata=True) - for var in ['accel', 'angrt', 'mag']: - assert not ahrs[var].isnull().any( - ), "nan's in {} variable".format(var) + ahrs = read("vector_data_imu01.VEC", userdata=True) + for var in ["accel", "angrt", "mag"]: + assert not ahrs[var].isnull().any(), "nan's in {} variable".format(var) if make_data: - save(tdm, 'vector_data_imu01_mc.nc') - save(tdm10, 'vector_data_imu01_mcDeclin10.nc') - save(tdmj, 'vector_data_imu01-json_mc.nc') + save(tdm, "vector_data_imu01_mc.nc") + save(tdm10, "vector_data_imu01_mcDeclin10.nc") + save(tdmj, "vector_data_imu01-json_mc.nc") return - cdm10 = load('vector_data_imu01_mcDeclin10.nc') + cdm10 = load("vector_data_imu01_mcDeclin10.nc") - assert_allclose(tdm, load('vector_data_imu01_mc.nc'), atol=1e-7) + assert_allclose(tdm, load("vector_data_imu01_mc.nc"), atol=1e-7) assert_allclose(tdm10, tdmj, atol=1e-7) assert_allclose(tdm0, tdm, atol=1e-7) assert_allclose(tdm10, cdm10, atol=1e-7) assert_allclose(tdmE, cdm10, atol=1e-7) - assert_allclose(tdmj, load('vector_data_imu01-json_mc.nc'), atol=1e-7) + assert_allclose(tdmj, load("vector_data_imu01-json_mc.nc"), atol=1e-7) def test_sep_probes(self): tdm = tv.dat_imu.copy(deep=True) tdm = api.correct_motion(tdm, separate_probes=True) if make_data: - save(tdm, 'vector_data_imu01_mcsp.nc') + save(tdm, "vector_data_imu01_mcsp.nc") return - assert_allclose(tdm, load('vector_data_imu01_mcsp.nc'), atol=1e-7) + assert_allclose(tdm, load("vector_data_imu01_mcsp.nc"), atol=1e-7) def test_duty_cycle(self): - tdc = load('vector_duty_cycle.nc') + tdc = load("vector_duty_cycle.nc") tdc.velds.set_inst2head_rotmat(np.eye(3)) - tdc.attrs['inst2head_vec'] = [0.5, 0, 0.1] + tdc.attrs["inst2head_vec"] = [0.5, 0, 0.1] # with duty cycle code td = correct_motion(tdc, accel_filtfreq=0.03, to_earth=False) @@ -80,16 +83,16 @@ def test_duty_cycle(self): # Wrapped function n_burst = 50 - n_ensembles = len(tdc.time)//n_burst + n_ensembles = len(tdc.time) // n_burst cd = xr.Dataset() - tdc.attrs.pop('duty_cycle_n_burst') + tdc.attrs.pop("duty_cycle_n_burst") for i in range(n_ensembles): - cd0 = tdc.isel(time=slice(n_burst*i, n_burst*i+n_burst)) + cd0 = tdc.isel(time=slice(n_burst * i, n_burst * i + n_burst)) cd0 = correct_motion(cd0, accel_filtfreq=0.03, to_earth=False) - cd = xr.merge((cd, cd0), combine_attrs='no_conflicts') - cd.attrs['duty_cycle_n_burst'] = n_burst + cd = xr.merge((cd, cd0), combine_attrs="no_conflicts") + cd.attrs["duty_cycle_n_burst"] = n_burst - cd_ENU = cd.velds.rotate2('earth', inplace=False) + cd_ENU = cd.velds.rotate2("earth", inplace=False) assert_allclose(td, cd, atol=1e-7) assert_allclose(td_ENU, cd_ENU, atol=1e-7) diff --git a/mhkit/tests/dolfyn/test_orient.py b/mhkit/tests/dolfyn/test_orient.py index 72afb4e92..1cee3aed4 100644 --- a/mhkit/tests/dolfyn/test_orient.py +++ b/mhkit/tests/dolfyn/test_orient.py @@ -8,12 +8,25 @@ def check_hpr(h, p, r, omatin): omat = euler2orient(h, p, r) - assert_allclose(omat, omatin, atol=1e-13, err_msg='Orientation matrix different than expected!\nExpected:\n{}\nGot:\n{}' - .format(np.array(omatin), omat)) + assert_allclose( + omat, + omatin, + atol=1e-13, + err_msg="Orientation matrix different than expected!\nExpected:\n{}\nGot:\n{}".format( + np.array(omatin), omat + ), + ) hpr = orient2euler(omat) - assert_allclose(hpr, [h, p, r], atol=1e-13, err_msg="Angles different than specified, orient2euler and euler2orient are " - "antisymmetric!\nExpected:\n{}\nGot:\n{}" - .format(hpr, np.array([h, p, r]), )) + assert_allclose( + hpr, + [h, p, r], + atol=1e-13, + err_msg="Angles different than specified, orient2euler and euler2orient are " + "antisymmetric!\nExpected:\n{}\nGot:\n{}".format( + hpr, + np.array([h, p, r]), + ), + ) class orient_testcase(unittest.TestCase): @@ -42,67 +55,133 @@ def test_hpr_defs(self): DOCUMENTATION. """ - check_hpr(0, 0, 0, [[0, 1, 0], - [-1, 0, 0], - [0, 0, 1], ]) - - check_hpr(90, 0, 0, [[1, 0, 0], - [0, 1, 0], - [0, 0, 1], ]) - - check_hpr(90, 0, 90, [[1, 0, 0], - [0, 0, 1], - [0, -1, 0], ]) - - sq2 = 1. / np.sqrt(2) - check_hpr(45, 0, 0, [[sq2, sq2, 0], - [-sq2, sq2, 0], - [0, 0, 1], ]) - - check_hpr(0, 45, 0, [[0, sq2, sq2], - [-1, 0, 0], - [0, -sq2, sq2], ]) - - check_hpr(0, 0, 45, [[0, 1, 0], - [-sq2, 0, sq2], - [sq2, 0, sq2], ]) - - check_hpr(90, 45, 90, [[sq2, 0, sq2], - [-sq2, 0, sq2], - [0, -1, 0], ]) + check_hpr( + 0, + 0, + 0, + [ + [0, 1, 0], + [-1, 0, 0], + [0, 0, 1], + ], + ) + + check_hpr( + 90, + 0, + 0, + [ + [1, 0, 0], + [0, 1, 0], + [0, 0, 1], + ], + ) + + check_hpr( + 90, + 0, + 90, + [ + [1, 0, 0], + [0, 0, 1], + [0, -1, 0], + ], + ) + + sq2 = 1.0 / np.sqrt(2) + check_hpr( + 45, + 0, + 0, + [ + [sq2, sq2, 0], + [-sq2, sq2, 0], + [0, 0, 1], + ], + ) + + check_hpr( + 0, + 45, + 0, + [ + [0, sq2, sq2], + [-1, 0, 0], + [0, -sq2, sq2], + ], + ) + + check_hpr( + 0, + 0, + 45, + [ + [0, 1, 0], + [-sq2, 0, sq2], + [sq2, 0, sq2], + ], + ) + + check_hpr( + 90, + 45, + 90, + [ + [sq2, 0, sq2], + [-sq2, 0, sq2], + [0, -1, 0], + ], + ) c30 = np.cos(np.deg2rad(30)) s30 = np.sin(np.deg2rad(30)) - check_hpr(30, 0, 0, [[s30, c30, 0], - [-c30, s30, 0], - [0, 0, 1], ]) + check_hpr( + 30, + 0, + 0, + [ + [s30, c30, 0], + [-c30, s30, 0], + [0, 0, 1], + ], + ) def test_pr_declination(self): # Test to confirm that pitch and roll don't change when you set # declination declin = 15.37 - dat = load('vector_data_imu01.nc') - h0, p0, r0 = orient2euler(dat['orientmat'].values) + dat = load("vector_data_imu01.nc") + h0, p0, r0 = orient2euler(dat["orientmat"].values) set_declination(dat, declin, inplace=True) - h1, p1, r1 = orient2euler(dat['orientmat'].values) - - assert_allclose(p0, p1, atol=1e-5, - err_msg="Pitch changes when setting declination") - assert_allclose(r0, r1, atol=1e-5, - err_msg="Roll changes when setting declination") - assert_allclose(h0 + declin, h1, atol=1e-5, err_msg="incorrect heading change when " - "setting declination") + h1, p1, r1 = orient2euler(dat["orientmat"].values) + + assert_allclose( + p0, p1, atol=1e-5, err_msg="Pitch changes when setting declination" + ) + assert_allclose( + r0, r1, atol=1e-5, err_msg="Roll changes when setting declination" + ) + assert_allclose( + h0 + declin, + h1, + atol=1e-5, + err_msg="incorrect heading change when " "setting declination", + ) def test_q_hpr(self): - dat = load('Sig1000_IMU.nc') + dat = load("Sig1000_IMU.nc") dcm = quaternion2orient(dat.quaternions) - assert_allclose(dat.orientmat, dcm, atol=5e-4, - err_msg="Disagreement b/t quaternion-calc'd & HPR-calc'd orientmat") + assert_allclose( + dat.orientmat, + dcm, + atol=5e-4, + err_msg="Disagreement b/t quaternion-calc'd & HPR-calc'd orientmat", + ) -if __name__ == '__main__': +if __name__ == "__main__": unittest.main() diff --git a/mhkit/tests/dolfyn/test_read_adp.py b/mhkit/tests/dolfyn/test_read_adp.py index cfd7f306b..a64fca546 100644 --- a/mhkit/tests/dolfyn/test_read_adp.py +++ b/mhkit/tests/dolfyn/test_read_adp.py @@ -12,58 +12,63 @@ load = tb.load_netcdf save = tb.save_netcdf -dat_rdi = load('RDI_test01.nc') -dat_rdi_7f79 = load('RDI_7f79.nc') -dat_rdi_bt = load('RDI_withBT.nc') -dat_vm_ws = load('vmdas01_wh.nc') -dat_vm_os = load('vmdas02_os.nc') -dat_wr1 = load('winriver01.nc') -dat_wr2 = load('winriver02.nc') -dat_rp = load('RiverPro_test01.nc') -dat_trsc = load('winriver02_transect.nc') - -dat_awac = load('AWAC_test01.nc') -dat_awac_ud = load('AWAC_test01_ud.nc') -dat_hwac = load('H-AWAC_test01.nc') -dat_sig = load('BenchFile01.nc') -dat_sig_i = load('Sig1000_IMU.nc') -dat_sig_i_ud = load('Sig1000_IMU_ud.nc') -dat_sig_ieb = load('VelEchoBT01.nc') -dat_sig_ie = load('Sig500_Echo.nc') -dat_sig_tide = load('Sig1000_tidal.nc') -dat_sig_skip = load('Sig_SkippedPings01.nc') -dat_sig_badt = load('Sig1000_BadTime01.nc') -dat_sig5_leiw = load('Sig500_last_ensemble_is_whole.nc') +dat_rdi = load("RDI_test01.nc") +dat_rdi_7f79 = load("RDI_7f79.nc") +dat_rdi_7f79_2 = load("RDI_7f79_2.nc") +dat_rdi_bt = load("RDI_withBT.nc") +dat_vm_ws = load("vmdas01_wh.nc") +dat_vm_os = load("vmdas02_os.nc") +dat_wr1 = load("winriver01.nc") +dat_wr2 = load("winriver02.nc") +dat_rp = load("RiverPro_test01.nc") +dat_trsc = load("winriver02_transect.nc") + +dat_awac = load("AWAC_test01.nc") +dat_awac_ud = load("AWAC_test01_ud.nc") +dat_hwac = load("H-AWAC_test01.nc") +dat_sig = load("BenchFile01.nc") +dat_sig_i = load("Sig1000_IMU.nc") +dat_sig_i_ud = load("Sig1000_IMU_ud.nc") +dat_sig_ieb = load("VelEchoBT01.nc") +dat_sig_ie = load("Sig500_Echo.nc") +dat_sig_tide = load("Sig1000_tidal.nc") +dat_sig_skip = load("Sig_SkippedPings01.nc") +dat_sig_badt = load("Sig1000_BadTime01.nc") +dat_sig5_leiw = load("Sig500_last_ensemble_is_whole.nc") +dat_sig_dp2 = load("dual_profile.nc") class io_adp_testcase(unittest.TestCase): def test_io_rdi(self): - warnings.simplefilter('ignore', UserWarning) + warnings.simplefilter("ignore", UserWarning) nens = 100 - td_rdi = read('RDI_test01.000') - td_7f79 = read('RDI_7f79.000') - td_rdi_bt = read('RDI_withBT.000', nens=nens) - td_vm = read('vmdas01_wh.ENX', nens=nens) - td_os = read('vmdas02_os.ENR', nens=nens) - td_wr1 = read('winriver01.PD0') - td_wr2 = read('winriver02.PD0') - td_rp = read('RiverPro_test01.PD0', nens=nens) - td_transect = read('winriver02_transect.PD0', nens=nens) + td_rdi = read("RDI_test01.000") + td_7f79 = read("RDI_7f79.000") + td_7f79_2 = read("RDI_7f79_2.000") + td_rdi_bt = read("RDI_withBT.000", nens=nens) + td_vm = read("vmdas01_wh.ENX", nens=nens) + td_os = read("vmdas02_os.ENR", nens=nens) + td_wr1 = read("winriver01.PD0") + td_wr2 = read("winriver02.PD0") + td_rp = read("RiverPro_test01.PD0") + td_transect = read("winriver02_transect.PD0", nens=nens) if make_data: - save(td_rdi, 'RDI_test01.nc') - save(td_7f79, 'RDI_7f79.nc') - save(td_rdi_bt, 'RDI_withBT.nc') - save(td_vm, 'vmdas01_wh.nc') - save(td_os, 'vmdas02_os.nc') - save(td_wr1, 'winriver01.nc') - save(td_wr2, 'winriver02.nc') - save(td_rp, 'RiverPro_test01.nc') - save(td_transect, 'winriver02_transect.nc') + save(td_rdi, "RDI_test01.nc") + save(td_7f79, "RDI_7f79.nc") + save(td_7f79_2, "RDI_7f79_2.nc") + save(td_rdi_bt, "RDI_withBT.nc") + save(td_vm, "vmdas01_wh.nc") + save(td_os, "vmdas02_os.nc") + save(td_wr1, "winriver01.nc") + save(td_wr2, "winriver02.nc") + save(td_rp, "RiverPro_test01.nc") + save(td_transect, "winriver02_transect.nc") return assert_allclose(td_rdi, dat_rdi, atol=1e-6) assert_allclose(td_7f79, dat_rdi_7f79, atol=1e-6) + assert_allclose(td_7f79_2, dat_rdi_7f79_2, atol=1e-6) assert_allclose(td_rdi_bt, dat_rdi_bt, atol=1e-6) assert_allclose(td_vm, dat_vm_ws, atol=1e-6) assert_allclose(td_os, dat_vm_os, atol=1e-6) @@ -75,14 +80,14 @@ def test_io_rdi(self): def test_io_nortek(self): nens = 100 with pytest.warns(UserWarning): - td_awac = read('AWAC_test01.wpr', userdata=False, nens=[0, nens]) - td_awac_ud = read('AWAC_test01.wpr', nens=nens) - td_hwac = read('H-AWAC_test01.wpr') + td_awac = read("AWAC_test01.wpr", userdata=False, nens=[0, nens]) + td_awac_ud = read("AWAC_test01.wpr", nens=nens) + td_hwac = read("H-AWAC_test01.wpr") if make_data: - save(td_awac, 'AWAC_test01.nc') - save(td_awac_ud, 'AWAC_test01_ud.nc') - save(td_hwac, 'H-AWAC_test01.nc') + save(td_awac, "AWAC_test01.nc") + save(td_awac_ud, "AWAC_test01_ud.nc") + save(td_hwac, "H-AWAC_test01.nc") return assert_allclose(td_awac, dat_awac, atol=1e-6) @@ -91,44 +96,49 @@ def test_io_nortek(self): def test_io_nortek2(self): nens = 100 - td_sig = read('BenchFile01.ad2cp', nens=nens) - td_sig_i = read('Sig1000_IMU.ad2cp', userdata=False, nens=nens) - td_sig_i_ud = read('Sig1000_IMU.ad2cp', nens=nens) - td_sig_ieb = read('VelEchoBT01.ad2cp', nens=nens) - td_sig_ie = read('Sig500_Echo.ad2cp', nens=nens) - td_sig_tide = read('Sig1000_tidal.ad2cp', nens=nens) + td_sig = read("BenchFile01.ad2cp", nens=nens, rebuild_index=True) + td_sig_i = read( + "Sig1000_IMU.ad2cp", userdata=False, nens=nens, rebuild_index=True + ) + td_sig_i_ud = read("Sig1000_IMU.ad2cp", nens=nens, rebuild_index=True) + td_sig_ieb = read("VelEchoBT01.ad2cp", nens=nens, rebuild_index=True) + td_sig_ie = read("Sig500_Echo.ad2cp", nens=nens, rebuild_index=True) + td_sig_tide = read("Sig1000_tidal.ad2cp", nens=nens, rebuild_index=True) + # Only need to test 2nd dataset + td_sig_dp1, td_sig_dp2 = read("dual_profile.ad2cp") with pytest.warns(UserWarning): # This issues a warning... - td_sig_skip = read('Sig_SkippedPings01.ad2cp') + td_sig_skip = read("Sig_SkippedPings01.ad2cp") with pytest.warns(UserWarning): - td_sig_badt = sig.read_signature( - tb.rfnm('Sig1000_BadTime01.ad2cp')) + td_sig_badt = sig.read_signature(tb.rfnm("Sig1000_BadTime01.ad2cp")) # Make sure we read all the way to the end of the file. # This file ends exactly at the end of an ensemble. - td_sig5_leiw = read('Sig500_last_ensemble_is_whole.ad2cp') - - os.remove(tb.exdt('BenchFile01.ad2cp.index')) - os.remove(tb.exdt('Sig1000_IMU.ad2cp.index')) - os.remove(tb.exdt('VelEchoBT01.ad2cp.index')) - os.remove(tb.exdt('Sig500_Echo.ad2cp.index')) - os.remove(tb.exdt('Sig1000_tidal.ad2cp.index')) - os.remove(tb.exdt('Sig_SkippedPings01.ad2cp.index')) - os.remove(tb.exdt('Sig500_last_ensemble_is_whole.ad2cp.index')) - os.remove(tb.rfnm('Sig1000_BadTime01.ad2cp.index')) + td_sig5_leiw = read("Sig500_last_ensemble_is_whole.ad2cp") + + os.remove(tb.exdt("BenchFile01.ad2cp.index")) + os.remove(tb.exdt("Sig1000_IMU.ad2cp.index")) + os.remove(tb.exdt("VelEchoBT01.ad2cp.index")) + os.remove(tb.exdt("Sig500_Echo.ad2cp.index")) + os.remove(tb.exdt("Sig1000_tidal.ad2cp.index")) + os.remove(tb.exdt("Sig_SkippedPings01.ad2cp.index")) + os.remove(tb.exdt("Sig500_last_ensemble_is_whole.ad2cp.index")) + os.remove(tb.rfnm("Sig1000_BadTime01.ad2cp.index")) + os.remove(tb.exdt("dual_profile.ad2cp.index")) if make_data: - save(td_sig, 'BenchFile01.nc') - save(td_sig_i, 'Sig1000_IMU.nc') - save(td_sig_i_ud, 'Sig1000_IMU_ud.nc') - save(td_sig_ieb, 'VelEchoBT01.nc') - save(td_sig_ie, 'Sig500_Echo.nc') - save(td_sig_tide, 'Sig1000_tidal.nc') - save(td_sig_skip, 'Sig_SkippedPings01.nc') - save(td_sig_badt, 'Sig1000_BadTime01.nc') - save(td_sig5_leiw, 'Sig500_last_ensemble_is_whole.nc') + save(td_sig, "BenchFile01.nc") + save(td_sig_i, "Sig1000_IMU.nc") + save(td_sig_i_ud, "Sig1000_IMU_ud.nc") + save(td_sig_ieb, "VelEchoBT01.nc") + save(td_sig_ie, "Sig500_Echo.nc") + save(td_sig_tide, "Sig1000_tidal.nc") + save(td_sig_skip, "Sig_SkippedPings01.nc") + save(td_sig_badt, "Sig1000_BadTime01.nc") + save(td_sig5_leiw, "Sig500_last_ensemble_is_whole.nc") + save(td_sig_dp2, "dual_profile.nc") return assert_allclose(td_sig, dat_sig, atol=1e-6) @@ -140,25 +150,42 @@ def test_io_nortek2(self): assert_allclose(td_sig5_leiw, dat_sig5_leiw, atol=1e-6) assert_allclose(td_sig_skip, dat_sig_skip, atol=1e-6) assert_allclose(td_sig_badt, dat_sig_badt, atol=1e-6) + assert_allclose(td_sig_dp2, dat_sig_dp2, atol=1e-6) def test_nortek2_crop(self): # Test file cropping function - crop_ensembles(infile=tb.exdt('Sig500_Echo.ad2cp'), - outfile=tb.exdt('Sig500_Echo_crop.ad2cp'), - range=[50, 100]) - td_sig_ie_crop = read('Sig500_Echo_crop.ad2cp') + crop_ensembles( + infile=tb.exdt("Sig500_Echo.ad2cp"), + outfile=tb.exdt("Sig500_Echo_crop.ad2cp"), + range=[50, 100], + ) + td_sig_ie_crop = read("Sig500_Echo_crop.ad2cp") + + crop_ensembles( + infile=tb.exdt("BenchFile01.ad2cp"), + outfile=tb.exdt("BenchFile01_crop.ad2cp"), + range=[50, 100], + ) + td_sig_crop = read("BenchFile01_crop.ad2cp") if make_data: - save(td_sig_ie_crop, 'Sig500_Echo_crop.nc') + save(td_sig_ie_crop, "Sig500_Echo_crop.nc") + save(td_sig_crop, "BenchFile01_crop.nc") return - os.remove(tb.exdt('Sig500_Echo.ad2cp.index')) - os.remove(tb.exdt('Sig500_Echo_crop.ad2cp')) - os.remove(tb.exdt('Sig500_Echo_crop.ad2cp.index')) + os.remove(tb.exdt("Sig500_Echo.ad2cp.index")) + os.remove(tb.exdt("Sig500_Echo_crop.ad2cp")) + os.remove(tb.exdt("Sig500_Echo_crop.ad2cp.index")) + os.remove(tb.exdt("BenchFile01.ad2cp.index")) + os.remove(tb.exdt("BenchFile01_crop.ad2cp")) + os.remove(tb.exdt("BenchFile01_crop.ad2cp.index")) + + cd_sig_ie_crop = load("Sig500_Echo_crop.nc") + cd_sig_crop = load("BenchFile01_crop.nc") - cd_sig_ie_crop = load('Sig500_Echo_crop.nc') assert_allclose(td_sig_ie_crop, cd_sig_ie_crop, atol=1e-6) + assert_allclose(td_sig_crop, cd_sig_crop, atol=1e-6) -if __name__ == '__main__': +if __name__ == "__main__": unittest.main() diff --git a/mhkit/tests/dolfyn/test_read_adv.py b/mhkit/tests/dolfyn/test_read_adv.py index f1d03c7af..9143099a6 100644 --- a/mhkit/tests/dolfyn/test_read_adv.py +++ b/mhkit/tests/dolfyn/test_read_adv.py @@ -9,32 +9,34 @@ save = tb.save_netcdf assert_allclose = tb.assert_allclose -dat = load('vector_data01') -dat_imu = load('vector_data_imu01') -dat_imu_json = load('vector_data_imu01-json') -dat_burst = load('vector_burst_mode01') +dat = load("vector_data01") +dat_imu = load("vector_data_imu01") +dat_imu_json = load("vector_data_imu01-json") +dat_burst = load("vector_burst_mode01") class io_adv_testcase(unittest.TestCase): def test_io_adv(self): nens = 100 - td = read('vector_data01.VEC', nens=nens) - tdm = read('vector_data_imu01.VEC', userdata=False, nens=nens) - tdb = read('vector_burst_mode01.VEC', nens=nens) - tdm2 = read('vector_data_imu01.VEC', - userdata=tb.exdt('vector_data_imu01.userdata.json'), - nens=nens) + td = read("vector_data01.VEC", nens=nens) + tdm = read("vector_data_imu01.VEC", userdata=False, nens=nens) + tdb = read("vector_burst_mode01.VEC", nens=nens) + tdm2 = read( + "vector_data_imu01.VEC", + userdata=tb.exdt("vector_data_imu01.userdata.json"), + nens=nens, + ) # These values are not correct for this data but I'm adding them for # test purposes only. set_inst2head_rotmat(tdm, np.eye(3), inplace=True) - tdm.attrs['inst2head_vec'] = [-1.0, 0.5, 0.2] + tdm.attrs["inst2head_vec"] = [-1.0, 0.5, 0.2] if make_data: - save(td, 'vector_data01.nc') - save(tdm, 'vector_data_imu01.nc') - save(tdb, 'vector_burst_mode01.nc') - save(tdm2, 'vector_data_imu01-json.nc') + save(td, "vector_data01.nc") + save(tdm, "vector_data_imu01.nc") + save(tdb, "vector_burst_mode01.nc") + save(tdm2, "vector_data_imu01-json.nc") return assert_allclose(td, dat, atol=1e-6) @@ -43,5 +45,5 @@ def test_io_adv(self): assert_allclose(tdm2, dat_imu_json, atol=1e-6) -if __name__ == '__main__': +if __name__ == "__main__": unittest.main() diff --git a/mhkit/tests/dolfyn/test_read_io.py b/mhkit/tests/dolfyn/test_read_io.py index 16f1b2c6a..835acc6bd 100644 --- a/mhkit/tests/dolfyn/test_read_io.py +++ b/mhkit/tests/dolfyn/test_read_io.py @@ -1,6 +1,13 @@ from . import test_read_adp as tp from . import test_read_adv as tv -from mhkit.tests.dolfyn.base import assert_allclose, save_netcdf, save_matlab, load_matlab, exdt, rfnm +from mhkit.tests.dolfyn.base import ( + assert_allclose, + save_netcdf, + save_matlab, + load_matlab, + exdt, + rfnm, +) import mhkit.dolfyn.io.rdi as wh import mhkit.dolfyn.io.nortek as awac import mhkit.dolfyn.io.nortek2 as sig @@ -15,34 +22,40 @@ class io_testcase(unittest.TestCase): def test_save(self): ds = tv.dat.copy(deep=True) + ds2 = tp.dat_sig.copy(deep=True) + save_netcdf(ds, "test_save") + save_netcdf(ds2, "test_save_comp.nc", compression=True) + save_matlab(ds, "test_save") - save_netcdf(ds, 'test_save') - save_matlab(ds, 'test_save') + assert os.path.exists(rfnm("test_save.nc")) + assert os.path.exists(rfnm("test_save_comp.nc")) + assert os.path.exists(rfnm("test_save.mat")) - assert os.path.exists(rfnm('test_save.nc')) - assert os.path.exists(rfnm('test_save.mat')) + os.remove(rfnm("test_save.nc")) + os.remove(rfnm("test_save_comp.nc")) + os.remove(rfnm("test_save.mat")) def test_matlab_io(self): nens = 100 - td_vec = read('vector_data_imu01.VEC', nens=nens) - td_rdi_bt = read('RDI_withBT.000', nens=nens) + td_vec = read("vector_data_imu01.VEC", nens=nens) + td_rdi_bt = read("RDI_withBT.000", nens=nens) # This read should trigger a warning about the declination being # defined in two places (in the binary .ENX files), and in the # .userdata.json file. NOTE: DOLfYN defaults to using what is in # the .userdata.json file. - with pytest.warns(UserWarning, match='magnetic_var_deg'): - td_vm = read('vmdas01_wh.ENX', nens=nens) + with pytest.warns(UserWarning, match="magnetic_var_deg"): + td_vm = read("vmdas01_wh.ENX", nens=nens) if make_data: - save_matlab(td_vec, 'dat_vec') - save_matlab(td_rdi_bt, 'dat_rdi_bt') - save_matlab(td_vm, 'dat_vm') + save_matlab(td_vec, "dat_vec") + save_matlab(td_rdi_bt, "dat_rdi_bt") + save_matlab(td_vm, "dat_vm") return - mat_vec = load_matlab('dat_vec.mat') - mat_rdi_bt = load_matlab('dat_rdi_bt.mat') - mat_vm = load_matlab('dat_vm.mat') + mat_vec = load_matlab("dat_vec.mat") + mat_rdi_bt = load_matlab("dat_rdi_bt.mat") + mat_vm = load_matlab("dat_vm.mat") assert_allclose(td_vec, mat_vec, atol=1e-6) assert_allclose(td_rdi_bt, mat_rdi_bt, atol=1e-6) @@ -50,18 +63,18 @@ def test_matlab_io(self): def test_debugging(self): def read_txt(fname, loc): - with open(loc(fname), 'r') as f: + with open(loc(fname), "r") as f: string = f.read() return string def clip_file(fname): log = read_txt(fname, exdt) - newlines = [i for i, ltr in enumerate(log) if ltr == '\n'] + newlines = [i for i, ltr in enumerate(log) if ltr == "\n"] try: - log = log[:newlines[100]+1] + log = log[: newlines[100] + 1] except: pass - with open(rfnm(fname), 'w') as f: + with open(rfnm(fname), "w") as f: f.write(log) def read_file_and_test(fname): @@ -71,32 +84,36 @@ def read_file_and_test(fname): os.remove(exdt(fname)) nens = 100 - wh.read_rdi(exdt('RDI_withBT.000'), nens, debug_level=3) - awac.read_nortek(exdt('AWAC_test01.wpr'), nens, debug=True, do_checksum=True) - awac.read_nortek(exdt('vector_data_imu01.VEC'), nens, debug=True, do_checksum=True) - sig.read_signature(exdt('Sig500_Echo.ad2cp'), nens, rebuild_index=True, debug=True) - os.remove(exdt('Sig500_Echo.ad2cp.index')) + wh.read_rdi(exdt("RDI_withBT.000"), nens, debug_level=3) + awac.read_nortek(exdt("AWAC_test01.wpr"), nens, debug=True, do_checksum=True) + awac.read_nortek( + exdt("vector_data_imu01.VEC"), nens, debug=True, do_checksum=True + ) + sig.read_signature( + exdt("Sig500_Echo.ad2cp"), nens, rebuild_index=True, debug=True + ) + os.remove(exdt("Sig500_Echo.ad2cp.index")) if make_data: - clip_file('RDI_withBT.dolfyn.log') - clip_file('AWAC_test01.dolfyn.log') - clip_file('vector_data_imu01.dolfyn.log') - clip_file('Sig500_Echo.dolfyn.log') + clip_file("RDI_withBT.dolfyn.log") + clip_file("AWAC_test01.dolfyn.log") + clip_file("vector_data_imu01.dolfyn.log") + clip_file("Sig500_Echo.dolfyn.log") return - read_file_and_test('RDI_withBT.dolfyn.log') - read_file_and_test('AWAC_test01.dolfyn.log') - read_file_and_test('vector_data_imu01.dolfyn.log') - read_file_and_test('Sig500_Echo.dolfyn.log') + read_file_and_test("RDI_withBT.dolfyn.log") + read_file_and_test("AWAC_test01.dolfyn.log") + read_file_and_test("vector_data_imu01.dolfyn.log") + read_file_and_test("Sig500_Echo.dolfyn.log") def test_read_warnings(self): with self.assertRaises(Exception): - wh.read_rdi(exdt('H-AWAC_test01.wpr')) + wh.read_rdi(exdt("H-AWAC_test01.wpr")) with self.assertRaises(Exception): - awac.read_nortek(exdt('BenchFile01.ad2cp')) + awac.read_nortek(exdt("BenchFile01.ad2cp")) with self.assertRaises(Exception): - sig.read_signature(exdt('AWAC_test01.wpr')) + sig.read_signature(exdt("AWAC_test01.wpr")) with self.assertRaises(IOError): - read(rfnm('AWAC_test01.nc')) + read(rfnm("AWAC_test01.nc")) with self.assertRaises(Exception): - save_netcdf(tp.dat_rdi, 'test_save.fail') + save_netcdf(tp.dat_rdi, "test_save.fail") diff --git a/mhkit/tests/dolfyn/test_rotate_adp.py b/mhkit/tests/dolfyn/test_rotate_adp.py index 4ec21353d..5fa67f05e 100644 --- a/mhkit/tests/dolfyn/test_rotate_adp.py +++ b/mhkit/tests/dolfyn/test_rotate_adp.py @@ -4,28 +4,28 @@ import numpy as np import numpy.testing as npt import unittest + make_data = False class rotate_adp_testcase(unittest.TestCase): def test_rotate_beam2inst(self): - - td_rdi = rotate2(tr.dat_rdi, 'inst', inplace=False) - td_sig = rotate2(tr.dat_sig, 'inst', inplace=False) - td_sig_i = rotate2(tr.dat_sig_i, 'inst', inplace=False) - td_sig_ieb = rotate2(tr.dat_sig_ieb, 'inst', inplace=False) + td_rdi = rotate2(tr.dat_rdi, "inst", inplace=False) + td_sig = rotate2(tr.dat_sig, "inst", inplace=False) + td_sig_i = rotate2(tr.dat_sig_i, "inst", inplace=False) + td_sig_ieb = rotate2(tr.dat_sig_ieb, "inst", inplace=False) if make_data: - save(td_rdi, 'RDI_test01_rotate_beam2inst.nc') - save(td_sig, 'BenchFile01_rotate_beam2inst.nc') - save(td_sig_i, 'Sig1000_IMU_rotate_beam2inst.nc') - save(td_sig_ieb, 'VelEchoBT01_rotate_beam2inst.nc') + save(td_rdi, "RDI_test01_rotate_beam2inst.nc") + save(td_sig, "BenchFile01_rotate_beam2inst.nc") + save(td_sig_i, "Sig1000_IMU_rotate_beam2inst.nc") + save(td_sig_ieb, "VelEchoBT01_rotate_beam2inst.nc") return - cd_rdi = load('RDI_test01_rotate_beam2inst.nc') - cd_sig = load('BenchFile01_rotate_beam2inst.nc') - cd_sig_i = load('Sig1000_IMU_rotate_beam2inst.nc') - cd_sig_ieb = load('VelEchoBT01_rotate_beam2inst.nc') + cd_rdi = load("RDI_test01_rotate_beam2inst.nc") + cd_sig = load("BenchFile01_rotate_beam2inst.nc") + cd_sig_i = load("Sig1000_IMU_rotate_beam2inst.nc") + cd_sig_ieb = load("VelEchoBT01_rotate_beam2inst.nc") assert_allclose(td_rdi, cd_rdi, atol=1e-5) assert_allclose(td_sig, cd_sig, atol=1e-5) @@ -33,32 +33,31 @@ def test_rotate_beam2inst(self): assert_allclose(td_sig_ieb, cd_sig_ieb, atol=1e-5) def test_rotate_inst2beam(self): - - td = load('RDI_test01_rotate_beam2inst.nc') - rotate2(td, 'beam', inplace=True) - td_awac = load('AWAC_test01_earth2inst.nc') - rotate2(td_awac, 'beam', inplace=True) - td_sig = load('BenchFile01_rotate_beam2inst.nc') - rotate2(td_sig, 'beam', inplace=True) - td_sig_i = load('Sig1000_IMU_rotate_beam2inst.nc') - rotate2(td_sig_i, 'beam', inplace=True) - td_sig_ie = load('Sig500_Echo_earth2inst.nc') - rotate2(td_sig_ie, 'beam', inplace=True) + td = load("RDI_test01_rotate_beam2inst.nc") + rotate2(td, "beam", inplace=True) + td_awac = load("AWAC_test01_earth2inst.nc") + rotate2(td_awac, "beam", inplace=True) + td_sig = load("BenchFile01_rotate_beam2inst.nc") + rotate2(td_sig, "beam", inplace=True) + td_sig_i = load("Sig1000_IMU_rotate_beam2inst.nc") + rotate2(td_sig_i, "beam", inplace=True) + td_sig_ie = load("Sig500_Echo_earth2inst.nc") + rotate2(td_sig_ie, "beam", inplace=True) if make_data: - save(td_awac, 'AWAC_test01_inst2beam.nc') - save(td_sig_ie, 'Sig500_Echo_inst2beam.nc') + save(td_awac, "AWAC_test01_inst2beam.nc") + save(td_sig_ie, "Sig500_Echo_inst2beam.nc") return cd_td = tr.dat_rdi.copy(deep=True) - cd_awac = load('AWAC_test01_inst2beam.nc') + cd_awac = load("AWAC_test01_inst2beam.nc") cd_sig = tr.dat_sig.copy(deep=True) cd_sig_i = tr.dat_sig_i.copy(deep=True) - cd_sig_ie = load('Sig500_Echo_inst2beam.nc') + cd_sig_ie = load("Sig500_Echo_inst2beam.nc") # # The reverse RDI rotation doesn't work b/c of NaN's in one beam # # that propagate to others, so we impose that here. - cd_td['vel'].values[:, np.isnan(cd_td['vel'].values).any(0)] = np.NaN + cd_td["vel"].values[:, np.isnan(cd_td["vel"].values).any(0)] = np.NaN assert_allclose(td, cd_td, atol=1e-5) assert_allclose(td_awac, cd_awac, atol=1e-5) @@ -69,38 +68,35 @@ def test_rotate_inst2beam(self): def test_rotate_inst2earth(self): # AWAC & Sig500 are loaded in earth td_awac = tr.dat_awac.copy(deep=True) - rotate2(td_awac, 'inst', inplace=True) + rotate2(td_awac, "inst", inplace=True) td_sig_ie = tr.dat_sig_ie.copy(deep=True) - rotate2(td_sig_ie, 'inst', inplace=True) + rotate2(td_sig_ie, "inst", inplace=True) td_sig_o = td_sig_ie.copy(deep=True) - td = rotate2(tr.dat_rdi, 'earth', inplace=False) - tdwr2 = rotate2(tr.dat_wr2, 'earth', inplace=False) - td_sig = load('BenchFile01_rotate_beam2inst.nc') - rotate2(td_sig, 'earth', inplace=True) - td_sig_i = load('Sig1000_IMU_rotate_beam2inst.nc') - rotate2(td_sig_i, 'earth', inplace=True) + td = rotate2(tr.dat_rdi, "earth", inplace=False) + tdwr2 = rotate2(tr.dat_wr2, "earth", inplace=False) + td_sig = load("BenchFile01_rotate_beam2inst.nc") + rotate2(td_sig, "earth", inplace=True) + td_sig_i = load("Sig1000_IMU_rotate_beam2inst.nc") + rotate2(td_sig_i, "earth", inplace=True) if make_data: - save(td_awac, 'AWAC_test01_earth2inst.nc') - save(td, 'RDI_test01_rotate_inst2earth.nc') - save(tdwr2, 'winriver02_rotate_ship2earth.nc') - save(td_sig, 'BenchFile01_rotate_inst2earth.nc') - save(td_sig_i, 'Sig1000_IMU_rotate_inst2earth.nc') - save(td_sig_ie, 'Sig500_Echo_earth2inst.nc') + save(td_awac, "AWAC_test01_earth2inst.nc") + save(td, "RDI_test01_rotate_inst2earth.nc") + save(tdwr2, "winriver02_rotate_ship2earth.nc") + save(td_sig, "BenchFile01_rotate_inst2earth.nc") + save(td_sig_i, "Sig1000_IMU_rotate_inst2earth.nc") + save(td_sig_ie, "Sig500_Echo_earth2inst.nc") return - td_awac = rotate2(load('AWAC_test01_earth2inst.nc'), - 'earth', inplace=False) - td_sig_ie = rotate2(load('Sig500_Echo_earth2inst.nc'), - 'earth', inplace=False) - td_sig_o = rotate2(td_sig_o.drop_vars( - 'orientmat'), 'earth', inplace=False) + td_awac = rotate2(load("AWAC_test01_earth2inst.nc"), "earth", inplace=False) + td_sig_ie = rotate2(load("Sig500_Echo_earth2inst.nc"), "earth", inplace=False) + td_sig_o = rotate2(td_sig_o.drop_vars("orientmat"), "earth", inplace=False) - cd = load('RDI_test01_rotate_inst2earth.nc') - cdwr2 = load('winriver02_rotate_ship2earth.nc') - cd_sig = load('BenchFile01_rotate_inst2earth.nc') - cd_sig_i = load('Sig1000_IMU_rotate_inst2earth.nc') + cd = load("RDI_test01_rotate_inst2earth.nc") + cdwr2 = load("winriver02_rotate_ship2earth.nc") + cd_sig = load("BenchFile01_rotate_inst2earth.nc") + cd_sig_i = load("Sig1000_IMU_rotate_inst2earth.nc") assert_allclose(td, cd, atol=1e-5) assert_allclose(tdwr2, cdwr2, atol=1e-5) @@ -111,66 +107,66 @@ def test_rotate_inst2earth(self): npt.assert_allclose(td_sig_o.vel, tr.dat_sig_ie.vel, atol=1e-5) def test_rotate_earth2inst(self): - - td_rdi = load('RDI_test01_rotate_inst2earth.nc') - rotate2(td_rdi, 'inst', inplace=True) - tdwr2 = load('winriver02_rotate_ship2earth.nc') - rotate2(tdwr2, 'inst', inplace=True) + td_rdi = load("RDI_test01_rotate_inst2earth.nc") + rotate2(td_rdi, "inst", inplace=True) + tdwr2 = load("winriver02_rotate_ship2earth.nc") + rotate2(tdwr2, "inst", inplace=True) td_awac = tr.dat_awac.copy(deep=True) - rotate2(td_awac, 'inst', inplace=True) # AWAC is in earth coords - td_sig = load('BenchFile01_rotate_inst2earth.nc') - rotate2(td_sig, 'inst', inplace=True) - td_sig_i = load('Sig1000_IMU_rotate_inst2earth.nc') - rotate2(td_sig_i, 'inst', inplace=True) + rotate2(td_awac, "inst", inplace=True) # AWAC is in earth coords + td_sig = load("BenchFile01_rotate_inst2earth.nc") + rotate2(td_sig, "inst", inplace=True) + td_sig_i = load("Sig1000_IMU_rotate_inst2earth.nc") + rotate2(td_sig_i, "inst", inplace=True) - cd_rdi = load('RDI_test01_rotate_beam2inst.nc') + cd_rdi = load("RDI_test01_rotate_beam2inst.nc") cd_wr2 = tr.dat_wr2 # ship and inst are considered equivalent in dolfy - cd_wr2.attrs['coord_sys'] = 'inst' - cd_awac = load('AWAC_test01_earth2inst.nc') - cd_sig = load('BenchFile01_rotate_beam2inst.nc') - cd_sig_i = load('Sig1000_IMU_rotate_beam2inst.nc') + cd_wr2.attrs["coord_sys"] = "inst" + cd_awac = load("AWAC_test01_earth2inst.nc") + cd_sig = load("BenchFile01_rotate_beam2inst.nc") + cd_sig_i = load("Sig1000_IMU_rotate_beam2inst.nc") assert_allclose(td_rdi, cd_rdi, atol=1e-5) assert_allclose(tdwr2, cd_wr2, atol=1e-5) assert_allclose(td_awac, cd_awac, atol=1e-5) assert_allclose(td_sig, cd_sig, atol=1e-5) # known failure due to orientmat, see test_vs_nortek - #assert_allclose(td_sig_i, cd_sig_i, atol=1e-3) - npt.assert_allclose(td_sig_i.accel.values, - cd_sig_i.accel.values, atol=1e-3) + # assert_allclose(td_sig_i, cd_sig_i, atol=1e-3) + npt.assert_allclose(td_sig_i.accel.values, cd_sig_i.accel.values, atol=1e-3) def test_rotate_earth2principal(self): - - td_rdi = load('RDI_test01_rotate_inst2earth.nc') - td_sig = load('BenchFile01_rotate_inst2earth.nc') + td_rdi = load("RDI_test01_rotate_inst2earth.nc") + td_sig = load("BenchFile01_rotate_inst2earth.nc") td_awac = tr.dat_awac.copy(deep=True) - td_rdi.attrs['principal_heading'] = calc_principal_heading( - td_rdi.vel.mean('range')) - td_sig.attrs['principal_heading'] = calc_principal_heading( - td_sig.vel.mean('range')) - td_awac.attrs['principal_heading'] = calc_principal_heading(td_awac.vel.mean('range'), - tidal_mode=False) - rotate2(td_rdi, 'principal', inplace=True) - rotate2(td_sig, 'principal', inplace=True) - rotate2(td_awac, 'principal', inplace=True) + td_rdi.attrs["principal_heading"] = calc_principal_heading( + td_rdi.vel.mean("range") + ) + td_sig.attrs["principal_heading"] = calc_principal_heading( + td_sig.vel.mean("range") + ) + td_awac.attrs["principal_heading"] = calc_principal_heading( + td_awac.vel.mean("range"), tidal_mode=False + ) + rotate2(td_rdi, "principal", inplace=True) + rotate2(td_sig, "principal", inplace=True) + rotate2(td_awac, "principal", inplace=True) if make_data: - save(td_rdi, 'RDI_test01_rotate_earth2principal.nc') - save(td_sig, 'BenchFile01_rotate_earth2principal.nc') - save(td_awac, 'AWAC_test01_earth2principal.nc') + save(td_rdi, "RDI_test01_rotate_earth2principal.nc") + save(td_sig, "BenchFile01_rotate_earth2principal.nc") + save(td_awac, "AWAC_test01_earth2principal.nc") return - cd_rdi = load('RDI_test01_rotate_earth2principal.nc') - cd_sig = load('BenchFile01_rotate_earth2principal.nc') - cd_awac = load('AWAC_test01_earth2principal.nc') + cd_rdi = load("RDI_test01_rotate_earth2principal.nc") + cd_sig = load("BenchFile01_rotate_earth2principal.nc") + cd_awac = load("AWAC_test01_earth2principal.nc") assert_allclose(td_rdi, cd_rdi, atol=1e-5) assert_allclose(td_awac, cd_awac, atol=1e-5) assert_allclose(td_sig, cd_sig, atol=1e-5) -if __name__ == '__main__': +if __name__ == "__main__": unittest.main() diff --git a/mhkit/tests/dolfyn/test_rotate_adv.py b/mhkit/tests/dolfyn/test_rotate_adv.py index 26ab76d3c..b967c838d 100644 --- a/mhkit/tests/dolfyn/test_rotate_adv.py +++ b/mhkit/tests/dolfyn/test_rotate_adv.py @@ -1,11 +1,16 @@ from . import test_read_adv as tr from .base import load_netcdf as load, save_netcdf as save, assert_allclose -from mhkit.dolfyn.rotate.api import rotate2, calc_principal_heading, \ - set_declination, set_inst2head_rotmat +from mhkit.dolfyn.rotate.api import ( + rotate2, + calc_principal_heading, + set_declination, + set_inst2head_rotmat, +) from mhkit.dolfyn.rotate.base import euler2orient, orient2euler import numpy as np import numpy.testing as npt import unittest + make_data = False @@ -14,14 +19,14 @@ def test_heading(self): td = tr.dat_imu.copy(deep=True) head, pitch, roll = orient2euler(td) - td['pitch'].values = pitch - td['roll'].values = roll - td['heading'].values = head + td["pitch"].values = pitch + td["roll"].values = roll + td["heading"].values = head if make_data: - save(td, 'vector_data_imu01_head_pitch_roll.nc') + save(td, "vector_data_imu01_head_pitch_roll.nc") return - cd = load('vector_data_imu01_head_pitch_roll.nc') + cd = load("vector_data_imu01_head_pitch_roll.nc") assert_allclose(td, cd, atol=1e-6) @@ -30,9 +35,7 @@ def test_inst2head_rotmat(self): td = tr.dat.copy(deep=True) # Swap x,y, reverse z - set_inst2head_rotmat(td, [[0, 1, 0], - [1, 0, 0], - [0, 0, -1]], inplace=True) + set_inst2head_rotmat(td, [[0, 1, 0], [1, 0, 0], [0, 0, -1]], inplace=True) # Coords don't get altered here npt.assert_allclose(td.vel[0].values, tr.dat.vel[1].values, atol=1e-6) @@ -41,7 +44,7 @@ def test_inst2head_rotmat(self): # Validation for non-symmetric rotations td = tr.dat.copy(deep=True) - R = euler2orient(20, 30, 60, units='degrees') # arbitrary angles + R = euler2orient(20, 30, 60, units="degrees") # arbitrary angles td = set_inst2head_rotmat(td, R, inplace=False) vel1 = td.vel # validate that a head->inst rotation occurs (transpose of inst2head_rotmat) @@ -51,64 +54,64 @@ def test_inst2head_rotmat(self): def test_rotate_inst2earth(self): td = tr.dat.copy(deep=True) - rotate2(td, 'earth', inplace=True) + rotate2(td, "earth", inplace=True) tdm = tr.dat_imu.copy(deep=True) - rotate2(tdm, 'earth', inplace=True) + rotate2(tdm, "earth", inplace=True) tdo = tr.dat.copy(deep=True) - omat = tdo['orientmat'] - tdo = rotate2(tdo.drop_vars('orientmat'), 'earth', inplace=False) - tdo['orientmat'] = omat + omat = tdo["orientmat"] + tdo = rotate2(tdo.drop_vars("orientmat"), "earth", inplace=False) + tdo["orientmat"] = omat if make_data: - save(td, 'vector_data01_rotate_inst2earth.nc') - save(tdm, 'vector_data_imu01_rotate_inst2earth.nc') + save(td, "vector_data01_rotate_inst2earth.nc") + save(tdm, "vector_data_imu01_rotate_inst2earth.nc") return - cd = load('vector_data01_rotate_inst2earth.nc') - cdm = load('vector_data_imu01_rotate_inst2earth.nc') + cd = load("vector_data01_rotate_inst2earth.nc") + cdm = load("vector_data_imu01_rotate_inst2earth.nc") assert_allclose(td, cd, atol=1e-6) assert_allclose(tdm, cdm, atol=1e-6) assert_allclose(tdo, cd, atol=1e-6) def test_rotate_earth2inst(self): - td = load('vector_data01_rotate_inst2earth.nc') - rotate2(td, 'inst', inplace=True) - tdm = load('vector_data_imu01_rotate_inst2earth.nc') - rotate2(tdm, 'inst', inplace=True) + td = load("vector_data01_rotate_inst2earth.nc") + rotate2(td, "inst", inplace=True) + tdm = load("vector_data_imu01_rotate_inst2earth.nc") + rotate2(tdm, "inst", inplace=True) cd = tr.dat.copy(deep=True) cdm = tr.dat_imu.copy(deep=True) # The heading/pitch/roll data gets modified during rotation, so it # doesn't go back to what it was. - cdm = cdm.drop_vars(['heading', 'pitch', 'roll']) - tdm = tdm.drop_vars(['heading', 'pitch', 'roll']) + cdm = cdm.drop_vars(["heading", "pitch", "roll"]) + tdm = tdm.drop_vars(["heading", "pitch", "roll"]) assert_allclose(td, cd, atol=1e-6) assert_allclose(tdm, cdm, atol=1e-6) def test_rotate_inst2beam(self): td = tr.dat.copy(deep=True) - rotate2(td, 'beam', inplace=True) + rotate2(td, "beam", inplace=True) tdm = tr.dat_imu.copy(deep=True) - rotate2(tdm, 'beam', inplace=True) + rotate2(tdm, "beam", inplace=True) if make_data: - save(td, 'vector_data01_rotate_inst2beam.nc') - save(tdm, 'vector_data_imu01_rotate_inst2beam.nc') + save(td, "vector_data01_rotate_inst2beam.nc") + save(tdm, "vector_data_imu01_rotate_inst2beam.nc") return - cd = load('vector_data01_rotate_inst2beam.nc') - cdm = load('vector_data_imu01_rotate_inst2beam.nc') + cd = load("vector_data01_rotate_inst2beam.nc") + cdm = load("vector_data_imu01_rotate_inst2beam.nc") assert_allclose(td, cd, atol=1e-6) assert_allclose(tdm, cdm, atol=1e-6) def test_rotate_beam2inst(self): - td = load('vector_data01_rotate_inst2beam.nc') - rotate2(td, 'inst', inplace=True) - tdm = load('vector_data_imu01_rotate_inst2beam.nc') - rotate2(tdm, 'inst', inplace=True) + td = load("vector_data01_rotate_inst2beam.nc") + rotate2(td, "inst", inplace=True) + tdm = load("vector_data_imu01_rotate_inst2beam.nc") + rotate2(tdm, "inst", inplace=True) cd = tr.dat.copy(deep=True) cdm = tr.dat_imu.copy(deep=True) @@ -117,60 +120,59 @@ def test_rotate_beam2inst(self): assert_allclose(tdm, cdm, atol=1e-5) def test_rotate_earth2principal(self): - td = load('vector_data01_rotate_inst2earth.nc') - td.attrs['principal_heading'] = calc_principal_heading(td['vel']) - rotate2(td, 'principal', inplace=True) - tdm = load('vector_data_imu01_rotate_inst2earth.nc') - tdm.attrs['principal_heading'] = calc_principal_heading(tdm['vel']) - rotate2(tdm, 'principal', inplace=True) + td = load("vector_data01_rotate_inst2earth.nc") + td.attrs["principal_heading"] = calc_principal_heading(td["vel"]) + rotate2(td, "principal", inplace=True) + tdm = load("vector_data_imu01_rotate_inst2earth.nc") + tdm.attrs["principal_heading"] = calc_principal_heading(tdm["vel"]) + rotate2(tdm, "principal", inplace=True) if make_data: - save(td, 'vector_data01_rotate_earth2principal.nc') - save(tdm, 'vector_data_imu01_rotate_earth2principal.nc') + save(td, "vector_data01_rotate_earth2principal.nc") + save(tdm, "vector_data_imu01_rotate_earth2principal.nc") return - cd = load('vector_data01_rotate_earth2principal.nc') - cdm = load('vector_data_imu01_rotate_earth2principal.nc') + cd = load("vector_data01_rotate_earth2principal.nc") + cdm = load("vector_data_imu01_rotate_earth2principal.nc") assert_allclose(td, cd, atol=1e-6) assert_allclose(tdm, cdm, atol=1e-6) def test_rotate_earth2principal_set_declination(self): declin = 3.875 - td = load('vector_data01_rotate_inst2earth.nc') + td = load("vector_data01_rotate_inst2earth.nc") td0 = td.copy(deep=True) - td.attrs['principal_heading'] = calc_principal_heading(td['vel']) - rotate2(td, 'principal', inplace=True) + td.attrs["principal_heading"] = calc_principal_heading(td["vel"]) + rotate2(td, "principal", inplace=True) set_declination(td, declin, inplace=True) - rotate2(td, 'earth', inplace=True) + rotate2(td, "earth", inplace=True) set_declination(td0, -1, inplace=True) set_declination(td0, declin, inplace=True) - td0.attrs['principal_heading'] = calc_principal_heading(td0['vel']) - rotate2(td0, 'earth', inplace=True) + td0.attrs["principal_heading"] = calc_principal_heading(td0["vel"]) + rotate2(td0, "earth", inplace=True) assert_allclose(td0, td, atol=1e-6) def test_rotate_warnings(self): warn1 = tr.dat.copy(deep=True) warn2 = tr.dat.copy(deep=True) - warn2.attrs['coord_sys'] = 'flow' + warn2.attrs["coord_sys"] = "flow" warn3 = tr.dat.copy(deep=True) - warn3.attrs['inst_model'] = 'ADV' + warn3.attrs["inst_model"] = "ADV" warn4 = tr.dat.copy(deep=True) - warn4.attrs['inst_model'] = 'adv' + warn4.attrs["inst_model"] = "adv" with self.assertRaises(Exception): - rotate2(warn1, 'ship') + rotate2(warn1, "ship") with self.assertRaises(Exception): - rotate2(warn2, 'earth') + rotate2(warn2, "earth") with self.assertRaises(Exception): set_inst2head_rotmat(warn3, np.eye(3)) - set_inst2head_rotmat(warn3, np.eye(3)) with self.assertRaises(Exception): set_inst2head_rotmat(warn4, np.eye(3)) -if __name__ == '__main__': +if __name__ == "__main__": unittest.main() diff --git a/mhkit/tests/dolfyn/test_shortcuts.py b/mhkit/tests/dolfyn/test_shortcuts.py index 513660d1d..948736603 100644 --- a/mhkit/tests/dolfyn/test_shortcuts.py +++ b/mhkit/tests/dolfyn/test_shortcuts.py @@ -14,27 +14,26 @@ class analysis_testcase(unittest.TestCase): @classmethod def setUpClass(self): dat = tv.dat.copy(deep=True) - self.dat = rotate2(dat, 'earth', inplace=False) - self.tdat = avm.turbulence_statistics( - self.dat, n_bin=20.0, fs=self.dat.fs) + self.dat = rotate2(dat, "earth", inplace=False) + self.tdat = avm.turbulence_statistics(self.dat, n_bin=20.0, fs=self.dat.fs) short = xr.Dataset() - short['u'] = self.tdat.velds.u - short['v'] = self.tdat.velds.v - short['w'] = self.tdat.velds.w - short['U'] = self.tdat.velds.U - short['U_mag'] = self.tdat.velds.U_mag - short['U_dir'] = self.tdat.velds.U_dir + short["u"] = self.tdat.velds.u + short["v"] = self.tdat.velds.v + short["w"] = self.tdat.velds.w + short["U"] = self.tdat.velds.U + short["U_mag"] = self.tdat.velds.U_mag + short["U_dir"] = self.tdat.velds.U_dir short["upup_"] = self.tdat.velds.upup_ short["vpvp_"] = self.tdat.velds.vpvp_ short["wpwp_"] = self.tdat.velds.wpwp_ short["upvp_"] = self.tdat.velds.upvp_ short["upwp_"] = self.tdat.velds.upwp_ short["vpwp_"] = self.tdat.velds.vpwp_ - short['tke'] = self.tdat.velds.tke - short['I'] = self.tdat.velds.I - short['E_coh'] = self.tdat.velds.E_coh - short['I_tke'] = self.tdat.velds.I_tke + short["tke"] = self.tdat.velds.tke + short["I"] = self.tdat.velds.I + short["E_coh"] = self.tdat.velds.E_coh + short["I_tke"] = self.tdat.velds.I_tke self.short = short @classmethod @@ -44,15 +43,15 @@ def tearDownClass(self): def test_shortcuts(self): ds = self.short.copy(deep=True) if make_data: - save(ds, 'vector_data01_u.nc') + save(ds, "vector_data01_u.nc") return - assert_allclose(ds, load('vector_data01_u.nc'), atol=1e-6) + assert_allclose(ds, load("vector_data01_u.nc"), atol=1e-6) def test_save_complex_data(self): # netcdf4 cannot natively handle complex values # This test is a sanity check that ensures this code's # workaround functions ds_save = self.short.copy(deep=True) - save(ds_save, 'test_save.nc') - assert os.path.exists(rfnm('test_save.nc')) + save(ds_save, "test_save.nc") + assert os.path.exists(rfnm("test_save.nc")) diff --git a/mhkit/tests/dolfyn/test_time.py b/mhkit/tests/dolfyn/test_time.py index c7fecfdf2..9c1ae7597 100644 --- a/mhkit/tests/dolfyn/test_time.py +++ b/mhkit/tests/dolfyn/test_time.py @@ -20,11 +20,12 @@ def test_time_conversion(self): assert_equal(dt[0], datetime(2012, 6, 12, 12, 0, 2, 687283)) assert_equal(dt1, [datetime(2012, 6, 12, 12, 0, 2, 687283)]) assert_equal(dt_off[0], datetime(2012, 6, 12, 5, 0, 2, 687283)) - assert_equal(t_str[0], '2012-06-12 12:00:02.687283') + assert_equal(t_str[0], "2012-06-12 12:00:02.687283") # Validated based on data in ad2cp.index file - assert_equal(time.dt642date(dat_sig.time[0])[0], - datetime(2017, 7, 24, 17, 0, 0, 63500)) + assert_equal( + time.dt642date(dat_sig.time[0])[0], datetime(2017, 7, 24, 17, 0, 0, 63500) + ) # This should always be true assert_equal(time.epoch2date([0])[0], datetime(1970, 1, 1, 0, 0)) @@ -48,5 +49,5 @@ def test_datenum(self): assert_equal(dn[0], 735032.5000311028) -if __name__ == '__main__': +if __name__ == "__main__": unittest.main() diff --git a/mhkit/tests/dolfyn/test_tools.py b/mhkit/tests/dolfyn/test_tools.py index 611512f48..6aaa10a9c 100644 --- a/mhkit/tests/dolfyn/test_tools.py +++ b/mhkit/tests/dolfyn/test_tools.py @@ -1,4 +1,4 @@ -import mhkit.dolfyn.tools.misc as tools +import mhkit.dolfyn.tools as tools from numpy.testing import assert_equal, assert_allclose import numpy as np import unittest @@ -8,55 +8,111 @@ class tools_testcase(unittest.TestCase): @classmethod def setUpClass(self): self.array = np.arange(10, dtype=float) - self.nan = np.zeros(3)*np.NaN + self.nan = np.zeros(3) * np.NaN @classmethod def tearDownClass(self): pass def test_detrend_array(self): - d = tools.detrend_array(self.array) + d = tools.misc.detrend_array(self.array) assert_allclose(d, np.zeros(10), atol=1e-10) def test_group(self): array = np.concatenate((self.array, self.array)) - d = tools.group(array) + d = tools.misc.group(array) out = np.array([slice(1, 20, None)], dtype=object) assert_equal(d, out) def test_slice(self): - tensor = np.array([[[1, 2, 3], [4, 5, 6], [7, 8, 9]], - [[10, 11, 12], [13, 14, 15], [16, 17, 18]], - [[19, 20, 21], [22, 23, 24], [25, 26, 27]]]) + tensor = np.array( + [ + [[1, 2, 3], [4, 5, 6], [7, 8, 9]], + [[10, 11, 12], [13, 14, 15], [16, 17, 18]], + [[19, 20, 21], [22, 23, 24], [25, 26, 27]], + ] + ) out = np.zeros((3, 3, 3)) slices = list() - for slc in tools.slice1d_along_axis((3, 3, 3), axis=-1): + for slc in tools.misc.slice1d_along_axis((3, 3, 3), axis=-1): slices.append(slc) out[slc] = tensor[slc] - slc_out = [(0, 0, slice(None, None, None)), - (0, 1, slice(None, None, None)), - (0, 2, slice(None, None, None)), - (1, 0, slice(None, None, None)), - (1, 1, slice(None, None, None)), - (1, 2, slice(None, None, None)), - (2, 0, slice(None, None, None)), - (2, 1, slice(None, None, None)), - (2, 2, slice(None, None, None))] + slc_out = [ + (0, 0, slice(None, None, None)), + (0, 1, slice(None, None, None)), + (0, 2, slice(None, None, None)), + (1, 0, slice(None, None, None)), + (1, 1, slice(None, None, None)), + (1, 2, slice(None, None, None)), + (2, 0, slice(None, None, None)), + (2, 1, slice(None, None, None)), + (2, 2, slice(None, None, None)), + ] assert_equal(slc_out, slices) assert_allclose(tensor, out, atol=1e-10) def test_fillgaps(self): arr = np.concatenate((self.array, self.nan, self.array)) - d1 = tools.fillgaps(arr.copy()) - d2 = tools.fillgaps(arr.copy(), maxgap=1) + d1 = tools.misc.fillgaps(arr.copy()) + d2 = tools.misc.fillgaps(arr.copy(), maxgap=1) - out1 = np.array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 6.75, 4.5, 2.25, - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) - out2 = np.array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9, np.nan, np.nan, np.nan, - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) + out1 = np.array( + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 6.75, + 4.5, + 2.25, + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + ] + ) + out2 = np.array( + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + np.nan, + np.nan, + np.nan, + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + ] + ) assert_allclose(d1, out1, atol=1e-10) assert_allclose(d2, out2, atol=1e-10) @@ -65,13 +121,69 @@ def test_interpgaps(self): arr = np.concatenate((self.array, self.nan, self.array, self.nan)) t = np.arange(0, arr.shape[0], 0.1) - d1 = tools.interpgaps(arr.copy(), t, extrapFlg=True) - d2 = tools.interpgaps(arr.copy(), t, maxgap=1) + d1 = tools.misc.interpgaps(arr.copy(), t, extrapFlg=True) + d2 = tools.misc.interpgaps(arr.copy(), t, maxgap=1) - out1 = np.array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 6.75, 4.5, 2.25, - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 9, 9, 9]) - out2 = np.array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9, np.nan, np.nan, np.nan, - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, np.nan, np.nan, np.nan]) + out1 = np.array( + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 6.75, + 4.5, + 2.25, + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 9, + 9, + 9, + ] + ) + out2 = np.array( + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + np.nan, + np.nan, + np.nan, + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + np.nan, + np.nan, + np.nan, + ] + ) assert_allclose(d1, out1, atol=1e-10) assert_allclose(d2, out2, atol=1e-10) @@ -80,22 +192,140 @@ def test_medfiltnan(self): arr = np.concatenate((self.array, self.nan, self.array)) a = np.concatenate((arr[None, :], arr[None, :]), axis=0) - d = tools.medfiltnan(a, [1, 5], thresh=3) + d = tools.misc.medfiltnan(a, [1, 5], thresh=3) - out = np.array([[0, 1, 2, 3, 4, 5, 6, 7, 7, 7, 8, 9, np.nan, np.nan, np.nan, 2, 3, 4, 5, - 6, 7, 7, 7], - [0, 1, 2, 3, 4, 5, 6, 7, 7, 7, 8, 9, np.nan, np.nan, np.nan, 2, 3, 4, 5, - 6, 7, 7, 7]]) + out = np.array( + [ + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 7, + 7, + 8, + 9, + np.nan, + np.nan, + np.nan, + 2, + 3, + 4, + 5, + 6, + 7, + 7, + 7, + ], + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 7, + 7, + 8, + 9, + np.nan, + np.nan, + np.nan, + 2, + 3, + 4, + 5, + 6, + 7, + 7, + 7, + ], + ] + ) assert_allclose(d, out, atol=1e-10) def test_deg_conv(self): - d = tools.convert_degrees(self.array) + d = tools.misc.convert_degrees(self.array) - out = np.array([90., 89., 88., 87., 86., 85., 84., 83., 82., 81.]) + out = np.array([90.0, 89.0, 88.0, 87.0, 86.0, 85.0, 84.0, 83.0, 82.0, 81.0]) assert_allclose(d, out, atol=1e-10) + def test_fft_frequency(self): + fs = 1000 # Sampling frequency + nfft = 512 # Number of samples in a window -if __name__ == '__main__': + # Test for full frequency range + freq_full = tools.fft.fft_frequency(nfft, fs, full=True) + assert_equal(len(freq_full), nfft) + + # Check symmetry of positive and negative frequencies, ignoring the zero frequency + positive_freqs = freq_full[1 : int(nfft / 2)] + negative_freqs = freq_full[int(nfft / 2) + 1 :] + assert_allclose(positive_freqs, -negative_freqs[::-1]) + + def test_stepsize(self): + # Case 1: l < nfft + step, nens, nfft = tools.fft._stepsize(100, 200) + assert_equal((step, nens, nfft), (0, 1, 100)) + + # Case 2: l == nfft + step, nens, nfft = tools.fft._stepsize(200, 200) + assert_equal((step, nens, nfft), (0, 1, 200)) + + # Case 3: l > nfft, no nens + step, nens, nfft = tools.fft._stepsize(300, 100) + expected_nens = int(2.0 * 300 / 100) + expected_step = int((300 - 100) / (expected_nens - 1)) + assert_equal((step, nens, nfft), (expected_step, expected_nens, 100)) + + # Case 4: l > nfft, with nens + step, nens, nfft = tools.fft._stepsize(300, 100, nens=5) + expected_step = int((300 - 100) / (5 - 1)) + assert_equal((step, nens, nfft), (expected_step, 5, 100)) + + # Case 5: l > nfft, with step + step, nens, nfft = tools.fft._stepsize(300, 100, step=50) + expected_nens = int((300 - 100) / 50 + 1) + assert_equal((step, nens, nfft), (50, expected_nens, 100)) + + # Case 6: nens is 1 + step, nens, nfft = tools.fft._stepsize(300, 100, nens=1) + assert_equal((step, nens, nfft), (0, 1, 100)) + + def test_cpsd_quasisync_1D(self): + fs = 1000 # Sample rate + nfft = 512 # Number of points in the fft + + # Test with signals of same length + a = np.random.normal(0, 1, 1000) + b = np.random.normal(0, 1, 1000) + cpsd = tools.fft.cpsd_quasisync_1D(a, b, nfft, fs) + self.assertEqual(cpsd.shape, (nfft // 2,)) + + # Test with signals of different lengths + a = np.random.normal(0, 1, 1500) + b = np.random.normal(0, 1, 1000) + cpsd = tools.fft.cpsd_quasisync_1D(a, b, nfft, fs) + self.assertEqual(cpsd.shape, (nfft // 2,)) + + # Test with different window types + for window in [None, 1, "hann"]: + cpsd = tools.fft.cpsd_quasisync_1D(a, b, nfft, fs, window=window) + self.assertEqual(cpsd.shape, (nfft // 2,)) + + # Test with a custom window + custom_window = np.hamming(nfft) + cpsd = tools.fft.cpsd_quasisync_1D(a, b, nfft, fs, window=custom_window) + self.assertEqual(cpsd.shape, (nfft // 2,)) + + +if __name__ == "__main__": unittest.main() diff --git a/mhkit/tests/dolfyn/test_vs_nortek.py b/mhkit/tests/dolfyn/test_vs_nortek.py index ac54e99e1..f1abdd406 100644 --- a/mhkit/tests/dolfyn/test_vs_nortek.py +++ b/mhkit/tests/dolfyn/test_vs_nortek.py @@ -14,42 +14,40 @@ def load_nortek_matfile(filename): - data = sio.loadmat(filename, - struct_as_record=False, - squeeze_me=True) - d = data['Data'] + data = sio.loadmat(filename, struct_as_record=False, squeeze_me=True) + d = data["Data"] # print(d._fieldnames) - burst = 'Burst' - bt = 'BottomTrack' + burst = "Burst" + bt = "BottomTrack" - beam = ['_VelBeam1', '_VelBeam2', '_VelBeam3', '_VelBeam4'] - b5 = 'IBurst_VelBeam5' - inst = ['_VelX', '_VelY', '_VelZ1', '_VelZ2'] - earth = ['_VelEast', '_VelNorth', '_VelUp1', '_VelUp2'] - axis = {'beam': beam, 'inst': inst, 'earth': earth} - AHRS = 'Burst_AHRSRotationMatrix' # , 'IBurst_AHRSRotationMatrix'] + beam = ["_VelBeam1", "_VelBeam2", "_VelBeam3", "_VelBeam4"] + b5 = "IBurst_VelBeam5" + inst = ["_VelX", "_VelY", "_VelZ1", "_VelZ2"] + earth = ["_VelEast", "_VelNorth", "_VelUp1", "_VelUp2"] + axis = {"beam": beam, "inst": inst, "earth": earth} + AHRS = "Burst_AHRSRotationMatrix" # , 'IBurst_AHRSRotationMatrix'] - vel = {'beam': {}, 'inst': {}, 'earth': {}} + vel = {"beam": {}, "inst": {}, "earth": {}} for ky in vel.keys(): for i in range(len(axis[ky])): - vel[ky][i] = np.transpose(getattr(d, burst+axis[ky][i])) - vel[ky] = np.stack((vel[ky][0], vel[ky][1], - vel[ky][2], vel[ky][3]), axis=0) + vel[ky][i] = np.transpose(getattr(d, burst + axis[ky][i])) + vel[ky] = np.stack((vel[ky][0], vel[ky][1], vel[ky][2], vel[ky][3]), axis=0) if AHRS in d._fieldnames: - vel['omat'] = np.transpose(getattr(d, AHRS)) + vel["omat"] = np.transpose(getattr(d, AHRS)) if b5 in d._fieldnames: - vel['b5'] = np.transpose(getattr(d, b5)) - #vel['omat5'] = getattr(d, AHRS[1]) + vel["b5"] = np.transpose(getattr(d, b5)) + # vel['omat5'] = getattr(d, AHRS[1]) - if bt+beam[0] in d._fieldnames: - vel_bt = {'beam': {}, 'inst': {}, 'earth': {}} + if bt + beam[0] in d._fieldnames: + vel_bt = {"beam": {}, "inst": {}, "earth": {}} for ky in vel_bt.keys(): for i in range(len(axis[ky])): - vel_bt[ky][i] = np.transpose(getattr(d, bt+axis[ky][i])) - vel_bt[ky] = np.stack((vel_bt[ky][0], vel_bt[ky][1], - vel_bt[ky][2], vel_bt[ky][3]), axis=0) + vel_bt[ky][i] = np.transpose(getattr(d, bt + axis[ky][i])) + vel_bt[ky] = np.stack( + (vel_bt[ky][0], vel_bt[ky][1], vel_bt[ky][2], vel_bt[ky][3]), axis=0 + ) return vel, vel_bt else: @@ -62,60 +60,61 @@ def rotate(axis): # Sig1000_IMU.ad2cp no userdata td_sig_i = rotate2(tr.dat_sig_i, axis, inplace=False) # VelEchoBT01.ad2cp - td_sig_ieb = rotate2(tr.dat_sig_ieb, axis, - inplace=False) + td_sig_ieb = rotate2(tr.dat_sig_ieb, axis, inplace=False) # Sig500_Echo.ad2cp - td_sig_ie = rotate2(tr.dat_sig_ie, axis, - inplace=False) + td_sig_ie = rotate2(tr.dat_sig_ie, axis, inplace=False) - td_sig_vel = load_nortek_matfile(base.rfnm('BenchFile01.mat')) - td_sig_i_vel = load_nortek_matfile(base.rfnm('Sig1000_IMU.mat')) - td_sig_ieb_vel, vel_bt = load_nortek_matfile(base.rfnm('VelEchoBT01.mat')) - td_sig_ie_vel = load_nortek_matfile(base.rfnm('Sig500_Echo.mat')) + td_sig_vel = load_nortek_matfile(base.rfnm("BenchFile01.mat")) + td_sig_i_vel = load_nortek_matfile(base.rfnm("Sig1000_IMU.mat")) + td_sig_ieb_vel, vel_bt = load_nortek_matfile(base.rfnm("VelEchoBT01.mat")) + td_sig_ie_vel = load_nortek_matfile(base.rfnm("Sig500_Echo.mat")) nens = 100 # ARHS inst2earth orientation matrix check # Checks the 1,1 element because the nortek orientmat's shape is [9,:] as # opposed to [3,3,:] - if axis == 'inst': - assert_allclose(td_sig_i.orientmat[0][0].values, - td_sig_i_vel['omat'][0, :nens], atol=1e-7) - assert_allclose(td_sig_ieb.orientmat[0][0].values, - td_sig_ieb_vel['omat'][0, :][..., :nens], atol=1e-7) + if axis == "inst": + assert_allclose( + td_sig_i.orientmat[0][0].values, td_sig_i_vel["omat"][0, :nens], atol=1e-7 + ) + assert_allclose( + td_sig_ieb.orientmat[0][0].values, + td_sig_ieb_vel["omat"][0, :][..., :nens], + atol=1e-7, + ) # 4-beam velocity assert_allclose(td_sig.vel.values, td_sig_vel[axis][..., :nens], atol=1e-5) - assert_allclose(td_sig_i.vel.values, - td_sig_i_vel[axis][..., :nens], atol=5e-3) - assert_allclose(td_sig_ieb.vel.values, - td_sig_ieb_vel[axis][..., :nens], atol=5e-3) - assert_allclose(td_sig_ie.vel.values, - td_sig_ie_vel[axis][..., :nens], atol=1e-5) + assert_allclose(td_sig_i.vel.values, td_sig_i_vel[axis][..., :nens], atol=5e-3) + assert_allclose(td_sig_ieb.vel.values, td_sig_ieb_vel[axis][..., :nens], atol=5e-3) + assert_allclose(td_sig_ie.vel.values, td_sig_ie_vel[axis][..., :nens], atol=1e-5) # 5th-beam velocity - if axis == 'beam': - assert_allclose(td_sig_i.vel_b5.values, - td_sig_i_vel['b5'][..., :nens], atol=1e-5) - assert_allclose(td_sig_ieb.vel_b5.values, - td_sig_ieb_vel['b5'][..., :nens], atol=1e-5) - assert_allclose(td_sig_ie.vel_b5.values, - td_sig_ie_vel['b5'][..., :nens], atol=1e-5) + if axis == "beam": + assert_allclose( + td_sig_i.vel_b5.values, td_sig_i_vel["b5"][..., :nens], atol=1e-5 + ) + assert_allclose( + td_sig_ieb.vel_b5.values, td_sig_ieb_vel["b5"][..., :nens], atol=1e-5 + ) + assert_allclose( + td_sig_ie.vel_b5.values, td_sig_ie_vel["b5"][..., :nens], atol=1e-5 + ) # bottom-track - assert_allclose(td_sig_ieb.vel_bt.values, - vel_bt[axis][..., :nens], atol=5e-3) + assert_allclose(td_sig_ieb.vel_bt.values, vel_bt[axis][..., :nens], atol=5e-3) class nortek_testcase(unittest.TestCase): def test_rotate2_beam(self): - rotate('beam') + rotate("beam") def test_rotate2_inst(self): - rotate('inst') + rotate("inst") def test_rotate2_earth(self): - rotate('earth') + rotate("earth") -if __name__ == '__main__': +if __name__ == "__main__": unittest.main() diff --git a/mhkit/tests/loads/test_extreme.py b/mhkit/tests/loads/test_extreme.py new file mode 100644 index 000000000..e0ede2e93 --- /dev/null +++ b/mhkit/tests/loads/test_extreme.py @@ -0,0 +1,50 @@ +import numpy as np +import unittest +import mhkit.loads as loads +from numpy.testing import assert_allclose + + +class TestExtreme(unittest.TestCase): + @classmethod + def setUpClass(self): + self.t, self.signal = self._example_waveform(self) + + def _example_waveform(self): + # Create simple wave form to analyse. + # This has been created to perform + # a simple independent calcuation that + # the mhkit functions can be tested against. + + A = np.array([0.5, 0.6, 0.3]) + T = np.array([3, 2, 1]) + w = 2 * np.pi / T + + t = np.linspace(0, 4.5, 100) + + signal = np.zeros(t.size) + for i in range(A.size): + signal += A[i] * np.sin(w[i] * t) + + return t, signal + + def _example_crest_analysis(self, t, signal): + # NB: This only works due to the construction + # of our test signal. It is not suitable as + # a general approach. + grad = np.diff(signal) + + # +1 to get the index at turning point + turning_points = np.flatnonzero(grad[1:] * grad[:-1] < 0) + 1 + + crest_inds = turning_points[signal[turning_points] > 0] + crests = signal[crest_inds] + + return crests, crest_inds + + def test_global_peaks(self): + peaks_t, peaks_val = loads.extreme.global_peaks(self.t, self.signal) + + test_crests, test_crests_ind = self._example_crest_analysis(self.t, self.signal) + + assert_allclose(peaks_t, self.t[test_crests_ind]) + assert_allclose(peaks_val, test_crests) diff --git a/mhkit/tests/loads/test_loads.py b/mhkit/tests/loads/test_loads.py index f17e89cc4..8c119a38e 100644 --- a/mhkit/tests/loads/test_loads.py +++ b/mhkit/tests/loads/test_loads.py @@ -2,7 +2,6 @@ from numpy.testing import assert_array_almost_equal, assert_allclose from pandas._testing.asserters import assert_series_equal from pandas.testing import assert_frame_equal -from mhkit import utils from mhkit.wave import resource import mhkit.loads as loads import pandas as pd @@ -13,123 +12,351 @@ import os testdir = dirname(abspath(__file__)) -datadir = normpath(join(testdir,relpath('../../../examples/data/loads'))) +datadir = normpath(join(testdir, relpath("../../../examples/data/loads"))) -class TestLoads(unittest.TestCase): +class TestLoads(unittest.TestCase): @classmethod def setUpClass(self): - loads_data_file = join(datadir, "loads_data_dict.json") - with open(loads_data_file, 'r') as fp: + with open(loads_data_file, "r") as fp: data_dict = json.load(fp) # convert dictionaries into dataframes - data = { - key: pd.DataFrame(data_dict[key]) - for key in data_dict - } + data = {key: pd.DataFrame(data_dict[key]) for key in data_dict} self.data = data self.fatigue_tower = 3804 self.fatigue_blade = 1388 # import blade cal data - blade_data = pd.read_csv(join(datadir,'blade_cal.csv'),header=None) - blade_data.columns = ['flap_raw','edge_raw','flap_scaled','edge_scaled'] + blade_data = pd.read_csv(join(datadir, "blade_cal.csv"), header=None) + blade_data.columns = ["flap_raw", "edge_raw", "flap_scaled", "edge_scaled"] self.blade_data = blade_data - self.flap_offset = 9.19906E-05 + self.flap_offset = 9.19906e-05 self.edge_offset = -0.000310854 - self.blade_matrix = [1034671.4,-126487.28,82507.959,1154090.7] + self.blade_matrix = [1034671.4, -126487.28, 82507.959, 1154090.7] def test_bin_statistics(self): # create array containg wind speeds to use as bin edges - bin_edges = np.arange(3,26,1) + bin_edges = np.arange(3, 26, 1) # Apply function to calculate means - load_means =self.data['means'] - bin_against = load_means['uWind_80m'] - [b_means, b_means_std] = loads.general.bin_statistics(load_means, bin_against, bin_edges) + load_means = self.data["means"] + bin_against = load_means["uWind_80m"] + [b_means, b_means_std] = loads.general.bin_statistics( + load_means, bin_against, bin_edges + ) + + # Ensure the data type of the index matches + b_means.index = b_means.index.astype(self.data["bin_means"].index.dtype) + b_means_std.index = b_means_std.index.astype( + self.data["bin_means_std"].index.dtype + ) + + b_means.index.name = None # compatibility with old test data + b_means_std.index.name = None # compatibility with old test data + + assert_frame_equal(self.data["bin_means"], b_means) + assert_frame_equal(self.data["bin_means_std"], b_means_std) - assert_frame_equal(self.data['bin_means'],b_means) - assert_frame_equal(self.data['bin_means_std'],b_means_std) + def test_bin_statistics_xarray(self): + # create array containing wind speeds to use as bin edges + bin_edges = np.arange(3, 26, 1) + + # Apply function to calculate means + load_means = self.data["means"] + load_means = load_means.to_xarray() + bin_against = load_means["uWind_80m"] + [b_means, b_means_std] = loads.general.bin_statistics( + load_means, bin_against, bin_edges + ) + + # Ensure the data type of the index matches + b_means.index = b_means.index.astype(self.data["bin_means"].index.dtype) + b_means_std.index = b_means_std.index.astype( + self.data["bin_means_std"].index.dtype + ) + + b_means.index.name = None # compatibility with old test data + b_means_std.index.name = None # compatibility with old test data + + assert_frame_equal(self.data["bin_means"], b_means) + assert_frame_equal(self.data["bin_means_std"], b_means_std) + + def test_bin_statistics_data_type_error(self): + bin_against = np.array([10, 20, 30]) + bin_edges = np.array([0, 15, 25, 35]) + data_signal = ["signal_1"] + to_pandas = True + with self.assertRaises(TypeError): + loads.general.bin_statistics( + "invalid_data_type", bin_against, bin_edges, data_signal, to_pandas + ) + + def test_bin_statistics_bin_against_type_error(self): + data = pd.DataFrame({"signal_1": [1, 2, 3]}) + bin_edges = np.array([0, 15, 25, 35]) + data_signal = ["signal_1"] + to_pandas = True + invalid_bin_against = "invalid_bin_against_type" + with self.assertRaises(TypeError): + loads.general.bin_statistics( + data, invalid_bin_against, bin_edges, data_signal, to_pandas + ) + + def test_bin_statistics_bin_edges_type_error(self): + data = pd.DataFrame({"signal_1": [1, 2, 3]}) + bin_against = np.array([10, 20, 30]) + data_signal = ["signal_1"] + to_pandas = True + with self.assertRaises(TypeError): + loads.general.bin_statistics( + data, bin_against, "invalid_bin_edges_type", data_signal, to_pandas + ) + + def test_bin_statistics_data_signal_type_error(self): + data = pd.DataFrame({"signal_1": [1, 2, 3]}) + bin_against = np.array([10, 20, 30]) + bin_edges = np.array([0, 15, 25, 35]) + data_signal = "invalid_data_signal_type" + to_pandas = True + with self.assertRaises(TypeError): + loads.general.bin_statistics( + data, bin_against, bin_edges, data_signal, to_pandas + ) + + def test_bin_statistics_to_pandas_type_error(self): + data = pd.DataFrame({"signal_1": [1, 2, 3]}) + bin_against = np.array([10, 20, 30]) + bin_edges = np.array([0, 15, 25, 35]) + data_signal = ["signal_1"] + to_pandas = "invalid_to_pandas_type" + with self.assertRaises(TypeError): + loads.general.bin_statistics( + data, bin_against, bin_edges, data_signal, to_pandas + ) def test_blade_moments(self): - flap_raw = self.blade_data['flap_raw'] + flap_raw = self.blade_data["flap_raw"] flap_offset = self.flap_offset - edge_raw = self.blade_data['edge_raw'] + edge_raw = self.blade_data["edge_raw"] edge_offset = self.edge_offset - M_flap, M_edge = loads.general.blade_moments(self.blade_matrix,flap_offset,flap_raw,edge_offset,edge_raw) - - for i,j in zip(M_flap,self.blade_data['flap_scaled']): - self.assertAlmostEqual(i,j,places=1) - for i,j in zip(M_edge,self.blade_data['edge_scaled']): - self.assertAlmostEqual(i,j,places=1) + M_flap, M_edge = loads.general.blade_moments( + self.blade_matrix, flap_offset, flap_raw, edge_offset, edge_raw + ) + for i, j in zip(M_flap, self.blade_data["flap_scaled"]): + self.assertAlmostEqual(i, j, places=1) + for i, j in zip(M_edge, self.blade_data["edge_scaled"]): + self.assertAlmostEqual(i, j, places=1) - def test_damage_equivalent_loads(self): - loads_data = self.data['loads'] - tower_load = loads_data['TB_ForeAft'] - blade_load = loads_data['BL1_FlapMom'] - DEL_tower = loads.general.damage_equivalent_load(tower_load, 4,bin_num=100,data_length=600) - DEL_blade = loads.general.damage_equivalent_load(blade_load,10,bin_num=100,data_length=600) + def test_blade_moments_wrong_types(self): + # Test with incorrect types + blade_coefficients = [1.0, 2.0, 3.0, 4.0] # Should be np.ndarray + flap_offset = "invalid" # Should be float + flap_raw = "invalid" # Should be np.ndarray + edge_offset = "invalid" # Should be float + edge_raw = "invalid" # Should be np.ndarray - self.assertAlmostEqual(DEL_tower,self.fatigue_tower,delta=self.fatigue_tower*0.04) - self.assertAlmostEqual(DEL_blade,self.fatigue_blade,delta=self.fatigue_blade*0.04) + with self.assertRaises(TypeError): + loads.general.blade_moments( + blade_coefficients, flap_offset, flap_raw, edge_offset, edge_raw + ) + def test_damage_equivalent_loads(self): + loads_data = self.data["loads"] + tower_load = loads_data["TB_ForeAft"] + blade_load = loads_data["BL1_FlapMom"] + DEL_tower = loads.general.damage_equivalent_load( + tower_load, 4, bin_num=100, data_length=600 + ) + DEL_blade = loads.general.damage_equivalent_load( + blade_load, 10, bin_num=100, data_length=600 + ) + + self.assertAlmostEqual( + DEL_tower, self.fatigue_tower, delta=self.fatigue_tower * 0.04 + ) + self.assertAlmostEqual( + DEL_blade, self.fatigue_blade, delta=self.fatigue_blade * 0.04 + ) + + def test_damage_equivalent_load_wrong_types(self): + # Test with incorrect types + data_signal = "invalid" # Should be np.ndarray + m = "invalid" # Should be float or int + bin_num = "invalid" # Should be int + data_length = "invalid" # Should be float or int + + with self.assertRaises(TypeError): + loads.general.damage_equivalent_load(data_signal, m, bin_num, data_length) def test_plot_statistics(self): # Define path - savepath = abspath(join(testdir, 'test_scatplotter.png')) + savepath = abspath(join(testdir, "test_scatplotter.png")) # Generate plot - loads.graphics.plot_statistics( self.data['means']['uWind_80m'], - self.data['means']['TB_ForeAft'], - self.data['maxs']['TB_ForeAft'], - self.data['mins']['TB_ForeAft'], - y_stdev=self.data['std']['TB_ForeAft'], - x_label='Wind Speed [m/s]', - y_label='Tower Base Mom [kNm]', - save_path=savepath) + loads.graphics.plot_statistics( + self.data["means"]["uWind_80m"], + self.data["means"]["TB_ForeAft"], + self.data["maxs"]["TB_ForeAft"], + self.data["mins"]["TB_ForeAft"], + y_stdev=self.data["std"]["TB_ForeAft"], + x_label="Wind Speed [m/s]", + y_label="Tower Base Mom [kNm]", + save_path=savepath, + ) self.assertTrue(isfile(savepath)) + def test_plot_statistics_wrong_types(self): + # Test with incorrect types for some arguments + x = "invalid" # Should be np.ndarray + y_mean = "invalid" # Should be np.ndarray + y_max = "invalid" # Should be np.ndarray + y_min = "invalid" # Should be np.ndarray + y_stdev = "invalid" # Should be np.ndarray + + kwargs = { + "x_label": "X Axis", + "y_label": "Y Axis", + "title": "Test Plot", + "save_path": "test_plot.png", + } + + with self.assertRaises(TypeError): + loads.graphics.plot_statistics(x, y_mean, y_max, y_min, y_stdev, **kwargs) def test_plot_bin_statistics(self): # Define signal name, path, and bin centers - savepath = abspath(join(testdir, 'test_binplotter.png')) - bin_centers = np.arange(3.5,25.5,step=1) - signal_name = 'TB_ForeAft' + savepath = abspath(join(testdir, "test_binplotter.png")) + bin_centers = np.arange(3.5, 25.5, step=1) + signal_name = "TB_ForeAft" # Specify inputs to be used in plotting - bin_mean = self.data['bin_means'][signal_name] - bin_max = self.data['bin_maxs'][signal_name] - bin_min = self.data['bin_mins'][signal_name] - bin_mean_std = self.data['bin_means_std'][signal_name] - bin_max_std = self.data['bin_maxs_std'][signal_name] - bin_min_std = self.data['bin_mins_std'][signal_name] + bin_mean = self.data["bin_means"][signal_name] + bin_max = self.data["bin_maxs"][signal_name] + bin_min = self.data["bin_mins"][signal_name] + bin_mean_std = self.data["bin_means_std"][signal_name] + bin_max_std = self.data["bin_maxs_std"][signal_name] + bin_min_std = self.data["bin_mins_std"][signal_name] # Generate plot - loads.graphics.plot_bin_statistics(bin_centers, - bin_mean, bin_max, bin_min, - bin_mean_std, bin_max_std, bin_min_std, - x_label='Wind Speed [m/s]', - y_label=signal_name, - title='Binned Stats', - save_path=savepath) + loads.graphics.plot_bin_statistics( + bin_centers, + bin_mean, + bin_max, + bin_min, + bin_mean_std, + bin_max_std, + bin_min_std, + x_label="Wind Speed [m/s]", + y_label=signal_name, + title="Binned Stats", + save_path=savepath, + ) self.assertTrue(isfile(savepath)) -class TestWDRT(unittest.TestCase): + def test_plot_bin_statistics_type_errors(self): + # Specify inputs to be used in plotting + bin_centers = np.arange(3.5, 25.5, step=1) + signal_name = "TB_ForeAft" + bin_mean = self.data["bin_means"][signal_name] + bin_max = self.data["bin_maxs"][signal_name] + bin_min = self.data["bin_mins"][signal_name] + bin_mean_std = self.data["bin_means_std"][signal_name] + bin_max_std = self.data["bin_maxs_std"][signal_name] + bin_min_std = self.data["bin_mins_std"][signal_name] + # Test invalid data types one at a time + with self.assertRaises(TypeError): + loads.graphics.plot_bin_statistics( + ["a", 2, 3], # Invalid bin_centers + bin_mean, + bin_max, + bin_min, + bin_mean_std, + bin_max_std, + bin_min_std, + ) + + with self.assertRaises(TypeError): + loads.graphics.plot_bin_statistics( + bin_centers, + ["a", 20, 30], # Invalid bin_mean + bin_max, + bin_min, + bin_mean_std, + bin_max_std, + bin_min_std, + ) + + with self.assertRaises(TypeError): + loads.graphics.plot_bin_statistics( + bin_centers, + bin_mean, + ["a", 25, 35], # Invalid bin_max + bin_min, + bin_mean_std, + bin_max_std, + bin_min_std, + ) + + with self.assertRaises(TypeError): + loads.graphics.plot_bin_statistics( + bin_centers, + bin_mean, + bin_max, + ["a", 15, 25], # Invalid bin_min + bin_mean_std, + bin_max_std, + bin_min_std, + ) + + with self.assertRaises(TypeError): + loads.graphics.plot_bin_statistics( + bin_centers, + bin_mean, + bin_max, + bin_min, + ["a", 2, 3], # Invalid bin_mean_std + bin_max_std, + bin_min_std, + ) + + with self.assertRaises(TypeError): + loads.graphics.plot_bin_statistics( + bin_centers, + bin_mean, + bin_max, + bin_min, + bin_mean_std, + ["a", 1.5, 2.5], # Invalid bin_max_std + bin_min_std, + ) + + with self.assertRaises(TypeError): + loads.graphics.plot_bin_statistics( + bin_centers, + bin_mean, + bin_max, + bin_min, + bin_mean_std, + bin_max_std, + ["a", 1.8, 2.8], # Invalid bin_min_std + ) + +class TestWDRT(unittest.TestCase): @classmethod def setUpClass(self): mler_file = join(datadir, "mler.csv") - mler_data = pd.read_csv(mler_file,index_col=None) - mler_tsfile = join(datadir,"mler_ts.csv") - mler_ts = pd.read_csv(mler_tsfile,index_col=0) + mler_data = pd.read_csv(mler_file, index_col=None) + mler_tsfile = join(datadir, "mler_ts.csv") + mler_ts = pd.read_csv(mler_tsfile, index_col=0) self.mler_ts = mler_ts - self.wave_freq = np.linspace( 0.,1,500) + self.wave_freq = np.linspace(0.0, 1, 500) self.mler = mler_data self.sim = loads.extreme.mler_simulation() @@ -138,45 +365,89 @@ def test_mler_coefficients(self): Tp = 15.1 # time period of waves pm = resource.pierson_moskowitz_spectrum(self.wave_freq, Tp, Hs) mler_data = loads.extreme.mler_coefficients( - self.mler['RAO'].astype(complex), pm, 1) + self.mler["RAO"].astype(complex), pm, 1 + ) + mler_data.reset_index(drop=True, inplace=True) + + assert_series_equal( + mler_data["WaveSpectrum"], + self.mler["Res_Spec"], + check_exact=False, + check_names=False, + atol=0.001, + ) + assert_series_equal( + mler_data["Phase"], + self.mler["phase"], + check_exact=False, + check_names=False, + rtol=0.001, + ) + + def test_mler_coefficients_xarray(self): + Hs = 9.0 # significant wave height + Tp = 15.1 # time period of waves + pm = resource.pierson_moskowitz_spectrum(self.wave_freq, Tp, Hs) + mler_data = loads.extreme.mler_coefficients( + self.mler["RAO"].astype(complex).to_xarray(), pm, 1 + ) mler_data.reset_index(drop=True, inplace=True) - assert_series_equal(mler_data['WaveSpectrum'], self.mler['Res_Spec'], - check_exact=False, check_names=False, atol=0.001) - assert_series_equal(mler_data['Phase'], self.mler['phase'], - check_exact=False, check_names=False, rtol=0.001) + assert_series_equal( + mler_data["WaveSpectrum"], + self.mler["Res_Spec"], + check_exact=False, + check_names=False, + atol=0.001, + ) + assert_series_equal( + mler_data["Phase"], + self.mler["phase"], + check_exact=False, + check_names=False, + rtol=0.001, + ) def test_mler_simulation(self): T = np.linspace(-150, 150, 301) X = np.linspace(-300, 300, 601) sim = loads.extreme.mler_simulation() - assert_array_almost_equal(sim['X'], X) - assert_array_almost_equal(sim['T'], T) + assert_array_almost_equal(sim["X"], X) + assert_array_almost_equal(sim["T"], T) def test_mler_wave_amp_normalize(self): - wave_freq = np.linspace(0., 1, 500) + wave_freq = np.linspace(0.0, 1, 500) mler = pd.DataFrame(index=wave_freq) - mler['WaveSpectrum'] = self.mler['Res_Spec'].values - mler['Phase'] = self.mler['phase'].values + mler["WaveSpectrum"] = self.mler["Res_Spec"].values + mler["Phase"] = self.mler["phase"].values k = resource.wave_number(wave_freq, 70) k = k.fillna(0) mler_norm = loads.extreme.mler_wave_amp_normalize( - 4.5*1.9, mler, self.sim, k.k.values) + 4.5 * 1.9, mler, self.sim, k.k.values + ) mler_norm.reset_index(drop=True, inplace=True) - assert_series_equal(mler_norm['WaveSpectrum'], self.mler['Norm_Spec'],check_exact=False,atol=0.001,check_names=False) + assert_series_equal( + mler_norm["WaveSpectrum"], + self.mler["Norm_Spec"], + check_exact=False, + atol=0.001, + check_names=False, + ) def test_mler_export_time_series(self): - wave_freq = np.linspace(0., 1, 500) + wave_freq = np.linspace(0.0, 1, 500) mler = pd.DataFrame(index=wave_freq) - mler['WaveSpectrum'] = self.mler['Norm_Spec'].values - mler['Phase'] = self.mler['phase'].values + mler["WaveSpectrum"] = self.mler["Norm_Spec"].values + mler["Phase"] = self.mler["phase"].values k = resource.wave_number(wave_freq, 70) k = k.fillna(0) - RAO = self.mler['RAO'].astype(complex) + RAO = self.mler["RAO"].astype(complex) mler_ts = loads.extreme.mler_export_time_series( - RAO.values, mler, self.sim, k.k.values) + RAO.values, mler, self.sim, k.k.values + ) + mler_ts.index.name = None # compatibility with old data assert_frame_equal(self.mler_ts, mler_ts, atol=0.0001) @@ -188,8 +459,7 @@ def test_return_year_value(self): for y in return_years: for stp in short_term_periods: with self.subTest(year=y, short_term=stp): - val = loads.extreme.return_year_value( - dist.ppf, y, stp) + val = loads.extreme.return_year_value(dist.ppf, y, stp) want = 4.5839339 self.assertAlmostEqual(want, val, 5) @@ -200,24 +470,41 @@ def test_longterm_extreme(self): w = [0.5, 0.5] lte = loads.extreme.full_seastate_long_term_extreme(ste, w) x = np.random.rand() - assert_allclose(lte.cdf(x), w[0]*ste[0].cdf(x) + w[1]*ste[1].cdf(x)) + assert_allclose(lte.cdf(x), w[0] * ste[0].cdf(x) + w[1] * ste[1].cdf(x)) def test_shortterm_extreme(self): - methods = ['peaks_weibull', 'peaks_weibull_tail_fit', - 'peaks_over_threshold', 'block_maxima_gev', - 'block_maxima_gumbel'] + methods = [ + "peaks_weibull", + "peaks_weibull_tail_fit", + "peaks_over_threshold", + "block_maxima_gev", + "block_maxima_gumbel", + ] filename = "time_series_for_extremes.txt" data = np.loadtxt(os.path.join(datadir, filename)) t = data[:, 0] data = data[:, 1] t_st = 1.0 * 60 * 60 x = 1.6 - cdfs_1 = [0.006750456316537166, 0.5921659393757381, 0.6156789503874247, - 0.6075807789811315, 0.9033574618279865] + cdfs_1 = [ + 0.006750456316537166, + 0.5921659393757381, + 0.6156789503874247, + 0.6075807789811315, + 0.9033574618279865, + ] for method, cdf_1 in zip(methods, cdfs_1): ste = loads.extreme.ste(t, data, t_st, method) assert_allclose(ste.cdf(x), cdf_1) + def test_automatic_threshold(self): + filename = "data_loads_hs.csv" + data = np.loadtxt(os.path.join(datadir, filename), delimiter=",") + years = 2.97 + pct, threshold = loads.extreme.automatic_hs_threshold(data, years) + assert np.isclose(pct, 0.9913) + assert np.isclose(threshold, 1.032092) + -if __name__ == '__main__': +if __name__ == "__main__": unittest.main() diff --git a/mhkit/tests/mooring/test_mooring.py b/mhkit/tests/mooring/test_mooring.py index 1ba09f42d..da11f614c 100644 --- a/mhkit/tests/mooring/test_mooring.py +++ b/mhkit/tests/mooring/test_mooring.py @@ -3,43 +3,237 @@ from matplotlib.animation import FuncAnimation import xarray as xr import mhkit.mooring as mooring +import pytest +import numpy as np testdir = dirname(abspath(__file__)) -datadir = normpath(join(testdir, '..', '..', '..', - 'examples', 'data', 'mooring')) +datadir = normpath(join(testdir, "..", "..", "..", "examples", "data", "mooring")) class TestMooring(unittest.TestCase): + @classmethod + def setUpClass(self): + fpath = join(datadir, "line1_test.nc") + self.ds = xr.open_dataset(fpath) + self.dsani = self.ds.sel(Time=slice(0, 10)) def test_moordyn_out(self): - fpath = join(datadir, 'Test.MD.out') + fpath = join(datadir, "Test.MD.out") inputpath = join(datadir, "TestInput.MD.dat") ds = mooring.io.read_moordyn(fpath, input_file=inputpath) - isinstance(ds, xr.Dataset) + self.assertIsInstance(ds, xr.Dataset) def test_lay_length(self): - fpath = join(datadir, 'line1_test.nc') + fpath = join(datadir, "line1_test.nc") ds = xr.open_dataset(fpath) laylengths = mooring.lay_length(ds, depth=-56, tolerance=0.25) laylength = laylengths.mean().values self.assertAlmostEqual(laylength, 45.0, 1) def test_animate_3d(self): - fpath = join(datadir, 'line1_test.nc') - ds = xr.open_dataset(fpath) - dsani = ds.sel(Time=slice(0, 10)) - ani = mooring.graphics.animate(dsani, dimension='3d', interval=10, repeat=True, - xlabel='X-axis', ylabel='Y-axis', zlabel='Depth [m]', title='Mooring Line Example') - isinstance(ani, FuncAnimation) + dsani = self.ds.sel(Time=slice(0, 10)) + ani = mooring.graphics.animate( + dsani, + dimension="3d", + interval=10, + repeat=True, + xlabel="X-axis", + ylabel="Y-axis", + zlabel="Depth [m]", + title="Mooring Line Example", + ) + self.assertIsInstance(ani, FuncAnimation) def test_animate_2d(self): - fpath = join(datadir, 'line1_test.nc') - ds = xr.open_dataset(fpath) - dsani = ds.sel(Time=slice(0, 10)) - ani2d = mooring.graphics.animate(dsani, dimension='2d', xaxis='x', yaxis='z', repeat=True, - xlabel='X-axis', ylabel='Depth [m]', title='Mooring Line Example') - isinstance(ani2d, FuncAnimation) + dsani = self.ds.sel(Time=slice(0, 10)) + ani2d = mooring.graphics.animate( + dsani, + dimension="2d", + xaxis="x", + yaxis="z", + repeat=True, + xlabel="X-axis", + ylabel="Depth [m]", + title="Mooring Line Example", + ) + self.assertIsInstance(ani2d, FuncAnimation) + + def test_animate_2d_update(self): + ani2d = mooring.graphics.animate( + self.ds, + dimension="2d", + xaxis="x", + yaxis="z", + repeat=True, + xlabel="X-axis", + ylabel="Depth [m]", + title="Mooring Line Example", + ) + + # Extract the figure and axes + fig = ani2d._fig + ax = fig.axes[0] + (line,) = ax.lines + + # Simulate the update for a specific frame + frame = 5 + + # Extracting data from the list of nodes + nodes_x, nodes_y, _ = mooring.graphics._get_axis_nodes( + self.dsani, "x", "z", "y" + ) + x_data = self.dsani[nodes_x[0]].isel(Time=frame).values + y_data = self.dsani[nodes_y[0]].isel(Time=frame).values + + # Manually set the data for the line object + line.set_data(x_data, y_data) + + # Extract updated data from the line object + updated_x, updated_y = line.get_data() + + # Assert that the updated data matches the dataset + np.testing.assert_array_equal(updated_x, x_data) + np.testing.assert_array_equal(updated_y, y_data) + + def test_animate_3d_update(self): + ani3d = mooring.graphics.animate( + self.ds, + dimension="3d", + xaxis="x", + yaxis="z", + zaxis="y", + repeat=True, + xlabel="X-axis", + ylabel="Depth [m]", + zlabel="Y-axis", + title="Mooring Line Example", + ) + + # Extract the figure and axes + fig = ani3d._fig + ax = fig.axes[0] + (line,) = ax.lines + + # Simulate the update for a specific frame + frame = 5 + + # Extracting data for the specified frame + nodes_x, nodes_y, nodes_z = mooring.graphics._get_axis_nodes( + self.dsani, "x", "z", "y" + ) + x_data = self.dsani[nodes_x[0]].isel(Time=frame).values + y_data = self.dsani[nodes_y[0]].isel(Time=frame).values + z_data = self.dsani[nodes_z[0]].isel(Time=frame).values + + # Manually set the data for the line object + line.set_data(x_data, y_data) + line.set_3d_properties(z_data) + + # Extract updated data from the line object + updated_x, updated_y, updated_z = line._verts3d + + # Assert that the updated data matches the dataset + np.testing.assert_array_equal(updated_x, x_data) + np.testing.assert_array_equal(updated_y, y_data) + np.testing.assert_array_equal(updated_z, z_data) + + # Test for xaxis, yaxis, zaxis type handling + def test_animate_xaxis_type_handling(self): + with pytest.raises(TypeError): + mooring.graphics.animate(self.dsani, xaxis=123) + + def test_animate_yaxis_type_handling(self): + with pytest.raises(TypeError): + mooring.graphics.animate(self.dsani, yaxis=123) + + def test_animate_zaxis_type_handling(self): + with pytest.raises(TypeError): + mooring.graphics.animate(self.dsani, zaxis=123) + + # Test for zlim and zlabel in 3D mode + def test_animate_zlim_type_handling_3d(self): + with pytest.raises(TypeError): + mooring.graphics.animate(self.dsani, dimension="3d", zlim="invalid") + + def test_animate_zlabel_type_handling_3d(self): + with pytest.raises(TypeError): + mooring.graphics.animate(self.dsani, dimension="3d", zlabel=123) + + # Test for xlim, ylim, interval, repeat, xlabel, ylabel, title + def test_animate_xlim_type_handling(self): + with pytest.raises(TypeError): + mooring.graphics.animate(self.dsani, xlim="invalid") + + def test_animate_ylim_type_handling(self): + with pytest.raises(TypeError): + mooring.graphics.animate(self.dsani, ylim="invalid") + + def test_animate_interval_type_handling(self): + with pytest.raises(TypeError): + mooring.graphics.animate(self.dsani, interval="invalid") + + def test_animate_repeat_type_handling(self): + with pytest.raises(TypeError): + mooring.graphics.animate(self.dsani, repeat="invalid") + + def test_animate_xlabel_type_handling(self): + with pytest.raises(TypeError): + mooring.graphics.animate(self.dsani, xlabel=123) + + def test_animate_ylabel_type_handling(self): + with pytest.raises(TypeError): + mooring.graphics.animate(self.dsani, ylabel=123) + + def test_animate_title_type_handling(self): + with pytest.raises(TypeError): + mooring.graphics.animate(self.dsani, title=123) + + def test_animate_dsani_type_handling(self): + with pytest.raises(TypeError): + mooring.graphics.animate("not_a_dataset") + + def test_animate_xlim_type_handling_none(self): + try: + mooring.graphics.animate(self.dsani, xlim=None) + except TypeError: + pytest.fail("Unexpected TypeError with xlim=None") + + def test_animate_ylim_type_handling_none(self): + try: + mooring.graphics.animate(self.dsani, ylim=None) + except TypeError: + pytest.fail("Unexpected TypeError with ylim=None") + + def test_animate_interval_type_handling(self): + with pytest.raises(TypeError): + mooring.graphics.animate(self.dsani, interval="not_an_int") + + def test_animate_repeat_type_handling(self): + with pytest.raises(TypeError): + mooring.graphics.animate(self.dsani, repeat="not_a_bool") + + def test_animate_xlabel_type_handling_none(self): + try: + mooring.graphics.animate(self.dsani, xlabel=None) + except TypeError: + pytest.fail("Unexpected TypeError with xlabel=None") + + def test_animate_ylabel_type_handling_none(self): + try: + mooring.graphics.animate(self.dsani, ylabel=None) + except TypeError: + pytest.fail("Unexpected TypeError with ylabel=None") + + def test_animate_title_type_handling_none(self): + try: + mooring.graphics.animate(self.dsani, title=None) + except TypeError: + pytest.fail("Unexpected TypeError with title=None") + + def test_animate_dimension_type_handling(self): + with pytest.raises(ValueError): + mooring.graphics.animate(self.dsani, dimension="not_2d_or_3d") -if __name__ == '__main__': +if __name__ == "__main__": unittest.main() diff --git a/mhkit/tests/power/test_power.py b/mhkit/tests/power/test_power.py index eb2807932..e218d149f 100644 --- a/mhkit/tests/power/test_power.py +++ b/mhkit/tests/power/test_power.py @@ -1,112 +1,186 @@ - -from os.path import abspath, dirname, join, isfile, normpath, relpath +from os.path import abspath, dirname, join, normpath, relpath import mhkit.power as power import pandas as pd +import xarray as xr import numpy as np import unittest -import os testdir = dirname(abspath(__file__)) -datadir = normpath(join(testdir,relpath('../../../examples/data/power'))) +datadir = normpath(join(testdir, relpath("../../../examples/data/power"))) -class TestDevice(unittest.TestCase): +class TestDevice(unittest.TestCase): @classmethod def setUpClass(self): self.t = 600 fs = 1000 - sample_frequency = 1000 # = fs - self.samples = np.linspace(0, self.t, int(fs*self.t), endpoint=False) + self.samples = np.linspace(0, self.t, int(fs * self.t), endpoint=False) self.frequency = 60 - self.freq_array = np.ones(len(self.samples))*60 - harmonics_int = np.arange(0,60*60,5) + self.freq_array = np.ones(len(self.samples)) * 60 + harmonics_int = np.arange(0, 60 * 60, 5) self.harmonics_int = harmonics_int - self.interharmonic = np.zeros(len(harmonics_int)) #since this is an idealized sin wave, the interharmonics should be zero + # since this is an idealized sin wave, the interharmonics should be zero + self.interharmonic = np.zeros(len(harmonics_int)) self.harmonics_vals = np.zeros(len(harmonics_int)) - self.harmonics_vals[12]= 1.0 #setting 60th harmonic to amplitude of the signal + # setting 60th harmonic to amplitude of the signal + self.harmonics_vals[12] = 1.0 + + # harmonic groups should be equal to every 12th harmonic in this idealized example + self.harmonic_groups = self.harmonics_vals[0::12] + self.thcd = ( + 0.0 # Since this is an idealized sin wave, there should be no distortion + ) - self.harmonic_groups = self.harmonics_vals[0::12] #harmonic groups should be equal to every 12th harmonic in this idealized example - self.thcd = 0.0 #Since this is an idealized sin wave, there should be no distortion - self.signal = np.sin(2 * np.pi * self.frequency * self.samples) - - self.current_data = [[1,2,3],[4,5,6],[7,8,9],[10,11,12]] - self.voltage_data = [[1,5,9],[2,6,10],[3,7,11],[4,8,12]] + + self.current_data = np.asarray([[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]]) + self.voltage_data = np.asarray([[1, 5, 9], [2, 6, 10], [3, 7, 11], [4, 8, 12]]) @classmethod def tearDownClass(self): pass - def test_harmonics_sine_wave(self): - + def test_harmonics_sine_wave_pandas(self): current = pd.Series(self.signal, index=self.samples) harmonics = power.quality.harmonics(current, 1000, self.frequency) - for i,j in zip(harmonics.values, self.harmonics_vals): - self.assertAlmostEqual(i[0], j,1) + for i, j in zip(harmonics["data"].values, self.harmonics_vals): + self.assertAlmostEqual(i, j, 1) - def test_harmonic_subgroup_sine_wave(self): - current = pd.Series(self.signal, index=self.samples) - harmonics = pd.DataFrame(self.harmonics_vals, - index= self.harmonics_int) - hsg = power.quality.harmonic_subgroups(harmonics,self.frequency) - for i,j in zip(hsg.values,self.harmonic_groups): - self.assertAlmostEqual(i[0], j,1) + def test_harmonics_sine_wave_xarray(self): + current = xr.DataArray( + data=self.signal, dims="index", coords={"index": self.samples} + ) + harmonics = power.quality.harmonics(current, 1000, self.frequency) - def test_TCHD_sine_wave(self): - current = pd.Series(self.signal, index=self.samples) - harmonics = pd.DataFrame(self.harmonics_vals, - index= self.harmonics_int) - hsg = power.quality.harmonic_subgroups(harmonics,self.frequency) + for i, j in zip(harmonics["data"].values, self.harmonics_vals): + self.assertAlmostEqual(i, j, 1) - TCHD = power.quality.total_harmonic_current_distortion(hsg,18.8) # had to just put a random rated current in here - self.assertAlmostEqual(TCHD.values[0],self.thcd) + def test_harmonic_subgroup_sine_wave_pandas(self): + harmonics = pd.DataFrame(self.harmonics_vals, index=self.harmonics_int) + hsg = power.quality.harmonic_subgroups(harmonics, self.frequency) - def test_interharmonics_sine_wave(self): - current = pd.Series(self.signal, index=self.samples) - harmonics = pd.DataFrame(self.harmonics_vals, - index= self.harmonics_int) + for i, j in zip(hsg.values, self.harmonic_groups): + self.assertAlmostEqual(i[0], j, 1) + + def test_harmonic_subgroup_sine_wave_xarray(self): + harmonics = xr.Dataset( + data_vars={"harmonics": (["index"], self.harmonics_vals)}, + coords={"index": self.harmonics_int}, + ) + hsg = power.quality.harmonic_subgroups(harmonics, self.frequency) + + for i, j in zip(hsg.values, self.harmonic_groups): + self.assertAlmostEqual(i[0], j, 1) + + def test_TCHD_sine_wave_pandas(self): + harmonics = pd.DataFrame(self.harmonics_vals, index=self.harmonics_int) + hsg = power.quality.harmonic_subgroups(harmonics, self.frequency) + TCHD = power.quality.total_harmonic_current_distortion(hsg) + + self.assertAlmostEqual(TCHD.values[0], self.thcd) + + def test_TCHD_sine_wave_xarray(self): + harmonics = xr.Dataset( + data_vars={"harmonics": (["index"], self.harmonics_vals)}, + coords={"index": self.harmonics_int}, + ) + hsg = power.quality.harmonic_subgroups(harmonics, self.frequency) + TCHD = power.quality.total_harmonic_current_distortion(hsg) + + self.assertAlmostEqual(TCHD.values[0], self.thcd) + + def test_interharmonics_sine_wave_pandas(self): + harmonics = pd.DataFrame(self.harmonics_vals, index=self.harmonics_int) + inter_harmonics = power.quality.interharmonics(harmonics, self.frequency) + + for i, j in zip(inter_harmonics.values, self.interharmonic): + self.assertAlmostEqual(i[0], j, 1) + + def test_interharmonics_sine_wave_xarray(self): + harmonics = xr.Dataset( + data_vars={"harmonics": (["index"], self.harmonics_vals)}, + coords={"index": self.harmonics_int}, + ) + inter_harmonics = power.quality.interharmonics(harmonics, self.frequency) - inter_harmonics = power.quality.interharmonics(harmonics,self.frequency) + for i, j in zip(inter_harmonics.values, self.interharmonic): + self.assertAlmostEqual(i[0], j, 1) - for i,j in zip(inter_harmonics.values, self.interharmonic): - self.assertAlmostEqual(i[0], j,1) + def test_instfreq_pandas(self): + um = pd.Series(self.signal, index=self.samples) + freq = power.characteristics.instantaneous_frequency(um) + for i in freq.values: + self.assertAlmostEqual(i[0], self.frequency, 1) + + def test_instfreq_xarray(self): + um = pd.Series(self.signal, index=self.samples) + um = um.to_xarray() - def test_instfreq(self): - um = pd.Series(self.signal,index = self.samples) - freq = power.characteristics.instantaneous_frequency(um) for i in freq.values: - self.assertAlmostEqual(i[0], self.frequency,1) + self.assertAlmostEqual(i[0], self.frequency, 1) + + def test_dc_power_pandas(self): + current = pd.DataFrame(self.current_data, columns=["A1", "A2", "A3"]) + voltage = pd.DataFrame(self.voltage_data, columns=["V1", "V2", "V3"]) + + P = power.characteristics.dc_power(voltage, current) + P_test = (self.current_data * self.voltage_data).sum() + self.assertEqual(P.sum()["Gross"], P_test) + + P = power.characteristics.dc_power(voltage["V1"], current["A1"]) + P_test = (self.current_data[:, 0] * self.voltage_data[:, 0]).sum() + self.assertEqual(P.sum()["Gross"], P_test) + + def test_dc_power_xarray(self): + current = pd.DataFrame(self.current_data, columns=["A1", "A2", "A3"]) + voltage = pd.DataFrame(self.voltage_data, columns=["V1", "V2", "V3"]) + current = current.to_xarray() + voltage = voltage.to_xarray() - def test_dc_power_DataFrame(self): - current = pd.DataFrame(self.current_data, columns=['A1', 'A2', 'A3']) - voltage = pd.DataFrame(self.voltage_data, columns=['V1', 'V2', 'V3']) P = power.characteristics.dc_power(voltage, current) - self.assertEqual(P.sum()['Gross'], (voltage.values * current.values).sum()) - - def test_dc_power_Series(self): - current = pd.DataFrame(self.current_data, columns=['A1', 'A2', 'A3']) - voltage = pd.DataFrame(self.voltage_data, columns=['V1', 'V2', 'V3']) - P = power.characteristics.dc_power(voltage['V1'], current['A1']) - self.assertEqual(P.sum()['Gross'], sum( voltage['V1'] * current['A1'])) - - def test_ac_power_three_phase(self): - current = pd.DataFrame(self.current_data, columns=['A1', 'A2', 'A3']) - voltage = pd.DataFrame(self.voltage_data, columns=['V1', 'V2', 'V3']) - - P1 = power.characteristics.ac_power_three_phase( voltage, current, 1, False) + P_test = (self.current_data * self.voltage_data).sum() + self.assertEqual(P.sum()["Gross"], P_test) + + P = power.characteristics.dc_power(voltage["V1"], current["A1"]) + P_test = (self.current_data[:, 0] * self.voltage_data[:, 0]).sum() + self.assertEqual(P.sum()["Gross"], P_test) + + def test_ac_power_three_phase_pandas(self): + current = pd.DataFrame(self.current_data, columns=["A1", "A2", "A3"]) + voltage = pd.DataFrame(self.voltage_data, columns=["V1", "V2", "V3"]) + + P1 = power.characteristics.ac_power_three_phase(voltage, current, 1, False) P1b = power.characteristics.ac_power_three_phase(voltage, current, 0.5, False) - P2 = power.characteristics.ac_power_three_phase( voltage, current,1, True) + P2 = power.characteristics.ac_power_three_phase(voltage, current, 1, True) P2b = power.characteristics.ac_power_three_phase(voltage, current, 0.5, True) - - self.assertEqual(P1.sum()[0], 584) - self.assertEqual(P1b.sum()[0], 584/2) - self.assertAlmostEqual(P2.sum()[0], 1011.518, 2) - self.assertAlmostEqual(P2b.sum()[0], 1011.518/2, 2) - -if __name__ == '__main__': - unittest.main() - + + P_test = (self.current_data * self.voltage_data).sum() + self.assertEqual(P1.sum().iloc[0], P_test) + self.assertEqual(P1b.sum().iloc[0], P_test / 2) + self.assertAlmostEqual(P2.sum().iloc[0], P_test * np.sqrt(3), 2) + self.assertAlmostEqual(P2b.sum().iloc[0], P_test * np.sqrt(3) / 2, 2) + + def test_ac_power_three_phase_xarray(self): + current = pd.DataFrame(self.current_data, columns=["A1", "A2", "A3"]) + voltage = pd.DataFrame(self.voltage_data, columns=["V1", "V2", "V3"]) + current = current.to_xarray() + voltage = voltage.to_xarray() + + P1 = power.characteristics.ac_power_three_phase(voltage, current, 1, False) + P1b = power.characteristics.ac_power_three_phase(voltage, current, 0.5, False) + P2 = power.characteristics.ac_power_three_phase(voltage, current, 1, True) + P2b = power.characteristics.ac_power_three_phase(voltage, current, 0.5, True) + + P_test = (self.current_data * self.voltage_data).sum() + self.assertEqual(P1.sum().iloc[0], P_test) + self.assertEqual(P1b.sum().iloc[0], P_test / 2) + self.assertAlmostEqual(P2.sum().iloc[0], P_test * np.sqrt(3), 2) + self.assertAlmostEqual(P2b.sum().iloc[0], P_test * np.sqrt(3) / 2, 2) + + +if __name__ == "__main__": + unittest.main() diff --git a/mhkit/tests/river/test_io.py b/mhkit/tests/river/test_io.py deleted file mode 100644 index 714711ff1..000000000 --- a/mhkit/tests/river/test_io.py +++ /dev/null @@ -1,227 +0,0 @@ -from os.path import abspath, dirname, join, isfile, normpath, relpath -from numpy.testing import assert_array_almost_equal -from pandas.testing import assert_frame_equal -import scipy.interpolate as interp -import matplotlib.pylab as plt -import mhkit.river as river -import pandas as pd -import numpy as np -import unittest -import netCDF4 -import os - - -testdir = dirname(abspath(__file__)) -plotdir = join(testdir, 'plots') -isdir = os.path.isdir(plotdir) -if not isdir: os.mkdir(plotdir) -datadir = normpath(join(testdir,'..','..','..','examples','data','river')) - - -class TestIO(unittest.TestCase): - - @classmethod - def setUpClass(self): - d3ddatadir = normpath(join(datadir,'d3d')) - - filename= 'turbineTest_map.nc' - self.d3d_flume_data = netCDF4.Dataset(join(d3ddatadir,filename)) - - @classmethod - def tearDownClass(self): - pass - - def test_load_usgs_data_instantaneous(self): - file_name = join(datadir, 'USGS_08313000_Jan2019_instantaneous.json') - data = river.io.usgs.read_usgs_file(file_name) - - self.assertEqual(data.columns, ['Discharge, cubic feet per second']) - self.assertEqual(data.shape, (2972, 1)) # 4 data points are missing - - def test_load_usgs_data_daily(self): - file_name = join(datadir, 'USGS_08313000_Jan2019_daily.json') - data = river.io.usgs.read_usgs_file(file_name) - - expected_index = pd.date_range('2019-01-01', '2019-01-31', freq='D') - self.assertEqual(data.columns, ['Discharge, cubic feet per second']) - self.assertEqual((data.index == expected_index.tz_localize('UTC')).all(), True) - self.assertEqual(data.shape, (31, 1)) - - - def test_request_usgs_data_daily(self): - data=river.io.usgs.request_usgs_data(station="15515500", - parameter='00060', - start_date='2009-08-01', - end_date='2009-08-10', - data_type='Daily') - self.assertEqual(data.columns, ['Discharge, cubic feet per second']) - self.assertEqual(data.shape, (10, 1)) - - - def test_request_usgs_data_instant(self): - data=river.io.usgs.request_usgs_data(station="15515500", - parameter='00060', - start_date='2009-08-01', - end_date='2009-08-10', - data_type='Instantaneous') - self.assertEqual(data.columns, ['Discharge, cubic feet per second']) - # Every 15 minutes or 4 times per hour - self.assertEqual(data.shape, (10*24*4, 1)) - - def test_get_all_time(self): - data= self.d3d_flume_data - seconds_run = river.io.d3d.get_all_time(data) - seconds_run_expected= np.ndarray(shape=(5,), buffer= np.array([0, 60, 120, 180, 240]), dtype=int) - np.testing.assert_array_equal(seconds_run, seconds_run_expected) - - def test_convert_time(self): - data= self.d3d_flume_data - time_index = 2 - seconds_run = river.io.d3d.index_to_seconds(data, time_index = time_index) - seconds_run_expected = 120 - self.assertEqual(seconds_run, seconds_run_expected) - seconds_run = 60 - time_index= river.io.d3d.seconds_to_index(data, seconds_run = seconds_run) - time_index_expected = 1 - self.assertEqual(time_index, time_index_expected) - seconds_run = 62 - time_index= river.io.d3d.seconds_to_index(data, seconds_run = seconds_run) - time_index_expected = 1 - output_expected= f'ERROR: invalid seconds_run. Closest seconds_run found {time_index_expected}' - self.assertWarns(UserWarning) - - def test_layer_data(self): - data=self.d3d_flume_data - variable = ['ucx', 's1'] - for var in variable: - layer=2 - time_index= 3 - layer_data= river.io.d3d.get_layer_data(data, var, layer, time_index) - layer_compare = 2 - time_index_compare= 4 - layer_data_expected= river.io.d3d.get_layer_data(data, - var, layer_compare, - time_index_compare) - - assert_array_almost_equal(layer_data.x,layer_data_expected.x, decimal = 2) - assert_array_almost_equal(layer_data.y,layer_data_expected.y, decimal = 2) - assert_array_almost_equal(layer_data.v,layer_data_expected.v, decimal= 2) - - - - def test_create_points(self): - x=np.linspace(1, 3, num= 3) - y=np.linspace(1, 3, num= 3) - z=1 - points= river.io.d3d.create_points(x,y,z) - x=[1,2,3,1,2,3,1,2,3] - y=[1,1,1,2,2,2,3,3,3] - z=[1,1,1,1,1,1,1,1,1] - points_array= np.array([ [x_i, y_i, z_i] for x_i, y_i, z_i in zip(x, y, z)]) - points_expected= pd.DataFrame(points_array, columns=('x','y','z')) - assert_array_almost_equal(points, points_expected,decimal = 2) - - x=np.linspace(1, 3, num= 3) - y=2 - z=1 - points= river.io.d3d.create_points(x,y,z) - x=[1,2,3] - y=[2,2,2] - z=[1,1,1] - points_array= np.array([ [x_i, y_i, z_i] for x_i, y_i, z_i in zip(x, y, z)]) - points_expected= pd.DataFrame(points_array, columns=('x','y','z')) - assert_array_almost_equal(points, points_expected,decimal = 2) - - x=3 - y=2 - z=1 - points= river.io.d3d.create_points(x,y,z) - output_expected='Can provide at most two arrays' - self.assertWarns(UserWarning) - - def test_variable_interpolation(self): - data=self.d3d_flume_data - variables= ['ucx','turkin1'] - transformes_data= river.io.d3d.variable_interpolation(data, variables, points= 'faces', edges='nearest') - self.assertEqual(np.size(transformes_data['ucx']), np.size(transformes_data['turkin1'])) - transformes_data= river.io.d3d.variable_interpolation(data, variables, points= 'cells', edges='nearest') - self.assertEqual(np.size(transformes_data['ucx']), np.size(transformes_data['turkin1'])) - x=np.linspace(1, 3, num= 3) - y=np.linspace(1, 3, num= 3) - waterdepth=1 - points= river.io.d3d.create_points(x,y,waterdepth) - transformes_data= river.io.d3d.variable_interpolation(data, variables, points= points) - self.assertEqual(np.size(transformes_data['ucx']), np.size(transformes_data['turkin1'])) - - def test_get_all_data_points(self): - data=self.d3d_flume_data - variable= 'ucx' - time_step= 3 - output = river.io.d3d.get_all_data_points(data, variable, time_step) - size_output = np.size(output) - time_step_compair=4 - output_expected= river.io.d3d.get_all_data_points(data, variable, time_step_compair) - size_output_expected= np.size(output_expected) - self.assertEqual(size_output, size_output_expected) - - - def test_unorm(self): - x=np.linspace(1, 3, num= 3) - y=np.linspace(1, 3, num= 3) - z=np.linspace(1, 3, num= 3) - unorm = river.io.d3d.unorm(x,y,z) - unorm_expected= [np.sqrt(1**2+1**2+1**2),np.sqrt(2**2+2**2+2**2), np.sqrt(3**2+3**2+3**2)] - assert_array_almost_equal(unorm, unorm_expected, decimal = 2) - - def test_turbulent_intensity(self): - data=self.d3d_flume_data - time_index= -1 - x_test=np.linspace(1, 17, num= 10) - y_test=np.linspace(3, 3, num= 10) - waterdepth_test=np.linspace(1, 1, num= 10) - - test_points = np.array([ [x, y, waterdepth] for x, y, waterdepth in zip(x_test, y_test, waterdepth_test)]) - points= pd.DataFrame(test_points, columns=['x','y','waterdepth']) - - TI= river.io.d3d.turbulent_intensity(data, points, time_index) - - TI_vars= ['turkin1', 'ucx', 'ucy', 'ucz'] - TI_data_raw = {} - for var in TI_vars: - #get all data - var_data_df = river.io.d3d.get_all_data_points(data, var,time_index) - TI_data_raw[var] = var_data_df - TI_data= points.copy(deep=True) - - for var in TI_vars: - TI_data[var] = interp.griddata(TI_data_raw[var][['x','y','waterdepth']], - TI_data_raw[var][var], points[['x','y','waterdepth']]) - idx= np.where(np.isnan(TI_data[var])) - - if len(idx[0]): - for i in idx[0]: - TI_data[var][i]= interp.griddata(TI_data_raw[var][['x','y','waterdepth']], - TI_data_raw[var][var], - [points['x'][i],points['y'][i], points['waterdepth'][i]], - method='nearest') - - u_mag=river.io.d3d.unorm(TI_data['ucx'],TI_data['ucy'], TI_data['ucz']) - turbulent_intensity_expected= (np.sqrt(2/3*TI_data['turkin1'])/u_mag)*100 - - - assert_array_almost_equal(TI.turbulent_intensity, turbulent_intensity_expected, decimal = 2) - - TI = river.io.d3d.turbulent_intensity(data, points='faces') - TI_size = np.size(TI['turbulent_intensity']) - turkin1= river.io.d3d.get_all_data_points(data, 'turkin1',time_index) - turkin1_size= np.size(turkin1['turkin1']) - self.assertEqual(TI_size, turkin1_size) - - TI = river.io.d3d.turbulent_intensity(data, points='cells') - TI_size = np.size(TI['turbulent_intensity']) - ucx= river.io.d3d.get_all_data_points(data, 'ucx',time_index) - ucx_size= np.size(ucx['ucx']) - self.assertEqual(TI_size, ucx_size) -if __name__ == '__main__': - unittest.main() - diff --git a/mhkit/tests/river/test_io_d3d.py b/mhkit/tests/river/test_io_d3d.py new file mode 100644 index 000000000..f41ba4962 --- /dev/null +++ b/mhkit/tests/river/test_io_d3d.py @@ -0,0 +1,302 @@ +from os.path import abspath, dirname, join, normpath +from numpy.testing import assert_array_almost_equal +import scipy.interpolate as interp +import mhkit.river as river +import mhkit.tidal as tidal +import pandas as pd +import xarray as xr +import numpy as np +import unittest +import netCDF4 +import os + + +testdir = dirname(abspath(__file__)) +plotdir = join(testdir, "plots") +isdir = os.path.isdir(plotdir) +if not isdir: + os.mkdir(plotdir) +datadir = normpath(join(testdir, "..", "..", "..", "examples", "data", "river")) + + +class TestIO(unittest.TestCase): + @classmethod + def setUpClass(self): + d3ddatadir = normpath(join(datadir, "d3d")) + + filename = "turbineTest_map.nc" + self.d3d_flume_data = netCDF4.Dataset(join(d3ddatadir, filename)) + + @classmethod + def tearDownClass(self): + pass + + def test_get_all_time(self): + data = self.d3d_flume_data + seconds_run = river.io.d3d.get_all_time(data) + seconds_run_expected = np.ndarray( + shape=(5,), buffer=np.array([0, 60, 120, 180, 240]), dtype=int + ) + np.testing.assert_array_equal(seconds_run, seconds_run_expected) + + def test_convert_time(self): + data = self.d3d_flume_data + time_index = 2 + seconds_run = river.io.d3d.index_to_seconds(data, time_index=time_index) + seconds_run_expected = 120 + self.assertEqual(seconds_run, seconds_run_expected) + seconds_run = 60 + time_index = river.io.d3d.seconds_to_index(data, seconds_run=seconds_run) + time_index_expected = 1 + self.assertEqual(time_index, time_index_expected) + seconds_run = 62 + time_index = river.io.d3d.seconds_to_index(data, seconds_run=seconds_run) + time_index_expected = 1 + output_expected = f"ERROR: invalid seconds_run. Closest seconds_run found {time_index_expected}" + self.assertWarns(UserWarning) + + def test_convert_time_from_tidal(self): + """ + Test the conversion of time from using tidal import of d3d + """ + data = self.d3d_flume_data + time_index = 2 + seconds_run = tidal.io.d3d.index_to_seconds(data, time_index=time_index) + seconds_run_expected = 120 + self.assertEqual(seconds_run, seconds_run_expected) + + def test_layer_data(self): + data = self.d3d_flume_data + variable = ["ucx", "s1"] + for var in variable: + layer = 2 + time_index = 3 + layer_data = river.io.d3d.get_layer_data(data, var, layer, time_index) + layer_compare = 2 + time_index_compare = 4 + layer_data_expected = river.io.d3d.get_layer_data( + data, var, layer_compare, time_index_compare + ) + + assert_array_almost_equal(layer_data.x, layer_data_expected.x, decimal=2) + assert_array_almost_equal(layer_data.y, layer_data_expected.y, decimal=2) + assert_array_almost_equal(layer_data.v, layer_data_expected.v, decimal=2) + + def test_create_points_three_points(self): + """ + Test the scenario where all three inputs (x, y, z) are points. + """ + x, y, z = 1, 2, 3 + + expected = pd.DataFrame([[x, y, z]], columns=["x", "y", "waterdepth"]) + + points = river.io.d3d.create_points(x, y, z) + assert_array_almost_equal(points.values, expected.values, decimal=2) + + def test_create_points_invalid_input(self): + """ + Test scenarios where invalid inputs are provided to the function. + """ + with self.assertRaises(TypeError): + river.io.d3d.create_points("invalid", 2, 3) + + def test_create_points_two_arrays_one_point(self): + """ + Test with two arrays and one point. + """ + result = river.io.d3d.create_points(np.array([1, 2]), np.array([3]), 4) + expected = pd.DataFrame({"x": [1, 2], "y": [3, 3], "waterdepth": [4, 4]}) + pd.testing.assert_frame_equal( + result, + expected, + check_dtype=False, + check_names=False, + check_index_type=False, + ) + + def test_create_points_user_made_two_arrays_one_point(self): + """ + Test the scenario where all three inputs (x, y, z) are created from + points. + """ + x, y, z = np.linspace(1, 3, num=3), np.linspace(1, 3, num=3), 1 + + # Adjust the order of the expected values + expected_data = [ + [i, j, 1] for j in y for i in x + ] # Notice the swapped loop order + expected = pd.DataFrame(expected_data, columns=["x", "y", "waterdepth"]) + + points = river.io.d3d.create_points(x, y, z) + assert_array_almost_equal(points.values, expected.values, decimal=2) + + def test_create_points_mismatched_array_lengths(self): + """ + Test the scenario where x and y are arrays of different lengths. + """ + with self.assertRaises(ValueError): + river.io.d3d.create_points( + np.array([1, 2, 3]), np.array([1, 2]), np.array([3, 4]) + ) + + def test_create_pointsempty_arrays(self): + """ + Test the scenario where provided arrays are empty. + """ + with self.assertRaises(ValueError): + river.io.d3d.create_points([], [], []) + + def test_create_points_mixed_data_types(self): + """ + Test a combination of np.ndarray, pd.Series, and xr.DataArray. + """ + x = np.array([1, 2]) + y = pd.Series([3, 4]) + z = xr.DataArray([5, 6]) + result = river.io.d3d.create_points(x, y, z) + expected = pd.DataFrame( + {"x": [1, 2, 1, 2], "y": [3, 4, 3, 4], "waterdepth": [5, 5, 6, 6]} + ) + + pd.testing.assert_frame_equal( + result, + expected, + check_dtype=False, + check_names=False, + check_index_type=False, + ) + + def test_create_points_array_like_inputs(self): + """ + Test array-like inputs such as lists. + """ + result = river.io.d3d.create_points([1, 2], [3, 4], [5, 6]) + expected = pd.DataFrame( + {"x": [1, 2, 1, 2], "y": [3, 4, 3, 4], "waterdepth": [5, 5, 6, 6]} + ) + + pd.testing.assert_frame_equal( + result, + expected, + check_dtype=False, + check_names=False, + check_index_type=False, + ) + + def test_variable_interpolation(self): + data = self.d3d_flume_data + variables = ["ucx", "turkin1"] + transformes_data = river.io.d3d.variable_interpolation( + data, variables, points="faces", edges="nearest" + ) + self.assertEqual( + np.size(transformes_data["ucx"]), np.size(transformes_data["turkin1"]) + ) + transformes_data = river.io.d3d.variable_interpolation( + data, variables, points="cells", edges="nearest" + ) + self.assertEqual( + np.size(transformes_data["ucx"]), np.size(transformes_data["turkin1"]) + ) + x = np.linspace(1, 3, num=3) + y = np.linspace(1, 3, num=3) + waterdepth = 1 + points = river.io.d3d.create_points(x, y, waterdepth) + transformes_data = river.io.d3d.variable_interpolation( + data, variables, points=points + ) + self.assertEqual( + np.size(transformes_data["ucx"]), np.size(transformes_data["turkin1"]) + ) + + def test_get_all_data_points(self): + data = self.d3d_flume_data + variable = "ucx" + time_step = 3 + output = river.io.d3d.get_all_data_points(data, variable, time_step) + size_output = np.size(output) + time_step_compair = 4 + output_expected = river.io.d3d.get_all_data_points( + data, variable, time_step_compair + ) + size_output_expected = np.size(output_expected) + self.assertEqual(size_output, size_output_expected) + + def test_unorm(self): + x = np.linspace(1, 3, num=3) + y = np.linspace(1, 3, num=3) + z = np.linspace(1, 3, num=3) + unorm = river.io.d3d.unorm(x, y, z) + unorm_expected = [ + np.sqrt(1**2 + 1**2 + 1**2), + np.sqrt(2**2 + 2**2 + 2**2), + np.sqrt(3**2 + 3**2 + 3**2), + ] + assert_array_almost_equal(unorm, unorm_expected, decimal=2) + + def test_turbulent_intensity(self): + data = self.d3d_flume_data + time_index = -1 + x_test = np.linspace(1, 17, num=10) + y_test = np.linspace(3, 3, num=10) + waterdepth_test = np.linspace(1, 1, num=10) + + test_points = np.array( + [ + [x, y, waterdepth] + for x, y, waterdepth in zip(x_test, y_test, waterdepth_test) + ] + ) + points = pd.DataFrame(test_points, columns=["x", "y", "waterdepth"]) + + TI = river.io.d3d.turbulent_intensity(data, points, time_index) + + TI_vars = ["turkin1", "ucx", "ucy", "ucz"] + TI_data_raw = {} + for var in TI_vars: + # get all data + var_data_df = river.io.d3d.get_all_data_points(data, var, time_index) + TI_data_raw[var] = var_data_df + TI_data = points.copy(deep=True) + + for var in TI_vars: + TI_data[var] = interp.griddata( + TI_data_raw[var][["x", "y", "waterdepth"]], + TI_data_raw[var][var], + points[["x", "y", "waterdepth"]], + ) + idx = np.where(np.isnan(TI_data[var])) + + if len(idx[0]): + for i in idx[0]: + TI_data[var][i] = interp.griddata( + TI_data_raw[var][["x", "y", "waterdepth"]], + TI_data_raw[var][var], + [points["x"][i], points["y"][i], points["waterdepth"][i]], + method="nearest", + ) + + u_mag = river.io.d3d.unorm(TI_data["ucx"], TI_data["ucy"], TI_data["ucz"]) + turbulent_intensity_expected = ( + np.sqrt(2 / 3 * TI_data["turkin1"]) / u_mag + ) * 100 + + assert_array_almost_equal( + TI.turbulent_intensity, turbulent_intensity_expected, decimal=2 + ) + + TI = river.io.d3d.turbulent_intensity(data, points="faces") + TI_size = np.size(TI["turbulent_intensity"]) + turkin1 = river.io.d3d.get_all_data_points(data, "turkin1", time_index) + turkin1_size = np.size(turkin1["turkin1"]) + self.assertEqual(TI_size, turkin1_size) + + TI = river.io.d3d.turbulent_intensity(data, points="cells") + TI_size = np.size(TI["turbulent_intensity"]) + ucx = river.io.d3d.get_all_data_points(data, "ucx", time_index) + ucx_size = np.size(ucx["ucx"]) + self.assertEqual(TI_size, ucx_size) + + +if __name__ == "__main__": + unittest.main() diff --git a/mhkit/tests/river/test_io_usgs.py b/mhkit/tests/river/test_io_usgs.py new file mode 100644 index 000000000..b422bee2c --- /dev/null +++ b/mhkit/tests/river/test_io_usgs.py @@ -0,0 +1,66 @@ +from os.path import abspath, dirname, join, isfile, normpath, relpath +import mhkit.river as river +import pandas as pd +import unittest +import os + + +testdir = dirname(abspath(__file__)) +plotdir = join(testdir, "plots") +isdir = os.path.isdir(plotdir) +if not isdir: + os.mkdir(plotdir) +datadir = normpath(join(testdir, "..", "..", "..", "examples", "data", "river")) + + +class TestIO(unittest.TestCase): + @classmethod + def setUpClass(self): + pass + + @classmethod + def tearDownClass(self): + pass + + def test_load_usgs_data_instantaneous(self): + file_name = join(datadir, "USGS_08313000_Jan2019_instantaneous.json") + data = river.io.usgs.read_usgs_file(file_name) + + self.assertEqual(data.columns, ["Discharge, cubic feet per second"]) + self.assertEqual(data.shape, (2972, 1)) # 4 data points are missing + + def test_load_usgs_data_daily(self): + file_name = join(datadir, "USGS_08313000_Jan2019_daily.json") + data = river.io.usgs.read_usgs_file(file_name) + + expected_index = pd.date_range("2019-01-01", "2019-01-31", freq="D") + self.assertEqual(data.columns, ["Discharge, cubic feet per second"]) + self.assertEqual((data.index == expected_index.tz_localize("UTC")).all(), True) + self.assertEqual(data.shape, (31, 1)) + + def test_request_usgs_data_daily(self): + data = river.io.usgs.request_usgs_data( + station="15515500", + parameter="00060", + start_date="2009-08-01", + end_date="2009-08-10", + data_type="Daily", + ) + self.assertEqual(data.columns, ["Discharge, cubic feet per second"]) + self.assertEqual(data.shape, (10, 1)) + + def test_request_usgs_data_instant(self): + data = river.io.usgs.request_usgs_data( + station="15515500", + parameter="00060", + start_date="2009-08-01", + end_date="2009-08-10", + data_type="Instantaneous", + ) + self.assertEqual(data.columns, ["Discharge, cubic feet per second"]) + # Every 15 minutes or 4 times per hour + self.assertEqual(data.shape, (10 * 24 * 4, 1)) + + +if __name__ == "__main__": + unittest.main() diff --git a/mhkit/tests/river/test_performance.py b/mhkit/tests/river/test_performance.py index d1ef596a0..34c1d6147 100644 --- a/mhkit/tests/river/test_performance.py +++ b/mhkit/tests/river/test_performance.py @@ -12,10 +12,11 @@ testdir = dirname(abspath(__file__)) -plotdir = join(testdir, 'plots') +plotdir = join(testdir, "plots") isdir = os.path.isdir(plotdir) -if not isdir: os.mkdir(plotdir) -datadir = normpath(join(testdir,'..','..','..','examples','data','river')) +if not isdir: + os.mkdir(plotdir) +datadir = normpath(join(testdir, "..", "..", "..", "examples", "data", "river")) class TestPerformance(unittest.TestCase): @@ -24,26 +25,26 @@ def setUpClass(self): self.diameter = 1 self.height = 2 self.width = 3 - self.diameters = [1,2,3,4] + self.diameters = [1, 2, 3, 4] @classmethod def tearDownClass(self): pass - + def test_circular(self): - eq, ca = river.performance.circular(self.diameter) + eq, ca = river.performance.circular(self.diameter) self.assertEqual(eq, self.diameter) - self.assertEqual(ca, 0.25*np.pi*self.diameter**2.) + self.assertEqual(ca, 0.25 * np.pi * self.diameter**2.0) def test_ducted(self): - eq, ca =river.performance.ducted(self.diameter) + eq, ca = river.performance.ducted(self.diameter) self.assertEqual(eq, self.diameter) - self.assertEqual(ca, 0.25*np.pi*self.diameter**2.) - + self.assertEqual(ca, 0.25 * np.pi * self.diameter**2.0) + def test_rectangular(self): eq, ca = river.performance.rectangular(self.height, self.width) self.assertAlmostEqual(eq, 2.76, places=2) - self.assertAlmostEqual(ca, self.height*self.width, places=2) + self.assertAlmostEqual(ca, self.height * self.width, places=2) def test_multiple_circular(self): eq, ca = river.performance.multiple_circular(self.diameters) @@ -51,30 +52,33 @@ def test_multiple_circular(self): self.assertAlmostEqual(ca, 23.56, places=2) def test_tip_speed_ratio(self): - rotor_speed = [15,16,17,18] # create array of rotor speeds - rotor_diameter = 77 # diameter of rotor for GE 1.5 - inflow_speed = [13,13,13,13] # array of wind speeds - TSR_answer = [4.7,5.0,5.3,5.6] - - TSR = river.performance.tip_speed_ratio(np.asarray(rotor_speed)/60,rotor_diameter,inflow_speed) + rotor_speed = [15, 16, 17, 18] # create array of rotor speeds + rotor_diameter = 77 # diameter of rotor for GE 1.5 + inflow_speed = [13, 13, 13, 13] # array of wind speeds + TSR_answer = [4.7, 5.0, 5.3, 5.6] - for i,j in zip(TSR,TSR_answer): - self.assertAlmostEqual(i,j,delta=0.05) + TSR = river.performance.tip_speed_ratio( + np.asarray(rotor_speed) / 60, rotor_diameter, inflow_speed + ) + + for i, j in zip(TSR, TSR_answer): + self.assertAlmostEqual(i, j, delta=0.05) def test_power_coefficient(self): # data obtained from power performance report of wind turbine - inflow_speed = [4,6,8,10,12,14,16,18,20] - power_out = np.asarray([59,304,742,1200,1400,1482,1497,1497,1511]) + inflow_speed = [4, 6, 8, 10, 12, 14, 16, 18, 20] + power_out = np.asarray([59, 304, 742, 1200, 1400, 1482, 1497, 1497, 1511]) capture_area = 4656.63 rho = 1.225 - Cp_answer = [0.320,0.493,0.508,0.421,0.284,0.189,0.128,0.090,0.066] - - Cp = river.performance.power_coefficient(power_out*1000,inflow_speed,capture_area,rho) + Cp_answer = [0.320, 0.493, 0.508, 0.421, 0.284, 0.189, 0.128, 0.090, 0.066] + + Cp = river.performance.power_coefficient( + power_out * 1000, inflow_speed, capture_area, rho + ) - for i,j in zip(Cp,Cp_answer): - self.assertAlmostEqual(i,j,places=2) + for i, j in zip(Cp, Cp_answer): + self.assertAlmostEqual(i, j, places=2) - -if __name__ == '__main__': - unittest.main() +if __name__ == "__main__": + unittest.main() diff --git a/mhkit/tests/river/test_resource.py b/mhkit/tests/river/test_resource.py index 5ef4a402a..8b3a73023 100644 --- a/mhkit/tests/river/test_resource.py +++ b/mhkit/tests/river/test_resource.py @@ -1,195 +1,355 @@ -from os.path import abspath, dirname, join, isfile, normpath, relpath -from numpy.testing import assert_array_almost_equal -from pandas.testing import assert_frame_equal -import scipy.interpolate as interp +from os.path import abspath, dirname, join, isfile, normpath import matplotlib.pylab as plt import mhkit.river as river import pandas as pd +import xarray as xr import numpy as np import unittest -import netCDF4 import os testdir = dirname(abspath(__file__)) -plotdir = join(testdir, 'plots') +plotdir = join(testdir, "plots") isdir = os.path.isdir(plotdir) -if not isdir: os.mkdir(plotdir) -datadir = normpath(join(testdir,'..','..','..','examples','data','river')) +if not isdir: + os.mkdir(plotdir) +datadir = normpath(join(testdir, "..", "..", "..", "examples", "data", "river")) class TestResource(unittest.TestCase): - @classmethod def setUpClass(self): - self.data = pd.read_csv(join(datadir, 'tanana_discharge_data.csv'), index_col=0, - parse_dates=True) - self.data.columns = ['Q'] - - self.results = pd.read_csv(join(datadir, 'tanana_test_results.csv'), index_col=0, - parse_dates=True) + self.data = pd.read_csv( + join(datadir, "tanana_discharge_data.csv"), index_col=0, parse_dates=True + ) + self.data.columns = ["Q"] + + self.results = pd.read_csv( + join(datadir, "tanana_test_results.csv"), index_col=0, parse_dates=True + ) @classmethod def tearDownClass(self): pass - def test_Froude_number(self): v = 2 h = 5 Fr = river.resource.Froude_number(v, h) self.assertAlmostEqual(Fr, 0.286, places=3) - + + def test_froude_number_v_type_error(self): + v = "invalid_type" # String instead of int/float + h = 5 + with self.assertRaises(TypeError): + river.resource.Froude_number(v, h) + + def test_froude_number_h_type_error(self): + v = 2 + h = "invalid_type" # String instead of int/float + with self.assertRaises(TypeError): + river.resource.Froude_number(v, h) + + def test_froude_number_g_type_error(self): + v = 2 + h = 5 + g = "invalid_type" # String instead of int/float + with self.assertRaises(TypeError): + river.resource.Froude_number(v, h, g) def test_exceedance_probability(self): # Create arbitrary discharge between 0 and 8(N=9) Q = pd.Series(np.arange(9)) # Rank order for non-repeating elements simply adds 1 to each element - #if N=9, max F = 100((max(Q)+1)/10) = 90% - #if N=9, min F = 100((min(Q)+1)/10) = 10% + # if N=9, max F = 100((max(Q)+1)/10) = 90% + # if N=9, min F = 100((min(Q)+1)/10) = 10% + f = river.resource.exceedance_probability(Q) + self.assertEqual(f.min().values, 10.0) + self.assertEqual(f.max().values, 90.0) + + def test_exceedance_probability_xarray(self): + # Create arbitrary discharge between 0 and 8(N=9) + Q = xr.DataArray( + data=np.arange(9), dims="index", coords={"index": np.arange(9)} + ) + # if N=9, max F = 100((max(Q)+1)/10) = 90% + # if N=9, min F = 100((min(Q)+1)/10) = 10% f = river.resource.exceedance_probability(Q) - self.assertEqual(f.min().values , 10. ) - self.assertEqual(f.max().values , 90. ) + self.assertEqual(f.min().values, 10.0) + self.assertEqual(f.max().values, 90.0) + def test_exceedance_probability_type_error(self): + D = "invalid_type" # String instead of pd.Series or pd.DataFrame + with self.assertRaises(TypeError): + river.resource.exceedance_probability(D) def test_polynomial_fit(self): # Calculate a first order polynomial on an x=y line - p, r2 = river.resource.polynomial_fit(np.arange(8), np.arange(8),1) + p, r2 = river.resource.polynomial_fit(np.arange(8), np.arange(8), 1) # intercept should be 0 - self.assertAlmostEqual(p[0], 0.0, places=2 ) + self.assertAlmostEqual(p[0], 0.0, places=2) # slope should be 1 - self.assertAlmostEqual(p[1], 1.0, places=2 ) + self.assertAlmostEqual(p[1], 1.0, places=2) # r-squared should be perfect - self.assertAlmostEqual(r2, 1.0, places=2 ) + self.assertAlmostEqual(r2, 1.0, places=2) + def test_polynomial_fit_x_type_error(self): + x = "invalid_type" # String instead of numpy array + y = np.array([1, 2, 3]) + n = 1 + with self.assertRaises(TypeError): + river.resource.polynomial_fit(x, y, n) + + def test_polynomial_fit_y_type_error(self): + x = np.array([1, 2, 3]) + y = "invalid_type" # String instead of numpy array + n = 1 + with self.assertRaises(TypeError): + river.resource.polynomial_fit(x, y, n) + + def test_polynomial_fit_n_type_error(self): + x = np.array([1, 2, 3]) + y = np.array([1, 2, 3]) + n = "invalid_type" # String instead of int + with self.assertRaises(TypeError): + river.resource.polynomial_fit(x, y, n) def test_discharge_to_velocity(self): # Create arbitrary discharge between 0 and 8(N=9) Q = pd.Series(np.arange(9)) # Calculate a first order polynomial on an DV_Curve x=y line 10 times greater than the Q values - p, r2 = river.resource.polynomial_fit(np.arange(9), 10*np.arange(9),1) - # Becuase the polynomial line fits perfect we should expect the V to equal 10*Q + p, r2 = river.resource.polynomial_fit(np.arange(9), 10 * np.arange(9), 1) + # Because the polynomial line fits perfect we should expect the V to equal 10*Q V = river.resource.discharge_to_velocity(Q, p) - self.assertAlmostEqual(np.sum(10*Q - V['V']), 0.00, places=2 ) - + self.assertAlmostEqual(np.sum(10 * Q - V["V"]), 0.00, places=2) + + def test_discharge_to_velocity_xarray(self): + # Create arbitrary discharge between 0 and 8(N=9) + Q = xr.DataArray( + data=np.arange(9), dims="index", coords={"index": np.arange(9)} + ) + # Calculate a first order polynomial on an DV_Curve x=y line 10 times greater than the Q values + p, r2 = river.resource.polynomial_fit(np.arange(9), 10 * np.arange(9), 1) + # Because the polynomial line fits perfect we should expect the V to equal 10*Q + V = river.resource.discharge_to_velocity(Q, p, to_pandas=False) + self.assertAlmostEqual(np.sum(10 * Q - V["V"]).values, 0.00, places=2) + + def test_discharge_to_velocity_D_type_error(self): + D = "invalid_type" # String instead of pd.Series or pd.DataFrame + polynomial_coefficients = np.poly1d([1, 2]) + with self.assertRaises(TypeError): + river.resource.discharge_to_velocity(D, polynomial_coefficients) + + def test_discharge_to_velocity_polynomial_coefficients_type_error(self): + D = pd.Series([1, 2, 3]) + polynomial_coefficients = "invalid_type" # String instead of np.poly1d + with self.assertRaises(TypeError): + river.resource.discharge_to_velocity(D, polynomial_coefficients) def test_velocity_to_power(self): # Calculate a first order polynomial on an DV_Curve x=y line 10 times greater than the Q values - p, r2 = river.resource.polynomial_fit(np.arange(9), 10*np.arange(9),1) - # Becuase the polynomial line fits perfect we should expect the V to equal 10*Q + p, r2 = river.resource.polynomial_fit(np.arange(9), 10 * np.arange(9), 1) + # Because the polynomial line fits perfect we should expect the V to equal 10*Q V = river.resource.discharge_to_velocity(pd.Series(np.arange(9)), p) # Calculate a first order polynomial on an VP_Curve x=y line 10 times greater than the V values - p2, r22 = river.resource.polynomial_fit(np.arange(9), 10*np.arange(9),1) + p2, r22 = river.resource.polynomial_fit(np.arange(9), 10 * np.arange(9), 1) + # Set cut in/out to exclude 1 bin on either end of V range + cut_in = V["V"][1] + cut_out = V["V"].iloc[-2] + # Power should be 10x greater and exclude the ends of V + P = river.resource.velocity_to_power(V["V"], p2, cut_in, cut_out) + # Cut in power zero + self.assertAlmostEqual(P["P"][0], 0.00, places=2) + # Cut out power zero + self.assertAlmostEqual(P["P"].iloc[-1], 0.00, places=2) + # Middle 10x greater than velocity + self.assertAlmostEqual((P["P"][1:-1] - 10 * V["V"][1:-1]).sum(), 0.00, places=2) + + def test_velocity_to_power_xarray(self): + # Calculate a first order polynomial on an DV_Curve x=y line 10 times greater than the Q values + p, r2 = river.resource.polynomial_fit(np.arange(9), 10 * np.arange(9), 1) + # Because the polynomial line fits perfect we should expect the V to equal 10*Q + V = river.resource.discharge_to_velocity( + pd.Series(np.arange(9)), p, dimension="", to_pandas=False + ) + # Calculate a first order polynomial on an VP_Curve x=y line 10 times greater than the V values + p2, r22 = river.resource.polynomial_fit(np.arange(9), 10 * np.arange(9), 1) # Set cut in/out to exclude 1 bin on either end of V range - cut_in = V['V'][1] - cut_out = V['V'].iloc[-2] + cut_in = V["V"].values[1] + cut_out = V["V"].values[-2] # Power should be 10x greater and exclude the ends of V - P = river.resource.velocity_to_power(V['V'], p2, cut_in, cut_out) - #Cut in power zero - self.assertAlmostEqual(P['P'][0], 0.00, places=2 ) - #Cut out power zero - self.assertAlmostEqual(P['P'].iloc[-1], 0.00, places=2 ) + P = river.resource.velocity_to_power( + V["V"], p2, cut_in, cut_out, to_pandas=False + ) + # Cut in power zero + self.assertAlmostEqual(P["P"][0], 0.00, places=2) + # Cut out power zero + self.assertAlmostEqual(P["P"][-1], 0.00, places=2) # Middle 10x greater than velocity - self.assertAlmostEqual((P['P'][1:-1] - 10*V['V'][1:-1] ).sum(), 0.00, places=2 ) + self.assertAlmostEqual( + (P["P"][1:-1] - 10 * V["V"][1:-1]).sum().values, 0.00, places=2 + ) + + def test_velocity_to_power_V_type_error(self): + V = "invalid_type" # String instead of pd.Series or pd.DataFrame + polynomial_coefficients = np.poly1d([1, 2]) + cut_in = 1 + cut_out = 5 + with self.assertRaises(TypeError): + river.resource.velocity_to_power( + V, polynomial_coefficients, cut_in, cut_out + ) + + def test_velocity_to_power_polynomial_coefficients_type_error(self): + V = pd.Series([1, 2, 3]) + polynomial_coefficients = "invalid_type" # String instead of np.poly1d + cut_in = 1 + cut_out = 5 + with self.assertRaises(TypeError): + river.resource.velocity_to_power( + V, polynomial_coefficients, cut_in, cut_out + ) + def test_velocity_to_power_cut_in_type_error(self): + V = pd.Series([1, 2, 3]) + polynomial_coefficients = np.poly1d([1, 2]) + cut_in = "invalid_type" # String instead of int/float + cut_out = 5 + with self.assertRaises(TypeError): + river.resource.velocity_to_power( + V, polynomial_coefficients, cut_in, cut_out + ) + + def test_velocity_to_power_cut_out_type_error(self): + V = pd.Series([1, 2, 3]) + polynomial_coefficients = np.poly1d([1, 2]) + cut_in = 1 + cut_out = "invalid_type" # String instead of int/float + with self.assertRaises(TypeError): + river.resource.velocity_to_power( + V, polynomial_coefficients, cut_in, cut_out + ) def test_energy_produced(self): - # If power is always X then energy produced with be x*seconds - X=1 - seconds=1 - P = pd.Series(X*np.ones(10) ) + # If power is always X then energy produced with be x*seconds + X = 1 + seconds = 1 + P = pd.Series(X * np.ones(10)) EP = river.resource.energy_produced(P, seconds) - self.assertAlmostEqual(EP, X*seconds, places=1 ) + self.assertAlmostEqual(EP, X * seconds, places=1) # for a normal distribution of Power EP = mean *seconds - mu=5 - sigma=1 + mu = 5 + sigma = 1 power_dist = pd.Series(np.random.normal(mu, sigma, 10000)) EP2 = river.resource.energy_produced(power_dist, seconds) -# import ipdb; ipdb.set_trace() - self.assertAlmostEqual(EP2, mu*seconds, places=1 ) + self.assertAlmostEqual(EP2, mu * seconds, places=1) + + def test_energy_produced_xarray(self): + # If power is always X then energy produced with be x*seconds + X = 1 + seconds = 1 + P = xr.DataArray(data=X * np.ones(10)) + EP = river.resource.energy_produced(P, seconds) + self.assertAlmostEqual(EP, X * seconds, places=1) + + # for a normal distribution of Power EP = mean *seconds + mu = 5 + sigma = 1 + power_dist = xr.DataArray(data=np.random.normal(mu, sigma, 10000)) + EP2 = river.resource.energy_produced(power_dist, seconds) + self.assertAlmostEqual(EP2, mu * seconds, places=1) + def test_energy_produced_P_type_error(self): + P = "invalid_type" # String instead of pd.Series or pd.DataFrame + seconds = 3600 + with self.assertRaises(TypeError): + river.resource.energy_produced(P, seconds) + + def test_energy_produced_seconds_type_error(self): + P = pd.Series([100, 200, 300]) + seconds = "invalid_type" # String instead of int/float + with self.assertRaises(TypeError): + river.resource.energy_produced(P, seconds) def test_plot_flow_duration_curve(self): - filename = abspath(join(plotdir, 'river_plot_flow_duration_curve.png')) + filename = abspath(join(plotdir, "river_plot_flow_duration_curve.png")) if isfile(filename): os.remove(filename) - + f = river.resource.exceedance_probability(self.data.Q) plt.figure() - river.graphics.plot_flow_duration_curve(self.data['Q'], f['F']) - plt.savefig(filename, format='png') + river.graphics.plot_flow_duration_curve(self.data["Q"], f["F"]) + plt.savefig(filename, format="png") plt.close() - + self.assertTrue(isfile(filename)) - def test_plot_power_duration_curve(self): - filename = abspath(join(plotdir, 'river_plot_power_duration_curve.png')) + filename = abspath(join(plotdir, "river_plot_power_duration_curve.png")) if isfile(filename): os.remove(filename) - + f = river.resource.exceedance_probability(self.data.Q) plt.figure() - river.graphics.plot_flow_duration_curve(self.results['P_control'], f['F']) - plt.savefig(filename, format='png') + river.graphics.plot_flow_duration_curve(self.results["P_control"], f["F"]) + plt.savefig(filename, format="png") plt.close() - + self.assertTrue(isfile(filename)) - def test_plot_velocity_duration_curve(self): - filename = abspath(join(plotdir, 'river_plot_velocity_duration_curve.png')) + filename = abspath(join(plotdir, "river_plot_velocity_duration_curve.png")) if isfile(filename): os.remove(filename) - + f = river.resource.exceedance_probability(self.data.Q) plt.figure() - river.graphics.plot_velocity_duration_curve(self.results['V_control'], f['F']) - plt.savefig(filename, format='png') + river.graphics.plot_velocity_duration_curve(self.results["V_control"], f["F"]) + plt.savefig(filename, format="png") plt.close() - + self.assertTrue(isfile(filename)) - def test_plot_discharge_timeseries(self): - filename = abspath(join(plotdir, 'river_plot_discharge_timeseries.png')) - if isfile(filename): os.remove(filename) - + filename = abspath(join(plotdir, "river_plot_discharge_timeseries.png")) + if isfile(filename): + os.remove(filename) + plt.figure() - river.graphics.plot_discharge_timeseries(self.data['Q']) - plt.savefig(filename, format='png') + river.graphics.plot_discharge_timeseries(self.data["Q"]) + plt.savefig(filename, format="png") plt.close() - + self.assertTrue(isfile(filename)) - def test_plot_discharge_vs_velocity(self): - filename = abspath(join(plotdir, 'river_plot_discharge_vs_velocity.png')) + filename = abspath(join(plotdir, "river_plot_discharge_vs_velocity.png")) if isfile(filename): os.remove(filename) - + plt.figure() - river.graphics.plot_discharge_vs_velocity(self.data['Q'], self.results['V_control']) - plt.savefig(filename, format='png') + river.graphics.plot_discharge_vs_velocity( + self.data["Q"], self.results["V_control"] + ) + plt.savefig(filename, format="png") plt.close() - + self.assertTrue(isfile(filename)) - def test_plot_velocity_vs_power(self): - filename = abspath(join(plotdir, 'river_plot_velocity_vs_power.png')) + filename = abspath(join(plotdir, "river_plot_velocity_vs_power.png")) if isfile(filename): os.remove(filename) - + plt.figure() - river.graphics.plot_velocity_vs_power(self.results['V_control'], self.results['P_control']) - plt.savefig(filename, format='png') + river.graphics.plot_velocity_vs_power( + self.results["V_control"], self.results["P_control"] + ) + plt.savefig(filename, format="png") plt.close() - + self.assertTrue(isfile(filename)) - - -if __name__ == '__main__': - unittest.main() +if __name__ == "__main__": + unittest.main() diff --git a/mhkit/tests/tidal/test_io.py b/mhkit/tests/tidal/test_io.py index fa09db656..6993be815 100644 --- a/mhkit/tests/tidal/test_io.py +++ b/mhkit/tests/tidal/test_io.py @@ -12,6 +12,7 @@ - Requesting NOAA data with invalid date format - Requesting NOAA data with the end date before the start date """ + from os.path import abspath, dirname, join, normpath, relpath import unittest import os @@ -22,15 +23,14 @@ testdir = dirname(abspath(__file__)) -plotdir = join(testdir, 'plots') +plotdir = join(testdir, "plots") isdir = os.path.isdir(plotdir) if not isdir: os.mkdir(plotdir) -datadir = normpath(join(testdir, relpath('../../../examples/data/tidal'))) +datadir = normpath(join(testdir, relpath("../../../examples/data/tidal"))) class TestIO(unittest.TestCase): - @classmethod def setUpClass(self): pass @@ -41,46 +41,79 @@ def tearDownClass(self): def test_load_noaa_data(self): """ - Test that the read_noaa_json function reads data from a + Test that the read_noaa_json function reads data from a JSON file and returns a DataFrame and metadata with the correct shape and columns. """ - file_name = join(datadir, 's08010.json') + file_name = join(datadir, "s08010.json") data, metadata = tidal.io.noaa.read_noaa_json(file_name) - self.assertTrue(np.all(data.columns == ['s', 'd', 'b'])) + self.assertTrue(np.all(data.columns == ["s", "d", "b"])) self.assertEqual(data.shape, (18890, 3)) + self.assertEqual(metadata["id"], "s08010") + + def test_load_noaa_data_xarray(self): + """ + Test that the read_noaa_json function reads data from a + JSON file and returns a DataFrame and metadata with the + correct shape and columns. + """ + file_name = join(datadir, "s08010.json") + data = tidal.io.noaa.read_noaa_json(file_name, to_pandas=False) + self.assertTrue(np.all(list(data.variables) == ["index", "s", "d", "b"])) + self.assertEqual(len(data["index"]), 18890) + self.assertEqual(data.attrs["id"], "s08010") def test_request_noaa_data_basic(self): """ Test the request_noaa_data function with basic input parameters - and verify that the returned DataFrame and metadata have the + and verify that the returned DataFrame and metadata have the correct shape and columns. """ data, metadata = tidal.io.noaa.request_noaa_data( - station='s08010', - parameter='currents', - start_date='20180101', - end_date='20180102', + station="s08010", + parameter="currents", + start_date="20180101", + end_date="20180102", proxy=None, - write_json=None + write_json=None, ) - self.assertTrue(np.all(data.columns == ['s', 'd', 'b'])) + self.assertTrue(np.all(data.columns == ["s", "d", "b"])) self.assertEqual(data.shape, (183, 3)) + self.assertEqual(metadata["id"], "s08010") + + def test_request_noaa_data_basic_xarray(self): + """ + Test the request_noaa_data function with basic input parameters + and verify that the returned DataFrame and metadata have the + correct shape and columns. + """ + data = tidal.io.noaa.request_noaa_data( + station="s08010", + parameter="currents", + start_date="20180101", + end_date="20180102", + proxy=None, + write_json=None, + to_pandas=False, + ) + self.assertTrue(np.all(list(data.variables) == ["index", "s", "d", "b"])) + self.assertEqual(len(data["index"]), 183) + self.assertEqual(data.attrs["id"], "s08010") def test_request_noaa_data_write_json(self): """ Test the request_noaa_data function with the write_json parameter - and verify that the returned JSON file has the correct structure + and verify that the returned JSON file has the correct structure and can be loaded back into a dictionary. """ - test_json_file = 'test_noaa_data.json' - data, metadata = tidal.io.noaa.request_noaa_data( - station='s08010', - parameter='currents', - start_date='20180101', - end_date='20180102', + test_json_file = "test_noaa_data.json" + _, _ = tidal.io.noaa.request_noaa_data( + station="s08010", + parameter="currents", + start_date="20180101", + end_date="20180102", proxy=None, - write_json=test_json_file + write_json=test_json_file, ) self.assertTrue(os.path.isfile(test_json_file)) @@ -89,10 +122,10 @@ def test_request_noaa_data_write_json(self): os.remove(test_json_file) # Clean up the test JSON file - self.assertIn('metadata', loaded_data) - self.assertIn('s', loaded_data) - self.assertIn('d', loaded_data) - self.assertIn('b', loaded_data) + self.assertIn("metadata", loaded_data) + self.assertIn("s", loaded_data["columns"]) + self.assertIn("d", loaded_data["columns"]) + self.assertIn("b", loaded_data["columns"]) def test_request_noaa_data_invalid_dates(self): """ @@ -101,29 +134,29 @@ def test_request_noaa_data_invalid_dates(self): """ with self.assertRaises(ValueError): tidal.io.noaa.request_noaa_data( - station='s08010', - parameter='currents', - start_date='2018-01-01', # Invalid date format - end_date='20180102', + station="s08010", + parameter="currents", + start_date="2018-01-01", # Invalid date format + end_date="20180102", proxy=None, - write_json=None + write_json=None, ) def test_request_noaa_data_end_before_start(self): """ - Test the request_noaa_data function with the end date before + Test the request_noaa_data function with the end date before the start date and verify that it raises a ValueError. """ with self.assertRaises(ValueError): tidal.io.noaa.request_noaa_data( - station='s08010', - parameter='currents', - start_date='20180102', - end_date='20180101', # End date before start date + station="s08010", + parameter="currents", + start_date="20180102", + end_date="20180101", # End date before start date proxy=None, - write_json=None + write_json=None, ) -if __name__ == '__main__': +if __name__ == "__main__": unittest.main() diff --git a/mhkit/tests/tidal/test_performance.py b/mhkit/tests/tidal/test_performance.py index b06984e59..43c13b473 100644 --- a/mhkit/tests/tidal/test_performance.py +++ b/mhkit/tests/tidal/test_performance.py @@ -8,110 +8,205 @@ from mhkit.dolfyn import load testdir = dirname(abspath(__file__)) -plotdir = join(testdir, 'plots') +plotdir = join(testdir, "plots") isdir = os.path.isdir(plotdir) -if not isdir: os.mkdir(plotdir) -datadir = normpath(join(testdir,relpath('../../../examples/data/tidal'))) +if not isdir: + os.mkdir(plotdir) +datadir = normpath(join(testdir, relpath("../../../examples/data/tidal"))) class TestResource(unittest.TestCase): - @classmethod def setUpClass(self): - filename = join(datadir, 'adcp.principal.a1.20200815.nc') + filename = join(datadir, "adcp.principal.a1.20200815.nc") self.ds = load(filename) # Emulate power data - self.power = abs(self.ds['vel'][0,10]**3 * 1e5) + self.power = abs(self.ds["vel"][0, 10] ** 3 * 1e5) @classmethod def tearDownClass(self): pass - def test_power_curve(self,): + def test_power_curve(self): df93_circ = performance.power_curve( power=self.power, - velocity=self.ds['vel'].sel(dir='streamwise'), + velocity=self.ds["vel"].sel(dir="streamwise"), hub_height=4.2, - doppler_cell_size=0.5, - sampling_frequency=1, + doppler_cell_size=0.5, + sampling_frequency=1, window_avg_time=600, - turbine_profile='circular', + turbine_profile="circular", diameter=3, height=None, - width=None) - test_circ = np.array([1.26250990e+00, - 1.09230978e+00, - 1.89122103e+05, - 1.03223668e+04, - 2.04261423e+05, - 1.72095731e+05]) + width=None, + ) + test_circ = np.array( + [ + 1.26250990e00, + 1.09230978e00, + 1.89122103e05, + 1.03223668e04, + 2.04261423e05, + 1.72095731e05, + ] + ) df93_rect = performance.power_curve( power=self.power, - velocity=self.ds['vel'].sel(dir='streamwise'), + velocity=self.ds["vel"].sel(dir="streamwise"), hub_height=4.2, - doppler_cell_size=0.5, - sampling_frequency=1, + doppler_cell_size=0.5, + sampling_frequency=1, window_avg_time=600, - turbine_profile='rectangular', + turbine_profile="rectangular", diameter=None, height=1, - width=3) - test_rect = np.array([1.15032239e+00, - 3.75747621e-01, - 1.73098627e+05, - 3.04090212e+04, - 2.09073742e+05, - 1.27430552e+05]) - + width=3, + ) + test_rect = np.array( + [ + 1.15032239e00, + 3.75747621e-01, + 1.73098627e05, + 3.04090212e04, + 2.09073742e05, + 1.27430552e05, + ] + ) + assert_allclose(df93_circ.values[-2], test_circ, atol=1e-5) assert_allclose(df93_rect.values[-3], test_rect, atol=1e-5) + def test_power_curve_xarray(self): + df93_circ = performance.power_curve( + power=self.power, + velocity=self.ds["vel"].sel(dir="streamwise"), + hub_height=4.2, + doppler_cell_size=0.5, + sampling_frequency=1, + window_avg_time=600, + turbine_profile="circular", + diameter=3, + height=None, + width=None, + to_pandas=False, + ) + test_circ = np.array( + [ + 1.26250990e00, + 1.09230978e00, + 1.89122103e05, + 1.03223668e04, + 2.04261423e05, + 1.72095731e05, + ] + ) + + df93_rect = performance.power_curve( + power=self.power, + velocity=self.ds["vel"].sel(dir="streamwise"), + hub_height=4.2, + doppler_cell_size=0.5, + sampling_frequency=1, + window_avg_time=600, + turbine_profile="rectangular", + diameter=None, + height=1, + width=3, + to_pandas=False, + ) + test_rect = np.array( + [ + 1.15032239e00, + 3.75747621e-01, + 1.73098627e05, + 3.04090212e04, + 2.09073742e05, + 1.27430552e05, + ] + ) + + assert_allclose(df93_circ.isel(U_bins=-2).to_array(), test_circ, atol=1e-5) + assert_allclose(df93_rect.isel(U_bins=-3).to_array(), test_rect, atol=1e-5) + def test_velocity_profiles(self): df94 = performance.velocity_profiles( - velocity=self.ds['vel'].sel(dir='streamwise'), + velocity=self.ds["vel"].sel(dir="streamwise"), hub_height=4.2, water_depth=10, - sampling_frequency=1, + sampling_frequency=1, window_avg_time=600, - function='mean') + function="mean", + ) df95a = performance.velocity_profiles( - velocity=self.ds['vel'].sel(dir='streamwise'), + velocity=self.ds["vel"].sel(dir="streamwise"), hub_height=4.2, water_depth=10, sampling_frequency=1, window_avg_time=600, - function='rms') + function="rms", + ) df95b = performance.velocity_profiles( - velocity=self.ds['vel'].sel(dir='streamwise'), - hub_height=4.2, + velocity=self.ds["vel"].sel(dir="streamwise"), + hub_height=4.2, water_depth=10, - sampling_frequency=1, + sampling_frequency=1, window_avg_time=600, - function='std') - + function="std", + ) + test_df94 = np.array([0.32782955, 0.69326691, 1.00948623]) - test_df95a = np.array([0.3329345 , 0.69936798, 1.01762123]) + test_df95a = np.array([0.3329345, 0.69936798, 1.01762123]) test_df95b = np.array([0.05635571, 0.08671777, 0.12735139]) assert_allclose(df94.values[1], test_df94, atol=1e-5) assert_allclose(df95a.values[1], test_df95a, atol=1e-5) assert_allclose(df95b.values[1], test_df95b, atol=1e-5) - + + def test_velocity_profiles_xarray(self): + df94 = performance.velocity_profiles( + velocity=self.ds["vel"].sel(dir="streamwise"), + hub_height=4.2, + water_depth=10, + sampling_frequency=1, + window_avg_time=600, + function="mean", + to_pandas=False, + ) + + test_df94 = np.array([0.32782955, 0.69326691, 1.00948623]) + + assert_allclose(df94[1], test_df94, atol=1e-5) def test_power_efficiency(self): df97 = performance.device_efficiency( self.power, - velocity=self.ds['vel'].sel(dir='streamwise'), - water_density=self.ds['water_density'], - capture_area=np.pi*1.5**2, + velocity=self.ds["vel"].sel(dir="streamwise"), + water_density=self.ds["water_density"], + capture_area=np.pi * 1.5**2, hub_height=4.2, sampling_frequency=1, - window_avg_time=600) - + window_avg_time=600, + ) + + test_df97 = np.array(24.79197) + assert_allclose(df97.values[-1, -1], test_df97, atol=1e-5) + + def test_power_efficiency_xarray(self): + df97 = performance.device_efficiency( + self.power, + velocity=self.ds["vel"].sel(dir="streamwise"), + water_density=self.ds["water_density"], + capture_area=np.pi * 1.5**2, + hub_height=4.2, + sampling_frequency=1, + window_avg_time=600, + to_pandas=False, + ) + test_df97 = np.array(24.79197) - assert_allclose(df97.values[-1,-1], test_df97, atol=1e-5) + assert_allclose(df97["Efficiency"][-1], test_df97, atol=1e-5) -if __name__ == '__main__': - unittest.main() +if __name__ == "__main__": + unittest.main() diff --git a/mhkit/tests/tidal/test_resource.py b/mhkit/tests/tidal/test_resource.py index a7adc996c..7b5b6ad11 100644 --- a/mhkit/tests/tidal/test_resource.py +++ b/mhkit/tests/tidal/test_resource.py @@ -7,103 +7,108 @@ import mhkit.tidal as tidal testdir = dirname(abspath(__file__)) -plotdir = join(testdir, 'plots') +plotdir = join(testdir, "plots") isdir = os.path.isdir(plotdir) -if not isdir: os.mkdir(plotdir) -datadir = normpath(join(testdir,relpath('../../../examples/data/tidal'))) +if not isdir: + os.mkdir(plotdir) +datadir = normpath(join(testdir, relpath("../../../examples/data/tidal"))) class TestResource(unittest.TestCase): - @classmethod def setUpClass(self): - file_name = join(datadir, 's08010.json') + file_name = join(datadir, "s08010.json") self.data, self.metadata = tidal.io.noaa.read_noaa_json(file_name) - self.data.s = self.data.s / 100. # convert to m/s + self.data.s = self.data.s / 100.0 # convert to m/s self.flood = 171.5 self.ebb = 354.5 - @classmethod def tearDownClass(self): pass - + def test_exceedance_probability(self): - df = pd.DataFrame.from_records( {'vals': np.array([ 1, 2, 3, 4, 5, 6, 7, 8, 9])} ) - df['F'] = tidal.resource.exceedance_probability(df.vals) - self.assertEqual(df['F'].min(), 10) - self.assertEqual(df['F'].max(), 90) - - - def test_principal_flow_directions(self): - width_direction=10 - direction1, direction2 = tidal.resource.principal_flow_directions(self.data.d, width_direction) - self.assertEqual(direction1,172.0) - self.assertEqual(round(direction2,1),round(352.3,1)) - + df = pd.DataFrame.from_records({"vals": np.array([1, 2, 3, 4, 5, 6, 7, 8, 9])}) + df["F"] = tidal.resource.exceedance_probability(df.vals) + self.assertEqual(df["F"].min(), 10) + self.assertEqual(df["F"].max(), 90) + + def test_principal_flow_directions(self): + width_direction = 10 + direction1, direction2 = tidal.resource.principal_flow_directions( + self.data.d, width_direction + ) + self.assertEqual(direction1, 172.0) + self.assertEqual(round(direction2, 1), round(352.3, 1)) + def test_plot_current_timeseries(self): - filename = abspath(join(plotdir, 'tidal_plot_current_timeseries.png')) + filename = abspath(join(plotdir, "tidal_plot_current_timeseries.png")) if isfile(filename): os.remove(filename) - + plt.figure() tidal.graphics.plot_current_timeseries(self.data.d, self.data.s, 172) - plt.savefig(filename, format='png') + plt.savefig(filename, format="png") plt.close() - + self.assertTrue(isfile(filename)) - + def test_plot_joint_probability_distribution(self): - filename = abspath(join(plotdir, 'tidal_plot_joint_probability_distribution.png')) + filename = abspath( + join(plotdir, "tidal_plot_joint_probability_distribution.png") + ) if isfile(filename): os.remove(filename) - + plt.figure() - tidal.graphics.plot_joint_probability_distribution(self.data.d, self.data.s, 1, 0.1) - plt.savefig(f'{filename}') + tidal.graphics.plot_joint_probability_distribution( + self.data.d, self.data.s, 1, 0.1 + ) + plt.savefig(f"{filename}") plt.close() - + self.assertTrue(isfile(filename)) - + def test_plot_rose(self): - filename = abspath(join(plotdir, 'tidal_plot_rose.png')) + filename = abspath(join(plotdir, "tidal_plot_rose.png")) if isfile(filename): os.remove(filename) - + plt.figure() tidal.graphics.plot_rose(self.data.d, self.data.s, 1, 0.1) - plt.savefig(f'{filename}') + plt.savefig(f"{filename}") plt.close() - + self.assertTrue(isfile(filename)) def test_tidal_phase_probability(self): - filename = abspath(join(plotdir, 'tidal_plot_tidal_phase_probability.png')) + filename = abspath(join(plotdir, "tidal_plot_tidal_phase_probability.png")) if isfile(filename): os.remove(filename) - + plt.figure() - tidal.graphics.tidal_phase_probability(self.data.d, self.data.s, - self.flood, self.ebb) - plt.savefig(f'{filename}') + tidal.graphics.tidal_phase_probability( + self.data.d, self.data.s, self.flood, self.ebb + ) + plt.savefig(f"{filename}") plt.close() - + self.assertTrue(isfile(filename)) - + def test_tidal_phase_exceedance(self): - filename = abspath(join(plotdir, 'tidal_plot_tidal_phase_exceedance.png')) + filename = abspath(join(plotdir, "tidal_plot_tidal_phase_exceedance.png")) if isfile(filename): os.remove(filename) - + plt.figure() - tidal.graphics.tidal_phase_exceedance(self.data.d, self.data.s, - self.flood, self.ebb) - plt.savefig(f'{filename}') + tidal.graphics.tidal_phase_exceedance( + self.data.d, self.data.s, self.flood, self.ebb + ) + plt.savefig(f"{filename}") plt.close() - - self.assertTrue(isfile(filename)) + self.assertTrue(isfile(filename)) -if __name__ == '__main__': - unittest.main() +if __name__ == "__main__": + unittest.main() diff --git a/mhkit/tests/utils/test_cache.py b/mhkit/tests/utils/test_cache.py new file mode 100644 index 000000000..14aae0802 --- /dev/null +++ b/mhkit/tests/utils/test_cache.py @@ -0,0 +1,177 @@ +""" +Unit Testing for MHKiT Cache Utilities + +This module provides unit tests for the caching utilities present in the MHKiT library. +These utilities help in caching and retrieving data, ensuring efficient and repeatable +data access without redundant computations or network requests. + +The tests cover: +1. Creation of cache files with the correct file naming based on provided parameters. +2. Proper retrieval of data from the cache, ensuring data integrity. +3. Usage of appropriate file extensions based on the type of data being cached. +4. Clearing of cache directories as specified. + +By running these tests, one can validate that the caching utilities of MHKiT are functioning +as expected, ensuring that users can rely on cached data and metadata when using the MHKiT library. + +Usage: + python -m unittest test_cache.py + +Requirements: + - pandas + - hashlib + - tempfile + - shutil + - os + - unittest + - MHKiT library functions (from mhkit.utils.cache) + +Author: ssolson +Date: 2023-08-18 +""" + +import unittest +import hashlib +import tempfile +import shutil +import os +import pandas as pd +from mhkit.utils.cache import handle_caching, clear_cache + + +class TestCacheUtils(unittest.TestCase): + """ + Unit tests for cache utility functions. + + This test class provides a suite of tests to validate the functionality of caching utilities, + ensuring data is correctly cached, retrieved, and cleared. It specifically tests: + + 1. The creation of cache files by the `handle_caching` function. + 2. The correct retrieval of data from the cache. + 3. The appropriate file extension used when caching CDIP data. + 4. The effective clearing of specified cache directories. + + During the setup phase, a test cache directory is created, and sample data is prepared. + Upon completion of tests, the teardown phase ensures the test cache directory is removed, + leaving the environment clean. + + Attributes: + ----------- + cache_dir : str + Directory path where the test cache files will be stored. + hash_params : str + Sample parameters to be hashed for cache file naming. + data : pandas DataFrame + Sample data to be used for caching in tests. + """ + + @classmethod + def setUpClass(cls): + cls.cache_dir = os.path.join( + os.path.expanduser("~"), ".cache", "mhkit", "test_cache" + ) + cls.hash_params = "test_params" + cls.data = pd.DataFrame( + {"A": [1, 2, 3], "B": [4, 5, 6]}, index=pd.date_range("20220101", periods=3) + ) + + @classmethod + def tearDownClass(cls): + # Remove the test_cache directory + if os.path.exists(cls.cache_dir): + shutil.rmtree(cls.cache_dir) + + def test_handle_caching_creates_cache(self): + """ + Test if the `handle_caching` function correctly creates a cache file. + + The method tests the following scenario: + 1. Invokes the `handle_caching` function to cache a sample DataFrame. + 2. Constructs the expected cache file path based on provided `hash_params`. + 3. Checks if the cache file exists at the expected location. + + Asserts: + - The cache file is successfully created at the expected file path. + """ + handle_caching(self.hash_params, self.cache_dir, data=self.data) + + cache_filename = ( + hashlib.md5(self.hash_params.encode("utf-8")).hexdigest() + ".json" + ) + cache_filepath = os.path.join(self.cache_dir, cache_filename) + + assert os.path.isfile(cache_filepath) + + def test_handle_caching_retrieves_data(self): + """ + Test if the `handle_caching` function retrieves the correct data from cache. + + The method tests the following scenario: + 1. Invokes the `handle_caching` function to cache a sample DataFrame. + 2. Retrieves the data from the cache using the `handle_caching` function. + 3. Compares the retrieved data to the original sample DataFrame. + + Asserts: + - The retrieved data matches the original sample DataFrame. + """ + handle_caching(self.hash_params, self.cache_dir, data=self.data) + retrieved_data, _, _ = handle_caching(self.hash_params, self.cache_dir) + pd.testing.assert_frame_equal(self.data, retrieved_data, check_freq=False) + + def test_handle_caching_cdip_file_extension(self): + """ + Test if the `handle_caching` function uses the correct file extension for CDIP caching. + + The method tests the following scenario: + 1. Specifies the cache directory to include "cdip", signaling CDIP-related caching. + 2. Invokes the `handle_caching` function to cache a sample DataFrame in the CDIP directory. + 3. Constructs the expected cache file path using a ".pkl" extension based on provided `hash_params`. + 4. Checks if the cache file with the ".pkl" extension exists at the expected location. + + Asserts: + - The cache file with a ".pkl" extension is successfully created at the expected file path. + """ + cache_dir = os.path.join(self.cache_dir, "cdip") + handle_caching(self.hash_params, cache_dir, data=self.data) + + cache_filename = ( + hashlib.md5(self.hash_params.encode("utf-8")).hexdigest() + ".pkl" + ) + cache_filepath = os.path.join(cache_dir, cache_filename) + + assert os.path.isfile(cache_filepath) + + def test_clear_cache(self): + """ + Test if the `clear_cache` function correctly clears the specified cache directory. + + The method tests the following scenario: + 1. Moves the contents of the directory to be cleared to a temporary location. + 2. Invokes the `clear_cache` function to clear the specified directory. + 3. Checks if the directory has been cleared. + 4. Restores the original contents of the directory from the temporary location. + + Asserts: + - The specified directory is successfully cleared by the `clear_cache` function. + """ + specific_dir = "wave" + cache_dir = os.path.join(os.path.expanduser("~"), ".cache", "mhkit") + path_to_clear = os.path.join(cache_dir, specific_dir) + + # Step 1: Move contents to temporary directory + temp_dir = tempfile.mkdtemp() + if os.path.exists(path_to_clear): + shutil.move(path_to_clear, temp_dir) + + # Step 2: Run clear_cache and test + clear_cache(specific_dir) + assert not os.path.exists(path_to_clear) + + # Step 3: Move contents back to original location, if they exist in the temporary directory + if os.path.exists(os.path.join(temp_dir, specific_dir)): + shutil.move(os.path.join(temp_dir, specific_dir), cache_dir) + shutil.rmtree(temp_dir) # Clean up temporary directory + + +if __name__ == "__main__": + unittest.main() diff --git a/mhkit/tests/utils/test_upcrossing.py b/mhkit/tests/utils/test_upcrossing.py new file mode 100644 index 000000000..e389fc39a --- /dev/null +++ b/mhkit/tests/utils/test_upcrossing.py @@ -0,0 +1,144 @@ +from mhkit.utils import upcrossing, peaks, troughs, heights, periods, custom +import unittest +from numpy.testing import assert_allclose +import numpy as np +from scipy.optimize import fsolve + + +class TestUpcrossing(unittest.TestCase): + @classmethod + def setUpClass(self): + self.t = np.linspace(0, 4, 1000) + + self.signal = self._example_waveform(self, self.t) + + # Approximiate points for the zero crossing, + # used as starting points in numerical + # solution. + self.zero_cross_approx = [0, 2.1, 3, 3.8] + + def _example_waveform(self, t): + # Create simple wave form to analyse. + # This has been created to perform + # a simple independent calcuation that + # the mhkit functions can be tested against. + + A = np.array([0.5, 0.6, 0.3]) + T = np.array([3, 2, 1]) + w = 2 * np.pi / T + + signal = np.zeros(t.size) + for i in range(A.size): + signal += A[i] * np.sin(w[i] * t) + + return signal + + def _example_analysis(self, t, signal): + # NB: This only works due to the construction + # of our test signal. It is not suitable as + # a general approach. + grad = np.diff(signal) + + # +1 to get the index at turning point + turning_points = np.flatnonzero(grad[1:] * grad[:-1] < 0) + 1 + + crest_inds = turning_points[signal[turning_points] > 0] + trough_inds = turning_points[signal[turning_points] < 0] + + crests = signal[crest_inds] + troughs = signal[trough_inds] + + heights = crests - troughs + + zero_cross = fsolve(self._example_waveform, self.zero_cross_approx) + periods = np.diff(zero_cross) + + return crests, troughs, heights, periods + + def test_peaks(self): + want, _, _, _ = self._example_analysis(self.t, self.signal) + + got = peaks(self.t, self.signal) + + assert_allclose(got, want) + + def test_troughs(self): + _, want, _, _ = self._example_analysis(self.t, self.signal) + + got = troughs(self.t, self.signal) + + assert_allclose(got, want) + + def test_heights(self): + _, _, want, _ = self._example_analysis(self.t, self.signal) + + got = heights(self.t, self.signal) + + assert_allclose(got, want) + + def test_periods(self): + _, _, _, want = self._example_analysis(self.t, self.signal) + + got = periods(self.t, self.signal) + + assert_allclose(got, want, rtol=1e-3, atol=1e-3) + + def test_custom(self): + want, _, _, _ = self._example_analysis(self.t, self.signal) + + # create a similar function to finding the peaks + def f(ind1, ind2): + return np.max(self.signal[ind1:ind2]) + + got = custom(self.t, self.signal, f) + + assert_allclose(got, want) + + def test_peaks_with_inds(self): + want, _, _, _ = self._example_analysis(self.t, self.signal) + + inds = upcrossing(self.t, self.signal) + + got = peaks(self.t, self.signal, inds) + + assert_allclose(got, want) + + def test_trough_with_inds(self): + _, want, _, _ = self._example_analysis(self.t, self.signal) + + inds = upcrossing(self.t, self.signal) + + got = troughs(self.t, self.signal, inds) + + assert_allclose(got, want) + + def test_heights_with_inds(self): + _, _, want, _ = self._example_analysis(self.t, self.signal) + + inds = upcrossing(self.t, self.signal) + + got = heights(self.t, self.signal, inds) + + assert_allclose(got, want) + + def test_periods_with_inds(self): + _, _, _, want = self._example_analysis(self.t, self.signal) + + inds = upcrossing(self.t, self.signal) + + got = periods(self.t, self.signal, inds) + + assert_allclose(got, want, rtol=1e-3, atol=1e-3) + + def test_custom_with_inds(self): + want, _, _, _ = self._example_analysis(self.t, self.signal) + + inds = upcrossing(self.t, self.signal) + + # create a similar function to finding the peaks + def f(ind1, ind2): + return np.max(self.signal[ind1:ind2]) + + got = custom(self.t, self.signal, f, inds) + + assert_allclose(got, want) diff --git a/mhkit/tests/utils/test_utils.py b/mhkit/tests/utils/test_utils.py index 07e1ed029..315d0de19 100644 --- a/mhkit/tests/utils/test_utils.py +++ b/mhkit/tests/utils/test_utils.py @@ -5,149 +5,287 @@ import numpy as np import unittest import json +import xarray as xr testdir = dirname(abspath(__file__)) -loads_datadir = normpath(join(testdir,relpath('../../../examples/data/loads'))) +loads_datadir = normpath(join(testdir, relpath("../../../examples/data/loads"))) -class TestGenUtils(unittest.TestCase): +class TestGenUtils(unittest.TestCase): @classmethod def setUpClass(self): loads_data_file = join(loads_datadir, "loads_data_dict.json") - with open(loads_data_file, 'r') as fp: + with open(loads_data_file, "r") as fp: data_dict = json.load(fp) # convert dictionaries into dataframes - data = { - key: pd.DataFrame(data_dict[key]) - for key in data_dict - } + data = {key: pd.DataFrame(data_dict[key]) for key in data_dict} self.data = data - self.freq = 50 # Hz - self.period = 600 # seconds - + self.freq = 50 # Hz + self.period = 600 # seconds def test_get_statistics(self): # load in file - df = self.data['loads'] + df = self.data["loads"] df.Timestamp = pd.to_datetime(df.Timestamp) - df.set_index('Timestamp',inplace=True) + df.set_index("Timestamp", inplace=True) # run function - means,maxs,mins,stdevs = utils.get_statistics(df,self.freq,period=self.period,vector_channels=['WD_Nacelle','WD_NacelleMod']) + means, maxs, mins, stdevs = utils.get_statistics( + df, + self.freq, + period=self.period, + vector_channels=["WD_Nacelle", "WD_NacelleMod"], + ) # check statistics - self.assertAlmostEqual(means.reset_index().loc[0,'uWind_80m'],7.773,2) # mean - self.assertAlmostEqual(maxs.reset_index().loc[0,'uWind_80m'],13.271,2) # max - self.assertAlmostEqual(mins.reset_index().loc[0,'uWind_80m'],3.221,2) # min - self.assertAlmostEqual(stdevs.reset_index().loc[0,'uWind_80m'],1.551,2) # standard deviation - self.assertAlmostEqual(means.reset_index().loc[0,'WD_Nacelle'],178.1796,2) # mean - vector - self.assertAlmostEqual(stdevs.reset_index().loc[0,'WD_Nacelle'],36.093,2) # standard devaition - vector + self.assertAlmostEqual( + means.reset_index().loc[0, "uWind_80m"], 7.773, 2 + ) # mean + self.assertAlmostEqual(maxs.reset_index().loc[0, "uWind_80m"], 13.271, 2) # max + self.assertAlmostEqual(mins.reset_index().loc[0, "uWind_80m"], 3.221, 2) # min + self.assertAlmostEqual( + stdevs.reset_index().loc[0, "uWind_80m"], 1.551, 2 + ) # standard deviation + self.assertAlmostEqual( + means.reset_index().loc[0, "WD_Nacelle"], 178.1796, 2 + ) # mean - vector + self.assertAlmostEqual( + stdevs.reset_index().loc[0, "WD_Nacelle"], 36.093, 2 + ) # standard devaition - vector # check timestamp - string_time = '2017-03-01 01:28:41' + string_time = "2017-03-01 01:28:41" time = pd.to_datetime(string_time) - self.assertTrue(means.index[0]==time) - + self.assertTrue(means.index[0] == time) + def test_vector_statistics(self): # load in vector variable - df = self.data['loads'] - vector_data = df['WD_Nacelle'] + df = self.data["loads"] + vector_data = df["WD_Nacelle"] vector_avg, vector_std = utils.vector_statistics(vector_data) # check answers - self.assertAlmostEqual(vector_avg,178.1796,2) # mean - vector - self.assertAlmostEqual(vector_std,36.093,2) # standard devaition - vector + self.assertAlmostEqual(vector_avg, 178.1796, 2) # mean - vector + self.assertAlmostEqual(vector_std, 36.093, 2) # standard devaition - vector def test_unwrap_vector(self): # create array of test values and corresponding expected answers - test = [-740,-400,-50,0,50,400,740] - correct = [340,320,310,0,50,40,20] + test = [-740, -400, -50, 0, 50, 400, 740] + correct = [340, 320, 310, 0, 50, 40, 20] # get answers from function answer = utils.unwrap_vector(test) - + # check if answer is correct - assert_frame_equal(pd.DataFrame(answer,dtype='int32'),pd.DataFrame(correct,dtype='int32')) + assert_frame_equal( + pd.DataFrame(answer, dtype="int32"), pd.DataFrame(correct, dtype="int32") + ) def test_matlab_to_datetime(self): # store matlab timestamp - mat_time = 7.367554921296296e+05 + mat_time = 7.367554921296296e05 # corresponding datetime - string_time = '2017-03-01 11:48:40' + string_time = "2017-03-01 11:48:40" time = pd.to_datetime(string_time) # test function answer = utils.matlab_to_datetime(mat_time) - answer2 = answer.round('s') # round to nearest second for comparison - + answer2 = answer.round("s") # round to nearest second for comparison + # check if answer is correct self.assertTrue(answer2 == time) def test_excel_to_datetime(self): # store excel timestamp - excel_time = 4.279549212962963e+04 + excel_time = 4.279549212962963e04 # corresponding datetime - string_time = '2017-03-01 11:48:40' + string_time = "2017-03-01 11:48:40" time = pd.to_datetime(string_time) # test function answer = utils.excel_to_datetime(excel_time) - answer2 = answer.round('s') # round to nearest second for comparison - + answer2 = answer.round("s") # round to nearest second for comparison + # check if answer is correct - self.assertTrue(answer2 == time) + self.assertTrue(answer2 == time) def test_magnitude_phase_2D(self): # float - magnitude=9 - x=y = np.sqrt(1/2*magnitude**2) + magnitude = 9 + x = y = np.sqrt(1 / 2 * magnitude**2) phase = np.arctan2(y, x) - mag, theta = utils.magnitude_phase(x,y) - + mag, theta = utils.magnitude_phase(x, y) + self.assertAlmostEqual(magnitude, mag) self.assertAlmostEqual(phase, theta) - - #list - xx = [x,x] - yy = [y,y] - mag, theta = utils.magnitude_phase(xx,yy) - self.assertTrue(all(mag==magnitude)) - self.assertTrue(all(theta==phase)) - - #series - xs = pd.Series(xx,index=range(len(xx))) - ys = pd.Series(yy,index=range(len(yy))) - - mag, theta = utils.magnitude_phase(xs,ys) - self.assertTrue(all(mag==magnitude)) - self.assertTrue(all(theta==phase)) - + + # list + xx = [x, x] + yy = [y, y] + mag, theta = utils.magnitude_phase(xx, yy) + self.assertTrue(all(mag == magnitude)) + self.assertTrue(all(theta == phase)) + + # series + xs = pd.Series(xx, index=range(len(xx))) + ys = pd.Series(yy, index=range(len(yy))) + + mag, theta = utils.magnitude_phase(xs, ys) + self.assertTrue(all(mag == magnitude)) + self.assertTrue(all(theta == phase)) + def test_magnitude_phase_3D(self): # float - magnitude=9 - x=y=z = np.sqrt(1/3*magnitude**2) + magnitude = 9 + x = y = z = np.sqrt(1 / 3 * magnitude**2) phase1 = np.arctan2(y, x) - phase2 = np.arctan2(np.sqrt(x**2+y**2),z) - mag, theta, phi = utils.magnitude_phase(x,y,z) - + phase2 = np.arctan2(np.sqrt(x**2 + y**2), z) + mag, theta, phi = utils.magnitude_phase(x, y, z) + self.assertAlmostEqual(magnitude, mag) self.assertAlmostEqual(phase1, theta) self.assertAlmostEqual(phase2, phi) - - #list - xx = [x,x] - yy = [y,y] - zz = [z,z] - mag, theta, phi = utils.magnitude_phase(xx,yy,zz) - self.assertTrue(all(mag==magnitude)) - self.assertTrue(all(theta==phase1)) - self.assertTrue(all(phi==phase2)) - - #series - xs = pd.Series(xx,index=range(len(xx))) - ys = pd.Series(yy,index=range(len(yy))) - zs = pd.Series(zz,index=range(len(zz))) - - mag, theta, phi = utils.magnitude_phase(xs,ys,zs) - self.assertTrue(all(mag==magnitude)) - self.assertTrue(all(theta==phase1)) - self.assertTrue(all(phi==phase2)) - - -if __name__ == '__main__': + + # list + xx = [x, x] + yy = [y, y] + zz = [z, z] + mag, theta, phi = utils.magnitude_phase(xx, yy, zz) + self.assertTrue(all(mag == magnitude)) + self.assertTrue(all(theta == phase1)) + self.assertTrue(all(phi == phase2)) + + # series + xs = pd.Series(xx, index=range(len(xx))) + ys = pd.Series(yy, index=range(len(yy))) + zs = pd.Series(zz, index=range(len(zz))) + + mag, theta, phi = utils.magnitude_phase(xs, ys, zs) + self.assertTrue(all(mag == magnitude)) + self.assertTrue(all(theta == phase1)) + self.assertTrue(all(phi == phase2)) + + def test_convert_to_dataarray(self): + # test data + a = 5 + t = np.arange(0.0, 5.0, 0.5) + i = np.arange(0.0, 10.0, 1) + d1 = i**2 / 5.0 + d2 = -d1 + + # test data formats + test_n = d1 + test_s = pd.Series(d1, t) + test_df = pd.DataFrame({"d1": d1}, index=t) + test_df2 = pd.DataFrame({"d1": d1, "d1_duplicate": d1}, index=t) + test_da = xr.DataArray( + data=d1, + dims="time", + coords=dict(time=t), + ) + test_ds = xr.Dataset( + data_vars={"d1": (["time"], d1)}, coords={"time": t, "index": i} + ) + test_ds2 = xr.Dataset( + data_vars={ + "d1": (["time"], d1), + "d2": (["ind"], d2), + }, + coords={"time": t, "index": i}, + ) + + # numpy + n = utils.convert_to_dataarray(test_n, "test_data") + self.assertIsInstance(n, xr.DataArray) + self.assertTrue(all(n.data == d1)) + self.assertEqual(n.name, "test_data") + + # Series + s = utils.convert_to_dataarray(test_s) + self.assertIsInstance(s, xr.DataArray) + self.assertTrue(all(s.data == d1)) + + # DataArray + da = utils.convert_to_dataarray(test_da) + self.assertIsInstance(da, xr.DataArray) + self.assertTrue(all(da.data == d1)) + + # Dataframe + df = utils.convert_to_dataarray(test_df) + self.assertIsInstance(df, xr.DataArray) + self.assertTrue(all(df.data == d1)) + + # Dataset + ds = utils.convert_to_dataarray(test_ds) + self.assertIsInstance(ds, xr.DataArray) + self.assertTrue(all(ds.data == d1)) + + # int (error) + with self.assertRaises(TypeError): + utils.convert_to_dataarray(a) + + # non-string name (error) + with self.assertRaises(TypeError): + utils.convert_to_dataarray(test_n, 5) + + # Multivariate Dataframe (error) + with self.assertRaises(ValueError): + utils.convert_to_dataarray(test_df2) + + # Multivariate Dataset (error) + with self.assertRaises(ValueError): + utils.convert_to_dataarray(test_ds2) + + def test_convert_to_dataset(self): + # test data + a = 5 + t = np.arange(0, 5, 0.5) + i = np.arange(0, 10, 1) + d1 = i**2 / 5.0 + d2 = -d1 + + # test data formats + test_n = d1 + test_s = pd.Series(d1, t) + test_df2 = pd.DataFrame({"d1": d1, "d2": d2}, index=t) + test_da = xr.DataArray( + data=d1, + dims="time", + coords=dict(time=t), + ) + test_ds2 = xr.Dataset( + data_vars={ + "d1": (["time"], d1), + "d2": (["ind"], d2), + }, + coords={"time": t, "index": i}, + ) + + # Series + s = utils.convert_to_dataset(test_s) + self.assertIsInstance(s, xr.Dataset) + self.assertTrue(all(s["data"].data == d1)) + + # DataArray with custom name + da = utils.convert_to_dataset(test_da, "test_name") + self.assertIsInstance(da, xr.Dataset) + self.assertTrue(all(da["test_name"].data == d1)) + + # Dataframe + df = utils.convert_to_dataset(test_df2) + self.assertIsInstance(df, xr.Dataset) + self.assertTrue(all(df["d1"].data == d1)) + self.assertTrue(all(df["d2"].data == d2)) + + # Dataset + ds = utils.convert_to_dataset(test_ds2) + self.assertIsInstance(ds, xr.Dataset) + self.assertTrue(all(ds["d1"].data == d1)) + self.assertTrue(all(ds["d2"].data == d2)) + + # int (error) + with self.assertRaises(TypeError): + utils.convert_to_dataset(a) + + # non-string name (error) + with self.assertRaises(TypeError): + utils.convert_to_dataset(test_n, 5) + + +if __name__ == "__main__": unittest.main() diff --git a/mhkit/tests/wave/io/hindcast/test_hindcast.py b/mhkit/tests/wave/io/hindcast/test_hindcast.py index 08333e6c9..379eeeee4 100644 --- a/mhkit/tests/wave/io/hindcast/test_hindcast.py +++ b/mhkit/tests/wave/io/hindcast/test_hindcast.py @@ -22,6 +22,7 @@ Run the script directly as a standalone program, or import the TestWPTOhindcast class in another test suite. """ + import unittest from os.path import abspath, dirname, join, normpath from pandas.testing import assert_frame_equal @@ -31,220 +32,207 @@ import xarray as xr testdir = dirname(abspath(__file__)) -datadir = normpath(join(testdir,'..','..','..','..','..','examples','data','wave')) +datadir = normpath( + join(testdir, "..", "..", "..", "..", "..", "examples", "data", "wave") +) class TestWPTOhindcast(unittest.TestCase): - ''' + """ A test call designed to check the WPTO hindcast retrival - ''' + """ @classmethod def setUpClass(cls): - ''' + """ Intitialize the WPTO hindcast test with expected data - ''' + """ cls.my_swh = pd.read_csv( - join(datadir,'hindcast/multi_year_hindcast.csv'), - index_col = 'time_index', - names = ['time_index','significant_wave_height_0'], - header = 0, - dtype = {'significant_wave_height_0':'float32'} + join(datadir, "hindcast/multi_year_hindcast.csv"), + index_col="time_index", + names=["time_index", "significant_wave_height_0"], + header=0, + dtype={"significant_wave_height_0": "float32"}, ) cls.my_swh.index = pd.to_datetime(cls.my_swh.index) cls.ml = pd.read_csv( - join(datadir,'hindcast/single_year_hindcast_multiloc.csv'), - index_col = 'time_index', - names = [ - 'time_index', - 'mean_absolute_period_0', - 'mean_absolute_period_1' - ], - header = 0, - dtype = { - 'mean_absolute_period_0':'float32', - 'mean_absolute_period_1':'float32' - } + join(datadir, "hindcast/single_year_hindcast_multiloc.csv"), + index_col="time_index", + names=["time_index", "mean_absolute_period_0", "mean_absolute_period_1"], + header=0, + dtype={ + "mean_absolute_period_0": "float32", + "mean_absolute_period_1": "float32", + }, ) cls.ml.index = pd.to_datetime(cls.ml.index) cls.mp = pd.read_csv( - join(datadir,'hindcast/multiparm.csv'), - index_col = 'time_index', - names = [ - 'time_index', - 'energy_period_87', - 'mean_zero-crossing_period_87' - ], - header = 0, - dtype = { - 'energy_period_87':'float32', - 'mean_zero-crossing_period_87':'float32' - } + join(datadir, "hindcast/multiparm.csv"), + index_col="time_index", + names=["time_index", "energy_period_87", "mean_zero-crossing_period_87"], + header=0, + dtype={ + "energy_period_87": "float32", + "mean_zero-crossing_period_87": "float32", + }, ) cls.mp.index = pd.to_datetime(cls.mp.index) cls.ml_meta = pd.read_csv( - join(datadir,'hindcast/multiloc_meta.csv'), - index_col = 0, - names = [ + join(datadir, "hindcast/multiloc_meta.csv"), + index_col=0, + names=[ None, - 'water_depth', - 'latitude', - 'longitude', - 'distance_to_shore', - 'timezone', - 'jurisdiction', - 'gid', + "water_depth", + "latitude", + "longitude", + "distance_to_shore", + "timezone", + "jurisdiction", + "gid", ], - header = 0, - dtype = { - 'water_depth':'float32', - 'latitude':'float32', - 'longitude':'float32', - 'distance_to_shore':'float32', - 'timezone':'int16', - 'gid': 'int64', - } + header=0, + dtype={ + "water_depth": "float32", + "latitude": "float32", + "longitude": "float32", + "distance_to_shore": "float32", + "timezone": "int16", + "gid": "int64", + }, ) cls.my_meta = pd.read_csv( - join(datadir,'hindcast/multi_year_meta.csv'), - names = [ - 'water_depth', - 'latitude', - 'longitude', - 'distance_to_shore', - 'timezone', - 'jurisdiction', - 'gid' + join(datadir, "hindcast/multi_year_meta.csv"), + names=[ + "water_depth", + "latitude", + "longitude", + "distance_to_shore", + "timezone", + "jurisdiction", + "gid", ], - header = 0, - dtype = { - 'water_depth':'float32', - 'latitude':'float32', - 'longitude':'float32', - 'distance_to_shore':'float32', - 'timezone':'int16', - 'gid':'int64' - } + header=0, + dtype={ + "water_depth": "float32", + "latitude": "float32", + "longitude": "float32", + "distance_to_shore": "float32", + "timezone": "int16", + "gid": "int64", + }, ) cls.mp_meta = pd.read_csv( - join(datadir,'hindcast/multiparm_meta.csv'), - index_col = 0, - names = [ + join(datadir, "hindcast/multiparm_meta.csv"), + index_col=0, + names=[ None, - 'water_depth', - 'latitude', - 'longitude', - 'distance_to_shore', - 'timezone', - 'jurisdiction', - 'gid', + "water_depth", + "latitude", + "longitude", + "distance_to_shore", + "timezone", + "jurisdiction", + "gid", ], - header = 0, - dtype = { - 'water_depth':'float32', - 'latitude':'float32', - 'longitude':'float32', - 'distance_to_shore':'float32', - 'timezone':'int16', - 'gid':'int64', - } + header=0, + dtype={ + "water_depth": "float32", + "latitude": "float32", + "longitude": "float32", + "distance_to_shore": "float32", + "timezone": "int16", + "gid": "int64", + }, ) - cls.multi_year_dir_spectra = xr.open_dataset(join(datadir, 'hindcast/multi_year_dir_spectra.nc')) + cls.multi_year_dir_spectra = xr.open_dataset( + join(datadir, "hindcast/multi_year_dir_spectra.nc") + ) cls.multi_year_dir_spectra_meta = pd.read_csv( - join(datadir, 'hindcast/multi_year_dir_spectra_meta.csv'), - dtype = { - 'water_depth':'float32', - 'latitude':'float32', - 'longitude':'float32', - 'distance_to_shore':'float32', - 'timezone':'int16', - 'gid':'int64' - }) + join(datadir, "hindcast/multi_year_dir_spectra_meta.csv"), + dtype={ + "water_depth": "float32", + "latitude": "float32", + "longitude": "float32", + "distance_to_shore": "float32", + "timezone": "int16", + "gid": "int64", + }, + ) def test_multi_year(self): - ''' + """ Test multiple years on a single data_type, lat_lon, and parameter - ''' - data_type = '3-hour' - years = [1990,1992] - lat_lon = (44.624076,-124.280097) - parameters = 'significant_wave_height' - - wave_multiyear, meta = (wave.io.hindcast.hindcast - .request_wpto_point_data( - data_type, - parameters, - lat_lon, - years, - as_xarray=True - ) + """ + data_type = "3-hour" + years = [1990, 1992] + lat_lon = (44.624076, -124.280097) + parameters = "significant_wave_height" + + wave_multiyear, meta = wave.io.hindcast.hindcast.request_wpto_point_data( + data_type, parameters, lat_lon, years, to_pandas=False ) wave_multiyear_df = ( - wave_multiyear['significant_wave_height_0'] + wave_multiyear["significant_wave_height_0"] .to_dataframe() - .tz_localize('UTC') - ) + .tz_localize("UTC") + ) assert_frame_equal(self.my_swh, wave_multiyear_df) assert_frame_equal(self.my_meta, meta) - def test_multi_parm(self): - ''' + """ Test multiple parameters on a single data_type, year, and lat_lon - ''' - data_type = '1-hour' + """ + data_type = "1-hour" years = [1996] - lat_lon = (44.624076,-124.280097) - parameters = ['energy_period','mean_zero-crossing_period'] - wave_multiparm, meta= (wave.io.hindcast.hindcast - .request_wpto_point_data( - data_type, - parameters, - lat_lon, - years - ) + lat_lon = (44.624076, -124.280097) + parameters = ["energy_period", "mean_zero-crossing_period"] + wave_multiparm, meta = wave.io.hindcast.hindcast.request_wpto_point_data( + data_type, parameters, lat_lon, years ) - assert_frame_equal(self.mp,wave_multiparm) - assert_frame_equal(self.mp_meta,meta) - + assert_frame_equal(self.mp, wave_multiparm) + assert_frame_equal(self.mp_meta, meta) def test_multi_loc(self): - ''' + """ Test mutiple locations on point data and directional spectrum at a single data_type, year, and parameter. - ''' - data_type = '3-hour' + """ + data_type = "3-hour" years = [1995] - lat_lon = ((44.624076,-124.280097),(43.489171,-125.152137)) - parameters = 'mean_absolute_period' - wave_multiloc, meta=wave.io.hindcast.hindcast.request_wpto_point_data( - data_type, - parameters, - lat_lon, - years + lat_lon = ((44.624076, -124.280097), (43.489171, -125.152137)) + parameters = "mean_absolute_period" + wave_multiloc, meta = wave.io.hindcast.hindcast.request_wpto_point_data( + data_type, parameters, lat_lon, years ) - dir_multiyear, meta_dir = (wave.io.hindcast.hindcast - .request_wpto_directional_spectrum(lat_lon,year=str(years[0])) + ( + dir_multiyear, + meta_dir, + ) = wave.io.hindcast.hindcast.request_wpto_directional_spectrum( + lat_lon, year=str(years[0]) ) + dir_multiyear = dir_multiyear.sel( - time_index=slice( - dir_multiyear.time_index[0], - dir_multiyear.time_index[99] - ) + time_index=slice(dir_multiyear.time_index[0], dir_multiyear.time_index[99]) ) - + # Convert to effcient range index + meta_dir.index = pd.RangeIndex(start=0, stop=len(meta_dir.index)) + assert_frame_equal(self.ml, wave_multiloc) assert_frame_equal(self.ml_meta, meta) xrt.assert_allclose(self.multi_year_dir_spectra, dir_multiyear) - assert_frame_equal(self.multi_year_dir_spectra_meta, meta_dir) + assert_frame_equal( + self.multi_year_dir_spectra_meta, meta_dir, check_dtype=False + ) + -if __name__ == '__main__': +if __name__ == "__main__": unittest.main() diff --git a/mhkit/tests/wave/io/hindcast/test_wind_toolkit.py b/mhkit/tests/wave/io/hindcast/test_wind_toolkit.py index ad5e2ba96..6544f8b52 100644 --- a/mhkit/tests/wave/io/hindcast/test_wind_toolkit.py +++ b/mhkit/tests/wave/io/hindcast/test_wind_toolkit.py @@ -1,180 +1,364 @@ from os.path import abspath, dirname, join, isfile, normpath, relpath from pandas.testing import assert_frame_equal -from numpy.testing import assert_allclose -from scipy.interpolate import interp1d -from random import seed, randint import matplotlib.pylab as plt -from datetime import datetime -import xarray.testing as xrt import mhkit.wave.io.hindcast.wind_toolkit as wtk -from io import StringIO import pandas as pd -import numpy as np -import contextlib import unittest -import netCDF4 -import inspect -import pickle -import time -import json -import sys -import os +import pytest testdir = dirname(abspath(__file__)) -datadir = normpath(join(testdir,'..','..','..','..','..','examples','data','wave','wind_toolkit')) +datadir = normpath( + join( + testdir, + "..", + "..", + "..", + "..", + "..", + "examples", + "data", + "wave", + "wind_toolkit", + ) +) class TestWINDToolkit(unittest.TestCase): - @classmethod def setUpClass(self): - - self.my = pd.read_csv(join(datadir,'wtk_multiyear.csv'), - index_col = 'time_index', - names = ['time_index','pressure_200m_0'], - header = 0, - dtype = {'pressure_200m_0':'float32'}) + self.my = pd.read_csv( + join(datadir, "wtk_multiyear.csv"), + index_col="time_index", + names=["time_index", "pressure_200m_0"], + header=0, + dtype={"pressure_200m_0": "float32"}, + ) self.my.index = pd.to_datetime(self.my.index) - self.ml = pd.read_csv(join(datadir,'wtk_multiloc.csv'), - index_col = 'time_index', - names = ['time_index','windspeed_10m_0','windspeed_10m_1'], - header = 0, - dtype = {'windspeed_10m_0':'float32', - 'windspeed_10m_1':'float32'}) + self.ml = pd.read_csv( + join(datadir, "wtk_multiloc.csv"), + index_col="time_index", + names=["time_index", "windspeed_10m_0", "windspeed_10m_1"], + header=0, + dtype={"windspeed_10m_0": "float32", "windspeed_10m_1": "float32"}, + ) self.ml.index = pd.to_datetime(self.ml.index) - self.mp = pd.read_csv(join(datadir,'wtk_multiparm.csv'), - index_col = 'time_index', - names = ['time_index','temperature_20m_0','temperature_40m_0'], - header = 0, - dtype = {'temperature_20m_0':'float32', - 'temperature_40m_0':'float32'}) + self.mp = pd.read_csv( + join(datadir, "wtk_multiparm.csv"), + index_col="time_index", + names=["time_index", "temperature_20m_0", "temperature_40m_0"], + header=0, + dtype={"temperature_20m_0": "float32", "temperature_40m_0": "float32"}, + ) self.mp.index = pd.to_datetime(self.mp.index) - self.my_meta = pd.read_csv(join(datadir,'wtk_multiyear_meta.csv'), - index_col = 0, - names = ['latitude','longitude','country','state','county','timezone','elevation','offshore'], - header = 0, - dtype = {'latitude':'float32','longitude':'float32', - 'country':'str','state':'str','county':'str', - 'timezone':'int16','elevation':'float32','offshore':'int16'}) - - self.ml_meta = pd.read_csv(join(datadir,'wtk_multiloc_meta.csv'), - index_col = 0, - names = ['latitude','longitude','country','state','county','timezone','elevation','offshore'], - header = 0, - dtype = {'latitude':'float32','longitude':'float32', - 'country':'str','state':'str','county':'str', - 'timezone':'int16','elevation':'float32','offshore':'int16'}) - - self.mp_meta = pd.read_csv(join(datadir,'wtk_multiparm_meta.csv'), - index_col = 0, - names = ['latitude','longitude','country','state','county','timezone','elevation','offshore'], - header = 0, - dtype = {'latitude':'float32','longitude':'float32', - 'country':'str','state':'str','county':'str', - 'timezone':'int16','elevation':'float32','offshore':'int16'}) + self.my_meta = pd.read_csv( + join(datadir, "wtk_multiyear_meta.csv"), + index_col=0, + names=[ + "latitude", + "longitude", + "country", + "state", + "county", + "timezone", + "elevation", + "offshore", + ], + header=0, + dtype={ + "latitude": "float32", + "longitude": "float32", + "country": "str", + "state": "str", + "county": "str", + "timezone": "int16", + "elevation": "float32", + "offshore": "int16", + }, + ) + + # Replace NaN values in 'state' and 'county' with the string "None" + self.my_meta["state"] = self.my_meta["state"].fillna("None") + self.my_meta["county"] = self.my_meta["county"].fillna("None") + + self.ml_meta = pd.read_csv( + join(datadir, "wtk_multiloc_meta.csv"), + index_col=0, + names=[ + "latitude", + "longitude", + "country", + "state", + "county", + "timezone", + "elevation", + "offshore", + ], + header=0, + dtype={ + "latitude": "float32", + "longitude": "float32", + "country": "str", + "state": "str", + "county": "str", + "timezone": "int16", + "elevation": "float32", + "offshore": "int16", + }, + ) + # Replace NaN values in 'state' and 'county' with the string "None" + self.ml_meta["state"] = self.ml_meta["state"].fillna("None") + self.ml_meta["county"] = self.ml_meta["county"].fillna("None") + + self.mp_meta = pd.read_csv( + join(datadir, "wtk_multiparm_meta.csv"), + index_col=0, + names=[ + "latitude", + "longitude", + "country", + "state", + "county", + "timezone", + "elevation", + "offshore", + ], + header=0, + dtype={ + "latitude": "float32", + "longitude": "float32", + "country": "str", + "state": "str", + "county": "str", + "timezone": "int16", + "elevation": "float32", + "offshore": "int16", + }, + ) + # Replace NaN values in 'state' and 'county' with the string "None" + self.mp_meta["state"] = self.mp_meta["state"].fillna("None") + self.mp_meta["county"] = self.mp_meta["county"].fillna("None") @classmethod def tearDownClass(self): pass - ## WIND Toolkit data + # WIND Toolkit data def test_multi_year(self): - data_type = '1-hour' - years = [2018,2019] - lat_lon = (44.624076,-124.280097) # NW_Pacific - parameters = 'pressure_200m' + data_type = "1-hour" + years = [2018, 2019] + lat_lon = (44.624076, -124.280097) # NW_Pacific + parameters = "pressure_200m" wtk_multiyear, meta = wtk.request_wtk_point_data( - data_type, parameters, - lat_lon, years) - assert_frame_equal(self.my,wtk_multiyear) - assert_frame_equal(self.my_meta,meta) - + data_type, parameters, lat_lon, years + ) + assert_frame_equal(self.my, wtk_multiyear) + assert_frame_equal(self.my_meta, meta) def test_multi_loc(self): - data_type = '1-hour' + data_type = "1-hour" years = [2001] - lat_lon = ((39.33,-67.21),(41.3,-75.9)) # Mid-Atlantic - parameters = 'windspeed_10m' + lat_lon = ((39.33, -67.21), (41.3, -75.9)) # Mid-Atlantic + parameters = "windspeed_10m" wtk_multiloc, meta = wtk.request_wtk_point_data( - data_type, parameters, - lat_lon, years) - assert_frame_equal(self.ml,wtk_multiloc) - assert_frame_equal(self.ml_meta,meta) - + data_type, parameters, lat_lon, years + ) + assert_frame_equal(self.ml, wtk_multiloc) + assert_frame_equal(self.ml_meta, meta) def test_multi_parm(self): - data_type = '1-hour' + data_type = "1-hour" years = [2012] - lat_lon = (17.2,-156.5) # Hawaii - parameters = ['temperature_20m','temperature_40m'] + lat_lon = (17.2, -156.5) # Hawaii + + parameters = ["temperature_20m", "temperature_40m"] wtk_multiparm, meta = wtk.request_wtk_point_data( - data_type, parameters, - lat_lon, years) - assert_frame_equal(self.mp,wtk_multiparm) - assert_frame_equal(self.mp_meta,meta) - + data_type, parameters, lat_lon, years + ) + + assert_frame_equal(self.mp, wtk_multiparm) + assert_frame_equal(self.mp_meta, meta) + + def test_invalid_parameter_type(self): + with pytest.raises(TypeError): + wtk.request_wtk_point_data( + time_interval="1-hour", + parameter=123, # Invalid type, should be a string or list of strings + lat_lon=(17.2, -156.5), + years=[2012], + ) + + def test_invalid_lat_lon_type(self): + with pytest.raises(TypeError): + wtk.request_wtk_point_data( + time_interval="1-hour", + parameter="temperature_20m", + lat_lon="17.2, -156.5", # Invalid type, should be a tuple or list of tuples + years=[2012], + ) + + def test_invalid_time_interval_type(self): + with pytest.raises(TypeError): + wtk.request_wtk_point_data( + time_interval=123, # Invalid type, should be a string + parameter="temperature_20m", + lat_lon=(17.2, -156.5), + years=[2012], + ) + + def test_invalid_years_type(self): + with pytest.raises(TypeError): + wtk.request_wtk_point_data( + time_interval="1-hour", + parameter="temperature_20m", + lat_lon=(17.2, -156.5), + years="2012", # Invalid type, should be a list + ) + + def test_invalid_preferred_region_type(self): + with pytest.raises(TypeError): + wtk.request_wtk_point_data( + time_interval="1-hour", + parameter="temperature_20m", + lat_lon=(17.2, -156.5), + years=[2012], + preferred_region=123, # Invalid type, should be a string + ) + + def test_invalid_tree_type(self): + with pytest.raises(TypeError): + wtk.request_wtk_point_data( + time_interval="1-hour", + parameter="temperature_20m", + lat_lon=(17.2, -156.5), + years=[2012], + preferred_region="", + tree=123, # Invalid type, should be a string or None + ) + + def test_invalid_unscale_type(self): + with pytest.raises(TypeError): + wtk.request_wtk_point_data( + time_interval="1-hour", + parameter="temperature_20m", + lat_lon=(17.2, -156.5), + years=[2012], + preferred_region="", + tree=None, + unscale="True", # Invalid type, should be bool + ) + + def test_invalid_str_decode_type(self): + with pytest.raises(TypeError): + wtk.request_wtk_point_data( + time_interval="1-hour", + parameter="temperature_20m", + lat_lon=(17.2, -156.5), + years=[2012], + preferred_region="", + tree=None, + unscale=True, + str_decode=123, # Invalid type, should be bool + ) + + def test_invalid_hsds_type(self): + with pytest.raises(TypeError): + wtk.request_wtk_point_data( + time_interval="1-hour", + parameter="temperature_20m", + lat_lon=(17.2, -156.5), + years=[2012], + preferred_region="", + tree=None, + unscale=True, + str_decode=True, + hsds="True", # Invalid type, should be bool + ) + + def test_invalid_clear_cache_type(self): + with pytest.raises(TypeError): + wtk.request_wtk_point_data( + time_interval="1-hour", + parameter="temperature_20m", + lat_lon=(17.2, -156.5), + years=[2012], + preferred_region="", + tree=None, + unscale=True, + str_decode=True, + hsds=True, + clear_cache="False", # Invalid type, should be bool + ) + # test region_selection function and catch for the preferred region def test_region(self): - region = wtk.region_selection((41.9,-125.3), preferred_region='Offshore_CA') - assert region=='Offshore_CA' - - region = wtk.region_selection((41.9,-125.3), preferred_region='NW_Pacific') - assert region=='NW_Pacific' - + region = wtk.region_selection((41.9, -125.3), preferred_region="Offshore_CA") + assert region == "Offshore_CA" + + region = wtk.region_selection((41.9, -125.3), preferred_region="NW_Pacific") + assert region == "NW_Pacific" + try: - region = wtk.region_selection((41.9,-125.3)) + region = wtk.region_selection((41.9, -125.3)) except TypeError: pass else: - assert False, 'Check wind_toolkit.region_selection() method for catching regional overlap' - - region = wtk.region_selection((36.3,-122.3), preferred_region='') - assert region=='Offshore_CA' - - region = wtk.region_selection((16.3,-155.3), preferred_region='') - assert region=='Hawaii' - - region = wtk.region_selection((45.3,-126.3), preferred_region='') - assert region=='NW_Pacific' - - region = wtk.region_selection((39.3,-70.3), preferred_region='') - assert region=='Mid_Atlantic' - + assert ( + False + ), "Check wind_toolkit.region_selection() method for catching regional overlap" + + region = wtk.region_selection((36.3, -122.3), preferred_region="") + assert region == "Offshore_CA" + + region = wtk.region_selection((16.3, -155.3), preferred_region="") + assert region == "Hawaii" + + region = wtk.region_selection((45.3, -126.3), preferred_region="") + assert region == "NW_Pacific" + + region = wtk.region_selection((39.3, -70.3), preferred_region="") + assert region == "Mid_Atlantic" + # test the check for multiple region def test_multi_region(self): - data_type = '1-hour' + data_type = "1-hour" years = [2012] - lat_lon = ((17.2,-156.5),(45.3,-126.3)) - parameters = ['temperature_20m'] + lat_lon = ((17.2, -156.5), (45.3, -126.3)) + parameters = ["temperature_20m"] try: data, meta = wtk.request_wtk_point_data( - data_type, parameters, - lat_lon, years) + data_type, parameters, lat_lon, years + ) except TypeError: pass else: - assert False, 'Check wind_toolkit.region_selection() method for catching requests over multiple regions' + assert ( + False + ), "Check wind_toolkit.region_selection() method for catching requests over multiple regions" # test plot_region() def test_plot_region(self): fig, ax1 = plt.subplots() - ax1 = wtk.plot_region('Mid_Atlantic',ax=ax1) - - ax2 = wtk.plot_region('NW_Pacific') - + ax1 = wtk.plot_region("Mid_Atlantic", ax=ax1) + + ax2 = wtk.plot_region("NW_Pacific") + # test elevation_to_string() def test_elevation_to_string(self): - - parameter = 'windspeed' + parameter = "windspeed" elevations = [20, 40, 60, 120, 180] parameter_list = wtk.elevation_to_string(parameter, elevations) - assert parameter_list==['windspeed_20m','windspeed_40m','windspeed_60m', - 'windspeed_120m','windspeed_180m'] - + assert parameter_list == [ + "windspeed_20m", + "windspeed_40m", + "windspeed_60m", + "windspeed_120m", + "windspeed_180m", + ] + -if __name__ == '__main__': +if __name__ == "__main__": unittest.main() diff --git a/mhkit/tests/wave/io/test_cdip.py b/mhkit/tests/wave/io/test_cdip.py index f42227329..b77958df6 100644 --- a/mhkit/tests/wave/io/test_cdip.py +++ b/mhkit/tests/wave/io/test_cdip.py @@ -1,66 +1,61 @@ -from os.path import abspath, dirname, join, isfile, normpath, relpath -from pandas.testing import assert_frame_equal -from numpy.testing import assert_allclose -from scipy.interpolate import interp1d -from random import seed, randint +from os.path import abspath, dirname, join, isfile, normpath import matplotlib.pylab as plt from datetime import datetime -import xarray.testing as xrt import mhkit.wave as wave -from io import StringIO -import pandas as pd -import numpy as np -import contextlib import unittest import netCDF4 -import inspect -import pickle -import time -import json -import sys +import pytz import os testdir = dirname(abspath(__file__)) -datadir = normpath(join(testdir,'..','..','..','..','examples','data','wave')) +datadir = normpath(join(testdir, "..", "..", "..", "..", "examples", "data", "wave")) class TestIOcdip(unittest.TestCase): - @classmethod def setUpClass(self): - b067_1996='http://thredds.cdip.ucsd.edu/thredds/dodsC/cdip/' + \ - 'archive/067p1/067p1_d04.nc' + b067_1996 = ( + "http://thredds.cdip.ucsd.edu/thredds/dodsC/cdip/" + + "archive/067p1/067p1_d04.nc" + ) self.test_nc = netCDF4.Dataset(b067_1996) - self.vars2D = [ 'waveEnergyDensity', 'waveMeanDirection', - 'waveA1Value', 'waveB1Value', 'waveA2Value', - 'waveB2Value', 'waveCheckFactor', 'waveSpread', - 'waveM2Value', 'waveN2Value'] + self.vars2D = [ + "waveEnergyDensity", + "waveMeanDirection", + "waveA1Value", + "waveB1Value", + "waveA2Value", + "waveB2Value", + "waveCheckFactor", + "waveSpread", + "waveM2Value", + "waveN2Value", + ] @classmethod def tearDownClass(self): pass def test_validate_date(self): - date='2013-11-12' + date = "2013-11-12" start_date = wave.io.cdip._validate_date(date) assert isinstance(start_date, datetime) - date='11-12-2012' + date = "11-12-2012" self.assertRaises(ValueError, wave.io.cdip._validate_date, date) def test_request_netCDF_historic(self): - station_number='067' - nc = wave.io.cdip.request_netCDF(station_number, 'historic') + station_number = "067" + nc = wave.io.cdip.request_netCDF(station_number, "historic") isinstance(nc, netCDF4.Dataset) def test_request_netCDF_realtime(self): - station_number='067' - nc = wave.io.cdip.request_netCDF(station_number, 'realtime') + station_number = "067" + nc = wave.io.cdip.request_netCDF(station_number, "realtime") isinstance(nc, netCDF4.Dataset) - def test_start_and_end_of_year(self): year = 2020 start_day, end_day = wave.io.cdip._start_and_end_of_year(year) @@ -68,121 +63,135 @@ def test_start_and_end_of_year(self): assert isinstance(start_day, datetime) assert isinstance(end_day, datetime) - expected_start = datetime(year,1,1) - expected_end = datetime(year,12,31) + expected_start = datetime(year, 1, 1) + expected_end = datetime(year, 12, 31) self.assertEqual(start_day, expected_start) self.assertEqual(end_day, expected_end) def test_dates_to_timestamp(self): + start_date = datetime(1996, 10, 2, tzinfo=pytz.UTC) + end_date = datetime(1996, 10, 20, tzinfo=pytz.UTC) - start_date='1996-10-02' - end_date='1996-10-20' + start_stamp, end_stamp = wave.io.cdip._dates_to_timestamp( + self.test_nc, start_date=start_date, end_date=end_date + ) - start_stamp, end_stamp = wave.io.cdip._dates_to_timestamp(self.test_nc, - start_date=start_date, end_date=end_date) + start_dt = datetime.utcfromtimestamp(start_stamp).replace(tzinfo=pytz.UTC) + end_dt = datetime.utcfromtimestamp(end_stamp).replace(tzinfo=pytz.UTC) - start_dt = datetime.utcfromtimestamp(start_stamp) - end_dt = datetime.utcfromtimestamp(end_stamp) - - self.assertTrue(start_dt.strftime('%Y-%m-%d') == start_date) - self.assertTrue(end_dt.strftime('%Y-%m-%d') == end_date) + self.assertEqual(start_dt, start_date) + self.assertEqual(end_dt, end_date) def test_get_netcdf_variables_all2Dvars(self): - data = wave.io.cdip.get_netcdf_variables(self.test_nc, - all_2D_variables=True) - returned_keys = [key for key in data['data']['wave2D'].keys()] - self.assertTrue( returned_keys == self.vars2D) + data = wave.io.cdip.get_netcdf_variables( + self.test_nc, all_2D_variables=True, to_pandas=False + ) + returned_keys = [key for key in data["data"]["wave2D"].keys()] + self.assertTrue(set(returned_keys) == set(self.vars2D)) def test_get_netcdf_variables_params(self): - parameters =['waveHs', 'waveTp','notParam', 'waveMeanDirection'] - data = wave.io.cdip.get_netcdf_variables(self.test_nc, - parameters=parameters) - - returned_keys_1D = [key for key in data['data']['wave'].keys()] - returned_keys_2D = [key for key in data['data']['wave2D'].keys()] - returned_keys_metadata = [key for key in data['metadata']['wave']] + parameters = ["waveHs", "waveTp", "notParam", "waveMeanDirection"] + data = wave.io.cdip.get_netcdf_variables(self.test_nc, parameters=parameters) - self.assertTrue( returned_keys_1D == ['waveHs', 'waveTp']) - self.assertTrue( returned_keys_2D == ['waveMeanDirection']) - self.assertTrue( returned_keys_metadata == ['waveFrequency']) + returned_keys_1D = set([key for key in data["data"]["wave"].keys()]) + returned_keys_2D = [key for key in data["data"]["wave2D"].keys()] + returned_keys_metadata = [key for key in data["metadata"]["wave"]] + self.assertTrue(returned_keys_1D == set(["waveHs", "waveTp"])) + self.assertTrue(returned_keys_2D == ["waveMeanDirection"]) + self.assertTrue(returned_keys_metadata == ["waveFrequency"]) def test_get_netcdf_variables_time_slice(self): - start_date='1996-10-01' - end_date='1996-10-31' + start_date = "1996-10-01" + end_date = "1996-10-31" - data = wave.io.cdip.get_netcdf_variables(self.test_nc, - start_date=start_date, end_date=end_date, - parameters='waveHs') + data = wave.io.cdip.get_netcdf_variables( + self.test_nc, start_date=start_date, end_date=end_date, parameters="waveHs" + ) - start_dt = datetime.strptime(start_date, '%Y-%m-%d') - end_dt = datetime.strptime(end_date, '%Y-%m-%d') - - self.assertTrue(data['data']['wave'].index[-1] < end_dt) - self.assertTrue(data['data']['wave'].index[0] > start_dt) + start_dt = datetime.strptime(start_date, "%Y-%m-%d") + end_dt = datetime.strptime(end_date, "%Y-%m-%d") + self.assertTrue(data["data"]["wave"].index[-1] < end_dt) + self.assertTrue(data["data"]["wave"].index[0] > start_dt) def test_request_parse_workflow_multiyear(self): - station_number = '067' - year1=2011 - year2=2013 + station_number = "067" + year1 = 2011 + year2 = 2013 years = [year1, year2] - parameters =['waveHs', 'waveMeanDirection', 'waveA1Value'] - data = wave.io.cdip.request_parse_workflow(station_number=station_number, - years=years, parameters =parameters ) - - expected_index0 = datetime(year1,1,1) - expected_index_final = datetime(year2,12,31) + parameters = ["waveHs", "waveMeanDirection", "waveA1Value"] + data = wave.io.cdip.request_parse_workflow( + station_number=station_number, years=years, parameters=parameters + ) - wave1D = data['data']['wave'] - self.assertEqual(wave1D.index[0].floor('d').to_pydatetime(), expected_index0) + expected_index0 = datetime(year1, 1, 1) + expected_index_final = datetime(year2, 12, 31) - self.assertEqual(wave1D.index[-1].floor('d').to_pydatetime(), expected_index_final) + wave1D = data["data"]["wave"] + self.assertEqual(wave1D.index[0].floor("d").to_pydatetime(), expected_index0) - for key,wave2D in data['data']['wave2D'].items(): - self.assertEqual(wave2D.index[0].floor('d').to_pydatetime(), expected_index0) - self.assertEqual(wave2D.index[-1].floor('d').to_pydatetime(), expected_index_final) + self.assertEqual( + wave1D.index[-1].floor("d").to_pydatetime(), expected_index_final + ) + for key, wave2D in data["data"]["wave2D"].items(): + self.assertEqual( + wave2D.index[0].floor("d").to_pydatetime(), expected_index0 + ) + self.assertEqual( + wave2D.index[-1].floor("d").to_pydatetime(), expected_index_final + ) def test_plot_boxplot(self): - filename = abspath(join(testdir, 'wave_plot_boxplot.png')) + filename = abspath(join(testdir, "wave_plot_boxplot.png")) if isfile(filename): os.remove(filename) - station_number = '067' + station_number = "067" year = 2011 - data = wave.io.cdip.request_parse_workflow(station_number=station_number,years=year, - parameters =['waveHs'], - all_2D_variables=False) + data = wave.io.cdip.request_parse_workflow( + station_number=station_number, + years=year, + parameters=["waveHs"], + all_2D_variables=False, + ) plt.figure() - wave.graphics.plot_boxplot(data['data']['wave']['waveHs']) - plt.savefig(filename, format='png') + wave.graphics.plot_boxplot(data["data"]["wave"]["waveHs"]) + plt.savefig(filename, format="png") plt.close() self.assertTrue(isfile(filename)) - + os.remove(filename) def test_plot_compendium(self): - filename = abspath(join(testdir, 'wave_plot_boxplot.png')) + filename = abspath(join(testdir, "wave_plot_boxplot.png")) if isfile(filename): os.remove(filename) - station_number = '067' + station_number = "067" year = 2011 - data = wave.io.cdip.request_parse_workflow(station_number=station_number,years=year, - parameters =['waveHs', 'waveTp', 'waveDp'], - all_2D_variables=False) + data = wave.io.cdip.request_parse_workflow( + station_number=station_number, + years=year, + parameters=["waveHs", "waveTp", "waveDp"], + all_2D_variables=False, + ) plt.figure() - wave.graphics.plot_compendium(data['data']['wave']['waveHs'], - data['data']['wave']['waveTp'], data['data']['wave']['waveDp'] ) - plt.savefig(filename, format='png') + wave.graphics.plot_compendium( + data["data"]["wave"]["waveHs"], + data["data"]["wave"]["waveTp"], + data["data"]["wave"]["waveDp"], + ) + plt.savefig(filename, format="png") plt.close() self.assertTrue(isfile(filename)) + os.remove(filename) -if __name__ == '__main__': +if __name__ == "__main__": unittest.main() diff --git a/mhkit/tests/wave/io/test_ndbc.py b/mhkit/tests/wave/io/test_ndbc.py index 444734824..aa5b86a96 100644 --- a/mhkit/tests/wave/io/test_ndbc.py +++ b/mhkit/tests/wave/io/test_ndbc.py @@ -5,6 +5,7 @@ import mhkit.wave as wave from io import StringIO import pandas as pd +import xarray as xr import numpy as np import contextlib import unittest @@ -12,38 +13,84 @@ testdir = dirname(abspath(__file__)) -datadir = normpath(join(testdir, '..', '..', '..', - '..', 'examples', 'data', 'wave')) +datadir = normpath(join(testdir, "..", "..", "..", "..", "examples", "data", "wave")) class TestIOndbc(unittest.TestCase): - @classmethod def setUpClass(self): - self.expected_columns_metRT = ['WDIR', 'WSPD', 'GST', 'WVHT', 'DPD', - 'APD', 'MWD', 'PRES', 'ATMP', 'WTMP', 'DEWP', 'VIS', 'PTDY', 'TIDE'] - self.expected_units_metRT = {'WDIR': 'degT', 'WSPD': 'm/s', 'GST': 'm/s', - 'WVHT': 'm', 'DPD': 'sec', 'APD': 'sec', 'MWD': 'degT', 'PRES': 'hPa', - 'ATMP': 'degC', 'WTMP': 'degC', 'DEWP': 'degC', 'VIS': 'nmi', - 'PTDY': 'hPa', 'TIDE': 'ft'} - - self.expected_columns_metH = ['WDIR', 'WSPD', 'GST', 'WVHT', 'DPD', - 'APD', 'MWD', 'PRES', 'ATMP', 'WTMP', 'DEWP', 'VIS', 'TIDE'] - self.expected_units_metH = {'WDIR': 'degT', 'WSPD': 'm/s', 'GST': 'm/s', - 'WVHT': 'm', 'DPD': 'sec', 'APD': 'sec', 'MWD': 'deg', 'PRES': 'hPa', - 'ATMP': 'degC', 'WTMP': 'degC', 'DEWP': 'degC', 'VIS': 'nmi', - 'TIDE': 'ft'} - self.filenames = ['46042w1996.txt.gz', - '46029w1997.txt.gz', - '46029w1998.txt.gz'] - self.swden = pd.read_csv(join(datadir, self.filenames[0]), sep=r'\s+', - compression='gzip') - - buoy = '42012' + self.expected_columns_metRT = [ + "WDIR", + "WSPD", + "GST", + "WVHT", + "DPD", + "APD", + "MWD", + "PRES", + "ATMP", + "WTMP", + "DEWP", + "VIS", + "PTDY", + "TIDE", + ] + self.expected_units_metRT = { + "WDIR": "degT", + "WSPD": "m/s", + "GST": "m/s", + "WVHT": "m", + "DPD": "sec", + "APD": "sec", + "MWD": "degT", + "PRES": "hPa", + "ATMP": "degC", + "WTMP": "degC", + "DEWP": "degC", + "VIS": "nmi", + "PTDY": "hPa", + "TIDE": "ft", + } + + self.expected_columns_metH = [ + "WDIR", + "WSPD", + "GST", + "WVHT", + "DPD", + "APD", + "MWD", + "PRES", + "ATMP", + "WTMP", + "DEWP", + "VIS", + "TIDE", + ] + self.expected_units_metH = { + "WDIR": "degT", + "WSPD": "m/s", + "GST": "m/s", + "WVHT": "m", + "DPD": "sec", + "APD": "sec", + "MWD": "deg", + "PRES": "hPa", + "ATMP": "degC", + "WTMP": "degC", + "DEWP": "degC", + "VIS": "nmi", + "TIDE": "ft", + } + self.filenames = ["46042w1996.txt.gz", "46029w1997.txt.gz", "46029w1998.txt.gz"] + self.swden = pd.read_csv( + join(datadir, self.filenames[0]), sep=r"\s+", compression="gzip" + ) + + buoy = "42012" year = 2021 - date = np.datetime64('2021-02-21T12:40:00') - directional_data_all = wave.io.ndbc.request_directional_data( - buoy, year) + date = np.datetime64("2021-02-21T12:40:00") + directional_data_all = wave.io.ndbc.request_directional_data(buoy, year) self.directional_data = directional_data_all.sel(date=date) @classmethod @@ -52,10 +99,9 @@ def tearDownClass(self): # Realtime data def test_ndbc_read_realtime_met(self): - data, units = wave.io.ndbc.read_file(join(datadir, '46097.txt')) + data, units = wave.io.ndbc.read_file(join(datadir, "46097.txt")) expected_index0 = datetime(2019, 4, 2, 13, 50) - self.assertSetEqual(set(data.columns), set( - self.expected_columns_metRT)) + self.assertSetEqual(set(data.columns), set(self.expected_columns_metRT)) self.assertEqual(data.index[0], expected_index0) self.assertEqual(data.shape, (6490, 14)) self.assertEqual(units, self.expected_units_metRT) @@ -63,8 +109,7 @@ def test_ndbc_read_realtime_met(self): # Historical data def test_ndbnc_read_historical_met(self): # QC'd monthly data, Aug 2019 - data, units = wave.io.ndbc.read_file( - join(datadir, '46097h201908qc.txt')) + data, units = wave.io.ndbc.read_file(join(datadir, "46097h201908qc.txt")) expected_index0 = datetime(2019, 8, 1, 0, 0) self.assertSetEqual(set(data.columns), set(self.expected_columns_metH)) self.assertEqual(data.index[0], expected_index0) @@ -73,86 +118,90 @@ def test_ndbnc_read_historical_met(self): # Spectral data def test_ndbc_read_spectral(self): - data, units = wave.io.ndbc.read_file(join(datadir, 'data.txt')) - self.assertEqual(data.shape, (743, 47)) + data, units = wave.io.ndbc.read_file(join(datadir, "data.txt"), to_pandas=False) + self.assertEqual(len(data.data_vars), 47) + self.assertEqual(len(data["dim_0"]), 743) self.assertEqual(units, None) # Continuous wind data def test_ndbc_read_cwind_no_units(self): - data, units = wave.io.ndbc.read_file(join(datadir, '42a01c2003.txt')) + data, units = wave.io.ndbc.read_file(join(datadir, "42a01c2003.txt")) self.assertEqual(data.shape, (4320, 5)) self.assertEqual(units, None) def test_ndbc_read_cwind_units(self): - data, units = wave.io.ndbc.read_file(join(datadir, '46002c2016.txt')) + data, units = wave.io.ndbc.read_file(join(datadir, "46002c2016.txt")) self.assertEqual(data.shape, (28468, 5)) - self.assertEqual(units, wave.io.ndbc.parameter_units('cwind')) + self.assertEqual(units, wave.io.ndbc.parameter_units("cwind")) def test_ndbc_available_data(self): - data = wave.io.ndbc.available_data('swden', buoy_number='46029') + data = wave.io.ndbc.available_data("swden", buoy_number="46029") cols = data.columns.tolist() - exp_cols = ['id', 'year', 'filename'] + exp_cols = ["id", "year", "filename"] self.assertEqual(cols, exp_cols) years = [int(year) for year in data.year.tolist()] - exp_years = [*range(1996, 1996+len(years))] + exp_years = [*range(1996, 1996 + len(years))] self.assertEqual(years, exp_years) self.assertEqual(data.shape, (len(data), 3)) def test__ndbc_parse_filenames(self): filenames = pd.Series(self.filenames) - buoys = wave.io.ndbc._parse_filenames('swden', filenames) + buoys = wave.io.ndbc._parse_filenames("swden", filenames) years = buoys.year.tolist() numbers = buoys.id.tolist() fnames = buoys.filename.tolist() self.assertEqual(buoys.shape, (len(filenames), 3)) - self.assertListEqual(years, ['1996', '1997', '1998']) - self.assertListEqual(numbers, ['46042', '46029', '46029']) + self.assertListEqual(years, ["1996", "1997", "1998"]) + self.assertListEqual(numbers, ["46042", "46029", "46029"]) self.assertListEqual(fnames, self.filenames) def test_ndbc_request_data(self): filenames = pd.Series(self.filenames[0]) - ndbc_data = wave.io.ndbc.request_data('swden', filenames) - self.assertTrue(self.swden.equals(ndbc_data['1996'])) + ndbc_data = wave.io.ndbc.request_data("swden", filenames, to_pandas=False) + self.assertTrue(xr.Dataset(self.swden).equals(ndbc_data["1996"])) def test_ndbc_request_data_from_dataframe(self): filenames = pd.DataFrame(pd.Series(data=self.filenames[0])) - ndbc_data = wave.io.ndbc.request_data('swden', filenames) - assert_frame_equal(self.swden, ndbc_data['1996']) + ndbc_data = wave.io.ndbc.request_data("swden", filenames) + assert_frame_equal(self.swden, ndbc_data["1996"]) def test_ndbc_request_data_filenames_length(self): - with self.assertRaises(AssertionError): - wave.io.ndbc.request_data('swden', pd.Series(dtype=float)) + with self.assertRaises(ValueError): + wave.io.ndbc.request_data("swden", pd.Series(dtype=float)) def test_ndbc_to_datetime_index(self): - dt = wave.io.ndbc.to_datetime_index('swden', self.swden) + dt = wave.io.ndbc.to_datetime_index("swden", self.swden) self.assertEqual(type(dt.index), pd.DatetimeIndex) - self.assertFalse({'YY', 'MM', 'DD', 'hh'}.issubset(dt.columns)) + self.assertFalse({"YY", "MM", "DD", "hh"}.issubset(dt.columns)) def test_ndbc_request_data_empty_file(self): temp_stdout = StringIO() # known empty file. If NDBC replaces, this test may fail. filename = "42008h1984.txt.gz" - buoy_id = '42008' - year = '1984' + buoy_id = "42008" + year = "1984" with contextlib.redirect_stdout(temp_stdout): - wave.io.ndbc.request_data('stdmet', pd.Series(filename)) + wave.io.ndbc.request_data("stdmet", pd.Series(filename)) output = temp_stdout.getvalue().strip() - msg = (f'The NDBC buoy {buoy_id} for year {year} with ' - f'filename {filename} is empty or missing ' - 'data. Please omit this file from your data ' - 'request in the future.') + msg = ( + f"The NDBC buoy {buoy_id} for year {year} with " + f"filename {filename} is empty or missing " + "data. Please omit this file from your data " + "request in the future." + ) self.assertEqual(output, msg) def test_ndbc_request_multiple_files_with_empty_file(self): temp_stdout = StringIO() # known empty file. If NDBC replaces, this test may fail. - empty_file = '42008h1984.txt.gz' - working_file = '46042h1996.txt.gz' + empty_file = "42008h1984.txt.gz" + working_file = "46042h1996.txt.gz" filenames = pd.Series([empty_file, working_file]) + with contextlib.redirect_stdout(temp_stdout): - ndbc_data = wave.io.ndbc.request_data('stdmet', filenames) + ndbc_data = wave.io.ndbc.request_data("stdmet", filenames) self.assertEqual(1, len(ndbc_data)) def test_ndbc_dates_to_datetime(self): @@ -161,19 +210,18 @@ def test_ndbc_dates_to_datetime(self): def test_ndbc_date_string_to_datetime(self): swden = self.swden.copy(deep=True) - swden['mm'] = np.zeros(len(swden)).astype(int).astype(str) - year_string = 'YY' - year_fmt = '%y' - parse_columns = [year_string, 'MM', 'DD', 'hh', 'mm'] - df = wave.io.ndbc._date_string_to_datetime(swden, parse_columns, - year_fmt) - dt = df['date'] + swden["mm"] = np.zeros(len(swden)).astype(int).astype(str) + year_string = "YY" + year_fmt = "%y" + parse_columns = [year_string, "MM", "DD", "hh", "mm"] + df = wave.io.ndbc._date_string_to_datetime(swden, parse_columns, year_fmt) + dt = df["date"] self.assertEqual(datetime(1996, 1, 1, 1, 0), dt[1]) def test_ndbc_parameter_units(self): - parameter = 'swden' + parameter = "swden" units = wave.io.ndbc.parameter_units(parameter) - self.assertEqual(units[parameter], '(m*m)/Hz') + self.assertEqual(units[parameter], "(m*m)/Hz") def test_ndbc_request_directional_data(self): data = self.directional_data @@ -189,31 +237,33 @@ def test_ndbc_request_directional_data(self): def test_ndbc_create_spread_function(self): directions = np.arange(0, 360, 2.0) - spread = wave.io.ndbc.create_spread_function( - self.directional_data, directions) + spread = wave.io.ndbc.create_spread_function(self.directional_data, directions) self.assertEqual(spread.shape, (47, 180)) - self.assertEqual(spread.units, '1/Hz/deg') + self.assertEqual(spread.units, "1/Hz/deg") def test_ndbc_create_directional_spectrum(self): directions = np.arange(0, 360, 2.0) spectrum = wave.io.ndbc.create_directional_spectrum( - self.directional_data, directions) + self.directional_data, directions + ) self.assertEqual(spectrum.shape, (47, 180)) - self.assertEqual(spectrum.units, 'm^2/Hz/deg') + self.assertEqual(spectrum.units, "m^2/Hz/deg") def test_plot_directional_spectrum(self): directions = np.arange(0, 360, 2.0) spectrum = wave.io.ndbc.create_spread_function( - self.directional_data, directions) + self.directional_data, directions + ) wave.graphics.plot_directional_spectrum( spectrum, - min=0.0, + color_level_min=0.0, fill=True, nlevels=6, name="Elevation Variance", - units="m^2") + units="m^2", + ) - filename = abspath(join(testdir, 'wave_plot_directional_spectrum.png')) + filename = abspath(join(testdir, "wave_plot_directional_spectrum.png")) if isfile(filename): os.remove(filename) plt.savefig(filename) @@ -224,27 +274,28 @@ def test_plot_directional_spectrum(self): def test_get_buoy_metadata(self): metadata = wave.io.ndbc.get_buoy_metadata("46042") expected_keys = { - 'buoy', - 'provider', - 'type', - 'SCOOP payload', - 'lat', - 'lon', - 'Site elevation', - 'Air temp height', - 'Anemometer height', - 'Barometer elevation', - 'Sea temp depth', - 'Water depth', - 'Watch circle radius' + "buoy", + "provider", + "type", + "SCOOP payload", + "lat", + "lon", + "Site elevation", + "Air temp height", + "Anemometer height", + "Barometer elevation", + "Sea temp depth", + "Water depth", + "Watch circle radius", } self.assertSetEqual(set(metadata.keys()), expected_keys) self.assertEqual( - metadata['provider'], 'Owned and maintained by National Data Buoy Center') - self.assertEqual(metadata['type'], '3-meter foam buoy w/ seal cage') - self.assertAlmostEqual(float(metadata['lat']), 36.785) - self.assertAlmostEqual(float(metadata['lon']), 122.396) - self.assertEqual(metadata['Site elevation'], 'sea level') + metadata["provider"], "Owned and maintained by National Data Buoy Center" + ) + self.assertEqual(metadata["type"], "3-meter foam buoy w/ seal cage") + self.assertAlmostEqual(float(metadata["lat"]), 36.785) + self.assertAlmostEqual(float(metadata["lon"]), 122.396) + self.assertEqual(metadata["Site elevation"], "sea level") def test_get_buoy_metadata_invalid_station(self): with self.assertRaises(ValueError): @@ -255,5 +306,5 @@ def test_get_buoy_metadata_nonexistent_station(self): wave.io.ndbc.get_buoy_metadata("99999") -if __name__ == '__main__': +if __name__ == "__main__": unittest.main() diff --git a/mhkit/tests/wave/io/test_swan.py b/mhkit/tests/wave/io/test_swan.py index c3e113d81..6388bac2b 100644 --- a/mhkit/tests/wave/io/test_swan.py +++ b/mhkit/tests/wave/io/test_swan.py @@ -9,6 +9,7 @@ import mhkit.wave as wave from io import StringIO import pandas as pd +import xarray as xr import numpy as np import contextlib import unittest @@ -22,19 +23,22 @@ testdir = dirname(abspath(__file__)) -datadir = normpath(join(testdir,'..','..','..','..','examples','data','wave')) +datadir = normpath(join(testdir, "..", "..", "..", "..", "examples", "data", "wave")) class TestSWAN(unittest.TestCase): - @classmethod def setUpClass(self): - swan_datadir = join(datadir,'swan') - self.table_file = join(swan_datadir,'SWANOUT.DAT') - self.swan_block_mat_file = join(swan_datadir,'SWANOUT.MAT') - self.swan_block_txt_file = join(swan_datadir,'SWANOUTBlock.DAT') - self.expected_table = pd.read_csv(self.table_file, sep='\s+', comment='%', - names=['Xp', 'Yp', 'Hsig', 'Dir', 'RTpeak', 'TDir']) + swan_datadir = join(datadir, "swan") + self.table_file = join(swan_datadir, "SWANOUT.DAT") + self.swan_block_mat_file = join(swan_datadir, "SWANOUT.MAT") + self.swan_block_txt_file = join(swan_datadir, "SWANOUTBlock.DAT") + self.expected_table = pd.read_csv( + self.table_file, + sep="\s+", + comment="%", + names=["Xp", "Yp", "Hsig", "Dir", "RTpeak", "TDir"], + ) @classmethod def tearDownClass(self): @@ -45,39 +49,49 @@ def test_read_table(self): assert_frame_equal(self.expected_table, swan_table) def test_read_block_mat(self): - swanBlockMat, metaDataMat = wave.io.swan.read_block(self.swan_block_mat_file ) + swanBlockMat, metaDataMat = wave.io.swan.read_block(self.swan_block_mat_file) self.assertEqual(len(swanBlockMat), 4) - self.assertAlmostEqual(self.expected_table['Hsig'].sum(), - swanBlockMat['Hsig'].sum().sum(), places=1) + self.assertAlmostEqual( + self.expected_table["Hsig"].sum(), + swanBlockMat["Hsig"].sum().sum(), + places=1, + ) def test_read_block_txt(self): swanBlockTxt, metaData = wave.io.swan.read_block(self.swan_block_txt_file) self.assertEqual(len(swanBlockTxt), 4) - sumSum = swanBlockTxt['Significant wave height'].sum().sum() - self.assertAlmostEqual(self.expected_table['Hsig'].sum(), - sumSum, places=-2) + sumSum = swanBlockTxt["Significant wave height"].sum().sum() + self.assertAlmostEqual(self.expected_table["Hsig"].sum(), sumSum, places=-2) + + def test_read_block_txt_xarray(self): + swanBlockTxt, metaData = wave.io.swan.read_block( + self.swan_block_txt_file, to_pandas=False + ) + self.assertEqual(len(swanBlockTxt), 4) + sumSum = swanBlockTxt["Significant wave height"].sum().sum() + self.assertAlmostEqual(self.expected_table["Hsig"].sum(), sumSum, places=-2) def test_block_to_table(self): - x=np.arange(5) - y=np.arange(5,10) - df = pd.DataFrame(np.random.rand(5,5), columns=x, index=y) + x = np.arange(5) + y = np.arange(5, 10) + df = pd.DataFrame(np.random.rand(5, 5), columns=x, index=y) dff = wave.io.swan.block_to_table(df) - self.assertEqual(dff.shape, (len(x)*len(y), 3)) + self.assertEqual(dff.shape, (len(x) * len(y), 3)) self.assertTrue(all(dff.x.unique() == np.unique(x))) def test_dictionary_of_block_to_table(self): - x=np.arange(5) - y=np.arange(5,10) - df = pd.DataFrame(np.random.rand(5,5), columns=x, index=y) - keys = ['data1', 'data2'] + x = np.arange(5) + y = np.arange(5, 10) + df = pd.DataFrame(np.random.rand(5, 5), columns=x, index=y) + keys = ["data1", "data2"] data = [df, df] - dict_of_dfs = dict(zip(keys,data)) + dict_of_dfs = dict(zip(keys, data)) dff = wave.io.swan.dictionary_of_block_to_table(dict_of_dfs) - self.assertEqual(dff.shape, (len(x)*len(y), 2+len(keys))) + self.assertEqual(dff.shape, (len(x) * len(y), 2 + len(keys))) self.assertTrue(all(dff.x.unique() == np.unique(x))) for key in keys: self.assertTrue(key in dff.keys()) -if __name__ == '__main__': +if __name__ == "__main__": unittest.main() diff --git a/mhkit/tests/wave/io/test_wecsim.py b/mhkit/tests/wave/io/test_wecsim.py index 3c070458c..52df214b9 100644 --- a/mhkit/tests/wave/io/test_wecsim.py +++ b/mhkit/tests/wave/io/test_wecsim.py @@ -22,11 +22,10 @@ testdir = dirname(abspath(__file__)) -datadir = normpath(join(testdir,'..','..','..','..','examples','data','wave')) +datadir = normpath(join(testdir, "..", "..", "..", "..", "examples", "data", "wave")) class TestWECSim(unittest.TestCase): - @classmethod def setUpClass(self): pass @@ -37,52 +36,61 @@ def tearDownClass(self): ### WEC-Sim data, no mooring def test_read_wecSim_no_mooring(self): - ws_output = wave.io.wecsim.read_output(join(datadir, 'RM3_matlabWorkspace_structure.mat')) - self.assertEqual(ws_output['wave'].elevation.name,'elevation') - self.assertEqual(ws_output['bodies']['body1'].name,'float') - self.assertEqual(ws_output['ptos'].name,'PTO1') - self.assertEqual(ws_output['constraints'].name,'Constraint1') - self.assertEqual(len(ws_output['mooring']),0) - self.assertEqual(len(ws_output['moorDyn']),0) - self.assertEqual(len(ws_output['ptosim']),0) - self.assertEqual(len(ws_output['cables']),0) - + ws_output = wave.io.wecsim.read_output( + join(datadir, "RM3_matlabWorkspace_structure.mat") + ) + self.assertEqual(ws_output["wave"].elevation.name, "elevation") + self.assertEqual(ws_output["bodies"]["body1"].name, "float") + self.assertEqual(ws_output["ptos"].name, "PTO1") + self.assertEqual(ws_output["constraints"].name, "Constraint1") + self.assertEqual(len(ws_output["mooring"]), 0) + self.assertEqual(len(ws_output["moorDyn"]), 0) + self.assertEqual(len(ws_output["ptosim"]), 0) + self.assertEqual(len(ws_output["cables"]), 0) + ### WEC-Sim data, with cable def test_read_wecSim_cable(self): - ws_output = wave.io.wecsim.read_output(join(datadir, 'Cable_matlabWorkspace_structure.mat')) - self.assertEqual(ws_output['wave'].elevation.name,'elevation') - self.assertEqual(ws_output['bodies']['body1'].name,'BuoyDraft5cm') - self.assertEqual(ws_output['cables'].name,'Cable') - self.assertEqual(ws_output['constraints']['constraint1'].name,'Mooring') - self.assertEqual(len(ws_output['mooring']),0) - self.assertEqual(len(ws_output['moorDyn']),0) - self.assertEqual(len(ws_output['ptosim']),0) - self.assertEqual(len(ws_output['ptos']),0) + ws_output = wave.io.wecsim.read_output( + join(datadir, "Cable_matlabWorkspace_structure.mat"), + to_pandas=False, + ) + self.assertEqual(ws_output["wave"]["elevation"].name, "elevation") + self.assertEqual( + ws_output["bodies"]["body1"]["position_dof1"].name, "position_dof1" + ) + self.assertEqual(len(ws_output["mooring"]), 0) + self.assertEqual(len(ws_output["moorDyn"]), 0) + self.assertEqual(len(ws_output["ptosim"]), 0) + self.assertEqual(len(ws_output["ptos"]), 0) ### WEC-Sim data, with mooring def test_read_wecSim_with_mooring(self): - ws_output = wave.io.wecsim.read_output(join(datadir, 'RM3MooringMatrix_matlabWorkspace_structure.mat')) - self.assertEqual(ws_output['wave'].elevation.name,'elevation') - self.assertEqual(ws_output['bodies']['body1'].name,'float') - self.assertEqual(ws_output['ptos'].name,'PTO1') - self.assertEqual(ws_output['constraints'].name,'Constraint1') - self.assertEqual(len(ws_output['mooring']),40001) - self.assertEqual(len(ws_output['moorDyn']),0) - self.assertEqual(len(ws_output['ptosim']),0) - self.assertEqual(len(ws_output['cables']),0) + ws_output = wave.io.wecsim.read_output( + join(datadir, "RM3MooringMatrix_matlabWorkspace_structure.mat") + ) + self.assertEqual(ws_output["wave"].elevation.name, "elevation") + self.assertEqual(ws_output["bodies"]["body1"].name, "float") + self.assertEqual(ws_output["ptos"].name, "PTO1") + self.assertEqual(ws_output["constraints"].name, "Constraint1") + self.assertEqual(len(ws_output["mooring"]), 40001) + self.assertEqual(len(ws_output["moorDyn"]), 0) + self.assertEqual(len(ws_output["ptosim"]), 0) + self.assertEqual(len(ws_output["cables"]), 0) ### WEC-Sim data, with moorDyn def test_read_wecSim_with_moorDyn(self): - ws_output = wave.io.wecsim.read_output(join(datadir, 'RM3MoorDyn_matlabWorkspace_structure.mat')) - self.assertEqual(ws_output['wave'].elevation.name,'elevation') - self.assertEqual(ws_output['bodies']['body1'].name,'float') - self.assertEqual(ws_output['ptos'].name,'PTO1') - self.assertEqual(ws_output['constraints'].name,'Constraint1') - self.assertEqual(len(ws_output['mooring']),40001) - self.assertEqual(len(ws_output['moorDyn']),7) - self.assertEqual(len(ws_output['ptosim']),0) - self.assertEqual(len(ws_output['cables']),0) + ws_output = wave.io.wecsim.read_output( + join(datadir, "RM3MoorDyn_matlabWorkspace_structure.mat") + ) + self.assertEqual(ws_output["wave"].elevation.name, "elevation") + self.assertEqual(ws_output["bodies"]["body1"].name, "float") + self.assertEqual(ws_output["ptos"].name, "PTO1") + self.assertEqual(ws_output["constraints"].name, "Constraint1") + self.assertEqual(len(ws_output["mooring"]), 40001) + self.assertEqual(len(ws_output["moorDyn"]), 7) + self.assertEqual(len(ws_output["ptosim"]), 0) + self.assertEqual(len(ws_output["cables"]), 0) -if __name__ == '__main__': +if __name__ == "__main__": unittest.main() diff --git a/mhkit/tests/wave/test_contours.py b/mhkit/tests/wave/test_contours.py index fab2f828a..b0281665d 100644 --- a/mhkit/tests/wave/test_contours.py +++ b/mhkit/tests/wave/test_contours.py @@ -1,241 +1,545 @@ from os.path import abspath, dirname, join, isfile, normpath, relpath -from pandas.testing import assert_frame_equal from numpy.testing import assert_allclose -from scipy.interpolate import interp1d -from random import seed, randint import matplotlib.pylab as plt -from datetime import datetime -import xarray.testing as xrt import mhkit.wave as wave -from io import StringIO import pandas as pd import numpy as np -import contextlib +import warnings import unittest -import netCDF4 -import inspect import pickle -import time import json -import sys import os testdir = dirname(abspath(__file__)) -plotdir = join(testdir, 'plots') +plotdir = join(testdir, "plots") isdir = os.path.isdir(plotdir) -if not isdir: os.mkdir(plotdir) -datadir = normpath(join(testdir,relpath('../../../examples/data/wave'))) +if not isdir: + os.mkdir(plotdir) +datadir = normpath(join(testdir, relpath("../../../examples/data/wave"))) class TestContours(unittest.TestCase): - @classmethod def setUpClass(self): + f_name = "Hm0_Te_46022.json" + self.Hm0Te = pd.read_json(join(datadir, f_name)) - f_name= 'Hm0_Te_46022.json' - self.Hm0Te = pd.read_json(join(datadir,f_name)) - - file_loc=join(datadir, 'principal_component_analysis.pkl') - with open(file_loc, 'rb') as f: + file_loc = join(datadir, "principal_component_analysis.pkl") + with open(file_loc, "rb") as f: self.pca = pickle.load(f) f.close() - file_loc=join(datadir,'WDRT_caluculated_countours.json') + file_loc = join(datadir, "WDRT_caluculated_countours.json") with open(file_loc) as f: self.wdrt_copulas = json.load(f) f.close() - ndbc_46050=pd.read_csv(join(datadir,'NDBC46050.csv')) - self.wdrt_Hm0 = ndbc_46050['Hm0'] - self.wdrt_Te = ndbc_46050['Te'] + ndbc_46050 = pd.read_csv(join(datadir, "NDBC46050.csv")) + self.wdrt_Hm0 = ndbc_46050["Hm0"] + self.wdrt_Te = ndbc_46050["Te"] - self.wdrt_dt=3600 - self.wdrt_period= 50 + self.wdrt_dt = 3600 + self.wdrt_period = 50 @classmethod def tearDownClass(self): pass def test_environmental_contour(self): - Hm0Te = self.Hm0Te - df = Hm0Te[Hm0Te['Hm0'] < 20] + df = Hm0Te[Hm0Te["Hm0"] < 20] Hm0 = df.Hm0.values Te = df.Te.values - dt_ss = (Hm0Te.index[2]-Hm0Te.index[1]).seconds + dt_ss = (Hm0Te.index[2] - Hm0Te.index[1]).seconds period = 100 - copula = wave.contours.environmental_contours(Hm0, - Te, dt_ss, period, 'PCA') + copula = wave.contours.environmental_contours(Hm0, Te, dt_ss, period, "PCA") - Hm0_contour=copula['PCA_x1'] - Te_contour=copula['PCA_x2'] + Hm0_contour = copula["PCA_x1"] + Te_contour = copula["PCA_x2"] - file_loc=join(datadir,'Hm0_Te_contours_46022.csv') + file_loc = join(datadir, "Hm0_Te_contours_46022.csv") expected_contours = pd.read_csv(file_loc) - assert_allclose(expected_contours.Hm0_contour.values, - Hm0_contour, rtol=1e-3) + assert_allclose(expected_contours.Hm0_contour.values, Hm0_contour, rtol=1e-3) + + def test_environmental_contours_invalid_inputs(self): + # Invalid x1 tests + x1_non_numeric = "not an array" + with self.assertRaises(TypeError): + wave.contours.environmental_contours( + x1_non_numeric, self.wdrt_Te, 3600, 50, "PCA" + ) + + x1_scalar = 5 + with self.assertRaises(TypeError): + wave.contours.environmental_contours( + x1_scalar, self.wdrt_Te, 3600, 50, "PCA" + ) + + # Invalid x2 tests + x2_non_numeric = "not an array" + with self.assertRaises(TypeError): + wave.contours.environmental_contours( + self.wdrt_Hm0, x2_non_numeric, 3600, 50, "PCA" + ) + + x2_scalar = 10 + with self.assertRaises(TypeError): + wave.contours.environmental_contours( + self.wdrt_Hm0, x2_scalar, 3600, 50, "PCA" + ) + + # Unequal lengths of x1 and x2 + x2_unequal_length = self.wdrt_Te[:-1] + with self.assertRaises(ValueError): + wave.contours.environmental_contours( + self.wdrt_Hm0, x2_unequal_length, 3600, 50, "PCA" + ) + + # Invalid sea_state_duration tests + invalid_sea_state_duration_string = "one hour" + with self.assertRaises(TypeError): + wave.contours.environmental_contours( + self.wdrt_Hm0, + self.wdrt_Te, + invalid_sea_state_duration_string, + 50, + "PCA", + ) + + invalid_sea_state_duration_list = [3600] + with self.assertRaises(TypeError): + wave.contours.environmental_contours( + self.wdrt_Hm0, self.wdrt_Te, invalid_sea_state_duration_list, 50, "PCA" + ) + + # Invalid return_period tests + invalid_return_period_string = "fifty years" + with self.assertRaises(TypeError): + wave.contours.environmental_contours( + self.wdrt_Hm0, self.wdrt_Te, 3600, invalid_return_period_string, "PCA" + ) + + invalid_return_period_list = [50] + with self.assertRaises(TypeError): + wave.contours.environmental_contours( + self.wdrt_Hm0, self.wdrt_Te, 3600, invalid_return_period_list, "PCA" + ) + + # Invalid method tests + invalid_method = 123 + with self.assertRaises(TypeError): + wave.contours.environmental_contours( + self.wdrt_Hm0, self.wdrt_Te, 3600, 50, invalid_method + ) + + invalid_bin_val_size = "not a number" + with self.assertRaises(TypeError): + wave.contours.environmental_contours( + self.wdrt_Hm0, + self.wdrt_Te, + 3600, + 50, + "PCA", + bin_val_size=invalid_bin_val_size, + ) + + invalid_nb_steps = 100.5 + with self.assertRaises(TypeError): + wave.contours.environmental_contours( + self.wdrt_Hm0, self.wdrt_Te, 3600, 50, "PCA", nb_steps=invalid_nb_steps + ) + + invalid_initial_bin_max_val = "not a number" + with self.assertRaises(TypeError): + wave.contours.environmental_contours( + self.wdrt_Hm0, + self.wdrt_Te, + 3600, + 50, + "PCA", + initial_bin_max_val=invalid_initial_bin_max_val, + ) + + invalid_min_bin_count = 40.5 + with self.assertRaises(TypeError): + wave.contours.environmental_contours( + self.wdrt_Hm0, + self.wdrt_Te, + 3600, + 50, + "PCA", + min_bin_count=invalid_min_bin_count, + ) + + with self.assertRaises(TypeError): + wave.contours.environmental_contours( + self.wdrt_Hm0, self.wdrt_Te, 3600, 50, "bivariate_KDE" + ) + + invalid_PCA = "not a dict" + with self.assertRaises(TypeError): + wave.contours.environmental_contours( + self.wdrt_Hm0, self.wdrt_Te, 3600, 50, "PCA", PCA=invalid_PCA + ) + + invalid_PCA_bin_size = "not an int" + with self.assertRaises(TypeError): + wave.contours.environmental_contours( + self.wdrt_Hm0, + self.wdrt_Te, + 3600, + 50, + "PCA", + PCA_bin_size=invalid_PCA_bin_size, + ) + + invalid_return_fit = "not a boolean" + with self.assertRaises(TypeError): + wave.contours.environmental_contours( + self.wdrt_Hm0, + self.wdrt_Te, + 3600, + 50, + "PCA", + return_fit=invalid_return_fit, + ) + + invalid_Ndata_bivariate_KDE = "not a number" + with self.assertRaises(TypeError): + wave.contours.environmental_contours( + self.wdrt_Hm0, + self.wdrt_Te, + 3600, + 50, + "bivariate_KDE", + Ndata_bivariate_KDE=invalid_Ndata_bivariate_KDE, + ) + + invalid_max_x1 = "not a number" + with self.assertRaises(TypeError): + wave.contours.environmental_contours( + self.wdrt_Hm0, self.wdrt_Te, 3600, 50, "PCA", max_x1=invalid_max_x1 + ) + + invalid_max_x2 = "not a number" + with self.assertRaises(TypeError): + wave.contours.environmental_contours( + self.wdrt_Hm0, self.wdrt_Te, 3600, 50, "PCA", max_x2=invalid_max_x2 + ) + + invalid_bandwidth = "not a number" + with self.assertRaises(TypeError): + wave.contours.environmental_contours( + self.wdrt_Hm0, + self.wdrt_Te, + 3600, + 50, + "bivariate_KDE", + bandwidth=invalid_bandwidth, + ) + + def test_PCA_contours_invalid_inputs(self): + Hm0Te = self.Hm0Te + df = Hm0Te[Hm0Te["Hm0"] < 20] + + Hm0 = df.Hm0.values + Te = df.Te.values + + dt_ss = (Hm0Te.index[2] - Hm0Te.index[1]).seconds + period = 100 + + copula = wave.contours.environmental_contours( + Hm0, Te, dt_ss, period, "PCA", return_fit=True + ) + + PCA_args = { + "nb_steps": 1000, + "return_fit": False, + "bin_size": 250, + } + + # Invalid x1 tests + x1_non_numeric = "not an array" + with self.assertRaises(TypeError): + wave.contours.PCA_contour( + x1_non_numeric, self.wdrt_Te, copula["PCA_fit"], PCA_args + ) + + x1_scalar = 5 + with self.assertRaises(TypeError): + wave.contours.PCA_contour( + x1_scalar, self.wdrt_Te, copula["PCA_fit"], PCA_args + ) + + # Invalid x2 tests + x2_non_numeric = "not an array" + with self.assertRaises(TypeError): + wave.contours.PCA_contour( + self.wdrt_Hm0, x2_non_numeric, copula["PCA_fit"], PCA_args + ) + + x2_scalar = 10 + with self.assertRaises(TypeError): + wave.contours.PCA_contour( + self.wdrt_Hm0, x2_scalar, copula["PCA_fit"], PCA_args + ) + + # Unequal lengths of x1 and x2 + x2_unequal_length = self.wdrt_Te[:-1] + with self.assertRaises(ValueError): + wave.contours.PCA_contour( + self.wdrt_Hm0, x2_unequal_length, copula["PCA_fit"], PCA_args + ) def test__principal_component_analysis(self): Hm0Te = self.Hm0Te - df = Hm0Te[Hm0Te['Hm0'] < 20] + df = Hm0Te[Hm0Te["Hm0"] < 20] + + Hm0 = df.Hm0.values + Te = df.Te.values + PCA = wave.contours._principal_component_analysis(Hm0, Te, bin_size=250) + + assert_allclose(PCA["principal_axes"], self.pca["principal_axes"]) + self.assertAlmostEqual(PCA["shift"], self.pca["shift"]) + self.assertAlmostEqual(PCA["x1_fit"]["mu"], self.pca["x1_fit"]["mu"]) + self.assertAlmostEqual(PCA["mu_fit"].slope, self.pca["mu_fit"].slope) + self.assertAlmostEqual(PCA["mu_fit"].intercept, self.pca["mu_fit"].intercept) + assert_allclose(PCA["sigma_fit"]["x"], self.pca["sigma_fit"]["x"]) + + def test__principal_component_analysis_invalid_inputs(self): + x1_valid = np.array([1, 2, 3]) + x2_valid = np.array([1, 2, 3]) + + # Test invalid x1 (non-array input) + x1_non_array = "not an array" + with self.assertRaises(TypeError): + wave.contours._principal_component_analysis(x1_non_array, x2_valid) + + # Test invalid x2 (non-array input) + x2_non_array = "not an array" + with self.assertRaises(TypeError): + wave.contours._principal_component_analysis(x1_valid, x2_non_array) + + # Test invalid bin_size (non-integer input) + invalid_bin_size = "not an integer" + with self.assertRaises(TypeError): + wave.contours._principal_component_analysis( + x1_valid, x2_valid, bin_size=invalid_bin_size + ) + + def test_principal_component_analysis_bin_size_adjustment_warning(self): + Hm0Te = self.Hm0Te + df = Hm0Te[Hm0Te["Hm0"] < 20] Hm0 = df.Hm0.values Te = df.Te.values - PCA = (wave.contours - ._principal_component_analysis(Hm0,Te, bin_size=250)) - - assert_allclose(PCA['principal_axes'], - self.pca['principal_axes']) - self.assertAlmostEqual(PCA['shift'], self.pca['shift']) - self.assertAlmostEqual(PCA['x1_fit']['mu'], - self.pca['x1_fit']['mu']) - self.assertAlmostEqual(PCA['mu_fit'].slope, - self.pca['mu_fit'].slope) - self.assertAlmostEqual(PCA['mu_fit'].intercept, - self.pca['mu_fit'].intercept) - assert_allclose(PCA['sigma_fit']['x'], - self.pca['sigma_fit']['x']) + + large_bin_size = 1000000 + + with warnings.catch_warnings(record=True) as w: + warnings.simplefilter("always") # Cause all warnings to always be triggered + wave.contours._principal_component_analysis( + Hm0, Te, bin_size=large_bin_size + ) + + self.assertTrue(len(w) == 1) # Check that exactly one warning was raised + self.assertTrue( + issubclass(w[-1].category, UserWarning) + ) # Check the warning category + self.assertIn( + "To allow for a minimum of 4 bins, the bin size has been set to", + str(w[-1].message), + ) def test_plot_environmental_contour(self): - file_loc= join(plotdir, 'wave_plot_environmental_contour.png') + file_loc = join(plotdir, "wave_plot_environmental_contour.png") filename = abspath(file_loc) if isfile(filename): os.remove(filename) Hm0Te = self.Hm0Te - df = Hm0Te[Hm0Te['Hm0'] < 20] + df = Hm0Te[Hm0Te["Hm0"] < 20] Hm0 = df.Hm0.values Te = df.Te.values - dt_ss = (Hm0Te.index[2]-Hm0Te.index[1]).seconds + dt_ss = (Hm0Te.index[2] - Hm0Te.index[1]).seconds time_R = 100 - copulas = wave.contours.environmental_contours(Hm0, Te, dt_ss, - time_R, 'PCA') + copulas = wave.contours.environmental_contours(Hm0, Te, dt_ss, time_R, "PCA") - Hm0_contour=copulas['PCA_x1'] - Te_contour=copulas['PCA_x2'] + Hm0_contour = copulas["PCA_x1"] + Te_contour = copulas["PCA_x2"] - dt_ss = (Hm0Te.index[2]-Hm0Te.index[1]).seconds + dt_ss = (Hm0Te.index[2] - Hm0Te.index[1]).seconds time_R = 100 plt.figure() - (wave.graphics - .plot_environmental_contour(Te, Hm0, - Te_contour, Hm0_contour, - data_label='NDBC 46022', - contour_label='100-year Contour', - x_label = 'Te [s]', - y_label = 'Hm0 [m]') + ( + wave.graphics.plot_environmental_contour( + Te, + Hm0, + Te_contour, + Hm0_contour, + data_label="NDBC 46022", + contour_label="100-year Contour", + x_label="Te [s]", + y_label="Hm0 [m]", + ) ) - plt.savefig(filename, format='png') + plt.savefig(filename, format="png") plt.close() self.assertTrue(isfile(filename)) def test_plot_environmental_contour_multiyear(self): - filename = abspath(join(plotdir, - 'wave_plot_environmental_contour_multiyear.png')) + filename = abspath( + join(plotdir, "wave_plot_environmental_contour_multiyear.png") + ) if isfile(filename): os.remove(filename) Hm0Te = self.Hm0Te - df = Hm0Te[Hm0Te['Hm0'] < 20] + df = Hm0Te[Hm0Te["Hm0"] < 20] Hm0 = df.Hm0.values Te = df.Te.values - dt_ss = (Hm0Te.index[2]-Hm0Te.index[1]).seconds + dt_ss = (Hm0Te.index[2] - Hm0Te.index[1]).seconds time_R = [100, 105, 110, 120, 150] - Hm0s=[] - Tes=[] + Hm0s = [] + Tes = [] for period in time_R: - copulas = (wave.contours - .environmental_contours(Hm0,Te,dt_ss,period,'PCA')) + copulas = wave.contours.environmental_contours( + Hm0, Te, dt_ss, period, "PCA" + ) - Hm0s.append(copulas['PCA_x1']) - Tes.append(copulas['PCA_x2']) + Hm0s.append(copulas["PCA_x1"]) + Tes.append(copulas["PCA_x2"]) - contour_label = [f'{year}-year Contour' for year in time_R] + contour_label = [f"{year}-year Contour" for year in time_R] plt.figure() - (wave.graphics - .plot_environmental_contour(Te, Hm0, - Tes, Hm0s, - data_label='NDBC 46022', - contour_label=contour_label, - x_label = 'Te [s]', - y_label = 'Hm0 [m]') - ) - plt.savefig(filename, format='png') + ( + wave.graphics.plot_environmental_contour( + Te, + Hm0, + Tes, + Hm0s, + data_label="NDBC 46022", + contour_label=contour_label, + x_label="Te [s]", + y_label="Hm0 [m]", + ) + ) + plt.savefig(filename, format="png") plt.close() self.assertTrue(isfile(filename)) def test_standard_copulas(self): - copulas = (wave.contours - .environmental_contours(self.wdrt_Hm0, self.wdrt_Te, - self.wdrt_dt, self.wdrt_period, - method=['gaussian', 'gumbel', 'clayton']) - ) + copulas = wave.contours.environmental_contours( + self.wdrt_Hm0, + self.wdrt_Te, + self.wdrt_dt, + self.wdrt_period, + method=["gaussian", "gumbel", "clayton"], + ) # WDRT slightly vaires Rosenblatt copula parameters from # the other copula default parameters - rosen = (wave.contours - .environmental_contours(self.wdrt_Hm0, self.wdrt_Te, - self.wdrt_dt, self.wdrt_period, method=['rosenblatt'], - min_bin_count=50, initial_bin_max_val=0.5, - bin_val_size=0.25)) - copulas['rosenblatt_x1'] = rosen['rosenblatt_x1'] - copulas['rosenblatt_x2'] = rosen['rosenblatt_x2'] - - methods=['gaussian', 'gumbel', 'clayton', 'rosenblatt'] - close=[] + rosen = wave.contours.environmental_contours( + self.wdrt_Hm0, + self.wdrt_Te, + self.wdrt_dt, + self.wdrt_period, + method=["rosenblatt"], + min_bin_count=50, + initial_bin_max_val=0.5, + bin_val_size=0.25, + ) + copulas["rosenblatt_x1"] = rosen["rosenblatt_x1"] + copulas["rosenblatt_x2"] = rosen["rosenblatt_x2"] + + methods = ["gaussian", "gumbel", "clayton", "rosenblatt"] + close = [] for method in methods: - close.append(np.allclose(copulas[f'{method}_x1'], - self.wdrt_copulas[f'{method}_x1'])) - close.append(np.allclose(copulas[f'{method}_x2'], - self.wdrt_copulas[f'{method}_x2'])) + close.append( + np.allclose(copulas[f"{method}_x1"], self.wdrt_copulas[f"{method}_x1"]) + ) + close.append( + np.allclose(copulas[f"{method}_x2"], self.wdrt_copulas[f"{method}_x2"]) + ) self.assertTrue(all(close)) def test_nonparametric_copulas(self): - methods=['nonparametric_gaussian','nonparametric_clayton', - 'nonparametric_gumbel'] - - np_copulas = wave.contours.environmental_contours(self.wdrt_Hm0, - self.wdrt_Te, self.wdrt_dt, self.wdrt_period, method=methods) + methods = [ + "nonparametric_gaussian", + "nonparametric_clayton", + "nonparametric_gumbel", + ] + + np_copulas = wave.contours.environmental_contours( + self.wdrt_Hm0, self.wdrt_Te, self.wdrt_dt, self.wdrt_period, method=methods + ) - close=[] + close = [] for method in methods: - close.append(np.allclose(np_copulas[f'{method}_x1'], - self.wdrt_copulas[f'{method}_x1'], atol=0.13)) - close.append(np.allclose(np_copulas[f'{method}_x2'], - self.wdrt_copulas[f'{method}_x2'], atol=0.13)) + close.append( + np.allclose( + np_copulas[f"{method}_x1"], + self.wdrt_copulas[f"{method}_x1"], + atol=0.13, + ) + ) + close.append( + np.allclose( + np_copulas[f"{method}_x2"], + self.wdrt_copulas[f"{method}_x2"], + atol=0.13, + ) + ) self.assertTrue(all(close)) def test_kde_copulas(self): - kde_copula = wave.contours.environmental_contours(self.wdrt_Hm0, - self.wdrt_Te, self.wdrt_dt, self.wdrt_period, - method=['bivariate_KDE'], bandwidth=[0.23, 0.23]) - log_kde_copula = (wave.contours - .environmental_contours(self.wdrt_Hm0, self.wdrt_Te, - self.wdrt_dt, self.wdrt_period, method=['bivariate_KDE_log'], bandwidth=[0.02, 0.11]) - ) - - close= [ np.allclose(kde_copula['bivariate_KDE_x1'], - self.wdrt_copulas['bivariate_KDE_x1']), - np.allclose(kde_copula['bivariate_KDE_x2'], - self.wdrt_copulas['bivariate_KDE_x2']), - np.allclose(log_kde_copula['bivariate_KDE_log_x1'], - self.wdrt_copulas['bivariate_KDE_log_x1']), - np.allclose(log_kde_copula['bivariate_KDE_log_x2'], - self.wdrt_copulas['bivariate_KDE_log_x2'])] + kde_copula = wave.contours.environmental_contours( + self.wdrt_Hm0, + self.wdrt_Te, + self.wdrt_dt, + self.wdrt_period, + method=["bivariate_KDE"], + bandwidth=[0.23, 0.23], + ) + log_kde_copula = wave.contours.environmental_contours( + self.wdrt_Hm0, + self.wdrt_Te, + self.wdrt_dt, + self.wdrt_period, + method=["bivariate_KDE_log"], + bandwidth=[0.02, 0.11], + ) + + close = [ + np.allclose( + kde_copula["bivariate_KDE_x1"], self.wdrt_copulas["bivariate_KDE_x1"] + ), + np.allclose( + kde_copula["bivariate_KDE_x2"], self.wdrt_copulas["bivariate_KDE_x2"] + ), + np.allclose( + log_kde_copula["bivariate_KDE_log_x1"], + self.wdrt_copulas["bivariate_KDE_log_x1"], + ), + np.allclose( + log_kde_copula["bivariate_KDE_log_x2"], + self.wdrt_copulas["bivariate_KDE_log_x2"], + ), + ] self.assertTrue(all(close)) def test_samples_contours(self): @@ -243,30 +547,39 @@ def test_samples_contours(self): hs_samples_0 = np.array([8.56637939, 9.27612515, 8.70427774]) hs_contour = np.array(self.wdrt_copulas["gaussian_x1"]) te_contour = np.array(self.wdrt_copulas["gaussian_x2"]) - hs_samples = wave.contours.samples_contour( - te_samples, te_contour, hs_contour) + hs_samples = wave.contours.samples_contour(te_samples, te_contour, hs_contour) assert_allclose(hs_samples, hs_samples_0) def test_samples_seastate(self): - hs_0 = np.array([5.91760129, 4.55185088, 1.41144991, 12.64443154, - 7.89753791, 0.93890797]) - te_0 = np.array([14.24199604, 8.25383556, 6.03901866, 16.9836369, - 9.51967777, 3.46969355]) - w_0 = np.array([2.18127398e-01, 2.18127398e-01, 2.18127398e-01, - 2.45437862e-07, 2.45437862e-07, 2.45437862e-07]) - - df = self.Hm0Te[self.Hm0Te['Hm0'] < 20] - dt_ss = (self.Hm0Te.index[2]-self.Hm0Te.index[1]).seconds + hs_0 = np.array( + [5.91760129, 4.55185088, 1.41144991, 12.64443154, 7.89753791, 0.93890797] + ) + te_0 = np.array( + [14.24199604, 8.25383556, 6.03901866, 16.9836369, 9.51967777, 3.46969355] + ) + w_0 = np.array( + [ + 2.18127398e-01, + 2.18127398e-01, + 2.18127398e-01, + 2.45437862e-07, + 2.45437862e-07, + 2.45437862e-07, + ] + ) + + df = self.Hm0Te[self.Hm0Te["Hm0"] < 20] + dt_ss = (self.Hm0Te.index[2] - self.Hm0Te.index[1]).seconds points_per_interval = 3 return_periods = np.array([50, 100]) np.random.seed(0) hs, te, w = wave.contours.samples_full_seastate( - df.Hm0.values, df.Te.values, points_per_interval, return_periods, - dt_ss) + df.Hm0.values, df.Te.values, points_per_interval, return_periods, dt_ss + ) assert_allclose(hs, hs_0) assert_allclose(te, te_0) assert_allclose(w, w_0) -if __name__ == '__main__': +if __name__ == "__main__": unittest.main() diff --git a/mhkit/tests/wave/test_performance.py b/mhkit/tests/wave/test_performance.py index f4bc2a566..b8fce7cb8 100644 --- a/mhkit/tests/wave/test_performance.py +++ b/mhkit/tests/wave/test_performance.py @@ -1,130 +1,147 @@ from os.path import abspath, dirname, join, isfile, normpath, relpath -from pandas.testing import assert_frame_equal -from numpy.testing import assert_allclose -from scipy.interpolate import interp1d -from random import seed, randint import matplotlib.pylab as plt -from datetime import datetime import xarray.testing as xrt import mhkit.wave as wave -from io import StringIO import pandas as pd import numpy as np -import contextlib import unittest -import netCDF4 -import inspect -import pickle -import time -import json -import sys import os testdir = dirname(abspath(__file__)) -plotdir = join(testdir, 'plots') +plotdir = join(testdir, "plots") isdir = os.path.isdir(plotdir) -if not isdir: os.mkdir(plotdir) -datadir = normpath(join(testdir,relpath('../../../examples/data/wave'))) +if not isdir: + os.mkdir(plotdir) +datadir = normpath(join(testdir, relpath("../../../examples/data/wave"))) class TestPerformance(unittest.TestCase): - @classmethod def setUpClass(self): np.random.seed(123) Hm0 = np.random.rayleigh(4, 100000) - Te = np.random.normal(4.5, .8, 100000) + Te = np.random.normal(4.5, 0.8, 100000) P = np.random.normal(200, 40, 100000) J = np.random.normal(300, 10, 100000) - ndbc_data_file = join(datadir,'data.txt') + ndbc_data_file = join(datadir, "data.txt") [raw_ndbc_data, meta] = wave.io.ndbc.read_file(ndbc_data_file) self.S = raw_ndbc_data.T - self.data = pd.DataFrame({'Hm0': Hm0, 'Te': Te, 'P': P,'J': J}) - self.Hm0_bins = np.arange(0,19,0.5) - self.Te_bins = np.arange(0,9,1) - self.expected_stats = ["mean","std","median","count","sum","min","max","freq"] + self.data = pd.DataFrame({"Hm0": Hm0, "Te": Te, "P": P, "J": J}) + self.Hm0_bins = np.arange(0, 19, 0.5) + self.Te_bins = np.arange(0, 9, 1) + self.expected_stats = [ + "mean", + "std", + "median", + "count", + "sum", + "min", + "max", + "freq", + ] @classmethod def tearDownClass(self): pass def test_capture_length(self): - L = wave.performance.capture_length(self.data['P'], self.data['J']) + L = wave.performance.capture_length(self.data["P"], self.data["J"]) L_stats = wave.performance.statistics(L) - self.assertAlmostEqual(L_stats['mean'], 0.6676, 3) + self.assertAlmostEqual(L_stats["mean"], 0.6676, 3) def test_capture_length_matrix(self): - L = wave.performance.capture_length(self.data['P'], self.data['J']) - LM = wave.performance.capture_length_matrix(self.data['Hm0'], self.data['Te'], - L, 'std', self.Hm0_bins, self.Te_bins) + L = wave.performance.capture_length(self.data["P"], self.data["J"]) + LM = wave.performance.capture_length_matrix( + self.data["Hm0"], self.data["Te"], L, "std", self.Hm0_bins, self.Te_bins + ) - self.assertEqual(LM.shape, (38,9)) + self.assertEqual(LM.shape, (38, 9)) self.assertEqual(LM.isna().sum().sum(), 131) def test_wave_energy_flux_matrix(self): - JM = wave.performance.wave_energy_flux_matrix(self.data['Hm0'], self.data['Te'], - self.data['J'], 'mean', self.Hm0_bins, self.Te_bins) - - self.assertEqual(JM.shape, (38,9)) + JM = wave.performance.wave_energy_flux_matrix( + self.data["Hm0"], + self.data["Te"], + self.data["J"], + "mean", + self.Hm0_bins, + self.Te_bins, + ) + + self.assertEqual(JM.shape, (38, 9)) self.assertEqual(JM.isna().sum().sum(), 131) def test_power_matrix(self): - L = wave.performance.capture_length(self.data['P'], self.data['J']) - LM = wave.performance.capture_length_matrix(self.data['Hm0'], self.data['Te'], - L, 'mean', self.Hm0_bins, self.Te_bins) - JM = wave.performance.wave_energy_flux_matrix(self.data['Hm0'], self.data['Te'], - self.data['J'], 'mean', self.Hm0_bins, self.Te_bins) + L = wave.performance.capture_length(self.data["P"], self.data["J"]) + LM = wave.performance.capture_length_matrix( + self.data["Hm0"], self.data["Te"], L, "mean", self.Hm0_bins, self.Te_bins + ) + JM = wave.performance.wave_energy_flux_matrix( + self.data["Hm0"], + self.data["Te"], + self.data["J"], + "mean", + self.Hm0_bins, + self.Te_bins, + ) PM = wave.performance.power_matrix(LM, JM) - self.assertEqual(PM.shape, (38,9)) + self.assertEqual(PM.shape, (38, 9)) self.assertEqual(PM.isna().sum().sum(), 131) def test_mean_annual_energy_production(self): - L = wave.performance.capture_length(self.data['P'], self.data['J']) - maep = wave.performance.mean_annual_energy_production_timeseries(L, self.data['J']) + L = wave.performance.capture_length(self.data["P"], self.data["J"]) + maep = wave.performance.mean_annual_energy_production_timeseries( + L, self.data["J"] + ) self.assertAlmostEqual(maep, 1754020.077, 2) - def test_plot_matrix(self): - filename = abspath(join(plotdir, 'wave_plot_matrix.png')) + filename = abspath(join(plotdir, "wave_plot_matrix.png")) if isfile(filename): os.remove(filename) - M = wave.performance.wave_energy_flux_matrix(self.data['Hm0'], self.data['Te'], - self.data['J'], 'mean', self.Hm0_bins, self.Te_bins) + M = wave.performance.wave_energy_flux_matrix( + self.data["Hm0"], + self.data["Te"], + self.data["J"], + "mean", + self.Hm0_bins, + self.Te_bins, + ) plt.figure() wave.graphics.plot_matrix(M) - plt.savefig(filename, format='png') + plt.savefig(filename, format="png") plt.close() self.assertTrue(isfile(filename)) def test_powerperformance_workflow(self): - filename = abspath(join(plotdir, 'Capture Length Matrix mean.png')) + filename = abspath(join(plotdir, "Capture Length Matrix mean.png")) if isfile(filename): os.remove(filename) - P = pd.Series(np.random.normal(200, 40, 743),index = self.S.columns) - statistic = ['mean'] + P = pd.Series(np.random.normal(200, 40, 743), index=self.S.columns) + statistic = ["mean"] savepath = plotdir show_values = True h = 60 expected = 401239.4822345051 - x = self.S.T - CM,MAEP = wave.performance.power_performance_workflow(self.S, h, - P, statistic, savepath=savepath, show_values=show_values) + CM, MAEP = wave.performance.power_performance_workflow( + self.S, h, P, statistic, savepath=savepath, show_values=show_values + ) self.assertTrue(isfile(filename)) - self.assertEqual(list(CM.data_vars),self.expected_stats) + self.assertEqual(list(CM.data_vars), self.expected_stats) - error = (expected-MAEP)/expected # SSE + error = (expected - MAEP) / expected # SSE self.assertLess(error, 1e-6) -if __name__ == '__main__': +if __name__ == "__main__": unittest.main() diff --git a/mhkit/tests/wave/test_resource_metrics.py b/mhkit/tests/wave/test_resource_metrics.py index e927a6157..9cdf589fc 100644 --- a/mhkit/tests/wave/test_resource_metrics.py +++ b/mhkit/tests/wave/test_resource_metrics.py @@ -9,6 +9,7 @@ import mhkit.wave as wave from io import StringIO import pandas as pd +import xarray as xr import numpy as np import contextlib import unittest @@ -22,64 +23,65 @@ testdir = dirname(abspath(__file__)) -plotdir = join(testdir, 'plots') +plotdir = join(testdir, "plots") isdir = os.path.isdir(plotdir) -if not isdir: os.mkdir(plotdir) -datadir = normpath(join(testdir,relpath('../../../examples/data/wave'))) +if not isdir: + os.mkdir(plotdir) +datadir = normpath(join(testdir, relpath("../../../examples/data/wave"))) class TestResourceMetrics(unittest.TestCase): - @classmethod def setUpClass(self): - omega = np.arange(0.1,3.5,0.01) - self.f = omega/(2*np.pi) + omega = np.arange(0.1, 3.5, 0.01) + self.f = omega / (2 * np.pi) self.Hs = 2.5 self.Tp = 8 - file_name = join(datadir, 'ValData1.json') + file_name = join(datadir, "ValData1.json") with open(file_name, "r") as read_file: self.valdata1 = pd.DataFrame(json.load(read_file)) self.valdata2 = {} - file_name = join(datadir, 'ValData2_MC.json') + file_name = join(datadir, "ValData2_MC.json") with open(file_name, "r") as read_file: data = json.load(read_file) - self.valdata2['MC'] = data + self.valdata2["MC"] = data for i in data.keys(): # Calculate elevation spectra - elevation = pd.DataFrame(data[i]['elevation']) + elevation = pd.DataFrame(data[i]["elevation"]) elevation.index = elevation.index.astype(float) elevation.sort_index(inplace=True) - sample_rate = data[i]['sample_rate'] - NFFT = data[i]['NFFT'] - self.valdata2['MC'][i]['S'] = wave.resource.elevation_spectrum(elevation, - sample_rate, NFFT) + sample_rate = data[i]["sample_rate"] + NFFT = data[i]["NFFT"] + self.valdata2["MC"][i]["S"] = wave.resource.elevation_spectrum( + elevation, sample_rate, NFFT + ) - file_name = join(datadir, 'ValData2_AH.json') + file_name = join(datadir, "ValData2_AH.json") with open(file_name, "r") as read_file: data = json.load(read_file) - self.valdata2['AH'] = data + self.valdata2["AH"] = data for i in data.keys(): # Calculate elevation spectra - elevation = pd.DataFrame(data[i]['elevation']) + elevation = pd.DataFrame(data[i]["elevation"]) elevation.index = elevation.index.astype(float) elevation.sort_index(inplace=True) - sample_rate = data[i]['sample_rate'] - NFFT = data[i]['NFFT'] - self.valdata2['AH'][i]['S'] = wave.resource.elevation_spectrum(elevation, - sample_rate, NFFT) + sample_rate = data[i]["sample_rate"] + NFFT = data[i]["NFFT"] + self.valdata2["AH"][i]["S"] = wave.resource.elevation_spectrum( + elevation, sample_rate, NFFT + ) - file_name = join(datadir, 'ValData2_CDiP.json') + file_name = join(datadir, "ValData2_CDiP.json") with open(file_name, "r") as read_file: data = json.load(read_file) - self.valdata2['CDiP'] = data + self.valdata2["CDiP"] = data for i in data.keys(): - temp = pd.Series(data[i]['S']).to_frame('S') + temp = pd.Series(data[i]["S"]).to_frame("S") temp.index = temp.index.astype(float) - self.valdata2['CDiP'][i]['S'] = temp - + self.valdata2["CDiP"][i]["S"] = temp @classmethod def tearDownClass(self): @@ -87,14 +89,14 @@ def tearDownClass(self): def test_kfromw(self): for i in self.valdata1.columns: - f = np.array(self.valdata1[i]['w'])/(2*np.pi) - h = self.valdata1[i]['h'] - rho = self.valdata1[i]['rho'] + f = np.array(self.valdata1[i]["w"]) / (2 * np.pi) + h = self.valdata1[i]["h"] + rho = self.valdata1[i]["rho"] - expected = self.valdata1[i]['k'] + expected = self.valdata1[i]["k"] k = wave.resource.wave_number(f, h, rho) - calculated = k.loc[:,'k'].values - error = ((expected-calculated)**2).sum() # SSE + calculated = k.loc[:, "k"].values + error = ((expected - calculated) ** 2).sum() # SSE self.assertLess(error, 1e-6) @@ -102,105 +104,125 @@ def test_kfromw_one_freq(self): g = 9.81 f = 0.1 h = 1e9 - w = np.pi*2*f # deep water dispersion + w = np.pi * 2 * f # deep water dispersion expected = w**2 / g calculated = wave.resource.wave_number(f=f, h=h, g=g).values[0][0] - error = np.abs(expected-calculated) + error = np.abs(expected - calculated) self.assertLess(error, 1e-6) def test_wave_length(self): - k_list=[1,2,10,3] - l_expected = (2.*np.pi/np.array(k_list)).tolist() + k_array = np.asarray([1.0, 2.0, 10.0, 3.0]) - k_df = pd.DataFrame(k_list,index = [1,2,3,4]) - k_series= k_df[0] - k_array=np.array(k_list) + k_int = int(k_array[0]) + k_float = k_array[0] + k_df = pd.DataFrame(k_array, index=[1, 2, 3, 4]) + k_series = k_df[0] - for l in [k_list, k_df, k_series, k_array]: + for l in [k_array, k_int, k_float, k_df, k_series]: l_calculated = wave.resource.wave_length(l) - self.assertListEqual(l_expected,l_calculated.tolist()) - - idx=0 - k_int = k_list[idx] - l_calculated = wave.resource.wave_length(k_int) - self.assertEqual(l_expected[idx],l_calculated) + self.assertTrue(np.all(2.0 * np.pi / l == l_calculated)) def test_depth_regime(self): - expected = [True,True,False,True] - l_list=[1,2,10,3] - l_df = pd.DataFrame(l_list,index = [1,2,3,4]) - l_series= l_df[0] - l_array=np.array(l_list) h = 10 - for l in [l_list, l_df, l_series, l_array]: - calculated = wave.resource.depth_regime(l,h) - self.assertListEqual(expected,calculated.tolist()) - - idx=0 - l_int = l_list[idx] - calculated = wave.resource.depth_regime(l_int,h) - self.assertEqual(expected[idx],calculated) + # non-array like formats + l_int = 1 + l_float = 1.0 + expected = True + for l in [l_int, l_float]: + calculated = wave.resource.depth_regime(l, h) + self.assertTrue(np.all(expected == calculated)) + + # array-like formats + l_array = np.array([1, 2, 10, 3]) + l_df = pd.DataFrame(l_array, index=[1, 2, 3, 4]) + l_series = l_df[0] + l_da = xr.DataArray(l_series) + l_da.name = "data" + l_ds = l_da.to_dataset() + expected = [True, True, False, True] + for l in [l_array, l_series, l_da, l_ds]: + calculated = wave.resource.depth_regime(l, h) + self.assertTrue(np.all(expected == calculated)) + + # special formatting for pd.DataFrame + for l in [l_df]: + calculated = wave.resource.depth_regime(l, h) + self.assertTrue(np.all(expected == calculated[0])) def test_wave_celerity(self): # Depth regime ratio - dr_ratio=2 + dr_ratio = 2 # small change in f will give similar value cg - f=np.linspace(20.0001,20.0005,5) + f = np.linspace(20.0001, 20.0005, 5) # Choose index to spike at. cg spike is inversly proportional to k - k_idx=2 - k_tmp=[1, 1, 0.5, 1, 1] + k_idx = 2 + k_tmp = [1, 1, 0.5, 1, 1] k = pd.DataFrame(k_tmp, index=f) # all shallow - cg_shallow1 = wave.resource.wave_celerity(k, h=0.0001,depth_check=True) - cg_shallow2 = wave.resource.wave_celerity(k, h=0.0001,depth_check=False) - self.assertTrue(all(cg_shallow1.squeeze().values == - cg_shallow2.squeeze().values)) - + cg_shallow1 = wave.resource.wave_celerity(k, h=0.0001, depth_check=True) + cg_shallow2 = wave.resource.wave_celerity(k, h=0.0001, depth_check=False) + self.assertTrue( + all(cg_shallow1.squeeze().values == cg_shallow2.squeeze().values) + ) # all deep - cg = wave.resource.wave_celerity(k, h=1000,depth_check=True) - self.assertTrue(all(np.pi*f/k.squeeze().values == cg.squeeze().values)) + cg = wave.resource.wave_celerity(k, h=1000, depth_check=True) + self.assertTrue(all(np.pi * f / k.squeeze().values == cg.squeeze().values)) def test_energy_flux_deep(self): - # Dependent on mhkit.resource.BS spectrum - S = wave.resource.jonswap_spectrum(self.f,self.Tp,self.Hs) + S = wave.resource.jonswap_spectrum(self.f, self.Tp, self.Hs) Te = wave.resource.energy_period(S) Hm0 = wave.resource.significant_wave_height(S) - rho=1025 - g=9.80665 - coeff = rho*(g**2)/(64*np.pi) - J = coeff*(Hm0.squeeze()**2)*Te.squeeze() - h=-1 # not used when deep=True + rho = 1025 + g = 9.80665 + coeff = rho * (g**2) / (64 * np.pi) + J = coeff * (Hm0.squeeze() ** 2) * Te.squeeze() + + h = -1 # not used when deep=True J_calc = wave.resource.energy_flux(S, h, deep=True) self.assertTrue(J_calc.squeeze() == J) + def test_energy_flux_shallow(self): + S = wave.resource.jonswap_spectrum(self.f, self.Tp, self.Hs) + Te = wave.resource.energy_period(S) + Hm0 = wave.resource.significant_wave_height(S) + + rho = 1025 + g = 9.80665 + coeff = rho * (g**2) / (64 * np.pi) + J = coeff * (Hm0.squeeze() ** 2) * Te.squeeze() + + h = 1000 # effectively deep but without assumptions + J_calc = wave.resource.energy_flux(S, h, deep=False) + err = np.abs(J_calc.squeeze() - J) + self.assertLess(err, 1e-6) def test_moments(self): - for file_i in self.valdata2.keys(): # for each file MC, AH, CDiP + for file_i in self.valdata2.keys(): # for each file MC, AH, CDiP datasets = self.valdata2[file_i] - for s in datasets.keys(): # for each set + for s in datasets.keys(): # for each set data = datasets[s] - for m in data['m'].keys(): - expected = data['m'][m] - S = data['S'] - if s == 'CDiP1' or s == 'CDiP6': - f_bins=pd.Series(data['freqBinWidth']) + for m in data["m"].keys(): + expected = data["m"][m] + S = data["S"] + if s == "CDiP1" or s == "CDiP6": + f_bins = pd.Series(data["freqBinWidth"]) else: f_bins = None - calculated = wave.resource.frequency_moment(S, int(m) - ,frequency_bins=f_bins).iloc[0,0] - error = np.abs(expected-calculated)/expected + calculated = wave.resource.frequency_moment( + S, int(m), frequency_bins=f_bins + ).iloc[0, 0] + error = np.abs(expected - calculated) / expected self.assertLess(error, 0.01) - def test_energy_period_to_peak_period(self): # This test checks that if we perform the # Te to Tp conversion, we create a spectrum @@ -218,164 +240,172 @@ def test_energy_period_to_peak_period(self): Te_calc = wave.resource.energy_period(S).values[0][0] - error = np.abs(T - Te_calc)/Te_calc + error = np.abs(T - Te_calc) / Te_calc self.assertLess(error, 0.01) - def test_metrics(self): - for file_i in self.valdata2.keys(): # for each file MC, AH, CDiP + for file_i in self.valdata2.keys(): # for each file MC, AH, CDiP datasets = self.valdata2[file_i] - for s in datasets.keys(): # for each set - - + for s in datasets.keys(): # for each set data = datasets[s] - S = data['S'] - if file_i == 'CDiP': - f_bins=pd.Series(data['freqBinWidth']) + S = data["S"] + if file_i == "CDiP": + f_bins = pd.Series(data["freqBinWidth"]) else: f_bins = None # Hm0 - expected = data['metrics']['Hm0'] - calculated = wave.resource.significant_wave_height(S, - frequency_bins=f_bins).iloc[0,0] - error = np.abs(expected-calculated)/expected - #print('Hm0', expected, calculated, error) + expected = data["metrics"]["Hm0"] + calculated = wave.resource.significant_wave_height( + S, frequency_bins=f_bins + ).iloc[0, 0] + error = np.abs(expected - calculated) / expected + # print('Hm0', expected, calculated, error) self.assertLess(error, 0.01) # Te - expected = data['metrics']['Te'] - calculated = wave.resource.energy_period(S, - frequency_bins=f_bins).iloc[0,0] - error = np.abs(expected-calculated)/expected - #print('Te', expected, calculated, error) + expected = data["metrics"]["Te"] + calculated = wave.resource.energy_period(S, frequency_bins=f_bins).iloc[ + 0, 0 + ] + error = np.abs(expected - calculated) / expected + # print('Te', expected, calculated, error) self.assertLess(error, 0.01) # T0 - expected = data['metrics']['T0'] - calculated = wave.resource.average_zero_crossing_period(S, - frequency_bins=f_bins).iloc[0,0] - error = np.abs(expected-calculated)/expected - #print('T0', expected, calculated, error) + expected = data["metrics"]["T0"] + calculated = wave.resource.average_zero_crossing_period( + S, frequency_bins=f_bins + ).iloc[0, 0] + error = np.abs(expected - calculated) / expected + # print('T0', expected, calculated, error) self.assertLess(error, 0.01) # Tc - expected = data['metrics']['Tc'] - calculated = wave.resource.average_crest_period(S, - # Tc = Tavg**2 - frequency_bins=f_bins).iloc[0,0]**2 - error = np.abs(expected-calculated)/expected - #print('Tc', expected, calculated, error) + expected = data["metrics"]["Tc"] + calculated = ( + wave.resource.average_crest_period( + S, + # Tc = Tavg**2 + frequency_bins=f_bins, + ).iloc[0, 0] + ** 2 + ) + error = np.abs(expected - calculated) / expected + # print('Tc', expected, calculated, error) self.assertLess(error, 0.01) # Tm - expected = np.sqrt(data['metrics']['Tm']) - calculated = wave.resource.average_wave_period(S, - frequency_bins=f_bins).iloc[0,0] - error = np.abs(expected-calculated)/expected - #print('Tm', expected, calculated, error) + expected = np.sqrt(data["metrics"]["Tm"]) + calculated = wave.resource.average_wave_period( + S, frequency_bins=f_bins + ).iloc[0, 0] + error = np.abs(expected - calculated) / expected + # print('Tm', expected, calculated, error) self.assertLess(error, 0.01) # Tp - expected = data['metrics']['Tp'] - calculated = wave.resource.peak_period(S).iloc[0,0] - error = np.abs(expected-calculated)/expected - #print('Tp', expected, calculated, error) + expected = data["metrics"]["Tp"] + calculated = wave.resource.peak_period(S).iloc[0, 0] + error = np.abs(expected - calculated) / expected + # print('Tp', expected, calculated, error) self.assertLess(error, 0.001) # e - expected = data['metrics']['e'] - calculated = wave.resource.spectral_bandwidth(S, - frequency_bins=f_bins).iloc[0,0] - error = np.abs(expected-calculated)/expected - #print('e', expected, calculated, error) + expected = data["metrics"]["e"] + calculated = wave.resource.spectral_bandwidth( + S, frequency_bins=f_bins + ).iloc[0, 0] + error = np.abs(expected - calculated) / expected + # print('e', expected, calculated, error) self.assertLess(error, 0.001) # J - if file_i != 'CDiP': - for i,j in zip(data['h'],data['J']): - expected = data['J'][j] - calculated = wave.resource.energy_flux(S,i) - error = np.abs(expected-calculated.values)/expected + if file_i != "CDiP": + for i, j in zip(data["h"], data["J"]): + expected = data["J"][j] + calculated = wave.resource.energy_flux(S, i) + error = np.abs(expected - calculated.values) / expected self.assertLess(error, 0.1) # v - if file_i == 'CDiP': + if file_i == "CDiP": # this should be updated to run on other datasets - expected = data['metrics']['v'] - calculated = wave.resource.spectral_width(S, - frequency_bins=f_bins).iloc[0,0] - error = np.abs(expected-calculated)/expected + expected = data["metrics"]["v"] + calculated = wave.resource.spectral_width( + S, frequency_bins=f_bins + ).iloc[0, 0] + error = np.abs(expected - calculated) / expected self.assertLess(error, 0.01) - if file_i == 'MC': - expected = data['metrics']['v'] + if file_i == "MC": + expected = data["metrics"]["v"] # testing that default uniform frequency bin widths works - calculated = wave.resource.spectral_width(S).iloc[0,0] - error = np.abs(expected-calculated)/expected + calculated = wave.resource.spectral_width(S).iloc[0, 0] + error = np.abs(expected - calculated) / expected self.assertLess(error, 0.01) - def test_plot_elevation_timeseries(self): - filename = abspath(join(plotdir, 'wave_plot_elevation_timeseries.png')) + filename = abspath(join(plotdir, "wave_plot_elevation_timeseries.png")) if isfile(filename): os.remove(filename) - data = self.valdata2['MC'] - temp = pd.DataFrame(data[list(data.keys())[0]]['elevation']) + data = self.valdata2["MC"] + temp = pd.DataFrame(data[list(data.keys())[0]]["elevation"]) temp.index = temp.index.astype(float) temp.sort_index(inplace=True) - eta = temp.iloc[0:100,:] + eta = temp.iloc[0:100, :] plt.figure() wave.graphics.plot_elevation_timeseries(eta) - plt.savefig(filename, format='png') + plt.savefig(filename, format="png") plt.close() self.assertTrue(isfile(filename)) -class TestPlotResouceCharacterizations(unittest.TestCase): +class TestPlotResouceCharacterizations(unittest.TestCase): @classmethod def setUpClass(self): - f_name= 'Hm0_Te_46022.json' - self.Hm0Te = pd.read_json(join(datadir,f_name)) + f_name = "Hm0_Te_46022.json" + self.Hm0Te = pd.read_json(join(datadir, f_name)) + @classmethod def tearDownClass(self): pass - def test_plot_avg_annual_energy_matrix(self): - filename = abspath(join(plotdir, 'avg_annual_scatter_table.png')) + def test_plot_avg_annual_energy_matrix(self): + filename = abspath(join(plotdir, "avg_annual_scatter_table.png")) if isfile(filename): os.remove(filename) Hm0Te = self.Hm0Te Hm0Te.drop(Hm0Te[Hm0Te.Hm0 > 20].index, inplace=True) - J = np.random.random(len(Hm0Te))*100 + J = np.random.random(len(Hm0Te)) * 100 plt.figure() - fig = wave.graphics.plot_avg_annual_energy_matrix(Hm0Te.Hm0, - Hm0Te.Te, J, Hm0_bin_size=0.5, Te_bin_size=1) - plt.savefig(filename, format='png') + fig = wave.graphics.plot_avg_annual_energy_matrix( + Hm0Te.Hm0, Hm0Te.Te, J, Hm0_bin_size=0.5, Te_bin_size=1 + ) + plt.savefig(filename, format="png") plt.close() self.assertTrue(isfile(filename)) def test_plot_monthly_cumulative_distribution(self): - - filename = abspath(join(plotdir, 'monthly_cumulative_distribution.png')) + filename = abspath(join(plotdir, "monthly_cumulative_distribution.png")) if isfile(filename): os.remove(filename) - a = pd.date_range(start='1/1/2010', periods=10000, freq='h') - S = pd.Series(np.random.random(len(a)) , index=a) - ax=wave.graphics.monthly_cumulative_distribution(S) - plt.savefig(filename, format='png') + a = pd.date_range(start="1/1/2010", periods=10000, freq="h") + S = pd.Series(np.random.random(len(a)), index=a) + ax = wave.graphics.monthly_cumulative_distribution(S) + plt.savefig(filename, format="png") plt.close() self.assertTrue(isfile(filename)) -if __name__ == '__main__': +if __name__ == "__main__": unittest.main() diff --git a/mhkit/tests/wave/test_resource_spectrum.py b/mhkit/tests/wave/test_resource_spectrum.py index 30e4e3c4e..4907a5638 100644 --- a/mhkit/tests/wave/test_resource_spectrum.py +++ b/mhkit/tests/wave/test_resource_spectrum.py @@ -2,34 +2,24 @@ from pandas.testing import assert_frame_equal from numpy.testing import assert_allclose from scipy.interpolate import interp1d -from random import seed, randint import matplotlib.pylab as plt -from datetime import datetime -import xarray.testing as xrt +import xarray as xr import mhkit.wave as wave -from io import StringIO import pandas as pd import numpy as np -import contextlib import unittest -import netCDF4 -import inspect -import pickle -import time -import json -import sys import os testdir = dirname(abspath(__file__)) -plotdir = join(testdir, 'plots') +plotdir = join(testdir, "plots") isdir = os.path.isdir(plotdir) -if not isdir: os.mkdir(plotdir) -datadir = normpath(join(testdir,relpath('../../../examples/data/wave'))) +if not isdir: + os.mkdir(plotdir) +datadir = normpath(join(testdir, relpath("../../../examples/data/wave"))) class TestResourceSpectrum(unittest.TestCase): - @classmethod def setUpClass(self): Trep = 600 @@ -44,12 +34,12 @@ def tearDownClass(self): pass def test_pierson_moskowitz_spectrum(self): - S = wave.resource.pierson_moskowitz_spectrum(self.f,self.Tp,self.Hs) - Hm0 = wave.resource.significant_wave_height(S).iloc[0,0] - Tp0 = wave.resource.peak_period(S).iloc[0,0] + S = wave.resource.pierson_moskowitz_spectrum(self.f, self.Tp, self.Hs) + Hm0 = wave.resource.significant_wave_height(S).iloc[0, 0] + Tp0 = wave.resource.peak_period(S).iloc[0, 0] - errorHm0 = np.abs(self.Tp - Tp0)/self.Tp - errorTp0 = np.abs(self.Hs - Hm0)/self.Hs + errorHm0 = np.abs(self.Tp - Tp0) / self.Tp + errorTp0 = np.abs(self.Hs - Hm0) / self.Hs self.assertLess(errorHm0, 0.01) self.assertLess(errorTp0, 0.01) @@ -60,18 +50,20 @@ def test_pierson_moskowitz_spectrum_zero_freq(self): f_nonzero = np.arange(df, 1, df) S_zero = wave.resource.pierson_moskowitz_spectrum(f_zero, self.Tp, self.Hs) - S_nonzero = wave.resource.pierson_moskowitz_spectrum(f_nonzero, self.Tp, self.Hs) + S_nonzero = wave.resource.pierson_moskowitz_spectrum( + f_nonzero, self.Tp, self.Hs + ) self.assertEqual(S_zero.values.squeeze()[0], 0.0) self.assertGreater(S_nonzero.values.squeeze()[0], 0.0) def test_jonswap_spectrum(self): S = wave.resource.jonswap_spectrum(self.f, self.Tp, self.Hs) - Hm0 = wave.resource.significant_wave_height(S).iloc[0,0] - Tp0 = wave.resource.peak_period(S).iloc[0,0] + Hm0 = wave.resource.significant_wave_height(S).iloc[0, 0] + Tp0 = wave.resource.peak_period(S).iloc[0, 0] - errorHm0 = np.abs(self.Tp - Tp0)/self.Tp - errorTp0 = np.abs(self.Hs - Hm0)/self.Hs + errorHm0 = np.abs(self.Tp - Tp0) / self.Tp + errorTp0 = np.abs(self.Hs - Hm0) / self.Hs self.assertLess(errorHm0, 0.01) self.assertLess(errorTp0, 0.01) @@ -87,31 +79,36 @@ def test_jonswap_spectrum_zero_freq(self): self.assertEqual(S_zero.values.squeeze()[0], 0.0) self.assertGreater(S_nonzero.values.squeeze()[0], 0.0) - def test_surface_elevation_phases_np_and_pd(self): - S0 = wave.resource.jonswap_spectrum(self.f,self.Tp,self.Hs) - S1 = wave.resource.jonswap_spectrum(self.f,self.Tp,self.Hs*1.1) + def test_surface_elevation_phases_xr_and_pd(self): + S0 = wave.resource.jonswap_spectrum(self.f, self.Tp, self.Hs) + S1 = wave.resource.jonswap_spectrum(self.f, self.Tp, self.Hs * 1.1) S = pd.concat([S0, S1], axis=1) phases_np = np.random.rand(S.shape[0], S.shape[1]) * 2 * np.pi phases_pd = pd.DataFrame(phases_np, index=S.index, columns=S.columns) + phases_xr = xr.Dataset(phases_pd) - eta_np = wave.resource.surface_elevation(S, self.t, phases=phases_np, seed=1) + eta_xr = wave.resource.surface_elevation(S, self.t, phases=phases_xr, seed=1) eta_pd = wave.resource.surface_elevation(S, self.t, phases=phases_pd, seed=1) - assert_frame_equal(eta_np, eta_pd) + assert_frame_equal(eta_xr, eta_pd) def test_surface_elevation_frequency_bins_np_and_pd(self): - S0 = wave.resource.jonswap_spectrum(self.f,self.Tp,self.Hs) - S1 = wave.resource.jonswap_spectrum(self.f,self.Tp,self.Hs*1.1) + S0 = wave.resource.jonswap_spectrum(self.f, self.Tp, self.Hs) + S1 = wave.resource.jonswap_spectrum(self.f, self.Tp, self.Hs * 1.1) S = pd.concat([S0, S1], axis=1) eta0 = wave.resource.surface_elevation(S, self.t, seed=1) - f_bins_np = np.array([np.diff(S.index)[0]]*len(S)) - f_bins_pd = pd.DataFrame(f_bins_np, index=S.index, columns=['df']) + f_bins_np = np.array([np.diff(S.index)[0]] * len(S)) + f_bins_pd = pd.DataFrame(f_bins_np, index=S.index, columns=["df"]) - eta_np = wave.resource.surface_elevation(S, self.t, frequency_bins=f_bins_np, seed=1) - eta_pd = wave.resource.surface_elevation(S, self.t, frequency_bins=f_bins_pd, seed=1) + eta_np = wave.resource.surface_elevation( + S, self.t, frequency_bins=f_bins_np, seed=1 + ) + eta_pd = wave.resource.surface_elevation( + S, self.t, frequency_bins=f_bins_pd, seed=1 + ) assert_frame_equal(eta0, eta_np) assert_frame_equal(eta_np, eta_pd) @@ -120,19 +117,19 @@ def test_surface_elevation_moments(self): S = wave.resource.jonswap_spectrum(self.f, self.Tp, self.Hs) eta = wave.resource.surface_elevation(S, self.t, seed=1) dt = self.t[1] - self.t[0] - Sn = wave.resource.elevation_spectrum(eta, 1/dt, len(eta.values), - detrend=False, window='boxcar', - noverlap=0) + Sn = wave.resource.elevation_spectrum( + eta, 1 / dt, len(eta.values), detrend=False, window="boxcar", noverlap=0 + ) - m0 = wave.resource.frequency_moment(S,0).m0.values[0] - m0n = wave.resource.frequency_moment(Sn,0).m0.values[0] - errorm0 = np.abs((m0 - m0n)/m0) + m0 = wave.resource.frequency_moment(S, 0).m0.values[0] + m0n = wave.resource.frequency_moment(Sn, 0).m0.values[0] + errorm0 = np.abs((m0 - m0n) / m0) self.assertLess(errorm0, 0.01) - m1 = wave.resource.frequency_moment(S,1).m1.values[0] - m1n = wave.resource.frequency_moment(Sn,1).m1.values[0] - errorm1 = np.abs((m1 - m1n)/m1) + m1 = wave.resource.frequency_moment(S, 1).m1.values[0] + m1n = wave.resource.frequency_moment(Sn, 1).m1.values[0] + errorm1 = np.abs((m1 - m1n) / m1) self.assertLess(errorm1, 0.01) @@ -140,40 +137,43 @@ def test_surface_elevation_rmse(self): S = wave.resource.jonswap_spectrum(self.f, self.Tp, self.Hs) eta = wave.resource.surface_elevation(S, self.t, seed=1) dt = self.t[1] - self.t[0] - Sn = wave.resource.elevation_spectrum(eta, 1/dt, len(eta), - detrend=False, window='boxcar', - noverlap=0) + Sn = wave.resource.elevation_spectrum( + eta, 1 / dt, len(eta), detrend=False, window="boxcar", noverlap=0 + ) fSn = interp1d(Sn.index.values, Sn.values, axis=0) - rmse = (S.values - fSn(S.index.values))**2 - rmse_sum = (np.sum(rmse)/len(rmse))**0.5 + Sn_interp = fSn(S.index.values).squeeze() + rmse = (S.values.squeeze() - Sn_interp) ** 2 + rmse_sum = (np.sum(rmse) / len(rmse)) ** 0.5 self.assertLess(rmse_sum, 0.02) def test_ifft_sum_of_sines(self): S = wave.resource.jonswap_spectrum(self.f, self.Tp, self.Hs) - eta_ifft = wave.resource.surface_elevation(S, self.t, seed=1, method='ifft') - eta_sos = wave.resource.surface_elevation(S, self.t, seed=1, method='sum_of_sines') + eta_ifft = wave.resource.surface_elevation(S, self.t, seed=1, method="ifft") + eta_sos = wave.resource.surface_elevation( + S, self.t, seed=1, method="sum_of_sines" + ) - assert_allclose(eta_ifft, eta_sos) + assert_allclose(eta_ifft, eta_sos) def test_plot_spectrum(self): - filename = abspath(join(plotdir, 'wave_plot_spectrum.png')) + filename = abspath(join(plotdir, "wave_plot_spectrum.png")) if isfile(filename): os.remove(filename) - S = wave.resource.pierson_moskowitz_spectrum(self.f,self.Tp,self.Hs) + S = wave.resource.pierson_moskowitz_spectrum(self.f, self.Tp, self.Hs) plt.figure() wave.graphics.plot_spectrum(S) - plt.savefig(filename, format='png') + plt.savefig(filename, format="png") plt.close() self.assertTrue(isfile(filename)) def test_plot_chakrabarti(self): - filename = abspath(join(plotdir, 'wave_plot_chakrabarti.png')) + filename = abspath(join(plotdir, "wave_plot_chakrabarti.png")) if isfile(filename): os.remove(filename) @@ -185,7 +185,7 @@ def test_plot_chakrabarti(self): plt.savefig(filename) def test_plot_chakrabarti_np(self): - filename = abspath(join(plotdir, 'wave_plot_chakrabarti_np.png')) + filename = abspath(join(plotdir, "wave_plot_chakrabarti_np.png")) if isfile(filename): os.remove(filename) @@ -199,21 +199,22 @@ def test_plot_chakrabarti_np(self): self.assertTrue(isfile(filename)) def test_plot_chakrabarti_pd(self): - filename = abspath(join(plotdir, 'wave_plot_chakrabarti_pd.png')) + filename = abspath(join(plotdir, "wave_plot_chakrabarti_pd.png")) if isfile(filename): os.remove(filename) D = np.linspace(5, 15, 5) H = 10 * np.ones_like(D) lambda_w = 200 * np.ones_like(D) - df = pd.DataFrame([H.flatten(),lambda_w.flatten(),D.flatten()], - index=['H','lambda_w','D']).transpose() + df = pd.DataFrame( + [H.flatten(), lambda_w.flatten(), D.flatten()], index=["H", "lambda_w", "D"] + ).transpose() wave.graphics.plot_chakrabarti(df.H, df.lambda_w, df.D) plt.savefig(filename) self.assertTrue(isfile(filename)) -if __name__ == '__main__': + +if __name__ == "__main__": unittest.main() - \ No newline at end of file diff --git a/mhkit/tidal/__init__.py b/mhkit/tidal/__init__.py index b669360a6..2644bfdfa 100644 --- a/mhkit/tidal/__init__.py +++ b/mhkit/tidal/__init__.py @@ -1,4 +1,4 @@ from mhkit.tidal import graphics from mhkit.tidal import io -from mhkit.tidal import resource +from mhkit.tidal import resource from mhkit.tidal import performance diff --git a/mhkit/tidal/d3d.py b/mhkit/tidal/d3d.py deleted file mode 100644 index b11aa1569..000000000 --- a/mhkit/tidal/d3d.py +++ /dev/null @@ -1 +0,0 @@ -from mhkit.river.d3d import * \ No newline at end of file diff --git a/mhkit/tidal/graphics.py b/mhkit/tidal/graphics.py index 51459b527..0483f2080 100644 --- a/mhkit/tidal/graphics.py +++ b/mhkit/tidal/graphics.py @@ -1,5 +1,4 @@ import numpy as np -import pandas as pd import bisect from scipy.interpolate import interpn as _interpn from scipy.interpolate import interp1d @@ -7,6 +6,7 @@ from mhkit.river.resource import exceedance_probability from mhkit.tidal.resource import _histogram, _flood_or_ebb from mhkit.river.graphics import plot_velocity_duration_curve, _xy_plot +from mhkit.utils import convert_to_dataarray def _initialize_polar(ax=None, metadata=None, flood=None, ebb=None): @@ -28,24 +28,32 @@ def _initialize_polar(ax=None, metadata=None, flood=None, ebb=None): fig = plt.figure(figsize=(12, 8)) ax = plt.axes(polar=True) # Angles are measured clockwise from true north - ax.set_theta_zero_location('N') + ax.set_theta_zero_location("N") ax.set_theta_direction(-1) - xticks = ['N', 'NE', 'E', 'SE', 'S', 'SW', 'W', 'NW'] + xticks = ["N", "NE", "E", "SE", "S", "SW", "W", "NW"] # Polar plots do not have minor ticks, insert flood/ebb into major ticks xtickDegrees = [0.0, 45.0, 90.0, 135.0, 180.0, 225.0, 270.0, 315.0] # Set title and metadata box if metadata != None: # Set the Title - plt.title(metadata['name']) + plt.title(metadata["name"]) # List of strings for metadata box - bouy_str = [f'Lat = {float(metadata["lat"]):0.2f}$\degree$', - f'Lon = {float(metadata["lon"]):0.2f}$\degree$'] + bouy_str = [ + f'Lat = {float(metadata["lat"]):0.2f}$\degree$', + f'Lon = {float(metadata["lon"]):0.2f}$\degree$', + ] # Create string for text box - bouy_data = '\n'.join(bouy_str) + bouy_data = "\n".join(bouy_str) # Set the text box - ax.text(-0.3, 0.80, bouy_data, transform=ax.transAxes, fontsize=14, - verticalalignment='top', bbox=dict(facecolor='none', - edgecolor='k', pad=5)) + ax.text( + -0.3, + 0.80, + bouy_data, + transform=ax.transAxes, + fontsize=14, + verticalalignment="top", + bbox=dict(facecolor="none", edgecolor="k", pad=5), + ) # If defined plot flood and ebb directions as major ticks if flood != None: # Get flood direction in degrees @@ -56,7 +64,7 @@ def _initialize_polar(ax=None, metadata=None, flood=None, ebb=None): # Get location in list idxFlood = xtickDegrees.index(floodDirection) # Insert label at appropriate location - xticks[idxFlood:idxFlood] = ['\nFlood'] + xticks[idxFlood:idxFlood] = ["\nFlood"] if ebb != None: # Get flood direction in degrees ebbDirection = ebb @@ -66,8 +74,8 @@ def _initialize_polar(ax=None, metadata=None, flood=None, ebb=None): # Get location in list idxEbb = xtickDegrees.index(ebbDirection) # Insert label at appropriate location - xticks[idxEbb:idxEbb] = ['\nEbb'] - ax.set_xticks(np.array(xtickDegrees)*np.pi/180.) + xticks[idxEbb:idxEbb] = ["\nEbb"] + ax.set_xticks(np.array(xtickDegrees) * np.pi / 180.0) ax.set_xticklabels(xticks) return ax @@ -83,37 +91,32 @@ def _check_inputs(directions, velocities, flood, ebb): velocities: array-like Velocities in m/s flood: float - Direction in degrees added to theta ticks + Direction in degrees added to theta ticks ebb: float Direction in degrees added to theta ticks """ - if not isinstance(velocities, (np.ndarray, pd.Series)): - raise TypeError('velocities must be of type np.ndarry or pd.Series') - if isinstance(velocities, np.ndarray): - velocities = pd.Series(velocities) - - if not isinstance(directions, (np.ndarray, pd.Series)): - raise TypeError('directions must be of type np.ndarry or pd.Series') - if isinstance(directions, np.ndarray): - directions = pd.Series(directions) + velocities = convert_to_dataarray(velocities) + directions = convert_to_dataarray(directions) if len(velocities) != len(directions): - raise ValueError('velocities and directions must have the same length') + raise ValueError("velocities and directions must have the same length") if all(np.nan_to_num(velocities.values) < 0): - raise ValueError('All velocities must be positive') - if all(np.nan_to_num(directions.values) < 0) and all(np.nan_to_num(directions.values) > 360): - raise ValueError('directions must be between 0 and 360 degrees') + raise ValueError("All velocities must be positive") + if all(np.nan_to_num(directions.values) < 0) and all( + np.nan_to_num(directions.values) > 360 + ): + raise ValueError("directions must be between 0 and 360 degrees") if not isinstance(flood, (int, float, type(None))): - raise TypeError('flood must be of type int or float') + raise TypeError("flood must be of type int or float") if not isinstance(ebb, (int, float, type(None))): - raise TypeError('ebb must be of type int or float') + raise TypeError("ebb must be of type int or float") if flood is not None: if (flood < 0) and (flood > 360): - raise ValueError('flood must be between 0 and 360 degrees') + raise ValueError("flood must be between 0 and 360 degrees") if ebb is not None: if (ebb < 0) and (ebb > 360): - raise ValueError('ebb must be between 0 and 360 degrees') + raise ValueError("ebb must be between 0 and 360 degrees") def plot_rose( @@ -124,10 +127,10 @@ def plot_rose( ax=None, metadata=None, flood=None, - ebb=None + ebb=None, ): """ - Creates a polar histogram. Direction angles from binned histogram must + Creates a polar histogram. Direction angles from binned histogram must be specified such that 0 degrees is north. Parameters @@ -136,9 +139,9 @@ def plot_rose( Directions in degrees with 0 degrees specified as true north velocities: array-like Velocities in m/s - width_dir: float + width_dir: float Width of directional bins for histogram in degrees - width_vel: float + width_vel: float Width of velocity bins for histogram in m/s ax: float Polar plot axes to add polar histogram @@ -146,7 +149,7 @@ def plot_rose( If provided needs keys ['name', 'lat', 'lon'] for plot title and information box on plot flood: float - Direction in degrees added to theta ticks + Direction in degrees added to theta ticks ebb: float Direction in degrees added to theta ticks Returns @@ -158,45 +161,50 @@ def plot_rose( _check_inputs(directions, velocities, flood, ebb) if not isinstance(width_dir, (int, float)): - raise TypeError('width_dir must be of type int or float') + raise TypeError("width_dir must be of type int or float") if not isinstance(width_vel, (int, float)): - raise TypeError('width_vel must be of type int or float') + raise TypeError("width_vel must be of type int or float") if width_dir < 0: - raise ValueError('width_dir must be greater than 0') + raise ValueError("width_dir must be greater than 0") if width_vel < 0: - raise ValueError('width_vel must be greater than 0') + raise ValueError("width_vel must be greater than 0") # Calculate the 2D histogram - H, dir_edges, vel_edges = _histogram( - directions, velocities, width_dir, width_vel) + H, dir_edges, vel_edges = _histogram(directions, velocities, width_dir, width_vel) # Determine number of bins dir_bins = H.shape[0] vel_bins = H.shape[1] # Create the angles - thetas = np.arange(0, 2*np.pi, 2*np.pi/dir_bins) + thetas = np.arange(0, 2 * np.pi, 2 * np.pi / dir_bins) # Initialize the polar polt ax = _initialize_polar(ax=ax, metadata=metadata, flood=flood, ebb=ebb) # Set bar color based on wind speed colors = plt.cm.viridis(np.linspace(0, 1.0, vel_bins)) # Set the current speed bin label names # Calculate the 2D histogram - labels = [f'{i:.1f}-{j:.1f}' for i, - j in zip(vel_edges[:-1], vel_edges[1:])] + labels = [f"{i:.1f}-{j:.1f}" for i, j in zip(vel_edges[:-1], vel_edges[1:])] # Initialize the vertical-offset (polar radius) for the stacked bar chart. r_offset = np.zeros(dir_bins) for vel_bin in range(vel_bins): # Plot fist set of bars in all directions - ax.bar(thetas, H[:, vel_bin], width=(2*np.pi/dir_bins), - bottom=r_offset, color=colors[vel_bin], label=labels[vel_bin]) + ax.bar( + thetas, + H[:, vel_bin], + width=(2 * np.pi / dir_bins), + bottom=r_offset, + color=colors[vel_bin], + label=labels[vel_bin], + ) # Increase the radius offset in all directions r_offset = r_offset + H[:, vel_bin] # Add the a legend for current speed bins plt.legend( - loc='best', title='Velocity bins [m/s]', bbox_to_anchor=(1.29, 1.00), ncol=1) + loc="best", title="Velocity bins [m/s]", bbox_to_anchor=(1.29, 1.00), ncol=1 + ) # Get the r-ticks (polar y-ticks) yticks = plt.yticks() # Format y-ticks with units for clarity - rticks = [f'{y:.1f}%' for y in yticks[0]] + rticks = [f"{y:.1f}%" for y in yticks[0]] # Set the y-ticks plt.yticks(yticks[0], rticks) return ax @@ -210,10 +218,10 @@ def plot_joint_probability_distribution( ax=None, metadata=None, flood=None, - ebb=None + ebb=None, ): """ - Creates a polar histogram. Direction angles from binned histogram must + Creates a polar histogram. Direction angles from binned histogram must be specified such that 0 is north. Parameters @@ -222,9 +230,9 @@ def plot_joint_probability_distribution( Directions in degrees with 0 degrees specified as true north velocities: array-like Velocities in m/s - width_dir: float + width_dir: float Width of directional bins for histogram in degrees - width_vel: float + width_vel: float Width of velocity bins for histogram in m/s ax: float Polar plot axes to add polar histogram @@ -232,71 +240,68 @@ def plot_joint_probability_distribution( If provided needs keys ['name', 'Lat', 'Lon'] for plot title and information box on plot flood: float - Direction in degrees added to theta ticks + Direction in degrees added to theta ticks ebb: float Direction in degrees added to theta ticks Returns ------- ax: figure - Joint probability distribution + Joint probability distribution """ _check_inputs(directions, velocities, flood, ebb) if not isinstance(width_dir, (int, float)): - raise TypeError('width_dir must be of type int or float') + raise TypeError("width_dir must be of type int or float") if not isinstance(width_vel, (int, float)): - raise TypeError('width_vel must be of type int or float') + raise TypeError("width_vel must be of type int or float") if width_dir < 0: - raise ValueError('width_dir must be greater than 0') + raise ValueError("width_dir must be greater than 0") if width_vel < 0: - raise ValueError('width_vel must be greater than 0') + raise ValueError("width_vel must be greater than 0") # Calculate the 2D histogram - H, dir_edges, vel_edges = _histogram( - directions, velocities, width_dir, width_vel) + H, dir_edges, vel_edges = _histogram(directions, velocities, width_dir, width_vel) # Initialize the polar polt ax = _initialize_polar(ax=ax, metadata=metadata, flood=flood, ebb=ebb) # Set the current speed bin label names - labels = [f'{i:.1f}-{j:.1f}' for i, - j in zip(vel_edges[:-1], vel_edges[1:])] + labels = [f"{i:.1f}-{j:.1f}" for i, j in zip(vel_edges[:-1], vel_edges[1:])] # Set vel & dir bins to middle of bin except at ends - dir_bins = 0.5*(dir_edges[1:] + dir_edges[:-1]) # set all bins to middle - vel_bins = 0.5*(vel_edges[1:] + vel_edges[:-1]) + dir_bins = 0.5 * (dir_edges[1:] + dir_edges[:-1]) # set all bins to middle + vel_bins = 0.5 * (vel_edges[1:] + vel_edges[:-1]) # Reset end of bin range to edge of bin dir_bins[0] = dir_edges[0] vel_bins[0] = vel_edges[0] dir_bins[-1] = dir_edges[-1] vel_bins[-1] = vel_edges[-1] # Interpolate the bins back to specific data points - z = _interpn((dir_bins, vel_bins), - H, np.vstack([directions, velocities]).T, method="splinef2d", - bounds_error=False) + z = _interpn( + (dir_bins, vel_bins), + H, + np.vstack([directions, velocities]).T, + method="splinef2d", + bounds_error=False, + ) # Plot the most probable data last idx = z.argsort() # Convert to radians and order points by probability - theta, r, z = directions.values[idx] * \ - np.pi/180, velocities.values[idx], z[idx] + theta, r, z = directions.values[idx] * np.pi / 180, velocities.values[idx], z[idx] # Create scatter plot colored by probability density sx = ax.scatter(theta, r, c=z, s=5, edgecolor=None) # Create colorbar - plt.colorbar(sx, ax=ax, label='Joint Probability [%]') + plt.colorbar(sx, ax=ax, label="Joint Probability [%]") # Get the r-ticks (polar y-ticks) yticks = ax.get_yticks() # Set y-ticks labels ax.set_yticks(yticks) # to avoid matplotlib warning - ax.set_yticklabels([f'{y:.1f} $m/s$' for y in yticks]) + ax.set_yticklabels([f"{y:.1f} $m/s$" for y in yticks]) return ax def plot_current_timeseries( - directions, - velocities, - principal_direction, - label=None, - ax=None + directions, velocities, principal_direction, label=None, ax=None ): """ Returns a plot of velocity from an array of direction and speed @@ -313,7 +318,7 @@ def plot_current_timeseries( label: string Label to use in the legend ax : matplotlib axes object - Axes for plotting. If None, then a new figure with a single + Axes for plotting. If None, then a new figure with a single axes is used. Returns @@ -325,30 +330,29 @@ def plot_current_timeseries( _check_inputs(directions, velocities, flood=None, ebb=None) if not isinstance(principal_direction, (int, float)): - raise TypeError('principal_direction must be of type int or float') + raise TypeError("principal_direction must be of type int or float") if (principal_direction < 0) and (principal_direction > 360): - raise ValueError( - 'principal_direction must be between 0 and 360 degrees') + raise ValueError("principal_direction must be between 0 and 360 degrees") # Rotate coordinate system by supplied principal_direction principal_directions = directions - principal_direction # Calculate the velocity - velocity = velocities * np.cos(np.pi/180*principal_directions) + velocity = velocities * np.cos(np.pi / 180 * principal_directions) # Call on standard xy plotting - ax = _xy_plot(velocities.index, velocity, fmt='-', label=label, - xlabel='Time', ylabel='Velocity [$m/s$]', ax=ax) + ax = _xy_plot( + velocities.index, + velocity, + fmt="-", + label=label, + xlabel="Time", + ylabel="Velocity [$m/s$]", + ax=ax, + ) return ax -def tidal_phase_probability( - directions, - velocities, - flood, - ebb, - bin_size=0.1, - ax=None -): - """ +def tidal_phase_probability(directions, velocities, flood, ebb, bin_size=0.1, ax=None): + """ Discretizes the tidal series speed by bin size and returns a plot of the probability for each bin in the flood or ebb tidal phase. @@ -365,7 +369,7 @@ def tidal_phase_probability( bin_size: float Speed bin size. Optional. Deaful = 0.1 m/s ax : matplotlib axes object - Axes for plotting. If None, then a new figure with a single + Axes for plotting. If None, then a new figure with a single axes is used. Returns @@ -375,22 +379,22 @@ def tidal_phase_probability( _check_inputs(directions, velocities, flood, ebb) if bin_size < 0: - raise ValueError('bin_size must be greater than 0') + raise ValueError("bin_size must be greater than 0") if ax == None: fig, ax = plt.subplots(figsize=(12, 8)) isEbb = _flood_or_ebb(directions, flood, ebb) - decimals = round(bin_size/0.1) - N_bins = int(round(velocities.max(), decimals)/bin_size) + decimals = round(bin_size / 0.1) + N_bins = int(round(velocities.max(), decimals) / bin_size) H, bins = np.histogram(velocities, bins=N_bins) H_ebb, bins1 = np.histogram(velocities[isEbb], bins=bins) H_flood, bins2 = np.histogram(velocities[~isEbb], bins=bins) - p_ebb = H_ebb/H - p_flood = H_flood/H + p_ebb = H_ebb / H + p_flood = H_flood / H center = (bins[:-1] + bins[1:]) / 2 width = 0.9 * (bins[1] - bins[0]) @@ -398,32 +402,44 @@ def tidal_phase_probability( mask1 = np.ma.where(p_ebb >= p_flood) mask2 = np.ma.where(p_flood >= p_ebb) - ax.bar(center[mask1], height=p_ebb[mask1], edgecolor='black', width=width, - label='Ebb', color='blue') - ax.bar(center, height=p_flood, edgecolor='black', width=width, - alpha=1, label='Flood', color='orange') - ax.bar(center[mask2], height=p_ebb[mask2], alpha=1, edgecolor='black', - width=width, color='blue') - - plt.xlabel('Velocity [m/s]') - plt.ylabel('Probability') + ax.bar( + center[mask1], + height=p_ebb[mask1], + edgecolor="black", + width=width, + label="Ebb", + color="blue", + ) + ax.bar( + center, + height=p_flood, + edgecolor="black", + width=width, + alpha=1, + label="Flood", + color="orange", + ) + ax.bar( + center[mask2], + height=p_ebb[mask2], + alpha=1, + edgecolor="black", + width=width, + color="blue", + ) + + plt.xlabel("Velocity [m/s]") + plt.ylabel("Probability") plt.ylim(0, 1.0) plt.legend() - plt.grid(linestyle=':') + plt.grid(linestyle=":") return ax -def tidal_phase_exceedance( - directions, - velocities, - flood, - ebb, - bin_size=0.1, - ax=None -): +def tidal_phase_exceedance(directions, velocities, flood, ebb, bin_size=0.1, ax=None): """ - Returns a stacked area plot of the exceedance probability for the + Returns a stacked area plot of the exceedance probability for the flood and ebb tidal phases. Parameters @@ -435,21 +451,21 @@ def tidal_phase_exceedance( flood: float or int Principal component of flow in the flood direction [degrees] ebb: float or int - Principal component of flow in the ebb direction [degrees] + Principal component of flow in the ebb direction [degrees] bin_size: float - Speed bin size. Optional. Deaful = 0.1 m/s + Speed bin size. Optional. Deaful = 0.1 m/s ax : matplotlib axes object - Axes for plotting. If None, then a new figure with a single + Axes for plotting. If None, then a new figure with a single axes is used. Returns ------- - ax: figure + ax: figure """ _check_inputs(directions, velocities, flood, ebb) if bin_size < 0: - raise ValueError('bin_size must be greater than 0') + raise ValueError("bin_size must be greater than 0") if ax == None: fig, ax = plt.subplots(figsize=(12, 8)) @@ -459,17 +475,20 @@ def tidal_phase_exceedance( s_ebb = velocities[isEbb] s_flood = velocities[~isEbb] - F = exceedance_probability(velocities)['F'] - F_ebb = exceedance_probability(s_ebb)['F'] - F_flood = exceedance_probability(s_flood)['F'] + F = exceedance_probability(velocities)["F"] + F_ebb = exceedance_probability(s_ebb)["F"] + F_flood = exceedance_probability(s_flood)["F"] - decimals = round(bin_size/0.1) - s_new = np.arange(np.around(velocities.min(), decimals), - np.around(velocities.max(), decimals)+bin_size, bin_size) + decimals = round(bin_size / 0.1) + s_new = np.arange( + np.around(velocities.min(), decimals), + np.around(velocities.max(), decimals) + bin_size, + bin_size, + ) f_total = interp1d(velocities, F, bounds_error=False) - f_ebb = interp1d(s_ebb, F_ebb, bounds_error=False) - f_flood = interp1d(s_flood, F_flood, bounds_error=False) + f_ebb = interp1d(s_ebb, F_ebb, bounds_error=False) + f_flood = interp1d(s_flood, F_flood, bounds_error=False) F_total = f_total(s_new) F_ebb = f_ebb(s_new) @@ -477,12 +496,16 @@ def tidal_phase_exceedance( F_max_total = np.nanmax(F_ebb) + np.nanmax(F_flood) - ax.stackplot(s_new, F_ebb/F_max_total*100, - F_flood/F_max_total*100, labels=['Ebb', 'Flood']) + ax.stackplot( + s_new, + F_ebb / F_max_total * 100, + F_flood / F_max_total * 100, + labels=["Ebb", "Flood"], + ) - plt.xlabel('velocity [m/s]') - plt.ylabel('Probability of Exceedance') + plt.xlabel("velocity [m/s]") + plt.ylabel("Probability of Exceedance") plt.legend() - plt.grid(linestyle=':', linewidth=1) + plt.grid(linestyle=":", linewidth=1) return ax diff --git a/mhkit/tidal/io/__init__.py b/mhkit/tidal/io/__init__.py index 3e20434aa..3f75b8116 100644 --- a/mhkit/tidal/io/__init__.py +++ b/mhkit/tidal/io/__init__.py @@ -1 +1,2 @@ from mhkit.tidal.io import noaa +from mhkit.tidal.io import d3d diff --git a/mhkit/tidal/io/d3d.py b/mhkit/tidal/io/d3d.py new file mode 100644 index 000000000..67ec083d9 --- /dev/null +++ b/mhkit/tidal/io/d3d.py @@ -0,0 +1 @@ +from mhkit.river.io.d3d import * diff --git a/mhkit/tidal/io/noaa.py b/mhkit/tidal/io/noaa.py index 4c261fb43..f11820695 100644 --- a/mhkit/tidal/io/noaa.py +++ b/mhkit/tidal/io/noaa.py @@ -1,42 +1,55 @@ """ noaa.py -This module provides functions to fetch, process, and read NOAA (National Oceanic and Atmospheric Administration) -current data directly from the NOAA Tides and Currents API (https://tidesandcurrents.noaa.gov/api/). It supports -loading data into a pandas DataFrame, handling data in XML and JSON formats, and writing data to a JSON file. +This module provides functions to fetch, process, and read NOAA (National +Oceanic and Atmospheric Administration) current data directly from the +NOAA Tides and Currents API (https://tidesandcurrents.noaa.gov/api/). It +supports loading data into a pandas DataFrame, handling data in XML and +JSON formats, and writing data to a JSON file. Functions: ---------- -request_noaa_data(station, parameter, start_date, end_date, proxy=None, write_json=None): - Loads NOAA current data from the API into a pandas DataFrame, with optional support for proxy settings and - writing data to a JSON file. - -_json_to_dataframe(response): - Converts NOAA response data in JSON format into a pandas DataFrame and returns metadata. (Currently, this - function does not return the full dataset requested.) +request_noaa_data(station, parameter, start_date, end_date, proxy=None, + write_json=None): + Loads NOAA current data from the API into a pandas DataFrame, + with optional support for proxy settings and writing data to a JSON + file. _xml_to_dataframe(response): - Converts NOAA response data in XML format into a pandas DataFrame and returns metadata. + Converts NOAA response data in XML format into a pandas DataFrame + and returns metadata. read_noaa_json(filename): - Reads a JSON file containing NOAA data saved from the request_noaa_data function and returns a DataFrame with - timeseries site data and metadata. + Reads a JSON file containing NOAA data saved from the request_noaa_data + function and returns a DataFrame with timeseries site data and metadata. """ + +import os import xml.etree.ElementTree as ET import datetime import json import math +import shutil import pandas as pd import requests - - -def request_noaa_data(station, parameter, start_date, end_date, - proxy=None, write_json=None): +from mhkit.utils.cache import handle_caching + + +def request_noaa_data( + station, + parameter, + start_date, + end_date, + proxy=None, + write_json=None, + clear_cache=False, + to_pandas=True, +): """ - Loads NOAA current data directly from https://tidesandcurrents.noaa.gov/api/ using a - get request into a pandas DataFrame. NOAA sets max of 31 days between start and end date. - See https://co-ops.nos.noaa.gov/api/ for options. All times are reported as GMT and metric - units are returned for data. + Loads NOAA current data directly from https://tidesandcurrents.noaa.gov/api/ + into a pandas DataFrame. NOAA sets max of 31 days between start and end date. + See https://co-ops.nos.noaa.gov/api/ for options. All times are reported as + GMT and metric units are returned for data. Uses cached data if available. The request URL prints to the screen. @@ -49,158 +62,231 @@ def request_noaa_data(station, parameter, start_date, end_date, start_date : str Start date in the format yyyyMMdd end_date : str - End date in the format yyyyMMdd + End date in the format yyyyMMdd proxy : dict or None - To request data from behind a firewall, define a dictionary of proxy settings, - for example {"http": 'localhost:8080'} + To request data from behind a firewall, define a dictionary of proxy + settings, for example {"http": 'localhost:8080'} write_json : str or None Name of json file to write data + clear_cache : bool + If True, the cache for this specific request will be cleared. + to_pandas : bool, optional + Flag to output pandas instead of xarray. Default = True. Returns ------- - data : pandas DataFrame - Data indexed by datetime with columns named according to the parameter's + data : pandas DataFrame or xarray Dataset + Data indexed by datetime with columns named according to the parameter's variable description + metadata : dict or None + Request metadata. If returning xarray, metadata is instead attached to + the data's attributes. """ - # Convert start and end dates to datetime objects - begin = datetime.datetime.strptime(start_date, '%Y%m%d').date() - end = datetime.datetime.strptime(end_date, '%Y%m%d').date() - - # Determine the number of 30 day intervals - delta = 30 - interval = math.ceil(((end - begin).days)/delta) - - # Create date ranges with 30 day intervals - date_list = [ - begin + datetime.timedelta(days=i * delta) for i in range(interval + 1)] - date_list[-1] = end - - # Iterate over date_list (30 day intervals) and fetch data - data_frames = [] - for i in range(len(date_list) - 1): - start_date = date_list[i].strftime('%Y%m%d') - end_date = date_list[i + 1].strftime('%Y%m%d') - - api_query = f"begin_date={start_date}&end_date={end_date}&station={station}&product={parameter}&units=metric&time_zone=gmt&application=web_services&format=xml" - data_url = f"https://tidesandcurrents.noaa.gov/api/datagetter?{api_query}" - - print('Data request URL: ', data_url) - - # Get response - response = requests.get(url=data_url, proxies=proxy) - - # Convert to DataFrame and save in data_frames list - df, metadata = _xml_to_dataframe(response) - data_frames.append(df) - - # Concatenate all DataFrames - data = pd.concat(data_frames, ignore_index=False) - - # Remove duplicated date values - data = data.loc[~data.index.duplicated()] - - # Write json if specified - if write_json is not None: - with open(write_json, 'w') as outfile: - # Convert DataFrame to json - jsonData = data.to_json() - # Convert to python object data - pyData = json.loads(jsonData) - # Add metadata to pyData - pyData['metadata'] = metadata - # Wrtie the pyData to a json file - json.dump(pyData, outfile) - return data, metadata - - -def _json_to_dataframe(response): - ''' - Returns a dataframe and metadata from a NOAA - response. - TODO: This function currently does not return the - full dataset requested. - ''' - text = json.loads(response.text) - metadata = text['metadata'] - # import ipdb; ipdb.set_trace() - # Initialize DataFrame - data = pd.DataFrame.from_records( - text['data'][1], index=[text['data'][1]['t']]) - # Append all times to DataFrame - for i in range(1, len(text['data'])): - data.append(pd.DataFrame.from_records(text['data'][i], - index=[text['data'][i]['t']])) - # Convert index to DataFram - data.index = pd.to_datetime(data.index) - # Remove 't' becuase it is the index - del data['t'] - # List of columns which are string - cols = data.columns[data.dtypes.eq('object')] - # Convert columns to float - data[cols] = data[cols].apply(pd.to_numeric, errors='coerce') - return data, metadata + # Type check inputs + if not isinstance(station, str): + raise TypeError( + f"Expected 'station' to be of type str, but got {type(station)}" + ) + if not isinstance(parameter, str): + raise TypeError( + f"Expected 'parameter' to be of type str, but got {type(parameter)}" + ) + if not isinstance(start_date, str): + raise TypeError( + f"Expected 'start_date' to be of type str, but got {type(start_date)}" + ) + if not isinstance(end_date, str): + raise TypeError( + f"Expected 'end_date' to be of type str, but got {type(end_date)}" + ) + if proxy and not isinstance(proxy, dict): + raise TypeError( + f"Expected 'proxy' to be of type dict or None, but got {type(proxy)}" + ) + if write_json and not isinstance(write_json, str): + raise TypeError( + f"Expected 'write_json' to be of type str or None, but got {type(write_json)}" + ) + if not isinstance(clear_cache, bool): + raise TypeError( + f"Expected 'clear_cache' to be of type bool, but got {type(clear_cache)}" + ) + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + + # Define the path to the cache directory + cache_dir = os.path.join(os.path.expanduser("~"), ".cache", "mhkit", "noaa") + + # Create a unique filename based on the function parameters + hash_params = f"{station}_{parameter}_{start_date}_{end_date}" + + # Use handle_caching to manage cache + cached_data, cached_metadata, cache_filepath = handle_caching( + hash_params, cache_dir, write_json=write_json, clear_cache_file=clear_cache + ) + + if cached_data is not None: + if write_json: + shutil.copy(cache_filepath, write_json) + if to_pandas: + return cached_data, cached_metadata + else: + cached_data = cached_data.to_xarray() + cached_data.attrs = cached_metadata + return cached_data + # If no cached data is available, make the API request + # no coverage bc in coverage runs we have already cached the data/ run this code + else: # pragma: no cover + # Convert start and end dates to datetime objects + begin = datetime.datetime.strptime(start_date, "%Y%m%d").date() + end = datetime.datetime.strptime(end_date, "%Y%m%d").date() + + # Determine the number of 30 day intervals + delta = 30 + interval = math.ceil(((end - begin).days) / delta) + + # Create date ranges with 30 day intervals + date_list = [ + begin + datetime.timedelta(days=i * delta) for i in range(interval + 1) + ] + date_list[-1] = end + + # Iterate over date_list (30 day intervals) and fetch data + data_frames = [] + for i in range(len(date_list) - 1): + start_date = date_list[i].strftime("%Y%m%d") + end_date = date_list[i + 1].strftime("%Y%m%d") + + api_query = f"begin_date={start_date}&end_date={end_date}&station={station}&product={parameter}&units=metric&time_zone=gmt&application=web_services&format=xml" + data_url = f"https://tidesandcurrents.noaa.gov/api/datagetter?{api_query}" + + print("Data request URL: ", data_url) + + # Get response + try: + response = requests.get(url=data_url, proxies=proxy) + response.raise_for_status() + except requests.exceptions.HTTPError as err: + print(f"HTTP error occurred: {err}") + continue + except requests.exceptions.RequestException as err: + print(f"Error occurred: {err}") + continue + # Convert to DataFrame and save in data_frames list + df, metadata = _xml_to_dataframe(response) + data_frames.append(df) + + # Concatenate all DataFrames + data = pd.concat(data_frames, ignore_index=False) + + # Remove duplicated date values + data = data.loc[~data.index.duplicated()] + + # After making the API request and processing the response, write the + # response to a cache file + handle_caching( + hash_params, + cache_dir, + data=data, + metadata=metadata, + clear_cache_file=clear_cache, + ) + + if write_json: + shutil.copy(cache_filepath, write_json) + + if to_pandas: + return data, metadata + else: + data = data.to_xarray() + data.attrs = metadata + return data def _xml_to_dataframe(response): - ''' + """ Returns a dataframe from an xml response - ''' + """ root = ET.fromstring(response.text) metadata = None data = None for child in root: # Save meta data dictionary - if child.tag == 'metadata': + if child.tag == "metadata": metadata = child.attrib - elif child.tag == 'observations': + elif child.tag == "observations": data = child - elif child.tag == 'error': - print('***ERROR: Response returned error') + elif child.tag == "error": + print("***ERROR: Response returned error") return None if data is None: - print('***ERROR: No observations found') + print("***ERROR: No observations found") return None # Create a list of DataFrames then Concatenate - df = pd.concat([pd.DataFrame(obs.attrib, index=[0]) - for obs in data], ignore_index=True) + df = pd.concat( + [pd.DataFrame(obs.attrib, index=[0]) for obs in data], ignore_index=True + ) # Convert time to datetime - df['t'] = pd.to_datetime(df.t) - df = df.set_index('t') + df["t"] = pd.to_datetime(df.t) + df = df.set_index("t") df.drop_duplicates(inplace=True) # Convert data to float - df[['d', 's']] = df[['d', 's']].apply(pd.to_numeric) + df[["d", "s"]] = df[["d", "s"]].apply(pd.to_numeric) return df, metadata -def read_noaa_json(filename): - ''' - Returns site DataFrame and metadata from a json saved from the +def read_noaa_json(filename, to_pandas=True): + """ + Returns site DataFrame and metadata from a json saved from the request_noaa_data Parameters ---------- filename: string filename with path of json file to load + to_pandas : bool, optional + Flag to output pandas instead of xarray. Default = True. + Returns ------- data: DataFrame - Timeseries Site data of direction and speed - metadata: dictionary - Site metadata - ''' + Timeseries Site data of direction and speed + metadata : dictionary or None + Site metadata. If returning xarray, metadata is instead attached to + the data's attributes. + """ + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + with open(filename) as outfile: - jsonData = json.load(outfile) - # Get the metadata - metadata = jsonData['metadata'] - # Remove metadata entry - del jsonData['metadata'] - # Remainder is DataFrame - data = pd.DataFrame.from_dict(jsonData) - # Convert from epoch to date time - data.index = pd.to_datetime(data.index, unit='ms') - return data, metadata + json_data = json.load(outfile) + try: # original MHKiT format (deprecate in future) + # Get the metadata + metadata = json_data["metadata"] + # Remove metadata entry + del json_data["metadata"] + # Remainder is DataFrame + data = pd.DataFrame.from_dict(json_data) + # Convert from epoch to date time + data.index = pd.to_datetime(data.index, unit="ms") + + except ValueError: # using cache.py format + if "metadata" in json_data: + metadata = json_data.pop("metadata", None) + data = pd.DataFrame( + json_data["data"], + index=pd.to_datetime(json_data["index"]), + columns=json_data["columns"], + ) + + if to_pandas: + return data, metadata + else: + data = data.to_xarray() + data.attrs = metadata + return data diff --git a/mhkit/tidal/performance.py b/mhkit/tidal/performance.py index f3346003a..3a516bec7 100644 --- a/mhkit/tidal/performance.py +++ b/mhkit/tidal/performance.py @@ -1,12 +1,16 @@ import numpy as np -import pandas as pd import xarray as xr -import warnings +from mhkit.utils import convert_to_dataarray from mhkit import dolfyn -from mhkit.river.performance import (circular, ducted, rectangular, - multiple_circular, tip_speed_ratio, - power_coefficient) +from mhkit.river.performance import ( + circular, + ducted, + rectangular, + multiple_circular, + tip_speed_ratio, + power_coefficient, +) def _slice_circular_capture_area(diameter, hub_height, doppler_cell_size): @@ -29,15 +33,15 @@ def _slice_circular_capture_area(diameter, hub_height, doppler_cell_size): Returns --------- capture_area_slice: xarray.DataArray - Capture area sliced into horizontal slices of height + Capture area sliced into horizontal slices of height `doppler_cell_size`, centered on `hub height`. """ def area_of_circle_segment(radius, angle): # Calculating area of sector - area_of_sector = np.pi * radius**2 * (angle/360) + area_of_sector = np.pi * radius**2 * (angle / 360) # Calculating area of triangle - area_of_triangle = 0.5 * radius**2 * np.sin((np.pi*angle)/180) + area_of_triangle = 0.5 * radius**2 * np.sin((np.pi * angle) / 180) return area_of_sector - area_of_triangle def point_on_circle(y, r): @@ -47,44 +51,44 @@ def point_on_circle(y, r): d = diameter cs = doppler_cell_size - A_cap = np.pi*(d/2)**2 # m^2 + A_cap = np.pi * (d / 2) ** 2 # m^2 # Need to chop up capture area into slices based on bin size # For a cirle: - r_min = hub_height - d/2 - r_max = hub_height + d/2 - A_edge = np.arange(r_min, r_max+cs, cs) - A_rng = A_edge[:-1] + cs/2 # Center of each slice + r_min = hub_height - d / 2 + r_max = hub_height + d / 2 + A_edge = np.arange(r_min, r_max + cs, cs) + A_rng = A_edge[:-1] + cs / 2 # Center of each slice # y runs from the bottom edge of the lower centerline slice to # the top edge of the lowest slice # Will need to figure out y if the hub height isn't centered y = abs(A_edge - np.mean(A_edge)) - y[np.where(abs(y) > (d/2))] = d/2 + y[np.where(abs(y) > (d / 2))] = d / 2 # Even vs odd number of slices if y.size % 2: odd = 1 else: odd = 0 - y = y[:len(y)//2] + y = y[: len(y) // 2] y = np.append(y, 0) - x = point_on_circle(y, d/2) - radii = np.rad2deg(np.arctan(x/y)*2) + x = point_on_circle(y, d / 2) + radii = np.rad2deg(np.arctan(x / y) * 2) # Segments go from outside of circle towards middle - As = area_of_circle_segment(d/2, radii) + As = area_of_circle_segment(d / 2, radii) # Subtract segments to get area of slices As_slc = As[1:] - As[:-1] if not odd: # Make middle slice half whole - As_slc[-1] = As_slc[-1]*2 + As_slc[-1] = As_slc[-1] * 2 # Copy-flip the other slices to get the whole circle As_slc = np.append(As_slc, np.flip(As_slc[:-1])) else: As_slc = abs(As_slc) - return xr.DataArray(As_slc, coords={'range': A_rng}) + return xr.DataArray(As_slc, coords={"range": A_rng}) def _slice_rectangular_capture_area(height, width, hub_height, doppler_cell_size): @@ -110,72 +114,48 @@ def _slice_rectangular_capture_area(height, width, hub_height, doppler_cell_size Returns --------- capture_area_slice: xarray.DataArray - Capture area sliced into horizontal slices of height + Capture area sliced into horizontal slices of height `doppler_cell_size`, centered on `hub height`. """ # Need to chop up capture area into slices based on bin size # For a rectangle it's pretty simple cs = doppler_cell_size - r_min = hub_height - height/2 - r_max = hub_height + height/2 - A_edge = np.arange(r_min, r_max+cs, cs) - A_rng = A_edge[:-1] + cs/2 # Center of each slice - - As_slc = np.ones(len(A_rng))*width*cs - - return xr.DataArray(As_slc, coords={'range': A_rng}) - - -def _check_dtype(var, var_name): + r_min = hub_height - height / 2 + r_max = hub_height + height / 2 + A_edge = np.arange(r_min, r_max + cs, cs) + A_rng = A_edge[:-1] + cs / 2 # Center of each slice + + As_slc = np.ones(len(A_rng)) * width * cs + + return xr.DataArray(As_slc, coords={"range": A_rng}) + + +def power_curve( + power, + velocity, + hub_height, + doppler_cell_size, + sampling_frequency, + window_avg_time=600, + turbine_profile="circular", + diameter=None, + height=None, + width=None, + to_pandas=True, +): """ - Checks the datatype of a variable, converting pandas Series to xarray DataArray, - or raising an error if the datatype is neither. - - Parameters - ------------- - var: xr.DataArray or pd.Series - The variable to be checked. - - var_name: str - The name of the variable, used for error message. - - Returns - --------- - var: xr.DataArray - The input variable, converted to xr.DataArray if it was a pd.Series. - """ - - if isinstance(var, pd.Series): - var = var.to_xarray() - elif not isinstance(var, xr.DataArray): - raise TypeError(var_name.capitalize() + - ' must be of type xr.DataArray or pd.Series') - return var - - -def power_curve(power, - velocity, - hub_height, - doppler_cell_size, - sampling_frequency, - window_avg_time=600, - turbine_profile='circular', - diameter=None, - height=None, - width=None): - """ - Calculates power curve and power statistics for a marine energy + Calculates power curve and power statistics for a marine energy device based on IEC/TS 62600-200 section 9.3. Parameters ------------- - power: pandas.Series or xarray.DataArray (time) + power: numpy ndarray, pandas DataFrame, pandas Series, xarray DataArray, or xarray Dataset Device power output timeseries. - velocity: pandas.Series or xarray.DataArray ([range,] time) + velocity: numpy ndarray, pandas DataFrame, pandas Series, xarray DataArray, or xarray Dataset 1D or 2D streamwise sea water velocity or sea water speed. hub_height: numeric - Turbine hub height altitude above the seabed. Assumes ADCP + Turbine hub height altitude above the seabed. Assumes ADCP depth bins are referenced to the seafloor. doppler_cell_size: numeric ADCP depth bin size. @@ -191,111 +171,141 @@ def power_curve(power, Required for turbine_profile='rectangular'. Defaults to None. width: numeric, optional Required for turbine_profile='rectangular'. Defaults to None. + to_pandas: bool, optional + Flag to output pandas instead of xarray. Default = True. Returns --------- - pandas.DataFrame + device_power_curve: pandas DataFrame or xarray Dataset Power-weighted velocity, mean power, power std dev, max and min power vs hub-height velocity. """ # Velocity should be a 2D xarray or pandas array and have dims (range, time) # Power should have a timestamp coordinate/index - power = _check_dtype(power, 'power') - velocity = _check_dtype(velocity, 'velocity') + power = convert_to_dataarray(power) + velocity = convert_to_dataarray(velocity) if len(velocity.shape) != 2: - raise ValueError("Velocity should be 2 dimensional and have \ - dimensions of 'time' (temporal) and 'range' (spatial).") + raise ValueError( + "Velocity should be 2 dimensional and have \ + dimensions of 'time' (temporal) and 'range' (spatial)." + ) + + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") # Numeric positive checks - numeric_params = [hub_height, doppler_cell_size, - sampling_frequency, window_avg_time] - numeric_param_names = ['hub_height', 'doppler_cell_size', - 'sampling_frequency', 'window_avg_time'] + numeric_params = [ + hub_height, + doppler_cell_size, + sampling_frequency, + window_avg_time, + ] + numeric_param_names = [ + "hub_height", + "doppler_cell_size", + "sampling_frequency", + "window_avg_time", + ] for param, name in zip(numeric_params, numeric_param_names): if not isinstance(param, (int, float)): - raise TypeError(f'{name} must be numeric.') + raise TypeError(f"{name} must be numeric.") if param <= 0: - raise ValueError(f'{name} must be positive.') + raise ValueError(f"{name} must be positive.") # Turbine profile related checks - if turbine_profile not in ['circular', 'rectangular']: + if turbine_profile not in ["circular", "rectangular"]: raise ValueError( - "`turbine_profile` must be one of 'circular' or 'rectangular'.") - if turbine_profile == 'circular': + "`turbine_profile` must be one of 'circular' or 'rectangular'." + ) + if turbine_profile == "circular": if diameter is None: raise TypeError( - "`diameter` cannot be None for input `turbine_profile` = 'circular'.") + "`diameter` cannot be None for input `turbine_profile` = 'circular'." + ) elif not isinstance(diameter, (int, float)) or diameter <= 0: raise ValueError("`diameter` must be a positive number.") else: # If the checks pass, calculate A_slc A_slc = _slice_circular_capture_area( - diameter, hub_height, doppler_cell_size) + diameter, hub_height, doppler_cell_size + ) else: # Rectangular profile if height is None or width is None: raise TypeError( - "`height` and `width` cannot be None for input `turbine_profile` = 'rectangular'.") - elif not all(isinstance(val, (int, float)) and val > 0 for val in [height, width]): + "`height` and `width` cannot be None for input `turbine_profile` = 'rectangular'." + ) + elif not all( + isinstance(val, (int, float)) and val > 0 for val in [height, width] + ): raise ValueError("`height` and `width` must be positive numbers.") else: # If the checks pass, calculate A_slc A_slc = _slice_rectangular_capture_area( - height, width, hub_height, doppler_cell_size) + height, width, hub_height, doppler_cell_size + ) # Streamwise data U = abs(velocity) - time = U['time'].values + time = U["time"].values # Interpolate power to velocity timestamps - P = power.interp(time=U['time'], method='linear') + P = power.interp(time=U["time"], method="linear") # Power weighted velocity in capture area # Interpolate U range to capture area slices, then cube and multiply by area - U_hat = U.interp(range=A_slc['range'], method='linear')**3 * A_slc + U_hat = U.interp(range=A_slc["range"], method="linear") ** 3 * A_slc # Average the velocity across the capture area and divide out area - U_hat = (U_hat.sum('range') / A_slc.sum()) ** (-1/3) + U_hat = (U_hat.sum("range") / A_slc.sum()) ** (-1 / 3) # Time-average velocity at hub-height - bnr = dolfyn.VelBinner(n_bin=window_avg_time * - sampling_frequency, fs=sampling_frequency) + bnr = dolfyn.VelBinner( + n_bin=window_avg_time * sampling_frequency, fs=sampling_frequency + ) # Hub-height velocity mean - mean_hub_vel = xr.DataArray(bnr.mean(U.sel(range=hub_height, method='nearest').values), - coords={'time': bnr.mean(time)}) + mean_hub_vel = xr.DataArray( + bnr.mean(U.sel(range=hub_height, method="nearest").values), + coords={"time": bnr.mean(time)}, + ) # Power-weighted hub-height velocity mean - U_hat_bar = xr.DataArray((bnr.mean(U_hat.values ** 3)) ** (-1/3), - coords={'time': bnr.mean(time)}) + U_hat_bar = xr.DataArray( + (bnr.mean(U_hat.values**3)) ** (-1 / 3), coords={"time": bnr.mean(time)} + ) # Average power - P_bar = xr.DataArray(bnr.mean(P.values), - coords={'time': bnr.mean(time)}) + P_bar = xr.DataArray(bnr.mean(P.values), coords={"time": bnr.mean(time)}) # Then reorganize into 0.1 m velocity bins and average U_bins = np.arange(0, np.nanmax(mean_hub_vel) + 0.1, 0.1) - U_hub_vel = mean_hub_vel.assign_coords( - {"time": mean_hub_vel}).rename({"time": "speed"}) + U_hub_vel = mean_hub_vel.assign_coords({"time": mean_hub_vel}).rename( + {"time": "speed"} + ) U_hub_mean = U_hub_vel.groupby_bins("speed", U_bins).mean() - U_hat_vel = U_hat_bar.assign_coords( - {"time": mean_hub_vel}).rename({"time": "speed"}) + U_hat_vel = U_hat_bar.assign_coords({"time": mean_hub_vel}).rename( + {"time": "speed"} + ) U_hat_mean = U_hat_vel.groupby_bins("speed", U_bins).mean() - P_bar_vel = P_bar.assign_coords( - {"time": mean_hub_vel}).rename({"time": "speed"}) + P_bar_vel = P_bar.assign_coords({"time": mean_hub_vel}).rename({"time": "speed"}) P_bar_mean = P_bar_vel.groupby_bins("speed", U_bins).mean() P_bar_std = P_bar_vel.groupby_bins("speed", U_bins).std() P_bar_max = P_bar_vel.groupby_bins("speed", U_bins).max() P_bar_min = P_bar_vel.groupby_bins("speed", U_bins).min() - out = pd.DataFrame((U_hub_mean.to_series(), - U_hat_mean.to_series(), - P_bar_mean.to_series(), - P_bar_std.to_series(), - P_bar_max.to_series(), - P_bar_min.to_series(), - )).T - out.columns = ['U_avg', 'U_avg_power_weighted', - 'P_avg', 'P_std', 'P_max', 'P_min'] - out.index.name = 'U_bins' + device_power_curve = xr.Dataset( + { + "U_avg": U_hub_mean, + "U_avg_power_weighted": U_hat_mean, + "P_avg": P_bar_mean, + "P_std": P_bar_std, + "P_max": P_bar_max, + "P_min": P_bar_min, + } + ) + device_power_curve = device_power_curve.rename({"speed_bins": "U_bins"}) - return out + if to_pandas: + device_power_curve = device_power_curve.to_pandas() + + return device_power_curve def _average_velocity_bins(U, U_hub, bin_size): @@ -314,7 +324,7 @@ def _average_velocity_bins(U, U_hub, bin_size): Returns --------- - xarray.DataArray + U_binned: xarray.DataArray Data grouped into velocity bins. """ @@ -322,10 +332,10 @@ def _average_velocity_bins(U, U_hub, bin_size): U_bins = np.arange(0, np.nanmax(U_hub) + bin_size, bin_size) # Group time-ensembles into velocity bins based on hub-height velocity and average - out = U.assign_coords({"time": U_hub}).rename({"time": "speed"}) - out = out.groupby_bins("speed", U_bins).mean() + U_binned = U.assign_coords({"time": U_hub}).rename({"time": "speed"}) + U_binned = U_binned.groupby_bins("speed", U_bins).mean() - return out + return U_binned def _apply_function(function, bnr, U): @@ -351,39 +361,41 @@ def _apply_function(function, bnr, U): applied, grouped into bins according to bnr. """ - if function == 'mean': + if function == "mean": # Average data into 5-10 minute ensembles return xr.DataArray( bnr.mean(abs(U).values), - coords={'range': U.range, - 'time': bnr.mean(U['time'].values)}) - elif function == 'rms': + coords={"range": U.range, "time": bnr.mean(U["time"].values)}, + ) + elif function == "rms": # Reshape tidal velocity - returns (range, ensemble-time, ensemble elements) U_reshaped = bnr.reshape(abs(U).values) # Take root-mean-square U_rms = np.sqrt(np.nanmean(U_reshaped**2, axis=-1)) return xr.DataArray( - U_rms, - coords={'range': U.range, - 'time': bnr.mean(U['time'].values)}) - elif function == 'std': + U_rms, coords={"range": U.range, "time": bnr.mean(U["time"].values)} + ) + elif function == "std": # Standard deviation return xr.DataArray( bnr.standard_deviation(U.values), - coords={'range': U.range, - 'time': bnr.mean(U['time'].values)}) + coords={"range": U.range, "time": bnr.mean(U["time"].values)}, + ) else: raise ValueError( - f"Unknown function {function}. Should be one of 'mean', 'rms', or 'std'") - - -def velocity_profiles(velocity, - hub_height, - water_depth, - sampling_frequency, - window_avg_time=600, - function='mean', - ): + f"Unknown function {function}. Should be one of 'mean', 'rms', or 'std'" + ) + + +def velocity_profiles( + velocity, + hub_height, + water_depth, + sampling_frequency, + window_avg_time=600, + function="mean", + to_pandas=True, +): """ Calculates profiles of the mean, root-mean-square (RMS), or standard deviation(std) of velocity. The chosen metric, specified by `function`, @@ -392,10 +404,10 @@ def velocity_profiles(velocity, Parameters ------------- - velocity : pandas.Series or xarray.DataArray ([range,] time) + velocity : numpy ndarray, pandas DataFrame, pandas Series, xarray DataArray, or xarray Dataset 1D or 2D streamwise sea water velocity or sea water speed. hub_height : numeric - Turbine hub height altitude above the seabed. Assumes ADCP depth bins + Turbine hub height altitude above the seabed. Assumes ADCP depth bins are referenced to the seafloor. water_depth : numeric Water depth to seafloor, in same units as velocity `range` coordinate. @@ -405,29 +417,36 @@ def velocity_profiles(velocity, Time averaging window in seconds. Defaults to 600. func : string Function to apply. One of 'mean','rms', or 'std' + to_pandas: bool, optional + Flag to output pandas instead of xarray. Default = True. Returns --------- - pandas.DataFrame + iec_profiles: pandas.DataFrame Average velocity profiles based on ensemble mean velocity. """ - velocity = _check_dtype(velocity, 'velocity') + velocity = convert_to_dataarray(velocity, "velocity") if len(velocity.shape) != 2: - raise ValueError("Velocity should be 2 dimensional and have \ - dimensions of 'time' (temporal) and 'range' (spatial).") + raise ValueError( + "Velocity should be 2 dimensional and have \ + dimensions of 'time' (temporal) and 'range' (spatial)." + ) - if function not in ['mean', 'rms', 'std']: + if function not in ["mean", "rms", "std"]: raise ValueError("`function` must be one of 'mean', 'rms', or 'std'.") + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") # Streamwise data U = velocity # Create binner - bnr = dolfyn.VelBinner(n_bin=window_avg_time * - sampling_frequency, fs=sampling_frequency) + bnr = dolfyn.VelBinner( + n_bin=window_avg_time * sampling_frequency, fs=sampling_frequency + ) # Take velocity at hub height - mean_hub_vel = bnr.mean(U.sel(range=hub_height, method='nearest').values) + mean_hub_vel = bnr.mean(U.sel(range=hub_height, method="nearest").values) # Apply mean, root-mean-square, or standard deviation U_out = _apply_function(function, bnr, U) @@ -438,147 +457,123 @@ def velocity_profiles(velocity, # Extend top and bottom of profiles to the seafloor and sea surface # Clip off extra depth bins with nans rdx = profiles.isel(speed_bins=0).notnull().sum().values - profiles = profiles.isel(range=slice(None, rdx+1)) + profiles = profiles.isel(range=slice(None, rdx + 1)) # Set seafloor velocity to 0 m/s out_data = np.insert(profiles.data, 0, 0, axis=0) # Set max range to the user-provided water depth - new_range = np.insert(profiles['range'].data[:-1], 0, 0) + new_range = np.insert(profiles["range"].data[:-1], 0, 0) new_range = np.append(new_range, water_depth) # Create a profiles with new range - iec_profiles = xr.DataArray(out_data, coords={'range': new_range, - 'speed_bins': profiles['speed_bins']}) + iec_profiles = xr.DataArray( + out_data, coords={"range": new_range, "speed_bins": profiles["speed_bins"]} + ) # Forward fill to surface - iec_profiles = iec_profiles.ffill('range', limit=None) + iec_profiles = iec_profiles.ffill("range", limit=None) - return iec_profiles.to_pandas() + if to_pandas: + iec_profiles = iec_profiles.to_pandas() + return iec_profiles -def device_efficiency(power, - velocity, - water_density, - capture_area, - hub_height, - sampling_frequency, - window_avg_time=600): + +def device_efficiency( + power, + velocity, + water_density, + capture_area, + hub_height, + sampling_frequency, + window_avg_time=600, + to_pandas=True, +): """ Calculates marine energy device efficiency based on IEC/TS 62600-200 Section 9.7. Parameters ------------- - power : pandas.Series or xarray.DataArray (time) + power : numpy ndarray, pandas DataFrame, pandas Series, xarray DataArray, or xarray Dataset Device power output timeseries in Watts. - velocity : pandas.Series or xarray.DataArray ([range,] time) + velocity : numpy ndarray, pandas DataFrame, pandas Series, xarray DataArray, or xarray Dataset 1D or 2D streamwise sea water velocity or sea water speed in m/s. water_density : float, pandas.Series or xarray.DataArray Sea water density in kg/m^3. capture_area : numeric Swept area of marine energy device. hub_height : numeric - Turbine hub height altitude above the seabed. Assumes ADCP depth bins + Turbine hub height altitude above the seabed. Assumes ADCP depth bins are referenced to the seafloor. sampling_frequency : numeric ADCP sampling frequency in Hz. window_avg_time : int, optional Time averaging window in seconds. Defaults to 600. + to_pandas: bool, optional + Flag to output pandas instead of xarray. Default = True. Returns --------- - pandas.Series + device_eta : pandas.Series or xarray.DataArray Device efficiency (power coefficient) in percent. """ # Velocity should be a 2D xarray or pandas array and have dims (range, time) # Power should have a timestamp coordinate/index - power = _check_dtype(power, 'power') - velocity = _check_dtype(velocity, 'velocity') + power = convert_to_dataarray(power, "power") + velocity = convert_to_dataarray(velocity, "velocity") if len(velocity.shape) != 2: - raise ValueError("Velocity should be 2 dimensional and have \ - dimensions of 'time' (temporal) and 'range' (spatial).") + raise ValueError( + "Velocity should be 2 dimensional and have \ + dimensions of 'time' (temporal) and 'range' (spatial)." + ) + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") # Streamwise data U = abs(velocity) - time = U['time'].values + time = U["time"].values # Power: Interpolate to velocity timeseries - power = _interpolate_power_to_velocity_timeseries(power, U) + power.interp(time=U["time"], method="linear") # Create binner - bnr = dolfyn.VelBinner(n_bin=window_avg_time * - sampling_frequency, fs=sampling_frequency) + bnr = dolfyn.VelBinner( + n_bin=window_avg_time * sampling_frequency, fs=sampling_frequency + ) # Hub-height velocity - mean_hub_vel = xr.DataArray(bnr.mean(U.sel(range=hub_height, method='nearest').values), - coords={'time': bnr.mean(time)}) + mean_hub_vel = xr.DataArray( + bnr.mean(U.sel(range=hub_height, method="nearest").values), + coords={"time": bnr.mean(time)}, + ) vel_hub = _average_velocity_bins(mean_hub_vel, mean_hub_vel, bin_size=0.1) # Water density rho_vel = _calculate_density(water_density, bnr, mean_hub_vel, time) # Bin average power - P_avg = xr.DataArray(bnr.mean(power.values), - coords={'time': bnr.mean(time)}) + P_avg = xr.DataArray(bnr.mean(power.values), coords={"time": bnr.mean(time)}) P_vel = _average_velocity_bins(P_avg, mean_hub_vel, bin_size=0.1) # Theoretical power resource - P_resource = 1/2 * rho_vel * capture_area * vel_hub**3 + P_resource = 1 / 2 * rho_vel * capture_area * vel_hub**3 # Efficiency eta = P_vel / P_resource - out = pd.DataFrame((vel_hub.to_series(), - eta.to_series(), - )).T - out.columns = ['U_avg', 'Efficiency'] - out.index.name = 'U_bins' + device_eta = xr.Dataset({"U_avg": vel_hub, "Efficiency": eta}) + device_eta = device_eta.rename({"speed_bins": "U_bins"}) - return out + if to_pandas: + device_eta = device_eta.to_pandas() - -def _interpolate_power_to_velocity_timeseries(power, U): - """ - Interpolates the power timeseries to match the velocity timeseries time points. - - This function checks if the input power is an xarray DataArray or a pandas Series - with a DatetimeIndex and performs interpolation accordingly. If the input power - does not match either of these types, a warning is issued and the original power - timeseries is returned. - - Parameters - ------------- - power : xarray.DataArray or pandas.Series - The device power output timeseries. - U : xarray.DataArray - 2D streamwise sea water velocity or sea water speed. - - Returns - --------- - xarray.DataArray or pandas.Series - Interpolated power timeseries. - - Raises - --------- - Warning - If the input power is not a xarray DataArray or pandas Series with - a DatetimeIndex, a warning is issued stating that the function assumes the - power timestamps match the velocity timestamps. - """ - - if 'xarray' in type(power).__module__: - return power.interp(time=U['time'], method='linear') - elif 'pandas' in type(power).__module__ and isinstance(power.index, pd.DatetimeIndex): - return power.to_xarray().interp(time=U['time'], method='linear') - else: - warnings.warn( - "Assuming `power` timestamps match `velocity` timestamps") - return power + return device_eta def _calculate_density(water_density, bnr, mean_hub_vel, time): """ Calculates the averaged density for the given time period. - This function first checks if the water_density is a scalar or an array. - If it is an array, the function calculates the mean density over the time - period using the binner object 'bnr', and then averages it over velocity bins. + This function first checks if the water_density is a scalar or an array. + If it is an array, the function calculates the mean density over the time + period using the binner object 'bnr', and then averages it over velocity bins. If it is a scalar, it directly returns the input density. Parameters @@ -595,13 +590,14 @@ def _calculate_density(water_density, bnr, mean_hub_vel, time): Returns --------- xarray.DataArray or float - The averaged water density over velocity bins if water_density is an array, + The averaged water density over velocity bins if water_density is an array, or the input scalar water_density. """ if np.size(water_density) > 1: - rho_avg = xr.DataArray(bnr.mean(water_density.values), - coords={'time': bnr.mean(time)}) + rho_avg = xr.DataArray( + bnr.mean(water_density.values), coords={"time": bnr.mean(time)} + ) return _average_velocity_bins(rho_avg, mean_hub_vel, bin_size=0.1) else: return water_density diff --git a/mhkit/tidal/resource.py b/mhkit/tidal/resource.py index ef9961780..e6b6d21c4 100644 --- a/mhkit/tidal/resource.py +++ b/mhkit/tidal/resource.py @@ -1,10 +1,11 @@ import numpy as np import math -import pandas as pd -from mhkit.river.resource import exceedance_probability, Froude_number +from mhkit.river.resource import exceedance_probability, Froude_number +from mhkit.utils import convert_to_dataarray + def _histogram(directions, velocities, width_dir, width_vel): - ''' + """ Wrapper around numpy histogram 2D. Used to find joint probability between directions and velocities. Returns joint probability H as [%]. @@ -14,9 +15,9 @@ def _histogram(directions, velocities, width_dir, width_vel): Directions in degrees with 0 degrees specified as true north velocities: array-like Velocities in m/s - width_dir: float + width_dir: float Width of directional bins for histogram in degrees - width_vel: float + width_vel: float Width of velocity bins for histogram in m/s Returns ------- @@ -26,17 +27,22 @@ def _histogram(directions, velocities, width_dir, width_vel): List of directional bin edges vel_edges: list List of velocity bin edges - ''' + """ - # Number of directional bins - N_dir = math.ceil(360/width_dir) - # Max bin (round up to nearest integer) + # Number of directional bins + N_dir = math.ceil(360 / width_dir) + # Max bin (round up to nearest integer) vel_max = math.ceil(velocities.max()) # Number of velocity bins - N_vel = math.ceil(vel_max/width_vel) + N_vel = math.ceil(vel_max / width_vel) # 2D Histogram of current speed and direction - H, dir_edges, vel_edges = np.histogram2d(directions, velocities, bins=(N_dir,N_vel), - range=[[0,360],[0,vel_max]], density=True) + H, dir_edges, vel_edges = np.histogram2d( + directions, + velocities, + bins=(N_dir, N_vel), + range=[[0, 360], [0, vel_max]], + density=True, + ) # density = true therefore bin value * bin area summed =1 bin_area = width_dir * width_vel # Convert H values to percent [%] @@ -45,9 +51,9 @@ def _histogram(directions, velocities, width_dir, width_vel): def _normalize_angle(degree): - ''' + """ Normalizes degrees to be between 0 and 360 - + Parameters ---------- degree: int or float @@ -56,28 +62,28 @@ def _normalize_angle(degree): ------- new_degree: float Normalized between 0 and 360 degrees - ''' + """ # Set new degree as remainder - new_degree = degree%360 + new_degree = degree % 360 # Ensure positive - new_degree = (new_degree + 360) % 360 + new_degree = (new_degree + 360) % 360 return new_degree def principal_flow_directions(directions, width_dir): - ''' + """ Calculates principal flow directions for ebb and flood cycles - - The weighted average (over the working velocity range of the TEC) - should be considered to be the principal direction of the current, - and should be used for both the ebb and flood cycles to determine - the TEC optimum orientation. + + The weighted average (over the working velocity range of the TEC) + should be considered to be the principal direction of the current, + and should be used for both the ebb and flood cycles to determine + the TEC optimum orientation. Parameters ---------- - directions: pandas.Series or numpy.ndarray + directions: numpy ndarray, pandas DataFrame, pandas Series, xarray DataArray, or xarray Dataset Flow direction in degrees CW from North, from 0 to 360 - width_dir: float + width_dir: float Width of directional bins for histogram in degrees Returns @@ -87,74 +93,79 @@ def principal_flow_directions(directions, width_dir): Notes ----- - One must determine which principal direction is flood and which is + One must determine which principal direction is flood and which is ebb based on knowledge of the measurement site. - ''' + """ - if isinstance(directions, np.ndarray): - directions=pd.Series(directions) - assert(all(directions>=0) and all(directions<=360), - 'flood must be between 0 and 360 degrees') + directions = convert_to_dataarray(directions) + if any(directions < 0) or any(directions > 360): + violating_values = [d for d in directions if d < 0 or d > 360] + raise ValueError( + f"directions must be between 0 and 360 degrees. Values out of range: {violating_values}" + ) - # Number of directional bins - N_dir=int(360/width_dir) + # Number of directional bins + N_dir = int(360 / width_dir) # Compute directional histogram - H1, dir_edges = np.histogram(directions, bins=N_dir,range=[0,360], density=True) - # Convert to perecnt - H1 = H1 * 100 # [%] + H1, dir_edges = np.histogram(directions, bins=N_dir, range=[0, 360], density=True) + # Convert to percent + H1 = H1 * 100 # [%] # Determine if there are an even or odd number of bins - odd = bool( N_dir % 2 ) + odd = bool(N_dir % 2) # Shift by 180 degrees and sum if odd: # Then split middle bin counts to left and right - H0to180 = H1[0:N_dir//2] - H180to360 = H1[N_dir//2+1:] - H0to180[-1] += H1[N_dir//2]/2 - H180to360[0] += H1[N_dir//2]/2 - #Add the two + H0to180 = H1[0 : N_dir // 2] + H180to360 = H1[N_dir // 2 + 1 :] + H0to180[-1] += H1[N_dir // 2] / 2 + H180to360[0] += H1[N_dir // 2] / 2 + # Add the two H180 = H0to180 + H180to360 else: - H180 = H1[0:N_dir//2] + H1[N_dir//2:N_dir+1] + H180 = H1[0 : N_dir // 2] + H1[N_dir // 2 : N_dir + 1] # Find the maximum value maxDegreeStacked = H180.argmax() # Shift by 90 to find angles normal to principal direction - floodEbbNormalDegree1 = _normalize_angle(maxDegreeStacked + 90.) - # Find the complimentary angle - floodEbbNormalDegree2 = _normalize_angle(floodEbbNormalDegree1+180.) + floodEbbNormalDegree1 = _normalize_angle(maxDegreeStacked + 90.0) + # Find the complimentary angle + floodEbbNormalDegree2 = _normalize_angle(floodEbbNormalDegree1 + 180.0) # Reset values so that the Degree1 is the smaller angle, and Degree2 the large floodEbbNormalDegree1 = min(floodEbbNormalDegree1, floodEbbNormalDegree2) - floodEbbNormalDegree2 = floodEbbNormalDegree1 + 180. + floodEbbNormalDegree2 = floodEbbNormalDegree1 + 180.0 # Slice directions on the 2 semi circles - d1 = directions[directions.between(floodEbbNormalDegree1, - floodEbbNormalDegree2)] - d2 = directions[~directions.between(floodEbbNormalDegree1, - floodEbbNormalDegree2)] + mask = (directions >= floodEbbNormalDegree1) & (directions <= floodEbbNormalDegree2) + d1 = directions[mask] + d2 = directions[~mask] # Shift second set of of directions to not break between 360 and 0 - d2 -= 180. + d2 -= 180 # Renormalize the points (gets rid of negatives) d2 = _normalize_angle(d2) # Number of bins for semi-circle - n_dir = int(180/width_dir) + n_dir = int(180 / width_dir) # Compute 1D histograms on both semi circles - Hd1, dir1_edges = np.histogram(d1, bins=n_dir,density=True) - Hd2, dir2_edges = np.histogram(d2, bins=n_dir,density=True) - # Convert to perecnt - Hd1 = Hd1 * 100 # [%] - Hd2 = Hd2 * 100 # [%] + Hd1, dir1_edges = np.histogram(d1, bins=n_dir, density=True) + Hd2, dir2_edges = np.histogram(d2, bins=n_dir, density=True) + # Convert to percent + Hd1 = Hd1 * 100 # [%] + Hd2 = Hd2 * 100 # [%] # Principal Directions average of the 2 bins - PrincipalDirection1 = 0.5 * (dir1_edges[Hd1.argmax()]+ dir1_edges[Hd1.argmax()+1]) - PrincipalDirection2 = 0.5 * (dir2_edges[Hd2.argmax()]+ dir2_edges[Hd2.argmax()+1])+180.0 + PrincipalDirection1 = 0.5 * ( + dir1_edges[Hd1.argmax()] + dir1_edges[Hd1.argmax() + 1] + ) + PrincipalDirection2 = ( + 0.5 * (dir2_edges[Hd2.argmax()] + dir2_edges[Hd2.argmax() + 1]) + 180.0 + ) + + return PrincipalDirection1, PrincipalDirection2 - return PrincipalDirection1, PrincipalDirection2 - def _flood_or_ebb(d, flood, ebb): - ''' - Returns a mask which is True for directions on the ebb side of the - midpoints between the flood and ebb directions on the unit circle + """ + Returns a mask which is True for directions on the ebb side of the + midpoints between the flood and ebb directions on the unit circle and False for directions on the Flood side. - + Parameters ---------- d: array-like @@ -163,24 +174,23 @@ def _flood_or_ebb(d, flood, ebb): Principal component of flow in the flood direction in degrees ebb: float or int Principal component of flow in the ebb direction in degrees - + Returns ------- is_ebb: boolean array - array of length N which is True for directions on the ebb side + array of length N which is True for directions on the ebb side of the midpoints between flood and ebb on the unit circle and false otherwise. - ''' + """ max_angle = max(ebb, flood) min_angle = min(ebb, flood) - - lower_split = (min_angle + (360 - max_angle + min_angle)/2 ) % 360 + + lower_split = (min_angle + (360 - max_angle + min_angle) / 2) % 360 upper_split = lower_split + 180 - + if lower_split <= ebb < upper_split: is_ebb = ((d < upper_split) & (d >= lower_split)).values else: is_ebb = ~((d < upper_split) & (d >= lower_split)).values - - return is_ebb + return is_ebb diff --git a/mhkit/utils.py b/mhkit/utils.py deleted file mode 100644 index 65ba2b918..000000000 --- a/mhkit/utils.py +++ /dev/null @@ -1,299 +0,0 @@ -from pecos.utils import index_to_datetime -import matplotlib.pyplot as plt -import datetime as dt -from mhkit import qc -import pandas as pd -import numpy as np - - -_matlab = False # Private variable indicating if mhkit is run through matlab - -def get_statistics(data,freq,period=600,vector_channels=[]): - """ - Calculate mean, max, min and stdev statistics of continuous data for a - given statistical window. Default length of statistical window (period) is - based on IEC TS 62600-3:2020 ED1. Also allows calculation of statistics for multiple statistical - windows of continuous data and accounts for vector/directional channels. - - Parameters - ------------ - data : pandas DataFrame - Data indexed by datetime with columns of data to be analyzed - freq : float/int - Sample rate of data [Hz] - period : float/int - Statistical window of interest [sec], default = 600 - vector_channels : string or list (optional) - List of vector/directional channel names formatted in deg (0-360) - - Returns - --------- - means,maxs,mins,stdevs : pandas DataFrame - Calculated statistical values from the data, indexed by the first timestamp - """ - # Check data type - assert isinstance(data, pd.DataFrame), 'data must be of type pd.DataFrame' - assert isinstance(freq, (float,int)), 'freq must be of type int or float' - assert isinstance(period, (float,int)), 'freq must be of type int or float' - # catch if vector_channels is not an string array - if isinstance(vector_channels,str): vector_channels = [vector_channels] - assert isinstance(vector_channels, list), 'vector_channels must be a list of strings' - - # Check timestamp using qc module - data.index = data.index.round('1ms') - dataQC = qc.check_timestamp(data,1/freq) - dataQC = dataQC['cleaned_data'] - - # Check to see if data length contains enough data points for statistical window - if len(dataQC)%(period*freq) > 0: - remain = len(dataQC) % (period*freq) - dataQC = dataQC.iloc[0:-int(remain)] - print('WARNING: there were not enough data points in the last statistical period. Last '+str(remain)+' points were removed.') - - # Pre-allocate lists - time = [] - means = [] - maxs = [] - mins = [] - stdev = [] - - # Get data chunks to performs stats on - step = period*freq - for i in range(int(len(dataQC)/(period*freq))): - datachunk = dataQC.iloc[i*step:(i+1)*step] - # Check whether there are any NaNs in datachunk - if datachunk.isnull().any().any(): - print('NaNs found in statistical window...check timestamps!') - input('Press to continue') - continue - else: - # Get stats - time.append(datachunk.index.values[0]) # time vector - maxs.append(datachunk.max()) # maxes - mins.append(datachunk.min()) # mins - means.append(datachunk.mean()) # means - stdev.append(datachunk.std()) # standard deviation - # calculate vector averages and std - for v in vector_channels: - vector_avg, vector_std = vector_statistics(datachunk[v]) - means[i][v] = vector_avg # overwrite scalar average for channel - stdev[i][v] = vector_std # overwrite scalar std for channel - - # Convert to DataFrames and set index - means = pd.DataFrame(means,index=time) - maxs = pd.DataFrame(maxs,index=time) - mins = pd.DataFrame(mins,index=time) - stdevs = pd.DataFrame(stdev,index=time) - - return means,maxs,mins,stdevs - -def vector_statistics(data): - """ - Function used to calculate statistics for vector/directional channels based on - routine from Campbell data logger and Yamartino algorithm - - Parameters - ---------- - data : pandas Series, numpy array, list - Vector channel to calculate statistics on [deg, 0-360] - - Returns - ------- - vector_avg : numpy array - Vector mean statistic - vector_std : numpy array - Vector standard deviation statistic - """ - try: data = np.array(data) - except: pass - assert isinstance(data, np.ndarray), 'data must be of type np.ndarray' - - # calculate mean - Ux = sum(np.sin(data*np.pi/180))/len(data) - Uy = sum(np.cos(data*np.pi/180))/len(data) - vector_avg = (90 - np.arctan2(Uy,Ux)*180/np.pi) - if vector_avg<0: vector_avg = vector_avg+360 - elif vector_avg>360: vector_avg = vector_avg-360 - # calculate standard deviation - magsum = round((Ux**2 + Uy**2)*1e8)/1e8 # round to 8th decimal place to reduce roundoff error - epsilon = (1-magsum)**0.5 - if not np.isreal(epsilon): # check if epsilon is imaginary (error) - vector_std = 0 - print('WARNING: epsilon contains imaginary value') - else: - vector_std = np.arcsin(epsilon)*(1+0.1547*epsilon**3)*180/np.pi - - return vector_avg, vector_std - -def unwrap_vector(data): - """ - Function used to unwrap vectors into 0-360 deg range - - Parameters - ------------ - data : pandas Series, numpy array, list - Data points to be unwrapped [deg] - - Returns - --------- - data : numpy array - Data points unwrapped between 0-360 deg - """ - # Check data types - try: - data = np.array(data) - except: - pass - assert isinstance(data, np.ndarray), 'data must be of type np.ndarray' - - # Loop through and unwrap points - for i in range(len(data)): - if data[i] < 0: - data[i] = data[i]+360 - elif data[i] > 360: - data[i] = data[i]-360 - if max(data) > 360 or min(data) < 0: - data = unwrap_vector(data) - return data - -def matlab_to_datetime(matlab_datenum): - """ - Convert MATLAB datenum format to Python datetime - - Parameters - ------------ - matlab_datenum : numpy array - MATLAB datenum to be converted - - Returns - --------- - time : DateTimeIndex - Python datetime values - """ - # Check data types - try: - matlab_datenum = np.array(matlab_datenum,ndmin=1) - except: - pass - assert isinstance(matlab_datenum, np.ndarray), 'data must be of type np.ndarray' - - # Pre-allocate - time = [] - # loop through dates and convert - for t in matlab_datenum: - day = dt.datetime.fromordinal(int(t)) - dayfrac = dt.timedelta(days=t%1) - dt.timedelta(days = 366) - time.append(day + dayfrac) - - time = np.array(time) - time = pd.to_datetime(time) - return time - -def excel_to_datetime(excel_num): - """ - Convert Excel datenum format to Python datetime - - Parameters - ------------ - excel_num : numpy array - Excel datenums to be converted - - Returns - --------- - time : DateTimeIndex - Python datetime values - """ - # Check data types - try: - excel_num = np.array(excel_num) - except: - pass - assert isinstance(excel_num, np.ndarray), 'data must be of type np.ndarray' - - # Convert to datetime - time = pd.to_datetime('1899-12-30')+pd.to_timedelta(excel_num,'D') - - return time - - -def magnitude_phase(x,y,z=None): - ''' - Retuns magnitude and phase in two or three dimensions. - - Parameters - ---------- - x: array_like - x-component - y: array_like - y-component - z: array_like - z-component defined positive up. (Optional) Default None. - - Returns - ------- - mag: float or array - magnitude of the vector - theta: float or array - radians from the x-axis - phi: float or array - radians from z-axis defined as positive up. Optional: only - returned when z is passed. - ''' - x=np.array(x) - y=np.array(y) - - threeD=False - if not isinstance(z, type(None)): - z=np.array(z) - threeD=True - - assert isinstance(x, (float,int,np.ndarray)) - assert isinstance(y, (float,int,np.ndarray)) - assert isinstance(z, (type(None),float,int,np.ndarray)) - - if threeD: - mag = np.sqrt(x**2 + y**2 + z**2) - theta = np.arctan2(y,x) - phi = np.arctan2(np.sqrt(x**2+y**2),z) - return mag, theta, phi - else: - mag = np.sqrt(x**2 + y**2) - theta = np.arctan2(y, x) - return mag, theta - -def unorm(x, y ,z): - ''' - Calculates the root mean squared value given three arrays. - - Parameters - ---------- - x: array - One input for the root mean squared calculation.(eq. x velocity) - y: array - One input for the root mean squared calculation.(eq. y velocity) - z: array - One input for the root mean squared calculation.(eq. z velocity) - - Returns - ------- - unorm : array - The root mean squared of x, y, and z. - - Example - ------- - If the inputs are [1,2,3], [4,5,6], and [7,8,9] the code take the - cordinationg value from each array and calculates the root mean squared. - The resulting output is [ 8.1240384, 9.64365076, 11.22497216]. - ''' - - assert isinstance(x,(np.ndarray, np.float64, pd.Series)), 'x must be an array' - assert isinstance(y,(np.ndarray, np.float64, pd.Series)), 'y must be an array' - assert isinstance(z,(np.ndarray, np.float64, pd.Series)), 'z must be an array' - assert all([len(x) == len(y), len (y) ==len (z)]), ('lengths of arrays must' - +' match') - - xyz = np.array([x,y,z]) - unorm = np.linalg.norm(xyz, axis= 0) - - return unorm - \ No newline at end of file diff --git a/mhkit/utils/__init__.py b/mhkit/utils/__init__.py new file mode 100644 index 000000000..e195d4569 --- /dev/null +++ b/mhkit/utils/__init__.py @@ -0,0 +1,18 @@ +from .time_utils import matlab_to_datetime, excel_to_datetime +from .stat_utils import ( + get_statistics, + vector_statistics, + unwrap_vector, + magnitude_phase, + unorm, +) +from .cache import handle_caching, clear_cache +from .upcrossing import upcrossing, peaks, troughs, heights, periods, custom +from .type_handling import ( + to_numeric_array, + convert_to_dataset, + convert_to_dataarray, + convert_nested_dict_and_pandas, +) + +_matlab = False # Private variable indicating if mhkit is run through matlab diff --git a/mhkit/utils/cache.py b/mhkit/utils/cache.py new file mode 100644 index 000000000..423a12757 --- /dev/null +++ b/mhkit/utils/cache.py @@ -0,0 +1,244 @@ +""" +This module provides functionality for managing cache files to optimize +network requests and computations for handling data. The module focuses +on enabling users to read from and write to cache files, as well as +perform cache clearing operations. Cache files are utilized to store data +temporarily, mitigating the need to re-fetch or recompute the same data multiple +times, which can be especially useful in network-dependent tasks. + +The module consists of two main functions: + +1. `handle_caching`: + This function manages the caching of data. It provides options to read from + and write to cache files, depending on whether the data is already provided + or if it needs to be fetched from the cache. If a cache file corresponding + to the given parameters already exists, the function can either load data + from it or clear it based on the parameters passed. It also offers the ability + to store associated metadata along with the data and supports both JSON and + pickle file formats for caching. This function returns the loaded data and + metadata from the cache file, along with the cache file path. + +2. `clear_cache`: + This function enables the clearing of either specific sub-directories or the + entire cache directory, depending on the parameter passed. It removes the + specified directory and then recreates it to ensure future caching tasks can + be executed without any issues. If the specified directory does not exist, + the function prints an indicative message. + +Module Dependencies: +-------------------- + - hashlib: For creating unique filenames based on hashed parameters. + - json: For reading and writing JSON formatted cache files. + - os: For performing operating system dependent tasks like directory creation. + - re: For regular expression operations to match datetime formatted strings. + - shutil: For performing high-level file operations like copying and removal. + - pickle: For reading and writing pickle formatted cache files. + - pandas: For handling data in DataFrame format. + +Author: ssolson +Date: 2023-09-26 +""" + +import hashlib +import json +import os +import re +import shutil +import pickle +import pandas as pd + + +def handle_caching( + hash_params, + cache_dir, + data=None, + metadata=None, + write_json=None, + clear_cache_file=False, +): + """ + Handles caching of data to avoid redundant network requests or + computations. + + The function checks if a cache file exists for the given parameters. + If it does, the function will load data from the cache file, unless + the `clear_cache_file` parameter is set to `True`, in which case the + cache file is cleared. If the cache file does not exist and the + `data` parameter is not `None`, the function will store the + provided data in a cache file. + + Parameters + ---------- + hash_params : str + The parameters to be hashed and used as the filename for the cache file. + cache_dir : str + The directory where the cache files are stored. + data : pandas DataFrame or None + The data to be stored in the cache file. If `None`, the function + will attempt to load data from the cache file. + metadata : dict or None + Metadata associated with the data. This will be stored in the + cache file along with the data. + write_json : str or None + If specified, the cache file will be copied to a file with this name. + clear_cache_file : bool + If `True`, the cache file for the given parameters will be cleared. + + Returns + ------- + data : pandas DataFrame or None + The data loaded from the cache file. If data was provided as a + parameter, the same data will be returned. If the cache file + does not exist and no data was provided, `None` will be returned. + metadata : dict or None + The metadata loaded from the cache file. If metadata was provided + as a parameter, the same metadata will be returned. If the cache + file does not exist and no metadata was provided, `None` will be + returned. + cache_filepath : str + The path to the cache file. + """ + + # Check if 'cdip' is in cache_dir, then use .pkl instead of .json + file_extension = ( + ".pkl" + if "cdip" in cache_dir or "hindcast" in cache_dir or "ndbc" in cache_dir + else ".json" + ) + + # Make cache directory if it doesn't exist + if not os.path.isdir(cache_dir): + os.makedirs(cache_dir) + + # Create a unique filename based on the function parameters + cache_filename = ( + hashlib.md5(hash_params.encode("utf-8")).hexdigest() + file_extension + ) + cache_filepath = os.path.join(cache_dir, cache_filename) + + # If clear_cache_file is True, remove the cache file for this request + if clear_cache_file and os.path.isfile(cache_filepath): + os.remove(cache_filepath) + print(f"Cleared cache for {cache_filepath}") + + # If a cached file exists, load and return the data from the file + if os.path.isfile(cache_filepath) and data is None: + if file_extension == ".json": + with open(cache_filepath, encoding="utf-8") as f: + jsonData = json.load(f) + + # Extract metadata if it exists + if "metadata" in jsonData: + metadata = jsonData.pop("metadata", None) + + # Check if index is datetime formatted + if all( + re.match(r"\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}", str(dt)) + for dt in jsonData["index"] + ): + data = pd.DataFrame( + jsonData["data"], + index=pd.to_datetime(jsonData["index"]), + columns=jsonData["columns"], + ) + else: + data = pd.DataFrame( + jsonData["data"], + index=jsonData["index"], + columns=jsonData["columns"], + ) + + # Convert the rest to DataFrame + data = pd.DataFrame( + jsonData["data"], + index=pd.to_datetime(jsonData["index"]), + columns=jsonData["columns"], + ) + + elif file_extension == ".pkl": + with open(cache_filepath, "rb") as f: + data, metadata = pickle.load(f) + + if write_json: + shutil.copy(cache_filepath, write_json) + + return data, metadata, cache_filepath + + # If a cached file does not exist and data is provided, + # store the data in a cache file + elif data is not None: + if file_extension == ".json": + # Convert DataFrame to python dict + pyData = data.to_dict(orient="split") + # Add metadata to pyData + pyData["metadata"] = metadata + # Check if index is datetime indexed + if isinstance(data.index, pd.DatetimeIndex): + pyData["index"] = [ + dt.strftime("%Y-%m-%d %H:%M:%S") for dt in pyData["index"] + ] + else: + pyData["index"] = list(data.index) + with open(cache_filepath, "w", encoding="utf-8") as f: + json.dump(pyData, f) + + elif file_extension == ".pkl": + with open(cache_filepath, "wb") as f: + pickle.dump((data, metadata), f) + + if write_json: + shutil.copy(cache_filepath, write_json) + + return data, metadata, cache_filepath + # If data is not provided and the cache file doesn't exist, return cache_filepath + return None, None, cache_filepath + + +def clear_cache(specific_dir=None): + """ + Clears the cache. + + The function checks if a specific directory or the entire cache directory + exists. If it does, the function will remove the directory and recreate it. + If the directory does not exist, a message indicating is printed. + + Parameters + ---------- + specific_dir : str or None, optional + Specific sub-directory to clear. If None, the entire cache is cleared. + Default is None. + + Returns + ------- + None + """ + cache_dir = os.path.join(os.path.expanduser("~"), ".cache", "mhkit") + + # Consider generating this from a system folder search + folders = { + "river": "river", + "tidal": "tidal", + "wave": "wave", + "usgs": os.path.join("river", "usgs"), + "noaa": os.path.join("tidal", "noaa"), + "ndbc": os.path.join("wave", "ndbc"), + "cdip": os.path.join("wave", "cdip"), + "hindcast": os.path.join("wave", "hindcast"), + } + + # If specific_dir is provided and matches a key in the folders dictionary, + # use its corresponding value + if specific_dir and specific_dir in folders: + specific_dir = folders[specific_dir] + + # Construct the path to the directory to be cleared + path_to_clear = os.path.join(cache_dir, specific_dir) if specific_dir else cache_dir + + # Check if the directory exists + if os.path.exists(path_to_clear): + # Clear the directory + shutil.rmtree(path_to_clear) + # Recreate the directory after deletion + os.makedirs(path_to_clear) + else: + print(f"The directory {path_to_clear} does not exist.") diff --git a/mhkit/utils/stat_utils.py b/mhkit/utils/stat_utils.py new file mode 100644 index 000000000..f0a7e2994 --- /dev/null +++ b/mhkit/utils/stat_utils.py @@ -0,0 +1,270 @@ +from mhkit import qc +import pandas as pd +import numpy as np + + +def get_statistics(data, freq, period=600, vector_channels=[]): + """ + Calculate mean, max, min and stdev statistics of continuous data for a + given statistical window. Default length of statistical window (period) is + based on IEC TS 62600-3:2020 ED1. Also allows calculation of statistics for multiple statistical + windows of continuous data and accounts for vector/directional channels. + + Parameters + ------------ + data : pandas DataFrame + Data indexed by datetime with columns of data to be analyzed + freq : float/int + Sample rate of data [Hz] + period : float/int + Statistical window of interest [sec], default = 600 + vector_channels : string or list (optional) + List of vector/directional channel names formatted in deg (0-360) + + Returns + --------- + means,maxs,mins,stdevs : pandas DataFrame + Calculated statistical values from the data, indexed by the first timestamp + """ + # Check data type + if not isinstance(data, pd.DataFrame): + raise TypeError(f"data must be of type pd.DataFrame. Got: {type(data)}") + if not isinstance(freq, (float, int)): + raise TypeError(f"freq must be of type int or float. Got: {type(freq)}") + if not isinstance(period, (float, int)): + raise TypeError(f"period must be of type int or float. Got: {type(period)}") + # catch if vector_channels is not an string array + if isinstance(vector_channels, str): + vector_channels = [vector_channels] + if not isinstance(vector_channels, list): + raise TypeError( + f"vector_channels must be a list of strings. Got: {type(vector_channels)}" + ) + + # Check timestamp using qc module + data.index = data.index.round("1ms") + dataQC = qc.check_timestamp(data, 1 / freq) + dataQC = dataQC["cleaned_data"] + + # Check to see if data length contains enough data points for statistical window + if len(dataQC) % (period * freq) > 0: + remain = len(dataQC) % (period * freq) + dataQC = dataQC.iloc[0 : -int(remain)] + print( + "WARNING: there were not enough data points in the last statistical period. Last " + + str(remain) + + " points were removed." + ) + + # Pre-allocate lists + time = [] + means = [] + maxs = [] + mins = [] + stdev = [] + + # Get data chunks to performs stats on + step = period * freq + for i in range(int(len(dataQC) / (period * freq))): + datachunk = dataQC.iloc[i * step : (i + 1) * step] + # Check whether there are any NaNs in datachunk + if datachunk.isnull().any().any(): + print("NaNs found in statistical window...check timestamps!") + input("Press to continue") + continue + else: + # Get stats + time.append(datachunk.index.values[0]) # time vector + maxs.append(datachunk.max()) # maxes + mins.append(datachunk.min()) # mins + means.append(datachunk.mean()) # means + stdev.append(datachunk.std()) # standard deviation + # calculate vector averages and std + for v in vector_channels: + vector_avg, vector_std = vector_statistics(datachunk[v]) + # overwrite scalar average for channel + means[i][v] = vector_avg + stdev[i][v] = vector_std # overwrite scalar std for channel + + # Convert to DataFrames and set index + means = pd.DataFrame(means, index=time) + maxs = pd.DataFrame(maxs, index=time) + mins = pd.DataFrame(mins, index=time) + stdevs = pd.DataFrame(stdev, index=time) + + return means, maxs, mins, stdevs + + +def vector_statistics(data): + """ + Function used to calculate statistics for vector/directional channels based on + routine from Campbell data logger and Yamartino algorithm + + Parameters + ---------- + data : pandas Series, numpy array, list + Vector channel to calculate statistics on [deg, 0-360] + + Returns + ------- + vector_avg : numpy array + Vector mean statistic + vector_std : numpy array + Vector standard deviation statistic + """ + try: + data = np.array(data) + except: + pass + if not isinstance(data, np.ndarray): + raise TypeError(f"data must be of type np.ndarray. Got: {type(data)}") + + # calculate mean + Ux = sum(np.sin(data * np.pi / 180)) / len(data) + Uy = sum(np.cos(data * np.pi / 180)) / len(data) + vector_avg = 90 - np.arctan2(Uy, Ux) * 180 / np.pi + if vector_avg < 0: + vector_avg = vector_avg + 360 + elif vector_avg > 360: + vector_avg = vector_avg - 360 + # calculate standard deviation + # round to 8th decimal place to reduce roundoff error + magsum = round((Ux**2 + Uy**2) * 1e8) / 1e8 + epsilon = (1 - magsum) ** 0.5 + if not np.isreal(epsilon): # check if epsilon is imaginary (error) + vector_std = 0 + print("WARNING: epsilon contains imaginary value") + else: + vector_std = np.arcsin(epsilon) * (1 + 0.1547 * epsilon**3) * 180 / np.pi + + return vector_avg, vector_std + + +def unwrap_vector(data): + """ + Function used to unwrap vectors into 0-360 deg range + + Parameters + ------------ + data : pandas Series, numpy array, list + Data points to be unwrapped [deg] + + Returns + --------- + data : numpy array + Data points unwrapped between 0-360 deg + """ + # Check data types + try: + data = np.array(data) + except: + pass + if not isinstance(data, np.ndarray): + raise TypeError(f"data must be of type np.ndarray. Got: {type(data)}") + + # Loop through and unwrap points + for i in range(len(data)): + if data[i] < 0: + data[i] = data[i] + 360 + elif data[i] > 360: + data[i] = data[i] - 360 + if max(data) > 360 or min(data) < 0: + data = unwrap_vector(data) + return data + + +def magnitude_phase(x, y, z=None): + """ + Retuns magnitude and phase in two or three dimensions. + + Parameters + ---------- + x: array_like + x-component + y: array_like + y-component + z: array_like + z-component defined positive up. (Optional) Default None. + + Returns + ------- + mag: float or array + magnitude of the vector + theta: float or array + radians from the x-axis + phi: float or array + radians from z-axis defined as positive up. Optional: only + returned when z is passed. + """ + x = np.array(x) + y = np.array(y) + + threeD = False + if not isinstance(z, type(None)): + z = np.array(z) + threeD = True + + if not isinstance(x, (float, int, np.ndarray)): + raise TypeError(f"x must be of type float, int, or np.ndarray. Got: {type(x)}") + if not isinstance(y, (float, int, np.ndarray)): + raise TypeError(f"y must be of type float, int, or np.ndarray. Got: {type(y)}") + if not isinstance(z, (type(None), float, int, np.ndarray)): + raise TypeError( + f"If specified, z must be of type float, int, or np.ndarray. Got: {type(z)}" + ) + + if threeD: + mag = np.sqrt(x**2 + y**2 + z**2) + theta = np.arctan2(y, x) + phi = np.arctan2(np.sqrt(x**2 + y**2), z) + return mag, theta, phi + else: + mag = np.sqrt(x**2 + y**2) + theta = np.arctan2(y, x) + return mag, theta + + +def unorm(x, y, z): + """ + Calculates the root mean squared value given three arrays. + + Parameters + ---------- + x: array + One input for the root mean squared calculation.(eq. x velocity) + y: array + One input for the root mean squared calculation.(eq. y velocity) + z: array + One input for the root mean squared calculation.(eq. z velocity) + + Returns + ------- + unorm : array + The root mean squared of x, y, and z. + + Example + ------- + If the inputs are [1,2,3], [4,5,6], and [7,8,9] the code take the + cordinationg value from each array and calculates the root mean squared. + The resulting output is [ 8.1240384, 9.64365076, 11.22497216]. + """ + + if not isinstance(x, (np.ndarray, np.float64, pd.Series)): + raise TypeError( + f"x must be of type np.ndarray, np.float64, or pd.Series. Got: {type(x)}" + ) + if not isinstance(y, (np.ndarray, np.float64, pd.Series)): + raise TypeError( + f"y must be of type np.ndarray, np.float64, or pd.Series. Got: {type(y)}" + ) + if not isinstance(z, (np.ndarray, np.float64, pd.Series)): + raise TypeError( + f"z must be of type np.ndarray, np.float64, or pd.Series. Got: {type(z)}" + ) + if not all([len(x) == len(y), len(y) == len(z)]): + raise ValueError("lengths of arrays must match") + + xyz = np.array([x, y, z]) + unorm = np.linalg.norm(xyz, axis=0) + + return unorm diff --git a/mhkit/utils/time_utils.py b/mhkit/utils/time_utils.py new file mode 100644 index 000000000..643219c9b --- /dev/null +++ b/mhkit/utils/time_utils.py @@ -0,0 +1,66 @@ +import datetime as dt +import pandas as pd +import numpy as np + + +def matlab_to_datetime(matlab_datenum): + """ + Convert MATLAB datenum format to Python datetime + + Parameters + ------------ + matlab_datenum : numpy array + MATLAB datenum to be converted + + Returns + --------- + time : DateTimeIndex + Python datetime values + """ + # Check data types + try: + matlab_datenum = np.array(matlab_datenum, ndmin=1) + except: + pass + if not isinstance(matlab_datenum, np.ndarray): + raise TypeError(f"data must be of type np.ndarray. Got: {type(data)}") + + # Pre-allocate + time = [] + # loop through dates and convert + for t in matlab_datenum: + day = dt.datetime.fromordinal(int(t)) + dayfrac = dt.timedelta(days=t % 1) - dt.timedelta(days=366) + time.append(day + dayfrac) + + time = np.array(time) + time = pd.to_datetime(time) + return time + + +def excel_to_datetime(excel_num): + """ + Convert Excel datenum format to Python datetime + + Parameters + ------------ + excel_num : numpy array + Excel datenums to be converted + + Returns + --------- + time : DateTimeIndex + Python datetime values + """ + # Check data types + try: + excel_num = np.array(excel_num) + except: + pass + if not isinstance(excel_num, np.ndarray): + raise TypeError(f"excel_num must be of type np.ndarray. Got: {type(excel_num)}") + + # Convert to datetime + time = pd.to_datetime("1899-12-30") + pd.to_timedelta(excel_num, "D") + + return time diff --git a/mhkit/utils/type_handling.py b/mhkit/utils/type_handling.py new file mode 100644 index 000000000..2b6c5b920 --- /dev/null +++ b/mhkit/utils/type_handling.py @@ -0,0 +1,211 @@ +import numpy as np +import pandas as pd +import xarray as xr + + +def to_numeric_array(data, name): + """ + Convert input data to a numeric array, ensuring all elements are numeric. + """ + if isinstance(data, (list, np.ndarray, pd.Series, xr.DataArray)): + data = np.asarray(data) + if not np.issubdtype(data.dtype, np.number): + raise TypeError( + (f"{name} must contain numeric data." + f" Got data type: {data.dtype}") + ) + else: + raise TypeError( + ( + f"{name} must be a list, np.ndarray, pd.Series," + + f" or xr.DataArray. Got: {type(data)}" + ) + ) + return data + + +def convert_to_dataset(data, name="data"): + """ + Converts the given data to an xarray.Dataset. + + This function is designed to handle inputs that can be either a pandas DataFrame, a pandas Series, + an xarray DataArray, or an xarray Dataset. It ensures that the output is consistently an xarray.Dataset. + + Parameters + ---------- + data: pandas Series, pandas DataFrame, xarray DataArray, or xarray Dataset + The data to be converted. + + name: str (Optional) + The name to assign to the data variable in case the input is an xarray DataArray without a name. + Default value is 'data'. + + Returns + ------- + xarray.Dataset + The input data converted to an xarray.Dataset. If the input is already an xarray.Dataset, + it is returned as is. + + Examples + -------- + >>> df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]}) + >>> ds = convert_to_dataset(df) + >>> type(ds) + + + >>> series = pd.Series([1, 2, 3], name='C') + >>> ds = convert_to_dataset(series) + >>> type(ds) + + + >>> data_array = xr.DataArray([1, 2, 3]) + >>> ds = convert_to_dataset(data_array, name='D') + >>> type(ds) + + """ + if not isinstance(data, (pd.DataFrame, pd.Series, xr.DataArray, xr.Dataset)): + raise TypeError( + "Input data must be of type pandas.DataFrame, pandas.Series, " + "xarray.DataArray, or xarray.Dataset." + f"Got {type(data)}." + ) + + if not isinstance(name, str): + raise TypeError("The 'name' parameter must be a string" f"Got {type(name)}.") + + # Takes data that could be pd.DataFrame, pd.Series, xr.DataArray, or + # xr.Dataset and converts it to xr.Dataset + if isinstance(data, pd.DataFrame): + # xr.Dataset(data) is drastically faster (1e1 - 1e2x faster) than using pd.DataFrame.to_xarray() + data = xr.Dataset(data) + + if isinstance(data, pd.Series): + # Converting to a DataArray then to a dataset makes the variable and + # dimension naming cleaner than going straight to a Dataset with + # xr.Dataset(pd.Series) + data = xr.DataArray(data) + + if isinstance(data, xr.DataArray): + # xr.DataArray.to_dataset() breaks if the data variable is unnamed + if data.name == None: + data.name = name + data = data.to_dataset() + + return data + + +def convert_to_dataarray(data, name="data"): + """ + Converts the given data to an xarray.DataArray. + + This function is designed to handle inputs that can be either a numpy ndarray, pandas Series, + or an xarray DataArray. For convenience, pandas DataFrame and xarray Dataset can also be input + but may only contain a single variable. The function ensures that the output is consistently + an xarray.DataArray. + + Parameters + ---------- + data: numpy ndarray, pandas DataFrame, pandas Series, xarray DataArray, or xarray Dataset + The data to be converted. + + name: str (Optional) + The name to overwrite the name of the input data variable for pandas or xarray input. + Default value is 'data'. + + Returns + ------- + xarray.DataArray + The input data converted to an xarray.DataArray. If the input is already an xarray.DataArray, + it is returned as is. + + Examples + -------- + >>> df = pd.DataFrame({'A': [1, 2, 3]}) + >>> da = convert_to_dataarray(df) + >>> type(da) + + + >>> series = pd.Series([1, 2, 3], name='C') + >>> da = convert_to_dataarray(series) + >>> type(da) + + + >>> data_array = xr.DataArray([1, 2, 3]) + >>> da = convert_to_dataarray(data_array, name='D') + >>> type(da) + + """ + if not isinstance( + data, (np.ndarray, pd.DataFrame, pd.Series, xr.DataArray, xr.Dataset) + ): + raise TypeError( + "Input data must be of type np.ndarray, pandas.DataFrame, pandas.Series, " + f"xarray.DataArray, or xarray.Dataset. Got {type(data)}" + ) + + if not isinstance(name, str): + raise TypeError(f"The 'name' parameter must be a string. Got {type(name)}") + + # Checks pd.DataFrame input and converts to pd.Series if possible + if isinstance(data, pd.DataFrame): + if data.shape[1] > 1: + raise ValueError( + "If the input data is a pd.DataFrame or xr.Dataset, it must contain one variable. Got {data.shape[1]}" + ) + else: + # use iloc instead of squeeze. For DataFrames/Series with only a + # single value, squeeze returns a scalar, which is unexpected. + # iloc will return a Series as expected + data = data.iloc[:, 0] + + # Checks xr.Dataset input and converts to xr.DataArray if possible + if isinstance(data, xr.Dataset): + keys = list(data.keys()) + if len(keys) > 1: + raise ValueError( + "If the input data is a pd.DataFrame or xr.Dataset, it must contain one variable. Got {len(data.keys())}" + ) + else: + data = data.to_array() + data = data.sel( + variable=keys[0] + ) # removes the variable dimension, further simplifying the dataarray + + # Converts pd.Series to xr.DataArray + if isinstance(data, pd.Series): + data = data.to_xarray() + + # Converts np.ndarray to xr.DataArray. Assigns a simple 0-based dimension named index + if isinstance(data, np.ndarray): + data = xr.DataArray( + data=data, dims="index", coords={"index": np.arange(len(data))} + ) + + # If there's no data name, add one to prevent issues calling or converting the dataArray later one + if data.name == None: + data.name = name + + return data + + +def convert_nested_dict_and_pandas(data): + """ + Recursively searches inside nested dictionaries for pandas DataFrames to + convert to xarray Datasets. Typically called by wave.io functions that read + SWAN, WEC-Sim, CDIP, NDBC data. + + Parameters + ---------- + data: dictionary of dictionaries and pandas DataFrames + + Returns + ------- + data : dictionary of dictionaries and xarray Datasets + + """ + for key in data.keys(): + if isinstance(data[key], pd.DataFrame): + data[key] = convert_to_dataset(data[key]) + elif isinstance(data[key], dict): + data[key] = convert_nested_dict_and_pandas(data[key]) + + return data diff --git a/mhkit/utils/upcrossing.py b/mhkit/utils/upcrossing.py new file mode 100644 index 000000000..5993d6544 --- /dev/null +++ b/mhkit/utils/upcrossing.py @@ -0,0 +1,250 @@ +""" +Upcrossing Analysis Functions +============================= +This module contains a collection of functions that facilitate upcrossing +analyses. + +Key Functions: +-------------- +- `upcrossing`: Finds the zero upcrossing points. + +- `peaks`: Finds the peaks between zero crossings. + +- `troughs`: Finds the troughs between zero crossings. + +- `heights`: Calculates the height between zero crossings. + +- `periods`: Calculates the period between zero crossings. + +- `custom`: Applies a custom, user-defined function between zero crossings. + +Dependencies: +------------- +- numpy: Data analysis + +Author: +------- +mbruggs +akeeste + +Date: +----- +2023-10-10 + + +""" + +import numpy as np + + +def _apply(t, data, f, inds): + if inds is None: + inds = upcrossing(t, data) + + n = inds.size - 1 + + vals = np.empty(n) + for i in range(n): + vals[i] = f(inds[i], inds[i + 1]) + + return vals + + +def upcrossing(t, data): + """ + Finds the zero upcrossing points. + + Parameters + ---------- + t: np.array + Time array. + data: np.array + Signal time series. + + Returns + ------- + inds: np.array + Zero crossing indices + """ + # Check data types + if not isinstance(t, np.ndarray): + raise TypeError(f"t must be of type np.ndarray. Got: {type(t)}") + if not isinstance(data, np.ndarray): + raise TypeError(f"data must be of type np.ndarray. Got: {type(data)}") + if len(data.shape) != 1: + raise ValueError("only 1D data supported, try calling squeeze()") + + # eliminate zeros + zeroMask = data == 0 + data[zeroMask] = 0.5 * np.min(np.abs(data)) + + # zero up-crossings + diff = np.diff(np.sign(data)) + zeroUpCrossings_mask = (diff == 2) | (diff == 1) + zeroUpCrossings_index = np.where(zeroUpCrossings_mask)[0] + + return zeroUpCrossings_index + + +def peaks(t, data, inds=None): + """ + Finds the peaks between zero crossings. + + Parameters + ---------- + t: np.array + Time array. + data: np.array + Signal time-series. + inds: np.array + Optional indices for the upcrossing. Useful + when using several of the upcrossing methods + to avoid repeating the upcrossing analysis + each time. + + Returns + ------- + peaks: np.array + Peak values of the time-series + + """ + # Check data types + if not isinstance(t, np.ndarray): + raise TypeError(f"t must be of type np.ndarray. Got: {type(t)}") + if not isinstance(data, np.ndarray): + raise TypeError(f"data must be of type np.ndarray. Got: {type(data)}") + + return _apply(t, data, lambda ind1, ind2: np.max(data[ind1:ind2]), inds) + + +def troughs(t, data, inds=None): + """ + Finds the troughs between zero crossings. + + Parameters + ---------- + t: np.array + Time array. + data: np.array + Signal time-series. + inds: np.array + Optional indices for the upcrossing. Useful + when using several of the upcrossing methods + to avoid repeating the upcrossing analysis + each time. + + Returns + ------- + troughs: np.array + Trough values of the time-series + + """ + # Check data types + if not isinstance(t, np.ndarray): + raise TypeError(f"t must be of type np.ndarray. Got: {type(t)}") + if not isinstance(data, np.ndarray): + raise TypeError(f"data must be of type np.ndarray. Got: {type(data)}") + + return _apply(t, data, lambda ind1, ind2: np.min(data[ind1:ind2]), inds) + + +def heights(t, data, inds=None): + """ + Calculates the height between zero crossings. + + The height is defined as the max value - min value + between the zero crossing points. + + Parameters + ---------- + t: np.array + Time array. + data: np.array + Signal time-series. + inds: np.array + Optional indices for the upcrossing. Useful + when using several of the upcrossing methods + to avoid repeating the upcrossing analysis + each time. + + Returns + ------- + heights: np.array + Height values of the time-series + """ + # Check data types + if not isinstance(t, np.ndarray): + raise TypeError(f"t must be of type np.ndarray. Got: {type(t)}") + if not isinstance(data, np.ndarray): + raise TypeError(f"data must be of type np.ndarray. Got: {type(data)}") + + def func(ind1, ind2): + return np.max(data[ind1:ind2]) - np.min(data[ind1:ind2]) + + return _apply(t, data, func, inds) + + +def periods(t, data, inds=None): + """ + Calculates the period between zero crossings. + + Parameters + ---------- + t: np.array + Time array. + data: np.array + Signal time-series. + inds: np.array + Optional indices for the upcrossing. Useful + when using several of the upcrossing methods + to avoid repeating the upcrossing analysis + each time. + + Returns + ------- + periods: np.array + Period values of the time-series + """ + # Check data types + if not isinstance(t, np.ndarray): + raise TypeError(f"t must be of type np.ndarray. Got: {type(t)}") + if not isinstance(data, np.ndarray): + raise TypeError(f"data must be of type np.ndarray. Got: {type(data)}") + + return _apply(t, data, lambda ind1, ind2: t[ind2] - t[ind1], inds) + + +def custom(t, data, func, inds=None): + """ + Applies a custom function to the timeseries data between upcrossing points. + + Parameters + ---------- + t: np.array + Time array. + data: np.array + Signal time-series. + func: f(ind1, ind2) -> np.array + Function to apply between the zero crossing periods + given t[ind1], t[ind2], where ind1 < ind2, correspond + to the start and end of an upcrossing section. + inds: np.array + Optional indices for the upcrossing. Useful + when using several of the upcrossing methods + to avoid repeating the upcrossing analysis + each time. + + Returns + ------- + values: np.array + Custom values of the time-series + """ + # Check data types + if not isinstance(t, np.ndarray): + raise TypeError(f"t must be of type np.ndarray. Got: {type(t)}") + if not isinstance(data, np.ndarray): + raise TypeError(f"data must be of type np.ndarray. Got: {type(data)}") + if not callable(func): + raise ValueError("func must be callable") + + return _apply(t, data, func, inds) diff --git a/mhkit/wave/__init__.py b/mhkit/wave/__init__.py index 3a963ced8..f84c667cd 100644 --- a/mhkit/wave/__init__.py +++ b/mhkit/wave/__init__.py @@ -2,4 +2,4 @@ from mhkit.wave import io from mhkit.wave import graphics from mhkit.wave import performance -from mhkit.wave import contours \ No newline at end of file +from mhkit.wave import contours diff --git a/mhkit/wave/contours.py b/mhkit/wave/contours.py index 0574573f9..905c560b8 100644 --- a/mhkit/wave/contours.py +++ b/mhkit/wave/contours.py @@ -6,11 +6,16 @@ import scipy.stats as stats import scipy.interpolate as interp import numpy as np +import warnings +from mhkit.utils import to_numeric_array +import matplotlib -### Contours -def environmental_contours(x1, x2, sea_state_duration, return_period, - method, **kwargs): +mpl_version = tuple(map(int, matplotlib.__version__.split("."))) + + +# Contours +def environmental_contours(x1, x2, sea_state_duration, return_period, method, **kwargs): """ Returns a Dictionary of x1 and x2 components for each contour method passed. A method may be one of the following: @@ -20,9 +25,9 @@ def environmental_contours(x1, x2, sea_state_duration, return_period, Parameters ---------- - x1: array + x1: list, np.ndarray, pd.Series, xr.DataArray Component 1 data - x2: array + x2: list, np.ndarray, pd.Series, xr.DataArray Component 2 data sea_state_duration : int or float `x1` and `x2` averaging period in seconds @@ -73,24 +78,26 @@ def environmental_contours(x1, x2, sea_state_duration, return_period, copulas: Dictionary Dictionary of x1 and x2 copula components for each copula method """ - try: - x1 = np.array(x1) - except: - pass - try: - x2 = np.array(x2) - except: - pass - assert isinstance(x1, np.ndarray), 'x1 must be of type np.ndarray' - assert isinstance(x2, np.ndarray), 'x2 must be of type np.ndarray' - assert isinstance(sea_state_duration, (int, float)), ( - 'sea_state_duration must be of type int or float') - assert isinstance(return_period, (int, float, np.ndarray)), ( - 'return_period must be of type int, float, or array') + x1 = to_numeric_array(x1, "x1") + x2 = to_numeric_array(x2, "x2") + if not isinstance(x1, np.ndarray) or x1.ndim == 0: + raise TypeError(f"x1 must be a non-scalar array. Got: {type(x1)}") + if not isinstance(x2, np.ndarray) or x2.ndim == 0: + raise TypeError(f"x2 must be a non-scalar array. Got: {type(x2)}") + if len(x1) != len(x2): + raise ValueError("The lengths of x1 and x2 must be equal.") + if not isinstance(sea_state_duration, (int, float)): + raise TypeError( + f"sea_state_duration must be of type int or float. Got: {type(sea_state_duration)}" + ) + if not isinstance(return_period, (int, float, np.ndarray)): + raise TypeError( + f"return_period must be of type int, float, or np.ndarray. Got: {type(return_period)}" + ) bin_val_size = kwargs.get("bin_val_size", 0.25) nb_steps = kwargs.get("nb_steps", 1000) - initial_bin_max_val = kwargs.get("initial_bin_max_val", 1.) + initial_bin_max_val = kwargs.get("initial_bin_max_val", 1.0) min_bin_count = kwargs.get("min_bin_count", 40) bandwidth = kwargs.get("bandwidth", None) Ndata_bivariate_KDE = kwargs.get("Ndata_bivariate_KDE", 100) @@ -100,38 +107,56 @@ def environmental_contours(x1, x2, sea_state_duration, return_period, PCA_bin_size = kwargs.get("PCA_bin_size", 250) return_fit = kwargs.get("return_fit", False) - assert isinstance(PCA, (dict, type(None))), ( - 'If specified PCA must be a dict') - assert isinstance(PCA_bin_size, int), 'PCA_bin_size must be of type int' - assert isinstance(return_fit, bool), 'return_fit must be of type bool' - assert isinstance(bin_val_size, (int, float)), ( - 'bin_val_size must be of type int or float') - assert isinstance(nb_steps, int), 'nb_steps must be of type int' - assert isinstance(min_bin_count, int), ('min_bin_count must be of ' - + 'type int') - assert isinstance(initial_bin_max_val, (int, float)), ( - 'initial_bin_max_val must be of type int or float') - if bandwidth == None: - assert(not 'bivariate_KDE' in method), ( - 'Must specify keyword bandwidth with bivariate KDE method') + if not isinstance(max_x1, (int, float, type(None))): + raise TypeError(f"If specified, max_x1 must be a dict. Got: {type(PCA)}") + if not isinstance(max_x2, (int, float, type(None))): + raise TypeError(f"If specified, max_x2 must be a dict. Got: {type(PCA)}") + if not isinstance(PCA, (dict, type(None))): + raise TypeError(f"If specified, PCA must be a dict. Got: {type(PCA)}") + if not isinstance(PCA_bin_size, int): + raise TypeError(f"PCA_bin_size must be of type int. Got: {type(PCA_bin_size)}") + if not isinstance(return_fit, bool): + raise TypeError(f"return_fit must be of type bool. Got: {type(return_fit)}") + if not isinstance(bin_val_size, (int, float)): + raise TypeError( + f"bin_val_size must be of type int or float. Got: {type(bin_val_size)}" + ) + if not isinstance(nb_steps, int): + raise TypeError(f"nb_steps must be of type int. Got: {type(nb_steps)}") + if not isinstance(min_bin_count, int): + raise TypeError( + f"min_bin_count must be of type int. Got: {type(min_bin_count)}" + ) + if not isinstance(initial_bin_max_val, (int, float)): + raise TypeError( + f"initial_bin_max_val must be of type int or float. Got: {type(initial_bin_max_val)}" + ) + if "bivariate_KDE" in method and bandwidth == None: + raise TypeError( + f"Must specify keyword bandwidth with bivariate KDE method. Got: {type(bandwidth)}" + ) if isinstance(method, str): method = [method] - assert (len(set(method)) == len(method)), ( - 'Can only pass a unique ' - + 'method once per function call. Consider wrapping this ' - + 'function in a for loop to investage variations on the same method') - - method_class = {'PCA': 'parametric', - 'gaussian': 'parametric', - 'gumbel': 'parametric', - 'clayton': 'parametric', - 'rosenblatt': 'parametric', - 'nonparametric_gaussian': 'nonparametric', - 'nonparametric_clayton': 'nonparametric', - 'nonparametric_gumbel': 'nonparametric', - 'bivariate_KDE': 'KDE', - 'bivariate_KDE_log': 'KDE'} + if not (len(set(method)) == len(method)): + raise ValueError( + f"Can only pass a unique " + + "method once per function call. Consider wrapping this " + + "function in a for loop to investage variations on the same method" + ) + + method_class = { + "PCA": "parametric", + "gaussian": "parametric", + "gumbel": "parametric", + "clayton": "parametric", + "rosenblatt": "parametric", + "nonparametric_gaussian": "nonparametric", + "nonparametric_clayton": "nonparametric", + "nonparametric_gumbel": "nonparametric", + "bivariate_KDE": "KDE", + "bivariate_KDE_log": "KDE", + } classification = [] methods = method @@ -142,95 +167,128 @@ def environmental_contours(x1, x2, sea_state_duration, return_period, fit_parametric = None fit_nonparametric = None component_1 = None - if 'parametric' in classification: - (para_dist_1, para_dist_2, mean_cond, std_cond) = ( - _copula_parameters(x1, x2, min_bin_count, - initial_bin_max_val, bin_val_size)) + if "parametric" in classification: + (para_dist_1, para_dist_2, mean_cond, std_cond) = _copula_parameters( + x1, x2, min_bin_count, initial_bin_max_val, bin_val_size + ) - x_quantile = fit['x_quantile'] + x_quantile = fit["x_quantile"] a = para_dist_1[0] c = para_dist_1[1] loc = para_dist_1[2] scale = para_dist_1[3] - component_1 = stats.exponweib.ppf( - x_quantile, a, c, loc=loc, scale=scale) + component_1 = stats.exponweib.ppf(x_quantile, a, c, loc=loc, scale=scale) fit_parametric = fit - fit_parametric['para_dist_1'] = para_dist_1 - fit_parametric['para_dist_2'] = para_dist_2 - fit_parametric['mean_cond'] = mean_cond - fit_parametric['std_cond'] = std_cond + fit_parametric["para_dist_1"] = para_dist_1 + fit_parametric["para_dist_2"] = para_dist_2 + fit_parametric["mean_cond"] = mean_cond + fit_parametric["std_cond"] = std_cond if PCA == None: PCA = fit_parametric - if 'nonparametric' in classification: - (nonpara_dist_1, nonpara_dist_2, nonpara_pdf_2) = ( - _nonparametric_copula_parameters(x1, x2, nb_steps=nb_steps)) + if "nonparametric" in classification: + ( + nonpara_dist_1, + nonpara_dist_2, + nonpara_pdf_2, + ) = _nonparametric_copula_parameters(x1, x2, nb_steps=nb_steps) fit_nonparametric = fit - fit_nonparametric['nonpara_dist_1'] = nonpara_dist_1 - fit_nonparametric['nonpara_dist_2'] = nonpara_dist_2 - fit_nonparametric['nonpara_pdf_2'] = nonpara_pdf_2 - - copula_functions = {'PCA': - {'func': PCA_contour, - 'vals': (x1, x2, PCA, {'nb_steps': nb_steps, - 'return_fit': return_fit, - 'bin_size': PCA_bin_size})}, - 'gaussian': - {'func': _gaussian_copula, - 'vals': (x1, x2, fit_parametric, component_1, - {'return_fit': return_fit})}, - 'gumbel': - {'func': _gumbel_copula, - 'vals': (x1, x2, fit_parametric, component_1, - nb_steps, {'return_fit': return_fit})}, - 'clayton': - {'func': _clayton_copula, - 'vals': (x1, x2, fit_parametric, component_1, - {'return_fit': return_fit})}, - 'rosenblatt': - {'func': _rosenblatt_copula, - 'vals': (x1, x2, fit_parametric, component_1, - {'return_fit': return_fit})}, - 'nonparametric_gaussian': - {'func': _nonparametric_gaussian_copula, - 'vals': (x1, x2, fit_nonparametric, nb_steps, - {'return_fit': return_fit})}, - 'nonparametric_clayton': - {'func': _nonparametric_clayton_copula, - 'vals': (x1, x2, fit_nonparametric, nb_steps, - {'return_fit': return_fit})}, - 'nonparametric_gumbel': - {'func': _nonparametric_gumbel_copula, - 'vals': (x1, x2, fit_nonparametric, nb_steps, - {'return_fit': return_fit})}, - 'bivariate_KDE': - {'func': _bivariate_KDE, - 'vals': (x1, x2, bandwidth, fit, nb_steps, - Ndata_bivariate_KDE, - {'max_x1': max_x1, 'max_x2': max_x2, - 'return_fit': return_fit})}, - 'bivariate_KDE_log': - {'func': _bivariate_KDE, - 'vals': (x1, x2, bandwidth, fit, nb_steps, - Ndata_bivariate_KDE, - {'max_x1': max_x1, 'max_x2': max_x2, - 'log_transform': True, - 'return_fit': return_fit})}, - } + fit_nonparametric["nonpara_dist_1"] = nonpara_dist_1 + fit_nonparametric["nonpara_dist_2"] = nonpara_dist_2 + fit_nonparametric["nonpara_pdf_2"] = nonpara_pdf_2 + + copula_functions = { + "PCA": { + "func": PCA_contour, + "vals": ( + x1, + x2, + PCA, + { + "nb_steps": nb_steps, + "return_fit": return_fit, + "bin_size": PCA_bin_size, + }, + ), + }, + "gaussian": { + "func": _gaussian_copula, + "vals": (x1, x2, fit_parametric, component_1, {"return_fit": return_fit}), + }, + "gumbel": { + "func": _gumbel_copula, + "vals": ( + x1, + x2, + fit_parametric, + component_1, + nb_steps, + {"return_fit": return_fit}, + ), + }, + "clayton": { + "func": _clayton_copula, + "vals": (x1, x2, fit_parametric, component_1, {"return_fit": return_fit}), + }, + "rosenblatt": { + "func": _rosenblatt_copula, + "vals": (x1, x2, fit_parametric, component_1, {"return_fit": return_fit}), + }, + "nonparametric_gaussian": { + "func": _nonparametric_gaussian_copula, + "vals": (x1, x2, fit_nonparametric, nb_steps, {"return_fit": return_fit}), + }, + "nonparametric_clayton": { + "func": _nonparametric_clayton_copula, + "vals": (x1, x2, fit_nonparametric, nb_steps, {"return_fit": return_fit}), + }, + "nonparametric_gumbel": { + "func": _nonparametric_gumbel_copula, + "vals": (x1, x2, fit_nonparametric, nb_steps, {"return_fit": return_fit}), + }, + "bivariate_KDE": { + "func": _bivariate_KDE, + "vals": ( + x1, + x2, + bandwidth, + fit, + nb_steps, + Ndata_bivariate_KDE, + {"max_x1": max_x1, "max_x2": max_x2, "return_fit": return_fit}, + ), + }, + "bivariate_KDE_log": { + "func": _bivariate_KDE, + "vals": ( + x1, + x2, + bandwidth, + fit, + nb_steps, + Ndata_bivariate_KDE, + { + "max_x1": max_x1, + "max_x2": max_x2, + "log_transform": True, + "return_fit": return_fit, + }, + ), + }, + } copulas = {} for method in methods: - vals = copula_functions[method]['vals'] + vals = copula_functions[method]["vals"] if return_fit: - component_1, component_2, fit = copula_functions[method]['func']( - *vals) - copulas[f'{method}_fit'] = fit + component_1, component_2, fit = copula_functions[method]["func"](*vals) + copulas[f"{method}_fit"] = fit else: - component_1, component_2 = copula_functions[method]['func'](*vals) - copulas[f'{method}_x1'] = component_1 - copulas[f'{method}_x2'] = component_2 + component_1, component_2 = copula_functions[method]["func"](*vals) + copulas[f"{method}_x1"] = component_1 + copulas[f"{method}_x2"] = component_2 return copulas @@ -259,9 +317,9 @@ def PCA_contour(x1, x2, fit, kwargs): Parameters ---------- - x1: numpy array + x1: list, np.ndarray, pd.Series, xr.DataArray Component 1 data - x2: numpy array + x2: list, np.ndarray, pd.Series, xr.DataArray Component 2 data fit: dict Dictionary of the iso-probability results. May additionally @@ -289,7 +347,7 @@ def PCA_contour(x1, x2, fit, kwargs): Calculated x2 values along the contour boundary following return to original input orientation. fit: dict (optional) - principal component analysis dictionary + principal component analysis dictionary Keys: ----- 'principal_axes': sign corrected PCA axes @@ -299,63 +357,68 @@ def PCA_contour(x1, x2, fit, kwargs): 'sigma_param' : fit to _sig_fits """ - try: - x1 = np.array(x1) - except: - pass - try: - x2 = np.array(x2) - except: - pass - assert isinstance(x1, np.ndarray), 'x1 must be of type np.ndarray' - assert isinstance(x2, np.ndarray), 'x2 must be of type np.ndarray' + x1 = to_numeric_array(x1, "x1") + x2 = to_numeric_array(x2, "x2") + if not isinstance(x1, np.ndarray) or x1.ndim == 0: + raise TypeError(f"x1 must be a non-scalar array. Got: {type(x1)}") + if not isinstance(x2, np.ndarray) or x2.ndim == 0: + raise TypeError(f"x2 must be a non-scalar array. Got: {type(x2)}") + if len(x1) != len(x2): + raise ValueError("The lengths of x1 and x2 must be equal.") bin_size = kwargs.get("bin_size", 250) nb_steps = kwargs.get("nb_steps", 1000) return_fit = kwargs.get("return_fit", False) - assert isinstance(bin_size, int), 'bin_size must be of type int' - assert isinstance(nb_steps, int), 'nb_steps must be of type int' - assert isinstance(return_fit, bool), 'return_fit must be of type bool' + if not isinstance(bin_size, int): + raise TypeError(f"bin_size must be of type int. Got: {type(bin_size)}") + if not isinstance(nb_steps, int): + raise TypeError(f"nb_steps must be of type int. Got: {type(nb_steps)}") + if not isinstance(return_fit, bool): + raise TypeError(f"return_fit must be of type bool. Got: {type(return_fit)}") - if 'x1_fit' not in fit: + if "x1_fit" not in fit: pca_fit = _principal_component_analysis(x1, x2, bin_size=bin_size) for key in pca_fit: fit[key] = pca_fit[key] - x_quantile = fit['x_quantile'] - y_quantile = fit['y_quantile'] + x_quantile = fit["x_quantile"] + y_quantile = fit["y_quantile"] # Use the inverse of cdf to calculate component 1 values - component_1 = stats.invgauss.ppf(x_quantile, - mu=fit['x1_fit']['mu'], - loc=fit['x1_fit']['loc'], - scale=fit['x1_fit']['scale']) + component_1 = stats.invgauss.ppf( + x_quantile, + mu=fit["x1_fit"]["mu"], + loc=fit["x1_fit"]["loc"], + scale=fit["x1_fit"]["scale"], + ) # Find Component 2 mu using first order linear regression - mu_slope = fit['mu_fit'].slope - mu_intercept = fit['mu_fit'].intercept + mu_slope = fit["mu_fit"].slope + mu_intercept = fit["mu_fit"].intercept component_2_mu = mu_slope * component_1 + mu_intercept # Find Componenet 2 sigma using second order polynomial fit - sigma_polynomial_coeffcients = fit['sigma_fit'].x + sigma_polynomial_coeffcients = fit["sigma_fit"].x component_2_sigma = np.polyval(sigma_polynomial_coeffcients, component_1) # Use calculated mu and sigma values to calculate C2 along the contour - component_2 = stats.norm.ppf(y_quantile, - loc=component_2_mu, - scale=component_2_sigma) + component_2 = stats.norm.ppf( + y_quantile, loc=component_2_mu, scale=component_2_sigma + ) # Convert contours back to the original reference frame - principal_axes = fit['principal_axes'] - shift = fit['shift'] + principal_axes = fit["principal_axes"] + shift = fit["shift"] pa00 = principal_axes[0, 0] pa01 = principal_axes[0, 1] - x1_contour = ((pa00 * component_1 + pa01 * (component_2 - shift)) / - (pa01**2 + pa00**2)) - x2_contour = ((pa01 * component_1 - pa00 * (component_2 - shift)) / - (pa01**2 + pa00**2)) + x1_contour = (pa00 * component_1 + pa01 * (component_2 - shift)) / ( + pa01**2 + pa00**2 + ) + x2_contour = (pa01 * component_1 - pa00 * (component_2 - shift)) / ( + pa01**2 + pa00**2 + ) # Assign 0 value to any negative x1 contour values x1_contour = np.maximum(0, x1_contour) @@ -410,15 +473,18 @@ def _principal_component_analysis(x1, x2, bin_size=250): 'mu_param' : fit to _mu_fcn 'sigma_param' : fit to _sig_fits """ - assert isinstance(x1, np.ndarray), 'x1 must be of type np.ndarray' - assert isinstance(x2, np.ndarray), 'x2 must be of type np.ndarray' - assert isinstance(bin_size, int), 'bin_size must be of type int' + if not isinstance(x1, np.ndarray): + raise TypeError(f"x1 must be of type np.ndarray. Got: {type(x1)}") + if not isinstance(x2, np.ndarray): + raise TypeError(f"x2 must be of type np.ndarray. Got: {type(x2)}") + if not isinstance(bin_size, int): + raise TypeError(f"bin_size must be of type int. Got: {type(bin_size)}") + # Step 0: Perform Standard PCA mean_location = 0 x1_mean_centered = x1 - x1.mean(axis=0) x2_mean_centered = x2 - x2.mean(axis=0) - n_samples_by_n_features = np.column_stack((x1_mean_centered, - x2_mean_centered)) + n_samples_by_n_features = np.column_stack((x1_mean_centered, x2_mean_centered)) pca = skPCA(n_components=2) pca.fit(n_samples_by_n_features) principal_axes = pca.components_ @@ -444,29 +510,31 @@ def _principal_component_analysis(x1, x2, bin_size=250): x2_sorted = x2_components[x1_sorted_index] x1_fit_results = stats.invgauss.fit(x1_sorted, floc=mean_location) - x1_fit = {'mu': x1_fit_results[0], - 'loc': x1_fit_results[1], - 'scale': x1_fit_results[2]} + x1_fit = { + "mu": x1_fit_results[0], + "loc": x1_fit_results[1], + "scale": x1_fit_results[2], + } # Step 3: Bin Data & find order 1 linear relation between x1 & x2 means N = len(x1) - minimum_4_bins = np.floor(N*0.25) + minimum_4_bins = np.floor(N * 0.25) if bin_size > minimum_4_bins: bin_size = minimum_4_bins - msg = ('To allow for a minimum of 4 bins the bin size has been' + - f'set to {minimum_4_bins}') - print(msg) + msg = ( + "To allow for a minimum of 4 bins, the bin size has been " + + f"set to {minimum_4_bins}" + ) + warnings.warn(msg, UserWarning) - N_multiples = N // bin_size - max_N_multiples_index = N_multiples*bin_size + N_multiples = int(N // bin_size) + max_N_multiples_index = int(N_multiples * bin_size) x1_integer_multiples_of_bin_size = x1_sorted[0:max_N_multiples_index] x2_integer_multiples_of_bin_size = x2_sorted[0:max_N_multiples_index] - x1_bins = np.split(x1_integer_multiples_of_bin_size, - N_multiples) - x2_bins = np.split(x2_integer_multiples_of_bin_size, - N_multiples) + x1_bins = np.split(x1_integer_multiples_of_bin_size, N_multiples) + x2_bins = np.split(x2_integer_multiples_of_bin_size, N_multiples) x1_last_bin = x1_sorted[max_N_multiples_index:] x2_last_bin = x2_sorted[max_N_multiples_index:] @@ -487,29 +555,38 @@ def _principal_component_analysis(x1, x2, bin_size=250): # STEP 4: Find order 2 relation between x1_mean and x2 standard deviation sigma_polynomial_order = 2 - sig_0 = 0.1 * np.ones(sigma_polynomial_order+1) + sig_0 = 0.1 * np.ones(sigma_polynomial_order + 1) def _objective_function(sig_p, x1_means, x2_sigmas): return mean_squared_error(np.polyval(sig_p, x1_means), x2_sigmas) # Constraint Functions - def y_intercept_gt_0(sig_p): return (sig_p[2]) + def y_intercept_gt_0(sig_p): + return sig_p[2] def sig_polynomial_min_gt_0(sig_p): - return (sig_p[2] - (sig_p[1]**2) / (4 * sig_p[0])) - - constraints = ({'type': 'ineq', 'fun': y_intercept_gt_0}, - {'type': 'ineq', 'fun': sig_polynomial_min_gt_0}) - - sigma_fit = optim.minimize(_objective_function, x0=sig_0, - args=(x1_means, x2_sigmas), - method='SLSQP', constraints=constraints) - - PCA = {'principal_axes': principal_axes, - 'shift': shift, - 'x1_fit': x1_fit, - 'mu_fit': mu_fit, - 'sigma_fit': sigma_fit} + return sig_p[2] - (sig_p[1] ** 2) / (4 * sig_p[0]) + + constraints = ( + {"type": "ineq", "fun": y_intercept_gt_0}, + {"type": "ineq", "fun": sig_polynomial_min_gt_0}, + ) + + sigma_fit = optim.minimize( + _objective_function, + x0=sig_0, + args=(x1_means, x2_sigmas), + method="SLSQP", + constraints=constraints, + ) + + PCA = { + "principal_axes": principal_axes, + "shift": shift, + "x1_fit": x1_fit, + "mu_fit": mu_fit, + "sigma_fit": sigma_fit, + } return PCA @@ -541,37 +618,41 @@ def _iso_prob_and_quantile(sea_state_duration, return_period, nb_steps): 'y_quantile' - CDF of y-component """ - assert isinstance(sea_state_duration, (int, float) - ), 'sea_state_duration must be of type int or float' - assert isinstance(return_period, (int, float)), ( - 'return_period must be of type int or float') - - assert isinstance(nb_steps, int), 'nb_steps must be of type int' + if not isinstance(sea_state_duration, (int, float)): + raise TypeError( + f"sea_state_duration must be of type int or float. Got: {type(sea_state_duration)}" + ) + if not isinstance(return_period, (int, float)): + raise TypeError( + f"return_period must be of type int or float. Got: {type(return_period)}" + ) + if not isinstance(nb_steps, int): + raise TypeError(f"nb_steps must be of type int. Got: {type(nb_steps)}") dt_yrs = sea_state_duration / (3600 * 24 * 365) exceedance_probability = 1 / (return_period / dt_yrs) - iso_probability_radius = stats.norm.ppf((1 - exceedance_probability), - loc=0, scale=1) + iso_probability_radius = stats.norm.ppf( + (1 - exceedance_probability), loc=0, scale=1 + ) discretized_radians = np.linspace(0, 2 * np.pi, nb_steps) - x_component_iso_prob = iso_probability_radius * \ - np.cos(discretized_radians) - y_component_iso_prob = iso_probability_radius * \ - np.sin(discretized_radians) + x_component_iso_prob = iso_probability_radius * np.cos(discretized_radians) + y_component_iso_prob = iso_probability_radius * np.sin(discretized_radians) x_quantile = stats.norm.cdf(x_component_iso_prob, loc=0, scale=1) y_quantile = stats.norm.cdf(y_component_iso_prob, loc=0, scale=1) - results = {'exceedance_probability': exceedance_probability, - 'x_component_iso_prob': x_component_iso_prob, - 'y_component_iso_prob': y_component_iso_prob, - 'x_quantile': x_quantile, - 'y_quantile': y_quantile} + results = { + "exceedance_probability": exceedance_probability, + "x_component_iso_prob": x_component_iso_prob, + "y_component_iso_prob": y_component_iso_prob, + "x_quantile": x_quantile, + "y_quantile": y_quantile, + } return results -def _copula_parameters(x1, x2, min_bin_count, initial_bin_max_val, - bin_val_size): +def _copula_parameters(x1, x2, min_bin_count, initial_bin_max_val, bin_val_size): """ Returns an estimate of the Weibull and Lognormal distribution for x1 and x2 respectively. Additionally returns the estimates of the @@ -602,14 +683,22 @@ def _copula_parameters(x1, x2, min_bin_count, initial_bin_max_val, std_cond: array Estimate coefficients of the standard deviation of Ln(x2|x1) """ - assert isinstance(x1, np.ndarray), 'x1 must be of type np.ndarray' - assert isinstance(x2, np.ndarray), 'x2 must be of type np.ndarray' - assert isinstance(min_bin_count, int), ('min_bin_count must be of' - + 'type int') - assert isinstance(bin_val_size, (int, float)), ( - 'bin_val_size must be of type int or float') - assert isinstance(initial_bin_max_val, (int, float)), ( - 'initial_bin_max_val must be of type int or float') + if not isinstance(x1, np.ndarray): + raise TypeError(f"x1 must be of type np.ndarray. Got: {type(x1)}") + if not isinstance(x2, np.ndarray): + raise TypeError(f"x2 must be of type np.ndarray. Got: {type(x2)}") + if not isinstance(min_bin_count, int): + raise TypeError( + f"min_bin_count must be of type int. Got: {type(min_bin_count)}" + ) + if not isinstance(bin_val_size, (int, float)): + raise TypeError( + f"bin_val_size must be of type int or float. Got: {type(bin_val_size)}" + ) + if not isinstance(initial_bin_max_val, (int, float)): + raise TypeError( + f"initial_bin_max_val must be of type int or float. Got: {type(initial_bin_max_val)}" + ) # Binning x1_sorted_index = x1.argsort() @@ -634,10 +723,10 @@ def _copula_parameters(x1, x2, min_bin_count, initial_bin_max_val, bin_size_i = np.inf while bin_size_i >= min_bin_count: i += 1 - bin_i_max_val = initial_bin_max_val + bin_val_size*(i) + bin_i_max_val = initial_bin_max_val + bin_val_size * (i) N_vals_lt_limit = sum(x1_sorted <= bin_i_max_val) ind = np.append(ind, N_vals_lt_limit) - bin_size_i = ind[i]-ind[i-1] + bin_size_i = ind[i] - ind[i - 1] # Weibull distribution parameters for component 1 using MLE para_dist_1 = stats.exponweib.fit(x1_sorted, floc=0, fa=1) @@ -656,7 +745,7 @@ def _copula_parameters(x1, x2, min_bin_count, initial_bin_max_val, x2_lognormal_dist0 = stats.norm.fit(x2_log0) para_dist_cond.append(x2_lognormal_dist0) # mean of x1 (component 1 for zero bin) - x1_bin0 = x1_sorted[range(0, int(ind[0])-1)] + x1_bin0 = x1_sorted[range(0, int(ind[0]) - 1)] hss.append(np.mean(x1_bin0)) # Special case 2-bin lognormal Dist @@ -667,11 +756,11 @@ def _copula_parameters(x1, x2, min_bin_count, initial_bin_max_val, para_dist_cond.append(x2_lognormal_dist1) # mean of Hs (component 1 for bin 1) - hss.append(np.mean(x1_sorted[range(0, int(ind[1])-1)])) + hss.append(np.mean(x1_sorted[range(0, int(ind[1]) - 1)])) # lognormal Dist (lognormal dist over only 2 bins) for i in range(2, num): - ind_i = range(int(ind[i-2]), int(ind[i])) + ind_i = range(int(ind[i - 2]), int(ind[i])) x2_log_i = np.log(x2_sorted[ind_i]) x2_lognormal_dist_i = stats.norm.fit(x2_log_i) para_dist_cond.append(x2_lognormal_dist_i) @@ -680,7 +769,7 @@ def _copula_parameters(x1, x2, min_bin_count, initial_bin_max_val, # Estimate coefficient using least square solution (mean: 3rd order, # sigma: 2nd order) - ind_f = range(int(ind[num-2]), int(len(x1))) + ind_f = range(int(ind[num - 2]), int(len(x1))) x2_log_f = np.log(x2_sorted[ind_f]) x2_lognormal_dist_f = stats.norm.fit(x2_log_f) para_dist_cond.append(x2_lognormal_dist_f) # parameters for last bin @@ -692,17 +781,15 @@ def _copula_parameters(x1, x2, min_bin_count, initial_bin_max_val, hss = np.array(hss) # cubic in Hs: a + bx + cx**2 + dx**3 - phi_mean = np.column_stack((np.ones(num+1), hss, hss**2, hss**3)) + phi_mean = np.column_stack((np.ones(num + 1), hss, hss**2, hss**3)) # quadratic in Hs a + bx + cx**2 - phi_std = np.column_stack((np.ones(num+1), hss, hss**2)) + phi_std = np.column_stack((np.ones(num + 1), hss, hss**2)) # Estimate coefficients of mean of Ln(T|Hs)(vector 4x1) (cubic in Hs) - mean_cond = np.linalg.lstsq(phi_mean, para_dist_cond[:, 0], - rcond=None)[0] + mean_cond = np.linalg.lstsq(phi_mean, para_dist_cond[:, 0], rcond=None)[0] # Estimate coefficients of standard deviation of Ln(T|Hs) # (vector 3x1) (quadratic in Hs) - std_cond = np.linalg.lstsq(phi_std, para_dist_cond[:, 1], - rcond=None)[0] + std_cond = np.linalg.lstsq(phi_std, para_dist_cond[:, 1], rcond=None)[0] return para_dist_1, para_dist_2, mean_cond, std_cond @@ -753,36 +840,42 @@ def _gaussian_copula(x1, x2, fit, component_1, kwargs): x2 = np.array(x2) except: pass - assert isinstance(x1, np.ndarray), 'x1 must be of type np.ndarray' - assert isinstance(x2, np.ndarray), 'x2 must be of type np.ndarray' - assert isinstance(component_1, np.ndarray), ( - 'x2 must be of type np.ndarray') - + if not isinstance(x1, np.ndarray): + raise TypeError(f"x1 must be of type np.ndarray. Got: {type(x1)}") + if not isinstance(x2, np.ndarray): + raise TypeError(f"x2 must be of type np.ndarray. Got: {type(x2)}") + if not isinstance(component_1, np.ndarray): + raise TypeError( + f"component_1 must be of type np.ndarray. Got: {type(component_1)}" + ) return_fit = kwargs.get("return_fit", False) - assert isinstance(return_fit, bool), ( - 'If specified return_fit must be a bool') + if not isinstance(return_fit, bool): + raise TypeError( + f"If specified, return_fit must be of type bool. Got: {type(return_fit)}" + ) - x_component_iso_prob = fit['x_component_iso_prob'] - y_component_iso_prob = fit['y_component_iso_prob'] + x_component_iso_prob = fit["x_component_iso_prob"] + y_component_iso_prob = fit["y_component_iso_prob"] # Calculate Kendall's tau tau = stats.kendalltau(x2, x1)[0] - rho_gau = np.sin(tau*np.pi/2.) + rho_gau = np.sin(tau * np.pi / 2.0) - z2_Gauss = stats.norm.cdf(y_component_iso_prob*np.sqrt(1.-rho_gau**2.) - + rho_gau*x_component_iso_prob) + z2_Gauss = stats.norm.cdf( + y_component_iso_prob * np.sqrt(1.0 - rho_gau**2.0) + + rho_gau * x_component_iso_prob + ) - para_dist_2 = fit['para_dist_2'] + para_dist_2 = fit["para_dist_2"] s = para_dist_2[1] loc = 0 scale = np.exp(para_dist_2[0]) # lognormal inverse - component_2_Gaussian = stats.lognorm.ppf(z2_Gauss, s=s, loc=loc, - scale=scale) - fit['tau'] = tau - fit['rho'] = rho_gau - fit['z2'] = z2_Gauss + component_2_Gaussian = stats.lognorm.ppf(z2_Gauss, s=s, loc=loc, scale=scale) + fit["tau"] = tau + fit["rho"] = rho_gau + fit["z2"] = z2_Gauss if return_fit: return component_1, component_2_Gaussian, fit @@ -807,18 +900,20 @@ def _gumbel_density(u, alpha): Copula density function. """ - #Ignore divide by 0 warnings and resulting NaN warnings - np.seterr(all='ignore') + # Ignore divide by 0 warnings and resulting NaN warnings + np.seterr(all="ignore") v = -np.log(u) v = np.sort(v, axis=0) vmin = v[0, :] vmax = v[1, :] nlogC = vmax * (1 + (vmin / vmax) ** alpha) ** (1 / alpha) - y = (alpha - 1 + nlogC)*np.exp( - -nlogC+np.sum((alpha-1) * np.log(v)+v, axis=0) + - (1-2*alpha)*np.log(nlogC)) - np.seterr(all='warn') - return(y) + y = (alpha - 1 + nlogC) * np.exp( + -nlogC + + np.sum((alpha - 1) * np.log(v) + v, axis=0) + + (1 - 2 * alpha) * np.log(nlogC) + ) + np.seterr(all="warn") + return y def _gumbel_copula(x1, x2, fit, component_1, nb_steps, kwargs): @@ -869,24 +964,30 @@ def _gumbel_copula(x1, x2, fit, component_1, nb_steps, kwargs): x2 = np.array(x2) except: pass - assert isinstance(x1, np.ndarray), 'x1 must be of type np.ndarray' - assert isinstance(x2, np.ndarray), 'x2 must be of type np.ndarray' - assert isinstance(component_1, np.ndarray), 'x2 must be of type np.ndarray' - + if not isinstance(x1, np.ndarray): + raise TypeError(f"x1 must be of type np.ndarray. Got: {type(x1)}") + if not isinstance(x2, np.ndarray): + raise TypeError(f"x2 must be of type np.ndarray. Got: {type(x2)}") + if not isinstance(component_1, np.ndarray): + raise TypeError( + f"component_1 must be of type np.ndarray. Got: {type(component_1)}" + ) return_fit = kwargs.get("return_fit", False) - assert isinstance( - return_fit, bool), 'If specified return_fit must be a bool' + if not isinstance(return_fit, bool): + raise TypeError( + f"If specified, return_fit must be of type bool. Got: {type(return_fit)}" + ) - x_quantile = fit['x_quantile'] - y_quantile = fit['y_quantile'] - para_dist_2 = fit['para_dist_2'] + x_quantile = fit["x_quantile"] + y_quantile = fit["y_quantile"] + para_dist_2 = fit["para_dist_2"] # Calculate Kendall's tau tau = stats.kendalltau(x2, x1)[0] - theta_gum = 1./(1.-tau) + theta_gum = 1.0 / (1.0 - tau) min_limit_2 = 0 - max_limit_2 = np.ceil(np.amax(x2)*2) + max_limit_2 = np.ceil(np.amax(x2) * 2) Ndata = 1000 x = np.linspace(min_limit_2, max_limit_2, Ndata) @@ -895,21 +996,21 @@ def _gumbel_copula(x1, x2, fit, component_1, nb_steps, kwargs): scale = np.exp(para_dist_2[0]) z2 = stats.lognorm.cdf(x, s=s, loc=0, scale=scale) - fit['tau'] = tau - fit['theta'] = theta_gum - fit['z2'] = z2 + fit["tau"] = tau + fit["theta"] = theta_gum + fit["z2"] = z2 component_2_Gumbel = np.zeros(nb_steps) for k in range(nb_steps): - z1 = np.array([x_quantile[k]]*Ndata) + z1 = np.array([x_quantile[k]] * Ndata) Z = np.array((z1, z2)) Y = _gumbel_density(Z, theta_gum) Y = np.nan_to_num(Y) # pdf 2|1, f(comp_2|comp_1)=c(z1,z2)*f(comp_2) - p_x_x1 = Y*(stats.lognorm.pdf(x, s=s, loc=0, scale=scale)) + p_x_x1 = Y * (stats.lognorm.pdf(x, s=s, loc=0, scale=scale)) # Estimate CDF from PDF dum = np.cumsum(p_x_x1) - cdf = dum/(dum[Ndata-1]) + cdf = dum / (dum[Ndata - 1]) # Result of conditional CDF derived based on Gumbel copula table = np.array((x, cdf)) table = table.T @@ -918,7 +1019,7 @@ def _gumbel_copula(x1, x2, fit, component_1, nb_steps, kwargs): component_2_Gumbel[k] = min(table[:, 0]) break elif y_quantile[k] <= table[j, 1]: - component_2_Gumbel[k] = (table[j, 0]+table[j-1, 0])/2 + component_2_Gumbel[k] = (table[j, 0] + table[j - 1, 0]) / 2 break else: component_2_Gumbel[k] = table[:, 0].max() @@ -967,32 +1068,41 @@ def _clayton_copula(x1, x2, fit, component_1, kwargs): If return_fit=True. Dictionary with iso-probabilities passed with additional fit metrics from the copula method. """ - assert isinstance(x1, np.ndarray), 'x1 must be of type np.ndarray' - assert isinstance(x2, np.ndarray), 'x2 must be of type np.ndarray' - assert isinstance(component_1, np.ndarray), 'x2 must be of type np.ndarray' + if not isinstance(x1, np.ndarray): + raise TypeError(f"x1 must be of type np.ndarray. Got: {type(x1)}") + if not isinstance(x2, np.ndarray): + raise TypeError(f"x2 must be of type np.ndarray. Got: {type(x2)}") + if not isinstance(component_1, np.ndarray): + raise TypeError( + f"component_1 must be of type np.ndarray. Got: {type(component_1)}" + ) return_fit = kwargs.get("return_fit", False) - assert isinstance( - return_fit, bool), 'If specified return_fit must be a bool' + if not isinstance(return_fit, bool): + raise TypeError( + f"If specified, return_fit must be of type bool. Got: {type(return_fit)}" + ) - x_quantile = fit['x_quantile'] - y_quantile = fit['y_quantile'] - para_dist_2 = fit['para_dist_2'] + x_quantile = fit["x_quantile"] + y_quantile = fit["y_quantile"] + para_dist_2 = fit["para_dist_2"] # Calculate Kendall's tau tau = stats.kendalltau(x2, x1)[0] - theta_clay = (2.*tau)/(1.-tau) + theta_clay = (2.0 * tau) / (1.0 - tau) s = para_dist_2[1] scale = np.exp(para_dist_2[0]) - z2_Clay = ((1.-x_quantile**(-theta_clay)+x_quantile**(-theta_clay) / - y_quantile)**(theta_clay/(1.+theta_clay)))**(-1./theta_clay) + z2_Clay = ( + (1.0 - x_quantile ** (-theta_clay) + x_quantile ** (-theta_clay) / y_quantile) + ** (theta_clay / (1.0 + theta_clay)) + ) ** (-1.0 / theta_clay) # lognormal inverse component_2_Clayton = stats.lognorm.ppf(z2_Clay, s=s, loc=0, scale=scale) - fit['theta_clay'] = theta_clay - fit['tau'] = tau - fit['z2_Clay'] = z2_Clay + fit["theta_clay"] = theta_clay + fit["tau"] = tau + fit["z2_Clay"] = z2_Clay if return_fit: return component_1, component_2_Clayton, fit @@ -1047,36 +1157,47 @@ def _rosenblatt_copula(x1, x2, fit, component_1, kwargs): x2 = np.array(x2) except: pass - assert isinstance(x1, np.ndarray), 'x1 must be of type np.ndarray' - assert isinstance(x2, np.ndarray), 'x2 must be of type np.ndarray' - assert isinstance(component_1, np.ndarray), 'x2 must be of type np.ndarray' + if not isinstance(x1, np.ndarray): + raise TypeError(f"x1 must be of type np.ndarray. Got: {type(x1)}") + if not isinstance(x2, np.ndarray): + raise TypeError(f"x2 must be of type np.ndarray. Got: {type(x2)}") + if not isinstance(component_1, np.ndarray): + raise TypeError( + f"component_1 must be of type np.ndarray. Got: {type(component_1)}" + ) return_fit = kwargs.get("return_fit", False) - assert isinstance( - return_fit, bool), 'If specified return_fit must be a bool' + if not isinstance(return_fit, bool): + raise TypeError( + f"If specified, return_fit must be of type bool. Got: {type(return_fit)}" + ) - y_quantile = fit['y_quantile'] - mean_cond = fit['mean_cond'] - std_cond = fit['std_cond'] + y_quantile = fit["y_quantile"] + mean_cond = fit["mean_cond"] + std_cond = fit["std_cond"] # mean of Ln(T) as a function of x1 - lamda_cond = mean_cond[0]+mean_cond[1]*component_1 + \ - mean_cond[2]*component_1**2+mean_cond[3]*component_1**3 + lamda_cond = ( + mean_cond[0] + + mean_cond[1] * component_1 + + mean_cond[2] * component_1**2 + + mean_cond[3] * component_1**3 + ) # Standard deviation of Ln(x2) as a function of x1 - sigma_cond = std_cond[0]+std_cond[1]*component_1+std_cond[2]*component_1**2 + sigma_cond = std_cond[0] + std_cond[1] * component_1 + std_cond[2] * component_1**2 # lognormal inverse component_2_Rosenblatt = stats.lognorm.ppf( - y_quantile, s=sigma_cond, loc=0, scale=np.exp(lamda_cond)) + y_quantile, s=sigma_cond, loc=0, scale=np.exp(lamda_cond) + ) - fit['lamda_cond'] = lamda_cond - fit['sigma_cond'] = sigma_cond + fit["lamda_cond"] = lamda_cond + fit["sigma_cond"] = sigma_cond if return_fit: return component_1, component_2_Rosenblatt, fit return component_1, component_2_Rosenblatt -def _nonparametric_copula_parameters(x1, x2, max_x1=None, max_x2=None, - nb_steps=1000): +def _nonparametric_copula_parameters(x1, x2, max_x1=None, max_x2=None, nb_steps=1000): """ Calculates nonparametric copula parameters @@ -1102,15 +1223,20 @@ def _nonparametric_copula_parameters(x1, x2, max_x1=None, max_x2=None, nonpara_pdf_2: x2 points in KDE space and Nonparametric PDF for x2 """ - assert isinstance(x1, np.ndarray), 'x1 must be of type np.ndarray' - assert isinstance(x2, np.ndarray), 'x2 must be of type np.ndarray' + if not isinstance(x1, np.ndarray): + raise TypeError(f"x1 must be of type np.ndarray. Got: {type(x1)}") + if not isinstance(x2, np.ndarray): + raise TypeError(f"x2 must be of type np.ndarray. Got: {type(x2)}") if not max_x1: - max_x1 = x1.max()*2 + max_x1 = x1.max() * 2 if not max_x2: - max_x2 = x2.max()*2 - assert isinstance(max_x1, float), 'max_x1 must be of type float' - assert isinstance(max_x2, float), 'max_x2 must be of type float' - assert isinstance(nb_steps, int), 'nb_steps must be of type int' + max_x2 = x2.max() * 2 + if not isinstance(max_x1, float): + raise TypeError(f"max_x1 must be of type float. Got: {type(max_x1)}") + if not isinstance(max_x2, float): + raise TypeError(f"max_x2 must be of type float. Got: {type(max_x2)}") + if not isinstance(nb_steps, int): + raise TypeError(f"nb_steps must be of type int. Got: {type(nb_steps)}") # Binning x1_sorted_index = x1.argsort() @@ -1128,11 +1254,11 @@ def _nonparametric_copula_parameters(x1, x2, max_x1=None, max_x2=None, # Calculate optimal bandwidth for T and Hs sig = stats.median_abs_deviation(x2_sorted) num = float(len(x2_sorted)) - bwT = sig*(4.0/(3.0*num))**(1.0/5.0) + bwT = sig * (4.0 / (3.0 * num)) ** (1.0 / 5.0) sig = stats.median_abs_deviation(x1_sorted) num = float(len(x1_sorted)) - bwHs = sig*(4.0/(3.0*num))**(1.0/5.0) + bwHs = sig * (4.0 / (3.0 * num)) ** (1.0 / 5.0) # Nonparametric PDF for x2 temp = KDEUnivariate(x2_sorted) @@ -1143,11 +1269,11 @@ def _nonparametric_copula_parameters(x1, x2, max_x1=None, max_x2=None, temp = KDEUnivariate(x1_sorted) temp.fit(bw=bwHs) tempPDF = temp.evaluate(pts_x1) - F_x1 = tempPDF/sum(tempPDF) + F_x1 = tempPDF / sum(tempPDF) F_x1 = np.cumsum(F_x1) # Nonparametric CDF for x2 - F_x2 = f_x2/sum(f_x2) + F_x2 = f_x2 / sum(f_x2) F_x2 = np.cumsum(F_x2) nonpara_dist_1 = np.transpose(np.array([pts_x1, F_x1])) @@ -1176,7 +1302,8 @@ def _nonparametric_component(z, nonpara_dist, nb_steps): component: array nonparametic component values """ - assert isinstance(nb_steps, int), 'nb_steps must be of type int' + if not isinstance(nb_steps, int): + raise TypeError(f"nb_steps must be of type int. Got: {type(nb_steps)}") component = np.zeros(nb_steps) for k in range(0, nb_steps): @@ -1185,7 +1312,7 @@ def _nonparametric_component(z, nonpara_dist, nb_steps): component[k] = min(nonpara_dist[:, 0]) break elif z[k] <= nonpara_dist[j, 1]: - component[k] = (nonpara_dist[j, 0] + nonpara_dist[j-1, 0])/2 + component[k] = (nonpara_dist[j, 0] + nonpara_dist[j - 1, 0]) / 2 break else: component[k] = max(nonpara_dist[:, 0]) @@ -1223,48 +1350,51 @@ def _nonparametric_gaussian_copula(x1, x2, fit, nb_steps, kwargs): If return_fit=True. Dictionary with iso-probabilities passed with additional fit metrics from the copula method. """ - assert isinstance(x1, np.ndarray), 'x1 must be of type np.ndarray' - assert isinstance(x2, np.ndarray), 'x2 must be of type np.ndarray' - assert isinstance(nb_steps, int), 'nb_steps must be of type int' - + if not isinstance(x1, np.ndarray): + raise TypeError(f"x1 must be of type np.ndarray. Got: {type(x1)}") + if not isinstance(x2, np.ndarray): + raise TypeError(f"x2 must be of type np.ndarray. Got: {type(x2)}") + if not isinstance(nb_steps, int): + raise TypeError(f"nb_steps must be of type int. Got: {type(nb_steps)}") return_fit = kwargs.get("return_fit", False) - assert isinstance( - return_fit, bool), 'If specified return_fit must be a bool' + if not isinstance(return_fit, bool): + raise TypeError( + f"If specified, return_fit must be of type bool. Got: {type(return_fit)}" + ) - x_component_iso_prob = fit['x_component_iso_prob'] - y_component_iso_prob = fit['y_component_iso_prob'] - nonpara_dist_1 = fit['nonpara_dist_1'] - nonpara_dist_2 = fit['nonpara_dist_2'] + x_component_iso_prob = fit["x_component_iso_prob"] + y_component_iso_prob = fit["y_component_iso_prob"] + nonpara_dist_1 = fit["nonpara_dist_1"] + nonpara_dist_2 = fit["nonpara_dist_2"] # Calculate Kendall's tau tau = stats.kendalltau(x2, x1)[0] - rho_gau = np.sin(tau*np.pi/2.) + rho_gau = np.sin(tau * np.pi / 2.0) # Component 1 z1 = stats.norm.cdf(x_component_iso_prob) - z2 = stats.norm.cdf(y_component_iso_prob*np.sqrt(1. - - rho_gau**2.)+rho_gau*x_component_iso_prob) + z2 = stats.norm.cdf( + y_component_iso_prob * np.sqrt(1.0 - rho_gau**2.0) + + rho_gau * x_component_iso_prob + ) - comps = {1: {'z': z1, - 'nonpara_dist': nonpara_dist_1 - }, - 2: {'z': z2, - 'nonpara_dist': nonpara_dist_2 - } - } + comps = { + 1: {"z": z1, "nonpara_dist": nonpara_dist_1}, + 2: {"z": z2, "nonpara_dist": nonpara_dist_2}, + } for c in comps: - z = comps[c]['z'] - nonpara_dist = comps[c]['nonpara_dist'] - comps[c]['comp'] = _nonparametric_component(z, nonpara_dist, nb_steps) + z = comps[c]["z"] + nonpara_dist = comps[c]["nonpara_dist"] + comps[c]["comp"] = _nonparametric_component(z, nonpara_dist, nb_steps) - component_1_np = comps[1]['comp'] - component_2_np_gaussian = comps[2]['comp'] + component_1_np = comps[1]["comp"] + component_2_np_gaussian = comps[2]["comp"] - fit['tau'] = tau - fit['rho'] = rho_gau - fit['z1'] = z1 - fit['z2'] = z2 + fit["tau"] = tau + fit["rho"] = rho_gau + fit["z1"] = z1 + fit["z2"] = z2 if return_fit: return component_1_np, component_2_np_gaussian, fit @@ -1302,51 +1432,53 @@ def _nonparametric_clayton_copula(x1, x2, fit, nb_steps, kwargs): If return_fit=True. Dictionary with iso-probabilities passed with additional fit metrics from the copula method. """ - assert isinstance(x1, np.ndarray), 'x1 must be of type np.ndarray' - assert isinstance(x2, np.ndarray), 'x2 must be of type np.ndarray' - assert isinstance(nb_steps, int), 'nb_steps must be of type int' - + if not isinstance(x1, np.ndarray): + raise TypeError(f"x1 must be of type np.ndarray. Got: {type(x1)}") + if not isinstance(x2, np.ndarray): + raise TypeError(f"x2 must be of type np.ndarray. Got: {type(x2)}") + if not isinstance(nb_steps, int): + raise TypeError(f"nb_steps must be of type int. Got: {type(nb_steps)}") return_fit = kwargs.get("return_fit", False) - assert isinstance(return_fit, bool), ('If specified return_fit ' - + 'must be a bool') - - x_component_iso_prob = fit['x_component_iso_prob'] - x_quantile = fit['x_quantile'] - y_quantile = fit['y_quantile'] - nonpara_dist_1 = fit['nonpara_dist_1'] - nonpara_dist_2 = fit['nonpara_dist_2'] - nonpara_pdf_2 = fit['nonpara_pdf_2'] + if not isinstance(return_fit, bool): + raise TypeError( + f"If specified, return_fit must be of type bool. Got: {type(return_fit)}" + ) + + x_component_iso_prob = fit["x_component_iso_prob"] + x_quantile = fit["x_quantile"] + y_quantile = fit["y_quantile"] + nonpara_dist_1 = fit["nonpara_dist_1"] + nonpara_dist_2 = fit["nonpara_dist_2"] + nonpara_pdf_2 = fit["nonpara_pdf_2"] # Calculate Kendall's tau tau = stats.kendalltau(x2, x1)[0] - theta_clay = (2.*tau)/(1.-tau) + theta_clay = (2.0 * tau) / (1.0 - tau) # Component 1 (Hs) z1 = stats.norm.cdf(x_component_iso_prob) - z2_clay = ((1-x_quantile**(-theta_clay) - + x_quantile**(-theta_clay) - / y_quantile)**(theta_clay/(1.+theta_clay)))**(-1./theta_clay) - - comps = {1: {'z': z1, - 'nonpara_dist': nonpara_dist_1 - }, - 2: {'z': z2_clay, - 'nonpara_dist': nonpara_dist_2 - } - } + z2_clay = ( + (1 - x_quantile ** (-theta_clay) + x_quantile ** (-theta_clay) / y_quantile) + ** (theta_clay / (1.0 + theta_clay)) + ) ** (-1.0 / theta_clay) + + comps = { + 1: {"z": z1, "nonpara_dist": nonpara_dist_1}, + 2: {"z": z2_clay, "nonpara_dist": nonpara_dist_2}, + } for c in comps: - z = comps[c]['z'] - nonpara_dist = comps[c]['nonpara_dist'] - comps[c]['comp'] = _nonparametric_component(z, nonpara_dist, nb_steps) + z = comps[c]["z"] + nonpara_dist = comps[c]["nonpara_dist"] + comps[c]["comp"] = _nonparametric_component(z, nonpara_dist, nb_steps) - component_1_np = comps[1]['comp'] - component_2_np_clayton = comps[2]['comp'] + component_1_np = comps[1]["comp"] + component_2_np_clayton = comps[2]["comp"] - fit['tau'] = tau - fit['theta'] = theta_clay - fit['z1'] = z1 - fit['z2'] = z2_clay + fit["tau"] = tau + fit["theta"] = theta_clay + fit["z1"] = z1 + fit["z2"] = z2_clay if return_fit: return component_1_np, component_2_np_clayton, fit @@ -1384,25 +1516,29 @@ def _nonparametric_gumbel_copula(x1, x2, fit, nb_steps, kwargs): If return_fit=True. Dictionary with iso-probabilities passed with additional fit metrics from the copula method. """ - assert isinstance(x1, np.ndarray), 'x1 must be of type np.ndarray' - assert isinstance(x2, np.ndarray), 'x2 must be of type np.ndarray' - assert isinstance(nb_steps, int), 'nb_steps must be of type int' - + if not isinstance(x1, np.ndarray): + raise TypeError(f"x1 must be of type np.ndarray. Got: {type(x1)}") + if not isinstance(x2, np.ndarray): + raise TypeError(f"x2 must be of type np.ndarray. Got: {type(x2)}") + if not isinstance(nb_steps, int): + raise TypeError(f"nb_steps must be of type int. Got: {type(nb_steps)}") return_fit = kwargs.get("return_fit", False) - assert isinstance(return_fit, bool), ('If specified return_fit ' - + 'must be a bool') + if not isinstance(return_fit, bool): + raise TypeError( + f"If specified, return_fit must be a bool. Got: {type(return_fit)}" + ) Ndata = 1000 - x_quantile = fit['x_quantile'] - y_quantile = fit['y_quantile'] - nonpara_dist_1 = fit['nonpara_dist_1'] - nonpara_dist_2 = fit['nonpara_dist_2'] - nonpara_pdf_2 = fit['nonpara_pdf_2'] + x_quantile = fit["x_quantile"] + y_quantile = fit["y_quantile"] + nonpara_dist_1 = fit["nonpara_dist_1"] + nonpara_dist_2 = fit["nonpara_dist_2"] + nonpara_pdf_2 = fit["nonpara_pdf_2"] # Calculate Kendall's tau tau = stats.kendalltau(x2, x1)[0] - theta_gum = 1./(1.-tau) + theta_gum = 1.0 / (1.0 - tau) # Component 1 (Hs) z1 = x_quantile @@ -1414,15 +1550,15 @@ def _nonparametric_gumbel_copula(x1, x2, fit, nb_steps, kwargs): component_2_np_gumbel = np.zeros(nb_steps) for k in range(nb_steps): - z1 = np.array([x_quantile[k]]*Ndata) + z1 = np.array([x_quantile[k]] * Ndata) Z = np.array((z1.T, F_x2)) Y = _gumbel_density(Z, theta_gum) Y = np.nan_to_num(Y) # pdf 2|1 - p_x2_x1 = Y*f_x2 + p_x2_x1 = Y * f_x2 # Estimate CDF from PDF dum = np.cumsum(p_x2_x1) - cdf = dum/(dum[Ndata-1]) + cdf = dum / (dum[Ndata - 1]) table = np.array((pts_x2, cdf)) table = table.T for j in range(Ndata): @@ -1430,17 +1566,17 @@ def _nonparametric_gumbel_copula(x1, x2, fit, nb_steps, kwargs): component_2_np_gumbel[k] = min(table[:, 0]) break elif y_quantile[k] <= table[j, 1]: - component_2_np_gumbel[k] = (table[j, 0]+table[j-1, 0])/2 + component_2_np_gumbel[k] = (table[j, 0] + table[j - 1, 0]) / 2 break else: component_2_np_gumbel[k] = max(table[:, 0]) - fit['tau'] = tau - fit['theta'] = theta_gum - fit['z1'] = z1 - fit['pts_x2'] = pts_x2 - fit['f_x2'] = f_x2 - fit['F_x2'] = F_x2 + fit["tau"] = tau + fit["theta"] = theta_gum + fit["z1"] = z1 + fit["pts_x2"] = pts_x2 + fit["f_x2"] = f_x2 + fit["F_x2"] = F_x2 if return_fit: return component_1_np, component_2_np_gumbel, fit @@ -1466,7 +1602,7 @@ def _bivariate_KDE(x1, x2, bw, fit, nb_steps, Ndata_bivariate_KDE, kwargs): fit: Dictionay Dictionary of the iso-probability results nb_steps: int - number of points used to discritize KDE space + number of points used to discretize KDE space max_x1: float Defines the max value of x1 to discretize the KDE space max_x2: float @@ -1487,9 +1623,12 @@ def _bivariate_KDE(x1, x2, bw, fit, nb_steps, Ndata_bivariate_KDE, kwargs): If return_fit=True. Dictionary with iso-probabilities passed with additional fit metrics from the copula method. """ - assert isinstance(x1, np.ndarray), 'x1 must be of type np.ndarray' - assert isinstance(x2, np.ndarray), 'x2 must be of type np.ndarray' - assert isinstance(nb_steps, int), 'nb_steps must be of type int' + if not isinstance(x1, np.ndarray): + raise TypeError(f"x1 must be of type np.ndarray. Got: {type(x1)}") + if not isinstance(x2, np.ndarray): + raise TypeError(f"x2 must be of type np.ndarray. Got: {type(x2)}") + if not isinstance(nb_steps, int): + raise TypeError(f"nb_steps must be of type int. Got: {type(nb_steps)}") max_x1 = kwargs.get("max_x1", None) max_x2 = kwargs.get("max_x2", None) @@ -1497,17 +1636,23 @@ def _bivariate_KDE(x1, x2, bw, fit, nb_steps, Ndata_bivariate_KDE, kwargs): return_fit = kwargs.get("return_fit", False) if isinstance(max_x1, type(None)): - max_x1 = x1.max()*2 + max_x1 = x1.max() * 2 if isinstance(max_x2, type(None)): - max_x2 = x2.max()*2 - assert isinstance(max_x1, float), 'max_x1 must be of type float' - assert isinstance(max_x2, float), 'max_x2 must be of type float' - assert isinstance(log_transform, bool), ('If specified log_transform' - + 'must be a bool') - assert isinstance(return_fit, bool), ('If specified return_fit must ' - + 'be a bool') - - p_f = fit['exceedance_probability'] + max_x2 = x2.max() * 2 + if not isinstance(max_x1, float): + raise TypeError(f"max_x1 must be of type float. Got: {type(max_x1)}") + if not isinstance(max_x2, float): + raise TypeError(f"max_x2 must be of type float. Got: {type(max_x2)}") + if not isinstance(log_transform, bool): + raise TypeError( + f"If specified, log_transform must be of type bool. Got: {type(log_transform)}" + ) + if not isinstance(return_fit, bool): + raise TypeError( + f"If specified, return_fit must be of type bool. Got: {type(return_fit)}" + ) + + p_f = fit["exceedance_probability"] min_limit_1 = 0.01 min_limit_2 = 0.01 @@ -1535,10 +1680,10 @@ def _bivariate_KDE(x1, x2, bw, fit, nb_steps, Ndata_bivariate_KDE, kwargs): for i in range(0, m): ftemp = np.ones((n, 1)) for j in range(0, d): - z = (txi[j][i] - ty[j])/bw[j] + z = (txi[j][i] - ty[j]) / bw[j] fk = stats.norm.pdf(z) if log_transform: - fnew = fk*(1/np.transpose(xi[j][i])) + fnew = fk * (1 / np.transpose(xi[j][i])) else: fnew = fk fnew = np.reshape(fnew, (n, 1)) @@ -1551,27 +1696,39 @@ def _bivariate_KDE(x1, x2, bw, fit, nb_steps, Ndata_bivariate_KDE, kwargs): x1_bivariate_KDE = [] x2_bivariate_KDE = [] - for i, seg in enumerate(vals.allsegs[0]): + if mpl_version < (3, 8): # For versions before 3.8 + segments = vals.allsegs[0] + else: + segments = [path.vertices for path in vals.get_paths()] + + for seg in segments: x1_bivariate_KDE.append(seg[:, 1]) x2_bivariate_KDE.append(seg[:, 0]) x1_bivariate_KDE = np.transpose(np.asarray(x1_bivariate_KDE)[0]) x2_bivariate_KDE = np.transpose(np.asarray(x2_bivariate_KDE)[0]) - fit['mesh_pts_x1'] = mesh_pts_x1 - fit['mesh_pts_x2'] = mesh_pts_x2 - fit['ty'] = ty - fit['xi'] = xi - fit['contour_vals'] = vals + fit["mesh_pts_x1"] = mesh_pts_x1 + fit["mesh_pts_x2"] = mesh_pts_x2 + fit["ty"] = ty + fit["xi"] = xi + fit["contour_vals"] = vals if return_fit: return x1_bivariate_KDE, x2_bivariate_KDE, fit return x1_bivariate_KDE, x2_bivariate_KDE -### Sampling -def samples_full_seastate(x1, x2, points_per_interval, return_periods, - sea_state_duration, method="PCA", bin_size=250): +# Sampling +def samples_full_seastate( + x1, + x2, + points_per_interval, + return_periods, + sea_state_duration, + method="PCA", + bin_size=250, +): """ Sample a sea state between contours of specified return periods. @@ -1585,9 +1742,9 @@ def samples_full_seastate(x1, x2, points_per_interval, return_periods, Parameters ---------- - x1: np.array + x1: list, np.ndarray, pd.Series, xr.DataArray Component 1 data - x2: np.array + x2: list, np.ndarray, pd.Series, xr.DataArray Component 2 data points_per_interval : int Number of sample points to be calculated per contour interval. @@ -1612,21 +1769,29 @@ def samples_full_seastate(x1, x2, points_per_interval, return_periods, Vector of probabilistic weights for each sampling point to be used in risk calculations. """ - if method != 'PCA': + if method != "PCA": raise NotImplementedError( - "Full sea state sampling is currently only implemented using " + - "the 'PCA' method.") - assert isinstance(x1, np.ndarray), 'x1 must be of type np.ndarray' - assert isinstance(x2, np.ndarray), 'x2 must be of type np.ndarray' - assert isinstance(points_per_interval, - int), 'points_per_interval must be of int' - assert isinstance(return_periods, np.ndarray - ), 'return_periods must be of type np.ndarray' - assert isinstance(sea_state_duration, (int, float) - ), 'sea_state_duration must be of int or float' - assert isinstance(method, (str, list) - ), 'method must be of type string or list' - assert isinstance(bin_size, int), 'bin_size must be of int' + "Full sea state sampling is currently only implemented using " + + "the 'PCA' method." + ) + x1 = to_numeric_array(x1, "x1") + x2 = to_numeric_array(x2, "x2") + if not isinstance(points_per_interval, int): + raise TypeError( + f"points_per_interval must be of int. Got: {type(points_per_interval)}" + ) + if not isinstance(return_periods, np.ndarray): + raise TypeError( + f"return_periods must be of type np.ndarray. Got: {type(return_periods)}" + ) + if not isinstance(sea_state_duration, (int, float)): + raise TypeError( + f"sea_state_duration must be of int or float. Got: {type(sea_state_duration)}" + ) + if not isinstance(method, (str, list)): + raise TypeError(f"method must be of type string or list. Got: {type(method)}") + if not isinstance(bin_size, int): + raise TypeError(f"bin_size must be of int. Got: {type(bin_size)}") pca_fit = _principal_component_analysis(x1, x2, bin_size) @@ -1636,31 +1801,31 @@ def samples_full_seastate(x1, x2, points_per_interval, return_periods, h_zeroline = np.zeros(len(t_zeroline)) # Transform zero line into principal component space - coeff = pca_fit['principal_axes'] - shift = pca_fit['shift'] - comp_zeroline = np.dot(np.transpose(np.vstack([h_zeroline, t_zeroline])), - coeff) + coeff = pca_fit["principal_axes"] + shift = pca_fit["shift"] + comp_zeroline = np.dot(np.transpose(np.vstack([h_zeroline, t_zeroline])), coeff) comp_zeroline[:, 1] = comp_zeroline[:, 1] + shift - comp1 = pca_fit['x1_fit'] + comp1 = pca_fit["x1_fit"] c1_zeroline_prob = stats.invgauss.cdf( - comp_zeroline[:, 0], mu=comp1['mu'], loc=0, scale=comp1['scale']) + comp_zeroline[:, 0], mu=comp1["mu"], loc=0, scale=comp1["scale"] + ) - mu_slope = pca_fit['mu_fit'].slope - mu_intercept = pca_fit['mu_fit'].intercept + mu_slope = pca_fit["mu_fit"].slope + mu_intercept = pca_fit["mu_fit"].intercept mu_zeroline = mu_slope * comp_zeroline[:, 0] + mu_intercept - sigma_polynomial_coeffcients = pca_fit['sigma_fit'].x - sigma_zeroline = np.polyval( - sigma_polynomial_coeffcients, comp_zeroline[:, 0]) - c2_zeroline_prob = stats.norm.cdf(comp_zeroline[:, 1], - loc=mu_zeroline, scale=sigma_zeroline) + sigma_polynomial_coeffcients = pca_fit["sigma_fit"].x + sigma_zeroline = np.polyval(sigma_polynomial_coeffcients, comp_zeroline[:, 0]) + c2_zeroline_prob = stats.norm.cdf( + comp_zeroline[:, 1], loc=mu_zeroline, scale=sigma_zeroline + ) c1_normzeroline = stats.norm.ppf(c1_zeroline_prob, 0, 1) c2_normzeroline = stats.norm.ppf(c2_zeroline_prob, 0, 1) return_periods = np.asarray(return_periods) - contour_probs = 1 / (365*24*60*60/sea_state_duration * return_periods) + contour_probs = 1 / (365 * 24 * 60 * 60 / sea_state_duration * return_periods) # Reliability contour generation # Calculate reliability @@ -1686,12 +1851,11 @@ def samples_full_seastate(x1, x2, points_per_interval, return_periods, # Transform to polar coordinates theta_zeroline = np.arctan2(c2_normzeroline, c1_normzeroline) rho_zeroline = np.sqrt(c1_normzeroline**2 + c2_normzeroline**2) - theta_zeroline[theta_zeroline < 0] = theta_zeroline[ - theta_zeroline < 0] + 2 * np.pi + theta_zeroline[theta_zeroline < 0] = theta_zeroline[theta_zeroline < 0] + 2 * np.pi sample_alpha, sample_beta, weight_points = _generate_sample_data( - beta_lines, rho_zeroline, theta_zeroline, points_per_interval, - contour_probs) + beta_lines, rho_zeroline, theta_zeroline, points_per_interval, contour_probs + ) # Sample transformation to principal component space sample_u1 = sample_beta * np.cos(sample_alpha) @@ -1699,19 +1863,22 @@ def samples_full_seastate(x1, x2, points_per_interval, return_periods, comp1_sample = stats.invgauss.ppf( stats.norm.cdf(sample_u1, loc=0, scale=1), - mu=comp1['mu'], loc=0, scale=comp1['scale']) + mu=comp1["mu"], + loc=0, + scale=comp1["scale"], + ) mu_sample = mu_slope * comp1_sample + mu_intercept # Calculate sigma values at each point on the circle sigma_sample = np.polyval(sigma_polynomial_coeffcients, comp1_sample) # Use calculated mu and sigma values to calculate C2 along the contour - comp2_sample = stats.norm.ppf(stats.norm.cdf(sample_u2, loc=0, scale=1), - loc=mu_sample, scale=sigma_sample) + comp2_sample = stats.norm.ppf( + stats.norm.cdf(sample_u2, loc=0, scale=1), loc=mu_sample, scale=sigma_sample + ) # Sample transformation into Hs-T space - h_sample, t_sample = _princomp_inv( - comp1_sample, comp2_sample, coeff, shift) + h_sample, t_sample = _princomp_inv(comp1_sample, comp2_sample, coeff, shift) return h_sample, t_sample, weight_points @@ -1723,65 +1890,63 @@ def samples_contour(t_samples, t_contour, hs_contour): Parameters ---------- - t_samples : np.array + t_samples : list, np.ndarray, pd.Series, xr.DataArray Points for sampling along return contour - t_contour : np.array + t_contour : list, np.ndarray, pd.Series, xr.DataArray T values along contour - hs_contour : np.array + hs_contour : list, np.ndarray, pd.Series, xr.DataArray Hs values along contour Returns ------- - hs_samples : nparray + hs_samples : np.ndarray points sampled along return contour """ - assert isinstance( - t_samples, np.ndarray), 't_samples must be of type np.ndarray' - assert isinstance( - t_contour, np.ndarray), 't_contour must be of type np.ndarray' - assert isinstance( - hs_contour, np.ndarray), 'hs_contour must be of type np.ndarray' - - #finds minimum and maximum energy period values + t_samples = to_numeric_array(t_samples, "t_samples") + t_contour = to_numeric_array(t_contour, "t_contour") + hs_contour = to_numeric_array(hs_contour, "hs_contour") + + # finds minimum and maximum energy period values amin = np.argmin(t_contour) amax = np.argmax(t_contour) aamin = np.min([amin, amax]) aamax = np.max([amin, amax]) - #finds points along the contour + # finds points along the contour w1 = hs_contour[aamin:aamax] w2 = np.concatenate((hs_contour[aamax:], hs_contour[:aamin])) - if (np.max(w1) > np.max(w2)): + if np.max(w1) > np.max(w2): x1 = t_contour[aamin:aamax] y1 = hs_contour[aamin:aamax] else: x1 = np.concatenate((t_contour[aamax:], t_contour[:aamin])) y1 = np.concatenate((hs_contour[aamax:], hs_contour[:aamin])) - #sorts data based on the max and min energy period values + # sorts data based on the max and min energy period values ms = np.argsort(x1) x = x1[ms] y = y1[ms] - #interpolates the sorted data + # interpolates the sorted data si = interp.interp1d(x, y) - #finds the wave height based on the user specified energy period values + # finds the wave height based on the user specified energy period values hs_samples = si(t_samples) return hs_samples -def _generate_sample_data(beta_lines, rho_zeroline, theta_zeroline, - points_per_interval, contour_probs): +def _generate_sample_data( + beta_lines, rho_zeroline, theta_zeroline, points_per_interval, contour_probs +): """ Calculate radius, angle, and weight for each sample point Parameters ---------- - beta_lines: np.array + beta_lines: list, np.ndarray, pd.Series, xr.DataArray Array of mu fitting function parameters. - rho_zeroline: np.array + rho_zeroline: list, np.ndarray, pd.Series, xr.DataArray Array of radii - theta_zeroline: np.array + theta_zeroline: list, np.ndarray, pd.Series, xr.DataArray points_per_interval: int - contour_probs: np.array + contour_probs: list, np.ndarray, pd.Series, xr.DataArray Returns ------- @@ -1792,16 +1957,14 @@ def _generate_sample_data(beta_lines, rho_zeroline, theta_zeroline, weight_points: np.array Array of weights for each point. """ - assert isinstance( - beta_lines, np.ndarray), 'beta_lines must be of type np.ndarray' - assert isinstance( - rho_zeroline, np.ndarray), 'rho_zeroline must be of type np.ndarray' - assert isinstance(theta_zeroline, np.ndarray - ), 'theta_zeroline must be of type np.ndarray' - assert isinstance(points_per_interval, int - ), 'points_per_interval must be of type int' - assert isinstance( - contour_probs, np.ndarray), 'contour_probs must be of type np.ndarray' + beta_lines = to_numeric_array(beta_lines, "beta_lines") + rho_zeroline = to_numeric_array(rho_zeroline, "rho_zeroline") + theta_zeroline = to_numeric_array(theta_zeroline, "theta_zeroline") + contour_probs = to_numeric_array(contour_probs, "contour_probs") + if not isinstance(points_per_interval, int): + raise TypeError( + f"points_per_interval must be of type int. Got: {type(points_per_interval)}" + ) num_samples = (len(beta_lines) - 1) * points_per_interval alpha_bounds = np.zeros((len(beta_lines) - 1, 2)) @@ -1822,8 +1985,10 @@ def _generate_sample_data(beta_lines, rho_zeroline, theta_zeroline, left = np.amin(np.where(r < 0)) right = np.amax(np.where(r < 0)) # Save sampling bounds - alpha_bounds[i, :] = (theta_zeroline[left], theta_zeroline[right] - - 2 * np.pi) + alpha_bounds[i, :] = ( + theta_zeroline[left], + theta_zeroline[right] - 2 * np.pi, + ) else: alpha_bounds[i, :] = np.array((0, 2 * np.pi)) # Find the angular distance that will be covered by sampling the disc @@ -1834,23 +1999,27 @@ def _generate_sample_data(beta_lines, rho_zeroline, theta_zeroline, # areas to be sampled alpha[i, :] = np.arange( min(alpha_bounds[i]), - max(alpha_bounds[i]) + 0.1, angular_dist[i] / points_per_interval) + max(alpha_bounds[i]) + 0.1, + angular_dist[i] / points_per_interval, + ) # Calculate the weight of each point sampled per contour - weight[i] = ((contour_probs[i] - contour_probs[i + 1]) * - angular_ratio[i] / points_per_interval) + weight[i] = ( + (contour_probs[i] - contour_probs[i + 1]) + * angular_ratio[i] + / points_per_interval + ) for j in range(points_per_interval): # Generate sample radius by adding a randomly sampled distance to # the 'disc' lower bound - sample_beta[(i) * points_per_interval + j] = ( - beta_lines[i] + - np.random.random_sample() * (beta_lines[i + 1] - beta_lines[i]) - ) + sample_beta[(i) * points_per_interval + j] = beta_lines[ + i + ] + np.random.random_sample() * (beta_lines[i + 1] - beta_lines[i]) # Generate sample angle by adding a randomly sampled distance to # the lower bound of the angle defining a discrete portion of the # 'disc' - sample_alpha[(i) * points_per_interval + j] = ( - alpha[i, j] + - np.random.random_sample() * (alpha[i, j + 1] - alpha[i, j])) + sample_alpha[(i) * points_per_interval + j] = alpha[ + i, j + ] + np.random.random_sample() * (alpha[i, j + 1] - alpha[i, j]) # Save the weight for each sample point weight_points[i * points_per_interval + j] = weight[i] @@ -1880,20 +2049,28 @@ def _princomp_inv(princip_data1, princip_data2, coeff, shift): original2: np.array T values following rotation from principal component space. """ - assert isinstance( - princip_data1, np.ndarray), 'princip_data1 must be of type np.ndarray' - assert isinstance( - princip_data2, np.ndarray), 'princip_data2 must be of type np.ndarray' - assert isinstance(coeff, np.ndarray), 'coeff must be of type np.ndarray' - assert isinstance(shift, float), 'float must be of type float' + if not isinstance(princip_data1, np.ndarray): + raise TypeError( + f"princip_data1 must be of type np.ndarray. Got: {type(princip_data1)}" + ) + if not isinstance(princip_data2, np.ndarray): + raise TypeError( + f"princip_data2 must be of type np.ndarray. Got: {type(princip_data2)}" + ) + if not isinstance(coeff, np.ndarray): + raise TypeError(f"coeff must be of type np.ndarray. Got: {type(coeff)}") + if not isinstance(shift, float): + raise TypeError(f"shift must be of type float. Got: {type(shift)}") original1 = np.zeros(len(princip_data1)) original2 = np.zeros(len(princip_data1)) for i in range(len(princip_data2)): - original1[i] = (((coeff[0, 1] * (princip_data2[i] - shift)) + - (coeff[0, 0] * princip_data1[i])) / (coeff[0, 1]**2 + - coeff[0, 0]**2)) - original2[i] = (((coeff[0, 1] * princip_data1[i]) - - (coeff[0, 0] * (princip_data2[i] - shift))) / - (coeff[0, 1]**2 + coeff[0, 0]**2)) + original1[i] = ( + (coeff[0, 1] * (princip_data2[i] - shift)) + + (coeff[0, 0] * princip_data1[i]) + ) / (coeff[0, 1] ** 2 + coeff[0, 0] ** 2) + original2[i] = ( + (coeff[0, 1] * princip_data1[i]) + - (coeff[0, 0] * (princip_data2[i] - shift)) + ) / (coeff[0, 1] ** 2 + coeff[0, 0] ** 2) return original1, original2 diff --git a/mhkit/wave/graphics.py b/mhkit/wave/graphics.py index afb24016a..ba8e536ff 100644 --- a/mhkit/wave/graphics.py +++ b/mhkit/wave/graphics.py @@ -1,6 +1,6 @@ - from mhkit.river.resource import exceedance_probability from mhkit.river.graphics import _xy_plot +from mhkit.utils import convert_to_dataset import matplotlib.patheffects as pe import matplotlib.pyplot as plt from matplotlib import gridspec @@ -17,7 +17,7 @@ def plot_spectrum(S, ax=None): Parameters ------------ - S: pandas DataFrame + S: pandas Series, pandas DataFrame, xarray DataArray, or xarray Dataset Spectral density [m^2/Hz] indexed frequency [Hz] ax : matplotlib axes object Axes for plotting. If None, then a new figure is created. @@ -26,12 +26,19 @@ def plot_spectrum(S, ax=None): --------- ax : matplotlib pyplot axes """ - assert isinstance(S, pd.DataFrame), 'S must be of type pd.DataFrame' - - f = S.index - for key in S.keys(): - ax = _xy_plot(f*2*np.pi, S[key]/(2*np.pi), fmt='-', xlabel='omega [rad/s]', - ylabel='Spectral density [m$^2$s/rad]', ax=ax) + S = convert_to_dataset(S) + + frequency_dimension = list(S.dims)[0] + f = S[frequency_dimension] + for var in S.data_vars: + ax = _xy_plot( + f * 2 * np.pi, + S[var] / (2 * np.pi), + fmt="-", + xlabel="omega [rad/s]", + ylabel="Spectral density [m$^2$s/rad]", + ax=ax, + ) return ax @@ -42,7 +49,7 @@ def plot_elevation_timeseries(eta, ax=None): Parameters ---------- - eta: pandas DataFrame + eta: pandas Series, pandas DataFrame, xarray DataArray, or xarray Dataset Wave surface elevation [m] indexed by time [datetime or s] ax : matplotlib axes object Axes for plotting. If None, then a new figure is created. @@ -51,30 +58,24 @@ def plot_elevation_timeseries(eta, ax=None): ------- ax : matplotlib pyplot axes """ + eta = convert_to_dataset(eta) - assert isinstance(eta, pd.DataFrame), 'eta must be of type pd.DataFrame' + time_dimension = list(eta.dims)[0] + t = eta[time_dimension] - for key in eta.keys(): - ax = _xy_plot(eta.index, eta[key], fmt='-', xlabel='Time', - ylabel='$\eta$ [m]', ax=ax) + for var in eta.data_vars: + ax = _xy_plot(t, eta[var], fmt="-", xlabel="Time", ylabel="$\eta$ [m]", ax=ax) return ax -def plot_matrix( - M, - xlabel='Te', - ylabel='Hm0', - zlabel=None, - show_values=True, - ax=None - ): +def plot_matrix(M, xlabel="Te", ylabel="Hm0", zlabel=None, show_values=True, ax=None): """ Plots values in the matrix as a scatter diagram Parameters ------------ - M: pandas DataFrame + M: pandas Series, pandas DataFrame, xarray DataArray Matrix with numeric labels for x and y axis, and numeric entries. An example would be the average capture length matrix generated by mhkit.device.wave, or something similar. @@ -93,13 +94,18 @@ def plot_matrix( ax : matplotlib pyplot axes """ - assert isinstance(M, pd.DataFrame), 'M must be of type pd.DataFrame' + try: + M = pd.DataFrame(M) + except: + pass + if not isinstance(M, pd.DataFrame): + raise TypeError(f"M must be of type pd.DataFrame. Got: {type(M)}") if ax is None: plt.figure() ax = plt.gca() - im = ax.imshow(M, origin='lower', aspect='auto') + im = ax.imshow(M, origin="lower", aspect="auto") # Add colorbar cbar = plt.colorbar(im) @@ -114,8 +120,10 @@ def plot_matrix( if show_values: for i, col in enumerate(M.columns): for j, index in enumerate(M.index): - if not np.isnan(M.loc[index,col]): - ax.text(i, j, format(M.loc[index,col], '.2f'), ha="center", va="center") + if not np.isnan(M.loc[index, col]): + ax.text( + i, j, format(M.loc[index, col], ".2f"), ha="center", va="center" + ) # Reset x and y ticks ax.set_xticks(np.arange(len(M.columns))) @@ -162,11 +170,11 @@ def plot_chakrabarti(H, lambda_w, D, ax=None): Parameters ---------- - H: float or numpy array or pandas Series + H: int, float, numpy array, pandas Series, or xarray DataArray Wave height [m] - lambda_w: float or numpy array or pandas Series + lambda_w: int, float, numpy array, pandas Series, or xarray DataArray Wave length [m] - D: float or numpy array or pandas Series + D: int, float, numpy array, pandas Series, or xarray DataArray Characteristic length [m] ax : matplotlib axes object (optional) Axes for plotting. If None, then a new figure is created. @@ -175,46 +183,57 @@ def plot_chakrabarti(H, lambda_w, D, ax=None): ------- ax : matplotlib pyplot axes """ - assert isinstance(H, (np.ndarray, float, int, np.int64,pd.Series)), \ - 'H must be a real numeric type' - assert isinstance(lambda_w, (np.ndarray, float, int, np.int64,pd.Series)), \ - 'lambda_w must be a real numeric type' - assert isinstance(D, (np.ndarray, float, int, np.int64,pd.Series)), \ - 'D must be a real numeric type' - - if any([(isinstance(H, np.ndarray) or isinstance(H, pd.Series)), \ - (isinstance(lambda_w, np.ndarray) or isinstance(H, pd.Series)), \ - (isinstance(D, np.ndarray) or isinstance(H, pd.Series))\ - ]): - errMsg = 'D, H, and lambda_w must be same shape' + if not isinstance(H, (np.ndarray, float, int, np.int64, pd.Series, xr.DataArray)): + raise TypeError( + f"H must be of type float, int, np.int64, np.ndarray, pd.Series, or xr.DataArray. Got: {type(H)}" + ) + if not isinstance( + lambda_w, (np.ndarray, float, int, np.int64, pd.Series, xr.DataArray) + ): + raise TypeError( + f"lambda_w must be of type float, int, np.int64, np.ndarray, pd.Series, or xr.DataArray. Got: {type(lambda_w)}" + ) + if not isinstance(D, (np.ndarray, float, int, np.int64, pd.Series, xr.DataArray)): + raise TypeError( + f"D must be of type float, int, np.int64, np.ndarray, pd.Series, or xr.DataArray. Got: {type(D)}" + ) + + if any( + [ + isinstance(H, (np.ndarray, pd.Series, xr.DataArray)), + isinstance(lambda_w, (np.ndarray, pd.Series, xr.DataArray)), + isinstance(D, (np.ndarray, pd.Series, xr.DataArray)), + ] + ): n_H = H.squeeze().shape n_lambda_w = lambda_w.squeeze().shape n_D = D.squeeze().shape - assert n_H == n_lambda_w and n_H == n_D, errMsg + if not (n_H == n_lambda_w and n_H == n_D): + raise ValueError("D, H, and lambda_w must be same shape") if isinstance(H, np.ndarray): - mvals = pd.DataFrame(H.reshape(len(H),1), columns=['H']) - mvals['lambda_w'] = lambda_w - mvals['D'] = D - elif isinstance(H, pd.Series): + mvals = pd.DataFrame(H.reshape(len(H), 1), columns=["H"]) + mvals["lambda_w"] = lambda_w + mvals["D"] = D + elif isinstance(H, (pd.Series, xr.DataArray)): mvals = pd.DataFrame(H) - mvals['lambda_w'] = lambda_w - mvals['D'] = D + mvals["lambda_w"] = lambda_w + mvals["D"] = D else: H = np.array([H]) lambda_w = np.array([lambda_w]) D = np.array([D]) - mvals = pd.DataFrame(H.reshape(len(H),1), columns=['H']) - mvals['lambda_w'] = lambda_w - mvals['D'] = D + mvals = pd.DataFrame(H.reshape(len(H), 1), columns=["H"]) + mvals["lambda_w"] = lambda_w + mvals["D"] = D if ax is None: plt.figure() ax = plt.gca() - ax.set_xscale('log') - ax.set_yscale('log') + ax.set_xscale("log") + ax.set_yscale("log") for index, row in mvals.iterrows(): H = row.H @@ -222,103 +241,140 @@ def plot_chakrabarti(H, lambda_w, D, ax=None): lambda_w = row.lambda_w KC = H / D - Diffraction = np.pi*D / lambda_w - label = f'$H$ = {H:g}, $\lambda_w$ = {lambda_w:g}, $D$ = {D:g}' - ax.plot(Diffraction, KC, 'o', label=label) - - if np.any(KC>=10 or KC<=.02) or np.any(Diffraction>=50) or \ - np.any(lambda_w >= 1000) : - ax.autoscale(enable=True, axis='both', tight=True) + Diffraction = np.pi * D / lambda_w + label = f"$H$ = {H:g}, $\lambda_w$ = {lambda_w:g}, $D$ = {D:g}" + ax.plot(Diffraction, KC, "o", label=label) + + if ( + np.any(KC >= 10 or KC <= 0.02) + or np.any(Diffraction >= 50) + or np.any(lambda_w >= 1000) + ): + ax.autoscale(enable=True, axis="both", tight=True) else: ax.set_xlim((0.01, 10)) ax.set_ylim((0.01, 50)) graphScale = list(ax.get_xlim()) - if graphScale[0] >= .01: - graphScale[0] =.01 + if graphScale[0] >= 0.01: + graphScale[0] = 0.01 # deep water breaking limit (H/lambda_w = 0.14) - x = np.logspace(1,np.log10(graphScale[0]), 2) + x = np.logspace(1, np.log10(graphScale[0]), 2) y_breaking = 0.14 * np.pi / x - ax.plot(x, y_breaking, 'k-') + ax.plot(x, y_breaking, "k-") graphScale = list(ax.get_xlim()) - ax.text(1, 7, - 'wave\nbreaking\n$H/\lambda_w > 0.14$', - ha='center', va='center', fontstyle='italic', - fontsize='small',clip_on='True') + ax.text( + 1, + 7, + "wave\nbreaking\n$H/\lambda_w > 0.14$", + ha="center", + va="center", + fontstyle="italic", + fontsize="small", + clip_on="True", + ) # upper bound of low drag region ldv = 20 - y_small_drag = 20*np.ones_like(graphScale) + y_small_drag = 20 * np.ones_like(graphScale) graphScale[1] = 0.14 * np.pi / ldv - ax.plot(graphScale, y_small_drag,'k--') - ax.text(0.0125, 30, - 'drag', - ha='center', va='top', fontstyle='italic', - fontsize='small',clip_on='True') + ax.plot(graphScale, y_small_drag, "k--") + ax.text( + 0.0125, + 30, + "drag", + ha="center", + va="top", + fontstyle="italic", + fontsize="small", + clip_on="True", + ) # upper bound of small drag region sdv = 1.5 - y_small_drag = sdv*np.ones_like(graphScale) + y_small_drag = sdv * np.ones_like(graphScale) graphScale[1] = 0.14 * np.pi / sdv - ax.plot(graphScale, y_small_drag,'k--') - ax.text(0.02, 7, - 'inertia \n& drag', - ha='center', va='center', fontstyle='italic', - fontsize='small',clip_on='True') + ax.plot(graphScale, y_small_drag, "k--") + ax.text( + 0.02, + 7, + "inertia \n& drag", + ha="center", + va="center", + fontstyle="italic", + fontsize="small", + clip_on="True", + ) # upper bound of negligible drag region ndv = 0.25 graphScale[1] = 0.14 * np.pi / ndv - y_small_drag = ndv*np.ones_like(graphScale) - ax.plot(graphScale, y_small_drag,'k--') - ax.text(8e-2, 0.7, - 'large\ninertia', - ha='center', va='center', fontstyle='italic', - fontsize='small',clip_on='True') - - - ax.text(8e-2, 6e-2, - 'all\ninertia', - ha='center', va='center', fontstyle='italic', - fontsize='small', clip_on='True') + y_small_drag = ndv * np.ones_like(graphScale) + ax.plot(graphScale, y_small_drag, "k--") + ax.text( + 8e-2, + 0.7, + "large\ninertia", + ha="center", + va="center", + fontstyle="italic", + fontsize="small", + clip_on="True", + ) + + ax.text( + 8e-2, + 6e-2, + "all\ninertia", + ha="center", + va="center", + fontstyle="italic", + fontsize="small", + clip_on="True", + ) # left bound of diffraction region drv = 0.5 graphScale = list(ax.get_ylim()) graphScale[1] = 0.14 * np.pi / drv - x_diff_reg = drv*np.ones_like(graphScale) - ax.plot(x_diff_reg, graphScale, 'k--') - ax.text(2, 6e-2, - 'diffraction', - ha='center', va='center', fontstyle='italic', - fontsize='small',clip_on='True') - + x_diff_reg = drv * np.ones_like(graphScale) + ax.plot(x_diff_reg, graphScale, "k--") + ax.text( + 2, + 6e-2, + "diffraction", + ha="center", + va="center", + fontstyle="italic", + fontsize="small", + clip_on="True", + ) if index > 0: - ax.legend(fontsize='xx-small', ncol=2) + ax.legend(fontsize="xx-small", ncol=2) - ax.set_xlabel('Diffraction parameter, $\\frac{\\pi D}{\\lambda_w}$') - ax.set_ylabel('KC parameter, $\\frac{H}{D}$') + ax.set_xlabel("Diffraction parameter, $\\frac{\\pi D}{\\lambda_w}$") + ax.set_ylabel("KC parameter, $\\frac{H}{D}$") plt.tight_layout() def plot_environmental_contour(x1, x2, x1_contour, x2_contour, **kwargs): - ''' + """ Plots an overlay of the x1 and x2 variables to the calculate environmental contours. - + Parameters ---------- - x1: numpy array + x1: list, np.ndarray, pd.Series, xr.DataArray x-axis data - x2: numpy array + x2: list, np.ndarray, pd.Series, xr.DataArray x-axis data - x1_contour: numpy array or list + x1_contour: list, np.ndarray, pd.Series, xr.DataArray Calculated x1 contour values - x2_contour: numpy array or list + x2_contour: list, np.ndarray, pd.Series, xr.DataArray Calculated x2 contour values **kwargs : optional x_label: string (optional) @@ -336,74 +392,105 @@ def plot_environmental_contour(x1, x2, x1_contour, x2_contour, **kwargs): Default None. markers: string string or list of strings to use as marker types - + Returns ------- ax : matplotlib pyplot axes - ''' - try: x1 = x1.values - except: pass - try: x2 = x2.values - except: pass - assert isinstance(x1, np.ndarray), 'x1 must be of type np.ndarray' - assert isinstance(x2, np.ndarray), 'x2 must be of type np.ndarray' - assert isinstance(x1_contour, (np.ndarray,list)), ('x1_contour must be of ' - 'type np.ndarray or list') - assert isinstance(x2_contour, (np.ndarray,list)), ('x2_contour must be of ' - 'type np.ndarray or list') + """ + try: + x1 = x1.values + except: + pass + try: + x2 = x2.values + except: + pass + if not isinstance(x1, np.ndarray): + raise TypeError(f"x1 must be of type np.ndarray. Got: {type(x1)}") + if not isinstance(x2, np.ndarray): + raise TypeError(f"x2 must be of type np.ndarray. Got: {type(x2)}") + try: + x1_contour = x1_contour.values + except: + pass + try: + x2_contour = x2_contour.values + except: + pass + if not isinstance(x1_contour, (np.ndarray, list)): + raise TypeError( + f"x1_contour must be of type np.ndarray or list. Got: {type(x1_contour)}" + ) + if not isinstance(x2_contour, (np.ndarray, list)): + raise TypeError( + f"x2_contour must be of type np.ndarray or list. Got: {type(x2_contour)}" + ) + x_label = kwargs.get("x_label", None) y_label = kwargs.get("y_label", None) - data_label=kwargs.get("data_label", None) - contour_label=kwargs.get("contour_label", None) - ax=kwargs.get("ax", None) - markers=kwargs.get("markers", '-') - assert isinstance(data_label, (str,type(None))), 'data_label must be of type str' - assert isinstance(contour_label, (str,list, type(None))), ('contour_label be of ' - 'type str') - - if isinstance(markers, list): - assert all( [isinstance(marker, (str)) for marker in markers] ) - elif isinstance(markers, str): - markers=[markers] - assert all( [isinstance(marker, (str)) for marker in markers] ) - else: - assert isinstance(markers, (str,list)), ('markers must be of type str or list of strings') + data_label = kwargs.get("data_label", None) + contour_label = kwargs.get("contour_label", None) + ax = kwargs.get("ax", None) + markers = kwargs.get("markers", "-") + if not isinstance(data_label, (str, type(None))): + raise TypeError( + f"If specified, data_label must be of type str. Got: {type(data_label)}" + ) + if not isinstance(contour_label, (str, list, type(None))): + raise TypeError( + f"If specified, contour_label be of type str. Got: {type(contour_label)}" + ) - assert len(x2_contour) == len(x1_contour), ('contour must be of' - f'equal dimesion got {len(x2_contour)} and {len(x1_contour)}') + if isinstance(markers, str): + markers = [markers] + if not isinstance(markers, list) or not all( + [isinstance(marker, (str)) for marker in markers] + ): + raise TypeError( + f"markers must be of type str or list of strings. Got: {markers}" + ) + if not len(x2_contour) == len(x1_contour): + raise ValueError( + f"contour must be of equal dimension got {len(x2_contour)} and {len(x1_contour)}" + ) if isinstance(x1_contour, np.ndarray): - N_contours=1 - x2_contour = [x2_contour] + N_contours = 1 + x2_contour = [x2_contour] x1_contour = [x1_contour] elif isinstance(x1_contour, list): - N_contours=len(x1_contour) + N_contours = len(x1_contour) if contour_label != None: if isinstance(contour_label, str): contour_label = [contour_label] N_c_labels = len(contour_label) - assert N_c_labels == N_contours, ('If specified, the ' - 'number of contour lables must be equal to number the ' - f'number of contour years. Got {N_c_labels} and {N_contours}') + if not N_c_labels == N_contours: + raise ValueError( + "If specified, the number of contour labels must" + " be equal to number the number of contour years." + f" Got: {N_c_labels} and {N_contours}" + ) else: contour_label = [None] * N_contours - if len(markers)==1: - markers=markers*N_contours - assert len(markers) == N_contours, ('Markers must be same length' - f'as N contours specified. Got: {len(markers)} and {len(x1_contour)}') + if len(markers) == 1: + markers = markers * N_contours + if not len(markers) == N_contours: + raise ValueError( + "Markers must be same length as N contours specified." + f"Got: {len(markers)} and {len(x1_contour)}" + ) for i in range(N_contours): contour1 = np.array(x1_contour[i]).T contour2 = np.array(x2_contour[i]).T - ax = _xy_plot(contour1, contour2, markers[i], - label=contour_label[i], ax=ax) + ax = _xy_plot(contour1, contour2, markers[i], label=contour_label[i], ax=ax) - plt.plot(x1, x2, 'bo', alpha=0.1, label=data_label) + plt.plot(x1, x2, "bo", alpha=0.1, label=data_label) - plt.legend(loc='lower right') + plt.legend(loc="lower right") plt.xlabel(x_label) plt.ylabel(y_label) plt.tight_layout() @@ -411,16 +498,16 @@ def plot_environmental_contour(x1, x2, x1_contour, x2_contour, **kwargs): def plot_avg_annual_energy_matrix( - Hm0, - Te, - J, - time_index=None, - Hm0_bin_size=None, - Te_bin_size=None, - Hm0_edges=None, - Te_edges=None - ): - ''' + Hm0, + Te, + J, + time_index=None, + Hm0_bin_size=None, + Te_bin_size=None, + Hm0_edges=None, + Te_edges=None, +): + """ Creates an average annual energy matrix with frequency of occurance. Parameters @@ -446,51 +533,53 @@ def plot_avg_annual_energy_matrix( ------- fig: Figure Average annual energy table plot - ''' + """ fig = plt.figure() if isinstance(time_index, type(None)): data = pd.DataFrame(dict(Hm0=Hm0, Te=Te, J=J)) else: - data= pd.DataFrame(dict(Hm0=Hm0, Te=Te, J=J), index=time_index) - years=data.index.year.unique() + data = pd.DataFrame(dict(Hm0=Hm0, Te=Te, J=J), index=time_index) + years = data.index.year.unique() if isinstance(Hm0_edges, type(None)): Hm0_max = data.Hm0.max() - Hm0_edges = np.arange(0,Hm0_max+Hm0_bin_size,Hm0_bin_size) + Hm0_edges = np.arange(0, Hm0_max + Hm0_bin_size, Hm0_bin_size) if isinstance(Te_edges, type(None)): Te_max = data.Te.max() - Te_edges = np.arange(0, Te_max+Te_bin_size,Te_bin_size) + Te_edges = np.arange(0, Te_max + Te_bin_size, Te_bin_size) # Dict for number of hours each sea state occurs - hist_counts={} - hist_J={} + hist_counts = {} + hist_J = {} # Create hist of counts, and weghted by J for each year for year in years: year_data = data.loc[str(year)].copy(deep=True) # Get the counts of each bin - counts, xedges, yedges= np.histogram2d( + counts, xedges, yedges = np.histogram2d( year_data.Te, year_data.Hm0, - bins = (Te_edges,Hm0_edges), + bins=(Te_edges, Hm0_edges), ) # Get centers for number of counts plot location - xcenters = xedges[:-1]+ np.diff(xedges) - ycenters = yedges[:-1]+ np.diff(yedges) + xcenters = xedges[:-1] + np.diff(xedges) + ycenters = yedges[:-1] + np.diff(yedges) - year_data['xbins'] = np.digitize(year_data.Te, xcenters) - year_data['ybins'] = np.digitize(year_data.Hm0, ycenters) + year_data["xbins"] = np.digitize(year_data.Te, xcenters) + year_data["ybins"] = np.digitize(year_data.Hm0, ycenters) total_year_J = year_data.J.sum() - H=counts.copy() + H = counts.copy() for i in range(len(xcenters)): for j in range(len(ycenters)): - bin_J = year_data[(year_data.xbins == i) & (year_data.ybins == j)].J.sum() + bin_J = year_data[ + (year_data.xbins == i) & (year_data.ybins == j) + ].J.sum() H[i][j] = bin_J / total_year_J # Save in results dict @@ -498,70 +587,82 @@ def plot_avg_annual_energy_matrix( hist_J[year] = H # Calculate avg annual - avg_annual_counts_hist = sum(hist_counts.values())/len(years) - avg_annual_J_hist = sum(hist_J.values())/len(years) + avg_annual_counts_hist = sum(hist_counts.values()) / len(years) + avg_annual_J_hist = sum(hist_J.values()) / len(years) # Create a mask of non-zero weights to hide from imshow - Hmasked = np.ma.masked_where(~(avg_annual_J_hist>0),avg_annual_J_hist) - plt.imshow(Hmasked.T, interpolation = 'none', vmin = 0.005, origin='lower', aspect='auto', - extent=[xedges[0], xedges[-1], yedges[0], yedges[-1]]) + Hmasked = np.ma.masked_where(~(avg_annual_J_hist > 0), avg_annual_J_hist) + plt.imshow( + Hmasked.T, + interpolation="none", + vmin=0.005, + origin="lower", + aspect="auto", + extent=[xedges[0], xedges[-1], yedges[0], yedges[-1]], + ) # Plot number of counts as text on the hist of annual avg J for xi in range(len(xcenters)): for yi in range(len(ycenters)): if avg_annual_counts_hist[xi][yi] != 0: plt.text( - xedges[xi], - yedges[yi], - int(np.ceil(avg_annual_counts_hist[xi][yi])), - fontsize=10, - color='white', - path_effects=[pe.withStroke(linewidth=1, foreground="k")] - ) - plt.xlabel('Wave Energy Period (s)') - plt.ylabel('Significant Wave Height (m)') - - cbar=plt.colorbar() - cbar.set_label('Mean Normalized Annual Energy') + xedges[xi], + yedges[yi], + int(np.ceil(avg_annual_counts_hist[xi][yi])), + fontsize=10, + color="white", + path_effects=[pe.withStroke(linewidth=1, foreground="k")], + ) + plt.xlabel("Wave Energy Period (s)") + plt.ylabel("Significant Wave Height (m)") + + cbar = plt.colorbar() + cbar.set_label("Mean Normalized Annual Energy") plt.tight_layout() return fig def monthly_cumulative_distribution(J): - ''' + """ Creates a cumulative distribution of energy flux as described in IEC TS 62600-101. Parameters ---------- - J: Series + J: pd.Series, xr.DataArray Energy Flux with DateTime index Returns ------- ax: axes Figure of monthly cumulative distribution - ''' - assert isinstance(J, pd.Series), 'J must be of type pd.Series' - cumSum={} - months=J.index.month.unique() + """ + J = pd.Series(J) + cumSum = {} + months = J.index.month.unique() for month in months: - F = exceedance_probability(J[J.index.month==month]) - cumSum[month] = 1-F/100 - cumSum[month].sort_values('F', inplace=True) - plt.figure(figsize=(12,8) ) + F = exceedance_probability(J[J.index.month == month]) + cumSum[month] = 1 - F / 100 + cumSum[month].sort_values("F", inplace=True) + plt.figure(figsize=(12, 8)) for month in months: - plt.semilogx(J.loc[cumSum[month].index], cumSum[month].F, '--', - label=calendar.month_abbr[month]) + plt.semilogx( + J.loc[cumSum[month].index], + cumSum[month].F, + "--", + label=calendar.month_abbr[month], + ) F = exceedance_probability(J) - F.sort_values('F', inplace=True) - ax = plt.semilogx(J.loc[F.index], 1-F['F']/100, 'k-', fillstyle='none', label='All') + F.sort_values("F", inplace=True) + ax = plt.semilogx( + J.loc[F.index], 1 - F["F"] / 100, "k-", fillstyle="none", label="All" + ) plt.grid() - plt.xlabel('Energy Flux') - plt.ylabel('Cumulative Distribution') + plt.xlabel("Energy Flux") + plt.ylabel("Cumulative Distribution") plt.legend() return ax @@ -577,11 +678,11 @@ def plot_compendium(Hs, Tp, Dp, buoy_title=None, ax=None): Parameters ---------- - Hs: pandas Series + Hs: pandas Series or xarray DataArray significant wave height - Tp: pandas Series + Tp: pandas Series or xarray DataArray significant wave height - Dp: pandas Series + Dp: pandas Series or xarray DataArray significant wave height buoy_title: string (optional) Buoy title from the CDIP THREDDS Server @@ -592,47 +693,54 @@ def plot_compendium(Hs, Tp, Dp, buoy_title=None, ax=None): ax : matplotlib pyplot axes """ - assert isinstance(Hs, pd.Series), 'Hs must be of type pd.Series' - assert isinstance(Tp, pd.Series), 'Tp must be of type pd.Series' - assert isinstance(Dp, pd.Series), 'Dp must be of type pd.Series' - assert isinstance(buoy_title, (str, type(None))), 'buoy_title must be of type string' + Hs = pd.Series(Hs) + Tp = pd.Series(Tp) + Dp = pd.Series(Dp) + if not isinstance(Hs, pd.Series): + raise TypeError(f"Hs must be of type pd.Series. Got: {type(Hs)}") + if not isinstance(Tp, pd.Series): + raise TypeError(f"Tp must be of type pd.Series. Got: {type(Tp)}") + if not isinstance(Dp, pd.Series): + raise TypeError(f"Dp must be of type pd.Series. Got: {type(Dp)}") + if not isinstance(buoy_title, (str, type(None))): + raise TypeError( + f"If specified, buoy_title must be of type string. Got: {type(buoy_title)}" + ) - f, (pHs, pTp, pDp) = plt.subplots(3, 1, sharex=True, figsize=(15,10)) + f, (pHs, pTp, pDp) = plt.subplots(3, 1, sharex=True, figsize=(15, 10)) - pHs.plot(Hs.index,Hs,'b') - pTp.plot(Tp.index,Tp,'b') - pDp.scatter(Dp.index,Dp,color='blue',s=5) + pHs.plot(Hs.index, Hs, "b") + pTp.plot(Tp.index, Tp, "b") + pDp.scatter(Dp.index, Dp, color="blue", s=5) - pHs.tick_params(axis='x', which='major', labelsize=12, top='off') - pHs.set_ylim(0,8) - pHs.tick_params(axis='y', which='major', labelsize=12, right='off') - pHs.set_ylabel('Hs [m]', fontsize=18) - pHs.grid(color='b', linestyle='--') + pHs.tick_params(axis="x", which="major", labelsize=12, top="off") + pHs.set_ylim(0, 8) + pHs.tick_params(axis="y", which="major", labelsize=12, right="off") + pHs.set_ylabel("Hs [m]", fontsize=18) + pHs.grid(color="b", linestyle="--") pHs2 = pHs.twinx() - pHs2.set_ylim(0,25) - pHs2.set_ylabel('Hs [ft]', fontsize=18) - + pHs2.set_ylim(0, 25) + pHs2.set_ylabel("Hs [ft]", fontsize=18) # Peak Period, Tp - pTp.set_ylim(0,28) - pTp.set_ylabel('Tp [s]', fontsize=18) - pTp.grid(color='b', linestyle='--') - + pTp.set_ylim(0, 28) + pTp.set_ylabel("Tp [s]", fontsize=18) + pTp.grid(color="b", linestyle="--") # Direction, Dp - pDp.set_ylim(0,360) - pDp.set_ylabel('Dp [deg]', fontsize=18) - pDp.grid(color='b', linestyle='--') - pDp.set_xlabel('Day', fontsize=18) + pDp.set_ylim(0, 360) + pDp.set_ylabel("Dp [deg]", fontsize=18) + pDp.grid(color="b", linestyle="--") + pDp.set_xlabel("Day", fontsize=18) # Set x-axis tick interval to every 5 days degrees = 70 days = matplotlib.dates.DayLocator(interval=5) - daysFmt = matplotlib.dates.DateFormatter('%Y-%m-%d') + daysFmt = matplotlib.dates.DateFormatter("%Y-%m-%d") plt.gca().xaxis.set_major_locator(days) plt.gca().xaxis.set_major_formatter(daysFmt) - plt.setp( pDp.xaxis.get_majorticklabels(), rotation=degrees ) + plt.setp(pDp.xaxis.get_majorticklabels(), rotation=degrees) # Set Titles month_name_start = Hs.index.month_name()[0][:3] @@ -641,7 +749,7 @@ def plot_compendium(Hs, Tp, Dp, buoy_title=None, ax=None): year_end = Hs.index.year[-1] plt.suptitle(buoy_title, fontsize=30) - plt.title(f'{Hs.index[0].date()} to {Hs.index[-1].date()}', fontsize=20) + plt.title(f"{Hs.index[0].date()} to {Hs.index[-1].date()}", fontsize=20) ax = f @@ -658,7 +766,7 @@ def plot_boxplot(Hs, buoy_title=None): Parameters ------------ - data: pandas DataFrame + Hs: pandas Series or xarray DataArray Spectral density [m^2/Hz] indexed frequency [Hz] buoy_title: string (optional) Buoy title from the CDIP THREDDS Server @@ -668,66 +776,82 @@ def plot_boxplot(Hs, buoy_title=None): --------- ax : matplotlib pyplot axes """ - assert isinstance(Hs, pd.Series), 'Hs must be of type pd.Series' - assert isinstance(buoy_title, (str, type(None))), 'buoy_title must be of type string' + Hs = pd.Series(Hs) + if not isinstance(Hs, pd.Series): + raise TypeError(f"Hs must be of type pd.Series. Got: {type(Hs)}") + if not isinstance(buoy_title, (str, type(None))): + raise TypeError( + f"If specified, buoy_title must be of type string. Got: {type(buoy_title)}" + ) months = Hs.index.month means = Hs.groupby(months).mean() monthlengths = Hs.groupby(months).count() - fig = plt.figure(figsize=(10,12)) - gs = gridspec.GridSpec(2,1, height_ratios=[4,1]) + fig = plt.figure(figsize=(10, 12)) + gs = gridspec.GridSpec(2, 1, height_ratios=[4, 1]) - boxprops = dict(color='k') - whiskerprops = dict(linestyle='--', color='k') - flierprops = dict(marker='+', color='r',markeredgecolor='r',markerfacecolor='r') - medianprops = dict(linewidth=2.5,color='firebrick') - meanprops = dict(linewidth=2.5, marker='_', markersize=25) + boxprops = dict(color="k") + whiskerprops = dict(linestyle="--", color="k") + flierprops = dict(marker="+", color="r", markeredgecolor="r", markerfacecolor="r") + medianprops = dict(linewidth=2.5, color="firebrick") + meanprops = dict(linewidth=2.5, marker="_", markersize=25) - bp = plt.subplot(gs[0,:]) + bp = plt.subplot(gs[0, :]) Hs_months = Hs.to_frame().groupby(months) - bp = Hs_months.boxplot(subplots=False, boxprops=boxprops, - whiskerprops=whiskerprops, flierprops=flierprops, - medianprops=medianprops, showmeans=True, meanprops=meanprops) + bp = Hs_months.boxplot( + subplots=False, + boxprops=boxprops, + whiskerprops=whiskerprops, + flierprops=flierprops, + medianprops=medianprops, + showmeans=True, + meanprops=meanprops, + ) # Add values of monthly means as text for i, mean in enumerate(means): - bp.annotate(np.round(mean,2), (means.index[i],mean),fontsize=12, - horizontalalignment='center',verticalalignment='bottom', - color='g') + bp.annotate( + np.round(mean, 2), + (means.index[i], mean), + fontsize=12, + horizontalalignment="center", + verticalalignment="bottom", + color="g", + ) # Create a second row of x-axis labels for top subplot newax = bp.twiny() - newax.tick_params(which='major', direction='in', pad=-18) + newax.tick_params(which="major", direction="in", pad=-18) newax.set_xlim(bp.get_xlim()) - newax.xaxis.set_ticks_position('top') - newax.xaxis.set_label_position('top') - newax.set_xticks(np.arange(1,13,1)) - newax.set_xticklabels(monthlengths,fontsize=10) - + newax.xaxis.set_ticks_position("top") + newax.xaxis.set_label_position("top") + newax.set_xticks(np.arange(1, 13, 1)) + newax.set_xticklabels(monthlengths, fontsize=10) # Sample 'legend' boxplot, to go underneath actual boxplot - bp_sample2 = np.random.normal(2.5,0.5,500) - bp2 = plt.subplot(gs[1,:]) - meanprops = dict(linewidth=2.5, marker='|', markersize=25) - bp2_example = bp2.boxplot(bp_sample2,vert=False,flierprops=flierprops, - medianprops=medianprops) - sample_mean=2.3 - bp2.scatter(sample_mean,1,marker="|",color='g',linewidths=1.0,s=200) - - for line in bp2_example['medians']: + bp_sample2 = np.random.normal(2.5, 0.5, 500) + bp2 = plt.subplot(gs[1, :]) + meanprops = dict(linewidth=2.5, marker="|", markersize=25) + bp2_example = bp2.boxplot( + bp_sample2, vert=False, flierprops=flierprops, medianprops=medianprops + ) + sample_mean = 2.3 + bp2.scatter(sample_mean, 1, marker="|", color="g", linewidths=1.0, s=200) + + for line in bp2_example["medians"]: xm, ym = line.get_xydata()[0] - for line in bp2_example['boxes']: + for line in bp2_example["boxes"]: xb, yb = line.get_xydata()[0] - for line in bp2_example['whiskers']: + for line in bp2_example["whiskers"]: xw, yw = line.get_xydata()[0] - bp2.annotate("Median",[xm-0.1,ym-0.3*ym],fontsize=10,color='firebrick') - bp2.annotate("Mean",[sample_mean-0.1,0.65],fontsize=10,color='g') - bp2.annotate("25%ile",[xb-0.05*xb,yb-0.15*yb],fontsize=10) - bp2.annotate("75%ile",[xb+0.26*xb,yb-0.15*yb],fontsize=10) - bp2.annotate("Outliers",[xw+0.3*xw,yw-0.3*yw],fontsize=10,color='r') + bp2.annotate("Median", [xm - 0.1, ym - 0.3 * ym], fontsize=10, color="firebrick") + bp2.annotate("Mean", [sample_mean - 0.1, 0.65], fontsize=10, color="g") + bp2.annotate("25%ile", [xb - 0.05 * xb, yb - 0.15 * yb], fontsize=10) + bp2.annotate("75%ile", [xb + 0.26 * xb, yb - 0.15 * yb], fontsize=10) + bp2.annotate("Outliers", [xw + 0.3 * xw, yw - 0.3 * yw], fontsize=10, color="r") if buoy_title: plt.suptitle(buoy_title, fontsize=30, y=0.97) @@ -735,14 +859,14 @@ def plot_boxplot(Hs, buoy_title=None): bp2.set_title("Sample Boxplot", fontsize=10, y=1.02) # Set axes labels and ticks - months_text = [ m[:3] for m in Hs.index.month_name().unique()] - bp.set_xticklabels(months_text,fontsize=12) - bp.set_ylabel('Significant Wave Height, Hs (m)', fontsize=14) - bp.tick_params(axis='y', which='major', labelsize=12, right='off') - bp.tick_params(axis='x', which='major', labelsize=12, top='off') + months_text = [m[:3] for m in Hs.index.month_name().unique()] + bp.set_xticklabels(months_text, fontsize=12) + bp.set_ylabel("Significant Wave Height, Hs (m)", fontsize=14) + bp.tick_params(axis="y", which="major", labelsize=12, right="off") + bp.tick_params(axis="x", which="major", labelsize=12, top="off") # Plot horizontal gridlines onto top subplot - bp.grid(axis='x', color='b', linestyle='-', alpha=0.25) + bp.grid(axis="x", color="b", linestyle="-", alpha=0.25) # Remove tickmarks from bottom subplot bp2.axes.get_xaxis().set_visible(False) @@ -754,13 +878,13 @@ def plot_boxplot(Hs, buoy_title=None): def plot_directional_spectrum( - spectrum, - min=None, - fill=True, - nlevels=11, - name="Elevation Variance", - units="m^2" - ): + spectrum, + color_level_min=None, + fill=True, + nlevels=11, + name="Elevation Variance", + units="m^2", +): """ Create a contour polar plot of a directional spectrum. @@ -768,8 +892,8 @@ def plot_directional_spectrum( ------------ spectrum: xarray.DataArray Spectral data indexed frequency [Hz] and wave direction [deg]. - min: float (optional) - Minimum value to plot. + color_level_min: float (optional) + Minimum color bar level. fill: bool Whether to use `contourf` (filled) instead of `contour` (lines). nlevels: int @@ -783,27 +907,38 @@ def plot_directional_spectrum( --------- ax : matplotlib pyplot axes """ - assert isinstance(spectrum, xr.DataArray), 'spectrum must be a DataArray' - if min is not None: - assert isinstance(min, float), 'min must be a float' - assert isinstance(fill, bool), 'fill must be a bool' - assert isinstance(nlevels, int), 'nlevels must be an int' - assert isinstance(name, str), 'name must be a string' - assert isinstance(units, str), 'units must be a string' - - a,f = np.meshgrid(np.deg2rad(spectrum.direction), spectrum.frequency) - _, ax = plt.subplots(subplot_kw=dict(projection='polar')) - tmp = np.floor(np.min(spectrum.data)*10)/10 - min = tmp if (min is None) else min - max = np.ceil(np.max(spectrum.data)*10)/10 - levels = np.linspace(min, max, nlevels) + if not isinstance(spectrum, xr.DataArray): + raise TypeError(f"spectrum must be of type xr.DataArray. Got: {type(spectrum)}") + if not isinstance(color_level_min, (type(None), float)): + raise TypeError( + f"If specified, color_level_min must be of type float. Got: {type(color_level_min)}" + ) + if not isinstance(fill, bool): + raise TypeError(f"If specified, fill must be of type bool. Got: {type(fill)}") + if not isinstance(nlevels, int): + raise TypeError( + f"If specified, nlevels must be of type int. Got: {type(nlevels)}" + ) + if not isinstance(name, str): + raise TypeError(f"If specified, name must be of type string. Got: {type(name)}") + if not isinstance(units, str): + raise TypeError( + f"If specified, units must be of type string. Got: {type(units)}" + ) + + a, f = np.meshgrid(np.deg2rad(spectrum.direction), spectrum.frequency) + _, ax = plt.subplots(subplot_kw=dict(projection="polar")) + tmp = np.floor(np.min(spectrum.data) * 10) / 10 + color_level_min = tmp if (color_level_min is None) else color_level_min + color_level_max = np.ceil(np.max(spectrum.data) * 10) / 10 + levels = np.linspace(color_level_min, color_level_max, nlevels) if fill: c = ax.contourf(a, f, spectrum, levels=levels) else: c = ax.contour(a, f, spectrum, levels=levels) cbar = plt.colorbar(c) - cbar.set_label(f'Spectrum [{units}/Hz/deg]', rotation=270, labelpad=20) - ax.set_title(f'{name} Spectrum') + cbar.set_label(f"Spectrum [{units}/Hz/deg]", rotation=270, labelpad=20) + ax.set_title(f"{name} Spectrum") ylabels = ax.get_yticklabels() ylabels = [ilabel.get_text() for ilabel in ax.get_yticklabels()] ylabels = [ilabel + "Hz" for ilabel in ylabels] diff --git a/mhkit/wave/io/__init__.py b/mhkit/wave/io/__init__.py index f6ad3f71f..2e966e752 100644 --- a/mhkit/wave/io/__init__.py +++ b/mhkit/wave/io/__init__.py @@ -2,4 +2,4 @@ from mhkit.wave.io import wecsim from mhkit.wave.io import cdip from mhkit.wave.io import swan -from mhkit.wave.io import hindcast \ No newline at end of file +from mhkit.wave.io import hindcast diff --git a/mhkit/wave/io/cdip.py b/mhkit/wave/io/cdip.py index a5cf2451b..5fb6e34f3 100644 --- a/mhkit/wave/io/cdip.py +++ b/mhkit/wave/io/cdip.py @@ -1,323 +1,408 @@ -from datetime import timezone +import os import pandas as pd import numpy as np import datetime import netCDF4 -import time import pytz +from mhkit.utils.cache import handle_caching +from mhkit.utils import convert_nested_dict_and_pandas + def _validate_date(date_text): - ''' + """ Checks date format to ensure YYYY-MM-DD format and return date in datetime format. - + Parameters ---------- date_text: string Date string format to check - + Returns ------- dt: datetime - ''' - assert isinstance(date_text, str), (f'date_text must be' / - 'of type string') + """ + + if not isinstance(date_text, str): + raise ValueError("date_text must be of type string. Got: {date_text}") + try: - dt = datetime.datetime.strptime(date_text, '%Y-%m-%d') + dt = datetime.datetime.strptime(date_text, "%Y-%m-%d") except ValueError: raise ValueError("Incorrect data format, should be YYYY-MM-DD") else: - dt = dt.replace(tzinfo=timezone.utc) - + dt = dt.replace(tzinfo=datetime.timezone.utc) + return dt def _start_and_end_of_year(year): - ''' + """ Returns a datetime start and end for a given year - + Parameters ---------- year: int Year to get start and end dates - + Returns ------- start_year: datetime object start of the year end_year: datetime object - end of the year - ''' - - assert isinstance(year, (type(None),int,list)), 'year must be of type int' - + end of the year + """ + + if not isinstance(year, (type(None), int, list)): + raise ValueError("year must be of type int, list, or None. Got: {type(year)}") + try: year = str(year) - start_year = datetime.datetime.strptime(year, '%Y') - except ValueError: - raise ValueError("Incorrect years format, should be YYYY") - else: - next_year = datetime.datetime.strptime(f'{int(year)+1}', '%Y') + start_year = datetime.datetime.strptime(year, "%Y") + except ValueError as exc: + raise ValueError("Incorrect years format, should be YYYY") from exc + else: + next_year = datetime.datetime.strptime(f"{int(year)+1}", "%Y") end_year = next_year - datetime.timedelta(days=1) return start_year, end_year def _dates_to_timestamp(nc, start_date=None, end_date=None): - ''' - Returns timestamps from dates. - + """ + Returns timestamps from dates. + Parameters ---------- nc: netCDF Object - netCDF data for the given station number and data type - start_date: string + netCDF data for the given station number and data type + start_date: string Start date in YYYY-MM-DD, e.g. '2012-04-01' - end_date: string - End date in YYYY-MM-DD, e.g. '2012-04-30' - + end_date: string + End date in YYYY-MM-DD, e.g. '2012-04-30' + Returns ------- start_stamp: float - seconds since the Epoch to start_date + seconds since the Epoch to start_date end_stamp: float seconds since the Epoch to end_date - ''' - - assert isinstance(start_date, (str, type(None))), ('start_date' / - 'must be of type str') - assert isinstance(end_date, (str, type(None))), ('end_date must be' / - 'of type str') - - time_all = nc.variables['waveTime'][:].compressed() - t_i=(datetime.datetime.fromtimestamp(time_all[0]) - .astimezone(pytz.timezone('UTC'))) - t_f=(datetime.datetime.fromtimestamp(time_all[-1]) - .astimezone(pytz.timezone('UTC'))) + """ + + if start_date and not isinstance(start_date, datetime.datetime): + raise ValueError( + f"start_date must be of type datetime.datetime or None. Got: {type(start_date)}" + ) + + if end_date and not isinstance(end_date, datetime.datetime): + raise ValueError( + f"end_date must be of type datetime.datetime or None. Got: {type(end_date)}" + ) + + time_all = nc.variables["waveTime"][:].compressed() + t_i = datetime.datetime.fromtimestamp(time_all[0]).astimezone(pytz.timezone("UTC")) + t_f = datetime.datetime.fromtimestamp(time_all[-1]).astimezone(pytz.timezone("UTC")) time_range_all = [t_i, t_f] - - if start_date: - start_datetime = _validate_date(start_date) - if end_date: - end_datetime = _validate_date(end_date) - if start_datetime > end_datetime: - raise Exception(f'start_date ({start_datetime}) must be'+ - f'before end_date ({end_datetime})') - elif start_datetime == end_datetime: - raise Exception(f'start_date ({start_datetime}) cannot be'+ - f'the same as end_date ({end_datetime})') - - def to_timestamp(time): - stamp = (pd.to_datetime(time) - .astimezone(pytz.timezone('UTC')) - .timestamp()) - return stamp - + if start_date: - if start_datetime > time_range_all[0] and start_datetime < time_range_all[1]: - start_stamp = start_datetime.astimezone(pytz.timezone('UTC')).timestamp() + start_date = start_date.astimezone(pytz.UTC) + if start_date > time_range_all[0] and start_date < time_range_all[1]: + start_stamp = start_date.timestamp() else: - print(f'WARNING: Provided start_date ({start_datetime}) is ' - f'not in the returned data range {time_range_all} \n' - f'Setting start_date to the earliest date in range ' - f'{time_range_all[0]}') - start_stamp = to_timestamp(time_range_all[0]) - + print( + f"WARNING: Provided start_date ({start_date}) is " + f"not in the returned data range {time_range_all} \n" + f"Setting start_date to the earliest date in range " + f"{time_range_all[0]}" + ) + start_stamp = time_range_all[0].timestamp() + if end_date: - if end_datetime > time_range_all[0] and end_datetime < time_range_all[1]: - end_stamp = end_datetime.astimezone(pytz.timezone('UTC')).timestamp() + end_date = end_date.astimezone(pytz.UTC) + if end_date > time_range_all[0] and end_date < time_range_all[1]: + end_stamp = end_date.timestamp() else: - print(f'WARNING: Provided end_date ({end_datetime}) is ' - f'not in the returned data range {time_range_all} \n' - f'Setting end_date to the latest date in range ' - f'{time_range_all[1]}') - end_stamp = to_timestamp(time_range_all[1]) - - + print( + f"WARNING: Provided end_date ({end_date}) is " + f"not in the returned data range {time_range_all} \n" + f"Setting end_date to the latest date in range " + f"{time_range_all[1]}" + ) + end_stamp = time_range_all[1].timestamp() + if start_date and not end_date: - end_stamp = to_timestamp(time_range_all[1]) + end_stamp = time_range_all[1].timestamp() elif end_date and not start_date: - start_stamp = to_timestamp(time_range_all[0]) - + start_stamp = time_range_all[0].timestamp() + if not start_date: - start_stamp = to_timestamp(time_range_all[0]) + start_stamp = time_range_all[0].timestamp() if not end_date: - end_stamp = to_timestamp(time_range_all[1]) + end_stamp = time_range_all[1].timestamp() + + return start_stamp, end_stamp - return start_stamp, end_stamp - def request_netCDF(station_number, data_type): - ''' + """ Returns historic or realtime data from CDIP THREDDS server - + Parameters ---------- station_number: string CDIP station number of interest data_type: string 'historic' or 'realtime' - + Returns ------- - nc: netCDF Object + nc: xarray Dataset netCDF data for the given station number and data type - ''' - assert isinstance(station_number, str), (f'station_number must be ' + - f'of type string. Got: {station_number}') - assert isinstance(data_type, str), (f'data_type must be' / - 'of type string') - assert data_type in ['historic', 'realtime'], ('data_type must be'\ - f' "historic" or "realtime". Got: {data_type}') - if data_type == 'historic': - cdip_archive= 'http://thredds.cdip.ucsd.edu/thredds/dodsC/cdip/archive' - data_url = f'{cdip_archive}/{station_number}p1/{station_number}p1_historic.nc' - elif data_type == 'realtime': - cdip_realtime = 'http://thredds.cdip.ucsd.edu/thredds/dodsC/cdip/realtime' - data_url = f'{cdip_realtime}/{station_number}p1_rt.nc' - + """ + + if not isinstance(station_number, (str, type(None))): + raise ValueError( + f"station_number must be of type string. Got: {type(station_number)}" + ) + + if not isinstance(data_type, str): + raise ValueError(f"data_type must be of type string. Got: {type(data_type)}") + + if data_type not in ["historic", "realtime"]: + raise ValueError('data_type must be "historic" or "realtime". Got: {data_type}') + + BASE_URL = "http://thredds.cdip.ucsd.edu/thredds/dodsC/cdip/" + + if data_type == "historic": + data_url = ( + f"{BASE_URL}archive/{station_number}p1/{station_number}p1_historic.nc" + ) + else: # data_type == 'realtime' + data_url = f"{BASE_URL}realtime/{station_number}p1_rt.nc" + nc = netCDF4.Dataset(data_url) - + return nc - -def request_parse_workflow(nc=None, station_number=None, parameters=None, - years=None, start_date=None, end_date=None, - data_type='historic', all_2D_variables=False): - ''' - Parses a passed CDIP netCDF file or requests a station number - from http://cdip.ucsd.edu/) and parses. This function can return specific + +def request_parse_workflow( + nc=None, + station_number=None, + parameters=None, + years=None, + start_date=None, + end_date=None, + data_type="historic", + all_2D_variables=False, + silent=False, + to_pandas=True, +): + """ + Parses a passed CDIP netCDF file or requests a station number + from http://cdip.ucsd.edu/) and parses. This function can return specific parameters is passed. Years may be non-consecutive e.g. [2001, 2010]. Time may be sliced by dates (start_date or end date in YYYY-MM-DD). data_type defaults to historic but may also be set to 'realtime'. By default 2D variables are not parsed if all 2D varaibles are needed. See - the MHKiT CDiP example Jupyter notbook for information on available parameters. - - + the MHKiT CDiP example Jupyter notbook for information on available parameters. + + Parameters ---------- nc: netCDF Object - netCDF data for the given station number and data type. Can be the output of - request_netCDF + netCDF data for the given station number and data type. Can be the output of + request_netCDF station_number: string Station number of CDIP wave buoy - parameters: string or list of stings + parameters: string or list of strings Parameters to return. If None will return all varaibles except - 2D-variables. + 2D-variables. years: int or list of int - Year date, e.g. 2001 or [2001, 2010] - start_date: string + Year date, e.g. 2001 or [2001, 2010] + start_date: string Start date in YYYY-MM-DD, e.g. '2012-04-01' - end_date: string + end_date: string End date in YYYY-MM-DD, e.g. '2012-04-30' data_type: string - Either 'historic' or 'realtime' + Either 'historic' or 'realtime' all_2D_variables: boolean - Will return all 2D data. Enabling this will add significant + Will return all 2D data. Enabling this will add significant processing time. If all 2D variables are not needed it is - recomended to pass 2D parameters of interest using the + recomended to pass 2D parameters of interest using the 'parameters' keyword and leave this set to False. Default False. - + silent: boolean + Set to True to prevent the print statement that announces when 2D + variable processing begins. Default False. + to_pandas: bool (optional) + Flag to output a dictionary of pandas objects instead of a dictionary + of xarray objects. Default = True. + + Returns ------- data: dictionary - 'vars1D': DataFrame - 1D variables indexed by time + 'data': dictionary of variables + 'vars': pandas DataFrame or xarray Dataset + 1D variables indexed by time + 'vars2D': dictionary of DataFrames or Datasets, optional + If 2D-vars are passed in the 'parameters key' or if run + with all_2D_variables=True, then this key will appear + with a dictonary of DataFrames of 2D variables. 'metadata': dictionary Anything not of length time - 'vars2D': dictionary of DataFrames, optional - If 2D-vars are passed in the 'parameters key' or if run - with all_2D_variables=True, then this key will appear - with a dictonary of DataFrames of 2D variables. - ''' - assert isinstance(station_number, (str, type(None))), (f'station_number must be '+ - 'of type string') - assert isinstance(parameters, (str, type(None), list)), ('parameters' / - 'must be of type str or list of strings') - assert isinstance(start_date, (str, type(None))), ('start_date' / - 'must be of type str') - assert isinstance(end_date, (str, type(None))), ('end_date must be' / - 'of type str') - assert isinstance(years, (type(None),int,list)), ('years must be of'/ - 'type int or list of ints') - assert isinstance(data_type, str), (f'data_type must be' / - 'of type string') - assert data_type in ['historic', 'realtime'], 'data_type must be'\ - f' "historic" or "realtime". Got: {data_type}' - - + """ + if not isinstance(station_number, (str, type(None))): + raise TypeError( + f"station_number must be of type string. Got: {type(station_number)}" + ) + + if not isinstance(parameters, (str, type(None), list)): + raise TypeError( + f"parameters must be of type str or list of strings. Got: {type(parameters)}" + ) + + if start_date is not None: + if isinstance(start_date, str): + try: + start_date = datetime.datetime.strptime(start_date, "%Y-%m-%d") + start_date = start_date.replace(tzinfo=pytz.UTC) + except ValueError as exc: + raise ValueError("Incorrect data format, should be YYYY-MM-DD") from exc + else: + raise TypeError(f"start_date must be of type str. Got: {type(start_date)}") + + if end_date is not None: + if isinstance(end_date, str): + try: + end_date = datetime.datetime.strptime(end_date, "%Y-%m-%d") + end_date = end_date.replace(tzinfo=pytz.UTC) + except ValueError as exc: + raise ValueError("Incorrect data format, should be YYYY-MM-DD") from exc + else: + raise TypeError(f"end_date must be of type str. Got: {type(end_date)}") + + if not isinstance(years, (type(None), int, list)): + raise TypeError( + f"years must be of type int or list of ints. Got: {type(years)}" + ) + + if not isinstance(data_type, str): + raise TypeError(f"data_type must be of type string. Got: {type(data_type)}") + + if data_type not in ["historic", "realtime"]: + raise ValueError( + f'data_type must be "historic" or "realtime". Got: {data_type}' + ) + if not any([nc, station_number]): - raise Exception('Must provide either a CDIP netCDF file or a station '+ - 'number') - + raise ValueError("Must provide either a CDIP netCDF file or a station number.") + + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + if not nc: nc = request_netCDF(station_number, data_type) - - buoy_name = nc.variables['metaStationName'][:].compressed().tobytes().decode("utf-8") - - - multiyear=False + + # Define the path to the cache directory + cache_dir = os.path.join(os.path.expanduser("~"), ".cache", "mhkit", "cdip") + + buoy_name = ( + nc.variables["metaStationName"][:].compressed().tobytes().decode("utf-8") + ) + + multiyear = False if years: - if isinstance(years,int): - start_date = f'{years}-01-01' - end_date = f'{years+1}-01-01' - elif isinstance(years,list): - if len(years)==1: - start_date = f'{years[0]}-01-01' - end_date = f'{years[0]+1}-01-01' + if isinstance(years, int): + start_date = datetime.datetime(years, 1, 1, tzinfo=pytz.UTC) + end_date = datetime.datetime(years + 1, 1, 1, tzinfo=pytz.UTC) + elif isinstance(years, list): + if len(years) == 1: + start_date = datetime.datetime(years[0], 1, 1, tzinfo=pytz.UTC) + end_date = datetime.datetime(years[0] + 1, 1, 1, tzinfo=pytz.UTC) else: - multiyear=True - + multiyear = True if not multiyear: - data = get_netcdf_variables(nc, - start_date=start_date, end_date=end_date, - parameters=parameters, - all_2D_variables=all_2D_variables) - - elif multiyear: - data={'data':{},'metadata':{}} - multiyear_data={} - multiyear_data_2D={} - for year in years: - start_date = f'{year}-01-01' - end_date = f'{year+1}-01-01' - - year_data = get_netcdf_variables(nc, - start_date=start_date, end_date=end_date, - parameters=parameters, - all_2D_variables=all_2D_variables) - multiyear_data[year] = year_data['data'] - - for data_key in year_data['data'].keys(): - if data_key.endswith('2D'): - data['data'][data_key]={} - for data_key2D in year_data['data'][data_key].keys(): - data_list=[] - for year in years: + # Check the cache first + hash_params = f"{station_number}-{parameters}-{start_date}-{end_date}" + data = handle_caching(hash_params, cache_dir) + + if data[:2] == (None, None): + data = get_netcdf_variables( + nc, + start_date=start_date, + end_date=end_date, + parameters=parameters, + all_2D_variables=all_2D_variables, + silent=silent, + ) + handle_caching(hash_params, cache_dir, data=data) + else: + data = data[0] + + else: + data = {"data": {}, "metadata": {}} + multiyear_data = {} + for year in years: + start_date = datetime.datetime(year, 1, 1, tzinfo=pytz.UTC) + end_date = datetime.datetime(year + 1, 1, 1, tzinfo=pytz.UTC) + + # Check the cache for each individual year + hash_params = f"{station_number}-{parameters}-{start_date}-{end_date}" + year_data = handle_caching(hash_params, cache_dir) + if year_data[:2] == (None, None): + year_data = get_netcdf_variables( + nc, + start_date=start_date, + end_date=end_date, + parameters=parameters, + all_2D_variables=all_2D_variables, + silent=silent, + ) + # Cache the individual year's data + handle_caching(hash_params, cache_dir, data=year_data) + else: + year_data = year_data[0] + multiyear_data[year] = year_data["data"] + + for data_key in year_data["data"].keys(): + if data_key.endswith("2D"): + data["data"][data_key] = {} + for data_key2D in year_data["data"][data_key].keys(): + data_list = [] + for year in years: data2D = multiyear_data[year][data_key][data_key2D] data_list.append(data2D) - data['data'][data_key][data_key2D]=pd.concat(data_list) - else: + data["data"][data_key][data_key2D] = pd.concat(data_list) + else: data_list = [multiyear_data[year][data_key] for year in years] - data['data'][data_key] = pd.concat(data_list) + data["data"][data_key] = pd.concat(data_list) + if buoy_name: + try: + data.setdefault("metadata", {})["name"] = buoy_name + except: + pass - - - data['metadata'] = year_data['metadata'] - data['metadata']['name'] = buoy_name + if not to_pandas: + data = convert_nested_dict_and_pandas(data) return data - - -def get_netcdf_variables(nc, start_date=None, end_date=None, - parameters=None, all_2D_variables=False): - ''' + + +def get_netcdf_variables( + nc, + start_date=None, + end_date=None, + parameters=None, + all_2D_variables=False, + silent=False, + to_pandas=True, +): + """ Iterates over and extracts variables from CDIP bouy data. See - the MHKiT CDiP example Jupyter notbook for information on available - parameters. - - + the MHKiT CDiP example Jupyter notbook for information on available + parameters. + Parameters ---------- nc: netCDF Object @@ -325,152 +410,221 @@ def get_netcdf_variables(nc, start_date=None, end_date=None, start_stamp: float Data of interest start in seconds since epoch end_stamp: float - Data of interest end in seconds since epoch - parameters: string or list of stings + Data of interest end in seconds since epoch + parameters: string or list of strings Parameters to return. If None will return all varaibles except 2D-variables. Default None. all_2D_variables: boolean - Will return all 2D data. Enabling this will add significant + Will return all 2D data. Enabling this will add significant processing time. If all 2D variables are not needed it is - recomended to pass 2D parameters of interest using the + recomended to pass 2D parameters of interest using the 'parameters' keyword and leave this set to False. Default False. + silent: boolean + Set to True to prevent the print statement that announces when 2D + variable processing begins. Default False. + to_pandas: bool (optional) + Flag to output a dictionary of pandas objects instead of a dictionary + of xarray objects. Default = True. + Returns ------- results: dictionary - 'vars1D': DataFrame - 1D variables indexed by time + 'data': dictionary of variables + 'vars': pandas DataFrame or xarray Dataset + 1D variables indexed by time + 'vars2D': dictionary of DataFrames or Datasets, optional + If 2D-vars are passed in the 'parameters key' or if run + with all_2D_variables=True, then this key will appear + with a dictonary of DataFrames/Datasets of 2D variables. 'metadata': dictionary Anything not of length time - 'vars2D': dictionary of DataFrames, optional - If 2D-vars are passed in the 'parameters key' or if run - with all_2D_variables=True, then this key will appear - with a dictonary of DataFrames of 2D variables. - ''' - - assert isinstance(nc, netCDF4.Dataset), 'nc must be netCDF4 dataset' - assert isinstance(start_date, (str, type(None))), ('start_date' / - 'must be of type str') - assert isinstance(end_date, (str, type(None))), ('end_date must be' / - 'of type str') - assert isinstance(parameters, (str, type(None), list)), ('parameters' / - 'must be of type str or list of strings') - assert isinstance(all_2D_variables, bool), ('all_2D_variables'/ - 'must be a boolean') + """ + + if not isinstance(nc, netCDF4.Dataset): + raise TypeError("nc must be netCDF4 dataset. Got: {type(nc)}") + + if start_date and isinstance(start_date, str): + start_date = datetime.datetime.strptime(start_date, "%Y-%m-%d") + + if end_date and isinstance(end_date, str): + end_date = datetime.datetime.strptime(end_date, "%Y-%m-%d") + + if not isinstance(parameters, (str, type(None), list)): + raise TypeError( + "parameters must be of type str or list of strings. Got: {type(parameters)}" + ) + + if not isinstance(all_2D_variables, bool): + raise TypeError( + "all_2D_variables must be a boolean. Got: {type(all_2D_variables)}" + ) if parameters: - if isinstance(parameters,str): - parameters = [parameters] - assert all([isinstance(param , str) for param in parameters]), ('All'/ - 'elements of parameters must be strings') + if isinstance(parameters, str): + parameters = [parameters] + for param in parameters: + if not isinstance(param, str): + raise TypeError("All elements of parameters must be strings.") + + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + buoy_name = ( + nc.variables["metaStationName"][:].compressed().tobytes().decode("utf-8") + ) - buoy_name = nc.variables['metaStationName'][:].compressed().tobytes().decode("utf-8") allVariables = [var for var in nc.variables] - - include_2D_variables=False - twoDimensionalVars = [ 'waveEnergyDensity', 'waveMeanDirection', - 'waveA1Value', 'waveB1Value', 'waveA2Value', - 'waveB2Value', 'waveCheckFactor', 'waveSpread', - 'waveM2Value', 'waveN2Value'] - + allVariableSet = set(allVariables) + + twoDimensionalVars = [ + "waveEnergyDensity", + "waveMeanDirection", + "waveA1Value", + "waveB1Value", + "waveA2Value", + "waveB2Value", + "waveCheckFactor", + "waveSpread", + "waveM2Value", + "waveN2Value", + ] + twoDimensionalVarsSet = set(twoDimensionalVars) + + # If parameters are provided, convert them into a set if parameters: params = set(parameters) - include_params = params.intersection(set(allVariables)) - if params != include_params: - not_found = params.difference(include_params) - print(f'WARNING: {not_found} was not found in data.\n' \ - f'Possible parameters are:\n {allVariables}') - - include_params_2D = include_params.intersection( - set(twoDimensionalVars)) - include_params = include_params.difference(include_params_2D) - - if include_params_2D: - include_2D_variables=True - include_params.add('waveFrequency') - include_2D_vars = sorted(include_params_2D) - - include_vars = sorted(include_params) - else: - include_vars = allVariables - - for var in twoDimensionalVars: - include_vars.remove(var) - - if all_2D_variables: - include_2D_variables=True - include_2D_vars = twoDimensionalVars - - - start_stamp, end_stamp =_dates_to_timestamp(nc, start_date=start_date, - end_date=end_date) - - variables_by_type={} - prefixs = ['wave', 'sst', 'gps', 'dwr', 'meta'] - remainingVariables = set(include_vars) - for prefix in prefixs: - variables_by_type[prefix] = [var for var in include_vars - if var.startswith(prefix)] - remainingVariables -= set(variables_by_type[prefix]) - if not variables_by_type[prefix]: - del variables_by_type[prefix] - - results={'data':{}, 'metadata':{}} + params = set() + + # If all_2D_variables is True, add all 2D variables to params + if all_2D_variables: + params.update(twoDimensionalVarsSet) + + include_params = params & allVariableSet + if params != include_params: + not_found = params - include_params + print( + f"WARNING: {not_found} was not found in data.\n" + f"Possible parameters are:\n {allVariables}" + ) + + include_params_2D = include_params & twoDimensionalVarsSet + include_params -= include_params_2D + + include_2D_variables = bool(include_params_2D) + if include_2D_variables: + include_params.add("waveFrequency") + + include_vars = include_params + + # when parameters is None and all_2D_variables is False + if not parameters and not all_2D_variables: + include_vars = allVariableSet - twoDimensionalVarsSet + + start_stamp, end_stamp = _dates_to_timestamp( + nc, start_date=start_date, end_date=end_date + ) + + prefixs = ["wave", "sst", "gps", "dwr", "meta"] + variables_by_type = { + prefix: [var for var in include_vars if var.startswith(prefix)] + for prefix in prefixs + } + variables_by_type = { + prefix: vars for prefix, vars in variables_by_type.items() if vars + } + + results = {"data": {}, "metadata": {}} for prefix in variables_by_type: - var_results={} - time_variables={} - metadata={} - - if prefix != 'meta': - prefixTime = nc.variables[f'{prefix}Time'][:] - - masked_time = np.ma.masked_outside(prefixTime, start_stamp, - end_stamp) - mask = masked_time.mask - var_time = masked_time.compressed() + time_variables = {} + metadata = {} + + if prefix != "meta": + prefixTime = nc.variables[f"{prefix}Time"][:] + + masked_time = np.ma.masked_outside(prefixTime, start_stamp, end_stamp) + mask = masked_time.mask + var_time = masked_time.compressed() N_time = masked_time.size - else: - N_time= np.nan - - for var in variables_by_type[prefix]: - variable = np.ma.filled(nc.variables[var]) - if variable.size == N_time: - variable = np.ma.masked_array(variable, mask).astype(float) - time_variables[var] = variable.compressed() - else: - metadata[var] = nc.variables[var][:].compressed() - - time_slice = pd.to_datetime(var_time, unit='s') - data = pd.DataFrame(time_variables, index=time_slice) - - if prefix != 'meta': - results['data'][prefix] = data - results['data'][prefix].name = buoy_name - results['metadata'][prefix] = metadata - - if (prefix == 'wave') and (include_2D_variables): - - print('Processing 2D Variables:') - vars2D={} - columns=metadata['waveFrequency'] - N_time= len(time_slice) + + for var in variables_by_type[prefix]: + variable = np.ma.filled(nc.variables[var]) + if variable.size == N_time: + variable = np.ma.masked_array(variable, mask).astype(float) + time_variables[var] = variable.compressed() + else: + metadata[var] = nc.variables[var][:].compressed() + + time_slice = pd.to_datetime(var_time, unit="s") + data = pd.DataFrame(time_variables, index=time_slice) + results["data"][prefix] = data + results["data"][prefix].name = buoy_name + + results["metadata"][prefix] = metadata + + if (prefix == "wave") and (include_2D_variables): + if not silent: + print("Processing 2D Variables:") + + vars2D = {} + columns = metadata["waveFrequency"] + N_time = len(time_slice) N_frequency = len(columns) try: l = len(mask) except: mask = np.array([False] * N_time) - - mask2D= np.tile(mask, (len(columns),1)).T - for var in include_2D_vars: + + mask2D = np.tile(mask, (len(columns), 1)).T + for var in include_params_2D: variable2D = nc.variables[var][:].data variable2D = np.ma.masked_array(variable2D, mask2D) - variable2D = variable2D.compressed().reshape(N_time, N_frequency) - variable = pd.DataFrame(variable2D,index=time_slice, - columns=columns) + variable2D = variable2D.compressed().reshape(N_time, N_frequency) + variable = pd.DataFrame(variable2D, index=time_slice, columns=columns) vars2D[var] = variable - results['data']['wave2D'] = vars2D - results['metadata']['name'] = buoy_name - + results["data"]["wave2D"] = vars2D + results["metadata"]["name"] = buoy_name + + if not to_pandas: + results = convert_nested_dict_and_pandas(results) + return results + + +def _process_multiyear_data(nc, years, parameters, all_2D_variables): + """ + A helper function to process multiyear data. + + Parameters + ---------- + nc : netCDF4.Dataset + netCDF file containing the data + years : list of int + A list of years to process + parameters : list of str + A list of parameters to return + all_2D_variables : bool + Whether to return all 2D variables + + Returns + ------- + data : dict + A dictionary containing the processed data + """ + + data = {} + for year in years: + start_date = datetime.datetime(year, 1, 1) + end_date = datetime.datetime(year + 1, 1, 1) + + year_data = get_netcdf_variables( + nc, + start_date=start_date, + end_date=end_date, + parameters=parameters, + all_2D_variables=all_2D_variables, + ) + data[year] = year_data + + return data diff --git a/mhkit/wave/io/hindcast/__init__.py b/mhkit/wave/io/hindcast/__init__.py index 5d6507b9e..2e6057131 100644 --- a/mhkit/wave/io/hindcast/__init__.py +++ b/mhkit/wave/io/hindcast/__init__.py @@ -1,8 +1,11 @@ from mhkit.wave.io.hindcast import wind_toolkit + try: from mhkit.wave.io.hindcast import hindcast except ImportError: - print("WARNING: Wave WPTO hindcast functions not imported from" - "MHKiT-Python. If you are using Windows and calling from" - "MHKiT-MATLAB this is expected.") + print( + "WARNING: Wave WPTO hindcast functions not imported from" + "MHKiT-Python. If you are using Windows and calling from" + "MHKiT-MATLAB this is expected." + ) pass diff --git a/mhkit/wave/io/hindcast/hindcast.py b/mhkit/wave/io/hindcast/hindcast.py index 81b83548f..5922edbc7 100644 --- a/mhkit/wave/io/hindcast/hindcast.py +++ b/mhkit/wave/io/hindcast/hindcast.py @@ -24,17 +24,24 @@ - xarray - numpy - rex.MultiYearWaveX, rex.WaveX + +Author: rpauly, aidanbharath, ssolson +Date: 2023-09-26 """ + +import os import sys from time import sleep import pandas as pd import xarray as xr import numpy as np from rex import MultiYearWaveX, WaveX +from mhkit.utils.cache import handle_caching +from mhkit.utils.type_handling import convert_to_dataset def region_selection(lat_lon): - ''' + """ Returns the name of the predefined region in which the given coordinates reside. Can be used to check if the passed lat/lon pair is within the WPTO hindcast dataset. @@ -48,39 +55,31 @@ def region_selection(lat_lon): ------- region : string Name of predefined region for given coordinates - ''' + """ if not isinstance(lat_lon, (list, tuple)): - raise TypeError('lat_lon must be of type list or tuple') + raise TypeError(f"lat_lon must be of type list or tuple. Got: {type(lat_lon)}") if not all(isinstance(coord, (float, int)) for coord in lat_lon): - raise TypeError('lat_lon values must be of type float or int') + raise TypeError( + f"lat_lon values must be of type float or int. Got: {type(lat_lon[0])}" + ) regions = { - 'Hawaii': { - 'lat': [15.0, 27.000002], - 'lon': [-164.0, -151.0] - }, - 'West_Coast': { - 'lat': [30.0906, 48.8641], - 'lon': [-130.072, -116.899] - }, - 'Atlantic': { - 'lat': [24.382, 44.8247], - 'lon': [-81.552, -65.721] - }, + "Hawaii": {"lat": [15.0, 27.000002], "lon": [-164.0, -151.0]}, + "West_Coast": {"lat": [30.0906, 48.8641], "lon": [-130.072, -116.899]}, + "Atlantic": {"lat": [24.382, 44.8247], "lon": [-81.552, -65.721]}, } def region_search(lat_lon, region, regions): return all( regions[region][dk][0] <= d <= regions[region][dk][1] - for dk, d in {'lat': lat_lon[0], 'lon': lat_lon[1]}.items() + for dk, d in {"lat": lat_lon[0], "lon": lat_lon[1]}.items() ) - region = [region for region in regions if region_search( - lat_lon, region, regions)] + region = [region for region in regions if region_search(lat_lon, region, regions)] if not region: - raise ValueError('ERROR: coordinates out of bounds') + raise ValueError("ERROR: coordinates out of bounds.") return region[0] @@ -95,18 +94,18 @@ def request_wpto_point_data( str_decode=True, hsds=True, path=None, - as_xarray=False, + to_pandas=True, ): """ Returns data from the WPTO wave hindcast hosted on AWS at the specified latitude and longitude point(s), or the closest available point(s). - Visit https://registry.opendata.aws/wpto-pds-us-wave/ for more - information about the dataset and available locations and years. + Visit https://registry.opendata.aws/wpto-pds-us-wave/ for more + information about the dataset and available locations and years. Note: To access the WPTO hindcast data, you will need to configure - h5pyd for data access on HSDS. Please see the WPTO_hindcast_example - notebook for more information. + h5pyd for data access on HSDS. Please see the WPTO_hindcast_example + notebook for setup instructions. Parameters ---------- @@ -115,22 +114,22 @@ def request_wpto_point_data( Options: '3-hour' '1-hour' parameter : string or list of strings Dataset parameter to be downloaded - 3-hour dataset options: 'directionality_coefficient', + 3-hour dataset options: 'directionality_coefficient', 'energy_period', 'maximum_energy_direction' 'mean_absolute_period', 'mean_zero-crossing_period', 'omni-directional_wave_power', 'peak_period' - 'significant_wave_height', 'spectral_width', 'water_depth' - 1-hour dataset options: 'directionality_coefficient', + 'significant_wave_height', 'spectral_width', 'water_depth' + 1-hour dataset options: 'directionality_coefficient', 'energy_period', 'maximum_energy_direction' 'mean_absolute_period', 'mean_zero-crossing_period', 'omni-directional_wave_power', 'peak_period', - 'significant_wave_height', 'spectral_width', + 'significant_wave_height', 'spectral_width', 'water_depth', 'maximim_energy_direction', 'mean_wave_direction', 'frequency_bin_edges' lat_lon : tuple or list of tuples - Latitude longitude pairs at which to extract data - years : list - Year(s) to be accessed. The years 1979-2010 available. + Latitude longitude pairs at which to extract data + years : list + Year(s) to be accessed. The years 1979-2010 available. Examples: [1996] or [2004,2006,2007] tree : str | cKDTree (optional) cKDTree or path to .pkl file containing pre-computed tree @@ -144,112 +143,143 @@ def request_wpto_point_data( Default = True hsds : bool (optional) Boolean flag to use h5pyd to handle .h5 'files' hosted on AWS - behind HSDS. Setting to False will indicate to look for files on + behind HSDS. Setting to False will indicate to look for files on local machine, not AWS. Default = True path : string (optional) Optionally override with a custom .h5 filepath. Useful when setting - `hsds=False`. - as_xarray : bool (optional) - Boolean flag to return data as an xarray Dataset. Default = False + `hsds=False`. + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. Returns --------- - data: DataFrame - Data indexed by datetime with columns named for parameter - and cooresponding metadata index - meta: DataFrame - Location metadata for the requested data location + data: pandas DataFrame or xarray Dataset + Data indexed by datetime with columns named for parameter + and cooresponding metadata index + meta: DataFrame + Location metadata for the requested data location """ - assert isinstance(parameter, (str, list) - ), 'parameter must be of type string or list' - assert isinstance(lat_lon, (list, tuple) - ), 'lat_lon must be of type list or tuple' - assert isinstance(data_type, str), 'data_type must be a string' - assert isinstance(years, list), 'years must be a list' - assert isinstance(tree, (str, type(None))), 'tree must be a string' - assert isinstance(unscale, bool), 'unscale must be bool type' - assert isinstance(str_decode, bool), 'str_decode must be bool type' - assert isinstance(hsds, bool), 'hsds must be bool type' - assert isinstance(path, (str, type(None))), 'path must be a string' - assert isinstance(as_xarray, bool), 'as_xarray must be bool type' - - if 'directional_wave_spectrum' in parameter: - sys.exit('This function does not support directional_wave_spectrum output') - - # Check for multiple region selection - if isinstance(lat_lon[0], float): - region = region_selection(lat_lon) + if not isinstance(parameter, (str, list)): + raise TypeError( + f"parameter must be of type string or list. Got: {type(parameter)}" + ) + if not isinstance(lat_lon, (list, tuple)): + raise TypeError(f"lat_lon must be of type list or tuple. Got: {type(lat_lon)}") + if not isinstance(data_type, str): + raise TypeError(f"data_type must be a string. Got: {type(data_type)}") + if not isinstance(years, list): + raise TypeError(f"years must be a list. Got: {type(years)}") + if not isinstance(tree, (str, type(None))): + raise TypeError(f"If specified, tree must be a string. Got: {type(tree)}") + if not isinstance(unscale, bool): + raise TypeError( + f"If specified, unscale must be bool type. Got: {type(unscale)}" + ) + if not isinstance(str_decode, bool): + raise TypeError( + f"If specified, str_decode must be bool type. Got: {type(str_decode)}" + ) + if not isinstance(hsds, bool): + raise TypeError(f"If specified, hsds must be bool type. Got: {type(hsds)}") + if not isinstance(path, (str, type(None))): + raise TypeError(f"If specified, path must be a string. Got: {type(path)}") + if not isinstance(to_pandas, bool): + raise TypeError( + f"If specified, to_pandas must be bool type. Got: {type(to_pandas)}" + ) + + # Attempt to load data from cache + # Construct a string representation of the function parameters + hash_params = f"{data_type}_{parameter}_{lat_lon}_{years}_{tree}_{unscale}_{str_decode}_{hsds}_{path}_{to_pandas}" + cache_dir = _get_cache_dir() + data, meta, _ = handle_caching(hash_params, cache_dir) + + if data is not None: + return data, meta else: - region_list = [] - for loc in lat_lon: - region_list.append(region_selection(loc)) - if region_list.count(region_list[0]) == len(lat_lon): - region = region_list[0] + if "directional_wave_spectrum" in parameter: + sys.exit("This function does not support directional_wave_spectrum output") + + # Check for multiple region selection + if isinstance(lat_lon[0], float): + region = region_selection(lat_lon) else: - sys.exit('Coordinates must be within the same region!') - - if path: - wave_path = path - elif data_type == '3-hour': - wave_path = f'/nrel/US_wave/{region}/{region}_wave_*.h5' - elif data_type == '1-hour': - wave_path = f'/nrel/US_wave/virtual_buoy/{region}/{region}_virtual_buoy_*.h5' - else: - print('ERROR: invalid data_type') + region_list = [] + for loc in lat_lon: + region_list.append(region_selection(loc)) + if region_list.count(region_list[0]) == len(lat_lon): + region = region_list[0] + else: + sys.exit("Coordinates must be within the same region!") + + if path: + wave_path = path + elif data_type == "3-hour": + wave_path = f"/nrel/US_wave/{region}/{region}_wave_*.h5" + elif data_type == "1-hour": + wave_path = ( + f"/nrel/US_wave/virtual_buoy/{region}/{region}_virtual_buoy_*.h5" + ) + else: + print("ERROR: invalid data_type") + + wave_kwargs = { + "tree": tree, + "unscale": unscale, + "str_decode": str_decode, + "hsds": hsds, + "years": years, + } + data_list = [] + + with MultiYearWaveX(wave_path, **wave_kwargs) as rex_waves: + if isinstance(parameter, list): + for param in parameter: + temp_data = rex_waves.get_lat_lon_df(param, lat_lon) + gid = rex_waves.lat_lon_gid(lat_lon) + cols = temp_data.columns[:] + for i, col in zip(range(len(cols)), cols): + temp = f"{param}_{gid}" + temp_data = temp_data.rename(columns={col: temp}) - wave_kwargs = { - 'tree': tree, - 'unscale': unscale, - 'str_decode': str_decode, - 'hsds': hsds, - 'years': years - } - data_list = [] - - with MultiYearWaveX(wave_path, **wave_kwargs) as rex_waves: - if isinstance(parameter, list): - for param in parameter: - temp_data = rex_waves.get_lat_lon_df(param, lat_lon) - gid = rex_waves.lat_lon_gid(lat_lon) - cols = temp_data.columns[:] - for i, col in zip(range(len(cols)), cols): - temp = f'{param}_{gid}' - temp_data = temp_data.rename(columns={col: temp}) + data_list.append(temp_data) + data = pd.concat(data_list, axis=1) - data_list.append(temp_data) - data = pd.concat(data_list, axis=1) + else: + data = rex_waves.get_lat_lon_df(parameter, lat_lon) + cols = data.columns[:] - else: - data = rex_waves.get_lat_lon_df(parameter, lat_lon) - cols = data.columns[:] + for i, col in zip(range(len(cols)), cols): + temp = f"{parameter}_{i}" + data = data.rename(columns={col: temp}) - for i, col in zip(range(len(cols)), cols): - temp = f'{parameter}_{i}' - data = data.rename(columns={col: temp}) + meta = rex_waves.meta.loc[cols, :] + meta = meta.reset_index(drop=True) + gid = rex_waves.lat_lon_gid(lat_lon) + meta["gid"] = gid - meta = rex_waves.meta.loc[cols, :] - meta = meta.reset_index(drop=True) - gid = rex_waves.lat_lon_gid(lat_lon) - meta['gid'] = gid + if not to_pandas: + data = convert_to_dataset(data) + data["time_index"] = pd.to_datetime(data.time_index) - if as_xarray: - data = data.to_xarray() - data['time_index'] = pd.to_datetime(data.time_index) + if isinstance(parameter, list): + param_coords = [f"{param}_{gid}" for param in parameter] + data.coords["parameter"] = xr.DataArray( + param_coords, dims="parameter" + ) - if isinstance(parameter, list): - param_coords = [f'{param}_{gid}' for param in parameter] - data.coords['parameter'] = xr.DataArray( - param_coords, dims='parameter') + data.coords["year"] = xr.DataArray(years, dims="year") - data.coords['year'] = xr.DataArray(years, dims='year') + meta_ds = meta.to_xarray() + data = xr.merge([data, meta_ds]) - meta_ds = meta.to_xarray() - data = xr.merge([data, meta_ds]) + # Remove the 'index' coordinate + data = data.drop_vars("index") - # Remove the 'index' coordinate - data = data.drop_vars('index') + # save_to_cache(hash_params, data, meta) + handle_caching(hash_params, cache_dir, data, meta) - return data, meta + return data, meta def request_wpto_directional_spectrum( @@ -267,13 +297,13 @@ def request_wpto_directional_spectrum( or the closest available point(s). The data is returned as an xarray Dataset with keys indexed by a graphical identifier (gid). `gid`s are integers which represent a lat, long on which data is - stored. Requesting an array of `lat_lons` will return a dataset - with multiple `gids` representing the data closest to each requested + stored. Requesting an array of `lat_lons` will return a dataset + with multiple `gids` representing the data closest to each requested `lat`, `lon`. Visit https://registry.opendata.aws/wpto-pds-us-wave/ for more information about the dataset and available - locations and years. + locations and years. Note: To access the WPTO hindcast data, you will need to configure h5pyd for data access on HSDS. @@ -302,23 +332,34 @@ def request_wpto_directional_spectrum( local machine, not AWS. Default = True path : string (optional) Optionally override with a custom .h5 filepath. Useful when setting - `hsds=False` + `hsds=False` Returns --------- - data: xarray + data: xarray Dataset Coordinates as datetime, frequency, and direction for data at specified location(s) meta: DataFrame Location metadata for the requested data location """ - assert isinstance(lat_lon, (list, tuple) - ), 'lat_lon must be of type list or tuple' - assert isinstance(year, str), 'years must be a string' - assert isinstance(tree, (str, type(None))), 'tree must be a sring' - assert isinstance(unscale, bool), 'unscale must be bool type' - assert isinstance(str_decode, bool), 'str_decode must be bool type' - assert isinstance(hsds, bool), 'hsds must be bool type' + if not isinstance(lat_lon, (list, tuple)): + raise TypeError(f"lat_lon must be of type list or tuple. Got: {type(lat_lon)}") + if not isinstance(year, str): + raise TypeError(f"year must be a string. Got: {type(year)}") + if not isinstance(tree, (str, type(None))): + raise TypeError(f"If specified, tree must be a string. Got: {type(tree)}") + if not isinstance(unscale, bool): + raise TypeError( + f"If specified, unscale must be bool type. Got: {type(unscale)}" + ) + if not isinstance(str_decode, bool): + raise TypeError( + f"If specified, str_decode must be bool type. Got: {type(str_decode)}" + ) + if not isinstance(hsds, bool): + raise TypeError(f"If specified, hsds must be bool type. Got: {type(hsds)}") + if not isinstance(path, (str, type(None))): + raise TypeError(f"If specified, path must be a string. Got: {type(path)}") # check for multiple region selection if isinstance(lat_lon[0], float): @@ -328,17 +369,25 @@ def request_wpto_directional_spectrum( if reglist.count(reglist[0]) == len(lat_lon): region = reglist[0] else: - sys.exit('Coordinates must be within the same region!') + sys.exit("Coordinates must be within the same region!") + + # Attempt to load data from cache + hash_params = f"{lat_lon}_{year}_{tree}_{unscale}_{str_decode}_{hsds}_{path}" + cache_dir = _get_cache_dir() + data, meta, _ = handle_caching(hash_params, cache_dir) + + if data is not None: + return data, meta wave_path = path or ( - f'/nrel/US_wave/virtual_buoy/{region}/{region}_virtual_buoy_{year}.h5' + f"/nrel/US_wave/virtual_buoy/{region}/{region}_virtual_buoy_{year}.h5" ) - parameter = 'directional_wave_spectrum' + parameter = "directional_wave_spectrum" wave_kwargs = { - 'tree': tree, - 'unscale': unscale, - 'str_decode': str_decode, - 'hsds': hsds + "tree": tree, + "unscale": unscale, + "str_decode": str_decode, + "hsds": hsds, } with WaveX(wave_path, **wave_kwargs) as rex_waves: @@ -348,33 +397,32 @@ def request_wpto_directional_spectrum( # Setup index and columns columns = [gid] if isinstance(gid, (int, np.integer)) else gid time_index = rex_waves.time_index - frequency = rex_waves['frequency'] - direction = rex_waves['direction'] + frequency = rex_waves["frequency"] + direction = rex_waves["direction"] index = pd.MultiIndex.from_product( [time_index, frequency, direction], - names=['time_index', 'frequency', 'direction'] + names=["time_index", "frequency", "direction"], ) # Create bins for multiple smaller API dataset requests N = 6 length = len(rex_waves) quotient, remainder = divmod(length, N) - bins = [i*quotient for i in range(N+1)] + bins = [i * quotient for i in range(N + 1)] bins[-1] += remainder - index_bins = (np.array(bins)*len(frequency)*len(direction)).tolist() + index_bins = (np.array(bins) * len(frequency) * len(direction)).tolist() # Request multiple datasets and add to dictionary datas = {} - for i in range(len(bins)-1): - idx = index[index_bins[i]:index_bins[i+1]] + for i in range(len(bins) - 1): + idx = index[index_bins[i] : index_bins[i + 1]] # Request with exponential back off wait time sleep_time = 2 num_retries = 4 for _ in range(num_retries): try: - data_array = rex_waves[parameter, - bins[i]:bins[i+1], :, :, gid] + data_array = rex_waves[parameter, bins[i] : bins[i + 1], :, :, gid] str_error = None except Exception as err: str_error = str(err) @@ -388,51 +436,57 @@ def request_wpto_directional_spectrum( ax1 = np.product(data_array.shape[:3]) ax2 = data_array.shape[-1] if len(data_array.shape) == 4 else 1 datas[i] = pd.DataFrame( - data_array.reshape(ax1, ax2), - columns=columns, - index=idx + data_array.reshape(ax1, ax2), columns=columns, index=idx ) data_raw = pd.concat(datas.values()) data = data_raw.to_xarray() - data['time_index'] = pd.to_datetime(data.time_index) + data["time_index"] = pd.to_datetime(data.time_index) # Get metadata meta = rex_waves.meta.loc[columns, :] meta = meta.reset_index(drop=True) - meta['gid'] = gid + meta["gid"] = gid # Convert gid to integer or list of integers - # gid_list = [int(g) for g in gid] if isinstance(gid, list) else [int(gid)] - # gid_list = [int(g) for g in gid] if isinstance(gid, list) else [int(gid)] - gid_list = [int(g) for g in gid] if isinstance( - gid, (list, np.ndarray)) else [int(gid)] + gid_list = ( + [int(g) for g in gid] if isinstance(gid, (list, np.ndarray)) else [int(gid)] + ) - data_var_concat = xr.concat([data[g] for g in gid_list], dim='gid') + data_var_concat = xr.concat([data[g] for g in gid_list], dim="gid") # Create a new DataArray with the correct dimensions and coordinates spectral_density = xr.DataArray( - data_var_concat.data.reshape(-1, len(frequency), - len(direction), len(gid_list)), - dims=['time_index', 'frequency', 'direction', 'gid'], + data_var_concat.data.reshape( + -1, len(frequency), len(direction), len(gid_list) + ), + dims=["time_index", "frequency", "direction", "gid"], coords={ - 'time_index': data['time_index'], - 'frequency': data['frequency'], - 'direction': data['direction'], - 'gid': gid_list - } + "time_index": data["time_index"], + "frequency": data["frequency"], + "direction": data["direction"], + "gid": gid_list, + }, ) # Create the new dataset data = xr.Dataset( - { - 'spectral_density': spectral_density - }, + {"spectral_density": spectral_density}, coords={ - 'time_index': data['time_index'], - 'frequency': data['frequency'], - 'direction': data['direction'], - 'gid': gid_list - } + "time_index": data["time_index"], + "frequency": data["frequency"], + "direction": data["direction"], + "gid": gid_list, + }, ) + + handle_caching(hash_params, cache_dir, data, meta) + return data, meta + + +def _get_cache_dir(): + """ + Returns the path to the cache directory. + """ + return os.path.join(os.path.expanduser("~"), ".cache", "mhkit", "hindcast") diff --git a/mhkit/wave/io/hindcast/wind_toolkit.py b/mhkit/wave/io/hindcast/wind_toolkit.py index 3adb083c5..f945089b3 100644 --- a/mhkit/wave/io/hindcast/wind_toolkit.py +++ b/mhkit/wave/io/hindcast/wind_toolkit.py @@ -1,63 +1,219 @@ +""" +Wind Toolkit Data Utility Functions +=================================== + +This module contains a collection of utility functions designed to facilitate +the extraction, caching, and visualization of wind data from the WIND Toolkit +hindcast dataset hosted on AWS. This dataset includes offshore wind hindcast data +with various parameters like wind speed, direction, temperature, and pressure. + +Key Functions: +-------------- +- `region_selection`: Determines which predefined wind region a given latitude + and longitude fall within. + +- `get_region_data`: Retrieves latitude and longitude data points for a specified + wind region. Uses caching to speed up repeated requests. + +- `plot_region`: Plots the geographical extent of a specified wind region and + can overlay a given latitude-longitude point. + +- `elevation_to_string`: Converts a parameter (e.g., 'windspeed') and elevation + values (e.g., [20, 40, 120]) to the formatted strings used in the WIND Toolkit. + +- `request_wtk_point_data`: Fetches specified wind data parameters for given + latitude-longitude points and years from the WIND Toolkit hindcast dataset. + Supports caching for faster repeated data retrieval. + +Dependencies: +------------- +- rex: Library to handle renewable energy datasets. +- pandas: Data manipulation and analysis. +- os, hashlib, pickle: Used for caching functionality. +- matplotlib: Used for plotting. + +Notes: +------ +- To access the WIND Toolkit hindcast data, users need to configure `h5pyd` + for data access on HSDS (see the metocean_example or WPTO_hindcast_example + notebook for more details). + +- While some functions perform basic checks (e.g., verifying that latitude + and longitude are within a predefined region), it's essential to understand + the boundaries of each region and the available parameters and elevations in the dataset. + +Author: +------- +akeeste +ssolson + +Date: +----- +2023-09-26 + +""" + +import os +import hashlib +import pickle import pandas as pd + from rex import MultiYearWindX import matplotlib.pyplot as plt +from mhkit.utils.cache import handle_caching +from mhkit.utils.type_handling import convert_to_dataset -def region_selection(lat_lon, preferred_region=''): - ''' +def region_selection(lat_lon, preferred_region=""): + """ Returns the name of the predefined region in which the given coordinates reside. - Can be used to check if the passed lat/lon pair is within the WIND Toolkit hindcast dataset. + Can be used to check if the passed lat/lon pair is within the WIND Toolkit hindcast dataset. Parameters ---------- lat_lon : tuple Latitude and longitude coordinates as floats or integers - + preferred_region : string (optional) Latitude and longitude coordinates as floats or integers - + Returns ------- region : string Name of predefined region for given coordinates - ''' - assert isinstance(lat_lon, tuple), 'lat_lon must be of type list or tuple' - assert len(lat_lon)==2, 'lat_lon must be of length 2' - assert isinstance(lat_lon[0], (float,int)), 'lat_lon values must be of type float or int' - assert isinstance(lat_lon[1], (float,int)), 'lat_lon values must be of type float or int' - assert isinstance(preferred_region, str), 'preferred_region must be of type string' - - # Note that this check is fast, but not robust because region are not + """ + if not isinstance(lat_lon, tuple): + raise TypeError(f"lat_lon must be of type tuple, got {type(lat_lon).__name__}") + + if len(lat_lon) != 2: + raise ValueError(f"lat_lon must be of length 2, got length {len(lat_lon)}") + + if not isinstance(lat_lon[0], (float, int)): + raise TypeError( + f"lat_lon values must be floats or ints, got {type(lat_lon[0]).__name__}" + ) + + if not isinstance(lat_lon[1], (float, int)): + raise TypeError( + f"lat_lon values must be floats or ints, got {type(lat_lon[1]).__name__}" + ) + + if not isinstance(preferred_region, str): + raise TypeError( + f"preferred_region must be a string, got {type(preferred_region).__name__}" + ) + + # Note that this check is fast, but not robust because region are not # rectangular on a lat-lon grid rDict = { - 'CA_NWP_overlap':{'lat':[41.213, 42.642], 'lon':[-129.090, -121.672]}, - 'Offshore_CA':{ 'lat':[31.932, 42.642], 'lon':[-129.090, -115.806]}, - 'Hawaii':{ 'lat':[15.565, 26.221], 'lon':[-164.451, -151.278]}, - 'NW_Pacific':{ 'lat':[41.213, 49.579], 'lon':[-130.831, -121.672]}, - 'Mid_Atlantic':{ 'lat':[37.273, 42.211], 'lon':[-76.427, -64.800]}, + "CA_NWP_overlap": {"lat": [41.213, 42.642], "lon": [-129.090, -121.672]}, + "Offshore_CA": {"lat": [31.932, 42.642], "lon": [-129.090, -115.806]}, + "Hawaii": {"lat": [15.565, 26.221], "lon": [-164.451, -151.278]}, + "NW_Pacific": {"lat": [41.213, 49.579], "lon": [-130.831, -121.672]}, + "Mid_Atlantic": {"lat": [37.273, 42.211], "lon": [-76.427, -64.800]}, } - region_search = lambda x: all( ( True if rDict[x][dk][0] <= d <= rDict[x][dk][1] else False - for dk, d in {'lat':lat_lon[0],'lon':lat_lon[1]}.items() ) ) + def region_search(x): + return all( + ( + True if rDict[x][dk][0] <= d <= rDict[x][dk][1] else False + for dk, d in {"lat": lat_lon[0], "lon": lat_lon[1]}.items() + ) + ) + region = [key for key in rDict if region_search(key)] - - if region[0] == 'CA_NWP_overlap': - if preferred_region == 'Offshore_CA': - region[0] = 'Offshore_CA' - elif preferred_region == 'NW_Pacific': - region[0] = 'NW_Pacific' + + if region[0] == "CA_NWP_overlap": + if preferred_region == "Offshore_CA": + region[0] = "Offshore_CA" + elif preferred_region == "NW_Pacific": + region[0] = "NW_Pacific" else: - raise TypeError(f"Preferred_region ({preferred_region}) must be 'Offshore_CA' or 'NW_Pacific' when lat_lon {lat_lon} falls in the overlap region") - - if len(region)==0: - raise TypeError(f'Coordinates {lat_lon} out of bounds. Must be within {rDict}') + raise TypeError( + f"Preferred_region ({preferred_region}) must be 'Offshore_CA' or 'NW_Pacific' when lat_lon {lat_lon} falls in the overlap region" + ) + + if len(region) == 0: + raise TypeError(f"Coordinates {lat_lon} out of bounds. Must be within {rDict}") else: return region[0] -def plot_region(region,lat_lon=None,ax=None): - ''' - Visualizes the area that a given region covers. Can help users understand +def get_region_data(region): + """ + Retrieves the latitude and longitude data points for the specified region + from the cache if available; otherwise, fetches the data and caches it for + subsequent calls. + + The function forms a unique identifier from the `region` parameter and checks + whether the corresponding data is available in the cache. If the data is found, + it's loaded and returned. If not, the data is fetched, cached, and then returned. + + Parameters + ---------- + region : str + Name of the predefined region in the WIND Toolkit for which to + retrieve latitude and longitude data points. It is case-sensitive. + Examples: 'Offshore_CA','Hawaii','Mid_Atlantic','NW_Pacific' + + Returns + ------- + lats : numpy.ndarray + A 1D array containing the latitude coordinates of data points + in the specified region. + + lons : numpy.ndarray + A 1D array containing the longitude coordinates of data points + in the specified region. + + Example + ------- + >>> lats, lons = get_region_data('Offshore_CA') + """ + if not isinstance(region, str): + raise TypeError("region must be of type string") + # Define the path to the cache directory + cache_dir = os.path.join(os.path.expanduser("~"), ".cache", "mhkit", "hindcast") + + # Create a unique identifier for this function call + hash_id = hashlib.md5(region.encode()).hexdigest() + + # Create cache directory if it doesn't exist + os.makedirs(cache_dir, exist_ok=True) + + # Create a path to the cache file for this function call + cache_file = os.path.join(cache_dir, f"{hash_id}.pkl") + + if os.path.isfile(cache_file): + # If the cache file exists, load the data from the cache + with open(cache_file, "rb") as f: + lats, lons = pickle.load(f) + return lats, lons + else: + wind_path = "/nrel/wtk/" + region.lower() + "/" + region + "_*.h5" + windKwargs = { + "tree": None, + "unscale": True, + "str_decode": True, + "hsds": True, + "years": [2019], + } + + # Get the latitude and longitude list from the region in rex + rex_wind = MultiYearWindX(wind_path, **windKwargs) + lats = rex_wind.lat_lon[:, 0] + lons = rex_wind.lat_lon[:, 1] + + # Save data to cache + with open(cache_file, "wb") as f: + pickle.dump((lats, lons), f) + + return lats, lons + + +def plot_region(region, lat_lon=None, ax=None): + """ + Visualizes the area that a given region covers. Can help users understand the extent of a region since they are not all rectangular. Parameters @@ -66,48 +222,47 @@ def plot_region(region,lat_lon=None,ax=None): Name of predefined region in the WIND Toolkit Options: 'Offshore_CA','Hawaii','Mid_Atlantic','NW_Pacific' lat_lon : couple (optional) - Latitude and longitude pair to plot on top of the chosen region. Useful + Latitude and longitude pair to plot on top of the chosen region. Useful to inform accurate latitude-longitude selection for data analysis. ax : matplotlib axes object (optional) Axes for plotting. If None, then a new figure is created. - + Returns --------- - ax : matplotlib pyplot axes - ''' - assert isinstance(region, str), 'region must be of type string' - assert region in ['Offshore_CA','Hawaii','Mid_Atlantic','NW_Pacific'], f'{region} not in list of supported regions' - - wind_path = '/nrel/wtk/'+region.lower()+'/'+region+'_*.h5' - windKwargs = {'tree':None, 'unscale':True, 'str_decode':True, 'hsds':True, - 'years':[2019]} - - # Get the latitude and longitude list from the region in rex - rex_wind = MultiYearWindX(wind_path, **windKwargs) - lats = rex_wind.lat_lon[:,0] - lons = rex_wind.lat_lon[:,1] - + ax : matplotlib pyplot axes + """ + if not isinstance(region, str): + raise TypeError("region must be of type string") + + supported_regions = ["Offshore_CA", "Hawaii", "Mid_Atlantic", "NW_Pacific"] + if region not in supported_regions: + raise ValueError( + f'{region} not in list of supported regions: {", ".join(supported_regions)}' + ) + + lats, lons = get_region_data(region) + # Plot the latitude longitude pairs if ax is None: fig, ax = plt.subplots() - ax.plot(lons,lats,'o',label=f'{region} region') + ax.plot(lons, lats, "o", label=f"{region} region") if lat_lon is not None: - ax.plot(lat_lon[1],lat_lon[0],'o',label='Specified lat-lon point') - ax.set_xlabel('Longitude (deg)') - ax.set_ylabel('Latitude (deg)') + ax.plot(lat_lon[1], lat_lon[0], "o", label="Specified lat-lon point") + ax.set_xlabel("Longitude (deg)") + ax.set_ylabel("Latitude (deg)") ax.grid() - ax.set_title(f'Extent of the WIND Toolkit {region} region') + ax.set_title(f"Extent of the WIND Toolkit {region} region") ax.legend() - + return ax def elevation_to_string(parameter, elevations): - """ - Takes in a parameter (e.g. 'windspeed') and elevations (e.g. [20, 40, 120]) + """ + Takes in a parameter (e.g. 'windspeed') and elevations (e.g. [20, 40, 120]) and returns the formatted strings that are input to WIND Toolkit (e.g. windspeed_10m). Does not check parameter against the elevation levels. This is done in request_wtk_point_data. - + Parameters ---------- parameter: string @@ -116,40 +271,57 @@ def elevation_to_string(parameter, elevations): elevations : list List of elevations (float). Values can range from approxiamtely 20 to 200 in increments of 20, depending - on the parameter in question. See Documentation for request_wtk_point_data + on the parameter in question. See Documentation for request_wtk_point_data for the full list of available parameters. Returns --------- parameter_list: list Formatted List of WIND Toolkit parameter strings - + """ - - assert isinstance(parameter,str) - assert isinstance(elevations,(float,list)) - assert parameter in ['windspeed','winddirection','temperature','pressure'] - + + if not isinstance(parameter, str): + raise TypeError(f"parameter must be a string, got {type(parameter)}") + + if not isinstance(elevations, (float, list)): + raise TypeError(f"elevations must be a float or list, got {type(elevations)}") + + if parameter not in ["windspeed", "winddirection", "temperature", "pressure"]: + raise ValueError(f"Invalid parameter: {parameter}") + parameter_list = [] for e in elevations: - parameter_list.append(parameter+'_'+str(e)+'m') - + parameter_list.append(parameter + "_" + str(e) + "m") + return parameter_list -def request_wtk_point_data(time_interval, parameter, lat_lon, years, preferred_region='', - tree=None, unscale=True, str_decode=True,hsds=True): - """ - Returns data from the WIND Toolkit offshore wind hindcast hosted on AWS at the specified latitude and longitude point(s), - or the closest available point(s). - Visit https://registry.opendata.aws/nrel-pds-wtk/ for more information about the dataset and available - locations and years. - - Calls with multiple parameters must have the same time interval. Calls - with multiple locations must use the same region (use the plot_region function). - - Note: To access the WIND Toolkit hindcast data, you will need to configure h5pyd for data access on HSDS. - Please see the WTK_hindcast_example notebook for more information. +def request_wtk_point_data( + time_interval, + parameter, + lat_lon, + years, + preferred_region="", + tree=None, + unscale=True, + str_decode=True, + hsds=True, + clear_cache=False, + to_pandas=True, +): + """ + Returns data from the WIND Toolkit offshore wind hindcast hosted on + AWS at the specified latitude and longitude point(s), or the closest + available point(s).Visit https://registry.opendata.aws/nrel-pds-wtk/ + for more information about the dataset and available locations and years. + + Calls with multiple parameters must have the same time interval. Calls + with multiple locations must use the same region (use the plot_region function). + + Note: To access the WIND Toolkit hindcast data, you will need to + configure h5pyd for data access on HSDS. Please see the + metocean_example or WPTO_hindcast_example notebook for more information. Parameters ---------- @@ -159,33 +331,33 @@ def request_wtk_point_data(time_interval, parameter, lat_lon, years, preferred_r parameter : string or list of strings Dataset parameter to be downloaded. Other parameters may be available. This list is limited to those available at both 5-minute and 1-hour - time intervals for all regions. - Options: - 'precipitationrate_0m', 'inversemoninobukhovlength_2m', - 'relativehumidity_2m', 'surface_sea_temperature', - 'pressure_0m', 'pressure_100m', 'pressure_200m', - 'temperature_10m', 'temperature_20m', 'temperature_40m', - 'temperature_60m', 'temperature_80m', 'temperature_100m', - 'temperature_120m', 'temperature_140m', 'temperature_160m', - 'temperature_180m', 'temperature_200m', - 'winddirection_10m', 'winddirection_20m', 'winddirection_40m', - 'winddirection_60m', 'winddirection_80m', 'winddirection_100m', - 'winddirection_120m', 'winddirection_140m', 'winddirection_160m', - 'winddirection_180m', 'winddirection_200m', - 'windspeed_10m', 'windspeed_20m', 'windspeed_40m', - 'windspeed_60m', 'windspeed_80m', 'windspeed_100m', - 'windspeed_120m', 'windspeed_140m', 'windspeed_160m', + time intervals for all regions. + Options: + 'precipitationrate_0m', 'inversemoninobukhovlength_2m', + 'relativehumidity_2m', 'surface_sea_temperature', + 'pressure_0m', 'pressure_100m', 'pressure_200m', + 'temperature_10m', 'temperature_20m', 'temperature_40m', + 'temperature_60m', 'temperature_80m', 'temperature_100m', + 'temperature_120m', 'temperature_140m', 'temperature_160m', + 'temperature_180m', 'temperature_200m', + 'winddirection_10m', 'winddirection_20m', 'winddirection_40m', + 'winddirection_60m', 'winddirection_80m', 'winddirection_100m', + 'winddirection_120m', 'winddirection_140m', 'winddirection_160m', + 'winddirection_180m', 'winddirection_200m', + 'windspeed_10m', 'windspeed_20m', 'windspeed_40m', + 'windspeed_60m', 'windspeed_80m', 'windspeed_100m', + 'windspeed_120m', 'windspeed_140m', 'windspeed_160m', 'windspeed_180m', 'windspeed_200m' lat_lon : tuple or list of tuples - Latitude longitude pairs at which to extract data. Use plot_region() or + Latitude longitude pairs at which to extract data. Use plot_region() or region_selection() to see the corresponding region for a given location. - years : list - Year(s) to be accessed. The years 2000-2019 available (up to 2020 + years : list + Year(s) to be accessed. The years 2000-2019 available (up to 2020 for Mid-Atlantic). Examples: [2015] or [2004,2006,2007] preferred_region : string (optional) Region that the lat_lon belongs to ('Offshore_CA' or 'NW_Pacific'). Required when a lat_lon point falls in both the Offshore California - and NW Pacific regions. Overlap region defined by + and NW Pacific regions. Overlap region defined by latitude = (41.213, 42.642) and longitude = (-129.090, -121.672). Default = '' tree : str | cKDTree (optional) @@ -200,69 +372,116 @@ def request_wtk_point_data(time_interval, parameter, lat_lon, years, preferred_r Default = True hsds : bool (optional) Boolean flag to use h5pyd to handle .h5 'files' hosted on AWS - behind HSDS. Setting to False will indicate to look for files on + behind HSDS. Setting to False will indicate to look for files on local machine, not AWS. Default = True + clear_cache : bool (optional) + Boolean flag to clear the cache related to this specific request. + Default is False. + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. Returns --------- - data: DataFrame - Data indexed by datetime with columns named for parameter and cooresponding metadata index - meta: DataFrame - Location metadata for the requested data location + data: DataFrame + Data indexed by datetime with columns named for parameter and + cooresponding metadata index + meta: DataFrame + Location metadata for the requested data location """ - - assert isinstance(parameter, (str, list)), 'parameter must be of type string or list' - assert isinstance(lat_lon, (list,tuple)), 'lat_lon must be of type list or tuple' - assert isinstance(time_interval, str), 'time_interval must be a string' - assert isinstance(years,list), 'years must be a list' - assert isinstance(preferred_region, str), 'preferred_region must be a string' - assert isinstance(tree,(str,type(None))), 'tree must be a string' - assert isinstance(unscale,bool), 'unscale must be bool type' - assert isinstance(str_decode,bool), 'str_decode must be bool type' - assert isinstance(hsds,bool), 'hsds must be bool type' - - # check for multiple region selection - if isinstance(lat_lon[0], float): - region = region_selection(lat_lon, preferred_region) + + if not isinstance(parameter, (str, list)): + raise TypeError("parameter must be of type string or list") + if not isinstance(lat_lon, (list, tuple)): + raise TypeError("lat_lon must be of type list or tuple") + if not isinstance(time_interval, str): + raise TypeError("time_interval must be a string") + if not isinstance(years, list): + raise TypeError("years must be a list") + if not isinstance(preferred_region, str): + raise TypeError("preferred_region must be a string") + if not isinstance(tree, (str, type(None))): + raise TypeError("tree must be a string or None") + if not isinstance(unscale, bool): + raise TypeError("unscale must be bool type") + if not isinstance(str_decode, bool): + raise TypeError("str_decode must be bool type") + if not isinstance(hsds, bool): + raise TypeError("hsds must be bool type") + if not isinstance(clear_cache, bool): + raise TypeError("clear_cache must be of type bool") + + # Define the path to the cache directory + cache_dir = os.path.join(os.path.expanduser("~"), ".cache", "mhkit", "hindcast") + + # Construct a string representation of the function parameters + hash_params = f"{time_interval}_{parameter}_{lat_lon}_{years}_{preferred_region}_{tree}_{unscale}_{str_decode}_{hsds}" + + # Use handle_caching to manage caching. + data, meta, _ = handle_caching(hash_params, cache_dir, clear_cache_file=clear_cache) + + if data is not None and meta is not None: + if not to_pandas: + data = convert_to_dataset(data) + data.attrs = meta + + return data, meta # Return cached data and meta if available else: - reglist = [] - for loc in lat_lon: - reglist.append(region_selection(loc)) - if reglist.count(reglist[0]) == len(lat_lon): - region = reglist[0] + # check for multiple region selection + if isinstance(lat_lon[0], float): + region = region_selection(lat_lon, preferred_region) else: - raise TypeError('Coordinates must be within the same region!') - - if time_interval == '1-hour': - wind_path = f'/nrel/wtk/'+region.lower()+'/'+region+'_*.h5' - elif time_interval == '5-minute': - wind_path = f'/nrel/wtk/'+region.lower()+'-5min/'+region+'_*.h5' - else: - raise TypeError(f"Invalid time_interval '{time_interval}', must be '1-hour' or '5-minute'") - windKwargs = {'tree':tree,'unscale':unscale,'str_decode':str_decode, 'hsds':hsds, - 'years':years} - data_list = [] - - with MultiYearWindX(wind_path, **windKwargs) as rex_wind: - if isinstance(parameter, list): - for p in parameter: - temp_data = rex_wind.get_lat_lon_df(p,lat_lon) - col = temp_data.columns[:] - for i,c in zip(range(len(col)),col): - temp = f'{p}_{i}' - temp_data = temp_data.rename(columns={c:temp}) - - data_list.append(temp_data) - data= pd.concat(data_list, axis=1) - + reglist = [] + for loc in lat_lon: + reglist.append(region_selection(loc)) + if reglist.count(reglist[0]) == len(lat_lon): + region = reglist[0] + else: + raise TypeError("Coordinates must be within the same region!") + + if time_interval == "1-hour": + wind_path = f"/nrel/wtk/{region.lower()}/{region}_*.h5" + elif time_interval == "5-minute": + wind_path = f"/nrel/wtk/{region.lower()}-5min/{region}_*.h5" else: - data = rex_wind.get_lat_lon_df(parameter,lat_lon) - col = data.columns[:] + raise TypeError( + f"Invalid time_interval '{time_interval}', must be '1-hour' or '5-minute'" + ) + windKwargs = { + "tree": tree, + "unscale": unscale, + "str_decode": str_decode, + "hsds": hsds, + "years": years, + } + data_list = [] + with MultiYearWindX(wind_path, **windKwargs) as rex_wind: + if isinstance(parameter, list): + for p in parameter: + temp_data = rex_wind.get_lat_lon_df(p, lat_lon) + col = temp_data.columns[:] + for i, c in zip(range(len(col)), col): + temp = f"{p}_{i}" + temp_data = temp_data.rename(columns={c: temp}) + + data_list.append(temp_data) + data = pd.concat(data_list, axis=1) + + else: + data = rex_wind.get_lat_lon_df(parameter, lat_lon) + col = data.columns[:] + + for i, c in zip(range(len(col)), col): + temp = f"{parameter}_{i}" + data = data.rename(columns={c: temp}) + + meta = rex_wind.meta.loc[col, :] + meta = meta.reset_index(drop=True) + + # Save the retrieved data and metadata to cache. + handle_caching(hash_params, cache_dir, data=data, metadata=meta) - for i,c in zip(range(len(col)),col): - temp = f'{parameter}_{i}' - data = data.rename(columns={c:temp}) + if not to_pandas: + data = convert_to_dataset(data) + data.attrs = meta - meta = rex_wind.meta.loc[col,:] - meta = meta.reset_index(drop=True) - return data, meta + return data, meta diff --git a/mhkit/wave/io/ndbc.py b/mhkit/wave/io/ndbc.py index 019481bc8..268c3390e 100644 --- a/mhkit/wave/io/ndbc.py +++ b/mhkit/wave/io/ndbc.py @@ -1,3 +1,4 @@ +import os from collections import OrderedDict as _OrderedDict from collections import defaultdict as _defaultdict from io import BytesIO @@ -11,9 +12,15 @@ import xarray as xr from bs4 import BeautifulSoup +from mhkit.utils.cache import handle_caching +from mhkit.utils import ( + convert_to_dataset, + convert_to_dataarray, + convert_nested_dict_and_pandas, +) -def read_file(file_name, missing_values=['MM', 9999, 999, 99]): +def read_file(file_name, missing_values=["MM", 9999, 999, 99], to_pandas=True): """ Reads a NDBC wave buoy data file (from https://www.ndbc.noaa.gov). @@ -36,23 +43,31 @@ def read_file(file_name, missing_values=['MM', 9999, 999, 99]): missing_value: list of values List of values that denote missing data + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. + Returns --------- - data: pandas DataFrame + data: pandas DataFrame or xarray Dataset Data indexed by datetime with columns named according to header row metadata: dict or None Dictionary with {column name: units} key value pairs when the NDBC file contains unit information, otherwise None is returned """ - assert isinstance(file_name, str), 'file_name must be of type str' - assert isinstance( - missing_values, list), 'missing_values must be of type list' + if not isinstance(file_name, str): + raise TypeError(f"file_name must be of type str. Got: {type(file_name)}") + if not isinstance(missing_values, list): + raise TypeError( + f"If specified, missing_values must be of type list. Got: {type(missing_values)}" + ) + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") # Open file and get header rows f = open(file_name, "r") header = f.readline().rstrip().split() # read potential headers - units = f.readline().rstrip().split() # read potential units + units = f.readline().rstrip().split() # read potential units f.close() # If first line is commented, remove comment sign # @@ -70,31 +85,38 @@ def read_file(file_name, missing_values=['MM', 9999, 999, 99]): # Check if the time stamp contains minutes, and create list of column names # to parse for date - if header[4] == 'mm': + if header[4] == "mm": parse_vals = header[0:5] - date_format = '%Y %m %d %H %M' + date_format = "%Y %m %d %H %M" units = units[5:] # remove date columns from units else: parse_vals = header[0:4] - date_format = '%Y %m %d %H' + date_format = "%Y %m %d %H" units = units[4:] # remove date columns from units # If first line is commented, manually feed in column names if header_commented: - data = pd.read_csv(file_name, sep='\s+', header=None, names=header, - comment="#", parse_dates=[parse_vals]) + data = pd.read_csv( + file_name, + sep="\s+", + header=None, + names=header, + comment="#", + parse_dates=[parse_vals], + ) # If first line is not commented, then the first row can be used as header else: - data = pd.read_csv(file_name, sep='\s+', header=0, - comment="#", parse_dates=[parse_vals]) + data = pd.read_csv( + file_name, sep="\s+", header=0, comment="#", parse_dates=[parse_vals] + ) # Convert index to datetime date_column = "_".join(parse_vals) - data['Time'] = pd.to_datetime(data[date_column], format=date_format) - data.index = data['Time'].values + data["Time"] = pd.to_datetime(data[date_column], format=date_format) + data.index = data["Time"].values # Remove date columns del data[date_column] - del data['Time'] + del data["Time"] # If there was a row of units, convert to dictionary if units_exist: @@ -104,7 +126,7 @@ def read_file(file_name, missing_values=['MM', 9999, 999, 99]): # Convert columns to numeric data if possible, otherwise leave as string for column in data: - data[column] = pd.to_numeric(data[column], errors='ignore') + data[column] = pd.to_numeric(data[column], errors="ignore") # Convert column names to float if possible (handles frequency headers) # if there is non-numeric name, just leave all as strings. @@ -116,12 +138,17 @@ def read_file(file_name, missing_values=['MM', 9999, 999, 99]): # Replace indicated missing values with nan data.replace(missing_values, np.nan, inplace=True) + if not to_pandas: + data = convert_to_dataset(data) + return data, metadata -def available_data(parameter, buoy_number=None, proxy=None): - ''' - For a given parameter this will return a DataFrame of years, +def available_data( + parameter, buoy_number=None, proxy=None, clear_cache=False, to_pandas=True +): + """ + For a given parameter this will return a DataFrame or Dataset of years, station IDs and file names that contain that parameter data. Parameters @@ -142,58 +169,95 @@ def available_data(parameter, buoy_number=None, proxy=None): Proxy dict passed to python requests, (e.g. proxy_dict= {"http": 'http:wwwproxy.yourProxy:80/'}) + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. + Returns ------- - available_data: DataFrame + available_data: pandas DataFrame or xarray Dataset DataFrame with station ID, years, and NDBC file names. - ''' - assert isinstance(parameter, str), 'parameter must be a string' - assert isinstance(buoy_number, (str, type(None), list)), ('If ' - 'specified the buoy number must be a string or list of strings') - assert isinstance(proxy, (dict, type(None)) - ), 'If specified proxy must be a dict' - supported = _supported_params(parameter) + """ + if not isinstance(parameter, str): + raise TypeError(f"parameter must be a string. Got: {type(parameter)}") + if not isinstance(buoy_number, (str, type(None), list)): + raise TypeError( + f"If specified, buoy_number must be a string or list of strings. Got: {type(buoy_number)}" + ) + if not isinstance(proxy, (dict, type(None))): + raise TypeError(f"If specified, proxy must be a dict. Got: {type(proxy)}") + _supported_params(parameter) if isinstance(buoy_number, str): - assert len(buoy_number) == 5, ('Buoy must be 5-character' - f'alpha-numeric station identifier got: {buoy_number}') + if not len(buoy_number) == 5: + raise ValueError( + "buoy_number must be 5-character" + f"alpha-numeric station identifier. Got: {buoy_number}" + ) elif isinstance(buoy_number, list): for buoy in buoy_number: - assert len(buoy) == 5, ('Each buoy must be a 5-character' - f'alpha-numeric station identifier got: {buoy}') - ndbc_data = f'https://www.ndbc.noaa.gov/data/historical/{parameter}/' - if proxy == None: - response = requests.get(ndbc_data) + if not len(buoy) == 5: + raise ValueError( + "Each value in the buoy_number list must be a 5-character" + f"alpha-numeric station identifier. Got: {buoy_number}" + ) + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + + # Generate a unique hash_params based on the function parameters + hash_params = f"parameter:{parameter}_buoy_number:{buoy_number}_proxy:{proxy}" + cache_dir = os.path.join(os.path.expanduser("~"), ".cache", "mhkit", "ndbc") + + # Check the cache before making the request + data, _, _ = handle_caching(hash_params, cache_dir, clear_cache_file=clear_cache) + + # no coverage bc in coverage runs we have already cached the data/ run this code + if data is None: # pragma: no cover + ndbc_data = f"https://www.ndbc.noaa.gov/data/historical/{parameter}/" + + try: + response = requests.get(ndbc_data, proxies=proxy, timeout=30) + response.raise_for_status() + + except requests.exceptions.Timeout: + print("The request timed out") + response = None + + except requests.exceptions.RequestException as error: + print(f"An error occurred: {error}") + response = None + + if response and response.status_code != 200: + msg = f"request.get({ndbc_data}) failed by returning code of {response.status_code}" + raise Exception(msg) + + filenames = pd.read_html(response.text)[0].Name.dropna() + buoys = _parse_filenames(parameter, filenames) + + available_data = buoys.copy(deep=True) + + # Set year to numeric (makes year key non-unique) + available_data["year"] = available_data.year.str.strip("b") + available_data["year"] = pd.to_numeric(available_data.year.str.strip("_old")) + + if isinstance(buoy_number, str): + available_data = available_data[available_data.id == buoy_number] + elif isinstance(buoy_number, list): + available_data = available_data[available_data.id == buoy_number[0]] + for i in range(1, len(buoy_number)): + data = available_data[available_data.id == buoy_number[i]] + available_data = available_data.append(data) + # Cache the result + handle_caching(hash_params, cache_dir, data=available_data) else: - response = requests.get(ndbc_data, proxies=proxy) + available_data = data - status = response.status_code - if status != 200: - msg = f"request.get{ndbc_data} failed by returning code of {status}" - raise Exception(msg) - - filenames = pd.read_html(response.text)[0].Name.dropna() - buoys = _parse_filenames(parameter, filenames) - - available_data = buoys.copy(deep=True) - - # Set year to numeric (makes year key non-unique) - available_data['year'] = available_data.year.str.strip('b') - available_data['year'] = pd.to_numeric( - available_data.year.str.strip('_old')) - - if isinstance(buoy_number, str): - available_data = available_data[available_data.id == buoy_number] - elif isinstance(buoy_number, list): - available_data = available_data[available_data.id == buoy_number[0]] - for i in range(1, len(buoy_number)): - data = available_data[available_data.id == buoy_number[i]] - available_data = available_data.append(data) + if not to_pandas: + available_data = convert_to_dataset(available_data) return available_data def _parse_filenames(parameter, filenames): - ''' + """ Takes a list of available filenames as a series from NDBC then parses out the station ID and year from the file name. @@ -215,37 +279,38 @@ def _parse_filenames(parameter, filenames): ------- buoys: DataFrame DataFrame with keys=['id','year','file_name'] - ''' - assert isinstance( - filenames, pd.Series), 'filenames must be of type pd.Series' - assert isinstance(parameter, str), 'parameter must be a string' + """ + if not isinstance(filenames, pd.Series): + raise TypeError(f"filenames must be of type pd.Series. Got: {type(filenames)}") + if not isinstance(parameter, str): + raise TypeError(f"parameter must be a string. Got: {type(parameter)}") supported = _supported_params(parameter) file_seps = { - 'swden': 'w', - 'swdir': 'd', - 'swdir2': 'i', - 'swr1': 'j', - 'swr2': 'k', - 'stdmet': 'h', - 'cwind': 'c' + "swden": "w", + "swdir": "d", + "swdir2": "i", + "swr1": "j", + "swr2": "k", + "stdmet": "h", + "cwind": "c", } file_sep = file_seps[parameter] - filenames = filenames[filenames.str.contains('.txt.gz')] - buoy_id_year_str = filenames.str.split('.', expand=True)[0] + filenames = filenames[filenames.str.contains(".txt.gz")] + buoy_id_year_str = filenames.str.split(".", expand=True)[0] buoy_id_year = buoy_id_year_str.str.split(file_sep, n=1, expand=True) - buoys = buoy_id_year.rename(columns={0: 'id', 1: 'year'}) + buoys = buoy_id_year.rename(columns={0: "id", 1: "year"}) expected_station_id_length = 5 buoys = buoys[buoys.id.str.len() == expected_station_id_length] - buoys['filename'] = filenames + buoys["filename"] = filenames return buoys -def request_data(parameter, filenames, proxy=None): - ''' - Requests data by filenames and returns a dictionary of DataFrames +def request_data(parameter, filenames, proxy=None, clear_cache=False, to_pandas=True): + """ + Requests data by filenames and returns a dictionary of DataFrames or dictionary of Datasets for each filename passed. If filenames for a single buoy are passed then the yearly DataFrames in the returned dictionary (ndbc_data) are indexed by year (e.g. ndbc_data['2014']). If multiple buoy ids are @@ -263,74 +328,107 @@ def request_data(parameter, filenames, proxy=None): 'stdmet': 'Standard Meteorological Current Year Historical Data' 'cwind' : 'Continuous Winds Current Year Historical Data' - filenames: pandas Series or DataFrame + filenames: pandas Series, pandas DataFrame, xarray DataArray, or xarray Dataset Data filenames on https://www.ndbc.noaa.gov/data/historical/{parameter}/ proxy: dict Proxy dict passed to python requests, (e.g. proxy_dict= {"http": 'http:wwwproxy.yourProxy:80/'}) + to_pandas: bool (optional) + Flag to output a dictionary of pandas objects instead of a dictionary + of xarray objects. Default = True. + Returns ------- ndbc_data: dict - Dictionary of DataFrames indexed by buoy and year. - ''' - assert isinstance(filenames, (pd.Series, pd.DataFrame)), ( - 'filenames must be of type pd.Series') - assert isinstance(parameter, str), 'parameter must be a string' - assert isinstance(proxy, (dict, type(None))), ('If specified proxy' - 'must be a dict') - - supported = _supported_params(parameter) - if isinstance(filenames, pd.DataFrame): - filenames = pd.Series(filenames.squeeze()) - assert len(filenames) > 0, "At least 1 filename must be passed" + Dictionary of DataFrames/Datasets indexed by buoy and year. + """ + filenames = convert_to_dataarray(filenames) + filenames = pd.Series(filenames) + if not isinstance(parameter, str): + raise TypeError(f"parameter must be a string. Got: {type(parameter)}") + if not isinstance(proxy, (dict, type(None))): + raise TypeError(f"If specified, proxy must be a dict. Got: {type(proxy)}") + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + + _supported_params(parameter) + if not len(filenames) > 0: + raise ValueError("At least 1 filename must be passed") + + # Define the path to the cache directory + cache_dir = os.path.join(os.path.expanduser("~"), ".cache", "mhkit", "ndbc") buoy_data = _parse_filenames(parameter, filenames) - parameter_url = f'https://www.ndbc.noaa.gov/data/historical/{parameter}' ndbc_data = _defaultdict(dict) - for buoy_id in buoy_data['id'].unique(): - buoy = buoy_data[buoy_data['id'] == buoy_id] + for buoy_id in buoy_data["id"].unique(): + buoy = buoy_data[buoy_data["id"] == buoy_id] years = buoy.year filenames = buoy.filename for year, filename in zip(years, filenames): - file_url = f'{parameter_url}/{filename}' + # Create a unique filename based on the function parameters for caching + hash_params = f"{buoy_id}_{parameter}_{year}_{filename}" + cached_data, _, _ = handle_caching( + hash_params, cache_dir, clear_cache_file=clear_cache + ) + + if cached_data is not None: + ndbc_data[buoy_id][year] = cached_data + continue + file_url = ( + f"https://www.ndbc.noaa.gov/data/historical/{parameter}/{filename}" + ) if proxy == None: response = requests.get(file_url) else: response = requests.get(file_url, proxies=proxy) try: - data = zlib.decompress(response.content, 16+zlib.MAX_WBITS) - df = pd.read_csv(BytesIO(data), sep='\s+', low_memory=False) + data = zlib.decompress(response.content, 16 + zlib.MAX_WBITS) + df = pd.read_csv(BytesIO(data), sep="\s+", low_memory=False) # catch when units are included below the header - firstYear = df['MM'][0] - if isinstance(firstYear, str) and firstYear == 'mo': - df = pd.read_csv(BytesIO(data), sep='\s+', - low_memory=False, skiprows=[1]) + firstYear = df["MM"][0] + if isinstance(firstYear, str) and firstYear == "mo": + df = pd.read_csv( + BytesIO(data), sep="\s+", low_memory=False, skiprows=[1] + ) except zlib.error: - msg = (f'Issue decompressing the NDBC file {filename}' - f'(id: {buoy_id}, year: {year}). Please request ' - 'the data again.') + msg = ( + f"Issue decompressing the NDBC file {filename}" + f"(id: {buoy_id}, year: {year}). Please request " + "the data again." + ) print(msg) except pandas.errors.EmptyDataError: - msg = (f'The NDBC buoy {buoy_id} for year {year} with ' - f'filename {filename} is empty or missing ' - 'data. Please omit this file from your data ' - 'request in the future.') + msg = ( + f"The NDBC buoy {buoy_id} for year {year} with " + f"filename {filename} is empty or missing " + "data. Please omit this file from your data " + "request in the future." + ) print(msg) else: ndbc_data[buoy_id][year] = df - if len(ndbc_data) == 1: + # Cache the data after processing it if it exists + if year in ndbc_data[buoy_id]: + handle_caching( + hash_params, cache_dir, data=ndbc_data[buoy_id][year] + ) + + if buoy_id and len(ndbc_data) == 1: ndbc_data = ndbc_data[buoy_id] + if not to_pandas: + ndbc_data = convert_nested_dict_and_pandas(ndbc_data) + return ndbc_data -def to_datetime_index(parameter, ndbc_data): - ''' +def to_datetime_index(parameter, ndbc_data, to_pandas=True): + """ Converts the NDBC date and time information reported in separate columns into a DateTime index and removed the NDBC date & time columns. @@ -346,39 +444,55 @@ def to_datetime_index(parameter, ndbc_data): 'stdmet': 'Standard Meteorological Current Year Historical Data' 'cwind': 'Continuous Winds Current Year Historical Data' - ndbc_data: DataFrame + ndbc_data: pandas DataFrame or xarray Dataset NDBC data in dataframe with date and time columns to be converted + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. + Returns ------- - df_datetime: DataFrame + df_datetime: pandas DataFrame or xarray Dataset Dataframe with NDBC date columns removed, and datetime index - ''' + """ - assert isinstance(parameter, str), 'parameter must be a string' - assert isinstance( - ndbc_data, pd.DataFrame), 'ndbc_data must be of type pd.DataFrame' + if not isinstance(parameter, str): + raise TypeError(f"parameter must be a string. Got: {type(parameter)}") + if isinstance(ndbc_data, xr.Dataset): + ndbc_data = ndbc_data.to_pandas() + if not isinstance(ndbc_data, pd.DataFrame): + raise TypeError( + f"ndbc_data must be of type pd.DataFrame. Got: {type(ndbc_data)}" + ) + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") df_datetime = ndbc_data.copy(deep=True) - df_datetime['date'], ndbc_date_cols = dates_to_datetime( - df_datetime, return_date_cols=True) + df_datetime["date"], ndbc_date_cols = dates_to_datetime( + df_datetime, return_date_cols=True + ) df_datetime = df_datetime.drop(ndbc_date_cols, axis=1) - df_datetime = df_datetime.set_index('date') - if parameter in ['swden', 'swdir', 'swdir2', 'swr1', 'swr2']: + df_datetime = df_datetime.set_index("date") + if parameter in ["swden", "swdir", "swdir2", "swr1", "swr2"]: df_datetime.columns = df_datetime.columns.astype(float) + if not to_pandas: + df_datetime = convert_to_dataset(df_datetime) + return df_datetime -def dates_to_datetime(data, return_date_cols=False, return_as_dataframe=False): - ''' - Takes a DataFrame and converts the NDBC date columns - (e.g. "#YY MM DD hh mm") to datetime. Returns a DataFrame with the +def dates_to_datetime( + data, return_date_cols=False, return_as_dataframe=False, to_pandas=True +): + """ + Takes a DataFrame/Dataset and converts the NDBC date columns + (e.g. "#YY MM DD hh mm") to datetime. Returns a DataFrame/Dataset with the removed NDBC date columns a new ['date'] columns with DateTime Format. Parameters ---------- - data: DataFrame + data: pandas DataFrame or xarray Dataset Dataframe with headers (e.g. ['YY', 'MM', 'DD', 'hh', {'mm'}]) return_date_col: Bool (optional) @@ -387,52 +501,62 @@ def dates_to_datetime(data, return_date_cols=False, return_as_dataframe=False): return_as_dataFrame: bool Results returned as a DataFrame (useful for MHKiT-MATLAB) + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. + Returns ------- - date: Series + date: pandas Series or xarray DataArray Series with NDBC dates dropped and new ['date'] column in DateTime format ndbc_date_cols: list (optional) - List of the DataFrame columns headers for dates as provided by + List of the DataFrame/Dataset columns headers for dates as provided by NDBC - ''' - assert isinstance(data, pd.DataFrame), 'data must be of type pd.DataFrame' - assert isinstance(return_date_cols, - bool), 'return_date_cols must be of type bool' + """ + if isinstance(data, xr.Dataset): + data = pd.DataFrame(data) + if not isinstance(data, pd.DataFrame): + raise TypeError(f"data must be of type pd.DataFrame. Got: {type(data)}") + if not isinstance(return_date_cols, bool): + raise TypeError( + f"return_date_cols must be of type bool. Got: {type(return_date_cols)}" + ) + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") df = data.copy(deep=True) cols = df.columns.values.tolist() try: - minutes_loc = cols.index('mm') + minutes_loc = cols.index("mm") minutes = True except: - df['mm'] = np.zeros(len(df)).astype(int).astype(str) + df["mm"] = np.zeros(len(df)).astype(int).astype(str) minutes = False row_0_is_units = False - year_string = [col for col in cols if col.startswith('Y')] + year_string = [col for col in cols if col.startswith("Y")] if not year_string: - year_string = [col for col in cols if col.startswith('#')] + year_string = [col for col in cols if col.startswith("#")] if not year_string: - print(f'ERROR: Could Not Find Year Column in {cols}') + print(f"ERROR: Could Not Find Year Column in {cols}") year_string = year_string[0] - year_fmt = '%Y' - if str(df[year_string][0]).startswith('#'): + year_fmt = "%Y" + if str(df[year_string][0]).startswith("#"): row_0_is_units = True df = df.drop(df.index[0]) - elif year_string[0] == 'YYYY': + elif year_string[0] == "YYYY": year_string = year_string[0] - year_fmt = '%Y' - elif year_string[0] == 'YY': + year_fmt = "%Y" + elif year_string[0] == "YY": year_string = year_string[0] - year_fmt = '%y' + year_fmt = "%y" - parse_columns = [year_string, 'MM', 'DD', 'hh', 'mm'] + parse_columns = [year_string, "MM", "DD", "hh", "mm"] df = _date_string_to_datetime(df, parse_columns, year_fmt) - date = df['date'] + date = df["date"] if row_0_is_units: date = pd.concat([pd.Series([np.nan]), date]) @@ -440,18 +564,23 @@ def dates_to_datetime(data, return_date_cols=False, return_as_dataframe=False): if return_as_dataframe: date = pd.DataFrame(date) + if not to_pandas: + date = convert_to_dataset(date) + elif not to_pandas: + date = convert_to_dataarray(date) + if return_date_cols: if minutes: - ndbc_date_cols = [year_string, 'MM', 'DD', 'hh', 'mm'] + ndbc_date_cols = [year_string, "MM", "DD", "hh", "mm"] else: - ndbc_date_cols = [year_string, 'MM', 'DD', 'hh'] + ndbc_date_cols = [year_string, "MM", "DD", "hh"] return date, ndbc_date_cols return date def _date_string_to_datetime(df, columns, year_fmt): - ''' + """ Takes a NDBC df and creates a datetime from multiple columns headers by combining each column into a single string. Then the datetime method is applied given the expected format. @@ -473,28 +602,31 @@ def _date_string_to_datetime(df, columns, year_fmt): ------- df: DataFrame The passed df with a new column ['date'] with the datetime format - ''' - assert isinstance(df, pd.DataFrame), 'df must be of type pd.DataFrame' - assert isinstance(columns, list), 'Columns must be a list' - assert isinstance(year_fmt, str), 'year_fmt must be a string' + """ + if not isinstance(df, pd.DataFrame): + raise TypeError(f"df must be of type pd.DataFrame. Got: {type(df)}") + if not isinstance(columns, list): + raise TypeError(f"columns must be a list. Got: {type(columns)}") + if not isinstance(year_fmt, str): + raise TypeError(f"year_fmt must be a string. Got: {type(year_fmt)}") # Convert to str and zero pad for key in columns: df[key] = df[key].astype(str).str.zfill(2) - df['date_string'] = df[columns[0]] + df["date_string"] = df[columns[0]] for column in columns[1:]: - df['date_string'] = df[['date_string', column]].apply( - lambda x: ''.join(x), axis=1) - df['date'] = pd.to_datetime( - df['date_string'], format=f'{year_fmt}%m%d%H%M') - del df['date_string'] + df["date_string"] = df[["date_string", column]].apply( + lambda x: "".join(x), axis=1 + ) + df["date"] = pd.to_datetime(df["date_string"], format=f"{year_fmt}%m%d%H%M") + del df["date_string"] return df -def parameter_units(parameter=''): - ''' +def parameter_units(parameter=""): + """ Returns an ordered dictionary of NDBC parameters with unit values. If no parameter is passed then an ordered dictionary of all NDBC parameterz specified unites is returned. If a parameter is specified @@ -530,163 +662,175 @@ def parameter_units(parameter=''): ------- units: dict Dictionary of parameter units - ''' - - assert isinstance(parameter, str), 'parameter must be a string' - - if parameter == 'adcp': - units = {'DEP01': 'm', - 'DIR01': 'deg', - 'SPD01': 'cm/s', - } - elif parameter == 'cwind': - units = {'WDIR': 'degT', - 'WSPD': 'm/s', - 'GDR': 'degT', - 'GST': 'm/s', - 'GTIME': 'hhmm' - } - elif parameter == 'dart': - units = {'T': '-', - 'HEIGHT': 'm', - } - elif parameter == 'derived2': - units = {'CHILL': 'degC', - 'HEAT': 'degC', - 'ICE': 'cm/hr', - 'WSPD10': 'm/s', - 'WSPD20': 'm/s' - } - elif parameter == 'ocean': - units = {'DEPTH': 'm', - 'OTMP': 'degC', - 'COND': 'mS/cm', - 'SAL': 'psu', - 'O2%': '%', - 'O2PPM': 'ppm', - 'CLCON': 'ug/l', - 'TURB': 'FTU', - 'PH': '-', - 'EH': 'mv', - } - elif parameter == 'rain': - units = {'ACCUM': 'mm', - } - elif parameter == 'rain10': - units = {'RATE': 'mm/h', - } - elif parameter == 'rain24': - units = {'RATE': 'mm/h', - 'PCT': '%', - 'SDEV': '-', - } - elif parameter == 'realtime2': - units = {'WVHT': 'm', - 'SwH': 'm', - 'SwP': 'sec', - 'WWH': 'm', - 'WWP': 'sec', - 'SwD': '-', - 'WWD': 'degT', - 'STEEPNESS': '-', - 'APD': 'sec', - 'MWD': 'degT', - } - elif parameter == 'srad': - units = {'SRAD1': 'w/m2', - 'SRAD2': 'w/m2', - 'SRAD3': 'w/m2', - } - elif parameter == 'stdmet': - units = {'WDIR': 'degT', - 'WSPD': 'm/s', - 'GST': 'm/s', - 'WVHT': 'm', - 'DPD': 'sec', - 'APD': 'sec', - 'MWD': 'degT', - 'PRES': 'hPa', - 'ATMP': 'degC', - 'WTMP': 'degC', - 'DEWP': 'degC', - 'VIS': 'nmi', - 'PTDY': 'hPa', - 'TIDE': 'ft'} - elif parameter == 'supl': - units = {'PRES': 'hPa', - 'PTIME': 'hhmm', - 'WSPD': 'm/s', - 'WDIR': 'degT', - 'WTIME': 'hhmm' - } - elif parameter == 'swden': - units = {'swden': '(m*m)/Hz'} - elif parameter == 'swdir': - units = {'swdir': 'deg'} - elif parameter == 'swdir2': - units = {'swdir2': 'deg'} - elif parameter == 'swr1': - units = {'swr1': ''} - elif parameter == 'swr2': - units = {'swr2': ''} + """ + + if not isinstance(parameter, str): + raise TypeError(f"parameter must be a string. Got: {type(parameter)}") + + if parameter == "adcp": + units = { + "DEP01": "m", + "DIR01": "deg", + "SPD01": "cm/s", + } + elif parameter == "cwind": + units = { + "WDIR": "degT", + "WSPD": "m/s", + "GDR": "degT", + "GST": "m/s", + "GTIME": "hhmm", + } + elif parameter == "dart": + units = { + "T": "-", + "HEIGHT": "m", + } + elif parameter == "derived2": + units = { + "CHILL": "degC", + "HEAT": "degC", + "ICE": "cm/hr", + "WSPD10": "m/s", + "WSPD20": "m/s", + } + elif parameter == "ocean": + units = { + "DEPTH": "m", + "OTMP": "degC", + "COND": "mS/cm", + "SAL": "psu", + "O2%": "%", + "O2PPM": "ppm", + "CLCON": "ug/l", + "TURB": "FTU", + "PH": "-", + "EH": "mv", + } + elif parameter == "rain": + units = { + "ACCUM": "mm", + } + elif parameter == "rain10": + units = { + "RATE": "mm/h", + } + elif parameter == "rain24": + units = { + "RATE": "mm/h", + "PCT": "%", + "SDEV": "-", + } + elif parameter == "realtime2": + units = { + "WVHT": "m", + "SwH": "m", + "SwP": "sec", + "WWH": "m", + "WWP": "sec", + "SwD": "-", + "WWD": "degT", + "STEEPNESS": "-", + "APD": "sec", + "MWD": "degT", + } + elif parameter == "srad": + units = { + "SRAD1": "w/m2", + "SRAD2": "w/m2", + "SRAD3": "w/m2", + } + elif parameter == "stdmet": + units = { + "WDIR": "degT", + "WSPD": "m/s", + "GST": "m/s", + "WVHT": "m", + "DPD": "sec", + "APD": "sec", + "MWD": "degT", + "PRES": "hPa", + "ATMP": "degC", + "WTMP": "degC", + "DEWP": "degC", + "VIS": "nmi", + "PTDY": "hPa", + "TIDE": "ft", + } + elif parameter == "supl": + units = { + "PRES": "hPa", + "PTIME": "hhmm", + "WSPD": "m/s", + "WDIR": "degT", + "WTIME": "hhmm", + } + elif parameter == "swden": + units = {"swden": "(m*m)/Hz"} + elif parameter == "swdir": + units = {"swdir": "deg"} + elif parameter == "swdir2": + units = {"swdir2": "deg"} + elif parameter == "swr1": + units = {"swr1": ""} + elif parameter == "swr2": + units = {"swr2": ""} else: - units = {'swden': '(m*m)/Hz', - 'PRES': 'hPa', - 'PTIME': 'hhmm', - 'WDIR': 'degT', - 'WTIME': 'hhmm', - 'GST': 'm/s', - 'WVHT': 'm', - 'DPD': 'sec', - 'APD': 'sec', - 'MWD': 'degT', - 'ATMP': 'degC', - 'WTMP': 'degC', - 'DEWP': 'degC', - 'VIS': 'nmi', - 'PTDY': 'hPa', - 'TIDE': 'ft', - 'SRAD1': 'w/m2', - 'SRAD2': 'w/m2', - 'SRAD3': 'w/m2', - 'WVHT': 'm', - 'SwH': 'm', - 'SwP': 'sec', - 'WWH': 'm', - 'WWP': 'sec', - 'SwD': '-', - 'WWD': 'degT', - 'STEEPNESS': '-', - 'APD': 'sec', - 'RATE': 'mm/h', - 'PCT': '%', - 'SDEV': '-', - 'ACCUM': 'mm', - 'DEPTH': 'm', - 'OTMP': 'degC', - 'COND': 'mS/cm', - 'SAL': 'psu', - 'O2%': '%', - 'O2PPM': 'ppm', - 'CLCON': 'ug/l', - 'TURB': 'FTU', - 'PH': '-', - 'EH': 'mv', - 'CHILL': 'degC', - 'HEAT': 'degC', - 'ICE': 'cm/hr', - 'WSPD': 'm/s', - 'WSPD10': 'm/s', - 'WSPD20': 'm/s', - 'T': '-', - 'HEIGHT': 'm', - 'GDR': 'degT', - 'GST': 'm/s', - 'GTIME': 'hhmm', - 'DEP01': 'm', - 'DIR01': 'deg', - 'SPD01': 'cm/s', - } + units = { + "swden": "(m*m)/Hz", + "PRES": "hPa", + "PTIME": "hhmm", + "WDIR": "degT", + "WTIME": "hhmm", + "DPD": "sec", + "MWD": "degT", + "ATMP": "degC", + "WTMP": "degC", + "DEWP": "degC", + "VIS": "nmi", + "PTDY": "hPa", + "TIDE": "ft", + "SRAD1": "w/m2", + "SRAD2": "w/m2", + "SRAD3": "w/m2", + "WVHT": "m", + "SwH": "m", + "SwP": "sec", + "WWH": "m", + "WWP": "sec", + "SwD": "-", + "WWD": "degT", + "STEEPNESS": "-", + "APD": "sec", + "RATE": "mm/h", + "PCT": "%", + "SDEV": "-", + "ACCUM": "mm", + "DEPTH": "m", + "OTMP": "degC", + "COND": "mS/cm", + "SAL": "psu", + "O2%": "%", + "O2PPM": "ppm", + "CLCON": "ug/l", + "TURB": "FTU", + "PH": "-", + "EH": "mv", + "CHILL": "degC", + "HEAT": "degC", + "ICE": "cm/hr", + "WSPD": "m/s", + "WSPD10": "m/s", + "WSPD20": "m/s", + "T": "-", + "HEIGHT": "m", + "GDR": "degT", + "GST": "m/s", + "GTIME": "hhmm", + "DEP01": "m", + "DIR01": "deg", + "SPD01": "cm/s", + } units = _OrderedDict(sorted(units.items())) @@ -694,7 +838,7 @@ def parameter_units(parameter=''): def _supported_params(parameter): - ''' + """ There is a significant number of datasets provided by NDBC. There is specific data processing required for each type. Therefore this function throws an error for any data type not currently covered. @@ -712,33 +856,28 @@ def _supported_params(parameter): ------- msg: bool Whether the parameter is supported. - ''' - assert isinstance(parameter, str), 'parameter must be a string' + """ + if not isinstance(parameter, str): + raise TypeError(f"parameter must be a string. Got: {type(parameter)}") supported = True - supported_params = [ - 'swden', - 'swdir', - 'swdir2', - 'swr1', - 'swr2', - 'stdmet', - 'cwind' - ] + supported_params = ["swden", "swdir", "swdir2", "swr1", "swr2", "stdmet", "cwind"] param = [param for param in supported_params if param == parameter] if not param: supported = False - msg = ["Currently parameters ['swden', 'swdir', 'swdir2', " + - "'swr1', 'swr2', 'stdmet', 'cwind'] are supported. \n" + - "If you would like to see more data types please \n" + - " open an issue or submit a Pull Request on GitHub"] + msg = [ + "Currently parameters ['swden', 'swdir', 'swdir2', " + + "'swr1', 'swr2', 'stdmet', 'cwind'] are supported. \n" + + "If you would like to see more data types please \n" + + " open an issue or submit a Pull Request on GitHub" + ] raise Exception(msg[0]) return supported def _historical_parameters(): - ''' + """ Names and description of all NDBC Historical Data. Available Data: https://www.ndbc.noaa.gov/data/ @@ -754,26 +893,26 @@ def _historical_parameters(): ------- msg: dict Names and decriptions of historical parameters. - ''' + """ parameters = { - 'adcp': 'Acoustic Doppler Current Profiler Current Year Historical Data', - 'adcp2': 'Acoustic Doppler Current Profiler Current Year Historical Data', - 'cwind': 'Continuous Winds Current Year Historical Data', - 'dart': 'Water Column Height (DART) Current Year Historical Data', - 'mmbcur': 'Marsh-McBirney Current Measurements', - 'ocean': 'Oceanographic Current Year Historical Data', - 'rain': 'Hourly Rain Current Year Historical Data', - 'rain10': '10-Minute Rain Current Year Historical Data', - 'rain24': '24-Hour Rain Current Year Historical Data', - 'srad': 'Solar Radiation Current Year Historical Data', - 'stdmet': 'Standard Meteorological Current Year Historical Data', - 'supl': 'Supplemental Measurements Current Year Historical Data', - 'swden': 'Raw Spectral Wave Current Year Historical Data', - 'swdir': 'Spectral Wave Current Year Historical Data (alpha1)', - 'swdir2': 'Spectral Wave Current Year Historical Data (alpha2)', - 'swr1': 'Spectral Wave Current Year Historical Data (r1)', - 'swr2': 'Spectral Wave Current Year Historical Data (r2)', - 'wlevel': 'Tide Current Year Historical Data', + "adcp": "Acoustic Doppler Current Profiler Current Year Historical Data", + "adcp2": "Acoustic Doppler Current Profiler Current Year Historical Data", + "cwind": "Continuous Winds Current Year Historical Data", + "dart": "Water Column Height (DART) Current Year Historical Data", + "mmbcur": "Marsh-McBirney Current Measurements", + "ocean": "Oceanographic Current Year Historical Data", + "rain": "Hourly Rain Current Year Historical Data", + "rain10": "10-Minute Rain Current Year Historical Data", + "rain24": "24-Hour Rain Current Year Historical Data", + "srad": "Solar Radiation Current Year Historical Data", + "stdmet": "Standard Meteorological Current Year Historical Data", + "supl": "Supplemental Measurements Current Year Historical Data", + "swden": "Raw Spectral Wave Current Year Historical Data", + "swdir": "Spectral Wave Current Year Historical Data (alpha1)", + "swdir2": "Spectral Wave Current Year Historical Data (alpha2)", + "swr1": "Spectral Wave Current Year Historical Data (r1)", + "swr2": "Spectral Wave Current Year Historical Data (r2)", + "wlevel": "Tide Current Year Historical Data", } return parameters @@ -801,74 +940,88 @@ def request_directional_data(buoy, year): Dataset containing the five parameter data indexed by frequency and date. """ - assert isinstance(buoy, str), 'buoy must be a string' - assert isinstance(year, int), 'year must be an int' - - directional_parameters = ['swden', 'swdir', 'swdir2', 'swr1', 'swr2'] - - seps = {'swden': 'w', - 'swdir': 'd', - 'swdir2': 'i', - 'swr1': 'j', - 'swr2': 'k', - } + if not isinstance(buoy, str): + raise TypeError(f"buoy must be a string. Got: {type(buoy)}") + if not isinstance(year, int): + raise TypeError(f"year must be an int. Got: {type(year)}") + + directional_parameters = ["swden", "swdir", "swdir2", "swr1", "swr2"] + + seps = { + "swden": "w", + "swdir": "d", + "swdir2": "i", + "swr1": "j", + "swr2": "k", + } data_dict = {} for param in directional_parameters: - file = f'{buoy}{seps[param]}{year}.txt.gz' - raw_data = request_data(param, pd.Series([file,]))[str(year)] + file = f"{buoy}{seps[param]}{year}.txt.gz" + raw_data = request_data( + param, + pd.Series( + [ + file, + ] + ), + )[str(year)] pd_data = to_datetime_index(param, raw_data) xr_data = xr.DataArray(pd_data) - xr_data = xr_data.astype(float).rename({'dim_1': 'frequency', }) - if param in ['swr1', 'swr2']: - xr_data = xr_data/100.0 + xr_data = xr_data.astype(float).rename( + { + "dim_1": "frequency", + } + ) + if param in ["swr1", "swr2"]: + xr_data = xr_data / 100.0 xr_data.frequency.attrs = { - 'units': 'Hz', - 'long_name': 'frequency', - 'standard_name': 'f', + "units": "Hz", + "long_name": "frequency", + "standard_name": "f", } xr_data.date.attrs = { - 'units': '', - 'long_name': 'datetime', - 'standard_name': 't', + "units": "", + "long_name": "datetime", + "standard_name": "t", } data_dict[param] = xr_data - data_dict['swden'].attrs = { - 'units': 'm^2/Hz', - 'long_name': 'omnidirecational spectrum', - 'standard_name': 'S', - 'description': 'Omnidirectional *sea surface elevation variance (m^2)* spectrum (/Hz).' + data_dict["swden"].attrs = { + "units": "m^2/Hz", + "long_name": "omnidirecational spectrum", + "standard_name": "S", + "description": "Omnidirectional *sea surface elevation variance (m^2)* spectrum (/Hz).", } - data_dict['swdir'].attrs = { - 'units': 'deg', - 'long_name': 'mean wave direction', - 'standard_name': 'α1', - 'description': 'Mean wave direction.' + data_dict["swdir"].attrs = { + "units": "deg", + "long_name": "mean wave direction", + "standard_name": "α1", + "description": "Mean wave direction.", } - data_dict['swdir2'].attrs = { - 'units': 'deg', - 'long_name': 'principal wave direction', - 'standard_name': 'α2', - 'description': 'Principal wave direction.' + data_dict["swdir2"].attrs = { + "units": "deg", + "long_name": "principal wave direction", + "standard_name": "α2", + "description": "Principal wave direction.", } - data_dict['swr1'].attrs = { - 'units': '', - 'long_name': 'coordinate r1', - 'standard_name': 'r1', - 'description': 'First normalized polar coordinate of the Fourier coefficients (nondimensional).' + data_dict["swr1"].attrs = { + "units": "", + "long_name": "coordinate r1", + "standard_name": "r1", + "description": "First normalized polar coordinate of the Fourier coefficients (nondimensional).", } - data_dict['swr2'].attrs = { - 'units': '', - 'long_name': 'coordinate r2', - 'standard_name': 'r2', - 'description': 'Second normalized polar coordinate of the Fourier coefficients (nondimensional).' + data_dict["swr2"].attrs = { + "units": "", + "long_name": "coordinate r2", + "standard_name": "r2", + "description": "Second normalized polar coordinate of the Fourier coefficients (nondimensional).", } return xr.Dataset(data_dict) @@ -899,40 +1052,52 @@ def _create_spectrum(data, frequencies, directions, name, units): DataArray containing the spectrum values indexed by frequency and wave direction. """ - assert isinstance(data, np.ndarray), 'data must be an array' - assert isinstance(frequencies, np.ndarray), 'frequencies must be an array' - assert isinstance(directions, np.ndarray), 'directions must be an array' - assert isinstance(name, str), 'name must be a string' - assert isinstance(units, str), 'units must be a string' - - msg = (f'data has wrong shape {data.shape}, ' + - f'expected {(len(frequencies), len(directions))}') - assert data.shape == (len(frequencies), len(directions)), msg + if not isinstance(data, np.ndarray): + raise TypeError(f"data must be of type np.ndarray. Got: {type(data)}") + if not isinstance(frequencies, np.ndarray): + raise TypeError( + f"frequencies must be of type np.ndarray. Got: {type(frequencies)}" + ) + if not isinstance(directions, np.ndarray): + raise TypeError( + f"directions must be of type np.ndarray. Got: {type(directions)}" + ) + if not isinstance(name, str): + raise TypeError(f"name must be of type string. Got: {type(name)}") + if not isinstance(units, str): + raise TypeError(f"units must be of type string. Got: {type(units)}") + + msg = ( + f"data has wrong shape {data.shape}, " + + f"expected {(len(frequencies), len(directions))}" + ) + if not data.shape == (len(frequencies), len(directions)): + raise ValueError(msg) direction_attrs = { - 'units': 'deg', - 'long_name': 'wave direction', - 'standard_name': 'direction', + "units": "deg", + "long_name": "wave direction", + "standard_name": "direction", } frequency_attrs = { - 'units': 'Hz', - 'long_name': 'frequency', - 'standard_name': 'f', + "units": "Hz", + "long_name": "frequency", + "standard_name": "f", } spectrum = xr.DataArray( data, coords={ - 'frequency': ('frequency', frequencies, frequency_attrs), - 'direction': ('direction', directions, direction_attrs) + "frequency": ("frequency", frequencies, frequency_attrs), + "direction": ("direction", directions, direction_attrs), }, attrs={ - 'units': f'{units}/Hz/deg', - 'long_name': f'{name} spectrum', - 'standard_name': 'spectrum', - 'description': f'*{name} ({units})* spectrum (/Hz/deg).', - } + "units": f"{units}/Hz/deg", + "long_name": f"{name} spectrum", + "standard_name": "spectrum", + "description": f"*{name} ({units})* spectrum (/Hz/deg).", + }, ) return spectrum @@ -957,27 +1122,26 @@ def create_spread_function(data, directions): DataArray containing the spread function values indexed by frequency and wave direction. """ - assert isinstance(data, xr.Dataset), 'data must be a Dataset' - assert isinstance(directions, np.ndarray), 'directions must be an array' + if not isinstance(data, xr.Dataset): + raise TypeError(f"data must be of type xr.Dataset. Got: {type(data)}") + if not isinstance(directions, np.ndarray): + raise TypeError( + f"directions must be of type np.ndarray. Got: {type(directions)}" + ) - r1 = data['swr1'].data.reshape(-1, 1) - r2 = data['swr2'].data.reshape(-1, 1) - a1 = data['swdir'].data.reshape(-1, 1) - a2 = data['swdir2'].data.reshape(-1, 1) + r1 = data["swr1"].data.reshape(-1, 1) + r2 = data["swr2"].data.reshape(-1, 1) + a1 = data["swdir"].data.reshape(-1, 1) + a2 = data["swdir2"].data.reshape(-1, 1) a = directions.reshape(1, -1) spread = ( - 1/np.pi * ( - 0.5 + - r1*np.cos(np.deg2rad(a-a1)) + - r2*np.cos(2*np.deg2rad(a-a2)) - ) + 1 + / np.pi + * (0.5 + r1 * np.cos(np.deg2rad(a - a1)) + r2 * np.cos(2 * np.deg2rad(a - a2))) ) spread = _create_spectrum( - spread, - data.frequency.values, - directions, - name="Spread", - units="1") + spread, data.frequency.values, directions, name="Spread", units="1" + ) return spread @@ -1000,27 +1164,32 @@ def create_directional_spectrum(data, directions): DataArray containing the spectrum values indexed by frequency and wave direction. """ - assert isinstance(data, xr.Dataset), 'data must be a Dataset' - assert isinstance(directions, np.ndarray), 'directions must be an array' + if not isinstance(data, xr.Dataset): + raise TypeError(f"data must be of type xr.Dataset. Got: {type(data)}") + if not isinstance(directions, np.ndarray): + raise TypeError( + f"directions must be of type np.ndarray. Got: {type(directions)}" + ) spread = create_spread_function(data, directions).values - omnidirectional_spectrum = data['swden'].data.reshape(-1, 1) + omnidirectional_spectrum = data["swden"].data.reshape(-1, 1) spectrum = omnidirectional_spectrum * spread spectrum = _create_spectrum( spectrum, data.frequency.values, directions, name="Elevation variance", - units="m^2") + units="m^2", + ) return spectrum def get_buoy_metadata(station_number: str): """ - Fetches and parses the metadata of a National Data Buoy Center (NDBC) station + Fetches and parses the metadata of a National Data Buoy Center (NDBC) station from https://www.ndbc.noaa.gov. - Extracts information such as provider, buoy type, latitude, longitude, and + Extracts information such as provider, buoy type, latitude, longitude, and other metadata from the station's webpage. Parameters @@ -1046,29 +1215,28 @@ def get_buoy_metadata(station_number: str): soup = BeautifulSoup(content, "html.parser") # Find the title element - title_element = soup.find('h1') + title_element = soup.find("h1") # Extract the title (remove the trailing image and whitespace) - title = title_element.get_text(strip=True).split('\n')[0] + title = title_element.get_text(strip=True).split("\n")[0] # Check if the title element exists - if title == 'Station not found': - raise ValueError( - f"Invalid or nonexistent station number: {station_number}") + if title == "Station not found": + raise ValueError(f"Invalid or nonexistent station number: {station_number}") # Save buoy name to a dictionary data = {} - data['buoy'] = title + data["buoy"] = title # Find the specific div containing the buoy metadata - metadata_div = soup.find('div', id='stn_metadata') + metadata_div = soup.find("div", id="stn_metadata") # Extract the metadata - lines = metadata_div.p.text.split('\n') + lines = metadata_div.p.text.split("\n") line_count = 1 for line in lines: line = line.strip() - if line.startswith(''): + if line.startswith(""): line = line[3:] # Line should be the data provider if line_count == 1: @@ -1077,13 +1245,13 @@ def get_buoy_metadata(station_number: str): elif line_count == 2: data["type"] = line # Special case look for lat/long - elif re.match(r'\d+\.\d+\s+[NS]\s+\d+\.\d+\s+[EW]', line): - lat, lon = line.split(' ', 3)[0:3:2] + elif re.match(r"\d+\.\d+\s+[NS]\s+\d+\.\d+\s+[EW]", line): + lat, lon = line.split(" ", 3)[0:3:2] data["lat"] = lat.strip() data["lon"] = lon.strip() # Split key value pairs on colon - elif ':' in line: - key, value = line.split(':', 1) + elif ":" in line: + key, value = line.split(":", 1) data[key.strip()] = value.strip() # Catch all other lines as keys with empty values elif line: diff --git a/mhkit/wave/io/swan.py b/mhkit/wave/io/swan.py index c71a1a514..c344561d0 100644 --- a/mhkit/wave/io/swan.py +++ b/mhkit/wave/io/swan.py @@ -1,295 +1,355 @@ from scipy.io import loadmat from os.path import isfile import pandas as pd +import xarray as xr import numpy as np -import re - +import re +from mhkit.utils import convert_to_dataset, convert_nested_dict_and_pandas -def read_table(swan_file): - ''' + +def read_table(swan_file, to_pandas=True): + """ Reads in SWAN table format output - + Parameters ---------- swan_file: str filename to import - + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. + Returns ------- - swan_data: DataFrame + swan_data: pandas DataFrame or xarray Dataset Dataframe of swan output metaDict: Dictionary Dictionary of metaData - ''' - assert isinstance(swan_file, str), 'swan_file must be of type str' - assert isfile(swan_file)==True, f'File not found: {swan_file}' - - f = open(swan_file,'r') + """ + if not isinstance(swan_file, str): + raise TypeError(f"swan_file must be of type str. Got: {type(swan_file)}") + if not isfile(swan_file): + raise ValueError(f"File not found: {swan_file}") + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + + f = open(swan_file, "r") header_line_number = 4 - for i in range(header_line_number+2): + for i in range(header_line_number + 2): line = f.readline() - if line.startswith('% Run'): + if line.startswith("% Run"): metaDict = _parse_line_metadata(line) - if metaDict['Table'].endswith('SWAN'): - metaDict['Table'] = metaDict['Table'].split(' SWAN')[:-1] - if i == header_line_number: - header = re.split("\s+",line.rstrip().strip('%').lstrip()) - metaDict['header'] = header - if i == header_line_number+1: - units = re.split('\s+',line.strip(' %\n').replace('[','').replace(']','')) - metaDict['units'] = units - f.close() - - swan_data = pd.read_csv(swan_file, sep='\s+', comment='%', - names=metaDict['header']) - return swan_data, metaDict - - -def read_block(swan_file): - ''' - Reads in SWAN block output with headers and creates a dictionary - of DataFrames for each SWAN output variable in the output file. - + if metaDict["Table"].endswith("SWAN"): + metaDict["Table"] = metaDict["Table"].split(" SWAN")[:-1] + if i == header_line_number: + header = re.split("\s+", line.rstrip().strip("%").lstrip()) + metaDict["header"] = header + if i == header_line_number + 1: + units = re.split( + "\s+", line.strip(" %\n").replace("[", "").replace("]", "") + ) + metaDict["units"] = units + f.close() + + swan_data = pd.read_csv(swan_file, sep="\s+", comment="%", names=metaDict["header"]) + + if not to_pandas: + swan_data = convert_to_dataset(swan_data) + + return swan_data, metaDict + + +def read_block(swan_file, to_pandas=True): + """ + Reads in SWAN block output with headers and creates a dictionary + of DataFrames or Datasets for each SWAN output variable in the output file. + Parameters ---------- swan_file: str swan block file to import - + to_pandas: bool (optional) + Flag to output a dictionary of pandas objects instead of a dictionary + of xarray objects. Default = True. + Returns ------- data: Dictionary - Dictionary of DataFrame of swan output variables + Dictionary of DataFrames or Datasets of swan output variables metaDict: Dictionary - Dictionary of metaData dependent on file type - ''' - assert isinstance(swan_file, str), 'swan_file must be of type str' - assert isfile(swan_file)==True, f'File not found: {swan_file}' - - extension = swan_file.split('.')[1].lower() - if extension == 'mat': + Dictionary of metaData dependent on file type + """ + if not isinstance(swan_file, str): + raise TypeError(f"swan_file must be of type str. Got: {type(swan_file)}") + if not isfile(swan_file): + raise ValueError(f"File not found: {swan_file}") + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + + extension = swan_file.split(".")[1].lower() + if extension == "mat": dataDict = _read_block_mat(swan_file) - metaData = {'filetype': 'mat', - 'variables': [var for var in dataDict.keys()]} + metaData = {"filetype": "mat", "variables": [var for var in dataDict.keys()]} else: dataDict, metaData = _read_block_txt(swan_file) + + if not to_pandas: + dataDict = convert_nested_dict_and_pandas(dataDict) + return dataDict, metaData - + def _read_block_txt(swan_file): - ''' - Reads in SWAN block output with headers and creates a dictionary + """ + Reads in SWAN block output with headers and creates a dictionary of DataFrames for each SWAN output variable in the output file. - + Parameters ---------- swan_file: str swan block file to import (must be written with headers) - + Returns ------- dataDict: Dictionary Dictionary of DataFrame of swan output variables metaDict: Dictionary - Dictionary of metaData dependent on file type - ''' - assert isinstance(swan_file, str), 'swan_file must be of type str' - assert isfile(swan_file)==True, f'File not found: {swan_file}' - - f = open(swan_file) - runLines=[] + Dictionary of metaData dependent on file type + """ + if not isinstance(swan_file, str): + raise TypeError(f"swan_file must be of type str. Got: {type(swan_file)}") + if not isfile(swan_file): + raise ValueError(f"File not found: {swan_file}") + + f = open(swan_file) + runLines = [] metaDict = {} column_position = None - dataDict={} + dataDict = {} for position, line in enumerate(f): - - if line.startswith('% Run'): + if line.startswith("% Run"): varPosition = position runLines.extend([position]) - column_position = position + 5 - varDict = _parse_line_metadata(line) - varDict['unitMultiplier'] = float(varDict['Unit'].split(' ')[0]) - - metaDict[varPosition] = varDict - variable = varDict['vars'] + column_position = position + 5 + varDict = _parse_line_metadata(line) + varDict["unitMultiplier"] = float(varDict["Unit"].split(" ")[0]) + + metaDict[varPosition] = varDict + variable = varDict["vars"] dataDict[variable] = {} - - if position==column_position and column_position!=None: - columns = line.strip('% \n').split() - metaDict[varPosition]['cols'] = columns - N_columns = len(columns) - columns_position = None - - - if not line.startswith('%'): - raw_data = ' '.join(re.split(' |\.', line.strip(' \n'))).split() + + if position == column_position and column_position != None: + columns = line.strip("% \n").split() + metaDict[varPosition]["cols"] = columns + N_columns = len(columns) + columns_position = None + + if not line.startswith("%"): + raw_data = " ".join(re.split(" |\.", line.strip(" \n"))).split() index_number = int(raw_data[0]) columns_data = raw_data[1:] - data=[] - possibleNaNs = ['****'] + data = [] + possibleNaNs = ["****"] NNaNsTotal = sum([line.count(nanVal) for nanVal in possibleNaNs]) - - if NNaNsTotal>0: + + if NNaNsTotal > 0: for vals in columns_data: - NNaNs = 0 + NNaNs = 0 for nanVal in possibleNaNs: NNaNs += vals.count(nanVal) if NNaNs > 0: for i in range(NNaNs): - data.extend([np.nan]) + data.extend([np.nan]) else: data.extend([float(vals)]) - else: - data.extend([float(val) for val in columns_data]) - + else: + data.extend([float(val) for val in columns_data]) + dataDict[variable][index_number] = data - - metaData = pd.DataFrame(metaDict).T + + metaData = pd.DataFrame(metaDict).T f.close() - - for var in metaData.vars.values: - df = pd.DataFrame(dataDict[var]).T - varCols = metaData[metaData.vars == var].cols.values.tolist()[0] + + for var in metaData.vars.values: + df = pd.DataFrame(dataDict[var]).T + varCols = metaData[metaData.vars == var].cols.values.tolist()[0] colsDict = dict(zip(df.columns.values.tolist(), varCols)) df.rename(columns=colsDict) unitMultiplier = metaData[metaData.vars == var].unitMultiplier.values[0] - dataDict[var] = df * unitMultiplier - - metaData.pop('cols') - metaData = metaData.set_index('vars').T.to_dict() - return dataDict, metaData - + dataDict[var] = df * unitMultiplier + + metaData.pop("cols") + metaData = metaData.set_index("vars").T.to_dict() + return dataDict, metaData + def _read_block_mat(swan_file): - ''' + """ Reads in SWAN matlab output and creates a dictionary of DataFrames for each swan output variable. - + Parameters ---------- swan_file: str filename to import - + Returns ------- dataDict: Dictionary Dictionary of DataFrame of swan output variables - ''' - assert isinstance(swan_file, str), 'swan_file must be of type str' - assert isfile(swan_file)==True, f'File not found: {swan_file}' - + """ + if not isinstance(swan_file, str): + raise TypeError(f"swan_file must be of type str. Got: {type(swan_file)}") + if not isfile(swan_file): + raise ValueError(f"File not found: {swan_file}") + dataDict = loadmat(swan_file, struct_as_record=False, squeeze_me=True) - removeKeys = ['__header__', '__version__', '__globals__'] + removeKeys = ["__header__", "__version__", "__globals__"] for key in removeKeys: dataDict.pop(key, None) for key in dataDict.keys(): dataDict[key] = pd.DataFrame(dataDict[key]) return dataDict - - + + def _parse_line_metadata(line): - ''' + """ Parses the variable metadata into a dictionary - + Parameters ---------- line: str line from block swan data to parse - + Returns ------- metaDict: Dictionary Dictionary of variable metadata - ''' - assert isinstance(line, str), 'line must be of type str' - - metaDict={} - meta=re.sub('\s+', " ", line.replace(',', ' ').strip('% \n').replace('**', 'vars:')) - mList = meta.split(':') - elms = [elm.split(' ') for elm in mList] + """ + if not isinstance(line, str): + raise TypeError(f"line must be of type str. Got: {type(line)}") + + metaDict = {} + meta = re.sub( + "\s+", " ", line.replace(",", " ").strip("% \n").replace("**", "vars:") + ) + mList = meta.split(":") + elms = [elm.split(" ") for elm in mList] for elm in elms: try: - elm.remove('') + elm.remove("") except: - pass - for i in range(len(elms)-1): + pass + for i in range(len(elms) - 1): elm = elms[i] key = elm[-1] - val = ' '.join(elms[i+1][:-1]) + val = " ".join(elms[i + 1][:-1]) metaDict[key] = val - metaDict[key] = ' '.join(elms[-1]) - - return metaDict + metaDict[key] = " ".join(elms[-1]) + return metaDict + + +def dictionary_of_block_to_table(dictionary_of_DataFrames, names=None, to_pandas=True): + """ + Converts a dictionary of structured 2D grid SWAN block format + x (columns),y (index) to SWAN table format x (column),y (column), + values (column) DataFrame or Dataset. -def dictionary_of_block_to_table(dictionary_of_DataFrames, names=None): - ''' - Converts a dictionary of structured 2D grid SWAN block format - x (columns),y (index) to SWAN table format x (column),y (column), - values (column) DataFrame. - Parameters ---------- - dictionary_of_DataFrames: Dictionary + dictionary_of_DataFrames: Dictionary Dictionary of DataFrames in with columns as X indicie and Y as index. names: List (Optional) Name of data column in returned table. Default=Dictionary.keys() + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. + Returns ------- - swanTables: DataFrame - DataFrame with columns x,y,values where values = Dictionary.keys() - or names - ''' - assert isinstance(dictionary_of_DataFrames, dict), ( - 'dictionary_of_DataFrames must be of type Dict') - assert bool(dictionary_of_DataFrames), 'dictionary_of_DataFrames is empty' - for key in dictionary_of_DataFrames: - assert isinstance(dictionary_of_DataFrames[key],pd.DataFrame), ( - f'Dictionary key:{key} must be of type pd.DataFrame') + swanTables: pandas DataFrame or xarray Dataset + DataFrame/Dataset with columns x,y,values where values = Dictionary.keys() + or names + """ + if not isinstance(dictionary_of_DataFrames, dict): + raise TypeError( + f"dictionary_of_DataFrames must be of type dict. Got: {type(dictionary_of_DataFrames)}" + ) + if not bool(dictionary_of_DataFrames): + raise ValueError( + f"dictionary_of_DataFrames is empty. Got: {dictionary_of_DataFrames}" + ) + for key in dictionary_of_DataFrames: + if not isinstance(dictionary_of_DataFrames[key], pd.DataFrame): + raise TypeError( + f"Dictionary key:{key} must be of type pd.DataFrame. Got: {type(dictionary_of_DataFrames[key])}" + ) if not isinstance(names, type(None)): - assert isinstance(names, list), ( - 'If specified names must be of type list') - assert all([isinstance(elm, str) for elm in names]), ( - 'If specified all elements in names must be of type string') - assert len(names) == len(dictionary_of_DataFrames), ( - 'If specified names must the same length as dictionary_of_DataFrames') - + if not isinstance(names, list): + raise TypeError( + f"If specified, names must be of type list. Got: {type(names)}" + ) + if not all([isinstance(elm, str) for elm in names]): + raise ValueError( + f"If specified, all elements in names must be of type string. Got: {names}" + ) + if not len(names) == len(dictionary_of_DataFrames): + raise ValueError( + "If specified, names must the same length as dictionary_of_DataFrames" + ) + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + if names == None: - variables = [var for var in dictionary_of_DataFrames.keys() ] + variables = [var for var in dictionary_of_DataFrames.keys()] else: variables = names - + var0 = variables[0] swanTables = block_to_table(dictionary_of_DataFrames[var0], name=var0) - for var in variables[1:]: + for var in variables[1:]: tmp_dat = block_to_table(dictionary_of_DataFrames[var], name=var) swanTables[var] = tmp_dat[var] - + + if not to_pandas: + swanTables = convert_to_dataset(swanTables) + return swanTables - -def block_to_table(data, name='values'): - ''' - Converts structured 2D grid SWAN block format x (columns), y (index) - to SWAN table format x (column),y (column), values (column) + +def block_to_table(data, name="values", to_pandas=True): + """ + Converts structured 2D grid SWAN block format x (columns), y (index) + to SWAN table format x (column),y (column), values (column) DataFrame. - + Parameters ---------- - data: DataFrame + data: pandas DataFrame or xarray Dataset DataFrame in with columns as X indicie and Y as index. name: string (Optional) Name of data column in returned table. Default='values' + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. + Returns ------- - table: DataFrame - DataFrame with columns x,y,values - ''' - assert isinstance(data,pd.DataFrame), 'data must be of type pd.DataFrame' - assert isinstance(name, str), 'Name must be of type str' - + table: pandas DataFrame or xarray Dataset + DataFrame with columns x,y,values + """ + if isinstance(data, xr.Dataset): + data = data.to_pandas() + if not isinstance(data, pd.DataFrame): + raise TypeError(f"data must be of type pd.DataFrame. Got: {type(data)}") + if not isinstance(name, str): + raise TypeError(f"If specified, name must be of type str. Got: {type(name)}") + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + table = data.unstack().reset_index(name=name) - table = table.rename(columns={'level_0':'x', 'level_1': 'y'}) - table.sort_values(['x', 'y'], ascending=[True, True], inplace=True) + table = table.rename(columns={"level_0": "x", "level_1": "y"}) + table.sort_values(["x", "y"], ascending=[True, True], inplace=True) - return table + if not to_pandas: + table = convert_to_dataset(table) + return table diff --git a/mhkit/wave/io/wecsim.py b/mhkit/wave/io/wecsim.py index 65ce071cf..78298a475 100644 --- a/mhkit/wave/io/wecsim.py +++ b/mhkit/wave/io/wecsim.py @@ -1,31 +1,41 @@ import pandas as pd import numpy as np import scipy.io as sio +from os.path import isfile +from mhkit.utils import convert_nested_dict_and_pandas -def read_output(file_name): +def read_output(file_name, to_pandas=True): """ - Loads the wecSim response class once 'output' has been saved to a `.mat` - structure. - - NOTE: Python is unable to import MATLAB objects. - MATLAB must be used to save the wecSim object as a structure. - + Loads the wecSim response class once 'output' has been saved to a `.mat` + structure. + + NOTE: Python is unable to import MATLAB objects. + MATLAB must be used to save the wecSim object as a structure. + Parameters ------------ file_name: string Name of wecSim output file saved as a `.mat` structure - - + to_pandas: bool (optional) + Flag to output a dictionary of pandas objects instead of a dictionary + of xarray objects. Default = True. + Returns --------- - ws_output: dict - Dictionary of pandas DataFrames, indexed by time (s) - + ws_output: dict + Dictionary of pandas DataFrames or xarray Datasets, indexed by time (s) + """ - + if not isinstance(file_name, str): + raise TypeError(f"file_name must be of type str. Got: {type(file_name)}") + if not isfile(file_name): + raise ValueError(f"File not found: {file_name}") + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + ws_data = sio.loadmat(file_name) - output = ws_data['output'] + output = ws_data["output"] ###################################### ## import wecSim wave class @@ -33,25 +43,24 @@ def read_output(file_name): # time: [iterations x 1 double] # elevation: [iterations x 1 double] ###################################### - try: - wave = output['wave'] - wave_type = wave[0][0][0][0][0][0] - time = wave[0][0]['time'][0][0].squeeze() - elevation = wave[0][0]['elevation'][0][0].squeeze() - + try: + wave = output["wave"] + wave_type = wave[0][0][0][0][0][0] + time = wave[0][0]["time"][0][0].squeeze() + elevation = wave[0][0]["elevation"][0][0].squeeze() + ###################################### ## create wave_output DataFrame ###################################### - wave_output = pd.DataFrame(data = time,columns=['time']) - wave_output = wave_output.set_index('time') - wave_output['elevation'] = elevation + wave_output = pd.DataFrame(data=time, columns=["time"]) + wave_output = wave_output.set_index("time") + wave_output["elevation"] = elevation wave_output.name = wave_type - + except: - print("wave class not used") - wave_output = [] - - + print("wave class not used") + wave_output = [] + ###################################### ## import wecSim body class # name: '' @@ -66,11 +75,11 @@ def read_output(file_name): # forceRestoring: [iterations x 6 double] # forceMorisonAndViscous: [iterations x 6 double] # forceLinearDamping: [iterations x 6 double] - ###################################### + ###################################### try: - bodies = output['bodies'] - num_bodies = len(bodies[0][0]['name'][0]) - name = [] + bodies = output["bodies"] + num_bodies = len(bodies[0][0]["name"][0]) + name = [] time = [] position = [] velocity = [] @@ -83,57 +92,66 @@ def read_output(file_name): forceMorisonAndViscous = [] forceLinearDamping = [] for body in range(num_bodies): - name.append(bodies[0][0]['name'][0][body][0]) - time.append(bodies[0][0]['time'][0][body]) - position.append(bodies[0][0]['position'][0][body]) - velocity.append(bodies[0][0]['velocity'][0][body]) - acceleration.append(bodies[0][0]['acceleration'][0][body]) - forceTotal.append(bodies[0][0]['forceTotal'][0][body]) - forceExcitation.append(bodies[0][0]['forceExcitation'][0][body]) - forceRadiationDamping.append(bodies[0][0]['forceRadiationDamping'][0][body]) - forceAddedMass.append(bodies[0][0]['forceAddedMass'][0][body]) - forceRestoring.append(bodies[0][0]['forceRestoring'][0][body]) + name.append(bodies[0][0]["name"][0][body][0]) + time.append(bodies[0][0]["time"][0][body]) + position.append(bodies[0][0]["position"][0][body]) + velocity.append(bodies[0][0]["velocity"][0][body]) + acceleration.append(bodies[0][0]["acceleration"][0][body]) + forceTotal.append(bodies[0][0]["forceTotal"][0][body]) + forceExcitation.append(bodies[0][0]["forceExcitation"][0][body]) + forceRadiationDamping.append(bodies[0][0]["forceRadiationDamping"][0][body]) + forceAddedMass.append(bodies[0][0]["forceAddedMass"][0][body]) + forceRestoring.append(bodies[0][0]["forceRestoring"][0][body]) try: - # Format in WEC-Sim responseClass >= v4.2 - forceMorisonAndViscous.append(bodies[0][0]['forceMorisonAndViscous'][0][body]) + # Format in WEC-Sim responseClass >= v4.2 + forceMorisonAndViscous.append( + bodies[0][0]["forceMorisonAndViscous"][0][body] + ) except: # Format in WEC-Sim responseClass <= v4.1 - forceMorisonAndViscous.append(bodies[0][0]['forceMorrisonAndViscous'][0][body]) - forceLinearDamping.append(bodies[0][0]['forceLinearDamping'][0][body]) + forceMorisonAndViscous.append( + bodies[0][0]["forceMorrisonAndViscous"][0][body] + ) + forceLinearDamping.append(bodies[0][0]["forceLinearDamping"][0][body]) except: - num_bodies = 0 - + num_bodies = 0 + ###################################### ## create body_output DataFrame - ###################################### + ###################################### def _write_body_output(body): - for dof in range(6): - tmp_body[f'position_dof{dof+1}'] = position[body][:,dof] - tmp_body[f'velocity_dof{dof+1}'] = velocity[body][:,dof] - tmp_body[f'acceleration_dof{dof+1}'] = acceleration[body][:,dof] - tmp_body[f'forceTotal_dof{dof+1}'] = forceTotal[body][:,dof] - tmp_body[f'forceExcitation_dof{dof+1}'] = forceExcitation[body][:,dof] - tmp_body[f'forceRadiationDamping_dof{dof+1}'] = forceRadiationDamping[body][:,dof] - tmp_body[f'forceAddedMass_dof{dof+1}'] = forceAddedMass[body][:,dof] - tmp_body[f'forceRestoring_dof{dof+1}'] = forceRestoring[body][:,dof] - tmp_body[f'forceMorisonAndViscous_dof{dof+1}'] = forceMorisonAndViscous[body][:,dof] - tmp_body[f'forceLinearDamping_dof{dof+1}'] = forceLinearDamping[body][:,dof] + for dof in range(6): + tmp_body[f"position_dof{dof+1}"] = position[body][:, dof] + tmp_body[f"velocity_dof{dof+1}"] = velocity[body][:, dof] + tmp_body[f"acceleration_dof{dof+1}"] = acceleration[body][:, dof] + tmp_body[f"forceTotal_dof{dof+1}"] = forceTotal[body][:, dof] + tmp_body[f"forceExcitation_dof{dof+1}"] = forceExcitation[body][:, dof] + tmp_body[f"forceRadiationDamping_dof{dof+1}"] = forceRadiationDamping[body][ + :, dof + ] + tmp_body[f"forceAddedMass_dof{dof+1}"] = forceAddedMass[body][:, dof] + tmp_body[f"forceRestoring_dof{dof+1}"] = forceRestoring[body][:, dof] + tmp_body[f"forceMorisonAndViscous_dof{dof+1}"] = forceMorisonAndViscous[ + body + ][:, dof] + tmp_body[f"forceLinearDamping_dof{dof+1}"] = forceLinearDamping[body][ + :, dof + ] return tmp_body if num_bodies >= 1: body_output = {} for body in range(num_bodies): - tmp_body = pd.DataFrame(data = time[0],columns=['time']) - tmp_body = tmp_body.set_index('time') + tmp_body = pd.DataFrame(data=time[0], columns=["time"]) + tmp_body = tmp_body.set_index("time") tmp_body.name = name[body] if num_bodies == 1: body_output = _write_body_output(body) elif num_bodies > 1: - body_output[f'body{body+1}'] = _write_body_output(body) + body_output[f"body{body+1}"] = _write_body_output(body) else: - print("body class not used") - body_output = [] - + print("body class not used") + body_output = [] ###################################### ## import wecSim pto class @@ -149,9 +167,9 @@ def _write_body_output(body): # powerInternalMechanics: [iterations x 6 double] ###################################### try: - ptos = output['ptos'] - num_ptos = len(ptos[0][0]['name'][0]) - name = [] + ptos = output["ptos"] + num_ptos = len(ptos[0][0]["name"][0]) + name = [] time = [] position = [] velocity = [] @@ -160,110 +178,118 @@ def _write_body_output(body): forceActuation = [] forceConstraint = [] forceInternalMechanics = [] - powerInternalMechanics= [] + powerInternalMechanics = [] for pto in range(num_ptos): - name.append(ptos[0][0]['name'][0][pto][0]) - time.append(ptos[0][0]['time'][0][pto]) - position.append(ptos[0][0]['position'][0][pto]) - velocity.append(ptos[0][0]['velocity'][0][pto]) - acceleration.append(ptos[0][0]['acceleration'][0][pto]) - forceTotal.append(ptos[0][0]['forceTotal'][0][pto]) - forceActuation.append(ptos[0][0]['forceActuation'][0][pto]) - forceConstraint.append(ptos[0][0]['forceConstraint'][0][pto]) - forceInternalMechanics.append(ptos[0][0]['forceInternalMechanics'][0][pto]) - powerInternalMechanics.append(ptos[0][0]['powerInternalMechanics'][0][pto]) + name.append(ptos[0][0]["name"][0][pto][0]) + time.append(ptos[0][0]["time"][0][pto]) + position.append(ptos[0][0]["position"][0][pto]) + velocity.append(ptos[0][0]["velocity"][0][pto]) + acceleration.append(ptos[0][0]["acceleration"][0][pto]) + forceTotal.append(ptos[0][0]["forceTotal"][0][pto]) + forceActuation.append(ptos[0][0]["forceActuation"][0][pto]) + forceConstraint.append(ptos[0][0]["forceConstraint"][0][pto]) + forceInternalMechanics.append(ptos[0][0]["forceInternalMechanics"][0][pto]) + powerInternalMechanics.append(ptos[0][0]["powerInternalMechanics"][0][pto]) except: - num_ptos = 0 - + num_ptos = 0 + ###################################### ## create pto_output DataFrame - ###################################### + ###################################### def _write_pto_output(pto): - for dof in range(6): - tmp_pto[f'position_dof{dof+1}'] = position[pto][:,dof] - tmp_pto[f'velocity_dof{dof+1}'] = velocity[pto][:,dof] - tmp_pto[f'acceleration_dof{dof+1}'] = acceleration[pto][:,dof] - tmp_pto[f'forceTotal_dof{dof+1}'] = forceTotal[pto][:,dof] - tmp_pto[f'forceTotal_dof{dof+1}'] = forceTotal[pto][:,dof] - tmp_pto[f'forceActuation_dof{dof+1}'] = forceActuation[pto][:,dof] - tmp_pto[f'forceConstraint_dof{dof+1}'] = forceConstraint[pto][:,dof] - tmp_pto[f'forceInternalMechanics_dof{dof+1}'] = forceInternalMechanics[pto][:,dof] - tmp_pto[f'powerInternalMechanics_dof{dof+1}'] = powerInternalMechanics[pto][:,dof] + for dof in range(6): + tmp_pto[f"position_dof{dof+1}"] = position[pto][:, dof] + tmp_pto[f"velocity_dof{dof+1}"] = velocity[pto][:, dof] + tmp_pto[f"acceleration_dof{dof+1}"] = acceleration[pto][:, dof] + tmp_pto[f"forceTotal_dof{dof+1}"] = forceTotal[pto][:, dof] + tmp_pto[f"forceTotal_dof{dof+1}"] = forceTotal[pto][:, dof] + tmp_pto[f"forceActuation_dof{dof+1}"] = forceActuation[pto][:, dof] + tmp_pto[f"forceConstraint_dof{dof+1}"] = forceConstraint[pto][:, dof] + tmp_pto[f"forceInternalMechanics_dof{dof+1}"] = forceInternalMechanics[pto][ + :, dof + ] + tmp_pto[f"powerInternalMechanics_dof{dof+1}"] = powerInternalMechanics[pto][ + :, dof + ] return tmp_pto if num_ptos >= 1: - pto_output = {} + pto_output = {} for pto in range(num_ptos): - tmp_pto = pd.DataFrame(data = time[0],columns=['time']) - tmp_pto = tmp_pto.set_index('time') + tmp_pto = pd.DataFrame(data=time[0], columns=["time"]) + tmp_pto = tmp_pto.set_index("time") tmp_pto.name = name[pto] - if num_ptos == 1: + if num_ptos == 1: pto_output = _write_pto_output(pto) elif num_ptos > 1: - pto_output[f'pto{pto+1}'] = _write_pto_output(pto) + pto_output[f"pto{pto+1}"] = _write_pto_output(pto) else: - print("pto class not used") + print("pto class not used") pto_output = [] - ###################################### ## import wecSim constraint class - # + # # name: '' # time: [iterations x 1 double] # position: [iterations x 6 double] # velocity: [iterations x 6 double] # acceleration: [iterations x 6 double] # forceConstraint: [iterations x 6 double] - ###################################### + ###################################### try: - constraints = output['constraints'] - num_constraints = len(constraints[0][0]['name'][0]) - name = [] + constraints = output["constraints"] + num_constraints = len(constraints[0][0]["name"][0]) + name = [] time = [] position = [] velocity = [] acceleration = [] forceConstraint = [] for constraint in range(num_constraints): - name.append(constraints[0][0]['name'][0][constraint][0]) - time.append(constraints[0][0]['time'][0][constraint]) - position.append(constraints[0][0]['position'][0][constraint]) - velocity.append(constraints[0][0]['velocity'][0][constraint]) - acceleration.append(constraints[0][0]['acceleration'][0][constraint]) - forceConstraint.append(constraints[0][0]['forceConstraint'][0][constraint]) + name.append(constraints[0][0]["name"][0][constraint][0]) + time.append(constraints[0][0]["time"][0][constraint]) + position.append(constraints[0][0]["position"][0][constraint]) + velocity.append(constraints[0][0]["velocity"][0][constraint]) + acceleration.append(constraints[0][0]["acceleration"][0][constraint]) + forceConstraint.append(constraints[0][0]["forceConstraint"][0][constraint]) except: - num_constraints = 0 - + num_constraints = 0 + ###################################### ## create constraint_output DataFrame - ###################################### + ###################################### def _write_constraint_output(constraint): - for dof in range(6): - tmp_constraint[f'position_dof{dof+1}'] = position[constraint][:,dof] - tmp_constraint[f'velocity_dof{dof+1}'] = velocity[constraint][:,dof] - tmp_constraint[f'acceleration_dof{dof+1}'] = acceleration[constraint][:,dof] - tmp_constraint[f'forceConstraint_dof{dof+1}'] = forceConstraint[constraint][:,dof] + for dof in range(6): + tmp_constraint[f"position_dof{dof+1}"] = position[constraint][:, dof] + tmp_constraint[f"velocity_dof{dof+1}"] = velocity[constraint][:, dof] + tmp_constraint[f"acceleration_dof{dof+1}"] = acceleration[constraint][ + :, dof + ] + tmp_constraint[f"forceConstraint_dof{dof+1}"] = forceConstraint[constraint][ + :, dof + ] return tmp_constraint if num_constraints >= 1: constraint_output = {} for constraint in range(num_constraints): - tmp_constraint = pd.DataFrame(data = time[0],columns=['time']) - tmp_constraint = tmp_constraint.set_index('time') + tmp_constraint = pd.DataFrame(data=time[0], columns=["time"]) + tmp_constraint = tmp_constraint.set_index("time") tmp_constraint.name = name[constraint] if num_constraints == 1: constraint_output = _write_constraint_output(constraint) elif num_constraints > 1: - constraint_output[f'constraint{constraint+1}'] = _write_constraint_output(constraint) + constraint_output[f"constraint{constraint+1}"] = ( + _write_constraint_output(constraint) + ) else: - print("constraint class not used") + print("constraint class not used") constraint_output = [] - ###################################### ## import wecSim mooring class - # + # # name: '' # time: [iterations x 1 double] # position: [iterations x 6 double] @@ -271,47 +297,46 @@ def _write_constraint_output(constraint): # forceMooring: [iterations x 6 double] ###################################### try: - moorings = output['mooring'] - num_moorings = len(moorings[0][0]['name'][0]) - name = [] + moorings = output["mooring"] + num_moorings = len(moorings[0][0]["name"][0]) + name = [] time = [] position = [] velocity = [] forceMooring = [] for mooring in range(num_moorings): - name.append(moorings[0][0]['name'][0][mooring][0]) - time.append(moorings[0][0]['time'][0][mooring]) - position.append(moorings[0][0]['position'][0][mooring]) - velocity.append(moorings[0][0]['velocity'][0][mooring]) - forceMooring.append(moorings[0][0]['forceMooring'][0][mooring]) + name.append(moorings[0][0]["name"][0][mooring][0]) + time.append(moorings[0][0]["time"][0][mooring]) + position.append(moorings[0][0]["position"][0][mooring]) + velocity.append(moorings[0][0]["velocity"][0][mooring]) + forceMooring.append(moorings[0][0]["forceMooring"][0][mooring]) except: - num_moorings = 0 + num_moorings = 0 ###################################### ## create mooring_output DataFrame - ###################################### + ###################################### def _write_mooring_output(mooring): - for dof in range(6): - tmp_mooring[f'position_dof{dof+1}'] = position[mooring][:,dof] - tmp_mooring[f'velocity_dof{dof+1}'] = velocity[mooring][:,dof] - tmp_mooring[f'forceMooring_dof{dof+1}'] = forceMooring[mooring][:,dof] + for dof in range(6): + tmp_mooring[f"position_dof{dof+1}"] = position[mooring][:, dof] + tmp_mooring[f"velocity_dof{dof+1}"] = velocity[mooring][:, dof] + tmp_mooring[f"forceMooring_dof{dof+1}"] = forceMooring[mooring][:, dof] return tmp_mooring - if num_moorings >= 1: + if num_moorings >= 1: mooring_output = {} for mooring in range(num_moorings): - tmp_mooring = pd.DataFrame(data = time[0],columns=['time']) - tmp_mooring = tmp_mooring.set_index('time') + tmp_mooring = pd.DataFrame(data=time[0], columns=["time"]) + tmp_mooring = tmp_mooring.set_index("time") tmp_mooring.name = name[mooring] - if num_moorings == 1: + if num_moorings == 1: mooring_output = _write_mooring_output(mooring) - elif num_moorings > 1: - mooring_output[f'mooring{mooring+1}'] = _write_mooring_output(mooring) + elif num_moorings > 1: + mooring_output[f"mooring{mooring+1}"] = _write_mooring_output(mooring) else: - print("mooring class not used") + print("mooring class not used") mooring_output = [] - - + ###################################### ## import wecSim moorDyn class # @@ -321,46 +346,45 @@ def _write_mooring_output(mooring): # Line3: [1×1 struct] # Line4: [1×1 struct] # Line5: [1×1 struct] - # Line6: [1×1 struct] + # Line6: [1×1 struct] ###################################### try: - moorDyn = output['moorDyn'] - num_lines = len(moorDyn[0][0][0].dtype) - 1 # number of moorDyn lines - - Lines = moorDyn[0][0]['Lines'][0][0][0] + moorDyn = output["moorDyn"] + num_lines = len(moorDyn[0][0][0].dtype) - 1 # number of moorDyn lines + + Lines = moorDyn[0][0]["Lines"][0][0][0] signals = Lines.dtype.names num_signals = len(Lines.dtype.names) - data = Lines[0] + data = Lines[0] time = data[0] - Lines = pd.DataFrame(data = time,columns=['time']) - Lines = Lines.set_index('time') - for signal in range(1,num_signals): - Lines[signals[signal]] = data[signal] - moorDyn_output= {'Lines': Lines} - - Line_num_output = {} - for line_num in range(1,num_lines+1): - tmp_moordyn = moorDyn[0][0][f'Line{line_num}'][0][0][0] - signals = tmp_moordyn.dtype.names - num_signals = len(tmp_moordyn.dtype.names) - data = tmp_moordyn[0] - time = data[0] - tmp_moordyn = pd.DataFrame(data = time,columns=['time']) - tmp_moordyn = tmp_moordyn.set_index('time') - for signal in range(1,num_signals): - tmp_moordyn[signals[signal]] = data[signal] - Line_num_output[f'Line{line_num}'] = tmp_moordyn - + Lines = pd.DataFrame(data=time, columns=["time"]) + Lines = Lines.set_index("time") + for signal in range(1, num_signals): + Lines[signals[signal]] = data[signal] + moorDyn_output = {"Lines": Lines} + + Line_num_output = {} + for line_num in range(1, num_lines + 1): + tmp_moordyn = moorDyn[0][0][f"Line{line_num}"][0][0][0] + signals = tmp_moordyn.dtype.names + num_signals = len(tmp_moordyn.dtype.names) + data = tmp_moordyn[0] + time = data[0] + tmp_moordyn = pd.DataFrame(data=time, columns=["time"]) + tmp_moordyn = tmp_moordyn.set_index("time") + for signal in range(1, num_signals): + tmp_moordyn[signals[signal]] = data[signal] + Line_num_output[f"Line{line_num}"] = tmp_moordyn + moorDyn_output.update(Line_num_output) - + except: - print("moorDyn class not used") + print("moorDyn class not used") moorDyn_output = [] - ###################################### ## import wecSim ptosim class - # + # # name: '' # pistonCF: [1×1 struct] # pistonNCF: [1×1 struct] @@ -372,19 +396,18 @@ def _write_mooring_output(mooring): # pmLinearGenerator: [1×1 struct] # pmRotaryGenerator: [1×1 struct] # motionMechanism: [1×1 struct] - ###################################### + ###################################### try: - ptosim = output['ptosim'] - num_ptosim = len(ptosim[0][0]['name'][0]) # number of ptosim - print("ptosim class output not supported at this time") + ptosim = output["ptosim"] + num_ptosim = len(ptosim[0][0]["name"][0]) # number of ptosim + print("ptosim class output not supported at this time") except: - print("ptosim class not used") + print("ptosim class not used") ptosim_output = [] - - + ###################################### ## import wecSim cable class - # + # # name: '' # time: [iterations x 1 double] # position: [iterations x 6 double] @@ -392,9 +415,9 @@ def _write_mooring_output(mooring): # forcecable: [iterations x 6 double] ###################################### try: - cables = output['cables'] - num_cables = len(cables[0][0]['name'][0]) - name = [] + cables = output["cables"] + num_cables = len(cables[0][0]["name"][0]) + name = [] time = [] position = [] velocity = [] @@ -403,56 +426,59 @@ def _write_mooring_output(mooring): forceactuation = [] forceconstraint = [] for cable in range(num_cables): - name.append(cables[0][0]['name'][0][cable][0]) - time.append(cables[0][0]['time'][0][cable]) - position.append(cables[0][0]['position'][0][cable]) - velocity.append(cables[0][0]['velocity'][0][cable]) - acceleration.append(cables[0][0]['acceleration'][0][cable]) - forcetotal.append(cables[0][0]['forceTotal'][0][cable]) - forceactuation.append(cables[0][0]['forceActuation'][0][cable]) - forceconstraint.append(cables[0][0]['forceConstraint'][0][cable]) + name.append(cables[0][0]["name"][0][cable][0]) + time.append(cables[0][0]["time"][0][cable]) + position.append(cables[0][0]["position"][0][cable]) + velocity.append(cables[0][0]["velocity"][0][cable]) + acceleration.append(cables[0][0]["acceleration"][0][cable]) + forcetotal.append(cables[0][0]["forceTotal"][0][cable]) + forceactuation.append(cables[0][0]["forceActuation"][0][cable]) + forceconstraint.append(cables[0][0]["forceConstraint"][0][cable]) except: - num_cables = 0 + num_cables = 0 ###################################### ## create cable_output DataFrame - ###################################### + ###################################### def _write_cable_output(cable): - for dof in range(6): - tmp_cable[f'position_dof{dof+1}'] = position[cable][:,dof] - tmp_cable[f'velocity_dof{dof+1}'] = velocity[cable][:,dof] - tmp_cable[f'acceleration_dof{dof+1}'] = acceleration[cable][:,dof] - tmp_cable[f'forcetotal_dof{dof+1}'] = forcetotal[cable][:,dof] - tmp_cable[f'forceactuation_dof{dof+1}'] = forceactuation[cable][:,dof] - tmp_cable[f'forceconstraint_dof{dof+1}'] = forceconstraint[cable][:,dof] + for dof in range(6): + tmp_cable[f"position_dof{dof+1}"] = position[cable][:, dof] + tmp_cable[f"velocity_dof{dof+1}"] = velocity[cable][:, dof] + tmp_cable[f"acceleration_dof{dof+1}"] = acceleration[cable][:, dof] + tmp_cable[f"forcetotal_dof{dof+1}"] = forcetotal[cable][:, dof] + tmp_cable[f"forceactuation_dof{dof+1}"] = forceactuation[cable][:, dof] + tmp_cable[f"forceconstraint_dof{dof+1}"] = forceconstraint[cable][:, dof] return tmp_cable - if num_cables >= 1: + if num_cables >= 1: cable_output = {} for cable in range(num_cables): - tmp_cable = pd.DataFrame(data = time[0],columns=['time']) - tmp_cable = tmp_cable.set_index('time') + tmp_cable = pd.DataFrame(data=time[0], columns=["time"]) + tmp_cable = tmp_cable.set_index("time") tmp_cable.name = name[cable] - if num_cables == 1: + if num_cables == 1: cable_output = _write_cable_output(cable) - elif num_cables > 1: - cable_output[f'cable{cable+1}'] = _write_cable_output(cable) + elif num_cables > 1: + cable_output[f"cable{cable+1}"] = _write_cable_output(cable) else: - print("cable class not used") + print("cable class not used") cable_output = [] + ############################################ + ## create wecSim output - Dict of DataFrames + ############################################ + ws_output = { + "wave": wave_output, + "bodies": body_output, + "ptos": pto_output, + "constraints": constraint_output, + "mooring": mooring_output, + "moorDyn": moorDyn_output, + "ptosim": ptosim_output, + "cables": cable_output, + } + if not to_pandas: + ws_output = convert_nested_dict_and_pandas(ws_output) - ###################################### - ## create wecSim output DataFrame of Dict - ###################################### - ws_output = {'wave' : wave_output, - 'bodies' : body_output, - 'ptos' : pto_output, - 'constraints' : constraint_output, - 'mooring' : mooring_output, - 'moorDyn': moorDyn_output, - 'ptosim' : ptosim_output, - 'cables': cable_output - } - return ws_output + return ws_output diff --git a/mhkit/wave/performance.py b/mhkit/wave/performance.py index 2b96809a9..02cf1670a 100644 --- a/mhkit/wave/performance.py +++ b/mhkit/wave/performance.py @@ -1,37 +1,47 @@ import numpy as np import pandas as pd -import xarray +import xarray as xr import types from scipy.stats import binned_statistic_2d as _binned_statistic_2d from mhkit import wave import matplotlib.pylab as plt from os.path import join +from mhkit.utils import convert_to_dataarray, convert_to_dataset -def capture_length(P, J): + +def capture_length(P, J, to_pandas=True): """ Calculates the capture length (often called capture width). Parameters ------------ - P: numpy array or pandas Series + P: numpy array, pandas Series, pandas DataFrame, xarray DataArray, or xarray Dataset Power [W] - J: numpy array or pandas Series + J: numpy array, pandas Series, pandas DataFrame, xarray DataArray, or xarray Dataset Omnidirectional wave energy flux [W/m] + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. Returns --------- - L: numpy array or pandas Series + L: pandas Series or xarray DataArray Capture length [m] """ - assert isinstance(P, (np.ndarray, pd.Series)), 'P must be of type np.ndarray or pd.Series' - assert isinstance(J, (np.ndarray, pd.Series)), 'J must be of type np.ndarray or pd.Series' + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + + P = convert_to_dataarray(P) + J = convert_to_dataarray(J) - L = P/J + L = P / J + + if to_pandas: + L = L.to_pandas() return L -def statistics(X): +def statistics(X, to_pandas=True): """ Calculates statistics, including count, mean, standard deviation (std), min, percentiles (25%, 50%, 75%), and max. @@ -41,18 +51,35 @@ def statistics(X): Parameters ------------ - X: numpy array or pandas Series + X: numpy array, pandas Series, pandas DataFrame, xarray DataArray, or xarray Dataset Data + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. Returns --------- - stats: pandas Series + stats: pandas Series or xarray DataArray Statistics """ - assert isinstance(X, (np.ndarray, pd.Series)), 'X must be of type np.ndarray or pd.Series' + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + + X = convert_to_dataarray(X) - stats = pd.Series(X).describe() - stats['std'] = _std_ddof1(X) + count = X.count().item() + mean = X.mean().item() + std = _std_ddof1(X) + q = X.quantile([0.0, 0.25, 0.5, 0.75, 1.0]).values + variables = ["count", "mean", "std", "min", "25%", "50%", "75%", "max"] + + stats = xr.DataArray( + data=[count, mean, std, q[0], q[1], q[2], q[3], q[4]], + dims="index", + coords={"index": variables}, + ) + + if to_pandas: + stats = stats.to_pandas() return stats @@ -71,33 +98,39 @@ def _performance_matrix(X, Y, Z, statistic, x_centers, y_centers): # General performance matrix function # Convert bin centers to edges - xi = [np.mean([x_centers[i], x_centers[i+1]]) for i in range(len(x_centers)-1)] - xi.insert(0,-np.inf) + xi = [np.mean([x_centers[i], x_centers[i + 1]]) for i in range(len(x_centers) - 1)] + xi.insert(0, -np.inf) xi.append(np.inf) - yi = [np.mean([y_centers[i], y_centers[i+1]]) for i in range(len(y_centers)-1)] - yi.insert(0,-np.inf) + yi = [np.mean([y_centers[i], y_centers[i + 1]]) for i in range(len(y_centers) - 1)] + yi.insert(0, -np.inf) yi.append(np.inf) # Override standard deviation with degree of freedom equal to 1 - if statistic == 'std': + if statistic == "std": statistic = _std_ddof1 # Provide function to compute frequency def _frequency(a): - return len(a)/len(Z) - if statistic == 'frequency': + return len(a) / len(Z) + + if statistic == "frequency": statistic = _frequency - zi, x_edge, y_edge, binnumber = _binned_statistic_2d(X, Y, Z, statistic, - bins=[xi,yi], expand_binnumbers=False) + zi, x_edge, y_edge, binnumber = _binned_statistic_2d( + X, Y, Z, statistic, bins=[xi, yi], expand_binnumbers=False + ) - M = pd.DataFrame(zi, index=x_centers, columns=y_centers) + M = xr.DataArray( + data=zi, + dims=["x_centers", "y_centers"], + coords={"x_centers": x_centers, "y_centers": y_centers}, + ) return M -def capture_length_matrix(Hm0, Te, L, statistic, Hm0_bins, Te_bins): +def capture_length_matrix(Hm0, Te, L, statistic, Hm0_bins, Te_bins, to_pandas=True): """ Generates a capture length matrix for a given statistic @@ -106,11 +139,11 @@ def capture_length_matrix(Hm0, Te, L, statistic, Hm0_bins, Te_bins): Parameters ------------ - Hm0: numpy array or pandas Series + Hm0: numpy array, pandas Series, pandas DataFrame, xarray DataArray, or xarray Dataset Significant wave height from spectra [m] - Te: numpy array or pandas Series + Te: numpy array, pandas Series, pandas DataFrame, xarray DataArray, or xarray Dataset Energy period from spectra [s] - L : numpy array or pandas Series + L : numpy array, pandas Series, pandas DataFrame, xarray DataArray, or xarray Dataset Capture length [m] statistic: string Statistic for each bin, options include: 'mean', 'std', 'median', @@ -120,37 +153,50 @@ def capture_length_matrix(Hm0, Te, L, statistic, Hm0_bins, Te_bins): Bin centers for Hm0 [m] Te_bins: numpy array Bin centers for Te [s] + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. Returns --------- - LM: pandas DataFrames + LM: pandas DataFrame or xarray DataArray Capture length matrix with index equal to Hm0_bins and columns equal to Te_bins """ - assert isinstance(Hm0, (np.ndarray, pd.Series)), 'Hm0 must be of type np.ndarray or pd.Series' - assert isinstance(Te, (np.ndarray, pd.Series)), 'Te must be of type np.ndarray or pd.Series' - assert isinstance(L, (np.ndarray, pd.Series)), 'L must be of type np.ndarray or pd.Series' - assert isinstance(statistic, (str, types.FunctionType)), 'statistic must be of type str or callable' - assert isinstance(Hm0_bins, np.ndarray), 'Hm0_bins must be of type np.ndarray' - assert isinstance(Te_bins, np.ndarray), 'Te_bins must be of type np.ndarray' + Hm0 = convert_to_dataarray(Hm0) + Te = convert_to_dataarray(Te) + L = convert_to_dataarray(L) + + if not isinstance(statistic, (str, types.FunctionType)): + raise TypeError( + f"statistic must be of type str or callable. Got: {type(statistic)}" + ) + if not isinstance(Hm0_bins, np.ndarray): + raise TypeError(f"Hm0_bins must be of type np.ndarray. Got: {type(Hm0_bins)}") + if not isinstance(Te_bins, np.ndarray): + raise TypeError(f"Te_bins must be of type np.ndarray. Got: {type(Te_bins)}") + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") LM = _performance_matrix(Hm0, Te, L, statistic, Hm0_bins, Te_bins) + if to_pandas: + LM = LM.to_pandas() + return LM -def wave_energy_flux_matrix(Hm0, Te, J, statistic, Hm0_bins, Te_bins): +def wave_energy_flux_matrix(Hm0, Te, J, statistic, Hm0_bins, Te_bins, to_pandas=True): """ Generates a wave energy flux matrix for a given statistic Parameters ------------ - Hm0: numpy array or pandas Series + Hm0: numpy array, pandas Series, pandas DataFrame, xarray DataArray, or xarray Dataset Significant wave height from spectra [m] - Te: numpy array or pandas Series + Te: numpy array, pandas Series, pandas DataFrame, xarray DataArray, or xarray Dataset Energy period from spectra [s] - J : numpy array or pandas Series + J : numpy array, pandas Series, pandas DataFrame, xarray DataArray, or xarray Dataset Wave energy flux from spectra [W/m] statistic: string Statistic for each bin, options include: 'mean', 'std', 'median', @@ -160,25 +206,38 @@ def wave_energy_flux_matrix(Hm0, Te, J, statistic, Hm0_bins, Te_bins): Bin centers for Hm0 [m] Te_bins: numpy array Bin centers for Te [s] + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. Returns --------- - JM: pandas DataFrames + JM: pandas DataFrame or xarray DataArray Wave energy flux matrix with index equal to Hm0_bins and columns equal to Te_bins """ - assert isinstance(Hm0, (np.ndarray, pd.Series)), 'Hm0 must be of type np.ndarray or pd.Series' - assert isinstance(Te, (np.ndarray, pd.Series)), 'Te must be of type np.ndarray or pd.Series' - assert isinstance(J, (np.ndarray, pd.Series)), 'J must be of type np.ndarray or pd.Series' - assert isinstance(statistic, (str, callable)), 'statistic must be of type str or callable' - assert isinstance(Hm0_bins, np.ndarray), 'Hm0_bins must be of type np.ndarray' - assert isinstance(Te_bins, np.ndarray), 'Te_bins must be of type np.ndarray' + Hm0 = convert_to_dataarray(Hm0) + Te = convert_to_dataarray(Te) + J = convert_to_dataarray(J) + if not isinstance(statistic, (str, callable)): + raise TypeError( + f"statistic must be of type str or callable. Got: {type(statistic)}" + ) + if not isinstance(Hm0_bins, np.ndarray): + raise TypeError(f"Hm0_bins must be of type np.ndarray. Got: {type(Hm0_bins)}") + if not isinstance(Te_bins, np.ndarray): + raise TypeError(f"Te_bins must be of type np.ndarray. Got: {type(Te_bins)}") + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") JM = _performance_matrix(Hm0, Te, J, statistic, Hm0_bins, Te_bins) + if to_pandas: + JM = JM.to_pandas() + return JM + def power_matrix(LM, JM): """ Generates a power matrix from a capture length matrix and wave energy @@ -186,33 +245,40 @@ def power_matrix(LM, JM): Parameters ------------ - LM: pandas DataFrame + LM: pandas DataFrame or xarray Dataset Capture length matrix - JM: pandas DataFrame + JM: pandas DataFrame or xarray Dataset Wave energy flux matrix Returns --------- - PM: pandas DataFrames + PM: pandas DataFrame or xarray Dataset Power matrix """ - assert isinstance(LM, pd.DataFrame), 'LM must be of type pd.DataFrame' - assert isinstance(JM, pd.DataFrame), 'JM must be of type pd.DataFrame' + if not isinstance(LM, (pd.DataFrame, xr.Dataset)): + raise TypeError( + f"LM must be of type pd.DataFrame or xr.Dataset. Got: {type(LM)}" + ) + if not isinstance(JM, (pd.DataFrame, xr.Dataset)): + raise TypeError( + f"JM must be of type pd.DataFrame or xr.Dataset. Got: {type(JM)}" + ) - PM = LM*JM + PM = LM * JM return PM + def mean_annual_energy_production_timeseries(L, J): """ Calculates mean annual energy production (MAEP) from time-series Parameters ------------ - L: numpy array or pandas Series + L: numpy array, pandas Series, pandas DataFrame, xarray DataArray, or xarray Dataset Capture length - J: numpy array or pandas Series + J: numpy array, pandas Series, pandas DataFrame, xarray DataArray, or xarray Dataset Wave energy flux Returns @@ -221,16 +287,17 @@ def mean_annual_energy_production_timeseries(L, J): Mean annual energy production """ - assert isinstance(L, (np.ndarray, pd.Series)), 'L must be of type np.ndarray or pd.Series' - assert isinstance(J, (np.ndarray, pd.Series)), 'J must be of type np.ndarray or pd.Series' + L = convert_to_dataarray(L) + J = convert_to_dataarray(J) - T = 8766 # Average length of a year (h) + T = 8766 # Average length of a year (h) n = len(L) - maep = T/n * np.sum(L * J) + maep = T / n * (L * J).sum().item() return maep + def mean_annual_energy_production_matrix(LM, JM, frequency): """ Calculates mean annual energy production (MAEP) from matrix data @@ -238,11 +305,11 @@ def mean_annual_energy_production_matrix(LM, JM, frequency): Parameters ------------ - LM: pandas DataFrame + LM: pandas DataFrame or xarray Dataset Capture length - JM: pandas DataFrame + JM: pandas DataFrame or xarray Dataset Wave energy flux - frequency: pandas DataFrame + frequency: pandas DataFrame or xarray Dataset Data frequency for each bin Returns @@ -251,29 +318,45 @@ def mean_annual_energy_production_matrix(LM, JM, frequency): Mean annual energy production """ - assert isinstance(LM, pd.DataFrame), 'LM must be of type pd.DataFrame' - assert isinstance(JM, pd.DataFrame), 'JM must be of type pd.DataFrame' - assert isinstance(frequency, pd.DataFrame), 'frequency must be of type pd.DataFrame' - assert LM.shape == JM.shape == frequency.shape, 'LM, JM, and frequency must be of the same size' - #assert frequency.sum().sum() == 1 + LM = convert_to_dataarray(LM) + JM = convert_to_dataarray(JM) + frequency = convert_to_dataarray(frequency) + + if not LM.shape == JM.shape == frequency.shape: + raise ValueError("LM, JM, and frequency must be of the same size") + if not np.abs(frequency.sum() - 1) < 1e-6: + raise ValueError("Frequency components must sum to one.") - T = 8766 # Average length of a year (h) + T = 8766 # Average length of a year (h) maep = T * np.nansum(LM * JM * frequency) return maep -def power_performance_workflow(S, h, P, statistic, frequency_bins=None, deep=False, rho=1205, g=9.80665, ratio=2, show_values=False, savepath=""): + +def power_performance_workflow( + S, + h, + P, + statistic, + frequency_bins=None, + deep=False, + rho=1205, + g=9.80665, + ratio=2, + show_values=False, + savepath="", +): """ High-level function to compute power performance quantities of interest following IEC TS 62600-100 for given wave spectra. Parameters ------------ - S: pandas DataFrame or Series + S: pandas Series, pandas DataFrame, xarray DataArray, or xarray Dataset Spectral density [m^2/Hz] indexed by frequency [Hz] h: float Water depth [m] - P: numpy array or pandas Series + P: numpy ndarray, pandas DataFrame, pandas Series, xarray DataArray, or xarray Dataset Power [W] statistic: string or list of strings Statistics for plotting capture length matrices, @@ -309,59 +392,95 @@ def power_performance_workflow(S, h, P, statistic, frequency_bins=None, deep=Fal maep_matrix: float Mean annual energy production """ - assert isinstance(S, (pd.DataFrame,pd.Series)), 'S must be of type pd.DataFrame or pd.Series' - assert isinstance(h, (int,float)), 'h must be of type int or float' - assert isinstance(P, (np.ndarray, pd.Series)), 'P must be of type np.ndarray or pd.Series' - assert isinstance(deep, bool), 'deep must be of type bool' - assert isinstance(rho, (int,float)), 'rho must be of type int or float' - assert isinstance(g, (int,float)), 'g must be of type int or float' - assert isinstance(ratio, (int,float)), 'ratio must be of type int or float' + S = convert_to_dataset(S) + if not isinstance(h, (int, float)): + raise TypeError(f"h must be of type int or float. Got: {type(h)}") + P = convert_to_dataarray(P) + if not isinstance(deep, bool): + raise TypeError(f"deep must be of type bool. Got: {type(deep)}") + if not isinstance(rho, (int, float)): + raise TypeError(f"rho must be of type int or float. Got: {type(rho)}") + if not isinstance(g, (int, float)): + raise TypeError(f"g must be of type int or float. Got: {type(g)}") + if not isinstance(ratio, (int, float)): + raise TypeError(f"ratio must be of type int or float. Got: {type(ratio)}") # Compute the enegy periods from the spectra data - Te = wave.resource.energy_period(S, frequency_bins=frequency_bins) - Te = Te['Te'] + Te = wave.resource.energy_period(S, frequency_bins=frequency_bins, to_pandas=False) + Te = Te["Te"] # Compute the significant wave height from the NDBC spectra data - Hm0 = wave.resource.significant_wave_height(S, frequency_bins=frequency_bins) - Hm0 = Hm0['Hm0'] + Hm0 = wave.resource.significant_wave_height( + S, frequency_bins=frequency_bins, to_pandas=False + ) + Hm0 = Hm0["Hm0"] # Compute the energy flux from spectra data and water depth - J = wave.resource.energy_flux(S, h, deep=deep, rho=rho, g=g, ratio=ratio) - J = J['J'] + J = wave.resource.energy_flux( + S, h, deep=deep, rho=rho, g=g, ratio=ratio, to_pandas=False + ) + J = J["J"] # Calculate capture length from power and energy flux - L = wave.performance.capture_length(P,J) + L = wave.performance.capture_length(P, J, to_pandas=False) # Generate bins for Hm0 and Te, input format (start, stop, step_size) - Hm0_bins = np.arange(0, Hm0.values.max() + .5, .5) + Hm0_bins = np.arange(0, Hm0.values.max() + 0.5, 0.5) Te_bins = np.arange(0, Te.values.max() + 1, 1) # Create capture length matrices for each statistic based on IEC/TS 62600-100 # Median, sum, frequency additionally provided - LM = xarray.Dataset() - LM['mean'] = wave.performance.capture_length_matrix(Hm0, Te, L, 'mean', Hm0_bins, Te_bins) - LM['std'] = wave.performance.capture_length_matrix(Hm0, Te, L, 'std', Hm0_bins, Te_bins) - LM['median'] = wave.performance.capture_length_matrix(Hm0, Te, L, 'median', Hm0_bins, Te_bins) - LM['count'] = wave.performance.capture_length_matrix(Hm0, Te, L, 'count', Hm0_bins, Te_bins) - LM['sum'] = wave.performance.capture_length_matrix(Hm0, Te, L, 'sum', Hm0_bins, Te_bins) - LM['min'] = wave.performance.capture_length_matrix(Hm0, Te, L, 'min', Hm0_bins, Te_bins) - LM['max'] = wave.performance.capture_length_matrix(Hm0, Te, L, 'max', Hm0_bins, Te_bins) - LM['freq'] = wave.performance.capture_length_matrix(Hm0, Te, L,'frequency', Hm0_bins, Te_bins) + LM = xr.Dataset() + LM["mean"] = wave.performance.capture_length_matrix( + Hm0, Te, L, "mean", Hm0_bins, Te_bins, to_pandas=False + ) + LM["std"] = wave.performance.capture_length_matrix( + Hm0, Te, L, "std", Hm0_bins, Te_bins, to_pandas=False + ) + LM["median"] = wave.performance.capture_length_matrix( + Hm0, Te, L, "median", Hm0_bins, Te_bins, to_pandas=False + ) + LM["count"] = wave.performance.capture_length_matrix( + Hm0, Te, L, "count", Hm0_bins, Te_bins, to_pandas=False + ) + LM["sum"] = wave.performance.capture_length_matrix( + Hm0, Te, L, "sum", Hm0_bins, Te_bins, to_pandas=False + ) + LM["min"] = wave.performance.capture_length_matrix( + Hm0, Te, L, "min", Hm0_bins, Te_bins, to_pandas=False + ) + LM["max"] = wave.performance.capture_length_matrix( + Hm0, Te, L, "max", Hm0_bins, Te_bins, to_pandas=False + ) + LM["freq"] = wave.performance.capture_length_matrix( + Hm0, Te, L, "frequency", Hm0_bins, Te_bins, to_pandas=False + ) # Create wave energy flux matrix using mean - JM = wave.performance.wave_energy_flux_matrix(Hm0, Te, J, 'mean', Hm0_bins, Te_bins) + JM = wave.performance.wave_energy_flux_matrix( + Hm0, Te, J, "mean", Hm0_bins, Te_bins, to_pandas=False + ) # Calculate maep from matrix - maep_matrix = wave.performance.mean_annual_energy_production_matrix(LM['mean'].to_pandas(), JM, LM['freq'].to_pandas()) + maep_matrix = wave.performance.mean_annual_energy_production_matrix( + LM["mean"], JM, LM["freq"] + ) # Plot capture length matrices using statistic for str in statistic: if str not in list(LM.data_vars): - print('ERROR: Invalid Statistics passed') + print("ERROR: Invalid Statistics passed") continue - plt.figure(figsize=(12,12), num='Capture Length Matrix ' + str) + plt.figure(figsize=(12, 12), num="Capture Length Matrix " + str) ax = plt.gca() - wave.graphics.plot_matrix(LM[str].to_pandas(), xlabel='Te (s)', ylabel='Hm0 (m)', zlabel= str + ' of Capture Length', show_values=show_values, ax=ax) - plt.savefig(join(savepath,'Capture Length Matrix ' + str + '.png')) + wave.graphics.plot_matrix( + LM[str], + xlabel="Te (s)", + ylabel="Hm0 (m)", + zlabel=str + " of Capture Length", + show_values=show_values, + ax=ax, + ) + plt.savefig(join(savepath, "Capture Length Matrix " + str + ".png")) return LM, maep_matrix diff --git a/mhkit/wave/resource.py b/mhkit/wave/resource.py index 5e6f54790..e38214eeb 100644 --- a/mhkit/wave/resource.py +++ b/mhkit/wave/resource.py @@ -1,18 +1,28 @@ from scipy.optimize import fsolve as _fsolve from scipy import signal as _signal import pandas as pd +import xarray as xr import numpy as np -from scipy import stats +from mhkit.utils import to_numeric_array, convert_to_dataarray, convert_to_dataset + ### Spectrum -def elevation_spectrum(eta, sample_rate, nnft, window='hann', - detrend=True, noverlap=None): +def elevation_spectrum( + eta, + sample_rate, + nnft, + window="hann", + detrend=True, + noverlap=None, + time_dimension="", + to_pandas=True, +): """ Calculates the wave energy spectrum from wave elevation time-series Parameters ------------ - eta: pandas DataFrame + eta: pandas DataFrame, pandas Series, xarray DataArray, or xarray Dataset Wave surface elevation [m] indexed by time [datetime or s] sample_rate: float Data frequency [Hz] @@ -27,69 +37,110 @@ def elevation_spectrum(eta, sample_rate, nnft, window='hann', noverlap: int, optional Number of points to overlap between segments. If None, ``noverlap = nperseg / 2``. Defaults to None. + time_dimension: string (optional) + Name of the xarray dimension corresponding to time. If not supplied, + defaults to the first dimension. Does not affect pandas input. + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. Returns --------- - S: pandas DataFrame + S: pandas DataFrame or xr.Dataset Spectral density [m^2/Hz] indexed by frequency [Hz] """ # TODO: Add confidence intervals, equal energy frequency spacing, and NDBC # frequency spacing - # TODO: may need an assert for the length of nnft- signal.welch breaks when nfft is too short - # TODO: check for uniform sampling - assert isinstance(eta, pd.DataFrame), 'eta must be of type pd.DataFrame' - assert isinstance(sample_rate, (float,int)), 'sample_rate must be of type int or float' - assert isinstance(nnft, int), 'nnft must be of type int' - assert isinstance(window, str), 'window must be of type str' - assert isinstance(detrend, bool), 'detrend must be of type bool' - assert nnft > 0, 'nnft must be > 0' - assert sample_rate > 0, 'sample_rate must be > 0' - - S = pd.DataFrame() - for col in eta.columns: - data = eta[col] + # TODO: may need to raise an error for the length of nnft- signal.welch breaks when nfft is too short + eta = convert_to_dataset(eta) + if not isinstance(sample_rate, (float, int)): + raise TypeError( + f"sample_rate must be of type int or float. Got: {type(sample_rate)}" + ) + if not isinstance(nnft, int): + raise TypeError(f"nnft must be of type int. Got: {type(nnft)}") + if not isinstance(window, str): + raise TypeError(f"window must be of type str. Got: {type(window)}") + if not isinstance(detrend, bool): + raise TypeError(f"detrend must be of type bool. Got: {type(detrend)}") + if not nnft > 0: + raise ValueError(f"nnft must be > 0. Got: {nnft}") + if not sample_rate > 0: + raise ValueError(f"sample_rate must be > 0. Got: {sample_rate}") + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + + if time_dimension == "": + time_dimension = list(eta.dims)[0] + else: + if time_dimension not in list(eta.dims): + raise ValueError( + f"time_dimension is not a dimension of eta ({list(eta.dims)}). Got: {time_dimension}." + ) + time = eta[time_dimension] + delta_t = time.values[1] - time.values[0] + if not np.allclose(time.diff(dim=time_dimension)[1:], delta_t): + raise ValueError( + "Time bins are not evenly spaced. Create a constant " + + "temporal spacing for eta." + ) + + S = xr.Dataset() + for var in eta.data_vars: + data = eta[var] if detrend: - data = _signal.detrend(data.dropna(), axis=-1, type='linear', bp=0) - [f, wave_spec_measured] = _signal.welch(data, fs=sample_rate, window=window, - nperseg=nnft, nfft=nnft, noverlap=noverlap) - S[col] = wave_spec_measured - S.index=f - S.columns = eta.columns + data = _signal.detrend( + data.dropna(dim=time_dimension), axis=-1, type="linear", bp=0 + ) + [f, wave_spec_measured] = _signal.welch( + data, + fs=sample_rate, + window=window, + nperseg=nnft, + nfft=nnft, + noverlap=noverlap, + ) + S[var] = (["Frequency"], wave_spec_measured) + S = S.assign_coords({"Frequency": f}) + + if to_pandas: + S = S.to_dataframe() return S -def pierson_moskowitz_spectrum(f, Tp, Hs): +def pierson_moskowitz_spectrum(f, Tp, Hs, to_pandas=True): """ Calculates Pierson-Moskowitz Spectrum from IEC TS 62600-2 ED2 Annex C.2 (2019) Parameters ------------ - f: numpy array + f: list, np.ndarray, pd.Series, xr.DataArray Frequency [Hz] Tp: float/int Peak period [s] Hs: float/int Significant wave height [m] + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. Returns --------- - S: pandas DataFrame + S: xarray Dataset Spectral density [m^2/Hz] indexed frequency [Hz] """ - try: - f = np.array(f) - except: - pass - assert isinstance(f, np.ndarray), 'f must be of type np.ndarray' - assert isinstance(Tp, (int,float)), 'Tp must be of type int or float' - assert isinstance(Hs, (int,float)), 'Hs must be of type int or float' + f = to_numeric_array(f, "f") + if not isinstance(Tp, (int, float)): + raise TypeError(f"Tp must be of type int or float. Got: {type(Tp)}") + if not isinstance(Hs, (int, float)): + raise TypeError(f"Hs must be of type int or float. Got: {type(Hs)}") + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") f.sort() - B_PM = (5/4)*(1/Tp)**4 - A_PM = B_PM*(Hs/2)**2 + B_PM = (5 / 4) * (1 / Tp) ** 4 + A_PM = B_PM * (Hs / 2) ** 2 # Avoid a divide by zero if the 0 frequency is provided # The zero frequency should always have 0 amplitude, otherwise @@ -99,22 +150,25 @@ def pierson_moskowitz_spectrum(f, Tp, Hs): inds = range(1, f.size) else: inds = range(0, f.size) - - Sf[inds] = A_PM*f[inds]**(-5)*np.exp(-B_PM*f[inds]**(-4)) - col_name = 'Pierson-Moskowitz ('+str(Tp)+'s)' - S = pd.DataFrame(Sf, index=f, columns=[col_name]) + Sf[inds] = A_PM * f[inds] ** (-5) * np.exp(-B_PM * f[inds] ** (-4)) + + name = "Pierson-Moskowitz (" + str(Tp) + "s)" + S = xr.Dataset(data_vars={name: (["Frequency"], Sf)}, coords={"Frequency": f}) + + if to_pandas: + S = S.to_pandas() return S -def jonswap_spectrum(f, Tp, Hs, gamma=None): +def jonswap_spectrum(f, Tp, Hs, gamma=None, to_pandas=True): """ Calculates JONSWAP Spectrum from IEC TS 62600-2 ED2 Annex C.2 (2019) Parameters ------------ - f: numpy array + f: list, np.ndarray, pd.Series, xr.DataArray Frequency [Hz] Tp: float/int Peak period [s] @@ -122,26 +176,29 @@ def jonswap_spectrum(f, Tp, Hs, gamma=None): Significant wave height [m] gamma: float (optional) Gamma + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. Returns --------- - S: pandas DataFrame + S: pandas Series or xarray DataArray Spectral density [m^2/Hz] indexed frequency [Hz] """ - - try: - f = np.array(f) - except: - pass - assert isinstance(f, np.ndarray), 'f must be of type np.ndarray' - assert isinstance(Tp, (int,float)), 'Tp must be of type int or float' - assert isinstance(Hs, (int,float)), 'Hs must be of type int or float' - assert isinstance(gamma, (int,float, type(None))), \ - 'gamma must be of type int or float' + f = to_numeric_array(f, "f") + if not isinstance(Tp, (int, float)): + raise TypeError(f"Tp must be of type int or float. Got: {type(Tp)}") + if not isinstance(Hs, (int, float)): + raise TypeError(f"Hs must be of type int or float. Got: {type(Hs)}") + if not isinstance(gamma, (int, float, type(None))): + raise TypeError( + f"If specified, gamma must be of type int or float. Got: {type(gamma)}" + ) + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") f.sort() - B_PM = (5/4)*(1/Tp)**4 - A_PM = B_PM*(Hs/2)**2 + B_PM = (5 / 4) * (1 / Tp) ** 4 + A_PM = B_PM * (Hs / 2) ** 2 # Avoid a divide by zero if the 0 frequency is provided # The zero frequency should always have 0 amplitude, otherwise @@ -152,52 +209,65 @@ def jonswap_spectrum(f, Tp, Hs, gamma=None): else: inds = range(0, f.size) - S_f[inds] = A_PM*f[inds]**(-5)*np.exp(-B_PM*f[inds]**(-4)) + S_f[inds] = A_PM * f[inds] ** (-5) * np.exp(-B_PM * f[inds] ** (-4)) if not gamma: - TpsqrtHs = Tp/np.sqrt(Hs); + TpsqrtHs = Tp / np.sqrt(Hs) if TpsqrtHs <= 3.6: - gamma = 5; + gamma = 5 elif TpsqrtHs > 5: - gamma = 1; + gamma = 1 else: - gamma = np.exp(5.75 - 1.15*TpsqrtHs); + gamma = np.exp(5.75 - 1.15 * TpsqrtHs) # Cutoff frequencies for gamma function siga = 0.07 sigb = 0.09 - fp = 1/Tp # peak frequency - lind = np.where(f<=fp) - hind = np.where(f>fp) + fp = 1 / Tp # peak frequency + lind = np.where(f <= fp) + hind = np.where(f > fp) Gf = np.zeros(f.shape) - Gf[lind] = gamma**np.exp(-(f[lind]-fp)**2/(2*siga**2*fp**2)) - Gf[hind] = gamma**np.exp(-(f[hind]-fp)**2/(2*sigb**2*fp**2)) - C = 1- 0.287*np.log(gamma) - Sf = C*S_f*Gf + Gf[lind] = gamma ** np.exp(-((f[lind] - fp) ** 2) / (2 * siga**2 * fp**2)) + Gf[hind] = gamma ** np.exp(-((f[hind] - fp) ** 2) / (2 * sigb**2 * fp**2)) + C = 1 - 0.287 * np.log(gamma) + Sf = C * S_f * Gf + + name = "JONSWAP (" + str(Hs) + "m," + str(Tp) + "s)" + S = xr.Dataset(data_vars={name: (["Frequency"], Sf)}, coords={"Frequency": f}) - col_name = 'JONSWAP ('+str(Hs)+'m,'+str(Tp)+'s)' - S = pd.DataFrame(Sf, index=f, columns=[col_name]) + if to_pandas: + S = S.to_pandas() return S + ### Metrics -def surface_elevation(S, time_index, seed=None, frequency_bins=None, phases=None, method='ifft'): +def surface_elevation( + S, + time_index, + seed=None, + frequency_bins=None, + phases=None, + method="ifft", + frequency_dimension="", + to_pandas=True, +): """ Calculates wave elevation time-series from spectrum Parameters ------------ - S: pandas DataFrame + S: pandas DataFrame, pandas Series, xarray DataArray, or xarray Dataset Spectral density [m^2/Hz] indexed by frequency [Hz] time_index: numpy array Time used to create the wave elevation time-series [s], for example, time = np.arange(0,100,0.01) seed: int (optional) Random seed - frequency_bins: numpy array or pandas DataFrame (optional) + frequency_bins: numpy array, pandas Series, or xarray DataArray (optional) Bin widths for frequency of S. Required for unevenly sized bins - phases: numpy array or pandas DataFrame (optional) + phases: pandas DataFrame, pandas Series, xarray DataArray, or xarray Dataset Explicit phases for frequency components (overrides seed) for example, phases = np.random.rand(len(S)) * 2 * np.pi method: str (optional) @@ -207,372 +277,524 @@ def surface_elevation(S, time_index, seed=None, frequency_bins=None, phases=None 'sum_of_sines' explicitly sums each frequency component and used by default if frequency_bins are provided. The 'ifft' method is significantly faster. + frequency_dimension: string (optional) + Name of the xarray dimension corresponding to frequency. If not supplied, + defaults to the first dimension. Does not affect pandas input. + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. Returns --------- - eta: pandas DataFrame + eta: pandas DataFrame or xarray Dataset Wave surface elevation [m] indexed by time [s] """ - time_index = np.array(time_index) - assert isinstance(S, pd.DataFrame), 'S must be of type pd.DataFrame' - assert isinstance(time_index, np.ndarray), ('time_index must be of type' - 'np.ndarray') - assert isinstance(seed, (type(None),int)), 'seed must be of type int' - assert isinstance(frequency_bins, (type(None), np.ndarray, pd.DataFrame)),( - "frequency_bins must be of type None, np.ndarray, or pd,DataFrame") - assert isinstance(phases, (type(None), np.ndarray, pd.DataFrame)), ( - 'phases must be of type None, np.ndarray, or pd,DataFrame') - assert isinstance(method, str) - + time_index = to_numeric_array(time_index, "time_index") + S = convert_to_dataset(S) + if not isinstance(seed, (type(None), int)): + raise TypeError(f"If specified, seed must be of type int. Got: {type(seed)}") + if not isinstance(phases, type(None)): + phases = convert_to_dataset(phases) + if not isinstance(method, str): + raise TypeError(f"method must be of type str. Got: {type(method)}") + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + + if frequency_dimension == "": + frequency_dimension = list(S.coords)[0] + elif frequency_dimension not in list(S.dims): + raise ValueError( + f"frequency_dimension is not a dimension of S ({list(S.dims)}). Got: {frequency_dimension}." + ) + f = S[frequency_dimension] + + if not isinstance(frequency_bins, (type(None), np.ndarray)): + frequency_bins = convert_to_dataarray(frequency_bins) + elif isinstance(frequency_bins, np.ndarray): + frequency_bins = xr.DataArray( + data=frequency_bins, + dims=frequency_dimension, + coords={frequency_dimension: f}, + ) if frequency_bins is not None: - assert frequency_bins.squeeze().shape == (S.squeeze().shape[0],),( - 'shape of frequency_bins must match shape of S') + if not frequency_bins.squeeze().shape == f.shape: + raise ValueError( + "shape of frequency_bins must match shape of the frequency dimension of S" + ) if phases is not None: - assert phases.squeeze().shape == S.squeeze().shape,( - 'shape of phases must match shape of S') - + if not list(phases.data_vars) == list(S.data_vars): + raise ValueError("phases must have the same variable names as S") + for var in phases.data_vars: + if not phases[var].shape == S[var].shape: + raise ValueError( + "shape of variables in phases must match shape of variables in S" + ) if method is not None: - assert method == 'ifft' or method == 'sum_of_sines',( - f"unknown method {method}, options are 'ifft' or 'sum_of_sines'") - - if method == 'ifft': - assert S.index.values[0] == 0, ('ifft method must have zero frequency defined') - - f = pd.Series(S.index) - f.index = f + if not (method == "ifft" or method == "sum_of_sines"): + raise ValueError(f"Method must be 'ifft' or 'sum_of_sines'. Got: {method}") + + if method == "ifft": + if not f[0] == 0: + raise ValueError( + f"ifft method must have zero frequency defined. Lowest frequency is: {S.index.values[0]}" + ) + if frequency_bins is None: - delta_f = f.values[1]-f.values[0] - assert np.allclose(f.diff()[1:], delta_f) - elif isinstance(frequency_bins, np.ndarray): - delta_f = pd.Series(frequency_bins, index=S.index) - method = 'sum_of_sines' - elif isinstance(frequency_bins, pd.DataFrame): - assert len(frequency_bins.columns) == 1, ('frequency_bins must only' - 'contain 1 column') - delta_f = frequency_bins.squeeze() - method = 'sum_of_sines' - - if phases is None: - np.random.seed(seed) - phase = pd.DataFrame(2*np.pi*np.random.rand(S.shape[0], S.shape[1]), - index=S.index, columns=S.columns) - elif isinstance(phases, np.ndarray): - phase = pd.DataFrame(phases, index=S.index, columns=S.columns) - elif isinstance(phases, pd.DataFrame): - phase = phases - - omega = pd.Series(2*np.pi*f) - omega.index = f - - # Wave amplitude times delta f - A = 2*S - A = A.multiply(delta_f, axis=0) - A = np.sqrt(A) - - if method == 'ifft': - A_cmplx = A * (np.cos(phase) + 1j*np.sin(phase)) - - def func(v): - eta = np.fft.irfft(0.5 * v.values.squeeze() * time_index.size, time_index.size) - return pd.Series(data=eta, index=time_index) - - eta = A_cmplx.apply(func) - - elif method == 'sum_of_sines': - # Product of omega and time - B = np.outer(time_index, omega) - B = B.reshape((len(time_index), len(omega))) - B = pd.DataFrame(B, index=time_index, columns=omega.index) - - # wave elevation - eta = pd.DataFrame(columns=S.columns, index=time_index) - for mcol in eta.columns: - C = np.cos(B+phase[mcol]) - C = pd.DataFrame(C, index=time_index, columns=omega.index) - eta[mcol] = (C*A[mcol]).sum(axis=1) - + delta_f = f.values[1] - f.values[0] + if not np.allclose(f.diff(dim=frequency_dimension)[1:], delta_f): + raise ValueError( + "Frequency bins are not evenly spaced. " + + "Define 'frequency_bins' or create a constant " + + "frequency spacing for S." + ) + else: + if not len(frequency_bins.squeeze().shape) == 1: + raise ValueError("frequency_bins must only contain 1 column") + delta_f = frequency_bins + method = "sum_of_sines" + + omega = xr.DataArray( + data=2 * np.pi * f, dims=frequency_dimension, coords={frequency_dimension: f} + ) + + eta = xr.Dataset() + for var in S.data_vars: + if phases is None: + np.random.seed(seed) + phase = xr.DataArray( + data=2 * np.pi * np.random.rand(S[var].size), + dims="Frequency", + coords={"Frequency": f}, + ) + else: + phase = phases[var] + + # Wave amplitude times delta f + A = 2 * S[var] + A = A * delta_f + A = np.sqrt(A) + + if method == "ifft": + A_cmplx = A * (np.cos(phase) + 1j * np.sin(phase)) + eta_tmp = np.fft.irfft( + 0.5 * A_cmplx.values * time_index.size, time_index.size + ) + eta[var] = xr.DataArray( + data=eta_tmp, dims="Time", coords={"Time": time_index} + ) + + elif method == "sum_of_sines": + # Product of omega and time + B = np.outer(time_index, omega) + B = B.reshape((len(time_index), len(omega))) + B = xr.DataArray( + data=B, + dims=["Time", "Frequency"], + coords={"Time": time_index, "Frequency": f}, + ) + + # wave elevation + # eta = xr.DataArray(columns=S.columns, index=time_index) + # for mcol in eta.columns: + C = np.cos(B + phase) + # C = xr.DataArray(data=C, index=time_index, columns=omega.index) + eta[var] = (C * A).sum(axis=1) + + if to_pandas: + eta = eta.to_dataframe() + return eta -def frequency_moment(S, N, frequency_bins=None): +def frequency_moment(S, N, frequency_bins=None, frequency_dimension="", to_pandas=True): """ Calculates the Nth frequency moment of the spectrum Parameters ----------- - S: pandas DataFrame + S: pandas DataFrame, pandas Series, xarray DataArray, or xarray Dataset Spectral density [m^2/Hz] indexed by frequency [Hz] N: int Moment (0 for 0th, 1 for 1st ....) frequency_bins: numpy array or pandas Series (optional) Bin widths for frequency of S. Required for unevenly sized bins + frequency_dimension: string (optional) + Name of the xarray dimension corresponding to frequency. If not supplied, + defaults to the first dimension. Does not affect pandas input. + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. Returns ------- - m: pandas DataFrame + m: pandas DataFrame or xarray Dataset Nth Frequency Moment indexed by S.columns """ - assert isinstance(S, (pd.Series,pd.DataFrame)), 'S must be of type pd.DataFrame or pd.Series' - assert isinstance(N, int), 'N must be of type int' + S = convert_to_dataset(S) + if not isinstance(N, int): + raise TypeError(f"N must be of type int. Got: {type(N)}") + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + + if frequency_dimension == "": + frequency_dimension = list(S.coords)[0] + elif frequency_dimension not in list(S.dims): + raise ValueError( + f"frequency_dimension is not a dimension of S ({list(S.dims)}). Got: {frequency_dimension}." + ) + f = S[frequency_dimension] # Eq 8 in IEC 62600-101 - spec = S[S.index > 0] # omit frequency of 0 + S = S.sel({frequency_dimension: slice(1e-12, f.max())}) # omit frequency of 0 + f = S[frequency_dimension] # reset frequency_dimension without the 0 frequency - f = spec.index fn = np.power(f, N) if frequency_bins is None: - delta_f = pd.Series(f).diff() - delta_f[0] = f[1]-f[0] + delta_f = f.diff(dim=frequency_dimension) + delta_f0 = f[1] - f[0] + delta_f0 = delta_f0.assign_coords({frequency_dimension: f[0]}) + delta_f = xr.concat([delta_f0, delta_f], dim=frequency_dimension) else: + delta_f = xr.DataArray( + data=convert_to_dataarray(frequency_bins), + dims=frequency_dimension, + coords={frequency_dimension: f}, + ) - assert isinstance(frequency_bins, (np.ndarray,pd.Series,pd.DataFrame)),( - 'frequency_bins must be of type np.ndarray or pd.Series') - delta_f = pd.Series(frequency_bins) + m = S * fn * delta_f + m = m.sum(dim=frequency_dimension) - delta_f.index = f + m = _transform_dataset(m, "m" + str(N)) - m = spec.multiply(fn,axis=0).multiply(delta_f,axis=0) - m = m.sum(axis=0) - if isinstance(S,pd.Series): - m = pd.DataFrame(m, index=[0], columns = ['m'+str(N)]) - else: - m = pd.DataFrame(m, index=S.columns, columns = ['m'+str(N)]) + if to_pandas: + m = m.to_dataframe() return m -def significant_wave_height(S, frequency_bins=None): +def significant_wave_height(S, frequency_bins=None, to_pandas=True): """ Calculates wave height from spectra Parameters ------------ - S: pandas DataFrame + S: pandas DataFrame, pandas Series, xarray DataArray, or xarray Dataset Spectral density [m^2/Hz] indexed by frequency [Hz] frequency_bins: numpy array or pandas Series (optional) Bin widths for frequency of S. Required for unevenly sized bins + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. Returns --------- - Hm0: pandas DataFrame + Hm0: pandas DataFrame or xarray Dataset Significant wave height [m] index by S.columns """ - assert isinstance(S, (pd.Series,pd.DataFrame)), 'S must be of type pd.DataFrame or pd.Series' + S = convert_to_dataset(S) + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") # Eq 12 in IEC 62600-101 + m0 = frequency_moment(S, 0, frequency_bins=frequency_bins, to_pandas=False).rename( + {"m0": "Hm0"} + ) + Hm0 = 4 * np.sqrt(m0) - Hm0 = 4*np.sqrt(frequency_moment(S,0,frequency_bins=frequency_bins)) - Hm0.columns = ['Hm0'] + if to_pandas: + Hm0 = Hm0.to_dataframe() return Hm0 -def average_zero_crossing_period(S,frequency_bins=None): +def average_zero_crossing_period(S, frequency_bins=None, to_pandas=True): """ Calculates wave average zero crossing period from spectra Parameters ------------ - S: pandas DataFrame + S: pandas DataFrame, pandas Series, xarray DataArray, or xarray Dataset Spectral density [m^2/Hz] indexed by frequency [Hz] frequency_bins: numpy array or pandas Series (optional) Bin widths for frequency of S. Required for unevenly sized bins + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. Returns --------- - Tz: pandas DataFrame + Tz: pandas DataFrame or xarray Dataset Average zero crossing period [s] indexed by S.columns """ - assert isinstance(S, pd.DataFrame), 'S must be of type pd.DataFrame' + S = convert_to_dataset(S) + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") # Eq 15 in IEC 62600-101 - m0 = frequency_moment(S,0,frequency_bins=frequency_bins).squeeze() # convert to Series for calculation - m2 = frequency_moment(S,2,frequency_bins=frequency_bins).squeeze() + m0 = frequency_moment(S, 0, frequency_bins=frequency_bins, to_pandas=False).rename( + {"m0": "Tz"} + ) + m2 = frequency_moment(S, 2, frequency_bins=frequency_bins, to_pandas=False).rename( + {"m2": "Tz"} + ) + + Tz = np.sqrt(m0 / m2) - Tz = np.sqrt(m0/m2) - Tz = pd.DataFrame(Tz, index=S.columns, columns = ['Tz']) + if to_pandas: + Tz = Tz.to_dataframe() return Tz -def average_crest_period(S,frequency_bins=None): +def average_crest_period(S, frequency_bins=None, to_pandas=True): """ Calculates wave average crest period from spectra Parameters ------------ - S: pandas DataFrame + S: pandas DataFrame, pandas Series, xarray DataArray, or xarray Dataset Spectral density [m^2/Hz] indexed by frequency [Hz] frequency_bins: numpy array or pandas Series (optional) Bin widths for frequency of S. Required for unevenly sized bins + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. Returns --------- - Tavg: pandas DataFrame + Tavg: pandas DataFrame or xarray Dataset Average wave period [s] indexed by S.columns """ - assert isinstance(S, pd.DataFrame), 'S must be of type pd.DataFrame' + S = convert_to_dataset(S) + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + + m2 = frequency_moment(S, 2, frequency_bins=frequency_bins, to_pandas=False).rename( + {"m2": "Tavg"} + ) + m4 = frequency_moment(S, 4, frequency_bins=frequency_bins, to_pandas=False).rename( + {"m4": "Tavg"} + ) - m2 = frequency_moment(S,2,frequency_bins=frequency_bins).squeeze() # convert to Series for calculation - m4 = frequency_moment(S,4,frequency_bins=frequency_bins).squeeze() + Tavg = np.sqrt(m2 / m4) - Tavg = np.sqrt(m2/m4) - Tavg = pd.DataFrame(Tavg, index=S.columns, columns=['Tavg']) + if to_pandas: + Tavg = Tavg.to_dataframe() return Tavg -def average_wave_period(S,frequency_bins=None): +def average_wave_period(S, frequency_bins=None, to_pandas=True): """ Calculates mean wave period from spectra Parameters ------------ - S: pandas DataFrame + S: pandas DataFrame, pandas Series, xarray DataArray, or xarray Dataset Spectral density [m^2/Hz] indexed by frequency [Hz] frequency_bins: numpy array or pandas Series (optional) Bin widths for frequency of S. Required for unevenly sized bins + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. Returns --------- - Tm: pandas DataFrame + Tm: pandas DataFrame or xarray Dataset Mean wave period [s] indexed by S.columns """ - assert isinstance(S, pd.DataFrame), 'S must be of type pd.DataFrame' + S = convert_to_dataset(S) + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") - m0 = frequency_moment(S,0,frequency_bins=frequency_bins).squeeze() # convert to Series for calculation - m1 = frequency_moment(S,1,frequency_bins=frequency_bins).squeeze() + m0 = frequency_moment(S, 0, frequency_bins=frequency_bins, to_pandas=False).rename( + {"m0": "Tm"} + ) + m1 = frequency_moment(S, 1, frequency_bins=frequency_bins, to_pandas=False).rename( + {"m1": "Tm"} + ) - Tm = np.sqrt(m0/m1) - Tm = pd.DataFrame(Tm, index=S.columns, columns=['Tm']) + Tm = np.sqrt(m0 / m1) + + if to_pandas: + Tm = Tm.to_dataframe() return Tm -def peak_period(S): +def peak_period(S, frequency_dimension="", to_pandas=True): """ Calculates wave peak period from spectra Parameters ------------ - S: pandas DataFrame + S: pandas DataFrame, pandas Series, xarray DataArray, or xarray Dataset Spectral density [m^2/Hz] indexed by frequency [Hz] + frequency_dimension: string (optional) + Name of the xarray dimension corresponding to frequency. If not supplied, + defaults to the first dimension. Does not affect pandas input. + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. Returns --------- - Tp: pandas DataFrame + Tp: pandas DataFrame or xarray Dataset Wave peak period [s] indexed by S.columns """ - assert isinstance(S, pd.DataFrame), 'S must be of type pd.DataFrame' + S = convert_to_dataset(S) + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + + if frequency_dimension == "": + frequency_dimension = list(S.coords)[0] + elif frequency_dimension not in list(S.dims): + raise ValueError( + f"frequency_dimension is not a dimension of S ({list(S.dims)}). Got: {frequency_dimension}." + ) # Eq 14 in IEC 62600-101 - fp = S.idxmax(axis=0) # Hz + fp = S.idxmax(dim=frequency_dimension) # Hz + Tp = 1 / fp + + Tp = _transform_dataset(Tp, "Tp") - Tp = 1/fp - Tp = pd.DataFrame(Tp, index=S.columns, columns=["Tp"]) + if to_pandas: + Tp = Tp.to_dataframe() return Tp -def energy_period(S,frequency_bins=None): +def energy_period(S, frequency_bins=None, to_pandas=True): """ Calculates wave energy period from spectra Parameters ------------ - S: pandas DataFrame + S: pandas DataFrame, pandas Series, xarray DataArray, or xarray Dataset Spectral density [m^2/Hz] indexed by frequency [Hz] frequency_bins: numpy array or pandas Series (optional) Bin widths for frequency of S. Required for unevenly sized bins + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. Returns --------- - Te: pandas DataFrame + Te: pandas DataFrame or xarray Dataset Wave energy period [s] indexed by S.columns """ + S = convert_to_dataset(S) + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") - assert isinstance(S, (pd.Series,pd.DataFrame)), 'S must be of type pd.DataFrame or pd.Series' - - mn1 = frequency_moment(S,-1,frequency_bins=frequency_bins).squeeze() # convert to Series for calculation - m0 = frequency_moment(S,0,frequency_bins=frequency_bins).squeeze() + mn1 = frequency_moment( + S, -1, frequency_bins=frequency_bins, to_pandas=False + ).rename({"m-1": "Te"}) + m0 = frequency_moment(S, 0, frequency_bins=frequency_bins, to_pandas=False).rename( + {"m0": "Te"} + ) # Eq 13 in IEC 62600-101 - Te = mn1/m0 - if isinstance(S,pd.Series): - Te = pd.DataFrame(Te, index=[0], columns=['Te']) - else: - Te = pd.DataFrame(Te, S.columns, columns=['Te']) + Te = mn1 / m0 + if to_pandas: + Te = Te.to_dataframe() return Te -def spectral_bandwidth(S,frequency_bins=None): +def spectral_bandwidth(S, frequency_bins=None, to_pandas=True): """ Calculates bandwidth from spectra Parameters ------------ - S: pandas DataFrame + S: pandas DataFrame, pandas Series, xarray DataArray, or xarray Dataset Spectral density [m^2/Hz] indexed by frequency [Hz] frequency_bins: numpy array or pandas Series (optional) Bin widths for frequency of S. Required for unevenly sized bins + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. Returns --------- - e: pandas DataFrame + e: pandas DataFrame or xarray Dataset Spectral bandwidth [s] indexed by S.columns """ - assert isinstance(S, pd.DataFrame), 'S must be of type pd.DataFrame' + S = convert_to_dataset(S) + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") - m2 = frequency_moment(S,2,frequency_bins=frequency_bins).squeeze() # convert to Series for calculation - m0 = frequency_moment(S,0,frequency_bins=frequency_bins).squeeze() - m4 = frequency_moment(S,4,frequency_bins=frequency_bins).squeeze() + m2 = frequency_moment(S, 2, frequency_bins=frequency_bins, to_pandas=False).rename( + {"m2": "e"} + ) + m0 = frequency_moment(S, 0, frequency_bins=frequency_bins, to_pandas=False).rename( + {"m0": "e"} + ) + m4 = frequency_moment(S, 4, frequency_bins=frequency_bins, to_pandas=False).rename( + {"m4": "e"} + ) - e = np.sqrt(1- (m2**2)/(m0/m4)) - e = pd.DataFrame(e, index=S.columns, columns=['e']) + e = np.sqrt(1 - (m2**2) / (m0 / m4)) + + if to_pandas: + e = e.to_dataframe() return e -def spectral_width(S,frequency_bins=None): +def spectral_width(S, frequency_bins=None, to_pandas=True): """ Calculates wave spectral width from spectra Parameters ------------ - S: pandas DataFrame + S: pandas DataFrame, pandas Series, xarray DataArray, or xarray Dataset Spectral density [m^2/Hz] indexed by frequency [Hz] frequency_bins: numpy array or pandas Series (optional) Bin widths for frequency of S. Required for unevenly sized bins + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. Returns --------- - v: pandas DataFrame + v: pandas DataFrame or xarray Dataset Spectral width [m] indexed by S.columns """ - assert isinstance(S, pd.DataFrame), 'S must be of type pd.DataFrame' - - mn2 = frequency_moment(S,-2,frequency_bins=frequency_bins).squeeze() # convert to Series for calculation - m0 = frequency_moment(S,0,frequency_bins=frequency_bins).squeeze() - mn1 = frequency_moment(S,-1,frequency_bins=frequency_bins).squeeze() + S = convert_to_dataset(S) + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + + mn2 = frequency_moment( + S, -2, frequency_bins=frequency_bins, to_pandas=False + ).rename({"m-2": "v"}) + m0 = frequency_moment(S, 0, frequency_bins=frequency_bins, to_pandas=False).rename( + {"m0": "v"} + ) + mn1 = frequency_moment( + S, -1, frequency_bins=frequency_bins, to_pandas=False + ).rename({"m-1": "v"}) # Eq 16 in IEC 62600-101 - v = np.sqrt((m0*mn2/np.power(mn1,2))-1) - v = pd.DataFrame(v, index=S.columns, columns=['v']) + v = np.sqrt((m0 * mn2 / np.power(mn1, 2)) - 1) + + if to_pandas: + v = v.to_dataframe() return v -def energy_flux(S, h, deep=False, rho=1025, g=9.80665, ratio=2): +def energy_flux( + S, + h, + deep=False, + rho=1025, + g=9.80665, + ratio=2, + frequency_dimension="", + to_pandas=True, +): """ Calculates the omnidirectional wave energy flux of the spectra Parameters ----------- - S: pandas DataFrame or Series + S: pandas DataFrame, pandas Series, xarray DataArray, or xarray Dataset Spectral density [m^2/Hz] indexed by frequency [Hz] h: float Water depth [m] @@ -588,55 +810,70 @@ def energy_flux(S, h, deep=False, rho=1025, g=9.80665, ratio=2): ratio: float or int (optional) Only applied if depth=False. If h/l > ratio, water depth will be set to deep. Default ratio = 2. + frequency_dimension: string (optional) + Name of the xarray dimension corresponding to frequency. If not supplied, + defaults to the first dimension. Does not affect pandas input. + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. Returns ------- - J: pandas DataFrame + J: pandas DataFrame or xarray Dataset Omni-directional wave energy flux [W/m] indexed by S.columns """ - assert isinstance(S, (pd.Series,pd.DataFrame)), 'S must be of type pd.DataFrame or pd.Series' - assert isinstance(h, (int,float)), 'h must be of type int or float' - assert isinstance(deep, bool), 'deep must be of type bool' - assert isinstance(rho, (int,float)), 'rho must be of type int or float' - assert isinstance(g, (int,float)), 'g must be of type int or float' - assert isinstance(ratio, (int,float)), 'ratio must be of type int or float' + S = convert_to_dataset(S) + if not isinstance(h, (int, float)): + raise TypeError(f"h must be of type int or float. Got: {type(h)}") + if not isinstance(deep, bool): + raise TypeError(f"deep must be of type bool. Got: {type(deep)}") + if not isinstance(rho, (int, float)): + raise TypeError(f"rho must be of type int or float. Got: {type(rho)}") + if not isinstance(g, (int, float)): + raise TypeError(f"g must be of type int or float. Got: {type(g)}") + if not isinstance(ratio, (int, float)): + raise TypeError(f"ratio must be of type int or float. Got: {type(ratio)}") + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + + if frequency_dimension == "": + frequency_dimension = list(S.coords)[0] + elif frequency_dimension not in list(S.dims): + raise ValueError( + f"frequency_dimension is not a dimension of S ({list(S.dims)}). Got: {frequency_dimension}." + ) + f = S[frequency_dimension] if deep: - # Eq 8 in IEC 62600-100, deep water simpilification - Te = energy_period(S) - Hm0 = significant_wave_height(S) + # Eq 8 in IEC 62600-100, deep water simplification + Te = energy_period(S, to_pandas=False).rename({"Te": "J"}) + Hm0 = significant_wave_height(S, to_pandas=False).rename({"Hm0": "J"}) - coeff = rho*(g**2)/(64*np.pi) - - J = coeff*(Hm0.squeeze()**2)*Te.squeeze() - if isinstance(S,pd.Series): - J = pd.DataFrame(J, index=[0], columns=["J"]) - else: - J = pd.DataFrame(J, S.columns, columns=["J"]) + coeff = rho * (g**2) / (64 * np.pi) + J = coeff * (Hm0**2) * Te else: # deep water flag is false - f = S.index - - k = wave_number(f, h, rho, g) + k = wave_number(f, h, rho, g, to_pandas=False) # wave celerity (group velocity) - Cg = wave_celerity(k, h, g, depth_check=True, ratio=ratio).squeeze() + Cg = wave_celerity(k, h, g, depth_check=True, ratio=ratio, to_pandas=False)[ + "Cg" + ] # Calculating the wave energy flux, Eq 9 in IEC 62600-101 - delta_f = pd.Series(f).diff() - delta_f.index = f - delta_f[f[0]] = delta_f[f[1]] # fill the initial NaN + delta_f = f.diff(dim=frequency_dimension) + delta_f0 = f[1] - f[0] + delta_f0 = delta_f0.assign_coords({frequency_dimension: f[0]}) + delta_f = xr.concat([delta_f0, delta_f], dim=frequency_dimension) - CgSdelF = S.multiply(delta_f, axis=0).multiply(Cg, axis=0) + CgSdelF = S * delta_f * Cg - J = rho * g * CgSdelF.sum(axis=0) + J = rho * g * CgSdelF.sum(dim=frequency_dimension) + J = _transform_dataset(J, "J") - if isinstance(S,pd.Series): - J = pd.DataFrame(J, index=[0], columns=["J"]) - else: - J = pd.DataFrame(J, S.columns, columns=["J"]) + if to_pandas: + J = J.to_dataframe() return J @@ -651,8 +888,7 @@ def energy_period_to_peak_period(Te, gamma): Parameters ---------- - Te: float or array - Spectral energy period [s] + Te: int, float, np.ndarray, pd.Series, pd.DataFrame, xr.DataArray, xr.Dataset gamma: float or int Peak enhancement factor for JONSWAP spectrum @@ -661,21 +897,33 @@ def energy_period_to_peak_period(Te, gamma): Tp: float or array Spectral peak period [s] """ - assert isinstance(Te, (float, np.ndarray)), 'Te must be a float or a ndarray' - assert isinstance(gamma, (float, int)), 'gamma must be of type float or int' + if not isinstance( + Te, (int, float, np.ndarray, pd.Series, pd.DataFrame, xr.DataArray, xr.Dataset) + ): + raise TypeError( + f"Te must be an int, float, np.ndarray, pd.Series, pd.DataFrame, xr.DataArray or xr.Dataset. Got: {type(Te)}" + ) + if not isinstance(gamma, (float, int)): + raise TypeError(f"gamma must be of type float or int. Got: {type(gamma)}") + + factor = 0.8255 + 0.03852 * gamma - 0.005537 * gamma**2 + 0.0003154 * gamma**3 - factor = 0.8255 + 0.03852*gamma - 0.005537*gamma**2 + 0.0003154*gamma**3 + Tp = Te / factor + if isinstance(Tp, xr.Dataset): + Tp.rename({"Te": "Tp"}) - return Te / factor + return Tp -def wave_celerity(k, h, g=9.80665, depth_check=False, ratio=2): +def wave_celerity( + k, h, g=9.80665, depth_check=False, ratio=2, frequency_dimension="", to_pandas=True +): """ Calculates wave celerity (group velocity) Parameters ---------- - k: pandas DataFrame or Series + k: pandas DataFrame, pandas Series, xarray DataArray, or xarray Dataset Wave number [1/m] indexed by frequency [Hz] h: float Water depth [m] @@ -686,22 +934,36 @@ def wave_celerity(k, h, g=9.80665, depth_check=False, ratio=2): ratio: float or int (optional) Only applied if depth_check=True. If h/l > ratio, water depth will be set to deep. Default ratio = 2 + frequency_dimension: string (optional) + Name of the xarray dimension corresponding to frequency. If not supplied, + defaults to the first dimension. Does not affect pandas input. + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. Returns ------- - Cg: pandas DataFrame + Cg: pandas DataFrame or xarray Dataset Water celerity [m/s] indexed by frequency [Hz] """ - if isinstance(k, pd.DataFrame): - k = k.squeeze() - - assert isinstance(k, pd.Series), 'S must be of type pd.Series' - assert isinstance(h, (int,float)), 'h must be of type int or float' - assert isinstance(g, (int,float)), 'g must be of type int or float' - assert isinstance(depth_check, bool), 'depth_check must be of type bool' - assert isinstance(ratio, (int,float)), 'ratio must be of type int or float' - - f = k.index + k = convert_to_dataarray(k) + if not isinstance(h, (int, float)): + raise TypeError(f"h must be of type int or float. Got: {type(h)}") + if not isinstance(g, (int, float)): + raise TypeError(f"g must be of type int or float. Got: {type(g)}") + if not isinstance(depth_check, bool): + raise TypeError(f"depth_check must be of type bool. Got: {type(depth_check)}") + if not isinstance(ratio, (int, float)): + raise TypeError(f"ratio must be of type int or float. Got: {type(ratio)}") + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + + if frequency_dimension == "": + frequency_dimension = list(k.coords)[0] + elif frequency_dimension not in list(k.dims): + raise ValueError( + f"frequency_dimension is not a dimension of k ({list(k.dims)}). Got: {frequency_dimension}." + ) + f = k[frequency_dimension] k = k.values if depth_check: @@ -715,21 +977,36 @@ def wave_celerity(k, h, g=9.80665, depth_check=False, ratio=2): dk = k[dr] # deep water approximation - dCg = (np.pi * df / dk) - dCg = pd.DataFrame(dCg, index=df, columns=["Cg"]) + dCg = np.pi * df / dk + dCg = xr.DataArray( + data=dCg, dims=frequency_dimension, coords={frequency_dimension: df} + ) + dCg.name = "Cg" # shallow frequencies sf = f[~dr] sk = k[~dr] sCg = (np.pi * sf / sk) * (1 + (2 * h * sk) / np.sinh(2 * h * sk)) - sCg = pd.DataFrame(sCg, index = sf, columns = ["Cg"]) + sCg = xr.DataArray( + data=sCg, dims=frequency_dimension, coords={frequency_dimension: sf} + ) + sCg.name = "Cg" - Cg = pd.concat([dCg, sCg]).sort_index() + Cg = xr.concat([dCg, sCg], dim=frequency_dimension).sortby(frequency_dimension) + Cg.name = "Cg" else: # Eq 10 in IEC 62600-101 Cg = (np.pi * f / k) * (1 + (2 * h * k) / np.sinh(2 * h * k)) - Cg = pd.DataFrame(Cg, index=f, columns=["Cg"]) + Cg = xr.DataArray( + data=Cg, dims=frequency_dimension, coords={frequency_dimension: f} + ) + Cg.name = "Cg" + + Cg = Cg.to_dataset() + + if to_pandas: + Cg = Cg.to_dataframe() return Cg @@ -741,29 +1018,27 @@ def wave_length(k): Parameters ------------- - k: pandas Dataframe + k: int, float, numpy ndarray, pandas Series, pandas DataFrame, xarray DataArray, or xarray Dataset Wave number [1/m] indexed by frequency Returns --------- - l: float or array - Wave length [m] indexed by frequency + l: int, float, numpy ndarray, pandas Series, pandas DataFrame, xarray DataArray, or xarray Dataset + Wave length [m] indexed by frequency. Output type is identical to the type of k. """ - if isinstance(k, (int, float, list)): - k = np.array(k) - elif isinstance(k, pd.DataFrame): - k = k.squeeze().values - elif isinstance(k, pd.Series): - k = k.values - - assert isinstance(k, np.ndarray), 'k must be array-like' + if not isinstance( + k, (int, float, np.ndarray, pd.Series, pd.DataFrame, xr.DataArray, xr.Dataset) + ): + raise TypeError( + f"k must be an int, float, np.ndarray, pd.Series, pd.DataFrame, xr.DataArray or xr.Dataset. Got: {type(k)}" + ) - l = 2*np.pi/k + l = 2 * np.pi / k return l -def wave_number(f, h, rho=1025, g=9.80665): +def wave_number(f, h, rho=1025, g=9.80665, to_pandas=True): """ Calculates wave number @@ -772,7 +1047,7 @@ def wave_number(f, h, rho=1025, g=9.80665): Parameters ----------- - f: numpy array + f: int, float, numpy ndarray, pandas DataFrame, pandas Series, xarray DataArray, or xarray Dataset Frequency [Hz] h: float Water depth [m] @@ -780,29 +1055,34 @@ def wave_number(f, h, rho=1025, g=9.80665): Water density [kg/m^3] g: float (optional) Gravitational acceleration [m/s^2] + to_pandas: bool (optional) + Flag to output pandas instead of xarray. Default = True. Returns ------- - k: pandas DataFrame + k: pandas DataFrame or xarray Dataset Wave number [1/m] indexed by frequency [Hz] """ - try: - f = np.atleast_1d(np.array(f)) - except: - pass - assert isinstance(f, np.ndarray), 'f must be of type np.ndarray' - assert isinstance(h, (int,float)), 'h must be of type int or float' - assert isinstance(rho, (int,float)), 'rho must be of type int or float' - assert isinstance(g, (int,float)), 'g must be of type int or float' - - w = 2*np.pi*f # angular frequency - xi = w/np.sqrt(g/h) # note: =h*wa/sqrt(h*g/h) - yi = xi*xi/np.power(1.0-np.exp(-np.power(xi,2.4908)),0.4015) - k0 = yi/h # Initial guess without current-wave interaction + if isinstance(f, (int, float)): + f = np.asarray([f]) + f = convert_to_dataarray(f) + if not isinstance(h, (int, float)): + raise TypeError(f"h must be of type int or float. Got: {type(h)}") + if not isinstance(rho, (int, float)): + raise TypeError(f"rho must be of type int or float. Got: {type(rho)}") + if not isinstance(g, (int, float)): + raise TypeError(f"g must be of type int or float. Got: {type(g)}") + if not isinstance(to_pandas, bool): + raise TypeError(f"to_pandas must be of type bool. Got: {type(to_pandas)}") + + w = 2 * np.pi * f # angular frequency + xi = w / np.sqrt(g / h) # note: =h*wa/sqrt(h*g/h) + yi = xi * xi / np.power(1.0 - np.exp(-np.power(xi, 2.4908)), 0.4015) + k0 = yi / h # Initial guess without current-wave interaction # Eq 11 in IEC 62600-101 using initial guess from Guo (2002) def func(kk): - val = np.power(w,2) - g*kk*np.tanh(kk*h) + val = np.power(w, 2) - g * kk * np.tanh(kk * h) return val mask = np.abs(func(k0)) > 1e-9 @@ -811,16 +1091,21 @@ def func(kk): w = w[mask] k, info, ier, mesg = _fsolve(func, k0_mask, full_output=True) - assert ier == 1, 'Wave number not found. ' + mesg + if not ier == 1: + raise ValueError("Wave number not found. " + mesg) k0[mask] = k - k = pd.DataFrame(k0, index=f, columns=['k']) + k0.name = "k" + k = k0.to_dataset() + + if to_pandas: + k = k.to_dataframe() return k def depth_regime(l, h, ratio=2): - ''' + """ Calculates the depth regime based on wavelength and height Deep water: h/l > ratio This function exists so sinh in wave celerity doesn't blow @@ -833,7 +1118,7 @@ def depth_regime(l, h, ratio=2): Parameters ---------- - l: array-like + l: int, float, np.ndarray, pd.Series, pd.DataFrame, xr.DataArray, xr.Dataset wavelength [m] h: float or int water column depth [m] @@ -842,20 +1127,29 @@ def depth_regime(l, h, ratio=2): Returns ------- - depth_reg: boolean or boolean array + depth_reg: boolean or boolean array-like Boolean True if deep water, False otherwise - ''' - - if isinstance(l, (int, float, list)): - l = np.array(l) - elif isinstance(l, pd.DataFrame): - l = l.squeeze().values - elif isinstance(l, pd.Series): - l = l.values - - assert isinstance(l, (np.ndarray)), "l must be array-like" - assert isinstance(h, (int, float)), "h must be of type int or float" - - depth_reg = h/l > ratio - - return depth_reg + """ + if not isinstance( + l, (int, float, np.ndarray, pd.Series, pd.DataFrame, xr.DataArray, xr.Dataset) + ): + raise TypeError( + f"l must be of type int, float, np.ndarray, pd.DataFrame, pd.Series, xr.DataArray, or xr.Dataset. Got: {type(l)}" + ) + if not isinstance(h, (int, float)): + raise TypeError(f"h must be of type int or float. Got: {type(h)}") + + depth_reg = h / l > ratio + + return depth_reg + + +def _transform_dataset(data, name): + # Converting data from a Dataset into a DataArray will turn the variables + # columns into a 'variable' dimension. + # Converting it back to a dataset will keep this concise variable dimension + # but in the expected xr.Dataset/pd.DataFrame format + data = data.to_array() + data = convert_to_dataset(data, name=name) + data = data.rename({"variable": "index"}) + return data diff --git a/requirements-dev.txt b/requirements-dev.txt new file mode 100644 index 000000000..83e60c9dd --- /dev/null +++ b/requirements-dev.txt @@ -0,0 +1,4 @@ +# requirements-dev.txt +black +pylint +pytest diff --git a/requirements.txt b/requirements.txt index 01dcce300..b4f8bbe98 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,18 +1,18 @@ -pandas>=1.0.0, <=1.5.0 +pandas>=1.0.0 numpy>=1.21.0 scipy matplotlib requests -pecos>=0.1.9 +pecos>=0.3.0 fatpack lxml scikit-learn NREL-rex>=0.2.63 six>=1.13.0 h5py>=3.6.0 -h5pyd>=0.7.0, <=0.10.3 +h5pyd>=0.7.0 netCDF4>=1.5.8 -xarray<=2022.9.0 +xarray statsmodels bottleneck beautifulsoup4 diff --git a/setup.py b/setup.py index e68d1ef20..1c62eca5e 100644 --- a/setup.py +++ b/setup.py @@ -1,41 +1,43 @@ -from setuptools import setup, find_packages -from distutils.core import Extension import os import re +from setuptools import setup, find_packages -DISTNAME = 'mhkit' +DISTNAME = "mhkit" PACKAGES = find_packages() EXTENSIONS = [] -DESCRIPTION = 'Marine and Hydrokinetic Toolkit' -AUTHOR = 'MHKiT developers' -MAINTAINER_EMAIL = '' -LICENSE = 'Revised BSD' -URL = 'https://github.com/MHKiT-Software/mhkit-python' -CLASSIFIERS = ['Development Status :: 3 - Alpha', - 'Programming Language :: Python :: 3', - 'Topic :: Scientific/Engineering', - 'Intended Audience :: Science/Research', - 'Operating System :: OS Independent', - ] -DEPENDENCIES = ['pandas>=1.0.0, <=1.5.0', - 'numpy>=1.21.0', - 'scipy', - 'matplotlib', - 'requests', - 'pecos>=0.1.9', - 'fatpack', - 'lxml', - 'scikit-learn', - 'NREL-rex>=0.2.63', - 'six>=1.13.0', - 'h5py>=3.6.0', - 'h5pyd >=0.7.0, <=0.10.3', - 'netCDF4<=1.5.8', - 'xarray<=2022.9.0', - 'statsmodels', - 'pytz', - 'bottleneck', - 'beautifulsoup4',] +DESCRIPTION = "Marine and Hydrokinetic Toolkit" +AUTHOR = "MHKiT developers" +MAINTAINER_EMAIL = "" +LICENSE = "Revised BSD" +URL = "https://github.com/MHKiT-Software/mhkit-python" +CLASSIFIERS = [ + "Development Status :: 3 - Alpha", + "Programming Language :: Python :: 3", + "Topic :: Scientific/Engineering", + "Intended Audience :: Science/Research", + "Operating System :: OS Independent", +] +DEPENDENCIES = [ + "pandas>=1.0.0", + "numpy>=1.21.0", + "scipy", + "matplotlib", + "requests", + "pecos>=0.3.0", + "fatpack", + "lxml", + "scikit-learn", + "NREL-rex>=0.2.63", + "six>=1.13.0", + "h5py>=3.6.0", + "h5pyd >=0.7.0", + "netCDF4", + "xarray", + "statsmodels", + "pytz", + "bottleneck", + "beautifulsoup4", +] LONG_DESCRIPTION = """ MHKiT-Python is a Python package designed for marine renewable energy applications to assist in @@ -70,29 +72,29 @@ # get version from __init__.py file_dir = os.path.abspath(os.path.dirname(__file__)) -with open(os.path.join(file_dir, 'mhkit', '__init__.py')) as f: +with open(os.path.join(file_dir, "mhkit", "__init__.py")) as f: version_file = f.read() - version_match = re.search(r"^__version__ = ['\"]([^'\"]*)['\"]", - version_file, re.M) + version_match = re.search(r"^__version__ = ['\"]([^'\"]*)['\"]", version_file, re.M) if version_match: VERSION = version_match.group(1) else: raise RuntimeError("Unable to find version string.") -setup(name=DISTNAME, - version=VERSION, - packages=PACKAGES, - ext_modules=EXTENSIONS, - description=DESCRIPTION, - long_description_content_type="text/markdown", - long_description=LONG_DESCRIPTION, - author=AUTHOR, - maintainer_email=MAINTAINER_EMAIL, - license=LICENSE, - url=URL, - classifiers=CLASSIFIERS, - zip_safe=False, - install_requires=DEPENDENCIES, - scripts=[], - include_package_data=True - ) +setup( + name=DISTNAME, + version=VERSION, + packages=PACKAGES, + ext_modules=EXTENSIONS, + description=DESCRIPTION, + long_description_content_type="text/markdown", + long_description=LONG_DESCRIPTION, + author=AUTHOR, + maintainer_email=MAINTAINER_EMAIL, + license=LICENSE, + url=URL, + classifiers=CLASSIFIERS, + zip_safe=False, + install_requires=DEPENDENCIES, + scripts=[], + include_package_data=True, +)