From 6d8ef2c3ded9d1912b85e0abfcd22160846fe7ab Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 26 Jan 2020 19:11:00 +0200 Subject: [PATCH 001/184] Include ANGLE and SW rendering DLLS in build User reported a bug where the whole HaloRay window is blank. The problem was reproducable when forcing the rendering backend to ANGLE, because the build packages do not include ANGLE DLLs. --- CHANGELOG.md | 5 +++++ scripts/build.ps1 | 4 ---- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7f56aea..a5ab974 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,11 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## Unreleased + +### Changed +- Include ANGLE and software rendering related DLLs in build packages + ## 2.4.0 - 2019-07-29 ### Added diff --git a/scripts/build.ps1 b/scripts/build.ps1 index 4d6c00b..8c3132c 100644 --- a/scripts/build.ps1 +++ b/scripts/build.ps1 @@ -23,8 +23,6 @@ cd .\src\Release\ --no-quick-import ` --no-translations ` --no-webkit2 ` - --no-angle ` - --no-opengl-sw ` --no-system-d3d-compiler ` --release ` haloray.exe @@ -36,8 +34,6 @@ cd .\tests\Release\ --no-quick-import ` --no-translations ` --no-webkit2 ` - --no-angle ` - --no-opengl-sw ` --no-system-d3d-compiler ` --release ` . From 1e270b2db1e3181bbaf8e6789589662ce43a3ba7 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 26 Jan 2020 19:19:30 +0200 Subject: [PATCH 002/184] Fix find_package syntax in CMake file --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 74358ae..d30017e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -39,7 +39,7 @@ set(CMAKE_AUTOMOC ON) # Instruct CMake to run Qt RCC for resource files set(CMAKE_AUTORCC ON) -find_package(Qt5 COMPONENTS REQUIRED Core Widgets Gui Test) +find_package(Qt5 COMPONENTS Core Widgets Gui Test REQUIRED) add_subdirectory(src) add_subdirectory(tests) From 4f9e3ddafa8ea954df1df0acbc18daedac846f40 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 26 Jan 2020 19:26:38 +0200 Subject: [PATCH 003/184] Fix Qt path in Appveyor config Appveyor removed Qt 5.12.2 from their build images. There is however a folder called C:\Qt\5.12\ that is mapped to the latest 5.12.x version of Qt. --- appveyor.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/appveyor.yml b/appveyor.yml index 412de44..5202828 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -6,7 +6,7 @@ branches: image: Visual Studio 2017 clone_depth: 1 environment: - Qt5_DIR: C:\Qt\5.12.2\msvc2017_64\ + Qt5_DIR: C:\Qt\5.12\msvc2017_64\ VCINSTALLDIR: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\ build_script: - ps: scripts\build.ps1 From 421d65dabb1011f9e7868426a281847c2ace7f93 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 26 Jan 2020 19:30:14 +0200 Subject: [PATCH 004/184] Update to Qt 5.14.0 in Appveyor config --- appveyor.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/appveyor.yml b/appveyor.yml index 5202828..1a0cd48 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -6,7 +6,7 @@ branches: image: Visual Studio 2017 clone_depth: 1 environment: - Qt5_DIR: C:\Qt\5.12\msvc2017_64\ + Qt5_DIR: C:\Qt\5.14.0\msvc2017_64\ VCINSTALLDIR: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\ build_script: - ps: scripts\build.ps1 From 88f66368780d2a0842bb2598f416a9cff856f54d Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 26 Jan 2020 19:42:04 +0200 Subject: [PATCH 005/184] Remove $ErrorActionPreference from build script Appveyor is not showing the whole error message when CMake fails. Removing the preference might help. --- scripts/build.ps1 | 2 -- 1 file changed, 2 deletions(-) diff --git a/scripts/build.ps1 b/scripts/build.ps1 index 8c3132c..1f67c43 100644 --- a/scripts/build.ps1 +++ b/scripts/build.ps1 @@ -1,7 +1,5 @@ # Windows build script for Appveyor -$ErrorActionPreference = "Stop"; - $gitBranch = $env:APPVEYOR_REPO_BRANCH $extraParameters = if ($gitBranch -eq "master") { "-DHALORAY_VERSION='${env:APPVEYOR_BUILD_VERSION}'" From 8d0cab4061832d40143151f6f5472f49c7853e26 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 26 Jan 2020 19:54:27 +0200 Subject: [PATCH 006/184] Add version checks in CMakeLists around CMAKE_INCLUDE_CURRENT_DIR This is according to latest Qt5 example code. --- CMakeLists.txt | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index d30017e..1cb098d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -32,8 +32,11 @@ if(MSVC) add_definitions(-D_CRT_SECURE_NO_WARNINGS) endif() -# find includes in the corresponding build directories -set(CMAKE_INCLUDE_CURRENT_DIR ON) +if(CMAKE_VERSION VERSION_LESS "3.7.0") + # find includes in the corresponding build directories + set(CMAKE_INCLUDE_CURRENT_DIR ON) +endif() + # Instruct CMake to run moc automatically when needed set(CMAKE_AUTOMOC ON) # Instruct CMake to run Qt RCC for resource files From 38a0f2c1e85f8296508c41cb585372216353623e Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 26 Jan 2020 19:55:18 +0200 Subject: [PATCH 007/184] Set CMAKE_PREFIX_PATH in build script CMake has trouble finding Qt5 after some updates. Explicitely setting the Qt5 path using CMAKE_PREFIX_PATH variable should help according to Qt docs. --- scripts/build.ps1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/build.ps1 b/scripts/build.ps1 index 1f67c43..10ca403 100644 --- a/scripts/build.ps1 +++ b/scripts/build.ps1 @@ -12,7 +12,7 @@ mkdir build cd build pushd -cmake .. -G "Visual Studio 15 2017 Win64" $extraParameters +cmake .. -G "Visual Studio 15 2017 Win64" -DCMAKE_PREFIX_PATH=$env:Qt5_DIR $extraParameters cmake --build . --config Release cd .\src\Release\ & "${env:Qt5_DIR}\bin\qtenv2.bat" From 32a484e264d7ce794cabd3688b9c22318d53719b Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 26 Jan 2020 20:05:15 +0200 Subject: [PATCH 008/184] Fix Qt5 finding problem using environment variable --- appveyor.yml | 1 + scripts/build.ps1 | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/appveyor.yml b/appveyor.yml index 1a0cd48..866f272 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -7,6 +7,7 @@ image: Visual Studio 2017 clone_depth: 1 environment: Qt5_DIR: C:\Qt\5.14.0\msvc2017_64\ + CMAKE_PREFIX_PATH: C:\Qt\5.14.0\msvc2017_64\ VCINSTALLDIR: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\ build_script: - ps: scripts\build.ps1 diff --git a/scripts/build.ps1 b/scripts/build.ps1 index 10ca403..1f67c43 100644 --- a/scripts/build.ps1 +++ b/scripts/build.ps1 @@ -12,7 +12,7 @@ mkdir build cd build pushd -cmake .. -G "Visual Studio 15 2017 Win64" -DCMAKE_PREFIX_PATH=$env:Qt5_DIR $extraParameters +cmake .. -G "Visual Studio 15 2017 Win64" $extraParameters cmake --build . --config Release cd .\src\Release\ & "${env:Qt5_DIR}\bin\qtenv2.bat" From 8498d25e771bee0da1b4cba7f8c29e6ac33d65f9 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 26 Jan 2020 20:11:00 +0200 Subject: [PATCH 009/184] Fix path to Qt in AppVeyor config AppVeyor config was still pointing to a version of Qt that didn't exist on the build image. Reverted the previous fixes. --- appveyor.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index 866f272..dcf1c73 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -6,8 +6,7 @@ branches: image: Visual Studio 2017 clone_depth: 1 environment: - Qt5_DIR: C:\Qt\5.14.0\msvc2017_64\ - CMAKE_PREFIX_PATH: C:\Qt\5.14.0\msvc2017_64\ + Qt5_DIR: C:\Qt\5.13\msvc2017_64\ VCINSTALLDIR: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\ build_script: - ps: scripts\build.ps1 From 59573b4a2262b58f4ddd963d815eee03e1f941d0 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 26 Jan 2020 20:49:50 +0200 Subject: [PATCH 010/184] Force using native desktop OpenGL Just adding the ANGLE etc. DLLs did not totally fix the blank window problem. Forcing the program to not use ANGLE or software rendering should help. --- scripts/build.ps1 | 4 ++++ src/main.cpp | 1 + 2 files changed, 5 insertions(+) diff --git a/scripts/build.ps1 b/scripts/build.ps1 index 1f67c43..213b636 100644 --- a/scripts/build.ps1 +++ b/scripts/build.ps1 @@ -21,6 +21,8 @@ cd .\src\Release\ --no-quick-import ` --no-translations ` --no-webkit2 ` + --no-angle ` + --no-opengl-sw ` --no-system-d3d-compiler ` --release ` haloray.exe @@ -32,6 +34,8 @@ cd .\tests\Release\ --no-quick-import ` --no-translations ` --no-webkit2 ` + --no-angle ` + --no-opengl-sw ` --no-system-d3d-compiler ` --release ` . diff --git a/src/main.cpp b/src/main.cpp index f70719d..ab90b6c 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -45,6 +45,7 @@ bool supportsOpenGL(int requiredMajorVersion, int requiredMinorVersion) int main(int argc, char *argv[]) { Q_INIT_RESOURCE(haloray); + QCoreApplication::setAttribute(Qt::AA_UseDesktopOpenGL); qInstallMessageHandler(logHandler); QApplication app(argc, argv); From 1ed33f1ba523ce46274061bdca80c7a9342e8992 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 26 Jan 2020 20:19:14 +0200 Subject: [PATCH 011/184] Point Qt5_DIR to 5.12 instead of 5.12.x That way the builds do not break if the build VM images are updated with a newer Qt version. --- appveyor.yml | 3 ++- scripts/build.ps1 | 2 ++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/appveyor.yml b/appveyor.yml index dcf1c73..c64bebd 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -3,10 +3,11 @@ branches: only: - master - develop + - fix-qt5-appveyor image: Visual Studio 2017 clone_depth: 1 environment: - Qt5_DIR: C:\Qt\5.13\msvc2017_64\ + Qt5_DIR: C:\Qt\5.12\msvc2017_64\ VCINSTALLDIR: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\ build_script: - ps: scripts\build.ps1 diff --git a/scripts/build.ps1 b/scripts/build.ps1 index 213b636..99cd0fe 100644 --- a/scripts/build.ps1 +++ b/scripts/build.ps1 @@ -7,6 +7,8 @@ $extraParameters = if ($gitBranch -eq "master") { "-DGIT_BRANCH='${gitBranch}'" } +ls $env:Qt5_DIR + pushd mkdir build cd build From 3ccf06d0da6fe45249e691a5d7788c5e441f6bb1 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Mon, 27 Jan 2020 00:30:52 +0200 Subject: [PATCH 012/184] Update changelog --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a5ab974..00e3245 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,7 +8,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## Unreleased ### Changed -- Include ANGLE and software rendering related DLLs in build packages +- Force application to use native desktop OpenGL instead of ANGLE or software renderer ## 2.4.0 - 2019-07-29 From 195ab8ff5f2069465ee9639d1a4dcd93cdc3b088 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Mon, 27 Jan 2020 10:45:12 +0200 Subject: [PATCH 013/184] Update appveyor.yml Removed a merged branch from appveyor.yml. --- appveyor.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/appveyor.yml b/appveyor.yml index c64bebd..5202828 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -3,7 +3,6 @@ branches: only: - master - develop - - fix-qt5-appveyor image: Visual Studio 2017 clone_depth: 1 environment: From 76b398ea64c01ab040be08f83f86d8a71fe21b06 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 22 Mar 2020 17:57:30 +0200 Subject: [PATCH 014/184] Pass simulation engine as parameter to OpenGLWidget --- src/gui/mainWindow.cpp | 9 ++------- src/gui/openGLWidget.cpp | 10 +++------- src/gui/openGLWidget.h | 3 +-- src/simulation/simulationEngine.cpp | 6 ++---- src/simulation/simulationEngine.h | 2 +- 5 files changed, 9 insertions(+), 21 deletions(-) diff --git a/src/gui/mainWindow.cpp b/src/gui/mainWindow.cpp index f74497d..afac0d0 100644 --- a/src/gui/mainWindow.cpp +++ b/src/gui/mainWindow.cpp @@ -24,14 +24,9 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) #endif mCrystalRepository = std::make_shared(); + mEngine = std::make_shared(mCrystalRepository); - /* - setupUi must be called before mEngine is constructed, since OpenGLWidget - initializes OpenGL for the whole application, and mEngine depends on OpenGL - */ setupUi(); - mEngine = std::make_shared(mOpenGLWidget->width(), mOpenGLWidget->height(), mCrystalRepository); - mOpenGLWidget->setEngine(mEngine); // Signals from render button connect(mRenderButton, &RenderButton::clicked, mOpenGLWidget, &OpenGLWidget::toggleRendering); @@ -118,7 +113,7 @@ void MainWindow::setupUi() setupMenuBar(); - mOpenGLWidget = new OpenGLWidget(); + mOpenGLWidget = new OpenGLWidget(mEngine); mProgressBar = setupProgressBar(); mRenderButton = new RenderButton(); diff --git a/src/gui/openGLWidget.cpp b/src/gui/openGLWidget.cpp index 27a5db7..2dd2ce0 100644 --- a/src/gui/openGLWidget.cpp +++ b/src/gui/openGLWidget.cpp @@ -9,22 +9,18 @@ #include "../simulation/crystalPopulation.h" #include "../opengl/textureRenderer.h" -OpenGLWidget::OpenGLWidget(QWidget *parent) +OpenGLWidget::OpenGLWidget(enginePtr engine, QWidget *parent) : QOpenGLWidget(parent), mDragging(false), mPreviousDragPoint(QPoint(0, 0)), mExposure(1.0f), - mMaxIterations(1) + mMaxIterations(1), + mEngine(engine) { setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding); setUpdateBehavior(UpdateBehavior::PartialUpdate); } -void OpenGLWidget::setEngine(enginePtr engine) -{ - mEngine = engine; -} - void OpenGLWidget::toggleRendering() { if (mEngine->isRunning()) diff --git a/src/gui/openGLWidget.h b/src/gui/openGLWidget.h index 69fca43..e10011b 100644 --- a/src/gui/openGLWidget.h +++ b/src/gui/openGLWidget.h @@ -16,8 +16,7 @@ class OpenGLWidget : public QOpenGLWidget, protected QOpenGLFunctions_4_4_Core typedef std::shared_ptr enginePtr; public: - explicit OpenGLWidget(QWidget *parent = 0); - void setEngine(enginePtr engine); + explicit OpenGLWidget(enginePtr engine, QWidget *parent = nullptr); QSize sizeHint() const override; QSize minimumSizeHint() const override; diff --git a/src/simulation/simulationEngine.cpp b/src/simulation/simulationEngine.cpp index 6b2d706..70fb949 100644 --- a/src/simulation/simulationEngine.cpp +++ b/src/simulation/simulationEngine.cpp @@ -12,11 +12,9 @@ namespace HaloSim { SimulationEngine::SimulationEngine( - unsigned int outputWidth, - unsigned int outputHeight, std::shared_ptr crystalRepository) - : mOutputWidth(outputWidth), - mOutputHeight(outputHeight), + : mOutputWidth(800), + mOutputHeight(600), mMersenneTwister(std::mt19937(std::random_device()())), mUniformDistribution(std::uniform_int_distribution(0, std::numeric_limits::max())), mRunning(false), diff --git a/src/simulation/simulationEngine.h b/src/simulation/simulationEngine.h index e921750..a722875 100644 --- a/src/simulation/simulationEngine.h +++ b/src/simulation/simulationEngine.h @@ -15,7 +15,7 @@ namespace HaloSim class SimulationEngine : protected QOpenGLFunctions_4_4_Core { public: - SimulationEngine(unsigned int outputWidth, unsigned int outputHeight, std::shared_ptr crystalRepository); + SimulationEngine(std::shared_ptr crystalRepository); void initialize(); void start(); void step(); From 4e3b1fa99826df5e62691af4f6d2f2b1bf5787fb Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Thu, 21 May 2020 15:16:05 +0300 Subject: [PATCH 015/184] Add missing stdexcept include std::runtime_error requires the stdexcept include. It was working without it on some compilers, but not all. --- src/opengl/textureRenderer.cpp | 1 + src/simulation/simulationEngine.cpp | 1 + 2 files changed, 2 insertions(+) diff --git a/src/opengl/textureRenderer.cpp b/src/opengl/textureRenderer.cpp index 707de5a..a782041 100644 --- a/src/opengl/textureRenderer.cpp +++ b/src/opengl/textureRenderer.cpp @@ -1,6 +1,7 @@ #include "textureRenderer.h" #include #include +#include #include namespace OpenGL diff --git a/src/simulation/simulationEngine.cpp b/src/simulation/simulationEngine.cpp index 70fb949..2a84ec8 100644 --- a/src/simulation/simulationEngine.cpp +++ b/src/simulation/simulationEngine.cpp @@ -2,6 +2,7 @@ #include #include #include +#include #include #include "../opengl/texture.h" #include "camera.h" From a50d55392e3fcc1f4a453d77ce019625b876d4f8 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Thu, 21 May 2020 15:41:07 +0300 Subject: [PATCH 016/184] Add tentative .pro file for HaloRay Once the whole build can be handled with qmake, the CMake cruft can be taken away. The .pro file does not handle tests yet. --- src/haloray.pro | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 src/haloray.pro diff --git a/src/haloray.pro b/src/haloray.pro new file mode 100644 index 0000000..f7e3215 --- /dev/null +++ b/src/haloray.pro @@ -0,0 +1,48 @@ +TARGET = HaloRay +TEMPLATE = app + +QT += core gui widgets +CONFIG += c++17 +win32:CONFIG += windows + +DEFINES += QT_DEPRECATED_WARNINGS + +HEADERS += \ + gui/addCrystalPopulationButton.h \ + gui/crystalModel.h \ + gui/crystalSettingsWidget.h \ + gui/generalSettingsWidget.h \ + gui/mainWindow.h \ + gui/openGLWidget.h \ + gui/renderButton.h \ + gui/sliderSpinBox.h \ + gui/viewSettingsWidget.h \ + opengl/texture.h \ + opengl/textureRenderer.h \ + simulation/camera.h \ + simulation/crystalPopulation.h \ + simulation/crystalPopulationRepository.h \ + simulation/lightSource.h \ + simulation/simulationEngine.h + +SOURCES += \ + main.cpp \ + gui/addCrystalPopulationButton.cpp \ + gui/crystalModel.cpp \ + gui/crystalSettingsWidget.cpp \ + gui/generalSettingsWidget.cpp \ + gui/mainWindow.cpp \ + gui/openGLWidget.cpp \ + gui/renderButton.cpp \ + gui/sliderSpinBox.cpp \ + gui/viewSettingsWidget.cpp \ + opengl/texture.cpp \ + opengl/textureRenderer.cpp \ + simulation/camera.cpp \ + simulation/crystalPopulation.cpp \ + simulation/crystalPopulationRepository.cpp \ + simulation/lightSource.cpp \ + simulation/simulationEngine.cpp + +RESOURCES = \ + resources/haloray.qrc From 2d55c0a1469cb690dd2491eeeb491813f2961678 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Thu, 21 May 2020 22:03:40 +0300 Subject: [PATCH 017/184] Update gitignore Qt Creator generates *.pro.user files, which should not go into version control. --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index a613412..f5fb7a7 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ build/* .vscode/* src/version.h Testing/ +**/*.user From d28c4daaf7d119250356776baf6490b9fc940da8 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Thu, 21 May 2020 23:30:58 +0300 Subject: [PATCH 018/184] Create Qt project files for tests The project had to be restructured a bit so the tests can link the program code. --- src/CMakeLists.txt | 32 ------------------ .../gui/addCrystalPopulationButton.cpp | 0 .../gui/addCrystalPopulationButton.h | 0 src/{ => haloray-core}/gui/crystalModel.cpp | 0 src/{ => haloray-core}/gui/crystalModel.h | 0 .../gui/crystalSettingsWidget.cpp | 0 .../gui/crystalSettingsWidget.h | 0 .../gui/generalSettingsWidget.cpp | 0 .../gui/generalSettingsWidget.h | 0 src/{ => haloray-core}/gui/mainWindow.cpp | 0 src/{ => haloray-core}/gui/mainWindow.h | 0 src/{ => haloray-core}/gui/openGLWidget.cpp | 0 src/{ => haloray-core}/gui/openGLWidget.h | 0 src/{ => haloray-core}/gui/renderButton.cpp | 0 src/{ => haloray-core}/gui/renderButton.h | 0 src/{ => haloray-core}/gui/sliderSpinBox.cpp | 0 src/{ => haloray-core}/gui/sliderSpinBox.h | 0 .../gui/viewSettingsWidget.cpp | 0 .../gui/viewSettingsWidget.h | 0 .../haloray-core.pro} | 7 ++-- src/{ => haloray-core}/opengl/texture.cpp | 0 src/{ => haloray-core}/opengl/texture.h | 0 .../opengl/textureRenderer.cpp | 0 .../opengl/textureRenderer.h | 0 src/{ => haloray-core}/resources/haloray.ico | Bin src/{ => haloray-core}/resources/haloray.qrc | 0 src/{ => haloray-core}/resources/hexagon.svg | 0 .../custom-icons/actions/24/list-add.svg | 0 .../custom-icons/actions/24/list-remove.svg | 0 .../resources/icons/custom-icons/index.theme | 0 .../resources/shaders/raytrace.glsl | 0 src/{ => haloray-core}/simulation/camera.cpp | 0 src/{ => haloray-core}/simulation/camera.h | 0 .../simulation/crystalPopulation.cpp | 0 .../simulation/crystalPopulation.h | 0 .../crystalPopulationRepository.cpp | 0 .../simulation/crystalPopulationRepository.h | 0 .../simulation/lightSource.cpp | 0 .../simulation/lightSource.h | 0 .../simulation/simulationEngine.cpp | 0 .../simulation/simulationEngine.h | 0 src/haloray/haloray.pro | 25 ++++++++++++++ src/{ => haloray}/main.cpp | 0 src/main.pro | 8 +++++ src/resources/haloray.rc | 3 -- {tests => src/tests}/cameraTests.cpp | 2 +- .../crystalPopulationRepositoryTests.cpp | 2 +- src/tests/tests.pro | 21 ++++++++++++ tests/CMakeLists.txt | 7 ---- 49 files changed, 59 insertions(+), 48 deletions(-) delete mode 100644 src/CMakeLists.txt rename src/{ => haloray-core}/gui/addCrystalPopulationButton.cpp (100%) rename src/{ => haloray-core}/gui/addCrystalPopulationButton.h (100%) rename src/{ => haloray-core}/gui/crystalModel.cpp (100%) rename src/{ => haloray-core}/gui/crystalModel.h (100%) rename src/{ => haloray-core}/gui/crystalSettingsWidget.cpp (100%) rename src/{ => haloray-core}/gui/crystalSettingsWidget.h (100%) rename src/{ => haloray-core}/gui/generalSettingsWidget.cpp (100%) rename src/{ => haloray-core}/gui/generalSettingsWidget.h (100%) rename src/{ => haloray-core}/gui/mainWindow.cpp (100%) rename src/{ => haloray-core}/gui/mainWindow.h (100%) rename src/{ => haloray-core}/gui/openGLWidget.cpp (100%) rename src/{ => haloray-core}/gui/openGLWidget.h (100%) rename src/{ => haloray-core}/gui/renderButton.cpp (100%) rename src/{ => haloray-core}/gui/renderButton.h (100%) rename src/{ => haloray-core}/gui/sliderSpinBox.cpp (100%) rename src/{ => haloray-core}/gui/sliderSpinBox.h (100%) rename src/{ => haloray-core}/gui/viewSettingsWidget.cpp (100%) rename src/{ => haloray-core}/gui/viewSettingsWidget.h (100%) rename src/{haloray.pro => haloray-core/haloray-core.pro} (94%) rename src/{ => haloray-core}/opengl/texture.cpp (100%) rename src/{ => haloray-core}/opengl/texture.h (100%) rename src/{ => haloray-core}/opengl/textureRenderer.cpp (100%) rename src/{ => haloray-core}/opengl/textureRenderer.h (100%) rename src/{ => haloray-core}/resources/haloray.ico (100%) rename src/{ => haloray-core}/resources/haloray.qrc (100%) rename src/{ => haloray-core}/resources/hexagon.svg (100%) rename src/{ => haloray-core}/resources/icons/custom-icons/actions/24/list-add.svg (100%) rename src/{ => haloray-core}/resources/icons/custom-icons/actions/24/list-remove.svg (100%) rename src/{ => haloray-core}/resources/icons/custom-icons/index.theme (100%) rename src/{ => haloray-core}/resources/shaders/raytrace.glsl (100%) rename src/{ => haloray-core}/simulation/camera.cpp (100%) rename src/{ => haloray-core}/simulation/camera.h (100%) rename src/{ => haloray-core}/simulation/crystalPopulation.cpp (100%) rename src/{ => haloray-core}/simulation/crystalPopulation.h (100%) rename src/{ => haloray-core}/simulation/crystalPopulationRepository.cpp (100%) rename src/{ => haloray-core}/simulation/crystalPopulationRepository.h (100%) rename src/{ => haloray-core}/simulation/lightSource.cpp (100%) rename src/{ => haloray-core}/simulation/lightSource.h (100%) rename src/{ => haloray-core}/simulation/simulationEngine.cpp (100%) rename src/{ => haloray-core}/simulation/simulationEngine.h (100%) create mode 100644 src/haloray/haloray.pro rename src/{ => haloray}/main.cpp (100%) create mode 100644 src/main.pro delete mode 100644 src/resources/haloray.rc rename {tests => src/tests}/cameraTests.cpp (96%) rename {tests => src/tests}/crystalPopulationRepositoryTests.cpp (95%) create mode 100644 src/tests/tests.pro delete mode 100644 tests/CMakeLists.txt diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt deleted file mode 100644 index 1a54c3d..0000000 --- a/src/CMakeLists.txt +++ /dev/null @@ -1,32 +0,0 @@ -set(HALORAY_SOURCES - gui/mainWindow.cpp - gui/openGLWidget.cpp - gui/generalSettingsWidget.cpp - gui/crystalSettingsWidget.cpp - gui/viewSettingsWidget.cpp - gui/sliderSpinBox.cpp - gui/renderButton.cpp - gui/crystalModel.cpp - gui/addCrystalPopulationButton.cpp - simulation/simulationEngine.cpp - simulation/camera.cpp - simulation/lightSource.cpp - simulation/crystalPopulation.cpp - simulation/crystalPopulationRepository.cpp - opengl/texture.cpp - opengl/textureRenderer.cpp -) - -set(RESOURCE_FILES resources/haloray.qrc) - -add_library(halorayLib STATIC ${HALORAY_SOURCES} ${RESOURCE_FILES}) -target_link_libraries(halorayLib Qt5::Core Qt5::Widgets Qt5::Gui) - -IF (WIN32) - add_executable(haloray WIN32 main.cpp resources/haloray.rc) -ELSE() - add_executable(haloray main.cpp) -ENDIF() - - -target_link_libraries(haloray Qt5::Core Qt5::Widgets Qt5::Gui halorayLib) diff --git a/src/gui/addCrystalPopulationButton.cpp b/src/haloray-core/gui/addCrystalPopulationButton.cpp similarity index 100% rename from src/gui/addCrystalPopulationButton.cpp rename to src/haloray-core/gui/addCrystalPopulationButton.cpp diff --git a/src/gui/addCrystalPopulationButton.h b/src/haloray-core/gui/addCrystalPopulationButton.h similarity index 100% rename from src/gui/addCrystalPopulationButton.h rename to src/haloray-core/gui/addCrystalPopulationButton.h diff --git a/src/gui/crystalModel.cpp b/src/haloray-core/gui/crystalModel.cpp similarity index 100% rename from src/gui/crystalModel.cpp rename to src/haloray-core/gui/crystalModel.cpp diff --git a/src/gui/crystalModel.h b/src/haloray-core/gui/crystalModel.h similarity index 100% rename from src/gui/crystalModel.h rename to src/haloray-core/gui/crystalModel.h diff --git a/src/gui/crystalSettingsWidget.cpp b/src/haloray-core/gui/crystalSettingsWidget.cpp similarity index 100% rename from src/gui/crystalSettingsWidget.cpp rename to src/haloray-core/gui/crystalSettingsWidget.cpp diff --git a/src/gui/crystalSettingsWidget.h b/src/haloray-core/gui/crystalSettingsWidget.h similarity index 100% rename from src/gui/crystalSettingsWidget.h rename to src/haloray-core/gui/crystalSettingsWidget.h diff --git a/src/gui/generalSettingsWidget.cpp b/src/haloray-core/gui/generalSettingsWidget.cpp similarity index 100% rename from src/gui/generalSettingsWidget.cpp rename to src/haloray-core/gui/generalSettingsWidget.cpp diff --git a/src/gui/generalSettingsWidget.h b/src/haloray-core/gui/generalSettingsWidget.h similarity index 100% rename from src/gui/generalSettingsWidget.h rename to src/haloray-core/gui/generalSettingsWidget.h diff --git a/src/gui/mainWindow.cpp b/src/haloray-core/gui/mainWindow.cpp similarity index 100% rename from src/gui/mainWindow.cpp rename to src/haloray-core/gui/mainWindow.cpp diff --git a/src/gui/mainWindow.h b/src/haloray-core/gui/mainWindow.h similarity index 100% rename from src/gui/mainWindow.h rename to src/haloray-core/gui/mainWindow.h diff --git a/src/gui/openGLWidget.cpp b/src/haloray-core/gui/openGLWidget.cpp similarity index 100% rename from src/gui/openGLWidget.cpp rename to src/haloray-core/gui/openGLWidget.cpp diff --git a/src/gui/openGLWidget.h b/src/haloray-core/gui/openGLWidget.h similarity index 100% rename from src/gui/openGLWidget.h rename to src/haloray-core/gui/openGLWidget.h diff --git a/src/gui/renderButton.cpp b/src/haloray-core/gui/renderButton.cpp similarity index 100% rename from src/gui/renderButton.cpp rename to src/haloray-core/gui/renderButton.cpp diff --git a/src/gui/renderButton.h b/src/haloray-core/gui/renderButton.h similarity index 100% rename from src/gui/renderButton.h rename to src/haloray-core/gui/renderButton.h diff --git a/src/gui/sliderSpinBox.cpp b/src/haloray-core/gui/sliderSpinBox.cpp similarity index 100% rename from src/gui/sliderSpinBox.cpp rename to src/haloray-core/gui/sliderSpinBox.cpp diff --git a/src/gui/sliderSpinBox.h b/src/haloray-core/gui/sliderSpinBox.h similarity index 100% rename from src/gui/sliderSpinBox.h rename to src/haloray-core/gui/sliderSpinBox.h diff --git a/src/gui/viewSettingsWidget.cpp b/src/haloray-core/gui/viewSettingsWidget.cpp similarity index 100% rename from src/gui/viewSettingsWidget.cpp rename to src/haloray-core/gui/viewSettingsWidget.cpp diff --git a/src/gui/viewSettingsWidget.h b/src/haloray-core/gui/viewSettingsWidget.h similarity index 100% rename from src/gui/viewSettingsWidget.h rename to src/haloray-core/gui/viewSettingsWidget.h diff --git a/src/haloray.pro b/src/haloray-core/haloray-core.pro similarity index 94% rename from src/haloray.pro rename to src/haloray-core/haloray-core.pro index f7e3215..dddd833 100644 --- a/src/haloray.pro +++ b/src/haloray-core/haloray-core.pro @@ -1,8 +1,8 @@ -TARGET = HaloRay -TEMPLATE = app +TARGET = HaloRayCore +TEMPLATE = lib QT += core gui widgets -CONFIG += c++17 +CONFIG += c++17 static win32:CONFIG += windows DEFINES += QT_DEPRECATED_WARNINGS @@ -26,7 +26,6 @@ HEADERS += \ simulation/simulationEngine.h SOURCES += \ - main.cpp \ gui/addCrystalPopulationButton.cpp \ gui/crystalModel.cpp \ gui/crystalSettingsWidget.cpp \ diff --git a/src/opengl/texture.cpp b/src/haloray-core/opengl/texture.cpp similarity index 100% rename from src/opengl/texture.cpp rename to src/haloray-core/opengl/texture.cpp diff --git a/src/opengl/texture.h b/src/haloray-core/opengl/texture.h similarity index 100% rename from src/opengl/texture.h rename to src/haloray-core/opengl/texture.h diff --git a/src/opengl/textureRenderer.cpp b/src/haloray-core/opengl/textureRenderer.cpp similarity index 100% rename from src/opengl/textureRenderer.cpp rename to src/haloray-core/opengl/textureRenderer.cpp diff --git a/src/opengl/textureRenderer.h b/src/haloray-core/opengl/textureRenderer.h similarity index 100% rename from src/opengl/textureRenderer.h rename to src/haloray-core/opengl/textureRenderer.h diff --git a/src/resources/haloray.ico b/src/haloray-core/resources/haloray.ico similarity index 100% rename from src/resources/haloray.ico rename to src/haloray-core/resources/haloray.ico diff --git a/src/resources/haloray.qrc b/src/haloray-core/resources/haloray.qrc similarity index 100% rename from src/resources/haloray.qrc rename to src/haloray-core/resources/haloray.qrc diff --git a/src/resources/hexagon.svg b/src/haloray-core/resources/hexagon.svg similarity index 100% rename from src/resources/hexagon.svg rename to src/haloray-core/resources/hexagon.svg diff --git a/src/resources/icons/custom-icons/actions/24/list-add.svg b/src/haloray-core/resources/icons/custom-icons/actions/24/list-add.svg similarity index 100% rename from src/resources/icons/custom-icons/actions/24/list-add.svg rename to src/haloray-core/resources/icons/custom-icons/actions/24/list-add.svg diff --git a/src/resources/icons/custom-icons/actions/24/list-remove.svg b/src/haloray-core/resources/icons/custom-icons/actions/24/list-remove.svg similarity index 100% rename from src/resources/icons/custom-icons/actions/24/list-remove.svg rename to src/haloray-core/resources/icons/custom-icons/actions/24/list-remove.svg diff --git a/src/resources/icons/custom-icons/index.theme b/src/haloray-core/resources/icons/custom-icons/index.theme similarity index 100% rename from src/resources/icons/custom-icons/index.theme rename to src/haloray-core/resources/icons/custom-icons/index.theme diff --git a/src/resources/shaders/raytrace.glsl b/src/haloray-core/resources/shaders/raytrace.glsl similarity index 100% rename from src/resources/shaders/raytrace.glsl rename to src/haloray-core/resources/shaders/raytrace.glsl diff --git a/src/simulation/camera.cpp b/src/haloray-core/simulation/camera.cpp similarity index 100% rename from src/simulation/camera.cpp rename to src/haloray-core/simulation/camera.cpp diff --git a/src/simulation/camera.h b/src/haloray-core/simulation/camera.h similarity index 100% rename from src/simulation/camera.h rename to src/haloray-core/simulation/camera.h diff --git a/src/simulation/crystalPopulation.cpp b/src/haloray-core/simulation/crystalPopulation.cpp similarity index 100% rename from src/simulation/crystalPopulation.cpp rename to src/haloray-core/simulation/crystalPopulation.cpp diff --git a/src/simulation/crystalPopulation.h b/src/haloray-core/simulation/crystalPopulation.h similarity index 100% rename from src/simulation/crystalPopulation.h rename to src/haloray-core/simulation/crystalPopulation.h diff --git a/src/simulation/crystalPopulationRepository.cpp b/src/haloray-core/simulation/crystalPopulationRepository.cpp similarity index 100% rename from src/simulation/crystalPopulationRepository.cpp rename to src/haloray-core/simulation/crystalPopulationRepository.cpp diff --git a/src/simulation/crystalPopulationRepository.h b/src/haloray-core/simulation/crystalPopulationRepository.h similarity index 100% rename from src/simulation/crystalPopulationRepository.h rename to src/haloray-core/simulation/crystalPopulationRepository.h diff --git a/src/simulation/lightSource.cpp b/src/haloray-core/simulation/lightSource.cpp similarity index 100% rename from src/simulation/lightSource.cpp rename to src/haloray-core/simulation/lightSource.cpp diff --git a/src/simulation/lightSource.h b/src/haloray-core/simulation/lightSource.h similarity index 100% rename from src/simulation/lightSource.h rename to src/haloray-core/simulation/lightSource.h diff --git a/src/simulation/simulationEngine.cpp b/src/haloray-core/simulation/simulationEngine.cpp similarity index 100% rename from src/simulation/simulationEngine.cpp rename to src/haloray-core/simulation/simulationEngine.cpp diff --git a/src/simulation/simulationEngine.h b/src/haloray-core/simulation/simulationEngine.h similarity index 100% rename from src/simulation/simulationEngine.h rename to src/haloray-core/simulation/simulationEngine.h diff --git a/src/haloray/haloray.pro b/src/haloray/haloray.pro new file mode 100644 index 0000000..624dceb --- /dev/null +++ b/src/haloray/haloray.pro @@ -0,0 +1,25 @@ +TARGET = HaloRay +TEMPLATE = app + +QT += core gui widgets +CONFIG += c++17 +win32:CONFIG += windows + +DEFINES += QT_DEPRECATED_WARNINGS + +SOURCES += main.cpp + +win32:CONFIG(release, debug|release): LIBS += -L$$OUT_PWD/../haloray-core/release/ -lHaloRayCore +else:win32:CONFIG(debug, debug|release): LIBS += -L$$OUT_PWD/../haloray-core/debug/ -lHaloRayCore +else:unix: LIBS += -L$$OUT_PWD/../haloray-core/ -lHaloRayCore + +INCLUDEPATH += $$PWD/../haloray-core +DEPENDPATH += $$PWD/../haloray-core + +win32-g++:CONFIG(release, debug|release): PRE_TARGETDEPS += $$OUT_PWD/../haloray-core/release/libHaloRayCore.a +else:win32-g++:CONFIG(debug, debug|release): PRE_TARGETDEPS += $$OUT_PWD/../haloray-core/debug/libHaloRayCore.a +else:win32:!win32-g++:CONFIG(release, debug|release): PRE_TARGETDEPS += $$OUT_PWD/../haloray-core/release/HaloRayCore.lib +else:win32:!win32-g++:CONFIG(debug, debug|release): PRE_TARGETDEPS += $$OUT_PWD/../haloray-core/debug/HaloRayCore.lib +else:unix: PRE_TARGETDEPS += $$OUT_PWD/../haloray-core/libHaloRayCore.a + +RC_ICONS = ../haloray-core/resources/haloray.ico diff --git a/src/main.cpp b/src/haloray/main.cpp similarity index 100% rename from src/main.cpp rename to src/haloray/main.cpp diff --git a/src/main.pro b/src/main.pro new file mode 100644 index 0000000..c1f3d8b --- /dev/null +++ b/src/main.pro @@ -0,0 +1,8 @@ +TEMPLATE = subdirs +SUBDIRS += \ + haloray \ + haloray-core \ + tests + +haloray.depends = haloray-core +tests.depends = haloray-core diff --git a/src/resources/haloray.rc b/src/resources/haloray.rc deleted file mode 100644 index 74ddf9a..0000000 --- a/src/resources/haloray.rc +++ /dev/null @@ -1,3 +0,0 @@ -#define IDI_ICON1 101 - -IDI_ICON1 ICON "haloray.ico" diff --git a/tests/cameraTests.cpp b/src/tests/cameraTests.cpp similarity index 96% rename from tests/cameraTests.cpp rename to src/tests/cameraTests.cpp index 237429f..447d173 100644 --- a/tests/cameraTests.cpp +++ b/src/tests/cameraTests.cpp @@ -1,5 +1,5 @@ #include -#include "../src/simulation/camera.h" +#include "simulation/camera.h" Q_DECLARE_METATYPE(HaloSim::Projection) diff --git a/tests/crystalPopulationRepositoryTests.cpp b/src/tests/crystalPopulationRepositoryTests.cpp similarity index 95% rename from tests/crystalPopulationRepositoryTests.cpp rename to src/tests/crystalPopulationRepositoryTests.cpp index f1858aa..9162bec 100644 --- a/tests/crystalPopulationRepositoryTests.cpp +++ b/src/tests/crystalPopulationRepositoryTests.cpp @@ -1,5 +1,5 @@ #include -#include "../src/simulation/crystalPopulationRepository.h" +#include "../haloray-core/simulation/crystalPopulationRepository.h" class CrystalPopulationRepositoryTests : public QObject { diff --git a/src/tests/tests.pro b/src/tests/tests.pro new file mode 100644 index 0000000..9bb1f51 --- /dev/null +++ b/src/tests/tests.pro @@ -0,0 +1,21 @@ +TARGET = cameraTests +TEMPLATE = app +QT += testlib +CONFIG += testcase c++17 +win32:CONFIG += windows + +SOURCES += \ + cameraTests.cpp + +win32:CONFIG(release, debug|release): LIBS += -L$$OUT_PWD/../haloray-core/release/ -lHaloRayCore +else:win32:CONFIG(debug, debug|release): LIBS += -L$$OUT_PWD/../haloray-core/debug/ -lHaloRayCore +else:unix: LIBS += -L$$OUT_PWD/../haloray-core/ -lHaloRayCore + +INCLUDEPATH += $$PWD/../haloray-core +DEPENDPATH += $$PWD/../haloray-core + +win32-g++:CONFIG(release, debug|release): PRE_TARGETDEPS += $$OUT_PWD/../haloray-core/release/libHaloRayCore.a +else:win32-g++:CONFIG(debug, debug|release): PRE_TARGETDEPS += $$OUT_PWD/../haloray-core/debug/libHaloRayCore.a +else:win32:!win32-g++:CONFIG(release, debug|release): PRE_TARGETDEPS += $$OUT_PWD/../haloray-core/release/HaloRayCore.lib +else:win32:!win32-g++:CONFIG(debug, debug|release): PRE_TARGETDEPS += $$OUT_PWD/../haloray-core/debug/HaloRayCore.lib +else:unix: PRE_TARGETDEPS += $$OUT_PWD/../haloray-core/libHaloRayCore.a diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt deleted file mode 100644 index 1fcc675..0000000 --- a/tests/CMakeLists.txt +++ /dev/null @@ -1,7 +0,0 @@ -add_executable(cameraTests cameraTests.cpp) -target_link_libraries(cameraTests Qt5::Core Qt5::Test halorayLib) -add_test(cameraTests cameraTests) - -add_executable(crystalRepoTests crystalPopulationRepositoryTests.cpp) -target_link_libraries(crystalRepoTests Qt5::Core Qt5::Test halorayLib) -add_test(crystalRepoTests crystalRepoTests) From 3c06f4fb041b9d4d4007bf3ebce2e6bc2064ed3b Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Fri, 22 May 2020 21:27:23 +0300 Subject: [PATCH 019/184] Update package and build scripts to work with Qt project files --- .gitignore | 1 + CMakeLists.txt | 48 ------------------- scripts/build.ps1 | 45 +++++++---------- scripts/ctest-to-junit.xsl | 36 -------------- scripts/package.ps1 | 4 +- scripts/test.ps1 | 27 ++++++----- src/haloray-core/haloray-core.pro | 16 +++++++ src/tests/{ => cameraTests}/cameraTests.cpp | 0 src/tests/cameraTests/cameraTests.pro | 21 ++++++++ .../crystalPopulationRepositoryTests.cpp | 0 .../crystalPopulationRepositoryTests.pro | 21 ++++++++ src/tests/tests.pro | 23 +-------- 12 files changed, 95 insertions(+), 147 deletions(-) delete mode 100644 CMakeLists.txt delete mode 100644 scripts/ctest-to-junit.xsl rename src/tests/{ => cameraTests}/cameraTests.cpp (100%) create mode 100644 src/tests/cameraTests/cameraTests.pro rename src/tests/{ => crystalPopulationRepositoryTests}/crystalPopulationRepositoryTests.cpp (100%) create mode 100644 src/tests/crystalPopulationRepositoryTests/crystalPopulationRepositoryTests.pro diff --git a/.gitignore b/.gitignore index f5fb7a7..f3a4724 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ build/* +build-*/ .vscode/* src/version.h Testing/ diff --git a/CMakeLists.txt b/CMakeLists.txt deleted file mode 100644 index 1cb098d..0000000 --- a/CMakeLists.txt +++ /dev/null @@ -1,48 +0,0 @@ -cmake_minimum_required(VERSION 3.1.0 FATAL_ERROR) -project(HaloRay) -include(Dart) - -# Optionally set the git branch in AppVeyor -set(GIT_BRANCH "Local build" CACHE STRING "Git branch to show in dev builds") - -# Get the latest abbreviated commit hash of the working branch -execute_process( - COMMAND git log -1 --format=%h - WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} - OUTPUT_VARIABLE GIT_COMMIT_HASH - OUTPUT_STRIP_TRAILING_WHITESPACE -) - -add_definitions("-DGIT_COMMIT_HASH=${GIT_COMMIT_HASH}") -add_definitions("-DGIT_BRANCH=${GIT_BRANCH}") - -if (HALORAY_VERSION) - # Strip running build number from version - string(REGEX REPLACE "-.+$" "" HALORAY_VERSION_NO_BUILD_NUMBER ${HALORAY_VERSION}) - add_definitions(-DHALORAY_VERSION=${HALORAY_VERSION_NO_BUILD_NUMBER}) -endif() - -set(CMAKE_CXX_STANDARD 14) -set(CMAKE_CXX_STANDARD_REQUIRED ON) -set(CMAKE_CXX_EXTENSIONS OFF) - -enable_testing() - -if(MSVC) - add_definitions(-D_CRT_SECURE_NO_WARNINGS) -endif() - -if(CMAKE_VERSION VERSION_LESS "3.7.0") - # find includes in the corresponding build directories - set(CMAKE_INCLUDE_CURRENT_DIR ON) -endif() - -# Instruct CMake to run moc automatically when needed -set(CMAKE_AUTOMOC ON) -# Instruct CMake to run Qt RCC for resource files -set(CMAKE_AUTORCC ON) - -find_package(Qt5 COMPONENTS Core Widgets Gui Test REQUIRED) - -add_subdirectory(src) -add_subdirectory(tests) diff --git a/scripts/build.ps1 b/scripts/build.ps1 index 99cd0fe..12980f7 100644 --- a/scripts/build.ps1 +++ b/scripts/build.ps1 @@ -1,37 +1,30 @@ # Windows build script for Appveyor -$gitBranch = $env:APPVEYOR_REPO_BRANCH -$extraParameters = if ($gitBranch -eq "master") { - "-DHALORAY_VERSION='${env:APPVEYOR_BUILD_VERSION}'" -} else { - "-DGIT_BRANCH='${gitBranch}'" +pushd "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build" +cmd /c "vcvars64.bat&set" | +foreach { + if ($_ -match "=") { + $v = $_.split("="); set-item -force -path "ENV:\$($v[0])" -value "$($v[1])" + } } +popd +Write-Host "`nVisual Studio 2017 Command Prompt variables set." -ForegroundColor Yellow -ls $env:Qt5_DIR +$extraParameters = if ($gitBranch -eq "master") { + $version = ${env:APPVEYOR_BUILD_VERSION}.Split('-')[0] + "-DHALORAY_VERSION='${version}'" +} pushd mkdir build -cd build - -pushd -cmake .. -G "Visual Studio 15 2017 Win64" $extraParameters -cmake --build . --config Release -cd .\src\Release\ -& "${env:Qt5_DIR}\bin\qtenv2.bat" -& "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat" x64 -& "${env:Qt5_DIR}\bin\windeployqt.exe" ` - --no-quick-import ` - --no-translations ` - --no-webkit2 ` - --no-angle ` - --no-opengl-sw ` - --no-system-d3d-compiler ` - --release ` - haloray.exe +cd src +& "${env:Qt5_DIR}\bin\qmake.exe" main.pro -o ..\build\ +cd ..\build +nmake 2>$null popd pushd -cd .\tests\Release\ +cd build\haloray\release & "${env:Qt5_DIR}\bin\windeployqt.exe" ` --no-quick-import ` --no-translations ` @@ -40,7 +33,5 @@ cd .\tests\Release\ --no-opengl-sw ` --no-system-d3d-compiler ` --release ` - . -popd - + haloray.exe popd diff --git a/scripts/ctest-to-junit.xsl b/scripts/ctest-to-junit.xsl deleted file mode 100644 index 8ac48f5..0000000 --- a/scripts/ctest-to-junit.xsl +++ /dev/null @@ -1,36 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/scripts/package.ps1 b/scripts/package.ps1 index 3492fdc..10adbc7 100644 --- a/scripts/package.ps1 +++ b/scripts/package.ps1 @@ -9,7 +9,7 @@ else { } $destination = "${env:APPVEYOR_BUILD_FOLDER}\haloray-${version}.zip" -$buildLocation = "${env:APPVEYOR_BUILD_FOLDER}\build\src\Release\*" +$buildLocation = "${env:APPVEYOR_BUILD_FOLDER}\build\haloray\release\*" -7z a $destination $buildLocation '-x!*.lib' +7z a $destination $buildLocation '-x!*.lib' '-x!*.res' '-x!*.obj' 7z a $destination "${env:APPVEYOR_BUILD_FOLDER}\*.md" diff --git a/scripts/test.ps1 b/scripts/test.ps1 index 1b6a492..f44b931 100644 --- a/scripts/test.ps1 +++ b/scripts/test.ps1 @@ -1,21 +1,22 @@ # Windows test script for Appveyor -$ErrorActionPreference = "Stop"; - -$XSLInputElement = New-Object System.Xml.Xsl.XslCompiledTransform -$XSLInputElement.Load($(Join-Path $env:APPVEYOR_BUILD_FOLDER "scripts\ctest-to-junit.xsl")) +pushd "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build" +cmd /c "vcvars64.bat&set" | +foreach { + if ($_ -match "=") { + $v = $_.split("="); set-item -force -path "ENV:\$($v[0])" -value "$($v[1])" + } +} +popd +Write-Host "`nVisual Studio 2017 Command Prompt variables set." -ForegroundColor Yellow pushd cd build -ctest --no-compress-output -T Test -foreach ($testReport in Get-ChildItem -Path .\Testing\*\Test.xml) -{ - $XSLInputElement.Transform($(Resolve-Path $testReport.FullName), (Join-Path (Resolve-Path .) "ctest-to-junit-results.xml")) - $wc = New-Object 'System.Net.WebClient' - $wc.UploadFile("https://ci.appveyor.com/api/testresults/junit/$($env:APPVEYOR_JOB_ID)", (Resolve-Path .\ctest-to-junit-results.xml)) +nmake check TESTARGS="-o xunit-results.xml,xunitxml" 2>$null - if ($res.FailedCount -gt 0) { - throw "$($res.FailedCount) tests failed." - } +foreach ($testReport in Get-ChildItem -Path xunit-results.xml -Recurse) { + $wc = New-Object 'System.Net.WebClient' + $wc.UploadFile("https://ci.appveyor.com/api/testresults/junit/$($env:APPVEYOR_JOB_ID)", $testReport.FullName) } + popd diff --git a/src/haloray-core/haloray-core.pro b/src/haloray-core/haloray-core.pro index dddd833..2cd5779 100644 --- a/src/haloray-core/haloray-core.pro +++ b/src/haloray-core/haloray-core.pro @@ -7,6 +7,22 @@ win32:CONFIG += windows DEFINES += QT_DEPRECATED_WARNINGS +GIT_COMMIT_HASH=$$system(git log -1 --format=%h) + +DEFINES += "GIT_COMMIT_HASH=\"$$GIT_COMMIT_HASH\"" +GIT_BRANCH = $$(APPVEYOR_REPO_BRANCH) +isEmpty(GIT_BRANCH) { + LOCAL_GIT_BRANCH=$$system(git rev-parse --abbrev-ref HEAD) + DEFINES += "GIT_BRANCH=\"$$LOCAL_GIT_BRANCH\"" +} else { + DEFINES += "GIT_BRANCH=\"$$GIT_BRANCH\"" +} + +HALORAY_VERSION = $$(HALORAY_VERSION) +!isEmpty(HALORAY_VERSION) { + DEFINES += "HALORAY_VERSION=\"$(HALORAY_VERSION)\"" +} + HEADERS += \ gui/addCrystalPopulationButton.h \ gui/crystalModel.h \ diff --git a/src/tests/cameraTests.cpp b/src/tests/cameraTests/cameraTests.cpp similarity index 100% rename from src/tests/cameraTests.cpp rename to src/tests/cameraTests/cameraTests.cpp diff --git a/src/tests/cameraTests/cameraTests.pro b/src/tests/cameraTests/cameraTests.pro new file mode 100644 index 0000000..3d7511d --- /dev/null +++ b/src/tests/cameraTests/cameraTests.pro @@ -0,0 +1,21 @@ +TARGET = cameraTests +TEMPLATE = app +QT += testlib +CONFIG += testcase c++17 +win32:CONFIG += windows + +SOURCES += \ + cameraTests.cpp + +win32:CONFIG(release, debug|release): LIBS += -L$$OUT_PWD/../../haloray-core/release/ -lHaloRayCore +else:win32:CONFIG(debug, debug|release): LIBS += -L$$OUT_PWD/../../haloray-core/debug/ -lHaloRayCore +else:unix: LIBS += -L$$OUT_PWD/../../haloray-core/ -lHaloRayCore + +INCLUDEPATH += $$PWD/../../haloray-core +DEPENDPATH += $$PWD/../../haloray-core + +win32-g++:CONFIG(release, debug|release): PRE_TARGETDEPS += $$OUT_PWD/../../haloray-core/release/libHaloRayCore.a +else:win32-g++:CONFIG(debug, debug|release): PRE_TARGETDEPS += $$OUT_PWD/../../haloray-core/debug/libHaloRayCore.a +else:win32:!win32-g++:CONFIG(release, debug|release): PRE_TARGETDEPS += $$OUT_PWD/../../haloray-core/release/HaloRayCore.lib +else:win32:!win32-g++:CONFIG(debug, debug|release): PRE_TARGETDEPS += $$OUT_PWD/../../haloray-core/debug/HaloRayCore.lib +else:unix: PRE_TARGETDEPS += $$OUT_PWD/../../haloray-core/libHaloRayCore.a diff --git a/src/tests/crystalPopulationRepositoryTests.cpp b/src/tests/crystalPopulationRepositoryTests/crystalPopulationRepositoryTests.cpp similarity index 100% rename from src/tests/crystalPopulationRepositoryTests.cpp rename to src/tests/crystalPopulationRepositoryTests/crystalPopulationRepositoryTests.cpp diff --git a/src/tests/crystalPopulationRepositoryTests/crystalPopulationRepositoryTests.pro b/src/tests/crystalPopulationRepositoryTests/crystalPopulationRepositoryTests.pro new file mode 100644 index 0000000..017c514 --- /dev/null +++ b/src/tests/crystalPopulationRepositoryTests/crystalPopulationRepositoryTests.pro @@ -0,0 +1,21 @@ +TARGET = crystalPopulationRepositoryTests +TEMPLATE = app +QT += testlib +CONFIG += testcase c++17 +win32:CONFIG += windows + +SOURCES += \ + crystalPopulationRepositoryTests.cpp + +win32:CONFIG(release, debug|release): LIBS += -L$$OUT_PWD/../../haloray-core/release/ -lHaloRayCore +else:win32:CONFIG(debug, debug|release): LIBS += -L$$OUT_PWD/../../haloray-core/debug/ -lHaloRayCore +else:unix: LIBS += -L$$OUT_PWD/../../haloray-core/ -lHaloRayCore + +INCLUDEPATH += $$PWD/../../haloray-core +DEPENDPATH += $$PWD/../../haloray-core + +win32-g++:CONFIG(release, debug|release): PRE_TARGETDEPS += $$OUT_PWD/../../haloray-core/release/libHaloRayCore.a +else:win32-g++:CONFIG(debug, debug|release): PRE_TARGETDEPS += $$OUT_PWD/../../haloray-core/debug/libHaloRayCore.a +else:win32:!win32-g++:CONFIG(release, debug|release): PRE_TARGETDEPS += $$OUT_PWD/../../haloray-core/release/HaloRayCore.lib +else:win32:!win32-g++:CONFIG(debug, debug|release): PRE_TARGETDEPS += $$OUT_PWD/../../haloray-core/debug/HaloRayCore.lib +else:unix: PRE_TARGETDEPS += $$OUT_PWD/../../haloray-core/libHaloRayCore.a diff --git a/src/tests/tests.pro b/src/tests/tests.pro index 9bb1f51..0e9152c 100644 --- a/src/tests/tests.pro +++ b/src/tests/tests.pro @@ -1,21 +1,2 @@ -TARGET = cameraTests -TEMPLATE = app -QT += testlib -CONFIG += testcase c++17 -win32:CONFIG += windows - -SOURCES += \ - cameraTests.cpp - -win32:CONFIG(release, debug|release): LIBS += -L$$OUT_PWD/../haloray-core/release/ -lHaloRayCore -else:win32:CONFIG(debug, debug|release): LIBS += -L$$OUT_PWD/../haloray-core/debug/ -lHaloRayCore -else:unix: LIBS += -L$$OUT_PWD/../haloray-core/ -lHaloRayCore - -INCLUDEPATH += $$PWD/../haloray-core -DEPENDPATH += $$PWD/../haloray-core - -win32-g++:CONFIG(release, debug|release): PRE_TARGETDEPS += $$OUT_PWD/../haloray-core/release/libHaloRayCore.a -else:win32-g++:CONFIG(debug, debug|release): PRE_TARGETDEPS += $$OUT_PWD/../haloray-core/debug/libHaloRayCore.a -else:win32:!win32-g++:CONFIG(release, debug|release): PRE_TARGETDEPS += $$OUT_PWD/../haloray-core/release/HaloRayCore.lib -else:win32:!win32-g++:CONFIG(debug, debug|release): PRE_TARGETDEPS += $$OUT_PWD/../haloray-core/debug/HaloRayCore.lib -else:unix: PRE_TARGETDEPS += $$OUT_PWD/../haloray-core/libHaloRayCore.a +TEMPLATE = subdirs +SUBDIRS = cameraTests crystalPopulationRepositoryTests From 27d1f6613ab9a3e58baf21a9b7d9130e217cd8f7 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 23 May 2020 02:12:53 +0300 Subject: [PATCH 020/184] Update readme Removed mentions of CMake and added build instructions for qmake. --- README.md | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index dbd5212..34dad62 100644 --- a/README.md +++ b/README.md @@ -111,12 +111,13 @@ These settings affect how the results of the simulation are shown on the screen. ## How to build? HaloRay requires an OpenGL 4.4 compliant GPU. -The build is done using [CMake](https://cmake.org/). The user interface is built with [Qt 5](https://www.qt.io/), so you need to [download the Qt libraries](https://www.qt.io/download-qt-installer) before compiling HaloRay. +The build is handled with Qt's build tool qmake. + On Linux you can also install Qt using your package manager. On Ubuntu Linux you can install Qt by running: @@ -128,17 +129,18 @@ On Windows you need to set either `Qt5_DIR` or `CMAKE_PREFIX_PATH` environment variable to point to the Qt prefix path, e.g. `C:\Qt\5.12.3\msvc2017_64\` -Otherwise CMake won't be able to find the Qt libraries. - Finally build the project by running: ```bash mkdir build -cd build -cmake .. -cmake --build . --config Release +cd src +qmake.exe main.pro -o ..\build\ +cd ..\build +make ``` +You can use `nmake` instead of `make` on Windows. + On Windows you need to add the Qt5 binary directory to your PATH environment variable or copy at least the following Qt DLL files to the same folder as the resulting executable: @@ -161,5 +163,4 @@ Appveyor CI server. - [Panu Lahtinen](https://github.com/pnuu) for additional Linux support - Jukka Ruoskanen for making HaloPoint 2.0 back in the day and inspiring me to start working on HaloRay - [Jaakko Lehtinen](https://users.aalto.fi/~lehtinj7/) for super valuable lessons in computer graphics -- [Nuklear](https://github.com/vurtun/nuklear/) for enabling me get this project - off the ground + From 15f36fe61752531fd4733d0298b10a8b15a1f9ba Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 23 May 2020 02:13:52 +0300 Subject: [PATCH 021/184] Update changelog --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 00e3245..8bec13b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed - Force application to use native desktop OpenGL instead of ANGLE or software renderer +- Build system switched to qmake from CMake ## 2.4.0 - 2019-07-29 From 36374a6dbb7004e867b6b9378df12468a9740bce Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 23 May 2020 10:25:22 +0300 Subject: [PATCH 022/184] Add release flag to qmake call in build script --- scripts/build.ps1 | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/scripts/build.ps1 b/scripts/build.ps1 index 12980f7..ff15305 100644 --- a/scripts/build.ps1 +++ b/scripts/build.ps1 @@ -11,14 +11,14 @@ popd Write-Host "`nVisual Studio 2017 Command Prompt variables set." -ForegroundColor Yellow $extraParameters = if ($gitBranch -eq "master") { - $version = ${env:APPVEYOR_BUILD_VERSION}.Split('-')[0] - "-DHALORAY_VERSION='${version}'" + $version = ${env:APPVEYOR_BUILD_VERSION}.Split('-')[0] + "-DHALORAY_VERSION='${version}'" } pushd mkdir build cd src -& "${env:Qt5_DIR}\bin\qmake.exe" main.pro -o ..\build\ +& "${env:Qt5_DIR}\bin\qmake.exe" main.pro -o ..\build\ -config release cd ..\build nmake 2>$null popd @@ -26,12 +26,12 @@ popd pushd cd build\haloray\release & "${env:Qt5_DIR}\bin\windeployqt.exe" ` - --no-quick-import ` - --no-translations ` - --no-webkit2 ` - --no-angle ` - --no-opengl-sw ` - --no-system-d3d-compiler ` - --release ` - haloray.exe + --no-quick-import ` + --no-translations ` + --no-webkit2 ` + --no-angle ` + --no-opengl-sw ` + --no-system-d3d-compiler ` + --release ` + haloray.exe popd From 5c5308cd342eead995e2065a6c8e4e0d4350761c Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 23 May 2020 10:31:03 +0300 Subject: [PATCH 023/184] Update gitignore --- .gitignore | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index f3a4724..72c9d43 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,7 @@ build/* build-*/ .vscode/* -src/version.h -Testing/ +.vs/* **/*.user +*.json +**/.qmake.stash \ No newline at end of file From 430d956e02929c5ee2d2be2ef02b1ff202aeb7c2 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 23 May 2020 11:52:12 +0300 Subject: [PATCH 024/184] Fix compiler warnings `const` keyword on the return type did not have an effect on anything, and the `parent` function parameters were unused. --- src/haloray-core/gui/crystalModel.cpp | 4 ++-- src/haloray-core/simulation/simulationEngine.cpp | 2 +- src/haloray-core/simulation/simulationEngine.h | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/haloray-core/gui/crystalModel.cpp b/src/haloray-core/gui/crystalModel.cpp index ce06331..d1786f7 100644 --- a/src/haloray-core/gui/crystalModel.cpp +++ b/src/haloray-core/gui/crystalModel.cpp @@ -7,12 +7,12 @@ CrystalModel::CrystalModel(std::shared_ptr { } -int CrystalModel::rowCount(const QModelIndex &parent) const +int CrystalModel::rowCount(const QModelIndex&) const { return static_cast(mCrystals->getCount()); } -int CrystalModel::columnCount(const QModelIndex &parent) const +int CrystalModel::columnCount(const QModelIndex&) const { return 9; } diff --git a/src/haloray-core/simulation/simulationEngine.cpp b/src/haloray-core/simulation/simulationEngine.cpp index 2a84ec8..26fcc87 100644 --- a/src/haloray-core/simulation/simulationEngine.cpp +++ b/src/haloray-core/simulation/simulationEngine.cpp @@ -65,7 +65,7 @@ void SimulationEngine::setLightSource(const LightSource light) } } -const unsigned int SimulationEngine::getOutputTextureHandle() const +unsigned int SimulationEngine::getOutputTextureHandle() const { return mSimulationTexture->getHandle(); } diff --git a/src/haloray-core/simulation/simulationEngine.h b/src/haloray-core/simulation/simulationEngine.h index a722875..c375751 100644 --- a/src/haloray-core/simulation/simulationEngine.h +++ b/src/haloray-core/simulation/simulationEngine.h @@ -40,7 +40,7 @@ class SimulationEngine : protected QOpenGLFunctions_4_4_Core void setMultipleScatteringProbability(double); double getMultipleScatteringProbability() const; - const unsigned int getOutputTextureHandle() const; + unsigned int getOutputTextureHandle() const; void resizeOutputTextureCallback(const unsigned int width, const unsigned int height); From 57d3acc80b9d2a98d69326c71c5142c4d7938322 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 23 May 2020 19:42:02 +0300 Subject: [PATCH 025/184] Fix compiler warnings GCC on linux warned about member initialization reordering and having `const` on some return types because it has no effect for bool, int and such types. --- src/haloray-core/gui/openGLWidget.cpp | 4 ++-- src/haloray-core/opengl/texture.cpp | 4 ++-- src/haloray-core/opengl/texture.h | 4 ++-- src/haloray-core/simulation/simulationEngine.cpp | 6 +++--- 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/haloray-core/gui/openGLWidget.cpp b/src/haloray-core/gui/openGLWidget.cpp index 2dd2ce0..d0e82c9 100644 --- a/src/haloray-core/gui/openGLWidget.cpp +++ b/src/haloray-core/gui/openGLWidget.cpp @@ -11,11 +11,11 @@ OpenGLWidget::OpenGLWidget(enginePtr engine, QWidget *parent) : QOpenGLWidget(parent), + mEngine(engine), mDragging(false), mPreviousDragPoint(QPoint(0, 0)), mExposure(1.0f), - mMaxIterations(1), - mEngine(engine) + mMaxIterations(1) { setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding); setUpdateBehavior(UpdateBehavior::PartialUpdate); diff --git a/src/haloray-core/opengl/texture.cpp b/src/haloray-core/opengl/texture.cpp index fba7b02..2451731 100644 --- a/src/haloray-core/opengl/texture.cpp +++ b/src/haloray-core/opengl/texture.cpp @@ -37,12 +37,12 @@ Texture::~Texture() glDeleteTextures(1, &mTextureHandle); } -const unsigned int Texture::getHandle() const +unsigned int Texture::getHandle() const { return mTextureHandle; } -const unsigned int Texture::getTextureUnit() const +unsigned int Texture::getTextureUnit() const { return mTextureUnit; } diff --git a/src/haloray-core/opengl/texture.h b/src/haloray-core/opengl/texture.h index 20b03a0..10c2962 100644 --- a/src/haloray-core/opengl/texture.h +++ b/src/haloray-core/opengl/texture.h @@ -16,8 +16,8 @@ class Texture : protected QOpenGLFunctions_4_4_Core Texture(unsigned int width, unsigned int height, unsigned int textureUnit, TextureType type); ~Texture(); - const unsigned int getHandle() const; - const unsigned int getTextureUnit() const; + unsigned int getHandle() const; + unsigned int getTextureUnit() const; private: Texture operator=(const Texture &); diff --git a/src/haloray-core/simulation/simulationEngine.cpp b/src/haloray-core/simulation/simulationEngine.cpp index 26fcc87..f4fd410 100644 --- a/src/haloray-core/simulation/simulationEngine.cpp +++ b/src/haloray-core/simulation/simulationEngine.cpp @@ -18,12 +18,12 @@ SimulationEngine::SimulationEngine( mOutputHeight(600), mMersenneTwister(std::mt19937(std::random_device()())), mUniformDistribution(std::uniform_int_distribution(0, std::numeric_limits::max())), + mCamera(Camera::createDefaultCamera()), + mLight(LightSource::createDefaultLightSource()), mRunning(false), + mInitialized(false), mRaysPerStep(500000), mIteration(0), - mInitialized(false), - mCamera(Camera::createDefaultCamera()), - mLight(LightSource::createDefaultLightSource()), mCameraLockedToLightSource(false), mMultipleScatteringProbability(0.0), mCrystalRepository(crystalRepository) From b03498ca3b53d0952d2fa6b21ddc0371098f10f0 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 23 May 2020 20:08:37 +0300 Subject: [PATCH 026/184] Emit signal from SliderSpinBox only if value really changed Now calling setValue on SliderSpinBox with its current value does not emit a valueChanged signal. --- src/haloray-core/gui/sliderSpinBox.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/haloray-core/gui/sliderSpinBox.cpp b/src/haloray-core/gui/sliderSpinBox.cpp index a930fa5..c5fdf39 100644 --- a/src/haloray-core/gui/sliderSpinBox.cpp +++ b/src/haloray-core/gui/sliderSpinBox.cpp @@ -59,6 +59,7 @@ void SliderSpinBox::setWrapping(bool wrapping) void SliderSpinBox::setValue(double value) { + if (mSpinBox->value() == value) return; mSpinBox->setValue(value); } From 35b57c9407c65ecd7f2dbf9092ce84d32b1d36c9 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Thu, 4 Jun 2020 22:28:50 +0300 Subject: [PATCH 027/184] Remove implicitely deleted code QtCreator warned that the private copy constructor and copy assignment operator were being implicitely deleted. --- src/haloray-core/opengl/textureRenderer.h | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/haloray-core/opengl/textureRenderer.h b/src/haloray-core/opengl/textureRenderer.h index 3968378..ccc1c29 100644 --- a/src/haloray-core/opengl/textureRenderer.h +++ b/src/haloray-core/opengl/textureRenderer.h @@ -16,9 +16,6 @@ class TextureRenderer : protected QOpenGLFunctions_4_4_Core ~TextureRenderer(); private: - TextureRenderer(const TextureRenderer &) = default; - TextureRenderer &operator=(const TextureRenderer &) = default; - static std::unique_ptr initializeTexDrawShaderProgram(); std::unique_ptr mTexDrawProgram; unsigned int mQuadVao; From 5b8da99f85f6cd4459b26f5b1e1f3f4242c4705f Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 6 Jun 2020 00:06:40 +0300 Subject: [PATCH 028/184] Forward declare classes to speed up builds The Qt headers are pretty heavy and they were included multiple times in many places, when a simple forward declaration would have been enough. --- .../gui/addCrystalPopulationButton.cpp | 3 ++ .../gui/addCrystalPopulationButton.h | 8 ++++-- src/haloray-core/gui/crystalModel.cpp | 4 ++- src/haloray-core/gui/crystalModel.h | 12 ++++++-- .../gui/crystalSettingsWidget.cpp | 8 ++++++ src/haloray-core/gui/crystalSettingsWidget.h | 26 +++++++++-------- .../gui/generalSettingsWidget.cpp | 3 ++ src/haloray-core/gui/generalSettingsWidget.h | 8 +++--- src/haloray-core/gui/mainWindow.cpp | 10 ++++++- src/haloray-core/gui/mainWindow.h | 28 +++++++++++-------- src/haloray-core/gui/openGLWidget.cpp | 1 + src/haloray-core/gui/openGLWidget.h | 21 ++++++++++---- src/haloray-core/gui/renderButton.h | 1 - src/haloray-core/gui/sliderSpinBox.cpp | 2 ++ src/haloray-core/gui/sliderSpinBox.h | 7 +++-- src/haloray-core/gui/viewSettingsWidget.cpp | 4 +++ src/haloray-core/gui/viewSettingsWidget.h | 8 +++--- src/haloray-core/opengl/textureRenderer.cpp | 1 - src/haloray-core/opengl/textureRenderer.h | 2 +- .../simulation/simulationEngine.h | 3 +- 20 files changed, 108 insertions(+), 52 deletions(-) diff --git a/src/haloray-core/gui/addCrystalPopulationButton.cpp b/src/haloray-core/gui/addCrystalPopulationButton.cpp index 02d0dcf..e352aed 100644 --- a/src/haloray-core/gui/addCrystalPopulationButton.cpp +++ b/src/haloray-core/gui/addCrystalPopulationButton.cpp @@ -1,4 +1,7 @@ #include "addCrystalPopulationButton.h" +#include +#include + AddCrystalPopulationButton::AddCrystalPopulationButton(QWidget *parent) : QToolButton(parent) diff --git a/src/haloray-core/gui/addCrystalPopulationButton.h b/src/haloray-core/gui/addCrystalPopulationButton.h index 6bf0544..7043384 100644 --- a/src/haloray-core/gui/addCrystalPopulationButton.h +++ b/src/haloray-core/gui/addCrystalPopulationButton.h @@ -1,10 +1,12 @@ #pragma once #include -#include -#include -#include #include "../simulation/crystalPopulation.h" +class QWidget; +class QMenu; +class QAction; +class QToolButton; + class AddCrystalPopulationButton : public QToolButton { Q_OBJECT diff --git a/src/haloray-core/gui/crystalModel.cpp b/src/haloray-core/gui/crystalModel.cpp index d1786f7..42dc148 100644 --- a/src/haloray-core/gui/crystalModel.cpp +++ b/src/haloray-core/gui/crystalModel.cpp @@ -1,5 +1,7 @@ #include "crystalModel.h" -#include +#include +#include +#include "../simulation/crystalPopulationRepository.h" CrystalModel::CrystalModel(std::shared_ptr crystalRepository, QWidget *parent) : QAbstractTableModel(parent), diff --git a/src/haloray-core/gui/crystalModel.h b/src/haloray-core/gui/crystalModel.h index 2f9dd19..e8b58a2 100644 --- a/src/haloray-core/gui/crystalModel.h +++ b/src/haloray-core/gui/crystalModel.h @@ -1,10 +1,16 @@ #pragma once #include -#include -#include #include #include "../simulation/crystalPopulation.h" -#include "../simulation/crystalPopulationRepository.h" + +namespace HaloSim +{ +class CrystalPopulationRepository; +} + +class QWidget; +class QVariant; +class QModelIndex; class CrystalModel : public QAbstractTableModel { diff --git a/src/haloray-core/gui/crystalSettingsWidget.cpp b/src/haloray-core/gui/crystalSettingsWidget.cpp index 268bcf9..96b4d2f 100644 --- a/src/haloray-core/gui/crystalSettingsWidget.cpp +++ b/src/haloray-core/gui/crystalSettingsWidget.cpp @@ -1,7 +1,15 @@ #include "crystalSettingsWidget.h" #include #include +#include +#include +#include +#include +#include +#include "sliderSpinBox.h" +#include "addCrystalPopulationButton.h" #include "../simulation/crystalPopulation.h" +#include "crystalModel.h" CrystalSettingsWidget::CrystalSettingsWidget(std::shared_ptr crystalRepository, QWidget *parent) : QGroupBox("Crystal population settings", parent), diff --git a/src/haloray-core/gui/crystalSettingsWidget.h b/src/haloray-core/gui/crystalSettingsWidget.h index 4f11af2..7bb30df 100644 --- a/src/haloray-core/gui/crystalSettingsWidget.h +++ b/src/haloray-core/gui/crystalSettingsWidget.h @@ -1,16 +1,20 @@ #pragma once -#include #include -#include -#include -#include -#include -#include -#include "addCrystalPopulationButton.h" -#include "sliderSpinBox.h" -#include "crystalModel.h" -#include "../simulation/crystalPopulation.h" -#include "../simulation/crystalPopulationRepository.h" +#include + +namespace HaloSim +{ +class CrystalPopulationRepository; +} + +class QToolButton; +class AddCrystalPopulationButton; +class SliderSpinBox; +class QComboBox; +class QLabel; +class QSpinBox; +class CrystalModel; +class QDataWidgetMapper; class CrystalSettingsWidget : public QGroupBox { diff --git a/src/haloray-core/gui/generalSettingsWidget.cpp b/src/haloray-core/gui/generalSettingsWidget.cpp index 646c593..47f8494 100644 --- a/src/haloray-core/gui/generalSettingsWidget.cpp +++ b/src/haloray-core/gui/generalSettingsWidget.cpp @@ -1,5 +1,8 @@ #include "generalSettingsWidget.h" #include +#include +#include "sliderSpinBox.h" +#include "../simulation/lightSource.h" GeneralSettingsWidget::GeneralSettingsWidget(QWidget *parent) : QGroupBox("General settings", parent) diff --git a/src/haloray-core/gui/generalSettingsWidget.h b/src/haloray-core/gui/generalSettingsWidget.h index 0ecf1c7..2075d86 100644 --- a/src/haloray-core/gui/generalSettingsWidget.h +++ b/src/haloray-core/gui/generalSettingsWidget.h @@ -1,11 +1,11 @@ #pragma once -#include -#include -#include #include -#include "sliderSpinBox.h" #include "../simulation/lightSource.h" +class QDoubleSpinBox; +class QSpinBox; +class SliderSpinBox; + class GeneralSettingsWidget : public QGroupBox { Q_OBJECT diff --git a/src/haloray-core/gui/mainWindow.cpp b/src/haloray-core/gui/mainWindow.cpp index afac0d0..603daa8 100644 --- a/src/haloray-core/gui/mainWindow.cpp +++ b/src/haloray-core/gui/mainWindow.cpp @@ -11,8 +11,16 @@ #include #include #include -#include "../simulation/crystalPopulation.h" +#include +#include +#include "openGLWidget.h" +#include "generalSettingsWidget.h" +#include "crystalSettingsWidget.h" +#include "viewSettingsWidget.h" #include "sliderSpinBox.h" +#include "renderButton.h" +#include "../simulation/crystalPopulation.h" +#include "../simulation/simulationEngine.h" #define STRINGIFY0(v) #v #define STRINGIFY(v) STRINGIFY0(v) diff --git a/src/haloray-core/gui/mainWindow.h b/src/haloray-core/gui/mainWindow.h index c1998df..c2aedad 100644 --- a/src/haloray-core/gui/mainWindow.h +++ b/src/haloray-core/gui/mainWindow.h @@ -1,18 +1,22 @@ #pragma once #include -#include -#include -#include -#include -#include #include -#include "renderButton.h" -#include "openGLWidget.h" -#include "generalSettingsWidget.h" -#include "crystalSettingsWidget.h" -#include "viewSettingsWidget.h" -#include "../simulation/simulationEngine.h" -#include "../simulation/crystalPopulationRepository.h" + +namespace HaloSim +{ +class CrystalPopulationRepository; +class SimulationEngine; +} + +class QDoubleSpinBox; +class QProgressBar; +class QScrollArea; +class QAction; +class OpenGLWidget; +class RenderButton; +class ViewSettingsWidget; +class GeneralSettingsWidget; +class CrystalSettingsWidget; class MainWindow : public QMainWindow { diff --git a/src/haloray-core/gui/openGLWidget.cpp b/src/haloray-core/gui/openGLWidget.cpp index d0e82c9..0ab53e3 100644 --- a/src/haloray-core/gui/openGLWidget.cpp +++ b/src/haloray-core/gui/openGLWidget.cpp @@ -1,6 +1,7 @@ #include "openGLWidget.h" #include #include +#include #include #include #include "../simulation/simulationEngine.h" diff --git a/src/haloray-core/gui/openGLWidget.h b/src/haloray-core/gui/openGLWidget.h index e10011b..9a111fb 100644 --- a/src/haloray-core/gui/openGLWidget.h +++ b/src/haloray-core/gui/openGLWidget.h @@ -1,13 +1,22 @@ #pragma once #include -#include -#include -#include #include -#include #include -#include "../simulation/simulationEngine.h" -#include "../opengl/textureRenderer.h" + +namespace HaloSim +{ +class SimulationEngine; +} + +namespace OpenGL +{ +class TextureRenderer; +} + +class QMouseEvent; +class QWheelEvent; +class QSize; +class QPoint; class OpenGLWidget : public QOpenGLWidget, protected QOpenGLFunctions_4_4_Core { diff --git a/src/haloray-core/gui/renderButton.h b/src/haloray-core/gui/renderButton.h index 2ab5adb..fe3386c 100644 --- a/src/haloray-core/gui/renderButton.h +++ b/src/haloray-core/gui/renderButton.h @@ -1,6 +1,5 @@ #pragma once #include -#include class RenderButton : public QPushButton { diff --git a/src/haloray-core/gui/sliderSpinBox.cpp b/src/haloray-core/gui/sliderSpinBox.cpp index c5fdf39..28a3bef 100644 --- a/src/haloray-core/gui/sliderSpinBox.cpp +++ b/src/haloray-core/gui/sliderSpinBox.cpp @@ -1,5 +1,7 @@ #include "sliderSpinBox.h" #include +#include +#include const double sliderMultiplier = 100.0; diff --git a/src/haloray-core/gui/sliderSpinBox.h b/src/haloray-core/gui/sliderSpinBox.h index f8a4488..608905e 100644 --- a/src/haloray-core/gui/sliderSpinBox.h +++ b/src/haloray-core/gui/sliderSpinBox.h @@ -1,8 +1,9 @@ #pragma once #include -#include -#include -#include + +class QSlider; +class QDoubleSpinBox; +class QString; class SliderSpinBox : public QWidget { diff --git a/src/haloray-core/gui/viewSettingsWidget.cpp b/src/haloray-core/gui/viewSettingsWidget.cpp index c1e4765..e9b2eea 100644 --- a/src/haloray-core/gui/viewSettingsWidget.cpp +++ b/src/haloray-core/gui/viewSettingsWidget.cpp @@ -1,5 +1,9 @@ #include "viewSettingsWidget.h" #include +#include +#include +#include "sliderSpinBox.h" +#include "../simulation/camera.h" ViewSettingsWidget::ViewSettingsWidget(QWidget *parent) : QGroupBox("View settings", parent) diff --git a/src/haloray-core/gui/viewSettingsWidget.h b/src/haloray-core/gui/viewSettingsWidget.h index fff2b67..91901b2 100644 --- a/src/haloray-core/gui/viewSettingsWidget.h +++ b/src/haloray-core/gui/viewSettingsWidget.h @@ -1,11 +1,11 @@ #pragma once #include -#include -#include -#include -#include "sliderSpinBox.h" #include "../simulation/camera.h" +class QComboBox; +class QCheckBox; +class SliderSpinBox; + class ViewSettingsWidget : public QGroupBox { Q_OBJECT diff --git a/src/haloray-core/opengl/textureRenderer.cpp b/src/haloray-core/opengl/textureRenderer.cpp index a782041..297e17b 100644 --- a/src/haloray-core/opengl/textureRenderer.cpp +++ b/src/haloray-core/opengl/textureRenderer.cpp @@ -2,7 +2,6 @@ #include #include #include -#include namespace OpenGL { diff --git a/src/haloray-core/opengl/textureRenderer.h b/src/haloray-core/opengl/textureRenderer.h index ccc1c29..6674b5f 100644 --- a/src/haloray-core/opengl/textureRenderer.h +++ b/src/haloray-core/opengl/textureRenderer.h @@ -1,8 +1,8 @@ #pragma once #include #include -#include #include +#include namespace OpenGL { diff --git a/src/haloray-core/simulation/simulationEngine.h b/src/haloray-core/simulation/simulationEngine.h index c375751..3509880 100644 --- a/src/haloray-core/simulation/simulationEngine.h +++ b/src/haloray-core/simulation/simulationEngine.h @@ -1,7 +1,6 @@ #pragma once #include #include -#include #include #include "../opengl/texture.h" #include "camera.h" @@ -9,6 +8,8 @@ #include "crystalPopulation.h" #include "crystalPopulationRepository.h" +class QOpenGLShaderProgram; + namespace HaloSim { From c645d6848adcbccf95530f804b65a3e2910d8dd5 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 6 Jun 2020 00:34:37 +0300 Subject: [PATCH 029/184] Wrap own code in HaloRay namespace --- .../gui/addCrystalPopulationButton.cpp | 16 ++++++++++------ .../gui/addCrystalPopulationButton.h | 7 ++++++- src/haloray-core/gui/crystalModel.cpp | 13 +++++++++---- src/haloray-core/gui/crystalModel.h | 18 ++++++++++-------- .../gui/crystalSettingsWidget.cpp | 9 +++++++-- src/haloray-core/gui/crystalSettingsWidget.h | 19 +++++++++++-------- .../gui/generalSettingsWidget.cpp | 9 +++++++-- src/haloray-core/gui/generalSettingsWidget.h | 10 ++++++++-- src/haloray-core/gui/mainWindow.cpp | 13 +++++++++---- src/haloray-core/gui/mainWindow.h | 17 ++++++++++------- src/haloray-core/gui/openGLWidget.cpp | 5 +++++ src/haloray-core/gui/openGLWidget.h | 12 +++++++----- src/haloray-core/gui/renderButton.cpp | 5 +++++ src/haloray-core/gui/renderButton.h | 5 +++++ src/haloray-core/gui/sliderSpinBox.cpp | 4 ++++ src/haloray-core/gui/sliderSpinBox.h | 5 +++++ src/haloray-core/gui/viewSettingsWidget.cpp | 13 +++++++++---- src/haloray-core/gui/viewSettingsWidget.h | 12 +++++++++--- src/haloray-core/simulation/camera.cpp | 6 +++--- src/haloray-core/simulation/camera.h | 4 ++-- .../simulation/crystalPopulation.cpp | 4 ++-- .../simulation/crystalPopulation.h | 4 ++-- .../crystalPopulationRepository.cpp | 4 ++-- .../simulation/crystalPopulationRepository.h | 4 ++-- src/haloray-core/simulation/lightSource.cpp | 4 ++-- src/haloray-core/simulation/lightSource.h | 4 ++-- .../simulation/simulationEngine.cpp | 4 ++-- .../simulation/simulationEngine.h | 4 ++-- src/haloray/main.cpp | 2 +- src/tests/cameraTests/cameraTests.cpp | 4 ++-- .../crystalPopulationRepositoryTests.cpp | 14 +++++++------- 31 files changed, 167 insertions(+), 87 deletions(-) diff --git a/src/haloray-core/gui/addCrystalPopulationButton.cpp b/src/haloray-core/gui/addCrystalPopulationButton.cpp index e352aed..0a22b69 100644 --- a/src/haloray-core/gui/addCrystalPopulationButton.cpp +++ b/src/haloray-core/gui/addCrystalPopulationButton.cpp @@ -2,6 +2,8 @@ #include #include +namespace HaloRay +{ AddCrystalPopulationButton::AddCrystalPopulationButton(QWidget *parent) : QToolButton(parent) @@ -25,10 +27,12 @@ AddCrystalPopulationButton::AddCrystalPopulationButton(QWidget *parent) setMenu(mMenu); - connect(this, &AddCrystalPopulationButton::clicked, [this]() { emit addPopulation(HaloSim::CrystalPopulationPreset::Random); }); - connect(mAddRandom, &QAction::triggered, [this]() { emit addPopulation(HaloSim::CrystalPopulationPreset::Random); }); - connect(mAddPlate, &QAction::triggered, [this]() { emit addPopulation(HaloSim::CrystalPopulationPreset::Plate); }); - connect(mAddColumn, &QAction::triggered, [this]() { emit addPopulation(HaloSim::CrystalPopulationPreset::Column); }); - connect(mAddParry, &QAction::triggered, [this]() { emit addPopulation(HaloSim::CrystalPopulationPreset::Parry); }); - connect(mAddLowitz, &QAction::triggered, [this]() { emit addPopulation(HaloSim::CrystalPopulationPreset::Lowitz); }); + connect(this, &AddCrystalPopulationButton::clicked, [this]() { emit addPopulation(HaloRay::CrystalPopulationPreset::Random); }); + connect(mAddRandom, &QAction::triggered, [this]() { emit addPopulation(HaloRay::CrystalPopulationPreset::Random); }); + connect(mAddPlate, &QAction::triggered, [this]() { emit addPopulation(HaloRay::CrystalPopulationPreset::Plate); }); + connect(mAddColumn, &QAction::triggered, [this]() { emit addPopulation(HaloRay::CrystalPopulationPreset::Column); }); + connect(mAddParry, &QAction::triggered, [this]() { emit addPopulation(HaloRay::CrystalPopulationPreset::Parry); }); + connect(mAddLowitz, &QAction::triggered, [this]() { emit addPopulation(HaloRay::CrystalPopulationPreset::Lowitz); }); +} + } diff --git a/src/haloray-core/gui/addCrystalPopulationButton.h b/src/haloray-core/gui/addCrystalPopulationButton.h index 7043384..6d6a415 100644 --- a/src/haloray-core/gui/addCrystalPopulationButton.h +++ b/src/haloray-core/gui/addCrystalPopulationButton.h @@ -7,6 +7,9 @@ class QMenu; class QAction; class QToolButton; +namespace HaloRay +{ + class AddCrystalPopulationButton : public QToolButton { Q_OBJECT @@ -14,7 +17,7 @@ class AddCrystalPopulationButton : public QToolButton AddCrystalPopulationButton(QWidget *parent = nullptr); signals: - void addPopulation(HaloSim::CrystalPopulationPreset); + void addPopulation(HaloRay::CrystalPopulationPreset); private: QMenu *mMenu; @@ -24,3 +27,5 @@ class AddCrystalPopulationButton : public QToolButton QAction *mAddParry; QAction *mAddLowitz; }; + +} diff --git a/src/haloray-core/gui/crystalModel.cpp b/src/haloray-core/gui/crystalModel.cpp index 42dc148..7f07094 100644 --- a/src/haloray-core/gui/crystalModel.cpp +++ b/src/haloray-core/gui/crystalModel.cpp @@ -3,7 +3,10 @@ #include #include "../simulation/crystalPopulationRepository.h" -CrystalModel::CrystalModel(std::shared_ptr crystalRepository, QWidget *parent) +namespace HaloRay +{ + +CrystalModel::CrystalModel(std::shared_ptr crystalRepository, QWidget *parent) : QAbstractTableModel(parent), mCrystals(crystalRepository) { @@ -26,7 +29,7 @@ QVariant CrystalModel::data(const QModelIndex &index, int role) const auto col = index.column(); auto row = index.row(); - const HaloSim::CrystalPopulation &crystal = mCrystals->get(row); + const HaloRay::CrystalPopulation &crystal = mCrystals->get(row); switch (col) { @@ -63,7 +66,7 @@ bool CrystalModel::setData(const QModelIndex &index, const QVariant &value, int auto row = index.row(); auto col = index.column(); - HaloSim::CrystalPopulation &crystal = mCrystals->get(row); + HaloRay::CrystalPopulation &crystal = mCrystals->get(row); switch (col) { case 0: @@ -107,7 +110,7 @@ Qt::ItemFlags CrystalModel::flags(const QModelIndex &index) const return Qt::ItemIsEditable | QAbstractTableModel::flags(index); } -void CrystalModel::addRow(HaloSim::CrystalPopulationPreset preset) +void CrystalModel::addRow(HaloRay::CrystalPopulationPreset preset) { auto row = mCrystals->getCount(); beginInsertRows(QModelIndex(), row, row); @@ -126,3 +129,5 @@ bool CrystalModel::removeRow(int row) return true; } + +} diff --git a/src/haloray-core/gui/crystalModel.h b/src/haloray-core/gui/crystalModel.h index e8b58a2..b35c954 100644 --- a/src/haloray-core/gui/crystalModel.h +++ b/src/haloray-core/gui/crystalModel.h @@ -3,29 +3,31 @@ #include #include "../simulation/crystalPopulation.h" -namespace HaloSim -{ -class CrystalPopulationRepository; -} - class QWidget; class QVariant; class QModelIndex; +namespace HaloRay +{ + +class CrystalPopulationRepository; + class CrystalModel : public QAbstractTableModel { Q_OBJECT public: - CrystalModel(std::shared_ptr crystalRepository, QWidget *parent = nullptr); + CrystalModel(std::shared_ptr crystalRepository, QWidget *parent = nullptr); int rowCount(const QModelIndex &parent = QModelIndex()) const override; int columnCount(const QModelIndex &parent = QModelIndex()) const override; QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const override; bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole) override; Qt::ItemFlags flags(const QModelIndex &index) const override; - void addRow(HaloSim::CrystalPopulationPreset preset = HaloSim::CrystalPopulationPreset::Random); + void addRow(HaloRay::CrystalPopulationPreset preset = HaloRay::CrystalPopulationPreset::Random); bool removeRow(int row); private: - std::shared_ptr mCrystals; + std::shared_ptr mCrystals; }; + +} diff --git a/src/haloray-core/gui/crystalSettingsWidget.cpp b/src/haloray-core/gui/crystalSettingsWidget.cpp index 96b4d2f..9ef3f32 100644 --- a/src/haloray-core/gui/crystalSettingsWidget.cpp +++ b/src/haloray-core/gui/crystalSettingsWidget.cpp @@ -11,7 +11,10 @@ #include "../simulation/crystalPopulation.h" #include "crystalModel.h" -CrystalSettingsWidget::CrystalSettingsWidget(std::shared_ptr crystalRepository, QWidget *parent) +namespace HaloRay +{ + +CrystalSettingsWidget::CrystalSettingsWidget(std::shared_ptr crystalRepository, QWidget *parent) : QGroupBox("Crystal population settings", parent), mModel(new CrystalModel(crystalRepository)), mNextPopulationId(1) @@ -67,7 +70,7 @@ CrystalSettingsWidget::CrystalSettingsWidget(std::shared_ptrcurrentIndex()); rotationVisibilityHandler(mRotationDistributionComboBox->currentIndex()); - connect(mAddPopulationButton, &AddCrystalPopulationButton::addPopulation, [this](HaloSim::CrystalPopulationPreset preset) { + connect(mAddPopulationButton, &AddCrystalPopulationButton::addPopulation, [this](HaloRay::CrystalPopulationPreset preset) { mModel->addRow(preset); addPopulationComboBoxItem(); mMapper->toLast(); @@ -195,3 +198,5 @@ void CrystalSettingsWidget::setRotationVisibility(bool visible) mRotationAverageLabel->setVisible(visible); mRotationStdLabel->setVisible(visible); } + +} diff --git a/src/haloray-core/gui/crystalSettingsWidget.h b/src/haloray-core/gui/crystalSettingsWidget.h index 7bb30df..1db69e4 100644 --- a/src/haloray-core/gui/crystalSettingsWidget.h +++ b/src/haloray-core/gui/crystalSettingsWidget.h @@ -2,25 +2,26 @@ #include #include -namespace HaloSim -{ -class CrystalPopulationRepository; -} class QToolButton; -class AddCrystalPopulationButton; -class SliderSpinBox; class QComboBox; class QLabel; class QSpinBox; -class CrystalModel; class QDataWidgetMapper; +namespace HaloRay +{ + +class CrystalPopulationRepository; +class AddCrystalPopulationButton; +class SliderSpinBox; +class CrystalModel; + class CrystalSettingsWidget : public QGroupBox { Q_OBJECT public: - CrystalSettingsWidget(std::shared_ptr crystalRepository, QWidget *parent = nullptr); + CrystalSettingsWidget(std::shared_ptr crystalRepository, QWidget *parent = nullptr); signals: void crystalChanged(); @@ -60,3 +61,5 @@ class CrystalSettingsWidget : public QGroupBox unsigned int mNextPopulationId; }; + +} diff --git a/src/haloray-core/gui/generalSettingsWidget.cpp b/src/haloray-core/gui/generalSettingsWidget.cpp index 47f8494..ff57675 100644 --- a/src/haloray-core/gui/generalSettingsWidget.cpp +++ b/src/haloray-core/gui/generalSettingsWidget.cpp @@ -4,6 +4,9 @@ #include "sliderSpinBox.h" #include "../simulation/lightSource.h" +namespace HaloRay +{ + GeneralSettingsWidget::GeneralSettingsWidget(QWidget *parent) : QGroupBox("General settings", parent) { @@ -81,9 +84,9 @@ void GeneralSettingsWidget::setupUi() layout->addRow(tr("Double scattering"), mMultipleScattering); } -HaloSim::LightSource GeneralSettingsWidget::stateToLightSource() const +HaloRay::LightSource GeneralSettingsWidget::stateToLightSource() const { - HaloSim::LightSource light; + HaloRay::LightSource light; light.altitude = mSunAltitudeSlider->value(); light.diameter = mSunDiameterSpinBox->value(); return light; @@ -98,3 +101,5 @@ void GeneralSettingsWidget::setMaxRaysPerFrame(unsigned int maxRays) { mRaysPerFrameSpinBox->setMaximum((int)maxRays); } + +} diff --git a/src/haloray-core/gui/generalSettingsWidget.h b/src/haloray-core/gui/generalSettingsWidget.h index 2075d86..1416d6e 100644 --- a/src/haloray-core/gui/generalSettingsWidget.h +++ b/src/haloray-core/gui/generalSettingsWidget.h @@ -4,6 +4,10 @@ class QDoubleSpinBox; class QSpinBox; + +namespace HaloRay +{ + class SliderSpinBox; class GeneralSettingsWidget : public QGroupBox @@ -18,7 +22,7 @@ class GeneralSettingsWidget : public QGroupBox double multipleScatteringProbability); signals: - void lightSourceChanged(HaloSim::LightSource light); + void lightSourceChanged(HaloRay::LightSource light); void numRaysChanged(unsigned int rays); void maximumNumberOfIterationsChanged(unsigned int iterations); void multipleScatteringProbabilityChanged(double probability); @@ -28,7 +32,7 @@ public slots: void setMaxRaysPerFrame(unsigned int maxRays); private: - HaloSim::LightSource stateToLightSource() const; + HaloRay::LightSource stateToLightSource() const; void setupUi(); SliderSpinBox *mSunAltitudeSlider; @@ -37,3 +41,5 @@ public slots: QSpinBox *mMaximumFramesSpinBox; SliderSpinBox *mMultipleScattering; }; + +} diff --git a/src/haloray-core/gui/mainWindow.cpp b/src/haloray-core/gui/mainWindow.cpp index 603daa8..20ebe0d 100644 --- a/src/haloray-core/gui/mainWindow.cpp +++ b/src/haloray-core/gui/mainWindow.cpp @@ -25,14 +25,17 @@ #define STRINGIFY0(v) #v #define STRINGIFY(v) STRINGIFY0(v) +namespace HaloRay +{ + MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) { #if _WIN32 QIcon::setThemeName("HaloRayTheme"); #endif - mCrystalRepository = std::make_shared(); - mEngine = std::make_shared(mCrystalRepository); + mCrystalRepository = std::make_shared(); + mEngine = std::make_shared(mCrystalRepository); setupUi(); @@ -47,7 +50,7 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) }); // Signals from view settings - connect(mViewSettingsWidget, &ViewSettingsWidget::cameraChanged, [this](HaloSim::Camera camera) { + connect(mViewSettingsWidget, &ViewSettingsWidget::cameraChanged, [this](HaloRay::Camera camera) { mEngine->setCamera(camera); mOpenGLWidget->update(); }); @@ -66,7 +69,7 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) connect(mOpenGLWidget, &OpenGLWidget::nextIteration, mProgressBar, &QProgressBar::setValue); // Signals from general settings - connect(mGeneralSettingsWidget, &GeneralSettingsWidget::lightSourceChanged, [this](HaloSim::LightSource light) { + connect(mGeneralSettingsWidget, &GeneralSettingsWidget::lightSourceChanged, [this](HaloRay::LightSource light) { mEngine->setLightSource(light); mOpenGLWidget->update(); }); @@ -185,3 +188,5 @@ QSize MainWindow::sizeHint() const { return QSize(1920, 1080); } + +} diff --git a/src/haloray-core/gui/mainWindow.h b/src/haloray-core/gui/mainWindow.h index c2aedad..85f9563 100644 --- a/src/haloray-core/gui/mainWindow.h +++ b/src/haloray-core/gui/mainWindow.h @@ -2,16 +2,17 @@ #include #include -namespace HaloSim -{ -class CrystalPopulationRepository; -class SimulationEngine; -} class QDoubleSpinBox; class QProgressBar; class QScrollArea; class QAction; + +namespace HaloRay +{ + +class CrystalPopulationRepository; +class SimulationEngine; class OpenGLWidget; class RenderButton; class ViewSettingsWidget; @@ -42,6 +43,8 @@ class MainWindow : public QMainWindow QAction *mSaveImageAction; QAction *mQuitAction; - std::shared_ptr mCrystalRepository; - std::shared_ptr mEngine; + std::shared_ptr mCrystalRepository; + std::shared_ptr mEngine; }; + +} diff --git a/src/haloray-core/gui/openGLWidget.cpp b/src/haloray-core/gui/openGLWidget.cpp index 0ab53e3..4d28b8b 100644 --- a/src/haloray-core/gui/openGLWidget.cpp +++ b/src/haloray-core/gui/openGLWidget.cpp @@ -10,6 +10,9 @@ #include "../simulation/crystalPopulation.h" #include "../opengl/textureRenderer.h" +namespace HaloRay +{ + OpenGLWidget::OpenGLWidget(enginePtr engine, QWidget *parent) : QOpenGLWidget(parent), mEngine(engine), @@ -172,3 +175,5 @@ QSize OpenGLWidget::minimumSizeHint() const { return QSize(320, 320); } + +} diff --git a/src/haloray-core/gui/openGLWidget.h b/src/haloray-core/gui/openGLWidget.h index 9a111fb..6745266 100644 --- a/src/haloray-core/gui/openGLWidget.h +++ b/src/haloray-core/gui/openGLWidget.h @@ -3,10 +3,6 @@ #include #include -namespace HaloSim -{ -class SimulationEngine; -} namespace OpenGL { @@ -18,11 +14,15 @@ class QWheelEvent; class QSize; class QPoint; +namespace HaloRay +{ +class SimulationEngine; + class OpenGLWidget : public QOpenGLWidget, protected QOpenGLFunctions_4_4_Core { Q_OBJECT - typedef std::shared_ptr enginePtr; + typedef std::shared_ptr enginePtr; public: explicit OpenGLWidget(enginePtr engine, QWidget *parent = nullptr); @@ -59,3 +59,5 @@ public slots: float mExposure; unsigned int mMaxIterations; }; + +} diff --git a/src/haloray-core/gui/renderButton.cpp b/src/haloray-core/gui/renderButton.cpp index 544cd8e..e8397be 100644 --- a/src/haloray-core/gui/renderButton.cpp +++ b/src/haloray-core/gui/renderButton.cpp @@ -1,6 +1,9 @@ #include "renderButton.h" #include +namespace HaloRay +{ + RenderButton::RenderButton(QWidget *parent) : QPushButton(parent), mRendering(false) { @@ -19,3 +22,5 @@ RenderButton::RenderButton(QWidget *parent) mRendering = !mRendering; }); } + +} diff --git a/src/haloray-core/gui/renderButton.h b/src/haloray-core/gui/renderButton.h index fe3386c..b18bb22 100644 --- a/src/haloray-core/gui/renderButton.h +++ b/src/haloray-core/gui/renderButton.h @@ -1,6 +1,9 @@ #pragma once #include +namespace HaloRay +{ + class RenderButton : public QPushButton { Q_OBJECT @@ -10,3 +13,5 @@ class RenderButton : public QPushButton private: bool mRendering; }; + +} diff --git a/src/haloray-core/gui/sliderSpinBox.cpp b/src/haloray-core/gui/sliderSpinBox.cpp index 28a3bef..cd4e5c8 100644 --- a/src/haloray-core/gui/sliderSpinBox.cpp +++ b/src/haloray-core/gui/sliderSpinBox.cpp @@ -3,6 +3,8 @@ #include #include +namespace HaloRay { + const double sliderMultiplier = 100.0; SliderSpinBox::SliderSpinBox(QWidget *parent) : QWidget(parent) @@ -76,3 +78,5 @@ SliderSpinBox *SliderSpinBox::createAngleSlider(double min, double max) slider->setSuffix("°"); return slider; } + +} diff --git a/src/haloray-core/gui/sliderSpinBox.h b/src/haloray-core/gui/sliderSpinBox.h index 608905e..424ef52 100644 --- a/src/haloray-core/gui/sliderSpinBox.h +++ b/src/haloray-core/gui/sliderSpinBox.h @@ -5,6 +5,9 @@ class QSlider; class QDoubleSpinBox; class QString; +namespace HaloRay +{ + class SliderSpinBox : public QWidget { Q_OBJECT @@ -30,3 +33,5 @@ public slots: QSlider *mSlider; QDoubleSpinBox *mSpinBox; }; + +} diff --git a/src/haloray-core/gui/viewSettingsWidget.cpp b/src/haloray-core/gui/viewSettingsWidget.cpp index e9b2eea..b8c5d7b 100644 --- a/src/haloray-core/gui/viewSettingsWidget.cpp +++ b/src/haloray-core/gui/viewSettingsWidget.cpp @@ -5,6 +5,9 @@ #include "sliderSpinBox.h" #include "../simulation/camera.h" +namespace HaloRay +{ + ViewSettingsWidget::ViewSettingsWidget(QWidget *parent) : QGroupBox("View settings", parent) { @@ -62,10 +65,10 @@ void ViewSettingsWidget::setupUi() layout->addRow(tr("Lock to light source"), mLockToLightSource); } -HaloSim::Camera ViewSettingsWidget::stateToCamera() const +HaloRay::Camera ViewSettingsWidget::stateToCamera() const { - HaloSim::Camera camera; - camera.projection = (HaloSim::Projection)mCameraProjectionComboBox->currentIndex(); + HaloRay::Camera camera; + camera.projection = (HaloRay::Projection)mCameraProjectionComboBox->currentIndex(); camera.fov = (float)mFieldOfViewSlider->value(); camera.hideSubHorizon = mHideSubHorizonCheckBox->isChecked(); camera.yaw = (float)mYawSlider->value(); @@ -73,7 +76,7 @@ HaloSim::Camera ViewSettingsWidget::stateToCamera() const return camera; } -void ViewSettingsWidget::setCamera(HaloSim::Camera camera) +void ViewSettingsWidget::setCamera(HaloRay::Camera camera) { mCameraProjectionComboBox->setCurrentIndex((int)camera.projection); mFieldOfViewSlider->setValue(camera.fov); @@ -97,3 +100,5 @@ void ViewSettingsWidget::setBrightness(double brightness) { mBrightnessSlider->setValue(brightness); } + +} diff --git a/src/haloray-core/gui/viewSettingsWidget.h b/src/haloray-core/gui/viewSettingsWidget.h index 91901b2..5b69ea4 100644 --- a/src/haloray-core/gui/viewSettingsWidget.h +++ b/src/haloray-core/gui/viewSettingsWidget.h @@ -4,6 +4,10 @@ class QComboBox; class QCheckBox; + +namespace HaloRay +{ + class SliderSpinBox; class ViewSettingsWidget : public QGroupBox @@ -12,19 +16,19 @@ class ViewSettingsWidget : public QGroupBox public: ViewSettingsWidget(QWidget *parent = nullptr); - void setCamera(HaloSim::Camera camera); + void setCamera(HaloRay::Camera camera); void setFieldOfView(double fov); void setCameraOrientation(double pitch, double yaw); void setBrightness(double brightness); signals: - void cameraChanged(HaloSim::Camera camera); + void cameraChanged(HaloRay::Camera camera); void brightnessChanged(double brightness); void lockToLightSource(bool locked); private: void setupUi(); - HaloSim::Camera stateToCamera() const; + HaloRay::Camera stateToCamera() const; SliderSpinBox *mFieldOfViewSlider; SliderSpinBox *mPitchSlider; SliderSpinBox *mYawSlider; @@ -33,3 +37,5 @@ class ViewSettingsWidget : public QGroupBox SliderSpinBox *mBrightnessSlider; QCheckBox *mLockToLightSource; }; + +} diff --git a/src/haloray-core/simulation/camera.cpp b/src/haloray-core/simulation/camera.cpp index 50c4cc6..be994e4 100644 --- a/src/haloray-core/simulation/camera.cpp +++ b/src/haloray-core/simulation/camera.cpp @@ -1,6 +1,6 @@ #include "camera.h" -namespace HaloSim +namespace HaloRay { float Camera::getMaximumFov() const @@ -24,9 +24,9 @@ Camera Camera::createDefaultCamera() camera.pitch = 0.0f; camera.yaw = 0.0f; camera.fov = 75.0f; - camera.projection = HaloSim::Projection::Stereographic; + camera.projection = HaloRay::Projection::Stereographic; camera.hideSubHorizon = false; return camera; } -} // namespace HaloSim +} // namespace HaloRay diff --git a/src/haloray-core/simulation/camera.h b/src/haloray-core/simulation/camera.h index 079f01a..3d5265f 100644 --- a/src/haloray-core/simulation/camera.h +++ b/src/haloray-core/simulation/camera.h @@ -1,6 +1,6 @@ #pragma once -namespace HaloSim +namespace HaloRay { enum Projection @@ -24,4 +24,4 @@ struct Camera static Camera createDefaultCamera(); }; -} // namespace HaloSim +} diff --git a/src/haloray-core/simulation/crystalPopulation.cpp b/src/haloray-core/simulation/crystalPopulation.cpp index 461d67e..4dab464 100644 --- a/src/haloray-core/simulation/crystalPopulation.cpp +++ b/src/haloray-core/simulation/crystalPopulation.cpp @@ -1,6 +1,6 @@ #include "crystalPopulation.h" -namespace HaloSim +namespace HaloRay { CrystalPopulation CrystalPopulation::createLowitz() @@ -107,4 +107,4 @@ CrystalPopulation CrystalPopulation::presetPopulation(CrystalPopulationPreset pr } } -} // namespace HaloSim +} // namespace HaloRay diff --git a/src/haloray-core/simulation/crystalPopulation.h b/src/haloray-core/simulation/crystalPopulation.h index 5ed959a..8ed45fd 100644 --- a/src/haloray-core/simulation/crystalPopulation.h +++ b/src/haloray-core/simulation/crystalPopulation.h @@ -1,6 +1,6 @@ #pragma once -namespace HaloSim +namespace HaloRay { enum CrystalPopulationPreset @@ -33,4 +33,4 @@ struct CrystalPopulation static CrystalPopulation createRandom(); }; -} // namespace HaloSim +} // namespace HaloRay diff --git a/src/haloray-core/simulation/crystalPopulationRepository.cpp b/src/haloray-core/simulation/crystalPopulationRepository.cpp index ddab623..4d03bdd 100644 --- a/src/haloray-core/simulation/crystalPopulationRepository.cpp +++ b/src/haloray-core/simulation/crystalPopulationRepository.cpp @@ -1,7 +1,7 @@ #include "crystalPopulationRepository.h" #include -namespace HaloSim +namespace HaloRay { CrystalPopulationRepository::CrystalPopulationRepository() @@ -59,4 +59,4 @@ void CrystalPopulationRepository::setWeight(unsigned int index, unsigned int wei mWeights[index] = weight; } -} // namespace HaloSim +} // namespace HaloRay diff --git a/src/haloray-core/simulation/crystalPopulationRepository.h b/src/haloray-core/simulation/crystalPopulationRepository.h index b616c09..d7153c4 100644 --- a/src/haloray-core/simulation/crystalPopulationRepository.h +++ b/src/haloray-core/simulation/crystalPopulationRepository.h @@ -2,7 +2,7 @@ #include #include "crystalPopulation.h" -namespace HaloSim +namespace HaloRay { class CrystalPopulationRepository @@ -23,4 +23,4 @@ class CrystalPopulationRepository std::vector mWeights; }; -} // namespace HaloSim +} // namespace HaloRay diff --git a/src/haloray-core/simulation/lightSource.cpp b/src/haloray-core/simulation/lightSource.cpp index 715a66f..fbdea51 100644 --- a/src/haloray-core/simulation/lightSource.cpp +++ b/src/haloray-core/simulation/lightSource.cpp @@ -1,6 +1,6 @@ #include "lightSource.h" -namespace HaloSim +namespace HaloRay { LightSource LightSource::createDefaultLightSource() @@ -11,4 +11,4 @@ LightSource LightSource::createDefaultLightSource() return sun; } -} // namespace HaloSim +} // namespace HaloRay diff --git a/src/haloray-core/simulation/lightSource.h b/src/haloray-core/simulation/lightSource.h index bb3b234..d0fe3c7 100644 --- a/src/haloray-core/simulation/lightSource.h +++ b/src/haloray-core/simulation/lightSource.h @@ -1,6 +1,6 @@ #pragma once -namespace HaloSim +namespace HaloRay { struct LightSource @@ -11,4 +11,4 @@ struct LightSource static LightSource createDefaultLightSource(); }; -} // namespace HaloSim +} // namespace HaloRay diff --git a/src/haloray-core/simulation/simulationEngine.cpp b/src/haloray-core/simulation/simulationEngine.cpp index f4fd410..c7e02a2 100644 --- a/src/haloray-core/simulation/simulationEngine.cpp +++ b/src/haloray-core/simulation/simulationEngine.cpp @@ -9,7 +9,7 @@ #include "lightSource.h" #include "crystalPopulation.h" -namespace HaloSim +namespace HaloRay { SimulationEngine::SimulationEngine( @@ -230,4 +230,4 @@ double SimulationEngine::getMultipleScatteringProbability() const return static_cast(mMultipleScatteringProbability); } -} // namespace HaloSim +} // namespace HaloRay diff --git a/src/haloray-core/simulation/simulationEngine.h b/src/haloray-core/simulation/simulationEngine.h index 3509880..5f3353c 100644 --- a/src/haloray-core/simulation/simulationEngine.h +++ b/src/haloray-core/simulation/simulationEngine.h @@ -10,7 +10,7 @@ class QOpenGLShaderProgram; -namespace HaloSim +namespace HaloRay { class SimulationEngine : protected QOpenGLFunctions_4_4_Core @@ -70,4 +70,4 @@ class SimulationEngine : protected QOpenGLFunctions_4_4_Core std::shared_ptr mCrystalRepository; }; -} // namespace HaloSim +} // namespace HaloRay diff --git a/src/haloray/main.cpp b/src/haloray/main.cpp index ab90b6c..15f88ef 100644 --- a/src/haloray/main.cpp +++ b/src/haloray/main.cpp @@ -68,7 +68,7 @@ int main(int argc, char *argv[]) return 1; } - MainWindow mainWindow; + HaloRay::MainWindow mainWindow; mainWindow.show(); QGuiApplication::setAttribute(Qt::AA_UseHighDpiPixmaps); diff --git a/src/tests/cameraTests/cameraTests.cpp b/src/tests/cameraTests/cameraTests.cpp index 447d173..26b26c8 100644 --- a/src/tests/cameraTests/cameraTests.cpp +++ b/src/tests/cameraTests/cameraTests.cpp @@ -1,9 +1,9 @@ #include #include "simulation/camera.h" -Q_DECLARE_METATYPE(HaloSim::Projection) +Q_DECLARE_METATYPE(HaloRay::Projection) -using namespace HaloSim; +using namespace HaloRay; class CameraTests : public QObject { diff --git a/src/tests/crystalPopulationRepositoryTests/crystalPopulationRepositoryTests.cpp b/src/tests/crystalPopulationRepositoryTests/crystalPopulationRepositoryTests.cpp index 9162bec..5be2478 100644 --- a/src/tests/crystalPopulationRepositoryTests/crystalPopulationRepositoryTests.cpp +++ b/src/tests/crystalPopulationRepositoryTests/crystalPopulationRepositoryTests.cpp @@ -7,30 +7,30 @@ class CrystalPopulationRepositoryTests : public QObject private slots: void hasThreePopulationsByDefault() { - auto repository = HaloSim::CrystalPopulationRepository(); + auto repository = HaloRay::CrystalPopulationRepository(); QCOMPARE(repository.getCount(), 3); } void addingPopulationIncreasesCount() { - auto repository = HaloSim::CrystalPopulationRepository(); + auto repository = HaloRay::CrystalPopulationRepository(); auto originalCount = repository.getCount(); - repository.add(HaloSim::CrystalPopulationPreset::Random); + repository.add(HaloRay::CrystalPopulationPreset::Random); QCOMPARE(repository.getCount(), originalCount + 1); } void removingPopulationDecreasesCount() { - auto repository = HaloSim::CrystalPopulationRepository(); + auto repository = HaloRay::CrystalPopulationRepository(); auto originalCount = repository.getCount(); - repository.add(HaloSim::CrystalPopulationPreset::Random); + repository.add(HaloRay::CrystalPopulationPreset::Random); repository.remove(0); QCOMPARE(repository.getCount(), originalCount); } void evenProbabilitiesByDefault() { - auto repository = HaloSim::CrystalPopulationRepository(); + auto repository = HaloRay::CrystalPopulationRepository(); QCOMPARE(repository.getProbability(0), 1.0 / 3.0); QCOMPARE(repository.getProbability(1), 1.0 / 3.0); QCOMPARE(repository.getProbability(2), 1.0 / 3.0); @@ -38,7 +38,7 @@ private slots: void evenWeightsByDefault() { - auto repository = HaloSim::CrystalPopulationRepository(); + auto repository = HaloRay::CrystalPopulationRepository(); QCOMPARE(repository.getWeight(0), 1); QCOMPARE(repository.getWeight(1), 1); QCOMPARE(repository.getWeight(2), 1); From e336af78a124ac0b659690418841eafc8b135241 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 6 Jun 2020 16:38:43 +0300 Subject: [PATCH 030/184] Change member variable naming convention From now on all class member variable names should start with the prefix m_ and then the actual name in camelCase. --- .../gui/addCrystalPopulationButton.cpp | 34 ++-- .../gui/addCrystalPopulationButton.h | 12 +- src/haloray-core/gui/crystalModel.cpp | 20 +- src/haloray-core/gui/crystalModel.h | 2 +- .../gui/crystalSettingsWidget.cpp | 192 +++++++++--------- src/haloray-core/gui/crystalSettingsWidget.h | 38 ++-- .../gui/generalSettingsWidget.cpp | 92 ++++----- src/haloray-core/gui/generalSettingsWidget.h | 10 +- src/haloray-core/gui/mainWindow.cpp | 104 +++++----- src/haloray-core/gui/mainWindow.h | 24 +-- src/haloray-core/gui/openGLWidget.cpp | 64 +++--- src/haloray-core/gui/openGLWidget.h | 12 +- src/haloray-core/gui/renderButton.cpp | 6 +- src/haloray-core/gui/renderButton.h | 2 +- src/haloray-core/gui/sliderSpinBox.cpp | 46 ++--- src/haloray-core/gui/sliderSpinBox.h | 4 +- src/haloray-core/gui/viewSettingsWidget.cpp | 82 ++++---- src/haloray-core/gui/viewSettingsWidget.h | 15 +- src/haloray-core/opengl/texture.cpp | 20 +- src/haloray-core/opengl/texture.h | 12 +- src/haloray-core/opengl/textureRenderer.cpp | 24 +-- src/haloray-core/opengl/textureRenderer.h | 9 +- src/haloray-core/simulation/camera.cpp | 2 +- src/haloray-core/simulation/camera.h | 3 + .../simulation/crystalPopulation.cpp | 2 +- .../simulation/crystalPopulation.h | 2 +- .../crystalPopulationRepository.cpp | 16 +- .../simulation/crystalPopulationRepository.h | 4 +- src/haloray-core/simulation/lightSource.cpp | 2 +- src/haloray-core/simulation/lightSource.h | 5 +- .../simulation/simulationEngine.cpp | 156 +++++++------- .../simulation/simulationEngine.h | 38 ++-- 32 files changed, 531 insertions(+), 523 deletions(-) diff --git a/src/haloray-core/gui/addCrystalPopulationButton.cpp b/src/haloray-core/gui/addCrystalPopulationButton.cpp index 0a22b69..5f7ee67 100644 --- a/src/haloray-core/gui/addCrystalPopulationButton.cpp +++ b/src/haloray-core/gui/addCrystalPopulationButton.cpp @@ -8,31 +8,31 @@ namespace HaloRay AddCrystalPopulationButton::AddCrystalPopulationButton(QWidget *parent) : QToolButton(parent) { - mMenu = new QMenu(this); + m_menu = new QMenu(this); - mAddRandom = new QAction(tr("Add random"), this); - mAddPlate = new QAction(tr("Add plate"), this); - mAddColumn = new QAction(tr("Add column"), this); - mAddParry = new QAction(tr("Add Parry"), this); - mAddLowitz = new QAction(tr("Add Lowitz"), this); + m_addRandom = new QAction(tr("Add random"), this); + m_addPlate = new QAction(tr("Add plate"), this); + m_addColumn = new QAction(tr("Add column"), this); + m_addParry = new QAction(tr("Add Parry"), this); + m_addLowitz = new QAction(tr("Add Lowitz"), this); - mMenu->addActions({mAddRandom, - mAddPlate, - mAddColumn, - mAddParry, - mAddLowitz}); + m_menu->addActions({m_addRandom, + m_addPlate, + m_addColumn, + m_addParry, + m_addLowitz}); setPopupMode(QToolButton::ToolButtonPopupMode::MenuButtonPopup); setIcon(QIcon::fromTheme("list-add")); - setMenu(mMenu); + setMenu(m_menu); connect(this, &AddCrystalPopulationButton::clicked, [this]() { emit addPopulation(HaloRay::CrystalPopulationPreset::Random); }); - connect(mAddRandom, &QAction::triggered, [this]() { emit addPopulation(HaloRay::CrystalPopulationPreset::Random); }); - connect(mAddPlate, &QAction::triggered, [this]() { emit addPopulation(HaloRay::CrystalPopulationPreset::Plate); }); - connect(mAddColumn, &QAction::triggered, [this]() { emit addPopulation(HaloRay::CrystalPopulationPreset::Column); }); - connect(mAddParry, &QAction::triggered, [this]() { emit addPopulation(HaloRay::CrystalPopulationPreset::Parry); }); - connect(mAddLowitz, &QAction::triggered, [this]() { emit addPopulation(HaloRay::CrystalPopulationPreset::Lowitz); }); + connect(m_addRandom, &QAction::triggered, [this]() { emit addPopulation(HaloRay::CrystalPopulationPreset::Random); }); + connect(m_addPlate, &QAction::triggered, [this]() { emit addPopulation(HaloRay::CrystalPopulationPreset::Plate); }); + connect(m_addColumn, &QAction::triggered, [this]() { emit addPopulation(HaloRay::CrystalPopulationPreset::Column); }); + connect(m_addParry, &QAction::triggered, [this]() { emit addPopulation(HaloRay::CrystalPopulationPreset::Parry); }); + connect(m_addLowitz, &QAction::triggered, [this]() { emit addPopulation(HaloRay::CrystalPopulationPreset::Lowitz); }); } } diff --git a/src/haloray-core/gui/addCrystalPopulationButton.h b/src/haloray-core/gui/addCrystalPopulationButton.h index 6d6a415..e815961 100644 --- a/src/haloray-core/gui/addCrystalPopulationButton.h +++ b/src/haloray-core/gui/addCrystalPopulationButton.h @@ -20,12 +20,12 @@ class AddCrystalPopulationButton : public QToolButton void addPopulation(HaloRay::CrystalPopulationPreset); private: - QMenu *mMenu; - QAction *mAddRandom; - QAction *mAddPlate; - QAction *mAddColumn; - QAction *mAddParry; - QAction *mAddLowitz; + QMenu *m_menu; + QAction *m_addRandom; + QAction *m_addPlate; + QAction *m_addColumn; + QAction *m_addParry; + QAction *m_addLowitz; }; } diff --git a/src/haloray-core/gui/crystalModel.cpp b/src/haloray-core/gui/crystalModel.cpp index 7f07094..cd06cea 100644 --- a/src/haloray-core/gui/crystalModel.cpp +++ b/src/haloray-core/gui/crystalModel.cpp @@ -8,13 +8,13 @@ namespace HaloRay CrystalModel::CrystalModel(std::shared_ptr crystalRepository, QWidget *parent) : QAbstractTableModel(parent), - mCrystals(crystalRepository) + m_crystals(crystalRepository) { } int CrystalModel::rowCount(const QModelIndex&) const { - return static_cast(mCrystals->getCount()); + return static_cast(m_crystals->getCount()); } int CrystalModel::columnCount(const QModelIndex&) const @@ -29,7 +29,7 @@ QVariant CrystalModel::data(const QModelIndex &index, int role) const auto col = index.column(); auto row = index.row(); - const HaloRay::CrystalPopulation &crystal = mCrystals->get(row); + const HaloRay::CrystalPopulation &crystal = m_crystals->get(row); switch (col) { @@ -50,7 +50,7 @@ QVariant CrystalModel::data(const QModelIndex &index, int role) const case 7: return crystal.rotationStd; case 8: - return mCrystals->getWeight(row); + return m_crystals->getWeight(row); } return QVariant(); @@ -66,7 +66,7 @@ bool CrystalModel::setData(const QModelIndex &index, const QVariant &value, int auto row = index.row(); auto col = index.column(); - HaloRay::CrystalPopulation &crystal = mCrystals->get(row); + HaloRay::CrystalPopulation &crystal = m_crystals->get(row); switch (col) { case 0: @@ -94,7 +94,7 @@ bool CrystalModel::setData(const QModelIndex &index, const QVariant &value, int crystal.rotationStd = value.toFloat(); break; case 8: - mCrystals->setWeight(row, value.toUInt()); + m_crystals->setWeight(row, value.toUInt()); break; default: break; @@ -112,19 +112,19 @@ Qt::ItemFlags CrystalModel::flags(const QModelIndex &index) const void CrystalModel::addRow(HaloRay::CrystalPopulationPreset preset) { - auto row = mCrystals->getCount(); + auto row = m_crystals->getCount(); beginInsertRows(QModelIndex(), row, row); - mCrystals->add(preset); + m_crystals->add(preset); endInsertRows(); } bool CrystalModel::removeRow(int row) { - if (mCrystals->getCount() <= 1) + if (m_crystals->getCount() <= 1) return false; beginRemoveRows(QModelIndex(), row, row); - mCrystals->remove(row); + m_crystals->remove(row); endRemoveRows(); return true; diff --git a/src/haloray-core/gui/crystalModel.h b/src/haloray-core/gui/crystalModel.h index b35c954..c88f500 100644 --- a/src/haloray-core/gui/crystalModel.h +++ b/src/haloray-core/gui/crystalModel.h @@ -27,7 +27,7 @@ class CrystalModel : public QAbstractTableModel bool removeRow(int row); private: - std::shared_ptr mCrystals; + std::shared_ptr m_crystals; }; } diff --git a/src/haloray-core/gui/crystalSettingsWidget.cpp b/src/haloray-core/gui/crystalSettingsWidget.cpp index 9ef3f32..193ab86 100644 --- a/src/haloray-core/gui/crystalSettingsWidget.cpp +++ b/src/haloray-core/gui/crystalSettingsWidget.cpp @@ -16,8 +16,8 @@ namespace HaloRay CrystalSettingsWidget::CrystalSettingsWidget(std::shared_ptr crystalRepository, QWidget *parent) : QGroupBox("Crystal population settings", parent), - mModel(new CrystalModel(crystalRepository)), - mNextPopulationId(1) + m_model(new CrystalModel(crystalRepository)), + m_nextPopulationId(1) { setupUi(); @@ -25,73 +25,73 @@ CrystalSettingsWidget::CrystalSettingsWidget(std::shared_ptr::of(&QComboBox::currentIndexChanged), tiltVisibilityHandler); + connect(m_tiltDistributionComboBox, QOverload::of(&QComboBox::currentIndexChanged), tiltVisibilityHandler); auto rotationVisibilityHandler = [this](int index) { bool showControls = index != 0; setRotationVisibility(showControls); }; - connect(mRotationDistributionComboBox, QOverload::of(&QComboBox::currentIndexChanged), rotationVisibilityHandler); - - mMapper = new QDataWidgetMapper(); - mMapper->setModel(mModel); - mMapper->addMapping(mCaRatioSlider, 0); - mMapper->addMapping(mCaRatioStdSlider, 1); - mMapper->addMapping(mTiltDistributionComboBox, 2, "currentIndex"); - mMapper->addMapping(mTiltAverageSlider, 3); - mMapper->addMapping(mTiltStdSlider, 4); - mMapper->addMapping(mRotationDistributionComboBox, 5, "currentIndex"); - mMapper->addMapping(mRotationAverageSlider, 6); - mMapper->addMapping(mRotationStdSlider, 7); - mMapper->addMapping(mWeightSpinBox, 8); - mMapper->toFirst(); - mMapper->setSubmitPolicy(QDataWidgetMapper::SubmitPolicy::AutoSubmit); - - connect(mModel, &CrystalModel::dataChanged, this, &CrystalSettingsWidget::crystalChanged); + connect(m_rotationDistributionComboBox, QOverload::of(&QComboBox::currentIndexChanged), rotationVisibilityHandler); + + m_mapper = new QDataWidgetMapper(); + m_mapper->setModel(m_model); + m_mapper->addMapping(m_caRatioSlider, 0); + m_mapper->addMapping(m_caRatioStdSlider, 1); + m_mapper->addMapping(m_tiltDistributionComboBox, 2, "currentIndex"); + m_mapper->addMapping(m_tiltAverageSlider, 3); + m_mapper->addMapping(m_tiltStdSlider, 4); + m_mapper->addMapping(m_rotationDistributionComboBox, 5, "currentIndex"); + m_mapper->addMapping(m_rotationAverageSlider, 6); + m_mapper->addMapping(m_rotationStdSlider, 7); + m_mapper->addMapping(m_weightSpinBox, 8); + m_mapper->toFirst(); + m_mapper->setSubmitPolicy(QDataWidgetMapper::SubmitPolicy::AutoSubmit); + + connect(m_model, &CrystalModel::dataChanged, this, &CrystalSettingsWidget::crystalChanged); /* QDataWidgetMapper only submits data when Enter is pressed, or when a text box loses focus, so the sliders and comboboxes must still be manually connected to the submit slot of the mapper. */ - connect(mWeightSpinBox, QOverload::of(&QSpinBox::valueChanged), mMapper, &QDataWidgetMapper::submit); - connect(mCaRatioSlider, &SliderSpinBox::valueChanged, mMapper, &QDataWidgetMapper::submit); - connect(mCaRatioStdSlider, &SliderSpinBox::valueChanged, mMapper, &QDataWidgetMapper::submit); - connect(mTiltDistributionComboBox, QOverload::of(&QComboBox::currentIndexChanged), mMapper, &QDataWidgetMapper::submit); - connect(mTiltAverageSlider, &SliderSpinBox::valueChanged, mMapper, &QDataWidgetMapper::submit); - connect(mTiltStdSlider, &SliderSpinBox::valueChanged, mMapper, &QDataWidgetMapper::submit); - connect(mRotationDistributionComboBox, QOverload::of(&QComboBox::currentIndexChanged), mMapper, &QDataWidgetMapper::submit); - connect(mRotationAverageSlider, &SliderSpinBox::valueChanged, mMapper, &QDataWidgetMapper::submit); - connect(mRotationStdSlider, &SliderSpinBox::valueChanged, mMapper, &QDataWidgetMapper::submit); - - connect(mPopulationComboBox, QOverload::of(&QComboBox::activated), mMapper, &QDataWidgetMapper::setCurrentIndex); - connect(mMapper, &QDataWidgetMapper::currentIndexChanged, mPopulationComboBox, QOverload::of(&QComboBox::setCurrentIndex)); - - tiltVisibilityHandler(mTiltDistributionComboBox->currentIndex()); - rotationVisibilityHandler(mRotationDistributionComboBox->currentIndex()); - - connect(mAddPopulationButton, &AddCrystalPopulationButton::addPopulation, [this](HaloRay::CrystalPopulationPreset preset) { - mModel->addRow(preset); + connect(m_weightSpinBox, QOverload::of(&QSpinBox::valueChanged), m_mapper, &QDataWidgetMapper::submit); + connect(m_caRatioSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit); + connect(m_caRatioStdSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit); + connect(m_tiltDistributionComboBox, QOverload::of(&QComboBox::currentIndexChanged), m_mapper, &QDataWidgetMapper::submit); + connect(m_tiltAverageSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit); + connect(m_tiltStdSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit); + connect(m_rotationDistributionComboBox, QOverload::of(&QComboBox::currentIndexChanged), m_mapper, &QDataWidgetMapper::submit); + connect(m_rotationAverageSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit); + connect(m_rotationStdSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit); + + connect(m_populationComboBox, QOverload::of(&QComboBox::activated), m_mapper, &QDataWidgetMapper::setCurrentIndex); + connect(m_mapper, &QDataWidgetMapper::currentIndexChanged, m_populationComboBox, QOverload::of(&QComboBox::setCurrentIndex)); + + tiltVisibilityHandler(m_tiltDistributionComboBox->currentIndex()); + rotationVisibilityHandler(m_rotationDistributionComboBox->currentIndex()); + + connect(m_AddPopulationButton, &AddCrystalPopulationButton::addPopulation, [this](HaloRay::CrystalPopulationPreset preset) { + m_model->addRow(preset); addPopulationComboBoxItem(); - mMapper->toLast(); + m_mapper->toLast(); updateRemovePopulationButtonState(); }); - connect(mRemovePopulationButton, &QToolButton::clicked, [this]() { - int index = mMapper->currentIndex(); + connect(m_removePopulationButton, &QToolButton::clicked, [this]() { + int index = m_mapper->currentIndex(); if (index == 0) - mMapper->toNext(); + m_mapper->toNext(); else - mMapper->toPrevious(); - bool success = mModel->removeRow(index); + m_mapper->toPrevious(); + bool success = m_model->removeRow(index); if (success) - mPopulationComboBox->removeItem(index); + m_populationComboBox->removeItem(index); updateRemovePopulationButtonState(); }); - connect(mPopulationComboBox, &QComboBox::editTextChanged, [this](const QString &text) { - mPopulationComboBox->setItemText(mPopulationComboBox->currentIndex(), text); + connect(m_populationComboBox, &QComboBox::editTextChanged, [this](const QString &text) { + m_populationComboBox->setItemText(m_populationComboBox->currentIndex(), text); }); fillPopulationComboBox(); @@ -100,103 +100,103 @@ CrystalSettingsWidget::CrystalSettingsWidget(std::shared_ptraddItem(QString("Population %1").arg(mNextPopulationId++)); + m_populationComboBox->addItem(QString("Population %1").arg(m_nextPopulationId++)); } void CrystalSettingsWidget::fillPopulationComboBox() { - mPopulationComboBox->addItems({"Columns", "Plates", "Random"}); + m_populationComboBox->addItems({"Columns", "Plates", "Random"}); } void CrystalSettingsWidget::updateRemovePopulationButtonState() { - mRemovePopulationButton->setEnabled(mModel->rowCount() > 1); + m_removePopulationButton->setEnabled(m_model->rowCount() > 1); } void CrystalSettingsWidget::setupUi() { setMaximumWidth(400); - mPopulationComboBox = new QComboBox(); - mPopulationComboBox->setEditable(true); - mPopulationComboBox->setInsertPolicy(QComboBox::InsertPolicy::NoInsert); - mPopulationComboBox->setDuplicatesEnabled(true); + m_populationComboBox = new QComboBox(); + m_populationComboBox->setEditable(true); + m_populationComboBox->setInsertPolicy(QComboBox::InsertPolicy::NoInsert); + m_populationComboBox->setDuplicatesEnabled(true); - mAddPopulationButton = new AddCrystalPopulationButton(); - mAddPopulationButton->setIconSize(QSize(24, 24)); + m_AddPopulationButton = new AddCrystalPopulationButton(); + m_AddPopulationButton->setIconSize(QSize(24, 24)); - mRemovePopulationButton = new QToolButton(); - mRemovePopulationButton->setIcon(QIcon::fromTheme("list-remove")); - mRemovePopulationButton->setIconSize(QSize(24, 24)); + m_removePopulationButton = new QToolButton(); + m_removePopulationButton->setIcon(QIcon::fromTheme("list-remove")); + m_removePopulationButton->setIconSize(QSize(24, 24)); - mCaRatioSlider = new SliderSpinBox(0.0, 15.0); + m_caRatioSlider = new SliderSpinBox(0.0, 15.0); - mCaRatioStdSlider = new SliderSpinBox(0.0, 10.0); + m_caRatioStdSlider = new SliderSpinBox(0.0, 10.0); - mTiltDistributionComboBox = new QComboBox(); - mTiltDistributionComboBox->addItems({tr("Uniform"), tr("Gaussian")}); + m_tiltDistributionComboBox = new QComboBox(); + m_tiltDistributionComboBox->addItems({tr("Uniform"), tr("Gaussian")}); - mTiltAverageLabel = new QLabel(tr("Average")); - mTiltAverageSlider = SliderSpinBox::createAngleSlider(0.0, 180.0); + m_tiltAverageLabel = new QLabel(tr("Average")); + m_tiltAverageSlider = SliderSpinBox::createAngleSlider(0.0, 180.0); - mTiltStdLabel = new QLabel(tr("Standard deviation")); - mTiltStdSlider = SliderSpinBox::createAngleSlider(0.0, 360.0); + m_tiltStdLabel = new QLabel(tr("Standard deviation")); + m_tiltStdSlider = SliderSpinBox::createAngleSlider(0.0, 360.0); - mRotationDistributionComboBox = new QComboBox(); - mRotationDistributionComboBox->addItems({tr("Uniform"), tr("Gaussian")}); + m_rotationDistributionComboBox = new QComboBox(); + m_rotationDistributionComboBox->addItems({tr("Uniform"), tr("Gaussian")}); - mRotationAverageLabel = new QLabel(tr("Average")); - mRotationAverageSlider = SliderSpinBox::createAngleSlider(0.0, 180.0); + m_rotationAverageLabel = new QLabel(tr("Average")); + m_rotationAverageSlider = SliderSpinBox::createAngleSlider(0.0, 180.0); - mRotationStdLabel = new QLabel(tr("Standard deviation")); - mRotationStdSlider = SliderSpinBox::createAngleSlider(0.0, 360.0); + m_rotationStdLabel = new QLabel(tr("Standard deviation")); + m_rotationStdSlider = SliderSpinBox::createAngleSlider(0.0, 360.0); - mWeightSpinBox = new QSpinBox(); - mWeightSpinBox->setMinimum(0); - mWeightSpinBox->setMaximum(10000); + m_weightSpinBox = new QSpinBox(); + m_weightSpinBox->setMinimum(0); + m_weightSpinBox->setMaximum(10000); auto mainLayout = new QFormLayout(this); auto populationButtonLayout = new QHBoxLayout(); - populationButtonLayout->addWidget(mPopulationComboBox); - populationButtonLayout->addWidget(mAddPopulationButton); - populationButtonLayout->addWidget(mRemovePopulationButton); + populationButtonLayout->addWidget(m_populationComboBox); + populationButtonLayout->addWidget(m_AddPopulationButton); + populationButtonLayout->addWidget(m_removePopulationButton); mainLayout->addRow(populationButtonLayout); - mainLayout->addRow(tr("Population weight"), mWeightSpinBox); + mainLayout->addRow(tr("Population weight"), m_weightSpinBox); mainLayout->addItem(new QSpacerItem(0, 10)); - mainLayout->addRow(tr("C/A ratio average"), mCaRatioSlider); - mainLayout->addRow(tr("C/A ratio std."), mCaRatioStdSlider); + mainLayout->addRow(tr("C/A ratio average"), m_caRatioSlider); + mainLayout->addRow(tr("C/A ratio std."), m_caRatioStdSlider); auto tiltGroupBox = new QGroupBox(tr("C-axis tilt")); auto tiltLayout = new QFormLayout(tiltGroupBox); mainLayout->addRow(tiltGroupBox); - tiltLayout->addRow(tr("Distribution"), mTiltDistributionComboBox); - tiltLayout->addRow(mTiltAverageLabel, mTiltAverageSlider); - tiltLayout->addRow(mTiltStdLabel, mTiltStdSlider); + tiltLayout->addRow(tr("Distribution"), m_tiltDistributionComboBox); + tiltLayout->addRow(m_tiltAverageLabel, m_tiltAverageSlider); + tiltLayout->addRow(m_tiltStdLabel, m_tiltStdSlider); auto rotationGroupBox = new QGroupBox(tr("Rotation around C-axis")); auto rotationLayout = new QFormLayout(rotationGroupBox); mainLayout->addRow(rotationGroupBox); - rotationLayout->addRow(tr("Distribution"), mRotationDistributionComboBox); - rotationLayout->addRow(mRotationAverageLabel, mRotationAverageSlider); - rotationLayout->addRow(mRotationStdLabel, mRotationStdSlider); + rotationLayout->addRow(tr("Distribution"), m_rotationDistributionComboBox); + rotationLayout->addRow(m_rotationAverageLabel, m_rotationAverageSlider); + rotationLayout->addRow(m_rotationStdLabel, m_rotationStdSlider); } void CrystalSettingsWidget::setTiltVisibility(bool visible) { - mTiltAverageSlider->setVisible(visible); - mTiltStdSlider->setVisible(visible); - mTiltAverageLabel->setVisible(visible); - mTiltStdLabel->setVisible(visible); + m_tiltAverageSlider->setVisible(visible); + m_tiltStdSlider->setVisible(visible); + m_tiltAverageLabel->setVisible(visible); + m_tiltStdLabel->setVisible(visible); } void CrystalSettingsWidget::setRotationVisibility(bool visible) { - mRotationAverageSlider->setVisible(visible); - mRotationStdSlider->setVisible(visible); - mRotationAverageLabel->setVisible(visible); - mRotationStdLabel->setVisible(visible); + m_rotationAverageSlider->setVisible(visible); + m_rotationStdSlider->setVisible(visible); + m_rotationAverageLabel->setVisible(visible); + m_rotationStdLabel->setVisible(visible); } } diff --git a/src/haloray-core/gui/crystalSettingsWidget.h b/src/haloray-core/gui/crystalSettingsWidget.h index 1db69e4..e2a4956 100644 --- a/src/haloray-core/gui/crystalSettingsWidget.h +++ b/src/haloray-core/gui/crystalSettingsWidget.h @@ -35,31 +35,31 @@ class CrystalSettingsWidget : public QGroupBox void setTiltVisibility(bool); void setRotationVisibility(bool); - AddCrystalPopulationButton *mAddPopulationButton; - QToolButton *mRemovePopulationButton; + AddCrystalPopulationButton *m_AddPopulationButton; + QToolButton *m_removePopulationButton; - SliderSpinBox *mCaRatioSlider; - SliderSpinBox *mCaRatioStdSlider; + SliderSpinBox *m_caRatioSlider; + SliderSpinBox *m_caRatioStdSlider; - QComboBox *mTiltDistributionComboBox; - SliderSpinBox *mTiltAverageSlider; - QLabel *mTiltAverageLabel; - SliderSpinBox *mTiltStdSlider; - QLabel *mTiltStdLabel; + QComboBox *m_tiltDistributionComboBox; + SliderSpinBox *m_tiltAverageSlider; + QLabel *m_tiltAverageLabel; + SliderSpinBox *m_tiltStdSlider; + QLabel *m_tiltStdLabel; - QComboBox *mRotationDistributionComboBox; - SliderSpinBox *mRotationAverageSlider; - QLabel *mRotationAverageLabel; - SliderSpinBox *mRotationStdSlider; - QLabel *mRotationStdLabel; + QComboBox *m_rotationDistributionComboBox; + SliderSpinBox *m_rotationAverageSlider; + QLabel *m_rotationAverageLabel; + SliderSpinBox *m_rotationStdSlider; + QLabel *m_rotationStdLabel; - QSpinBox *mWeightSpinBox; + QSpinBox *m_weightSpinBox; - CrystalModel *mModel; - QDataWidgetMapper *mMapper; - QComboBox *mPopulationComboBox; + CrystalModel *m_model; + QDataWidgetMapper *m_mapper; + QComboBox *m_populationComboBox; - unsigned int mNextPopulationId; + unsigned int m_nextPopulationId; }; } diff --git a/src/haloray-core/gui/generalSettingsWidget.cpp b/src/haloray-core/gui/generalSettingsWidget.cpp index ff57675..c816e41 100644 --- a/src/haloray-core/gui/generalSettingsWidget.cpp +++ b/src/haloray-core/gui/generalSettingsWidget.cpp @@ -12,23 +12,23 @@ GeneralSettingsWidget::GeneralSettingsWidget(QWidget *parent) { setupUi(); - connect(mSunAltitudeSlider, &SliderSpinBox::valueChanged, [this]() { + connect(m_sunAltitudeSlider, &SliderSpinBox::valueChanged, [this]() { emit lightSourceChanged(stateToLightSource()); }); - connect(mSunDiameterSpinBox, QOverload::of(&QDoubleSpinBox::valueChanged), [this]() { + connect(m_sunDiameterSpinBox, QOverload::of(&QDoubleSpinBox::valueChanged), [this]() { emit lightSourceChanged(stateToLightSource()); }); - connect(mRaysPerFrameSpinBox, QOverload::of(&QSpinBox::valueChanged), [this](int value) { + connect(m_raysPerFrameSpinBox, QOverload::of(&QSpinBox::valueChanged), [this](int value) { emit numRaysChanged((unsigned int)value); }); - connect(mMaximumFramesSpinBox, QOverload::of(&QSpinBox::valueChanged), [this](int value) { + connect(m_maximumFramesSpinBox, QOverload::of(&QSpinBox::valueChanged), [this](int value) { emit maximumNumberOfIterationsChanged((unsigned int)value); }); - connect(mMultipleScattering, &SliderSpinBox::valueChanged, this, &GeneralSettingsWidget::multipleScatteringProbabilityChanged); + connect(m_multipleScattering, &SliderSpinBox::valueChanged, this, &GeneralSettingsWidget::multipleScatteringProbabilityChanged); } void GeneralSettingsWidget::setInitialValues(double sunDiameter, @@ -37,69 +37,69 @@ void GeneralSettingsWidget::setInitialValues(double sunDiameter, unsigned int maxNumFrames, double multipleScatteringProbability) { - mSunDiameterSpinBox->setValue(sunDiameter); - mSunAltitudeSlider->setValue(sunAltitude); - mRaysPerFrameSpinBox->setValue(raysPerFrame); - mMaximumFramesSpinBox->setValue(maxNumFrames); - mMultipleScattering->setValue(multipleScatteringProbability); + m_sunDiameterSpinBox->setValue(sunDiameter); + m_sunAltitudeSlider->setValue(sunAltitude); + m_raysPerFrameSpinBox->setValue(raysPerFrame); + m_maximumFramesSpinBox->setValue(maxNumFrames); + m_multipleScattering->setValue(multipleScatteringProbability); } void GeneralSettingsWidget::setupUi() { setMaximumWidth(400); - mSunAltitudeSlider = new SliderSpinBox(); - mSunAltitudeSlider = SliderSpinBox::createAngleSlider(-90.0, 90.0); - - mSunDiameterSpinBox = new QDoubleSpinBox(); - mSunDiameterSpinBox->setSuffix("­°"); - mSunDiameterSpinBox->setSingleStep(0.1); - mSunDiameterSpinBox->setMinimum(0.01); - mSunDiameterSpinBox->setMaximum(30.0); - mSunDiameterSpinBox->setValue(0.5); - - mRaysPerFrameSpinBox = new QSpinBox(); - mRaysPerFrameSpinBox->setSingleStep(1000); - mRaysPerFrameSpinBox->setMinimum(1); - mRaysPerFrameSpinBox->setMaximum(2000000000); - mRaysPerFrameSpinBox->setValue(500000); - mRaysPerFrameSpinBox->setGroupSeparatorShown(true); - - mMaximumFramesSpinBox = new QSpinBox(); - mRaysPerFrameSpinBox->setSingleStep(60); - mMaximumFramesSpinBox->setMinimum(100); - mMaximumFramesSpinBox->setMaximum(1000000000); - mMaximumFramesSpinBox->setValue(100000000); - mMaximumFramesSpinBox->setGroupSeparatorShown(true); - - mMultipleScattering = new SliderSpinBox(); - mMultipleScattering->setMinimum(0.0); - mMultipleScattering->setMaximum(1.0); + m_sunAltitudeSlider = new SliderSpinBox(); + m_sunAltitudeSlider = SliderSpinBox::createAngleSlider(-90.0, 90.0); + + m_sunDiameterSpinBox = new QDoubleSpinBox(); + m_sunDiameterSpinBox->setSuffix("­°"); + m_sunDiameterSpinBox->setSingleStep(0.1); + m_sunDiameterSpinBox->setMinimum(0.01); + m_sunDiameterSpinBox->setMaximum(30.0); + m_sunDiameterSpinBox->setValue(0.5); + + m_raysPerFrameSpinBox = new QSpinBox(); + m_raysPerFrameSpinBox->setSingleStep(1000); + m_raysPerFrameSpinBox->setMinimum(1); + m_raysPerFrameSpinBox->setMaximum(2000000000); + m_raysPerFrameSpinBox->setValue(500000); + m_raysPerFrameSpinBox->setGroupSeparatorShown(true); + + m_maximumFramesSpinBox = new QSpinBox(); + m_raysPerFrameSpinBox->setSingleStep(60); + m_maximumFramesSpinBox->setMinimum(100); + m_maximumFramesSpinBox->setMaximum(1000000000); + m_maximumFramesSpinBox->setValue(100000000); + m_maximumFramesSpinBox->setGroupSeparatorShown(true); + + m_multipleScattering = new SliderSpinBox(); + m_multipleScattering->setMinimum(0.0); + m_multipleScattering->setMaximum(1.0); auto layout = new QFormLayout(this); - layout->addRow(tr("Sun altitude"), mSunAltitudeSlider); - layout->addRow(tr("Sun diameter"), mSunDiameterSpinBox); - layout->addRow(tr("Rays per frame"), mRaysPerFrameSpinBox); - layout->addRow(tr("Maximum frames"), mMaximumFramesSpinBox); - layout->addRow(tr("Double scattering"), mMultipleScattering); + layout->addRow(tr("Sun altitude"), m_sunAltitudeSlider); + layout->addRow(tr("Sun diameter"), m_sunDiameterSpinBox); + layout->addRow(tr("Rays per frame"), m_raysPerFrameSpinBox); + layout->addRow(tr("Maximum frames"), m_maximumFramesSpinBox); + layout->addRow(tr("Double scattering"), m_multipleScattering); } HaloRay::LightSource GeneralSettingsWidget::stateToLightSource() const { HaloRay::LightSource light; - light.altitude = mSunAltitudeSlider->value(); - light.diameter = mSunDiameterSpinBox->value(); + light.altitude = m_sunAltitudeSlider->value(); + light.diameter = m_sunDiameterSpinBox->value(); return light; } void GeneralSettingsWidget::toggleMaxIterationsSpinBoxStatus() { - mMaximumFramesSpinBox->setEnabled(!mMaximumFramesSpinBox->isEnabled()); + m_maximumFramesSpinBox->setEnabled(!m_maximumFramesSpinBox->isEnabled()); } void GeneralSettingsWidget::setMaxRaysPerFrame(unsigned int maxRays) { - mRaysPerFrameSpinBox->setMaximum((int)maxRays); + m_raysPerFrameSpinBox->setMaximum((int)maxRays); } } diff --git a/src/haloray-core/gui/generalSettingsWidget.h b/src/haloray-core/gui/generalSettingsWidget.h index 1416d6e..dcd8771 100644 --- a/src/haloray-core/gui/generalSettingsWidget.h +++ b/src/haloray-core/gui/generalSettingsWidget.h @@ -35,11 +35,11 @@ public slots: HaloRay::LightSource stateToLightSource() const; void setupUi(); - SliderSpinBox *mSunAltitudeSlider; - QDoubleSpinBox *mSunDiameterSpinBox; - QSpinBox *mRaysPerFrameSpinBox; - QSpinBox *mMaximumFramesSpinBox; - SliderSpinBox *mMultipleScattering; + SliderSpinBox *m_sunAltitudeSlider; + QDoubleSpinBox *m_sunDiameterSpinBox; + QSpinBox *m_raysPerFrameSpinBox; + QSpinBox *m_maximumFramesSpinBox; + SliderSpinBox *m_multipleScattering; }; } diff --git a/src/haloray-core/gui/mainWindow.cpp b/src/haloray-core/gui/mainWindow.cpp index 20ebe0d..f5929ef 100644 --- a/src/haloray-core/gui/mainWindow.cpp +++ b/src/haloray-core/gui/mainWindow.cpp @@ -34,66 +34,66 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) QIcon::setThemeName("HaloRayTheme"); #endif - mCrystalRepository = std::make_shared(); - mEngine = std::make_shared(mCrystalRepository); + m_crystalRepository = std::make_shared(); + m_engine = std::make_shared(m_crystalRepository); setupUi(); // Signals from render button - connect(mRenderButton, &RenderButton::clicked, mOpenGLWidget, &OpenGLWidget::toggleRendering); - connect(mRenderButton, &RenderButton::clicked, mGeneralSettingsWidget, &GeneralSettingsWidget::toggleMaxIterationsSpinBoxStatus); + connect(m_renderButton, &RenderButton::clicked, m_openGLWidget, &OpenGLWidget::toggleRendering); + connect(m_renderButton, &RenderButton::clicked, m_generalSettingsWidget, &GeneralSettingsWidget::toggleMaxIterationsSpinBoxStatus); // Signals from crystal settings - connect(mCrystalSettingsWidget, &CrystalSettingsWidget::crystalChanged, [this]() { - mEngine->clear(); - mOpenGLWidget->update(); + connect(m_crystalSettingsWidget, &CrystalSettingsWidget::crystalChanged, [this]() { + m_engine->clear(); + m_openGLWidget->update(); }); // Signals from view settings - connect(mViewSettingsWidget, &ViewSettingsWidget::cameraChanged, [this](HaloRay::Camera camera) { - mEngine->setCamera(camera); - mOpenGLWidget->update(); + connect(m_viewSettingsWidget, &ViewSettingsWidget::cameraChanged, [this](HaloRay::Camera camera) { + m_engine->setCamera(camera); + m_openGLWidget->update(); }); - connect(mViewSettingsWidget, &ViewSettingsWidget::brightnessChanged, mOpenGLWidget, &OpenGLWidget::setBrightness); - connect(mViewSettingsWidget, &ViewSettingsWidget::lockToLightSource, [this](bool locked) { - mEngine->lockCameraToLightSource(locked); - mOpenGLWidget->update(); + connect(m_viewSettingsWidget, &ViewSettingsWidget::brightnessChanged, m_openGLWidget, &OpenGLWidget::setBrightness); + connect(m_viewSettingsWidget, &ViewSettingsWidget::lockToLightSource, [this](bool locked) { + m_engine->lockCameraToLightSource(locked); + m_openGLWidget->update(); }); - mViewSettingsWidget->setCamera(mEngine->getCamera()); - mViewSettingsWidget->setBrightness(1.0); + m_viewSettingsWidget->setCamera(m_engine->getCamera()); + m_viewSettingsWidget->setBrightness(1.0); // Signals from OpenGL widget - connect(mOpenGLWidget, &OpenGLWidget::fieldOfViewChanged, mViewSettingsWidget, &ViewSettingsWidget::setFieldOfView); - connect(mOpenGLWidget, &OpenGLWidget::cameraOrientationChanged, mViewSettingsWidget, &ViewSettingsWidget::setCameraOrientation); - connect(mOpenGLWidget, &OpenGLWidget::maxRaysPerFrameChanged, mGeneralSettingsWidget, &GeneralSettingsWidget::setMaxRaysPerFrame); - connect(mOpenGLWidget, &OpenGLWidget::nextIteration, mProgressBar, &QProgressBar::setValue); + connect(m_openGLWidget, &OpenGLWidget::fieldOfViewChanged, m_viewSettingsWidget, &ViewSettingsWidget::setFieldOfView); + connect(m_openGLWidget, &OpenGLWidget::cameraOrientationChanged, m_viewSettingsWidget, &ViewSettingsWidget::setCameraOrientation); + connect(m_openGLWidget, &OpenGLWidget::maxRaysPerFrameChanged, m_generalSettingsWidget, &GeneralSettingsWidget::setMaxRaysPerFrame); + connect(m_openGLWidget, &OpenGLWidget::nextIteration, m_progressBar, &QProgressBar::setValue); // Signals from general settings - connect(mGeneralSettingsWidget, &GeneralSettingsWidget::lightSourceChanged, [this](HaloRay::LightSource light) { - mEngine->setLightSource(light); - mOpenGLWidget->update(); + connect(m_generalSettingsWidget, &GeneralSettingsWidget::lightSourceChanged, [this](HaloRay::LightSource light) { + m_engine->setLightSource(light); + m_openGLWidget->update(); }); - connect(mGeneralSettingsWidget, &GeneralSettingsWidget::numRaysChanged, [this](unsigned int value) { - mEngine->setRaysPerStep(value); - mOpenGLWidget->update(); + connect(m_generalSettingsWidget, &GeneralSettingsWidget::numRaysChanged, [this](unsigned int value) { + m_engine->setRaysPerStep(value); + m_openGLWidget->update(); }); - connect(mGeneralSettingsWidget, &GeneralSettingsWidget::maximumNumberOfIterationsChanged, mOpenGLWidget, &OpenGLWidget::setMaxIterations); - connect(mGeneralSettingsWidget, &GeneralSettingsWidget::maximumNumberOfIterationsChanged, mProgressBar, &QProgressBar::setMaximum); - connect(mGeneralSettingsWidget, &GeneralSettingsWidget::multipleScatteringProbabilityChanged, [this](double value) { - mEngine->setMultipleScatteringProbability(value); - mOpenGLWidget->update(); + connect(m_generalSettingsWidget, &GeneralSettingsWidget::maximumNumberOfIterationsChanged, m_openGLWidget, &OpenGLWidget::setMaxIterations); + connect(m_generalSettingsWidget, &GeneralSettingsWidget::maximumNumberOfIterationsChanged, m_progressBar, &QProgressBar::setMaximum); + connect(m_generalSettingsWidget, &GeneralSettingsWidget::multipleScatteringProbabilityChanged, [this](double value) { + m_engine->setMultipleScatteringProbability(value); + m_openGLWidget->update(); }); - mGeneralSettingsWidget->setInitialValues(mEngine->getLightSource().diameter, - mEngine->getLightSource().altitude, - mEngine->getRaysPerStep(), + m_generalSettingsWidget->setInitialValues(m_engine->getLightSource().diameter, + m_engine->getLightSource().altitude, + m_engine->getRaysPerStep(), 600, - mEngine->getMultipleScatteringProbability()); + m_engine->getMultipleScatteringProbability()); // Signals for menu bar - connect(mQuitAction, &QAction::triggered, QApplication::instance(), &QApplication::quit); - connect(mSaveImageAction, &QAction::triggered, [this]() { - auto image = mOpenGLWidget->grabFramebuffer(); + connect(m_quitAction, &QAction::triggered, QApplication::instance(), &QApplication::quit); + connect(m_saveImageAction, &QAction::triggered, [this]() { + auto image = m_openGLWidget->grabFramebuffer(); auto currentTime = QDateTime::currentDateTimeUtc().toString(Qt::DateFormat::ISODate); auto defaultFilename = QString("haloray_%1.png") .arg(currentTime) @@ -124,9 +124,9 @@ void MainWindow::setupUi() setupMenuBar(); - mOpenGLWidget = new OpenGLWidget(mEngine); - mProgressBar = setupProgressBar(); - mRenderButton = new RenderButton(); + m_openGLWidget = new OpenGLWidget(m_engine); + m_progressBar = setupProgressBar(); + m_renderButton = new RenderButton(); auto mainWidget = new QWidget(); auto topLayout = new QHBoxLayout(mainWidget); @@ -135,34 +135,34 @@ void MainWindow::setupUi() auto sideBarLayout = new QVBoxLayout(); auto sideBarScrollArea = setupSideBarScrollArea(); sideBarLayout->addWidget(sideBarScrollArea); - sideBarLayout->addWidget(mProgressBar); - sideBarLayout->addWidget(mRenderButton); + sideBarLayout->addWidget(m_progressBar); + sideBarLayout->addWidget(m_renderButton); topLayout->addLayout(sideBarLayout); - topLayout->addWidget(mOpenGLWidget); + topLayout->addWidget(m_openGLWidget); } void MainWindow::setupMenuBar() { auto fileMenu = menuBar()->addMenu(tr("&File")); - mSaveImageAction = fileMenu->addAction(tr("Save image")); + m_saveImageAction = fileMenu->addAction(tr("Save image")); fileMenu->addSeparator(); - mQuitAction = fileMenu->addAction(tr("&Quit")); + m_quitAction = fileMenu->addAction(tr("&Quit")); } QScrollArea *MainWindow::setupSideBarScrollArea() { - mGeneralSettingsWidget = new GeneralSettingsWidget(); - mCrystalSettingsWidget = new CrystalSettingsWidget(mCrystalRepository); - mViewSettingsWidget = new ViewSettingsWidget(); + m_generalSettingsWidget = new GeneralSettingsWidget(); + m_crystalSettingsWidget = new CrystalSettingsWidget(m_crystalRepository); + m_viewSettingsWidget = new ViewSettingsWidget(); auto scrollContainer = new QWidget(); auto scrollableLayout = new QVBoxLayout(scrollContainer); scrollableLayout->setSizeConstraint(QLayout::SetMinAndMaxSize); - scrollableLayout->addWidget(mGeneralSettingsWidget); - scrollableLayout->addWidget(mCrystalSettingsWidget); - scrollableLayout->addWidget(mViewSettingsWidget); + scrollableLayout->addWidget(m_generalSettingsWidget); + scrollableLayout->addWidget(m_crystalSettingsWidget); + scrollableLayout->addWidget(m_viewSettingsWidget); scrollableLayout->addStretch(); auto scrollArea = new QScrollArea(); diff --git a/src/haloray-core/gui/mainWindow.h b/src/haloray-core/gui/mainWindow.h index 85f9563..63b031c 100644 --- a/src/haloray-core/gui/mainWindow.h +++ b/src/haloray-core/gui/mainWindow.h @@ -33,18 +33,18 @@ class MainWindow : public QMainWindow QProgressBar *setupProgressBar(); void setupMenuBar(); - GeneralSettingsWidget *mGeneralSettingsWidget; - CrystalSettingsWidget *mCrystalSettingsWidget; - ViewSettingsWidget *mViewSettingsWidget; - QProgressBar *mProgressBar; - RenderButton *mRenderButton; - OpenGLWidget *mOpenGLWidget; - - QAction *mSaveImageAction; - QAction *mQuitAction; - - std::shared_ptr mCrystalRepository; - std::shared_ptr mEngine; + GeneralSettingsWidget *m_generalSettingsWidget; + CrystalSettingsWidget *m_crystalSettingsWidget; + ViewSettingsWidget *m_viewSettingsWidget; + QProgressBar *m_progressBar; + RenderButton *m_renderButton; + OpenGLWidget *m_openGLWidget; + + QAction *m_saveImageAction; + QAction *m_quitAction; + + std::shared_ptr m_crystalRepository; + std::shared_ptr m_engine; }; } diff --git a/src/haloray-core/gui/openGLWidget.cpp b/src/haloray-core/gui/openGLWidget.cpp index 4d28b8b..073efa6 100644 --- a/src/haloray-core/gui/openGLWidget.cpp +++ b/src/haloray-core/gui/openGLWidget.cpp @@ -15,11 +15,11 @@ namespace HaloRay OpenGLWidget::OpenGLWidget(enginePtr engine, QWidget *parent) : QOpenGLWidget(parent), - mEngine(engine), - mDragging(false), - mPreviousDragPoint(QPoint(0, 0)), - mExposure(1.0f), - mMaxIterations(1) + m_engine(engine), + m_dragging(false), + m_previousDragPoint(QPoint(0, 0)), + m_exposure(1.0f), + m_maxIterations(1) { setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding); setUpdateBehavior(UpdateBehavior::PartialUpdate); @@ -27,38 +27,38 @@ OpenGLWidget::OpenGLWidget(enginePtr engine, QWidget *parent) void OpenGLWidget::toggleRendering() { - if (mEngine->isRunning()) - mEngine->stop(); + if (m_engine->isRunning()) + m_engine->stop(); else - mEngine->start(); + m_engine->start(); update(); } void OpenGLWidget::paintGL() { - if (mEngine->isRunning() && mEngine->getIteration() < mMaxIterations) + if (m_engine->isRunning() && m_engine->getIteration() < m_maxIterations) { - mEngine->step(); - emit nextIteration(mEngine->getIteration()); + m_engine->step(); + emit nextIteration(m_engine->getIteration()); update(); } - const float exposure = mExposure / (mEngine->getIteration() + 1) / (mEngine->getCamera().fov / 180.0); - mTextureRenderer->setUniformFloat("exposure", exposure); - mTextureRenderer->render(mEngine->getOutputTextureHandle()); + const float exposure = m_exposure / (m_engine->getIteration() + 1) / (m_engine->getCamera().fov / 180.0); + m_textureRenderer->setUniformFloat("exposure", exposure); + m_textureRenderer->render(m_engine->getOutputTextureHandle()); } void OpenGLWidget::resizeGL(int w, int h) { - mEngine->resizeOutputTextureCallback(w, h); + m_engine->resizeOutputTextureCallback(w, h); } void OpenGLWidget::initializeGL() { initializeOpenGLFunctions(); - mTextureRenderer = std::make_unique(); - mEngine->initialize(); - mTextureRenderer->initialize(); + m_textureRenderer = std::make_unique(); + m_engine->initialize(); + m_textureRenderer->initialize(); glClearColor(0.0, 0.0, 0.0, 1.0); glClear(GL_COLOR_BUFFER_BIT); @@ -72,25 +72,25 @@ void OpenGLWidget::initializeGL() void OpenGLWidget::mousePressEvent(QMouseEvent *event) { - if (!mEngine->isRunning()) + if (!m_engine->isRunning()) return; if (event->button() == Qt::LeftButton) { - mDragging = true; + m_dragging = true; this->setCursor(Qt::CursorShape::OpenHandCursor); - mPreviousDragPoint = event->globalPos(); + m_previousDragPoint = event->globalPos(); } } void OpenGLWidget::mouseMoveEvent(QMouseEvent *event) { - if (mDragging) + if (m_dragging) { - auto camera = mEngine->getCamera(); + auto camera = m_engine->getCamera(); auto dragSpeed = camera.fov / height(); auto currentMousePosition = event->globalPos(); - auto delta = currentMousePosition - mPreviousDragPoint; + auto delta = currentMousePosition - m_previousDragPoint; camera.yaw += delta.x() * dragSpeed; if (camera.yaw > 360.0) camera.yaw = -360.0; @@ -102,11 +102,11 @@ void OpenGLWidget::mouseMoveEvent(QMouseEvent *event) camera.pitch = 90.0; else if (camera.pitch < -90.0) camera.pitch = -90.0; - mEngine->setCamera(camera); + m_engine->setCamera(camera); emit cameraOrientationChanged(camera.pitch, camera.yaw); - mPreviousDragPoint = currentMousePosition; + m_previousDragPoint = currentMousePosition; update(); } } @@ -115,20 +115,20 @@ void OpenGLWidget::mouseReleaseEvent(QMouseEvent *event) { if (event->button() == Qt::LeftButton) { - mDragging = false; + m_dragging = false; this->setCursor(Qt::CursorShape::ArrowCursor); } } void OpenGLWidget::wheelEvent(QWheelEvent *event) { - if (!mEngine->isRunning()) + if (!m_engine->isRunning()) { event->ignore(); return; } - auto camera = mEngine->getCamera(); + auto camera = m_engine->getCamera(); const float zoomSpeed = 0.1f * camera.fov; QPoint numPixels = event->pixelDelta(); @@ -146,7 +146,7 @@ void OpenGLWidget::wheelEvent(QWheelEvent *event) camera.fov = std::max(camera.fov, 10.0f); camera.fov = std::min(camera.fov, camera.getMaximumFov()); - mEngine->setCamera(camera); + m_engine->setCamera(camera); event->accept(); @@ -156,13 +156,13 @@ void OpenGLWidget::wheelEvent(QWheelEvent *event) void OpenGLWidget::setBrightness(double brightness) { - mExposure = (float)brightness; + m_exposure = (float)brightness; update(); } void OpenGLWidget::setMaxIterations(unsigned int maxIterations) { - mMaxIterations = maxIterations; + m_maxIterations = maxIterations; update(); } diff --git a/src/haloray-core/gui/openGLWidget.h b/src/haloray-core/gui/openGLWidget.h index 6745266..41ba680 100644 --- a/src/haloray-core/gui/openGLWidget.h +++ b/src/haloray-core/gui/openGLWidget.h @@ -52,12 +52,12 @@ public slots: void wheelEvent(QWheelEvent *event) override; private: - enginePtr mEngine; - std::unique_ptr mTextureRenderer; - bool mDragging; - QPoint mPreviousDragPoint; - float mExposure; - unsigned int mMaxIterations; + enginePtr m_engine; + std::unique_ptr m_textureRenderer; + bool m_dragging; + QPoint m_previousDragPoint; + float m_exposure; + unsigned int m_maxIterations; }; } diff --git a/src/haloray-core/gui/renderButton.cpp b/src/haloray-core/gui/renderButton.cpp index e8397be..aa3432b 100644 --- a/src/haloray-core/gui/renderButton.cpp +++ b/src/haloray-core/gui/renderButton.cpp @@ -5,7 +5,7 @@ namespace HaloRay { RenderButton::RenderButton(QWidget *parent) - : QPushButton(parent), mRendering(false) + : QPushButton(parent), m_rendering(false) { const QString renderText = tr("Render"); const QString stopText = tr("Stop"); @@ -15,11 +15,11 @@ RenderButton::RenderButton(QWidget *parent) setMinimumHeight(100); connect(this, &RenderButton::clicked, [this, renderText, stopText]() { - if (mRendering) + if (m_rendering) this->setText(renderText); else this->setText(stopText); - mRendering = !mRendering; + m_rendering = !m_rendering; }); } diff --git a/src/haloray-core/gui/renderButton.h b/src/haloray-core/gui/renderButton.h index b18bb22..144b245 100644 --- a/src/haloray-core/gui/renderButton.h +++ b/src/haloray-core/gui/renderButton.h @@ -11,7 +11,7 @@ class RenderButton : public QPushButton RenderButton(QWidget *parent = nullptr); private: - bool mRendering; + bool m_rendering; }; } diff --git a/src/haloray-core/gui/sliderSpinBox.cpp b/src/haloray-core/gui/sliderSpinBox.cpp index cd4e5c8..27d8a30 100644 --- a/src/haloray-core/gui/sliderSpinBox.cpp +++ b/src/haloray-core/gui/sliderSpinBox.cpp @@ -9,27 +9,27 @@ const double sliderMultiplier = 100.0; SliderSpinBox::SliderSpinBox(QWidget *parent) : QWidget(parent) { - mSlider = new QSlider(); - mSlider->setOrientation(Qt::Orientation::Horizontal); - mSlider->setSingleStep((int)sliderMultiplier); - mSlider->setPageStep((int)(10 * sliderMultiplier)); - mSlider->setMinimumWidth(100); + m_slider = new QSlider(); + m_slider->setOrientation(Qt::Orientation::Horizontal); + m_slider->setSingleStep((int)sliderMultiplier); + m_slider->setPageStep((int)(10 * sliderMultiplier)); + m_slider->setMinimumWidth(100); - mSpinBox = new QDoubleSpinBox(); - mSpinBox->setSingleStep(0.1); + m_spinBox = new QDoubleSpinBox(); + m_spinBox->setSingleStep(0.1); auto layout = new QHBoxLayout(this); - layout->addWidget(mSlider); - layout->addWidget(mSpinBox); + layout->addWidget(m_slider); + layout->addWidget(m_spinBox); layout->setMargin(0); - connect(mSlider, &QSlider::valueChanged, [this](int value) { - mSpinBox->setValue((double)value / sliderMultiplier); + connect(m_slider, &QSlider::valueChanged, [this](int value) { + m_spinBox->setValue((double)value / sliderMultiplier); }); - connect(mSpinBox, QOverload::of(&QDoubleSpinBox::valueChanged), [this](double value) { - mSlider->setValue((int)(value * sliderMultiplier)); + connect(m_spinBox, QOverload::of(&QDoubleSpinBox::valueChanged), [this](double value) { + m_slider->setValue((int)(value * sliderMultiplier)); }); - connect(mSpinBox, QOverload::of(&QDoubleSpinBox::valueChanged), this, &SliderSpinBox::valueChanged); + connect(m_spinBox, QOverload::of(&QDoubleSpinBox::valueChanged), this, &SliderSpinBox::valueChanged); } SliderSpinBox::SliderSpinBox(double min, double max, QWidget *parent) @@ -41,35 +41,35 @@ SliderSpinBox::SliderSpinBox(double min, double max, QWidget *parent) void SliderSpinBox::setSuffix(const QString &suffix) { - mSpinBox->setSuffix(suffix); + m_spinBox->setSuffix(suffix); } void SliderSpinBox::setMinimum(double minimum) { - mSlider->setMinimum((int)(minimum * sliderMultiplier)); - mSpinBox->setMinimum(minimum); + m_slider->setMinimum((int)(minimum * sliderMultiplier)); + m_spinBox->setMinimum(minimum); } void SliderSpinBox::setMaximum(double maximum) { - mSlider->setMaximum((int)(maximum * sliderMultiplier)); - mSpinBox->setMaximum(maximum); + m_slider->setMaximum((int)(maximum * sliderMultiplier)); + m_spinBox->setMaximum(maximum); } void SliderSpinBox::setWrapping(bool wrapping) { - mSpinBox->setWrapping(wrapping); + m_spinBox->setWrapping(wrapping); } void SliderSpinBox::setValue(double value) { - if (mSpinBox->value() == value) return; - mSpinBox->setValue(value); + if (m_spinBox->value() == value) return; + m_spinBox->setValue(value); } double SliderSpinBox::value() const { - return mSpinBox->value(); + return m_spinBox->value(); } SliderSpinBox *SliderSpinBox::createAngleSlider(double min, double max) diff --git a/src/haloray-core/gui/sliderSpinBox.h b/src/haloray-core/gui/sliderSpinBox.h index 424ef52..acbd00b 100644 --- a/src/haloray-core/gui/sliderSpinBox.h +++ b/src/haloray-core/gui/sliderSpinBox.h @@ -30,8 +30,8 @@ public slots: void valueChanged(double value); private: - QSlider *mSlider; - QDoubleSpinBox *mSpinBox; + QSlider *m_slider; + QDoubleSpinBox *m_spinBox; }; } diff --git a/src/haloray-core/gui/viewSettingsWidget.cpp b/src/haloray-core/gui/viewSettingsWidget.cpp index b8c5d7b..882e618 100644 --- a/src/haloray-core/gui/viewSettingsWidget.cpp +++ b/src/haloray-core/gui/viewSettingsWidget.cpp @@ -15,90 +15,90 @@ ViewSettingsWidget::ViewSettingsWidget(QWidget *parent) auto cameraChangeHandler = [this]() { auto camera = stateToCamera(); - mFieldOfViewSlider->setMaximum(camera.getMaximumFov()); - camera.fov = mFieldOfViewSlider->value(); + m_fieldOfViewSlider->setMaximum(camera.getMaximumFov()); + camera.fov = m_fieldOfViewSlider->value(); cameraChanged(camera); }; - connect(mCameraProjectionComboBox, QOverload::of(&QComboBox::currentIndexChanged), cameraChangeHandler); - connect(mFieldOfViewSlider, &SliderSpinBox::valueChanged, cameraChangeHandler); - connect(mPitchSlider, &SliderSpinBox::valueChanged, cameraChangeHandler); - connect(mYawSlider, &SliderSpinBox::valueChanged, cameraChangeHandler); - connect(mHideSubHorizonCheckBox, &QCheckBox::stateChanged, cameraChangeHandler); - connect(mBrightnessSlider, &SliderSpinBox::valueChanged, this, &ViewSettingsWidget::brightnessChanged); - connect(mLockToLightSource, &QCheckBox::stateChanged, this, &ViewSettingsWidget::lockToLightSource); + connect(m_cameraProjectionComboBox, QOverload::of(&QComboBox::currentIndexChanged), cameraChangeHandler); + connect(m_fieldOfViewSlider, &SliderSpinBox::valueChanged, cameraChangeHandler); + connect(m_pitchSlider, &SliderSpinBox::valueChanged, cameraChangeHandler); + connect(m_yawSlider, &SliderSpinBox::valueChanged, cameraChangeHandler); + connect(m_hideSubHorizonCheckBox, &QCheckBox::stateChanged, cameraChangeHandler); + connect(m_brightnessSlider, &SliderSpinBox::valueChanged, this, &ViewSettingsWidget::brightnessChanged); + connect(m_lockToLightSource, &QCheckBox::stateChanged, this, &ViewSettingsWidget::lockToLightSource); } void ViewSettingsWidget::setupUi() { setMaximumWidth(400); - mCameraProjectionComboBox = new QComboBox(); - mCameraProjectionComboBox->addItems({tr("Stereographic"), + m_cameraProjectionComboBox = new QComboBox(); + m_cameraProjectionComboBox->addItems({tr("Stereographic"), tr("Rectilinear"), tr("Equidistant"), tr("Equal area"), tr("Orthographic")}); - mPitchSlider = SliderSpinBox::createAngleSlider(-90.0, 90.0); + m_pitchSlider = SliderSpinBox::createAngleSlider(-90.0, 90.0); - mYawSlider = SliderSpinBox::createAngleSlider(-360.0, 360.0); - mYawSlider->setWrapping(true); + m_yawSlider = SliderSpinBox::createAngleSlider(-360.0, 360.0); + m_yawSlider->setWrapping(true); - mFieldOfViewSlider = SliderSpinBox::createAngleSlider(10.0, 360.0); + m_fieldOfViewSlider = SliderSpinBox::createAngleSlider(10.0, 360.0); - mBrightnessSlider = new SliderSpinBox(); - mBrightnessSlider->setMinimum(0.1); - mBrightnessSlider->setMaximum(15.0); + m_brightnessSlider = new SliderSpinBox(); + m_brightnessSlider->setMinimum(0.1); + m_brightnessSlider->setMaximum(15.0); - mHideSubHorizonCheckBox = new QCheckBox(); + m_hideSubHorizonCheckBox = new QCheckBox(); - mLockToLightSource = new QCheckBox(); + m_lockToLightSource = new QCheckBox(); auto layout = new QFormLayout(this); - layout->addRow(tr("Camera projection"), mCameraProjectionComboBox); - layout->addRow(tr("Field of view"), mFieldOfViewSlider); - layout->addRow(tr("Pitch"), mPitchSlider); - layout->addRow(tr("Yaw"), mYawSlider); - layout->addRow(tr("Brightness"), mBrightnessSlider); - layout->addRow(tr("Hide sub-horizon"), mHideSubHorizonCheckBox); - layout->addRow(tr("Lock to light source"), mLockToLightSource); + layout->addRow(tr("Camera projection"), m_cameraProjectionComboBox); + layout->addRow(tr("Field of view"), m_fieldOfViewSlider); + layout->addRow(tr("Pitch"), m_pitchSlider); + layout->addRow(tr("Yaw"), m_yawSlider); + layout->addRow(tr("Brightness"), m_brightnessSlider); + layout->addRow(tr("Hide sub-horizon"), m_hideSubHorizonCheckBox); + layout->addRow(tr("Lock to light source"), m_lockToLightSource); } HaloRay::Camera ViewSettingsWidget::stateToCamera() const { HaloRay::Camera camera; - camera.projection = (HaloRay::Projection)mCameraProjectionComboBox->currentIndex(); - camera.fov = (float)mFieldOfViewSlider->value(); - camera.hideSubHorizon = mHideSubHorizonCheckBox->isChecked(); - camera.yaw = (float)mYawSlider->value(); - camera.pitch = (float)mPitchSlider->value(); + camera.projection = (HaloRay::Projection)m_cameraProjectionComboBox->currentIndex(); + camera.fov = (float)m_fieldOfViewSlider->value(); + camera.hideSubHorizon = m_hideSubHorizonCheckBox->isChecked(); + camera.yaw = (float)m_yawSlider->value(); + camera.pitch = (float)m_pitchSlider->value(); return camera; } void ViewSettingsWidget::setCamera(HaloRay::Camera camera) { - mCameraProjectionComboBox->setCurrentIndex((int)camera.projection); - mFieldOfViewSlider->setValue(camera.fov); - mYawSlider->setValue(camera.yaw); - mPitchSlider->setValue(camera.pitch); - mHideSubHorizonCheckBox->setChecked(camera.hideSubHorizon); + m_cameraProjectionComboBox->setCurrentIndex((int)camera.projection); + m_fieldOfViewSlider->setValue(camera.fov); + m_yawSlider->setValue(camera.yaw); + m_pitchSlider->setValue(camera.pitch); + m_hideSubHorizonCheckBox->setChecked(camera.hideSubHorizon); } void ViewSettingsWidget::setFieldOfView(double fov) { - mFieldOfViewSlider->setValue(fov); + m_fieldOfViewSlider->setValue(fov); } void ViewSettingsWidget::setCameraOrientation(double pitch, double yaw) { - mPitchSlider->setValue(pitch); - mYawSlider->setValue(yaw); + m_pitchSlider->setValue(pitch); + m_yawSlider->setValue(yaw); } void ViewSettingsWidget::setBrightness(double brightness) { - mBrightnessSlider->setValue(brightness); + m_brightnessSlider->setValue(brightness); } } diff --git a/src/haloray-core/gui/viewSettingsWidget.h b/src/haloray-core/gui/viewSettingsWidget.h index 5b69ea4..8f117e2 100644 --- a/src/haloray-core/gui/viewSettingsWidget.h +++ b/src/haloray-core/gui/viewSettingsWidget.h @@ -29,13 +29,14 @@ class ViewSettingsWidget : public QGroupBox private: void setupUi(); HaloRay::Camera stateToCamera() const; - SliderSpinBox *mFieldOfViewSlider; - SliderSpinBox *mPitchSlider; - SliderSpinBox *mYawSlider; - QComboBox *mCameraProjectionComboBox; - QCheckBox *mHideSubHorizonCheckBox; - SliderSpinBox *mBrightnessSlider; - QCheckBox *mLockToLightSource; + + SliderSpinBox *m_fieldOfViewSlider; + SliderSpinBox *m_pitchSlider; + SliderSpinBox *m_yawSlider; + QComboBox *m_cameraProjectionComboBox; + QCheckBox *m_hideSubHorizonCheckBox; + SliderSpinBox *m_brightnessSlider; + QCheckBox *m_lockToLightSource; }; } diff --git a/src/haloray-core/opengl/texture.cpp b/src/haloray-core/opengl/texture.cpp index 2451731..11ada75 100644 --- a/src/haloray-core/opengl/texture.cpp +++ b/src/haloray-core/opengl/texture.cpp @@ -5,12 +5,12 @@ namespace OpenGL { Texture::Texture(unsigned int width, unsigned int height, unsigned int textureUnit, TextureType type) - : mWidth(width), mHeight(height), mTextureUnit(textureUnit), mType(type) + : m_width(width), m_height(height), m_textureUnit(textureUnit), m_type(type) { initializeOpenGLFunctions(); - glGenTextures(1, &mTextureHandle); + glGenTextures(1, &m_textureHandle); glActiveTexture(GL_TEXTURE0 + textureUnit); - glBindTexture(GL_TEXTURE_2D, mTextureHandle); + glBindTexture(GL_TEXTURE_2D, m_textureHandle); initializeTextureImage(); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); @@ -18,13 +18,13 @@ Texture::Texture(unsigned int width, unsigned int height, unsigned int textureUn void Texture::initializeTextureImage() { - switch (mType) + switch (m_type) { case Color: - glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA32F, mWidth, mHeight, 0, GL_RGBA, GL_FLOAT, NULL); + glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA32F, m_width, m_height, 0, GL_RGBA, GL_FLOAT, NULL); break; case Monochrome: - glTexImage2D(GL_TEXTURE_2D, 0, GL_R32UI, mWidth, mHeight, 0, GL_RED, GL_UNSIGNED_INT, NULL); + glTexImage2D(GL_TEXTURE_2D, 0, GL_R32UI, m_width, m_height, 0, GL_RED, GL_UNSIGNED_INT, NULL); break; default: throw std::runtime_error("Invalid texture type"); @@ -34,17 +34,17 @@ void Texture::initializeTextureImage() Texture::~Texture() { glBindTexture(GL_TEXTURE_2D, 0); - glDeleteTextures(1, &mTextureHandle); + glDeleteTextures(1, &m_textureHandle); } unsigned int Texture::getHandle() const { - return mTextureHandle; + return m_textureHandle; } unsigned int Texture::getTextureUnit() const { - return mTextureUnit; + return m_textureUnit; } -} // namespace OpenGL +} diff --git a/src/haloray-core/opengl/texture.h b/src/haloray-core/opengl/texture.h index 10c2962..447ecfd 100644 --- a/src/haloray-core/opengl/texture.h +++ b/src/haloray-core/opengl/texture.h @@ -24,11 +24,11 @@ class Texture : protected QOpenGLFunctions_4_4_Core Texture(const Texture &); void initializeTextureImage(); - unsigned int mTextureHandle; - unsigned int mWidth; - unsigned int mHeight; - unsigned int mTextureUnit; - unsigned int mType; + unsigned int m_textureHandle; + unsigned int m_width; + unsigned int m_height; + unsigned int m_textureUnit; + unsigned int m_type; }; -} // namespace OpenGL +} diff --git a/src/haloray-core/opengl/textureRenderer.cpp b/src/haloray-core/opengl/textureRenderer.cpp index 297e17b..1d5e6e7 100644 --- a/src/haloray-core/opengl/textureRenderer.cpp +++ b/src/haloray-core/opengl/textureRenderer.cpp @@ -54,17 +54,17 @@ void TextureRenderer::initialize() 1.0f, }; - glGenVertexArrays(1, &mQuadVao); - glBindVertexArray(mQuadVao); + glGenVertexArrays(1, &m_quadVao); + glBindVertexArray(m_quadVao); glEnableVertexAttribArray(0); - glGenBuffers(1, &mQuadVbo); - glBindBuffer(GL_ARRAY_BUFFER, mQuadVbo); + glGenBuffers(1, &m_quadVbo); + glBindBuffer(GL_ARRAY_BUFFER, m_quadVbo); glBufferData(GL_ARRAY_BUFFER, 8 * sizeof(float), points, GL_STATIC_DRAW); glVertexAttribPointer(0, 2, GL_FLOAT, GL_FALSE, 0, NULL); - mTexDrawProgram = initializeTexDrawShaderProgram(); + m_texDrawProgram = initializeTexDrawShaderProgram(); } void TextureRenderer::render(unsigned int textureHandle) @@ -73,27 +73,27 @@ void TextureRenderer::render(unsigned int textureHandle) /* Render simulation result texture */ - mTexDrawProgram->bind(); + m_texDrawProgram->bind(); glClearColor(0.0f, 0.0f, 0.0f, 1.0f); glClear(GL_COLOR_BUFFER_BIT); - glBindVertexArray(mQuadVao); + glBindVertexArray(m_quadVao); glBindTexture(GL_TEXTURE_2D, textureHandle); glDrawArrays(GL_TRIANGLE_STRIP, 0, 4); } void TextureRenderer::setUniformFloat(std::string name, float value) { - mTexDrawProgram->bind(); - mTexDrawProgram->setUniformValue(name.c_str(), value); + m_texDrawProgram->bind(); + m_texDrawProgram->setUniformValue(name.c_str(), value); } TextureRenderer::~TextureRenderer() { glBindVertexArray(0); - glDeleteVertexArrays(1, &mQuadVao); + glDeleteVertexArrays(1, &m_quadVao); glBindBuffer(GL_ARRAY_BUFFER, 0); - glDeleteBuffers(1, &mQuadVbo); + glDeleteBuffers(1, &m_quadVbo); } -} // namespace OpenGL +} diff --git a/src/haloray-core/opengl/textureRenderer.h b/src/haloray-core/opengl/textureRenderer.h index 6674b5f..f969f40 100644 --- a/src/haloray-core/opengl/textureRenderer.h +++ b/src/haloray-core/opengl/textureRenderer.h @@ -17,8 +17,9 @@ class TextureRenderer : protected QOpenGLFunctions_4_4_Core private: static std::unique_ptr initializeTexDrawShaderProgram(); - std::unique_ptr mTexDrawProgram; - unsigned int mQuadVao; - unsigned int mQuadVbo; + + std::unique_ptr m_texDrawProgram; + unsigned int m_quadVao; + unsigned int m_quadVbo; }; -} // namespace OpenGL +} diff --git a/src/haloray-core/simulation/camera.cpp b/src/haloray-core/simulation/camera.cpp index be994e4..85bca6c 100644 --- a/src/haloray-core/simulation/camera.cpp +++ b/src/haloray-core/simulation/camera.cpp @@ -29,4 +29,4 @@ Camera Camera::createDefaultCamera() return camera; } -} // namespace HaloRay +} diff --git a/src/haloray-core/simulation/camera.h b/src/haloray-core/simulation/camera.h index 3d5265f..1aa2541 100644 --- a/src/haloray-core/simulation/camera.h +++ b/src/haloray-core/simulation/camera.h @@ -1,4 +1,5 @@ #pragma once +#include namespace HaloRay { @@ -25,3 +26,5 @@ struct Camera }; } + +Q_DECLARE_METATYPE(HaloRay::Camera) diff --git a/src/haloray-core/simulation/crystalPopulation.cpp b/src/haloray-core/simulation/crystalPopulation.cpp index 4dab464..c24bab7 100644 --- a/src/haloray-core/simulation/crystalPopulation.cpp +++ b/src/haloray-core/simulation/crystalPopulation.cpp @@ -107,4 +107,4 @@ CrystalPopulation CrystalPopulation::presetPopulation(CrystalPopulationPreset pr } } -} // namespace HaloRay +} diff --git a/src/haloray-core/simulation/crystalPopulation.h b/src/haloray-core/simulation/crystalPopulation.h index 8ed45fd..a98e182 100644 --- a/src/haloray-core/simulation/crystalPopulation.h +++ b/src/haloray-core/simulation/crystalPopulation.h @@ -33,4 +33,4 @@ struct CrystalPopulation static CrystalPopulation createRandom(); }; -} // namespace HaloRay +} diff --git a/src/haloray-core/simulation/crystalPopulationRepository.cpp b/src/haloray-core/simulation/crystalPopulationRepository.cpp index 4d03bdd..bafdc2c 100644 --- a/src/haloray-core/simulation/crystalPopulationRepository.cpp +++ b/src/haloray-core/simulation/crystalPopulationRepository.cpp @@ -11,36 +11,36 @@ CrystalPopulationRepository::CrystalPopulationRepository() unsigned int CrystalPopulationRepository::getCount() const { - return (unsigned int)mCrystals.size(); + return (unsigned int)m_crystals.size(); } void CrystalPopulationRepository::add(CrystalPopulationPreset preset) { - mCrystals.push_back(CrystalPopulation::presetPopulation(preset)); + m_crystals.push_back(CrystalPopulation::presetPopulation(preset)); mWeights.push_back(1); } void CrystalPopulationRepository::addDefaults() { - mCrystals.push_back(CrystalPopulation::presetPopulation(CrystalPopulationPreset::Column)); + m_crystals.push_back(CrystalPopulation::presetPopulation(CrystalPopulationPreset::Column)); mWeights.push_back(1); - mCrystals.push_back(CrystalPopulation::presetPopulation(CrystalPopulationPreset::Plate)); + m_crystals.push_back(CrystalPopulation::presetPopulation(CrystalPopulationPreset::Plate)); mWeights.push_back(1); - mCrystals.push_back(CrystalPopulation::presetPopulation(CrystalPopulationPreset::Random)); + m_crystals.push_back(CrystalPopulation::presetPopulation(CrystalPopulationPreset::Random)); mWeights.push_back(1); } void CrystalPopulationRepository::remove(unsigned int index) { - mCrystals.erase(mCrystals.begin() + index); + m_crystals.erase(m_crystals.begin() + index); mWeights.erase(mWeights.begin() + index); } CrystalPopulation &CrystalPopulationRepository::get(unsigned int index) { - return mCrystals[index]; + return m_crystals[index]; } double CrystalPopulationRepository::getProbability(unsigned int index) const @@ -59,4 +59,4 @@ void CrystalPopulationRepository::setWeight(unsigned int index, unsigned int wei mWeights[index] = weight; } -} // namespace HaloRay +} diff --git a/src/haloray-core/simulation/crystalPopulationRepository.h b/src/haloray-core/simulation/crystalPopulationRepository.h index d7153c4..d6d3406 100644 --- a/src/haloray-core/simulation/crystalPopulationRepository.h +++ b/src/haloray-core/simulation/crystalPopulationRepository.h @@ -19,8 +19,8 @@ class CrystalPopulationRepository private: void addDefaults(); - std::vector mCrystals; + std::vector m_crystals; std::vector mWeights; }; -} // namespace HaloRay +} diff --git a/src/haloray-core/simulation/lightSource.cpp b/src/haloray-core/simulation/lightSource.cpp index fbdea51..846accd 100644 --- a/src/haloray-core/simulation/lightSource.cpp +++ b/src/haloray-core/simulation/lightSource.cpp @@ -11,4 +11,4 @@ LightSource LightSource::createDefaultLightSource() return sun; } -} // namespace HaloRay +} diff --git a/src/haloray-core/simulation/lightSource.h b/src/haloray-core/simulation/lightSource.h index d0fe3c7..fe0d388 100644 --- a/src/haloray-core/simulation/lightSource.h +++ b/src/haloray-core/simulation/lightSource.h @@ -1,4 +1,5 @@ #pragma once +#include namespace HaloRay { @@ -11,4 +12,6 @@ struct LightSource static LightSource createDefaultLightSource(); }; -} // namespace HaloRay +} + +Q_DECLARE_METATYPE(HaloRay::LightSource) diff --git a/src/haloray-core/simulation/simulationEngine.cpp b/src/haloray-core/simulation/simulationEngine.cpp index c7e02a2..d69b026 100644 --- a/src/haloray-core/simulation/simulationEngine.cpp +++ b/src/haloray-core/simulation/simulationEngine.cpp @@ -14,37 +14,37 @@ namespace HaloRay SimulationEngine::SimulationEngine( std::shared_ptr crystalRepository) - : mOutputWidth(800), - mOutputHeight(600), - mMersenneTwister(std::mt19937(std::random_device()())), - mUniformDistribution(std::uniform_int_distribution(0, std::numeric_limits::max())), - mCamera(Camera::createDefaultCamera()), - mLight(LightSource::createDefaultLightSource()), - mRunning(false), - mInitialized(false), - mRaysPerStep(500000), - mIteration(0), - mCameraLockedToLightSource(false), - mMultipleScatteringProbability(0.0), - mCrystalRepository(crystalRepository) + : m_outputWidth(800), + m_outputHeight(600), + m_mersenneTwister(std::mt19937(std::random_device()())), + m_uniformDistribution(std::uniform_int_distribution(0, std::numeric_limits::max())), + m_camera(Camera::createDefaultCamera()), + m_light(LightSource::createDefaultLightSource()), + m_running(false), + m_initialized(false), + m_raysPerStep(500000), + m_iteration(0), + m_cameraLockedToLightSource(false), + m_multipleScatteringProbability(0.0), + m_crystalRepository(crystalRepository) { } bool SimulationEngine::isRunning() const { - return mRunning; + return m_running; } Camera SimulationEngine::getCamera() const { - return mCamera; + return m_camera; } void SimulationEngine::setCamera(const Camera camera) { clear(); - mCamera = camera; - if (mCameraLockedToLightSource) + m_camera = camera; + if (m_cameraLockedToLightSource) { pointCameraToLightSource(); } @@ -52,14 +52,14 @@ void SimulationEngine::setCamera(const Camera camera) LightSource SimulationEngine::getLightSource() const { - return mLight; + return m_light; } void SimulationEngine::setLightSource(const LightSource light) { clear(); - mLight = light; - if (mCameraLockedToLightSource) + m_light = light; + if (m_cameraLockedToLightSource) { pointCameraToLightSource(); } @@ -67,12 +67,12 @@ void SimulationEngine::setLightSource(const LightSource light) unsigned int SimulationEngine::getOutputTextureHandle() const { - return mSimulationTexture->getHandle(); + return m_simulationTexture->getHandle(); } unsigned int SimulationEngine::getIteration() const { - return mIteration; + return m_iteration; } void SimulationEngine::start() @@ -80,62 +80,62 @@ void SimulationEngine::start() if (isRunning()) return; clear(); - mRunning = true; - mIteration = 0; + m_running = true; + m_iteration = 0; } void SimulationEngine::stop() { - mRunning = false; + m_running = false; } void SimulationEngine::step() { - ++mIteration; + ++m_iteration; glMemoryBarrier(GL_SHADER_IMAGE_ACCESS_BARRIER_BIT); - glBindImageTexture(mSimulationTexture->getTextureUnit(), mSimulationTexture->getHandle(), 0, GL_FALSE, 0, GL_READ_WRITE, GL_RGBA32F); - glClearTexImage(mSpinlockTexture->getHandle(), 0, GL_RED, GL_UNSIGNED_INT, NULL); - glBindImageTexture(mSpinlockTexture->getTextureUnit(), mSpinlockTexture->getHandle(), 0, GL_FALSE, 0, GL_READ_WRITE, GL_R32UI); + glBindImageTexture(m_simulationTexture->getTextureUnit(), m_simulationTexture->getHandle(), 0, GL_FALSE, 0, GL_READ_WRITE, GL_RGBA32F); + glClearTexImage(m_spinlockTexture->getHandle(), 0, GL_RED, GL_UNSIGNED_INT, NULL); + glBindImageTexture(m_spinlockTexture->getTextureUnit(), m_spinlockTexture->getHandle(), 0, GL_FALSE, 0, GL_READ_WRITE, GL_R32UI); - mSimulationShader->bind(); + m_simulationShader->bind(); - for (auto i = 0u; i < mCrystalRepository->getCount(); ++i) + for (auto i = 0u; i < m_crystalRepository->getCount(); ++i) { glMemoryBarrier(GL_SHADER_IMAGE_ACCESS_BARRIER_BIT); - unsigned int seed = mUniformDistribution(mMersenneTwister); + unsigned int seed = m_uniformDistribution(m_mersenneTwister); - auto crystals = mCrystalRepository->get(i); - auto probability = mCrystalRepository->getProbability(i); - auto numRays = static_cast(mRaysPerStep * probability); + auto crystals = m_crystalRepository->get(i); + auto probability = m_crystalRepository->getProbability(i); + auto numRays = static_cast(m_raysPerStep * probability); /* The following line needs to use glUniform1ui instead of the setUniformValue method because of a bug in Qt: https://bugreports.qt.io/browse/QTBUG-45507 */ - glUniform1ui(glGetUniformLocation(mSimulationShader->programId(), "rngSeed"), seed); - mSimulationShader->setUniformValue("sun.altitude", mLight.altitude); - mSimulationShader->setUniformValue("sun.diameter", mLight.diameter); + glUniform1ui(glGetUniformLocation(m_simulationShader->programId(), "rngSeed"), seed); + m_simulationShader->setUniformValue("sun.altitude", m_light.altitude); + m_simulationShader->setUniformValue("sun.diameter", m_light.diameter); - mSimulationShader->setUniformValue("crystalProperties.caRatioAverage", crystals.caRatioAverage); - mSimulationShader->setUniformValue("crystalProperties.caRatioStd", crystals.caRatioStd); + m_simulationShader->setUniformValue("crystalProperties.caRatioAverage", crystals.caRatioAverage); + m_simulationShader->setUniformValue("crystalProperties.caRatioStd", crystals.caRatioStd); - mSimulationShader->setUniformValue("crystalProperties.tiltDistribution", crystals.tiltDistribution); - mSimulationShader->setUniformValue("crystalProperties.tiltAverage", crystals.tiltAverage); - mSimulationShader->setUniformValue("crystalProperties.tiltStd", crystals.tiltStd); + m_simulationShader->setUniformValue("crystalProperties.tiltDistribution", crystals.tiltDistribution); + m_simulationShader->setUniformValue("crystalProperties.tiltAverage", crystals.tiltAverage); + m_simulationShader->setUniformValue("crystalProperties.tiltStd", crystals.tiltStd); - mSimulationShader->setUniformValue("crystalProperties.rotationDistribution", crystals.rotationDistribution); - mSimulationShader->setUniformValue("crystalProperties.rotationAverage", crystals.rotationAverage); - mSimulationShader->setUniformValue("crystalProperties.rotationStd", crystals.rotationStd); + m_simulationShader->setUniformValue("crystalProperties.rotationDistribution", crystals.rotationDistribution); + m_simulationShader->setUniformValue("crystalProperties.rotationAverage", crystals.rotationAverage); + m_simulationShader->setUniformValue("crystalProperties.rotationStd", crystals.rotationStd); - mSimulationShader->setUniformValue("camera.pitch", mCamera.pitch); - mSimulationShader->setUniformValue("camera.yaw", mCamera.yaw); - mSimulationShader->setUniformValue("camera.fov", mCamera.fov); - mSimulationShader->setUniformValue("camera.projection", mCamera.projection); - mSimulationShader->setUniformValue("camera.hideSubHorizon", mCamera.hideSubHorizon ? 1 : 0); + m_simulationShader->setUniformValue("camera.pitch", m_camera.pitch); + m_simulationShader->setUniformValue("camera.yaw", m_camera.yaw); + m_simulationShader->setUniformValue("camera.fov", m_camera.fov); + m_simulationShader->setUniformValue("camera.projection", m_camera.projection); + m_simulationShader->setUniformValue("camera.hideSubHorizon", m_camera.hideSubHorizon ? 1 : 0); - mSimulationShader->setUniformValue("multipleScatter", mMultipleScatteringProbability); + m_simulationShader->setUniformValue("multipleScatter", m_multipleScatteringProbability); glDispatchCompute(numRays, 1, 1); } @@ -143,64 +143,64 @@ void SimulationEngine::step() void SimulationEngine::clear() { - if (!mInitialized) + if (!m_initialized) return; glMemoryBarrier(GL_SHADER_IMAGE_ACCESS_BARRIER_BIT); - glClearTexImage(mSimulationTexture->getHandle(), 0, GL_RGBA, GL_FLOAT, NULL); - glBindImageTexture(mSimulationTexture->getTextureUnit(), mSimulationTexture->getHandle(), 0, GL_FALSE, 0, GL_READ_WRITE, GL_RGBA32F); - glClearTexImage(mSpinlockTexture->getHandle(), 0, GL_RED, GL_UNSIGNED_INT, NULL); - glBindImageTexture(mSpinlockTexture->getTextureUnit(), mSpinlockTexture->getHandle(), 0, GL_FALSE, 0, GL_READ_WRITE, GL_R32UI); - mIteration = 0; + glClearTexImage(m_simulationTexture->getHandle(), 0, GL_RGBA, GL_FLOAT, NULL); + glBindImageTexture(m_simulationTexture->getTextureUnit(), m_simulationTexture->getHandle(), 0, GL_FALSE, 0, GL_READ_WRITE, GL_RGBA32F); + glClearTexImage(m_spinlockTexture->getHandle(), 0, GL_RED, GL_UNSIGNED_INT, NULL); + glBindImageTexture(m_spinlockTexture->getTextureUnit(), m_spinlockTexture->getHandle(), 0, GL_FALSE, 0, GL_READ_WRITE, GL_R32UI); + m_iteration = 0; } unsigned int SimulationEngine::getRaysPerStep() const { - return mRaysPerStep; + return m_raysPerStep; } void SimulationEngine::setRaysPerStep(unsigned int rays) { clear(); - mRaysPerStep = rays; + m_raysPerStep = rays; } void SimulationEngine::initialize() { - if (mInitialized) + if (m_initialized) return; initializeOpenGLFunctions(); initializeShader(); initializeTextures(); - mInitialized = true; + m_initialized = true; } void SimulationEngine::initializeShader() { - mSimulationShader = std::make_unique(); + m_simulationShader = std::make_unique(); #ifdef _WIN32 - mSimulationShader->addCacheableShaderFromSourceFile(QOpenGLShader::ShaderTypeBit::Compute, ":/shaders/raytrace.glsl"); + m_simulationShader->addCacheableShaderFromSourceFile(QOpenGLShader::ShaderTypeBit::Compute, ":/shaders/raytrace.glsl"); #else mSimulationShader->addShaderFromSourceFile(QOpenGLShader::ShaderTypeBit::Compute, ":/shaders/raytrace.glsl"); #endif - if (mSimulationShader->link() == false) + if (m_simulationShader->link() == false) { - throw std::runtime_error(mSimulationShader->log().toUtf8()); + throw std::runtime_error(m_simulationShader->log().toUtf8()); } } void SimulationEngine::initializeTextures() { - mSimulationTexture = std::make_unique(mOutputWidth, mOutputHeight, 0, OpenGL::TextureType::Color); - mSpinlockTexture = std::make_unique(mOutputWidth, mOutputHeight, 1, OpenGL::TextureType::Monochrome); + m_simulationTexture = std::make_unique(m_outputWidth, m_outputHeight, 0, OpenGL::TextureType::Color); + m_spinlockTexture = std::make_unique(m_outputWidth, m_outputHeight, 1, OpenGL::TextureType::Monochrome); } void SimulationEngine::resizeOutputTextureCallback(const unsigned int width, const unsigned int height) { - mOutputWidth = width; - mOutputHeight = height; + m_outputWidth = width; + m_outputHeight = height; - mSimulationTexture.reset(); - mSpinlockTexture.reset(); + m_simulationTexture.reset(); + m_spinlockTexture.reset(); initializeTextures(); clear(); @@ -208,26 +208,26 @@ void SimulationEngine::resizeOutputTextureCallback(const unsigned int width, con void SimulationEngine::lockCameraToLightSource(bool locked) { - mCameraLockedToLightSource = locked; + m_cameraLockedToLightSource = locked; pointCameraToLightSource(); } void SimulationEngine::pointCameraToLightSource() { clear(); - mCamera.yaw = 0.0f; - mCamera.pitch = mLight.altitude; + m_camera.yaw = 0.0f; + m_camera.pitch = m_light.altitude; } void SimulationEngine::setMultipleScatteringProbability(double probability) { clear(); - mMultipleScatteringProbability = static_cast(std::min(std::max(probability, 0.0), 1.0)); + m_multipleScatteringProbability = static_cast(std::min(std::max(probability, 0.0), 1.0)); } double SimulationEngine::getMultipleScatteringProbability() const { - return static_cast(mMultipleScatteringProbability); + return static_cast(m_multipleScatteringProbability); } -} // namespace HaloRay +} diff --git a/src/haloray-core/simulation/simulationEngine.h b/src/haloray-core/simulation/simulationEngine.h index 5f3353c..41ae4d2 100644 --- a/src/haloray-core/simulation/simulationEngine.h +++ b/src/haloray-core/simulation/simulationEngine.h @@ -50,24 +50,24 @@ class SimulationEngine : protected QOpenGLFunctions_4_4_Core void initializeTextures(); void pointCameraToLightSource(); - unsigned int mOutputWidth; - unsigned int mOutputHeight; - std::mt19937 mMersenneTwister; - std::uniform_int_distribution mUniformDistribution; - std::unique_ptr mSimulationShader; - std::unique_ptr mSimulationTexture; - std::unique_ptr mSpinlockTexture; - - Camera mCamera; - LightSource mLight; - - bool mRunning; - bool mInitialized; - unsigned int mRaysPerStep; - unsigned int mIteration; - bool mCameraLockedToLightSource; - float mMultipleScatteringProbability; - std::shared_ptr mCrystalRepository; + unsigned int m_outputWidth; + unsigned int m_outputHeight; + std::mt19937 m_mersenneTwister; + std::uniform_int_distribution m_uniformDistribution; + std::unique_ptr m_simulationShader; + std::unique_ptr m_simulationTexture; + std::unique_ptr m_spinlockTexture; + + Camera m_camera; + LightSource m_light; + + bool m_running; + bool m_initialized; + unsigned int m_raysPerStep; + unsigned int m_iteration; + bool m_cameraLockedToLightSource; + float m_multipleScatteringProbability; + std::shared_ptr m_crystalRepository; }; -} // namespace HaloRay +} From c8cbb1b9ac40c4e0f357a4c063ac8ebdecd3a466 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 6 Jun 2020 18:56:55 +0300 Subject: [PATCH 031/184] Add equality operators for LightSource and Camera The operators will be used soon when it is necessary to determine if a LightSource or a Camera was change, and if a Qt signal needs to be emitted. --- src/haloray-core/simulation/camera.cpp | 14 +++++ src/haloray-core/simulation/camera.h | 12 +++-- src/haloray-core/simulation/lightSource.cpp | 11 ++++ src/haloray-core/simulation/lightSource.h | 7 ++- src/tests/cameraTests/cameraTests.cpp | 54 +++++++++++++++++++ .../crystalPopulationRepositoryTests.pro | 2 + .../lightSourceTests/lightSourceTests.cpp | 40 ++++++++++++++ .../lightSourceTests/lightSourceTests.pro | 23 ++++++++ src/tests/tests.pro | 5 +- 9 files changed, 160 insertions(+), 8 deletions(-) create mode 100644 src/tests/lightSourceTests/lightSourceTests.cpp create mode 100644 src/tests/lightSourceTests/lightSourceTests.pro diff --git a/src/haloray-core/simulation/camera.cpp b/src/haloray-core/simulation/camera.cpp index 85bca6c..a58dcd1 100644 --- a/src/haloray-core/simulation/camera.cpp +++ b/src/haloray-core/simulation/camera.cpp @@ -18,6 +18,20 @@ float Camera::getMaximumFov() const } } +bool Camera::operator==(const Camera &other) const +{ + return pitch == other.pitch + && yaw == other.yaw + && fov == other.fov + && projection == other.projection + && hideSubHorizon == other.hideSubHorizon; +} + +bool Camera::operator!=(const Camera &other) const +{ + return !(*this == other); +} + Camera Camera::createDefaultCamera() { Camera camera; diff --git a/src/haloray-core/simulation/camera.h b/src/haloray-core/simulation/camera.h index 1aa2541..1f2596b 100644 --- a/src/haloray-core/simulation/camera.h +++ b/src/haloray-core/simulation/camera.h @@ -15,13 +15,15 @@ enum Projection struct Camera { - float pitch; - float yaw; - float fov; - Projection projection; - bool hideSubHorizon; + float pitch = 0.0f; + float yaw = 0.0f; + float fov = 75.0f; + Projection projection = Projection::Stereographic; + bool hideSubHorizon = false; float getMaximumFov() const; + bool operator==(const Camera&) const; + bool operator!=(const Camera&) const; static Camera createDefaultCamera(); }; diff --git a/src/haloray-core/simulation/lightSource.cpp b/src/haloray-core/simulation/lightSource.cpp index 846accd..1d25398 100644 --- a/src/haloray-core/simulation/lightSource.cpp +++ b/src/haloray-core/simulation/lightSource.cpp @@ -3,6 +3,17 @@ namespace HaloRay { +bool LightSource::operator==(const LightSource &other) const +{ + return altitude == other.altitude + && diameter == other.diameter; +} + +bool LightSource::operator!=(const LightSource &other) const +{ + return !(*this == other); +} + LightSource LightSource::createDefaultLightSource() { LightSource sun; diff --git a/src/haloray-core/simulation/lightSource.h b/src/haloray-core/simulation/lightSource.h index fe0d388..0d92efc 100644 --- a/src/haloray-core/simulation/lightSource.h +++ b/src/haloray-core/simulation/lightSource.h @@ -6,8 +6,11 @@ namespace HaloRay struct LightSource { - float altitude; - float diameter; + float altitude = 30.0f; + float diameter = 0.5f; + + bool operator==(const LightSource&) const; + bool operator!=(const LightSource&) const; static LightSource createDefaultLightSource(); }; diff --git a/src/tests/cameraTests/cameraTests.cpp b/src/tests/cameraTests/cameraTests.cpp index 26b26c8..cded055 100644 --- a/src/tests/cameraTests/cameraTests.cpp +++ b/src/tests/cameraTests/cameraTests.cpp @@ -18,6 +18,7 @@ private slots: c.projection = projection; QCOMPARE(c.getMaximumFov(), expectedMaxFov); } + void maxFov_data() { QTest::addColumn("projection"); @@ -29,6 +30,59 @@ private slots: QTest::newRow("equal area") << Projection::EqualArea << 360.0f; QTest::newRow("orthographic") << Projection::Orthographic << 180.0f; } + + void equality_givenCamerasWithSameMembers_returnsTrue() + { + Camera camera; + Camera otherCamera; + + QVERIFY(camera == otherCamera); + } + + void equality_givenDifferentFov_returnsFalse() + { + Camera camera; + Camera otherCamera; + otherCamera.fov = camera.fov + 1.0f; + + QVERIFY(camera != otherCamera); + } + + void equality_givenDifferentYaw_returnsFalse() + { + Camera camera; + Camera otherCamera; + otherCamera.yaw = camera.yaw + 1.0f; + + QVERIFY(camera != otherCamera); + } + + void equality_givenDifferentPitch_returnsFalse() + { + Camera camera; + Camera otherCamera; + otherCamera.pitch = camera.pitch + 1.0f; + + QVERIFY(camera != otherCamera); + } + + void equality_givenDifferentProjection_returnsFalse() + { + Camera camera; + Camera otherCamera; + otherCamera.projection = Projection::EqualArea; + + QVERIFY(camera != otherCamera); + } + + void equality_givenDifferentHideSubHorizonProperty_returnsFalse() + { + Camera camera; + Camera otherCamera; + otherCamera.hideSubHorizon = !camera.hideSubHorizon; + + QVERIFY(camera != otherCamera); + } }; QTEST_MAIN(CameraTests) diff --git a/src/tests/crystalPopulationRepositoryTests/crystalPopulationRepositoryTests.pro b/src/tests/crystalPopulationRepositoryTests/crystalPopulationRepositoryTests.pro index 017c514..76b74ee 100644 --- a/src/tests/crystalPopulationRepositoryTests/crystalPopulationRepositoryTests.pro +++ b/src/tests/crystalPopulationRepositoryTests/crystalPopulationRepositoryTests.pro @@ -1,6 +1,8 @@ TARGET = crystalPopulationRepositoryTests TEMPLATE = app QT += testlib +QT -= gui + CONFIG += testcase c++17 win32:CONFIG += windows diff --git a/src/tests/lightSourceTests/lightSourceTests.cpp b/src/tests/lightSourceTests/lightSourceTests.cpp new file mode 100644 index 0000000..0e8ce48 --- /dev/null +++ b/src/tests/lightSourceTests/lightSourceTests.cpp @@ -0,0 +1,40 @@ +#include +#include "simulation/lightSource.h" + +using namespace HaloRay; + +class LightSourceTests : public QObject +{ + Q_OBJECT +private slots: + void equality_givenSimilarLightSources_returnsTrue() + { + LightSource lightSource; + LightSource otherLightSource; + + QVERIFY(lightSource == otherLightSource); + } + + void equality_givenDifferentAltitude_returnsFalse() + { + LightSource lightSource; + LightSource otherLightSource; + + otherLightSource.altitude = lightSource.altitude + 1.0f; + + QVERIFY(lightSource != otherLightSource); + } + + void equality_givenDifferentDiameter_returnsFalse() + { + LightSource lightSource; + LightSource otherLightSource; + + otherLightSource.diameter = lightSource.diameter + 1.0f; + + QVERIFY(lightSource != otherLightSource); + } +}; + +QTEST_APPLESS_MAIN(LightSourceTests) +#include "lightSourceTests.moc" diff --git a/src/tests/lightSourceTests/lightSourceTests.pro b/src/tests/lightSourceTests/lightSourceTests.pro new file mode 100644 index 0000000..878f2fb --- /dev/null +++ b/src/tests/lightSourceTests/lightSourceTests.pro @@ -0,0 +1,23 @@ +TARGET = lightSourceTests +TEMPLATE = app +QT += testlib +QT -= gui + +CONFIG += qt console warn_on depend_includepath testcase c++17 +win32:CONFIG += windows + +SOURCES += \ + lightSourceTests.cpp + +win32:CONFIG(release, debug|release): LIBS += -L$$OUT_PWD/../../haloray-core/release/ -lHaloRayCore +else:win32:CONFIG(debug, debug|release): LIBS += -L$$OUT_PWD/../../haloray-core/debug/ -lHaloRayCore +else:unix: LIBS += -L$$OUT_PWD/../../haloray-core/ -lHaloRayCore + +INCLUDEPATH += $$PWD/../../haloray-core +DEPENDPATH += $$PWD/../../haloray-core + +win32-g++:CONFIG(release, debug|release): PRE_TARGETDEPS += $$OUT_PWD/../../haloray-core/release/libHaloRayCore.a +else:win32-g++:CONFIG(debug, debug|release): PRE_TARGETDEPS += $$OUT_PWD/../../haloray-core/debug/libHaloRayCore.a +else:win32:!win32-g++:CONFIG(release, debug|release): PRE_TARGETDEPS += $$OUT_PWD/../../haloray-core/release/HaloRayCore.lib +else:win32:!win32-g++:CONFIG(debug, debug|release): PRE_TARGETDEPS += $$OUT_PWD/../../haloray-core/debug/HaloRayCore.lib +else:unix: PRE_TARGETDEPS += $$OUT_PWD/../../haloray-core/libHaloRayCore.a diff --git a/src/tests/tests.pro b/src/tests/tests.pro index 0e9152c..7ecaed0 100644 --- a/src/tests/tests.pro +++ b/src/tests/tests.pro @@ -1,2 +1,5 @@ TEMPLATE = subdirs -SUBDIRS = cameraTests crystalPopulationRepositoryTests +SUBDIRS = \ + cameraTests \ + crystalPopulationRepositoryTests \ + lightSourceTests From b01bc5fdd56dfea085563bcc5f1f1556b50753be Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 28 Nov 2020 13:20:18 +0200 Subject: [PATCH 032/184] Make SliderSpinBox class more stable Now the class stores the value of the widget in a separate variable instead of using the QDoubleSpinBox widget's value as the source of truth. --- src/haloray-core/gui/sliderSpinBox.cpp | 18 ++++++++++-------- src/haloray-core/gui/sliderSpinBox.h | 1 + 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/src/haloray-core/gui/sliderSpinBox.cpp b/src/haloray-core/gui/sliderSpinBox.cpp index 27d8a30..1099e88 100644 --- a/src/haloray-core/gui/sliderSpinBox.cpp +++ b/src/haloray-core/gui/sliderSpinBox.cpp @@ -7,7 +7,7 @@ namespace HaloRay { const double sliderMultiplier = 100.0; -SliderSpinBox::SliderSpinBox(QWidget *parent) : QWidget(parent) +SliderSpinBox::SliderSpinBox(QWidget *parent) : QWidget(parent), m_value(0.0) { m_slider = new QSlider(); m_slider->setOrientation(Qt::Orientation::Horizontal); @@ -24,12 +24,9 @@ SliderSpinBox::SliderSpinBox(QWidget *parent) : QWidget(parent) layout->setMargin(0); connect(m_slider, &QSlider::valueChanged, [this](int value) { - m_spinBox->setValue((double)value / sliderMultiplier); + setValue((double)value / sliderMultiplier); }); - connect(m_spinBox, QOverload::of(&QDoubleSpinBox::valueChanged), [this](double value) { - m_slider->setValue((int)(value * sliderMultiplier)); - }); - connect(m_spinBox, QOverload::of(&QDoubleSpinBox::valueChanged), this, &SliderSpinBox::valueChanged); + connect(m_spinBox, QOverload::of(&QDoubleSpinBox::valueChanged), this, &SliderSpinBox::setValue); } SliderSpinBox::SliderSpinBox(double min, double max, QWidget *parent) @@ -48,12 +45,14 @@ void SliderSpinBox::setMinimum(double minimum) { m_slider->setMinimum((int)(minimum * sliderMultiplier)); m_spinBox->setMinimum(minimum); + if (m_value < minimum) setValue(minimum); } void SliderSpinBox::setMaximum(double maximum) { m_slider->setMaximum((int)(maximum * sliderMultiplier)); m_spinBox->setMaximum(maximum); + if (m_value > maximum) setValue(maximum); } void SliderSpinBox::setWrapping(bool wrapping) @@ -63,13 +62,16 @@ void SliderSpinBox::setWrapping(bool wrapping) void SliderSpinBox::setValue(double value) { - if (m_spinBox->value() == value) return; + if (value == m_value) return; m_spinBox->setValue(value); + m_slider->setValue((int)(value * sliderMultiplier)); + m_value = value; + emit valueChanged(m_value); } double SliderSpinBox::value() const { - return m_spinBox->value(); + return m_value; } SliderSpinBox *SliderSpinBox::createAngleSlider(double min, double max) diff --git a/src/haloray-core/gui/sliderSpinBox.h b/src/haloray-core/gui/sliderSpinBox.h index acbd00b..8be5838 100644 --- a/src/haloray-core/gui/sliderSpinBox.h +++ b/src/haloray-core/gui/sliderSpinBox.h @@ -32,6 +32,7 @@ public slots: private: QSlider *m_slider; QDoubleSpinBox *m_spinBox; + double m_value; }; } From 0f365898d565f8f8ba9c64e679dd9ae3cde7c0e8 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 6 Dec 2020 21:35:39 +0200 Subject: [PATCH 033/184] Add view model class stub for simulation state --- .../gui/simulationStateViewModel.cpp | 111 ++++++++++++++++++ .../gui/simulationStateViewModel.h | 37 ++++++ src/haloray-core/haloray-core.pro | 2 + 3 files changed, 150 insertions(+) create mode 100644 src/haloray-core/gui/simulationStateViewModel.cpp create mode 100644 src/haloray-core/gui/simulationStateViewModel.h diff --git a/src/haloray-core/gui/simulationStateViewModel.cpp b/src/haloray-core/gui/simulationStateViewModel.cpp new file mode 100644 index 0000000..237d46d --- /dev/null +++ b/src/haloray-core/gui/simulationStateViewModel.cpp @@ -0,0 +1,111 @@ +#include "simulationStateViewModel.h" + +SimulationStateViewModel::SimulationStateViewModel(QObject *parent) + : QAbstractTableModel(parent) +{ +} + +QVariant SimulationStateViewModel::headerData(int section, Qt::Orientation orientation, int role) const +{ + if (role == Qt::DisplayRole && orientation == Qt::Horizontal) + { + switch (section) + { + case SunAltitude: + return "Sun altitude"; + case SunDiameter: + return "Sun diameter"; + case CameraProjection: + return "Camera projection"; + case CameraFov: + return "Camera field-of-view"; + case CameraPitch: + return "Camera pitch"; + case CameraYaw: + return "Camera yaw"; + case HideSubHorizon: + return "Hide sub-horizon"; + case DoubleScattering: + return "Double-scattering probability"; + } + } + + return QVariant(); +} + +int SimulationStateViewModel::rowCount(const QModelIndex &parent) const +{ + if (parent.isValid()) return 0; + + return 1; +} + +int SimulationStateViewModel::columnCount(const QModelIndex &parent) const +{ + if (parent.isValid()) return 0; + + return NUM_COLUMNS; +} + +QVariant SimulationStateViewModel::data(const QModelIndex &index, int role) const +{ + if (!index.isValid()) + return QVariant(); + + if (role != Qt::DisplayRole) + return QVariant(); + + switch (index.column()) + { + case SunAltitude: + case SunDiameter: + case CameraProjection: + case CameraFov: + case CameraPitch: + case CameraYaw: + case HideSubHorizon: + case DoubleScattering: + default: + break; + // TODO: Implement all columns + } + + + // FIXME: Implement me! + return QVariant(); +} + +bool SimulationStateViewModel::setData(const QModelIndex &index, const QVariant &value, int role) +{ + if (role != Qt::EditRole) return false; + + if (data(index, role) != value) { + switch (index.column()) + { + case SunAltitude: + case SunDiameter: + case CameraProjection: + case CameraFov: + case CameraPitch: + case CameraYaw: + case HideSubHorizon: + case DoubleScattering: + default: + break; + // TODO: Implement all columns + } + + // FIXME: Implement me! + emit dataChanged(index, index, QVector() << role); + return true; + } + return false; +} + +Qt::ItemFlags SimulationStateViewModel::flags(const QModelIndex &index) const +{ + if (!index.isValid()) + return Qt::NoItemFlags; + + return Qt::ItemIsEditable | Qt::ItemIsEnabled; +} diff --git a/src/haloray-core/gui/simulationStateViewModel.h b/src/haloray-core/gui/simulationStateViewModel.h new file mode 100644 index 0000000..2941c17 --- /dev/null +++ b/src/haloray-core/gui/simulationStateViewModel.h @@ -0,0 +1,37 @@ +#pragma once + +#include + +class SimulationStateViewModel : public QAbstractTableModel +{ + Q_OBJECT + +public: + explicit SimulationStateViewModel(QObject *parent = nullptr); + + enum + { + SunAltitude, + SunDiameter, + CameraProjection, + CameraFov, + CameraPitch, + CameraYaw, + HideSubHorizon, + DoubleScattering, + NUM_COLUMNS + } Columns; + + QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const override; + + int rowCount(const QModelIndex &parent = QModelIndex()) const override; + int columnCount(const QModelIndex &parent = QModelIndex()) const override; + + QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const override; + + bool setData(const QModelIndex &index, const QVariant &value, + int role = Qt::EditRole) override; + + Qt::ItemFlags flags(const QModelIndex& index) const override; +}; + diff --git a/src/haloray-core/haloray-core.pro b/src/haloray-core/haloray-core.pro index 2cd5779..806e61a 100644 --- a/src/haloray-core/haloray-core.pro +++ b/src/haloray-core/haloray-core.pro @@ -31,6 +31,7 @@ HEADERS += \ gui/mainWindow.h \ gui/openGLWidget.h \ gui/renderButton.h \ + gui/simulationStateViewModel.h \ gui/sliderSpinBox.h \ gui/viewSettingsWidget.h \ opengl/texture.h \ @@ -49,6 +50,7 @@ SOURCES += \ gui/mainWindow.cpp \ gui/openGLWidget.cpp \ gui/renderButton.cpp \ + gui/simulationStateViewModel.cpp \ gui/sliderSpinBox.cpp \ gui/viewSettingsWidget.cpp \ opengl/texture.cpp \ From ff25731300874cb71202494608b9bb05b78f90e5 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 6 Dec 2020 21:37:42 +0200 Subject: [PATCH 034/184] Add signals for changing properties in SimulationEngine --- .../simulation/simulationEngine.cpp | 19 +++++++++++++++++++ .../simulation/simulationEngine.h | 11 ++++++++++- 2 files changed, 29 insertions(+), 1 deletion(-) diff --git a/src/haloray-core/simulation/simulationEngine.cpp b/src/haloray-core/simulation/simulationEngine.cpp index d69b026..7b9f7d0 100644 --- a/src/haloray-core/simulation/simulationEngine.cpp +++ b/src/haloray-core/simulation/simulationEngine.cpp @@ -42,12 +42,15 @@ Camera SimulationEngine::getCamera() const void SimulationEngine::setCamera(const Camera camera) { + if (m_camera == camera) return; + clear(); m_camera = camera; if (m_cameraLockedToLightSource) { pointCameraToLightSource(); } + emit cameraChanged(m_camera); } LightSource SimulationEngine::getLightSource() const @@ -57,12 +60,16 @@ LightSource SimulationEngine::getLightSource() const void SimulationEngine::setLightSource(const LightSource light) { + if (m_light == light) return; + clear(); m_light = light; if (m_cameraLockedToLightSource) { pointCameraToLightSource(); } + + emit lightSourceChanged(m_light); } unsigned int SimulationEngine::getOutputTextureHandle() const @@ -160,8 +167,12 @@ unsigned int SimulationEngine::getRaysPerStep() const void SimulationEngine::setRaysPerStep(unsigned int rays) { + if (m_raysPerStep == rays) return; + clear(); m_raysPerStep = rays; + + emit raysPerStepChanged(m_raysPerStep); } void SimulationEngine::initialize() @@ -208,8 +219,12 @@ void SimulationEngine::resizeOutputTextureCallback(const unsigned int width, con void SimulationEngine::lockCameraToLightSource(bool locked) { + if (m_cameraLockedToLightSource == locked) return; + m_cameraLockedToLightSource = locked; pointCameraToLightSource(); + + emit lockCameraToLightSourceChanged(m_cameraLockedToLightSource); } void SimulationEngine::pointCameraToLightSource() @@ -221,8 +236,12 @@ void SimulationEngine::pointCameraToLightSource() void SimulationEngine::setMultipleScatteringProbability(double probability) { + if (m_multipleScatteringProbability == probability) return; + clear(); m_multipleScatteringProbability = static_cast(std::min(std::max(probability, 0.0), 1.0)); + + emit multipleScatteringProbabilityChanged(m_multipleScatteringProbability); } double SimulationEngine::getMultipleScatteringProbability() const diff --git a/src/haloray-core/simulation/simulationEngine.h b/src/haloray-core/simulation/simulationEngine.h index 41ae4d2..1d36e8e 100644 --- a/src/haloray-core/simulation/simulationEngine.h +++ b/src/haloray-core/simulation/simulationEngine.h @@ -1,6 +1,7 @@ #pragma once #include #include +#include #include #include "../opengl/texture.h" #include "camera.h" @@ -13,8 +14,9 @@ class QOpenGLShaderProgram; namespace HaloRay { -class SimulationEngine : protected QOpenGLFunctions_4_4_Core +class SimulationEngine : protected QObject, protected QOpenGLFunctions_4_4_Core { + Q_OBJECT public: SimulationEngine(std::shared_ptr crystalRepository); void initialize(); @@ -45,6 +47,13 @@ class SimulationEngine : protected QOpenGLFunctions_4_4_Core void resizeOutputTextureCallback(const unsigned int width, const unsigned int height); +signals: + void raysPerStepChanged(unsigned int); + void cameraChanged(Camera); + void lightSourceChanged(LightSource); + void lockCameraToLightSourceChanged(bool); + void multipleScatteringProbabilityChanged(double); + private: void initializeShader(); void initializeTextures(); From f7cc31695c62788068dac0bbfe5b871ffaa8a1df Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 6 Dec 2020 23:04:44 +0200 Subject: [PATCH 035/184] Pass parent to SimulationEngine --- src/haloray-core/simulation/simulationEngine.cpp | 6 ++++-- src/haloray-core/simulation/simulationEngine.h | 4 ++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/haloray-core/simulation/simulationEngine.cpp b/src/haloray-core/simulation/simulationEngine.cpp index 7b9f7d0..f346050 100644 --- a/src/haloray-core/simulation/simulationEngine.cpp +++ b/src/haloray-core/simulation/simulationEngine.cpp @@ -13,8 +13,10 @@ namespace HaloRay { SimulationEngine::SimulationEngine( - std::shared_ptr crystalRepository) - : m_outputWidth(800), + std::shared_ptr crystalRepository, + QObject *parent) + : QObject(parent), + m_outputWidth(800), m_outputHeight(600), m_mersenneTwister(std::mt19937(std::random_device()())), m_uniformDistribution(std::uniform_int_distribution(0, std::numeric_limits::max())), diff --git a/src/haloray-core/simulation/simulationEngine.h b/src/haloray-core/simulation/simulationEngine.h index 1d36e8e..74d0bdf 100644 --- a/src/haloray-core/simulation/simulationEngine.h +++ b/src/haloray-core/simulation/simulationEngine.h @@ -14,11 +14,11 @@ class QOpenGLShaderProgram; namespace HaloRay { -class SimulationEngine : protected QObject, protected QOpenGLFunctions_4_4_Core +class SimulationEngine : public QObject, protected QOpenGLFunctions_4_4_Core { Q_OBJECT public: - SimulationEngine(std::shared_ptr crystalRepository); + SimulationEngine(std::shared_ptr crystalRepository, QObject *parent = nullptr); void initialize(); void start(); void step(); From f8e0d0b0e45f210d0f3c830b2239c5041c449898 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 6 Dec 2020 23:05:15 +0200 Subject: [PATCH 036/184] Implement rest of SimulationStateViewModel --- .../gui/simulationStateViewModel.cpp | 107 ++++++++++++++++-- .../gui/simulationStateViewModel.h | 19 +++- 2 files changed, 113 insertions(+), 13 deletions(-) diff --git a/src/haloray-core/gui/simulationStateViewModel.cpp b/src/haloray-core/gui/simulationStateViewModel.cpp index 237d46d..49b834f 100644 --- a/src/haloray-core/gui/simulationStateViewModel.cpp +++ b/src/haloray-core/gui/simulationStateViewModel.cpp @@ -1,8 +1,25 @@ #include "simulationStateViewModel.h" +#include "simulation/simulationEngine.h" -SimulationStateViewModel::SimulationStateViewModel(QObject *parent) - : QAbstractTableModel(parent) +SimulationStateViewModel::SimulationStateViewModel(HaloRay::SimulationEngine *engine, QObject *parent) + : QAbstractTableModel(parent), + m_simulationEngine(engine) { + connect(m_simulationEngine, &HaloRay::SimulationEngine::cameraChanged, this, [this]() { + emit dataChanged(createIndex(0, CameraProjection), createIndex(0, HideSubHorizon)); + }); + + connect(m_simulationEngine, &HaloRay::SimulationEngine::lightSourceChanged, this, [this]() { + emit dataChanged(createIndex(0, SunAltitude), createIndex(0, SunDiameter)); + }); + + connect(m_simulationEngine, &HaloRay::SimulationEngine::lockCameraToLightSourceChanged, this, [this]() { + emit dataChanged(createIndex(0, CameraProjection), createIndex(0, HideSubHorizon)); + }); + + connect(m_simulationEngine, &HaloRay::SimulationEngine::multipleScatteringProbabilityChanged, this, [this]() { + emit dataChanged(createIndex(0, MultipleScatteringProbability), createIndex(0, MultipleScatteringProbability)); + }); } QVariant SimulationStateViewModel::headerData(int section, Qt::Orientation orientation, int role) const @@ -25,8 +42,8 @@ QVariant SimulationStateViewModel::headerData(int section, Qt::Orientation orien return "Camera yaw"; case HideSubHorizon: return "Hide sub-horizon"; - case DoubleScattering: - return "Double-scattering probability"; + case MultipleScatteringProbability: + return "Multiple scattering probability"; } } @@ -58,20 +75,25 @@ QVariant SimulationStateViewModel::data(const QModelIndex &index, int role) cons switch (index.column()) { case SunAltitude: + return m_simulationEngine->getLightSource().altitude; case SunDiameter: + return m_simulationEngine->getLightSource().diameter; case CameraProjection: + return m_simulationEngine->getCamera().projection; case CameraFov: + return m_simulationEngine->getCamera().fov; case CameraPitch: + return m_simulationEngine->getCamera().pitch; case CameraYaw: + return m_simulationEngine->getCamera().yaw; case HideSubHorizon: - case DoubleScattering: + return m_simulationEngine->getCamera().hideSubHorizon; + case MultipleScatteringProbability: + return m_simulationEngine->getMultipleScatteringProbability(); default: break; - // TODO: Implement all columns } - - // FIXME: Implement me! return QVariant(); } @@ -83,19 +105,33 @@ bool SimulationStateViewModel::setData(const QModelIndex &index, const QVariant switch (index.column()) { case SunAltitude: + setSunAltitude(value.toFloat()); + break; case SunDiameter: + setSunDiameter(value.toFloat()); + break; case CameraProjection: + setCameraProjection(static_cast(value.toInt())); + break; case CameraFov: + setCameraFov(value.toFloat()); + break; case CameraPitch: + setCameraPitch(value.toFloat()); + break; case CameraYaw: + setCameraYaw(value.toFloat()); + break; case HideSubHorizon: - case DoubleScattering: + setHideSubHorizon(value.toBool()); + break; + case MultipleScatteringProbability: + m_simulationEngine->setMultipleScatteringProbability(value.toDouble()); + break; default: break; - // TODO: Implement all columns } - // FIXME: Implement me! emit dataChanged(index, index, QVector() << role); return true; } @@ -109,3 +145,52 @@ Qt::ItemFlags SimulationStateViewModel::flags(const QModelIndex &index) const return Qt::ItemIsEditable | Qt::ItemIsEnabled; } + +void SimulationStateViewModel::setSunAltitude(float altitude) +{ + auto lightSource = m_simulationEngine->getLightSource(); + lightSource.altitude = altitude; + m_simulationEngine->setLightSource(lightSource); +} + +void SimulationStateViewModel::setSunDiameter(float diameter) +{ + auto lightSource = m_simulationEngine->getLightSource(); + lightSource.diameter = diameter; + m_simulationEngine->setLightSource(lightSource); +} + +void SimulationStateViewModel::setCameraProjection(HaloRay::Projection projection) +{ + auto camera = m_simulationEngine->getCamera(); + camera.projection = projection; + m_simulationEngine->setCamera(camera); +} + +void SimulationStateViewModel::setCameraFov(float fov) +{ + auto camera = m_simulationEngine->getCamera(); + camera.fov = fov; + m_simulationEngine->setCamera(camera); +} + +void SimulationStateViewModel::setCameraPitch(float pitch) +{ + auto camera = m_simulationEngine->getCamera(); + camera.pitch = pitch; + m_simulationEngine->setCamera(camera); +} + +void SimulationStateViewModel::setCameraYaw(float yaw) +{ + auto camera = m_simulationEngine->getCamera(); + camera.yaw = yaw; + m_simulationEngine->setCamera(camera); +} + +void SimulationStateViewModel::setHideSubHorizon(bool hide) +{ + auto camera = m_simulationEngine->getCamera(); + camera.hideSubHorizon = hide; + m_simulationEngine->setCamera(camera); +} diff --git a/src/haloray-core/gui/simulationStateViewModel.h b/src/haloray-core/gui/simulationStateViewModel.h index 2941c17..346f579 100644 --- a/src/haloray-core/gui/simulationStateViewModel.h +++ b/src/haloray-core/gui/simulationStateViewModel.h @@ -1,13 +1,18 @@ #pragma once #include +#include "simulation/camera.h" + +namespace HaloRay { +class SimulationEngine; +} class SimulationStateViewModel : public QAbstractTableModel { Q_OBJECT public: - explicit SimulationStateViewModel(QObject *parent = nullptr); + explicit SimulationStateViewModel(HaloRay::SimulationEngine *engine, QObject *parent = nullptr); enum { @@ -18,7 +23,7 @@ class SimulationStateViewModel : public QAbstractTableModel CameraPitch, CameraYaw, HideSubHorizon, - DoubleScattering, + MultipleScatteringProbability, NUM_COLUMNS } Columns; @@ -33,5 +38,15 @@ class SimulationStateViewModel : public QAbstractTableModel int role = Qt::EditRole) override; Qt::ItemFlags flags(const QModelIndex& index) const override; + +private: + HaloRay::SimulationEngine *m_simulationEngine; + void setSunAltitude(float altitude); + void setSunDiameter(float diameter); + void setCameraProjection(HaloRay::Projection projection); + void setCameraFov(float fov); + void setCameraPitch(float pitch); + void setCameraYaw(float yaw); + void setHideSubHorizon(bool hide); }; From 8d5e24745e08b1f462d12986adac194ee4457a02 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Mon, 7 Dec 2020 00:29:33 +0200 Subject: [PATCH 037/184] Connect view settings widget to view model Now the state of the simulation is wrapped in SimulationStateViewModel, and it is used together with QDataWidgetMapper to bind the model and the widgets together in the View settings part. Next the rest of the UI will receive the same treatment. --- .../gui/crystalSettingsWidget.cpp | 18 ++-- src/haloray-core/gui/mainWindow.cpp | 13 +-- src/haloray-core/gui/mainWindow.h | 3 + .../gui/simulationStateViewModel.cpp | 91 +++++++++++-------- .../gui/simulationStateViewModel.h | 11 ++- src/haloray-core/gui/sliderSpinBox.cpp | 6 ++ src/haloray-core/gui/sliderSpinBox.h | 3 + src/haloray-core/gui/viewSettingsWidget.cpp | 76 +++++++--------- src/haloray-core/gui/viewSettingsWidget.h | 13 ++- .../simulation/simulationEngine.cpp | 2 + 10 files changed, 121 insertions(+), 115 deletions(-) diff --git a/src/haloray-core/gui/crystalSettingsWidget.cpp b/src/haloray-core/gui/crystalSettingsWidget.cpp index 193ab86..d2853b7 100644 --- a/src/haloray-core/gui/crystalSettingsWidget.cpp +++ b/src/haloray-core/gui/crystalSettingsWidget.cpp @@ -54,15 +54,15 @@ CrystalSettingsWidget::CrystalSettingsWidget(std::shared_ptr::of(&QSpinBox::valueChanged), m_mapper, &QDataWidgetMapper::submit); - connect(m_caRatioSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit); - connect(m_caRatioStdSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit); - connect(m_tiltDistributionComboBox, QOverload::of(&QComboBox::currentIndexChanged), m_mapper, &QDataWidgetMapper::submit); - connect(m_tiltAverageSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit); - connect(m_tiltStdSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit); - connect(m_rotationDistributionComboBox, QOverload::of(&QComboBox::currentIndexChanged), m_mapper, &QDataWidgetMapper::submit); - connect(m_rotationAverageSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit); - connect(m_rotationStdSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit); + connect(m_weightSpinBox, QOverload::of(&QSpinBox::valueChanged), m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); + connect(m_caRatioSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); + connect(m_caRatioStdSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); + connect(m_tiltDistributionComboBox, QOverload::of(&QComboBox::currentIndexChanged), m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); + connect(m_tiltAverageSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); + connect(m_tiltStdSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); + connect(m_rotationDistributionComboBox, QOverload::of(&QComboBox::currentIndexChanged), m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); + connect(m_rotationAverageSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); + connect(m_rotationStdSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); connect(m_populationComboBox, QOverload::of(&QComboBox::activated), m_mapper, &QDataWidgetMapper::setCurrentIndex); connect(m_mapper, &QDataWidgetMapper::currentIndexChanged, m_populationComboBox, QOverload::of(&QComboBox::setCurrentIndex)); diff --git a/src/haloray-core/gui/mainWindow.cpp b/src/haloray-core/gui/mainWindow.cpp index f5929ef..3bb775f 100644 --- a/src/haloray-core/gui/mainWindow.cpp +++ b/src/haloray-core/gui/mainWindow.cpp @@ -1,4 +1,5 @@ #include "mainWindow.h" +#include "simulationStateViewModel.h" #include #include #include @@ -33,10 +34,11 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) #if _WIN32 QIcon::setThemeName("HaloRayTheme"); #endif - m_crystalRepository = std::make_shared(); m_engine = std::make_shared(m_crystalRepository); + m_simulationStateViewModel = new SimulationStateViewModel(m_engine.get(), this); + setupUi(); // Signals from render button @@ -50,21 +52,14 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) }); // Signals from view settings - connect(m_viewSettingsWidget, &ViewSettingsWidget::cameraChanged, [this](HaloRay::Camera camera) { - m_engine->setCamera(camera); - m_openGLWidget->update(); - }); connect(m_viewSettingsWidget, &ViewSettingsWidget::brightnessChanged, m_openGLWidget, &OpenGLWidget::setBrightness); connect(m_viewSettingsWidget, &ViewSettingsWidget::lockToLightSource, [this](bool locked) { m_engine->lockCameraToLightSource(locked); m_openGLWidget->update(); }); - m_viewSettingsWidget->setCamera(m_engine->getCamera()); m_viewSettingsWidget->setBrightness(1.0); // Signals from OpenGL widget - connect(m_openGLWidget, &OpenGLWidget::fieldOfViewChanged, m_viewSettingsWidget, &ViewSettingsWidget::setFieldOfView); - connect(m_openGLWidget, &OpenGLWidget::cameraOrientationChanged, m_viewSettingsWidget, &ViewSettingsWidget::setCameraOrientation); connect(m_openGLWidget, &OpenGLWidget::maxRaysPerFrameChanged, m_generalSettingsWidget, &GeneralSettingsWidget::setMaxRaysPerFrame); connect(m_openGLWidget, &OpenGLWidget::nextIteration, m_progressBar, &QProgressBar::setValue); @@ -154,7 +149,7 @@ QScrollArea *MainWindow::setupSideBarScrollArea() { m_generalSettingsWidget = new GeneralSettingsWidget(); m_crystalSettingsWidget = new CrystalSettingsWidget(m_crystalRepository); - m_viewSettingsWidget = new ViewSettingsWidget(); + m_viewSettingsWidget = new ViewSettingsWidget(m_simulationStateViewModel); auto scrollContainer = new QWidget(); auto scrollableLayout = new QVBoxLayout(scrollContainer); diff --git a/src/haloray-core/gui/mainWindow.h b/src/haloray-core/gui/mainWindow.h index 63b031c..e9b751b 100644 --- a/src/haloray-core/gui/mainWindow.h +++ b/src/haloray-core/gui/mainWindow.h @@ -1,6 +1,7 @@ #pragma once #include #include +#include "simulationStateViewModel.h" class QDoubleSpinBox; @@ -45,6 +46,8 @@ class MainWindow : public QMainWindow std::shared_ptr m_crystalRepository; std::shared_ptr m_engine; + + SimulationStateViewModel *m_simulationStateViewModel; }; } diff --git a/src/haloray-core/gui/simulationStateViewModel.cpp b/src/haloray-core/gui/simulationStateViewModel.cpp index 49b834f..d932e89 100644 --- a/src/haloray-core/gui/simulationStateViewModel.cpp +++ b/src/haloray-core/gui/simulationStateViewModel.cpp @@ -1,23 +1,26 @@ #include "simulationStateViewModel.h" #include "simulation/simulationEngine.h" -SimulationStateViewModel::SimulationStateViewModel(HaloRay::SimulationEngine *engine, QObject *parent) +namespace HaloRay +{ + +SimulationStateViewModel::SimulationStateViewModel(SimulationEngine *engine, QObject *parent) : QAbstractTableModel(parent), m_simulationEngine(engine) { - connect(m_simulationEngine, &HaloRay::SimulationEngine::cameraChanged, this, [this]() { + connect(m_simulationEngine, &SimulationEngine::cameraChanged, [this]() { emit dataChanged(createIndex(0, CameraProjection), createIndex(0, HideSubHorizon)); }); - connect(m_simulationEngine, &HaloRay::SimulationEngine::lightSourceChanged, this, [this]() { + connect(m_simulationEngine, &SimulationEngine::lightSourceChanged, [this]() { emit dataChanged(createIndex(0, SunAltitude), createIndex(0, SunDiameter)); }); - connect(m_simulationEngine, &HaloRay::SimulationEngine::lockCameraToLightSourceChanged, this, [this]() { + connect(m_simulationEngine, &SimulationEngine::lockCameraToLightSourceChanged, [this]() { emit dataChanged(createIndex(0, CameraProjection), createIndex(0, HideSubHorizon)); }); - connect(m_simulationEngine, &HaloRay::SimulationEngine::multipleScatteringProbabilityChanged, this, [this]() { + connect(m_simulationEngine, &SimulationEngine::multipleScatteringProbabilityChanged, [this]() { emit dataChanged(createIndex(0, MultipleScatteringProbability), createIndex(0, MultipleScatteringProbability)); }); } @@ -36,6 +39,8 @@ QVariant SimulationStateViewModel::headerData(int section, Qt::Orientation orien return "Camera projection"; case CameraFov: return "Camera field-of-view"; + case CameraMaxFov: + return "Camera maximum field-of-view"; case CameraPitch: return "Camera pitch"; case CameraYaw: @@ -69,7 +74,7 @@ QVariant SimulationStateViewModel::data(const QModelIndex &index, int role) cons if (!index.isValid()) return QVariant(); - if (role != Qt::DisplayRole) + if (role != Qt::DisplayRole && role != Qt::EditRole) return QVariant(); switch (index.column()) @@ -82,6 +87,8 @@ QVariant SimulationStateViewModel::data(const QModelIndex &index, int role) cons return m_simulationEngine->getCamera().projection; case CameraFov: return m_simulationEngine->getCamera().fov; + case CameraMaxFov: + return m_simulationEngine->getCamera().getMaximumFov(); case CameraPitch: return m_simulationEngine->getCamera().pitch; case CameraYaw: @@ -101,41 +108,40 @@ bool SimulationStateViewModel::setData(const QModelIndex &index, const QVariant { if (role != Qt::EditRole) return false; - if (data(index, role) != value) { - switch (index.column()) - { - case SunAltitude: - setSunAltitude(value.toFloat()); - break; - case SunDiameter: - setSunDiameter(value.toFloat()); - break; - case CameraProjection: - setCameraProjection(static_cast(value.toInt())); - break; - case CameraFov: - setCameraFov(value.toFloat()); - break; - case CameraPitch: - setCameraPitch(value.toFloat()); - break; - case CameraYaw: - setCameraYaw(value.toFloat()); - break; - case HideSubHorizon: - setHideSubHorizon(value.toBool()); - break; - case MultipleScatteringProbability: - m_simulationEngine->setMultipleScatteringProbability(value.toDouble()); - break; - default: - break; - } + if (data(index, role) == value) return false; - emit dataChanged(index, index, QVector() << role); - return true; + switch (index.column()) + { + case SunAltitude: + setSunAltitude(value.toFloat()); + break; + case SunDiameter: + setSunDiameter(value.toFloat()); + break; + case CameraProjection: + setCameraProjection(static_cast(value.toInt())); + break; + case CameraFov: + setCameraFov(value.toFloat()); + break; + case CameraPitch: + setCameraPitch(value.toFloat()); + break; + case CameraYaw: + setCameraYaw(value.toFloat()); + break; + case HideSubHorizon: + setHideSubHorizon(value.toBool()); + break; + case MultipleScatteringProbability: + m_simulationEngine->setMultipleScatteringProbability(value.toDouble()); + break; + default: + return false; } - return false; + + emit dataChanged(index, index); + return true; } Qt::ItemFlags SimulationStateViewModel::flags(const QModelIndex &index) const @@ -143,6 +149,9 @@ Qt::ItemFlags SimulationStateViewModel::flags(const QModelIndex &index) const if (!index.isValid()) return Qt::NoItemFlags; + if (index.column() == CameraMaxFov) + return Qt::ItemIsEnabled; + return Qt::ItemIsEditable | Qt::ItemIsEnabled; } @@ -160,7 +169,7 @@ void SimulationStateViewModel::setSunDiameter(float diameter) m_simulationEngine->setLightSource(lightSource); } -void SimulationStateViewModel::setCameraProjection(HaloRay::Projection projection) +void SimulationStateViewModel::setCameraProjection(Projection projection) { auto camera = m_simulationEngine->getCamera(); camera.projection = projection; @@ -194,3 +203,5 @@ void SimulationStateViewModel::setHideSubHorizon(bool hide) camera.hideSubHorizon = hide; m_simulationEngine->setCamera(camera); } + +} diff --git a/src/haloray-core/gui/simulationStateViewModel.h b/src/haloray-core/gui/simulationStateViewModel.h index 346f579..d4936b4 100644 --- a/src/haloray-core/gui/simulationStateViewModel.h +++ b/src/haloray-core/gui/simulationStateViewModel.h @@ -5,27 +5,27 @@ namespace HaloRay { class SimulationEngine; -} class SimulationStateViewModel : public QAbstractTableModel { Q_OBJECT public: - explicit SimulationStateViewModel(HaloRay::SimulationEngine *engine, QObject *parent = nullptr); + explicit SimulationStateViewModel(SimulationEngine *engine, QObject *parent = nullptr); - enum + enum Columns { SunAltitude, SunDiameter, CameraProjection, CameraFov, + CameraMaxFov, CameraPitch, CameraYaw, HideSubHorizon, MultipleScatteringProbability, NUM_COLUMNS - } Columns; + }; QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const override; @@ -43,10 +43,11 @@ class SimulationStateViewModel : public QAbstractTableModel HaloRay::SimulationEngine *m_simulationEngine; void setSunAltitude(float altitude); void setSunDiameter(float diameter); - void setCameraProjection(HaloRay::Projection projection); + void setCameraProjection(Projection projection); void setCameraFov(float fov); void setCameraPitch(float pitch); void setCameraYaw(float yaw); void setHideSubHorizon(bool hide); }; +} diff --git a/src/haloray-core/gui/sliderSpinBox.cpp b/src/haloray-core/gui/sliderSpinBox.cpp index 1099e88..5b613d5 100644 --- a/src/haloray-core/gui/sliderSpinBox.cpp +++ b/src/haloray-core/gui/sliderSpinBox.cpp @@ -53,6 +53,7 @@ void SliderSpinBox::setMaximum(double maximum) m_slider->setMaximum((int)(maximum * sliderMultiplier)); m_spinBox->setMaximum(maximum); if (m_value > maximum) setValue(maximum); + emit maximumChanged(maximum); } void SliderSpinBox::setWrapping(bool wrapping) @@ -74,6 +75,11 @@ double SliderSpinBox::value() const return m_value; } +double SliderSpinBox::maximum() const +{ + return m_spinBox->maximum(); +} + SliderSpinBox *SliderSpinBox::createAngleSlider(double min, double max) { auto slider = new SliderSpinBox(min, max); diff --git a/src/haloray-core/gui/sliderSpinBox.h b/src/haloray-core/gui/sliderSpinBox.h index 8be5838..072d303 100644 --- a/src/haloray-core/gui/sliderSpinBox.h +++ b/src/haloray-core/gui/sliderSpinBox.h @@ -12,11 +12,13 @@ class SliderSpinBox : public QWidget { Q_OBJECT Q_PROPERTY(double value READ value WRITE setValue USER true) + Q_PROPERTY(double maximum READ maximum WRITE setMaximum) public: SliderSpinBox(QWidget *parent = nullptr); SliderSpinBox(double min, double max, QWidget *parent = nullptr); void setSuffix(const QString &suffix); double value() const; + double maximum() const; static SliderSpinBox *createAngleSlider(double min, double max); @@ -28,6 +30,7 @@ public slots: signals: void valueChanged(double value); + void maximumChanged(double maximum); private: QSlider *m_slider; diff --git a/src/haloray-core/gui/viewSettingsWidget.cpp b/src/haloray-core/gui/viewSettingsWidget.cpp index 882e618..37c5e95 100644 --- a/src/haloray-core/gui/viewSettingsWidget.cpp +++ b/src/haloray-core/gui/viewSettingsWidget.cpp @@ -2,29 +2,46 @@ #include #include #include +#include +#include "simulationStateViewModel.h" #include "sliderSpinBox.h" #include "../simulation/camera.h" namespace HaloRay { -ViewSettingsWidget::ViewSettingsWidget(QWidget *parent) - : QGroupBox("View settings", parent) +ViewSettingsWidget::ViewSettingsWidget(SimulationStateViewModel *viewModel, QWidget *parent) + : QGroupBox("View settings", parent), + m_viewModel(viewModel) { setupUi(); - auto cameraChangeHandler = [this]() { - auto camera = stateToCamera(); - m_fieldOfViewSlider->setMaximum(camera.getMaximumFov()); - camera.fov = m_fieldOfViewSlider->value(); - cameraChanged(camera); - }; - - connect(m_cameraProjectionComboBox, QOverload::of(&QComboBox::currentIndexChanged), cameraChangeHandler); - connect(m_fieldOfViewSlider, &SliderSpinBox::valueChanged, cameraChangeHandler); - connect(m_pitchSlider, &SliderSpinBox::valueChanged, cameraChangeHandler); - connect(m_yawSlider, &SliderSpinBox::valueChanged, cameraChangeHandler); - connect(m_hideSubHorizonCheckBox, &QCheckBox::stateChanged, cameraChangeHandler); + m_mapper = new QDataWidgetMapper(this); + m_mapper->setModel(m_viewModel); + m_mapper->setSubmitPolicy(QDataWidgetMapper::AutoSubmit); + m_mapper->addMapping(m_cameraProjectionComboBox, SimulationStateViewModel::CameraProjection, "currentIndex"); + m_mapper->addMapping(m_fieldOfViewSlider, SimulationStateViewModel::CameraFov); + m_mapper->addMapping(m_pitchSlider, SimulationStateViewModel::CameraPitch); + m_mapper->addMapping(m_yawSlider, SimulationStateViewModel::CameraYaw); + m_mapper->addMapping(m_hideSubHorizonCheckBox, SimulationStateViewModel::HideSubHorizon); + m_mapper->toFirst(); + + connect(m_cameraProjectionComboBox, QOverload::of(&QComboBox::currentIndexChanged), m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); + connect(m_fieldOfViewSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); + connect(m_pitchSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); + connect(m_yawSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); + connect(m_hideSubHorizonCheckBox, &QCheckBox::stateChanged, m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); + + /* + * It is not possible to map multiple model columns to different properties + * of the same widget with QDataWidgetMapper, so a second instance is needed + * to update the maximum value of the FOV slider. + */ + m_maximumFovMapper = new QDataWidgetMapper(this); + m_maximumFovMapper->setModel(m_viewModel); + m_maximumFovMapper->addMapping(m_fieldOfViewSlider, SimulationStateViewModel::CameraMaxFov, "maximum"); + m_maximumFovMapper->toFirst(); + connect(m_brightnessSlider, &SliderSpinBox::valueChanged, this, &ViewSettingsWidget::brightnessChanged); connect(m_lockToLightSource, &QCheckBox::stateChanged, this, &ViewSettingsWidget::lockToLightSource); } @@ -65,37 +82,6 @@ void ViewSettingsWidget::setupUi() layout->addRow(tr("Lock to light source"), m_lockToLightSource); } -HaloRay::Camera ViewSettingsWidget::stateToCamera() const -{ - HaloRay::Camera camera; - camera.projection = (HaloRay::Projection)m_cameraProjectionComboBox->currentIndex(); - camera.fov = (float)m_fieldOfViewSlider->value(); - camera.hideSubHorizon = m_hideSubHorizonCheckBox->isChecked(); - camera.yaw = (float)m_yawSlider->value(); - camera.pitch = (float)m_pitchSlider->value(); - return camera; -} - -void ViewSettingsWidget::setCamera(HaloRay::Camera camera) -{ - m_cameraProjectionComboBox->setCurrentIndex((int)camera.projection); - m_fieldOfViewSlider->setValue(camera.fov); - m_yawSlider->setValue(camera.yaw); - m_pitchSlider->setValue(camera.pitch); - m_hideSubHorizonCheckBox->setChecked(camera.hideSubHorizon); -} - -void ViewSettingsWidget::setFieldOfView(double fov) -{ - m_fieldOfViewSlider->setValue(fov); -} - -void ViewSettingsWidget::setCameraOrientation(double pitch, double yaw) -{ - m_pitchSlider->setValue(pitch); - m_yawSlider->setValue(yaw); -} - void ViewSettingsWidget::setBrightness(double brightness) { m_brightnessSlider->setValue(brightness); diff --git a/src/haloray-core/gui/viewSettingsWidget.h b/src/haloray-core/gui/viewSettingsWidget.h index 8f117e2..8ee5407 100644 --- a/src/haloray-core/gui/viewSettingsWidget.h +++ b/src/haloray-core/gui/viewSettingsWidget.h @@ -4,31 +4,27 @@ class QComboBox; class QCheckBox; +class QDataWidgetMapper; namespace HaloRay { class SliderSpinBox; +class SimulationStateViewModel; class ViewSettingsWidget : public QGroupBox { Q_OBJECT public: - ViewSettingsWidget(QWidget *parent = nullptr); - - void setCamera(HaloRay::Camera camera); - void setFieldOfView(double fov); - void setCameraOrientation(double pitch, double yaw); + ViewSettingsWidget(SimulationStateViewModel *viewModel, QWidget *parent = nullptr); void setBrightness(double brightness); signals: - void cameraChanged(HaloRay::Camera camera); void brightnessChanged(double brightness); void lockToLightSource(bool locked); private: void setupUi(); - HaloRay::Camera stateToCamera() const; SliderSpinBox *m_fieldOfViewSlider; SliderSpinBox *m_pitchSlider; @@ -37,6 +33,9 @@ class ViewSettingsWidget : public QGroupBox QCheckBox *m_hideSubHorizonCheckBox; SliderSpinBox *m_brightnessSlider; QCheckBox *m_lockToLightSource; + SimulationStateViewModel *m_viewModel; + QDataWidgetMapper *m_mapper; + QDataWidgetMapper *m_maximumFovMapper; }; } diff --git a/src/haloray-core/simulation/simulationEngine.cpp b/src/haloray-core/simulation/simulationEngine.cpp index f346050..6ab3f31 100644 --- a/src/haloray-core/simulation/simulationEngine.cpp +++ b/src/haloray-core/simulation/simulationEngine.cpp @@ -226,11 +226,13 @@ void SimulationEngine::lockCameraToLightSource(bool locked) m_cameraLockedToLightSource = locked; pointCameraToLightSource(); + emit cameraChanged(m_camera); emit lockCameraToLightSourceChanged(m_cameraLockedToLightSource); } void SimulationEngine::pointCameraToLightSource() { + if (m_camera.yaw == 0.0f && m_camera.pitch == m_light.altitude) return; clear(); m_camera.yaw = 0.0f; m_camera.pitch = m_light.altitude; From a387705615b9c60e40020ac3128266739cd4f3cf Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 30 Jan 2021 22:12:16 +0200 Subject: [PATCH 038/184] Connect general settings widget to view model Now the sun altitude, sun diameter and multiple scattering probability are updated via the SimulationStateViewModel class instead of connecting signals all over. Rays per frame and maximum number of frames are still updated via signals, because they do not yet exist in the simulation state view model class. --- .../gui/generalSettingsWidget.cpp | 41 +++++++++---------- src/haloray-core/gui/generalSettingsWidget.h | 19 +++++---- src/haloray-core/gui/mainWindow.cpp | 17 +------- src/haloray-core/gui/viewSettingsWidget.h | 1 + 4 files changed, 32 insertions(+), 46 deletions(-) diff --git a/src/haloray-core/gui/generalSettingsWidget.cpp b/src/haloray-core/gui/generalSettingsWidget.cpp index c816e41..af6d5ac 100644 --- a/src/haloray-core/gui/generalSettingsWidget.cpp +++ b/src/haloray-core/gui/generalSettingsWidget.cpp @@ -7,18 +7,23 @@ namespace HaloRay { -GeneralSettingsWidget::GeneralSettingsWidget(QWidget *parent) - : QGroupBox("General settings", parent) +GeneralSettingsWidget::GeneralSettingsWidget(SimulationStateViewModel *viewModel, QWidget *parent) + : QGroupBox("General settings", parent), + m_viewModel(viewModel) { setupUi(); - connect(m_sunAltitudeSlider, &SliderSpinBox::valueChanged, [this]() { - emit lightSourceChanged(stateToLightSource()); - }); + m_mapper = new QDataWidgetMapper(this); + m_mapper->setModel(m_viewModel); + m_mapper->setSubmitPolicy(QDataWidgetMapper::AutoSubmit); + m_mapper->addMapping(m_sunAltitudeSlider, SimulationStateViewModel::SunAltitude); + m_mapper->addMapping(m_sunDiameterSpinBox, SimulationStateViewModel::SunDiameter); + m_mapper->addMapping(m_multipleScatteringSlider, SimulationStateViewModel::MultipleScatteringProbability); + m_mapper->toFirst(); - connect(m_sunDiameterSpinBox, QOverload::of(&QDoubleSpinBox::valueChanged), [this]() { - emit lightSourceChanged(stateToLightSource()); - }); + connect(m_sunAltitudeSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); + connect(m_sunDiameterSpinBox, QOverload::of(&QDoubleSpinBox::valueChanged), m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); + connect(m_multipleScatteringSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); connect(m_raysPerFrameSpinBox, QOverload::of(&QSpinBox::valueChanged), [this](int value) { emit numRaysChanged((unsigned int)value); @@ -27,21 +32,13 @@ GeneralSettingsWidget::GeneralSettingsWidget(QWidget *parent) connect(m_maximumFramesSpinBox, QOverload::of(&QSpinBox::valueChanged), [this](int value) { emit maximumNumberOfIterationsChanged((unsigned int)value); }); - - connect(m_multipleScattering, &SliderSpinBox::valueChanged, this, &GeneralSettingsWidget::multipleScatteringProbabilityChanged); } -void GeneralSettingsWidget::setInitialValues(double sunDiameter, - double sunAltitude, - unsigned int raysPerFrame, - unsigned int maxNumFrames, - double multipleScatteringProbability) +void GeneralSettingsWidget::setInitialValues(unsigned int raysPerFrame, + unsigned int maxNumFrames) { - m_sunDiameterSpinBox->setValue(sunDiameter); - m_sunAltitudeSlider->setValue(sunAltitude); m_raysPerFrameSpinBox->setValue(raysPerFrame); m_maximumFramesSpinBox->setValue(maxNumFrames); - m_multipleScattering->setValue(multipleScatteringProbability); } void GeneralSettingsWidget::setupUi() @@ -72,16 +69,16 @@ void GeneralSettingsWidget::setupUi() m_maximumFramesSpinBox->setValue(100000000); m_maximumFramesSpinBox->setGroupSeparatorShown(true); - m_multipleScattering = new SliderSpinBox(); - m_multipleScattering->setMinimum(0.0); - m_multipleScattering->setMaximum(1.0); + m_multipleScatteringSlider = new SliderSpinBox(); + m_multipleScatteringSlider->setMinimum(0.0); + m_multipleScatteringSlider->setMaximum(1.0); auto layout = new QFormLayout(this); layout->addRow(tr("Sun altitude"), m_sunAltitudeSlider); layout->addRow(tr("Sun diameter"), m_sunDiameterSpinBox); layout->addRow(tr("Rays per frame"), m_raysPerFrameSpinBox); layout->addRow(tr("Maximum frames"), m_maximumFramesSpinBox); - layout->addRow(tr("Double scattering"), m_multipleScattering); + layout->addRow(tr("Double scattering"), m_multipleScatteringSlider); } HaloRay::LightSource GeneralSettingsWidget::stateToLightSource() const diff --git a/src/haloray-core/gui/generalSettingsWidget.h b/src/haloray-core/gui/generalSettingsWidget.h index dcd8771..c3c92fb 100644 --- a/src/haloray-core/gui/generalSettingsWidget.h +++ b/src/haloray-core/gui/generalSettingsWidget.h @@ -1,6 +1,8 @@ #pragma once #include +#include #include "../simulation/lightSource.h" +#include "simulationStateViewModel.h" class QDoubleSpinBox; class QSpinBox; @@ -14,18 +16,14 @@ class GeneralSettingsWidget : public QGroupBox { Q_OBJECT public: - GeneralSettingsWidget(QWidget *parent = nullptr); - void setInitialValues(double sunDiameter, - double sunAltitude, - unsigned int raysPerFrame, - unsigned int maxNumFrames, - double multipleScatteringProbability); + GeneralSettingsWidget(SimulationStateViewModel *viewModel, QWidget *parent = nullptr); + void setInitialValues(unsigned int raysPerFrame, + unsigned int maxNumFrames); + signals: - void lightSourceChanged(HaloRay::LightSource light); void numRaysChanged(unsigned int rays); void maximumNumberOfIterationsChanged(unsigned int iterations); - void multipleScatteringProbabilityChanged(double probability); public slots: void toggleMaxIterationsSpinBoxStatus(); @@ -39,7 +37,10 @@ public slots: QDoubleSpinBox *m_sunDiameterSpinBox; QSpinBox *m_raysPerFrameSpinBox; QSpinBox *m_maximumFramesSpinBox; - SliderSpinBox *m_multipleScattering; + SliderSpinBox *m_multipleScatteringSlider; + + QDataWidgetMapper *m_mapper; + SimulationStateViewModel *m_viewModel; }; } diff --git a/src/haloray-core/gui/mainWindow.cpp b/src/haloray-core/gui/mainWindow.cpp index 3bb775f..d1a88c1 100644 --- a/src/haloray-core/gui/mainWindow.cpp +++ b/src/haloray-core/gui/mainWindow.cpp @@ -63,27 +63,14 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) connect(m_openGLWidget, &OpenGLWidget::maxRaysPerFrameChanged, m_generalSettingsWidget, &GeneralSettingsWidget::setMaxRaysPerFrame); connect(m_openGLWidget, &OpenGLWidget::nextIteration, m_progressBar, &QProgressBar::setValue); - // Signals from general settings - connect(m_generalSettingsWidget, &GeneralSettingsWidget::lightSourceChanged, [this](HaloRay::LightSource light) { - m_engine->setLightSource(light); - m_openGLWidget->update(); - }); connect(m_generalSettingsWidget, &GeneralSettingsWidget::numRaysChanged, [this](unsigned int value) { m_engine->setRaysPerStep(value); m_openGLWidget->update(); }); connect(m_generalSettingsWidget, &GeneralSettingsWidget::maximumNumberOfIterationsChanged, m_openGLWidget, &OpenGLWidget::setMaxIterations); connect(m_generalSettingsWidget, &GeneralSettingsWidget::maximumNumberOfIterationsChanged, m_progressBar, &QProgressBar::setMaximum); - connect(m_generalSettingsWidget, &GeneralSettingsWidget::multipleScatteringProbabilityChanged, [this](double value) { - m_engine->setMultipleScatteringProbability(value); - m_openGLWidget->update(); - }); - m_generalSettingsWidget->setInitialValues(m_engine->getLightSource().diameter, - m_engine->getLightSource().altitude, - m_engine->getRaysPerStep(), - 600, - m_engine->getMultipleScatteringProbability()); + m_generalSettingsWidget->setInitialValues(m_engine->getRaysPerStep(), 600); // Signals for menu bar connect(m_quitAction, &QAction::triggered, QApplication::instance(), &QApplication::quit); @@ -147,7 +134,7 @@ void MainWindow::setupMenuBar() QScrollArea *MainWindow::setupSideBarScrollArea() { - m_generalSettingsWidget = new GeneralSettingsWidget(); + m_generalSettingsWidget = new GeneralSettingsWidget(m_simulationStateViewModel); m_crystalSettingsWidget = new CrystalSettingsWidget(m_crystalRepository); m_viewSettingsWidget = new ViewSettingsWidget(m_simulationStateViewModel); diff --git a/src/haloray-core/gui/viewSettingsWidget.h b/src/haloray-core/gui/viewSettingsWidget.h index 8ee5407..5ecf892 100644 --- a/src/haloray-core/gui/viewSettingsWidget.h +++ b/src/haloray-core/gui/viewSettingsWidget.h @@ -33,6 +33,7 @@ class ViewSettingsWidget : public QGroupBox QCheckBox *m_hideSubHorizonCheckBox; SliderSpinBox *m_brightnessSlider; QCheckBox *m_lockToLightSource; + SimulationStateViewModel *m_viewModel; QDataWidgetMapper *m_mapper; QDataWidgetMapper *m_maximumFovMapper; From 5f2e55b8a0b24a467c1fba2029af04b08657ad45 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 31 Jan 2021 01:21:54 +0200 Subject: [PATCH 039/184] Improve CrystalModel class Now the class uses an enum for identifying each column and follows the same style as SimulationStateViewModel. --- src/haloray-core/gui/crystalModel.cpp | 62 +++++++++++-------- src/haloray-core/gui/crystalModel.h | 17 ++++- .../gui/crystalSettingsWidget.cpp | 20 +++--- 3 files changed, 63 insertions(+), 36 deletions(-) diff --git a/src/haloray-core/gui/crystalModel.cpp b/src/haloray-core/gui/crystalModel.cpp index cd06cea..602469d 100644 --- a/src/haloray-core/gui/crystalModel.cpp +++ b/src/haloray-core/gui/crystalModel.cpp @@ -12,44 +12,50 @@ CrystalModel::CrystalModel(std::shared_ptr { } -int CrystalModel::rowCount(const QModelIndex&) const +int CrystalModel::rowCount(const QModelIndex &parent) const { + if (parent.isValid()) return 0; + return static_cast(m_crystals->getCount()); } -int CrystalModel::columnCount(const QModelIndex&) const +int CrystalModel::columnCount(const QModelIndex &parent) const { - return 9; + if (parent.isValid()) return 0; + + return NUM_COLUMNS; } QVariant CrystalModel::data(const QModelIndex &index, int role) const { + if (!index.isValid()) + return QVariant(); + if (role != Qt::DisplayRole && role != Qt::EditRole) return QVariant(); - auto col = index.column(); auto row = index.row(); const HaloRay::CrystalPopulation &crystal = m_crystals->get(row); - switch (col) + switch (index.column()) { - case 0: + case CaRatioAverage: return crystal.caRatioAverage; - case 1: + case CaRatioStd: return crystal.caRatioStd; - case 2: + case TiltDistribution: return crystal.tiltDistribution; - case 3: + case TiltAverage: return crystal.tiltAverage; - case 4: + case TiltStd: return crystal.tiltStd; - case 5: + case RotationDistribution: return crystal.rotationDistribution; - case 6: + case RotationAverage: return crystal.rotationAverage; - case 7: + case RotationStd: return crystal.rotationStd; - case 8: + case PopulationWeight: return m_crystals->getWeight(row); } @@ -64,49 +70,53 @@ bool CrystalModel::setData(const QModelIndex &index, const QVariant &value, int if (!checkIndex(index)) return false; + if (data(index, role) == value) return false; + auto row = index.row(); - auto col = index.column(); HaloRay::CrystalPopulation &crystal = m_crystals->get(row); - switch (col) + switch (index.column()) { - case 0: + case CaRatioAverage: crystal.caRatioAverage = value.toFloat(); break; - case 1: + case CaRatioStd: crystal.caRatioStd = value.toFloat(); break; - case 2: + case TiltDistribution: crystal.tiltDistribution = value.toInt(); break; - case 3: + case TiltAverage: crystal.tiltAverage = value.toFloat(); break; - case 4: + case TiltStd: crystal.tiltStd = value.toFloat(); break; - case 5: + case RotationDistribution: crystal.rotationDistribution = value.toInt(); break; - case 6: + case RotationAverage: crystal.rotationAverage = value.toFloat(); break; - case 7: + case RotationStd: crystal.rotationStd = value.toFloat(); break; - case 8: + case PopulationWeight: m_crystals->setWeight(row, value.toUInt()); break; default: break; } - emit dataChanged(createIndex(0, 0), createIndex(0, 0), {Qt::DisplayRole}); + emit dataChanged(index, index); return true; } Qt::ItemFlags CrystalModel::flags(const QModelIndex &index) const { + if (!index.isValid()) + return Qt::NoItemFlags; + return Qt::ItemIsEditable | QAbstractTableModel::flags(index); } diff --git a/src/haloray-core/gui/crystalModel.h b/src/haloray-core/gui/crystalModel.h index c88f500..3d4abca 100644 --- a/src/haloray-core/gui/crystalModel.h +++ b/src/haloray-core/gui/crystalModel.h @@ -16,7 +16,22 @@ class CrystalModel : public QAbstractTableModel { Q_OBJECT public: - CrystalModel(std::shared_ptr crystalRepository, QWidget *parent = nullptr); + explicit CrystalModel(std::shared_ptr crystalRepository, QWidget *parent = nullptr); + + enum Columns + { + CaRatioAverage, + CaRatioStd, + TiltDistribution, + TiltAverage, + TiltStd, + RotationDistribution, + RotationAverage, + RotationStd, + PopulationWeight, + NUM_COLUMNS + }; + int rowCount(const QModelIndex &parent = QModelIndex()) const override; int columnCount(const QModelIndex &parent = QModelIndex()) const override; QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const override; diff --git a/src/haloray-core/gui/crystalSettingsWidget.cpp b/src/haloray-core/gui/crystalSettingsWidget.cpp index d2853b7..0c335b8 100644 --- a/src/haloray-core/gui/crystalSettingsWidget.cpp +++ b/src/haloray-core/gui/crystalSettingsWidget.cpp @@ -35,19 +35,21 @@ CrystalSettingsWidget::CrystalSettingsWidget(std::shared_ptrsetModel(m_model); - m_mapper->addMapping(m_caRatioSlider, 0); - m_mapper->addMapping(m_caRatioStdSlider, 1); - m_mapper->addMapping(m_tiltDistributionComboBox, 2, "currentIndex"); - m_mapper->addMapping(m_tiltAverageSlider, 3); - m_mapper->addMapping(m_tiltStdSlider, 4); - m_mapper->addMapping(m_rotationDistributionComboBox, 5, "currentIndex"); - m_mapper->addMapping(m_rotationAverageSlider, 6); - m_mapper->addMapping(m_rotationStdSlider, 7); - m_mapper->addMapping(m_weightSpinBox, 8); + m_mapper->addMapping(m_caRatioSlider, CrystalModel::CaRatioAverage); + m_mapper->addMapping(m_caRatioStdSlider, CrystalModel::CaRatioStd); + m_mapper->addMapping(m_tiltDistributionComboBox, CrystalModel::TiltDistribution, "currentIndex"); + m_mapper->addMapping(m_tiltAverageSlider, CrystalModel::TiltAverage); + m_mapper->addMapping(m_tiltStdSlider, CrystalModel::TiltStd); + m_mapper->addMapping(m_rotationDistributionComboBox, CrystalModel::RotationDistribution, "currentIndex"); + m_mapper->addMapping(m_rotationAverageSlider, CrystalModel::RotationAverage); + m_mapper->addMapping(m_rotationStdSlider, CrystalModel::RotationStd); + m_mapper->addMapping(m_weightSpinBox, CrystalModel::PopulationWeight); m_mapper->toFirst(); m_mapper->setSubmitPolicy(QDataWidgetMapper::SubmitPolicy::AutoSubmit); connect(m_model, &CrystalModel::dataChanged, this, &CrystalSettingsWidget::crystalChanged); + connect(m_model, &CrystalModel::rowsInserted, this, &CrystalSettingsWidget::crystalChanged); + connect(m_model, &CrystalModel::rowsRemoved, this, &CrystalSettingsWidget::crystalChanged); /* QDataWidgetMapper only submits data when Enter is pressed, or when a text From 65fb4664b9e5262ff3331544e780c0de7310557f Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 31 Jan 2021 13:38:37 +0200 Subject: [PATCH 040/184] Use direct pointer instead of shared_ptr for SimulationEngine SimulationEngine is a QObject, so Qt can handle the lifetime of the pointer. --- src/haloray-core/gui/mainWindow.cpp | 4 ++-- src/haloray-core/gui/mainWindow.h | 2 +- src/haloray-core/gui/openGLWidget.cpp | 2 +- src/haloray-core/gui/openGLWidget.h | 6 ++---- 4 files changed, 6 insertions(+), 8 deletions(-) diff --git a/src/haloray-core/gui/mainWindow.cpp b/src/haloray-core/gui/mainWindow.cpp index d1a88c1..ec8d0fb 100644 --- a/src/haloray-core/gui/mainWindow.cpp +++ b/src/haloray-core/gui/mainWindow.cpp @@ -35,9 +35,9 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) QIcon::setThemeName("HaloRayTheme"); #endif m_crystalRepository = std::make_shared(); - m_engine = std::make_shared(m_crystalRepository); + m_engine = new SimulationEngine(m_crystalRepository, this); - m_simulationStateViewModel = new SimulationStateViewModel(m_engine.get(), this); + m_simulationStateViewModel = new SimulationStateViewModel(m_engine, this); setupUi(); diff --git a/src/haloray-core/gui/mainWindow.h b/src/haloray-core/gui/mainWindow.h index e9b751b..0614697 100644 --- a/src/haloray-core/gui/mainWindow.h +++ b/src/haloray-core/gui/mainWindow.h @@ -45,7 +45,7 @@ class MainWindow : public QMainWindow QAction *m_quitAction; std::shared_ptr m_crystalRepository; - std::shared_ptr m_engine; + HaloRay::SimulationEngine *m_engine; SimulationStateViewModel *m_simulationStateViewModel; }; diff --git a/src/haloray-core/gui/openGLWidget.cpp b/src/haloray-core/gui/openGLWidget.cpp index 073efa6..eb876d6 100644 --- a/src/haloray-core/gui/openGLWidget.cpp +++ b/src/haloray-core/gui/openGLWidget.cpp @@ -13,7 +13,7 @@ namespace HaloRay { -OpenGLWidget::OpenGLWidget(enginePtr engine, QWidget *parent) +OpenGLWidget::OpenGLWidget(SimulationEngine *engine, QWidget *parent) : QOpenGLWidget(parent), m_engine(engine), m_dragging(false), diff --git a/src/haloray-core/gui/openGLWidget.h b/src/haloray-core/gui/openGLWidget.h index 41ba680..d13cdc8 100644 --- a/src/haloray-core/gui/openGLWidget.h +++ b/src/haloray-core/gui/openGLWidget.h @@ -22,10 +22,8 @@ class OpenGLWidget : public QOpenGLWidget, protected QOpenGLFunctions_4_4_Core { Q_OBJECT - typedef std::shared_ptr enginePtr; - public: - explicit OpenGLWidget(enginePtr engine, QWidget *parent = nullptr); + explicit OpenGLWidget(SimulationEngine *engine, QWidget *parent = nullptr); QSize sizeHint() const override; QSize minimumSizeHint() const override; @@ -52,7 +50,7 @@ public slots: void wheelEvent(QWheelEvent *event) override; private: - enginePtr m_engine; + SimulationEngine *m_engine; std::unique_ptr m_textureRenderer; bool m_dragging; QPoint m_previousDragPoint; From 82675221f5752bc59f16ba913aa2127dd68e55ee Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 31 Jan 2021 13:39:53 +0200 Subject: [PATCH 041/184] Remove unnecessary HaloRay namespace prefixes --- src/haloray-core/gui/addCrystalPopulationButton.cpp | 12 ++++++------ src/haloray-core/gui/addCrystalPopulationButton.h | 2 +- src/haloray-core/gui/crystalModel.cpp | 8 ++++---- src/haloray-core/gui/crystalModel.h | 6 +++--- src/haloray-core/gui/crystalSettingsWidget.cpp | 4 ++-- src/haloray-core/gui/crystalSettingsWidget.h | 2 +- src/haloray-core/gui/generalSettingsWidget.cpp | 4 ++-- src/haloray-core/gui/generalSettingsWidget.h | 2 +- src/haloray-core/gui/mainWindow.cpp | 2 +- src/haloray-core/gui/mainWindow.h | 4 ++-- src/haloray-core/gui/simulationStateViewModel.h | 2 +- src/haloray-core/simulation/camera.cpp | 2 +- 12 files changed, 25 insertions(+), 25 deletions(-) diff --git a/src/haloray-core/gui/addCrystalPopulationButton.cpp b/src/haloray-core/gui/addCrystalPopulationButton.cpp index 5f7ee67..4e1cd28 100644 --- a/src/haloray-core/gui/addCrystalPopulationButton.cpp +++ b/src/haloray-core/gui/addCrystalPopulationButton.cpp @@ -27,12 +27,12 @@ AddCrystalPopulationButton::AddCrystalPopulationButton(QWidget *parent) setMenu(m_menu); - connect(this, &AddCrystalPopulationButton::clicked, [this]() { emit addPopulation(HaloRay::CrystalPopulationPreset::Random); }); - connect(m_addRandom, &QAction::triggered, [this]() { emit addPopulation(HaloRay::CrystalPopulationPreset::Random); }); - connect(m_addPlate, &QAction::triggered, [this]() { emit addPopulation(HaloRay::CrystalPopulationPreset::Plate); }); - connect(m_addColumn, &QAction::triggered, [this]() { emit addPopulation(HaloRay::CrystalPopulationPreset::Column); }); - connect(m_addParry, &QAction::triggered, [this]() { emit addPopulation(HaloRay::CrystalPopulationPreset::Parry); }); - connect(m_addLowitz, &QAction::triggered, [this]() { emit addPopulation(HaloRay::CrystalPopulationPreset::Lowitz); }); + connect(this, &AddCrystalPopulationButton::clicked, [this]() { emit addPopulation(CrystalPopulationPreset::Random); }); + connect(m_addRandom, &QAction::triggered, [this]() { emit addPopulation(CrystalPopulationPreset::Random); }); + connect(m_addPlate, &QAction::triggered, [this]() { emit addPopulation(CrystalPopulationPreset::Plate); }); + connect(m_addColumn, &QAction::triggered, [this]() { emit addPopulation(CrystalPopulationPreset::Column); }); + connect(m_addParry, &QAction::triggered, [this]() { emit addPopulation(CrystalPopulationPreset::Parry); }); + connect(m_addLowitz, &QAction::triggered, [this]() { emit addPopulation(CrystalPopulationPreset::Lowitz); }); } } diff --git a/src/haloray-core/gui/addCrystalPopulationButton.h b/src/haloray-core/gui/addCrystalPopulationButton.h index e815961..c4ec601 100644 --- a/src/haloray-core/gui/addCrystalPopulationButton.h +++ b/src/haloray-core/gui/addCrystalPopulationButton.h @@ -17,7 +17,7 @@ class AddCrystalPopulationButton : public QToolButton AddCrystalPopulationButton(QWidget *parent = nullptr); signals: - void addPopulation(HaloRay::CrystalPopulationPreset); + void addPopulation(CrystalPopulationPreset); private: QMenu *m_menu; diff --git a/src/haloray-core/gui/crystalModel.cpp b/src/haloray-core/gui/crystalModel.cpp index 602469d..2ce2eea 100644 --- a/src/haloray-core/gui/crystalModel.cpp +++ b/src/haloray-core/gui/crystalModel.cpp @@ -6,7 +6,7 @@ namespace HaloRay { -CrystalModel::CrystalModel(std::shared_ptr crystalRepository, QWidget *parent) +CrystalModel::CrystalModel(std::shared_ptr crystalRepository, QWidget *parent) : QAbstractTableModel(parent), m_crystals(crystalRepository) { @@ -35,7 +35,7 @@ QVariant CrystalModel::data(const QModelIndex &index, int role) const return QVariant(); auto row = index.row(); - const HaloRay::CrystalPopulation &crystal = m_crystals->get(row); + const CrystalPopulation &crystal = m_crystals->get(row); switch (index.column()) { @@ -73,7 +73,7 @@ bool CrystalModel::setData(const QModelIndex &index, const QVariant &value, int if (data(index, role) == value) return false; auto row = index.row(); - HaloRay::CrystalPopulation &crystal = m_crystals->get(row); + CrystalPopulation &crystal = m_crystals->get(row); switch (index.column()) { case CaRatioAverage: @@ -120,7 +120,7 @@ Qt::ItemFlags CrystalModel::flags(const QModelIndex &index) const return Qt::ItemIsEditable | QAbstractTableModel::flags(index); } -void CrystalModel::addRow(HaloRay::CrystalPopulationPreset preset) +void CrystalModel::addRow(CrystalPopulationPreset preset) { auto row = m_crystals->getCount(); beginInsertRows(QModelIndex(), row, row); diff --git a/src/haloray-core/gui/crystalModel.h b/src/haloray-core/gui/crystalModel.h index 3d4abca..be3024b 100644 --- a/src/haloray-core/gui/crystalModel.h +++ b/src/haloray-core/gui/crystalModel.h @@ -16,7 +16,7 @@ class CrystalModel : public QAbstractTableModel { Q_OBJECT public: - explicit CrystalModel(std::shared_ptr crystalRepository, QWidget *parent = nullptr); + explicit CrystalModel(std::shared_ptr crystalRepository, QWidget *parent = nullptr); enum Columns { @@ -38,11 +38,11 @@ class CrystalModel : public QAbstractTableModel bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole) override; Qt::ItemFlags flags(const QModelIndex &index) const override; - void addRow(HaloRay::CrystalPopulationPreset preset = HaloRay::CrystalPopulationPreset::Random); + void addRow(CrystalPopulationPreset preset = CrystalPopulationPreset::Random); bool removeRow(int row); private: - std::shared_ptr m_crystals; + std::shared_ptr m_crystals; }; } diff --git a/src/haloray-core/gui/crystalSettingsWidget.cpp b/src/haloray-core/gui/crystalSettingsWidget.cpp index 0c335b8..01c0f02 100644 --- a/src/haloray-core/gui/crystalSettingsWidget.cpp +++ b/src/haloray-core/gui/crystalSettingsWidget.cpp @@ -14,7 +14,7 @@ namespace HaloRay { -CrystalSettingsWidget::CrystalSettingsWidget(std::shared_ptr crystalRepository, QWidget *parent) +CrystalSettingsWidget::CrystalSettingsWidget(std::shared_ptr crystalRepository, QWidget *parent) : QGroupBox("Crystal population settings", parent), m_model(new CrystalModel(crystalRepository)), m_nextPopulationId(1) @@ -72,7 +72,7 @@ CrystalSettingsWidget::CrystalSettingsWidget(std::shared_ptrcurrentIndex()); rotationVisibilityHandler(m_rotationDistributionComboBox->currentIndex()); - connect(m_AddPopulationButton, &AddCrystalPopulationButton::addPopulation, [this](HaloRay::CrystalPopulationPreset preset) { + connect(m_AddPopulationButton, &AddCrystalPopulationButton::addPopulation, [this](CrystalPopulationPreset preset) { m_model->addRow(preset); addPopulationComboBoxItem(); m_mapper->toLast(); diff --git a/src/haloray-core/gui/crystalSettingsWidget.h b/src/haloray-core/gui/crystalSettingsWidget.h index e2a4956..7bb0892 100644 --- a/src/haloray-core/gui/crystalSettingsWidget.h +++ b/src/haloray-core/gui/crystalSettingsWidget.h @@ -21,7 +21,7 @@ class CrystalSettingsWidget : public QGroupBox { Q_OBJECT public: - CrystalSettingsWidget(std::shared_ptr crystalRepository, QWidget *parent = nullptr); + CrystalSettingsWidget(std::shared_ptr crystalRepository, QWidget *parent = nullptr); signals: void crystalChanged(); diff --git a/src/haloray-core/gui/generalSettingsWidget.cpp b/src/haloray-core/gui/generalSettingsWidget.cpp index af6d5ac..86b49be 100644 --- a/src/haloray-core/gui/generalSettingsWidget.cpp +++ b/src/haloray-core/gui/generalSettingsWidget.cpp @@ -81,9 +81,9 @@ void GeneralSettingsWidget::setupUi() layout->addRow(tr("Double scattering"), m_multipleScatteringSlider); } -HaloRay::LightSource GeneralSettingsWidget::stateToLightSource() const +LightSource GeneralSettingsWidget::stateToLightSource() const { - HaloRay::LightSource light; + LightSource light; light.altitude = m_sunAltitudeSlider->value(); light.diameter = m_sunDiameterSpinBox->value(); return light; diff --git a/src/haloray-core/gui/generalSettingsWidget.h b/src/haloray-core/gui/generalSettingsWidget.h index c3c92fb..ae38327 100644 --- a/src/haloray-core/gui/generalSettingsWidget.h +++ b/src/haloray-core/gui/generalSettingsWidget.h @@ -30,7 +30,7 @@ public slots: void setMaxRaysPerFrame(unsigned int maxRays); private: - HaloRay::LightSource stateToLightSource() const; + LightSource stateToLightSource() const; void setupUi(); SliderSpinBox *m_sunAltitudeSlider; diff --git a/src/haloray-core/gui/mainWindow.cpp b/src/haloray-core/gui/mainWindow.cpp index ec8d0fb..863daa0 100644 --- a/src/haloray-core/gui/mainWindow.cpp +++ b/src/haloray-core/gui/mainWindow.cpp @@ -34,7 +34,7 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) #if _WIN32 QIcon::setThemeName("HaloRayTheme"); #endif - m_crystalRepository = std::make_shared(); + m_crystalRepository = std::make_shared(); m_engine = new SimulationEngine(m_crystalRepository, this); m_simulationStateViewModel = new SimulationStateViewModel(m_engine, this); diff --git a/src/haloray-core/gui/mainWindow.h b/src/haloray-core/gui/mainWindow.h index 0614697..ed9dcf0 100644 --- a/src/haloray-core/gui/mainWindow.h +++ b/src/haloray-core/gui/mainWindow.h @@ -44,8 +44,8 @@ class MainWindow : public QMainWindow QAction *m_saveImageAction; QAction *m_quitAction; - std::shared_ptr m_crystalRepository; - HaloRay::SimulationEngine *m_engine; + std::shared_ptr m_crystalRepository; + SimulationEngine *m_engine; SimulationStateViewModel *m_simulationStateViewModel; }; diff --git a/src/haloray-core/gui/simulationStateViewModel.h b/src/haloray-core/gui/simulationStateViewModel.h index d4936b4..b6a1ad4 100644 --- a/src/haloray-core/gui/simulationStateViewModel.h +++ b/src/haloray-core/gui/simulationStateViewModel.h @@ -40,7 +40,7 @@ class SimulationStateViewModel : public QAbstractTableModel Qt::ItemFlags flags(const QModelIndex& index) const override; private: - HaloRay::SimulationEngine *m_simulationEngine; + SimulationEngine *m_simulationEngine; void setSunAltitude(float altitude); void setSunDiameter(float diameter); void setCameraProjection(Projection projection); diff --git a/src/haloray-core/simulation/camera.cpp b/src/haloray-core/simulation/camera.cpp index a58dcd1..c2ac785 100644 --- a/src/haloray-core/simulation/camera.cpp +++ b/src/haloray-core/simulation/camera.cpp @@ -38,7 +38,7 @@ Camera Camera::createDefaultCamera() camera.pitch = 0.0f; camera.yaw = 0.0f; camera.fov = 75.0f; - camera.projection = HaloRay::Projection::Stereographic; + camera.projection = Projection::Stereographic; camera.hideSubHorizon = false; return camera; } From 4ee7f0bb4cfce92d552a7b5923c4dc907e834444 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 31 Jan 2021 14:29:34 +0200 Subject: [PATCH 042/184] Rename SimulationStateViewModel to SimulationStateModel --- .../gui/generalSettingsWidget.cpp | 8 ++--- src/haloray-core/gui/generalSettingsWidget.h | 6 ++-- src/haloray-core/gui/mainWindow.cpp | 8 ++--- src/haloray-core/gui/mainWindow.h | 4 +-- ...ViewModel.cpp => simulationStateModel.cpp} | 30 +++++++++---------- ...tateViewModel.h => simulationStateModel.h} | 4 +-- src/haloray-core/gui/viewSettingsWidget.cpp | 16 +++++----- src/haloray-core/gui/viewSettingsWidget.h | 6 ++-- src/haloray-core/haloray-core.pro | 4 +-- 9 files changed, 43 insertions(+), 43 deletions(-) rename src/haloray-core/gui/{simulationStateViewModel.cpp => simulationStateModel.cpp} (82%) rename src/haloray-core/gui/{simulationStateViewModel.h => simulationStateModel.h} (89%) diff --git a/src/haloray-core/gui/generalSettingsWidget.cpp b/src/haloray-core/gui/generalSettingsWidget.cpp index 86b49be..20e88ae 100644 --- a/src/haloray-core/gui/generalSettingsWidget.cpp +++ b/src/haloray-core/gui/generalSettingsWidget.cpp @@ -7,7 +7,7 @@ namespace HaloRay { -GeneralSettingsWidget::GeneralSettingsWidget(SimulationStateViewModel *viewModel, QWidget *parent) +GeneralSettingsWidget::GeneralSettingsWidget(SimulationStateModel *viewModel, QWidget *parent) : QGroupBox("General settings", parent), m_viewModel(viewModel) { @@ -16,9 +16,9 @@ GeneralSettingsWidget::GeneralSettingsWidget(SimulationStateViewModel *viewModel m_mapper = new QDataWidgetMapper(this); m_mapper->setModel(m_viewModel); m_mapper->setSubmitPolicy(QDataWidgetMapper::AutoSubmit); - m_mapper->addMapping(m_sunAltitudeSlider, SimulationStateViewModel::SunAltitude); - m_mapper->addMapping(m_sunDiameterSpinBox, SimulationStateViewModel::SunDiameter); - m_mapper->addMapping(m_multipleScatteringSlider, SimulationStateViewModel::MultipleScatteringProbability); + m_mapper->addMapping(m_sunAltitudeSlider, SimulationStateModel::SunAltitude); + m_mapper->addMapping(m_sunDiameterSpinBox, SimulationStateModel::SunDiameter); + m_mapper->addMapping(m_multipleScatteringSlider, SimulationStateModel::MultipleScatteringProbability); m_mapper->toFirst(); connect(m_sunAltitudeSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); diff --git a/src/haloray-core/gui/generalSettingsWidget.h b/src/haloray-core/gui/generalSettingsWidget.h index ae38327..4fce115 100644 --- a/src/haloray-core/gui/generalSettingsWidget.h +++ b/src/haloray-core/gui/generalSettingsWidget.h @@ -2,7 +2,7 @@ #include #include #include "../simulation/lightSource.h" -#include "simulationStateViewModel.h" +#include "simulationStateModel.h" class QDoubleSpinBox; class QSpinBox; @@ -16,7 +16,7 @@ class GeneralSettingsWidget : public QGroupBox { Q_OBJECT public: - GeneralSettingsWidget(SimulationStateViewModel *viewModel, QWidget *parent = nullptr); + GeneralSettingsWidget(SimulationStateModel *viewModel, QWidget *parent = nullptr); void setInitialValues(unsigned int raysPerFrame, unsigned int maxNumFrames); @@ -40,7 +40,7 @@ public slots: SliderSpinBox *m_multipleScatteringSlider; QDataWidgetMapper *m_mapper; - SimulationStateViewModel *m_viewModel; + SimulationStateModel *m_viewModel; }; } diff --git a/src/haloray-core/gui/mainWindow.cpp b/src/haloray-core/gui/mainWindow.cpp index 863daa0..a667acd 100644 --- a/src/haloray-core/gui/mainWindow.cpp +++ b/src/haloray-core/gui/mainWindow.cpp @@ -1,5 +1,5 @@ #include "mainWindow.h" -#include "simulationStateViewModel.h" +#include "simulationStateModel.h" #include #include #include @@ -37,7 +37,7 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) m_crystalRepository = std::make_shared(); m_engine = new SimulationEngine(m_crystalRepository, this); - m_simulationStateViewModel = new SimulationStateViewModel(m_engine, this); + m_simulationStateModel = new SimulationStateModel(m_engine, this); setupUi(); @@ -134,9 +134,9 @@ void MainWindow::setupMenuBar() QScrollArea *MainWindow::setupSideBarScrollArea() { - m_generalSettingsWidget = new GeneralSettingsWidget(m_simulationStateViewModel); + m_generalSettingsWidget = new GeneralSettingsWidget(m_simulationStateModel); m_crystalSettingsWidget = new CrystalSettingsWidget(m_crystalRepository); - m_viewSettingsWidget = new ViewSettingsWidget(m_simulationStateViewModel); + m_viewSettingsWidget = new ViewSettingsWidget(m_simulationStateModel); auto scrollContainer = new QWidget(); auto scrollableLayout = new QVBoxLayout(scrollContainer); diff --git a/src/haloray-core/gui/mainWindow.h b/src/haloray-core/gui/mainWindow.h index ed9dcf0..aa76e4b 100644 --- a/src/haloray-core/gui/mainWindow.h +++ b/src/haloray-core/gui/mainWindow.h @@ -1,7 +1,7 @@ #pragma once #include #include -#include "simulationStateViewModel.h" +#include "simulationStateModel.h" class QDoubleSpinBox; @@ -47,7 +47,7 @@ class MainWindow : public QMainWindow std::shared_ptr m_crystalRepository; SimulationEngine *m_engine; - SimulationStateViewModel *m_simulationStateViewModel; + SimulationStateModel *m_simulationStateModel; }; } diff --git a/src/haloray-core/gui/simulationStateViewModel.cpp b/src/haloray-core/gui/simulationStateModel.cpp similarity index 82% rename from src/haloray-core/gui/simulationStateViewModel.cpp rename to src/haloray-core/gui/simulationStateModel.cpp index d932e89..66d5c3f 100644 --- a/src/haloray-core/gui/simulationStateViewModel.cpp +++ b/src/haloray-core/gui/simulationStateModel.cpp @@ -1,10 +1,10 @@ -#include "simulationStateViewModel.h" +#include "simulationStateModel.h" #include "simulation/simulationEngine.h" namespace HaloRay { -SimulationStateViewModel::SimulationStateViewModel(SimulationEngine *engine, QObject *parent) +SimulationStateModel::SimulationStateModel(SimulationEngine *engine, QObject *parent) : QAbstractTableModel(parent), m_simulationEngine(engine) { @@ -25,7 +25,7 @@ SimulationStateViewModel::SimulationStateViewModel(SimulationEngine *engine, QOb }); } -QVariant SimulationStateViewModel::headerData(int section, Qt::Orientation orientation, int role) const +QVariant SimulationStateModel::headerData(int section, Qt::Orientation orientation, int role) const { if (role == Qt::DisplayRole && orientation == Qt::Horizontal) { @@ -55,21 +55,21 @@ QVariant SimulationStateViewModel::headerData(int section, Qt::Orientation orien return QVariant(); } -int SimulationStateViewModel::rowCount(const QModelIndex &parent) const +int SimulationStateModel::rowCount(const QModelIndex &parent) const { if (parent.isValid()) return 0; return 1; } -int SimulationStateViewModel::columnCount(const QModelIndex &parent) const +int SimulationStateModel::columnCount(const QModelIndex &parent) const { if (parent.isValid()) return 0; return NUM_COLUMNS; } -QVariant SimulationStateViewModel::data(const QModelIndex &index, int role) const +QVariant SimulationStateModel::data(const QModelIndex &index, int role) const { if (!index.isValid()) return QVariant(); @@ -104,7 +104,7 @@ QVariant SimulationStateViewModel::data(const QModelIndex &index, int role) cons return QVariant(); } -bool SimulationStateViewModel::setData(const QModelIndex &index, const QVariant &value, int role) +bool SimulationStateModel::setData(const QModelIndex &index, const QVariant &value, int role) { if (role != Qt::EditRole) return false; @@ -144,7 +144,7 @@ bool SimulationStateViewModel::setData(const QModelIndex &index, const QVariant return true; } -Qt::ItemFlags SimulationStateViewModel::flags(const QModelIndex &index) const +Qt::ItemFlags SimulationStateModel::flags(const QModelIndex &index) const { if (!index.isValid()) return Qt::NoItemFlags; @@ -155,49 +155,49 @@ Qt::ItemFlags SimulationStateViewModel::flags(const QModelIndex &index) const return Qt::ItemIsEditable | Qt::ItemIsEnabled; } -void SimulationStateViewModel::setSunAltitude(float altitude) +void SimulationStateModel::setSunAltitude(float altitude) { auto lightSource = m_simulationEngine->getLightSource(); lightSource.altitude = altitude; m_simulationEngine->setLightSource(lightSource); } -void SimulationStateViewModel::setSunDiameter(float diameter) +void SimulationStateModel::setSunDiameter(float diameter) { auto lightSource = m_simulationEngine->getLightSource(); lightSource.diameter = diameter; m_simulationEngine->setLightSource(lightSource); } -void SimulationStateViewModel::setCameraProjection(Projection projection) +void SimulationStateModel::setCameraProjection(Projection projection) { auto camera = m_simulationEngine->getCamera(); camera.projection = projection; m_simulationEngine->setCamera(camera); } -void SimulationStateViewModel::setCameraFov(float fov) +void SimulationStateModel::setCameraFov(float fov) { auto camera = m_simulationEngine->getCamera(); camera.fov = fov; m_simulationEngine->setCamera(camera); } -void SimulationStateViewModel::setCameraPitch(float pitch) +void SimulationStateModel::setCameraPitch(float pitch) { auto camera = m_simulationEngine->getCamera(); camera.pitch = pitch; m_simulationEngine->setCamera(camera); } -void SimulationStateViewModel::setCameraYaw(float yaw) +void SimulationStateModel::setCameraYaw(float yaw) { auto camera = m_simulationEngine->getCamera(); camera.yaw = yaw; m_simulationEngine->setCamera(camera); } -void SimulationStateViewModel::setHideSubHorizon(bool hide) +void SimulationStateModel::setHideSubHorizon(bool hide) { auto camera = m_simulationEngine->getCamera(); camera.hideSubHorizon = hide; diff --git a/src/haloray-core/gui/simulationStateViewModel.h b/src/haloray-core/gui/simulationStateModel.h similarity index 89% rename from src/haloray-core/gui/simulationStateViewModel.h rename to src/haloray-core/gui/simulationStateModel.h index b6a1ad4..c8446b6 100644 --- a/src/haloray-core/gui/simulationStateViewModel.h +++ b/src/haloray-core/gui/simulationStateModel.h @@ -6,12 +6,12 @@ namespace HaloRay { class SimulationEngine; -class SimulationStateViewModel : public QAbstractTableModel +class SimulationStateModel : public QAbstractTableModel { Q_OBJECT public: - explicit SimulationStateViewModel(SimulationEngine *engine, QObject *parent = nullptr); + explicit SimulationStateModel(SimulationEngine *engine, QObject *parent = nullptr); enum Columns { diff --git a/src/haloray-core/gui/viewSettingsWidget.cpp b/src/haloray-core/gui/viewSettingsWidget.cpp index 37c5e95..1075a60 100644 --- a/src/haloray-core/gui/viewSettingsWidget.cpp +++ b/src/haloray-core/gui/viewSettingsWidget.cpp @@ -3,14 +3,14 @@ #include #include #include -#include "simulationStateViewModel.h" +#include "simulationStateModel.h" #include "sliderSpinBox.h" #include "../simulation/camera.h" namespace HaloRay { -ViewSettingsWidget::ViewSettingsWidget(SimulationStateViewModel *viewModel, QWidget *parent) +ViewSettingsWidget::ViewSettingsWidget(SimulationStateModel *viewModel, QWidget *parent) : QGroupBox("View settings", parent), m_viewModel(viewModel) { @@ -19,11 +19,11 @@ ViewSettingsWidget::ViewSettingsWidget(SimulationStateViewModel *viewModel, QWid m_mapper = new QDataWidgetMapper(this); m_mapper->setModel(m_viewModel); m_mapper->setSubmitPolicy(QDataWidgetMapper::AutoSubmit); - m_mapper->addMapping(m_cameraProjectionComboBox, SimulationStateViewModel::CameraProjection, "currentIndex"); - m_mapper->addMapping(m_fieldOfViewSlider, SimulationStateViewModel::CameraFov); - m_mapper->addMapping(m_pitchSlider, SimulationStateViewModel::CameraPitch); - m_mapper->addMapping(m_yawSlider, SimulationStateViewModel::CameraYaw); - m_mapper->addMapping(m_hideSubHorizonCheckBox, SimulationStateViewModel::HideSubHorizon); + m_mapper->addMapping(m_cameraProjectionComboBox, SimulationStateModel::CameraProjection, "currentIndex"); + m_mapper->addMapping(m_fieldOfViewSlider, SimulationStateModel::CameraFov); + m_mapper->addMapping(m_pitchSlider, SimulationStateModel::CameraPitch); + m_mapper->addMapping(m_yawSlider, SimulationStateModel::CameraYaw); + m_mapper->addMapping(m_hideSubHorizonCheckBox, SimulationStateModel::HideSubHorizon); m_mapper->toFirst(); connect(m_cameraProjectionComboBox, QOverload::of(&QComboBox::currentIndexChanged), m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); @@ -39,7 +39,7 @@ ViewSettingsWidget::ViewSettingsWidget(SimulationStateViewModel *viewModel, QWid */ m_maximumFovMapper = new QDataWidgetMapper(this); m_maximumFovMapper->setModel(m_viewModel); - m_maximumFovMapper->addMapping(m_fieldOfViewSlider, SimulationStateViewModel::CameraMaxFov, "maximum"); + m_maximumFovMapper->addMapping(m_fieldOfViewSlider, SimulationStateModel::CameraMaxFov, "maximum"); m_maximumFovMapper->toFirst(); connect(m_brightnessSlider, &SliderSpinBox::valueChanged, this, &ViewSettingsWidget::brightnessChanged); diff --git a/src/haloray-core/gui/viewSettingsWidget.h b/src/haloray-core/gui/viewSettingsWidget.h index 5ecf892..eb1b1f3 100644 --- a/src/haloray-core/gui/viewSettingsWidget.h +++ b/src/haloray-core/gui/viewSettingsWidget.h @@ -10,13 +10,13 @@ namespace HaloRay { class SliderSpinBox; -class SimulationStateViewModel; +class SimulationStateModel; class ViewSettingsWidget : public QGroupBox { Q_OBJECT public: - ViewSettingsWidget(SimulationStateViewModel *viewModel, QWidget *parent = nullptr); + ViewSettingsWidget(SimulationStateModel *viewModel, QWidget *parent = nullptr); void setBrightness(double brightness); signals: @@ -34,7 +34,7 @@ class ViewSettingsWidget : public QGroupBox SliderSpinBox *m_brightnessSlider; QCheckBox *m_lockToLightSource; - SimulationStateViewModel *m_viewModel; + SimulationStateModel *m_viewModel; QDataWidgetMapper *m_mapper; QDataWidgetMapper *m_maximumFovMapper; }; diff --git a/src/haloray-core/haloray-core.pro b/src/haloray-core/haloray-core.pro index 806e61a..1e25fa0 100644 --- a/src/haloray-core/haloray-core.pro +++ b/src/haloray-core/haloray-core.pro @@ -31,7 +31,7 @@ HEADERS += \ gui/mainWindow.h \ gui/openGLWidget.h \ gui/renderButton.h \ - gui/simulationStateViewModel.h \ + gui/simulationStateModel.h \ gui/sliderSpinBox.h \ gui/viewSettingsWidget.h \ opengl/texture.h \ @@ -50,7 +50,7 @@ SOURCES += \ gui/mainWindow.cpp \ gui/openGLWidget.cpp \ gui/renderButton.cpp \ - gui/simulationStateViewModel.cpp \ + gui/simulationStateModel.cpp \ gui/sliderSpinBox.cpp \ gui/viewSettingsWidget.cpp \ opengl/texture.cpp \ From f0943825acf79542863c7193e0344ee044700f63 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 31 Jan 2021 15:09:42 +0200 Subject: [PATCH 043/184] Add max rays per frame and max iterations to sim state model Now the maximum number of rays per frame and the maximum number of iterations per simulation are part of the simulation state model class, so they don't have to be updated with a mess of signals and slots all over. --- .../gui/generalSettingsWidget.cpp | 35 +++---------------- src/haloray-core/gui/generalSettingsWidget.h | 9 ----- src/haloray-core/gui/mainWindow.cpp | 18 +++++----- src/haloray-core/gui/openGLWidget.cpp | 17 ++++----- src/haloray-core/gui/openGLWidget.h | 8 ++--- src/haloray-core/gui/simulationStateModel.cpp | 27 +++++++++++++- src/haloray-core/gui/simulationStateModel.h | 8 +++++ 7 files changed, 57 insertions(+), 65 deletions(-) diff --git a/src/haloray-core/gui/generalSettingsWidget.cpp b/src/haloray-core/gui/generalSettingsWidget.cpp index 20e88ae..ee54ef7 100644 --- a/src/haloray-core/gui/generalSettingsWidget.cpp +++ b/src/haloray-core/gui/generalSettingsWidget.cpp @@ -19,26 +19,15 @@ GeneralSettingsWidget::GeneralSettingsWidget(SimulationStateModel *viewModel, QW m_mapper->addMapping(m_sunAltitudeSlider, SimulationStateModel::SunAltitude); m_mapper->addMapping(m_sunDiameterSpinBox, SimulationStateModel::SunDiameter); m_mapper->addMapping(m_multipleScatteringSlider, SimulationStateModel::MultipleScatteringProbability); + m_mapper->addMapping(m_raysPerFrameSpinBox, SimulationStateModel::MaximumRaysPerFrame); + m_mapper->addMapping(m_maximumFramesSpinBox, SimulationStateModel::MaximumIterations); m_mapper->toFirst(); connect(m_sunAltitudeSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); connect(m_sunDiameterSpinBox, QOverload::of(&QDoubleSpinBox::valueChanged), m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); connect(m_multipleScatteringSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); - - connect(m_raysPerFrameSpinBox, QOverload::of(&QSpinBox::valueChanged), [this](int value) { - emit numRaysChanged((unsigned int)value); - }); - - connect(m_maximumFramesSpinBox, QOverload::of(&QSpinBox::valueChanged), [this](int value) { - emit maximumNumberOfIterationsChanged((unsigned int)value); - }); -} - -void GeneralSettingsWidget::setInitialValues(unsigned int raysPerFrame, - unsigned int maxNumFrames) -{ - m_raysPerFrameSpinBox->setValue(raysPerFrame); - m_maximumFramesSpinBox->setValue(maxNumFrames); + connect(m_raysPerFrameSpinBox, QOverload::of(&QSpinBox::valueChanged), m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); + connect(m_maximumFramesSpinBox, QOverload::of(&QSpinBox::valueChanged), m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); } void GeneralSettingsWidget::setupUi() @@ -53,20 +42,17 @@ void GeneralSettingsWidget::setupUi() m_sunDiameterSpinBox->setSingleStep(0.1); m_sunDiameterSpinBox->setMinimum(0.01); m_sunDiameterSpinBox->setMaximum(30.0); - m_sunDiameterSpinBox->setValue(0.5); m_raysPerFrameSpinBox = new QSpinBox(); m_raysPerFrameSpinBox->setSingleStep(1000); m_raysPerFrameSpinBox->setMinimum(1); m_raysPerFrameSpinBox->setMaximum(2000000000); - m_raysPerFrameSpinBox->setValue(500000); m_raysPerFrameSpinBox->setGroupSeparatorShown(true); m_maximumFramesSpinBox = new QSpinBox(); m_raysPerFrameSpinBox->setSingleStep(60); m_maximumFramesSpinBox->setMinimum(100); m_maximumFramesSpinBox->setMaximum(1000000000); - m_maximumFramesSpinBox->setValue(100000000); m_maximumFramesSpinBox->setGroupSeparatorShown(true); m_multipleScatteringSlider = new SliderSpinBox(); @@ -81,22 +67,9 @@ void GeneralSettingsWidget::setupUi() layout->addRow(tr("Double scattering"), m_multipleScatteringSlider); } -LightSource GeneralSettingsWidget::stateToLightSource() const -{ - LightSource light; - light.altitude = m_sunAltitudeSlider->value(); - light.diameter = m_sunDiameterSpinBox->value(); - return light; -} - void GeneralSettingsWidget::toggleMaxIterationsSpinBoxStatus() { m_maximumFramesSpinBox->setEnabled(!m_maximumFramesSpinBox->isEnabled()); } -void GeneralSettingsWidget::setMaxRaysPerFrame(unsigned int maxRays) -{ - m_raysPerFrameSpinBox->setMaximum((int)maxRays); -} - } diff --git a/src/haloray-core/gui/generalSettingsWidget.h b/src/haloray-core/gui/generalSettingsWidget.h index 4fce115..d325c98 100644 --- a/src/haloray-core/gui/generalSettingsWidget.h +++ b/src/haloray-core/gui/generalSettingsWidget.h @@ -17,20 +17,11 @@ class GeneralSettingsWidget : public QGroupBox Q_OBJECT public: GeneralSettingsWidget(SimulationStateModel *viewModel, QWidget *parent = nullptr); - void setInitialValues(unsigned int raysPerFrame, - unsigned int maxNumFrames); - - -signals: - void numRaysChanged(unsigned int rays); - void maximumNumberOfIterationsChanged(unsigned int iterations); public slots: void toggleMaxIterationsSpinBoxStatus(); - void setMaxRaysPerFrame(unsigned int maxRays); private: - LightSource stateToLightSource() const; void setupUi(); SliderSpinBox *m_sunAltitudeSlider; diff --git a/src/haloray-core/gui/mainWindow.cpp b/src/haloray-core/gui/mainWindow.cpp index a667acd..75955e0 100644 --- a/src/haloray-core/gui/mainWindow.cpp +++ b/src/haloray-core/gui/mainWindow.cpp @@ -60,17 +60,16 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) m_viewSettingsWidget->setBrightness(1.0); // Signals from OpenGL widget - connect(m_openGLWidget, &OpenGLWidget::maxRaysPerFrameChanged, m_generalSettingsWidget, &GeneralSettingsWidget::setMaxRaysPerFrame); connect(m_openGLWidget, &OpenGLWidget::nextIteration, m_progressBar, &QProgressBar::setValue); - connect(m_generalSettingsWidget, &GeneralSettingsWidget::numRaysChanged, [this](unsigned int value) { - m_engine->setRaysPerStep(value); - m_openGLWidget->update(); + // Signals from view model + connect(m_simulationStateModel, &SimulationStateModel::dataChanged, [this](const QModelIndex &topLeft, const QModelIndex &bottomRight) { + if (topLeft.row() != 0 || bottomRight.row() != 0) return; + auto maxIterationsChanged = topLeft.column() <= SimulationStateModel::MaximumIterations && bottomRight.column() >= SimulationStateModel::MaximumIterations; + if (maxIterationsChanged) { + m_progressBar->setMaximum(m_simulationStateModel->getMaxIterations()); + } }); - connect(m_generalSettingsWidget, &GeneralSettingsWidget::maximumNumberOfIterationsChanged, m_openGLWidget, &OpenGLWidget::setMaxIterations); - connect(m_generalSettingsWidget, &GeneralSettingsWidget::maximumNumberOfIterationsChanged, m_progressBar, &QProgressBar::setMaximum); - - m_generalSettingsWidget->setInitialValues(m_engine->getRaysPerStep(), 600); // Signals for menu bar connect(m_quitAction, &QAction::triggered, QApplication::instance(), &QApplication::quit); @@ -106,7 +105,7 @@ void MainWindow::setupUi() setupMenuBar(); - m_openGLWidget = new OpenGLWidget(m_engine); + m_openGLWidget = new OpenGLWidget(m_engine, m_simulationStateModel); m_progressBar = setupProgressBar(); m_renderButton = new RenderButton(); @@ -163,6 +162,7 @@ QProgressBar *MainWindow::setupProgressBar() auto progressBar = new QProgressBar(); progressBar->setTextVisible(false); progressBar->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Fixed); + progressBar->setMaximum(m_simulationStateModel->getMaxIterations()); return progressBar; } diff --git a/src/haloray-core/gui/openGLWidget.cpp b/src/haloray-core/gui/openGLWidget.cpp index eb876d6..d0262ee 100644 --- a/src/haloray-core/gui/openGLWidget.cpp +++ b/src/haloray-core/gui/openGLWidget.cpp @@ -4,6 +4,7 @@ #include #include #include +#include "simulationStateModel.h" #include "../simulation/simulationEngine.h" #include "../simulation/camera.h" #include "../simulation/lightSource.h" @@ -13,13 +14,13 @@ namespace HaloRay { -OpenGLWidget::OpenGLWidget(SimulationEngine *engine, QWidget *parent) +OpenGLWidget::OpenGLWidget(SimulationEngine *engine, SimulationStateModel *viewModel, QWidget *parent) : QOpenGLWidget(parent), m_engine(engine), m_dragging(false), m_previousDragPoint(QPoint(0, 0)), m_exposure(1.0f), - m_maxIterations(1) + m_viewModel(viewModel) { setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding); setUpdateBehavior(UpdateBehavior::PartialUpdate); @@ -36,7 +37,7 @@ void OpenGLWidget::toggleRendering() void OpenGLWidget::paintGL() { - if (m_engine->isRunning() && m_engine->getIteration() < m_maxIterations) + if (m_engine->isRunning() && m_engine->getIteration() < m_viewModel->getMaxIterations()) { m_engine->step(); emit nextIteration(m_engine->getIteration()); @@ -65,9 +66,9 @@ void OpenGLWidget::initializeGL() int maxComputeGroups; glGetIntegeri_v(GL_MAX_COMPUTE_WORK_GROUP_COUNT, 0, &maxComputeGroups); - const int absoluteMaxRaysPerFrame = 5000000; + const int absoluteMaxRaysPerFrame = 500000; int maxRaysPerFrame = std::min(absoluteMaxRaysPerFrame, maxComputeGroups); - emit maxRaysPerFrameChanged(maxRaysPerFrame); + m_viewModel->setMaxRaysPerFrame(maxRaysPerFrame); } void OpenGLWidget::mousePressEvent(QMouseEvent *event) @@ -160,12 +161,6 @@ void OpenGLWidget::setBrightness(double brightness) update(); } -void OpenGLWidget::setMaxIterations(unsigned int maxIterations) -{ - m_maxIterations = maxIterations; - update(); -} - QSize OpenGLWidget::sizeHint() const { return QSize(800, 600); diff --git a/src/haloray-core/gui/openGLWidget.h b/src/haloray-core/gui/openGLWidget.h index d13cdc8..ab69010 100644 --- a/src/haloray-core/gui/openGLWidget.h +++ b/src/haloray-core/gui/openGLWidget.h @@ -1,4 +1,5 @@ #pragma once + #include #include #include @@ -17,26 +18,25 @@ class QPoint; namespace HaloRay { class SimulationEngine; +class SimulationStateModel; class OpenGLWidget : public QOpenGLWidget, protected QOpenGLFunctions_4_4_Core { Q_OBJECT public: - explicit OpenGLWidget(SimulationEngine *engine, QWidget *parent = nullptr); + explicit OpenGLWidget(SimulationEngine *engine, SimulationStateModel *viewModel, QWidget *parent = nullptr); QSize sizeHint() const override; QSize minimumSizeHint() const override; public slots: void toggleRendering(); void setBrightness(double brightness); - void setMaxIterations(unsigned int maxIterations); signals: void fieldOfViewChanged(double fieldOfView); void cameraOrientationChanged(double pitch, double yaw); void nextIteration(unsigned int iteration); - void maxRaysPerFrameChanged(unsigned int maxRays); protected: void paintGL() override; @@ -55,7 +55,7 @@ public slots: bool m_dragging; QPoint m_previousDragPoint; float m_exposure; - unsigned int m_maxIterations; + SimulationStateModel *m_viewModel; }; } diff --git a/src/haloray-core/gui/simulationStateModel.cpp b/src/haloray-core/gui/simulationStateModel.cpp index 66d5c3f..44bbfef 100644 --- a/src/haloray-core/gui/simulationStateModel.cpp +++ b/src/haloray-core/gui/simulationStateModel.cpp @@ -6,7 +6,8 @@ namespace HaloRay SimulationStateModel::SimulationStateModel(SimulationEngine *engine, QObject *parent) : QAbstractTableModel(parent), - m_simulationEngine(engine) + m_simulationEngine(engine), + m_maximumIterations(600) { connect(m_simulationEngine, &SimulationEngine::cameraChanged, [this]() { emit dataChanged(createIndex(0, CameraProjection), createIndex(0, HideSubHorizon)); @@ -49,6 +50,10 @@ QVariant SimulationStateModel::headerData(int section, Qt::Orientation orientati return "Hide sub-horizon"; case MultipleScatteringProbability: return "Multiple scattering probability"; + case MaximumRaysPerFrame: + return "Maximum rays per frame"; + case MaximumIterations: + return "Maximum iterations"; } } @@ -97,6 +102,10 @@ QVariant SimulationStateModel::data(const QModelIndex &index, int role) const return m_simulationEngine->getCamera().hideSubHorizon; case MultipleScatteringProbability: return m_simulationEngine->getMultipleScatteringProbability(); + case MaximumRaysPerFrame: + return m_simulationEngine->getRaysPerStep(); + case MaximumIterations: + return m_maximumIterations; default: break; } @@ -136,6 +145,12 @@ bool SimulationStateModel::setData(const QModelIndex &index, const QVariant &val case MultipleScatteringProbability: m_simulationEngine->setMultipleScatteringProbability(value.toDouble()); break; + case MaximumRaysPerFrame: + m_simulationEngine->setRaysPerStep(value.toUInt()); + break; + case MaximumIterations: + m_maximumIterations = value.toUInt(); + break; default: return false; } @@ -155,6 +170,16 @@ Qt::ItemFlags SimulationStateModel::flags(const QModelIndex &index) const return Qt::ItemIsEditable | Qt::ItemIsEnabled; } +void SimulationStateModel::setMaxRaysPerFrame(unsigned int maxRaysPerFrame) +{ + setData(index(0, MaximumRaysPerFrame), maxRaysPerFrame); +} + +unsigned int SimulationStateModel::getMaxIterations() const +{ + return m_maximumIterations; +} + void SimulationStateModel::setSunAltitude(float altitude) { auto lightSource = m_simulationEngine->getLightSource(); diff --git a/src/haloray-core/gui/simulationStateModel.h b/src/haloray-core/gui/simulationStateModel.h index c8446b6..2b20937 100644 --- a/src/haloray-core/gui/simulationStateModel.h +++ b/src/haloray-core/gui/simulationStateModel.h @@ -24,6 +24,8 @@ class SimulationStateModel : public QAbstractTableModel CameraYaw, HideSubHorizon, MultipleScatteringProbability, + MaximumRaysPerFrame, + MaximumIterations, NUM_COLUMNS }; @@ -39,6 +41,10 @@ class SimulationStateModel : public QAbstractTableModel Qt::ItemFlags flags(const QModelIndex& index) const override; + // Convenience methods + void setMaxRaysPerFrame(unsigned int maxRaysPerFrame); + unsigned int getMaxIterations() const; + private: SimulationEngine *m_simulationEngine; void setSunAltitude(float altitude); @@ -48,6 +54,8 @@ class SimulationStateModel : public QAbstractTableModel void setCameraPitch(float pitch); void setCameraYaw(float yaw); void setHideSubHorizon(bool hide); + + unsigned int m_maximumIterations; }; } From 4e040e27ed37c326a692be81663f87fe9d5b639a Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 31 Jan 2021 15:15:09 +0200 Subject: [PATCH 044/184] Update build automation to Qt 5.15.0 and MSVC 2019 --- appveyor.yml | 12 ++++++------ scripts/build.ps1 | 4 ++-- scripts/test.ps1 | 4 ++-- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index 5202828..02f8c2b 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -1,13 +1,13 @@ -version: '2.4.0-{build}' +version: "2.4.0-{build}" branches: only: - master - develop -image: Visual Studio 2017 +image: Visual Studio 2019 clone_depth: 1 environment: - Qt5_DIR: C:\Qt\5.12\msvc2017_64\ - VCINSTALLDIR: C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\ + Qt5_DIR: C:\Qt\5.15.0\msvc2019_64 + VCINSTALLDIR: C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\ build_script: - ps: scripts\build.ps1 after_build: @@ -15,13 +15,13 @@ after_build: test_script: - ps: scripts\test.ps1 artifacts: - - path: '*.zip' + - path: "*.zip" deploy: - provider: GitHub release: HaloRay $(appveyor_build_version) artifact: /.*\.zip/ draft: true - description: '' + description: "" skip_tags: true auth_token: secure: pb9keaNklmNgmLaw1doReZDdP5Oh/pLZPdwjt+anpcoi34MyqAbFoJbiHJMcWkgD diff --git a/scripts/build.ps1 b/scripts/build.ps1 index ff15305..fb68dca 100644 --- a/scripts/build.ps1 +++ b/scripts/build.ps1 @@ -1,6 +1,6 @@ # Windows build script for Appveyor -pushd "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build" +pushd "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build" cmd /c "vcvars64.bat&set" | foreach { if ($_ -match "=") { @@ -8,7 +8,7 @@ foreach { } } popd -Write-Host "`nVisual Studio 2017 Command Prompt variables set." -ForegroundColor Yellow +Write-Host "`nVisual Studio 2019 Command Prompt variables set." -ForegroundColor Yellow $extraParameters = if ($gitBranch -eq "master") { $version = ${env:APPVEYOR_BUILD_VERSION}.Split('-')[0] diff --git a/scripts/test.ps1 b/scripts/test.ps1 index f44b931..c859d28 100644 --- a/scripts/test.ps1 +++ b/scripts/test.ps1 @@ -1,6 +1,6 @@ # Windows test script for Appveyor -pushd "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build" +pushd "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build" cmd /c "vcvars64.bat&set" | foreach { if ($_ -match "=") { @@ -8,7 +8,7 @@ foreach { } } popd -Write-Host "`nVisual Studio 2017 Command Prompt variables set." -ForegroundColor Yellow +Write-Host "`nVisual Studio 2019 Command Prompt variables set." -ForegroundColor Yellow pushd cd build From 53ffa79b3d0da2dc3896b05942ab23b4d50a3d35 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 31 Jan 2021 15:16:19 +0200 Subject: [PATCH 045/184] Update changelog --- CHANGELOG.md | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8bec13b..d2d4e0f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,15 +8,19 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## Unreleased ### Changed + - Force application to use native desktop OpenGL instead of ANGLE or software renderer - Build system switched to qmake from CMake +- Rewrite most of the GUI code to use Qt model/view architecture ## 2.4.0 - 2019-07-29 ### Added + - Show error dialog and exit if GPU does not support OpenGL 4.4 ### Fixed + - Bug where changing multiple scattering probability did not trigger a new render if maximum iterations were reached - Crashing on Intel GPUs with Linux and Mesa3D @@ -24,57 +28,69 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## 2.3.1 - 2019-07-14 ### Fixed + - Build configuration bug where resources were not being linked on Linux ## 2.3.0 - 2019-07-13 ### Added + - Added menu bar with option to save simulation result as image - Added slider for setting the probability of simple double scattering ### Changed + - Replaced Add Population and Remove Population texts with icons ## 2.2.0 - 2019-07-09 ### Added + - Created an application icon for HaloRay - Added possibility to add preset crystal populations ### Changed + - Disabled "Remove population" button when there is only one population in simulation - Added multiple crystal populations by default ## 2.1.1 - 2019-07-08 ### Fixed + - Fixed bug where removing the only crystal population caused the UI controls not to work anymore ## 2.1.0 - 2019-07-07 ### Added + - Gave main window an initial size hint - Support for multiple crystal populations ### Changed + - Made sidebar scrollable when the window is small enough - Made UI show field of view in degrees - Limited field of view for stereographic, rectilinear and orthographic projections ### Fixed + - Fixed bug where field of view sometimes did not update correctly when choosing a new projection ## 2.0.0 - 2019-07-02 ### Changed + - Replaced Nuklear UI with Qt ## 1.1.0 - 2019-06-17 ### Changed + - Renamed C-axis orientation to simply C-axis tilt ### Fixed + - Fixed bug where uniform C-axis orientation was messing with C-axis rotation ## 1.0.0 - 2019-06-16 From a28abb5c68fcda6a633df56e31960ca9a6b47053 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 31 Jan 2021 15:19:37 +0200 Subject: [PATCH 046/184] Fix Qt version in build automation to match what Appveyor offer --- README.md | 8 ++++---- appveyor.yml | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 34dad62..b5c13e7 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,5 @@ # HaloRay ![](images/hexagon_small.png) + [![Build status](https://ci.appveyor.com/api/projects/status/5k9laekby84x2ex1/branch/develop?svg=true)](https://ci.appveyor.com/project/naavis/haloray/branch/develop) HaloRay simulates the reflection and refraction of sun light inside hexagonal @@ -35,7 +36,7 @@ Here are some general settings for the whole simulation. - **Sun altitude:** Sun altitude from the horizon in degrees - **Sun diameter:** Angular diameter of the sun in degrees - **Rays per frame:** Number of rays traced through individual crystals per - rendered frame + rendered frame - If the user interface slows down a lot during rendering, lower this value - On an NVIDIA GeForce GTX 1070 a good value seems to be around 500 000 - The maximum value for this parameter may be limited by your GPU @@ -74,7 +75,7 @@ The following table shows parameters needed to simulate crystal orientations known to happen in nature. | Orientation | Tilt around a-axis | Rotation around c-axis | -|-------------|--------------------|------------------------| +| ----------- | ------------------ | ---------------------- | | Column | 90 | Uniform | | Plate | 0 | Uniform | | Parry | 90 | 0 | @@ -127,7 +128,7 @@ sudo apt-get install qt5-default On Windows you need to set either `Qt5_DIR` or `CMAKE_PREFIX_PATH` environment variable to point to the Qt prefix path, e.g. -`C:\Qt\5.12.3\msvc2017_64\` +`C:\Qt\5.15.2\msvc2019_64\` Finally build the project by running: @@ -163,4 +164,3 @@ Appveyor CI server. - [Panu Lahtinen](https://github.com/pnuu) for additional Linux support - Jukka Ruoskanen for making HaloPoint 2.0 back in the day and inspiring me to start working on HaloRay - [Jaakko Lehtinen](https://users.aalto.fi/~lehtinj7/) for super valuable lessons in computer graphics - diff --git a/appveyor.yml b/appveyor.yml index 02f8c2b..20fbd03 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -6,7 +6,7 @@ branches: image: Visual Studio 2019 clone_depth: 1 environment: - Qt5_DIR: C:\Qt\5.15.0\msvc2019_64 + Qt5_DIR: C:\Qt\5.15.2\msvc2019_64 VCINSTALLDIR: C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\ build_script: - ps: scripts\build.ps1 From bcd46307b2403a76c2711fa15518cdfb4fbb7fbd Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 31 Jan 2021 15:24:27 +0200 Subject: [PATCH 047/184] Update changelog for better wording --- CHANGELOG.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d2d4e0f..c1fd198 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,9 +9,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed -- Force application to use native desktop OpenGL instead of ANGLE or software renderer +- Forced application to use native desktop OpenGL instead of ANGLE or software renderer - Build system switched to qmake from CMake -- Rewrite most of the GUI code to use Qt model/view architecture +- Rewrote most of the GUI code to use Qt model/view architecture ## 2.4.0 - 2019-07-29 From d8ed0b8f7e1d25bc6b2c5bcc6cdfccf96f31c808 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 31 Jan 2021 18:17:10 +0200 Subject: [PATCH 048/184] Fix bug where there was no upper limit for frames per second --- .../gui/generalSettingsWidget.cpp | 8 +++++++- src/haloray-core/gui/openGLWidget.cpp | 4 ++-- src/haloray-core/gui/simulationStateModel.cpp | 20 ++++++++++++++++++- src/haloray-core/gui/simulationStateModel.h | 4 ++++ 4 files changed, 32 insertions(+), 4 deletions(-) diff --git a/src/haloray-core/gui/generalSettingsWidget.cpp b/src/haloray-core/gui/generalSettingsWidget.cpp index ee54ef7..ff3bf8d 100644 --- a/src/haloray-core/gui/generalSettingsWidget.cpp +++ b/src/haloray-core/gui/generalSettingsWidget.cpp @@ -28,6 +28,12 @@ GeneralSettingsWidget::GeneralSettingsWidget(SimulationStateModel *viewModel, QW connect(m_multipleScatteringSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); connect(m_raysPerFrameSpinBox, QOverload::of(&QSpinBox::valueChanged), m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); connect(m_maximumFramesSpinBox, QOverload::of(&QSpinBox::valueChanged), m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); + + connect(m_viewModel, &SimulationStateModel::dataChanged, [this](const QModelIndex &topLeft, const QModelIndex &bottomRight) { + if (topLeft.row() == 0 && topLeft.column() <= SimulationStateModel::RaysPerFrameUpperLimit && bottomRight.column() >= SimulationStateModel::RaysPerFrameUpperLimit) { + m_raysPerFrameSpinBox->setMaximum(m_viewModel->getRaysPerFrameUpperLimit()); + } + }); } void GeneralSettingsWidget::setupUi() @@ -46,7 +52,7 @@ void GeneralSettingsWidget::setupUi() m_raysPerFrameSpinBox = new QSpinBox(); m_raysPerFrameSpinBox->setSingleStep(1000); m_raysPerFrameSpinBox->setMinimum(1); - m_raysPerFrameSpinBox->setMaximum(2000000000); + m_raysPerFrameSpinBox->setMaximum(m_viewModel->getRaysPerFrameUpperLimit()); m_raysPerFrameSpinBox->setGroupSeparatorShown(true); m_maximumFramesSpinBox = new QSpinBox(); diff --git a/src/haloray-core/gui/openGLWidget.cpp b/src/haloray-core/gui/openGLWidget.cpp index d0262ee..aad6c24 100644 --- a/src/haloray-core/gui/openGLWidget.cpp +++ b/src/haloray-core/gui/openGLWidget.cpp @@ -66,9 +66,9 @@ void OpenGLWidget::initializeGL() int maxComputeGroups; glGetIntegeri_v(GL_MAX_COMPUTE_WORK_GROUP_COUNT, 0, &maxComputeGroups); - const int absoluteMaxRaysPerFrame = 500000; + const int absoluteMaxRaysPerFrame = 5000000; int maxRaysPerFrame = std::min(absoluteMaxRaysPerFrame, maxComputeGroups); - m_viewModel->setMaxRaysPerFrame(maxRaysPerFrame); + m_viewModel->setRaysPerFrameUpperLimit(maxRaysPerFrame); } void OpenGLWidget::mousePressEvent(QMouseEvent *event) diff --git a/src/haloray-core/gui/simulationStateModel.cpp b/src/haloray-core/gui/simulationStateModel.cpp index 44bbfef..7684e85 100644 --- a/src/haloray-core/gui/simulationStateModel.cpp +++ b/src/haloray-core/gui/simulationStateModel.cpp @@ -7,7 +7,8 @@ namespace HaloRay SimulationStateModel::SimulationStateModel(SimulationEngine *engine, QObject *parent) : QAbstractTableModel(parent), m_simulationEngine(engine), - m_maximumIterations(600) + m_maximumIterations(600), + m_raysPerFrameUpperLimit(50000000) { connect(m_simulationEngine, &SimulationEngine::cameraChanged, [this]() { emit dataChanged(createIndex(0, CameraProjection), createIndex(0, HideSubHorizon)); @@ -54,6 +55,8 @@ QVariant SimulationStateModel::headerData(int section, Qt::Orientation orientati return "Maximum rays per frame"; case MaximumIterations: return "Maximum iterations"; + case RaysPerFrameUpperLimit: + return "Rays per frame upper limit"; } } @@ -106,6 +109,8 @@ QVariant SimulationStateModel::data(const QModelIndex &index, int role) const return m_simulationEngine->getRaysPerStep(); case MaximumIterations: return m_maximumIterations; + case RaysPerFrameUpperLimit: + return m_raysPerFrameUpperLimit; default: break; } @@ -151,6 +156,9 @@ bool SimulationStateModel::setData(const QModelIndex &index, const QVariant &val case MaximumIterations: m_maximumIterations = value.toUInt(); break; + case RaysPerFrameUpperLimit: + m_raysPerFrameUpperLimit = value.toUInt(); + break; default: return false; } @@ -175,6 +183,16 @@ void SimulationStateModel::setMaxRaysPerFrame(unsigned int maxRaysPerFrame) setData(index(0, MaximumRaysPerFrame), maxRaysPerFrame); } +void SimulationStateModel::setRaysPerFrameUpperLimit(unsigned int upperLimit) +{ + setData(index(0, RaysPerFrameUpperLimit), upperLimit); +} + +unsigned int SimulationStateModel::getRaysPerFrameUpperLimit() const +{ + return m_raysPerFrameUpperLimit; +} + unsigned int SimulationStateModel::getMaxIterations() const { return m_maximumIterations; diff --git a/src/haloray-core/gui/simulationStateModel.h b/src/haloray-core/gui/simulationStateModel.h index 2b20937..e1b4c5c 100644 --- a/src/haloray-core/gui/simulationStateModel.h +++ b/src/haloray-core/gui/simulationStateModel.h @@ -26,6 +26,7 @@ class SimulationStateModel : public QAbstractTableModel MultipleScatteringProbability, MaximumRaysPerFrame, MaximumIterations, + RaysPerFrameUpperLimit, NUM_COLUMNS }; @@ -43,6 +44,8 @@ class SimulationStateModel : public QAbstractTableModel // Convenience methods void setMaxRaysPerFrame(unsigned int maxRaysPerFrame); + void setRaysPerFrameUpperLimit(unsigned int upperLimit); + unsigned int getRaysPerFrameUpperLimit() const; unsigned int getMaxIterations() const; private: @@ -56,6 +59,7 @@ class SimulationStateModel : public QAbstractTableModel void setHideSubHorizon(bool hide); unsigned int m_maximumIterations; + unsigned int m_raysPerFrameUpperLimit; }; } From 3639e5b8da5640a273d2b63cc328ddc55b741320 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 31 Jan 2021 18:40:58 +0200 Subject: [PATCH 049/184] Extract separate function for setting default surface format --- src/haloray/main.cpp | 30 +++++++++++++++++------------- 1 file changed, 17 insertions(+), 13 deletions(-) diff --git a/src/haloray/main.cpp b/src/haloray/main.cpp index 15f88ef..96816de 100644 --- a/src/haloray/main.cpp +++ b/src/haloray/main.cpp @@ -7,6 +7,9 @@ #include #include "gui/mainWindow.h" +const int RequiredOpenGLMajorVersion = 4; +const int RequiredOpenGLMinorVersion = 4; + void logHandler(QtMsgType type, const QMessageLogContext &context, const QString &msg) { QByteArray localMsg = msg.toLocal8Bit(); @@ -42,28 +45,29 @@ bool supportsOpenGL(int requiredMajorVersion, int requiredMinorVersion) (majorVersion == requiredMajorVersion && minorVersion >= requiredMinorVersion); } -int main(int argc, char *argv[]) +void setDefaultSurfaceFormat() { - Q_INIT_RESOURCE(haloray); - QCoreApplication::setAttribute(Qt::AA_UseDesktopOpenGL); - qInstallMessageHandler(logHandler); - QApplication app(argc, argv); - - const int requiredOpenGLMajorVersion = 4; - const int requiredOpenGLMinorVersion = 4; - QSurfaceFormat format; - format.setVersion(requiredOpenGLMajorVersion, requiredOpenGLMinorVersion); + format.setVersion(RequiredOpenGLMajorVersion, RequiredOpenGLMinorVersion); format.setProfile(QSurfaceFormat::OpenGLContextProfile::CoreProfile); format.setSwapBehavior(QSurfaceFormat::SwapBehavior::DoubleBuffer); format.setSwapInterval(1); QSurfaceFormat::setDefaultFormat(format); +} + +int main(int argc, char *argv[]) +{ + Q_INIT_RESOURCE(haloray); + QCoreApplication::setAttribute(Qt::AA_UseDesktopOpenGL); + setDefaultSurfaceFormat(); + qInstallMessageHandler(logHandler); + QApplication app(argc, argv); - if (!supportsOpenGL(requiredOpenGLMajorVersion, requiredOpenGLMinorVersion)) + if (!supportsOpenGL(RequiredOpenGLMajorVersion, RequiredOpenGLMinorVersion)) { QString errorMessage = QString(QObject::tr("Your graphics processing unit does not support OpenGL %1.%2, which is required to run HaloRay.")) - .arg(requiredOpenGLMajorVersion) - .arg(requiredOpenGLMinorVersion); + .arg(RequiredOpenGLMajorVersion) + .arg(RequiredOpenGLMinorVersion); QMessageBox::critical(nullptr, QObject::tr("Incompatible GPU"), errorMessage); return 1; } From 2c080654044c59e16f83c503b91741f36a8890d8 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 31 Jan 2021 18:56:45 +0200 Subject: [PATCH 050/184] Fix bug where changes do not show up once max iterations reached Once the simulation had reached max iterations, changes to the GUI controls wouldn't trigger a new simulation anymore. --- src/haloray-core/gui/generalSettingsWidget.cpp | 2 +- src/haloray-core/gui/openGLWidget.cpp | 5 +++-- src/haloray-core/gui/simulationStateModel.cpp | 16 ++++++++++------ src/haloray-core/gui/simulationStateModel.h | 4 ++-- 4 files changed, 16 insertions(+), 11 deletions(-) diff --git a/src/haloray-core/gui/generalSettingsWidget.cpp b/src/haloray-core/gui/generalSettingsWidget.cpp index ff3bf8d..f5ed52f 100644 --- a/src/haloray-core/gui/generalSettingsWidget.cpp +++ b/src/haloray-core/gui/generalSettingsWidget.cpp @@ -19,7 +19,7 @@ GeneralSettingsWidget::GeneralSettingsWidget(SimulationStateModel *viewModel, QW m_mapper->addMapping(m_sunAltitudeSlider, SimulationStateModel::SunAltitude); m_mapper->addMapping(m_sunDiameterSpinBox, SimulationStateModel::SunDiameter); m_mapper->addMapping(m_multipleScatteringSlider, SimulationStateModel::MultipleScatteringProbability); - m_mapper->addMapping(m_raysPerFrameSpinBox, SimulationStateModel::MaximumRaysPerFrame); + m_mapper->addMapping(m_raysPerFrameSpinBox, SimulationStateModel::RaysPerFrame); m_mapper->addMapping(m_maximumFramesSpinBox, SimulationStateModel::MaximumIterations); m_mapper->toFirst(); diff --git a/src/haloray-core/gui/openGLWidget.cpp b/src/haloray-core/gui/openGLWidget.cpp index aad6c24..d1315be 100644 --- a/src/haloray-core/gui/openGLWidget.cpp +++ b/src/haloray-core/gui/openGLWidget.cpp @@ -24,6 +24,9 @@ OpenGLWidget::OpenGLWidget(SimulationEngine *engine, SimulationStateModel *viewM { setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding); setUpdateBehavior(UpdateBehavior::PartialUpdate); + connect(m_viewModel, &SimulationStateModel::dataChanged, [this]() { + update(); + }); } void OpenGLWidget::toggleRendering() @@ -108,7 +111,6 @@ void OpenGLWidget::mouseMoveEvent(QMouseEvent *event) emit cameraOrientationChanged(camera.pitch, camera.yaw); m_previousDragPoint = currentMousePosition; - update(); } } @@ -152,7 +154,6 @@ void OpenGLWidget::wheelEvent(QWheelEvent *event) event->accept(); fieldOfViewChanged(camera.fov); - update(); } void OpenGLWidget::setBrightness(double brightness) diff --git a/src/haloray-core/gui/simulationStateModel.cpp b/src/haloray-core/gui/simulationStateModel.cpp index 7684e85..a8f4582 100644 --- a/src/haloray-core/gui/simulationStateModel.cpp +++ b/src/haloray-core/gui/simulationStateModel.cpp @@ -25,6 +25,10 @@ SimulationStateModel::SimulationStateModel(SimulationEngine *engine, QObject *pa connect(m_simulationEngine, &SimulationEngine::multipleScatteringProbabilityChanged, [this]() { emit dataChanged(createIndex(0, MultipleScatteringProbability), createIndex(0, MultipleScatteringProbability)); }); + + connect(m_simulationEngine, &SimulationEngine::raysPerStepChanged, [this]() { + emit dataChanged(createIndex(0, RaysPerFrame), createIndex(0, RaysPerFrame)); + }); } QVariant SimulationStateModel::headerData(int section, Qt::Orientation orientation, int role) const @@ -51,8 +55,8 @@ QVariant SimulationStateModel::headerData(int section, Qt::Orientation orientati return "Hide sub-horizon"; case MultipleScatteringProbability: return "Multiple scattering probability"; - case MaximumRaysPerFrame: - return "Maximum rays per frame"; + case RaysPerFrame: + return "Rays per frame"; case MaximumIterations: return "Maximum iterations"; case RaysPerFrameUpperLimit: @@ -105,7 +109,7 @@ QVariant SimulationStateModel::data(const QModelIndex &index, int role) const return m_simulationEngine->getCamera().hideSubHorizon; case MultipleScatteringProbability: return m_simulationEngine->getMultipleScatteringProbability(); - case MaximumRaysPerFrame: + case RaysPerFrame: return m_simulationEngine->getRaysPerStep(); case MaximumIterations: return m_maximumIterations; @@ -150,7 +154,7 @@ bool SimulationStateModel::setData(const QModelIndex &index, const QVariant &val case MultipleScatteringProbability: m_simulationEngine->setMultipleScatteringProbability(value.toDouble()); break; - case MaximumRaysPerFrame: + case RaysPerFrame: m_simulationEngine->setRaysPerStep(value.toUInt()); break; case MaximumIterations: @@ -178,9 +182,9 @@ Qt::ItemFlags SimulationStateModel::flags(const QModelIndex &index) const return Qt::ItemIsEditable | Qt::ItemIsEnabled; } -void SimulationStateModel::setMaxRaysPerFrame(unsigned int maxRaysPerFrame) +void SimulationStateModel::setRaysPerFrame(unsigned int maxRaysPerFrame) { - setData(index(0, MaximumRaysPerFrame), maxRaysPerFrame); + setData(index(0, RaysPerFrame), maxRaysPerFrame); } void SimulationStateModel::setRaysPerFrameUpperLimit(unsigned int upperLimit) diff --git a/src/haloray-core/gui/simulationStateModel.h b/src/haloray-core/gui/simulationStateModel.h index e1b4c5c..df7b9af 100644 --- a/src/haloray-core/gui/simulationStateModel.h +++ b/src/haloray-core/gui/simulationStateModel.h @@ -24,7 +24,7 @@ class SimulationStateModel : public QAbstractTableModel CameraYaw, HideSubHorizon, MultipleScatteringProbability, - MaximumRaysPerFrame, + RaysPerFrame, MaximumIterations, RaysPerFrameUpperLimit, NUM_COLUMNS @@ -43,7 +43,7 @@ class SimulationStateModel : public QAbstractTableModel Qt::ItemFlags flags(const QModelIndex& index) const override; // Convenience methods - void setMaxRaysPerFrame(unsigned int maxRaysPerFrame); + void setRaysPerFrame(unsigned int maxRaysPerFrame); void setRaysPerFrameUpperLimit(unsigned int upperLimit); unsigned int getRaysPerFrameUpperLimit() const; unsigned int getMaxIterations() const; From 95169f52037fb308ba70c25161236abfaf34b55b Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 31 Jan 2021 19:25:50 +0200 Subject: [PATCH 051/184] Create explicit OpenlGL context This decouples other OpenGL-using components from QOpenGLWidget. --- src/haloray-core/gui/mainWindow.cpp | 1 + src/haloray-core/gui/openGLWidget.cpp | 2 -- src/haloray-core/opengl/textureRenderer.cpp | 5 +++++ src/haloray-core/opengl/textureRenderer.h | 2 +- src/haloray-core/simulation/simulationEngine.cpp | 1 + src/haloray/main.cpp | 13 +++++++++++-- 6 files changed, 19 insertions(+), 5 deletions(-) diff --git a/src/haloray-core/gui/mainWindow.cpp b/src/haloray-core/gui/mainWindow.cpp index 75955e0..3f75f49 100644 --- a/src/haloray-core/gui/mainWindow.cpp +++ b/src/haloray-core/gui/mainWindow.cpp @@ -34,6 +34,7 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) #if _WIN32 QIcon::setThemeName("HaloRayTheme"); #endif + m_crystalRepository = std::make_shared(); m_engine = new SimulationEngine(m_crystalRepository, this); diff --git a/src/haloray-core/gui/openGLWidget.cpp b/src/haloray-core/gui/openGLWidget.cpp index d1315be..3004c9b 100644 --- a/src/haloray-core/gui/openGLWidget.cpp +++ b/src/haloray-core/gui/openGLWidget.cpp @@ -61,8 +61,6 @@ void OpenGLWidget::initializeGL() initializeOpenGLFunctions(); m_textureRenderer = std::make_unique(); - m_engine->initialize(); - m_textureRenderer->initialize(); glClearColor(0.0, 0.0, 0.0, 1.0); glClear(GL_COLOR_BUFFER_BIT); diff --git a/src/haloray-core/opengl/textureRenderer.cpp b/src/haloray-core/opengl/textureRenderer.cpp index 1d5e6e7..28d1b8a 100644 --- a/src/haloray-core/opengl/textureRenderer.cpp +++ b/src/haloray-core/opengl/textureRenderer.cpp @@ -40,6 +40,11 @@ std::unique_ptr TextureRenderer::initializeTexDrawShaderPr return program; } +TextureRenderer::TextureRenderer() +{ + initialize(); +} + void TextureRenderer::initialize() { initializeOpenGLFunctions(); diff --git a/src/haloray-core/opengl/textureRenderer.h b/src/haloray-core/opengl/textureRenderer.h index f969f40..cc46f2e 100644 --- a/src/haloray-core/opengl/textureRenderer.h +++ b/src/haloray-core/opengl/textureRenderer.h @@ -9,7 +9,7 @@ namespace OpenGL class TextureRenderer : protected QOpenGLFunctions_4_4_Core { public: - TextureRenderer() = default; + explicit TextureRenderer(); void initialize(); void setUniformFloat(std::string name, float value); void render(unsigned int textureHandle); diff --git a/src/haloray-core/simulation/simulationEngine.cpp b/src/haloray-core/simulation/simulationEngine.cpp index 6ab3f31..c082792 100644 --- a/src/haloray-core/simulation/simulationEngine.cpp +++ b/src/haloray-core/simulation/simulationEngine.cpp @@ -30,6 +30,7 @@ SimulationEngine::SimulationEngine( m_multipleScatteringProbability(0.0), m_crystalRepository(crystalRepository) { + initialize(); } bool SimulationEngine::isRunning() const diff --git a/src/haloray/main.cpp b/src/haloray/main.cpp index 96816de..2d16841 100644 --- a/src/haloray/main.cpp +++ b/src/haloray/main.cpp @@ -3,6 +3,7 @@ #include #include #include +#include #include #include #include "gui/mainWindow.h" @@ -58,7 +59,9 @@ void setDefaultSurfaceFormat() int main(int argc, char *argv[]) { Q_INIT_RESOURCE(haloray); - QCoreApplication::setAttribute(Qt::AA_UseDesktopOpenGL); + QGuiApplication::setAttribute(Qt::AA_UseDesktopOpenGL); + QGuiApplication::setAttribute(Qt::AA_ShareOpenGLContexts); + QGuiApplication::setAttribute(Qt::AA_UseHighDpiPixmaps); setDefaultSurfaceFormat(); qInstallMessageHandler(logHandler); QApplication app(argc, argv); @@ -72,10 +75,16 @@ int main(int argc, char *argv[]) return 1; } + auto openGLContext = QOpenGLContext(); + openGLContext.setShareContext(QOpenGLContext::globalShareContext()); + openGLContext.create(); + auto surface = QOffscreenSurface(nullptr); + surface.create(); + openGLContext.makeCurrent(&surface); + HaloRay::MainWindow mainWindow; mainWindow.show(); - QGuiApplication::setAttribute(Qt::AA_UseHighDpiPixmaps); return app.exec(); } From d620c1770e9c6174f481f3b0666264fd876e08d5 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 31 Jan 2021 23:19:55 +0200 Subject: [PATCH 052/184] Fix bug with rays per frame single step size Single step size for the rays per frame spinbox was set twice while the same property for maximum frame number was not set. --- src/haloray-core/gui/generalSettingsWidget.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/haloray-core/gui/generalSettingsWidget.cpp b/src/haloray-core/gui/generalSettingsWidget.cpp index f5ed52f..13c860c 100644 --- a/src/haloray-core/gui/generalSettingsWidget.cpp +++ b/src/haloray-core/gui/generalSettingsWidget.cpp @@ -56,8 +56,8 @@ void GeneralSettingsWidget::setupUi() m_raysPerFrameSpinBox->setGroupSeparatorShown(true); m_maximumFramesSpinBox = new QSpinBox(); - m_raysPerFrameSpinBox->setSingleStep(60); - m_maximumFramesSpinBox->setMinimum(100); + m_maximumFramesSpinBox->setSingleStep(60); + m_maximumFramesSpinBox->setMinimum(1); m_maximumFramesSpinBox->setMaximum(1000000000); m_maximumFramesSpinBox->setGroupSeparatorShown(true); From eca29a79dc0c46704f0a0cfb3884430afb5d1445 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Mon, 1 Feb 2021 23:34:25 +0200 Subject: [PATCH 053/184] Clarify camera projection code --- .../resources/shaders/raytrace.glsl | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/src/haloray-core/resources/shaders/raytrace.glsl b/src/haloray-core/resources/shaders/raytrace.glsl index 900217c..b59ee7b 100644 --- a/src/haloray-core/resources/shaders/raytrace.glsl +++ b/src/haloray-core/resources/shaders/raytrace.glsl @@ -493,29 +493,29 @@ void main(void) vec2 polar = cartesianToPolar(resultRay); float fovRadians = radians(camera.fov); - float fr; - float fovNormalizer; + float projectionFunction; + float focalLength; if (camera.projection == PROJECTION_STEREOGRAPHIC) { - fr = 2.0 * tan(polar.x / 2.0); - fovNormalizer = 1.0 / (4.0 * tan(fovRadians / 4.0)); + projectionFunction = 2.0 * tan(polar.x / 2.0); + focalLength = 1.0 / (4.0 * tan(fovRadians / 4.0)); } else if (camera.projection == PROJECTION_RECTILINEAR) { if (polar.x > 0.5 * PI) return; - fr = tan(polar.x); - fovNormalizer = 0.5 / tan(fovRadians / 2.0); + projectionFunction = tan(polar.x); + focalLength = 1.0 / (2.0 * tan(fovRadians / 2.0)); } else if (camera.projection == PROJECTION_EQUIDISTANT) { - fr = polar.x; - fovNormalizer = 1.0 / fovRadians; + projectionFunction = polar.x; + focalLength = 1.0 / fovRadians; } else if (camera.projection == PROJECTION_EQUAL_AREA) { - fr = 2.0 * sin(polar.x / 2.0); - fovNormalizer = 1.0 / (4.0 * sin(fovRadians / 4.0)); + projectionFunction = 2.0 * sin(polar.x / 2.0); + focalLength = 1.0 / (4.0 * sin(fovRadians / 4.0)); } else if (camera.projection == PROJECTION_ORTHOGRAPHIC) { if (polar.x > 0.5 * PI) return; - fr = sin(polar.x); - fovNormalizer = 0.5 / sin(fovRadians / 2.0); + projectionFunction = sin(polar.x); + focalLength = 1.0 / (2.0 * sin(fovRadians / 2.0)); } - vec2 projected = fovNormalizer * fr * vec2(aspectRatio * cos(polar.y), sin(polar.y)); + vec2 projected = focalLength * projectionFunction * vec2(aspectRatio * cos(polar.y), sin(polar.y)); vec2 normalizedCoordinates = 0.5 + projected; if (any(lessThanEqual(normalizedCoordinates, vec2(0.0))) || any(greaterThanEqual(normalizedCoordinates, vec2(1.0)))) From 8613ff62d32e218228170f04c4c2f5dca3c92be4 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 31 Jan 2021 23:22:20 +0200 Subject: [PATCH 054/184] Add foundation for rendering two shaders for a frame Now a dummy sky shader is run on the first frame of the simulation. It is still scaled incorrectly, since the brightness setting is automatically scaled based on the iteration. --- src/haloray-core/resources/haloray.qrc | 4 +-- src/haloray-core/resources/shaders/sky.glsl | 35 +++++++++++++++++++ .../simulation/simulationEngine.cpp | 30 ++++++++++++---- .../simulation/simulationEngine.h | 3 +- 4 files changed, 63 insertions(+), 9 deletions(-) create mode 100644 src/haloray-core/resources/shaders/sky.glsl diff --git a/src/haloray-core/resources/haloray.qrc b/src/haloray-core/resources/haloray.qrc index 19d54cf..a9dedaa 100644 --- a/src/haloray-core/resources/haloray.qrc +++ b/src/haloray-core/resources/haloray.qrc @@ -1,8 +1,8 @@ - - + haloray.ico shaders/raytrace.glsl + shaders/sky.glsl icons/custom-icons/actions/24/list-add.svg diff --git a/src/haloray-core/resources/shaders/sky.glsl b/src/haloray-core/resources/shaders/sky.glsl new file mode 100644 index 0000000..b27f7ff --- /dev/null +++ b/src/haloray-core/resources/shaders/sky.glsl @@ -0,0 +1,35 @@ +#version 440 core + +layout(local_size_x = 1, local_size_y = 1) in; +layout(binding = 0, rgba32f) uniform coherent image2D outputImage; + +uniform struct sunProperties_t +{ + float altitude; + float diameter; +} sun; + +uniform struct camera_t +{ + float pitch; + float yaw; + float fov; + int projection; + int hideSubHorizon; +} camera; + +#define PROJECTION_STEREOGRAPHIC 0 +#define PROJECTION_RECTILINEAR 1 +#define PROJECTION_EQUIDISTANT 2 +#define PROJECTION_EQUAL_AREA 3 +#define PROJECTION_ORTHOGRAPHIC 4 + +const float PI = 3.1415926535; + +void main(void) +{ + ivec2 resolution = imageSize(outputImage); + float aspectRatio = float(resolution.y) / float(resolution.x); + ivec2 pixelCoordinates = ivec2(gl_GlobalInvocationID.xy); + imageStore(outputImage, pixelCoordinates, vec4(0.5, 0.1, 0.0, 1.0)); +} diff --git a/src/haloray-core/simulation/simulationEngine.cpp b/src/haloray-core/simulation/simulationEngine.cpp index c082792..6882b1c 100644 --- a/src/haloray-core/simulation/simulationEngine.cpp +++ b/src/haloray-core/simulation/simulationEngine.cpp @@ -103,6 +103,21 @@ void SimulationEngine::step() { ++m_iteration; + if (m_iteration == 1) { + glMemoryBarrier(GL_SHADER_IMAGE_ACCESS_BARRIER_BIT); + glBindImageTexture(m_simulationTexture->getTextureUnit(), m_simulationTexture->getHandle(), 0, GL_FALSE, 0, GL_READ_WRITE, GL_RGBA32F); + m_skyShader->bind(); + glMemoryBarrier(GL_SHADER_IMAGE_ACCESS_BARRIER_BIT); + m_skyShader->setUniformValue("sun.altitude", m_light.altitude); + m_skyShader->setUniformValue("sun.diameter", m_light.diameter); + m_skyShader->setUniformValue("camera.pitch", m_camera.pitch); + m_skyShader->setUniformValue("camera.yaw", m_camera.yaw); + m_skyShader->setUniformValue("camera.fov", m_camera.fov); + m_skyShader->setUniformValue("camera.projection", m_camera.projection); + m_skyShader->setUniformValue("camera.hideSubHorizon", m_camera.hideSubHorizon ? 1 : 0); + glDispatchCompute(m_outputWidth, m_outputHeight, 1); + } + glMemoryBarrier(GL_SHADER_IMAGE_ACCESS_BARRIER_BIT); glBindImageTexture(m_simulationTexture->getTextureUnit(), m_simulationTexture->getHandle(), 0, GL_FALSE, 0, GL_READ_WRITE, GL_RGBA32F); glClearTexImage(m_spinlockTexture->getHandle(), 0, GL_RED, GL_UNSIGNED_INT, NULL); @@ -183,23 +198,26 @@ void SimulationEngine::initialize() if (m_initialized) return; initializeOpenGLFunctions(); - initializeShader(); + initializeShaders(); initializeTextures(); m_initialized = true; } -void SimulationEngine::initializeShader() +void SimulationEngine::initializeShaders() { m_simulationShader = std::make_unique(); -#ifdef _WIN32 m_simulationShader->addCacheableShaderFromSourceFile(QOpenGLShader::ShaderTypeBit::Compute, ":/shaders/raytrace.glsl"); -#else - mSimulationShader->addShaderFromSourceFile(QOpenGLShader::ShaderTypeBit::Compute, ":/shaders/raytrace.glsl"); -#endif if (m_simulationShader->link() == false) { throw std::runtime_error(m_simulationShader->log().toUtf8()); } + + m_skyShader = new QOpenGLShaderProgram(this); + m_skyShader->addCacheableShaderFromSourceFile(QOpenGLShader::ShaderTypeBit::Compute, ":/shaders/sky.glsl"); + if (m_skyShader->link() == false) + { + throw std::runtime_error(m_skyShader->log().toUtf8()); + } } void SimulationEngine::initializeTextures() diff --git a/src/haloray-core/simulation/simulationEngine.h b/src/haloray-core/simulation/simulationEngine.h index 74d0bdf..6f5ded3 100644 --- a/src/haloray-core/simulation/simulationEngine.h +++ b/src/haloray-core/simulation/simulationEngine.h @@ -55,7 +55,7 @@ class SimulationEngine : public QObject, protected QOpenGLFunctions_4_4_Core void multipleScatteringProbabilityChanged(double); private: - void initializeShader(); + void initializeShaders(); void initializeTextures(); void pointCameraToLightSource(); @@ -64,6 +64,7 @@ class SimulationEngine : public QObject, protected QOpenGLFunctions_4_4_Core std::mt19937 m_mersenneTwister; std::uniform_int_distribution m_uniformDistribution; std::unique_ptr m_simulationShader; + QOpenGLShaderProgram *m_skyShader; std::unique_ptr m_simulationTexture; std::unique_ptr m_spinlockTexture; From c4ec364c1346f3a9c15345a7eadfcfaf27a1196f Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Mon, 1 Feb 2021 00:28:23 +0200 Subject: [PATCH 055/184] Add sky shading math from A.J. Preetham et al. --- src/haloray-core/resources/shaders/sky.glsl | 81 +++++++++++++++++++++ 1 file changed, 81 insertions(+) diff --git a/src/haloray-core/resources/shaders/sky.glsl b/src/haloray-core/resources/shaders/sky.glsl index b27f7ff..cac3732 100644 --- a/src/haloray-core/resources/shaders/sky.glsl +++ b/src/haloray-core/resources/shaders/sky.glsl @@ -26,6 +26,87 @@ uniform struct camera_t const float PI = 3.1415926535; +float perez(float zenithAngle, float sunAngle, float A, float B, float C, float D, float E) +{ + float firstTerm = 1.0f + A * exp(B / cos(zenithAngle)); + float secondTerm = 1.0f + C * exp(D * sunAngle) + E * cos(sunAngle) * cos(sunAngle); + return firstTerm * secondTerm; +} + +/* + Sky shading model based on + "A Practical Analytic Model for Daylight" (1999) + by A. J. Preetham, Peter Shirley, Brian Smits + University of Utah +*/ + +float luminance(float zenithAngle, float sunAngle, float turbidity) +{ + float sunZenithAngle = radians(90.0f - abs(sun.altitude)); + float ay = 0.1787 * turbidity - 1.4630; + float by = -0.3554 * turbidity + 0.4275; + float cy = -0.0227 * turbidity + 5.3251; + float dy = 0.1206 * turbidity - 2.5771; + float ey = -0.0670 * turbidity + 0.3703; + float kappa = (4.0f / 9.0f - turbidity / 120.0f) * (PI - 2 * sunZenithAngle); + float Yz = (4.0453 * turbidity - 4.9710) * tan(kappa) - 0.2155 * turbidity + 2.4192; + float upperTerm = perez(zenithAngle, sunAngle, ay, by, cy, dy, ey); + float lowerTerm = perez(0, sunZenithAngle, ay, by, cy, dy, ey); + return Yz * upperTerm / lowerTerm; +} + +float chromaX(float zenithAngle, float sunAngle, float turbidity) +{ + float sunZenithAngle = radians(90.0f - abs(sun.altitude)); + float ax = -0.0193 * turbidity - 0.2592; + float bx = -0.0665 * turbidity + 0.0008; + float cx = -0.0004 * turbidity + 0.2125; + float dx = -0.0641 * turbidity - 0.8989; + float ex = -0.0033 * turbidity + 0.0452; + + vec4 sunZenithVec = vec4(sunZenithAngle * sunZenithAngle * sunZenithAngle, sunZenithAngle * sunZenithAngle, sunZenithAngle, 1.0f); + mat4 coefficientMatrix = mat4( + 0.00166, -0.02903, 0.11693, 0.0, + -0.00375, 0.06377, -0.21196, 0.0, + 0.00209, -0.03202, 0.06052, 0.0, + 0.0, 0.00394, 0.25886, 0.0 + ); + + vec4 turbidityVec = vec4(turbidity * turbidity, turbidity, 1.0, 0.0); + + float xz = dot(turbidityVec, coefficientMatrix * sunZenithVec); + + float upperTerm = perez(zenithAngle, sunAngle, ax, bx, cx, dx, ex); + float lowerTerm = perez(0, sunZenithAngle, ax, bx, cx, dx, ex); + return xz * upperTerm / lowerTerm; +} + +float chromaY(float zenithAngle, float sunAngle, float turbidity) +{ + float sunZenithAngle = radians(90.0f - abs(sun.altitude)); + float ay = -0.0167 * turbidity - 0.2608; + float by = -0.0950 * turbidity + 0.0092; + float cy = -0.0079 * turbidity + 0.2102; + float dy = -0.0441 * turbidity - 1.6537; + float ey = -0.0109 * turbidity + 0.0529; + + vec4 sunZenithVec = vec4(sunZenithAngle * sunZenithAngle * sunZenithAngle, sunZenithAngle * sunZenithAngle, sunZenithAngle, 1.0f); + mat4 coefficientMatrix = mat4( + 0.00275, -0.04214, 0.15346, 0.0, + -0.00610, 0.08970, -0.26756, 0.0, + 0.00317, -0.04153, 0.06670, 0.0, + 0.0, 0.00516, 0.26688, 0.0 + ); + + vec4 turbidityVec = vec4(turbidity * turbidity, turbidity, 1.0, 0.0); + + float yz = dot(turbidityVec, coefficientMatrix * sunZenithVec); + + float upperTerm = perez(zenithAngle, sunAngle, ay, by, cy, dy, ey); + float lowerTerm = perez(0, sunZenithAngle, ay, by, cy, dy, ey); + return yz * upperTerm / lowerTerm; +} + void main(void) { ivec2 resolution = imageSize(outputImage); From d12e40c31614de8179c05753081a7a4f2b5ee03b Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Mon, 1 Feb 2021 21:07:01 +0200 Subject: [PATCH 056/184] Render whole above-horizon sky without projection Now we know the sky rendering code works, and it's easier to start writing the camera projection code when you can be sure the sky model is okay. --- src/haloray-core/opengl/textureRenderer.cpp | 4 +- .../resources/shaders/raytrace.glsl | 3 +- src/haloray-core/resources/shaders/sky.glsl | 48 +++++++++++++++---- 3 files changed, 41 insertions(+), 14 deletions(-) diff --git a/src/haloray-core/opengl/textureRenderer.cpp b/src/haloray-core/opengl/textureRenderer.cpp index 28d1b8a..d7277b1 100644 --- a/src/haloray-core/opengl/textureRenderer.cpp +++ b/src/haloray-core/opengl/textureRenderer.cpp @@ -21,9 +21,7 @@ std::unique_ptr TextureRenderer::initializeTexDrawShaderPr "uniform float exposure;" "uniform sampler2D s;" "void main(void) {" - " vec3 xyz = texelFetch(s, ivec2(gl_FragCoord.xy), 0).xyz;" - " mat3 xyzToSrgb = mat3(3.2406, -0.9689, 0.0557, -1.5372, 1.8758, -0.2040, -0.4986, 0.0415, 1.0570);" - " vec3 linearSrgb = xyzToSrgb * xyz * exposure;" + " vec3 linearSrgb = exposure * texelFetch(s, ivec2(gl_FragCoord.xy), 0).xyz;" " vec3 gammaCorrected = pow(linearSrgb, vec3(0.42));" " color = vec4(gammaCorrected, 1.0);" "}"; diff --git a/src/haloray-core/resources/shaders/raytrace.glsl b/src/haloray-core/resources/shaders/raytrace.glsl index b59ee7b..f7e5b82 100644 --- a/src/haloray-core/resources/shaders/raytrace.glsl +++ b/src/haloray-core/resources/shaders/raytrace.glsl @@ -523,5 +523,6 @@ void main(void) ivec2 pixelCoordinates = ivec2(resolution.x * normalizedCoordinates.x, resolution.y * normalizedCoordinates.y); vec3 cieXYZ = daylightEstimate(wavelength) * vec3(xFit_1931(wavelength), yFit_1931(wavelength), zFit_1931(wavelength)); - storePixel(pixelCoordinates, cieXYZ); + mat3 xyzToSrgb = mat3(3.2406, -0.9689, 0.0557, -1.5372, 1.8758, -0.2040, -0.4986, 0.0415, 1.0570); + storePixel(pixelCoordinates, xyzToSrgb * cieXYZ); } diff --git a/src/haloray-core/resources/shaders/sky.glsl b/src/haloray-core/resources/shaders/sky.glsl index cac3732..0473d4e 100644 --- a/src/haloray-core/resources/shaders/sky.glsl +++ b/src/haloray-core/resources/shaders/sky.glsl @@ -42,29 +42,29 @@ float perez(float zenithAngle, float sunAngle, float A, float B, float C, float float luminance(float zenithAngle, float sunAngle, float turbidity) { - float sunZenithAngle = radians(90.0f - abs(sun.altitude)); + float sunZenithAngle = radians(90.0 - sun.altitude); float ay = 0.1787 * turbidity - 1.4630; float by = -0.3554 * turbidity + 0.4275; float cy = -0.0227 * turbidity + 5.3251; float dy = 0.1206 * turbidity - 2.5771; float ey = -0.0670 * turbidity + 0.3703; - float kappa = (4.0f / 9.0f - turbidity / 120.0f) * (PI - 2 * sunZenithAngle); + float kappa = (4.0 / 9.0 - turbidity / 120.0) * (PI - 2 * sunZenithAngle); float Yz = (4.0453 * turbidity - 4.9710) * tan(kappa) - 0.2155 * turbidity + 2.4192; float upperTerm = perez(zenithAngle, sunAngle, ay, by, cy, dy, ey); - float lowerTerm = perez(0, sunZenithAngle, ay, by, cy, dy, ey); + float lowerTerm = perez(0.0, sunZenithAngle, ay, by, cy, dy, ey); return Yz * upperTerm / lowerTerm; } float chromaX(float zenithAngle, float sunAngle, float turbidity) { - float sunZenithAngle = radians(90.0f - abs(sun.altitude)); + float sunZenithAngle = radians(90.0 - sun.altitude); float ax = -0.0193 * turbidity - 0.2592; float bx = -0.0665 * turbidity + 0.0008; float cx = -0.0004 * turbidity + 0.2125; float dx = -0.0641 * turbidity - 0.8989; float ex = -0.0033 * turbidity + 0.0452; - vec4 sunZenithVec = vec4(sunZenithAngle * sunZenithAngle * sunZenithAngle, sunZenithAngle * sunZenithAngle, sunZenithAngle, 1.0f); + vec4 sunZenithVec = vec4(sunZenithAngle * sunZenithAngle * sunZenithAngle, sunZenithAngle * sunZenithAngle, sunZenithAngle, 1.0); mat4 coefficientMatrix = mat4( 0.00166, -0.02903, 0.11693, 0.0, -0.00375, 0.06377, -0.21196, 0.0, @@ -77,13 +77,13 @@ float chromaX(float zenithAngle, float sunAngle, float turbidity) float xz = dot(turbidityVec, coefficientMatrix * sunZenithVec); float upperTerm = perez(zenithAngle, sunAngle, ax, bx, cx, dx, ex); - float lowerTerm = perez(0, sunZenithAngle, ax, bx, cx, dx, ex); + float lowerTerm = perez(0.0, sunZenithAngle, ax, bx, cx, dx, ex); return xz * upperTerm / lowerTerm; } float chromaY(float zenithAngle, float sunAngle, float turbidity) { - float sunZenithAngle = radians(90.0f - abs(sun.altitude)); + float sunZenithAngle = radians(90.0 - sun.altitude); float ay = -0.0167 * turbidity - 0.2608; float by = -0.0950 * turbidity + 0.0092; float cy = -0.0079 * turbidity + 0.2102; @@ -103,14 +103,42 @@ float chromaY(float zenithAngle, float sunAngle, float turbidity) float yz = dot(turbidityVec, coefficientMatrix * sunZenithVec); float upperTerm = perez(zenithAngle, sunAngle, ay, by, cy, dy, ey); - float lowerTerm = perez(0, sunZenithAngle, ay, by, cy, dy, ey); + float lowerTerm = perez(0.0, sunZenithAngle, ay, by, cy, dy, ey); return yz * upperTerm / lowerTerm; } +vec3 getSkyXYZ(vec3 direction, float turbidity) +{ + float sunAltitudeRadians = radians(sun.altitude); + vec3 sunVec = vec3(0.0, sin(sunAltitudeRadians), cos(sunAltitudeRadians)); + float sunAngle = acos(dot(sunVec, direction)); + float zenithAngle = acos(direction.y); + float Y = luminance(zenithAngle, sunAngle, turbidity); + float x = chromaX(zenithAngle, sunAngle, turbidity); + float y = chromaY(zenithAngle, sunAngle, turbidity); + vec3 XYZ = vec3(x * Y/y, Y, (1.0 - x - y) * Y/y); + return XYZ; +} + +vec3 imageCoordsToUnitSphere(ivec2 pixelCoordinates, ivec2 resolution) +{ + vec2 zeroToOneCoordinates = vec2(pixelCoordinates) / vec2(resolution); + + float latitude = zeroToOneCoordinates.y * 0.5 * PI; + float longitude = zeroToOneCoordinates.x * 2.0 * PI - PI; + float x = cos(latitude) * sin(longitude); + float y = sin(latitude); + float z = cos(latitude) * cos(longitude); + return normalize(vec3(x, y, z)); +} + void main(void) { ivec2 resolution = imageSize(outputImage); - float aspectRatio = float(resolution.y) / float(resolution.x); ivec2 pixelCoordinates = ivec2(gl_GlobalInvocationID.xy); - imageStore(outputImage, pixelCoordinates, vec4(0.5, 0.1, 0.0, 1.0)); + + vec3 dir = imageCoordsToUnitSphere(pixelCoordinates, resolution); + if (dir.y < 0.0) return; + mat3 xyzToSrgb = mat3(3.2406, -0.9689, 0.0557, -1.5372, 1.8758, -0.2040, -0.4986, 0.0415, 1.0570); + imageStore(outputImage, pixelCoordinates, vec4(0.1 * xyzToSrgb * getSkyXYZ(dir, 2.0), 1.0)); } From d374cc2f1198e06e5760f2e5c7b2c2eeb16eb427 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Tue, 2 Feb 2021 00:41:51 +0200 Subject: [PATCH 057/184] Synchronize sky shader with camera --- src/haloray-core/resources/shaders/sky.glsl | 75 ++++++++++++++++++--- 1 file changed, 64 insertions(+), 11 deletions(-) diff --git a/src/haloray-core/resources/shaders/sky.glsl b/src/haloray-core/resources/shaders/sky.glsl index 0473d4e..f76b88a 100644 --- a/src/haloray-core/resources/shaders/sky.glsl +++ b/src/haloray-core/resources/shaders/sky.glsl @@ -110,7 +110,10 @@ float chromaY(float zenithAngle, float sunAngle, float turbidity) vec3 getSkyXYZ(vec3 direction, float turbidity) { float sunAltitudeRadians = radians(sun.altitude); - vec3 sunVec = vec3(0.0, sin(sunAltitudeRadians), cos(sunAltitudeRadians)); + /* NOTE: The sun vector is now in the opposite Z direction + than in the crystal raytracing shader. This should probably + made the same in all shaders. */ + vec3 sunVec = vec3(0.0, sin(sunAltitudeRadians), -cos(sunAltitudeRadians)); float sunAngle = acos(dot(sunVec, direction)); float zenithAngle = acos(direction.y); float Y = luminance(zenithAngle, sunAngle, turbidity); @@ -120,24 +123,74 @@ vec3 getSkyXYZ(vec3 direction, float turbidity) return XYZ; } -vec3 imageCoordsToUnitSphere(ivec2 pixelCoordinates, ivec2 resolution) +vec2 planarToPolar(vec2 point) { - vec2 zeroToOneCoordinates = vec2(pixelCoordinates) / vec2(resolution); - - float latitude = zeroToOneCoordinates.y * 0.5 * PI; - float longitude = zeroToOneCoordinates.x * 2.0 * PI - PI; - float x = cos(latitude) * sin(longitude); - float y = sin(latitude); - float z = cos(latitude) * cos(longitude); - return normalize(vec3(x, y, z)); + float r = length(point); + float angle = atan(point.y, point.x); + return vec2(r, angle); +} + +mat3 rotateAroundX(float angle) +{ + return mat3( + 1.0, 0.0, 0.0, + 0.0, cos(angle), sin(angle), + 0.0, -sin(angle), cos(angle) + ); +} + +mat3 rotateAroundY(float angle) +{ + return mat3( + cos(angle), 0.0, -sin(angle), + 0.0, 1.0, 0.0, + sin(angle), 0.0, cos(angle) + ); +} + +mat3 getCameraOrientationMatrix() +{ + return rotateAroundY(radians(camera.yaw)) * rotateAroundX(radians(camera.pitch)); } void main(void) { ivec2 resolution = imageSize(outputImage); + float aspectRatio = float(resolution.y) / float(resolution.x); ivec2 pixelCoordinates = ivec2(gl_GlobalInvocationID.xy); - vec3 dir = imageCoordsToUnitSphere(pixelCoordinates, resolution); + vec2 normCoord = vec2(pixelCoordinates) / vec2(resolution) - 0.5; + normCoord.x /= aspectRatio; + vec2 polar = planarToPolar(normCoord); + + float fovRadians = radians(camera.fov); + float projectedAngle; + + if (camera.projection == PROJECTION_STEREOGRAPHIC) { + float focalLength = 1.0 / (4.0 * tan(fovRadians / 4.0)); + projectedAngle = 2.0 * atan(polar.x / 2.0 / focalLength); + } else if (camera.projection == PROJECTION_RECTILINEAR) { + if (polar.x > 0.5 * PI) return; + float focalLength = 1.0 / (2.0 * tan(fovRadians / 2.0)); + projectedAngle = atan(polar.x / focalLength); + } else if (camera.projection == PROJECTION_EQUIDISTANT) { + float focalLength = 1.0 / fovRadians; + projectedAngle = polar.x / focalLength; + } else if (camera.projection == PROJECTION_EQUAL_AREA) { + float focalLength = 1.0 / (4.0 * sin(fovRadians / 4.0)); + projectedAngle = 2.0 * asin(polar.x / 2.0 / focalLength); + } else if (camera.projection == PROJECTION_ORTHOGRAPHIC) { + if (polar.x > 0.5 * PI) return; + float focalLength = 1.0 / (2.0 * sin(fovRadians / 2.0)); + projectedAngle = asin(polar.x / focalLength); + } + + float x = sin(projectedAngle) * cos(polar.y); + float y = sin(projectedAngle) * sin(polar.y); + float z = -cos(projectedAngle); + + vec3 dir = getCameraOrientationMatrix() * vec3(x, y, z); + if (dir.y < 0.0) return; mat3 xyzToSrgb = mat3(3.2406, -0.9689, 0.0557, -1.5372, 1.8758, -0.2040, -0.4986, 0.0415, 1.0570); imageStore(outputImage, pixelCoordinates, vec4(0.1 * xyzToSrgb * getSkyXYZ(dir, 2.0), 1.0)); From b5eafd5b9bae39b20d9660f7ecc0326c565f993d Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Tue, 2 Feb 2021 00:49:50 +0200 Subject: [PATCH 058/184] Move texture renderer shaders to resource files --- src/haloray-core/opengl/textureRenderer.cpp | 22 ++----------------- src/haloray-core/resources/haloray.qrc | 2 ++ .../resources/shaders/renderer.frag | 11 ++++++++++ .../resources/shaders/renderer.vert | 6 +++++ 4 files changed, 21 insertions(+), 20 deletions(-) create mode 100644 src/haloray-core/resources/shaders/renderer.frag create mode 100644 src/haloray-core/resources/shaders/renderer.vert diff --git a/src/haloray-core/opengl/textureRenderer.cpp b/src/haloray-core/opengl/textureRenderer.cpp index d7277b1..7765612 100644 --- a/src/haloray-core/opengl/textureRenderer.cpp +++ b/src/haloray-core/opengl/textureRenderer.cpp @@ -8,27 +8,9 @@ namespace OpenGL std::unique_ptr TextureRenderer::initializeTexDrawShaderProgram() { - const std::string vertexShaderSrc = - "#version 440 core\n" - "in vec2 position;" - "void main(void) {" - " gl_Position = vec4(position, 0.0f, 1.0);" - "}"; - - const std::string fragShaderSrc = - "#version 440 core\n" - "out vec4 color;" - "uniform float exposure;" - "uniform sampler2D s;" - "void main(void) {" - " vec3 linearSrgb = exposure * texelFetch(s, ivec2(gl_FragCoord.xy), 0).xyz;" - " vec3 gammaCorrected = pow(linearSrgb, vec3(0.42));" - " color = vec4(gammaCorrected, 1.0);" - "}"; - auto program = std::make_unique(); - program->addCacheableShaderFromSourceCode(QOpenGLShader::ShaderTypeBit::Vertex, vertexShaderSrc.c_str()); - program->addCacheableShaderFromSourceCode(QOpenGLShader::ShaderTypeBit::Fragment, fragShaderSrc.c_str()); + program->addCacheableShaderFromSourceFile(QOpenGLShader::ShaderTypeBit::Vertex, ":/shaders/renderer.vert"); + program->addCacheableShaderFromSourceFile(QOpenGLShader::ShaderTypeBit::Fragment, ":/shaders/renderer.frag"); if (program->link() == false) { diff --git a/src/haloray-core/resources/haloray.qrc b/src/haloray-core/resources/haloray.qrc index a9dedaa..f34cfc5 100644 --- a/src/haloray-core/resources/haloray.qrc +++ b/src/haloray-core/resources/haloray.qrc @@ -3,6 +3,8 @@ haloray.ico shaders/raytrace.glsl shaders/sky.glsl + shaders/renderer.vert + shaders/renderer.frag icons/custom-icons/actions/24/list-add.svg diff --git a/src/haloray-core/resources/shaders/renderer.frag b/src/haloray-core/resources/shaders/renderer.frag new file mode 100644 index 0000000..499562b --- /dev/null +++ b/src/haloray-core/resources/shaders/renderer.frag @@ -0,0 +1,11 @@ +#version 440 core + +out vec4 color; +uniform float exposure; +uniform sampler2D s; + +void main(void) { + vec3 linearSrgb = exposure * texelFetch(s, ivec2(gl_FragCoord.xy), 0).xyz; + vec3 gammaCorrected = pow(linearSrgb, vec3(0.42)); + color = vec4(gammaCorrected, 1.0); +} diff --git a/src/haloray-core/resources/shaders/renderer.vert b/src/haloray-core/resources/shaders/renderer.vert new file mode 100644 index 0000000..036a3a8 --- /dev/null +++ b/src/haloray-core/resources/shaders/renderer.vert @@ -0,0 +1,6 @@ +#version 440 core +in vec2 position; + +void main(void) { + gl_Position = vec4(position, 0.0f, 1.0); +} From 55bfe3717ce4ebf07d2d11fe71b23d8c192bb567 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Tue, 2 Feb 2021 01:21:28 +0200 Subject: [PATCH 059/184] Fix background fading problem The exposure value is being dynamically adjusted as a funtion of simulation iterations to keep the halos at constant brightness despite the increasing number of samples. This was fading the background. Now the background is not scaled dynamically like the halos are. --- src/haloray-core/gui/openGLWidget.cpp | 7 ++++--- src/haloray-core/opengl/textureRenderer.cpp | 8 ++++++-- src/haloray-core/opengl/textureRenderer.h | 1 + .../resources/shaders/renderer.frag | 11 +++++++---- src/haloray-core/resources/shaders/sky.glsl | 6 ++++-- .../simulation/simulationEngine.cpp | 17 +++++++++++++++-- src/haloray-core/simulation/simulationEngine.h | 2 ++ 7 files changed, 39 insertions(+), 13 deletions(-) diff --git a/src/haloray-core/gui/openGLWidget.cpp b/src/haloray-core/gui/openGLWidget.cpp index 3004c9b..42d4ce9 100644 --- a/src/haloray-core/gui/openGLWidget.cpp +++ b/src/haloray-core/gui/openGLWidget.cpp @@ -46,9 +46,10 @@ void OpenGLWidget::paintGL() emit nextIteration(m_engine->getIteration()); update(); } - const float exposure = m_exposure / (m_engine->getIteration() + 1) / (m_engine->getCamera().fov / 180.0); - m_textureRenderer->setUniformFloat("exposure", exposure); - m_textureRenderer->render(m_engine->getOutputTextureHandle()); + const float adjustedExposure = m_exposure / (m_engine->getIteration() + 1) / (m_engine->getCamera().fov / 180.0); + m_textureRenderer->setUniformFloat("adjustedExposure", adjustedExposure); + m_textureRenderer->setUniformFloat("baseExposure", m_exposure); + m_textureRenderer->render(m_engine->getOutputTextureHandle(), m_engine->getBackgroundTextureHandle()); } void OpenGLWidget::resizeGL(int w, int h) diff --git a/src/haloray-core/opengl/textureRenderer.cpp b/src/haloray-core/opengl/textureRenderer.cpp index 7765612..12b0f21 100644 --- a/src/haloray-core/opengl/textureRenderer.cpp +++ b/src/haloray-core/opengl/textureRenderer.cpp @@ -52,7 +52,7 @@ void TextureRenderer::initialize() m_texDrawProgram = initializeTexDrawShaderProgram(); } -void TextureRenderer::render(unsigned int textureHandle) +void TextureRenderer::render(unsigned int haloTextureHandle, int backgroundTextureHandle) { glMemoryBarrier(GL_SHADER_IMAGE_ACCESS_BARRIER_BIT); @@ -62,8 +62,12 @@ void TextureRenderer::render(unsigned int textureHandle) glClearColor(0.0f, 0.0f, 0.0f, 1.0f); glClear(GL_COLOR_BUFFER_BIT); glBindVertexArray(m_quadVao); - glBindTexture(GL_TEXTURE_2D, textureHandle); + glActiveTexture(GL_TEXTURE0); + glBindTexture(GL_TEXTURE_2D, haloTextureHandle); + glActiveTexture(GL_TEXTURE1); + glBindTexture(GL_TEXTURE_2D, backgroundTextureHandle); glDrawArrays(GL_TRIANGLE_STRIP, 0, 4); + glActiveTexture(GL_TEXTURE0); } void TextureRenderer::setUniformFloat(std::string name, float value) diff --git a/src/haloray-core/opengl/textureRenderer.h b/src/haloray-core/opengl/textureRenderer.h index cc46f2e..6303912 100644 --- a/src/haloray-core/opengl/textureRenderer.h +++ b/src/haloray-core/opengl/textureRenderer.h @@ -13,6 +13,7 @@ class TextureRenderer : protected QOpenGLFunctions_4_4_Core void initialize(); void setUniformFloat(std::string name, float value); void render(unsigned int textureHandle); + void render(unsigned int haloTextureHandle, int backgroundTextureHandle); ~TextureRenderer(); private: diff --git a/src/haloray-core/resources/shaders/renderer.frag b/src/haloray-core/resources/shaders/renderer.frag index 499562b..eb10caf 100644 --- a/src/haloray-core/resources/shaders/renderer.frag +++ b/src/haloray-core/resources/shaders/renderer.frag @@ -1,11 +1,14 @@ #version 440 core out vec4 color; -uniform float exposure; -uniform sampler2D s; +uniform float baseExposure; +uniform float adjustedExposure; +layout (binding = 0) uniform sampler2D haloTexture; +layout (binding = 1) uniform sampler2D backgroundTexture; void main(void) { - vec3 linearSrgb = exposure * texelFetch(s, ivec2(gl_FragCoord.xy), 0).xyz; - vec3 gammaCorrected = pow(linearSrgb, vec3(0.42)); + vec3 haloLinearSrgb = adjustedExposure * texelFetch(haloTexture, ivec2(gl_FragCoord.xy), 0).xyz; + vec3 background = baseExposure * texelFetch(backgroundTexture, ivec2(gl_FragCoord.xy), 0).xyz; + vec3 gammaCorrected = pow(background + haloLinearSrgb, vec3(0.42)); color = vec4(gammaCorrected, 1.0); } diff --git a/src/haloray-core/resources/shaders/sky.glsl b/src/haloray-core/resources/shaders/sky.glsl index f76b88a..c462211 100644 --- a/src/haloray-core/resources/shaders/sky.glsl +++ b/src/haloray-core/resources/shaders/sky.glsl @@ -1,7 +1,9 @@ #version 440 core layout(local_size_x = 1, local_size_y = 1) in; -layout(binding = 0, rgba32f) uniform coherent image2D outputImage; +layout(binding = 2, rgba32f) uniform coherent image2D outputImage; + +const float TURBIDITY = 4.0; uniform struct sunProperties_t { @@ -193,5 +195,5 @@ void main(void) if (dir.y < 0.0) return; mat3 xyzToSrgb = mat3(3.2406, -0.9689, 0.0557, -1.5372, 1.8758, -0.2040, -0.4986, 0.0415, 1.0570); - imageStore(outputImage, pixelCoordinates, vec4(0.1 * xyzToSrgb * getSkyXYZ(dir, 2.0), 1.0)); + imageStore(outputImage, pixelCoordinates, vec4(0.05 * xyzToSrgb * getSkyXYZ(dir, TURBIDITY), 1.0)); } diff --git a/src/haloray-core/simulation/simulationEngine.cpp b/src/haloray-core/simulation/simulationEngine.cpp index 6882b1c..bf3c32c 100644 --- a/src/haloray-core/simulation/simulationEngine.cpp +++ b/src/haloray-core/simulation/simulationEngine.cpp @@ -80,6 +80,11 @@ unsigned int SimulationEngine::getOutputTextureHandle() const return m_simulationTexture->getHandle(); } +unsigned int SimulationEngine::getBackgroundTextureHandle() const +{ + return m_backgroundTexture->getHandle(); +} + unsigned int SimulationEngine::getIteration() const { return m_iteration; @@ -103,9 +108,10 @@ void SimulationEngine::step() { ++m_iteration; - if (m_iteration == 1) { + if (m_iteration == 1) + { glMemoryBarrier(GL_SHADER_IMAGE_ACCESS_BARRIER_BIT); - glBindImageTexture(m_simulationTexture->getTextureUnit(), m_simulationTexture->getHandle(), 0, GL_FALSE, 0, GL_READ_WRITE, GL_RGBA32F); + glBindImageTexture(m_backgroundTexture->getTextureUnit(), m_backgroundTexture->getHandle(), 0, GL_FALSE, 0, GL_READ_WRITE, GL_RGBA32F); m_skyShader->bind(); glMemoryBarrier(GL_SHADER_IMAGE_ACCESS_BARRIER_BIT); m_skyShader->setUniformValue("sun.altitude", m_light.altitude); @@ -171,10 +177,15 @@ void SimulationEngine::clear() if (!m_initialized) return; glMemoryBarrier(GL_SHADER_IMAGE_ACCESS_BARRIER_BIT); + glClearTexImage(m_simulationTexture->getHandle(), 0, GL_RGBA, GL_FLOAT, NULL); glBindImageTexture(m_simulationTexture->getTextureUnit(), m_simulationTexture->getHandle(), 0, GL_FALSE, 0, GL_READ_WRITE, GL_RGBA32F); + glClearTexImage(m_spinlockTexture->getHandle(), 0, GL_RED, GL_UNSIGNED_INT, NULL); glBindImageTexture(m_spinlockTexture->getTextureUnit(), m_spinlockTexture->getHandle(), 0, GL_FALSE, 0, GL_READ_WRITE, GL_R32UI); + + glClearTexImage(m_backgroundTexture->getHandle(), 0, GL_RGBA, GL_FLOAT, NULL); + glBindImageTexture(m_backgroundTexture->getTextureUnit(), m_backgroundTexture->getHandle(), 0, GL_FALSE, 0, GL_READ_WRITE, GL_RGBA32F); m_iteration = 0; } @@ -224,6 +235,7 @@ void SimulationEngine::initializeTextures() { m_simulationTexture = std::make_unique(m_outputWidth, m_outputHeight, 0, OpenGL::TextureType::Color); m_spinlockTexture = std::make_unique(m_outputWidth, m_outputHeight, 1, OpenGL::TextureType::Monochrome); + m_backgroundTexture = std::make_unique(m_outputWidth, m_outputHeight, 2, OpenGL::TextureType::Color); } void SimulationEngine::resizeOutputTextureCallback(const unsigned int width, const unsigned int height) @@ -233,6 +245,7 @@ void SimulationEngine::resizeOutputTextureCallback(const unsigned int width, con m_simulationTexture.reset(); m_spinlockTexture.reset(); + m_backgroundTexture.reset(); initializeTextures(); clear(); diff --git a/src/haloray-core/simulation/simulationEngine.h b/src/haloray-core/simulation/simulationEngine.h index 6f5ded3..e644952 100644 --- a/src/haloray-core/simulation/simulationEngine.h +++ b/src/haloray-core/simulation/simulationEngine.h @@ -44,6 +44,7 @@ class SimulationEngine : public QObject, protected QOpenGLFunctions_4_4_Core double getMultipleScatteringProbability() const; unsigned int getOutputTextureHandle() const; + unsigned int getBackgroundTextureHandle() const; void resizeOutputTextureCallback(const unsigned int width, const unsigned int height); @@ -67,6 +68,7 @@ class SimulationEngine : public QObject, protected QOpenGLFunctions_4_4_Core QOpenGLShaderProgram *m_skyShader; std::unique_ptr m_simulationTexture; std::unique_ptr m_spinlockTexture; + std::unique_ptr m_backgroundTexture; Camera m_camera; LightSource m_light; From 264cdd06d1014c6e4b1aa90f5348cb0a663043f0 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Tue, 2 Feb 2021 11:35:08 +0200 Subject: [PATCH 060/184] Fix incorrect variable name which fails build on Linux --- src/haloray-core/simulation/simulationEngine.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/haloray-core/simulation/simulationEngine.cpp b/src/haloray-core/simulation/simulationEngine.cpp index c082792..6b611af 100644 --- a/src/haloray-core/simulation/simulationEngine.cpp +++ b/src/haloray-core/simulation/simulationEngine.cpp @@ -194,7 +194,7 @@ void SimulationEngine::initializeShader() #ifdef _WIN32 m_simulationShader->addCacheableShaderFromSourceFile(QOpenGLShader::ShaderTypeBit::Compute, ":/shaders/raytrace.glsl"); #else - mSimulationShader->addShaderFromSourceFile(QOpenGLShader::ShaderTypeBit::Compute, ":/shaders/raytrace.glsl"); + m_simulationShader->addShaderFromSourceFile(QOpenGLShader::ShaderTypeBit::Compute, ":/shaders/raytrace.glsl"); #endif if (m_simulationShader->link() == false) { From fb71e0b71bc3ecca3160bdb0b955f796b1356c3f Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Tue, 2 Feb 2021 11:40:42 +0200 Subject: [PATCH 061/184] Replace some forward declarations with actual includes GCC on Linux was failing to build HaloRay without the includes. --- src/haloray-core/gui/openGLWidget.cpp | 1 - src/haloray-core/gui/openGLWidget.h | 6 +----- src/haloray-core/simulation/simulationEngine.cpp | 1 - src/haloray-core/simulation/simulationEngine.h | 3 +-- 4 files changed, 2 insertions(+), 9 deletions(-) diff --git a/src/haloray-core/gui/openGLWidget.cpp b/src/haloray-core/gui/openGLWidget.cpp index 3004c9b..46631e1 100644 --- a/src/haloray-core/gui/openGLWidget.cpp +++ b/src/haloray-core/gui/openGLWidget.cpp @@ -9,7 +9,6 @@ #include "../simulation/camera.h" #include "../simulation/lightSource.h" #include "../simulation/crystalPopulation.h" -#include "../opengl/textureRenderer.h" namespace HaloRay { diff --git a/src/haloray-core/gui/openGLWidget.h b/src/haloray-core/gui/openGLWidget.h index ab69010..78282be 100644 --- a/src/haloray-core/gui/openGLWidget.h +++ b/src/haloray-core/gui/openGLWidget.h @@ -3,13 +3,9 @@ #include #include #include +#include "../opengl/textureRenderer.h" -namespace OpenGL -{ -class TextureRenderer; -} - class QMouseEvent; class QWheelEvent; class QSize; diff --git a/src/haloray-core/simulation/simulationEngine.cpp b/src/haloray-core/simulation/simulationEngine.cpp index 6b611af..a19eacc 100644 --- a/src/haloray-core/simulation/simulationEngine.cpp +++ b/src/haloray-core/simulation/simulationEngine.cpp @@ -3,7 +3,6 @@ #include #include #include -#include #include "../opengl/texture.h" #include "camera.h" #include "lightSource.h" diff --git a/src/haloray-core/simulation/simulationEngine.h b/src/haloray-core/simulation/simulationEngine.h index 74d0bdf..1da48a9 100644 --- a/src/haloray-core/simulation/simulationEngine.h +++ b/src/haloray-core/simulation/simulationEngine.h @@ -3,14 +3,13 @@ #include #include #include +#include #include "../opengl/texture.h" #include "camera.h" #include "lightSource.h" #include "crystalPopulation.h" #include "crystalPopulationRepository.h" -class QOpenGLShaderProgram; - namespace HaloRay { From 279ba6c30e9cb3b4539cabdc90943937eec844a0 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Tue, 2 Feb 2021 11:43:11 +0200 Subject: [PATCH 062/184] Remove qmake extension from readme file The extension is relevant only for Windows. Otherwise the code snippet works both on Linux and Windows. --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index b5c13e7..c1d6d81 100644 --- a/README.md +++ b/README.md @@ -135,7 +135,7 @@ Finally build the project by running: ```bash mkdir build cd src -qmake.exe main.pro -o ..\build\ +qmake main.pro -o ..\build\ cd ..\build make ``` From 665a357fb8981537e52400a23a856415eef0b593 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Tue, 2 Feb 2021 18:48:26 +0200 Subject: [PATCH 063/184] Add Hosek-Wilkie sky model reference code in repo The code is in C99 and will probably not be directly used, but adding it as reference until a custom impelmentation is ready. --- src/haloray-core/haloray-core.pro | 5 + .../backgroundSky/ArHosekSkyModel.c | 816 + .../backgroundSky/ArHosekSkyModel.h | 451 + .../ArHosekSkyModelData_CIEXYZ.h | 3863 ++ .../backgroundSky/ArHosekSkyModelData_RGB.h | 3861 ++ .../ArHosekSkyModelData_Spectral.h | 33770 ++++++++++++++++ 6 files changed, 42766 insertions(+) create mode 100644 src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.c create mode 100644 src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.h create mode 100644 src/haloray-core/simulation/backgroundSky/ArHosekSkyModelData_CIEXYZ.h create mode 100644 src/haloray-core/simulation/backgroundSky/ArHosekSkyModelData_RGB.h create mode 100644 src/haloray-core/simulation/backgroundSky/ArHosekSkyModelData_Spectral.h diff --git a/src/haloray-core/haloray-core.pro b/src/haloray-core/haloray-core.pro index 1e25fa0..74f7f2a 100644 --- a/src/haloray-core/haloray-core.pro +++ b/src/haloray-core/haloray-core.pro @@ -36,6 +36,10 @@ HEADERS += \ gui/viewSettingsWidget.h \ opengl/texture.h \ opengl/textureRenderer.h \ + simulation/backgroundSky/ArHosekSkyModel.h \ + simulation/backgroundSky/ArHosekSkyModelData_CIEXYZ.h \ + simulation/backgroundSky/ArHosekSkyModelData_RGB.h \ + simulation/backgroundSky/ArHosekSkyModelData_Spectral.h \ simulation/camera.h \ simulation/crystalPopulation.h \ simulation/crystalPopulationRepository.h \ @@ -55,6 +59,7 @@ SOURCES += \ gui/viewSettingsWidget.cpp \ opengl/texture.cpp \ opengl/textureRenderer.cpp \ + simulation/backgroundSky/ArHosekSkyModel.c \ simulation/camera.cpp \ simulation/crystalPopulation.cpp \ simulation/crystalPopulationRepository.cpp \ diff --git a/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.c b/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.c new file mode 100644 index 0000000..17c8880 --- /dev/null +++ b/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.c @@ -0,0 +1,816 @@ +/* +This source is published under the following 3-clause BSD license. + +Copyright (c) 2012 - 2013, Lukas Hosek and Alexander Wilkie +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * None of the names of the contributors may be used to endorse or promote + products derived from this software without specific prior written + permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +/* ============================================================================ + +This file is part of a sample implementation of the analytical skylight and +solar radiance models presented in the SIGGRAPH 2012 paper + + + "An Analytic Model for Full Spectral Sky-Dome Radiance" + +and the 2013 IEEE CG&A paper + + "Adding a Solar Radiance Function to the Hosek Skylight Model" + + both by + + Lukas Hosek and Alexander Wilkie + Charles University in Prague, Czech Republic + + + Version: 1.4a, February 22nd, 2013 + +Version history: + +1.4a February 22nd, 2013 + Removed unnecessary and counter-intuitive solar radius parameters + from the interface of the colourspace sky dome initialisation functions. + +1.4 February 11th, 2013 + Fixed a bug which caused the relative brightness of the solar disc + and the sky dome to be off by a factor of about 6. The sun was too + bright: this affected both normal and alien sun scenarios. The + coefficients of the solar radiance function were changed to fix this. + +1.3 January 21st, 2013 (not released to the public) + Added support for solar discs that are not exactly the same size as + the terrestrial sun. Also added support for suns with a different + emission spectrum ("Alien World" functionality). + +1.2a December 18th, 2012 + Fixed a mistake and some inaccuracies in the solar radiance function + explanations found in ArHosekSkyModel.h. The actual source code is + unchanged compared to version 1.2. + +1.2 December 17th, 2012 + Native RGB data and a solar radiance function that matches the turbidity + conditions were added. + +1.1 September 2012 + The coefficients of the spectral model are now scaled so that the output + is given in physical units: W / (m^-2 * sr * nm). Also, the output of the + XYZ model is now no longer scaled to the range [0...1]. Instead, it is + the result of a simple conversion from spectral data via the CIE 2 degree + standard observer matching functions. Therefore, after multiplication + with 683 lm / W, the Y channel now corresponds to luminance in lm. + +1.0 May 11th, 2012 + Initial release. + + +Please visit http://cgg.mff.cuni.cz/projects/SkylightModelling/ to check if +an updated version of this code has been published! + +============================================================================ */ + +/* + +All instructions on how to use this code are in the accompanying header file. + +*/ + +#include "ArHosekSkyModel.h" +#include "ArHosekSkyModelData_Spectral.h" +#include "ArHosekSkyModelData_CIEXYZ.h" +#include "ArHosekSkyModelData_RGB.h" +#include +#include +#include +#include + +// Some macro definitions that occur elsewhere in ART, and that have to be +// replicated to make this a stand-alone module. + +#ifndef NIL +#define NIL 0 +#endif + +#ifndef MATH_PI +#define MATH_PI 3.141592653589793 +#endif + +#ifndef MATH_DEG_TO_RAD +#define MATH_DEG_TO_RAD ( MATH_PI / 180.0 ) +#endif + +#ifndef MATH_RAD_TO_DEG +#define MATH_RAD_TO_DEG ( 180.0 / MATH_PI ) +#endif + +#ifndef DEGREES +#define DEGREES * MATH_DEG_TO_RAD +#endif + +#ifndef TERRESTRIAL_SOLAR_RADIUS +#define TERRESTRIAL_SOLAR_RADIUS ( ( 0.51 DEGREES ) / 2.0 ) +#endif + +#ifndef ALLOC +#define ALLOC(_struct) ((_struct *)malloc(sizeof(_struct))) +#endif + +// internal definitions + +typedef double *ArHosekSkyModel_Dataset; +typedef double *ArHosekSkyModel_Radiance_Dataset; + +// internal functions + +void ArHosekSkyModel_CookConfiguration( + ArHosekSkyModel_Dataset dataset, + ArHosekSkyModelConfiguration config, + double turbidity, + double albedo, + double solar_elevation + ) +{ + double * elev_matrix; + + int int_turbidity = (int)turbidity; + double turbidity_rem = turbidity - (double)int_turbidity; + + solar_elevation = pow(solar_elevation / (MATH_PI / 2.0), (1.0 / 3.0)); + + // alb 0 low turb + + elev_matrix = dataset + ( 9 * 6 * (int_turbidity-1) ); + + + for( unsigned int i = 0; i < 9; ++i ) + { + //(1-t).^3* A1 + 3*(1-t).^2.*t * A2 + 3*(1-t) .* t .^ 2 * A3 + t.^3 * A4; + config[i] = + (1.0-albedo) * (1.0 - turbidity_rem) + * ( pow(1.0-solar_elevation, 5.0) * elev_matrix[i] + + 5.0 * pow(1.0-solar_elevation, 4.0) * solar_elevation * elev_matrix[i+9] + + 10.0*pow(1.0-solar_elevation, 3.0)*pow(solar_elevation, 2.0) * elev_matrix[i+18] + + 10.0*pow(1.0-solar_elevation, 2.0)*pow(solar_elevation, 3.0) * elev_matrix[i+27] + + 5.0*(1.0-solar_elevation)*pow(solar_elevation, 4.0) * elev_matrix[i+36] + + pow(solar_elevation, 5.0) * elev_matrix[i+45]); + } + + // alb 1 low turb + elev_matrix = dataset + (9*6*10 + 9*6*(int_turbidity-1)); + for(unsigned int i = 0; i < 9; ++i) + { + //(1-t).^3* A1 + 3*(1-t).^2.*t * A2 + 3*(1-t) .* t .^ 2 * A3 + t.^3 * A4; + config[i] += + (albedo) * (1.0 - turbidity_rem) + * ( pow(1.0-solar_elevation, 5.0) * elev_matrix[i] + + 5.0 * pow(1.0-solar_elevation, 4.0) * solar_elevation * elev_matrix[i+9] + + 10.0*pow(1.0-solar_elevation, 3.0)*pow(solar_elevation, 2.0) * elev_matrix[i+18] + + 10.0*pow(1.0-solar_elevation, 2.0)*pow(solar_elevation, 3.0) * elev_matrix[i+27] + + 5.0*(1.0-solar_elevation)*pow(solar_elevation, 4.0) * elev_matrix[i+36] + + pow(solar_elevation, 5.0) * elev_matrix[i+45]); + } + + if(int_turbidity == 10) + return; + + // alb 0 high turb + elev_matrix = dataset + (9*6*(int_turbidity)); + for(unsigned int i = 0; i < 9; ++i) + { + //(1-t).^3* A1 + 3*(1-t).^2.*t * A2 + 3*(1-t) .* t .^ 2 * A3 + t.^3 * A4; + config[i] += + (1.0-albedo) * (turbidity_rem) + * ( pow(1.0-solar_elevation, 5.0) * elev_matrix[i] + + 5.0 * pow(1.0-solar_elevation, 4.0) * solar_elevation * elev_matrix[i+9] + + 10.0*pow(1.0-solar_elevation, 3.0)*pow(solar_elevation, 2.0) * elev_matrix[i+18] + + 10.0*pow(1.0-solar_elevation, 2.0)*pow(solar_elevation, 3.0) * elev_matrix[i+27] + + 5.0*(1.0-solar_elevation)*pow(solar_elevation, 4.0) * elev_matrix[i+36] + + pow(solar_elevation, 5.0) * elev_matrix[i+45]); + } + + // alb 1 high turb + elev_matrix = dataset + (9*6*10 + 9*6*(int_turbidity)); + for(unsigned int i = 0; i < 9; ++i) + { + //(1-t).^3* A1 + 3*(1-t).^2.*t * A2 + 3*(1-t) .* t .^ 2 * A3 + t.^3 * A4; + config[i] += + (albedo) * (turbidity_rem) + * ( pow(1.0-solar_elevation, 5.0) * elev_matrix[i] + + 5.0 * pow(1.0-solar_elevation, 4.0) * solar_elevation * elev_matrix[i+9] + + 10.0*pow(1.0-solar_elevation, 3.0)*pow(solar_elevation, 2.0) * elev_matrix[i+18] + + 10.0*pow(1.0-solar_elevation, 2.0)*pow(solar_elevation, 3.0) * elev_matrix[i+27] + + 5.0*(1.0-solar_elevation)*pow(solar_elevation, 4.0) * elev_matrix[i+36] + + pow(solar_elevation, 5.0) * elev_matrix[i+45]); + } +} + +double ArHosekSkyModel_CookRadianceConfiguration( + ArHosekSkyModel_Radiance_Dataset dataset, + double turbidity, + double albedo, + double solar_elevation + ) +{ + double* elev_matrix; + + int int_turbidity = (int)turbidity; + double turbidity_rem = turbidity - (double)int_turbidity; + double res; + solar_elevation = pow(solar_elevation / (MATH_PI / 2.0), (1.0 / 3.0)); + + // alb 0 low turb + elev_matrix = dataset + (6*(int_turbidity-1)); + //(1-t).^3* A1 + 3*(1-t).^2.*t * A2 + 3*(1-t) .* t .^ 2 * A3 + t.^3 * A4; + res = (1.0-albedo) * (1.0 - turbidity_rem) * + ( pow(1.0-solar_elevation, 5.0) * elev_matrix[0] + + 5.0*pow(1.0-solar_elevation, 4.0)*solar_elevation * elev_matrix[1] + + 10.0*pow(1.0-solar_elevation, 3.0)*pow(solar_elevation, 2.0) * elev_matrix[2] + + 10.0*pow(1.0-solar_elevation, 2.0)*pow(solar_elevation, 3.0) * elev_matrix[3] + + 5.0*(1.0-solar_elevation)*pow(solar_elevation, 4.0) * elev_matrix[4] + + pow(solar_elevation, 5.0) * elev_matrix[5]); + + // alb 1 low turb + elev_matrix = dataset + (6*10 + 6*(int_turbidity-1)); + //(1-t).^3* A1 + 3*(1-t).^2.*t * A2 + 3*(1-t) .* t .^ 2 * A3 + t.^3 * A4; + res += (albedo) * (1.0 - turbidity_rem) * + ( pow(1.0-solar_elevation, 5.0) * elev_matrix[0] + + 5.0*pow(1.0-solar_elevation, 4.0)*solar_elevation * elev_matrix[1] + + 10.0*pow(1.0-solar_elevation, 3.0)*pow(solar_elevation, 2.0) * elev_matrix[2] + + 10.0*pow(1.0-solar_elevation, 2.0)*pow(solar_elevation, 3.0) * elev_matrix[3] + + 5.0*(1.0-solar_elevation)*pow(solar_elevation, 4.0) * elev_matrix[4] + + pow(solar_elevation, 5.0) * elev_matrix[5]); + if(int_turbidity == 10) + return res; + + // alb 0 high turb + elev_matrix = dataset + (6*(int_turbidity)); + //(1-t).^3* A1 + 3*(1-t).^2.*t * A2 + 3*(1-t) .* t .^ 2 * A3 + t.^3 * A4; + res += (1.0-albedo) * (turbidity_rem) * + ( pow(1.0-solar_elevation, 5.0) * elev_matrix[0] + + 5.0*pow(1.0-solar_elevation, 4.0)*solar_elevation * elev_matrix[1] + + 10.0*pow(1.0-solar_elevation, 3.0)*pow(solar_elevation, 2.0) * elev_matrix[2] + + 10.0*pow(1.0-solar_elevation, 2.0)*pow(solar_elevation, 3.0) * elev_matrix[3] + + 5.0*(1.0-solar_elevation)*pow(solar_elevation, 4.0) * elev_matrix[4] + + pow(solar_elevation, 5.0) * elev_matrix[5]); + + // alb 1 high turb + elev_matrix = dataset + (6*10 + 6*(int_turbidity)); + //(1-t).^3* A1 + 3*(1-t).^2.*t * A2 + 3*(1-t) .* t .^ 2 * A3 + t.^3 * A4; + res += (albedo) * (turbidity_rem) * + ( pow(1.0-solar_elevation, 5.0) * elev_matrix[0] + + 5.0*pow(1.0-solar_elevation, 4.0)*solar_elevation * elev_matrix[1] + + 10.0*pow(1.0-solar_elevation, 3.0)*pow(solar_elevation, 2.0) * elev_matrix[2] + + 10.0*pow(1.0-solar_elevation, 2.0)*pow(solar_elevation, 3.0) * elev_matrix[3] + + 5.0*(1.0-solar_elevation)*pow(solar_elevation, 4.0) * elev_matrix[4] + + pow(solar_elevation, 5.0) * elev_matrix[5]); + return res; +} + +double ArHosekSkyModel_GetRadianceInternal( + ArHosekSkyModelConfiguration configuration, + double theta, + double gamma + ) +{ + const double expM = exp(configuration[4] * gamma); + const double rayM = cos(gamma)*cos(gamma); + const double mieM = (1.0 + cos(gamma)*cos(gamma)) / pow((1.0 + configuration[8]*configuration[8] - 2.0*configuration[8]*cos(gamma)), 1.5); + const double zenith = sqrt(cos(theta)); + + return (1.0 + configuration[0] * exp(configuration[1] / (cos(theta) + 0.01))) * + (configuration[2] + configuration[3] * expM + configuration[5] * rayM + configuration[6] * mieM + configuration[7] * zenith); +} + +// spectral version + +ArHosekSkyModelState * arhosekskymodelstate_alloc_init( + const double solar_elevation, + const double atmospheric_turbidity, + const double ground_albedo + ) +{ + ArHosekSkyModelState * state = ALLOC(ArHosekSkyModelState); + + state->solar_radius = ( 0.51 DEGREES ) / 2.0; + state->turbidity = atmospheric_turbidity; + state->albedo = ground_albedo; + state->elevation = solar_elevation; + + for( unsigned int wl = 0; wl < 11; ++wl ) + { + ArHosekSkyModel_CookConfiguration( + datasets[wl], + state->configs[wl], + atmospheric_turbidity, + ground_albedo, + solar_elevation + ); + + state->radiances[wl] = + ArHosekSkyModel_CookRadianceConfiguration( + datasetsRad[wl], + atmospheric_turbidity, + ground_albedo, + solar_elevation + ); + + state->emission_correction_factor_sun[wl] = 1.0; + state->emission_correction_factor_sky[wl] = 1.0; + } + + return state; +} + +// 'blackbody_scaling_factor' +// +// Fudge factor, computed in Mathematica, to scale the results of the +// following function to match the solar radiance spectrum used in the +// original simulation. The scaling is done so their integrals over the +// range from 380.0 to 720.0 nanometers match for a blackbody temperature +// of 5800 K. +// Which leaves the original spectrum being less bright overall than the 5.8k +// blackbody radiation curve if the ultra-violet part of the spectrum is +// also considered. But the visible brightness should be very similar. + +const double blackbody_scaling_factor = 3.19992 * 10E-11; + +// 'art_blackbody_dd_value()' function +// +// Blackbody radiance, Planck's formula + +double art_blackbody_dd_value( + const double temperature, + const double lambda + ) +{ + double c1 = 3.74177 * 10E-17; + double c2 = 0.0143878; + double value; + + value = ( c1 / ( pow( lambda, 5.0 ) ) ) + * ( 1.0 / ( exp( c2 / ( lambda * temperature ) ) - 1.0 ) ); + + return value; +} + +// 'originalSolarRadianceTable[]' +// +// The solar spectrum incident at the top of the atmosphere, as it was used +// in the brute force path tracer that generated the reference results the +// model was fitted to. We need this as the yardstick to compare any altered +// Blackbody emission spectra for alien world stars to. + +// This is just the data from the Preetham paper, extended into the UV range. + +const double originalSolarRadianceTable[] = +{ + 7500.0, + 12500.0, + 21127.5, + 26760.5, + 30663.7, + 27825.0, + 25503.8, + 25134.2, + 23212.1, + 21526.7, + 19870.8 +}; + +ArHosekSkyModelState * arhosekskymodelstate_alienworld_alloc_init( + const double solar_elevation, + const double solar_intensity, + const double solar_surface_temperature_kelvin, + const double atmospheric_turbidity, + const double ground_albedo + ) +{ + ArHosekSkyModelState * state = ALLOC(ArHosekSkyModelState); + + state->turbidity = atmospheric_turbidity; + state->albedo = ground_albedo; + state->elevation = solar_elevation; + + for( unsigned int wl = 0; wl < 11; ++wl ) + { + // Basic init as for the normal scenario + + ArHosekSkyModel_CookConfiguration( + datasets[wl], + state->configs[wl], + atmospheric_turbidity, + ground_albedo, + solar_elevation + ); + + state->radiances[wl] = + ArHosekSkyModel_CookRadianceConfiguration( + datasetsRad[wl], + atmospheric_turbidity, + ground_albedo, + solar_elevation + ); + + // The wavelength of this band in nanometers + + double owl = ( 320.0 + 40.0 * wl ) * 10E-10; + + // The original intensity we just computed + + double osr = originalSolarRadianceTable[wl]; + + // The intensity of a blackbody with the desired temperature + // The fudge factor described above is used to make sure the BB + // function matches the used radiance data reasonably well + // in magnitude. + + double nsr = + art_blackbody_dd_value(solar_surface_temperature_kelvin, owl) + * blackbody_scaling_factor; + + // Correction factor for this waveband is simply the ratio of + // the two. + + state->emission_correction_factor_sun[wl] = nsr / osr; + } + + // We then compute the average correction factor of all wavebands. + + // Theoretically, some weighting to favour wavelengths human vision is + // more sensitive to could be introduced here - think V(lambda). But + // given that the whole effort is not *that* accurate to begin with (we + // are talking about the appearance of alien worlds, after all), simple + // averaging over the visible wavelenghts (! - this is why we start at + // WL #2, and only use 2-11) seems like a sane first approximation. + + double correctionFactor = 0.0; + + for ( unsigned int i = 2; i < 11; i++ ) + { + correctionFactor += + state->emission_correction_factor_sun[i]; + } + + // This is the average ratio in emitted energy between our sun, and an + // equally large sun with the blackbody spectrum we requested. + + // Division by 9 because we only used 9 of the 11 wavelengths for this + // (see above). + + double ratio = correctionFactor / 9.0; + + // This ratio is then used to determine the radius of the alien sun + // on the sky dome. The additional factor 'solar_intensity' can be used + // to make the alien sun brighter or dimmer compared to our sun. + + state->solar_radius = + ( sqrt( solar_intensity ) * TERRESTRIAL_SOLAR_RADIUS ) + / sqrt( ratio ); + + // Finally, we have to reduce the scaling factor of the sky by the + // ratio used to scale the solar disc size. The rationale behind this is + // that the scaling factors apply to the new blackbody spectrum, which + // can be more or less bright than the one our sun emits. However, we + // just scaled the size of the alien solar disc so it is roughly as + // bright (in terms of energy emitted) as the terrestrial sun. So the sky + // dome has to be reduced in brightness appropriately - but not in an + // uniform fashion across wavebands. If we did that, the sky colour would + // be wrong. + + for ( unsigned int i = 0; i < 11; i++ ) + { + state->emission_correction_factor_sky[i] = + solar_intensity + * state->emission_correction_factor_sun[i] / ratio; + } + + return state; +} + +void arhosekskymodelstate_free( + ArHosekSkyModelState * state + ) +{ + free(state); +} + +double arhosekskymodel_radiance( + ArHosekSkyModelState * state, + double theta, + double gamma, + double wavelength + ) +{ + int low_wl = (wavelength - 320.0 ) / 40.0; + + if ( low_wl < 0 || low_wl >= 11 ) + return 0.0f; + + double interp = fmod((wavelength - 320.0 ) / 40.0, 1.0); + + double val_low = + ArHosekSkyModel_GetRadianceInternal( + state->configs[low_wl], + theta, + gamma + ) + * state->radiances[low_wl] + * state->emission_correction_factor_sky[low_wl]; + + if ( interp < 1e-6 ) + return val_low; + + double result = ( 1.0 - interp ) * val_low; + + if ( low_wl+1 < 11 ) + { + result += + interp + * ArHosekSkyModel_GetRadianceInternal( + state->configs[low_wl+1], + theta, + gamma + ) + * state->radiances[low_wl+1] + * state->emission_correction_factor_sky[low_wl+1]; + } + + return result; +} + + +// xyz and rgb versions + +ArHosekSkyModelState * arhosek_xyz_skymodelstate_alloc_init( + const double turbidity, + const double albedo, + const double elevation + ) +{ + ArHosekSkyModelState * state = ALLOC(ArHosekSkyModelState); + + state->solar_radius = TERRESTRIAL_SOLAR_RADIUS; + state->turbidity = turbidity; + state->albedo = albedo; + state->elevation = elevation; + + for( unsigned int channel = 0; channel < 3; ++channel ) + { + ArHosekSkyModel_CookConfiguration( + datasetsXYZ[channel], + state->configs[channel], + turbidity, + albedo, + elevation + ); + + state->radiances[channel] = + ArHosekSkyModel_CookRadianceConfiguration( + datasetsXYZRad[channel], + turbidity, + albedo, + elevation + ); + } + + return state; +} + + +ArHosekSkyModelState * arhosek_rgb_skymodelstate_alloc_init( + const double turbidity, + const double albedo, + const double elevation + ) +{ + ArHosekSkyModelState* state = ALLOC(ArHosekSkyModelState); + + state->solar_radius = TERRESTRIAL_SOLAR_RADIUS; + state->turbidity = turbidity; + state->albedo = albedo; + state->elevation = elevation; + + for( unsigned int channel = 0; channel < 3; ++channel ) + { + ArHosekSkyModel_CookConfiguration( + datasetsRGB[channel], + state->configs[channel], + turbidity, + albedo, + elevation + ); + + state->radiances[channel] = + ArHosekSkyModel_CookRadianceConfiguration( + datasetsRGBRad[channel], + turbidity, + albedo, + elevation + ); + } + + return state; +} + +double arhosek_tristim_skymodel_radiance( + ArHosekSkyModelState * state, + double theta, + double gamma, + int channel + ) +{ + return + ArHosekSkyModel_GetRadianceInternal( + state->configs[channel], + theta, + gamma + ) + * state->radiances[channel]; +} + +const int pieces = 45; +const int order = 4; + +double arhosekskymodel_sr_internal( + ArHosekSkyModelState * state, + int turbidity, + int wl, + double elevation + ) +{ + int pos = + (int) (pow(2.0*elevation / MATH_PI, 1.0/3.0) * pieces); // floor + + if ( pos > 44 ) pos = 44; + + const double break_x = + pow(((double) pos / (double) pieces), 3.0) * (MATH_PI * 0.5); + + const double * coefs = + solarDatasets[wl] + (order * pieces * turbidity + order * (pos+1) - 1); + + double res = 0.0; + const double x = elevation - break_x; + double x_exp = 1.0; + + for (int i = 0; i < order; ++i) + { + res += x_exp * *coefs--; + x_exp *= x; + } + + return res * state->emission_correction_factor_sun[wl]; +} + +double arhosekskymodel_solar_radiance_internal2( + ArHosekSkyModelState * state, + double wavelength, + double elevation, + double gamma + ) +{ + assert( + wavelength >= 320.0 + && wavelength <= 720.0 + && state->turbidity >= 1.0 + && state->turbidity <= 10.0 + ); + + + int turb_low = (int) state->turbidity - 1; + double turb_frac = state->turbidity - (double) (turb_low + 1); + + if ( turb_low == 9 ) + { + turb_low = 8; + turb_frac = 1.0; + } + + int wl_low = (int) ((wavelength - 320.0) / 40.0); + double wl_frac = fmod(wavelength, 40.0) / 40.0; + + if ( wl_low == 10 ) + { + wl_low = 9; + wl_frac = 1.0; + } + + double direct_radiance = + ( 1.0 - turb_frac ) + * ( (1.0 - wl_frac) + * arhosekskymodel_sr_internal( + state, + turb_low, + wl_low, + elevation + ) + + wl_frac + * arhosekskymodel_sr_internal( + state, + turb_low, + wl_low+1, + elevation + ) + ) + + turb_frac + * ( ( 1.0 - wl_frac ) + * arhosekskymodel_sr_internal( + state, + turb_low+1, + wl_low, + elevation + ) + + wl_frac + * arhosekskymodel_sr_internal( + state, + turb_low+1, + wl_low+1, + elevation + ) + ); + + double ldCoefficient[6]; + + for ( int i = 0; i < 6; i++ ) + ldCoefficient[i] = + (1.0 - wl_frac) * limbDarkeningDatasets[wl_low ][i] + + wl_frac * limbDarkeningDatasets[wl_low+1][i]; + + // sun distance to diameter ratio, squared + + const double sol_rad_sin = sin(state->solar_radius); + const double ar2 = 1 / ( sol_rad_sin * sol_rad_sin ); + const double singamma = sin(gamma); + double sc2 = 1.0 - ar2 * singamma * singamma; + if (sc2 < 0.0 ) sc2 = 0.0; + double sampleCosine = sqrt (sc2); + + // The following will be improved in future versions of the model: + // here, we directly use fitted 5th order polynomials provided by the + // astronomical community for the limb darkening effect. Astronomers need + // such accurate fittings for their predictions. However, this sort of + // accuracy is not really needed for CG purposes, so an approximated + // dataset based on quadratic polynomials will be provided in a future + // release. + + double darkeningFactor = + ldCoefficient[0] + + ldCoefficient[1] * sampleCosine + + ldCoefficient[2] * pow( sampleCosine, 2.0 ) + + ldCoefficient[3] * pow( sampleCosine, 3.0 ) + + ldCoefficient[4] * pow( sampleCosine, 4.0 ) + + ldCoefficient[5] * pow( sampleCosine, 5.0 ); + + direct_radiance *= darkeningFactor; + + return direct_radiance; +} + +double arhosekskymodel_solar_radiance( + ArHosekSkyModelState * state, + double theta, + double gamma, + double wavelength + ) +{ + double direct_radiance = + arhosekskymodel_solar_radiance_internal2( + state, + wavelength, + ((MATH_PI/2.0)-theta), + gamma + ); + + double inscattered_radiance = + arhosekskymodel_radiance( + state, + theta, + gamma, + wavelength + ); + + return direct_radiance + inscattered_radiance; +} + diff --git a/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.h b/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.h new file mode 100644 index 0000000..19ec82f --- /dev/null +++ b/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.h @@ -0,0 +1,451 @@ +/* +This source is published under the following 3-clause BSD license. + +Copyright (c) 2012 - 2013, Lukas Hosek and Alexander Wilkie +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * None of the names of the contributors may be used to endorse or promote + products derived from this software without specific prior written + permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + + +/* ============================================================================ + +This file is part of a sample implementation of the analytical skylight and +solar radiance models presented in the SIGGRAPH 2012 paper + + + "An Analytic Model for Full Spectral Sky-Dome Radiance" + +and the 2013 IEEE CG&A paper + + "Adding a Solar Radiance Function to the Hosek Skylight Model" + + both by + + Lukas Hosek and Alexander Wilkie + Charles University in Prague, Czech Republic + + + Version: 1.4a, February 22nd, 2013 + +Version history: + +1.4a February 22nd, 2013 + Removed unnecessary and counter-intuitive solar radius parameters + from the interface of the colourspace sky dome initialisation functions. + +1.4 February 11th, 2013 + Fixed a bug which caused the relative brightness of the solar disc + and the sky dome to be off by a factor of about 6. The sun was too + bright: this affected both normal and alien sun scenarios. The + coefficients of the solar radiance function were changed to fix this. + +1.3 January 21st, 2013 (not released to the public) + Added support for solar discs that are not exactly the same size as + the terrestrial sun. Also added support for suns with a different + emission spectrum ("Alien World" functionality). + +1.2a December 18th, 2012 + Fixed a mistake and some inaccuracies in the solar radiance function + explanations found in ArHosekSkyModel.h. The actual source code is + unchanged compared to version 1.2. + +1.2 December 17th, 2012 + Native RGB data and a solar radiance function that matches the turbidity + conditions were added. + +1.1 September 2012 + The coefficients of the spectral model are now scaled so that the output + is given in physical units: W / (m^-2 * sr * nm). Also, the output of the + XYZ model is now no longer scaled to the range [0...1]. Instead, it is + the result of a simple conversion from spectral data via the CIE 2 degree + standard observer matching functions. Therefore, after multiplication + with 683 lm / W, the Y channel now corresponds to luminance in lm. + +1.0 May 11th, 2012 + Initial release. + + +Please visit http://cgg.mff.cuni.cz/projects/SkylightModelling/ to check if +an updated version of this code has been published! + +============================================================================ */ + + +/* + +This code is taken from ART, a rendering research system written in a +mix of C99 / Objective C. Since ART is not a small system and is intended to +be inter-operable with other libraries, and since C does not have namespaces, +the structures and functions in ART all have to have somewhat wordy +canonical names that begin with Ar.../ar..., like those seen in this example. + +Usage information: +================== + + +Model initialisation +-------------------- + +A separate ArHosekSkyModelState has to be maintained for each spectral +band you want to use the model for. So in a renderer with 'num_channels' +bands, you would need something like + + ArHosekSkyModelState * skymodel_state[num_channels]; + +You then have to allocate and initialise these states. In the following code +snippet, we assume that 'albedo' is defined as + + double albedo[num_channels]; + +with a ground albedo value between [0,1] for each channel. The solar elevation +is given in radians. + + for ( unsigned int i = 0; i < num_channels; i++ ) + skymodel_state[i] = + arhosekskymodelstate_alloc_init( + turbidity, + albedo[i], + solarElevation + ); + +Note that starting with version 1.3, there is also a second initialisation +function which generates skydome states for different solar emission spectra +and solar radii: 'arhosekskymodelstate_alienworld_alloc_init()'. + +See the notes about the "Alien World" functionality provided further down for a +discussion of the usefulness and limits of that second initalisation function. +Sky model states that have been initialised with either function behave in a +completely identical fashion during use and cleanup. + +Using the model to generate skydome samples +------------------------------------------- + +Generating a skydome radiance spectrum "skydome_result" for a given location +on the skydome determined via the angles theta and gamma works as follows: + + double skydome_result[num_channels]; + + for ( unsigned int i = 0; i < num_channels; i++ ) + skydome_result[i] = + arhosekskymodel_radiance( + skymodel_state[i], + theta, + gamma, + channel_center[i] + ); + +The variable "channel_center" is assumed to hold the channel center wavelengths +for each of the num_channels samples of the spectrum we are building. + + +Cleanup after use +----------------- + +After rendering is complete, the content of the sky model states should be +disposed of via + + for ( unsigned int i = 0; i < num_channels; i++ ) + arhosekskymodelstate_free( skymodel_state[i] ); + + +CIE XYZ Version of the Model +---------------------------- + +Usage of the CIE XYZ version of the model is exactly the same, except that +num_channels is of course always 3, and that ArHosekTristimSkyModelState and +arhosek_tristim_skymodel_radiance() have to be used instead of their spectral +counterparts. + +RGB Version of the Model +------------------------ + +The RGB version uses sRGB primaries with a linear gamma ramp. The same set of +functions as with the XYZ data is used, except the model is initialized +by calling arhosek_rgb_skymodelstate_alloc_init. + +Solar Radiance Function +----------------------- + +For each position on the solar disc, this function returns the entire radiance +one sees - direct emission, as well as in-scattered light in the area of the +solar disc. The latter is important for low solar elevations - nice images of +the setting sun would not be possible without this. This is also the reason why +this function, just like the regular sky dome model evaluation function, needs +access to the sky dome data structures, as these provide information on +in-scattered radiance. + +CAVEAT #1: in this release, this function is only provided in spectral form! + RGB/XYZ versions to follow at a later date. + +CAVEAT #2: (fixed from release 1.3 onwards) + +CAVEAT #3: limb darkening renders the brightness of the solar disc + inhomogeneous even for high solar elevations - only taking a single + sample at the centre of the sun will yield an incorrect power + estimate for the solar disc! Always take multiple random samples + across the entire solar disc to estimate its power! + +CAVEAT #4: in this version, the limb darkening calculations still use a fairly + computationally expensive 5th order polynomial that was directly + taken from astronomical literature. For the purposes of Computer + Graphics, this is needlessly accurate, though, and will be replaced + by a cheaper approximation in a future release. + +"Alien World" functionality +--------------------------- + +The Hosek sky model can be used to roughly (!) predict the appearance of +outdoor scenes on earth-like planets, i.e. planets of a similar size and +atmospheric make-up. Since the spectral version of our model predicts sky dome +luminance patterns and solar radiance independently for each waveband, and +since the intensity of each waveband is solely dependent on the input radiance +from the star that the world in question is orbiting, it is trivial to re-scale +the wavebands to match a different star radiance. + +At least in theory, the spectral version of the model has always been capable +of this sort of thing, and the actual sky dome and solar radiance models were +actually not altered at all in this release. All we did was to add some support +functionality for doing this more easily with the existing data and functions, +and to add some explanations. + +Just use 'arhosekskymodelstate_alienworld_alloc_init()' to initialise the sky +model states (you will have to provide values for star temperature and solar +intensity compared to the terrestrial sun), and do everything else as you +did before. + +CAVEAT #1: we assume the emission of the star that illuminates the alien world + to be a perfect blackbody emission spectrum. This is never entirely + realistic - real star emission spectra are considerably more complex + than this, mainly due to absorption effects in the outer layers of + stars. However, blackbody spectra are a reasonable first assumption + in a usage scenario like this, where 100% accuracy is simply not + necessary: for rendering purposes, there are likely no visible + differences between a highly accurate solution based on a more + involved simulation, and this approximation. + +CAVEAT #2: we always use limb darkening data from our own sun to provide this + "appearance feature", even for suns of strongly different + temperature. Which is presumably not very realistic, but (as with + the unaltered blackbody spectrum from caveat #1) probably not a bad + first guess, either. If you need more accuracy than we provide here, + please make inquiries with a friendly astro-physicst of your choice. + +CAVEAT #3: you have to provide a value for the solar intensity of the star + which illuminates the alien world. For this, please bear in mind + that there is very likely a comparatively tight range of absolute + solar irradiance values for which an earth-like planet with an + atmosphere like the one we assume in our model can exist in the + first place! + + Too much irradiance, and the atmosphere probably boils off into + space, too little, it freezes. Which means that stars of + considerably different emission colour than our sun will have to be + fairly different in size from it, to still provide a reasonable and + inhabitable amount of irradiance. Red stars will need to be much + larger than our sun, while white or blue stars will have to be + comparatively tiny. The initialisation function handles this and + computes a plausible solar radius for a given emission spectrum. In + terms of absolute radiometric values, you should probably not stray + all too far from a solar intensity value of 1.0. + +CAVEAT #4: although we now support different solar radii for the actual solar + disc, the sky dome luminance patterns are *not* parameterised by + this value - i.e. the patterns stay exactly the same for different + solar radii! Which is of course not correct. But in our experience, + solar discs up to several degrees in diameter (! - our own sun is + half a degree across) do not cause the luminance patterns on the sky + to change perceptibly. The reason we know this is that we initially + used unrealistically large suns in our brute force path tracer, in + order to improve convergence speeds (which in the beginning were + abysmal). Later, we managed to do the reference renderings much + faster even with realistically small suns, and found that there was + no real difference in skydome appearance anyway. + Conclusion: changing the solar radius should not be over-done, so + close orbits around red supergiants are a no-no. But for the + purposes of getting a fairly credible first impression of what an + alien world with a reasonably sized sun would look like, what we are + doing here is probably still o.k. + +HINT #1: if you want to model the sky of an earth-like planet that orbits + a binary star, just super-impose two of these models with solar + intensity of ~0.5 each, and closely spaced solar positions. Light is + additive, after all. Tattooine, here we come... :-) + + P.S. according to Star Wars canon, Tattooine orbits a binary + that is made up of a G and K class star, respectively. + So ~5500K and ~4200K should be good first guesses for their + temperature. Just in case you were wondering, after reading the + previous paragraph. +*/ + + +#ifndef _ARHOSEK_SKYMODEL_H_ +#define _ARHOSEK_SKYMODEL_H_ + +typedef double ArHosekSkyModelConfiguration[9]; + + +// Spectral version of the model + +/* ---------------------------------------------------------------------------- + + ArHosekSkyModelState struct + --------------------------- + + This struct holds the pre-computation data for one particular albedo value. + Most fields are self-explanatory, but users should never directly + manipulate any of them anyway. The only consistent way to manipulate such + structs is via the functions 'arhosekskymodelstate_alloc_init' and + 'arhosekskymodelstate_free'. + + 'emission_correction_factor_sky' + 'emission_correction_factor_sun' + + The original model coefficients were fitted against the emission of + our local sun. If a different solar emission is desired (i.e. if the + model is being used to predict skydome appearance for an earth-like + planet that orbits a different star), these correction factors, which + are determined during the alloc_init step, are applied to each waveband + separately (they default to 1.0 in normal usage). This is the simplest + way to retrofit this sort of capability to the existing model. The + different factors for sky and sun are needed since the solar disc may + be of a different size compared to the terrestrial sun. + +---------------------------------------------------------------------------- */ + +typedef struct ArHosekSkyModelState +{ + ArHosekSkyModelConfiguration configs[11]; + double radiances[11]; + double turbidity; + double solar_radius; + double emission_correction_factor_sky[11]; + double emission_correction_factor_sun[11]; + double albedo; + double elevation; +} +ArHosekSkyModelState; + +/* ---------------------------------------------------------------------------- + + arhosekskymodelstate_alloc_init() function + ------------------------------------------ + + Initialises an ArHosekSkyModelState struct for a terrestrial setting. + +---------------------------------------------------------------------------- */ + +ArHosekSkyModelState * arhosekskymodelstate_alloc_init( + const double solar_elevation, + const double atmospheric_turbidity, + const double ground_albedo + ); + + +/* ---------------------------------------------------------------------------- + + arhosekskymodelstate_alienworld_alloc_init() function + ----------------------------------------------------- + + Initialises an ArHosekSkyModelState struct for an "alien world" setting + with a sun of a surface temperature given in 'kelvin'. The parameter + 'solar_intensity' controls the overall brightness of the sky, relative + to the solar irradiance on Earth. A value of 1.0 yields a sky dome that + is, on average over the wavelenghts covered in the model (!), as bright + as the terrestrial sky in radiometric terms. + + Which means that the solar radius has to be adjusted, since the + emissivity of a solar surface with a given temperature is more or less + fixed. So hotter suns have to be smaller to be equally bright as the + terrestrial sun, while cooler suns have to be larger. Note that there are + limits to the validity of the luminance patterns of the underlying model: + see the discussion above for more on this. In particular, an alien sun with + a surface temperature of only 2000 Kelvin has to be very large if it is + to be as bright as the terrestrial sun - so large that the luminance + patterns are no longer a really good fit in that case. + + If you need information about the solar radius that the model computes + for a given temperature (say, for light source sampling purposes), you + have to query the 'solar_radius' variable of the sky model state returned + *after* running this function. + +---------------------------------------------------------------------------- */ + +ArHosekSkyModelState * arhosekskymodelstate_alienworld_alloc_init( + const double solar_elevation, + const double solar_intensity, + const double solar_surface_temperature_kelvin, + const double atmospheric_turbidity, + const double ground_albedo + ); + +void arhosekskymodelstate_free( + ArHosekSkyModelState * state + ); + +double arhosekskymodel_radiance( + ArHosekSkyModelState * state, + double theta, + double gamma, + double wavelength + ); + +// CIE XYZ and RGB versions + + +ArHosekSkyModelState * arhosek_xyz_skymodelstate_alloc_init( + const double turbidity, + const double albedo, + const double elevation + ); + + +ArHosekSkyModelState * arhosek_rgb_skymodelstate_alloc_init( + const double turbidity, + const double albedo, + const double elevation + ); + + +double arhosek_tristim_skymodel_radiance( + ArHosekSkyModelState * state, + double theta, + double gamma, + int channel + ); + +// Delivers the complete function: sky + sun, including limb darkening. +// Please read the above description before using this - there are several +// caveats! + +double arhosekskymodel_solar_radiance( + ArHosekSkyModelState * state, + double theta, + double gamma, + double wavelength + ); + + +#endif // _ARHOSEK_SKYMODEL_H_ diff --git a/src/haloray-core/simulation/backgroundSky/ArHosekSkyModelData_CIEXYZ.h b/src/haloray-core/simulation/backgroundSky/ArHosekSkyModelData_CIEXYZ.h new file mode 100644 index 0000000..a720cd9 --- /dev/null +++ b/src/haloray-core/simulation/backgroundSky/ArHosekSkyModelData_CIEXYZ.h @@ -0,0 +1,3863 @@ +/* +This source is published under the following 3-clause BSD license. + +Copyright (c) 2012 - 2013, Lukas Hosek and Alexander Wilkie +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * None of the names of the contributors may be used to endorse or promote + products derived from this software without specific prior written + permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + + +/* ============================================================================ + +This file is part of a sample implementation of the analytical skylight and +solar radiance models presented in the SIGGRAPH 2012 paper + + + "An Analytic Model for Full Spectral Sky-Dome Radiance" + +and the 2013 IEEE CG&A paper + + "Adding a Solar Radiance Function to the Hosek Skylight Model" + + both by + + Lukas Hosek and Alexander Wilkie + Charles University in Prague, Czech Republic + + + Version: 1.4a, February 22nd, 2013 + +Version history: + +1.4a February 22nd, 2013 + Removed unnecessary and counter-intuitive solar radius parameters + from the interface of the colourspace sky dome initialisation functions. + +1.4 February 11th, 2013 + Fixed a bug which caused the relative brightness of the solar disc + and the sky dome to be off by a factor of about 6. The sun was too + bright: this affected both normal and alien sun scenarios. The + coefficients of the solar radiance function were changed to fix this. + +1.3 January 21st, 2013 (not released to the public) + Added support for solar discs that are not exactly the same size as + the terrestrial sun. Also added support for suns with a different + emission spectrum ("Alien World" functionality). + +1.2a December 18th, 2012 + Fixed a mistake and some inaccuracies in the solar radiance function + explanations found in ArHosekSkyModel.h. The actual source code is + unchanged compared to version 1.2. + +1.2 December 17th, 2012 + Native RGB data and a solar radiance function that matches the turbidity + conditions were added. + +1.1 September 2012 + The coefficients of the spectral model are now scaled so that the output + is given in physical units: W / (m^-2 * sr * nm). Also, the output of the + XYZ model is now no longer scaled to the range [0...1]. Instead, it is + the result of a simple conversion from spectral data via the CIE 2 degree + standard observer matching functions. Therefore, after multiplication + with 683 lm / W, the Y channel now corresponds to luminance in lm. + +1.0 May 11th, 2012 + Initial release. + + +Please visit http://cgg.mff.cuni.cz/projects/SkylightModelling/ to check if +an updated version of this code has been published! + +============================================================================ */ + + +/* + +This file contains the coefficient data for the XYZ colour space version of +the model. + +*/ + +// Uses Sep 9 pattern / Aug 23 mean dataset + +double datasetXYZ1[] = +{ + // albedo 0, turbidity 1 + -1.117001e+000, + -1.867262e-001, + -1.113505e+001, + 1.259865e+001, + -3.937339e-002, + 1.167571e+000, + 7.100686e-003, + 3.592678e+000, + 6.083296e-001, + -1.152006e+000, + -1.926669e-001, + 6.152049e+000, + -4.770802e+000, + -8.704701e-002, + 7.483626e-001, + 3.372718e-002, + 4.464592e+000, + 4.036546e-001, + -1.072371e+000, + -2.696632e-001, + 2.816168e-001, + 1.820571e+000, + -3.742666e-001, + 2.080607e+000, + -7.675295e-002, + -2.835366e+000, + 1.129329e+000, + -1.109935e+000, + -1.532764e-001, + 1.198787e+000, + -9.015183e-001, + 5.173015e-003, + 5.749178e-001, + 1.075633e-001, + 4.387949e+000, + 2.650413e-001, + -1.052297e+000, + -2.229452e-001, + 1.952347e+000, + 5.727205e-001, + -4.885070e+000, + 1.984016e+000, + -1.106197e-001, + -4.898361e-001, + 8.907873e-001, + -1.070108e+000, + -1.600465e-001, + 1.593886e+000, + -4.479251e-005, + -3.306541e+000, + 9.390193e-001, + 9.513168e-002, + 2.343583e+000, + 5.335404e-001, + // albedo 0, turbidity 2 + -1.113253e+000, + -1.699600e-001, + -1.038822e+001, + 1.137513e+001, + -4.040911e-002, + 1.037455e+000, + 4.991792e-002, + 4.801919e+000, + 6.302710e-001, + -1.135747e+000, + -1.678594e-001, + 4.970755e+000, + -4.430230e+000, + -6.657408e-002, + 3.636161e-001, + 1.558009e-001, + 6.013370e+000, + 3.959601e-001, + -1.095892e+000, + -2.732595e-001, + 7.666496e-001, + 1.350731e+000, + -4.401401e-001, + 2.470135e+000, + -1.707929e-001, + -3.260793e+000, + 1.170337e+000, + -1.073668e+000, + -2.603929e-002, + -1.944589e-001, + 4.575207e-001, + 6.878164e-001, + -1.390770e-001, + 3.690299e-001, + 7.885781e+000, + 1.877694e-001, + -1.070091e+000, + -2.798957e-001, + 2.338478e+000, + -2.647221e+000, + -7.387808e+000, + 2.329210e+000, + -1.644639e-001, + -2.003710e+000, + 9.874527e-001, + -1.067120e+000, + -1.418866e-001, + 1.254090e+000, + 6.053048e+000, + -2.918892e+000, + 5.322812e-001, + 1.613053e-001, + 3.018161e+000, + 5.274090e-001, + // albedo 0, turbidity 3 + -1.129483e+000, + -1.890619e-001, + -9.065101e+000, + 9.659923e+000, + -3.607819e-002, + 8.314359e-001, + 8.181661e-002, + 4.768868e+000, + 6.339777e-001, + -1.146420e+000, + -1.883579e-001, + 3.309173e+000, + -3.127882e+000, + -6.938176e-002, + 3.987113e-001, + 1.400581e-001, + 6.283042e+000, + 5.267076e-001, + -1.128348e+000, + -2.641305e-001, + 1.223176e+000, + 5.514952e-002, + -3.490649e-001, + 1.997784e+000, + -4.123709e-002, + -2.251251e+000, + 9.483466e-001, + -1.025820e+000, + 1.404690e-002, + -1.187406e+000, + 2.729900e+000, + 5.877588e-001, + -2.761140e-001, + 4.602633e-001, + 8.305125e+000, + 3.945001e-001, + -1.083957e+000, + -2.606679e-001, + 2.207108e+000, + -7.202803e+000, + -5.968103e+000, + 2.129455e+000, + -7.789512e-002, + -1.137688e+000, + 8.871769e-001, + -1.062465e+000, + -1.512189e-001, + 1.042881e+000, + 1.427839e+001, + -4.242214e+000, + 4.038100e-001, + 1.997780e-001, + 2.814449e+000, + 5.803196e-001, + // albedo 0, turbidity 4 + -1.175099e+000, + -2.410789e-001, + -1.108587e+001, + 1.133404e+001, + -1.819300e-002, + 6.772942e-001, + 9.605043e-002, + 4.231166e+000, + 6.239972e-001, + -1.224207e+000, + -2.883527e-001, + 3.002206e+000, + -2.649612e+000, + -4.795418e-002, + 4.984398e-001, + 3.251434e-002, + 4.851611e+000, + 6.551019e-001, + -1.136955e+000, + -2.423048e-001, + 1.058823e+000, + -2.489236e-001, + -2.462179e-001, + 1.933140e+000, + 9.106828e-002, + -1.905869e-001, + 8.171065e-001, + -1.014535e+000, + -8.262500e-003, + -1.448017e+000, + 2.295788e+000, + 3.510334e-001, + -1.477418e+000, + 5.432449e-001, + 5.762796e+000, + 4.908751e-001, + -1.070666e+000, + -2.379780e-001, + 1.844589e+000, + -5.442448e+000, + -4.012768e+000, + 2.945275e+000, + 9.854725e-003, + 8.455959e-002, + 8.145030e-001, + -1.071525e+000, + -1.777132e-001, + 8.076590e-001, + 9.925865e+000, + -3.324623e+000, + -6.367437e-001, + 2.844581e-001, + 2.248384e+000, + 6.544022e-001, + // albedo 0, turbidity 5 + -1.218818e+000, + -2.952382e-001, + -1.345975e+001, + 1.347153e+001, + -6.814585e-003, + 5.079068e-001, + 1.197230e-001, + 3.776949e+000, + 5.836961e-001, + -1.409868e+000, + -5.114330e-001, + 2.776539e+000, + -2.039001e+000, + -2.673769e-002, + 4.145288e-001, + 7.829342e-004, + 2.275883e+000, + 6.629691e-001, + -1.069151e+000, + -9.434247e-002, + 7.293972e-001, + -1.222473e+000, + -1.533461e-001, + 2.160357e+000, + 4.626837e-002, + 3.852415e+000, + 8.593570e-001, + -1.021306e+000, + -1.149551e-001, + -1.108414e+000, + 4.178343e+000, + 4.013665e-001, + -2.222814e+000, + 6.929462e-001, + 1.392652e+000, + 4.401662e-001, + -1.074251e+000, + -2.224002e-001, + 1.372356e+000, + -8.858704e+000, + -3.922660e+000, + 3.020018e+000, + -1.458724e-002, + 1.511186e+000, + 8.288064e-001, + -1.062048e+000, + -1.526582e-001, + 4.921067e-001, + 1.485522e+001, + -3.229936e+000, + -8.426604e-001, + 3.916243e-001, + 2.678994e+000, + 6.689264e-001, + // albedo 0, turbidity 6 + -1.257023e+000, + -3.364700e-001, + -1.527795e+001, + 1.504223e+001, + 2.717715e-003, + 3.029910e-001, + 1.636851e-001, + 3.561663e+000, + 5.283161e-001, + -1.635124e+000, + -7.329993e-001, + 3.523939e+000, + -2.566337e+000, + -1.902543e-002, + 5.505483e-001, + -6.242176e-002, + 1.065992e+000, + 6.654236e-001, + -9.295823e-001, + 4.845834e-002, + -2.992990e-001, + -2.001327e-001, + -8.019339e-002, + 1.807806e+000, + 9.020277e-002, + 5.095372e+000, + 8.639936e-001, + -1.093740e+000, + -2.148608e-001, + -5.216240e-001, + 2.119777e+000, + 9.506454e-002, + -1.831439e+000, + 6.961204e-001, + 1.102084e-001, + 4.384319e-001, + -1.044181e+000, + -1.849257e-001, + 9.071246e-001, + -4.648901e+000, + -2.279385e+000, + 2.356502e+000, + -4.169147e-002, + 1.932557e+000, + 8.296550e-001, + -1.061451e+000, + -1.458745e-001, + 2.952267e-001, + 8.967214e+000, + -3.726228e+000, + -5.022316e-001, + 5.684877e-001, + 3.102347e+000, + 6.658443e-001, + // albedo 0, turbidity 7 + -1.332391e+000, + -4.127769e-001, + -9.328643e+000, + 9.046194e+000, + 3.457775e-003, + 3.377425e-001, + 1.530909e-001, + 3.301209e+000, + 4.997917e-001, + -1.932002e+000, + -9.947777e-001, + -2.042329e+000, + 3.586940e+000, + -5.642182e-002, + 8.130478e-001, + -8.195988e-002, + 1.118294e-001, + 5.617231e-001, + -8.707374e-001, + 1.286999e-001, + 1.820054e+000, + -4.674706e+000, + 3.317471e-003, + 5.919018e-001, + 1.975278e-001, + 6.686519e+000, + 9.631727e-001, + -1.070378e+000, + -3.030579e-001, + -9.041938e-001, + 6.200201e+000, + 1.232207e-001, + -3.650628e-001, + 5.029403e-001, + -2.903162e+000, + 3.811408e-001, + -1.063035e+000, + -1.637545e-001, + 5.853072e-001, + -7.889906e+000, + -1.200641e+000, + 1.035018e+000, + 1.192093e-001, + 3.267054e+000, + 8.416151e-001, + -1.053655e+000, + -1.562286e-001, + 2.423683e-001, + 1.128575e+001, + -4.363262e+000, + -7.314160e-002, + 5.642088e-001, + 2.514023e+000, + 6.670457e-001, + // albedo 0, turbidity 8 + -1.366112e+000, + -4.718287e-001, + -7.876222e+000, + 7.746900e+000, + -9.182309e-003, + 4.716076e-001, + 8.320252e-002, + 3.165603e+000, + 5.392334e-001, + -2.468204e+000, + -1.336340e+000, + -5.386723e+000, + 7.072672e+000, + -8.329266e-002, + 8.636876e-001, + -1.978177e-002, + -1.326218e-001, + 2.979222e-001, + -9.653522e-001, + -2.373416e-002, + 1.810250e+000, + -6.467262e+000, + 1.410706e-001, + -4.753717e-001, + 3.003095e-001, + 6.551163e+000, + 1.151083e+000, + -8.943186e-001, + -2.487152e-001, + -2.308960e-001, + 8.512648e+000, + 1.298402e-001, + 1.034705e+000, + 2.303509e-001, + -3.924095e+000, + 2.982717e-001, + -1.146999e+000, + -2.318784e-001, + 8.992419e-002, + -9.933614e+000, + -8.860920e-001, + -3.071656e-002, + 2.852012e-001, + 3.046199e+000, + 8.599001e-001, + -1.032399e+000, + -1.645145e-001, + 2.683599e-001, + 1.327701e+001, + -4.407670e+000, + 7.709869e-002, + 4.951727e-001, + 1.957277e+000, + 6.630943e-001, + // albedo 0, turbidity 9 + -1.469070e+000, + -6.135092e-001, + -6.506263e+000, + 6.661315e+000, + -3.835383e-002, + 7.150413e-001, + 7.784318e-003, + 2.820577e+000, + 6.756784e-001, + -2.501583e+000, + -1.247404e+000, + -1.523462e+001, + 1.633191e+001, + -1.204803e-002, + 5.896471e-001, + -2.002023e-002, + 1.144647e+000, + 6.177874e-002, + -2.438672e+000, + -1.127291e+000, + 5.731172e+000, + -1.021350e+001, + 6.165610e-002, + -7.752641e-001, + 4.708254e-001, + 4.176847e+000, + 1.200881e+000, + -1.513427e-001, + 9.792731e-002, + -1.612349e+000, + 9.814289e+000, + 5.188921e-002, + 1.716403e+000, + -7.039255e-002, + -2.815115e+000, + 3.291874e-001, + -1.318511e+000, + -3.650554e-001, + 4.221268e-001, + -9.294529e+000, + -4.397520e-002, + -8.100625e-001, + 3.742719e-001, + 1.834166e+000, + 8.223450e-001, + -1.016009e+000, + -1.820264e-001, + 1.278426e-001, + 1.182696e+001, + -4.801528e+000, + 4.947899e-001, + 4.660378e-001, + 1.601254e+000, + 6.702359e-001, + // albedo 0, turbidity 10 + -1.841310e+000, + -9.781779e-001, + -4.610903e+000, + 4.824662e+000, + -5.100806e-002, + 6.463776e-001, + -6.377724e-006, + 2.216875e+000, + 8.618530e-001, + -2.376373e+000, + -1.108657e+000, + -1.489799e+001, + 1.546458e+001, + 4.091025e-002, + 9.761780e-002, + -1.048958e-002, + 2.165834e+000, + -1.609171e-001, + -4.710318e+000, + -2.261963e+000, + 6.947327e+000, + -1.034828e+001, + -1.325542e-001, + 7.508674e-001, + 2.247553e-001, + 2.873142e+000, + 1.297100e+000, + 2.163750e-001, + -1.944345e-001, + -2.437860e+000, + 1.011314e+001, + 4.450500e-001, + 3.111492e-001, + 2.751323e-001, + -1.627906e+000, + 2.531213e-001, + -1.258794e+000, + -3.524641e-001, + 8.425444e-001, + -1.085313e+001, + -1.154381e+000, + -4.638014e-001, + -2.781115e-003, + 4.344498e-001, + 8.507091e-001, + -1.018938e+000, + -1.804153e-001, + -6.354054e-002, + 1.573150e+001, + -4.386999e+000, + 6.211115e-001, + 5.294648e-001, + 1.580749e+000, + 6.586655e-001, + // albedo 1, turbidity 1 + -1.116416e+000, + -1.917524e-001, + -1.068233e+001, + 1.222221e+001, + -3.668978e-002, + 1.054022e+000, + 1.592132e-002, + 3.180583e+000, + 5.627370e-001, + -1.132341e+000, + -1.671286e-001, + 5.976499e+000, + -4.227366e+000, + -9.542489e-002, + 8.664938e-001, + 8.351793e-003, + 4.876068e+000, + 4.492779e-001, + -1.087635e+000, + -3.173679e-001, + 4.314407e-001, + 1.100555e+000, + -4.410057e-001, + 1.677253e+000, + -3.005925e-002, + -4.201249e+000, + 1.070902e+000, + -1.083031e+000, + -8.847705e-002, + 1.291773e+000, + 4.546776e-001, + 3.091894e-001, + 7.261760e-001, + 4.203659e-002, + 5.990615e+000, + 3.704756e-001, + -1.057899e+000, + -2.246706e-001, + 2.329563e+000, + -1.219656e+000, + -5.335260e+000, + 8.545378e-001, + -3.906209e-002, + -9.025499e-001, + 7.797348e-001, + -1.073305e+000, + -1.522553e-001, + 1.767063e+000, + 1.904280e+000, + -3.101673e+000, + 3.995856e-001, + 2.905192e-002, + 2.563977e+000, + 5.753067e-001, + // albedo 1, turbidity 2 + -1.113674e+000, + -1.759694e-001, + -9.754125e+000, + 1.087391e+001, + -3.841093e-002, + 9.524272e-001, + 5.680219e-002, + 4.227034e+000, + 6.029571e-001, + -1.126496e+000, + -1.680281e-001, + 5.332352e+000, + -4.575579e+000, + -6.761755e-002, + 3.295335e-001, + 1.194896e-001, + 5.570901e+000, + 4.536185e-001, + -1.103074e+000, + -2.681801e-001, + 6.571479e-002, + 2.396522e+000, + -4.551280e-001, + 2.466331e+000, + -1.232022e-001, + -3.023201e+000, + 1.086379e+000, + -1.053299e+000, + -2.697173e-002, + 8.379121e-001, + -9.681458e-001, + 5.890692e-001, + -4.872027e-001, + 2.936929e-001, + 7.510139e+000, + 3.079122e-001, + -1.079553e+000, + -2.710448e-001, + 2.462379e+000, + -3.713554e-001, + -8.534512e+000, + 1.828242e+000, + -1.686398e-001, + -1.961340e+000, + 8.941077e-001, + -1.069741e+000, + -1.396394e-001, + 1.657868e+000, + 3.236313e+000, + -2.706344e+000, + -2.948122e-001, + 1.314816e-001, + 2.868457e+000, + 5.413403e-001, + // albedo 1, turbidity 3 + -1.131649e+000, + -1.954455e-001, + -7.751595e+000, + 8.685861e+000, + -4.910871e-002, + 8.992952e-001, + 4.710143e-002, + 4.254818e+000, + 6.821116e-001, + -1.156689e+000, + -1.884324e-001, + 3.163519e+000, + -3.091522e+000, + -6.613927e-002, + -2.575883e-002, + 1.640065e-001, + 6.073643e+000, + 4.453468e-001, + -1.079224e+000, + -2.621389e-001, + 9.446437e-001, + 1.448479e+000, + -3.969384e-001, + 2.626638e+000, + -8.101186e-002, + -3.016355e+000, + 1.076295e+000, + -1.080832e+000, + 1.033057e-002, + -3.500156e-001, + -3.281419e-002, + 5.655512e-001, + -1.156742e+000, + 4.534710e-001, + 8.774122e+000, + 2.772869e-001, + -1.051202e+000, + -2.679975e-001, + 2.719109e+000, + -2.190316e+000, + -6.878798e+000, + 2.250481e+000, + -2.030252e-001, + -2.026527e+000, + 9.701096e-001, + -1.089849e+000, + -1.598589e-001, + 1.564748e+000, + 6.869187e+000, + -3.053670e+000, + -6.110435e-001, + 1.644472e-001, + 2.370452e+000, + 5.511770e-001, + // albedo 1, turbidity 4 + -1.171419e+000, + -2.429746e-001, + -8.991334e+000, + 9.571216e+000, + -2.772861e-002, + 6.688262e-001, + 7.683478e-002, + 3.785611e+000, + 6.347635e-001, + -1.228554e+000, + -2.917562e-001, + 2.753986e+000, + -2.491780e+000, + -4.663434e-002, + 3.118303e-001, + 7.546506e-002, + 4.463096e+000, + 5.955071e-001, + -1.093124e+000, + -2.447767e-001, + 9.097406e-001, + 5.448296e-001, + -2.957824e-001, + 2.024167e+000, + -5.152333e-004, + -1.069081e+000, + 9.369565e-001, + -1.056994e+000, + 1.569507e-002, + -8.217491e-001, + 1.870818e+000, + 7.061930e-001, + -1.483928e+000, + 5.978206e-001, + 6.864902e+000, + 3.673332e-001, + -1.054871e+000, + -2.758129e-001, + 2.712807e+000, + -5.950110e+000, + -6.554039e+000, + 2.447523e+000, + -1.895171e-001, + -1.454292e+000, + 9.131738e-001, + -1.100218e+000, + -1.746241e-001, + 1.438505e+000, + 1.115481e+001, + -3.266076e+000, + -8.837357e-001, + 1.970100e-001, + 1.991595e+000, + 5.907821e-001, + // albedo 1, turbidity 5 + -1.207267e+000, + -2.913610e-001, + -1.103767e+001, + 1.140724e+001, + -1.416800e-002, + 5.564047e-001, + 8.476262e-002, + 3.371255e+000, + 6.221335e-001, + -1.429698e+000, + -5.374218e-001, + 2.837524e+000, + -2.221936e+000, + -2.422337e-002, + 9.313758e-002, + 7.190250e-002, + 1.869022e+000, + 5.609035e-001, + -1.002274e+000, + -6.972810e-002, + 4.031308e-001, + -3.932997e-001, + -1.521923e-001, + 2.390646e+000, + -6.893990e-002, + 2.999661e+000, + 1.017843e+000, + -1.081168e+000, + -1.178666e-001, + -4.968080e-001, + 3.919299e+000, + 6.046866e-001, + -2.440615e+000, + 7.891538e-001, + 2.140835e+000, + 2.740470e-001, + -1.050727e+000, + -2.307688e-001, + 2.276396e+000, + -9.454407e+000, + -5.505176e+000, + 2.992620e+000, + -2.450942e-001, + 6.078372e-001, + 9.606765e-001, + -1.103752e+000, + -1.810202e-001, + 1.375044e+000, + 1.589095e+001, + -3.438954e+000, + -1.265669e+000, + 2.475172e-001, + 1.680768e+000, + 5.978056e-001, + // albedo 1, turbidity 6 + -1.244324e+000, + -3.378542e-001, + -1.111001e+001, + 1.137784e+001, + -7.896794e-003, + 4.808023e-001, + 9.249904e-002, + 3.025816e+000, + 5.880239e-001, + -1.593165e+000, + -7.027621e-001, + 2.220896e+000, + -1.437709e+000, + -1.534738e-002, + 6.286958e-002, + 6.644555e-002, + 1.091727e+000, + 5.470080e-001, + -9.136506e-001, + 1.344874e-002, + 7.772636e-001, + -1.209396e+000, + -1.408978e-001, + 2.433718e+000, + -1.041938e-001, + 3.791244e+000, + 1.037916e+000, + -1.134968e+000, + -1.803315e-001, + -9.267335e-001, + 4.576670e+000, + 6.851928e-001, + -2.805000e+000, + 8.687208e-001, + 1.161483e+000, + 2.571688e-001, + -1.017037e+000, + -2.053943e-001, + 2.361640e+000, + -9.887818e+000, + -5.122889e+000, + 3.287088e+000, + -2.594102e-001, + 8.578927e-001, + 9.592340e-001, + -1.118723e+000, + -1.934942e-001, + 1.226023e+000, + 1.674140e+001, + -3.277335e+000, + -1.629809e+000, + 2.765232e-001, + 1.637713e+000, + 6.113963e-001, + // albedo 1, turbidity 7 + -1.314779e+000, + -4.119915e-001, + -1.241150e+001, + 1.241578e+001, + 2.344284e-003, + 2.980837e-001, + 1.414613e-001, + 2.781731e+000, + 4.998556e-001, + -1.926199e+000, + -1.020038e+000, + 2.569200e+000, + -1.081159e+000, + -2.266833e-002, + 3.588668e-001, + 8.750078e-003, + -2.452171e-001, + 4.796758e-001, + -7.780002e-001, + 1.850647e-001, + 4.445456e-002, + -2.409297e+000, + -7.816346e-002, + 1.546790e+000, + -2.807227e-002, + 5.998176e+000, + 1.132396e+000, + -1.179326e+000, + -3.578330e-001, + -2.392933e-001, + 6.467883e+000, + 5.904596e-001, + -1.869975e+000, + 8.045839e-001, + -2.498121e+000, + 1.610633e-001, + -1.009956e+000, + -1.311896e-001, + 1.726577e+000, + -1.219356e+001, + -3.466239e+000, + 2.343602e+000, + -2.252205e-001, + 2.573681e+000, + 1.027109e+000, + -1.112460e+000, + -2.063093e-001, + 1.233051e+000, + 2.058946e+001, + -4.578074e+000, + -1.145643e+000, + 3.160192e-001, + 1.420159e+000, + 5.860212e-001, + // albedo 1, turbidity 8 + -1.371689e+000, + -4.914196e-001, + -1.076610e+001, + 1.107405e+001, + -1.485077e-002, + 5.936218e-001, + 3.685482e-002, + 2.599968e+000, + 6.002204e-001, + -2.436997e+000, + -1.377939e+000, + 2.130141e-002, + 1.079593e+000, + -1.796232e-002, + -3.933248e-002, + 1.610711e-001, + -6.901181e-001, + 1.206416e-001, + -8.743368e-001, + 7.331370e-002, + 8.734259e-001, + -3.743126e+000, + -3.151167e-002, + 1.297596e+000, + -7.634926e-002, + 6.532873e+000, + 1.435737e+000, + -9.810197e-001, + -3.521634e-001, + -2.855205e-001, + 7.134674e+000, + 6.839748e-001, + -1.394841e+000, + 6.952036e-001, + -4.633104e+000, + -2.173401e-002, + -1.122958e+000, + -1.691536e-001, + 1.382360e+000, + -1.102913e+001, + -2.608171e+000, + 1.865111e+000, + -1.345154e-001, + 3.112342e+000, + 1.094134e+000, + -1.075586e+000, + -2.077415e-001, + 1.171477e+000, + 1.793270e+001, + -4.656858e+000, + -1.036839e+000, + 3.338295e-001, + 1.042793e+000, + 5.739374e-001, + // albedo 1, turbidity 9 + -1.465871e+000, + -6.364486e-001, + -8.833718e+000, + 9.343650e+000, + -3.223600e-002, + 7.552848e-001, + -3.121341e-006, + 2.249164e+000, + 8.094662e-001, + -2.448924e+000, + -1.270878e+000, + -4.823703e+000, + 5.853058e+000, + -2.149127e-002, + 3.581132e-002, + -1.230276e-003, + 4.892553e-001, + -1.597657e-001, + -2.419809e+000, + -1.071337e+000, + 1.575648e+000, + -4.983580e+000, + 9.545185e-003, + 5.032615e-001, + 4.186266e-001, + 4.634147e+000, + 1.433517e+000, + -1.383278e-001, + -2.797095e-002, + -1.943067e-001, + 6.679623e+000, + 4.118280e-001, + -2.744289e-001, + -2.118722e-002, + -4.337025e+000, + 1.505072e-001, + -1.341872e+000, + -2.518572e-001, + 1.027009e+000, + -6.527103e+000, + -1.081271e+000, + 1.015465e+000, + 2.845789e-001, + 2.470371e+000, + 9.278120e-001, + -1.040640e+000, + -2.367454e-001, + 1.100744e+000, + 8.827253e+000, + -4.560794e+000, + -7.287017e-001, + 2.842503e-001, + 6.336593e-001, + 6.327335e-001, + // albedo 1, turbidity 10 + -1.877993e+000, + -1.025135e+000, + -4.311037e+000, + 4.715016e+000, + -4.711631e-002, + 6.335844e-001, + -7.665398e-006, + 1.788017e+000, + 9.001409e-001, + -2.281540e+000, + -1.137668e+000, + -1.036869e+001, + 1.136254e+001, + 1.961739e-002, + -9.836174e-002, + -6.734567e-003, + 1.320918e+000, + -2.400807e-001, + -4.904054e+000, + -2.315781e+000, + 5.735999e+000, + -8.626257e+000, + -1.255643e-001, + 1.545446e+000, + 1.396860e-001, + 2.972897e+000, + 1.429934e+000, + 4.077067e-001, + -1.833688e-001, + -2.450939e+000, + 9.119433e+000, + 4.505361e-001, + -1.340828e+000, + 3.973690e-001, + -1.785370e+000, + 9.628711e-002, + -1.296052e+000, + -3.250526e-001, + 1.813294e+000, + -1.031485e+001, + -1.388690e+000, + 1.239733e+000, + -8.989196e-002, + -3.389637e-001, + 9.639560e-001, + -1.062181e+000, + -2.423444e-001, + 7.577592e-001, + 1.566938e+001, + -4.462264e+000, + -5.742810e-001, + 3.262259e-001, + 9.461672e-001, + 6.232887e-001, +}; + +double datasetXYZRad1[] = +{ + // albedo 0, turbidity 1 + 1.560219e+000, + 1.417388e+000, + 1.206927e+000, + 1.091949e+001, + 5.931416e+000, + 7.304788e+000, + // albedo 0, turbidity 2 + 1.533049e+000, + 1.560532e+000, + 3.685059e-001, + 1.355040e+001, + 5.543711e+000, + 7.792189e+000, + // albedo 0, turbidity 3 + 1.471043e+000, + 1.746088e+000, + -9.299697e-001, + 1.720362e+001, + 5.473384e+000, + 8.336416e+000, + // albedo 0, turbidity 4 + 1.355991e+000, + 2.109348e+000, + -3.295855e+000, + 2.264843e+001, + 5.454607e+000, + 9.304656e+000, + // albedo 0, turbidity 5 + 1.244963e+000, + 2.547533e+000, + -5.841485e+000, + 2.756879e+001, + 5.576104e+000, + 1.043287e+001, + // albedo 0, turbidity 6 + 1.175532e+000, + 2.784634e+000, + -7.212225e+000, + 2.975347e+001, + 6.472980e+000, + 1.092331e+001, + // albedo 0, turbidity 7 + 1.082973e+000, + 3.118094e+000, + -8.934293e+000, + 3.186879e+001, + 8.473885e+000, + 1.174019e+001, + // albedo 0, turbidity 8 + 9.692500e-001, + 3.349574e+000, + -1.003810e+001, + 3.147654e+001, + 1.338931e+001, + 1.272547e+001, + // albedo 0, turbidity 9 + 8.547044e-001, + 3.151538e+000, + -9.095567e+000, + 2.554995e+001, + 2.273219e+001, + 1.410398e+001, + // albedo 0, turbidity 10 + 7.580340e-001, + 2.311153e+000, + -5.170814e+000, + 1.229669e+001, + 3.686529e+001, + 1.598882e+001, + // albedo 1, turbidity 1 + 1.664273e+000, + 1.574468e+000, + 1.422078e+000, + 9.768247e+000, + 1.447338e+001, + 1.644988e+001, + // albedo 1, turbidity 2 + 1.638295e+000, + 1.719586e+000, + 5.786675e-001, + 1.239846e+001, + 1.415419e+001, + 1.728605e+001, + // albedo 1, turbidity 3 + 1.572623e+000, + 1.921559e+000, + -7.714802e-001, + 1.609246e+001, + 1.420954e+001, + 1.825908e+001, + // albedo 1, turbidity 4 + 1.468395e+000, + 2.211970e+000, + -2.845869e+000, + 2.075027e+001, + 1.524822e+001, + 1.937622e+001, + // albedo 1, turbidity 5 + 1.355047e+000, + 2.556469e+000, + -4.960920e+000, + 2.460237e+001, + 1.648360e+001, + 2.065648e+001, + // albedo 1, turbidity 6 + 1.291642e+000, + 2.742036e+000, + -6.061967e+000, + 2.602002e+001, + 1.819144e+001, + 2.116712e+001, + // albedo 1, turbidity 7 + 1.194565e+000, + 2.972120e+000, + -7.295779e+000, + 2.691805e+001, + 2.124880e+001, + 2.201819e+001, + // albedo 1, turbidity 8 + 1.083631e+000, + 3.047021e+000, + -7.766096e+000, + 2.496261e+001, + 2.744264e+001, + 2.291875e+001, + // albedo 1, turbidity 9 + 9.707994e-001, + 2.736459e+000, + -6.308284e+000, + 1.760860e+001, + 3.776291e+001, + 2.392150e+001, + // albedo 1, turbidity 10 + 8.574294e-001, + 1.865155e+000, + -2.364707e+000, + 4.337793e+000, + 5.092831e+001, + 2.523432e+001, +}; + +double datasetXYZ2[] = +{ + // albedo 0, turbidity 1 + -1.127942e+000, + -1.905548e-001, + -1.252356e+001, + 1.375799e+001, + -3.624732e-002, + 1.055453e+000, + 1.385036e-002, + 4.176970e+000, + 5.928345e-001, + -1.155260e+000, + -1.778135e-001, + 6.216056e+000, + -5.254116e+000, + -8.787445e-002, + 8.434621e-001, + 4.025734e-002, + 6.195322e+000, + 3.111856e-001, + -1.125624e+000, + -3.217593e-001, + 5.043919e-001, + 1.686284e+000, + -3.536071e-001, + 1.476321e+000, + -7.899019e-002, + -4.522531e+000, + 1.271691e+000, + -1.081801e+000, + -1.033234e-001, + 9.995550e-001, + 7.482946e-003, + -6.776018e-002, + 1.463141e+000, + 9.492021e-002, + 5.612723e+000, + 1.298846e-001, + -1.075320e+000, + -2.402711e-001, + 2.141284e+000, + -1.203359e+000, + -4.945188e+000, + 1.437221e+000, + -8.096750e-002, + -1.028378e+000, + 1.004164e+000, + -1.073337e+000, + -1.516517e-001, + 1.639379e+000, + 2.304669e+000, + -3.214244e+000, + 1.286245e+000, + 5.613957e-002, + 2.480902e+000, + 4.999363e-001, + // albedo 0, turbidity 2 + -1.128399e+000, + -1.857793e-001, + -1.089863e+001, + 1.172984e+001, + -3.768099e-002, + 9.439285e-001, + 4.869335e-002, + 4.845114e+000, + 6.119211e-001, + -1.114002e+000, + -1.399280e-001, + 4.963800e+000, + -4.685500e+000, + -7.780879e-002, + 4.049736e-001, + 1.586297e-001, + 7.770264e+000, + 3.449006e-001, + -1.185472e+000, + -3.403543e-001, + 6.588322e-001, + 1.133713e+000, + -4.118674e-001, + 2.061191e+000, + -1.882768e-001, + -4.372586e+000, + 1.223530e+000, + -1.002272e+000, + 2.000703e-002, + 7.073269e-002, + 1.485075e+000, + 5.005589e-001, + 4.301494e-001, + 3.626541e-001, + 7.921098e+000, + 1.574766e-001, + -1.121006e+000, + -3.007777e-001, + 2.242051e+000, + -4.571561e+000, + -7.761071e+000, + 2.053404e+000, + -1.524018e-001, + -1.886162e+000, + 1.018208e+000, + -1.058864e+000, + -1.358673e-001, + 1.389667e+000, + 8.633409e+000, + -3.437249e+000, + 7.295429e-001, + 1.514700e-001, + 2.842513e+000, + 5.014325e-001, + // albedo 0, turbidity 3 + -1.144464e+000, + -2.043799e-001, + -1.020188e+001, + 1.071247e+001, + -3.256693e-002, + 7.860205e-001, + 6.872719e-002, + 4.824771e+000, + 6.259836e-001, + -1.170104e+000, + -2.118626e-001, + 4.391405e+000, + -4.198900e+000, + -7.111559e-002, + 3.890442e-001, + 1.024831e-001, + 6.282535e+000, + 5.365688e-001, + -1.129171e+000, + -2.552880e-001, + 2.238298e-001, + 7.314295e-001, + -3.562730e-001, + 1.881931e+000, + -3.078716e-002, + -1.039120e+000, + 9.096301e-001, + -1.042294e+000, + 4.450203e-003, + -5.116033e-001, + 2.627589e+000, + 6.098996e-001, + -1.264638e-001, + 4.325281e-001, + 7.080503e+000, + 4.583646e-001, + -1.082293e+000, + -2.723056e-001, + 2.065076e+000, + -8.143133e+000, + -7.892212e+000, + 2.142231e+000, + -7.106240e-002, + -1.122398e+000, + 8.338505e-001, + -1.071715e+000, + -1.426568e-001, + 1.095351e+000, + 1.729783e+001, + -3.851931e+000, + 4.360514e-001, + 2.114440e-001, + 2.970832e+000, + 5.944389e-001, + // albedo 0, turbidity 4 + -1.195909e+000, + -2.590449e-001, + -1.191037e+001, + 1.207947e+001, + -1.589842e-002, + 6.297846e-001, + 9.054772e-002, + 4.285959e+000, + 5.933752e-001, + -1.245763e+000, + -3.316637e-001, + 4.293660e+000, + -3.694011e+000, + -4.699947e-002, + 4.843684e-001, + 2.130425e-002, + 4.097549e+000, + 6.530809e-001, + -1.148742e+000, + -1.902509e-001, + -2.393233e-001, + -2.441254e-001, + -2.610918e-001, + 1.846988e+000, + 3.532866e-002, + 2.660106e+000, + 8.358294e-001, + -1.016080e+000, + -7.444960e-002, + -5.053436e-001, + 4.388855e+000, + 6.054987e-001, + -1.208300e+000, + 5.817215e-001, + 2.543570e+000, + 4.726568e-001, + -1.072027e+000, + -2.101440e-001, + 1.518378e+000, + -1.060119e+001, + -6.016546e+000, + 2.649475e+000, + -5.166992e-002, + 1.571269e+000, + 8.344622e-001, + -1.072365e+000, + -1.511201e-001, + 7.478010e-001, + 1.900732e+001, + -3.950387e+000, + -3.473907e-001, + 3.797211e-001, + 2.782949e+000, + 6.296808e-001, + // albedo 0, turbidity 5 + -1.239423e+000, + -3.136289e-001, + -1.351100e+001, + 1.349468e+001, + -7.070423e-003, + 5.012315e-001, + 1.106008e-001, + 3.803619e+000, + 5.577948e-001, + -1.452524e+000, + -5.676944e-001, + 2.993153e+000, + -2.277288e+000, + -2.168954e-002, + 3.056720e-001, + 1.152338e-002, + 1.852697e+000, + 6.427228e-001, + -1.061421e+000, + -4.590521e-002, + 6.057022e-001, + -1.096835e+000, + -1.504952e-001, + 2.344921e+000, + -5.491832e-002, + 5.268322e+000, + 9.082253e-001, + -1.042373e+000, + -1.769498e-001, + -1.075388e+000, + 3.831712e+000, + 3.154140e-001, + -2.416458e+000, + 7.909032e-001, + -1.492892e-002, + 3.854049e-001, + -1.064159e+000, + -1.892684e-001, + 1.438685e+000, + -8.166362e+000, + -3.616364e+000, + 3.275206e+000, + -1.203825e-001, + 2.039491e+000, + 8.688057e-001, + -1.070120e+000, + -1.569508e-001, + 4.124760e-001, + 1.399683e+001, + -3.547085e+000, + -1.046326e+000, + 4.973825e-001, + 2.791231e+000, + 6.503286e-001, + // albedo 0, turbidity 6 + -1.283579e+000, + -3.609518e-001, + -1.335397e+001, + 1.315248e+001, + -4.431938e-004, + 3.769526e-001, + 1.429824e-001, + 3.573613e+000, + 4.998696e-001, + -1.657952e+000, + -7.627948e-001, + 1.958222e+000, + -7.949816e-001, + -2.882837e-002, + 5.356149e-001, + -5.191946e-002, + 8.869955e-001, + 6.263320e-001, + -9.527600e-001, + 6.494189e-002, + 5.361303e-001, + -2.129590e+000, + -9.258630e-002, + 1.604776e+000, + 5.067770e-002, + 6.376055e+000, + 9.138052e-001, + -1.080827e+000, + -2.523120e-001, + -7.154262e-001, + 4.120085e+000, + 1.878228e-001, + -1.492158e+000, + 6.881655e-001, + -1.446611e+000, + 4.040631e-001, + -1.054075e+000, + -1.665498e-001, + 9.191052e-001, + -6.636943e+000, + -1.894826e+000, + 2.107810e+000, + -3.680499e-002, + 2.655452e+000, + 8.413840e-001, + -1.061127e+000, + -1.448849e-001, + 2.667493e-001, + 1.034103e+001, + -4.285769e+000, + -3.874504e-001, + 5.998752e-001, + 3.132426e+000, + 6.652753e-001, + // albedo 0, turbidity 7 + -1.347345e+000, + -4.287832e-001, + -9.305553e+000, + 9.133813e+000, + -3.173527e-003, + 3.977564e-001, + 1.151420e-001, + 3.320564e+000, + 4.998134e-001, + -1.927296e+000, + -9.901372e-001, + -2.593499e+000, + 4.087421e+000, + -5.833993e-002, + 8.158929e-001, + -4.681279e-002, + 2.423716e-001, + 4.938052e-001, + -9.470092e-001, + 7.325237e-002, + 2.064735e+000, + -5.167540e+000, + -1.313751e-002, + 4.832169e-001, + 1.126295e-001, + 6.970522e+000, + 1.035022e+000, + -1.022557e+000, + -2.762616e-001, + -9.375748e-001, + 6.696739e+000, + 2.200765e-001, + -1.133253e-001, + 5.492505e-001, + -3.109391e+000, + 3.321914e-001, + -1.087444e+000, + -1.836263e-001, + 6.225024e-001, + -8.576765e+000, + -1.107637e+000, + 7.859427e-001, + 9.910909e-002, + 3.112938e+000, + 8.596261e-001, + -1.051544e+000, + -1.546262e-001, + 2.371731e-001, + 1.200502e+001, + -4.527291e+000, + 7.268862e-002, + 5.571478e-001, + 2.532873e+000, + 6.662000e-001, + // albedo 0, turbidity 8 + -1.375576e+000, + -4.840019e-001, + -8.121290e+000, + 8.058140e+000, + -1.445661e-002, + 5.123314e-001, + 5.813321e-002, + 3.203219e+000, + 5.442318e-001, + -2.325221e+000, + -1.241463e+000, + -7.063430e+000, + 8.741369e+000, + -7.829950e-002, + 8.844273e-001, + -3.471106e-002, + 1.740583e-001, + 2.814079e-001, + -1.228700e+000, + -2.013412e-001, + 2.949042e+000, + -7.371945e+000, + 1.071753e-001, + -2.491970e-001, + 2.265223e-001, + 6.391504e+000, + 1.172389e+000, + -7.601786e-001, + -1.680631e-001, + -7.584444e-001, + 8.541356e+000, + 8.222291e-002, + 6.729633e-001, + 3.206615e-001, + -3.700940e+000, + 2.710054e-001, + -1.191166e+000, + -2.672347e-001, + 2.927498e-001, + -9.713613e+000, + -4.783721e-001, + 2.352803e-001, + 2.161949e-001, + 2.691481e+000, + 8.745447e-001, + -1.030135e+000, + -1.653301e-001, + 2.263443e-001, + 1.296157e+001, + -4.650644e+000, + 7.055709e-003, + 5.091975e-001, + 2.000370e+000, + 6.603839e-001, + // albedo 0, turbidity 9 + -1.508018e+000, + -6.460933e-001, + -6.402745e+000, + 6.545995e+000, + -3.750320e-002, + 6.921803e-001, + 3.309819e-003, + 2.797527e+000, + 6.978446e-001, + -2.333308e+000, + -1.167837e+000, + -1.746787e+001, + 1.868630e+001, + -8.948229e-003, + 5.621946e-001, + -3.402626e-002, + 1.217943e+000, + 1.149865e-002, + -2.665953e+000, + -1.226307e+000, + 7.169725e+000, + -1.159434e+001, + 3.583420e-002, + -3.074378e-001, + 3.412248e-001, + 4.422122e+000, + 1.283791e+000, + -9.705116e-002, + 8.312991e-002, + -2.160462e+000, + 1.028235e+001, + 3.543357e-002, + 1.032049e+000, + 1.058310e-001, + -2.972898e+000, + 2.418628e-001, + -1.329617e+000, + -3.699557e-001, + 5.560117e-001, + -9.730113e+000, + 9.938865e-002, + -3.071488e-001, + 2.510691e-001, + 1.777111e+000, + 8.705142e-001, + -1.019387e+000, + -1.893247e-001, + 1.194079e-001, + 1.239436e+001, + -4.799224e+000, + 2.940213e-001, + 4.841268e-001, + 1.529724e+000, + 6.582615e-001, + // albedo 0, turbidity 10 + -1.896737e+000, + -1.005442e+000, + -6.411032e+000, + 6.548220e+000, + -3.227596e-002, + 5.717262e-001, + -8.115192e-006, + 2.296704e+000, + 9.000749e-001, + -2.411116e+000, + -1.225587e+000, + -1.753629e+001, + 1.829393e+001, + 1.247555e-002, + 2.364616e-001, + -5.114637e-003, + 1.603778e+000, + -2.224156e-001, + -4.707121e+000, + -2.074977e+000, + 7.942300e+000, + -1.132407e+001, + -5.415654e-002, + 5.446811e-001, + 1.032493e-001, + 4.010235e+000, + 1.369802e+000, + 1.010482e-001, + -4.013305e-001, + -2.674579e+000, + 9.779409e+000, + 1.782506e-001, + 7.053045e-001, + 4.200002e-001, + -2.400671e+000, + 1.953165e-001, + -1.243526e+000, + -3.391255e-001, + 8.848882e-001, + -9.789025e+000, + -3.997324e-001, + -9.546227e-001, + -1.044017e-001, + 6.010593e-001, + 8.714462e-001, + -1.014633e+000, + -1.730009e-001, + -7.738934e-002, + 1.390903e+001, + -4.847307e+000, + 1.076059e+000, + 5.685743e-001, + 1.572992e+000, + 6.561432e-001, + // albedo 1, turbidity 1 + -1.122998e+000, + -1.881183e-001, + -1.030709e+001, + 1.158932e+001, + -4.079495e-002, + 9.603774e-001, + 3.079436e-002, + 4.009235e+000, + 5.060745e-001, + -1.134790e+000, + -1.539688e-001, + 5.478405e+000, + -4.217270e+000, + -1.043858e-001, + 7.165008e-001, + 1.524765e-002, + 6.473623e+000, + 4.207882e-001, + -1.134957e+000, + -3.513318e-001, + 7.393837e-001, + 1.354415e+000, + -4.764078e-001, + 1.690441e+000, + -5.492640e-002, + -5.563523e+000, + 1.145743e+000, + -1.058344e+000, + -5.758503e-002, + 1.168230e+000, + 3.269824e-001, + 1.795193e-001, + 7.849011e-001, + 7.441853e-002, + 6.904804e+000, + 2.818790e-001, + -1.075194e+000, + -2.355813e-001, + 2.463685e+000, + -1.536505e+000, + -7.505771e+000, + 9.619712e-001, + -6.465851e-002, + -1.355492e+000, + 8.489847e-001, + -1.079030e+000, + -1.465328e-001, + 1.773838e+000, + 2.310131e+000, + -3.136065e+000, + 3.507952e-001, + 4.435014e-002, + 2.819225e+000, + 5.689008e-001, + // albedo 1, turbidity 2 + -1.125833e+000, + -1.870849e-001, + -9.555833e+000, + 1.059713e+001, + -4.225402e-002, + 9.164663e-001, + 4.338796e-002, + 4.400980e+000, + 6.056119e-001, + -1.127440e+000, + -1.551891e-001, + 4.755621e+000, + -4.408806e+000, + -7.851763e-002, + 2.268284e-001, + 1.460070e-001, + 7.048003e+000, + 3.525997e-001, + -1.143788e+000, + -3.170178e-001, + 5.480669e-001, + 2.041830e+000, + -4.532139e-001, + 2.302233e+000, + -1.887419e-001, + -4.489221e+000, + 1.250967e+000, + -1.032849e+000, + 7.376031e-003, + 5.666073e-001, + -2.312203e-001, + 4.862894e-001, + -1.748294e-001, + 3.572870e-001, + 8.380522e+000, + 1.302333e-001, + -1.093728e+000, + -2.786977e-001, + 2.641272e+000, + -1.507494e+000, + -8.731243e+000, + 1.684055e+000, + -2.023377e-001, + -2.176398e+000, + 1.013249e+000, + -1.076578e+000, + -1.456205e-001, + 1.693935e+000, + 2.945003e+000, + -2.822673e+000, + -2.520033e-001, + 1.517034e-001, + 2.649109e+000, + 5.179094e-001, + // albedo 1, turbidity 3 + -1.146417e+000, + -2.119353e-001, + -7.187525e+000, + 8.058599e+000, + -5.256438e-002, + 8.375733e-001, + 3.887093e-002, + 4.222111e+000, + 6.695347e-001, + -1.173674e+000, + -2.067025e-001, + 2.899359e+000, + -2.804918e+000, + -8.473899e-002, + 3.944225e-003, + 1.340641e-001, + 6.160887e+000, + 4.527141e-001, + -1.090098e+000, + -2.599633e-001, + 9.180856e-001, + 1.092710e+000, + -4.215019e-001, + 2.427660e+000, + -9.277667e-002, + -2.123523e+000, + 1.058159e+000, + -1.084460e+000, + 8.056181e-003, + -2.453510e-001, + 6.619567e-001, + 4.668118e-001, + -9.526719e-001, + 4.648454e-001, + 8.001572e+000, + 3.054194e-001, + -1.053728e+000, + -2.765784e-001, + 2.792388e+000, + -3.489517e+000, + -8.150535e+000, + 2.195757e+000, + -2.017234e-001, + -2.128017e+000, + 9.326589e-001, + -1.099348e+000, + -1.593939e-001, + 1.568292e+000, + 7.247853e+000, + -2.933000e+000, + -5.890481e-001, + 1.724440e-001, + 2.433484e+000, + 5.736558e-001, + // albedo 1, turbidity 4 + -1.185983e+000, + -2.581184e-001, + -7.761056e+000, + 8.317053e+000, + -3.351773e-002, + 6.676667e-001, + 5.941733e-002, + 3.820727e+000, + 6.324032e-001, + -1.268591e+000, + -3.398067e-001, + 2.348503e+000, + -2.023779e+000, + -5.368458e-002, + 1.083282e-001, + 8.402858e-002, + 3.910254e+000, + 5.577481e-001, + -1.071353e+000, + -1.992459e-001, + 7.878387e-001, + 1.974702e-001, + -3.033058e-001, + 2.335298e+000, + -8.205259e-002, + 7.954454e-001, + 9.972312e-001, + -1.089513e+000, + -3.104364e-002, + -5.995746e-001, + 2.330281e+000, + 6.581939e-001, + -1.821467e+000, + 6.679973e-001, + 5.090195e+000, + 3.125161e-001, + -1.040214e+000, + -2.570934e-001, + 2.660489e+000, + -6.506045e+000, + -7.053586e+000, + 2.763153e+000, + -2.433632e-001, + -7.648176e-001, + 9.452937e-001, + -1.116052e+000, + -1.831993e-001, + 1.457694e+000, + 1.163608e+001, + -3.216426e+000, + -1.045594e+000, + 2.285002e-001, + 1.817407e+000, + 5.810396e-001, + // albedo 1, turbidity 5 + -1.230134e+000, + -3.136264e-001, + -8.909301e+000, + 9.145006e+000, + -1.055387e-002, + 4.467317e-001, + 1.016826e-001, + 3.342964e+000, + 5.633840e-001, + -1.442907e+000, + -5.593147e-001, + 2.156447e+000, + -1.241657e+000, + -3.512130e-002, + 3.050274e-001, + 1.797175e-002, + 1.742358e+000, + 5.977153e-001, + -1.027627e+000, + -6.481539e-002, + 4.351975e-001, + -1.051677e+000, + -2.030672e-001, + 1.942684e+000, + -3.615993e-002, + 4.050266e+000, + 9.801624e-001, + -1.082110e+000, + -1.578209e-001, + -3.397511e-001, + 4.163851e+000, + 6.650368e-001, + -1.841730e+000, + 7.062544e-001, + 6.789881e-001, + 3.172623e-001, + -1.047447e+000, + -1.977560e-001, + 2.183364e+000, + -8.805249e+000, + -5.483962e+000, + 2.551309e+000, + -1.779640e-001, + 1.519501e+000, + 9.212536e-001, + -1.111853e+000, + -1.935736e-001, + 1.394408e+000, + 1.392405e+001, + -3.465430e+000, + -1.068432e+000, + 2.388671e-001, + 1.455336e+000, + 6.233425e-001, + // albedo 1, turbidity 6 + -1.262238e+000, + -3.546341e-001, + -1.008703e+001, + 1.020084e+001, + -1.852187e-003, + 3.537580e-001, + 1.239199e-001, + 3.056093e+000, + 5.132052e-001, + -1.613810e+000, + -7.355585e-001, + 2.760123e+000, + -1.685253e+000, + -2.517552e-002, + 2.914258e-001, + 4.743448e-003, + 8.689596e-001, + 5.674192e-001, + -9.462336e-001, + 2.950767e-002, + -2.613816e-001, + -7.398653e-001, + -1.315558e-001, + 1.901042e+000, + -6.447844e-002, + 4.969341e+000, + 1.027342e+000, + -1.111481e+000, + -2.194054e-001, + -9.004538e-002, + 3.983442e+000, + 4.871278e-001, + -1.965315e+000, + 7.956121e-001, + -2.363225e-001, + 2.718037e-001, + -1.036397e+000, + -1.827106e-001, + 1.964747e+000, + -8.870759e+000, + -4.208011e+000, + 2.461215e+000, + -2.158905e-001, + 1.561676e+000, + 9.436866e-001, + -1.113769e+000, + -1.947819e-001, + 1.300720e+000, + 1.516476e+001, + -4.088732e+000, + -1.069384e+000, + 2.836434e-001, + 1.671451e+000, + 6.229612e-001, + // albedo 1, turbidity 7 + -1.328069e+000, + -4.244047e-001, + -8.417040e+000, + 8.552244e+000, + -6.813504e-003, + 4.127422e-001, + 9.619897e-002, + 2.854227e+000, + 5.059880e-001, + -1.927552e+000, + -1.025290e+000, + 9.529576e-001, + 4.255950e-001, + -3.738779e-002, + 2.584586e-001, + 4.911004e-002, + -2.640913e-001, + 4.138626e-001, + -8.488094e-001, + 1.435988e-001, + 6.356807e-001, + -2.895732e+000, + -8.473961e-002, + 1.701305e+000, + -1.323908e-001, + 6.499338e+000, + 1.210928e+000, + -1.128313e+000, + -3.397048e-001, + -4.043140e-001, + 6.265097e+000, + 5.482395e-001, + -2.057614e+000, + 8.884087e-001, + -2.943879e+000, + 9.760301e-002, + -1.039764e+000, + -1.494772e-001, + 1.781915e+000, + -1.153012e+001, + -3.379232e+000, + 2.517231e+000, + -2.764393e-001, + 2.588849e+000, + 1.052120e+000, + -1.108447e+000, + -2.012251e-001, + 1.198640e+000, + 1.925331e+001, + -4.423892e+000, + -1.257122e+000, + 3.395690e-001, + 1.481220e+000, + 5.880175e-001, + // albedo 1, turbidity 8 + -1.374185e+000, + -4.967434e-001, + -7.401318e+000, + 7.724021e+000, + -2.345723e-002, + 5.979653e-001, + 2.436346e-002, + 2.658970e+000, + 6.014891e-001, + -2.310933e+000, + -1.290290e+000, + -1.301909e+000, + 2.557806e+000, + -3.744449e-002, + 8.982861e-002, + 1.090613e-001, + -4.398363e-001, + 1.184329e-001, + -1.124730e+000, + -9.921830e-002, + 1.366902e+000, + -4.172489e+000, + -5.078016e-002, + 1.393597e+000, + -9.323843e-002, + 6.452721e+000, + 1.435913e+000, + -8.468477e-001, + -2.744819e-001, + -4.347200e-001, + 6.713362e+000, + 6.127133e-001, + -1.685634e+000, + 7.360941e-001, + -4.535502e+000, + -2.920866e-002, + -1.165242e+000, + -2.008697e-001, + 1.438778e+000, + -1.008936e+001, + -2.214771e+000, + 2.102909e+000, + -1.763085e-001, + 2.859075e+000, + 1.093470e+000, + -1.074614e+000, + -2.066374e-001, + 1.131891e+000, + 1.630063e+001, + -4.801441e+000, + -1.112590e+000, + 3.595785e-001, + 1.122227e+000, + 5.794610e-001, + // albedo 1, turbidity 9 + -1.521515e+000, + -6.835604e-001, + -5.571044e+000, + 6.028774e+000, + -4.253715e-002, + 6.875746e-001, + -5.279456e-006, + 2.180150e+000, + 8.487705e-001, + -2.240415e+000, + -1.171166e+000, + -7.182771e+000, + 8.417068e+000, + -1.932866e-002, + 1.101887e-001, + -1.098862e-002, + 6.242195e-001, + -2.393875e-001, + -2.712354e+000, + -1.198830e+000, + 3.180200e+000, + -6.768130e+000, + -2.563386e-003, + 7.984607e-001, + 2.764376e-001, + 4.695358e+000, + 1.557045e+000, + -3.655172e-002, + -2.142321e-002, + -9.138120e-001, + 7.932786e+000, + 3.516542e-001, + -7.994343e-001, + 1.786761e-001, + -4.208399e+000, + 1.820576e-002, + -1.368610e+000, + -2.656212e-001, + 1.249397e+000, + -8.317818e+000, + -8.962772e-001, + 1.423249e+000, + 1.478381e-001, + 2.191660e+000, + 1.007748e+000, + -1.041753e+000, + -2.453366e-001, + 1.061102e+000, + 1.130172e+001, + -4.739312e+000, + -9.223334e-001, + 2.982776e-001, + 6.162931e-001, + 6.080302e-001, + // albedo 1, turbidity 10 + -1.989159e+000, + -1.095160e+000, + -2.915550e+000, + 3.275339e+000, + -5.735765e-002, + 5.742174e-001, + -7.683288e-006, + 1.763400e+000, + 9.001342e-001, + -2.070020e+000, + -1.086338e+000, + -1.095898e+001, + 1.206960e+001, + 3.780123e-002, + -1.774699e-002, + -5.881348e-004, + 1.333819e+000, + -2.605423e-001, + -5.249653e+000, + -2.383040e+000, + 6.160406e+000, + -9.097138e+000, + -1.955319e-001, + 1.651785e+000, + 6.016463e-004, + 3.021824e+000, + 1.493574e+000, + 4.685432e-001, + -2.358662e-001, + -2.666433e+000, + 9.685763e+000, + 5.804928e-001, + -1.521875e+000, + 5.668989e-001, + -1.548136e+000, + 1.688642e-002, + -1.296891e+000, + -3.449031e-001, + 1.928548e+000, + -1.167560e+001, + -1.627615e+000, + 1.355603e+000, + -1.929074e-001, + -6.568952e-001, + 1.009774e+000, + -1.067288e+000, + -2.410392e-001, + 7.147961e-001, + 1.783840e+001, + -4.374399e+000, + -6.588777e-001, + 3.329831e-001, + 1.012066e+000, + 6.118645e-001, +}; + +double datasetXYZRad2[] = +{ + // albedo 0, turbidity 1 + 1.632341e+000, + 1.395230e+000, + 1.375634e+000, + 1.238193e+001, + 5.921102e+000, + 7.766508e+000, + // albedo 0, turbidity 2 + 1.597115e+000, + 1.554617e+000, + 3.932382e-001, + 1.505284e+001, + 5.725234e+000, + 8.158155e+000, + // albedo 0, turbidity 3 + 1.522034e+000, + 1.844545e+000, + -1.322862e+000, + 1.918382e+001, + 5.440769e+000, + 8.837119e+000, + // albedo 0, turbidity 4 + 1.403048e+000, + 2.290852e+000, + -4.013792e+000, + 2.485100e+001, + 5.521888e+000, + 9.845547e+000, + // albedo 0, turbidity 5 + 1.286364e+000, + 2.774498e+000, + -6.648221e+000, + 2.964151e+001, + 5.923777e+000, + 1.097075e+001, + // albedo 0, turbidity 6 + 1.213544e+000, + 3.040195e+000, + -8.092676e+000, + 3.186082e+001, + 6.789782e+000, + 1.158899e+001, + // albedo 0, turbidity 7 + 1.122622e+000, + 3.347465e+000, + -9.649016e+000, + 3.343824e+001, + 9.347715e+000, + 1.231374e+001, + // albedo 0, turbidity 8 + 1.007356e+000, + 3.543858e+000, + -1.053520e+001, + 3.239842e+001, + 1.483962e+001, + 1.331718e+001, + // albedo 0, turbidity 9 + 8.956642e-001, + 3.278700e+000, + -9.254933e+000, + 2.557923e+001, + 2.489677e+001, + 1.476166e+001, + // albedo 0, turbidity 10 + 7.985143e-001, + 2.340404e+000, + -4.928274e+000, + 1.141787e+001, + 3.961501e+001, + 1.682448e+001, + // albedo 1, turbidity 1 + 1.745162e+000, + 1.639467e+000, + 1.342721e+000, + 1.166033e+001, + 1.490124e+001, + 1.774031e+001, + // albedo 1, turbidity 2 + 1.708439e+000, + 1.819144e+000, + 2.834399e-001, + 1.448066e+001, + 1.459214e+001, + 1.858679e+001, + // albedo 1, turbidity 3 + 1.631720e+000, + 2.094799e+000, + -1.378825e+000, + 1.843198e+001, + 1.463173e+001, + 1.962881e+001, + // albedo 1, turbidity 4 + 1.516536e+000, + 2.438729e+000, + -3.624121e+000, + 2.298621e+001, + 1.599782e+001, + 2.070027e+001, + // albedo 1, turbidity 5 + 1.405863e+000, + 2.785191e+000, + -5.705236e+000, + 2.645121e+001, + 1.768330e+001, + 2.191903e+001, + // albedo 1, turbidity 6 + 1.344052e+000, + 2.951807e+000, + -6.683851e+000, + 2.744271e+001, + 1.985706e+001, + 2.229452e+001, + // albedo 1, turbidity 7 + 1.245827e+000, + 3.182923e+000, + -7.822960e+000, + 2.791395e+001, + 2.327254e+001, + 2.315910e+001, + // albedo 1, turbidity 8 + 1.132305e+000, + 3.202593e+000, + -8.008429e+000, + 2.521093e+001, + 3.000014e+001, + 2.405306e+001, + // albedo 1, turbidity 9 + 1.020330e+000, + 2.820556e+000, + -6.238704e+000, + 1.709276e+001, + 4.077916e+001, + 2.509949e+001, + // albedo 1, turbidity 10 + 9.031570e-001, + 1.863917e+000, + -1.955738e+000, + 3.032665e+000, + 5.434290e+001, + 2.641780e+001, +}; + +double datasetXYZ3[] = +{ + // albedo 0, turbidity 1 + -1.310023e+000, + -4.407658e-001, + -3.640340e+001, + 3.683292e+001, + -8.124762e-003, + 5.297961e-001, + 1.188633e-002, + 3.138320e+000, + 5.134778e-001, + -1.424100e+000, + -5.501606e-001, + -1.753510e+001, + 1.822769e+001, + -1.539272e-002, + 6.366826e-001, + 2.661996e-003, + 2.659915e+000, + 4.071138e-001, + -1.103436e+000, + -1.884105e-001, + 6.425322e+000, + -6.910579e+000, + -2.019861e-002, + 3.553271e-001, + -1.589061e-002, + 5.345985e+000, + 8.790218e-001, + -1.186200e+000, + -4.307514e-001, + -3.957947e+000, + 5.979352e+000, + -5.348869e-002, + 1.736117e+000, + 3.491346e-002, + -2.692261e+000, + 5.610506e-001, + -1.006038e+000, + -1.305995e-001, + 4.473513e+000, + -3.806719e+000, + 1.419407e-001, + -2.148238e-002, + -5.081185e-002, + 3.735362e+000, + 5.358280e-001, + -1.078507e+000, + -1.633754e-001, + -3.812368e+000, + 4.381700e+000, + 2.988122e-002, + 1.754224e+000, + 1.472376e-001, + 3.722798e+000, + 4.999157e-001, + // albedo 0, turbidity 2 + -1.333582e+000, + -4.649908e-001, + -3.359528e+001, + 3.404375e+001, + -9.384242e-003, + 5.587511e-001, + 5.726310e-003, + 3.073145e+000, + 5.425529e-001, + -1.562624e+000, + -7.107068e-001, + -1.478170e+001, + 1.559839e+001, + -1.462375e-002, + 5.050133e-001, + 2.516017e-002, + 1.604696e+000, + 2.902403e-001, + -8.930158e-001, + 4.068077e-002, + 1.373481e+000, + -2.342752e+000, + -2.098058e-002, + 6.248686e-001, + -5.258363e-002, + 7.058214e+000, + 1.150373e+000, + -1.262823e+000, + -4.818353e-001, + 8.892610e-004, + 1.923120e+000, + -4.979718e-002, + 1.040693e+000, + 1.558103e-001, + -2.852480e+000, + 2.420691e-001, + -9.968383e-001, + -1.200648e-001, + 1.324342e+000, + -9.430889e-001, + 1.931098e-001, + 4.436916e-001, + -7.320456e-002, + 4.215931e+000, + 7.898019e-001, + -1.078185e+000, + -1.718192e-001, + -1.720191e+000, + 2.358918e+000, + 2.765637e-002, + 1.260245e+000, + 2.021941e-001, + 3.395483e+000, + 5.173628e-001, + // albedo 0, turbidity 3 + -1.353023e+000, + -4.813523e-001, + -3.104920e+001, + 3.140156e+001, + -9.510741e-003, + 5.542030e-001, + 8.135471e-003, + 3.136646e+000, + 5.215989e-001, + -1.624704e+000, + -7.990201e-001, + -2.167125e+001, + 2.246341e+001, + -1.163533e-002, + 5.415746e-001, + 2.618378e-002, + 1.139214e+000, + 3.444357e-001, + -7.983610e-001, + 1.417476e-001, + 9.914841e+000, + -1.081503e+001, + -1.218845e-002, + 3.411392e-001, + -6.137698e-002, + 7.445848e+000, + 1.180080e+000, + -1.266679e+000, + -4.288977e-001, + -5.818701e+000, + 6.986437e+000, + -8.180711e-002, + 1.397403e+000, + 2.016916e-001, + -1.275731e+000, + 2.592773e-001, + -1.009707e+000, + -1.537754e-001, + 3.496378e+000, + -3.013726e+000, + 2.421150e-001, + -2.831925e-001, + 3.003395e-002, + 3.702862e+000, + 7.746320e-001, + -1.075646e+000, + -1.768747e-001, + -1.347762e+000, + 1.989004e+000, + 1.375836e-002, + 1.764810e+000, + 1.330018e-001, + 3.230864e+000, + 6.626210e-001, + // albedo 0, turbidity 4 + -1.375269e+000, + -5.103569e-001, + -3.442661e+001, + 3.478703e+001, + -8.460009e-003, + 5.408643e-001, + 4.813323e-003, + 3.016078e+000, + 5.062069e-001, + -1.821679e+000, + -9.766461e-001, + -1.926488e+001, + 1.997912e+001, + -9.822567e-003, + 3.649556e-001, + 4.316092e-002, + 8.930190e-001, + 4.166527e-001, + -6.633542e-001, + 1.997841e-001, + 2.395592e+000, + -3.117175e+000, + -1.080884e-002, + 8.983814e-001, + -1.375825e-001, + 6.673463e+000, + 1.115663e+000, + -1.303240e+000, + -3.612712e-001, + 8.292959e-002, + 3.381364e-001, + -6.078648e-002, + 3.229247e-001, + 3.680987e-001, + 7.046755e-001, + 3.144924e-001, + -9.952598e-001, + -2.039076e-001, + 4.026851e-001, + 2.686684e-001, + 1.640712e-001, + 5.186341e-001, + -1.205520e-002, + 2.659613e+000, + 8.030394e-001, + -1.098579e+000, + -2.151992e-001, + 6.558198e-001, + -7.436900e-004, + -1.421817e-003, + 1.073701e+000, + 1.886875e-001, + 2.536857e+000, + 6.673923e-001, + // albedo 0, turbidity 5 + -1.457986e+000, + -5.906842e-001, + -3.812464e+001, + 3.838539e+001, + -6.024357e-003, + 4.741484e-001, + 1.209223e-002, + 2.818432e+000, + 5.012433e-001, + -1.835728e+000, + -1.003405e+000, + -6.848129e+000, + 7.601943e+000, + -1.277375e-002, + 4.785598e-001, + 3.366853e-002, + 1.097701e+000, + 4.636635e-001, + -8.491348e-001, + 9.466365e-003, + -2.685226e+000, + 2.004060e+000, + -1.168708e-002, + 6.752316e-001, + -1.543371e-001, + 5.674759e+000, + 1.039534e+000, + -1.083379e+000, + -1.506790e-001, + 7.328236e-001, + -5.095568e-001, + -8.609153e-002, + 4.448820e-001, + 4.174662e-001, + 1.481556e+000, + 3.942551e-001, + -1.117089e+000, + -3.337605e-001, + 2.502281e-001, + 4.036323e-001, + 2.673899e-001, + 2.829817e-001, + 2.242450e-002, + 2.043207e+000, + 7.706902e-001, + -1.071648e+000, + -2.126200e-001, + 6.069466e-001, + -1.456290e-003, + -5.515960e-001, + 1.046755e+000, + 1.985021e-001, + 2.290245e+000, + 6.876058e-001, + // albedo 0, turbidity 6 + -1.483903e+000, + -6.309647e-001, + -4.380213e+001, + 4.410537e+001, + -5.712161e-003, + 5.195992e-001, + 2.028428e-003, + 2.687114e+000, + 5.098321e-001, + -2.053976e+000, + -1.141473e+000, + 5.109183e-001, + 8.060391e-002, + -1.033983e-002, + 4.066532e-001, + 4.869627e-002, + 1.161722e+000, + 4.039525e-001, + -6.348185e-001, + 7.651292e-002, + -1.031327e+001, + 1.007598e+001, + -2.083688e-002, + 7.359516e-001, + -2.029459e-001, + 5.013257e+000, + 1.077649e+000, + -1.228630e+000, + -1.650496e-001, + 4.077157e-002, + -7.189167e-001, + -5.092220e-002, + 2.959814e-001, + 5.111496e-001, + 2.540433e+000, + 3.615330e-001, + -1.041883e+000, + -3.278413e-001, + -6.691911e-002, + 1.307364e+000, + 2.166663e-001, + 3.000595e-001, + -3.157136e-003, + 1.389208e+000, + 7.999026e-001, + -1.103556e+000, + -2.443602e-001, + 4.705347e-001, + -9.296482e-004, + -5.309920e-001, + 9.654511e-001, + 2.142587e-001, + 2.244723e+000, + 6.839976e-001, + // albedo 0, turbidity 7 + -1.555684e+000, + -6.962113e-001, + -4.647983e+001, + 4.674270e+001, + -5.034895e-003, + 4.755090e-001, + -9.502561e-007, + 2.626569e+000, + 5.056194e-001, + -1.998288e+000, + -1.124720e+000, + -1.629586e+000, + 2.187993e+000, + -8.284384e-003, + 3.845258e-001, + 5.726240e-002, + 1.185644e+000, + 4.255812e-001, + -1.032570e+000, + -2.513850e-001, + -3.721112e+000, + 3.506967e+000, + -2.186561e-002, + 9.436049e-001, + -2.451412e-001, + 4.725724e+000, + 1.039256e+000, + -8.597532e-001, + 9.073332e-002, + -2.553741e+000, + 1.993237e+000, + -4.390891e-002, + -2.046928e-001, + 5.515623e-001, + 1.909127e+000, + 3.948212e-001, + -1.210482e+000, + -4.477622e-001, + -2.267805e-001, + 1.219488e+000, + 1.336186e-001, + 6.866897e-001, + 2.808997e-002, + 1.600403e+000, + 7.816409e-001, + -1.078168e+000, + -2.699261e-001, + 2.537282e-001, + 3.820684e-001, + -4.425103e-001, + 5.298235e-001, + 2.185217e-001, + 1.728679e+000, + 6.882743e-001, + // albedo 0, turbidity 8 + -1.697968e+000, + -8.391488e-001, + -5.790105e+001, + 5.814120e+001, + -3.404760e-003, + 4.265140e-001, + -1.796301e-006, + 2.368442e+000, + 5.324429e-001, + -2.141552e+000, + -1.172230e+000, + 1.677872e+001, + -1.641470e+001, + -5.732425e-003, + 2.002199e-001, + 6.841834e-002, + 1.485338e+000, + 3.215763e-001, + -1.442946e+000, + -7.264245e-001, + -9.503706e+000, + 9.650462e+000, + -2.120995e-002, + 1.419263e+000, + -2.893098e-001, + 3.860731e+000, + 1.120857e+000, + -5.696752e-001, + 3.411279e-001, + -2.931035e-001, + -6.512552e-001, + -1.068437e-001, + -1.085661e+000, + 6.107549e-001, + 1.459503e+000, + 3.210336e-001, + -1.313839e+000, + -5.921371e-001, + -2.332222e-001, + 1.648196e+000, + 2.492787e-001, + 1.381033e+000, + -1.993392e-002, + 9.812560e-001, + 8.316329e-001, + -1.087464e+000, + -3.195534e-001, + 2.902095e-001, + 3.383709e-001, + -8.798482e-001, + 1.494668e-002, + 2.529703e-001, + 1.452644e+000, + 6.693870e-001, + // albedo 0, turbidity 9 + -2.068582e+000, + -1.118605e+000, + -5.081598e+001, + 5.097486e+001, + -3.280669e-003, + 4.067371e-001, + -2.544951e-006, + 2.179497e+000, + 5.778017e-001, + -1.744693e+000, + -8.537207e-001, + 2.234361e+001, + -2.208318e+001, + -5.932616e-003, + 1.035049e-001, + 5.742772e-002, + 1.977880e+000, + 2.124846e-001, + -3.287515e+000, + -2.140268e+000, + -1.249566e+001, + 1.240091e+001, + -2.409349e-002, + 1.397821e+000, + -2.371627e-001, + 2.771192e+000, + 1.170496e+000, + 5.502311e-001, + 1.046630e+000, + 2.193517e+000, + -2.220400e+000, + -1.064394e-001, + -1.017926e+000, + 4.795457e-001, + 1.030644e+000, + 3.177516e-001, + -1.719734e+000, + -9.536198e-001, + -6.586821e-001, + 1.386361e+000, + -2.513065e-002, + 1.187011e+000, + 6.542539e-002, + 5.296055e-001, + 8.082660e-001, + -1.005700e+000, + -3.028096e-001, + 4.470957e-002, + 1.007760e+000, + -8.119016e-001, + 3.153338e-002, + 2.311321e-001, + 1.182208e+000, + 6.824758e-001, + // albedo 0, turbidity 10 + -2.728867e+000, + -1.580388e+000, + -3.079627e+001, + 3.092586e+001, + -4.197673e-003, + 3.154759e-001, + -3.897675e-006, + 1.920567e+000, + 6.664791e-001, + -1.322495e+000, + -7.249275e-001, + 1.477660e+001, + -1.468154e+001, + -9.044857e-003, + 5.624314e-002, + 6.498392e-002, + 2.047389e+000, + 6.367540e-002, + -6.102376e+000, + -3.473018e+000, + -9.926071e+000, + 9.637797e+000, + -1.097909e-002, + 1.103498e+000, + -2.424521e-001, + 2.520748e+000, + 1.240260e+000, + 1.351796e+000, + 1.018588e+000, + 2.009081e+000, + -1.333394e+000, + -1.979125e-001, + -3.318292e-001, + 4.476624e-001, + 9.095235e-001, + 2.955611e-001, + -1.774467e+000, + -1.079880e+000, + -8.084680e-002, + 2.577697e-001, + -1.149295e-001, + 4.975303e-001, + 2.931611e-003, + -3.803171e-001, + 8.002794e-001, + -9.898401e-001, + -2.542513e-001, + -7.530911e-002, + 1.870355e+000, + -1.521918e+000, + 2.405164e-001, + 2.964615e-001, + 1.334800e+000, + 6.789053e-001, + // albedo 1, turbidity 1 + -1.279730e+000, + -4.290674e-001, + -4.277972e+001, + 4.343305e+001, + -6.541826e-003, + 4.945086e-001, + 1.425338e-002, + 2.685244e+000, + 5.011313e-001, + -1.449506e+000, + -5.766374e-001, + -1.688496e+001, + 1.781118e+001, + -1.121649e-002, + 3.545020e-001, + 2.287338e-002, + 1.904281e+000, + 4.936998e-001, + -1.021980e+000, + -1.897574e-001, + 2.482462e+000, + -2.941725e+000, + -1.570448e-002, + 7.532578e-001, + -4.256800e-002, + 5.239660e+000, + 4.983116e-001, + -1.162608e+000, + -3.428049e-001, + 3.974358e+000, + -1.527935e+000, + -3.919201e-002, + 8.758593e-001, + 7.291363e-002, + -3.455257e+000, + 8.007426e-001, + -9.929985e-001, + -8.712006e-002, + -7.397313e-001, + 1.348372e+000, + 9.511685e-002, + 3.233584e-001, + -7.549148e-002, + 5.806452e+000, + 4.990042e-001, + -1.084996e+000, + -1.739767e-001, + 1.580475e-001, + 9.088180e-001, + 6.871433e-002, + 5.933079e-001, + 1.188921e-001, + 3.074079e+000, + 4.999327e-001, + // albedo 1, turbidity 2 + -1.317009e+000, + -4.661946e-001, + -4.255347e+001, + 4.312782e+001, + -5.727235e-003, + 4.285447e-001, + 2.189854e-002, + 2.608310e+000, + 5.190700e-001, + -1.469236e+000, + -6.282139e-001, + -1.241404e+001, + 1.348765e+001, + -1.204770e-002, + 5.070285e-001, + -7.280216e-004, + 1.491533e+000, + 3.635064e-001, + -9.713808e-001, + -8.138038e-002, + 3.709854e-001, + -1.041174e+000, + -1.814075e-002, + 5.060860e-001, + -2.053756e-002, + 6.161431e+000, + 1.093736e+000, + -1.159057e+000, + -3.698074e-001, + 2.711209e+000, + -6.006479e-001, + -4.896926e-002, + 9.273957e-001, + 1.137712e-001, + -3.496828e+000, + 2.867109e-001, + -1.011601e+000, + -8.201890e-002, + 2.105725e-001, + 4.597520e-001, + 1.478925e-001, + 2.138940e-001, + -5.660670e-002, + 6.057755e+000, + 7.859121e-001, + -1.078020e+000, + -1.811580e-001, + 1.646622e-001, + 8.348426e-001, + 1.149064e-001, + 4.985738e-001, + 1.376605e-001, + 2.746607e+000, + 4.999626e-001, + // albedo 1, turbidity 3 + -1.325672e+000, + -4.769313e-001, + -4.111215e+001, + 4.168293e+001, + -6.274997e-003, + 4.649469e-001, + 1.119411e-002, + 2.631267e+000, + 5.234546e-001, + -1.619391e+000, + -8.000253e-001, + -1.534098e+001, + 1.632706e+001, + -1.012023e-002, + 4.242255e-001, + 2.931597e-002, + 8.925807e-001, + 3.314765e-001, + -7.356979e-001, + 1.368406e-001, + 2.972579e+000, + -3.535359e+000, + -1.318948e-002, + 4.607620e-001, + -7.182778e-002, + 6.254100e+000, + 1.236299e+000, + -1.316217e+000, + -4.194427e-001, + 3.489902e-002, + 1.289849e+000, + -4.755960e-002, + 1.138222e+000, + 1.975992e-001, + -8.991542e-001, + 2.290572e-001, + -9.502188e-001, + -1.172703e-001, + 1.405202e+000, + -3.061919e-001, + 1.058772e-001, + -3.760592e-001, + -1.983179e-002, + 3.562353e+000, + 7.895959e-001, + -1.100117e+000, + -1.900567e-001, + 4.925030e-001, + 5.250225e-001, + 1.576804e-001, + 1.042701e+000, + 7.330743e-002, + 2.796064e+000, + 6.749783e-001, + // albedo 1, turbidity 4 + -1.354183e+000, + -5.130625e-001, + -4.219268e+001, + 4.271772e+001, + -5.365373e-003, + 4.136743e-001, + 1.235172e-002, + 2.520122e+000, + 5.187269e-001, + -1.741434e+000, + -9.589761e-001, + -8.230339e+000, + 9.296799e+000, + -9.600162e-003, + 4.994969e-001, + 2.955452e-002, + 3.667099e-001, + 3.526999e-001, + -6.917347e-001, + 2.154887e-001, + -8.760264e-001, + 2.334121e-001, + -1.909621e-002, + 4.748033e-001, + -1.138514e-001, + 6.515360e+000, + 1.225097e+000, + -1.293189e+000, + -4.218700e-001, + 1.620952e+000, + -7.858597e-001, + -3.769410e-002, + 6.636786e-001, + 3.364945e-001, + -5.341017e-001, + 2.128347e-001, + -9.735521e-001, + -1.325495e-001, + 1.007517e+000, + 2.598258e-001, + 6.762169e-002, + 1.421018e-003, + -6.915987e-002, + 3.185897e+000, + 8.641956e-001, + -1.094800e+000, + -1.962062e-001, + 5.755591e-001, + 2.906259e-001, + 2.625748e-001, + 7.644049e-001, + 1.347492e-001, + 2.677126e+000, + 6.465460e-001, + // albedo 1, turbidity 5 + -1.393063e+000, + -5.578338e-001, + -4.185249e+001, + 4.233504e+001, + -5.435640e-003, + 4.743765e-001, + 7.422477e-003, + 2.442801e+000, + 5.211707e-001, + -1.939487e+000, + -1.128509e+000, + -8.974257e+000, + 9.978383e+000, + -7.965597e-003, + 2.948830e-001, + 4.436763e-002, + 2.839868e-001, + 3.440424e-001, + -6.011562e-001, + 2.354877e-001, + -3.079820e+000, + 2.585094e+000, + -2.002701e-002, + 7.793909e-001, + -1.598414e-001, + 5.834678e+000, + 1.202856e+000, + -1.315676e+000, + -3.903446e-001, + 1.701900e+000, + -1.304609e+000, + -1.045121e-002, + 2.747707e-001, + 4.143967e-001, + 3.197102e-001, + 2.637580e-001, + -9.618628e-001, + -1.625841e-001, + 1.187138e+000, + 1.497802e-001, + -5.590954e-006, + 3.178475e-002, + -4.153145e-002, + 2.496096e+000, + 8.195082e-001, + -1.111554e+000, + -2.365546e-001, + 7.831875e-001, + 2.018684e-001, + 2.074369e-001, + 7.395978e-001, + 1.225730e-001, + 1.876478e+000, + 6.821167e-001, + // albedo 1, turbidity 6 + -1.427879e+000, + -5.994879e-001, + -3.531016e+001, + 3.581581e+001, + -6.431497e-003, + 4.554192e-001, + 7.348731e-004, + 2.334619e+000, + 5.233377e-001, + -1.998177e+000, + -1.206633e+000, + -2.146510e+001, + 2.242237e+001, + -5.857596e-003, + 2.755663e-001, + 6.384795e-002, + 1.358244e-001, + 3.328437e-001, + -6.440630e-001, + 2.058571e-001, + 2.155499e+000, + -2.587968e+000, + -1.840023e-002, + 8.826555e-001, + -2.222452e-001, + 5.847073e+000, + 1.228387e+000, + -1.229071e+000, + -3.360441e-001, + -3.429599e-001, + 6.179469e-001, + 2.029610e-003, + 8.899319e-002, + 5.041624e-001, + 1.882964e-001, + 2.252040e-001, + -1.022905e+000, + -2.101621e-001, + 1.915689e+000, + -6.498794e-001, + -3.463651e-002, + 8.954605e-002, + -6.797854e-002, + 2.417705e+000, + 8.568618e-001, + -1.082538e+000, + -2.007723e-001, + 4.731009e-001, + 4.077267e-001, + 1.324289e-001, + 6.514880e-001, + 1.702912e-001, + 2.309383e+000, + 6.600895e-001, + // albedo 1, turbidity 7 + -1.472139e+000, + -6.499815e-001, + -3.428465e+001, + 3.469659e+001, + -5.747023e-003, + 4.174167e-001, + 1.688597e-003, + 2.323046e+000, + 5.395191e-001, + -2.161176e+000, + -1.353089e+000, + -2.226827e+001, + 2.329138e+001, + -5.583808e-003, + 2.364793e-001, + 6.096656e-002, + 1.944666e-003, + 2.861624e-001, + -6.593044e-001, + 1.393558e-001, + 4.698373e+000, + -5.193883e+000, + -1.998390e-002, + 1.095635e+000, + -2.391254e-001, + 5.598103e+000, + 1.236193e+000, + -1.195717e+000, + -2.972715e-001, + 4.648953e-002, + 3.024588e-001, + 5.003313e-003, + -3.754741e-001, + 5.247265e-001, + -1.381312e-001, + 2.493896e-001, + -1.020139e+000, + -2.253524e-001, + 3.548437e-001, + 7.030485e-001, + -2.107076e-002, + 4.581395e-001, + -3.243757e-002, + 2.453259e+000, + 8.323623e-001, + -1.098770e+000, + -2.435780e-001, + 8.761614e-001, + 1.941613e-001, + -1.990692e-001, + 3.761139e-001, + 1.657412e-001, + 1.590503e+000, + 6.741417e-001, + // albedo 1, turbidity 8 + -1.648007e+000, + -8.205121e-001, + -4.435106e+001, + 4.479801e+001, + -4.181353e-003, + 3.854830e-001, + -1.842385e-006, + 2.000281e+000, + 5.518363e-001, + -2.140986e+000, + -1.282239e+000, + -3.979213e+000, + 4.672459e+000, + -5.008582e-003, + 2.421920e-001, + 6.253602e-002, + 6.612713e-001, + 2.555851e-001, + -1.300502e+000, + -5.137898e-001, + 5.179821e-001, + -4.032341e-001, + -2.066785e-002, + 1.087929e+000, + -2.615309e-001, + 4.225887e+000, + 1.229237e+000, + -6.963340e-001, + 9.241060e-002, + 6.936356e-002, + -3.588571e-001, + -5.461843e-002, + -5.616643e-001, + 5.484166e-001, + -4.776267e-002, + 2.414935e-001, + -1.233179e+000, + -4.325498e-001, + 6.479813e-001, + 8.368356e-001, + 2.458875e-001, + 6.464752e-001, + -2.897097e-002, + 1.561773e+000, + 8.518598e-001, + -1.051023e+000, + -2.533690e-001, + 1.004294e+000, + 3.028083e-001, + -1.520108e+000, + 1.607013e-001, + 1.619975e-001, + 1.131094e+000, + 6.706655e-001, + // albedo 1, turbidity 9 + -1.948249e+000, + -1.097383e+000, + -4.453697e+001, + 4.494902e+001, + -3.579939e-003, + 3.491605e-001, + -2.500253e-006, + 1.740442e+000, + 6.188022e-001, + -2.154253e+000, + -1.209559e+000, + 4.144894e+000, + -3.562411e+000, + -5.638843e-003, + 1.067169e-001, + 7.594858e-002, + 1.005280e+000, + 1.072543e-001, + -2.513259e+000, + -1.507208e+000, + -1.602979e+000, + 1.404154e+000, + -5.560750e-003, + 1.240490e+000, + -2.852117e-001, + 3.485252e+000, + 1.349321e+000, + -7.832214e-002, + 3.655626e-001, + 3.856288e-001, + 6.867894e-001, + -1.609523e-001, + -6.704306e-001, + 5.357301e-001, + -6.457935e-001, + 1.479503e-001, + -1.354784e+000, + -5.454375e-001, + 8.797469e-001, + -1.466514e+000, + 7.134420e-001, + 5.934903e-001, + -2.911178e-002, + 8.643737e-001, + 9.030724e-001, + -1.048324e+000, + -2.738736e-001, + 8.783074e-001, + 3.246188e+000, + -4.435369e+000, + 1.251791e-001, + 1.783486e-001, + 1.064657e+000, + 6.522878e-001, + // albedo 1, turbidity 10 + -2.770408e+000, + -1.618911e+000, + -2.504031e+001, + 2.531674e+001, + -4.239279e-003, + 3.241013e-001, + -3.764484e-006, + 1.586843e+000, + 7.035906e-001, + -1.913500e+000, + -1.144014e+000, + -1.080587e+001, + 1.153677e+001, + -1.003197e-002, + 1.577515e-001, + 5.217789e-002, + 1.225278e+000, + 5.172771e-003, + -5.293208e+000, + -2.876463e+000, + 2.087053e+000, + -3.201552e+000, + 3.892964e-003, + 5.323930e-001, + -2.034512e-001, + 2.617760e+000, + 1.273597e+000, + 9.060340e-001, + 3.773409e-001, + -6.399945e-001, + 3.213979e+000, + -9.112172e-002, + 6.494055e-001, + 3.953280e-001, + 5.047796e-001, + 2.998695e-001, + -1.482179e+000, + -6.778310e-001, + 1.161775e+000, + -3.004872e+000, + 4.774797e-001, + -4.969248e-001, + -3.512074e-003, + -1.307190e+000, + 7.927378e-001, + -9.863181e-001, + -1.803364e-001, + 5.810824e-001, + 4.580570e+000, + -3.863454e+000, + 5.328174e-001, + 2.272821e-001, + 1.771114e+000, + 6.791814e-001, +}; + +double datasetXYZRad3[] = +{ + // albedo 0, turbidity 1 + 1.168084e+000, + 2.156455e+000, + -3.980314e+000, + 1.989302e+001, + 1.328335e+001, + 1.435621e+001, + // albedo 0, turbidity 2 + 1.135488e+000, + 2.294701e+000, + -4.585886e+000, + 2.090208e+001, + 1.347840e+001, + 1.467658e+001, + // albedo 0, turbidity 3 + 1.107408e+000, + 2.382765e+000, + -5.112357e+000, + 2.147823e+001, + 1.493128e+001, + 1.460882e+001, + // albedo 0, turbidity 4 + 1.054193e+000, + 2.592891e+000, + -6.115000e+000, + 2.268967e+001, + 1.635672e+001, + 1.518999e+001, + // albedo 0, turbidity 5 + 1.006946e+000, + 2.705420e+000, + -6.698930e+000, + 2.291830e+001, + 1.834324e+001, + 1.570651e+001, + // albedo 0, turbidity 6 + 9.794044e-001, + 2.742440e+000, + -6.805283e+000, + 2.225271e+001, + 2.050797e+001, + 1.563130e+001, + // albedo 0, turbidity 7 + 9.413577e-001, + 2.722009e+000, + -6.760707e+000, + 2.098242e+001, + 2.342588e+001, + 1.605011e+001, + // albedo 0, turbidity 8 + 8.917923e-001, + 2.592780e+000, + -6.152635e+000, + 1.774141e+001, + 2.858324e+001, + 1.657910e+001, + // albedo 0, turbidity 9 + 8.288391e-001, + 2.153434e+000, + -4.118327e+000, + 1.078118e+001, + 3.681710e+001, + 1.738139e+001, + // albedo 0, turbidity 10 + 7.623528e-001, + 1.418187e+000, + -8.845235e-001, + 7.590129e-001, + 4.629859e+001, + 1.921657e+001, + // albedo 1, turbidity 1 + 1.352858e+000, + 2.048862e+000, + -2.053393e+000, + 1.405874e+001, + 3.045344e+001, + 3.044430e+001, + // albedo 1, turbidity 2 + 1.330497e+000, + 2.126497e+000, + -2.466296e+000, + 1.467559e+001, + 3.090738e+001, + 3.069707e+001, + // albedo 1, turbidity 3 + 1.286344e+000, + 2.200436e+000, + -2.877228e+000, + 1.492701e+001, + 3.236288e+001, + 3.077223e+001, + // albedo 1, turbidity 4 + 1.234428e+000, + 2.289628e+000, + -3.404699e+000, + 1.499436e+001, + 3.468390e+001, + 3.084842e+001, + // albedo 1, turbidity 5 + 1.178660e+000, + 2.306071e+000, + -3.549159e+000, + 1.411006e+001, + 3.754188e+001, + 3.079730e+001, + // albedo 1, turbidity 6 + 1.151366e+000, + 2.333005e+000, + -3.728627e+000, + 1.363374e+001, + 3.905894e+001, + 3.092599e+001, + // albedo 1, turbidity 7 + 1.101593e+000, + 2.299422e+000, + -3.565787e+000, + 1.196745e+001, + 4.188472e+001, + 3.102755e+001, + // albedo 1, turbidity 8 + 1.038322e+000, + 2.083539e+000, + -2.649585e+000, + 8.037389e+000, + 4.700869e+001, + 3.065948e+001, + // albedo 1, turbidity 9 + 9.596146e-001, + 1.671470e+000, + -8.751538e-001, + 1.679772e+000, + 5.345784e+001, + 3.054520e+001, + // albedo 1, turbidity 10 + 8.640731e-001, + 9.858301e-001, + 1.854956e+000, + -6.798097e+000, + 5.936468e+001, + 3.110255e+001, +}; + + + +double* datasetsXYZ[] = +{ + datasetXYZ1, + datasetXYZ2, + datasetXYZ3 +}; + +double* datasetsXYZRad[] = +{ + datasetXYZRad1, + datasetXYZRad2, + datasetXYZRad3 +}; diff --git a/src/haloray-core/simulation/backgroundSky/ArHosekSkyModelData_RGB.h b/src/haloray-core/simulation/backgroundSky/ArHosekSkyModelData_RGB.h new file mode 100644 index 0000000..9276dda --- /dev/null +++ b/src/haloray-core/simulation/backgroundSky/ArHosekSkyModelData_RGB.h @@ -0,0 +1,3861 @@ +/* +This source is published under the following 3-clause BSD license. + +Copyright (c) 2012 - 2013, Lukas Hosek and Alexander Wilkie +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * None of the names of the contributors may be used to endorse or promote + products derived from this software without specific prior written + permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + + +/* ============================================================================ + +This file is part of a sample implementation of the analytical skylight and +solar radiance models presented in the SIGGRAPH 2012 paper + + + "An Analytic Model for Full Spectral Sky-Dome Radiance" + +and the 2013 IEEE CG&A paper + + "Adding a Solar Radiance Function to the Hosek Skylight Model" + + both by + + Lukas Hosek and Alexander Wilkie + Charles University in Prague, Czech Republic + + + Version: 1.4a, February 22nd, 2013 + +Version history: + +1.4a February 22nd, 2013 + Removed unnecessary and counter-intuitive solar radius parameters + from the interface of the colourspace sky dome initialisation functions. + +1.4 February 11th, 2013 + Fixed a bug which caused the relative brightness of the solar disc + and the sky dome to be off by a factor of about 6. The sun was too + bright: this affected both normal and alien sun scenarios. The + coefficients of the solar radiance function were changed to fix this. + +1.3 January 21st, 2013 (not released to the public) + Added support for solar discs that are not exactly the same size as + the terrestrial sun. Also added support for suns with a different + emission spectrum ("Alien World" functionality). + +1.2a December 18th, 2012 + Fixed a mistake and some inaccuracies in the solar radiance function + explanations found in ArHosekSkyModel.h. The actual source code is + unchanged compared to version 1.2. + +1.2 December 17th, 2012 + Native RGB data and a solar radiance function that matches the turbidity + conditions were added. + +1.1 September 2012 + The coefficients of the spectral model are now scaled so that the output + is given in physical units: W / (m^-2 * sr * nm). Also, the output of the + XYZ model is now no longer scaled to the range [0...1]. Instead, it is + the result of a simple conversion from spectral data via the CIE 2 degree + standard observer matching functions. Therefore, after multiplication + with 683 lm / W, the Y channel now corresponds to luminance in lm. + +1.0 May 11th, 2012 + Initial release. + + +Please visit http://cgg.mff.cuni.cz/projects/SkylightModelling/ to check if +an updated version of this code has been published! + +============================================================================ */ + + +/* + +This file contains the coefficient data for the RGB colour space version of +the model. + +*/ + +// uses Aug 23 dataset + +double datasetRGB1[] = +{ + // albedo 0, turbidity 1 + -1.099459e+000, + -1.335146e-001, + -4.083223e+000, + 5.919603e+000, + -1.104166e-001, + 1.600158e+000, + -1.326538e-006, + 4.917807e+000, + 5.127716e-001, + -1.169858e+000, + -1.832793e-001, + 9.694744e-001, + 9.495762e-002, + -4.738918e-002, + 2.194171e-001, + 1.095749e-001, + 3.603604e+000, + 3.815119e-001, + -9.665225e-001, + -1.403888e-001, + 5.194457e+000, + -1.107607e+000, + -8.135181e-001, + 4.969661e+000, + -2.300508e-001, + -2.489350e+000, + 1.279158e+000, + -1.292508e+000, + -1.299552e-001, + -2.071404e+000, + -4.752482e-002, + 1.215598e+000, + -1.904179e+000, + 3.027985e-001, + 8.707768e+000, + 6.332446e-002, + -9.264666e-001, + -1.696780e-001, + 4.574070e+000, + -4.232936e-001, + -7.575833e+000, + 5.079755e+000, + -2.576343e-001, + -4.506805e+000, + 6.908129e-001, + -1.139072e+000, + -1.796056e-001, + 1.923311e+000, + 6.788529e+000, + -2.364389e+000, + -1.064041e+000, + 1.717010e-001, + 1.534681e+000, + 5.015810e-001, + // albedo 0, turbidity 2 + -1.107257e+000, + -1.384411e-001, + -4.285744e+000, + 5.713157e+000, + -1.015992e-001, + 1.372638e+000, + 6.555893e-002, + 5.127514e+000, + 6.550471e-001, + -1.187337e+000, + -1.969013e-001, + 8.551048e-001, + 5.289708e-002, + -7.626406e-002, + 1.733153e-002, + 1.779454e-001, + 3.801038e+000, + 4.742709e-001, + -9.685321e-001, + -1.553308e-001, + 4.732492e+000, + -1.178935e+000, + -7.852791e-001, + 4.604492e+000, + -2.666518e-001, + -2.367663e+000, + 1.177527e+000, + -1.252817e+000, + -5.129949e-002, + -2.800433e+000, + -1.295992e-002, + 1.308964e+000, + -2.204331e+000, + 7.276011e-001, + 8.699265e+000, + 1.188388e-001, + -9.459509e-001, + -2.322133e-001, + 4.375041e+000, + -1.712018e-001, + -7.451681e+000, + 5.078019e+000, + -4.223538e-001, + -4.595561e+000, + 1.074719e+000, + -1.125092e+000, + -1.796750e-001, + 1.626399e+000, + 6.989743e+000, + -2.406382e+000, + -9.060383e-001, + 2.961611e-001, + 1.337715e+000, + 5.438140e-001, + // albedo 0, turbidity 3 + -1.135338e+000, + -1.716160e-001, + -1.499253e+000, + 2.373491e+000, + -1.654023e-001, + 9.566404e-001, + 1.113453e-001, + 4.528473e+000, + 6.579439e-001, + -1.132780e+000, + -1.456214e-001, + -1.736672e+000, + 1.756589e+000, + -1.087003e-001, + 3.757927e-001, + 2.525070e-001, + 7.178513e+000, + 5.003814e-001, + -1.167176e+000, + -2.927225e-001, + 5.727667e+000, + -3.139244e+000, + -6.425204e-001, + 2.822634e+000, + -1.457812e-001, + -6.787080e+000, + 1.017072e+000, + -1.042529e+000, + 4.110823e-002, + -4.000629e+000, + 4.362364e+000, + 1.090540e+000, + -1.338674e+000, + 8.246964e-001, + 1.095249e+001, + 2.912211e-001, + -1.061598e+000, + -2.096143e-001, + 3.803155e+000, + -7.977069e+000, + -3.637880e+000, + 3.707671e+000, + -1.903128e-001, + -3.397953e+000, + 9.971500e-001, + -1.073560e+000, + -2.077964e-001, + 1.492052e+000, + 1.626322e+001, + -5.015304e+000, + -4.059889e-001, + 2.659782e-001, + 6.395380e-001, + 5.634436e-001, + // albedo 0, turbidity 4 + -1.172794e+000, + -2.111186e-001, + -1.360013e+000, + 1.604080e+000, + -8.473723e-002, + 7.217312e-001, + 1.548030e-001, + 4.257010e+000, + 6.328974e-001, + -1.238374e+000, + -2.670827e-001, + 3.247678e-001, + 5.466311e-001, + -7.425952e-001, + 5.276440e-001, + 2.678026e-002, + 5.484169e+000, + 6.814734e-001, + -1.176923e+000, + -2.574586e-001, + 2.304045e+000, + -2.797678e+000, + 1.464405e+000, + 1.998552e+000, + 2.550559e-001, + -4.199772e+000, + 7.544892e-001, + -1.003284e+000, + 1.943984e-002, + -2.145066e+000, + 1.030924e+001, + -1.525413e+001, + -2.023010e+000, + 5.448699e-001, + 8.159497e+000, + 5.539148e-001, + -1.060017e+000, + -2.037206e-001, + 2.483018e+000, + -4.595459e+000, + 6.526991e+000, + 4.031804e+000, + 1.206513e-001, + -2.586527e+000, + 7.875752e-001, + -1.081141e+000, + -2.123302e-001, + 1.092275e+000, + 2.683841e+000, + -4.166938e+000, + -1.396582e+000, + 4.371205e-001, + 1.030233e+000, + 6.664862e-001, + // albedo 0, turbidity 5 + -1.222392e+000, + -2.651924e-001, + -4.625037e-001, + 3.521964e-001, + 2.148855e-002, + 5.078494e-001, + 1.791590e-001, + 3.852516e+000, + 5.998216e-001, + -1.424610e+000, + -4.710155e-001, + -1.826815e-001, + 1.786277e+000, + -1.952442e+000, + 5.277612e-001, + -1.773629e-002, + 2.415874e+000, + 6.701272e-001, + -1.130655e+000, + -1.358609e-001, + 9.171203e-001, + -4.660394e+000, + 6.251162e+000, + 1.904529e+000, + 2.639668e-001, + 1.856130e+000, + 8.228440e-001, + -9.739015e-001, + -6.674749e-002, + -4.768897e-001, + 1.248589e+001, + -1.994688e+001, + -2.353043e+000, + 5.885575e-001, + 1.287251e+000, + 4.830135e-001, + -1.082178e+000, + -1.974495e-001, + 1.050245e+000, + -4.792855e+000, + 8.663406e+000, + 3.246969e+000, + 1.556731e-001, + 8.117442e-001, + 8.050376e-001, + -1.063354e+000, + -1.727108e-001, + 9.681592e-001, + 2.736077e+000, + -4.969269e+000, + -8.360570e-001, + 5.994612e-001, + 1.024039e+000, + 6.786935e-001, + // albedo 0, turbidity 6 + -1.261936e+000, + -3.053676e-001, + -4.262222e-001, + 4.000196e-001, + -2.059388e-002, + 4.721802e-001, + 1.480028e-001, + 3.505343e+000, + 6.121337e-001, + -1.681088e+000, + -6.971919e-001, + -1.105652e-001, + 7.437426e-001, + -6.594399e-001, + 2.254221e-001, + 8.710195e-002, + 1.263913e+000, + 5.681865e-001, + -9.453001e-001, + 3.460388e-002, + 6.067038e-001, + -1.985128e+000, + 3.457236e+000, + 2.655483e+000, + -1.162354e-002, + 3.304716e+000, + 1.001950e+000, + -1.086609e+000, + -2.029011e-001, + -6.399170e-001, + 6.926885e+000, + -1.512189e+001, + -3.793051e+000, + 9.456120e-001, + 2.222222e-001, + 2.893725e-001, + -1.041259e+000, + -1.388790e-001, + 1.147331e+000, + 6.282086e+000, + 3.679836e+000, + 4.398314e+000, + -1.355232e-001, + 1.031134e+000, + 9.273509e-001, + -1.063473e+000, + -1.916051e-001, + 6.556979e-001, + -3.371891e-003, + -3.699664e+000, + -1.926783e+000, + 7.371154e-001, + 1.179975e+000, + 6.367068e-001, + // albedo 0, turbidity 7 + -1.336390e+000, + -3.778927e-001, + -7.259477e-001, + 2.270247e-001, + 4.627513e-001, + 1.366459e-001, + 2.637347e-001, + 3.292059e+000, + 4.998211e-001, + -2.119878e+000, + -1.055472e+000, + 5.422052e-001, + 7.826648e-001, + -1.286065e+000, + 9.517905e-001, + -1.432358e-001, + -2.379816e-001, + 5.910513e-001, + -7.761432e-001, + 2.124336e-001, + -6.845184e-001, + -9.812342e-001, + 4.347257e+000, + 9.671980e-001, + 3.773150e-001, + 5.789529e+000, + 9.646598e-001, + -1.118734e+000, + -3.513815e-001, + 5.500918e-001, + 9.449627e-001, + -1.262070e+001, + -1.825280e+000, + 4.731260e-001, + -3.326892e+000, + 3.568768e-001, + -1.026437e+000, + -8.257946e-002, + 3.221701e-001, + 1.198372e+001, + 1.555130e+000, + 2.560304e+000, + 1.406465e-001, + 2.912858e+000, + 8.643181e-001, + -1.069949e+000, + -2.029607e-001, + 5.825042e-001, + -2.398595e-003, + -3.278335e+000, + -1.349882e+000, + 7.208433e-001, + 8.505164e-001, + 6.625391e-001, + // albedo 0, turbidity 8 + -1.392309e+000, + -4.454945e-001, + -5.664000e-001, + 6.283393e-001, + -3.761727e-001, + 6.949802e-001, + 7.748178e-002, + 3.192797e+000, + 5.968661e-001, + -2.713405e+000, + -1.395112e+000, + 2.029230e-001, + 1.877272e-001, + -3.715859e-001, + -1.652929e-001, + 2.385861e-001, + -4.150768e-001, + 1.375467e-001, + -9.588644e-001, + 2.433900e-002, + -1.527493e+000, + -9.632874e-001, + 5.496269e+000, + 1.094931e+000, + 2.004044e-001, + 6.084554e+000, + 1.369604e+000, + -8.028546e-001, + -2.473563e-001, + 1.617898e+000, + 2.073591e+000, + -1.149446e+001, + -8.394131e-001, + 2.726847e-001, + -4.634538e+000, + 1.367293e-001, + -1.198326e+000, + -1.804865e-001, + -3.565414e-001, + 4.073200e+000, + 1.662086e+000, + 1.239770e+000, + 3.367978e-001, + 2.997402e+000, + 9.360383e-001, + -1.013531e+000, + -1.859060e-001, + 5.799857e-001, + 1.331883e+001, + -4.346873e+000, + -1.113820e+000, + 5.275714e-001, + 8.045177e-001, + 6.496373e-001, + // albedo 0, turbidity 9 + -1.530103e+000, + -6.107468e-001, + -3.841771e-001, + 1.881508e+000, + -1.464807e+000, + 6.654690e-001, + -5.950797e-006, + 2.738912e+000, + 8.101012e-001, + -2.415469e+000, + -1.057499e+000, + -4.161968e-001, + -2.357548e+000, + 6.300296e-001, + 6.224915e-001, + 1.545048e-002, + 2.038561e+000, + -1.339415e-001, + -3.096796e+000, + -1.465688e+000, + -1.199232e+000, + 4.567061e+000, + 3.260980e+000, + -9.794907e-001, + 8.950491e-001, + 2.049235e+000, + 1.331015e+000, + 2.713904e-001, + 2.852852e-001, + 1.202090e+000, + -8.206784e+000, + -5.805762e+000, + 1.804431e+000, + -6.090648e-001, + -1.990902e+000, + 3.288858e-001, + -1.456580e+000, + -3.455960e-001, + -6.409257e-002, + 1.667697e+001, + -2.311094e+000, + -9.771104e-001, + 6.759863e-001, + 1.245136e+000, + 7.911932e-001, + -9.860389e-001, + -2.099564e-001, + 2.946650e-001, + -3.547800e-003, + -2.268313e+000, + -6.205647e-002, + 4.705185e-001, + 8.657995e-001, + 6.856284e-001, + // albedo 0, turbidity 10 + -1.971736e+000, + -9.414047e-001, + -3.400557e-001, + 1.468763e+000, + -1.474284e+000, + 5.501062e-001, + -1.109750e-005, + 2.356370e+000, + 9.001702e-001, + -1.589845e+000, + -7.797079e-001, + -5.582240e-001, + -8.137376e-001, + 5.846617e-001, + 1.129459e-001, + -2.658005e-002, + 2.707248e+000, + -2.112486e-001, + -6.940173e+000, + -2.823963e+000, + -1.620848e+000, + 1.090696e+000, + 2.391730e+000, + 1.370047e+000, + 5.890462e-001, + 1.728400e+000, + 1.331253e+000, + 1.293144e+000, + -1.919778e-003, + 1.644206e+000, + -8.666967e-001, + -7.161953e+000, + -1.385018e+000, + -1.505374e-001, + -1.388643e+000, + 2.530122e-001, + -1.488880e+000, + -2.495496e-001, + -2.377137e-001, + 1.167714e+001, + -8.617124e-001, + 1.053828e+000, + 1.992744e-001, + 3.633564e-001, + 8.553304e-001, + -1.060891e+000, + -4.035829e-001, + 2.823207e-001, + -2.369798e-003, + -1.876577e+000, + -5.950265e-001, + 4.241017e-001, + 3.140802e-001, + 6.631669e-001, + // albedo 1, turbidity 1 + -1.101204e+000, + -1.351353e-001, + -4.030882e+000, + 6.096353e+000, + -1.148599e-001, + 1.606507e+000, + -1.555474e-006, + 4.436084e+000, + 5.973715e-001, + -1.154597e+000, + -1.923378e-001, + 8.512132e-001, + 2.934895e-001, + -6.522777e-002, + 1.389077e-001, + 9.091469e-002, + 3.133307e+000, + 2.108541e-001, + -1.031588e+000, + -1.546804e-001, + 5.266214e+000, + -9.491390e-001, + -7.184867e-001, + 4.875626e+000, + -1.911907e-001, + -2.865642e+000, + 1.087895e+000, + -1.159454e+000, + -9.546699e-002, + -1.508146e+000, + -2.031411e-002, + 1.040653e+000, + -2.333508e+000, + 2.540592e-001, + 8.594981e+000, + 9.316770e-002, + -1.035940e+000, + -2.021151e-001, + 4.719343e+000, + -9.019318e-001, + -7.858046e+000, + 3.901234e+000, + -2.233137e-001, + -4.344739e+000, + 6.550733e-001, + -1.096669e+000, + -1.558196e-001, + 2.057553e+000, + 6.274495e+000, + -2.678352e+000, + -1.814927e+000, + 1.550676e-001, + 1.903276e+000, + 4.998989e-001, + // albedo 1, turbidity 2 + -1.114209e+000, + -1.473531e-001, + -7.602914e+000, + 8.973685e+000, + -4.980074e-002, + 1.289198e+000, + 8.366906e-002, + 4.557987e+000, + 6.118757e-001, + -1.149397e+000, + -1.981628e-001, + 4.914096e+000, + -3.498986e+000, + -6.257090e-002, + 1.667401e-001, + 1.048980e-001, + 2.284689e+000, + 5.935965e-001, + -1.056121e+000, + -1.456172e-001, + 4.272656e-001, + 2.912649e+000, + -5.501745e-001, + 4.406542e+000, + -1.387680e-001, + 1.245555e+000, + 9.733011e-001, + -1.125047e+000, + -4.003662e-002, + 1.058457e+000, + -3.462236e+000, + 4.395278e-001, + -2.395805e+000, + 5.177589e-001, + 4.866247e+000, + 4.253189e-001, + -1.051444e+000, + -2.804541e-001, + 3.364668e+000, + 3.293787e+000, + -1.015741e+001, + 3.807407e+000, + -3.592377e-001, + -3.367415e+000, + 7.900825e-001, + -1.093847e+000, + -1.436965e-001, + 2.384780e+000, + 5.787070e+000, + -2.445987e+000, + -1.311171e+000, + 2.326563e-001, + 1.158439e+000, + 5.555416e-001, + // albedo 1, turbidity 3 + -1.134824e+000, + -1.680468e-001, + -3.325620e+000, + 4.458596e+000, + -1.135063e-001, + 1.104500e+000, + 7.794544e-002, + 4.609952e+000, + 6.854854e-001, + -1.143017e+000, + -1.565926e-001, + 3.014687e-001, + -1.763027e-001, + -3.557925e-002, + -2.342406e-001, + 2.528705e-001, + 5.884085e+000, + 4.750602e-001, + -1.136801e+000, + -2.907502e-001, + 3.682423e+000, + -4.061202e-001, + -8.728159e-001, + 4.001510e+000, + -1.522202e-001, + -5.528713e+000, + 1.044847e+000, + -1.063652e+000, + 7.808107e-002, + -1.983678e+000, + 3.648078e-001, + 2.102276e+000, + -3.065050e+000, + 8.431951e-001, + 1.038830e+001, + 2.662834e-001, + -1.061015e+000, + -2.859814e-001, + 4.223615e+000, + -2.290138e+000, + -8.314010e+000, + 4.405718e+000, + -4.613627e-001, + -4.502910e+000, + 1.008383e+000, + -1.106302e+000, + -1.697123e-001, + 2.087196e+000, + 8.238929e+000, + -2.992416e+000, + -1.821776e+000, + 3.434859e-001, + 7.755179e-001, + 5.341190e-001, + // albedo 1, turbidity 4 + -1.171110e+000, + -2.106304e-001, + -1.614361e+000, + 2.378103e+000, + -1.625969e-001, + 8.504483e-001, + 1.059312e-001, + 4.046256e+000, + 6.618227e-001, + -1.200480e+000, + -2.235733e-001, + 1.014390e+000, + -1.174074e+000, + -4.440180e-001, + 2.262406e-001, + 1.665868e-001, + 5.461829e+000, + 5.676310e-001, + -1.223587e+000, + -3.502622e-001, + 1.699106e+000, + 6.724266e-001, + 1.268567e+000, + 2.135102e+000, + 8.039374e-004, + -5.221111e+000, + 9.445690e-001, + -9.452673e-001, + 1.468459e-001, + -1.335034e+000, + 4.346628e+000, + -1.285652e+001, + -1.807046e+000, + 8.175243e-001, + 9.301065e+000, + 3.656798e-001, + -1.134681e+000, + -3.310951e-001, + 3.571244e+000, + -2.208948e+000, + 6.041580e+000, + 3.107577e+000, + -3.112127e-001, + -4.186351e+000, + 9.188333e-001, + -1.083237e+000, + -1.831394e-001, + 2.062654e+000, + 1.385424e+000, + -5.004950e+000, + -1.332669e+000, + 3.627352e-001, + 3.323150e-001, + 6.191181e-001, + // albedo 1, turbidity 5 + -1.211527e+000, + -2.590617e-001, + -1.660874e-001, + 3.627905e-001, + -1.039258e-001, + 4.697924e-001, + 1.671653e-001, + 3.507497e+000, + 6.022506e-001, + -1.433017e+000, + -4.733592e-001, + 1.724445e-001, + 9.953236e-001, + -1.874457e+000, + 4.432099e-001, + 1.715810e-002, + 2.339272e+000, + 6.441470e-001, + -1.084920e+000, + -1.587903e-001, + 8.999585e-001, + -2.537516e+000, + 5.877859e+000, + 2.014554e+000, + 9.689141e-002, + 3.177242e-001, + 9.030399e-001, + -1.008242e+000, + 2.793030e-003, + -3.507469e-001, + 1.028300e+001, + -2.080454e+001, + -2.781026e+000, + 8.995090e-001, + 3.366951e+000, + 3.473867e-001, + -1.103151e+000, + -2.799598e-001, + 2.525791e+000, + -4.255704e+000, + 9.903388e+000, + 3.722668e+000, + -3.603941e-001, + -1.303292e+000, + 9.369454e-001, + -1.102235e+000, + -2.025061e-001, + 2.085660e+000, + 1.686787e+000, + -5.010957e+000, + -1.656458e+000, + 4.584029e-001, + -2.751759e-001, + 6.184162e-001, + // albedo 1, turbidity 6 + -1.256130e+000, + -3.104904e-001, + 1.639350e-001, + 1.315502e-001, + -7.297583e-001, + 4.778480e-001, + 1.259265e-001, + 3.012108e+000, + 6.202728e-001, + -1.620114e+000, + -6.552670e-001, + -2.877157e-001, + 1.094371e+000, + 2.818914e-001, + 3.696830e-001, + 9.428521e-002, + 1.450951e+000, + 5.681308e-001, + -9.686204e-001, + -3.755647e-002, + 1.469980e+000, + -3.103414e+000, + 2.856583e+000, + 1.883209e+000, + -5.746099e-002, + 1.286383e+000, + 1.001751e+000, + -1.089377e+000, + -1.023062e-001, + -1.498891e+000, + 1.066455e+001, + -1.720184e+001, + -2.759314e+000, + 1.061258e+000, + 2.910211e+000, + 2.624701e-001, + -1.044681e+000, + -2.156857e-001, + 3.230136e+000, + -5.863862e-001, + 6.096640e+000, + 3.550019e+000, + -4.255773e-001, + -1.500033e+000, + 9.687696e-001, + -1.133658e+000, + -2.505101e-001, + 1.717840e+000, + 8.480428e-003, + -5.011789e+000, + -1.740989e+000, + 4.983430e-001, + -2.081829e-001, + 6.088641e-001, + // albedo 1, turbidity 7 + -1.335366e+000, + -3.863319e-001, + -5.279971e-001, + 3.638324e-001, + 3.230699e-001, + 8.339707e-002, + 2.483293e-001, + 2.678646e+000, + 4.998346e-001, + -2.004511e+000, + -9.957121e-001, + 1.250807e+000, + 1.625025e-002, + -3.410754e-001, + 7.858244e-001, + -9.506757e-002, + 2.651876e-002, + 5.788643e-001, + -8.714157e-001, + 1.192051e-001, + -8.486879e-001, + -3.702497e-001, + 1.818277e+000, + 1.103427e+000, + 2.454866e-001, + 3.841575e+000, + 9.847350e-001, + -1.042618e+000, + -2.285793e-001, + 3.620175e-001, + 2.983368e+000, + -9.776844e+000, + -1.971587e+000, + 6.691674e-001, + -7.901947e-001, + 3.213200e-001, + -1.099112e+000, + -1.869868e-001, + 2.044065e+000, + 2.062964e+000, + 1.265668e+000, + 2.710130e+000, + -1.099443e-001, + 2.179353e-001, + 9.024108e-001, + -1.106985e+000, + -2.396881e-001, + 1.809807e+000, + 8.523319e+000, + -5.011788e+000, + -1.590086e+000, + 3.248449e-001, + -1.003187e-001, + 6.550606e-001, + // albedo 1, turbidity 8 + -1.421285e+000, + -4.767024e-001, + -3.885004e-001, + 8.274590e-001, + -3.644229e-001, + 6.999513e-001, + 5.196710e-002, + 2.578431e+000, + 6.246310e-001, + -2.611217e+000, + -1.398846e+000, + 4.527425e-001, + -5.932142e-001, + 2.224617e-001, + -5.593581e-001, + 3.389633e-001, + -7.767112e-001, + 6.536004e-002, + -9.881543e-001, + 4.684782e-002, + -8.616613e-001, + 8.799807e-001, + 4.003130e+000, + 1.739543e+000, + -8.098378e-002, + 5.524802e+000, + 1.499673e+000, + -7.544759e-001, + -2.314808e-001, + 8.125770e-001, + -7.724135e-001, + -9.577645e+000, + -1.629433e+000, + 6.790832e-001, + -4.193895e+000, + -2.526624e-002, + -1.273719e+000, + -2.187030e-001, + 1.401798e+000, + 5.231832e+000, + 7.405093e-001, + 1.775166e+000, + -7.269476e-002, + 1.996087e+000, + 1.057450e+000, + -1.046864e+000, + -2.247559e-001, + 1.679449e+000, + 1.140057e+001, + -4.948829e+000, + -1.182664e+000, + 3.241038e-001, + -2.470012e-001, + 6.115900e-001, + // albedo 1, turbidity 9 + -1.514607e+000, + -5.985430e-001, + -1.877610e-001, + 1.756930e+000, + -1.314206e+000, + 6.115810e-001, + -5.970460e-006, + 2.412975e+000, + 8.124304e-001, + -2.308414e+000, + -1.083797e+000, + -1.179959e-001, + -1.728246e+000, + 7.784742e-001, + 5.494505e-001, + 6.203168e-003, + 9.326251e-001, + -1.419518e-001, + -3.230837e+000, + -1.438670e+000, + -9.868286e-001, + 2.974393e+000, + 1.949339e+000, + -6.337857e-001, + 8.160271e-001, + 3.278606e+000, + 1.354373e+000, + 5.149378e-001, + 2.754789e-001, + 1.040965e+000, + -4.501186e+000, + -3.399057e+000, + 9.661861e-001, + -4.736173e-001, + -4.037574e+000, + 2.794847e-001, + -1.621870e+000, + -3.192763e-001, + 8.786242e-001, + 9.785565e+000, + -2.727652e+000, + 1.903691e-002, + 5.521261e-001, + 2.138764e+000, + 8.419871e-001, + -9.951701e-001, + -2.550607e-001, + 1.498952e+000, + -2.737197e-003, + -3.101832e+000, + -5.921329e-001, + 2.864422e-001, + -4.405218e-001, + 6.631410e-001, + // albedo 1, turbidity 10 + -1.902954e+000, + -9.056918e-001, + -2.069570e-001, + 1.191499e+000, + -1.092577e+000, + 5.849556e-001, + -9.649602e-006, + 2.048407e+000, + 9.001527e-001, + -1.271627e+000, + -7.193923e-001, + -1.136606e-002, + -1.167951e-001, + 3.286175e-003, + -5.262827e-002, + -2.473874e-002, + 1.716125e+000, + -2.187133e-001, + -7.647175e+000, + -3.114129e+000, + -1.490128e+000, + -5.266488e-001, + 3.063090e+000, + 1.474262e+000, + 5.481458e-001, + 2.052174e+000, + 1.353089e+000, + 2.191403e+000, + 3.421120e-001, + 1.446510e+000, + 2.170943e+000, + -7.768187e+000, + -1.471207e+000, + -1.456708e-001, + -1.753574e+000, + 2.310576e-001, + -1.932296e+000, + -3.814739e-001, + 6.245422e-001, + 6.748294e+000, + -3.060171e-001, + 1.067747e+000, + 2.500671e-001, + -1.252596e-001, + 8.614611e-001, + -9.471101e-001, + -4.052640e-001, + 1.300174e+000, + -3.951536e-003, + -1.908284e+000, + -5.385721e-001, + 2.133578e-001, + -6.250292e-001, + 6.658012e-001, +}; + +double datasetRGBRad1[] = +{ + // albedo 0, turbidity 1 + 1.962684e+000, + 1.159831e+000, + 4.450588e+000, + 5.079633e+000, + 4.437388e+000, + 4.324573e+000, + // albedo 0, turbidity 2 + 1.946487e+000, + 1.287515e+000, + 3.703696e+000, + 8.782833e+000, + 3.440437e+000, + 5.160333e+000, + // albedo 0, turbidity 3 + 1.882170e+000, + 1.335878e+000, + 2.648641e+000, + 1.358368e+001, + 3.105473e+000, + 5.907387e+000, + // albedo 0, turbidity 4 + 1.738159e+000, + 1.624289e+000, + -8.786695e-003, + 2.118253e+001, + 2.770255e+000, + 7.055672e+000, + // albedo 0, turbidity 5 + 1.571896e+000, + 2.301786e+000, + -4.028545e+000, + 2.966806e+001, + 1.630876e+000, + 8.711031e+000, + // albedo 0, turbidity 6 + 1.475048e+000, + 2.679086e+000, + -6.311315e+000, + 3.377896e+001, + 2.140975e+000, + 9.385283e+000, + // albedo 0, turbidity 7 + 1.326174e+000, + 3.378759e+000, + -9.831444e+000, + 3.942061e+001, + 2.852702e+000, + 1.082542e+001, + // albedo 0, turbidity 8 + 1.153344e+000, + 3.967771e+000, + -1.265181e+001, + 4.195016e+001, + 7.468239e+000, + 1.221350e+001, + // albedo 0, turbidity 9 + 9.746081e-001, + 4.051626e+000, + -1.298454e+001, + 3.754964e+001, + 1.749232e+001, + 1.420619e+001, + // albedo 0, turbidity 10 + 8.448016e-001, + 3.181809e+000, + -8.757338e+000, + 2.197962e+001, + 3.524033e+001, + 1.639549e+001, + // albedo 1, turbidity 1 + 2.029623e+000, + 1.364434e+000, + 4.201529e+000, + 5.415099e+000, + 9.825839e+000, + 1.063328e+001, + // albedo 1, turbidity 2 + 2.023126e+000, + 1.494728e+000, + 3.420413e+000, + 9.072178e+000, + 9.205157e+000, + 1.186639e+001, + // albedo 1, turbidity 3 + 1.956307e+000, + 1.648665e+000, + 2.039712e+000, + 1.430239e+001, + 9.039526e+000, + 1.330453e+001, + // albedo 1, turbidity 4 + 1.825053e+000, + 1.985022e+000, + -8.036307e-001, + 2.202493e+001, + 9.415361e+000, + 1.517659e+001, + // albedo 1, turbidity 5 + 1.650367e+000, + 2.593201e+000, + -4.469328e+000, + 2.969817e+001, + 9.410977e+000, + 1.744850e+001, + // albedo 1, turbidity 6 + 1.555202e+000, + 2.962925e+000, + -6.608170e+000, + 3.329887e+001, + 1.064559e+001, + 1.850816e+001, + // albedo 1, turbidity 7 + 1.412478e+000, + 3.439403e+000, + -9.196616e+000, + 3.685077e+001, + 1.345341e+001, + 2.003128e+001, + // albedo 1, turbidity 8 + 1.252990e+000, + 3.820805e+000, + -1.115338e+001, + 3.721593e+001, + 2.014916e+001, + 2.182320e+001, + // albedo 1, turbidity 9 + 1.091952e+000, + 3.663027e+000, + -1.031330e+001, + 2.978985e+001, + 3.296835e+001, + 2.375450e+001, + // albedo 1, turbidity 10 + 9.501691e-001, + 2.664579e+000, + -5.545167e+000, + 1.281159e+001, + 5.154768e+001, + 2.574284e+001, +}; + +double datasetRGB2[] = +{ + // albedo 0, turbidity 1 + -1.140530e+000, + -1.982747e-001, + -7.512730e+000, + 8.403899e+000, + -5.699038e-002, + 9.015907e-001, + 3.392161e-002, + 4.772522e+000, + 5.111184e-001, + -1.165117e+000, + -1.852955e-001, + 2.963684e+000, + -2.262274e+000, + -1.571683e-001, + 6.339974e-001, + 4.977879e-002, + 7.243307e+000, + 4.220053e-001, + -1.169936e+000, + -3.357429e-001, + 1.911291e+000, + -2.391074e-001, + -4.791643e-001, + 1.446113e+000, + -9.178108e-002, + -4.700239e+000, + 8.096219e-001, + -1.060246e+000, + -1.051633e-001, + 5.013829e-001, + 2.832309e+000, + -3.707855e-001, + 1.523131e+000, + 9.163749e-002, + 5.604183e+000, + 7.208566e-001, + -1.089753e+000, + -2.382167e-001, + 2.360312e+000, + -5.902562e+000, + -8.799894e+000, + 1.377692e+000, + -6.131633e-002, + -1.415472e+000, + 6.124057e-001, + -1.075481e+000, + -1.242391e-001, + 1.425781e+000, + 8.810319e+000, + -2.922646e+000, + 1.486520e+000, + 3.270580e-002, + 3.889783e+000, + 4.999482e-001, + // albedo 0, turbidity 2 + -1.149342e+000, + -2.076337e-001, + -7.446587e+000, + 8.014559e+000, + -4.866227e-002, + 8.203043e-001, + 6.386483e-002, + 4.894198e+000, + 5.452051e-001, + -1.120531e+000, + -1.513311e-001, + 2.735504e+000, + -2.417591e+000, + -1.361114e-001, + 4.296342e-001, + 9.427488e-002, + 8.171403e+000, + 4.102448e-001, + -1.226964e+000, + -3.516378e-001, + 1.308298e+000, + -5.097487e-002, + -4.846783e-001, + 1.654619e+000, + -1.134940e-001, + -3.347854e+000, + 1.131147e+000, + -9.664377e-001, + 2.767589e-002, + 1.658235e-001, + 2.407439e+000, + -1.300304e-001, + 9.170958e-001, + 2.742895e-001, + 6.642633e+000, + 2.550064e-001, + -1.153358e+000, + -3.126223e-001, + 2.078934e+000, + -5.857733e+000, + -8.659848e+000, + 1.758505e+000, + -9.616094e-002, + -1.230863e+000, + 9.663832e-001, + -1.053850e+000, + -1.330743e-001, + 1.481738e+000, + 1.049485e+001, + -3.528854e+000, + 9.142363e-001, + 1.244880e-001, + 2.644615e+000, + 5.001048e-001, + // albedo 0, turbidity 3 + -1.173687e+000, + -2.360362e-001, + -3.741454e+000, + 4.088507e+000, + -7.528205e-002, + 6.645237e-001, + 7.718265e-002, + 4.651220e+000, + 5.586318e-001, + -1.213757e+000, + -2.589561e-001, + 7.132551e-001, + -4.259327e-001, + -1.980821e-001, + 3.627815e-001, + 4.666560e-002, + 5.807984e+000, + 5.847377e-001, + -1.108794e+000, + -2.259870e-001, + 1.574179e+000, + -3.753731e-001, + -5.984743e-001, + 1.659414e+000, + -1.681021e-002, + 6.785219e-001, + 8.647325e-001, + -1.060896e+000, + -1.346690e-002, + -7.529656e-001, + 1.711319e+000, + -9.792435e-001, + 2.022433e-001, + 3.826487e-001, + 5.725157e+000, + 5.290714e-001, + -1.085145e+000, + -2.840715e-001, + 2.088029e+000, + -4.935097e+000, + -9.056542e+000, + 1.976149e+000, + -3.912485e-002, + -8.636064e-001, + 7.452125e-001, + -1.077983e+000, + -1.416633e-001, + 1.100848e+000, + 1.015875e+001, + -2.943712e+000, + 5.255135e-001, + 2.164224e-001, + 2.941143e+000, + 6.699937e-001, + // albedo 0, turbidity 4 + -1.223293e+000, + -2.867444e-001, + -1.624136e+000, + 1.668299e+000, + -9.537589e-002, + 5.015947e-001, + 1.130741e-001, + 4.244812e+000, + 5.082152e-001, + -1.325342e+000, + -4.280991e-001, + 4.705490e-001, + 6.926592e-002, + -4.572587e-001, + 5.344144e-001, + -2.554192e-002, + 3.093939e+000, + 6.639401e-001, + -1.113581e+000, + -1.192133e-001, + 4.011536e-001, + 7.011889e-001, + 2.052842e-001, + 9.880724e-001, + 1.807533e-002, + 4.690160e+000, + 8.576240e-001, + -1.016063e+000, + -1.038138e-001, + -2.280391e-001, + 7.898918e-001, + -1.127333e+001, + 2.074545e-001, + 5.388182e-001, + 1.364263e+000, + 4.660455e-001, + -1.099582e+000, + -2.228607e-001, + 1.332648e+000, + 5.135188e+000, + 1.653152e+000, + 1.417020e+000, + -1.087532e-001, + 1.809275e+000, + 8.080874e-001, + -1.064357e+000, + -1.520775e-001, + 8.207368e-001, + -1.323565e-003, + -5.009523e+000, + 3.946298e-001, + 4.337902e-001, + 2.593198e+000, + 6.719172e-001, + // albedo 0, turbidity 5 + -1.278702e+000, + -3.512866e-001, + -4.511055e-001, + 3.895760e-001, + -2.429672e-001, + 4.270577e-001, + 1.135348e-001, + 3.719130e+000, + 4.998867e-001, + -1.580069e+000, + -7.095475e-001, + -3.198904e-001, + 1.715748e+000, + -1.185915e+000, + 4.523161e-001, + -1.026159e-002, + 7.927188e-001, + 5.538350e-001, + -9.474023e-001, + 1.173703e-001, + 4.881381e-001, + -2.618684e+000, + 3.251661e+000, + 1.213931e+000, + -1.736274e-002, + 8.000768e+000, + 1.025998e+000, + -1.129091e+000, + -3.287694e-001, + -3.524077e-001, + 3.352892e+000, + -1.416073e+001, + -8.485617e-001, + 6.560766e-001, + -2.820937e+000, + 3.111303e-001, + -1.030884e+000, + -1.137581e-001, + 1.109855e+000, + 8.082276e+000, + 1.519214e+000, + 2.112433e+000, + -1.592299e-001, + 3.675905e+000, + 8.703367e-001, + -1.075192e+000, + -1.627166e-001, + 3.514910e-001, + 1.168164e+000, + -4.255822e+000, + -6.015348e-001, + 6.265776e-001, + 2.884818e+000, + 6.548384e-001, + // albedo 0, turbidity 6 + -1.316017e+000, + -3.889652e-001, + -5.030854e-001, + 4.488704e-001, + -3.186800e-001, + 4.570763e-001, + 8.909201e-002, + 3.659274e+000, + 5.011746e-001, + -1.731876e+000, + -8.493806e-001, + 1.194871e-001, + 2.002781e+000, + -2.006547e+000, + 4.872233e-001, + -2.854606e-002, + 2.662137e-001, + 4.611629e-001, + -9.273680e-001, + 1.380954e-001, + -3.302179e-001, + -3.553265e+000, + 4.633345e+000, + 9.696729e-001, + 8.799775e-002, + 8.291129e+000, + 1.094451e+000, + -1.099377e+000, + -3.325392e-001, + 2.501063e-001, + 2.613712e+000, + -1.328142e+001, + -5.579527e-001, + 4.992081e-001, + -3.504402e+000, + 3.022924e-001, + -1.048420e+000, + -1.227773e-001, + 5.845373e-001, + 1.105869e+001, + 3.813151e-002, + 1.330409e+000, + 1.978131e-002, + 3.959430e+000, + 8.396439e-001, + -1.063233e+000, + -1.560639e-001, + 2.840033e-001, + 8.751565e-001, + -3.411820e+000, + -1.436564e-001, + 5.846580e-001, + 2.899292e+000, + 6.799095e-001, + // albedo 0, turbidity 7 + -1.376715e+000, + -4.541567e-001, + -1.445491e+000, + 1.569898e+000, + -1.390627e-001, + 5.558270e-001, + 4.109877e-002, + 3.349451e+000, + 5.516123e-001, + -1.953391e+000, + -1.035869e+000, + 1.690563e+000, + -1.964690e-001, + -7.787096e-001, + 5.799605e-001, + 2.945626e-002, + 4.217906e-002, + 2.451373e-001, + -1.012422e+000, + 7.136451e-002, + -1.862534e+000, + -7.228653e-001, + 1.947997e-001, + 2.091805e-001, + 6.399233e-002, + 7.928994e+000, + 1.290733e+000, + -9.706708e-001, + -2.880950e-001, + 1.107797e+000, + -2.731734e+000, + -8.445995e+000, + 4.296774e-001, + 5.117648e-001, + -3.824277e+000, + 1.761207e-001, + -1.110611e+000, + -1.789409e-001, + 2.108488e-001, + 2.071430e+001, + -1.763174e+000, + 9.554695e-002, + -2.943103e-002, + 3.422079e+000, + 8.815496e-001, + -1.048334e+000, + -1.614087e-001, + 2.475184e-001, + 2.146938e-002, + -2.983901e+000, + 2.538224e-001, + 5.601370e-001, + 2.461925e+000, + 6.777394e-001, + // albedo 0, turbidity 8 + -1.393719e+000, + -5.002724e-001, + -2.408940e+000, + 2.680983e+000, + -1.362825e-001, + 7.395067e-001, + -3.300343e-006, + 3.260889e+000, + 8.132057e-001, + -2.128663e+000, + -1.151182e+000, + 2.923026e+000, + -1.931838e+000, + -4.426170e-001, + 2.309983e-001, + -5.485890e-003, + 3.279529e-001, + -2.229467e-001, + -1.618022e+000, + -3.766490e-001, + -3.163544e+000, + 1.611608e+000, + -3.967476e-001, + 3.933680e-001, + 3.006742e-001, + 6.835177e+000, + 1.613765e+000, + -5.669064e-001, + -1.481749e-001, + 2.071817e+000, + -8.157422e+000, + -5.988088e+000, + 2.387202e-001, + 1.447191e-001, + -4.296385e+000, + 5.011258e-002, + -1.241724e+000, + -2.519348e-001, + -1.908609e-001, + 2.952235e+001, + -3.333660e+000, + -1.837651e-002, + 1.022249e-001, + 2.929320e+000, + 8.867262e-001, + -1.021670e+000, + -1.667327e-001, + 1.789771e-001, + -2.178108e-003, + -2.641572e+000, + -5.641484e-002, + 5.303758e-001, + 2.138196e+000, + 6.780350e-001, + // albedo 0, turbidity 9 + -1.669332e+000, + -7.588708e-001, + -2.993557e+000, + 3.178760e+000, + -8.066442e-002, + 6.544672e-001, + -8.089880e-006, + 2.628924e+000, + 9.001272e-001, + -1.755806e+000, + -8.735348e-001, + 3.258881e+000, + -2.504785e+000, + -3.300791e-001, + 1.180565e-001, + -9.315982e-003, + 1.785154e+000, + -3.205824e-001, + -3.720277e+000, + -1.733350e+000, + -3.332272e+000, + 1.515869e+000, + 1.734218e-001, + 8.011956e-001, + 1.995440e-001, + 3.817666e+000, + 1.638502e+000, + 4.724641e-001, + 3.209828e-001, + 2.051443e+000, + -5.105574e+000, + -6.509139e+000, + -4.232041e-001, + 2.598931e-001, + -2.151756e+000, + -3.493910e-003, + -1.525600e+000, + -4.897606e-001, + -9.891121e-002, + 2.346818e+001, + -2.278152e+000, + 1.681219e-001, + -4.469389e-002, + 1.051000e+000, + 9.294666e-001, + -9.908649e-001, + -2.008182e-001, + 1.605143e-001, + -2.463113e-003, + -2.477349e+000, + -1.218647e-001, + 4.750121e-001, + 1.460813e+000, + 6.661364e-001, + // albedo 0, turbidity 10 + -2.122119e+000, + -1.125475e+000, + -3.066599e+000, + 3.145078e+000, + -5.411593e-002, + 5.133628e-001, + -7.823408e-006, + 2.268448e+000, + 9.001416e-001, + -1.528158e+000, + -9.370249e-001, + 2.567559e+000, + -1.591439e+000, + -3.634460e-001, + 1.763256e-001, + 1.119624e-003, + 1.811848e+000, + -2.637929e-001, + -6.524387e+000, + -2.673507e+000, + -2.940472e+000, + -6.025609e-001, + 7.852067e-001, + 1.073499e+000, + -3.540435e-002, + 3.517416e+000, + 1.490466e+000, + 8.886026e-001, + -9.681828e-002, + 1.430554e+000, + 4.993717e+000, + -6.071355e+000, + -6.053986e-001, + 5.092997e-001, + -1.273010e+000, + 7.491329e-002, + -1.481997e+000, + -5.897282e-001, + 2.659264e-001, + 1.267239e+000, + -5.741291e-001, + 5.983011e-002, + -2.217312e-001, + -3.016452e-001, + 9.260830e-001, + -1.010943e+000, + -2.075134e-001, + 5.066749e-002, + 1.470708e+001, + -3.780501e+000, + 7.253223e-002, + 4.045458e-001, + 1.320164e+000, + 6.559925e-001, + // albedo 1, turbidity 1 + -1.129907e+000, + -1.884011e-001, + -8.047670e+000, + 9.035776e+000, + -5.539419e-002, + 8.823349e-001, + 3.197135e-002, + 4.839388e+000, + 5.042822e-001, + -1.133821e+000, + -1.510781e-001, + 3.362822e+000, + -2.453381e+000, + -1.463925e-001, + 4.728708e-001, + 5.958140e-002, + 7.636300e+000, + 4.805162e-001, + -1.176518e+000, + -3.549902e-001, + 1.729044e+000, + -2.160966e-001, + -5.075865e-001, + 1.675584e+000, + -8.906902e-002, + -5.386842e+000, + 5.452218e-001, + -1.043563e+000, + -7.520975e-002, + 8.750644e-001, + 2.510518e+000, + 7.584882e-003, + 9.361250e-001, + 7.889083e-002, + 6.066644e+000, + 5.813108e-001, + -1.081304e+000, + -2.222253e-001, + 2.517638e+000, + -4.453820e+000, + -8.663691e+000, + 8.662558e-001, + -4.802657e-002, + -8.965449e-001, + 4.886656e-001, + -1.083774e+000, + -1.375469e-001, + 1.685818e+000, + 5.631120e+000, + -3.100752e+000, + 4.045941e-001, + 2.346895e-002, + 3.390321e+000, + 5.008309e-001, + // albedo 1, turbidity 2 + -1.143158e+000, + -2.058334e-001, + -9.660198e+000, + 1.062394e+001, + -4.434119e-002, + 8.607615e-001, + 3.177325e-002, + 4.416481e+000, + 5.918162e-001, + -1.146773e+000, + -1.727385e-001, + 4.626048e+000, + -4.684602e+000, + -8.307137e-002, + 1.619616e-001, + 1.484866e-001, + 7.572868e+000, + 2.681126e-001, + -1.151324e+000, + -3.099303e-001, + 4.125596e-001, + 2.340752e+000, + -4.214444e-001, + 1.987375e+000, + -1.913410e-001, + -3.845978e+000, + 1.337311e+000, + -1.034258e+000, + -7.778759e-003, + 7.050094e-001, + -8.036369e-001, + 3.138570e-001, + 2.469452e-001, + 3.559970e-001, + 7.485917e+000, + 4.790329e-002, + -1.096568e+000, + -2.673169e-001, + 2.575654e+000, + -8.057121e-001, + -8.884928e+000, + 1.416170e+000, + -2.091315e-001, + -1.543494e+000, + 1.065445e+000, + -1.083304e+000, + -1.528265e-001, + 1.697727e+000, + 2.503702e+000, + -2.885296e+000, + -1.298500e-001, + 1.548870e-001, + 2.479652e+000, + 5.066496e-001, + // albedo 1, turbidity 3 + -1.165736e+000, + -2.329945e-001, + -5.967964e+000, + 6.705959e+000, + -5.931355e-002, + 7.485638e-001, + 3.913878e-002, + 4.221591e+000, + 6.183926e-001, + -1.212422e+000, + -2.545910e-001, + 2.418626e+000, + -2.266104e+000, + -1.102014e-001, + 1.363887e-002, + 1.055411e-001, + 5.648062e+000, + 4.557412e-001, + -1.070436e+000, + -2.163341e-001, + 7.098718e-001, + 7.843075e-001, + -4.323930e-001, + 2.109823e+000, + -9.589700e-002, + -1.985193e-001, + 1.060428e+000, + -1.104879e+000, + -3.013622e-002, + 2.976276e-002, + 1.069707e+000, + 1.410000e-001, + -4.880020e-001, + 4.452288e-001, + 6.418590e+000, + 3.195986e-001, + -1.048969e+000, + -2.655317e-001, + 2.689426e+000, + -3.941038e+000, + -9.506461e+000, + 1.837119e+000, + -1.892124e-001, + -1.562146e+000, + 9.043414e-001, + -1.106145e+000, + -1.601642e-001, + 1.544544e+000, + 7.388492e+000, + -2.924600e+000, + -4.328453e-001, + 1.763161e-001, + 2.523111e+000, + 5.851902e-001, + // albedo 1, turbidity 4 + -1.203666e+000, + -2.776587e-001, + -2.084286e+000, + 2.450840e+000, + -8.746613e-002, + 5.258507e-001, + 7.983316e-002, + 3.860055e+000, + 5.486167e-001, + -1.340448e+000, + -4.230590e-001, + 3.462849e-001, + 4.707607e-001, + -2.512626e-001, + 1.530746e-001, + 2.724218e-002, + 3.035216e+000, + 5.876133e-001, + -1.014554e+000, + -1.168790e-001, + 9.477794e-001, + -1.061218e+000, + -4.196730e-001, + 2.058832e+000, + -5.989624e-002, + 3.058168e+000, + 9.763861e-001, + -1.137388e+000, + -9.854030e-002, + -2.984893e-001, + 3.647820e+000, + -6.585571e-001, + -1.479180e+000, + 6.102932e-001, + 3.265914e+000, + 3.480333e-001, + -1.021816e+000, + -2.344957e-001, + 2.463671e+000, + -7.240685e+000, + -8.862697e+000, + 2.514058e+000, + -2.122768e-001, + -3.313968e-002, + 9.028136e-001, + -1.126581e+000, + -1.874347e-001, + 1.454154e+000, + 1.034398e+001, + -3.237393e+000, + -8.654927e-001, + 2.457248e-001, + 1.845769e+000, + 6.002482e-001, + // albedo 1, turbidity 5 + -1.263727e+000, + -3.439354e-001, + -1.786388e-001, + 3.980166e-001, + -3.349517e-001, + 3.825166e-001, + 1.029225e-001, + 3.331096e+000, + 4.998955e-001, + -1.530010e+000, + -6.879698e-001, + 2.380415e-001, + 1.608216e+000, + -1.682679e+000, + 3.546360e-001, + -3.915220e-003, + 4.517655e-001, + 5.128605e-001, + -9.685659e-001, + 9.480403e-002, + 6.076844e-002, + -3.217561e+000, + 4.568074e+000, + 1.069299e+000, + 2.083638e-002, + 7.301088e+000, + 1.072165e+000, + -1.113925e+000, + -3.112382e-001, + 3.954133e-001, + 5.105907e+000, + -1.456866e+001, + -4.917378e-001, + 5.289909e-001, + -2.678374e+000, + 3.014709e-001, + -1.046864e+000, + -1.215754e-001, + 1.778308e+000, + 4.661489e+000, + 2.565583e-001, + 1.353680e+000, + -1.175767e-001, + 3.415972e+000, + 8.457746e-001, + -1.104480e+000, + -1.940913e-001, + 1.343668e+000, + -1.759206e-003, + -5.009204e+000, + -4.186951e-001, + 3.125710e-001, + 1.628183e+000, + 6.720408e-001, + // albedo 1, turbidity 6 + -1.286902e+000, + -3.781238e-001, + -8.977253e-002, + 3.545393e-001, + -4.866515e-001, + 3.843664e-001, + 8.281675e-002, + 3.122231e+000, + 5.046991e-001, + -1.712597e+000, + -8.549112e-001, + 4.809286e-001, + 1.515398e+000, + -2.212211e+000, + 2.539029e-001, + 2.335997e-002, + -6.089466e-002, + 4.268444e-001, + -8.807283e-001, + 1.646097e-001, + -4.437898e-001, + -3.188247e+000, + 5.984417e+000, + 1.334779e+000, + -4.026975e-002, + 7.546431e+000, + 1.175751e+000, + -1.147253e+000, + -3.538199e-001, + 6.101836e-001, + 4.437780e+000, + -1.559813e+001, + -1.103222e+000, + 6.242039e-001, + -3.091472e+000, + 2.174290e-001, + -1.038230e+000, + -1.213475e-001, + 1.547505e+000, + 5.893176e+000, + 1.368738e+000, + 1.663127e+000, + -1.377130e-001, + 3.185279e+000, + 8.736453e-001, + -1.101026e+000, + -1.874907e-001, + 1.272667e+000, + 3.596524e+000, + -5.007243e+000, + -6.352483e-001, + 3.048985e-001, + 1.931613e+000, + 6.788844e-001, + // albedo 1, turbidity 7 + -1.342753e+000, + -4.384971e-001, + -1.213491e+000, + 1.621399e+000, + -1.551441e-001, + 5.614218e-001, + 2.591739e-002, + 2.958967e+000, + 5.782132e-001, + -1.937684e+000, + -1.066019e+000, + 1.913336e+000, + -7.347719e-001, + -5.916167e-001, + 1.587590e-001, + 1.092568e-001, + -6.275002e-001, + 1.599071e-001, + -9.302391e-001, + 1.486187e-001, + -1.603835e+000, + 1.783713e-001, + 1.100461e+000, + 1.174181e+000, + -1.602361e-001, + 7.868331e+000, + 1.468971e+000, + -1.053631e+000, + -3.727050e-001, + 1.114117e+000, + -9.603286e-001, + -1.062469e+001, + -1.162140e+000, + 7.952797e-001, + -4.478765e+000, + -4.440862e-002, + -1.083629e+000, + -1.261405e-001, + 1.229344e+000, + 1.127825e+001, + 1.319010e-001, + 1.624729e+000, + -2.825898e-001, + 3.661082e+000, + 1.036911e+000, + -1.093950e+000, + -2.067455e-001, + 1.258035e+000, + 7.548645e+000, + -4.598387e+000, + -8.944932e-001, + 3.292634e-001, + 1.311304e+000, + 6.291871e-001, + // albedo 1, turbidity 8 + -1.385867e+000, + -5.068139e-001, + -1.486490e+000, + 1.969049e+000, + -1.698025e-001, + 6.629167e-001, + -5.289365e-006, + 2.760315e+000, + 8.644368e-001, + -2.107367e+000, + -1.175639e+000, + 2.313241e+000, + -1.001653e+000, + -4.843139e-001, + 1.124485e-001, + 3.901494e-005, + -3.502469e-001, + -3.204780e-001, + -1.475244e+000, + -2.833055e-001, + -2.085824e+000, + 1.192563e+000, + -7.645200e-001, + 8.380081e-001, + 2.203580e-001, + 7.157885e+000, + 1.753702e+000, + -6.644372e-001, + -2.549735e-001, + 1.600273e+000, + -8.589034e+000, + -6.144718e+000, + -7.599731e-001, + 2.898370e-001, + -5.770923e+000, + -9.656242e-002, + -1.211687e+000, + -1.653494e-001, + 8.393400e-001, + 2.792988e+001, + -3.395461e+000, + 9.933752e-001, + -3.976877e-002, + 3.776659e+000, + 9.546526e-001, + -1.063757e+000, + -2.037563e-001, + 1.117207e+000, + -1.252806e-003, + -3.332330e+000, + -6.971409e-001, + 3.388719e-001, + 1.311398e+000, + 6.635171e-001, + // albedo 1, turbidity 9 + -1.678889e+000, + -7.992295e-001, + -2.421687e+000, + 2.871029e+000, + -7.662842e-002, + 6.046208e-001, + -7.598099e-006, + 2.002314e+000, + 9.001307e-001, + -1.692144e+000, + -8.804250e-001, + 3.060895e+000, + -2.000009e+000, + -3.183563e-001, + 8.385862e-002, + -6.326713e-003, + 1.206639e+000, + -3.369967e-001, + -3.676795e+000, + -1.719207e+000, + -2.534697e+000, + 1.005285e+000, + 1.550407e-001, + 1.072910e+000, + 1.318094e-001, + 3.717018e+000, + 1.689191e+000, + 5.424542e-001, + 3.263528e-001, + 1.551055e+000, + -3.841058e+000, + -6.598996e+000, + -1.201779e+000, + 3.530669e-001, + -2.542945e+000, + -6.482523e-002, + -1.553849e+000, + -4.576860e-001, + 9.324676e-001, + 1.950982e+001, + -2.344516e+000, + 1.121020e+000, + -1.221537e-001, + 7.285496e-001, + 9.582816e-001, + -1.020650e+000, + -2.215797e-001, + 1.009774e+000, + -2.056855e-003, + -2.740338e+000, + -8.122355e-001, + 3.328967e-001, + 8.982766e-001, + 6.594676e-001, + // albedo 1, turbidity 10 + -2.247360e+000, + -1.221267e+000, + -3.072346e+000, + 3.385139e+000, + -4.387559e-002, + 5.084887e-001, + -7.418833e-006, + 1.750107e+000, + 9.001401e-001, + -1.248499e+000, + -8.442718e-001, + 3.062611e+000, + -2.020314e+000, + -2.815341e-001, + 5.254745e-002, + 3.345008e-003, + 1.433225e+000, + -2.835911e-001, + -7.004119e+000, + -2.927978e+000, + -2.649852e+000, + 7.971894e-001, + 5.466893e-001, + 1.442667e+000, + -6.063912e-002, + 2.806194e+000, + 1.547429e+000, + 1.434882e+000, + 9.114639e-002, + 1.170089e+000, + 3.512808e-002, + -5.861915e+000, + -1.411843e+000, + 5.400486e-001, + -7.746522e-001, + 2.386984e-002, + -1.559053e+000, + -5.502302e-001, + 1.200396e+000, + 1.347741e+001, + -2.344397e+000, + 8.868907e-001, + -3.292661e-001, + -1.362105e+000, + 9.217826e-001, + -1.044436e+000, + -2.360719e-001, + 7.054471e-001, + -2.904518e-003, + -2.092829e+000, + -5.119668e-001, + 4.174861e-001, + 9.687435e-001, + 6.588427e-001, +}; + +double datasetRGBRad2[] = +{ + // albedo 0, turbidity 1 + 1.590330e+000, + 1.355401e+000, + 1.151412e+000, + 1.359116e+001, + 5.857714e+000, + 8.090833e+000, + // albedo 0, turbidity 2 + 1.552540e+000, + 1.510040e+000, + 1.276413e-001, + 1.604643e+001, + 5.912162e+000, + 8.350009e+000, + // albedo 0, turbidity 3 + 1.470871e+000, + 1.880464e+000, + -1.865398e+000, + 2.030808e+001, + 5.471461e+000, + 9.109834e+000, + // albedo 0, turbidity 4 + 1.356563e+000, + 2.373866e+000, + -4.653245e+000, + 2.570922e+001, + 5.686009e+000, + 1.009480e+001, + // albedo 0, turbidity 5 + 1.244232e+000, + 2.851519e+000, + -7.130942e+000, + 2.993449e+001, + 6.382120e+000, + 1.114578e+001, + // albedo 0, turbidity 6 + 1.173693e+000, + 3.120604e+000, + -8.491886e+000, + 3.187393e+001, + 7.290615e+000, + 1.180066e+001, + // albedo 0, turbidity 7 + 1.091845e+000, + 3.368888e+000, + -9.722083e+000, + 3.268508e+001, + 1.032424e+001, + 1.236508e+001, + // albedo 0, turbidity 8 + 9.858985e-001, + 3.500541e+000, + -1.026328e+001, + 3.092956e+001, + 1.610881e+001, + 1.331222e+001, + // albedo 0, turbidity 9 + 8.864993e-001, + 3.172888e+000, + -8.687550e+000, + 2.362161e+001, + 2.621851e+001, + 1.474967e+001, + // albedo 0, turbidity 10 + 7.946973e-001, + 2.189355e+000, + -4.207953e+000, + 9.399091e+000, + 4.062849e+001, + 1.681753e+001, + // albedo 1, turbidity 1 + 1.711696e+000, + 1.657311e+000, + 9.328021e-001, + 1.317880e+001, + 1.506751e+001, + 1.863556e+001, + // albedo 1, turbidity 2 + 1.666968e+000, + 1.849993e+000, + -2.088601e-001, + 1.586653e+001, + 1.486880e+001, + 1.940719e+001, + // albedo 1, turbidity 3 + 1.584846e+000, + 2.170022e+000, + -2.019597e+000, + 1.970826e+001, + 1.490684e+001, + 2.045055e+001, + // albedo 1, turbidity 4 + 1.469412e+000, + 2.524017e+000, + -4.197267e+000, + 2.365249e+001, + 1.664588e+001, + 2.134477e+001, + // albedo 1, turbidity 5 + 1.369714e+000, + 2.843548e+000, + -6.059031e+000, + 2.634993e+001, + 1.881361e+001, + 2.232186e+001, + // albedo 1, turbidity 6 + 1.310477e+000, + 2.984444e+000, + -6.831686e+000, + 2.682340e+001, + 2.123267e+001, + 2.259755e+001, + // albedo 1, turbidity 7 + 1.222552e+000, + 3.176523e+000, + -7.731496e+000, + 2.671760e+001, + 2.484358e+001, + 2.336863e+001, + // albedo 1, turbidity 8 + 1.115781e+000, + 3.130635e+000, + -7.581744e+000, + 2.336531e+001, + 3.171048e+001, + 2.413859e+001, + // albedo 1, turbidity 9 + 1.013181e+000, + 2.699342e+000, + -5.602709e+000, + 1.500158e+001, + 4.217613e+001, + 2.515957e+001, + // albedo 1, turbidity 10 + 8.976323e-001, + 1.726948e+000, + -1.296120e+000, + 1.183675e+000, + 5.503215e+001, + 2.643066e+001, +}; + +double datasetRGB3[] = +{ + // albedo 0, turbidity 1 + -1.372629e+000, + -4.905585e-001, + -4.100789e+001, + 4.122169e+001, + -7.389360e-003, + 4.839359e-001, + 6.474757e-003, + 3.471755e+000, + 5.092936e-001, + -1.523025e+000, + -6.497084e-001, + 6.249857e+000, + -5.662543e+000, + -1.908402e-002, + 5.512810e-001, + -2.181049e-005, + 2.507663e+000, + 4.339598e-001, + -1.035567e+000, + -7.478740e-002, + 9.221030e-001, + -2.140047e+000, + -2.374146e-002, + 3.795517e-001, + -1.769134e-002, + 7.479831e+000, + 7.729303e-001, + -1.271086e+000, + -5.588190e-001, + 6.908023e-001, + 2.096832e+000, + -2.453967e-001, + 1.410648e+000, + 4.475036e-002, + -4.719115e+000, + 5.741186e-001, + -9.712598e-001, + -7.033926e-002, + 9.167274e-001, + -9.502097e-001, + 3.004684e-001, + 4.547054e-001, + -5.929017e-002, + 5.266196e+000, + 7.204135e-001, + -1.087457e+000, + -1.888896e-001, + 8.156686e-001, + 3.101712e-001, + -2.155419e+000, + 1.422205e+000, + 9.692261e-002, + 3.122404e+000, + 4.999430e-001, + // albedo 0, turbidity 2 + -1.425280e+000, + -5.413508e-001, + -3.454883e+001, + 3.481142e+001, + -8.686975e-003, + 4.914268e-001, + -2.479243e-006, + 3.239879e+000, + 6.094201e-001, + -1.688557e+000, + -8.070865e-001, + 7.018459e+000, + -6.244574e+000, + -2.149341e-002, + 3.993971e-001, + 1.252502e-002, + 1.630662e+000, + 1.097860e-001, + -8.664152e-001, + 7.869125e-002, + -5.236535e-001, + -1.218960e+000, + -2.059093e-002, + 6.684898e-001, + -5.584112e-002, + 8.602299e+000, + 1.410496e+000, + -1.319763e+000, + -5.985323e-001, + 1.253918e+000, + 1.914706e+000, + -3.216739e-001, + 9.011213e-001, + 1.324845e-001, + -5.252749e+000, + 6.231252e-002, + -9.706008e-001, + -5.914059e-002, + 5.693150e-001, + -1.175362e+000, + 5.221644e-001, + 7.518213e-001, + -8.247655e-002, + 5.875635e+000, + 9.850863e-001, + -1.085330e+000, + -1.956105e-001, + 8.019605e-001, + 5.338101e-001, + -3.423464e+000, + 1.110444e+000, + 1.507923e-001, + 2.864942e+000, + 4.999481e-001, + // albedo 0, turbidity 3 + -1.431967e+000, + -5.478935e-001, + -3.286288e+001, + 3.305288e+001, + -8.380797e-003, + 4.772050e-001, + -3.044274e-006, + 3.289973e+000, + 5.976303e-001, + -1.801361e+000, + -9.315889e-001, + 5.391756e+000, + -4.588592e+000, + -2.040076e-002, + 4.144684e-001, + 1.814534e-002, + 1.051795e+000, + 1.145651e-001, + -7.905357e-001, + 1.451332e-001, + -1.605661e-001, + -1.592174e+000, + 4.561348e-004, + 3.380323e-001, + -7.770275e-002, + 8.775384e+000, + 1.489512e+000, + -1.308575e+000, + -5.539232e-001, + 9.184133e-001, + 2.011479e+000, + -3.842472e-001, + 1.432274e+000, + 1.637153e-001, + -4.408856e+000, + 5.272957e-002, + -9.829872e-001, + -8.183048e-002, + 4.464556e-001, + -1.442716e+000, + 1.029641e+000, + -6.991617e-002, + 8.702356e-003, + 5.706417e+000, + 9.116452e-001, + -1.087130e+000, + -2.038013e-001, + 7.260801e-001, + 9.164376e-001, + -5.006183e+000, + 1.511271e+000, + 1.257134e-001, + 2.715439e+000, + 6.201652e-001, + // albedo 0, turbidity 4 + -1.448662e+000, + -5.799075e-001, + -2.833268e+001, + 2.858023e+001, + -9.134061e-003, + 4.404783e-001, + -2.709026e-006, + 3.029357e+000, + 5.540071e-001, + -2.061772e+000, + -1.145190e+000, + 7.918478e+000, + -7.212525e+000, + -2.020760e-002, + 2.962715e-001, + 4.689670e-002, + 8.517209e-001, + 2.334587e-001, + -6.413755e-001, + 1.780425e-001, + -2.412919e+000, + 1.064484e+000, + -1.949986e-002, + 6.769741e-001, + -1.752760e-001, + 7.262714e+000, + 1.325869e+000, + -1.304871e+000, + -3.975581e-001, + 1.219002e+000, + 7.285178e-001, + -2.710105e-001, + 7.779727e-001, + 3.247139e-001, + -8.818168e-001, + 1.839517e-001, + -1.001104e+000, + -1.994801e-001, + 3.676742e-001, + -1.409737e+000, + 2.901555e-001, + 2.506940e-001, + 2.468899e-003, + 3.398923e+000, + 8.584645e-001, + -1.111552e+000, + -2.487204e-001, + 7.410842e-001, + 1.703749e+000, + -5.007855e+000, + 1.057763e+000, + 1.354511e-001, + 2.088715e+000, + 6.600013e-001, + // albedo 0, turbidity 5 + -1.547227e+000, + -6.679466e-001, + -1.861465e+001, + 1.884045e+001, + -1.242210e-002, + 4.157339e-001, + -2.432805e-006, + 2.812423e+000, + 5.446957e-001, + -2.043890e+000, + -1.149081e+000, + 2.304118e+000, + -1.715757e+000, + -2.433628e-002, + 2.816836e-001, + 7.185458e-002, + 1.064860e+000, + 2.706789e-001, + -9.040720e-001, + -8.274472e-002, + -2.555676e-001, + -6.326215e-001, + -2.770880e-002, + 6.676024e-001, + -2.513532e-001, + 5.903839e+000, + 1.241452e+000, + -1.000013e+000, + -1.010774e-001, + 3.699166e-001, + 8.774526e-001, + -3.042007e-001, + 6.951053e-001, + 4.361813e-001, + 6.793421e-001, + 2.573892e-001, + -1.171332e+000, + -3.768188e-001, + 3.701377e-001, + -1.470757e+000, + 5.525942e-001, + 2.991456e-002, + 1.581823e-002, + 2.365233e+000, + 8.214514e-001, + -1.068667e+000, + -2.326330e-001, + 6.725059e-001, + 2.243733e+000, + -4.614370e+000, + 1.033677e+000, + 1.376291e-001, + 2.013334e+000, + 6.865304e-001, + // albedo 0, turbidity 6 + -1.592991e+000, + -7.246948e-001, + -2.598204e+001, + 2.621960e+001, + -8.365176e-003, + 4.207571e-001, + -2.742772e-006, + 2.623735e+000, + 5.873190e-001, + -2.271349e+000, + -1.280884e+000, + 6.308739e+000, + -5.758350e+000, + -1.977049e-002, + 3.671835e-001, + 6.698038e-002, + 1.150597e+000, + 1.759218e-001, + -6.368620e-001, + -7.436052e-003, + -2.230026e+000, + 1.640997e+000, + -1.548497e-002, + 3.145331e-001, + -2.492644e-001, + 5.083843e+000, + 1.260215e+000, + -1.177925e+000, + -9.628114e-002, + 3.051152e-001, + -3.749544e-002, + -2.713209e-001, + 1.164226e+000, + 4.559969e-001, + 2.175429e+000, + 2.874284e-001, + -1.078500e+000, + -3.801779e-001, + 4.788906e-001, + -4.795969e-001, + 5.977621e-001, + -4.488535e-001, + 3.386874e-002, + 1.538143e+000, + 8.062054e-001, + -1.108028e+000, + -2.596892e-001, + 5.162202e-001, + 1.557081e+000, + -4.265039e+000, + 1.182535e+000, + 1.563762e-001, + 2.095084e+000, + 6.883383e-001, + // albedo 0, turbidity 7 + -1.668427e+000, + -7.908511e-001, + -2.779690e+001, + 2.799746e+001, + -7.186935e-003, + 3.757766e-001, + -3.326858e-006, + 2.563421e+000, + 5.439687e-001, + -2.156175e+000, + -1.220004e+000, + 3.585732e+000, + -3.235988e+000, + -1.086239e-002, + 1.846143e-001, + 1.046017e-001, + 1.234427e+000, + 2.842191e-001, + -1.117051e+000, + -4.101627e-001, + -8.463730e-001, + 7.671472e-001, + -2.226609e-002, + 8.574943e-001, + -3.434124e-001, + 4.475715e+000, + 1.154824e+000, + -7.444840e-001, + 2.312078e-001, + -5.393724e-001, + 1.574213e-001, + -1.763914e-001, + 2.751692e-001, + 5.564200e-001, + 2.217672e+000, + 3.483932e-001, + -1.273036e+000, + -5.275562e-001, + 4.902512e-001, + -4.498436e-002, + 4.339366e-001, + 2.386682e-001, + 2.380879e-002, + 1.413444e+000, + 7.855923e-001, + -1.084192e+000, + -2.936753e-001, + 4.719432e-001, + 1.384436e+000, + -3.257789e+000, + 6.119543e-001, + 1.681884e-001, + 1.650441e+000, + 6.936631e-001, + // albedo 0, turbidity 8 + -1.848490e+000, + -9.512670e-001, + -3.005251e+001, + 3.024315e+001, + -5.635304e-003, + 3.447780e-001, + -2.782999e-006, + 2.309422e+000, + 5.643559e-001, + -2.300008e+000, + -1.252335e+000, + -1.218876e+000, + 1.493730e+000, + -6.107100e-003, + 7.974860e-002, + 1.023449e-001, + 1.505934e+000, + 2.360948e-001, + -1.483705e+000, + -8.547575e-001, + -7.797146e-001, + 6.447971e-001, + -2.678052e-002, + 1.091263e+000, + -3.344889e-001, + 3.830416e+000, + 1.189425e+000, + -5.348005e-001, + 3.982733e-001, + -4.071573e-001, + 3.265569e-001, + -8.658789e-002, + -2.370892e-001, + 5.369097e-001, + 1.478279e+000, + 3.143303e-001, + -1.320401e+000, + -6.043247e-001, + 3.019196e-001, + -7.732911e-002, + 4.768381e-001, + 6.745764e-001, + 3.694098e-002, + 1.158234e+000, + 8.169056e-001, + -1.101040e+000, + -3.420019e-001, + 3.775661e-001, + 1.769338e+000, + -2.990515e+000, + 1.649529e-001, + 1.970125e-001, + 1.453355e+000, + 6.759757e-001, + // albedo 0, turbidity 9 + -2.251946e+000, + -1.229349e+000, + -3.271808e+001, + 3.283114e+001, + -4.252027e-003, + 3.372289e-001, + -3.001937e-006, + 2.154046e+000, + 5.842674e-001, + -1.867834e+000, + -9.531252e-001, + -1.229365e+001, + 1.269149e+001, + -6.844772e-003, + 1.185107e-001, + 7.539587e-002, + 1.846381e+000, + 1.899412e-001, + -3.398629e+000, + -2.180862e+000, + 2.335213e+000, + -3.382823e+000, + -8.613985e-003, + 8.431602e-001, + -2.393567e-001, + 3.112460e+000, + 1.218556e+000, + 5.708381e-001, + 9.406030e-001, + -6.890113e-001, + 2.746233e+000, + -5.772068e-002, + 1.096005e-001, + 3.491978e-001, + 7.281453e-001, + 3.212049e-001, + -1.705909e+000, + -8.517224e-001, + 1.131160e-001, + -2.141434e+000, + 4.274043e-001, + 3.397600e-001, + 1.786490e-001, + 9.026101e-001, + 7.882800e-001, + -1.012865e+000, + -3.495551e-001, + 3.369038e-001, + 3.724205e+000, + -3.089586e+000, + 1.266964e-001, + 1.461790e-001, + 1.170199e+000, + 6.931052e-001, + // albedo 0, turbidity 10 + -2.890318e+000, + -1.665573e+000, + -3.493756e+001, + 3.500369e+001, + -2.984251e-003, + 2.622419e-001, + -4.259360e-006, + 1.947681e+000, + 6.905752e-001, + -1.956022e+000, + -1.062900e+000, + -1.919714e+001, + 1.975164e+001, + -8.865396e-003, + 2.165540e-001, + 5.475637e-002, + 1.761134e+000, + 3.164249e-003, + -5.612198e+000, + -3.101371e+000, + 4.098034e+000, + -6.144001e+000, + 9.944958e-003, + 2.905472e-001, + -1.707110e-001, + 3.199107e+000, + 1.337660e+000, + 8.353756e-001, + 4.855943e-001, + -1.243589e+000, + 5.147385e+000, + -7.013963e-002, + 9.380410e-001, + 2.335714e-001, + 1.727744e-001, + 2.802696e-001, + -1.524329e+000, + -7.388547e-001, + 3.259025e-001, + -4.050634e+000, + 4.058549e-001, + -2.591384e-001, + 1.898299e-001, + 3.556071e-001, + 7.884126e-001, + -1.070371e+000, + -4.207858e-001, + 1.739862e-001, + 5.293410e+000, + -3.136757e+000, + 2.323856e-001, + 1.673706e-001, + 1.007227e+000, + 6.844287e-001, + // albedo 1, turbidity 1 + -1.341720e+000, + -4.834889e-001, + -4.633447e+001, + 4.682148e+001, + -6.137296e-003, + 4.599216e-001, + 7.047323e-003, + 2.895798e+000, + 4.999398e-001, + -1.529104e+000, + -6.498631e-001, + 1.534103e+001, + -1.450675e+001, + -1.531439e-002, + 3.280082e-001, + 1.682926e-002, + 1.901587e+000, + 5.013227e-001, + -1.014776e+000, + -1.454495e-001, + -4.071085e+000, + 2.954982e+000, + -2.630348e-002, + 5.681531e-001, + -3.016505e-002, + 6.773854e+000, + 5.003504e-001, + -1.172413e+000, + -4.026320e-001, + 2.960428e+000, + 2.020710e-001, + -2.004947e-001, + 9.375572e-001, + 5.998168e-002, + -4.945934e+000, + 4.502898e-001, + -9.898161e-001, + -5.772814e-002, + 4.470024e-001, + -5.786656e-001, + 1.158168e-001, + 3.468040e-001, + -5.043360e-002, + 6.867947e+000, + 8.012363e-001, + -1.085111e+000, + -1.882675e-001, + 1.223748e+000, + 3.565495e-001, + -3.688357e+000, + 5.653723e-001, + 6.727646e-002, + 2.690130e+000, + 4.999400e-001, + // albedo 1, turbidity 2 + -1.389119e+000, + -5.290250e-001, + -4.055774e+001, + 4.105972e+001, + -7.062577e-003, + 4.560060e-001, + -1.736334e-006, + 2.775512e+000, + 6.671455e-001, + -1.584641e+000, + -7.200619e-001, + 1.248067e+001, + -1.156028e+001, + -1.659568e-002, + 3.050029e-001, + 1.099895e-002, + 1.438927e+000, + -2.138015e-002, + -9.826068e-001, + -8.887254e-002, + -2.960031e+000, + 1.808816e+000, + -2.478159e-002, + 6.035733e-001, + -4.868441e-002, + 7.347705e+000, + 1.584739e+000, + -1.150423e+000, + -4.073793e-001, + 2.412991e+000, + 4.870840e-001, + -2.337902e-001, + 8.295114e-001, + 1.129914e-001, + -5.150045e+000, + -9.016643e-002, + -1.016933e+000, + -6.311501e-002, + 5.218937e-001, + -5.716430e-001, + 1.250993e-001, + 3.601524e-001, + -5.497586e-002, + 7.060139e+000, + 1.018333e+000, + -1.073151e+000, + -1.845444e-001, + 1.155394e+000, + 3.004486e-001, + -3.431711e+000, + 4.657031e-001, + 9.401223e-002, + 2.688620e+000, + 4.999544e-001, + // albedo 1, turbidity 3 + -1.391257e+000, + -5.365815e-001, + -4.255881e+001, + 4.299132e+001, + -5.838466e-003, + 4.229134e-001, + -2.760038e-006, + 2.775531e+000, + 6.234597e-001, + -1.780062e+000, + -9.228880e-001, + 1.376172e+001, + -1.260946e+001, + -1.507526e-002, + 3.117435e-001, + 2.205045e-002, + 6.093731e-001, + 3.463446e-002, + -7.388169e-001, + 1.275670e-001, + -3.999528e+000, + 2.223993e+000, + -1.856853e-002, + 5.439310e-001, + -8.834054e-002, + 8.037139e+000, + 1.645951e+000, + -1.322387e+000, + -5.320143e-001, + 2.659359e+000, + 1.086712e+000, + -2.129712e-001, + 8.704649e-001, + 1.800315e-001, + -4.967241e+000, + -1.383720e-001, + -9.378288e-001, + -1.599895e-002, + 3.607555e-001, + -1.980561e+000, + 3.791456e-001, + 1.212268e-001, + -2.845992e-002, + 6.825542e+000, + 1.059139e+000, + -1.100832e+000, + -2.172313e-001, + 1.211561e+000, + 2.002721e+000, + -5.010011e+000, + 5.717583e-001, + 6.777702e-002, + 2.160006e+000, + 5.676392e-001, + // albedo 1, turbidity 4 + -1.409373e+000, + -5.708751e-001, + -3.034974e+001, + 3.079809e+001, + -7.280715e-003, + 3.723304e-001, + -2.436279e-006, + 2.577348e+000, + 5.913377e-001, + -1.954312e+000, + -1.116510e+000, + 5.399148e+000, + -4.299553e+000, + -1.724739e-002, + 3.742824e-001, + 4.187077e-002, + 1.044883e-001, + 1.232727e-001, + -6.772215e-001, + 2.001396e-001, + -3.670523e-001, + -1.014628e+000, + -3.497152e-003, + 4.099858e-001, + -1.584633e-001, + 7.750400e+000, + 1.514559e+000, + -1.291600e+000, + -4.977437e-001, + 9.641914e-001, + 1.562420e+000, + -3.227782e-001, + 9.055427e-001, + 3.046444e-001, + -3.385619e+000, + 9.546291e-003, + -9.750857e-001, + -8.770560e-002, + 9.054256e-001, + -1.429236e+000, + 8.974777e-001, + -1.217961e-001, + -5.194608e-002, + 4.909409e+000, + 9.589153e-001, + -1.088007e+000, + -1.959301e-001, + 9.745799e-001, + 1.260761e+000, + -5.008864e+000, + 7.271248e-001, + 1.096661e-001, + 2.717295e+000, + 6.340731e-001, + // albedo 1, turbidity 5 + -1.456050e+000, + -6.223072e-001, + -2.228088e+001, + 2.269604e+001, + -9.340812e-003, + 4.118308e-001, + -2.418083e-006, + 2.442117e+000, + 5.589638e-001, + -2.176449e+000, + -1.302416e+000, + 2.222836e+000, + -1.222730e+000, + -1.728051e-002, + 1.323513e-001, + 7.027731e-002, + 4.835745e-002, + 2.093351e-001, + -5.789641e-001, + 2.215407e-001, + 2.142291e-001, + -1.201725e+000, + -1.185728e-002, + 8.122982e-001, + -2.380420e-001, + 6.706841e+000, + 1.404146e+000, + -1.307463e+000, + -4.515174e-001, + 6.447827e-001, + 1.223841e+000, + -2.902391e-001, + 4.986588e-001, + 4.073652e-001, + -1.706696e+000, + 1.060885e-001, + -9.698678e-001, + -1.307094e-001, + 9.389347e-001, + -1.522852e+000, + 7.768797e-001, + -1.368595e-001, + -3.857426e-002, + 3.676935e+000, + 8.980966e-001, + -1.104349e+000, + -2.380323e-001, + 1.047043e+000, + 1.865421e+000, + -5.011664e+000, + 7.014954e-001, + 9.622701e-002, + 1.891360e+000, + 6.687354e-001, + // albedo 1, turbidity 6 + -1.502249e+000, + -6.724523e-001, + -2.888092e+001, + 2.930360e+001, + -6.685766e-003, + 3.685464e-001, + -2.469442e-006, + 2.310797e+000, + 5.566754e-001, + -2.217125e+000, + -1.364924e+000, + 4.048243e+000, + -3.111333e+000, + -1.317747e-002, + 1.921948e-001, + 8.627702e-002, + 1.981769e-003, + 2.213689e-001, + -6.215757e-001, + 1.687995e-001, + -5.949131e-001, + -1.551293e-001, + 3.356129e-004, + 6.897657e-001, + -2.855053e-001, + 6.271042e+000, + 1.363084e+000, + -1.216317e+000, + -3.489429e-001, + 7.566226e-001, + 5.409809e-001, + -2.830843e-001, + 6.191825e-001, + 4.755163e-001, + -9.131387e-001, + 1.383909e-001, + -1.030437e+000, + -2.034064e-001, + 8.335995e-001, + -1.050947e+000, + 8.689093e-001, + -3.672310e-001, + -4.056183e-002, + 3.111269e+000, + 8.856842e-001, + -1.078984e+000, + -2.070549e-001, + 9.683145e-001, + 1.497022e+000, + -5.007653e+000, + 7.702541e-001, + 1.285822e-001, + 2.225188e+000, + 6.587911e-001, + // albedo 1, turbidity 7 + -1.559291e+000, + -7.374039e-001, + -3.596311e+001, + 3.634470e+001, + -4.667132e-003, + 3.277964e-001, + -2.487945e-006, + 2.215652e+000, + 5.764681e-001, + -2.356929e+000, + -1.444755e+000, + 6.244526e+000, + -5.540162e+000, + -8.794510e-003, + 1.792100e-001, + 9.578517e-002, + 3.737676e-001, + 1.922194e-001, + -6.589752e-001, + -2.926910e-002, + -1.831779e+000, + 1.869962e+000, + -2.030095e-003, + 7.552089e-001, + -3.168157e-001, + 4.632196e+000, + 1.294054e+000, + -1.161046e+000, + -1.472506e-001, + 6.494138e-001, + -8.327174e-001, + -2.320724e-001, + 3.391212e-001, + 5.269637e-001, + 9.376341e-001, + 2.458573e-001, + -1.034427e+000, + -3.062504e-001, + 8.975634e-001, + 3.203531e-001, + 8.565142e-001, + -1.250162e-001, + -4.094017e-002, + 1.861304e+000, + 8.223468e-001, + -1.109954e+000, + -2.740277e-001, + 1.063811e+000, + 7.077398e-001, + -4.695734e+000, + 5.621696e-001, + 1.248956e-001, + 1.297723e+000, + 6.789720e-001, + // albedo 1, turbidity 8 + -1.788293e+000, + -9.368751e-001, + -4.382980e+001, + 4.424963e+001, + -3.652530e-003, + 3.094331e-001, + -2.810503e-006, + 1.904402e+000, + 5.861599e-001, + -2.268206e+000, + -1.312676e+000, + 2.863082e+000, + -2.373727e+000, + -5.144980e-003, + 1.711072e-001, + 9.316041e-002, + 9.309598e-001, + 1.791683e-001, + -1.376966e+000, + -7.418582e-001, + -1.349589e+000, + 1.563419e+000, + -3.124219e-003, + 6.967139e-001, + -3.061887e-001, + 3.602731e+000, + 1.255669e+000, + -6.017540e-001, + 2.815928e-001, + 5.424052e-001, + -6.885450e-001, + -1.620001e-001, + 2.980046e-001, + 4.995571e-001, + 7.371203e-001, + 2.812466e-001, + -1.278853e+000, + -5.245326e-001, + 7.870520e-001, + 3.125067e-001, + 7.748105e-001, + -7.788581e-002, + 3.490956e-003, + 1.283748e+000, + 8.130190e-001, + -1.050930e+000, + -2.786331e-001, + 1.056344e+000, + 1.053002e+000, + -4.047789e+000, + 4.432174e-001, + 1.169077e-001, + 9.532621e-001, + 6.806764e-001, + // albedo 1, turbidity 9 + -2.084927e+000, + -1.203954e+000, + -4.881638e+001, + 4.920160e+001, + -2.896045e-003, + 2.882977e-001, + -3.073517e-006, + 1.702211e+000, + 6.374180e-001, + -2.328567e+000, + -1.238023e+000, + -1.891019e+000, + 2.451520e+000, + -5.847581e-003, + 2.084702e-001, + 7.848130e-002, + 1.211048e+000, + 8.095008e-002, + -2.634632e+000, + -1.789460e+000, + -1.370558e-001, + -3.326435e-001, + 2.783737e-003, + 5.239451e-001, + -2.548881e-001, + 2.896327e+000, + 1.324116e+000, + 6.882616e-002, + 5.997821e-001, + 1.535398e-001, + 1.375209e+000, + -1.267285e-001, + 4.239743e-001, + 4.013122e-001, + 1.794675e-001, + 2.395382e-001, + -1.430918e+000, + -6.439041e-001, + 8.325980e-001, + -1.705612e+000, + 7.236426e-001, + -5.567593e-002, + 6.408718e-002, + 6.836524e-001, + 8.388887e-001, + -1.037956e+000, + -3.215402e-001, + 9.457349e-001, + 3.178114e+000, + -4.152156e+000, + 2.230992e-001, + 1.156198e-001, + 7.606223e-001, + 6.656923e-001, + // albedo 1, turbidity 10 + -2.967314e+000, + -1.728778e+000, + -3.730988e+001, + 3.755578e+001, + -2.588835e-003, + 2.927966e-001, + -3.935038e-006, + 1.592161e+000, + 6.868694e-001, + -2.123311e+000, + -1.175148e+000, + -1.314988e+001, + 1.386882e+001, + -7.828537e-003, + 1.852026e-001, + 5.481038e-002, + 1.294309e+000, + 2.428177e-002, + -5.443597e+000, + -3.156344e+000, + 2.110838e+000, + -3.421556e+000, + 1.181890e-002, + 1.196951e-001, + -1.742902e-001, + 2.404353e+000, + 1.272805e+000, + 1.029898e+000, + 5.912521e-001, + -3.983531e-001, + 3.286069e+000, + -9.252065e-002, + 1.331381e+000, + 2.560642e-001, + 8.001754e-001, + 3.624178e-001, + -1.547574e+000, + -7.881604e-001, + 1.020902e+000, + -2.897069e+000, + 5.213470e-001, + -9.242315e-001, + 1.185594e-001, + -1.150721e+000, + 7.317211e-001, + -9.621043e-001, + -1.991406e-001, + 6.531287e-001, + 3.925839e+000, + -3.596904e+000, + 6.317332e-001, + 1.531334e-001, + 1.457846e+000, + 6.966285e-001, +}; + +double datasetRGBRad3[] = +{ + // albedo 0, turbidity 1 + 9.926518e-001, + 1.999494e+000, + -4.136109e+000, + 1.856270e+001, + 1.351028e+001, + 1.390238e+001, + // albedo 0, turbidity 2 + 9.634366e-001, + 2.119694e+000, + -4.614523e+000, + 1.919701e+001, + 1.376644e+001, + 1.418731e+001, + // albedo 0, turbidity 3 + 9.446537e-001, + 2.171610e+000, + -4.915556e+000, + 1.918240e+001, + 1.537135e+001, + 1.400530e+001, + // albedo 0, turbidity 4 + 9.073074e-001, + 2.330536e+000, + -5.577596e+000, + 1.961615e+001, + 1.688365e+001, + 1.446955e+001, + // albedo 0, turbidity 5 + 8.739124e-001, + 2.388682e+000, + -5.842995e+000, + 1.923265e+001, + 1.887735e+001, + 1.485698e+001, + // albedo 0, turbidity 6 + 8.563688e-001, + 2.391534e+000, + -5.769133e+000, + 1.828709e+001, + 2.097209e+001, + 1.469587e+001, + // albedo 0, turbidity 7 + 8.270533e-001, + 2.342790e+000, + -5.558071e+000, + 1.684993e+001, + 2.356498e+001, + 1.505975e+001, + // albedo 0, turbidity 8 + 7.908339e-001, + 2.190341e+000, + -4.852571e+000, + 1.374862e+001, + 2.806846e+001, + 1.548444e+001, + // albedo 0, turbidity 9 + 7.403619e-001, + 1.783998e+000, + -2.983854e+000, + 7.622563e+000, + 3.507610e+001, + 1.615805e+001, + // albedo 0, turbidity 10 + 6.840111e-001, + 1.154457e+000, + -2.393830e-001, + -7.896893e-001, + 4.282765e+001, + 1.779469e+001, + // albedo 1, turbidity 1 + 1.168300e+000, + 1.860993e+000, + -2.129074e+000, + 1.251952e+001, + 3.032499e+001, + 2.938716e+001, + // albedo 1, turbidity 2 + 1.150338e+000, + 1.918813e+000, + -2.413527e+000, + 1.274862e+001, + 3.087134e+001, + 2.951432e+001, + // albedo 1, turbidity 3 + 1.114719e+000, + 1.964689e+000, + -2.625423e+000, + 1.247837e+001, + 3.237949e+001, + 2.943596e+001, + // albedo 1, turbidity 4 + 1.077948e+000, + 2.006292e+000, + -2.846934e+000, + 1.190195e+001, + 3.459293e+001, + 2.937492e+001, + // albedo 1, turbidity 5 + 1.035143e+000, + 1.986681e+000, + -2.752584e+000, + 1.060972e+001, + 3.722185e+001, + 2.918594e+001, + // albedo 1, turbidity 6 + 1.015992e+000, + 1.992054e+000, + -2.812626e+000, + 1.001416e+001, + 3.847300e+001, + 2.924624e+001, + // albedo 1, turbidity 7 + 9.756887e-001, + 1.939897e+000, + -2.533281e+000, + 8.319176e+000, + 4.083907e+001, + 2.925586e+001, + // albedo 1, turbidity 8 + 9.264164e-001, + 1.716454e+000, + -1.597044e+000, + 4.739725e+000, + 4.507683e+001, + 2.878915e+001, + // albedo 1, turbidity 9 + 8.595191e-001, + 1.346034e+000, + -2.801895e-002, + -6.582906e-001, + 5.017523e+001, + 2.852953e+001, + // albedo 1, turbidity 10 + 7.754116e-001, + 7.709245e-001, + 2.200201e+000, + -7.487661e+000, + 5.436622e+001, + 2.893432e+001, +}; + +double* datasetsRGB[] = +{ + datasetRGB1, + datasetRGB2, + datasetRGB3 +}; + +double* datasetsRGBRad[] = +{ + datasetRGBRad1, + datasetRGBRad2, + datasetRGBRad3 +}; diff --git a/src/haloray-core/simulation/backgroundSky/ArHosekSkyModelData_Spectral.h b/src/haloray-core/simulation/backgroundSky/ArHosekSkyModelData_Spectral.h new file mode 100644 index 0000000..2e095a4 --- /dev/null +++ b/src/haloray-core/simulation/backgroundSky/ArHosekSkyModelData_Spectral.h @@ -0,0 +1,33770 @@ +/* +This source is published under the following 3-clause BSD license. + +Copyright (c) 2012 - 2013, Lukas Hosek and Alexander Wilkie +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * None of the names of the contributors may be used to endorse or promote + products derived from this software without specific prior written + permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + + +/* ============================================================================ + +This file is part of a sample implementation of the analytical skylight and +solar radiance models presented in the SIGGRAPH 2012 paper + + + "An Analytic Model for Full Spectral Sky-Dome Radiance" + +and the 2013 IEEE CG&A paper + + "Adding a Solar Radiance Function to the Hosek Skylight Model" + + both by + + Lukas Hosek and Alexander Wilkie + Charles University in Prague, Czech Republic + + + Version: 1.4a, February 22nd, 2013 + +Version history: + +1.4a February 22nd, 2013 + Removed unnecessary and counter-intuitive solar radius parameters + from the interface of the colourspace sky dome initialisation functions. + +1.4 February 11th, 2013 + Fixed a bug which caused the relative brightness of the solar disc + and the sky dome to be off by a factor of about 6. The sun was too + bright: this affected both normal and alien sun scenarios. The + coefficients of the solar radiance function were changed to fix this. + +1.3 January 21st, 2013 (not released to the public) + Added support for solar discs that are not exactly the same size as + the terrestrial sun. Also added support for suns with a different + emission spectrum ("Alien World" functionality). + +1.2a December 18th, 2012 + Fixed a mistake and some inaccuracies in the solar radiance function + explanations found in ArHosekSkyModel.h. The actual source code is + unchanged compared to version 1.2. + +1.2 December 17th, 2012 + Native RGB data and a solar radiance function that matches the turbidity + conditions were added. + +1.1 September 2012 + The coefficients of the spectral model are now scaled so that the output + is given in physical units: W / (m^-2 * sr * nm). Also, the output of the + XYZ model is now no longer scaled to the range [0...1]. Instead, it is + the result of a simple conversion from spectral data via the CIE 2 degree + standard observer matching functions. Therefore, after multiplication + with 683 lm / W, the Y channel now corresponds to luminance in lm. + +1.0 May 11th, 2012 + Initial release. + + +Please visit http://cgg.mff.cuni.cz/projects/SkylightModelling/ to check if +an updated version of this code has been published! + +============================================================================ */ + + +/* + +This file contains the coefficient data for the spectral version of the model. + +*/ + +// uses Apr 26 dataset + +double dataset320[] = +{ + // albedo 0, turbidity 1 + -1.341049e+001, + -3.742293e+000, + -5.229614e+000, + 5.307180e+000, + -2.182658e-002, + 1.497676e-001, + -8.561730e-006, + 1.733480e+000, + 8.826913e-001, + -1.426825e+001, + -3.550926e+000, + 5.719350e-002, + 3.165753e-001, + -5.870693e-002, + 1.333896e-001, + 1.779338e-005, + 1.504276e+000, + 9.750357e-001, + -2.239068e+000, + -4.290407e+000, + -7.494879e-001, + 2.864989e-001, + -6.017855e-002, + 1.325901e-001, + -1.661674e-004, + 1.732120e+000, + 6.513374e-001, + -1.336194e+000, + -2.467808e-001, + 3.961139e-001, + -6.723820e-002, + -1.817268e-001, + 1.017581e-002, + 6.096079e-004, + 1.986859e+000, + 1.415296e+000, + -1.554271e+000, + -1.811527e+000, + 7.309756e-001, + 1.766793e-003, + 5.779090e-001, + 6.186216e-001, + -1.755338e-003, + -2.701090e-002, + 2.699530e-001, + -8.449639e-001, + -5.665198e-001, + 5.525823e-001, + -2.838870e-003, + -4.555228e+000, + 2.824945e-001, + 4.002014e-003, + 1.114208e+000, + 6.637074e-001, + // albedo 0, turbidity 2 + -1.298333e+001, + -3.775577e+000, + -5.173531e+000, + 5.316518e+000, + -2.572615e-002, + 1.516601e-001, + -8.297168e-006, + 1.669649e+000, + 9.000495e-001, + -1.402639e+001, + -3.787558e+000, + 7.611941e-002, + 2.521881e-001, + -5.859973e-002, + 1.753711e-001, + 4.670097e-005, + 1.459275e+000, + 8.998629e-001, + -2.190256e+000, + -3.575495e+000, + -4.930996e-001, + 4.826321e-002, + -6.797145e-002, + 3.425922e-002, + -3.512550e-004, + 1.978419e+000, + 8.866517e-001, + -2.415991e+000, + -1.453294e+000, + 2.170671e-001, + 1.341284e-001, + -1.926330e-001, + 1.059103e-001, + 1.360739e-003, + 1.587725e+000, + 9.821154e-001, + -5.254592e-001, + -8.181026e-001, + 7.535702e-001, + -3.323364e-002, + 4.503149e-001, + 5.778285e-001, + -4.089673e-003, + 3.335089e-001, + 6.827164e-001, + -1.280108e+000, + -1.013716e+000, + 5.577676e-001, + 9.539205e-004, + -4.934956e+000, + 2.642883e-001, + 1.005169e-002, + 9.265844e-001, + 4.999698e-001, + // albedo 0, turbidity 3 + -1.292247e+001, + -3.819777e+000, + -4.478733e+000, + 4.582924e+000, + -2.364370e-002, + 1.619828e-001, + -3.053548e-006, + 1.646629e+000, + 5.103371e-001, + -1.433099e+001, + -3.766213e+000, + 4.930150e-001, + -3.081235e-002, + -6.522199e-002, + 1.564198e-001, + 3.455657e-004, + 1.428507e+000, + 4.312273e-001, + -2.539220e+000, + -3.459074e+000, + -3.774393e-001, + -3.628419e-001, + -2.124451e-001, + -1.358132e-002, + -1.812805e-003, + 2.245152e+000, + 7.247429e-001, + -2.393246e+000, + -1.937898e+000, + 1.005834e-001, + 5.867890e-001, + 2.645044e-001, + 1.413695e-001, + 6.378716e-003, + 1.140715e+000, + 1.263014e+000, + -1.185583e-001, + -1.960943e-001, + 7.212723e-001, + -1.763978e-001, + -1.000190e+000, + 6.259726e-001, + -1.783726e-002, + 7.790644e-001, + 3.244710e-001, + -1.550325e+000, + -1.333575e+000, + 5.618137e-001, + 2.563595e-002, + -5.007716e+000, + 6.522985e-002, + 4.262830e-002, + 7.371930e-001, + 5.239972e-001, + // albedo 0, turbidity 4 + -1.234358e+001, + -3.851875e+000, + -3.911206e+000, + 4.011324e+000, + -2.734425e-002, + 1.272306e-001, + -7.628210e-006, + 1.661843e+000, + 8.993903e-001, + -1.349727e+001, + -3.592681e+000, + 1.335192e+000, + -9.426446e-001, + -5.741127e-002, + 9.765267e-002, + 5.518099e-005, + 1.428554e+000, + -4.278471e-001, + -3.399618e+000, + -3.818725e+000, + -8.698171e-001, + 2.723930e-001, + -3.644369e-001, + 1.238759e-001, + -5.189179e-004, + 2.279175e+000, + 1.841076e+000, + -1.925152e+000, + -1.539333e+000, + 2.757771e-001, + -6.435980e-002, + 6.466700e-001, + 3.084382e-002, + 3.114730e-003, + 1.259818e+000, + 5.121617e-001, + -5.706832e-001, + -6.696186e-001, + 6.798158e-001, + 6.920162e-001, + -3.898854e+000, + 5.954021e-001, + -1.196667e-002, + 5.714991e-001, + 6.528481e-001, + -1.371907e+000, + -1.142330e+000, + 5.207805e-001, + -4.480298e-003, + -5.008950e+000, + 1.251549e-001, + 3.531514e-002, + 8.776759e-001, + 4.999465e-001, + // albedo 0, turbidity 5 + -1.459738e+001, + -3.833562e+000, + -4.148717e+000, + 4.203270e+000, + -2.484405e-002, + 1.189704e-001, + 4.166397e-004, + 1.748850e+000, + 4.999721e-001, + -1.223022e+001, + -3.942049e+000, + 1.183072e+000, + -9.018678e-001, + -4.644071e-002, + 1.237476e-001, + -2.359994e-003, + 1.471013e+000, + 5.298845e-001, + -4.078262e+000, + -3.261096e+000, + -5.520001e-001, + 2.174261e-001, + -3.582576e-001, + 2.000597e-002, + 9.890182e-003, + 2.199274e+000, + 2.756320e-001, + -2.499065e+000, + -2.408391e+000, + 3.391663e-002, + -6.167543e-002, + 7.555424e-001, + 2.349252e-001, + -2.443140e-002, + 1.328540e+000, + 1.348906e+000, + 5.456648e-002, + -9.221401e-002, + 7.403428e-001, + 5.565324e-001, + -5.134970e+000, + 3.021763e-001, + 3.638500e-002, + 5.560149e-001, + 1.818210e-001, + -1.590269e+000, + -1.344330e+000, + 4.805789e-001, + 5.038509e-001, + -3.370644e+000, + 3.040357e-001, + 2.418483e-003, + 8.979818e-001, + 7.477974e-001, + // albedo 0, turbidity 6 + -6.775680e+000, + -3.436745e+000, + -2.696730e+000, + 2.740681e+000, + -4.032382e-002, + 1.036486e-001, + 8.133034e-005, + 1.767160e+000, + 5.401354e-001, + -7.800595e+000, + -2.867058e+000, + 1.478909e+000, + -1.380160e+000, + -1.658909e-001, + 1.962673e-001, + -6.512798e-004, + 1.634359e+000, + 4.300704e-001, + -4.392403e+000, + -3.857979e+000, + -1.022020e+000, + 1.449394e+000, + 2.769695e-001, + -3.331834e-001, + 3.513950e-003, + 1.942113e+000, + 3.970742e-001, + -2.469701e+000, + -1.357319e+000, + 2.132600e-001, + -1.918729e+000, + -4.193060e+000, + 8.101579e-001, + -9.605279e-003, + 1.844443e+000, + 1.582310e+000, + -7.759612e-001, + -1.298076e+000, + 7.162377e-001, + 2.906682e+000, + -8.261148e-001, + -2.892123e-001, + 1.491449e-002, + 6.529387e-002, + -4.180287e-002, + -9.962340e-001, + -6.488730e-001, + 3.933344e-001, + -4.752111e-003, + -4.721793e+000, + 6.053196e-001, + 3.453563e-003, + 1.247655e+000, + 8.673379e-001, + // albedo 0, turbidity 7 + -7.552689e+000, + -3.219112e+000, + -2.730242e+000, + 2.755929e+000, + -3.925138e-002, + 8.394617e-002, + 1.514980e-004, + 1.844410e+000, + 5.389194e-001, + -8.494732e+000, + -3.138528e+000, + 1.424739e+000, + -1.269326e+000, + -1.561580e-001, + 1.767060e-001, + -1.175921e-003, + 1.659123e+000, + 3.746132e-001, + -4.672972e+000, + -4.049529e+000, + -1.027600e+000, + 1.072252e+000, + 7.908165e-002, + -2.243835e-001, + 6.190595e-003, + 1.988822e+000, + 6.684758e-001, + -2.256117e+000, + -1.258356e+000, + 2.198377e-001, + -1.296239e+000, + -3.200970e+000, + 6.407291e-001, + -1.527762e-002, + 1.735209e+000, + 1.170530e+000, + -7.790059e-001, + -1.269213e+000, + 6.315194e-001, + 2.368850e+000, + -1.199163e+000, + -1.504024e-001, + 1.733299e-002, + 2.544016e-001, + 2.756763e-001, + -1.046916e+000, + -6.991719e-001, + 3.620624e-001, + 7.364236e-002, + -5.012491e+000, + 4.240417e-001, + 3.580425e-002, + 1.202329e+000, + 6.255804e-001, + // albedo 0, turbidity 8 + -1.886851e+001, + -4.491136e+000, + -3.660440e+000, + 3.704226e+000, + -3.158478e-002, + 1.229909e-001, + 9.233613e-004, + 1.745459e+000, + 5.011929e-001, + -1.986322e+001, + -3.528401e+000, + 1.401749e+000, + -1.191377e+000, + -7.474944e-002, + -2.193835e-002, + -5.138968e-003, + 1.710181e+000, + 5.473672e-001, + 5.355660e-001, + -5.459304e+000, + -8.809226e-001, + 5.959028e-001, + -3.311339e-001, + 3.876731e-001, + 2.126070e-002, + 1.929868e+000, + 1.883429e-001, + -3.136053e+000, + -2.856938e-001, + 1.048390e-001, + -7.708877e-001, + 2.106630e-001, + -1.488471e-001, + -5.172733e-002, + 1.769302e+000, + 1.526253e+000, + 1.496752e-001, + -9.170428e-001, + 5.628226e-001, + 1.733601e+000, + -4.784033e+000, + 3.570330e-001, + 7.396580e-002, + 3.954993e-001, + 1.397727e-003, + -1.839740e+000, + -1.279260e+000, + 3.173503e-001, + 1.096266e+000, + -4.168649e+000, + 2.121881e-001, + 2.150917e-002, + 1.151497e+000, + 7.233585e-001, + // albedo 0, turbidity 9 + -1.841090e+001, + -4.803089e+000, + -4.883823e+000, + 4.962235e+000, + -2.693216e-002, + 1.089917e-001, + -6.338015e-006, + 1.725865e+000, + 8.890717e-001, + -1.947081e+001, + -2.961260e+000, + 1.963002e+000, + -1.942423e+000, + -5.550118e-002, + 7.036456e-002, + -5.990592e-004, + 1.807097e+000, + -8.871814e-003, + 9.588307e-001, + -6.379803e+000, + -1.021090e+000, + 9.560589e-001, + -2.175500e-001, + 8.613517e-002, + 1.362268e-002, + 1.953529e+000, + 7.422482e-001, + -3.609766e+000, + -1.823498e-003, + 2.516424e-002, + -8.909855e-001, + 2.207805e-001, + 1.783064e-001, + -4.293958e-002, + 1.607901e+000, + 1.131559e+000, + 6.087707e-001, + -6.744295e-001, + 4.236310e-001, + 1.505925e+000, + -4.197126e+000, + 2.046561e-001, + 6.445824e-002, + 7.793118e-001, + 3.262213e-001, + -2.148492e+000, + -1.597890e+000, + 3.166858e-001, + 2.414329e+000, + -4.201339e+000, + 1.005902e-001, + 4.687865e-002, + 9.335376e-001, + 5.289661e-001, + // albedo 0, turbidity 10 + -1.787767e+001, + -4.873485e+000, + -5.861224e+000, + 5.866336e+000, + -1.564202e-002, + 6.967640e-002, + 7.574926e-004, + 1.768065e+000, + 5.856596e-001, + -1.932995e+001, + -4.092647e+000, + 2.679531e+000, + -2.555671e+000, + -4.181418e-002, + 1.023654e-001, + -5.964172e-003, + 1.625691e+000, + 4.036808e-001, + 1.788482e+000, + -5.652582e+000, + -1.517519e+000, + 1.251535e+000, + -2.225912e-001, + -1.084716e-001, + 3.272584e-002, + 2.139078e+000, + 3.876645e-001, + -3.363801e+000, + -3.266475e-001, + 1.313912e-001, + -6.889075e-001, + 4.356523e-001, + 3.120297e-001, + -8.700131e-002, + 1.750122e+000, + 1.223546e+000, + 4.668756e-004, + -9.612337e-001, + 3.082344e-001, + 1.298938e+000, + -4.371395e+000, + 8.845524e-002, + 1.303481e-001, + 5.843720e-001, + 2.718863e-001, + -1.759172e+000, + -1.386072e+000, + 2.349661e-001, + 1.592185e+000, + -3.063267e+000, + 1.529736e-001, + 3.429185e-002, + 1.030294e+000, + 6.917018e-001, + // albedo 1, turbidity 1 + -1.341051e+001, + -3.742047e+000, + -5.229556e+000, + 5.307222e+000, + -2.094796e-002, + 1.499787e-001, + -7.023116e-006, + 1.732898e+000, + 8.826861e-001, + -1.426829e+001, + -3.550660e+000, + 5.731266e-002, + 3.166575e-001, + -5.821080e-002, + 1.335860e-001, + 2.003178e-004, + 1.503788e+000, + 9.750310e-001, + -2.239143e+000, + -4.290084e+000, + -7.493158e-001, + 2.865753e-001, + -5.993923e-002, + 1.327393e-001, + -5.399344e-004, + 1.731677e+000, + 6.513329e-001, + -1.336350e+000, + -2.463606e-001, + 3.963632e-001, + -6.721398e-002, + -1.816244e-001, + 1.021503e-002, + 8.081470e-004, + 1.986453e+000, + 1.415292e+000, + -1.554584e+000, + -1.810948e+000, + 7.313475e-001, + 1.703307e-003, + 5.779436e-001, + 6.184790e-001, + -6.832621e-004, + -2.739619e-002, + 2.699443e-001, + -8.456234e-001, + -5.656772e-001, + 5.531782e-001, + -2.975361e-003, + -4.555221e+000, + 2.821035e-001, + 4.007713e-004, + 1.113850e+000, + 6.636719e-001, + // albedo 1, turbidity 2 + -1.263311e+001, + -4.099112e+000, + -5.130792e+000, + 5.526406e+000, + -2.122841e-002, + 1.202556e-001, + -8.060670e-006, + 1.209196e+000, + 8.997967e-001, + -1.361400e+001, + -3.538236e+000, + 1.570583e-001, + 3.445259e-001, + -5.306874e-002, + 2.322893e-001, + 1.572516e-005, + 1.152750e+000, + 9.026902e-001, + -1.477014e+000, + -3.664310e+000, + -1.442116e-001, + -4.293554e-002, + -3.768326e-002, + -1.388530e-001, + -1.687893e-004, + 1.592625e+000, + 8.804841e-001, + -2.050884e+000, + -1.470536e+000, + 3.327590e-001, + 1.976143e-001, + -1.930369e-001, + 2.831960e-001, + 6.940849e-004, + 1.271203e+000, + 9.790242e-001, + -3.704793e-001, + -5.829841e-001, + 1.168589e+000, + -1.387973e-001, + 5.998426e-001, + 3.825096e-001, + -2.188637e-003, + -2.273264e-001, + 7.393514e-001, + -9.877542e-001, + -7.646946e-001, + 8.859003e-001, + 5.263145e-002, + -4.849410e+000, + 1.301905e-001, + 5.464872e-003, + 5.270984e-001, + 5.001226e-001, + // albedo 1, turbidity 3 + -1.294452e+001, + -3.858933e+000, + -4.362969e+000, + 4.657159e+000, + -2.281956e-002, + 1.371565e-001, + 3.552610e-006, + 1.354369e+000, + 5.222053e-001, + -1.425646e+001, + -3.745266e+000, + 6.901454e-001, + -5.345642e-002, + -5.238708e-002, + 1.157055e-001, + -1.961110e-005, + 1.030408e+000, + 4.036292e-001, + -2.236186e+000, + -3.560196e+000, + -1.053059e-001, + -3.002269e-001, + -1.702750e-001, + 3.290753e-002, + -7.253274e-005, + 1.846963e+000, + 6.828000e-001, + -1.991088e+000, + -2.028027e+000, + 2.747056e-001, + 5.076456e-001, + 2.056096e-001, + 1.537040e-001, + 1.010611e-003, + 8.439763e-001, + 1.286657e+000, + -2.733597e-001, + -1.938590e-001, + 1.108079e+000, + -1.668080e-001, + -8.136300e-001, + 3.962292e-001, + -4.757393e-003, + 1.536882e-001, + 4.595467e-001, + -9.782447e-001, + -8.452104e-001, + 9.149995e-001, + 2.750126e-002, + -4.996263e+000, + 1.226836e-001, + 1.533731e-002, + 3.686265e-001, + 5.004484e-001, + // albedo 1, turbidity 4 + -1.234416e+001, + -3.818503e+000, + -3.804408e+000, + 4.093838e+000, + -2.505623e-002, + 1.149315e-001, + -7.610563e-006, + 1.361584e+000, + 8.981571e-001, + -1.349621e+001, + -3.551853e+000, + 1.469377e+000, + -8.971164e-001, + -5.623731e-002, + 1.078524e-001, + 1.491378e-003, + 1.113040e+000, + -4.279059e-001, + -3.391950e+000, + -3.791028e+000, + -6.935352e-001, + 2.998175e-001, + -3.155309e-001, + 1.196041e-001, + -4.708048e-003, + 2.001973e+000, + 1.840166e+000, + -1.915114e+000, + -1.493080e+000, + 4.567342e-001, + -7.334296e-002, + 6.767060e-001, + -4.562689e-003, + 1.016838e-002, + 1.003272e+000, + 5.102018e-001, + -5.674128e-001, + -5.568719e-001, + 9.084369e-001, + 6.684870e-001, + -3.892720e+000, + 5.312866e-001, + -1.768715e-002, + 3.252051e-001, + 6.541029e-001, + -1.343751e+000, + -9.647458e-001, + 7.945561e-001, + 5.127485e-004, + -5.009873e+000, + 6.165389e-002, + 2.642926e-002, + 6.213595e-001, + 5.327376e-001, + // albedo 1, turbidity 5 + -1.450562e+001, + -4.021778e+000, + -4.181517e+000, + 4.509518e+000, + -2.369519e-002, + 6.955582e-002, + 1.149882e-004, + 1.329583e+000, + 5.260857e-001, + -1.297772e+001, + -3.655039e+000, + 2.030636e+000, + -1.537436e+000, + -4.915490e-002, + 1.511047e-001, + -9.053517e-004, + 1.156980e+000, + 4.831690e-001, + -1.991837e+000, + -3.919397e+000, + -8.466357e-001, + 5.319508e-001, + -3.165811e-001, + 1.056172e-001, + 4.836036e-003, + 1.843574e+000, + 3.084513e-001, + -2.052725e+000, + -1.606839e+000, + 5.876624e-001, + -7.464148e-002, + 7.525473e-001, + 1.590947e-003, + -1.261084e-002, + 8.587516e-001, + 1.404076e+000, + -3.737447e-001, + -4.061843e-001, + 8.985804e-001, + 5.700187e-001, + -5.422882e+000, + 4.334301e-001, + 1.759754e-002, + 2.613056e-001, + 2.062463e-001, + -1.002263e+000, + -1.006484e+000, + 9.629219e-001, + 8.528366e-002, + -4.220831e+000, + 7.848806e-002, + 1.254937e-002, + 2.140208e-001, + 6.187813e-001, + // albedo 1, turbidity 6 + -7.175451e+000, + -3.313094e+000, + -2.396914e+000, + 2.657177e+000, + -3.936959e-002, + 1.123476e-001, + 7.315860e-005, + 1.431209e+000, + 5.107145e-001, + -8.058121e+000, + -3.119458e+000, + 1.729776e+000, + -1.435370e+000, + -1.414745e-001, + 2.338787e-001, + -5.865288e-004, + 1.247225e+000, + 5.037743e-001, + -4.387785e+000, + -3.851081e+000, + -7.774273e-001, + 1.405520e+000, + 1.743075e-001, + -4.108912e-001, + 3.058571e-003, + 1.519803e+000, + 2.636805e-001, + -1.807473e+000, + -1.498491e+000, + 3.237723e-001, + -1.626737e+000, + -3.741656e+000, + 8.444519e-001, + -8.297013e-003, + 1.624861e+000, + 1.753817e+000, + -6.242455e-001, + -1.063850e+000, + 1.166897e+000, + 2.283807e+000, + -1.150947e+000, + -3.242997e-001, + 1.279340e-002, + -5.448139e-001, + -8.653106e-002, + -8.143405e-001, + -5.251732e-001, + 7.822692e-001, + -3.764280e-003, + -5.011112e+000, + 3.985065e-001, + 3.652394e-003, + 7.140115e-001, + 7.004910e-001, + // albedo 1, turbidity 7 + -7.579673e+000, + -3.495594e+000, + -2.498830e+000, + 2.771470e+000, + -3.451351e-002, + 8.186886e-002, + 1.272079e-004, + 1.390420e+000, + 5.545117e-001, + -8.524117e+000, + -3.121778e+000, + 1.680395e+000, + -1.329455e+000, + -1.395912e-001, + 1.911589e-001, + -1.027988e-003, + 1.259267e+000, + 3.356989e-001, + -4.579718e+000, + -4.086739e+000, + -8.030175e-001, + 1.103390e+000, + 1.429699e-001, + -2.211841e-001, + 5.620349e-003, + 1.693702e+000, + 7.084432e-001, + -1.946704e+000, + -1.512415e+000, + 3.559506e-001, + -1.318829e+000, + -3.063409e+000, + 6.250046e-001, + -1.490672e-002, + 1.414520e+000, + 1.317647e+000, + -7.123367e-001, + -1.133848e+000, + 1.064800e+000, + 2.217543e+000, + -1.247373e+000, + -2.105594e-001, + 2.261048e-002, + -3.648618e-001, + 1.147223e-001, + -7.979833e-001, + -5.546030e-001, + 7.765850e-001, + -4.676928e-003, + -5.014372e+000, + 3.694816e-001, + 2.373221e-003, + 6.783145e-001, + 7.862971e-001, + // albedo 1, turbidity 8 + -1.886599e+001, + -4.523457e+000, + -3.559445e+000, + 3.748747e+000, + -2.082711e-002, + 1.120505e-001, + 4.908827e-005, + 1.430333e+000, + 4.999603e-001, + -1.985552e+001, + -3.530040e+000, + 1.578922e+000, + -1.170838e+000, + -6.347814e-002, + 2.032158e-003, + -7.291357e-004, + 1.399338e+000, + 5.515394e-001, + 5.631541e-001, + -5.483754e+000, + -6.832337e-001, + 6.170499e-001, + -2.824393e-001, + 3.546810e-001, + 6.248420e-003, + 1.638520e+000, + 2.300717e-001, + -3.083195e+000, + -3.071409e-001, + 2.822360e-001, + -7.871125e-001, + 2.420642e-001, + -1.716096e-001, + -1.936307e-002, + 1.450902e+000, + 1.590291e+000, + 2.003824e-001, + -8.374106e-001, + 8.800366e-001, + 1.702679e+000, + -4.785357e+000, + 3.194078e-001, + 3.028099e-002, + 6.649245e-002, + -4.459174e-003, + -1.738851e+000, + -1.144728e+000, + 6.950894e-001, + 1.073870e+000, + -4.176611e+000, + 9.901497e-002, + 2.719362e-002, + 6.579628e-001, + 6.542088e-001, + // albedo 1, turbidity 9 + -1.842858e+001, + -4.464894e+000, + -4.876181e+000, + 4.999894e+000, + -1.680473e-002, + 9.284371e-002, + 8.631599e-005, + 1.551671e+000, + 8.637202e-001, + -1.946220e+001, + -2.928492e+000, + 1.932796e+000, + -2.009963e+000, + -2.067172e-002, + 2.760643e-001, + -1.316034e-003, + 1.910005e+000, + -2.057018e-002, + 1.012726e+000, + -6.397245e+000, + -8.570688e-001, + 9.466942e-001, + -2.428074e-001, + 4.505376e-002, + 1.159119e-002, + 1.686356e+000, + 7.885028e-001, + -3.502022e+000, + -9.795202e-002, + 3.286657e-001, + -8.318684e-001, + 1.254695e-001, + 9.600123e-002, + -3.501772e-002, + 1.161309e+000, + 1.205342e+000, + 7.024550e-001, + -6.903001e-001, + 7.519618e-001, + 1.501909e+000, + -4.224528e+000, + 1.253867e-001, + 5.829515e-002, + 2.671626e-001, + 3.030079e-001, + -2.056576e+000, + -1.583471e+000, + 7.947031e-001, + 2.224097e+000, + -4.127138e+000, + 1.885249e-001, + 1.729132e-005, + 3.336881e-001, + 5.332061e-001, + // albedo 1, turbidity 10 + -1.825745e+001, + -5.122861e+000, + -5.876715e+000, + 5.970876e+000, + -1.788919e-002, + 1.063934e-001, + 4.770037e-004, + 1.612403e+000, + 5.156506e-001, + -1.981828e+001, + -3.746331e+000, + 2.729783e+000, + -2.477317e+000, + -2.797536e-002, + -5.281985e-002, + -3.739083e-003, + 1.378246e+000, + 5.904024e-001, + 1.346751e+000, + -6.486837e+000, + -1.082622e+000, + 1.125524e+000, + -2.228944e-001, + 3.975587e-001, + 2.035973e-002, + 1.884664e+000, + 1.086023e-003, + -3.996320e+000, + -4.646476e-001, + 3.008639e-002, + -1.193861e+000, + 4.443960e-001, + -2.593178e-001, + -5.378377e-002, + 1.528777e+000, + 1.734923e+000, + 4.789259e-001, + -8.952042e-001, + 8.595191e-001, + 2.353988e+000, + -4.885398e+000, + 4.438339e-001, + 7.931163e-002, + -8.144393e-002, + 1.663921e-002, + -1.772626e+000, + -1.783205e+000, + 7.322534e-001, + 1.529827e+000, + -2.789303e+000, + -1.817210e-001, + 2.737502e-002, + 2.620216e-001, + 6.227585e-001, +}; + +double datasetRad320[] = +{ + // albedo 0, turbidity 1 + 9.282016e-004, + 3.169257e-004, + 5.255138e-003, + -1.465200e-002, + 7.187172e-002, + 5.400860e-002, + // albedo 0, turbidity 2 + 9.160628e-004, + 2.599956e-004, + 5.466998e-003, + -1.503537e-002, + 7.200167e-002, + 5.387713e-002, + // albedo 0, turbidity 3 + 9.148749e-004, + 2.164768e-004, + 5.576667e-003, + -1.537254e-002, + 7.215609e-002, + 5.380753e-002, + // albedo 0, turbidity 4 + 9.090685e-004, + 1.467840e-004, + 5.775870e-003, + -1.598491e-002, + 7.252530e-002, + 5.329870e-002, + // albedo 0, turbidity 5 + 8.902830e-004, + 1.126529e-004, + 5.945913e-003, + -1.648173e-002, + 7.220217e-002, + 5.391054e-002, + // albedo 0, turbidity 6 + 8.885423e-004, + 1.142350e-004, + 5.938903e-003, + -1.668800e-002, + 7.231405e-002, + 5.331532e-002, + // albedo 0, turbidity 7 + 8.674766e-004, + 3.506619e-005, + 6.176212e-003, + -1.732036e-002, + 7.223472e-002, + 5.318228e-002, + // albedo 0, turbidity 8 + 8.525095e-004, + -1.752028e-005, + 6.286417e-003, + -1.779286e-002, + 7.150222e-002, + 5.334072e-002, + // albedo 0, turbidity 9 + 8.232652e-004, + -1.292152e-004, + 6.645270e-003, + -1.886566e-002, + 7.052974e-002, + 5.331726e-002, + // albedo 0, turbidity 10 + 7.670001e-004, + -1.885989e-004, + 6.484739e-003, + -1.852036e-002, + 6.610758e-002, + 5.484068e-002, + // albedo 1, turbidity 1 + 1.105405e-003, + 2.555979e-005, + 7.984713e-003, + -2.152422e-002, + 8.452836e-002, + 9.622688e-002, + // albedo 1, turbidity 2 + 1.111427e-003, + -6.046059e-005, + 8.035207e-003, + -2.134768e-002, + 8.363698e-002, + 9.641842e-002, + // albedo 1, turbidity 3 + 1.103552e-003, + -8.229160e-005, + 8.170699e-003, + -2.189940e-002, + 8.404871e-002, + 9.504912e-002, + // albedo 1, turbidity 4 + 1.075129e-003, + -1.473970e-004, + 8.391094e-003, + -2.255482e-002, + 8.415497e-002, + 9.338994e-002, + // albedo 1, turbidity 5 + 1.036467e-003, + -1.328992e-004, + 8.348236e-003, + -2.256138e-002, + 8.304671e-002, + 9.263679e-002, + // albedo 1, turbidity 6 + 1.042383e-003, + -2.016636e-004, + 8.479624e-003, + -2.296524e-002, + 8.303746e-002, + 9.082494e-002, + // albedo 1, turbidity 7 + 1.014293e-003, + -2.355927e-004, + 8.551010e-003, + -2.333261e-002, + 8.258160e-002, + 8.873588e-002, + // albedo 1, turbidity 8 + 9.683336e-004, + -2.120256e-004, + 8.172046e-003, + -2.223973e-002, + 7.852279e-002, + 8.864017e-002, + // albedo 1, turbidity 9 + 9.139571e-004, + -2.688667e-004, + 8.068793e-003, + -2.224390e-002, + 7.590320e-002, + 8.464876e-002, + // albedo 1, turbidity 10 + 8.457855e-004, + -3.459869e-004, + 7.626953e-003, + -2.067614e-002, + 6.841363e-002, + 8.244103e-002, +}; + +double dataset360[] = +{ + // albedo 0, turbidity 1 + -2.974290e+000, + -1.670904e+000, + -5.183199e+000, + 5.377376e+000, + -2.904124e-002, + 2.486720e-001, + 8.045624e-005, + 1.889212e+000, + 5.188203e-001, + -2.638402e+000, + -1.651876e+000, + -1.229939e+000, + 1.776358e+000, + -6.372414e-002, + 3.767834e-001, + -6.475530e-004, + 1.373589e+000, + 4.349252e-001, + -2.449142e+000, + -1.541788e+000, + 4.629358e-001, + -1.149742e+000, + -7.317185e-002, + -2.422158e-001, + 3.667113e-003, + 3.146429e+000, + 6.725657e-001, + -8.559357e-001, + -5.054959e-001, + 4.334205e-001, + 4.254155e-001, + -2.920605e-001, + 9.303230e-001, + -1.212609e-002, + 4.498482e-001, + 2.117838e-001, + -1.098145e+000, + -5.123514e-001, + 7.773196e-001, + -1.325175e-001, + 4.648396e-001, + 1.386648e-001, + 2.427679e-002, + 1.199386e+000, + 7.988611e-001, + -1.124849e+000, + -5.693597e-001, + 7.315125e-001, + 2.986435e-002, + -4.536788e+000, + 6.650081e-001, + -9.004215e-007, + 1.006380e+000, + 4.999682e-001, + // albedo 0, turbidity 2 + -2.709497e+000, + -1.635812e+000, + -4.594177e+000, + 4.809336e+000, + -3.672907e-002, + 2.383111e-001, + 3.241989e-005, + 1.885505e+000, + 6.619619e-001, + -2.590279e+000, + -1.525236e+000, + -6.846073e-001, + 1.216080e+000, + -8.022814e-002, + 3.040074e-001, + -4.984576e-004, + 1.521429e+000, + 1.746040e-001, + -2.988403e+000, + -1.938687e+000, + 4.954649e-002, + -8.992325e-001, + -7.157111e-002, + -4.370068e-002, + 4.336645e-003, + 2.849496e+000, + 8.892788e-001, + -2.932084e-001, + -1.323910e-001, + 5.535910e-001, + 7.456284e-001, + -2.713400e-001, + 6.989175e-001, + -1.513162e-002, + 6.926848e-001, + 5.719944e-001, + -1.379400e+000, + -6.876864e-001, + 7.224534e-001, + -6.172704e-001, + 1.217500e-001, + 3.074795e-001, + 2.905167e-002, + 1.123563e+000, + 6.837510e-001, + -1.042446e+000, + -5.201193e-001, + 7.107656e-001, + 4.182566e-001, + -4.956238e+000, + 5.315425e-001, + 6.232999e-003, + 1.059015e+000, + 5.116427e-001, + // albedo 0, turbidity 3 + -2.686687e+000, + -1.615137e+000, + -3.811956e+000, + 4.018597e+000, + -3.953418e-002, + 2.171778e-001, + -7.374887e-006, + 1.875745e+000, + 8.996180e-001, + -3.049670e+000, + -1.775802e+000, + 2.577719e-002, + 5.331200e-001, + -9.424429e-002, + 3.852753e-001, + -8.678326e-005, + 1.347053e+000, + -1.078327e-001, + -2.414334e+000, + -1.637863e+000, + -3.948523e-001, + -4.867989e-001, + -1.545516e-001, + -2.045592e-001, + 2.308206e-003, + 3.257409e+000, + 1.029606e+000, + -6.821703e-001, + -3.665215e-001, + 7.496076e-001, + 5.391760e-001, + -2.903450e-001, + 8.498544e-001, + -1.388990e-002, + 2.126622e-001, + 6.857005e-001, + -1.227285e+000, + -5.958479e-001, + 5.828611e-001, + -4.050489e-001, + -2.935835e-001, + 1.410603e-001, + 4.352812e-002, + 1.406076e+000, + 4.955059e-001, + -1.080553e+000, + -5.308084e-001, + 6.980027e-001, + 2.193524e-001, + -5.007206e+000, + 5.895807e-001, + 1.122391e-002, + 1.052433e+000, + 6.643198e-001, + // albedo 0, turbidity 4 + -2.983088e+000, + -1.746025e+000, + -4.564198e+000, + 4.776145e+000, + -3.208607e-002, + 2.008358e-001, + -6.578048e-006, + 1.829880e+000, + 9.001069e-001, + -2.858023e+000, + -1.624623e+000, + 1.859497e+000, + -1.348577e+000, + -7.427284e-002, + 2.943068e-001, + -1.961205e-004, + 1.502334e+000, + -3.183648e-001, + -2.858102e+000, + -2.072804e+000, + -1.205584e+000, + 5.674135e-001, + -3.934144e-001, + -3.736288e-002, + 4.780332e-003, + 2.831298e+000, + 1.553942e+000, + -3.305766e-001, + -8.277591e-003, + 8.561917e-001, + -2.239172e-001, + 5.896697e-001, + 6.229823e-001, + -2.242577e-002, + 7.216263e-001, + 4.295956e-001, + -1.322728e+000, + -7.101315e-001, + 5.645563e-001, + 9.897384e-001, + -6.756374e+000, + 2.491515e-001, + 5.308124e-002, + 1.166258e+000, + 5.472501e-001, + -1.117086e+000, + -5.760006e-001, + 6.388217e-001, + 1.659290e-001, + -4.687099e+000, + 4.544540e-001, + 2.672063e-002, + 1.067777e+000, + 6.419825e-001, + // albedo 0, turbidity 5 + -2.943340e+000, + -1.779161e+000, + -3.715839e+000, + 3.949049e+000, + -4.499824e-002, + 2.234466e-001, + -8.091518e-006, + 1.825217e+000, + 9.000118e-001, + -3.717358e+000, + -1.850324e+000, + 2.277659e+000, + -2.027790e+000, + -1.240730e-001, + 3.029522e-001, + -2.176255e-004, + 1.585933e+000, + -2.794001e-001, + -2.439542e+000, + -2.277701e+000, + -1.702329e+000, + 2.025885e+000, + -1.142291e-001, + -2.011641e-001, + 5.563891e-003, + 2.424957e+000, + 1.399542e+000, + -1.562453e-001, + 5.099893e-001, + 1.026847e+000, + -2.516874e+000, + -2.212969e+000, + 9.252660e-001, + -2.696795e-002, + 1.443711e+000, + 7.450372e-001, + -1.579698e+000, + -1.110703e+000, + 4.743061e-001, + 4.160187e+000, + -4.597085e+000, + -2.112156e-001, + 6.791770e-002, + 6.131169e-001, + 2.291635e-001, + -9.959610e-001, + -4.119588e-001, + 5.707529e-001, + -3.505536e-003, + -4.253949e+000, + 7.498003e-001, + 8.246945e-003, + 1.397857e+000, + 8.021253e-001, + // albedo 0, turbidity 6 + -2.304734e+000, + -1.483605e+000, + -1.531059e+000, + 1.707306e+000, + -1.150367e-001, + 2.153063e-001, + -3.351533e-006, + 2.021261e+000, + 5.742842e-001, + -3.130477e+000, + -1.966839e+000, + 6.058600e-001, + -9.209976e-001, + -1.932901e-001, + 3.242645e-001, + 3.361262e-002, + 1.529938e+000, + 2.851152e-001, + -1.110129e+000, + -1.306323e+000, + -3.235833e-001, + 2.998748e+000, + -1.535927e-002, + -4.001906e-001, + -9.430492e-002, + 2.211086e+000, + 8.632200e-001, + -1.174540e+000, + 7.550161e-002, + -1.849588e-001, + -6.281432e+000, + -6.186665e+000, + 1.173048e+000, + 1.481656e-001, + 2.668578e+000, + 6.145923e-001, + -1.104583e+000, + -8.430389e-001, + 8.668416e-001, + 9.153752e+000, + -7.289540e-001, + -4.346537e-001, + -9.065784e-002, + 2.866983e-001, + 6.920973e-001, + -1.105893e+000, + -4.500399e-001, + 4.286451e-001, + 1.207864e+000, + -5.018291e+000, + 6.988292e-001, + 3.891745e-002, + 1.602324e+000, + 6.269169e-001, + // albedo 0, turbidity 7 + -3.709341e+000, + -2.038242e+000, + -3.127214e+000, + 3.287030e+000, + -4.565671e-002, + 2.427627e-001, + -7.503980e-006, + 1.817881e+000, + 9.000389e-001, + -3.393374e+000, + -1.710497e+000, + 1.661275e+000, + -1.388896e+000, + -1.012293e-001, + 1.676172e-001, + -5.719846e-004, + 1.694199e+000, + -3.140071e-001, + -2.812820e+000, + -2.678401e+000, + -1.170428e+000, + 1.560988e+000, + -4.488218e-001, + 1.088693e-001, + 1.391966e-002, + 2.144426e+000, + 1.525731e+000, + 2.547360e-001, + 8.840167e-001, + 5.469168e-001, + -2.615530e+000, + -1.048663e+000, + 4.823171e-001, + -5.958515e-002, + 1.842479e+000, + 5.322138e-001, + -1.612173e+000, + -1.055541e+000, + 4.733463e-001, + 5.083504e+000, + -5.558403e+000, + 8.029584e-002, + 1.294180e-001, + 7.807964e-001, + 3.949822e-001, + -1.098367e+000, + -5.550631e-001, + 4.221569e-001, + -1.661587e-003, + -4.970027e+000, + 3.479325e-001, + 4.503648e-002, + 1.369224e+000, + 6.753984e-001, + // albedo 0, turbidity 8 + -4.292777e+000, + -2.231300e+000, + -4.359252e+000, + 4.562131e+000, + -3.759725e-002, + 2.170783e-001, + -6.945269e-006, + 1.791630e+000, + 8.996451e-001, + -4.016595e+000, + -1.761175e+000, + 2.616213e+000, + -2.658657e+000, + -8.209207e-002, + 2.736152e-001, + -6.864170e-004, + 1.820262e+000, + -2.712707e-001, + -2.942646e+000, + -3.350329e+000, + -1.645817e+000, + 2.957424e+000, + -1.073783e-001, + -1.920050e-001, + 1.665992e-002, + 1.723144e+000, + 1.394962e+000, + 9.793627e-001, + 1.743715e+000, + 5.396545e-001, + -4.618273e+000, + -2.186669e+000, + 1.012973e+000, + -7.213786e-002, + 2.388103e+000, + 6.712519e-001, + -2.085434e+000, + -1.445755e+000, + 3.384806e-001, + 7.702938e+000, + -3.897179e+000, + -5.947697e-001, + 1.614194e-001, + 7.854754e-001, + 3.291034e-001, + -9.660466e-001, + -5.247410e-001, + 4.199048e-001, + -3.304707e-003, + -5.014144e+000, + 6.733599e-001, + 2.345161e-002, + 1.225739e+000, + 7.256834e-001, + // albedo 0, turbidity 9 + -3.950771e+000, + -2.192673e+000, + -7.263653e+000, + 7.343312e+000, + -1.840332e-002, + 1.893809e-001, + -3.583629e-006, + 1.901172e+000, + 5.902387e-001, + -6.384690e+000, + -2.515788e+000, + 3.874778e+000, + -3.776079e+000, + -3.484710e-002, + 3.311078e-001, + 8.248395e-003, + 1.612712e+000, + 3.123684e-001, + -6.207616e-001, + -2.681061e+000, + -2.005212e+000, + 2.445498e+000, + -1.935675e-001, + -1.988856e-001, + -1.553754e-002, + 2.210740e+000, + 6.507040e-001, + -1.241493e+000, + 5.908170e-001, + 3.899777e-001, + -2.344038e+000, + -1.820327e-001, + 7.889592e-001, + -1.468064e-002, + 1.586758e+000, + 1.007885e+000, + -4.395130e-001, + -3.700611e-001, + 2.452754e-001, + 3.602006e+000, + -4.692896e+000, + -8.620746e-002, + 1.418548e-001, + 1.521301e+000, + 3.989756e-001, + -1.794977e+000, + -1.190586e+000, + 3.928989e-001, + 1.946953e+000, + -1.874118e+000, + -3.292602e-002, + 2.983309e-002, + 6.737092e-001, + 7.322706e-001, + // albedo 0, turbidity 10 + -8.896186e+000, + -3.278330e+000, + -7.998349e+000, + 8.023312e+000, + -1.357555e-002, + 1.947910e-001, + -5.390226e-006, + 1.798414e+000, + 7.881395e-001, + -8.040403e+000, + -2.528514e+000, + 3.774303e+000, + -3.590457e+000, + -3.551313e-002, + 3.650761e-001, + -4.401382e-004, + 1.701545e+000, + -6.992899e-003, + -4.150010e-001, + -3.539507e+000, + -1.527733e+000, + 1.415242e+000, + -1.831476e-001, + -3.009746e-001, + 1.211955e-002, + 2.365976e+000, + 9.928240e-001, + -2.090923e+000, + 1.673638e-001, + -2.183495e-001, + -8.374584e-001, + 2.774184e-002, + 7.912769e-001, + -6.650609e-002, + 1.154446e+000, + 7.863979e-001, + 5.115239e-001, + 2.415831e-001, + 4.022318e-001, + 2.292950e+000, + -4.061496e+000, + 7.453182e-002, + 1.902451e-001, + 1.587339e+000, + 5.207620e-001, + -2.334879e+000, + -1.642495e+000, + 2.384458e-001, + 3.068363e+000, + -1.699588e+000, + -3.936924e-001, + 3.028660e-002, + 4.715374e-001, + 7.091893e-001, + // albedo 1, turbidity 1 + -2.375941e+000, + -1.508643e+000, + -5.070151e+000, + 5.509378e+000, + -2.915769e-002, + 2.122471e-001, + 8.584007e-005, + 1.517285e+000, + 5.163253e-001, + -2.605398e+000, + -1.589160e+000, + -1.137560e+000, + 1.827729e+000, + -4.939637e-002, + 3.243952e-001, + -6.464612e-004, + 1.008816e+000, + 4.568463e-001, + -2.176260e+000, + -1.601522e+000, + 7.060324e-001, + -1.060717e+000, + -5.144614e-002, + -1.938031e-001, + 3.449257e-003, + 2.641594e+000, + 5.976852e-001, + -7.365744e-001, + -3.720296e-001, + 7.315328e-001, + 3.156067e-001, + -2.739385e-001, + 8.252942e-001, + -1.055013e-002, + 7.327610e-002, + 3.218251e-001, + -1.017537e+000, + -4.631811e-001, + 1.093174e+000, + -7.215941e-002, + 5.408457e-001, + -1.848322e-002, + 1.942990e-002, + 6.882763e-001, + 7.268524e-001, + -1.025215e+000, + -3.712574e-001, + 9.661278e-001, + 7.791398e-003, + -4.508617e+000, + 4.371074e-001, + -1.241898e-006, + 1.152655e+000, + 5.008240e-001, + // albedo 1, turbidity 2 + -2.621793e+000, + -1.611544e+000, + -4.494730e+000, + 4.902741e+000, + -2.935751e-002, + 1.930048e-001, + 1.821579e-005, + 1.522018e+000, + 6.563013e-001, + -2.473330e+000, + -1.495083e+000, + -5.536781e-001, + 1.305457e+000, + -7.261347e-002, + 2.967738e-001, + -2.858526e-004, + 1.132650e+000, + 1.737068e-001, + -2.843519e+000, + -1.913751e+000, + 2.006296e-001, + -8.580922e-001, + -5.273753e-002, + -7.800250e-002, + 2.395781e-003, + 2.505017e+000, + 9.023934e-001, + -1.805184e-001, + -3.670063e-002, + 7.583717e-001, + 7.594739e-001, + -2.092951e-001, + 6.278666e-001, + -8.086828e-003, + 4.136002e-001, + 6.026937e-001, + -1.274753e+000, + -5.831501e-001, + 9.711756e-001, + -6.209175e-001, + 1.488633e-001, + 2.117108e-001, + 1.531499e-002, + 9.306008e-001, + 7.201852e-001, + -9.224434e-001, + -3.344822e-001, + 9.964647e-001, + 3.991735e-001, + -4.951439e+000, + 4.332347e-001, + -1.082832e-005, + 9.570977e-001, + 5.221054e-001, + // albedo 1, turbidity 3 + -2.648100e+000, + -1.587720e+000, + -3.738681e+000, + 4.084015e+000, + -3.301163e-002, + 1.736140e-001, + -5.598265e-006, + 1.628176e+000, + 8.967917e-001, + -3.004556e+000, + -1.702983e+000, + 1.060112e-001, + 5.816666e-001, + -8.140777e-002, + 3.584557e-001, + -7.793874e-005, + 1.090228e+000, + -1.079451e-001, + -2.337937e+000, + -1.584523e+000, + -2.912486e-001, + -4.467895e-001, + -9.195281e-002, + -2.355753e-001, + 1.887118e-003, + 3.053238e+000, + 1.043382e+000, + -5.985994e-001, + -2.846782e-001, + 8.903642e-001, + 5.578845e-001, + -2.510042e-001, + 8.033778e-001, + -9.920460e-003, + 7.388584e-002, + 7.097127e-001, + -1.155357e+000, + -4.638306e-001, + 8.041892e-001, + -4.051351e-001, + -2.819435e-001, + 8.505708e-002, + 2.749222e-002, + 1.334820e+000, + 5.216620e-001, + -1.010658e+000, + -3.816787e-001, + 9.644918e-001, + 2.144477e-001, + -5.005667e+000, + 5.475125e-001, + 3.758162e-005, + 1.033427e+000, + 6.866266e-001, + // albedo 1, turbidity 4 + -2.686681e+000, + -1.694114e+000, + -4.346908e+000, + 4.745876e+000, + -2.879846e-002, + 2.237339e-001, + -6.438656e-006, + 1.456353e+000, + 9.000340e-001, + -2.684912e+000, + -1.616888e+000, + 2.447798e+000, + -1.626883e+000, + -7.346183e-002, + 2.641722e-001, + -1.001518e-004, + 1.045501e+000, + -2.314856e-001, + -2.587652e+000, + -1.999748e+000, + -1.325810e+000, + 7.561102e-001, + -4.182131e-001, + -4.285017e-002, + 2.719759e-003, + 2.420598e+000, + 1.281981e+000, + -2.679506e-001, + 5.139740e-002, + 1.276587e+000, + -2.286956e-001, + 7.388924e-001, + 5.606395e-001, + -1.472508e-002, + 5.105614e-001, + 7.670396e-001, + -1.267160e+000, + -7.441021e-001, + 9.154665e-001, + 8.190436e-001, + -6.805266e+000, + 1.013064e-001, + 4.140297e-002, + 3.378301e-001, + 3.128860e-001, + -9.570978e-001, + -3.478847e-001, + 9.709923e-001, + -3.444499e-003, + -4.677921e+000, + 3.551546e-001, + 6.241534e-003, + 1.052060e+000, + 7.543152e-001, + // albedo 1, turbidity 5 + -3.093830e+000, + -1.859478e+000, + -4.003711e+000, + 4.391665e+000, + -3.051581e-002, + 2.180265e-001, + -7.401285e-006, + 1.448366e+000, + 9.000549e-001, + -3.121106e+000, + -1.664385e+000, + 2.868256e+000, + -2.280292e+000, + -8.456847e-002, + 2.227469e-001, + -1.681252e-004, + 1.176332e+000, + -2.605895e-001, + -2.166025e+000, + -2.172663e+000, + -1.705862e+000, + 1.960864e+000, + -2.185020e-001, + 1.891067e-002, + 4.423413e-003, + 2.071931e+000, + 1.297661e+000, + -5.263078e-001, + 2.296403e-001, + 1.342025e+000, + -2.034590e+000, + -1.024013e+000, + 4.873264e-001, + -1.982506e-002, + 9.818474e-001, + 1.040041e+000, + -1.138361e+000, + -8.186096e-001, + 8.845700e-001, + 3.291911e+000, + -5.915866e+000, + 1.125846e-001, + 4.477952e-002, + 9.195132e-002, + -1.138939e-002, + -1.013651e+000, + -3.811416e-001, + 9.420266e-001, + -3.599378e-003, + -4.895655e+000, + 2.864445e-001, + 1.940262e-002, + 1.026648e+000, + 7.421204e-001, + // albedo 1, turbidity 6 + -2.379373e+000, + -1.540348e+000, + -1.318467e+000, + 1.724703e+000, + -1.017147e-001, + 1.811106e-001, + -3.047951e-006, + 1.598808e+000, + 5.796580e-001, + -3.200327e+000, + -2.016985e+000, + 9.935187e-001, + -9.970906e-001, + -2.159523e-001, + 3.183812e-001, + 1.575987e-002, + 1.180131e+000, + 2.839510e-001, + -1.107956e+000, + -1.330969e+000, + -1.627216e-001, + 2.985435e+000, + -2.198633e-002, + -4.401148e-001, + -5.433064e-002, + 1.701087e+000, + 8.289746e-001, + -9.423359e-001, + 4.619106e-002, + 3.116348e-002, + -6.353122e+000, + -6.192769e+000, + 1.175886e+000, + 1.020452e-001, + 2.180417e+000, + 7.076018e-001, + -1.037343e+000, + -5.711080e-001, + 1.282899e+000, + 8.808032e+000, + -8.741903e-001, + -6.097972e-001, + -5.996612e-002, + 1.533313e-001, + 5.842877e-001, + -1.002208e+000, + -3.271512e-001, + 7.288675e-001, + 7.950560e-001, + -5.029931e+000, + 4.493639e-001, + 2.389923e-002, + 1.568465e+000, + 5.653910e-001, + // albedo 1, turbidity 7 + -3.584221e+000, + -2.140498e+000, + -5.324613e+000, + 5.753381e+000, + -2.662581e-002, + 2.099272e-001, + -6.879519e-006, + 1.362229e+000, + 9.000467e-001, + -3.579609e+000, + -1.804420e+000, + 3.448490e+000, + -2.929179e+000, + -6.009529e-002, + 2.821561e-001, + -6.203809e-004, + 1.312035e+000, + -3.013934e-001, + -2.053811e+000, + -2.420850e+000, + -1.795999e+000, + 1.835004e+000, + -3.451800e-001, + -1.042135e-001, + 1.511574e-002, + 1.751304e+000, + 1.491704e+000, + -2.602659e-001, + 5.963320e-001, + 1.059632e+000, + -1.214076e+000, + 6.424455e-001, + 6.890202e-001, + -6.544341e-002, + 1.457883e+000, + 5.321707e-001, + -1.266632e+000, + -8.504227e-001, + 8.680693e-001, + 1.899473e+000, + -8.680238e+000, + -1.798563e-001, + 1.477665e-001, + 2.430031e-001, + 4.229871e-001, + -1.021321e+000, + -5.129049e-001, + 9.006232e-001, + 1.534018e+000, + -3.672948e+000, + 2.301115e-001, + 5.151145e-003, + 7.460819e-001, + 5.418252e-001, + // albedo 1, turbidity 8 + -4.095186e+000, + -2.274183e+000, + -4.115160e+000, + 4.514741e+000, + -3.131440e-002, + 1.475658e-001, + -5.329133e-006, + 1.411833e+000, + 8.893477e-001, + -3.691554e+000, + -1.654418e+000, + 3.158573e+000, + -2.961366e+000, + -7.834161e-002, + 3.035141e-001, + -4.241191e-004, + 1.485200e+000, + -1.689443e-001, + -2.697067e+000, + -3.473351e+000, + -1.707297e+000, + 3.138823e+000, + -8.323430e-002, + -1.605972e-001, + 1.025052e-002, + 1.132282e+000, + 1.093318e+000, + 7.049827e-001, + 1.769870e+000, + 8.659868e-001, + -4.445404e+000, + -2.256134e+000, + 7.768538e-001, + -4.741793e-002, + 2.212406e+000, + 1.109562e+000, + -1.771411e+000, + -1.358270e+000, + 7.604506e-001, + 7.191590e+000, + -4.358366e+000, + -3.375251e-001, + 1.136852e-001, + 1.844576e-001, + -1.208189e-003, + -9.623648e-001, + -5.518470e-001, + 9.623684e-001, + -5.697517e-003, + -5.015884e+000, + 2.811964e-001, + 2.100168e-002, + 4.434131e-001, + 7.212648e-001, + // albedo 1, turbidity 9 + -5.131552e+000, + -2.558716e+000, + -8.066753e+000, + 8.403192e+000, + -1.450692e-002, + 1.494495e-001, + -2.898774e-006, + 1.427512e+000, + 5.020826e-001, + -6.192910e+000, + -2.261479e+000, + 5.059205e+000, + -4.892079e+000, + -2.703716e-002, + 3.381259e-001, + 2.231257e-002, + 1.490697e+000, + 5.441761e-001, + -6.741018e-001, + -3.356237e+000, + -2.207329e+000, + 3.300094e+000, + -1.801120e-001, + -2.560242e-001, + -6.216731e-002, + 1.180699e+000, + 2.241782e-001, + -8.312435e-001, + 1.325391e+000, + 5.324159e-001, + -2.912438e+000, + -8.384977e-002, + 7.600872e-001, + 7.749519e-002, + 2.129188e+000, + 1.328287e+000, + -7.455272e-001, + -8.504579e-001, + 9.021474e-001, + 3.426594e+000, + -4.607412e+000, + -1.706127e-001, + 4.792024e-002, + 2.354077e-001, + 2.718195e-001, + -1.448374e+000, + -9.739004e-001, + 8.801628e-001, + 1.705262e+000, + -2.420298e+000, + -1.077392e-002, + 2.691713e-002, + 1.854876e-001, + 7.097466e-001, + // albedo 1, turbidity 10 + -8.672396e+000, + -3.339107e+000, + -7.666257e+000, + 7.916291e+000, + -1.396976e-002, + 1.676538e-001, + -5.816416e-006, + 1.448247e+000, + 8.178892e-001, + -7.852799e+000, + -2.606120e+000, + 4.231840e+000, + -3.774406e+000, + -3.540722e-002, + 2.178494e-001, + 6.198617e-005, + 1.295236e+000, + 1.130678e-001, + -1.374103e-001, + -3.570476e+000, + -1.588768e+000, + 1.538806e+000, + -1.923629e-001, + -1.793545e-002, + 3.373950e-003, + 2.008581e+000, + 6.041668e-001, + -2.211224e+000, + 1.190704e-001, + 6.700025e-002, + -8.972445e-001, + 2.133056e-001, + 4.471730e-001, + -3.148150e-002, + 9.759721e-001, + 1.166537e+000, + 5.932825e-001, + 2.482606e-001, + 9.239617e-001, + 2.382787e+000, + -4.611846e+000, + 1.608983e-001, + 1.385590e-001, + 7.641781e-001, + 3.076032e-001, + -2.098394e+000, + -1.561705e+000, + 7.602298e-001, + 1.783879e+000, + -1.486238e+000, + -4.025919e-001, + 2.965074e-002, + -8.717180e-002, + 7.279518e-001, +}; + +double datasetRad360[] = +{ + // albedo 0, turbidity 1 + 2.494129e-003, + 3.556297e-003, + 2.965923e-004, + 2.713084e-003, + 1.335823e-001, + 8.293879e-002, + // albedo 0, turbidity 2 + 2.473622e-003, + 3.518055e-003, + 4.432438e-004, + 1.754027e-003, + 1.352516e-001, + 8.253805e-002, + // albedo 0, turbidity 3 + 2.485307e-003, + 3.507686e-003, + 4.235269e-004, + 1.120748e-003, + 1.360769e-001, + 8.328522e-002, + // albedo 0, turbidity 4 + 2.421491e-003, + 3.278595e-003, + 1.395344e-003, + -1.953245e-003, + 1.392978e-001, + 8.376885e-002, + // albedo 0, turbidity 5 + 2.403587e-003, + 3.114517e-003, + 2.224702e-003, + -5.305220e-003, + 1.435766e-001, + 8.315234e-002, + // albedo 0, turbidity 6 + 2.351950e-003, + 2.915308e-003, + 3.179213e-003, + -8.297787e-003, + 1.471589e-001, + 8.200387e-002, + // albedo 0, turbidity 7 + 2.347797e-003, + 2.761449e-003, + 3.671854e-003, + -1.012039e-002, + 1.480091e-001, + 8.399335e-002, + // albedo 0, turbidity 8 + 2.296250e-003, + 2.420416e-003, + 5.106803e-003, + -1.515460e-002, + 1.526421e-001, + 8.454641e-002, + // albedo 0, turbidity 9 + 2.193368e-003, + 1.826966e-003, + 7.606333e-003, + -2.312584e-002, + 1.588488e-001, + 8.547295e-002, + // albedo 0, turbidity 10 + 2.037533e-003, + 9.415569e-004, + 1.104382e-002, + -3.348390e-002, + 1.637893e-001, + 8.792408e-002, + // albedo 1, turbidity 1 + 3.061048e-003, + 2.126839e-003, + 1.132767e-002, + -2.788848e-002, + 1.948610e-001, + 1.618476e-001, + // albedo 1, turbidity 2 + 3.047180e-003, + 2.153513e-003, + 1.116935e-002, + -2.810228e-002, + 1.949994e-001, + 1.614103e-001, + // albedo 1, turbidity 3 + 3.038920e-003, + 2.051613e-003, + 1.130934e-002, + -2.861029e-002, + 1.941964e-001, + 1.617911e-001, + // albedo 1, turbidity 4 + 2.963024e-003, + 1.869150e-003, + 1.189063e-002, + -3.088695e-002, + 1.962576e-001, + 1.593205e-001, + // albedo 1, turbidity 5 + 2.918936e-003, + 1.726267e-003, + 1.250792e-002, + -3.337994e-002, + 1.973927e-001, + 1.577752e-001, + // albedo 1, turbidity 6 + 2.855489e-003, + 1.647214e-003, + 1.256484e-002, + -3.387525e-002, + 1.965371e-001, + 1.571482e-001, + // albedo 1, turbidity 7 + 2.825443e-003, + 1.406555e-003, + 1.336433e-002, + -3.675617e-002, + 1.982073e-001, + 1.535780e-001, + // albedo 1, turbidity 8 + 2.678428e-003, + 1.109106e-003, + 1.431453e-002, + -4.011878e-002, + 1.979278e-001, + 1.510186e-001, + // albedo 1, turbidity 9 + 2.555750e-003, + 6.244779e-004, + 1.562522e-002, + -4.466841e-002, + 1.968517e-001, + 1.462399e-001, + // albedo 1, turbidity 10 + 2.323920e-003, + 1.300657e-004, + 1.663828e-002, + -4.826021e-002, + 1.889056e-001, + 1.427310e-001, +}; + +double dataset400[] = +{ + // albedo 0, turbidity 1 + -1.869600e+000, + -9.575785e-001, + -6.993871e+000, + 7.306207e+000, + -3.240320e-002, + 3.834949e-001, + 4.369976e-005, + 2.254773e+000, + 5.025988e-001, + -1.746138e+000, + -1.001117e+000, + -1.758295e+000, + 2.492931e+000, + -6.202861e-002, + 4.442043e-001, + -3.779550e-004, + 1.411622e+000, + 4.890101e-001, + -1.536453e+000, + -5.330479e-001, + 1.126830e+000, + -2.452367e+000, + -6.694842e-002, + -2.983825e-002, + 2.320196e-003, + 5.488905e+000, + 5.403856e-001, + -1.069780e+000, + -5.815078e-001, + 8.612956e-001, + 1.301347e+000, + -4.089489e-001, + 1.269432e+000, + -9.018004e-003, + -2.283572e+000, + 3.760374e-001, + -1.060384e+000, + -2.207518e-001, + 6.362691e-001, + -5.757237e-001, + 4.275177e-001, + 8.443714e-002, + 2.082596e-002, + 3.125040e+000, + 7.891611e-001, + -1.077246e+000, + -2.993040e-001, + 8.167430e-001, + 2.203982e-001, + -3.984213e+000, + 1.123699e+000, + 1.313138e-002, + 1.750491e+000, + 4.999653e-001, + // albedo 0, turbidity 2 + -1.752499e+000, + -9.053927e-001, + -1.080943e+001, + 1.110516e+001, + -2.092090e-002, + 3.348109e-001, + -8.432141e-006, + 2.326824e+000, + 9.000500e-001, + -1.888565e+000, + -1.067725e+000, + 1.491851e+000, + -7.934014e-001, + -4.853718e-002, + 5.346693e-001, + 9.170370e-005, + 1.397595e+000, + -3.635730e-001, + -1.471013e+000, + -5.497976e-001, + -4.310423e-001, + -8.787275e-001, + -9.206447e-002, + -1.490862e-001, + -4.078054e-005, + 5.442983e+000, + 1.757010e+000, + -1.061905e+000, + -5.429222e-001, + 1.412232e+000, + 8.460977e-001, + -2.973654e-001, + 1.357299e+000, + -5.347332e-003, + -2.444304e+000, + -3.363016e-002, + -1.071200e+000, + -2.263246e-001, + 3.639469e-001, + -6.109244e-001, + -2.484665e-001, + -7.097027e-002, + 4.735641e-002, + 3.445733e+000, + 8.486491e-001, + -1.081645e+000, + -3.128264e-001, + 8.436471e-001, + 3.884148e-001, + -5.004662e+000, + 1.137000e+000, + 1.500838e-002, + 1.585647e+000, + 5.832608e-001, + // albedo 0, turbidity 3 + -1.774187e+000, + -9.327599e-001, + -9.130103e+000, + 9.413272e+000, + -2.448089e-002, + 3.487996e-001, + -3.033497e-006, + 2.291071e+000, + 6.408360e-001, + -1.849342e+000, + -1.038735e+000, + 2.863013e+000, + -2.260302e+000, + -5.040252e-002, + 4.583723e-001, + 1.008690e-002, + 1.502617e+000, + 7.223351e-002, + -1.624679e+000, + -7.257060e-001, + -1.493033e+000, + 5.658415e-001, + -2.079847e-001, + -4.651180e-002, + -3.701743e-002, + 4.858534e+000, + 1.342775e+000, + -8.692395e-001, + -3.025565e-001, + 1.630221e+000, + -4.624355e-002, + 8.408669e-002, + 1.091981e+000, + 6.506253e-002, + -1.403006e+000, + 2.076066e-001, + -1.169258e+000, + -3.711802e-001, + 3.440155e-001, + -1.044556e-001, + -3.304858e+000, + 1.185883e-001, + 1.489352e-002, + 2.642598e+000, + 8.151882e-001, + -1.058391e+000, + -2.657785e-001, + 6.984363e-001, + 9.737578e-002, + -1.903943e+000, + 8.963329e-001, + 6.480860e-002, + 2.034024e+000, + 5.870424e-001, + // albedo 0, turbidity 4 + -1.898858e+000, + -1.031814e+000, + -9.726056e+000, + 1.000989e+001, + -2.125268e-002, + 3.569897e-001, + -2.706653e-006, + 2.147646e+000, + 5.982401e-001, + -2.136007e+000, + -1.206456e+000, + 3.801172e+000, + -3.254852e+000, + -4.516490e-002, + 4.001123e-001, + 2.151890e-002, + 1.481457e+000, + 1.444904e-001, + -1.355343e+000, + -6.736369e-001, + -2.052620e+000, + 1.298239e+000, + -1.986869e-001, + 6.321488e-002, + -6.792635e-002, + 4.482593e+000, + 1.322565e+000, + -9.063816e-001, + -1.873797e-001, + 1.559544e+000, + -2.631298e-001, + 5.988684e-002, + 9.375378e-001, + 9.681349e-002, + -6.480890e-001, + 2.362949e-001, + -1.170470e+000, + -3.968082e-001, + 2.266604e-001, + -2.018118e-001, + -3.768512e+000, + 9.706445e-002, + 6.046660e-002, + 2.723200e+000, + 7.968878e-001, + -1.085813e+000, + -3.519543e-001, + 7.537557e-001, + 3.003522e-001, + -1.811803e+000, + 7.945754e-001, + 5.293207e-002, + 1.335214e+000, + 6.385980e-001, + // albedo 0, turbidity 5 + -1.743240e+000, + -9.391727e-001, + -8.905876e+000, + 9.139326e+000, + -2.333803e-002, + 3.093783e-001, + -2.051734e-006, + 2.320564e+000, + 5.474845e-001, + -2.624196e+000, + -1.516703e+000, + 5.053093e+000, + -4.599198e+000, + -4.248730e-002, + 4.820250e-001, + 1.829762e-002, + 1.216991e+000, + 2.739806e-001, + -1.040612e+000, + -6.103044e-001, + -3.190021e+000, + 3.216574e+000, + -3.285978e-001, + -1.982489e-001, + -5.367025e-002, + 3.984414e+000, + 1.158312e+000, + -9.537244e-001, + -6.895800e-003, + 1.788307e+000, + -2.659655e+000, + 6.473584e-001, + 1.333544e+000, + 5.529579e-002, + 8.049825e-001, + 4.930209e-001, + -1.163791e+000, + -5.095388e-001, + 1.215079e-001, + 3.427998e+000, + -9.243257e+000, + -5.059496e-001, + 1.412681e-001, + 1.829389e+000, + 5.544610e-001, + -1.118058e+000, + -3.706501e-001, + 6.885180e-001, + -1.596776e-003, + -3.279613e+000, + 1.068229e+000, + 3.010797e-002, + 1.479756e+000, + 7.483765e-001, + // albedo 0, turbidity 6 + -1.811701e+000, + -1.002650e+000, + -9.194183e+000, + 9.469966e+000, + -2.224886e-002, + 3.237441e-001, + -2.632967e-006, + 2.168879e+000, + 5.952956e-001, + -2.746180e+000, + -1.592055e+000, + 4.225172e+000, + -3.929912e+000, + -3.866297e-002, + 3.982440e-001, + 3.812089e-002, + 1.390284e+000, + 1.922369e-001, + -9.558770e-001, + -6.401790e-001, + -2.117905e+000, + 2.293799e+000, + -2.226591e-001, + 6.151477e-002, + -1.223358e-001, + 3.475975e+000, + 1.124575e+000, + -9.065351e-001, + 1.443765e-001, + 7.871576e-001, + -1.631026e+000, + 1.537369e-001, + 8.353048e-001, + 1.849704e-001, + 1.650615e+000, + 4.473559e-001, + -1.180081e+000, + -5.441674e-001, + 3.963103e-001, + 1.375519e+000, + -4.882926e+000, + -9.391794e-004, + 6.455569e-002, + 1.774670e+000, + 6.989373e-001, + -1.128755e+000, + -3.892532e-001, + 5.327884e-001, + 1.825253e+000, + -2.335719e+000, + 5.863162e-001, + 5.535626e-002, + 1.452293e+000, + 6.920090e-001, + // albedo 0, turbidity 7 + -2.042064e+000, + -1.144943e+000, + -5.152625e+000, + 5.384535e+000, + -3.519943e-002, + 3.025845e-001, + -2.994849e-006, + 2.113418e+000, + 6.000255e-001, + -2.700541e+000, + -1.485611e+000, + 2.159154e+000, + -2.188608e+000, + -5.879735e-002, + 3.921779e-001, + 5.020849e-002, + 1.869923e+000, + 2.118398e-001, + -1.187417e+000, + -1.102630e+000, + -9.404690e-001, + 2.427532e+000, + -2.948903e-001, + -3.437257e-002, + -1.636446e-001, + 1.894926e+000, + 1.001327e+000, + -5.639857e-001, + 7.170770e-001, + -1.146502e-001, + -3.487513e+000, + -7.711076e-001, + 1.046031e+000, + 2.606854e-001, + 3.873520e+000, + 5.637980e-001, + -1.363103e+000, + -8.396317e-001, + 5.750351e-001, + 4.317766e+000, + -2.364722e+000, + -4.135433e-001, + 2.669162e-002, + 5.768700e-001, + 6.649078e-001, + -1.102449e+000, + -3.685043e-001, + 4.622549e-001, + -2.018634e-003, + -3.947538e+000, + 8.449276e-001, + 8.837036e-002, + 1.601304e+000, + 7.026980e-001, + // albedo 0, turbidity 8 + -2.314053e+000, + -1.314766e+000, + -7.125646e+000, + 7.357344e+000, + -2.585710e-002, + 2.863908e-001, + -2.425744e-006, + 2.039404e+000, + 5.594003e-001, + -2.630411e+000, + -1.404258e+000, + 3.675058e+000, + -3.804226e+000, + -4.249037e-002, + 3.486414e-001, + 5.675141e-002, + 1.944935e+000, + 2.880711e-001, + -1.884599e+000, + -1.657069e+000, + -1.731916e+000, + 3.034605e+000, + -1.746846e-001, + -1.559184e-002, + -1.600465e-001, + 1.915108e+000, + 9.460232e-001, + 6.351036e-002, + 1.061776e+000, + 1.195544e-002, + -3.018584e+000, + -5.618808e-001, + 1.008146e+000, + 2.013783e-001, + 3.212273e+000, + 6.523624e-001, + -1.672505e+000, + -9.752710e-001, + 5.282860e-001, + 3.776331e+000, + -4.325128e+000, + -4.384279e-001, + 1.352387e-001, + 8.847662e-001, + 5.717158e-001, + -1.007695e+000, + -3.840375e-001, + 3.463543e-001, + 2.848366e+000, + -2.105699e+000, + 4.636429e-001, + 2.800131e-002, + 1.306056e+000, + 7.618236e-001, + // albedo 0, turbidity 9 + -2.865406e+000, + -1.637174e+000, + -7.429613e+000, + 7.592861e+000, + -2.196505e-002, + 2.800873e-001, + -3.908530e-006, + 1.962505e+000, + 5.891464e-001, + -3.196334e+000, + -1.512711e+000, + 3.947880e+000, + -4.029796e+000, + -3.699620e-002, + 1.461452e-001, + 5.921432e-002, + 1.806132e+000, + 2.331816e-001, + -2.335492e+000, + -2.353032e+000, + -1.764665e+000, + 2.841986e+000, + -7.331326e-002, + 4.537047e-001, + -1.668000e-001, + 2.156269e+000, + 9.812486e-001, + 3.278911e-001, + 1.315177e+000, + -1.438189e-001, + -2.859630e+000, + -8.436262e-001, + 2.645711e-001, + 2.154409e-001, + 2.264493e+000, + 5.975203e-001, + -1.738015e+000, + -1.091057e+000, + 5.425696e-001, + 4.650166e+000, + -3.975190e+000, + 2.066035e-001, + 1.017332e-001, + 9.321625e-001, + 6.517783e-001, + -1.006457e+000, + -4.243112e-001, + 1.934952e-001, + 2.795030e+000, + -1.680697e+000, + -9.428375e-002, + 7.158314e-002, + 1.082383e+000, + 7.234775e-001, + // albedo 0, turbidity 10 + -4.195701e+000, + -2.171135e+000, + -5.278016e+000, + 5.393085e+000, + -2.419182e-002, + 2.050075e-001, + -3.797795e-006, + 1.853402e+000, + 6.912927e-001, + -4.119053e+000, + -1.648023e+000, + 2.332552e+000, + -2.173813e+000, + -6.442977e-002, + 2.188945e-001, + 3.548565e-002, + 1.792598e+000, + 4.162082e-002, + -4.016823e+000, + -3.599323e+000, + -6.179057e-001, + 6.454998e-001, + -9.913704e-002, + 2.770986e-001, + -9.265471e-002, + 2.227501e+000, + 1.179216e+000, + 1.066227e+000, + 1.392783e+000, + -9.653695e-001, + -5.471637e-001, + -8.500569e-001, + 4.678476e-001, + 8.760324e-002, + 1.564314e+000, + 4.885251e-001, + -1.855594e+000, + -1.029300e+000, + 8.521013e-001, + 3.975027e+000, + -3.806819e+000, + -2.044703e-002, + 1.757298e-001, + 7.790123e-001, + 6.918921e-001, + -1.014961e+000, + -6.014045e-001, + 1.926619e-002, + 2.357335e+000, + -1.312911e+000, + -8.783609e-002, + 7.739369e-002, + 7.356770e-001, + 7.042591e-001, + // albedo 1, turbidity 1 + -1.467874e+000, + -7.636581e-001, + -7.251111e+000, + 7.726558e+000, + -2.759341e-002, + 3.527534e-001, + 5.340629e-005, + 2.007747e+000, + 5.447487e-001, + -1.863242e+000, + -1.048209e+000, + -1.580541e+000, + 2.558030e+000, + -5.622126e-002, + 3.053960e-001, + -4.657733e-004, + 9.956390e-001, + 3.409087e-001, + -1.384101e+000, + -5.553588e-001, + 1.191974e+000, + -2.157512e+000, + -3.567589e-002, + 1.020018e-001, + 2.940191e-003, + 4.555372e+000, + 8.736043e-001, + -9.828878e-001, + -4.220161e-001, + 1.184916e+000, + 9.230716e-001, + -4.062756e-001, + 1.064980e+000, + -1.060088e-002, + -1.764815e+000, + 2.932808e-001, + -1.057001e+000, + -2.727017e-001, + 1.000018e+000, + -3.108668e-001, + 6.848382e-001, + -1.682596e-001, + 2.301218e-002, + 2.075821e+000, + 7.647327e-001, + -1.058165e+000, + -2.436130e-001, + 1.074414e+000, + 8.554434e-002, + -3.846431e+000, + 7.595465e-001, + 9.729528e-006, + 1.915942e+000, + 4.999612e-001, + // albedo 1, turbidity 2 + -1.610179e+000, + -8.336019e-001, + -1.443356e+001, + 1.492556e+001, + -1.381931e-002, + 2.902743e-001, + -7.665717e-006, + 1.981513e+000, + 9.000423e-001, + -2.004083e+000, + -1.148388e+000, + 3.747156e+000, + -2.808560e+000, + -3.298677e-002, + 4.224754e-001, + 4.166438e-004, + 8.792110e-001, + -2.321793e-001, + -1.178554e+000, + -5.064839e-001, + -1.117126e+000, + 2.815740e-001, + -7.068438e-002, + -3.031589e-002, + -3.468069e-003, + 4.539093e+000, + 1.385612e+000, + -1.091191e+000, + -4.200919e-001, + 1.826508e+000, + 7.131992e-002, + -1.883417e-001, + 1.061437e+000, + 1.311913e-002, + -1.972550e+000, + 2.511246e-001, + -9.987232e-001, + -2.073656e-001, + 7.443384e-001, + -7.245157e-002, + -5.588818e-001, + -1.364188e-001, + 2.023795e-002, + 2.829822e+000, + 7.230021e-001, + -1.075477e+000, + -2.556973e-001, + 1.051690e+000, + 3.075960e-002, + -1.895492e+000, + 6.408333e-001, + 2.109454e-002, + 1.891240e+000, + 5.652527e-001, + // albedo 1, turbidity 3 + -1.531711e+000, + -8.266123e-001, + -9.324763e+000, + 9.811491e+000, + -1.988560e-002, + 3.404598e-001, + -2.068369e-006, + 1.869307e+000, + 5.860842e-001, + -2.113444e+000, + -1.209106e+000, + 3.526508e+000, + -2.628730e+000, + -4.634065e-002, + 3.182739e-001, + 9.500212e-003, + 1.004871e+000, + 2.109968e-001, + -1.196720e+000, + -5.485073e-001, + -1.667136e+000, + 9.920197e-001, + -1.622954e-001, + 6.951315e-002, + -3.482877e-002, + 4.214632e+000, + 1.108967e+000, + -1.003096e+000, + -3.200944e-001, + 2.042427e+000, + -4.417822e-001, + -1.404599e-001, + 9.288535e-001, + 6.077264e-002, + -1.386737e+000, + 4.557129e-001, + -1.061048e+000, + -2.908451e-001, + 6.390633e-001, + 1.406786e-001, + -1.834706e+000, + -1.432145e-001, + 1.914080e-002, + 2.284516e+000, + 5.965839e-001, + -1.054623e+000, + -2.267971e-001, + 1.028491e+000, + -3.197518e-003, + -1.705329e+000, + 6.747358e-001, + 2.072713e-002, + 2.140509e+000, + 7.205824e-001, + // albedo 1, turbidity 4 + -1.610001e+000, + -8.622601e-001, + -1.060181e+001, + 1.106133e+001, + -1.648296e-002, + 2.590559e-001, + -1.904522e-006, + 1.930415e+000, + 6.006964e-001, + -2.308577e+000, + -1.440194e+000, + 2.937335e+000, + -2.093599e+000, + -3.430217e-002, + 3.427774e-001, + 2.590705e-002, + 5.673750e-001, + 1.250422e-001, + -9.441254e-001, + -3.064812e-001, + -8.895068e-001, + 2.815271e-001, + -8.036228e-002, + 1.867017e-001, + -7.809247e-002, + 4.774631e+000, + 1.391904e+000, + -1.214397e+000, + -5.423074e-001, + 1.361001e+000, + 1.782273e-001, + -3.648675e-001, + 7.181838e-001, + 1.135547e-001, + -1.935982e+000, + 1.820361e-001, + -9.377631e-001, + -1.533211e-001, + 8.439993e-001, + -3.893771e-001, + -2.564779e-001, + -6.742272e-002, + 2.255856e-002, + 2.780601e+000, + 7.972008e-001, + -1.101428e+000, + -3.069552e-001, + 9.687591e-001, + 4.500576e-001, + -4.912444e+000, + 5.398387e-001, + 3.638172e-002, + 1.582999e+000, + 6.425950e-001, + // albedo 1, turbidity 5 + -1.687541e+000, + -9.378170e-001, + -8.475686e+000, + 8.929279e+000, + -2.132746e-002, + 2.917650e-001, + -2.177239e-006, + 1.863407e+000, + 5.908179e-001, + -2.278432e+000, + -1.387936e+000, + 5.425292e+000, + -4.725025e+000, + -3.892912e-002, + 4.084727e-001, + 1.842665e-002, + 8.461986e-001, + 1.673366e-001, + -1.302702e+000, + -7.200083e-001, + -3.084331e+000, + 3.191487e+000, + -3.222828e-001, + -1.493849e-001, + -5.641672e-002, + 3.624218e+000, + 1.256086e+000, + -7.886965e-001, + -3.966453e-002, + 2.110076e+000, + -2.232935e+000, + 7.269719e-001, + 1.163410e+000, + 7.133744e-002, + -1.660119e-001, + 4.329084e-001, + -1.157760e+000, + -4.084596e-001, + 5.689088e-001, + 2.379590e+000, + -9.687743e+000, + -5.598487e-001, + 9.191895e-002, + 1.923047e+000, + 5.802927e-001, + -1.047250e+000, + -2.873072e-001, + 1.046858e+000, + 6.890046e-001, + -2.947892e+000, + 7.245997e-001, + 1.125227e-002, + 1.352625e+000, + 7.193979e-001, + // albedo 1, turbidity 6 + -1.643764e+000, + -9.086683e-001, + -8.750078e+000, + 9.165653e+000, + -2.025728e-002, + 2.737848e-001, + -2.240987e-006, + 1.943471e+000, + 5.731722e-001, + -2.473069e+000, + -1.505194e+000, + 5.448737e+000, + -4.863726e+000, + -3.662439e-002, + 1.938729e-001, + 4.741355e-002, + 8.586572e-001, + 2.284408e-001, + -1.232599e+000, + -7.896777e-001, + -3.056911e+000, + 3.546334e+000, + -1.948820e-001, + 3.344216e-001, + -1.376967e-001, + 3.029469e+000, + 1.120573e+000, + -6.095289e-001, + 2.745468e-001, + 1.809782e+000, + -2.593032e+000, + -1.710009e-002, + 5.537278e-001, + 1.935506e-001, + 1.259882e+000, + 4.970103e-001, + -1.324655e+000, + -6.255071e-001, + 6.240868e-001, + 2.021182e+000, + -5.876050e+000, + -1.507819e-001, + 3.301250e-002, + 1.142019e+000, + 5.986671e-001, + -9.888131e-001, + -2.584852e-001, + 1.052160e+000, + 7.264224e-001, + -2.563426e+000, + 5.494058e-001, + 1.821983e-002, + 1.277896e+000, + 7.557967e-001, + // albedo 1, turbidity 7 + -2.100689e+000, + -1.204431e+000, + -7.573121e+000, + 8.039632e+000, + -2.300526e-002, + 2.839214e-001, + -2.346958e-006, + 1.678847e+000, + 5.536303e-001, + -2.610610e+000, + -1.587799e+000, + 5.460928e+000, + -5.158708e+000, + -4.505650e-002, + 3.876929e-001, + 3.852459e-002, + 1.172854e+000, + 3.104745e-001, + -8.340903e-001, + -7.487965e-001, + -3.154774e+000, + 4.600448e+000, + -1.818975e-001, + -1.871764e-001, + -1.222094e-001, + 2.067197e+000, + 8.802127e-001, + -9.180308e-001, + 3.752197e-001, + 1.471125e+000, + -4.691789e+000, + -5.128294e-001, + 1.164707e+000, + 1.831224e-001, + 2.900937e+000, + 7.718397e-001, + -1.126819e+000, + -6.652330e-001, + 7.386065e-001, + 5.362044e+000, + -6.196453e+000, + -7.280092e-001, + 6.312604e-002, + 2.874666e-001, + 4.225580e-001, + -1.091610e+000, + -3.433417e-001, + 1.042206e+000, + 1.075776e-001, + -4.443940e+000, + 7.469895e-001, + 3.166247e-002, + 1.019495e+000, + 7.523771e-001, + // albedo 1, turbidity 8 + -2.234623e+000, + -1.310221e+000, + -8.525764e+000, + 8.932373e+000, + -1.814945e-002, + 2.615153e-001, + -2.992344e-006, + 1.672403e+000, + 5.897681e-001, + -2.566352e+000, + -1.472664e+000, + 5.894182e+000, + -5.619094e+000, + -3.204346e-002, + 2.993298e-001, + 4.281047e-002, + 1.303481e+000, + 2.453403e-001, + -1.577477e+000, + -1.491725e+000, + -3.065840e+000, + 4.446634e+000, + -1.689128e-001, + 9.559287e-002, + -1.384724e-001, + 1.778589e+000, + 9.159045e-001, + -2.747774e-001, + 8.787060e-001, + 1.071723e+000, + -4.169230e+000, + -3.029966e-001, + 6.326611e-001, + 2.145395e-001, + 2.611218e+000, + 7.082708e-001, + -1.433045e+000, + -8.939972e-001, + 8.538090e-001, + 4.481475e+000, + -5.978961e+000, + -1.608369e-001, + 5.335732e-002, + 3.510751e-001, + 5.421327e-001, + -9.961738e-001, + -3.023960e-001, + 9.152994e-001, + 2.936173e+000, + -2.311060e+000, + 1.216642e-001, + 2.844950e-002, + 9.492671e-001, + 6.929460e-001, + // albedo 1, turbidity 9 + -2.428587e+000, + -1.538689e+000, + -9.076712e+000, + 9.464050e+000, + -1.503392e-002, + 2.373401e-001, + -2.770103e-006, + 1.537508e+000, + 5.959289e-001, + -3.240872e+000, + -1.646067e+000, + 6.091797e+000, + -5.738481e+000, + -3.098072e-002, + 2.698026e-001, + 3.864212e-002, + 1.286514e+000, + 2.461153e-001, + -1.970987e+000, + -2.124015e+000, + -2.894000e+000, + 3.858260e+000, + -1.449222e-001, + 1.903898e-001, + -1.194017e-001, + 1.882566e+000, + 8.764452e-001, + 3.562238e-002, + 1.092427e+000, + 6.291668e-001, + -3.337396e+000, + -2.817141e-001, + 4.799828e-001, + 1.674350e-001, + 1.943489e+000, + 7.728749e-001, + -1.501790e+000, + -9.408520e-001, + 1.000954e+000, + 4.599103e+000, + -5.295662e+000, + -1.111397e-001, + 1.040124e-001, + 3.185557e-001, + 4.959400e-001, + -9.859417e-001, + -3.827367e-001, + 8.040930e-001, + 2.980678e+000, + -2.015582e+000, + -8.947514e-003, + 1.696367e-002, + 6.489501e-001, + 7.555598e-001, + // albedo 1, turbidity 10 + -3.758956e+000, + -2.159015e+000, + -7.207163e+000, + 7.516659e+000, + -1.643521e-002, + 2.465725e-001, + -4.045068e-006, + 1.471688e+000, + 6.687943e-001, + -4.635664e+000, + -1.766046e+000, + 4.282669e+000, + -4.058908e+000, + -2.908998e-002, + 1.202684e-001, + 3.167305e-002, + 1.450927e+000, + 8.171815e-002, + -3.458011e+000, + -3.657280e+000, + -1.484743e+000, + 2.264533e+000, + -1.033120e-001, + 4.282323e-001, + -8.387881e-002, + 1.687334e+000, + 1.130604e+000, + 9.673527e-001, + 1.500425e+000, + -3.604932e-001, + -2.050346e+000, + -3.778381e-001, + 2.416298e-001, + 8.439313e-002, + 1.458583e+000, + 5.816071e-001, + -1.808078e+000, + -1.089975e+000, + 1.291838e+000, + 5.144631e+000, + -5.047822e+000, + 4.301183e-002, + 1.426941e-001, + 1.187472e-001, + 6.145551e-001, + -8.399253e-001, + -3.832885e-001, + 6.306417e-001, + 2.179775e+000, + -1.492762e+000, + -1.682763e-001, + 4.109851e-002, + 4.221724e-001, + 7.086504e-001, +}; + +double datasetRad400[] = +{ + // albedo 0, turbidity 1 + 5.767645e-003, + 1.219302e-002, + -2.188467e-002, + 8.262275e-002, + 1.719839e-001, + 1.233791e-001, + // albedo 0, turbidity 2 + 5.661981e-003, + 1.258489e-002, + -2.324339e-002, + 8.372421e-002, + 1.730981e-001, + 1.255797e-001, + // albedo 0, turbidity 3 + 5.644031e-003, + 1.248986e-002, + -2.287316e-002, + 7.999388e-002, + 1.815345e-001, + 1.252983e-001, + // albedo 0, turbidity 4 + 5.479152e-003, + 1.215496e-002, + -2.122586e-002, + 7.189527e-002, + 1.962517e-001, + 1.245648e-001, + // albedo 0, turbidity 5 + 5.385972e-003, + 1.187505e-002, + -2.025911e-002, + 6.602510e-002, + 2.067312e-001, + 1.264910e-001, + // albedo 0, turbidity 6 + 5.319970e-003, + 1.160513e-002, + -1.904232e-002, + 6.030292e-002, + 2.158311e-001, + 1.261204e-001, + // albedo 0, turbidity 7 + 5.179289e-003, + 1.125842e-002, + -1.708641e-002, + 5.111365e-002, + 2.285030e-001, + 1.278260e-001, + // albedo 0, turbidity 8 + 4.994685e-003, + 1.025385e-002, + -1.254777e-002, + 3.429945e-002, + 2.490310e-001, + 1.302691e-001, + // albedo 0, turbidity 9 + 4.759538e-003, + 8.205142e-003, + -3.246300e-003, + 3.909938e-003, + 2.819549e-001, + 1.322430e-001, + // albedo 0, turbidity 10 + 4.412341e-003, + 4.910210e-003, + 1.040886e-002, + -3.627125e-002, + 3.147182e-001, + 1.409331e-001, + // albedo 1, turbidity 1 + 7.016633e-003, + 9.796846e-003, + -9.823849e-004, + 2.324224e-002, + 3.035010e-001, + 2.573850e-001, + // albedo 1, turbidity 2 + 6.984411e-003, + 9.584282e-003, + -5.945671e-004, + 2.061312e-002, + 3.090019e-001, + 2.547364e-001, + // albedo 1, turbidity 3 + 6.865141e-003, + 9.540856e-003, + -3.311701e-004, + 1.726495e-002, + 3.147099e-001, + 2.539552e-001, + // albedo 1, turbidity 4 + 6.701191e-003, + 9.352606e-003, + 3.392916e-004, + 1.159886e-002, + 3.228446e-001, + 2.530111e-001, + // albedo 1, turbidity 5 + 6.513679e-003, + 8.873317e-003, + 2.339520e-003, + 2.817964e-003, + 3.341256e-001, + 2.496316e-001, + // albedo 1, turbidity 6 + 6.405833e-003, + 8.466409e-003, + 3.661909e-003, + -3.045984e-003, + 3.414328e-001, + 2.464327e-001, + // albedo 1, turbidity 7 + 6.220899e-003, + 7.997469e-003, + 5.957591e-003, + -1.302863e-002, + 3.523355e-001, + 2.418785e-001, + // albedo 1, turbidity 8 + 5.912801e-003, + 6.826679e-003, + 1.008544e-002, + -2.771812e-002, + 3.640405e-001, + 2.386599e-001, + // albedo 1, turbidity 9 + 5.550967e-003, + 5.157051e-003, + 1.661696e-002, + -5.072656e-002, + 3.807009e-001, + 2.315489e-001, + // albedo 1, turbidity 10 + 5.011118e-003, + 2.636752e-003, + 2.499879e-002, + -7.576617e-002, + 3.828189e-001, + 2.328116e-001, +}; + +double dataset440[] = +{ + // albedo 0, turbidity 1 + -1.397312e+000, + -5.327311e-001, + -5.456059e+000, + 5.777674e+000, + -5.111575e-002, + 4.730804e-001, + 7.375500e-003, + 3.032806e+000, + 5.181890e-001, + -1.561639e+000, + -7.024946e-001, + -2.140322e+000, + 2.841761e+000, + -8.846023e-002, + 5.529005e-001, + 6.219344e-003, + 2.004212e+000, + 3.701256e-001, + -1.047473e+000, + -1.152734e-001, + 2.275873e+000, + -3.020347e+000, + -1.739218e-001, + 2.250142e-001, + -2.731776e-002, + 6.659723e+000, + 1.067495e+000, + -1.298483e+000, + -5.788209e-001, + 4.906412e-001, + 1.522576e+000, + -5.650061e-001, + 1.544707e+000, + 4.638003e-002, + -3.742019e+000, + 2.485397e-001, + -9.485899e-001, + -7.383610e-002, + 1.039247e+000, + -4.744931e-001, + -1.822357e-001, + 2.284415e-001, + -4.796962e-002, + 4.363935e+000, + 8.217971e-001, + -1.099082e+000, + -2.001688e-001, + 7.365077e-001, + 1.068489e-001, + -5.005434e+000, + 1.508145e+000, + 8.181497e-002, + 3.226865e+000, + 4.999418e-001, + // albedo 0, turbidity 2 + -1.416143e+000, + -5.515006e-001, + -7.045898e+000, + 7.448161e+000, + -4.504075e-002, + 5.055437e-001, + -1.378949e-006, + 2.955475e+000, + 6.184716e-001, + -1.698183e+000, + -8.272914e-001, + 9.984388e-001, + -2.511235e-001, + -9.262675e-002, + 5.681534e-001, + 5.377123e-003, + 1.631048e+000, + 1.137691e-001, + -9.234085e-001, + -2.165404e-002, + 6.483039e-002, + -8.535145e-001, + -2.497457e-001, + 1.695057e-001, + -3.410225e-002, + 6.726925e+000, + 1.331197e+000, + -1.265077e+000, + -5.034231e-001, + 1.196547e+000, + 3.666463e-001, + -3.960044e-001, + 1.404008e+000, + 1.129300e-001, + -2.644439e+000, + 1.103356e-001, + -1.008210e+000, + -1.455232e-001, + 7.347739e-001, + 2.462433e-002, + -2.534587e+000, + 3.088590e-001, + -6.687136e-002, + 3.786007e+000, + 9.578369e-001, + -1.076840e+000, + -1.851501e-001, + 7.341818e-001, + -2.658571e-003, + -5.001762e+000, + 1.275390e+000, + 1.277410e-001, + 3.223315e+000, + 5.147659e-001, + // albedo 0, turbidity 3 + -1.449526e+000, + -5.738159e-001, + -8.976383e+000, + 9.275142e+000, + -3.157845e-002, + 5.011970e-001, + -1.218363e-006, + 3.001006e+000, + 5.662190e-001, + -1.748840e+000, + -9.338946e-001, + 5.557460e-002, + 9.451626e-001, + -6.929558e-002, + 5.458365e-001, + 5.505399e-003, + 8.818793e-001, + 2.135274e-001, + -8.369988e-001, + 1.127967e-001, + 8.846958e-001, + -2.467908e+000, + -8.394011e-002, + 1.684067e-001, + -3.352743e-002, + 7.957386e+000, + 1.297777e+000, + -1.284515e+000, + -5.332365e-001, + 5.511261e-001, + 1.702784e+000, + -6.616281e-001, + 1.349449e+000, + 1.269152e-001, + -3.247373e+000, + 2.115827e-001, + -9.889637e-001, + -9.962819e-002, + 6.096776e-001, + -8.472749e-001, + 7.672924e-001, + 7.425160e-002, + 2.113714e-002, + 4.990637e+000, + 8.274585e-001, + -1.093910e+000, + -2.211349e-001, + 6.959659e-001, + 3.423174e-001, + -5.004213e+000, + 1.347201e+000, + 1.198192e-001, + 2.547517e+000, + 6.329489e-001, + // albedo 0, turbidity 4 + -1.394462e+000, + -5.287733e-001, + -8.095187e+000, + 8.076613e+000, + -1.275227e-002, + 1.916790e-001, + 4.741296e-002, + 3.145140e+000, + 5.071760e-001, + -2.234192e+000, + -1.437079e+000, + -5.734544e-001, + 1.248687e+000, + -4.136344e-002, + 7.671749e-001, + -1.273584e-002, + 4.751894e-001, + 4.116995e-001, + -4.063889e-001, + 4.920785e-001, + 3.865520e-001, + 2.254008e-001, + -1.618861e-001, + 1.950875e-001, + -8.622479e-002, + 3.836900e+000, + 1.108189e+000, + -1.366924e+000, + -4.557853e-001, + -6.731417e-001, + -3.011452e-001, + 2.413069e-001, + 1.404821e+000, + 1.920278e-001, + 6.394529e+000, + 4.219713e-001, + -9.128947e-001, + 1.980978e-002, + 5.119874e-001, + 8.027541e-002, + -3.680159e+000, + 6.597416e-001, + 3.853339e-002, + 3.969131e+000, + 8.351942e-001, + -1.162856e+000, + -3.606511e-001, + 7.055795e-001, + -2.702137e-003, + 4.777294e-001, + -7.722331e-001, + 3.446509e-001, + 1.186834e+000, + 5.118539e-001, + // albedo 0, turbidity 5 + -1.563353e+000, + -6.916347e-001, + -4.154766e+001, + 4.181703e+001, + -5.673370e-003, + 4.344900e-001, + 1.839829e-003, + 2.669278e+000, + 5.021266e-001, + -1.948172e+000, + -1.080669e+000, + 1.082552e+001, + -1.034262e+001, + -1.196421e-002, + 3.895739e-001, + 5.621831e-002, + 1.347130e+000, + 4.561106e-001, + -9.155219e-001, + -1.456265e-001, + -2.177275e+000, + 2.079788e+000, + -2.154465e-002, + 7.743816e-001, + -2.181642e-001, + 4.897704e+000, + 1.035464e+000, + -1.010898e+000, + -4.425431e-002, + 3.067880e-001, + -6.899235e-001, + -1.891895e-001, + 3.015686e-001, + 4.236422e-001, + 1.901582e+000, + 3.916662e-001, + -1.159005e+000, + -4.048136e-001, + 5.385745e-001, + 3.423651e-001, + 1.474365e-001, + 3.516065e-001, + 2.564260e-003, + 1.815518e+000, + 7.634079e-001, + -1.081675e+000, + -2.556981e-001, + 6.544471e-001, + 4.093649e-001, + -3.215201e+000, + 9.116400e-001, + 1.406660e-001, + 1.869407e+000, + 6.968119e-001, + // albedo 0, turbidity 6 + -1.561484e+000, + -7.153039e-001, + -1.623772e+001, + 1.650713e+001, + -1.394913e-002, + 4.467465e-001, + 9.613464e-004, + 2.564429e+000, + 5.363746e-001, + -2.308050e+000, + -1.314851e+000, + -1.484346e+000, + 1.928705e+000, + -2.164130e-002, + 2.817711e-001, + 7.177671e-002, + 1.146387e+000, + 3.025595e-001, + -4.886429e-001, + 8.279799e-002, + 2.432876e+000, + -2.276257e+000, + -4.799742e-002, + 9.362010e-001, + -2.753669e-001, + 4.784291e+000, + 1.180593e+000, + -1.306115e+000, + -1.759650e-001, + -1.392008e+000, + 3.119302e-001, + -2.268673e-001, + 8.336951e-002, + 5.250725e-001, + 2.534962e+000, + 2.800244e-001, + -1.016608e+000, + -3.429911e-001, + 5.659470e-001, + 9.044333e-001, + 7.387499e-002, + 4.267609e-001, + -4.165623e-002, + 1.452779e+000, + 8.409560e-001, + -1.127637e+000, + -2.854231e-001, + 4.933964e-001, + -3.379287e-003, + -1.181893e+000, + 8.164171e-001, + 1.910509e-001, + 1.979338e+000, + 6.658885e-001, + // albedo 0, turbidity 7 + -1.675310e+000, + -8.020443e-001, + -1.136130e+001, + 1.159861e+001, + -1.871156e-002, + 4.151400e-001, + -1.940992e-006, + 2.486322e+000, + 5.256426e-001, + -2.071301e+000, + -1.175325e+000, + 1.789426e+000, + -1.455233e+000, + -2.855906e-002, + 3.218745e-001, + 7.776969e-002, + 1.431615e+000, + 3.478887e-001, + -1.093503e+000, + -4.120496e-001, + -8.598647e-002, + 4.564844e-001, + -1.231980e-001, + 7.992132e-001, + -2.910745e-001, + 3.881502e+000, + 1.064658e+000, + -7.736128e-001, + 2.385498e-001, + -7.867818e-001, + -6.009723e-001, + -1.808566e-001, + -8.796429e-003, + 5.412620e-001, + 2.991552e+000, + 4.008143e-001, + -1.259083e+000, + -5.300975e-001, + 5.418031e-001, + 1.150966e+000, + -7.553821e-001, + 5.991000e-001, + -2.344718e-003, + 1.097939e+000, + 7.756612e-001, + -1.094148e+000, + -3.178958e-001, + 4.126954e-001, + 3.591106e-001, + -1.415744e+000, + 3.908399e-001, + 1.806147e-001, + 1.584959e+000, + 6.862009e-001, + // albedo 0, turbidity 8 + -1.815485e+000, + -9.306778e-001, + -1.249527e+001, + 1.271288e+001, + -1.497209e-002, + 3.576353e-001, + -2.464284e-006, + 2.326460e+000, + 5.655414e-001, + -2.225570e+000, + -1.213627e+000, + 6.082472e+000, + -5.907562e+000, + -2.446452e-002, + 2.113558e-001, + 7.708802e-002, + 1.647556e+000, + 2.416155e-001, + -1.439532e+000, + -8.666475e-001, + -2.734807e+000, + 3.355265e+000, + -1.311068e-001, + 1.048703e+000, + -2.887025e-001, + 3.419973e+000, + 1.146322e+000, + -5.599890e-001, + 4.437236e-001, + 1.582320e-001, + -2.000110e+000, + -2.859304e-001, + -5.600631e-001, + 5.382793e-001, + 1.986387e+000, + 3.455121e-001, + -1.319304e+000, + -6.466246e-001, + 5.684685e-001, + 2.050330e+000, + -2.796053e+000, + 1.001659e+000, + -1.161356e-002, + 9.737235e-001, + 8.101246e-001, + -1.097281e+000, + -3.336023e-001, + 1.781708e-001, + 1.733079e+000, + -1.378806e+000, + -1.870394e-001, + 1.997578e-001, + 1.456148e+000, + 6.791796e-001, + // albedo 0, turbidity 9 + -2.208666e+000, + -1.219745e+000, + -7.548669e+000, + 7.680830e+000, + -2.012473e-002, + 3.627866e-001, + -2.906182e-006, + 2.147138e+000, + 6.340095e-001, + -1.967348e+000, + -9.528057e-001, + 4.171590e+000, + -4.002838e+000, + -5.074552e-002, + 1.581866e-001, + 5.920106e-002, + 1.981564e+000, + 1.023257e-001, + -3.150304e+000, + -2.193706e+000, + -2.016165e+000, + 2.374337e+000, + -6.793058e-002, + 9.623811e-001, + -2.195022e-001, + 2.736885e+000, + 1.252161e+000, + 4.737094e-001, + 1.067875e+000, + -1.003861e-001, + -1.566752e+000, + -1.217264e+000, + -4.270598e-001, + 3.968055e-001, + 1.234108e+000, + 3.105789e-001, + -1.706975e+000, + -9.607442e-001, + 7.140098e-001, + 3.981202e+000, + -3.521433e+000, + 6.308820e-001, + 5.140937e-002, + 7.435120e-001, + 8.074305e-001, + -1.012042e+000, + -3.372525e-001, + 2.589450e-002, + 1.768224e+000, + -1.059990e+000, + -1.299077e-001, + 1.790337e-001, + 1.091012e+000, + 6.873854e-001, + // albedo 0, turbidity 10 + -2.912541e+000, + -1.677524e+000, + -3.843452e+000, + 3.954207e+000, + -3.414327e-002, + 2.945890e-001, + -4.245832e-006, + 1.934337e+000, + 7.258748e-001, + -1.567383e+000, + -8.279686e-001, + 1.690940e+000, + -1.413268e+000, + -1.216792e-001, + 7.332798e-002, + 4.862765e-002, + 2.034766e+000, + -5.041561e-002, + -6.058613e+000, + -3.509207e+000, + -6.312870e-001, + -4.558316e-002, + 6.168891e-002, + 8.153413e-001, + -1.686845e-001, + 2.670227e+000, + 1.362906e+000, + 1.347177e+000, + 9.821888e-001, + -9.242155e-001, + 5.851576e-001, + -1.897421e+000, + -2.729487e-002, + 2.866724e-001, + 7.306238e-001, + 2.792136e-001, + -1.810783e+000, + -1.027512e+000, + 1.216071e+000, + 5.270108e+000, + -3.887149e+000, + 6.193256e-002, + 2.774610e-002, + 1.484756e-001, + 8.033249e-001, + -9.801965e-001, + -3.375841e-001, + -3.004804e-001, + 1.385754e+000, + -6.834540e-001, + 5.827734e-002, + 2.268309e-001, + 1.028696e+000, + 6.797371e-001, + // albedo 1, turbidity 1 + -1.345260e+000, + -5.085528e-001, + -6.052009e+000, + 6.604590e+000, + -4.300752e-002, + 4.745234e-001, + 6.591457e-003, + 2.595142e+000, + 5.013653e-001, + -1.573525e+000, + -7.133524e-001, + -1.671346e+000, + 2.693205e+000, + -7.828763e-002, + 2.915699e-001, + 1.795879e-002, + 1.469445e+000, + 4.927472e-001, + -1.013665e+000, + -1.731419e-001, + 2.043423e+000, + -2.919634e+000, + -1.020807e-001, + 5.467619e-001, + -4.041481e-002, + 5.853992e+000, + 5.272064e-001, + -1.173191e+000, + -3.964683e-001, + 1.097258e+000, + 1.509973e+000, + -5.675641e-001, + 9.815927e-001, + 6.962319e-002, + -3.358210e+000, + 4.263117e-001, + -1.003507e+000, + -1.124908e-001, + 1.030642e+000, + -5.357088e-001, + 6.114201e-001, + 1.628414e-001, + -5.701497e-002, + 4.541126e+000, + 8.084996e-001, + -1.071959e+000, + -1.567262e-001, + 9.923029e-001, + 1.457160e-001, + -4.742907e+000, + 7.280970e-001, + 6.770360e-002, + 3.919300e+000, + 4.999529e-001, + // albedo 1, turbidity 2 + -1.399982e+000, + -5.538549e-001, + -6.983148e+000, + 7.513966e+000, + -3.358417e-002, + 3.667027e-001, + 1.158837e-002, + 2.499680e+000, + 5.598537e-001, + -1.602839e+000, + -7.835806e-001, + 1.200264e+000, + -1.454290e-001, + -7.431927e-002, + 5.374263e-001, + 9.505505e-004, + 1.096167e+000, + 2.185838e-001, + -9.587294e-001, + -6.134134e-002, + 2.234030e-001, + -8.115395e-001, + -2.344054e-001, + 2.018782e-001, + -4.192332e-002, + 6.331499e+000, + 1.353587e+000, + -1.166832e+000, + -4.057833e-001, + 1.461335e+000, + 3.165401e-001, + -3.245858e-001, + 1.199323e+000, + 1.100274e-001, + -2.727373e+000, + 5.329788e-002, + -1.023178e+000, + -1.351631e-001, + 9.944251e-001, + 2.103341e-002, + -2.460318e+000, + 5.136074e-003, + -5.267951e-002, + 4.097235e+000, + 9.388837e-001, + -1.071426e+000, + -1.726491e-001, + 1.048949e+000, + -2.624840e-003, + -4.993124e+000, + 6.621513e-001, + 7.801931e-002, + 3.227750e+000, + 5.363265e-001, + // albedo 1, turbidity 3 + -1.362723e+000, + -5.257224e-001, + -1.325130e+001, + 1.374641e+001, + -1.971887e-002, + 4.480379e-001, + -9.588735e-007, + 2.679516e+000, + 5.628531e-001, + -1.824466e+000, + -9.877790e-001, + 4.631069e+000, + -3.630521e+000, + -4.340325e-002, + 3.913450e-001, + 3.415899e-002, + 4.746800e-001, + 2.022772e-001, + -6.435267e-001, + 1.629762e-001, + -1.452097e+000, + 8.028761e-001, + -9.611017e-002, + 4.267105e-001, + -1.023573e-001, + 6.652106e+000, + 1.406057e+000, + -1.400277e+000, + -5.150235e-001, + 1.752017e+000, + -1.699743e-001, + -3.411643e-001, + 8.465596e-001, + 2.127075e-001, + -2.235971e+000, + 4.728189e-002, + -9.044866e-001, + -7.979493e-002, + 8.298122e-001, + -5.604698e-002, + -1.433761e+000, + 1.011757e-001, + -7.175544e-002, + 4.243075e+000, + 9.588179e-001, + -1.115618e+000, + -2.148000e-001, + 1.109081e+000, + 2.661209e-001, + -5.008111e+000, + 6.333048e-001, + 9.274718e-002, + 2.494529e+000, + 5.890657e-001, + // albedo 1, turbidity 4 + -1.389611e+000, + -5.579886e-001, + -1.045229e+001, + 1.092342e+001, + -2.282772e-002, + 4.054079e-001, + 2.781558e-003, + 2.578484e+000, + 5.372706e-001, + -1.893851e+000, + -1.116122e+000, + 2.111553e+000, + -8.775468e-001, + -5.640158e-002, + 5.399894e-001, + 1.929352e-002, + -5.585557e-002, + 2.870402e-001, + -7.015617e-001, + 1.884526e-001, + -1.660273e-001, + -8.785899e-001, + -5.471987e-002, + 1.787856e-001, + -9.958870e-002, + 7.207213e+000, + 1.277933e+000, + -1.279075e+000, + -4.794032e-001, + 9.037342e-001, + 6.225399e-001, + -6.592270e-001, + 9.474313e-001, + 2.524811e-001, + -2.485658e+000, + 2.050401e-001, + -9.744212e-001, + -9.899254e-002, + 9.474600e-001, + -2.536639e-001, + 5.390432e-001, + -8.465488e-002, + -3.140532e-002, + 4.512343e+000, + 8.530654e-001, + -1.093264e+000, + -2.115594e-001, + 9.876876e-001, + 7.531309e-002, + -5.003648e+000, + 6.719560e-001, + 1.111699e-001, + 2.412349e+000, + 6.482966e-001, + // albedo 1, turbidity 5 + -1.410458e+000, + -5.905263e-001, + -4.146328e+001, + 4.190254e+001, + -5.607421e-003, + 4.437719e-001, + -1.948391e-006, + 2.496743e+000, + 5.031933e-001, + -1.817258e+000, + -9.848495e-001, + 1.089217e+001, + -1.028029e+001, + -1.221684e-002, + 3.317008e-001, + 5.060062e-002, + 1.198443e+000, + 4.449482e-001, + -8.920534e-001, + -8.835804e-002, + -2.111594e+000, + 2.083599e+000, + -1.507800e-002, + 6.993567e-001, + -1.987686e-001, + 4.793539e+000, + 1.072586e+000, + -1.048633e+000, + -1.110825e-001, + 5.438710e-001, + -6.707296e-001, + -1.825365e-001, + 2.307221e-001, + 4.056218e-001, + 1.886912e+000, + 3.579576e-001, + -1.094223e+000, + -3.084727e-001, + 9.739595e-001, + 3.972140e-001, + 1.511647e-001, + 2.788218e-001, + -6.279180e-002, + 1.866444e+000, + 7.995203e-001, + -1.078162e+000, + -2.176197e-001, + 1.088756e+000, + 4.329413e-001, + -3.209490e+000, + 8.364785e-001, + 7.689785e-002, + 1.943182e+000, + 7.150615e-001, + // albedo 1, turbidity 6 + -1.455846e+000, + -6.322333e-001, + -1.618289e+001, + 1.656258e+001, + -1.280603e-002, + 4.130359e-001, + -9.061644e-007, + 2.461391e+000, + 5.315915e-001, + -2.222251e+000, + -1.233356e+000, + -1.454954e+000, + 1.957432e+000, + -1.730555e-002, + 2.418496e-001, + 7.240262e-002, + 1.061939e+000, + 3.148474e-001, + -4.536196e-001, + 1.457295e-001, + 2.483934e+000, + -2.244550e+000, + -4.593767e-002, + 8.967621e-001, + -2.712877e-001, + 4.732142e+000, + 1.188839e+000, + -1.277343e+000, + -2.046024e-001, + -1.229720e+000, + 3.977256e-001, + -2.209195e-001, + 6.033235e-002, + 5.267707e-001, + 2.536445e+000, + 2.759606e-001, + -1.029833e+000, + -2.979843e-001, + 8.742883e-001, + 1.037710e+000, + 1.350257e-001, + 4.066094e-001, + -1.376375e-001, + 1.500753e+000, + 8.676699e-001, + -1.095935e+000, + -2.211775e-001, + 9.320585e-001, + 8.955212e-002, + -1.113388e+000, + 7.909911e-001, + 1.393848e-001, + 2.057146e+000, + 6.699739e-001, + // albedo 1, turbidity 7 + -1.571831e+000, + -7.466353e-001, + -1.226063e+001, + 1.265995e+001, + -1.514083e-002, + 3.639653e-001, + -2.504287e-006, + 2.204454e+000, + 5.468861e-001, + -2.235398e+000, + -1.371434e+000, + 1.787996e+000, + -1.073965e+000, + -2.503530e-002, + 2.143584e-001, + 7.703453e-002, + 5.207181e-001, + 2.714312e-001, + -6.944677e-001, + -7.243136e-002, + -6.193104e-001, + 9.567440e-001, + -6.317194e-002, + 8.881508e-001, + -2.783301e-001, + 4.224532e+000, + 1.192802e+000, + -1.133391e+000, + -9.811942e-002, + 2.312721e-001, + -1.100585e+000, + -3.655097e-001, + 2.268787e-003, + 5.074358e-001, + 1.512457e+000, + 3.165593e-001, + -1.057051e+000, + -3.424797e-001, + 9.536822e-001, + 1.034064e+000, + 6.413292e-001, + 1.165363e-001, + -4.248128e-002, + 1.592803e+000, + 7.875911e-001, + -1.096695e+000, + -2.745143e-001, + 1.077920e+000, + -8.435082e-004, + -3.715956e+000, + 5.197900e-001, + 1.171467e-001, + 1.236912e+000, + 6.915287e-001, + // albedo 1, turbidity 8 + -1.711623e+000, + -9.023881e-001, + -9.799257e+000, + 1.022040e+001, + -1.708447e-002, + 3.309925e-001, + -3.241111e-006, + 1.932295e+000, + 5.844205e-001, + -2.351937e+000, + -1.340391e+000, + 6.329976e+000, + -6.054139e+000, + -2.843868e-002, + 2.298301e-001, + 7.698142e-002, + 1.109800e+000, + 1.863187e-001, + -1.141314e+000, + -6.670322e-001, + -3.262632e+000, + 4.551521e+000, + -8.614941e-002, + 8.058038e-001, + -2.791051e-001, + 3.084281e+000, + 1.236638e+000, + -7.950557e-001, + 2.489854e-001, + 9.966347e-001, + -3.391737e+000, + -7.235716e-001, + -2.155609e-001, + 5.126659e-001, + 1.452322e+000, + 2.882812e-001, + -1.182289e+000, + -5.192524e-001, + 9.672941e-001, + 3.091448e+000, + -4.193043e+000, + 4.051469e-001, + -5.708309e-002, + 9.386723e-001, + 8.208828e-001, + -1.080579e+000, + -2.918654e-001, + 9.499317e-001, + 2.856082e+000, + -2.256007e+000, + 1.377750e-002, + 1.012914e-001, + 9.716489e-001, + 6.832750e-001, + // albedo 1, turbidity 9 + -1.964781e+000, + -1.162652e+000, + -6.074737e+000, + 6.497797e+000, + -2.595660e-002, + 3.222936e-001, + -3.220871e-006, + 1.685891e+000, + 6.501551e-001, + -2.352213e+000, + -1.199539e+000, + 4.248376e+000, + -3.876965e+000, + -6.837923e-002, + 1.764412e-001, + 5.514810e-002, + 1.442736e+000, + 6.979575e-002, + -2.560247e+000, + -1.883591e+000, + -1.916723e+000, + 2.598994e+000, + -2.372381e-002, + 8.442578e-001, + -2.063113e-001, + 2.359942e+000, + 1.287838e+000, + 7.281064e-002, + 7.835433e-001, + 1.380748e-001, + -2.065580e+000, + -1.696648e+000, + -4.575316e-001, + 3.840004e-001, + 9.397056e-001, + 3.103904e-001, + -1.444446e+000, + -7.662151e-001, + 1.364103e+000, + 4.930232e+000, + -4.455564e+000, + 6.735458e-001, + -4.052978e-003, + 3.194173e-001, + 7.842959e-001, + -1.039666e+000, + -3.171617e-001, + 7.295920e-001, + 2.813846e+000, + -1.561230e+000, + -4.128303e-001, + 1.004149e-001, + 6.653613e-001, + 6.980277e-001, + // albedo 1, turbidity 10 + -2.999915e+000, + -1.721740e+000, + -4.796494e+000, + 5.021888e+000, + -2.163250e-002, + 3.309183e-001, + -4.051804e-006, + 1.645464e+000, + 7.145890e-001, + -1.673162e+000, + -1.056666e+000, + 3.209766e+000, + -2.559187e+000, + -7.456364e-002, + 6.215063e-002, + 4.469425e-002, + 1.242757e+000, + -1.580590e-002, + -5.775475e+000, + -3.239700e+000, + -1.356432e+000, + 1.099950e+000, + -9.497509e-002, + 7.121875e-001, + -1.656838e-001, + 2.553396e+000, + 1.286227e+000, + 1.241869e+000, + 6.671222e-001, + -4.156007e-001, + -8.167921e-001, + -1.037816e+000, + 5.950065e-002, + 3.114868e-001, + 6.414114e-001, + 3.677503e-001, + -1.580126e+000, + -7.852349e-001, + 1.749569e+000, + 5.987990e+000, + -5.075133e+000, + -4.693815e-002, + -5.106759e-002, + -9.755925e-001, + 7.440092e-001, + -9.732917e-001, + -1.939297e-001, + 2.709367e-001, + 1.352990e+000, + -9.040352e-001, + 5.181217e-003, + 2.302437e-001, + 1.506500e+000, + 6.840186e-001, +}; + +double datasetRad440[] = +{ + // albedo 0, turbidity 1 + 9.406889e-003, + 1.954373e-002, + -4.018205e-002, + 1.740051e-001, + 1.351020e-001, + 1.365376e-001, + // albedo 0, turbidity 2 + 9.206049e-003, + 2.042313e-002, + -4.377380e-002, + 1.787089e-001, + 1.388614e-001, + 1.384128e-001, + // albedo 0, turbidity 3 + 9.050889e-003, + 2.086396e-002, + -4.652916e-002, + 1.794829e-001, + 1.524222e-001, + 1.376563e-001, + // albedo 0, turbidity 4 + 8.656343e-003, + 2.210653e-002, + -5.212791e-002, + 1.836315e-001, + 1.663040e-001, + 1.419649e-001, + // albedo 0, turbidity 5 + 8.355466e-003, + 2.244975e-002, + -5.393078e-002, + 1.788056e-001, + 1.868417e-001, + 1.445069e-001, + // albedo 0, turbidity 6 + 8.187585e-003, + 2.235434e-002, + -5.291187e-002, + 1.693688e-001, + 2.073941e-001, + 1.424517e-001, + // albedo 0, turbidity 7 + 7.909229e-003, + 2.199365e-002, + -5.165975e-002, + 1.577725e-001, + 2.297489e-001, + 1.468516e-001, + // albedo 0, turbidity 8 + 7.580566e-003, + 2.048421e-002, + -4.471863e-002, + 1.277026e-001, + 2.737620e-001, + 1.497600e-001, + // albedo 0, turbidity 9 + 7.101943e-003, + 1.675094e-002, + -2.761544e-002, + 7.078506e-002, + 3.397147e-001, + 1.557184e-001, + // albedo 0, turbidity 10 + 6.525444e-003, + 1.090411e-002, + -1.995302e-003, + -8.176097e-003, + 4.124321e-001, + 1.714881e-001, + // albedo 1, turbidity 1 + 1.111702e-002, + 1.783998e-002, + -1.949635e-002, + 1.124970e-001, + 2.993330e-001, + 2.864943e-001, + // albedo 1, turbidity 2 + 1.099681e-002, + 1.809609e-002, + -2.099087e-002, + 1.131858e-001, + 3.057413e-001, + 2.866962e-001, + // albedo 1, turbidity 3 + 1.070017e-002, + 1.818573e-002, + -2.159895e-002, + 1.084494e-001, + 3.229180e-001, + 2.835407e-001, + // albedo 1, turbidity 4 + 1.032234e-002, + 1.871074e-002, + -2.469404e-002, + 1.069731e-001, + 3.380450e-001, + 2.864479e-001, + // albedo 1, turbidity 5 + 9.893912e-003, + 1.844953e-002, + -2.358500e-002, + 9.439551e-002, + 3.642566e-001, + 2.829554e-001, + // albedo 1, turbidity 6 + 9.650400e-003, + 1.877062e-002, + -2.542361e-002, + 9.189004e-002, + 3.720610e-001, + 2.856265e-001, + // albedo 1, turbidity 7 + 9.322628e-003, + 1.810055e-002, + -2.246559e-002, + 7.543314e-002, + 3.958251e-001, + 2.842134e-001, + // albedo 1, turbidity 8 + 8.842659e-003, + 1.604245e-002, + -1.397353e-002, + 4.233011e-002, + 4.358270e-001, + 2.789888e-001, + // albedo 1, turbidity 9 + 8.169168e-003, + 1.265551e-002, + 4.076399e-004, + -7.877623e-003, + 4.830048e-001, + 2.768485e-001, + // albedo 1, turbidity 10 + 7.383449e-003, + 7.340131e-003, + 2.094279e-002, + -7.138907e-002, + 5.217098e-001, + 2.803810e-001, +}; + +double dataset480[] = +{ + // albedo 0, turbidity 1 + -1.255072e+000, + -3.501170e-001, + -5.952795e+000, + 6.529723e+000, + -6.362962e-002, + 6.436422e-001, + 7.745270e-003, + 3.657426e+000, + 5.329375e-001, + -1.344988e+000, + -4.365880e-001, + -1.750961e+000, + 2.262943e+000, + -1.049983e-001, + 3.754288e-001, + 5.298712e-002, + 3.402851e+000, + 3.874229e-001, + -1.073402e+000, + -1.395260e-001, + 2.839003e+000, + -2.827315e+000, + -1.882090e-001, + 1.054349e+000, + -8.976330e-002, + 5.604794e+000, + 6.740510e-001, + -1.183711e+000, + -4.011868e-001, + 7.358740e-001, + 1.479436e+000, + -7.268596e-001, + 1.133998e+000, + 1.205942e-001, + -4.232970e+000, + 1.060586e+000, + -1.018668e+000, + -8.561816e-002, + 1.030241e+000, + -4.461392e-001, + 3.940284e-001, + 1.220382e+000, + -1.391238e-001, + 5.771847e+000, + 5.627180e-001, + -1.080081e+000, + -1.746769e-001, + 1.174843e+000, + 9.389450e-002, + -4.893194e+000, + 1.162505e+000, + 1.563406e-001, + 2.606800e+000, + 4.999990e-001, + // albedo 0, turbidity 2 + -1.268430e+000, + -3.752425e-001, + -8.504068e+000, + 9.021017e+000, + -4.092613e-002, + 6.553965e-001, + 8.607147e-003, + 3.444138e+000, + 5.600385e-001, + -1.459780e+000, + -5.882818e-001, + 1.800729e+000, + -9.674514e-001, + -8.308819e-002, + 4.453337e-001, + 4.086836e-002, + 1.853978e+000, + 2.818975e-001, + -8.680288e-001, + 1.148721e-001, + 3.161508e-001, + -1.524870e+000, + -1.921031e-001, + 6.496299e-001, + 4.422347e-004, + 8.241268e+000, + 9.821338e-001, + -1.277439e+000, + -4.550135e-001, + 1.088681e+000, + 1.552370e+000, + -6.184442e-001, + 1.386667e+000, + 1.035135e-001, + -3.331179e+000, + 5.236122e-001, + -9.964896e-001, + -9.832891e-002, + 9.746026e-001, + -9.125638e-001, + -7.457170e-001, + 9.111352e-001, + -7.027011e-002, + 4.669829e+000, + 7.455938e-001, + -1.083449e+000, + -1.686372e-001, + 1.003727e+000, + 4.085513e-001, + -4.725304e+000, + 1.112591e+000, + 1.855240e-001, + 3.038195e+000, + 5.969305e-001, + // albedo 0, turbidity 3 + -1.290677e+000, + -3.901158e-001, + -9.520695e+000, + 9.828711e+000, + -3.154131e-002, + 5.939314e-001, + 2.686840e-002, + 3.612397e+000, + 5.140176e-001, + -1.535002e+000, + -6.667464e-001, + 2.735758e-002, + 9.423936e-001, + -8.287240e-002, + 6.775029e-001, + 4.575744e-003, + 1.432097e+000, + 3.872415e-001, + -7.903104e-001, + 1.563438e-001, + -2.022567e-001, + -1.026670e+000, + 9.063977e-003, + 3.942033e-001, + -1.241980e-002, + 7.980026e+000, + 1.066191e+000, + -1.278947e+000, + -3.694875e-001, + 8.111792e-001, + 4.993027e-001, + -1.096772e+000, + 1.008837e+000, + 2.920972e-001, + -7.314209e-001, + 3.179440e-001, + -1.006667e+000, + -1.519095e-001, + 8.774664e-001, + -1.909283e-001, + 3.756189e+000, + 9.311862e-001, + -9.327427e-002, + 3.499747e+000, + 8.574583e-001, + -1.086931e+000, + -1.774734e-001, + 8.989024e-001, + 5.536469e-002, + -3.474034e+000, + 9.736834e-001, + 2.325787e-001, + 2.809427e+000, + 6.246481e-001, + // albedo 0, turbidity 4 + -1.346571e+000, + -4.451276e-001, + -2.373159e+001, + 2.408962e+001, + -1.225268e-002, + 5.720568e-001, + 1.636363e-002, + 3.288957e+000, + 5.104502e-001, + -1.607315e+000, + -7.416360e-001, + -5.233286e-001, + 1.169215e+000, + -2.350907e-002, + 4.942922e-001, + 3.544231e-002, + 1.659598e+000, + 3.959771e-001, + -8.259129e-001, + 9.305732e-002, + 4.864320e+000, + -5.585537e+000, + -4.428624e-002, + 7.540493e-001, + -1.060506e-001, + 6.548781e+000, + 1.138009e+000, + -1.204471e+000, + -2.620580e-001, + -2.637261e+000, + 3.057335e+000, + -1.226916e-001, + 5.657925e-001, + 4.446409e-001, + 1.136957e+000, + 2.881385e-001, + -1.035718e+000, + -2.116415e-001, + 1.288642e+000, + -3.834162e-001, + -9.488050e-002, + 7.404996e-001, + -6.538922e-002, + 2.336877e+000, + 8.612030e-001, + -1.087946e+000, + -1.841898e-001, + 4.491757e-001, + 1.691479e-001, + 1.022577e-001, + 9.202996e-001, + 2.926112e-001, + 2.844475e+000, + 6.452620e-001, + // albedo 0, turbidity 5 + -1.381782e+000, + -4.914069e-001, + -4.813999e+001, + 4.837634e+001, + -5.296025e-003, + 5.571609e-001, + 1.649034e-002, + 3.203385e+000, + 5.048069e-001, + -1.776157e+000, + -9.226583e-001, + 1.389662e+001, + -1.292490e+001, + -1.480095e-002, + 5.073308e-001, + 4.585849e-002, + 7.385206e-001, + 4.280887e-001, + -8.381948e-001, + 1.229315e-001, + -3.370527e+000, + 1.825510e+000, + -9.728251e-003, + 8.572929e-001, + -1.855299e-001, + 7.471741e+000, + 1.133190e+000, + -1.125194e+000, + -2.647028e-001, + 6.942391e-001, + 1.389102e+000, + -2.216447e-001, + 1.356485e-001, + 5.812792e-001, + -5.073865e-001, + 2.675490e-001, + -1.095144e+000, + -2.442208e-001, + 4.787687e-001, + -2.707940e+000, + 6.129627e-001, + 7.213058e-001, + -6.034254e-002, + 2.798703e+000, + 8.787214e-001, + -1.062019e+000, + -1.765309e-001, + 5.423897e-001, + 3.783099e+000, + -5.007038e+000, + 7.376299e-001, + 3.034085e-001, + 2.733411e+000, + 6.555070e-001, + // albedo 0, turbidity 6 + -1.390263e+000, + -5.185474e-001, + -1.630741e+001, + 1.654109e+001, + -1.499201e-002, + 5.661787e-001, + 1.452544e-002, + 3.046179e+000, + 5.026700e-001, + -1.935801e+000, + -9.953289e-001, + -1.483271e+000, + 1.913745e+000, + -2.518160e-002, + 4.593343e-001, + 4.285617e-002, + 1.448437e+000, + 4.509310e-001, + -7.547378e-001, + 2.590987e-002, + 2.480507e+000, + -2.271835e+000, + -5.259620e-002, + 9.001709e-001, + -2.024986e-001, + 4.958191e+000, + 1.036940e+000, + -1.157324e+000, + -1.198742e-001, + -1.440574e+000, + 3.070751e-001, + -1.807577e-001, + 4.059237e-002, + 6.210184e-001, + 2.425946e+000, + 3.828327e-001, + -1.065566e+000, + -3.139616e-001, + 5.715306e-001, + 8.053761e-001, + 1.396364e-001, + 4.009778e-001, + 5.681033e-003, + 1.354013e+000, + 7.861375e-001, + -1.095972e+000, + -2.178745e-001, + 4.681537e-001, + 1.235458e-001, + -1.084613e+000, + 1.006455e+000, + 2.754677e-001, + 2.239616e+000, + 6.954839e-001, + // albedo 0, turbidity 7 + -1.453150e+000, + -5.790574e-001, + -1.243832e+001, + 1.263425e+001, + -1.892784e-002, + 4.979177e-001, + 1.035899e-002, + 2.982682e+000, + 5.056256e-001, + -1.925518e+000, + -1.010928e+000, + 1.513827e+000, + -9.219873e-001, + -3.776925e-002, + 4.692652e-001, + 4.083023e-002, + 1.303495e+000, + 4.245150e-001, + -1.134311e+000, + -2.754710e-001, + -2.443212e-001, + 3.845396e-002, + -1.074645e-001, + 1.066657e+000, + -2.324557e-001, + 4.996897e+000, + 1.052268e+000, + -8.094396e-001, + 1.096826e-001, + -5.117072e-001, + -1.915992e-001, + -1.991693e-001, + -5.943341e-001, + 6.791986e-001, + 1.332014e+000, + 3.606306e-001, + -1.227889e+000, + -4.522793e-001, + 5.338266e-002, + 1.074118e+000, + 8.733709e-002, + 1.005448e+000, + -1.725176e-002, + 1.326110e+000, + 8.063751e-001, + -1.065450e+000, + -2.160134e-001, + 3.413994e-001, + 4.950303e-001, + -1.077199e+000, + 3.654185e-001, + 3.125819e-001, + 1.998536e+000, + 6.865917e-001, + // albedo 0, turbidity 8 + -1.594869e+000, + -7.366760e-001, + -1.252117e+001, + 1.275030e+001, + -1.697659e-002, + 4.892543e-001, + 2.831848e-003, + 2.542039e+000, + 5.457358e-001, + -1.980952e+000, + -9.910920e-001, + 6.178699e+000, + -5.888582e+000, + -3.099336e-002, + 3.859266e-001, + 4.511764e-002, + 1.839601e+000, + 2.791527e-001, + -1.766081e+000, + -8.995150e-001, + -2.712687e+000, + 3.263201e+000, + -1.840688e-001, + 1.305410e+000, + -2.675879e-001, + 3.647246e+000, + 1.168203e+000, + -3.742071e-001, + 4.678023e-001, + 6.371403e-002, + -2.016941e+000, + -2.723239e-001, + -1.446876e+000, + 7.533604e-001, + 1.131760e+000, + 2.537537e-001, + -1.380378e+000, + -6.406403e-001, + 7.018678e-001, + 2.032023e+000, + -2.393487e+000, + 1.930827e+000, + -1.260608e-001, + 7.634327e-001, + 8.870918e-001, + -1.088465e+000, + -2.971190e-001, + 1.411657e-001, + 1.879601e+000, + -1.310304e+000, + -7.045740e-001, + 3.313185e-001, + 1.264266e+000, + 6.534482e-001, + // albedo 0, turbidity 9 + -2.229949e+000, + -1.153733e+000, + -7.505783e+000, + 7.718722e+000, + -2.407129e-002, + 4.175820e-001, + 4.559186e-005, + 2.157318e+000, + 6.337774e-001, + -1.995509e+000, + -8.778717e-001, + 4.191031e+000, + -3.968507e+000, + -5.176872e-002, + 1.960357e-001, + 3.755797e-002, + 1.975436e+000, + 1.077053e-001, + -3.174785e+000, + -2.105130e+000, + -2.062230e+000, + 2.391786e+000, + -4.217147e-002, + 9.727297e-001, + -1.540078e-001, + 2.691773e+000, + 1.235189e+000, + 4.882832e-001, + 1.097365e+000, + -1.866214e-001, + -1.567231e+000, + -1.216396e+000, + -4.391280e-001, + 4.541998e-001, + 1.167636e+000, + 3.003642e-001, + -1.709118e+000, + -9.374505e-001, + 6.559000e-001, + 3.977860e+000, + -3.525762e+000, + 6.202828e-001, + 7.863257e-002, + 6.882512e-001, + 8.161696e-001, + -9.999977e-001, + -2.777886e-001, + 9.586687e-003, + 1.766813e+000, + -1.065121e+000, + -1.325963e-001, + 2.512239e-001, + 1.055043e+000, + 6.874661e-001, + // albedo 0, turbidity 10 + -2.932652e+000, + -1.609416e+000, + -3.825171e+000, + 3.969752e+000, + -3.638195e-002, + 3.557402e-001, + -4.379735e-006, + 1.927804e+000, + 7.278380e-001, + -1.591732e+000, + -7.579896e-001, + 1.711976e+000, + -1.369988e+000, + -1.107557e-001, + 1.237841e-001, + 1.548121e-002, + 2.024749e+000, + -4.315379e-002, + -6.085760e+000, + -3.429651e+000, + -6.780006e-001, + -1.902709e-002, + 6.566034e-002, + 8.329946e-001, + -1.012845e-001, + 2.617589e+000, + 1.342663e+000, + 1.335204e+000, + 1.035931e+000, + -1.008915e+000, + 5.915758e-001, + -1.907371e+000, + -3.568938e-002, + 3.295382e-001, + 6.546480e-001, + 2.435447e-001, + -1.800155e+000, + -1.010684e+000, + 1.160290e+000, + 5.269190e+000, + -3.895543e+000, + 5.274946e-002, + 3.971324e-002, + 8.769492e-002, + 8.252336e-001, + -9.843476e-001, + -3.014031e-001, + -3.167912e-001, + 1.384556e+000, + -6.881572e-001, + 5.617519e-002, + 2.805263e-001, + 9.930291e-001, + 6.783964e-001, + // albedo 1, turbidity 1 + -1.257325e+000, + -3.441598e-001, + -5.951667e+000, + 6.530618e+000, + -5.773033e-002, + 6.437990e-001, + 8.453838e-003, + 3.657343e+000, + 5.329715e-001, + -1.346061e+000, + -4.331978e-001, + -1.749638e+000, + 2.263845e+000, + -1.013807e-001, + 3.755084e-001, + 5.287214e-002, + 3.402954e+000, + 3.874047e-001, + -1.073983e+000, + -1.372222e-001, + 2.840388e+000, + -2.826616e+000, + -1.866609e-001, + 1.054193e+000, + -8.989038e-002, + 5.604984e+000, + 6.739811e-001, + -1.184707e+000, + -3.992543e-001, + 7.374377e-001, + 1.479838e+000, + -7.263903e-001, + 1.133619e+000, + 1.199206e-001, + -4.232702e+000, + 1.060412e+000, + -1.021623e+000, + -8.422241e-002, + 1.032293e+000, + -4.460168e-001, + 3.941239e-001, + 1.219939e+000, + -1.420884e-001, + 5.772239e+000, + 5.623142e-001, + -1.087791e+000, + -1.754873e-001, + 1.178006e+000, + 9.386850e-002, + -4.893184e+000, + 1.162164e+000, + 1.535543e-001, + 2.607460e+000, + 4.997706e-001, + // albedo 1, turbidity 2 + -1.251295e+000, + -3.651612e-001, + -9.950987e+000, + 1.058444e+001, + -3.065334e-002, + 5.979560e-001, + 1.817303e-002, + 3.132460e+000, + 5.458738e-001, + -1.374134e+000, + -5.079738e-001, + 2.333109e+000, + -1.251359e+000, + -7.802080e-002, + 3.182768e-001, + 3.746599e-002, + 1.963940e+000, + 2.733180e-001, + -9.862389e-001, + -2.441831e-002, + 2.657376e-001, + -1.054016e+000, + -8.576871e-002, + 7.356127e-001, + -4.711349e-002, + 6.677884e+000, + 1.206629e+000, + -1.140461e+000, + -3.212487e-001, + 1.547332e+000, + 9.031281e-001, + -8.421239e-001, + 1.166595e+000, + 1.643076e-001, + -2.534096e+000, + 1.884034e-001, + -1.049493e+000, + -1.256523e-001, + 1.205849e+000, + -3.649526e-001, + 8.075413e-001, + 3.421308e-001, + -1.173508e-001, + 4.535809e+000, + 9.497555e-001, + -1.063961e+000, + -1.336751e-001, + 1.173271e+000, + 1.016777e-001, + -4.093576e+000, + 4.559998e-001, + 1.519017e-001, + 4.153208e+000, + 5.324846e-001, + // albedo 1, turbidity 3 + -1.271751e+000, + -3.837936e-001, + -1.052025e+001, + 1.102826e+001, + -2.411879e-002, + 5.019991e-001, + 3.094786e-002, + 3.138107e+000, + 5.059631e-001, + -1.472034e+000, + -6.259760e-001, + -5.356154e-001, + 1.713500e+000, + -6.089970e-002, + 4.750716e-001, + 6.622428e-003, + 1.224931e+000, + 4.198087e-001, + -8.587401e-001, + 1.099859e-001, + 3.258521e-001, + -1.301658e+000, + -4.452458e-002, + 6.461336e-001, + -2.947489e-002, + 7.603712e+000, + 1.091511e+000, + -1.221875e+000, + -3.659269e-001, + 9.953072e-001, + 8.481237e-001, + -5.952235e-001, + 1.016442e+000, + 2.259940e-001, + -1.925411e+000, + 3.654292e-001, + -1.008105e+000, + -1.136472e-001, + 1.248935e+000, + -3.865165e-001, + 1.714619e+000, + -1.216223e-001, + -2.436842e-002, + 4.227455e+000, + 7.030495e-001, + -1.082262e+000, + -1.513279e-001, + 1.052383e+000, + 2.125686e-001, + -5.028093e-001, + 8.694047e-001, + 1.099128e-001, + 3.634467e+000, + 7.206727e-001, + // albedo 1, turbidity 4 + -1.310438e+000, + -4.332417e-001, + -2.812457e+001, + 2.859054e+001, + -7.241887e-003, + 4.123186e-001, + 2.839263e-002, + 2.866138e+000, + 5.063521e-001, + -1.598864e+000, + -7.787419e-001, + 4.189377e+000, + -3.122921e+000, + -1.896105e-002, + 6.071985e-001, + 1.999660e-002, + 7.039076e-001, + 4.125456e-001, + -7.834866e-001, + 1.890740e-001, + 1.102853e+000, + -1.842558e+000, + -3.985000e-002, + 6.423282e-001, + -1.131231e-001, + 7.222493e+000, + 1.177285e+000, + -1.244910e+000, + -3.668018e-001, + -2.083168e-001, + 1.051092e+000, + -1.483362e-001, + 4.066210e-001, + 4.623360e-001, + -1.971682e-001, + 2.178890e-001, + -1.010078e+000, + -1.593623e-001, + 1.747411e+000, + -6.961852e-002, + -1.503091e-001, + 5.439839e-001, + -1.874287e-001, + 2.074758e+000, + 9.133302e-001, + -1.086611e+000, + -1.529597e-001, + 4.548984e-001, + 2.836062e-001, + 4.168066e-001, + 3.953841e-001, + 2.451427e-001, + 3.799065e+000, + 6.288711e-001, + // albedo 1, turbidity 5 + -1.338369e+000, + -4.683873e-001, + -3.858110e+001, + 3.898823e+001, + -5.111812e-003, + 4.638476e-001, + 2.389163e-002, + 2.774207e+000, + 5.242274e-001, + -1.785780e+000, + -9.773633e-001, + 6.470331e+000, + -5.147348e+000, + -1.593592e-002, + 4.175720e-001, + 2.497956e-002, + 7.090702e-002, + 3.252744e-001, + -6.972735e-001, + 2.786524e-001, + 4.011350e-003, + -1.686706e+000, + -4.966516e-003, + 8.368703e-001, + -1.225606e-001, + 7.731542e+000, + 1.267577e+000, + -1.307129e+000, + -4.728119e-001, + 2.639424e-002, + 2.633155e+000, + -2.357439e-001, + 1.263362e-001, + 4.765765e-001, + -2.025027e+000, + 1.705113e-001, + -9.583414e-001, + -7.928834e-002, + 1.447497e+000, + -2.797571e+000, + 8.553597e-001, + 4.842942e-001, + -7.727878e-002, + 3.765006e+000, + 9.191738e-001, + -1.114040e+000, + -2.132678e-001, + 1.030931e+000, + 2.871507e+000, + -5.013319e+000, + 2.699945e-001, + 1.819978e-001, + 2.239642e+000, + 6.539653e-001, + // albedo 1, turbidity 6 + -1.393024e+000, + -5.200008e-001, + -1.941271e+001, + 1.986171e+001, + -1.212818e-002, + 5.019138e-001, + 7.897163e-003, + 2.696459e+000, + 5.258316e-001, + -1.831466e+000, + -1.018106e+000, + 3.204932e+000, + -2.139369e+000, + -2.441969e-002, + 3.191029e-001, + 5.563321e-002, + 1.320760e-001, + 3.265220e-001, + -7.994553e-001, + 1.337239e-001, + -1.563712e+000, + 7.392042e-001, + -3.136373e-002, + 1.008208e+000, + -1.988762e-001, + 6.626579e+000, + 1.223213e+000, + -1.159543e+000, + -2.836180e-001, + 1.057464e+000, + -3.647533e-001, + -2.513115e-001, + -1.995636e-001, + 5.943224e-001, + -4.865436e-001, + 2.279895e-001, + -1.044528e+000, + -2.152538e-001, + 1.023157e+000, + 5.599579e-002, + 6.321805e-001, + 5.155639e-001, + -1.111252e-001, + 2.282270e+000, + 8.647371e-001, + -1.092518e+000, + -1.865821e-001, + 1.057856e+000, + 3.491427e-001, + -2.631526e+000, + 3.584288e-001, + 2.191649e-001, + 2.389704e+000, + 6.765946e-001, + // albedo 1, turbidity 7 + -1.384989e+000, + -5.305700e-001, + -1.459855e+001, + 1.497673e+001, + -1.471976e-002, + 4.569028e-001, + 5.419006e-003, + 2.735360e+000, + 5.389891e-001, + -2.086660e+000, + -1.234696e+000, + 2.053196e+000, + -1.257012e+000, + -2.129117e-002, + 1.990309e-001, + 8.511032e-002, + -1.312659e-001, + 2.800139e-001, + -7.309069e-001, + 1.413931e-001, + -1.773938e-001, + 2.938820e-001, + -4.933601e-002, + 1.496853e+000, + -3.213358e-001, + 6.305852e+000, + 1.298086e+000, + -1.203529e+000, + -3.216432e-001, + -1.458970e-001, + -5.598789e-001, + -2.934068e-001, + -1.206192e+000, + 7.793654e-001, + -9.223710e-001, + 1.229360e-001, + -1.002538e+000, + -1.984480e-001, + 1.233954e+000, + 8.779171e-001, + 3.133737e-001, + 1.311239e+000, + -2.132532e-001, + 2.223702e+000, + 9.461065e-001, + -1.123572e+000, + -2.342682e-001, + 9.679089e-001, + -1.017991e-003, + -1.960819e+000, + -1.153680e-001, + 2.843114e-001, + 1.779831e+000, + 6.400916e-001, + // albedo 1, turbidity 8 + -1.537393e+000, + -6.924151e-001, + -1.239252e+001, + 1.285585e+001, + -1.666284e-002, + 4.429862e-001, + 2.398230e-003, + 2.210714e+000, + 5.509453e-001, + -1.817841e+000, + -9.662082e-001, + 6.281905e+000, + -5.778709e+000, + -3.131226e-002, + 3.074609e-001, + 4.530074e-002, + 1.409838e+000, + 2.538213e-001, + -1.790530e+000, + -8.332867e-001, + -2.605975e+000, + 3.383959e+000, + -1.685493e-001, + 1.307568e+000, + -2.569465e-001, + 3.272862e+000, + 1.247743e+000, + -3.808658e-001, + 3.525732e-001, + 3.897535e-001, + -2.085715e+000, + -1.845614e-001, + -1.470598e+000, + 7.033938e-001, + 8.475130e-001, + 1.758974e-001, + -1.374360e+000, + -5.517879e-001, + 1.276626e+000, + 1.821209e+000, + -2.480880e+000, + 1.866494e+000, + -1.649246e-001, + 6.333864e-001, + 9.339444e-001, + -1.024167e+000, + -2.097189e-001, + 8.424991e-001, + 1.767689e+000, + -1.312031e+000, + -8.191386e-001, + 2.156968e-001, + 1.201032e+000, + 6.593457e-001, + // albedo 1, turbidity 9 + -2.190652e+000, + -1.106580e+000, + -7.466636e+000, + 7.752518e+000, + -2.263662e-002, + 4.154878e-001, + -1.646586e-006, + 2.076563e+000, + 6.322611e-001, + -1.972368e+000, + -8.108244e-001, + 4.233742e+000, + -3.927321e+000, + -5.152609e-002, + 2.005285e-001, + 2.985984e-002, + 1.903602e+000, + 1.099985e-001, + -3.148093e+000, + -2.033135e+000, + -2.019650e+000, + 2.409779e+000, + -1.255187e-002, + 9.697956e-001, + -1.538080e-001, + 2.617071e+000, + 1.234755e+000, + 5.592882e-001, + 1.073057e+000, + -2.763735e-002, + -1.563728e+000, + -1.191791e+000, + -4.331798e-001, + 4.622361e-001, + 1.142664e+000, + 2.988891e-001, + -1.706427e+000, + -8.516236e-001, + 1.014996e+000, + 3.980336e+000, + -3.487485e+000, + 6.331985e-001, + -1.818380e-002, + 7.352340e-001, + 8.452629e-001, + -1.006197e+000, + -1.932306e-001, + 5.337019e-001, + 1.797637e+000, + -9.474717e-001, + -1.353274e-001, + 2.049954e-001, + 1.156100e+000, + 6.894153e-001, + // albedo 1, turbidity 10 + -2.473813e+000, + -1.478132e+000, + -3.492210e+000, + 3.805303e+000, + -3.251673e-002, + 3.621052e-001, + -6.447770e-006, + 1.596383e+000, + 8.551930e-001, + -1.494464e+000, + -7.635918e-001, + 2.071212e+000, + -1.536108e+000, + -1.369345e-001, + 1.287259e-001, + 2.147844e-002, + 1.753080e+000, + -2.246103e-001, + -6.305007e+000, + -3.323156e+000, + -7.099379e-001, + 1.686111e-001, + 1.080881e-001, + 8.729732e-001, + -1.291207e-001, + 2.282989e+000, + 1.475588e+000, + 1.325532e+000, + 5.765517e-001, + -7.011257e-001, + 7.720216e-001, + -2.013560e+000, + -1.990572e-001, + 3.922685e-001, + 9.898769e-003, + 1.789360e-001, + -1.590406e+000, + -7.529646e-001, + 1.930414e+000, + 5.169169e+000, + -4.221403e+000, + 4.614858e-002, + -9.527005e-002, + -7.894472e-001, + 8.458063e-001, + -1.005785e+000, + -2.286223e-001, + 3.330253e-001, + 1.438452e+000, + -7.701349e-001, + 2.780764e-002, + 2.630698e-001, + 8.329894e-001, + 6.747408e-001, +}; + +double datasetRad480[] = +{ + // albedo 0, turbidity 1 + 1.367487e-002, + 1.998477e-002, + -2.747378e-002, + 2.012913e-001, + 1.065803e-001, + 1.249226e-001, + // albedo 0, turbidity 2 + 1.319623e-002, + 2.233282e-002, + -3.838862e-002, + 2.216885e-001, + 1.032539e-001, + 1.308019e-001, + // albedo 0, turbidity 3 + 1.265118e-002, + 2.391819e-002, + -4.721677e-002, + 2.352182e-001, + 1.174476e-001, + 1.303906e-001, + // albedo 0, turbidity 4 + 1.204726e-002, + 2.745130e-002, + -6.437791e-002, + 2.605947e-001, + 1.298129e-001, + 1.378516e-001, + // albedo 0, turbidity 5 + 1.125691e-002, + 3.031033e-002, + -7.856070e-002, + 2.797308e-001, + 1.411425e-001, + 1.486601e-001, + // albedo 0, turbidity 6 + 1.087451e-002, + 3.134174e-002, + -8.308676e-002, + 2.793109e-001, + 1.610134e-001, + 1.502290e-001, + // albedo 0, turbidity 7 + 1.035757e-002, + 3.176437e-002, + -8.486370e-002, + 2.674373e-001, + 1.974534e-001, + 1.533206e-001, + // albedo 0, turbidity 8 + 9.649434e-003, + 3.087937e-002, + -8.067259e-002, + 2.353243e-001, + 2.553337e-001, + 1.608814e-001, + // albedo 0, turbidity 9 + 8.869346e-003, + 2.627497e-002, + -5.891488e-002, + 1.570602e-001, + 3.504762e-001, + 1.724148e-001, + // albedo 0, turbidity 10 + 8.105360e-003, + 1.756907e-002, + -2.001928e-002, + 3.536541e-002, + 4.692392e-001, + 1.926373e-001, + // albedo 1, turbidity 1 + 1.531497e-002, + 2.090118e-002, + -1.665041e-002, + 1.626765e-001, + 2.602854e-001, + 2.739350e-001, + // albedo 1, turbidity 2 + 1.500055e-002, + 2.258405e-002, + -2.517423e-002, + 1.780058e-001, + 2.604774e-001, + 2.803331e-001, + // albedo 1, turbidity 3 + 1.435727e-002, + 2.473634e-002, + -3.651251e-002, + 1.966627e-001, + 2.645889e-001, + 2.894029e-001, + // albedo 1, turbidity 4 + 1.368791e-002, + 2.602874e-002, + -4.462666e-002, + 2.008996e-001, + 2.978971e-001, + 2.872899e-001, + // albedo 1, turbidity 5 + 1.298035e-002, + 2.709110e-002, + -5.084570e-002, + 2.010066e-001, + 3.257828e-001, + 2.917322e-001, + // albedo 1, turbidity 6 + 1.267531e-002, + 2.752851e-002, + -5.364450e-002, + 1.962715e-001, + 3.472458e-001, + 2.928354e-001, + // albedo 1, turbidity 7 + 1.200196e-002, + 2.782022e-002, + -5.449978e-002, + 1.818445e-001, + 3.795420e-001, + 2.974612e-001, + // albedo 1, turbidity 8 + 1.115769e-002, + 2.603247e-002, + -4.606362e-002, + 1.383509e-001, + 4.427481e-001, + 2.969281e-001, + // albedo 1, turbidity 9 + 1.034375e-002, + 2.111036e-002, + -2.502615e-002, + 6.215948e-002, + 5.253192e-001, + 2.999927e-001, + // albedo 1, turbidity 10 + 9.270257e-003, + 1.252950e-002, + 1.085115e-002, + -5.004679e-002, + 6.169243e-001, + 3.053035e-001, +}; + +double dataset520[] = +{ + // albedo 0, turbidity 1 + -1.171338e+000, + -2.379456e-001, + -6.515446e+000, + 7.133235e+000, + -5.382867e-002, + 6.889982e-001, + 4.250983e-002, + 4.471437e+000, + 5.087463e-001, + -1.193029e+000, + -2.445141e-001, + -4.311723e-001, + 1.019354e+000, + -1.281643e-001, + 7.837279e-001, + 2.609613e-002, + 5.965800e+000, + 4.381607e-001, + -1.165299e+000, + -2.503239e-001, + 3.829843e+000, + -2.234083e+000, + -4.693988e-001, + 1.045109e+000, + -6.241707e-002, + 2.623310e-001, + 7.500398e-001, + -1.077288e+000, + -2.659342e-001, + -7.565678e-002, + 1.145086e+000, + -2.316655e-002, + 1.564941e+000, + 9.375322e-002, + -7.476929e-001, + 6.076913e-001, + -1.075530e+000, + -1.232648e-001, + 1.877081e+000, + -1.186427e-001, + -2.748628e+000, + 1.249377e+000, + -1.085780e-001, + 3.838331e+000, + 8.601227e-001, + -1.067002e+000, + -1.572453e-001, + 1.350156e+000, + 3.140948e-003, + -3.277283e+000, + 1.488404e+000, + 1.127058e-001, + 2.655730e+000, + 4.999138e-001, + // albedo 0, turbidity 2 + -1.175145e+000, + -2.454528e-001, + -8.173280e+000, + 8.622722e+000, + -3.895019e-002, + 6.739096e-001, + 6.622835e-002, + 4.450872e+000, + 5.061382e-001, + -1.226543e+000, + -2.979950e-001, + 3.102814e+000, + -2.662701e+000, + -1.012309e-001, + 5.142095e-001, + 4.939276e-002, + 5.007851e+000, + 4.179865e-001, + -1.075743e+000, + -1.267529e-001, + 1.017884e-001, + 4.839556e-001, + -4.025119e-001, + 1.120466e+000, + -5.059103e-002, + 3.601070e+000, + 1.104232e+000, + -1.104008e+000, + -2.079352e-001, + 1.094572e+000, + 1.147058e+000, + -1.516726e-001, + 1.526097e+000, + 1.922554e-001, + 4.060614e-001, + 2.975787e-001, + -1.080135e+000, + -1.942481e-001, + 1.409056e+000, + -3.800384e+000, + -7.125701e+000, + 9.731220e-001, + -7.312793e-002, + 2.377810e+000, + 9.223131e-001, + -1.066280e+000, + -1.421591e-001, + 1.272936e+000, + 7.891881e+000, + -3.626975e+000, + 1.294678e+000, + 1.331475e-001, + 2.986127e+000, + 5.316962e-001, + // albedo 0, turbidity 3 + -1.210057e+000, + -2.827640e-001, + -5.179186e+000, + 5.514430e+000, + -5.638504e-002, + 6.656727e-001, + 5.417868e-002, + 4.216550e+000, + 5.495231e-001, + -1.311087e+000, + -3.921139e-001, + 1.436554e+000, + -7.051260e-001, + -1.462714e-001, + 2.604620e-001, + 5.771570e-002, + 3.493766e+000, + 5.041164e-001, + -9.705912e-001, + -4.316197e-002, + 5.357225e-001, + -1.399982e+000, + -3.407923e-001, + 1.585242e+000, + -6.423039e-002, + 5.338193e+000, + 9.835385e-001, + -1.177697e+000, + -1.893604e-001, + -5.207247e-002, + 4.572666e+000, + -5.523178e-001, + 2.677765e-001, + 3.872768e-001, + 1.978123e+000, + 4.095974e-001, + -1.029420e+000, + -2.105096e-001, + 1.657176e+000, + -1.028655e+001, + -7.725428e+000, + 1.707122e+000, + -7.681108e-002, + 1.074660e+000, + 8.312794e-001, + -1.082084e+000, + -1.321893e-001, + 8.487219e-001, + 1.858290e+001, + -3.172656e+000, + 6.915801e-001, + 1.905927e-001, + 3.901473e+000, + 6.144141e-001, + // albedo 0, turbidity 4 + -1.259854e+000, + -3.329630e-001, + -2.270176e+000, + 2.357599e+000, + -9.019414e-002, + 5.779792e-001, + 7.706039e-002, + 3.971905e+000, + 4.999172e-001, + -1.413220e+000, + -5.430979e-001, + -1.715627e-001, + 1.151561e+000, + -2.318489e-001, + 2.791441e-001, + 1.306646e-002, + 1.794583e+000, + 6.167457e-001, + -9.926840e-001, + 2.303697e-002, + 7.306051e-001, + -2.124879e+000, + -2.221853e-001, + 1.635982e+000, + -8.684297e-002, + 7.621636e+000, + 9.443863e-001, + -1.113409e+000, + -2.409045e-001, + -1.979662e-001, + 5.089736e+000, + -2.071840e+000, + -6.954891e-001, + 5.966469e-001, + -1.346819e+000, + 3.752080e-001, + -1.055595e+000, + -1.703680e-001, + 1.089771e+000, + -1.041463e+001, + -4.687545e+000, + 2.149733e+000, + -1.118987e-001, + 3.558810e+000, + 8.741214e-001, + -1.070779e+000, + -1.445161e-001, + 6.385947e-001, + 1.695445e+001, + -3.724275e+000, + -3.465499e-002, + 3.645376e-001, + 3.232410e+000, + 6.285788e-001, + // albedo 0, turbidity 5 + -1.297812e+000, + -3.805039e-001, + -1.474455e+000, + 1.558382e+000, + -1.292485e-001, + 5.206238e-001, + 7.166147e-002, + 3.651150e+000, + 4.998781e-001, + -1.680599e+000, + -8.036751e-001, + 8.267015e-001, + -2.109200e-001, + -4.326451e-001, + 3.843930e-001, + 5.207142e-002, + 6.938520e-001, + 4.752346e-001, + -8.467684e-001, + 1.620743e-001, + -5.520307e-001, + 8.293798e-001, + 8.728132e-001, + 9.075147e-001, + -1.734859e-001, + 7.815672e+000, + 1.126843e+000, + -1.182658e+000, + -3.290773e-001, + 1.442907e-001, + -1.705529e+000, + -1.186174e+001, + -1.903040e-001, + 7.826049e-001, + -1.497409e+000, + 2.238945e-001, + -1.032316e+000, + -1.590425e-001, + 9.289968e-001, + 1.217091e+001, + 1.274690e+000, + 1.400296e+000, + -3.047612e-001, + 2.805729e+000, + 9.198989e-001, + -1.073060e+000, + -1.623303e-001, + 3.798836e-001, + 2.223272e+000, + -4.660805e+000, + -1.172357e-001, + 5.306455e-001, + 3.105520e+000, + 6.420864e-001, + // albedo 0, turbidity 6 + -1.374072e+000, + -4.453408e-001, + -1.081601e+000, + 1.104314e+000, + -1.730612e-001, + 5.074812e-001, + 5.784588e-002, + 3.488150e+000, + 5.037112e-001, + -1.704606e+000, + -8.629255e-001, + -3.905040e-001, + 2.152742e+000, + -6.716606e-001, + 5.638527e-001, + -5.967161e-003, + 4.886292e-001, + 4.385432e-001, + -9.651511e-001, + 1.186522e-001, + 3.421397e-001, + -4.626814e+000, + 9.716770e-001, + 7.579588e-001, + -1.064476e-002, + 8.154392e+000, + 1.103676e+000, + -1.067172e+000, + -3.214506e-001, + -3.934660e-001, + 9.254630e+000, + -3.599603e+000, + -1.624031e-001, + 5.478446e-001, + -2.781628e+000, + 2.905848e-001, + -1.063218e+000, + -1.412572e-001, + 8.153795e-001, + -1.467486e+001, + -2.020170e+000, + 1.094685e+000, + 7.786265e-002, + 3.719129e+000, + 8.826899e-001, + -1.070058e+000, + -1.684172e-001, + 2.225147e-001, + 2.345795e+001, + -4.342429e+000, + -4.661816e-002, + 3.545794e-001, + 3.051769e+000, + 6.567686e-001, + // albedo 0, turbidity 7 + -1.397244e+000, + -4.874379e-001, + -2.217129e+000, + 2.415780e+000, + -1.039290e-001, + 5.444596e-001, + 2.296795e-002, + 3.242776e+000, + 5.575920e-001, + -1.943117e+000, + -1.042293e+000, + 1.936194e+000, + -7.807718e-001, + -4.753317e-001, + 6.351817e-001, + 3.357824e-002, + 3.221570e-001, + 2.277390e-001, + -1.007469e+000, + 4.283560e-002, + -1.830583e+000, + -1.613949e-001, + 5.103059e-001, + 1.830881e-001, + -6.111472e-002, + 7.698471e+000, + 1.322151e+000, + -9.885823e-001, + -2.796329e-001, + 9.017585e-001, + 9.500529e-001, + -8.751757e+000, + 5.198673e-001, + 6.111910e-001, + -3.165369e+000, + 1.193651e-001, + -1.105054e+000, + -1.835801e-001, + 2.099263e-001, + 3.626436e+000, + 4.241807e-001, + 2.861915e-002, + -3.245808e-002, + 3.560209e+000, + 9.581069e-001, + -1.061783e+000, + -1.955111e-001, + 3.405765e-001, + 1.682185e+001, + -4.868111e+000, + 3.591669e-001, + 3.518670e-001, + 2.163473e+000, + 6.425305e-001, + // albedo 0, turbidity 8 + -1.452178e+000, + -5.662818e-001, + -1.492883e+000, + 1.742373e+000, + -1.894966e-001, + 6.129524e-001, + 2.370115e-006, + 3.042560e+000, + 7.988979e-001, + -2.146318e+000, + -1.176122e+000, + 1.480664e+000, + 1.846814e-001, + -9.003192e-001, + 2.819986e-001, + -6.858291e-003, + 5.447940e-001, + -2.109028e-001, + -1.465359e+000, + -3.055025e-001, + -1.747423e+000, + -2.538335e+000, + 6.082904e-001, + 6.523133e-001, + 1.426957e-001, + 6.921276e+000, + 1.637843e+000, + -7.135462e-001, + -2.351046e-001, + 1.111445e+000, + 2.259275e+000, + -7.853810e+000, + -3.006083e-001, + 3.100486e-001, + -4.047366e+000, + -3.732308e-002, + -1.188030e+000, + -2.177467e-001, + 8.022451e-002, + 8.746107e+000, + -6.824017e-001, + 5.968181e-001, + 7.024883e-002, + 3.164998e+000, + 9.909158e-001, + -1.038065e+000, + -1.989059e-001, + 1.630845e-001, + 1.261969e+001, + -4.006594e+000, + -3.213161e-001, + 3.948313e-001, + 2.040063e+000, + 6.364874e-001, + // albedo 0, turbidity 9 + -1.789980e+000, + -8.450140e-001, + -2.591234e+000, + 2.769295e+000, + -8.338896e-002, + 5.620741e-001, + -8.271253e-006, + 2.531602e+000, + 9.001159e-001, + -1.468080e+000, + -7.426812e-001, + 2.369441e+000, + -1.635443e+000, + -3.560365e-001, + 2.130482e-001, + -2.124886e-003, + 1.863478e+000, + -3.426455e-001, + -3.911974e+000, + -1.873182e+000, + -2.428294e+000, + 1.019786e+000, + 2.178584e-001, + 9.599962e-001, + 3.763471e-002, + 4.121844e+000, + 1.708236e+000, + 5.986629e-001, + 4.160930e-001, + 1.499968e+000, + -4.234635e+000, + -7.153272e+000, + -8.777277e-001, + 4.276508e-001, + -2.268730e+000, + -9.278595e-002, + -1.581111e+000, + -5.414559e-001, + 3.449756e-002, + 2.095624e+001, + -1.717086e+000, + 6.913385e-001, + -1.227380e-001, + 1.401315e+000, + 9.723511e-001, + -9.931334e-001, + -2.191364e-001, + 1.647201e-001, + 2.954460e+000, + -2.889774e+000, + -4.261816e-001, + 4.166838e-001, + 1.370273e+000, + 6.561021e-001, + // albedo 0, turbidity 10 + -2.368520e+000, + -1.245557e+000, + -3.473878e+000, + 3.511922e+000, + -4.076311e-002, + 4.228576e-001, + -8.136079e-006, + 2.268992e+000, + 9.001266e-001, + -1.498984e+000, + -9.483364e-001, + 2.970418e+000, + -2.003511e+000, + -3.005171e-001, + 3.242320e-001, + 6.724107e-003, + 1.693927e+000, + -2.648941e-001, + -6.258071e+000, + -2.616781e+000, + -3.186408e+000, + -3.570416e-002, + 5.972101e-001, + 5.638927e-001, + -8.227073e-002, + 3.805214e+000, + 1.486701e+000, + 7.183470e-001, + -1.332710e-001, + 1.495243e+000, + 3.859652e+000, + -5.605361e+000, + 3.808435e-001, + 4.998100e-001, + -1.207866e+000, + 1.082917e-001, + -1.422091e+000, + -5.984032e-001, + 2.297508e-001, + 1.726780e+000, + -6.684454e-001, + -1.024912e+000, + -1.967199e-001, + -3.214571e-001, + 8.922300e-001, + -1.018798e+000, + -2.003211e-001, + 5.344788e-002, + 1.474717e+001, + -4.025558e+000, + 9.010150e-001, + 3.605184e-001, + 1.504726e+000, + 6.720300e-001, + // albedo 1, turbidity 1 + -1.150179e+000, + -2.233430e-001, + -6.725138e+000, + 7.601675e+000, + -6.176639e-002, + 7.963802e-001, + 2.476816e-002, + 4.311811e+000, + 5.070506e-001, + -1.184017e+000, + -2.330060e-001, + 1.903877e-001, + 4.425206e-001, + -1.173330e-001, + 2.459899e-001, + 6.799957e-002, + 5.710763e+000, + 4.639162e-001, + -1.129855e+000, + -2.313999e-001, + 3.299978e+000, + -1.861830e+000, + -3.626476e-001, + 1.858194e+000, + -9.845844e-002, + 6.523143e-001, + 6.278178e-001, + -1.090030e+000, + -2.445577e-001, + 4.546659e-001, + 9.848860e-001, + -4.044981e-001, + 3.532740e-001, + 1.409977e-001, + -7.724273e-001, + 2.901711e-001, + -1.048192e+000, + -1.048720e-001, + 2.079951e+000, + -7.519850e-002, + -1.451911e+000, + 1.354243e+000, + -1.508252e-001, + 4.159135e+000, + 8.685415e-001, + -1.081709e+000, + -1.496534e-001, + 1.433416e+000, + -8.415186e-005, + -3.147387e+000, + 6.964893e-002, + 1.345400e-001, + 3.372381e+000, + 5.369835e-001, + // albedo 1, turbidity 2 + -1.163329e+000, + -2.341078e-001, + -8.084459e+000, + 8.765664e+000, + -4.227908e-002, + 6.476384e-001, + 5.575993e-002, + 4.291594e+000, + 5.023286e-001, + -1.234281e+000, + -3.038288e-001, + 3.304120e+000, + -2.565467e+000, + -1.080261e-001, + 5.183037e-001, + 2.633070e-002, + 4.459108e+000, + 4.526356e-001, + -1.015235e+000, + -1.003890e-001, + 2.834337e-001, + 4.230399e-001, + -4.060874e-001, + 1.119918e+000, + -2.357803e-002, + 3.215664e+000, + 1.089777e+000, + -1.171497e+000, + -2.465867e-001, + 1.219344e+000, + 1.184120e+000, + -6.451707e-002, + 1.087554e+000, + 1.687897e-001, + 4.111776e-001, + 2.471485e-001, + -1.010262e+000, + -1.337460e-001, + 1.953577e+000, + -3.761183e+000, + -7.089300e+000, + 5.963565e-001, + -8.297304e-002, + 2.741114e+000, + 9.771003e-001, + -1.102719e+000, + -1.647974e-001, + 1.510508e+000, + 7.573412e+000, + -3.431528e+000, + 3.953995e-001, + 6.793657e-002, + 2.744717e+000, + 5.018037e-001, + // albedo 1, turbidity 3 + -1.186728e+000, + -2.648685e-001, + -7.540497e+000, + 8.152868e+000, + -4.363040e-002, + 6.836829e-001, + 3.221451e-002, + 4.013046e+000, + 6.004295e-001, + -1.302626e+000, + -3.904258e-001, + 3.431819e+000, + -2.975541e+000, + -7.666020e-002, + 2.464561e-002, + 1.054528e-001, + 3.161765e+000, + 3.544185e-001, + -9.615438e-001, + -4.842098e-002, + -4.756207e-001, + 9.408081e-001, + -3.108222e-001, + 1.708814e+000, + -1.241215e-001, + 4.416567e+000, + 1.207369e+000, + -1.178731e+000, + -1.824314e-001, + 8.266664e-001, + 1.001614e+000, + 3.024332e-001, + 3.291998e-002, + 4.178949e-001, + 2.532397e+000, + 2.014902e-001, + -1.018913e+000, + -2.016682e-001, + 2.132865e+000, + -3.323938e+000, + -8.751654e+000, + 1.240780e+000, + -1.801214e-001, + 6.145479e-001, + 9.457932e-001, + -1.101603e+000, + -1.521834e-001, + 1.348807e+000, + 5.640453e+000, + -2.695953e+000, + -7.496627e-002, + 1.719606e-001, + 3.175091e+000, + 5.968939e-001, + // albedo 1, turbidity 4 + -1.229694e+000, + -3.167126e-001, + -3.548352e+000, + 3.846155e+000, + -5.028022e-002, + 5.061677e-001, + 7.498335e-002, + 3.626295e+000, + 4.999424e-001, + -1.436439e+000, + -5.562909e-001, + 8.010070e-001, + 3.290243e-001, + -1.385772e-001, + 4.556269e-002, + 2.571935e-002, + 1.623385e+000, + 5.222220e-001, + -8.876360e-001, + 5.717281e-002, + 4.713905e-001, + -1.668970e+000, + -3.199243e-001, + 2.050582e+000, + -7.783980e-002, + 6.117601e+000, + 1.070445e+000, + -1.235363e+000, + -2.778190e-001, + 1.577638e-001, + 3.982457e+000, + -2.266885e-002, + -1.411004e+000, + 5.570462e-001, + 1.740426e-001, + 2.747952e-001, + -9.785264e-001, + -1.458813e-001, + 1.996989e+000, + -7.517409e+000, + -6.602487e+000, + 2.387711e+000, + -1.996484e-001, + 2.112759e+000, + 9.289256e-001, + -1.117781e+000, + -1.699302e-001, + 1.214480e+000, + 1.141083e+001, + -3.253445e+000, + -8.156284e-001, + 2.248021e-001, + 2.860500e+000, + 6.151694e-001, + // albedo 1, turbidity 5 + -1.290523e+000, + -3.813116e-001, + -6.728796e-001, + 1.007366e+000, + -2.068030e-001, + 4.422499e-001, + 6.016254e-002, + 3.218056e+000, + 5.068822e-001, + -1.614452e+000, + -7.953309e-001, + 5.977485e-001, + 1.056365e+000, + -8.402403e-001, + 3.713919e-001, + 3.164720e-002, + -2.526630e-001, + 4.072481e-001, + -8.377211e-001, + 2.276878e-001, + -3.232539e-001, + -2.390300e+000, + 2.127070e+000, + 7.169058e-001, + -4.032313e-002, + 9.072383e+000, + 1.188019e+000, + -1.226600e+000, + -4.426177e-001, + 6.370202e-001, + 3.846913e+000, + -1.128719e+001, + 3.667721e-002, + 5.000027e-001, + -4.192432e+000, + 2.376054e-001, + -9.852235e-001, + -5.890324e-002, + 1.529937e+000, + 4.301220e+000, + -1.839775e+000, + 8.993504e-001, + -1.040866e-001, + 4.636528e+000, + 8.466710e-001, + -1.118112e+000, + -2.040213e-001, + 1.203227e+000, + 7.252102e+000, + -4.515955e+000, + -2.398231e-001, + 2.375855e-001, + 1.923160e+000, + 6.645269e-001, + // albedo 1, turbidity 6 + -1.330626e+000, + -4.272516e-001, + -1.317682e+000, + 1.650847e+000, + -1.192771e-001, + 4.904191e-001, + 4.074827e-002, + 3.015846e+000, + 5.271835e-001, + -1.711989e+000, + -8.644776e-001, + 4.057135e-001, + 9.037139e-001, + -3.100084e-001, + 6.317697e-002, + 1.065625e-001, + 9.226240e-002, + 3.022474e-001, + -8.465894e-001, + 1.652715e-001, + -2.532361e-001, + -2.422693e+000, + 3.144841e-001, + 1.839347e+000, + -2.818162e-001, + 7.856667e+000, + 1.387977e+000, + -1.192114e+000, + -3.830569e-001, + 5.124751e-001, + 7.280034e+000, + -2.610477e+000, + -1.832768e+000, + 9.101904e-001, + -3.349116e+000, + -7.313079e-002, + -1.011026e+000, + -1.061217e-001, + 1.357854e+000, + -1.496195e+001, + -2.180975e+000, + 2.484329e+000, + -3.239225e-001, + 3.899425e+000, + 1.179264e+000, + -1.106228e+000, + -1.927917e-001, + 1.179701e+000, + 2.379834e+001, + -4.870211e+000, + -1.290713e+000, + 2.854422e-001, + 2.078973e+000, + 5.128625e-001, + // albedo 1, turbidity 7 + -1.342815e+000, + -4.571984e-001, + -1.803521e+000, + 2.229578e+000, + -1.196587e-001, + 5.694038e-001, + 1.194687e-002, + 2.950110e+000, + 5.961719e-001, + -1.937297e+000, + -1.078823e+000, + 2.178495e+000, + -1.251900e+000, + -3.577875e-001, + 2.553915e-001, + 8.081142e-002, + -4.723152e-001, + 1.174551e-001, + -9.292675e-001, + 1.125551e-001, + -1.708569e+000, + 1.832840e+000, + 5.150525e-001, + 9.287322e-001, + -1.746780e-001, + 7.793815e+000, + 1.498832e+000, + -1.058850e+000, + -3.495292e-001, + 1.135259e+000, + -4.069374e+000, + -9.727412e+000, + -7.670653e-001, + 7.550431e-001, + -4.105064e+000, + -5.149354e-002, + -1.079472e+000, + -1.399984e-001, + 1.058148e+000, + 1.392667e+001, + -6.245343e-001, + 1.192083e+000, + -2.578858e-001, + 4.030723e+000, + 1.025069e+000, + -1.093159e+000, + -2.150433e-001, + 1.210946e+000, + 3.349246e+000, + -4.030345e+000, + -5.362971e-001, + 2.886842e-001, + 1.192375e+000, + 6.363049e-001, + // albedo 1, turbidity 8 + -1.408172e+000, + -5.491538e-001, + -1.360219e+000, + 1.738150e+000, + -1.505117e-001, + 6.030014e-001, + -6.866289e-006, + 2.656101e+000, + 9.001849e-001, + -2.171702e+000, + -1.231851e+000, + 1.860400e+000, + 3.613146e-002, + -7.300078e-001, + 1.974371e-001, + -5.351202e-003, + -1.443434e-001, + -3.779605e-001, + -1.284657e+000, + -1.935945e-001, + -1.494185e+000, + -2.070689e+000, + 2.974020e-001, + 8.048383e-001, + 1.097715e-001, + 6.907960e+000, + 1.819367e+000, + -8.288598e-001, + -3.374917e-001, + 1.029011e+000, + 1.347088e+000, + -7.655126e+000, + -8.232335e-001, + 3.722934e-001, + -4.847675e+000, + -1.864913e-001, + -1.146031e+000, + -1.480097e-001, + 1.051391e+000, + 8.396865e+000, + -1.407010e+000, + 1.240651e+000, + -3.942068e-002, + 3.291458e+000, + 1.060212e+000, + -1.069599e+000, + -2.047532e-001, + 9.437765e-001, + 1.189879e+001, + -4.026750e+000, + -9.372092e-001, + 2.463501e-001, + 1.782902e+000, + 6.235027e-001, + // albedo 1, turbidity 9 + -1.793508e+000, + -8.986075e-001, + -2.346395e+000, + 2.775625e+000, + -7.052213e-002, + 5.349215e-001, + -7.457456e-006, + 1.901248e+000, + 9.001358e-001, + -1.629402e+000, + -8.273410e-001, + 2.270930e+000, + -1.125114e+000, + -3.562854e-001, + 1.948044e-001, + 1.703882e-003, + 1.426305e+000, + -3.737234e-001, + -3.443431e+000, + -1.686429e+000, + -1.515036e+000, + -6.941862e-001, + 4.976814e-001, + 1.144483e+000, + -4.277285e-002, + 3.662107e+000, + 1.819972e+000, + 3.138150e-001, + 2.426714e-001, + 7.717995e-001, + 2.759520e+000, + -7.216077e+000, + -1.389093e+000, + 5.332838e-001, + -2.316313e+000, + -2.636593e-001, + -1.449802e+000, + -4.017798e-001, + 1.133688e+000, + 2.114337e+000, + 6.227965e-002, + 1.378688e+000, + -1.759313e-001, + 9.446579e-001, + 1.165017e+000, + -1.049420e+000, + -2.614006e-001, + 9.473363e-001, + 1.531288e+001, + -4.714989e+000, + -8.992715e-001, + 2.423509e-001, + 9.148027e-001, + 5.650972e-001, + // albedo 1, turbidity 10 + -2.382332e+000, + -1.290760e+000, + -3.316114e+000, + 3.587059e+000, + -3.748522e-002, + 4.468493e-001, + -7.212198e-006, + 1.789208e+000, + 9.001267e-001, + -1.333339e+000, + -9.355999e-001, + 3.281313e+000, + -2.263103e+000, + -2.499164e-001, + 1.591742e-001, + 8.117981e-003, + 1.345396e+000, + -2.689053e-001, + -6.612658e+000, + -2.809230e+000, + -2.744061e+000, + 1.005261e+000, + 4.216309e-001, + 1.055067e+000, + -9.021558e-002, + 2.940833e+000, + 1.495270e+000, + 1.251113e+000, + 5.915517e-002, + 1.142846e+000, + -2.807371e-001, + -5.335452e+000, + -6.967012e-001, + 5.129558e-001, + -5.264483e-001, + 1.137786e-001, + -1.517768e+000, + -5.807447e-001, + 1.179477e+000, + 1.252252e+001, + -2.305973e+000, + 2.184822e-001, + -3.092917e-001, + -1.524373e+000, + 8.724218e-001, + -1.037889e+000, + -2.065780e-001, + 6.479897e-001, + 4.786848e-002, + -2.348244e+000, + -3.053490e-002, + 4.059549e-001, + 1.313102e+000, + 6.713422e-001, +}; + +double datasetRad520[] = +{ + // albedo 0, turbidity 1 + 1.459826e-002, + 1.539451e-002, + -1.848659e-003, + 1.563602e-001, + 6.773320e-002, + 9.272923e-002, + // albedo 0, turbidity 2 + 1.433599e-002, + 1.641988e-002, + -1.010719e-002, + 1.752844e-001, + 7.101618e-002, + 9.423920e-002, + // albedo 0, turbidity 3 + 1.361165e-002, + 2.045058e-002, + -3.003054e-002, + 2.142268e-001, + 6.624853e-002, + 1.021088e-001, + // albedo 0, turbidity 4 + 1.263245e-002, + 2.450953e-002, + -5.278634e-002, + 2.554090e-001, + 7.442617e-002, + 1.093243e-001, + // albedo 0, turbidity 5 + 1.161553e-002, + 2.837614e-002, + -7.218472e-002, + 2.860706e-001, + 8.559036e-002, + 1.183292e-001, + // albedo 0, turbidity 6 + 1.106384e-002, + 3.079241e-002, + -8.377247e-002, + 3.007502e-001, + 9.584072e-002, + 1.242989e-001, + // albedo 0, turbidity 7 + 1.036501e-002, + 3.253539e-002, + -9.274680e-002, + 3.036297e-001, + 1.249370e-001, + 1.307019e-001, + // albedo 0, turbidity 8 + 9.469294e-003, + 3.287197e-002, + -9.329500e-002, + 2.773078e-001, + 1.866053e-001, + 1.366498e-001, + // albedo 0, turbidity 9 + 8.599754e-003, + 2.901873e-002, + -7.532574e-002, + 2.032418e-001, + 2.837623e-001, + 1.499765e-001, + // albedo 0, turbidity 10 + 7.760808e-003, + 1.977285e-002, + -3.328752e-002, + 7.084295e-002, + 4.155148e-001, + 1.708600e-001, + // albedo 1, turbidity 1 + 1.597952e-002, + 1.790201e-002, + -1.839686e-003, + 1.470389e-001, + 1.698205e-001, + 2.119268e-001, + // albedo 1, turbidity 2 + 1.553599e-002, + 1.969270e-002, + -1.173079e-002, + 1.677871e-001, + 1.714108e-001, + 2.173300e-001, + // albedo 1, turbidity 3 + 1.489601e-002, + 2.206336e-002, + -2.576017e-002, + 1.949160e-001, + 1.781909e-001, + 2.236776e-001, + // albedo 1, turbidity 4 + 1.384558e-002, + 2.528945e-002, + -4.419483e-002, + 2.249469e-001, + 1.968802e-001, + 2.312108e-001, + // albedo 1, turbidity 5 + 1.299228e-002, + 2.767429e-002, + -5.793193e-002, + 2.409692e-001, + 2.215448e-001, + 2.384850e-001, + // albedo 1, turbidity 6 + 1.245635e-002, + 2.874175e-002, + -6.384005e-002, + 2.429023e-001, + 2.428387e-001, + 2.418906e-001, + // albedo 1, turbidity 7 + 1.170787e-002, + 3.001101e-002, + -6.977107e-002, + 2.368382e-001, + 2.775809e-001, + 2.482129e-001, + // albedo 1, turbidity 8 + 1.081211e-002, + 2.854760e-002, + -6.360294e-002, + 1.948047e-001, + 3.501631e-001, + 2.490269e-001, + // albedo 1, turbidity 9 + 9.903541e-003, + 2.416012e-002, + -4.342521e-002, + 1.140965e-001, + 4.468771e-001, + 2.561579e-001, + // albedo 1, turbidity 10 + 8.793464e-003, + 1.518177e-002, + -4.699154e-003, + -9.107614e-003, + 5.554550e-001, + 2.692918e-001, +}; + +double dataset560[] = +{ + // albedo 0, turbidity 1 + -1.121223e+000, + -1.710187e-001, + -1.383038e+001, + 1.475343e+001, + -3.137953e-002, + 1.035662e+000, + 4.060064e-002, + 5.222551e+000, + 5.001051e-001, + -1.172565e+000, + -1.880874e-001, + 7.283594e+000, + -5.774643e+000, + -9.051333e-002, + 9.108126e-001, + -1.565410e-002, + 6.194404e+000, + 4.688599e-001, + -1.124108e+000, + -3.082835e-001, + -2.179926e-001, + 1.330167e+000, + -4.502254e-001, + 1.470140e+000, + 4.202392e-004, + -4.724308e+000, + 1.134678e+000, + -1.079809e+000, + -9.226814e-002, + 1.465364e+000, + 1.348856e+000, + 4.357794e-001, + 1.771543e+000, + 8.121383e-003, + 6.057395e+000, + 2.462141e-001, + -1.086667e+000, + -2.709889e-001, + 2.249152e+000, + -3.177505e+000, + -7.138130e+000, + 1.112553e+000, + -9.718434e-003, + -2.392239e+000, + 9.352768e-001, + -1.071154e+000, + -1.272150e-001, + 1.644374e+000, + 4.326598e+000, + -2.244682e+000, + 1.611051e+000, + 7.835546e-003, + 3.213282e+000, + 6.580432e-001, + // albedo 0, turbidity 2 + -1.133883e+000, + -1.835049e-001, + -1.232301e+001, + 1.307796e+001, + -3.760123e-002, + 1.051162e+000, + 3.392954e-002, + 5.319376e+000, + 6.501601e-001, + -1.116119e+000, + -1.457114e-001, + 5.436576e+000, + -5.114276e+000, + -7.178414e-002, + 2.658168e-001, + 1.603756e-001, + 7.619379e+000, + 3.112698e-001, + -1.215552e+000, + -3.391607e-001, + 4.502377e-001, + 1.281602e+000, + -4.095778e-001, + 2.374058e+000, + -1.988430e-001, + -3.809377e+000, + 1.254846e+000, + -9.657094e-001, + 3.858547e-002, + 3.324554e-001, + 1.541740e+000, + 6.029572e-001, + 2.346414e-001, + 3.902458e-001, + 7.263050e+000, + 1.353991e-001, + -1.152042e+000, + -3.155103e-001, + 2.163244e+000, + -5.230832e+000, + -7.443608e+000, + 2.247834e+000, + -1.632216e-001, + -1.725315e+000, + 1.034709e+000, + -1.051862e+000, + -1.310458e-001, + 1.554942e+000, + 1.063510e+001, + -3.558989e+000, + 6.764257e-001, + 1.428912e-001, + 2.541641e+000, + 5.000389e-001, + // albedo 0, turbidity 3 + -1.156925e+000, + -2.104634e-001, + -1.793090e+001, + 1.817524e+001, + -1.225514e-002, + 6.518753e-001, + 1.085708e-001, + 4.947239e+000, + 5.635117e-001, + -1.183783e+000, + -2.187288e-001, + 5.860654e+000, + -5.643960e+000, + -4.453459e-002, + 6.724995e-001, + 1.698133e-002, + 6.742131e+000, + 6.353553e-001, + -1.143101e+000, + -2.644541e-001, + 9.354577e-001, + 9.256854e-001, + -1.074845e-001, + 1.663131e+000, + 4.998918e-002, + -2.049721e+000, + 8.150826e-001, + -1.021102e+000, + 2.478746e-002, + -1.367363e+000, + -9.011684e-002, + -5.001730e-001, + 4.316685e-002, + 3.952231e-001, + 8.084754e+000, + 5.380131e-001, + -1.101145e+000, + -2.731481e-001, + 2.483816e+000, + 3.581780e-001, + 4.249615e-001, + 2.284087e+000, + -5.836688e-002, + -1.651434e+000, + 7.685430e-001, + -1.073863e+000, + -1.705854e-001, + 1.169673e+000, + -2.183705e-003, + -5.007439e+000, + 2.318154e-001, + 2.738714e-001, + 2.187327e+000, + 6.676882e-001, + // albedo 0, turbidity 4 + -1.207581e+000, + -2.653224e-001, + -9.004497e+000, + 8.985720e+000, + -9.024461e-003, + 4.273132e-001, + 1.378091e-001, + 4.307648e+000, + 5.309421e-001, + -1.278614e+000, + -3.516334e-001, + 2.489304e+000, + -1.840089e+000, + -6.293646e-002, + 8.426903e-001, + -7.266949e-002, + 4.434869e+000, + 7.077739e-001, + -1.150333e+000, + -2.033123e-001, + 8.150312e-001, + -7.926382e-001, + -3.230951e-001, + 1.291679e+000, + 1.822329e-001, + 1.619133e+000, + 7.522432e-001, + -1.002248e+000, + -3.092969e-002, + -1.092273e+000, + 2.820671e+000, + 4.504455e-001, + -5.121048e-001, + 4.229688e-001, + 4.037073e+000, + 5.843543e-001, + -1.087962e+000, + -2.434172e-001, + 1.817322e+000, + -6.031774e+000, + -4.873903e+000, + 2.094606e+000, + 1.184743e-001, + 2.293346e-001, + 7.283940e-001, + -1.072272e+000, + -1.614715e-001, + 8.337136e-001, + 1.086866e+001, + -3.373042e+000, + 2.260332e-002, + 2.622468e-001, + 2.470766e+000, + 7.078601e-001, + // albedo 0, turbidity 5 + -1.263850e+000, + -3.278851e-001, + -5.336400e+000, + 5.102832e+000, + 2.070020e-003, + 3.605369e-001, + 1.633426e-001, + 3.790121e+000, + 4.999503e-001, + -1.507623e+000, + -6.465694e-001, + -2.983753e+000, + 4.212027e+000, + -5.868795e-002, + 3.852488e-001, + -7.222995e-002, + 1.042808e+000, + 6.632120e-001, + -1.041397e+000, + 6.326589e-002, + 3.860471e+000, + -5.579882e+000, + -1.730201e-001, + 2.303753e+000, + 6.102393e-002, + 7.287763e+000, + 8.916057e-001, + -1.049861e+000, + -2.836044e-001, + -2.302537e+000, + 6.724969e+000, + 4.373598e-001, + -2.422514e+000, + 6.952438e-001, + -2.633600e+000, + 4.070954e-001, + -1.054117e+000, + -1.206625e-001, + 1.764625e+000, + -9.467716e+000, + -3.436987e+000, + 3.394707e+000, + -8.149683e-002, + 3.485918e+000, + 8.515716e-001, + -1.072517e+000, + -1.574135e-001, + 2.214599e-001, + 1.331766e+001, + -3.915381e+000, + -1.229973e+000, + 6.267275e-001, + 2.923262e+000, + 6.516824e-001, + // albedo 0, turbidity 6 + -1.293503e+000, + -3.676147e-001, + -1.323095e+001, + 1.301713e+001, + -3.471894e-004, + 3.957986e-001, + 1.317480e-001, + 3.616827e+000, + 4.998510e-001, + -1.757697e+000, + -8.202513e-001, + 2.560133e+000, + -1.337734e+000, + -3.413795e-002, + 5.633043e-001, + -4.355758e-002, + 7.324869e-001, + 5.728008e-001, + -8.814599e-001, + 9.828960e-002, + -2.701428e-001, + -1.298657e+000, + -6.721423e-002, + 1.581675e+000, + 4.095024e-002, + 6.548913e+000, + 9.726866e-001, + -1.125663e+000, + -2.625873e-001, + -2.797592e-001, + 2.848739e+000, + -3.363778e-002, + -1.672768e+000, + 7.349952e-001, + -1.708628e+000, + 3.557813e-001, + -1.044841e+000, + -1.712889e-001, + 7.091708e-001, + -4.275119e+000, + -7.565130e-001, + 2.483873e+000, + -7.781321e-002, + 2.667776e+000, + 8.709126e-001, + -1.067360e+000, + -1.543712e-001, + 3.884866e-001, + 6.915851e+000, + -4.250734e+000, + -6.525729e-001, + 6.368377e-001, + 2.671865e+000, + 6.566986e-001, + // albedo 0, turbidity 7 + -1.360356e+000, + -4.336026e-001, + -1.442967e+001, + 1.428579e+001, + -3.990325e-003, + 4.600126e-001, + 1.023159e-001, + 3.367805e+000, + 4.999150e-001, + -2.054147e+000, + -1.064745e+000, + -7.857491e-001, + 2.214734e+000, + -3.764113e-002, + 8.504761e-001, + -4.222958e-002, + 1.091377e-001, + 4.732161e-001, + -8.953952e-001, + 1.048085e-001, + 1.481293e+000, + -4.223012e+000, + -4.164160e-002, + 5.999023e-001, + 6.310005e-002, + 7.156883e+000, + 1.066682e+000, + -1.030251e+000, + -2.777709e-001, + -8.361086e-001, + 5.611154e+000, + 1.861240e-001, + -5.823197e-001, + 6.716210e-001, + -3.269717e+000, + 2.922029e-001, + -1.095631e+000, + -1.966849e-001, + 6.300566e-001, + -7.129591e+000, + -7.351951e-001, + 1.400340e+000, + -6.997516e-003, + 2.879018e+000, + 8.879337e-001, + -1.052935e+000, + -1.551958e-001, + 2.334578e-001, + 1.040948e+001, + -4.426381e+000, + -3.477323e-001, + 6.257070e-001, + 2.451148e+000, + 6.570737e-001, + // albedo 0, turbidity 8 + -1.382656e+000, + -4.830539e-001, + -1.107403e+001, + 1.127854e+001, + -2.723641e-002, + 8.478005e-001, + 2.907652e-003, + 3.290364e+000, + 7.398950e-001, + -2.230895e+000, + -1.163446e+000, + -1.001991e+001, + 1.125340e+001, + -3.233871e-002, + 3.041577e-001, + 3.870458e-003, + 3.463879e-001, + -8.829082e-002, + -1.489234e+000, + -3.402035e-001, + 2.948409e+000, + -8.098077e+000, + 9.078299e-002, + -3.179835e-001, + 4.730321e-001, + 6.765707e+000, + 1.440217e+000, + -6.206234e-001, + -1.701007e-001, + -7.346357e-002, + 9.350033e+000, + 1.548964e-001, + 1.313206e+000, + -1.479143e-001, + -5.119165e+000, + 1.854277e-001, + -1.226372e+000, + -2.128299e-001, + -1.643093e-001, + -9.382334e+000, + -4.857784e-001, + -1.374948e-001, + 5.877245e-001, + 3.862307e+000, + 8.700125e-001, + -1.030598e+000, + -1.931668e-001, + 3.691403e-001, + 1.066393e+001, + -4.244968e+000, + -5.872571e-002, + 4.193140e-001, + 1.461878e+000, + 6.699478e-001, + // albedo 0, turbidity 9 + -1.606656e+000, + -7.140209e-001, + -1.149565e+001, + 1.168427e+001, + -2.245577e-002, + 7.718953e-001, + -8.349882e-006, + 2.654449e+000, + 9.001224e-001, + -2.100494e+000, + -1.013602e+000, + -1.638934e+001, + 1.729185e+001, + -1.580924e-002, + 5.038208e-002, + -1.628735e-002, + 1.762584e+000, + -3.121794e-001, + -3.228292e+000, + -1.459508e+000, + 7.424519e+000, + -1.194272e+001, + 4.931054e-002, + 6.493074e-001, + 3.590561e-001, + 4.068321e+000, + 1.613039e+000, + 1.278814e-001, + 4.010913e-002, + -2.185675e+000, + 1.164548e+001, + 2.706306e-002, + 1.632886e-001, + -1.090111e-002, + -3.342580e+000, + 1.916992e-002, + -1.400278e+000, + -2.825658e-001, + 4.168149e-001, + -1.195909e+001, + -1.122968e-002, + 1.863328e-001, + 4.263033e-001, + 2.270053e+000, + 9.748449e-001, + -1.017511e+000, + -2.884028e-001, + 3.544996e-001, + 1.535118e+001, + -5.009184e+000, + 1.511064e-001, + 2.916578e-001, + 7.889658e-001, + 6.294910e-001, + // albedo 0, turbidity 10 + -2.031136e+000, + -1.076357e+000, + -8.660773e+000, + 8.800317e+000, + -2.370842e-002, + 5.736027e-001, + -8.441313e-006, + 2.248669e+000, + 9.001280e-001, + -1.270967e+000, + -7.828844e-001, + -1.198232e+001, + 1.262753e+001, + -1.509989e-002, + 1.663438e-001, + 2.440939e-004, + 2.068640e+000, + -2.521574e-001, + -6.600872e+000, + -2.689874e+000, + 6.453928e+000, + -9.592747e+000, + -3.551170e-002, + 1.325662e+000, + -1.894375e-002, + 3.506163e+000, + 1.469724e+000, + 7.961323e-001, + -1.989144e-001, + -2.685238e+000, + 1.034230e+001, + 2.076702e-001, + -7.692350e-001, + 6.184894e-001, + -1.969413e+000, + 3.842922e-002, + -1.459073e+000, + -4.964034e-001, + 1.060127e+000, + -1.277712e+001, + -9.634553e-001, + 5.610879e-001, + -2.034286e-001, + 3.525910e-001, + 1.003048e+000, + -1.021565e+000, + -2.553022e-001, + 6.367571e-002, + 2.028825e+001, + -4.623219e+000, + -2.400428e-002, + 4.251423e-001, + 9.640897e-001, + 6.080298e-001, + // albedo 1, turbidity 1 + -1.121224e+000, + -1.710171e-001, + -1.383038e+001, + 1.475343e+001, + -3.137812e-002, + 1.035662e+000, + 4.060006e-002, + 5.222551e+000, + 5.001051e-001, + -1.172565e+000, + -1.880857e-001, + 7.283595e+000, + -5.774643e+000, + -9.051285e-002, + 9.108124e-001, + -1.565627e-002, + 6.194404e+000, + 4.688599e-001, + -1.124109e+000, + -3.082816e-001, + -2.179926e-001, + 1.330167e+000, + -4.502252e-001, + 1.470140e+000, + 4.158616e-004, + -4.724308e+000, + 1.134678e+000, + -1.079810e+000, + -9.226583e-002, + 1.465364e+000, + 1.348856e+000, + 4.357794e-001, + 1.771543e+000, + 8.115381e-003, + 6.057395e+000, + 2.462140e-001, + -1.086668e+000, + -2.709863e-001, + 2.249153e+000, + -3.177505e+000, + -7.138130e+000, + 1.112553e+000, + -9.724210e-003, + -2.392239e+000, + 9.352768e-001, + -1.071158e+000, + -1.272123e-001, + 1.644374e+000, + 4.326598e+000, + -2.244682e+000, + 1.611051e+000, + 7.831866e-003, + 3.213282e+000, + 6.580432e-001, + // albedo 1, turbidity 2 + -1.125449e+000, + -1.733403e-001, + -1.228038e+001, + 1.311695e+001, + -3.541409e-002, + 1.005494e+000, + 4.147852e-002, + 5.316886e+000, + 6.051699e-001, + -1.101273e+000, + -1.422106e-001, + 5.484715e+000, + -5.089835e+000, + -6.655928e-002, + 2.076815e-001, + 1.633101e-001, + 7.624535e+000, + 3.044941e-001, + -1.213425e+000, + -3.085010e-001, + 5.550585e-001, + 1.302798e+000, + -3.946488e-001, + 2.285152e+000, + -1.925101e-001, + -3.790065e+000, + 1.263207e+000, + -9.610579e-001, + 9.458093e-003, + 5.293256e-001, + 1.553214e+000, + 6.053752e-001, + 1.172267e-001, + 3.674690e-001, + 7.305350e+000, + 1.509544e-001, + -1.119731e+000, + -2.765693e-001, + 2.433951e+000, + -5.229810e+000, + -7.449777e+000, + 2.123304e+000, + -2.242917e-001, + -1.669115e+000, + 1.041008e+000, + -1.094324e+000, + -1.418743e-001, + 1.836224e+000, + 1.063054e+001, + -3.561209e+000, + 5.916534e-001, + 9.296571e-002, + 2.600060e+000, + 4.999316e-001, + // albedo 1, turbidity 3 + -1.155818e+000, + -2.162981e-001, + -2.560068e+001, + 2.636088e+001, + -1.382944e-002, + 8.101983e-001, + 4.709210e-002, + 4.301909e+000, + 6.416958e-001, + -1.171460e+000, + -1.866443e-001, + 8.497645e+000, + -8.396229e+000, + -3.345417e-002, + 2.960022e-001, + 7.985279e-002, + 7.420544e+000, + 5.552152e-001, + -1.114385e+000, + -2.963805e-001, + 5.955009e-002, + 2.320529e+000, + -7.649266e-002, + 2.277940e+000, + -5.942479e-002, + -4.040964e+000, + 9.588558e-001, + -1.070647e+000, + 4.194546e-002, + -5.701942e-001, + -1.001278e+000, + -3.389615e-001, + -8.559533e-001, + 5.070784e-001, + 9.805560e+000, + 3.529747e-001, + -1.057912e+000, + -2.733753e-001, + 3.080618e+000, + 7.477366e-001, + 3.484876e-001, + 2.214994e+000, + -2.597625e-001, + -2.842961e+000, + 9.178917e-001, + -1.105636e+000, + -1.815423e-001, + 1.651373e+000, + -2.553941e-003, + -5.008441e+000, + -6.378055e-001, + 2.370503e-001, + 1.890656e+000, + 6.018255e-001, + // albedo 1, turbidity 4 + -1.194221e+000, + -2.570801e-001, + -8.919095e+000, + 9.380192e+000, + -2.650470e-002, + 6.233645e-001, + 6.663964e-002, + 4.027438e+000, + 6.125383e-001, + -1.308216e+000, + -3.781794e-001, + 2.369107e+000, + -1.977066e+000, + -4.079773e-002, + 1.443960e-001, + 8.206719e-002, + 3.465933e+000, + 5.442867e-001, + -1.048459e+000, + -1.617720e-001, + 1.015136e+000, + -2.989579e-001, + -2.764989e-001, + 2.427990e+000, + -1.147612e-001, + 1.522921e+000, + 1.041410e+000, + -1.105796e+000, + -4.826962e-002, + -8.419705e-001, + 3.285981e+000, + 7.975109e-001, + -1.954456e+000, + 7.424696e-001, + 4.604902e+000, + 2.602059e-001, + -1.033856e+000, + -2.507382e-001, + 2.882633e+000, + -8.250912e+000, + -6.878129e+000, + 2.948966e+000, + -2.850302e-001, + -8.253849e-001, + 9.844934e-001, + -1.125219e+000, + -1.879003e-001, + 1.474838e+000, + 1.453266e+001, + -3.271910e+000, + -1.231579e+000, + 2.397524e-001, + 1.654932e+000, + 5.625696e-001, + // albedo 1, turbidity 5 + -1.246640e+000, + -3.202274e-001, + -6.355032e+000, + 6.364143e+000, + 9.028376e-004, + 3.146975e-001, + 1.550718e-001, + 3.413749e+000, + 4.999065e-001, + -1.477471e+000, + -5.819223e-001, + 1.329471e+000, + -2.694229e-001, + -4.575905e-002, + 5.087866e-001, + -6.857139e-002, + 1.810092e+000, + 6.318693e-001, + -1.046136e+000, + -6.763679e-002, + 6.725076e-001, + -1.036786e+000, + -3.192799e-001, + 1.724205e+000, + 6.468388e-002, + 3.953855e+000, + 9.417528e-001, + -1.033910e+000, + -1.295544e-001, + -4.551294e-001, + 2.659205e+000, + 8.887235e-001, + -1.733153e+000, + 6.540117e-001, + 8.046523e-001, + 3.597443e-001, + -1.094530e+000, + -2.282012e-001, + 2.298267e+000, + -5.184881e+000, + -6.122309e+000, + 2.590799e+000, + -1.618707e-001, + 1.116033e+000, + 8.867666e-001, + -1.095556e+000, + -1.807112e-001, + 1.406193e+000, + 8.120385e+000, + -3.058239e+000, + -1.121150e+000, + 2.933606e-001, + 1.488339e+000, + 6.374827e-001, + // albedo 1, turbidity 6 + -1.270123e+000, + -3.552595e-001, + -8.975893e+000, + 9.110080e+000, + -3.388207e-003, + 3.559109e-001, + 1.201097e-001, + 3.109904e+000, + 4.998957e-001, + -1.663376e+000, + -7.846840e-001, + 6.951405e-001, + 3.139107e-001, + -2.448004e-002, + 3.572505e-001, + 1.453572e-002, + 6.307761e-001, + 5.142914e-001, + -9.518772e-001, + 7.764573e-002, + 1.247094e+000, + -2.224855e+000, + -1.195310e-001, + 1.709581e+000, + -8.836329e-002, + 5.688916e+000, + 1.113629e+000, + -1.087154e+000, + -2.665646e-001, + -8.624251e-001, + 4.536060e+000, + 4.180650e-001, + -1.629798e+000, + 8.479560e-001, + -1.293696e+000, + 1.869693e-001, + -1.064826e+000, + -1.599892e-001, + 2.285337e+000, + -8.584887e+000, + -3.074560e+000, + 2.139459e+000, + -2.592372e-001, + 1.937577e+000, + 9.957954e-001, + -1.099622e+000, + -1.849797e-001, + 1.193609e+000, + 1.416481e+001, + -5.009527e+000, + -8.592493e-001, + 3.485606e-001, + 1.884203e+000, + 6.097274e-001, + // albedo 1, turbidity 7 + -1.344841e+000, + -4.339942e-001, + -9.193112e+000, + 9.385864e+000, + -9.742818e-003, + 4.812040e-001, + 7.690647e-002, + 2.843801e+000, + 5.228047e-001, + -1.975928e+000, + -1.042040e+000, + 9.695714e-001, + 3.718000e-001, + -3.334078e-002, + 1.333620e-001, + 8.180282e-002, + -1.652429e-001, + 3.267010e-001, + -8.651864e-001, + 1.288722e-001, + 6.811456e-001, + -3.282787e+000, + -9.074685e-002, + 1.894059e+000, + -1.849744e-001, + 6.610614e+000, + 1.322978e+000, + -1.103780e+000, + -3.279618e-001, + -4.193802e-001, + 7.331165e+000, + 6.529659e-001, + -2.227297e+000, + 9.625482e-001, + -3.348971e+000, + -7.261722e-003, + -1.055963e+000, + -1.527328e-001, + 1.786114e+000, + -1.367578e+001, + -3.450729e+000, + 2.641691e+000, + -3.229222e-001, + 2.800131e+000, + 1.129409e+000, + -1.111541e+000, + -2.123518e-001, + 1.286159e+000, + 2.297563e+001, + -4.591526e+000, + -1.374672e+000, + 3.462811e-001, + 1.071127e+000, + 5.498514e-001, + // albedo 1, turbidity 8 + -1.387544e+000, + -4.964558e-001, + -9.744778e+000, + 1.014533e+001, + -2.463089e-002, + 7.188705e-001, + 3.919951e-003, + 2.760792e+000, + 7.369418e-001, + -2.206536e+000, + -1.191342e+000, + -2.244384e+000, + 3.629413e+000, + -3.601610e-002, + 7.725349e-002, + 5.357588e-002, + -2.692147e-001, + -1.142476e-001, + -1.358286e+000, + -2.268740e-001, + 9.805731e-001, + -5.163195e+000, + -8.589000e-003, + 7.697565e-001, + 2.198750e-001, + 7.029301e+000, + 1.567170e+000, + -7.167767e-001, + -2.969978e-001, + 2.300987e-001, + 7.956088e+000, + 6.339728e-001, + -6.195374e-001, + 2.502844e-001, + -6.307569e+000, + -2.208822e-002, + -1.210525e+000, + -1.245541e-001, + 9.742409e-001, + -9.705683e+000, + -1.658899e+000, + 1.365829e+000, + 2.003500e-001, + 4.400174e+000, + 1.042345e+000, + -1.061524e+000, + -2.323500e-001, + 1.284880e+000, + 1.294836e+001, + -5.011732e+000, + -9.141086e-001, + 2.723804e-001, + 6.225528e-001, + 6.030977e-001, + // albedo 1, turbidity 9 + -1.548946e+000, + -6.802676e-001, + -1.274231e+001, + 1.312954e+001, + -1.834225e-002, + 7.051580e-001, + -8.330446e-006, + 2.320435e+000, + 9.001244e-001, + -1.867128e+000, + -9.670210e-001, + -6.847422e+000, + 7.952765e+000, + -1.985986e-002, + 1.690548e-002, + -1.176902e-002, + 8.988469e-001, + -3.242269e-001, + -3.470633e+000, + -1.555121e+000, + 2.684966e+000, + -5.964736e+000, + -5.524158e-003, + 1.187089e+000, + 2.552534e-001, + 4.394076e+000, + 1.656399e+000, + 4.095837e-001, + 1.440005e-001, + -5.602190e-001, + 7.110869e+000, + 2.313366e-001, + -1.373206e+000, + 1.973962e-001, + -4.112998e+000, + -5.877027e-002, + -1.540633e+000, + -3.264234e-001, + 1.072405e+000, + -7.205546e+000, + -5.125251e-001, + 2.009905e+000, + 1.531985e-001, + 2.113439e+000, + 1.042547e+000, + -1.013330e+000, + -2.663837e-001, + 1.168934e+000, + 9.315778e+000, + -4.320502e+000, + -1.303393e+000, + 2.825872e-001, + 2.365015e-001, + 5.993344e-001, + // albedo 1, turbidity 10 + -2.055426e+000, + -1.093229e+000, + -3.487182e+000, + 3.753855e+000, + -4.639837e-002, + 5.797714e-001, + -8.056992e-006, + 1.916262e+000, + 9.001298e-001, + -1.643864e+000, + -9.676934e-001, + -1.147133e+001, + 1.253880e+001, + 2.347351e-002, + -1.602964e-002, + 4.481579e-003, + 1.373645e+000, + -2.884929e-001, + -6.156336e+000, + -2.568735e+000, + 6.499533e+000, + -9.136753e+000, + -1.751599e-001, + 1.876960e+000, + -7.959051e-002, + 3.074951e+000, + 1.579874e+000, + 7.378485e-001, + -2.614544e-001, + -2.861777e+000, + 9.518947e+000, + 5.033808e-001, + -1.844722e+000, + 6.855962e-001, + -1.497263e+000, + -9.081643e-002, + -1.341940e+000, + -3.847183e-001, + 2.045437e+000, + -1.179073e+001, + -1.532773e+000, + 1.639939e+000, + -2.668175e-001, + -8.401827e-001, + 1.083722e+000, + -1.086126e+000, + -2.811402e-001, + 7.554239e-001, + 1.862181e+001, + -4.343385e+000, + -8.611011e-001, + 3.146558e-001, + 7.022438e-001, + 5.872694e-001, +}; + +double datasetRad560[] = +{ + // albedo 0, turbidity 1 + 1.518543e-002, + 1.176421e-002, + 1.736355e-002, + 1.085640e-001, + 4.928107e-002, + 6.789277e-002, + // albedo 0, turbidity 2 + 1.482072e-002, + 1.335627e-002, + 7.685462e-003, + 1.336625e-001, + 4.842644e-002, + 7.083679e-002, + // albedo 0, turbidity 3 + 1.406436e-002, + 1.604888e-002, + -9.000273e-003, + 1.735923e-001, + 4.526955e-002, + 7.742648e-002, + // albedo 0, turbidity 4 + 1.296165e-002, + 2.074811e-002, + -3.672731e-002, + 2.310227e-001, + 4.272776e-002, + 8.807197e-002, + // albedo 0, turbidity 5 + 1.185836e-002, + 2.557920e-002, + -6.240734e-002, + 2.766326e-001, + 4.714655e-002, + 9.809189e-002, + // albedo 0, turbidity 6 + 1.107469e-002, + 2.825097e-002, + -7.618392e-002, + 2.978619e-001, + 5.429803e-002, + 1.044545e-001, + // albedo 0, turbidity 7 + 1.030435e-002, + 3.060206e-002, + -8.858708e-002, + 3.072427e-001, + 8.473378e-002, + 1.077059e-001, + // albedo 0, turbidity 8 + 9.197751e-003, + 3.269422e-002, + -9.785581e-002, + 2.997964e-001, + 1.328366e-001, + 1.192367e-001, + // albedo 0, turbidity 9 + 8.191103e-003, + 3.038883e-002, + -8.623921e-002, + 2.362785e-001, + 2.259917e-001, + 1.331360e-001, + // albedo 0, turbidity 10 + 7.275920e-003, + 2.128876e-002, + -4.464890e-002, + 1.022425e-001, + 3.640615e-001, + 1.521652e-001, + // albedo 1, turbidity 1 + 1.623600e-002, + 1.386631e-002, + 1.790676e-002, + 9.999420e-002, + 1.334051e-001, + 1.524062e-001, + // albedo 1, turbidity 2 + 1.580346e-002, + 1.594123e-002, + 5.795411e-003, + 1.311774e-001, + 1.256680e-001, + 1.627637e-001, + // albedo 1, turbidity 3 + 1.508292e-002, + 1.888592e-002, + -1.186753e-002, + 1.719109e-001, + 1.235706e-001, + 1.739866e-001, + // albedo 1, turbidity 4 + 1.385430e-002, + 2.238574e-002, + -3.390048e-002, + 2.155912e-001, + 1.366535e-001, + 1.840316e-001, + // albedo 1, turbidity 5 + 1.289448e-002, + 2.572803e-002, + -5.406854e-002, + 2.481650e-001, + 1.539663e-001, + 1.943329e-001, + // albedo 1, turbidity 6 + 1.229427e-002, + 2.715903e-002, + -6.212273e-002, + 2.543339e-001, + 1.780617e-001, + 1.961306e-001, + // albedo 1, turbidity 7 + 1.142362e-002, + 2.928317e-002, + -7.246911e-002, + 2.573202e-001, + 2.123595e-001, + 2.030761e-001, + // albedo 1, turbidity 8 + 1.030850e-002, + 2.979460e-002, + -7.568370e-002, + 2.359473e-001, + 2.693691e-001, + 2.158786e-001, + // albedo 1, turbidity 9 + 9.256414e-003, + 2.622384e-002, + -5.910990e-002, + 1.602850e-001, + 3.679614e-001, + 2.281095e-001, + // albedo 1, turbidity 10 + 8.220083e-003, + 1.701079e-002, + -1.768254e-002, + 2.593519e-002, + 4.977242e-001, + 2.394514e-001, +}; + +double dataset600[] = +{ + // albedo 0, turbidity 1 + -1.120756e+000, + -1.756050e-001, + -3.557732e+000, + 5.117996e+000, + -1.042966e-001, + 1.269364e+000, + 1.318863e-002, + 3.718263e+000, + 5.393663e-001, + -1.170564e+000, + -1.845108e-001, + 1.081952e+000, + 1.330153e+000, + -2.486698e-001, + 7.864551e-001, + 3.710973e-003, + 4.567181e+000, + 4.998408e-001, + -1.036563e+000, + -2.605284e-001, + 3.803752e+000, + -3.585400e+000, + -9.070196e-001, + 2.380958e+000, + -1.320680e-002, + -4.210738e+000, + 1.085121e+000, + -1.193752e+000, + -1.236757e-001, + -2.036484e-001, + 4.137855e+000, + 1.566414e+000, + 8.510547e-001, + 1.653213e-002, + 5.488784e+000, + 2.335910e-001, + -9.950781e-001, + -2.103974e-001, + 2.992004e+000, + -4.050491e+000, + -6.354208e+000, + 2.250652e+000, + -1.548511e-002, + -1.876535e+000, + 9.733518e-001, + -1.106820e+000, + -1.804412e-001, + 1.960315e+000, + 3.667064e+000, + -2.460232e+000, + 9.553453e-001, + 1.238019e-002, + 1.307691e+000, + 5.564710e-001, + // albedo 0, turbidity 2 + -1.112834e+000, + -1.534956e-001, + -4.968015e+000, + 6.079068e+000, + -8.917942e-002, + 1.167545e+000, + 5.945633e-002, + 5.295468e+000, + 6.272123e-001, + -1.160910e+000, + -1.640745e-001, + 7.416807e-001, + -2.894668e-001, + -8.983936e-002, + 3.778575e-002, + 2.133300e-001, + 6.390765e+000, + 3.592393e-001, + -1.054872e+000, + -2.642844e-001, + 4.375802e+000, + -1.434824e+000, + -7.521504e-001, + 3.669027e+000, + -2.992879e-001, + -5.159653e+000, + 1.284643e+000, + -1.147542e+000, + 1.011446e-002, + -2.308529e+000, + 1.587994e+000, + 1.226957e+000, + -1.328837e+000, + 5.996235e-001, + 1.004278e+001, + 5.212352e-002, + -1.023945e+000, + -2.867193e-001, + 3.733660e+000, + -2.572157e+000, + -7.749675e+000, + 3.927326e+000, + -3.230666e-001, + -4.260418e+000, + 1.091761e+000, + -1.100815e+000, + -1.590204e-001, + 1.413330e+000, + 6.546557e+000, + -2.407235e+000, + -2.678587e-001, + 2.367155e-001, + 2.242596e+000, + 5.273419e-001, + // albedo 0, turbidity 3 + -1.137271e+000, + -1.838447e-001, + -2.268731e+000, + 3.013967e+000, + -1.471213e-001, + 9.047947e-001, + 8.086373e-002, + 4.834215e+000, + 6.545047e-001, + -1.136415e+000, + -1.536696e-001, + -1.821062e+000, + 1.756804e+000, + -9.313635e-002, + 2.208938e-001, + 2.021774e-001, + 7.289664e+000, + 4.997813e-001, + -1.173214e+000, + -3.202233e-001, + 4.868221e+000, + -2.485467e+000, + -7.693969e-001, + 3.027854e+000, + -1.745243e-001, + -4.896365e+000, + 1.014186e+000, + -1.021346e+000, + 7.262425e-002, + -2.940205e+000, + 3.357462e+000, + 1.150486e+000, + -1.710207e+000, + 7.381637e-001, + 9.857427e+000, + 3.036725e-001, + -1.082107e+000, + -2.721172e-001, + 3.071962e+000, + -7.058088e+000, + -5.103538e+000, + 3.852302e+000, + -2.281911e-001, + -2.565665e+000, + 9.669584e-001, + -1.076296e+000, + -1.655466e-001, + 1.323765e+000, + 1.496892e+001, + -3.773928e+000, + -5.211752e-001, + 2.583009e-001, + 1.797906e+000, + 5.888323e-001, + // albedo 0, turbidity 4 + -1.180432e+000, + -2.327942e-001, + -7.152650e-001, + 1.078120e+000, + -2.935788e-001, + 6.977295e-001, + 1.118530e-001, + 4.270574e+000, + 6.241267e-001, + -1.260549e+000, + -2.865438e-001, + -2.736770e+000, + 2.720969e+000, + 1.291231e-001, + 4.072562e-001, + 4.510932e-002, + 5.412464e+000, + 6.781695e-001, + -1.119712e+000, + -2.521160e-001, + 4.860527e+000, + -1.950603e+000, + -1.598805e+000, + 2.556718e+000, + 2.462723e-002, + -2.059404e+000, + 8.000995e-001, + -1.056386e+000, + 2.018258e-002, + -3.728955e+000, + 1.022270e+000, + 1.722210e+000, + -2.691554e+000, + 8.329883e-001, + 6.982450e+000, + 4.746778e-001, + -1.044811e+000, + -2.531291e-001, + 3.102204e+000, + -3.662632e+000, + -5.609358e+000, + 4.574385e+000, + -2.173600e-001, + -1.646110e+000, + 8.593305e-001, + -1.090027e+000, + -1.699462e-001, + 7.118896e-001, + 1.287572e+001, + -2.747429e+000, + -1.706223e+000, + 4.483382e-001, + 2.029605e+000, + 6.366599e-001, + // albedo 0, turbidity 5 + -1.232266e+000, + -2.905676e-001, + -4.158347e-001, + 5.285264e-001, + -3.064312e-001, + 5.569478e-001, + 1.195289e-001, + 3.788091e+000, + 5.970680e-001, + -1.451205e+000, + -5.169964e-001, + -2.018331e-001, + 1.499655e+000, + -1.575963e+000, + 2.761459e-001, + 5.184923e-002, + 2.301119e+000, + 6.177771e-001, + -1.059832e+000, + -7.658003e-002, + 6.456894e-001, + -4.398594e+000, + 5.369604e+000, + 2.121235e+000, + 3.210869e-002, + 3.542794e+000, + 9.114953e-001, + -1.040966e+000, + -1.269405e-001, + -3.751056e-001, + 1.229395e+001, + -1.977090e+001, + -2.458488e+000, + 7.711932e-001, + 8.079227e-001, + 3.865305e-001, + -1.061923e+000, + -1.981907e-001, + 1.089854e+000, + -3.414507e+000, + 8.032592e+000, + 3.459965e+000, + -1.253984e-001, + 1.188198e+000, + 8.639277e-001, + -1.070607e+000, + -1.627049e-001, + 7.012071e-001, + 2.138780e+000, + -5.006595e+000, + -1.096698e+000, + 6.658771e-001, + 1.999430e+000, + 6.557122e-001, + // albedo 0, turbidity 6 + -1.280090e+000, + -3.357179e-001, + -9.337154e-002, + -5.075553e-003, + -3.096112e+000, + 4.001499e-001, + 1.489818e-001, + 3.515349e+000, + 5.571477e-001, + -1.648190e+000, + -7.024227e-001, + -2.925797e-002, + 1.658094e+000, + 4.229924e+000, + 3.502683e-001, + 3.180108e-002, + 1.430955e+000, + 5.739552e-001, + -9.589189e-001, + 2.559557e-002, + 2.192186e-001, + -5.276316e+000, + -4.153922e+000, + 1.855574e+000, + 3.052317e-002, + 4.323694e+000, + 9.839497e-001, + -1.076589e+000, + -1.936109e-001, + -4.162615e-001, + 1.202609e+001, + -9.327314e+000, + -2.326508e+000, + 7.983253e-001, + 2.100845e-001, + 3.135170e-001, + -1.049437e+000, + -1.694738e-001, + 1.062110e+000, + 5.575299e+000, + 4.846701e-001, + 3.089474e+000, + -1.584214e-001, + 1.369457e+000, + 8.995377e-001, + -1.069986e+000, + -1.830827e-001, + 5.006422e-001, + -3.063835e-003, + -2.768514e+000, + -1.258027e+000, + 6.679955e-001, + 1.840288e+000, + 6.498676e-001, + // albedo 0, turbidity 7 + -1.328971e+000, + -3.853230e-001, + -2.343098e-001, + -6.505414e-003, + -4.859294e+000, + 3.752993e-001, + 1.670718e-001, + 3.474961e+000, + 4.998573e-001, + -2.023062e+000, + -1.023840e+000, + 4.308501e-001, + 1.473146e+000, + 6.112105e+000, + 5.767265e-001, + -3.107377e-002, + 7.748759e-002, + 5.016978e-001, + -8.575747e-001, + 1.580212e-001, + -7.365004e-001, + -4.007773e+000, + -4.051657e+000, + 8.889282e-001, + 1.978413e-001, + 6.282132e+000, + 1.063928e+000, + -1.073428e+000, + -3.228761e-001, + 4.793085e-001, + 5.455778e+000, + -7.830559e+000, + -9.794478e-001, + 5.370543e-001, + -3.022750e+000, + 2.818600e-001, + -1.057120e+000, + -1.266841e-001, + 4.555368e-001, + 1.201278e+001, + -9.293773e-001, + 1.439595e+000, + 3.262182e-002, + 2.890364e+000, + 8.821540e-001, + -1.060079e+000, + -1.816680e-001, + 3.541107e-001, + -2.642196e-003, + -2.588317e+000, + -5.640010e-001, + 6.643994e-001, + 1.673077e+000, + 6.658333e-001, + // albedo 0, turbidity 8 + -1.395409e+000, + -4.658947e-001, + -4.370597e-001, + 1.342039e+000, + -1.108674e+000, + 6.439316e-001, + 1.355229e-002, + 3.241153e+000, + 6.696079e-001, + -2.418167e+000, + -1.266061e+000, + 3.287382e-001, + -1.486721e+000, + -6.770180e-001, + 2.439008e-001, + 1.703788e-001, + 1.664559e-002, + -6.330217e-003, + -1.221212e+000, + -1.072571e-001, + -1.655914e+000, + 2.659047e+000, + 6.830770e+000, + 4.984792e-001, + 2.538158e-001, + 6.500660e+000, + 1.486576e+000, + -7.182331e-001, + -2.519055e-001, + 1.641261e+000, + -5.500375e+000, + -1.253143e+001, + -1.542672e-001, + 1.741161e-001, + -4.907497e+000, + 7.968864e-002, + -1.207117e+000, + -1.635739e-001, + -3.256308e-001, + 1.409033e+001, + 1.107883e+000, + 7.217342e-001, + 3.158860e-001, + 3.537550e+000, + 9.389751e-001, + -1.015927e+000, + -1.890895e-001, + 4.180376e-001, + 9.528535e+000, + -4.073979e+000, + -8.713087e-001, + 4.899379e-001, + 1.277831e+000, + 6.519818e-001, + // albedo 0, turbidity 9 + -1.551242e+000, + -6.400568e-001, + -3.673011e-001, + 1.623228e+000, + -1.482572e+000, + 5.625944e-001, + -1.130924e-005, + 2.792007e+000, + 9.000924e-001, + -1.971409e+000, + -9.004995e-001, + -2.337582e-001, + -1.511905e+000, + 6.645432e-002, + 6.149087e-001, + -3.184094e-002, + 2.026210e+000, + -2.799058e-001, + -3.464015e+000, + -1.604654e+000, + -1.514516e+000, + 2.768075e+000, + 4.084166e+000, + -4.287171e-001, + 7.112107e-001, + 2.896460e+000, + 1.502031e+000, + 4.069978e-001, + 2.775394e-001, + 1.525761e+000, + -5.264056e+000, + -7.108445e+000, + 1.134996e+000, + -4.122625e-001, + -2.558151e+000, + 2.009854e-001, + -1.504217e+000, + -3.618442e-001, + -2.305374e-001, + 1.434481e+001, + -1.713254e+000, + -5.670708e-001, + 5.206848e-001, + 1.704009e+000, + 8.447497e-001, + -9.753124e-001, + -2.080868e-001, + 2.450141e-001, + -3.535206e-003, + -2.121317e+000, + -1.425634e-001, + 4.670084e-001, + 1.027875e+000, + 6.735543e-001, + // albedo 0, turbidity 10 + -2.027207e+000, + -1.003600e+000, + -3.813114e-001, + 9.357907e-001, + -1.031886e+000, + 5.523389e-001, + -8.883940e-006, + 2.339379e+000, + 9.001659e-001, + -1.506235e+000, + -7.795241e-001, + -4.313309e-001, + 9.124054e-001, + -7.484352e-001, + -8.417756e-002, + -1.426561e-002, + 2.571178e+000, + -2.504298e-001, + -6.482777e+000, + -2.700075e+000, + -1.556622e+000, + -2.978497e+000, + 4.623255e+000, + 1.953868e+000, + 3.113178e-001, + 2.311303e+000, + 1.451021e+000, + 9.357272e-001, + -1.066566e-001, + 1.476763e+000, + 6.889797e+000, + -1.038036e+001, + -2.094856e+000, + 1.330069e-001, + -1.446404e+000, + 1.121890e-001, + -1.398229e+000, + -3.167573e-001, + -1.276866e-001, + 1.239440e+000, + 1.816678e+000, + 1.586775e+000, + 8.043533e-002, + 3.219192e-001, + 9.200620e-001, + -1.070734e+000, + -3.636167e-001, + 2.426490e-001, + 8.282765e+000, + -3.588710e+000, + -9.105402e-001, + 3.760276e-001, + 5.756358e-001, + 6.508161e-001, + // albedo 1, turbidity 1 + -1.120757e+000, + -1.756034e-001, + -3.557732e+000, + 5.117996e+000, + -1.042960e-001, + 1.269364e+000, + 1.318834e-002, + 3.718263e+000, + 5.393663e-001, + -1.170565e+000, + -1.845093e-001, + 1.081952e+000, + 1.330153e+000, + -2.486697e-001, + 7.864550e-001, + 3.709405e-003, + 4.567181e+000, + 4.998408e-001, + -1.036564e+000, + -2.605265e-001, + 3.803752e+000, + -3.585400e+000, + -9.070196e-001, + 2.380958e+000, + -1.320996e-002, + -4.210738e+000, + 1.085121e+000, + -1.193753e+000, + -1.236733e-001, + -2.036483e-001, + 4.137855e+000, + 1.566414e+000, + 8.510543e-001, + 1.652749e-002, + 5.488784e+000, + 2.335910e-001, + -9.950796e-001, + -2.103948e-001, + 2.992004e+000, + -4.050491e+000, + -6.354208e+000, + 2.250652e+000, + -1.548996e-002, + -1.876535e+000, + 9.733518e-001, + -1.106823e+000, + -1.804388e-001, + 1.960315e+000, + 3.667064e+000, + -2.460232e+000, + 9.553451e-001, + 1.237721e-002, + 1.307692e+000, + 5.564710e-001, + // albedo 1, turbidity 2 + -1.113356e+000, + -1.560185e-001, + -7.788803e+000, + 8.963658e+000, + -5.322872e-002, + 1.116670e+000, + 7.024842e-002, + 4.886694e+000, + 5.931909e-001, + -1.134232e+000, + -1.667475e-001, + 4.176259e+000, + -3.242194e+000, + -7.889230e-002, + 8.254326e-002, + 1.400333e-001, + 5.395289e+000, + 4.862375e-001, + -1.105040e+000, + -2.389195e-001, + 9.866260e-001, + 1.271557e+000, + -6.066849e-001, + 3.599900e+000, + -1.681445e-001, + -2.812867e+000, + 1.053791e+000, + -1.078302e+000, + -2.258635e-002, + 7.407482e-001, + 1.805864e-001, + 9.070580e-001, + -1.720820e+000, + 4.256187e-001, + 6.982502e+000, + 3.350778e-001, + -1.070883e+000, + -2.752054e-001, + 2.937203e+000, + -2.246366e+000, + -9.847865e+000, + 3.104714e+000, + -2.573859e-001, + -2.816401e+000, + 8.478900e-001, + -1.090880e+000, + -1.453755e-001, + 2.046382e+000, + 5.595795e+000, + -2.809181e+000, + -9.239576e-001, + 1.783176e-001, + 2.051350e+000, + 5.815062e-001, + // albedo 1, turbidity 3 + -1.136641e+000, + -1.825277e-001, + -3.464338e+000, + 4.413974e+000, + -1.123917e-001, + 1.009115e+000, + 5.542918e-002, + 4.702599e+000, + 6.799974e-001, + -1.146478e+000, + -1.593833e-001, + -9.055790e-001, + 8.991902e-001, + -4.711416e-002, + -3.813573e-001, + 2.290428e-001, + 6.961903e+000, + 4.206011e-001, + -1.136317e+000, + -3.103198e-001, + 4.219694e+000, + -2.031887e+000, + -7.184952e-001, + 3.795646e+000, + -1.650547e-001, + -5.402471e+000, + 1.118561e+000, + -1.044973e+000, + 7.826651e-002, + -2.043684e+000, + 3.410720e+000, + 1.974969e+000, + -2.736513e+000, + 6.828176e-001, + 1.049084e+001, + 1.894241e-001, + -1.076125e+000, + -2.930526e-001, + 3.722784e+000, + -7.364061e+000, + -7.399428e+000, + 4.034307e+000, + -3.489831e-001, + -3.438955e+000, + 1.077145e+000, + -1.100551e+000, + -1.533449e-001, + 1.767589e+000, + 1.479022e+001, + -2.910058e+000, + -1.732923e+000, + 2.193598e-001, + 1.880974e+000, + 4.999331e-001, + // albedo 1, turbidity 4 + -1.175282e+000, + -2.274651e-001, + -8.788053e-001, + 1.446934e+000, + -2.568124e-001, + 7.201567e-001, + 1.054963e-001, + 4.149007e+000, + 6.084060e-001, + -1.224868e+000, + -2.528005e-001, + -2.861303e+000, + 3.033667e+000, + 1.405049e-001, + 2.481768e-001, + 6.435189e-002, + 5.409907e+000, + 6.372238e-001, + -1.144647e+000, + -3.063749e-001, + 4.347579e+000, + -2.473291e+000, + -1.180139e+000, + 2.550631e+000, + 3.833967e-002, + -3.231444e+000, + 8.737219e-001, + -1.028428e+000, + 8.888974e-002, + -2.431225e+000, + 2.811511e+000, + 2.400771e+000, + -2.380403e+000, + 7.114868e-001, + 8.190106e+000, + 4.166861e-001, + -1.076730e+000, + -3.129260e-001, + 3.582560e+000, + -5.902417e+000, + -6.959342e+000, + 3.528030e+000, + -2.613596e-001, + -2.993803e+000, + 8.934226e-001, + -1.107957e+000, + -1.728652e-001, + 1.679540e+000, + 1.238391e+001, + -2.945620e+000, + -1.568811e+000, + 2.418421e-001, + 1.360652e+000, + 6.182405e-001, + // albedo 1, turbidity 5 + -1.215034e+000, + -2.755459e-001, + -1.477751e-001, + 4.448730e-001, + -4.027817e-001, + 4.787013e-001, + 1.200617e-001, + 3.613995e+000, + 5.999756e-001, + -1.443500e+000, + -5.194350e-001, + 1.588243e-001, + 1.429114e+000, + -2.310655e+000, + 3.033213e-001, + 2.308566e-002, + 1.894189e+000, + 6.066576e-001, + -1.051421e+000, + -9.990731e-002, + 5.187710e-001, + -3.890856e+000, + 7.794599e+000, + 1.810628e+000, + 6.532073e-002, + 2.564480e+000, + 9.334916e-001, + -1.034548e+000, + -6.777012e-002, + -2.587520e-002, + 1.062675e+001, + -2.266196e+001, + -2.002081e+000, + 7.508804e-001, + 2.022771e+000, + 3.517577e-001, + -1.090576e+000, + -2.542157e-001, + 2.213560e+000, + -3.563890e+000, + 9.180955e+000, + 2.780121e+000, + -2.656654e-001, + -5.012514e-002, + 8.968751e-001, + -1.104356e+000, + -1.955634e-001, + 1.782217e+000, + 1.085584e+000, + -5.011522e+000, + -1.075140e+000, + 3.828238e-001, + 6.133363e-001, + 6.448312e-001, + // albedo 1, turbidity 6 + -1.261147e+000, + -3.271435e-001, + 1.136430e-001, + -3.464762e-003, + -3.025565e+000, + 3.660675e-001, + 1.337332e-001, + 3.190374e+000, + 5.655627e-001, + -1.611753e+000, + -6.914768e-001, + 2.911405e-001, + 1.806475e+000, + 2.823240e+000, + 3.320241e-001, + 2.606391e-002, + 9.946717e-001, + 5.581393e-001, + -9.491151e-001, + 9.848038e-003, + 2.711804e-001, + -5.319331e+000, + 1.135835e-001, + 1.669815e+000, + 3.604115e-002, + 3.506230e+000, + 1.008650e+000, + -1.109597e+000, + -1.650703e-001, + -3.529912e-001, + 1.209251e+001, + -1.435008e+001, + -2.085063e+000, + 7.955493e-001, + 1.240407e+000, + 2.856509e-001, + -1.035803e+000, + -1.963707e-001, + 2.407913e+000, + -1.564693e+000, + 4.483717e+000, + 2.795295e+000, + -2.799711e-001, + 6.851892e-002, + 9.312311e-001, + -1.132687e+000, + -2.383551e-001, + 1.590132e+000, + 1.025733e+000, + -4.837236e+000, + -1.334195e+000, + 4.022060e-001, + 4.281273e-001, + 6.334802e-001, + // albedo 1, turbidity 7 + -1.310240e+000, + -3.819813e-001, + 2.469845e-002, + -7.043983e-003, + -5.009925e+000, + 3.560980e-001, + 1.582176e-001, + 2.966421e+000, + 4.998910e-001, + -1.993638e+000, + -1.029241e+000, + 7.780588e-001, + 1.080741e+000, + 7.179598e+000, + 2.478857e-001, + 1.935012e-002, + -3.434240e-001, + 4.813586e-001, + -8.209344e-001, + 1.728853e-001, + -7.045676e-001, + -3.384688e+000, + -4.855111e+000, + 1.661563e+000, + 4.252574e-002, + 5.701648e+000, + 1.110774e+000, + -1.130678e+000, + -3.273624e-001, + 5.555549e-001, + 5.800793e+000, + -8.817085e+000, + -2.344445e+000, + 7.532869e-001, + -2.418368e+000, + 2.201826e-001, + -1.032417e+000, + -1.335568e-001, + 1.707051e+000, + 8.168228e+000, + -5.151972e-003, + 2.785504e+000, + -2.123703e-001, + 1.770173e+000, + 9.064082e-001, + -1.125604e+000, + -2.328530e-001, + 1.537245e+000, + 4.347312e+000, + -4.368526e+000, + -1.527321e+000, + 3.574251e-001, + 5.982159e-001, + 6.705880e-001, + // albedo 1, turbidity 8 + -1.381743e+000, + -4.607543e-001, + -2.754732e-001, + 9.134243e-001, + -7.581174e-001, + 6.220814e-001, + 2.353878e-002, + 2.891536e+000, + 6.426078e-001, + -2.362341e+000, + -1.306326e+000, + 6.909936e-001, + -7.196658e-001, + -4.501812e-001, + -5.219928e-002, + 2.111683e-001, + -9.499603e-001, + 3.301774e-002, + -1.218829e+000, + -6.834768e-002, + -1.241760e+000, + 1.122890e+000, + 5.750762e+000, + 1.231058e+000, + 6.884716e-003, + 6.801032e+000, + 1.512485e+000, + -6.781560e-001, + -2.446588e-001, + 1.302166e+000, + -2.334650e+000, + -1.218960e+001, + -1.257952e+000, + 5.387955e-001, + -5.559859e+000, + -1.209718e-002, + -1.270037e+000, + -1.870204e-001, + 9.650201e-001, + 9.976613e+000, + 1.444014e+000, + 1.523442e+000, + -2.753646e-002, + 3.415790e+000, + 1.017645e+000, + -1.046712e+000, + -2.173979e-001, + 1.473981e+000, + 4.368847e+000, + -4.642506e+000, + -1.049951e+000, + 3.511771e-001, + 2.379457e-001, + 6.307946e-001, + // albedo 1, turbidity 9 + -1.532302e+000, + -6.390752e-001, + -1.369123e-001, + 1.480171e+000, + -1.313391e+000, + 5.210118e-001, + -1.053608e-005, + 2.352090e+000, + 9.000581e-001, + -2.042866e+000, + -1.015386e+000, + 1.750126e-001, + -9.921800e-001, + -9.449241e-002, + 4.791921e-001, + -2.744712e-002, + 9.337925e-001, + -2.902902e-001, + -3.413474e+000, + -1.485380e+000, + -1.301300e+000, + 1.266203e+000, + 3.869657e+000, + -1.405606e-002, + 6.109944e-001, + 3.883967e+000, + 1.540321e+000, + 5.838664e-001, + 2.370098e-001, + 1.420200e+000, + -1.803001e+000, + -6.672775e+000, + 2.866921e-001, + -2.599250e-001, + -4.162164e+000, + 1.296901e-001, + -1.654226e+000, + -3.296843e-001, + 6.245723e-001, + 7.899655e+000, + -1.079857e+000, + 3.145485e-001, + 4.085894e-001, + 2.258895e+000, + 9.071309e-001, + -9.748612e-001, + -2.545963e-001, + 1.374064e+000, + -2.816107e-003, + -2.589259e+000, + -5.960628e-001, + 2.656787e-001, + -1.458520e-001, + 6.529731e-001, + // albedo 1, turbidity 10 + -1.944006e+000, + -9.776516e-001, + -2.425412e-001, + 8.187180e-001, + -6.620102e-001, + 5.676187e-001, + -7.857556e-006, + 1.944153e+000, + 9.001463e-001, + -1.294455e+000, + -7.294996e-001, + -1.718682e-002, + 1.261264e+000, + -1.170104e+000, + -2.029198e-001, + -1.306023e-002, + 1.821821e+000, + -2.533820e-001, + -6.849943e+000, + -2.937611e+000, + -1.107710e+000, + -3.923478e+000, + 5.018293e+000, + 2.040419e+000, + 2.845113e-001, + 2.080902e+000, + 1.460328e+000, + 1.445166e+000, + 1.641979e-001, + 9.591325e-001, + 8.676572e+000, + -1.098801e+001, + -2.274573e+000, + 1.340040e-001, + -1.166380e+000, + 1.014270e-001, + -1.596800e+000, + -4.130457e-001, + 9.250919e-001, + -1.406592e+000, + 2.474727e+000, + 1.748285e+000, + 9.929937e-002, + -6.705073e-001, + 9.210646e-001, + -1.035617e+000, + -3.537996e-001, + 1.073337e+000, + 6.090616e+000, + -3.710420e+000, + -9.390485e-001, + 2.233788e-001, + -3.213961e-004, + 6.545784e-001, +}; + +double datasetRad600[] = +{ + // albedo 0, turbidity 1 + 1.605147e-002, + 1.028116e-002, + 2.949675e-002, + 7.265851e-002, + 4.608279e-002, + 5.069475e-002, + // albedo 0, turbidity 2 + 1.569474e-002, + 1.190744e-002, + 1.996322e-002, + 1.044303e-001, + 3.746120e-002, + 5.764085e-002, + // albedo 0, turbidity 3 + 1.507252e-002, + 1.350309e-002, + 7.291417e-003, + 1.433035e-001, + 3.625213e-002, + 6.291384e-002, + // albedo 0, turbidity 4 + 1.383183e-002, + 1.670171e-002, + -1.576321e-002, + 1.993796e-001, + 3.837478e-002, + 7.063028e-002, + // albedo 0, turbidity 5 + 1.253723e-002, + 2.261520e-002, + -4.847485e-002, + 2.646653e-001, + 2.855366e-002, + 8.568437e-002, + // albedo 0, turbidity 6 + 1.179552e-002, + 2.546904e-002, + -6.503150e-002, + 2.924065e-001, + 3.516626e-002, + 9.101182e-002, + // albedo 0, turbidity 7 + 1.070809e-002, + 3.005971e-002, + -8.793572e-002, + 3.255182e-001, + 4.780714e-002, + 1.014896e-001, + // albedo 0, turbidity 8 + 9.466972e-003, + 3.330913e-002, + -1.028545e-001, + 3.284098e-001, + 9.602966e-002, + 1.103224e-001, + // albedo 0, turbidity 9 + 8.190696e-003, + 3.248675e-002, + -9.882934e-002, + 2.798409e-001, + 1.829752e-001, + 1.263322e-001, + // albedo 0, turbidity 10 + 7.225549e-003, + 2.433471e-002, + -6.029571e-002, + 1.468935e-001, + 3.282492e-001, + 1.441367e-001, + // albedo 1, turbidity 1 + 1.676204e-002, + 1.269480e-002, + 2.674342e-002, + 7.380770e-002, + 1.072658e-001, + 1.211512e-001, + // albedo 1, turbidity 2 + 1.649305e-002, + 1.445974e-002, + 1.662432e-002, + 1.056364e-001, + 1.002831e-001, + 1.317330e-001, + // albedo 1, turbidity 3 + 1.577677e-002, + 1.637005e-002, + 2.821156e-003, + 1.465189e-001, + 9.971575e-002, + 1.424798e-001, + // albedo 1, turbidity 4 + 1.469049e-002, + 1.969668e-002, + -2.105278e-002, + 2.024104e-001, + 1.062768e-001, + 1.557134e-001, + // albedo 1, turbidity 5 + 1.339480e-002, + 2.402713e-002, + -4.671234e-002, + 2.518382e-001, + 1.135974e-001, + 1.711111e-001, + // albedo 1, turbidity 6 + 1.274349e-002, + 2.648472e-002, + -6.068209e-002, + 2.720113e-001, + 1.285128e-001, + 1.776298e-001, + // albedo 1, turbidity 7 + 1.165402e-002, + 2.958682e-002, + -7.746524e-002, + 2.912132e-001, + 1.536569e-001, + 1.896419e-001, + // albedo 1, turbidity 8 + 1.048769e-002, + 3.115400e-002, + -8.550235e-002, + 2.769964e-001, + 2.173505e-001, + 1.991057e-001, + // albedo 1, turbidity 9 + 9.312926e-003, + 2.881725e-002, + -7.387358e-002, + 2.079818e-001, + 3.221838e-001, + 2.120657e-001, + // albedo 1, turbidity 10 + 8.151793e-003, + 1.998414e-002, + -3.316224e-002, + 6.957927e-002, + 4.654511e-001, + 2.260782e-001, +}; + +double dataset640[] = +{ + // albedo 0, turbidity 1 + -1.113346e+000, + -1.715076e-001, + -2.657094e+000, + 4.632520e+000, + -1.092310e-001, + 1.421516e+000, + 3.230348e-003, + 2.697889e+000, + 6.262031e-001, + -1.193355e+000, + -2.074379e-001, + 1.431777e+000, + 8.245570e-001, + -1.936967e-001, + 9.392137e-001, + 1.972523e-002, + 3.001209e+000, + 4.415825e-001, + -9.337792e-001, + -2.037239e-001, + 3.943675e+000, + -2.487730e+000, + -9.876315e-001, + 2.772411e+000, + -4.919462e-002, + -4.176827e+000, + 1.026227e+000, + -1.297623e+000, + -1.296758e-001, + -3.144502e-001, + 2.454199e+000, + 2.433614e+000, + 5.298928e-001, + 7.814939e-002, + 6.564581e+000, + 5.587597e-001, + -9.325270e-001, + -1.997966e-001, + 3.363315e+000, + -1.887198e+000, + -8.905212e+000, + 2.808597e+000, + -9.537165e-002, + -3.059702e+000, + 5.403718e-001, + -1.125650e+000, + -1.904795e-001, + 2.099998e+000, + 1.251930e+000, + -1.899312e+000, + 5.255919e-001, + 9.848260e-002, + 9.627433e-001, + 6.251236e-001, + // albedo 0, turbidity 2 + -1.104956e+000, + -1.372068e-001, + -2.996624e+000, + 4.260021e+000, + -1.263137e-001, + 1.327775e+000, + 7.595887e-002, + 5.301229e+000, + 6.478109e-001, + -1.158426e+000, + -1.921879e-001, + 3.371987e-001, + 8.543727e-001, + -1.195421e-001, + 2.178871e-001, + 1.573997e-001, + 3.059646e+000, + 5.355391e-001, + -1.012076e+000, + -1.456275e-001, + 3.857821e+000, + -1.137640e+000, + -7.400821e-001, + 4.132381e+000, + -2.101470e-001, + -1.704290e-001, + 1.094519e+000, + -1.200085e+000, + -9.008631e-002, + -1.764929e+000, + 4.584027e-001, + 8.033799e-001, + -1.730728e+000, + 5.892683e-001, + 6.438112e+000, + 2.141131e-001, + -9.836248e-001, + -1.983419e-001, + 3.519957e+000, + -9.777763e-001, + -5.727911e+000, + 4.397457e+000, + -2.864495e-001, + -2.511187e+000, + 9.881415e-001, + -1.111842e+000, + -1.992363e-001, + 1.746814e+000, + 5.036170e+000, + -2.993753e+000, + -5.348114e-001, + 2.332738e-001, + 8.970344e-001, + 5.806194e-001, + // albedo 0, turbidity 3 + -1.120087e+000, + -1.577355e-001, + -1.165606e+000, + 1.782016e+000, + -1.771264e-001, + 8.928578e-001, + 1.613110e-001, + 4.975693e+000, + 6.258796e-001, + -1.182069e+000, + -2.047357e-001, + -4.041517e-001, + 1.732659e+000, + -4.322749e-001, + 6.549554e-001, + 5.392767e-002, + 4.838218e+000, + 6.441461e-001, + -1.071518e+000, + -2.057500e-001, + 2.808685e+000, + -1.990080e+000, + -8.491815e-001, + 2.193915e+000, + 2.411077e-001, + -3.251587e+000, + 7.470978e-001, + -1.113379e+000, + -6.708322e-003, + -2.181109e+000, + 2.107674e+000, + 2.216970e+000, + -6.233552e-001, + 3.558080e-001, + 9.251876e+000, + 6.319555e-001, + -1.026698e+000, + -2.260748e-001, + 3.031659e+000, + -1.615765e+000, + -1.323341e+000, + 2.835147e+000, + 1.186568e-001, + -3.366247e+000, + 6.850407e-001, + -1.088223e+000, + -1.817555e-001, + 1.435855e+000, + 1.845164e+000, + -3.488539e+000, + 2.554837e-001, + 2.144895e-001, + 1.558895e+000, + 7.315398e-001, + // albedo 0, turbidity 4 + -1.164089e+000, + -2.003003e-001, + -2.998423e-001, + 2.713689e-001, + -1.828861e-001, + 5.800779e-001, + 1.968402e-001, + 4.650130e+000, + 6.156174e-001, + -1.209796e+000, + -2.733887e-001, + -9.360003e-001, + 2.769100e+000, + -1.870929e+000, + 7.049322e-001, + -8.477045e-002, + 4.120960e+000, + 7.444509e-001, + -1.232839e+000, + -2.622151e-001, + 2.857050e+000, + -2.866256e+000, + 3.128232e+000, + 1.897877e+000, + 4.581244e-001, + -2.112943e+000, + 6.384882e-001, + -9.291113e-001, + 4.110508e-002, + -2.235781e+000, + 2.969741e+000, + -9.758544e+000, + -1.941571e+000, + 3.426656e-001, + 6.907158e+000, + 6.945892e-001, + -1.103614e+000, + -2.279953e-001, + 2.314490e+000, + -6.307971e-001, + 3.369674e+000, + 3.787928e+000, + 2.456513e-001, + -1.776073e+000, + 6.864316e-001, + -1.072160e+000, + -1.984678e-001, + 1.092192e+000, + 8.472734e-001, + -3.126637e+000, + -1.076607e+000, + 3.908469e-001, + 1.205671e+000, + 7.035925e-001, + // albedo 0, turbidity 5 + -1.222416e+000, + -2.654298e-001, + -1.149975e-001, + -6.277756e-003, + -1.369463e+000, + 4.402179e-001, + 1.881320e-001, + 3.896722e+000, + 6.037946e-001, + -1.407746e+000, + -4.603243e-001, + -3.071475e-001, + 2.937390e+000, + -9.164938e-001, + 6.696693e-001, + -6.608327e-002, + 2.444782e+000, + 6.905594e-001, + -1.120454e+000, + -1.466269e-001, + 7.829076e-001, + -7.009271e+000, + 5.364470e+000, + 1.294280e+000, + 4.109552e-001, + 1.525889e+000, + 7.709564e-001, + -9.792886e-001, + -4.325464e-002, + -4.059461e-001, + 1.522559e+001, + -1.867598e+001, + -1.169367e+000, + 3.589556e-001, + 2.368951e+000, + 5.526839e-001, + -1.091118e+000, + -2.286983e-001, + 9.896666e-001, + -6.655971e+000, + 8.168041e+000, + 1.923773e+000, + 3.116805e-001, + 1.852611e-001, + 7.524175e-001, + -1.053081e+000, + -1.598496e-001, + 9.684194e-001, + 3.620674e+000, + -5.015769e+000, + 8.125082e-002, + 4.669502e-001, + 1.415221e+000, + 7.044272e-001, + // albedo 0, turbidity 6 + -1.267172e+000, + -3.101221e-001, + -8.556526e-002, + -3.602153e-003, + -4.988229e+000, + 4.099753e-001, + 1.555248e-001, + 3.585489e+000, + 6.128833e-001, + -1.613116e+000, + -6.560485e-001, + 9.250270e-002, + 2.119268e+000, + 8.031058e+000, + 4.019483e-001, + 4.526662e-002, + 1.362051e+000, + 5.999628e-001, + -1.012405e+000, + -2.251592e-002, + 2.836289e-001, + -7.904006e+000, + -9.544755e+000, + 1.754891e+000, + 1.283266e-001, + 3.042478e+000, + 9.234755e-001, + -1.022835e+000, + -1.361070e-001, + -4.207218e-001, + 1.947050e+001, + -5.511234e+000, + -2.417169e+000, + 7.837822e-001, + 8.288902e-001, + 3.509734e-001, + -1.068370e+000, + -1.806143e-001, + 1.059217e+000, + 7.087518e-001, + -1.671865e+000, + 3.098645e+000, + -9.859822e-002, + 9.336021e-001, + 8.929147e-001, + -1.065467e+000, + -1.928982e-001, + 6.159162e-001, + -4.157538e-003, + -9.397621e-001, + -1.193139e+000, + 6.979501e-001, + 1.118894e+000, + 6.467115e-001, + // albedo 0, turbidity 7 + -1.345697e+000, + -3.906019e-001, + -1.921159e-001, + -7.410201e-003, + -4.683006e+000, + 4.591917e-001, + 1.919817e-001, + 3.158844e+000, + 5.319014e-001, + -2.096314e+000, + -1.056514e+000, + 7.665515e-001, + 1.602483e+000, + 6.290779e+000, + 4.693208e-001, + -6.258855e-002, + -3.745685e-001, + 5.853677e-001, + -7.573573e-001, + 2.265213e-001, + -1.283398e+000, + -4.696984e+000, + -4.261986e+000, + 1.197826e+000, + 3.444468e-001, + 6.004387e+000, + 9.413954e-001, + -1.140929e+000, + -3.489820e-001, + 1.095429e+000, + 7.531589e+000, + -8.153320e+000, + -1.722207e+000, + 4.427477e-001, + -3.072440e+000, + 3.874398e-001, + -1.009003e+000, + -9.087616e-002, + 4.181128e-002, + 1.154023e+001, + -5.092155e-001, + 2.166116e+000, + 1.620893e-001, + 2.824826e+000, + 8.289491e-001, + -1.080842e+000, + -2.166745e-001, + 6.939662e-001, + -2.316636e-003, + -2.616711e+000, + -1.012238e+000, + 6.132021e-001, + 7.579828e-001, + 6.813755e-001, + // albedo 0, turbidity 8 + -1.394668e+000, + -4.508268e-001, + -2.615024e-001, + -7.412740e-003, + -4.811648e+000, + 4.235635e-001, + 1.627041e-001, + 3.134174e+000, + 5.225016e-001, + -2.715734e+000, + -1.409574e+000, + 6.485110e-001, + 6.307101e-001, + 8.120123e+000, + 3.677567e-001, + 6.430919e-002, + -3.729191e-001, + 3.463130e-001, + -8.973624e-001, + 2.859206e-002, + -1.610007e+000, + -1.483136e+000, + -5.613288e+000, + 7.093329e-001, + 2.936945e-001, + 5.541210e+000, + 1.143952e+000, + -8.450858e-001, + -1.969825e-001, + 1.399585e+000, + 1.418708e-001, + -4.532026e+000, + -7.432040e-001, + 3.410858e-001, + -3.386293e+000, + 2.885614e-001, + -1.180533e+000, + -2.469972e-001, + -2.694505e-002, + 1.635998e+001, + -2.378676e+000, + 9.477733e-001, + 1.105776e-001, + 1.954485e+000, + 8.559872e-001, + -1.022908e+000, + -1.650807e-001, + 3.812483e-001, + -2.139201e-003, + -2.300711e+000, + -5.917998e-001, + 6.793527e-001, + 1.248273e+000, + 6.747565e-001, + // albedo 0, turbidity 9 + -1.557922e+000, + -6.294681e-001, + -2.355549e-001, + -8.743568e-003, + -5.017111e+000, + 4.034446e-001, + 1.005643e-001, + 2.735289e+000, + 5.667004e-001, + -3.061673e+000, + -1.398157e+000, + 1.597008e-001, + 1.066059e+000, + 8.207018e+000, + 4.785780e-001, + 4.629487e-002, + 1.324020e+000, + 2.540204e-001, + -2.371583e+000, + -1.100187e+000, + -1.279309e+000, + -3.340819e+000, + -6.556706e+000, + 2.636750e-001, + 4.298705e-001, + 2.649782e+000, + 1.060950e+000, + -5.315727e-002, + 2.306821e-001, + 1.091037e+000, + 5.297610e+000, + -2.412315e+000, + -7.083157e-002, + 7.256586e-002, + -1.330891e+000, + 4.168205e-001, + -1.375983e+000, + -4.677570e-001, + 2.271650e-001, + 8.771601e+000, + -2.511780e+000, + 1.487082e-001, + 8.542210e-002, + 5.509707e-003, + 7.821447e-001, + -1.006483e+000, + -1.435513e-001, + 5.802646e-002, + -3.181899e-003, + -2.010861e+000, + -1.746922e-001, + 7.487809e-001, + 1.623209e+000, + 6.848148e-001, + // albedo 0, turbidity 10 + -1.919035e+000, + -9.396362e-001, + -3.059418e-001, + 1.542398e+000, + -1.488273e+000, + 5.133825e-001, + -7.992185e-006, + 2.276361e+000, + 8.334381e-001, + -2.470138e+000, + -1.108577e+000, + -5.521438e-001, + -9.047033e-001, + 6.905739e-001, + 3.774300e-001, + -2.801883e-002, + 2.413470e+000, + -8.986266e-002, + -5.532450e+000, + -2.346497e+000, + -1.734654e+000, + 1.461689e+000, + 1.765938e+000, + 4.969811e-001, + 6.205943e-001, + 2.112232e+000, + 1.159488e+000, + 4.159150e-001, + -2.306809e-001, + 1.540502e+000, + -1.006923e+000, + -5.275092e+000, + -2.776202e-002, + -1.632884e-001, + -1.467491e+000, + 4.177919e-001, + -1.248112e+000, + -3.080519e-001, + -1.229235e-001, + 8.972757e+000, + -1.532948e+000, + -8.283794e-002, + 1.561573e-001, + 1.856113e-001, + 7.696948e-001, + -1.054499e+000, + -2.660558e-001, + 1.307025e-001, + -2.167883e-003, + -1.531056e+000, + 1.525856e-001, + 5.356892e-001, + 7.181428e-001, + 6.837654e-001, + // albedo 1, turbidity 1 + -1.113347e+000, + -1.715068e-001, + -2.657094e+000, + 4.632520e+000, + -1.092308e-001, + 1.421516e+000, + 3.229759e-003, + 2.697889e+000, + 6.262031e-001, + -1.193355e+000, + -2.074367e-001, + 1.431777e+000, + 8.245569e-001, + -1.936966e-001, + 9.392136e-001, + 1.972263e-002, + 3.001209e+000, + 4.415825e-001, + -9.337795e-001, + -2.037221e-001, + 3.943675e+000, + -2.487730e+000, + -9.876315e-001, + 2.772410e+000, + -4.919872e-002, + -4.176827e+000, + 1.026227e+000, + -1.297624e+000, + -1.296733e-001, + -3.144502e-001, + 2.454199e+000, + 2.433614e+000, + 5.298925e-001, + 7.814503e-002, + 6.564581e+000, + 5.587597e-001, + -9.325285e-001, + -1.997939e-001, + 3.363316e+000, + -1.887198e+000, + -8.905212e+000, + 2.808596e+000, + -9.537523e-002, + -3.059702e+000, + 5.403717e-001, + -1.125653e+000, + -1.904767e-001, + 2.099998e+000, + 1.251930e+000, + -1.899312e+000, + 5.255917e-001, + 9.848033e-002, + 9.627434e-001, + 6.251233e-001, + // albedo 1, turbidity 2 + -1.115892e+000, + -1.571450e-001, + -5.361081e+000, + 6.833528e+000, + -6.891479e-002, + 1.309709e+000, + 6.046362e-002, + 3.972373e+000, + 6.651606e-001, + -1.147479e+000, + -1.855896e-001, + 2.239259e+000, + -5.937930e-001, + -1.005125e-001, + 2.773971e-001, + 1.337105e-001, + 3.136906e+000, + 5.194230e-001, + -1.030450e+000, + -1.533626e-001, + 2.268967e+000, + -4.886576e-001, + -6.336865e-001, + 3.911080e+000, + -1.602643e-001, + 1.513730e-001, + 1.130153e+000, + -1.159297e+000, + -5.818314e-002, + -1.488690e-001, + 1.358829e+000, + 1.208889e+000, + -1.827456e+000, + 4.867277e-001, + 6.185880e+000, + 1.951064e-001, + -1.023581e+000, + -2.517540e-001, + 3.635148e+000, + -2.375150e+000, + -9.409992e+000, + 3.209554e+000, + -3.006489e-001, + -3.235953e+000, + 9.969505e-001, + -1.102864e+000, + -1.644399e-001, + 2.160645e+000, + 5.685422e+000, + -2.867248e+000, + -1.020916e+000, + 2.064591e-001, + 1.192668e+000, + 5.029621e-001, + // albedo 1, turbidity 3 + -1.120417e+000, + -1.543428e-001, + -2.173869e+000, + 2.965267e+000, + -1.062190e-001, + 8.112859e-001, + 1.448682e-001, + 4.993622e+000, + 6.373394e-001, + -1.168618e+000, + -1.948508e-001, + -6.247560e-001, + 2.203402e+000, + -2.724794e-001, + 8.364691e-001, + 5.608377e-002, + 4.262497e+000, + 6.310098e-001, + -1.080229e+000, + -2.282841e-001, + 2.194035e+000, + -1.203336e+000, + -3.861545e-001, + 2.234045e+000, + 1.553866e-001, + -3.266039e+000, + 8.246847e-001, + -1.101698e+000, + 2.182410e-002, + -1.179116e+000, + 8.533844e-001, + 8.777171e-001, + -1.222988e+000, + 5.021882e-001, + 9.364642e+000, + 4.790363e-001, + -1.047144e+000, + -2.539571e-001, + 3.684827e+000, + 9.827861e-002, + -2.297266e-001, + 3.038327e+000, + -2.609445e-001, + -3.685112e+000, + 8.596057e-001, + -1.103227e+000, + -1.861499e-001, + 2.098952e+000, + 1.030900e-001, + -4.268311e+000, + -1.120060e+000, + 2.879792e-001, + 7.160893e-001, + 6.213207e-001, + // albedo 1, turbidity 4 + -1.155288e+000, + -2.006105e-001, + -5.822630e-002, + 3.970794e-001, + -2.828885e-001, + 5.093569e-001, + 1.631119e-001, + 4.152479e+000, + 6.357376e-001, + -1.241627e+000, + -2.673712e-001, + -6.444494e-001, + 2.257014e+000, + -1.630843e+000, + 5.967071e-001, + 9.888683e-003, + 4.308732e+000, + 6.751366e-001, + -1.136812e+000, + -2.811418e-001, + 2.220215e+000, + -1.535870e+000, + 2.354743e+000, + 2.041362e+000, + 2.387976e-001, + -3.453756e+000, + 7.672245e-001, + -1.028322e+000, + 9.134962e-002, + -1.151053e+000, + 6.511620e-001, + -5.683098e+000, + -2.001006e+000, + 6.430642e-001, + 8.523367e+000, + 5.422240e-001, + -1.076830e+000, + -3.101207e-001, + 3.052794e+000, + 3.177593e-001, + 3.054756e+000, + 3.386727e+000, + -2.312489e-001, + -3.908802e+000, + 7.978614e-001, + -1.107083e+000, + -1.880372e-001, + 2.001810e+000, + -3.352202e-003, + -1.526356e+000, + -1.480550e+000, + 3.486524e-001, + 7.220325e-001, + 6.581821e-001, + // albedo 1, turbidity 5 + -1.214879e+000, + -2.719222e-001, + 2.247747e-001, + 1.509740e-002, + -5.438281e-001, + 3.728351e-001, + 1.749880e-001, + 3.132220e+000, + 6.001432e-001, + -1.424202e+000, + -4.768943e-001, + -6.396040e-001, + 2.060101e+000, + -1.113780e+000, + 6.993089e-001, + -2.098291e-002, + 2.504826e+000, + 6.757213e-001, + -1.048548e+000, + -1.173837e-001, + 1.885902e+000, + -3.700301e+000, + 4.667326e+000, + 1.344798e+000, + 2.140261e-001, + 1.525414e-001, + 8.450168e-001, + -1.056271e+000, + -5.272364e-002, + -1.391708e+000, + 9.711492e+000, + -1.742761e+001, + -1.677628e+000, + 6.906304e-001, + 4.107662e+000, + 4.268005e-001, + -1.072328e+000, + -2.450563e-001, + 3.125155e+000, + -2.470389e+000, + 6.794968e+000, + 2.678049e+000, + -2.092059e-001, + -1.651858e+000, + 8.708740e-001, + -1.107628e+000, + -2.089585e-001, + 1.799168e+000, + 4.621596e-001, + -5.008181e+000, + -1.121127e+000, + 3.917217e-001, + 2.703209e-001, + 6.449597e-001, + // albedo 1, turbidity 6 + -1.249741e+000, + -3.073987e-001, + 1.398829e-001, + -2.878563e-003, + -5.008845e+000, + 4.535605e-001, + 1.447766e-001, + 3.091173e+000, + 6.138128e-001, + -1.577209e+000, + -6.213162e-001, + 2.895282e-001, + 1.670732e+000, + 8.708786e+000, + 2.480283e-001, + 7.326386e-002, + 1.395638e+000, + 5.814691e-001, + -1.015394e+000, + -9.306378e-002, + 4.870291e-001, + -6.558243e+000, + -1.073347e+001, + 1.842159e+000, + 2.135043e-002, + 1.655269e+000, + 9.750505e-001, + -1.030222e+000, + -3.712071e-002, + -4.565649e-001, + 1.827249e+001, + -4.505703e+000, + -2.635230e+000, + 9.447498e-001, + 2.450865e+000, + 2.757082e-001, + -1.086063e+000, + -2.709359e-001, + 2.527868e+000, + -1.786375e+000, + -2.329338e+000, + 3.367729e+000, + -4.201670e-001, + -9.372873e-001, + 9.570917e-001, + -1.113156e+000, + -2.162986e-001, + 1.815038e+000, + 1.036606e-001, + -1.106537e+000, + -1.657558e+000, + 4.923976e-001, + -1.768985e-002, + 6.218745e-001, + // albedo 1, turbidity 7 + -1.345662e+000, + -4.038158e-001, + 1.601105e-001, + -6.892546e-003, + -5.010308e+000, + 3.903794e-001, + 1.543535e-001, + 2.538245e+000, + 5.555141e-001, + -1.998866e+000, + -9.786972e-001, + 5.763250e-001, + 1.007104e+000, + 8.983795e+000, + 3.752110e-001, + 7.375525e-002, + 1.792659e-001, + 4.969463e-001, + -7.854213e-001, + 1.186171e-001, + -1.925047e-001, + -3.567464e+000, + -8.901606e+000, + 1.181923e+000, + 4.049067e-002, + 3.603602e+000, + 1.081550e+000, + -1.113558e+000, + -1.964692e-001, + -6.175963e-002, + 7.345047e+000, + -5.293662e+000, + -1.720046e+000, + 8.863695e-001, + -1.699694e-001, + 2.184709e-001, + -1.077319e+000, + -2.429937e-001, + 2.226652e+000, + 8.082352e+000, + -5.647382e-001, + 2.187018e+000, + -3.571678e-001, + -2.370890e-001, + 9.528157e-001, + -1.101702e+000, + -2.020333e-001, + 1.637670e+000, + 5.276716e-001, + -4.006007e+000, + -1.066501e+000, + 4.548015e-001, + 4.055769e-001, + 6.485706e-001, + // albedo 1, turbidity 8 + -1.411469e+000, + -4.870956e-001, + 1.017578e-001, + -8.806763e-003, + -5.014847e+000, + 4.306981e-001, + 1.278033e-001, + 2.361142e+000, + 5.472925e-001, + -2.735007e+000, + -1.453253e+000, + 5.783189e-001, + 5.673243e-001, + 9.968637e+000, + 2.236397e-001, + 1.860109e-001, + -3.781953e-001, + 2.505082e-001, + -7.371503e-001, + 1.290592e-001, + -5.349577e-001, + -1.885854e+000, + -8.623054e+000, + 1.078614e+000, + -5.694996e-002, + 4.526279e+000, + 1.347569e+000, + -9.678370e-001, + -2.562830e-001, + 2.961987e-001, + 2.461144e+000, + -4.753928e+000, + -1.657373e+000, + 8.388825e-001, + -2.440974e+000, + 1.816225e-002, + -1.148918e+000, + -2.271366e-001, + 1.817890e+000, + 1.097345e+001, + -1.126160e+000, + 1.993895e+000, + -2.870862e-001, + 7.269217e-001, + 1.032783e+000, + -1.090291e+000, + -2.315314e-001, + 1.491197e+000, + 9.632479e+000, + -4.323932e+000, + -1.326631e+000, + 3.604933e-001, + 1.905995e-001, + 6.312241e-001, + // albedo 1, turbidity 9 + -1.552618e+000, + -6.336918e-001, + 4.605315e-002, + -8.452985e-003, + -4.979015e+000, + 3.484674e-001, + 8.791637e-002, + 2.297399e+000, + 5.705230e-001, + -2.770597e+000, + -1.302036e+000, + 3.421676e-001, + 1.220769e+000, + 7.584372e+000, + 4.050789e-001, + 4.478808e-002, + 9.435710e-001, + 2.393878e-001, + -2.631791e+000, + -1.247576e+000, + -8.423940e-001, + -3.955998e+000, + -5.341100e+000, + 6.385142e-001, + 3.872948e-001, + 2.279807e+000, + 1.101259e+000, + 1.875824e-001, + 3.564184e-001, + 7.973268e-001, + 7.159160e+000, + -3.857340e+000, + -9.227702e-001, + 8.283793e-002, + -1.444145e+000, + 3.654244e-001, + -1.489693e+000, + -4.947623e-001, + 1.253918e+000, + 3.949282e+000, + -1.320903e+000, + 1.088652e+000, + 1.489763e-001, + -3.855853e-001, + 8.130960e-001, + -1.042349e+000, + -2.134514e-001, + 1.289359e+000, + -3.129206e-003, + -2.385397e+000, + -7.642278e-001, + 3.772293e-001, + 3.683001e-001, + 6.811674e-001, + // albedo 1, turbidity 10 + -1.924886e+000, + -9.354584e-001, + -1.879067e-001, + 1.267892e+000, + -1.174622e+000, + 5.570232e-001, + -1.060836e-005, + 2.002481e+000, + 9.001398e-001, + -1.556107e+000, + -8.200410e-001, + -1.065249e-001, + -3.241942e-001, + 1.552504e-001, + 7.662815e-002, + -2.568474e-002, + 1.738474e+000, + -2.100942e-001, + -7.169297e+000, + -2.972878e+000, + -1.324108e+000, + 7.276378e-003, + 2.638975e+000, + 1.186150e+000, + 5.695709e-001, + 2.027718e+000, + 1.328077e+000, + 1.889259e+000, + 2.600110e-001, + 1.309033e+000, + 1.187864e+000, + -6.905754e+000, + -1.163025e+000, + -1.642758e-001, + -1.774036e+000, + 2.566466e-001, + -1.816439e+000, + -3.601966e-001, + 6.367922e-001, + 6.798160e+000, + -6.431562e-001, + 9.014269e-001, + 2.490693e-001, + -6.685128e-003, + 8.542883e-001, + -9.684886e-001, + -3.866519e-001, + 1.268224e+000, + -4.187273e-003, + -1.833316e+000, + -4.626197e-001, + 2.263859e-001, + -5.583963e-001, + 6.650112e-001, +}; + +double datasetRad640[] = +{ + // albedo 0, turbidity 1 + 1.479989e-002, + 9.575884e-003, + 2.973854e-002, + 4.822245e-002, + 3.622965e-002, + 3.714381e-002, + // albedo 0, turbidity 2 + 1.494233e-002, + 1.021187e-002, + 2.574697e-002, + 7.232352e-002, + 3.290719e-002, + 4.167409e-002, + // albedo 0, turbidity 3 + 1.434641e-002, + 1.147574e-002, + 1.506677e-002, + 1.142492e-001, + 2.532042e-002, + 4.995278e-002, + // albedo 0, turbidity 4 + 1.326292e-002, + 1.444403e-002, + -7.612369e-003, + 1.768500e-001, + 1.846871e-002, + 6.093428e-002, + // albedo 0, turbidity 5 + 1.210064e-002, + 1.800376e-002, + -3.160469e-002, + 2.285807e-001, + 2.227077e-002, + 6.824549e-002, + // albedo 0, turbidity 6 + 1.130890e-002, + 2.150486e-002, + -5.124749e-002, + 2.648020e-001, + 2.123060e-002, + 7.588774e-002, + // albedo 0, turbidity 7 + 1.023130e-002, + 2.633945e-002, + -7.626006e-002, + 3.042057e-001, + 3.007536e-002, + 8.597681e-002, + // albedo 0, turbidity 8 + 8.913856e-003, + 3.088076e-002, + -9.896179e-002, + 3.274618e-001, + 6.060024e-002, + 9.959796e-002, + // albedo 0, turbidity 9 + 7.548425e-003, + 3.088764e-002, + -9.837988e-002, + 2.862874e-001, + 1.450480e-001, + 1.121877e-001, + // albedo 0, turbidity 10 + 6.525594e-003, + 2.429771e-002, + -6.656565e-002, + 1.679199e-001, + 2.792664e-001, + 1.313366e-001, + // albedo 1, turbidity 1 + 1.534297e-002, + 1.199131e-002, + 2.491229e-002, + 5.492441e-002, + 7.679650e-002, + 9.300994e-002, + // albedo 1, turbidity 2 + 1.542409e-002, + 1.237811e-002, + 2.235351e-002, + 7.606092e-002, + 7.888526e-002, + 9.886009e-002, + // albedo 1, turbidity 3 + 1.501351e-002, + 1.379279e-002, + 1.162514e-002, + 1.159528e-001, + 7.784537e-002, + 1.097624e-001, + // albedo 1, turbidity 4 + 1.398757e-002, + 1.622679e-002, + -9.033929e-003, + 1.740587e-001, + 8.042195e-002, + 1.246928e-001, + // albedo 1, turbidity 5 + 1.276036e-002, + 2.055104e-002, + -3.597123e-002, + 2.310287e-001, + 8.109251e-002, + 1.421324e-001, + // albedo 1, turbidity 6 + 1.198617e-002, + 2.326685e-002, + -5.243143e-002, + 2.599544e-001, + 8.840775e-002, + 1.517899e-001, + // albedo 1, turbidity 7 + 1.092344e-002, + 2.669375e-002, + -7.074274e-002, + 2.830300e-001, + 1.143047e-001, + 1.610563e-001, + // albedo 1, turbidity 8 + 9.699402e-003, + 2.953350e-002, + -8.582613e-002, + 2.867195e-001, + 1.638123e-001, + 1.760228e-001, + // albedo 1, turbidity 9 + 8.432894e-003, + 2.784449e-002, + -7.740437e-002, + 2.250221e-001, + 2.667103e-001, + 1.889583e-001, + // albedo 1, turbidity 10 + 7.395069e-003, + 2.031820e-002, + -4.154554e-002, + 9.577204e-002, + 4.084819e-001, + 2.043633e-001, +}; + +double dataset680[] = +{ + // albedo 0, turbidity 1 + -1.112655e+000, + -1.844098e-001, + -3.170582e+000, + 5.334685e+000, + -6.690891e-002, + 1.561122e+000, + -2.792088e-006, + 1.400688e+000, + 6.639418e-001, + -1.138469e+000, + -1.797086e-001, + 1.271179e+000, + 1.158372e+000, + -1.687824e-001, + 1.414051e+000, + 4.258569e-003, + 2.135675e+000, + 5.322718e-001, + -1.026337e+000, + -1.861539e-001, + 2.119648e+000, + -6.753200e-001, + -1.972700e-001, + 2.384659e+000, + -1.304972e-002, + -1.804518e+000, + 1.207802e+000, + -1.198321e+000, + -1.585305e-001, + 1.339219e+000, + 5.796904e-001, + -5.143433e-002, + 1.107455e+000, + 2.551349e-002, + 3.346946e+000, + -3.387602e-002, + -9.935091e-001, + -1.747698e-001, + 2.816779e+000, + -3.496148e-001, + 1.832218e+000, + 2.324658e+000, + -3.408305e-002, + -1.618451e+000, + 1.189512e+000, + -1.092682e+000, + -1.840784e-001, + 2.455887e+000, + 1.441429e-001, + -4.002347e+000, + 1.186375e+000, + 3.634755e-002, + 3.070963e-001, + 5.512501e-001, + // albedo 0, turbidity 2 + -1.104975e+000, + -1.425541e-001, + -1.889148e+000, + 3.408593e+000, + -1.252648e-001, + 1.396095e+000, + 8.358812e-002, + 3.814297e+000, + 6.848154e-001, + -1.131570e+000, + -1.500053e-001, + -1.048539e+000, + 3.133642e+000, + -2.651219e-001, + 1.193999e+000, + 7.013543e-002, + 4.592749e+000, + 6.857750e-001, + -1.030016e+000, + -1.667752e-001, + 6.179600e+000, + -5.163198e+000, + -4.084328e-001, + 2.617798e+000, + 1.966627e-003, + -2.417731e+000, + 8.402310e-001, + -1.167563e+000, + -3.644294e-002, + -4.501893e+000, + 4.471663e+000, + -5.377956e-001, + 4.971351e-002, + 4.621337e-001, + 1.014187e+001, + 4.411276e-001, + -1.018402e+000, + -2.068288e-001, + 4.710566e+000, + -1.425858e+000, + 1.287815e-001, + 3.605281e+000, + -2.164599e-001, + -4.336932e+000, + 9.051639e-001, + -1.078985e+000, + -1.995548e-001, + 1.678948e+000, + 3.074167e-001, + -1.642830e+000, + -1.235470e-001, + 2.735898e-001, + 6.360197e-001, + 5.870665e-001, + // albedo 0, turbidity 3 + -1.132881e+000, + -1.676238e-001, + -1.179974e+000, + 1.902080e+000, + -7.980402e-002, + 8.946611e-001, + 1.939671e-001, + 3.793414e+000, + 6.357246e-001, + -1.138356e+000, + -1.681053e-001, + 1.548320e+000, + -6.001024e-001, + -4.138892e-001, + 2.586807e-001, + 2.126762e-001, + 4.742849e+000, + 5.910253e-001, + -1.093982e+000, + -1.847904e-001, + 1.234133e+000, + -4.707125e-001, + 1.076579e+000, + 3.355751e+000, + 5.394600e-002, + -2.314910e+000, + 8.900752e-001, + -1.117812e+000, + -6.182272e-002, + -4.681118e-001, + 5.075227e+000, + -1.561122e+001, + -2.343845e+000, + 5.618788e-001, + 7.005713e+000, + 4.622191e-001, + -1.013135e+000, + -1.529086e-001, + 1.960772e+000, + -3.022528e+000, + 8.938126e+000, + 4.411437e+000, + 3.156643e-002, + -1.449180e+000, + 8.181914e-001, + -1.087086e+000, + -2.231900e-001, + 1.871061e+000, + 1.830836e+000, + -4.397140e+000, + -5.441402e-001, + 2.728682e-001, + -5.607736e-002, + 6.741811e-001, + // albedo 0, turbidity 4 + -1.176035e+000, + -2.099056e-001, + -8.221907e-001, + 1.520994e+000, + -2.507738e-001, + 9.100863e-001, + 1.507234e-001, + 3.661138e+000, + 6.726424e-001, + -1.140180e+000, + -1.918480e-001, + 2.844393e-001, + -3.842927e-001, + -5.520764e-001, + -1.868484e-001, + 2.247948e-001, + 5.381202e+000, + 6.059726e-001, + -1.282085e+000, + -3.059464e-001, + 1.619956e+000, + -1.362117e+000, + 2.324649e+000, + 3.350678e+000, + 2.102082e-001, + -4.028753e+000, + 8.172091e-001, + -9.092985e-001, + 4.843416e-002, + -1.076741e+000, + 8.143038e+000, + -1.618418e+001, + -3.681285e+000, + 5.217800e-001, + 7.307672e+000, + 5.312006e-001, + -1.110248e+000, + -2.047143e-001, + 1.565253e+000, + -4.575474e+000, + 8.737741e+000, + 5.023419e+000, + 2.469230e-001, + -1.716906e+000, + 7.856742e-001, + -1.054900e+000, + -2.018466e-001, + 1.352034e+000, + 2.656066e+000, + -4.403444e+000, + -1.479998e+000, + 3.939305e-001, + 6.455032e-001, + 6.775162e-001, + // albedo 0, turbidity 5 + -1.237521e+000, + -2.734963e-001, + -4.554763e-001, + 3.417711e-001, + 2.054204e-001, + 3.954470e-001, + 2.366979e-001, + 3.239693e+000, + 6.083737e-001, + -1.354583e+000, + -4.251172e-001, + -3.241668e-001, + 2.077967e+000, + -1.910410e+000, + 8.755633e-001, + -8.365829e-002, + 2.443727e+000, + 7.260119e-001, + -1.152500e+000, + -1.277879e-001, + 1.089367e+000, + -4.497520e+000, + 5.636501e+000, + 1.249272e+000, + 5.829396e-001, + 9.198423e-001, + 7.039872e-001, + -9.782313e-001, + -8.253891e-002, + -5.673470e-001, + 1.098032e+001, + -1.689550e+001, + -1.619205e+000, + 2.125660e-001, + 2.080566e+000, + 6.315535e-001, + -1.064286e+000, + -1.710957e-001, + 9.336921e-001, + -5.525059e+000, + 8.053084e+000, + 2.664602e+000, + 4.815015e-001, + 4.884965e-001, + 7.093015e-001, + -1.067798e+000, + -1.817268e-001, + 1.095720e+000, + 3.551145e+000, + -5.009504e+000, + -4.802047e-001, + 4.854159e-001, + 8.021585e-001, + 7.133339e-001, + // albedo 0, turbidity 6 + -1.251896e+000, + -2.936510e-001, + -3.090944e-002, + -5.488869e-003, + -6.577788e-001, + 4.577691e-001, + 1.780002e-001, + 3.335561e+000, + 6.394482e-001, + -1.615603e+000, + -6.405318e-001, + -4.651954e-001, + 2.332689e+000, + -1.893131e-001, + 3.391170e-001, + 3.495888e-002, + 1.058634e+000, + 6.310524e-001, + -9.703572e-001, + 1.437971e-002, + 6.532383e-001, + -6.450045e+000, + 4.026380e+000, + 2.198628e+000, + 2.684967e-001, + 2.873804e+000, + 8.626816e-001, + -1.053437e+000, + -1.577255e-001, + -2.354526e-001, + 1.753047e+001, + -1.802766e+001, + -3.193379e+000, + 6.264380e-001, + 3.733714e-001, + 4.466776e-001, + -1.051388e+000, + -1.690749e-001, + 6.925698e-001, + -7.450365e+000, + 7.747780e+000, + 3.681960e+000, + 1.688173e-001, + 9.054528e-001, + 8.229209e-001, + -1.060369e+000, + -1.751603e-001, + 8.678290e-001, + 5.136962e+000, + -5.014566e+000, + -1.283438e+000, + 6.547844e-001, + 9.420523e-001, + 6.738511e-001, + // albedo 0, turbidity 7 + -1.358251e+000, + -3.909003e-001, + -7.590093e-002, + -8.010253e-003, + -2.417641e-001, + 5.031789e-001, + 1.882499e-001, + 2.807060e+000, + 5.884485e-001, + -2.043506e+000, + -9.923881e-001, + -4.530797e-001, + 1.750575e+000, + -4.362236e-001, + 2.997323e-001, + 2.328504e-002, + 1.626543e-001, + 5.806819e-001, + -7.280672e-001, + 2.228069e-001, + 2.169765e-001, + -3.681736e+000, + 4.308793e+000, + 1.308622e+000, + 3.451835e-001, + 4.037459e+000, + 9.113772e-001, + -1.155299e+000, + -3.079453e-001, + -1.640569e-001, + 7.663297e+000, + -1.327817e+001, + -1.431157e+000, + 4.096359e-001, + -9.185502e-001, + 4.578034e-001, + -1.006427e+000, + -1.250087e-001, + 7.477012e-001, + 2.612704e+000, + 2.531799e+000, + 1.565371e+000, + 3.452604e-001, + 9.129266e-001, + 7.684386e-001, + -1.068759e+000, + -1.729191e-001, + 5.265652e-001, + 7.074812e+000, + -4.259958e+000, + -4.833255e-001, + 6.043380e-001, + 1.489203e+000, + 7.089074e-001, + // albedo 0, turbidity 8 + -1.398983e+000, + -4.500153e-001, + -5.189309e-001, + 1.546325e-001, + 4.187327e-001, + 2.811516e-001, + 2.379667e-001, + 2.801040e+000, + 5.198375e-001, + -2.970455e+000, + -1.529948e+000, + 1.094532e-001, + 7.382263e-001, + -1.024683e+000, + 2.074091e-001, + 1.397605e-001, + -6.743828e-001, + 3.496944e-001, + -3.942086e-001, + 3.424842e-001, + -1.253259e+000, + -9.268654e-001, + 5.636065e+000, + 8.224289e-001, + 2.452235e-001, + 5.864258e+000, + 1.202820e+000, + -1.181174e+000, + -4.197175e-001, + 1.429102e+000, + -7.894317e-003, + -1.239152e+001, + -5.753431e-001, + 3.552180e-001, + -4.495555e+000, + 2.141883e-001, + -1.060281e+000, + -1.080598e-001, + -3.276480e-001, + 1.369250e+001, + 1.504389e+000, + 6.401191e-001, + 2.437501e-001, + 3.212918e+000, + 9.172133e-001, + -1.037564e+000, + -2.018083e-001, + 6.250668e-001, + -2.525843e-003, + -3.269998e+000, + -2.649814e-001, + 6.600589e-001, + 3.337508e-001, + 6.516131e-001, + // albedo 0, turbidity 9 + -1.610481e+000, + -6.353902e-001, + -5.968977e-001, + 1.414037e+000, + -7.941453e-001, + 7.888684e-001, + 2.209045e-002, + 2.615106e+000, + 6.870260e-001, + -3.073343e+000, + -1.365905e+000, + -2.651943e-001, + -1.685310e+000, + 4.755874e-001, + -1.110669e-001, + 2.561961e-001, + 1.222045e+000, + 3.362780e-002, + -2.207768e+000, + -1.009608e+000, + -1.329601e+000, + 3.393091e+000, + 3.419104e+000, + -4.733375e-002, + 5.989185e-001, + 2.814641e+000, + 1.245189e+000, + -1.981173e-002, + 2.018414e-001, + 1.457765e+000, + -6.316169e+000, + -6.640569e+000, + 7.150646e-001, + -2.993748e-001, + -2.703376e+000, + 3.218596e-001, + -1.435873e+000, + -3.390505e-001, + -3.859047e-001, + 1.457464e+001, + -1.121591e+000, + -6.089868e-002, + 5.319220e-001, + 1.852395e+000, + 8.379521e-001, + -9.812568e-001, + -2.273751e-001, + 5.108069e-001, + -3.735693e-003, + -2.547988e+000, + -4.492561e-001, + 5.069199e-001, + 2.977910e-001, + 6.639273e-001, + // albedo 0, turbidity 10 + -2.056405e+000, + -9.703512e-001, + -3.731953e-001, + 2.052022e+000, + -1.445283e+000, + 6.103743e-001, + -9.389644e-006, + 2.198652e+000, + 8.567335e-001, + -2.105651e+000, + -8.924283e-001, + -6.868702e-001, + -1.665838e+000, + 4.795702e-001, + 5.228080e-001, + -4.272483e-002, + 2.661317e+000, + -1.154062e-001, + -6.179767e+000, + -2.651580e+000, + -1.527652e+000, + 2.692054e+000, + 2.293427e+000, + -1.005611e-001, + 9.545323e-001, + 1.367438e+000, + 1.169193e+000, + 1.240848e+000, + 1.126706e-001, + 1.620422e+000, + -3.384604e+000, + -5.545532e+000, + 4.928203e-001, + -5.999585e-001, + -1.407078e+000, + 4.193816e-001, + -1.539149e+000, + -2.081890e-001, + -4.552234e-001, + 1.056410e+001, + -1.048637e+000, + -2.780921e-001, + 5.682296e-001, + 6.785092e-001, + 7.729892e-001, + -1.036841e+000, + -4.359099e-001, + 4.767834e-001, + -3.794262e-003, + -1.980492e+000, + 9.954067e-002, + 3.037557e-001, + 2.156592e-002, + 6.845201e-001, + // albedo 1, turbidity 1 + -1.110980e+000, + -1.799491e-001, + -3.168600e+000, + 5.336662e+000, + -6.318131e-002, + 1.559251e+000, + 3.204341e-003, + 1.401140e+000, + 6.638144e-001, + -1.132332e+000, + -1.786787e-001, + 1.272954e+000, + 1.160211e+000, + -1.685885e-001, + 1.409550e+000, + 7.140682e-003, + 2.136473e+000, + 5.320908e-001, + -1.015776e+000, + -1.825058e-001, + 2.122848e+000, + -6.725506e-001, + -1.976294e-001, + 2.376807e+000, + -1.859856e-002, + -1.803033e+000, + 1.207528e+000, + -1.189845e+000, + -1.509036e-001, + 1.345709e+000, + 5.832609e-001, + -5.130839e-002, + 1.097035e+000, + 2.686911e-002, + 3.349361e+000, + -3.431297e-002, + -1.000281e+000, + -1.696328e-001, + 2.829408e+000, + -3.466041e-001, + 1.832532e+000, + 2.314637e+000, + -2.721994e-002, + -1.614939e+000, + 1.188720e+000, + -1.120411e+000, + -1.974172e-001, + 2.474172e+000, + 1.453506e-001, + -4.002206e+000, + 1.180333e+000, + 2.229171e-002, + 3.112615e-001, + 5.505539e-001, + // albedo 1, turbidity 2 + -1.112667e+000, + -1.574855e-001, + -2.284814e+000, + 4.255050e+000, + -1.386097e-001, + 1.459506e+000, + 4.508931e-002, + 2.944474e+000, + 7.339984e-001, + -1.113577e+000, + -1.331062e-001, + -1.828757e+000, + 3.910596e+000, + -2.095519e-001, + 1.159335e+000, + 9.311608e-002, + 4.517295e+000, + 6.365313e-001, + -1.061651e+000, + -2.007134e-001, + 5.907472e+000, + -4.808769e+000, + -2.120206e-001, + 2.727568e+000, + -4.222666e-002, + -2.599674e+000, + 9.265659e-001, + -1.136633e+000, + -4.281875e-003, + -3.407541e+000, + 4.132332e+000, + -3.866153e-001, + -5.082717e-001, + 4.828348e-001, + 9.797167e+000, + 3.325034e-001, + -1.027909e+000, + -2.334388e-001, + 4.972147e+000, + -1.499736e+000, + 9.598438e-002, + 2.744895e+000, + -3.558702e-001, + -4.288054e+000, + 1.000138e+000, + -1.102843e+000, + -1.875642e-001, + 2.087760e+000, + 3.692600e-001, + -6.520835e-001, + -9.598766e-001, + 2.984231e-001, + 4.045786e-001, + 5.091931e-001, + // albedo 1, turbidity 3 + -1.117485e+000, + -1.492968e-001, + -2.639425e+000, + 3.672106e+000, + -1.058342e-001, + 1.098101e+000, + 1.544782e-001, + 4.496691e+000, + 6.582312e-001, + -1.123872e+000, + -1.467158e-001, + 3.049045e+000, + -2.607634e+000, + -2.505495e-001, + -8.310458e-002, + 3.333822e-001, + 4.631418e+000, + 5.120491e-001, + -1.118262e+000, + -2.462050e-001, + -8.333919e-002, + 2.438788e+000, + 6.143236e-001, + 3.745903e+000, + -2.043295e-001, + -3.451983e+000, + 1.056003e+000, + -1.095394e+000, + 2.009680e-002, + 8.468659e-001, + 1.230624e-002, + -8.638525e+000, + -2.989487e+000, + 8.735734e-001, + 8.533740e+000, + 2.548062e-001, + -1.035035e+000, + -2.296018e-001, + 2.722309e+000, + 1.849369e-001, + 3.440975e+000, + 4.372083e+000, + -4.747494e-001, + -2.984092e+000, + 1.009737e+000, + -1.113497e+000, + -1.931400e-001, + 2.288509e+000, + 4.973129e-002, + -1.353292e-001, + -1.587772e+000, + 4.073801e-001, + -8.180513e-003, + 5.682569e-001, + // albedo 1, turbidity 4 + -1.172242e+000, + -2.084847e-001, + -1.212027e+000, + 1.991627e+000, + -1.403495e-001, + 7.684996e-001, + 1.582914e-001, + 3.407597e+000, + 6.659386e-001, + -1.167834e+000, + -2.117291e-001, + 1.196578e+000, + -1.438719e+000, + -3.137939e-001, + -4.537552e-002, + 2.260096e-001, + 4.659389e+000, + 5.776369e-001, + -1.222298e+000, + -2.893306e-001, + 9.080116e-001, + 1.413518e+000, + 1.709237e+000, + 2.915962e+000, + 8.464584e-002, + -3.867076e+000, + 9.110543e-001, + -9.554071e-001, + 6.610246e-002, + -3.323811e-001, + 2.702543e+000, + -1.345592e+001, + -3.119309e+000, + 7.740473e-001, + 7.452516e+000, + 3.929172e-001, + -1.119763e+000, + -2.579942e-001, + 2.830634e+000, + -1.333418e+000, + 6.825773e+000, + 4.230596e+000, + -2.654108e-001, + -2.669457e+000, + 9.126183e-001, + -1.084261e+000, + -2.086570e-001, + 2.248616e+000, + 6.993871e-001, + -2.391760e+000, + -1.738827e+000, + 3.674794e-001, + -5.324741e-001, + 6.183292e-001, + // albedo 1, turbidity 5 + -1.226325e+000, + -2.688667e-001, + -1.462040e-001, + 4.749868e-001, + -8.718681e-002, + 4.956704e-001, + 1.752427e-001, + 2.933911e+000, + 6.470198e-001, + -1.359737e+000, + -3.985716e-001, + -1.570034e-001, + 1.277905e+000, + -1.314322e+000, + 4.320873e-001, + 8.532731e-002, + 2.774395e+000, + 6.318556e-001, + -1.088212e+000, + -1.688766e-001, + 1.399098e+000, + -3.254950e+000, + 4.733557e+000, + 2.079183e+000, + 1.907990e-001, + -9.540048e-001, + 8.714774e-001, + -1.034524e+000, + -1.050729e-002, + -8.054376e-001, + 1.166351e+001, + -1.879498e+001, + -3.021428e+000, + 7.755251e-001, + 4.516574e+000, + 4.092690e-001, + -1.076150e+000, + -2.551781e-001, + 2.797790e+000, + -5.437950e+000, + 9.156159e+000, + 3.988462e+000, + -2.324172e-001, + -2.124766e+000, + 8.863276e-001, + -1.103432e+000, + -2.058047e-001, + 2.117130e+000, + 2.401558e+000, + -5.015370e+000, + -1.829480e+000, + 4.046378e-001, + -2.078794e-001, + 6.449045e-001, + // albedo 1, turbidity 6 + -1.263516e+000, + -3.133966e-001, + 3.174560e-001, + -4.989246e-003, + -2.317630e+000, + 3.963746e-001, + 1.677262e-001, + 2.563898e+000, + 6.335899e-001, + -1.577927e+000, + -5.893907e-001, + -2.991531e-001, + 1.783728e+000, + 3.693827e+000, + 5.704918e-001, + 6.768069e-002, + 2.215180e+000, + 6.196162e-001, + -9.191335e-001, + -4.529201e-002, + 1.577262e+000, + -6.455191e+000, + -4.020064e+000, + 1.309911e+000, + 1.373281e-001, + -7.178508e-001, + 9.243738e-001, + -1.144508e+000, + -9.289247e-002, + -1.606387e+000, + 2.061805e+001, + -1.051527e+001, + -2.077164e+000, + 8.328239e-001, + 4.729795e+000, + 3.298487e-001, + -1.018834e+000, + -2.186851e-001, + 3.321767e+000, + -7.887012e+000, + 3.374834e+000, + 3.005232e+000, + -2.515037e-001, + -2.656610e+000, + 9.316017e-001, + -1.125230e+000, + -2.422532e-001, + 1.850916e+000, + 6.213105e+000, + -5.017914e+000, + -1.644457e+000, + 3.811828e-001, + -1.772362e-001, + 6.297360e-001, + // albedo 1, turbidity 7 + -1.365631e+000, + -4.017085e-001, + 1.942501e-001, + -7.073927e-003, + -1.461125e-001, + 4.898017e-001, + 1.623346e-001, + 2.330174e+000, + 5.983242e-001, + -1.957177e+000, + -9.640834e-001, + -2.217521e-001, + 1.316645e+000, + -1.907085e-001, + 1.134191e-002, + 9.704476e-002, + 3.828565e-002, + 5.538419e-001, + -7.832629e-001, + 1.949904e-001, + 6.232354e-001, + -2.947737e+000, + 3.702377e+000, + 2.212239e+000, + 9.128296e-002, + 3.131504e+000, + 9.923939e-001, + -1.121562e+000, + -2.704893e-001, + -5.161748e-001, + 8.115427e+000, + -1.443497e+001, + -3.292676e+000, + 8.232212e-001, + -1.548451e-002, + 3.199244e-001, + -1.059207e+000, + -1.613941e-001, + 2.375866e+000, + -9.517705e-002, + 4.514722e+000, + 3.755824e+000, + -1.696953e-001, + -2.539157e-001, + 8.992553e-001, + -1.108877e+000, + -2.404852e-001, + 1.830175e+000, + 2.808956e+000, + -4.932362e+000, + -2.042775e+000, + 4.168739e-001, + -2.534590e-001, + 6.533212e-001, + // albedo 1, turbidity 8 + -1.405398e+000, + -4.540068e-001, + -4.766512e-001, + 1.871207e-001, + 5.535070e-001, + -4.467365e-002, + 2.846366e-001, + 2.443422e+000, + 5.035706e-001, + -2.843953e+000, + -1.562366e+000, + 8.527921e-001, + 5.991182e-001, + -9.984088e-001, + 7.599314e-001, + -2.025184e-002, + -1.515050e+000, + 4.397429e-001, + -5.156586e-001, + 3.789775e-001, + -1.194407e+000, + -7.591558e-001, + 4.515532e+000, + 4.795814e-001, + 3.163186e-001, + 5.993132e+000, + 1.096327e+000, + -1.070353e+000, + -4.037269e-001, + 1.108932e+000, + 1.269159e+000, + -1.099135e+001, + -1.049849e+000, + 4.644725e-001, + -4.387074e+000, + 2.704008e-001, + -1.136211e+000, + -1.473182e-001, + 1.235769e+000, + 5.725364e+000, + 1.712036e+000, + 1.630777e+000, + 3.656685e-002, + 2.082798e+000, + 9.036801e-001, + -1.083101e+000, + -2.468910e-001, + 1.894919e+000, + 6.574012e+000, + -4.949098e+000, + -1.132033e+000, + 3.336584e-001, + -7.321133e-001, + 6.606587e-001, + // albedo 1, turbidity 9 + -1.609910e+000, + -6.550380e-001, + -5.773346e-001, + 1.426156e+000, + -5.000686e-001, + 8.257866e-001, + 1.839148e-002, + 2.106656e+000, + 6.957214e-001, + -3.047283e+000, + -1.421592e+000, + -4.003615e-001, + -6.531692e-001, + 5.643821e-001, + -2.693762e-001, + 2.295553e-001, + 5.533910e-001, + 2.751822e-002, + -2.160824e+000, + -9.212504e-001, + -8.438420e-001, + 1.466021e+000, + 1.124686e+000, + -6.848173e-002, + 6.224893e-001, + 3.137662e+000, + 1.224147e+000, + 1.444817e-002, + 1.418426e-001, + 7.055176e-001, + -1.787432e+000, + -1.625625e+000, + 7.638401e-001, + -3.309940e-001, + -3.414755e+000, + 3.580691e-001, + -1.480512e+000, + -3.141638e-001, + 1.193403e+000, + 6.152773e+000, + -3.314867e+000, + 1.345353e-001, + 5.359935e-001, + 1.409582e+000, + 8.072343e-001, + -1.016066e+000, + -2.346375e-001, + 1.457587e+000, + -2.761458e-003, + -2.546952e+000, + -6.058542e-001, + 3.134230e-001, + -2.232281e-001, + 6.760089e-001, + // albedo 1, turbidity 10 + -2.019395e+000, + -9.550942e-001, + -1.187885e-001, + 1.995372e+000, + -1.604228e+000, + 4.995785e-001, + -9.647137e-006, + 1.929333e+000, + 8.659254e-001, + -2.071307e+000, + -9.485438e-001, + -3.817151e-001, + -1.657017e+000, + 9.488626e-001, + 5.816145e-001, + -3.856514e-002, + 1.677756e+000, + -1.262572e-001, + -6.388445e+000, + -2.738739e+000, + -9.872469e-001, + 2.450058e+000, + 1.075999e+000, + 2.305434e-002, + 8.598771e-001, + 1.853582e+000, + 1.180017e+000, + 1.742851e+000, + 2.950102e-001, + 1.015937e+000, + -2.511194e+000, + -3.829361e+000, + -1.126698e-001, + -4.564605e-001, + -2.097128e+000, + 4.012648e-001, + -1.845177e+000, + -3.242819e-001, + 7.060963e-001, + 7.747868e+000, + -1.721532e+000, + 6.057347e-001, + 4.266212e-001, + 3.153697e-001, + 7.958222e-001, + -9.599955e-001, + -3.732025e-001, + 1.381129e+000, + -3.983023e-003, + -1.941446e+000, + -5.943490e-001, + 2.269207e-001, + -7.249738e-001, + 6.710888e-001, +}; + +double datasetRad680[] = +{ + // albedo 0, turbidity 1 + 1.320908e-002, + 9.179272e-003, + 2.540842e-002, + 3.413687e-002, + 2.736575e-002, + 2.799241e-002, + // albedo 0, turbidity 2 + 1.364418e-002, + 9.639315e-003, + 2.455688e-002, + 5.468867e-002, + 2.423200e-002, + 3.240293e-002, + // albedo 0, turbidity 3 + 1.356642e-002, + 9.864007e-003, + 2.017166e-002, + 8.738638e-002, + 2.138981e-002, + 3.828822e-002, + // albedo 0, turbidity 4 + 1.274664e-002, + 1.046958e-002, + 7.076299e-003, + 1.378101e-001, + 2.058352e-002, + 4.607358e-002, + // albedo 0, turbidity 5 + 1.151617e-002, + 1.429568e-002, + -1.804673e-002, + 1.974118e-001, + 1.313176e-002, + 5.733295e-002, + // albedo 0, turbidity 6 + 1.089311e-002, + 1.719127e-002, + -3.582843e-002, + 2.315641e-001, + 1.402940e-002, + 6.289477e-002, + // albedo 0, turbidity 7 + 9.705879e-003, + 2.218462e-002, + -6.221073e-002, + 2.771148e-001, + 1.651339e-002, + 7.346287e-002, + // albedo 0, turbidity 8 + 8.356372e-003, + 2.724501e-002, + -8.836051e-002, + 3.099528e-001, + 4.114206e-002, + 8.518889e-002, + // albedo 0, turbidity 9 + 7.026434e-003, + 2.944084e-002, + -9.824183e-002, + 2.940735e-001, + 1.048477e-001, + 1.012199e-001, + // albedo 0, turbidity 10 + 5.935885e-003, + 2.429070e-002, + -7.239967e-002, + 1.895904e-001, + 2.306596e-001, + 1.177261e-001, + // albedo 1, turbidity 1 + 1.370741e-002, + 1.011873e-002, + 2.499587e-002, + 3.362880e-002, + 6.416750e-002, + 6.673258e-002, + // albedo 1, turbidity 2 + 1.417558e-002, + 1.065771e-002, + 2.402602e-002, + 5.330606e-002, + 6.505571e-002, + 7.324558e-002, + // albedo 1, turbidity 3 + 1.406012e-002, + 1.182138e-002, + 1.636956e-002, + 9.161153e-002, + 6.031840e-002, + 8.638638e-002, + // albedo 1, turbidity 4 + 1.321071e-002, + 1.310944e-002, + 1.017467e-003, + 1.450040e-001, + 6.291618e-002, + 1.003625e-001, + // albedo 1, turbidity 5 + 1.194910e-002, + 1.687076e-002, + -2.332212e-002, + 2.021394e-001, + 6.093196e-002, + 1.177929e-001, + // albedo 1, turbidity 6 + 1.126778e-002, + 1.905450e-002, + -3.804088e-002, + 2.298767e-001, + 7.038318e-002, + 1.240367e-001, + // albedo 1, turbidity 7 + 1.025282e-002, + 2.337214e-002, + -6.236283e-002, + 2.708195e-001, + 7.801793e-002, + 1.406577e-001, + // albedo 1, turbidity 8 + 9.018216e-003, + 2.718840e-002, + -8.215497e-002, + 2.866465e-001, + 1.194106e-001, + 1.556975e-001, + // albedo 1, turbidity 9 + 7.747698e-003, + 2.701679e-002, + -8.076599e-002, + 2.419548e-001, + 2.126954e-001, + 1.683085e-001, + // albedo 1, turbidity 10 + 6.701188e-003, + 2.085440e-002, + -5.068221e-002, + 1.256935e-001, + 3.480598e-001, + 1.851691e-001, +}; + +double dataset720[] = +{ + // albedo 0, turbidity 1 + -1.110553e+000, + -1.675726e-001, + -2.349324e-001, + 2.433790e+000, + -1.342878e-001, + 1.755516e+000, + -1.879493e-006, + 1.509217e+000, + 7.216495e-001, + -1.149960e+000, + -2.418229e-001, + 2.341927e+000, + 1.486508e-001, + -4.333388e-001, + 9.028740e-001, + 9.450710e-003, + -3.134790e-001, + 5.923234e-001, + -9.702430e-001, + -5.384657e-002, + 3.025898e+000, + -6.450284e-001, + 9.728166e-001, + 3.532967e+000, + -2.429753e-002, + 1.343614e+000, + 1.067807e+000, + -1.278773e+000, + -2.072018e-001, + -2.458359e-001, + 3.749133e-001, + -9.580484e+000, + 3.066020e-001, + 4.056471e-002, + 4.343208e+000, + 1.865704e-001, + -9.511618e-001, + -1.674143e-001, + 4.195842e+000, + -1.205785e-001, + 2.160133e+000, + 3.048813e+000, + -4.826924e-002, + -3.779096e+000, + 1.024834e+000, + -1.095577e+000, + -1.855865e-001, + 1.973593e+000, + 7.894097e-002, + 9.578182e-001, + 8.565674e-001, + 4.663966e-002, + 7.375811e-001, + 5.577192e-001, + // albedo 0, turbidity 2 + -1.099352e+000, + -1.338612e-001, + -8.419373e-001, + 2.710346e+000, + -2.241044e-001, + 1.645463e+000, + 7.621625e-002, + 3.548772e+000, + 7.268231e-001, + -1.140694e+000, + -1.723890e-001, + 1.413194e+000, + 3.429051e-001, + -4.431396e-001, + 9.757402e-001, + 1.248306e-001, + 1.780103e+000, + 6.637254e-001, + -9.861499e-001, + -8.032931e-002, + 2.396682e+000, + 7.281382e-001, + 1.472495e-001, + 3.316479e+000, + -1.028439e-001, + 3.729469e+000, + 9.059004e-001, + -1.233397e+000, + -9.896833e-002, + -1.679568e+000, + 1.542653e+000, + -9.977726e+000, + -6.579124e-001, + 6.386315e-001, + 6.157752e+000, + 3.985939e-001, + -9.438092e-001, + -1.629239e-001, + 4.213446e+000, + -3.419684e-001, + 2.110121e+000, + 3.552183e+000, + -2.817116e-001, + -3.323718e+000, + 8.785077e-001, + -1.120794e+000, + -2.121477e-001, + 1.326767e+000, + 2.317528e-001, + 5.648291e-001, + 4.155089e-001, + 3.048162e-001, + 3.186797e-001, + 6.285665e-001, + // albedo 0, turbidity 3 + -1.117191e+000, + -1.510453e-001, + -3.511136e-001, + 1.706946e+000, + -3.820460e-001, + 1.228101e+000, + 1.641555e-001, + 3.663544e+000, + 6.846104e-001, + -1.130950e+000, + -1.622534e-001, + 1.197076e+000, + -1.342532e+000, + 6.608991e-002, + -1.955817e-001, + 3.515286e-001, + 3.237403e+000, + 5.732364e-001, + -1.103903e+000, + -1.810472e-001, + 1.254237e+000, + 3.367565e+000, + -1.746589e+000, + 4.464939e+000, + -2.831757e-001, + -2.424241e-001, + 9.961252e-001, + -1.107818e+000, + -2.407723e-002, + -7.518594e-001, + 7.115830e+000, + -1.603375e+001, + -4.077248e+000, + 1.210904e+000, + 6.281392e+000, + 2.496837e-001, + -1.012153e+000, + -1.911658e-001, + 2.357463e+000, + -2.392720e+000, + 7.080581e+000, + 6.002768e+000, + -5.120158e-001, + -2.039879e+000, + 1.008071e+000, + -1.083766e+000, + -1.889743e-001, + 1.669813e+000, + 1.205140e+000, + -2.973102e+000, + -1.420288e+000, + 5.838643e-001, + 1.338574e-001, + 5.902153e-001, + // albedo 0, turbidity 4 + -1.176390e+000, + -2.045914e-001, + -1.035177e+000, + 1.521425e+000, + -9.698257e-002, + 7.561111e-001, + 2.338582e-001, + 3.264500e+000, + 6.520267e-001, + -1.132876e+000, + -1.921539e-001, + 9.661015e-001, + -2.470184e-001, + -5.825797e-001, + 5.044517e-001, + 1.418233e-001, + 4.416172e+000, + 6.580570e-001, + -1.296062e+000, + -2.855719e-001, + 1.143329e+000, + -1.640682e+000, + 1.921828e+000, + 1.625086e+000, + 5.248871e-001, + -3.757434e+000, + 7.293814e-001, + -9.026255e-001, + 2.670242e-002, + -8.632572e-001, + 7.076787e+000, + -1.407525e+001, + -1.251814e+000, + 1.806495e-001, + 6.575978e+000, + 6.367149e-001, + -1.103623e+000, + -1.818983e-001, + 1.490037e+000, + -3.276017e+000, + 6.936153e+000, + 2.689183e+000, + 5.705211e-001, + -1.354153e+000, + 7.095230e-001, + -1.049370e+000, + -1.854814e-001, + 1.385509e+000, + 1.714977e+000, + -3.205204e+000, + -1.161420e-001, + 3.453320e-001, + 4.355508e-001, + 7.115006e-001, + // albedo 0, turbidity 5 + -1.225291e+000, + -2.574996e-001, + -4.766919e-001, + 4.951357e-001, + 5.242961e-002, + 4.702062e-001, + 2.428653e-001, + 3.095075e+000, + 6.424221e-001, + -1.318856e+000, + -3.713082e-001, + -4.987985e-001, + 2.026237e+000, + -1.457426e+000, + 7.809557e-001, + 1.419197e-003, + 2.776845e+000, + 7.058454e-001, + -1.168038e+000, + -1.572586e-001, + 1.786834e+000, + -4.594005e+000, + 4.780600e+000, + 1.639416e+000, + 5.324063e-001, + -1.000719e+000, + 7.325083e-001, + -9.862998e-001, + -7.482649e-002, + -1.332445e+000, + 1.329260e+001, + -1.803019e+001, + -2.669936e+000, + 3.591475e-001, + 3.852972e+000, + 5.714399e-001, + -1.049025e+000, + -1.404280e-001, + 1.342894e+000, + -5.633938e+000, + 8.396123e+000, + 3.809869e+000, + 4.313231e-001, + -5.373938e-001, + 7.693298e-001, + -1.069033e+000, + -2.091865e-001, + 1.088280e+000, + 3.125506e+000, + -4.664580e+000, + -1.191484e+000, + 5.195344e-001, + 3.961673e-001, + 6.817393e-001, + // albedo 0, turbidity 6 + -1.267895e+000, + -3.004228e-001, + -5.149611e-001, + 4.302967e-001, + 1.504018e-001, + 3.700643e-001, + 2.354209e-001, + 2.887788e+000, + 6.298388e-001, + -1.551925e+000, + -5.917820e-001, + -5.915642e-001, + 2.016019e+000, + -1.252286e+000, + 8.651065e-001, + 7.721402e-003, + 1.148828e+000, + 6.589887e-001, + -9.782795e-001, + 3.652455e-002, + 1.331304e+000, + -4.804135e+000, + 5.130801e+000, + 1.052586e+000, + 4.439877e-001, + 2.100157e+000, + 8.308236e-001, + -1.077598e+000, + -2.015253e-001, + -1.037818e+000, + 1.307045e+001, + -1.715211e+001, + -1.607252e+000, + 4.472382e-001, + 6.802371e-001, + 4.848934e-001, + -1.025969e+000, + -1.170376e-001, + 1.139546e+000, + -3.374680e+000, + 6.330035e+000, + 2.199093e+000, + 3.928627e-001, + 8.428666e-001, + 7.960910e-001, + -1.062382e+000, + -1.881842e-001, + 8.863153e-001, + 4.266858e+000, + -5.011692e+000, + -4.086830e-001, + 5.889147e-001, + 5.341939e-001, + 6.866073e-001, + // albedo 0, turbidity 7 + -1.352417e+000, + -3.836953e-001, + -5.951560e-001, + 4.053297e-001, + 2.468304e-001, + 2.565711e-001, + 2.321365e-001, + 2.512376e+000, + 6.089904e-001, + -1.976438e+000, + -9.152777e-001, + -4.417666e-001, + 1.790189e+000, + -1.085567e+000, + 4.562228e-001, + 2.133332e-002, + 4.989856e-001, + 6.257100e-001, + -7.197412e-001, + 2.165210e-001, + 6.233215e-001, + -3.960686e+000, + 4.694083e+000, + 2.062797e+000, + 3.121864e-001, + 2.942681e+000, + 8.846033e-001, + -1.189984e+000, + -3.151612e-001, + -5.020073e-001, + 1.015136e+001, + -1.483684e+001, + -3.476730e+000, + 6.049863e-001, + -1.941153e-001, + 4.281015e-001, + -9.781383e-001, + -8.764833e-002, + 8.290915e-001, + 1.086960e-001, + 4.467570e+000, + 3.905633e+000, + 1.975895e-001, + 6.964295e-001, + 8.333166e-001, + -1.081242e+000, + -2.051949e-001, + 6.056482e-001, + 5.219268e+000, + -4.410608e+000, + -1.963212e+000, + 7.277904e-001, + 8.509624e-001, + 6.689251e-001, + // albedo 0, turbidity 8 + -1.443212e+000, + -4.725757e-001, + -9.477961e-001, + 2.671049e-001, + 6.163577e-001, + -3.965036e-001, + 4.071134e-001, + 2.464218e+000, + 4.997820e-001, + -3.021428e+000, + -1.558459e+000, + 1.389763e-001, + 1.122031e+000, + -1.014816e+000, + 1.265687e+000, + -1.649604e-001, + -6.627923e-001, + 5.494665e-001, + -1.593477e-001, + 5.076305e-001, + -7.283933e-001, + -1.265076e+000, + 3.904153e+000, + -8.196757e-002, + 6.585734e-001, + 4.998464e+000, + 9.330667e-001, + -1.378374e+000, + -5.064534e-001, + 7.231197e-001, + 1.385088e+000, + -9.500118e+000, + -4.806746e-001, + 1.067642e-001, + -3.297209e+000, + 4.441955e-001, + -9.436176e-001, + -6.189764e-002, + 1.144482e-001, + 9.137694e+000, + 2.948867e-001, + 1.224655e+000, + 3.675148e-001, + 2.124090e+000, + 8.014519e-001, + -1.078915e+000, + -2.051854e-001, + 4.754209e-001, + 5.826389e-003, + -2.498632e+000, + -8.265078e-001, + 7.644670e-001, + 6.066256e-001, + 6.811963e-001, + // albedo 0, turbidity 9 + -1.621711e+000, + -6.425839e-001, + -7.307813e-001, + 1.109519e+000, + -4.107299e-001, + 7.789953e-001, + 7.764812e-002, + 2.335627e+000, + 6.230915e-001, + -4.003597e+000, + -1.736865e+000, + -6.062450e-001, + -7.370264e-001, + 7.002778e-001, + -4.140325e-001, + 3.926087e-001, + 8.316399e-001, + 1.516341e-001, + -7.696712e-001, + -3.872306e-001, + -1.159436e+000, + 1.660752e+000, + 2.031840e+000, + -7.697685e-001, + 5.481684e-001, + 2.788249e+000, + 1.112977e+000, + -8.506589e-001, + -5.430791e-002, + 1.088719e+000, + -2.513532e+000, + -4.144477e+000, + 2.760914e+000, + -3.011272e-001, + -2.383556e+000, + 4.496070e-001, + -1.150061e+000, + -3.009215e-001, + -9.176868e-002, + 8.996074e+000, + -1.753862e+000, + -2.428423e+000, + 5.764492e-001, + 1.218492e+000, + 7.552230e-001, + -1.020853e+000, + -1.499849e-001, + 3.437744e-001, + -2.339597e-003, + -2.646520e+000, + 1.378457e+000, + 6.708410e-001, + 9.149680e-001, + 6.961806e-001, + // albedo 0, turbidity 10 + -1.982394e+000, + -9.369621e-001, + -3.767595e-001, + 2.514582e+000, + -1.501415e+000, + 6.258952e-001, + -5.260430e-006, + 2.100142e+000, + 7.824077e-001, + -3.432415e+000, + -1.264283e+000, + -9.042363e-001, + -2.930432e+000, + 8.249096e-001, + 7.244840e-001, + 3.055253e-002, + 2.527405e+000, + -2.107031e-003, + -4.333533e+000, + -2.156157e+000, + -8.341654e-001, + 5.048387e+000, + 1.803580e+000, + -9.318434e-001, + 1.085401e+000, + 8.728330e-001, + 1.050061e+000, + 4.889224e-001, + 5.956721e-002, + 8.445388e-001, + -7.479177e+000, + -4.049292e+000, + 1.199966e+000, + -7.060560e-001, + -9.742353e-001, + 4.893674e-001, + -1.347508e+000, + -1.874523e-001, + -5.063342e-002, + 1.299813e+001, + -1.707387e+000, + -4.076088e-001, + 6.119042e-001, + 3.717790e-001, + 7.662157e-001, + -1.047037e+000, + -3.743109e-001, + 3.452375e-001, + -3.615559e-003, + -2.169432e+000, + -7.166880e-002, + 3.747046e-001, + 2.746126e-001, + 6.773818e-001, + // albedo 1, turbidity 1 + -1.105396e+000, + -1.663441e-001, + -2.359634e-001, + 2.476496e+000, + -1.329052e-001, + 1.715759e+000, + 2.103991e-003, + 1.421966e+000, + 6.270733e-001, + -1.132480e+000, + -2.330883e-001, + 2.273938e+000, + 2.422717e-001, + -4.159883e-001, + 9.350714e-001, + 1.432347e-002, + -4.176684e-001, + 4.664640e-001, + -1.036155e+000, + -9.432450e-002, + 3.117262e+000, + -6.369808e-001, + 1.060389e+000, + 3.386481e+000, + -4.605081e-002, + 1.248000e+000, + 9.701974e-001, + -1.162485e+000, + -1.382303e-001, + 1.544122e-001, + 3.716511e-001, + -9.520209e+000, + -2.739605e-001, + 8.489054e-002, + 4.371570e+000, + 7.694391e-002, + -1.031787e+000, + -2.165067e-001, + 4.446666e+000, + -1.470711e-001, + 2.143436e+000, + 1.922123e+000, + -9.589030e-002, + -3.594664e+000, + 8.629249e-001, + -1.081125e+000, + -1.623953e-001, + 2.048137e+000, + 8.639386e-002, + 1.225845e+000, + 1.239255e-001, + 8.366038e-002, + 8.322625e-001, + 5.604708e-001, + // albedo 1, turbidity 2 + -1.112606e+000, + -1.514491e-001, + -1.608942e+000, + 3.592344e+000, + -1.616115e-001, + 1.593861e+000, + 5.488306e-002, + 2.854783e+000, + 7.519999e-001, + -1.098630e+000, + -1.410161e-001, + 2.155487e+000, + -4.381610e-001, + -3.635146e-001, + 1.313843e+000, + 1.201277e-001, + 2.469958e+000, + 6.481071e-001, + -1.077575e+000, + -1.275645e-001, + 1.418205e+000, + 2.057232e+000, + -7.778503e-002, + 2.433840e+000, + -7.094034e-002, + 3.347259e+000, + 9.344752e-001, + -1.099714e+000, + -4.474282e-002, + -1.247041e-001, + -1.578342e-001, + -7.968895e+000, + 1.730912e-001, + 5.303765e-001, + 5.523179e+000, + 3.840340e-001, + -1.061945e+000, + -2.200148e-001, + 4.333103e+000, + 1.818948e-002, + 1.907751e+000, + 1.560633e+000, + -3.182192e-001, + -3.010282e+000, + 8.844351e-001, + -1.087782e+000, + -1.709041e-001, + 1.834683e+000, + 7.351214e-002, + 1.282669e+000, + 2.075884e-001, + 2.698971e-001, + 3.373859e-001, + 5.808336e-001, + // albedo 1, turbidity 3 + -1.121417e+000, + -1.551220e-001, + -1.527123e+000, + 2.788105e+000, + -1.477847e-001, + 1.152139e+000, + 1.742181e-001, + 3.473417e+000, + 6.737050e-001, + -1.118910e+000, + -1.496848e-001, + 2.736873e+000, + -1.829596e+000, + -3.411991e-001, + 1.177538e-001, + 2.960683e-001, + 3.273898e+000, + 5.743833e-001, + -1.121145e+000, + -1.980292e-001, + -5.407002e-001, + 2.886807e+000, + 4.877852e-001, + 3.692424e+000, + -1.104033e-001, + -2.358878e-001, + 9.976295e-001, + -1.078889e+000, + -1.541161e-003, + 1.370650e+000, + 1.644450e+000, + -1.425572e+001, + -3.075430e+000, + 9.346385e-001, + 5.871863e+000, + 2.618026e-001, + -1.053346e+000, + -2.262166e-001, + 2.532003e+000, + -8.720058e-001, + 7.667901e+000, + 4.357082e+000, + -5.367969e-001, + -2.073329e+000, + 1.023965e+000, + -1.100093e+000, + -1.810893e-001, + 2.566430e+000, + 4.757700e-001, + -2.069684e+000, + -1.585209e+000, + 4.693140e-001, + -6.719615e-001, + 5.569453e-001, + // albedo 1, turbidity 4 + -1.181528e+000, + -2.151896e-001, + -1.076470e+000, + 2.037517e+000, + -1.683559e-001, + 8.780110e-001, + 1.782773e-001, + 2.768650e+000, + 6.743293e-001, + -1.142132e+000, + -1.825403e-001, + 1.320992e+000, + -1.895472e+000, + -2.160241e-001, + -2.079637e-001, + 3.424953e-001, + 4.333355e+000, + 5.663420e-001, + -1.225408e+000, + -2.906477e-001, + 8.323962e-001, + 2.176300e+000, + 1.943859e+000, + 3.003671e+000, + 1.130255e-001, + -4.449977e+000, + 8.867390e-001, + -9.815988e-001, + 5.577004e-002, + -4.240348e-001, + 1.488466e+000, + -1.279361e+001, + -3.110899e+000, + 7.360104e-001, + 7.937751e+000, + 4.474817e-001, + -1.103439e+000, + -2.481553e-001, + 3.045691e+000, + -6.993993e-001, + 6.081464e+000, + 3.986228e+000, + -1.616828e-001, + -3.373973e+000, + 8.572294e-001, + -1.081695e+000, + -1.943361e-001, + 2.303236e+000, + 3.906537e-001, + -1.498982e+000, + -1.372140e+000, + 3.379214e-001, + -4.953601e-001, + 6.521383e-001, + // albedo 1, turbidity 5 + -1.235776e+000, + -2.745978e-001, + 2.205316e-002, + 4.505193e-001, + -1.569202e-001, + 5.065039e-001, + 2.016320e-001, + 2.449382e+000, + 6.535188e-001, + -1.268478e+000, + -3.078367e-001, + -2.041769e-001, + 1.189583e+000, + -1.311782e+000, + 4.724677e-001, + 1.025764e-001, + 3.300615e+000, + 6.689797e-001, + -1.190389e+000, + -2.597641e-001, + 1.377486e+000, + -2.289003e+000, + 4.214767e+000, + 1.900318e+000, + 3.126604e-001, + -2.537399e+000, + 7.980811e-001, + -9.632300e-001, + 7.067379e-002, + -6.690546e-001, + 9.507059e+000, + -1.721426e+001, + -2.850631e+000, + 6.931159e-001, + 5.722238e+000, + 4.856193e-001, + -1.119689e+000, + -3.019499e-001, + 2.657474e+000, + -5.208105e+000, + 1.015200e+001, + 3.863887e+000, + -1.603721e-001, + -3.132328e+000, + 8.543154e-001, + -1.078742e+000, + -1.840880e-001, + 2.341448e+000, + 2.576821e+000, + -5.011296e+000, + -1.671996e+000, + 3.955131e-001, + -4.700684e-001, + 6.516593e-001, + // albedo 1, turbidity 6 + -1.263449e+000, + -3.016185e-001, + -1.680842e-001, + 4.791728e-001, + -8.989862e-002, + 5.069014e-001, + 1.892810e-001, + 2.535339e+000, + 6.506411e-001, + -1.544305e+000, + -5.656222e-001, + -2.084263e-001, + 1.312304e+000, + -8.580598e-001, + 4.039133e-001, + 1.008588e-001, + 1.268784e+000, + 6.333075e-001, + -9.436041e-001, + -1.620107e-002, + 1.253874e+000, + -3.499120e+000, + 4.452594e+000, + 1.870490e+000, + 1.524710e-001, + 8.031346e-001, + 8.930942e-001, + -1.106718e+000, + -1.102586e-001, + -8.803979e-001, + 1.326904e+001, + -1.878253e+001, + -2.994671e+000, + 9.501205e-001, + 2.284893e+000, + 3.662824e-001, + -1.048783e+000, + -2.156089e-001, + 2.786728e+000, + -4.862603e+000, + 8.438175e+000, + 3.683031e+000, + -3.092444e-001, + -1.293934e+000, + 9.110045e-001, + -1.108140e+000, + -2.156079e-001, + 2.181504e+000, + 2.124553e+000, + -5.007442e+000, + -1.711417e+000, + 4.904871e-001, + -8.710312e-001, + 6.376965e-001, + // albedo 1, turbidity 7 + -1.345282e+000, + -3.856197e-001, + -1.975094e-001, + 3.016919e-001, + 2.765844e-001, + 2.092275e-001, + 2.251325e-001, + 2.058589e+000, + 6.014266e-001, + -1.907309e+000, + -8.881952e-001, + -4.827860e-001, + 1.495665e+000, + -9.243173e-001, + 3.864061e-001, + 7.491538e-002, + 2.719526e-001, + 6.046039e-001, + -7.540737e-001, + 1.800167e-001, + 1.174575e+000, + -3.052295e+000, + 4.669060e+000, + 1.793876e+000, + 1.664066e-001, + 2.376187e+000, + 9.261122e-001, + -1.165479e+000, + -2.500464e-001, + -9.603937e-001, + 8.919733e+000, + -1.561899e+001, + -2.850650e+000, + 8.368531e-001, + 3.404393e-001, + 3.694265e-001, + -1.032259e+000, + -1.593662e-001, + 2.621639e+000, + -5.369281e-001, + 6.011517e+000, + 3.234312e+000, + -1.842335e-001, + -3.749684e-001, + 8.913063e-001, + -1.119906e+000, + -2.533313e-001, + 2.017975e+000, + 4.776492e-001, + -5.005474e+000, + -1.503414e+000, + 4.694448e-001, + -1.039200e+000, + 6.438630e-001, + // albedo 1, turbidity 8 + -1.457842e+000, + -4.806585e-001, + -6.807833e-001, + 2.682520e-001, + 5.586195e-001, + -2.806536e-001, + 3.694491e-001, + 2.169304e+000, + 4.997873e-001, + -2.906600e+000, + -1.558470e+000, + 4.048869e-001, + 1.012321e+000, + -8.709928e-001, + 9.025637e-001, + -9.171486e-002, + -1.279805e+000, + 5.327924e-001, + -2.500868e-001, + 5.175467e-001, + -4.366020e-001, + -1.156645e+000, + 3.657335e+000, + 4.092973e-001, + 4.611188e-001, + 4.971048e+000, + 9.789196e-001, + -1.282240e+000, + -4.792753e-001, + 3.824491e-001, + 2.061672e+000, + -9.474747e+000, + -1.080446e+000, + 3.852100e-001, + -3.234591e+000, + 3.696703e-001, + -1.046065e+000, + -1.097023e-001, + 1.672284e+000, + 4.799701e+000, + 1.286403e+000, + 1.712569e+000, + 1.099301e-001, + 1.214451e+000, + 8.572886e-001, + -1.104124e+000, + -2.576744e-001, + 1.919030e+000, + -1.296687e-003, + -3.500874e+000, + -1.048831e+000, + 3.929400e-001, + -9.229794e-001, + 6.687909e-001, + // albedo 1, turbidity 9 + -1.658918e+000, + -6.637256e-001, + -1.162850e+000, + 1.829549e+000, + -2.525065e-001, + 8.624803e-001, + 5.214746e-002, + 1.977784e+000, + 6.455044e-001, + -3.553256e+000, + -1.639022e+000, + -8.821743e-001, + -2.660037e-001, + 5.168738e-001, + -8.582770e-001, + 4.110780e-001, + 1.034123e-001, + 1.039852e-001, + -1.299367e+000, + -4.890457e-001, + -5.595307e-001, + 1.129115e+000, + 5.445041e-001, + 5.361314e-001, + 4.579589e-001, + 3.385708e+000, + 1.184267e+000, + -4.366852e-001, + -2.303554e-002, + 5.417530e-001, + -9.106900e-001, + -4.398484e-001, + 3.178252e-001, + -2.132156e-001, + -3.682761e+000, + 3.754470e-001, + -1.334075e+000, + -2.466639e-001, + 1.293237e+000, + 4.685982e+000, + -4.032879e+000, + 4.666293e-001, + 5.337822e-001, + 1.603290e+000, + 8.067400e-001, + -1.052460e+000, + -2.501759e-001, + 1.601487e+000, + 1.713504e+000, + -2.810006e+000, + -8.042597e-001, + 3.216101e-001, + -5.944876e-001, + 6.740783e-001, + // albedo 1, turbidity 10 + -1.974746e+000, + -9.111910e-001, + -2.159155e-001, + 2.437415e+000, + -1.592257e+000, + 6.133797e-001, + -6.243023e-006, + 1.960399e+000, + 7.806415e-001, + -2.677119e+000, + -1.100702e+000, + -6.847246e-001, + -2.820855e+000, + 1.577837e+000, + 6.243833e-001, + 2.218481e-002, + 1.568717e+000, + 2.327673e-002, + -5.323827e+000, + -2.461050e+000, + -3.941307e-001, + 4.908417e+000, + -1.657232e-001, + -9.501763e-001, + 1.063520e+000, + 1.455622e+000, + 9.781890e-001, + 1.325000e+000, + 3.538115e-001, + 1.783573e-001, + -6.903650e+000, + -8.079921e-001, + 1.215973e+000, + -6.852540e-001, + -1.735835e+000, + 5.744662e-001, + -1.741196e+000, + -3.448017e-001, + 1.242377e+000, + 1.098613e+001, + -3.386782e+000, + -3.128683e-001, + 5.792848e-001, + 1.364330e-002, + 7.112763e-001, + -9.762671e-001, + -3.368355e-001, + 1.374728e+000, + -3.312353e-003, + -2.576919e+000, + -1.778015e-001, + 2.024288e-001, + -6.128666e-001, + 6.917938e-001, +}; + +double datasetRad720[] = +{ + // albedo 0, turbidity 1 + 1.130152e-002, + 8.671843e-003, + 2.004792e-002, + 2.515879e-002, + 2.020140e-002, + 2.117353e-002, + // albedo 0, turbidity 2 + 1.224368e-002, + 8.839480e-003, + 2.189489e-002, + 4.083873e-002, + 1.919064e-002, + 2.455945e-002, + // albedo 0, turbidity 3 + 1.252249e-002, + 8.009335e-003, + 2.371432e-002, + 6.397292e-002, + 2.042384e-002, + 2.862112e-002, + // albedo 0, turbidity 4 + 1.180325e-002, + 8.958479e-003, + 1.183940e-002, + 1.148189e-001, + 1.354571e-002, + 3.848691e-002, + // albedo 0, turbidity 5 + 1.085725e-002, + 1.134459e-002, + -7.554548e-003, + 1.671603e-001, + 8.431212e-003, + 4.772824e-002, + // albedo 0, turbidity 6 + 1.014547e-002, + 1.403737e-002, + -2.479898e-002, + 2.032831e-001, + 5.127749e-003, + 5.409735e-002, + // albedo 0, turbidity 7 + 9.143208e-003, + 1.825961e-002, + -4.902126e-002, + 2.473204e-001, + 7.992708e-003, + 6.238918e-002, + // albedo 0, turbidity 8 + 7.784746e-003, + 2.352715e-002, + -7.647231e-002, + 2.868914e-001, + 2.581232e-002, + 7.345921e-002, + // albedo 0, turbidity 9 + 6.425568e-003, + 2.680506e-002, + -9.216963e-002, + 2.866525e-001, + 7.712816e-002, + 8.877708e-002, + // albedo 0, turbidity 10 + 5.348459e-003, + 2.347534e-002, + -7.499904e-002, + 2.035369e-001, + 1.874982e-001, + 1.045961e-001, + // albedo 1, turbidity 1 + 1.168435e-002, + 9.445039e-003, + 1.950520e-002, + 2.563333e-002, + 4.729214e-002, + 5.096829e-002, + // albedo 1, turbidity 2 + 1.252521e-002, + 1.012940e-002, + 2.002302e-002, + 4.276714e-002, + 4.778275e-002, + 5.748908e-002, + // albedo 1, turbidity 3 + 1.285682e-002, + 9.705956e-003, + 2.018767e-002, + 6.797612e-002, + 5.181662e-002, + 6.548541e-002, + // albedo 1, turbidity 4 + 1.218970e-002, + 1.070161e-002, + 8.436124e-003, + 1.177409e-001, + 5.124773e-002, + 8.069723e-002, + // albedo 1, turbidity 5 + 1.129406e-002, + 1.339498e-002, + -1.193989e-002, + 1.709051e-001, + 5.001995e-002, + 9.558448e-002, + // albedo 1, turbidity 6 + 1.056724e-002, + 1.570995e-002, + -2.759057e-002, + 2.030760e-001, + 5.311962e-002, + 1.037882e-001, + // albedo 1, turbidity 7 + 9.594077e-003, + 1.966415e-002, + -5.024827e-002, + 2.432607e-001, + 6.172355e-002, + 1.169276e-001, + // albedo 1, turbidity 8 + 8.348105e-003, + 2.415281e-002, + -7.475064e-002, + 2.748209e-001, + 8.753187e-002, + 1.356651e-001, + // albedo 1, turbidity 9 + 7.106169e-003, + 2.513833e-002, + -7.928946e-002, + 2.463668e-001, + 1.685984e-001, + 1.485820e-001, + // albedo 1, turbidity 10 + 6.031610e-003, + 2.016534e-002, + -5.448075e-002, + 1.436689e-001, + 2.971830e-001, + 1.639884e-001, +}; + +double* datasets[] = +{ + dataset320, + dataset360, + dataset400, + dataset440, + dataset480, + dataset520, + dataset560, + dataset600, + dataset640, + dataset680, + dataset720 +}; + +double* datasetsRad[] = +{ + datasetRad320, + datasetRad360, + datasetRad400, + datasetRad440, + datasetRad480, + datasetRad520, + datasetRad560, + datasetRad600, + datasetRad640, + datasetRad680, + datasetRad720 +}; + +// Uses Feb 9 dataset +double solarDataset320[] = +{ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -1.162049e+02, + 4.610588e+00, + 0, + 0, + -3.824759e+00, + 1.338698e+01, + 5.595274e-02, + 3.125000e-04, + -2.161500e+03, + 1.113209e+02, + 3.458172e-01, + 2.500000e-03, + 8.294600e+01, + 1.711252e+02, + 2.111274e+00, + 1.984375e-02, + -4.229939e+03, + 6.275308e+02, + 6.980643e+00, + 8.375000e-02, + -1.740178e+04, + 1.708634e+03, + 2.367820e+01, + 3.350000e-01, + -1.976851e+04, + 2.817040e+03, + 6.781352e+01, + 1.193125e+00, + -3.810737e+04, + 4.836590e+03, + 1.556846e+02, + 3.466250e+00, + -4.549929e+04, + 6.516914e+03, + 3.119331e+02, + 8.744219e+00, + -5.263436e+04, + 8.036785e+03, + 5.455303e+02, + 1.930562e+01, + -6.309578e+04, + 9.205958e+03, + 8.581439e+02, + 3.815516e+01, + -4.954890e+04, + 8.736703e+03, + 1.229615e+03, + 6.870672e+01, + -6.343828e+04, + 9.001550e+03, + 1.628815e+03, + 1.138184e+02, + -3.475406e+04, + 6.615408e+03, + 2.019023e+03, + 1.763652e+02, + -4.201833e+04, + 6.105544e+03, + 2.362030e+03, + 2.567578e+02, + -2.667604e+04, + 4.055614e+03, + 2.646799e+03, + 3.559691e+02, + -2.036310e+04, + 2.748587e+03, + 2.846313e+03, + 4.723367e+02, + -2.032124e+04, + 1.878732e+03, + 2.969980e+03, + 6.041547e+02, + -1.073640e+04, + 4.777580e+02, + 3.009645e+03, + 7.491283e+02, + -1.005389e+04, + -3.672131e+01, + 2.973858e+03, + 9.033814e+02, + -1.030868e+04, + -4.464229e+02, + 2.879841e+03, + 1.064085e+03, + -2.157918e+03, + -1.342683e+03, + 2.723843e+03, + 1.227711e+03, + -3.651657e+03, + -1.197013e+03, + 2.534012e+03, + 1.389789e+03, + -7.289195e+03, + -9.708760e+02, + 2.331442e+03, + 1.548851e+03, + -7.704469e+02, + -1.628402e+03, + 2.093848e+03, + 1.702493e+03, + -4.214558e+03, + -1.153021e+03, + 1.844767e+03, + 1.845862e+03, + -2.390689e+03, + -1.287373e+03, + 1.593697e+03, + 1.978602e+03, + -6.413034e+03, + -8.008887e+02, + 1.339243e+03, + 2.097559e+03, + -2.988481e+03, + -1.136665e+03, + 1.064931e+03, + 2.201486e+03, + -6.139876e+03, + -5.991924e+02, + 7.913266e+02, + 2.285209e+03, + -1.196221e+04, + 1.344918e+02, + 5.186582e+02, + 2.348895e+03, + -5.971683e+03, + -6.555303e+01, + 2.013157e+02, + 2.389728e+03, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -2.229445e+02, + 7.374485e+00, + 0, + 0, + -1.231740e+01, + 1.262553e+01, + 7.960490e-02, + 4.687500e-04, + -2.643352e+02, + 5.605647e+01, + 3.498905e-01, + 2.812500e-03, + -2.454452e+03, + 2.369608e+02, + 1.620789e+00, + 1.531250e-02, + -4.320948e+03, + 5.952227e+02, + 6.834726e+00, + 7.828125e-02, + -1.272903e+04, + 1.474486e+03, + 2.244014e+01, + 3.187500e-01, + -1.829132e+04, + 2.679893e+03, + 6.267850e+01, + 1.107500e+00, + -3.969700e+04, + 4.797859e+03, + 1.468690e+02, + 3.237813e+00, + -4.233637e+04, + 6.288595e+03, + 2.991805e+02, + 8.289531e+00, + -5.378742e+04, + 8.016312e+03, + 5.272841e+02, + 1.845875e+01, + -6.132387e+04, + 9.078358e+03, + 8.364539e+02, + 3.679578e+01, + -5.902508e+04, + 9.037411e+03, + 1.204972e+03, + 6.666500e+01, + -4.718111e+04, + 8.049720e+03, + 1.595444e+03, + 1.110180e+02, + -4.077260e+04, + 7.049147e+03, + 1.976792e+03, + 1.719842e+02, + -4.205766e+04, + 6.112440e+03, + 2.327488e+03, + 2.511269e+02, + -2.791505e+04, + 4.115557e+03, + 2.612616e+03, + 3.489953e+02, + -1.609988e+04, + 2.510900e+03, + 2.810607e+03, + 4.639409e+02, + -2.314164e+04, + 2.163386e+03, + 2.938786e+03, + 5.940591e+02, + -1.330257e+04, + 6.221024e+02, + 2.986256e+03, + 7.378767e+02, + -5.675969e+03, + -3.846177e+02, + 2.945011e+03, + 8.909630e+02, + -6.495665e+03, + -5.518256e+02, + 2.852178e+03, + 1.049766e+03, + -1.215437e+04, + -4.405937e+02, + 2.722478e+03, + 1.212177e+03, + 2.719602e+03, + -1.879784e+03, + 2.530070e+03, + 1.375258e+03, + -8.647169e+03, + -7.569952e+02, + 2.319694e+03, + 1.532926e+03, + -1.867684e+03, + -1.528257e+03, + 2.092233e+03, + 1.686330e+03, + -4.025935e+03, + -1.211125e+03, + 1.840308e+03, + 1.829689e+03, + -1.081717e+03, + -1.411956e+03, + 1.583655e+03, + 1.961830e+03, + -7.350389e+03, + -6.622648e+02, + 1.334664e+03, + 2.079855e+03, + -2.343916e+03, + -1.205267e+03, + 1.063635e+03, + 2.183818e+03, + -7.430550e+03, + -4.556049e+02, + 7.931502e+02, + 2.267336e+03, + -1.068232e+04, + -2.114828e+01, + 5.135211e+02, + 2.331394e+03, + -6.217560e+03, + -3.350260e+01, + 2.024873e+02, + 2.371433e+03, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -2.203441e+02, + 4.171995e+00, + 0, + 0, + 1.426480e+02, + -4.022426e-01, + 2.425240e-02, + 1.562500e-04, + -4.009478e+01, + 1.125399e+01, + 5.471435e-02, + 4.687500e-04, + -6.200072e+02, + 5.758122e+01, + 2.853042e-01, + 2.343750e-03, + -6.987267e+02, + 1.643846e+02, + 1.429285e+00, + 1.359375e-02, + -5.632468e+03, + 5.971678e+02, + 5.643686e+00, + 6.437500e-02, + -1.136274e+04, + 1.361972e+03, + 2.032334e+01, + 2.812500e-01, + -1.952933e+04, + 2.607796e+03, + 5.786257e+01, + 1.004844e+00, + -3.532941e+04, + 4.461645e+03, + 1.377803e+02, + 3.003125e+00, + -4.143687e+04, + 6.064540e+03, + 2.816662e+02, + 7.743281e+00, + -5.085245e+04, + 7.694233e+03, + 5.005985e+02, + 1.737797e+01, + -6.042859e+04, + 8.861458e+03, + 7.989383e+02, + 3.484813e+01, + -5.375945e+04, + 8.686126e+03, + 1.157257e+03, + 6.348969e+01, + -4.609594e+04, + 8.037224e+03, + 1.541142e+03, + 1.061803e+02, + -5.818693e+04, + 7.796026e+03, + 1.925333e+03, + 1.653475e+02, + -1.234873e+04, + 4.326471e+03, + 2.261366e+03, + 2.427720e+02, + -4.100578e+04, + 5.301137e+03, + 2.543132e+03, + 3.370997e+02, + -2.570418e+04, + 3.036407e+03, + 2.771427e+03, + 4.502481e+02, + -9.930667e+03, + 1.185082e+03, + 2.888544e+03, + 5.787917e+02, + -1.540011e+04, + 1.011847e+03, + 2.933616e+03, + 7.193989e+02, + -8.074592e+03, + -9.360958e+01, + 2.915801e+03, + 8.705267e+02, + -1.229699e+04, + -1.891092e+02, + 2.833288e+03, + 1.028212e+03, + 1.425166e+02, + -1.460737e+03, + 2.687065e+03, + 1.189614e+03, + -7.667229e+03, + -7.968169e+02, + 2.508850e+03, + 1.349517e+03, + -2.347845e+03, + -1.408348e+03, + 2.307273e+03, + 1.507527e+03, + -4.419120e+03, + -1.175822e+03, + 2.079767e+03, + 1.659044e+03, + -4.704423e+03, + -1.172710e+03, + 1.838621e+03, + 1.802379e+03, + -3.231727e+01, + -1.540847e+03, + 1.575896e+03, + 1.934311e+03, + -7.381753e+03, + -6.308022e+02, + 1.326603e+03, + 2.051421e+03, + -2.673977e+03, + -1.159966e+03, + 1.060234e+03, + 2.154908e+03, + -6.512200e+03, + -5.471063e+02, + 7.899642e+02, + 2.238250e+03, + -9.505497e+03, + -1.111579e+02, + 5.172803e+02, + 2.301960e+03, + -6.085971e+03, + -7.278179e+01, + 2.224392e+02, + 2.342608e+03, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -2.398243e+02, + 5.776206e+00, + 0, + 0, + 2.463155e+02, + -2.094592e-01, + 4.496203e-02, + 3.125000e-04, + -1.010040e+03, + 5.790287e+01, + 1.278306e-01, + 1.093750e-03, + -3.545764e+02, + 1.294156e+02, + 1.099066e+00, + 9.687500e-03, + -6.451710e+03, + 5.563384e+02, + 4.533285e+00, + 4.984375e-02, + -5.934123e+03, + 1.056602e+03, + 1.730255e+01, + 2.356250e-01, + -2.331347e+04, + 2.539950e+03, + 4.913378e+01, + 8.401563e-01, + -2.454544e+04, + 3.778662e+03, + 1.219910e+02, + 2.611719e+00, + -4.570703e+04, + 5.952157e+03, + 2.514711e+02, + 6.796719e+00, + -4.332230e+04, + 7.038252e+03, + 4.577067e+02, + 1.558687e+01, + -6.059598e+04, + 8.589735e+03, + 7.371821e+02, + 3.161938e+01, + -4.538550e+04, + 8.101580e+03, + 1.079569e+03, + 5.827141e+01, + -5.158798e+04, + 8.232570e+03, + 1.451372e+03, + 9.823734e+01, + -4.012520e+04, + 6.957081e+03, + 1.830066e+03, + 1.543975e+02, + -3.793394e+04, + 5.939944e+03, + 2.176636e+03, + 2.281206e+02, + -3.211292e+04, + 4.482161e+03, + 2.467196e+03, + 3.200717e+02, + -1.588792e+04, + 2.521470e+03, + 2.673764e+03, + 4.292442e+02, + -1.756764e+04, + 1.927386e+03, + 2.804183e+03, + 5.532441e+02, + -1.277374e+04, + 8.843716e+02, + 2.867650e+03, + 6.906603e+02, + -8.721587e+03, + 7.343786e+01, + 2.857501e+03, + 8.384222e+02, + -1.210720e+04, + -1.134775e+02, + 2.787446e+03, + 9.933153e+02, + -7.324531e+02, + -1.323481e+03, + 2.651921e+03, + 1.152349e+03, + -7.693693e+03, + -7.693487e+02, + 2.480657e+03, + 1.310405e+03, + -2.653371e+03, + -1.366675e+03, + 2.282324e+03, + 1.466687e+03, + -3.648018e+03, + -1.230454e+03, + 2.056210e+03, + 1.616582e+03, + -2.664373e+03, + -1.284624e+03, + 1.819352e+03, + 1.758212e+03, + -5.222558e+03, + -9.816239e+02, + 1.575433e+03, + 1.888928e+03, + -2.865965e+03, + -1.196481e+03, + 1.315007e+03, + 2.006915e+03, + -3.599541e+03, + -9.578621e+02, + 1.050151e+03, + 2.108105e+03, + -6.734962e+03, + -5.085043e+02, + 7.938554e+02, + 2.191497e+03, + -1.211854e+04, + 1.393363e+02, + 5.225520e+02, + 2.255726e+03, + -5.940851e+03, + -7.200209e+01, + 2.016666e+02, + 2.296840e+03, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -5.810245e+01, + 2.305294e+00, + 0, + 0, + -4.677095e+01, + 7.181418e+00, + 2.797637e-02, + 1.562500e-04, + -2.390763e+02, + 3.399401e+01, + 1.676014e-01, + 1.250000e-03, + -1.572353e+03, + 1.448172e+02, + 9.018003e-01, + 8.125000e-03, + -1.932258e+03, + 3.555380e+02, + 4.045229e+00, + 4.515625e-02, + -8.021604e+03, + 1.011597e+03, + 1.385505e+01, + 1.907813e-01, + -1.760146e+04, + 2.142284e+03, + 4.213012e+01, + 7.085938e-01, + -2.771190e+04, + 3.598579e+03, + 1.059734e+02, + 2.232031e+00, + -2.685562e+04, + 4.912314e+03, + 2.231363e+02, + 5.951250e+00, + -5.816933e+04, + 7.488614e+03, + 4.119772e+02, + 1.372719e+01, + -5.375236e+04, + 7.934157e+03, + 6.844993e+02, + 2.860453e+01, + -4.429083e+04, + 7.764848e+03, + 1.006186e+03, + 5.337641e+01, + -4.260900e+04, + 7.623473e+03, + 1.360246e+03, + 9.077234e+01, + -4.165134e+04, + 7.075685e+03, + 1.728438e+03, + 1.435205e+02, + -4.199611e+04, + 6.142734e+03, + 2.077584e+03, + 2.136358e+02, + -1.823240e+04, + 3.778736e+03, + 2.365364e+03, + 3.017798e+02, + -2.860530e+04, + 3.604470e+03, + 2.586318e+03, + 4.064622e+02, + -1.609512e+04, + 1.794040e+03, + 2.736939e+03, + 5.275606e+02, + -1.254070e+04, + 8.805854e+02, + 2.797800e+03, + 6.615970e+02, + -6.090084e+03, + -5.143658e+01, + 2.789103e+03, + 8.057959e+02, + -1.308790e+04, + 9.060229e+01, + 2.728964e+03, + 9.570091e+02, + -1.747122e+03, + -1.183227e+03, + 2.607217e+03, + 1.113144e+03, + -4.502060e+03, + -9.631705e+02, + 2.441686e+03, + 1.268743e+03, + -4.925191e+03, + -1.030626e+03, + 2.258761e+03, + 1.422545e+03, + -4.605435e+03, + -1.142309e+03, + 2.046600e+03, + 1.571669e+03, + -2.008970e+03, + -1.371278e+03, + 1.807372e+03, + 1.712698e+03, + -4.054953e+03, + -1.064272e+03, + 1.561721e+03, + 1.842282e+03, + -4.186489e+03, + -1.014859e+03, + 1.310764e+03, + 1.959238e+03, + -4.536370e+03, + -8.990475e+02, + 1.048215e+03, + 2.060568e+03, + -4.732931e+03, + -7.451517e+02, + 7.801005e+02, + 2.143593e+03, + -1.235209e+04, + 2.174097e+02, + 5.169935e+02, + 2.206104e+03, + -6.154950e+03, + -5.382014e+01, + 2.046788e+02, + 2.247203e+03, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -2.126883e+02, + 5.520338e+00, + 0, + 0, + 1.263603e+02, + 2.194173e+00, + 4.737462e-02, + 3.125000e-04, + -1.508116e+01, + 2.129591e+01, + 1.399562e-01, + 1.250000e-03, + -9.018236e+02, + 1.098378e+02, + 6.623187e-01, + 6.250000e-03, + -3.504771e+03, + 3.721805e+02, + 3.219475e+00, + 3.484375e-02, + -6.289506e+03, + 8.722241e+02, + 1.237269e+01, + 1.653125e-01, + -1.480606e+04, + 1.913931e+03, + 3.734160e+01, + 6.228125e-01, + -2.450066e+04, + 3.351021e+03, + 9.544644e+01, + 1.985000e+00, + -3.693950e+04, + 5.083189e+03, + 2.063989e+02, + 5.391406e+00, + -4.358414e+04, + 6.496516e+03, + 3.861177e+02, + 1.272703e+01, + -4.530622e+04, + 7.428171e+03, + 6.366847e+02, + 2.650891e+01, + -4.733767e+04, + 7.964659e+03, + 9.501384e+02, + 4.969906e+01, + -5.370278e+04, + 8.090009e+03, + 1.307795e+03, + 8.545641e+01, + -3.321384e+04, + 6.411379e+03, + 1.669725e+03, + 1.365462e+02, + -3.641652e+04, + 5.884973e+03, + 2.004006e+03, + 2.040570e+02, + -2.540098e+04, + 4.300449e+03, + 2.297230e+03, + 2.892628e+02, + -2.760640e+04, + 3.474278e+03, + 2.524065e+03, + 3.914722e+02, + -8.048468e+03, + 1.366510e+03, + 2.669037e+03, + 5.095961e+02, + -2.029543e+04, + 1.620800e+03, + 2.744637e+03, + 6.402722e+02, + -3.964493e+03, + -2.191741e+02, + 2.750646e+03, + 7.826442e+02, + -1.106059e+04, + 3.180232e+01, + 2.691209e+03, + 9.316025e+02, + -4.643371e+03, + -8.533850e+02, + 2.583124e+03, + 1.085744e+03, + -4.533634e+03, + -9.829180e+02, + 2.425278e+03, + 1.240435e+03, + -6.144697e+03, + -9.649133e+02, + 2.239377e+03, + 1.393075e+03, + 1.615287e+03, + -1.671132e+03, + 2.018903e+03, + 1.540777e+03, + -9.492625e+03, + -5.137586e+02, + 1.801463e+03, + 1.679387e+03, + -4.863360e+02, + -1.552130e+03, + 1.555354e+03, + 1.810186e+03, + -4.150248e+03, + -9.569455e+02, + 1.295372e+03, + 1.925326e+03, + -3.336249e+03, + -9.666328e+02, + 1.043430e+03, + 2.025790e+03, + -8.928017e+03, + -2.828557e+02, + 7.918380e+02, + 2.108700e+03, + -8.901351e+03, + -2.240739e+02, + 5.052828e+02, + 2.172922e+03, + -6.226979e+03, + -2.346247e+01, + 2.056987e+02, + 2.211881e+03, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -1.915526e+02, + 7.366238e+00, + 0, + 0, + 6.163369e+01, + 1.204175e+01, + 9.225802e-02, + 6.250000e-04, + -6.773000e+02, + 7.896783e+01, + 4.201401e-01, + 3.750000e-03, + -1.616556e+03, + 2.639201e+02, + 2.241390e+00, + 2.343750e-02, + -1.059666e+04, + 9.232364e+02, + 9.386152e+00, + 1.187500e-01, + -8.791318e+03, + 1.500107e+03, + 3.211158e+01, + 5.154688e-01, + -2.227497e+04, + 2.999099e+03, + 8.091825e+01, + 1.660469e+00, + -3.111629e+04, + 4.548813e+03, + 1.797262e+02, + 4.607656e+00, + -4.734025e+04, + 6.313047e+03, + 3.438787e+02, + 1.107969e+01, + -3.301271e+04, + 6.534868e+03, + 5.771119e+02, + 2.356234e+01, + -5.497932e+04, + 8.077472e+03, + 8.696235e+02, + 4.460859e+01, + -3.691249e+04, + 7.075388e+03, + 1.212190e+03, + 7.774641e+01, + -4.535714e+04, + 7.102579e+03, + 1.562845e+03, + 1.251120e+02, + -3.169379e+04, + 5.490801e+03, + 1.899280e+03, + 1.890709e+02, + -1.728180e+04, + 3.949454e+03, + 2.183344e+03, + 2.698602e+02, + -3.714132e+04, + 4.285851e+03, + 2.423673e+03, + 3.672678e+02, + -5.215022e+03, + 1.183427e+03, + 2.583754e+03, + 4.816480e+02, + -1.863398e+04, + 1.625851e+03, + 2.661413e+03, + 6.081128e+02, + -6.406195e+03, + 7.803378e+01, + 2.681066e+03, + 7.464519e+02, + -1.136441e+04, + 7.752814e+01, + 2.632242e+03, + 8.920981e+02, + -2.047264e+03, + -1.002831e+03, + 2.526395e+03, + 1.042912e+03, + -6.248742e+03, + -7.263883e+02, + 2.379661e+03, + 1.194150e+03, + -5.489763e+03, + -9.816353e+02, + 2.205342e+03, + 1.344432e+03, + -1.167746e+02, + -1.486682e+03, + 1.991891e+03, + 1.489923e+03, + -6.259862e+03, + -8.113410e+02, + 1.773796e+03, + 1.626878e+03, + -1.374682e+03, + -1.342055e+03, + 1.539054e+03, + 1.755264e+03, + -5.056021e+03, + -8.353907e+02, + 1.295621e+03, + 1.869990e+03, + -4.537758e+03, + -8.790940e+02, + 1.044749e+03, + 1.970797e+03, + -6.706975e+03, + -5.509051e+02, + 7.801558e+02, + 2.053670e+03, + -1.020946e+04, + -4.372454e+01, + 5.016635e+02, + 2.116272e+03, + -6.221044e+03, + -1.982749e+01, + 1.997960e+02, + 2.155378e+03, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -7.471287e+01, + 3.454011e+00, + 0, + 0, + -5.151738e+01, + 1.088983e+01, + 4.862104e-02, + 3.125000e-04, + -5.554154e+02, + 5.853337e+01, + 2.954357e-01, + 2.500000e-03, + -1.401631e+03, + 1.899381e+02, + 1.613639e+00, + 1.671875e-02, + -3.677010e+03, + 5.381794e+02, + 6.576231e+00, + 8.437500e-02, + -1.130930e+04, + 1.351274e+03, + 2.217409e+01, + 3.490625e-01, + -1.610460e+04, + 2.382976e+03, + 6.220396e+01, + 1.221875e+00, + -3.182774e+04, + 4.050808e+03, + 1.429730e+02, + 3.534531e+00, + -2.661339e+04, + 4.911419e+03, + 2.820920e+02, + 8.833438e+00, + -4.684400e+04, + 6.742349e+03, + 4.845560e+02, + 1.910938e+01, + -3.607371e+04, + 6.710619e+03, + 7.550675e+02, + 3.735891e+01, + -4.154781e+04, + 7.152810e+03, + 1.067429e+03, + 6.618859e+01, + -4.204317e+04, + 6.774326e+03, + 1.407564e+03, + 1.085970e+02, + -2.942193e+04, + 5.355563e+03, + 1.733269e+03, + 1.666419e+02, + -2.313904e+04, + 4.280577e+03, + 2.017180e+03, + 2.408670e+02, + -2.385720e+04, + 3.520820e+03, + 2.254320e+03, + 3.314445e+02, + -1.513209e+04, + 2.112956e+03, + 2.426267e+03, + 4.378639e+02, + -9.126023e+03, + 1.113924e+03, + 2.524502e+03, + 5.577991e+02, + -1.571455e+04, + 1.029708e+03, + 2.566730e+03, + 6.890491e+02, + -7.238440e+03, + -2.206829e+02, + 2.538549e+03, + 8.297720e+02, + -3.160979e+03, + -7.760560e+02, + 2.439782e+03, + 9.749502e+02, + -5.602452e+03, + -6.902848e+02, + 2.308307e+03, + 1.121456e+03, + -3.553157e+03, + -1.014479e+03, + 2.146930e+03, + 1.267419e+03, + -4.461083e+03, + -9.863057e+02, + 1.956534e+03, + 1.409364e+03, + -2.326809e+03, + -1.209321e+03, + 1.742287e+03, + 1.544723e+03, + -4.135229e+03, + -9.712685e+02, + 1.515864e+03, + 1.670126e+03, + -3.963535e+03, + -9.751278e+02, + 1.278348e+03, + 1.783945e+03, + -3.590545e+03, + -9.317344e+02, + 1.027352e+03, + 1.882948e+03, + -7.816601e+03, + -3.861471e+02, + 7.759248e+02, + 1.964524e+03, + -8.824559e+03, + -1.916167e+02, + 4.991662e+02, + 2.027263e+03, + -6.003275e+03, + -4.576937e+01, + 2.081407e+02, + 2.066007e+03, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -5.625582e+01, + 1.932575e+00, + 0, + 0, + 6.414978e+01, + 1.472767e+00, + 2.207452e-02, + 1.562500e-04, + -2.922836e+02, + 2.777474e+01, + 8.841004e-02, + 7.812500e-04, + -8.188740e+02, + 1.059625e+02, + 6.968160e-01, + 6.718750e-03, + -2.889488e+03, + 3.500503e+02, + 3.437535e+00, + 4.109375e-02, + -6.748480e+03, + 8.561885e+02, + 1.311485e+01, + 1.956250e-01, + -9.511546e+03, + 1.611095e+03, + 3.896265e+01, + 7.334375e-01, + -2.290021e+04, + 3.066546e+03, + 9.552066e+01, + 2.243906e+00, + -2.821286e+04, + 4.251733e+03, + 2.028843e+02, + 5.967656e+00, + -2.913541e+04, + 5.203704e+03, + 3.675117e+02, + 1.368859e+01, + -4.048369e+04, + 6.372044e+03, + 5.934689e+02, + 2.775234e+01, + -3.547831e+04, + 6.262590e+03, + 8.720572e+02, + 5.110688e+01, + -3.218587e+04, + 5.921591e+03, + 1.172909e+03, + 8.616875e+01, + -2.477427e+04, + 5.121564e+03, + 1.475680e+03, + 1.350383e+02, + -2.868072e+04, + 4.746820e+03, + 1.762617e+03, + 1.991086e+02, + -1.754454e+04, + 3.266592e+03, + 2.009591e+03, + 2.794042e+02, + -1.913506e+04, + 2.655854e+03, + 2.197015e+03, + 3.748694e+02, + -9.992284e+03, + 1.320722e+03, + 2.319693e+03, + 4.845859e+02, + -1.419455e+04, + 1.062222e+03, + 2.376302e+03, + 6.057533e+02, + -2.694677e+03, + -3.023730e+02, + 2.365281e+03, + 7.364186e+02, + -9.185589e+03, + -8.118530e+00, + 2.302949e+03, + 8.721534e+02, + -2.847409e+03, + -8.444596e+02, + 2.197532e+03, + 1.011741e+03, + -3.035145e+03, + -8.775668e+02, + 2.051168e+03, + 1.150592e+03, + -5.533588e+03, + -7.385513e+02, + 1.887015e+03, + 1.286758e+03, + -3.565998e+03, + -1.040906e+03, + 1.691788e+03, + 1.417959e+03, + -2.327347e+03, + -1.126813e+03, + 1.469339e+03, + 1.539923e+03, + -3.906176e+03, + -8.827879e+02, + 1.242034e+03, + 1.649925e+03, + -6.221863e+03, + -6.310295e+02, + 1.007942e+03, + 1.746547e+03, + -3.114073e+03, + -8.975397e+02, + 7.474580e+02, + 1.826920e+03, + -1.186080e+04, + 2.407749e+02, + 4.982586e+02, + 1.886371e+03, + -6.394004e+03, + -1.686521e+01, + 2.046311e+02, + 1.926321e+03, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -1.355371e+02, + 8.998932e+00, + 0, + 0, + -3.468260e+02, + 4.003623e+01, + 1.728223e-01, + 1.406250e-03, + -1.659534e+03, + 1.606414e+02, + 1.180182e+00, + 1.281250e-02, + -5.133751e+02, + 3.182364e+02, + 5.307610e+00, + 7.484375e-02, + -1.044783e+04, + 1.132211e+03, + 1.723019e+01, + 2.984375e-01, + -1.232620e+04, + 1.809523e+03, + 5.164214e+01, + 1.100625e+00, + -1.492798e+04, + 2.716347e+03, + 1.170312e+02, + 3.201250e+00, + -2.509641e+04, + 4.034536e+03, + 2.285777e+02, + 7.860000e+00, + -3.139992e+04, + 4.936112e+03, + 3.976305e+02, + 1.709562e+01, + -1.992734e+04, + 4.752382e+03, + 6.133259e+02, + 3.325813e+01, + -3.583565e+04, + 5.733661e+03, + 8.653644e+02, + 5.850203e+01, + -1.864658e+04, + 4.463079e+03, + 1.140041e+03, + 9.577875e+01, + -2.806870e+04, + 4.628337e+03, + 1.403590e+03, + 1.460806e+02, + -1.224450e+04, + 3.007469e+03, + 1.643849e+03, + 2.111303e+02, + -1.837221e+04, + 2.895966e+03, + 1.840158e+03, + 2.900925e+02, + -1.305949e+04, + 1.813863e+03, + 1.991237e+03, + 3.832811e+02, + -7.995788e+03, + 9.019857e+02, + 2.074227e+03, + 4.884772e+02, + -5.202137e+03, + 3.292653e+02, + 2.101192e+03, + 6.031734e+02, + -9.894927e+03, + 3.490710e+02, + 2.086841e+03, + 7.252181e+02, + -2.081824e+03, + -6.584184e+02, + 2.017335e+03, + 8.526909e+02, + -5.753047e+03, + -4.455308e+02, + 1.904978e+03, + 9.807998e+02, + -2.548608e+03, + -9.027576e+02, + 1.761653e+03, + 1.108055e+03, + -4.593746e+03, + -7.480921e+02, + 1.589904e+03, + 1.230419e+03, + -2.237374e+03, + -1.028298e+03, + 1.394230e+03, + 1.345830e+03, + -4.404710e+03, + -7.547906e+02, + 1.184581e+03, + 1.450460e+03, + -3.128602e+03, + -8.687342e+02, + 9.614427e+02, + 1.542825e+03, + -7.364928e+03, + -3.355787e+02, + 7.322318e+02, + 1.619357e+03, + -9.377841e+03, + -7.234116e+01, + 4.767442e+02, + 1.678824e+03, + -6.106783e+03, + -2.487557e+00, + 1.931677e+02, + 1.715997e+03, +}; + +double solarDataset360[] = +{ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -9.078413e+03, + 7.118205e+01, + 0, + 0, + 4.658139e+03, + -1.838006e+01, + 1.514489e-01, + 5.208333e-04, + -1.266691e+04, + 2.223605e+02, + 2.846817e-01, + 1.302083e-03, + 5.376673e+03, + 1.263979e+02, + 1.585011e+00, + 7.812500e-03, + -6.287382e+03, + 6.310960e+02, + 4.070404e+00, + 2.630208e-02, + -1.089068e+04, + 1.566596e+03, + 1.304182e+01, + 9.713542e-02, + -5.578495e+04, + 4.275269e+03, + 3.968016e+01, + 3.502604e-01, + -7.874206e+04, + 8.041790e+03, + 1.128851e+02, + 1.215885e+00, + -1.523996e+05, + 1.484058e+04, + 2.762902e+02, + 3.709896e+00, + -2.545257e+05, + 2.361556e+04, + 6.036183e+02, + 1.011875e+01, + -2.941122e+05, + 3.066092e+04, + 1.160209e+03, + 2.459557e+01, + -3.612497e+05, + 3.709042e+04, + 1.969276e+03, + 5.311250e+01, + -2.820800e+05, + 3.689189e+04, + 3.009049e+03, + 1.034445e+02, + -3.813699e+05, + 4.027793e+04, + 4.213037e+03, + 1.833859e+02, + -3.197931e+05, + 3.414742e+04, + 5.485024e+03, + 3.019268e+02, + -1.923698e+05, + 2.458254e+04, + 6.615509e+03, + 4.632190e+02, + -2.078027e+05, + 2.080724e+04, + 7.548980e+03, + 6.677510e+02, + -1.360611e+05, + 1.255134e+04, + 8.240067e+03, + 9.159479e+02, + -6.729497e+04, + 5.762938e+03, + 8.622622e+03, + 1.202090e+03, + -9.900171e+04, + 4.710833e+03, + 8.774927e+03, + 1.519642e+03, + -3.788016e+04, + -1.223413e+03, + 8.689075e+03, + 1.864136e+03, + -3.007086e+04, + -2.674663e+03, + 8.385744e+03, + 2.224184e+03, + -1.454468e+04, + -4.149445e+03, + 7.962237e+03, + 2.593449e+03, + -3.313233e+04, + -3.256536e+03, + 7.461974e+03, + 2.965295e+03, + -2.461750e+03, + -5.667421e+03, + 6.865987e+03, + 3.335167e+03, + -5.859709e+03, + -4.818237e+03, + 6.224765e+03, + 3.692920e+03, + -1.114171e+04, + -4.055929e+03, + 5.606249e+03, + 4.036827e+03, + -2.940298e+01, + -4.599486e+03, + 4.980260e+03, + 4.363959e+03, + -8.192323e+03, + -3.332635e+03, + 4.380331e+03, + 4.669007e+03, + -1.314651e+02, + -3.690650e+03, + 3.804426e+03, + 4.952310e+03, + -9.321444e+03, + -2.355513e+03, + 3.265525e+03, + 5.209421e+03, + -4.323778e+03, + -2.664833e+03, + 2.740069e+03, + 5.441705e+03, + -4.030446e+03, + -2.268601e+03, + 2.225562e+03, + 5.643180e+03, + -7.709530e+03, + -1.532269e+03, + 1.753678e+03, + 5.813184e+03, + -9.915496e+03, + -1.081222e+03, + 1.297245e+03, + 5.951777e+03, + -1.918399e+04, + 1.650147e+02, + 8.356870e+02, + 6.055439e+03, + -9.182623e+03, + -1.363456e+02, + 3.168424e+02, + 6.120820e+03, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -2.007459e+06, + 1.920534e+03, + 0, + 0, + 4.479837e+05, + -7.065871e+02, + 0, + 2.604167e-04, + 0, + 0, + 0, + 0, + -4.964101e+04, + 1.630114e+02, + 0, + 0, + 2.106646e+04, + -9.205597e+01, + 0, + 2.604167e-04, + 0, + 0, + 0, + 0, + -1.305437e+04, + 1.325834e+02, + 0, + 0, + 7.455004e+03, + -2.985865e+01, + 3.840792e-01, + 1.562500e-03, + -2.055425e+04, + 4.505399e+02, + 7.714470e-01, + 4.166667e-03, + 1.086675e+04, + 2.797690e+02, + 4.050099e+00, + 2.395833e-02, + -1.873506e+04, + 1.575040e+03, + 1.070445e+01, + 8.072917e-02, + -4.327245e+04, + 3.801002e+03, + 3.540976e+01, + 3.059896e-01, + -1.102894e+05, + 8.242103e+03, + 1.027385e+02, + 1.085156e+00, + -7.645743e+04, + 1.218373e+04, + 2.565037e+02, + 3.423437e+00, + -3.095499e+05, + 2.422173e+04, + 5.541844e+02, + 9.238802e+00, + -1.908061e+05, + 2.675484e+04, + 1.088555e+03, + 2.286589e+01, + -3.934663e+05, + 3.821301e+04, + 1.856451e+03, + 4.946328e+01, + -3.390953e+05, + 3.834252e+04, + 2.902994e+03, + 9.776536e+01, + -3.420266e+05, + 3.790490e+04, + 4.089229e+03, + 1.755013e+02, + -2.686944e+05, + 3.228911e+04, + 5.315213e+03, + 2.902633e+02, + -2.564538e+05, + 2.755072e+04, + 6.453482e+03, + 4.467523e+02, + -1.509348e+05, + 1.825991e+04, + 7.399666e+03, + 6.475846e+02, + -1.630120e+05, + 1.453409e+04, + 8.097017e+03, + 8.903924e+02, + -9.950958e+04, + 7.104934e+03, + 8.521488e+03, + 1.172941e+03, + -2.923012e+04, + 1.025880e+03, + 8.643788e+03, + 1.487047e+03, + -8.585662e+04, + 2.418502e+03, + 8.589889e+03, + 1.824949e+03, + -1.614087e+04, + -3.639570e+03, + 8.338546e+03, + 2.183701e+03, + -2.320497e+04, + -3.485113e+03, + 7.912837e+03, + 2.550157e+03, + -2.187702e+04, + -3.972423e+03, + 7.416360e+03, + 2.920199e+03, + -1.034810e+04, + -4.884562e+03, + 6.835820e+03, + 3.287367e+03, + -2.759089e+03, + -5.058797e+03, + 6.209527e+03, + 3.644522e+03, + -9.328274e+03, + -4.074038e+03, + 5.594421e+03, + 3.987341e+03, + -4.936422e+03, + -4.126474e+03, + 4.986817e+03, + 4.314099e+03, + -3.321617e+03, + -3.792265e+03, + 4.386012e+03, + 4.620225e+03, + -1.003521e+04, + -2.819991e+03, + 3.816137e+03, + 4.903331e+03, + 2.907803e+03, + -3.685267e+03, + 3.246729e+03, + 5.162089e+03, + -7.981799e+03, + -2.001596e+03, + 2.732990e+03, + 5.390627e+03, + -8.279987e+03, + -1.868805e+03, + 2.254065e+03, + 5.593927e+03, + -5.136369e+03, + -1.945934e+03, + 1.758273e+03, + 5.766632e+03, + -9.493658e+03, + -1.095077e+03, + 1.289392e+03, + 5.904171e+03, + -1.816478e+04, + 8.782733e+01, + 8.362875e+02, + 6.007321e+03, + -1.016501e+04, + -5.757161e+01, + 3.316172e+02, + 6.072978e+03, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -2.106646e+04, + 9.205597e+01, + 0, + 0, + 9.951134e+03, + -5.583492e+01, + 0, + 2.604167e-04, + -6.862369e+03, + 7.979095e+01, + 0, + 0, + 3.093701e+03, + 1.042453e+01, + 2.962179e-01, + 1.041667e-03, + -3.848975e+03, + 1.884300e+02, + 7.173252e-01, + 3.645833e-03, + -1.922464e+03, + 4.118046e+02, + 2.755566e+00, + 1.614583e-02, + -1.029728e+04, + 1.238807e+03, + 9.037110e+00, + 6.432292e-02, + -5.326510e+04, + 3.551966e+03, + 2.965222e+01, + 2.510417e-01, + -5.119148e+04, + 6.178442e+03, + 8.801668e+01, + 9.252604e-01, + -1.102076e+05, + 1.208818e+04, + 2.178717e+02, + 2.875260e+00, + -2.455519e+05, + 2.133109e+04, + 4.927790e+02, + 8.033333e+00, + -2.314605e+05, + 2.675653e+04, + 9.837470e+02, + 2.021667e+01, + -3.383926e+05, + 3.503899e+04, + 1.713479e+03, + 4.473359e+01, + -3.279210e+05, + 3.710837e+04, + 2.699082e+03, + 8.941484e+01, + -3.295655e+05, + 3.695410e+04, + 3.847503e+03, + 1.622500e+02, + -2.654830e+05, + 3.200589e+04, + 5.049391e+03, + 2.708594e+02, + -2.374300e+05, + 2.701443e+04, + 6.179434e+03, + 4.202516e+02, + -1.686326e+05, + 1.951749e+04, + 7.141543e+03, + 6.132620e+02, + -1.530711e+05, + 1.439417e+04, + 7.865806e+03, + 8.487388e+02, + -8.333989e+04, + 7.055607e+03, + 8.314596e+03, + 1.123732e+03, + -8.130111e+04, + 4.141743e+03, + 8.497304e+03, + 1.431033e+03, + -3.575768e+04, + -5.696968e+02, + 8.448170e+03, + 1.764856e+03, + -3.255295e+04, + -1.826416e+03, + 8.210999e+03, + 2.116095e+03, + -3.660834e+04, + -2.550753e+03, + 7.848763e+03, + 2.478988e+03, + -7.337777e+03, + -5.008166e+03, + 7.349120e+03, + 2.846617e+03, + -5.379678e+03, + -4.784496e+03, + 6.777142e+03, + 3.209571e+03, + -2.374637e+04, + -3.331316e+03, + 6.206260e+03, + 3.564630e+03, + 1.080518e+04, + -5.854954e+03, + 5.579585e+03, + 3.908975e+03, + -1.909992e+04, + -2.668851e+03, + 4.981595e+03, + 4.232768e+03, + 1.911058e+03, + -4.437068e+03, + 4.390299e+03, + 4.540824e+03, + -3.848120e+03, + -3.213454e+03, + 3.806091e+03, + 4.822876e+03, + -9.851976e+03, + -2.361374e+03, + 3.277626e+03, + 5.081202e+03, + -1.578794e+03, + -2.943684e+03, + 2.741918e+03, + 5.314140e+03, + -5.601199e+03, + -2.034313e+03, + 2.236027e+03, + 5.515390e+03, + -8.507381e+03, + -1.484607e+03, + 1.769983e+03, + 5.687009e+03, + -8.981222e+03, + -1.217297e+03, + 1.303053e+03, + 5.826869e+03, + -1.807778e+04, + 6.647867e+01, + 8.405294e+02, + 5.930647e+03, + -1.028919e+04, + -5.100950e+01, + 3.341801e+02, + 5.996596e+03, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -1.528365e+03, + 1.907311e+01, + 0, + 0, + 1.516070e+03, + 1.652342e+00, + 7.814024e-02, + 2.604167e-04, + -1.566422e+04, + 2.938113e+02, + 2.450638e-01, + 1.041667e-03, + 9.323103e+03, + 7.951170e+01, + 2.065634e+00, + 1.145833e-02, + -7.689699e+03, + 8.647270e+02, + 5.179331e+00, + 3.828125e-02, + -4.120250e+04, + 2.746625e+03, + 1.943548e+01, + 1.575521e-01, + -5.390461e+04, + 5.341204e+03, + 6.456184e+01, + 6.408854e-01, + -1.009697e+05, + 1.038629e+04, + 1.723484e+02, + 2.164844e+00, + -1.920166e+05, + 1.804640e+04, + 4.048162e+02, + 6.370052e+00, + -2.372478e+05, + 2.492915e+04, + 8.320197e+02, + 1.654844e+01, + -2.793231e+05, + 3.114679e+04, + 1.491609e+03, + 3.777448e+01, + -3.104765e+05, + 3.519482e+04, + 2.392658e+03, + 7.703568e+01, + -3.177075e+05, + 3.568983e+04, + 3.482617e+03, + 1.424852e+02, + -2.494221e+05, + 3.108444e+04, + 4.644386e+03, + 2.418099e+02, + -2.364069e+05, + 2.715189e+04, + 5.759209e+03, + 3.802539e+02, + -1.404746e+05, + 1.898809e+04, + 6.731675e+03, + 5.613974e+02, + -2.017016e+05, + 1.743282e+04, + 7.504484e+03, + 7.844820e+02, + -4.320413e+04, + 5.367012e+03, + 7.992650e+03, + 1.048910e+03, + -9.571801e+04, + 5.908238e+03, + 8.211533e+03, + 1.344214e+03, + -3.686322e+04, + 6.522573e+01, + 8.234419e+03, + 1.668699e+03, + -4.436791e+04, + -8.088656e+02, + 8.044739e+03, + 2.011998e+03, + -2.002588e+04, + -3.383672e+03, + 7.702298e+03, + 2.368391e+03, + -1.741256e+04, + -3.854559e+03, + 7.237658e+03, + 2.728893e+03, + -7.888695e+03, + -4.546112e+03, + 6.704484e+03, + 3.087804e+03, + -6.588850e+03, + -4.351038e+03, + 6.137185e+03, + 3.439195e+03, + -1.547834e+04, + -3.487809e+03, + 5.565533e+03, + 3.779451e+03, + 3.267247e+03, + -4.786579e+03, + 4.960190e+03, + 4.105218e+03, + -6.089460e+03, + -3.295662e+03, + 4.377885e+03, + 4.409076e+03, + -1.218322e+04, + -2.582626e+03, + 3.837023e+03, + 4.693073e+03, + 3.616890e+03, + -3.794143e+03, + 3.268057e+03, + 4.953780e+03, + -9.102661e+03, + -1.913822e+03, + 2.750126e+03, + 5.183632e+03, + -6.696343e+03, + -2.063778e+03, + 2.263473e+03, + 5.388297e+03, + -3.048448e+03, + -2.093974e+03, + 1.768789e+03, + 5.561364e+03, + -1.551802e+04, + -4.318095e+02, + 1.323227e+03, + 5.700141e+03, + -1.234976e+04, + -6.368560e+02, + 8.363357e+02, + 5.807329e+03, + -9.311490e+03, + -1.488186e+02, + 3.568924e+02, + 5.871500e+03, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -1.492148e+03, + 2.451223e+01, + 0, + 0, + 1.641003e+03, + 8.115125e+00, + 1.339882e-01, + 5.208333e-04, + -1.214574e+04, + 3.860017e+02, + 4.756144e-01, + 2.343750e-03, + -1.064944e+04, + 7.243819e+02, + 4.335378e+00, + 2.500000e-02, + -6.266723e+03, + 1.498871e+03, + 1.515545e+01, + 1.213542e-01, + -4.724146e+04, + 4.315847e+03, + 4.553783e+01, + 4.554687e-01, + -8.443089e+04, + 8.583278e+03, + 1.309248e+02, + 1.597396e+00, + -1.541231e+05, + 1.527165e+04, + 3.224487e+02, + 4.907813e+00, + -2.382286e+05, + 2.297833e+04, + 6.902681e+02, + 1.323568e+01, + -2.235609e+05, + 2.735690e+04, + 1.279864e+03, + 3.133542e+01, + -2.906342e+05, + 3.320621e+04, + 2.096545e+03, + 6.539010e+01, + -3.123834e+05, + 3.467834e+04, + 3.128177e+03, + 1.236672e+02, + -2.393461e+05, + 3.025589e+04, + 4.250709e+03, + 2.140122e+02, + -2.028333e+05, + 2.609503e+04, + 5.342867e+03, + 3.417609e+02, + -2.151191e+05, + 2.250055e+04, + 6.337131e+03, + 5.109326e+02, + -9.763169e+04, + 1.271519e+04, + 7.112202e+03, + 7.229203e+02, + -1.312211e+05, + 1.094586e+04, + 7.636174e+03, + 9.727784e+02, + -3.907836e+04, + 2.892178e+03, + 7.911983e+03, + 1.258277e+03, + -5.691819e+04, + 2.234234e+03, + 7.958878e+03, + 1.569822e+03, + -4.605984e+04, + -2.949351e+02, + 7.845258e+03, + 1.903886e+03, + -9.288844e+03, + -3.584873e+03, + 7.538797e+03, + 2.252188e+03, + -3.275040e+04, + -2.362390e+03, + 7.129354e+03, + 2.605553e+03, + 7.240576e+03, + -5.434321e+03, + 6.628154e+03, + 2.960763e+03, + -2.435119e+04, + -2.700395e+03, + 6.099256e+03, + 3.307801e+03, + -3.407342e+03, + -4.548247e+03, + 5.539707e+03, + 3.647942e+03, + -4.437134e+03, + -3.961614e+03, + 4.941027e+03, + 3.970917e+03, + -3.090062e+03, + -3.635715e+03, + 4.368076e+03, + 4.274897e+03, + -6.315304e+03, + -2.954206e+03, + 3.823070e+03, + 4.557586e+03, + -5.534764e+03, + -2.764660e+03, + 3.293166e+03, + 4.817570e+03, + -7.186551e+03, + -2.326088e+03, + 2.771736e+03, + 5.051273e+03, + -2.914677e+03, + -2.446875e+03, + 2.255978e+03, + 5.256005e+03, + -7.073055e+03, + -1.589272e+03, + 1.777935e+03, + 5.427988e+03, + -1.092444e+04, + -9.714652e+02, + 1.326496e+03, + 5.568739e+03, + -1.803434e+04, + 5.807577e+00, + 8.590316e+02, + 5.675268e+03, + -1.059246e+04, + -4.287520e+01, + 3.420559e+02, + 5.742487e+03, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -5.109094e+03, + 3.580031e+01, + 0, + 0, + 2.803934e+03, + -2.399769e+01, + 0, + 2.604167e-04, + -3.970877e+03, + 8.834116e+01, + 0, + 0, + -5.636564e+02, + 1.192399e+02, + 6.512142e-01, + 2.864583e-03, + -6.086357e+02, + 3.883172e+02, + 2.468692e+00, + 1.562500e-02, + -2.893914e+04, + 1.718661e+03, + 9.629309e+00, + 7.291667e-02, + -2.076572e+04, + 3.183627e+03, + 3.674586e+01, + 3.437500e-01, + -1.011023e+05, + 8.189104e+03, + 1.062582e+02, + 1.252344e+00, + -1.095898e+05, + 1.282006e+04, + 2.767597e+02, + 4.090625e+00, + -2.297269e+05, + 2.151665e+04, + 6.004328e+02, + 1.125651e+01, + -2.107325e+05, + 2.568211e+04, + 1.146269e+03, + 2.735495e+01, + -2.800842e+05, + 3.166650e+04, + 1.911957e+03, + 5.823177e+01, + -2.923688e+05, + 3.303608e+04, + 2.891607e+03, + 1.118773e+02, + -2.033237e+05, + 2.870850e+04, + 3.969933e+03, + 1.959010e+02, + -2.617431e+05, + 2.851329e+04, + 5.055149e+03, + 3.158836e+02, + -1.440848e+05, + 1.921772e+04, + 6.043374e+03, + 4.774372e+02, + -1.420361e+05, + 1.553418e+04, + 6.820003e+03, + 6.792667e+02, + -9.006131e+04, + 9.284458e+03, + 7.382916e+03, + 9.207971e+02, + -7.093812e+04, + 5.455005e+03, + 7.700927e+03, + 1.196878e+03, + -3.964068e+04, + 1.575567e+03, + 7.802084e+03, + 1.502182e+03, + -7.280366e+04, + 1.632438e+03, + 7.724594e+03, + 1.829778e+03, + 1.690897e+04, + -5.252913e+03, + 7.429101e+03, + 2.174115e+03, + -4.574865e+04, + -9.598807e+02, + 7.041073e+03, + 2.521259e+03, + 2.816103e+03, + -5.134375e+03, + 6.581128e+03, + 2.873876e+03, + -1.565202e+04, + -3.351712e+03, + 6.045391e+03, + 3.218518e+03, + -2.906298e+03, + -4.297581e+03, + 5.498150e+03, + 3.555040e+03, + -9.963636e+03, + -3.361737e+03, + 4.936026e+03, + 3.876524e+03, + -2.334266e+02, + -3.922430e+03, + 4.370841e+03, + 4.181196e+03, + -1.330539e+04, + -2.367708e+03, + 3.827009e+03, + 4.463648e+03, + 2.006252e+03, + -3.636281e+03, + 3.271498e+03, + 4.724332e+03, + -6.128696e+03, + -2.215009e+03, + 2.749376e+03, + 4.954650e+03, + -5.894247e+03, + -2.020601e+03, + 2.272207e+03, + 5.158856e+03, + -8.330230e+03, + -1.530492e+03, + 1.802163e+03, + 5.333464e+03, + -8.185462e+03, + -1.311486e+03, + 1.331275e+03, + 5.475951e+03, + -2.089177e+04, + 3.374858e+02, + 8.719856e+02, + 5.582192e+03, + -9.930639e+03, + -1.239258e+02, + 3.378337e+02, + 5.651177e+03, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -5.109094e+03, + 3.580031e+01, + 0, + 0, + 2.803934e+03, + -2.399769e+01, + 0, + 2.604167e-04, + -5.944797e+02, + 2.075013e+01, + 0, + 0, + -4.117657e+03, + 1.320064e+02, + 2.004808e-01, + 7.812500e-04, + 2.833792e+03, + 1.774131e+02, + 1.527515e+00, + 8.854167e-03, + -2.276165e+04, + 1.257648e+03, + 5.629040e+00, + 4.140625e-02, + -1.581115e+04, + 2.383463e+03, + 2.490926e+01, + 2.221354e-01, + -8.271046e+04, + 6.514143e+03, + 7.682795e+01, + 8.695312e-01, + -7.892773e+04, + 1.023660e+04, + 2.110950e+02, + 3.012500e+00, + -1.833413e+05, + 1.835639e+04, + 4.760003e+02, + 8.611719e+00, + -2.594243e+05, + 2.515475e+04, + 9.535555e+02, + 2.177422e+01, + -1.626629e+05, + 2.553274e+04, + 1.641990e+03, + 4.828620e+01, + -3.138765e+05, + 3.311180e+04, + 2.521424e+03, + 9.437135e+01, + -2.023791e+05, + 2.790945e+04, + 3.566488e+03, + 1.692937e+02, + -2.361401e+05, + 2.715103e+04, + 4.611801e+03, + 2.781815e+02, + -1.387146e+05, + 1.936281e+04, + 5.584871e+03, + 4.265570e+02, + -1.260435e+05, + 1.563798e+04, + 6.386036e+03, + 6.144526e+02, + -1.326077e+05, + 1.212714e+04, + 7.010195e+03, + 8.421141e+02, + -3.897682e+04, + 3.959405e+03, + 7.366325e+03, + 1.106369e+03, + -5.889334e+04, + 3.350540e+03, + 7.497170e+03, + 1.398210e+03, + -3.933554e+04, + 2.719489e+02, + 7.466882e+03, + 1.714702e+03, + -2.390631e+04, + -1.853368e+03, + 7.252314e+03, + 2.047736e+03, + -2.178522e+04, + -2.640984e+03, + 6.907977e+03, + 2.389698e+03, + -6.125885e+03, + -4.003762e+03, + 6.464812e+03, + 2.734296e+03, + -1.126017e+04, + -3.477681e+03, + 5.972548e+03, + 3.074501e+03, + -1.131751e+04, + -3.475106e+03, + 5.455067e+03, + 3.407229e+03, + -5.340261e+02, + -4.136362e+03, + 4.898586e+03, + 3.727215e+03, + -8.792165e+03, + -2.990082e+03, + 4.352596e+03, + 4.028768e+03, + -4.742079e+03, + -3.169825e+03, + 3.815352e+03, + 4.311590e+03, + -4.254148e+03, + -2.851538e+03, + 3.279048e+03, + 4.570477e+03, + -4.354544e+03, + -2.480152e+03, + 2.766874e+03, + 4.803165e+03, + -7.432540e+03, + -1.878460e+03, + 2.281570e+03, + 5.007989e+03, + -6.205415e+03, + -1.788706e+03, + 1.802434e+03, + 5.183474e+03, + -1.145931e+04, + -9.481364e+02, + 1.336118e+03, + 5.325439e+03, + -1.587470e+04, + -2.321854e+02, + 8.590106e+02, + 5.432634e+03, + -1.049374e+04, + -6.518902e+01, + 3.575002e+02, + 5.499596e+03, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -8.531048e+02, + 1.695939e+01, + 0, + 0, + 6.095111e+02, + 9.076932e+00, + 1.122616e-01, + 5.208333e-04, + -6.857359e+02, + 1.069152e+02, + 3.785397e-01, + 2.343750e-03, + -6.528912e+03, + 5.478130e+02, + 2.211863e+00, + 1.484375e-02, + -2.807616e+04, + 1.924054e+03, + 1.181174e+01, + 9.531250e-02, + -4.135252e+04, + 3.975660e+03, + 4.662733e+01, + 4.854167e-01, + -6.513897e+04, + 7.571929e+03, + 1.340027e+02, + 1.815104e+00, + -1.130550e+05, + 1.330006e+04, + 3.248641e+02, + 5.579167e+00, + -2.128461e+05, + 2.104638e+04, + 6.894764e+02, + 1.487135e+01, + -1.938231e+05, + 2.394323e+04, + 1.270357e+03, + 3.495443e+01, + -2.250683e+05, + 2.733125e+04, + 2.036520e+03, + 7.189036e+01, + -1.878061e+05, + 2.633878e+04, + 2.957468e+03, + 1.331286e+02, + -2.270545e+05, + 2.650296e+04, + 3.950502e+03, + 2.252544e+02, + -1.452222e+05, + 1.974198e+04, + 4.908788e+03, + 3.544242e+02, + -9.739988e+04, + 1.480522e+04, + 5.714679e+03, + 5.215013e+02, + -1.391311e+05, + 1.365247e+04, + 6.380017e+03, + 7.267320e+02, + -4.788766e+04, + 5.382256e+03, + 6.821131e+03, + 9.697984e+02, + -5.285286e+04, + 3.809721e+03, + 7.022384e+03, + 1.241959e+03, + -3.337682e+04, + 9.042881e+02, + 7.062654e+03, + 1.539764e+03, + -4.007437e+04, + -2.699339e+01, + 6.941219e+03, + 1.856429e+03, + -6.051283e+03, + -3.209377e+03, + 6.660347e+03, + 2.185851e+03, + -2.435908e+04, + -2.124954e+03, + 6.283149e+03, + 2.518370e+03, + 2.551445e+03, + -4.363071e+03, + 5.832923e+03, + 2.851286e+03, + -1.489483e+04, + -2.673771e+03, + 5.352245e+03, + 3.175629e+03, + -9.389643e+03, + -3.278006e+03, + 4.853753e+03, + 3.491487e+03, + 3.161923e+03, + -4.031601e+03, + 4.306797e+03, + 3.791312e+03, + -1.194090e+04, + -2.196499e+03, + 3.796276e+03, + 4.069944e+03, + -2.953957e+03, + -3.004063e+03, + 3.287319e+03, + 4.329823e+03, + -6.149918e+03, + -2.304854e+03, + 2.774682e+03, + 4.562834e+03, + -3.373794e+03, + -2.296007e+03, + 2.282599e+03, + 4.768486e+03, + -1.034299e+04, + -1.265867e+03, + 1.820241e+03, + 4.943532e+03, + -1.110375e+04, + -1.092537e+03, + 1.348590e+03, + 5.088307e+03, + -1.629907e+04, + -2.127533e+02, + 8.538122e+02, + 5.195697e+03, + -1.089887e+04, + -2.417175e+00, + 3.439132e+02, + 5.261939e+03, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -9.508513e+01, + 4.753078e+00, + 0, + 0, + -7.542336e+02, + 4.194538e+01, + 5.820865e-02, + 2.604167e-04, + -1.284200e+03, + 1.590937e+02, + 6.480504e-01, + 3.906250e-03, + -7.617453e+03, + 6.908946e+02, + 3.653193e+00, + 2.812500e-02, + -2.285529e+04, + 2.070239e+03, + 1.729678e+01, + 1.656250e-01, + -4.265825e+04, + 4.564970e+03, + 6.200908e+01, + 7.559896e-01, + -8.135927e+04, + 8.796250e+03, + 1.745256e+02, + 2.714323e+00, + -1.186992e+05, + 1.383851e+04, + 4.094748e+02, + 8.109375e+00, + -1.729788e+05, + 1.934059e+04, + 8.160818e+02, + 2.061328e+01, + -1.630315e+05, + 2.150283e+04, + 1.411697e+03, + 4.571406e+01, + -1.624940e+05, + 2.289915e+04, + 2.160330e+03, + 8.952969e+01, + -1.678006e+05, + 2.296466e+04, + 3.025299e+03, + 1.588792e+02, + -1.625820e+05, + 2.081553e+04, + 3.926482e+03, + 2.601164e+02, + -1.026208e+05, + 1.529805e+04, + 4.748836e+03, + 3.972128e+02, + -9.110283e+04, + 1.222390e+04, + 5.429607e+03, + 5.703201e+02, + -7.839298e+04, + 8.798951e+03, + 5.957019e+03, + 7.792841e+02, + -4.969894e+04, + 4.718760e+03, + 6.285543e+03, + 1.021049e+03, + -3.394798e+04, + 2.050471e+03, + 6.418885e+03, + 1.289738e+03, + -2.926526e+04, + 4.598630e+02, + 6.397153e+03, + 1.579698e+03, + -1.911569e+04, + -1.195949e+03, + 6.238186e+03, + 1.885275e+03, + -2.090631e+04, + -1.729267e+03, + 5.964421e+03, + 2.199667e+03, + -1.444247e+03, + -3.487510e+03, + 5.588336e+03, + 2.516915e+03, + -1.151447e+04, + -2.536741e+03, + 5.168912e+03, + 2.829230e+03, + -1.111331e+04, + -2.723565e+03, + 4.725716e+03, + 3.135111e+03, + 1.710810e+03, + -3.676459e+03, + 4.229067e+03, + 3.428469e+03, + -1.164580e+04, + -2.096150e+03, + 3.746819e+03, + 3.702957e+03, + -1.692949e+03, + -2.995892e+03, + 3.257140e+03, + 3.959883e+03, + -8.118107e+03, + -2.006853e+03, + 2.767986e+03, + 4.191197e+03, + -4.383850e+03, + -2.223397e+03, + 2.285550e+03, + 4.397215e+03, + -9.697211e+03, + -1.380502e+03, + 1.813706e+03, + 4.572417e+03, + -7.068293e+03, + -1.463914e+03, + 1.337003e+03, + 4.716157e+03, + -2.122598e+04, + 3.866204e+02, + 8.784811e+02, + 4.822514e+03, + -1.022737e+04, + -1.101296e+02, + 3.443440e+02, + 4.892292e+03, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -9.856739e+02, + 1.195308e+01, + 0, + 0, + 0, + 0, + 0, + 2.604167e-04, + -1.720472e+02, + 1.507814e+01, + 0, + 2.604167e-04, + -5.197869e+03, + 2.521753e+02, + 2.669468e-01, + 1.822917e-03, + -1.789035e+03, + 4.897775e+02, + 4.126558e+00, + 3.411458e-02, + -2.356297e+04, + 1.990572e+03, + 1.685742e+01, + 1.843750e-01, + -3.079983e+04, + 3.806333e+03, + 6.218522e+01, + 8.572917e-01, + -5.867444e+04, + 7.219324e+03, + 1.679956e+02, + 2.980208e+00, + -9.193536e+04, + 1.140888e+04, + 3.838865e+02, + 8.630729e+00, + -1.093232e+05, + 1.496515e+04, + 7.495575e+02, + 2.142161e+01, + -1.454474e+05, + 1.835651e+04, + 1.277678e+03, + 4.640313e+01, + -1.060384e+05, + 1.738770e+04, + 1.939819e+03, + 8.983255e+01, + -1.317236e+05, + 1.829440e+04, + 2.673577e+03, + 1.569544e+02, + -9.918836e+04, + 1.511239e+04, + 3.428617e+03, + 2.536474e+02, + -6.597280e+04, + 1.172004e+04, + 4.108547e+03, + 3.822750e+02, + -8.933787e+04, + 1.089011e+04, + 4.698809e+03, + 5.437974e+02, + -3.303439e+04, + 5.345711e+03, + 5.140684e+03, + 7.388943e+02, + -4.639993e+04, + 4.646300e+03, + 5.414926e+03, + 9.618318e+02, + -2.854970e+04, + 1.826186e+03, + 5.551188e+03, + 1.210728e+03, + -2.483031e+04, + 4.061465e+02, + 5.528659e+03, + 1.478848e+03, + -1.065058e+04, + -1.391460e+03, + 5.374176e+03, + 1.760276e+03, + -7.673933e+03, + -1.880549e+03, + 5.126809e+03, + 2.047961e+03, + -1.467883e+04, + -1.593262e+03, + 4.830964e+03, + 2.337684e+03, + -7.526978e+03, + -2.499826e+03, + 4.467952e+03, + 2.625599e+03, + -4.169590e+03, + -2.726037e+03, + 4.046171e+03, + 2.904100e+03, + -4.507799e+03, + -2.496923e+03, + 3.611144e+03, + 3.168575e+03, + -6.215844e+03, + -2.180448e+03, + 3.176433e+03, + 3.416260e+03, + -9.828176e+03, + -1.778987e+03, + 2.732565e+03, + 3.644142e+03, + -2.786098e+03, + -2.382096e+03, + 2.253500e+03, + 3.847887e+03, + -6.796697e+03, + -1.565581e+03, + 1.789222e+03, + 4.020204e+03, + -1.447871e+04, + -6.111844e+02, + 1.348581e+03, + 4.162343e+03, + -1.363735e+04, + -5.238507e+02, + 8.553840e+02, + 4.271182e+03, + -9.848364e+03, + -1.203178e+02, + 3.610664e+02, + 4.337093e+03, +}; + +double solarDataset400[] = +{ + 1.117129e+12, + -1.629427e+07, + -4.340837e+02, + 2.288813e-02, + -3.507469e+09, + 6.348417e+05, + 0, + 1.628578e-02, + 2.505700e+07, + -1.230995e+04, + 0, + 1.936688e-02, + -1.719863e+07, + 2.178956e+04, + 0, + 1.892672e-02, + 1.438988e+06, + -1.616402e+03, + 6.806146e+00, + 2.332828e-02, + 1.696702e+05, + 1.495455e+03, + 8.179956e+00, + 3.037078e-02, + -1.912560e+06, + 7.286691e+03, + 1.412411e+01, + 4.753688e-02, + 1.068454e+06, + -3.820033e+03, + 1.852974e+01, + 9.331313e-02, + -4.480441e+05, + 7.070752e+03, + 2.347567e+01, + 1.412902e-01, + -2.844742e+05, + 7.763926e+03, + 5.756619e+01, + 3.045881e-01, + 3.820870e+05, + 5.835991e+03, + 1.114800e+02, + 7.139334e-01, + -5.903447e+05, + 2.442660e+04, + 2.153938e+02, + 1.610972e+00, + -2.022151e+05, + 3.048178e+04, + 4.667749e+02, + 4.039754e+00, + -7.774876e+05, + 5.556041e+04, + 9.199868e+02, + 9.698843e+00, + -7.414445e+05, + 7.551752e+04, + 1.760381e+03, + 2.266144e+01, + -1.531201e+06, + 1.128349e+05, + 3.140037e+03, + 4.978959e+01, + -1.554180e+06, + 1.298094e+05, + 5.235208e+03, + 1.033051e+02, + -1.695156e+06, + 1.421715e+05, + 7.966732e+03, + 1.984392e+02, + -1.678161e+06, + 1.399827e+05, + 1.119495e+04, + 3.535841e+02, + -1.463039e+06, + 1.225635e+05, + 1.457341e+04, + 5.863313e+02, + -1.215237e+06, + 9.771091e+04, + 1.769675e+04, + 9.092475e+02, + -8.636409e+05, + 6.734484e+04, + 2.022204e+04, + 1.327606e+03, + -6.651680e+05, + 4.343026e+04, + 2.196126e+04, + 1.837785e+03, + -3.857503e+05, + 1.929567e+04, + 2.286749e+04, + 2.430659e+03, + -3.671416e+05, + 8.823173e+03, + 2.302563e+04, + 3.090578e+03, + -1.503106e+05, + -7.693949e+03, + 2.251190e+04, + 3.802935e+03, + -1.434123e+05, + -1.080121e+04, + 2.148437e+04, + 4.545612e+03, + -7.621756e+04, + -1.576213e+04, + 2.013222e+04, + 5.304807e+03, + -7.041412e+04, + -1.599827e+04, + 1.854944e+04, + 6.063558e+03, + 1.247797e+04, + -1.940579e+04, + 1.683252e+04, + 6.809340e+03, + -4.230704e+04, + -1.372257e+04, + 1.516152e+04, + 7.528765e+03, + -1.341378e+04, + -1.442508e+04, + 1.354734e+04, + 8.221723e+03, + 1.305159e+04, + -1.404328e+04, + 1.196086e+04, + 8.877132e+03, + -3.228613e+04, + -8.830029e+03, + 1.054343e+04, + 9.490735e+03, + 6.334330e+03, + -1.081216e+04, + 9.192167e+03, + 1.006662e+04, + -1.320077e+04, + -7.485103e+03, + 7.933060e+03, + 1.059296e+04, + 9.474767e+03, + -8.180859e+03, + 6.789131e+03, + 1.107455e+04, + -1.394154e+04, + -4.679057e+03, + 5.796750e+03, + 1.150659e+04, + -3.468549e+03, + -5.125712e+03, + 4.894953e+03, + 1.189805e+04, + -1.168377e+04, + -3.552944e+03, + 4.047968e+03, + 1.224160e+04, + -3.595156e+03, + -3.828358e+03, + 3.246376e+03, + 1.253896e+04, + -9.636883e+03, + -2.443091e+03, + 2.519269e+03, + 1.278460e+04, + -1.695233e+04, + -1.289283e+03, + 1.854717e+03, + 1.298280e+04, + -1.903977e+04, + -6.528410e+02, + 1.170083e+03, + 1.313098e+04, + -1.350669e+04, + -1.652916e+02, + 4.953127e+02, + 1.322139e+04, + 1.427101e+11, + -1.957428e+06, + -5.973210e+01, + 1.232438e-02, + -2.505335e+09, + 4.534583e+05, + 0, + 1.144406e-02, + 2.505700e+07, + -1.230995e+04, + 0, + 1.364484e-02, + -1.530567e+07, + 1.841817e+04, + 0, + 1.320469e-02, + 1.680202e+06, + -2.365652e+03, + 4.815713e+00, + 1.672594e-02, + -1.426389e+06, + 3.973627e+03, + 5.413944e+00, + 2.112750e-02, + 6.318979e+05, + -1.710393e+03, + 7.350863e+00, + 3.389203e-02, + -1.473582e+05, + 2.336923e+03, + 8.947389e+00, + 4.841719e-02, + 6.750351e+04, + 2.142457e+03, + 1.881145e+01, + 9.067219e-02, + -6.137863e+04, + 5.312427e+03, + 3.767319e+01, + 1.945491e-01, + -2.368579e+05, + 1.056334e+04, + 8.328836e+01, + 4.802105e-01, + -3.502458e+04, + 1.450254e+04, + 1.806983e+02, + 1.255326e+00, + -3.536828e+05, + 2.941026e+04, + 3.742713e+02, + 3.159882e+00, + -5.525650e+05, + 4.829087e+04, + 7.804581e+02, + 7.921052e+00, + -1.131425e+06, + 7.774385e+04, + 1.543754e+03, + 1.911026e+01, + -9.674282e+05, + 9.542627e+04, + 2.833425e+03, + 4.364369e+01, + -1.726176e+06, + 1.303805e+05, + 4.757123e+03, + 9.174177e+01, + -1.560050e+06, + 1.354377e+05, + 7.402393e+03, + 1.797757e+02, + -1.659007e+06, + 1.378766e+05, + 1.051897e+04, + 3.248278e+02, + -1.371101e+06, + 1.198850e+05, + 1.384088e+04, + 5.450543e+02, + -1.299875e+06, + 1.013112e+05, + 1.696555e+04, + 8.532262e+02, + -7.373351e+05, + 6.441420e+04, + 1.952739e+04, + 1.256523e+03, + -6.447884e+05, + 4.627416e+04, + 2.134307e+04, + 1.750144e+03, + -5.825478e+05, + 2.880250e+04, + 2.244015e+04, + 2.329148e+03, + -1.914632e+05, + 1.757698e+03, + 2.265971e+04, + 2.980030e+03, + -2.801179e+05, + 8.443567e+01, + 2.221525e+04, + 3.679473e+03, + -9.016021e+04, + -1.353444e+04, + 2.127045e+04, + 4.416034e+03, + -5.848055e+04, + -1.550950e+04, + 1.993050e+04, + 5.166405e+03, + -8.007881e+04, + -1.426653e+04, + 1.844888e+04, + 5.918714e+03, + 4.462178e+03, + -1.832929e+04, + 1.682629e+04, + 6.662612e+03, + -8.309437e+04, + -1.148821e+04, + 1.520348e+04, + 7.383206e+03, + 4.995264e+04, + -1.893244e+04, + 1.352107e+04, + 8.078812e+03, + -3.495005e+04, + -9.918410e+03, + 1.197260e+04, + 8.729566e+03, + -2.254439e+03, + -1.140785e+04, + 1.057610e+04, + 9.348295e+03, + -1.194317e+04, + -9.037030e+03, + 9.229099e+03, + 9.923259e+03, + 4.037681e+03, + -8.955305e+03, + 7.980764e+03, + 1.045434e+04, + -1.351607e+04, + -6.061553e+03, + 6.864874e+03, + 1.093757e+04, + 7.338831e+03, + -6.963548e+03, + 5.837108e+03, + 1.137736e+04, + -2.292706e+04, + -3.086934e+03, + 4.940689e+03, + 1.176787e+04, + 4.648356e+03, + -5.474011e+03, + 4.063248e+03, + 1.211814e+04, + -1.227871e+04, + -2.657876e+03, + 3.270644e+03, + 1.241280e+04, + -8.698683e+03, + -2.708755e+03, + 2.554663e+03, + 1.266362e+04, + -1.098022e+04, + -1.900095e+03, + 1.865115e+03, + 1.286352e+04, + -2.959044e+04, + 5.140675e+02, + 1.222700e+03, + 1.301222e+04, + -1.386763e+04, + -1.800631e+02, + 4.732027e+02, + 1.310906e+04, + -2.250626e+10, + 2.821518e+05, + 2.735822e+01, + 3.081094e-03, + 1.015964e+08, + -6.264336e+04, + 1.702289e+01, + 3.521250e-03, + -1.603967e+07, + -1.803368e+03, + 6.342924e+00, + 4.841719e-03, + 2.035804e+07, + -1.947652e+04, + 0, + 6.162188e-03, + -6.628634e+06, + 1.134906e+04, + 0, + 3.521250e-03, + 5.620458e+05, + -1.364648e+03, + 1.880042e+00, + 8.362969e-03, + -3.417573e+05, + 2.062172e+03, + 1.747725e+00, + 1.012359e-02, + -7.534766e+03, + 8.619116e+02, + 5.863022e+00, + 2.024719e-02, + 8.599540e+04, + 9.720702e+02, + 1.069301e+01, + 4.445578e-02, + -1.156890e+05, + 3.868880e+03, + 2.157506e+01, + 1.025564e-01, + 7.657473e+04, + 4.835159e+03, + 5.014776e+01, + 2.759780e-01, + -2.781167e+05, + 1.440504e+04, + 1.128026e+02, + 7.337405e-01, + -2.634244e+05, + 2.323850e+04, + 2.708874e+02, + 2.091182e+00, + -5.456420e+05, + 4.153386e+04, + 5.949804e+02, + 5.660850e+00, + -7.962351e+05, + 6.431258e+04, + 1.232698e+03, + 1.450623e+01, + -1.197053e+06, + 9.234505e+04, + 2.349153e+03, + 3.449857e+01, + -1.230918e+06, + 1.114998e+05, + 4.089853e+03, + 7.566110e+01, + -1.644144e+06, + 1.336157e+05, + 6.498004e+03, + 1.519362e+02, + -1.555109e+06, + 1.322636e+05, + 9.493547e+03, + 2.818699e+02, + -1.357583e+06, + 1.188301e+05, + 1.271440e+04, + 4.827603e+02, + -1.116449e+06, + 9.761383e+04, + 1.581326e+04, + 7.684710e+02, + -9.139236e+05, + 7.403173e+04, + 1.847437e+04, + 1.146857e+03, + -6.990817e+05, + 4.906624e+04, + 2.044711e+04, + 1.618387e+03, + -3.467195e+05, + 2.202997e+04, + 2.157873e+04, + 2.174869e+03, + -4.305811e+05, + 1.548297e+04, + 2.198860e+04, + 2.801117e+03, + -1.289765e+05, + -5.992939e+03, + 2.170495e+04, + 3.485799e+03, + -1.198868e+05, + -8.943475e+03, + 2.086422e+04, + 4.204074e+03, + -1.470410e+05, + -1.001341e+04, + 1.974012e+04, + 4.944323e+03, + 1.334018e+03, + -1.882254e+04, + 1.828199e+04, + 5.692294e+03, + -3.345755e+04, + -1.481065e+04, + 1.670764e+04, + 6.427177e+03, + -4.222028e+04, + -1.336937e+04, + 1.517112e+04, + 7.146100e+03, + -1.048132e+04, + -1.430800e+04, + 1.359152e+04, + 7.840347e+03, + -2.882922e+03, + -1.287178e+04, + 1.204023e+04, + 8.498728e+03, + -1.162564e+04, + -1.046185e+04, + 1.060814e+04, + 9.117565e+03, + 8.458319e+02, + -9.934087e+03, + 9.276245e+03, + 9.695744e+03, + -1.175585e+04, + -7.451056e+03, + 8.062850e+03, + 1.022931e+04, + 3.308565e+02, + -7.420070e+03, + 6.941772e+03, + 1.071991e+04, + -1.318812e+04, + -5.104680e+03, + 5.924005e+03, + 1.116308e+04, + 2.440679e+03, + -5.803752e+03, + 4.972255e+03, + 1.156184e+04, + -1.312707e+04, + -3.300552e+03, + 4.125489e+03, + 1.190999e+04, + -6.642305e+03, + -3.582143e+03, + 3.336437e+03, + 1.221449e+04, + -7.838423e+03, + -2.777393e+03, + 2.585322e+03, + 1.246768e+04, + -1.594267e+04, + -1.412070e+03, + 1.904021e+03, + 1.267038e+04, + -2.650924e+04, + 5.450457e+01, + 1.222878e+03, + 1.282292e+04, + -1.407506e+04, + -1.421113e+02, + 4.719557e+02, + 1.291827e+04, + 0, + 0, + 0, + 0, + -1.002134e+09, + 1.813833e+05, + 0, + 0, + 2.505700e+07, + -1.230995e+04, + 0, + 8.803125e-04, + -3.540684e+06, + 4.422303e+03, + 0, + 4.401563e-04, + -1.077551e+06, + 1.071832e+03, + 1.320161e+00, + 1.320469e-03, + 4.561374e+05, + -1.073274e+03, + 0, + 2.640938e-03, + -1.241178e+05, + 7.309221e+02, + 0, + 1.760625e-03, + -6.807449e+03, + 4.155531e+02, + 1.415729e+00, + 3.961406e-03, + -5.892697e+04, + 1.065543e+03, + 3.663583e+00, + 1.144406e-02, + 7.462404e+04, + 7.963727e+02, + 9.161593e+00, + 3.697313e-02, + -1.449805e+05, + 4.808397e+03, + 2.148746e+01, + 1.047572e-01, + -7.483031e+04, + 7.438418e+03, + 6.219855e+01, + 3.569667e-01, + -1.551526e+05, + 1.519258e+04, + 1.534935e+02, + 1.106993e+00, + -3.869766e+05, + 3.031932e+04, + 3.687213e+02, + 3.258917e+00, + -7.418804e+05, + 5.270793e+04, + 8.372727e+02, + 9.106833e+00, + -8.892984e+05, + 7.452028e+04, + 1.720571e+03, + 2.349510e+01, + -1.173248e+06, + 9.980147e+04, + 3.160816e+03, + 5.468281e+01, + -1.451666e+06, + 1.199829e+05, + 5.273780e+03, + 1.157149e+02, + -1.406590e+06, + 1.229404e+05, + 7.982304e+03, + 2.235989e+02, + -1.256174e+06, + 1.143387e+05, + 1.101269e+04, + 3.956375e+02, + -1.047141e+06, + 9.726801e+04, + 1.405257e+04, + 6.469126e+02, + -9.893584e+05, + 7.986424e+04, + 1.679688e+04, + 9.875755e+02, + -6.207149e+05, + 4.968663e+04, + 1.891915e+04, + 1.421301e+03, + -4.129199e+05, + 2.877273e+04, + 2.024445e+04, + 1.939607e+03, + -3.571950e+05, + 1.606478e+04, + 2.087749e+04, + 2.531703e+03, + -1.930391e+05, + 8.010621e+02, + 2.084215e+04, + 3.184647e+03, + -1.137334e+05, + -6.987208e+03, + 2.024103e+04, + 3.879152e+03, + -9.850133e+04, + -9.863565e+03, + 1.928338e+04, + 4.599642e+03, + -9.788409e+04, + -1.144184e+04, + 1.805974e+04, + 5.332882e+03, + 1.245732e+04, + -1.762258e+04, + 1.658022e+04, + 6.064098e+03, + -5.720841e+04, + -1.160080e+04, + 1.506961e+04, + 6.775777e+03, + 1.067936e+04, + -1.514209e+04, + 1.355611e+04, + 7.467565e+03, + -2.175393e+04, + -1.083518e+04, + 1.208639e+04, + 8.124791e+03, + -1.089978e+04, + -1.053521e+04, + 1.070786e+04, + 8.749151e+03, + 1.343549e+03, + -9.970273e+03, + 9.374791e+03, + 9.333012e+03, + -1.328865e+04, + -7.346112e+03, + 8.162598e+03, + 9.872624e+03, + -1.034417e+03, + -7.407299e+03, + 7.035667e+03, + 1.036975e+04, + -5.754438e+03, + -5.779644e+03, + 6.000216e+03, + 1.081900e+04, + -9.018099e+03, + -4.670102e+03, + 5.068244e+03, + 1.122259e+04, + -9.313739e+02, + -4.706751e+03, + 4.193278e+03, + 1.157960e+04, + -1.674258e+04, + -2.394722e+03, + 3.415508e+03, + 1.188682e+04, + -4.162404e+03, + -3.416222e+03, + 2.647810e+03, + 1.214910e+04, + -1.641018e+04, + -1.375684e+03, + 1.940197e+03, + 1.235489e+04, + -2.597781e+04, + -4.072350e+01, + 1.253613e+03, + 1.251075e+04, + -1.550160e+04, + -5.658062e+01, + 4.993210e+02, + 1.260869e+04, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -7.571821e+05, + 1.194273e+03, + 0, + 0, + 2.280687e+05, + -5.366371e+02, + 0, + 4.401563e-04, + -3.880904e+04, + 2.686421e+02, + 0, + 0, + -1.184002e+05, + 6.513468e+02, + 6.182344e-01, + 8.803125e-04, + 6.120952e+04, + -2.568675e+02, + 1.398755e+00, + 5.281875e-03, + -2.456577e+04, + 8.465396e+02, + 2.046431e+00, + 1.012359e-02, + -5.560163e+04, + 2.207308e+03, + 8.347310e+00, + 3.565266e-02, + -6.365941e+04, + 4.514850e+03, + 2.810550e+01, + 1.448114e-01, + -1.150207e+05, + 9.826355e+03, + 8.095553e+01, + 5.281875e-01, + -2.675326e+05, + 2.088122e+04, + 2.172854e+02, + 1.764146e+00, + -4.855776e+05, + 3.851471e+04, + 5.397100e+02, + 5.445173e+00, + -8.721331e+05, + 6.367194e+04, + 1.205217e+03, + 1.524745e+01, + -9.184539e+05, + 8.282197e+04, + 2.383759e+03, + 3.838735e+01, + -1.307361e+06, + 1.073647e+05, + 4.170076e+03, + 8.581991e+01, + -1.216270e+06, + 1.119986e+05, + 6.587459e+03, + 1.736267e+02, + -1.276352e+06, + 1.124177e+05, + 9.409381e+03, + 3.185987e+02, + -9.788697e+05, + 9.416016e+04, + 1.235028e+04, + 5.374427e+02, + -7.995613e+05, + 7.618671e+04, + 1.505625e+04, + 8.403357e+02, + -7.460602e+05, + 5.950676e+04, + 1.732816e+04, + 1.232937e+03, + -4.349269e+05, + 3.288320e+04, + 1.890991e+04, + 1.714067e+03, + -2.903175e+05, + 1.679987e+04, + 1.972389e+04, + 2.270884e+03, + -2.341700e+05, + 6.717412e+03, + 1.992757e+04, + 2.890724e+03, + -1.591140e+05, + -2.541145e+03, + 1.958483e+04, + 3.559598e+03, + -9.377026e+04, + -9.049582e+03, + 1.877055e+04, + 4.259945e+03, + -3.112181e+04, + -1.324477e+04, + 1.763230e+04, + 4.974656e+03, + -6.713941e+04, + -1.097160e+04, + 1.635475e+04, + 5.689683e+03, + -1.171086e+04, + -1.418498e+04, + 1.495911e+04, + 6.397430e+03, + -1.203079e+04, + -1.259366e+04, + 1.351290e+04, + 7.082987e+03, + -2.735949e+04, + -1.036650e+04, + 1.212531e+04, + 7.741638e+03, + 8.398267e+03, + -1.176714e+04, + 1.074781e+04, + 8.368608e+03, + -2.360952e+04, + -7.700526e+03, + 9.466757e+03, + 8.954412e+03, + 3.871276e+03, + -9.056076e+03, + 8.250344e+03, + 9.502464e+03, + -6.443405e+03, + -6.671943e+03, + 7.119198e+03, + 1.000279e+04, + -7.871410e+03, + -5.649041e+03, + 6.108047e+03, + 1.045952e+04, + -8.718557e+03, + -4.829450e+03, + 5.161480e+03, + 1.087083e+04, + -1.292495e+03, + -4.766287e+03, + 4.267365e+03, + 1.123419e+04, + -9.861345e+03, + -3.065607e+03, + 3.472933e+03, + 1.154681e+04, + -1.727524e+04, + -2.001187e+03, + 2.739962e+03, + 1.181333e+04, + -9.339880e+03, + -2.491882e+03, + 1.972342e+03, + 1.202929e+04, + -2.480383e+04, + -8.960043e+01, + 1.262307e+03, + 1.218417e+04, + -1.550976e+04, + -1.052398e+02, + 5.321763e+02, + 1.228360e+04, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -2.280687e+05, + 5.366371e+02, + 0, + 0, + 0, + 0, + 0, + 4.401563e-04, + 0, + 0, + 0, + 4.401563e-04, + -1.733338e+04, + 2.221243e+02, + 0, + 4.401563e-04, + -1.275858e+04, + 4.042146e+02, + 9.341664e-01, + 2.640938e-03, + 1.648620e+03, + 8.526882e+02, + 3.875433e+00, + 1.452516e-02, + -1.019729e+05, + 3.723777e+03, + 1.376684e+01, + 6.470297e-02, + -5.222279e+04, + 6.376447e+03, + 5.040666e+01, + 3.006267e-01, + -1.972467e+05, + 1.575596e+04, + 1.432681e+02, + 1.097310e+00, + -4.522255e+05, + 3.224516e+04, + 3.877865e+02, + 3.683668e+00, + -6.472011e+05, + 5.229836e+04, + 9.287428e+02, + 1.113463e+01, + -9.846451e+05, + 7.751316e+04, + 1.928807e+03, + 2.951336e+01, + -1.120147e+06, + 9.516690e+04, + 3.526207e+03, + 6.930084e+01, + -1.060774e+06, + 1.024968e+05, + 5.698072e+03, + 1.445909e+02, + -1.080278e+06, + 1.054362e+05, + 8.329768e+03, + 2.717027e+02, + -1.167184e+06, + 1.012812e+05, + 1.122358e+04, + 4.681035e+02, + -8.134116e+05, + 7.589663e+04, + 1.397221e+04, + 7.479364e+02, + -5.142486e+05, + 5.263146e+04, + 1.620649e+04, + 1.114264e+03, + -5.840860e+05, + 4.293903e+04, + 1.790499e+04, + 1.565472e+03, + -2.806635e+05, + 1.804160e+04, + 1.892835e+04, + 2.098314e+03, + -1.902676e+05, + 6.983141e+03, + 1.923705e+04, + 2.694941e+03, + -2.082007e+05, + 2.150441e+03, + 1.906114e+04, + 3.342563e+03, + -5.374742e+04, + -9.636906e+03, + 1.839341e+04, + 4.027727e+03, + -9.427047e+04, + -8.455175e+03, + 1.739289e+04, + 4.729183e+03, + -1.263315e+04, + -1.383242e+04, + 1.618343e+04, + 5.437924e+03, + -5.405956e+04, + -1.051530e+04, + 1.486152e+04, + 6.137134e+03, + 4.123323e+03, + -1.373276e+04, + 1.347434e+04, + 6.821774e+03, + -1.966848e+04, + -1.038438e+04, + 1.209746e+04, + 7.477629e+03, + -1.751199e+04, + -9.652355e+03, + 1.078686e+04, + 8.104279e+03, + 3.295847e+03, + -1.002127e+04, + 9.489445e+03, + 8.694407e+03, + -1.938731e+03, + -7.963785e+03, + 8.293167e+03, + 9.241338e+03, + -2.615570e+04, + -5.085764e+03, + 7.230361e+03, + 9.747489e+03, + 1.004382e+04, + -7.737635e+03, + 6.157052e+03, + 1.021296e+04, + -1.151870e+04, + -4.264058e+03, + 5.190961e+03, + 1.062368e+04, + -5.395239e+03, + -4.360268e+03, + 4.334166e+03, + 1.099135e+04, + -1.187237e+04, + -3.068215e+03, + 3.525120e+03, + 1.130985e+04, + -8.828785e+03, + -2.951184e+03, + 2.748294e+03, + 1.157956e+04, + -1.425606e+04, + -1.790576e+03, + 2.012464e+03, + 1.179469e+04, + -3.104649e+04, + 4.096561e+02, + 1.304758e+03, + 1.195543e+04, + -1.414188e+04, + -2.345618e+02, + 4.929940e+02, + 1.205795e+04, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -2.284378e+03, + 4.000235e+01, + 0, + 0, + -1.596943e+04, + 2.327633e+02, + 2.033762e-01, + 4.401563e-04, + 1.547436e+04, + 9.728437e+01, + 1.332585e+00, + 4.841719e-03, + -4.391863e+04, + 1.611874e+03, + 3.954053e+00, + 1.848656e-02, + -1.774277e+04, + 3.338879e+03, + 1.984506e+01, + 1.069580e-01, + -2.636354e+05, + 1.231744e+04, + 7.035266e+01, + 4.762491e-01, + -1.523250e+05, + 1.881496e+04, + 2.323194e+02, + 2.013715e+00, + -5.937322e+05, + 4.171430e+04, + 5.875574e+02, + 6.570653e+00, + -7.266381e+05, + 6.055013e+04, + 1.349311e+03, + 1.917673e+01, + -8.860678e+05, + 8.010778e+04, + 2.622440e+03, + 4.815926e+01, + -1.086569e+06, + 9.639717e+04, + 4.493415e+03, + 1.062836e+02, + -9.745768e+05, + 9.666372e+04, + 6.884892e+03, + 2.100144e+02, + -1.047773e+06, + 9.496512e+04, + 9.556296e+03, + 3.754075e+02, + -6.732150e+05, + 7.257512e+04, + 1.219959e+04, + 6.172408e+02, + -6.412646e+05, + 6.073496e+04, + 1.451547e+04, + 9.412046e+02, + -4.770761e+05, + 4.172546e+04, + 1.637709e+04, + 1.351410e+03, + -3.658491e+05, + 2.573258e+04, + 1.759304e+04, + 1.842114e+03, + -1.459050e+05, + 7.797252e+03, + 1.813296e+04, + 2.402150e+03, + -2.270501e+05, + 6.345087e+03, + 1.816235e+04, + 3.015249e+03, + -5.163556e+04, + -7.248933e+03, + 1.772472e+04, + 3.672398e+03, + -9.784000e+04, + -6.113061e+03, + 1.692069e+04, + 4.351479e+03, + -4.721276e+04, + -1.058933e+04, + 1.588911e+04, + 5.044252e+03, + -2.325812e+04, + -1.187676e+04, + 1.464898e+04, + 5.733633e+03, + -7.615191e+03, + -1.186838e+04, + 1.334468e+04, + 6.408326e+03, + -2.309797e+04, + -9.681961e+03, + 1.206642e+04, + 7.060851e+03, + -1.619285e+04, + -9.482512e+03, + 1.080185e+04, + 7.687342e+03, + 2.078178e+03, + -9.714292e+03, + 9.537486e+03, + 8.279170e+03, + -1.618945e+04, + -6.927762e+03, + 8.365159e+03, + 8.829938e+03, + 7.335199e+02, + -7.533587e+03, + 7.255793e+03, + 9.341236e+03, + -1.450326e+03, + -6.043556e+03, + 6.228118e+03, + 9.805634e+03, + -1.816953e+04, + -3.758371e+03, + 5.326053e+03, + 1.022606e+04, + -1.744599e+03, + -5.007206e+03, + 4.429541e+03, + 1.060407e+04, + -1.013527e+04, + -3.265815e+03, + 3.587398e+03, + 1.092797e+04, + -1.259356e+04, + -2.582008e+03, + 2.814548e+03, + 1.120259e+04, + -1.274805e+04, + -2.097313e+03, + 2.054883e+03, + 1.142390e+04, + -2.791789e+04, + 7.523855e+01, + 1.329347e+03, + 1.158716e+04, + -1.719612e+04, + -4.713965e+00, + 5.420132e+02, + 1.169180e+04, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -7.176421e+02, + 3.113526e+01, + 0, + 0, + -1.800870e+04, + 5.044997e+02, + 2.852090e-01, + 8.803125e-04, + -6.298356e+03, + 1.097487e+03, + 4.660042e+00, + 2.068734e-02, + -8.791947e+04, + 4.920687e+03, + 2.117041e+01, + 1.267650e-01, + -1.511792e+05, + 1.141104e+04, + 9.051543e+01, + 6.901650e-01, + -3.106193e+05, + 2.415462e+04, + 2.850943e+02, + 2.830205e+00, + -5.405713e+05, + 4.217464e+04, + 7.415631e+02, + 9.508255e+00, + -5.706933e+05, + 5.709472e+04, + 1.607830e+03, + 2.680684e+01, + -8.596668e+05, + 7.785137e+04, + 2.987113e+03, + 6.433676e+01, + -8.771786e+05, + 8.485822e+04, + 4.935285e+03, + 1.368477e+02, + -8.102174e+05, + 8.281917e+04, + 7.255334e+03, + 2.600694e+02, + -6.674694e+05, + 7.297462e+04, + 9.707332e+03, + 4.485879e+02, + -6.717545e+05, + 6.389033e+04, + 1.205217e+04, + 7.132714e+02, + -3.554819e+05, + 4.055708e+04, + 1.401631e+04, + 1.060593e+03, + -4.167811e+05, + 3.366675e+04, + 1.546312e+04, + 1.485747e+03, + -1.323838e+05, + 1.206436e+04, + 1.634842e+04, + 1.985782e+03, + -2.565296e+05, + 1.235833e+04, + 1.671070e+04, + 2.544205e+03, + -7.754431e+04, + -2.778930e+03, + 1.659321e+04, + 3.155150e+03, + -6.065238e+04, + -5.532359e+03, + 1.601994e+04, + 3.795263e+03, + -6.016013e+04, + -6.874641e+03, + 1.523403e+04, + 4.453979e+03, + -3.842724e+04, + -9.051155e+03, + 1.424960e+04, + 5.120220e+03, + -1.505812e+04, + -1.038403e+04, + 1.311185e+04, + 5.780549e+03, + -1.932609e+04, + -9.311433e+03, + 1.192713e+04, + 6.424029e+03, + -2.567878e+03, + -9.668649e+03, + 1.073681e+04, + 7.044632e+03, + -2.137310e+04, + -7.226824e+03, + 9.588529e+03, + 7.634721e+03, + -4.048428e+03, + -8.024655e+03, + 8.455858e+03, + 8.192586e+03, + -9.345105e+03, + -6.504380e+03, + 7.358232e+03, + 8.708498e+03, + 1.110868e+03, + -6.498387e+03, + 6.328846e+03, + 9.181543e+03, + -1.038927e+04, + -4.423289e+03, + 5.401265e+03, + 9.607874e+03, + -8.382929e+03, + -4.148725e+03, + 4.539967e+03, + 9.991244e+03, + -1.284061e+04, + -3.196734e+03, + 3.706702e+03, + 1.032616e+04, + -7.952644e+03, + -3.238144e+03, + 2.887171e+03, + 1.060975e+04, + -2.012766e+04, + -1.354531e+03, + 2.121075e+03, + 1.083559e+04, + -2.131326e+04, + -8.004748e+02, + 1.341130e+03, + 1.100550e+04, + -1.524196e+04, + -2.164961e+02, + 5.721496e+02, + 1.110911e+04, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -2.811733e+03, + 6.623464e+01, + 0, + 0, + 2.568464e+03, + 8.432503e+01, + 5.115023e-01, + 2.200781e-03, + -2.004794e+04, + 1.119994e+03, + 2.378582e+00, + 1.320469e-02, + -5.899960e+04, + 3.846531e+03, + 1.815237e+01, + 1.184020e-01, + -1.105061e+05, + 9.320633e+03, + 8.088947e+01, + 6.950067e-01, + -2.221620e+05, + 1.985802e+04, + 2.613633e+02, + 2.927919e+00, + -4.065581e+05, + 3.551385e+04, + 6.885058e+02, + 9.926844e+00, + -5.094984e+05, + 4.979654e+04, + 1.507612e+03, + 2.812995e+01, + -6.336678e+05, + 6.263542e+04, + 2.791695e+03, + 6.759920e+01, + -5.771321e+05, + 6.548998e+04, + 4.520174e+03, + 1.419161e+02, + -5.870919e+05, + 6.615160e+04, + 6.549199e+03, + 2.651867e+02, + -5.916423e+05, + 6.099313e+04, + 8.705613e+03, + 4.515611e+02, + -3.105146e+05, + 4.215730e+04, + 1.068282e+04, + 7.107075e+02, + -3.690182e+05, + 3.754835e+04, + 1.233110e+04, + 1.043000e+03, + -2.480750e+05, + 2.322678e+04, + 1.359551e+04, + 1.450970e+03, + -1.497117e+05, + 1.185092e+04, + 1.431604e+04, + 1.925035e+03, + -8.514757e+04, + 4.263741e+03, + 1.458441e+04, + 2.453455e+03, + -1.505205e+05, + 4.067158e+03, + 1.452717e+04, + 3.025317e+03, + -3.556097e+03, + -7.629858e+03, + 1.407200e+04, + 3.631602e+03, + -5.542532e+04, + -4.547126e+03, + 1.336358e+04, + 4.249173e+03, + -2.492334e+04, + -7.511616e+03, + 1.254118e+04, + 4.875408e+03, + -3.228374e+04, + -7.095606e+03, + 1.157333e+04, + 5.495835e+03, + 8.005456e+03, + -9.642728e+03, + 1.050910e+04, + 6.101611e+03, + -2.540419e+04, + -5.998865e+03, + 9.470682e+03, + 6.680639e+03, + -1.534258e+03, + -7.644748e+03, + 8.443364e+03, + 7.234962e+03, + -1.521422e+04, + -5.588894e+03, + 7.427301e+03, + 7.752369e+03, + 2.151713e+03, + -6.514804e+03, + 6.440484e+03, + 8.232600e+03, + -1.841369e+04, + -3.729884e+03, + 5.527030e+03, + 8.667363e+03, + 1.579701e+03, + -5.323167e+03, + 4.630580e+03, + 9.060834e+03, + -1.605496e+04, + -2.666378e+03, + 3.802381e+03, + 9.400648e+03, + -1.363337e+04, + -2.777913e+03, + 3.003439e+03, + 9.694207e+03, + -9.563748e+03, + -2.638621e+03, + 2.184130e+03, + 9.930046e+03, + -3.556888e+04, + 7.624686e+02, + 1.440821e+03, + 1.010325e+04, + -1.690964e+04, + -1.764955e+02, + 5.681839e+02, + 1.021822e+04, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -2.643694e+03, + 1.140404e+02, + 0, + 0, + -6.562979e+03, + 4.816660e+02, + 1.445460e+00, + 7.922813e-03, + -1.299063e+04, + 1.609270e+03, + 9.594276e+00, + 7.218563e-02, + -7.131240e+04, + 5.726209e+03, + 4.357593e+01, + 4.150673e-01, + -1.117634e+05, + 1.180640e+04, + 1.624316e+02, + 1.965298e+00, + -2.304253e+05, + 2.279086e+04, + 4.523525e+02, + 7.057025e+00, + -3.315911e+05, + 3.411993e+04, + 1.042647e+03, + 2.092943e+01, + -3.603710e+05, + 4.191874e+04, + 1.999991e+03, + 5.211274e+01, + -3.916216e+05, + 4.727670e+04, + 3.311539e+03, + 1.116914e+02, + -3.844057e+05, + 4.753490e+04, + 4.900611e+03, + 2.125391e+02, + -3.148316e+05, + 4.217486e+04, + 6.599279e+03, + 3.665476e+02, + -2.947627e+05, + 3.672338e+04, + 8.238001e+03, + 5.821150e+02, + -1.877393e+05, + 2.615824e+04, + 9.665892e+03, + 8.644409e+02, + -1.939038e+05, + 2.109766e+04, + 1.078832e+04, + 1.211959e+03, + -1.268775e+05, + 1.194889e+04, + 1.155350e+04, + 1.622333e+03, + -5.212276e+04, + 4.145660e+03, + 1.190591e+04, + 2.084908e+03, + -1.041510e+05, + 4.464942e+03, + 1.197827e+04, + 2.588510e+03, + -1.984863e+04, + -3.569719e+03, + 1.174725e+04, + 3.127176e+03, + -3.741808e+04, + -3.091579e+03, + 1.126593e+04, + 3.681872e+03, + -2.888744e+04, + -4.650632e+03, + 1.065302e+04, + 4.246808e+03, + -6.248874e+03, + -6.533785e+03, + 9.886316e+03, + 4.810160e+03, + -1.492326e+04, + -5.462305e+03, + 9.064728e+03, + 5.360728e+03, + -1.612605e+04, + -5.277340e+03, + 8.222609e+03, + 5.894540e+03, + -1.302281e+04, + -5.381978e+03, + 7.329188e+03, + 6.403576e+03, + 1.844868e+03, + -6.123135e+03, + 6.402092e+03, + 6.878745e+03, + -1.598640e+04, + -3.668586e+03, + 5.540739e+03, + 7.312670e+03, + -3.218371e+03, + -4.662379e+03, + 4.696477e+03, + 7.708645e+03, + -1.404880e+04, + -2.925585e+03, + 3.881197e+03, + 8.055558e+03, + -1.463165e+04, + -2.666220e+03, + 3.081586e+03, + 8.355163e+03, + -1.277586e+04, + -2.405669e+03, + 2.258415e+03, + 8.598143e+03, + -3.742817e+04, + 7.803610e+02, + 1.474543e+03, + 8.777701e+03, + -1.548654e+04, + -3.160486e+02, + 5.519917e+02, + 8.894396e+03, +}; + +double solarDataset440[] = +{ + -6.439155e+11, + 7.682264e+06, + 1.061520e+03, + 2.039373e+00, + -1.551568e+09, + -1.644546e+06, + 7.523669e+02, + 2.056656e+00, + 1.570174e+09, + -8.522139e+05, + 2.877172e+02, + 2.120770e+00, + -3.012090e+08, + 4.421119e+05, + 2.347757e+02, + 2.178751e+00, + -2.081867e+07, + 7.272809e+04, + 4.311484e+02, + 2.430188e+00, + 7.899508e+06, + 1.295109e+04, + 5.150411e+02, + 2.939752e+00, + 4.151745e+06, + 2.883739e+04, + 6.139858e+02, + 3.810026e+00, + 3.293018e+06, + 4.361918e+04, + 7.999407e+02, + 5.335932e+00, + -3.828120e+06, + 9.429242e+04, + 1.137923e+03, + 8.117909e+00, + 2.986346e+06, + 6.726090e+04, + 1.682654e+03, + 1.349342e+01, + -1.518315e+06, + 1.401839e+05, + 2.506574e+03, + 2.312609e+01, + -2.560500e+06, + 1.889565e+05, + 3.957987e+03, + 4.170958e+01, + -3.827648e+06, + 2.429145e+05, + 6.184460e+03, + 7.682438e+01, + -3.299120e+06, + 2.716569e+05, + 9.361640e+03, + 1.406772e+02, + -4.786591e+06, + 3.230548e+05, + 1.360464e+04, + 2.503356e+02, + -5.235884e+06, + 3.347402e+05, + 1.893351e+04, + 4.303752e+02, + -4.344959e+06, + 2.992049e+05, + 2.482781e+04, + 7.073441e+02, + -4.495848e+06, + 2.671507e+05, + 3.067007e+04, + 1.104209e+03, + -2.904965e+06, + 1.819224e+05, + 3.574947e+04, + 1.639240e+03, + -2.295257e+06, + 1.245881e+05, + 3.945941e+04, + 2.313019e+03, + -2.021822e+06, + 7.712727e+04, + 4.169658e+04, + 3.119853e+03, + -5.892701e+05, + 4.095196e+03, + 4.218370e+04, + 4.041884e+03, + -1.166644e+06, + 8.504980e+03, + 4.136899e+04, + 5.044736e+03, + -1.972687e+05, + -4.070728e+04, + 3.941477e+04, + 6.112839e+03, + -2.093258e+05, + -3.893157e+04, + 3.660650e+04, + 7.200837e+03, + -2.639589e+05, + -3.598837e+04, + 3.358396e+04, + 8.293512e+03, + 8.246154e+03, + -4.584505e+04, + 3.026767e+04, + 9.372228e+03, + -6.438522e+04, + -3.581717e+04, + 2.697011e+04, + 1.041147e+04, + -7.353188e+04, + -3.121684e+04, + 2.387281e+04, + 1.140770e+04, + 5.933961e+04, + -3.366294e+04, + 2.086077e+04, + 1.235002e+04, + -3.538054e+04, + -2.202528e+04, + 1.819119e+04, + 1.322614e+04, + -2.443121e+04, + -1.981273e+04, + 1.582620e+04, + 1.404641e+04, + 3.781173e+04, + -2.036056e+04, + 1.359973e+04, + 1.480309e+04, + -1.650133e+04, + -1.256169e+04, + 1.171377e+04, + 1.549140e+04, + -1.983390e+04, + -1.069497e+04, + 1.008886e+04, + 1.612572e+04, + 1.056101e+04, + -1.130558e+04, + 8.546710e+03, + 1.670160e+04, + -2.713816e+03, + -7.912829e+03, + 7.207588e+03, + 1.721354e+04, + -4.452889e+03, + -6.395793e+03, + 6.078559e+03, + 1.767169e+04, + -6.835308e+03, + -5.126471e+03, + 5.077617e+03, + 1.807822e+04, + -9.922932e+03, + -4.054774e+03, + 4.171164e+03, + 1.843425e+04, + -4.659839e+03, + -3.888745e+03, + 3.322981e+03, + 1.873921e+04, + -9.547958e+03, + -2.601152e+03, + 2.562645e+03, + 1.899026e+04, + -1.701043e+04, + -1.361229e+03, + 1.872053e+03, + 1.919113e+04, + -1.872608e+04, + -7.127307e+02, + 1.172457e+03, + 1.934026e+04, + -1.350361e+04, + -1.647467e+02, + 4.949774e+02, + 1.943062e+04, + 2.157451e+11, + 1.943248e+06, + -2.593158e+02, + 9.505553e-01, + -7.114316e+10, + 1.371541e+07, + 0, + 9.477677e-01, + 1.280844e+09, + -7.152589e+05, + 2.024044e+02, + 1.022474e+00, + -3.379517e+08, + 4.237257e+05, + 1.460656e+02, + 1.057040e+00, + 3.483677e+07, + -4.170331e+04, + 2.741455e+02, + 1.234886e+00, + -6.107958e+06, + 4.113951e+04, + 3.019965e+02, + 1.517543e+00, + 6.609522e+06, + 7.210950e+03, + 3.859744e+02, + 2.068921e+00, + 6.293178e+05, + 4.235131e+04, + 5.125775e+02, + 3.017804e+00, + -8.119125e+05, + 6.395016e+04, + 7.753549e+02, + 4.886021e+00, + -1.001544e+06, + 8.369718e+04, + 1.219698e+03, + 8.638624e+00, + 2.469002e+05, + 1.020158e+05, + 1.936104e+03, + 1.606076e+01, + -3.071414e+06, + 1.744496e+05, + 3.124365e+03, + 3.047463e+01, + -2.398553e+06, + 2.065189e+05, + 5.080502e+03, + 5.904147e+01, + -4.148108e+06, + 2.720416e+05, + 7.949415e+03, + 1.123456e+02, + -4.421216e+06, + 3.044491e+05, + 1.197323e+04, + 2.080105e+02, + -4.886328e+06, + 3.225125e+05, + 1.702702e+04, + 3.685740e+02, + -4.260302e+06, + 2.983774e+05, + 2.277937e+04, + 6.206306e+02, + -4.488843e+06, + 2.719539e+05, + 2.864869e+04, + 9.887191e+02, + -3.035307e+06, + 1.911892e+05, + 3.388554e+04, + 1.492962e+03, + -2.303207e+06, + 1.301134e+05, + 3.780104e+04, + 2.135924e+03, + -1.695747e+06, + 7.533493e+04, + 4.024633e+04, + 2.912218e+03, + -1.131339e+06, + 2.856670e+04, + 4.111774e+04, + 3.805227e+03, + -7.045700e+05, + -4.867972e+03, + 4.054360e+04, + 4.789173e+03, + -3.620224e+05, + -2.694148e+04, + 3.883948e+04, + 5.834790e+03, + -4.066279e+05, + -2.925181e+04, + 3.641435e+04, + 6.913749e+03, + -1.132796e+05, + -4.305023e+04, + 3.342235e+04, + 8.003883e+03, + 3.570589e+03, + -4.331910e+04, + 3.014234e+04, + 9.074909e+03, + -1.133431e+05, + -3.225022e+04, + 2.700976e+04, + 1.011271e+04, + 1.186040e+03, + -3.456607e+04, + 2.396680e+04, + 1.111301e+04, + -4.979073e+04, + -2.665824e+04, + 2.106894e+04, + 1.205891e+04, + 1.592532e+04, + -2.657005e+04, + 1.836669e+04, + 1.294864e+04, + 8.401869e+03, + -2.123268e+04, + 1.592066e+04, + 1.377255e+04, + -2.611279e+04, + -1.551961e+04, + 1.380784e+04, + 1.453477e+04, + 1.246222e+04, + -1.579531e+04, + 1.187851e+04, + 1.523848e+04, + -6.658919e+03, + -1.142901e+04, + 1.017094e+04, + 1.587713e+04, + 1.928404e+03, + -1.015849e+04, + 8.688190e+03, + 1.645836e+04, + -1.608648e+04, + -7.006837e+03, + 7.388582e+03, + 1.698200e+04, + 6.840295e+03, + -7.868280e+03, + 6.193951e+03, + 1.745255e+04, + -1.757879e+04, + -4.203383e+03, + 5.158025e+03, + 1.786403e+04, + 6.926599e+03, + -5.876158e+03, + 4.203700e+03, + 1.822680e+04, + -1.598552e+04, + -2.390669e+03, + 3.390699e+03, + 1.853138e+04, + -6.027778e+03, + -3.175285e+03, + 2.640031e+03, + 1.879204e+04, + -1.851678e+04, + -1.220782e+03, + 1.930943e+03, + 1.899774e+04, + -2.290692e+04, + -3.911046e+02, + 1.218154e+03, + 1.915237e+04, + -1.519600e+04, + -2.633004e+01, + 4.835101e+02, + 1.924636e+04, + -3.704596e+12, + 5.454497e+07, + 1.421905e+03, + 2.926930e-01, + 3.173305e+09, + -5.743591e+05, + 0, + 3.144359e-01, + -3.364539e+06, + 6.299289e+03, + 0, + 3.116483e-01, + -3.980029e+08, + 4.573928e+05, + 3.043542e+00, + 3.122058e-01, + 4.559887e+07, + -6.916950e+04, + 1.007848e+02, + 3.969474e-01, + -2.443350e+07, + 8.526024e+04, + 1.065719e+02, + 4.794590e-01, + 5.589237e+06, + -4.160307e+03, + 1.936915e+02, + 7.621167e-01, + 9.451238e+04, + 2.614347e+04, + 2.558371e+02, + 1.224850e+00, + 3.067526e+04, + 3.723230e+04, + 4.105653e+02, + 2.194361e+00, + -7.036798e+05, + 5.911092e+04, + 6.903957e+02, + 4.252689e+00, + -5.513797e+05, + 8.299526e+04, + 1.196595e+03, + 8.696047e+00, + -2.191497e+06, + 1.345808e+05, + 2.089839e+03, + 1.812299e+01, + -2.070793e+06, + 1.743475e+05, + 3.623925e+03, + 3.802500e+01, + -4.038717e+06, + 2.455242e+05, + 6.036923e+03, + 7.762385e+01, + -3.761674e+06, + 2.746045e+05, + 9.589842e+03, + 1.529898e+02, + -5.050391e+06, + 3.152332e+05, + 1.422849e+04, + 2.849469e+02, + -4.033593e+06, + 2.876971e+05, + 1.972387e+04, + 5.007826e+02, + -3.837058e+06, + 2.611389e+05, + 2.542725e+04, + 8.243544e+02, + -3.415481e+06, + 2.122601e+05, + 3.081216e+04, + 1.277441e+03, + -2.263710e+06, + 1.384666e+05, + 3.511626e+04, + 1.870490e+03, + -1.502418e+06, + 8.143096e+04, + 3.793597e+04, + 2.597510e+03, + -1.629920e+06, + 5.437166e+04, + 3.934644e+04, + 3.445165e+03, + -3.463979e+05, + -1.248103e+04, + 3.915122e+04, + 4.394698e+03, + -4.796136e+05, + -1.400399e+04, + 3.778512e+04, + 5.405067e+03, + -4.525999e+05, + -2.265499e+04, + 3.581125e+04, + 6.461725e+03, + -3.180239e+04, + -4.281554e+04, + 3.309592e+04, + 7.538118e+03, + -1.696614e+05, + -3.260128e+04, + 3.010816e+04, + 8.601531e+03, + 2.216761e+03, + -3.819533e+04, + 2.706857e+04, + 9.643927e+03, + -5.840964e+04, + -2.977311e+04, + 2.409090e+04, + 1.064435e+04, + -5.917126e+04, + -2.642897e+04, + 2.128022e+04, + 1.159950e+04, + 7.415464e+04, + -2.984562e+04, + 1.854160e+04, + 1.249835e+04, + -4.015798e+04, + -1.708081e+04, + 1.618474e+04, + 1.332958e+04, + -2.724330e+04, + -1.610742e+04, + 1.411441e+04, + 1.410972e+04, + 3.392267e+04, + -1.758161e+04, + 1.211073e+04, + 1.482824e+04, + -1.941985e+04, + -1.017686e+04, + 1.041268e+04, + 1.547855e+04, + -1.295582e+04, + -9.453817e+03, + 8.939028e+03, + 1.607642e+04, + 1.103183e+04, + -9.749963e+03, + 7.541593e+03, + 1.661529e+04, + -1.309367e+04, + -5.774869e+03, + 6.355166e+03, + 1.709222e+04, + -6.434020e+03, + -5.622814e+03, + 5.307434e+03, + 1.751883e+04, + -4.996029e+03, + -4.764721e+03, + 4.331959e+03, + 1.788974e+04, + -4.447507e+03, + -3.893715e+03, + 3.465440e+03, + 1.820564e+04, + -1.239499e+04, + -2.374546e+03, + 2.708845e+03, + 1.846887e+04, + -1.791766e+04, + -1.467369e+03, + 1.990862e+03, + 1.868255e+04, + -2.061413e+04, + -6.862093e+02, + 1.247688e+03, + 1.884111e+04, + -1.468218e+04, + -1.400460e+02, + 5.211565e+02, + 1.893732e+04, + 1.308076e+12, + -1.882941e+07, + -5.168990e+02, + 4.404332e-02, + -8.250594e+09, + 1.493334e+06, + 0, + 3.623818e-02, + 6.347536e+07, + -3.118404e+04, + 0, + 4.348581e-02, + -6.744998e+07, + 8.687614e+04, + 0, + 4.237079e-02, + -1.059940e+06, + 1.737933e+03, + 2.850557e+01, + 6.021112e-02, + 3.873147e+06, + -6.437214e+03, + 2.864464e+01, + 9.087420e-02, + -2.038775e+06, + 1.383359e+04, + 3.704050e+01, + 1.349175e-01, + 1.734783e+06, + 9.982716e+02, + 6.829641e+01, + 2.609149e-01, + -1.300032e+06, + 2.675349e+04, + 1.182804e+02, + 5.112371e-01, + -4.406929e+05, + 3.149201e+04, + 2.638582e+02, + 1.259974e+00, + -8.366025e+05, + 5.266660e+04, + 5.292339e+02, + 3.134881e+00, + -7.924932e+05, + 7.942542e+04, + 1.048528e+03, + 7.713714e+00, + -2.114312e+06, + 1.343945e+05, + 2.024267e+03, + 1.835492e+01, + -3.185798e+06, + 1.914041e+05, + 3.782729e+03, + 4.238696e+01, + -3.032631e+06, + 2.279831e+05, + 6.542534e+03, + 9.240122e+01, + -4.568244e+06, + 2.833195e+05, + 1.042573e+04, + 1.866350e+02, + -3.365946e+06, + 2.645481e+05, + 1.535126e+04, + 3.512042e+02, + -4.471630e+06, + 2.758277e+05, + 2.079988e+04, + 6.104689e+02, + -2.224000e+06, + 1.886401e+05, + 2.617243e+04, + 9.914146e+02, + -2.922616e+06, + 1.750678e+05, + 3.076047e+04, + 1.501533e+03, + -1.487031e+06, + 9.279157e+04, + 3.425527e+04, + 2.152028e+03, + -1.120184e+06, + 5.413495e+04, + 3.618144e+04, + 2.925201e+03, + -9.574249e+05, + 2.560661e+04, + 3.684905e+04, + 3.805894e+03, + -4.688823e+05, + -8.953231e+03, + 3.622075e+04, + 4.771127e+03, + -2.008025e+05, + -2.566219e+04, + 3.456168e+04, + 5.787472e+03, + -2.845628e+05, + -2.408577e+04, + 3.238769e+04, + 6.829708e+03, + -9.819349e+04, + -3.380507e+04, + 2.980207e+04, + 7.880871e+03, + -2.605063e+04, + -3.403133e+04, + 2.695787e+04, + 8.913987e+03, + -6.318205e+04, + -2.810438e+04, + 2.417620e+04, + 9.914760e+03, + -4.302365e+04, + -2.624841e+04, + 2.148046e+04, + 1.087609e+04, + 6.156530e+04, + -2.811597e+04, + 1.885622e+04, + 1.178578e+04, + -7.492135e+04, + -1.496397e+04, + 1.657837e+04, + 1.263475e+04, + 1.109430e+04, + -1.929611e+04, + 1.445066e+04, + 1.343597e+04, + 2.424357e+04, + -1.637395e+04, + 1.244181e+04, + 1.416959e+04, + -4.234273e+04, + -8.757096e+03, + 1.078613e+04, + 1.484129e+04, + 2.003718e+04, + -1.262376e+04, + 9.226693e+03, + 1.546219e+04, + -1.526070e+04, + -7.207988e+03, + 7.836505e+03, + 1.601547e+04, + -1.628001e+03, + -7.394836e+03, + 6.625916e+03, + 1.651619e+04, + -7.377006e+03, + -5.561068e+03, + 5.524485e+03, + 1.695833e+04, + -6.725890e+03, + -4.724347e+03, + 4.541853e+03, + 1.734582e+04, + -4.572217e+03, + -4.074851e+03, + 3.648060e+03, + 1.767801e+04, + -1.896547e+04, + -1.949759e+03, + 2.858043e+03, + 1.795535e+04, + -1.298453e+04, + -2.311439e+03, + 2.059357e+03, + 1.818104e+04, + -2.551484e+04, + -2.163187e+02, + 1.287627e+03, + 1.834266e+04, + -1.600338e+04, + -4.270993e+01, + 5.122679e+02, + 1.844268e+04, + -1.846467e+11, + 2.613334e+06, + 7.450276e+01, + 3.902573e-03, + 1.667286e+09, + -3.160544e+05, + 0, + 5.017594e-03, + -3.902174e+05, + 5.452947e+03, + -3.446309e+00, + 3.345062e-03, + -2.708707e+06, + 4.468648e+03, + 0, + 2.787552e-03, + -1.153853e+06, + 2.969827e+03, + 2.394593e+00, + 3.902573e-03, + 3.457846e+05, + 1.456899e+01, + 4.812851e+00, + 8.362656e-03, + 2.322128e+04, + 1.682256e+03, + 7.411109e+00, + 1.728282e-02, + -9.250953e+04, + 3.491170e+03, + 1.511058e+01, + 4.181328e-02, + -1.140402e+04, + 5.499039e+03, + 3.309618e+01, + 1.131746e-01, + 2.602436e+05, + 9.641526e+03, + 7.375697e+01, + 3.133209e-01, + -1.325523e+06, + 3.732442e+04, + 1.808742e+02, + 8.948042e-01, + -4.382676e+05, + 4.642239e+04, + 4.773414e+02, + 2.895709e+00, + -1.636631e+06, + 9.209222e+04, + 1.051141e+03, + 8.195961e+00, + -2.042284e+06, + 1.355507e+05, + 2.219278e+03, + 2.184828e+01, + -2.868143e+06, + 1.895901e+05, + 4.230793e+03, + 5.311346e+01, + -3.378460e+06, + 2.314211e+05, + 7.337166e+03, + 1.178716e+02, + -3.383704e+06, + 2.485497e+05, + 1.152400e+04, + 2.383223e+02, + -3.611693e+06, + 2.504024e+05, + 1.651144e+04, + 4.404639e+02, + -2.710830e+06, + 2.062171e+05, + 2.172585e+04, + 7.505122e+02, + -2.193920e+06, + 1.640529e+05, + 2.647851e+04, + 1.184719e+03, + -1.888746e+06, + 1.220847e+05, + 3.038570e+04, + 1.752278e+03, + -1.180573e+06, + 6.785978e+04, + 3.301593e+04, + 2.451054e+03, + -9.119347e+05, + 3.479131e+04, + 3.423626e+04, + 3.263083e+03, + -4.432393e+05, + 6.671025e+02, + 3.418252e+04, + 4.167016e+03, + -3.338143e+05, + -1.199384e+04, + 3.313578e+04, + 5.133589e+03, + -1.979577e+05, + -2.245575e+04, + 3.142588e+04, + 6.140752e+03, + -1.443444e+05, + -2.612535e+04, + 2.924376e+04, + 7.164707e+03, + -1.039579e+05, + -2.759601e+04, + 2.677478e+04, + 8.185464e+03, + 6.889591e+03, + -3.078271e+04, + 2.413897e+04, + 9.184259e+03, + -7.514438e+04, + -2.239874e+04, + 2.158917e+04, + 1.014449e+04, + 4.257686e+04, + -2.654203e+04, + 1.911626e+04, + 1.106395e+04, + -6.392534e+04, + -1.575459e+04, + 1.685800e+04, + 1.192695e+04, + 3.833671e+04, + -2.059340e+04, + 1.473601e+04, + 1.274193e+04, + -4.175233e+04, + -1.138346e+04, + 1.282932e+04, + 1.349170e+04, + 1.568732e+04, + -1.428547e+04, + 1.108599e+04, + 1.418980e+04, + -1.592132e+04, + -9.200685e+03, + 9.505594e+03, + 1.482175e+04, + 9.423744e+03, + -9.833787e+03, + 8.103365e+03, + 1.539779e+04, + -2.081387e+04, + -5.508437e+03, + 6.882485e+03, + 1.591251e+04, + 2.938513e+03, + -6.992832e+03, + 5.751007e+03, + 1.637591e+04, + -1.006852e+04, + -4.396123e+03, + 4.730716e+03, + 1.677699e+04, + -9.845785e+03, + -3.800704e+03, + 3.824602e+03, + 1.712480e+04, + -1.466034e+04, + -2.720469e+03, + 2.967253e+03, + 1.741587e+04, + -1.131802e+04, + -2.508277e+03, + 2.133736e+03, + 1.764822e+04, + -2.788700e+04, + -1.062039e+01, + 1.368856e+03, + 1.781643e+04, + -1.738426e+04, + -4.486282e+01, + 5.656062e+02, + 1.792414e+04, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -4.297648e+06, + 4.111555e+03, + 0, + 0, + 0, + 0, + 0, + 5.575104e-04, + -5.581082e+05, + 1.781758e+03, + 0, + 5.575104e-04, + 1.843572e+05, + -3.770991e+02, + 1.469976e+00, + 2.787552e-03, + -3.952308e+05, + 2.931368e+03, + 2.469540e+00, + 6.132615e-03, + 2.621871e+05, + -9.011830e+01, + 9.486217e+00, + 2.843303e-02, + -1.562634e+05, + 6.783349e+03, + 1.981770e+01, + 7.637893e-02, + -5.987073e+05, + 1.920998e+04, + 7.296369e+01, + 3.010556e-01, + -4.734045e+05, + 3.233755e+04, + 2.337040e+02, + 1.231541e+00, + -1.292884e+06, + 6.785280e+04, + 6.097906e+02, + 4.193593e+00, + -1.682559e+06, + 1.071776e+05, + 1.453400e+03, + 1.287515e+01, + -2.404541e+06, + 1.584818e+05, + 3.025797e+03, + 3.469778e+01, + -3.146009e+06, + 2.066665e+05, + 5.619983e+03, + 8.326530e+01, + -2.709797e+06, + 2.201851e+05, + 9.299217e+03, + 1.789965e+02, + -3.778700e+06, + 2.492082e+05, + 1.388870e+04, + 3.460623e+02, + -2.343804e+06, + 1.957822e+05, + 1.893955e+04, + 6.135988e+02, + -2.283303e+06, + 1.718623e+05, + 2.366783e+04, + 9.972451e+02, + -1.924180e+06, + 1.288603e+05, + 2.777848e+04, + 1.511863e+03, + -9.241237e+05, + 6.747835e+04, + 3.065304e+04, + 2.156804e+03, + -1.086438e+06, + 5.116178e+04, + 3.229492e+04, + 2.915626e+03, + -4.632157e+05, + 7.870416e+03, + 3.273955e+04, + 3.776818e+03, + -3.230504e+05, + -6.985506e+03, + 3.205541e+04, + 4.707586e+03, + -2.475074e+05, + -1.596795e+04, + 3.068760e+04, + 5.686358e+03, + -1.378401e+05, + -2.375715e+04, + 2.877374e+04, + 6.690937e+03, + -8.940252e+04, + -2.589151e+04, + 2.650252e+04, + 7.698058e+03, + -2.683560e+04, + -2.716741e+04, + 2.406685e+04, + 8.689683e+03, + -5.526493e+04, + -2.270183e+04, + 2.164225e+04, + 9.650765e+03, + -8.489383e+03, + -2.300292e+04, + 1.926287e+04, + 1.057381e+04, + -1.388131e+04, + -1.936649e+04, + 1.699055e+04, + 1.144637e+04, + 7.094209e+03, + -1.780787e+04, + 1.489322e+04, + 1.226540e+04, + -2.836236e+04, + -1.264700e+04, + 1.301116e+04, + 1.302698e+04, + 2.092988e+04, + -1.443269e+04, + 1.125648e+04, + 1.373400e+04, + -2.156834e+04, + -8.504181e+03, + 9.717555e+03, + 1.437710e+04, + -6.708749e+03, + -8.789276e+03, + 8.334151e+03, + 1.496836e+04, + -1.692188e+03, + -7.736227e+03, + 7.027454e+03, + 1.549866e+04, + -4.473494e+03, + -6.083076e+03, + 5.875349e+03, + 1.596817e+04, + -1.208879e+04, + -4.407527e+03, + 4.863871e+03, + 1.638080e+04, + -8.618245e+03, + -4.133615e+03, + 3.916455e+03, + 1.673821e+04, + -8.899190e+03, + -3.323467e+03, + 3.029126e+03, + 1.703543e+04, + -1.897729e+04, + -1.633485e+03, + 2.225304e+03, + 1.727258e+04, + -3.279575e+04, + 2.298052e+02, + 1.423357e+03, + 1.745072e+04, + -1.484592e+04, + -2.882339e+02, + 5.261383e+02, + 1.756148e+04, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -5.090528e+04, + 4.110663e+02, + 0, + 0, + 2.437332e+04, + 1.728558e+02, + 1.098978e+00, + 2.230042e-03, + -5.251004e+04, + 1.839037e+03, + 3.415254e+00, + 1.003519e-02, + -1.034817e+05, + 5.494798e+03, + 1.715950e+01, + 6.076864e-02, + -3.817933e+05, + 1.664499e+04, + 6.975643e+01, + 3.183384e-01, + -5.260784e+05, + 3.421596e+04, + 2.439328e+02, + 1.452872e+00, + -1.288699e+06, + 7.236937e+04, + 6.940201e+02, + 5.383321e+00, + -1.884821e+06, + 1.157847e+05, + 1.715049e+03, + 1.728115e+01, + -2.068708e+06, + 1.540029e+05, + 3.564861e+03, + 4.720887e+01, + -2.701302e+06, + 1.965799e+05, + 6.434261e+03, + 1.113315e+02, + -2.916540e+06, + 2.134724e+05, + 1.036392e+04, + 2.333911e+02, + -2.526077e+06, + 1.969947e+05, + 1.493163e+04, + 4.395490e+02, + -1.965767e+06, + 1.637507e+05, + 1.953147e+04, + 7.516110e+02, + -1.697977e+06, + 1.315705e+05, + 2.369155e+04, + 1.184152e+03, + -1.124648e+06, + 8.674265e+04, + 2.700457e+04, + 1.743860e+03, + -9.015866e+05, + 5.643048e+04, + 2.922375e+04, + 2.423722e+03, + -7.506628e+05, + 3.028053e+04, + 3.032450e+04, + 3.211428e+03, + -1.502096e+05, + -6.976241e+03, + 3.021703e+04, + 4.084801e+03, + -4.313262e+05, + -4.280012e+02, + 2.934955e+04, + 5.011680e+03, + -8.356901e+04, + -2.305404e+04, + 2.785722e+04, + 5.981843e+03, + -6.447470e+04, + -2.307799e+04, + 2.585185e+04, + 6.959204e+03, + -6.518919e+04, + -2.177705e+04, + 2.375067e+04, + 7.931175e+03, + -6.379765e+04, + -2.063416e+04, + 2.157590e+04, + 8.885643e+03, + 3.719946e+02, + -2.246051e+04, + 1.933079e+04, + 9.809115e+03, + -2.302765e+04, + -1.787789e+04, + 1.717219e+04, + 1.068719e+04, + -8.297077e+03, + -1.659973e+04, + 1.515538e+04, + 1.151822e+04, + 7.842093e+02, + -1.472122e+04, + 1.326753e+04, + 1.229522e+04, + -1.859957e+04, + -1.110603e+04, + 1.156662e+04, + 1.301583e+04, + 4.434424e+03, + -1.134157e+04, + 9.987902e+03, + 1.368140e+04, + -2.070461e+04, + -7.474109e+03, + 8.566013e+03, + 1.428543e+04, + 1.277143e+04, + -9.241875e+03, + 7.241224e+03, + 1.483337e+04, + -1.508531e+04, + -4.897739e+03, + 6.099617e+03, + 1.531603e+04, + -1.471159e+04, + -4.527480e+03, + 5.082794e+03, + 1.574803e+04, + -3.968351e+03, + -4.893573e+03, + 4.064790e+03, + 1.612095e+04, + -1.081038e+04, + -3.174699e+03, + 3.148908e+03, + 1.642812e+04, + -2.027976e+04, + -1.650839e+03, + 2.326102e+03, + 1.667577e+04, + -2.971391e+04, + -2.147712e+02, + 1.486818e+03, + 1.686212e+04, + -1.842872e+04, + -5.515463e+01, + 5.911260e+02, + 1.697771e+04, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -1.548164e+03, + 5.832732e+01, + 0, + 0, + -4.254350e+04, + 1.106875e+03, + 4.435921e-01, + 1.115021e-03, + -6.186367e+04, + 3.476985e+03, + 8.919585e+00, + 3.177809e-02, + -2.400450e+05, + 1.236929e+04, + 4.781682e+01, + 2.358269e-01, + -5.044807e+05, + 3.042742e+04, + 2.007490e+02, + 1.304017e+00, + -1.089476e+06, + 6.341001e+04, + 6.399979e+02, + 5.479212e+00, + -1.227911e+06, + 9.442542e+04, + 1.632738e+03, + 1.854057e+01, + -1.843917e+06, + 1.380790e+05, + 3.410850e+03, + 5.106126e+01, + -2.151846e+06, + 1.665970e+05, + 6.202903e+03, + 1.213332e+02, + -2.042129e+06, + 1.709803e+05, + 9.861164e+03, + 2.528505e+02, + -2.013808e+06, + 1.629299e+05, + 1.399494e+04, + 4.696808e+02, + -1.226414e+06, + 1.227890e+05, + 1.806697e+04, + 7.926443e+02, + -1.415486e+06, + 1.097980e+05, + 2.166666e+04, + 1.230785e+03, + -7.867272e+05, + 6.384606e+04, + 2.448953e+04, + 1.792229e+03, + -6.455655e+05, + 4.083803e+04, + 2.621488e+04, + 2.463119e+03, + -4.555601e+05, + 1.792048e+04, + 2.696774e+04, + 3.230170e+03, + -9.267617e+04, + -6.476458e+03, + 2.676322e+04, + 4.071033e+03, + -2.927601e+05, + -1.052446e+03, + 2.601313e+04, + 4.960256e+03, + -1.217774e+05, + -1.516011e+04, + 2.477810e+04, + 5.889640e+03, + -3.133872e+04, + -2.038053e+04, + 2.303332e+04, + 6.828298e+03, + -8.323439e+04, + -1.637279e+04, + 2.115509e+04, + 7.757606e+03, + 2.477021e+04, + -2.169634e+04, + 1.917545e+04, + 8.668998e+03, + -6.502164e+04, + -1.334719e+04, + 1.725980e+04, + 9.544082e+03, + 5.350009e+03, + -1.721099e+04, + 1.537623e+04, + 1.038587e+04, + -1.384803e+04, + -1.325894e+04, + 1.354377e+04, + 1.117533e+04, + 4.594548e+03, + -1.274668e+04, + 1.186473e+04, + 1.191404e+04, + -3.094085e+04, + -8.212376e+03, + 1.034769e+04, + 1.259716e+04, + 2.132700e+04, + -1.145801e+04, + 8.882879e+03, + 1.322813e+04, + -3.035282e+04, + -4.902982e+03, + 7.607703e+03, + 1.379274e+04, + 5.411916e+03, + -7.830371e+03, + 6.412932e+03, + 1.430841e+04, + -1.810219e+04, + -4.158606e+03, + 5.307838e+03, + 1.475643e+04, + -3.007288e+02, + -5.370719e+03, + 4.283134e+03, + 1.514813e+04, + -2.178750e+04, + -2.173925e+03, + 3.365475e+03, + 1.547263e+04, + -1.511740e+04, + -2.655632e+03, + 2.459696e+03, + 1.573975e+04, + -3.355339e+04, + 7.946364e+01, + 1.567829e+03, + 1.593402e+04, + -1.896481e+04, + -1.109393e+02, + 6.194191e+02, + 1.605676e+04, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -7.491786e+03, + 2.774529e+02, + 0, + 0, + -4.543511e+04, + 1.887313e+03, + 2.744877e+00, + 1.059270e-02, + -6.058786e+04, + 5.419371e+03, + 2.435209e+01, + 1.321300e-01, + -2.888232e+05, + 1.859427e+04, + 1.103914e+02, + 7.927798e-01, + -6.056967e+05, + 4.106824e+04, + 4.123811e+02, + 3.821734e+00, + -8.632473e+05, + 6.819488e+04, + 1.152532e+03, + 1.412787e+01, + -1.223397e+06, + 9.931776e+04, + 2.559702e+03, + 4.147376e+01, + -1.340520e+06, + 1.187963e+05, + 4.785345e+03, + 1.020841e+02, + -1.331923e+06, + 1.258200e+05, + 7.731127e+03, + 2.165939e+02, + -1.384212e+06, + 1.233902e+05, + 1.113473e+04, + 4.071911e+02, + -6.897551e+05, + 8.991942e+04, + 1.453688e+04, + 6.933099e+02, + -1.214735e+06, + 9.534407e+04, + 1.765376e+04, + 1.082844e+03, + -4.097940e+05, + 4.438210e+04, + 2.014827e+04, + 1.588657e+03, + -3.878253e+05, + 3.305638e+04, + 2.168065e+04, + 2.190812e+03, + -4.045554e+05, + 2.233340e+04, + 2.261177e+04, + 2.884151e+03, + -1.793317e+05, + 1.946184e+03, + 2.274125e+04, + 3.654479e+03, + -6.062687e+04, + -7.801344e+03, + 2.217293e+04, + 4.474418e+03, + -1.596910e+05, + -4.718906e+03, + 2.128443e+04, + 5.326097e+03, + -4.954925e+04, + -1.385354e+04, + 2.004253e+04, + 6.200059e+03, + -1.408864e+04, + -1.539126e+04, + 1.849437e+04, + 7.069552e+03, + -3.886102e+04, + -1.263844e+04, + 1.691557e+04, + 7.922135e+03, + -2.899779e+04, + -1.274985e+04, + 1.531142e+04, + 8.751657e+03, + 3.490567e+03, + -1.374791e+04, + 1.365887e+04, + 9.545296e+03, + -1.297414e+04, + -1.056211e+04, + 1.209829e+04, + 1.029242e+04, + -9.319178e+03, + -9.642875e+03, + 1.065048e+04, + 1.099410e+04, + -9.836923e+03, + -8.388618e+03, + 9.274745e+03, + 1.164472e+04, + -1.192357e+04, + -7.167599e+03, + 7.978709e+03, + 1.224070e+04, + 1.301938e+03, + -7.300621e+03, + 6.746966e+03, + 1.277847e+04, + -2.409152e+04, + -3.801826e+03, + 5.650636e+03, + 1.325335e+04, + 2.135069e+03, + -6.018935e+03, + 4.566522e+03, + 1.367190e+04, + -2.471835e+04, + -2.111991e+03, + 3.591472e+03, + 1.401725e+04, + -1.336144e+04, + -3.118779e+03, + 2.626973e+03, + 1.430292e+04, + -3.618346e+04, + 1.887078e+02, + 1.694546e+03, + 1.451020e+04, + -2.192421e+04, + -1.048766e+01, + 6.919574e+02, + 1.464393e+04, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -2.298658e+02, + 1.891811e+01, + 0, + 0, + -1.240277e+04, + 5.345032e+02, + 2.608164e-01, + 1.115021e-03, + -1.596284e+04, + 1.741852e+03, + 7.032467e+00, + 4.069826e-02, + -1.027246e+05, + 7.361202e+03, + 3.925922e+01, + 3.027282e-01, + -2.060335e+05, + 1.759016e+04, + 1.746335e+02, + 1.730512e+00, + -4.143519e+05, + 3.512883e+04, + 5.474948e+02, + 7.103240e+00, + -5.194204e+05, + 5.235380e+04, + 1.348534e+03, + 2.294490e+01, + -7.226607e+05, + 7.188365e+04, + 2.713832e+03, + 6.034437e+01, + -8.224504e+05, + 8.236982e+04, + 4.702827e+03, + 1.360303e+02, + -5.759747e+05, + 7.532407e+04, + 7.117950e+03, + 2.687273e+02, + -7.814308e+05, + 7.950876e+04, + 9.732035e+03, + 4.740952e+02, + -4.677243e+05, + 5.706459e+04, + 1.228851e+04, + 7.694051e+02, + -3.405356e+05, + 4.326742e+04, + 1.440361e+04, + 1.156059e+03, + -3.661262e+05, + 3.527188e+04, + 1.610547e+04, + 1.634736e+03, + -2.050564e+05, + 1.800520e+04, + 1.723562e+04, + 2.202346e+03, + -1.739701e+05, + 9.803099e+03, + 1.773202e+04, + 2.842272e+03, + -4.267503e+04, + -1.775289e+03, + 1.770045e+04, + 3.540405e+03, + -1.174590e+05, + 2.979865e+02, + 1.732537e+04, + 4.277679e+03, + -6.005372e+04, + -6.416114e+03, + 1.663838e+04, + 5.047353e+03, + -1.009872e+04, + -1.033768e+04, + 1.560400e+04, + 5.826299e+03, + -4.043125e+04, + -7.878538e+03, + 1.446322e+04, + 6.598461e+03, + -2.113247e+04, + -9.484497e+03, + 1.324051e+04, + 7.358438e+03, + 2.589035e+03, + -1.043233e+04, + 1.192600e+04, + 8.090833e+03, + -2.651877e+04, + -6.981116e+03, + 1.067108e+04, + 8.786026e+03, + -6.138087e+03, + -8.355998e+03, + 9.423123e+03, + 9.444529e+03, + -1.199978e+04, + -6.803323e+03, + 8.184259e+03, + 1.005210e+04, + -5.136721e+03, + -6.606467e+03, + 7.004292e+03, + 1.060672e+04, + -8.765806e+03, + -5.278347e+03, + 5.900880e+03, + 1.110251e+04, + -2.318204e+04, + -3.325419e+03, + 4.877837e+03, + 1.153968e+04, + -6.973830e+03, + -4.679254e+03, + 3.813233e+03, + 1.191537e+04, + -2.198839e+04, + -2.109273e+03, + 2.813720e+03, + 1.221296e+04, + -4.232767e+04, + 4.552064e+02, + 1.844062e+03, + 1.243947e+04, + -2.133196e+04, + -2.242884e+02, + 7.171137e+02, + 1.258462e+04, +}; + +double solarDataset480[] = +{ + -2.547404e+13, + 3.635631e+08, + 1.293910e+04, + 3.796038e+01, + 1.491564e+11, + -3.082064e+07, + 2.764923e+03, + 3.816097e+01, + -4.508309e+10, + 2.784696e+07, + 1.842137e+03, + 3.830790e+01, + 1.877320e+09, + -2.075191e+06, + 5.574952e+03, + 4.031446e+01, + 1.363759e+08, + 1.060735e+05, + 5.218855e+03, + 4.351307e+01, + -4.042173e+07, + 4.168932e+05, + 5.894289e+03, + 4.927657e+01, + -1.979427e+07, + 3.130223e+05, + 6.903811e+03, + 5.939239e+01, + 6.227794e+07, + 3.355382e+04, + 7.989751e+03, + 7.579875e+01, + -2.611063e+07, + 5.428849e+05, + 9.770848e+03, + 1.008989e+02, + 6.751575e+06, + 3.486580e+05, + 1.273626e+04, + 1.436773e+02, + -7.094370e+06, + 5.158292e+05, + 1.643574e+04, + 2.114709e+02, + -9.375221e+06, + 5.686982e+05, + 2.162922e+04, + 3.207238e+02, + -9.044998e+06, + 5.787047e+05, + 2.809570e+04, + 4.923702e+02, + -1.059918e+07, + 5.884594e+05, + 3.567928e+04, + 7.525556e+02, + -1.032559e+07, + 5.383256e+05, + 4.394951e+04, + 1.132412e+03, + -9.508141e+06, + 4.496710e+05, + 5.199543e+04, + 1.660855e+03, + -6.314974e+06, + 3.051184e+05, + 5.876680e+04, + 2.358284e+03, + -6.086400e+06, + 2.212357e+05, + 6.360343e+04, + 3.228792e+03, + -3.788528e+06, + 9.381155e+04, + 6.603062e+04, + 4.267693e+03, + -2.077730e+06, + 4.085149e+03, + 6.579013e+04, + 5.445031e+03, + -1.998244e+06, + -2.581562e+04, + 6.353956e+04, + 6.724786e+03, + -5.455764e+05, + -8.455452e+04, + 5.958479e+04, + 8.073218e+03, + -5.401502e+05, + -8.066396e+04, + 5.460598e+04, + 9.442031e+03, + -4.626920e+05, + -7.878633e+04, + 4.927072e+04, + 1.080685e+04, + 4.307696e+04, + -8.866941e+04, + 4.363750e+04, + 1.213911e+04, + -9.896498e+04, + -6.809587e+04, + 3.825652e+04, + 1.340968e+04, + -4.046726e+04, + -6.013412e+04, + 3.334045e+04, + 1.461550e+04, + 2.465424e+04, + -5.267288e+04, + 2.881215e+04, + 1.574516e+04, + -6.606890e+04, + -3.886479e+04, + 2.480495e+04, + 1.679298e+04, + 8.625368e+04, + -3.988716e+04, + 2.118987e+04, + 1.776151e+04, + -5.094497e+04, + -2.400663e+04, + 1.812357e+04, + 1.864229e+04, + 3.521782e+04, + -2.523723e+04, + 1.545985e+04, + 1.945299e+04, + -2.910575e+04, + -1.612809e+04, + 1.314789e+04, + 2.018464e+04, + 2.987436e+04, + -1.729633e+04, + 1.112528e+04, + 2.084999e+04, + -2.392041e+04, + -9.871844e+03, + 9.419435e+03, + 2.144328e+04, + 1.318656e+04, + -1.113363e+04, + 7.932171e+03, + 2.198012e+04, + -8.189886e+03, + -7.083342e+03, + 6.648923e+03, + 2.245346e+04, + 8.760018e+02, + -6.634529e+03, + 5.556208e+03, + 2.287527e+04, + -7.219063e+03, + -4.650361e+03, + 4.605098e+03, + 2.324459e+04, + -7.443951e+03, + -3.898973e+03, + 3.764874e+03, + 2.356703e+04, + -5.229746e+03, + -3.417661e+03, + 2.990255e+03, + 2.384152e+04, + -9.160621e+03, + -2.339852e+03, + 2.297538e+03, + 2.406739e+04, + -1.337575e+04, + -1.443204e+03, + 1.662712e+03, + 2.424699e+04, + -1.609842e+04, + -6.573803e+02, + 1.042947e+03, + 2.437881e+04, + -1.154888e+04, + -2.049765e+02, + 4.517902e+02, + 2.445949e+04, + 4.227183e+11, + 1.389648e+06, + 1.036346e+03, + 1.739462e+01, + -4.523986e+10, + 1.309428e+07, + 1.461077e+03, + 1.741507e+01, + -1.974469e+09, + 2.075506e+06, + 2.645040e+03, + 1.770254e+01, + -1.554063e+09, + 1.591460e+06, + 3.369179e+03, + 1.872211e+01, + 5.672809e+08, + -8.382778e+05, + 3.502720e+03, + 2.111515e+01, + -1.132935e+08, + 5.257210e+05, + 3.621481e+03, + 2.453096e+01, + 5.367205e+07, + 3.863978e+04, + 4.434495e+03, + 3.106808e+01, + -7.651470e+05, + 2.973158e+05, + 5.375363e+03, + 4.152440e+01, + -5.641271e+06, + 3.520079e+05, + 7.088158e+03, + 5.968817e+01, + -3.575740e+05, + 3.595429e+05, + 9.484804e+03, + 9.083227e+01, + -5.432283e+06, + 4.570748e+05, + 1.282057e+04, + 1.429497e+02, + -8.493195e+06, + 5.345880e+05, + 1.750590e+04, + 2.299714e+02, + -9.361727e+06, + 5.742448e+05, + 2.362945e+04, + 3.720855e+02, + -1.230376e+07, + 6.089220e+05, + 3.107881e+04, + 5.957043e+02, + -8.209413e+06, + 5.098829e+05, + 3.928027e+04, + 9.325726e+02, + -9.315159e+06, + 4.745999e+05, + 4.745855e+04, + 1.409587e+03, + -8.627264e+06, + 3.733993e+05, + 5.493900e+04, + 2.054851e+03, + -4.714765e+06, + 2.032292e+05, + 6.032301e+04, + 2.878534e+03, + -3.679437e+06, + 1.165562e+05, + 6.321237e+04, + 3.866403e+03, + -2.929350e+06, + 4.492419e+04, + 6.387975e+04, + 5.001581e+03, + -1.392612e+06, + -3.265661e+04, + 6.224732e+04, + 6.253081e+03, + -1.117804e+06, + -5.501965e+04, + 5.885362e+04, + 7.576411e+03, + -4.075604e+05, + -8.239287e+04, + 5.430578e+04, + 8.936806e+03, + -2.459750e+05, + -8.099482e+04, + 4.915270e+04, + 1.029496e+04, + -3.665911e+05, + -6.851276e+04, + 4.392374e+04, + 1.162710e+04, + 2.205685e+05, + -8.274490e+04, + 3.860977e+04, + 1.291372e+04, + -3.040342e+05, + -4.570146e+04, + 3.379260e+04, + 1.412701e+04, + 1.469667e+05, + -6.087770e+04, + 2.926964e+04, + 1.527950e+04, + -6.797871e+04, + -3.790137e+04, + 2.518196e+04, + 1.633998e+04, + 3.949307e+04, + -3.733814e+04, + 2.163770e+04, + 1.732591e+04, + -7.975621e+03, + -2.732830e+04, + 1.851668e+04, + 1.822774e+04, + -4.377782e+03, + -2.272640e+04, + 1.583173e+04, + 1.905445e+04, + 1.693589e+04, + -1.978767e+04, + 1.346464e+04, + 1.980645e+04, + -1.488896e+04, + -1.382418e+04, + 1.145439e+04, + 2.048569e+04, + -5.303294e+03, + -1.226164e+04, + 9.699219e+03, + 2.110102e+04, + 2.706972e+04, + -1.214607e+04, + 8.129372e+03, + 2.165037e+04, + -3.562524e+04, + -4.676288e+03, + 6.891074e+03, + 2.213611e+04, + 2.093737e+04, + -9.026232e+03, + 5.739331e+03, + 2.257705e+04, + -2.006414e+04, + -3.337389e+03, + 4.758662e+03, + 2.295476e+04, + -1.964465e+03, + -4.781112e+03, + 3.893292e+03, + 2.329090e+04, + -7.979526e+03, + -3.208613e+03, + 3.083342e+03, + 2.357289e+04, + -3.882281e+03, + -2.975486e+03, + 2.366732e+03, + 2.380648e+04, + -1.970221e+04, + -7.385175e+02, + 1.744297e+03, + 2.399093e+04, + -2.049545e+04, + -4.245408e+02, + 1.090574e+03, + 2.413137e+04, + -1.271643e+04, + -9.063678e+01, + 4.186658e+02, + 2.421482e+04, + -3.562425e+12, + 4.547613e+07, + 3.869422e+03, + 4.918330e+00, + 4.689183e+10, + -1.281786e+07, + 2.261597e+03, + 4.980296e+00, + 2.022864e+09, + -1.220456e+06, + 1.216501e+03, + 5.148946e+00, + 2.776720e+08, + -1.053418e+05, + 1.068025e+03, + 5.487525e+00, + -1.590271e+08, + 4.112991e+05, + 1.272512e+03, + 6.197900e+00, + 6.495931e+07, + -3.603970e+04, + 1.609987e+03, + 7.805828e+00, + -2.064038e+07, + 2.320516e+05, + 1.976444e+03, + 1.049337e+01, + 1.765744e+07, + 1.028749e+05, + 2.695696e+03, + 1.571579e+01, + -1.181768e+07, + 3.056096e+05, + 3.744644e+03, + 2.487848e+01, + 3.197837e+06, + 2.544026e+05, + 5.534911e+03, + 4.254333e+01, + -9.201137e+06, + 4.284098e+05, + 8.121123e+03, + 7.427706e+01, + -8.890947e+06, + 4.785445e+05, + 1.211126e+04, + 1.328518e+02, + -7.071586e+06, + 5.059339e+05, + 1.741186e+04, + 2.352960e+02, + -1.166674e+07, + 5.930738e+05, + 2.420576e+04, + 4.053939e+02, + -1.014664e+07, + 5.469944e+05, + 3.227826e+04, + 6.765805e+02, + -8.709155e+06, + 4.717684e+05, + 4.057628e+04, + 1.079331e+03, + -6.589641e+06, + 3.640900e+05, + 4.826717e+04, + 1.639785e+03, + -5.956205e+06, + 2.764700e+05, + 5.460139e+04, + 2.373352e+03, + -4.410054e+06, + 1.636818e+05, + 5.887661e+04, + 3.284026e+03, + -2.573675e+06, + 5.767791e+04, + 6.052561e+04, + 4.353163e+03, + -1.725557e+06, + -2.089540e+03, + 5.980763e+04, + 5.546333e+03, + -7.726710e+05, + -4.982537e+04, + 5.727085e+04, + 6.827655e+03, + -9.367723e+05, + -5.118449e+04, + 5.356326e+04, + 8.157893e+03, + -2.139498e+05, + -7.920098e+04, + 4.895601e+04, + 9.508497e+03, + -1.552485e+05, + -7.235301e+04, + 4.390792e+04, + 1.083723e+04, + -1.628579e+04, + -6.809604e+04, + 3.896658e+04, + 1.212598e+04, + -1.983318e+05, + -5.059195e+04, + 3.433105e+04, + 1.335883e+04, + 8.171771e+04, + -5.652750e+04, + 2.987115e+04, + 1.452950e+04, + -1.382147e+04, + -4.085430e+04, + 2.582431e+04, + 1.561625e+04, + -1.903892e+04, + -3.373542e+04, + 2.231868e+04, + 1.662797e+04, + 1.630797e+04, + -2.980642e+04, + 1.916625e+04, + 1.756241e+04, + -1.470429e+04, + -2.241600e+04, + 1.641147e+04, + 1.841734e+04, + 1.183830e+04, + -2.013913e+04, + 1.399466e+04, + 1.919851e+04, + -7.425767e+03, + -1.497561e+04, + 1.190037e+04, + 1.990483e+04, + 2.348122e+04, + -1.430663e+04, + 1.008697e+04, + 2.054362e+04, + -3.407580e+04, + -7.210622e+03, + 8.592568e+03, + 2.111580e+04, + 8.410728e+03, + -9.841158e+03, + 7.218391e+03, + 2.163577e+04, + 5.333101e+03, + -7.356348e+03, + 5.982069e+03, + 2.208915e+04, + -1.934314e+04, + -3.841909e+03, + 4.996690e+03, + 2.248734e+04, + 3.189408e+03, + -5.483261e+03, + 4.066681e+03, + 2.283908e+04, + -1.021377e+04, + -2.980445e+03, + 3.244087e+03, + 2.313320e+04, + -9.790041e+03, + -2.583961e+03, + 2.517956e+03, + 2.338071e+04, + -1.444370e+04, + -1.591158e+03, + 1.824665e+03, + 2.357756e+04, + -2.379887e+04, + -1.133726e+02, + 1.149303e+03, + 2.372235e+04, + -1.332327e+04, + -1.181356e+02, + 4.433913e+02, + 2.381143e+04, + -4.062495e+12, + 5.889514e+07, + 1.822539e+03, + 5.934704e-01, + 1.116655e+10, + -2.476749e+06, + 2.315678e+02, + 6.215788e-01, + -2.883849e+08, + 3.186874e+05, + 1.216092e+02, + 6.330776e-01, + -3.334973e+08, + 3.506258e+05, + 2.375575e+02, + 6.969603e-01, + 9.502123e+07, + -1.388013e+05, + 2.778272e+02, + 9.045791e-01, + -3.169474e+07, + 1.355526e+05, + 3.011117e+02, + 1.153722e+00, + 1.354177e+07, + 8.549983e+03, + 4.924110e+02, + 1.837267e+00, + -9.788296e+06, + 1.268912e+05, + 7.245476e+02, + 3.098311e+00, + 8.321999e+06, + 5.975755e+04, + 1.214653e+03, + 6.043943e+00, + -9.981085e+06, + 2.455768e+05, + 2.011040e+03, + 1.185919e+01, + -2.885803e+06, + 2.397529e+05, + 3.652004e+03, + 2.559525e+01, + -6.329634e+06, + 3.478969e+05, + 6.106085e+03, + 5.370172e+01, + -7.960277e+06, + 4.345711e+05, + 9.978396e+03, + 1.097524e+02, + -7.895936e+06, + 4.855802e+05, + 1.544416e+04, + 2.146203e+02, + -1.056970e+07, + 5.455151e+05, + 2.249529e+04, + 3.967972e+02, + -8.772676e+06, + 4.836844e+05, + 3.061098e+04, + 6.924183e+02, + -6.125317e+06, + 3.824122e+05, + 3.856863e+04, + 1.130737e+03, + -6.234374e+06, + 3.223025e+05, + 4.569520e+04, + 1.732649e+03, + -4.135207e+06, + 1.989626e+05, + 5.121311e+04, + 2.512630e+03, + -2.831010e+06, + 1.064359e+05, + 5.436969e+04, + 3.458681e+03, + -1.771421e+06, + 3.391272e+04, + 5.527105e+04, + 4.547677e+03, + -1.352058e+06, + -6.747689e+03, + 5.423442e+04, + 5.746928e+03, + -4.737948e+05, + -5.056302e+04, + 5.159311e+04, + 7.021275e+03, + -5.178401e+05, + -5.085618e+04, + 4.797068e+04, + 8.329029e+03, + -3.165613e+05, + -5.894560e+04, + 4.379803e+04, + 9.645661e+03, + -3.525713e+04, + -6.498724e+04, + 3.922274e+04, + 1.093910e+04, + -1.698033e+03, + -5.646027e+04, + 3.473194e+04, + 1.218335e+04, + -8.252137e+04, + -4.418587e+04, + 3.062394e+04, + 1.337026e+04, + -4.452976e+04, + -4.012949e+04, + 2.678876e+04, + 1.449551e+04, + 1.756583e+04, + -3.688401e+04, + 2.318145e+04, + 1.554675e+04, + 2.497374e+04, + -3.028839e+04, + 1.996805e+04, + 1.651698e+04, + -4.542787e+04, + -2.074654e+04, + 1.722708e+04, + 1.741034e+04, + 4.577114e+04, + -2.317554e+04, + 1.473888e+04, + 1.823360e+04, + -2.941513e+04, + -1.335336e+04, + 1.261663e+04, + 1.897704e+04, + 9.540414e+03, + -1.422160e+04, + 1.076932e+04, + 1.965858e+04, + -1.333019e+04, + -9.795617e+03, + 9.126910e+03, + 2.026983e+04, + 6.872783e+03, + -9.753800e+03, + 7.680151e+03, + 2.081939e+04, + -6.794840e+03, + -6.642494e+03, + 6.433964e+03, + 2.130449e+04, + -6.512347e+03, + -5.595285e+03, + 5.359979e+03, + 2.173466e+04, + -7.453009e+03, + -4.569078e+03, + 4.387344e+03, + 2.210973e+04, + -8.453112e+03, + -3.685525e+03, + 3.504406e+03, + 2.243008e+04, + -1.058157e+04, + -2.798516e+03, + 2.696662e+03, + 2.269567e+04, + -1.175275e+04, + -2.070349e+03, + 1.946314e+03, + 2.290618e+04, + -2.725053e+04, + 1.473825e+02, + 1.251869e+03, + 2.306034e+04, + -1.529872e+04, + -8.045642e+01, + 4.978280e+02, + 2.315872e+04, + 0, + 0, + 0, + 3.002487e-02, + -1.090846e+10, + 1.974400e+06, + 0, + 3.002487e-02, + 3.636683e+07, + -1.786622e+04, + 0, + 3.960728e-02, + -7.026847e+07, + 9.507055e+04, + 0, + 3.896845e-02, + 1.333478e+06, + 3.529875e+03, + 3.551876e+01, + 5.941092e-02, + 2.003892e+06, + 3.786981e+03, + 4.736528e+01, + 1.022123e-01, + -1.002646e+05, + 1.491867e+04, + 7.403866e+01, + 1.935646e-01, + 8.840045e+05, + 2.053897e+04, + 1.379171e+02, + 4.260977e-01, + -1.799941e+06, + 5.585624e+04, + 2.800918e+02, + 1.024040e+00, + -1.272606e+06, + 8.353843e+04, + 6.224092e+02, + 2.759094e+00, + -3.142945e+06, + 1.498386e+05, + 1.319586e+03, + 7.359927e+00, + -5.325514e+06, + 2.353986e+05, + 2.722502e+03, + 1.918334e+01, + -4.367873e+06, + 2.950794e+05, + 5.196144e+03, + 4.713202e+01, + -8.293792e+06, + 4.208244e+05, + 9.110856e+03, + 1.061188e+02, + -8.395418e+06, + 4.579295e+05, + 1.483469e+04, + 2.224875e+02, + -6.520037e+06, + 4.312038e+05, + 2.181675e+04, + 4.272194e+02, + -7.601962e+06, + 4.292473e+05, + 2.951377e+04, + 7.524578e+02, + -5.359980e+06, + 3.235804e+05, + 3.708090e+04, + 1.232011e+03, + -4.257096e+06, + 2.366275e+05, + 4.329759e+04, + 1.879326e+03, + -2.362298e+06, + 1.320983e+05, + 4.767316e+04, + 2.696374e+03, + -2.586387e+06, + 9.404854e+04, + 5.012795e+04, + 3.667154e+03, + -1.346937e+06, + 1.521702e+04, + 5.055045e+04, + 4.774654e+03, + -6.311932e+05, + -2.761653e+04, + 4.896823e+04, + 5.973547e+03, + -2.859925e+05, + -4.535140e+04, + 4.622372e+04, + 7.225477e+03, + -5.833449e+05, + -3.576030e+04, + 4.293299e+04, + 8.502104e+03, + 5.723729e+03, + -6.133686e+04, + 3.902591e+04, + 9.783052e+03, + -8.123325e+04, + -4.879934e+04, + 3.491969e+04, + 1.102637e+04, + -5.068165e+04, + -4.411026e+04, + 3.105343e+04, + 1.222640e+04, + -3.207428e+04, + -3.889547e+04, + 2.737029e+04, + 1.337046e+04, + -1.066219e+04, + -3.412928e+04, + 2.393260e+04, + 1.444923e+04, + -1.141680e+04, + -2.854544e+04, + 2.079563e+04, + 1.545628e+04, + -4.908479e+03, + -2.421760e+04, + 1.796966e+04, + 1.638943e+04, + 2.053346e+04, + -2.145813e+04, + 1.544534e+04, + 1.724714e+04, + -3.179755e+04, + -1.406796e+04, + 1.328479e+04, + 1.803018e+04, + 3.081852e+04, + -1.632250e+04, + 1.133044e+04, + 1.874762e+04, + -2.520860e+04, + -8.744463e+03, + 9.671271e+03, + 1.939042e+04, + -5.258707e+02, + -9.682975e+03, + 8.210156e+03, + 1.997663e+04, + -3.603629e+03, + -7.596047e+03, + 6.868361e+03, + 2.049617e+04, + -1.284514e+04, + -5.501197e+03, + 5.706315e+03, + 2.095412e+04, + 5.408753e+03, + -6.215871e+03, + 4.636466e+03, + 2.135343e+04, + -1.729670e+04, + -2.725560e+03, + 3.738994e+03, + 2.168992e+04, + -8.133455e+03, + -3.384342e+03, + 2.903206e+03, + 2.197692e+04, + -1.400569e+04, + -2.007834e+03, + 2.106764e+03, + 2.220291e+04, + -3.787921e+04, + 9.695897e+02, + 1.365023e+03, + 2.237077e+04, + -1.169926e+04, + -4.806728e+02, + 4.665493e+02, + 2.247814e+04, + 6.525532e+11, + -9.597776e+06, + -2.508142e+02, + 5.110617e-03, + -7.272307e+08, + 1.316266e+05, + 0, + 1.277654e-03, + 7.273367e+07, + -3.573244e+04, + 0, + 1.916481e-03, + -9.307074e+05, + 2.164022e+03, + 0, + 6.388271e-04, + -3.846153e+06, + 8.276968e+03, + 1.624622e+00, + 1.277654e-03, + 7.045428e+05, + -9.506031e+02, + 6.273509e+00, + 7.665925e-03, + 5.471221e+05, + 7.881141e+02, + 8.492069e+00, + 1.788716e-02, + -1.157790e+06, + 1.343443e+04, + 1.980918e+01, + 4.599555e-02, + 5.648178e+05, + 1.177962e+04, + 6.860591e+01, + 1.890928e-01, + -2.168944e+06, + 5.449721e+04, + 1.804408e+02, + 6.401047e-01, + -1.936415e+06, + 8.671467e+04, + 5.476078e+02, + 2.451180e+00, + -2.778014e+06, + 1.502939e+05, + 1.348026e+03, + 8.039000e+00, + -5.988957e+06, + 2.595586e+05, + 3.014769e+03, + 2.341237e+01, + -4.953844e+06, + 3.123771e+05, + 6.037281e+03, + 6.158549e+01, + -8.072078e+06, + 4.188727e+05, + 1.060684e+04, + 1.421314e+02, + -6.102258e+06, + 4.036899e+05, + 1.685401e+04, + 2.966719e+02, + -7.081157e+06, + 4.155400e+05, + 2.406072e+04, + 5.567832e+02, + -5.275326e+06, + 3.322858e+05, + 3.155165e+04, + 9.582758e+02, + -3.846919e+06, + 2.463955e+05, + 3.810789e+04, + 1.520520e+03, + -3.514763e+06, + 1.822427e+05, + 4.321496e+04, + 2.251031e+03, + -1.456565e+06, + 7.443224e+04, + 4.630479e+04, + 3.144755e+03, + -1.859068e+06, + 5.498326e+04, + 4.747600e+04, + 4.171486e+03, + -4.928980e+05, + -1.792985e+04, + 4.691705e+04, + 5.312605e+03, + -8.773971e+05, + -1.418775e+04, + 4.496428e+04, + 6.519951e+03, + -2.751454e+04, + -5.502387e+04, + 4.200632e+04, + 7.772248e+03, + -1.594475e+05, + -4.385961e+04, + 3.851029e+04, + 9.022491e+03, + -2.928118e+05, + -3.624179e+04, + 3.501918e+04, + 1.026196e+04, + 9.244874e+04, + -5.182584e+04, + 3.122779e+04, + 1.147202e+04, + -7.298447e+04, + -3.463156e+04, + 2.759798e+04, + 1.261967e+04, + -2.297138e+04, + -3.303978e+04, + 2.430195e+04, + 1.371250e+04, + -7.257520e+03, + -2.883089e+04, + 2.118824e+04, + 1.473725e+04, + 1.617806e+04, + -2.529034e+04, + 1.836369e+04, + 1.568909e+04, + -1.048687e+04, + -1.906491e+04, + 1.589586e+04, + 1.656705e+04, + -2.280875e+03, + -1.656326e+04, + 1.371907e+04, + 1.737679e+04, + -1.173034e+04, + -1.313659e+04, + 1.177337e+04, + 1.811680e+04, + 1.764221e+03, + -1.200134e+04, + 1.002274e+04, + 1.878901e+04, + -5.443919e+03, + -9.216609e+03, + 8.480824e+03, + 1.939176e+04, + -2.042247e+03, + -7.901444e+03, + 7.133254e+03, + 1.993055e+04, + -8.037811e+03, + -5.968600e+03, + 5.951562e+03, + 2.040675e+04, + -1.379071e+04, + -4.556409e+03, + 4.894801e+03, + 2.082428e+04, + -5.451456e+02, + -5.063627e+03, + 3.890115e+03, + 2.118233e+04, + -2.023326e+04, + -2.060668e+03, + 3.019280e+03, + 2.147555e+04, + -2.864907e+03, + -3.469182e+03, + 2.170665e+03, + 2.171383e+04, + -4.564474e+04, + 1.914149e+03, + 1.447545e+03, + 2.188399e+04, + -1.285998e+04, + -5.186207e+02, + 5.108418e+02, + 2.200120e+04, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -7.075985e+04, + 4.214961e+02, + 0, + 0, + 5.562181e+04, + 8.061994e+01, + 8.281078e-01, + 1.277654e-03, + -3.121437e+05, + 4.825055e+03, + 2.713965e+00, + 5.749444e-03, + -1.563799e+05, + 9.395735e+03, + 2.570856e+01, + 6.707684e-02, + -7.453272e+05, + 3.122976e+04, + 1.032542e+02, + 3.762692e-01, + -1.989081e+06, + 7.880134e+04, + 3.868377e+02, + 1.843655e+00, + -3.098191e+06, + 1.440545e+05, + 1.185918e+03, + 7.543909e+00, + -4.215556e+06, + 2.225784e+05, + 2.907656e+03, + 2.490978e+01, + -4.786020e+06, + 2.938944e+05, + 5.980692e+03, + 6.858128e+01, + -6.298563e+06, + 3.655079e+05, + 1.067540e+04, + 1.622455e+02, + -5.412413e+06, + 3.568233e+05, + 1.684205e+04, + 3.392913e+02, + -4.918343e+06, + 3.291889e+05, + 2.367207e+04, + 6.321366e+02, + -3.916896e+06, + 2.666399e+05, + 3.039895e+04, + 1.070198e+03, + -3.234356e+06, + 2.003322e+05, + 3.615701e+04, + 1.670192e+03, + -2.040334e+06, + 1.180905e+05, + 4.028384e+04, + 2.434229e+03, + -1.401604e+06, + 6.196017e+04, + 4.252555e+04, + 3.344716e+03, + -8.510153e+05, + 1.754662e+04, + 4.308474e+04, + 4.377716e+03, + -5.868429e+05, + -7.897552e+03, + 4.225322e+04, + 5.502610e+03, + -4.777308e+05, + -2.215277e+04, + 4.036574e+04, + 6.689373e+03, + -2.027395e+05, + -3.838610e+04, + 3.760893e+04, + 7.906894e+03, + 4.688571e+04, + -4.650040e+04, + 3.433909e+04, + 9.120592e+03, + -1.731682e+05, + -3.045624e+04, + 3.114684e+04, + 1.030870e+04, + -9.393385e+04, + -3.336297e+04, + 2.796966e+04, + 1.146998e+04, + 5.520659e+04, + -3.698224e+04, + 2.466929e+04, + 1.257910e+04, + -3.127735e+04, + -2.548739e+04, + 2.167580e+04, + 1.361953e+04, + -2.886510e+04, + -2.234154e+04, + 1.900618e+04, + 1.459990e+04, + 4.803892e+04, + -2.356220e+04, + 1.648513e+04, + 1.551250e+04, + -6.916297e+04, + -1.140155e+04, + 1.434094e+04, + 1.635055e+04, + 2.995112e+04, + -1.761090e+04, + 1.231851e+04, + 1.713096e+04, + -1.131187e+04, + -1.076782e+04, + 1.049085e+04, + 1.782950e+04, + -5.672132e+03, + -9.605872e+03, + 8.943086e+03, + 1.846438e+04, + -2.342928e+02, + -8.391650e+03, + 7.538626e+03, + 1.903310e+04, + -1.356312e+04, + -5.763390e+03, + 6.314320e+03, + 1.953688e+04, + -1.029218e+04, + -5.313462e+03, + 5.191616e+03, + 1.998094e+04, + -4.820491e+03, + -4.883491e+03, + 4.133093e+03, + 2.035985e+04, + -1.332017e+04, + -3.043612e+03, + 3.200526e+03, + 2.067237e+04, + -1.507804e+04, + -2.298738e+03, + 2.341341e+03, + 2.092387e+04, + -3.372668e+04, + 2.668844e+02, + 1.517180e+03, + 2.111023e+04, + -1.829462e+04, + -1.213923e+02, + 6.004736e+02, + 2.122965e+04, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -1.017242e+04, + 1.750194e+02, + 0, + 0, + -1.457144e+04, + 7.281291e+02, + 8.823561e-01, + 1.916481e-03, + -8.138557e+04, + 3.915626e+03, + 6.731239e+00, + 2.044247e-02, + -3.416115e+05, + 1.616098e+04, + 4.346558e+01, + 1.712057e-01, + -1.112109e+06, + 4.948532e+04, + 2.166628e+02, + 1.116031e+00, + -1.851122e+06, + 9.973810e+04, + 7.987332e+02, + 5.514355e+00, + -2.976474e+06, + 1.703720e+05, + 2.185875e+03, + 2.036134e+01, + -3.752852e+06, + 2.346189e+05, + 4.835726e+03, + 6.046371e+01, + -3.916406e+06, + 2.725329e+05, + 8.928559e+03, + 1.496005e+02, + -4.124056e+06, + 2.880126e+05, + 1.427455e+04, + 3.184585e+02, + -3.454381e+06, + 2.560391e+05, + 2.029483e+04, + 6.004725e+02, + -2.730599e+06, + 2.065880e+05, + 2.611242e+04, + 1.020835e+03, + -2.156132e+06, + 1.532252e+05, + 3.106996e+04, + 1.593564e+03, + -1.423653e+06, + 9.444510e+04, + 3.467497e+04, + 2.319182e+03, + -1.066952e+06, + 5.365130e+04, + 3.674970e+04, + 3.182752e+03, + -5.913676e+05, + 1.479975e+04, + 3.736478e+04, + 4.162645e+03, + -4.507312e+05, + -3.442068e+03, + 3.676283e+04, + 5.228191e+03, + -3.349898e+05, + -1.694648e+04, + 3.524585e+04, + 6.352700e+03, + -5.373997e+04, + -3.272371e+04, + 3.296933e+04, + 7.506143e+03, + -1.042929e+05, + -2.794349e+04, + 3.037961e+04, + 8.657850e+03, + -1.338463e+05, + -2.558203e+04, + 2.771508e+04, + 9.797088e+03, + 4.568200e+04, + -3.329463e+04, + 2.485715e+04, + 1.090629e+04, + -6.786858e+04, + -2.165789e+04, + 2.213772e+04, + 1.196178e+04, + 1.306047e+04, + -2.435543e+04, + 1.958249e+04, + 1.296915e+04, + -3.322576e+04, + -1.756840e+04, + 1.718597e+04, + 1.391169e+04, + 2.749390e+04, + -1.920271e+04, + 1.496912e+04, + 1.479267e+04, + -3.110219e+04, + -1.154084e+04, + 1.301793e+04, + 1.560216e+04, + -6.075291e+03, + -1.225057e+04, + 1.124355e+04, + 1.635251e+04, + 6.180475e+02, + -1.069972e+04, + 9.569241e+03, + 1.703160e+04, + -6.748771e+03, + -8.170462e+03, + 8.103632e+03, + 1.764032e+04, + -1.585713e+04, + -6.165047e+03, + 6.808130e+03, + 1.818386e+04, + -6.803412e+01, + -6.704295e+03, + 5.583407e+03, + 1.866238e+04, + -1.271216e+04, + -4.147672e+03, + 4.500136e+03, + 1.906922e+04, + -1.789297e+04, + -3.078470e+03, + 3.522047e+03, + 1.941335e+04, + -1.300839e+04, + -2.995513e+03, + 2.547822e+03, + 1.968999e+04, + -3.739496e+04, + 4.124892e+02, + 1.647666e+03, + 1.989124e+04, + -1.991360e+04, + -1.343689e+02, + 6.540701e+02, + 2.002139e+04, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -3.836497e+03, + 1.200044e+02, + 0, + 0, + -6.317725e+03, + 7.299639e+02, + 9.947280e-01, + 3.194135e-03, + -1.879736e+05, + 7.112439e+03, + 1.009800e+01, + 4.216259e-02, + -2.264187e+05, + 1.783873e+04, + 8.824183e+01, + 4.893415e-01, + -1.027429e+06, + 5.516548e+04, + 3.642565e+02, + 2.717570e+00, + -1.310055e+06, + 9.297558e+04, + 1.199666e+03, + 1.188410e+01, + -2.088964e+06, + 1.472067e+05, + 2.903674e+03, + 3.864073e+01, + -2.404946e+06, + 1.832584e+05, + 5.807015e+03, + 1.028959e+02, + -2.419199e+06, + 1.963782e+05, + 9.802613e+03, + 2.313167e+02, + -2.144173e+06, + 1.846474e+05, + 1.448111e+04, + 4.529782e+02, + -1.755673e+06, + 1.566924e+05, + 1.925615e+04, + 7.929135e+02, + -1.556385e+06, + 1.260006e+05, + 2.357954e+04, + 1.267487e+03, + -9.670740e+05, + 7.884178e+04, + 2.693555e+04, + 1.882001e+03, + -5.837683e+05, + 4.472897e+04, + 2.907526e+04, + 2.623982e+03, + -5.604275e+05, + 2.840427e+04, + 3.020165e+04, + 3.477349e+03, + -3.582842e+05, + 6.067834e+03, + 3.034485e+04, + 4.425576e+03, + -2.245319e+05, + -8.290479e+03, + 2.953728e+04, + 5.439338e+03, + -1.015845e+05, + -1.802273e+04, + 2.804648e+04, + 6.490440e+03, + -4.708202e+04, + -2.097995e+04, + 2.617044e+04, + 7.553762e+03, + -9.140648e+04, + -1.778019e+04, + 2.415851e+04, + 8.612631e+03, + -3.474920e+04, + -2.078888e+04, + 2.200252e+04, + 9.655604e+03, + 2.006550e+04, + -2.169175e+04, + 1.976088e+04, + 1.066217e+04, + -7.457237e+04, + -1.281394e+04, + 1.769310e+04, + 1.162183e+04, + 1.660390e+04, + -1.849862e+04, + 1.562554e+04, + 1.253795e+04, + -1.242914e+03, + -1.387174e+04, + 1.364603e+04, + 1.338579e+04, + -2.136653e+04, + -1.038594e+04, + 1.192412e+04, + 1.417293e+04, + 8.461670e+02, + -1.092230e+04, + 1.029799e+04, + 1.490007e+04, + -1.726136e+04, + -7.648424e+03, + 8.804960e+03, + 1.555802e+04, + -5.951019e+03, + -7.711382e+03, + 7.418584e+03, + 1.615128e+04, + -1.124333e+04, + -5.937896e+03, + 6.131419e+03, + 1.667197e+04, + -7.000456e+03, + -5.382316e+03, + 4.953545e+03, + 1.712215e+04, + -1.739957e+04, + -3.384351e+03, + 3.889292e+03, + 1.749934e+04, + -2.766408e+04, + -1.885413e+03, + 2.872322e+03, + 1.780661e+04, + -2.473009e+04, + -1.511121e+03, + 1.795912e+03, + 1.803592e+04, + -1.893613e+04, + -4.433274e+02, + 7.896820e+02, + 1.817402e+04, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -1.795339e+03, + 1.024806e+02, + 0, + 0, + -2.505222e+04, + 1.240280e+03, + 1.304988e+00, + 5.749444e-03, + -4.666245e+04, + 4.461716e+03, + 1.801239e+01, + 1.073229e-01, + -2.724635e+05, + 1.761495e+04, + 9.851115e+01, + 7.710643e-01, + -4.861356e+05, + 3.717743e+04, + 4.101052e+02, + 4.193261e+00, + -6.383714e+05, + 6.152061e+04, + 1.168007e+03, + 1.598473e+01, + -1.205391e+06, + 9.889684e+04, + 2.636565e+03, + 4.738883e+01, + -1.147720e+06, + 1.106241e+05, + 5.004828e+03, + 1.183715e+02, + -1.133494e+06, + 1.155726e+05, + 8.024451e+03, + 2.508700e+02, + -1.063750e+06, + 1.090501e+05, + 1.144213e+04, + 4.682622e+02, + -7.206625e+05, + 8.651512e+04, + 1.483243e+04, + 7.896286e+02, + -8.230661e+05, + 7.733914e+04, + 1.788080e+04, + 1.224383e+03, + -3.893929e+05, + 4.348949e+04, + 2.028440e+04, + 1.779031e+03, + -4.194027e+05, + 3.349138e+04, + 2.185878e+04, + 2.439030e+03, + -1.895883e+05, + 1.198418e+04, + 2.268839e+04, + 3.196090e+03, + -2.138071e+05, + 6.670906e+03, + 2.280864e+04, + 4.026859e+03, + -6.125361e+04, + -6.683706e+03, + 2.234923e+04, + 4.916377e+03, + -1.266566e+05, + -5.092214e+03, + 2.146339e+04, + 5.838900e+03, + -3.668092e+04, + -1.292182e+04, + 2.023530e+04, + 6.783060e+03, + -4.502149e+04, + -1.220835e+04, + 1.873724e+04, + 7.722602e+03, + -6.724879e+03, + -1.428205e+04, + 1.712856e+04, + 8.645906e+03, + -3.147242e+04, + -1.120290e+04, + 1.550800e+04, + 9.537867e+03, + 4.822493e+03, + -1.299009e+04, + 1.388952e+04, + 1.039406e+04, + -3.661611e+04, + -8.222351e+03, + 1.234509e+04, + 1.120095e+04, + 7.706524e+02, + -1.086522e+04, + 1.080666e+04, + 1.196049e+04, + -1.428372e+04, + -7.903936e+03, + 9.320418e+03, + 1.265373e+04, + -1.558705e+04, + -6.942237e+03, + 7.944124e+03, + 1.328427e+04, + 3.569541e+03, + -7.689284e+03, + 6.605008e+03, + 1.384543e+04, + -2.207606e+04, + -3.799092e+03, + 5.433831e+03, + 1.433020e+04, + -2.173362e+04, + -3.685308e+03, + 4.312741e+03, + 1.475032e+04, + -1.842206e+04, + -3.390404e+03, + 3.139013e+03, + 1.508986e+04, + -4.332377e+04, + 1.904433e+02, + 2.023367e+03, + 1.533848e+04, + -2.551285e+04, + -6.475346e+01, + 8.159825e+02, + 1.549771e+04, +}; + +double solarDataset520[] = +{ + 3.441260e+12, + 4.257012e+05, + 9.159649e+03, + 2.155997e+02, + -3.813319e+11, + 9.728458e+07, + 1.224196e+04, + 2.157753e+02, + -8.993466e+09, + 5.812620e+06, + 1.906304e+04, + 2.179990e+02, + 2.219112e+09, + -1.465148e+06, + 1.997638e+04, + 2.245501e+02, + -4.029785e+08, + 1.497071e+06, + 2.081556e+04, + 2.372707e+02, + 7.073014e+07, + 4.201511e+05, + 2.262724e+04, + 2.603452e+02, + 1.148052e+08, + 3.113398e+05, + 2.446750e+04, + 2.971461e+02, + -6.975728e+07, + 9.816228e+05, + 2.748132e+04, + 3.534071e+02, + 4.543997e+07, + 3.776559e+05, + 3.142461e+04, + 4.400715e+02, + -1.929005e+07, + 8.214878e+05, + 3.615734e+04, + 5.652811e+02, + -6.188209e+06, + 6.920153e+05, + 4.256955e+04, + 7.501487e+02, + -2.183429e+07, + 7.943841e+05, + 4.986206e+04, + 1.014418e+03, + -1.140788e+07, + 5.966216e+05, + 5.766701e+04, + 1.385850e+03, + -1.246868e+07, + 5.332061e+05, + 6.507698e+04, + 1.885028e+03, + -1.535117e+07, + 4.615705e+05, + 7.180659e+04, + 2.535598e+03, + -6.922309e+06, + 2.072982e+05, + 7.639904e+04, + 3.351496e+03, + -7.654747e+06, + 1.405907e+05, + 7.834404e+04, + 4.319751e+03, + -3.608348e+06, + -1.032324e+04, + 7.774929e+04, + 5.429596e+03, + -3.310273e+06, + -5.122568e+04, + 7.470562e+04, + 6.644330e+03, + -1.803698e+06, + -1.089710e+05, + 6.977953e+04, + 7.932441e+03, + -4.481058e+05, + -1.414144e+05, + 6.339972e+04, + 9.249011e+03, + -8.474652e+05, + -1.138910e+05, + 5.661672e+04, + 1.055570e+04, + 9.091255e+04, + -1.286682e+05, + 4.971740e+04, + 1.183266e+04, + -3.296997e+05, + -9.203473e+04, + 4.316623e+04, + 1.304789e+04, + 6.138098e+04, + -9.130578e+04, + 3.710169e+04, + 1.419808e+04, + 8.019984e+04, + -7.334147e+04, + 3.160993e+04, + 1.526375e+04, + -1.056039e+05, + -5.125085e+04, + 2.694897e+04, + 1.624692e+04, + 3.523169e+04, + -4.850597e+04, + 2.280818e+04, + 1.715304e+04, + 6.870219e+04, + -3.957775e+04, + 1.917548e+04, + 1.797303e+04, + -1.326338e+04, + -2.682913e+04, + 1.621399e+04, + 1.871381e+04, + 1.157345e+03, + -2.265762e+04, + 1.371834e+04, + 1.938801e+04, + 1.114799e+04, + -1.872180e+04, + 1.154622e+04, + 1.999570e+04, + 4.035315e+02, + -1.421776e+04, + 9.712803e+03, + 2.054042e+04, + -8.685193e+01, + -1.141822e+04, + 8.163078e+03, + 2.102864e+04, + 2.765763e+03, + -9.358492e+03, + 6.836780e+03, + 2.146394e+04, + 9.596016e+02, + -7.320212e+03, + 5.716072e+03, + 2.184997e+04, + -3.591287e+03, + -5.538701e+03, + 4.774094e+03, + 2.219169e+04, + 4.877164e+02, + -4.837933e+03, + 3.959721e+03, + 2.249316e+04, + -3.944127e+03, + -3.487922e+03, + 3.263769e+03, + 2.275573e+04, + -8.194186e+03, + -2.533610e+03, + 2.659495e+03, + 2.298365e+04, + 1.810861e+03, + -3.022148e+03, + 2.090564e+03, + 2.317744e+04, + -8.870991e+03, + -1.251568e+03, + 1.616934e+03, + 2.333414e+04, + -1.072378e+04, + -9.168446e+02, + 1.182863e+03, + 2.346196e+04, + -1.120528e+04, + -5.191012e+02, + 7.308553e+02, + 2.355571e+04, + -8.359487e+03, + -1.040853e+02, + 3.073388e+02, + 2.361176e+04, + 2.035431e+12, + 2.901375e+07, + 4.780096e+03, + 9.809298e+01, + -5.474072e+11, + 1.251406e+08, + 7.594803e+03, + 9.819442e+01, + 1.394761e+10, + -7.629265e+06, + 1.388420e+04, + 9.997117e+01, + -1.679680e+09, + 2.117312e+06, + 1.337516e+04, + 1.041901e+02, + 8.766416e+08, + -9.398136e+05, + 1.402618e+04, + 1.131463e+02, + -1.075785e+08, + 9.687180e+05, + 1.495756e+04, + 1.278750e+02, + 2.864970e+07, + 5.123123e+05, + 1.720256e+04, + 1.533065e+02, + 9.381308e+06, + 5.907406e+05, + 1.985760e+04, + 1.937223e+02, + 6.513705e+05, + 6.528921e+05, + 2.353833e+04, + 2.568166e+02, + -5.060574e+06, + 7.148069e+05, + 2.845009e+04, + 3.540337e+02, + -2.618546e+07, + 8.664181e+05, + 3.479716e+04, + 5.020198e+02, + -3.042888e+06, + 6.182842e+05, + 4.212681e+04, + 7.239051e+02, + -2.186162e+07, + 7.922891e+05, + 5.016165e+04, + 1.040177e+03, + -1.315392e+07, + 5.761193e+05, + 5.868562e+04, + 1.485943e+03, + -1.193382e+07, + 4.596976e+05, + 6.604172e+04, + 2.079489e+03, + -1.054882e+07, + 3.262631e+05, + 7.180635e+04, + 2.836858e+03, + -7.325607e+06, + 1.634016e+05, + 7.502793e+04, + 3.759447e+03, + -3.572050e+06, + 1.753149e+04, + 7.527153e+04, + 4.828034e+03, + -3.650321e+06, + -2.059097e+04, + 7.313771e+04, + 6.010651e+03, + -1.306615e+06, + -1.038379e+05, + 6.897657e+04, + 7.278719e+03, + -1.434776e+06, + -1.010734e+05, + 6.337556e+04, + 8.585264e+03, + -2.928626e+05, + -1.291286e+05, + 5.694775e+04, + 9.900359e+03, + -2.016734e+05, + -1.130713e+05, + 5.027089e+04, + 1.118410e+04, + -2.496937e+05, + -9.435927e+04, + 4.393471e+04, + 1.241926e+04, + 2.877942e+04, + -8.902541e+04, + 3.793319e+04, + 1.359137e+04, + -4.486830e+04, + -6.924231e+04, + 3.248876e+04, + 1.468407e+04, + 6.596483e+04, + -6.067637e+04, + 2.767914e+04, + 1.569668e+04, + 1.919128e+03, + -4.535751e+04, + 2.353265e+04, + 1.662511e+04, + -1.625891e+04, + -3.587718e+04, + 1.999336e+04, + 1.747626e+04, + 4.744522e+02, + -2.997748e+04, + 1.689298e+04, + 1.825163e+04, + 4.486151e+04, + -2.618098e+04, + 1.419742e+04, + 1.895127e+04, + -1.216274e+04, + -1.716435e+04, + 1.198976e+04, + 1.957871e+04, + -1.352060e+03, + -1.478644e+04, + 1.013202e+04, + 2.014715e+04, + 1.854542e+04, + -1.309060e+04, + 8.504452e+03, + 2.065628e+04, + -1.365895e+04, + -8.081327e+03, + 7.172319e+03, + 2.110940e+04, + 7.774980e+03, + -8.328556e+03, + 6.022138e+03, + 2.151710e+04, + -1.162068e+04, + -5.117308e+03, + 5.035574e+03, + 2.187637e+04, + 5.375795e+02, + -5.332525e+03, + 4.164918e+03, + 2.219523e+04, + 4.583329e+03, + -4.486221e+03, + 3.397818e+03, + 2.247013e+04, + -1.191642e+04, + -2.061146e+03, + 2.790819e+03, + 2.270630e+04, + -4.488671e+02, + -2.946084e+03, + 2.225430e+03, + 2.291181e+04, + -1.079293e+04, + -1.286923e+03, + 1.715923e+03, + 2.307911e+04, + -7.008889e+03, + -1.462410e+03, + 1.229813e+03, + 2.321411e+04, + -1.789120e+04, + 1.465535e+02, + 7.731271e+02, + 2.331052e+04, + -8.173676e+03, + -1.495901e+02, + 2.878103e+02, + 2.337081e+04, + 1.247757e+12, + -4.159768e+06, + 4.106319e+03, + 2.671606e+01, + -1.699001e+11, + 3.477713e+07, + 5.075193e+03, + 2.679200e+01, + 7.370859e+09, + -4.831578e+06, + 6.046716e+03, + 2.761225e+01, + 1.300189e+09, + -8.314183e+05, + 5.253834e+03, + 2.933335e+01, + -4.200184e+08, + 1.179100e+06, + 5.779982e+03, + 3.268336e+01, + 1.995671e+08, + -6.254952e+04, + 6.866446e+03, + 3.957643e+01, + -6.307859e+07, + 7.234239e+05, + 8.143396e+03, + 5.096381e+01, + 2.152375e+07, + 3.977221e+05, + 1.040391e+04, + 7.159662e+01, + -8.539422e+06, + 6.140945e+05, + 1.326918e+04, + 1.058127e+02, + -1.078821e+07, + 6.779304e+05, + 1.750490e+04, + 1.635930e+02, + -1.275937e+07, + 7.382400e+05, + 2.313246e+04, + 2.590606e+02, + -1.872188e+07, + 8.098821e+05, + 3.031069e+04, + 4.127114e+02, + -1.831776e+07, + 7.681029e+05, + 3.876504e+04, + 6.520684e+02, + -1.327143e+07, + 6.348936e+05, + 4.759282e+04, + 1.005990e+03, + -1.250117e+07, + 5.390875e+05, + 5.602596e+04, + 1.500068e+03, + -1.108426e+07, + 4.074780e+05, + 6.331628e+04, + 2.157158e+03, + -7.144209e+06, + 2.282751e+05, + 6.830848e+04, + 2.985745e+03, + -5.593622e+06, + 1.138962e+05, + 7.048728e+04, + 3.973074e+03, + -2.744275e+06, + -8.550059e+03, + 6.988463e+04, + 5.096047e+03, + -2.060504e+06, + -5.271929e+04, + 6.700169e+04, + 6.315326e+03, + -1.188937e+06, + -8.943405e+04, + 6.253661e+04, + 7.597067e+03, + -7.019956e+05, + -1.025893e+05, + 5.696328e+04, + 8.901951e+03, + -1.520013e+05, + -1.094255e+05, + 5.085384e+04, + 1.019564e+04, + -4.279199e+05, + -8.501426e+04, + 4.481075e+04, + 1.144946e+04, + 2.473795e+05, + -9.671243e+04, + 3.890686e+04, + 1.265006e+04, + -1.850617e+05, + -6.070952e+04, + 3.361721e+04, + 1.377212e+04, + -1.055200e+04, + -5.889414e+04, + 2.890583e+04, + 1.482700e+04, + 8.554444e+04, + -5.153152e+04, + 2.458599e+04, + 1.579867e+04, + -3.284826e+04, + -3.517891e+04, + 2.094752e+04, + 1.668657e+04, + 2.250379e+04, + -3.169404e+04, + 1.781798e+04, + 1.750203e+04, + 7.187402e+02, + -2.410799e+04, + 1.510178e+04, + 1.824183e+04, + -1.312021e+04, + -1.879373e+04, + 1.278706e+04, + 1.891267e+04, + 2.993219e+04, + -1.781145e+04, + 1.075453e+04, + 1.951760e+04, + -4.534421e+03, + -1.160389e+04, + 9.076530e+03, + 2.005681e+04, + -9.759605e+03, + -9.241454e+03, + 7.683732e+03, + 2.054363e+04, + 1.191358e+04, + -9.141714e+03, + 6.435051e+03, + 2.097932e+04, + -8.934994e+03, + -5.555194e+03, + 5.395231e+03, + 2.136320e+04, + -6.609238e+03, + -4.931263e+03, + 4.502483e+03, + 2.170563e+04, + 5.379062e+03, + -5.019351e+03, + 3.680346e+03, + 2.200446e+04, + -1.353400e+04, + -2.242077e+03, + 3.005639e+03, + 2.225951e+04, + 2.319882e+03, + -3.483057e+03, + 2.379456e+03, + 2.248033e+04, + -1.195571e+04, + -1.258098e+03, + 1.838619e+03, + 2.265852e+04, + -8.857921e+03, + -1.424507e+03, + 1.329970e+03, + 2.280386e+04, + -1.138151e+04, + -6.455122e+02, + 8.319621e+02, + 2.290844e+04, + -8.381217e+03, + -2.582078e+02, + 3.786418e+02, + 2.297301e+04, + -6.454234e+12, + 9.523189e+07, + 2.495739e+03, + 3.168572e+00, + 1.564445e+09, + -3.199648e+05, + 2.543842e+01, + 3.206831e+00, + -1.131465e+10, + 7.292156e+06, + 1.655634e+01, + 3.207991e+00, + 4.572081e+08, + -3.622419e+05, + 1.152075e+03, + 3.598120e+00, + -1.359952e+08, + 3.523478e+05, + 1.247960e+03, + 4.304180e+00, + 8.530206e+07, + -7.761152e+04, + 1.537856e+03, + 5.847887e+00, + -4.046656e+06, + 2.350133e+05, + 1.924059e+03, + 8.398513e+00, + -9.369154e+06, + 3.013373e+05, + 2.894860e+03, + 1.369454e+01, + 1.558148e+05, + 3.157345e+05, + 4.412027e+03, + 2.445354e+01, + -9.593296e+06, + 4.737070e+05, + 6.780646e+03, + 4.538315e+01, + -1.399124e+07, + 5.975570e+05, + 1.057839e+04, + 8.641807e+01, + -1.458432e+07, + 6.713753e+05, + 1.603092e+04, + 1.636301e+02, + -1.575957e+07, + 7.190945e+05, + 2.317086e+04, + 3.001042e+02, + -1.469259e+07, + 6.919930e+05, + 3.170783e+04, + 5.261023e+02, + -1.349217e+07, + 6.160599e+05, + 4.083870e+04, + 8.742847e+02, + -1.067177e+07, + 4.778233e+05, + 4.945175e+04, + 1.374014e+03, + -7.035158e+06, + 3.153236e+05, + 5.638367e+04, + 2.041943e+03, + -6.267557e+06, + 2.139302e+05, + 6.107922e+04, + 2.878901e+03, + -3.507150e+06, + 7.645845e+04, + 6.313857e+04, + 3.875261e+03, + -2.677493e+06, + 9.369796e+03, + 6.254822e+04, + 4.997522e+03, + -1.075512e+06, + -6.097170e+04, + 5.980948e+04, + 6.210996e+03, + -7.903147e+05, + -7.423698e+04, + 5.563430e+04, + 7.471213e+03, + -4.489454e+05, + -8.347235e+04, + 5.072914e+04, + 8.748128e+03, + -2.919591e+05, + -8.138940e+04, + 4.543441e+04, + 1.001114e+04, + -1.257206e+05, + -7.734475e+04, + 4.007037e+04, + 1.123568e+04, + 7.103736e+04, + -7.237268e+04, + 3.490447e+04, + 1.240137e+04, + -1.651301e+05, + -4.973913e+04, + 3.027758e+04, + 1.349609e+04, + 2.019954e+05, + -5.792714e+04, + 2.601103e+04, + 1.452225e+04, + -2.203643e+05, + -2.570562e+04, + 2.240670e+04, + 1.546308e+04, + 1.590559e+05, + -4.244143e+04, + 1.908034e+04, + 1.634265e+04, + -4.466576e+04, + -2.108640e+04, + 1.622655e+04, + 1.712995e+04, + -3.174091e+03, + -2.048205e+04, + 1.388742e+04, + 1.785684e+04, + 2.790637e+04, + -1.838833e+04, + 1.176019e+04, + 1.851513e+04, + -2.641650e+04, + -1.106596e+04, + 1.000103e+04, + 1.910723e+04, + 1.001047e+04, + -1.197742e+04, + 8.449539e+03, + 1.964524e+04, + -6.360157e+03, + -8.288998e+03, + 7.088763e+03, + 2.012232e+04, + 9.035106e+03, + -7.929982e+03, + 5.927220e+03, + 2.054736e+04, + -1.377516e+04, + -4.429300e+03, + 4.963148e+03, + 2.092106e+04, + -1.844206e+03, + -4.907418e+03, + 4.100319e+03, + 2.125328e+04, + -1.021359e+03, + -3.955754e+03, + 3.315436e+03, + 2.153793e+04, + -1.171826e+04, + -2.188327e+03, + 2.657105e+03, + 2.177916e+04, + -3.402617e+03, + -2.688462e+03, + 2.032883e+03, + 2.198166e+04, + -1.058462e+04, + -1.288381e+03, + 1.472992e+03, + 2.213899e+04, + -1.978474e+04, + 9.938386e+00, + 9.552157e+02, + 2.225671e+04, + -1.234013e+04, + -2.436993e+00, + 3.887609e+02, + 2.233175e+04, + 0, + 0, + 0, + 1.826016e-01, + -1.781927e+10, + 3.424198e+06, + 0, + 1.826016e-01, + 3.387426e+08, + -1.818905e+05, + 4.801526e+01, + 2.011516e-01, + -1.332156e+08, + 1.980034e+05, + 3.787939e+01, + 2.092672e-01, + 7.713524e+06, + 2.074307e+04, + 1.278808e+02, + 2.794094e-01, + -1.191841e+07, + 6.762032e+04, + 1.970895e+02, + 4.457797e-01, + 1.168172e+07, + 9.597587e+03, + 3.212529e+02, + 8.753281e-01, + -7.375921e+06, + 1.272459e+05, + 5.312329e+02, + 1.747178e+00, + -1.857624e+06, + 1.420437e+05, + 1.084825e+03, + 4.192300e+00, + -4.445982e+06, + 2.336181e+05, + 2.069508e+03, + 1.014047e+01, + -9.256611e+06, + 3.691046e+05, + 3.961112e+03, + 2.445296e+01, + -1.146668e+07, + 4.853842e+05, + 7.269072e+03, + 5.735080e+01, + -1.079778e+07, + 5.581243e+05, + 1.230141e+04, + 1.261528e+02, + -1.490989e+07, + 6.582014e+05, + 1.920854e+04, + 2.563772e+02, + -1.194617e+07, + 5.952954e+05, + 2.764421e+04, + 4.835162e+02, + -1.014583e+07, + 5.122274e+05, + 3.635427e+04, + 8.392605e+02, + -7.408351e+06, + 3.853587e+05, + 4.438509e+04, + 1.350733e+03, + -6.570506e+06, + 2.855657e+05, + 5.083123e+04, + 2.031559e+03, + -3.758086e+06, + 1.418179e+05, + 5.493214e+04, + 2.882348e+03, + -2.683018e+06, + 6.098002e+04, + 5.642001e+04, + 3.878421e+03, + -1.659085e+06, + -4.330207e+03, + 5.570503e+04, + 4.991285e+03, + -7.795872e+05, + -4.882689e+04, + 5.316507e+04, + 6.183054e+03, + -5.845028e+05, + -5.942304e+04, + 4.949336e+04, + 7.415604e+03, + -5.798157e+05, + -6.026377e+04, + 4.517923e+04, + 8.660316e+03, + 1.100702e+05, + -8.130453e+04, + 4.031747e+04, + 9.888095e+03, + -6.137872e+04, + -6.032203e+04, + 3.558748e+04, + 1.106470e+04, + -1.487668e+05, + -4.829607e+04, + 3.132184e+04, + 1.219098e+04, + 6.027672e+04, + -5.086659e+04, + 2.722487e+04, + 1.325775e+04, + -5.216647e+04, + -3.589720e+04, + 2.352245e+04, + 1.424838e+04, + 3.877460e+04, + -3.464697e+04, + 2.023029e+04, + 1.516931e+04, + 2.888551e+03, + -2.575328e+04, + 1.734715e+04, + 1.601318e+04, + -2.191980e+04, + -1.979610e+04, + 1.488919e+04, + 1.678848e+04, + 2.034645e+04, + -1.902784e+04, + 1.268427e+04, + 1.749745e+04, + -1.314803e+04, + -1.300850e+04, + 1.078756e+04, + 1.813689e+04, + 7.781400e+03, + -1.225965e+04, + 9.144667e+03, + 1.871660e+04, + -1.204517e+04, + -8.419968e+03, + 7.723806e+03, + 1.923488e+04, + 7.765000e+03, + -8.536896e+03, + 6.472742e+03, + 1.969918e+04, + -4.584280e+03, + -5.708889e+03, + 5.406950e+03, + 2.010716e+04, + -7.904211e+03, + -4.491134e+03, + 4.503836e+03, + 2.046843e+04, + -5.550058e+03, + -3.997071e+03, + 3.675945e+03, + 2.078373e+04, + -5.689591e+03, + -3.236437e+03, + 2.922488e+03, + 2.105140e+04, + -7.906009e+03, + -2.378643e+03, + 2.250590e+03, + 2.127255e+04, + -9.071692e+03, + -1.745359e+03, + 1.638712e+03, + 2.144855e+04, + -2.806270e+04, + 6.649150e+02, + 1.075166e+03, + 2.157900e+04, + -1.103646e+04, + -2.530936e+02, + 3.990825e+02, + 2.166428e+04, + 1.172160e+12, + -1.700048e+07, + -4.587932e+02, + 9.275000e-03, + -5.008907e+09, + 9.229085e+05, + 0, + 2.318750e-03, + 3.111030e+07, + -1.680365e+04, + 3.936294e+00, + 6.956250e-03, + -5.703770e+07, + 5.741850e+04, + 2.940735e+00, + 7.535938e-03, + 4.750408e+06, + -7.579855e+03, + 6.576946e+00, + 1.797031e-02, + -4.550239e+06, + 1.931719e+04, + 6.393513e+00, + 2.202812e-02, + 1.542980e+06, + 4.706168e+03, + 3.340755e+01, + 6.202656e-02, + -1.997114e+06, + 3.649206e+04, + 7.619777e+01, + 1.739063e-01, + -1.593482e+06, + 6.356589e+04, + 2.379679e+02, + 6.562062e-01, + -4.537893e+06, + 1.384804e+05, + 6.466292e+02, + 2.352372e+00, + -5.704782e+06, + 2.258349e+05, + 1.643354e+03, + 7.932444e+00, + -8.516026e+06, + 3.526078e+05, + 3.663294e+03, + 2.360140e+01, + -1.066595e+07, + 4.742071e+05, + 7.292901e+03, + 6.245495e+01, + -1.234505e+07, + 5.621427e+05, + 1.286902e+04, + 1.467728e+02, + -1.044587e+07, + 5.508898e+05, + 2.017730e+04, + 3.077457e+02, + -9.750714e+06, + 5.176087e+05, + 2.845385e+04, + 5.789490e+02, + -8.773548e+06, + 4.361175e+05, + 3.680154e+04, + 9.938209e+02, + -4.887482e+06, + 2.768423e+05, + 4.386506e+04, + 1.574100e+03, + -4.580514e+06, + 2.042767e+05, + 4.895668e+04, + 2.319036e+03, + -3.037548e+06, + 1.001684e+05, + 5.188273e+04, + 3.224335e+03, + -1.252849e+06, + 9.423824e+03, + 5.229785e+04, + 4.260421e+03, + -1.512708e+06, + -4.514040e+03, + 5.093166e+04, + 5.388799e+03, + -3.330454e+05, + -5.840272e+04, + 4.812166e+04, + 6.583262e+03, + -4.555910e+05, + -5.259927e+04, + 4.437818e+04, + 7.797270e+03, + -2.055898e+05, + -6.043330e+04, + 4.025830e+04, + 9.011318e+03, + -6.518244e+04, + -5.931446e+04, + 3.591151e+04, + 1.019675e+04, + -4.788129e+04, + -5.148756e+04, + 3.170073e+04, + 1.133492e+04, + -1.294721e+04, + -4.516239e+04, + 2.777118e+04, + 1.241608e+04, + -4.132531e+04, + -3.650926e+04, + 2.417892e+04, + 1.343242e+04, + 4.353457e+04, + -3.480201e+04, + 2.089273e+04, + 1.438065e+04, + -3.999510e+04, + -2.363060e+04, + 1.802457e+04, + 1.525446e+04, + 1.132551e+04, + -2.302607e+04, + 1.547307e+04, + 1.606249e+04, + 2.024966e+04, + -1.900290e+04, + 1.319929e+04, + 1.679741e+04, + -2.275982e+04, + -1.253345e+04, + 1.130444e+04, + 1.746504e+04, + 2.065540e+03, + -1.244152e+04, + 9.619555e+03, + 1.807448e+04, + 1.308942e+04, + -1.073860e+04, + 8.111327e+03, + 1.861996e+04, + -1.540943e+04, + -6.359948e+03, + 6.878335e+03, + 1.910663e+04, + -6.509802e+03, + -6.323129e+03, + 5.782487e+03, + 1.954531e+04, + 2.137483e+03, + -5.897918e+03, + 4.759477e+03, + 1.992990e+04, + -1.089014e+04, + -3.529000e+03, + 3.892929e+03, + 2.026106e+04, + -7.464418e+03, + -3.372208e+03, + 3.110704e+03, + 2.054648e+04, + -4.499778e+03, + -2.965848e+03, + 2.377458e+03, + 2.078153e+04, + -1.809100e+04, + -9.389300e+02, + 1.742044e+03, + 2.096658e+04, + -1.603605e+04, + -8.315728e+02, + 1.093057e+03, + 2.110637e+04, + -1.205302e+04, + -2.096724e+02, + 4.696001e+02, + 2.119034e+04, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -6.475609e+04, + 3.371635e+02, + 0, + 0, + 1.073009e+04, + 4.374122e+02, + 5.797537e-01, + 5.796875e-04, + -1.153454e+05, + 2.841920e+03, + 2.649198e+00, + 4.057812e-03, + -4.687182e+05, + 1.144817e+04, + 1.627061e+01, + 3.304219e-02, + -6.252477e+05, + 3.031476e+04, + 8.224170e+01, + 2.295562e-01, + -3.526268e+06, + 9.906712e+04, + 3.245361e+02, + 1.211547e+00, + -3.609003e+06, + 1.630030e+05, + 1.110639e+03, + 5.633403e+00, + -5.915653e+06, + 2.810662e+05, + 2.834579e+03, + 1.971111e+01, + -9.862311e+06, + 4.241441e+05, + 6.219224e+03, + 5.787194e+01, + -8.614873e+06, + 4.527786e+05, + 1.158730e+04, + 1.459555e+02, + -7.889704e+06, + 4.557367e+05, + 1.837941e+04, + 3.144735e+02, + -7.157548e+06, + 4.205437e+05, + 2.605154e+04, + 5.981511e+02, + -6.360659e+06, + 3.497342e+05, + 3.363796e+04, + 1.028460e+03, + -4.118223e+06, + 2.292622e+05, + 3.992991e+04, + 1.623818e+03, + -2.878278e+06, + 1.400867e+05, + 4.417527e+04, + 2.379710e+03, + -1.927495e+06, + 6.762589e+04, + 4.634548e+04, + 3.280857e+03, + -1.164354e+06, + 1.289313e+04, + 4.655326e+04, + 4.300420e+03, + -7.359802e+05, + -1.922557e+04, + 4.517303e+04, + 5.404912e+03, + -4.551779e+05, + -3.785206e+04, + 4.265242e+04, + 6.561340e+03, + -2.858538e+05, + -4.634143e+04, + 3.937600e+04, + 7.738135e+03, + -3.103799e+04, + -5.354515e+04, + 3.567211e+04, + 8.907358e+03, + -1.299037e+05, + -4.253021e+04, + 3.196524e+04, + 1.004530e+04, + -2.685978e+04, + -4.253756e+04, + 2.836175e+04, + 1.114396e+04, + -1.368389e+04, + -3.669976e+04, + 2.491097e+04, + 1.218658e+04, + -2.352848e+04, + -3.043266e+04, + 2.175512e+04, + 1.316727e+04, + -1.339091e+03, + -2.684603e+04, + 1.887271e+04, + 1.408263e+04, + 1.046307e+04, + -2.278972e+04, + 1.628025e+04, + 1.492832e+04, + 9.352423e+03, + -1.845807e+04, + 1.402391e+04, + 1.570518e+04, + -4.319180e+04, + -1.193961e+04, + 1.209103e+04, + 1.641770e+04, + 4.028668e+04, + -1.613776e+04, + 1.026860e+04, + 1.707080e+04, + -3.050514e+04, + -7.295972e+03, + 8.739795e+03, + 1.765114e+04, + 8.928799e+03, + -9.664089e+03, + 7.399996e+03, + 1.818133e+04, + -7.753111e+03, + -6.276519e+03, + 6.195452e+03, + 1.864823e+04, + -6.909366e+03, + -5.375705e+03, + 5.159494e+03, + 1.906262e+04, + -3.726578e+03, + -4.729953e+03, + 4.213524e+03, + 1.942343e+04, + -9.907304e+03, + -3.262236e+03, + 3.377412e+03, + 1.973067e+04, + -4.707397e+03, + -3.194871e+03, + 2.610089e+03, + 1.998764e+04, + -2.459705e+04, + -5.431231e+02, + 1.928936e+03, + 2.019144e+04, + -1.504684e+04, + -1.268530e+03, + 1.183585e+03, + 2.034684e+04, + -1.274940e+04, + -2.357602e+02, + 5.030266e+02, + 2.043642e+04, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -7.625111e+03, + 1.942406e+02, + 0, + 0, + -7.931768e+04, + 2.359336e+03, + 1.133080e+00, + 2.318750e-03, + -4.492099e+05, + 1.342479e+04, + 1.798340e+01, + 5.101250e-02, + -7.104236e+05, + 3.641425e+04, + 1.273072e+02, + 5.072266e-01, + -2.419312e+06, + 1.031931e+05, + 5.258904e+02, + 2.856120e+00, + -3.805147e+06, + 1.873084e+05, + 1.720050e+03, + 1.257400e+01, + -5.317208e+06, + 2.798090e+05, + 4.237425e+03, + 4.225574e+01, + -5.851424e+06, + 3.374836e+05, + 8.437182e+03, + 1.146083e+02, + -5.507526e+06, + 3.474492e+05, + 1.411444e+04, + 2.603661e+02, + -4.895399e+06, + 3.204240e+05, + 2.062382e+04, + 5.126727e+02, + -3.869675e+06, + 2.596800e+05, + 2.709028e+04, + 9.003364e+02, + -3.250395e+06, + 1.961919e+05, + 3.264631e+04, + 1.439837e+03, + -1.719326e+06, + 1.064571e+05, + 3.659167e+04, + 2.133101e+03, + -1.508329e+06, + 6.693764e+04, + 3.878265e+04, + 2.961132e+03, + -7.388517e+05, + 1.449523e+04, + 3.939682e+04, + 3.906030e+03, + -7.540220e+05, + -5.614775e+02, + 3.863621e+04, + 4.934280e+03, + -7.321527e+04, + -3.634823e+04, + 3.675864e+04, + 6.019820e+03, + -3.975025e+05, + -2.269491e+04, + 3.429005e+04, + 7.123780e+03, + 3.467499e+04, + -4.367236e+04, + 3.141477e+04, + 8.236199e+03, + -1.266303e+05, + -3.044243e+04, + 2.837963e+04, + 9.321237e+03, + -4.572541e+04, + -3.225554e+04, + 2.541711e+04, + 1.037709e+04, + 8.047126e+03, + -3.069461e+04, + 2.246501e+04, + 1.138452e+04, + 2.719321e+02, + -2.520116e+04, + 1.975091e+04, + 1.233417e+04, + -3.455116e+04, + -1.935606e+04, + 1.732791e+04, + 1.322610e+04, + -4.689464e+03, + -1.871996e+04, + 1.506835e+04, + 1.405968e+04, + 1.058268e+04, + -1.648905e+04, + 1.298115e+04, + 1.482619e+04, + -7.793109e+03, + -1.216890e+04, + 1.117406e+04, + 1.552613e+04, + -1.325167e+04, + -9.935753e+03, + 9.587327e+03, + 1.616604e+04, + 5.085932e+03, + -9.803685e+03, + 8.123301e+03, + 1.674503e+04, + -3.985046e+03, + -7.120467e+03, + 6.844793e+03, + 1.725984e+04, + -1.845867e+04, + -4.797864e+03, + 5.745869e+03, + 1.771845e+04, + 5.144229e+03, + -6.303880e+03, + 4.684891e+03, + 1.812240e+04, + -1.572588e+04, + -2.947990e+03, + 3.768049e+03, + 1.846208e+04, + -1.031994e+04, + -3.174327e+03, + 2.928434e+03, + 1.875090e+04, + -1.099561e+04, + -2.380398e+03, + 2.117366e+03, + 1.897926e+04, + -3.437355e+04, + 6.816807e+02, + 1.384817e+03, + 1.914731e+04, + -1.532091e+04, + -2.375851e+02, + 5.307093e+02, + 1.925714e+04, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -1.099496e+03, + 3.170007e+01, + 0, + 0, + -4.582160e+03, + 2.717530e+02, + 2.241895e-01, + 5.796875e-04, + -3.585634e+04, + 2.139538e+03, + 2.877762e+00, + 9.854688e-03, + -2.609433e+05, + 1.233333e+04, + 2.712355e+01, + 1.182562e-01, + -6.784321e+05, + 3.792404e+04, + 1.753766e+02, + 1.005758e+00, + -1.704870e+06, + 9.086509e+04, + 7.096012e+02, + 5.462395e+00, + -2.182629e+06, + 1.428588e+05, + 2.081180e+03, + 2.173712e+01, + -3.045174e+06, + 2.017171e+05, + 4.620780e+03, + 6.547976e+01, + -3.120058e+06, + 2.258261e+05, + 8.490531e+03, + 1.620580e+02, + -2.909976e+06, + 2.219603e+05, + 1.329642e+04, + 3.408296e+02, + -2.611518e+06, + 1.958497e+05, + 1.841926e+04, + 6.296374e+02, + -1.382570e+06, + 1.339214e+05, + 2.309259e+04, + 1.047807e+03, + -1.998218e+06, + 1.265819e+05, + 2.695490e+04, + 1.598845e+03, + -5.702259e+05, + 4.570461e+04, + 2.958101e+04, + 2.288355e+03, + -8.368829e+05, + 3.927422e+04, + 3.080162e+04, + 3.084010e+03, + -1.837335e+05, + -2.241597e+03, + 3.099690e+04, + 3.976339e+03, + -5.682648e+05, + 6.527088e+03, + 3.032646e+04, + 4.930989e+03, + 5.233127e+04, + -2.991358e+04, + 2.883729e+04, + 5.936664e+03, + -1.539996e+05, + -1.717267e+04, + 2.687146e+04, + 6.947084e+03, + -8.235537e+04, + -2.202557e+04, + 2.482136e+04, + 7.962612e+03, + -7.507519e+04, + -2.154411e+04, + 2.253483e+04, + 8.960347e+03, + 3.590736e+04, + -2.572879e+04, + 2.013928e+04, + 9.924107e+03, + -6.467983e+03, + -1.870191e+04, + 1.791295e+04, + 1.083747e+04, + -6.478698e+04, + -1.295785e+04, + 1.594240e+04, + 1.170658e+04, + 2.068703e+04, + -1.780974e+04, + 1.394673e+04, + 1.252823e+04, + 1.440187e+03, + -1.297839e+04, + 1.208844e+04, + 1.328175e+04, + -2.660685e+04, + -8.967767e+03, + 1.050701e+04, + 1.397703e+04, + 7.110755e+03, + -1.063004e+04, + 8.998969e+03, + 1.461637e+04, + -5.590234e+03, + -7.510638e+03, + 7.635425e+03, + 1.518826e+04, + -2.267292e+04, + -5.019825e+03, + 6.454280e+03, + 1.570168e+04, + 7.270321e+03, + -7.162343e+03, + 5.284981e+03, + 1.615674e+04, + -1.519724e+04, + -3.427299e+03, + 4.271128e+03, + 1.654037e+04, + -1.855140e+04, + -2.800418e+03, + 3.361608e+03, + 1.686874e+04, + -6.231274e+03, + -3.489017e+03, + 2.421245e+03, + 1.713283e+04, + -4.271753e+04, + 1.261302e+03, + 1.606297e+03, + 1.732348e+04, + -1.812555e+04, + -2.715809e+02, + 6.259157e+02, + 1.745271e+04, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -7.063987e+03, + 3.054462e+02, + 0, + 0, + -2.813574e+04, + 1.877042e+03, + 3.553681e+00, + 1.623125e-02, + -1.257337e+05, + 8.447415e+03, + 3.144681e+01, + 1.930359e-01, + -3.207497e+05, + 2.447929e+04, + 1.705861e+02, + 1.372700e+00, + -8.991627e+05, + 5.794734e+04, + 6.304306e+02, + 6.658291e+00, + -8.788635e+05, + 7.984047e+04, + 1.727592e+03, + 2.451846e+01, + -1.340991e+06, + 1.142918e+05, + 3.595521e+03, + 6.842863e+01, + -1.502817e+06, + 1.295800e+05, + 6.381372e+03, + 1.604604e+02, + -1.121162e+06, + 1.171558e+05, + 9.734555e+03, + 3.246644e+02, + -1.189577e+06, + 1.116388e+05, + 1.323854e+04, + 5.801037e+02, + -7.285780e+05, + 8.048449e+04, + 1.653685e+04, + 9.441805e+02, + -7.755311e+05, + 6.738083e+04, + 1.925313e+04, + 1.419287e+03, + -3.489333e+05, + 3.413203e+04, + 2.120419e+04, + 2.006116e+03, + -3.711578e+05, + 2.473199e+04, + 2.231455e+04, + 2.686863e+03, + -1.949665e+05, + 6.860180e+03, + 2.271868e+04, + 3.451178e+03, + -2.043607e+05, + 1.205191e+03, + 2.244544e+04, + 4.276031e+03, + -2.253753e+04, + -1.242250e+04, + 2.160182e+04, + 5.143546e+03, + -1.162624e+05, + -7.671662e+03, + 2.043880e+04, + 6.027415e+03, + -1.819840e+04, + -1.508886e+04, + 1.904169e+04, + 6.921183e+03, + -3.748045e+04, + -1.282426e+04, + 1.746345e+04, + 7.800341e+03, + -2.463956e+04, + -1.307192e+04, + 1.585114e+04, + 8.657676e+03, + 1.800068e+04, + -1.453209e+04, + 1.420241e+04, + 9.480546e+03, + -5.751030e+04, + -7.191141e+03, + 1.269744e+04, + 1.025942e+04, + 2.143863e+04, + -1.325078e+04, + 1.115837e+04, + 1.100036e+04, + -2.937991e+04, + -6.800654e+03, + 9.704313e+03, + 1.167727e+04, + 6.744357e+03, + -9.354022e+03, + 8.348776e+03, + 1.230400e+04, + -1.635229e+04, + -5.637506e+03, + 7.095223e+03, + 1.286429e+04, + -9.355270e+03, + -5.739525e+03, + 5.942650e+03, + 1.336770e+04, + -1.379714e+04, + -4.465673e+03, + 4.833668e+03, + 1.380493e+04, + -1.440112e+04, + -3.753966e+03, + 3.778207e+03, + 1.417440e+04, + -1.584389e+04, + -2.861359e+03, + 2.766756e+03, + 1.447096e+04, + -4.596605e+04, + 9.777166e+02, + 1.817438e+03, + 1.469152e+04, + -1.955254e+04, + -3.565949e+02, + 6.882263e+02, + 1.483566e+04, +}; + +double solarDataset560[] = +{ + 9.427478e+12, + -2.974054e+07, + 3.050751e+04, + 6.870437e+02, + -1.142007e+12, + 2.473531e+08, + 3.788610e+04, + 6.876090e+02, + 6.030303e+10, + -3.189085e+07, + 4.769687e+04, + 6.937756e+02, + -1.001912e+10, + 1.190166e+07, + 4.621301e+04, + 7.080949e+02, + 2.017518e+09, + -2.733973e+06, + 4.916779e+04, + 7.398116e+02, + -1.421427e+08, + 1.460792e+06, + 5.011031e+04, + 7.908346e+02, + -1.387029e+07, + 8.966726e+05, + 5.364395e+04, + 8.724855e+02, + 9.871561e+06, + 7.113724e+05, + 5.737052e+04, + 9.940749e+02, + 1.877554e+07, + 6.336258e+05, + 6.176658e+04, + 1.167487e+03, + -3.308155e+07, + 8.873357e+05, + 6.729500e+04, + 1.408380e+03, + -9.604436e+06, + 6.024616e+05, + 7.341952e+04, + 1.738737e+03, + -2.182764e+07, + 6.203282e+05, + 7.935645e+04, + 2.175477e+03, + -1.396323e+07, + 4.168430e+05, + 8.478006e+04, + 2.740602e+03, + -1.869470e+07, + 3.550893e+05, + 8.878213e+04, + 3.445876e+03, + -8.924426e+06, + 9.938325e+04, + 9.049216e+04, + 4.298909e+03, + -6.077214e+06, + -9.169328e+03, + 8.948659e+04, + 5.283471e+03, + -9.030289e+06, + -1.361099e+04, + 8.644249e+04, + 6.382569e+03, + -6.018017e+05, + -2.166279e+05, + 8.068593e+04, + 7.572041e+03, + -2.261151e+06, + -1.582668e+05, + 7.336941e+04, + 8.793475e+03, + -1.285988e+06, + -1.711686e+05, + 6.563977e+04, + 1.003020e+04, + -3.781520e+05, + -1.714659e+05, + 5.741413e+04, + 1.124523e+04, + 6.312955e+04, + -1.524940e+05, + 4.942384e+04, + 1.240834e+04, + -2.965801e+05, + -1.122897e+05, + 4.224018e+04, + 1.350369e+04, + 3.140122e+04, + -1.022589e+05, + 3.574972e+04, + 1.452741e+04, + 6.861713e+04, + -8.171721e+04, + 2.998492e+04, + 1.546584e+04, + 8.598786e+04, + -6.438726e+04, + 2.510945e+04, + 1.632002e+04, + -5.450437e+04, + -4.482419e+04, + 2.107040e+04, + 1.709492e+04, + 3.899927e+04, + -4.009451e+04, + 1.759867e+04, + 1.779846e+04, + 3.081603e+04, + -3.072117e+04, + 1.464125e+04, + 1.842779e+04, + 2.777883e+04, + -2.372218e+04, + 1.222329e+04, + 1.899091e+04, + -2.403858e+04, + -1.592528e+04, + 1.025673e+04, + 1.949554e+04, + 2.604334e+04, + -1.580705e+04, + 8.557456e+03, + 1.994946e+04, + -6.779180e+03, + -1.020950e+04, + 7.140866e+03, + 2.035049e+04, + 1.072751e+04, + -9.367305e+03, + 5.964755e+03, + 2.070901e+04, + -7.568154e+03, + -6.091544e+03, + 4.985814e+03, + 2.102574e+04, + 7.747026e+03, + -6.090631e+03, + 4.149838e+03, + 2.130780e+04, + -5.115560e+03, + -3.749778e+03, + 3.454636e+03, + 2.155454e+04, + 2.055488e+03, + -3.682627e+03, + 2.865067e+03, + 2.177309e+04, + -8.313760e+03, + -2.062212e+03, + 2.362034e+03, + 2.196277e+04, + 2.244934e+03, + -2.716908e+03, + 1.899309e+03, + 2.212797e+04, + -8.606358e+03, + -1.085119e+03, + 1.504703e+03, + 2.226472e+04, + 7.692302e+02, + -1.849182e+03, + 1.134821e+03, + 2.237930e+04, + -4.992822e+03, + -7.414604e+02, + 8.237234e+02, + 2.246625e+04, + -2.212781e+04, + 1.130582e+03, + 5.545028e+02, + 2.253265e+04, + -2.342747e+03, + -3.239579e+02, + 1.400637e+02, + 2.257701e+04, + -5.454661e+13, + 6.695227e+08, + 7.553013e+04, + 3.151823e+02, + 1.134950e+12, + -2.733669e+08, + 4.998801e+04, + 3.164039e+02, + 2.457067e+09, + -5.372394e+05, + 3.359107e+04, + 3.204494e+02, + 1.705050e+09, + -3.885735e+05, + 3.402986e+04, + 3.314798e+02, + -4.762097e+08, + 1.872482e+06, + 3.561497e+04, + 3.534683e+02, + 2.502076e+08, + 3.098756e+05, + 3.797324e+04, + 3.924344e+02, + 9.657814e+05, + 9.594652e+05, + 4.079242e+04, + 4.537291e+02, + 2.387841e+07, + 8.134300e+05, + 4.500723e+04, + 5.476404e+02, + -3.806754e+07, + 1.053126e+06, + 5.035453e+04, + 6.862488e+02, + 1.459099e+06, + 7.335645e+05, + 5.663526e+04, + 8.873484e+02, + -2.588512e+07, + 8.852511e+05, + 6.358440e+04, + 1.168074e+03, + -2.562254e+07, + 7.542671e+05, + 7.115830e+04, + 1.554880e+03, + -1.380731e+07, + 5.011328e+05, + 7.788194e+04, + 2.068958e+03, + -1.739894e+07, + 4.295264e+05, + 8.327746e+04, + 2.724056e+03, + -1.402960e+07, + 2.469259e+05, + 8.673685e+04, + 3.532888e+03, + -5.683137e+06, + 1.809832e+04, + 8.712896e+04, + 4.487490e+03, + -7.386279e+06, + -5.267831e+03, + 8.494526e+04, + 5.562255e+03, + -2.550597e+06, + -1.428422e+05, + 8.040191e+04, + 6.736888e+03, + -2.244178e+06, + -1.494782e+05, + 7.395598e+04, + 7.964592e+03, + -9.741098e+05, + -1.707178e+05, + 6.655347e+04, + 9.214554e+03, + -7.847748e+05, + -1.541107e+05, + 5.870751e+04, + 1.045010e+04, + 4.829605e+04, + -1.529932e+05, + 5.089533e+04, + 1.164534e+04, + -2.588837e+05, + -1.146882e+05, + 4.366237e+04, + 1.277539e+04, + 8.471593e+04, + -1.046703e+05, + 3.712384e+04, + 1.383538e+04, + -3.204309e+04, + -7.873300e+04, + 3.135177e+04, + 1.481233e+04, + 3.884792e+04, + -6.547482e+04, + 2.637054e+04, + 1.570881e+04, + 3.311172e+04, + -5.122588e+04, + 2.209839e+04, + 1.652310e+04, + 5.272904e+04, + -4.098012e+04, + 1.850837e+04, + 1.725973e+04, + -2.098666e+04, + -2.870596e+04, + 1.554469e+04, + 1.792411e+04, + -7.645698e+03, + -2.392850e+04, + 1.302179e+04, + 1.852490e+04, + 4.529440e+04, + -2.168625e+04, + 1.082138e+04, + 1.906182e+04, + 7.563854e+03, + -1.438042e+04, + 9.049216e+03, + 1.953729e+04, + -2.029968e+04, + -9.904209e+03, + 7.633053e+03, + 1.996482e+04, + 2.455605e+04, + -1.104624e+04, + 6.369259e+03, + 2.034892e+04, + -2.217501e+04, + -5.312960e+03, + 5.335176e+03, + 2.068618e+04, + 1.389523e+04, + -7.222185e+03, + 4.429009e+03, + 2.098929e+04, + 3.350305e+03, + -4.596824e+03, + 3.664659e+03, + 2.125113e+04, + -1.643678e+04, + -2.165698e+03, + 3.078933e+03, + 2.148290e+04, + 8.244762e+03, + -4.103965e+03, + 2.503118e+03, + 2.168904e+04, + -4.309852e+03, + -1.906462e+03, + 2.019271e+03, + 2.186052e+04, + -4.502906e+03, + -1.615093e+03, + 1.627422e+03, + 2.200877e+04, + -6.673494e+03, + -1.145054e+03, + 1.256210e+03, + 2.213245e+04, + -4.431929e+03, + -1.125020e+03, + 8.934107e+02, + 2.223054e+04, + -1.277831e+04, + 1.017818e+02, + 5.672148e+02, + 2.230057e+04, + -6.550689e+03, + -6.795150e+01, + 2.200245e+02, + 2.234508e+04, + 7.028093e+11, + -5.632931e+06, + 1.212518e+04, + 8.786962e+01, + 1.096934e+10, + 3.427657e+06, + 1.255748e+04, + 8.808056e+01, + -8.620693e+09, + 6.311300e+06, + 1.386382e+04, + 8.966498e+01, + 1.905895e+09, + -7.785063e+05, + 1.522377e+04, + 9.457978e+01, + -6.642623e+08, + 2.069152e+06, + 1.655659e+04, + 1.044673e+02, + 2.755384e+08, + 1.270856e+05, + 1.870469e+04, + 1.233922e+02, + -1.858521e+07, + 9.802503e+05, + 2.113739e+04, + 1.541094e+02, + 1.127113e+07, + 8.555788e+05, + 2.516211e+04, + 2.048864e+02, + -2.155426e+07, + 1.035915e+06, + 3.043400e+04, + 2.857281e+02, + -2.670990e+07, + 1.046843e+06, + 3.727913e+04, + 4.129363e+02, + -2.064658e+07, + 9.583745e+05, + 4.531105e+04, + 6.072056e+02, + -2.771027e+07, + 9.488663e+05, + 5.423102e+04, + 8.931027e+02, + -2.275812e+07, + 7.675189e+05, + 6.332478e+04, + 1.299785e+03, + -1.807120e+07, + 5.679364e+05, + 7.127246e+04, + 1.849876e+03, + -1.307118e+07, + 3.611235e+05, + 7.716269e+04, + 2.557254e+03, + -1.108885e+07, + 2.095800e+05, + 8.037925e+04, + 3.422462e+03, + -4.138438e+06, + -1.246738e+03, + 8.045019e+04, + 4.432538e+03, + -5.721080e+06, + -1.375766e+04, + 7.795263e+04, + 5.553735e+03, + -1.846673e+06, + -1.340584e+05, + 7.320954e+04, + 6.762429e+03, + -7.381453e+05, + -1.533237e+05, + 6.672674e+04, + 8.006215e+03, + -1.220612e+06, + -1.255252e+05, + 5.983885e+04, + 9.253691e+03, + -4.493834e+05, + -1.350154e+05, + 5.265160e+04, + 1.048256e+04, + 2.241188e+05, + -1.320572e+05, + 4.542483e+04, + 1.165807e+04, + -1.586451e+05, + -9.300775e+04, + 3.897017e+04, + 1.276097e+04, + -8.185331e+04, + -7.944104e+04, + 3.326870e+04, + 1.379450e+04, + 1.437491e+05, + -7.221282e+04, + 2.809949e+04, + 1.474832e+04, + -8.452171e+04, + -4.730130e+04, + 2.373007e+04, + 1.561713e+04, + 7.065088e+04, + -4.526031e+04, + 1.995960e+04, + 1.641256e+04, + -1.228967e+04, + -3.137736e+04, + 1.674335e+04, + 1.712822e+04, + 8.313530e+04, + -2.961873e+04, + 1.404205e+04, + 1.777530e+04, + -9.556767e+04, + -1.350497e+04, + 1.188112e+04, + 1.835489e+04, + 7.279899e+04, + -2.152115e+04, + 9.918036e+03, + 1.888459e+04, + -1.801529e+04, + -1.047619e+04, + 8.284368e+03, + 1.934672e+04, + 1.422292e+04, + -1.081166e+04, + 6.978533e+03, + 1.976507e+04, + -1.971096e+04, + -6.232236e+03, + 5.867255e+03, + 2.013646e+04, + 2.555580e+04, + -8.493675e+03, + 4.875924e+03, + 2.046942e+04, + -2.220971e+04, + -2.736626e+03, + 4.094432e+03, + 2.075821e+04, + 6.086730e+03, + -4.963141e+03, + 3.401028e+03, + 2.102006e+04, + -4.421174e+03, + -2.900042e+03, + 2.775707e+03, + 2.124349e+04, + -4.520515e+03, + -2.411202e+03, + 2.253152e+03, + 2.143723e+04, + -2.508622e+03, + -2.146013e+03, + 1.775733e+03, + 2.160097e+04, + -2.936199e+03, + -1.618598e+03, + 1.357499e+03, + 2.173462e+04, + -9.367685e+03, + -6.231229e+02, + 9.992896e+02, + 2.184062e+04, + -1.206672e+04, + -1.719530e+02, + 6.376552e+02, + 2.192089e+04, + -8.102102e+03, + -5.838292e+00, + 2.573335e+02, + 2.197034e+04, + -4.403129e+12, + 5.670988e+07, + 4.522792e+03, + 1.062499e+01, + 1.009104e+11, + -2.052389e+07, + 2.552832e+03, + 1.069725e+01, + -1.358716e+10, + 8.667774e+06, + 2.007574e+03, + 1.088375e+01, + 9.860870e+08, + -7.696195e+05, + 3.312868e+03, + 1.199369e+01, + -7.263205e+07, + 5.079683e+05, + 3.534528e+03, + 1.404941e+01, + 6.095618e+07, + 2.370154e+05, + 4.361871e+03, + 1.824319e+01, + 1.451466e+07, + 4.286776e+05, + 5.555429e+03, + 2.590389e+01, + -1.400850e+07, + 6.184504e+05, + 7.641043e+03, + 4.027263e+01, + -1.241073e+07, + 6.950653e+05, + 1.088771e+04, + 6.743470e+01, + -1.795027e+07, + 8.260387e+05, + 1.556669e+04, + 1.172372e+02, + -2.319572e+07, + 9.411195e+05, + 2.210913e+04, + 2.061525e+02, + -3.010013e+07, + 1.015888e+06, + 3.058323e+04, + 3.586307e+02, + -2.022242e+07, + 8.484787e+05, + 4.025853e+04, + 6.058539e+02, + -1.910299e+07, + 7.492166e+05, + 5.001245e+04, + 9.760963e+02, + -1.557142e+07, + 5.745389e+05, + 5.904610e+04, + 1.498265e+03, + -1.230740e+07, + 3.873126e+05, + 6.601791e+04, + 2.188449e+03, + -6.940073e+06, + 1.748956e+05, + 6.994206e+04, + 3.045149e+03, + -5.177292e+06, + 6.314485e+04, + 7.073880e+04, + 4.045467e+03, + -2.366516e+06, + -4.755500e+04, + 6.884163e+04, + 5.161344e+03, + -2.358205e+06, + -6.773915e+04, + 6.493284e+04, + 6.352030e+03, + -5.046368e+05, + -1.245616e+05, + 5.953143e+04, + 7.585005e+03, + -7.352958e+05, + -1.050440e+05, + 5.340095e+04, + 8.814996e+03, + -4.712122e+04, + -1.140651e+05, + 4.711703e+04, + 1.002166e+04, + -1.940792e+05, + -9.000891e+04, + 4.104669e+04, + 1.117633e+04, + -5.334300e+04, + -8.040981e+04, + 3.542982e+04, + 1.227079e+04, + 3.617207e+04, + -6.882656e+04, + 3.028288e+04, + 1.329163e+04, + 3.113110e+04, + -5.478774e+04, + 2.577621e+04, + 1.423360e+04, + -6.129565e+04, + -4.010649e+04, + 2.191962e+04, + 1.509901e+04, + 8.799100e+04, + -3.960913e+04, + 1.850097e+04, + 1.589132e+04, + -3.273914e+04, + -2.471044e+04, + 1.563896e+04, + 1.660515e+04, + 5.062606e+04, + -2.465741e+04, + 1.321567e+04, + 1.725598e+04, + -4.331664e+04, + -1.394978e+04, + 1.119464e+04, + 1.784036e+04, + 2.151457e+04, + -1.584838e+04, + 9.420701e+03, + 1.837225e+04, + 2.057252e+04, + -1.209662e+04, + 7.881816e+03, + 1.884308e+04, + -3.218097e+04, + -5.996226e+03, + 6.685549e+03, + 1.926382e+04, + 1.272473e+04, + -8.675284e+03, + 5.581521e+03, + 1.964513e+04, + 1.293397e+04, + -6.525058e+03, + 4.612838e+03, + 1.997558e+04, + -2.512579e+04, + -2.085553e+03, + 3.897889e+03, + 2.026666e+04, + 9.631166e+03, + -5.124486e+03, + 3.195860e+03, + 2.052944e+04, + -8.369392e+03, + -2.217471e+03, + 2.579994e+03, + 2.074865e+04, + -4.945385e+03, + -2.272369e+03, + 2.058660e+03, + 2.093800e+04, + -3.084443e+03, + -1.973310e+03, + 1.566386e+03, + 2.109326e+04, + -7.303688e+03, + -1.067347e+03, + 1.141462e+03, + 2.121494e+04, + -1.970787e+04, + 4.640662e+02, + 7.508659e+02, + 2.130630e+04, + -7.520008e+03, + -1.899019e+02, + 2.755003e+02, + 2.136575e+04, + 1.985745e+12, + -2.912097e+07, + -7.661830e+02, + 6.684121e-01, + -6.636634e+08, + 2.990354e+05, + 0, + 6.567228e-01, + -2.343986e+09, + 1.611661e+06, + 4.317728e+01, + 6.599108e-01, + 2.254208e+07, + 4.359743e+04, + 3.445681e+02, + 7.645827e-01, + 1.156883e+07, + 5.539843e+04, + 4.276905e+02, + 1.007931e+00, + 1.328478e+07, + 6.727963e+04, + 5.825680e+02, + 1.532353e+00, + -1.427828e+06, + 1.497926e+05, + 8.917103e+02, + 2.663022e+00, + 9.122115e+05, + 2.061081e+05, + 1.527034e+03, + 5.318074e+00, + -1.436027e+07, + 3.894326e+05, + 2.751124e+03, + 1.153834e+01, + -1.297819e+07, + 4.891972e+05, + 5.061759e+03, + 2.652661e+01, + -1.440164e+07, + 6.231437e+05, + 8.782631e+03, + 5.952481e+01, + -2.071955e+07, + 7.895515e+05, + 1.448705e+04, + 1.272475e+02, + -2.105556e+07, + 8.342286e+05, + 2.238247e+04, + 2.567244e+02, + -1.730582e+07, + 7.638287e+05, + 3.174262e+04, + 4.810755e+02, + -1.649409e+07, + 6.787079e+05, + 4.153117e+04, + 8.337819e+02, + -1.213281e+07, + 4.915370e+05, + 5.044160e+04, + 1.344592e+03, + -7.204027e+06, + 2.923513e+05, + 5.703735e+04, + 2.024137e+03, + -6.395770e+06, + 1.876444e+05, + 6.098537e+04, + 2.865273e+03, + -3.652266e+06, + 5.084202e+04, + 6.211538e+04, + 3.853040e+03, + -1.242084e+06, + -4.545439e+04, + 6.048160e+04, + 4.948354e+03, + -2.077700e+06, + -3.761168e+04, + 5.725210e+04, + 6.110893e+03, + -4.035125e+05, + -9.878235e+04, + 5.267188e+04, + 7.316266e+03, + -2.774259e+05, + -9.184399e+04, + 4.725635e+04, + 8.513608e+03, + -7.489327e+04, + -8.630250e+04, + 4.187600e+04, + 9.683030e+03, + -1.824318e+05, + -6.931827e+04, + 3.676257e+04, + 1.080698e+04, + -2.043178e+04, + -6.528394e+04, + 3.193106e+04, + 1.187602e+04, + -2.125564e+04, + -5.356901e+04, + 2.747061e+04, + 1.287528e+04, + 3.802628e+04, + -4.622590e+04, + 2.349523e+04, + 1.380133e+04, + -1.011949e+04, + -3.479996e+04, + 2.005371e+04, + 1.465185e+04, + 1.957445e+04, + -2.979789e+04, + 1.707635e+04, + 1.543211e+04, + -2.310000e+04, + -2.169519e+04, + 1.451302e+04, + 1.614210e+04, + 4.887815e+04, + -2.176628e+04, + 1.226507e+04, + 1.678755e+04, + -3.010570e+04, + -1.212523e+04, + 1.041726e+04, + 1.736624e+04, + 1.141261e+04, + -1.307324e+04, + 8.823028e+03, + 1.789421e+04, + 2.115730e+03, + -9.658469e+03, + 7.420827e+03, + 1.836449e+04, + -3.130044e+03, + -7.419199e+03, + 6.255799e+03, + 1.878518e+04, + -1.015496e+04, + -5.605767e+03, + 5.248800e+03, + 1.916053e+04, + 1.197197e+04, + -6.387298e+03, + 4.331709e+03, + 1.949224e+04, + -9.451760e+03, + -3.045742e+03, + 3.592623e+03, + 1.977809e+04, + -9.143314e+03, + -2.779727e+03, + 2.959049e+03, + 2.003133e+04, + -4.060531e+02, + -3.138927e+03, + 2.331861e+03, + 2.024720e+04, + -8.374759e+03, + -1.630913e+03, + 1.790562e+03, + 2.042217e+04, + -9.631227e+03, + -1.214229e+03, + 1.300725e+03, + 2.056279e+04, + -1.757971e+04, + -7.909526e+00, + 8.217597e+02, + 2.066585e+04, + -9.360190e+03, + -1.008561e+02, + 3.151603e+02, + 2.072972e+04, + 7.057544e+11, + -1.002630e+07, + -2.834657e+02, + 2.019051e-02, + -5.762712e+09, + 1.096773e+06, + 0, + 1.593987e-02, + 9.580494e+07, + -5.116182e+04, + 1.296875e+01, + 2.178450e-02, + -7.314732e+07, + 8.930245e+04, + 1.028639e+01, + 2.390981e-02, + 1.212836e+07, + -1.522072e+04, + 3.493413e+01, + 4.781962e-02, + 1.107723e+06, + 1.523353e+04, + 4.315452e+01, + 8.182469e-02, + -3.122114e+06, + 4.692205e+04, + 9.912353e+01, + 1.912785e-01, + -1.218946e+05, + 6.710879e+04, + 2.596781e+02, + 6.004020e-01, + -7.767512e+06, + 1.781769e+05, + 6.475762e+02, + 1.923412e+00, + -7.081599e+06, + 2.703169e+05, + 1.654503e+03, + 6.432271e+00, + -1.388268e+07, + 4.599894e+05, + 3.716433e+03, + 1.933826e+01, + -1.677008e+07, + 6.152583e+05, + 7.609712e+03, + 5.293951e+01, + -1.773788e+07, + 7.158283e+05, + 1.367450e+04, + 1.284552e+02, + -1.673161e+07, + 7.330517e+05, + 2.177075e+04, + 2.764208e+02, + -1.582636e+07, + 6.844310e+05, + 3.113206e+04, + 5.328466e+02, + -1.143484e+07, + 5.250286e+05, + 4.040399e+04, + 9.320810e+02, + -7.912410e+06, + 3.651709e+05, + 4.815568e+04, + 1.493388e+03, + -6.534461e+06, + 2.459158e+05, + 5.373328e+04, + 2.221905e+03, + -3.824178e+06, + 1.046254e+05, + 5.660509e+04, + 3.108860e+03, + -2.225738e+06, + 1.563807e+04, + 5.671396e+04, + 4.122526e+03, + -1.458328e+06, + -3.221722e+04, + 5.474607e+04, + 5.227111e+03, + -8.183570e+05, + -6.333746e+04, + 5.127832e+04, + 6.386920e+03, + -2.794557e+05, + -7.986545e+04, + 4.684627e+04, + 7.565535e+03, + -3.250386e+05, + -7.038672e+04, + 4.208904e+04, + 8.732396e+03, + -1.754872e+05, + -6.847775e+04, + 3.727257e+04, + 9.869589e+03, + 1.159607e+05, + -6.912938e+04, + 3.251333e+04, + 1.095548e+04, + -9.178916e+04, + -4.742331e+04, + 2.825702e+04, + 1.197515e+04, + -3.478289e+04, + -4.291868e+04, + 2.444894e+04, + 1.293450e+04, + 4.096451e+04, + -3.883179e+04, + 2.093198e+04, + 1.382302e+04, + 1.018149e+04, + -2.939198e+04, + 1.788632e+04, + 1.463685e+04, + -6.312718e+03, + -2.298834e+04, + 1.530245e+04, + 1.538327e+04, + 8.853193e+01, + -1.922555e+04, + 1.304664e+04, + 1.606557e+04, + -4.315150e+03, + -1.538511e+04, + 1.107414e+04, + 1.668446e+04, + 2.613878e+04, + -1.434570e+04, + 9.354640e+03, + 1.724279e+04, + -3.056698e+04, + -7.440654e+03, + 7.953552e+03, + 1.774252e+04, + 1.201257e+04, + -9.709738e+03, + 6.690044e+03, + 1.819679e+04, + 2.315698e+03, + -6.742600e+03, + 5.577442e+03, + 1.859490e+04, + -9.440768e+03, + -4.516726e+03, + 4.681297e+03, + 1.894793e+04, + 1.196941e+03, + -4.741381e+03, + 3.874527e+03, + 1.926086e+04, + -7.702191e+03, + -2.981726e+03, + 3.168711e+03, + 1.953055e+04, + -8.882011e+03, + -2.461540e+03, + 2.537074e+03, + 1.976277e+04, + -1.422894e+03, + -2.714319e+03, + 1.927726e+03, + 1.995485e+04, + -1.333538e+04, + -8.409366e+02, + 1.410345e+03, + 2.010401e+04, + -1.909208e+04, + -3.880590e+01, + 9.041545e+02, + 2.021755e+04, + -1.040053e+04, + -1.016679e+02, + 3.480591e+02, + 2.028776e+04, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -9.747318e+05, + 3.472389e+03, + 0, + 0, + 4.067195e+05, + -3.625279e+02, + 3.698487e+00, + 4.781962e-03, + -2.201325e+05, + 7.112541e+03, + 7.958936e+00, + 1.540855e-02, + -1.375506e+06, + 3.099300e+04, + 4.379474e+01, + 9.351393e-02, + -2.748196e+06, + 8.093983e+04, + 2.179212e+02, + 6.189985e-01, + -4.968397e+06, + 1.759744e+05, + 7.942168e+02, + 3.123153e+00, + -9.224231e+06, + 3.310828e+05, + 2.317096e+03, + 1.246073e+01, + -1.172345e+07, + 4.760308e+05, + 5.552592e+03, + 4.086665e+01, + -1.364940e+07, + 5.855323e+05, + 1.095084e+04, + 1.106753e+02, + -1.160214e+07, + 5.818835e+05, + 1.835230e+04, + 2.545476e+02, + -1.186484e+07, + 5.618680e+05, + 2.689271e+04, + 5.080793e+02, + -8.404699e+06, + 4.221755e+05, + 3.536085e+04, + 9.063264e+02, + -5.194575e+06, + 2.784763e+05, + 4.225115e+04, + 1.464581e+03, + -5.350129e+06, + 2.094167e+05, + 4.716334e+04, + 2.183139e+03, + -1.602308e+06, + 5.042204e+04, + 4.954778e+04, + 3.054031e+03, + -2.214826e+06, + 3.646787e+04, + 4.967168e+04, + 4.035868e+03, + -9.356126e+05, + -3.084597e+04, + 4.811762e+04, + 5.110060e+03, + -4.549349e+05, + -5.386665e+04, + 4.503815e+04, + 6.230077e+03, + -3.040345e+05, + -5.796460e+04, + 4.128150e+04, + 7.364268e+03, + -1.176667e+05, + -6.013046e+04, + 3.722607e+04, + 8.489020e+03, + -2.285004e+05, + -4.899339e+04, + 3.315231e+04, + 9.583239e+03, + 1.171614e+05, + -5.738783e+04, + 2.908158e+04, + 1.063408e+04, + -6.209781e+04, + -3.832039e+04, + 2.537658e+04, + 1.162023e+04, + -2.092407e+04, + -3.477457e+04, + 2.209397e+04, + 1.255044e+04, + 7.150074e+03, + -3.032506e+04, + 1.906153e+04, + 1.341566e+04, + -1.872806e+04, + -2.346902e+04, + 1.637525e+04, + 1.421280e+04, + 3.845397e+04, + -2.256213e+04, + 1.398698e+04, + 1.494422e+04, + -2.212050e+04, + -1.416819e+04, + 1.197514e+04, + 1.560777e+04, + 1.117884e+04, + -1.415931e+04, + 1.022919e+04, + 1.621605e+04, + -9.805903e+03, + -9.936432e+03, + 8.698553e+03, + 1.676423e+04, + -6.284957e+03, + -8.619152e+03, + 7.363785e+03, + 1.725975e+04, + 8.194854e+03, + -8.133936e+03, + 6.160163e+03, + 1.770134e+04, + -1.348632e+03, + -5.585066e+03, + 5.156021e+03, + 1.808984e+04, + -2.129218e+04, + -3.033875e+03, + 4.322259e+03, + 1.843476e+04, + 1.090528e+04, + -5.636095e+03, + 3.481772e+03, + 1.873867e+04, + -1.576162e+04, + -1.719787e+03, + 2.785226e+03, + 1.898864e+04, + -3.646745e+03, + -2.827982e+03, + 2.153210e+03, + 1.920291e+04, + -1.365574e+04, + -1.131453e+03, + 1.562656e+03, + 1.936968e+04, + -1.907849e+04, + -2.359625e+02, + 9.938042e+02, + 1.949465e+04, + -1.267951e+04, + -2.792363e+00, + 3.995119e+02, + 1.957176e+04, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -4.253495e+03, + 7.499863e+01, + 0, + 0, + -1.750552e+04, + 6.611353e+02, + 3.286766e-01, + 5.313292e-04, + -1.773001e+05, + 5.748574e+03, + 4.539952e+00, + 1.009525e-02, + -9.223470e+05, + 2.879966e+04, + 4.664094e+01, + 1.386769e-01, + -1.930323e+06, + 7.899737e+04, + 2.852048e+02, + 1.171049e+00, + -4.376965e+06, + 1.804810e+05, + 1.095224e+03, + 6.203799e+00, + -6.199410e+06, + 2.925007e+05, + 3.155202e+03, + 2.454156e+01, + -8.265951e+06, + 3.988727e+05, + 7.017706e+03, + 7.510072e+01, + -7.418139e+06, + 4.164357e+05, + 1.276099e+04, + 1.879864e+02, + -7.040578e+06, + 4.038613e+05, + 1.967473e+04, + 3.966702e+02, + -5.686102e+06, + 3.336694e+05, + 2.686086e+04, + 7.341906e+02, + -4.304528e+06, + 2.438082e+05, + 3.315168e+04, + 1.220839e+03, + -2.692813e+06, + 1.463149e+05, + 3.773689e+04, + 1.860259e+03, + -1.797320e+06, + 7.842619e+04, + 4.036734e+04, + 2.638594e+03, + -1.480552e+06, + 3.567044e+04, + 4.122917e+04, + 3.534651e+03, + -4.691014e+05, + -1.943763e+04, + 4.039585e+04, + 4.520549e+03, + -4.771614e+05, + -2.551283e+04, + 3.841306e+04, + 5.556536e+03, + -2.993912e+05, + -3.669547e+04, + 3.578773e+04, + 6.621797e+03, + -7.863820e+04, + -4.472026e+04, + 3.264362e+04, + 7.688512e+03, + -7.947163e+04, + -3.968368e+04, + 2.936882e+04, + 8.732777e+03, + -4.626689e+04, + -3.655540e+04, + 2.617168e+04, + 9.743299e+03, + -3.298749e+04, + -3.228438e+04, + 2.309979e+04, + 1.070825e+04, + 7.557068e+03, + -2.951923e+04, + 2.021271e+04, + 1.161922e+04, + -1.131117e+04, + -2.346075e+04, + 1.760143e+04, + 1.246985e+04, + -8.138479e+02, + -2.029297e+04, + 1.526546e+04, + 1.326110e+04, + -6.482612e+03, + -1.648920e+04, + 1.317628e+04, + 1.399093e+04, + -9.595959e+02, + -1.408842e+04, + 1.131675e+04, + 1.466044e+04, + -8.934017e+03, + -1.109881e+04, + 9.671678e+03, + 1.526962e+04, + 1.509275e+04, + -1.089459e+04, + 8.203717e+03, + 1.582083e+04, + -1.453210e+04, + -6.361619e+03, + 6.975921e+03, + 1.631342e+04, + -1.009911e+04, + -6.003604e+03, + 5.892338e+03, + 1.675910e+04, + 4.806694e+03, + -6.254916e+03, + 4.858851e+03, + 1.715199e+04, + -1.071047e+04, + -3.527770e+03, + 3.984625e+03, + 1.748987e+04, + -8.640748e+03, + -3.280218e+03, + 3.206107e+03, + 1.778279e+04, + -5.456272e+03, + -2.969433e+03, + 2.463075e+03, + 1.802588e+04, + -1.521043e+04, + -1.321653e+03, + 1.804258e+03, + 1.821785e+04, + -2.367697e+04, + -9.087804e+01, + 1.159175e+03, + 1.836246e+04, + -1.433487e+04, + -4.953068e+01, + 4.611681e+02, + 1.845283e+04, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -3.175559e+04, + 9.319479e+02, + 0, + 0, + -1.155952e+05, + 5.362912e+03, + 7.533434e+00, + 2.444114e-02, + -4.781473e+05, + 2.294213e+04, + 6.469392e+01, + 2.901057e-01, + -1.186903e+06, + 6.363668e+04, + 3.418921e+02, + 2.059963e+00, + -2.457058e+06, + 1.339813e+05, + 1.225389e+03, + 9.946482e+00, + -3.689532e+06, + 2.089429e+05, + 3.267949e+03, + 3.596461e+01, + -3.635500e+06, + 2.440573e+05, + 6.751900e+03, + 1.017719e+02, + -4.240893e+06, + 2.702413e+05, + 1.146298e+04, + 2.351121e+02, + -2.806952e+06, + 2.203272e+05, + 1.683224e+04, + 4.676621e+02, + -2.755320e+06, + 1.948001e+05, + 2.199412e+04, + 8.191252e+02, + -2.060483e+06, + 1.377770e+05, + 2.645927e+04, + 1.306106e+03, + -1.097631e+06, + 7.499210e+04, + 2.952827e+04, + 1.925185e+03, + -1.000923e+06, + 4.815843e+04, + 3.123190e+04, + 2.659039e+03, + -4.315165e+05, + 8.335406e+03, + 3.169514e+04, + 3.491872e+03, + -4.699637e+05, + -3.883861e+02, + 3.111515e+04, + 4.393927e+03, + -1.358086e+05, + -2.181426e+04, + 2.973216e+04, + 5.345470e+03, + -2.102148e+05, + -1.969387e+04, + 2.780408e+04, + 6.315553e+03, + -2.056386e+03, + -3.015444e+04, + 2.554160e+04, + 7.289349e+03, + -1.214515e+05, + -2.109060e+04, + 2.317332e+04, + 8.242094e+03, + 2.283767e+04, + -2.752130e+04, + 2.075837e+04, + 9.169350e+03, + 7.777847e+02, + -2.167302e+04, + 1.841980e+04, + 1.004997e+04, + -5.404760e+04, + -1.555831e+04, + 1.633979e+04, + 1.088609e+04, + 2.732346e+04, + -1.905176e+04, + 1.431599e+04, + 1.167632e+04, + -2.032427e+04, + -1.233088e+04, + 1.247912e+04, + 1.240595e+04, + -1.714066e+04, + -1.113399e+04, + 1.084237e+04, + 1.308473e+04, + 1.575944e+04, + -1.185483e+04, + 9.276789e+03, + 1.370596e+04, + -1.758306e+04, + -6.912145e+03, + 7.932318e+03, + 1.426459e+04, + -4.249523e+03, + -7.239515e+03, + 6.729422e+03, + 1.477256e+04, + -2.329697e+03, + -6.114440e+03, + 5.608986e+03, + 1.522204e+04, + -5.910026e+03, + -4.665776e+03, + 4.630493e+03, + 1.561502e+04, + -1.798960e+04, + -2.846416e+03, + 3.762089e+03, + 1.595518e+04, + -3.910095e+03, + -3.884273e+03, + 2.890839e+03, + 1.624284e+04, + -1.926873e+04, + -1.391269e+03, + 2.105855e+03, + 1.646675e+04, + -2.740709e+04, + -1.634349e+02, + 1.341530e+03, + 1.663561e+04, + -1.586965e+04, + -1.115448e+02, + 5.221589e+02, + 1.673964e+04, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -9.127396e+02, + 4.028231e+01, + 0, + 0, + -2.922208e+03, + 3.533675e+02, + 4.231000e-01, + 1.593987e-03, + -7.834748e+04, + 3.913683e+03, + 5.563741e+00, + 2.656646e-02, + -1.794238e+05, + 1.330030e+04, + 5.847158e+01, + 3.613038e-01, + -7.133529e+05, + 4.140932e+04, + 2.841249e+02, + 2.339974e+00, + -8.219289e+05, + 6.765098e+04, + 9.828657e+02, + 1.089809e+01, + -1.608881e+06, + 1.135553e+05, + 2.399301e+03, + 3.586206e+01, + -1.380790e+06, + 1.250011e+05, + 4.785818e+03, + 9.597186e+01, + -1.681694e+06, + 1.416683e+05, + 7.913429e+03, + 2.122113e+02, + -1.342164e+06, + 1.248846e+05, + 1.153453e+04, + 4.098636e+02, + -1.138530e+06, + 1.048019e+05, + 1.506125e+04, + 7.058108e+02, + -7.560038e+05, + 7.458648e+04, + 1.812017e+04, + 1.110256e+03, + -7.365586e+05, + 5.736215e+04, + 2.047117e+04, + 1.622284e+03, + -2.829319e+05, + 2.385083e+04, + 2.194529e+04, + 2.236639e+03, + -3.746521e+05, + 1.866296e+04, + 2.260812e+04, + 2.932459e+03, + -2.109677e+05, + 1.572390e+03, + 2.259219e+04, + 3.699650e+03, + -4.422227e+04, + -1.078135e+04, + 2.187151e+04, + 4.512166e+03, + -1.480152e+05, + -6.663066e+03, + 2.082518e+04, + 5.348479e+03, + -3.470247e+04, + -1.527565e+04, + 1.948176e+04, + 6.200584e+03, + -1.374575e+04, + -1.543198e+04, + 1.789581e+04, + 7.043310e+03, + -4.756536e+04, + -1.215076e+04, + 1.631547e+04, + 7.867040e+03, + -2.328940e+03, + -1.445670e+04, + 1.469261e+04, + 8.665875e+03, + -2.943259e+04, + -1.086144e+04, + 1.309232e+04, + 9.424964e+03, + 2.219356e+04, + -1.335516e+04, + 1.153409e+04, + 1.014250e+04, + -3.753978e+04, + -6.601135e+03, + 1.014219e+04, + 1.080706e+04, + 6.462929e+03, + -9.897952e+03, + 8.803313e+03, + 1.142966e+04, + -1.185789e+04, + -6.587254e+03, + 7.531425e+03, + 1.199133e+04, + -5.585795e+03, + -6.310054e+03, + 6.385138e+03, + 1.249966e+04, + -1.095521e+04, + -4.847504e+03, + 5.319253e+03, + 1.294953e+04, + -1.433834e+04, + -3.906517e+03, + 4.322975e+03, + 1.334142e+04, + -3.995946e+03, + -4.280124e+03, + 3.350694e+03, + 1.367127e+04, + -2.687799e+04, + -1.046360e+03, + 2.493151e+03, + 1.393293e+04, + -3.083327e+04, + -4.093439e+02, + 1.594075e+03, + 1.413478e+04, + -1.950779e+04, + -7.012349e+01, + 6.281431e+02, + 1.425796e+04, +}; + +double solarDataset600[] = +{ + 1.454828e+13, + -1.753873e+07, + 4.108891e+04, + 1.618972e+03, + -1.384284e+12, + 3.644504e+08, + 5.345299e+04, + 1.619749e+03, + -5.626237e+10, + 3.552050e+07, + 8.094015e+04, + 1.629074e+03, + 3.728997e+09, + -3.217893e+06, + 8.610187e+04, + 1.657417e+03, + -1.341046e+09, + 2.537266e+06, + 8.654787e+04, + 1.711991e+03, + 1.037406e+09, + -1.842154e+06, + 8.743552e+04, + 1.804243e+03, + -2.281591e+08, + 1.692114e+06, + 8.931420e+04, + 1.940869e+03, + 4.381924e+07, + 4.651551e+05, + 9.344253e+04, + 2.142112e+03, + -4.759171e+07, + 8.163875e+05, + 9.726835e+04, + 2.419359e+03, + -1.821050e+07, + 4.964279e+05, + 1.013782e+05, + 2.792134e+03, + -2.368294e+07, + 4.294862e+05, + 1.048241e+05, + 3.274694e+03, + -1.941022e+07, + 2.763683e+05, + 1.074121e+05, + 3.882373e+03, + -1.590314e+07, + 1.381601e+05, + 1.084676e+05, + 4.624161e+03, + -1.691643e+07, + 5.407009e+04, + 1.075833e+05, + 5.501698e+03, + -9.692053e+06, + -1.241486e+05, + 1.040909e+05, + 6.506736e+03, + -4.836417e+06, + -2.247011e+05, + 9.795019e+04, + 7.611780e+03, + -5.822942e+06, + -2.072205e+05, + 9.012361e+04, + 8.785157e+03, + -4.934677e+05, + -2.953874e+05, + 8.082216e+04, + 9.997030e+03, + -1.972241e+06, + -2.181519e+05, + 7.109185e+04, + 1.120129e+04, + -2.891157e+05, + -2.240168e+05, + 6.151353e+04, + 1.238053e+04, + -4.966324e+05, + -1.758467e+05, + 5.236592e+04, + 1.350154e+04, + 1.641487e+05, + -1.585700e+05, + 4.401724e+04, + 1.455163e+04, + 8.034773e+04, + -1.203842e+05, + 3.671628e+04, + 1.551563e+04, + -1.271137e+04, + -9.085232e+04, + 3.057720e+04, + 1.639592e+04, + 3.823284e+04, + -7.282635e+04, + 2.535605e+04, + 1.719488e+04, + 4.041914e+04, + -5.648343e+04, + 2.094476e+04, + 1.791302e+04, + 9.493516e+04, + -4.559175e+04, + 1.728272e+04, + 1.855507e+04, + -5.146686e+04, + -2.872101e+04, + 1.434663e+04, + 1.912718e+04, + 7.274758e+04, + -2.868041e+04, + 1.186372e+04, + 1.964130e+04, + -1.137111e+04, + -1.752581e+04, + 9.839214e+03, + 2.009446e+04, + -1.008472e+04, + -1.422576e+04, + 8.192508e+03, + 2.050076e+04, + 2.515788e+04, + -1.323360e+04, + 6.753657e+03, + 2.086086e+04, + 1.584386e+04, + -9.397442e+03, + 5.594194e+03, + 2.117599e+04, + -1.982323e+04, + -5.090890e+03, + 4.709331e+03, + 2.145612e+04, + 9.160687e+03, + -6.384271e+03, + 3.918052e+03, + 2.170842e+04, + 6.487543e+03, + -4.632844e+03, + 3.236203e+03, + 2.192755e+04, + -1.558850e+04, + -2.009499e+03, + 2.714977e+03, + 2.212059e+04, + 1.214568e+04, + -4.063965e+03, + 2.216067e+03, + 2.229301e+04, + -9.387616e+03, + -1.151481e+03, + 1.817672e+03, + 2.243736e+04, + 1.549500e+03, + -2.094099e+03, + 1.475644e+03, + 2.256570e+04, + -4.531227e+03, + -1.034617e+03, + 1.167963e+03, + 2.267195e+04, + -2.936346e+03, + -1.036553e+03, + 8.946197e+02, + 2.276081e+04, + -4.991516e+03, + -5.847746e+02, + 6.400900e+02, + 2.283020e+04, + -8.686370e+03, + -8.226384e+00, + 4.001762e+02, + 2.288082e+04, + -4.282608e+03, + -6.966287e+01, + 1.490135e+02, + 2.291176e+04, + -8.258616e+13, + 9.904778e+08, + 1.318286e+05, + 7.747884e+02, + 2.062665e+12, + -4.786463e+08, + 9.235644e+04, + 7.769322e+02, + -3.538830e+10, + 2.205724e+07, + 6.694206e+04, + 7.847311e+02, + 4.058662e+09, + -3.295631e+06, + 7.000223e+04, + 8.077786e+02, + -1.994471e+07, + 1.416720e+06, + 7.075137e+04, + 8.521384e+02, + -1.187269e+08, + 1.283696e+06, + 7.366460e+04, + 9.280772e+02, + 2.540619e+08, + 2.026807e+05, + 7.681548e+04, + 1.046331e+03, + -1.391960e+08, + 1.579054e+06, + 8.135576e+04, + 1.218133e+03, + 2.530622e+07, + 5.920718e+05, + 8.701200e+04, + 1.465097e+03, + -3.251666e+07, + 8.728196e+05, + 9.250368e+04, + 1.800184e+03, + -4.349050e+07, + 7.754678e+05, + 9.852956e+04, + 2.248042e+03, + -2.011892e+07, + 3.930905e+05, + 1.031312e+05, + 2.827391e+03, + -1.799797e+07, + 2.525175e+05, + 1.056848e+05, + 3.545122e+03, + -1.574729e+07, + 1.139525e+05, + 1.062387e+05, + 4.406529e+03, + -1.205118e+07, + -2.983359e+04, + 1.041875e+05, + 5.405193e+03, + -6.697812e+06, + -1.674924e+05, + 9.926112e+04, + 6.519409e+03, + -4.384345e+06, + -2.195876e+05, + 9.199400e+04, + 7.714342e+03, + -1.862072e+06, + -2.540928e+05, + 8.320020e+04, + 8.954122e+03, + -1.908592e+06, + -2.218975e+05, + 7.374786e+04, + 1.020097e+04, + -6.595484e+05, + -2.191046e+05, + 6.409677e+04, + 1.142642e+04, + 5.591668e+05, + -2.065625e+05, + 5.471249e+04, + 1.259732e+04, + -8.093373e+05, + -1.264564e+05, + 4.652504e+04, + 1.369474e+04, + 1.688527e+05, + -1.334041e+05, + 3.909025e+04, + 1.472375e+04, + 2.419749e+05, + -1.045422e+05, + 3.245138e+04, + 1.565887e+04, + -1.230208e+05, + -6.804517e+04, + 2.707154e+04, + 1.650613e+04, + 1.126806e+05, + -6.300250e+04, + 2.249086e+04, + 1.727731e+04, + -7.142991e+04, + -4.118624e+04, + 1.863553e+04, + 1.796673e+04, + 1.675606e+05, + -4.267365e+04, + 1.536107e+04, + 1.858582e+04, + -6.485362e+04, + -2.110609e+04, + 1.279192e+04, + 1.913137e+04, + 2.637560e+04, + -2.212235e+04, + 1.067530e+04, + 1.962669e+04, + 7.981750e+03, + -1.608272e+04, + 8.844225e+03, + 2.006475e+04, + 1.871909e+04, + -1.315898e+04, + 7.352146e+03, + 2.045392e+04, + -1.840475e+04, + -8.056233e+03, + 6.149474e+03, + 2.079909e+04, + 1.957039e+04, + -9.075917e+03, + 5.104541e+03, + 2.110797e+04, + -8.536233e+03, + -4.982923e+03, + 4.248788e+03, + 2.137749e+04, + 3.499200e+03, + -5.020523e+03, + 3.538293e+03, + 2.161816e+04, + -2.000849e+03, + -3.512066e+03, + 2.928448e+03, + 2.182841e+04, + 3.638545e+03, + -3.264362e+03, + 2.415994e+03, + 2.201285e+04, + -1.015257e+04, + -1.420977e+03, + 1.998918e+03, + 2.217269e+04, + 4.403337e+03, + -2.590383e+03, + 1.602086e+03, + 2.231300e+04, + -7.875874e+03, + -7.971346e+02, + 1.270059e+03, + 2.242772e+04, + 2.108760e+03, + -1.686184e+03, + 9.648043e+02, + 2.252491e+04, + -9.024057e+03, + -1.121285e+02, + 7.146217e+02, + 2.259896e+04, + -1.078560e+04, + 5.370255e+01, + 4.574484e+02, + 2.265738e+04, + -4.144847e+03, + -1.351749e+02, + 1.580973e+02, + 2.269255e+04, + -7.925848e+12, + 7.954113e+07, + 4.342033e+04, + 2.306639e+02, + 2.269955e+11, + -6.495581e+07, + 3.909724e+04, + 2.313954e+02, + 3.302993e+10, + -1.552044e+07, + 3.333664e+04, + 2.355661e+02, + -4.784910e+09, + 7.541830e+06, + 3.379938e+04, + 2.459800e+02, + 3.613537e+08, + 7.051546e+05, + 3.758040e+04, + 2.693637e+02, + 2.012123e+08, + 9.047518e+05, + 4.026196e+04, + 3.100796e+02, + -3.247217e+07, + 1.458624e+06, + 4.458575e+04, + 3.762391e+02, + 3.509220e+07, + 1.133284e+06, + 5.050532e+04, + 4.804963e+02, + -6.375528e+07, + 1.554986e+06, + 5.800171e+04, + 6.381134e+02, + -2.892941e+07, + 1.197304e+06, + 6.695868e+04, + 8.734957e+02, + -5.164969e+07, + 1.213830e+06, + 7.625104e+04, + 1.209469e+03, + -2.739672e+07, + 7.928510e+05, + 8.505819e+04, + 1.674458e+03, + -2.787464e+07, + 6.247649e+05, + 9.206065e+04, + 2.284897e+03, + -1.871019e+07, + 3.383328e+05, + 9.669688e+04, + 3.055270e+03, + -1.379705e+07, + 1.369205e+05, + 9.808678e+04, + 3.981429e+03, + -8.704135e+06, + -3.571846e+04, + 9.616835e+04, + 5.046769e+03, + -4.155272e+06, + -1.581929e+05, + 9.124700e+04, + 6.219767e+03, + -4.104771e+06, + -1.676177e+05, + 8.431879e+04, + 7.461843e+03, + -1.265230e+06, + -2.229547e+05, + 7.591780e+04, + 8.739201e+03, + -9.083431e+05, + -2.002438e+05, + 6.683417e+04, + 1.000630e+04, + -5.255757e+05, + -1.783831e+05, + 5.790308e+04, + 1.123644e+04, + 4.993118e+05, + -1.719879e+05, + 4.940310e+04, + 1.240539e+04, + -7.487545e+05, + -9.942973e+04, + 4.203530e+04, + 1.349507e+04, + 3.978438e+05, + -1.195978e+05, + 3.528825e+04, + 1.451412e+04, + -2.047206e+04, + -7.632391e+04, + 2.942983e+04, + 1.543376e+04, + 6.154258e+04, + -6.346317e+04, + 2.463164e+04, + 1.627325e+04, + -2.863798e+04, + -4.606248e+04, + 2.057180e+04, + 1.703219e+04, + 7.388099e+04, + -4.085648e+04, + 1.711248e+04, + 1.771723e+04, + -2.064163e+04, + -2.712556e+04, + 1.425554e+04, + 1.832846e+04, + 3.328744e+04, + -2.433972e+04, + 1.186725e+04, + 1.887791e+04, + 1.002028e+04, + -1.754222e+04, + 9.878580e+03, + 1.936576e+04, + 8.911729e+03, + -1.374369e+04, + 8.260222e+03, + 1.980154e+04, + -2.085488e+04, + -9.181720e+03, + 6.920058e+03, + 2.019044e+04, + 2.914076e+04, + -1.070749e+04, + 5.730227e+03, + 2.053766e+04, + -1.293038e+04, + -5.174966e+03, + 4.781798e+03, + 2.083987e+04, + 5.221232e+03, + -5.721930e+03, + 3.997709e+03, + 2.111160e+04, + 2.329131e+03, + -4.209210e+03, + 3.318380e+03, + 2.134929e+04, + -1.120600e+04, + -2.323414e+03, + 2.771525e+03, + 2.155871e+04, + 4.077728e+03, + -3.348798e+03, + 2.255768e+03, + 2.174367e+04, + -4.397494e+03, + -1.781340e+03, + 1.814239e+03, + 2.189875e+04, + -2.371566e+03, + -1.679149e+03, + 1.440870e+03, + 2.203123e+04, + -3.509356e+03, + -1.211255e+03, + 1.104800e+03, + 2.213993e+04, + -6.401342e+03, + -6.643209e+02, + 8.055120e+02, + 2.222624e+04, + -9.121022e+03, + -1.798506e+02, + 5.138316e+02, + 2.229047e+04, + -6.114652e+03, + -5.727757e+01, + 2.165918e+02, + 2.233048e+04, + 9.465569e+11, + 2.157107e+07, + 2.323822e+03, + 3.141042e+01, + -3.198079e+11, + 7.414625e+07, + 3.911285e+03, + 3.146173e+01, + 9.476628e+09, + -4.475969e+06, + 7.835770e+03, + 3.245139e+01, + -8.928972e+08, + 1.881666e+06, + 7.953473e+03, + 3.487056e+01, + 3.171872e+08, + 2.635279e+05, + 9.264064e+03, + 4.047706e+01, + -5.849106e+07, + 9.732834e+05, + 1.087038e+04, + 5.087843e+01, + 8.242971e+07, + 6.037953e+05, + 1.349207e+04, + 7.009928e+01, + -3.032662e+07, + 1.159453e+06, + 1.732089e+04, + 1.033948e+02, + -3.561716e+07, + 1.251423e+06, + 2.330419e+04, + 1.629440e+02, + -3.448639e+07, + 1.286417e+06, + 3.117127e+04, + 2.657617e+02, + -3.649510e+07, + 1.300592e+06, + 4.093241e+04, + 4.359338e+02, + -4.363745e+07, + 1.276591e+06, + 5.220971e+04, + 7.050447e+02, + -2.840810e+07, + 9.451539e+05, + 6.355126e+04, + 1.108138e+03, + -2.581926e+07, + 7.360833e+05, + 7.326328e+04, + 1.668684e+03, + -1.354418e+07, + 3.883004e+05, + 8.025788e+04, + 2.403289e+03, + -1.377454e+07, + 2.590663e+05, + 8.389776e+04, + 3.304769e+03, + -6.998331e+06, + 2.378317e+04, + 8.395422e+04, + 4.361063e+03, + -3.017568e+06, + -1.031107e+05, + 8.045998e+04, + 5.528584e+03, + -3.053944e+06, + -1.159054e+05, + 7.492129e+04, + 6.765323e+03, + -9.988790e+05, + -1.670190e+05, + 6.794613e+04, + 8.038403e+03, + -7.984465e+05, + -1.523819e+05, + 6.021692e+04, + 9.302581e+03, + -9.338634e+04, + -1.494507e+05, + 5.246052e+04, + 1.053131e+04, + -1.035431e+05, + -1.215806e+05, + 4.515398e+04, + 1.169887e+04, + -7.357601e+04, + -9.990059e+04, + 3.857402e+04, + 1.279598e+04, + 1.792570e+03, + -8.319324e+04, + 3.268700e+04, + 1.381455e+04, + 3.874347e+04, + -6.749650e+04, + 2.752666e+04, + 1.474920e+04, + 4.244814e+04, + -5.329079e+04, + 2.311818e+04, + 1.560008e+04, + -7.930994e+03, + -3.984100e+04, + 1.941511e+04, + 1.637147e+04, + 8.733277e+04, + -3.589956e+04, + 1.626214e+04, + 1.706943e+04, + -7.640893e+04, + -1.973546e+04, + 1.370832e+04, + 1.769570e+04, + 6.465562e+04, + -2.412718e+04, + 1.146747e+04, + 1.826574e+04, + -1.257959e+04, + -1.387134e+04, + 9.594876e+03, + 1.876880e+04, + -3.216704e+03, + -1.199645e+04, + 8.071823e+03, + 1.922295e+04, + 1.185898e+04, + -1.055074e+04, + 6.732374e+03, + 1.962756e+04, + -8.043290e+02, + -7.356438e+03, + 5.627495e+03, + 1.998509e+04, + -1.628058e+03, + -5.891328e+03, + 4.712682e+03, + 2.030343e+04, + -3.439586e+03, + -4.645427e+03, + 3.923985e+03, + 2.058511e+04, + 3.075924e+03, + -4.271196e+03, + 3.234865e+03, + 2.083229e+04, + -1.635081e+03, + -2.923961e+03, + 2.662415e+03, + 2.104614e+04, + -7.090127e+03, + -1.933064e+03, + 2.185308e+03, + 2.123232e+04, + -4.437563e+03, + -1.933243e+03, + 1.734860e+03, + 2.139234e+04, + -3.653738e+02, + -1.892874e+03, + 1.311083e+03, + 2.152288e+04, + -1.354368e+04, + -1.252045e+02, + 9.651989e+02, + 2.162438e+04, + -6.525776e+03, + -7.519351e+02, + 5.872714e+02, + 2.170241e+04, + -6.046958e+03, + -1.425454e+02, + 2.526236e+02, + 2.174657e+04, + 7.685478e+11, + -3.587368e+06, + -5.614277e+02, + 2.176726e+00, + -6.325697e+10, + 1.540102e+07, + 0, + 2.169919e+00, + 6.037976e+08, + -1.269417e+05, + 9.536601e+02, + 2.283023e+00, + -1.231879e+08, + 2.884108e+05, + 1.064814e+03, + 2.602961e+00, + 1.338161e+08, + -3.138454e+04, + 1.282376e+03, + 3.367459e+00, + -8.742091e+06, + 3.029956e+05, + 1.660242e+03, + 4.836763e+00, + 4.214728e+05, + 3.431726e+05, + 2.546292e+03, + 8.152906e+00, + -8.769409e+06, + 4.935859e+05, + 4.054901e+03, + 1.537637e+01, + -2.118875e+07, + 7.043190e+05, + 6.707452e+03, + 3.116117e+01, + -1.956295e+07, + 8.532277e+05, + 1.108718e+04, + 6.499704e+01, + -3.731153e+07, + 1.135945e+06, + 1.777807e+04, + 1.334155e+02, + -3.091261e+07, + 1.121036e+06, + 2.709678e+04, + 2.649024e+02, + -3.270901e+07, + 1.105922e+06, + 3.809708e+04, + 4.929304e+02, + -2.200409e+07, + 8.529194e+05, + 4.956525e+04, + 8.559269e+02, + -2.038642e+07, + 6.855276e+05, + 5.978076e+04, + 1.380667e+03, + -1.117204e+07, + 3.795010e+05, + 6.745803e+04, + 2.085776e+03, + -9.901093e+06, + 2.365954e+05, + 7.171413e+04, + 2.961349e+03, + -4.354972e+06, + 3.054048e+04, + 7.248689e+04, + 3.990590e+03, + -3.140714e+06, + -3.946535e+04, + 7.017581e+04, + 5.129246e+03, + -1.994865e+06, + -9.051388e+04, + 6.582553e+04, + 6.341791e+03, + -5.803806e+05, + -1.294484e+05, + 5.994991e+04, + 7.586278e+03, + -8.405790e+05, + -1.086236e+05, + 5.349962e+04, + 8.822279e+03, + 2.303613e+05, + -1.273856e+05, + 4.686398e+04, + 1.002781e+04, + -4.101851e+05, + -8.285763e+04, + 4.066681e+04, + 1.117171e+04, + 2.025071e+05, + -9.176353e+04, + 3.492952e+04, + 1.225612e+04, + -1.241871e+05, + -6.014883e+04, + 2.981741e+04, + 1.325813e+04, + 7.450568e+04, + -5.766421e+04, + 2.535029e+04, + 1.418817e+04, + -3.498195e+04, + -4.081103e+04, + 2.145641e+04, + 1.503639e+04, + 5.737509e+04, + -3.728994e+04, + 1.810341e+04, + 1.581109e+04, + 1.553564e+04, + -2.696393e+04, + 1.527417e+04, + 1.651003e+04, + -3.264956e+04, + -1.915601e+04, + 1.294140e+04, + 1.714428e+04, + 2.039836e+04, + -1.885321e+04, + 1.087146e+04, + 1.771893e+04, + 3.616331e+04, + -1.547233e+04, + 9.097636e+03, + 1.822993e+04, + -4.400956e+04, + -6.947860e+03, + 7.730975e+03, + 1.868663e+04, + 2.524433e+04, + -1.107087e+04, + 6.479718e+03, + 1.910332e+04, + -1.159559e+04, + -5.722883e+03, + 5.403721e+03, + 1.946613e+04, + 8.803311e+03, + -6.362971e+03, + 4.509957e+03, + 1.979080e+04, + -7.832658e+03, + -3.602953e+03, + 3.758517e+03, + 2.007421e+04, + -6.382527e+03, + -3.252304e+03, + 3.110174e+03, + 2.032548e+04, + 1.111503e+03, + -3.330009e+03, + 2.499038e+03, + 2.054191e+04, + -6.645172e+03, + -1.857684e+03, + 1.983350e+03, + 2.072246e+04, + -4.647336e+02, + -2.123280e+03, + 1.524736e+03, + 2.087328e+04, + -1.619462e+04, + -7.161461e+01, + 1.135444e+03, + 2.099191e+04, + -1.145722e+04, + -5.148367e+02, + 6.981336e+02, + 2.108415e+04, + -8.317955e+03, + -3.174918e+01, + 2.682136e+02, + 2.113680e+04, + 6.686770e+09, + -5.232905e+04, + 9.004540e+01, + 8.220978e-02, + -1.221062e+09, + 1.938090e+05, + 9.420210e+01, + 8.378067e-02, + 9.327238e+07, + -6.870038e+04, + 8.763799e+01, + 9.582414e-02, + 5.996937e+07, + -4.274478e+04, + 7.265223e+01, + 1.204347e-01, + -1.133786e+07, + 6.147611e+04, + 9.131150e+01, + 1.649432e-01, + 3.386784e+05, + 5.305621e+04, + 1.829889e+02, + 3.157484e-01, + 3.484062e+06, + 8.082698e+04, + 3.519414e+02, + 7.346517e-01, + -8.136297e+06, + 2.145670e+05, + 7.559280e+02, + 1.929050e+00, + -1.422495e+07, + 3.782352e+05, + 1.798927e+03, + 5.751019e+00, + -1.921481e+07, + 5.817554e+05, + 4.031473e+03, + 1.702790e+01, + -2.466374e+07, + 8.092501e+05, + 8.208813e+03, + 4.659724e+01, + -2.957367e+07, + 9.988951e+05, + 1.503472e+04, + 1.151984e+02, + -2.934849e+07, + 1.043498e+06, + 2.455141e+04, + 2.553897e+02, + -2.437625e+07, + 9.281228e+05, + 3.566919e+04, + 5.065714e+02, + -1.808598e+07, + 7.249953e+05, + 4.667018e+04, + 9.049815e+02, + -1.413967e+07, + 5.250627e+05, + 5.602253e+04, + 1.475116e+03, + -9.253251e+06, + 3.021326e+05, + 6.252165e+04, + 2.225350e+03, + -4.436136e+06, + 1.093543e+05, + 6.552585e+04, + 3.139939e+03, + -4.814005e+06, + 5.669314e+04, + 6.565072e+04, + 4.187778e+03, + -1.840489e+06, + -6.337635e+04, + 6.313183e+04, + 5.341067e+03, + -6.904183e+05, + -1.012176e+05, + 5.850287e+04, + 6.544246e+03, + -7.497582e+05, + -9.311380e+04, + 5.312391e+04, + 7.761001e+03, + -4.210654e+05, + -9.618680e+04, + 4.738566e+04, + 8.967658e+03, + 8.995083e+04, + -9.946898e+04, + 4.148243e+04, + 1.013491e+04, + -2.075976e+05, + -7.103257e+04, + 3.602031e+04, + 1.124072e+04, + 8.338291e+04, + -7.078879e+04, + 3.100960e+04, + 1.228431e+04, + -2.730415e+04, + -5.205078e+04, + 2.653114e+04, + 1.325030e+04, + 2.150946e+04, + -4.459231e+04, + 2.264211e+04, + 1.414394e+04, + -1.423980e+04, + -3.417936e+04, + 1.925258e+04, + 1.496260e+04, + 1.473821e+04, + -2.918906e+04, + 1.630554e+04, + 1.571000e+04, + 3.220392e+04, + -2.405451e+04, + 1.376762e+04, + 1.638610e+04, + -2.684524e+04, + -1.571254e+04, + 1.167668e+04, + 1.699638e+04, + 3.088042e+04, + -1.651758e+04, + 9.851958e+03, + 1.755058e+04, + -1.721349e+04, + -9.750730e+03, + 8.323807e+03, + 1.804451e+04, + 1.345637e+04, + -1.027197e+04, + 7.017991e+03, + 1.849141e+04, + -2.174811e+04, + -5.602956e+03, + 5.906349e+03, + 1.888762e+04, + 1.177125e+04, + -7.439854e+03, + 4.898836e+03, + 1.924275e+04, + 1.647970e+03, + -4.795697e+03, + 4.041270e+03, + 1.954881e+04, + -5.843917e+03, + -3.222697e+03, + 3.369872e+03, + 1.981799e+04, + -9.789821e+03, + -2.446804e+03, + 2.772770e+03, + 2.005474e+04, + -1.378097e+03, + -2.879752e+03, + 2.186681e+03, + 2.025740e+04, + -6.290251e+03, + -1.724383e+03, + 1.668369e+03, + 2.042133e+04, + -1.101343e+04, + -9.097999e+02, + 1.211492e+03, + 2.055181e+04, + -1.111452e+04, + -5.639870e+02, + 7.532181e+02, + 2.064806e+04, + -8.320836e+03, + -1.432660e+02, + 3.235242e+02, + 2.070595e+04, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -1.472727e+07, + 9.704940e+03, + 0, + 0, + -2.351848e+05, + 1.879504e+02, + 1.617783e+00, + 5.236292e-04, + 8.699198e+05, + -9.875575e+02, + 1.570521e+00, + 1.570887e-03, + -6.250379e+05, + 4.145386e+03, + 2.379199e+00, + 3.141775e-03, + 4.286236e+05, + 4.412056e+03, + 1.077048e+01, + 1.466162e-02, + -2.043447e+06, + 3.157819e+04, + 3.625093e+01, + 6.388276e-02, + -1.085061e+06, + 6.162908e+04, + 1.682113e+02, + 3.869620e-01, + -6.697354e+06, + 1.915110e+05, + 5.837246e+02, + 1.821706e+00, + -1.347910e+07, + 3.939200e+05, + 1.934535e+03, + 8.045039e+00, + -1.740487e+07, + 5.943821e+05, + 5.113283e+03, + 2.940335e+01, + -2.005659e+07, + 7.567963e+05, + 1.080316e+04, + 8.665382e+01, + -1.933757e+07, + 8.074300e+05, + 1.910717e+04, + 2.128584e+02, + -1.922524e+07, + 7.785521e+05, + 2.917605e+04, + 4.485973e+02, + -1.197210e+07, + 5.629568e+05, + 3.928913e+04, + 8.333176e+02, + -9.951533e+06, + 4.244022e+05, + 4.773463e+04, + 1.385596e+03, + -6.709627e+06, + 2.506304e+05, + 5.376726e+04, + 2.114235e+03, + -3.571100e+06, + 9.933375e+04, + 5.665657e+04, + 3.002215e+03, + -2.574425e+06, + 2.579319e+04, + 5.681603e+04, + 4.016538e+03, + -1.456834e+06, + -3.525546e+04, + 5.484294e+04, + 5.124406e+03, + -8.939211e+05, + -6.390266e+04, + 5.124523e+04, + 6.284900e+03, + -1.101180e+05, + -8.746416e+04, + 4.665656e+04, + 7.461369e+03, + -4.681458e+05, + -6.529437e+04, + 4.184970e+04, + 8.621092e+03, + -4.045757e+03, + -7.596463e+04, + 3.697388e+04, + 9.752269e+03, + -1.734660e+04, + -6.231731e+04, + 3.224549e+04, + 1.082680e+04, + -9.987665e+04, + -4.861101e+04, + 2.799504e+04, + 1.184010e+04, + 7.265535e+04, + -4.826171e+04, + 2.406867e+04, + 1.278797e+04, + -1.134999e+04, + -3.441852e+04, + 2.062683e+04, + 1.365988e+04, + 6.090832e+03, + -2.914563e+04, + 1.767500e+04, + 1.446480e+04, + -6.974627e+02, + -2.329559e+04, + 1.508844e+04, + 1.520183e+04, + -1.472800e+04, + -1.825859e+04, + 1.284207e+04, + 1.587375e+04, + 3.206836e+04, + -1.770135e+04, + 1.085176e+04, + 1.648269e+04, + -2.032028e+03, + -1.153400e+04, + 9.204911e+03, + 1.702789e+04, + -2.968679e+04, + -7.797147e+03, + 7.845514e+03, + 1.752289e+04, + 3.245165e+04, + -1.117046e+04, + 6.548123e+03, + 1.796936e+04, + -1.709462e+04, + -4.558688e+03, + 5.505584e+03, + 1.835768e+04, + -9.796017e+03, + -4.811111e+03, + 4.633948e+03, + 1.870978e+04, + 3.674447e+03, + -5.128812e+03, + 3.778722e+03, + 1.901758e+04, + 1.967537e+02, + -3.600181e+03, + 3.057183e+03, + 1.927876e+04, + -1.317163e+04, + -1.679278e+03, + 2.480028e+03, + 1.950210e+04, + -2.183190e+03, + -2.611229e+03, + 1.910794e+03, + 1.969236e+04, + -1.531156e+04, + -6.658682e+02, + 1.393683e+03, + 1.984029e+04, + -1.371122e+04, + -5.957229e+02, + 8.684685e+02, + 1.995218e+04, + -1.023819e+04, + -8.502304e+01, + 3.579622e+02, + 2.001862e+04, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -9.585623e+03, + 2.130250e+02, + 0, + 0, + -1.935079e+05, + 3.900197e+03, + 9.971148e-01, + 1.570887e-03, + -6.527066e+05, + 1.858015e+04, + 2.205255e+01, + 4.974477e-02, + -1.500053e+06, + 6.028248e+04, + 1.529140e+02, + 4.916878e-01, + -4.974313e+06, + 1.764505e+05, + 6.943200e+02, + 3.048045e+00, + -8.678217e+06, + 3.342531e+05, + 2.410493e+03, + 1.446892e+01, + -1.052839e+07, + 4.688102e+05, + 6.113438e+03, + 5.121774e+01, + -1.280428e+07, + 5.701865e+05, + 1.214618e+04, + 1.417166e+02, + -9.465653e+06, + 5.125406e+05, + 2.000545e+04, + 3.248129e+02, + -9.176467e+06, + 4.685079e+05, + 2.835925e+04, + 6.344485e+02, + -6.639283e+06, + 3.383421e+05, + 3.609536e+04, + 1.101131e+03, + -3.945560e+06, + 2.017257e+05, + 4.181661e+04, + 1.731452e+03, + -3.291661e+06, + 1.255684e+05, + 4.524933e+04, + 2.513072e+03, + -1.322687e+06, + 2.510134e+04, + 4.636870e+04, + 3.426583e+03, + -1.300582e+06, + 1.614129e+03, + 4.558508e+04, + 4.432770e+03, + -4.698930e+05, + -4.109357e+04, + 4.343189e+04, + 5.505804e+03, + -4.863562e+05, + -4.316647e+04, + 4.031339e+04, + 6.606426e+03, + -1.901139e+05, + -5.444630e+04, + 3.665707e+04, + 7.711348e+03, + 5.980810e+04, + -5.772322e+04, + 3.272677e+04, + 8.791214e+03, + -1.495518e+05, + -3.987647e+04, + 2.904712e+04, + 9.828835e+03, + -6.078588e+04, + -3.976407e+04, + 2.555865e+04, + 1.082406e+04, + 5.486112e+04, + -3.893029e+04, + 2.216912e+04, + 1.175926e+04, + 1.144987e+04, + -2.896840e+04, + 1.918876e+04, + 1.262592e+04, + -5.371250e+04, + -2.059823e+04, + 1.665072e+04, + 1.343193e+04, + 5.297801e+04, + -2.371871e+04, + 1.429575e+04, + 1.417935e+04, + -5.458191e+04, + -1.220823e+04, + 1.227995e+04, + 1.485766e+04, + 2.920703e+04, + -1.633866e+04, + 1.045753e+04, + 1.548314e+04, + -2.082029e+03, + -1.050044e+04, + 8.856110e+03, + 1.604077e+04, + -2.664664e+03, + -8.621342e+03, + 7.539708e+03, + 1.654564e+04, + -1.404636e+04, + -6.326128e+03, + 6.381937e+03, + 1.699969e+04, + 1.024075e+04, + -7.296601e+03, + 5.310162e+03, + 1.740478e+04, + -1.510660e+04, + -3.541083e+03, + 4.411345e+03, + 1.775632e+04, + 3.804952e+03, + -4.830017e+03, + 3.602141e+03, + 1.806686e+04, + -1.490810e+04, + -2.032319e+03, + 2.896991e+03, + 1.832807e+04, + -1.242364e+03, + -3.160581e+03, + 2.230378e+03, + 1.855009e+04, + -1.894988e+04, + -6.198991e+02, + 1.637798e+03, + 1.872279e+04, + -1.737924e+04, + -5.863084e+02, + 1.025930e+03, + 1.885493e+04, + -1.268231e+04, + -3.096204e+01, + 4.118873e+02, + 1.893342e+04, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -5.049934e+03, + 5.631291e+01, + 0, + 0, + 6.967623e+03, + 1.862467e+01, + 2.093108e-01, + 5.236292e-04, + -7.322636e+04, + 2.442067e+03, + 8.394707e-01, + 2.618146e-03, + -3.181040e+05, + 1.374125e+04, + 2.155526e+01, + 7.330808e-02, + -1.148779e+06, + 5.153572e+04, + 1.649367e+02, + 7.624041e-01, + -2.733073e+06, + 1.274952e+05, + 7.729699e+02, + 4.857184e+00, + -4.098947e+06, + 2.168990e+05, + 2.448323e+03, + 2.118970e+01, + -5.332313e+06, + 2.988307e+05, + 5.711927e+03, + 6.820689e+01, + -5.635984e+06, + 3.325101e+05, + 1.066895e+04, + 1.751199e+02, + -4.580008e+06, + 3.018134e+05, + 1.668111e+04, + 3.755809e+02, + -3.996023e+06, + 2.577529e+05, + 2.279537e+04, + 6.973693e+02, + -2.766915e+06, + 1.817487e+05, + 2.816438e+04, + 1.159531e+03, + -1.990806e+06, + 1.182930e+05, + 3.210268e+04, + 1.762734e+03, + -1.289423e+06, + 6.188542e+04, + 3.442340e+04, + 2.495993e+03, + -8.057612e+05, + 2.131305e+04, + 3.517139e+04, + 3.336770e+03, + -4.410684e+05, + -6.496765e+03, + 3.463019e+04, + 4.257853e+03, + -4.309360e+05, + -1.502963e+04, + 3.317952e+04, + 5.231419e+03, + -1.311448e+05, + -3.210778e+04, + 3.100030e+04, + 6.234108e+03, + -4.415939e+04, + -3.380143e+04, + 2.839568e+04, + 7.235375e+03, + -1.499349e+05, + -2.599550e+04, + 2.576558e+04, + 8.220003e+03, + 1.383474e+04, + -3.242390e+04, + 2.304396e+04, + 9.179023e+03, + -2.218020e+04, + -2.541662e+04, + 2.039304e+04, + 1.009087e+04, + -1.073837e+04, + -2.250757e+04, + 1.797035e+04, + 1.095521e+04, + -2.943186e+03, + -1.953326e+04, + 1.573007e+04, + 1.176649e+04, + -1.123711e+04, + -1.592828e+04, + 1.370204e+04, + 1.252187e+04, + 2.490499e+03, + -1.435292e+04, + 1.186123e+04, + 1.322100e+04, + -1.794959e+04, + -1.053958e+04, + 1.022032e+04, + 1.386157e+04, + 7.179634e+03, + -1.085313e+04, + 8.718724e+03, + 1.444657e+04, + 8.523870e+02, + -8.182112e+03, + 7.395488e+03, + 1.497070e+04, + -1.097305e+04, + -5.802531e+03, + 6.280139e+03, + 1.544169e+04, + -8.647890e+03, + -5.258780e+03, + 5.262032e+03, + 1.586351e+04, + -5.795295e+03, + -4.678129e+03, + 4.303340e+03, + 1.623208e+04, + -6.554213e+03, + -3.732850e+03, + 3.435184e+03, + 1.654581e+04, + -7.571927e+03, + -2.901504e+03, + 2.660403e+03, + 1.680635e+04, + -2.053198e+04, + -1.047036e+03, + 1.963335e+03, + 1.701494e+04, + -2.185000e+04, + -5.709901e+02, + 1.230253e+03, + 1.717247e+04, + -1.551733e+04, + -6.146695e+00, + 4.907671e+02, + 1.726691e+04, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -7.205704e+02, + 2.019571e+01, + 0, + 0, + 5.648551e+02, + 8.455095e+01, + 1.600871e-01, + 5.236292e-04, + -2.062497e+04, + 1.347926e+03, + 1.396682e+00, + 5.759921e-03, + -1.861333e+05, + 9.330316e+03, + 1.914727e+01, + 9.425325e-02, + -4.557963e+05, + 2.826252e+04, + 1.454540e+02, + 9.482924e-01, + -9.818830e+05, + 6.498886e+04, + 5.985040e+02, + 5.287607e+00, + -1.707438e+06, + 1.141619e+05, + 1.758923e+03, + 2.087971e+01, + -2.036629e+06, + 1.496179e+05, + 3.958518e+03, + 6.352460e+01, + -2.012618e+06, + 1.637584e+05, + 7.165573e+03, + 1.556844e+02, + -1.950650e+06, + 1.617404e+05, + 1.107139e+04, + 3.226943e+02, + -1.667168e+06, + 1.387401e+05, + 1.516993e+04, + 5.881769e+02, + -1.142383e+06, + 1.009370e+05, + 1.883831e+04, + 9.663550e+02, + -7.952061e+05, + 6.944554e+04, + 2.170582e+04, + 1.458843e+03, + -7.726009e+05, + 5.004691e+04, + 2.370696e+04, + 2.060531e+03, + -2.850905e+05, + 1.452110e+04, + 2.467497e+04, + 2.760501e+03, + -3.098623e+05, + 7.430022e+03, + 2.475227e+04, + 3.532009e+03, + -2.339934e+05, + -3.779062e+03, + 2.420063e+04, + 4.361069e+03, + 9.185211e+03, + -1.890242e+04, + 2.300010e+04, + 5.223842e+03, + -1.739850e+05, + -8.944235e+03, + 2.156361e+04, + 6.095069e+03, + -2.235243e+04, + -1.943860e+04, + 1.989104e+04, + 6.972243e+03, + 1.198136e+04, + -1.908709e+04, + 1.800541e+04, + 7.826082e+03, + -5.284415e+04, + -1.280211e+04, + 1.625202e+04, + 8.649491e+03, + 7.936083e+03, + -1.590172e+04, + 1.452061e+04, + 9.442641e+03, + -3.481822e+04, + -1.076757e+04, + 1.285434e+04, + 1.018969e+04, + 2.668691e+04, + -1.397913e+04, + 1.125258e+04, + 1.089268e+04, + -4.318571e+04, + -6.253629e+03, + 9.834934e+03, + 1.153860e+04, + 1.098736e+04, + -1.042348e+04, + 8.469408e+03, + 1.214108e+04, + -2.425142e+02, + -7.313199e+03, + 7.189537e+03, + 1.267873e+04, + -2.017386e+04, + -4.486061e+03, + 6.121964e+03, + 1.316283e+04, + -2.992189e+03, + -5.709493e+03, + 5.078553e+03, + 1.359667e+04, + -9.666249e+03, + -3.987421e+03, + 4.098707e+03, + 1.396771e+04, + -1.813279e+04, + -2.576703e+03, + 3.213557e+03, + 1.428080e+04, + -1.133652e+04, + -2.823670e+03, + 2.323008e+03, + 1.453377e+04, + -3.741587e+04, + 7.057299e+02, + 1.498721e+03, + 1.471689e+04, + -1.584264e+04, + -3.098032e+02, + 5.619166e+02, + 1.483525e+04, +}; + +double solarDataset640[] = +{ + -4.439940e+13, + 4.727269e+08, + 1.531960e+05, + 2.789585e+03, + 1.591240e+12, + -3.752929e+08, + 1.299147e+05, + 2.792139e+03, + -1.520825e+10, + 9.464386e+06, + 1.088507e+05, + 2.805146e+03, + 4.968166e+09, + -3.484485e+06, + 1.101562e+05, + 2.841278e+03, + -1.879797e+09, + 4.089612e+06, + 1.117743e+05, + 2.911407e+03, + 3.175884e+08, + -3.936103e+05, + 1.141396e+05, + 3.031274e+03, + -1.247720e+08, + 7.638848e+05, + 1.152491e+05, + 3.210576e+03, + -5.488648e+07, + 3.411906e+05, + 1.167998e+05, + 3.465231e+03, + 7.500485e+07, + -2.624350e+05, + 1.173902e+05, + 3.807030e+03, + -7.626345e+07, + 6.188938e+05, + 1.185754e+05, + 4.246394e+03, + -3.559987e+07, + 1.218147e+05, + 1.193649e+05, + 4.806045e+03, + -5.712451e+04, + -2.445439e+05, + 1.172780e+05, + 5.484460e+03, + -2.917238e+07, + 2.280130e+04, + 1.139230e+05, + 6.275571e+03, + -5.538333e+06, + -3.268659e+05, + 1.085716e+05, + 7.182661e+03, + -1.121999e+07, + -2.401591e+05, + 1.009303e+05, + 8.172688e+03, + -2.076868e+06, + -3.706500e+05, + 9.172349e+04, + 9.227661e+03, + -3.291261e+06, + -2.970064e+05, + 8.154785e+04, + 1.030640e+04, + -1.434784e+06, + -2.886252e+05, + 7.122383e+04, + 1.138676e+04, + -1.028562e+06, + -2.454059e+05, + 6.099909e+04, + 1.243693e+04, + 5.490447e+05, + -2.301291e+05, + 5.134306e+04, + 1.343419e+04, + -3.430376e+05, + -1.558810e+05, + 4.292772e+04, + 1.435918e+04, + 1.571421e+03, + -1.323344e+05, + 3.566474e+04, + 1.521511e+04, + 9.796970e+04, + -1.046920e+05, + 2.933950e+04, + 1.599219e+04, + 3.387552e+04, + -7.798390e+04, + 2.405845e+04, + 1.669041e+04, + 8.586974e+04, + -6.144906e+04, + 1.968644e+04, + 1.731476e+04, + 2.430737e+04, + -4.445872e+04, + 1.611932e+04, + 1.786927e+04, + 8.554925e+04, + -3.643019e+04, + 1.321141e+04, + 1.836202e+04, + -4.184780e+04, + -2.225372e+04, + 1.090368e+04, + 1.879790e+04, + 1.450911e+04, + -2.047436e+04, + 8.970817e+03, + 1.918782e+04, + 5.758854e+04, + -1.762438e+04, + 7.327434e+03, + 1.952962e+04, + -2.647884e+04, + -8.760163e+03, + 6.090933e+03, + 1.982896e+04, + 9.619644e+03, + -9.392713e+03, + 5.064150e+03, + 2.009878e+04, + 1.331023e+04, + -7.397082e+03, + 4.176136e+03, + 2.033522e+04, + -1.686056e+04, + -3.825364e+03, + 3.487137e+03, + 2.054344e+04, + 1.693753e+04, + -5.541195e+03, + 2.872701e+03, + 2.072965e+04, + -8.264414e+03, + -2.280044e+03, + 2.383048e+03, + 2.088944e+04, + 4.622434e+03, + -2.963743e+03, + 1.980519e+03, + 2.103278e+04, + -5.561131e+03, + -1.469762e+03, + 1.637947e+03, + 2.115668e+04, + -5.453383e+02, + -1.717846e+03, + 1.335926e+03, + 2.126589e+04, + -4.010140e+02, + -1.347042e+03, + 1.062944e+03, + 2.135796e+04, + 1.078165e+02, + -1.080735e+03, + 8.377248e+02, + 2.143475e+04, + -4.695232e+03, + -3.873397e+02, + 6.567006e+02, + 2.149810e+04, + -3.120412e+03, + -5.195693e+02, + 4.759587e+02, + 2.155020e+04, + -6.441655e+03, + 1.058743e+00, + 2.972071e+02, + 2.158758e+04, + -3.280148e+03, + -4.465469e+01, + 1.123506e+02, + 2.161064e+04, + -2.992526e+13, + 3.093632e+08, + 1.285107e+05, + 1.370598e+03, + 1.480405e+12, + -3.114235e+08, + 1.125000e+05, + 1.372752e+03, + -1.218458e+11, + 6.632321e+07, + 1.020083e+05, + 1.384393e+03, + 1.665317e+10, + -1.847940e+07, + 1.062419e+05, + 1.420637e+03, + -9.113149e+08, + 3.008784e+06, + 1.029925e+05, + 1.485201e+03, + 1.490734e+08, + 6.212466e+05, + 1.062972e+05, + 1.595766e+03, + -1.105384e+08, + 1.142941e+06, + 1.093467e+05, + 1.764612e+03, + -5.228906e+06, + 5.746185e+05, + 1.127616e+05, + 2.008312e+03, + -4.552848e+07, + 6.442601e+05, + 1.159764e+05, + 2.341555e+03, + -3.742689e+07, + 4.419059e+05, + 1.188852e+05, + 2.782009e+03, + -3.101838e+07, + 2.582848e+05, + 1.205636e+05, + 3.343203e+03, + -2.861615e+07, + 1.118720e+05, + 1.204816e+05, + 4.033752e+03, + -1.284625e+07, + -1.383981e+05, + 1.179923e+05, + 4.854326e+03, + -1.827905e+07, + -1.249114e+05, + 1.132356e+05, + 5.792405e+03, + -3.759817e+06, + -3.523765e+05, + 1.060046e+05, + 6.833684e+03, + -8.330140e+06, + -2.577154e+05, + 9.700446e+04, + 7.940175e+03, + -1.445189e+06, + -3.560434e+05, + 8.673825e+04, + 9.089991e+03, + -2.022213e+06, + -2.868506e+05, + 7.584981e+04, + 1.023690e+04, + -2.065185e+05, + -2.739897e+05, + 6.523903e+04, + 1.135845e+04, + -2.118780e+05, + -2.174656e+05, + 5.534385e+04, + 1.242638e+04, + -3.909280e+05, + -1.684039e+05, + 4.654358e+04, + 1.342916e+04, + 1.510131e+05, + -1.471904e+05, + 3.866829e+04, + 1.435729e+04, + 1.105359e+05, + -1.114876e+05, + 3.188896e+04, + 1.519973e+04, + 2.486681e+04, + -8.288938e+04, + 2.627788e+04, + 1.596027e+04, + 8.548810e+04, + -6.590200e+04, + 2.160359e+04, + 1.664380e+04, + 1.020428e+04, + -4.763506e+04, + 1.775888e+04, + 1.725353e+04, + 9.132896e+04, + -3.989775e+04, + 1.458947e+04, + 1.779729e+04, + -5.893551e+04, + -2.401330e+04, + 1.205272e+04, + 1.827892e+04, + 8.786788e+04, + -2.590156e+04, + 9.903800e+03, + 1.871007e+04, + -4.375724e+04, + -1.286701e+04, + 8.192812e+03, + 1.908692e+04, + 3.806013e+04, + -1.494288e+04, + 6.768657e+03, + 1.942561e+04, + -2.022679e+04, + -7.996085e+03, + 5.595118e+03, + 1.972091e+04, + 4.406976e+04, + -1.028506e+04, + 4.614651e+03, + 1.998424e+04, + -3.557882e+04, + -2.482117e+03, + 3.885495e+03, + 2.021282e+04, + 1.494002e+04, + -6.049385e+03, + 3.237819e+03, + 2.042301e+04, + -4.199329e+03, + -3.113389e+03, + 2.662895e+03, + 2.060288e+04, + 3.034471e+03, + -3.103970e+03, + 2.203542e+03, + 2.076205e+04, + 1.633791e+03, + -2.268264e+03, + 1.819033e+03, + 2.090013e+04, + -1.012340e+04, + -8.623465e+02, + 1.515031e+03, + 2.102106e+04, + 2.750467e+03, + -2.003038e+03, + 1.204360e+03, + 2.112756e+04, + -6.190024e-03, + -1.186111e+03, + 9.348330e+02, + 2.121315e+04, + -5.805871e+03, + -3.823047e+02, + 7.336037e+02, + 2.128391e+04, + -3.542666e+03, + -5.948154e+02, + 5.273264e+02, + 2.134212e+04, + -5.934580e+03, + -1.228610e+02, + 3.234636e+02, + 2.138330e+04, + -4.084604e+03, + -1.983933e+00, + 1.289217e+02, + 2.140821e+04, + -3.727579e+12, + 5.679231e+08, + -1.625664e+04, + 4.250653e+02, + -4.419365e+12, + 1.046109e+09, + 0, + 4.249347e+02, + 3.326869e+10, + -2.023689e+07, + 5.941925e+04, + 4.324018e+02, + 3.471040e+09, + -1.203176e+06, + 5.686938e+04, + 4.508607e+02, + -6.372727e+08, + 3.160899e+06, + 5.957054e+04, + 4.875431e+02, + 2.755881e+08, + 1.055176e+06, + 6.410412e+04, + 5.529359e+02, + -1.275647e+08, + 1.970311e+06, + 6.944887e+04, + 6.571524e+02, + 5.075274e+07, + 1.126893e+06, + 7.624159e+04, + 8.172947e+02, + -8.482724e+07, + 1.658999e+06, + 8.409947e+04, + 1.050219e+03, + -6.311669e+07, + 1.260619e+06, + 9.295005e+04, + 1.383576e+03, + -4.552108e+07, + 8.872372e+05, + 1.005958e+05, + 1.838863e+03, + -3.875198e+07, + 6.047687e+05, + 1.062746e+05, + 2.433263e+03, + -1.845368e+07, + 2.163822e+05, + 1.091074e+05, + 3.176447e+03, + -2.407756e+07, + 1.539447e+05, + 1.089878e+05, + 4.062922e+03, + -9.843639e+06, + -1.515457e+05, + 1.054688e+05, + 5.084079e+03, + -6.115161e+06, + -2.330786e+05, + 9.867827e+04, + 6.200673e+03, + -4.041083e+06, + -2.626724e+05, + 9.005089e+04, + 7.379350e+03, + -2.210499e+06, + -2.717189e+05, + 8.024778e+04, + 8.584178e+03, + -7.206211e+05, + -2.613685e+05, + 6.997467e+04, + 9.778451e+03, + -3.314310e+05, + -2.216301e+05, + 6.004300e+04, + 1.093132e+04, + -3.603027e+05, + -1.775358e+05, + 5.094016e+04, + 1.202401e+04, + 1.605319e+04, + -1.514987e+05, + 4.271129e+04, + 1.304370e+04, + 2.002792e+05, + -1.228584e+05, + 3.549450e+04, + 1.397850e+04, + -8.648454e+04, + -8.570485e+04, + 2.947253e+04, + 1.482726e+04, + 1.357791e+05, + -7.475766e+04, + 2.436487e+04, + 1.559714e+04, + -3.989941e+03, + -5.194180e+04, + 2.011571e+04, + 1.628557e+04, + 8.306635e+04, + -4.386703e+04, + 1.660847e+04, + 1.690318e+04, + -2.096461e+04, + -2.912937e+04, + 1.375069e+04, + 1.745251e+04, + 5.301057e+04, + -2.639084e+04, + 1.137582e+04, + 1.794452e+04, + -3.157995e+04, + -1.607394e+04, + 9.439187e+03, + 1.837976e+04, + 5.385344e+04, + -1.741312e+04, + 7.800361e+03, + 1.876916e+04, + -2.015355e+04, + -8.869094e+03, + 6.498800e+03, + 1.911013e+04, + -2.198646e+03, + -8.557864e+03, + 5.429310e+03, + 1.941755e+04, + 2.183501e+04, + -8.210271e+03, + 4.474652e+03, + 1.968824e+04, + -1.617257e+04, + -3.638040e+03, + 3.742270e+03, + 1.992456e+04, + 1.241488e+04, + -5.232775e+03, + 3.110539e+03, + 2.013736e+04, + -1.201730e+04, + -2.114134e+03, + 2.586648e+03, + 2.032131e+04, + 4.745978e+03, + -3.261955e+03, + 2.124178e+03, + 2.048556e+04, + 1.127970e+03, + -2.123757e+03, + 1.725024e+03, + 2.062462e+04, + -7.597785e+03, + -9.417226e+02, + 1.419309e+03, + 2.074488e+04, + 1.883744e+03, + -1.753948e+03, + 1.118928e+03, + 2.084928e+04, + -6.322678e+03, + -5.176974e+02, + 8.620266e+02, + 2.093272e+04, + -1.605836e+03, + -9.285398e+02, + 6.193314e+02, + 2.100093e+04, + -1.097960e+04, + 3.171899e+02, + 4.038220e+02, + 2.104937e+04, + -4.141973e+03, + -9.836002e+01, + 1.504665e+02, + 2.108164e+04, + -2.330422e+13, + 2.884024e+08, + 3.068028e+04, + 6.138150e+01, + 4.881998e+11, + -1.148322e+08, + 1.984912e+04, + 6.187669e+01, + 1.916792e+09, + 9.729664e+05, + 1.346125e+04, + 6.345753e+01, + -6.675440e+08, + 2.022162e+06, + 1.471542e+04, + 6.803805e+01, + 3.159170e+08, + 5.956514e+05, + 1.648024e+04, + 7.807293e+01, + 1.478614e+08, + 9.030786e+05, + 1.878080e+04, + 9.642790e+01, + -3.518216e+07, + 1.443802e+06, + 2.270551e+04, + 1.286811e+02, + 1.119347e+07, + 1.312378e+06, + 2.852122e+04, + 1.849385e+02, + -7.701323e+07, + 1.801352e+06, + 3.645263e+04, + 2.794408e+02, + -4.292657e+07, + 1.527104e+06, + 4.669619e+04, + 4.369697e+02, + -5.878099e+07, + 1.547497e+06, + 5.815348e+04, + 6.840577e+02, + -4.645158e+07, + 1.228475e+06, + 7.007176e+04, + 1.055326e+03, + -3.318499e+07, + 8.600360e+05, + 8.035939e+04, + 1.577501e+03, + -2.625219e+07, + 5.584589e+05, + 8.775849e+04, + 2.265846e+03, + -1.490142e+07, + 2.204949e+05, + 9.128794e+04, + 3.120972e+03, + -9.255229e+06, + 2.252877e+04, + 9.079563e+04, + 4.120827e+03, + -7.977564e+06, + -6.768208e+04, + 8.706674e+04, + 5.234990e+03, + -1.201566e+06, + -2.257152e+05, + 8.041358e+04, + 6.425469e+03, + -2.557683e+06, + -1.738737e+05, + 7.235760e+04, + 7.637924e+03, + -6.451356e+05, + -2.017795e+05, + 6.379658e+04, + 8.850205e+03, + -3.054659e+05, + -1.757830e+05, + 5.511053e+04, + 1.002201e+04, + 4.282739e+03, + -1.507765e+05, + 4.703559e+04, + 1.113375e+04, + -6.875119e+04, + -1.179384e+05, + 3.983315e+04, + 1.217219e+04, + -6.539296e+04, + -9.429366e+04, + 3.351548e+04, + 1.313309e+04, + 1.390880e+05, + -8.139794e+04, + 2.796880e+04, + 1.401195e+04, + 1.433916e+04, + -5.814147e+04, + 2.331691e+04, + 1.480596e+04, + 4.800799e+04, + -4.699949e+04, + 1.945486e+04, + 1.552491e+04, + 3.355324e+04, + -3.590662e+04, + 1.623079e+04, + 1.617181e+04, + -4.753516e+04, + -2.457913e+04, + 1.357598e+04, + 1.675372e+04, + 4.184174e+04, + -2.433031e+04, + 1.125925e+04, + 1.727713e+04, + 1.681958e+04, + -1.719019e+04, + 9.323416e+03, + 1.773841e+04, + 1.359243e+04, + -1.318457e+04, + 7.786144e+03, + 1.814905e+04, + -1.223584e+04, + -8.858780e+03, + 6.540344e+03, + 1.851573e+04, + 6.675612e+03, + -8.506817e+03, + 5.462955e+03, + 1.884458e+04, + 9.691761e+03, + -6.794523e+03, + 4.542950e+03, + 1.913430e+04, + -1.311304e+04, + -3.705444e+03, + 3.816631e+03, + 1.939046e+04, + 3.177047e+03, + -4.478421e+03, + 3.166507e+03, + 1.961984e+04, + 1.744567e+02, + -3.216510e+03, + 2.594630e+03, + 1.981779e+04, + -3.774980e+03, + -2.236340e+03, + 2.129548e+03, + 1.998954e+04, + 7.002038e+02, + -2.227548e+03, + 1.720140e+03, + 2.013795e+04, + -5.785630e+03, + -1.144891e+03, + 1.374334e+03, + 2.026261e+04, + -1.111106e+03, + -1.431800e+03, + 1.055204e+03, + 2.036742e+04, + -9.405081e+03, + -2.669856e+02, + 7.737057e+02, + 2.044926e+04, + -7.953502e+03, + -3.131021e+02, + 4.776272e+02, + 2.051154e+04, + -5.955234e+03, + -2.333631e+00, + 1.878496e+02, + 2.054783e+04, + 5.900736e+12, + -6.184322e+07, + -3.127993e+03, + 4.662247e+00, + -2.586883e+11, + 5.655632e+07, + 0, + 4.620175e+00, + 6.674828e+09, + -3.908526e+06, + 2.349221e+03, + 4.989151e+00, + 1.823458e+08, + 2.419007e+05, + 1.936986e+03, + 5.573806e+00, + -9.320896e+07, + 5.604882e+05, + 2.468082e+03, + 6.954925e+00, + 7.579802e+07, + 2.506737e+05, + 3.337623e+03, + 1.006148e+01, + -1.611317e+07, + 6.330473e+05, + 4.683591e+03, + 1.620640e+01, + -1.376354e+07, + 7.637402e+05, + 7.223657e+03, + 2.932462e+01, + -2.583591e+07, + 1.010277e+06, + 1.132308e+04, + 5.650986e+01, + -4.465643e+07, + 1.303261e+06, + 1.779668e+04, + 1.116488e+02, + -4.722198e+07, + 1.403819e+06, + 2.704938e+04, + 2.186730e+02, + -4.285916e+07, + 1.335126e+06, + 3.845701e+04, + 4.099392e+02, + -3.417982e+07, + 1.121722e+06, + 5.070906e+04, + 7.219074e+02, + -2.901563e+07, + 8.791541e+05, + 6.214431e+04, + 1.187121e+03, + -1.838120e+07, + 5.316987e+05, + 7.098441e+04, + 1.826925e+03, + -1.217421e+07, + 2.767583e+05, + 7.602698e+04, + 2.638278e+03, + -7.803981e+06, + 8.631945e+04, + 7.726482e+04, + 3.602555e+03, + -4.483355e+06, + -4.639403e+04, + 7.505263e+04, + 4.686021e+03, + -2.447868e+06, + -1.176936e+05, + 7.020737e+04, + 5.845505e+03, + -1.057698e+06, + -1.499728e+05, + 6.373873e+04, + 7.037935e+03, + -5.877838e+05, + -1.450739e+05, + 5.661180e+04, + 8.225507e+03, + -3.775252e+05, + -1.299298e+05, + 4.947172e+04, + 9.381489e+03, + -4.735522e+04, + -1.179415e+05, + 4.261136e+04, + 1.048487e+04, + -3.826733e+04, + -9.552913e+04, + 3.633754e+04, + 1.151890e+04, + 7.634655e+04, + -8.044760e+04, + 3.078666e+04, + 1.247799e+04, + -1.166207e+04, + -6.027152e+04, + 2.601237e+04, + 1.335852e+04, + -3.488352e+04, + -4.748362e+04, + 2.191882e+04, + 1.416472e+04, + 1.451432e+05, + -4.532720e+04, + 1.833155e+04, + 1.489651e+04, + -1.018718e+05, + -2.331123e+04, + 1.545194e+04, + 1.555285e+04, + 6.092841e+04, + -2.791611e+04, + 1.295407e+04, + 1.615327e+04, + 9.914125e+03, + -1.852473e+04, + 1.081145e+04, + 1.668531e+04, + -1.018421e+04, + -1.364660e+04, + 9.097815e+03, + 1.716368e+04, + 2.677632e+04, + -1.320567e+04, + 7.616752e+03, + 1.759324e+04, + -3.190707e+04, + -6.537187e+03, + 6.413697e+03, + 1.797428e+04, + 3.224420e+04, + -1.002234e+04, + 5.332416e+03, + 1.831827e+04, + -1.790675e+04, + -3.819177e+03, + 4.465077e+03, + 1.861606e+04, + 5.741706e+03, + -5.269812e+03, + 3.739037e+03, + 1.888589e+04, + -7.215146e+03, + -3.071621e+03, + 3.094632e+03, + 1.912037e+04, + -1.751587e+03, + -3.077939e+03, + 2.533371e+03, + 1.932641e+04, + 1.684196e+03, + -2.713112e+03, + 2.030604e+03, + 1.950173e+04, + -5.727454e+03, + -1.411693e+03, + 1.625658e+03, + 1.964880e+04, + -4.801342e+03, + -1.316339e+03, + 1.262519e+03, + 1.977305e+04, + -6.741413e+03, + -8.448004e+02, + 9.137641e+02, + 1.987167e+04, + -1.490630e+04, + 2.471177e+02, + 5.794638e+02, + 1.994416e+04, + -5.125526e+03, + -1.870754e+02, + 1.995830e+02, + 1.998926e+04, + -2.869444e+12, + 4.196504e+07, + 1.111129e+03, + 1.914998e-01, + 7.156578e+09, + -1.295320e+06, + 0, + 2.084253e-01, + -1.403689e+09, + 9.962077e+05, + 0, + 2.021387e-01, + -8.216375e+07, + 1.203012e+05, + 2.008386e+02, + 2.596854e-01, + 6.555093e+07, + -5.683459e+04, + 2.540250e+02, + 4.153999e-01, + -1.211732e+07, + 1.476175e+05, + 3.519336e+02, + 6.958794e-01, + 6.522379e+05, + 1.744630e+05, + 7.256024e+02, + 1.564399e+00, + -1.052628e+07, + 3.516827e+05, + 1.498850e+03, + 3.995866e+00, + -2.574797e+07, + 6.281950e+05, + 3.279889e+03, + 1.108668e+01, + -3.086743e+07, + 8.810812e+05, + 6.898743e+03, + 3.079762e+01, + -3.884285e+07, + 1.142616e+06, + 1.310979e+04, + 7.910539e+01, + -3.943960e+07, + 1.250215e+06, + 2.235506e+04, + 1.838892e+02, + -3.665357e+07, + 1.197647e+06, + 3.392539e+04, + 3.827845e+02, + -2.694963e+07, + 9.520602e+05, + 4.610324e+04, + 7.159656e+02, + -2.036503e+07, + 6.966329e+05, + 5.686927e+04, + 1.212730e+03, + -1.444636e+07, + 4.337031e+05, + 6.479572e+04, + 1.887513e+03, + -7.699672e+06, + 1.790196e+05, + 6.888180e+04, + 2.732083e+03, + -5.257205e+06, + 4.882563e+04, + 6.934273e+04, + 3.716165e+03, + -3.250320e+06, + -4.591330e+04, + 6.693171e+04, + 4.806015e+03, + -1.348332e+06, + -1.107657e+05, + 6.225009e+04, + 5.958500e+03, + -6.591738e+05, + -1.229398e+05, + 5.632815e+04, + 7.129749e+03, + -5.308371e+05, + -1.127866e+05, + 5.004913e+04, + 8.289289e+03, + -2.262225e+05, + -1.068280e+05, + 4.374560e+04, + 9.414179e+03, + 3.731957e+04, + -9.700161e+04, + 3.768587e+04, + 1.048232e+04, + -1.736652e+04, + -7.613110e+04, + 3.223589e+04, + 1.148048e+04, + -2.414547e+04, + -6.138152e+04, + 2.745864e+04, + 1.240735e+04, + 6.789920e+04, + -5.299159e+04, + 2.324807e+04, + 1.326047e+04, + -1.736037e+04, + -3.809564e+04, + 1.966746e+04, + 1.403819e+04, + 2.647414e+04, + -3.277573e+04, + 1.660775e+04, + 1.474812e+04, + 8.534694e+03, + -2.499570e+04, + 1.399418e+04, + 1.538991e+04, + -7.165778e+03, + -1.917919e+04, + 1.179604e+04, + 1.596990e+04, + 1.820885e+04, + -1.685831e+04, + 9.900832e+03, + 1.649223e+04, + 5.374457e+03, + -1.240641e+04, + 8.314451e+03, + 1.695838e+04, + -6.216827e+03, + -9.208817e+03, + 7.007123e+03, + 1.737642e+04, + 6.178700e+03, + -8.349800e+03, + 5.875342e+03, + 1.775088e+04, + -5.600157e+03, + -5.764635e+03, + 4.917613e+03, + 1.808234e+04, + 6.164147e+03, + -5.602643e+03, + 4.094812e+03, + 1.837682e+04, + -9.844895e+03, + -3.124692e+03, + 3.410559e+03, + 1.863437e+04, + 1.870561e+03, + -3.694799e+03, + 2.799852e+03, + 1.886209e+04, + -1.653556e+03, + -2.538690e+03, + 2.266366e+03, + 1.905585e+04, + -7.849600e+03, + -1.504537e+03, + 1.824372e+03, + 1.922132e+04, + -6.752870e+03, + -1.437372e+03, + 1.399671e+03, + 1.936046e+04, + -3.301713e+03, + -1.417094e+03, + 9.829110e+02, + 1.946895e+04, + -1.406390e+04, + 1.486421e+02, + 6.317347e+02, + 1.954571e+04, + -8.038091e+03, + -1.892693e+01, + 2.567819e+02, + 1.959578e+04, + 8.092438e+10, + -1.162467e+06, + -3.206142e+01, + 9.671708e-04, + -5.505060e+08, + 9.964000e+04, + 0, + 4.835854e-04, + 2.752931e+07, + -1.352454e+04, + 0, + 9.671708e-04, + -1.833317e+07, + 2.120320e+04, + 0, + 4.835854e-04, + 2.571019e+06, + -3.649190e+03, + 4.673637e+00, + 4.352269e-03, + -7.491211e+04, + 4.848017e+03, + 5.527414e+00, + 8.220952e-03, + -7.418260e+05, + 1.692347e+04, + 2.018402e+01, + 2.853154e-02, + -2.336180e+06, + 5.229333e+04, + 8.361598e+01, + 1.460428e-01, + -4.201515e+06, + 1.305820e+05, + 3.288177e+02, + 7.756710e-01, + -1.289169e+07, + 3.289640e+05, + 1.129365e+03, + 3.612867e+00, + -1.762035e+07, + 5.566023e+05, + 3.358858e+03, + 1.475322e+01, + -2.747414e+07, + 8.490401e+05, + 7.989587e+03, + 4.876524e+01, + -2.619987e+07, + 9.449800e+05, + 1.575022e+04, + 1.343985e+02, + -2.483176e+07, + 9.407079e+05, + 2.589242e+04, + 3.096513e+02, + -2.096394e+07, + 7.980703e+05, + 3.700925e+04, + 6.166125e+02, + -1.260854e+07, + 5.301678e+05, + 4.692981e+04, + 1.086607e+03, + -1.011947e+07, + 3.644354e+05, + 5.426536e+04, + 1.727560e+03, + -6.162520e+06, + 1.740138e+05, + 5.850899e+04, + 2.535811e+03, + -3.372106e+06, + 4.020494e+04, + 5.938275e+04, + 3.481855e+03, + -2.254455e+06, + -2.599647e+04, + 5.763576e+04, + 4.527013e+03, + -9.857144e+05, + -7.745357e+04, + 5.399678e+04, + 5.633404e+03, + -5.863116e+05, + -8.788475e+04, + 4.923235e+04, + 6.760406e+03, + -1.620644e+05, + -9.249139e+04, + 4.402444e+04, + 7.879244e+03, + -2.699903e+05, + -7.601326e+04, + 3.884746e+04, + 8.965668e+03, + -1.358876e+05, + -7.057037e+04, + 3.384431e+04, + 1.000696e+04, + 1.675314e+05, + -6.959774e+04, + 2.906964e+04, + 1.098559e+04, + -9.302058e+04, + -4.442220e+04, + 2.495681e+04, + 1.189088e+04, + 7.251168e+03, + -4.169873e+04, + 2.136185e+04, + 1.273426e+04, + 5.481866e+04, + -3.555078e+04, + 1.813324e+04, + 1.350642e+04, + -3.479656e+04, + -2.368568e+04, + 1.543658e+04, + 1.420950e+04, + 1.551094e+04, + -2.236704e+04, + 1.309303e+04, + 1.485312e+04, + 1.826623e+04, + -1.782883e+04, + 1.104855e+04, + 1.543299e+04, + 1.003366e+04, + -1.355278e+04, + 9.363013e+03, + 1.595548e+04, + -3.906669e+04, + -7.936198e+03, + 7.972150e+03, + 1.642815e+04, + 3.712882e+04, + -1.211740e+04, + 6.656119e+03, + 1.685648e+04, + -2.359586e+04, + -4.682025e+03, + 5.586378e+03, + 1.722895e+04, + 1.313605e+04, + -7.041172e+03, + 4.675363e+03, + 1.756662e+04, + -8.595405e+03, + -3.626245e+03, + 3.892172e+03, + 1.785962e+04, + -4.083225e+03, + -3.541047e+03, + 3.228339e+03, + 1.812020e+04, + -2.079108e+03, + -3.062724e+03, + 2.613468e+03, + 1.834503e+04, + -4.585763e+03, + -2.207125e+03, + 2.078593e+03, + 1.853488e+04, + -8.379371e+03, + -1.445921e+03, + 1.605151e+03, + 1.869252e+04, + -3.288252e+03, + -1.643252e+03, + 1.148159e+03, + 1.881809e+04, + -1.880134e+04, + 4.395417e+02, + 7.550833e+02, + 1.890833e+04, + -9.040297e+03, + -8.067476e+01, + 3.009619e+02, + 1.896881e+04, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -9.709387e+03, + 1.221581e+02, + 0, + 0, + -5.051096e+04, + 1.037139e+03, + 3.952580e-01, + 4.835854e-04, + -1.390577e+05, + 5.605787e+03, + 5.152017e+00, + 9.188123e-03, + -1.185086e+06, + 3.357945e+04, + 4.125296e+01, + 9.961860e-02, + -3.324630e+06, + 1.101904e+05, + 2.773980e+02, + 9.043047e-01, + -7.853728e+06, + 2.688967e+05, + 1.210126e+03, + 5.456778e+00, + -1.227331e+07, + 4.602241e+05, + 3.787044e+03, + 2.381416e+01, + -1.502364e+07, + 6.070524e+05, + 8.821902e+03, + 7.802554e+01, + -1.336220e+07, + 6.235281e+05, + 1.626265e+04, + 2.025851e+02, + -1.337434e+07, + 5.982898e+05, + 2.508429e+04, + 4.360495e+02, + -8.551671e+06, + 4.261216e+05, + 3.375827e+04, + 8.145489e+02, + -6.484517e+06, + 2.997790e+05, + 4.067227e+04, + 1.350606e+03, + -3.892800e+06, + 1.628204e+05, + 4.528823e+04, + 2.044370e+03, + -3.174152e+06, + 8.617744e+04, + 4.739307e+04, + 2.875549e+03, + -7.858401e+05, + -1.795473e+04, + 4.709930e+04, + 3.816879e+03, + -1.506677e+06, + -1.051765e+04, + 4.520483e+04, + 4.824117e+03, + -1.654844e+05, + -6.662056e+04, + 4.211810e+04, + 5.878308e+03, + -3.325870e+05, + -5.482462e+04, + 3.828890e+04, + 6.932492e+03, + -1.669931e+05, + -5.691599e+04, + 3.434296e+04, + 7.973661e+03, + 3.176809e+04, + -5.704259e+04, + 3.032616e+04, + 8.979996e+03, + -1.281974e+05, + -4.107245e+04, + 2.659716e+04, + 9.936586e+03, + 5.251609e+04, + -4.338252e+04, + 2.310631e+04, + 1.084227e+04, + -3.310454e+04, + -3.100850e+04, + 1.995372e+04, + 1.168280e+04, + 1.373580e+04, + -2.826584e+04, + 1.717322e+04, + 1.246385e+04, + 1.486695e+04, + -2.286523e+04, + 1.471232e+04, + 1.318078e+04, + -2.699775e+04, + -1.623475e+04, + 1.261542e+04, + 1.383733e+04, + 3.280403e+04, + -1.719400e+04, + 1.073590e+04, + 1.443831e+04, + -2.669848e+04, + -9.678436e+03, + 9.151064e+03, + 1.497882e+04, + 1.838055e+04, + -1.142924e+04, + 7.757786e+03, + 1.547212e+04, + -1.527434e+04, + -6.522392e+03, + 6.559644e+03, + 1.591064e+04, + 6.134069e+03, + -7.241503e+03, + 5.514782e+03, + 1.630624e+04, + -6.323445e+03, + -4.711065e+03, + 4.604267e+03, + 1.665383e+04, + -4.073073e+03, + -4.157336e+03, + 3.818693e+03, + 1.696133e+04, + -3.689038e+03, + -3.435628e+03, + 3.109516e+03, + 1.722780e+04, + -5.989523e+03, + -2.575961e+03, + 2.483016e+03, + 1.745440e+04, + -7.028686e+03, + -2.007072e+03, + 1.916696e+03, + 1.764283e+04, + -1.237906e+04, + -1.066394e+03, + 1.391888e+03, + 1.779266e+04, + -1.530568e+04, + -3.931004e+02, + 8.686103e+02, + 1.790328e+04, + -1.075759e+04, + -3.241883e+01, + 3.519534e+02, + 1.797018e+04, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -3.054978e+04, + 7.410320e+02, + 0, + 0, + -9.722180e+04, + 4.326381e+03, + 4.923375e+00, + 1.305681e-02, + -3.957187e+05, + 2.108857e+04, + 4.479837e+01, + 1.639355e-01, + -2.217090e+06, + 8.601666e+04, + 2.778367e+02, + 1.331311e+00, + -3.595510e+06, + 1.730620e+05, + 1.233921e+03, + 8.028002e+00, + -5.986757e+06, + 2.900617e+05, + 3.538550e+03, + 3.203512e+01, + -6.769567e+06, + 3.551039e+05, + 7.723701e+03, + 9.713732e+01, + -5.667593e+06, + 3.457250e+05, + 1.341347e+04, + 2.349867e+02, + -5.458172e+06, + 3.222378e+05, + 1.977905e+04, + 4.766324e+02, + -3.782412e+06, + 2.373311e+05, + 2.587928e+04, + 8.491315e+02, + -2.850464e+06, + 1.657680e+05, + 3.072606e+04, + 1.360673e+03, + -2.076195e+06, + 9.869617e+04, + 3.393877e+04, + 2.007443e+03, + -8.459967e+05, + 2.822829e+04, + 3.528651e+04, + 2.770476e+03, + -7.874505e+05, + 9.303483e+03, + 3.518552e+04, + 3.618710e+03, + -4.961071e+05, + -1.453427e+04, + 3.405307e+04, + 4.532258e+03, + -2.021158e+05, + -3.136214e+04, + 3.200853e+04, + 5.481500e+03, + -1.413239e+05, + -3.330948e+04, + 2.947684e+04, + 6.438940e+03, + -1.032936e+05, + -3.292416e+04, + 2.675684e+04, + 7.387225e+03, + -2.743197e+04, + -3.315766e+04, + 2.395645e+04, + 8.310655e+03, + -4.213430e+04, + -2.797667e+04, + 2.123679e+04, + 9.195288e+03, + 1.688152e+04, + -2.708199e+04, + 1.866320e+04, + 1.003492e+04, + -3.945755e+04, + -1.950281e+04, + 1.632798e+04, + 1.082159e+04, + 3.775898e+04, + -2.118019e+04, + 1.417740e+04, + 1.155761e+04, + -3.951332e+04, + -1.232675e+04, + 1.230190e+04, + 1.223448e+04, + 1.628466e+04, + -1.456907e+04, + 1.060143e+04, + 1.286326e+04, + 2.475050e+03, + -1.062776e+04, + 9.074832e+03, + 1.343267e+04, + -2.958304e+04, + -6.604437e+03, + 7.794557e+03, + 1.395159e+04, + 2.382873e+04, + -9.973204e+03, + 6.556652e+03, + 1.442337e+04, + -1.898300e+04, + -4.141927e+03, + 5.521709e+03, + 1.483557e+04, + -6.649303e+02, + -5.415087e+03, + 4.618044e+03, + 1.520793e+04, + -5.006126e+03, + -3.945080e+03, + 3.776118e+03, + 1.552981e+04, + -8.901394e+03, + -2.910036e+03, + 3.041676e+03, + 1.580619e+04, + -1.200711e+04, + -2.169750e+03, + 2.355820e+03, + 1.603784e+04, + -4.968676e+03, + -2.395668e+03, + 1.683550e+03, + 1.622197e+04, + -2.774133e+04, + 6.568597e+02, + 1.105917e+03, + 1.635428e+04, + -1.302099e+04, + -1.357563e+02, + 4.374897e+02, + 1.644280e+04, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -9.717292e+02, + 3.525304e+01, + 0, + 0, + -5.304463e+03, + 3.218125e+02, + 3.073832e-01, + 9.671708e-04, + -1.934360e+04, + 2.085146e+03, + 3.966715e+00, + 1.644190e-02, + -3.180464e+05, + 1.510232e+04, + 3.388872e+01, + 1.745743e-01, + -6.480828e+05, + 4.043076e+04, + 2.338605e+02, + 1.570202e+00, + -1.516090e+06, + 9.036847e+04, + 8.833714e+02, + 8.063303e+00, + -2.034832e+06, + 1.366083e+05, + 2.427098e+03, + 3.009062e+01, + -2.361191e+06, + 1.706568e+05, + 5.064127e+03, + 8.568311e+01, + -2.387942e+06, + 1.804522e+05, + 8.693407e+03, + 1.993470e+02, + -2.155769e+06, + 1.647391e+05, + 1.283741e+04, + 3.965541e+02, + -1.303862e+06, + 1.206826e+05, + 1.681586e+04, + 6.963707e+02, + -1.382930e+06, + 1.028904e+05, + 2.021420e+04, + 1.105526e+03, + -7.363076e+05, + 5.682299e+04, + 2.276260e+04, + 1.628739e+03, + -7.293309e+05, + 3.878596e+04, + 2.422386e+04, + 2.250501e+03, + -1.958146e+05, + 3.375079e+03, + 2.465448e+04, + 2.957056e+03, + -2.527096e+05, + 3.571719e+02, + 2.429786e+04, + 3.719856e+03, + -1.824193e+05, + -8.454398e+03, + 2.346440e+04, + 4.527808e+03, + -1.207450e+05, + -1.454655e+04, + 2.212836e+04, + 5.360145e+03, + -1.873828e+04, + -2.014348e+04, + 2.043631e+04, + 6.196165e+03, + -6.547356e+04, + -1.592640e+04, + 1.864471e+04, + 7.017728e+03, + 1.538025e+04, + -1.940620e+04, + 1.681319e+04, + 7.818656e+03, + -3.081477e+04, + -1.380759e+04, + 1.505269e+04, + 8.584346e+03, + -3.688264e+04, + -1.237202e+04, + 1.339212e+04, + 9.316279e+03, + 3.700757e+04, + -1.579093e+04, + 1.171025e+04, + 1.000491e+04, + -3.096457e+04, + -7.862788e+03, + 1.025124e+04, + 1.063862e+04, + -3.624742e+03, + -9.431423e+03, + 8.931243e+03, + 1.123263e+04, + -7.771562e+02, + -8.102068e+03, + 7.655642e+03, + 1.177367e+04, + -9.869735e+03, + -6.022230e+03, + 6.528116e+03, + 1.226242e+04, + -4.868512e+03, + -5.631664e+03, + 5.495559e+03, + 1.270154e+04, + -9.937763e+03, + -4.263030e+03, + 4.546326e+03, + 1.308752e+04, + -4.005424e+03, + -4.161767e+03, + 3.664244e+03, + 1.342139e+04, + -1.613158e+04, + -2.200682e+03, + 2.871716e+03, + 1.369982e+04, + -1.400113e+04, + -2.118312e+03, + 2.095777e+03, + 1.392675e+04, + -2.681191e+04, + -1.270264e+02, + 1.333515e+03, + 1.409262e+04, + -1.703298e+04, + -1.198066e+01, + 5.383685e+02, + 1.419677e+04, +}; + +double solarDataset680[] = +{ + -352468042275216, + 4.565228e+09, + 3.493754e+05, + 4.079590e+03, + 5.683662e+12, + -1.328402e+09, + 1.925649e+05, + 4.085164e+03, + -7.764229e+10, + 4.963131e+07, + 1.202445e+05, + 4.099044e+03, + 5.563528e+09, + -4.324424e+06, + 1.277691e+05, + 4.141022e+03, + -3.769498e+09, + 6.005153e+06, + 1.290424e+05, + 4.222198e+03, + 9.852032e+08, + -2.967738e+06, + 1.291679e+05, + 4.360144e+03, + -3.875109e+07, + 1.836524e+05, + 1.271300e+05, + 4.559262e+03, + -1.192922e+08, + 3.590793e+05, + 1.273769e+05, + 4.838049e+03, + 5.235498e+06, + -2.993428e+05, + 1.264319e+05, + 5.209221e+03, + -3.536095e+07, + -5.551723e+04, + 1.244122e+05, + 5.678238e+03, + -3.682262e+07, + -1.175068e+05, + 1.215785e+05, + 6.254607e+03, + -1.683494e+07, + -3.365406e+05, + 1.166413e+05, + 6.937634e+03, + -6.725039e+06, + -4.184973e+05, + 1.096698e+05, + 7.714702e+03, + -1.347547e+07, + -3.110082e+05, + 1.015845e+05, + 8.570426e+03, + -5.796493e+06, + -3.962767e+05, + 9.212522e+04, + 9.489327e+03, + -1.470687e+06, + -3.999603e+05, + 8.144721e+04, + 1.043704e+04, + -3.891564e+06, + -2.924573e+05, + 7.082390e+04, + 1.138470e+04, + 1.268637e+06, + -3.320372e+05, + 6.027083e+04, + 1.231325e+04, + -1.553830e+06, + -2.010288e+05, + 5.070597e+04, + 1.318976e+04, + 6.401092e+05, + -2.083886e+05, + 4.212731e+04, + 1.401579e+04, + -4.089157e+05, + -1.325947e+05, + 3.467286e+04, + 1.476862e+04, + 4.689382e+05, + -1.255255e+05, + 2.832884e+04, + 1.545545e+04, + -2.414026e+05, + -7.345191e+04, + 2.313068e+04, + 1.606742e+04, + 2.093406e+05, + -7.131366e+04, + 1.878759e+04, + 1.661838e+04, + 8.730097e+04, + -4.851327e+04, + 1.522608e+04, + 1.710171e+04, + -2.825615e+04, + -3.260464e+04, + 1.246629e+04, + 1.753026e+04, + 9.246158e+03, + -2.696444e+04, + 1.017736e+04, + 1.791157e+04, + 5.845154e+04, + -2.256224e+04, + 8.255250e+03, + 1.824608e+04, + -1.623206e+03, + -1.409944e+04, + 6.758571e+03, + 1.853795e+04, + 1.397299e+04, + -1.179690e+04, + 5.565383e+03, + 1.879686e+04, + 9.810044e+03, + -8.809613e+03, + 4.588390e+03, + 1.902473e+04, + -1.056924e+04, + -5.731825e+03, + 3.808836e+03, + 1.922618e+04, + 1.867460e+04, + -6.355988e+03, + 3.137056e+03, + 1.940511e+04, + -2.207924e+04, + -2.223620e+03, + 2.609823e+03, + 1.956056e+04, + 2.317944e+04, + -5.069146e+03, + 2.128577e+03, + 1.970022e+04, + -1.315186e+04, + -9.880525e+02, + 1.767994e+03, + 1.981745e+04, + 4.416039e+03, + -2.401660e+03, + 1.471594e+03, + 1.992484e+04, + 2.469023e+02, + -1.450777e+03, + 1.203539e+03, + 2.001628e+04, + -7.126793e+03, + -5.842061e+02, + 9.964367e+02, + 2.009623e+04, + 5.680761e+03, + -1.675038e+03, + 7.812342e+02, + 2.016597e+04, + -3.303117e+03, + -3.317838e+02, + 6.218765e+02, + 2.022109e+04, + -3.628281e+03, + -3.367296e+02, + 4.942834e+02, + 2.026943e+04, + -1.932363e+03, + -4.513063e+02, + 3.479496e+02, + 2.030822e+04, + -2.905107e+03, + -1.741303e+02, + 2.130510e+02, + 2.033521e+04, + -2.186812e+03, + -6.044464e+01, + 9.550916e+01, + 2.035167e+04, + 2.566491e+12, + -2.160143e+07, + 1.253489e+05, + 2.094745e+03, + 1.072830e+11, + 3.373914e+06, + 1.268921e+05, + 2.096912e+03, + -6.278151e+10, + 3.625360e+07, + 1.323924e+05, + 2.112461e+03, + 5.355040e+09, + -6.437409e+06, + 1.359364e+05, + 2.157505e+03, + 6.328454e+08, + -3.831994e+05, + 1.342600e+05, + 2.242976e+03, + -3.525021e+08, + 1.289271e+06, + 1.355533e+05, + 2.384464e+03, + 7.237564e+06, + 1.315110e+05, + 1.369959e+05, + 2.598910e+03, + -8.490662e+07, + 3.829063e+05, + 1.376758e+05, + 2.899528e+03, + -3.478052e+07, + 3.597080e+04, + 1.377450e+05, + 3.301754e+03, + -5.179258e+07, + 5.107895e+04, + 1.365542e+05, + 3.815687e+03, + -2.559535e+07, + -2.211796e+05, + 1.336407e+05, + 4.449428e+03, + -2.591427e+07, + -2.568699e+05, + 1.286169e+05, + 5.199989e+03, + -1.373490e+07, + -3.999240e+05, + 1.214603e+05, + 6.059833e+03, + -1.260242e+07, + -3.952445e+05, + 1.123008e+05, + 7.008387e+03, + -2.957989e+06, + -4.813305e+05, + 1.014858e+05, + 8.021575e+03, + -5.251237e+06, + -3.746148e+05, + 8.996501e+04, + 9.064690e+03, + -4.198038e+05, + -3.933644e+05, + 7.821981e+04, + 1.011487e+04, + -1.996456e+06, + -2.874528e+05, + 6.689029e+04, + 1.113727e+04, + 4.266078e+05, + -2.786719e+05, + 5.627982e+04, + 1.211684e+04, + -3.919704e+05, + -1.965459e+05, + 4.681414e+04, + 1.302821e+04, + 1.091816e+05, + -1.649710e+05, + 3.862777e+04, + 1.386995e+04, + 3.750077e+05, + -1.318222e+05, + 3.161062e+04, + 1.463277e+04, + -2.406655e+05, + -8.206026e+04, + 2.595029e+04, + 1.531832e+04, + 2.170257e+05, + -7.837065e+04, + 2.115790e+04, + 1.593722e+04, + -7.134165e+04, + -4.885270e+04, + 1.721207e+04, + 1.648268e+04, + 1.378171e+05, + -4.537327e+04, + 1.397250e+04, + 1.696781e+04, + 3.258145e+04, + -2.938905e+04, + 1.138823e+04, + 1.739164e+04, + 1.146137e+03, + -2.126903e+04, + 9.382346e+03, + 1.776806e+04, + 1.883121e+04, + -1.738343e+04, + 7.723831e+03, + 1.810256e+04, + -1.217855e+04, + -1.191290e+04, + 6.363021e+03, + 1.839774e+04, + 1.663010e+04, + -1.094152e+04, + 5.216659e+03, + 1.865889e+04, + 1.933224e+04, + -8.372961e+03, + 4.279327e+03, + 1.888639e+04, + -6.277107e+03, + -4.826426e+03, + 3.572708e+03, + 1.908656e+04, + -1.213908e+04, + -3.694135e+03, + 2.989211e+03, + 1.926630e+04, + 1.843629e+04, + -5.074897e+03, + 2.437722e+03, + 1.942497e+04, + -3.720726e+03, + -2.060727e+03, + 2.022513e+03, + 1.956010e+04, + -7.571230e+03, + -1.529007e+03, + 1.706477e+03, + 1.968213e+04, + 3.388922e+03, + -2.219310e+03, + 1.387955e+03, + 1.978997e+04, + -8.136688e+02, + -1.296765e+03, + 1.118924e+03, + 1.988048e+04, + -2.113553e+00, + -1.105284e+03, + 9.057690e+02, + 1.995827e+04, + -5.605613e+03, + -3.817953e+02, + 7.273565e+02, + 2.002416e+04, + 2.555659e+03, + -1.135591e+03, + 5.415747e+02, + 2.007969e+04, + -7.323743e+03, + 1.792085e+02, + 4.001082e+02, + 2.012072e+04, + -1.158262e+03, + -4.852916e+02, + 2.418730e+02, + 2.015369e+04, + -1.923105e+03, + -1.119911e+02, + 1.136166e+02, + 2.017163e+04, + -4.453960e+13, + 4.901918e+08, + 1.224067e+05, + 6.971794e+02, + 1.428199e+12, + -3.402263e+08, + 9.960258e+04, + 6.992069e+02, + 2.850891e+09, + 1.332939e+06, + 7.987958e+04, + 7.087809e+02, + 3.653290e+09, + -2.318826e+05, + 8.167014e+04, + 7.351861e+02, + -1.710126e+09, + 5.205901e+06, + 8.583269e+04, + 7.881288e+02, + 3.500513e+08, + 7.327072e+05, + 9.110828e+04, + 8.821503e+02, + -3.667415e+07, + 1.644077e+06, + 9.599104e+04, + 1.028221e+03, + -6.427903e+07, + 1.499947e+06, + 1.026622e+05, + 1.245859e+03, + -8.902301e+07, + 1.348587e+06, + 1.097649e+05, + 1.556074e+03, + -5.458529e+07, + 8.715855e+05, + 1.161171e+05, + 1.980872e+03, + -7.078158e+07, + 7.296954e+05, + 1.206867e+05, + 2.536762e+03, + -2.407104e+07, + 9.613678e+04, + 1.221006e+05, + 3.235974e+03, + -2.892878e+07, + 3.067619e+04, + 1.200345e+05, + 4.068347e+03, + -1.424189e+07, + -2.367188e+05, + 1.148582e+05, + 5.025490e+03, + -8.468524e+06, + -3.287116e+05, + 1.065955e+05, + 6.075512e+03, + -4.418101e+06, + -3.647176e+05, + 9.643889e+04, + 7.185170e+03, + -3.842678e+06, + -3.284474e+05, + 8.532578e+04, + 8.318939e+03, + -5.278715e+05, + -3.366958e+05, + 7.378807e+04, + 9.444730e+03, + -3.937578e+05, + -2.707005e+05, + 6.272309e+04, + 1.052705e+04, + -4.639425e+05, + -2.130327e+05, + 5.276832e+04, + 1.155043e+04, + 2.817660e+05, + -1.847892e+05, + 4.384989e+04, + 1.250236e+04, + 2.903034e+04, + -1.344634e+05, + 3.621580e+04, + 1.337110e+04, + 4.635096e+03, + -1.030736e+05, + 2.983586e+04, + 1.416051e+04, + 2.047168e+05, + -8.515824e+04, + 2.444758e+04, + 1.487116e+04, + -1.279274e+05, + -5.337031e+04, + 2.008387e+04, + 1.550475e+04, + 1.415452e+05, + -5.181761e+04, + 1.640018e+04, + 1.607299e+04, + 5.602843e+04, + -3.510271e+04, + 1.339511e+04, + 1.657132e+04, + -1.127698e+04, + -2.404607e+04, + 1.106697e+04, + 1.701421e+04, + 1.253660e+04, + -2.007243e+04, + 9.134211e+03, + 1.740961e+04, + 1.780279e+04, + -1.574977e+04, + 7.514154e+03, + 1.775883e+04, + 5.640618e+03, + -1.147763e+04, + 6.204614e+03, + 1.806675e+04, + 2.936546e+03, + -8.829144e+03, + 5.139387e+03, + 1.833932e+04, + 5.299726e+03, + -7.061936e+03, + 4.256417e+03, + 1.858020e+04, + 5.686652e+03, + -5.507486e+03, + 3.532321e+03, + 1.879251e+04, + -7.404946e+03, + -3.452414e+03, + 2.950484e+03, + 1.898008e+04, + 3.770764e+03, + -3.682956e+03, + 2.441272e+03, + 1.914689e+04, + 3.794749e+03, + -2.805228e+03, + 2.009244e+03, + 1.929140e+04, + -9.089152e+03, + -1.190131e+03, + 1.676729e+03, + 1.941776e+04, + 3.011825e+03, + -2.138990e+03, + 1.359400e+03, + 1.952992e+04, + 1.428751e+02, + -1.319583e+03, + 1.084559e+03, + 1.962291e+04, + -4.913817e+03, + -5.934187e+02, + 8.743950e+02, + 1.970191e+04, + -5.071407e+02, + -9.664004e+02, + 6.676441e+02, + 1.976881e+04, + -4.650836e+03, + -3.007170e+02, + 4.834242e+02, + 1.982025e+04, + -5.376321e+03, + -1.327924e+02, + 3.054971e+02, + 1.985899e+04, + -3.742214e+03, + -1.749535e+01, + 1.250497e+02, + 1.988258e+04, + -7.893237e+12, + 8.288681e+07, + 3.010748e+04, + 1.136166e+02, + 3.103597e+11, + -7.118740e+07, + 2.592881e+04, + 1.141198e+02, + 8.428280e+09, + -8.028634e+05, + 2.230568e+04, + 1.167572e+02, + -3.605961e+09, + 5.798521e+06, + 2.449204e+04, + 1.242727e+02, + 8.783630e+08, + -1.200222e+04, + 2.748804e+04, + 1.413170e+02, + 1.044530e+08, + 1.460532e+06, + 3.037633e+04, + 1.712288e+02, + -9.170265e+05, + 1.717708e+06, + 3.572950e+04, + 2.228753e+02, + -4.501713e+07, + 1.862117e+06, + 4.323714e+04, + 3.093172e+02, + -7.396908e+07, + 1.935003e+06, + 5.294040e+04, + 4.499654e+02, + -6.169410e+07, + 1.717830e+06, + 6.431161e+04, + 6.711980e+02, + -7.366754e+07, + 1.587813e+06, + 7.632218e+04, + 1.002824e+03, + -4.663231e+07, + 1.055055e+06, + 8.724662e+04, + 1.476305e+03, + -4.048764e+07, + 7.247687e+05, + 9.513528e+04, + 2.107835e+03, + -1.960904e+07, + 2.489285e+05, + 9.891534e+04, + 2.902937e+03, + -1.894416e+07, + 9.872926e+04, + 9.837949e+04, + 3.841311e+03, + -4.442386e+06, + -2.116653e+05, + 9.380338e+04, + 4.898693e+03, + -5.834290e+06, + -1.885613e+05, + 8.648343e+04, + 6.023302e+03, + -1.719788e+06, + -2.613590e+05, + 7.770079e+04, + 7.187578e+03, + -1.691541e+06, + -2.251616e+05, + 6.812535e+04, + 8.346053e+03, + -5.227803e+05, + -2.157890e+05, + 5.856276e+04, + 9.472141e+03, + 4.814127e+05, + -1.960903e+05, + 4.946763e+04, + 1.053652e+04, + -4.579357e+05, + -1.276666e+05, + 4.162523e+04, + 1.152409e+04, + 1.805291e+05, + -1.211531e+05, + 3.473519e+04, + 1.244006e+04, + 1.359116e+05, + -9.125698e+04, + 2.876191e+04, + 1.326975e+04, + -8.572899e+04, + -6.301636e+04, + 2.388140e+04, + 1.401999e+04, + 1.408473e+05, + -5.792684e+04, + 1.972080e+04, + 1.469810e+04, + -3.746225e+04, + -3.691816e+04, + 1.630243e+04, + 1.530117e+04, + 6.587470e+04, + -3.359362e+04, + 1.347244e+04, + 1.584278e+04, + 1.012335e+04, + -2.298597e+04, + 1.114689e+04, + 1.632227e+04, + 6.639102e+03, + -1.787249e+04, + 9.269274e+03, + 1.675072e+04, + -6.477797e+02, + -1.369067e+04, + 7.700812e+03, + 1.713232e+04, + 2.142191e+04, + -1.198949e+04, + 6.378977e+03, + 1.747105e+04, + -4.414359e+03, + -7.644321e+03, + 5.317687e+03, + 1.776972e+04, + 1.533924e+03, + -6.582866e+03, + 4.443001e+03, + 1.803667e+04, + 1.981630e+03, + -5.240241e+03, + 3.694367e+03, + 1.827267e+04, + -1.052148e+03, + -3.932107e+03, + 3.071754e+03, + 1.848069e+04, + 7.306138e+02, + -3.290251e+03, + 2.545786e+03, + 1.866390e+04, + 4.229719e+02, + -2.571537e+03, + 2.102797e+03, + 1.882392e+04, + -7.944393e+03, + -1.390188e+03, + 1.735472e+03, + 1.896341e+04, + 4.214760e+03, + -2.291285e+03, + 1.382288e+03, + 1.908470e+04, + -5.750642e+03, + -7.694022e+02, + 1.094846e+03, + 1.918353e+04, + 1.100272e+02, + -1.256194e+03, + 8.401738e+02, + 1.926736e+04, + -1.010048e+04, + 6.181541e+01, + 6.190195e+02, + 1.933230e+04, + -3.820373e+03, + -5.389325e+02, + 3.661653e+02, + 1.938243e+04, + -3.917769e+03, + -6.433621e+01, + 1.509301e+02, + 1.940952e+04, + -8.070633e+12, + 1.076138e+08, + 6.631032e+03, + 1.018617e+01, + 1.369399e+11, + -2.815586e+07, + 3.146703e+03, + 1.029111e+01, + -1.827832e+10, + 1.209860e+07, + 2.333390e+03, + 1.050144e+01, + 9.521666e+08, + -5.255783e+05, + 4.376365e+03, + 1.192131e+01, + 1.173580e+07, + 6.003251e+05, + 4.867928e+03, + 1.474579e+01, + 1.090046e+08, + 4.481858e+05, + 6.169347e+03, + 2.054185e+01, + -8.730001e+06, + 9.393270e+05, + 8.380095e+03, + 3.174291e+01, + -3.942600e+07, + 1.234005e+06, + 1.236733e+04, + 5.449888e+01, + -5.058522e+07, + 1.455714e+06, + 1.855333e+04, + 1.000252e+02, + -5.517395e+07, + 1.596469e+06, + 2.732046e+04, + 1.871469e+02, + -5.839261e+07, + 1.629707e+06, + 3.862401e+04, + 3.439872e+02, + -5.114727e+07, + 1.444003e+06, + 5.151836e+04, + 6.065740e+02, + -3.969641e+07, + 1.116577e+06, + 6.409615e+04, + 1.010369e+03, + -3.222007e+07, + 7.829705e+05, + 7.436652e+04, + 1.580560e+03, + -1.492637e+07, + 3.287719e+05, + 8.053808e+04, + 2.324370e+03, + -1.367783e+07, + 1.737145e+05, + 8.239238e+04, + 3.220077e+03, + -5.409060e+06, + -6.916228e+04, + 8.037208e+04, + 4.244663e+03, + -3.749200e+06, + -1.294274e+05, + 7.520553e+04, + 5.347740e+03, + -1.438150e+06, + -1.808190e+05, + 6.828222e+04, + 6.491727e+03, + -1.031219e+06, + -1.695525e+05, + 6.052789e+04, + 7.635895e+03, + -5.897295e+05, + -1.566876e+05, + 5.266149e+04, + 8.752942e+03, + 2.142786e+05, + -1.502598e+05, + 4.501376e+04, + 9.817549e+03, + -3.080940e+05, + -1.038003e+05, + 3.819615e+04, + 1.081081e+04, + 2.489975e+05, + -1.015549e+05, + 3.212658e+04, + 1.173425e+04, + -1.029353e+05, + -6.635146e+04, + 2.693457e+04, + 1.257483e+04, + 1.251409e+05, + -6.152113e+04, + 2.251714e+04, + 1.334400e+04, + -3.664596e+04, + -4.097680e+04, + 1.880373e+04, + 1.403645e+04, + 5.410562e+04, + -3.659535e+04, + 1.568214e+04, + 1.466359e+04, + -8.388199e+03, + -2.544703e+04, + 1.306777e+04, + 1.522421e+04, + 3.381060e+04, + -2.226293e+04, + 1.088538e+04, + 1.572764e+04, + 8.123732e+03, + -1.580665e+04, + 9.086832e+03, + 1.617555e+04, + -5.569137e+02, + -1.204825e+04, + 7.622303e+03, + 1.657705e+04, + -3.528642e+03, + -9.509650e+03, + 6.381344e+03, + 1.693640e+04, + 1.153206e+04, + -8.551674e+03, + 5.310794e+03, + 1.725604e+04, + -7.248790e+03, + -5.378741e+03, + 4.434661e+03, + 1.753772e+04, + 3.681099e+03, + -5.223851e+03, + 3.690070e+03, + 1.778863e+04, + 1.885868e+03, + -3.926101e+03, + 3.056040e+03, + 1.800796e+04, + -4.915319e+03, + -2.588201e+03, + 2.541884e+03, + 1.820050e+04, + 4.294262e+02, + -2.621170e+03, + 2.087430e+03, + 1.836978e+04, + -5.053803e+03, + -1.594382e+03, + 1.693140e+03, + 1.851459e+04, + -1.007074e+02, + -1.793775e+03, + 1.337123e+03, + 1.863817e+04, + -7.506678e+03, + -6.792374e+02, + 1.030627e+03, + 1.873863e+04, + 8.309197e+02, + -1.383974e+03, + 7.309777e+02, + 1.881973e+04, + -1.813795e+04, + 9.635944e+02, + 4.941701e+02, + 1.887662e+04, + -3.621577e+03, + -2.330195e+02, + 1.616740e+02, + 1.891720e+04, + 6.535480e+11, + -5.929338e+06, + -3.781728e+02, + 5.184347e-01, + -3.304103e+10, + 7.713900e+06, + 0, + 5.135015e-01, + 1.605064e+08, + -1.634788e+05, + 4.183612e+02, + 5.677667e-01, + 3.242006e+08, + -2.400051e+05, + 3.629284e+02, + 6.928907e-01, + -1.079961e+08, + 3.789254e+05, + 4.524209e+02, + 9.108485e-01, + 1.466292e+07, + 1.653131e+05, + 8.910833e+02, + 1.679980e+00, + 5.139923e+06, + 3.030831e+05, + 1.517958e+03, + 3.541142e+00, + -2.137928e+07, + 6.141632e+05, + 2.918879e+03, + 8.370747e+00, + -4.382682e+07, + 9.923543e+05, + 5.952912e+03, + 2.155764e+01, + -4.591369e+07, + 1.251039e+06, + 1.153723e+04, + 5.541645e+01, + -5.599871e+07, + 1.504362e+06, + 2.021971e+04, + 1.319322e+02, + -4.905457e+07, + 1.461205e+06, + 3.191749e+04, + 2.858732e+02, + -4.156802e+07, + 1.274441e+06, + 4.502474e+04, + 5.570078e+02, + -3.338034e+07, + 9.727163e+05, + 5.748065e+04, + 9.823445e+02, + -1.872780e+07, + 5.500384e+05, + 6.692099e+04, + 1.582833e+03, + -1.333256e+07, + 3.021913e+05, + 7.223951e+04, + 2.351712e+03, + -6.921961e+06, + 7.087433e+04, + 7.357275e+04, + 3.270621e+03, + -5.394556e+06, + -2.381757e+04, + 7.145035e+04, + 4.301491e+03, + -2.089262e+06, + -1.282498e+05, + 6.663436e+04, + 5.405952e+03, + -6.847307e+05, + -1.546674e+05, + 6.012913e+04, + 6.533810e+03, + -7.349015e+05, + -1.335175e+05, + 5.325038e+04, + 7.651409e+03, + -2.879821e+05, + -1.272674e+05, + 4.640416e+04, + 8.738273e+03, + -8.462746e+03, + -1.130442e+05, + 3.982467e+04, + 9.771057e+03, + -1.063739e+05, + -8.787637e+04, + 3.388731e+04, + 1.073618e+04, + 1.343560e+05, + -7.883937e+04, + 2.860691e+04, + 1.162993e+04, + 1.389387e+04, + -5.691194e+04, + 2.410021e+04, + 1.244608e+04, + -5.177439e+04, + -4.289378e+04, + 2.031934e+04, + 1.319275e+04, + 8.139572e+04, + -4.013155e+04, + 1.699864e+04, + 1.387169e+04, + 2.468899e+04, + -2.814082e+04, + 1.423289e+04, + 1.448002e+04, + -6.571990e+04, + -1.805698e+04, + 1.199929e+04, + 1.503010e+04, + 8.726906e+04, + -2.301298e+04, + 9.974486e+03, + 1.552759e+04, + -3.911454e+04, + -9.959665e+03, + 8.366133e+03, + 1.596392e+04, + 2.754859e+04, + -1.261897e+04, + 7.034917e+03, + 1.636173e+04, + -2.143616e+04, + -6.578940e+03, + 5.902874e+03, + 1.671286e+04, + 1.445855e+04, + -8.060233e+03, + 4.922564e+03, + 1.702911e+04, + -1.068146e+03, + -5.007837e+03, + 4.094606e+03, + 1.730495e+04, + -1.446239e+03, + -4.042107e+03, + 3.428210e+03, + 1.755026e+04, + -7.646742e+03, + -2.833790e+03, + 2.850615e+03, + 1.776680e+04, + 6.036580e+03, + -3.510960e+03, + 2.317098e+03, + 1.795618e+04, + -5.012745e+03, + -1.656924e+03, + 1.885239e+03, + 1.811589e+04, + -4.810884e+03, + -1.478773e+03, + 1.519931e+03, + 1.825459e+04, + -6.234266e+03, + -1.106439e+03, + 1.165198e+03, + 1.836994e+04, + -2.823139e+03, + -1.181941e+03, + 8.197310e+02, + 1.846054e+04, + -1.258697e+04, + 2.043762e+02, + 5.250146e+02, + 1.852450e+04, + -5.978057e+03, + -7.475415e+01, + 2.034009e+02, + 1.856604e+04, + -8.418277e+10, + 1.154661e+06, + 5.714404e+01, + 4.036256e-03, + -2.687024e+07, + -8.592069e+04, + 2.190888e+01, + 4.933202e-03, + 1.021218e+08, + -5.017017e+04, + 0, + 6.278621e-03, + -1.255189e+07, + 1.903032e+04, + 0, + 4.484729e-03, + 1.558282e+06, + 2.417039e+03, + 8.957179e+00, + 8.969458e-03, + -3.914997e+05, + 1.370244e+04, + 1.920907e+01, + 2.287212e-02, + -6.741212e+05, + 3.455420e+04, + 5.930749e+01, + 8.520985e-02, + -4.870917e+06, + 1.084084e+05, + 2.009074e+02, + 3.735779e-01, + -9.230984e+06, + 2.505707e+05, + 7.085224e+02, + 1.758462e+00, + -2.106645e+07, + 5.356899e+05, + 2.195612e+03, + 7.431645e+00, + -2.950385e+07, + 8.461586e+05, + 5.821344e+03, + 2.723083e+01, + -3.782577e+07, + 1.119956e+06, + 1.259572e+04, + 8.251229e+01, + -3.282215e+07, + 1.127447e+06, + 2.260996e+04, + 2.090373e+02, + -3.131878e+07, + 1.051472e+06, + 3.440400e+04, + 4.481747e+02, + -2.053329e+07, + 7.431721e+05, + 4.587941e+04, + 8.398019e+02, + -1.369182e+07, + 4.785742e+05, + 5.475855e+04, + 1.400337e+03, + -9.066544e+06, + 2.627224e+05, + 6.030965e+04, + 2.128540e+03, + -6.437927e+06, + 1.088040e+05, + 6.231489e+04, + 3.004682e+03, + -2.053492e+06, + -4.777547e+04, + 6.091525e+04, + 3.993557e+03, + -1.949825e+06, + -6.605211e+04, + 5.729296e+04, + 5.045588e+03, + -9.414086e+05, + -9.996283e+04, + 5.243186e+04, + 6.132059e+03, + -1.890967e+05, + -1.121647e+05, + 4.675167e+04, + 7.214864e+03, + -3.045963e+05, + -9.180211e+04, + 4.106393e+04, + 8.265942e+03, + -5.330101e+04, + -8.608205e+04, + 3.562988e+04, + 9.272761e+03, + -3.028050e+04, + -7.119125e+04, + 3.058189e+04, + 1.021899e+04, + 3.389382e+04, + -6.002974e+04, + 2.607403e+04, + 1.109889e+04, + 2.504837e+04, + -4.749684e+04, + 2.215132e+04, + 1.190918e+04, + 3.155848e+04, + -3.811928e+04, + 1.880026e+04, + 1.265226e+04, + -7.201400e+04, + -2.586018e+04, + 1.596321e+04, + 1.333116e+04, + 7.110271e+04, + -2.854939e+04, + 1.340926e+04, + 1.395078e+04, + 4.710820e+03, + -1.819806e+04, + 1.127146e+04, + 1.450295e+04, + -1.716947e+04, + -1.351549e+04, + 9.553127e+03, + 1.500363e+04, + 1.705228e+04, + -1.317062e+04, + 8.030335e+03, + 1.545596e+04, + -7.296253e+03, + -8.740504e+03, + 6.744056e+03, + 1.585811e+04, + 1.124590e+04, + -8.382692e+03, + 5.655728e+03, + 1.621866e+04, + -6.404979e+03, + -5.276710e+03, + 4.751552e+03, + 1.653766e+04, + -4.078801e+03, + -4.618901e+03, + 3.982096e+03, + 1.682316e+04, + 5.784536e+03, + -4.519947e+03, + 3.287528e+03, + 1.707427e+04, + -1.229816e+04, + -2.021194e+03, + 2.721875e+03, + 1.729168e+04, + 1.842108e+03, + -3.109246e+03, + 2.195199e+03, + 1.748291e+04, + 1.022085e+03, + -2.237389e+03, + 1.729408e+03, + 1.764076e+04, + -1.355747e+04, + -3.814936e+02, + 1.371889e+03, + 1.777199e+04, + -4.135917e+03, + -1.405750e+03, + 9.812738e+02, + 1.788158e+04, + -1.176006e+04, + -1.122970e+02, + 6.103796e+02, + 1.795760e+04, + -7.664940e+03, + -2.255428e+01, + 2.505438e+02, + 1.800524e+04, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -2.756796e+04, + 3.410796e+02, + 0, + 0, + -1.318358e+05, + 2.755397e+03, + 1.097018e+00, + 1.345419e-03, + -5.608807e+05, + 1.562207e+04, + 1.379447e+01, + 2.466601e-02, + -2.514261e+06, + 6.918882e+04, + 1.071228e+02, + 2.654960e-01, + -6.065589e+06, + 1.944641e+05, + 5.889450e+02, + 2.019474e+00, + -1.283506e+07, + 4.191455e+05, + 2.215660e+03, + 1.058396e+01, + -1.846805e+07, + 6.414717e+05, + 6.149145e+03, + 4.126265e+01, + -1.742585e+07, + 7.178521e+05, + 1.289995e+04, + 1.231435e+02, + -1.832815e+07, + 7.396414e+05, + 2.178945e+04, + 2.939924e+02, + -1.255612e+07, + 5.674151e+05, + 3.137447e+04, + 5.949191e+02, + -9.863656e+06, + 4.196776e+05, + 3.966016e+04, + 1.048397e+03, + -6.077376e+06, + 2.402884e+05, + 4.561200e+04, + 1.662630e+03, + -3.971539e+06, + 1.160875e+05, + 4.864964e+04, + 2.421336e+03, + -1.807408e+06, + 1.308620e+04, + 4.902579e+04, + 3.296939e+03, + -1.659778e+06, + -1.565950e+04, + 4.744301e+04, + 4.252506e+03, + -6.733442e+05, + -5.969285e+04, + 4.440953e+04, + 5.259324e+03, + -2.473511e+05, + -7.140758e+04, + 4.040044e+04, + 6.277780e+03, + -2.042537e+05, + -6.499188e+04, + 3.615217e+04, + 7.282236e+03, + -1.170966e+05, + -6.002899e+04, + 3.193951e+04, + 8.257070e+03, + -2.352214e+04, + -5.459684e+04, + 2.787370e+04, + 9.187282e+03, + 4.937715e+04, + -4.785421e+04, + 2.412159e+04, + 1.006206e+04, + -1.156724e+05, + -3.191696e+04, + 2.084086e+04, + 1.087739e+04, + 1.297973e+05, + -3.849662e+04, + 1.781328e+04, + 1.163679e+04, + -9.774888e+04, + -1.844295e+04, + 1.526608e+04, + 1.232678e+04, + 5.200490e+04, + -2.438844e+04, + 1.301188e+04, + 1.296761e+04, + -8.135849e+03, + -1.543929e+04, + 1.102631e+04, + 1.354296e+04, + 1.028947e+04, + -1.379101e+04, + 9.377438e+03, + 1.406704e+04, + -8.156883e+03, + -9.874940e+03, + 7.962838e+03, + 1.453982e+04, + -9.036508e+01, + -8.750479e+03, + 6.734128e+03, + 1.496712e+04, + 1.570054e+03, + -7.174620e+03, + 5.655807e+03, + 1.534847e+04, + -1.278293e+03, + -5.539760e+03, + 4.740587e+03, + 1.568705e+04, + -2.566299e+03, + -4.405104e+03, + 3.959008e+03, + 1.598696e+04, + -1.910568e+03, + -3.654087e+03, + 3.277553e+03, + 1.625060e+04, + -8.951905e+03, + -2.385243e+03, + 2.683652e+03, + 1.647951e+04, + -2.863973e+03, + -2.620958e+03, + 2.123866e+03, + 1.667582e+04, + -5.366473e+03, + -1.785690e+03, + 1.617383e+03, + 1.683538e+04, + -4.998538e+03, + -1.403221e+03, + 1.171570e+03, + 1.696147e+04, + -1.930573e+04, + 4.416717e+02, + 7.785677e+02, + 1.705459e+04, + -9.332163e+03, + -8.178539e+01, + 3.103724e+02, + 1.711692e+04, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -8.909025e+02, + 3.538429e+01, + 0, + 0, + -6.422168e+04, + 1.628264e+03, + 2.273205e-01, + 4.484729e-04, + -1.684485e+05, + 8.745175e+03, + 1.123560e+01, + 3.049616e-02, + -1.396076e+06, + 4.954183e+04, + 9.457898e+01, + 3.480150e-01, + -3.153636e+06, + 1.315038e+05, + 5.765050e+02, + 2.867984e+00, + -5.753237e+06, + 2.566029e+05, + 2.084437e+03, + 1.445742e+01, + -8.015029e+06, + 3.742078e+05, + 5.388979e+03, + 5.210269e+01, + -8.074433e+06, + 4.135002e+05, + 1.068476e+04, + 1.446774e+02, + -6.661386e+06, + 3.790568e+05, + 1.722141e+04, + 3.258434e+02, + -6.077928e+06, + 3.260624e+05, + 2.393450e+04, + 6.249524e+02, + -3.712201e+06, + 2.107243e+05, + 2.968932e+04, + 1.061776e+03, + -2.467015e+06, + 1.292915e+05, + 3.366006e+04, + 1.632819e+03, + -1.882443e+06, + 7.221017e+04, + 3.588291e+04, + 2.326102e+03, + -1.086002e+06, + 1.703520e+04, + 3.635384e+04, + 3.120870e+03, + -4.605255e+05, + -1.927992e+04, + 3.530604e+04, + 3.984944e+03, + -4.341743e+05, + -2.590209e+04, + 3.334915e+04, + 4.887920e+03, + -1.327876e+05, + -3.966641e+04, + 3.080680e+04, + 5.809224e+03, + -1.434539e+05, + -3.617659e+04, + 2.795994e+04, + 6.723427e+03, + -3.317195e+04, + -3.750287e+04, + 2.503988e+04, + 7.617373e+03, + -7.415801e+04, + -3.064914e+04, + 2.218438e+04, + 8.475763e+03, + 5.703238e+04, + -3.265980e+04, + 1.944651e+04, + 9.292128e+03, + -6.193252e+04, + -2.057404e+04, + 1.700446e+04, + 1.005564e+04, + 1.215735e+04, + -2.212679e+04, + 1.477610e+04, + 1.077365e+04, + 1.341243e+04, + -1.799234e+04, + 1.273145e+04, + 1.143468e+04, + -3.132178e+04, + -1.206636e+04, + 1.099078e+04, + 1.204245e+04, + 3.848496e+04, + -1.481817e+04, + 9.392096e+03, + 1.260173e+04, + -3.404114e+04, + -6.555128e+03, + 8.060933e+03, + 1.310445e+04, + 4.790791e+03, + -8.972117e+03, + 6.866951e+03, + 1.356787e+04, + 2.423192e+03, + -6.922553e+03, + 5.758467e+03, + 1.397865e+04, + 1.399033e+03, + -5.445455e+03, + 4.839055e+03, + 1.434333e+04, + -1.893961e+04, + -2.804734e+03, + 4.069198e+03, + 1.466700e+04, + 1.877066e+03, + -4.505274e+03, + 3.305315e+03, + 1.495392e+04, + -2.115025e+03, + -3.042529e+03, + 2.614916e+03, + 1.519227e+04, + -1.104184e+04, + -1.582042e+03, + 2.053080e+03, + 1.539091e+04, + -1.188713e+04, + -1.306613e+03, + 1.508474e+03, + 1.555342e+04, + -2.215601e+04, + 1.527387e+02, + 9.531955e+02, + 1.567324e+04, + -9.598320e+03, + -2.176024e+02, + 3.465646e+02, + 1.574722e+04, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -1.644955e+03, + 6.448869e+01, + 0, + 0, + -1.029582e+04, + 6.950336e+02, + 5.752530e-01, + 1.793892e-03, + -1.273869e+05, + 6.122692e+03, + 8.641528e+00, + 3.498089e-02, + -4.160031e+05, + 2.380720e+04, + 8.266186e+01, + 4.377096e-01, + -1.255311e+06, + 6.800200e+04, + 4.206646e+02, + 2.985036e+00, + -2.081254e+06, + 1.244833e+05, + 1.454439e+03, + 1.399056e+01, + -2.900617e+06, + 1.789184e+05, + 3.584258e+03, + 4.729999e+01, + -2.756955e+06, + 1.947111e+05, + 6.897862e+03, + 1.251625e+02, + -2.672126e+06, + 1.929093e+05, + 1.099130e+04, + 2.723388e+02, + -2.086269e+06, + 1.602556e+05, + 1.530917e+04, + 5.125534e+02, + -1.573510e+06, + 1.215890e+05, + 1.919192e+04, + 8.597800e+02, + -1.355439e+06, + 8.820952e+04, + 2.224744e+04, + 1.318242e+03, + -5.451509e+05, + 3.738095e+04, + 2.414097e+04, + 1.882051e+03, + -6.036619e+05, + 2.573667e+04, + 2.497727e+04, + 2.530007e+03, + -3.048824e+05, + 1.354461e+03, + 2.497001e+04, + 3.250364e+03, + -2.405107e+05, + -7.845169e+03, + 2.417257e+04, + 4.017749e+03, + -7.981406e+04, + -1.839566e+04, + 2.282880e+04, + 4.812674e+03, + -5.359818e+04, + -1.914615e+04, + 2.117668e+04, + 5.613727e+03, + -9.539372e+04, + -1.631387e+04, + 1.943298e+04, + 6.409506e+03, + -4.737571e+03, + -2.057378e+04, + 1.755731e+04, + 7.189996e+03, + -1.608912e+04, + -1.712993e+04, + 1.567655e+04, + 7.938106e+03, + -2.088100e+03, + -1.571847e+04, + 1.391656e+04, + 8.650875e+03, + -3.661972e+04, + -1.147036e+04, + 1.228681e+04, + 9.323355e+03, + 1.657977e+04, + -1.377689e+04, + 1.070581e+04, + 9.954345e+03, + -3.463596e+03, + -9.698335e+03, + 9.274149e+03, + 1.053254e+04, + -5.891139e+03, + -8.043333e+03, + 8.040790e+03, + 1.106587e+04, + -1.191734e+04, + -6.450980e+03, + 6.917247e+03, + 1.155414e+04, + 3.491650e+02, + -6.574146e+03, + 5.858587e+03, + 1.199621e+04, + -7.578241e+03, + -4.689544e+03, + 4.907900e+03, + 1.238765e+04, + -1.092448e+04, + -3.741680e+03, + 4.055337e+03, + 1.273290e+04, + 4.106714e+03, + -4.518819e+03, + 3.238118e+03, + 1.303002e+04, + -2.102369e+04, + -1.074664e+03, + 2.560131e+03, + 1.327469e+04, + -1.056000e+04, + -2.204585e+03, + 1.868347e+03, + 1.347934e+04, + -2.377808e+04, + -1.032248e+02, + 1.180047e+03, + 1.362602e+04, + -1.508705e+04, + -9.908849e+00, + 4.767186e+02, + 1.371823e+04, +}; + +double solarDataset720[] = +{ + 2.525918e+14, + -2.554558e+09, + -1.370972e+05, + 5.293898e+03, + -9.815726e+12, + 2.361968e+09, + 0, + 5.292070e+03, + -2.161284e+10, + 3.681165e+06, + 1.412622e+05, + 5.309215e+03, + 5.368037e+09, + -9.739389e+06, + 1.367183e+05, + 5.355116e+03, + 1.822593e+09, + -3.920899e+06, + 1.308458e+05, + 5.439746e+03, + 7.141674e+07, + -1.791913e+05, + 1.286456e+05, + 5.575115e+03, + -2.827977e+08, + 6.550345e+05, + 1.286106e+05, + 5.776749e+03, + -4.278581e+07, + -3.471843e+05, + 1.274126e+05, + 6.058476e+03, + -4.678445e+07, + -3.154022e+05, + 1.243004e+05, + 6.425649e+03, + -1.705526e+06, + -5.419689e+05, + 1.199770e+05, + 6.883746e+03, + -4.511176e+07, + -2.088734e+05, + 1.148018e+05, + 7.432212e+03, + -9.899075e+06, + -5.263774e+05, + 1.080124e+05, + 8.072059e+03, + -1.136389e+07, + -4.495800e+05, + 9.941715e+04, + 8.783408e+03, + -4.432855e+06, + -4.699310e+05, + 8.991963e+04, + 9.551761e+03, + -6.678983e+06, + -3.711487e+05, + 7.987525e+04, + 1.035412e+04, + -1.048795e+06, + -3.923684e+05, + 6.943065e+04, + 1.117043e+04, + -1.487792e+06, + -3.054383e+05, + 5.919156e+04, + 1.197072e+04, + -5.138917e+05, + -2.592954e+05, + 4.970314e+04, + 1.273960e+04, + 4.638959e+05, + -2.185755e+05, + 4.110096e+04, + 1.345986e+04, + -3.133674e+05, + -1.488658e+05, + 3.379813e+04, + 1.412155e+04, + 7.701003e+02, + -1.222341e+05, + 2.757857e+04, + 1.472633e+04, + 1.443326e+05, + -9.575337e+04, + 2.226568e+04, + 1.526806e+04, + 1.586498e+05, + -7.156428e+04, + 1.793449e+04, + 1.574764e+04, + 1.756484e+04, + -4.896879e+04, + 1.451310e+04, + 1.617102e+04, + 8.828851e+04, + -3.944113e+04, + 1.175869e+04, + 1.654602e+04, + -6.323419e+04, + -2.418904e+04, + 9.565046e+03, + 1.687570e+04, + 9.171615e+04, + -2.493151e+04, + 7.723482e+03, + 1.716762e+04, + -1.428085e+04, + -1.376363e+04, + 6.275414e+03, + 1.741964e+04, + 2.437380e+04, + -1.256407e+04, + 5.133211e+03, + 1.764318e+04, + 1.709855e+03, + -8.360511e+03, + 4.206652e+03, + 1.783845e+04, + -1.602339e+03, + -6.380326e+03, + 3.464464e+03, + 1.801101e+04, + 1.086892e+04, + -5.672266e+03, + 2.839413e+03, + 1.816274e+04, + 1.947834e+03, + -3.743557e+03, + 2.343114e+03, + 1.829498e+04, + -4.914126e+03, + -2.541311e+03, + 1.951555e+03, + 1.841212e+04, + 7.500891e+03, + -2.900219e+03, + 1.606900e+03, + 1.851587e+04, + -6.683859e+03, + -1.171479e+03, + 1.335113e+03, + 1.860554e+04, + 2.524698e+03, + -1.755106e+03, + 1.097230e+03, + 1.868573e+04, + 1.413303e+02, + -1.123324e+03, + 8.913331e+02, + 1.875383e+04, + -5.972485e+02, + -8.258019e+02, + 7.301851e+02, + 1.881276e+04, + -1.374811e+03, + -6.044738e+02, + 5.930501e+02, + 1.886362e+04, + -2.464199e+02, + -6.001397e+02, + 4.686460e+02, + 1.890681e+04, + -3.386839e+03, + -1.749768e+02, + 3.615101e+02, + 1.894210e+04, + 1.115795e+03, + -5.876697e+02, + 2.497363e+02, + 1.897051e+04, + -5.909912e+03, + 3.198230e+02, + 1.691543e+02, + 1.898962e+04, + -1.580136e+03, + -5.978889e+01, + 6.196234e+01, + 1.900370e+04, + 2.989518e+13, + -1.289421e+08, + 1.099829e+05, + 2.834177e+03, + -3.090365e+12, + 6.856653e+08, + 1.321869e+05, + 2.836187e+03, + 9.682967e+10, + -5.904165e+07, + 1.626712e+05, + 2.856692e+03, + -5.436058e+09, + 6.318661e+06, + 1.551570e+05, + 2.907038e+03, + 6.591801e+08, + -1.130499e+06, + 1.565831e+05, + 3.007157e+03, + -7.138774e+08, + 1.316135e+06, + 1.563922e+05, + 3.171322e+03, + 3.237601e+07, + -7.953836e+05, + 1.552515e+05, + 3.417128e+03, + -4.655197e+07, + -3.938954e+05, + 1.522345e+05, + 3.753533e+03, + -2.305480e+07, + -4.616706e+05, + 1.487543e+05, + 4.192527e+03, + -8.350406e+07, + -1.385543e+05, + 1.443327e+05, + 4.741292e+03, + -2.273311e+07, + -6.254407e+05, + 1.375714e+05, + 5.403999e+03, + -2.274408e+07, + -5.692192e+05, + 1.282140e+05, + 6.164358e+03, + -6.189259e+06, + -6.624563e+05, + 1.172277e+05, + 7.007832e+03, + -1.040898e+07, + -5.161737e+05, + 1.053028e+05, + 7.908995e+03, + -2.699482e+06, + -5.346775e+05, + 9.279238e+04, + 8.847287e+03, + -2.235491e+06, + -4.383825e+05, + 8.020280e+04, + 9.789863e+03, + -1.374288e+06, + -3.645659e+05, + 6.827003e+04, + 1.071465e+04, + -1.221563e+04, + -3.098323e+05, + 5.718372e+04, + 1.159997e+04, + -3.432144e+05, + -2.317054e+05, + 4.735807e+04, + 1.242805e+04, + 1.796722e+05, + -1.889060e+05, + 3.883150e+04, + 1.319192e+04, + 5.940359e+04, + -1.395754e+05, + 3.160908e+04, + 1.388396e+04, + 1.898772e+05, + -1.085417e+05, + 2.562541e+04, + 1.450571e+04, + 6.259607e+04, + -7.758476e+04, + 2.076082e+04, + 1.505893e+04, + 9.493680e+03, + -5.706448e+04, + 1.682657e+04, + 1.555047e+04, + 1.154325e+05, + -4.666948e+04, + 1.358994e+04, + 1.598475e+04, + -6.600032e+03, + -3.033826e+04, + 1.102596e+04, + 1.636513e+04, + 5.150180e+04, + -2.556832e+04, + 8.962958e+03, + 1.670138e+04, + -5.043216e+03, + -1.683693e+04, + 7.309487e+03, + 1.699565e+04, + 4.630010e+04, + -1.531867e+04, + 5.969269e+03, + 1.725549e+04, + -3.176222e+04, + -7.688050e+03, + 4.927359e+03, + 1.748265e+04, + 1.990387e+04, + -9.109929e+03, + 4.042288e+03, + 1.768595e+04, + 1.136736e+04, + -6.270534e+03, + 3.303928e+03, + 1.786155e+04, + -1.921046e+03, + -4.000413e+03, + 2.750164e+03, + 1.801613e+04, + -8.295624e+03, + -2.881436e+03, + 2.295908e+03, + 1.815411e+04, + 1.158890e+04, + -3.694378e+03, + 1.877598e+03, + 1.827603e+04, + -7.985865e+03, + -1.327338e+03, + 1.554511e+03, + 1.838032e+04, + 6.287924e+03, + -2.268548e+03, + 1.279719e+03, + 1.847378e+04, + -5.841113e+03, + -7.169778e+02, + 1.056665e+03, + 1.855324e+04, + 2.331521e+03, + -1.372167e+03, + 8.596951e+02, + 1.862405e+04, + -6.715950e+02, + -7.448262e+02, + 6.904255e+02, + 1.868294e+04, + -2.277589e+03, + -4.673925e+02, + 5.571070e+02, + 1.873345e+04, + -2.143745e+03, + -4.255135e+02, + 4.286454e+02, + 1.877595e+04, + -2.342452e+03, + -3.095573e+02, + 3.018268e+02, + 1.880924e+04, + -2.141651e+03, + -1.996398e+02, + 1.826752e+02, + 1.883282e+04, + -1.800736e+03, + -5.698464e+01, + 8.207416e+01, + 1.884678e+04, + 1.447401e+13, + -8.993067e+07, + 7.803754e+04, + 1.013116e+03, + -8.727215e+11, + 2.292335e+08, + 8.783964e+04, + 1.014508e+03, + -2.637424e+10, + 1.849076e+07, + 1.050400e+05, + 1.026912e+03, + 2.501031e+09, + -8.153203e+05, + 1.086648e+05, + 1.062371e+03, + 6.350316e+08, + 1.081054e+06, + 1.106769e+05, + 1.131995e+03, + -5.067515e+08, + 2.734648e+06, + 1.150568e+05, + 1.250306e+03, + 8.471154e+07, + 7.604123e+05, + 1.198954e+05, + 1.435562e+03, + -5.169626e+07, + 1.125922e+06, + 1.244427e+05, + 1.702570e+03, + -1.420182e+08, + 1.257137e+06, + 1.296866e+05, + 2.073373e+03, + -6.016236e+07, + 4.507910e+05, + 1.331301e+05, + 2.568637e+03, + -6.181395e+07, + 2.560844e+05, + 1.334031e+05, + 3.194251e+03, + -2.944661e+07, + -1.809190e+05, + 1.302883e+05, + 3.952267e+03, + -1.974673e+07, + -3.302753e+05, + 1.236749e+05, + 4.825974e+03, + -1.831211e+07, + -3.630744e+05, + 1.144628e+05, + 5.793807e+03, + -1.063314e+05, + -5.671483e+05, + 1.027316e+05, + 6.825455e+03, + -7.428135e+06, + -3.646082e+05, + 9.035604e+04, + 7.875637e+03, + -4.224498e+05, + -4.226070e+05, + 7.785079e+04, + 8.928044e+03, + -5.225200e+05, + -3.292931e+05, + 6.569603e+04, + 9.939440e+03, + 1.351084e+05, + -2.692418e+05, + 5.486961e+04, + 1.089545e+04, + -6.986607e+05, + -1.900635e+05, + 4.546374e+04, + 1.178319e+04, + 8.151561e+05, + -1.826275e+05, + 3.717645e+04, + 1.259855e+04, + -2.097157e+05, + -1.087743e+05, + 3.039241e+04, + 1.332873e+04, + 8.873651e+04, + -9.305999e+04, + 2.483143e+04, + 1.399033e+04, + 8.394321e+04, + -7.004892e+04, + 2.014053e+04, + 1.457831e+04, + 2.568894e+04, + -5.092930e+04, + 1.634436e+04, + 1.509840e+04, + 1.280322e+05, + -4.220220e+04, + 1.325641e+04, + 1.555749e+04, + -3.361001e+04, + -2.513248e+04, + 1.085224e+04, + 1.596046e+04, + 2.979468e+04, + -2.253703e+04, + 8.893598e+03, + 1.631985e+04, + 3.723816e+04, + -1.735501e+04, + 7.267372e+03, + 1.663501e+04, + -1.726087e+04, + -1.053326e+04, + 6.006399e+03, + 1.691243e+04, + 1.578262e+04, + -1.021949e+04, + 4.953342e+03, + 1.715986e+04, + 1.743296e+03, + -6.992042e+03, + 4.079600e+03, + 1.737627e+04, + 1.170557e+03, + -5.467831e+03, + 3.375752e+03, + 1.756744e+04, + 7.317985e+03, + -4.658490e+03, + 2.788852e+03, + 1.773572e+04, + -2.944508e+03, + -2.890565e+03, + 2.322051e+03, + 1.788333e+04, + -1.384627e+03, + -2.499429e+03, + 1.932715e+03, + 1.801462e+04, + 3.870094e+03, + -2.380198e+03, + 1.589263e+03, + 1.812959e+04, + -7.589419e+03, + -9.387526e+02, + 1.316390e+03, + 1.822906e+04, + 6.765004e+03, + -2.055863e+03, + 1.059421e+03, + 1.831691e+04, + -7.908487e+03, + -1.944332e+02, + 8.634886e+02, + 1.838909e+04, + 2.402999e+03, + -1.255047e+03, + 6.776365e+02, + 1.845334e+04, + -3.022120e+03, + -3.713633e+02, + 5.165854e+02, + 1.850326e+04, + -2.480041e+03, + -3.839458e+02, + 3.785083e+02, + 1.854419e+04, + -7.542281e+03, + 2.431373e+02, + 2.418575e+02, + 1.857417e+04, + -1.557329e+03, + -1.160108e+02, + 7.276011e+01, + 1.859310e+04, + -4.132444e+13, + 4.983149e+08, + 6.380020e+04, + 1.851747e+02, + 1.098450e+12, + -2.448093e+08, + 4.414219e+04, + 1.862109e+02, + -3.624187e+10, + 2.421969e+07, + 3.304274e+04, + 1.899028e+02, + 3.813707e+09, + -2.123873e+06, + 3.724471e+04, + 2.020496e+02, + -9.762495e+07, + 2.271395e+06, + 3.918961e+04, + 2.259298e+02, + 3.247350e+08, + 1.259102e+06, + 4.364256e+04, + 2.695358e+02, + -7.726482e+07, + 2.316327e+06, + 4.998989e+04, + 3.423470e+02, + -1.019017e+08, + 2.228401e+06, + 5.902081e+04, + 4.620756e+02, + -5.107875e+07, + 1.805353e+06, + 6.940990e+04, + 6.504069e+02, + -9.891926e+07, + 1.883571e+06, + 8.077203e+04, + 9.326294e+02, + -6.594961e+07, + 1.309945e+06, + 9.189406e+04, + 1.340972e+03, + -5.421313e+07, + 8.991718e+05, + 1.004014e+05, + 1.895689e+03, + -3.766459e+07, + 4.481471e+05, + 1.050914e+05, + 2.607513e+03, + -2.032421e+07, + 5.007750e+04, + 1.049523e+05, + 3.466517e+03, + -1.278947e+07, + -1.455609e+05, + 1.004758e+05, + 4.443536e+03, + -6.566446e+06, + -2.703383e+05, + 9.276981e+04, + 5.502737e+03, + -2.497008e+06, + -3.170135e+05, + 8.300714e+04, + 6.601359e+03, + -2.210423e+06, + -2.754951e+05, + 7.259218e+04, + 7.700522e+03, + -8.795482e+05, + -2.564902e+05, + 6.219949e+04, + 8.772571e+03, + 4.875594e+05, + -2.333622e+05, + 5.229111e+04, + 9.788438e+03, + -3.924964e+05, + -1.589745e+05, + 4.367724e+04, + 1.073035e+04, + 2.878946e+05, + -1.428811e+05, + 3.620966e+04, + 1.160062e+04, + -8.617935e+04, + -9.818419e+04, + 2.987112e+04, + 1.238861e+04, + 1.563730e+05, + -8.375478e+04, + 2.455211e+04, + 1.310190e+04, + 3.157587e+04, + -5.922817e+04, + 2.015025e+04, + 1.373849e+04, + 1.956095e+04, + -4.524892e+04, + 1.656404e+04, + 1.430792e+04, + 4.832654e+04, + -3.595669e+04, + 1.358688e+04, + 1.481455e+04, + 4.014487e+04, + -2.701491e+04, + 1.116623e+04, + 1.526291e+04, + -8.957043e+03, + -1.852113e+04, + 9.237221e+03, + 1.566073e+04, + 1.813805e+04, + -1.597159e+04, + 7.633708e+03, + 1.601542e+04, + 7.265770e+03, + -1.171307e+04, + 6.306238e+03, + 1.632830e+04, + 5.845122e+03, + -9.056395e+03, + 5.229642e+03, + 1.660539e+04, + 1.705465e+03, + -6.842519e+03, + 4.346327e+03, + 1.685070e+04, + -3.099670e+03, + -5.132762e+03, + 3.614027e+03, + 1.706799e+04, + 9.091824e+03, + -4.904382e+03, + 2.986894e+03, + 1.725985e+04, + -3.097208e+03, + -2.861985e+03, + 2.486454e+03, + 1.742725e+04, + -5.115305e+03, + -2.254430e+03, + 2.073917e+03, + 1.757629e+04, + 3.305222e+03, + -2.536090e+03, + 1.690410e+03, + 1.770681e+04, + 8.613358e+02, + -1.693291e+03, + 1.373974e+03, + 1.781760e+04, + -5.270481e+03, + -8.177981e+02, + 1.129554e+03, + 1.791337e+04, + 7.202933e+01, + -1.244067e+03, + 8.946304e+02, + 1.799642e+04, + -3.932364e+03, + -5.617175e+02, + 6.851235e+02, + 1.806340e+04, + -2.555341e+03, + -5.981541e+02, + 4.914744e+02, + 1.811718e+04, + -7.312382e+03, + 8.261489e+01, + 3.128333e+02, + 1.815579e+04, + -3.444405e+03, + -5.151392e+01, + 1.189236e+02, + 1.818034e+04, + 8.583418e+11, + -5.864616e+06, + 5.801889e+03, + 1.923411e+01, + -6.597669e+10, + 1.477868e+07, + 6.364852e+03, + 1.933677e+01, + 2.967102e+09, + -1.520837e+06, + 7.049525e+03, + 2.020405e+01, + 1.724924e+09, + -8.185196e+05, + 7.008149e+03, + 2.245400e+01, + -3.378314e+08, + 1.650445e+06, + 8.069082e+03, + 2.703836e+01, + 1.552037e+08, + 6.585714e+05, + 1.041940e+04, + 3.695513e+01, + -3.403201e+07, + 1.345522e+06, + 1.363123e+04, + 5.551902e+01, + -1.703697e+07, + 1.439665e+06, + 1.903317e+04, + 9.145205e+01, + -9.003897e+07, + 1.961474e+06, + 2.698744e+04, + 1.586961e+02, + -6.267348e+07, + 1.801412e+06, + 3.788213e+04, + 2.823781e+02, + -7.470787e+07, + 1.811829e+06, + 5.060948e+04, + 4.922647e+02, + -5.781055e+07, + 1.427287e+06, + 6.398865e+04, + 8.261355e+02, + -4.006817e+07, + 9.697074e+05, + 7.540147e+04, + 1.312352e+03, + -3.092562e+07, + 6.019593e+05, + 8.322421e+04, + 1.964145e+03, + -1.617086e+07, + 1.930166e+05, + 8.632748e+04, + 2.776467e+03, + -7.153255e+06, + -5.054112e+04, + 8.478684e+04, + 3.717483e+03, + -8.315402e+06, + -7.881484e+04, + 8.021572e+04, + 4.749714e+03, + -1.434409e+06, + -2.349591e+05, + 7.304797e+04, + 5.840556e+03, + -1.429239e+06, + -2.030418e+05, + 6.452381e+04, + 6.933083e+03, + -6.545407e+05, + -1.903916e+05, + 5.599103e+04, + 8.003800e+03, + -3.793090e+04, + -1.703670e+05, + 4.774203e+04, + 9.026419e+03, + -9.296898e+04, + -1.335883e+05, + 4.028177e+04, + 9.983296e+03, + 5.681627e+04, + -1.098699e+05, + 3.373445e+04, + 1.086875e+04, + 7.934290e+04, + -8.617558e+04, + 2.809759e+04, + 1.167776e+04, + -1.118900e+05, + -6.075673e+04, + 2.336891e+04, + 1.241185e+04, + 2.127956e+05, + -5.972293e+04, + 1.927296e+04, + 1.307544e+04, + -1.157300e+04, + -3.572063e+04, + 1.597792e+04, + 1.366415e+04, + -1.006642e+04, + -2.856674e+04, + 1.333737e+04, + 1.419680e+04, + 2.851548e+04, + -2.432571e+04, + 1.105653e+04, + 1.467415e+04, + 1.366951e+04, + -1.801951e+04, + 9.163722e+03, + 1.509781e+04, + 2.547955e+03, + -1.350032e+04, + 7.624751e+03, + 1.547499e+04, + 1.201292e+04, + -1.116877e+04, + 6.343424e+03, + 1.581086e+04, + -7.993522e+03, + -7.540323e+03, + 5.292034e+03, + 1.610860e+04, + 1.389183e+04, + -7.477679e+03, + 4.396669e+03, + 1.637388e+04, + -4.384238e+03, + -4.479632e+03, + 3.669053e+03, + 1.660659e+04, + -3.138125e+03, + -3.810639e+03, + 3.067716e+03, + 1.681444e+04, + 2.205661e+03, + -3.486730e+03, + 2.530998e+03, + 1.699733e+04, + 3.541657e+03, + -2.789475e+03, + 2.081942e+03, + 1.715588e+04, + -6.419750e+03, + -1.349094e+03, + 1.732402e+03, + 1.729391e+04, + -3.412184e+03, + -1.520739e+03, + 1.412396e+03, + 1.741589e+04, + -1.601511e+03, + -1.397792e+03, + 1.100329e+03, + 1.751816e+04, + 1.155029e+03, + -1.304754e+03, + 8.286155e+02, + 1.760046e+04, + -1.103308e+04, + 2.218581e+02, + 6.236810e+02, + 1.766473e+04, + -2.654581e+03, + -6.688353e+02, + 3.763136e+02, + 1.771593e+04, + -3.364310e+03, + -1.387471e+02, + 1.691463e+02, + 1.774386e+04, + -3.366371e+12, + 4.551509e+07, + 2.521199e+03, + 1.176103e+00, + 4.269705e+10, + -9.375992e+06, + 1.089486e+03, + 1.215845e+00, + -2.678077e+09, + 1.632330e+06, + 6.917876e+02, + 1.285806e+00, + 5.646428e+08, + -4.307335e+05, + 8.992048e+02, + 1.593390e+00, + -6.281455e+07, + 4.035231e+05, + 1.038831e+03, + 2.138181e+00, + 3.725795e+07, + 2.678653e+05, + 1.679090e+03, + 3.603652e+00, + -1.868599e+07, + 6.078925e+05, + 2.794495e+03, + 7.040473e+00, + -2.585413e+07, + 8.892713e+05, + 5.187431e+03, + 1.587553e+01, + -6.872034e+07, + 1.419539e+06, + 9.710418e+03, + 3.789527e+01, + -5.812931e+07, + 1.579306e+06, + 1.744566e+04, + 9.048376e+01, + -7.327242e+07, + 1.818701e+06, + 2.839538e+04, + 2.005187e+02, + -6.016819e+07, + 1.612661e+06, + 4.199317e+04, + 4.081326e+02, + -4.581463e+07, + 1.252723e+06, + 5.561195e+04, + 7.517504e+02, + -3.153234e+07, + 8.265349e+05, + 6.688402e+04, + 1.259016e+03, + -1.853079e+07, + 4.259439e+05, + 7.406056e+04, + 1.936723e+03, + -1.281312e+07, + 1.802667e+05, + 7.674943e+04, + 2.768831e+03, + -5.976285e+06, + -3.734133e+04, + 7.529271e+04, + 3.725956e+03, + -3.885336e+06, + -1.139315e+05, + 7.068494e+04, + 4.762226e+03, + -1.400809e+06, + -1.718468e+05, + 6.415010e+04, + 5.837947e+03, + -8.976969e+05, + -1.633241e+05, + 5.674855e+04, + 6.911982e+03, + -2.378758e+05, + -1.548497e+05, + 4.928211e+04, + 7.958122e+03, + -4.067629e+05, + -1.224513e+05, + 4.221302e+04, + 8.953753e+03, + 3.647054e+05, + -1.214788e+05, + 3.566013e+04, + 9.887462e+03, + -3.019450e+05, + -7.317725e+04, + 3.004861e+04, + 1.074445e+04, + 2.857755e+05, + -7.965496e+04, + 2.512925e+04, + 1.153600e+04, + -1.459626e+05, + -4.460431e+04, + 2.100972e+04, + 1.224792e+04, + 1.068546e+05, + -4.654852e+04, + 1.751428e+04, + 1.289850e+04, + 1.656740e+04, + -3.151584e+04, + 1.455586e+04, + 1.347833e+04, + 3.276173e+04, + -2.545561e+04, + 1.216656e+04, + 1.400043e+04, + -2.466748e+04, + -1.712349e+04, + 1.020130e+04, + 1.446904e+04, + 1.127833e+04, + -1.587340e+04, + 8.510004e+03, + 1.489124e+04, + 1.967525e+04, + -1.277787e+04, + 7.060958e+03, + 1.526518e+04, + -5.566324e+03, + -8.375268e+03, + 5.904955e+03, + 1.559653e+04, + 6.832170e+03, + -7.582035e+03, + 4.940098e+03, + 1.589320e+04, + -1.505137e+03, + -5.380298e+03, + 4.129024e+03, + 1.615572e+04, + -4.851997e+03, + -4.146360e+03, + 3.449533e+03, + 1.638915e+04, + 6.220823e+03, + -4.200678e+03, + 2.847212e+03, + 1.659502e+04, + -2.257540e+03, + -2.529572e+03, + 2.356955e+03, + 1.677328e+04, + -6.506661e+03, + -1.772864e+03, + 1.953201e+03, + 1.693045e+04, + 1.966362e+03, + -2.261074e+03, + 1.566694e+03, + 1.706682e+04, + -2.160232e+03, + -1.314709e+03, + 1.240209e+03, + 1.717955e+04, + -6.509197e+03, + -6.756691e+02, + 9.705296e+02, + 1.727398e+04, + -3.335667e+03, + -8.945697e+02, + 6.952550e+02, + 1.735046e+04, + -1.024257e+04, + 1.096345e+02, + 4.408097e+02, + 1.740488e+04, + -4.884337e+03, + -6.995646e+01, + 1.680061e+02, + 1.743947e+04, + 5.051346e+10, + -3.482968e+05, + -3.302132e+01, + 1.117732e-02, + -6.399594e+09, + 1.170259e+06, + 0, + 1.076335e-02, + 2.378197e+07, + -1.273564e+04, + 2.884079e+00, + 1.655900e-02, + -4.193101e+07, + 6.299121e+04, + 2.194923e+00, + 1.697297e-02, + 2.186069e+06, + 9.422620e+03, + 3.137534e+01, + 3.311800e-02, + 3.955651e+06, + 1.710432e+04, + 5.844243e+01, + 7.906922e-02, + -5.048300e+06, + 8.807915e+04, + 1.413038e+02, + 2.281002e-01, + -5.834264e+06, + 1.808251e+05, + 4.543665e+02, + 9.066052e-01, + -1.717877e+07, + 4.260059e+05, + 1.359382e+03, + 3.620625e+00, + -3.208799e+07, + 7.976457e+05, + 3.825320e+03, + 1.376715e+01, + -4.503408e+07, + 1.172645e+06, + 9.176929e+03, + 4.577239e+01, + -4.518399e+07, + 1.327171e+06, + 1.816020e+04, + 1.279439e+02, + -4.202028e+07, + 1.290199e+06, + 2.997675e+04, + 2.998951e+02, + -3.158344e+07, + 1.021061e+06, + 4.259877e+04, + 6.043667e+02, + -2.250542e+07, + 7.018793e+05, + 5.343008e+04, + 1.070337e+03, + -1.237124e+07, + 3.643660e+05, + 6.071096e+04, + 1.705578e+03, + -9.254795e+06, + 1.838508e+05, + 6.403515e+04, + 2.492654e+03, + -4.016937e+06, + -5.014300e+03, + 6.370683e+04, + 3.405094e+03, + -3.183145e+06, + -5.838735e+04, + 6.052375e+04, + 4.397082e+03, + -6.326153e+05, + -1.310928e+05, + 5.546362e+04, + 5.432589e+03, + -8.980466e+05, + -1.100814e+05, + 4.957269e+04, + 6.467941e+03, + -1.845464e+05, + -1.171335e+05, + 4.351408e+04, + 7.484261e+03, + -7.330240e+04, + -1.000436e+05, + 3.759655e+04, + 8.455153e+03, + -8.536306e+04, + -8.124805e+04, + 3.220664e+04, + 9.369683e+03, + 6.271460e+04, + -7.084973e+04, + 2.735632e+04, + 1.022133e+04, + -6.549462e+04, + -5.149641e+04, + 2.313856e+04, + 1.100420e+04, + 1.042378e+05, + -4.819678e+04, + 1.945257e+04, + 1.172164e+04, + -6.586040e+03, + -3.243944e+04, + 1.636407e+04, + 1.236958e+04, + 1.937888e+04, + -2.723890e+04, + 1.379626e+04, + 1.295960e+04, + -2.094192e+04, + -1.965536e+04, + 1.161032e+04, + 1.349253e+04, + 2.879330e+04, + -1.852871e+04, + 9.713757e+03, + 1.397336e+04, + 1.432240e+04, + -1.343548e+04, + 8.130835e+03, + 1.440101e+04, + -1.821063e+04, + -8.725253e+03, + 6.865050e+03, + 1.478482e+04, + 1.419588e+04, + -9.358718e+03, + 5.748762e+03, + 1.513083e+04, + 1.055273e+03, + -6.305478e+03, + 4.805868e+03, + 1.543573e+04, + -5.662820e+03, + -4.626779e+03, + 4.041581e+03, + 1.570792e+04, + 3.620958e+02, + -4.298662e+03, + 3.366303e+03, + 1.595011e+04, + 1.279925e+03, + -3.472943e+03, + 2.779108e+03, + 1.616176e+04, + -8.119412e+03, + -1.999793e+03, + 2.294268e+03, + 1.634600e+04, + 2.703808e+03, + -2.683207e+03, + 1.844539e+03, + 1.650646e+04, + -5.608882e+03, + -1.263187e+03, + 1.464334e+03, + 1.663925e+04, + -2.539837e+03, + -1.379024e+03, + 1.128950e+03, + 1.675095e+04, + -6.360200e+03, + -6.734980e+02, + 8.228503e+02, + 1.683877e+04, + -1.233536e+04, + 1.203160e+02, + 5.305324e+02, + 1.690457e+04, + -5.730992e+03, + -9.461582e+01, + 1.996954e+02, + 1.694608e+04, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -1.824802e+05, + 5.662913e+02, + 0, + 0, + -2.089360e+05, + 7.956041e+02, + 5.856313e-01, + 4.139750e-04, + 2.204465e+05, + -3.219661e+02, + 1.539320e+00, + 2.483850e-03, + -2.076559e+05, + 5.716207e+03, + 3.299164e+00, + 6.623600e-03, + -1.630833e+06, + 3.651570e+04, + 3.131705e+01, + 5.961240e-02, + -4.750601e+06, + 1.270860e+05, + 2.360423e+02, + 6.023336e-01, + -1.059805e+07, + 3.175159e+05, + 1.112384e+03, + 3.994031e+00, + -1.908619e+07, + 5.949891e+05, + 3.700632e+03, + 1.870919e+01, + -2.366093e+07, + 8.041978e+05, + 9.162593e+03, + 6.578187e+01, + -2.229039e+07, + 8.434683e+05, + 1.752631e+04, + 1.799168e+02, + -1.954097e+07, + 7.599747e+05, + 2.748722e+04, + 4.014783e+02, + -1.339870e+07, + 5.499302e+05, + 3.708410e+04, + 7.652249e+02, + -1.029819e+07, + 3.727003e+05, + 4.454472e+04, + 1.285347e+03, + -4.368519e+06, + 1.495000e+05, + 4.891481e+04, + 1.957839e+03, + -4.419116e+06, + 8.860581e+04, + 5.036253e+04, + 2.752876e+03, + -1.481145e+06, + -3.114013e+04, + 4.934483e+04, + 3.647707e+03, + -1.131953e+06, + -5.304541e+04, + 4.640097e+04, + 4.594923e+03, + -4.087520e+05, + -7.696885e+04, + 4.249037e+04, + 5.566846e+03, + -4.277536e+05, + -6.969004e+04, + 3.810892e+04, + 6.533158e+03, + -3.981790e+04, + -7.471184e+04, + 3.357954e+04, + 7.475552e+03, + -5.532513e+04, + -6.146236e+04, + 2.921408e+04, + 8.372805e+03, + 2.297742e+04, + -5.372960e+04, + 2.523788e+04, + 9.218872e+03, + -4.526357e+04, + -4.095211e+04, + 2.170188e+04, + 1.000775e+04, + 2.858501e+04, + -3.694172e+04, + 1.854799e+04, + 1.073977e+04, + -3.310096e+04, + -2.679609e+04, + 1.578940e+04, + 1.141043e+04, + 8.050741e+04, + -2.739862e+04, + 1.336283e+04, + 1.202398e+04, + -6.328003e+04, + -1.355651e+04, + 1.138577e+04, + 1.257725e+04, + 3.556582e+04, + -1.753080e+04, + 9.641932e+03, + 1.308660e+04, + -1.740585e+03, + -1.121468e+04, + 8.123657e+03, + 1.354004e+04, + 4.908269e+03, + -9.544626e+03, + 6.882834e+03, + 1.395006e+04, + -1.374891e+04, + -6.463029e+03, + 5.824501e+03, + 1.431834e+04, + 1.616534e+04, + -7.552350e+03, + 4.872531e+03, + 1.464918e+04, + -1.772732e+04, + -3.244296e+03, + 4.094072e+03, + 1.493915e+04, + 9.689841e+03, + -5.153985e+03, + 3.394548e+03, + 1.520003e+04, + -9.718081e+03, + -2.277143e+03, + 2.798639e+03, + 1.542337e+04, + -6.633543e+02, + -2.845618e+03, + 2.278206e+03, + 1.562014e+04, + -4.278643e+03, + -1.892766e+03, + 1.806022e+03, + 1.578510e+04, + -5.433639e+03, + -1.433992e+03, + 1.392542e+03, + 1.592207e+04, + -7.648617e+03, + -9.150271e+02, + 1.007781e+03, + 1.603088e+04, + -8.612245e+03, + -4.992492e+02, + 6.366121e+02, + 1.611080e+04, + -6.343749e+03, + -2.056231e+02, + 2.914770e+02, + 1.616025e+04, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -1.135457e+04, + 2.791630e+02, + 0, + 0, + -7.955274e+04, + 2.985927e+03, + 1.611854e+00, + 3.311800e-03, + -6.493155e+05, + 2.185150e+04, + 2.430096e+01, + 6.789190e-02, + -2.078383e+06, + 8.094823e+04, + 2.102422e+02, + 7.973158e-01, + -6.000804e+06, + 2.164166e+05, + 1.026160e+03, + 5.360976e+00, + -7.509681e+06, + 3.346173e+05, + 3.348784e+03, + 2.463110e+01, + -9.709505e+06, + 4.476003e+05, + 7.656050e+03, + 7.966162e+01, + -9.777442e+06, + 4.686826e+05, + 1.394700e+04, + 2.033979e+02, + -7.272808e+06, + 3.875450e+05, + 2.106614e+04, + 4.303630e+02, + -6.067236e+06, + 3.045882e+05, + 2.765451e+04, + 7.835942e+02, + -3.743681e+06, + 1.836085e+05, + 3.273701e+04, + 1.274002e+03, + -2.204422e+06, + 9.353882e+04, + 3.571808e+04, + 1.890326e+03, + -1.657859e+06, + 4.246821e+04, + 3.683928e+04, + 2.612254e+03, + -8.290594e+05, + -6.996218e+03, + 3.633556e+04, + 3.416065e+03, + -4.247261e+05, + -3.007731e+04, + 3.457926e+04, + 4.269476e+03, + -4.641352e+05, + -3.218306e+04, + 3.213056e+04, + 5.146662e+03, + 3.361520e+04, + -5.076883e+04, + 2.915608e+04, + 6.027337e+03, + -1.771637e+05, + -3.534656e+04, + 2.610100e+04, + 6.884571e+03, + -4.187517e+04, + -3.789010e+04, + 2.312238e+04, + 7.715656e+03, + 8.157849e+04, + -3.709787e+04, + 2.020432e+04, + 8.503474e+03, + -1.077364e+05, + -2.122007e+04, + 1.767673e+04, + 9.241847e+03, + 3.794355e+04, + -2.646253e+04, + 1.532351e+04, + 9.938986e+03, + -2.130421e+03, + -1.891377e+04, + 1.317205e+04, + 1.057852e+04, + 2.458205e+03, + -1.585926e+04, + 1.133734e+04, + 1.116822e+04, + -1.024932e+04, + -1.227472e+04, + 9.729063e+03, + 1.170859e+04, + 1.302318e+04, + -1.167431e+04, + 8.296256e+03, + 1.220175e+04, + -2.645825e+03, + -8.200160e+03, + 7.072718e+03, + 1.264649e+04, + -1.946731e+04, + -5.712138e+03, + 6.033100e+03, + 1.305017e+04, + 1.908928e+04, + -7.856404e+03, + 5.040421e+03, + 1.341373e+04, + -1.921842e+04, + -2.904171e+03, + 4.229674e+03, + 1.372996e+04, + 7.815975e+03, + -5.041356e+03, + 3.502309e+03, + 1.401481e+04, + -1.222105e+04, + -2.090158e+03, + 2.867188e+03, + 1.425719e+04, + -1.443808e+03, + -2.926865e+03, + 2.291167e+03, + 1.446851e+04, + -8.489031e+03, + -1.591866e+03, + 1.763443e+03, + 1.464092e+04, + -6.705956e+03, + -1.467380e+03, + 1.277843e+03, + 1.477936e+04, + -2.081073e+04, + 4.070825e+02, + 8.281583e+02, + 1.488046e+04, + -8.711751e+03, + -1.750566e+02, + 3.099560e+02, + 1.494590e+04, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + -2.563361e+03, + 1.163545e+02, + 0, + 0, + -4.016111e+04, + 1.858785e+03, + 1.077420e+00, + 3.311800e-03, + -2.538882e+05, + 1.204296e+04, + 2.087577e+01, + 8.486487e-02, + -8.568045e+05, + 4.291307e+04, + 1.658171e+02, + 9.066052e-01, + -1.848280e+06, + 9.915324e+04, + 7.465497e+02, + 5.567136e+00, + -2.940953e+06, + 1.660291e+05, + 2.247529e+03, + 2.303978e+01, + -3.370234e+06, + 2.089797e+05, + 5.011666e+03, + 7.097312e+01, + -3.259946e+06, + 2.186080e+05, + 8.892565e+03, + 1.735888e+02, + -3.097047e+06, + 2.032584e+05, + 1.336445e+04, + 3.563617e+02, + -1.821542e+06, + 1.437017e+05, + 1.764923e+04, + 6.394746e+02, + -1.802035e+06, + 1.171823e+05, + 2.118802e+04, + 1.028337e+03, + -1.000732e+06, + 6.321832e+04, + 2.372803e+04, + 1.525758e+03, + -7.690809e+05, + 3.504376e+04, + 2.503483e+04, + 2.115529e+03, + -3.914894e+05, + 6.298728e+03, + 2.528814e+04, + 2.781267e+03, + -3.035803e+05, + -5.220347e+03, + 2.468978e+04, + 3.499590e+03, + -1.135560e+05, + -1.761802e+04, + 2.348786e+04, + 4.251977e+03, + -1.801992e+05, + -1.570171e+04, + 2.191753e+04, + 5.017650e+03, + 1.706318e+04, + -2.545515e+04, + 2.006382e+04, + 5.784350e+03, + -6.797234e+04, + -1.795386e+04, + 1.815090e+04, + 6.531178e+03, + -1.793578e+04, + -1.930896e+04, + 1.628261e+04, + 7.256949e+03, + -2.326593e+04, + -1.656161e+04, + 1.443550e+04, + 7.949046e+03, + 2.835627e+04, + -1.719413e+04, + 1.268036e+04, + 8.602624e+03, + -3.200616e+04, + -1.034425e+04, + 1.113968e+04, + 9.211894e+03, + -1.865985e+04, + -1.040495e+04, + 9.723009e+03, + 9.784332e+03, + 3.642018e+04, + -1.251177e+04, + 8.326634e+03, + 1.030995e+04, + -3.566772e+04, + -4.462584e+03, + 7.200285e+03, + 1.078360e+04, + 1.006844e+04, + -8.044621e+03, + 6.164034e+03, + 1.122405e+04, + -1.216649e+04, + -4.566143e+03, + 5.198882e+03, + 1.161386e+04, + 2.635189e+03, + -5.240412e+03, + 4.341674e+03, + 1.196312e+04, + -9.610371e+03, + -3.091591e+03, + 3.584704e+03, + 1.226633e+04, + -5.856573e+03, + -3.064976e+03, + 2.898065e+03, + 1.253040e+04, + -1.080053e+04, + -2.040908e+03, + 2.251652e+03, + 1.275061e+04, + -1.117498e+04, + -1.629984e+03, + 1.631049e+03, + 1.292734e+04, + -1.961133e+04, + -2.300963e+02, + 1.034000e+03, + 1.305636e+04, + -1.288515e+04, + -4.832654e+01, + 4.255474e+02, + 1.313697e+04, +}; + +double* solarDatasets[] = +{ + solarDataset320, + solarDataset360, + solarDataset400, + solarDataset440, + solarDataset480, + solarDataset520, + solarDataset560, + solarDataset600, + solarDataset640, + solarDataset680, + solarDataset720 +}; + +double limbDarkeningDataset320[] = +{ 0.087657, 0.767174, 0.658123, -1.02953, 0.703297, -0.186735 }; + +double limbDarkeningDataset360[] = +{ 0.122953, 1.01278, 0.238687, -1.12208, 1.17087, -0.424947 }; + +double limbDarkeningDataset400[] = +{ 0.123511, 1.08444, -0.405598, 0.370629, -0.240567, 0.0674778 }; + +double limbDarkeningDataset440[] = +{ 0.158489, 1.23346, -0.875754, 0.857812, -0.484919, 0.110895 }; + +double limbDarkeningDataset480[] = +{ 0.198587, 1.30507, -1.25998, 1.49727, -1.04047, 0.299516 }; + +double limbDarkeningDataset520[] = +{ 0.23695, 1.29927, -1.28034, 1.37760, -0.85054, 0.21706 }; + +double limbDarkeningDataset560[] = +{ 0.26892, 1.34319, -1.58427, 1.91271, -1.31350, 0.37295 }; + +double limbDarkeningDataset600[] = +{ 0.299804, 1.36718, -1.80884, 2.29294, -1.60595, 0.454874 }; + +double limbDarkeningDataset640[] = +{ 0.33551, 1.30791, -1.79382, 2.44646, -1.89082, 0.594769 }; + +double limbDarkeningDataset680[] = +{ 0.364007, 1.27316, -1.73824, 2.28535, -1.70203, 0.517758 }; + +double limbDarkeningDataset720[] = +{ 0.389704, 1.2448, -1.69708, 2.14061, -1.51803, 0.440004 }; + +double * limbDarkeningDatasets[] = +{ + limbDarkeningDataset320, + limbDarkeningDataset360, + limbDarkeningDataset400, + limbDarkeningDataset440, + limbDarkeningDataset480, + limbDarkeningDataset520, + limbDarkeningDataset560, + limbDarkeningDataset600, + limbDarkeningDataset640, + limbDarkeningDataset680, + limbDarkeningDataset720 +}; + + From de2160ea6a2d2f7e3907673a89e16f3256d95313 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Wed, 3 Feb 2021 00:14:51 +0200 Subject: [PATCH 064/184] Implement Hosek-Wilkie sky model in GLSL shader --- .../resources/shaders/renderer.frag | 2 +- src/haloray-core/resources/shaders/sky.glsl | 66 +++++++++++++++---- .../backgroundSky/ArHosekSkyModel.h | 8 +++ .../simulation/simulationEngine.cpp | 53 +++++++++++++++ 4 files changed, 117 insertions(+), 12 deletions(-) diff --git a/src/haloray-core/resources/shaders/renderer.frag b/src/haloray-core/resources/shaders/renderer.frag index eb10caf..e8f851e 100644 --- a/src/haloray-core/resources/shaders/renderer.frag +++ b/src/haloray-core/resources/shaders/renderer.frag @@ -8,7 +8,7 @@ layout (binding = 1) uniform sampler2D backgroundTexture; void main(void) { vec3 haloLinearSrgb = adjustedExposure * texelFetch(haloTexture, ivec2(gl_FragCoord.xy), 0).xyz; - vec3 background = baseExposure * texelFetch(backgroundTexture, ivec2(gl_FragCoord.xy), 0).xyz; + vec3 background = max(vec3(0.0), baseExposure * texelFetch(backgroundTexture, ivec2(gl_FragCoord.xy), 0).xyz); vec3 gammaCorrected = pow(background + haloLinearSrgb, vec3(0.42)); color = vec4(gammaCorrected, 1.0); } diff --git a/src/haloray-core/resources/shaders/sky.glsl b/src/haloray-core/resources/shaders/sky.glsl index c462211..d395d83 100644 --- a/src/haloray-core/resources/shaders/sky.glsl +++ b/src/haloray-core/resources/shaders/sky.glsl @@ -3,8 +3,6 @@ layout(local_size_x = 1, local_size_y = 1) in; layout(binding = 2, rgba32f) uniform coherent image2D outputImage; -const float TURBIDITY = 4.0; - uniform struct sunProperties_t { float altitude; @@ -20,6 +18,16 @@ uniform struct camera_t int hideSubHorizon; } camera; +uniform struct hosekSkyModelState_t +{ + float configs[3][9]; + float radiances[3]; + float turbidity; + float solar_radius; + float albedo; + float elevation; +} skyModelState; + #define PROJECTION_STEREOGRAPHIC 0 #define PROJECTION_RECTILINEAR 1 #define PROJECTION_EQUIDISTANT 2 @@ -28,6 +36,13 @@ uniform struct camera_t const float PI = 3.1415926535; +/* + Sky shading model below based on + "A Practical Analytic Model for Daylight" (1999) + by A. J. Preetham, Peter Shirley, Brian Smits + University of Utah +*/ + float perez(float zenithAngle, float sunAngle, float A, float B, float C, float D, float E) { float firstTerm = 1.0f + A * exp(B / cos(zenithAngle)); @@ -35,13 +50,6 @@ float perez(float zenithAngle, float sunAngle, float A, float B, float C, float return firstTerm * secondTerm; } -/* - Sky shading model based on - "A Practical Analytic Model for Daylight" (1999) - by A. J. Preetham, Peter Shirley, Brian Smits - University of Utah -*/ - float luminance(float zenithAngle, float sunAngle, float turbidity) { float sunZenithAngle = radians(90.0 - sun.altitude); @@ -109,7 +117,7 @@ float chromaY(float zenithAngle, float sunAngle, float turbidity) return yz * upperTerm / lowerTerm; } -vec3 getSkyXYZ(vec3 direction, float turbidity) +vec3 preethamSky(vec3 direction, float turbidity) { float sunAltitudeRadians = radians(sun.altitude); /* NOTE: The sun vector is now in the opposite Z direction @@ -125,6 +133,41 @@ vec3 getSkyXYZ(vec3 direction, float turbidity) return XYZ; } +/* + Sky shading model below based on + "An Analytics Model for Full Spectral Sky-Dome Radiance" (2012) + by Lukas Hosek, Alexander Wilkie, + Charles University in Prague +*/ + +vec3 hosekSky(vec3 direction, float turbidity) +{ + float sunAltitudeRadians = radians(sun.altitude); + /* NOTE: The sun vector is now in the opposite Z direction + than in the crystal raytracing shader. This should probably + made the same in all shaders. */ + vec3 sunVec = vec3(0.0, sin(sunAltitudeRadians), -cos(sunAltitudeRadians)); + float sunAngle = acos(dot(sunVec, direction)); + float zenithAngle = acos(direction.y); + float theta = zenithAngle; + float gamma = sunAngle; + + vec3 skyCIEXYZ; + for (int channel = 0; channel < 3; ++channel) + { + float[9] configuration = skyModelState.configs[channel]; + float expM = exp(configuration[4] * gamma); + float rayM = cos(gamma)*cos(gamma); + float mieM = (1.0 + cos(gamma)*cos(gamma)) / pow((1.0 + configuration[8]*configuration[8] - 2.0*configuration[8]*cos(gamma)), 1.5); + float zenith = sqrt(cos(theta)); + + float temp = (1.0 + configuration[0] * exp(configuration[1] / (cos(theta) + 0.01))) * + (configuration[2] + configuration[3] * expM + configuration[5] * rayM + configuration[6] * mieM + configuration[7] * zenith); + skyCIEXYZ[channel] = skyModelState.radiances[channel] * temp; + } + return skyCIEXYZ; +} + vec2 planarToPolar(vec2 point) { float r = length(point); @@ -192,8 +235,9 @@ void main(void) float z = -cos(projectedAngle); vec3 dir = getCameraOrientationMatrix() * vec3(x, y, z); + vec3 skyCIEXYZ = hosekSky(dir, skyModelState.turbidity); if (dir.y < 0.0) return; mat3 xyzToSrgb = mat3(3.2406, -0.9689, 0.0557, -1.5372, 1.8758, -0.2040, -0.4986, 0.0415, 1.0570); - imageStore(outputImage, pixelCoordinates, vec4(0.05 * xyzToSrgb * getSkyXYZ(dir, TURBIDITY), 1.0)); + imageStore(outputImage, pixelCoordinates, vec4(0.1 * xyzToSrgb * skyCIEXYZ, 1.0)); } diff --git a/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.h b/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.h index 19ec82f..7ec70dc 100644 --- a/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.h +++ b/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.h @@ -304,6 +304,11 @@ HINT #1: if you want to model the sky of an earth-like planet that orbits #ifndef _ARHOSEK_SKYMODEL_H_ #define _ARHOSEK_SKYMODEL_H_ +#ifdef __cplusplus +extern "C" +{ +#endif + typedef double ArHosekSkyModelConfiguration[9]; @@ -447,5 +452,8 @@ double arhosekskymodel_solar_radiance( double wavelength ); +#ifdef __cplusplus +} +#endif #endif // _ARHOSEK_SKYMODEL_H_ diff --git a/src/haloray-core/simulation/simulationEngine.cpp b/src/haloray-core/simulation/simulationEngine.cpp index bf3c32c..fe7b1c6 100644 --- a/src/haloray-core/simulation/simulationEngine.cpp +++ b/src/haloray-core/simulation/simulationEngine.cpp @@ -2,15 +2,53 @@ #include #include #include +#include #include #include #include "../opengl/texture.h" #include "camera.h" #include "lightSource.h" #include "crystalPopulation.h" +#include "backgroundSky/ArHosekSkyModel.h" namespace HaloRay { +typedef struct SkyModelState +{ + float configs[3][9]; + float radiances[3]; + float turbidity; + float solar_radius; + float albedo; + float elevation; +} SkyModelState; + +SkyModelState ConvertSkyModelState(ArHosekSkyModelState *originalState) +{ + SkyModelState state; + state.turbidity = (float)originalState->turbidity; + state.solar_radius = (float)originalState->solar_radius; + state.albedo = (float)originalState->albedo; + state.elevation = (float)originalState->albedo; + for (auto channel = 0u; channel < 3; ++channel) + { + state.radiances[channel] = (float)(originalState->radiances[channel]); + for (auto config = 0u; config < 9; ++config) + { + state.configs[channel][config] = (float)(originalState->configs[channel][config]); + } + } + + return state; +} + +SkyModelState GetSkyStateModel(double solarElevation, double atmosphericTurbidity, double groundAlbedo) +{ + auto tempState = arhosek_xyz_skymodelstate_alloc_init(atmosphericTurbidity, groundAlbedo, solarElevation); + auto state = ConvertSkyModelState(tempState); + arhosekskymodelstate_free(tempState); + return state; +} SimulationEngine::SimulationEngine( std::shared_ptr crystalRepository, @@ -110,6 +148,9 @@ void SimulationEngine::step() if (m_iteration == 1) { + const float PI = 3.1415926535897932384626433832795028841971693993751058209749445923078164062; + auto skyState = GetSkyStateModel(PI * m_light.altitude / 180.0, 4.0, 0.0); + glMemoryBarrier(GL_SHADER_IMAGE_ACCESS_BARRIER_BIT); glBindImageTexture(m_backgroundTexture->getTextureUnit(), m_backgroundTexture->getHandle(), 0, GL_FALSE, 0, GL_READ_WRITE, GL_RGBA32F); m_skyShader->bind(); @@ -121,6 +162,18 @@ void SimulationEngine::step() m_skyShader->setUniformValue("camera.fov", m_camera.fov); m_skyShader->setUniformValue("camera.projection", m_camera.projection); m_skyShader->setUniformValue("camera.hideSubHorizon", m_camera.hideSubHorizon ? 1 : 0); + + for (auto channel = 0u; channel < 3; ++channel) + { + auto configLocation = m_skyShader->uniformLocation(QString("skyModelState.configs[%1]").arg(channel)); + m_skyShader->setUniformValueArray(configLocation, skyState.configs[channel], 9, 1); + } + m_skyShader->setUniformValueArray("skyModelState.radiances", skyState.radiances, 3, 1); + m_skyShader->setUniformValue("skyModelState.turbidity", skyState.turbidity); + m_skyShader->setUniformValue("skyModelState.solar_radius", skyState.solar_radius); + m_skyShader->setUniformValue("skyModelState.albedo", skyState.albedo); + m_skyShader->setUniformValue("skyModelState.elevation", skyState.elevation); + glDispatchCompute(m_outputWidth, m_outputHeight, 1); } From 7ad7c3c956213bebe2cd857e30dbdd466c87de83 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Wed, 3 Feb 2021 00:25:49 +0200 Subject: [PATCH 065/184] Make CIEXYZ-sRGB conversion more accurate Numbers are from official sRGB specification[1] instead of random website. [1] IEC 61966-2-1:1999". IEC Webstore. International Electrotechnical Commission. Retrieved 3 March 2017. --- src/haloray-core/resources/shaders/raytrace.glsl | 2 +- src/haloray-core/resources/shaders/renderer.frag | 5 +++-- src/haloray-core/resources/shaders/sky.glsl | 2 +- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/haloray-core/resources/shaders/raytrace.glsl b/src/haloray-core/resources/shaders/raytrace.glsl index f7e5b82..335e880 100644 --- a/src/haloray-core/resources/shaders/raytrace.glsl +++ b/src/haloray-core/resources/shaders/raytrace.glsl @@ -523,6 +523,6 @@ void main(void) ivec2 pixelCoordinates = ivec2(resolution.x * normalizedCoordinates.x, resolution.y * normalizedCoordinates.y); vec3 cieXYZ = daylightEstimate(wavelength) * vec3(xFit_1931(wavelength), yFit_1931(wavelength), zFit_1931(wavelength)); - mat3 xyzToSrgb = mat3(3.2406, -0.9689, 0.0557, -1.5372, 1.8758, -0.2040, -0.4986, 0.0415, 1.0570); + mat3 xyzToSrgb = mat3(3.24096994, -0.96924364, 0.05563008, -1.53738318, 1.8759675, -0.20397696, -0.49861076, 0.04155506, 1.05697151); storePixel(pixelCoordinates, xyzToSrgb * cieXYZ); } diff --git a/src/haloray-core/resources/shaders/renderer.frag b/src/haloray-core/resources/shaders/renderer.frag index e8f851e..0f787e9 100644 --- a/src/haloray-core/resources/shaders/renderer.frag +++ b/src/haloray-core/resources/shaders/renderer.frag @@ -9,6 +9,7 @@ layout (binding = 1) uniform sampler2D backgroundTexture; void main(void) { vec3 haloLinearSrgb = adjustedExposure * texelFetch(haloTexture, ivec2(gl_FragCoord.xy), 0).xyz; vec3 background = max(vec3(0.0), baseExposure * texelFetch(backgroundTexture, ivec2(gl_FragCoord.xy), 0).xyz); - vec3 gammaCorrected = pow(background + haloLinearSrgb, vec3(0.42)); - color = vec4(gammaCorrected, 1.0); + vec3 linearImage = background + haloLinearSrgb; + vec3 gammaCorrected = 1.055 * pow(linearImage, vec3(0.417)) - 0.055; + color = vec4(clamp(gammaCorrected, 0.0, 1.0), 1.0); } diff --git a/src/haloray-core/resources/shaders/sky.glsl b/src/haloray-core/resources/shaders/sky.glsl index d395d83..6c63ce0 100644 --- a/src/haloray-core/resources/shaders/sky.glsl +++ b/src/haloray-core/resources/shaders/sky.glsl @@ -238,6 +238,6 @@ void main(void) vec3 skyCIEXYZ = hosekSky(dir, skyModelState.turbidity); if (dir.y < 0.0) return; - mat3 xyzToSrgb = mat3(3.2406, -0.9689, 0.0557, -1.5372, 1.8758, -0.2040, -0.4986, 0.0415, 1.0570); + mat3 xyzToSrgb = mat3(3.24096994, -0.96924364, 0.05563008, -1.53738318, 1.8759675, -0.20397696, -0.49861076, 0.04155506, 1.05697151); imageStore(outputImage, pixelCoordinates, vec4(0.1 * xyzToSrgb * skyCIEXYZ, 1.0)); } From 73c977d21672b300b6ff767d896317760fabf535 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Wed, 3 Feb 2021 08:39:48 +0200 Subject: [PATCH 066/184] Mix Preetham and Hosek-Wilkie sky models below horizon Hosek-Wilkie does not produce any output below horizon. Now Preetham is mixed into Hosek-Wilkie between 3 and 0.5 degrees, and only Preetham is used between 0.5 and -10 degrees. Below -10 degrees the sky is black. --- src/haloray-core/resources/shaders/sky.glsl | 29 ++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/src/haloray-core/resources/shaders/sky.glsl b/src/haloray-core/resources/shaders/sky.glsl index 6c63ce0..d5369d9 100644 --- a/src/haloray-core/resources/shaders/sky.glsl +++ b/src/haloray-core/resources/shaders/sky.glsl @@ -35,6 +35,9 @@ uniform struct hosekSkyModelState_t #define PROJECTION_ORTHOGRAPHIC 4 const float PI = 3.1415926535; +const float minSunElevation = -10.0; +const float mixingMaxElevation = 3.0; +const float mixingMinElevation = 0.5; /* Sky shading model below based on @@ -168,6 +171,28 @@ vec3 hosekSky(vec3 direction, float turbidity) return skyCIEXYZ; } +vec3 hosekPreethamMix(vec3 direction, float turbidity) +{ + vec3 skyCIEXYZ; + if (sun.altitude >= mixingMaxElevation) + { + skyCIEXYZ = hosekSky(direction, turbidity); + } + else if (sun.altitude < mixingMaxElevation && sun.altitude >= mixingMinElevation) + { + vec3 preethamCIEXYZ = preethamSky(direction, turbidity); + vec3 hosekCIEXYZ = hosekSky(direction, turbidity); + float mixingFactor = (sun.altitude - mixingMinElevation) / (mixingMaxElevation - mixingMinElevation); + skyCIEXYZ = mix(hosekCIEXYZ, preethamCIEXYZ, mixingFactor); + } + else + { + skyCIEXYZ = preethamSky(direction, turbidity); + } + + return skyCIEXYZ; +} + vec2 planarToPolar(vec2 point) { float r = length(point); @@ -200,6 +225,8 @@ mat3 getCameraOrientationMatrix() void main(void) { + if (sun.altitude < minSunElevation) return; + ivec2 resolution = imageSize(outputImage); float aspectRatio = float(resolution.y) / float(resolution.x); ivec2 pixelCoordinates = ivec2(gl_GlobalInvocationID.xy); @@ -235,7 +262,7 @@ void main(void) float z = -cos(projectedAngle); vec3 dir = getCameraOrientationMatrix() * vec3(x, y, z); - vec3 skyCIEXYZ = hosekSky(dir, skyModelState.turbidity); + vec3 skyCIEXYZ = hosekPreethamMix(dir, skyModelState.turbidity); if (dir.y < 0.0) return; mat3 xyzToSrgb = mat3(3.24096994, -0.96924364, 0.05563008, -1.53738318, 1.8759675, -0.20397696, -0.49861076, 0.04155506, 1.05697151); From 146950469a1f0b17a274391fe37dff47530eb909 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Fri, 5 Feb 2021 01:18:08 +0200 Subject: [PATCH 067/184] Add CIE XYZ color-matching function data to source code The CMFs are needed for calculating CIE XYZ coordinates of the solar disc color. --- src/haloray-core/haloray-core.pro | 1 + src/haloray-core/simulation/CieXYZ_CMF.h | 163 +++++++++++++++++++++++ 2 files changed, 164 insertions(+) create mode 100644 src/haloray-core/simulation/CieXYZ_CMF.h diff --git a/src/haloray-core/haloray-core.pro b/src/haloray-core/haloray-core.pro index 74f7f2a..4ee6ada 100644 --- a/src/haloray-core/haloray-core.pro +++ b/src/haloray-core/haloray-core.pro @@ -36,6 +36,7 @@ HEADERS += \ gui/viewSettingsWidget.h \ opengl/texture.h \ opengl/textureRenderer.h \ + simulation/CieXYZ_CMF.h \ simulation/backgroundSky/ArHosekSkyModel.h \ simulation/backgroundSky/ArHosekSkyModelData_CIEXYZ.h \ simulation/backgroundSky/ArHosekSkyModelData_RGB.h \ diff --git a/src/haloray-core/simulation/CieXYZ_CMF.h b/src/haloray-core/simulation/CieXYZ_CMF.h new file mode 100644 index 0000000..781ab89 --- /dev/null +++ b/src/haloray-core/simulation/CieXYZ_CMF.h @@ -0,0 +1,163 @@ +#pragma once + +float cieX[31] = { + 0.0143100000f, + 0.0435100000f, + 0.1343800000f, + 0.2839000000f, + 0.3482800000f, + 0.3362000000f, + 0.2908000000f, + 0.1953600000f, + 0.0956400000f, + 0.0320100000f, + 0.0049000000f, + 0.0093000000f, + 0.0632700000f, + 0.1655000000f, + 0.2904000000f, + 0.4334499000f, + 0.5945000000f, + 0.7621000000f, + 0.9163000000f, + 1.0263000000f, + 1.0622000000f, + 1.0026000000f, + 0.8544499000f, + 0.6424000000f, + 0.4479000000f, + 0.2835000000f, + 0.1649000000f, + 0.0874000000f, + 0.0467700000f, + 0.0227000000f, + 0.0113591600f +}; + +float cieY[31] = { + 0.0003960000f, + 0.0012100000f, + 0.0040000000f, + 0.0116000000f, + 0.0230000000f, + 0.0380000000f, + 0.0600000000f, + 0.0909800000f, + 0.1390200000f, + 0.2080200000f, + 0.3230000000f, + 0.5030000000f, + 0.7100000000f, + 0.8620000000f, + 0.9540000000f, + 0.9949501000f, + 0.9950000000f, + 0.9520000000f, + 0.8700000000f, + 0.7570000000f, + 0.6310000000f, + 0.5030000000f, + 0.3810000000f, + 0.2650000000f, + 0.1750000000f, + 0.1070000000f, + 0.0610000000f, + 0.0320000000f, + 0.0170000000f, + 0.0082100000f, + 0.0041020000f +}; + +float cieZ[31] = { + 0.0678500100f, + 0.2074000000f, + 0.6456000000f, + 1.3856000000f, + 1.7470600000f, + 1.7721100000f, + 1.6692000000f, + 1.2876400000f, + 0.8129501000f, + 0.4651800000f, + 0.2720000000f, + 0.1582000000f, + 0.0782499900f, + 0.0421600000f, + 0.0203000000f, + 0.0087499990f, + 0.0039000000f, + 0.0021000000f, + 0.0016500010f, + 0.0011000000f, + 0.0008000000f, + 0.0003400000f, + 0.0001900000f, + 0.0000500000f, + 0.0000200000f, + 0.0000000000f, + 0.0000000000f, + 0.0000000000f, + 0.0000000000f, + 0.0000000000f, + 0.0000000000f +}; + +float cieWl[31] = { + 400.0000000000f, + 410.0000000000f, + 420.0000000000f, + 430.0000000000f, + 440.0000000000f, + 450.0000000000f, + 460.0000000000f, + 470.0000000000f, + 480.0000000000f, + 490.0000000000f, + 500.0000000000f, + 510.0000000000f, + 520.0000000000f, + 530.0000000000f, + 540.0000000000f, + 550.0000000000f, + 560.0000000000f, + 570.0000000000f, + 580.0000000000f, + 590.0000000000f, + 600.0000000000f, + 610.0000000000f, + 620.0000000000f, + 630.0000000000f, + 640.0000000000f, + 650.0000000000f, + 660.0000000000f, + 670.0000000000f, + 680.0000000000f, + 690.0000000000f, + 700.0000000000f +}; + +float multiplyAndSum(float *array1, float *array2, unsigned int size) +{ + float sum = 0.0; + for (auto i = 0u; i < size; ++i) + { + sum += array1[i] * array2[i]; + } + + return sum; +} + +float getCIEX(float *spectrum) +{ + return multiplyAndSum(spectrum, cieX, 31); +} + +float getCIEY(float *spectrum) +{ + return multiplyAndSum(spectrum, cieY, 31); +} + +float getCIEZ(float *spectrum) +{ + return multiplyAndSum(spectrum, cieZ, 31); +} From 7c0308facb934ef084bdf158213fe384f03006e8 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Fri, 5 Feb 2021 21:43:46 +0200 Subject: [PATCH 068/184] Render the sun as part of the sky shader The C++ code is still messy and needs cleaning up, but now the sun rendering works by interpolating between CPU-calculated CIE XYZ coordinates for the top and bottom of the sun disk. --- src/haloray-core/resources/shaders/sky.glsl | 100 ++++++++++++------ .../backgroundSky/ArHosekSkyModel.c | 68 ++++++++++++ .../backgroundSky/ArHosekSkyModel.h | 7 ++ .../simulation/simulationEngine.cpp | 47 +++++++- 4 files changed, 183 insertions(+), 39 deletions(-) diff --git a/src/haloray-core/resources/shaders/sky.glsl b/src/haloray-core/resources/shaders/sky.glsl index d5369d9..3b87879 100644 --- a/src/haloray-core/resources/shaders/sky.glsl +++ b/src/haloray-core/resources/shaders/sky.glsl @@ -26,6 +26,9 @@ uniform struct hosekSkyModelState_t float solar_radius; float albedo; float elevation; + float sunTopCIEXYZ[3]; + float sunCenterCIEXYZ[3]; + float sunBottomCIEXYZ[3]; } skyModelState; #define PROJECTION_STEREOGRAPHIC 0 @@ -36,8 +39,19 @@ uniform struct hosekSkyModelState_t const float PI = 3.1415926535; const float minSunElevation = -10.0; -const float mixingMaxElevation = 3.0; -const float mixingMinElevation = 0.5; +const float mixingMaxElevation = 1.0; +const float mixingMinElevation = 0.0; + + + +vec3 getSunVector() +{ + float sunAltitudeRadians = radians(sun.altitude); + /* NOTE: The sun vector is now in the opposite Z direction + than in the crystal raytracing shader. This should probably + made the same in all shaders. */ + return normalize(vec3(0.0, sin(sunAltitudeRadians), -cos(sunAltitudeRadians))); +} /* Sky shading model below based on @@ -46,14 +60,14 @@ const float mixingMinElevation = 0.5; University of Utah */ -float perez(float zenithAngle, float sunAngle, float A, float B, float C, float D, float E) +float perez(float cosZenithAngle, float sunAngle, float A, float B, float C, float D, float E) { - float firstTerm = 1.0f + A * exp(B / cos(zenithAngle)); + float firstTerm = 1.0f + A * exp(B / cosZenithAngle); float secondTerm = 1.0f + C * exp(D * sunAngle) + E * cos(sunAngle) * cos(sunAngle); return firstTerm * secondTerm; } -float luminance(float zenithAngle, float sunAngle, float turbidity) +float luminance(float cosZenithAngle, float sunAngle, float turbidity) { float sunZenithAngle = radians(90.0 - sun.altitude); float ay = 0.1787 * turbidity - 1.4630; @@ -63,12 +77,12 @@ float luminance(float zenithAngle, float sunAngle, float turbidity) float ey = -0.0670 * turbidity + 0.3703; float kappa = (4.0 / 9.0 - turbidity / 120.0) * (PI - 2 * sunZenithAngle); float Yz = (4.0453 * turbidity - 4.9710) * tan(kappa) - 0.2155 * turbidity + 2.4192; - float upperTerm = perez(zenithAngle, sunAngle, ay, by, cy, dy, ey); - float lowerTerm = perez(0.0, sunZenithAngle, ay, by, cy, dy, ey); + float upperTerm = perez(cosZenithAngle, sunAngle, ay, by, cy, dy, ey); + float lowerTerm = perez(1.0, sunZenithAngle, ay, by, cy, dy, ey); return Yz * upperTerm / lowerTerm; } -float chromaX(float zenithAngle, float sunAngle, float turbidity) +float chromaX(float cosZenithAngle, float sunAngle, float turbidity) { float sunZenithAngle = radians(90.0 - sun.altitude); float ax = -0.0193 * turbidity - 0.2592; @@ -89,12 +103,12 @@ float chromaX(float zenithAngle, float sunAngle, float turbidity) float xz = dot(turbidityVec, coefficientMatrix * sunZenithVec); - float upperTerm = perez(zenithAngle, sunAngle, ax, bx, cx, dx, ex); - float lowerTerm = perez(0.0, sunZenithAngle, ax, bx, cx, dx, ex); + float upperTerm = perez(cosZenithAngle, sunAngle, ax, bx, cx, dx, ex); + float lowerTerm = perez(1.0, sunZenithAngle, ax, bx, cx, dx, ex); return xz * upperTerm / lowerTerm; } -float chromaY(float zenithAngle, float sunAngle, float turbidity) +float chromaY(float cosZenithAngle, float sunAngle, float turbidity) { float sunZenithAngle = radians(90.0 - sun.altitude); float ay = -0.0167 * turbidity - 0.2608; @@ -115,23 +129,23 @@ float chromaY(float zenithAngle, float sunAngle, float turbidity) float yz = dot(turbidityVec, coefficientMatrix * sunZenithVec); - float upperTerm = perez(zenithAngle, sunAngle, ay, by, cy, dy, ey); - float lowerTerm = perez(0.0, sunZenithAngle, ay, by, cy, dy, ey); + float upperTerm = perez(cosZenithAngle, sunAngle, ay, by, cy, dy, ey); + float lowerTerm = perez(1.0, sunZenithAngle, ay, by, cy, dy, ey); return yz * upperTerm / lowerTerm; } vec3 preethamSky(vec3 direction, float turbidity) { - float sunAltitudeRadians = radians(sun.altitude); - /* NOTE: The sun vector is now in the opposite Z direction - than in the crystal raytracing shader. This should probably - made the same in all shaders. */ - vec3 sunVec = vec3(0.0, sin(sunAltitudeRadians), -cos(sunAltitudeRadians)); + vec3 sunVec = getSunVector(); float sunAngle = acos(dot(sunVec, direction)); - float zenithAngle = acos(direction.y); - float Y = luminance(zenithAngle, sunAngle, turbidity); - float x = chromaX(zenithAngle, sunAngle, turbidity); - float y = chromaY(zenithAngle, sunAngle, turbidity); + /* + Direction vector's zenith angle or theta equals + acos(direction.y) + */ + float cosZenithAngle = direction.y; + float Y = luminance(cosZenithAngle, sunAngle, turbidity); + float x = chromaX(cosZenithAngle, sunAngle, turbidity); + float y = chromaY(cosZenithAngle, sunAngle, turbidity); vec3 XYZ = vec3(x * Y/y, Y, (1.0 - x - y) * Y/y); return XYZ; } @@ -145,14 +159,13 @@ vec3 preethamSky(vec3 direction, float turbidity) vec3 hosekSky(vec3 direction, float turbidity) { - float sunAltitudeRadians = radians(sun.altitude); - /* NOTE: The sun vector is now in the opposite Z direction - than in the crystal raytracing shader. This should probably - made the same in all shaders. */ - vec3 sunVec = vec3(0.0, sin(sunAltitudeRadians), -cos(sunAltitudeRadians)); + vec3 sunVec = getSunVector(); float sunAngle = acos(dot(sunVec, direction)); - float zenithAngle = acos(direction.y); - float theta = zenithAngle; + /* + Direction vector's zenith angle or theta equals + acos(direction.y) + */ + float cosTheta = direction.y; float gamma = sunAngle; vec3 skyCIEXYZ; @@ -162,9 +175,9 @@ vec3 hosekSky(vec3 direction, float turbidity) float expM = exp(configuration[4] * gamma); float rayM = cos(gamma)*cos(gamma); float mieM = (1.0 + cos(gamma)*cos(gamma)) / pow((1.0 + configuration[8]*configuration[8] - 2.0*configuration[8]*cos(gamma)), 1.5); - float zenith = sqrt(cos(theta)); + float zenith = sqrt(cosTheta); - float temp = (1.0 + configuration[0] * exp(configuration[1] / (cos(theta) + 0.01))) * + float temp = (1.0 + configuration[0] * exp(configuration[1] / (cosTheta + 0.01))) * (configuration[2] + configuration[3] * expM + configuration[5] * rayM + configuration[6] * mieM + configuration[7] * zenith); skyCIEXYZ[channel] = skyModelState.radiances[channel] * temp; } @@ -223,6 +236,22 @@ mat3 getCameraOrientationMatrix() return rotateAroundY(radians(camera.yaw)) * rotateAroundX(radians(camera.pitch)); } +vec3 renderSun(vec3 direction) +{ + if (acos(dot(direction, getSunVector())) > skyModelState.solar_radius) + { + return vec3(0.0); + } + + float rayElevation = asin(direction.y); + float factor = (rayElevation - (skyModelState.elevation - skyModelState.solar_radius)) / (2.0 * skyModelState.solar_radius); + float x = mix(skyModelState.sunBottomCIEXYZ[0], skyModelState.sunTopCIEXYZ[0], factor); + float y = mix(skyModelState.sunBottomCIEXYZ[1], skyModelState.sunTopCIEXYZ[1], factor); + float z = mix(skyModelState.sunBottomCIEXYZ[2], skyModelState.sunTopCIEXYZ[2], factor); + + return vec3(x, y, z); +} + void main(void) { if (sun.altitude < minSunElevation) return; @@ -261,10 +290,13 @@ void main(void) float y = sin(projectedAngle) * sin(polar.y); float z = -cos(projectedAngle); - vec3 dir = getCameraOrientationMatrix() * vec3(x, y, z); + vec3 dir = normalize(getCameraOrientationMatrix() * vec3(x, y, z)); + if (dir.y < 0.0) return; + vec3 skyCIEXYZ = hosekPreethamMix(dir, skyModelState.turbidity); + vec3 sunCIEXYZ = renderSun(dir); + vec3 resultCIEXYZ = skyCIEXYZ + sunCIEXYZ; - if (dir.y < 0.0) return; mat3 xyzToSrgb = mat3(3.24096994, -0.96924364, 0.05563008, -1.53738318, 1.8759675, -0.20397696, -0.49861076, 0.04155506, 1.05697151); - imageStore(outputImage, pixelCoordinates, vec4(0.1 * xyzToSrgb * skyCIEXYZ, 1.0)); + imageStore(outputImage, pixelCoordinates, vec4(0.01 * xyzToSrgb * resultCIEXYZ, 1.0)); } diff --git a/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.c b/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.c index 17c8880..28577fc 100644 --- a/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.c +++ b/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.c @@ -814,3 +814,71 @@ double arhosekskymodel_solar_radiance( return direct_radiance + inscattered_radiance; } + +double arhosekskymodel_solar_radiance_plain( + ArHosekSkyModelState * state, + double elevation, + double wavelength + ) +{ + assert( + wavelength >= 320.0 + && wavelength <= 720.0 + && state->turbidity >= 1.0 + && state->turbidity <= 10.0 + ); + + int turb_low = (int) state->turbidity - 1; + double turb_frac = state->turbidity - (double) (turb_low + 1); + + if ( turb_low == 9 ) + { + turb_low = 8; + turb_frac = 1.0; + } + + int wl_low = (int) ((wavelength - 320.0) / 40.0); + double wl_frac = fmod(wavelength, 40.0) / 40.0; + + if ( wl_low == 10 ) + { + wl_low = 9; + wl_frac = 1.0; + } + + double direct_radiance = + ( 1.0 - turb_frac ) + * ( (1.0 - wl_frac) + * arhosekskymodel_sr_internal( + state, + turb_low, + wl_low, + elevation + ) + + wl_frac + * arhosekskymodel_sr_internal( + state, + turb_low, + wl_low+1, + elevation + ) + ) + + turb_frac + * ( ( 1.0 - wl_frac ) + * arhosekskymodel_sr_internal( + state, + turb_low+1, + wl_low, + elevation + ) + + wl_frac + * arhosekskymodel_sr_internal( + state, + turb_low+1, + wl_low+1, + elevation + ) + ); + + return direct_radiance; +} diff --git a/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.h b/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.h index 7ec70dc..c24018e 100644 --- a/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.h +++ b/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.h @@ -452,6 +452,13 @@ double arhosekskymodel_solar_radiance( double wavelength ); +// Same as above, but without the sky contribution or limb darkening +double arhosekskymodel_solar_radiance_plain( + ArHosekSkyModelState * state, + double elevation, + double wavelength + ); + #ifdef __cplusplus } #endif diff --git a/src/haloray-core/simulation/simulationEngine.cpp b/src/haloray-core/simulation/simulationEngine.cpp index fe7b1c6..4babd70 100644 --- a/src/haloray-core/simulation/simulationEngine.cpp +++ b/src/haloray-core/simulation/simulationEngine.cpp @@ -10,9 +10,12 @@ #include "lightSource.h" #include "crystalPopulation.h" #include "backgroundSky/ArHosekSkyModel.h" +#include "CieXYZ_CMF.h" namespace HaloRay { +const double PI = 3.1415926535897932384626433832795028841971693993751058209749445923078164062; + typedef struct SkyModelState { float configs[3][9]; @@ -21,6 +24,9 @@ typedef struct SkyModelState float solar_radius; float albedo; float elevation; + float sunTopCIEXYZ[3]; + float sunCenterCIEXYZ[3]; + float sunBottomCIEXYZ[3]; } SkyModelState; SkyModelState ConvertSkyModelState(ArHosekSkyModelState *originalState) @@ -44,9 +50,38 @@ SkyModelState ConvertSkyModelState(ArHosekSkyModelState *originalState) SkyModelState GetSkyStateModel(double solarElevation, double atmosphericTurbidity, double groundAlbedo) { - auto tempState = arhosek_xyz_skymodelstate_alloc_init(atmosphericTurbidity, groundAlbedo, solarElevation); - auto state = ConvertSkyModelState(tempState); - arhosekskymodelstate_free(tempState); + auto tempSkyState = arhosek_xyz_skymodelstate_alloc_init(atmosphericTurbidity, groundAlbedo, solarElevation); + auto state = ConvertSkyModelState(tempSkyState); + arhosekskymodelstate_free(tempSkyState); + + auto tempSunState = arhosekskymodelstate_alloc_init(solarElevation, atmosphericTurbidity, groundAlbedo); + + float solarRadianceTop[31]; + float solarRadianceCenter[31]; + float solarRadianceBottom[31]; + + for (auto i = 0; i < 31; ++i) + { + float wl = cieWl[i]; + solarRadianceTop[i] = arhosekskymodel_solar_radiance_plain(tempSunState, tempSunState->elevation + tempSunState->solar_radius, (double)wl); + solarRadianceCenter[i] = arhosekskymodel_solar_radiance_plain(tempSunState, tempSunState->elevation, (double)wl); + solarRadianceBottom[i] = arhosekskymodel_solar_radiance_plain(tempSunState, tempSunState->elevation - tempSunState->solar_radius, (double)wl); + } + + arhosekskymodelstate_free(tempSunState); + + state.sunTopCIEXYZ[0] = getCIEX(solarRadianceTop); + state.sunTopCIEXYZ[1] = getCIEY(solarRadianceTop); + state.sunTopCIEXYZ[2] = getCIEZ(solarRadianceTop); + + state.sunCenterCIEXYZ[0] = getCIEX(solarRadianceCenter); + state.sunCenterCIEXYZ[1] = getCIEY(solarRadianceCenter); + state.sunCenterCIEXYZ[2] = getCIEZ(solarRadianceCenter); + + state.sunBottomCIEXYZ[0] = getCIEX(solarRadianceBottom); + state.sunBottomCIEXYZ[1] = getCIEY(solarRadianceBottom); + state.sunBottomCIEXYZ[2] = getCIEZ(solarRadianceBottom); + return state; } @@ -148,8 +183,7 @@ void SimulationEngine::step() if (m_iteration == 1) { - const float PI = 3.1415926535897932384626433832795028841971693993751058209749445923078164062; - auto skyState = GetSkyStateModel(PI * m_light.altitude / 180.0, 4.0, 0.0); + auto skyState = GetSkyStateModel(PI * m_light.altitude / 180.0, 5.0, 0.0); glMemoryBarrier(GL_SHADER_IMAGE_ACCESS_BARRIER_BIT); glBindImageTexture(m_backgroundTexture->getTextureUnit(), m_backgroundTexture->getHandle(), 0, GL_FALSE, 0, GL_READ_WRITE, GL_RGBA32F); @@ -173,6 +207,9 @@ void SimulationEngine::step() m_skyShader->setUniformValue("skyModelState.solar_radius", skyState.solar_radius); m_skyShader->setUniformValue("skyModelState.albedo", skyState.albedo); m_skyShader->setUniformValue("skyModelState.elevation", skyState.elevation); + m_skyShader->setUniformValueArray("skyModelState.sunTopCIEXYZ", skyState.sunTopCIEXYZ, 3, 1); + m_skyShader->setUniformValueArray("skyModelState.sunCenterCIEXYZ", skyState.sunCenterCIEXYZ, 3, 1); + m_skyShader->setUniformValueArray("skyModelState.sunBottomCIEXYZ", skyState.sunBottomCIEXYZ, 3, 1); glDispatchCompute(m_outputWidth, m_outputHeight, 1); } From d94bc8c56479bd25b31b1f12c6a03dcf6355fd68 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Fri, 5 Feb 2021 23:57:11 +0200 Subject: [PATCH 069/184] Normalize rays in crystal shader to fix artifacts Some artifacts were visible in the center of the field of view when zoomed in very close, because some ray vectors were very slightly longer than unit length and were causing undefined behaviour when subsequent dot products and such were being fed into asin and acos functions, which only accept input in the range -1.0 to 1.0. --- src/haloray-core/resources/shaders/raytrace.glsl | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/haloray-core/resources/shaders/raytrace.glsl b/src/haloray-core/resources/shaders/raytrace.glsl index 335e880..87224ec 100644 --- a/src/haloray-core/resources/shaders/raytrace.glsl +++ b/src/haloray-core/resources/shaders/raytrace.glsl @@ -458,7 +458,7 @@ void main(void) /* The inverse rotation matrix must be applied because we are rotating the incoming ray and not the crystal itself. */ - vec3 rotatedRayDirection = rayDirection * rotationMatrix; + vec3 rotatedRayDirection = normalize(rayDirection * rotationMatrix); vec3 resultRay = castRayThroughCrystal(rotatedRayDirection, wavelength); @@ -473,7 +473,7 @@ void main(void) /* The inverse rotation matrix must be applied because we are rotating the incoming ray and not the crystal itself. */ - rotatedRayDirection = resultRay * rotationMatrix; + rotatedRayDirection = normalize(resultRay * rotationMatrix); resultRay = castRayThroughCrystal(rotatedRayDirection, wavelength); @@ -485,11 +485,10 @@ void main(void) // Hide subhorizon rays if (camera.hideSubHorizon == 1 && resultRay.y > 0.0) return; - resultRay = -getCameraOrientationMatrix() * resultRay; - ivec2 resolution = imageSize(outputImage); float aspectRatio = float(resolution.y) / float(resolution.x); + resultRay = normalize(-getCameraOrientationMatrix() * resultRay); vec2 polar = cartesianToPolar(resultRay); float fovRadians = radians(camera.fov); From 12f25b98959242e74d0beb9a47e2cc1fd2e1f98d Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 6 Feb 2021 00:06:41 +0200 Subject: [PATCH 070/184] Allow zooming in more Now the minimum vertical field-of-view is 1.5 degrees. --- src/haloray-core/gui/openGLWidget.cpp | 2 +- src/haloray-core/gui/viewSettingsWidget.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/haloray-core/gui/openGLWidget.cpp b/src/haloray-core/gui/openGLWidget.cpp index 42d4ce9..3c19ea2 100644 --- a/src/haloray-core/gui/openGLWidget.cpp +++ b/src/haloray-core/gui/openGLWidget.cpp @@ -146,7 +146,7 @@ void OpenGLWidget::wheelEvent(QWheelEvent *event) camera.fov -= 0.01 * zoomSpeed * numPixels.y(); } - camera.fov = std::max(camera.fov, 10.0f); + camera.fov = std::max(camera.fov, 1.5f); camera.fov = std::min(camera.fov, camera.getMaximumFov()); m_engine->setCamera(camera); diff --git a/src/haloray-core/gui/viewSettingsWidget.cpp b/src/haloray-core/gui/viewSettingsWidget.cpp index 1075a60..6f4f3d9 100644 --- a/src/haloray-core/gui/viewSettingsWidget.cpp +++ b/src/haloray-core/gui/viewSettingsWidget.cpp @@ -62,7 +62,7 @@ void ViewSettingsWidget::setupUi() m_yawSlider = SliderSpinBox::createAngleSlider(-360.0, 360.0); m_yawSlider->setWrapping(true); - m_fieldOfViewSlider = SliderSpinBox::createAngleSlider(10.0, 360.0); + m_fieldOfViewSlider = SliderSpinBox::createAngleSlider(1.5, 360.0); m_brightnessSlider = new SliderSpinBox(); m_brightnessSlider->setMinimum(0.1); From 4cf5a26e3e13e539dc14466550f9f0459922d582 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 6 Feb 2021 00:17:16 +0200 Subject: [PATCH 071/184] Remove unused solar center CIE XYZ calculation --- src/haloray-core/resources/shaders/sky.glsl | 1 - src/haloray-core/simulation/simulationEngine.cpp | 8 -------- 2 files changed, 9 deletions(-) diff --git a/src/haloray-core/resources/shaders/sky.glsl b/src/haloray-core/resources/shaders/sky.glsl index 3b87879..c247947 100644 --- a/src/haloray-core/resources/shaders/sky.glsl +++ b/src/haloray-core/resources/shaders/sky.glsl @@ -27,7 +27,6 @@ uniform struct hosekSkyModelState_t float albedo; float elevation; float sunTopCIEXYZ[3]; - float sunCenterCIEXYZ[3]; float sunBottomCIEXYZ[3]; } skyModelState; diff --git a/src/haloray-core/simulation/simulationEngine.cpp b/src/haloray-core/simulation/simulationEngine.cpp index 4babd70..3fb836c 100644 --- a/src/haloray-core/simulation/simulationEngine.cpp +++ b/src/haloray-core/simulation/simulationEngine.cpp @@ -25,7 +25,6 @@ typedef struct SkyModelState float albedo; float elevation; float sunTopCIEXYZ[3]; - float sunCenterCIEXYZ[3]; float sunBottomCIEXYZ[3]; } SkyModelState; @@ -57,14 +56,12 @@ SkyModelState GetSkyStateModel(double solarElevation, double atmosphericTurbidit auto tempSunState = arhosekskymodelstate_alloc_init(solarElevation, atmosphericTurbidity, groundAlbedo); float solarRadianceTop[31]; - float solarRadianceCenter[31]; float solarRadianceBottom[31]; for (auto i = 0; i < 31; ++i) { float wl = cieWl[i]; solarRadianceTop[i] = arhosekskymodel_solar_radiance_plain(tempSunState, tempSunState->elevation + tempSunState->solar_radius, (double)wl); - solarRadianceCenter[i] = arhosekskymodel_solar_radiance_plain(tempSunState, tempSunState->elevation, (double)wl); solarRadianceBottom[i] = arhosekskymodel_solar_radiance_plain(tempSunState, tempSunState->elevation - tempSunState->solar_radius, (double)wl); } @@ -74,10 +71,6 @@ SkyModelState GetSkyStateModel(double solarElevation, double atmosphericTurbidit state.sunTopCIEXYZ[1] = getCIEY(solarRadianceTop); state.sunTopCIEXYZ[2] = getCIEZ(solarRadianceTop); - state.sunCenterCIEXYZ[0] = getCIEX(solarRadianceCenter); - state.sunCenterCIEXYZ[1] = getCIEY(solarRadianceCenter); - state.sunCenterCIEXYZ[2] = getCIEZ(solarRadianceCenter); - state.sunBottomCIEXYZ[0] = getCIEX(solarRadianceBottom); state.sunBottomCIEXYZ[1] = getCIEY(solarRadianceBottom); state.sunBottomCIEXYZ[2] = getCIEZ(solarRadianceBottom); @@ -208,7 +201,6 @@ void SimulationEngine::step() m_skyShader->setUniformValue("skyModelState.albedo", skyState.albedo); m_skyShader->setUniformValue("skyModelState.elevation", skyState.elevation); m_skyShader->setUniformValueArray("skyModelState.sunTopCIEXYZ", skyState.sunTopCIEXYZ, 3, 1); - m_skyShader->setUniformValueArray("skyModelState.sunCenterCIEXYZ", skyState.sunCenterCIEXYZ, 3, 1); m_skyShader->setUniformValueArray("skyModelState.sunBottomCIEXYZ", skyState.sunBottomCIEXYZ, 3, 1); glDispatchCompute(m_outputWidth, m_outputHeight, 1); From 4eceb1f40a1950b3fe5e01cdb26ef8fda879326e Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 6 Feb 2021 00:23:06 +0200 Subject: [PATCH 072/184] Fix bug in mixing Preetham and Hosek-Wilkie sky models The models were being mixed together the wrong way around. --- src/haloray-core/resources/shaders/sky.glsl | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/haloray-core/resources/shaders/sky.glsl b/src/haloray-core/resources/shaders/sky.glsl index c247947..930fb6c 100644 --- a/src/haloray-core/resources/shaders/sky.glsl +++ b/src/haloray-core/resources/shaders/sky.glsl @@ -195,11 +195,12 @@ vec3 hosekPreethamMix(vec3 direction, float turbidity) vec3 preethamCIEXYZ = preethamSky(direction, turbidity); vec3 hosekCIEXYZ = hosekSky(direction, turbidity); float mixingFactor = (sun.altitude - mixingMinElevation) / (mixingMaxElevation - mixingMinElevation); - skyCIEXYZ = mix(hosekCIEXYZ, preethamCIEXYZ, mixingFactor); + skyCIEXYZ = mix(preethamCIEXYZ, hosekCIEXYZ, mixingFactor); } else { - skyCIEXYZ = preethamSky(direction, turbidity); + float mixingFactor = clamp((sun.altitude - minSunElevation) / (-minSunElevation), 0.0, 1.0); + skyCIEXYZ = mix(vec3(0.0), preethamSky(direction, turbidity), mixingFactor); } return skyCIEXYZ; From d51b58a46b7adbfa26458d9bd3f7fac8ec99f664 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 6 Feb 2021 00:47:41 +0200 Subject: [PATCH 073/184] Adjust sky and halo brightness proportions --- src/haloray-core/resources/shaders/renderer.frag | 4 ++-- src/haloray-core/resources/shaders/sky.glsl | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/haloray-core/resources/shaders/renderer.frag b/src/haloray-core/resources/shaders/renderer.frag index 0f787e9..9ca134f 100644 --- a/src/haloray-core/resources/shaders/renderer.frag +++ b/src/haloray-core/resources/shaders/renderer.frag @@ -8,8 +8,8 @@ layout (binding = 1) uniform sampler2D backgroundTexture; void main(void) { vec3 haloLinearSrgb = adjustedExposure * texelFetch(haloTexture, ivec2(gl_FragCoord.xy), 0).xyz; - vec3 background = max(vec3(0.0), baseExposure * texelFetch(backgroundTexture, ivec2(gl_FragCoord.xy), 0).xyz); - vec3 linearImage = background + haloLinearSrgb; + vec3 backgroundLinearSrgb = max(vec3(0.0), baseExposure * texelFetch(backgroundTexture, ivec2(gl_FragCoord.xy), 0).xyz); + vec3 linearImage = 0.005 * backgroundLinearSrgb + 0.1 * haloLinearSrgb; vec3 gammaCorrected = 1.055 * pow(linearImage, vec3(0.417)) - 0.055; color = vec4(clamp(gammaCorrected, 0.0, 1.0), 1.0); } diff --git a/src/haloray-core/resources/shaders/sky.glsl b/src/haloray-core/resources/shaders/sky.glsl index 930fb6c..85fc569 100644 --- a/src/haloray-core/resources/shaders/sky.glsl +++ b/src/haloray-core/resources/shaders/sky.glsl @@ -298,5 +298,5 @@ void main(void) vec3 resultCIEXYZ = skyCIEXYZ + sunCIEXYZ; mat3 xyzToSrgb = mat3(3.24096994, -0.96924364, 0.05563008, -1.53738318, 1.8759675, -0.20397696, -0.49861076, 0.04155506, 1.05697151); - imageStore(outputImage, pixelCoordinates, vec4(0.01 * xyzToSrgb * resultCIEXYZ, 1.0)); + imageStore(outputImage, pixelCoordinates, vec4(xyzToSrgb * resultCIEXYZ, 1.0)); } From 75e0b950e98d9b1d950cdd3c46af17d9eff5a866 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 6 Feb 2021 01:59:12 +0200 Subject: [PATCH 074/184] Approximate solar limb darkening Instead of recalculating limb darkening spectrally for every point on the solar disk, the CIE XYZ coordinates of the top of the solar disk are now calculated with and without limb darkening, and their ratio is stored. The ratio is then used to adjust sun color and intensity towards the edges of the sun disk. --- src/haloray-core/resources/shaders/sky.glsl | 17 +++++++++++++++-- .../simulation/backgroundSky/ArHosekSkyModel.c | 16 ++++++++++++++++ .../simulation/backgroundSky/ArHosekSkyModel.h | 8 ++++++++ .../simulation/simulationEngine.cpp | 8 ++++++++ 4 files changed, 47 insertions(+), 2 deletions(-) diff --git a/src/haloray-core/resources/shaders/sky.glsl b/src/haloray-core/resources/shaders/sky.glsl index 85fc569..f32f4f6 100644 --- a/src/haloray-core/resources/shaders/sky.glsl +++ b/src/haloray-core/resources/shaders/sky.glsl @@ -28,6 +28,7 @@ uniform struct hosekSkyModelState_t float elevation; float sunTopCIEXYZ[3]; float sunBottomCIEXYZ[3]; + float limbDarkeningScaler[3]; } skyModelState; #define PROJECTION_STEREOGRAPHIC 0 @@ -238,7 +239,8 @@ mat3 getCameraOrientationMatrix() vec3 renderSun(vec3 direction) { - if (acos(dot(direction, getSunVector())) > skyModelState.solar_radius) + float sunAngle = acos(dot(direction, getSunVector())); + if (sunAngle > skyModelState.solar_radius) { return vec3(0.0); } @@ -249,7 +251,18 @@ vec3 renderSun(vec3 direction) float y = mix(skyModelState.sunBottomCIEXYZ[1], skyModelState.sunTopCIEXYZ[1], factor); float z = mix(skyModelState.sunBottomCIEXYZ[2], skyModelState.sunTopCIEXYZ[2], factor); - return vec3(x, y, z); + float sol_rad_sin = sin(skyModelState.solar_radius); + float ar2 = 1.0 / (sol_rad_sin * sol_rad_sin); + float singamma = sin(sunAngle); + float sc2 = 1.0 - ar2 * singamma * singamma; + if (sc2 < 0.0 ) sc2 = 0.0; + float sampleCosine = sqrt(sc2); + + vec3 plainRadiance = vec3(x, y, z); + vec3 scaler = vec3(skyModelState.limbDarkeningScaler[0], skyModelState.limbDarkeningScaler[1], skyModelState.limbDarkeningScaler[2]); + vec3 withLimbDarkening = mix(scaler * plainRadiance, plainRadiance, sampleCosine); + + return withLimbDarkening; } void main(void) diff --git a/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.c b/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.c index 28577fc..76bd589 100644 --- a/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.c +++ b/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.c @@ -882,3 +882,19 @@ double arhosekskymodel_solar_radiance_plain( return direct_radiance; } + +double arhosekskymodel_solar_radiance_with_limb_darkening( + ArHosekSkyModelState * state, + double wavelength, + double elevation, + double gamma + ) +{ + double direct_radiance = arhosekskymodel_solar_radiance_internal2( + state, + wavelength, + elevation, + gamma + ); + return direct_radiance; +} diff --git a/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.h b/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.h index c24018e..a253128 100644 --- a/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.h +++ b/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.h @@ -459,6 +459,14 @@ double arhosekskymodel_solar_radiance_plain( double wavelength ); +// Same as above, but with limb darkening +double arhosekskymodel_solar_radiance_with_limb_darkening( + ArHosekSkyModelState * state, + double wavelength, + double elevation, + double gamma + ); + #ifdef __cplusplus } #endif diff --git a/src/haloray-core/simulation/simulationEngine.cpp b/src/haloray-core/simulation/simulationEngine.cpp index 3fb836c..37f9323 100644 --- a/src/haloray-core/simulation/simulationEngine.cpp +++ b/src/haloray-core/simulation/simulationEngine.cpp @@ -26,6 +26,7 @@ typedef struct SkyModelState float elevation; float sunTopCIEXYZ[3]; float sunBottomCIEXYZ[3]; + float limbDarkeningScaler[3]; } SkyModelState; SkyModelState ConvertSkyModelState(ArHosekSkyModelState *originalState) @@ -57,12 +58,14 @@ SkyModelState GetSkyStateModel(double solarElevation, double atmosphericTurbidit float solarRadianceTop[31]; float solarRadianceBottom[31]; + float solarRadianceTopWithLimbDarkening[31]; for (auto i = 0; i < 31; ++i) { float wl = cieWl[i]; solarRadianceTop[i] = arhosekskymodel_solar_radiance_plain(tempSunState, tempSunState->elevation + tempSunState->solar_radius, (double)wl); solarRadianceBottom[i] = arhosekskymodel_solar_radiance_plain(tempSunState, tempSunState->elevation - tempSunState->solar_radius, (double)wl); + solarRadianceTopWithLimbDarkening[i] = arhosekskymodel_solar_radiance_with_limb_darkening(tempSunState, (double)wl, tempSunState->elevation + tempSunState->solar_radius, tempSunState->solar_radius); } arhosekskymodelstate_free(tempSunState); @@ -75,6 +78,10 @@ SkyModelState GetSkyStateModel(double solarElevation, double atmosphericTurbidit state.sunBottomCIEXYZ[1] = getCIEY(solarRadianceBottom); state.sunBottomCIEXYZ[2] = getCIEZ(solarRadianceBottom); + state.limbDarkeningScaler[0] = getCIEX(solarRadianceTopWithLimbDarkening) / state.sunTopCIEXYZ[0]; + state.limbDarkeningScaler[1] = getCIEY(solarRadianceTopWithLimbDarkening) / state.sunTopCIEXYZ[1]; + state.limbDarkeningScaler[2] = getCIEZ(solarRadianceTopWithLimbDarkening) / state.sunTopCIEXYZ[2]; + return state; } @@ -202,6 +209,7 @@ void SimulationEngine::step() m_skyShader->setUniformValue("skyModelState.elevation", skyState.elevation); m_skyShader->setUniformValueArray("skyModelState.sunTopCIEXYZ", skyState.sunTopCIEXYZ, 3, 1); m_skyShader->setUniformValueArray("skyModelState.sunBottomCIEXYZ", skyState.sunBottomCIEXYZ, 3, 1); + m_skyShader->setUniformValueArray("skyModelState.limbDarkeningScaler", skyState.limbDarkeningScaler, 3, 1); glDispatchCompute(m_outputWidth, m_outputHeight, 1); } From 29dcc585977b60bbea96e653076bdbcecea16419 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 6 Feb 2021 11:33:45 +0200 Subject: [PATCH 075/184] Change three element uniform arrays to vec3 datatype --- src/haloray-core/resources/shaders/sky.glsl | 15 ++++++--------- src/haloray-core/simulation/simulationEngine.cpp | 6 +++--- 2 files changed, 9 insertions(+), 12 deletions(-) diff --git a/src/haloray-core/resources/shaders/sky.glsl b/src/haloray-core/resources/shaders/sky.glsl index f32f4f6..b98b531 100644 --- a/src/haloray-core/resources/shaders/sky.glsl +++ b/src/haloray-core/resources/shaders/sky.glsl @@ -26,9 +26,9 @@ uniform struct hosekSkyModelState_t float solar_radius; float albedo; float elevation; - float sunTopCIEXYZ[3]; - float sunBottomCIEXYZ[3]; - float limbDarkeningScaler[3]; + vec3 sunTopCIEXYZ; + vec3 sunBottomCIEXYZ; + vec3 limbDarkeningScaler; } skyModelState; #define PROJECTION_STEREOGRAPHIC 0 @@ -247,10 +247,9 @@ vec3 renderSun(vec3 direction) float rayElevation = asin(direction.y); float factor = (rayElevation - (skyModelState.elevation - skyModelState.solar_radius)) / (2.0 * skyModelState.solar_radius); - float x = mix(skyModelState.sunBottomCIEXYZ[0], skyModelState.sunTopCIEXYZ[0], factor); - float y = mix(skyModelState.sunBottomCIEXYZ[1], skyModelState.sunTopCIEXYZ[1], factor); - float z = mix(skyModelState.sunBottomCIEXYZ[2], skyModelState.sunTopCIEXYZ[2], factor); + vec3 plainRadiance = mix(skyModelState.sunBottomCIEXYZ, skyModelState.sunTopCIEXYZ, factor); + // TODO: Clean up variable names float sol_rad_sin = sin(skyModelState.solar_radius); float ar2 = 1.0 / (sol_rad_sin * sol_rad_sin); float singamma = sin(sunAngle); @@ -258,9 +257,7 @@ vec3 renderSun(vec3 direction) if (sc2 < 0.0 ) sc2 = 0.0; float sampleCosine = sqrt(sc2); - vec3 plainRadiance = vec3(x, y, z); - vec3 scaler = vec3(skyModelState.limbDarkeningScaler[0], skyModelState.limbDarkeningScaler[1], skyModelState.limbDarkeningScaler[2]); - vec3 withLimbDarkening = mix(scaler * plainRadiance, plainRadiance, sampleCosine); + vec3 withLimbDarkening = mix(skyModelState.limbDarkeningScaler * plainRadiance, plainRadiance, sampleCosine); return withLimbDarkening; } diff --git a/src/haloray-core/simulation/simulationEngine.cpp b/src/haloray-core/simulation/simulationEngine.cpp index 37f9323..82d43c1 100644 --- a/src/haloray-core/simulation/simulationEngine.cpp +++ b/src/haloray-core/simulation/simulationEngine.cpp @@ -207,9 +207,9 @@ void SimulationEngine::step() m_skyShader->setUniformValue("skyModelState.solar_radius", skyState.solar_radius); m_skyShader->setUniformValue("skyModelState.albedo", skyState.albedo); m_skyShader->setUniformValue("skyModelState.elevation", skyState.elevation); - m_skyShader->setUniformValueArray("skyModelState.sunTopCIEXYZ", skyState.sunTopCIEXYZ, 3, 1); - m_skyShader->setUniformValueArray("skyModelState.sunBottomCIEXYZ", skyState.sunBottomCIEXYZ, 3, 1); - m_skyShader->setUniformValueArray("skyModelState.limbDarkeningScaler", skyState.limbDarkeningScaler, 3, 1); + m_skyShader->setUniformValue("skyModelState.sunTopCIEXYZ", skyState.sunTopCIEXYZ[0], skyState.sunTopCIEXYZ[1], skyState.sunTopCIEXYZ[2]); + m_skyShader->setUniformValue("skyModelState.sunBottomCIEXYZ", skyState.sunBottomCIEXYZ[0], skyState.sunBottomCIEXYZ[1], skyState.sunBottomCIEXYZ[2]); + m_skyShader->setUniformValue("skyModelState.limbDarkeningScaler", skyState.limbDarkeningScaler[0], skyState.limbDarkeningScaler[1], skyState.limbDarkeningScaler[2]); glDispatchCompute(m_outputWidth, m_outputHeight, 1); } From f1e304f34e6e82e0140798c032844b47d81180e3 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 6 Feb 2021 12:39:09 +0200 Subject: [PATCH 076/184] Improve sun rendering code variable names --- src/haloray-core/resources/shaders/sky.glsl | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/src/haloray-core/resources/shaders/sky.glsl b/src/haloray-core/resources/shaders/sky.glsl index b98b531..0017734 100644 --- a/src/haloray-core/resources/shaders/sky.glsl +++ b/src/haloray-core/resources/shaders/sky.glsl @@ -249,13 +249,11 @@ vec3 renderSun(vec3 direction) float factor = (rayElevation - (skyModelState.elevation - skyModelState.solar_radius)) / (2.0 * skyModelState.solar_radius); vec3 plainRadiance = mix(skyModelState.sunBottomCIEXYZ, skyModelState.sunTopCIEXYZ, factor); - // TODO: Clean up variable names - float sol_rad_sin = sin(skyModelState.solar_radius); - float ar2 = 1.0 / (sol_rad_sin * sol_rad_sin); - float singamma = sin(sunAngle); - float sc2 = 1.0 - ar2 * singamma * singamma; - if (sc2 < 0.0 ) sc2 = 0.0; - float sampleCosine = sqrt(sc2); + float sinSolarRadius = sin(skyModelState.solar_radius); + float sinGamma = sin(sunAngle); + float squareCosine = 1.0 - sinGamma * sinGamma / (sinSolarRadius * sinSolarRadius); + if (squareCosine < 0.0 ) squareCosine = 0.0; + float sampleCosine = sqrt(squareCosine); vec3 withLimbDarkening = mix(skyModelState.limbDarkeningScaler * plainRadiance, plainRadiance, sampleCosine); From 10f77f84fa8c66b591d11d5b97a6737323fd3d26 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 6 Feb 2021 12:44:41 +0200 Subject: [PATCH 077/184] Fix bug where sun turns black when it hits the horizon The Hosek-Wilkie solar radiance model stops working below the horizon and thus interpolating between the top and bottom radiances of the sun fails when the sun starts touching the horizon. Now the interpolation interval is clamped to range above the horizon. --- src/haloray-core/resources/shaders/sky.glsl | 3 ++- src/haloray-core/simulation/simulationEngine.cpp | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/haloray-core/resources/shaders/sky.glsl b/src/haloray-core/resources/shaders/sky.glsl index 0017734..136c5e2 100644 --- a/src/haloray-core/resources/shaders/sky.glsl +++ b/src/haloray-core/resources/shaders/sky.glsl @@ -246,7 +246,8 @@ vec3 renderSun(vec3 direction) } float rayElevation = asin(direction.y); - float factor = (rayElevation - (skyModelState.elevation - skyModelState.solar_radius)) / (2.0 * skyModelState.solar_radius); + // Calling min and max is necessary in cases where the sun is partly below the horizon + float factor = (rayElevation - max(skyModelState.elevation - skyModelState.solar_radius, 0.0)) / min(2.0 * skyModelState.solar_radius, skyModelState.elevation + skyModelState.solar_radius); vec3 plainRadiance = mix(skyModelState.sunBottomCIEXYZ, skyModelState.sunTopCIEXYZ, factor); float sinSolarRadius = sin(skyModelState.solar_radius); diff --git a/src/haloray-core/simulation/simulationEngine.cpp b/src/haloray-core/simulation/simulationEngine.cpp index 82d43c1..a3ed933 100644 --- a/src/haloray-core/simulation/simulationEngine.cpp +++ b/src/haloray-core/simulation/simulationEngine.cpp @@ -64,7 +64,7 @@ SkyModelState GetSkyStateModel(double solarElevation, double atmosphericTurbidit { float wl = cieWl[i]; solarRadianceTop[i] = arhosekskymodel_solar_radiance_plain(tempSunState, tempSunState->elevation + tempSunState->solar_radius, (double)wl); - solarRadianceBottom[i] = arhosekskymodel_solar_radiance_plain(tempSunState, tempSunState->elevation - tempSunState->solar_radius, (double)wl); + solarRadianceBottom[i] = arhosekskymodel_solar_radiance_plain(tempSunState, std::max(tempSunState->elevation - tempSunState->solar_radius, 0.0), (double)wl); solarRadianceTopWithLimbDarkening[i] = arhosekskymodel_solar_radiance_with_limb_darkening(tempSunState, (double)wl, tempSunState->elevation + tempSunState->solar_radius, tempSunState->solar_radius); } From 0fe22e3117684d934775108f048990e8fa7991a6 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 6 Feb 2021 13:06:45 +0200 Subject: [PATCH 078/184] Stop rendering halo rays on top of the sun disk The sky shader already renders a sun, and the random rays ending up on the solar disk make the sun noisy unnecessarily. --- src/haloray-core/resources/shaders/raytrace.glsl | 15 ++++++++++++--- .../simulation/backgroundSky/ArHosekSkyModel.c | 10 ++++++---- .../simulation/backgroundSky/ArHosekSkyModel.h | 6 ++++-- src/haloray-core/simulation/simulationEngine.cpp | 8 ++++---- 4 files changed, 26 insertions(+), 13 deletions(-) diff --git a/src/haloray-core/resources/shaders/raytrace.glsl b/src/haloray-core/resources/shaders/raytrace.glsl index 87224ec..d83e447 100644 --- a/src/haloray-core/resources/shaders/raytrace.glsl +++ b/src/haloray-core/resources/shaders/raytrace.glsl @@ -294,14 +294,19 @@ vec3 traceRay(vec3 rayOrigin, vec3 rayDirection, float indexOfRefraction) return vec3(0.0); } -vec3 sampleSun(float altitude) +vec3 getSunDirection(float altitude) { // X and Z are horizontal, sun moves on the Y-Z plane - vec3 sunCenterDirection = vec3( + return normalize(vec3( 0.0, sin(altitude), cos(altitude) - ); + )); +} + +vec3 sampleSun(float altitude) +{ + vec3 sunCenterDirection = getSunDirection(altitude); // X axis is always perpendicular to the Y-Z plane vec3 diskBasis0 = vec3(1.0, 0.0, 0.0); @@ -482,6 +487,10 @@ void main(void) resultRay = rotationMatrix * resultRay; } + // Do not render rays coming from the solar disk when the sky model renders a separate sun + if (acos(dot(-resultRay, getSunDirection(radians(sun.altitude)))) < 1.05 * radians(sun.diameter / 2.0) && resultRay.y < 0.0) + return; + // Hide subhorizon rays if (camera.hideSubHorizon == 1 && resultRay.y > 0.0) return; diff --git a/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.c b/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.c index 76bd589..b9beba7 100644 --- a/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.c +++ b/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.c @@ -308,12 +308,13 @@ double ArHosekSkyModel_GetRadianceInternal( ArHosekSkyModelState * arhosekskymodelstate_alloc_init( const double solar_elevation, const double atmospheric_turbidity, - const double ground_albedo + const double ground_albedo, + const double solar_radius ) { ArHosekSkyModelState * state = ALLOC(ArHosekSkyModelState); - state->solar_radius = ( 0.51 DEGREES ) / 2.0; + state->solar_radius = solar_radius; state->turbidity = atmospheric_turbidity; state->albedo = ground_albedo; state->elevation = solar_elevation; @@ -566,12 +567,13 @@ double arhosekskymodel_radiance( ArHosekSkyModelState * arhosek_xyz_skymodelstate_alloc_init( const double turbidity, const double albedo, - const double elevation + const double elevation, + const double solar_radius ) { ArHosekSkyModelState * state = ALLOC(ArHosekSkyModelState); - state->solar_radius = TERRESTRIAL_SOLAR_RADIUS; + state->solar_radius = solar_radius; state->turbidity = turbidity; state->albedo = albedo; state->elevation = elevation; diff --git a/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.h b/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.h index a253128..e10460e 100644 --- a/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.h +++ b/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.h @@ -365,7 +365,8 @@ ArHosekSkyModelState; ArHosekSkyModelState * arhosekskymodelstate_alloc_init( const double solar_elevation, const double atmospheric_turbidity, - const double ground_albedo + const double ground_albedo, + const double solar_radius ); @@ -423,7 +424,8 @@ double arhosekskymodel_radiance( ArHosekSkyModelState * arhosek_xyz_skymodelstate_alloc_init( const double turbidity, const double albedo, - const double elevation + const double elevation, + const double solar_radius ); diff --git a/src/haloray-core/simulation/simulationEngine.cpp b/src/haloray-core/simulation/simulationEngine.cpp index a3ed933..f7cf60a 100644 --- a/src/haloray-core/simulation/simulationEngine.cpp +++ b/src/haloray-core/simulation/simulationEngine.cpp @@ -48,13 +48,13 @@ SkyModelState ConvertSkyModelState(ArHosekSkyModelState *originalState) return state; } -SkyModelState GetSkyStateModel(double solarElevation, double atmosphericTurbidity, double groundAlbedo) +SkyModelState GetSkyStateModel(double solarElevation, double atmosphericTurbidity, double groundAlbedo, double solarRadius) { - auto tempSkyState = arhosek_xyz_skymodelstate_alloc_init(atmosphericTurbidity, groundAlbedo, solarElevation); + auto tempSkyState = arhosek_xyz_skymodelstate_alloc_init(atmosphericTurbidity, groundAlbedo, solarElevation, solarRadius); auto state = ConvertSkyModelState(tempSkyState); arhosekskymodelstate_free(tempSkyState); - auto tempSunState = arhosekskymodelstate_alloc_init(solarElevation, atmosphericTurbidity, groundAlbedo); + auto tempSunState = arhosekskymodelstate_alloc_init(solarElevation, atmosphericTurbidity, groundAlbedo, solarRadius); float solarRadianceTop[31]; float solarRadianceBottom[31]; @@ -183,7 +183,7 @@ void SimulationEngine::step() if (m_iteration == 1) { - auto skyState = GetSkyStateModel(PI * m_light.altitude / 180.0, 5.0, 0.0); + auto skyState = GetSkyStateModel(PI * m_light.altitude / 180.0, 5.0, 0.0, PI * m_light.diameter / 2.0 / 180.0); glMemoryBarrier(GL_SHADER_IMAGE_ACCESS_BARRIER_BIT); glBindImageTexture(m_backgroundTexture->getTextureUnit(), m_backgroundTexture->getHandle(), 0, GL_FALSE, 0, GL_READ_WRITE, GL_RGBA32F); From 6d3b92a52027fa4c0b86fa60b3f26f81bee73be9 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 6 Feb 2021 14:11:04 +0200 Subject: [PATCH 079/184] Adjust halo color according to sun elevation The sun spectrum is now passed to the halo shader when determining final halo color. --- src/haloray-core/resources/shaders/raytrace.glsl | 10 +++++++++- src/haloray-core/simulation/simulationEngine.cpp | 9 ++++++++- src/haloray-core/simulation/simulationEngine.h | 1 + 3 files changed, 18 insertions(+), 2 deletions(-) diff --git a/src/haloray-core/resources/shaders/raytrace.glsl b/src/haloray-core/resources/shaders/raytrace.glsl index d83e447..4b16142 100644 --- a/src/haloray-core/resources/shaders/raytrace.glsl +++ b/src/haloray-core/resources/shaders/raytrace.glsl @@ -14,6 +14,7 @@ uniform struct sunProperties_t { float altitude; float diameter; + float spectrum[31]; } sun; uniform struct crystalProperties_t @@ -409,6 +410,13 @@ float daylightEstimate(float wavelength) return 1.0 - 0.0013333 * wavelength; } +float sampleSunSpectrum(float wavelength) +{ + int index = clamp(int(floor((wavelength - 400.0) / 10.0)), 0, 29); + float wavelengthFract = (wavelength - (400.0 + index * 10.0)) / 10.0; + return mix(sun.spectrum[index], sun.spectrum[index + 1], wavelengthFract); +} + void storePixel(ivec2 pixelCoordinates, vec3 value) { bool keepWaiting = true; @@ -530,7 +538,7 @@ void main(void) return; ivec2 pixelCoordinates = ivec2(resolution.x * normalizedCoordinates.x, resolution.y * normalizedCoordinates.y); - vec3 cieXYZ = daylightEstimate(wavelength) * vec3(xFit_1931(wavelength), yFit_1931(wavelength), zFit_1931(wavelength)); + vec3 cieXYZ = sampleSunSpectrum(wavelength) * vec3(xFit_1931(wavelength), yFit_1931(wavelength), zFit_1931(wavelength)); mat3 xyzToSrgb = mat3(3.24096994, -0.96924364, 0.05563008, -1.53738318, 1.8759675, -0.20397696, -0.49861076, 0.04155506, 1.05697151); storePixel(pixelCoordinates, xyzToSrgb * cieXYZ); } diff --git a/src/haloray-core/simulation/simulationEngine.cpp b/src/haloray-core/simulation/simulationEngine.cpp index f7cf60a..8f9b89c 100644 --- a/src/haloray-core/simulation/simulationEngine.cpp +++ b/src/haloray-core/simulation/simulationEngine.cpp @@ -27,6 +27,7 @@ typedef struct SkyModelState float sunTopCIEXYZ[3]; float sunBottomCIEXYZ[3]; float limbDarkeningScaler[3]; + float sunSpectrum[31]; } SkyModelState; SkyModelState ConvertSkyModelState(ArHosekSkyModelState *originalState) @@ -60,12 +61,13 @@ SkyModelState GetSkyStateModel(double solarElevation, double atmosphericTurbidit float solarRadianceBottom[31]; float solarRadianceTopWithLimbDarkening[31]; - for (auto i = 0; i < 31; ++i) + for (auto i = 0u; i < 31; ++i) { float wl = cieWl[i]; solarRadianceTop[i] = arhosekskymodel_solar_radiance_plain(tempSunState, tempSunState->elevation + tempSunState->solar_radius, (double)wl); solarRadianceBottom[i] = arhosekskymodel_solar_radiance_plain(tempSunState, std::max(tempSunState->elevation - tempSunState->solar_radius, 0.0), (double)wl); solarRadianceTopWithLimbDarkening[i] = arhosekskymodel_solar_radiance_with_limb_darkening(tempSunState, (double)wl, tempSunState->elevation + tempSunState->solar_radius, tempSunState->solar_radius); + state.sunSpectrum[i] = arhosekskymodel_solar_radiance_plain(tempSunState, tempSunState->elevation, (double)wl) / 30663.7; } arhosekskymodelstate_free(tempSunState); @@ -185,6 +187,10 @@ void SimulationEngine::step() { auto skyState = GetSkyStateModel(PI * m_light.altitude / 180.0, 5.0, 0.0, PI * m_light.diameter / 2.0 / 180.0); + for (auto i = 0u; i < 31; ++i) { + m_sunSpectrumCache[i] = skyState.sunSpectrum[i]; + } + glMemoryBarrier(GL_SHADER_IMAGE_ACCESS_BARRIER_BIT); glBindImageTexture(m_backgroundTexture->getTextureUnit(), m_backgroundTexture->getHandle(), 0, GL_FALSE, 0, GL_READ_WRITE, GL_RGBA32F); m_skyShader->bind(); @@ -238,6 +244,7 @@ void SimulationEngine::step() glUniform1ui(glGetUniformLocation(m_simulationShader->programId(), "rngSeed"), seed); m_simulationShader->setUniformValue("sun.altitude", m_light.altitude); m_simulationShader->setUniformValue("sun.diameter", m_light.diameter); + m_simulationShader->setUniformValueArray("sun.spectrum", m_sunSpectrumCache, 31, 1); m_simulationShader->setUniformValue("crystalProperties.caRatioAverage", crystals.caRatioAverage); m_simulationShader->setUniformValue("crystalProperties.caRatioStd", crystals.caRatioStd); diff --git a/src/haloray-core/simulation/simulationEngine.h b/src/haloray-core/simulation/simulationEngine.h index e644952..c32745d 100644 --- a/src/haloray-core/simulation/simulationEngine.h +++ b/src/haloray-core/simulation/simulationEngine.h @@ -80,6 +80,7 @@ class SimulationEngine : public QObject, protected QOpenGLFunctions_4_4_Core bool m_cameraLockedToLightSource; float m_multipleScatteringProbability; std::shared_ptr m_crystalRepository; + float m_sunSpectrumCache[31]; }; } From af1b52f189d03522e3705b98ffaf27079e007c1e Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 6 Feb 2021 16:06:13 +0200 Subject: [PATCH 080/184] Fix bug where halos were rendered in black when sun was below horizon --- src/haloray-core/simulation/simulationEngine.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/haloray-core/simulation/simulationEngine.cpp b/src/haloray-core/simulation/simulationEngine.cpp index 8f9b89c..7366902 100644 --- a/src/haloray-core/simulation/simulationEngine.cpp +++ b/src/haloray-core/simulation/simulationEngine.cpp @@ -67,7 +67,7 @@ SkyModelState GetSkyStateModel(double solarElevation, double atmosphericTurbidit solarRadianceTop[i] = arhosekskymodel_solar_radiance_plain(tempSunState, tempSunState->elevation + tempSunState->solar_radius, (double)wl); solarRadianceBottom[i] = arhosekskymodel_solar_radiance_plain(tempSunState, std::max(tempSunState->elevation - tempSunState->solar_radius, 0.0), (double)wl); solarRadianceTopWithLimbDarkening[i] = arhosekskymodel_solar_radiance_with_limb_darkening(tempSunState, (double)wl, tempSunState->elevation + tempSunState->solar_radius, tempSunState->solar_radius); - state.sunSpectrum[i] = arhosekskymodel_solar_radiance_plain(tempSunState, tempSunState->elevation, (double)wl) / 30663.7; + state.sunSpectrum[i] = arhosekskymodel_solar_radiance_plain(tempSunState, std::max(tempSunState->elevation, 0.0), (double)wl) / 30663.7; } arhosekskymodelstate_free(tempSunState); From 7843c40b4b6aa1a895661e08246a47740c45abd4 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 6 Feb 2021 16:43:58 +0200 Subject: [PATCH 081/184] Add UI components for atmosphere settings --- .../gui/atmosphereSettingsWidget.cpp | 46 ++++++++++++++++++ .../gui/atmosphereSettingsWidget.h | 30 ++++++++++++ src/haloray-core/gui/mainWindow.cpp | 3 ++ src/haloray-core/gui/mainWindow.h | 2 + src/haloray-core/gui/simulationStateModel.cpp | 21 ++++++++ src/haloray-core/gui/simulationStateModel.h | 3 ++ src/haloray-core/gui/sliderSpinBox.h | 2 +- src/haloray-core/haloray-core.pro | 2 + .../resources/shaders/raytrace.glsl | 12 ++++- src/haloray-core/resources/shaders/sky.glsl | 1 - .../simulation/simulationEngine.cpp | 48 ++++++++++++++++--- .../simulation/simulationEngine.h | 12 +++++ 12 files changed, 172 insertions(+), 10 deletions(-) create mode 100644 src/haloray-core/gui/atmosphereSettingsWidget.cpp create mode 100644 src/haloray-core/gui/atmosphereSettingsWidget.h diff --git a/src/haloray-core/gui/atmosphereSettingsWidget.cpp b/src/haloray-core/gui/atmosphereSettingsWidget.cpp new file mode 100644 index 0000000..56ecdb7 --- /dev/null +++ b/src/haloray-core/gui/atmosphereSettingsWidget.cpp @@ -0,0 +1,46 @@ +#include "atmosphereSettingsWidget.h" +#include +#include +#include +#include "simulationStateModel.h" +#include "sliderSpinBox.h" + +namespace HaloRay +{ + +AtmosphereSettingsWidget::AtmosphereSettingsWidget(SimulationStateModel *viewModel, QWidget *parent) + : QGroupBox("Atmosphere settings", parent), + m_viewModel(viewModel) +{ + setupUi(); + + m_mapper = new QDataWidgetMapper(this); + m_mapper->setSubmitPolicy(QDataWidgetMapper::AutoSubmit); + m_mapper->setModel(m_viewModel); + m_mapper->addMapping(this, SimulationStateModel::AtmosphereEnabled, "checked"); + m_mapper->addMapping(m_turbiditySpinBox, SimulationStateModel::Turbidity); + m_mapper->addMapping(m_groundAlbedoSlider, SimulationStateModel::GroundAlbedo); + m_mapper->toFirst(); + + connect(this, &AtmosphereSettingsWidget::toggled, m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); + connect(m_turbiditySpinBox, QOverload::of(&QSpinBox::valueChanged), m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); + connect(m_groundAlbedoSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); +} + +void AtmosphereSettingsWidget::setupUi() +{ + setMaximumWidth(400); + this->setCheckable(true); + + m_turbiditySpinBox = new QSpinBox(); + m_turbiditySpinBox->setMinimum(1); + m_turbiditySpinBox->setMaximum(10); + + m_groundAlbedoSlider = new SliderSpinBox(0.0, 1.0); + + auto layout = new QFormLayout(this); + layout->addRow(tr("Turbidity"), m_turbiditySpinBox); + layout->addRow(tr("Ground albedo"), m_groundAlbedoSlider); +} + +} diff --git a/src/haloray-core/gui/atmosphereSettingsWidget.h b/src/haloray-core/gui/atmosphereSettingsWidget.h new file mode 100644 index 0000000..aaf8c45 --- /dev/null +++ b/src/haloray-core/gui/atmosphereSettingsWidget.h @@ -0,0 +1,30 @@ +#pragma once + +#include +#include + +class QSpinBox; +class QDataWidgetMapper; + +namespace HaloRay +{ + +class SimulationStateModel; +class SliderSpinBox; + +class AtmosphereSettingsWidget : public QGroupBox +{ + Q_OBJECT +public: + AtmosphereSettingsWidget(SimulationStateModel *viewModel, QWidget *parent = nullptr); + +private: + void setupUi(); + + SimulationStateModel *m_viewModel; + QSpinBox *m_turbiditySpinBox; + SliderSpinBox *m_groundAlbedoSlider; + QDataWidgetMapper *m_mapper; +}; + +} diff --git a/src/haloray-core/gui/mainWindow.cpp b/src/haloray-core/gui/mainWindow.cpp index 3f75f49..5348704 100644 --- a/src/haloray-core/gui/mainWindow.cpp +++ b/src/haloray-core/gui/mainWindow.cpp @@ -18,6 +18,7 @@ #include "generalSettingsWidget.h" #include "crystalSettingsWidget.h" #include "viewSettingsWidget.h" +#include "atmosphereSettingsWidget.h" #include "sliderSpinBox.h" #include "renderButton.h" #include "../simulation/crystalPopulation.h" @@ -137,12 +138,14 @@ QScrollArea *MainWindow::setupSideBarScrollArea() m_generalSettingsWidget = new GeneralSettingsWidget(m_simulationStateModel); m_crystalSettingsWidget = new CrystalSettingsWidget(m_crystalRepository); m_viewSettingsWidget = new ViewSettingsWidget(m_simulationStateModel); + m_atmosphereSettingsWidget = new AtmosphereSettingsWidget(m_simulationStateModel); auto scrollContainer = new QWidget(); auto scrollableLayout = new QVBoxLayout(scrollContainer); scrollableLayout->setSizeConstraint(QLayout::SetMinAndMaxSize); scrollableLayout->addWidget(m_generalSettingsWidget); + scrollableLayout->addWidget(m_atmosphereSettingsWidget); scrollableLayout->addWidget(m_crystalSettingsWidget); scrollableLayout->addWidget(m_viewSettingsWidget); scrollableLayout->addStretch(); diff --git a/src/haloray-core/gui/mainWindow.h b/src/haloray-core/gui/mainWindow.h index aa76e4b..5f11c19 100644 --- a/src/haloray-core/gui/mainWindow.h +++ b/src/haloray-core/gui/mainWindow.h @@ -19,6 +19,7 @@ class RenderButton; class ViewSettingsWidget; class GeneralSettingsWidget; class CrystalSettingsWidget; +class AtmosphereSettingsWidget; class MainWindow : public QMainWindow { @@ -37,6 +38,7 @@ class MainWindow : public QMainWindow GeneralSettingsWidget *m_generalSettingsWidget; CrystalSettingsWidget *m_crystalSettingsWidget; ViewSettingsWidget *m_viewSettingsWidget; + AtmosphereSettingsWidget *m_atmosphereSettingsWidget; QProgressBar *m_progressBar; RenderButton *m_renderButton; OpenGLWidget *m_openGLWidget; diff --git a/src/haloray-core/gui/simulationStateModel.cpp b/src/haloray-core/gui/simulationStateModel.cpp index a8f4582..671589f 100644 --- a/src/haloray-core/gui/simulationStateModel.cpp +++ b/src/haloray-core/gui/simulationStateModel.cpp @@ -61,6 +61,12 @@ QVariant SimulationStateModel::headerData(int section, Qt::Orientation orientati return "Maximum iterations"; case RaysPerFrameUpperLimit: return "Rays per frame upper limit"; + case AtmosphereEnabled: + return "Atmosphere enabled"; + case Turbidity: + return "Atmosphere turbidity"; + case GroundAlbedo: + return "Ground albedo"; } } @@ -115,6 +121,12 @@ QVariant SimulationStateModel::data(const QModelIndex &index, int role) const return m_maximumIterations; case RaysPerFrameUpperLimit: return m_raysPerFrameUpperLimit; + case AtmosphereEnabled: + return m_simulationEngine->getAtmosphereEnabled(); + case Turbidity: + return m_simulationEngine->getAtmosphereTurbidity(); + case GroundAlbedo: + return m_simulationEngine->getGroundAlbedo(); default: break; } @@ -163,6 +175,15 @@ bool SimulationStateModel::setData(const QModelIndex &index, const QVariant &val case RaysPerFrameUpperLimit: m_raysPerFrameUpperLimit = value.toUInt(); break; + case AtmosphereEnabled: + m_simulationEngine->setAtmosphereEnabled(value.toBool()); + break; + case Turbidity: + m_simulationEngine->setAtmosphereTurbidity(value.toDouble()); + break; + case GroundAlbedo: + m_simulationEngine->setGroundAlbedo(value.toDouble()); + break; default: return false; } diff --git a/src/haloray-core/gui/simulationStateModel.h b/src/haloray-core/gui/simulationStateModel.h index df7b9af..e4af33d 100644 --- a/src/haloray-core/gui/simulationStateModel.h +++ b/src/haloray-core/gui/simulationStateModel.h @@ -27,6 +27,9 @@ class SimulationStateModel : public QAbstractTableModel RaysPerFrame, MaximumIterations, RaysPerFrameUpperLimit, + AtmosphereEnabled, + Turbidity, + GroundAlbedo, NUM_COLUMNS }; diff --git a/src/haloray-core/gui/sliderSpinBox.h b/src/haloray-core/gui/sliderSpinBox.h index 072d303..64ef364 100644 --- a/src/haloray-core/gui/sliderSpinBox.h +++ b/src/haloray-core/gui/sliderSpinBox.h @@ -14,7 +14,7 @@ class SliderSpinBox : public QWidget Q_PROPERTY(double value READ value WRITE setValue USER true) Q_PROPERTY(double maximum READ maximum WRITE setMaximum) public: - SliderSpinBox(QWidget *parent = nullptr); + explicit SliderSpinBox(QWidget *parent = nullptr); SliderSpinBox(double min, double max, QWidget *parent = nullptr); void setSuffix(const QString &suffix); double value() const; diff --git a/src/haloray-core/haloray-core.pro b/src/haloray-core/haloray-core.pro index 4ee6ada..b25287d 100644 --- a/src/haloray-core/haloray-core.pro +++ b/src/haloray-core/haloray-core.pro @@ -25,6 +25,7 @@ HALORAY_VERSION = $$(HALORAY_VERSION) HEADERS += \ gui/addCrystalPopulationButton.h \ + gui/atmosphereSettingsWidget.h \ gui/crystalModel.h \ gui/crystalSettingsWidget.h \ gui/generalSettingsWidget.h \ @@ -49,6 +50,7 @@ HEADERS += \ SOURCES += \ gui/addCrystalPopulationButton.cpp \ + gui/atmosphereSettingsWidget.cpp \ gui/crystalModel.cpp \ gui/crystalSettingsWidget.cpp \ gui/generalSettingsWidget.cpp \ diff --git a/src/haloray-core/resources/shaders/raytrace.glsl b/src/haloray-core/resources/shaders/raytrace.glsl index 4b16142..dc914ed 100644 --- a/src/haloray-core/resources/shaders/raytrace.glsl +++ b/src/haloray-core/resources/shaders/raytrace.glsl @@ -46,6 +46,8 @@ uniform struct camera_t int hideSubHorizon; } camera; +uniform int atmosphereEnabled; + const float PI = 3.1415926535; struct intersection { @@ -537,8 +539,16 @@ void main(void) if (any(lessThanEqual(normalizedCoordinates, vec2(0.0))) || any(greaterThanEqual(normalizedCoordinates, vec2(1.0)))) return; + float sunRadiance; + if (atmosphereEnabled == 1) + { + sunRadiance = sampleSunSpectrum(wavelength); + } else { + sunRadiance = daylightEstimate(wavelength); + } + ivec2 pixelCoordinates = ivec2(resolution.x * normalizedCoordinates.x, resolution.y * normalizedCoordinates.y); - vec3 cieXYZ = sampleSunSpectrum(wavelength) * vec3(xFit_1931(wavelength), yFit_1931(wavelength), zFit_1931(wavelength)); + vec3 cieXYZ = sunRadiance * vec3(xFit_1931(wavelength), yFit_1931(wavelength), zFit_1931(wavelength)); mat3 xyzToSrgb = mat3(3.24096994, -0.96924364, 0.05563008, -1.53738318, 1.8759675, -0.20397696, -0.49861076, 0.04155506, 1.05697151); storePixel(pixelCoordinates, xyzToSrgb * cieXYZ); } diff --git a/src/haloray-core/resources/shaders/sky.glsl b/src/haloray-core/resources/shaders/sky.glsl index 136c5e2..f024530 100644 --- a/src/haloray-core/resources/shaders/sky.glsl +++ b/src/haloray-core/resources/shaders/sky.glsl @@ -24,7 +24,6 @@ uniform struct hosekSkyModelState_t float radiances[3]; float turbidity; float solar_radius; - float albedo; float elevation; vec3 sunTopCIEXYZ; vec3 sunBottomCIEXYZ; diff --git a/src/haloray-core/simulation/simulationEngine.cpp b/src/haloray-core/simulation/simulationEngine.cpp index 7366902..8e163ed 100644 --- a/src/haloray-core/simulation/simulationEngine.cpp +++ b/src/haloray-core/simulation/simulationEngine.cpp @@ -22,7 +22,6 @@ typedef struct SkyModelState float radiances[3]; float turbidity; float solar_radius; - float albedo; float elevation; float sunTopCIEXYZ[3]; float sunBottomCIEXYZ[3]; @@ -35,8 +34,7 @@ SkyModelState ConvertSkyModelState(ArHosekSkyModelState *originalState) SkyModelState state; state.turbidity = (float)originalState->turbidity; state.solar_radius = (float)originalState->solar_radius; - state.albedo = (float)originalState->albedo; - state.elevation = (float)originalState->albedo; + state.elevation = (float)originalState->elevation; for (auto channel = 0u; channel < 3; ++channel) { state.radiances[channel] = (float)(originalState->radiances[channel]); @@ -103,7 +101,10 @@ SimulationEngine::SimulationEngine( m_iteration(0), m_cameraLockedToLightSource(false), m_multipleScatteringProbability(0.0), - m_crystalRepository(crystalRepository) + m_crystalRepository(crystalRepository), + m_atmosphereEnabled(true), + m_turbidity(5.0), + m_groundAlbedo(0.0) { initialize(); } @@ -150,6 +151,39 @@ void SimulationEngine::setLightSource(const LightSource light) emit lightSourceChanged(m_light); } +bool SimulationEngine::getAtmosphereEnabled() const +{ + return m_atmosphereEnabled; +} + +void SimulationEngine::setAtmosphereEnabled(bool enabled) +{ + clear(); + m_atmosphereEnabled = enabled; +} + +double SimulationEngine::getAtmosphereTurbidity() const +{ + return m_turbidity; +} + +void SimulationEngine::setAtmosphereTurbidity(double turbidity) +{ + clear(); + m_turbidity = turbidity; +} + +double SimulationEngine::getGroundAlbedo() const +{ + return m_groundAlbedo; +} + +void SimulationEngine::setGroundAlbedo(double albedo) +{ + clear(); + m_groundAlbedo = albedo; +} + unsigned int SimulationEngine::getOutputTextureHandle() const { return m_simulationTexture->getHandle(); @@ -183,9 +217,9 @@ void SimulationEngine::step() { ++m_iteration; - if (m_iteration == 1) + if (m_atmosphereEnabled && m_iteration == 1) { - auto skyState = GetSkyStateModel(PI * m_light.altitude / 180.0, 5.0, 0.0, PI * m_light.diameter / 2.0 / 180.0); + auto skyState = GetSkyStateModel(PI * m_light.altitude / 180.0, m_turbidity, m_groundAlbedo, PI * m_light.diameter / 2.0 / 180.0); for (auto i = 0u; i < 31; ++i) { m_sunSpectrumCache[i] = skyState.sunSpectrum[i]; @@ -211,7 +245,6 @@ void SimulationEngine::step() m_skyShader->setUniformValueArray("skyModelState.radiances", skyState.radiances, 3, 1); m_skyShader->setUniformValue("skyModelState.turbidity", skyState.turbidity); m_skyShader->setUniformValue("skyModelState.solar_radius", skyState.solar_radius); - m_skyShader->setUniformValue("skyModelState.albedo", skyState.albedo); m_skyShader->setUniformValue("skyModelState.elevation", skyState.elevation); m_skyShader->setUniformValue("skyModelState.sunTopCIEXYZ", skyState.sunTopCIEXYZ[0], skyState.sunTopCIEXYZ[1], skyState.sunTopCIEXYZ[2]); m_skyShader->setUniformValue("skyModelState.sunBottomCIEXYZ", skyState.sunBottomCIEXYZ[0], skyState.sunBottomCIEXYZ[1], skyState.sunBottomCIEXYZ[2]); @@ -264,6 +297,7 @@ void SimulationEngine::step() m_simulationShader->setUniformValue("camera.hideSubHorizon", m_camera.hideSubHorizon ? 1 : 0); m_simulationShader->setUniformValue("multipleScatter", m_multipleScatteringProbability); + m_simulationShader->setUniformValue("atmosphereEnabled", m_atmosphereEnabled ? 1 : 0); glDispatchCompute(numRays, 1, 1); } diff --git a/src/haloray-core/simulation/simulationEngine.h b/src/haloray-core/simulation/simulationEngine.h index c32745d..3a84dff 100644 --- a/src/haloray-core/simulation/simulationEngine.h +++ b/src/haloray-core/simulation/simulationEngine.h @@ -38,6 +38,15 @@ class SimulationEngine : public QObject, protected QOpenGLFunctions_4_4_Core LightSource getLightSource() const; void setLightSource(const LightSource); + bool getAtmosphereEnabled() const; + void setAtmosphereEnabled(bool enabled); + + double getAtmosphereTurbidity() const; + void setAtmosphereTurbidity(double turbidity); + + double getGroundAlbedo() const; + void setGroundAlbedo(double albedo); + void lockCameraToLightSource(bool locked); void setMultipleScatteringProbability(double); @@ -81,6 +90,9 @@ class SimulationEngine : public QObject, protected QOpenGLFunctions_4_4_Core float m_multipleScatteringProbability; std::shared_ptr m_crystalRepository; float m_sunSpectrumCache[31]; + bool m_atmosphereEnabled; + double m_turbidity; + double m_groundAlbedo; }; } From c795ec490e1cd1dc5cd77e1cbe41fe8757e889f1 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 6 Feb 2021 20:23:36 +0200 Subject: [PATCH 082/184] Make default brightness value higher --- src/haloray-core/gui/mainWindow.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/haloray-core/gui/mainWindow.cpp b/src/haloray-core/gui/mainWindow.cpp index 5348704..9a27016 100644 --- a/src/haloray-core/gui/mainWindow.cpp +++ b/src/haloray-core/gui/mainWindow.cpp @@ -59,7 +59,7 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) m_engine->lockCameraToLightSource(locked); m_openGLWidget->update(); }); - m_viewSettingsWidget->setBrightness(1.0); + m_viewSettingsWidget->setBrightness(3.0); // Signals from OpenGL widget connect(m_openGLWidget, &OpenGLWidget::nextIteration, m_progressBar, &QProgressBar::setValue); From 1fc4207781b46b7c74022a92fd9754c8c67ff14c Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 6 Feb 2021 22:10:36 +0200 Subject: [PATCH 083/184] Make Turbidity control a slider spinbox instead of plain spinbox --- src/haloray-core/gui/atmosphereSettingsWidget.cpp | 11 ++++------- src/haloray-core/gui/atmosphereSettingsWidget.h | 3 +-- 2 files changed, 5 insertions(+), 9 deletions(-) diff --git a/src/haloray-core/gui/atmosphereSettingsWidget.cpp b/src/haloray-core/gui/atmosphereSettingsWidget.cpp index 56ecdb7..2392630 100644 --- a/src/haloray-core/gui/atmosphereSettingsWidget.cpp +++ b/src/haloray-core/gui/atmosphereSettingsWidget.cpp @@ -1,6 +1,5 @@ #include "atmosphereSettingsWidget.h" #include -#include #include #include "simulationStateModel.h" #include "sliderSpinBox.h" @@ -18,12 +17,12 @@ AtmosphereSettingsWidget::AtmosphereSettingsWidget(SimulationStateModel *viewMod m_mapper->setSubmitPolicy(QDataWidgetMapper::AutoSubmit); m_mapper->setModel(m_viewModel); m_mapper->addMapping(this, SimulationStateModel::AtmosphereEnabled, "checked"); - m_mapper->addMapping(m_turbiditySpinBox, SimulationStateModel::Turbidity); + m_mapper->addMapping(m_turbiditySlider, SimulationStateModel::Turbidity); m_mapper->addMapping(m_groundAlbedoSlider, SimulationStateModel::GroundAlbedo); m_mapper->toFirst(); connect(this, &AtmosphereSettingsWidget::toggled, m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); - connect(m_turbiditySpinBox, QOverload::of(&QSpinBox::valueChanged), m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); + connect(m_turbiditySlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); connect(m_groundAlbedoSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); } @@ -32,14 +31,12 @@ void AtmosphereSettingsWidget::setupUi() setMaximumWidth(400); this->setCheckable(true); - m_turbiditySpinBox = new QSpinBox(); - m_turbiditySpinBox->setMinimum(1); - m_turbiditySpinBox->setMaximum(10); + m_turbiditySlider = new SliderSpinBox(1.0, 10.0); m_groundAlbedoSlider = new SliderSpinBox(0.0, 1.0); auto layout = new QFormLayout(this); - layout->addRow(tr("Turbidity"), m_turbiditySpinBox); + layout->addRow(tr("Turbidity"), m_turbiditySlider); layout->addRow(tr("Ground albedo"), m_groundAlbedoSlider); } diff --git a/src/haloray-core/gui/atmosphereSettingsWidget.h b/src/haloray-core/gui/atmosphereSettingsWidget.h index aaf8c45..3a42e80 100644 --- a/src/haloray-core/gui/atmosphereSettingsWidget.h +++ b/src/haloray-core/gui/atmosphereSettingsWidget.h @@ -3,7 +3,6 @@ #include #include -class QSpinBox; class QDataWidgetMapper; namespace HaloRay @@ -22,7 +21,7 @@ class AtmosphereSettingsWidget : public QGroupBox void setupUi(); SimulationStateModel *m_viewModel; - QSpinBox *m_turbiditySpinBox; + SliderSpinBox *m_turbiditySlider; SliderSpinBox *m_groundAlbedoSlider; QDataWidgetMapper *m_mapper; }; From 0446cc7150cc9a74f43b5ab5a41603784444cf18 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 6 Feb 2021 22:12:36 +0200 Subject: [PATCH 084/184] Fix implicit cast warning in Hosek-Wilkie code --- src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.c b/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.c index b9beba7..522c506 100644 --- a/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.c +++ b/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.c @@ -524,7 +524,7 @@ double arhosekskymodel_radiance( double wavelength ) { - int low_wl = (wavelength - 320.0 ) / 40.0; + int low_wl = (int)((wavelength - 320.0 ) / 40.0); if ( low_wl < 0 || low_wl >= 11 ) return 0.0f; From 3b1ca20cb84a19198601810d6265ee075fa2a39f Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 6 Feb 2021 22:18:47 +0200 Subject: [PATCH 085/184] Update readme and changelog --- CHANGELOG.md | 4 ++++ README.md | 11 +++++++++++ 2 files changed, 15 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index c1fd198..3d202ba 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## Unreleased +### Added + +- Created a realistic sky and sun model based on Hosek-Wilkie and Preetham papers + ### Changed - Forced application to use native desktop OpenGL instead of ANGLE or software renderer diff --git a/README.md b/README.md index b5c13e7..1c3d2ef 100644 --- a/README.md +++ b/README.md @@ -49,6 +49,17 @@ Here are some general settings for the whole simulation. - A value of 0.0 means no rays are scattered twice, and 1.0 means all rays are scattered twice +### Atmosphere settings + +HaloRay implements a realistic blend of Hosek-Wilkie and Preetham sky and sun. +The sky model has only a few adjustable parameters: + +- **Atmosphere enabled:** Toggles rendering of the sky and sun +- **Turbidity:** The amount of aerosols/haze in the atmosphere +- **Ground albedo:** Albedo of the ground plane + - 0.0 means the ground does not reflect any light + - 1.0 means the ground reflects all light + ### Crystal settings HaloRay allows you to simulate multiple different ice crystal populations From dc2f1716e5b0aa6584c4e2f7740fed82adcea182 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 6 Feb 2021 22:20:42 +0200 Subject: [PATCH 086/184] Update default camera settings Now the halos below horizon are hidden by default because the sky model is enabled by default, and that does not render anything below horizon either. The camera direction was also adjusted a bit for a nicer default view. --- src/haloray-core/simulation/camera.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/haloray-core/simulation/camera.cpp b/src/haloray-core/simulation/camera.cpp index c2ac785..baca433 100644 --- a/src/haloray-core/simulation/camera.cpp +++ b/src/haloray-core/simulation/camera.cpp @@ -35,11 +35,11 @@ bool Camera::operator!=(const Camera &other) const Camera Camera::createDefaultCamera() { Camera camera; - camera.pitch = 0.0f; - camera.yaw = 0.0f; + camera.pitch = 30.0f; + camera.yaw = 15.0f; camera.fov = 75.0f; camera.projection = Projection::Stereographic; - camera.hideSubHorizon = false; + camera.hideSubHorizon = true; return camera; } From 772a4d953e37070d5b35952193b08a9888315ff6 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 6 Feb 2021 22:27:21 +0200 Subject: [PATCH 087/184] Fix bug where sun was missing when atmosphere was disabled --- src/haloray-core/resources/shaders/raytrace.glsl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/haloray-core/resources/shaders/raytrace.glsl b/src/haloray-core/resources/shaders/raytrace.glsl index dc914ed..f036933 100644 --- a/src/haloray-core/resources/shaders/raytrace.glsl +++ b/src/haloray-core/resources/shaders/raytrace.glsl @@ -498,7 +498,7 @@ void main(void) } // Do not render rays coming from the solar disk when the sky model renders a separate sun - if (acos(dot(-resultRay, getSunDirection(radians(sun.altitude)))) < 1.05 * radians(sun.diameter / 2.0) && resultRay.y < 0.0) + if (atmosphereEnabled == 1 && acos(dot(-resultRay, getSunDirection(radians(sun.altitude)))) < 1.05 * radians(sun.diameter / 2.0) && resultRay.y < 0.0) return; // Hide subhorizon rays From 4f2a948c6d2a930f568e9f7fb65953f63b40c19c Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 6 Feb 2021 22:50:17 +0200 Subject: [PATCH 088/184] Limit max turbidity to 9 With turbidity of exactly 10.0 the solar model starts misbehaving at low sun elevations. --- src/haloray-core/gui/atmosphereSettingsWidget.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/haloray-core/gui/atmosphereSettingsWidget.cpp b/src/haloray-core/gui/atmosphereSettingsWidget.cpp index 2392630..e36cbd1 100644 --- a/src/haloray-core/gui/atmosphereSettingsWidget.cpp +++ b/src/haloray-core/gui/atmosphereSettingsWidget.cpp @@ -31,7 +31,7 @@ void AtmosphereSettingsWidget::setupUi() setMaximumWidth(400); this->setCheckable(true); - m_turbiditySlider = new SliderSpinBox(1.0, 10.0); + m_turbiditySlider = new SliderSpinBox(1.0, 9.0); m_groundAlbedoSlider = new SliderSpinBox(0.0, 1.0); From 67a02a384e3165bbdedba1cccd11058f65294c3d Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 7 Feb 2021 00:46:04 +0200 Subject: [PATCH 089/184] Rename folder containing Hosek-Wilkie implementation --- src/haloray-core/haloray-core.pro | 12 ++++++------ .../simulation/{CieXYZ_CMF.h => colorUtilities.h} | 0 .../{backgroundSky => hosekWilkie}/ArHosekSkyModel.c | 0 .../{backgroundSky => hosekWilkie}/ArHosekSkyModel.h | 0 .../ArHosekSkyModelData_CIEXYZ.h | 0 .../ArHosekSkyModelData_RGB.h | 0 .../ArHosekSkyModelData_Spectral.h | 0 src/haloray-core/simulation/simulationEngine.cpp | 4 ++-- 8 files changed, 8 insertions(+), 8 deletions(-) rename src/haloray-core/simulation/{CieXYZ_CMF.h => colorUtilities.h} (100%) rename src/haloray-core/simulation/{backgroundSky => hosekWilkie}/ArHosekSkyModel.c (100%) rename src/haloray-core/simulation/{backgroundSky => hosekWilkie}/ArHosekSkyModel.h (100%) rename src/haloray-core/simulation/{backgroundSky => hosekWilkie}/ArHosekSkyModelData_CIEXYZ.h (100%) rename src/haloray-core/simulation/{backgroundSky => hosekWilkie}/ArHosekSkyModelData_RGB.h (100%) rename src/haloray-core/simulation/{backgroundSky => hosekWilkie}/ArHosekSkyModelData_Spectral.h (100%) diff --git a/src/haloray-core/haloray-core.pro b/src/haloray-core/haloray-core.pro index b25287d..3a24937 100644 --- a/src/haloray-core/haloray-core.pro +++ b/src/haloray-core/haloray-core.pro @@ -37,11 +37,11 @@ HEADERS += \ gui/viewSettingsWidget.h \ opengl/texture.h \ opengl/textureRenderer.h \ - simulation/CieXYZ_CMF.h \ - simulation/backgroundSky/ArHosekSkyModel.h \ - simulation/backgroundSky/ArHosekSkyModelData_CIEXYZ.h \ - simulation/backgroundSky/ArHosekSkyModelData_RGB.h \ - simulation/backgroundSky/ArHosekSkyModelData_Spectral.h \ + simulation/colorUtilities.h \ + simulation/hosekWilkie/ArHosekSkyModel.h \ + simulation/hosekWilkie/ArHosekSkyModelData_CIEXYZ.h \ + simulation/hosekWilkie/ArHosekSkyModelData_RGB.h \ + simulation/hosekWilkie/ArHosekSkyModelData_Spectral.h \ simulation/camera.h \ simulation/crystalPopulation.h \ simulation/crystalPopulationRepository.h \ @@ -62,7 +62,7 @@ SOURCES += \ gui/viewSettingsWidget.cpp \ opengl/texture.cpp \ opengl/textureRenderer.cpp \ - simulation/backgroundSky/ArHosekSkyModel.c \ + simulation/hosekWilkie/ArHosekSkyModel.c \ simulation/camera.cpp \ simulation/crystalPopulation.cpp \ simulation/crystalPopulationRepository.cpp \ diff --git a/src/haloray-core/simulation/CieXYZ_CMF.h b/src/haloray-core/simulation/colorUtilities.h similarity index 100% rename from src/haloray-core/simulation/CieXYZ_CMF.h rename to src/haloray-core/simulation/colorUtilities.h diff --git a/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.c b/src/haloray-core/simulation/hosekWilkie/ArHosekSkyModel.c similarity index 100% rename from src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.c rename to src/haloray-core/simulation/hosekWilkie/ArHosekSkyModel.c diff --git a/src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.h b/src/haloray-core/simulation/hosekWilkie/ArHosekSkyModel.h similarity index 100% rename from src/haloray-core/simulation/backgroundSky/ArHosekSkyModel.h rename to src/haloray-core/simulation/hosekWilkie/ArHosekSkyModel.h diff --git a/src/haloray-core/simulation/backgroundSky/ArHosekSkyModelData_CIEXYZ.h b/src/haloray-core/simulation/hosekWilkie/ArHosekSkyModelData_CIEXYZ.h similarity index 100% rename from src/haloray-core/simulation/backgroundSky/ArHosekSkyModelData_CIEXYZ.h rename to src/haloray-core/simulation/hosekWilkie/ArHosekSkyModelData_CIEXYZ.h diff --git a/src/haloray-core/simulation/backgroundSky/ArHosekSkyModelData_RGB.h b/src/haloray-core/simulation/hosekWilkie/ArHosekSkyModelData_RGB.h similarity index 100% rename from src/haloray-core/simulation/backgroundSky/ArHosekSkyModelData_RGB.h rename to src/haloray-core/simulation/hosekWilkie/ArHosekSkyModelData_RGB.h diff --git a/src/haloray-core/simulation/backgroundSky/ArHosekSkyModelData_Spectral.h b/src/haloray-core/simulation/hosekWilkie/ArHosekSkyModelData_Spectral.h similarity index 100% rename from src/haloray-core/simulation/backgroundSky/ArHosekSkyModelData_Spectral.h rename to src/haloray-core/simulation/hosekWilkie/ArHosekSkyModelData_Spectral.h diff --git a/src/haloray-core/simulation/simulationEngine.cpp b/src/haloray-core/simulation/simulationEngine.cpp index 8e163ed..3c4d607 100644 --- a/src/haloray-core/simulation/simulationEngine.cpp +++ b/src/haloray-core/simulation/simulationEngine.cpp @@ -9,8 +9,8 @@ #include "camera.h" #include "lightSource.h" #include "crystalPopulation.h" -#include "backgroundSky/ArHosekSkyModel.h" -#include "CieXYZ_CMF.h" +#include "hosekWilkie/ArHosekSkyModel.h" +#include "colorUtilities.h" namespace HaloRay { From 908b9025601f5857268ed57cda7e51b5f6302f11 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 7 Feb 2021 01:00:36 +0200 Subject: [PATCH 090/184] Move sky model calculations to separate file --- src/haloray-core/haloray-core.pro | 6 +- src/haloray-core/resources/shaders/sky.glsl | 8 +- .../simulation/simulationEngine.cpp | 77 +------------------ src/haloray-core/simulation/skyModel.cpp | 67 ++++++++++++++++ src/haloray-core/simulation/skyModel.h | 20 +++++ 5 files changed, 99 insertions(+), 79 deletions(-) create mode 100644 src/haloray-core/simulation/skyModel.cpp create mode 100644 src/haloray-core/simulation/skyModel.h diff --git a/src/haloray-core/haloray-core.pro b/src/haloray-core/haloray-core.pro index 3a24937..18ba093 100644 --- a/src/haloray-core/haloray-core.pro +++ b/src/haloray-core/haloray-core.pro @@ -46,7 +46,8 @@ HEADERS += \ simulation/crystalPopulation.h \ simulation/crystalPopulationRepository.h \ simulation/lightSource.h \ - simulation/simulationEngine.h + simulation/simulationEngine.h \ + simulation/skyModel.h SOURCES += \ gui/addCrystalPopulationButton.cpp \ @@ -67,7 +68,8 @@ SOURCES += \ simulation/crystalPopulation.cpp \ simulation/crystalPopulationRepository.cpp \ simulation/lightSource.cpp \ - simulation/simulationEngine.cpp + simulation/simulationEngine.cpp \ + simulation/skyModel.cpp RESOURCES = \ resources/haloray.qrc diff --git a/src/haloray-core/resources/shaders/sky.glsl b/src/haloray-core/resources/shaders/sky.glsl index f024530..a67c2cc 100644 --- a/src/haloray-core/resources/shaders/sky.glsl +++ b/src/haloray-core/resources/shaders/sky.glsl @@ -23,7 +23,7 @@ uniform struct hosekSkyModelState_t float configs[3][9]; float radiances[3]; float turbidity; - float solar_radius; + float solarRadius; float elevation; vec3 sunTopCIEXYZ; vec3 sunBottomCIEXYZ; @@ -239,17 +239,17 @@ mat3 getCameraOrientationMatrix() vec3 renderSun(vec3 direction) { float sunAngle = acos(dot(direction, getSunVector())); - if (sunAngle > skyModelState.solar_radius) + if (sunAngle > skyModelState.solarRadius) { return vec3(0.0); } float rayElevation = asin(direction.y); // Calling min and max is necessary in cases where the sun is partly below the horizon - float factor = (rayElevation - max(skyModelState.elevation - skyModelState.solar_radius, 0.0)) / min(2.0 * skyModelState.solar_radius, skyModelState.elevation + skyModelState.solar_radius); + float factor = (rayElevation - max(skyModelState.elevation - skyModelState.solarRadius, 0.0)) / min(2.0 * skyModelState.solarRadius, skyModelState.elevation + skyModelState.solarRadius); vec3 plainRadiance = mix(skyModelState.sunBottomCIEXYZ, skyModelState.sunTopCIEXYZ, factor); - float sinSolarRadius = sin(skyModelState.solar_radius); + float sinSolarRadius = sin(skyModelState.solarRadius); float sinGamma = sin(sunAngle); float squareCosine = 1.0 - sinGamma * sinGamma / (sinSolarRadius * sinSolarRadius); if (squareCosine < 0.0 ) squareCosine = 0.0; diff --git a/src/haloray-core/simulation/simulationEngine.cpp b/src/haloray-core/simulation/simulationEngine.cpp index 3c4d607..3b5f5b5 100644 --- a/src/haloray-core/simulation/simulationEngine.cpp +++ b/src/haloray-core/simulation/simulationEngine.cpp @@ -10,81 +10,12 @@ #include "lightSource.h" #include "crystalPopulation.h" #include "hosekWilkie/ArHosekSkyModel.h" -#include "colorUtilities.h" +#include "skyModel.h" namespace HaloRay { const double PI = 3.1415926535897932384626433832795028841971693993751058209749445923078164062; -typedef struct SkyModelState -{ - float configs[3][9]; - float radiances[3]; - float turbidity; - float solar_radius; - float elevation; - float sunTopCIEXYZ[3]; - float sunBottomCIEXYZ[3]; - float limbDarkeningScaler[3]; - float sunSpectrum[31]; -} SkyModelState; - -SkyModelState ConvertSkyModelState(ArHosekSkyModelState *originalState) -{ - SkyModelState state; - state.turbidity = (float)originalState->turbidity; - state.solar_radius = (float)originalState->solar_radius; - state.elevation = (float)originalState->elevation; - for (auto channel = 0u; channel < 3; ++channel) - { - state.radiances[channel] = (float)(originalState->radiances[channel]); - for (auto config = 0u; config < 9; ++config) - { - state.configs[channel][config] = (float)(originalState->configs[channel][config]); - } - } - - return state; -} - -SkyModelState GetSkyStateModel(double solarElevation, double atmosphericTurbidity, double groundAlbedo, double solarRadius) -{ - auto tempSkyState = arhosek_xyz_skymodelstate_alloc_init(atmosphericTurbidity, groundAlbedo, solarElevation, solarRadius); - auto state = ConvertSkyModelState(tempSkyState); - arhosekskymodelstate_free(tempSkyState); - - auto tempSunState = arhosekskymodelstate_alloc_init(solarElevation, atmosphericTurbidity, groundAlbedo, solarRadius); - - float solarRadianceTop[31]; - float solarRadianceBottom[31]; - float solarRadianceTopWithLimbDarkening[31]; - - for (auto i = 0u; i < 31; ++i) - { - float wl = cieWl[i]; - solarRadianceTop[i] = arhosekskymodel_solar_radiance_plain(tempSunState, tempSunState->elevation + tempSunState->solar_radius, (double)wl); - solarRadianceBottom[i] = arhosekskymodel_solar_radiance_plain(tempSunState, std::max(tempSunState->elevation - tempSunState->solar_radius, 0.0), (double)wl); - solarRadianceTopWithLimbDarkening[i] = arhosekskymodel_solar_radiance_with_limb_darkening(tempSunState, (double)wl, tempSunState->elevation + tempSunState->solar_radius, tempSunState->solar_radius); - state.sunSpectrum[i] = arhosekskymodel_solar_radiance_plain(tempSunState, std::max(tempSunState->elevation, 0.0), (double)wl) / 30663.7; - } - - arhosekskymodelstate_free(tempSunState); - - state.sunTopCIEXYZ[0] = getCIEX(solarRadianceTop); - state.sunTopCIEXYZ[1] = getCIEY(solarRadianceTop); - state.sunTopCIEXYZ[2] = getCIEZ(solarRadianceTop); - - state.sunBottomCIEXYZ[0] = getCIEX(solarRadianceBottom); - state.sunBottomCIEXYZ[1] = getCIEY(solarRadianceBottom); - state.sunBottomCIEXYZ[2] = getCIEZ(solarRadianceBottom); - - state.limbDarkeningScaler[0] = getCIEX(solarRadianceTopWithLimbDarkening) / state.sunTopCIEXYZ[0]; - state.limbDarkeningScaler[1] = getCIEY(solarRadianceTopWithLimbDarkening) / state.sunTopCIEXYZ[1]; - state.limbDarkeningScaler[2] = getCIEZ(solarRadianceTopWithLimbDarkening) / state.sunTopCIEXYZ[2]; - - return state; -} - SimulationEngine::SimulationEngine( std::shared_ptr crystalRepository, QObject *parent) @@ -219,7 +150,7 @@ void SimulationEngine::step() if (m_atmosphereEnabled && m_iteration == 1) { - auto skyState = GetSkyStateModel(PI * m_light.altitude / 180.0, m_turbidity, m_groundAlbedo, PI * m_light.diameter / 2.0 / 180.0); + auto skyState = SkyModel::Create(PI * m_light.altitude / 180.0, m_turbidity, m_groundAlbedo, PI * m_light.diameter / 2.0 / 180.0); for (auto i = 0u; i < 31; ++i) { m_sunSpectrumCache[i] = skyState.sunSpectrum[i]; @@ -244,8 +175,8 @@ void SimulationEngine::step() } m_skyShader->setUniformValueArray("skyModelState.radiances", skyState.radiances, 3, 1); m_skyShader->setUniformValue("skyModelState.turbidity", skyState.turbidity); - m_skyShader->setUniformValue("skyModelState.solar_radius", skyState.solar_radius); - m_skyShader->setUniformValue("skyModelState.elevation", skyState.elevation); + m_skyShader->setUniformValue("skyModelState.solarRadius", (float)(PI * m_light.diameter / 2.0 / 180.0)); + m_skyShader->setUniformValue("skyModelState.elevation", (float)(PI * m_light.altitude / 180.0)); m_skyShader->setUniformValue("skyModelState.sunTopCIEXYZ", skyState.sunTopCIEXYZ[0], skyState.sunTopCIEXYZ[1], skyState.sunTopCIEXYZ[2]); m_skyShader->setUniformValue("skyModelState.sunBottomCIEXYZ", skyState.sunBottomCIEXYZ[0], skyState.sunBottomCIEXYZ[1], skyState.sunBottomCIEXYZ[2]); m_skyShader->setUniformValue("skyModelState.limbDarkeningScaler", skyState.limbDarkeningScaler[0], skyState.limbDarkeningScaler[1], skyState.limbDarkeningScaler[2]); diff --git a/src/haloray-core/simulation/skyModel.cpp b/src/haloray-core/simulation/skyModel.cpp new file mode 100644 index 0000000..691da1a --- /dev/null +++ b/src/haloray-core/simulation/skyModel.cpp @@ -0,0 +1,67 @@ +#include "skyModel.h" +#include +#include "hosekWilkie/ArHosekSkyModel.h" +#include "colorUtilities.h" + +namespace HaloRay +{ + +SkyModel ConvertSkyModelState(ArHosekSkyModelState *originalState) +{ + SkyModel state; + state.turbidity = (float)originalState->turbidity; + for (auto channel = 0u; channel < 3; ++channel) + { + state.radiances[channel] = (float)(originalState->radiances[channel]); + for (auto config = 0u; config < 9; ++config) + { + state.configs[channel][config] = (float)(originalState->configs[channel][config]); + } + } + + return state; +} + +SkyModel::SkyModel() +{ +} + +struct SkyModel SkyModel::Create(double solarElevation, double atmosphericTurbidity, double groundAlbedo, double solarRadius) +{ + auto tempSkyState = arhosek_xyz_skymodelstate_alloc_init(atmosphericTurbidity, groundAlbedo, solarElevation, solarRadius); + auto state = ConvertSkyModelState(tempSkyState); + arhosekskymodelstate_free(tempSkyState); + + auto tempSunState = arhosekskymodelstate_alloc_init(solarElevation, atmosphericTurbidity, groundAlbedo, solarRadius); + + float solarRadianceTop[31]; + float solarRadianceBottom[31]; + float solarRadianceTopWithLimbDarkening[31]; + + for (auto i = 0u; i < 31; ++i) + { + float wl = cieWl[i]; + solarRadianceTop[i] = (float)arhosekskymodel_solar_radiance_plain(tempSunState, solarElevation + solarRadius, (double)wl); + solarRadianceBottom[i] = (float)arhosekskymodel_solar_radiance_plain(tempSunState, std::max(solarElevation - solarRadius, 0.0), (double)wl); + solarRadianceTopWithLimbDarkening[i] = (float)arhosekskymodel_solar_radiance_with_limb_darkening(tempSunState, (double)wl, solarElevation + solarRadius, solarRadius); + state.sunSpectrum[i] = (float)arhosekskymodel_solar_radiance_plain(tempSunState, std::max(solarElevation, 0.0), (double)wl) / 30663.7f; + } + + arhosekskymodelstate_free(tempSunState); + + state.sunTopCIEXYZ[0] = getCIEX(solarRadianceTop); + state.sunTopCIEXYZ[1] = getCIEY(solarRadianceTop); + state.sunTopCIEXYZ[2] = getCIEZ(solarRadianceTop); + + state.sunBottomCIEXYZ[0] = getCIEX(solarRadianceBottom); + state.sunBottomCIEXYZ[1] = getCIEY(solarRadianceBottom); + state.sunBottomCIEXYZ[2] = getCIEZ(solarRadianceBottom); + + state.limbDarkeningScaler[0] = getCIEX(solarRadianceTopWithLimbDarkening) / state.sunTopCIEXYZ[0]; + state.limbDarkeningScaler[1] = getCIEY(solarRadianceTopWithLimbDarkening) / state.sunTopCIEXYZ[1]; + state.limbDarkeningScaler[2] = getCIEZ(solarRadianceTopWithLimbDarkening) / state.sunTopCIEXYZ[2]; + + return state; +} + +} diff --git a/src/haloray-core/simulation/skyModel.h b/src/haloray-core/simulation/skyModel.h new file mode 100644 index 0000000..4b5285c --- /dev/null +++ b/src/haloray-core/simulation/skyModel.h @@ -0,0 +1,20 @@ +#pragma once + +namespace HaloRay +{ + +struct SkyModel +{ + float configs[3][9]; + float radiances[3]; + float turbidity; + float sunTopCIEXYZ[3]; + float sunBottomCIEXYZ[3]; + float limbDarkeningScaler[3]; + float sunSpectrum[31]; + + SkyModel(); + static struct SkyModel Create(double solarElevation, double atmosphericTurbidity, double groundAlbedo, double solarRadius); +}; + +} From 36d1c3cef2a1b5b3bf482766eca63cace13e03c7 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 7 Feb 2021 11:22:03 +0200 Subject: [PATCH 091/184] Update README.md --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index db3ddd0..1bc08bf 100644 --- a/README.md +++ b/README.md @@ -51,8 +51,8 @@ Here are some general settings for the whole simulation. ### Atmosphere settings -HaloRay implements a realistic blend of Hosek-Wilkie and Preetham sky and sun. -The sky model has only a few adjustable parameters: +HaloRay renders a realistic sky and sun disk based on a blend of Hosek-Wilkie and +Preetham models. The sky model has only a few adjustable parameters: - **Atmosphere enabled:** Toggles rendering of the sky and sun - **Turbidity:** The amount of aerosols/haze in the atmosphere From 82c2ef95a30e3aa8363298564c1c727415432a3b Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 7 Feb 2021 14:50:59 +0200 Subject: [PATCH 092/184] Fix bug where halo intensity changed with rays per step --- CHANGELOG.md | 4 ++++ src/haloray-core/gui/openGLWidget.cpp | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3d202ba..8797f06 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -17,6 +17,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Build system switched to qmake from CMake - Rewrote most of the GUI code to use Qt model/view architecture +### Fixed + +- Fixed bug where intensity of halos changed with rays per frame setting + ## 2.4.0 - 2019-07-29 ### Added diff --git a/src/haloray-core/gui/openGLWidget.cpp b/src/haloray-core/gui/openGLWidget.cpp index cff373f..fffc6fa 100644 --- a/src/haloray-core/gui/openGLWidget.cpp +++ b/src/haloray-core/gui/openGLWidget.cpp @@ -45,7 +45,7 @@ void OpenGLWidget::paintGL() emit nextIteration(m_engine->getIteration()); update(); } - const float adjustedExposure = m_exposure / (m_engine->getIteration() + 1) / (m_engine->getCamera().fov / 180.0); + const float adjustedExposure = 500000.0f * m_exposure / (m_engine->getIteration() + 1) / (m_engine->getCamera().fov / 180.0) / m_engine->getRaysPerStep(); m_textureRenderer->setUniformFloat("adjustedExposure", adjustedExposure); m_textureRenderer->setUniformFloat("baseExposure", m_exposure); m_textureRenderer->render(m_engine->getOutputTextureHandle(), m_engine->getBackgroundTextureHandle()); From 1aad8209313233d4bb93ccb57aa0c9da06c9f997 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 7 Feb 2021 14:40:19 +0200 Subject: [PATCH 093/184] Cache triangle normal vectors The triangle normal vectors are now cached in an array in the raytracing shader. The performance benefits haven't been measured yet though. --- CHANGELOG.md | 1 + src/haloray-core/resources/shaders/raytrace.glsl | 10 +++++----- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3d202ba..21957c7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -16,6 +16,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Forced application to use native desktop OpenGL instead of ANGLE or software renderer - Build system switched to qmake from CMake - Rewrote most of the GUI code to use Qt model/view architecture +- Triangle normals are now cached during raytracing ## 2.4.0 - 2019-07-29 diff --git a/src/haloray-core/resources/shaders/raytrace.glsl b/src/haloray-core/resources/shaders/raytrace.glsl index f036933..1d09d77 100644 --- a/src/haloray-core/resources/shaders/raytrace.glsl +++ b/src/haloray-core/resources/shaders/raytrace.glsl @@ -110,6 +110,8 @@ ivec3 triangles[] = ivec3[]( ivec3(11, 6, 0) ); +vec3 triangleNormalCache[triangles.length()]; + uint wang_hash(uint a) { a -= (a << 6); @@ -184,6 +186,7 @@ uint selectFirstTriangle(vec3 rayDirection) vec3 triangleCrossProduct = cross(v2 - v0, v1 - v0); float triangleArea = 0.5 * length(triangleCrossProduct); vec3 triangleNormal = normalize(triangleCrossProduct); + triangleNormalCache[i] = triangleNormal; triangleProjectedAreas[i] = max(0.0, triangleArea * dot(triangleNormal, -rayDirection)); sumProjectedAreas += triangleProjectedAreas[i]; @@ -221,11 +224,7 @@ vec3 sampleTriangle(uint triangleIndex) vec3 getNormal(uint triangleIndex) { - ivec3 triangle = triangles[triangleIndex]; - vec3 v0 = vertices[triangle.x]; - vec3 v1 = vertices[triangle.y]; - vec3 v2 = vertices[triangle.z]; - return normalize(cross(v1 - v0, v2 - v0)); + return -triangleNormalCache[triangleIndex]; } float getReflectionCoefficient(vec3 normal, vec3 rayDir, float n0, float n1) @@ -246,6 +245,7 @@ intersection findIntersection(vec3 rayOrigin, vec3 rayDirection) { for (int triangleIndex = 0; triangleIndex < triangles.length(); ++triangleIndex) { + if (dot(rayDirection, getNormal(triangleIndex)) > 0.0) continue; ivec3 triangle = triangles[triangleIndex]; vec3 v0 = vertices[triangle.x]; vec3 v1 = vertices[triangle.y]; From fcfeb2891b3cbb2d7d687fcae30f20e456b2ee64 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 7 Feb 2021 18:02:25 +0200 Subject: [PATCH 094/184] Remove mention of CMake in readme --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 1bc08bf..6dc1aa5 100644 --- a/README.md +++ b/README.md @@ -137,7 +137,7 @@ you can install Qt by running: sudo apt-get install qt5-default ``` -On Windows you need to set either `Qt5_DIR` or `CMAKE_PREFIX_PATH` environment +On Windows you need to set the `Qt5_DIR` environment variable to point to the Qt prefix path, e.g. `C:\Qt\5.15.2\msvc2019_64\` From 0922f975cacc67c5354095ba9a1a7ae13ac19fca Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 7 Feb 2021 16:41:06 +0200 Subject: [PATCH 095/184] Implement very crudy timer to measure simulation rate --- CHANGELOG.md | 1 + src/haloray-core/gui/mainWindow.cpp | 37 ++++++++++++++++++++++++++++- src/haloray-core/gui/mainWindow.h | 4 ++++ 3 files changed, 41 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 94cf6dd..40301d8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - Created a realistic sky and sun model based on Hosek-Wilkie and Preetham papers +- Show simulation rate in status bar ### Changed diff --git a/src/haloray-core/gui/mainWindow.cpp b/src/haloray-core/gui/mainWindow.cpp index 9a27016..ecc9fbf 100644 --- a/src/haloray-core/gui/mainWindow.cpp +++ b/src/haloray-core/gui/mainWindow.cpp @@ -14,6 +14,7 @@ #include #include #include +#include #include "openGLWidget.h" #include "generalSettingsWidget.h" #include "crystalSettingsWidget.h" @@ -30,7 +31,7 @@ namespace HaloRay { -MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) +MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), m_previousTimedIteration(0) { #if _WIN32 QIcon::setThemeName("HaloRayTheme"); @@ -91,6 +92,8 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) image.save(filename, "PNG", 50); } }); + + setupRenderTimer(); } void MainWindow::setupUi() @@ -105,6 +108,7 @@ void MainWindow::setupUi() setWindowIcon(QIcon(":/haloray.ico")); + this->statusBar()->show(); setupMenuBar(); m_openGLWidget = new OpenGLWidget(m_engine, m_simulationStateModel); @@ -175,4 +179,35 @@ QSize MainWindow::sizeHint() const return QSize(1920, 1080); } +void MainWindow::setupRenderTimer() +{ + m_renderTimer.callOnTimeout([this]() { + if (!m_engine->isRunning()) return; + + unsigned int currentIteration = m_engine->getIteration(); + unsigned int previousIteration = m_previousTimedIteration; + if (currentIteration < previousIteration) + { + m_previousTimedIteration = currentIteration; + return; + } + unsigned int raysPerStep = m_engine->getRaysPerStep(); + unsigned int rate = (currentIteration - previousIteration) * raysPerStep; + m_previousTimedIteration = currentIteration; + this->statusBar()->showMessage(QString("Simulation rate: %1 rays/s").arg(QLocale::system().toString(rate))); + }); + + connect(this->m_renderButton, &RenderButton::clicked, [this]() { + if (m_engine->isRunning()) + { + m_previousTimedIteration = 0; + m_renderTimer.start(1000); + } + else + { + m_renderTimer.stop(); + } + }); +} + } diff --git a/src/haloray-core/gui/mainWindow.h b/src/haloray-core/gui/mainWindow.h index 5f11c19..0cabf53 100644 --- a/src/haloray-core/gui/mainWindow.h +++ b/src/haloray-core/gui/mainWindow.h @@ -1,6 +1,7 @@ #pragma once #include #include +#include #include "simulationStateModel.h" @@ -34,6 +35,7 @@ class MainWindow : public QMainWindow QScrollArea *setupSideBarScrollArea(); QProgressBar *setupProgressBar(); void setupMenuBar(); + void setupRenderTimer(); GeneralSettingsWidget *m_generalSettingsWidget; CrystalSettingsWidget *m_crystalSettingsWidget; @@ -50,6 +52,8 @@ class MainWindow : public QMainWindow SimulationEngine *m_engine; SimulationStateModel *m_simulationStateModel; + QTimer m_renderTimer; + int m_previousTimedIteration; }; } From 0a97c6955bba247e6ab43d091eabd8034f07a378 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 7 Feb 2021 18:19:22 +0200 Subject: [PATCH 096/184] Remove Qt5_Dir environment variable mention from README The environment variable was only necessary when building with CMake. --- README.md | 4 ---- 1 file changed, 4 deletions(-) diff --git a/README.md b/README.md index 6dc1aa5..1772453 100644 --- a/README.md +++ b/README.md @@ -137,10 +137,6 @@ you can install Qt by running: sudo apt-get install qt5-default ``` -On Windows you need to set the `Qt5_DIR` environment -variable to point to the Qt prefix path, e.g. -`C:\Qt\5.15.2\msvc2019_64\` - Finally build the project by running: ```bash From a32af5a5c03f4fe6301b781c90a1abea9187d42a Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 7 Feb 2021 22:41:20 +0200 Subject: [PATCH 097/184] Increase compute shader workgroup size to improve performance On GTX 3070 performance went from 20 million rays per second to 30 million rays. --- src/haloray-core/resources/shaders/raytrace.glsl | 4 ++-- src/haloray-core/simulation/simulationEngine.cpp | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/haloray-core/resources/shaders/raytrace.glsl b/src/haloray-core/resources/shaders/raytrace.glsl index 1d09d77..674a1cd 100644 --- a/src/haloray-core/resources/shaders/raytrace.glsl +++ b/src/haloray-core/resources/shaders/raytrace.glsl @@ -3,7 +3,7 @@ #define DISTRIBUTION_UNIFORM 0 #define DISTRIBUTION_GAUSSIAN 1 -layout(local_size_x = 1) in; +layout(local_size_x = 64) in; layout(binding = 0, rgba32f) uniform coherent image2D outputImage; layout(binding = 1, r32ui) uniform coherent uimage2D spinlock; @@ -124,7 +124,7 @@ uint wang_hash(uint a) return a; } -uint rngState = wang_hash(rngSeed + uint(gl_WorkGroupID.x)); +uint rngState = wang_hash(rngSeed + uint(gl_GlobalInvocationID.x)); uint rand_xorshift(void) { diff --git a/src/haloray-core/simulation/simulationEngine.cpp b/src/haloray-core/simulation/simulationEngine.cpp index 5b916d3..8c55dbd 100644 --- a/src/haloray-core/simulation/simulationEngine.cpp +++ b/src/haloray-core/simulation/simulationEngine.cpp @@ -229,7 +229,7 @@ void SimulationEngine::step() m_simulationShader->setUniformValue("multipleScatter", m_multipleScatteringProbability); m_simulationShader->setUniformValue("atmosphereEnabled", m_atmosphereEnabled ? 1 : 0); - glDispatchCompute(numRays, 1, 1); + glDispatchCompute(numRays / 64.0, 1, 1); } } From 32fa3b4d7b73dac6967b0902146b4718128b6020 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 7 Feb 2021 14:16:13 +0200 Subject: [PATCH 098/184] Add pyramid faces to crystal geometry in raytracing shader The pyramid faces are currently infinitely small so they don't affect the end result. --- .../resources/shaders/raytrace.glsl | 81 +++++++++++++++---- 1 file changed, 64 insertions(+), 17 deletions(-) diff --git a/src/haloray-core/resources/shaders/raytrace.glsl b/src/haloray-core/resources/shaders/raytrace.glsl index 674a1cd..9f7d387 100644 --- a/src/haloray-core/resources/shaders/raytrace.glsl +++ b/src/haloray-core/resources/shaders/raytrace.glsl @@ -64,6 +64,20 @@ vec3 vertices[] = vec3[]( vec3(0.8660254038, 1.0, -0.5), vec3(0.8660254038, 1.0, 0.5), + vec3(0.0, 1.0, 1.0), + vec3(-0.8660254038, 1.0, 0.5), + vec3(-0.8660254038, 1.0, -0.5), + vec3(0.0, 1.0, -1.0), + vec3(0.8660254038, 1.0, -0.5), + vec3(0.8660254038, 1.0, 0.5), + + vec3(0.0, -1.0, 1.0), + vec3(-0.8660254038, -1.0, 0.5), + vec3(-0.8660254038, -1.0, -0.5), + vec3(0.0, -1.0, -1.0), + vec3(0.8660254038, -1.0, -0.5), + vec3(0.8660254038, -1.0, 0.5), + vec3(0.0, -1.0, 1.0), vec3(-0.8660254038, -1.0, 0.5), vec3(-0.8660254038, -1.0, -0.5), @@ -79,35 +93,63 @@ ivec3 triangles[] = ivec3[]( ivec3(0, 3, 4), ivec3(0, 4, 5), + // Face 1 (pyramid edges) + ivec3(0, 6, 1), + ivec3(6, 7, 1), + ivec3(1, 7, 2), + ivec3(7, 8, 2), + ivec3(2, 8, 3), + ivec3(8, 9, 3), + ivec3(3, 9, 4), + ivec3(9, 10, 4), + ivec3(4, 10, 5), + ivec3(10, 11, 5), + ivec3(5, 11, 0), + ivec3(11, 6, 0), + // Face 2 (basal) - ivec3(6, 9, 7), - ivec3(7, 9, 8), - ivec3(6, 10, 9), - ivec3(6, 11, 10), + ivec3(18, 21, 19), + ivec3(19, 21, 20), + ivec3(18, 22, 21), + ivec3(18, 23, 22), + + // Face 2 (pyramid edges) + ivec3(12, 18, 13), + ivec3(18, 19, 13), + ivec3(13, 19, 14), + ivec3(19, 20, 14), + ivec3(14, 20, 15), + ivec3(20, 21, 15), + ivec3(15, 21, 16), + ivec3(21, 22, 16), + ivec3(16, 22, 17), + ivec3(22, 23, 17), + ivec3(17, 23, 12), + ivec3(23, 18, 12), // Face 3 (prism) - ivec3(0, 6, 1), - ivec3(6, 7, 1), + ivec3(6, 12, 7), + ivec3(12, 13, 7), // Face 4 (prism) - ivec3(1, 7, 2), - ivec3(7, 8, 2), + ivec3(7, 13, 8), + ivec3(13, 14, 8), // Face 5 (prism) - ivec3(2, 8, 3), - ivec3(8, 9, 3), + ivec3(8, 14, 9), + ivec3(14, 15, 9), // Face 6 (prism) - ivec3(3, 9, 4), - ivec3(9, 10, 4), + ivec3(9, 15, 10), + ivec3(15, 16, 10), // Face 7 (prism) - ivec3(4, 10, 5), - ivec3(10, 11, 5), + ivec3(10, 16, 17), + ivec3(16, 17, 11), // Face 8 (prism) - ivec3(5, 11, 0), - ivec3(11, 6, 0) + ivec3(11, 17, 12), + ivec3(17, 12, 6) ); vec3 triangleNormalCache[triangles.length()]; @@ -457,13 +499,18 @@ vec3 castRayThroughCrystal(vec3 rayDirection, float wavelength) return resultRay; } -void main(void) +void initializeCrystal() { float caMultiplier = crystalProperties.caRatioAverage + randn().x * crystalProperties.caRatioStd; for (int i = 0; i < vertices.length(); ++i) { vertices[i].y *= max(0.0, caMultiplier); } +} + +void main(void) +{ + initializeCrystal(); vec3 rayDirection = -sampleSun(radians(sun.altitude)); float wavelength = 400.0 + rand() * 300.0; From 76cee85e4817ec75ca48266d45b5393cb854d330 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Mon, 8 Feb 2021 00:12:47 +0200 Subject: [PATCH 099/184] Add adjustable pyramid caps to crystals --- src/haloray-core/gui/crystalModel.cpp | 30 ++++++++++++ src/haloray-core/gui/crystalModel.h | 6 +++ .../gui/crystalSettingsWidget.cpp | 46 ++++++++++++++++++- src/haloray-core/gui/crystalSettingsWidget.h | 9 ++++ .../resources/shaders/raytrace.glsl | 23 ++++++++++ .../simulation/crystalPopulation.cpp | 40 ++++++++++++++++ .../simulation/crystalPopulation.h | 8 ++++ .../simulation/simulationEngine.cpp | 8 ++++ 8 files changed, 169 insertions(+), 1 deletion(-) diff --git a/src/haloray-core/gui/crystalModel.cpp b/src/haloray-core/gui/crystalModel.cpp index 2ce2eea..9900904 100644 --- a/src/haloray-core/gui/crystalModel.cpp +++ b/src/haloray-core/gui/crystalModel.cpp @@ -55,6 +55,18 @@ QVariant CrystalModel::data(const QModelIndex &index, int role) const return crystal.rotationAverage; case RotationStd: return crystal.rotationStd; + case UpperApexAngle: + return crystal.upperApexAngle; + case UpperApexHeightAverage: + return crystal.upperApexHeightAverage; + case UpperApexHeightStd: + return crystal.upperApexHeightStd; + case LowerApexAngle: + return crystal.lowerApexAngle; + case LowerApexHeightAverage: + return crystal.lowerApexHeightAverage; + case LowerApexHeightStd: + return crystal.lowerApexHeightStd; case PopulationWeight: return m_crystals->getWeight(row); } @@ -100,6 +112,24 @@ bool CrystalModel::setData(const QModelIndex &index, const QVariant &value, int case RotationStd: crystal.rotationStd = value.toFloat(); break; + case UpperApexAngle: + crystal.upperApexAngle = value.toFloat(); + break; + case UpperApexHeightAverage: + crystal.upperApexHeightAverage = value.toFloat(); + break; + case UpperApexHeightStd: + crystal.upperApexHeightStd = value.toFloat(); + break; + case LowerApexAngle: + crystal.lowerApexAngle = value.toFloat(); + break; + case LowerApexHeightAverage: + crystal.lowerApexHeightAverage = value.toFloat(); + break; + case LowerApexHeightStd: + crystal.lowerApexHeightStd = value.toFloat(); + break; case PopulationWeight: m_crystals->setWeight(row, value.toUInt()); break; diff --git a/src/haloray-core/gui/crystalModel.h b/src/haloray-core/gui/crystalModel.h index be3024b..da8b172 100644 --- a/src/haloray-core/gui/crystalModel.h +++ b/src/haloray-core/gui/crystalModel.h @@ -28,6 +28,12 @@ class CrystalModel : public QAbstractTableModel RotationDistribution, RotationAverage, RotationStd, + UpperApexAngle, + UpperApexHeightAverage, + UpperApexHeightStd, + LowerApexAngle, + LowerApexHeightAverage, + LowerApexHeightStd, PopulationWeight, NUM_COLUMNS }; diff --git a/src/haloray-core/gui/crystalSettingsWidget.cpp b/src/haloray-core/gui/crystalSettingsWidget.cpp index 01c0f02..f1a74f3 100644 --- a/src/haloray-core/gui/crystalSettingsWidget.cpp +++ b/src/haloray-core/gui/crystalSettingsWidget.cpp @@ -6,6 +6,7 @@ #include #include #include +#include #include "sliderSpinBox.h" #include "addCrystalPopulationButton.h" #include "../simulation/crystalPopulation.h" @@ -43,6 +44,12 @@ CrystalSettingsWidget::CrystalSettingsWidget(std::shared_ptraddMapping(m_rotationDistributionComboBox, CrystalModel::RotationDistribution, "currentIndex"); m_mapper->addMapping(m_rotationAverageSlider, CrystalModel::RotationAverage); m_mapper->addMapping(m_rotationStdSlider, CrystalModel::RotationStd); + m_mapper->addMapping(m_upperApexAngleSpinBox, CrystalModel::UpperApexAngle); + m_mapper->addMapping(m_upperApexHeightAverageSlider, CrystalModel::UpperApexHeightAverage); + m_mapper->addMapping(m_upperApexHeightStdSlider, CrystalModel::UpperApexHeightStd); + m_mapper->addMapping(m_lowerApexAngleSpinBox, CrystalModel::LowerApexAngle); + m_mapper->addMapping(m_lowerApexHeightAverageSlider, CrystalModel::LowerApexHeightAverage); + m_mapper->addMapping(m_lowerApexHeightStdSlider, CrystalModel::LowerApexHeightStd); m_mapper->addMapping(m_weightSpinBox, CrystalModel::PopulationWeight); m_mapper->toFirst(); m_mapper->setSubmitPolicy(QDataWidgetMapper::SubmitPolicy::AutoSubmit); @@ -65,6 +72,12 @@ CrystalSettingsWidget::CrystalSettingsWidget(std::shared_ptr::of(&QComboBox::currentIndexChanged), m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); connect(m_rotationAverageSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); connect(m_rotationStdSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); + connect(m_upperApexAngleSpinBox, QOverload::of(&QDoubleSpinBox::valueChanged), m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); + connect(m_upperApexHeightAverageSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); + connect(m_upperApexHeightStdSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); + connect(m_lowerApexAngleSpinBox, QOverload::of(&QDoubleSpinBox::valueChanged), m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); + connect(m_lowerApexHeightAverageSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); + connect(m_lowerApexHeightStdSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); connect(m_populationComboBox, QOverload::of(&QComboBox::activated), m_mapper, &QDataWidgetMapper::setCurrentIndex); connect(m_mapper, &QDataWidgetMapper::currentIndexChanged, m_populationComboBox, QOverload::of(&QComboBox::setCurrentIndex)); @@ -153,6 +166,24 @@ void CrystalSettingsWidget::setupUi() m_rotationStdLabel = new QLabel(tr("Standard deviation")); m_rotationStdSlider = SliderSpinBox::createAngleSlider(0.0, 360.0); + m_upperApexAngleSpinBox = new QDoubleSpinBox(); + m_upperApexAngleSpinBox->setMinimum(0.0); + m_upperApexAngleSpinBox->setMaximum(180.0); + m_upperApexAngleSpinBox->setSuffix("°"); + + m_upperApexHeightAverageSlider = new SliderSpinBox(0.0, 1.0); + + m_upperApexHeightStdSlider = new SliderSpinBox(0.0, 5.0); + + m_lowerApexAngleSpinBox = new QDoubleSpinBox(); + m_lowerApexAngleSpinBox->setMinimum(0.0); + m_lowerApexAngleSpinBox->setMaximum(180.0); + m_lowerApexAngleSpinBox->setSuffix("°"); + + m_lowerApexHeightAverageSlider = new SliderSpinBox(0.0, 1.0); + + m_lowerApexHeightStdSlider = new SliderSpinBox(0.0, 5.0); + m_weightSpinBox = new QSpinBox(); m_weightSpinBox->setMinimum(0); m_weightSpinBox->setMaximum(10000); @@ -166,9 +197,22 @@ void CrystalSettingsWidget::setupUi() mainLayout->addRow(populationButtonLayout); mainLayout->addRow(tr("Population weight"), m_weightSpinBox); - mainLayout->addItem(new QSpacerItem(0, 10)); + + mainLayout->addItem(new QSpacerItem(0, 5)); mainLayout->addRow(tr("C/A ratio average"), m_caRatioSlider); mainLayout->addRow(tr("C/A ratio std."), m_caRatioStdSlider); + mainLayout->addItem(new QSpacerItem(0, 5)); + + auto pyramidGroupBox = new QGroupBox(tr("Pyramid caps")); + auto pyramidLayout = new QFormLayout(pyramidGroupBox); + mainLayout->addRow(pyramidGroupBox); + pyramidLayout->addRow(tr("Upper apex angle"), m_upperApexAngleSpinBox); + pyramidLayout->addRow(tr("Upper apex average height"), m_upperApexHeightAverageSlider); + pyramidLayout->addRow(tr("Upper apex height std."), m_upperApexHeightStdSlider); + pyramidLayout->addItem(new QSpacerItem(0, 5)); + pyramidLayout->addRow(tr("Lower apex angle"), m_lowerApexAngleSpinBox); + pyramidLayout->addRow(tr("Lower apex average height"), m_lowerApexHeightAverageSlider); + pyramidLayout->addRow(tr("Lower apex height std."), m_lowerApexHeightStdSlider); auto tiltGroupBox = new QGroupBox(tr("C-axis tilt")); auto tiltLayout = new QFormLayout(tiltGroupBox); diff --git a/src/haloray-core/gui/crystalSettingsWidget.h b/src/haloray-core/gui/crystalSettingsWidget.h index 7bb0892..ee976c8 100644 --- a/src/haloray-core/gui/crystalSettingsWidget.h +++ b/src/haloray-core/gui/crystalSettingsWidget.h @@ -8,6 +8,7 @@ class QComboBox; class QLabel; class QSpinBox; class QDataWidgetMapper; +class QDoubleSpinBox; namespace HaloRay { @@ -53,6 +54,14 @@ class CrystalSettingsWidget : public QGroupBox SliderSpinBox *m_rotationStdSlider; QLabel *m_rotationStdLabel; + QDoubleSpinBox *m_upperApexAngleSpinBox; + SliderSpinBox *m_upperApexHeightAverageSlider; + SliderSpinBox *m_upperApexHeightStdSlider; + + QDoubleSpinBox *m_lowerApexAngleSpinBox; + SliderSpinBox *m_lowerApexHeightAverageSlider; + SliderSpinBox *m_lowerApexHeightStdSlider; + QSpinBox *m_weightSpinBox; CrystalModel *m_model; diff --git a/src/haloray-core/resources/shaders/raytrace.glsl b/src/haloray-core/resources/shaders/raytrace.glsl index 9f7d387..871d8a2 100644 --- a/src/haloray-core/resources/shaders/raytrace.glsl +++ b/src/haloray-core/resources/shaders/raytrace.glsl @@ -29,6 +29,14 @@ uniform struct crystalProperties_t int rotationDistribution; float rotationAverage; float rotationStd; + + float upperApexAngle; + float upperApexHeightAverage; + float upperApexHeightStd; + + float lowerApexAngle; + float lowerApexHeightAverage; + float lowerApexHeightStd; } crystalProperties; #define PROJECTION_STEREOGRAPHIC 0 @@ -506,6 +514,21 @@ void initializeCrystal() { vertices[i].y *= max(0.0, caMultiplier); } + + float upperApexMaxHeight = 1.0 / tan(radians(crystalProperties.upperApexAngle / 2.0)); + float lowerApexMaxHeight = 1.0 / tan(radians(crystalProperties.lowerApexAngle / 2.0)); + + vec2 random = randn(); + float upperApexHeight = max(0.0, crystalProperties.upperApexHeightAverage * random.x); + float lowerApexHeight = max(0.0, crystalProperties.lowerApexHeightAverage * random.y); + + for (int i = 0; i < 6; ++i) + { + vertices[i].xz *= 1.0 - upperApexHeight; + vertices[i].y += upperApexHeight * upperApexMaxHeight; + vertices[vertices.length() - i].xz *= 1.0 - lowerApexHeight; + vertices[vertices.length() - i].y -= lowerApexHeight * lowerApexMaxHeight; + } } void main(void) diff --git a/src/haloray-core/simulation/crystalPopulation.cpp b/src/haloray-core/simulation/crystalPopulation.cpp index c24bab7..116d77c 100644 --- a/src/haloray-core/simulation/crystalPopulation.cpp +++ b/src/haloray-core/simulation/crystalPopulation.cpp @@ -17,6 +17,14 @@ CrystalPopulation CrystalPopulation::createLowitz() crystal.rotationAverage = 0.0f; crystal.rotationStd = 1.0f; + crystal.upperApexAngle = 56.142f; + crystal.upperApexHeightAverage = 0.0f; + crystal.upperApexHeightStd = 0.0f; + + crystal.lowerApexAngle = 56.142f; + crystal.lowerApexHeightAverage = 0.0f; + crystal.lowerApexHeightStd = 0.0f; + return crystal; } @@ -34,6 +42,14 @@ CrystalPopulation CrystalPopulation::createPlate() crystal.rotationAverage = 0.0f; crystal.rotationStd = 0.0f; + crystal.upperApexAngle = 56.142f; + crystal.upperApexHeightAverage = 0.0f; + crystal.upperApexHeightStd = 0.0f; + + crystal.lowerApexAngle = 56.142f; + crystal.lowerApexHeightAverage = 0.0f; + crystal.lowerApexHeightStd = 0.0f; + return crystal; } @@ -51,6 +67,14 @@ CrystalPopulation CrystalPopulation::createColumn() crystal.rotationAverage = 0.0f; crystal.rotationStd = 0.0f; + crystal.upperApexAngle = 56.142f; + crystal.upperApexHeightAverage = 0.0f; + crystal.upperApexHeightStd = 0.0f; + + crystal.lowerApexAngle = 56.142f; + crystal.lowerApexHeightAverage = 0.0f; + crystal.lowerApexHeightStd = 0.0f; + return crystal; } @@ -68,6 +92,14 @@ CrystalPopulation CrystalPopulation::createParry() crystal.rotationAverage = 0.0f; crystal.rotationStd = 1.0f; + crystal.upperApexAngle = 56.142f; + crystal.upperApexHeightAverage = 0.0f; + crystal.upperApexHeightStd = 0.0f; + + crystal.lowerApexAngle = 56.142f; + crystal.lowerApexHeightAverage = 0.0f; + crystal.lowerApexHeightStd = 0.0f; + return crystal; } @@ -85,6 +117,14 @@ CrystalPopulation CrystalPopulation::createRandom() crystal.rotationAverage = 0.0f; crystal.rotationStd = 0.0f; + crystal.upperApexAngle = 56.142f; + crystal.upperApexHeightAverage = 0.0f; + crystal.upperApexHeightStd = 0.0f; + + crystal.lowerApexAngle = 56.142f; + crystal.lowerApexHeightAverage = 0.0f; + crystal.lowerApexHeightStd = 0.0f; + return crystal; } diff --git a/src/haloray-core/simulation/crystalPopulation.h b/src/haloray-core/simulation/crystalPopulation.h index a98e182..38afd2e 100644 --- a/src/haloray-core/simulation/crystalPopulation.h +++ b/src/haloray-core/simulation/crystalPopulation.h @@ -25,6 +25,14 @@ struct CrystalPopulation float rotationAverage; float rotationStd; + float upperApexAngle; + float upperApexHeightAverage; + float upperApexHeightStd; + + float lowerApexAngle; + float lowerApexHeightAverage; + float lowerApexHeightStd; + static CrystalPopulation presetPopulation(CrystalPopulationPreset); static CrystalPopulation createLowitz(); static CrystalPopulation createPlate(); diff --git a/src/haloray-core/simulation/simulationEngine.cpp b/src/haloray-core/simulation/simulationEngine.cpp index 8c55dbd..01582c2 100644 --- a/src/haloray-core/simulation/simulationEngine.cpp +++ b/src/haloray-core/simulation/simulationEngine.cpp @@ -220,6 +220,14 @@ void SimulationEngine::step() m_simulationShader->setUniformValue("crystalProperties.rotationAverage", crystals.rotationAverage); m_simulationShader->setUniformValue("crystalProperties.rotationStd", crystals.rotationStd); + m_simulationShader->setUniformValue("crystalProperties.upperApexAngle", crystals.upperApexAngle); + m_simulationShader->setUniformValue("crystalProperties.upperApexHeightAverage", crystals.upperApexHeightAverage); + m_simulationShader->setUniformValue("crystalProperties.upperApexHeightStd", crystals.upperApexHeightStd); + + m_simulationShader->setUniformValue("crystalProperties.lowerApexAngle", crystals.lowerApexAngle); + m_simulationShader->setUniformValue("crystalProperties.lowerApexHeightAverage", crystals.lowerApexHeightAverage); + m_simulationShader->setUniformValue("crystalProperties.lowerApexHeightStd", crystals.lowerApexHeightStd); + m_simulationShader->setUniformValue("camera.pitch", m_camera.pitch); m_simulationShader->setUniformValue("camera.yaw", m_camera.yaw); m_simulationShader->setUniformValue("camera.fov", m_camera.fov); From 0c4cd40c946e63190df43f9c155535307a55c135 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Mon, 8 Feb 2021 00:42:59 +0200 Subject: [PATCH 100/184] Add pyramidal crystals to changelog and readme --- CHANGELOG.md | 3 ++- README.md | 14 ++++++++++++++ images/pyramid-crystal.png | Bin 0 -> 23887 bytes 3 files changed, 16 insertions(+), 1 deletion(-) create mode 100644 images/pyramid-crystal.png diff --git a/CHANGELOG.md b/CHANGELOG.md index 40301d8..e989d6e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,7 +10,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - Created a realistic sky and sun model based on Hosek-Wilkie and Preetham papers -- Show simulation rate in status bar +- Simulation rate shown in status bar +- Ice crystals now have adjustable pyramidal caps ### Changed diff --git a/README.md b/README.md index 1772453..76c1377 100644 --- a/README.md +++ b/README.md @@ -108,6 +108,20 @@ C-axis horizontal. Crystals with a small C/A ratio are called plate crystals. They tend to orient themselves with the C-axis vertical. Both kinds of crystals are shown in the image above. +The ice crystals also have adjustable pyramidal end caps. Both the upper and +lower caps have the following settings: + +- **Apex angle:** Defines the apex angle of the pyramid cap in degrees + - Ranges from 0.0 to 180.0 degrees, where low numbers mean a very pointy cap + while high numbers mean the opposite + - Typically the apex angle is 56 degrees on water ice crystals +- **Apex average height:** Defines the height of the pyramid cap + - Ranges from 0.0 to 1.0, where 0.0 means the cap is totally flat and 1.0 + means a cap that converges to a sharp point +- **Apex height std:** Standard deviation of the pyramid cap height + +![Graphic of pyramidal ice crystal](images/pyramid-crystal.png) + ### View settings These settings affect how the results of the simulation are shown on the screen. diff --git a/images/pyramid-crystal.png b/images/pyramid-crystal.png new file mode 100644 index 0000000000000000000000000000000000000000..b60c6e13fe00b0fc0ee127a0866788e6d463c7d6 GIT binary patch literal 23887 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 XdBWzsjJ_H?9m4punPH&;F7$r@TkEHt literal 0 HcmV?d00001 From d662c7fd189351452ae618fb3b7034c44ee601a0 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Mon, 8 Feb 2021 00:55:11 +0200 Subject: [PATCH 101/184] Mention in readme about convex crystal limitation --- README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/README.md b/README.md index 76c1377..e787276 100644 --- a/README.md +++ b/README.md @@ -122,6 +122,10 @@ lower caps have the following settings: ![Graphic of pyramidal ice crystal](images/pyramid-crystal.png) +Above is a representation of an ice crystal with pyramidal end caps. +Currently HaloRay is limited to convex ice crystals, so the end caps +cannot extend inwards to make hollow ice crystals. + ### View settings These settings affect how the results of the simulation are shown on the screen. From a04e83b3f0f5fb85eadbde08c0a4ba9462d2d500 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Mon, 8 Feb 2021 08:58:26 +0200 Subject: [PATCH 102/184] Cap C/A ratio so it cannot be negative for individual crystals --- src/haloray-core/resources/shaders/raytrace.glsl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/haloray-core/resources/shaders/raytrace.glsl b/src/haloray-core/resources/shaders/raytrace.glsl index 871d8a2..28b7005 100644 --- a/src/haloray-core/resources/shaders/raytrace.glsl +++ b/src/haloray-core/resources/shaders/raytrace.glsl @@ -509,7 +509,7 @@ vec3 castRayThroughCrystal(vec3 rayDirection, float wavelength) void initializeCrystal() { - float caMultiplier = crystalProperties.caRatioAverage + randn().x * crystalProperties.caRatioStd; + float caMultiplier = max(0.0, crystalProperties.caRatioAverage + randn().x * crystalProperties.caRatioStd); for (int i = 0; i < vertices.length(); ++i) { vertices[i].y *= max(0.0, caMultiplier); From 4c8d6302b5b9d63daca992c8bead2c92d1f5f71a Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Mon, 8 Feb 2021 20:20:43 +0200 Subject: [PATCH 103/184] Stop distributing VC++ runtime with build packages It takes up a lot of space and is available on the Microsoft website. --- README.md | 5 +++-- scripts/build.ps1 | 1 + 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 1772453..4803b0b 100644 --- a/README.md +++ b/README.md @@ -12,6 +12,9 @@ done using OpenGL compute and fragment shaders. HaloRay currently supports Windows and Linux. +An OpenGL 4.4 compliant GPU is required to run HaloRay. On Windows you also need +the [latest Microsoft Visual C++ Redistributable for Visual Studio 2019.](https://aka.ms/vs/16/release/vc_redist.x64.exe) + ![Simulation of a column crystal halo display](images/plate-column-random-halo-screenshot.png) ## How to use? @@ -122,8 +125,6 @@ These settings affect how the results of the simulation are shown on the screen. ## How to build? -HaloRay requires an OpenGL 4.4 compliant GPU. - The user interface is built with [Qt 5](https://www.qt.io/), so you need to [download the Qt libraries](https://www.qt.io/download-qt-installer) before compiling HaloRay. diff --git a/scripts/build.ps1 b/scripts/build.ps1 index fb68dca..2efa764 100644 --- a/scripts/build.ps1 +++ b/scripts/build.ps1 @@ -32,6 +32,7 @@ cd build\haloray\release --no-angle ` --no-opengl-sw ` --no-system-d3d-compiler ` + --no-compiler-runtime ` --release ` haloray.exe popd From b1eedcdc3cd9823693a7e5e576a09bb9242fa3df Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Mon, 8 Feb 2021 21:19:34 +0200 Subject: [PATCH 104/184] Add pyramid crystal population preset Now it is possible to choose a randomly oriented pyramid crystal population by clicking on the down arrow next to the Add button in the crystal population settings groupbox. --- .../gui/addCrystalPopulationButton.cpp | 5 +++- .../gui/addCrystalPopulationButton.h | 1 + .../simulation/crystalPopulation.cpp | 27 +++++++++++++++++++ .../simulation/crystalPopulation.h | 4 ++- 4 files changed, 35 insertions(+), 2 deletions(-) diff --git a/src/haloray-core/gui/addCrystalPopulationButton.cpp b/src/haloray-core/gui/addCrystalPopulationButton.cpp index 4e1cd28..2b65270 100644 --- a/src/haloray-core/gui/addCrystalPopulationButton.cpp +++ b/src/haloray-core/gui/addCrystalPopulationButton.cpp @@ -15,12 +15,14 @@ AddCrystalPopulationButton::AddCrystalPopulationButton(QWidget *parent) m_addColumn = new QAction(tr("Add column"), this); m_addParry = new QAction(tr("Add Parry"), this); m_addLowitz = new QAction(tr("Add Lowitz"), this); + m_addPyramid = new QAction(tr("Add pyramid"), this); m_menu->addActions({m_addRandom, m_addPlate, m_addColumn, m_addParry, - m_addLowitz}); + m_addLowitz, + m_addPyramid}); setPopupMode(QToolButton::ToolButtonPopupMode::MenuButtonPopup); setIcon(QIcon::fromTheme("list-add")); @@ -33,6 +35,7 @@ AddCrystalPopulationButton::AddCrystalPopulationButton(QWidget *parent) connect(m_addColumn, &QAction::triggered, [this]() { emit addPopulation(CrystalPopulationPreset::Column); }); connect(m_addParry, &QAction::triggered, [this]() { emit addPopulation(CrystalPopulationPreset::Parry); }); connect(m_addLowitz, &QAction::triggered, [this]() { emit addPopulation(CrystalPopulationPreset::Lowitz); }); + connect(m_addPyramid, &QAction::triggered, [this]() { emit addPopulation(CrystalPopulationPreset::Pyramid); }); } } diff --git a/src/haloray-core/gui/addCrystalPopulationButton.h b/src/haloray-core/gui/addCrystalPopulationButton.h index c4ec601..3fb0841 100644 --- a/src/haloray-core/gui/addCrystalPopulationButton.h +++ b/src/haloray-core/gui/addCrystalPopulationButton.h @@ -26,6 +26,7 @@ class AddCrystalPopulationButton : public QToolButton QAction *m_addColumn; QAction *m_addParry; QAction *m_addLowitz; + QAction *m_addPyramid; }; } diff --git a/src/haloray-core/simulation/crystalPopulation.cpp b/src/haloray-core/simulation/crystalPopulation.cpp index 116d77c..843bc4f 100644 --- a/src/haloray-core/simulation/crystalPopulation.cpp +++ b/src/haloray-core/simulation/crystalPopulation.cpp @@ -128,6 +128,31 @@ CrystalPopulation CrystalPopulation::createRandom() return crystal; } +CrystalPopulation CrystalPopulation::createPyramid() +{ + CrystalPopulation crystal; + crystal.caRatioAverage = 0.1f; + crystal.caRatioStd = 0.1f; + + crystal.tiltDistribution = 0; + crystal.tiltAverage = 0.0f; + crystal.tiltStd = 0.0f; + + crystal.rotationDistribution = 0; + crystal.rotationAverage = 0.0f; + crystal.rotationStd = 0.0f; + + crystal.upperApexAngle = 56.142f; + crystal.upperApexHeightAverage = 0.5f; + crystal.upperApexHeightStd = 0.1f; + + crystal.lowerApexAngle = 56.142f; + crystal.lowerApexHeightAverage = 0.5f; + crystal.lowerApexHeightStd = 0.1f; + + return crystal; +} + CrystalPopulation CrystalPopulation::presetPopulation(CrystalPopulationPreset preset) { switch (preset) @@ -142,6 +167,8 @@ CrystalPopulation CrystalPopulation::presetPopulation(CrystalPopulationPreset pr return CrystalPopulation::createParry(); case Lowitz: return CrystalPopulation::createLowitz(); + case Pyramid: + return CrystalPopulation::createPyramid(); default: return CrystalPopulation::createRandom(); } diff --git a/src/haloray-core/simulation/crystalPopulation.h b/src/haloray-core/simulation/crystalPopulation.h index 38afd2e..59c00eb 100644 --- a/src/haloray-core/simulation/crystalPopulation.h +++ b/src/haloray-core/simulation/crystalPopulation.h @@ -9,7 +9,8 @@ enum CrystalPopulationPreset Plate, Column, Parry, - Lowitz + Lowitz, + Pyramid }; struct CrystalPopulation @@ -39,6 +40,7 @@ struct CrystalPopulation static CrystalPopulation createColumn(); static CrystalPopulation createParry(); static CrystalPopulation createRandom(); + static CrystalPopulation createPyramid(); }; } From 5feb0eba331f9ab54e742e5bbc206b41d281cfed Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Mon, 8 Feb 2021 21:31:29 +0200 Subject: [PATCH 105/184] Allow raytracing nearer the sun --- src/haloray-core/resources/shaders/raytrace.glsl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/haloray-core/resources/shaders/raytrace.glsl b/src/haloray-core/resources/shaders/raytrace.glsl index 28b7005..86165b0 100644 --- a/src/haloray-core/resources/shaders/raytrace.glsl +++ b/src/haloray-core/resources/shaders/raytrace.glsl @@ -568,7 +568,7 @@ void main(void) } // Do not render rays coming from the solar disk when the sky model renders a separate sun - if (atmosphereEnabled == 1 && acos(dot(-resultRay, getSunDirection(radians(sun.altitude)))) < 1.05 * radians(sun.diameter / 2.0) && resultRay.y < 0.0) + if (atmosphereEnabled == 1 && acos(dot(-resultRay, getSunDirection(radians(sun.altitude)))) < 1.005 * radians(sun.diameter / 2.0) && resultRay.y < 0.0) return; // Hide subhorizon rays From f5fa4bf11809f7efbab611516cafd2b5e8bdfc30 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Mon, 8 Feb 2021 22:44:31 +0200 Subject: [PATCH 106/184] Remove unnecessary spinlock texture The spinlock texture was meant to prevent raytracing shader invocations from messing up each others results when they need to write to the same pixel in the output image. With correct usage of memory barriers and using the "coherent" keyword for the output image in the shader, the spinlock code shouldn't be needed. Based on tentative benchmarking it didn't have much effect on performance, but it is good to remove it for clarity. --- .../resources/shaders/raytrace.glsl | 17 +++-------------- .../simulation/simulationEngine.cpp | 7 ------- src/haloray-core/simulation/simulationEngine.h | 1 - 3 files changed, 3 insertions(+), 22 deletions(-) diff --git a/src/haloray-core/resources/shaders/raytrace.glsl b/src/haloray-core/resources/shaders/raytrace.glsl index 86165b0..df8d845 100644 --- a/src/haloray-core/resources/shaders/raytrace.glsl +++ b/src/haloray-core/resources/shaders/raytrace.glsl @@ -5,7 +5,6 @@ layout(local_size_x = 64) in; layout(binding = 0, rgba32f) uniform coherent image2D outputImage; -layout(binding = 1, r32ui) uniform coherent uimage2D spinlock; uniform uint rngSeed; uniform float multipleScatter; @@ -471,19 +470,9 @@ float sampleSunSpectrum(float wavelength) void storePixel(ivec2 pixelCoordinates, vec3 value) { - bool keepWaiting = true; - while (keepWaiting) - { - if (imageAtomicCompSwap(spinlock, pixelCoordinates, 0, 1) == 0) - { - vec3 currentValue = imageLoad(outputImage, pixelCoordinates).xyz; - vec3 newValue = currentValue + value; - imageStore(outputImage, pixelCoordinates, vec4(newValue, 1.0)); - memoryBarrier(); - keepWaiting = false; - imageAtomicExchange(spinlock, pixelCoordinates, 0); - } - } + memoryBarrierImage(); + vec3 currentValue = imageLoad(outputImage, pixelCoordinates).xyz; + imageStore(outputImage, pixelCoordinates, vec4(currentValue + value, 1.0)); } vec3 castRayThroughCrystal(vec3 rayDirection, float wavelength) diff --git a/src/haloray-core/simulation/simulationEngine.cpp b/src/haloray-core/simulation/simulationEngine.cpp index 01582c2..683520f 100644 --- a/src/haloray-core/simulation/simulationEngine.cpp +++ b/src/haloray-core/simulation/simulationEngine.cpp @@ -185,8 +185,6 @@ void SimulationEngine::step() glMemoryBarrier(GL_SHADER_IMAGE_ACCESS_BARRIER_BIT); glBindImageTexture(m_simulationTexture->getTextureUnit(), m_simulationTexture->getHandle(), 0, GL_FALSE, 0, GL_READ_WRITE, GL_RGBA32F); - glClearTexImage(m_spinlockTexture->getHandle(), 0, GL_RED, GL_UNSIGNED_INT, NULL); - glBindImageTexture(m_spinlockTexture->getTextureUnit(), m_spinlockTexture->getHandle(), 0, GL_FALSE, 0, GL_READ_WRITE, GL_R32UI); m_simulationShader->bind(); @@ -250,9 +248,6 @@ void SimulationEngine::clear() glClearTexImage(m_simulationTexture->getHandle(), 0, GL_RGBA, GL_FLOAT, NULL); glBindImageTexture(m_simulationTexture->getTextureUnit(), m_simulationTexture->getHandle(), 0, GL_FALSE, 0, GL_READ_WRITE, GL_RGBA32F); - glClearTexImage(m_spinlockTexture->getHandle(), 0, GL_RED, GL_UNSIGNED_INT, NULL); - glBindImageTexture(m_spinlockTexture->getTextureUnit(), m_spinlockTexture->getHandle(), 0, GL_FALSE, 0, GL_READ_WRITE, GL_R32UI); - glClearTexImage(m_backgroundTexture->getHandle(), 0, GL_RGBA, GL_FLOAT, NULL); glBindImageTexture(m_backgroundTexture->getTextureUnit(), m_backgroundTexture->getHandle(), 0, GL_FALSE, 0, GL_READ_WRITE, GL_RGBA32F); m_iteration = 0; @@ -303,7 +298,6 @@ void SimulationEngine::initializeShaders() void SimulationEngine::initializeTextures() { m_simulationTexture = std::make_unique(m_outputWidth, m_outputHeight, 0, OpenGL::TextureType::Color); - m_spinlockTexture = std::make_unique(m_outputWidth, m_outputHeight, 1, OpenGL::TextureType::Monochrome); m_backgroundTexture = std::make_unique(m_outputWidth, m_outputHeight, 2, OpenGL::TextureType::Color); } @@ -313,7 +307,6 @@ void SimulationEngine::resizeOutputTextureCallback(const unsigned int width, con m_outputHeight = height; m_simulationTexture.reset(); - m_spinlockTexture.reset(); m_backgroundTexture.reset(); initializeTextures(); diff --git a/src/haloray-core/simulation/simulationEngine.h b/src/haloray-core/simulation/simulationEngine.h index b914304..7d69fa0 100644 --- a/src/haloray-core/simulation/simulationEngine.h +++ b/src/haloray-core/simulation/simulationEngine.h @@ -75,7 +75,6 @@ class SimulationEngine : public QObject, protected QOpenGLFunctions_4_4_Core std::unique_ptr m_simulationShader; QOpenGLShaderProgram *m_skyShader; std::unique_ptr m_simulationTexture; - std::unique_ptr m_spinlockTexture; std::unique_ptr m_backgroundTexture; Camera m_camera; From 7a3314304242b5bf635009f763043c3551709679 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Mon, 8 Feb 2021 23:06:00 +0200 Subject: [PATCH 107/184] Remove extra normal check for better performance Finding a ray-triangle intersection tries to break out early if the ray and triangle normals point the same way. Eventually the the algorithm will break out anyway in that case, so the initial check is safe to remove. Removing the check improves simulation rate by 20% on a GTX 3070 in the default scenario, probably because breaking out of the loop early stalls the GPU core. --- src/haloray-core/resources/shaders/raytrace.glsl | 1 - 1 file changed, 1 deletion(-) diff --git a/src/haloray-core/resources/shaders/raytrace.glsl b/src/haloray-core/resources/shaders/raytrace.glsl index df8d845..50e2f3d 100644 --- a/src/haloray-core/resources/shaders/raytrace.glsl +++ b/src/haloray-core/resources/shaders/raytrace.glsl @@ -294,7 +294,6 @@ intersection findIntersection(vec3 rayOrigin, vec3 rayDirection) { for (int triangleIndex = 0; triangleIndex < triangles.length(); ++triangleIndex) { - if (dot(rayDirection, getNormal(triangleIndex)) > 0.0) continue; ivec3 triangle = triangles[triangleIndex]; vec3 v0 = vertices[triangle.x]; vec3 v1 = vertices[triangle.y]; From ac4af1e151383cdb1eca3f16c3be7a2b1c971494 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Mon, 8 Feb 2021 23:40:28 +0200 Subject: [PATCH 108/184] Fix bugs in pyramid crystal generation The pyramid cap heights were incorrectly calculated and the standard deviation was not being taken into account. There was also an off-by-one bug in moving the lower pyramid cap vertices, and one was not being moved. --- src/haloray-core/resources/shaders/raytrace.glsl | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/haloray-core/resources/shaders/raytrace.glsl b/src/haloray-core/resources/shaders/raytrace.glsl index 50e2f3d..0dcfb4d 100644 --- a/src/haloray-core/resources/shaders/raytrace.glsl +++ b/src/haloray-core/resources/shaders/raytrace.glsl @@ -507,15 +507,16 @@ void initializeCrystal() float lowerApexMaxHeight = 1.0 / tan(radians(crystalProperties.lowerApexAngle / 2.0)); vec2 random = randn(); - float upperApexHeight = max(0.0, crystalProperties.upperApexHeightAverage * random.x); - float lowerApexHeight = max(0.0, crystalProperties.lowerApexHeightAverage * random.y); + float upperApexHeight = clamp(crystalProperties.upperApexHeightAverage + crystalProperties.upperApexHeightStd * random.x, 0.0, 1.0); + float lowerApexHeight = clamp(crystalProperties.lowerApexHeightAverage + crystalProperties.lowerApexHeightStd * random.y, 0.0, 1.0); for (int i = 0; i < 6; ++i) { vertices[i].xz *= 1.0 - upperApexHeight; vertices[i].y += upperApexHeight * upperApexMaxHeight; - vertices[vertices.length() - i].xz *= 1.0 - lowerApexHeight; - vertices[vertices.length() - i].y -= lowerApexHeight * lowerApexMaxHeight; + + vertices[vertices.length() - i - 1].xz *= 1.0 - lowerApexHeight; + vertices[vertices.length() - i - 1].y -= lowerApexHeight * lowerApexMaxHeight; } } From ded3d0a8cc964dae3e391f3bd7f49c5f7e727c81 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Tue, 9 Feb 2021 00:14:56 +0200 Subject: [PATCH 109/184] Disable rays per frame setting when simulation is running Editing the value while the simulation runs can introduce subtle bugs, so it is better disable the control. --- src/haloray-core/gui/generalSettingsWidget.cpp | 3 ++- src/haloray-core/gui/generalSettingsWidget.h | 2 +- src/haloray-core/gui/mainWindow.cpp | 2 +- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/haloray-core/gui/generalSettingsWidget.cpp b/src/haloray-core/gui/generalSettingsWidget.cpp index 13c860c..ae65049 100644 --- a/src/haloray-core/gui/generalSettingsWidget.cpp +++ b/src/haloray-core/gui/generalSettingsWidget.cpp @@ -73,9 +73,10 @@ void GeneralSettingsWidget::setupUi() layout->addRow(tr("Double scattering"), m_multipleScatteringSlider); } -void GeneralSettingsWidget::toggleMaxIterationsSpinBoxStatus() +void GeneralSettingsWidget::toggleComputeShaderParametersEnabled() { m_maximumFramesSpinBox->setEnabled(!m_maximumFramesSpinBox->isEnabled()); + m_raysPerFrameSpinBox->setEnabled(!m_raysPerFrameSpinBox->isEnabled()); } } diff --git a/src/haloray-core/gui/generalSettingsWidget.h b/src/haloray-core/gui/generalSettingsWidget.h index d325c98..0a8d3f9 100644 --- a/src/haloray-core/gui/generalSettingsWidget.h +++ b/src/haloray-core/gui/generalSettingsWidget.h @@ -19,7 +19,7 @@ class GeneralSettingsWidget : public QGroupBox GeneralSettingsWidget(SimulationStateModel *viewModel, QWidget *parent = nullptr); public slots: - void toggleMaxIterationsSpinBoxStatus(); + void toggleComputeShaderParametersEnabled(); private: void setupUi(); diff --git a/src/haloray-core/gui/mainWindow.cpp b/src/haloray-core/gui/mainWindow.cpp index ecc9fbf..8c4e04d 100644 --- a/src/haloray-core/gui/mainWindow.cpp +++ b/src/haloray-core/gui/mainWindow.cpp @@ -46,7 +46,7 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), m_previousTimedIt // Signals from render button connect(m_renderButton, &RenderButton::clicked, m_openGLWidget, &OpenGLWidget::toggleRendering); - connect(m_renderButton, &RenderButton::clicked, m_generalSettingsWidget, &GeneralSettingsWidget::toggleMaxIterationsSpinBoxStatus); + connect(m_renderButton, &RenderButton::clicked, m_generalSettingsWidget, &GeneralSettingsWidget::toggleComputeShaderParametersEnabled); // Signals from crystal settings connect(m_crystalSettingsWidget, &CrystalSettingsWidget::crystalChanged, [this]() { From 5b6b4d4312f097a20bdf283718654bdbe24965dc Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Tue, 9 Feb 2021 21:34:16 +0200 Subject: [PATCH 110/184] Convert all angles to radians before passing them to shaders Now the UI side handles angles in degrees and the shader handles them in radians, and the conversion happens when uploading data to the GPU. The Hosek-Wilkie sky model initialization also expects data in radians. --- .../resources/shaders/raytrace.glsl | 27 ++++++------ src/haloray-core/resources/shaders/sky.glsl | 30 ++++++------- .../simulation/simulationEngine.cpp | 43 +++++++++++-------- 3 files changed, 50 insertions(+), 50 deletions(-) diff --git a/src/haloray-core/resources/shaders/raytrace.glsl b/src/haloray-core/resources/shaders/raytrace.glsl index 0dcfb4d..19f8ff3 100644 --- a/src/haloray-core/resources/shaders/raytrace.glsl +++ b/src/haloray-core/resources/shaders/raytrace.glsl @@ -364,7 +364,7 @@ vec3 sampleSun(float altitude) vec3 diskBasis1 = cross(sunCenterDirection, diskBasis0); // Sample uniform point on disk float sampleAngle = rand() * 2.0 * PI; - float sampleDistance = sqrt(rand()) * 0.5 * radians(sun.diameter); + float sampleDistance = sqrt(rand()) * 0.5 * sun.diameter; vec3 offset = sampleDistance * (sin(sampleAngle) * diskBasis0 + cos(sampleAngle) * diskBasis1); vec3 sampleDirection = sunCenterDirection + offset; return normalize(sampleDirection); @@ -399,7 +399,7 @@ mat3 rotateAroundZ(float angle) mat3 getCameraOrientationMatrix() { - return rotateAroundX(radians(camera.pitch)) * rotateAroundY(radians(camera.yaw)); + return rotateAroundX(camera.pitch) * rotateAroundY(camera.yaw); } mat3 getUniformRandomRotationMatrix(void) @@ -438,7 +438,7 @@ mat3 getRotationMatrix(void) } else { float angleAverage = crystalProperties.tiltAverage; float angleStd = crystalProperties.tiltStd; - float tiltAngle = radians(angleAverage + angleStd * randn().x); + float tiltAngle = angleAverage + angleStd * randn().x; tiltMat = rotateAroundZ(tiltAngle); } @@ -448,7 +448,7 @@ mat3 getRotationMatrix(void) } else { float angleAverage = crystalProperties.rotationAverage; float angleStd = crystalProperties.rotationStd; - float rotationAngle = radians(angleAverage + angleStd * randn().x); + float rotationAngle = angleAverage + angleStd * randn().x; rotationMat = rotateAroundY(rotationAngle); } @@ -503,8 +503,8 @@ void initializeCrystal() vertices[i].y *= max(0.0, caMultiplier); } - float upperApexMaxHeight = 1.0 / tan(radians(crystalProperties.upperApexAngle / 2.0)); - float lowerApexMaxHeight = 1.0 / tan(radians(crystalProperties.lowerApexAngle / 2.0)); + float upperApexMaxHeight = 1.0 / tan(crystalProperties.upperApexAngle / 2.0); + float lowerApexMaxHeight = 1.0 / tan(crystalProperties.lowerApexAngle / 2.0); vec2 random = randn(); float upperApexHeight = clamp(crystalProperties.upperApexHeightAverage + crystalProperties.upperApexHeightStd * random.x, 0.0, 1.0); @@ -524,7 +524,7 @@ void main(void) { initializeCrystal(); - vec3 rayDirection = -sampleSun(radians(sun.altitude)); + vec3 rayDirection = -sampleSun(sun.altitude); float wavelength = 400.0 + rand() * 300.0; // Rotation matrix to orient ray/crystal @@ -557,7 +557,7 @@ void main(void) } // Do not render rays coming from the solar disk when the sky model renders a separate sun - if (atmosphereEnabled == 1 && acos(dot(-resultRay, getSunDirection(radians(sun.altitude)))) < 1.005 * radians(sun.diameter / 2.0) && resultRay.y < 0.0) + if (atmosphereEnabled == 1 && acos(dot(-resultRay, getSunDirection(sun.altitude))) < 1.005 * sun.diameter / 2.0 && resultRay.y < 0.0) return; // Hide subhorizon rays @@ -569,27 +569,26 @@ void main(void) resultRay = normalize(-getCameraOrientationMatrix() * resultRay); vec2 polar = cartesianToPolar(resultRay); - float fovRadians = radians(camera.fov); float projectionFunction; float focalLength; if (camera.projection == PROJECTION_STEREOGRAPHIC) { projectionFunction = 2.0 * tan(polar.x / 2.0); - focalLength = 1.0 / (4.0 * tan(fovRadians / 4.0)); + focalLength = 1.0 / (4.0 * tan(camera.fov / 4.0)); } else if (camera.projection == PROJECTION_RECTILINEAR) { if (polar.x > 0.5 * PI) return; projectionFunction = tan(polar.x); - focalLength = 1.0 / (2.0 * tan(fovRadians / 2.0)); + focalLength = 1.0 / (2.0 * tan(camera.fov / 2.0)); } else if (camera.projection == PROJECTION_EQUIDISTANT) { projectionFunction = polar.x; - focalLength = 1.0 / fovRadians; + focalLength = 1.0 / camera.fov; } else if (camera.projection == PROJECTION_EQUAL_AREA) { projectionFunction = 2.0 * sin(polar.x / 2.0); - focalLength = 1.0 / (4.0 * sin(fovRadians / 4.0)); + focalLength = 1.0 / (4.0 * sin(camera.fov / 4.0)); } else if (camera.projection == PROJECTION_ORTHOGRAPHIC) { if (polar.x > 0.5 * PI) return; projectionFunction = sin(polar.x); - focalLength = 1.0 / (2.0 * sin(fovRadians / 2.0)); + focalLength = 1.0 / (2.0 * sin(camera.fov / 2.0)); } vec2 projected = focalLength * projectionFunction * vec2(aspectRatio * cos(polar.y), sin(polar.y)); diff --git a/src/haloray-core/resources/shaders/sky.glsl b/src/haloray-core/resources/shaders/sky.glsl index a67c2cc..d1a725b 100644 --- a/src/haloray-core/resources/shaders/sky.glsl +++ b/src/haloray-core/resources/shaders/sky.glsl @@ -37,19 +37,16 @@ uniform struct hosekSkyModelState_t #define PROJECTION_ORTHOGRAPHIC 4 const float PI = 3.1415926535; -const float minSunElevation = -10.0; -const float mixingMaxElevation = 1.0; -const float mixingMinElevation = 0.0; - - +const float minSunElevation = radians(-10.0); +const float mixingMaxElevation = radians(1.0); +const float mixingMinElevation = radians(0.0); vec3 getSunVector() { - float sunAltitudeRadians = radians(sun.altitude); /* NOTE: The sun vector is now in the opposite Z direction than in the crystal raytracing shader. This should probably made the same in all shaders. */ - return normalize(vec3(0.0, sin(sunAltitudeRadians), -cos(sunAltitudeRadians))); + return normalize(vec3(0.0, sin(sun.altitude), -cos(sun.altitude))); } /* @@ -68,7 +65,7 @@ float perez(float cosZenithAngle, float sunAngle, float A, float B, float C, flo float luminance(float cosZenithAngle, float sunAngle, float turbidity) { - float sunZenithAngle = radians(90.0 - sun.altitude); + float sunZenithAngle = 0.5 * PI - sun.altitude; float ay = 0.1787 * turbidity - 1.4630; float by = -0.3554 * turbidity + 0.4275; float cy = -0.0227 * turbidity + 5.3251; @@ -83,7 +80,7 @@ float luminance(float cosZenithAngle, float sunAngle, float turbidity) float chromaX(float cosZenithAngle, float sunAngle, float turbidity) { - float sunZenithAngle = radians(90.0 - sun.altitude); + float sunZenithAngle = 0.5 * PI - sun.altitude; float ax = -0.0193 * turbidity - 0.2592; float bx = -0.0665 * turbidity + 0.0008; float cx = -0.0004 * turbidity + 0.2125; @@ -109,7 +106,7 @@ float chromaX(float cosZenithAngle, float sunAngle, float turbidity) float chromaY(float cosZenithAngle, float sunAngle, float turbidity) { - float sunZenithAngle = radians(90.0 - sun.altitude); + float sunZenithAngle = 0.5 * PI - sun.altitude; float ay = -0.0167 * turbidity - 0.2608; float by = -0.0950 * turbidity + 0.0092; float cy = -0.0079 * turbidity + 0.2102; @@ -233,7 +230,7 @@ mat3 rotateAroundY(float angle) mat3 getCameraOrientationMatrix() { - return rotateAroundY(radians(camera.yaw)) * rotateAroundX(radians(camera.pitch)); + return rotateAroundY(camera.yaw) * rotateAroundX(camera.pitch); } vec3 renderSun(vec3 direction) @@ -272,25 +269,24 @@ void main(void) normCoord.x /= aspectRatio; vec2 polar = planarToPolar(normCoord); - float fovRadians = radians(camera.fov); float projectedAngle; if (camera.projection == PROJECTION_STEREOGRAPHIC) { - float focalLength = 1.0 / (4.0 * tan(fovRadians / 4.0)); + float focalLength = 1.0 / (4.0 * tan(camera.fov / 4.0)); projectedAngle = 2.0 * atan(polar.x / 2.0 / focalLength); } else if (camera.projection == PROJECTION_RECTILINEAR) { if (polar.x > 0.5 * PI) return; - float focalLength = 1.0 / (2.0 * tan(fovRadians / 2.0)); + float focalLength = 1.0 / (2.0 * tan(camera.fov / 2.0)); projectedAngle = atan(polar.x / focalLength); } else if (camera.projection == PROJECTION_EQUIDISTANT) { - float focalLength = 1.0 / fovRadians; + float focalLength = 1.0 / camera.fov; projectedAngle = polar.x / focalLength; } else if (camera.projection == PROJECTION_EQUAL_AREA) { - float focalLength = 1.0 / (4.0 * sin(fovRadians / 4.0)); + float focalLength = 1.0 / (4.0 * sin(camera.fov / 4.0)); projectedAngle = 2.0 * asin(polar.x / 2.0 / focalLength); } else if (camera.projection == PROJECTION_ORTHOGRAPHIC) { if (polar.x > 0.5 * PI) return; - float focalLength = 1.0 / (2.0 * sin(fovRadians / 2.0)); + float focalLength = 1.0 / (2.0 * sin(camera.fov / 2.0)); projectedAngle = asin(polar.x / focalLength); } diff --git a/src/haloray-core/simulation/simulationEngine.cpp b/src/haloray-core/simulation/simulationEngine.cpp index 683520f..3337a1c 100644 --- a/src/haloray-core/simulation/simulationEngine.cpp +++ b/src/haloray-core/simulation/simulationEngine.cpp @@ -15,6 +15,11 @@ namespace HaloRay { const double PI = 3.1415926535897932384626433832795028841971693993751058209749445923078164062; +float degToRad(float degrees) +{ + return PI * degrees / 180.0f; +} + SimulationEngine::SimulationEngine( std::shared_ptr crystalRepository, QObject *parent) @@ -149,7 +154,7 @@ void SimulationEngine::step() if (m_atmosphereEnabled && m_iteration == 1) { - auto skyState = SkyModel::Create(PI * m_light.altitude / 180.0, m_turbidity, m_groundAlbedo, PI * m_light.diameter / 2.0 / 180.0); + auto skyState = SkyModel::Create(degToRad(m_light.altitude), m_turbidity, m_groundAlbedo, degToRad(m_light.diameter / 2.0)); for (auto i = 0u; i < 31; ++i) { m_sunSpectrumCache[i] = skyState.sunSpectrum[i]; @@ -159,11 +164,11 @@ void SimulationEngine::step() glBindImageTexture(m_backgroundTexture->getTextureUnit(), m_backgroundTexture->getHandle(), 0, GL_FALSE, 0, GL_READ_WRITE, GL_RGBA32F); m_skyShader->bind(); glMemoryBarrier(GL_SHADER_IMAGE_ACCESS_BARRIER_BIT); - m_skyShader->setUniformValue("sun.altitude", m_light.altitude); - m_skyShader->setUniformValue("sun.diameter", m_light.diameter); - m_skyShader->setUniformValue("camera.pitch", m_camera.pitch); - m_skyShader->setUniformValue("camera.yaw", m_camera.yaw); - m_skyShader->setUniformValue("camera.fov", m_camera.fov); + m_skyShader->setUniformValue("sun.altitude", degToRad(m_light.altitude)); + m_skyShader->setUniformValue("sun.diameter", degToRad(m_light.diameter)); + m_skyShader->setUniformValue("camera.pitch", degToRad(m_camera.pitch)); + m_skyShader->setUniformValue("camera.yaw", degToRad(m_camera.yaw)); + m_skyShader->setUniformValue("camera.fov", degToRad(m_camera.fov)); m_skyShader->setUniformValue("camera.projection", m_camera.projection); m_skyShader->setUniformValue("camera.hideSubHorizon", m_camera.hideSubHorizon ? 1 : 0); @@ -174,8 +179,8 @@ void SimulationEngine::step() } m_skyShader->setUniformValueArray("skyModelState.radiances", skyState.radiances, 3, 1); m_skyShader->setUniformValue("skyModelState.turbidity", skyState.turbidity); - m_skyShader->setUniformValue("skyModelState.solarRadius", (float)(PI * m_light.diameter / 2.0 / 180.0)); - m_skyShader->setUniformValue("skyModelState.elevation", (float)(PI * m_light.altitude / 180.0)); + m_skyShader->setUniformValue("skyModelState.solarRadius", degToRad(m_light.diameter / 2.0f)); + m_skyShader->setUniformValue("skyModelState.elevation", degToRad(m_light.altitude)); m_skyShader->setUniformValue("skyModelState.sunTopCIEXYZ", skyState.sunTopCIEXYZ[0], skyState.sunTopCIEXYZ[1], skyState.sunTopCIEXYZ[2]); m_skyShader->setUniformValue("skyModelState.sunBottomCIEXYZ", skyState.sunBottomCIEXYZ[0], skyState.sunBottomCIEXYZ[1], skyState.sunBottomCIEXYZ[2]); m_skyShader->setUniformValue("skyModelState.limbDarkeningScaler", skyState.limbDarkeningScaler[0], skyState.limbDarkeningScaler[1], skyState.limbDarkeningScaler[2]); @@ -203,32 +208,32 @@ void SimulationEngine::step() https://bugreports.qt.io/browse/QTBUG-45507 */ glUniform1ui(glGetUniformLocation(m_simulationShader->programId(), "rngSeed"), seed); - m_simulationShader->setUniformValue("sun.altitude", m_light.altitude); - m_simulationShader->setUniformValue("sun.diameter", m_light.diameter); + m_simulationShader->setUniformValue("sun.altitude", degToRad(m_light.altitude)); + m_simulationShader->setUniformValue("sun.diameter", degToRad(m_light.diameter)); m_simulationShader->setUniformValueArray("sun.spectrum", m_sunSpectrumCache, 31, 1); m_simulationShader->setUniformValue("crystalProperties.caRatioAverage", crystals.caRatioAverage); m_simulationShader->setUniformValue("crystalProperties.caRatioStd", crystals.caRatioStd); m_simulationShader->setUniformValue("crystalProperties.tiltDistribution", crystals.tiltDistribution); - m_simulationShader->setUniformValue("crystalProperties.tiltAverage", crystals.tiltAverage); - m_simulationShader->setUniformValue("crystalProperties.tiltStd", crystals.tiltStd); + m_simulationShader->setUniformValue("crystalProperties.tiltAverage", degToRad(crystals.tiltAverage)); + m_simulationShader->setUniformValue("crystalProperties.tiltStd", degToRad(crystals.tiltStd)); m_simulationShader->setUniformValue("crystalProperties.rotationDistribution", crystals.rotationDistribution); - m_simulationShader->setUniformValue("crystalProperties.rotationAverage", crystals.rotationAverage); - m_simulationShader->setUniformValue("crystalProperties.rotationStd", crystals.rotationStd); + m_simulationShader->setUniformValue("crystalProperties.rotationAverage", degToRad(crystals.rotationAverage)); + m_simulationShader->setUniformValue("crystalProperties.rotationStd", degToRad(crystals.rotationStd)); - m_simulationShader->setUniformValue("crystalProperties.upperApexAngle", crystals.upperApexAngle); + m_simulationShader->setUniformValue("crystalProperties.upperApexAngle", degToRad(crystals.upperApexAngle)); m_simulationShader->setUniformValue("crystalProperties.upperApexHeightAverage", crystals.upperApexHeightAverage); m_simulationShader->setUniformValue("crystalProperties.upperApexHeightStd", crystals.upperApexHeightStd); - m_simulationShader->setUniformValue("crystalProperties.lowerApexAngle", crystals.lowerApexAngle); + m_simulationShader->setUniformValue("crystalProperties.lowerApexAngle", degToRad(crystals.lowerApexAngle)); m_simulationShader->setUniformValue("crystalProperties.lowerApexHeightAverage", crystals.lowerApexHeightAverage); m_simulationShader->setUniformValue("crystalProperties.lowerApexHeightStd", crystals.lowerApexHeightStd); - m_simulationShader->setUniformValue("camera.pitch", m_camera.pitch); - m_simulationShader->setUniformValue("camera.yaw", m_camera.yaw); - m_simulationShader->setUniformValue("camera.fov", m_camera.fov); + m_simulationShader->setUniformValue("camera.pitch", degToRad(m_camera.pitch)); + m_simulationShader->setUniformValue("camera.yaw", degToRad(m_camera.yaw)); + m_simulationShader->setUniformValue("camera.fov", degToRad(m_camera.fov)); m_simulationShader->setUniformValue("camera.projection", m_camera.projection); m_simulationShader->setUniformValue("camera.hideSubHorizon", m_camera.hideSubHorizon ? 1 : 0); From ae688cc9274277fde509f57736e0cc82bda703c8 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Tue, 9 Feb 2021 22:00:13 +0200 Subject: [PATCH 111/184] Calculate focal length outside shader code --- src/haloray-core/haloray-core.pro | 3 ++- .../resources/shaders/raytrace.glsl | 10 +++------ src/haloray-core/resources/shaders/sky.glsl | 18 ++++++--------- src/haloray-core/simulation/camera.cpp | 22 +++++++++++++++++++ src/haloray-core/simulation/camera.h | 2 ++ .../simulation/simulationEngine.cpp | 11 +++------- .../simulation/trigonometryUtilities.h | 8 +++++++ 7 files changed, 47 insertions(+), 27 deletions(-) create mode 100644 src/haloray-core/simulation/trigonometryUtilities.h diff --git a/src/haloray-core/haloray-core.pro b/src/haloray-core/haloray-core.pro index 18ba093..304e898 100644 --- a/src/haloray-core/haloray-core.pro +++ b/src/haloray-core/haloray-core.pro @@ -47,7 +47,8 @@ HEADERS += \ simulation/crystalPopulationRepository.h \ simulation/lightSource.h \ simulation/simulationEngine.h \ - simulation/skyModel.h + simulation/skyModel.h \ + simulation/trigonometryUtilities.h SOURCES += \ gui/addCrystalPopulationButton.cpp \ diff --git a/src/haloray-core/resources/shaders/raytrace.glsl b/src/haloray-core/resources/shaders/raytrace.glsl index 19f8ff3..ca5dde7 100644 --- a/src/haloray-core/resources/shaders/raytrace.glsl +++ b/src/haloray-core/resources/shaders/raytrace.glsl @@ -48,7 +48,7 @@ uniform struct camera_t { float pitch; float yaw; - float fov; + float focalLength; int projection; int hideSubHorizon; } camera; @@ -572,26 +572,22 @@ void main(void) float projectionFunction; float focalLength; + // The projection converts 3D vectors to 2D points if (camera.projection == PROJECTION_STEREOGRAPHIC) { projectionFunction = 2.0 * tan(polar.x / 2.0); - focalLength = 1.0 / (4.0 * tan(camera.fov / 4.0)); } else if (camera.projection == PROJECTION_RECTILINEAR) { if (polar.x > 0.5 * PI) return; projectionFunction = tan(polar.x); - focalLength = 1.0 / (2.0 * tan(camera.fov / 2.0)); } else if (camera.projection == PROJECTION_EQUIDISTANT) { projectionFunction = polar.x; - focalLength = 1.0 / camera.fov; } else if (camera.projection == PROJECTION_EQUAL_AREA) { projectionFunction = 2.0 * sin(polar.x / 2.0); - focalLength = 1.0 / (4.0 * sin(camera.fov / 4.0)); } else if (camera.projection == PROJECTION_ORTHOGRAPHIC) { if (polar.x > 0.5 * PI) return; projectionFunction = sin(polar.x); - focalLength = 1.0 / (2.0 * sin(camera.fov / 2.0)); } - vec2 projected = focalLength * projectionFunction * vec2(aspectRatio * cos(polar.y), sin(polar.y)); + vec2 projected = camera.focalLength * projectionFunction * vec2(aspectRatio * cos(polar.y), sin(polar.y)); vec2 normalizedCoordinates = 0.5 + projected; if (any(lessThanEqual(normalizedCoordinates, vec2(0.0))) || any(greaterThanEqual(normalizedCoordinates, vec2(1.0)))) diff --git a/src/haloray-core/resources/shaders/sky.glsl b/src/haloray-core/resources/shaders/sky.glsl index d1a725b..980af45 100644 --- a/src/haloray-core/resources/shaders/sky.glsl +++ b/src/haloray-core/resources/shaders/sky.glsl @@ -13,7 +13,7 @@ uniform struct camera_t { float pitch; float yaw; - float fov; + float focalLength; int projection; int hideSubHorizon; } camera; @@ -271,23 +271,19 @@ void main(void) float projectedAngle; + // The projection converts 2D coordinates to 3D vectors if (camera.projection == PROJECTION_STEREOGRAPHIC) { - float focalLength = 1.0 / (4.0 * tan(camera.fov / 4.0)); - projectedAngle = 2.0 * atan(polar.x / 2.0 / focalLength); + projectedAngle = 2.0 * atan(polar.x / 2.0 / camera.focalLength); } else if (camera.projection == PROJECTION_RECTILINEAR) { if (polar.x > 0.5 * PI) return; - float focalLength = 1.0 / (2.0 * tan(camera.fov / 2.0)); - projectedAngle = atan(polar.x / focalLength); + projectedAngle = atan(polar.x / camera.focalLength); } else if (camera.projection == PROJECTION_EQUIDISTANT) { - float focalLength = 1.0 / camera.fov; - projectedAngle = polar.x / focalLength; + projectedAngle = polar.x / camera.focalLength; } else if (camera.projection == PROJECTION_EQUAL_AREA) { - float focalLength = 1.0 / (4.0 * sin(camera.fov / 4.0)); - projectedAngle = 2.0 * asin(polar.x / 2.0 / focalLength); + projectedAngle = 2.0 * asin(polar.x / 2.0 / camera.focalLength); } else if (camera.projection == PROJECTION_ORTHOGRAPHIC) { if (polar.x > 0.5 * PI) return; - float focalLength = 1.0 / (2.0 * sin(camera.fov / 2.0)); - projectedAngle = asin(polar.x / focalLength); + projectedAngle = asin(polar.x / camera.focalLength); } float x = sin(projectedAngle) * cos(polar.y); diff --git a/src/haloray-core/simulation/camera.cpp b/src/haloray-core/simulation/camera.cpp index baca433..040b5cc 100644 --- a/src/haloray-core/simulation/camera.cpp +++ b/src/haloray-core/simulation/camera.cpp @@ -1,8 +1,30 @@ +#include +#include "trigonometryUtilities.h" #include "camera.h" namespace HaloRay { +float Camera::getFocalLength() const +{ + float fovRadian = degToRad(fov); + switch (projection) + { + case Stereographic: + return 1.0f / (4.0f * tan(fovRadian / 4.0)); + case Rectilinear: + return 1.0 / (2.0 * tan(fovRadian / 2.0)); + case Equidistant: + return 1.0 / fovRadian; + case EqualArea: + return 1.0 / (4.0 * sin(fovRadian / 4.0)); + case Orthographic: + return 1.0 / (2.0 * sin(fovRadian / 2.0)); + } + + return 1.0; +} + float Camera::getMaximumFov() const { switch (projection) diff --git a/src/haloray-core/simulation/camera.h b/src/haloray-core/simulation/camera.h index 1f2596b..a6621ed 100644 --- a/src/haloray-core/simulation/camera.h +++ b/src/haloray-core/simulation/camera.h @@ -22,9 +22,11 @@ struct Camera bool hideSubHorizon = false; float getMaximumFov() const; + float getFocalLength() const; bool operator==(const Camera&) const; bool operator!=(const Camera&) const; static Camera createDefaultCamera(); + }; } diff --git a/src/haloray-core/simulation/simulationEngine.cpp b/src/haloray-core/simulation/simulationEngine.cpp index 3337a1c..7359956 100644 --- a/src/haloray-core/simulation/simulationEngine.cpp +++ b/src/haloray-core/simulation/simulationEngine.cpp @@ -5,6 +5,7 @@ #include #include #include "../opengl/texture.h" +#include "trigonometryUtilities.h" #include "camera.h" #include "lightSource.h" #include "crystalPopulation.h" @@ -13,12 +14,6 @@ namespace HaloRay { -const double PI = 3.1415926535897932384626433832795028841971693993751058209749445923078164062; - -float degToRad(float degrees) -{ - return PI * degrees / 180.0f; -} SimulationEngine::SimulationEngine( std::shared_ptr crystalRepository, @@ -168,7 +163,7 @@ void SimulationEngine::step() m_skyShader->setUniformValue("sun.diameter", degToRad(m_light.diameter)); m_skyShader->setUniformValue("camera.pitch", degToRad(m_camera.pitch)); m_skyShader->setUniformValue("camera.yaw", degToRad(m_camera.yaw)); - m_skyShader->setUniformValue("camera.fov", degToRad(m_camera.fov)); + m_skyShader->setUniformValue("camera.focalLength", m_camera.getFocalLength()); m_skyShader->setUniformValue("camera.projection", m_camera.projection); m_skyShader->setUniformValue("camera.hideSubHorizon", m_camera.hideSubHorizon ? 1 : 0); @@ -233,7 +228,7 @@ void SimulationEngine::step() m_simulationShader->setUniformValue("camera.pitch", degToRad(m_camera.pitch)); m_simulationShader->setUniformValue("camera.yaw", degToRad(m_camera.yaw)); - m_simulationShader->setUniformValue("camera.fov", degToRad(m_camera.fov)); + m_simulationShader->setUniformValue("camera.focalLength", m_camera.getFocalLength()); m_simulationShader->setUniformValue("camera.projection", m_camera.projection); m_simulationShader->setUniformValue("camera.hideSubHorizon", m_camera.hideSubHorizon ? 1 : 0); diff --git a/src/haloray-core/simulation/trigonometryUtilities.h b/src/haloray-core/simulation/trigonometryUtilities.h new file mode 100644 index 0000000..ab275b5 --- /dev/null +++ b/src/haloray-core/simulation/trigonometryUtilities.h @@ -0,0 +1,8 @@ +#pragma once + +inline const double PI = 3.1415926535897932384626433832795028841971693993751058209749445923078164062; + +inline float degToRad(float degrees) +{ + return (float)(PI * degrees / 180.0); +} From d944daf0f8dde7492288526339918e7401042f3a Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Wed, 10 Feb 2021 00:11:56 +0200 Subject: [PATCH 112/184] Save simulations to INI files The simulation settings can now be saved to an INI file. The QSettings construct from Qt is used to form the files. Loading the saved simulation state is yet to be implemented. --- src/haloray-core/gui/mainWindow.cpp | 73 +++++++++++++++++++++++++++++ src/haloray-core/gui/mainWindow.h | 2 + 2 files changed, 75 insertions(+) diff --git a/src/haloray-core/gui/mainWindow.cpp b/src/haloray-core/gui/mainWindow.cpp index 8c4e04d..9bfb88c 100644 --- a/src/haloray-core/gui/mainWindow.cpp +++ b/src/haloray-core/gui/mainWindow.cpp @@ -15,6 +15,7 @@ #include #include #include +#include #include "openGLWidget.h" #include "generalSettingsWidget.h" #include "crystalSettingsWidget.h" @@ -92,6 +93,75 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), m_previousTimedIt image.save(filename, "PNG", 50); } }); + connect(m_saveSimulationAction, &QAction::triggered, [this]() { + auto currentTime = QDateTime::currentDateTimeUtc().toString(Qt::DateFormat::ISODate); + auto defaultFilename = QString("haloray_sim_%1.ini") + .arg(currentTime) + .replace(":", "-"); + QString filename = QFileDialog::getSaveFileName(this, + tr("Save File"), + defaultFilename, + tr("Simulation files (*.ini)")); + + if (!filename.isNull()) + { + QSettings settings(filename, QSettings::Format::IniFormat); + + settings.beginGroup("LightSource"); + auto lightSource = m_engine->getLightSource(); + settings.setValue("Altitude", (double)lightSource.altitude); + settings.setValue("Diameter", (double)lightSource.diameter); + settings.endGroup(); + + settings.beginGroup("CrystalPopulations"); + settings.beginWriteArray("pop"); + for (auto i = 0u; i < m_crystalRepository->getCount(); ++i) + { + settings.setArrayIndex(i); + settings.setValue("weight", m_crystalRepository->getWeight(i)); + auto population = m_crystalRepository->get(i); + + settings.setValue("caRatioAverage", (double)population.caRatioAverage); + settings.setValue("caRatioStd", (double)population.caRatioStd); + + settings.setValue("tiltDistribution", population.tiltDistribution); + settings.setValue("tiltAverage", (double)population.tiltAverage); + settings.setValue("tiltStd", (double)population.tiltStd); + + settings.setValue("rotationDistribution", population.rotationDistribution); + settings.setValue("rotationAverage", (double)population.rotationAverage); + settings.setValue("rotationStd", (double)population.rotationStd); + + settings.setValue("upperApexAngle", (double)population.upperApexAngle); + settings.setValue("upperApexHeightAverage", (double)population.upperApexHeightAverage); + settings.setValue("upperApexHeightStd", (double)population.upperApexHeightStd); + + settings.setValue("lowerApexAngle", (double)population.lowerApexAngle); + settings.setValue("lowerApexHeightAverage", (double)population.lowerApexHeightAverage); + settings.setValue("lowerApexHeightStd", (double)population.lowerApexHeightStd); + } + settings.endArray(); + settings.endGroup(); + + settings.beginGroup("Camera"); + auto camera = m_engine->getCamera(); + settings.setValue("Projection", (double)camera.projection); + settings.setValue("Pitch", (double)camera.pitch); + settings.setValue("Yaw", (double)camera.yaw); + settings.setValue("FieldOfView", (double)camera.fov); + settings.setValue("HideSubHorizon", camera.hideSubHorizon); + settings.endGroup(); + + settings.beginGroup("Atmosphere"); + settings.setValue("AtmosphereEnabled", m_engine->getAtmosphereEnabled()); + settings.setValue("Turbidity", m_engine->getAtmosphereTurbidity()); + settings.setValue("GroundAlbedo", m_engine->getGroundAlbedo()); + settings.endGroup(); + } + }); + connect(m_loadSimulationAction, &QAction::triggered, [this]() { + // TODO: Implement loading saved simulation + }); setupRenderTimer(); } @@ -134,6 +204,9 @@ void MainWindow::setupMenuBar() auto fileMenu = menuBar()->addMenu(tr("&File")); m_saveImageAction = fileMenu->addAction(tr("Save image")); fileMenu->addSeparator(); + m_loadSimulationAction = fileMenu->addAction(tr("Load simulation")); + m_saveSimulationAction = fileMenu->addAction(tr("Save simulation")); + fileMenu->addSeparator(); m_quitAction = fileMenu->addAction(tr("&Quit")); } diff --git a/src/haloray-core/gui/mainWindow.h b/src/haloray-core/gui/mainWindow.h index 0cabf53..2992460 100644 --- a/src/haloray-core/gui/mainWindow.h +++ b/src/haloray-core/gui/mainWindow.h @@ -47,6 +47,8 @@ class MainWindow : public QMainWindow QAction *m_saveImageAction; QAction *m_quitAction; + QAction *m_saveSimulationAction; + QAction *m_loadSimulationAction; std::shared_ptr m_crystalRepository; SimulationEngine *m_engine; From 94f7a0386f371b0a221c9a2b462c69baa7f94a9e Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Wed, 10 Feb 2021 23:09:37 +0200 Subject: [PATCH 113/184] Implement loading of saved simulation states Now the simulation state updates to reflect the parameters saved in the simulation INI file. --- src/haloray-core/gui/crystalModel.cpp | 29 ++- src/haloray-core/gui/crystalModel.h | 5 + .../gui/crystalSettingsWidget.cpp | 88 +++++---- src/haloray-core/gui/crystalSettingsWidget.h | 15 +- src/haloray-core/gui/mainWindow.cpp | 179 ++++++++++++------ src/haloray-core/gui/mainWindow.h | 2 + src/haloray-core/gui/simulationStateModel.cpp | 49 ++++- src/haloray-core/gui/simulationStateModel.h | 8 + src/haloray-core/haloray-core.pro | 2 + src/haloray-core/simulation/atmosphere.cpp | 28 +++ src/haloray-core/simulation/atmosphere.h | 18 ++ .../crystalPopulationRepository.cpp | 50 ++++- .../simulation/crystalPopulationRepository.h | 15 +- .../simulation/simulationEngine.cpp | 41 +--- .../simulation/simulationEngine.h | 16 +- .../crystalPopulationRepositoryTests.cpp | 7 + 16 files changed, 377 insertions(+), 175 deletions(-) create mode 100644 src/haloray-core/simulation/atmosphere.cpp create mode 100644 src/haloray-core/simulation/atmosphere.h diff --git a/src/haloray-core/gui/crystalModel.cpp b/src/haloray-core/gui/crystalModel.cpp index 9900904..c07f115 100644 --- a/src/haloray-core/gui/crystalModel.cpp +++ b/src/haloray-core/gui/crystalModel.cpp @@ -1,5 +1,6 @@ #include "crystalModel.h" #include +#include #include #include "../simulation/crystalPopulationRepository.h" @@ -31,8 +32,7 @@ QVariant CrystalModel::data(const QModelIndex &index, int role) const if (!index.isValid()) return QVariant(); - if (role != Qt::DisplayRole && role != Qt::EditRole) - return QVariant(); + if (role != Qt::DisplayRole && role != Qt::EditRole) return QVariant(); auto row = index.row(); const CrystalPopulation &crystal = m_crystals->get(row); @@ -69,6 +69,8 @@ QVariant CrystalModel::data(const QModelIndex &index, int role) const return crystal.lowerApexHeightStd; case PopulationWeight: return m_crystals->getWeight(row); + case PopulationName: + return QString::fromStdString(m_crystals->getName(row)); } return QVariant(); @@ -133,6 +135,9 @@ bool CrystalModel::setData(const QModelIndex &index, const QVariant &value, int case PopulationWeight: m_crystals->setWeight(row, value.toUInt()); break; + case PopulationName: + m_crystals->setName(row, value.toString().toStdString()); + break; default: break; } @@ -158,6 +163,14 @@ void CrystalModel::addRow(CrystalPopulationPreset preset) endInsertRows(); } +void CrystalModel::addRow(CrystalPopulation population, unsigned int weight, QString name) +{ + auto row = m_crystals->getCount(); + beginInsertRows(QModelIndex(), row, row); + m_crystals->add(population, weight, name.toStdString()); + endInsertRows(); +} + bool CrystalModel::removeRow(int row) { if (m_crystals->getCount() <= 1) @@ -170,4 +183,16 @@ bool CrystalModel::removeRow(int row) return true; } +void CrystalModel::clear() +{ + emit beginRemoveRows(QModelIndex(), 0, m_crystals->getCount() - 1); + m_crystals->clear(); + endRemoveRows(); +} + +void CrystalModel::setName(int row, QString name) +{ + setData(createIndex(row, PopulationName), name); +} + } diff --git a/src/haloray-core/gui/crystalModel.h b/src/haloray-core/gui/crystalModel.h index da8b172..da8a0c5 100644 --- a/src/haloray-core/gui/crystalModel.h +++ b/src/haloray-core/gui/crystalModel.h @@ -6,6 +6,7 @@ class QWidget; class QVariant; class QModelIndex; +class QString; namespace HaloRay { @@ -35,6 +36,7 @@ class CrystalModel : public QAbstractTableModel LowerApexHeightAverage, LowerApexHeightStd, PopulationWeight, + PopulationName, NUM_COLUMNS }; @@ -45,7 +47,10 @@ class CrystalModel : public QAbstractTableModel Qt::ItemFlags flags(const QModelIndex &index) const override; void addRow(CrystalPopulationPreset preset = CrystalPopulationPreset::Random); + void addRow(CrystalPopulation population, unsigned int weight, QString name); bool removeRow(int row); + void clear(); + void setName(int row, QString name); private: std::shared_ptr m_crystals; diff --git a/src/haloray-core/gui/crystalSettingsWidget.cpp b/src/haloray-core/gui/crystalSettingsWidget.cpp index f1a74f3..29372d2 100644 --- a/src/haloray-core/gui/crystalSettingsWidget.cpp +++ b/src/haloray-core/gui/crystalSettingsWidget.cpp @@ -7,6 +7,7 @@ #include #include #include +#include #include "sliderSpinBox.h" #include "addCrystalPopulationButton.h" #include "../simulation/crystalPopulation.h" @@ -15,10 +16,9 @@ namespace HaloRay { -CrystalSettingsWidget::CrystalSettingsWidget(std::shared_ptr crystalRepository, QWidget *parent) +CrystalSettingsWidget::CrystalSettingsWidget(CrystalModel *model, QWidget *parent) : QGroupBox("Crystal population settings", parent), - m_model(new CrystalModel(crystalRepository)), - m_nextPopulationId(1) + m_model(model) { setupUi(); @@ -34,7 +34,7 @@ CrystalSettingsWidget::CrystalSettingsWidget(std::shared_ptr::of(&QComboBox::currentIndexChanged), rotationVisibilityHandler); - m_mapper = new QDataWidgetMapper(); + m_mapper = new QDataWidgetMapper(this); m_mapper->setModel(m_model); m_mapper->addMapping(m_caRatioSlider, CrystalModel::CaRatioAverage); m_mapper->addMapping(m_caRatioStdSlider, CrystalModel::CaRatioStd); @@ -51,13 +51,10 @@ CrystalSettingsWidget::CrystalSettingsWidget(std::shared_ptraddMapping(m_lowerApexHeightAverageSlider, CrystalModel::LowerApexHeightAverage); m_mapper->addMapping(m_lowerApexHeightStdSlider, CrystalModel::LowerApexHeightStd); m_mapper->addMapping(m_weightSpinBox, CrystalModel::PopulationWeight); + m_mapper->addMapping(m_populationComboBox, CrystalModel::PopulationName, "currentText"); m_mapper->toFirst(); m_mapper->setSubmitPolicy(QDataWidgetMapper::SubmitPolicy::AutoSubmit); - connect(m_model, &CrystalModel::dataChanged, this, &CrystalSettingsWidget::crystalChanged); - connect(m_model, &CrystalModel::rowsInserted, this, &CrystalSettingsWidget::crystalChanged); - connect(m_model, &CrystalModel::rowsRemoved, this, &CrystalSettingsWidget::crystalChanged); - /* QDataWidgetMapper only submits data when Enter is pressed, or when a text box loses focus, so the sliders and comboboxes must still be manually connected @@ -79,55 +76,38 @@ CrystalSettingsWidget::CrystalSettingsWidget(std::shared_ptr::of(&QComboBox::activated), m_mapper, &QDataWidgetMapper::setCurrentIndex); - connect(m_mapper, &QDataWidgetMapper::currentIndexChanged, m_populationComboBox, QOverload::of(&QComboBox::setCurrentIndex)); + setupPopulationComboBoxConnections(); - tiltVisibilityHandler(m_tiltDistributionComboBox->currentIndex()); - rotationVisibilityHandler(m_rotationDistributionComboBox->currentIndex()); + auto updateRemovePopulationButtonState = [this]() + { + this->m_removePopulationButton->setEnabled(m_model->rowCount() > 1); + }; + + /* These connections are necessary so button state updates if data in the model changes + * on its own, e.g. during loading saved simulation state. */ + connect(m_model, &CrystalModel::dataChanged, updateRemovePopulationButtonState); + connect(m_model, &CrystalModel::rowsInserted, updateRemovePopulationButtonState); + connect(m_model, &CrystalModel::rowsRemoved, updateRemovePopulationButtonState); - connect(m_AddPopulationButton, &AddCrystalPopulationButton::addPopulation, [this](CrystalPopulationPreset preset) { + connect(m_addPopulationButton, &AddCrystalPopulationButton::addPopulation, [this, updateRemovePopulationButtonState](CrystalPopulationPreset preset) { m_model->addRow(preset); - addPopulationComboBoxItem(); m_mapper->toLast(); updateRemovePopulationButtonState(); }); - connect(m_removePopulationButton, &QToolButton::clicked, [this]() { + connect(m_removePopulationButton, &QToolButton::clicked, [this, updateRemovePopulationButtonState]() { int index = m_mapper->currentIndex(); - if (index == 0) - m_mapper->toNext(); - else - m_mapper->toPrevious(); - bool success = m_model->removeRow(index); - if (success) - m_populationComboBox->removeItem(index); + m_model->removeRow(index); + m_mapper->toFirst(); updateRemovePopulationButtonState(); }); - connect(m_populationComboBox, &QComboBox::editTextChanged, [this](const QString &text) { - m_populationComboBox->setItemText(m_populationComboBox->currentIndex(), text); - }); - - fillPopulationComboBox(); + tiltVisibilityHandler(m_tiltDistributionComboBox->currentIndex()); + rotationVisibilityHandler(m_rotationDistributionComboBox->currentIndex()); updateRemovePopulationButtonState(); } -void CrystalSettingsWidget::addPopulationComboBoxItem() -{ - m_populationComboBox->addItem(QString("Population %1").arg(m_nextPopulationId++)); -} - -void CrystalSettingsWidget::fillPopulationComboBox() -{ - m_populationComboBox->addItems({"Columns", "Plates", "Random"}); -} - -void CrystalSettingsWidget::updateRemovePopulationButtonState() -{ - m_removePopulationButton->setEnabled(m_model->rowCount() > 1); -} - void CrystalSettingsWidget::setupUi() { setMaximumWidth(400); @@ -137,8 +117,8 @@ void CrystalSettingsWidget::setupUi() m_populationComboBox->setInsertPolicy(QComboBox::InsertPolicy::NoInsert); m_populationComboBox->setDuplicatesEnabled(true); - m_AddPopulationButton = new AddCrystalPopulationButton(); - m_AddPopulationButton->setIconSize(QSize(24, 24)); + m_addPopulationButton = new AddCrystalPopulationButton(); + m_addPopulationButton->setIconSize(QSize(24, 24)); m_removePopulationButton = new QToolButton(); m_removePopulationButton->setIcon(QIcon::fromTheme("list-remove")); @@ -192,7 +172,7 @@ void CrystalSettingsWidget::setupUi() auto populationButtonLayout = new QHBoxLayout(); populationButtonLayout->addWidget(m_populationComboBox); - populationButtonLayout->addWidget(m_AddPopulationButton); + populationButtonLayout->addWidget(m_addPopulationButton); populationButtonLayout->addWidget(m_removePopulationButton); mainLayout->addRow(populationButtonLayout); @@ -229,6 +209,24 @@ void CrystalSettingsWidget::setupUi() rotationLayout->addRow(m_rotationStdLabel, m_rotationStdSlider); } +void CrystalSettingsWidget::setupPopulationComboBoxConnections() +{ + m_populationComboBox->setModel(m_model); + m_populationComboBox->setModelColumn(CrystalModel::PopulationName); + m_populationComboBox->setCurrentIndex(m_mapper->currentIndex()); + + /* Without this connection the editable QComboBox won't submit changes to + * underlying model without losing focus or the user pressing Enter */ + connect(m_populationComboBox->lineEdit(), &QLineEdit::textEdited, [this](const QString &text) { + m_populationComboBox->setItemData(m_populationComboBox->currentIndex(), text, Qt::EditRole); + }); + + /* These connections keep the population combobox selection and the QDataWidgetMapper + * current index in sync */ + connect(m_populationComboBox, QOverload::of(&QComboBox::activated), m_mapper, &QDataWidgetMapper::setCurrentIndex, Qt::QueuedConnection); + connect(m_mapper, &QDataWidgetMapper::currentIndexChanged, m_populationComboBox, QOverload::of(&QComboBox::setCurrentIndex), Qt::QueuedConnection); +} + void CrystalSettingsWidget::setTiltVisibility(bool visible) { m_tiltAverageSlider->setVisible(visible); diff --git a/src/haloray-core/gui/crystalSettingsWidget.h b/src/haloray-core/gui/crystalSettingsWidget.h index ee976c8..54e7194 100644 --- a/src/haloray-core/gui/crystalSettingsWidget.h +++ b/src/haloray-core/gui/crystalSettingsWidget.h @@ -2,7 +2,6 @@ #include #include - class QToolButton; class QComboBox; class QLabel; @@ -13,7 +12,6 @@ class QDoubleSpinBox; namespace HaloRay { -class CrystalPopulationRepository; class AddCrystalPopulationButton; class SliderSpinBox; class CrystalModel; @@ -22,21 +20,16 @@ class CrystalSettingsWidget : public QGroupBox { Q_OBJECT public: - CrystalSettingsWidget(std::shared_ptr crystalRepository, QWidget *parent = nullptr); - -signals: - void crystalChanged(); + CrystalSettingsWidget(CrystalModel *model, QWidget *parent = nullptr); private: void setupUi(); - void addPopulationComboBoxItem(); - void fillPopulationComboBox(); - void updateRemovePopulationButtonState(); + void setupPopulationComboBoxConnections(); SliderSpinBox *createAngleSlider(double min, double max); void setTiltVisibility(bool); void setRotationVisibility(bool); - AddCrystalPopulationButton *m_AddPopulationButton; + AddCrystalPopulationButton *m_addPopulationButton; QToolButton *m_removePopulationButton; SliderSpinBox *m_caRatioSlider; @@ -67,8 +60,6 @@ class CrystalSettingsWidget : public QGroupBox CrystalModel *m_model; QDataWidgetMapper *m_mapper; QComboBox *m_populationComboBox; - - unsigned int m_nextPopulationId; }; } diff --git a/src/haloray-core/gui/mainWindow.cpp b/src/haloray-core/gui/mainWindow.cpp index 9bfb88c..aa7f68e 100644 --- a/src/haloray-core/gui/mainWindow.cpp +++ b/src/haloray-core/gui/mainWindow.cpp @@ -16,6 +16,8 @@ #include #include #include +#include "../simulation/atmosphere.h" +#include "crystalModel.h" #include "openGLWidget.h" #include "generalSettingsWidget.h" #include "crystalSettingsWidget.h" @@ -41,6 +43,7 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), m_previousTimedIt m_crystalRepository = std::make_shared(); m_engine = new SimulationEngine(m_crystalRepository, this); + m_crystalModel = new CrystalModel(m_crystalRepository, this); m_simulationStateModel = new SimulationStateModel(m_engine, this); setupUi(); @@ -49,8 +52,8 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), m_previousTimedIt connect(m_renderButton, &RenderButton::clicked, m_openGLWidget, &OpenGLWidget::toggleRendering); connect(m_renderButton, &RenderButton::clicked, m_generalSettingsWidget, &GeneralSettingsWidget::toggleComputeShaderParametersEnabled); - // Signals from crystal settings - connect(m_crystalSettingsWidget, &CrystalSettingsWidget::crystalChanged, [this]() { + // Signals from crystal model + connect(m_crystalModel, &CrystalModel::dataChanged, [this]() { m_engine->clear(); m_openGLWidget->update(); }); @@ -103,64 +106,126 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), m_previousTimedIt defaultFilename, tr("Simulation files (*.ini)")); - if (!filename.isNull()) + if (filename.isNull()) return; + + QSettings settings(filename, QSettings::Format::IniFormat); + + settings.beginGroup("LightSource"); + auto lightSource = m_engine->getLightSource(); + settings.setValue("Altitude", (double)lightSource.altitude); + settings.setValue("Diameter", (double)lightSource.diameter); + settings.endGroup(); + + settings.beginGroup("CrystalPopulations"); + settings.beginWriteArray("pop"); + for (auto i = 0u; i < m_crystalRepository->getCount(); ++i) { - QSettings settings(filename, QSettings::Format::IniFormat); - - settings.beginGroup("LightSource"); - auto lightSource = m_engine->getLightSource(); - settings.setValue("Altitude", (double)lightSource.altitude); - settings.setValue("Diameter", (double)lightSource.diameter); - settings.endGroup(); - - settings.beginGroup("CrystalPopulations"); - settings.beginWriteArray("pop"); - for (auto i = 0u; i < m_crystalRepository->getCount(); ++i) - { - settings.setArrayIndex(i); - settings.setValue("weight", m_crystalRepository->getWeight(i)); - auto population = m_crystalRepository->get(i); - - settings.setValue("caRatioAverage", (double)population.caRatioAverage); - settings.setValue("caRatioStd", (double)population.caRatioStd); - - settings.setValue("tiltDistribution", population.tiltDistribution); - settings.setValue("tiltAverage", (double)population.tiltAverage); - settings.setValue("tiltStd", (double)population.tiltStd); - - settings.setValue("rotationDistribution", population.rotationDistribution); - settings.setValue("rotationAverage", (double)population.rotationAverage); - settings.setValue("rotationStd", (double)population.rotationStd); - - settings.setValue("upperApexAngle", (double)population.upperApexAngle); - settings.setValue("upperApexHeightAverage", (double)population.upperApexHeightAverage); - settings.setValue("upperApexHeightStd", (double)population.upperApexHeightStd); - - settings.setValue("lowerApexAngle", (double)population.lowerApexAngle); - settings.setValue("lowerApexHeightAverage", (double)population.lowerApexHeightAverage); - settings.setValue("lowerApexHeightStd", (double)population.lowerApexHeightStd); - } - settings.endArray(); - settings.endGroup(); - - settings.beginGroup("Camera"); - auto camera = m_engine->getCamera(); - settings.setValue("Projection", (double)camera.projection); - settings.setValue("Pitch", (double)camera.pitch); - settings.setValue("Yaw", (double)camera.yaw); - settings.setValue("FieldOfView", (double)camera.fov); - settings.setValue("HideSubHorizon", camera.hideSubHorizon); - settings.endGroup(); - - settings.beginGroup("Atmosphere"); - settings.setValue("AtmosphereEnabled", m_engine->getAtmosphereEnabled()); - settings.setValue("Turbidity", m_engine->getAtmosphereTurbidity()); - settings.setValue("GroundAlbedo", m_engine->getGroundAlbedo()); - settings.endGroup(); + settings.setArrayIndex(i); + settings.setValue("Weight", m_crystalRepository->getWeight(i)); + auto population = m_crystalRepository->get(i); + + settings.setValue("Name", QString::fromStdString(m_crystalRepository->getName(i))); + + settings.setValue("CaRatioAverage", (double)population.caRatioAverage); + settings.setValue("CaRatioStd", (double)population.caRatioStd); + + settings.setValue("TiltDistribution", population.tiltDistribution); + settings.setValue("TiltAverage", (double)population.tiltAverage); + settings.setValue("TiltStd", (double)population.tiltStd); + + settings.setValue("RotationDistribution", population.rotationDistribution); + settings.setValue("RotationAverage", (double)population.rotationAverage); + settings.setValue("RotationStd", (double)population.rotationStd); + + settings.setValue("UpperApexAngle", (double)population.upperApexAngle); + settings.setValue("UpperApexHeightAverage", (double)population.upperApexHeightAverage); + settings.setValue("UpperApexHeightStd", (double)population.upperApexHeightStd); + + settings.setValue("LowerApexAngle", (double)population.lowerApexAngle); + settings.setValue("LowerApexHeightAverage", (double)population.lowerApexHeightAverage); + settings.setValue("LowerApexHeightStd", (double)population.lowerApexHeightStd); } + settings.endArray(); + settings.endGroup(); + + settings.beginGroup("Camera"); + auto camera = m_engine->getCamera(); + settings.setValue("Projection", (double)camera.projection); + settings.setValue("Pitch", (double)camera.pitch); + settings.setValue("Yaw", (double)camera.yaw); + settings.setValue("FieldOfView", (double)camera.fov); + settings.setValue("HideSubHorizon", camera.hideSubHorizon); + settings.endGroup(); + + settings.beginGroup("Atmosphere"); + auto atmosphere = m_engine->getAtmosphere(); + settings.setValue("Enabled", atmosphere.enabled); + settings.setValue("Turbidity", atmosphere.turbidity); + settings.setValue("GroundAlbedo", atmosphere.groundAlbedo); + settings.endGroup(); }); connect(m_loadSimulationAction, &QAction::triggered, [this]() { - // TODO: Implement loading saved simulation + QString filename = QFileDialog::getOpenFileName(this, + tr("Open file"), + QString(), + tr("Simulation files (*.ini)")); + + if (filename.isNull()) return; + + + QSettings settings(filename, QSettings::Format::IniFormat); + + auto lightSource = LightSource::createDefaultLightSource(); + lightSource.altitude = settings.value("LightSource/Altitude", lightSource.altitude).toFloat(); + lightSource.diameter = settings.value("LightSource/Diameter", lightSource.diameter).toFloat(); + m_simulationStateModel->setLightSource(lightSource); + + auto camera = Camera::createDefaultCamera(); + camera.projection = (Projection)settings.value("Camera/Projection", camera.projection).toInt(); + camera.pitch = settings.value("Camera/Pitch", camera.pitch).toFloat(); + camera.yaw = settings.value("Camera/Yaw", camera.yaw).toFloat(); + camera.fov = settings.value("Camera/FieldOfView", camera.fov).toFloat(); + camera.hideSubHorizon = settings.value("Camera/HideSubHorizon", camera.hideSubHorizon).toBool(); + m_simulationStateModel->setCamera(camera); + + m_crystalModel->clear(); + auto crystalPopulationCount = settings.beginReadArray("CrystalPopulations/pop"); + for (auto i = 0; i < crystalPopulationCount; ++i) + { + settings.setArrayIndex(i); + auto pop = CrystalPopulation::createRandom(); + unsigned int weight = settings.value("Weight", 1).toUInt(); + + pop.caRatioAverage = settings.value("CaRatioAverage", pop.caRatioAverage).toFloat(); + pop.caRatioStd = settings.value("CaRatioStd", pop.caRatioStd).toFloat(); + + pop.tiltDistribution = settings.value("TiltDistribution", pop.tiltDistribution).toInt(); + pop.tiltAverage = settings.value("TiltAverage", pop.tiltAverage).toFloat(); + pop.tiltStd = settings.value("TiltStd", pop.tiltStd).toFloat(); + + pop.rotationDistribution = settings.value("RotationDistribution", pop.rotationDistribution).toInt(); + pop.rotationAverage = settings.value("RotationAverage", pop.rotationAverage).toFloat(); + pop.rotationStd = settings.value("RotationStd", pop.rotationStd).toFloat(); + + pop.upperApexAngle = settings.value("UpperApexAngle", pop.upperApexAngle).toFloat(); + pop.upperApexHeightAverage = settings.value("UpperApexHeightAverage", pop.upperApexHeightAverage).toFloat(); + pop.upperApexHeightStd = settings.value("UpperApexHeightStd", pop.upperApexHeightStd).toFloat(); + + pop.lowerApexAngle = settings.value("LowerApexAngle", pop.lowerApexAngle).toFloat(); + pop.lowerApexHeightAverage = settings.value("LowerApexHeightAverage", pop.lowerApexHeightAverage).toFloat(); + pop.lowerApexHeightStd = settings.value("LowerApexHeightStd", pop.lowerApexHeightStd).toFloat(); + + auto name = settings.value("Name", "Default name").toString(); + + m_crystalModel->addRow(pop, weight, name); + } + settings.endArray(); + + auto atmosphere = Atmosphere::createDefaultAtmosphere(); + atmosphere.enabled = settings.value("Atmosphere/Enabled", atmosphere.enabled).toBool(); + atmosphere.turbidity = settings.value("Atmosphere/Turbidity", atmosphere.turbidity).toDouble(); + atmosphere.groundAlbedo = settings.value("Atmosphere/GroundAlbedo", atmosphere.groundAlbedo).toDouble(); + m_engine->setAtmosphere(atmosphere); }); setupRenderTimer(); @@ -213,7 +278,7 @@ void MainWindow::setupMenuBar() QScrollArea *MainWindow::setupSideBarScrollArea() { m_generalSettingsWidget = new GeneralSettingsWidget(m_simulationStateModel); - m_crystalSettingsWidget = new CrystalSettingsWidget(m_crystalRepository); + m_crystalSettingsWidget = new CrystalSettingsWidget(m_crystalModel); m_viewSettingsWidget = new ViewSettingsWidget(m_simulationStateModel); m_atmosphereSettingsWidget = new AtmosphereSettingsWidget(m_simulationStateModel); diff --git a/src/haloray-core/gui/mainWindow.h b/src/haloray-core/gui/mainWindow.h index 2992460..54dd1da 100644 --- a/src/haloray-core/gui/mainWindow.h +++ b/src/haloray-core/gui/mainWindow.h @@ -21,6 +21,7 @@ class ViewSettingsWidget; class GeneralSettingsWidget; class CrystalSettingsWidget; class AtmosphereSettingsWidget; +class CrystalModel; class MainWindow : public QMainWindow { @@ -54,6 +55,7 @@ class MainWindow : public QMainWindow SimulationEngine *m_engine; SimulationStateModel *m_simulationStateModel; + CrystalModel *m_crystalModel; QTimer m_renderTimer; int m_previousTimedIteration; }; diff --git a/src/haloray-core/gui/simulationStateModel.cpp b/src/haloray-core/gui/simulationStateModel.cpp index 671589f..c06d33c 100644 --- a/src/haloray-core/gui/simulationStateModel.cpp +++ b/src/haloray-core/gui/simulationStateModel.cpp @@ -29,6 +29,10 @@ SimulationStateModel::SimulationStateModel(SimulationEngine *engine, QObject *pa connect(m_simulationEngine, &SimulationEngine::raysPerStepChanged, [this]() { emit dataChanged(createIndex(0, RaysPerFrame), createIndex(0, RaysPerFrame)); }); + + connect(m_simulationEngine, &SimulationEngine::atmosphereChanged, [this]() { + emit dataChanged(createIndex(0, AtmosphereEnabled), createIndex(0, GroundAlbedo)); + }); } QVariant SimulationStateModel::headerData(int section, Qt::Orientation orientation, int role) const @@ -122,11 +126,11 @@ QVariant SimulationStateModel::data(const QModelIndex &index, int role) const case RaysPerFrameUpperLimit: return m_raysPerFrameUpperLimit; case AtmosphereEnabled: - return m_simulationEngine->getAtmosphereEnabled(); + return m_simulationEngine->getAtmosphere().enabled; case Turbidity: - return m_simulationEngine->getAtmosphereTurbidity(); + return m_simulationEngine->getAtmosphere().turbidity; case GroundAlbedo: - return m_simulationEngine->getGroundAlbedo(); + return m_simulationEngine->getAtmosphere().groundAlbedo; default: break; } @@ -176,13 +180,13 @@ bool SimulationStateModel::setData(const QModelIndex &index, const QVariant &val m_raysPerFrameUpperLimit = value.toUInt(); break; case AtmosphereEnabled: - m_simulationEngine->setAtmosphereEnabled(value.toBool()); + setAtmosphereEnabled(value.toBool()); break; case Turbidity: - m_simulationEngine->setAtmosphereTurbidity(value.toDouble()); + setAtmosphereTurbidity(value.toDouble()); break; case GroundAlbedo: - m_simulationEngine->setGroundAlbedo(value.toDouble()); + setGroundAlbedo(value.toDouble()); break; default: return false; @@ -223,6 +227,18 @@ unsigned int SimulationStateModel::getMaxIterations() const return m_maximumIterations; } +void SimulationStateModel::setLightSource(LightSource lightSource) +{ + m_simulationEngine->setLightSource(lightSource); + emit dataChanged(createIndex(0, SunAltitude), createIndex(0, SunDiameter)); +} + +void SimulationStateModel::setCamera(Camera camera) +{ + m_simulationEngine->setCamera(camera); + emit dataChanged(createIndex(0, CameraProjection), createIndex(0, HideSubHorizon)); +} + void SimulationStateModel::setSunAltitude(float altitude) { auto lightSource = m_simulationEngine->getLightSource(); @@ -272,4 +288,25 @@ void SimulationStateModel::setHideSubHorizon(bool hide) m_simulationEngine->setCamera(camera); } +void SimulationStateModel::setAtmosphereEnabled(bool enabled) +{ + auto atmosphere = m_simulationEngine->getAtmosphere(); + atmosphere.enabled = enabled; + m_simulationEngine->setAtmosphere(atmosphere); +} + +void SimulationStateModel::setAtmosphereTurbidity(float turbidity) +{ + auto atmosphere = m_simulationEngine->getAtmosphere(); + atmosphere.turbidity = turbidity; + m_simulationEngine->setAtmosphere(atmosphere); +} + +void SimulationStateModel::setGroundAlbedo(float albedo) +{ + auto atmosphere = m_simulationEngine->getAtmosphere(); + atmosphere.groundAlbedo = albedo; + m_simulationEngine->setAtmosphere(atmosphere); +} + } diff --git a/src/haloray-core/gui/simulationStateModel.h b/src/haloray-core/gui/simulationStateModel.h index e4af33d..58bdc33 100644 --- a/src/haloray-core/gui/simulationStateModel.h +++ b/src/haloray-core/gui/simulationStateModel.h @@ -5,6 +5,8 @@ namespace HaloRay { class SimulationEngine; +struct LightSource; +struct Camera; class SimulationStateModel : public QAbstractTableModel { @@ -51,6 +53,9 @@ class SimulationStateModel : public QAbstractTableModel unsigned int getRaysPerFrameUpperLimit() const; unsigned int getMaxIterations() const; + void setLightSource(LightSource lightSource); + void setCamera(Camera camera); + private: SimulationEngine *m_simulationEngine; void setSunAltitude(float altitude); @@ -60,6 +65,9 @@ class SimulationStateModel : public QAbstractTableModel void setCameraPitch(float pitch); void setCameraYaw(float yaw); void setHideSubHorizon(bool hide); + void setAtmosphereEnabled(bool enabled); + void setAtmosphereTurbidity(float turbidity); + void setGroundAlbedo(float albedo); unsigned int m_maximumIterations; unsigned int m_raysPerFrameUpperLimit; diff --git a/src/haloray-core/haloray-core.pro b/src/haloray-core/haloray-core.pro index 304e898..6edbe4c 100644 --- a/src/haloray-core/haloray-core.pro +++ b/src/haloray-core/haloray-core.pro @@ -37,6 +37,7 @@ HEADERS += \ gui/viewSettingsWidget.h \ opengl/texture.h \ opengl/textureRenderer.h \ + simulation/atmosphere.h \ simulation/colorUtilities.h \ simulation/hosekWilkie/ArHosekSkyModel.h \ simulation/hosekWilkie/ArHosekSkyModelData_CIEXYZ.h \ @@ -64,6 +65,7 @@ SOURCES += \ gui/viewSettingsWidget.cpp \ opengl/texture.cpp \ opengl/textureRenderer.cpp \ + simulation/atmosphere.cpp \ simulation/hosekWilkie/ArHosekSkyModel.c \ simulation/camera.cpp \ simulation/crystalPopulation.cpp \ diff --git a/src/haloray-core/simulation/atmosphere.cpp b/src/haloray-core/simulation/atmosphere.cpp new file mode 100644 index 0000000..d13348b --- /dev/null +++ b/src/haloray-core/simulation/atmosphere.cpp @@ -0,0 +1,28 @@ +#include "atmosphere.h" + +namespace HaloRay +{ + +bool Atmosphere::operator==(const Atmosphere &other) const +{ + return enabled == other.enabled + && turbidity == other.turbidity + && groundAlbedo == other.groundAlbedo; +} + +bool Atmosphere::operator!=(const Atmosphere &other) const +{ + return !(*this == other); +} + +Atmosphere Atmosphere::createDefaultAtmosphere() +{ + Atmosphere a; + a.enabled = true; + a.turbidity = 5.0f; + a.groundAlbedo = 0.0f; + return a; +} + +} + diff --git a/src/haloray-core/simulation/atmosphere.h b/src/haloray-core/simulation/atmosphere.h new file mode 100644 index 0000000..bf359b7 --- /dev/null +++ b/src/haloray-core/simulation/atmosphere.h @@ -0,0 +1,18 @@ +#pragma once + +namespace HaloRay +{ + +struct Atmosphere +{ + bool enabled; + double turbidity; + double groundAlbedo; + + bool operator==(const Atmosphere&) const; + bool operator!=(const Atmosphere&) const; + + static Atmosphere createDefaultAtmosphere(); +}; + +} diff --git a/src/haloray-core/simulation/crystalPopulationRepository.cpp b/src/haloray-core/simulation/crystalPopulationRepository.cpp index bafdc2c..7689cc9 100644 --- a/src/haloray-core/simulation/crystalPopulationRepository.cpp +++ b/src/haloray-core/simulation/crystalPopulationRepository.cpp @@ -1,10 +1,12 @@ #include "crystalPopulationRepository.h" +#include #include namespace HaloRay { CrystalPopulationRepository::CrystalPopulationRepository() + : m_nextId(1) { addDefaults(); } @@ -17,25 +19,45 @@ unsigned int CrystalPopulationRepository::getCount() const void CrystalPopulationRepository::add(CrystalPopulationPreset preset) { m_crystals.push_back(CrystalPopulation::presetPopulation(preset)); - mWeights.push_back(1); + m_names.push_back(QString("Population %1").arg(m_nextId).toStdString()); + m_nextId = m_nextId + 1; + m_weights.push_back(1); +} + +void CrystalPopulationRepository::add(CrystalPopulation population, unsigned int weight, std::string name) +{ + m_crystals.push_back(population); + m_names.push_back(name); + m_weights.push_back(weight); } void CrystalPopulationRepository::addDefaults() { m_crystals.push_back(CrystalPopulation::presetPopulation(CrystalPopulationPreset::Column)); - mWeights.push_back(1); + m_names.push_back("Column"); + m_weights.push_back(1); m_crystals.push_back(CrystalPopulation::presetPopulation(CrystalPopulationPreset::Plate)); - mWeights.push_back(1); + m_names.push_back("Plate"); + m_weights.push_back(1); m_crystals.push_back(CrystalPopulation::presetPopulation(CrystalPopulationPreset::Random)); - mWeights.push_back(1); + m_names.push_back("Random"); + m_weights.push_back(1); } void CrystalPopulationRepository::remove(unsigned int index) { m_crystals.erase(m_crystals.begin() + index); - mWeights.erase(mWeights.begin() + index); + m_names.erase(m_names.begin() + index); + m_weights.erase(m_weights.begin() + index); +} + +void CrystalPopulationRepository::clear() +{ + m_crystals.clear(); + m_names.clear(); + m_weights.clear(); } CrystalPopulation &CrystalPopulationRepository::get(unsigned int index) @@ -43,20 +65,30 @@ CrystalPopulation &CrystalPopulationRepository::get(unsigned int index) return m_crystals[index]; } +void CrystalPopulationRepository::setName(unsigned int index, std::string name) +{ + m_names[index] = name; +} + +std::string CrystalPopulationRepository::getName(unsigned int index) const +{ + return m_names[index]; +} + double CrystalPopulationRepository::getProbability(unsigned int index) const { - unsigned int totalWeights = std::accumulate(mWeights.cbegin(), mWeights.cend(), 0); - return static_cast(mWeights[index]) / totalWeights; + unsigned int totalWeights = std::accumulate(m_weights.cbegin(), m_weights.cend(), 0); + return static_cast(m_weights[index]) / totalWeights; } unsigned int CrystalPopulationRepository::getWeight(unsigned int index) const { - return mWeights[index]; + return m_weights[index]; } void CrystalPopulationRepository::setWeight(unsigned int index, unsigned int weight) { - mWeights[index] = weight; + m_weights[index] = weight; } } diff --git a/src/haloray-core/simulation/crystalPopulationRepository.h b/src/haloray-core/simulation/crystalPopulationRepository.h index d6d3406..2505959 100644 --- a/src/haloray-core/simulation/crystalPopulationRepository.h +++ b/src/haloray-core/simulation/crystalPopulationRepository.h @@ -1,5 +1,6 @@ #pragma once #include +#include #include "crystalPopulation.h" namespace HaloRay @@ -10,17 +11,27 @@ class CrystalPopulationRepository public: CrystalPopulationRepository(); void add(CrystalPopulationPreset preset = Random); + void add(CrystalPopulation population, unsigned int weight, std::string name); void remove(unsigned int index); + void clear(); + CrystalPopulation &get(unsigned int index); - double getProbability(unsigned int index) const; + + void setName(unsigned int index, std::string name); + std::string getName(unsigned int index) const; + unsigned int getWeight(unsigned int index) const; void setWeight(unsigned int index, unsigned int weight); + double getProbability(unsigned int index) const; + unsigned int getCount() const; private: void addDefaults(); std::vector m_crystals; - std::vector mWeights; + std::vector m_weights; + std::vector m_names; + unsigned int m_nextId; }; } diff --git a/src/haloray-core/simulation/simulationEngine.cpp b/src/haloray-core/simulation/simulationEngine.cpp index 7359956..43ddd1b 100644 --- a/src/haloray-core/simulation/simulationEngine.cpp +++ b/src/haloray-core/simulation/simulationEngine.cpp @@ -32,9 +32,7 @@ SimulationEngine::SimulationEngine( m_cameraLockedToLightSource(false), m_multipleScatteringProbability(0.0), m_crystalRepository(crystalRepository), - m_atmosphereEnabled(true), - m_turbidity(5.0), - m_groundAlbedo(0.0) + m_atmosphere(Atmosphere::createDefaultAtmosphere()) { initialize(); } @@ -81,37 +79,18 @@ void SimulationEngine::setLightSource(const LightSource light) emit lightSourceChanged(m_light); } -bool SimulationEngine::getAtmosphereEnabled() const +Atmosphere SimulationEngine::getAtmosphere() const { - return m_atmosphereEnabled; + return m_atmosphere; } -void SimulationEngine::setAtmosphereEnabled(bool enabled) +void SimulationEngine::setAtmosphere(Atmosphere atmosphere) { - clear(); - m_atmosphereEnabled = enabled; -} + if (m_atmosphere == atmosphere) return; -double SimulationEngine::getAtmosphereTurbidity() const -{ - return m_turbidity; -} - -void SimulationEngine::setAtmosphereTurbidity(double turbidity) -{ - clear(); - m_turbidity = turbidity; -} - -double SimulationEngine::getGroundAlbedo() const -{ - return m_groundAlbedo; -} - -void SimulationEngine::setGroundAlbedo(double albedo) -{ clear(); - m_groundAlbedo = albedo; + m_atmosphere = atmosphere; + emit atmosphereChanged(m_atmosphere); } unsigned int SimulationEngine::getOutputTextureHandle() const @@ -147,9 +126,9 @@ void SimulationEngine::step() { ++m_iteration; - if (m_atmosphereEnabled && m_iteration == 1) + if (m_atmosphere.enabled && m_iteration == 1) { - auto skyState = SkyModel::Create(degToRad(m_light.altitude), m_turbidity, m_groundAlbedo, degToRad(m_light.diameter / 2.0)); + auto skyState = SkyModel::Create(degToRad(m_light.altitude), m_atmosphere.turbidity, m_atmosphere.groundAlbedo, degToRad(m_light.diameter / 2.0)); for (auto i = 0u; i < 31; ++i) { m_sunSpectrumCache[i] = skyState.sunSpectrum[i]; @@ -233,7 +212,7 @@ void SimulationEngine::step() m_simulationShader->setUniformValue("camera.hideSubHorizon", m_camera.hideSubHorizon ? 1 : 0); m_simulationShader->setUniformValue("multipleScatter", m_multipleScatteringProbability); - m_simulationShader->setUniformValue("atmosphereEnabled", m_atmosphereEnabled ? 1 : 0); + m_simulationShader->setUniformValue("atmosphereEnabled", m_atmosphere.enabled ? 1 : 0); glDispatchCompute(numRays / 64.0, 1, 1); } diff --git a/src/haloray-core/simulation/simulationEngine.h b/src/haloray-core/simulation/simulationEngine.h index 7d69fa0..62ba29d 100644 --- a/src/haloray-core/simulation/simulationEngine.h +++ b/src/haloray-core/simulation/simulationEngine.h @@ -6,6 +6,7 @@ #include #include "../opengl/texture.h" #include "camera.h" +#include "atmosphere.h" #include "lightSource.h" #include "crystalPopulation.h" #include "crystalPopulationRepository.h" @@ -37,14 +38,8 @@ class SimulationEngine : public QObject, protected QOpenGLFunctions_4_4_Core LightSource getLightSource() const; void setLightSource(const LightSource); - bool getAtmosphereEnabled() const; - void setAtmosphereEnabled(bool enabled); - - double getAtmosphereTurbidity() const; - void setAtmosphereTurbidity(double turbidity); - - double getGroundAlbedo() const; - void setGroundAlbedo(double albedo); + Atmosphere getAtmosphere() const; + void setAtmosphere(Atmosphere); void lockCameraToLightSource(bool locked); @@ -60,6 +55,7 @@ class SimulationEngine : public QObject, protected QOpenGLFunctions_4_4_Core void raysPerStepChanged(unsigned int); void cameraChanged(Camera); void lightSourceChanged(LightSource); + void atmosphereChanged(Atmosphere); void lockCameraToLightSourceChanged(bool); void multipleScatteringProbabilityChanged(double); @@ -88,9 +84,7 @@ class SimulationEngine : public QObject, protected QOpenGLFunctions_4_4_Core float m_multipleScatteringProbability; std::shared_ptr m_crystalRepository; float m_sunSpectrumCache[31]; - bool m_atmosphereEnabled; - double m_turbidity; - double m_groundAlbedo; + Atmosphere m_atmosphere; }; } diff --git a/src/tests/crystalPopulationRepositoryTests/crystalPopulationRepositoryTests.cpp b/src/tests/crystalPopulationRepositoryTests/crystalPopulationRepositoryTests.cpp index 5be2478..cc80034 100644 --- a/src/tests/crystalPopulationRepositoryTests/crystalPopulationRepositoryTests.cpp +++ b/src/tests/crystalPopulationRepositoryTests/crystalPopulationRepositoryTests.cpp @@ -43,6 +43,13 @@ private slots: QCOMPARE(repository.getWeight(1), 1); QCOMPARE(repository.getWeight(2), 1); } + + void clearEmptiesRepository() + { + auto repository = HaloRay::CrystalPopulationRepository(); + repository.clear(); + QCOMPARE(repository.getCount(), 0); + } }; QTEST_MAIN(CrystalPopulationRepositoryTests) From 63353b66ad7b130ba1658df8307416484f0a2dfe Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Fri, 12 Feb 2021 00:18:43 +0200 Subject: [PATCH 114/184] Update changelog --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index e989d6e..560e156 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Created a realistic sky and sun model based on Hosek-Wilkie and Preetham papers - Simulation rate shown in status bar - Ice crystals now have adjustable pyramidal caps +- Possibility to save and load simulations ### Changed From 45f589a893e481044134d469d1fb8c367d57c146 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Fri, 12 Feb 2021 00:22:18 +0200 Subject: [PATCH 115/184] Name crystal populations according to preset If the user adds e.g. a Parry crystal population using the presets in the GUI, the name of the population will be "Parry population" and a running number. --- src/haloray-core/simulation/crystalPopulationRepository.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/haloray-core/simulation/crystalPopulationRepository.cpp b/src/haloray-core/simulation/crystalPopulationRepository.cpp index 7689cc9..70fec1b 100644 --- a/src/haloray-core/simulation/crystalPopulationRepository.cpp +++ b/src/haloray-core/simulation/crystalPopulationRepository.cpp @@ -18,8 +18,9 @@ unsigned int CrystalPopulationRepository::getCount() const void CrystalPopulationRepository::add(CrystalPopulationPreset preset) { + QString presetNameMap[6] = {"Random", "Plate", "Column", "Parry", "Lowitz", "Pyramid"}; m_crystals.push_back(CrystalPopulation::presetPopulation(preset)); - m_names.push_back(QString("Population %1").arg(m_nextId).toStdString()); + m_names.push_back(QString("%1 population %2").arg(presetNameMap[preset]).arg(m_nextId).toStdString()); m_nextId = m_nextId + 1; m_weights.push_back(1); } From 897358b7b0ef9922f11727a84a258d4726c6f311 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Fri, 12 Feb 2021 19:26:42 +0200 Subject: [PATCH 116/184] Set atmosphere via model class when loading a saved file --- src/haloray-core/gui/mainWindow.cpp | 3 +-- src/haloray-core/gui/simulationStateModel.cpp | 9 +++++++++ src/haloray-core/gui/simulationStateModel.h | 2 ++ 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/haloray-core/gui/mainWindow.cpp b/src/haloray-core/gui/mainWindow.cpp index aa7f68e..30deec1 100644 --- a/src/haloray-core/gui/mainWindow.cpp +++ b/src/haloray-core/gui/mainWindow.cpp @@ -172,7 +172,6 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), m_previousTimedIt if (filename.isNull()) return; - QSettings settings(filename, QSettings::Format::IniFormat); auto lightSource = LightSource::createDefaultLightSource(); @@ -225,7 +224,7 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), m_previousTimedIt atmosphere.enabled = settings.value("Atmosphere/Enabled", atmosphere.enabled).toBool(); atmosphere.turbidity = settings.value("Atmosphere/Turbidity", atmosphere.turbidity).toDouble(); atmosphere.groundAlbedo = settings.value("Atmosphere/GroundAlbedo", atmosphere.groundAlbedo).toDouble(); - m_engine->setAtmosphere(atmosphere); + m_simulationStateModel->setAtmosphere(atmosphere); }); setupRenderTimer(); diff --git a/src/haloray-core/gui/simulationStateModel.cpp b/src/haloray-core/gui/simulationStateModel.cpp index c06d33c..6399397 100644 --- a/src/haloray-core/gui/simulationStateModel.cpp +++ b/src/haloray-core/gui/simulationStateModel.cpp @@ -1,4 +1,7 @@ #include "simulationStateModel.h" +#include "../simulation/atmosphere.h" +#include "../simulation/camera.h" +#include "../simulation/lightSource.h" #include "simulation/simulationEngine.h" namespace HaloRay @@ -239,6 +242,12 @@ void SimulationStateModel::setCamera(Camera camera) emit dataChanged(createIndex(0, CameraProjection), createIndex(0, HideSubHorizon)); } +void SimulationStateModel::setAtmosphere(Atmosphere atmosphere) +{ + m_simulationEngine->setAtmosphere(atmosphere); + emit dataChanged(createIndex(0, AtmosphereEnabled), createIndex(0, GroundAlbedo)); +} + void SimulationStateModel::setSunAltitude(float altitude) { auto lightSource = m_simulationEngine->getLightSource(); diff --git a/src/haloray-core/gui/simulationStateModel.h b/src/haloray-core/gui/simulationStateModel.h index 58bdc33..e46de67 100644 --- a/src/haloray-core/gui/simulationStateModel.h +++ b/src/haloray-core/gui/simulationStateModel.h @@ -7,6 +7,7 @@ namespace HaloRay { class SimulationEngine; struct LightSource; struct Camera; +struct Atmosphere; class SimulationStateModel : public QAbstractTableModel { @@ -55,6 +56,7 @@ class SimulationStateModel : public QAbstractTableModel void setLightSource(LightSource lightSource); void setCamera(Camera camera); + void setAtmosphere(Atmosphere atmosphere); private: SimulationEngine *m_simulationEngine; From a26444ab75e77167f32e3152f13feb531b952ec0 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Fri, 12 Feb 2021 22:41:27 +0200 Subject: [PATCH 117/184] Extract saving and loading simulation state to separate functions --- src/haloray-core/gui/mainWindow.cpp | 111 +----------------------- src/haloray-core/gui/stateSaver.cpp | 129 ++++++++++++++++++++++++++++ src/haloray-core/gui/stateSaver.h | 21 +++++ src/haloray-core/haloray-core.pro | 2 + 4 files changed, 155 insertions(+), 108 deletions(-) create mode 100644 src/haloray-core/gui/stateSaver.cpp create mode 100644 src/haloray-core/gui/stateSaver.h diff --git a/src/haloray-core/gui/mainWindow.cpp b/src/haloray-core/gui/mainWindow.cpp index 30deec1..91cfdca 100644 --- a/src/haloray-core/gui/mainWindow.cpp +++ b/src/haloray-core/gui/mainWindow.cpp @@ -16,6 +16,7 @@ #include #include #include +#include "stateSaver.h" #include "../simulation/atmosphere.h" #include "crystalModel.h" #include "openGLWidget.h" @@ -108,61 +109,7 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), m_previousTimedIt if (filename.isNull()) return; - QSettings settings(filename, QSettings::Format::IniFormat); - - settings.beginGroup("LightSource"); - auto lightSource = m_engine->getLightSource(); - settings.setValue("Altitude", (double)lightSource.altitude); - settings.setValue("Diameter", (double)lightSource.diameter); - settings.endGroup(); - - settings.beginGroup("CrystalPopulations"); - settings.beginWriteArray("pop"); - for (auto i = 0u; i < m_crystalRepository->getCount(); ++i) - { - settings.setArrayIndex(i); - settings.setValue("Weight", m_crystalRepository->getWeight(i)); - auto population = m_crystalRepository->get(i); - - settings.setValue("Name", QString::fromStdString(m_crystalRepository->getName(i))); - - settings.setValue("CaRatioAverage", (double)population.caRatioAverage); - settings.setValue("CaRatioStd", (double)population.caRatioStd); - - settings.setValue("TiltDistribution", population.tiltDistribution); - settings.setValue("TiltAverage", (double)population.tiltAverage); - settings.setValue("TiltStd", (double)population.tiltStd); - - settings.setValue("RotationDistribution", population.rotationDistribution); - settings.setValue("RotationAverage", (double)population.rotationAverage); - settings.setValue("RotationStd", (double)population.rotationStd); - - settings.setValue("UpperApexAngle", (double)population.upperApexAngle); - settings.setValue("UpperApexHeightAverage", (double)population.upperApexHeightAverage); - settings.setValue("UpperApexHeightStd", (double)population.upperApexHeightStd); - - settings.setValue("LowerApexAngle", (double)population.lowerApexAngle); - settings.setValue("LowerApexHeightAverage", (double)population.lowerApexHeightAverage); - settings.setValue("LowerApexHeightStd", (double)population.lowerApexHeightStd); - } - settings.endArray(); - settings.endGroup(); - - settings.beginGroup("Camera"); - auto camera = m_engine->getCamera(); - settings.setValue("Projection", (double)camera.projection); - settings.setValue("Pitch", (double)camera.pitch); - settings.setValue("Yaw", (double)camera.yaw); - settings.setValue("FieldOfView", (double)camera.fov); - settings.setValue("HideSubHorizon", camera.hideSubHorizon); - settings.endGroup(); - - settings.beginGroup("Atmosphere"); - auto atmosphere = m_engine->getAtmosphere(); - settings.setValue("Enabled", atmosphere.enabled); - settings.setValue("Turbidity", atmosphere.turbidity); - settings.setValue("GroundAlbedo", atmosphere.groundAlbedo); - settings.endGroup(); + StateSaver::SaveState(filename, m_engine, m_crystalRepository.get()); }); connect(m_loadSimulationAction, &QAction::triggered, [this]() { QString filename = QFileDialog::getOpenFileName(this, @@ -172,59 +119,7 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), m_previousTimedIt if (filename.isNull()) return; - QSettings settings(filename, QSettings::Format::IniFormat); - - auto lightSource = LightSource::createDefaultLightSource(); - lightSource.altitude = settings.value("LightSource/Altitude", lightSource.altitude).toFloat(); - lightSource.diameter = settings.value("LightSource/Diameter", lightSource.diameter).toFloat(); - m_simulationStateModel->setLightSource(lightSource); - - auto camera = Camera::createDefaultCamera(); - camera.projection = (Projection)settings.value("Camera/Projection", camera.projection).toInt(); - camera.pitch = settings.value("Camera/Pitch", camera.pitch).toFloat(); - camera.yaw = settings.value("Camera/Yaw", camera.yaw).toFloat(); - camera.fov = settings.value("Camera/FieldOfView", camera.fov).toFloat(); - camera.hideSubHorizon = settings.value("Camera/HideSubHorizon", camera.hideSubHorizon).toBool(); - m_simulationStateModel->setCamera(camera); - - m_crystalModel->clear(); - auto crystalPopulationCount = settings.beginReadArray("CrystalPopulations/pop"); - for (auto i = 0; i < crystalPopulationCount; ++i) - { - settings.setArrayIndex(i); - auto pop = CrystalPopulation::createRandom(); - unsigned int weight = settings.value("Weight", 1).toUInt(); - - pop.caRatioAverage = settings.value("CaRatioAverage", pop.caRatioAverage).toFloat(); - pop.caRatioStd = settings.value("CaRatioStd", pop.caRatioStd).toFloat(); - - pop.tiltDistribution = settings.value("TiltDistribution", pop.tiltDistribution).toInt(); - pop.tiltAverage = settings.value("TiltAverage", pop.tiltAverage).toFloat(); - pop.tiltStd = settings.value("TiltStd", pop.tiltStd).toFloat(); - - pop.rotationDistribution = settings.value("RotationDistribution", pop.rotationDistribution).toInt(); - pop.rotationAverage = settings.value("RotationAverage", pop.rotationAverage).toFloat(); - pop.rotationStd = settings.value("RotationStd", pop.rotationStd).toFloat(); - - pop.upperApexAngle = settings.value("UpperApexAngle", pop.upperApexAngle).toFloat(); - pop.upperApexHeightAverage = settings.value("UpperApexHeightAverage", pop.upperApexHeightAverage).toFloat(); - pop.upperApexHeightStd = settings.value("UpperApexHeightStd", pop.upperApexHeightStd).toFloat(); - - pop.lowerApexAngle = settings.value("LowerApexAngle", pop.lowerApexAngle).toFloat(); - pop.lowerApexHeightAverage = settings.value("LowerApexHeightAverage", pop.lowerApexHeightAverage).toFloat(); - pop.lowerApexHeightStd = settings.value("LowerApexHeightStd", pop.lowerApexHeightStd).toFloat(); - - auto name = settings.value("Name", "Default name").toString(); - - m_crystalModel->addRow(pop, weight, name); - } - settings.endArray(); - - auto atmosphere = Atmosphere::createDefaultAtmosphere(); - atmosphere.enabled = settings.value("Atmosphere/Enabled", atmosphere.enabled).toBool(); - atmosphere.turbidity = settings.value("Atmosphere/Turbidity", atmosphere.turbidity).toDouble(); - atmosphere.groundAlbedo = settings.value("Atmosphere/GroundAlbedo", atmosphere.groundAlbedo).toDouble(); - m_simulationStateModel->setAtmosphere(atmosphere); + StateSaver::LoadState(filename, m_simulationStateModel, m_crystalModel); }); setupRenderTimer(); diff --git a/src/haloray-core/gui/stateSaver.cpp b/src/haloray-core/gui/stateSaver.cpp new file mode 100644 index 0000000..b1c16f0 --- /dev/null +++ b/src/haloray-core/gui/stateSaver.cpp @@ -0,0 +1,129 @@ +#include "stateSaver.h" +#include +#include +#include "simulationStateModel.h" +#include "crystalModel.h" +#include "../simulation/simulationEngine.h" +#include "../simulation/crystalPopulationRepository.h" + +namespace HaloRay +{ + +void StateSaver::SaveState(QString filename, SimulationEngine *engine, CrystalPopulationRepository *crystals) +{ + QSettings settings(filename, QSettings::Format::IniFormat); + + settings.beginGroup("LightSource"); + auto lightSource = engine->getLightSource(); + settings.setValue("Altitude", (double)lightSource.altitude); + settings.setValue("Diameter", (double)lightSource.diameter); + settings.endGroup(); + + settings.beginGroup("CrystalPopulations"); + settings.beginWriteArray("pop"); + for (auto i = 0u; i < crystals->getCount(); ++i) + { + settings.setArrayIndex(i); + settings.setValue("Weight", crystals->getWeight(i)); + auto population = crystals->get(i); + + settings.setValue("Name", QString::fromStdString(crystals->getName(i))); + + settings.setValue("CaRatioAverage", (double)population.caRatioAverage); + settings.setValue("CaRatioStd", (double)population.caRatioStd); + + settings.setValue("TiltDistribution", population.tiltDistribution); + settings.setValue("TiltAverage", (double)population.tiltAverage); + settings.setValue("TiltStd", (double)population.tiltStd); + + settings.setValue("RotationDistribution", population.rotationDistribution); + settings.setValue("RotationAverage", (double)population.rotationAverage); + settings.setValue("RotationStd", (double)population.rotationStd); + + settings.setValue("UpperApexAngle", (double)population.upperApexAngle); + settings.setValue("UpperApexHeightAverage", (double)population.upperApexHeightAverage); + settings.setValue("UpperApexHeightStd", (double)population.upperApexHeightStd); + + settings.setValue("LowerApexAngle", (double)population.lowerApexAngle); + settings.setValue("LowerApexHeightAverage", (double)population.lowerApexHeightAverage); + settings.setValue("LowerApexHeightStd", (double)population.lowerApexHeightStd); + } + settings.endArray(); + settings.endGroup(); + + settings.beginGroup("Camera"); + auto camera = engine->getCamera(); + settings.setValue("Projection", (double)camera.projection); + settings.setValue("Pitch", (double)camera.pitch); + settings.setValue("Yaw", (double)camera.yaw); + settings.setValue("FieldOfView", (double)camera.fov); + settings.setValue("HideSubHorizon", camera.hideSubHorizon); + settings.endGroup(); + + settings.beginGroup("Atmosphere"); + auto atmosphere = engine->getAtmosphere(); + settings.setValue("Enabled", atmosphere.enabled); + settings.setValue("Turbidity", atmosphere.turbidity); + settings.setValue("GroundAlbedo", atmosphere.groundAlbedo); + settings.endGroup(); +} + +void StateSaver::LoadState(QString filename, SimulationStateModel *simState, CrystalModel *crystalModel) +{ + QSettings settings(filename, QSettings::Format::IniFormat); + + auto lightSource = LightSource::createDefaultLightSource(); + lightSource.altitude = settings.value("LightSource/Altitude", lightSource.altitude).toFloat(); + lightSource.diameter = settings.value("LightSource/Diameter", lightSource.diameter).toFloat(); + simState->setLightSource(lightSource); + + auto camera = Camera::createDefaultCamera(); + camera.projection = (Projection)settings.value("Camera/Projection", camera.projection).toInt(); + camera.pitch = settings.value("Camera/Pitch", camera.pitch).toFloat(); + camera.yaw = settings.value("Camera/Yaw", camera.yaw).toFloat(); + camera.fov = settings.value("Camera/FieldOfView", camera.fov).toFloat(); + camera.hideSubHorizon = settings.value("Camera/HideSubHorizon", camera.hideSubHorizon).toBool(); + simState->setCamera(camera); + + crystalModel->clear(); + auto crystalPopulationCount = settings.beginReadArray("CrystalPopulations/pop"); + for (auto i = 0; i < crystalPopulationCount; ++i) + { + settings.setArrayIndex(i); + auto pop = CrystalPopulation::createRandom(); + unsigned int weight = settings.value("Weight", 1).toUInt(); + + pop.caRatioAverage = settings.value("CaRatioAverage", pop.caRatioAverage).toFloat(); + pop.caRatioStd = settings.value("CaRatioStd", pop.caRatioStd).toFloat(); + + pop.tiltDistribution = settings.value("TiltDistribution", pop.tiltDistribution).toInt(); + pop.tiltAverage = settings.value("TiltAverage", pop.tiltAverage).toFloat(); + pop.tiltStd = settings.value("TiltStd", pop.tiltStd).toFloat(); + + pop.rotationDistribution = settings.value("RotationDistribution", pop.rotationDistribution).toInt(); + pop.rotationAverage = settings.value("RotationAverage", pop.rotationAverage).toFloat(); + pop.rotationStd = settings.value("RotationStd", pop.rotationStd).toFloat(); + + pop.upperApexAngle = settings.value("UpperApexAngle", pop.upperApexAngle).toFloat(); + pop.upperApexHeightAverage = settings.value("UpperApexHeightAverage", pop.upperApexHeightAverage).toFloat(); + pop.upperApexHeightStd = settings.value("UpperApexHeightStd", pop.upperApexHeightStd).toFloat(); + + pop.lowerApexAngle = settings.value("LowerApexAngle", pop.lowerApexAngle).toFloat(); + pop.lowerApexHeightAverage = settings.value("LowerApexHeightAverage", pop.lowerApexHeightAverage).toFloat(); + pop.lowerApexHeightStd = settings.value("LowerApexHeightStd", pop.lowerApexHeightStd).toFloat(); + + auto name = settings.value("Name", "Default name").toString(); + + crystalModel->addRow(pop, weight, name); + } + settings.endArray(); + + auto atmosphere = Atmosphere::createDefaultAtmosphere(); + atmosphere.enabled = settings.value("Atmosphere/Enabled", atmosphere.enabled).toBool(); + atmosphere.turbidity = settings.value("Atmosphere/Turbidity", atmosphere.turbidity).toDouble(); + atmosphere.groundAlbedo = settings.value("Atmosphere/GroundAlbedo", atmosphere.groundAlbedo).toDouble(); + simState->setAtmosphere(atmosphere); +} + + +} diff --git a/src/haloray-core/gui/stateSaver.h b/src/haloray-core/gui/stateSaver.h new file mode 100644 index 0000000..11a50ba --- /dev/null +++ b/src/haloray-core/gui/stateSaver.h @@ -0,0 +1,21 @@ +#pragma once + +class QString; + +namespace HaloRay +{ + +class SimulationEngine; +class SimulationStateModel; +class CrystalModel; +class CrystalPopulationRepository; + +class StateSaver +{ +public: + static void SaveState(QString filename, SimulationEngine *engine, CrystalPopulationRepository *crystals); + static void LoadState(QString filename, SimulationStateModel *simState, CrystalModel *crystalModel); +}; + +} + diff --git a/src/haloray-core/haloray-core.pro b/src/haloray-core/haloray-core.pro index 6edbe4c..5160b3d 100644 --- a/src/haloray-core/haloray-core.pro +++ b/src/haloray-core/haloray-core.pro @@ -34,6 +34,7 @@ HEADERS += \ gui/renderButton.h \ gui/simulationStateModel.h \ gui/sliderSpinBox.h \ + gui/stateSaver.h \ gui/viewSettingsWidget.h \ opengl/texture.h \ opengl/textureRenderer.h \ @@ -62,6 +63,7 @@ SOURCES += \ gui/renderButton.cpp \ gui/simulationStateModel.cpp \ gui/sliderSpinBox.cpp \ + gui/stateSaver.cpp \ gui/viewSettingsWidget.cpp \ opengl/texture.cpp \ opengl/textureRenderer.cpp \ From 19b2e0a4b797dd263232058fe308d083b0e392de Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 13 Feb 2021 16:15:39 +0200 Subject: [PATCH 118/184] Move atmosphere toggling to separate checkbox --- src/haloray-core/gui/atmosphereSettingsWidget.cpp | 9 ++++++--- src/haloray-core/gui/atmosphereSettingsWidget.h | 3 +++ 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/haloray-core/gui/atmosphereSettingsWidget.cpp b/src/haloray-core/gui/atmosphereSettingsWidget.cpp index e36cbd1..c4a8b0a 100644 --- a/src/haloray-core/gui/atmosphereSettingsWidget.cpp +++ b/src/haloray-core/gui/atmosphereSettingsWidget.cpp @@ -1,6 +1,7 @@ #include "atmosphereSettingsWidget.h" #include #include +#include #include "simulationStateModel.h" #include "sliderSpinBox.h" @@ -16,12 +17,12 @@ AtmosphereSettingsWidget::AtmosphereSettingsWidget(SimulationStateModel *viewMod m_mapper = new QDataWidgetMapper(this); m_mapper->setSubmitPolicy(QDataWidgetMapper::AutoSubmit); m_mapper->setModel(m_viewModel); - m_mapper->addMapping(this, SimulationStateModel::AtmosphereEnabled, "checked"); + m_mapper->addMapping(m_atmosphereEnabledCheckBox, SimulationStateModel::AtmosphereEnabled, "checked"); m_mapper->addMapping(m_turbiditySlider, SimulationStateModel::Turbidity); m_mapper->addMapping(m_groundAlbedoSlider, SimulationStateModel::GroundAlbedo); m_mapper->toFirst(); - connect(this, &AtmosphereSettingsWidget::toggled, m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); + connect(m_atmosphereEnabledCheckBox, &QCheckBox::toggled, m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); connect(m_turbiditySlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); connect(m_groundAlbedoSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); } @@ -29,13 +30,15 @@ AtmosphereSettingsWidget::AtmosphereSettingsWidget(SimulationStateModel *viewMod void AtmosphereSettingsWidget::setupUi() { setMaximumWidth(400); - this->setCheckable(true); + + m_atmosphereEnabledCheckBox = new QCheckBox(); m_turbiditySlider = new SliderSpinBox(1.0, 9.0); m_groundAlbedoSlider = new SliderSpinBox(0.0, 1.0); auto layout = new QFormLayout(this); + layout->addRow(tr("Atmosphere enabled"), m_atmosphereEnabledCheckBox); layout->addRow(tr("Turbidity"), m_turbiditySlider); layout->addRow(tr("Ground albedo"), m_groundAlbedoSlider); } diff --git a/src/haloray-core/gui/atmosphereSettingsWidget.h b/src/haloray-core/gui/atmosphereSettingsWidget.h index 3a42e80..31a730f 100644 --- a/src/haloray-core/gui/atmosphereSettingsWidget.h +++ b/src/haloray-core/gui/atmosphereSettingsWidget.h @@ -4,6 +4,7 @@ #include class QDataWidgetMapper; +class QCheckBox; namespace HaloRay { @@ -23,6 +24,8 @@ class AtmosphereSettingsWidget : public QGroupBox SimulationStateModel *m_viewModel; SliderSpinBox *m_turbiditySlider; SliderSpinBox *m_groundAlbedoSlider; + QCheckBox *m_atmosphereEnabledCheckBox; + QDataWidgetMapper *m_mapper; }; From 2e04068d3be6a3ac3ec58d84905d7d3a11a39122 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 13 Feb 2021 16:46:04 +0200 Subject: [PATCH 119/184] Start implementing collapsible box --- src/haloray-core/gui/collapsibleBox.cpp | 30 +++++++++++++++++++++++++ src/haloray-core/gui/collapsibleBox.h | 26 +++++++++++++++++++++ src/haloray-core/haloray-core.pro | 2 ++ 3 files changed, 58 insertions(+) create mode 100644 src/haloray-core/gui/collapsibleBox.cpp create mode 100644 src/haloray-core/gui/collapsibleBox.h diff --git a/src/haloray-core/gui/collapsibleBox.cpp b/src/haloray-core/gui/collapsibleBox.cpp new file mode 100644 index 0000000..c926854 --- /dev/null +++ b/src/haloray-core/gui/collapsibleBox.cpp @@ -0,0 +1,30 @@ +#include "collapsibleBox.h" +#include +#include + +namespace HaloRay +{ + +CollapsibleBox::CollapsibleBox(QString title, QWidget *parent) + : QWidget(parent) +{ + m_headerButton = new QPushButton(title); + m_headerButton->setCheckable(true); + + m_content = new QWidget(); + + m_mainLayout = new QVBoxLayout(this); + m_mainLayout->addWidget(m_headerButton); + m_mainLayout->addWidget(m_content); + + connect(m_headerButton, &QPushButton::toggled, m_content, &QWidget::setVisible); +} + +QWidget *CollapsibleBox::contentWidget() const +{ + return m_content; +} + + + +} diff --git a/src/haloray-core/gui/collapsibleBox.h b/src/haloray-core/gui/collapsibleBox.h new file mode 100644 index 0000000..e2b42fe --- /dev/null +++ b/src/haloray-core/gui/collapsibleBox.h @@ -0,0 +1,26 @@ +#pragma once + +#include +#include + +class QPushButton; +class QVBoxLayout; + +namespace HaloRay +{ + +class CollapsibleBox : public QWidget +{ + Q_OBJECT +public: + CollapsibleBox(QString title, QWidget *parent = nullptr); + +private: + explicit CollapsibleBox(QWidget *) {}; + + QPushButton *m_headerButton; + QVBoxLayout *m_mainLayout; + QWidget *m_content; +}; + +} diff --git a/src/haloray-core/haloray-core.pro b/src/haloray-core/haloray-core.pro index 5160b3d..6c2adb4 100644 --- a/src/haloray-core/haloray-core.pro +++ b/src/haloray-core/haloray-core.pro @@ -26,6 +26,7 @@ HALORAY_VERSION = $$(HALORAY_VERSION) HEADERS += \ gui/addCrystalPopulationButton.h \ gui/atmosphereSettingsWidget.h \ + gui/collapsibleBox.h \ gui/crystalModel.h \ gui/crystalSettingsWidget.h \ gui/generalSettingsWidget.h \ @@ -55,6 +56,7 @@ HEADERS += \ SOURCES += \ gui/addCrystalPopulationButton.cpp \ gui/atmosphereSettingsWidget.cpp \ + gui/collapsibleBox.cpp \ gui/crystalModel.cpp \ gui/crystalSettingsWidget.cpp \ gui/generalSettingsWidget.cpp \ From 3996c5b2dd45c00301c7cf7a507aaf7c3c13e305 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 13 Feb 2021 16:55:18 +0200 Subject: [PATCH 120/184] Convert settings group boxes to collapsible boxes --- src/haloray-core/gui/atmosphereSettingsWidget.cpp | 4 ++-- src/haloray-core/gui/atmosphereSettingsWidget.h | 4 ++-- src/haloray-core/gui/collapsibleBox.cpp | 10 ++++++++++ src/haloray-core/gui/collapsibleBox.h | 3 +++ src/haloray-core/gui/crystalSettingsWidget.cpp | 6 ++++-- src/haloray-core/gui/crystalSettingsWidget.h | 4 ++-- src/haloray-core/gui/generalSettingsWidget.cpp | 4 ++-- src/haloray-core/gui/generalSettingsWidget.h | 4 ++-- src/haloray-core/gui/mainWindow.cpp | 1 + src/haloray-core/gui/viewSettingsWidget.cpp | 4 ++-- src/haloray-core/gui/viewSettingsWidget.h | 4 ++-- 11 files changed, 32 insertions(+), 16 deletions(-) diff --git a/src/haloray-core/gui/atmosphereSettingsWidget.cpp b/src/haloray-core/gui/atmosphereSettingsWidget.cpp index c4a8b0a..84ff61b 100644 --- a/src/haloray-core/gui/atmosphereSettingsWidget.cpp +++ b/src/haloray-core/gui/atmosphereSettingsWidget.cpp @@ -9,7 +9,7 @@ namespace HaloRay { AtmosphereSettingsWidget::AtmosphereSettingsWidget(SimulationStateModel *viewModel, QWidget *parent) - : QGroupBox("Atmosphere settings", parent), + : CollapsibleBox("Atmosphere settings", false, parent), m_viewModel(viewModel) { setupUi(); @@ -37,7 +37,7 @@ void AtmosphereSettingsWidget::setupUi() m_groundAlbedoSlider = new SliderSpinBox(0.0, 1.0); - auto layout = new QFormLayout(this); + auto layout = new QFormLayout(this->contentWidget()); layout->addRow(tr("Atmosphere enabled"), m_atmosphereEnabledCheckBox); layout->addRow(tr("Turbidity"), m_turbiditySlider); layout->addRow(tr("Ground albedo"), m_groundAlbedoSlider); diff --git a/src/haloray-core/gui/atmosphereSettingsWidget.h b/src/haloray-core/gui/atmosphereSettingsWidget.h index 31a730f..9fb15c4 100644 --- a/src/haloray-core/gui/atmosphereSettingsWidget.h +++ b/src/haloray-core/gui/atmosphereSettingsWidget.h @@ -1,7 +1,7 @@ #pragma once -#include #include +#include "collapsibleBox.h" class QDataWidgetMapper; class QCheckBox; @@ -12,7 +12,7 @@ namespace HaloRay class SimulationStateModel; class SliderSpinBox; -class AtmosphereSettingsWidget : public QGroupBox +class AtmosphereSettingsWidget : public CollapsibleBox { Q_OBJECT public: diff --git a/src/haloray-core/gui/collapsibleBox.cpp b/src/haloray-core/gui/collapsibleBox.cpp index c926854..e65e2c3 100644 --- a/src/haloray-core/gui/collapsibleBox.cpp +++ b/src/haloray-core/gui/collapsibleBox.cpp @@ -10,6 +10,7 @@ CollapsibleBox::CollapsibleBox(QString title, QWidget *parent) { m_headerButton = new QPushButton(title); m_headerButton->setCheckable(true); + m_headerButton->setChecked(true); m_content = new QWidget(); @@ -17,9 +18,18 @@ CollapsibleBox::CollapsibleBox(QString title, QWidget *parent) m_mainLayout->addWidget(m_headerButton); m_mainLayout->addWidget(m_content); + m_mainLayout->setSpacing(0); + m_mainLayout->setMargin(0); + connect(m_headerButton, &QPushButton::toggled, m_content, &QWidget::setVisible); } +CollapsibleBox::CollapsibleBox(QString title, bool collapsed, QWidget *parent) + : CollapsibleBox(title, parent) +{ + m_headerButton->setChecked(collapsed); +} + QWidget *CollapsibleBox::contentWidget() const { return m_content; diff --git a/src/haloray-core/gui/collapsibleBox.h b/src/haloray-core/gui/collapsibleBox.h index e2b42fe..6bd7548 100644 --- a/src/haloray-core/gui/collapsibleBox.h +++ b/src/haloray-core/gui/collapsibleBox.h @@ -14,6 +14,9 @@ class CollapsibleBox : public QWidget Q_OBJECT public: CollapsibleBox(QString title, QWidget *parent = nullptr); + CollapsibleBox(QString title, bool collapsed, QWidget * parent = nullptr); + + QWidget *contentWidget() const; private: explicit CollapsibleBox(QWidget *) {}; diff --git a/src/haloray-core/gui/crystalSettingsWidget.cpp b/src/haloray-core/gui/crystalSettingsWidget.cpp index 29372d2..5fa8f9c 100644 --- a/src/haloray-core/gui/crystalSettingsWidget.cpp +++ b/src/haloray-core/gui/crystalSettingsWidget.cpp @@ -8,6 +8,7 @@ #include #include #include +#include #include "sliderSpinBox.h" #include "addCrystalPopulationButton.h" #include "../simulation/crystalPopulation.h" @@ -17,7 +18,7 @@ namespace HaloRay { CrystalSettingsWidget::CrystalSettingsWidget(CrystalModel *model, QWidget *parent) - : QGroupBox("Crystal population settings", parent), + : CollapsibleBox("Crystal population settings", false, parent), m_model(model) { setupUi(); @@ -111,6 +112,7 @@ CrystalSettingsWidget::CrystalSettingsWidget(CrystalModel *model, QWidget *paren void CrystalSettingsWidget::setupUi() { setMaximumWidth(400); + setMinimumWidth(350); m_populationComboBox = new QComboBox(); m_populationComboBox->setEditable(true); @@ -168,7 +170,7 @@ void CrystalSettingsWidget::setupUi() m_weightSpinBox->setMinimum(0); m_weightSpinBox->setMaximum(10000); - auto mainLayout = new QFormLayout(this); + auto mainLayout = new QFormLayout(this->contentWidget()); auto populationButtonLayout = new QHBoxLayout(); populationButtonLayout->addWidget(m_populationComboBox); diff --git a/src/haloray-core/gui/crystalSettingsWidget.h b/src/haloray-core/gui/crystalSettingsWidget.h index 54e7194..23f94e1 100644 --- a/src/haloray-core/gui/crystalSettingsWidget.h +++ b/src/haloray-core/gui/crystalSettingsWidget.h @@ -1,5 +1,5 @@ #pragma once -#include +#include "collapsibleBox.h" #include class QToolButton; @@ -16,7 +16,7 @@ class AddCrystalPopulationButton; class SliderSpinBox; class CrystalModel; -class CrystalSettingsWidget : public QGroupBox +class CrystalSettingsWidget : public CollapsibleBox { Q_OBJECT public: diff --git a/src/haloray-core/gui/generalSettingsWidget.cpp b/src/haloray-core/gui/generalSettingsWidget.cpp index ae65049..ab491b0 100644 --- a/src/haloray-core/gui/generalSettingsWidget.cpp +++ b/src/haloray-core/gui/generalSettingsWidget.cpp @@ -8,7 +8,7 @@ namespace HaloRay { GeneralSettingsWidget::GeneralSettingsWidget(SimulationStateModel *viewModel, QWidget *parent) - : QGroupBox("General settings", parent), + : CollapsibleBox("General settings", true, parent), m_viewModel(viewModel) { setupUi(); @@ -65,7 +65,7 @@ void GeneralSettingsWidget::setupUi() m_multipleScatteringSlider->setMinimum(0.0); m_multipleScatteringSlider->setMaximum(1.0); - auto layout = new QFormLayout(this); + auto layout = new QFormLayout(this->contentWidget()); layout->addRow(tr("Sun altitude"), m_sunAltitudeSlider); layout->addRow(tr("Sun diameter"), m_sunDiameterSpinBox); layout->addRow(tr("Rays per frame"), m_raysPerFrameSpinBox); diff --git a/src/haloray-core/gui/generalSettingsWidget.h b/src/haloray-core/gui/generalSettingsWidget.h index 0a8d3f9..f1274bc 100644 --- a/src/haloray-core/gui/generalSettingsWidget.h +++ b/src/haloray-core/gui/generalSettingsWidget.h @@ -1,8 +1,8 @@ #pragma once -#include #include #include "../simulation/lightSource.h" #include "simulationStateModel.h" +#include "collapsibleBox.h" class QDoubleSpinBox; class QSpinBox; @@ -12,7 +12,7 @@ namespace HaloRay class SliderSpinBox; -class GeneralSettingsWidget : public QGroupBox +class GeneralSettingsWidget : public CollapsibleBox { Q_OBJECT public: diff --git a/src/haloray-core/gui/mainWindow.cpp b/src/haloray-core/gui/mainWindow.cpp index 91cfdca..f9bd31a 100644 --- a/src/haloray-core/gui/mainWindow.cpp +++ b/src/haloray-core/gui/mainWindow.cpp @@ -16,6 +16,7 @@ #include #include #include +#include "collapsibleBox.h" #include "stateSaver.h" #include "../simulation/atmosphere.h" #include "crystalModel.h" diff --git a/src/haloray-core/gui/viewSettingsWidget.cpp b/src/haloray-core/gui/viewSettingsWidget.cpp index 6f4f3d9..f820156 100644 --- a/src/haloray-core/gui/viewSettingsWidget.cpp +++ b/src/haloray-core/gui/viewSettingsWidget.cpp @@ -11,7 +11,7 @@ namespace HaloRay { ViewSettingsWidget::ViewSettingsWidget(SimulationStateModel *viewModel, QWidget *parent) - : QGroupBox("View settings", parent), + : CollapsibleBox("View settings", false, parent), m_viewModel(viewModel) { setupUi(); @@ -72,7 +72,7 @@ void ViewSettingsWidget::setupUi() m_lockToLightSource = new QCheckBox(); - auto layout = new QFormLayout(this); + auto layout = new QFormLayout(this->contentWidget()); layout->addRow(tr("Camera projection"), m_cameraProjectionComboBox); layout->addRow(tr("Field of view"), m_fieldOfViewSlider); layout->addRow(tr("Pitch"), m_pitchSlider); diff --git a/src/haloray-core/gui/viewSettingsWidget.h b/src/haloray-core/gui/viewSettingsWidget.h index eb1b1f3..130d711 100644 --- a/src/haloray-core/gui/viewSettingsWidget.h +++ b/src/haloray-core/gui/viewSettingsWidget.h @@ -1,5 +1,5 @@ #pragma once -#include +#include "collapsibleBox.h" #include "../simulation/camera.h" class QComboBox; @@ -12,7 +12,7 @@ namespace HaloRay class SliderSpinBox; class SimulationStateModel; -class ViewSettingsWidget : public QGroupBox +class ViewSettingsWidget : public CollapsibleBox { Q_OBJECT public: From 5baa80deed01c45f75e552353d8b0edc4350b080 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 13 Feb 2021 17:38:06 +0200 Subject: [PATCH 121/184] Update changelog --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 560e156..602a14e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -20,6 +20,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Build system switched to qmake from CMake - Rewrote most of the GUI code to use Qt model/view architecture - Triangle normals are now cached during raytracing +- The settings groups in the side panel are now collapsible ### Fixed From 24e697b8a41eae084e74d5d17f14d5d8b4893173 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 13 Feb 2021 20:42:32 +0200 Subject: [PATCH 122/184] Add shader support for adjustable prism faces Now the crystal shape is adjusted based on distances of the prism faces from the C-axis. Any UI controls for them are still missing, and the shader does not contain support for adding variance to the distances yet. --- .../resources/shaders/raytrace.glsl | 72 +++++++++++++++++++ .../simulation/simulationEngine.cpp | 8 +++ 2 files changed, 80 insertions(+) diff --git a/src/haloray-core/resources/shaders/raytrace.glsl b/src/haloray-core/resources/shaders/raytrace.glsl index ca5dde7..faceb05 100644 --- a/src/haloray-core/resources/shaders/raytrace.glsl +++ b/src/haloray-core/resources/shaders/raytrace.glsl @@ -36,6 +36,8 @@ uniform struct crystalProperties_t float lowerApexAngle; float lowerApexHeightAverage; float lowerApexHeightStd; + + float prismFaceDistances[6]; } crystalProperties; #define PROJECTION_STEREOGRAPHIC 0 @@ -63,6 +65,13 @@ struct intersection { vec3 hitPoint; }; +/* + Out of this original vertex data only the + Y coordinates are kept, while the X and Z + coordinates are overwritten based on the + prism face distances. The data is still + kept here as reference for now. */ + vec3 vertices[] = vec3[]( vec3(0.0, 1.0, 1.0), vec3(-0.8660254038, 1.0, 0.5), @@ -495,14 +504,77 @@ vec3 castRayThroughCrystal(vec3 rayDirection, float wavelength) return resultRay; } +/* Lines are represented in Hesse normal form, where X component + of the vector is the closest distance from origin to the line, + and Y component of the vector is the angle of the line's normal + in radians. */ +vec2 lineIntersect(vec2 line1, vec2 line2) +{ + float p1 = line1.x; + float theta1 = line1.y; + + float p2 = line2.x; + float theta2 = line2.y; + + float deltaSine = sin(theta2 - theta1); + float x = (p1 * sin(theta2) - p2 * sin(theta1)) / deltaSine; + float y = (p2 * cos(theta1) - p1 * cos(theta2)) / deltaSine; + + return vec2(x, y); +} + void initializeCrystal() { + float deltaAngle = radians(60.0); + for (int face = 0; face < 6; face = face + 2) + { + int previousFace = face == 0 ? 5 : face - 1; + int nextFace = face + 1; + + float previousAngle = (face + 1) * deltaAngle; + float currentAngle = previousAngle + deltaAngle; + float nextAngle = previousAngle + 2.0 * deltaAngle; + + float previousDistance = crystalProperties.prismFaceDistances[previousFace]; + float currentDistance = crystalProperties.prismFaceDistances[face]; + float nextDistance = crystalProperties.prismFaceDistances[nextFace]; + + vec2 previousLine = vec2(previousDistance, previousAngle); + vec2 currentLine = vec2(currentDistance, currentAngle); + vec2 nextLine = vec2(nextDistance, nextAngle); + + vec2 previousCurrentIntersection = lineIntersect(previousLine, currentLine); + vec2 currentNextIntersection = lineIntersect(currentLine, nextLine); + vec2 previousNextIntersection = lineIntersect(previousLine, nextLine); + + float previousCurrentIntersectionDistance = length(previousCurrentIntersection); + float currentNextIntersectionDistance = length(currentNextIntersection); + float previousNextIntersectionDistance = length(previousNextIntersection); + + vec2 v1 = previousCurrentIntersectionDistance < previousNextIntersectionDistance ? previousCurrentIntersection : previousNextIntersection; + vec2 v2 = currentNextIntersectionDistance < previousNextIntersectionDistance ? currentNextIntersection : previousNextIntersection; + vertices[face].xz = v1; + vertices[face + 1].xz = v2; + + // Corresponding vertices of each crystal layer have the same X and Z coordinates + vertices[face + 6].xz = v1; + vertices[face + 6 + 1].xz = v2; + + vertices[face + 12].xz = v1; + vertices[face + 12 + 1].xz = v2; + + vertices[face + 18].xz = v1; + vertices[face + 18 + 1].xz = v2; + } + + // Stretch the crystal to correct C/A ratio float caMultiplier = max(0.0, crystalProperties.caRatioAverage + randn().x * crystalProperties.caRatioStd); for (int i = 0; i < vertices.length(); ++i) { vertices[i].y *= max(0.0, caMultiplier); } + // Scale pyramid caps float upperApexMaxHeight = 1.0 / tan(crystalProperties.upperApexAngle / 2.0); float lowerApexMaxHeight = 1.0 / tan(crystalProperties.lowerApexAngle / 2.0); diff --git a/src/haloray-core/simulation/simulationEngine.cpp b/src/haloray-core/simulation/simulationEngine.cpp index 43ddd1b..c90c10d 100644 --- a/src/haloray-core/simulation/simulationEngine.cpp +++ b/src/haloray-core/simulation/simulationEngine.cpp @@ -205,6 +205,14 @@ void SimulationEngine::step() m_simulationShader->setUniformValue("crystalProperties.lowerApexHeightAverage", crystals.lowerApexHeightAverage); m_simulationShader->setUniformValue("crystalProperties.lowerApexHeightStd", crystals.lowerApexHeightStd); + // Temporary hack just to populate the prismFaceDistances uniform before the actual UI controls exist + float prismFaceDistances[6]; + for (auto face = 0; face < 6; ++face) + { + prismFaceDistances[face] = 1.0f; + } + m_simulationShader->setUniformValueArray("crystalProperties.prismFaceDistances", prismFaceDistances, 6, 1); + m_simulationShader->setUniformValue("camera.pitch", degToRad(m_camera.pitch)); m_simulationShader->setUniformValue("camera.yaw", degToRad(m_camera.yaw)); m_simulationShader->setUniformValue("camera.focalLength", m_camera.getFocalLength()); From c2e9161d3d56e1dc6542d23af61c98c02a0afbdb Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 13 Feb 2021 22:47:37 +0200 Subject: [PATCH 123/184] Add UI controls for prism face distances Still need to check if the prism face numbering corresponds to convention where face number 3 is the topmost one with Parry crystals. --- src/haloray-core/gui/crystalModel.cpp | 30 ++++++++++++ src/haloray-core/gui/crystalModel.h | 6 +++ .../gui/crystalSettingsWidget.cpp | 46 ++++++++++++++----- src/haloray-core/gui/crystalSettingsWidget.h | 2 + .../simulation/crystalPopulation.cpp | 13 ++++++ .../simulation/crystalPopulation.h | 7 +++ .../simulation/simulationEngine.cpp | 9 +--- 7 files changed, 94 insertions(+), 19 deletions(-) diff --git a/src/haloray-core/gui/crystalModel.cpp b/src/haloray-core/gui/crystalModel.cpp index c07f115..fe93db3 100644 --- a/src/haloray-core/gui/crystalModel.cpp +++ b/src/haloray-core/gui/crystalModel.cpp @@ -71,6 +71,18 @@ QVariant CrystalModel::data(const QModelIndex &index, int role) const return m_crystals->getWeight(row); case PopulationName: return QString::fromStdString(m_crystals->getName(row)); + case PrismFaceDistance1: + return crystal.prismFaceDistances[0]; + case PrismFaceDistance2: + return crystal.prismFaceDistances[1]; + case PrismFaceDistance3: + return crystal.prismFaceDistances[2]; + case PrismFaceDistance4: + return crystal.prismFaceDistances[3]; + case PrismFaceDistance5: + return crystal.prismFaceDistances[4]; + case PrismFaceDistance6: + return crystal.prismFaceDistances[5]; } return QVariant(); @@ -138,6 +150,24 @@ bool CrystalModel::setData(const QModelIndex &index, const QVariant &value, int case PopulationName: m_crystals->setName(row, value.toString().toStdString()); break; + case PrismFaceDistance1: + crystal.prismFaceDistances[0] = value.toFloat(); + break; + case PrismFaceDistance2: + crystal.prismFaceDistances[1] = value.toFloat(); + break; + case PrismFaceDistance3: + crystal.prismFaceDistances[2] = value.toFloat(); + break; + case PrismFaceDistance4: + crystal.prismFaceDistances[3] = value.toFloat(); + break; + case PrismFaceDistance5: + crystal.prismFaceDistances[4] = value.toFloat(); + break; + case PrismFaceDistance6: + crystal.prismFaceDistances[5] = value.toFloat(); + break; default: break; } diff --git a/src/haloray-core/gui/crystalModel.h b/src/haloray-core/gui/crystalModel.h index da8a0c5..ede6189 100644 --- a/src/haloray-core/gui/crystalModel.h +++ b/src/haloray-core/gui/crystalModel.h @@ -37,6 +37,12 @@ class CrystalModel : public QAbstractTableModel LowerApexHeightStd, PopulationWeight, PopulationName, + PrismFaceDistance1, + PrismFaceDistance2, + PrismFaceDistance3, + PrismFaceDistance4, + PrismFaceDistance5, + PrismFaceDistance6, NUM_COLUMNS }; diff --git a/src/haloray-core/gui/crystalSettingsWidget.cpp b/src/haloray-core/gui/crystalSettingsWidget.cpp index 5fa8f9c..b0bb9df 100644 --- a/src/haloray-core/gui/crystalSettingsWidget.cpp +++ b/src/haloray-core/gui/crystalSettingsWidget.cpp @@ -53,6 +53,10 @@ CrystalSettingsWidget::CrystalSettingsWidget(CrystalModel *model, QWidget *paren m_mapper->addMapping(m_lowerApexHeightStdSlider, CrystalModel::LowerApexHeightStd); m_mapper->addMapping(m_weightSpinBox, CrystalModel::PopulationWeight); m_mapper->addMapping(m_populationComboBox, CrystalModel::PopulationName, "currentText"); + for (auto i = 0; i < 6; ++i) + { + m_mapper->addMapping(m_prismFaceDistanceSliders[i], CrystalModel::PrismFaceDistance1 + i); + } m_mapper->toFirst(); m_mapper->setSubmitPolicy(QDataWidgetMapper::SubmitPolicy::AutoSubmit); @@ -76,6 +80,10 @@ CrystalSettingsWidget::CrystalSettingsWidget(CrystalModel *model, QWidget *paren connect(m_lowerApexAngleSpinBox, QOverload::of(&QDoubleSpinBox::valueChanged), m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); connect(m_lowerApexHeightAverageSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); connect(m_lowerApexHeightStdSlider, &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); + for (auto i = 0; i < 6; ++i) + { + connect(m_prismFaceDistanceSliders[i], &SliderSpinBox::valueChanged, m_mapper, &QDataWidgetMapper::submit, Qt::QueuedConnection); + } setupPopulationComboBoxConnections(); @@ -170,6 +178,11 @@ void CrystalSettingsWidget::setupUi() m_weightSpinBox->setMinimum(0); m_weightSpinBox->setMaximum(10000); + for (auto i = 0; i < 6; ++i) + { + m_prismFaceDistanceSliders[i] = new SliderSpinBox(0.0, 3.0); + } + auto mainLayout = new QFormLayout(this->contentWidget()); auto populationButtonLayout = new QHBoxLayout(); @@ -185,17 +198,6 @@ void CrystalSettingsWidget::setupUi() mainLayout->addRow(tr("C/A ratio std."), m_caRatioStdSlider); mainLayout->addItem(new QSpacerItem(0, 5)); - auto pyramidGroupBox = new QGroupBox(tr("Pyramid caps")); - auto pyramidLayout = new QFormLayout(pyramidGroupBox); - mainLayout->addRow(pyramidGroupBox); - pyramidLayout->addRow(tr("Upper apex angle"), m_upperApexAngleSpinBox); - pyramidLayout->addRow(tr("Upper apex average height"), m_upperApexHeightAverageSlider); - pyramidLayout->addRow(tr("Upper apex height std."), m_upperApexHeightStdSlider); - pyramidLayout->addItem(new QSpacerItem(0, 5)); - pyramidLayout->addRow(tr("Lower apex angle"), m_lowerApexAngleSpinBox); - pyramidLayout->addRow(tr("Lower apex average height"), m_lowerApexHeightAverageSlider); - pyramidLayout->addRow(tr("Lower apex height std."), m_lowerApexHeightStdSlider); - auto tiltGroupBox = new QGroupBox(tr("C-axis tilt")); auto tiltLayout = new QFormLayout(tiltGroupBox); mainLayout->addRow(tiltGroupBox); @@ -209,6 +211,28 @@ void CrystalSettingsWidget::setupUi() rotationLayout->addRow(tr("Distribution"), m_rotationDistributionComboBox); rotationLayout->addRow(m_rotationAverageLabel, m_rotationAverageSlider); rotationLayout->addRow(m_rotationStdLabel, m_rotationStdSlider); + + auto pyramidGroupBox = new QGroupBox(tr("Pyramid caps")); + auto pyramidLayout = new QFormLayout(pyramidGroupBox); + mainLayout->addRow(pyramidGroupBox); + pyramidLayout->addRow(tr("Upper apex angle"), m_upperApexAngleSpinBox); + pyramidLayout->addRow(tr("Upper apex average height"), m_upperApexHeightAverageSlider); + pyramidLayout->addRow(tr("Upper apex height std."), m_upperApexHeightStdSlider); + pyramidLayout->addItem(new QSpacerItem(0, 5)); + pyramidLayout->addRow(tr("Lower apex angle"), m_lowerApexAngleSpinBox); + pyramidLayout->addRow(tr("Lower apex average height"), m_lowerApexHeightAverageSlider); + pyramidLayout->addRow(tr("Lower apex height std."), m_lowerApexHeightStdSlider); + + auto prismFaceDistanceGroupBox = new QGroupBox(tr("Prism face distances")); + auto prismFaceDistanceLayout = new QFormLayout(prismFaceDistanceGroupBox); + mainLayout->addRow(prismFaceDistanceGroupBox); + for (auto i = 0; i < 6; ++i) + { + auto labelString = QString("Face %1").arg(i + 3); + auto labelStdString = labelString.toStdString(); + auto labelCString = labelStdString.c_str(); + prismFaceDistanceLayout->addRow(tr(labelCString), m_prismFaceDistanceSliders[i]); + } } void CrystalSettingsWidget::setupPopulationComboBoxConnections() diff --git a/src/haloray-core/gui/crystalSettingsWidget.h b/src/haloray-core/gui/crystalSettingsWidget.h index 23f94e1..76786cf 100644 --- a/src/haloray-core/gui/crystalSettingsWidget.h +++ b/src/haloray-core/gui/crystalSettingsWidget.h @@ -55,6 +55,8 @@ class CrystalSettingsWidget : public CollapsibleBox SliderSpinBox *m_lowerApexHeightAverageSlider; SliderSpinBox *m_lowerApexHeightStdSlider; + SliderSpinBox *m_prismFaceDistanceSliders[6]; + QSpinBox *m_weightSpinBox; CrystalModel *m_model; diff --git a/src/haloray-core/simulation/crystalPopulation.cpp b/src/haloray-core/simulation/crystalPopulation.cpp index 843bc4f..72c6956 100644 --- a/src/haloray-core/simulation/crystalPopulation.cpp +++ b/src/haloray-core/simulation/crystalPopulation.cpp @@ -153,6 +153,19 @@ CrystalPopulation CrystalPopulation::createPyramid() return crystal; } +void CrystalPopulation::initializePrismFaceDistances() +{ + for (auto i = 0u; i < 6; ++i) + { + prismFaceDistances[i] = 1.0f; + } +} + +CrystalPopulation::CrystalPopulation() +{ + initializePrismFaceDistances(); +} + CrystalPopulation CrystalPopulation::presetPopulation(CrystalPopulationPreset preset) { switch (preset) diff --git a/src/haloray-core/simulation/crystalPopulation.h b/src/haloray-core/simulation/crystalPopulation.h index 59c00eb..3f2a8fa 100644 --- a/src/haloray-core/simulation/crystalPopulation.h +++ b/src/haloray-core/simulation/crystalPopulation.h @@ -15,6 +15,8 @@ enum CrystalPopulationPreset struct CrystalPopulation { + CrystalPopulation(); + float caRatioAverage; float caRatioStd; @@ -34,6 +36,8 @@ struct CrystalPopulation float lowerApexHeightAverage; float lowerApexHeightStd; + float prismFaceDistances[6]; + static CrystalPopulation presetPopulation(CrystalPopulationPreset); static CrystalPopulation createLowitz(); static CrystalPopulation createPlate(); @@ -41,6 +45,9 @@ struct CrystalPopulation static CrystalPopulation createParry(); static CrystalPopulation createRandom(); static CrystalPopulation createPyramid(); + +private: + void initializePrismFaceDistances(); }; } diff --git a/src/haloray-core/simulation/simulationEngine.cpp b/src/haloray-core/simulation/simulationEngine.cpp index c90c10d..729186f 100644 --- a/src/haloray-core/simulation/simulationEngine.cpp +++ b/src/haloray-core/simulation/simulationEngine.cpp @@ -204,14 +204,7 @@ void SimulationEngine::step() m_simulationShader->setUniformValue("crystalProperties.lowerApexAngle", degToRad(crystals.lowerApexAngle)); m_simulationShader->setUniformValue("crystalProperties.lowerApexHeightAverage", crystals.lowerApexHeightAverage); m_simulationShader->setUniformValue("crystalProperties.lowerApexHeightStd", crystals.lowerApexHeightStd); - - // Temporary hack just to populate the prismFaceDistances uniform before the actual UI controls exist - float prismFaceDistances[6]; - for (auto face = 0; face < 6; ++face) - { - prismFaceDistances[face] = 1.0f; - } - m_simulationShader->setUniformValueArray("crystalProperties.prismFaceDistances", prismFaceDistances, 6, 1); + m_simulationShader->setUniformValueArray("crystalProperties.prismFaceDistances", crystals.prismFaceDistances, 6, 1); m_simulationShader->setUniformValue("camera.pitch", degToRad(m_camera.pitch)); m_simulationShader->setUniformValue("camera.yaw", degToRad(m_camera.yaw)); From ab79641e1de7fd8a0cfe85f444853743937c0f7e Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 13 Feb 2021 22:49:42 +0200 Subject: [PATCH 124/184] Update changelog --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 602a14e..5bd4d59 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -13,6 +13,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Simulation rate shown in status bar - Ice crystals now have adjustable pyramidal caps - Possibility to save and load simulations +- Added controls for prism face distances from the crystal C-axis ### Changed From d3c8db8cce0d1489b992042279290a17cfef30ba Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 13 Feb 2021 22:54:52 +0200 Subject: [PATCH 125/184] Format vertex data for better clarity --- .../resources/shaders/raytrace.glsl | 53 ++++++++++--------- 1 file changed, 28 insertions(+), 25 deletions(-) diff --git a/src/haloray-core/resources/shaders/raytrace.glsl b/src/haloray-core/resources/shaders/raytrace.glsl index faceb05..026fb4c 100644 --- a/src/haloray-core/resources/shaders/raytrace.glsl +++ b/src/haloray-core/resources/shaders/raytrace.glsl @@ -70,36 +70,39 @@ struct intersection { Y coordinates are kept, while the X and Z coordinates are overwritten based on the prism face distances. The data is still - kept here as reference for now. */ + kept here as reference for now. The vertices + are arranged so that the basal faces lie + in the XZ-plane, while the prism faces are + parallel to the Y-axis. */ vec3 vertices[] = vec3[]( - vec3(0.0, 1.0, 1.0), - vec3(-0.8660254038, 1.0, 0.5), - vec3(-0.8660254038, 1.0, -0.5), - vec3(0.0, 1.0, -1.0), - vec3(0.8660254038, 1.0, -0.5), - vec3(0.8660254038, 1.0, 0.5), - - vec3(0.0, 1.0, 1.0), - vec3(-0.8660254038, 1.0, 0.5), - vec3(-0.8660254038, 1.0, -0.5), - vec3(0.0, 1.0, -1.0), - vec3(0.8660254038, 1.0, -0.5), - vec3(0.8660254038, 1.0, 0.5), - - vec3(0.0, -1.0, 1.0), - vec3(-0.8660254038, -1.0, 0.5), + vec3(0.0, 1.0, 1.0), + vec3(-0.8660254038, 1.0, 0.5), + vec3(-0.8660254038, 1.0, -0.5), + vec3(0.0, 1.0, -1.0), + vec3(0.8660254038, 1.0, -0.5), + vec3(0.8660254038, 1.0, 0.5), + + vec3(0.0, 1.0, 1.0), + vec3(-0.8660254038, 1.0, 0.5), + vec3(-0.8660254038, 1.0, -0.5), + vec3(0.0, 1.0, -1.0), + vec3(0.8660254038, 1.0, -0.5), + vec3(0.8660254038, 1.0, 0.5), + + vec3(0.0, -1.0, 1.0), + vec3(-0.8660254038, -1.0, 0.5), vec3(-0.8660254038, -1.0, -0.5), - vec3(0.0, -1.0, -1.0), - vec3(0.8660254038, -1.0, -0.5), - vec3(0.8660254038, -1.0, 0.5), + vec3(0.0, -1.0, -1.0), + vec3(0.8660254038, -1.0, -0.5), + vec3(0.8660254038, -1.0, 0.5), - vec3(0.0, -1.0, 1.0), - vec3(-0.8660254038, -1.0, 0.5), + vec3(0.0, -1.0, 1.0), + vec3(-0.8660254038, -1.0, 0.5), vec3(-0.8660254038, -1.0, -0.5), - vec3(0.0, -1.0, -1.0), - vec3(0.8660254038, -1.0, -0.5), - vec3(0.8660254038, -1.0, 0.5) + vec3(0.0, -1.0, -1.0), + vec3(0.8660254038, -1.0, -0.5), + vec3(0.8660254038, -1.0, 0.5) ); ivec3 triangles[] = ivec3[]( From 7a6cd561ad1b62fb23a3cf9ff6a0525c15c9d184 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 13 Feb 2021 23:03:32 +0200 Subject: [PATCH 126/184] Scale default crystal to make vertices unit distance away from C axis Without the scaling the prism face distance from the C axis was 1.0 and the distance of the vertices slightly bigger, which might throw off the apex angle calculation for pyramid crystals. --- src/haloray-core/resources/shaders/raytrace.glsl | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/haloray-core/resources/shaders/raytrace.glsl b/src/haloray-core/resources/shaders/raytrace.glsl index 026fb4c..c44e15a 100644 --- a/src/haloray-core/resources/shaders/raytrace.glsl +++ b/src/haloray-core/resources/shaders/raytrace.glsl @@ -538,9 +538,11 @@ void initializeCrystal() float currentAngle = previousAngle + deltaAngle; float nextAngle = previousAngle + 2.0 * deltaAngle; - float previousDistance = crystalProperties.prismFaceDistances[previousFace]; - float currentDistance = crystalProperties.prismFaceDistances[face]; - float nextDistance = crystalProperties.prismFaceDistances[nextFace]; + /* The sqrt(3)/2 multiplier makes the default crystal such + that the distance of a vertex from the C axis is 1.0 */ + float previousDistance = 0.86602540378443864676372317075294 * crystalProperties.prismFaceDistances[previousFace]; + float currentDistance = 0.86602540378443864676372317075294 * crystalProperties.prismFaceDistances[face]; + float nextDistance = 0.86602540378443864676372317075294 * crystalProperties.prismFaceDistances[nextFace]; vec2 previousLine = vec2(previousDistance, previousAngle); vec2 currentLine = vec2(currentDistance, currentAngle); From 3dbd3d2b5d0ce7197b316bcf064d25f075ab2c62 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 13 Feb 2021 23:09:34 +0200 Subject: [PATCH 127/184] Make groupbox title clearer --- src/haloray-core/gui/crystalSettingsWidget.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/haloray-core/gui/crystalSettingsWidget.cpp b/src/haloray-core/gui/crystalSettingsWidget.cpp index b0bb9df..83f7672 100644 --- a/src/haloray-core/gui/crystalSettingsWidget.cpp +++ b/src/haloray-core/gui/crystalSettingsWidget.cpp @@ -223,7 +223,7 @@ void CrystalSettingsWidget::setupUi() pyramidLayout->addRow(tr("Lower apex average height"), m_lowerApexHeightAverageSlider); pyramidLayout->addRow(tr("Lower apex height std."), m_lowerApexHeightStdSlider); - auto prismFaceDistanceGroupBox = new QGroupBox(tr("Prism face distances")); + auto prismFaceDistanceGroupBox = new QGroupBox(tr("Prism face distances from C-axis")); auto prismFaceDistanceLayout = new QFormLayout(prismFaceDistanceGroupBox); mainLayout->addRow(prismFaceDistanceGroupBox); for (auto i = 0; i < 6; ++i) From b78526c6d60f5d8866946a1f45ea74894a11acc8 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 14 Feb 2021 00:33:43 +0200 Subject: [PATCH 128/184] Scale the prism face distances so max is always 1.0 This scaling keeps the C/A ratio correct, because the C/A ratio scaling expects the A axis of the crystal to always be 1.0. --- src/haloray-core/resources/shaders/raytrace.glsl | 4 ++++ src/haloray-core/simulation/simulationEngine.cpp | 11 ++++++++++- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/src/haloray-core/resources/shaders/raytrace.glsl b/src/haloray-core/resources/shaders/raytrace.glsl index c44e15a..334f20e 100644 --- a/src/haloray-core/resources/shaders/raytrace.glsl +++ b/src/haloray-core/resources/shaders/raytrace.glsl @@ -37,6 +37,10 @@ uniform struct crystalProperties_t float lowerApexHeightAverage; float lowerApexHeightStd; + /* The prism face distances are expected + to be scaled so that the largest value is + always 1.0. That should be done outside the + shader. */ float prismFaceDistances[6]; } crystalProperties; diff --git a/src/haloray-core/simulation/simulationEngine.cpp b/src/haloray-core/simulation/simulationEngine.cpp index 729186f..a8f0347 100644 --- a/src/haloray-core/simulation/simulationEngine.cpp +++ b/src/haloray-core/simulation/simulationEngine.cpp @@ -3,6 +3,7 @@ #include #include #include +#include #include #include "../opengl/texture.h" #include "trigonometryUtilities.h" @@ -204,7 +205,15 @@ void SimulationEngine::step() m_simulationShader->setUniformValue("crystalProperties.lowerApexAngle", degToRad(crystals.lowerApexAngle)); m_simulationShader->setUniformValue("crystalProperties.lowerApexHeightAverage", crystals.lowerApexHeightAverage); m_simulationShader->setUniformValue("crystalProperties.lowerApexHeightStd", crystals.lowerApexHeightStd); - m_simulationShader->setUniformValueArray("crystalProperties.prismFaceDistances", crystals.prismFaceDistances, 6, 1); + + float scaledPrismFaceDistances[6]; + float maxPrismFaceDistance = *std::max_element(crystals.prismFaceDistances, crystals.prismFaceDistances + 6); + for (auto face = 0; face < 6; ++face) + { + scaledPrismFaceDistances[face] = maxPrismFaceDistance > 0.0f ? crystals.prismFaceDistances[face] / maxPrismFaceDistance : 1.0f; + } + + m_simulationShader->setUniformValueArray("crystalProperties.prismFaceDistances", scaledPrismFaceDistances, 6, 1); m_simulationShader->setUniformValue("camera.pitch", degToRad(m_camera.pitch)); m_simulationShader->setUniformValue("camera.yaw", degToRad(m_camera.yaw)); From 167ffb20368d764fca07d88e12aead7339095897 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 14 Feb 2021 23:17:13 +0200 Subject: [PATCH 129/184] Limit the prism face distance to 1.0-2.0 Outside the range it is possible to create concave crystals with the current crystal generation algorithm. --- src/haloray-core/gui/crystalSettingsWidget.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/haloray-core/gui/crystalSettingsWidget.cpp b/src/haloray-core/gui/crystalSettingsWidget.cpp index 83f7672..6cfbb30 100644 --- a/src/haloray-core/gui/crystalSettingsWidget.cpp +++ b/src/haloray-core/gui/crystalSettingsWidget.cpp @@ -180,7 +180,7 @@ void CrystalSettingsWidget::setupUi() for (auto i = 0; i < 6; ++i) { - m_prismFaceDistanceSliders[i] = new SliderSpinBox(0.0, 3.0); + m_prismFaceDistanceSliders[i] = new SliderSpinBox(1.0, 2.0); } auto mainLayout = new QFormLayout(this->contentWidget()); From 232e5365420cac03dd5017a15e239c86e57ff83e Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 14 Feb 2021 00:49:13 +0200 Subject: [PATCH 130/184] Add placeholder window for crystal preview --- .../crystalPreview/crystalPreviewWindow.cpp | 25 ++++++++++++++++++ .../gui/crystalPreview/crystalPreviewWindow.h | 26 +++++++++++++++++++ src/haloray-core/gui/mainWindow.cpp | 10 ++++++- src/haloray-core/gui/mainWindow.h | 1 + src/haloray-core/haloray-core.pro | 2 ++ 5 files changed, 63 insertions(+), 1 deletion(-) create mode 100644 src/haloray-core/gui/crystalPreview/crystalPreviewWindow.cpp create mode 100644 src/haloray-core/gui/crystalPreview/crystalPreviewWindow.h diff --git a/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.cpp b/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.cpp new file mode 100644 index 0000000..2aa827d --- /dev/null +++ b/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.cpp @@ -0,0 +1,25 @@ +#include "crystalPreviewWindow.h" +#include "../crystalModel.h" +#include + +namespace HaloRay +{ + +CrystalPreviewWindow::CrystalPreviewWindow(CrystalModel *model, QWidget *parent) + : QWidget(parent), + m_crystalModel(model) +{ + setupUi(); +} + +void CrystalPreviewWindow::setupUi() +{ + setMinimumSize(QSize(500, 500)); + setWindowTitle(tr("Crystal preview")); + + m_populationSelector = new QComboBox(this); + m_populationSelector->setModel(m_crystalModel); + m_populationSelector->setModelColumn(CrystalModel::PopulationName); +} + +} diff --git a/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.h b/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.h new file mode 100644 index 0000000..bb3f4c7 --- /dev/null +++ b/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.h @@ -0,0 +1,26 @@ +#pragma once + +#include +#include + +class QComboBox; + +namespace HaloRay +{ + +class CrystalModel; + +class CrystalPreviewWindow : public QWidget +{ + Q_OBJECT +public: + CrystalPreviewWindow(CrystalModel *model, QWidget *parent = nullptr); + +private: + void setupUi(); + + CrystalModel *m_crystalModel; + QComboBox *m_populationSelector; +}; + +} diff --git a/src/haloray-core/gui/mainWindow.cpp b/src/haloray-core/gui/mainWindow.cpp index f9bd31a..82ecb7e 100644 --- a/src/haloray-core/gui/mainWindow.cpp +++ b/src/haloray-core/gui/mainWindow.cpp @@ -16,9 +16,9 @@ #include #include #include +#include "crystalPreview/crystalPreviewWindow.h" #include "collapsibleBox.h" #include "stateSaver.h" -#include "../simulation/atmosphere.h" #include "crystalModel.h" #include "openGLWidget.h" #include "generalSettingsWidget.h" @@ -27,6 +27,7 @@ #include "atmosphereSettingsWidget.h" #include "sliderSpinBox.h" #include "renderButton.h" +#include "../simulation/atmosphere.h" #include "../simulation/crystalPopulation.h" #include "../simulation/simulationEngine.h" @@ -122,6 +123,10 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), m_previousTimedIt StateSaver::LoadState(filename, m_simulationStateModel, m_crystalModel); }); + connect(m_openCrystalPreviewWindow, &QAction::triggered, [this]() { + auto previewWindow = new CrystalPreviewWindow(m_crystalModel); + previewWindow->show(); + }); setupRenderTimer(); } @@ -168,6 +173,9 @@ void MainWindow::setupMenuBar() m_saveSimulationAction = fileMenu->addAction(tr("Save simulation")); fileMenu->addSeparator(); m_quitAction = fileMenu->addAction(tr("&Quit")); + + auto miscMenu = menuBar()->addMenu(tr("&Misc")); + m_openCrystalPreviewWindow = miscMenu->addAction(tr("Open crystal preview")); } QScrollArea *MainWindow::setupSideBarScrollArea() diff --git a/src/haloray-core/gui/mainWindow.h b/src/haloray-core/gui/mainWindow.h index 54dd1da..514c93c 100644 --- a/src/haloray-core/gui/mainWindow.h +++ b/src/haloray-core/gui/mainWindow.h @@ -50,6 +50,7 @@ class MainWindow : public QMainWindow QAction *m_quitAction; QAction *m_saveSimulationAction; QAction *m_loadSimulationAction; + QAction *m_openCrystalPreviewWindow; std::shared_ptr m_crystalRepository; SimulationEngine *m_engine; diff --git a/src/haloray-core/haloray-core.pro b/src/haloray-core/haloray-core.pro index 6c2adb4..41152ac 100644 --- a/src/haloray-core/haloray-core.pro +++ b/src/haloray-core/haloray-core.pro @@ -28,6 +28,7 @@ HEADERS += \ gui/atmosphereSettingsWidget.h \ gui/collapsibleBox.h \ gui/crystalModel.h \ + gui/crystalPreview/crystalPreviewWindow.h \ gui/crystalSettingsWidget.h \ gui/generalSettingsWidget.h \ gui/mainWindow.h \ @@ -58,6 +59,7 @@ SOURCES += \ gui/atmosphereSettingsWidget.cpp \ gui/collapsibleBox.cpp \ gui/crystalModel.cpp \ + gui/crystalPreview/crystalPreviewWindow.cpp \ gui/crystalSettingsWidget.cpp \ gui/generalSettingsWidget.cpp \ gui/mainWindow.cpp \ From 754136f214e7071a203d24553df391caece5ae7b Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 14 Feb 2021 15:32:59 +0200 Subject: [PATCH 131/184] Start prototyping crystal preview rendering --- .../crystalPreview/crystalPreviewWindow.cpp | 14 +++- .../gui/crystalPreview/crystalPreviewWindow.h | 2 + .../gui/crystalPreview/previewRenderArea.cpp | 71 +++++++++++++++++++ .../gui/crystalPreview/previewRenderArea.h | 18 +++++ src/haloray-core/haloray-core.pro | 2 + 5 files changed, 105 insertions(+), 2 deletions(-) create mode 100644 src/haloray-core/gui/crystalPreview/previewRenderArea.cpp create mode 100644 src/haloray-core/gui/crystalPreview/previewRenderArea.h diff --git a/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.cpp b/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.cpp index 2aa827d..5a29ecf 100644 --- a/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.cpp +++ b/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.cpp @@ -1,6 +1,8 @@ #include "crystalPreviewWindow.h" #include "../crystalModel.h" +#include "previewRenderArea.h" #include +#include namespace HaloRay { @@ -14,12 +16,20 @@ CrystalPreviewWindow::CrystalPreviewWindow(CrystalModel *model, QWidget *parent) void CrystalPreviewWindow::setupUi() { - setMinimumSize(QSize(500, 500)); + // TODO: Replace minimum size with size policy and size hint + setMinimumSize(QSize(320, 320)); setWindowTitle(tr("Crystal preview")); - m_populationSelector = new QComboBox(this); + + m_populationSelector = new QComboBox(); m_populationSelector->setModel(m_crystalModel); m_populationSelector->setModelColumn(CrystalModel::PopulationName); + + m_renderArea = new PreviewRenderArea(); + + auto layout = new QVBoxLayout(this); + layout->addWidget(m_renderArea); + layout->addWidget(m_populationSelector); } } diff --git a/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.h b/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.h index bb3f4c7..13854bf 100644 --- a/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.h +++ b/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.h @@ -9,6 +9,7 @@ namespace HaloRay { class CrystalModel; +class PreviewRenderArea; class CrystalPreviewWindow : public QWidget { @@ -21,6 +22,7 @@ class CrystalPreviewWindow : public QWidget CrystalModel *m_crystalModel; QComboBox *m_populationSelector; + PreviewRenderArea *m_renderArea; }; } diff --git a/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp b/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp new file mode 100644 index 0000000..55ed2a7 --- /dev/null +++ b/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp @@ -0,0 +1,71 @@ +#include "previewRenderArea.h" +#include +#include +#include +#include + +namespace HaloRay +{ + +PreviewRenderArea::PreviewRenderArea(QWidget *parent) : QWidget(parent) +{ + // TODO: Set size policy and size hint + setBackgroundRole(QPalette::Base); + setAutoFillBackground(true); +} + +void PreviewRenderArea::paintEvent(QPaintEvent *) +{ + // Example cube vertices + QVector3D vertices[] = + { + QVector3D(-1.0f, -1.0f, -1.0f), + QVector3D(1.0f, -1.0f, -1.0f), + QVector3D(1.0f, 1.0f, -1.0f), + QVector3D(-1.0f, 1.0f, -1.0f), + QVector3D(-1.0f, -1.0f, 1.0f), + QVector3D(1.0f, -1.0f, 1.0f), + QVector3D(1.0f, 1.0f, 1.0f), + QVector3D(-1.0f, 1.0f, 1.0f), + }; + + QMatrix4x4 transformMat; + transformMat.perspective(45.0f, 1.0f, 0.01f, 10000.0f); + transformMat.scale(50.0f); + transformMat.lookAt(QVector3D(2.0f, 2.0f, 3.0f), QVector3D(0.0f, 0.0f, 0.0f), QVector3D(0.0f, 1.0f, 0.0f)); + + QPainter painter(this); + painter.setRenderHint(QPainter::RenderHint::Antialiasing); + + QPen vertexPen; + vertexPen.setWidth(5); + vertexPen.setColor(QColor(255, 0, 0)); + painter.setPen(vertexPen); + + painter.translate(width() / 2, height() / 2); + int side = qMin(width(), height()); + painter.scale(side / 500.0, side / 500.0); + + + QVector4D mappedVertices[8]; + for (int i = 0; i < 8; ++i) + { + mappedVertices[i] = transformMat * vertices[i].toVector4D(); + } + + for (int i = 0; i < 8; ++i) + { + painter.drawPoint(mappedVertices[i].x(), mappedVertices[i].y()); + } + + QPen edgePen; + edgePen.setWidth(3); + edgePen.setColor(QColor(0, 255, 0)); + painter.setPen(edgePen); + for (int i = 1; i < 8; ++i) + { + painter.drawLine(mappedVertices[i - 1].x(), mappedVertices[i-1].y(), mappedVertices[i].x(), mappedVertices[i].y()); + } +} + +} diff --git a/src/haloray-core/gui/crystalPreview/previewRenderArea.h b/src/haloray-core/gui/crystalPreview/previewRenderArea.h new file mode 100644 index 0000000..286f893 --- /dev/null +++ b/src/haloray-core/gui/crystalPreview/previewRenderArea.h @@ -0,0 +1,18 @@ +#pragma once + +#include + +namespace HaloRay +{ + +class PreviewRenderArea : public QWidget +{ + Q_OBJECT +public: + explicit PreviewRenderArea(QWidget *parent = nullptr); + +protected: + void paintEvent(QPaintEvent *event) override; +}; + +} diff --git a/src/haloray-core/haloray-core.pro b/src/haloray-core/haloray-core.pro index 41152ac..3785c99 100644 --- a/src/haloray-core/haloray-core.pro +++ b/src/haloray-core/haloray-core.pro @@ -29,6 +29,7 @@ HEADERS += \ gui/collapsibleBox.h \ gui/crystalModel.h \ gui/crystalPreview/crystalPreviewWindow.h \ + gui/crystalPreview/previewRenderArea.h \ gui/crystalSettingsWidget.h \ gui/generalSettingsWidget.h \ gui/mainWindow.h \ @@ -60,6 +61,7 @@ SOURCES += \ gui/collapsibleBox.cpp \ gui/crystalModel.cpp \ gui/crystalPreview/crystalPreviewWindow.cpp \ + gui/crystalPreview/previewRenderArea.cpp \ gui/crystalSettingsWidget.cpp \ gui/generalSettingsWidget.cpp \ gui/mainWindow.cpp \ From 30f18345c649ef22e89cc5ee2ad97228e6f3b4b1 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 14 Feb 2021 16:09:05 +0200 Subject: [PATCH 132/184] Initialize hexagonal geometry for preview Most of the code is copied from the raytracing shader. --- .../gui/crystalPreview/previewRenderArea.cpp | 128 +++++++++++++++--- .../gui/crystalPreview/previewRenderArea.h | 3 + 2 files changed, 114 insertions(+), 17 deletions(-) diff --git a/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp b/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp index 55ed2a7..823512f 100644 --- a/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp +++ b/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp @@ -2,7 +2,9 @@ #include #include #include +#include #include +#include "../../simulation/trigonometryUtilities.h" namespace HaloRay { @@ -16,18 +18,9 @@ PreviewRenderArea::PreviewRenderArea(QWidget *parent) : QWidget(parent) void PreviewRenderArea::paintEvent(QPaintEvent *) { - // Example cube vertices - QVector3D vertices[] = - { - QVector3D(-1.0f, -1.0f, -1.0f), - QVector3D(1.0f, -1.0f, -1.0f), - QVector3D(1.0f, 1.0f, -1.0f), - QVector3D(-1.0f, 1.0f, -1.0f), - QVector3D(-1.0f, -1.0f, 1.0f), - QVector3D(1.0f, -1.0f, 1.0f), - QVector3D(1.0f, 1.0f, 1.0f), - QVector3D(-1.0f, 1.0f, 1.0f), - }; + const int numVertices = 24; + QVector3D vertices[numVertices]; + initializeGeometry(vertices, numVertices); QMatrix4x4 transformMat; transformMat.perspective(45.0f, 1.0f, 0.01f, 10000.0f); @@ -46,14 +39,13 @@ void PreviewRenderArea::paintEvent(QPaintEvent *) int side = qMin(width(), height()); painter.scale(side / 500.0, side / 500.0); - - QVector4D mappedVertices[8]; - for (int i = 0; i < 8; ++i) + QVector4D mappedVertices[numVertices]; + for (int i = 0; i < numVertices; ++i) { mappedVertices[i] = transformMat * vertices[i].toVector4D(); } - for (int i = 0; i < 8; ++i) + for (int i = 0; i < numVertices; ++i) { painter.drawPoint(mappedVertices[i].x(), mappedVertices[i].y()); } @@ -62,10 +54,112 @@ void PreviewRenderArea::paintEvent(QPaintEvent *) edgePen.setWidth(3); edgePen.setColor(QColor(0, 255, 0)); painter.setPen(edgePen); - for (int i = 1; i < 8; ++i) + for (int i = 1; i < numVertices; ++i) { painter.drawLine(mappedVertices[i - 1].x(), mappedVertices[i-1].y(), mappedVertices[i].x(), mappedVertices[i].y()); } } +QVector2D lineIntersect(QVector2D line1, QVector2D line2) +{ + float p1 = line1.x(); + float theta1 = line1.y(); + + float p2 = line2.x(); + float theta2 = line2.y(); + + float deltaSine = sin(theta2 - theta1); + float x = (p1 * sin(theta2) - p2 * sin(theta1)) / deltaSine; + float y = (p2 * cos(theta1) - p1 * cos(theta2)) / deltaSine; + + return QVector2D(x, y); +} + +void PreviewRenderArea::initializeGeometry(QVector3D *vertices, int numVertices) +{ + float caRatioAverage = 1.0f; + float upperApexAngle = degToRad(56.0f); + float lowerApexAngle = degToRad(56.0f); + // TODO: Upper and lower apexes seem to be the wrong way around + // Maybe whole coordinate system is like that? + float upperApexHeightAverage = 0.5f; + float lowerApexHeightAverage = 0.0f; + float prismFaceDistances[6]; + for (auto i = 0; i < 6; ++i) + { + prismFaceDistances[i] = 1.0f; + } + + float deltaAngle = degToRad(60.0f); + for (int face = 0; face < 6; face = face + 2) + { + int previousFace = face == 0 ? 5 : face - 1; + int nextFace = face + 1; + + float previousAngle = (face + 1) * deltaAngle; + float currentAngle = previousAngle + deltaAngle; + float nextAngle = previousAngle + 2.0 * deltaAngle; + + /* The sqrt(3)/2 multiplier makes the default crystal such + that the distance of a vertex from the C axis is 1.0 */ + float previousDistance = 0.86602540378443864676372317075294 * prismFaceDistances[previousFace]; + float currentDistance = 0.86602540378443864676372317075294 * prismFaceDistances[face]; + float nextDistance = 0.86602540378443864676372317075294 * prismFaceDistances[nextFace]; + + QVector2D previousLine = QVector2D(previousDistance, previousAngle); + QVector2D currentLine = QVector2D(currentDistance, currentAngle); + QVector2D nextLine = QVector2D(nextDistance, nextAngle); + + QVector2D previousCurrentIntersection = lineIntersect(previousLine, currentLine); + QVector2D currentNextIntersection = lineIntersect(currentLine, nextLine); + QVector2D previousNextIntersection = lineIntersect(previousLine, nextLine); + + float previousCurrentIntersectionDistance = previousCurrentIntersection.length(); + float currentNextIntersectionDistance = currentNextIntersection.length(); + float previousNextIntersectionDistance = previousNextIntersection.length(); + + QVector2D v1 = previousCurrentIntersectionDistance < previousNextIntersectionDistance ? previousCurrentIntersection : previousNextIntersection; + QVector2D v2 = currentNextIntersectionDistance < previousNextIntersectionDistance ? currentNextIntersection : previousNextIntersection; + + // Corresponding vertices of each crystal layer have the same X and Z coordinates + vertices[face] = QVector3D(v1.x(), 1.0f, v1.y()); + vertices[face + 1] = QVector3D(v2.x(), 1.0f, v2.y()); + + vertices[face + 6] = QVector3D(v1.x(), 1.0f, v1.y()); + vertices[face + 6 + 1] = QVector3D(v2.x(), 1.0f, v2.y()); + + vertices[face + 12] = QVector3D(v1.x(), -1.0f, v1.y()); + vertices[face + 12 + 1] = QVector3D(v2.x(), -1.0f, v2.y()); + + vertices[face + 18] = QVector3D(v1.x(), -1.0f, v1.y()); + vertices[face + 18 + 1] = QVector3D(v2.x(), -1.0f, v2.y()); + } + + // Stretch the crystal to correct C/A ratio + float caMultiplier = caRatioAverage; + for (int i = 0; i < numVertices; ++i) + { + vertices[i].setY(vertices[i].y() * caMultiplier); + } + + // Scale pyramid caps + float upperApexMaxHeight = 1.0 / tan(upperApexAngle / 2.0); + float lowerApexMaxHeight = 1.0 / tan(lowerApexAngle / 2.0); + + float upperApexHeight = upperApexHeightAverage; + float lowerApexHeight = lowerApexHeightAverage; + + for (int i = 0; i < 6; ++i) + { + vertices[i] = QVector3D( + vertices[i].x() * (1.0 - upperApexHeight), + vertices[i].y() + upperApexHeight * upperApexMaxHeight, + vertices[i].z() * (1.0 - upperApexHeight)); + vertices[numVertices - i - 1] = QVector3D( + vertices[numVertices - i - 1].x() * (1.0 - lowerApexHeight), + vertices[numVertices - i - 1].y() - lowerApexHeight * lowerApexMaxHeight, + vertices[numVertices - i - 1].z() * (1.0 - lowerApexHeight)); + } +} + } diff --git a/src/haloray-core/gui/crystalPreview/previewRenderArea.h b/src/haloray-core/gui/crystalPreview/previewRenderArea.h index 286f893..d5d85e6 100644 --- a/src/haloray-core/gui/crystalPreview/previewRenderArea.h +++ b/src/haloray-core/gui/crystalPreview/previewRenderArea.h @@ -2,6 +2,8 @@ #include +class QVector3D; + namespace HaloRay { @@ -13,6 +15,7 @@ class PreviewRenderArea : public QWidget protected: void paintEvent(QPaintEvent *event) override; + static void initializeGeometry(QVector3D *vertices, int numVertices); }; } From f4a05aa8a9737afc352af76d7b936a96439d9e02 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 14 Feb 2021 16:43:59 +0200 Subject: [PATCH 133/184] Draw crystal edges correctly in preview window --- .../gui/crystalPreview/previewRenderArea.cpp | 38 ++++++++++--------- 1 file changed, 20 insertions(+), 18 deletions(-) diff --git a/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp b/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp index 823512f..daeb75a 100644 --- a/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp +++ b/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp @@ -1,9 +1,10 @@ #include "previewRenderArea.h" #include +#include #include #include -#include #include +#include #include "../../simulation/trigonometryUtilities.h" namespace HaloRay @@ -29,11 +30,9 @@ void PreviewRenderArea::paintEvent(QPaintEvent *) QPainter painter(this); painter.setRenderHint(QPainter::RenderHint::Antialiasing); - - QPen vertexPen; - vertexPen.setWidth(5); - vertexPen.setColor(QColor(255, 0, 0)); - painter.setPen(vertexPen); + QPen pen; + pen.setWidth(3); + painter.setPen(pen); painter.translate(width() / 2, height() / 2); int side = qMin(width(), height()); @@ -45,18 +44,21 @@ void PreviewRenderArea::paintEvent(QPaintEvent *) mappedVertices[i] = transformMat * vertices[i].toVector4D(); } - for (int i = 0; i < numVertices; ++i) - { - painter.drawPoint(mappedVertices[i].x(), mappedVertices[i].y()); - } + QPoint points[numVertices]; + std::transform(mappedVertices, mappedVertices + numVertices, points, [](QVector4D vertex) { + return vertex.toPoint(); + }); - QPen edgePen; - edgePen.setWidth(3); - edgePen.setColor(QColor(0, 255, 0)); - painter.setPen(edgePen); - for (int i = 1; i < numVertices; ++i) + painter.drawPolygon(points, 6); + painter.drawPolygon(points + 6 , 6); + painter.drawPolygon(points + 12, 6); + painter.drawPolygon(points + 18, 6); + + for (int i = 0; i < 6; ++i) { - painter.drawLine(mappedVertices[i - 1].x(), mappedVertices[i-1].y(), mappedVertices[i].x(), mappedVertices[i].y()); + QPolygon edgePoints; + edgePoints << points[i] << points [i + 6] << points[i + 12] << points[i + 18]; + painter.drawPolyline(edgePoints); } } @@ -77,13 +79,13 @@ QVector2D lineIntersect(QVector2D line1, QVector2D line2) void PreviewRenderArea::initializeGeometry(QVector3D *vertices, int numVertices) { - float caRatioAverage = 1.0f; + float caRatioAverage = 0.5f; float upperApexAngle = degToRad(56.0f); float lowerApexAngle = degToRad(56.0f); // TODO: Upper and lower apexes seem to be the wrong way around // Maybe whole coordinate system is like that? float upperApexHeightAverage = 0.5f; - float lowerApexHeightAverage = 0.0f; + float lowerApexHeightAverage = 0.5f; float prismFaceDistances[6]; for (auto i = 0; i < 6; ++i) { From 0560dc5bbc9fd2cacfcac84b096835b5696accc0 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 14 Feb 2021 16:45:44 +0200 Subject: [PATCH 134/184] Fix preview orientation Previously the preview image was upside down, because the screen Y coordinate grows downwards, while in the crystal space Y coordinate grows upwards. --- .../gui/crystalPreview/previewRenderArea.cpp | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp b/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp index daeb75a..0c9e6d5 100644 --- a/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp +++ b/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp @@ -34,7 +34,8 @@ void PreviewRenderArea::paintEvent(QPaintEvent *) pen.setWidth(3); painter.setPen(pen); - painter.translate(width() / 2, height() / 2); + painter.rotate(180.0); + painter.translate(-width() / 2, -height() / 2); int side = qMin(width(), height()); painter.scale(side / 500.0, side / 500.0); @@ -82,10 +83,8 @@ void PreviewRenderArea::initializeGeometry(QVector3D *vertices, int numVertices) float caRatioAverage = 0.5f; float upperApexAngle = degToRad(56.0f); float lowerApexAngle = degToRad(56.0f); - // TODO: Upper and lower apexes seem to be the wrong way around - // Maybe whole coordinate system is like that? - float upperApexHeightAverage = 0.5f; - float lowerApexHeightAverage = 0.5f; + float upperApexHeightAverage = 0.3f; + float lowerApexHeightAverage = 0.3f; float prismFaceDistances[6]; for (auto i = 0; i < 6; ++i) { From d6de660cfec2cdd7c0f55e31545c049610737a62 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 14 Feb 2021 17:12:34 +0200 Subject: [PATCH 135/184] Connect crystal preview window to real crystal model --- .../crystalPreview/crystalPreviewWindow.cpp | 4 +- .../gui/crystalPreview/previewRenderArea.cpp | 52 +++++++++++++------ .../gui/crystalPreview/previewRenderArea.h | 16 ++++-- 3 files changed, 52 insertions(+), 20 deletions(-) diff --git a/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.cpp b/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.cpp index 5a29ecf..97ab5b5 100644 --- a/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.cpp +++ b/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.cpp @@ -12,6 +12,8 @@ CrystalPreviewWindow::CrystalPreviewWindow(CrystalModel *model, QWidget *parent) m_crystalModel(model) { setupUi(); + + connect(m_populationSelector, QOverload::of(&QComboBox::currentIndexChanged), m_renderArea, &PreviewRenderArea::onPopulationSelectionChange); } void CrystalPreviewWindow::setupUi() @@ -25,7 +27,7 @@ void CrystalPreviewWindow::setupUi() m_populationSelector->setModel(m_crystalModel); m_populationSelector->setModelColumn(CrystalModel::PopulationName); - m_renderArea = new PreviewRenderArea(); + m_renderArea = new PreviewRenderArea(m_crystalModel); auto layout = new QVBoxLayout(this); layout->addWidget(m_renderArea); diff --git a/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp b/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp index 0c9e6d5..bf1bc56 100644 --- a/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp +++ b/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp @@ -1,30 +1,42 @@ #include "previewRenderArea.h" #include #include -#include #include #include #include +#include "../crystalModel.h" #include "../../simulation/trigonometryUtilities.h" namespace HaloRay { -PreviewRenderArea::PreviewRenderArea(QWidget *parent) : QWidget(parent) +PreviewRenderArea::PreviewRenderArea(CrystalModel *crystals, QWidget *parent) + : QWidget(parent), + m_crystals(crystals), + m_populationIndex(0) { // TODO: Set size policy and size hint setBackgroundRole(QPalette::Base); setAutoFillBackground(true); + + connect(m_crystals, &CrystalModel::dataChanged, this, [this]() { + update(); + }); +} + +void PreviewRenderArea::onPopulationSelectionChange(int index) +{ + m_populationIndex = index; + update(); } void PreviewRenderArea::paintEvent(QPaintEvent *) { const int numVertices = 24; - QVector3D vertices[numVertices]; - initializeGeometry(vertices, numVertices); + initializeGeometry(m_vertices, numVertices); QMatrix4x4 transformMat; - transformMat.perspective(45.0f, 1.0f, 0.01f, 10000.0f); + transformMat.ortho(-1.0f, 1.0f, -1.0f, 1.0f, 0.01f, 1000.0f); transformMat.scale(50.0f); transformMat.lookAt(QVector3D(2.0f, 2.0f, 3.0f), QVector3D(0.0f, 0.0f, 0.0f), QVector3D(0.0f, 1.0f, 0.0f)); @@ -42,7 +54,7 @@ void PreviewRenderArea::paintEvent(QPaintEvent *) QVector4D mappedVertices[numVertices]; for (int i = 0; i < numVertices; ++i) { - mappedVertices[i] = transformMat * vertices[i].toVector4D(); + mappedVertices[i] = transformMat * m_vertices[i].toVector4D(); } QPoint points[numVertices]; @@ -80,16 +92,19 @@ QVector2D lineIntersect(QVector2D line1, QVector2D line2) void PreviewRenderArea::initializeGeometry(QVector3D *vertices, int numVertices) { - float caRatioAverage = 0.5f; - float upperApexAngle = degToRad(56.0f); - float lowerApexAngle = degToRad(56.0f); - float upperApexHeightAverage = 0.3f; - float lowerApexHeightAverage = 0.3f; - float prismFaceDistances[6]; - for (auto i = 0; i < 6; ++i) - { - prismFaceDistances[i] = 1.0f; - } + float caRatioAverage = getFromModel(m_populationIndex, CrystalModel::CaRatioAverage).toFloat(); + float upperApexAngle = degToRad(getFromModel(m_populationIndex, CrystalModel::UpperApexAngle).toFloat()); + float lowerApexAngle = degToRad(getFromModel(m_populationIndex, CrystalModel::LowerApexAngle).toFloat()); + float upperApexHeightAverage = getFromModel(m_populationIndex, CrystalModel::UpperApexHeightAverage).toFloat(); + float lowerApexHeightAverage = getFromModel(m_populationIndex, CrystalModel::LowerApexHeightAverage).toFloat(); + float prismFaceDistances[6] = { + getFromModel(m_populationIndex, CrystalModel::PrismFaceDistance1).toFloat(), + getFromModel(m_populationIndex, CrystalModel::PrismFaceDistance2).toFloat(), + getFromModel(m_populationIndex, CrystalModel::PrismFaceDistance3).toFloat(), + getFromModel(m_populationIndex, CrystalModel::PrismFaceDistance4).toFloat(), + getFromModel(m_populationIndex, CrystalModel::PrismFaceDistance5).toFloat(), + getFromModel(m_populationIndex, CrystalModel::PrismFaceDistance6).toFloat(), + }; float deltaAngle = degToRad(60.0f); for (int face = 0; face < 6; face = face + 2) @@ -163,4 +178,9 @@ void PreviewRenderArea::initializeGeometry(QVector3D *vertices, int numVertices) } } +QVariant PreviewRenderArea::getFromModel(int row, CrystalModel::Columns column) +{ + return m_crystals->data(m_crystals->index(row, column)); +} + } diff --git a/src/haloray-core/gui/crystalPreview/previewRenderArea.h b/src/haloray-core/gui/crystalPreview/previewRenderArea.h index d5d85e6..8810729 100644 --- a/src/haloray-core/gui/crystalPreview/previewRenderArea.h +++ b/src/haloray-core/gui/crystalPreview/previewRenderArea.h @@ -1,8 +1,9 @@ #pragma once #include +#include +#include "../crystalModel.h" -class QVector3D; namespace HaloRay { @@ -11,11 +12,20 @@ class PreviewRenderArea : public QWidget { Q_OBJECT public: - explicit PreviewRenderArea(QWidget *parent = nullptr); + PreviewRenderArea(CrystalModel *crystals, QWidget *parent = nullptr); + +public slots: + void onPopulationSelectionChange(int index); protected: void paintEvent(QPaintEvent *event) override; - static void initializeGeometry(QVector3D *vertices, int numVertices); + void initializeGeometry(QVector3D *vertices, int numVertices); + +private: + QVariant getFromModel(int row, CrystalModel::Columns column); + CrystalModel *m_crystals; + int m_populationIndex; + QVector3D m_vertices[24]; }; } From 8f90593aee38cf4267e2f6336c49dd772ab9eb35 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 14 Feb 2021 17:25:29 +0200 Subject: [PATCH 136/184] Show crystal orientation in preview window --- .../gui/crystalPreview/previewRenderArea.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp b/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp index bf1bc56..0ce737f 100644 --- a/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp +++ b/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp @@ -38,7 +38,7 @@ void PreviewRenderArea::paintEvent(QPaintEvent *) QMatrix4x4 transformMat; transformMat.ortho(-1.0f, 1.0f, -1.0f, 1.0f, 0.01f, 1000.0f); transformMat.scale(50.0f); - transformMat.lookAt(QVector3D(2.0f, 2.0f, 3.0f), QVector3D(0.0f, 0.0f, 0.0f), QVector3D(0.0f, 1.0f, 0.0f)); + transformMat.lookAt(QVector3D(-2.0f, 2.0f, 2.0f), QVector3D(0.0f, 0.0f, 0.0f), QVector3D(0.0f, 1.0f, 0.0f)); QPainter painter(this); painter.setRenderHint(QPainter::RenderHint::Antialiasing); @@ -51,10 +51,16 @@ void PreviewRenderArea::paintEvent(QPaintEvent *) int side = qMin(width(), height()); painter.scale(side / 500.0, side / 500.0); + float tilt = getFromModel(m_populationIndex, CrystalModel::TiltAverage).toFloat(); + float rotation = getFromModel(m_populationIndex, CrystalModel::RotationAverage).toFloat(); + QMatrix4x4 orientationMatrix; + orientationMatrix.rotate(tilt, QVector3D(0.0f, 0.0f, 1.0f)); + orientationMatrix.rotate(rotation, QVector3D(0.0f, 1.0f, 0.0f)); + QVector4D mappedVertices[numVertices]; for (int i = 0; i < numVertices; ++i) { - mappedVertices[i] = transformMat * m_vertices[i].toVector4D(); + mappedVertices[i] = transformMat * orientationMatrix * m_vertices[i].toVector4D(); } QPoint points[numVertices]; From 82f830e7754ecfdd52759f6cecf20ffb610045ec Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 14 Feb 2021 17:38:18 +0200 Subject: [PATCH 137/184] Scale the crystal preview according to crystal size --- .../gui/crystalPreview/previewRenderArea.cpp | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp b/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp index 0ce737f..2bbec66 100644 --- a/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp +++ b/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp @@ -37,7 +37,6 @@ void PreviewRenderArea::paintEvent(QPaintEvent *) QMatrix4x4 transformMat; transformMat.ortho(-1.0f, 1.0f, -1.0f, 1.0f, 0.01f, 1000.0f); - transformMat.scale(50.0f); transformMat.lookAt(QVector3D(-2.0f, 2.0f, 2.0f), QVector3D(0.0f, 0.0f, 0.0f), QVector3D(0.0f, 1.0f, 0.0f)); QPainter painter(this); @@ -49,7 +48,7 @@ void PreviewRenderArea::paintEvent(QPaintEvent *) painter.rotate(180.0); painter.translate(-width() / 2, -height() / 2); int side = qMin(width(), height()); - painter.scale(side / 500.0, side / 500.0); + painter.scale(side / 500.0f, side / 500.0f); float tilt = getFromModel(m_populationIndex, CrystalModel::TiltAverage).toFloat(); float rotation = getFromModel(m_populationIndex, CrystalModel::RotationAverage).toFloat(); @@ -63,9 +62,13 @@ void PreviewRenderArea::paintEvent(QPaintEvent *) mappedVertices[i] = transformMat * orientationMatrix * m_vertices[i].toVector4D(); } + float furthestVertexDistance = std::max_element(mappedVertices, mappedVertices + numVertices, [](QVector4D a, QVector4D b) { + return a.length() < b.length(); + })->length(); + QPoint points[numVertices]; - std::transform(mappedVertices, mappedVertices + numVertices, points, [](QVector4D vertex) { - return vertex.toPoint(); + std::transform(mappedVertices, mappedVertices + numVertices, points, [furthestVertexDistance](QVector4D vertex) { + return (250.0f * vertex / furthestVertexDistance).toPoint(); }); painter.drawPolygon(points, 6); From 739e663bb90cff80c2e1993ca37fba627b22b3ee Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 14 Feb 2021 23:04:40 +0200 Subject: [PATCH 138/184] Synchronize crystal preview with crystal settings Now when you select a crystal population in the sidebar, the crystal preview window updates if the Sync checkbox is checked. --- .../crystalPreview/crystalPreviewWindow.cpp | 24 +++++++++++++++++-- .../gui/crystalPreview/crystalPreviewWindow.h | 8 ++++++- .../gui/crystalSettingsWidget.cpp | 9 +++++++ src/haloray-core/gui/crystalSettingsWidget.h | 5 ++++ src/haloray-core/gui/mainWindow.cpp | 3 ++- 5 files changed, 45 insertions(+), 4 deletions(-) diff --git a/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.cpp b/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.cpp index 97ab5b5..65f0906 100644 --- a/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.cpp +++ b/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.cpp @@ -3,17 +3,34 @@ #include "previewRenderArea.h" #include #include +#include namespace HaloRay { -CrystalPreviewWindow::CrystalPreviewWindow(CrystalModel *model, QWidget *parent) +CrystalPreviewWindow::CrystalPreviewWindow(CrystalModel *model, int initialIndex, QWidget *parent) : QWidget(parent), - m_crystalModel(model) + m_crystalModel(model), + m_selectedPopulationIndex(initialIndex) { setupUi(); connect(m_populationSelector, QOverload::of(&QComboBox::currentIndexChanged), m_renderArea, &PreviewRenderArea::onPopulationSelectionChange); + connect(m_syncCheckBox, &QCheckBox::toggled, m_populationSelector, &QComboBox::setDisabled); + connect(m_syncCheckBox, &QCheckBox::toggled, [this](bool checked) { + if (checked) { + m_populationSelector->setCurrentIndex(m_selectedPopulationIndex); + } + }); + m_syncCheckBox->setChecked(true); +} + +void CrystalPreviewWindow::onMainWindowPopulationSelectionChange(int index) +{ + m_selectedPopulationIndex = index; + if (m_syncCheckBox->isChecked()) { + m_populationSelector->setCurrentIndex(index); + } } void CrystalPreviewWindow::setupUi() @@ -27,10 +44,13 @@ void CrystalPreviewWindow::setupUi() m_populationSelector->setModel(m_crystalModel); m_populationSelector->setModelColumn(CrystalModel::PopulationName); + m_syncCheckBox = new QCheckBox(tr("Sync with main window")); + m_renderArea = new PreviewRenderArea(m_crystalModel); auto layout = new QVBoxLayout(this); layout->addWidget(m_renderArea); + layout->addWidget(m_syncCheckBox); layout->addWidget(m_populationSelector); } diff --git a/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.h b/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.h index 13854bf..4dc2190 100644 --- a/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.h +++ b/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.h @@ -4,6 +4,7 @@ #include class QComboBox; +class QCheckBox; namespace HaloRay { @@ -15,7 +16,10 @@ class CrystalPreviewWindow : public QWidget { Q_OBJECT public: - CrystalPreviewWindow(CrystalModel *model, QWidget *parent = nullptr); + CrystalPreviewWindow(CrystalModel *model, int initialIndex, QWidget *parent = nullptr); + +public slots: + void onMainWindowPopulationSelectionChange(int index); private: void setupUi(); @@ -23,6 +27,8 @@ class CrystalPreviewWindow : public QWidget CrystalModel *m_crystalModel; QComboBox *m_populationSelector; PreviewRenderArea *m_renderArea; + QCheckBox *m_syncCheckBox; + int m_selectedPopulationIndex; }; } diff --git a/src/haloray-core/gui/crystalSettingsWidget.cpp b/src/haloray-core/gui/crystalSettingsWidget.cpp index 6cfbb30..f8b884b 100644 --- a/src/haloray-core/gui/crystalSettingsWidget.cpp +++ b/src/haloray-core/gui/crystalSettingsWidget.cpp @@ -98,6 +98,10 @@ CrystalSettingsWidget::CrystalSettingsWidget(CrystalModel *model, QWidget *paren connect(m_model, &CrystalModel::rowsInserted, updateRemovePopulationButtonState); connect(m_model, &CrystalModel::rowsRemoved, updateRemovePopulationButtonState); + connect(m_mapper, &QDataWidgetMapper::currentIndexChanged, [this](int index) { + emit populationSelectionChanged(index); + }); + connect(m_addPopulationButton, &AddCrystalPopulationButton::addPopulation, [this, updateRemovePopulationButtonState](CrystalPopulationPreset preset) { m_model->addRow(preset); m_mapper->toLast(); @@ -117,6 +121,11 @@ CrystalSettingsWidget::CrystalSettingsWidget(CrystalModel *model, QWidget *paren updateRemovePopulationButtonState(); } +int CrystalSettingsWidget::getCurrentPopulationIndex() const +{ + return m_mapper->currentIndex(); +} + void CrystalSettingsWidget::setupUi() { setMaximumWidth(400); diff --git a/src/haloray-core/gui/crystalSettingsWidget.h b/src/haloray-core/gui/crystalSettingsWidget.h index 76786cf..000617b 100644 --- a/src/haloray-core/gui/crystalSettingsWidget.h +++ b/src/haloray-core/gui/crystalSettingsWidget.h @@ -22,6 +22,11 @@ class CrystalSettingsWidget : public CollapsibleBox public: CrystalSettingsWidget(CrystalModel *model, QWidget *parent = nullptr); + int getCurrentPopulationIndex() const; + +signals: + void populationSelectionChanged(int index); + private: void setupUi(); void setupPopulationComboBoxConnections(); diff --git a/src/haloray-core/gui/mainWindow.cpp b/src/haloray-core/gui/mainWindow.cpp index 82ecb7e..4704af6 100644 --- a/src/haloray-core/gui/mainWindow.cpp +++ b/src/haloray-core/gui/mainWindow.cpp @@ -124,7 +124,8 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), m_previousTimedIt StateSaver::LoadState(filename, m_simulationStateModel, m_crystalModel); }); connect(m_openCrystalPreviewWindow, &QAction::triggered, [this]() { - auto previewWindow = new CrystalPreviewWindow(m_crystalModel); + auto previewWindow = new CrystalPreviewWindow(m_crystalModel, m_crystalSettingsWidget->getCurrentPopulationIndex()); + connect(m_crystalSettingsWidget, &CrystalSettingsWidget::populationSelectionChanged, previewWindow, &CrystalPreviewWindow::onMainWindowPopulationSelectionChange); previewWindow->show(); }); From 78a6c748198e42bb1dcd46d138ebed09a493093c Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 14 Feb 2021 23:12:45 +0200 Subject: [PATCH 139/184] Make crystal preview code slightly clearer --- .../gui/crystalPreview/previewRenderArea.cpp | 24 +++++++++++++------ .../gui/crystalPreview/previewRenderArea.h | 5 +++- 2 files changed, 21 insertions(+), 8 deletions(-) diff --git a/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp b/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp index 2bbec66..2faef50 100644 --- a/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp +++ b/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp @@ -50,11 +50,7 @@ void PreviewRenderArea::paintEvent(QPaintEvent *) int side = qMin(width(), height()); painter.scale(side / 500.0f, side / 500.0f); - float tilt = getFromModel(m_populationIndex, CrystalModel::TiltAverage).toFloat(); - float rotation = getFromModel(m_populationIndex, CrystalModel::RotationAverage).toFloat(); - QMatrix4x4 orientationMatrix; - orientationMatrix.rotate(tilt, QVector3D(0.0f, 0.0f, 1.0f)); - orientationMatrix.rotate(rotation, QVector3D(0.0f, 1.0f, 0.0f)); + QMatrix4x4 orientationMatrix = getCrystalOrientationMatrix(); QVector4D mappedVertices[numVertices]; for (int i = 0; i < numVertices; ++i) @@ -67,7 +63,11 @@ void PreviewRenderArea::paintEvent(QPaintEvent *) })->length(); QPoint points[numVertices]; - std::transform(mappedVertices, mappedVertices + numVertices, points, [furthestVertexDistance](QVector4D vertex) { + std::transform( + mappedVertices, + mappedVertices + numVertices, + points, + [furthestVertexDistance](QVector4D vertex) { return (250.0f * vertex / furthestVertexDistance).toPoint(); }); @@ -187,7 +187,17 @@ void PreviewRenderArea::initializeGeometry(QVector3D *vertices, int numVertices) } } -QVariant PreviewRenderArea::getFromModel(int row, CrystalModel::Columns column) +QMatrix4x4 PreviewRenderArea::getCrystalOrientationMatrix() const +{ + float tilt = getFromModel(m_populationIndex, CrystalModel::TiltAverage).toFloat(); + float rotation = getFromModel(m_populationIndex, CrystalModel::RotationAverage).toFloat(); + QMatrix4x4 orientationMatrix; + orientationMatrix.rotate(tilt, QVector3D(0.0f, 0.0f, 1.0f)); + orientationMatrix.rotate(rotation, QVector3D(0.0f, 1.0f, 0.0f)); + return orientationMatrix; +} + +QVariant PreviewRenderArea::getFromModel(int row, CrystalModel::Columns column) const { return m_crystals->data(m_crystals->index(row, column)); } diff --git a/src/haloray-core/gui/crystalPreview/previewRenderArea.h b/src/haloray-core/gui/crystalPreview/previewRenderArea.h index 8810729..6f59768 100644 --- a/src/haloray-core/gui/crystalPreview/previewRenderArea.h +++ b/src/haloray-core/gui/crystalPreview/previewRenderArea.h @@ -4,6 +4,7 @@ #include #include "../crystalModel.h" +class QMatrix4x4; namespace HaloRay { @@ -22,7 +23,9 @@ public slots: void initializeGeometry(QVector3D *vertices, int numVertices); private: - QVariant getFromModel(int row, CrystalModel::Columns column); + QVariant getFromModel(int row, CrystalModel::Columns column) const; + QMatrix4x4 getCrystalOrientationMatrix() const; + CrystalModel *m_crystals; int m_populationIndex; QVector3D m_vertices[24]; From 233b577b68f7a68dee73450db54d8d6b0ca487d5 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sun, 14 Feb 2021 23:22:57 +0200 Subject: [PATCH 140/184] Update changelog --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5bd4d59..8d148b8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Ice crystals now have adjustable pyramidal caps - Possibility to save and load simulations - Added controls for prism face distances from the crystal C-axis +- Preview window for crystal shape and orientation ### Changed From 8e19775efd25f25f2b3c4ccff85aabe3135ffaeb Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Mon, 15 Feb 2021 00:44:50 +0200 Subject: [PATCH 141/184] Add proper perspective to crystal preview --- .../gui/crystalPreview/previewRenderArea.cpp | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp b/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp index 2faef50..1d00be6 100644 --- a/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp +++ b/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp @@ -34,14 +34,18 @@ void PreviewRenderArea::paintEvent(QPaintEvent *) { const int numVertices = 24; initializeGeometry(m_vertices, numVertices); + float largestDimension = qMax(1.0f, getFromModel(m_populationIndex, CrystalModel::CaRatioAverage).toFloat()); QMatrix4x4 transformMat; - transformMat.ortho(-1.0f, 1.0f, -1.0f, 1.0f, 0.01f, 1000.0f); + transformMat.scale(500.0f); + transformMat.perspective(90.0f, 1.0, 0.01f, 5.0f); transformMat.lookAt(QVector3D(-2.0f, 2.0f, 2.0f), QVector3D(0.0f, 0.0f, 0.0f), QVector3D(0.0f, 1.0f, 0.0f)); + transformMat.scale(1.0f / largestDimension); QPainter painter(this); painter.setRenderHint(QPainter::RenderHint::Antialiasing); QPen pen; + pen.setColor(QColor(0, 0, 0)); pen.setWidth(3); painter.setPen(pen); @@ -55,20 +59,16 @@ void PreviewRenderArea::paintEvent(QPaintEvent *) QVector4D mappedVertices[numVertices]; for (int i = 0; i < numVertices; ++i) { - mappedVertices[i] = transformMat * orientationMatrix * m_vertices[i].toVector4D(); + mappedVertices[i] = transformMat * orientationMatrix * QVector4D(m_vertices[i], 1.0f); } - float furthestVertexDistance = std::max_element(mappedVertices, mappedVertices + numVertices, [](QVector4D a, QVector4D b) { - return a.length() < b.length(); - })->length(); - QPoint points[numVertices]; std::transform( mappedVertices, mappedVertices + numVertices, points, - [furthestVertexDistance](QVector4D vertex) { - return (250.0f * vertex / furthestVertexDistance).toPoint(); + [](QVector4D vertex) { + return (vertex / vertex.w()).toPoint(); }); painter.drawPolygon(points, 6); From 2ad29fe773d92331a94277bcad6453262d86e7fc Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Mon, 15 Feb 2021 20:02:24 +0200 Subject: [PATCH 142/184] Fix bug in prism face adjustment With some prism face distances outside the range 1.0-2.0 it was possible to generate self-intersecting crystals. Now it should not be possible anymore. --- .../gui/crystalPreview/previewRenderArea.cpp | 33 ++++++++++++------- .../gui/crystalSettingsWidget.cpp | 2 +- .../resources/shaders/raytrace.glsl | 33 ++++++++++++------- 3 files changed, 45 insertions(+), 23 deletions(-) diff --git a/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp b/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp index 1d00be6..c2fdc3c 100644 --- a/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp +++ b/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp @@ -116,10 +116,11 @@ void PreviewRenderArea::initializeGeometry(QVector3D *vertices, int numVertices) }; float deltaAngle = degToRad(60.0f); - for (int face = 0; face < 6; face = face + 2) + QVector2D hexagonCorners[6]; + for (int face = 0; face < 6; ++face) { int previousFace = face == 0 ? 5 : face - 1; - int nextFace = face + 1; + int nextFace = face == 5 ? 0 : face + 1; float previousAngle = (face + 1) * deltaAngle; float currentAngle = previousAngle + deltaAngle; @@ -146,18 +147,28 @@ void PreviewRenderArea::initializeGeometry(QVector3D *vertices, int numVertices) QVector2D v1 = previousCurrentIntersectionDistance < previousNextIntersectionDistance ? previousCurrentIntersection : previousNextIntersection; QVector2D v2 = currentNextIntersectionDistance < previousNextIntersectionDistance ? currentNextIntersection : previousNextIntersection; - // Corresponding vertices of each crystal layer have the same X and Z coordinates - vertices[face] = QVector3D(v1.x(), 1.0f, v1.y()); - vertices[face + 1] = QVector3D(v2.x(), 1.0f, v2.y()); + if (face > 0 && previousNextIntersectionDistance > hexagonCorners[face].length()) + { + v1 = hexagonCorners[face]; + } - vertices[face + 6] = QVector3D(v1.x(), 1.0f, v1.y()); - vertices[face + 6 + 1] = QVector3D(v2.x(), 1.0f, v2.y()); + if (face == 5 && previousNextIntersectionDistance > hexagonCorners[nextFace].length()) + { + v2 = hexagonCorners[nextFace]; + } - vertices[face + 12] = QVector3D(v1.x(), -1.0f, v1.y()); - vertices[face + 12 + 1] = QVector3D(v2.x(), -1.0f, v2.y()); + hexagonCorners[face] = v1; + hexagonCorners[nextFace] = v2; + } - vertices[face + 18] = QVector3D(v1.x(), -1.0f, v1.y()); - vertices[face + 18 + 1] = QVector3D(v2.x(), -1.0f, v2.y()); + for (int face = 0; face < 6; ++face) + { + QVector2D *vertex = &hexagonCorners[face]; + // Corresponding vertices of each crystal layer have the same X and Z coordinates + vertices[face] = QVector3D(vertex->x(), 1.0f, vertex->y()); + vertices[face + 6] = QVector3D(vertex->x(), 1.0f, vertex->y()); + vertices[face + 12] = QVector3D(vertex->x(), -1.0f, vertex->y()); + vertices[face + 18] = QVector3D(vertex->x(), -1.0f, vertex->y()); } // Stretch the crystal to correct C/A ratio diff --git a/src/haloray-core/gui/crystalSettingsWidget.cpp b/src/haloray-core/gui/crystalSettingsWidget.cpp index f8b884b..687a1aa 100644 --- a/src/haloray-core/gui/crystalSettingsWidget.cpp +++ b/src/haloray-core/gui/crystalSettingsWidget.cpp @@ -189,7 +189,7 @@ void CrystalSettingsWidget::setupUi() for (auto i = 0; i < 6; ++i) { - m_prismFaceDistanceSliders[i] = new SliderSpinBox(1.0, 2.0); + m_prismFaceDistanceSliders[i] = new SliderSpinBox(0.0, 4.0); } auto mainLayout = new QFormLayout(this->contentWidget()); diff --git a/src/haloray-core/resources/shaders/raytrace.glsl b/src/haloray-core/resources/shaders/raytrace.glsl index 334f20e..8e1e8ed 100644 --- a/src/haloray-core/resources/shaders/raytrace.glsl +++ b/src/haloray-core/resources/shaders/raytrace.glsl @@ -533,10 +533,11 @@ vec2 lineIntersect(vec2 line1, vec2 line2) void initializeCrystal() { float deltaAngle = radians(60.0); - for (int face = 0; face < 6; face = face + 2) + vec2 hexagonCorners[6]; + for (int face = 0; face < 6; ++face) { int previousFace = face == 0 ? 5 : face - 1; - int nextFace = face + 1; + int nextFace = face == 5 ? 0 : face + 1; float previousAngle = (face + 1) * deltaAngle; float currentAngle = previousAngle + deltaAngle; @@ -562,18 +563,28 @@ void initializeCrystal() vec2 v1 = previousCurrentIntersectionDistance < previousNextIntersectionDistance ? previousCurrentIntersection : previousNextIntersection; vec2 v2 = currentNextIntersectionDistance < previousNextIntersectionDistance ? currentNextIntersection : previousNextIntersection; - vertices[face].xz = v1; - vertices[face + 1].xz = v2; - // Corresponding vertices of each crystal layer have the same X and Z coordinates - vertices[face + 6].xz = v1; - vertices[face + 6 + 1].xz = v2; + if (face > 0 && previousNextIntersectionDistance > length(hexagonCorners[face])) + { + v1 = hexagonCorners[face]; + } - vertices[face + 12].xz = v1; - vertices[face + 12 + 1].xz = v2; + if (face == 5 && previousNextIntersectionDistance > length(hexagonCorners[nextFace])) + { + v2 = hexagonCorners[nextFace]; + } - vertices[face + 18].xz = v1; - vertices[face + 18 + 1].xz = v2; + hexagonCorners[face] = v1; + hexagonCorners[nextFace] = v2; + } + + for (int face = 0; face < 6; ++face) + { + // Corresponding vertices of each crystal layer have the same X and Z coordinates + vertices[face].xz = hexagonCorners[face]; + vertices[face + 6].xz = hexagonCorners[face]; + vertices[face + 12].xz = hexagonCorners[face]; + vertices[face + 18].xz = hexagonCorners[face]; } // Stretch the crystal to correct C/A ratio From 10a462b826364e9c393cc834669be193c65ce408 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Mon, 15 Feb 2021 20:05:08 +0200 Subject: [PATCH 143/184] Remove hardcoded vertex coordinates from shader The vertex values were overwritten anyway, so it was useless to keep them there, even for reference. --- .../resources/shaders/raytrace.glsl | 48 ++++--------------- 1 file changed, 8 insertions(+), 40 deletions(-) diff --git a/src/haloray-core/resources/shaders/raytrace.glsl b/src/haloray-core/resources/shaders/raytrace.glsl index 8e1e8ed..6c79671 100644 --- a/src/haloray-core/resources/shaders/raytrace.glsl +++ b/src/haloray-core/resources/shaders/raytrace.glsl @@ -69,45 +69,7 @@ struct intersection { vec3 hitPoint; }; -/* - Out of this original vertex data only the - Y coordinates are kept, while the X and Z - coordinates are overwritten based on the - prism face distances. The data is still - kept here as reference for now. The vertices - are arranged so that the basal faces lie - in the XZ-plane, while the prism faces are - parallel to the Y-axis. */ - -vec3 vertices[] = vec3[]( - vec3(0.0, 1.0, 1.0), - vec3(-0.8660254038, 1.0, 0.5), - vec3(-0.8660254038, 1.0, -0.5), - vec3(0.0, 1.0, -1.0), - vec3(0.8660254038, 1.0, -0.5), - vec3(0.8660254038, 1.0, 0.5), - - vec3(0.0, 1.0, 1.0), - vec3(-0.8660254038, 1.0, 0.5), - vec3(-0.8660254038, 1.0, -0.5), - vec3(0.0, 1.0, -1.0), - vec3(0.8660254038, 1.0, -0.5), - vec3(0.8660254038, 1.0, 0.5), - - vec3(0.0, -1.0, 1.0), - vec3(-0.8660254038, -1.0, 0.5), - vec3(-0.8660254038, -1.0, -0.5), - vec3(0.0, -1.0, -1.0), - vec3(0.8660254038, -1.0, -0.5), - vec3(0.8660254038, -1.0, 0.5), - - vec3(0.0, -1.0, 1.0), - vec3(-0.8660254038, -1.0, 0.5), - vec3(-0.8660254038, -1.0, -0.5), - vec3(0.0, -1.0, -1.0), - vec3(0.8660254038, -1.0, -0.5), - vec3(0.8660254038, -1.0, 0.5) -); +vec3 vertices[24]; ivec3 triangles[] = ivec3[]( // Face 1 (basal) @@ -580,11 +542,17 @@ void initializeCrystal() for (int face = 0; face < 6; ++face) { - // Corresponding vertices of each crystal layer have the same X and Z coordinates vertices[face].xz = hexagonCorners[face]; + vertices[face].y = 1.0; + vertices[face + 6].xz = hexagonCorners[face]; + vertices[face + 6].y = 1.0; + vertices[face + 12].xz = hexagonCorners[face]; + vertices[face + 12].y = -1.0; + vertices[face + 18].xz = hexagonCorners[face]; + vertices[face + 18].y = -1.0; } // Stretch the crystal to correct C/A ratio From 925c99d83be1ec7efdca36a95ed506a7c46d943e Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Mon, 15 Feb 2021 21:44:16 +0200 Subject: [PATCH 144/184] Scale crystal preview better Now the scaling takes the pyramid caps and adjusted prism faces into account so they do not go outside the preview. --- .../gui/crystalPreview/previewRenderArea.cpp | 23 +++++++++++++++++-- .../gui/crystalPreview/previewRenderArea.h | 1 + 2 files changed, 22 insertions(+), 2 deletions(-) diff --git a/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp b/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp index c2fdc3c..bcfd6b5 100644 --- a/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp +++ b/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp @@ -34,10 +34,10 @@ void PreviewRenderArea::paintEvent(QPaintEvent *) { const int numVertices = 24; initializeGeometry(m_vertices, numVertices); - float largestDimension = qMax(1.0f, getFromModel(m_populationIndex, CrystalModel::CaRatioAverage).toFloat()); + float largestDimension = getFurthestVertexDistance(m_vertices, numVertices); QMatrix4x4 transformMat; - transformMat.scale(500.0f); + transformMat.scale(600.0f); transformMat.perspective(90.0f, 1.0, 0.01f, 5.0f); transformMat.lookAt(QVector3D(-2.0f, 2.0f, 2.0f), QVector3D(0.0f, 0.0f, 0.0f), QVector3D(0.0f, 1.0f, 0.0f)); transformMat.scale(1.0f / largestDimension); @@ -115,6 +115,14 @@ void PreviewRenderArea::initializeGeometry(QVector3D *vertices, int numVertices) getFromModel(m_populationIndex, CrystalModel::PrismFaceDistance6).toFloat(), }; + float maxPrismFaceDistance = *std::max_element(prismFaceDistances, prismFaceDistances + 6); + std::transform(prismFaceDistances, prismFaceDistances + 6, prismFaceDistances, [maxPrismFaceDistance](float distance) { + if (maxPrismFaceDistance > 0.0f) + return distance / maxPrismFaceDistance; + + return 1.0f; + }); + float deltaAngle = degToRad(60.0f); QVector2D hexagonCorners[6]; for (int face = 0; face < 6; ++face) @@ -198,6 +206,17 @@ void PreviewRenderArea::initializeGeometry(QVector3D *vertices, int numVertices) } } +float PreviewRenderArea::getFurthestVertexDistance(QVector3D *vertices, int numVertices) const +{ + return std::max_element( + vertices, + vertices + numVertices, + [](QVector3D a, QVector3D b) + { + return a.lengthSquared() < b.lengthSquared(); + })->length(); +} + QMatrix4x4 PreviewRenderArea::getCrystalOrientationMatrix() const { float tilt = getFromModel(m_populationIndex, CrystalModel::TiltAverage).toFloat(); diff --git a/src/haloray-core/gui/crystalPreview/previewRenderArea.h b/src/haloray-core/gui/crystalPreview/previewRenderArea.h index 6f59768..773578a 100644 --- a/src/haloray-core/gui/crystalPreview/previewRenderArea.h +++ b/src/haloray-core/gui/crystalPreview/previewRenderArea.h @@ -25,6 +25,7 @@ public slots: private: QVariant getFromModel(int row, CrystalModel::Columns column) const; QMatrix4x4 getCrystalOrientationMatrix() const; + float getFurthestVertexDistance(QVector3D *vertices, int numVertices) const; CrystalModel *m_crystals; int m_populationIndex; From b3b65b7466b7ef7640649fb598a874aa63f97ee8 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Mon, 15 Feb 2021 21:49:22 +0200 Subject: [PATCH 145/184] Add size policy for crystal preview --- .../gui/crystalPreview/crystalPreviewWindow.cpp | 3 --- src/haloray-core/gui/crystalPreview/previewRenderArea.cpp | 8 +++++++- src/haloray-core/gui/crystalPreview/previewRenderArea.h | 2 ++ 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.cpp b/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.cpp index 65f0906..5eb914e 100644 --- a/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.cpp +++ b/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.cpp @@ -35,11 +35,8 @@ void CrystalPreviewWindow::onMainWindowPopulationSelectionChange(int index) void CrystalPreviewWindow::setupUi() { - // TODO: Replace minimum size with size policy and size hint - setMinimumSize(QSize(320, 320)); setWindowTitle(tr("Crystal preview")); - m_populationSelector = new QComboBox(); m_populationSelector->setModel(m_crystalModel); m_populationSelector->setModelColumn(CrystalModel::PopulationName); diff --git a/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp b/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp index bcfd6b5..682d3c1 100644 --- a/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp +++ b/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp @@ -3,6 +3,7 @@ #include #include #include +#include #include #include "../crystalModel.h" #include "../../simulation/trigonometryUtilities.h" @@ -15,9 +16,9 @@ PreviewRenderArea::PreviewRenderArea(CrystalModel *crystals, QWidget *parent) m_crystals(crystals), m_populationIndex(0) { - // TODO: Set size policy and size hint setBackgroundRole(QPalette::Base); setAutoFillBackground(true); + setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding); connect(m_crystals, &CrystalModel::dataChanged, this, [this]() { update(); @@ -30,6 +31,11 @@ void PreviewRenderArea::onPopulationSelectionChange(int index) update(); } +QSize PreviewRenderArea::sizeHint() const +{ + return QSize(300, 300); +} + void PreviewRenderArea::paintEvent(QPaintEvent *) { const int numVertices = 24; diff --git a/src/haloray-core/gui/crystalPreview/previewRenderArea.h b/src/haloray-core/gui/crystalPreview/previewRenderArea.h index 773578a..1a4376e 100644 --- a/src/haloray-core/gui/crystalPreview/previewRenderArea.h +++ b/src/haloray-core/gui/crystalPreview/previewRenderArea.h @@ -5,6 +5,7 @@ #include "../crystalModel.h" class QMatrix4x4; +class QSize; namespace HaloRay { @@ -17,6 +18,7 @@ class PreviewRenderArea : public QWidget public slots: void onPopulationSelectionChange(int index); + QSize sizeHint() const override; protected: void paintEvent(QPaintEvent *event) override; From c02ca0604127968eddc00db0565ed421f7f91951 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Mon, 15 Feb 2021 21:59:17 +0200 Subject: [PATCH 146/184] Adjust menu names and shortcuts --- src/haloray-core/gui/mainWindow.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/haloray-core/gui/mainWindow.cpp b/src/haloray-core/gui/mainWindow.cpp index 4704af6..999f9e9 100644 --- a/src/haloray-core/gui/mainWindow.cpp +++ b/src/haloray-core/gui/mainWindow.cpp @@ -168,15 +168,15 @@ void MainWindow::setupUi() void MainWindow::setupMenuBar() { auto fileMenu = menuBar()->addMenu(tr("&File")); - m_saveImageAction = fileMenu->addAction(tr("Save image")); + m_saveImageAction = fileMenu->addAction(tr("Save &image")); fileMenu->addSeparator(); - m_loadSimulationAction = fileMenu->addAction(tr("Load simulation")); - m_saveSimulationAction = fileMenu->addAction(tr("Save simulation")); + m_loadSimulationAction = fileMenu->addAction(tr("&Load simulation")); + m_saveSimulationAction = fileMenu->addAction(tr("&Save simulation")); fileMenu->addSeparator(); m_quitAction = fileMenu->addAction(tr("&Quit")); - auto miscMenu = menuBar()->addMenu(tr("&Misc")); - m_openCrystalPreviewWindow = miscMenu->addAction(tr("Open crystal preview")); + auto miscMenu = menuBar()->addMenu(tr("&View")); + m_openCrystalPreviewWindow = miscMenu->addAction(tr("Crystal &preview")); } QScrollArea *MainWindow::setupSideBarScrollArea() From 41a8d2d1e341838cb4e20fef1ae191f5394f83e5 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Mon, 15 Feb 2021 22:01:02 +0200 Subject: [PATCH 147/184] Open HaloRay maximized --- src/haloray/main.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/haloray/main.cpp b/src/haloray/main.cpp index 2d16841..63875d5 100644 --- a/src/haloray/main.cpp +++ b/src/haloray/main.cpp @@ -83,7 +83,7 @@ int main(int argc, char *argv[]) openGLContext.makeCurrent(&surface); HaloRay::MainWindow mainWindow; - mainWindow.show(); + mainWindow.showMaximized(); return app.exec(); From 4c2e894aa109efaa29241c4582de6bfd01eedcf2 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Mon, 15 Feb 2021 22:01:13 +0200 Subject: [PATCH 148/184] Make sure crystal preview window closes with main window --- src/haloray-core/gui/crystalPreview/crystalPreviewWindow.cpp | 2 +- src/haloray-core/gui/mainWindow.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.cpp b/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.cpp index 5eb914e..90e9cb2 100644 --- a/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.cpp +++ b/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.cpp @@ -9,7 +9,7 @@ namespace HaloRay { CrystalPreviewWindow::CrystalPreviewWindow(CrystalModel *model, int initialIndex, QWidget *parent) - : QWidget(parent), + : QWidget(parent, Qt::Window), m_crystalModel(model), m_selectedPopulationIndex(initialIndex) { diff --git a/src/haloray-core/gui/mainWindow.cpp b/src/haloray-core/gui/mainWindow.cpp index 999f9e9..a83df40 100644 --- a/src/haloray-core/gui/mainWindow.cpp +++ b/src/haloray-core/gui/mainWindow.cpp @@ -124,7 +124,7 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), m_previousTimedIt StateSaver::LoadState(filename, m_simulationStateModel, m_crystalModel); }); connect(m_openCrystalPreviewWindow, &QAction::triggered, [this]() { - auto previewWindow = new CrystalPreviewWindow(m_crystalModel, m_crystalSettingsWidget->getCurrentPopulationIndex()); + auto previewWindow = new CrystalPreviewWindow(m_crystalModel, m_crystalSettingsWidget->getCurrentPopulationIndex(), this); connect(m_crystalSettingsWidget, &CrystalSettingsWidget::populationSelectionChanged, previewWindow, &CrystalPreviewWindow::onMainWindowPopulationSelectionChange); previewWindow->show(); }); From c4571ae6ccd360070728e411c9d36ddda22d58d0 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Mon, 15 Feb 2021 22:28:37 +0200 Subject: [PATCH 149/184] Remove prism face distance scaling Scaling of the prism face distances to the 0.0-1.0 range was unnecessary and was actually changing the C/A ratio of the crystal. --- .../gui/crystalPreview/previewRenderArea.cpp | 8 -------- src/haloray-core/resources/shaders/raytrace.glsl | 4 ---- src/haloray-core/simulation/simulationEngine.cpp | 10 +--------- 3 files changed, 1 insertion(+), 21 deletions(-) diff --git a/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp b/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp index 682d3c1..932f50c 100644 --- a/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp +++ b/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp @@ -121,14 +121,6 @@ void PreviewRenderArea::initializeGeometry(QVector3D *vertices, int numVertices) getFromModel(m_populationIndex, CrystalModel::PrismFaceDistance6).toFloat(), }; - float maxPrismFaceDistance = *std::max_element(prismFaceDistances, prismFaceDistances + 6); - std::transform(prismFaceDistances, prismFaceDistances + 6, prismFaceDistances, [maxPrismFaceDistance](float distance) { - if (maxPrismFaceDistance > 0.0f) - return distance / maxPrismFaceDistance; - - return 1.0f; - }); - float deltaAngle = degToRad(60.0f); QVector2D hexagonCorners[6]; for (int face = 0; face < 6; ++face) diff --git a/src/haloray-core/resources/shaders/raytrace.glsl b/src/haloray-core/resources/shaders/raytrace.glsl index 6c79671..73e97ff 100644 --- a/src/haloray-core/resources/shaders/raytrace.glsl +++ b/src/haloray-core/resources/shaders/raytrace.glsl @@ -37,10 +37,6 @@ uniform struct crystalProperties_t float lowerApexHeightAverage; float lowerApexHeightStd; - /* The prism face distances are expected - to be scaled so that the largest value is - always 1.0. That should be done outside the - shader. */ float prismFaceDistances[6]; } crystalProperties; diff --git a/src/haloray-core/simulation/simulationEngine.cpp b/src/haloray-core/simulation/simulationEngine.cpp index a8f0347..1ab2daf 100644 --- a/src/haloray-core/simulation/simulationEngine.cpp +++ b/src/haloray-core/simulation/simulationEngine.cpp @@ -205,15 +205,7 @@ void SimulationEngine::step() m_simulationShader->setUniformValue("crystalProperties.lowerApexAngle", degToRad(crystals.lowerApexAngle)); m_simulationShader->setUniformValue("crystalProperties.lowerApexHeightAverage", crystals.lowerApexHeightAverage); m_simulationShader->setUniformValue("crystalProperties.lowerApexHeightStd", crystals.lowerApexHeightStd); - - float scaledPrismFaceDistances[6]; - float maxPrismFaceDistance = *std::max_element(crystals.prismFaceDistances, crystals.prismFaceDistances + 6); - for (auto face = 0; face < 6; ++face) - { - scaledPrismFaceDistances[face] = maxPrismFaceDistance > 0.0f ? crystals.prismFaceDistances[face] / maxPrismFaceDistance : 1.0f; - } - - m_simulationShader->setUniformValueArray("crystalProperties.prismFaceDistances", scaledPrismFaceDistances, 6, 1); + m_simulationShader->setUniformValueArray("crystalProperties.prismFaceDistances", crystals.prismFaceDistances, 6, 1); m_simulationShader->setUniformValue("camera.pitch", degToRad(m_camera.pitch)); m_simulationShader->setUniformValue("camera.yaw", degToRad(m_camera.yaw)); From 50a2c85b3f3bce4003264dc28d206a54aa03fbd5 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Tue, 16 Feb 2021 00:08:33 +0200 Subject: [PATCH 150/184] Fix bug where blank crystal preview bug The preview would be blank if the user loaded a previously saved simulation and opened the preview window right after. --- src/haloray-core/gui/crystalSettingsWidget.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/haloray-core/gui/crystalSettingsWidget.cpp b/src/haloray-core/gui/crystalSettingsWidget.cpp index 687a1aa..800c0a6 100644 --- a/src/haloray-core/gui/crystalSettingsWidget.cpp +++ b/src/haloray-core/gui/crystalSettingsWidget.cpp @@ -98,7 +98,7 @@ CrystalSettingsWidget::CrystalSettingsWidget(CrystalModel *model, QWidget *paren connect(m_model, &CrystalModel::rowsInserted, updateRemovePopulationButtonState); connect(m_model, &CrystalModel::rowsRemoved, updateRemovePopulationButtonState); - connect(m_mapper, &QDataWidgetMapper::currentIndexChanged, [this](int index) { + connect(m_populationComboBox, QOverload::of(&QComboBox::currentIndexChanged), [this](int index) { emit populationSelectionChanged(index); }); @@ -123,7 +123,7 @@ CrystalSettingsWidget::CrystalSettingsWidget(CrystalModel *model, QWidget *paren int CrystalSettingsWidget::getCurrentPopulationIndex() const { - return m_mapper->currentIndex(); + return m_populationComboBox->currentIndex(); } void CrystalSettingsWidget::setupUi() From c6a1e1ec5efd26ca42b445b9a4d66af3c3d5d364 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Tue, 16 Feb 2021 00:09:36 +0200 Subject: [PATCH 151/184] Move atmosphere settings to bottom of side panel --- src/haloray-core/gui/mainWindow.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/haloray-core/gui/mainWindow.cpp b/src/haloray-core/gui/mainWindow.cpp index a83df40..8c40f54 100644 --- a/src/haloray-core/gui/mainWindow.cpp +++ b/src/haloray-core/gui/mainWindow.cpp @@ -191,9 +191,9 @@ QScrollArea *MainWindow::setupSideBarScrollArea() scrollableLayout->setSizeConstraint(QLayout::SetMinAndMaxSize); scrollableLayout->addWidget(m_generalSettingsWidget); - scrollableLayout->addWidget(m_atmosphereSettingsWidget); scrollableLayout->addWidget(m_crystalSettingsWidget); scrollableLayout->addWidget(m_viewSettingsWidget); + scrollableLayout->addWidget(m_atmosphereSettingsWidget); scrollableLayout->addStretch(); auto scrollArea = new QScrollArea(); From 6f51d9c1a124b17f137f391b30f7558b6cd0bff5 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Tue, 16 Feb 2021 00:32:44 +0200 Subject: [PATCH 152/184] Add menu item for resetting simulation Selecting File -> New Simulation resets the crystal populations to one random crystal population. --- src/haloray-core/gui/mainWindow.cpp | 21 +++++++++++++++++++-- src/haloray-core/gui/mainWindow.h | 2 ++ 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/src/haloray-core/gui/mainWindow.cpp b/src/haloray-core/gui/mainWindow.cpp index 8c40f54..b944843 100644 --- a/src/haloray-core/gui/mainWindow.cpp +++ b/src/haloray-core/gui/mainWindow.cpp @@ -57,8 +57,13 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), m_previousTimedIt // Signals from crystal model connect(m_crystalModel, &CrystalModel::dataChanged, [this]() { - m_engine->clear(); - m_openGLWidget->update(); + restartSimulation(); + }); + connect(m_crystalModel, &CrystalModel::rowsInserted, [this]() { + restartSimulation(); + }); + connect(m_crystalModel, &CrystalModel::rowsRemoved, [this]() { + restartSimulation(); }); // Signals from view settings @@ -128,6 +133,10 @@ MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), m_previousTimedIt connect(m_crystalSettingsWidget, &CrystalSettingsWidget::populationSelectionChanged, previewWindow, &CrystalPreviewWindow::onMainWindowPopulationSelectionChange); previewWindow->show(); }); + connect(m_resetSimulationAction, &QAction::triggered, [this]() { + m_crystalModel->clear(); + m_crystalModel->addRow(CrystalPopulationPreset::Random); + }); setupRenderTimer(); } @@ -168,6 +177,8 @@ void MainWindow::setupUi() void MainWindow::setupMenuBar() { auto fileMenu = menuBar()->addMenu(tr("&File")); + m_resetSimulationAction = fileMenu->addAction(tr("&New simulation")); + fileMenu->addSeparator(); m_saveImageAction = fileMenu->addAction(tr("Save &image")); fileMenu->addSeparator(); m_loadSimulationAction = fileMenu->addAction(tr("&Load simulation")); @@ -252,4 +263,10 @@ void MainWindow::setupRenderTimer() }); } +void HaloRay::MainWindow::restartSimulation() +{ + m_engine->clear(); + m_openGLWidget->update(); +} + } diff --git a/src/haloray-core/gui/mainWindow.h b/src/haloray-core/gui/mainWindow.h index 514c93c..917226f 100644 --- a/src/haloray-core/gui/mainWindow.h +++ b/src/haloray-core/gui/mainWindow.h @@ -37,6 +37,7 @@ class MainWindow : public QMainWindow QProgressBar *setupProgressBar(); void setupMenuBar(); void setupRenderTimer(); + void restartSimulation(); GeneralSettingsWidget *m_generalSettingsWidget; CrystalSettingsWidget *m_crystalSettingsWidget; @@ -46,6 +47,7 @@ class MainWindow : public QMainWindow RenderButton *m_renderButton; OpenGLWidget *m_openGLWidget; + QAction *m_resetSimulationAction; QAction *m_saveImageAction; QAction *m_quitAction; QAction *m_saveSimulationAction; From 6577d6a622d294f188089d8cf86bb75d41288e36 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Tue, 16 Feb 2021 00:35:02 +0200 Subject: [PATCH 153/184] Rename CollapsibleBox constructor parameter The naming was inverse of how it was actually working. Setting "collapsed" to true expanded the box. --- src/haloray-core/gui/collapsibleBox.cpp | 4 ++-- src/haloray-core/gui/collapsibleBox.h | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/haloray-core/gui/collapsibleBox.cpp b/src/haloray-core/gui/collapsibleBox.cpp index e65e2c3..a8ab80a 100644 --- a/src/haloray-core/gui/collapsibleBox.cpp +++ b/src/haloray-core/gui/collapsibleBox.cpp @@ -24,10 +24,10 @@ CollapsibleBox::CollapsibleBox(QString title, QWidget *parent) connect(m_headerButton, &QPushButton::toggled, m_content, &QWidget::setVisible); } -CollapsibleBox::CollapsibleBox(QString title, bool collapsed, QWidget *parent) +CollapsibleBox::CollapsibleBox(QString title, bool expanded, QWidget *parent) : CollapsibleBox(title, parent) { - m_headerButton->setChecked(collapsed); + m_headerButton->setChecked(expanded); } QWidget *CollapsibleBox::contentWidget() const diff --git a/src/haloray-core/gui/collapsibleBox.h b/src/haloray-core/gui/collapsibleBox.h index 6bd7548..00a6389 100644 --- a/src/haloray-core/gui/collapsibleBox.h +++ b/src/haloray-core/gui/collapsibleBox.h @@ -14,7 +14,7 @@ class CollapsibleBox : public QWidget Q_OBJECT public: CollapsibleBox(QString title, QWidget *parent = nullptr); - CollapsibleBox(QString title, bool collapsed, QWidget * parent = nullptr); + CollapsibleBox(QString title, bool expanded, QWidget * parent = nullptr); QWidget *contentWidget() const; From 3000cb41bcae56e5acb7d6f51751dcba116cf48c Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Tue, 16 Feb 2021 00:35:56 +0200 Subject: [PATCH 154/184] Show view settings expanded by default --- src/haloray-core/gui/viewSettingsWidget.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/haloray-core/gui/viewSettingsWidget.cpp b/src/haloray-core/gui/viewSettingsWidget.cpp index f820156..d80c7fa 100644 --- a/src/haloray-core/gui/viewSettingsWidget.cpp +++ b/src/haloray-core/gui/viewSettingsWidget.cpp @@ -11,7 +11,7 @@ namespace HaloRay { ViewSettingsWidget::ViewSettingsWidget(SimulationStateModel *viewModel, QWidget *parent) - : CollapsibleBox("View settings", false, parent), + : CollapsibleBox("View settings", true, parent), m_viewModel(viewModel) { setupUi(); From bd432de15a97d7dd9dc8830e0ca4668e04a03032 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Tue, 16 Feb 2021 18:13:10 +0200 Subject: [PATCH 155/184] Update gitignore file --- .gitignore | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 72c9d43..69b5fd1 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,4 @@ -build/* +build/ build-*/ .vscode/* .vs/* From 906fdcbfb43a50b57e26bcf784fdd761b0e7b0f0 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Tue, 16 Feb 2021 18:20:34 +0200 Subject: [PATCH 156/184] Replace Powershell aliases with real command names --- scripts/build.ps1 | 23 +++++++++++------------ scripts/test.ps1 | 16 ++++++++-------- 2 files changed, 19 insertions(+), 20 deletions(-) diff --git a/scripts/build.ps1 b/scripts/build.ps1 index 2efa764..a29ce8c 100644 --- a/scripts/build.ps1 +++ b/scripts/build.ps1 @@ -1,13 +1,12 @@ # Windows build script for Appveyor -pushd "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build" -cmd /c "vcvars64.bat&set" | -foreach { +Push-Location "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build" +cmd /c "vcvars64.bat&set" | ForEach-Object { if ($_ -match "=") { - $v = $_.split("="); set-item -force -path "ENV:\$($v[0])" -value "$($v[1])" + $v = $_.split("="); set-item -force -path "ENV:\$($v[0])" -value "$($v[1])" } } -popd +Pop-Location Write-Host "`nVisual Studio 2019 Command Prompt variables set." -ForegroundColor Yellow $extraParameters = if ($gitBranch -eq "master") { @@ -15,16 +14,16 @@ $extraParameters = if ($gitBranch -eq "master") { "-DHALORAY_VERSION='${version}'" } -pushd +Push-Location mkdir build -cd src +Set-Location src & "${env:Qt5_DIR}\bin\qmake.exe" main.pro -o ..\build\ -config release -cd ..\build +Set-Location ..\build nmake 2>$null -popd +Pop-Location -pushd -cd build\haloray\release +Push-Location +Set-Location build\haloray\release & "${env:Qt5_DIR}\bin\windeployqt.exe" ` --no-quick-import ` --no-translations ` @@ -35,4 +34,4 @@ cd build\haloray\release --no-compiler-runtime ` --release ` haloray.exe -popd +Pop-Location diff --git a/scripts/test.ps1 b/scripts/test.ps1 index c859d28..e1bf855 100644 --- a/scripts/test.ps1 +++ b/scripts/test.ps1 @@ -1,22 +1,22 @@ # Windows test script for Appveyor -pushd "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build" +Push-Location "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build" cmd /c "vcvars64.bat&set" | -foreach { +ForEach-Object { if ($_ -match "=") { $v = $_.split("="); set-item -force -path "ENV:\$($v[0])" -value "$($v[1])" } } -popd +Pop-Location Write-Host "`nVisual Studio 2019 Command Prompt variables set." -ForegroundColor Yellow -pushd -cd build +Push-Location +Set-Location build nmake check TESTARGS="-o xunit-results.xml,xunitxml" 2>$null foreach ($testReport in Get-ChildItem -Path xunit-results.xml -Recurse) { - $wc = New-Object 'System.Net.WebClient' - $wc.UploadFile("https://ci.appveyor.com/api/testresults/junit/$($env:APPVEYOR_JOB_ID)", $testReport.FullName) + $wc = New-Object 'System.Net.WebClient' + $wc.UploadFile("https://ci.appveyor.com/api/testresults/junit/$($env:APPVEYOR_JOB_ID)", $testReport.FullName) } -popd +Pop-Location From ef1ee78f4173a62d1aa2b64ff241bacbbe3fc37d Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Tue, 16 Feb 2021 18:36:03 +0200 Subject: [PATCH 157/184] Fix version numbering when doing a release from master branch Adding a version number to the HaloRay window title bar was not working correctly. It was broken in commit 3c06f4fb041b9d4d4007bf3ebce2e6bc2064ed3b when switching from CMake to qmake. --- scripts/build.ps1 | 4 ++-- src/haloray-core/haloray-core.pro | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/scripts/build.ps1 b/scripts/build.ps1 index a29ce8c..3cf8fe0 100644 --- a/scripts/build.ps1 +++ b/scripts/build.ps1 @@ -9,9 +9,9 @@ cmd /c "vcvars64.bat&set" | ForEach-Object { Pop-Location Write-Host "`nVisual Studio 2019 Command Prompt variables set." -ForegroundColor Yellow -$extraParameters = if ($gitBranch -eq "master") { +if ($gitBranch -eq "master") { $version = ${env:APPVEYOR_BUILD_VERSION}.Split('-')[0] - "-DHALORAY_VERSION='${version}'" + $env:HALORAY_VERSION = "${version}" } Push-Location diff --git a/src/haloray-core/haloray-core.pro b/src/haloray-core/haloray-core.pro index 3785c99..b59d1ad 100644 --- a/src/haloray-core/haloray-core.pro +++ b/src/haloray-core/haloray-core.pro @@ -20,7 +20,7 @@ isEmpty(GIT_BRANCH) { HALORAY_VERSION = $$(HALORAY_VERSION) !isEmpty(HALORAY_VERSION) { - DEFINES += "HALORAY_VERSION=\"$(HALORAY_VERSION)\"" + DEFINES += "HALORAY_VERSION=\"$$HALORAY_VERSION\"" } HEADERS += \ From 627ab05f2b46752461b8e8fe8cb1a4023ad4154b Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Tue, 16 Feb 2021 18:44:10 +0200 Subject: [PATCH 158/184] Add missing gitBranch variable to build script --- scripts/build.ps1 | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/build.ps1 b/scripts/build.ps1 index 3cf8fe0..d65868a 100644 --- a/scripts/build.ps1 +++ b/scripts/build.ps1 @@ -9,6 +9,7 @@ cmd /c "vcvars64.bat&set" | ForEach-Object { Pop-Location Write-Host "`nVisual Studio 2019 Command Prompt variables set." -ForegroundColor Yellow +$gitBranch = $env:APPVEYOR_REPO_BRANCH if ($gitBranch -eq "master") { $version = ${env:APPVEYOR_BUILD_VERSION}.Split('-')[0] $env:HALORAY_VERSION = "${version}" From 0d89d37e6b434f442af33d4f5568202cb27b465c Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Tue, 16 Feb 2021 18:47:28 +0200 Subject: [PATCH 159/184] Change sub-project names Now the root project is called HaloRay and the main entry point project is called main, instead of the other way around. --- scripts/build.ps1 | 4 ++-- scripts/package.ps1 | 2 +- scripts/test.ps1 | 2 +- src/{main.pro => haloray.pro} | 4 ++-- src/{haloray => main}/main.cpp | 0 src/{haloray/haloray.pro => main/main.pro} | 0 6 files changed, 6 insertions(+), 6 deletions(-) rename src/{main.pro => haloray.pro} (66%) rename src/{haloray => main}/main.cpp (100%) rename src/{haloray/haloray.pro => main/main.pro} (100%) diff --git a/scripts/build.ps1 b/scripts/build.ps1 index d65868a..97c5b04 100644 --- a/scripts/build.ps1 +++ b/scripts/build.ps1 @@ -18,13 +18,13 @@ if ($gitBranch -eq "master") { Push-Location mkdir build Set-Location src -& "${env:Qt5_DIR}\bin\qmake.exe" main.pro -o ..\build\ -config release +& "${env:Qt5_DIR}\bin\qmake.exe" haloray.pro -o ..\build\ -config release Set-Location ..\build nmake 2>$null Pop-Location Push-Location -Set-Location build\haloray\release +Set-Location build\main\release & "${env:Qt5_DIR}\bin\windeployqt.exe" ` --no-quick-import ` --no-translations ` diff --git a/scripts/package.ps1 b/scripts/package.ps1 index 10adbc7..15354d3 100644 --- a/scripts/package.ps1 +++ b/scripts/package.ps1 @@ -9,7 +9,7 @@ else { } $destination = "${env:APPVEYOR_BUILD_FOLDER}\haloray-${version}.zip" -$buildLocation = "${env:APPVEYOR_BUILD_FOLDER}\build\haloray\release\*" +$buildLocation = "${env:APPVEYOR_BUILD_FOLDER}\build\main\release\*" 7z a $destination $buildLocation '-x!*.lib' '-x!*.res' '-x!*.obj' 7z a $destination "${env:APPVEYOR_BUILD_FOLDER}\*.md" diff --git a/scripts/test.ps1 b/scripts/test.ps1 index e1bf855..0519def 100644 --- a/scripts/test.ps1 +++ b/scripts/test.ps1 @@ -4,7 +4,7 @@ Push-Location "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\ cmd /c "vcvars64.bat&set" | ForEach-Object { if ($_ -match "=") { - $v = $_.split("="); set-item -force -path "ENV:\$($v[0])" -value "$($v[1])" + $v = $_.split("="); set-item -force -path "ENV:\$($v[0])" -value "$($v[1])" } } Pop-Location diff --git a/src/main.pro b/src/haloray.pro similarity index 66% rename from src/main.pro rename to src/haloray.pro index c1f3d8b..3d6f7b1 100644 --- a/src/main.pro +++ b/src/haloray.pro @@ -1,8 +1,8 @@ TEMPLATE = subdirs SUBDIRS += \ - haloray \ + main \ haloray-core \ tests -haloray.depends = haloray-core +main.depends = haloray-core tests.depends = haloray-core diff --git a/src/haloray/main.cpp b/src/main/main.cpp similarity index 100% rename from src/haloray/main.cpp rename to src/main/main.cpp diff --git a/src/haloray/haloray.pro b/src/main/main.pro similarity index 100% rename from src/haloray/haloray.pro rename to src/main/main.pro From a6a480e1642fb378e513cd71b90c3bbeca44813e Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Tue, 16 Feb 2021 19:05:46 +0200 Subject: [PATCH 160/184] Move some source and header files to subdirectories Now reusable components and model classes are in their own folders. --- .../gui/atmosphereSettingsWidget.cpp | 4 ++-- .../gui/atmosphereSettingsWidget.h | 2 +- .../addCrystalPopulationButton.cpp | 0 .../addCrystalPopulationButton.h | 2 +- .../gui/{ => components}/collapsibleBox.cpp | 0 .../gui/{ => components}/collapsibleBox.h | 0 .../gui/{ => components}/renderButton.cpp | 0 .../gui/{ => components}/renderButton.h | 0 .../gui/{ => components}/sliderSpinBox.cpp | 0 .../gui/{ => components}/sliderSpinBox.h | 0 .../crystalPreview/crystalPreviewWindow.cpp | 2 +- .../gui/crystalPreview/previewRenderArea.cpp | 1 - .../gui/crystalPreview/previewRenderArea.h | 2 +- .../gui/crystalSettingsWidget.cpp | 8 +++---- src/haloray-core/gui/crystalSettingsWidget.h | 2 +- .../gui/generalSettingsWidget.cpp | 4 ++-- src/haloray-core/gui/generalSettingsWidget.h | 6 ++--- src/haloray-core/gui/mainWindow.cpp | 16 ++++++------- src/haloray-core/gui/mainWindow.h | 2 +- .../gui/{ => models}/crystalModel.cpp | 2 +- .../gui/{ => models}/crystalModel.h | 2 +- .../gui/{ => models}/simulationStateModel.cpp | 6 ++--- .../gui/{ => models}/simulationStateModel.h | 0 src/haloray-core/gui/openGLWidget.cpp | 10 ++++---- src/haloray-core/gui/openGLWidget.h | 2 +- src/haloray-core/gui/stateSaver.cpp | 8 +++---- src/haloray-core/gui/viewSettingsWidget.cpp | 6 ++--- src/haloray-core/gui/viewSettingsWidget.h | 4 ++-- src/haloray-core/haloray-core.pro | 24 +++++++++---------- 29 files changed, 57 insertions(+), 58 deletions(-) rename src/haloray-core/gui/{ => components}/addCrystalPopulationButton.cpp (100%) rename src/haloray-core/gui/{ => components}/addCrystalPopulationButton.h (91%) rename src/haloray-core/gui/{ => components}/collapsibleBox.cpp (100%) rename src/haloray-core/gui/{ => components}/collapsibleBox.h (100%) rename src/haloray-core/gui/{ => components}/renderButton.cpp (100%) rename src/haloray-core/gui/{ => components}/renderButton.h (100%) rename src/haloray-core/gui/{ => components}/sliderSpinBox.cpp (100%) rename src/haloray-core/gui/{ => components}/sliderSpinBox.h (100%) rename src/haloray-core/gui/{ => models}/crystalModel.cpp (99%) rename src/haloray-core/gui/{ => models}/crystalModel.h (97%) rename src/haloray-core/gui/{ => models}/simulationStateModel.cpp (98%) rename src/haloray-core/gui/{ => models}/simulationStateModel.h (100%) diff --git a/src/haloray-core/gui/atmosphereSettingsWidget.cpp b/src/haloray-core/gui/atmosphereSettingsWidget.cpp index 84ff61b..b0d9b84 100644 --- a/src/haloray-core/gui/atmosphereSettingsWidget.cpp +++ b/src/haloray-core/gui/atmosphereSettingsWidget.cpp @@ -2,8 +2,8 @@ #include #include #include -#include "simulationStateModel.h" -#include "sliderSpinBox.h" +#include "models/simulationStateModel.h" +#include "components/sliderSpinBox.h" namespace HaloRay { diff --git a/src/haloray-core/gui/atmosphereSettingsWidget.h b/src/haloray-core/gui/atmosphereSettingsWidget.h index 9fb15c4..b8400be 100644 --- a/src/haloray-core/gui/atmosphereSettingsWidget.h +++ b/src/haloray-core/gui/atmosphereSettingsWidget.h @@ -1,7 +1,7 @@ #pragma once #include -#include "collapsibleBox.h" +#include "components/collapsibleBox.h" class QDataWidgetMapper; class QCheckBox; diff --git a/src/haloray-core/gui/addCrystalPopulationButton.cpp b/src/haloray-core/gui/components/addCrystalPopulationButton.cpp similarity index 100% rename from src/haloray-core/gui/addCrystalPopulationButton.cpp rename to src/haloray-core/gui/components/addCrystalPopulationButton.cpp diff --git a/src/haloray-core/gui/addCrystalPopulationButton.h b/src/haloray-core/gui/components/addCrystalPopulationButton.h similarity index 91% rename from src/haloray-core/gui/addCrystalPopulationButton.h rename to src/haloray-core/gui/components/addCrystalPopulationButton.h index 3fb0841..e09475f 100644 --- a/src/haloray-core/gui/addCrystalPopulationButton.h +++ b/src/haloray-core/gui/components/addCrystalPopulationButton.h @@ -1,6 +1,6 @@ #pragma once #include -#include "../simulation/crystalPopulation.h" +#include "simulation/crystalPopulation.h" class QWidget; class QMenu; diff --git a/src/haloray-core/gui/collapsibleBox.cpp b/src/haloray-core/gui/components/collapsibleBox.cpp similarity index 100% rename from src/haloray-core/gui/collapsibleBox.cpp rename to src/haloray-core/gui/components/collapsibleBox.cpp diff --git a/src/haloray-core/gui/collapsibleBox.h b/src/haloray-core/gui/components/collapsibleBox.h similarity index 100% rename from src/haloray-core/gui/collapsibleBox.h rename to src/haloray-core/gui/components/collapsibleBox.h diff --git a/src/haloray-core/gui/renderButton.cpp b/src/haloray-core/gui/components/renderButton.cpp similarity index 100% rename from src/haloray-core/gui/renderButton.cpp rename to src/haloray-core/gui/components/renderButton.cpp diff --git a/src/haloray-core/gui/renderButton.h b/src/haloray-core/gui/components/renderButton.h similarity index 100% rename from src/haloray-core/gui/renderButton.h rename to src/haloray-core/gui/components/renderButton.h diff --git a/src/haloray-core/gui/sliderSpinBox.cpp b/src/haloray-core/gui/components/sliderSpinBox.cpp similarity index 100% rename from src/haloray-core/gui/sliderSpinBox.cpp rename to src/haloray-core/gui/components/sliderSpinBox.cpp diff --git a/src/haloray-core/gui/sliderSpinBox.h b/src/haloray-core/gui/components/sliderSpinBox.h similarity index 100% rename from src/haloray-core/gui/sliderSpinBox.h rename to src/haloray-core/gui/components/sliderSpinBox.h diff --git a/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.cpp b/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.cpp index 90e9cb2..f908169 100644 --- a/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.cpp +++ b/src/haloray-core/gui/crystalPreview/crystalPreviewWindow.cpp @@ -1,5 +1,5 @@ #include "crystalPreviewWindow.h" -#include "../crystalModel.h" +#include "gui/models/crystalModel.h" #include "previewRenderArea.h" #include #include diff --git a/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp b/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp index 932f50c..18d1388 100644 --- a/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp +++ b/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp @@ -5,7 +5,6 @@ #include #include #include -#include "../crystalModel.h" #include "../../simulation/trigonometryUtilities.h" namespace HaloRay diff --git a/src/haloray-core/gui/crystalPreview/previewRenderArea.h b/src/haloray-core/gui/crystalPreview/previewRenderArea.h index 1a4376e..9e237ba 100644 --- a/src/haloray-core/gui/crystalPreview/previewRenderArea.h +++ b/src/haloray-core/gui/crystalPreview/previewRenderArea.h @@ -2,7 +2,7 @@ #include #include -#include "../crystalModel.h" +#include "gui/models/crystalModel.h" class QMatrix4x4; class QSize; diff --git a/src/haloray-core/gui/crystalSettingsWidget.cpp b/src/haloray-core/gui/crystalSettingsWidget.cpp index 800c0a6..0208157 100644 --- a/src/haloray-core/gui/crystalSettingsWidget.cpp +++ b/src/haloray-core/gui/crystalSettingsWidget.cpp @@ -9,10 +9,10 @@ #include #include #include -#include "sliderSpinBox.h" -#include "addCrystalPopulationButton.h" -#include "../simulation/crystalPopulation.h" -#include "crystalModel.h" +#include "components/sliderSpinBox.h" +#include "components/addCrystalPopulationButton.h" +#include "simulation/crystalPopulation.h" +#include "models/crystalModel.h" namespace HaloRay { diff --git a/src/haloray-core/gui/crystalSettingsWidget.h b/src/haloray-core/gui/crystalSettingsWidget.h index 000617b..3a3ee86 100644 --- a/src/haloray-core/gui/crystalSettingsWidget.h +++ b/src/haloray-core/gui/crystalSettingsWidget.h @@ -1,5 +1,5 @@ #pragma once -#include "collapsibleBox.h" +#include "components/collapsibleBox.h" #include class QToolButton; diff --git a/src/haloray-core/gui/generalSettingsWidget.cpp b/src/haloray-core/gui/generalSettingsWidget.cpp index ab491b0..dc87e30 100644 --- a/src/haloray-core/gui/generalSettingsWidget.cpp +++ b/src/haloray-core/gui/generalSettingsWidget.cpp @@ -1,8 +1,8 @@ #include "generalSettingsWidget.h" #include #include -#include "sliderSpinBox.h" -#include "../simulation/lightSource.h" +#include "components/sliderSpinBox.h" +#include "simulation/lightSource.h" namespace HaloRay { diff --git a/src/haloray-core/gui/generalSettingsWidget.h b/src/haloray-core/gui/generalSettingsWidget.h index f1274bc..7d25e66 100644 --- a/src/haloray-core/gui/generalSettingsWidget.h +++ b/src/haloray-core/gui/generalSettingsWidget.h @@ -1,8 +1,8 @@ #pragma once #include -#include "../simulation/lightSource.h" -#include "simulationStateModel.h" -#include "collapsibleBox.h" +#include "simulation/lightSource.h" +#include "models/simulationStateModel.h" +#include "components/collapsibleBox.h" class QDoubleSpinBox; class QSpinBox; diff --git a/src/haloray-core/gui/mainWindow.cpp b/src/haloray-core/gui/mainWindow.cpp index b944843..3198a61 100644 --- a/src/haloray-core/gui/mainWindow.cpp +++ b/src/haloray-core/gui/mainWindow.cpp @@ -1,5 +1,4 @@ #include "mainWindow.h" -#include "simulationStateModel.h" #include #include #include @@ -17,19 +16,20 @@ #include #include #include "crystalPreview/crystalPreviewWindow.h" -#include "collapsibleBox.h" #include "stateSaver.h" -#include "crystalModel.h" +#include "models/crystalModel.h" +#include "models/simulationStateModel.h" #include "openGLWidget.h" #include "generalSettingsWidget.h" #include "crystalSettingsWidget.h" #include "viewSettingsWidget.h" #include "atmosphereSettingsWidget.h" -#include "sliderSpinBox.h" -#include "renderButton.h" -#include "../simulation/atmosphere.h" -#include "../simulation/crystalPopulation.h" -#include "../simulation/simulationEngine.h" +#include "components/collapsibleBox.h" +#include "components/sliderSpinBox.h" +#include "components/renderButton.h" +#include "simulation/atmosphere.h" +#include "simulation/crystalPopulation.h" +#include "simulation/simulationEngine.h" #define STRINGIFY0(v) #v #define STRINGIFY(v) STRINGIFY0(v) diff --git a/src/haloray-core/gui/mainWindow.h b/src/haloray-core/gui/mainWindow.h index 917226f..66aebc2 100644 --- a/src/haloray-core/gui/mainWindow.h +++ b/src/haloray-core/gui/mainWindow.h @@ -2,7 +2,7 @@ #include #include #include -#include "simulationStateModel.h" +#include "gui/models/simulationStateModel.h" class QDoubleSpinBox; diff --git a/src/haloray-core/gui/crystalModel.cpp b/src/haloray-core/gui/models/crystalModel.cpp similarity index 99% rename from src/haloray-core/gui/crystalModel.cpp rename to src/haloray-core/gui/models/crystalModel.cpp index fe93db3..89f8b21 100644 --- a/src/haloray-core/gui/crystalModel.cpp +++ b/src/haloray-core/gui/models/crystalModel.cpp @@ -2,7 +2,7 @@ #include #include #include -#include "../simulation/crystalPopulationRepository.h" +#include "../../simulation/crystalPopulationRepository.h" namespace HaloRay { diff --git a/src/haloray-core/gui/crystalModel.h b/src/haloray-core/gui/models/crystalModel.h similarity index 97% rename from src/haloray-core/gui/crystalModel.h rename to src/haloray-core/gui/models/crystalModel.h index ede6189..36193ea 100644 --- a/src/haloray-core/gui/crystalModel.h +++ b/src/haloray-core/gui/models/crystalModel.h @@ -1,7 +1,7 @@ #pragma once #include #include -#include "../simulation/crystalPopulation.h" +#include "simulation/crystalPopulation.h" class QWidget; class QVariant; diff --git a/src/haloray-core/gui/simulationStateModel.cpp b/src/haloray-core/gui/models/simulationStateModel.cpp similarity index 98% rename from src/haloray-core/gui/simulationStateModel.cpp rename to src/haloray-core/gui/models/simulationStateModel.cpp index 6399397..7ca07b4 100644 --- a/src/haloray-core/gui/simulationStateModel.cpp +++ b/src/haloray-core/gui/models/simulationStateModel.cpp @@ -1,7 +1,7 @@ #include "simulationStateModel.h" -#include "../simulation/atmosphere.h" -#include "../simulation/camera.h" -#include "../simulation/lightSource.h" +#include "simulation/atmosphere.h" +#include "simulation/camera.h" +#include "simulation/lightSource.h" #include "simulation/simulationEngine.h" namespace HaloRay diff --git a/src/haloray-core/gui/simulationStateModel.h b/src/haloray-core/gui/models/simulationStateModel.h similarity index 100% rename from src/haloray-core/gui/simulationStateModel.h rename to src/haloray-core/gui/models/simulationStateModel.h diff --git a/src/haloray-core/gui/openGLWidget.cpp b/src/haloray-core/gui/openGLWidget.cpp index fffc6fa..a52b343 100644 --- a/src/haloray-core/gui/openGLWidget.cpp +++ b/src/haloray-core/gui/openGLWidget.cpp @@ -4,11 +4,11 @@ #include #include #include -#include "simulationStateModel.h" -#include "../simulation/simulationEngine.h" -#include "../simulation/camera.h" -#include "../simulation/lightSource.h" -#include "../simulation/crystalPopulation.h" +#include "models/simulationStateModel.h" +#include "simulation/simulationEngine.h" +#include "simulation/camera.h" +#include "simulation/lightSource.h" +#include "simulation/crystalPopulation.h" namespace HaloRay { diff --git a/src/haloray-core/gui/openGLWidget.h b/src/haloray-core/gui/openGLWidget.h index 78282be..3124538 100644 --- a/src/haloray-core/gui/openGLWidget.h +++ b/src/haloray-core/gui/openGLWidget.h @@ -3,7 +3,7 @@ #include #include #include -#include "../opengl/textureRenderer.h" +#include "opengl/textureRenderer.h" class QMouseEvent; diff --git a/src/haloray-core/gui/stateSaver.cpp b/src/haloray-core/gui/stateSaver.cpp index b1c16f0..b6d19db 100644 --- a/src/haloray-core/gui/stateSaver.cpp +++ b/src/haloray-core/gui/stateSaver.cpp @@ -1,10 +1,10 @@ #include "stateSaver.h" #include #include -#include "simulationStateModel.h" -#include "crystalModel.h" -#include "../simulation/simulationEngine.h" -#include "../simulation/crystalPopulationRepository.h" +#include "gui/models/simulationStateModel.h" +#include "gui/models/crystalModel.h" +#include "simulation/simulationEngine.h" +#include "simulation/crystalPopulationRepository.h" namespace HaloRay { diff --git a/src/haloray-core/gui/viewSettingsWidget.cpp b/src/haloray-core/gui/viewSettingsWidget.cpp index d80c7fa..e04b746 100644 --- a/src/haloray-core/gui/viewSettingsWidget.cpp +++ b/src/haloray-core/gui/viewSettingsWidget.cpp @@ -3,9 +3,9 @@ #include #include #include -#include "simulationStateModel.h" -#include "sliderSpinBox.h" -#include "../simulation/camera.h" +#include "models/simulationStateModel.h" +#include "components/sliderSpinBox.h" +#include "simulation/camera.h" namespace HaloRay { diff --git a/src/haloray-core/gui/viewSettingsWidget.h b/src/haloray-core/gui/viewSettingsWidget.h index 130d711..633e836 100644 --- a/src/haloray-core/gui/viewSettingsWidget.h +++ b/src/haloray-core/gui/viewSettingsWidget.h @@ -1,6 +1,6 @@ #pragma once -#include "collapsibleBox.h" -#include "../simulation/camera.h" +#include "components/collapsibleBox.h" +#include "simulation/camera.h" class QComboBox; class QCheckBox; diff --git a/src/haloray-core/haloray-core.pro b/src/haloray-core/haloray-core.pro index b59d1ad..f74dc30 100644 --- a/src/haloray-core/haloray-core.pro +++ b/src/haloray-core/haloray-core.pro @@ -24,19 +24,19 @@ HALORAY_VERSION = $$(HALORAY_VERSION) } HEADERS += \ - gui/addCrystalPopulationButton.h \ gui/atmosphereSettingsWidget.h \ - gui/collapsibleBox.h \ - gui/crystalModel.h \ + gui/components/addCrystalPopulationButton.h \ + gui/components/collapsibleBox.h \ + gui/components/renderButton.h \ + gui/components/sliderSpinBox.h \ gui/crystalPreview/crystalPreviewWindow.h \ gui/crystalPreview/previewRenderArea.h \ gui/crystalSettingsWidget.h \ gui/generalSettingsWidget.h \ gui/mainWindow.h \ + gui/models/crystalModel.h \ + gui/models/simulationStateModel.h \ gui/openGLWidget.h \ - gui/renderButton.h \ - gui/simulationStateModel.h \ - gui/sliderSpinBox.h \ gui/stateSaver.h \ gui/viewSettingsWidget.h \ opengl/texture.h \ @@ -56,19 +56,19 @@ HEADERS += \ simulation/trigonometryUtilities.h SOURCES += \ - gui/addCrystalPopulationButton.cpp \ gui/atmosphereSettingsWidget.cpp \ - gui/collapsibleBox.cpp \ - gui/crystalModel.cpp \ + gui/components/addCrystalPopulationButton.cpp \ + gui/components/collapsibleBox.cpp \ + gui/components/renderButton.cpp \ + gui/components/sliderSpinBox.cpp \ gui/crystalPreview/crystalPreviewWindow.cpp \ gui/crystalPreview/previewRenderArea.cpp \ gui/crystalSettingsWidget.cpp \ gui/generalSettingsWidget.cpp \ gui/mainWindow.cpp \ + gui/models/crystalModel.cpp \ + gui/models/simulationStateModel.cpp \ gui/openGLWidget.cpp \ - gui/renderButton.cpp \ - gui/simulationStateModel.cpp \ - gui/sliderSpinBox.cpp \ gui/stateSaver.cpp \ gui/viewSettingsWidget.cpp \ opengl/texture.cpp \ From e25048335a2f4181965606b8db597afebe58d5f0 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Wed, 17 Feb 2021 19:48:15 +0200 Subject: [PATCH 161/184] Fix bug where controls were not updating when loading a saved file --- src/haloray-core/gui/crystalSettingsWidget.cpp | 5 +++++ src/haloray-core/gui/models/crystalModel.cpp | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/haloray-core/gui/crystalSettingsWidget.cpp b/src/haloray-core/gui/crystalSettingsWidget.cpp index 0208157..74eff26 100644 --- a/src/haloray-core/gui/crystalSettingsWidget.cpp +++ b/src/haloray-core/gui/crystalSettingsWidget.cpp @@ -98,6 +98,11 @@ CrystalSettingsWidget::CrystalSettingsWidget(CrystalModel *model, QWidget *paren connect(m_model, &CrystalModel::rowsInserted, updateRemovePopulationButtonState); connect(m_model, &CrystalModel::rowsRemoved, updateRemovePopulationButtonState); + connect(m_model, &CrystalModel::rowsInserted, [this]() { + if (m_mapper->currentIndex() == -1) + m_mapper->toFirst(); + }); + connect(m_populationComboBox, QOverload::of(&QComboBox::currentIndexChanged), [this](int index) { emit populationSelectionChanged(index); }); diff --git a/src/haloray-core/gui/models/crystalModel.cpp b/src/haloray-core/gui/models/crystalModel.cpp index 89f8b21..1e407cb 100644 --- a/src/haloray-core/gui/models/crystalModel.cpp +++ b/src/haloray-core/gui/models/crystalModel.cpp @@ -215,9 +215,9 @@ bool CrystalModel::removeRow(int row) void CrystalModel::clear() { - emit beginRemoveRows(QModelIndex(), 0, m_crystals->getCount() - 1); + beginResetModel(); m_crystals->clear(); - endRemoveRows(); + endResetModel(); } void CrystalModel::setName(int row, QString name) From a882103e21a619a8e11a945fd3de3fabe85879d1 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Thu, 18 Feb 2021 20:25:38 +0200 Subject: [PATCH 162/184] Remove unused variable from raytracing shader --- src/haloray-core/resources/shaders/raytrace.glsl | 1 - 1 file changed, 1 deletion(-) diff --git a/src/haloray-core/resources/shaders/raytrace.glsl b/src/haloray-core/resources/shaders/raytrace.glsl index 73e97ff..a9c52e0 100644 --- a/src/haloray-core/resources/shaders/raytrace.glsl +++ b/src/haloray-core/resources/shaders/raytrace.glsl @@ -626,7 +626,6 @@ void main(void) vec2 polar = cartesianToPolar(resultRay); float projectionFunction; - float focalLength; // The projection converts 3D vectors to 2D points if (camera.projection == PROJECTION_STEREOGRAPHIC) { From 157d639538d4b854fde1f49f878aed5afa26aa9b Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Thu, 18 Feb 2021 20:26:27 +0200 Subject: [PATCH 163/184] Remove unnecessary cos(acos(...)) conversion in raytracing shader --- src/haloray-core/resources/shaders/raytrace.glsl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/haloray-core/resources/shaders/raytrace.glsl b/src/haloray-core/resources/shaders/raytrace.glsl index a9c52e0..4f53e47 100644 --- a/src/haloray-core/resources/shaders/raytrace.glsl +++ b/src/haloray-core/resources/shaders/raytrace.glsl @@ -252,10 +252,10 @@ vec3 getNormal(uint triangleIndex) float getReflectionCoefficient(vec3 normal, vec3 rayDir, float n0, float n1) { - float incidentAngle = acos(dot(-rayDir, normal)); + float incidentCos = dot(-rayDir, normal); + float incidentAngle = acos(incidentCos); if (n1 / n0 < sin(incidentAngle)) return 1.0; float transmittedAngle = asin(n0 * sin(incidentAngle) / n1); - float incidentCos = cos(incidentAngle); float transmittedCos = cos(transmittedAngle); float rs = (n0 * incidentCos - n1 * transmittedCos) / (n0 * incidentCos + n1 * transmittedCos); rs = rs * rs; From a39c7e2a3ca68cb12488c7677b0c22f04a13fb8e Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Thu, 18 Feb 2021 20:44:35 +0200 Subject: [PATCH 164/184] Fix tiny raytracing artifact in the middle of the viewport Apparently the GPU implementation of acos isn't very good in all conditions. Circumventing the usage of acos in polar coordinate conversion fixed the weird artifact in the middle of the viewport which you could see if you really zoomed in into bright halos or the sun. --- CHANGELOG.md | 1 + src/haloray-core/resources/shaders/raytrace.glsl | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8d148b8..9d6c7f5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -27,6 +27,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Fixed - Fixed bug where intensity of halos changed with rays per frame setting +- Fixed a tiny raytracing artifact in the middle of the view ## 2.4.0 - 2019-07-29 diff --git a/src/haloray-core/resources/shaders/raytrace.glsl b/src/haloray-core/resources/shaders/raytrace.glsl index 4f53e47..f107e05 100644 --- a/src/haloray-core/resources/shaders/raytrace.glsl +++ b/src/haloray-core/resources/shaders/raytrace.glsl @@ -389,7 +389,7 @@ mat3 getUniformRandomRotationMatrix(void) vec2 cartesianToPolar(vec3 direction) { - float r = acos(direction.z); + float r = atan(length(direction.xy), direction.z); float angle = atan(direction.y, direction.x); return vec2(r, angle); } From 8933eeb1be17b4c632b1280ed23ec77eb533f8a7 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Thu, 18 Feb 2021 20:48:07 +0200 Subject: [PATCH 165/184] Allow rendering raytraced rays on top of sun model Now that the raytracing artifact in the middle of the viewport has been fixed, it is okay to render raytraced rays on top of the physicall correct sun model again, because it doesn't result in a disturbing patterns on the sun. --- src/haloray-core/resources/shaders/raytrace.glsl | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/haloray-core/resources/shaders/raytrace.glsl b/src/haloray-core/resources/shaders/raytrace.glsl index f107e05..6b0516c 100644 --- a/src/haloray-core/resources/shaders/raytrace.glsl +++ b/src/haloray-core/resources/shaders/raytrace.glsl @@ -612,10 +612,6 @@ void main(void) resultRay = rotationMatrix * resultRay; } - // Do not render rays coming from the solar disk when the sky model renders a separate sun - if (atmosphereEnabled == 1 && acos(dot(-resultRay, getSunDirection(sun.altitude))) < 1.005 * sun.diameter / 2.0 && resultRay.y < 0.0) - return; - // Hide subhorizon rays if (camera.hideSubHorizon == 1 && resultRay.y > 0.0) return; From 596c17f27cf4ed88148d04852d4fa428fe79e04d Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Thu, 18 Feb 2021 21:50:35 +0200 Subject: [PATCH 166/184] Select previous population when removing current one Previously it always went to the first population, which wasn't as user-friendly. --- src/haloray-core/gui/crystalSettingsWidget.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/haloray-core/gui/crystalSettingsWidget.cpp b/src/haloray-core/gui/crystalSettingsWidget.cpp index 74eff26..db0f9f9 100644 --- a/src/haloray-core/gui/crystalSettingsWidget.cpp +++ b/src/haloray-core/gui/crystalSettingsWidget.cpp @@ -116,7 +116,12 @@ CrystalSettingsWidget::CrystalSettingsWidget(CrystalModel *model, QWidget *paren connect(m_removePopulationButton, &QToolButton::clicked, [this, updateRemovePopulationButtonState]() { int index = m_mapper->currentIndex(); m_model->removeRow(index); - m_mapper->toFirst(); + if (index > 1) + { + m_mapper->setCurrentIndex(index - 1); + } else { + m_mapper->toFirst(); + } updateRemovePopulationButtonState(); }); From a8a8c65a83f5ee2960d440e04ca72237b34d23b5 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Fri, 19 Feb 2021 23:12:44 +0200 Subject: [PATCH 167/184] Add FXAA antialiasing for background sky image This smoothens out the harsh horizon and edges of the sun disk. --- .../resources/shaders/renderer.frag | 62 ++++++++++++++++++- 1 file changed, 61 insertions(+), 1 deletion(-) diff --git a/src/haloray-core/resources/shaders/renderer.frag b/src/haloray-core/resources/shaders/renderer.frag index 9ca134f..7e5db17 100644 --- a/src/haloray-core/resources/shaders/renderer.frag +++ b/src/haloray-core/resources/shaders/renderer.frag @@ -6,9 +6,69 @@ uniform float adjustedExposure; layout (binding = 0) uniform sampler2D haloTexture; layout (binding = 1) uniform sampler2D backgroundTexture; +#define FXAA_REDUCE_MIN (1.0/ 128.0) +#define FXAA_REDUCE_MUL (1.0 / 8.0) +#define FXAA_SPAN_MAX 8.0 + +/* FXAA implementation adapted from https://github.com/mattdesl/glsl-fxaa + The antialiasing procedure is only applied to the background sky image + to smoothen the harsh horizon edge and the edges of the sun. */ + +vec4 fxaa(sampler2D tex, vec2 fragCoord) +{ + vec2 resolution = textureSize(tex, 0); + vec2 inverseVP = 1.0 / resolution.xy; + vec2 rgbNWCoords = (fragCoord + vec2(-1.0, -1.0)) * inverseVP; + vec2 rgbNECoords = (fragCoord + vec2(1.0, -1.0)) * inverseVP; + vec2 rgbSWCoords = (fragCoord + vec2(-1.0, 1.0)) * inverseVP; + vec2 rgbSECoords = (fragCoord + vec2(1.0, 1.0)) * inverseVP; + vec2 rgbMCoords = vec2(fragCoord * inverseVP); + + vec4 color; + vec3 rgbNW = texture2D(tex, rgbNWCoords).xyz; + vec3 rgbNE = texture2D(tex, rgbNECoords).xyz; + vec3 rgbSW = texture2D(tex, rgbSWCoords).xyz; + vec3 rgbSE = texture2D(tex, rgbSECoords).xyz; + vec4 texColor = texture2D(tex, rgbMCoords); + vec3 rgbM = texColor.xyz; + vec3 luma = vec3(0.299, 0.587, 0.114); + float lumaNW = dot(rgbNW, luma); + float lumaNE = dot(rgbNE, luma); + float lumaSW = dot(rgbSW, luma); + float lumaSE = dot(rgbSE, luma); + float lumaM = dot(rgbM, luma); + float lumaMin = min(lumaM, min(min(lumaNW, lumaNE), min(lumaSW, lumaSE))); + float lumaMax = max(lumaM, max(max(lumaNW, lumaNE), max(lumaSW, lumaSE))); + + vec2 dir; + dir.x = -((lumaNW + lumaNE) - (lumaSW + lumaSE)); + dir.y = ((lumaNW + lumaSW) - (lumaNE + lumaSE)); + + float dirReduce = max((lumaNW + lumaNE + lumaSW + lumaSE) * + (0.25 * FXAA_REDUCE_MUL), FXAA_REDUCE_MIN); + + float rcpDirMin = 1.0 / (min(abs(dir.x), abs(dir.y)) + dirReduce); + dir = min(vec2(FXAA_SPAN_MAX), max(vec2(-FXAA_SPAN_MAX), dir * rcpDirMin)) * inverseVP; + + vec3 rgbA = 0.5 * ( + texture2D(tex, fragCoord * inverseVP + dir * (1.0 / 3.0 - 0.5)).xyz + + texture2D(tex, fragCoord * inverseVP + dir * (2.0 / 3.0 - 0.5)).xyz); + vec3 rgbB = rgbA * 0.5 + 0.25 * ( + texture2D(tex, fragCoord * inverseVP + dir * -0.5).xyz + + texture2D(tex, fragCoord * inverseVP + dir * 0.5).xyz); + + float lumaB = dot(rgbB, luma); + if ((lumaB < lumaMin) || (lumaB > lumaMax)) + color = vec4(rgbA, texColor.a); + else + color = vec4(rgbB, texColor.a); + return color; +} + void main(void) { + vec4 antialiasedBackground = fxaa(backgroundTexture, gl_FragCoord.xy); + vec3 backgroundLinearSrgb = max(vec3(0.0), baseExposure * antialiasedBackground.rgb); vec3 haloLinearSrgb = adjustedExposure * texelFetch(haloTexture, ivec2(gl_FragCoord.xy), 0).xyz; - vec3 backgroundLinearSrgb = max(vec3(0.0), baseExposure * texelFetch(backgroundTexture, ivec2(gl_FragCoord.xy), 0).xyz); vec3 linearImage = 0.005 * backgroundLinearSrgb + 0.1 * haloLinearSrgb; vec3 gammaCorrected = 1.055 * pow(linearImage, vec3(0.417)) - 0.055; color = vec4(clamp(gammaCorrected, 0.0, 1.0), 1.0); From 2daef851bb7e4e3f164f2f40e1b0d1c7dd134713 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 20 Feb 2021 14:51:24 +0200 Subject: [PATCH 168/184] Add missing includes to make HaloRay compile on Linux --- src/haloray-core/gui/crystalPreview/previewRenderArea.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp b/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp index 18d1388..b5d577d 100644 --- a/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp +++ b/src/haloray-core/gui/crystalPreview/previewRenderArea.cpp @@ -5,6 +5,7 @@ #include #include #include +#include #include "../../simulation/trigonometryUtilities.h" namespace HaloRay From e2b3b9b50305db9c531d0e491fa2612df6e4d8f2 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 20 Feb 2021 14:32:36 +0200 Subject: [PATCH 169/184] Make slider steps smaller when using keyboard arrow keys --- CHANGELOG.md | 1 + src/haloray-core/gui/components/sliderSpinBox.cpp | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9d6c7f5..be08750 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -23,6 +23,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Rewrote most of the GUI code to use Qt model/view architecture - Triangle normals are now cached during raytracing - The settings groups in the side panel are now collapsible +- Adjusting sliders with arrow kys now uses smaller steps ### Fixed diff --git a/src/haloray-core/gui/components/sliderSpinBox.cpp b/src/haloray-core/gui/components/sliderSpinBox.cpp index 5b613d5..81f5a62 100644 --- a/src/haloray-core/gui/components/sliderSpinBox.cpp +++ b/src/haloray-core/gui/components/sliderSpinBox.cpp @@ -11,7 +11,7 @@ SliderSpinBox::SliderSpinBox(QWidget *parent) : QWidget(parent), m_value(0.0) { m_slider = new QSlider(); m_slider->setOrientation(Qt::Orientation::Horizontal); - m_slider->setSingleStep((int)sliderMultiplier); + m_slider->setSingleStep(qMax((int)(0.1 * sliderMultiplier), 1)); m_slider->setPageStep((int)(10 * sliderMultiplier)); m_slider->setMinimumWidth(100); From ed58337a7b74a92ffd2994821c420d45ecf10e80 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 20 Feb 2021 14:59:42 +0200 Subject: [PATCH 170/184] Let light bounce inside ice crystals longer Previously a ray of light was abandoned if it didn't exit after 10 bounces. Now the limit is raised to 100. The performance penalties seemed to be marginal at least on an NVIDIA Geforce RTX 3070 or a Thinkpad X240 laptop with an Intel HD4400 GPU. --- CHANGELOG.md | 1 + src/haloray-core/resources/shaders/raytrace.glsl | 13 +++++++++---- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index be08750..6d34c5a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -24,6 +24,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Triangle normals are now cached during raytracing - The settings groups in the side panel are now collapsible - Adjusting sliders with arrow kys now uses smaller steps +- Light is now allowed to bounce inside ice crystal for a 100 times instead of 10 ### Fixed diff --git a/src/haloray-core/resources/shaders/raytrace.glsl b/src/haloray-core/resources/shaders/raytrace.glsl index 6b0516c..5eb16b3 100644 --- a/src/haloray-core/resources/shaders/raytrace.glsl +++ b/src/haloray-core/resources/shaders/raytrace.glsl @@ -1,11 +1,13 @@ #version 440 core -#define DISTRIBUTION_UNIFORM 0 -#define DISTRIBUTION_GAUSSIAN 1 - layout(local_size_x = 64) in; layout(binding = 0, rgba32f) uniform coherent image2D outputImage; +/* MAX_HITS defines how many times + a ray of light is allowed to bounce inside + the ice crystal before it is abandoned */ +#define MAX_HITS 100 + uniform uint rngSeed; uniform float multipleScatter; @@ -16,6 +18,9 @@ uniform struct sunProperties_t float spectrum[31]; } sun; +#define DISTRIBUTION_UNIFORM 0 +#define DISTRIBUTION_GAUSSIAN 1 + uniform struct crystalProperties_t { float caRatioAverage; @@ -300,7 +305,7 @@ vec3 traceRay(vec3 rayOrigin, vec3 rayDirection, float indexOfRefraction) { vec3 ro = rayOrigin; vec3 rd = rayDirection; - for (int i = 0; i < 10; ++i) + for (int i = 0; i < MAX_HITS; ++i) { intersection hitResult = findIntersection(ro, rd); if (hitResult.didHit == false) break; From f83b8b914fdb4b55a7d68b44965b93edd9b304c5 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 20 Feb 2021 16:27:23 +0200 Subject: [PATCH 171/184] Update readme --- README.md | 39 +++++++++++++++++++++++++++++---- images/non-regular-crystal.png | Bin 0 -> 20555 bytes 2 files changed, 35 insertions(+), 4 deletions(-) create mode 100644 images/non-regular-crystal.png diff --git a/README.md b/README.md index f5de141..93cb959 100644 --- a/README.md +++ b/README.md @@ -41,7 +41,7 @@ Here are some general settings for the whole simulation. - **Rays per frame:** Number of rays traced through individual crystals per rendered frame - If the user interface slows down a lot during rendering, lower this value - - On an NVIDIA GeForce GTX 1070 a good value seems to be around 500 000 + - On an NVIDIA GeForce RTX 3070 a good value seems to be around 500 000 - The maximum value for this parameter may be limited by your GPU - **Maximum frames:** Simulation stops after rendering this many frames - **Double scattering:** Probability of a single light ray to scatter from two @@ -129,6 +129,14 @@ Above is a representation of an ice crystal with pyramidal end caps. Currently HaloRay is limited to convex ice crystals, so the end caps cannot extend inwards to make hollow ice crystals. +HaloRay provides six sliders you can use to adjust the distance of each prism +face of the hexagonal ice crystals from the crystal C-axis. + +![Graphic of a non-regular shaped ice crystal](images/non-regular-crystal.png) + +The above image shows a crystal where every other prism face has the default +distance of 1.0 from the C-axis, while every other is reduced to 0.7. + ### View settings These settings affect how the results of the simulation are shown on the screen. @@ -141,16 +149,26 @@ These settings affect how the results of the simulation are shown on the screen. - **Hide sub-horizon:** Hides any halos below the horizon level - **Lock to light source:** Locks the camera to the sun +### Menus + +The top menus should be pretty self-explanatory. Entries in the _File_ menu +allow you to reset the simulation, save and load simulation parameters, and save +the simulation output to an image file on disk. + +_View -> Crystal preview_ lets you see a wireframe preview of the an average +ice crystal in the currently selected crystal population. + ## How to build? The user interface is built with [Qt 5](https://www.qt.io/), so you need to [download the Qt libraries](https://www.qt.io/download-qt-installer) before compiling HaloRay. -The build is handled with Qt's build tool qmake. +The build is handled with Qt's build tool qmake. You can also use the Qt Creator +IDE to open and build the code. -On Linux you can also install Qt using your package manager. On Ubuntu Linux -you can install Qt by running: +On Linux you can install Qt using your package manager. On Ubuntu Linux you can +install Qt by running: ```bash sudo apt-get install qt5-default @@ -184,6 +202,19 @@ shipped with Qt 5. This is the recommended way. You can check `scripts\build.ps1` to see how the project is built on the Appveyor CI server. +## FAQ - Frequently asked questions + +### UI components are scaled all wrong on a 4K display in Windows + +On high-DPI screens Windows scales UI elements by default. You can either +disable the scaling by setting UI scale to 100% in Windows display settings. +The other option is to try running HaloRay with special command-line paramaeters +like this: + +``` +HaloRay.exe -platform windows:dpiawareness=2 +``` + ## Acknowledgments - [Lauri Kangas](https://github.com/lkangas) for providing tons of reading material and debugging help diff --git a/images/non-regular-crystal.png b/images/non-regular-crystal.png new file mode 100644 index 0000000000000000000000000000000000000000..3e3e133d7cfd22b54ac9d90b98aaeb6dd40dd26a GIT binary patch literal 20555 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 KT-G@yGywpiD`1}h literal 0 HcmV?d00001 From 08d62feedd8bf80a929bd5822f0bdea272b1f3d0 Mon Sep 17 00:00:00 2001 From: Samuli Vuorinen Date: Sat, 20 Feb 2021 16:34:11 +0200 Subject: [PATCH 172/184] Update UI screenshot in readme --- README.md | 2 +- .../plate-column-random-halo-screenshot.png | Bin 2935972 -> 0 bytes images/ui-screenshot.png | Bin 0 -> 1718712 bytes 3 files changed, 1 insertion(+), 1 deletion(-) delete mode 100644 images/plate-column-random-halo-screenshot.png create mode 100644 images/ui-screenshot.png diff --git a/README.md b/README.md index 93cb959..07d5359 100644 --- a/README.md +++ b/README.md @@ -15,7 +15,7 @@ HaloRay currently supports Windows and Linux. An OpenGL 4.4 compliant GPU is required to run HaloRay. On Windows you also need the [latest Microsoft Visual C++ Redistributable for Visual Studio 2019.](https://aka.ms/vs/16/release/vc_redist.x64.exe) -![Simulation of a column crystal halo display](images/plate-column-random-halo-screenshot.png) +![Simulation of a column crystal halo display](images/ui-screenshot.png) ## How to use? diff --git a/images/plate-column-random-halo-screenshot.png b/images/plate-column-random-halo-screenshot.png deleted file mode 100644 index 757b684bee8eab92deaa6e1d9ee768ffc0e146c5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2935972 zcmdS9bzGFs*EdcGNGm8yHzF+{T>{djAh~pibayO>fJnDUw@4#h3nGnl3BuAWxeF|? zEX(fCJAcpXxj*0g|L2cuu9>;cysvX6&b;TmChnE48aW9)2@VbpxrX{neH zjr)XuYuF{+`2N0dee~6oaOx%*5B?VJIV$QX;@~tUlcH@1{+5Y7)lGeHa3}`;?ZF-P z_-c=XgDuy1srV+)^7t-jqW*W*QmmYX-{fsC_$+5X2>A=w<4ULyPP>(y)V`vf7IR2<+y>5!SL~cH4Ee65{64V;Rp=@!59FBWCvc z&f`;wThRGVoNOo(zFKI}<*&0IxJ@o4BXc|Q9Rh0#M~Zsijw?J_)kB`{Hicnic2EN$ zEH}qp;UO2pmME;8RQH9<4tj660EF2i!h#GY!RR%=@b!|D8-I&RtIVT$zuWx!v0yZ2 zunT-qm;Bgmzpe1@5p#kcCV^4c3gyZVwgk&Ry#})@T&#k+&=ba(QB=T*mQ@xDw#w1_ zgt}LBSHiNhjv@YV6^70S&pk5G79Px)dW!wwf%OR8+W%|Fr+>5N-;(pG&V+s<>z>wo&|zk{QcM(?rw zE4|p1t)Av=MEy^N|FZ^4T0X@TitNC`r$$-O${=KjAZTw2lZW00p_3K94*qM4rewlS zHwFrk>DWm05A0<<=iGu(u z`!0n5_+OlHtlAA2tAK%=cVYUhGC-H0JHSo=wpc+3g5m(_hEK8FO5IFhzGIazSM}&7 zG#Il7VH~eVp9_tHFDfzVjiLVVO~4LtQDWB-d~~FDi*`WCPCY&FVPQgegh_+I$%vrU z+n(v`(n+h>@J*l)68Wnz^Q?shQ+WQ%Lt+Q;x7p1B8WZgihFsHf!~P8ZdhoaAWJ=%& zh(O|_GWN;;aWX+~H9DW%9L?+p?G=hUd2Sw_jdByR${%%s^ik-){e&>y@j&l`pJKPb zSCzZqOAice7kuG?tw9H1`wCMaH?i2Tn`+RdLblb-E>{1qRcKJs?!d+X3sMxj58>>O zO&0P7H-Eg-OYCKdd=FF0FH}MGW=9bVfw83^5Kt9#=D3?HbOywyggoX)j)=0Hq|0O1 z`b+de>i>BV!$1c_V#p$dhGGm%ZA0Ef#Wl^d=Z>ypw##4LXysf^Qc7w!OUG?!h+So;O}QO>YcPKbWp0 zBC#al??#|w%PJY|Wl8C`MN^iL0!LIedH6OeP(Gf+daIFa6 zR13dmNeKvFf~8-BV6e=33=pgqz5}_jV3E3k+pLsh*Q{dL(qklnTN_NE(d3)`~ybW=E@m zZ~c2%OxHj;mfv8z1U}G0SI0ZGRm9fmdp+ka%r#JmW>Mj?r|=xDCXa>Q%BK>s5ZiaZ zf$Uc#wc{b4r7e5b~i)dTZIhB73@w+C_fab3*Q8z z)UclXR_ZI|US23=#asAAb^#rrM4|Kcjv8>Pu-Tzke><>`yiM1Y>uyHg#RaHCuUT%^ zhF8xvJrthW*(vPy6yBh(N1`a9)cCw$%R+g}sbLf{&aaoza~f(FFkSq|=k4UG`vymt zNgtLVOh|FEKngba?_?!=X&Oj*-{c*0QixY}OkAoM$R%Q*D z5he66-uK?EXX6tWUZKasZlSlmxkN&D z7!F975aRq60Tw#*K*NY&FVq!QuCiB=n~*{(oEwvTNJaMW{@l9DKktbUN0cJDe5g^% z=Iz4>@hreKxshOW4<2%wj;Zj5WiGtbWJ*|asru7 z3bx?H7U>j*Z6d~DH$^%uAQ-niw&(1{99SMNk&#|nQvB?L4(Ke7CW96BbR zSpNUup8r$C>YZ>u(Z8|Pf2XYfknEBQ{H2Wl&0hZ}LPcot;60ZA1z|8lsQL3o)PM2c ze?a(r9!>Mt+<&RV-w(ahw(lwbPa6Gy!;AsU{*LrN81UbyH%jBzk3x~z*i6vcf69dy zjdTCpmS8$`SED>?od>~ zt|!dJ`=~$H`(%@&qaADFz87mP^x(MYU$-c-wq%@kN&hTTcpFo(YbQZs?+TN+s4~-|r zZ+lHh3;bMif*L2H-lUb9&?vGSJ%|&d{2B1o!$xBVD3YW1^W3d*iwoTL^9$$JFY27v z*JtdhH?KL>vbeYlxD;ix=|Dht6$W-wctTj-NNVaYX!tO`7>M$G_x)h zM#i5bMV)iDUY#XWXRH}&A9qynQBCIkc8A9|8IP)~6y(k$c8GYO* zOa01h6>}|1@vRxlB~`&MmU-GY`kxGk;RJM=smc7**;D8C0(2)AnnUrum6lxMq4&?p z*2(pYg#6bvnc2T<@Qa6PmXgEje%33m16habB%?WAFR4qaw2`3VbxnCh9>W8e)ae1< z8T!V{8d(`s(|eM%Wfe?n?)=1I0qJjKQKl6gFUz^5P>mZsHV-xR^(jN+_6Y2%M3fbx z3Ic>rRk*&FWv)1JR+F9?`10r?F>hSgO-oi)3O>eTvbB(h!ZD*tN#_L^%hW;)NVlk(y{$6lsYR*@qBFg(62vKMFGWx^!3h#~bFh636>~6EJGDK2kH!r% zP$JGd=XDzq3~%UrX&CcWO-)sy|K73yL)Tl!hj&qw%?>{xyhq{B)eBUYWr*a@+yTr3 zFxp&UzGSHA6>k++yyZxm;p7bI&^WMI4=QqE2Jd|VIs$C%WZI9!2fP`LsNr7zg?M>$ z6qnq)oGHL&_ikp9&ifr(u2JM90aPs-GhOjiDXVd{m}N9im~12ZWG<$=s1RNEu}n2Q z>+yLfv@9Z4`07tm%28l+68jOHYmmp*E%jRmTysxbcY#~)>kj91DU z8B^8lz*i4vt8YLuqX`MwDblYtI!A>NR< zT#|4RP&jh_|v%$={h&^U#?#B+%%qn@s`YopGY>EgiTT z*#(S`ovc{?^z~O+F}c*XCC!Axpr#p$sx`k%Cr-Ag`poj1tBRaV+)`AA#WBM@zGb3#pyB}-51h);z(7e=dh5k*;bq=Hw6o9yDB{@uNI#@^N?+Z z!{6`@dG{lC?xGO`(fqfy_IEMD%W<7(SpiLnkfcmf@*p7rs-IWIrpUFx*8U^JM^B~%M?k#yLfaR)Vi8< z_(lm(jZNj{Ylhi#u>3dGnJ=?55x}8Wpf+;}p&i4mbt$>Uc8s4%NsbkNo2S#Su1D7*xUg!fE5Z1b z-lowHgR@u%1idHCCvQpiCcB+dUhj}ILHj`X7oLMA&C8gWPI~(azZC8}nGsqw!~^~g zl8wQ>3usUjfBA$Cs?M)_DBNhoDt_WC+V!Vi>qK?}lU@Dx>a>x9jdp5J&9~_`=Aa*{ zHU=aOA6is~XKG`Dgw-kq>^on&yD)L@716KpPvi1ASgKr+da5zkrmpd{5;MKr2P`M1 z1dUnE6u65`j+0A&Yb|e0ooh%DgMDq%m0mD(_3F=i6s7l#mdVlmV}mghDw|K9uyq{OahdC+sM+Vsp&KC?GZwT^^2ed(Eu9=-VW!wNY-+0(}0n+ z@)u@09GMorz~s{%8C2qN+ffT*CMV-o@yjL2jay(+YpD-8*IG$^SCp%`jQzg%{C;aY zTlpciIJcU3b=uT>pEDWPrB?iGrasD0RhI9Y`noB`@vZ(yHm|9`O_1+0SKBhH$8sAc z0@9dHE|M7%Pa%V*c}9Zyq}Idd3ubl*5?DPYbX(QZk5CK*Cxv9M?TjhWezr(Pz=pbfKQUuK>A>$c>cH{!a6RYJi$0p=P)(- zUQZR>IL^&zN+Mp+)uX9rLT@Jq=4^@A3G~=~nBC6$v%I`sPyln@SQFYSV+F%j4($dm z)YItYN~aXZz+ALle$y?A>^s9My0U{GC#qLNy!Drtz&Z8#T%%`;XDWXZgnYHq06qe# zhB`h*T5PoK+$-3k7U*lI_WUgz-1QWm{56D-S;p+W4jPyLJyRbju2I1Fpjw4R*7JoX zC<{JI5I^J}1^J}#I4Y+fVB{J_Ku3A0ya3LNR1omYM_Folipzf?dYijtRSthja>LB9 z8#PelDs|p}t}jK%EmX=SJJqi-Lf%^*TTg2i%F^YH7vpE13+YG@m7LS>XteM6$kmBg z*A@g4%Rayh&tv7@;JdtjL@BgaJ^`?9<`ZggoM`{Bu6oRMS2W2ZU#*9w_bkaID7BKw z5o$<9xFkUcrdq(3&6y*r;g9Qu+uGT>pZet3$u!v$RrF1kggCTh3k1{Ia1bHB$r$E> zn1H^#x2NWlp8=GW5)OWeHy6hR$CE5tVeM=Sm$}|vClrvi^ts&R-TvCxrk;x!^N?V@ zI)zZd+okm^B99)yHs)ULDQ3*aKY{1wbqc|H;@8Zet(CFi@oUCVWZ9I?f1E;giHbuP zWv_N_jCZbb75Mca72P-FL6}RH?6&ngx}dA8@W{O z8cKn0vdq`REKa-qty<9`+Zcfk|C3&Gu$Qs>I*5ONsc;N+UVJPhxU;pD)C`!~xoSCT z`n~-T1{<>({*b(#Uqd;|8>q0R-W|+(B$i|kN)ioCAsqg>vi0KrF z)jVPQMQ+ugWAVhFH+$4pd#M7{Mr@)hm&o5 z_xijqzcHQ3b7!e4+IV1x2PNN6%7d@{F~t)!(CFcd*x-xUE7!Joaj@{hm66Ovv1j}N zj@2k*#Hm1&aLPk%YT_t+^Uqqi-}@PfcoKFzK1B#ahdH#$O zrrT%Xd2)fXaEq)3$z*bC*@rSS(QXCA=JpJ+95@NprSp?se@ODIR*F&S_FMN_-oV8L zljye1x;x0hB{Pxd-fon31T1qOykd=M?!0`40K)@nR~&iFGBF^i)y`G}!3aCW_t@>! zZ`)BmMY!a~OuW7m$=oB%SV6BzPfgjOv7yG?zWSWPjgMTj*^=CnLZp~h&(GNoLgKnV zU6Ycw?}r?=zfGFQXg-l#T8Wuv-Z9MkR)A5H{1~K-^~qCbZ1Dc^nN#w|!|q5*`8%C+ zGdy38pT9M^p>lR~!}#cdhgW=okNc?eT1jHX6Ur&};DZktD&1n{y89Fj)SgGcm`@}t zgy>(w)%NLwd~K20+nz>S8?OeJnWqMXhcpB>51RVeREeIm9-iq^R*GJTXnY;u+1F>M zHjF4evA%BL)3UgC{mo05FNRVhLWeQRfax4C_Gnmm9tV%&JdQBXlOG^^G;kf!se|5IW|1k@@1%a{tzpVbs(!KUTB#gW}0vOAlG)tM24>*7s?#NPTSN z>fCV4<^^c+Q2W{?&B2@+O0)2oYV&DwYyD2V_$AVQy;H+Wp2?AIq~k-HSi8_2y^K<) zceQifVhmC;*3&%ROM^_WKQjGtW~rc7cagN;LcT17%0@A_eocL%uGTAcXfljw*^+xW zH{GsT*LOU3J532i_Y%A8~pkZN=FkeSg$_AZ0G&AK+ILf)zr^X*d)Dqw$77j+LrBzxt^d9DO zFfbf6wEW`DmX;o{WYrp=SPkWwIb=Qh5^M~e^5=?|&sGHpY|C_CXotE6b=XXa^M*W-5SSn7_2XAnM(Cn{8&n2t zHK*2)Nci;7kc$T^#JkcZl^&j0=W+YDcb57lPzW~$|0b^dYdlI1<-#pO;vo>TgQV_gRmu_igjokt9ZRzJNv9WhV!%00d{_J%I0 z$7*M<8lg_ITA>i=>#24`7TN8~MdkNvN_A~fH7I?f6V(_$zRS1d6ywtbD+@4tgW6px z;IuF$Z=rJ3~Mt>ISU z0yL5^j(0rE1Ziz5$O4IFaAVQDQBop0FdQ*d(-@6r#wnO*Ip_LL z+{aY#9W*40$+b{X=h?f*<7(|4OIn{I#vMtKFJo>?y~uCX!)_YzW{Y^Y=sz)kV9 zM%1GUX0F}8?(i1Y>e(T@Ie5?v)7(G+!K%@f^jmr~eeiG5Q(hTdk^IYL0LF?<@7pyH zb3y@+a2y~6GBa_mSj(KpziuTW*PMr@3eFD`HBthJk*)?73F0MdPAOEm2CRJalF+F# zR~LCTh&c3?&~(kVI;B?W=tm3!Y7>zNA3LE9tm?GVm$Qk%j< zG(i1j172Xxj2omLLzb48gWFR)2`JyCPr;0T(PIg;zv4;{H647#2R8mejPPFAua2i! z3k5zApgRg3zc{?u(YI0HIP{+rMG+YF6%ZUAJu?z>n~lDq@A>+fngp&Fao0M%5CI{? zP`FNZM}+D02T9S|j<%baNd%{t#EY3s*Yf6kOLSm-9(ei~V8_ar@R_LpBhNX5&5{04 zTT_lf4jci#2pIvGO&w`} z7V#CggYIaJm`|yY)=8}KIB_5sflK+w(mjPz0^<+Ag)c?9=aTsc0Qb0sW)=AT&tpHEKmv8E?_!J;IxbUekXo#|b$cDE?u#X5? zIbUtU`ie=+(oan8t~4&+=*3V_qi9 z4}j~)xyDM&{1Wwnv)$c4bL{uk8k)X#GewFL_a6w#7wae}A17zFi{wJTTdVEWe}IWF zKzxa5J`41Xsx5Pdj+ul#M{U1PPV%P}SMO4kQMpZ|C;OZ3$SMk-p?W><>xIvPU z8dKSG;{aEz@5#f0uY1|2Sb7C03%do9EkRa->%ms; z5RjffB_yLOfF*RPbBz1(e}&$6+q7?Lf{qiHdfDrHFa>`=SKH@1`7G%nFm!?}_MCFu z1$I~V=k{E0qvR3 zalO$&wgembwdygBn#4DSw6g&!+ql49Knlk;2T(i5-KFA_{QysKk9bgfbW|wMnl4kC zk5i0j-fFJM23d{Qdp@njsqeLd+ubNqI~vQ?bLhQ+}U zM)>)+37qGHF9Ba{JH{Z}b&NRnWY6+`cUr&O&cijs{pSB*L>7({i=!!#u}jSAO*QtM z498jAn&;8=G9J`ytBV_bH1?zMXL-RO75uRvGQshN|4c09>>J~hm?XU4DdGh_{s>BGw@lE!Swp3bhp zFhg|uizgRKS!hUU;pl6^qMD(;Xt`0G%ZTa0G{+6xFxlDg?IP$8&;tVRpIw!b#Qx5S z@vU=xEPAn$q(H`%hcgl^mPfk5ONG;I#3w$S`rN7j!Z{B4cupTA#k1qiByCy72QS)c zE1&G8PT*d#O@a;a(&)gZ33gHG1}?180j&{kq_0?n=&qaloUFzlan}=|9VHK5-?w%n zeIe6F19x8N+byUwzH0j=;htj|8 zcIoGn?6e$n#ZirV+EX#I$+^9nzE%hLc{3Uz9fb?F-J5o`ZBgklIDvUGLW&fgugnYd zya@k{Ws+6eOZ|SuGPNmde-O{K`P(a2lv<0q?&mL3sjASp&053T1oBQ36G=-+HMYyc z$!ao3>!b^s{(V|C`dC4wtaR2?LMGrAYeEuJQidUa**mJ7P5YnyS^LoI8pq>li@dyy z-e1Y2XI`&D{qkm7?#ty><9}}5#&e#$)n_caUpb(bwWrHlUfs2tvYXZ^mp8qqvcXg7 zVHt@ZoA`?Pz+HazyAu(3v&|46G={_dv`B9Gex4^ES$V(WQm>h0u#X=<-S}sWsRP?% zzsUim&Jrr3%3p2tJkZ!!=4Bf>>G!yuwwawAf@yYIQMz#7NREW<+R$@bKk);#_opQn zS%ki3fziqU8%M^xS8``IqEDOy^2P>?sxCgszMCden{SN~9@*wZ$XSjOi#x{2nXtR? zG#v=X_~dP;1p5MjwnBqeZ%U)~?3QTebEPHcmvdS9xPIP@r>;r95d4I5TSdA|Z}K9* z*L+0)8^Go0YB$7}3#Ay+PnwRV4y@(2&g$%Qv#UfJ2jEI~Qa`MGu4n`h_EwY8r)22g z&m;_d(y2_%pzpt2V$SQvvTeRIpDIWj;7iLy{6>76{^sfMM&|xf0t-c84R=bz*>cN+ zVO0CcX1-trna~isFPD7{Kl!vn593UBJG`ti%xIczyW@E`hg#v*Viv{Scab$kN*3B- zHl_8bEYzEQgCGKiJhqU|c8`Jm?!3`AQGx`W#FX2C$!;(G8()j=RlE#<&tXcc8`u)H zp+EzegLN4Y{53kxNkM|!fBLhc&O*z1PEoo45F^tn;T_`B~7b9dBsIlrJ@8MA7 z=7M^B>YEx)1mcMnjA5b0=9^S2j_qmh9X)RKN)CglYgj}HF8b#;GguV$rhJu4XL(N) zv^qKs$70B2i@VDDSrBedTWznQw1vZ=h5gCUhRV|@`_-QLqgu|549`L>VBXA9R860d z%Alx=>tP@GE_xo(@yGmGz;U_R#qZYici%G&1D@yv37-1%5t!`1P%!!}){sodE6Djf zf6NkJWuM3?AY?SqGQjgt$=QO*et8;;D`hdWKW>nd$8IptQ8T8s(pEuUn`h}>{=3FO z87R@EM32gJH%c3TIDfSdU^dVbn0ckuZ81up+fm!>*7~!G_ z%w#vS0Gjw#7U8$|Z~UHb%o?Rxug%<{@Hp~i0{1tu)?j9K1CB|`)Y?fO1`)~x-Nv^AJSJBoka;A?@66`p<1 zK1^EvnF7bHp}=o*y%k&1ffntdpsFp8@QN&fz!prs4F=;{2rO`tH`Ja?8A45HI#Bz=v2t zH^|Zt`K-Wt_CrP98cYdhhpnXC80fZdRG6p(MIYTo*hzr24)PL$5j z3+^zfAC?XydY@VOCQ`i)g>?~)KP=g{>8+=kHneu8_kHA;R!icI*550pO34*}#0-vv z{0x-X$a~B+n#=Et$~gf!CzznFRe_dgY|DxPt=Stq zv90CH_$>L9`hdJ1TD?W_jX^s(Da9^VbQLQB!>>cH(|LnLDG~bR3FD1ToE)%{754@! zX{e>@NLFn;x)TbEq%?p(rq%JHhavjk3Zj>&3$#|~S@k+^hPUL1+vfv}klq`DOH>T} ztvLJ4M{lD)cjWi-t;6Blk0@CpQ)z;~*?zldiY~Akw0s(~Cpz?u*fq|4FVOSXJp~mB z>ne!x)3=vB53dQ3qPk7@SoFC~Lh$@&aQ?FKipmkc?O2C7K@50ApqD5l>L|HSTRza^ zbRs40Ws)-b>9dk}%EO2mSLFUi_90=*1F7j>OzG3icbnz$deym}N-VBN(?)PE*}V5w z_~H9+o0A(anUE1!Dxro8A0E^cnHp{j6mZQ!IjS4*LzIr4XIqMEp`-jVyyjn%);Pis9v(b ztF8TJ<{s?8IZ~~cO%IIl3p(GE*f|SPVAER<1TuG@ad=;$ z!#d7312T0!Su=3F=nHFV&g+wp5D9IaO_oGO5G6#}wgB_)h*ydBmLd+wTG| zD4y*zCntT&*LJ|&@XFSbnqlfw;aulr!Y3IuPp-$C#lvB;7O})DLA1MUjQb{SOHw*G z5r{OJOL^nv90{fcu}>P}2p8rv{&G0oE<#Dc$nBkXo2H}Nqq*ZG9*+~eH0xmuN(%I6 z*TNnKzFcVXk!qre_+B;f71TRT{U9k1=L#@i9T9|wgUC+ee6@sMhnEN#27T)dnvg4t}}vrywSr489>(F`lqA4 zz5>yRPew%bg8_7kuZi1LEI5HX_Bc;k?fet7;gz1f(-arHR`~IRZzTTl#)eh?n0L5g zD5|7VDC_2-bp{Iem_{}q=Ou?kYKA`-juGE%pQiBXvvZs|dbpC=#+%3Q&3trPkKWQWM~uP&f__ zj1DV$dAg1%;alf-n=MG{MNK>>xHtLwWNz0VW>`UEV$-!j09! zmoGkbo>d_|B=I!j_tSSq!u#3lC@J^gVw56Yp7LU>Th9nd*W~u#%*Jyq8|J?}D;9ol z_#}%TDJ5k_ix7Lh@#`-m;Y>oxMh6_uZ~8hpGgbGB6wuN>_j|aVS~0>W;J`)M5&ctAQJ5mQW|9duK^q&`_%_d1f(P}cq?CA@lm)Pz6gDKXq~c62Vr0uv9evLB zbq&fK~))0zNB|#ea;9$7P7m<%%dH!&q+kM^FmOE+Y3uo#> z(qmo$bV+O!+oSDIE#r!dZX8MI*+kWTOUGH`*1*?9WxxLW(jq!YiDvXWA!3ipMFZZ`w>Z9(0C|<8%^hTw z3o-1aI*+%Tw?5E}P=_`>@1egk*E4=6T`oDxs;8N&l(V&SbdZ5dH$yimZA4?NoqQy`IW?!^(YMCO3zjq^gJgGd#rZao zvU4nz6J>)rQ&E>t?QF!~ou5xYc2c)$6`*5kCk&`KiTJK}2Q?Zu;a>jo3h=^7dEV*E z*GNbF#s=drhfi$WYjVv{1^y+}k%C_w=uPG$A_z4bRp=#O?1$gT7Um;Z?}5Jd{aakDN)8SIo)sc38inQ^Q(D% z%(?wZkc4`heC4`}{+`RhCxOD5>pOz;#w`1gCr&-trKmSqj)^Z%6c>M4c87CqehR8z zPm-x&ApiJkxM3G2V7KIMUtCH18Gi`zJeaCP*5TM_TO$TqbkJ2dYSW(Lygc@TL30;k z!?#quX~nlKt4NiwNREO<3pv=igFwDai`K-!WQ7be_CsbX8RBLU5*>4tZoy(wol@9z;%wHN+(b z94Nnu1kT)j3~(k9))9ijS9yn9^|2IPWd}cfOSSiAPTzYC6|~+MS!$%h0{O)J8(*F- zZ6x3@nz4h~3Ju}%XGYt)mqoZ2?|t-9xk3T@B}Dk0sgx57&6OI6j7iNWUrz7m{&@z7 z6_aJg2QeU{{>;@qBCDOfB&M2XgPMJOpu$9%f4rF9&4GGafQ(XlY8rsb;{U)++5_7nf{f@gU_+TqmNYH5ALn$FyOiPYsTJyNww4*?=2rD?m0r zFMr(-I)l9o8kQkdU447uAL~w!a{|JZ($Iv0k0(ty6NGyNjw}7D z`VBUHU1M*>DRmPxMDTZg<$krht;%UR|*7tffc|k^g zO$0~K)38A3VGQMQ7{R2x;?;AVV&$Ikq5jh-8K1x^hTJ|IAJ4Zqf?l-s4}Cl;Yr1Z;5*yP=|q3^3Cs}3L^TLp%rv; zo2TYy!}IFFBJ8hgdTJb6U!iYEWEF?RfH>U=XqrN#$tNyYv0fw~VYvf`#c@P^Yi5a< zcAO}lV_28YwmzjJFTfr_uqq+czXsKdC)YVMw8cyULnU49dw%#o0~~he`J!E z&eemYSJwA%v_VijK`4yzPHn*DX)H@tK=@AX`SG}dVDdV)$vk9x-237tduMY_VrMTZ zASbkN6gBG8(SBX==T8sMHB2u3DEV|OaaC2o(tT48%mR}0g}`By1x&#JLlp7x_C)*5f{Bb=w{a9bXag+ zPI}q$j^g9IV#0gng&bl;MHt}xJwp5>_^5)D!{{hTXwLgofF^QTO(23=jh^*@uy{F> z=+!;hmAYjk{?R|#JR4J2Nk0n+Mb6HJ2U9AFz3w{rdtTA_sJ)$W{d05twtj@acg(}U z6sKe_e(nM32^({lud zlf)|Iy>V72$sQ1;Zw??~*>`I`k70LL@?@5Mp zr+(nZxv-1aKL0%R+>biR-c>`I66ZVmZO+)^;jDDNIL6=b^ww_%TU`i8;^k-}iayLs z{Cm*_f=&+fuL|qqYk4N`Pd=9oUbx_D^$VbmSTWwWmm;JO)ya*v`@Zq}sl~^Ip(dQq zLg}wW!YkwV9wy~}-)ZXx&OI$xWGCQ~!=0}fghHXGmHb!GQa-Med7KwDqz95hJl-u& ziDqs&pJz^x^#NHOUy~*4=Y{(H^t`H74QOsl82f!;svf?{Ncrjfd5TZ{yWurw>U9tvd@12bK#801umk{O0_+JiV~2Z^@^Gn(jZewfQFR_oyIs9@0a z+`A)TiX4WH+D6VLbJSKv9m}TUh7>1lv-cm&HxrF~Snn?)C1UFo8|KL?6;=G&^iy)$ zoitXaflemSamGju7CPMpL<&;6Y0%+UwoK=H|IvXuwlW^f1RwV`P3%1Gf#DZqAwp8Y zlI3N(rLAnUtc)l8h^HXLmSDkWFJK8!Q8=Bda#7Q0`~5bjUipyaJzVLXknZfWsp&ZO z%xdUV227c8;=y`sb5NYTVFq5Vr440GFFih0r%8I>Qjm5CRgWG=_7G4@Gk0PA8ZCao z%dsgEPg7I@N;BBqPoN`3=N+NB3>~=G+~BN8rqhz9MQsk?vdkd4pkOA;_K!f$ z#6f()+ovhJp`=rUUM?1WulB?FEP;Ikif`?vJ>wH*V|KLjY@^8r6nuNNu0(`_hj0q! ziH_;QA{By(RQhC@n&}&OH&1vju5^F6bBJ|6EY>Ci=Zqla9?pOb6wAiO`|$8Hvit5*`Ys&8)SChz_g%lIGwsh5U&+(vpizs z^Q5Xk(8MA=%*((Tt|298;!e9HTGdJvC$A2u;z?dv5IBg{szPaL7>AtcO_j@*>V&L^ zERQ$HrDJd=e_M{kT)nB5v8%fkXnz8l4_s4nb)Ph|@hH0* z3;5Xc#lD+PDjhO@E@ z@@l>^n9dH4z0{M3Cw&or4p*G3O>|mNLRIuvXWcZ+ydV)z@Os4@V_lPhsS2Cxc=9Pg z7GHcYDM8#PGu}8d`MC~-KhIl661e-`k>vbrX|`K9Zz`cl1NcixS&@gdhf61?#LBa9 zC|#@8zJnGl+Zr9RH%b$lx+CO2mA#RZck^x9;AzzGvRTPNrdfEpQLC${&ccufua$Fy zS~9albroX0WB$t!X-J7vk*0m+vMr=R$6`~xt16W%uxoKHb^{qHRn5!!Er^-fH~0%d zi0Ka>9lMN+9zucJ1x;_)%9XO1UP>48y^>_8T0)}9X+y_y&)Z+<4@nZxriy7Z7poO5 zG{H_#ye`>38bj~>VckQB%d$|jwbS~T&SmA>^~f8??$TQOHYLYt$gfWjn1rnjklyuE zMVz6i?R#b_0ZB1N(~?-(%m5lh_uoT64D(5LxaLgcb7CsHw+Bj zAT@+^!welm*Jj7Jf5UUE{RGHLL?722JtCo92=-l2AaF)nihVD zb9_ImviA#|-)o@to|ST+4`1Dyh5PpKiGXup6X}?*>iLj)Z>S`u|MGZvpu|XbcuW4N zF=xxsV*j-|^H6NT?%}3Le4y&xFKX4E=^ZILn&uDjL0W{c1LNcm9X<}q+is_UGtiCD zn6oU+7@Bp!#tI`1yVhw0WB~BdOel~jDL!NFiZUhLgL%9fJ%loZ3A==rcg!j8!Eeng_ zkMO|AQ#3zrW3w%p;7DFy!OKp2?vm9}5A@C|ud#ZaZu|$y;v=^^!QL3%7_`sVjOiOX z2R7JVg&;e2_Lah)52SB9TrhvA);0=u@HwE6F(F6wS$7AI%O;|7eMvbi$J>BHiN3ZW z=`z^FxU@72#i|AljhH!cPMsKo9Q<+p!a*u*544xvtnO^vKK*65NLG0r1LQZfyOj-J zWxEywCyPn3%&U?*v6UFTdm!(pU6`7o!L1h$^Z(l`z2(r5 zw4-VBzvgH?JB(lUyGvQVo%T6Dyj2^{bb4xNf4Wi|S^9XVaef#U@R`Qfy^wHH&L_o?+Ik7KzkK(JcV>%2Z*ip%@?l z<-gca0o75AcRmbkfz>pTv&$_I63vTq%pF5PH?!pXaPY$R|AG;*@6?jthbJI&Bkm3Yetq-#TLH(K;z`9h2QiEG- z6LK=(D#xWTD}FIUq?@rH)}*`mSz;HbbjvRX|H~Bs9C#Rhbio;Umty|s{b19MEuf}} zpBn!X@HV?VNcqusS-?#;KwQ4F-oi7O@3r~~Thq_M3|nmH7W6{fMPOHj%rgf@i~Oid z?Of#h2da@bkrNw5LiH9SZRP>v_lS9(i7c;|)eL9KX;qWr@$kah=-%J0vPM#kXlg6* zVcMk#3olwz4Yyk{fa65wI%6M$>Gf_s84C3xkFl_d!7liL>=X#!WLne0F?Ik};Bi;9 z#X5T;Zyd4Ga$fdA5yUSO6xE%k${@A0_qGDw?weQdlRREVLA0@k1?O%rZBBUVk~;_}XSaeMmewR}-lHRDVHOb63l z&awf0y*Z!En+wr=JVvNEAVsFxc=CeL2nUU8EgJksa|^=F;sB0+@GLB*Ei={xB8KyE zI_z+Y^ldFBE+%P#`9sGPPFapO$*NR1ohK>gRD;NG5L{pw$0uz8uBI)9`G=2FqsuZL zUUpdmt12JSkVc^X*>iSCqMXn`LZ%at`(E}jcdy8R-uZ00{Pku-YWYl}IRia%ZLirwoOY=Yfq~?;@o=;f zR-qgJ7R8r}4pt9&J}AR%9#lAXnT}tPMpMR61;3NS%(ZdKkNHF65sNqxPl)jcXEReY zjfdve9*?=jMGwh!;&^L;H1?^PD0ma!g(0~a=lQjF&qF@LX|Rvb$=W`O*xl1~h&qyW#3o=wjKTy;MPK-wQ7@wG5_S1A8uKlA zd3n^g|5W>%ioZlmDcPgPd>0-Jw~9gvvD975yzx{4iLvFn3|uzIEf-vy$C1nHdT>+q z&G%y)edwZ_<+sRS5dD<$9?TmGc4xMT@|{3V-{bj6f8^H*h&mJ-vdh`B_JP-!#EAW# zr+iSTInlv76!JZFsf#qOHW`^{7jb{QlbZ-0TU{{zSS za75?4Mozk|%(jmX_On8TWY*#@oW33SVKg>W75^}!acEMvk#u)2Gsi=wORdSQfI%`V zIp0eVB(7y*!v+q#lxY{|~ zrQPcT$)b}gcQd&xXOX=2-ao7@34e?<|2ow16)beMPODF2W?fvd@rjT3$Q_o}&`ll^ zZ=chUd2@t_Ll8))=Lnuc?LGey-MsV;ZTjF{!R+fM@U?Qz8HfwlSuZ4eI?(hRUFL|1 z1%pkUi`$nW-Q=+q%c7tJDqS8Bb? zlsT0TcuVNTlhJ61lv{BBgLYI9RihG7ZjlX&2?dvb^>v>0TYGE{2u@xvU_ICPD>@V)<~0#;#7IWl_pOvwj2AEYhDhE>M5Y-g8HOc3?G%3)?97z z(ER~gf|4SbMA=r1_=oH>?S808RoJr|SiOup(kGT!(S{pwWPGZ|tS9B=4%??DVOyiy<+V1|gx_SuRWLU?cxfE( zZgBQ;i0gZ4r5vpz-2}ftspHPx@S>T3um*6UM)=csLux`_s*CbEd-2OARhp%aC)3{= z&BBN+Jve7EsbI!Kc>@I8^QHKune{H5e^sZx+Z)!JOa-_HfvILEF6_+zG#!O{o418n zMR9r3Nv|Pe$kal59&zt$eyJUIP-}ep1@}e!d|oP}vF}ZZ>@Mz?fM{kFwBa`aI}UbP zcJpv@7$q+9_KE9u?YNugvTv#E^D$X#3gEUgPF+G6ZcUC6-Kl2&l_ZCNPVCDD554eW z*7}=(AO|Je)o&rU!5q3wWYE9>OwR}kHrxk;hIM6ot8O>Sz4mZE z%12B)X9ea+lxLb1+o`gj-X@n*4o>YYTb3Y}%)iF!?oVCq-Vl>fu#d*#OZff>rCS<3 zsO#`BUuIu03ixmkCbYA#vt10p^@{T#Xl- zH%aY%ly|M|ybZTwqviS^@ym!)`nlf4zYQLe!w}H+ame+~YJK(Sg_TMCdM%9dM- zyoqT?cPg!1{ap+kmpj;+Cr*a0kTH0vggcvu5Fo+)wy%$o>IC3SXnZFsV8Uf`V#2eI z))~{8ziEX7d)z$_9qVmZoC6XWQe6HI#S~>8!bT|1(uJrYRo=4i3nXegvqT{u<)0`C z)4=o+!%Qm<1VJ^y>2t(@^&ZRj*nyLJNnFz?D%5~%E*$}n!71gGDuxbRz%HMP6{#I7 zlY}&PG~*0Iq4c}(qhY+)tu^d=r}sOx0y$aE9Kc@et}!%rFvU7&qIp+!y|X3nB~#9i zO_5_SB9C=lS2KA)n>qG-rCO_*kOCn+RL9i7B?c+BcXzUC`fv%n@i*zGRJdQ8&<~5{ z1KSa#amCjfjCBCO`#_`xG1_Ys|Eu7=2bbolp6EV&<~m^)O9U6woV&adz-L{d?;^42 zc-_UqYzOcOx1=voj# z2;Sp*q3WunMlr{Pi-8bazq8l&^DAP$Ddytt&u#5s2kLQsh2n6}yNmo1WjSSKMZUTU zUgOOXrr@(+!STVC0BQiA37#-fw#Xd{^*5xfDbxQ@gT7h?!s#?h0^*oD-SWN0!hlt5 z=~f-qs|)5?oA%)aznMP(rbP(!;n%LylbBgynirRwHJvzVbJST7TtD}AWGN3p#;;y- z&EzrnLD9!k?=Yd>?~{?CE~P0*g^Rm=CTHV_dYtNFVLforkLa-jdM{kB>x))v0w0Hf zKs+xO4#)kC*Bp%OX4oadN~c3R*Mm_C!7ws*L1ENnWdS3ial3>(1K|=d*5~~N^?4<| zZ9WAvll{cc_E`)@WBB|-#3GyUG&?|^9xp+;%f^Qp5>%xXqgWXU9eMUdg_w}Hn^Nb{ z;;;HY=~S`CKZvK(TX{}~@7|gG5N=K`mg#Zn2_JU0K9b|OrH^Ob5p%ETLR>kg^1K3%QuIhagu?w&&3wEwhXtrY%+u#smL^}0d=?&hkDpUE zu&8Se%ER%v9zKh_i9*|WL=;c4ina#bM2N8PI44+FR-=|c!cYFHY%otnt|?Jm>^GM| znbP7HD&Ca^L!`RMV@q5$t}2O_REs*@ZM$17G$8Cr_U20Ijnmpn;>1+ND)GSCuK$NpI9p!jzV8pxlXRUeon& znQVEs@Q{@{;S9<%sQk=7s9|V*LiD3-FRug;)*9~=McoD=MXR9KBiY#ehn%6 z$3kpf+>Qe??|#Gd?+hf{S`L=OC-ehNeY?Bat3IxwV?t3_M_NAmr^eT)+0(y9vs-+1 zc25_qq7ollOsOVggTW;3@)|5ZE+auzQ~1z!os+boS`JGOjMg~~G;lNF1umGDehC6I zKB1_;LKM`_cso(HVVhkAPl-bRF zz_5_&^<;X!)+#sIshE-1oK#Jir0hBd)PSB%X6oKgecy1Jki)a*A?Pn|DRcj7X^!O> z%u>qeUp#s1m)p+XEZY!<5rBw!mSN)?-)e-T{cN@E-{mqY${+a%&OzXYq0!xMVNX?3P4h(!OJDRYS{9rrLSFWo{wpA>DVP9LDjaEsaX!C3 zC;hfLt7tgurc(birzol#YP;h#*h1)|N0?kuV>5h**I}5r(xrQ_GhVrR@65A$@EWhV zQ08Rhn0r;a1O!1o8hav`?yycK2P;}lpISH{X;!wMIlvXtldftj(3}Ve2L^9lPpr+o zbWGg*A<`W$$M&6PlU^({#QnPoS2IB^%bU7*TU+u|dm@GoRZmZTPl(dvff41N~^Y3O`?C`i8b=n4{sGrQtdZ z7^r#J8VEclI(Gf%T?GjH2eDhlVB@X+Jk$14cthTtN3BjIaW|`yPLw)f{bvih6qApr(%jPji zk_EnA;&GV4x8+;SUdLT9RiSNv^Vt-1M;b(e>#T(L5jljI$^@(PO_V3z@kOoG1&c>N~f!HMD4BOjFP^~bL#c*xiqYDwMQ zpJzQ25k^X`D~w^)_6GwDw1=sD9h6@^`6p2)e&i^7piyi!;~^O#bICFP^kMD4zG5M+I^j&q@PaC$D530pNHaQ|EJKbj}L#AeUYKdkVj?h`P`w~1q~6XBWIT2 z|5X_##U@RN-=1#QF1J6XEc-uLwq75Oo-e|#cMzE`VEEd7hWOox+DMzzqoDUeSb%y? z=e39T!DIDk$oyJ@eC+DxLi2XY)9$K)>;I17{zvi4kQZx;q%V7_@|f8BZG(B*k;a4T zojC!OR(JWj7i1jLKKRqmXq-T(XmKsM()g2~aFqPJm%vPeW#q2h$^fHn0*ztJe`OKXyopaHc;-%{V-YApAL+)L==tF z1QMPKakh{5#RAd;c?qQq_Bn;u5_CLj*XBs2By;6mJvLC;QO0pGenS4+{pRixfcaG- z1<{kzuZ{-HVAdczyX7<-+WhclN#gAZPA+1F=xtZLRfxj7@uVh$<20Bt=+2;OaIM`$ z4Gpl(zOunr@aUWKFJ=tIUxyFh5P(PB#rj*g1`s+<3}}yA0CtT3$R{heIoV7C#F zSVgR;%vLo&s@5DYQ$LuM3U;S^ygSuD?>>7P=oDReTnM-Dj zF29E@PrWD+cm}GDM|u$K^<^^|o0wLGr&unC-f5HA$R;q6>7)ppXgsufoaQ%eAgyJ` z3|OIsvvhO2g@u4#^^>iGbEu1jcWkl3v>d{H;mcR}<168)Bn;8@jqM`g*G0$f!A_h6 z-{DPlLzm>xW6#Aikkv!iV?9oKPCT{PQ{RigFq z;=bt_Bl+%H>kcrKcJoy>!HrP}%yQ%R56%fLW4Y>E9k;$e1rg>IL7A##*Be&ZS=`1D zIOPaXGE9~67EeCLe;*rN#ckujQPvCCeeh~f#J%c#yeKK>So~+Tts2}QoMY0c`r9vd zy6QXMvHN8fQ5`Nz{q3mwRb0UHvc2-s%U3@93fkRxfOW7OjnoLB5L6gvNlsw7@Jki4 z%7pyQ)w`3~zvx_JRl0(-!VI{IJT;I)Lw!yzo&r|<=J9{0 zX3N1DLH^@Y^~6*Ix<$fij$If3Qo$oFbmiX7)M(TS6)5cZ@AGqMd|7IRz>CEL15=pu zv+h=KGEWibc)!dm2B$L7`l08BS$;j?OL$1{v&1&D)JyvXp)kh>ik(8gE_@y+f0>{$ z6ESm0DbY&{ds+#nH1KDvJI%?kG(ZI9B$47A`P!7gJ%Gf}M$oZy6BwV0M#JCnI>V?3da@O4Fd$hYavvR*&!D zwbmZpr*e+ReOs*=E>jJFe<&&>znMQRL)I4>;eK37cS-x3@2=ht5?KGikq?Oi52AO@ znuZ>m#zZEx;y?W;n$cow!lYNc({rl*cKT7K`tn>=rAVFk`g<(@JT!-XDpECjWW%lT zJ48t!xqV*h&97VD4^0oMAug3O8BZTpB8%H7xa_JzU4U$dhGB^(a4-IJFSY^Z*(5>8 zdXbIQ4RrvP1D#)Uibr6<$6|$<>~NvJBSQ0tV#_?-d^?dm&gSKarK7_2R-JkHE6=Va zMA?7Fb+g)ccY%JhZLi%oNT4%qUL%b!A$oZRx%bYy2sb`sTs8zXdB(tKsL#`LZ?l4Y zK6w*cg{>$u@S$xt8_nTp-Km^xmbFv0$iOI~ac#u2Ksq||Y;z9+QT0PMuMKr{aAszk zMJw5Of+@ER3I4WfmP7eNj44;5BV#j;%V47pLRNKDX(WQDuh|P&j24fTM>x#upyVLq zw^S?rew;_gki*5w?KXXanQDY#Qy3JzWX8LRIz(h=C;cat{Vat8Cfe*$W5rdaW?M8K zQpjYl4u5>d-CzXesbcYEc_=*#pKbdO1)98{*w;=>_8OhjXFw;W6BF9ee%z9A=cww2 z3MV+cHi!N%vQV)l;mDVXfV?6~P3~m%OP8U-ASg<{B=TP)<~3-{+$w?Zx`-#2IrEJ4 z(}B*Iyxr~}{d|9N*!QMzm+;Udgcp`&jgUmY0hvCe8` z{Oe_pYnjJrqjP}W1eQ}Y6tX5a;s;X{ho1>M`QzX}3=ov~uXeZOW;t5&XYUm4`5+}_ zo2-XL24+j}++qe8zr72Ns@$NDi4gT+p;gSjgxB7MVQnHM^=$hE5u~bw@cmHi=0D>0 z!pKSOk}@^LC)LT}UlwOS#5c4;zEkar8g<3$B$L8rlV zmGdX>d{vz;n7TTG=P#1@%n%c4tTtY%G6y5oBN}>3wMbBeM;U0l!oy8LZ-BN1Gp}DF zIBbHw^A2l&2Xo+T!}p`@`Z(nN2PHBu&Y|+UsiH_%2abIOpoVMjA#c@fCG9j0`M~gN zu`_;My%S5RiHsu^3w!3ua~i6~&3bDP%cIm1)hvT=TrXy3Q!4SJ_9NlM#5$Sajr057 zt9MJ;#!}TRNpbfyVvAi%4+&OHyg%WhP2GQHpC*3{efc4b^I=Jb^zOnHYQ=kF^Q*pSz_oZ$>_W$) zX~;R|TQj|Vi9~p}UhJqw2jbmUs@Rz8*)~ENoVau3RgNE*6BkC*e z85m&QI1_|`dZ)NCy7@N9b&)G~fn#DF-?|4UhxKV@6OEkR8!d18 zjJvt>GZeD@)M-raa)&LD+>PR?F6cQ7g`CP{RQnnGBTv`Ij1uN8;Zj;qMTyLtr7$?} zRti_*S<+`9=FRukhIMa=+xDo_JnIX*HT9FedYn~!#|GCGL#(+Oe#nmI0~^qvUWUhTyfv&c!l++y95?EFfC zRgO*dY6=+zdb=Jb8Us6LHGRjNyd#g9d={)H{ry-=#t?ruGBo$dwx|=WOry`+Q|d3o z>O`yvIxfEwG@B$|hzV_P?wTW<){;l5)V6oGns??BLEBd_p`G2OlhLjDwM1CS#P&e% z_4c?Op{2)>ipc51rQP+;?utQfOVjz;|JRT|q_E@)#IAsmUyeJkAj^J_)UEf24z0dh zey#V%YC}+=0R3a=J-+wF3T@(^(^FFW#e>!Mkx+mxr^$21vagB;*9!+j^IVf9;XC&8 zAv9~{wr;uOQhCup?e^Jk!8m}COvrKcX->k%X?bf+tgh3Secn+b4!QYWYCYk3ExvaH zB1{(O-u2+$!p0`C`w>{Um^(as$uS&?3zS@$bw`W)wizg>ei>+!72`RCk_>K#P{eLo z(W!Qd_TmSUhH+yVE_L9)p2uJZN_4504N8_=!mSsCZ7dPP;(8GvrX&p0p*i2oz~0u~ zGxXPskR>q1$TZdv3hJY|R1&JtQo=90;bHbT1$X)_u|JPNt7hb3b1!B~w-Hz7+m|C-1!Je8QU z;w(w7blp*PMeq^V3NU9bA~J3X`LAyy9Wj>5uxO?y{D#E9kS(EKJeeVIZ5S9fn9-eD zB%I+ojKaPN9A73iExop!B%^)Z;cmHk%ZpFuDi>4}AlH8SUlVFf$c|T@=Qbx`s$oLa zOP+2V+gvtx52qAO#pM^;>rlX~W>s;Dte~kDD6EtCzax>r1N3)?5l(2n8`r4v?>4eG z+5x3^o15ISh+0{ar;jk|KJnaN4J^GZX9IG}X?M5-Et8%HQ}7mQkOh{DikR~*gGwan z(3`9zypBQPE-*^fag1WSzF}69_Yb86xEUaD6^r`Clr!lYGXnMSeFCG++`>FQ=V z9GJj?B1K{gof}k&49hfWgv?JFCRe@*6Sj)#cz*!%SgEg%y^T_m7IUHDuT-PqlN1J1 z_|CY00Ppv(ZIGS#ykRa7X7TzA;@*lojWH$a3CMbXcd$X~RZ#!4_a%cs{wr_eWK-hr z*ChD($PyEJ&MU`-&_cdw(Djn&zELW zP(F*zfz$L(7hol(M49{drG7n_)GuQTqfPk!$s~n}(ys~&n#W8AAD;2Xn8?H-Y+twb zh&6DMh$@4iJem&}FL!NDI2auEU)u~)ZeO=RMmrej9R>TmX~|3!bDFjYFi;;DvWwUn z(&gAs2e!fK9cGbQ-|Kc)ir_^X5Vru#6Mm`PE$h2qm?+4cP-#P8w}^-L={GdVZ{ZIY zSu_p-c_vX<=T)s4mmR1MGH13UCk-)pj{_n*CM(@OpNv@1aG`y?xr#q~k8DnDs%&E8 z05TCaTOXVVvv&ey~pIE-W$lqutkSzXqo!y47UHo&* zqKiD!l}yO^kXn_EV$C(!`;S1WGE+Xto|H(mDiWJo@GVuE?cJ-JD zV;*v-x>39}-)B;pDn>a|L?dSs99dJ$D{;&C1U^*N9V;56T1-&V6n2$EE2HL(_^XKI zN4qJCMv3B6n2+$*p1u?t$Vep?M@wjc8t?4pi$#k!^jmq|Lbpv3=2^YfYl zwwVu&>>DA~EQRheDoYAD@BcnzbW{w$u)!v=iy!<>fJ?c-HXegM(b+Tig*a@zj<&YN zws>G+By7N6D5ZlqfXZNVH*B*6KB*~^NZZ}Ou90vCHIMj{ZS6gOxF|9cMH~*+4h}6xWDJ>+I z_~FixH0a1$>X2A4gjp&z^ijIbpToOEIl#v18#D!};BWyxg;d*PR7g{6oL8kc*RP%`8^TnR4Q)*I2uqS%#VFAxTSZsRm@( zzxU7~MeEtX*58ca-yssLk$O%P;LXgATn$R7LTE@C#FvrSn^D5C8{Y6%J<313ck96d z^F9&@b92Nkp)b^3KE2vS@h=Zr;uWS+OPi$@)mV+s!`we)G-^bRZR{vI_+gfiO>l|a|FsJ3Y-v5!D<;{X&{>D^RUQO@jANsDk z#BEubtbnO8cbHn7rOJ*bPgqJjU)n*q9DXQwXOIwPf6!0?S`1-V3y;Hm_T^wyC1D38 zO#Hp6z^*|*gooEtPDty9^8&+*U0w1wXnls_hHebT^JoirQtYOOAi7aQNQrcFy(i=e zG*s>r?@ec=W7JnXI^XKR0>^8b|Ahy(8mPS;oAMLNK5x&F9iWXcF3d%~r1&~-5#85g zZ{LFzQ956>r@gyhe6RADaj`0A8dMPBg7wVX_1xolbMqBq-IEFVY=JU1oEGp1-3yX7`5O$Rc|VZz~enY#C~z>7LY0 zeF{3s5RWA5ek*av5XIR-%+h_O1uuD0Ct z#D%8V0jB7$W4hIc zWfgOe8(?>EQUtrug}u264Y==3H^c*3uB{|*oEHNxq_s-`uTK%_-7L3Fb zFM139FCzXwuNV1`CQW1vI<9%E9WQ%pIKD)3aj&PUWv^$C*2g)W?cs~(VsY^E;10rI z?d4^k=Z5y{-PrSm*pZ9oo5Q2(k)sz;BFMzYkB zOZ@)Od@PY{mwIg(a1n2R!hL2U9>2dRu|R8_7`fuM;OIEA{}6ikg0S>oWsu&>a~%g+ zJ1KOu(b2`&h4W215l&wVUqNJ8L@-RZ0C1*2;RA4cCx-Ga#ySa>o8IPs7yucmn1aYp zfE#79IKW@WtWib)>6SIeCkz{3!HW--Ks5hlIXVU1VeH@6=-jpjkT{CbWt0D!8&I4d z-s4${W=6`Nr3P;5v4ch2h4BZsO7eDRkf`YhvrR&jE^&h&7hl9z1kk!*_cTDMe}t_m z?Kr2?a>{#s#DBdhIGh2%9BgryERtG&%Y+xJ#=zS^kvNh)Er3uUEO$tg>)yx< z@WUXbgDK+zR$@#Q=Vj?BhkCaT$5B6P<>??D8!`uIhB68qiSh0T@RXXd6fp1%WynH_ zywc$Mt&UP#-q+4! zL*nKu%~SezepnZ&YoY1#t`KF^qzj8;7awoqSX`_u*=8b7Q3~pYLP2CS#IA(OtvQAzW?z$d ze}?)mq*s`h8e@BEEwZ@xRhu@eN8gC6d&I+kYu4ORR{W_5VtKWTyA)vw$U)_AT9!*h ze$25~Y`d9wKK1>O5O3~zmeMo71k8Sc{#sZM**z^s4eX2pp$mTl%Li+0v>@d6^thW? zUJ3j+xfSKk+wEOvbMN)7hUWYHyCBR${@(@Nr8tAZf(9xP%bV;at%U;P*_amVZM)X9 zqeEy}GsGqGplYt-%Ad&ZdGc4@I?L}H)Rq)G-KWI#BiuX~D8T&T8Y0CxmdeyFfoOeR z>xM@C8`Gnmekw+q_gnNSoL=l3@sS-9E>~uc)P9Q2KYf9wT)AI%xBhY5h|3Q+f4Vfg z#S2@5iN9=4DuZhFhw-vnQH+cCzwVD;FA&w)Y>{q#*u3GGLHW71fhw7*BO7~-HB=dG zek2ALHQ($Vt@B{orDocPwgxcCw9!){ZfX0O)J+zEFfs8hLB2*86pzV-aC5aKfjMu&6f#RRO;A z3LzX*?q7y{BYLUfRSh_LJ$dsaZy{f*#9v+b15eQ9c?wMCNW~WNVjJd7{*W9g?Ntu; z%isrMoMGlLh&70q;R!%fb7ELZ?b`YJs&`mBXJM8SzNdcMni_=gf4rX^f>p|;Kz#NENS!EjC-(@s7h;lfx& z%c?Ce$6Ni>_%1ln3H0!O9?6R+WsX07`n;wwFs){wH{G->vlkygwlaleQ(8eNb|$Y8 zZ5^uXgwj~EmMMb(??W`(>-B-;T)TC)910r>WLXib(i#<)q(3`yC7Wyq$v+xN&0utz zg-ad}HaL#v#al){Xc903yg53 zsNHb`-=l9umH5z9%)YPqh;kYK()ibB&?_ekgYH-qs+PqOa9~L$pWdET!aUhbsv>O8 zwV~s^ktaD>-rmFe3iluq>VLsRH%3jOVb@sL_s082mt^h26~=}*J^+ITgR&-YZt$@( zrb&_y_fO+bm16tN>Y63f$AS&FS!-vhm!f!Ctl*v%vj9?#Nqp~+=r0% z3JfoasXHL^m#EZx_Z-|fGdX+@8))!dxd$j;{~kBgX#71WwwmlfWpl3^x{|SX$r)bB z$fh(Grrl(fe7FuRwij{Oa=G|roY02rer@%c)>e;)u)<@b!Fr$#AB^mng5jK+Cr&$g zeYAH^1;>h4_iY)eNE?k2eJ_v}LZaONdBj7KVm~`+H^Sw{zsa{vVc^rh^<(nDqtRF? z#&7jw9e!QF26^3{P$AE`9|PfUiFq{TJdYQEjxvz*+N=;P{fu6i!h)*NTLDL?-4b$= z5KK1dYU$<)_-sI^lx^tYO5fDSyzxKN@xKEPMc=?C(CvxM#p+Yk zfs;$RZ}D5mjAqUb>{Wu)-+{2(`>+1Ao6aj@iOU9L{1Ct#ThuZ)El8{lX%)C}iDb7OesoqbPNgTE%MQfcN_2uNv5}vMlzr z+1p2iIVgqkEqr)u;8ZBT=8N=$9TqJhShO3zlj7?iUh$S3lRwG+Bb30H;uosXnwh8n z2>({aTwX&WamC#ihAr@hs&4xCJvg|rhd_4rSA`7>C*5%bHyx%e5uc4ebcl0XP}yiE zy4|`V2E~2fi^=J|x_Ef&%RnP&cp^GElcd*draH4e^%?atAT7ikDTYql2XE;&jNkVi zS$-Wd!EZ_u)C>6<@}H?vhflmV_6i;a$Y_Ww;Vgy*+5q7YSf3E@_wuH=O1uS)oVdfJ zP@2xVK6rQgj<-AU_zOI!7+FxYs!cISOcf$R`7d=oFDag8L>gCg=SK)p+WU65Q=;G4 z^WjSssZVrAjU6b}=s_l7Uf{6AV#nV1?GXfl3M8wkoU^;|_eAcP%6h>r$e6MuZ@c_% z$(5F$lJM}^mUbNDd=;>|w2;7hr=@94B6$>`X~L!e!?A(BKVj_pCJ5KS0rld6I9tKb zxB3SjBV6J&*p>%H9=uK|VdL(BB=o4q5svrN6%E*mEX1XKTsIQWEG5`~|L4n@5vNYU zFZN4KmZykf$&9HK*0jK3_8X$pds94P{pg$zpL9+`Qq~*#SjYngWMLz`AfGB+$u6OA z<{Rl7^;5;1YuTY@PSPM)!*)S;2xSbOivT;xAD}IbFbL5{LNW_rrUbhj?Q`@;DMBcZwZ zN#|$MWCKGwUvmjbOYY46zE*$@Z?pOQ@fq+8t%J6<MBMKDsqG_^+Uku$Ywwy+?o+9__Z3s?Wk#_L*uZfmz<`EZ zubNgoX^Aj*dw^qVY-%uD)veR#8sy2HwKHE~@_9LE-Qm*^G0>C`RYQGuIt-sS1P&5_P^v zDA^SIHy+?qw^sV!Wun4cKowKh#l9hEamnmfqt^K;CD2d}L=uaFC6!+6dTz2|0$3SK zRe(q2sGpXE8)Dq3kaXo9gx9D2Cm@kfB#IT-P*B8t6>Rk)Fytj_1{|Usy6+*EVGyro z&L);X%rC~5hG#%rDRNXyX4g+tAq?{L5-PQ0J6;>7s+nv3by+_GN8_#*H&xhOQmaRJ zJWS5ayajflGdrBr>B>gozBw>=(bnUAPYcoL9j_{B@+{}kL_O2t%@4$DVa;)UDi6ZgW}KR!{F_=no^sp)Ci-uP^5)xS%lcQlk#u4#T{mbb z7*T`ik?=X#7rX28dmIVdm0@D$_Mw@DDG2N8S~Tut&aU0ui#v`>?kCCX?DcmQj00t` z7sJ`cm6tSijBIP4O)vIL5{?4a5Z2E&e1f3tZd{;%%IMFB{dn+-H_hZ+4NQr~ysS-K zu}y0Ak^nu+1Xyua>Q<>5!|A&p%5PswB*&jmYy6-WG04;Y>^B80YuJ8Fkt4SNtCONJrGJ0w5BkDndQQ}f9kl|qgc1JP-)J#~nBOV03@jjl6W=#_tblg= z(<_0aqH$W<(PC#Z5t073i_tf%9-Erlsu6t41z5FSMFPc1BQ*wYS?h&Tm~r^Hw*HQDDLU0-!)& zzrJx%6FaOafIOVenD>RtT3S8rlIw1M)kk!0rU3%gDVi3fLI?C>%|Lff>Ouyx zVLQlQp!wZZju}_xf;8p-Q73xWOM%^t+)gHp&k{Z*6*irB)OO1=Yh;k$M2s!J_4Txf z+612UXp7ULi}VrhW|T2qz|a7f-j(1N1AWuQ+nTmBUM>HxODXhpgEx%w zl;<1KI}-Gg+*swEel!`fMRChqNp3z4@35E^gLxtc%HNr!;NPe8=3l#cr--$NZUj)DiC_U|#g|9b-&is%}i9 zqdRZ&en8iD*sw}=4UT`mkz!a$tMe^#<*s$niuYn4L+Z84K|I}MPCshBG#Z(m>%u;K zsWfl7?!K-1aVLGfI+a#0(xvZu*>N}My#~5?){g0@oc1u@m7u33^bUog*~&FY+g53;Mzq~Fk%%~rzQPS)U&e0>Xk?ReKt>im{$ z;9E`ID^0J|)AqHV#JC|V+MyRuZ@atFu61(-eBPbQhEi(q0a+M^gV?)X%5(U>-GX&^ zhV~Q&JB>lD-7i{m)-kSbwnKSnM?yS<25}|Av(+y+4>r+`H zpJlcmPi(B?jZ}f|$OlXH>oIWUGFF<#Djzhh4*bHd=ZsIyZ}c9bSQl@pFHyND!Cu(e zg732s`Kh*JFe+LzcTkU}z^G}bo`}&4dYfh=eRUWE!>j0$KB4!tqf;Azy!OQg8=!X) zAWzIy3FGY}i^Ue()@ZKs9rKq42AT7a+f_iDHNc-S7il15$gmaI-eNljuytX)%yow`_kOvGq%L;MgYc)+fLP8r59lEJgIq_{ z@539b;P>dikIWU+k?X>(vmfn!h|W~#y9PuOC7y_Tni<&uHHwLWaY6s@i;6$YN%eb_CKc<9HT$0zi7+sF(p7gSK+uz9vI4FzI z9StJVFTGn$zYnNmJ!cHDl|A+^sYC2lEP7u?qXAX0L6k7pA=@n&tfW7=Pdj~V0sV`y zuYH2tFlVjc-wu2iV`s7zvJFqx%*lDXmIHrhda?;TUv3)dY7IhwX^{7}N4Ax39d*%< z@k9=P@6q?V1rr>w*^FB^bh6>I8S`4--5!^}rW;e_I+jJQv_IF2tFwWTy9qP4QL0$Pw*6v6*|16r-MC6VM?&!N~L4zF5;n zVtee2KAtdcdXEB_$iGTE!E8s#t1mDR-&wTJvoxqMA2)<~C2a*Chm5g}j^!uRjqkL? zKZ(I->VH~=UYxBdeWUSCH$8E2QhO3wjFI|q5k4Q-Oz(DZreN5Go-ju@m-srmG05|o z=aH#kN*noZl1f5-p8Asbc6wR2rT9m&FTT+f-*>4ed%>fTZc^dB8UH%?gCT8BP8>M` zt6#yNOS6T{sH<3lRjF@2pU72gL+J5t^nVVXTwb9~Gku3M23*v)we3bu9Nl0;UoHF* z{$1clX!_YDKD32jA7C3i4ftftQ`mz}Pn75>ALL0-BrSVvW_c66!~SEFoAwmU)5_!= zjDQ|?JLbvlg{=0MvR&Pj6*_NSzb4JK8`6Ul4%cqW>G^FryLnG8uHTXE#RIv#{ZuaR z-jo~n-;g^`UXweIpUIOqp2@=}@5yTq-;=Y~-;jIHpGy4Nb6MTLFE?&8|KEHl`{9wC zpWXk&wUv(-6MQhm6jMww<+n`vtapvn-spI0_ z`?7lQh8!L}md)+^vcG&H*X}T>-?<~%wTH5~{#Z^gaMrKimGzD1IOF%_a8Mv{SN5lX ziNh^9-`tjZdj^=_$`9d`XL{-4`bIs!3mDl zQ4<0l3puI)b^w&P1Z-A-G-o#gWKBtu0r(t%m8RIx#WydU1Ns0=Zj7VFcSm}p6d<)o zWg1w3+9S#4SHv%L@m-I<&gI0_(*ut97N4aSz{(YOYKgy`iyP`m1K#g0WfF#x05qLB z;A-Z|a+-*BWjS6tZBcwZ7E4=n;oV7iZ)nMErgtj0q`2g2ww?gW@Tf*!jFz5(H-2{_VKg_eDZYh96&z> z+`2B~cg*Lm%owj(toK&{*yC5n9YdPJD2N%ucp~Ak-Wd=vK7-geGL2pk=Tv}Z9E#GD z%vq1}FfPjHwKO;=i*XSYV2*t0#ke&NU#U)dN&9fTj_X)*oRI>Dv5WSS1M=GzP#owk zuv+wfiN#XWm*@f~jy!!x8qIaDi;~)RO_7pGLOaJxpPQ8wI7AlCb&1@inqEgQ)h&?w z+@k$!9GO@a)Ejhx1mX6@i4GjhDx~ctPQsWPW(`osnJnWm@S=;yX{fs}aX4wW1Blm4 zr}Lyk&U4W;MopZHJ;|hU3Rwg=a@3=jz-hj4Jt?Gtkuawpe$Bt}xC>n`5KSh7oMf7_ z6=#a}c{qWZGGIKW4G+~BQ9f#ZX&Z+z&{Gh}OyWRy$TL=Y8D)&)?W;5CF%~#pv?Za2Cit_4t}DB(KH=B&XPo3;RxKjlqeCHt5bj z3tM$H$7w}==8R9eOeNBVEL{{|;FQJi6USLkEo8O^uaJj1y1^LF#=t_29iuJSH5>je z!d8|wj=QS?7TOiU*G6s0T9)d_(Z1Bx)MDtY?zqEAx3URi(My4?3gBmABPSY!=omZt z7S3@BqfFdIBbgUVrMn@kMviCIxFa=31~m0Y3C}~X#i`ee7F+7oow&ZZ338%G{&|1I z7z8+xe&+Jd8XLNR7szf{VKXbqQdjzHi4JK{EgRDq=p8**+Z3Hmk#)w0x^?kD@7C}% z)mFKY2>#{Bx#olp^>Sx;I-uV{#=GMc{Deok(-HmC)G5V67v*RN4!Yjiu?)I#u`3F9 zw5`J)^vKhhY{~`t*Yg|R*Q%T%BaKhJy2yZ&tP6An`U@|j61~{g$o4fUkR`j=Ap5aQ zbb)wKc`wm%WKL7dU_*Syf2lkFb(f>BsYT#@m`hd;$PfC)+@-;Y1YYNwZiKO|;9(pE z%xlOL`cM_rdeZ7&jtBdS| zIQv1YP5&b3*zXuGWLp=X>+3RM-qr=*O>!>7mc9-9aUs7;4q`Fqm-SYh7M^1VHKjs9 z8;j_Y@$IpL=i>ry!I*1a_NdhqKpSaRr{jGKp#}oL4qbXC_3ljc!t70dLu%xw16OET zn}GKhhf@i62MNpTV%ON)`b^fFgS4l*8(Qx{IF&u`(o+pxb0+=3cWdxVe>N^^ymERW zYx~q?%g2%c; zKUs|nqz=CsG;L<30V}=awHL2L=5#StgK`>(fd?uV8tAL(SKlGW8f0jZ1u%*(;%Z7C z-C^Byt1;D3p|YMKC)l!{`WoanMaDJI6e2_I3d~UOH)CBZ7NpI}XT5tU;cu5dPc&$# zDU5vPR&4bNcEQ>vGWfKmUP%kKTm`!8o&I67bg{k)8B63=Pj%>mZ=@+0(->LFkxNg? z^i-CLGxbysb9ip=#^9m_uOfIhU+GCj>?dOrci0WaqFid=58K51ihwyOFgLsHi+O;n1LDA9nWFs;jPPf zN7#$J-ZKZ6%o{uAEyj|$K!eB@ywjcaOXkK5Sq;#A#n~P2)l2(z6Nd)I8{Qo|$X~J@ zHv;H|A}weL&}P?BZs1L##uDeYlj< z4xgjCl;*IO?0h9Fc#*Hps5Y zyhm-;emq56V3!pyOf~HsJW{=@82bcUnk@7VAhq*@grmJyoQXbw4dY#iF0Ey}y8yeG zbrtf@Gc`CEyPTlAy1`_g?8NRv>dBEkK97AVC&)io!mdt5?=JEbQ=U^S? zJ_pF&ILCvZ(j43fjt`mhbVvLWS6&e_ix!RnC!P zkM=OnYY?7!)ISbn3ij4iaXO!PbFdOvpqT2$4={w6!gsJ7{hYxYO*J{8PwK~{A-2+M z@b_Y==U`*qTtYj1Fukj%vBAKBh0cJP)OSenRV?OQ-=!Wf%mfS&;}f2M2adt_;Uobc zqJy;cO36G976^6ommi6yd$m;Wz{tAM%c&=lE5?py*bsajx07OSk3j;P_to%9@4e8| z3Krv+@VgnlYCt`jmPt>JAJgv%Sbqj43-F~BHy-25T3UY+;$!ko`ZQjCjX&X1=ZVX| z_?b?`cYJ>We`*bs=;kX2yiWbg#6gDfmvl1`&*(iF-olXyev${4(@k`Ge@K`t@tMGW z8pP7eyYah|2!9hhuBTdbzR7a15PZ`6rfN;c*JjKQ*obs91|5?%^G=KHJmc>TI00L* zS@m+U0#{JF^-U>HZ%KW)C;PKIvSuzq}*X z-5Z~{w({{}f)9V=kH|N^@kiuueA0KOm|}`4ru=hNK5HI3Ja|Jc?>&?o_nyh+gJ*L8 z(O2c#vp3|4o_=`uD{}u!KO#@x`5FHH3Ay*)*X8M#eq8Rq^J7fXUy(;|d|hrn|6zIj z>^-@0_Z_+O@VVS#V!pifrrde(Q10J+F4yi{lZ%^AWpn2Zxj1`W4tH-9mJv+IEWEuY~aZw?Y4_`JL>NwptOH6(>Dww#YSoa45@ z>CDAdrv*UUX^H_rpys01g%!OB*k9sQMgc$vkfJ~m(4@PD9RR8ifb|q~>CxXvFR#_S z?T$pY3;5KX?>>NRCRZ#=!mFtq&0?`_OZ>Sf3mZps8A+@unY=(2jw^a0@PhAWnj0K2 z=mp;R{8hlRRm|mBcdJ;jI6h!)7Ev!iu9%872RM3`cr(4Y*^znRisu8C-B7OZx2>s? z?5pBvpuk_qe0l@`oC30~vF&pWDCplyy<0*7CAL+_asg00);a*HfLVuk&FIIB zcgK3^nD5HcaU`5gaWX=FLn(t7z;v$pJAIkQjs#a6NoIirCxL{oIPgyw`7LqbmE}9) zo&Y*E_b+YmXLC7f=!<_M=`>m@kY1!J*T0>S~Vx_c;}i4z`+2dJJ$u8e7u0NL4mIi|Nt^Cb>Zf>TvWibJ94 zUhLB1vlVi{m}ZI0b%z~5J=6TR*$QW(k&5Rt9AZtO6T*`^adBK+oS{kr0JmOB8)rD{ z^~t#465?1}x_h_4vBD{ebIp5-({1lW?{!EM05MKO9@T*Rjm$EDbBQy>znzC%1F$uP zitfmdklo5!jSIYC!&s(+IMqxFT|5n_*VkRi$&33Ga4K|>*y?m=R3~}|K!y{ii`EH_ zet{FCi}_2vGX#fBcYAs2(5W-P-$jYjsk>m3cUX@Df=YFA|J8_^-RqaYVg(+^J6O0$X~)ZIyki&Si%|B zqvg@EmbtI#Bh;C}8N=D}aeQ@Q*V2naM<=|MInGz60X_@IhdvfHddWCzdMi!irMvW; zERz=9QwPw(ws=7x^~p;7wnoM&o+mS$KHdGNyH6L4=Nt!mVX3oi%RJLO=Nd@k-zY(b z`|bs)W1jI>da41vjWpO2P4(546?O)_r;P<;t@-eK#w3LAL)D4HZ#8(S zJ1pnvp0Pe<{$sq0P+Dggg9f^QSmKOl%!Rt3uYFD#yO#Ex=zLjjW#0C3TyMr*#Y@_q zR0qD-i)43_x7d#SfG%t$=$S{6+pOJ4ygHSEF&WV7wAx9m3xU`Ruel~M&z9?rtWyoD zY(?*9Xv>3iweBX@)EpY%&`Vu)v22jAKSS@Yp@)qGnp&jYO3b@z_Zzq&=>p|m!unil#;I7L?}Y{#c9PNGO_#~lZ6!O})c2jN`n|-%TCB}VGEK3xJ(py& zlV-mj7lm8u-*)h7b1KbF(<@!drmv;vH!bb3*P2QQo3#RK@Le}tj=PC<;cvISHUQU8<)@D(NG| zH?+OYWk6?CzBNFgr)hMdIUKMHJf{owA!8KrSq4rjHl>6yW2d>>u}L*Lo9H4ZZHVhs zO6-f?Z=|PP5_q$0_`8dwj2O!nd%r?=bgtSqlE7O%<>Hm_5&NlQtBcj+W#7nF(&!F( z4H)SHA^jUN@%xP5?Ib~VD*7@RY8mtti>A&&hc)#{!{>URgWmn4bF7t-AG@dZy9!ux@OE}fu=1>HLpH%12#xgpl#v3-a%G$ z8X$_KXO7T|z6(ANyS><&UWvJ?K!5de-MnQSnZw<9&m7Q;rmk~qY~Z|M46&=Km^1oQV$(wOv_iJraiLc?WH27^VMbqdH+q0fO|XF#pSg@f zoMT^Y>>qfmhu>-gD%#yB_9+}`_yBt zY?VhF`m^5o=p42N9n||2T6oqr$XDCQW)q-`YAcdaA7gZWMcbl{%GVBCv6B9P%r)rp z;X;Bd%=!pnT&2`w({^7QC=>4!h9fOdY>YTqTsrX%qeJ`+M z&6<8~k&QuhMgzxu4_})Q8;32?lSakX7gz1C2ASdI5;;=c(Ezf?Tv8!VH8xq(!xcUJ zVNP(0GYv>I)CVrLbiODC|ae{#mtd_|gEtmGQJqq8l@i!94o^v-hXjk|arXCa4*1 z_68kgo@WuA^^G>q=H_#_hkHbh2qb_8YALyfS^^f5KY9~52YaFZu2@7?q?czls!!uY z7Rr9;c~4bEMVN_+i0@@)A_D)niUL;pE&K{PnYiEki0BC!faT#~Oo`Zh((IWc{Ot1PA05q1JDs<>7uts);x0ajXqNgTN181WI) zZ}6G8T@Lqfx!)Mw3|>?EpnTce8SPa+RTMi|(FQQcDh=UJ@DN35@XP>N2XITz16wI7 zID`Aa)11_|hozz$B3sSCoyb(!Fq^^M=G-3}m?$a}4yn3vaTqf;$j12?`FytW%()D0 z5%T*0zpto!A50ELiQtv~XK*br+>B?aF!^$xf`{k>G7M84W`PTOU^vDrm_Hm-$Ufvb zm)u8KOZ5$Xr?zvYO-=CgJlBIOhxAdYHJ3_>3s1-<33!rz2>&Ze7cB3(;9%_3Q8cai zDbI@F44ykjZ^ShjyLgE{gBj;=C-{gWRbpS8t=cTX4-Gj!HyF87a*Wi*hc01pn>~Orc^7^T*uU^{e=HB+VS9WuHVW;B@>uyeV zbMw}oK6`G@o;RWsC^;h=t>+kK!w|{G2{`gn+;k&=FuYdht?9KPTx6gn28+-Tecf5YE=O2Eux3BsC z#kbb-n`h5I*o${x+2PGg+nv6&$Hxyg+&;764nqEPZ`Y6BTYGhHr!^Dz@v*g!pILcx zu=Vw|t+!7sxW2LCTBipg6UQq62f%*#c&eyw@673S+EO9SfW)o~i6oqmvn%2mV zRjuEk13I;vsJ)ObNQ+YY3_2YMfzPTn->;F6A{_cLT47pjEQYM8ra{Ctr5562+Lh6- zUiq2_YjlDNl2EJ;JO}cGekPFfV4+;tmk?4&KfkLWD@#5Pqs(UNhn}lvq5pXa;i$DR z3W>~+HEqmebR&Xv1c3M$k_2%qBtt$^I*8D%ZO*uQ+%E~VSdWYtL!}8?ri!3YQQzDg z`h5vO^b>3+)k$>-n>G#5Go6GCk%i~?wm^SU>@$ZbtG^8HOY#ZzJw7(z6aSkDEl~M{@F3}CuLU7Tg9KY9czf`C3unR@m9= zXcGF4ek9?}qUF(=K0@Cbd?-3FZ=Z% z(5V&~s~%#k@3+XVv$FcQP@C5Dr$HuKh=VvQ3PFW&vk2SPscD@y=Dik1Go1t-Hwe&G z2!EDsOle)pa%Y}4J9B(Ot4ITWhu=sb<9$gVX#c9y=FS#h!rWLMKA!Tzbf$O^~+jb|*dVDYUISkLN$?vRNpRC&)@j;KRR+PkgVBC9ayE_{i0l^i<X21NKeb5jw@2n@=E-3>Mn~kujXAtez;Su1ljrD3hpwW(+7NV0 z##5U!T$9m;nz>@2&l7ZC^LI5Aw#M!i<&$ZX8UHj!E8*kk`xGCcMPM!9au2YWugwa^ zFsZNb?;D$;^D#1S6t%%~ea#gqHmHqrFlg(czvJcx^T41n2A@=wm5f~(Ytem&4VKnu z@sT-X$@eq-lcJ0=e3}josL-<4fInjHg*=tQrY-h%4i--E&qcat>~cF#uEq@!rFu*< z9nz_+#g8c8e~1iXwSzWgy%r}A_zvb!`XBMX()q2B)g^OmHZEo}_vkwOLz*wJ!@?H$ zzzO$sBihp|%^kiA9dUSGsX7JtfeKwok*f;sJ36JVlhBN5Tx*kn_N%rJxM9LP*=z>< zy4tB|)M1Q_+^opk5qD`$wZx6JwMrV{ZuG+V71m>GH_dzGC z9qky6CpHA2W`k>9J4t>J!C|aq??(tiX#+oucGHkT5BOONPs%B?hq*@oWVL(^#v6&)` zu$41-PK;hXK%W$$rxa8TI@Jb>4B|e_1;rTc!2jAX-7;TueaqY%gV}24AJu=TCd{F5 zBTw^M0&bqOS|=Lv`_JKDmmX*TEohD@8tI zOH=P-?FHGJc&qb}{?I;0_!T^OxmxjeKJum1TUi9(i+G;yH3k3rzB4`}72gAIDB@HR z{1e*cEof&6Z-rMk#t3Y~`!&*2+f~;LY)UZ&Ug=VeA$Cu9|eI z_+OUVOc+-iT1q(up3K2(va1-JKSt+hLkz#Fxj;qxJA7ZZ-!s?lu|4LO^^MJMu5Guy z;&p4A9rN+}%C4A~kB?s3_4U1N?_b&R$t%0Md1|-MUfS`+OS^si!R}stXHVX}v!}1V zw?|+7X!l?K&fa|e*LM5ln z&tHGG&4+R0;h!za|2O-u|L|v6r2n72`S9uW>GkRL>GkRLZ|3!{&127>J-3&)uk8Nu z_xAY7_x9r1_x9$^4|e^<*Y@bc*Y^3_zp}Sq|BZe1{qODD-~PRQ`MbZdufO`w_VrJH zYhQi+TYLQ#*M0L>_Wt$n?DX~5_U09zJ^$98J^!s8UVX49Oww169^015|8V!xdM51s z)pI-EKC;stuiK|~bA4lXho{!xKC$lf*fyIRTkCYu9&p}Y12CRi1UYSXfELJl-<|;K z01d!u*NK2C)k1GAL?(q?1ufvD2rULgCmtlH1-Jo(b-H_z19AW^tsmNIuAKdar9OmY zJh_qCnR9MSK$N$-0OURdY-*ud-+8uFTBfrQ!0KCc0jOFo>{59^zIiF1?7A*jg?gN|aG|wcmg}dPMshuym$HcYijQd^cJ_3)vIlr3NnF@qW zG63f}e@og6SY4c(3RtU9v$OJSdYPH8MgI$h&T4~W!gD^e3kZeFy;d&$SWdX_+$K{9 z4}jS{yR@kmK#`eyMtf+BQafEPbMtv-wDkEcvb*H@fYb+WU@3i!XEW{tn08`7>Vp1r z-$?0ekbxpe+{p4JBxMl-!XE-`S7TWAMJm9o&7m`!GY-mctF%ACEI@Y4aZ&t|aZ08U zfLSNmkz0WrAh${*v=SKi7mPP;X54FJnav0LRS9{n9c#FM91XUD5Gn8aMNybvtsy9Y zV#rMj>CnbcEK;kKM~s~c`ObA>vje#6)F}O(K$KGmOrk}~pc_wG%^T!0rg-4qBKrVs z7eM~7DJ?_)R8&(Z`F#=1d~K0VZ$j87A$m}v`|S>ptrJxcI+5^_{`nC1+<^dbf5=UZ zEE0D==9W(frPrbD6Ud{p8&5+mf(r{FsgZIdr^r8p%;>Z#|E_jhBohl8EzL}m;rav|$(RoX+ys2_*pJ(rNcc!I6+ zeyn}K{nI-6I5v^;+1578GHW1u6A@3^5~qRXtxn5Bc5?a*u};DWqQd8pHjR;LYs7_4 z%R_W^f=U}Uxi_9b*EJ#fly4rg4KjpTBoqJ)f-Y+RxF>7^FZQ(JP+B8a#SqK03Iv~kvI)21Fb4n&gY z5%==YS>&LNhYOv0OE-)&1X+vQeAY4cq3T4?{?g}~dBXE`vT!@5CQ|CE1fr-S;*O$T zRuSZWZ4Z%?uUadR=*gnN-gF8OAA}E68Hw`i3XOQ$^1t$Jl8W1U8=`4DWkLVk&ZU(79^b>m4~`E1!x66e?ldRr<&jkf#f zBKC8s#S(Ns@>>hBLr2$D=oUJr)0>%l#5T6*8g`?U4Lm2+hKSQy;USj=(P6}I|+3bc6@(l!CLb_GFO4u=wQ40 zgwMP-uV*~!8>_op+wBUgc3YcmudOU@ZQb45K${*mkH-iPrCsv){iz2#(DqHUwdioL zzPh)%zp|A7tM$fq`-9ada7O=p%m+UV*Ou#^Dj=KQ*oJ!*yVkn))|zf-O#_ahZ7rWw zO6N3`R^K6;O-Y}wtiGb}I*GYQW_xUKrv*mUkH9aUavSjf>qBj)ePPW$8q+y#(Sd<6 zs_>h`y0gP3wrz5Q|Ks{fX@|Bp;HTD`6qzt?_<~lO(ltJ-Ev@gcqaGiJ{Cz(68^%rf z^t%Ggg#GY*XR8ei=0?Uq1#EZdS%6=vT5wd8(r^01JX141`I_gB8*%-Z8@|ydHaZ>S zs}>q}d~ZSNsr;8ui0jvguZ_EK{d&&#oq3LhW!4dbRc?TGJY9Plk_`+_zo6;xFm z(5=?;>I#2!MVqyli+^EGZIMgL*sJEm8vB{y*E`j#!G2Q4uB89k1WD0LMN0U{p}!o) zjkuV3v_gK`TuQ))Gx}538*Ju){SEjtZB}6GHFg*?x6-x=`n1XR);jBPLo3I&YiuM( zr`>jrY|!asV4PHF9KES(TQf%&F1{fw+NktnG5xCPcfQ8Q4){KNae)mN@~;Um7ki5~_})FfMd=sm zS9G+Vc}^QmKDZ+ez(Y#0Lz`3Zit4LOuvJAo^>chZww^ODXx#IjIUc#>HFG%fEb&`$ z3HGdMLx&u=&S#!jFuyzCXq~{%<14q= z`X2k)HTXtt=pnOo)59MIY?|NgI}5qK-}xW=yV=;VX|2VcGo?*~PwdeJovIGt9Yd;o z@i*3Qkms%ylnDO!F zTpM5`4s#betJJ2kHjK{T9~%dq1Q(+Z8UC>Czz?<3i3*b@=x%IhMP^g2?<#}gCWS3x&MF4iw^U$F)9VVIzUw{uPbUA|KFz;5V>`YAVQ<7Vd>j@nfOvZUGhz2CxVCg1O%p zFVF@8zflb@;hqP@+?Ek-hA-$4*wR^mu~eTT#%{r1@IzNMKUTCI%yjO0;Hb>JbABJq z%n`;=T2T7u$M8McwTQq2Ih+$*qSTX9u;s#o4~8y0PmvS&HTn?poNzHm4zvyIueMJz z_+P3G4lwG3?`cPz%)s^FVjYm9jSFly_7b>UXpzzob8XCZ+3b8gcosUB=FPz8E_@hn zHsfy%?^B^|FIa&cBY3oG1JWPxWp!X8>C& zrLLk{;{tnQ-YN$49{p4y`m8)!jSc3fE9*~pcB-%KxZ96*dAz!^!+vAOo5!{}-dcD4 z*iP4XcD#RN>nAVm?!{|+_43zt|NNQVy!hVUzj<%ZKmXhwzx&o+eg2cZ{r-D<_2D;s z_G^3m{u{fxe`mMPUfJ>07j}DpZTF9_?R31h+pBvkj(5Mfw(|4WpK0^qAMGC|zqkMT z-+t*kURu2Wr-+C@T=$0s{r~z8fBbx6|L~9hqu2j~{Ug`?^GJ(-e%;SE3jW!(fBgQJ zo}*2Z-~aJ5MQ{AS|M~m>{eS;>|Nr6k^ZLW{ez6UoUY}l{UY}l{UjIM8{{5g~G_rJ3*e*5q3^WXd@`}!~c%AWo1 z-`Q8+{++%2{_pM8w|`|XzxZq0zWdIefBB8QeEyR?ef70ny?tRW+jjlby6vsCr)z8Xk8F2*0`R}J0NvMsL_kTu8$+&LEs6kIVu)KEwK73KhO|0iA%~iC0_Z2Nnf@%;gNg z$-S~mb36d)0+Jk`0YE>7>4x#Sxr-G5dtn6tH=i8dZ)cBYLSfbAr@vK{TzZqKhoSj^IXQ2@y;?^alP`c2R_6c(mSKi zDsq`Y77FQzH`p?O7()1hXpbH#MFM0Hf-!|uT|o9q$nUJ_$I#|Jg1|sPmH)WZLdsGb z34rN>{xw=~P+EauOc${LgjWy*6?zRIpE?oNK){qzLa7f_XwO?0=$jVA2cD&cA9M!t z8mR6D?GJ+lxgiU5Ixm!qStsc`bNr1(PD1}6dbCF=0HPEwo-*kzkTKP76`Zx(NrWs z7t^*1l9w;WNB}QN(VdRxF(z?m-n1JdD6(2)TZ>DORP;4wtU_%#m0JAjt@4ia6GD#+ zGIXNg?}bhl>hv=@nV~yM38hq6BCWFjb8I{*b!r;fpl_aJ5cHM@E@L;~Kl}02WH?7x z(E*)?O&WX-{=(OS731w9zhu@!&KYy=qiB(2&a)VUn&*Z(;mG*r_$h5BNM<><6VRU} ze^uKgU15vZZshSfb3hns;g4rxht3AQ9d(-TwAh-gO}XIX6kp5zmz4-Vc3h$V!QRdx zvk})!86$0SXmh5ml`^iej<#hQtFRbTgS6?^BH5%)Y0^fe(8|`>b*)pz+JwN?(dP=i zsXfL6-K)K8YeJ=qYHhM+?3J?}UlH=#NsE8d332ADtWd6U+S2XD#jAb9oTezF>V*6u z+t{KaB$@{KW_!!a&gR-&=xb|QMX_wKDcZ5!(9R8Vys?IUwdKj&_8QwSd4^8Ct8nbe zid}8tPN`N>%eJ(y;X36c4>F4sP0{RV(!=vb9P&+`)k__*WiJ*ZQ6qkhn@9cfo_xAhTqlQ$^PP` zbWpt=xW3z*Y~b@|i#!$m&?dG~t%Ua8(&0p#@VzH(+_Y9~Pgb9H*6cg*$TM5_`~`>j zJkQ_kZC_~d`O3oX*1}_F$ASAI6aR#*9=3LV>}}XK$f~lY!2lT$J7|#KHTjOKaiU>mQdZqMx^zkHnr42$p-%EG4 z$d~b`JNpZ8Pn|QC8FPI``|txgUEd^E=4d0WIhx<&*OZnA{YZw7i$G+jE0FZrA-MlaiSiaqX3dG4DYe}N4bLp?6W zdi51^$=WI%5YR?Qu%-Qs5q2oQUm?qscKTgwJM5^|;<@h0m}=voPVmhoK9ujZA);s? zMGDsVupC)51-hRX<|t(v^LE&3(G(rSKj(brpkpdzJwe7j&(FaIPK%AvHXXc}Fb=Az zq3AtrBxFhzszW&b-d45J9`3;_Tb_YT17x6Rj7-rI_>p|To_p*08-zW+75}VMNz4(t zU&(zH0ksxR#lZcH4WEE4YUaOMX|A-116JRlR}sE`&Db@Je+=f%nSZpgvu{#s zm^Za}?`h0c7Y?7k#|Q12!>IqB(y&IM4T`R4_T$Fa(5gsuiXW7}ORPN6?qkU_w`1f{ z+V8Eo!tTmD%a2#KF0XB^)JBSe;+h(Np(4`>exStOE2WgfPbyv7wrhCS+R8njtq=IE zD|GGN&au^I^r`4HW0y6|<+QiVdOO2zm-xN0CJu8zj_zq=tLVTE@{QWOKyT~$evI-+ z!)u!|ZkM_rbB-cr0_I%h#jhFnE<5g`f9?B>2yF6xI z!+)(9Cq)>0rN{LjF`IC22yRe1$}ycHn4$(lM4J2Qzo#O_+T@TAf-@AzrDU#E8le?q zA7XE3JloH}Y1~sA4Gzy+y6^*WGBCWNH*`Qmn+j2=g?8)$ESOecEuS_ioo)#y0F$X- zDV*bSp=e+DBKHm8CixOV3>zsSr2S71tSRWyIyShWew&A zFVmJYF!}_&UM)SF&1A#NF`{C+M8@^RR>FsqxfSrK1voqap9bJdSJ7(B_j7k?Dg0)E zKa70G5_n$9%ZEcwq7`^o3;2$mgY_ImfzuXYybEk=jBHgu(ESPgBQ95Px2474?uk-h z`mHUr(cvqloP#ZcITu>!R~lQ|jl5JW+E*<;_)_=~4wzhgyq|l4eMhzcdn%gT)1enI zY5*P!=inuDMgYt}Gr#GAC$vem(R}(pN#TM#W6oInJl}B`Loj|Y$A5r>-6F(y!j+MK z$@mQ&Tm-vb;=hwM_9oH`Qr}h`uR(}5apR)Pz-~ao6 z|5soC(t`iTmo_FoZWfI1|9I^m7U=(J!Tulr;SUS)|AW{6{H5Rj!$1CVTgKo1ANTyn zf6)K`!gGH9|G)Izc+Y>S{Xg4?_^0cC-iAM1!|Rvi`swxQ_38EL^?&!*AAQ{atk=Ib zk3D($+O{v=F#$idNoc4>wj;b|L|LT@#EjyhwuIq zpZ`bu@^^o2-~IS&d-Kyz_VmlY<@zt}{j0y^?-%y&)mL`+_MJU_^VY7Pys_IipWD;B zm-h7WS9Wv%!X7>Q(uVt&c7OHC_SaAC>hWVH@~5_Y^2&NXYu8U~y#r8OA0Ub+D{ddz zcE7fKeY9bHZ_QpOEqCKW#k#zOzzmRBfMz5T3pwi!kV>Tw=v6LW&Om5xqdYvCJ!JINuPs--Zu#l;k`HRt~n zusN}F*RcuT`v9(mlbAPOj5Qsc>91_^hqO$Sho1RSV2&ai_}_5?K;YcwzBlI5TwP=~ zQ@E=eoBJ8hacWzsSTmq=qDX_O(i;I914T;!+NKMeen#8ps>?w8y&2EGu*n&K55PVF z5G#e$)SZtfSagDCMVkZq=(;*_a`6#Z>i&R26>=76j3xr3bMAjJE=ng0$Id*}!pOO1 zid?uZ(8+3mOVktt_ALJVIIHNVrb%i#yx{^L&OiyEm|svEFd~r zS*Yi6Z=H^D0N}AAGgh>B?wSjkxuhSL)$tfXII*|vkjsfmVLQp0;&B^x#1hJTNJ>(h!qG*H?GL!10V~JitHdGk9Qn~|V z<4pkm5QQA_GlrZ)Y|{V|9@P+$2K@^xhiHc3%94wUwpR8KIrxmLpO=t&NP|OLmCxDN z;sSb@`-}->7#(uc2M{Knp+zAr9_6*Ukgix8CowXBbj)h{K%c72GZmQ&y^sA_LgIWC z)GGsT>P3SA6PYYP*^u?{! zc1W{wEJG^&#d|2Y!9x1ztj(XH*R{s4wmGD>WbBt=X6L!03f2%;`Y#># zYb$7Lrp*_wn?Y2|i2E}Z3H>P^K(4c7Ov$0*+gYqgfo!ackO%mB##)6{l@dT37)otb zuGZ+`Zd|Ni`Ve(pujrq+K^EEw#cyN7`5fIqZ?ut6xb?WW66KfXH(TTpqF=e4E9W`a zC>58|&nQxE)rDixXIBd=%q3C6^*Q>=^Zc&Ccb>*NB+~nw@liC3A{&$&UyCV9X`mD> zTBw_pt(`Ua87T(FZwRT)Pye$U+wxT7szagbx^s_5Z z)*P>`IBqPUjn(>K8!h0T_?+*PLt_>9j5qko-DB%Fx?URxS5_X;KSc@X0K}28*>twv zwzj#xwsu!odv~yQ+gL|igQ2tP1{ocYHDgh7zs)YS&6fZ1{p(F_d)l@iXg7G}&=0il zWL>tmrf+PEo^CSz7P~^%@=9rAxQ6lW8HbWFY*PLztq}8zHhfC@;r1S5s?D!!3%IUL zb`~P%COa^XpnEkoUm#Cj4P(%?D#qQ9`qR*#7EGW`ucB2w1nh@-qc5;QWLoZ9o1+WT z6BRSQq&-oEf9SMmM7ywobl8py&^lq=kDF-PU>IzMZP#m_xyA>t8Dn&}LN6N?7{-p% z^~pB;Uzf;P`l3^;Ji|lR@;1T$oyA^R3oEkxy4WM`~x~Y@E!9(SzeC|`WHR+ zN55j`5T!-(x9D*V=D_cC%<-A#0B!PMS1Yhrn_VIEHDl1)tVwJb^Xk+74Q*vk*)Xmy zwy4b?rJ_<1b|1gl;*WBjG>nVZMJ2x>zu1{ezcNLQ;e)(l z&v>E}^kstl8@CyKSB{Rjl{OggfsDTcuJ9RCwJ`yo=rs9?YgYI_)uhVtg%3K-zYB1T z<`wiA+30|S$8THuFs5EoWCpgch3*1dnPW35T%6x#+1Ox0B z=nVcwi_Hh*dZ4d0Sg%!@vQ&OW^-)sW)22 zF}a0j>}zZH*vX-^Vn;jW8}MhXbYja(Q5D>$RvJ1!uQy;s?7LuIXvW$zJFAB)Fv5;` z3VH2mM{$GQW1p!`XUorTYyble%$bTBQ33RjF;o4nZF#U-azRctTxV77&=uwxY)Iph zqn9c;tqs5_K0g~WQ*9?VoiZoyv48XoeRJqTi*2kbuqN~9+QUbH7hHHzf}hYl9xyIB zvX!oF0`rH8d zPQX~HU4jLoC3B&oFMRN^>Vm<|&gRlEvO#L68#UsI7&epGk4DtFtiSW zjQ5Yt2d^cO>h}rL(N^RUX;Yuy&9e>IT^j)01Fo~6zn)Sg!Dk*Wu_w6MTv0=ejf!I{ zg_7?_mV$YrI2;cRxfiWXd5$wtgsX20Z-Ad6$3mPXg4;OoJnrj)!FfLia|iV2QVaiz zHr4?maBr#FaLb8>+#{Ug10DF5`sBM{;Q8n;CUECjI2(DDr^6oU*%$?(G*2Plx%jVH z7~+2>$QUjda<3391ovIQb5`KPS*m(x@WmOtQT#hx+PNa2q$l{J1YfsGz&!k3oATOp z*G74WPx>r7jvG)-eQnwHh@U`L!E6n@sb&sows*|`%$*0-b9!u>yKC#No-&w z-oN^Z&%d;*Hy`Zg*=q})zp(4u54O8g&4}05U29Y0#tx_bFRrcp{PjO=^Wm31|EJfV zF3$gH#`wMOO^!oJr^!oJrU-=w?d`9BZy$d1d;9ede`R0l{~!K0`^}I4!JdEjdwcdZll7Os zw$DF&Z_nR_bS%w~Y*n+;%Hd7gKJ_1i1+yL;PhPJm@Vd3EFk>DukgJph#b z9fYa?Oz$m=0f_*3zp2azsN|4DrC`cx$YK&(tVKng?g&%B6C?)^w^D9f7h;(@fY}R6 zRyv6i0k#0Z0pM=}*j757xfZ+~3wR#`xKs$*^8vgQz}~91sjCeG$J|SR+_@I=9XnqD zK;wli&j9ZZfYiIN#YJe7*#ZEW+UyeG6;15HT%b^!1+>AN0brRAL;hdP0ElNcpI-u! zSGHQ5S;RBWW7p!PK%{5q;l!rAk0zc)E5Ib5O#qVqOvR-Gn{r(=4@Mw3pM?P23%=)? z<(%iyKAt;IGVTRXpSX4gVbB6)cp2HH78YH{LQi4G0l@jvd__+z!!a^sse5TN127*r ze14(28MI4z>;atqO7$8NTg;dI9+`x5^Tv%F*Jc@g3|6+7XhUH_pW{)6VLrF?5}5+x zS5ttyHe>?&11V7cVLw?~GLFp>;$H(~0sm2MZV=kTNT66746!Nnf5P}E$E!~1sBpG& zy62D{6`T%>#7ZsLkEiQwkrjQJsnu4?nbXW87WN`s8 zZXquvK)r(ii!kLGIs-vlK$>)_eg>)5>EyXcU7SKdPo^T&i_Yi1TXd+0By|?m4Zxh= zN4+i3;|}uq83c2(W&G;SmV7p*V(JR3l(QFtnL-c)+F3&AmJpq><^Uv5^-Oe{e0sLF zN{hDn(y|qVF~AlW>nQj5Ty+YZvDSl#hNr^mk@C}Kkc`~CGllynfd3dmsRakfpASKT z?98-i;zZ*@zZ35vJ&co1NkPy82$~k|YsM>f0|>?yx{+J8Os#;3D3Yj_4bskpeyiB; z0-Xzxn~G*<{uTn1^BM0|*8?IOM>BKVbDJnSg0b`+WM86}+01H4ooxMAihw}J)XtpW zYx5}JSz(nz=&;XPr%5aRPb`KkyQyqbi!Bg3zRw_M%ZC|q>_>Z0f#eGEIzcaVqFW2@ zNdPITR^!G>f}9pHWD>i&gd~gLw#Z%SE_6aYa|&b!N#&Ue`=3HIFDl4&rp=B9G6<1Z z`X6Mma4YViC=B!#IRx}Ya#U(BC+2h79H4)b#4{J7ISI-!ot0bW7Jqh$E~0C+#T}z! zR*+rBDZ)S2k*Us2$M=f(ndAqHQ}i&6EuBLy{ls#&uqAer`fL0L#5P+XM=d@ywyYqM zQGni5<7vlM#T>D#IOn&>D5&r|D{KZ5p2UrP)-BNe2!DeP(8s!D%xRa>4mIeWn;h*T z<$hcrDnD^c`$V#Jig<)ak#D@q?5q z65;ZQZgPDVjf*eZs8foQR_T@)2Ni$6^dkOt*ta&MT1&L))A5&a^`kBA)8+&A0lA&5 zb*l1Xq*YPTUqy*1I*C3h2e}sTln!m#ZED_=s8DamHQJE-m>NmB{++e_%$EBc#!cC=2y~xWU*IP*{6w$Q z-TWS#t=$gh@3)ri9$DS+oAo2piSnYS-Q5$*_bu&c!4D@ZHaqK(k%~Y&9eUB6Y#8os zlV00!xUuZ&WX%B_aotU5M+>`c1h!$m zNRhd8OxLvhzd@!=uf z+LnxSj=mO~p6e79dTY6&S$JicHf%a;vMbxxv?Vw&PqmCOI;st4aF+@=4?I7w_h2k+ z0Kd4#UzW%}Ut`Bz4_3pcYQqGZPOyid*>jIu8?tiTXjc^8X$?Lod~~@thxTR6GjR%j zqfg8FWNoGh9_HP)!oQ!!v|@gb4)Z)kR&*`4j=xe0m?`a1apcK>?0L5EVOrmRJRy(0 zWb{Y#t4>Ng%&`@7Zvplyn2XP~s2&~AZEOwQRisCyjbiVJ-C!r^Q?Bu7H?~^K4zwYM zUSZpj7M8bL^XrYJ4)&HD#`+?G$GBianwO@uyU6h$^jRmt=i0E)JfTfIY*h7bqCtzW zJLHM~(;=CXxl|hfj8}%9sRGrjAD*!<{L2AhUYifnF_`0 zl=PZsm$Q>?X-m70tW|oZ27i)skBv9xhR?RO?fP3QTKXb+obZ=x#%^;QH{_~@`ye+J z^w!4aVt;G<4SI0s$4$t1zp)Pa`n!8u;qO%NzT)|@Hji{TYRepooVL}q^^8Y?FKf`7 zWG!xUYw6~Ww%?DNsM4iMb_y10RW|~=9>9U2QrLktYUw)j!>(PMhwr>ZcS_nAG3PYs zoHjgFEIw6q6Mofa-i)w|V1a+uqIuug9G{UfZ#3YLin*-d^F;ocwq=7N0#*DQd{-O~6afu3 z@x}G<6DzQP1U|}XqYe)_X$I~=Z_y*u+83Gw-V!b=eVzjjOusMdclNaCHBffw7;*DK# zubbPq)<1r2PmeFGy?bWW?k)ZhTRJ}d#kG~6zy3U%597l6&(bdaON;S8|NiIi|F2yC zr_cQV_WSYmCmR6&+I7G5tUtd0m!9*-_x}_D@e98lU!OK1KD|D@KE3{*@%nRbK0JE* z(r#YAwX0X}?eP3-+q`&dkKXeB{yTg0<+n`8-`UL<-`o4ozqR*Y{;hrSs*Z;wuzyBM1{MCDV_3B4^`R>>Dj!JsFE~0Yr6jd0N=Hmzlfp#(D+Xj8N(!$K^KyTi(RxOF*d76)9R` z5{(-Iif%Yx`u2d|oW%gV&muctO~=Az7fw3n;PlS9zweI={xe>SMQICXVwaE&e+t2z z@T`?@u4)R4`K?D^4dM^gfJ!_qY+kP(MN53@mt!a6h%7WtP_i6;*E>H z1;i{9`I`ga6{&#igKBLJ06!Pt&(iT^vrfyaNZ+K?DQcx(nnO$%+`q5{Qn=CrLK;~N zQCTHBdjL7SRNqvHQ^n;V1r8+3hvXO95TPwflT#|v0vRf8NX9eg*&LFm)9C@@3?W@% zUwLJhb!0PSxrCTZAc{-cUZswOd^f><+fs`@5J~K%R!F>yjOeQuO(2B4cQ%$kKvydf zz@D*$j3WbW?o5!`dF^1+IYg*2MT|tu;WbWAL=E)N4E6y9FpT|;Sf?? zp?`jfJi-i;msx_Xm$NO;Lk1p1llPYpBrUXf5J#mEnn6+*8RLNdHTakS|Km@zklxxN zg*YR7<@8k~#{Z*Lc(K9JyxLO5%r*KW#ce z&`Wfj{!Dp>QtxPUDx@tjBwh6$BAs4r>QROh^eshJBGhhHGRBO}B{~SXpJ~CLac^kf zG=r?S7v>=|5nts8j?*>mM}HvGIRyMtDF!4fZR{k2McU+38i*zTOHSzNq{Hv&wB%oO z_;YLu*(d@hR~mM<+r%Y*UMATAV1YMUOI`@c<(2<42j zMiB-FYj_n(S<)S>s~_30%`IPJyW7Hs>}V--c!nOR@NiVD%}wrT!^zhBYYX>l`fzP^ z-&@qtx9(~zQr)W++rwBR;6f*o z+Z+7ctsT3^*7sMosrHtED~6umANYTLZzXslRogc=wo@VLBYkMG$Dz0V^~nY>N^$CJ zf9jD>Vf7aOy5C#6%k9`GP0ZRhv{waTx3po6ytc@1({6a4Qts`o!@n!NRl}HOExr#O zXwmNl<32<8!s3Rp=|3*|Z*rS9$OXO2u>Z-R%^2j#nEKq~nCD|b+O|1b)$Of{uF#SXif7X0@g(+8mo^8uR! zM>UOa9ePpq+E~vlLWc{+LmNpR?M?Vx1=qEytU|l#xET;`)9&L8-tVah`gTxuIpJj@DGX~(l zEZ?D<88RsG!%Bn4d)gS}s$0Z7nC*Cm=G(Q+t1F((e5pAZ`>e+(5}u(`_8at18)VGc zeh=NoPfGWd4!OVAx>Kmyp&Y&?Guz_-FDh%H?i8Wi=i9cO$Hg>?iyAaz(|9Zy0 zZ8N)CtHAugefHL4*TowB!I!9pL^a6YDAm(5OYu{^kKSyz*5PA<{>a~rCA%x^>||Zf zoLMtA!@&;d<7D*5Ydfru=67HO^mBsT-45JSov<@-1-71`Z(0AyI%K`T&np6;!gkj9 zLAS#GLvSMgLs8!H4P$iOn)ZPqOU6D>S~dC~YqJMmonucc{9gjES%Tj}9m3$A5jve< z7fPEJ<@iv>Kh&nLHXyWNtB60a#bij(x5|pkYvz4qFu4Z9;8PiE^(R2jbvP%ak4k-e z>4SS2s|91GRBKAHwPapYluIA@;0~TGd?KE~_>U*;wZSkbf zha8jwC|!;V;mL&ip?mQH42mr&vT-qyoZyPJH>OElM2ggAZihpxz=AQ{VD5oKboeRB z@ei~Q&X`O#HVX#0%+}7al@;@S#QS(rm@`u(H!=+z_)kp#!MZvau>i|8+&^BxcPjf8 z7|PEWI~~{oOSwG5$(LYh>=o>F9xx}sBTL`2OZeg(ELP4ZwAVLp4mQgoYvFqHi`G)` zp(5&Cu#j+SsiNE3On?LFaM?mp$8l)0C35z`{4@BO3zk&sSaCY+YYKjvO?7aGb}f)0 z_g*R;6r6EhPV9o;C>3m`RIG~7(4ji8+-i!?1w&0j#>HoBk->PVBECc)bFd+}3jCJi zBQC~6gzzc!xWXqZy`|G{2-_|e{c^@F{A`a3&*^&5Nt z=C^iw@})hwe`kl6pWEr~t(|UetbO|4PFIiZ*%dZ@e*}Bn@yutxxVG~1*Pm(g;TH-{ z|I?!T$Hn&lQ@W&oY4QI5^7S9z|I_n-e%&9g{fGbh-~RAkkr~>w_!pk@hwJ||MbbZe z|Hu3P{5k*hUibawO_Bd|8~$+3r`M;~r`M;~|AMbS`{u*lhjB;$$&+_>ddUR+@(~mB zJA3-!y}f$>HIwkS_WJE#+RL}Uu@~R|)*k)lKibP*|GoYC+y9sS?l1q+-hKPG_QkLN zoxT6+KiK2Xf3j!qe{F9*{MKH+`oW&P{l;Ejf3WR~Z|(T_E4#h_%I=v?UTy|Cudz4gae)?GgvHy$?Y*H&KL+kSfuIDcm47T|H%T5y0!9&gPT*;oTGbOIA# z-VZ11BZw$~+y`K%0N4_srrh@_U?!>`jf=kubzc;aS>?jj0$W&Gpp&~H-vKoJ$_JbR zgeJMoBZZ;rl(%w(=6tSAhb2JMGhb<=~PQF;eG%|0Gf&~&n}fF zN$HVz%^#X`c4>j54H5xBE#^nIaHf2xh1mtq1E6X{0${mZDJ4{4XCdG{nc9U?94V}J zs>0W)%>a$=@}ao^PNi#dUEfv@asZ=4djeZ2B~%QkO;%htvj92xfYMp06F`MsDgxsi z62mjp2S1qG@;n+hEEKunJM?n|az-1{sReTt+NMuVZVUH;Emk@~S3?xs z@%MqpI01qeD`XQ~j%k5ZEIZ0B#$wsZy&Aaa0YG=Dyr&^DFSw^G;-C}Y8Kj@6gM48hvubBCZPg}*3Ic}OXs93&jf(wsW8vzRQtCjynr^VdUytNWC#{kU5|g6akUU34 zP$P)Zgt5&b37*L18o4PSuu|LbKSZxZK1yjtloOHm^c?Iw6)vYn}^{lid7%B-=UiaUoNMYMpTX zM2iy(baSFMLOQu`;p~wE`aMV1(ktXNbI>1cl7_S|;Te$aka4cKuTIb{`QBfAEFK=B zH>(_SOTTB8XVVa$mF0{h_gAz^T3DlgMfj&cr_``f#;G3{w(t!Qe5Lq^w15!$)`n|K zkZa*6Y5>y9IK=eJ!`Ft*5`ELA7-UkX)VTL}k}yVJ81JHROf@%F=*V1S326^~r7po< z@xxA)+QWkTy69gO;Zs!Huz>{go;H{D99z(7-VpuV(cfw$rY`pG@O?%*l>)5{nJ3U? z)zR?kgDvQr7U<>UOU5Vg<6cPN}EH7XAL%he(1D*Qf;}m#|}1Dy39Y!CrN<~LDrQ5jA@T8q zY*pS{H^+t#R)e8-%Z@T?1M zN~D=J1-=5^RSk?PR^IWW74&hz{I}%!E}tg@zD^4>U1!QCt`ojmKuXG^4b`4@RMz6h za^}^7d3L_E{0ell;vJOc4|A^vW@wWd1p-3fm}J6rl0X(1PV#Qzn$wblK`I&^l} z^)|@2Y5}l4nR|mCmv`3pd&X!#7Is!Wg9_iKh5WkS*pYVEJZsV(?9gub{|diKpKg_( ze`h&dUa6D%bZguCnH98Ir~UQJrZ`!%VJtUS)(l%K*NtWS16bo0jB#V@`r7vUqwRUl zp?Yjv@J6!M$!48y$1iVNOBB7)pojg*CO7Cg->E)>HWzyCz2CKCilzdLvRyMbtSi22 z$4!Pd<+)lYL2gyXbF?6p@RxQC^h<{&2A#0RCpD!ObERX-bLl z`Xb%fbk@ZuOS2nvLMNZE(Cq=6-&$4gm}}@CHd1Rr7@J?WDwHdE;Pcdn0Dp}PYjh>* zwmi4A&Q%V5^n-qD6Q^L#F0k*4agbhC=&6cV*XWSy6sUGWg{^9C9IywS>>lSm?wd1T zq?I;%WItC{qU)|UUucJ-KKxb%h&AWn`v+{FzSZd-8DQHREq-G^_=_aJVg5bP?v61+ zx9X3ZpD8wxGKc9j_kc~M*jkNFDz%J7;W! zBU7Xja%s>7r7tY;w-NVU@%_4Cj*Pi4b4AmvmPU=`+E4($)Xbv+ek;-U*!tAs19oGYH*G#_v6%pWmt5UiiqDxG z!8%Iys$%uXqw89m>~8JU-&qc4QR<~&TjB?h5B{RU_o%3}HZZmWI=9whJvI_wkG@YE zxr+SqlUr*$=7`NTdeP$x=o0@rTGX zV4hm5<{37t^fd|3R(dRL8dcyYMS+LNRU7Y0?UwNSK#^wQ$>QaH+*Hh4@g`)c4Xevr z=8bqvskK0^OLQV^3T&NuAx18YgNr>+G-k|WilV6^2S0$`s@6b@-Zj{EjUBAIF|sx& zqft*I@W!(CM?Df=6mCcphcV5O33D**3&4cu6}rWI6@zt@V(Ak5^5p}W7YpIs3_E39 zwRx;V77;!-O9%7mPk;>+p6a22+3=mIHm~3gs@IjyO7qcMUx!k($c-+Hk)ZIX2wfl3 zTf&nP@MkmD5meLzJP2GdIORp_jp=#=QH&|HQ|)*Qz>6l7pw+f zDV)$8c*;a+p^$?L>+9fF_^ZYo_*s4_Oaul4$6N+HSBD~yjiS*n!8ne;VtiGrPZ&Fg zEBQRjwPcCzfcFaUQO2v7^W79&40a8{rb@TviI2J=ZMw7vV7wI^YLd=r2mWaVCdU3k za8>{hQ{>YM+@};!6J!yBr6x*SOZ!z{P25;1crR9|olg^FsOSi=l&gAU$Uuk3z`1k$ zhbIn=>@xg70zQrLXEkj~72OQ}I#Waka%jMTA-JeyE~(MYWYl%$;4RpsyW^T0Z0Xhp z=H4B8)$eX>*WTIY@XX57TN@6{r?{o|h$d;a}D z{KLoZf8o0SBii5(*Zynm`onMjc<(=6`%mwGR&e?k+pp+{|I>Z{g*JS8eR_R*eR};b z`ucNkK3unCq*|C&ko$rpC_=4-ot^R2yk|2OvX!%z0&-FNo>{a@PK zpZ?Nbf3NgQ|G~ce_CMLT-~LDY@ZI0p(;xrVzWe$&_TtS?Oy=K>Ckd|Je`U{Jes7Q7 zd|@x1@Qjyl?Dpw9yL$1)?(bjP?d=m=KmXkN$9HzSe`Y)7X}o@B>)lhUw@+<*!{7B| z+a4c5jCsH9Z40;m$fQzgKpZLn7XT`O zI0k`o($)}Y2w9$uKrG9gkto$ln{=7mas_~z1>>m_=%>Zl=qPv&k~H<*)dy>L@rV;0#c= z=dPq*9L@Z^RTcffNi$q*|UqWIGHvgW{%RGxB$>*+<=(Tc102-Q`#H@ zRC!k9o|*4GbiB(Md)apnL=Z)y*HfZwzPd@gO~dFGrww8e^hFC3dMl?&f7e>Jh- zG6hJgowW3(&}awLG(P?ra|FXayAlq0Antn3M*-sT3 zosEUgW`KMxZU^K2kY}(mmuKiCc;FVu0dk@IW2PUhQL2)GAu zEB#JUA_GOy6g5CXo-tJ)NiATm}Iu1&PqlyB@(1$1MG3gpi5 z(2;ZlsX@kk7jV6&@OTJWrcH&Mwu`_kJyqdYE}*a45q>eI334j*9}-$YW*eWs)3wFg zjDomC^s90hrxfx6VOi0iymTz_OPlhYr_+updZb0F=rhYhmp*8rdW%j#0)OQqN0BsM z$aRWrCR(VLJRn&rLa7CY*zNf|f`la4-qwB*GLFN|P$bw*}jQu1It;{xzRSNl>kLixWAha38e1iW; zSLj8lh3tX$s%FgILZ=vuD6W)dsDLnH7fTU!bZ*9T6-kms_$Hl1r9EemxTsF}yyclS zGHoFF+1OUq2XRFdd43k|A$A?(rBq+7l^%L5ea{q?5txdpim(UhLrj0PK@mLMKu~Ll z9kyI$b`dLe2{xsZh`DcbXMFGMgbMEuvM7r#4kw+Nm@{Dj1)%wYiL&(n>|x zNm-{nv*3POq(9LH#*49O8Pi3rg<%MExTfv+4&6_SkMw1kY%Qff1^sCu_DUhx;d5&2 zG~-!Sq0J5Kd$YF(Yl#0wi|oC*b&qd2(ieP6dOyyGT4YRJ+Q)Z}(sH%v1NRzQ`Jlb+ zwbT6EZ8JH7R5=FoL!O^Z$?N6Uwet&g1z_?k_3W9tsT zG$?QW-l{>VjMf(Nd2<}B=x?pt?rqKet5SyncD8QUmTb4yc3MEtqQVt^V{d~}jL@cP zzp-S`IGymJyS=r;&Z1rmbdN3B-0&TC!1u{e+q&7>S))_pj2)k6JgY8v_IhLWac_s} z39?vQzrVK@+)%HtZF0D?!=Q!iTU)P>mK_`GhC6F^`rXdD=3w>ikqrkGvmC6y-hxFQ zS$-&OeQ0b0=E!!Po!0nj{-*nQOsO<5rdPL0)_N;FLYw1_R7-Y1!ZA;q@ z=pcSvCpeW7DZqzU$TvyX)@gCRV;-p)cWo@Y%sJ@JszZiphaNL7DvGTQXMB%p55(2U zq8xpwb~fX8=X}=|M|7vNJ{c@z?kM-Y?UF0>i@70HL<=(G{uS@5QjrlI*P~lts7XDT zkABB{d_$vJ4WYG+@4$6=r-+Qrcv8NKZqQxsHH6p{a@L7{`r&O4)*{wanoK|7&rKanwAHohJB;wBOQZ+ScP=loqP>%^C1*T9DV`bvJ3P?1*->eg_pK=Q8BL<^ap<}AGf02 z1O6|hA5O`#M`(eD-_$T2*@K%EFo*bA9w1Lp?Z6Tdj`aI;jPOrgv_;U0` zsRwgywstA9$B&@Xzhb_*ZYi)+FpX+~l<44R;$}J!#{55# zPGK`EMfTu-}w=$zi^X;_=Xe=YxAad~Aqr zgD1UAX)=-j5*fX6vU{@Om9(WGE=fDdm$RULD=@45GFD>NvGaYOb zH_~QG{+YR|n}v>w`$MGw0RQw!L_t(Uk#7%GKVz~HCS|6^M6Rxee zW`4fHHtxV1_|^XEmO1~K?XI8M)uX5O_*NSbuk7~mSN25f56|A(izi>(%P+pM7oUG+ zSMPso@4x)PzJ2qP9lra{p1%0rj$eIkk6v=!mDVg?SbO!-Zl7Pb z$Tm0Nh5e&nTwD41>(9FR@agpnuRj*T{-y6ey*|A@y*|DE7k>S@Hy;jnudI6Xg&khK zwZr`fyMOfF4ouFsufMVT=dbPQs~_ye%OCC8tMBao%lG#7%ir2pKmE16`0j7*o1gxR z{rZRB+shyRy?y@O-`LA<|9Y$w@#c$P+oSj2*sJHC+wH4w?YZhdy!zg*AAM_gufDYY z*|&DQe`nXvUNd=Xli`USpS-l@=}X(Tk8RjJxBljt9Zrv|y?$x!>Do^FgY8d%`!#@L zf5$b7bl5}WcUJCh$Bl@305I)pQ~u+;I#>)iPP)t@NMj4wRdG+9{8e$p9B$d*d=vjnsO zMAOw7qBiIaAA>a=1xZ+t82M~H;{v@*%pe^uc7AtMjnKmrA z?lQ623b44C@?AJC;?0utvCcv;nb?A7e*}qzEnMFwO3O5RXqS9GonG36&(F?E!0y~; z%ZE01T)^bYW`1T5oHN=px63*Ar=1r{b#%%7786^|a|>NSFJxdz8!uMe+g~6bp1EAw zCHMI(h%NLl=!c4?(KkKcU0OPsj;CFMS!`$F!d9v&!QXhLHU?upd;#A{K%W(zFz5Xr zq9lS9FKwQzmH=+g^0{LUq+mA9?JrcvB1*WPHt@_9_g^VBR0yG6(uN2y4e0iCiv0q4 z1I#NApqnQaooP`wHV0zl0JfL(RR!RJcuHGDAOzmEs0_gmAyA%g=aA%NS&sx)#UO*s zfmmq4I%{iPou2?{}}{Sr^PN)<;B$kvHA$;hm3|iV;Qt#dYVbc zxIp|bYX}_Us3N(jatHZUkSfRt1UG<4o~IBVo#30$k5myA zkQ*(qMi5nq=nC?uQ*|r98&7oR5Uey+Iu7KcMG?krk_23X9mUvv!95_Ii`B=P4%2|= zJN;OvWFjI2!E|#z6A2D-e9La!7+FH-r;Lr#8O0AFqRAfe)?1b<#S(o&my%TrNvkYY zqz-x$WqU~M*1Q=y;SQGZn-uaHt42VC3`bqg#|3h)>c%lrodJ*Mhg!fvW{UQyRCk4I z6dj@nB&Ejk6J+T{$W$ln0;_53lJ6sYSX(t*0|}Ncaor`KrHrM+XGsfLh3qQQXN4?P z&`%pJj!sP`t~vDEi)!Scg(m!`^7d+jKns-Eu{KY%pfu}{RqR{Acoyi7PPi(HN%_b# z2iZb~^F*6sbNj3stkM{1lZkd}vD01AUhG7LCYLcX@R1w8DYThJKNhWre&a9jgHh>O z(I;bCt-L^Pu@=`l%a-U@*qMWUP0D&a@f%}TlcdKc7*obt>5%d)u?Je{W)uxLUv@&fNFfKhZS+|UZHYSSklycqX77V@lmC~=RO@%gB*mKU9sW`31Y*K8j zi;wuUta0V z>*U;HuQWop)~tK_$8{&hh2O?wnxwsz8+@0F;dTcb>RT%h_sEyIn)!U-vu1s?^0YxF zw5z$Xb$@UD=5CBiP~P-mtyDr!@X0!i!1LNi{PxImQp=CEB?quUtHRWeE!#b|e81=S zk1V+c18n*2;pKRJwz;+JaI|i7Wqaj0=hD zUNtcoOKnnWbGl4zRxm!?qp4GLA+}l1cMfwzeXz*}T^f{vk}+l+lfE5KQ@0_yhJ2K+ zMMcRQ^tVA5gW(z*+Kz>*TZegqIc2%i#-PUYh%TUe%!5OAH*N}O17g$OS&qMq8vGtI z$k9)2h%T5rBGnY39V+Uo2!SR)S;06g7+2L+QCgfyRajUYY^l@U^mEpt=Xw@?pr}vS z5N*NlDF?jL2xYP}(U=&Lrzwcw4M8phK*p!@ie z0y}Opo}mK`rL{nxt1L#Jm=Dm0 zg!_8jqriVELPxcU@_vHf9q`4Q@z8`KJSGEpqoY6Ch~eH!%jNR&=$DUAEW2y`D%apE z<(oU^m^`bnn*ceeu8cNiTl5Q?NsvAFRk8ZX4*!o_d*|MEu_6YL6PO}IzZGF6J~7~9 z+D>|g4Pf7Ed~0(B9#JF@GMXHjdv+!EpK>kNfLAK!fHn5lq1(-d`>AmCW{tn&x7mU3 zd~Ew@eZOUnyteh0Ib_S+)(XpQ&{upFZQZKK{q_cV9htY$V{9ovze@D=2(JmXNs0bX zne#XJ>mK`_taBT%-MlQujY@4a=ge^}a)=oJg|HDerg=~`FqA@RjQGK?Cis5UHyCSz zNY>bQ%)F+EJ8jCGF)k7Mm1`4l#TYZ6F8R$W@8KU{`Rr=kXej#_-yodI|HAa(Fpaei z-+0n-+9V#f#4p8~dw40LNEkc=Gdj#yjSiro7bTxJ%pp<3J;6k&4ysI2=42f#YR5xI ziV7{6pD&~*+JvKROXhazs|!Z(u???*htX~aoakb^HJC33pG-V(j+diP-nf|}4kCXu z;W<9`ty*Fea76}BaZ3jbrNbzS?!*^?rx*NLUH!0VF-{60N7r>jaWjKZl7mCXXTm?K4EWxLW1mKxGNA>F_V4jfQ z<}UmaT&0Z=FP+(P1rJd%Y53Gshr@U&N@{t@ZyazY{7qa#+}2$p3#B)6v7-ex_y_*w zEo1B-oC@D`Qbo0c!@$MMGe!QMnKMu9;W_%g3gC@kqHsdH8(Sft7;GN|5uXd2BO83i zY+BfSi3}qb{RP{P2X(+~@Zveon+Gob109^}8n7MwsF~tVbdaP%&sV#0G}M; zlh@!R&5aq@#=#~N?5_cvB)ctk@W{5^W7}QbF?T<);`XtvpMo{+9^2K`OKbLztlhn_ zz5gWZ4loqhh@Pxj=?zp|Tezq4nr-`n#yU)$BQ zFZsNoso_h0?B zy?ygn_W7@WXRm+!$-eyVZ|u8Y|K8sH^f&g+@BWK@@#Ejym%rnhZ+>I%KL4$~di%XS zd-J{R-hFAeuYY5wH(%K8EAI2`8@qb(#Gbr-Z;u{-V~_4X*waVv>~#IYZm&PLJLOQk zd1_air?x%4uzd@FxOr^->DoG8Tgb-|BDdV%nZMJ5%z8YzR_2bx29X|G zhz%fKCz&EhwN9uyko2$y;6cW`KY$%~)d5hamMBe26ptri7Lb|=z$}71Edh#7=$k)< z5V`=(bFT4yd*J=bmhJ_hHL&xGmF0e9=gSo!m)~a|An?*0)qwzX1^&bq6M(2QvC>^x z>H|<`Q*##!n`+TLIyYwmSc?N&UGf`GzfVVC7pZu2IOnsueYOImE&-T;$d&Kf>a6@Y zkNN_Ou`K|J6GbM33%i^Kb~&bt^6V^Jnyb^=07i#rKTM}~zH-f-D$0T922*op0Bic{ z>h#L&R{-H=tO236=mgR7EHqCAYCU({keDwMWTOIVGxKy3M_@VE^A!3!wF_jWJ~&(# zh!mVhT=F?@9}}BF@p6%U%VLJwUq0_bz%d zQBg;w7J_K0(63IX&*Iq5b^5vO$3khYuLXbf3E8Z40vxhi@+=jIj*xHK9V|khx=^Qz zI*5b^k%06lO+@P2C8R3XiTM~(+N#ch7N8Hvt%m?g-vH<7#v({f;cOt8v@cSjYNg$Y z#)V6zT2N#|s0{(glgL@6MQ`psMi4*{{2IcQ)R0Ypd$^@fN=e|G^52IL(0M?gQix>| z0_rzo$ovDI5mml*JjV|K`R-=ifQcXq;YB*8L~t^9)PYq$hp-{jd>9wVm4+flrfG`& zA#)Su+-ZezLV}3{Q{8lW;2V7e>PvY93_hWxTb^G_eJGp;Lwt57hSiSojBHVc79(T7!p5vhH$tL8;%jyCJ~ zE8jhyv_;kpf}jv`2q@3g8c_Zlk->$ZVGwL#t0on6XeKdiEit!zg&--14{Mf z6xbX3q103<`kg|~XOLdM+E`29gS4?VvQbgxjP{p_(zxtxf&J$YY#*Ht_`F3&RRg42 z4mPdvasA$6XKz)|jf+F;Ou4+#L%yq=gUwrPO>&EN=w6I}$M%(;t3ogRls@dn6Wpo+ zP$K6#$*gd9^l@u7<5TJ+aHPVue2;%g>Ya63w9axX);j5n9B7wP&E!2czkNK`1<=N( zuLbLRJ1)p6oke}*_vQ6?imcZ2OadwtL3>gnsUIE52Kgn;1pi+qz?X>yw?=H~0>n$j1jJ z%5z^?uT4ni2S*zK=;cMvc+vkDT~m6lrD}Qfv|sft2K)l!u&wdMgEkzlz*UM&8OBY5 zmV4}&Lu%}@ixrK5KA?A(ePJE*RS1?#@PR6-yJ}s=9(zY8m40kkU_Tjlwcd<%JuaG_ zXY^wlH~HW#a%$04AB^WArxHC1(XX)HkDFk!Mb(N>or)^K2MqY<_=vxuUHC!OW~lw` zSU7vK4v<%6amzR{=DJ3aAufGta>fRKaWI==Gur%){JGT#W==5au3#w^BOY5`uw z@3qL93ac=8=E7=>zcy(y=Al+;#Lz*d4h+Y6rN(B#0BLQR(v@``@A=(u9DTQsna6t3LWn^=;y## zAs@y;X`eb?+K@?UQ`lpFJDxvi6Ayobe_LwvPLXQ#FTm%gV2n+Su8Z5y1{H*_I&JiV zN$_nYx>GVAWb2OyBQDxo=Em(fR*JM!N-Pf@Drs-HL8i=a6JfM+YrQrWq#O8wakESt z?pjdCPTaLNsA_CW2NY<#qP3VuR6M>wzAJ1xDVbyNIXm>V0W+7~3hWGbVk~rEW`!Tq z23p2%RkJ8z&Pk)Kd5pnIo0?PXJwy+guaqilhAzk0iw_>H86%}aN@PFy2c_?fu^H8~ zSkeBRwki5Z1(qY8amIWs+fm(@DLz0o^78QGTpEL6RxWY?1BI$v0G94r)qLYO=!*(L zE2XFoRII>+G59+NYkA-_rHv9_Na7{99_%Wt(84*8o5y^;0#{~XWPRi?$8&Gm9L>Qy zU}9~iOf{G14nBXy=QX~ZdrWh?z{a#$7;w$9hIeUWFGa7w36Te8?Iz$dFqby*z=jJr zf~&((@V3;cY~k@c@XCz)O@slIZV7xf_b!Gbhfd$qBem7#zTw#@YEPi=_amC zk>3hiy@WdmdZ zmkU;j%~S^hobrI*oFTJC0UvaQ@!@`|_r_S|=iopvt`6Zh54S*LT*}cecBFYQydISVOXY z_Q=+!mv%h7v+c9zcKz(>SUmdq%a?Zl;VXOo^as0o{TqAv)o<+h;YWM=?pu5E;e);W z{0n>W;%mEk^@ZKuy|LTFd%J!7*tUn)7Ti9yyIcICGBNP~cK>KRNYURmzqq#Y^Vg@% zhfl9huTQT}uTQUk6R$t_=ELL1Pwe#Qg*`gFvZvRd+dcm)?b80uYkU0Udwcxs3%h4R z9=`bAUVO>>4}WX#zxZ4G`kTME55M`neewO@+vmUj5BBZ>@U%&Q3Q^ zZTI}84Tl%Defq*~Pp@qE_|7(`JIin1*|5F0YI_I4xwhmQvfe`~_9u%Dr!fLTMdGUV z8sOJh47thx20mmvZACH)$eKG6-?U211swZ2b)Kvs3L)egz*j3xi4UOl#(E2i8kp!* zb>N%p>C{SMXX(^OZex7naYb7OpZ| zxByJmjacel+HgP?iw73D++Pt8GXQf# z!0K|$L+T*sz*ZB_GJvkH8W2kee&Sf*e*~^>8d#ph5Lx6D)Qss2LZOX|)O2%Sz(srd9Nqu*H#Fb^PeABk67dzM3n z=a3+sD6AAkq0?SnJ}w?NF~Gk{?V{7^*4WOA)bb#-d6Gb=xc689S*JMpz1NthD3k=U z2hlIk*$lE0^yppD*m8hWW>=7$Bf8p}q84(U;({zLb^1HfX-DOo*QOT)2;x@c3U78T zaeM0l{YrTg@m|_-4h6o3UE6~U?Bvrgy=ZD*NOQS^5$2JBP7gAA&`(bhcR&I?@AkKTvM)MQ<3jp{8xv{kD_ z(LH&B40VFBL=W&sQCyEQb7)&vLQ;J#0;t}Eq9qtR?4?$XjJAO&qZ{KQI(~=o*Ji;O z*@Lc4TGbO_jH`Y;v6!G!AvWhh>KpVd$Cob~rEOwNQ}hR)tp(eV&qa!tDSAQwWUIlr zDN~K7K$T-&k!?!9;CGA_`j`w_gx7{rZ5KZOBQK?}s=O=Hsm}_3uRP*fxYNh?t>0K>|;;*#eTyU>W5jv1q^vfO8 zHu{m*Q#LY ze5?gg+ojU&U_Z*UU*IEjTDC54nHTvTZCDNiq-Qu@N6 z<1aRW&rdsihc*KSrCd7LHeXv!UxJCOV?T@|v93UnFSs*Y2e9BqcJU`KMx@SoPp(ZF(q53cW4yQ}SCezDUKwRRmiH4U`J06{bN)RChvS z-&Xiq#%9I5P-%W*Zp%XY87g`Myn-KHajziX;y)Qvr3vakMjJMYi129(_pk8P!Kjn? zk|s5!xk=IGLTRHa=2Nh~a8`pqR;sG7cslwT9WIJ_?`jN+E9QOt4fYuz1Er!|@_CL- zi;$a1snJF5?+qL4@h?61?ilAa z&pPiFv2YyiKGnDvJH~s9%;_`tEmCw4f7~)YZ1fdjyw z*h&FDS)msNeM-P04f;G?$wt6DU@Ar9Ds66T?foc3T3akH`|&kAX$B4sDwp%nb7l$wfU zNWkwoJZ-FJ0sl*tYL|Jtoe8g`b`Hjg;?-E&EeQkerAS=a9XPEC=`YU$Ek(AXM((y9y7$Zq^lM#bxC{SW=e~uhzIb}LKvF+IX+wtoU8P) z?#NeNdkD4@=kg;(kMnG>qn9deEjV#?ZrLI-r5ld8w<5HY&#+&3qXTwSt+LB_29Hr) z3EHyM1`~W~(CRnxd68Zp>K0^Bf?Lp-dd0BeEds@kF4>-IXJUNPb)Bu>ZgQ9;iD~cgZwd{E91fG zg{`lj*ycvji;u0@zqH}{xg8I$?dI|8ac$$t{pWW7_`RLpd})uLe{Rp-ez4c?zOiRt z{%Bvl|FymP<|ljk;S0Nc@>hKS-i|Lm*wx(^cJ<_QySsg5j~~CVo4cph-F2O<=kSYbD?fjI+I;x*`tiG)D*)WWvDF+frU(eY)-;#{zyO8rg$15t&f?N0izVQX=S3@9Ilf(TUw>ZO1Eo5G zAZk;=^XLb!#d&74sTS%3zH=>DerCZ$3-l5HbH8)`Pq`OhbTSsLc5IP2c0Si4H@}-l zb}{3-75!iM<^U!Ge>E0U3$@Tc14uiyO~W&DqlsPmv^P#{a;8P#(9Wi`Jxu_o09{1_ z@N8e{mbmw49{pd;EV;bk{nReJ3rjCllx;fZ-M>@>$)%zk^gBTFRHylAi)u?KeU$6k zRM8Rwuim9Cly-&R1XDnI=mLIurk_HnAC4!?T>!f_btbCc;00p}r?dHASQsxX&_;S&uzz$f~B&F8cy z2Vnaj30_G;$yt%fc~19*Vk zv^K9|o+YA`L+BWT1d^^43@P_VPj$L{uEiAyP@SY>DkBwsT$QPL$WJK>RDf26c`Kf$ z)0*0tC?MHR8``h57>i!bDhNm5L7>)lCL+tVCFD(E>LP%1U#H;Galtr(6!?u6+w+l- z)rkmFZdJ(GEg^Fd!b0-n`!t)HqXh-p?<H3SkOl1v41M!Tor?F6D2+{$6v)oVq>jkG{mnd5E+b zHz1RaG3jVWYf&56tmpp4aXc+9{mIH5zt2=Vb-o^Sp*}UuwaK z|A#slqa>nEL88TT^`meu!T&4N;Cfci%^-)=3!&w1?= z3kQ5!hkkIK@_0vDr0n(<g96r{oXt=gG4z}5^ zks-RV9jsIl<=dlWjlM7Kh#a-?wccn^JGU+Jy26eI#-PLJ?$X`3$lURFlOtRFdONJG z#WtF(!T;l<(*nIf4%O8d@e$zL7aj8#W7jr}u@-T4I{H|DTzuz$oru?|=vZm>GB8cA zjY4b_-y+$y#n$!%KEB#9cbw4a4dbV15`2EWx18U%z5MPi|7+nHTdx>n#&cTTSh_{O zC4)WpY>uYd6rMJb^qrz7wg=myPc>t_p^efvr3Z4fsg-L{lJ9!#a-+=->>1mVEo%cg zt1D~D4dcG0eb-jitxdDzcxrhoIWw+xbF#d=9yj=s;(%;7jBU^Fu57L-1$@(LkFQsX zD(015r{D8C^a8mgj4gd}kU>a)>-=Pw8+4%PZHpi4BJ^>a^9=Ng_Ro~(9{9phnRB*c2*x~PTeE5PnI7F}45x-;nN_5%hcPcm>qQ6PV*x_f! zLmKEq$vhImMYiZ9 zdd@slA}e3^&NxgI0fKGS8ed=aC-B?&Q0b)7)VUiiKtJYLihh&LVxzw5S8-2%?=Xf% z5B^g`5B;eVZC=!4f$3~lqr-a}m@j&K!3o(ZrP?jJ-ryq#{NR8MtdE%;7{gYZo?IW5 zORE(HK^td7V$P|gUHEr&RHwGp-*}CmrJXA5?+#Zs-8JZj>X2a9=%do%DJns!*yQ6D z>zz%}qZPhOMbdlxMvm`ldu#(cP+@8nf$#Xu1RItfmH12_d-7D5V>6L1?iQ4tsgW17Q@ zmI1gBKan$cDJn@toh#ZJGG-BTfgf+|oW3m?*OakaVFwO#Z09i_GrpJD>I`|O9`gjc z9cg}Nu4+}loH34TI76D_t5gd>b1-@Ucgt#}6~eDFzEL;D@93aQI;Lie(BEYN9(=GL z4RNfTS^A3ihaGSWE@G{u$T$rSsflIkRbEcv-W=bDRds06H zLx`6N6M>Um@ZNl4xrc14zW^^{$CJ+H!b4!+OK{|89@l}*=Ez~>7s&G=+)Kr_=c#Ke z`aXewPF%1loGVsT@N$Bkg?0&U4;J)={wM+=gzGK9P%9@IvHTLQtb;L%)D9B(6XOv~ zz--aw82R8U@*M0KGkRL>GkRLZ{qdm-h8;Zdt%9>ClGYyG<<8@XHV_= z>7Cs_{b0w}U)b}PU)z)C-`S(LU-9`5cK7wK?fn-&*!$Pt+uQH{-oEcd~zlUILjPhb4n>My>tH=k?sfyw>N*H%6M(ypI_(6V%N7%>}vbc4#%DCbgJ>7_ebkaDoA|`@jlt6 z-&@~59}7qZfaU@ct%Z;rLf~}CxKI&8l*+aOq-wD-8be@3;y)H=h0yC12?QkqY!?9p zOKCkqfakO|Ptgs4JTLXlQQ98B-6BW;TL7?0V7@|CFIN_2f+Q{9pR+ zxOt#-L>H435If<2z}x)XCNtk2&K+|vC$=~PAkP;TIG)WH(Z@w|cWFzHdo0gwc^R2A z4|x7`T(I@S3v&UfD?sP!!WmO7g^H8_;7tIPi&bnF4*`8sKqUn7fuatkv_(-7g=6QF zguVeT0lSXJb&1jr@eKOl(>JA6nk0Y0v*-LDm zn9FoBy#)BGz^@O&egS=zzU1pW}=#dt8 zvk(FdsE&DF5kjt_$ie{91c?iD3M|utX#)UIi&}g*+3j<6QpLL)G{rEOQHIaXN#75L-u^gS-1?iKQ`5J@36KxM90@=&Y0gn zu!8%qAR}RpO+r$X-(M%qBc7>~Z(}jy1hPl_Rd6|GTqgrWFV%+P#+0*JMFADTvXcJM z=GjQ95?f)Vho#Ck?93G6$QwO@ltvuPlZ0i1-jf>1Ccy~ zG^KnOE3K0J0iUVpa2VG%V_e)evLr@E;m0&F%EMhEmkC7DOK1o0=M~rE!>Rz;r;v8~w$O$I|0fW4)u>3_#40VA zXOWeK7KL*9$LI7d3y=kbJ#u#zdyrmar2N0N$TwpmKPi25OMH{;na`Zy5KROYq zNEF5qoltS+38Ye+YLmRS2W@A;cw!#EkYXn>eXe)rO5bQ-1{wD&Y>=^tu*;_8bADF_ zv;)7LIM^a%uGCazc(OQO+g@XZ9+i?WGIP0)*ZatuXV#Ui2cC&tlyzhg_O8tx$6+2o zkF>y*4AM33uk-^o^3G%C5}l}S#vJjvHbL6NhG2vI4z&3S`-Lp?T(8xl8a|-cA{y-& zQd=@7P5Y&_ntMFt>|=)w&#XGDTAjLV?GimNvAGO?kf9HS=CyTcQQle|^EuCMd-{aE zb&&Rn7WR^kHr7_*1Liw^m*U&o-dx&IbsOfzd&{&CU!SZ)o?~R-2BP2d7g_Z29vg?y z57*XAI}0KB1G?t$oP2m}rJ_X859Pq$aNo)9VBQAXDe#}g(UNszUDb>m2o=wXc}|PJ ztT*d18gbzNqP<~0zOm(@w#9JZH#_TS!+LWXQ;P)KjqREn$o4@?ooG^bC!YTR_#Z2K|Q(q=4NsZ-2b8~9y+x3#OGAEOus{_5262~4r8i*ZvZ>DJaL^<7u z89G^L;aTarR0AV9S<|l>EA*s~ZOt`ZcjCLPmAqQ+r}QZ*vaHlbUZrB#w^miiH`M|^ zen^Ww?ao5lQFeQLH8$T5*wD_J79GQ9Z_qX6#dpgi^Oo}G^IfiSQ7za^ z^@#b4xp5PKyB;w=)pk&g9^oxysYT9?_TDh=+e!ySXvYEDQyQC!wxn0qSNN3d+CpSB zbh*p1i|WP( z+Bwk)S^60?IxTxWri@V?jJ~+GmOg1gw?nQ;qR10P2q_&AHcMai%z}H@88Sn@(MGzz z;kwRLpP=A(ioh5euqpl{qb-#pG=`nc(YFfQsTdEXzpAuhh#VX2GteS2exk0{b}_7N zUMiZXwk6MQPBG)54UqyY!JOM53-nVp7ZOFNb%!wmrNu8+8JGt7XBl%AI;0Jds8G~I zXETi}b6t^Q_q109%9UlAD3UZ>i@WZMpz^9=k;7~L>8qYwGk zRAks0GUTF@^xU(+7xP)+qepd*EOPFjbL|?RQ-Wo{D@|$}{H;#M2ZJ`0l@6(=-?WGM zDoPm><|?;PeGkozC$JCWk1nXVy6SK!Dybd7NwmF@J$2wo^hOKFd4iur_f@oZ!=DP!B=(-cJTf)719o&IaOt9?$osaNUIrw6ZJv;EOtbu2p@f#J9rVpMr`4ie& zfy!ru!LGp$ibhi8 zVVuvg0dR~qO0?(?M{pzjt`CptTq}{W<5YI$GWWsjJa}UcP7fS(aD{DwW0k%$zz$d7 zbr+6w0Z)kOw>Bd(pXXjK!L7)HHfoW-1mn%YgIPGURUM2G!;v;6T-p=rP}Blm2Inf^ zgUBkHao>m7pEfHN_|%mCfx#v^Aj9vLVEqLcEL_1`RnM;o`5b(R-26poD`x?>p&v_R z0&W-g%_pjn!S8AR0vsK!z&lDw>%u#uhxS>Zi~vd(C7EKc^nD6`3Bii76WJ6yzXYFY z92_|InAUQN>{h~|JQt2S79m%G@d*5he&yI(4L)j^XS6Y?I#exlNC_TQw04KT@|jBl z=8tr9XFJUY`1I59u_cFltFCx|dTie5nH>+$ZGHX94%e^k=H``cp1-iuvu9R3duzk% zZ|(NwD|`Cl8@u`HdwcitM|<<(M|<`CU)ieZ4*LHaE#BQHH zvCY*hyFWeWeormAyS4T4mF@4Z>}vDOn%f&YU0vB8yUY9gUtC-H`Rmi>!>8A$*QeK~ z*QeLNiPxWd^WpaPmEAmjZ`;TBc6am0u5UiK`{Qfd-M+Eyn-6yL>?_+dIp05jV=q2@ zV~;-k*4}*ngS}J@h_8QV?|%F{`|j(%w|Bq$_xAR8e`nu(|L^SmcYkZ&zW(?2=&K*> z*}HG;^EW@*>79yBe{J_KzqH#|uk6|5cXoRIo@c+YN6!HVckk@(UZ)FQ+TrdC+Z;Z( z6F}nf$y2NDA6s{Svh5Lau{+uTFz+{z>!TJ+c6NZgm+Q>BjdD5f0QvV2TZm{2xra2l zYXB`|I_~#?9mqhF14fl90|KLkOr2J#0m=Z;WdVqde4EYzS%BmKA{d7i01+Z_S=g@@ z06U!miIk(e9SeOem#)P#-!4~L%&%?Y0v1C6HDFEQw^L_j7t!2i-og?;9#8sDl*(ro z03-p8-pn4l6FUQB2h)!!g=PRp*Kq-DQ$V9*4*;x_Wn@dGZ1DtY0qqY~mS}@uED#OA z1B|ZR5MT_r3?_ij0CE#s%Ka}^uC10lcX4UIqJI-W z-~n`NJ6la`?m=`XvCR_5A8ns=Z~xq<&-7)hw-LWNpCP|#Z433$ z2k=ibQ%Le`5!q$1M2?sA!?h^@JB%;PodBFYoh+I_Mj)=S2Ox(m#Poyqt^mvDF7giD z@x)HxsGZ1}=PIgUr40>$ZX5uLgNkth;JbimtZkfOE>TJdbukK0E-o z(&kKP%OWdjCnO5uat7FUA!Sh#SXk4RjQd?S)@soe0<4X#w&gw|ZV(^UNJs(mt60Rh zfy|}+uC-FN2Ow|(-v^NL^DRWInnSLnV~{RLTO76!V8|%sJ;}>4Z@w0fRk%+nko z<=O<`y;5F4-cs*qVR#(VB{|Yx$WjfdskPt{qbDO_8GW+Lf+YaV3t0wR;o668*wqH5d}Dj1^* zyDUW5DoC6U=}~_fs|AEiq2@Y~B^?wI(&mHeEKH)Mt+1;+PA$JUT8(Ya&;t?GxbW>l z#gGH;gI`GkU5{>Wxt6{tCCQ30QPfBVS=9p2BtkDm{xkZjYn0ZBcB+m>4&knXEo}+L zcINnw2=Z7mW^>5zYT5BSWR46o^k-Ts^%TBp)>`4k_^jM67@t^+1CZM}KCh%N8P6$` z%92$#ZU~JVUdYp7yc7xIp&Ma=UFM9bQpz!|ZiyZ$3PmR%8KczWndn7h8NQ;XQBgKldhST$E7d}oGk-7Jo1(`l&#l4^JwbOFgQ}>Q8z!a#;BgsP*|gU1eZ)P-&76+8 zgL`JoK}B+e z1Nf}hhKV*ek9KVQagi?>7p}3D1Ae1qUd3+WLixo@>(Xm$m|Mr9(cQ+{foF8e^?tOf z(W!MUx^JyJm5i%49uD}y(stFO@$`Md{hR*U%9i^Oig>S~NC zI3m+MGU{Wn2Y$CLl=HkX6;j>z=yMfXSKe71Ut7LW3KP}TI53_%t=yZd-0jFkMKkMs zV}5r%Zc0Uk7W}kmu1E#OyWQAoH(0VM#{$w?JkRP|aLkQ4+IT>h>h{)#>voJr@%zr| z5??nQEJoHb{T@&5Z`WgVr?b~aLB;25Teps7TWypmEmVapwK#l*ed5!VFTO+Hxra6j zYHT2?hw=1vwm#T#doZ8=YL1H6gN69-ra<5E!})eVUwHNwpT%6a(ZY3nv?X?*V^b;e zFS|$9;onQ)tn6r8uJMLz+T5WdjB#{3%HP>EmhqaPUq1Lwx%T_&h>u6-kf$r%OSm8R zDDZVXe^vB%LL0OCXmc>$WRK1=p2NU=bgV5vMmimx2I$8Qf22qToj@-KYq(z-b?7SJ zA%}r$GcaR@uB+hvMjHtg_)*b0*lfMe=#x&t_sCgkh8kOQuW=!GEj*y>6U&)v+Z1fN zd1O`Ea_=oz^TtweWpY5)G5QJy)hYS{o6lP23goVu1yK*CQXy=l`U53f^G zQFTQwx$)M5wxXTfm$6E)nFycL(~mWC-hAAk!@ts=u0((7XOw`yk&!lLCdhS#jGYc# z&@oqmDIQ=WaZJClMWv`KkaNNB6p2zXXQuRXtm~E>(1iozUcw7b=ArM33Ru^H)#!z4 zXe^L>q#7?hy299W*nl=V=8Qwq;;Xs7-7C6bunjU-RNodGmQL2#ca80KWoRva`T!mp zzjkil)0{C92t)(Hm(BGyPW>y z5qb+ATvs+@E?qDe)cAQF5~%2FO8Xq_v7!%3SF}{^7Ua+{z7g$OmE|~ATgGR}m<-J4 z0b{7mnhCfzLzk3#azz_s+LGoKxCFaG7mGLsZ(xICgd_4rR%65h!lgDS3v-spVXnpeVdP;x+(!|#s?!zH7Nz#{q+i&X$9${Mt zUXjYu!@NlFCtQ;Ydu3M4@Hug1=iEDDj?Sm}G;nF{&<}7(0LE~6#bCHx2W2YoFStKf zL;&-1{t&GD|6%XHmnBJ-^iDADt;$1#IOp7hv%{0~%FNGdQ+Nrs=3)q8DX*XeJ@$)_1#%!88Vmz z;9R&|EPhFy6~6Ss7k=yDEA$tfN}k%GTif|pyaPL~{BnaweKBK9jx2{C7Vw}EoNDI4 z)8K9A=*%T!GN2qK#17$8k+>vnz65he2|Nu<7lCOMmda84z|skPF-UkPWn>|k7!Em8 z`DgG`>UxfhLNItWg0s%hJ)X_r%ooEZ2xA9+J*j4cEh;Hfe4x^y25eZ3eq;q$fIeP! z^2TC5#>REbjp5g+Sc7>OoAq03D}Q-?*?jnNeYw6|U#>6L zzliIfd-LJuc*i7rV^@z~*v;)zCiG8sb^XRx4^Qmo`S&(|^1>cJmCNEgJHGhIp1=FW zo_+exp1%IcUcdM&`}pmT_RAmt);|3CKiG#~|IrkF>HW`tZ=b&TTYLE7uk8NYKiK2v zKiT%}xAySj2Yd438@qk|ja@ywwEdG$cJuOED_=afyN7$b-@Uen+c(zTKDUQ!0LAf@ zJv_X&&Glm&Jv_Fn^}X%aS3?5oa(ic6z`02DdU+U59aUS!MBP~jATA&YZhT`M#L9up zD(-O_9|2KINMa4)UjeXcy9CT7kn#YsHS@H1+t?X^c^bKpn;f8&+amy7m_o>$#`0+j zIE(;T6M&%)faAJIEW8}qcsjE1thC828j?4UQb6j&F%JMZ{W_-n$WFWrU^p{hVT*zj z8^`DNJH;WNq&D^*0eDBl0{-U>0oSJfbU0!BwY(IRC*jPc4CO?K?JJ!kr|h%K$R^&Y zU4A_USZV`eI(RBfCL@~;Nvs{40qjpM#(=^Rbe;8AlyAJX>6C71k#3X$hVFDIrG^fv zA*7LRkZzEY)-PQHNQZRiz`)Q$NJuvv&U)Wp&%f}jXRUjG_S*Z}-PA>dIGz*$dp)={ z9qfc-QXJpOjq`dX*>_Ia2}tW$7-TtIN;Ktlq%mA2AMqZo{|-+VGs%k~n|%`RIOnc3 zZ<3T&Q{o);+F31oB4&KzVS|QWve`p}CWJ^(HF7-Ej*BRI88i^QGCRaqR_=v$BboW? z&DsRYN%=7AnZ{9X@$vE)%G3l?R>M@CAd2L7)G6Ct$~Kg%**UhMkN6pd-FHmxGM;E! z3%GZ4*dA?3^tP}pZN^0PCj4HU=<8ppp!h_T6}-n1Vs5qYr50ic&Xg*HoDVohu01`f zd;XWkG3_F8Mq?ebHNL_1SqZ!rosIL-oR}@p`=$ydOCxswtP# zHQXAbne_kE1~1LmwI)&X`i}zx`5l%!>$t#%-}m2B3WdM&N+1QuF>$MK74%`LDdg-G zlfEfdL<_l*8p7ehHdL@}P zwSZ+w^%7cIfQe0VY?KxBhiNpaymNTn7QU@t=s`d$bI)2XYFEenxE``KJ)y=fjlU*z z@dg**6)DA8pcMSbJ^I?Ms?NYrohBr@ZsZpea@aPJFzU|cBFGp6@Up0w-=rrK*|bm0 ziKrVY?qxd7B?WNBg;)HEN_mP|nA0z}+1HPD>TQX0QxOB|H13%h{cyCpi-g|3JKyUH zhYEjyxIZzr#=k_?74HXO$8_1qi)^A{J)Z>8pOvv5a?%att8Qp_?Do_9{bh3}abEGs zmn!&CFsO19Xn&S5>5H#BhN8;|>Q*5-t5y9(-R^}&bRZ$Ke@l>&r=CNdK$&sGxLgq4 zQ_##PzP+P;BfUgf+SofM-Td43X#D~KQ>J-gU?ry3jsp(;Kr<*~_o$ZXN{r82*vIwN za7U9xXcY}_6LV{0!=HpeBe-0l$5g}bvpQb9m}xlL(ulaimzmO>Pfc~0P^OJ$Id+Og z;q$o!L0!Z6cK$^mK>}Ti{+Bad-cCz+h@vUcVHgk30_u0amJeA5i?z538wkJ2oVzJ8~2+V*b5j^H*!I~wb1zsP9ygfg0 z@aeUKl_T%f6*qTFIj?@kzs`uwoM!#KJW@6no|Wc|N(OLO3j?W4<|sFuflzNE6Chpf zRR6olsiE#uLxWU@tVlwJiHV^VOFPeNAZB{ZbhmithpJEc?(lK7fp3i0j_X znCxr_C;)ev7&T|Zz3Q57jq!aQ9g{CZpVp=j^JwDW>F1%5Ol*bmhT$H75z0lfcUKeH zov3`mnOpQ;U)*i);+q;uy|xj(y>DQOy>8Nu*uB`HG;raO5%{bcgNM}WURmAAYZZod zzxrngJ)6J+f>%orko$f)%hZsaKPG~bc;7qk3Yq_3XM-a$UL6_zUuV6myG`-9uyz*4`^eB?t;ZyLcglFzjCaHZ!Eh2Zy>c7+opmZpuo(g=6Gw$ zK%MD$+2sZhFr}z2ffqNg|8y44&AS16u2H1J!x}{a2zEBsj41)tm zk&YJ=TiMn9f$yr@7_x=Aa|HCzmJxFaoSbemh3vSZsb7C~;bYSmjtl>$siCUtfC4K|Y9 zDaqkoSm3Xn()xO@Y(f~PV?ulET3So?X$sc^&Dmt#hCGb*U#dW|TP4Qha>hem@J5>5 z*9n6Zeegg#n@eVZ=~6D#`TH0UvMx~+lu=p*?*;Il&(zV9R`EArKK^jk6F-dYql60&17V~`wn<#uo;1r*I-}ptkrdhtoai?FX&_LLOvH);^lHS{zz%5DJ}PbzQ=Q7|8j^R?_3joE7ht}I0$@h_~57-;lq19OP7 z9NvOsIw{N(?Fh#3;d>up9A`3Y z-sg|^`ST$*EaO$SV=B|w>c;vc#v|9CuDgMQ67XbL`(YarmmQtxbau3-QsNwf>(BDNo&waO)4KT#^lz;Yl3}~TXGNtZprcSs zKOd}fNhh9lLEH5m`*9z|qq>JIHkr_&Hs(|MBadA{dmlYSKX}|2 zx*q#_6!fi(L&uToffK8|_CmP5PR8U~}lQZLEzoiL{w zspX9gc5tVk<6=!$vn^w1U5-m&)1u3h!;tFjzcX9Et1EWDhX-(5;8|GH^$SS*s!7uK z#*XO4lK%X>^8GRFh~b!bX?6MY^W3*TF965siCq&Bs|4Z@A zzh?cHlO4CUE0QpW=b5Xha_DcXUa8L7t9@PZm9F}~QO#cN_rB*Fw-siGJF|?3`>}~$ z_v6i1+mDl1H+{`l`?LHnmqJ&Ach?JX@McRI<{k8Kef6~XoD=Y{zqSM~XxW8JFU7h9 z)(zH3FFoa)KyD8@Ry+J{uZdn3H#hTEC4HT9Ue1YbziO8?*kh`QSHPb?ZOw}=RdWGR zv~YBR>deW?7E=R%?DaiUaI=|FhZvd?AB_w?JHc9~abglr@a*y>B=u?ExofwNy)cq{P%H&;hIS+-^1yAh$EI7zPT+Yau*( z;S6PC>b0`aexM(1RaS+L!0KY{A;%oevB{tu6rMa+m3rC;U3d0(IpY%$k3dTnY&7f} zvf$ZJQ-Qo?6?PC?@NjqCFF)rej;5uX6>{-&xA(6p$>^_VR@4{ECWZ#4^}}ox1kNCC z0L(qK@JHPoheAZD1i!#F#QFqH2L=77^eDfDQrU_ra&^t&KoU@pjaJ$ zQrYX&Mj97k4`tus1WM(EuH=zji z4NCegU%RjzeL18Q>C1ce~Hw^RB0!=H9r=x7%#)9A3^L=ES=mh z>wL#^L_CE-5-Mo`Q#NhkB<=|Ml-(iBw`-q*wDshIKxrP5Uzmc=R4fkTnGGny2dfV0 zHjhidu^nR*nG;jxYAJ?5;@WKEbBa_i=Tz!5y$j-&3D69K(4nl3eC)4gY5Qbb%hWfr z{2t5B3B0(G*2BOfJ<1VjG{cBJ&a|AcYMZ3P>@yMas`xzre|TTeSh*=_oT?%P#L4ou zuPb-_66>49Qikcf66)mVUC}_pAQs=_772c_w2((o`7K3IW+1*tFF|(ve{*O1DN-_2 z9Lh2HP1-3x)_ghizwY~w!;s=#LN!Gi2(pE^((i#Tb&esE=VEW$UrUgaUpWrtq1O?; zzQDV6aA#4##*4uDQI!&s=*(FeKIzVWVQ&CzOoeJ?0M_w%>$jW6M_OAO^{a1eFTmlQ z8at(hAINt`%pdM)po;~t;u0uUfR;gdq&MeENG~~OhWp(0mGGTsK0ot-q?L)U&YSb3 zzqlt}NWn+88h}&W*h}h!i1j2gaL@m)zV6$V3CAnL2^c}$rJ)TzG76XrE{`Bb6o|Aj z=Z>UFaipsxe<>szlpVjRv|IC+%@ewFbJp#g9SH4RFZq+;Jw{V=!CLP{EseUy9hU&0 zeDJboJx^VGw?G}F24kS$2LDYHUQ@nM?w9!VQF$9+n{NSO=I0gNK?N=fA|o;Xq?ZZ@ z%=1_2KSdHuR^8^gbwom0?hQ8V4@wnBXU?Dk-tz`4L05Jh(=@D&37ob|&YV%5y_Ca_ z=Ji^8iP+p!;&7ozDj2UX`NYP2KIqG6gSl)#rn2LIRlIGqZTU4kW(dP#Ep_}u6Hn@1 zHf#3?9fPGvpyxOlnCIv0XM0-K7E^ksh89LSL9tjz@F@c7SIZ~8Z0T)7bHbgyn_dFm zab8gV3+Ep7rgi)tb~&ebTG)5F{LRzmTv3iTi_u#h9)byg3!i|ECR_prZ~CCnih1JB zUw=j98R8_s%SN;vtIJ45kz5Tzq@OMa@2VMdL8#Q147H1#B^5CipXPSQ|I(mk-eH6C zqY|Xd=NL=w}tr zV?a$8$r40H2k%ZQEJ(WKYFPD7tUabrcu&;T_u5e9b-GBb8qDK94ha<DhAI?VH-<>KsDlLt zCzkQx23E6Q9c#aw)<(w?q)4ONIiEXh zO=sES0FQWgc8)9;#iqR!wH<0@RT0l(lS+U7OtE90gZpk4%Z&8mtMrFzd~LX&s#{5U zGv0YE=L5eu!CxwUvshI3VSHa)>N%!V@4f+d$7etk%W4*_Q}hv&sUoSd2!%Lrc7CS> zV~W?+8Y1$0okm-cK<@poB?RUXu2!Z$w?72GTs6=>YHDp$d2y2g_0WWc@7Ue$6z9>s z_M9OtEc}uK&a}=nv~gw^y^5M?-BNCZW9%2&@p)+CL)^L+{b?AYvVe)Hu9es-&WJ%v zr&JNY6465r+@j(5&87?hZMxLGa~=0V*W7RB;}%R`AkSZM;p<|%ss}$E01Ei)bW{hvoZM;pnHSe35 z5WkTXlauZ#a7E`2UmJSjEOaOILhT!14v-I0Hotj?U?Ga4gX~zyr$w9O*O2&V-QJf( zZ8T!D_pd9^+kJ~vfMpXB1=F*wV|g#b>@UOzR8d4wxw{EGe+(4#NdMFqT+aTho5*R! z%xFlg>%EA+Tefb=_<%(e3dS6%K`G0{8BIsHb}O6qj!wiWH`BM$_q9{z;cmYEIy6J73=+>9k@KX^;f{huqD zZ)DhX!&-53gL}@t%L{eD#Wy5v`QwJ9T5bWbo$3LAR)dM@pYY`{M3uj1fn-G%Vey5i ztdxFcI^32o@=Nz~wm2HZs47eZI95AP*V>GwA>dMA#b03fm52dM-;JUye!Ou#$PG8{ zsJ(q^a;kAYJXm^>(oYl4j0pI_Rs7|P4BgmaJiHw&INTW5^t#`A!H)DLUTt62T-}T} zuRKpzn@U3;w@!`{Y+nkQUMo^{Z8?Kb(>3_n)$+o7z3NAg6@g~ipQf0o)P(v^Uv0kL3iSQH@7ZFkD5WXA}3GQ zlbyFq`CT`5lZb%ET^Gbs{uu*9P-9f)8vKbSNZN0*|7p3}EU2;1D!Bhr9KO}Az9ZuQrTNDmbY7(D3K*5KofKHXI>EYn$Fh7KWL^uULiE))K!hK+rrsxW8= z?)%lD)GiQn4S`cR<7BX+(aF<^3*R>?1HZf;Oq$3&X|PB>aSZ-tW{fshmSIAv$HD39 zYYT6#&+G0Kj-ejxwgmF)+{0@ho~dAWU&M68F3h|OwJo+3V;s`gtxEx_~_LKzQv3_ zPJ|1|jp*Z)4t>MtUAdc6Jg%Cxknc|XUqT6R_{iTFrYcYrXO3g@wgz?Z*#UOr%5Zwf zs^FQjv@M~)z<0u!L;C?Wr5bbYw!#iF{A%iu{K^j4Ab4^`;il@@hQcwal%adfAwe&} zPsiB(A05TJwa+Lk<_Cs!Q2-^S&csSO1WDWx8p?xR1{2wu1fwOT#OA7Cy~ddIbGvF0 zncCLJnD!>E7zkRcBliPQI9p5OJ8vu>tXH$Pro)dt5g(YbP9YAs)-tLs<;A#6qFed+ z;*)$RN9Pu&Vn5=@H;dkSv)e$*WzoOL^KXCI>@UzHJ=kV>JC(!f|H}Hk-X_#iRMIS- zIX?KgMCUMQB+)NAPOg_}%_oA#bJ@vB&7nD8PK(o)f@3UHg2Bi!bmB9yq!WmPuLA@a zAg0sAXK$qxGnJ zYKnIlQ3#K{W7XTtCaZaCd#jhsdg>>sw+ux&3au1zv{7!72R}XpQRm-m7t{kIeH9YA@7*6G&4E;J(~LKG|_fBtf6=A9(V5|MCBze zCk`6e!|`cy7wT@~Ja>YpE!Dlm} z>6c#s0Bb}Gm>V|8uX&x*7|ZOR4N}Hha)$W~ZO8XFm^qTw%*wGtfrdIKu!G+Xk+u|_ z1LY@!7xLd8b}WQ8JMCE#!^FOdH6w1@&3|rBnWh^~d3aI&=|hg&nZj(MG^T0uurB_# z=5aB~H_}r=+^kK)XUqJ*Kr<)wtT_^Z-2$Rv>rzRY8F zR=POe)BEA&_*EI?HVI6=lExbwLLzR&z}?0 zYEOgietqUq0M`<^|S4g?q9*s*I8u+Eyy5V2lujZntb zjS|x66v)wvz>K0e>%`+(OVX}##49xf*!+5jBHbG3B-O0=*S)GPqCMwH zRebr^hba#m&U!Zo-$UMC?jax0saV2VQmS{`YoM{L?qs5J40zfkL>6GBA(2-->w=G= zl9Q|GHrxtCUwb8rjoCekC>1AP^BP%YHVx%Zuh~q{$w&qa7!&`KJkRbeLE>(`%Jv;9 zGOyIAyT=m-$P%T5{$2^@@Hy>>dhb6>4j2Ow{OL~gl(j_g&7@4$ZiKD$}wFd z#y;}p5gKyDr5>i8@mRwK5^meI4J4e%DPZ!*INyX0yKalVGAmnkh>Uvnc^MS5{@61q z^m(zp*m!U*r2aSVZybOkdx}uq4&B(K!549&90hTjLA8fmNQ+rOBAtyiD07J1#FU9j z(-a4`7zcQJF;DZg)c8#?!4*ZoB@LXn#eBTY-NPZl`OiAK@BYV!E^~>GV*xSSQKn@M zEa$$_AeBhTuKlFwb}9Y(S8*K^$>-`e+o!U&r@nMtAif|p1g-d z8=tssVdP@m=xx>v(&Z*B13!u-Gzf1hvO*Krohc*;Ow>Jo;&ku?3{2TrX3l-OZDDhb zohg=}FOvxb#(kOL=n+{#18K4Ti~Hx!5T3jRqwyI;C*rjI9u+q@ViWbGY5$BFWM&%7 zZ=cvcue`oJhgorh=gm2ZRf}UV5Ytt!3`|2Sr*%v%8G=ZJnrUo^iFJiB7U3F@w0$Lf z9^vqNpSmaqv2C10Z^ooq3)xk|yd*t|=u+j=-PZ4G^JnD2UsUV2=#i2?vlqxKXhHU> zO0w4pW=(2KN!{r6KJMG$GTL-XtP$oDI-B%n`$*fUNxieCv|HdFSD_&d?W${>JRf1mMKIhfZUH;sh>Dk?z(r1ExSGTEWl~cJvLF%T1;ghJkaEh&w?qF`;FN5Q8w|! zrqTU%qm4^vO9?P4qBJ6b^JOho=Kz*a6w` zE#99~ab?bvC0_Z*qLe1C3=O2dYopfgl;B?>(YJ1>+nkv^TtWXAj}lB3Y>p6#<@+^@ zyVf*k<3Q!sO#h77RBvs&N10C+Gx`@ro{O(Rg(~xJracz_T;9pqAM{a@Kn~%qmLrst z%fa@uSEbZTY)j-|zn{tr3y1L1^w_h!+Qd|kbz65mP^07K@nP&i{ebkn zaWHbv@yUx9i0-jl&DwR%gco9y;P~aolvKhF^NBag>Froq`P?&4{cxIF?wruJIKfY% zfG>gCSv4!RMu!P^g`<~UK3dE92*h*Mt< zA+&S`zj%_?*Xv(Z3pB!5ERrc|*?#Ea+VhKsl#K(Tao=)} zQ)FPL$VhfgG#R2WU#1_n)SH)KYFxCN5}MMUD&jMb9bueJnb@&lZR$8|(4OHj>%y4x z?iShNNL5AB${z?=x}vf`Q5ciV)@l~%pU=XR;NqS-o#CtsjWaRz{=KYk)THeNsk0+( z6lt4oc-}sLo4wIM5-B1XJra*A3SWb)O%BDgEF?8$I@B?<)d<=d!dGl$rxBS|m> zV|9m^uNPN#<&pxdfAsGq3<>q;3pJTDP9)LZkx%Dmt4LW5elUvNLnnGuPG-lQ*I7(t zYv^b;sFsqqtY{>E!F5qwZy(LWc2GdM8W}v?fa2z@Dn6L`CN;^OwKg%`JoiZ!d%oOi znSS8HaJ>AGvR~*GQ+cCs|7T&~>MOC2d1v!A5+M@XeV)8Gk73RgnAv~(gj)!Oz}cN%2@1YZT4 zVPK;_?i61aOT=|oAQ9>Z2YG)+En!)Dhi-WXA8)Esb{*rXtSQXztysw>u9LPBzTk#9 zCoDJ?{?uuk#=j6*WV4*k>Y8eqRyAeS|5LVoL2*JzGYAx;dynr}$J#1a%DK@7sybuv zh5U30Yi~aPCUyKV0b~WxYaZO#-m#Mnn#;dD8hL=$*J~$4tk!D%w}P{EyO5S7lFP_r zkr12C)TTpY6n)5aqU=bao_Aa8MDxsRW!Ll?G?Z{Ra;A5_-o%>}u)@_pp5g1^(&KN> z>LsIUqCTF7Cp|x7)~AGZgzWgHX~tJmRY{o9Bm&KU2cX2}&Wg<(@A+>&y{ai@YK0&c z=S<5$Zh1Ekbmh#c&RjqUT|KOfm}<^x5*`~}{u!+YYq~-;)H&W<7^nb)Un=n@S6)j9 zqe9{j-)`FjA?cfsC%}qDk&J3}c=ZARZo(|j>gep$B@-CMu+n{>QFzp7SDQ-&Ghel& zO`iTlkfD+Z-4CZAU$(UoyPU&4r*PAxDZsU1-P6>3_WUzY1`9S07=Gvc^^XDJSYge1 zpsnqF!k5XLwL)c+*ml3adbD?+T_nB!%NL<^`0~k=*)!o)lh)7F{JiuFKlSX9g2Ixi zCXj?JFnc_=)Kzh%>&Hp@P213Gk1O*JDrOPpKaQ3sIFx-Q$@xuUMQ?Mz)XO5`&{+rR z=NE?}HFx6nl34@bx?P;WB8F_TTJy~b$C^zfH) zvnr>|YZ?R3%jKvqrxp7jhIXY4hFJOCeaI2P40!iMB~=7oL7@z9=VZl9xsZdQXXIx;i}~USWwjE2QI?MmNO-V}s1Fca zeK{ubQex1@-N8IcSG+L6VQ@_jibnXrI_Uzq@ehj#70rX1ei>;6a@AC1+`hm%%O5b> zrbhe}@O$=j>!WK2_b?vwt_sKZi4t42%eU2$9;{;vy`5{^G=e9?wV6W|HiREdOHzE* z9yjNd5wV0L>Xg0}5MD2?!DzWY0@XztdBJOkEp1v;`IJCN2jI`n2l5}vW`g;YFkRL- z@3xVQ(X88+29v5(#LA#Vt=b}t_^u4nvxa*|8~XPRI5bF40`94Mr_WqT_ss*CCRa6K+`VlmX8Q^Bvak9+3 z^ZzPM6#jFU97NaSy)(@SdQygQh~{EHrW_x2*^3w6_u{B316;j8d{|-Mgv?NO7#-#miSAE#t(QtIOptOtwGl5@Sjd%^x zf+eM32T#9t5({9bcM<9Qrc0MOi(dY>y)S~aLEq)cnrQ98jxDNB@o@`~FvK@7%pay`L0~pAYkiL`0x#Qgy4FO_B&n*aNbP-Z>w(^>-KA z8tACZc9L^naCC5N+va;!CHb*c!uPD` zU0(9P&ehP1`GWw}Va-m@r;I)#oT67u!<> z{CM>oYboM{r%*`xoC(+mSUl&emk@4L_$;pZ6pb|64@G3W?bQ(N5+=&g z;Y{7Ip><}OU>k-3Hgl%cmV0#CO4QB{aXcrB$YMb@83mw~TAMwO=XCrN2Xp3i9;$iM zDM`fK^hWd4N<+Ut$~v{H7^V!!WJJq3s-zZ%8a#1Bz$Dh;diXcnjcW+Kk7gxmFpWeW zL+M?_>)$A~qs4L?DJbP+-8LS$J~fA9qfVQeyx(2TJSHAV)-X|2R1zp3S)#r+2g68y zyr+?1{``b9mH%qEhJJC^6sPB>@E{S&#Qu5&Q*8|}(Px0smXg`F6^DEOdO|G1Wo2{ugvWAhkit`j1&si;MpkRM{1!L5WD#_7?Zew zjo8iweg8WcFZ&vdBJs8(l*hVVT@})F^Xu){x69m*Y4Hd1g%U}XdhN@)t zF26b6|Cl0(!{iDr6@;38{8!?$*G?)PB|#;B+-Sg^c~72FLo8-%NPrqLC*w-i!Ecx~ zTSobQ*+b{hd|5Gjxn*ithSxt~D~7Z1)MgYWS96w)!~I(*351hRD{Iiuqb{%dvUa4g z5ns<&EBLIhV_6_b72)1?LDNRuLrrRY1I(@=HY4U$Nh`?Q`}A3C+g)^6^HJ%Ox*0%k zW|C^7mkmgwZpi$0K7=@-yj|SnyPJ-&%z@7Ko*41k8|a8;}EL$bIrvd-jN z=)E{}Nc+2m(!rp}__(x_xdl~avoAqAQw5*o?lb1(nOT@_W=kLQ?;LcM^IunmoW52(k~CgxPXrB->>+`xoeXzV6a^Wl>B-f4i^S@uSU52$yqHBT(8b(g53M&c0T~XjK6Q{~#KKTQR zK8bS8$;=K4R$%hM$2ONt&q+UM+-V1e>pVc*fd7^iXj2_gia^o_6#oOJiI|o3aej8v z;`046U|hak0yJ56q@%MDS!lPlh}B{5$R;|E=iSfz6t&V;Rn^2aD)Gx_lttwkLnlwy zxr|tdcBHWKhce~E!dQCuXC)EdROt zSruLrdHdVsZ}@RXL{!I)JMz%MHm9@RVfaBHYQ2UMT69?16?S1}Sl3A-LG|0osp4!z zuT9dkJfD`gn%7A&Tkt%v6TE~5Zcf?lBcbiAaH`f_jvXLe?FEeT8mym(=8>u~($t(E z+ueKF!12Jp2*4vI4(B|}FEQ+8bAET;ZL2;sUN?7_iYZZ8Cfa?rRvG2J+G7VyaN)ZJ zNyDps?0?GgzTf`j+b1`!8qHMim%~OF{K^y&pxABN+L4~$c)sLD7v+-b#|1T6_*V;# z+Q6aqt!Wf%AQPiu^Qc6#@i=4pV6`K`ni?+`*MuC*WC8(qfs^Qk=}wnZ12gu zX|s(n``M?{YzH};7%PXrCQsmTa z;`-+C^>v)QHL%PK8A|}bj8ie;8o{56acvcmo-H%A)pfOQ{M3nsjBKq zDQ}FVMf->3=`y5-{`QzA5odG3Mnp+9Nm{iUPpxs^dGx`4wNk-*d?0!c3B2C-#p7ko zFzbV|T;{(cK%B@ zj#{kc7Xb3oLWlEWo>TVEU->4n4uX%WQiO%TaJx+K?99oj@Rej!H3s@DmXjP5mZ zgKmjs{>6LKIym~k<^c`9TJH){Qm9Aj`nyZ_B`h%hJVUH(Q37>BrAJQvq6A&U^W5iO zf}_V*#_af7dUtEso3QWD=DoPC<0<&^Lfl`)9to5uyS>qf!;XR1o(?^6<#T?7gq$rR za%pEB7It;n_=h_lc8dfiy~2`5J&Q@}f8{V4oy z{t2%=48l*&h6nnXfGyz`dm()$F;=#|kamxb46Ln{lRoGkcU?9M z&}=Io8vf&Dea7&uM|NG)Nob7EJ?8_peti2{PirH;v$UUvb-qh7_JEbMzT46CN7e5E zBU{g7v`>l_$B_4QN}{Ukj?3iVer?5x#d~YWeW6}FBcq?<DbvzW{_KI1dQMe4C9zw2?B!L+L( zvnHr<_oespmwj#NYRT&FiJ8G*LoEBrkaER_x&B{q@#B0WKYu{Dg^|+< z55}SgSOC{OsPEzS|7uhg!s#oQjNzLHJy-X;(BFZzS5K*{$7b-;n+4|r$-15YWut6Y znMeoL-e<1;dnUU2_fRV7_uSFpe?Ohy<>$2K|ImZzya(T3mA_z79&Q}NE7!PU8*N z_|%VNZ7_NAUFB}>ZJK)ezZYfQ0EO1jv`HpKUvzu46%gw9CzO~7rkg_i;Q3#^GRv@c zK??-s9UY{#*h6s*G(Ua|EuvC86!*l8C9{VVpra{!?dO6;XH^Ada!;0S|IDqBpd1Sc z@Q?6NDGJV(V;(@);yYpKm*zCH9%^&IcCs>3d#MEq<`=OYA>O=TP|!^A&0nKv)k|Ea=4I^ zLqjjF$$%Gd*vTzr!V;5t=KVv)}3_CyEZT{E2swOv9vE?gN zWt2*0sGYiPACK`*EN=onavaV@e2|p6SH!#Ns2$C=V(5BFQtTR~eRzXkmhHR6+1=V` z2T)pIIaea1jSsj}660yX?k#M2_|HAOaBEX*S0-1@E^G?;CrOoR=-wRcnMt(#txC=l` z{+|Om7X!qCM!_;|YA}(DmLGq}1cNygBC{@(_ara!eX2pFRjF~Pc-HgFXTlPBg?dg) z94DeLW(I_Xi^KKQ9dv&^GL^;VS5lyjMVgViF|)5Mv1t}K`xMv@d;sGp1VYMHt zeIN98SfYPfZgDrF0cplR6uxTbVFW2BgiSDLLwkiZm}JN@um4?VeJM9aliFgR+}Fj) z*O!%Wi>@i3O_p*yiZmv(DCw_CqCuEMhWv?3iu`6g{J_-Lt|@qtuD(f{QlOuZ zC--)zjx-aGrQh$S%31<5$$@okbpM_v{H}hsNc=2hJE9d7QuueSZ(ORa$985=r5uir z*d?STWQm^jeO0K2KcJ)LM|b}XXn$_E$(|vLp}w4By{B6Kf#Ibe3M`*Y2P+{s_$CKA zt%^pN+N8Y78^Wc$YI$4X=Mr!0E-E+Qy=p=oxd%;aQwddls5l=%Yu@pNXwl1j2j8h& zMsXZio5lyM=Y5Dcmix|q@cPXlM+CvUt_^jpAR8t^Y zkFlHXr2XdK2qNPKo-#Ud>m=R52k(7l*5r+qs{n6klu4jsCd&qexKm5*PDv~_Vr{bg z>2}%(hQLUA8A7!KT07KYiDko%@O2ilDBDI948s~Wywv`iVwa|*oeX*_RLN6sbee=4 zIIrh7va>_R!+K>t)yXVnX)y2WzaB?;_jNX}6w-QNLq>hZ0s|8%?a zX1x)4d}%yN-6^z62@QmTlG#{=s*>mdg{E4XyvBtE6mHjz7D|SuT~J62ozcNuW#v_7 zALsdh2n&3Nzw1q^;?0#{3z3XCUf%v{$UGEKpu1?DSoNdJC#tt5T|WBFK%E=4tBa1F zp2KXK7l)vuj{cCe$ zXQ1WI{Og&g6};mDzUz#mY9|v@u&i0?LI$OqN5S@Of8&RMj> z_EP?B?c`S{db!s)CddCx7#-{j4D>=AM;hw9>e4y49A}qFX^l%}%F&^WZI$DH-1^+l zWY+1=<6F&{@_bH`&5WA#YF>jKbStOrKeIL|<*#%4a{K(9;iHsvC$;jMJQ-p!u_(@R z_mD$?_pBd#^o%4d{kg0)Vhs+V;r^lOqjyAwH zj8%&{7kBPUWCrb`DCN};inQ!fGTmMrZzTGFJ)(vhKfa1)(8km1LmXr}9ZhU^oWjOo z!#Kw*EpdXIFGzaQ>7AKTyD2PNPD#+)A?)uOOSG|xvj&#Z38}kJQ6BWO8dz&AZnw5#aMx=whS|7T^DJDb ziu-7D@L0+%;q7`Bb`F~I{Dh-DnpyDsyE-ihD2e+%3n)XY_USa zy-xSf9@6fyC+R$l5m+OuZvPR)wls}WF9}^orPW*?kk|CNG@wZyR!@0fysk`AVSoQb z6ISkybQrnvwf*z3Hz_`V=M~ZFEa%6z{~b8S>oYa&#~1t+sPU z@3VJDp)H-#FvE7or!r^V(UDCABRj}Elo41`m*3x;vs{R9**p5nuZD|30e?Pk(*taA z2B9{`>jA+25a;;XY=$kheEP)5ao&rpI>A9gk?~|`$fpYd$EP_m)Ky~x12J#!J)`|ba)mcQf*|1#~hvLO44#kQ? z3&kA@6ev*K-5r9vmEu;47b$__5@^uk?jGEN1q<$fp7o91f0juGS?eBLIrlkxljL*B zC2?nBANT&v%vX$$5f&tDPhU_e@h=Wheox1zK(l6S?ic_|?GCZmvQPr&;U}N1Qnt)p zyXE`Y&^&?5>n8fTy647?YIoeaX{b&oUtS?FIvI_=5;nmhE_efZ(%uME4oMk%aUR}I@O4l&qc2(-66Lbv6fBfYWQ5PeIwNa{p z$!!^|PN7woWFq{~g`<~a$!AHA;VF7)Sc*_v)uU>nd<4?fp+dT z{uS=v-H1@PZ!FW^H!y5m}cGw7l)`(ZldTR4=;}qu*t%L2~2YBzi!eaWKqFE*u zwTEUXbH-tV5t2p?2T&*|rUlq6I)={k6uedSvmpk|`)P~Skxv!m*MBPaL z;=^`&j+JRHzi%K7GF|o+mkLG|N2UwpXFMJ+lh6vk4k|e#OH&6_p)|V}N?4QFZpW7RnM(ptkCuQ*3=NN^JX7-=a{?_Jj;bshf@xpPD zHh%5326jt73`}g9kCsl%&K)G=g%cz;A7oD7Iq9JH|6w~Ka$>G&4Hssz>G--v6h$7d zvtj16_?aP17ZYmWmb%j9> zF-6;M=V?t|5Y^`whZEYplVQ**b z$#GdC*rE?wK1PW;VtBR;a2b`GPetth(z-hUfTU?S3a!TIRv5NDOgz=>v0qn3vuQ- zU0+T^1lhN9H`hC>iio;5X2287HsJX@4Z_R&A^c;N22I5or!*fpHo~PPK65+rjVndYtnp8 zVo$hCqbNk)2NT>D^HW-k;cxZU2iJF48kiJo$PUDVj8YVCEaV$(ReuTik@h{2LN(TY z7Jz@SCq7b2P0TSG*pg?4j>XDwB5znspzLu-6_at&AQ`-Jdw_^x@={m<0B^DjN&$kx zAfr26mRRG+#HjH>v4sXVevq3#_7^WM>HvWIR(1#_o*%^{`{_qdClSq0j1y`*>>I7g z-(&9}XTQWIvKDXOe>f%iMQKZxC*O8zG&E84PXTFWNsrak25D{`&yO{|x$7d^ zylcvvNtEV7XkkIxN#Nh}LY9ydwcK8mvA^Ym|Br0X!=;Z%Ucmf>{@>_@L~5*!e7rnV z`n=v_G>)i!m{_u2=znR}_%Pldl@Lt$uhiUFvxWwl=EyR&B9)l>U-nR-kdPsHuA$nE zmqtZ>7bO^^8?#WcMRNDEon(F8YlUG>ec>_?MU6V?Ei;0b&au_2>1FZ8e?NSyT!z{* z%2YZy8P^Acckh%x`s_F17M9Gc6p97i#*^@4oD9(@V;(dSc_Yu8(yX)E2?aTgTq=Y6 z^DD7kjlwkb?M9G5pZ>{p@+Ff(RLHJWuA9B$4AggFfLI%bF$-|4!@g@i7MbmvMLA?!3GXO2@$7W5@!?w(sbiNKfN@TKZ}p zMDNdi4|xnU*&~E;_&X)j8rt2L82Y&(u@m`g#)#me$o_o`3Pa37I`@g% z*Hh6y65g$?E-A^hrqaq#GA;~q(?dXFeDuxags@ll>BElbR7B9un2*u3LD*qxl~HK# zge~)HVASF|^)6hEw}YZyY38!>IG5Nj>AxzJ_r;0bYZy*M?BDQ{6-^$_g0!%}YP)y( zDsr>+%V?2{|;hgh~wQgRht zyqGt*>A%q&s2Cz!80XtW|{2bZ#46lwq0TolKdE7O=Kq6ALWG$nQI{b;LUe3}I zmTlg%DmfziZ|}=X7HR6a{rl@=NbFGQ_f_wdjSkCZ);4Rmj?J|uEo2O*-V z0DQA<+k{x?c0^KY*MD2X2>`nbS80;_X4pqqIgxZulckVLR=onrM!-tN&j{J1@X3hVjsoDjN^ zLYAhxFYRMJx7mNVI<7O2;H}tyFW6w!Tz4m3S41-+lvkyjz~%KPFk{JIW4YQC-;c9N z-a4TFOVaA$!Jc)O0AeR;fAnZKcmGW_ZBNf-7gG1t#OkX5d$oXW+!`XI&bXQay$+iG zCClwR%HFD7hCNUk*5S$b26{aj(1S*b;5)a9P}Dv0{v8&a0D}Rm`i3 zt?QvKX^i(&l?K;Vez`E}7HjS;WhejCk#6$t?$TW^vJ!--C)tRcPv}*6XLm@Gzv22@ z?dKvCALW#XPm2Uu6y6icgC~8678r`Vzt$Zr6e?&@*hQ^h!<`^o1%2?e`bS-c4#f@pFqk0 z(xQh1CLJJN8e-x&qh|79|FqUTCV$XSN-5ouOOwxJX6%E%?7CLc4*)p+brL)s_?x>< zIGx$hm~&yC{e7|w)SL&pp9bCh{?O>R&fA|RSgfw>h5ArFDKawNrX7Y~&1pCpyq0t0 ziQ{WpQ)|pTQ3H|=TkZaVpW`SD9{|iP0#nax66l%1E>N6{hf#x&2$Nqvn|l$+v`wGD zYU%1+Ky~iPA>8H43fRvA-_n09cZ-%>Y$`7#^)M7axs*d$8t905gwC2GoMl+1|GSuH zvT4u7E6=F7r=%`U?hAc+W5lQ)0ADN0Pw4)(YPLPa;p{TG5ES$;nmJx~$$u>@PZvuW zB+6dPx(Jr&YhtLOcv9I3LOw}JOq#Xn??Zchziq-iUNe=UNi_+-{gsPvxDgSSZS{e3 z(bnv%voHI45}Y;N5lUh;8D31ybtuq(VdntyAmxqWJQ%8vriec;O8A@o%v~#b zJRQ{&>N9zq9bCZGH9~rk+5d`vI7@3sqX?`fLM1@=-e6FDQq@a7hH9q}%IG*I%XDvi zM?(Zl9SBgQv6Rh8jUUl0lqPM#rC#K_$$TZIbZo`#(Upchr_WpP*`gm!gw+Wc1+7ID zQqtKVG0z}rAA$hR{0UvODH=Sg6R>Ck%bZ1al#vCdJGngV;?zjsO}|$QJ^Tmbl7;m= zi&H~Hv4sXcAU6z(vJ(8Wyi}x~2{EgW6xPMLdwt%Z@V!6WkfIT+Uz!-u21sn!*R#k-q>H}k9%pS#O* zKL*FCLvfu1Lak5T)d2U3$l)c=I6|QseVnzh{3Ci)3-+X8`NGzJJWOU5wmVnFHP2J| zx1(u0McC}FHx*H&Xb0ELU4vFl+v{S0uE*yyy4PEqm;u+YVnp1WCjNXD*Y5jLu^RFc z5%h3ea}A$UIk~gS(WN^+yf5Y|2x&Ze@M#inYueuYZM-ht+&8C{b4pjaz8)svLK!Dg za)&GCfy&ZdJ-5*0paWQ)HMXFKa2GEZUGcL+iK z7A6a#t1^Vca(NTdv_Kc!cvFD5#Gg0mVA}*QUBS0KFLNDt+lX?CEOG)=b&6^lAQxHc!o2M}^G?}Cild~@pT{m_fQ z5U>o(U%Hx05RSpDNa8^{6>3_x_q4D+Iv!V84)FXzh4W(}^nuChvwJ>iht$qzITAR? znI4<5y$&5|m(&V~9N*kC1ObDSK~k}2-Q6pS#SAu2U*mvkE(cC1|3*fYcq+X>v4jwk zvt6|g3@5)(jtPss748)+(TgL7m(U~RH>@*VAnzS=z_5?j%MH{7{^}zxk9RiRSw$P} z!6FJ>Ekz7jJfhTstY@33IzUW?z6ZTeG#*8f+F#^WCkJ>?F6$-^oOX<=IDpFOq0rDsfR)Uz8f*3j5v$*xp z35Q-ug&%>N#@}djrB{S_g{HGFgsYMM5KB9F&*V>qZ-Q>HAN}58>J8DURHO2@ zM4~`JY`ly)LOQH~?hyj{BaOaub5LNccAI5MnsJz#v8D?Kd#+S6 zs2tT??TNI67qq^YALU|`qL#+AJm~n@Jd#AlzMn#0YSIzwx6IOhq!#|G;Z;1#($HBO zLecxq(A@J!_MPsqzkPd`LiGtWkYBZ^gk8NcfA8QV?8iP5kstQCvZZi&7*q&h3}R}f zs&BE>{}Ai9nVK-A3%`N1Q>$GMq`D&e&A#%oB2*CgrmK|4#!A-po2PW2_vz@etWb#U(a zLs|Bc{KQ`=wT7mKxNuwS{tUHYt(dZD47?kyJw0IWzGt6a$LAgQNqh!Yl97-0h+S`m zT1wKVwn3(Q-olqB54m>wr+Dia34D+nlPlHmb%mQAEU_#^^{%hdvQ2u&a+hML%F}?O z4G&%cPM6ZiA=syR%I7E)@h8t9Jsv$yXZgnko*;)J^S1X*x6ju+rpSNa9(! zJU(RP6+Q@i=Y6?hl$Lzc&vw5*HGtiqr$~IaG==u6pdhI713uFWv}qS8`HD zaGf5|FN!<=UU|Ph6|ygB88pjq=Xcw= zvU1``w@nI3e;7h9#)t1fG}!?c3+>K{hK>NCrd7JpUGa;%`DtgDE3yZ_nZ-E|bH|;I zBJpMGzDHABzUK#H2gUx$(vEuZ7XBoE!+DkEi&aFEcBf&al1A`L64Y+<4b`r$r(+iu z{Jl~Wwr6nyM^xmb&B(BVqEmNZk_4YgbJHXPl?M{v z4jSQbh%nP}SEU6V_%#du@_Hvc0JRFJxOp_L83WQVJn?G>+w5g1^Q zlyBU3Ha5~%HVnT@*zH>TBR?jf{ISA_MRy;Mf0jk2BFYdJkh7$_A7(KaGRJ26FU7VN z90wk|H33U`5rK>WP4Q(lUZ`1Y`kqmh?`=}YP~zv7i(2|6R=)7uXS)}labq8AzSW)Q zJ568Fb#VVFJZswAWD&@=S!Hpld(_|5Gi1;0Y{Vt9e75$c{ayWlY}uP#WcJ;qo}i`F z^;#h5Hdh$|!WKnq9yqON-PugK-BuuQGtKSi>jmoe;ybNL;qbK1cjB527xyovCic9y z!AQhS@h-g9T+hBAekj^9VOGMYjKRj6<5fp^C3qL0~a;C{e*xVDxj4f>I^__vj01?}hUK>1fAas~nTGYd7`%kUn zq7v614oZKyR%NT=v15z!1jKN7n%fj-bFt@h+@0AmTDv5$pz-x4pN$Iiz%7s7Cn{_j zLtb#_{imJRU7iL;y48P-Zi`GAh@%P~S9GnA2BkwAdK`CCmN$0t|ETF8yWE=AXk5dRYv<-7~(o7c{ zdXnwOC0h+~f}uh}@mzoE9<|tZZ2Lg-uwi8@xYFciwptKvTu(Li&M3%+^f-;B+|Yp5 zeUBlp>m>fwP_i8jZIRV6j#rzt$zUxLb|3JO()yjc2sB$8y;Lrw_P66MS{k=m07|W< zj=4aJ`&cf-?Ba)6+4#VT8F9J_i_K?l(&^VZ@3-3DH5-KEfJrn@d=~pvAo&w>LZeTc zG#;}ywhnt6Z)o115jjc1eI`M1k$0&#k&iS*N7z+mU=W&QS%?a6oZun(ev=G8S6uHQ zpR;xR+x-$a{T#!sdGCt+D)+(O=L_KrXa2ET`$4MQOidvgBrL7k$aM%VXIc#FX!|H| z-wVU^&cK9xBMf6D2xI&W!^G>SO4N7wx87Ju?*fAu+93h$vb zMW)_G8Grxw+2&bd1_M=(V>s13t%nBx>rfhH9+GIj0EQNioC1?$sXr~QQfv2HbldTN z`dZa-(zNA&Q$GIA!HvoOpWYkg!La@baze+z*p2nYFI$BAYvK34STOZMX?$R4NNJ@Lx#Mi<^kdk=5{+-zT z0vp|QnYfFY*Yh{-#I*z(u+9GVZl0=0xM*SK!p2Yi)z05}{GL*Itkt}U704C~aG zF2VZ@MU5^Vui6vxB^JldV^>`ZASpi3(Y^CT@K*+!I=X?Ac@!x4&Vb5xvCQG+e{m-- zB}dJIZ-S5Rt86=s3WVsMK~E1=fJd$B5Uw18qZ}sUyD2i=iOLQUNaCyZbw2RAL_=#2 zhvga=s6>dZ&qODvXG9n9^2i$C`;h0n_B=%^@nqq;{y20Jd_TSxcq4TE zxEIpsD*3d2oKx^Jag7M%`z0Rl39c_6LR@)5o_jW~&hD>x058{htDX1rCnh1bH3iRR zKL5q<1D%U=tA>W+!IrH9HLy?OO)&vEk{OEqAZKqP_^sK|c3zbbLaiAf|8yEN6SgV? zWM?38L{e#Jb`Emv!`P~=j{ZWZjbk45x#^sC62A`P8`M*ZctbnR=sU=O9bk+0D%8!I zaFF->xCC=_94QHDjs4%b9P42F%8C}aZKMJzSz>5(it$t~?%Zf?)M(fBZ>~PCXoHr} z)+y|Q(fwpt8FTRwQd*p1 z%odo+bc(x%<96liB8cZ(GeU}RVa}pj-P;mVIcoje3j)S66Q2;UsZhNdWX~23oz!Z@ z_3Olx_TkSFu9I(c4D@qI{Dx#DO~w9P9K9}Ml?Pb}w%YXVbwyf^`{D0^@C$BGAwAlY z*HfXxiLxMQ$#gAI;I1t3meJ@mVXeb#H4+@UEIac+!FrXvZl(Sox1pO108xJ0UBNWW zs2pS{IgoGig%*j<8 z<~62?8IG?M%1J^vQ2(7?Bte+(Ek2{k->c-Wf~BWgSQ%>PBdfkT+~q(^;ayU~6hh-m zUo~1h{GGb76y34*J0gn#&ouN%HycygHO6m_>_r5zLt5X!otrd{`4MKa;R@-dTnrKD z_XPTEJ$-KPw9fs!-&ArWiyyzLC++=GvK+%Z?hM-@q&?I;VSpKoI*&Q-tAENSD*|m2 zYtvd{@Z*HBV_Tuzea+flYaX5IMruJ7zV68gs_MItat|rbRJ#I#{OSaH7gQPOZFkGZ z81ut+z#5Ls+ixpnzA=^H3f~d(Ma{YUH50wr+wZgXdo`rNXdZPwC4(xrsG)~7{AI8P z?P>1d16Fw({|C>_B|=VH9f;d;+Oi5rBDcNC1-j)ju4 zIm(TSMSJ|!qL+6L#RR`jc7VZFqqffPPw&X1!s>+F4$WbzydbR%i20H3>7AD6%zvv?X_SWI(fi)_~|Z(N5o!GTWc} z4988!!#p&RC(I>ny(p2!zxL&wWKzjEPlCjL6Z#Ve6Q^YbInx#@2sFtT$&tK}NViLSccSH6k-v?FIiHfh)}Bn;ut<(CW#fl4x9WS-8* zb+1L&X{@E&mkCU&NEgN_T65((GJrNj*6WH%(#cT$u7Hd)9IAprS%QFfUaEW}6(2l} zoc+c=!aNNHI#mN83$#@O5+4l~w}m=|&qlG^ZGvY}Y~2!^zwGD6PoM%eZS=nAVCBl! zHG~V=zjj)vsuVuqGCZw3P9_aGdY4^1cXVX#{&(F(AeiLld9COvHCQVjtzS3T(YmS5 z0o17dVzz1HI#k-+5m5VelgO_W7!PO$xe#FJ)6`1qHVwNvfo(fF)*yia5k{`goif~U zhEQKGcx_?jx4TZzT<*jCpgFkCI4Lk|yE%twX|^ZU(l5U&>{YE_F%bQj&Dz|no#GLis1*)r<{%$UP#8M7j zJA5zUPch*GEkBM&kMh*;@MNCW2|u*PyM_$nxH`HtTR(C;uQD!^UX$i|R#4&C7hf6x z7sx%KB$qll$OxzM?}hz?X&Em*TDaxxK5D(}i89*?TM{aTn_4IPNqe`+?kFCuv(Yr- z8C?EV19|)dB5a-Cdi)-&Z#e7;x0|xj;if4*d2P+@yCAl*xcesHbJj48j`wPEnZKH$ zXMbGx&EN>|uo@#^nk&6I^0{m`O4N4LK^A3HSW)eXtDr5DPo!(@W-(?;ZB2s;0Y#L$#QZmrhe7h z+&k2GYOz~^?Y&N~uS(r1K7bLKeAf&wYH_5l75-Rx7Z7Wlgze`R_QKy$+^%BvQM%v2 zOtsPMaEN6jQNZSBtD@r>>V<8O(F~uEV7z;Qdkt@lH!URcJf&FHuccO-(!$a&QCJl$ z@y9QmR%no%Q?5M&*I&M~g$jl}vDawZIL?Wz`$GkWFQO|q80*6`l~Pk101y5tK#Ohl z(?XVHxG~XG0%4K(xYIW3VJU#sI<6`njCnVvVjB z+2SZ|S~$#NHp!^~Bq1Y#K^O;m7Yb?CDtZLX@?L%X9M`6S_B>?aMt=G)dcX`yjmy97 z;|F-#t!MV${2PUsu$G-ptuzuD2hJHv(}!Qd`kD}Xbb^aos?mWSa|*v13tNt>Q>jIlf8yoKQk46So~IH49dk zRy;$LsK=%-Q!R;6IVZOhtj9W873Jp7zaeuxVD{uf{D<|VuGOu~OXTf6&Y$|9g6e%y zN|8_hlApCx-uhuH&O)(Q)G>Q~ZNER8?7O}3wZ;h21OdMW}4B+7TE>mW|;@2kO0 zpzajBfe`G>OM;tL=K@+gLTbl0BUU8?>wDsEt}pKpL&h;y#Ldkb@I00TxLIWlIEU&6 zylke42i}e+)&$osA0+{-nZu;AliM02JiB>^PRGXs8i0rs)}j zuNXS?ox^t$GF~Uky#1I8`2Q#HV{MOQ-V z=hAMjAD5Z|54WPN!S@x%9d}`|PwLn3WmDKmj3fl1=2ZieF9Fp<#3OC};RlLHT?BzB6ej=mazY#@*e}pe{|4VjI3s4DK!nczdWmY;*%Y!m zhf{HiV5;0^WI#y#0xkPi^PCf@mQQM8j0l&X`~U3bfpnE!20?9g9#3XLL8ux|cRLb; zDzDrK!IbR%Z>`v}PB47n?~&ii0JikbFGWNDsKul3BBz-nQJ}H4BtMy`(ynQdQ=kz8!6dXo~AzSMPYesoI zjbSun=0uL2}npyj8ByH!VlC}i!rN-W-_kqZkO3zc8f5>XrwBO9NnP3|Z@c46Mp^Br8=dTN!=QCCN$+$9Re1z9x|FOEM9QpuIR7=^PIg1sDY>~AR^tha<5-y}rl-~kej^m&A} zl=YJeB;FJ3t~*{jY@Oe%ig*0;9QO!6JHto_S%mPoB4KROfNbB0+(r%JcXxC_nTK9} zlX@F-`_jmdY9D6XlZYv33dJiA^9uDvMK1!63E?JmwZaY9ArS=fe8# z7LdR_cPOWSCOVo?-0>`vd7IANSu57kD}+Yp1H5_|ETkChCniL<+7bz4C2W5yyVxZRk(C;8k+Kv3&Y)PpP{CKg`P3kkIlvty8UPxh`Cs7%p%tsgBG z*Ql_E>QzhA{j*FJJLE%T>E<5_SBO(8FiOmkyK$+c@4B+?kJEnUc>2D`^*hmHd&RMb zEL2A4X{$@h3z@##3(8Z8PSs2a|F8~6hSYk61KONfy_LvDdl%=ne=J;F3n<2K3?(Ki zf1h?1aaRD$_u@x1iqS3d_XNU2g#zgmL@Nxe!j1O)e{^Vl4Ch~(l<1f6o?)!&`8_kT z7U(kk@}+PB`%a4~iFambwn|ke!P?OZ{WV~|Kt1sYE#&WsleDl1yOHb;h+;7v)9}6S zkI~F|j?t;_K7t050cMqSRkJAOlFiwtEXxt>PG6e?H}Vt>y&R#6-#SxIxS>7v%aQ!v z!+}_1??Wh3OB|#t?J43oqBQj({vc|Z#gdV=rezL8?O1J`K4l3#pxk7-?)i&etlLeV z@Bq^bFdwdFL{D{lXVL!H#$Las-)_!*sx!KYQ&Gbf&`|rkP4q{AAvd<+6lMj!@J;)% z&tubW`=HCnx=4aV4Y@29S)Q9~ZI4KnsQ|_d>F#g%JAFL}NYJ#1b(U+2u~IFO!wb_} z--0P49mF=dm)cQNQ~3j^-Ck$5q#uI|vV%F8w`zADJL@=crMLe+jTW?*cAhd!s=mzd ziUAY`5cdOQ+P$VbdTl;??qq-Iv~tGrVqxEdPLh8Y4QW|*GZl40a+(^tGdQo6+@%YWnqIqwi6!j1#sPbcxo7u@!U-!!bsb^ofFquADRq%wJ&~1(4 zi^1-PMLm5su%NfBB4~qVsK-TvAYTUOUMp^((CHo@tdQRIbN|hu^o!4IyKHGjx4WIY z>QE2pe1N)w&_rX(UDCVC$1Hwzql##{v--Yl8|>wXFH#bzMAZ>DOYrY~9)w}8$IwM;yre>;BTP9y1n^DX2=lMCIco_qaeBZ_-ok^8f zG(IKo{8?0Ig#uMh+~YW-)nv;kdisIa zT`gt97hn3QTuyS?zruNmt_KUL9Ok2TX=ah1ug0~OR3NFE1Gy64vUqk@S=B)%7dR6; zf#kdrii=_2d=?gG^fp-xJ7zFgf;2~L<}W+jSUoO(`pH`cC$3gcHaH~GxQAH!>;$$vu^0}fbPpEQb_%atVoM?A?q#~-(SN)fm!!G~9KG%~D~ zE-FCntn!+;1tUAASlDlQ%ugn7DLfi4bw?BG@7&&88V5~H5@ajd4APfyCDrOX7NY~f6bxGnlcE2ONGiH2-h@cPYL;Knje-Uldt`=%3uw1KM$wh-Dp?D zEEq#{ob-E>6*q|>W=Is@$EXR#jaarmoxj6rp&hX^g`IGndG;62v-JgY$w;p^__v{9 z{bmU})IpP*=zkRm2JE&bZmqj-he%2tS$N|6LTmbksWAfAzxa>`9?4~*>clsEyFQ%6 zGC~pa#{i6@)Y{`?pvI`C$3u{pwOE~X*eX-4wyZnk-N*?Zp`^n!gHL8q|7*(0Ci%~uFVWX>an?egZh|)>@-P!+9 zQIr;5{3A9){x1xFX+fmn4mKz6v_n z;T%<~|NVH2?gR{ayLLSxv3O6L>~=GItyrD2*VNwGbblS|T*DBcJBz@|AfVg>eF?h* z0n41H3|W|=7jt{Wv7s;rZ&#XslI4IVJ2E8KPn|3MM?{QYmyK{#ye+@0ugf?vA>F>$ z`ItynKZWPgD5A9WpDq5$6qvIs{>1>A4mf0u2srvp_QYd^v@<%+R*^{J!iH2S0#&n! zvrS2eP{|SB%2%?jX|| zq%OlaL7ui2K(W&Vq&VbX8nHdO|HhwE#?pl>dVQFr8iw&$p$U>amx|d6oxsP)D@S+NcmB`$j6@W!&&r44hGKSYt&C>Zwv*! zop1+f?lMEI?j!kG{p`BD94yz4l9DG#h{SdFD|+Gd7?=5m)bU(bNPVw@kS2YSJH=QV zLr=7XoGk*ycgQ!yhtPNBbubv5Z(ySZ5aAt*+^GfCPs?v0`=~H=`1 zZ_eN1B3aB^WyIPhje`!5WeDq)a0i4~KcOHHn6l4)hBTP{NVQ8!(=mf9r z8Q_hQ(T%oC{X{$E6sLCvtdlre{QG~U3Nqd&!XMGCA_L@pRxobgtdT4PehXT)-me`L z2>PNnruC7Yi^aDMXNxF+>eC3R2&nFt2ZMAn<~M}{0D#g3CU!h_Q0L=po)8#%@K z`2Baz`F=*YhM~nFqhCCI4>`AgG5TRIs9ddrU?@lQ8@rryJoSEaxhd|+zOu`SU4(oN z%Vh>!JDxtv9k<*|?$#S6vrgVHHTQ;n0_Dc8&~Ob`V2Ev#SlHpUKo%Q=7XtGd)O||c zwIX(?{fnxc>?&u`W7q5zLSXP=Q0rA@NI~Kh2iK$gkI9AC_rk@wsUo?*VoYL>zmpWn z%ZdCB@wdVg9wXn^b`<#Jv0_0*VnctX8vDb0m^)|OSyQ%@G}!5n?^Ku6n=5>-vI+Wg z((U7EW5#v-ZV90HB_%*>4GBAJYPtroOwqZ;#VQ*J>VXoR=1yLlyQ}15#ix}xCc8>F zIoXAAO#j82={iZ=CysgkX0Nhx4anm5Eoc+3rRqz$wj;KQ#ofpJ^jD0YB%-s==H0q1 zg)66QXL@LZS?`7X~Gp6W$f>{hV1V$%E)S zolA9lYdU=`5$JnJq$8JUQS0OJLKQpR_wF*I?_Y}vM9@W?_`SX_i#K1W$8W*%MsXxh4B6%GkYoCZGjk3DqWINrs zPtOt{;a#w@7i0~8w+c$2!<8slbLwPFU5W6!RF{wZxaYZR?F4mzWynNFvJ=Eb%!rlq z2u~S~F>_A+b7WzlL0*HJ{8FAiE*BWS(f=k6!?=YTV z#9b>Seclw*Q{H=}%nGT?3{zVaYBE=w_|ec+Y#AlKQcV8Z`*?rg&ywN9&uNx8K>`wg zdEjwH-*CDSNS0d!Oc_CEv6GcyKy9>)zFTl*7Ou7?V7L>`?St9>&eH^l_kH|_N6iRK(en9PmG#B=R>omTMdJSi^svG7E!44deK4OV3O+~iS$BGGEz@7KM(8a zhD6+Mq$OY1-p=q@feKHWw!L_BpVKpWIC)>{O&VoSf6zZ69vQCk0)KD=Y-DiT6^+B7n)!Nq)&Rdlon+N~-c+o1ud$L-E$1dn7Y@*Y8KaGWN@Ha*R$&YT7w zTHuJODrk%+Nl?MoX3#&{nYyqBVwJLrO|>&^$rMF;Sd{?4jvDYOmwChAS^OX@2$qXh zRS1cQOUE^#4b_jMIl;M@5*m{(k24WOzTkaQp@eIGEC+2SYZRdFHVNKLR^7h|NK~`% zOm7qUB^Cwqq)?|he&^e<_r&C!eKsyfg%z)!6s)CJ5x8jOz$L?K3Hv+4828i9d-w&BLs|b{B)j{`=m-M(-GPk)k8JaeBa#c3{J809tF7oLM zQ>(^&sQg_z*JOVqFVO`6iFPzaHf4l~OcYg(Znxt~+BIWAf6ubw9~)^CaD@7(tMmfF zL>R5GwmSOJxr`Q|Y-%Qu9_cf_QVW#a75{o8aa9yzXV|Ov&H*X}i|n@M4dtQs*Ak5%xyhn) zduLfT7Sh;xQW^dJqQ%|R$hBggrt~Tb^#J>)`3XG|GU?IAOeE6>t26N*BNNT=`9H*E?OAJyM3yag#>4wfhUb7cgGb%d`ODi^zL63r z5l5k;`ndhrDy@@06=E_bm(fECx>13FbZ4!5Vdh<&Gy3T3U(3FneZ?ZfJi6P|y(INV zPntEa{wEugR^x=bmZ#=TkGC{fY_#dR>DFzptS32VPIkE%=5xTSp7^b8MQ`J%n@X*ziRIq%ty#VmNnm#G$tZltnUtCT?D0gxs5s`ODlaFf%C?+$cvHA4H z457gUJ?NgohAM8F+CuD`V|1IqL6%E1R2(%0kYGR8qwR>QYoEni$GDoSq1@&!oeW*F z(3C&BpyPiDG@hMeivdtlzq055rGo!&9)5zz!>`v7+W3R}g{Hg7D-Z9s=B@8aH;3h1 zKA56T8BPZfvZIA2hMXRWTVlgwHM zu+Y~BTRhAqRNdSNLR>1>SC>;eE3P2vI2Mft`VIR|bp|;LE3&CbYe>f!sY`6sNE=3V zHu6rIgY)1|wSu_(pTdb!k^ha)pz;31r@~YIC5rKr87_#$z^vgszF=U)<;?FMgWeT; z3K8BoM{xtHVo$ik-p9wdDerAlA`waXALJCgl0$hnU<-vNIlUh_{!B$|+6Um1K&Dst zp^8-4u$27BL4o@AY4UMql4WQxFwZ6*36NHP$67r`%}m|e7R}sXPks62LWm%-Fu?e|3EfDq_X0Y z+#n{XfV86on-Y4YLkf|hJh8@02D*AcFg3D1V%HR_CJ~)|4ryT}o92#E|K5{=PU(!Y zpTwYSUG_zbsx_Y8UE2Y_m!W0S;{C3yS{hb(X&c_7@khc6-&enYCfc^vXkD0<9L?dV zYy>?~>|!z|GRpLh;v&p&l8k`CRJE{!UO_X78_wv*M24?STur}1KJ?mR^VZO}fwiQ+ zlTL(~XEleRp*(}!W~%6~_L+A$Lob<8Ux$9way5PBGqq5phbzYwg)8_$4xO=V<@I*- z4TrwhAtUQaT!xAiP8IUK>e8T&QkCK1?-eA)`-}&%e(k)2ogZp2S%fbh-%`68MoyTmk(m<* zLpl6iE73tV$Pg$!BswMQ$2u5ifpKt|oF*e{ECZcgePiV|tSxbgo^eKgYlX3d?OPyNQ-b+@pgJ;7emV!| zT%|lo4T}YAw06YCI_bfy&JboACZR_Nk@x*Ovl3TrP+hGR-MdFdTN zOmB1oj{9|r;n-9BZYcqxG;31GG3|ENQtnqH!yP5OT`|Y_MZWV|_G5n0oNN4(RAH^1 zZDt`LDPJ#;}1indzx=b?AtjEoE$_17A~!}ok1$_#lD)(3JYwdP;>Gc6PqAn}Fm!!(l< zS{3CHz_Aweoos%Exb8q`i4N;pg`?vL>BRp7;6NY0t}W|y3Z3T?#;(GtKz54)`=te! z{P=m1i7}8bDOa0U{gqWMSA}ev19O=?mwM(hg&EP}8FQb?>bW*N7v1vAd*I*p6|@7j`YErdL1mS_IBRxtX%A@*eVwUc0-HlT5y&p#FFu}SX;O}+Ge@4O?y4$ zLFiXXxO->ys^jma&9j?ffp6X)Y_83P?ar2)YfI+0$Y;;o{n(QAjV*S}+x%VacxFo( zYvg=Ts3pBG#?F+Mua0)u(Jxn<;lyOc|2GYNv|ujB{;m6K+cuvUZI#e@DK7-t(RaMN z;=Yc4qu%X$W?jp>R@nQd;aXXV4Lonwl+{|^=YwaALTV))V?Za`8}tPH5Y;=z*y3|o zE9`+11J`|F9b=)+8JqKKQ!?4Sqi>Nwkb zZgz~3G4s^|43@M@CJ__chqnJ0d^o z+V9YP@PjtEkY9x?{l#+dEYfCD*7v-hx>HZ(9;wt8#$<**#S3|5G2Yw5;3ZU0-_ zcz4UZqC82;^O5rRh_d97;Aztaooi^HHmH;gJ*7<^x-J*Vu@vURk6?xqv#a4mMeQ?r(Wo z_v9sBs2X3FgcrJg?2%F?e2| z#Tq$)!Afl$(cXB;cVK_b0}Z;npzq^yOTS4L$QFE5E3}L9hAb&pn^?@Fokt%<+E}9B zD%m>hx`WL|PF3wOR=LMV51NFze_^4p7B)TOw@I?K$k`$z#uW2$ht02I`Zd@51U6s} z4TgC6J~kn=uF9+lm!^CIWt>1|?9{tv)OUZNc{%Uf@3Hq9YX_RQXr5*KL z2ecSl+N{(3_&-jh4>^~3W=;RdyFtmeiy~)!-k@(_Bj!PQmd?OVCHPVvKSg-t8E|wF zGM>Qy+~@Lrl50Mr40+WyE*K}X8M4X1no5-KxY$+xF2H(K%XsFw5DX(s98Gmv9y|eW za_Cnj%GN@=@_n2m!zngUIUNe*oL9-o@c<9K0Ec_W+n@z@T4c=1^_`UU$+F zm=!LDJR;tm!u3YHJ9FTn@XO)?jxu&>KYS408T#1CDSDeCmkD?ho*RHOU5y1~p3)D} zm2e8aFI=lHF3tM!1_c6f4QH}_AidGf}d-hF4cPrkLAXFuEe<41e`_B(s^{ttHl?oamO zJj8yIH-m z<>8g>A3y!<`S5US*AMS(_xh7Ww|t#=*1i?Ahx-*vq#c?fT`P?e(|6 z+Or@2+J61%-`Kam{G)yP^S`rKfB3id=EwiZK7IS|?ZfwfXHP%;8+-cp5BB;!py17S zcJu0^J$d=Yb`S6E?&({*efiw39zVAG+ZT58_@yoG?x^24wm3ewo6W5qsoV1U-r{RM zZ?0{3pdI@=zSD`pD;w``Y`oe-G_P&7*Wv>N8`7j0#z_VlhWNz}z&aLyhjb|XOt`X3 z#Y_gMDgmpjgno+mp9bbBjFKM?U~vLij4w(Xd7-(E!Uv5kz0ji7rNzVPm&6j^F)#VN zSndxYhJ14YY2gg=5dk1)p#?smZIln*1z)3A)5tMrHW|td6-(aHiT^VTMu6eev)Pot z0jVR!V$bDOFtZTQ8D36onvRF>lfVaT&&=hT$zvcm9dbkH)QqP*4vNFcr^3z@5%-K{ z+!NUN)CKqlHUe~xW-)c4t?qOHqH-ml&2-Yo=lQXnO##GX!OHe~>`kq@Xn z0{{bjH`vjJd#>IHU@ zKnUVfn;@S&^eq`tAAtU4GNwF*=mFqg-A?TqhE z0sQ9~b>cY}upPKA{TvVND?`sNA()|G+F3oa0(k^y=tAz8PhXxR!wSMU)8+;MKZ3-Z zCgEP}y0+gX!2_&=E!gxQn93rJeyctBSNtfsx{aZk4`UV10 zSO-apAV4|+?;_WeWI?||+B`@HBqr4+P18d7Am2$loR(GCm>J|y$*MD*c88F)PRBb- zNDR;DU3F?cB-AUBnHGp4wmRYE)BY%jz|6F<;#0S=`K7`TeGYlxGZwTUkQT}c-eB3gg7{3$RJcg{JNAiaF8vCL+>!$(r zLDu6Wvq_s+gPgKc2(mUIyq@;c$Fx1F&;#_a;T>+~p`X5uwTM6OER9;rA+){&$q%+R z>gnS)9To(%psp}d)3P?Fk7@4`y)1Z!{?aCtJPXj@B1PuZVF+skY3><6S=d;CeM~6d zO&BY_ylx_Mv{~Y}5bKrY^ih{>Xm^X<(uNu~l0F?mSn-ayrjF>Kl4g5am{dqL>gw>W zq^6z_+EeN|jpkNDyh8}GVjS1<45F{JK-1CAaT%DSjV7I*g?Q`qaxOhp9+IG=oz-v} zGxKxHbke@SCN|o@LBDw4MTNfcY+jb1LqjlD;$EI7v3=EHL-@Y06q1i|*eE7;YYzQ5 zTWG9hYf_Rr`=lUUmR^w?<~^7_psPWewYE~a+-;b@ zl^e_+az(!M5ugTXsBCuWi0tS_<(`Rtvki(J6H$sxEA?)yeHE>(|(? zU2mKD-ZuTtmW!PQM`TqUY`sYAuupA)j?J6Uwry^W!sZ}fc{+B1!UZYj{?azx%Djb= zOfM~?t<3`6UMt}^W1`#ITW^EvOWKZjE4)t~hio65M7r$Ma^MwQ8Z$VQ<#qGF3o zx5FahsO^W4KOJ@M7cp|g*3yq!Jgl^tR11q#HbNG4hrOuK`(YBv=H0!&iTTcMlsr3`V`x@)2aOxWzgSqWYsZ;f`tO= zSFf(9+m(&>Yip=iJx69sKEXx_+uy;-bmwPJiD>k?haR@!jbp?j3O+gZbVyY3F1 zkVnGSsvKRfsNWiWrw=RYD&4KL39`Pne2(qO_Q)4IQzL7}LqJ%v5Z;CI8tDmj8a7jI29J(#4}7MFwY z%9dJyN6smFUsp%^n05y`m_qrCm5y@fi;b;|C3Dw-@3iRw9;7|x4n1MaDs)uN_)tv# zP8*i!hjQRF)O%P|*BIu$4e!vxx7#1g-|El+@}bV9@+i>XF*a7uD->O^Q$q8F`O7u( z)oJw=cI03!^HyInW(vj!b5lY;cB&gPSfgXgS)$EJc_{^p9+{)p)T2suI(Nz0zW(LQYlKa&Usi8M2%6e230w^2%ZUT*xD14ZhR{FXKX9BymNZd0w6a z9evmbI#rE+^~hbD4V2Sh+ZM>A)>xJo4!SfX#Lbi>o@aSap%7|di%8*sw9zhkFpnw3 zRZideL5?1OK6nu_)^*UN)k%46m?P(mxw=1Ntmo)se)-vx!;v@Y()u>EHY>nO3hC!n})pN zEVelqNFn7Ewrs>$9x)dxjFjIL%y~6fpFT_(FZCtzWWHnWRyZ!dYQg==gGT=s;9_kC zDl8IsZ~@Lxl4-Buy~ysA@ug6QeFmOnz70}v7q&uSn(D%_DgBqAufote5OKl0U%=%8 z@Lwg*6lV>7mgiVv(_DEurdEPCJjQ~&k#+B7nu3cW>NBPPN0xbDOL##iZU)C2@-Kir zl{~qN(P1Tg4!~W^wGnvo63iHafgReKf`wwRPtG+0lg}pLIk2j5q8s#sSHf7ED)R0G zb55z3?}p$?bV!>G!Zih0Bn#jeU@PU|(;*UJ;+%fx{ZqJ2IH6whiU!-u6F&;56Bv5L zZ>|fTa!006qJg~Br(hkh=0x(*fh~CF=fu|mm?s+!wM7&9EJ(3)GdR?RP2job%CQxI zT_@VC@WC&%3GR|cspZm-fbYjTWCX4+$H+3W(qTNhU!nhCR&bjRQ8~ydLl<0dR4Z>> z?39oFNwG0a%h-@-54KaDjeWJk9^DLfbazyU##?mv&gT2)wzz+4$Lj~%?ykWMuk8B% ziQPQBwd2djcKhO$J$d_$T|fKY_HX~j-hcSjUcUXszIp$hz4-9SZr^-wPoMv2_fLMZ zyX)_4`|!p#54U!8&pdkI^ZE0^t73Kg%$B=5Fveq>_eb*&%%}Y=HsxpySZ1mDTk8tg zs|MSX(C0NeD6g2`T3h+c>;D*=5C8dpw!izk|JnZYZ~gZF%k}@Sa=%<(u7APTZ*4UE z*7aM@e!2d2Z$A8&|MFk{UoLGt{4dvE{-*0+o##W#1m8ag6x`eL2&spVZVxxsU%j?H zlktB2(yHsX)<1o2$GgY2V4}WLxe)$Lc?&p7RAOG<8_T-O$WuJcd^WYuv?9(3s2tV7?R{(=& z-`Tt8KiT2s5BB=y$HA5I@cajRxPNQwCm-$Z$zxkRe?lF0Hh=oWmbVYKxO=cAz~JiY zv8@kxc0BB?I{={fM?m_$?EnkiaSmVwT#Il5vi%`$>=lF>g5Q01omb+}5)x7XiZXzd zPCgHbfh(Wyvw;kGfP95J@&Ttw9sxSnc3$RoszhRSVviC4W$fFzFW{!oLXf3tZ>Ku7 zJxc9Dfb$FhDo=)SYU4>_ze}|EuVl#p%@dt=nb?K$D~uc)W$2mfP}ayUf|;E=zXx3E zRLYr+_&b8Ec!0-IaBl9I$9pdzFjLBF?L;8*_pbT8H@pn&%mG+Cfq9oB8%M>E+rf`# z09in;Hb~Uw!DB(LxFeg40lgmeKA~Rz*gPMAI-%awCsf{pz_s&Sn+z@>Uz-;$b&h#I zK!0{={t0A*y17YU(IsG6@0tQury=dv>F2L`*QrIb(Xbg21Aw#1l=hA6%;!5dvUHl; zXqtSEPYU^%O{x1OeSjQi4j}(zYL~&(GJgX2rk;TL3y9za|DOfg1ai!UM1+&bzSf3K zpxhgQoy&_OK-PfA%!dpl5Fq8%IDr&|KICHtv7TD!x|TseiZZYOARf3n6;)ajA`3`S z21p;ZkVDAC1hN!*^WhZG86-ic)K9d4I8ittEyfneqBdXhRf1!PSnPKe&M6CGHY$%0 zFUS+b+=al$(!IuojCYX6^$;59ynvADq%9<;NCCk4$_nKxfPi`{d0uQFZjkkg_Sf9g zDExs=U^h0Wy)Ms35HFwSlhi|hO9;o7=gJ`jPaM%E#odQoD=Dxx3nq|Wom6x9zH+A) zEtNlHVPO@SV(Je00;sdR7UF7ZXArHl=ba^lkmpXdFkV!4Ca($PGE)dDEe^y>NR946 z_P$OIE2n`rMhXkt67pX__O<9;*`*J`t5@b|k$^JN5d@PurrH>R&{ax69&at+w=CAi zL_8!>PSKqrN-XN=bF~p!eBI9=Uywx)Ib28%khu!oglyFiRc!>6svEjLY8>PX;n!(J zNMopRU5=0oa)VrocvZ#R+$^$7$aDz#4RiDg@>~Wj%wM` zvvI?7k}vhrV$85%qlE<3t)`u|HkbknPgZsbS)8M1iXES4o@K~-O1VusgWUEI)D<>M zAp|y-h?u4;WTWKIl{NALksd(EFJed@>4r%(NQI_uDyUZHg=*#$)-hbeRCCJg7+nPNWBwNc!@?EL=|$6 zA?P|OoUJS=iXjQ4OW%5n4w8@TxhLTnZGsHReR+STtVLbMSdMO% z!^WUaSk5g%|BBMH%Pz4NT`M}?k@Z$bSHmgIvcXp6yaPGs@eZP`#n%<28yzm!wygOZ zxrgbFF%C&zmgvlC*zC~hX}!0Y(|`P~a2RvOh)esEWg~MM2HXbuZLQou ze%lT0xv}!>%0kB7COp`@o0~XpIfvlS=carI^97&zfqL$&T&*C%*TZRGljWx?>!=^^71!uKgWO6T#!!eSZ7em`Ex}Ld&73|ekX@mC0o>au^v`B#3vDi;hYhk_ zw(YQ?)XaO^3r8)kZHvC8v|Axq!i{nv>@8SnlaPMiQud0rE^ci}-J;DNT}4*tbfZOb z9n6*A0hv(uIJrgNb~c2CSsbmVZHn*RFm4nUN?roP z=90nz%~v)@9&UGwY?tV+JU^}&JN!7;j*QcD%ANZOrDmwb-U&nAec+CNqz6 zl=GzBhSoENV|fc;vwJW@k;_Z-20TsqO~!avpSQ@dw<&XUrMk}M^m9fV_voiQ89v8K zFXRo>@>x*6<{9cC&kqkQFcOe8&8r%d-yq)@1k08}v7A8=*sWk1QKu zhdE%!y&uO zmQ_{eTCpNLJUqTHBHX>pb@Csbl)g|`B@<6u?4aht8VrYA3+zIn&2Mckap^?8yzOdv z69hhX1uVk%ndXX+a`?VVrpzTV^Kk+v0LLkmjaylsfd6I+t%xj=6N{;D7W+2m9jUj# z<_xWvXq+l+lQvB%Y-Gu}Jhn0ltwW!3*{)@25o0dc6y~b$(TftCm>`=1dstD{40|-8 ze`nfcVxG_jd4e1w^h%p4wLB&mHxc@n%5#!_kQda9zRk-$cnzF_oIGq%sSUm&HRX>= z`cwSaAN4)@+l-lu;7(D3?qLtS7#m(NuL#RAHkb00VeD2e{fzF6N^kK+nB>Xf7JA#3bb;7(V4+4b|{ZR#$X1*QBj&|V6LYp)typFzOUiDIN z1o+4SpWM^DBs>e&QJ5tiLYVfRrzP)7>DvbE?ey3r0`CkNr!(-0JR-_uW}zcYq_Ca} z|asPz&{$f(OCpF0vX^PtO~H(GwfXn;fiq9PmDc1ID!${prH!~ZJ^>p$ z$S6JLf}15Z<<)iyHlA|dsXR2&F?@^v2ih1(;i>X$jlpBFP2hv6LfX=IGk9Do@8+pv zX_Ud`;8(L8ZUY~RxZerkMQ~O);8Ze#F9q<3clpe~#pq)ShEH9_VT^rgrZxmO-UGv^ zzfx>;!Tg}`i?u?zcCu&Z*cRr-MQhtF9G$tVgUcTlx0YON;Pq$N*R8G3FKl)5%x({l zZ1wc1ojrSE&#zzG`J<0*`|MMD{`x2O?DZRa_3z5zd z-HT6cbNke`cXxJv{?INC4{f6;3cF|4U0&Jt?1DM!&gOeC6d0*oWB;`=S{!W0JQ`wi zm*{pC?rp-Hs<}K-*iY=&`_@*zfBkkhAGCP?oyDtP{>A^G1dW|Mx#!KV1LAuJ>&;yzhG7v;QYu?;D%C{^91sU)!I5#|94m{IB~@|K>0M^zT3W z-gp1t=WqVf{`5Qd{OMo*&9A@U=db_#J)i%L{pFwj`u;!tOaA+({ixpBNch{o{oB90 zepB{$ukU`Z>vwJQp(-J%klZ!o>2kZb^?YUfvoj`ONR=l0&8;o3pIUoha^7Ft`Q;nC zzEYG2Zx1avPp1=LEy;hRy7vI>UH=o+P0T(tv!EiXXlS>ef7lFXOC=g07&ef03`VAaB2C)HElSvh^vA`=Nm`|WI2a` zWDsbPxh3RYF|YFlgs9s?n01=3vk3q`gB%uJ4*6LEFlMG0w;ljPVI35&Gtf!vLW}W` z5iJ0F0Lv2q7eH|~Ol+tV_eo&k2U`3-0gwSqXOT^h1~wf{0h_sf7;ukVa0ADJ6W*c4 ze1Bpm!_ss@&;>0!^hy95a zXEHTU0Mi@T@zk@i2N603ta^@(f)6d8gf#Wh2R2iJ>9N8?4FIVC(b2GX4?cE|>{zF^ zhmPe_>P`8B5ny&2S;Tw2Sp~?JHwOe^dTRH1{zI2C;xX+Ckk2V{0SuoM7T<>eQ0K^{ zElP|=o2LA)IHbeOw+BvT_W{GRZ~&n8EgnJ|9G#{g+bQkrLHXoE>Qy2y$2{jA#38it zsnaJI_5k~%Spra3(!j#}Bi`$cEe>7F#*i_&Ij4|cVwW${H z9m*K$L>fc^LZ%b$(PQfaXwC;z{2Rgys zQa{GU)R&8W(=TdHI>=ED$wc=DkbEbD{1r8X2jcyJwkU}%gjnBevqU)xeuUmv!MhLx z8K22xs2xEFL*+c6tvYQFv2h?QA?@)YL`qmZU@V*@@@m*ZK9PSYqOVh2a|@MZkmt2X zehT^gJ!Gg&j07S-$mwhT*5*kJv5KeaBM2?JKGn&8c_wMWg+7^%5<5aKro|NbLiF5~ z4PwTN2eG0rCy*r%vZNDd4s}&*;y@?YAcaY|HoqspKK)GJP)GNedZrL|?)AOKlo0#~ z*(KaRu3|_R_JjIQbkZ*BOd+RE=(kZ4S&BX?(c)2Y+V@WaNuKo^2We02T5YCaXS_VH zv@9X;JO@F{^;y99aOlU_qpgr;Y=jo4eP>DkbktY%QCKhP-YRbg<3kJk5u`k1JXVo8 z4f?|vNPKzEXrUh6MHduqYbv=`1Bm3xBJ|e5#wq02l(8~R<(-0T`jhs^z}MoBHVR5R zrR`oH8mR6=5QXTm$1_Pb*mp!!+veBPfJo-k(& zVr}&7%x8Qj=&Vk{R~5S0VuP7u6gDZKf8fK>G%YXU@ExA&X&4-|(Db zw8yKi59^{+$Srl&Vo{xmIB)tG>e_r)IH0`A_+ETQ0C43&mO&Dd+d{g1^tK?9Odfom;ftTe`lb?v%GV*tS^On)~FfFrUwD zN*gBBzfy<;NPc~>?L#ZA);F|?KJMncqp^0=^&wOa%bA_gS6cL4&Rd(;k!}68EtZAN z7e&7qx@;@!uxVAev4*~G{DmF23o98LQOa1R&%7Glr)-6`NlIjZtbED|5^QL3YE3*HWeHh0@cEB$0=zFk5t&{)r z-qR(=cIF#}#=pDdO==#~9hw%ysg%VQv{qw-vgC`VQnl&|dWk zj#u9U*oC@4X2^euPR1+dH*_Xz!JyQ&L0(Ip%+{t|vo)`w zZ?PMi&l+@4n*w!pgZ$_x`Y5NYnZg}0pH12w{X<_cE+Xny^E*-E_(mQoU|Z^_aiE0K z^8B4I4>m;ZHQ#6GaHP|>w0%6UY`vw9E$?GKk!MP^J6H@}_NzVhxwDjh>5{9yKbFBB zc`>eQ9cIzy8G5Kq^74ZIMXwmketyRoQvY`7BK@x<+gcDtpOWI;iP}Oo3w>}Io7#*S zwC^^lT#b3gu7gbqm9vKVC2Oh6igMAtr961JUmi`;QF&S@$Ib#9T_P`ei73yR!l(Hu zI>~#M%tMhDtQoV3ye#NzovK$}2YK1ewMoYBC_|=TkPKauheVN`^B(Lj{|DHEej&TZ z9O$_c>!KIR?V-?1!qYmr?`acHb2jodwT$ZNEuz75Z}zYd#5zb+Yv z3+6v1`Bob}bWus#6Y3-^pybU8p*Lo}tC_=cbg}g4N9=p5&||W}nLKTj&HOTEzA4AdUwo(eZtfS@nZz0`eis3D zh5o2~^mW;9eriLtWxiBip{kyO4^r#qA-d*cPjYLjSs#iiMV{J((L7P`eYL`lHrjMY zchH|a*Cy!3(u{F|oU%llsEpYK_6eD2tfb5Z($Q_C&FY=anJ=caxt6}rkI|fZfrB!1 zN#49oBo97$&R{2ml`7>tL+9Zd31h8Kw2mE{fv+O)h7xyo(kBm0+Q5mBbAS#gmx2pU zD=9-^9~D+kVc+}+EWE-5G<9>xCcC%jj5v!4^6e%!CV|DtXg4d%y`I${pP6__A~H(489#u z?vVL52iK0lsPcLkfCaU|5W@}12tEhj6JDA6;)t~!1@H+l?~x;1)AB#E;CC_sBTQ2C zA;Uf}_H>{ugGX}jFjgK9d6R=lhVTM-(&z-7iyoX#;D7LkAUJ~e1@=K++bOyh$`jrL z+kuU<5m<@$jo^UtJdb%_nZi{Q9V}BKbnc(P)tVW&)ayOmr*Nix2)>Fd8%?Q?%UJsn z*v6wyPDES5YT*9FXB@(3J_sF?$8K4|9l{CY02xeUtNqjdFi{BJRGy`r`8WaddD!=p zC3;gTw~KHNHj{ZFI@i1akKbbNu9%+=2fJK9w#DtO9k$P`xV*Og-Ba6KeQJlRTf4e_ zV(Vuw?BT;N?C|U(d;H1g_U7g1cK-HDd-UuZd-Tz#cJ=yG+dO?^cei|g`P44YU)sg~ zja4^~`2Wrhn+rQA&jT3bP(QRi^W%EAw*8rYZ<$B2yTVS``wjC&!`vk=w_quIiY_rf z-RHCSt*w0j`mJt0{Mq1__80%*H~;^Y{n?-W)j#+SyMO;TepGL5B>c_a{LMe>`d!<6P~yKv38w+*?drmU-9uY%Aaz&g zwp=~8_2o0$UtihgaAD_H*G$|m?BbTsZ$7g1^-DWEXA-}DYd24y+s&(2_IUGCyMFv* zyM6w-J$w7so_+RH`}pJEx930mrG578AJ}JK{eivx*{|%)kH59IU;o0se*H_kd-HR< zeesoDehOH4`;A@PePz2RAKUHIukHNd$9DJVm7U-6j@uV@$2)hIFYN60mF*8t>~Q|r z_FSvwrEL#8YnE45Z*Q#HT-gE8T&=gZUaT$H902Eso+K_HSoH?7JBOq|I?_suJrJa1 z56NgDln@Pt*3g0`L=QfxC zs>hCn0+Yu8(OJy@p51dsHU_jk2*-ABMwvli(;2{UHnLGR;Q7=}-KpJEn3lnqd&hP( zIO1N{9vr7Od~jluW8Y4O0Kmzy1%tp&CIvvTq-@us)4<%p6d>x@kCc02oY{7f&TM-gNI&@E650QUH;dxeDWy^FBz%EP|j!^v%rg7pEr>I)ws?-I8Z02k@?w=fli1xmCM>`Z9qed%n32 zvJQ~B+?S_qpM-h@nC=q{2eE~jPA?51T8SN3kSB;rfJ~CWGbLjFu*_|!#bQ8ukj;7! z??J+12uCs9+RQ8aa2u5t{Ar&H*$d?woxNKO$Q%fu7Aw(Fg#!!xn9mggM{&j>e-IHR zdv+@H41HF-_Yz_`(#c=mqa?pd*cWGv2W?R#i99ioeFPaR*;yrDwgbLMFK(P7~Z;(6}@=rbGqOP0~t`_T)4*d<0A@YIX4RZP-RA{2uhO~Q@ zhv?zEd>4w78|nnU+xDAO+F&VC`lVE2zp@XF6hOfG#dYc(Bn|`&GV7GQr-lsjTZ@Mf z%9->JVxKz5hyQ)bQsTrx3enZyGunWB6Ms&hH^?F}zi!aKF~py`Ag5`P*o5(~cBYdx z?e1(6Z7jzw1yO6cLK)Pa)z}1i;pimmg!V+*AYe>Bpq~9gNy+_5WA_u@U4~ZkT%eo{ z!3dJYSb%Vk&@G+d*J6L`Zp=rL&P9fS`>N2&2{)_#V@d@E?7(4XSG}B4P zMZe*aHfzS+)@s_+as{=|Jv%!_pOcXHBgZI`o>AvIvD&3y7()uvr92;_b_Ge+$#?F- z?sp>3i@A*OxtqPJ$N9PmIAxA!J(mv*H= zRJ+8+V%y4jpHIr^O8P@5=DEMwT7r(HTIh?>B_(uiwW+YQ6?H9?f680ilChF>$f4nV zEq&cCY^;;~_11>f)+(Lw&(1Ab>@C+K^_u6F^hJMS9@~uGq;vXksrv8e7ia7R@zy2|Kc&kEwT#E>+DH{kx}) z)R%D~&)GWBLK0(T-r9;bruDT|+7QDI%;kNuMpjGa!gYmx+1ZqO%Yz|U(Dw>e)o++F zj>0*5BJTnIUvA!cgDIJGwKwHgSaId_mlm&P4RzKg+Op<;>Ovo8-Bmx9k~unvykh=# z$_r%4Jf~#Mv}drITew4Jx%y<$=NE~0*bc@~x?oO1p7V9vC*Dpf^kaEuQ^x8-IWrjJ zs&6pIo^W5Y2pE@3n=R$_(Aap@SyR6A*fgQezdZ9GV4 zxd*u{8J}Uk#vU*1Se`WX0h!dyVboI_bg2iLrZ@xc7x@($q#$syLf z$M0-O-4y1lxwNA5t;i0PkL^RxdVIwk&`@TD{w5iH(IHcCR!9FTQFG4RqHshZbIAyN z6!L7$+?q8m^D8)j{{wmYffF>ZER?myBJ;Oa{iPkeh5*s?A?8lQxlbYQAFrOmpAzl6krctpJC|UT6(C&|z*KA>$wg zj~C3d$TM@8AGCP@X6mpjUEpJD=wIF;Y}F>%yTSu&X!8VI(ALZ^^S=KJ^g*5wUa&)7 z0?V-#3AQ~#1{3D{QH|b|%(2Kd;9N zfh8C#@dVsR{rkLTV|gzpHe`Is+jGFY;m@##;HH6+jAI{Mp7+5?Q=W;72iyY(QYa*G zKCq*_C-TU(5%?&R2LTwSqO21gD1k2qJU6J|IQ$;Un;yR5OtfiHf{Q)?FTw-i4ikk& zLKo)pSUmzChKZemr=0|@$M+TA4d5Ol>h~Z_(eu>gQ9TC#4Z!v;ZI?$#~ zzxn^yzyIRT{{EEhpZ(Q$p8NInAO7N(fA{_1H=7%OSLT1Pzxd_fKmW`B`~UuLeE#cl zzgs8${p%E_UcT?qm{`JG=!w=X0$m@L@4ez_&_w4^E*FW9!;k!TDJb2HBLGRu0 zp3nb_pTFO{`0GD^|0c$FHyq?$@z33S_>cebKmN0>-?hz$2}Gw`pIg1Vv21r?%hef^ z@4>S3Gwb#@wm)3k;q2B{hsU;FKeiQJbGx?kKfwG-N$zM?4>=r z`@|m0iauEY0RQw!L_t*Eer?yUzqBW>KeuPEzq0F3Ke3me{K8)TL>mx)Y_Gok7xv9p zzp{^i{}1h}Pkv>OKjq#pe__vG{@9-0er7i>KDW!Kuk7~K$CUlKT|N2Kc6TrA`tZuG zDSvnVhB`g8OX_r3KeDs^fzNJj4M^Eu0+=r@sqZ65{>+YNjtyrq<>YpHtmI&h#bW_K-)73)FaZDt zj-B`}puMok>>Vf`&mucN+~z%%XB=|-LVf&5<8j#dOy@gg=66;w9%OV-KmWx z!ybfd6XL#-rSZOyvWAqc&7F~wtPO|eJCXVK3iD2A>*;;F?*Xi*Q%iVeFa zg%0G&GbOP8u+|1gYR4gMSA7DAN|c}vypJ+Gh(O{iRM50P#T`b-ACeMLSH+zjWRMx1 zhJw_%lvzT0vkYRELLkD>TtI#TXm=p%O8Tpq!UG6ZTv1lA;{K#xxD5gOLFqwwmNw#Q zc&EI2PF5+Ty0kpct%F>jlp<5_HU@kM)C}?!mAtcGMBbZX%%}2-kXHr7M<=`zEv{(s zUvBJaV--YVs>Et)8}$qtokoLXKqizoVO%s8KZqfZl+C??HUZGjX;9fz`7Gpd0O_96 z4}J*o%VOk*OtgVh@g1@m1Q4NsF&9l33)BbVKaDHK0>l&I6!dvDO2}+xk*{|`m`3jw zxg%ts^0(st7J*KEz9UknT0EYWefTqn_Z1M?EN=Taxl>59k^@gD)1!_vZ5kn8H$tC1 zEsSV^2DvldV|i(eE83@IifVIe1ti{~>=EQYMXt*2aLT(&h@C=OjA>IwnZAe#b${Ro z=%i%eTZvu`V~BeOdDX@U#69(w=mz!!8=#oc3FLcR$zIU!kW`mTi_e+g_6yh%q^<}k zTZ`rSRlv3V;D9QtI&_eGI0wrZ2NMAdZ27kj}oN)E3@2ZcL{uoWp|&_Vw4Ov)&yEciTP zzH#WUQVZM=`!#aO_Wdb2hvyWdewpq}r%aDh`lDL&zF%)pEE`)Ft9~)Q>h`pd(yOV3;C1#Z|bt=i6Q50+Te=jLoTmM~ARsbi_+unTa;er47C+L}Xcitj&PZu-zc z2W(WiTG?7BcCl&eWkMg&p1OJ$Y6*F)xfb)niYdB)?Nbu$8hzW*cXMn=8SX9So{agu zRd^ca?U>&M<@7lPnE$h`GiSB5MWY2eY(Ty0PiGF2GgHovw#9a|$YH)Qr|S5A(|ZpT z{4JZ=(QgU5IH13j`1NS61=vL&MoNpzN_ZQW=+%Ppi=M|ijZA+o_}*Dj7yd3fdA`se zxsnxwKNfm^XG-YoH1tt7@4Z@@IdVsjYsziV>5P6_F3zpRE@jQ$W^3BrExC9Px~2r+ zMRjAjHjcUl<4IwAux;}ta>8Z`3*~ox4iar94EbN4IAuwj_?=Uql)f716h3lGXk&(6 zi(LpH7!^^n-fI3jrA`tkPheT1z_@N>)xgb<#a; zdB=RwA0}xUWVJ!p&_j8`Hu6?kBJ=qb<4qx)m>)H^m@C(e2Wd?-9sQ)z<}>`C9J`3AeNw>fjHa>RJ$8U4hVQfRhPc@9=~id{^X=Qdzm zDQ@8*Pe`{=J0qq7cKGHzDhjSb7ocZt^(lO6k}@N;8y zv7|gLI#((7ui01=pIg<|Ht!cycZ>(>mmGReFNJvY(lb+jjj)>Aihi%=+Calb(`RLy z*aPgNFRY!Rr`va7q8jB8X<9o$4sHs@UT5}!Ha-@6#?U!)&H-DXkc+i_2wsU8qba)L zQXhATjRi9(q*}_mJ=utO1Kz1(B_~*NooEFR9|eJHr&BIZUrBpeJ6ackd(?5q1;zf z=Ey<^A;1Emw*mK-R-I^5DPk^*tv(7ZoA3_i`y6bM=r9S`Ncb=0`z(#Df+v*efcGNj z00`<#jZ`TncB!o zfDa7nF?1I zd1n@3&m(kbz~=>+s{?068J~d{h9#IcmRDmAzT5U2FA?>UE<3z011q__Q+bV&9GwQ2 z_VVL*i7rg|taOpT$9-U*0?g_~h2_X{5b1CUI5$JCU_m9n4wBd=IwZq=1^TN*%@N!n zba);t=IT%jZE~*9g9Mg6(&}C=qxtZr~vW|MPbRc8TM{ zjw7&`PdVT~C5BEN@YN9PDQ|%o9^@#m7jtM7GL9%SnV=8gO87(|4#E6ag}y~6U@CM+ zIqec9k_Pt)V}|fA??Gh4ej{vZ8JIAD!%e|;gIEWe;4~Fw`Y{*}UPxU|;VnZj-vbwp zp$!S;;qr9%h~{Yxu>fHU*K%gm#2r zWW8ljn~xW^i59owMFOQ1C=P9KFVaGRLW{dwaCevD4#lBB`Qh#k!QDb|iUfB_u+9J7 z*`1x)$*1INCYkfx=Q`KjO|2#5if6kJKiY~}727r*S7Ys8HLVXp+hKF)!d{yzNFmM= z*a&QG92wLr8+e@T!ek#msaaWR^0v8vo0eDQt=w+Esd^dUs#=G@Qwf>;t&jFqP6o^4 zk4Ngck7rh6nM>+MR;+>W}Ha>}L^@y7nGN#W78 zu_i!h1 z|5ANC)ukH|a1QqXs&&0QzU(OC<^3P%r|AC&{ftdSY=laCzr5;~IJ`N30)W)63sSl$ zN287a-kOhytCzSM#TT(92k4_d^`q&MgU^-J$m8BkYEBiSDs*=vSL(6~)Y)!a*i{eT z0xza(x;y!sm)FZTtxGi2Ke622- zavynz%i?}Fv*iAC0f5v`A;)-sIJ*x#S)#Tb@G{zUzr6vaMCSem0XL-WPdlZzFu3LI z`R@Mh_36;<^)gMn&%-R2L*7c!SaVYV9CF(XSXnrs(H$oJ_n4}`iu~G;fj=R)9Zux= zRNi%W`%STVI=jMHB}h|quhPC^21fv@b=FLLok}O;E*u$?^p;-Ad$+41G>doO=jlQ* zmS9+@66vt*@m;B|G6R({l{S6?eXOq}V<3l%Qte#-biEpjnML5{Kr^b*j0CdH36;Uc zEcYx^#NCG|>Htz-OC!}Mn&qudGxh3GobPOB{uQ(*&@)D~^zJv6vVPBD5B)jU9la4y zys_uzBv)GEAf@Jk>!lw>^}zZ&u#iK7$AQBE)zu)2829Ak@8!hPIk^FJB$vapOAD8w z$)2=Bw)}WHZ>$CZB|RsxREeyQcwf|SQB;LR+#Vd|N^_;9F@b8cwvyJze$x>hPI2<0 z^17ud%qpSt^*;UTJE0Y)trYM1Y4C^kE(kqf5G&z2&#yx3J+x*Vjx@rTJgT0w!gSH4LeI|oELx3O;q4*JFyNrb8!gmyLs*} zi8368e|eOM)2-2A;nR)EZldzT^c|)% zjXl|wo4IzyBNj0#31GM}Nt=b32arT}*{WCfFI<>iZ^)IP*L6lehbr&NU~o8x|NRFA z&N~)%mxjn!Gd_}QJ|1qIc327KVL#P6Q{Ji4us5i$WAI}?VAs)`^RuJpP$A!PE($yy zG-GL7hP`HBvAsg4Gy!CUa18}MvZjnZ^ng=7m4D4j!@>B}iFzh6)LkkGpK0295*EFm`D4N+Bim3zUy zo>dee^v~vNCR>}va9E!E<>S0=rl{6x_=A@LOOG-&Ag=jiUTyii5K@58YZLy*vTsGN zz5eV;3NOgB4J-sP0NjXWMpK6rX<19`3SbFu z0aZOq1uLur&fO8@Nh_L{F$bs2kUXwfvJ7}8nT#fh84@9lcOK)?__LttR48#ez|V8srbdZv7yr%;_t-m8RJK1~I71hv=|vcp3h$J1fKI;fPF zIqo(&2ov_rz(z(Pi^IG-AqnH!?-xP%upCUg3X{r=`p}HI&c2>j+kRrgWan))M&inN z+PtY&McL5mn`>rsj-7=DiORp2qG2n;HRVCuaYg;)!kj`=yMvoj-Z|uFoDZrLMAM2Y z!0N~c9#ZmuJR#Q}#0T1qHNDvvBR+1@B1SRAqYtwqSyGIddoV*|7jV*)->=@Pfevk1 zZC<|~pZYkjw_;j9z{JqXp9#7-u5qloED0{mO7@KZh}VKTZW2P2DJh>UOf7SOY#+eT zBwn2}PAz?{^u?#Xf2w#+Ym0S%k5n4di4hfvEWtoPDi)4Nt>|^M`4#hxq3DjsEceGr zk=@w*9CovME$6dYim#FS8#?oOKQ=-r(=NPL$60tA3^C2pD-NevpOB~y6?+3%9q)s1C3ccTIg zW?#tDn~}KG?V{(XljPcO_8QE(ac;P7^qUob67eI}>hGQfuhv?2;Ox(NcTwKxJJqUs z$u`mc)08mD41H}GkyJq+<%ic@c{5Y+!x-`P<+jyjWYG*vZe^5dtMHD2niU|Qqt%E( z2}(11%dA_ncFCpvc7Oe0r{^wO-1?FVUyGYvci>v6F7B|AbGkp%+4|FPVQX=&Ztj}n z%VHrsjG#v!)K**8VcswkdtB}=PeVzOzhqD(oFAWveK=g z)S627+AXpoIt+ZZnr1ZqVPDAAy2hr48hYJtQI(hsB>M_NtEiQ*UGJN*>< z2~X#{FyFF59J$@zaHkCI7|H%6&~*K2z_HJaC=tcHM4%8My8+2r&2*&m*p1!N0e{b0 z!-iG8+>+@0Vo$%yF}mmL6)i2ucF!2x;oZy=trR$A75FF~eA4NNAo#7 zsp*GPxbht31T|2yt$v`&bfv}z{WzS$%f(gTGy(7r_}>B{)bJ#;wDzP=>e@QX;Fd;g zP{XeRu1>F@*%0lNW`fsNP}v~$(+q~=HzvqMMLAl%YaL=r$LD^uZZO1R!~zvSmluS1 z(b=5$THpZ9RDH%HhIySb%RdsaseCuV)MA|nqx1QyhA$d5TdZpGEsfZ!w#G@jvYFUN zm(2Mas9F7H6f7Rsq2Z(4+e{kJ))nYAKww_&B)G$y{>qq9^2_sh#TZZpQ=InP4LfOV&mvhpv0y33z zue%>vc;b+nOg=6bK^=Sb^KCn9ccqfFK*ji;0(9f&FXk)_mMC2~y}y{k?lAi;de1WZ zx<_4nP%NGB90?Jd;ixxpo3xwruB$%Ue}sp_v$0_FDYozYktVzrvbNESzxy00<-yhP z=f52haeaw9jT4rolLs-J~Nym(#o{s#0PlG3l2m#C%83$Wfd^aEKs_}de0Jg??)u2vavnzrObCG5*ANwrCsLruhV^@ta z0O~wKi^Vl_FWamO*2^6CiO(flJ6hfAv}NDue%|3nCf&so5#8+#U-AcQ&K$^Kh>4dM z$Ubrf(4H4yIa9fje}CHfvfADK@Dgxxb=Fniz5Z|EqW`Ak^Y`d+llyvZJCg(04YO9V+jA%|uOtT;U0okSZ>~NT;xjkN4c?r;-(IBL97gt+t z9L2TL59W#@Rc$yuRyQE`-8lJA1D4-9R@W73@)A^U-D$r}Gki5j6bVa8i-q z^vegVA3X%?W*{e&lq_75K7AskUEjh{M&=tw{H9)&Rteqhvh}`%tiBowgwFJcXXijk z?j}kCEqcnc@HuE&_k;tV)b~srUKw3a;Jj`Zpwr!KeZsNx$k6(j35iIiKKsJq>p0#i zz66oO%_Bo~WcdmfsoBCuq4DhzDLcY;6mntsT1$Xh|CPtDP$=L%5rKF-?Uf2@Ul$gy zq8(b#O@t^n5$5O>tD;*9OSnh&B|XX~20i0HDI7lI58@fl+>+j~@3-%oGkr$eX+>mn z2^j)jG0>}^nH6EQ8=Mi+672!$WEQur0pd2kd@>~{Hevpk3_V>AEV+HxN~{9)y!nD^ ztSpDV(uQ&1%N=aQ;MNE}T-veZ`rrAV<4(FqrpTa6(dk?xH7&t8aFFt?Obg5<>@btH zRX<7kt;zEpqZ;q$cVTuP<_QOua&B?_OvN6pBWZe_k zv4foL#u-R-$l}T4UP;qhCJd@81g@Sjmh1c-XY{;OP!)We)3;<@Nc~6siwcv1nFfQ$ z8Wv3Azk6kt13MfPeQmz}{;JlMF(*NPI8|4&rw+HTt%i3hh0x5c zBsK!S?(f|3Rjw5*1wJmD&c5?XDi4@IA?cN`u1?&=YsOp!i!ZUzt3b>J$PD6%hh1{G;|*0AI^0#os}4#az*Mgcm;w(+Zr@khEq&URP%|9SCbDhoXZ`xhYBeE zs7EJmSgYVNW)Y8kNxY_cTN*PVg&S2AU~%m>e(#D4!m!Yg=_AvT@y=J3Lj9v|zW~LE zT>BE>tvEm#N#TJ_A|lXAMlK46TuD&r!ZN>f!B{`6 zS)1nveN!A4MyhaW4c=EQPbj)2Q? zHfrbi4`a!piqT!f_GT`>RvWeco=d;omsMI}FhTc1|9t*zfhTSyu?`jA}{{5x;C zVc33n9&m(wI?stQn(TUx&Nw^o;4cz)cAJQnQ*CKn+-zlqGRD%pMZt+&R+J+-WnhAc7|yM zHz1i5_L)qn3R+uVe#1Ic2rJHojzG5Nik*9w<3&C$J-C$tu>Ky`tMca*=X%2|&5c`^ zvJT*^yX9b9t9$=TgQ@ZZdrp-Dk%o=BsrrhIfsV{_)=%3Lag=}xB{&Mu7TWUVVW$Y1 zaq!xU!9G#IFW(a}oUdgS#MhLn?89=6dKqP{vTQ*CYxu7ZYoVcC-70Za_`s&=vn4l7 zJ!f=X=db7Uf(Un{(;!4P+^IlTX|T%h!YhQ{mBJm@E99G9ZA5f2=L&&vMJxtL%S5rA zP}|liu`B+JO5SCxF$jD|J~cTb5Y}c>nALS!?ELdQhT>H{xto@~U23*&mmNG0fi$D0 z51|P|Y5$sT8MVoY>m6XVQe463*tU91hg$n)EGa<7(m_6v73D5F0mZ_UktE2rmvyAG;#syW^p zCNw?%gR*&M+HjK7YQk|R+>lT^MCiq^Iz8!XJ=dLv_15nua(HoZOuVuI1}y0^K_Oj) zvnC`p`gS&am}gUX5h6KBf5#m2Z4gJZ>NkZ@+jUr9tW|wMc_w>{yy+iKs^-fCDfzD; zqx^JC(`FOGiM=p$n0Ya#ziZ(lIO;e)DUGRGi^ZudAkxnEShfuUL8BfXv#w3T8mE5< zqAjZ?d_Vk8svybau$V`N`<455R@rOL;>k}g?bk&! zy?9^{#U=c=P^r6j7U_J9xoZU{bymZIlzf9#c{VVoqYZY%RoHFi1JPzuZ-2>1i4O9& zoY8%`-sI$#99dtlU-{j~`O`4tefM@Z>-Z1Bk90k>T%m_ph$y6vzpIA?O z*Q(xP(#K}c;+V!II)2hBNc+q2KZ*|Mn7Di{M8lY7MT%zzFxtWBGYQ_|g;0 z#oV!9fvO=qU}3Z29`fE4p&CKYYKxst71;bLRr-TDP)z{|?4dm8%z`tqa-*^4iv!bn z41C>}fd7uMR6)H_!p6D4*^eXx(r z{paC~Dyn|r`&r)bhtQXpf9|Ezis=-2Il7&ljf2~hX~?k~qNnZQZo04q1*SKRD#pPK>b5LSDOCnUmV-L=`h3Dq(P^eZH3$+W*I2Jg7O15I-iimjit zpKsUJA>i9G@i$Z^Y?v}9U;{dOR~>M7_FVmf2?QXHme$cNL49$%0*z%-XIzo}=J zm*>-$m-(rH7XOxKfv)xDne(nAr$>gDR?aqWgkKzBob?(Qaem983j z?(PP8hwj=Tz{{#Z0Nlmr7FqXtwee!=^LPSSrp$Y^^|@I9Kv@6*ws|P@xn1|G^vFBi zNdsR{R&yRw<)hf{dmFa4-qkd=f?N(okii?<_7=qOElT7XTzxDL&c9} z)Ls@b6Pc5q0+Ilp%IQz1Ayf%x+QO)=ldpiZtO96f=^k<)YfM>SlovTxt0CLgJ9n*= z?-|X*`9);uS?ZktI#v|~DQue>xtI-18L7aV2$W~_s}jI%=!`#&8c->ojl0!6xq6qp)vk3hHKW&N-PPAiL;|)=uOfF#6 zTjOT7ZusOVp=`?YC#F&dBIs{472W`Zlpg%^qzzJBeQ1>@imSdR92P*!a?*r zsXwWYf@;coGbm0RX$d7{Gq6(t# z+%Tx`b}=_SVo0$~#Ty0PE9Y@q9SN-+CV~d!iI-FEFiElXwVdLCE-5W5XCnq09Gt4+ z2_~jRzwTsy6yD3Yl%is=m2Akypp9ikg~hbL%0cp~es8Uq={(+^-ZA)I3My2bQ)ym1 zspaqMaKxvuI+~OcGctEayXh#^-sC`#<>jAsYI2#*=HG%P-{x>GU4LKoslaClxgbXS zP2km4_cjD(PG~07M74}>(#@hTEXzWaN5nWcql8B+o5#ZV8EhP`)QR$d8uf<&9btw~ zO~1qCUKrXl@bpSfv>$k3pb0YW$WuL~%1lj;l_j8mc@-IPw-HH#(z;`P~w`^-heCoTcI#|5|&Zn7V3?ZV1VZ#Mr@N_#A ze>nYVJ1s)l8+MvMI$l|^NbFN5$Fu8LUt3nlqJkNdS@Fkr&$xBxOOPRg zEJJ=d4QbsL^AA@j&w#?()nIgCF~%H}vmx&5Q#80lKdkL;X~JVbV6%>|cI&M42(a*u z!1P;-SFIDiwp3Yu(#kv46CKG_7LU2wtDs6L|L6aB2U|TTag%$siY6IPe)HzBiG~)b z&yWAqvBGbk?MvfrG#jrXPr^)Et{z602ZoZs{tD+H>YH8WDakWkdvds{fN?a~ER)Go3`=tU9gEgRR$bXM0BEy!# zvcK&)Gd+NY^NXqJ!^z^qcZ(Xj(8_aa_G7xXFwsVsD5w$EP*>bxxHHphc@^hW8Oyo@ zTe|ibdir#dWqXm`O__vTd2&7#koHfEBB-Wrg8U7&i^3kRs|+OpSL31($Fo`B%qzM@ zu%x|meM8ixeLj=W<==E2!NHOroEt@&DLEG%z^KEU$zbw2b6=o~pIl}wMcRxEv_KHf z>&>Hrqn!w$daiS4AVxtGhLIqd-p9At; z8`Gy~5}3yD{@`h5Rr!{9I?V}wix4!TPt;U^n2*0e9QT$mbfKRw?PraHU(;ZuIrO}2 z3IZyo_g8V%o^Pk==u|H=OD*<9a(@p0QSM1FmeluDHYghJ9sO2JoZRJ@PEqbQjnQ?U zZ)6`NKkhk1{2%<=Uo<4y{an$`YqkPUNSkNsZPs_(`K1BHK{= zcI~(IdSL)5*sCP=o#P?C&(Tc$Z$rz5b{iO$-BH7waTIPAX#vyx&-JwNe~srFN)i{j z!Csn-j~~ojMnxJUPYMhfZ#AykP90{9K}M~cRZ_akyxy+elfA!iT?RUh(m$YS{&3_t z+zXCS*|H{>V&xuWotJAflapW(hLLC^Y`G0MujQc}=iqZxFYMh-T}SpOPVU7hWyIAJ z@;|#?+O99YCxUJF2<1CT|F?wR5e}nAvov-)E`+m$bO3dcOw9#xoZwbx-*VY&org_| z-E8UiOf7u}pACpMnQF9SxMK9~E%;tV2brolh2cywY>;F)zghP5-iS+@jO(RiA?3;M z>klUVM|x2N=Bo~mU{xZ`(2C%;aO858I}?>nLvP6hx}B;Zug2>V1cYdLP>xcC^9Oxc z%A%DvNjFDG1!D;N2j{=9KRStGJn&kEG-8pQg&6)c5~Jg~m^q+O5(s=Ksgu7BU_6xy zD2ZtmP4=K@%Hj=ZtEw@Nues2*W4k&-Aib9^RYQAvb|=Sg9&6e$DfL!vmho2fyK1lc zb=zCLjU$G*kKuF3yj|W9GC@P<__&zs|ETVBzdUt3m{ompxvO~#+qJxXJPpf{cpA6A zB|16W1JjFxZ}mkRpAK<=w{c$opwQ@$9Aiay7g>2vk3bp5>$+QTup2HRyiuMDBC~GJ zhG4IFub0@rm|J&K%Djc+ViI=#LLTAY*;{z z^~FoUet*F8)C(M-x3T7V|LoD`k9-msg)?Kg+u|u4A$M33q-?&cKEkdE=O=^3vJuD@ zPNwqz35fh{mzj+=x5M=LT9>ABp@{9;6F_(ET5|gB`EA+SdPn2FCbE?43d!62+CT#K z`%@D2n%w@@D&knIkJpyB2k9?;;xEhHbt>KWsh#%-Lx{WtoXO`Ju5x^QQhofGT#c;g z%7fI)8?HQ02)JK7HtLIeneR`DH!UO!AhkM+^kQBXD-qSl$0L;|)p;uxH!;FuTMm)K zC#k#t9ihH<$1z^c)vj-EuyC3oZC%(~ZTgyvZOyUMRE_y|_{%31&fxj?#A#*ihccU@ zC|ao?8vq3{J~x`AbuSx6q#Vi`YR_uKD%l=F^yrhHRw1pb5RM;>916?{*C-n**yW&Z zX?K7wnT7Q?#w1JmtxGVG9ll`hyE*z8Zxn5hJ;-;86{8*K$bG{U@8*3%e$j9oIA{W_ zK8k%jfOj%a14$IY>=3UZMiIW2aZ#}Z3b$Iy&-KtUTTTuEof-H`Q6Nzp`&t>7dOR4} zDt{vsmr)tWh|idrvc9oy#M(LY6|JL>il4p!*f~=EK|DokJ%N}?M0UsV96~po^mJJQ zP7l)x7g5_2w#f{|vFakfzu5ulR_=2<-j@Ig=(RROfv25Z7JIR@G|u0^T@$p}t30(v z!hBO~oNCWFJB7Z)Lzzim<@Yum5a+6QzkPtzIjSs?`Ii!&Rk5gN$|y!eKi}_6l5e_C z5S?lRaVEY$W3liH6m&eK(0ya{B}N1FNOFJ!4@Wrau$Sep*VqDItaPNtcX0Sh9A1mW zzIWe<2t}J7Lk-oBJ{%S$5W{Q4*_DxFz?4rQ!7|cGNf2{2MWK#FR?V$Iu+I&Ard)q`@==7YTP-Aw+Q zbB&eBP9tn$@75YME(Zn%veNNDDX_zU~&Y0DHDm4v!fOret?zo@jMQzB{`-(-u+6PsVx5{chb_iPMJKw0G<5P`zJokjkCs$S%%?eBw$w z4evd*c#;#&h+kVzw(%sE)+{>H?0Dt(N=}XB!IiQDj z_Jj1$9h|WxbXfUk@sfhgtuT{U&9R$;#Z71agw>F-v<~w|FYC2n#G^(9>}Px9PcMs6 zf$8Kc_XQu~VkqQ8EoN4$P^zeW4Ux{h%|=)iYnewfFOkocf3FG+kq(9(*;uwf#?zjod7^m$V! z`?(xZwrQ802G#rEwMFHfsNVV&w;3Oz(DC}Ux*F#QF$mYaNCWwe4pUKy4kXyA?x#KO zwNx$K7A%{cm)XaK2^kRgkaG$eXI2kG6=`Nh&=2WCzjc4Y0)MuJ>oJBjolzK#<*dnv z{|Z_+j;<#_sLnMrZ%{%5lhe@!8RWZ$i+*6!Jx#){q@&9Sp4z0vTRCCX-c_+b!=4Jx zdPtq3Ds$)Z!bCsx5>elywaO2xm8NOV(LJ@6<~36|Zn%cgYH+rgs%YczrC|*T@!8sm z%ZuYNn|B||ycs$AvuNTv2&vAbbS=z742LjHk&9!C*}KD5R_k^PHt-=fE|EZaMGzU! z-gKvsX_KDSg+|1;X=c|p8B1N)O1bn|cXWz@xGVh`{jRGn6o9vj-8`mg0rY|kibTU- zd%10vwuv86_Rd|=-9G%cH1uDqT(_`dQ%r=i0sp){J?G8jHeu_m1C&_TzLtA6AYldP7T>U#$s=fCtx=Nt|5O<7Iu2$OMYlyR7#<2lQ26GIY7 zRic)w4HP`ja{3@p$b{sS+TlEpGE_)dAwafM`6}1Yfyau`k14)=FjGvh9jsw}Y8g{% zr0ZHFH?_k{GVQ-0!!oJ}a-ZoYyd0lV4-1WU+inxf*R>THJk3FR_+2fNK+_%|;d6Vi zONJ}Znu}UunA$FBDpBZG^~)&xb(PY_NSTE_KKX-T6W&9!k+{}p2s=364j$E)5JY~R zBT5K%K{#pa^xxsSY2@YJ(bEu3vQe&7?(FmODNvPq)i!f=^*qzr$+hCf7pp2UgKpAN zqG_XJEY6@cNDB$ko2KR*pUzm0Q@8f@Quvd=f~}xAz(sjfnGJ1+XunxBa#d z@|4}u_-M$#VU(8&U~sGvsiPaLXr92iuVSs?l)~Rbr7?+a|GkfPINni-xlPPrz~?a5 zgk=;V9o>&Z8w_{DHMq=RC$F>C!R&CcQ{K@9vR7adDIJIyV&P=$+w7TzeVz3n5q#To z`U5k=Mf~u=J^^vLQG7HmMptn~e%Yb%SoaF%2v9?C zm)Yz}J^CSAYn&UhoGxNl$sHcO_DrK0{nexA6&vR>dv%vhyTXxy9dvtD)K^YFs(Kb+ z3|DqQEyFY}4w&h)1(Yq3eT_CDRy_}!PDL|4zJN|?hqvdD$Y=UMpZ7!O47<_TJSSrE_X6(|lWA8N}jPk@)Y<_xR`!p}sw71j4W4 z5}V_t4aiem(10#m^Pm2?O+KyyT#bCknx<;mCTu{8URFUWK*-(RaoWY@IE5t9??jsgu1E z70}&wD+mx^(!2y%v40tED=%$o^)xO&vP9Z62QLHlZ;fy?OqFfi zBGE+ZM()!1u)>UDbc{Qxrg8;^PJ9Bz|HJ^i=6_-31Yd3Z-?z7I@bk5IQybrAAJ_iO zbU)Th_%utMuf?M2Z@j!LEp6;3-dBr0WchUEX(7(UU!q^mpM_yv8=;Yi=l!Sf!S<<# zBavNXmhbp<=Gy5{wB@(-ko&ZS$ldQZe1UJQ;8&gPTikPZ(04T_=Kq=5@H1Fyx9mz@ z*%HeleOdj#WBvn)r_z`0S&{X-*8g4IVi9f6^1+(}FUWh;S?Dy0OT9IvepOXs;y2J> z-)-{-$T(Ipq(@Zd=&wTIh|GzpQ#+3v@a<9_bnS*+B;dYq!&gw$&mtZWU_X`DQG2qI z2O0dweR5mxaJ(>P2)U~EH>vJIs6Xtm1X$$-+z#DdP`)f0yxhklPj~$7^Td%41dr#s z?LIe^Vn}=0?ftH$`_r{zdxsB5%Xp%cHLQi0i402_qjgjTCUAgIRP&12 z71ThbIvFtO9_G;E*b~+e6tqVg=IvAwj&$V^7{>hH+VO+rtU^pb=d48$MAVCK z^ags%lLiW%ou|;4q@lXYxWs$zhd|<3_(jBb{Xz;_(Wk%w)e=dLGwc!rBG0F;j`@<( z+HWZHL}b5kYK}(Aw`F>G`F!#T!UY>Ll^fBWBT#Sd5-UZ8f5azPD$~)Z+{XwLHt?L% zYCGcQ=b^S?VLJb?Vvi7BZ}v&X8Ww3lO8mz!5ZTnvynJ-*nV%SPg=6(2W2Ns^<2{LQ z>1mV&`Ig+qe+DpYM0HUARVNnoyMM!7xB-i&He-w`xs}Ytt8duwRjr#bhFva`T}BeN z1m1l?8_9%(KBz^`P;H6@=ieuf<8s$?+$rIds6X4UR?4O-O!Nh#z5R(u3k}*0e84K8 zaF#ih?PgdnD<6c_8E#H>FyBePW1RmN+!lJ)!Is3@yfGK0=YVRg4too68lPv7S4(8j_4~u1Rhl-BS zH#|js1%0GF!tg!Lh~ONxOqg}Hi~_o#jS_sGmd1k(Q3t5FdMiZ_OPT#rKc3^Rw=>0U z{L{gaC`!T5VyaLC%-Y%Je!5KTRSjK|@80{ByprEdep5Xj*788yqg4>fkig&l+2GO{ zXBr3lz4ymqongN*&!5;uXnjE7t{(A$iVIX4FzI|+UPc5`Q!~-TyH7|PaNyX|Pqwi~ zVoTKO;(p~oWp?bc>j?jenY#}qd2b_{Y#5Uf6bXv0o3_cHx6lg7K@L=gQScG^x-rWz z1v9)avp7F?h))>45Nl%3a_qucWvdg7S%YyiKl|&`>MBXFqIQ|60U8@p#mm2fdzmh;`^q1v4rhXima&iA6KNs0Qy{-2<!|3l8}BSTsyMSxW*A2&rfm^gcz}L)>&oWZ>duyT;lKPR@*K z&cX`jf1Y76gKbB+21^5J3m)Z z?y+I0V$pBr;MUh0TFKJcCLf-o|u z8RbRSE8S5+R@>t@PsKcMp`u@>lkMnrLg+bbME)z?kfnHAU!ud`eDp*7mcj?7ZV;uk zjR}gMvWwy(gOC0PY(Dt)K&jsitJ$H>sZlOFD_n-mA}gCTo45#Jo`i&(PjGVc5E52? z2rVLcby;sjI+5J(qv_+K&Hw~dQySx9Htmx*Apq+~&8$vLUH_7~GPyUh*mfJ-W}T>h zG1Dk0S}K0Mq+{&8SmLON*`_T3``%gG>utYakV~FUF-4wsVl)xnRypIejD(G30A$;2 zd$|8A_f!L_wQMGkN9G+-ghv+O^LmCFjJLT)Iu z54)JpQuq724FB5O=KM%cU#m0BCd4%>CEbB3(iaVFa)mwUG-0{0${0|D&|PXO|Eg;A zmB~6#*(KD{TxvkBi?2uDL;tW%a=faB4|mutG(X1YYF_dcsHEx^zUu!p|D8sKoR6cm zS$RrHNZY$Q+V0y!4fm|}Gk`ywc0JJ;i(=Tep!Qw$8?Tr5&{av5Lw3BxgTM>*>GbGU zpcVzicS^71KQZ;e9`i7jaTiW^*{o2;I<{!r(-XV0rb;T?`RXJ4inv7dUH7AM@w0GI zMOPlM{Cm2y(FDs6bXH8dJh>*&=A_D^s!w&P@`=#&S)>yzj<MHUyPu1=AgJklqpwBcd|kjf zgp#brPX9R#wZxFGD;UTbWhVIJCCbKi?Lc8}y||EILjB=skYy09mp^YmeZHo4?a`1| zommBcX=;ogCxW|{oo83awzZIXNc~Opd6M)hdkb9k?cgHDVLG`;vRjT zd6e?OQNwf7of53UI?NA`+yuX!{v$+thlF9sCXs=CbU}(_?>GJvhYb(aZI{KQhT1*V zW5U=KH z7xACdG1bGO56NVPdT$`t279eD1_f()0sN;`6n_J_A3V`x3wawxrWg3nW^dtb7VpbA z2Riys(T(@D6N&noVv;XCNe!RMXrBXdbOD4l8D0*sXF(g00& zL|EfM(=Hz!t0UF}zsU0jLmk9W#pTrbEKl}-u#mlG_pFSh^ zJ@6)x^Qju0j{0#cQn>g4Upz##MIwCY^X4}eCoin2KJ^CPqHH4J4F1h_())R~j!|1M zu#mIVXd&}D)W^~hZ})5T77(3hSqtk2+IqQ+m?JA4(D|P+;BX9!UwPBi{%_~BX?Ei~ z-Cb4!n~Qf+o~b%j`AIPWS2IvoPZ!tSs);5GFj;A^0omTp9Ngb`FLRvItUlR32JfX$ zf!rPjCi7O8my?IwZ;^@q^ZoydwA6hbw~^Mzhe|P@i^@*FC)1Vg$APN60OR;PvF3dN zz{=nPX?wf34N>(v1QG09H3{;+>6>h(Y{KYoh=>INDgDI%BNOTFwTC(O(E5;?rN>}` zd4M+{?qY1Zfo@Z}oXB~Ido%%ewhnuEi!ubbsAoOC7I z5VCdblqX|6^s>E$vL?GVRwfTUCKXI(jOJ3F1h~$PK;7i6h!d1 z|L>iG<8jJELl8*|x=82L132i3l}ZPLSfi!*VI6&aivJW+5@(qlWXUoYM28-Om5aqg zzw*?JK`aKuGWqo86)+nUNb}LXg7_;Es3{3tM%}S7A_Y;P7)8tszb8EuzCQV=Dt$6t zf?hgR#PfUjs=t{DdXSB82mBsk*p@0C+tpbsvL?(^M* z2N;-e2To`z6*pQI2ngihZ{8T7YWbQ0{AUn!hV3X;+$j#qUjC@@jDHwH>wEYqt92N+ z&tF=kVTQ@$j-er`dzY&cQq`3Q#d)Gyb+97({14S=WsH%6G`fUX=uhmX$gOu0cG-JQ}XrDb8QVGo1$AM{* zN?9l-CBzt9h+Hya($?Uq6N4&J^G^duEh_jGq@`bRg~IQ{E}e%d_oT2bdoyzch0Sq< zxE6uCLd;--hCreV#Sg;-X70a~z}CwV#0sv#4sCU4oiTM~t;A37Qdb#+e;RpV&%BPh z@D$I~V&TTm5mp{upJSE5A`>2(Gx3Y$`YGF;Q2qIg@Jv%YIEW&bF{~Gz^H+L@;aMOA zGXXwV{B4@C^@`;YAd@!Bum|rP6ctgjW^&J`*izi1xW9THF!?ODr~SE8IFk9@Cks&v zm{A%O`z;qy86=)F>^w(OE?lqZM>K-u_Gfg&r6W{}%@3c^3idT2^yy14hJG~ZsN-w) zg!H*c*V(-o;Mhw3O_>NH^!R;3KFoD3xgD)F##5Xyg82SFmf@i=QSTacVk3zU-m|}V zhokF0JFCD9)4S+R#qb~P2Cu@=c02~ICmsa!}=0uc)?w;6%*(;4Z%wQd_vr4km zq%*dClIr#|qqx7$lGc*C9Q$mlo68XcKab)47Elzzw4NuVV+dz{=m7?hZ;X6N!jb{ z^oYCX8;Kmp=<%2hi7 zT#?GBd!>s8CH-@0J&|CnxK{+kTB0@nYFP*^F3)b;naFy@imVwSLc;m-hr=w+jgMM$Y{DOdbQSEQq;DY0K!{@Xu>5# z>tfaV_sh3z=uBB7MluSfZbg;?I=O3VKETNR{=?@ceY=CrTb}B z47HFZcK9V+g$bpHtUJNTtd{y z_%~O|rJrHrhi4eNY15vjbhj0%wGO3Ig`&D~^n|{7k*uOSRa^5pVQ<}S2sd(1q*3EG z!$ss=Fnz&D`>T;qE-{DSV1+r2lBowfS6~d~t!ZT}-v$j5UWyj6IOzH}Nnm_|{BL0T zydRRv@+gVBfXG!?K!)FkIeEF|k$PWOCXJOV%X_*-4eG}8`OFoY1UOg9-WG;G1bN8Cy7`#jg#fMY zE1F1_K2k)38x&aLBjiTCX8INY`ki9GxDH~HR#*fNEVP45ISL4hgnZrntrqhSTK@>R z!SkS^6EKsqugKbiAJ^$y1yeG8HeoAVo?*ZlzXM5j$G8tJJr07#0chHTRI5s@)iE`{ zNIs(e)>!nc z@}rhl(Yw|?p_eNBN;truZ>DjVzr@^;wQNiVo*Cd}a0x;@XB-Ixh459lGqb8`Q1{%ApvyXJLA}?-Qz&S)tQ>!&pn(}tKF0)2`dK=cXnJq(7I8Tb+y#&Smq~ScodLULqc#Wf#grzYU!ClL zzli~K_ z>Nq2109qOEZrXp87Pgv_G#Hrv^12RaKT9qk2OHJR32ZWMoee)@D*U|n7va;2h+>35p&oA`!tJMU?wwxU7wlW<8?Vf++XT)`u&E|-;4l;0S z$jK2k-zj(0ATt=t(p55a7o8MC-TGNyUp`Q?#Mj@S{4X3krzrgJKcH*(rI_pgaaUhn z`Tq=5R)+li?#DH;wndQZgPFOY>yC(6TSEQuv)P}K5nGhPKwhO~ucCgn)*hluHw9XE z_Er>WdwMhmSoS``M;QXYS~c+5U!M^Adfma7TklaG&xM)j?VS0?U47rPGaBE=dllcC zo4Kp4DG9`!#6zFa!-n?NR{!(8Jn*Lf>S{j+bxA3Kpmdag561_Zs>1@!pZ6*29)^Vw z0jH&hu(p~=O2@;!33D;u`y%M-5^8~(@$a8f_jt#HKliNep_0Z%i|c=eYPcNyUZha$VU(48oE7YN;j4JfI^#R-&AppU^P`O( zX)p~DTzBn~?GbmqgUn3H0r9LwNe%{OG4MRyX(jq4og>zAk{Wyr52k)P6( zbOVrh*r%asL^5PN^HO=fUy0w;Pe3(rkeVLCF+P;bQZ8SQOnMySZwKVO!MOai-|sV0q~wvFlVCTUA`+;Z!nlg>>Pf6|52QVmJ05cj zjk{V!_zHmRwJYJgB19Q2cusBY{hIW80CBa_rff>;k z9JFIgYHmqFj!f2s(OlkQWLw;t7e4m%Jx(8swzwJl>9P33@nmvkEA{u-v~Pc1d3)Ls z%#q0x72=uUF%iplb(0^;00s`E_Ly*^o~Iwj@!NL0j^3k46f5##hX`NxK{qAxAMk4x zj$6LsHkJFtC;kqC^ppJa8@k(#PXe-=zPr>=%!>klV>dV8zhb;)W5wcwO5QS72iUAb zY?X|3Mulm(oaseVEJevnoTy_g@Y25?NsgEeMKPJtbo z1>6YSzCNca;(_eb2>+?R zq83@&p)qQSUj=G=@$Y#jd`nh)Mi0p*jb&Y<85dwx2?F@HnORF`xbw@n7tRSX9o`=D zz66TynkHh5{-N2xJgx%q^?(g+H-82!!alc`<7yjRNUWDVZsydYl|6xS-vcb{@Wf=> zh-a!14&VLGMf@Wj1OvK$v~9Gq{{AtbS>*7cW<{OGyO8mEcje5-{`!t|e%PqbKOp!8 z#;;yM&p7T(mhpDRDQ3N;ocqsNI0F`Abt}?YbNi1Mo@32+edTIt@!M_W%r*DRpm}{b z00IuAv@H5KkoXI(IxK8kpMYq9s6m@if5;0n9;>LjmDhe55P{wG$wnMwTi$PJS=W&N zX)!QZ@QPLABb$|rPR7kr=PO@fY!^8`^gt-XGkk1VH+i>GCXU#z$8-ME%E+~B-KW&o z+(P=)AaZ9TFp##Nz9@xzYR^{kL3DZS+qfW2DAdB4$@=Zk?=us8FVi+%-8MZP=Wm93 zf{$7?6*k&)MIObPy*n_qyd0);p7Sc{(aj6b(d?|$d4=0IC6)Mpi!5RGiQTnr9box^ z05xMy{OfRz&x$Amz4u5+s6olgTLM^VVkq| zi~nrcqebDan~4K8{qr)n8Z?wrgH~BQ*L44y>*J7{Jc4%Bngp@e`*JQkdMW3EP8}kv zJod^UvR7P&1uCe*iY8CEtWY)2MQ?s@MAIG@kFcQp9R8J?s$n9?Us&h;?5q%l`-P^0 zKb)yncz*3emQ@U8_^_16(A*ck@u%hDDwSIOYoATVb~m^TqRV4v%F;%;tz0$NyS0b+ zEk%mHX{^E4b{e<)kP%zfu3hS&a9M{^-5Cm}x!(9db#}W&!StQp7XEGe?fdtxr0#mo zj=HcZBypmQ#f*bPbKLU__Q$AbkKoEN8vW1d14ce>k^y2gLCq*AF!goTvtZJt29Eup z#gpd$Gwy41Eo-COAl10Mek}b)SyP1>&&l!lT|eS;RDC#5WNfr#RK%XvVPf@%FBRn> zwU2aQ$~3Dn*Tqa`ukS_rZzO^sxvn-9_%Cgn!WkKII!Bj5`LqAW+v-V-fKHt+JKP&t zZv*OYa*5JEtXuA|@O;+ZS$@-0Xbc!|lF@Gf5?izUoft-r?x%@&H&d%bFV&D_4yed^ zbCCgd3Y!s}z715_!27sLuQbGY3{q!#T;c39J$DT*%1w%Ib2PukxK}J|mwzEE5K6t$S(FO&gg_9sSEQrnR)zjwVl& z09*I01sGG$@r;NGd#FT@on;J8(0Fr@#q=AnO)nBc&YFob5^lu#(u)0nfE=aB*I!?q zs#(SQWfJOdFdt01jUZ>nvPCkg|Ii=Uq#EhZS5l{|(40bFH8l)$CaO-pG2w_|d61-s zw-k-nX|1C&%Cts!b~2?)I4D&p_6qA-WW3m16-8u=hnnS}$G#?~00{2Yw@$Qff-GVq z_RI$ISq)R4`=GaIZwBEt(5eiYb%l|sRAbZT&Il268WGDA+(;39svZki)bez|=kK^= zK+`dee?1%?Y#O{l0q4+F!1kpIa zADg%BcaYLG+H`K~V$T|nLCDAK@f}>r9=DbF@(EVF#$dRL>8v=b=`ABlAifFjh zZ#i7JQlM(iWdF3>Vd<-IwC-Zf*#xB8IA%B^x>FB(^NSyBlHskn#tInoU_rKpV3E#r zarjkSXSQ#cs%t0odbdmy<(|{z((x~mvIuz0cJb*Q$Lb(<%bKN$<;jU@t@GTKFy;|`37evzO+WT`bjMh2b2kpfSm z=XF>DsK{@|q`gV`aqT9co+bF=gdaAzS|&cw^RM}ys7XKd1rt(y1~k#$zn7#pY5ET+ zB#wUl)~dVe6@NjOfW_&H@=K zet8BbNZ9s2M@!r#T;gwuu@?||iB7I!lX^vUg zNwgY>_Z0Y;xZHBzL*Mq8?s48LbhUA)ez^5lqFTY&&jAU(ou-$#A4pRNBeG~7(;~Z< z?Xry9(YwXry)zZ$+eJJ=>h?w1sV%+>h6_H|8Qz-0cpzk;N0Pg1Q zALbo0ryJ&kJZ>`Dk6{a!f73l4PbxruXCk@lcFlgLHK02xr;|a2tGyfK!R~hZ^T&Sb zqJP{_KPXUtng`#V882p4J&l7Wta9#Ce4nGa@l&BXJv{I+yw&e^=_($K*e~IG?yVFZ z=78aK%?%zn^NqiKZL^yD5!#cxTzhVhOTe>99m9Due~X2yKEOVqog-6~GB0)_jZ9Zs zLi`O*?SC5BgOj_J;u9gG1d|n0pU`;Geo;t&{}4@X!Jt+Wjd_mFwmaW|+B|-nD;n~( zG1Fgo6g?WPO?M@SJ+n!sgK+~>(*MuyyLP)y|Ne+aOu}OYpqqx~9|OmP`HbV`yYS^K zw6S9;WgPQ18q5?0U;h*X2z(jfFw8M3!sDo}!9}-p3CwVXNy|@3#>;JQ7@Jv1feVP=vgCOto z;=Lc_r7UN%RRl%lCJb=H$rO!_B^Z`{8;tjqeI)>d2LWyd;qxyNVZX!`_4B9}5}t!c zLieN^(+tN36NlXZv3rOYaBM6ej@$X2@eDnOWm`Ec(dDP_xe4HtHaMbo)!Mb_JOLhc zoDWgW+M1>j5H!4`v8$x8kWsw(Y;NHwI1m|Sm>3S64XFm|GVXq=sdugoA1PcSJmNu}O{=E9ByA5?c2TZ+JNoy1^hL?v4Tt zf@t1Ns=plYgegiDYX)54{>LBI$hqrG=UbdjPC%MEseq|y&5H5ONVY{Rn4OpmOay%` zvy%E%guxM_+{$$;%2`VIK&KTm#b2+~=@sG^iwZj(r2;VBUN{yT0F>sE>leIC*>bdeIX*M^pP&&lHVA-O zCPI95C#B>9r%9$(#@m@a)BQib7#{bW#oR;dyIKa{1_{OX}gtj z_!C?<61Y<+t?O2-bBKOCX@mOS<_K@3mzr&!-^)JMs^KvByl}{4#ON44W1GP7MA_Tq zz9aR4dI&^vG){dq(^V(VqV>A$W>(AH&bfrBv(fBYIorgkV~|k=E$Je zl%wz3R!4rVrY$O!rSm*l=W8EL)XujL=BVxZm;J?|U9x#QFkJcfffho;i)_n0{KxM1 z2%lV6(QnZX?2aMg`2ST!1yt0V40>ry&Xaqnog%kyxj_xj4|TmA%9`nHY3Q~7%THEE zIg?ej_@}lGtU&Iaw1?t8lb5Ftah_BC1M1Oia_**bqvv{z6@**`O|c2ax|5VVSM`&n z<~(RDg3snuoKNli%?N^}!rnz7=@5Fj zK^{+3rZno9ik8w?u)EC+%F`EIOnKN}dYB#_(Ndc_ZmR|&LuxekWCJUH=bVEt;-1*- z?5U>f;qbc)RoJRdtNy%4wBdLNT>O1PQ$w@K3+|CTqu$#zgn(5Z5`M-NB**2n)RL?K zxTVNmFt}~XSd6&x5OZ@})g7uk%l-)$R$J{EP%xq{p>cbCGt$|C?eekm6_1~t>l>?b zZXl}Ox4}C-R|s`MJ(8FX+)Gd@=-sz9cU@s~OwsX|VkoC(kc#k|`1|4k{HgLSPs;uU z$o|_;S87chQ5al*sJMMR=fiEZAFZ3N%V7Fh^}OC1!tT zS}6nNBY#(XRlNCdT-~UBXWyOW%L>)!j;&(*lz1wXrLz9^^6Yt1PHH#%Kt%0Zp+?r= zdW&xON6d8ZyOnvkNcT}sOH~nIiq#`>)w@%ylacA~+n-`t<3eY@7575zllND&(&js` zTD8x1gtvYB6txJ+#lq(oy*X9kS*;hCH(Uy%sz()l}xY?drAwyNxysGBW7-{8HO^JzD^c zQQZyV|N8o1q=cc?s4bkMUV|W#pipQu*i%4VBS+LA^sqzBrgv#H8@Ea$X`6d#fuC@P z>x3icW-W<~x@mqQ=9YN3q%rD-UjM~dHoq|^TV}O;P8FKJ#=rzsb4D!na5sP(+A6k_ z8yo+5J-IOlX||Okg&mN$>hCl}B3{J*`|LBI1LhnBmEc=_6XwY zYo-0%T)86w2VM^WP97uq+UgaaT||^s0SsC~GsFf?qhIbYO9w0c>WjS{)`K%s~93pam??1d=j`&G6$?TugyF*n7!Rn*(_ z%8*F)=2Riha?4h$RA~=+8!J}@5tk05iwg1ORP(nP?~e`jZyqo8M{iF4_dwq4`F|$x zXMq8|3oGtmCIjHN`6vs}V!J9u*v1(U`_UJD&v`Mss{Odwu&`D~eRmuRwhfZF- z$6Whq>X7Gob&3Xci2EgKFR}`9eNl7ha0GeylV~XZJfyQK-Y~rVTy5E$yV@AE^0*wF zyZYDLaHWw&DDn6JzPVsCexSKKRe$PfyFW|6I=Ez5I4o(eUE~XNr~==X8n)gJjTr@) z4L{e^52yI-?-Whb!8N_-l>SGNSJY1o^q5*J^S!+)Vg^!fRXGb=Kdz4%7Otvm>MmXN zj~qrM+9MLcwSMP#)p=nVX!eRo6MxJ7vyngKJ<27bK7(e& za?&7CeA*!*VTVH)MS2Pe#TxZi0x49@LmhpvEmmHWhSpAMsqVh9HuDu7t{OwqZgBD< zgqt|Dqs!@Q$<()^Af(dnMM-{1GN~Ay$Py-+hdf2L&sH2MjaQ;KTO1TiDyP9zlnz6f z4G1D&l4S$Z^#C>h*hp^U&+T?>QqRdJQtbE#-E~;TnQMANYQzPPFqcXc&`>>O`Rr7j zyBE_*nnMy8BwW{+?wM+q;zIn6uk>8r?FwnWF*OO@jr34wb4$605M&bg9ZeL+;GQZU z6cTg1uZsf4bZeexYx=Hf4fLTi_5YZyU!q7ZS}YVYC6607eskhX}^QL5tUzP7}{(wy5%m8a0RJ zdKnQSMsf1o#xMg(NNaX&Q#MY*5>6U=kozmuK}JHwTxkq;tWKL!xu92*@M>pFrl7_h z*{@KXS;-*sG1=%!=lVmL1hUgH7oHC0cJpwlp9Xe+ioEq2rv@ePK8BBRNtuzIQ2#9e zZGuP!HKC6YZV}(-o=MgiI3BahOkURa^%vi?4wh=nrS5_`l-xJDeLc?^cNu}=B_zPO zC>>MSkmr6tfmG$G=#7x|Kd3iJ$OtpEzDi6bF} z&%yahmfOyvc&}sb=|3LPs$P`cB89M_hul%tmy?ogTNApeLNgKlVUKh9(mnI#aXgX2 zk<_BcEX1r0`{VeLZ4;&9-WvbfK)IF7{@+zV->pdnKL0C`6i_o9GS;UR+F|mDvf@(x58BKYqPE z56i9@7F!ZMXw|hm(~^{bHnW$e178^q=ypF%sv6S-I-5olEGp^dxp0w9^DO9T&c;aH z{yIItg2s9odD9ZS^m-;Kx<|MD2SjC8rH4c~6MYf&iZCo{(L5q)9)8&ha=03TxgFu( z5T$yDL*!A>1i^8=gD*D^{tr6LE#r`@L#2xJ#v<|4-{HJloz-_jWX>s zZd=(c_Ft#c|I*)|wdC@U9761s-45YD1Sx^GnPT-P#s~H#vT3fp7D%SQ12uycTy+7R z5A_x=(kOv^Rd@W#7M))E(x}cBOqIJH%z$nDm2Sr$XP`hOK?iFp)i zU!IN5fd72*rvLQ3H)1ol_D$7x|BHPz zz&BCwnFCn_7Gu@h4_FcW4FRFP=p`KZRE3Lgczb-+X=X-zK21z6ilGc-;X$;}L# zSC`)=BUD#@Bn1xNef>PVXz5UAW&s6Sjh6uD%vd+s>t7smW~DY=Xy>b@S=yb79=4h! zCEd{aE||vS&5A$?XN3v<(PxD9G3^RlcCJFG%yvDLkGjNr?TcOPT2Yf|ct{8?q|ID-S7C^Y7Iev|~xo%=0cP81W_NG>K@{US~b_H6-HU3urlj6Z7d z-k6uAPf1e0gKIuGMkHVvYea}61M|cC?du;ks_pm%a)uF5kd8ti(ZBM1b%E-705$tU zD_=at-Vci|kC+FMbF#m}mfYFAWW{GO;2HTuKp{8eyI=CFJ6Q>vI{&DcWCyGO3y4Sx zX51*oS1-3!j0;e4tGm|KL+V*2R`y5i9Xe5g4lRl`UAl~@nx{&I%%M8;EAd{fW)sOl zNmFCcEpWE@gD7T>g-O5`-UgWk?}L=?hzP0&uU-TV_9H|;`EhNSfE!J|d&OeN2HR-Z zuA1keq-UfJ&^fNqC8k8CBWv7el25y=0jMy0VL5EMwoY}AR?O|@gujGaxd$3`6{hvG z{5X0*FYNxY)4PNCmmRuxLZrewZ%=kBjYeRc`Y5{Rwn;nsp;Kf3D8u~VJ7B+6B|!)H z~P&k6BSC^h3`Tt6neZVvs^_>x~4{Hps<|nTfw2w^A#h2 zz@SeB@MPU-1n^S19optFk3tq>yA<#dHYOd&cTu^F=g2l?cIb(?{yd3nLBDfSn3u!l zr9aM)LCn|IHSuUQc)%A?_f8hg!(w8zFx1VuNcKY>NNc_@s{t7JZ`uLoZ-z7uG>d;u z;vnC<)MdXbIOy>}-}hqoStN8BZ|{3EOK;c?U%o8y@V%NHb2OSi`cn%3A786D;>yYH z^0}-XUwvbR=s`GUR=wUzsuZ!RoWG7#6gaSm_Fo9qS8!t640Y~&(F6$F<$u}UIxj=P zl~t6gx>oJ5*6R5`7N_>R_JFJZ+qz0TNBrCs@mZDczN@?j-F06&Fg-r??EBaLd%Rp+ z@%#8bN6jt4tIPz-+4e8}YO5sBn!*3Mv9h&qyigDyVB3&$zf@@)V9K}JR?ns$XoiIOSx~CC zA-bpHA(sbmkZ4P7+2Xc`ySMq>z5>Gkr)okvLc-T{xLIEx$*{18k>q_f{$m+xUwV## z(P+4WqSa^&m%L5r^x&X$>bxtXy#iIXAT;|Tx{zBrE_8x42{SmDn|45en(5U zIM}gmDC!Koqz6p=S4%98w5;pOF70ZumNBJK%GZurCl@Dd_CBpxGXmqsf1l@Kk zje7dQ1|dDGH`9L&d9Rs`6(wKZ024j&E@6!%6!wkm0M4GbYYzn(0n=SB#ns$-v2`4) zPk2FqPg%}V7$x{vq-zq2#U3f#?8c{8`ijX(MpaD3u_B@tb6!BTL_(8Qq#J?0QZhNQ zF}|OeT~kCtyLfmtJ2%O3woHAo>YO8cPeLfI8GmR($@}AQuUir}Xxi{FsT=8J$2Pc- zab!YQF6X?wFBQHuC&m2;klkutz_MKK+ZzNT} z#YF?cs7T#Y@yDNpM$vfsod-kh;Y4M^ZTLVh1ME64o}g)-VMN8y;(`0rm~C^i=}?S5o&Fc<~z?wTDdoivM-0P&KHWH)(J9%jV$x#WD+n zNmk2~43e&Z022yF&eowxOnoGB{aibkZk!Q4qN0g8Eb8Hm1$4?A9|9v~HsaeX(Or}i zWc(P+l9*Kb=&@MCQa-R7-!iEa+fO%6tK%1cc^c%9O%8BL0_1a>l^IY#i(>R&E`!l? zfp70wH`?KOW+DYSnKDmATq-Gwug$8$7G76jU+o!5J`HjOw`rHJ<8MsbCz_VUCQbTj z6J8{Smn3|=1%+VYl7=Vc#*tL|O4%^^u+0VVn9<7wuodC`q}WlP;NpQ5rb(aSW&%~L zaoxY@6o04*@pe=+tp6x5X@-8Amuwc$Y%)SN`$@ZfMGwbYla~<6>+TgF3g*E7X^bq7 zVe}_?1k1{e_@xYLGSx;r5@i*+uh2rxT81$5bTV+IK8%}t12^7p2q_$!qxh<_%*;z3 zBC^yzpF2R@1~NWjSZzWS$IE{992JxZLYIcUaW{((hia2ffA;R#F89Z&Efzt!cj7DG z=Xf)}pnSklEFJ|x4YYTNP+HE$#c~2G)SIGo3;YgVtHo<#x22tZ6fM5V3vNx-*w-E- z-Ojr0Vuvac^~qdzA+1DXT3S5>LixRF-qsKvodTAanM^hQNMF?CW%RJKrw!QkGU?V* z?1DZ-LVF+xvdTBYaa!I0(#e-o3$MjSr+dcE5RL{?MM$}7vsKIJ$j ztY)&}4y}|!oDuczXXAUlsWSw|^`>J6MtZFVXAfP)Wvo{P@H#~O@Zsc^U5R?ivV)y| zLn_a1LGh`5grC;M7p152KiFqeyN4DGfYMwE(uH2@#mIuv4BvBGJD!Ik&CMz0n#@eQ z^nt{yAzzD@T!!C6lMbV;cL9Pd7DjW@-bxbet5MDQEn&wEsFW``Jh#~SJm(G35V{Ml zISfBG(1LEdp?-Pt_9jYxx>b6W+5S(Q!|s0QXj&QAZxky_Z%E&ztvUu-?^My#ul%OG z1-FbglQU4RH@y7JCzv z5FJPT*4O7wbZ1C=mE{??yv$GWpCD>=a~nup$z3>7+?qQ=^xOTBSL7tk7wL&WQ{lNV zazn}}q^jhWIo`%5f9<`mMbp+m-efyVXXTU6m$lX|?=6XLd^zzSX=S<477@`ZI#d35 zOt$cDu0FcWfT_yN&d}xAur>6H%c&Hov{BS7-N5V9YBcHK7!4t?FJ@BUKXmD=o9Wz2 z;ZfHPXLR*aV~TyXmuo;t*850@)W#GSphqH*EdxBY&Nc-A>+wc=a%h9^!B5A}+8Ub$7$Ap(!|N~nmXExypU2a?$~bCT z!~?d9mtNcd-gDQ9-X%AG|2%7lBYO%U)3YrwZ2MGGivLi7( zjI+azG55$gw}~@&(KUC222vhX7s+%(n0`j8-K4W-qb+8K8sZFyyKO)8A-Z%e!RI77 zn>LoE{pS~TG7{t$?)jrHA7TC8?Yrb;XR{8F0aqD14RjWwbu8lXGV6@X`H!$1wE}T~ zW>!$Y+B)m$=XJkMe)J{gNgPanw42vc zFckuCP4MJXy07~hBsWxTP2F38Y~49SuuJ~1fw|x#rE2wiy$AjKs zzQfIZzJtp}$AiJ-oW*GM08^yV)3g!z5yfjH-mtH&ZvU`Tba({oIDft~J6WywM#IkM z8b(rE1Vx$!9J`lVo9i(kAI%lcy3z0brTpLbm)j4{|9ZAkq^0_2_nL5>u23!G?!!Vh z-6d7+*k1ng2r6%HuRLqp*Zg|&|0eVQN#~9axAu5{LN-^O~9^r)Jf`)0V*T2lcOr1zHw8KDjZgNDjN zzX&lb%v=(JeX*oO8U$Ihi!0BY^%tcE($jtQ57QAM^$Gv%_J}78+7D#(r)k0kgT5*x zY_Nv0g|ctlfhTg*7ys^{u`8iHp}j|IGjpRrBjx!8r4VhRUm$ZT#fF4OatI)gFy%3M zg!|A8cqjmHQ<5yP*gHAF~x_LF3WRo(V7C4 z*o8+l8Q{v|mhw)I?a68jQ#f#gcqH?~p_h35E+d+o+?FbOeai0cG4;j}?#Z2C<+mob zI?q$B&E=C0xTH5{NDWk&6jm_u&Ah~~>g1gaF7=3-{Q=Gvb7W`6Ral(rb16Q;U~HOf z%!Xp6WQW-8i8`n&pX9vgWr+&|65(Z@CWKIi>n7aZoM!Dv(Wrd*StWy#{e z3inVrTMAl|CAh(wNZ@jnyfG@8T0xhUq*13|l`$#eGRKobU5PN8DeC1Xyl-2|l6g*c zUzoUdl9R(cM*Q*rD-EW_B58hMIP~Y0VGK_&2`hG?(&{#sqJ3v|Hs+FSd&~nFujsxPvL@UMR5AUb#(Lx1U~Rm+;f}kTPag_@?-Hrb zIL3wa8v+ox(Vvm`(CiW2jJ_`W2MYT+tjR7VwCTQ%F`bI0s}!!%UPRC4ks|Vt?}?EI zlWKc2pL56jr{w(c-O}5Q=}3da829LH*}2H0}a=lQ|sq;o?tkNZMO zjOJ|ye=)hJ%@ezd*`Ls`E`JvA`e%}y1)Uy9a#ELE%c?P1IOLLAr(`kN-L}zBT@%~- zew4m_9Th3=Qa^~6slwDfSQwhy^RU~h=o!tVmz`#WPRF&=TXLl z>~XMaClHllI~5i{Svs2^@B+O;99sM}`@|FD#(6w3}D<;8xR4(v9V?i#}38ppDcI0MVw zeaj_>nr>a8{OR~Pd3>nMo)lqFzb%hvCWWKB5& z4yEV%c7BL^Cz)7$!nWBw{$(m|gB}i^u~h!v@{n6#MAG#GSv~rl2K=kubb20F<(5az zv9!uu>|9E8_jO=%HtOyNX$Q>vP!Fh z|MNCIy$59FjrJHa2*?jQr1F_5=^CP+5(E4*pn{K%Y04j(8?vv}Z(}hwL5;yN4O->b z;_c>sQWHtr;$PDo$!KUPiAwiQ5HsX8-Hic zbFe)ta`(8gri_>aVN!PrzpRC{)xEjrk%BYVpT;? zrDdtO0Agq4DW~;Gua;YB^0H$&HS^^d&@lUawDf%KW#&ujLC!iwPwg+sQ;f_kEP_If zeOznro$x!8M+n!jozU@u6vl5J$#FZR@|>I*tqRqz!=kyJuUqG8EsBeaubwQ6e|4Gj zJa`B+7-p$6{C8n2yuETitGuG?e$gw>#Nv6u6w> zKri;(sSXww*dkcyIUlarys!@mFdUFEtJx=2^}LWPRxR7<+d3_kFl6A~1}emz|B}|) z*?2V~(q43Y1W~$Ub~4b+;nr$o@y4td8u$~Y7OYS@mk-wQFwiSLQ5Wk=>QbvvkJ&Hq z|90>{`}omV$s zMY(VU-n83FiKuU#Y?NX6gZ=wME69!S86vtL6TkhfYh7a${WPE)J*J$|+5wx6-x0kn zyXW08j$YbK&E67f)mD5}#f>s&LAA;i^@-~s@(j;uHrneXv!J76KV0T~FFlm3lA*xf zXQtKT8=|~EG52wLYcj4Dewt};4P(UiYG8jo?4?FeO6~uN5_jm!hXA+qn}W1!c?F3) zwyce5wit$7TvXV!&5dGK@PN$Ux3)FQOAXT*#ZWq+TjjX<=E{!`-b@=JpoW)JRy{fz zQ6=J2zSZrc@6V-FXb^}Lo+)`*Z}aunBS{>%1VA(z(e!i@k8T;uA@e`^jw1f)6hn!V z8i5cy-AfUtNsIYNC*^dM7w;iPbG7vK7RT|fCB>*+vzgk&8>JtitDPpHL-4XUhpjNn zm_gcw80Ia=me%^qO-h#xzd<- zcOz82j6XcRF?0~@Gm4`l&a5LhQm41q4IR7CsX3zb9gf;g(Cy0>jVBMyc`T|-Jaaw) zdy^aNIuSH#nHtJ$n!B;M^3ZLriT(>|aRBk0l>qa3 zr@X=(CL`Wb$$L|~Af=y{D#iJufs8xD))~R6>tEMa(S0_NJ60=iF{ZGca?#XEh_Inc z$SxJal9om6D$$)V3He#_c~}$ijasL2B5<-J(n0{s>crnD*KW<9u4C=^_fiOc15j;~ zr>~FmpNKAjAN1ebV=R zyscPn@p1I5YBKV7;^Zj=sb~m~xvC!-oSgU=!vba7&>~VfFOHbcclQrd= zCD9!RbAZ4DO`}1sU0Z-V&&XJ?ZZyc~Jzw?2h#0D|55T^vAEZiWGFMd4g`qwFpRusU zli=*|2CbjmQy-IG{M(2Y(!RN{SY@AbtoRfIEM7G}K zlDg7k{UH$e{FP1?pz(hJ)Icl0)sxMQDaK*7c-Eg%O7{>K$jbtvp}4-~lF5B_YrD-$ zTb_=#yuIhUM<)Dd0E*{!2bkF2JleCG~ z{q;}w`opj7{cr!;zWL=pv6sL5lYRX8@9gW}|0nkPw|{HbKmOKMAAWDIUVdx0Z+`%6 z{9w=DeXzS{AMN&=_qKTW&i2o~2fVzs!`-*Gc=e5~9)7UJ?Srij4^|#t*$u>Vet@{| zZmolmuA8;Z7taABfafg)W)8`tJuPIW5mAKDRglL#g+wWd9C#rpR(0xZ9MgQ7v9+@wc*9YE=OnP>hDQn z-sH>%vnfFI(>)jN6Pxha)S2|5i) zL1uwG9sCr~#XSJ~u}-<1QQl-?a0Kn>?JCp;MzlfBCPKn}5OZ>>nEQUBiXdo3cNS8ppU!X$}D#feSDKy0$ zALWe|0pk@ATxF0_orua6h6i#5Q0_#qdGpbujCW2e06*l>hhR>rs|(q?s;^A>1{7C68bN%= zv@`Kc`8Ccpj*w9nP-n<%f_^Kfiaa2SiR2DJgmn4z-=wCWsn?7)jRWe3Y?KQ?P?Hl9H&W1dL^`nFIQ z0N*?jzc8@rIA!c+HlgfbDi{2rT_#gg?ik0dD5s-6Py4Vy4t3OGMKohf`4#Vj@IZ|H z$;uRlY8*p4b)pdYh+Y74RM>4K1rE15&QMBmF5k2(p`Mvqnh{i~bbe zpdIyLlN2*J!#<^9gFZ%<&luk&?}U6Sxo=QIaJ-uTnZrA%k6*^- z&=+Zd9gHBUwPNGO)}UKXSDOckO>%6A!rM@fLEBhJpLzY}741fkJo?GMLLX`4ly@m< zb6i21(UVD4S;PN+xU)2_ZPX|4G-2I#mFAJ;l187ys~P3df7 zN=`W`m=_x62t{nqOA zc74y^cUD!@txwjwwdMS19nXdHwQaZbljh0=^`o4E{@3EFlC!TVqiP~>LBhORThd0> z);wP!Q=W|r^auIQX^WDRr)6iun)x-w_V7N1$x$vE*^{p-ZJ5@j6O8fZ@Q}bafqQfvX)wST45tQ>XF=_Gg=tY#+Md}wRnTIB#oku= zgUxAIfjtd3$cFYV*YtBl->9EDZK&M#n-A;xT^}x}S%T}792#BAXouqE*Yt%>IPbRD zb=t8-50rmku~{Q)<^AZ;qmy;=QqY1lvJRKXRVU~dhrV8cyfap%&FT9^0Omq>^Y+%( z^7@%?(5VhtZ|w5)9QkT9VPh-$MW?Ou|!E3{nHb!n~ z6MD^i7YFWN(uR%3*@`};A6K+{b&rmn&~;>2T-&m{$1ZA9M;oJzmCZGJuLRM1i*I(e zlt;vFY1=)2ukMh?gQZ&hpDUD+eU*O`mX%+a$-hZC5)V`QG@_xSfobesws18@=ZjmeHrpT&j7aOv4P)P1Djw}O{uO~(Ake9oMv#Kcw9F^_8wXl;TF2aCoglslm=%9Azdz%B3# z;REG4(qRFeu+IW;6mxpQe3dy0`-077J`cem0XXdfJgP95m&#dy&6;^GHVEuWnOb~L znV&tdXyxbD1ee$x&zej0)dfc~|1R@Sb9Rj!QiT|5e2bAmh75~l!aTmB{e?x9JZ6>i zNM0`JHaeukEID(ga`p_d+d5R@E@ShtpIxJ}=|lA;SK;wIb9m~nEyCtcnM39M*?{-b z4!H%$8qA{5M%r*1w>;y>?#m;WIa2(A_bRtj4DQIO+XP%Ti_tN#T~!M6CDws;2QBmO z9Q;eYGM{-K`TNYL+H~-lw$RTNFE zn1Y9B;}j0#6fSx+L&o4MaP}k)!EHWu1IuZ13cNPa<`g*80T+8d_3+Ro${tj+ep6#0 z>kiZ$?|;jJ`bbM@p!j*a*Gt^XtK>5_HFfU!8~W47g1)Rp>8a zzNCL=803t5@K;2gz|jh+H1l_M1%5BVG@ADd?4`n)mDtM|yBKauTd%MYjBU+F@|0}% z%q`bPem_`!x3&HL+E%AKTi(93`Sa&?b9`;xo9F!f#_sRGwP!DXW2bL^u*cWGu~#2| zYxnQ})?R-52fP37x3>J|C%b+2v)w#5>h z{&<6}y))&Z%CSodIaf1(c-UD7Z03WZ9Q0lJ$mRjE#TLf04UAQBP_=suKbc*it2*=+ zKB13XWElL#wUs}={)_+OzxcfQ@cH_DeZD?lpRa%Z>z{w~AqDgad@n5bAglacLsAqI zIfb-U5Qb&k+Oa&@N(ukgA_;pt?w;G_&7;kmXLdNQthr@^-@mZa{R?Yv?reR1ZR@+& zwtskK_c!ls|MI16Uw*WkS8wfj_jR8G;`HJddnp&n_dnQ+kAG+1{P4%#>*4Kh{~z}8 zxBqBwzx#Xp`o}-m+Yf(Z&)@%z-G1|(-G2DN9`1j#d;Na(#vTD2i`QS<@dZHS)k~{x z-rMT>-j;XNYxl~I#|JwCNREwSKSGGNH@4Y7xAI6^H%Gw7$(8_=Y5~#NLDZ6C?~Xsz zsVxYhlIw-}s&_3rGT!hA#iz?u25M5df=p5k0jg7Tr=j@+&jwdl_ABoBVsvTVrQ*K__GIeX z)ulEYv@o98<&|TTvAhv{8_doDw*YD-UY^YQP(xRgH=DRNo=k1T?=&3P1pqY~S2hwD zyW}~5@@N*)-kG`D+?YNE9FJ^DnNw{{(4LVuvcHN-8%_ZBf5mqIZFd|ZhZsT_+sxI* z!I-k9fMv>zLVHR*9qQ~kt~q1+<-(^P7l3@t65)zh;+q>|j)U9YfkT=t$F1IlzEn#l}VOngg*uANN+D*)Y7NR48tDvZ?xnJF*I zl=n=A09J+EN@!cy+9*~3L$DNj1~QXE3X}+L%=3fLqu=KCl{_G{hz%jiA&!@0Kzrf= z{L9{Z#)A}k^rK5129)i4o1QcbAm9T?Qk+MSvczVJFCR~6|H5WL*DvUnI+0TY{Hq*t zSy%;$ZnW5{nD>w>g=LC#YCKul2wip4m1U5zDI`><-4!}Or_mJ4x8E?3D>j5aiMBmy zj3Lz`dKn}>%3D(${SjkAn*?bQS(r_1Ry0=5j(rkn4?=RmI|sdY#KOW6BnmR56Lns& zva=$9*lZzl5MRiW@<+I|FN3`0lcql@e+hBDf~*b|Pge;F=`V$Xn(@9tD-R@vL4w4i zcTVb?d#=TEh^RacbZQ-)nTFapfGp9s$|K?P*+mNJkEXOU>xpQlSjqA%VeCw4+W-Qt zO@y)fD_-`A{9K5oPCH(N5O!oefq+h^pJeNy1EG>!LlPai;OFuz5&3LsCpx5)QxH*Y z#tiu0b!e}=0?=LMm(Uo9Ambv)7nCl!tg48pFP}5H3^6*MX>2PaGxHzaO zKhI_nS_&`;=w78wRfW#?su zF8KY%oO0$kIrs50Xn19;)FPeR+Rm)7m)eZGXn9DUl* z-gRhm=FC&QwE3EPB7;@eSeJEHb&NCq?>dEsL8q`Os!vT{X^t(+#-enC%#YTlYn#!p zS+O-=Vc>G+6>NexYc1>BL3>*zU&bD_EjqYDwl(e7SlZg8!wxWqEBUfl?#$Ip9pbVhkw$yG}m3t37>uumU^WhDZ8N3vXL10=_TT zU?Q*+@`-p?QEvNCOWK4`4D>{v5E-(NmjQi|p(AeHp&vWsp%6&&QlQ@&ZSY`cYp}~2 zIdAp%&f>LiZF!(?PL{3YiEyyCxi#fA2~*WQq7GZjw#)uLg)pg_9b;{0TV%e-Zmrnd zqZ{BhbfQG3H^?KGcMRnu)yd-cU?n)NLq_tVX%@$RQ9o0HVC2(KZquGDSl(H%W?tkz zh4^wCeYdi9Nm&c(#XDlYE71ofxh~fobzR$FM_;WQYmxhcd-RTKuf=8bWx@SijY9uW zp4)*lyM<-o%y>ijTQ2JA(1wh~>u){#1)m&*{pB*#?4}7tCn)n9m!`-eHX~2qdx{)^t`<{XL+K% z$bNNe^56*eH&&w;3W>F*zmqlnU1=i-*`XWS1g#FpRnK69>K&K`xi99Fi*6LygoL^r zuszbHszf$j%0->fQ6(&I8uXC<@9MjLle0osXVg(Al3Qfxp~u=NtLofV*tkNcgKKaI z@4jFRROtHv3{awf=WFVw%`4ifME2Ue2pLmdbV0_u{^v5Wc6&X9Gu#|~ou{dI+0uzBcuJui^M+~ykJ zw57xjIFu31KW*S;vOARB^xZLGBfk)W^+#vJ#U0K9jnL5fLFt`keo!IjE$#JrNab-ziX z&HI3PJZG*?CoOX%^9*yPl6l7=nAsKn(0q#ROd{Jb56>y9DjX||99_@&J+m48SA!D@ z<~m=e)v=}Ws!fZ9dGv!eP4wOw_ABZ)&zUFqt?;xZSS+Qj!Wex{Ao@8+p7Jov3+9Fl zOrz&hFp9hZg*U-~!g<~t*~aqPp&i-;OOSK2vnhRe6Wd+?p!2bywsk69Y?d+LLKzdW(62@0tO5tuo>?^8-{R6bPkzi zevCZNEf_a&PxLv|CWk^dQD@%k!9R3RY=Axv!IbiVRXE$r_>%i$@FDgGUi5_e`QY*k zILH7!P@cO8j6IIO>^-pq>M3rkgxK=pb?Dy~nFrwfEAU~6F37__VoXi7F|RSKJQ{PK zvCaI59ZoasC38vA-C41_=QHLkZ1(9E+j@Gmmd}pcS9W{-%x-qi;qkBS+3okXy?$@U zSKr%<=fAecw?Esnk3ZTs?|*G?zx|E9{Q7VB{X2X4`Uksy@r~U*dt-;2*LJ-5#@dHR zTb*8*55Hd=4sdSv$xJ)Q!)5~^D{NZ=93YIv27&@%^A<0e%)ho3M7cWbZGLzLDST;% z^-EiAzq4Zh%G&2|?eyZoZVp`hzPu+rL>b*UG`<>l={i8j6_+WS6 z{I$LP?(YB?f3jcy;UDeYZ~w{O|NIa3{+B=6`w#zQU;pse_Ts}|+x?sG?cwDQ_Tu3u zd;9p;cJun3J>Gw`?$y_JdU(foZ*24Mf_FXG^7@Unx6f^VIN4_T%vu4Fdk7=Mc1B$f z-3!R;GuuP3=3B^X@r-ss0!6kVlG*CICwg)*AEh^t2Avq11FRz($z|Aspj5S`VPbKq z1--NffjU(_0q{?=sl}H7>G;Y<07Q8%1ds{O9a=P?taCu$XlkK5vvC^R83e+;a&0hi zY^pFu{>WyN34rn|fT(L1U+NUS|8Kn#t{_DGKGSLBr#v&U^U1&zeo2ehXG5MH@_Xdl zU<}CTox=h5bI(^}K)$C90_B1j+34y5VC&mtIOrEX<*Gd3JBN2%3|yPcJi8it=8u16 z)6u}DlbIzW*L(=mL^%|w|7506E)mZS`-RD?L2g$(?_HMEbz;ubz=l^}0J^D5;M?px zG$)wZv|p?b>`Wl{OP-lh4rK&96JA92#2Fx;*e21`hGW-)X<~ybZ7R@yFS2vrv#-J{ z8wXlU26RV!7n}j6A#prAaHr;9*2o#65IW|^w08g?Kg-R7ka*$5hSWQ70iM0b1msgE zh9>mqQ-SKyrv%}pYfov{Ol_fGBjh&@Xp2sims}8rh(5b=Cy<|+g|nskPmv?U_A06@ zxeP5h&ml;1`KBC*Q2|L9K>P-P`$?2QG!p8kP)-1S$giJnAQ`#kQwVa?*_bgpgT%OP zWSP6^Pvkd+7ShqJPAAGl+H_LR=@-@uJ`ZDvhQH|JmMa#%x26mTd6z)cA6eBF0fi zIn;aJ^!*Zga><9pLT;brlm0Z8HckTGtHj!2K>H!l3M-{>0dkpFI3C4VokDO#K)oC? z8998HSOU3J!fm(F3HzGyS@jE$e(plJkr~7)hGdOGT^Zy7(maE#Q4bIK%XNB|=>*rJ zPyU!dkjDY<d`7Wj4#d_|>|Sg|0P&t7vpAU3&k&j#`6|(EhW_xmi`}@S zemUegLXQ=0Duf7%D5_q?Q~Fx*hLL%HT25iC9LjeX19{N*$wjD>gax`dvH7&M1;kcf z7alShLyEN_8BmuQ`r<*jW-&Tlv^JrSC-jH3ufjHJ zVM_8Hpeu0>3Dp8huw|?>Z>V4C!%E4gsf#vo5+(J9{0(%HFbV7&!W?-x5kWBEgEVu z-c6Tw30FO96{lL^PUO9zlk-~0Ur{!7^-lc>{Y|&-!=ZG1-zTcoLR`ydNn&ZIi7|m#?YE%If3B z=9|*y%VnQu~(zX3OvN`wc6aqzySDU$Q6pI~QsOa|wd9CB3KN-Hl4utE>hFT~^ z-{lFS%>~I;IjE{Cw{i*oK(+;TEl&=8PNqm<=4iLP6V8xRQpsl0R-JfmYMYlko6`pY z4s$R_p9{1)BQA{TPV^47Xq9s=kAZIG?g#zCVEhq+EV@2S%f8PTu2Gp3&# zWG>GG51Gsh?#2GO=)rW&^XQotVdfj<%hE>3whuqm(AR25w7j;q+gq|wh_RKe=8Wfg zXCwM|DvyNOoH`w>^=~O3n^xb@hx8YH)U1>@V{41Pf0p#)4y?Abc5$#7?;3#3Huc5= zzF%a|tQkEp9`=?mSGLrGB3Q0Q#@eumk(0~&%1Ysij<#5$v&f)b-t~*WYsyg02zkIN zS4G|IZJ_o^zi3C%qARPyW;@DmkoEFptL8vIT-$=a@A5}WRyU@674yx?GKDv)ZY_`( zN4Yl_9k0QciNfM&VO}A7biZEBITH%Lw z+(W%+S4zKS%1MU2&cSX9uhFb(JEy;V#z2Ygbo6h)=h`$I%(X$WvmO60xxeIph4IPP zHTaNmRNq=lJ^lKX1sg4FgAtW;0=Xz0(FTl|9Vl~k%QHt?*6UtQ%6G7=PssF0-yvIM zHbhP-x=?IawnheZeXu7gv%E*2Hq7To^Y#Z@b=T&u*OsG0l{We4i&=NW*i{%%jp3tZ z>kaSQqW`D<qat}Zps$OyPO?Aro21gidG@^Dj0|aGk?zgQ_VfpzFSJRf zO+T;%a+*?4dG%}$_ol?pgQYg;l&fQBGxTq(%>wLMvb^n+z&i^0Rvk@A@T27oV~6_6 zb4HtF$Rn(kM`P7{wkZF}!lC@Cq-`ZOn=wW^3v^yyTWU*Q-19v)bG>8i^4VM-7L6^? zfxH9fP^T64M18MKs0>{gF{WE#CG42;x5z#z(RDLlS%PjTcfdSp>~ae}L%&-s&^O?t zVV)~%Fb?uqfuDTlsdYkI6RQ}Px#qr(=i<4Qg~CK7;IdJFXyXz*mZT0C zpZTv^+mjgGikO#}7oX}dg-@M)c@9(Wi4IBdnJ^D?@HBHRo52~t8eV|y(?V{gMNQu2 zc;E&4am>6Bdsg}>b18Ek^Q<<YX(jXZ_nkekAiX5h12o(JITAvie)+g?s$^hEivY`&{ESGt(i2ObQc?6Fd zDc2Sl?u`0O!@9@7qYCUr-)D@G*_8iz*ExEloDWmlIDmU4127jlHs*ce4p)?YHik#c zz=YG#hQ-u^&;3VZ#yY)*eu3uVpdbHF2(e~Hh z*!D&Vs9)Ru_G^25^{rjs{n}o<`p%ATKG>W4pKSB)N4u3<<@bMQA3pxkzWdGJ*)PBR zqkZ6d_0vDto1cDb-+cI;y?gsxd-eJkK*w+F#p925diTBEefY-io_}w(yejtJ*=Yxm zx%euTEkQzN8EQ{fK%1s@=;G^&Rx5a=rwJIUe=meN&e*xZllqZj@3N{+Q82ToZfs-vXA}%=?0jWIe`fKOHdm%LojG>J{mLQn z8 z6NsEn?#snjN#Gp%CWs)Db!^JxkZD02f>=x;MIAb)lU($3n)8lU?#~e42;$0^&Xn|y zaugP50C61jr}H2Kyh90$&mnUemlkz1h?t)r_`kLe^6OBJtJ9N^i!pyIG|T|9TLlZ7 zwU7&EN!=iufO3UpQe69}^en5WUj+f3Eg(kv8-Sn9tuA!Rn=zr-y%l{ZuOboYpfv|V z8qww<zibc^XY1skz9tP6tAsGW35CGZs_i=*;ZAR-O{t$b0?Rw+Uq3 z_mop0G$nUbcmj|2cnR&NUUI$nkfQ@J%N+<5_a@Y-P%a6`{tTH$-JO-^! zvE}HDJWa48klr!Z(^q4kjV*xU&lX^PQs5}UP z$TMYB^i@XxC_GURB7aEfIF=3s7F}plfH9Ee{Q`j8_C3j(HY$fjLSKj+D}O}cK`tTU zI#oH;Z)DiXJ3`?Z6q_}ghR-(I?-O@_NV;ryg6SrZ8K0{oGjHAj~+k!e*%$1X7ZBDpg%<=4; zzFRMCyhtqG%;^K(ovwMVgXC^(o8MbfL(~lR#mRvehi7I!>LySh&&gOxubn{O>&KlB?9 zg+k}>T)S>9-Q3u64`E-@#^tT8bsB#^?-#V?P0{Ftb3>n>3R|t`)~?R1omX~5J}Y!# zzI13uWxKYveW3-e#{Ax!AjTG~Y?Yk)P%Rnrs!mB(MQdm3pOmpk`(~MNi55GNN4aK> z6%M(vL<{rP)*9NVM6ea@F0gMMW4Z~zBj{wI#eVEu8!vmi<>z~Id6ztB=8LL7P@%q2 z!svu?n=p?nOjcMbOcFLlamD2kmh9+b<>b&}_{w4*`v^|z^CGO!JNm!C{;gMx)y1}7 zEQ(t2L-jx#w_t!hwn7^a^k?zhvenY!f;v^VT-1*-nj>??$8PKE-cD+RAd%NWjlN+! zwU`>xhGJ8j;_{cszSSk1(khhHked6A+wgRU$5mNuhwdcR_f6gzDmX)}U0b+?wT_qNJz`_M-XI^N3TW3xu5sQXf94iCLYRlZ(jo86Xq&doAIlB6Dw>$RUkY1Ezl;+qQ<@`LG%LLzUvp+)sA>4yedzj zYvx$K6HZSVw~X~UdR1(+IdWrT+LoiAwelm>Cv2udf`KI>`j2^BarhOAt6o<0FSdj> zYO_lDZK7KF7O<1DBVgponsEo#7}h+4JR&VVqW24QN{jZRo$84EzzxdhqFf&>pF8w} zLasF(eGm3-3gnA@kIKExc}D@}&N}ejiZNKhJ(NgTp;06=##sq2Z|UC+`d!ffO>gHK z6TVlwur-$pu#?Z&#V*y_bYLEin2(ptX$sj^FvrRxbsRH4 z$pgcccjf|2)!Bs(7+j%axnt>7$DGHUT7bWpCp_$37%-Sp zKTW}hTEKL$gFZ4FC>&7>wkcwZJn(*X&b(ds36YgoZldss%!gi>F^?!rBXj(4ZexXg z1PAF9dt89;a~Es?_YijQl^>1yRGTQweI9kG<-N!}9fKznq9+B{&9T>|2i{}OQ{IP` z_I5hBQTxmr%<0rA>vH;pF)SR!d|VXRS8PlZFz06AQ*CH#^GYZGeK=%1$97Q%WHqB7 ziWYpL@HNc)fp8?BCkeXb$s4Rg4{HnQx64xVWy>5Z4<+hSfNPP1lKju9YXKL?(T_?8 zzhZ6T9KdfoZ2Q7|~Y)*nn-^bjnlgC=m+9DFCQSZ6jx-;ot5jpxyJ{qfpau>=G3=q zl)DU@n#=o1^U?$Mlrg@$v&HUck>-*)w)h$@emcR^pWE*AXou5-y?FM*o@n|H5l z^Xj!dJpabtz5m7@Km6L>fA`n+@yGA&_50u3!?(ZK-FLsS?VBI%`u>A$?|-z%>-Tm# zePjEZ=XPA2Yz@ax*N?Wmer?^FIg8I)<_>NCN6edT$($^1!(25`GHk}MLUU!+|&= z#r4m<`49u5v>0}k0ruxiz<@}FLkS^=OUQ))e!CV(gxEuF%I*Xiy<<|pv*q?Vr0yCL z1&BD@Kww|kY6TGB@6+uITi-$o_HS%;`^MIXcL0R2H!%kS+OK;*Q4Z?}){`VEiu&7*ArH_OwV#m@jD*Dr0mxv`et zdw@r`KiPf@+0p3;$WjNfQ!L@2+}UFF%qB}fdvyXFLtv1FJVd;_wOIrSsv%;?EWKO; z?f`9ljPe|i{ApoqHYp(kxg{fk*@+DSe{$DO1^{PAL}O&5X=dppv9aQAMgjK#6ul`R z*E8R}vh%TPgReY@gaepV7^KLutHhq10eGSdn_l<;AAqLk*yIY33m|nS6T1iorcgf< zC6k_9nSXX^@;(@xDc8cp;^DwXSLXm*-ZcX}E8LR9`*>cS70ws{3yJcc0J=u8T_`lk z1t1i1b2gaR`IT!kK&~^nu*(5|UxfW8$HbdiIEl^Uol27DjI=li(K;L3#U=Mm^t~4C zT?>8{*wvKw`CE)#Nw1~r}cB##uQE1~? zW#dREwud%wwJ8+ZSJdTdoZ1s5xSmFKH5>M!sgh}6lVE5==SfchM}cQwOnKiFl2G_o zKn9dZZs5_kXOOrnxi&*e(m8UW{$WLbhn7GrbI9Wrgij~=<)*FBO=0Xo=%@?CGzy5TNa?hA4{1}V7KKAP^XImN$cZFs5n6FdUC66Kg=tY!VF%g*@&?haJ%}@8 zqNHqB@l9LEuNF{K@$le_C2x+0bn9r&tgzzeC(*ht4QHOM< zrPGHV%OjmAjBT6+yh}L}wtc87C4u%Ka~`DooIc1id3Vt6dw2)Q{PgTcKb>1wyrq6 zIw|L*Lpu)`GqgQ{pv@p`1AZ$cLhP*U65?H^5P9_K3i6y$k7Tx_{)JsIjub8+FO=Lb zr%vdD!W}^Fefr6R^eH)H&?hr5Et>K9B!>je7`t(Q((wuzD6d1!y%!MM0mN_$f%JK& z&vPn63nYyeBy=hhSty@RjNWF9_Z%5aA)V6{orHh|BI^b1$f)inW}fJ6aTgOlyOvM8=bJ+1pI%cIas{mN5j;i?#7X+46evXyX~O_Y7+Sxdz!5JTt`~yF6UeRRvh~WYj!)!mRs9E(AU*7 z=0xUy-czn_AoQKBHcCRe<+Iw_hQBwZt>Du-3B78ycu6}JjUDU4R`kz4U)X}SwTv|- zvoElLnmhfPzp*`~asX%pA}aYTHy0h#iBu&PP1dw4!R}#0;(XU{n%3B|S&RJJoi)p< z-*BnWWi7z!q_jdKN(KeCD$*%vzFB1GhZfD-{sekJnIrlx zrY~#WmnyVUd%&)(klohOI4eyJ&cwbu4FV%H_;#{^jSu3Xj zSR-$2%{#L7(i$zMt~Qjnvsr)gAMB9Lv7smWx8r~61nyc%Z#(3)Seg<{H(f~GQ)`gR zcvo7j%?NZ$r`DqbebQVbYyEz1eG>FVicX;q^iP-FTcOZATgEB>x4Tn+D!prI`{H0> zv$Q33)bqab6Lj}BI8a}026P8o@~**pZ@b;KrR|-iysKHd~i+p{HesCcpPx4Zn z`Nav0wzPV`r%!K9iH#3hNZM|#+JjLy^uI1}>Oq@O`;Bc^cYR)#T8WZ(=ye3PU0++Y z-q^#2IkLR9dV}4etWNm^RuA;;iE*O8DFa-XZ8VN(t2PPJn|{MlAv}EQyj0!_ZHzMR zGM;bIzcn&aC@G!7kEM4j=HR{Bi2dNbT_2)M-W&=Y#dFIOvQk*k&I;sQW0Q(nIW8C@ z3;JFgQplu5NAkrr&$ZU@-VzxE={03AjyvoipU>y$Cc2nVrve+I@IsmLfW*`Z{hc1c z3*4{7*)?`zv}BAjKIUNJrlDQPv!VY&bi38YkP>evVEJ-ugFQN_Tn*TSWwx^^-&c$q z>2g|9CgZi6$CS$$&3O*p4{7h3`m3Fe^a5<+m)K>VTWcIw^ylKvT zCHIe&SYCBoVUw{ROZZ2%xW(qmWAl!_;=4#*EASKU3)VOE(aPLIW({_(z`ms&ctD|m zdhdl1_OD@H!oJLxU?Z?nLYuH71$e;+ZzyEtw5=>Dv1iO#@_rs8ON9j-h6QsT7|GXW zV$z4ynM68pq|^D}CQox57zA73=)g!;+t@`9z*`|YEHBRtOq~j|d5rf!;R%@&st8P= zGD7e|0|w>&N^Bfr!@w6qM_!T>+N~J>%(dWtg)_XMzDdk{qudA1oOfa;;1D5osM9If zNO^6rF%vKj^)7Sp6>X}tQ48*9l7M*!9N>X1k%?cX^c7ev*Jgg)AFz^lT2f`qY1DUK zS=>P3oZA{LfselkpYvom=Qo z6Lv92Unwu5FB&kGM<0H{I8gHEETFHzu%ouYKBFJBq0GTtI-~%85-u!|y$8;jP=3;Z zJD7W1#=sZV#(c2h82;jFzD2e(+U{bXQ{))w@P^BL9D#E)ZTRH9H;VFLRn+AY4lqT2 zaWm*Q2jt-`dBxrwj0iV#>8oVa=b?zXFHyKl9X!jFq#0fpdFIZ*1Uf7Me$Im#xT~U0 z;zJSdt_ZI{YRC%mUzAjowJ=Nt{ezu>h&Dv#eW&+8Bkb)sH_Dm2g4yku$cO=hF%>nb(y=Aw|E7;b} z?%qz@7j{_R+kW?*bvF-oef!al&tKW{-8*~x%?Eq&?4!N-__ICx@q2soQDK&Tw0E!n zVDDc3Vz)0p*u%ruwtexQ=ib`kp6lkBZMSc2IR~>Gp7Ty6^gm+PdFSqhEj5m@McHzX z{Z;rpFd6ezJ}(*nTN^PpJ$QZv*01|}HP*nzZOS}Vg5!}pdg_5ya~=F~0(d8!=z_lX zFaF}%%Aa4KHy=J&gbjk-3)woN*X$NTn z+(S+_n|sJF#CvsX34~J<{TjlzksI{x0n+iz7N?gs+1}Z550SoowBzwxTkOBF-Qin1 zJv_Jj!+Tp_KeOjIzqZreJKMkdU~k`iXZNqav)5d&Uj41T`uUIc?stE*k3al_z5V4M z?E63bY;V8+C;RS~f3p2|e`~M5{mEXx_=CNA{s+7L`h#sgytC8G_qKZWjjdn4watq+ zyyK;9oesrlav5b7a;ir&^G0Jzqqnk3zY%H#83Oh zS0&rMj59j}%xHmfGMNJSCg#i%bKD6aPmAUN{!w6~r>#Y^D;o_)<|$$IU~1v;ybpEc z_y9)!AIw6#m_k}E$2L+9hfCis1_J=9({D1k-%AdLb$^l^2v8OZ7g3EJDr-2Qo z=QgGhEbJgcOwq%gm1)$dh zM32J10zfNXDbG#(exqajMaDg~4V8;Rxe)-@m(IxiuK2j~v ziNMm0`+N;i{Dd}^j0xJDNfug2?*RA?_0efR>MA1dwRWXbRw7&Jg7z1tkUq+#AVQWZ zYyoweY2z<(J}pF3W=g%Y{7Z8x^^X<;9CNj}z&o{|ex-zujNxLOTP>G*mvI|k^^4xh zA8`c%Q9{XCBo}ohQH&w0eD1}TPPB-x@f`Ods}v7b{Wp|bK7?LviCvuL#z0I!BEr_7zVrCXN;B|++3foKATxOCyxCY(ZIRK=l1`g= z%YHFAsSN zR%a0M`dPnNI-lQgKc6vwFL$lQjO%*Cc&3bWsl?ILQ#NFuTXu+SailMnl{M?imeJZe z^mWcy%dstUY{jJ(pVBpLmd8TH_X-_F`=&RH-3mEiC$wR+(Pk=gW^60Ic#RHvooo}j zh-^aU--LO$%~n=nmu8feDv5Q1P2jVzR4%HuO&66d6!M2U>U8vEF*oJ0Dw)GomUO%K zXry2Iq`eK;r&`j_2l`hDg&C*FuWr`nq9aOrTjbaD+dbc%`oy?eylU$c??P93E@Aw* z3+xH<_PT2em9Tq-oM~r-zHXDfb!+wE!k+H6AgsljHT8V3tPeYd{?m6|zY%tW?2!@W z`}>_KN#|+-7NI`#qPAj7U3H>(wc!1{YlqJ0r2Oi-$8qxp{hpt!53PgVq&0PEj#e*d z$MPDzcaFQ;GjN87aunYpnA zve7sw>Ra0|7W#uT+Q6wR+6Z1n_$*(^Q{d2VMlIK^Ros*B7)$h% z+J8cK6q<8RKex0epsx?w0NZG@MP3*;{pO3q0OUX$zcbN(Pk->dJVc6XQ!Me#a?f+0 zWSTR^*4$rK^5WQH(~cG+7llIFrAolPx4P2i26{+a$|cxzsc=I(^iZ3JJLGgi7m-PN zKt9Mb*;3y_--cxU+%m?na&|1Wz>l37wdf-4&;pynXlXM?`OZA*rTi>9aI;islKBc5 z9?hXm<&rsu=arCtyjohDD~}9gsYVBQ&w_FW$T;3;ll9Qsu!c5EW>xXYGb3wmZ8hK9 zm^!qwXY^;sJK9ywIN`pM@6hoq)W#{?VzcbS>UGRd+JH!v)SmL>&5*67D<_NOodQl* zxV2E5tvp|=e~@Laja|lq4sHzl!xLbiKptBiI)P1Ru1NjbW{eq~-oB968}rK$tPv+o zAC76ly$Uy&P@kv>tzs@6Gmj)$X6G?@F>x(&C>zWlGA9>cG+~pA7MugG3UvSiTM;l9 z24D_9C`~yhJQpm4?Jk%feaiB|ia`U`lvjfvU=zVXKKLe|S>Ywvo0Pga{d}#(XvZ62 zo2aL_0@z{fx?qaH&I^a^%!gxm>WKHvg&iiAf)@wO0Z)Z_z%T(AKwiUD13qK!2({S& zMomU=I&EC&pjZu_7M4_g1mqTjXb_YFKm1GVD}Ho)xh6(?`-$*qdh*n zv(57lc7oG?{o$iM|MnNVegD_?`u#6xYkadichcx39Rq zw(J>m$@bpXrx&)Cr^Ob#h8^y(OKWhMJOH!ymbnlcCJZ3X!siLtGu1&I<{uwS67qLN zKPHUv&X0Rf2x0R9cyo5f|BR6+oAnzJjt-cC=l{~$%Aa4KHy{2LUjOBP`Cop%K3|`& z&)0uc*I%+#e}4UQZ$4x(BvUSg05wZ0w6oc$J13ZOy-cF z`rhL0t?eP0B6El1O&>3K4SAgJA#?W+wmtwjp1rgq;NW<8Yx~o;cK!IZ-QNFb$5%=| z&3A9UoI z`0*Ee_VEw)`0^)v{`MEUfAfRgzWrd2FMhP=F99@<-`ei^duwh!+J1LuySuNgJ^)m1 zU)%itjjcD&>=ptZ-@P*b_`;SD&Uhm-s8eXqZM!=3F6H@7Mpxal_Ki1kilIK7Wtnfdvu7!FTOaas5574}CNl zH5QJ_-Xmh*26lA@xN`uFv!|cD8^Wm#&mEp|`;#&gkNXF?{na?=lPRAmiL^VknCHKm z&1`aYZe9S%0Q3d}ua8ZC2FP@Vg?)7ai1sh+D)h`BBzED=>`Y;lcy8oGHogeWd7`jI zL;Ka!D|5~!Ht?UC`=qkr)5|{5wL&{7KIn`x##djNL!E~1rCmM&{5tZ|piRS>UAn%V zT`3Hel4MV*Pi~jvG4F99Ap;xFcvm!}Ua^fvyazBoxndgM&T>_Gao?V3FK3B#W_g!96_h5)jeRC&YTJ%+7gUK1B;R&)*Y*mHmaUpE6 z1$;hq&g{ZT>`EIZ?#Plc^`dV?A_B_j!%2C(N1<=HFPK5Zt`f-0z}z#r9#h|7Y#wC6 znfkPAVprOz0OW^!=Oi;za=bJi*&r_LuK=tGWWs@9dNUW@fSiWZk^a)g$E8jq<*9`M zqzYo;qE92YqCSkzLUC6ioO5|fOl{EWRMZII93Zm_G8tIz@*L!{f+YUcB85!vAwKeA zC@oc}p9n%K_jyS4Y@z%m@_N#y!>5yY3jfnWguG%y+2}STLazHtte!(kQoy+q9B28$ zB5hcr=i0O!U^fQK*3#Lg-%L<^f8~!*XegaZOP$8PLZ;JfX^~FWDOS6K{A711R|N1% zCj%3n1MFXw^bfKTvC`>tZwg^T?~}5$%u!tC6@(rlrntTiq!)iuwoa4AM%=HkRW)VjE_Dwfw$m0p zK<69C>V@)IV22?*t}6nsQ*(23(MK&ZD1NXKb%&6>nNI&fguIx0X#0eI9q9zTh%aNU zpiksR?rBp9n>6PBgf@$~s=p@a+LS(enxV&aXX9`I39YF6rzD$YQ1&4h9O|P5nL$Rs zbHAgLf%TX=6#d4NhhD|AntCHwk#&Vrg3t!q(1CPkMM3)+KNTcBTB3j2yg(*#ZJEM3 zL2z68HKxx*^t=ig#4DS&5c{gLVYh_%X)|bn4AiHzu}herD7*B{q5d=US103@=rr@U z{VB$>Zmgi38XX?whu(9hq#kwVSy9TvA-7;y+5+7eEaY9n7)GC+dd0Q1X}_TZX-!th z;b_B#zHiZao=Yp_sCMPp{&Zzcdf?sYXQsvK)+Q^3nbATgpR$fFuNaou~Cl<4V%XS5O8pkJ*#jg;G=MbEW>*l!Lf zY>Yx#Rs6rS8Fr_rnm)O0nn$0)zm$zBae0g!i&fpf&t;4_O-Ng?OKJx)%osb1l{Rd^ zJJdJ8j!hf2Wlnkf{$#t;Zm_NUevvg-=ojYv7#o_Gx8{KdVq`t6j(kUdXfvrREvo3d zdSlAlkZS>-dW5xNNGlh^k~X2+$nl|K+K}LXxM|U&TgIajo6DQ@(K_W1+wS?kq8xOdw(s_9<`Q%fJ#@HdutfeF ze|}%wbkIwba_vGK6x{2sh>{9Z<0Iee&2fv zbo8(4+ivd}ch|P=u=#7S>vn6qgA%Swme`8+&enQ%_sSaOq1Ya*St=}*a&X*Qd_)iU zt>n$ydPn(t+sZoxY^>9^%2%K~2G!=qwhQ_n-EHR&y*Ep!^5(6Lkma&^&RA1O&n<1x zW)wDp_r^zXC*?Nty=}Tj>aa(LPd25WV{}7d(KcMlTb9#T*>-Ka4m+~n&_~QmYxIY) zt*|0pqL}K}jQNArjPpJZi1KE1JIdB(6*ftU&!z9^e#{tKsek#bz|JTvNx0A^1@~fG zyb$@p1!P}?PC6#fs}x%Zjwn7Q_@2sZXuGiq_D>;ZYV3eK#j1k(G7eL1)~#ggP8K8Y zgueBuQ^$Me+C<@hg?*b>_qJHb1CYK)FUII`ux{*9A-%X);gFQyrC_`%jGK~HYtyn= zYqJDd)E>5A+aC~empY`tcw^jl%tI}9L7r?0HYUX8YGGS3_Dkk%*_C0Pg6+W~^3DTe zM9iZp_s<&2>g2iD*;P~YhdsVz?od)|9S%vt4Rijd%?NEo#35K7Y&8WhrJgV#&D0aROnp5_|zuN*ftC7ufpdQ5%r{R(HWQbw#|&s*I-hxk2apMeKGB=Y1=ti zb3s4pz>2Goc05;&HIFWBjLmPbuSo;0WDcnUbO4!*(}k5T7-71$DRak_PTeQ81$pX# zhm*UekV%1$y^fjp^?bZxjs#zfTnjE17J{Ejuv$VJm5XT_(9Qyk4jyP|;}l#|D{QE< zwzD*bw^7Gv27U&Efeo`3tPzgD&mq_b48-#RbRC?altCe{op(OAryCvPQou{aD@r|Ev{F?WuCwpVtvo&fp}op*%Ppx0|wFooq>-& zh>HjVPQbOuL*AydG4pgt`_TVO;cf@+$af*QTOPF`x-tW2$u6Yyb1L0$GE-F*C$z5n4i_Ugm$?cu`@wtf529$vh&{M8HFU4Lz-n@3w5UfBNj z(RL57`q0WP?^Ia5)luGVN-%w63v6k;y0?@%w$xjBc$7P<)8-ZWsD$xTuyBODYw?U6 zd`Vx*gF2(n6^iT359xm$kU_SJ7=ivx6=eV!{-w2*KfgY2KKv`Zw9xnY=kw3!pU*%4 zp??07o%#2<{-ta_%m6jbECz^$J+P?d*#J0}Yip#KsA&Tj1W-U60*Gb{@mF%YRr%7E zYY2k~D#Yl}J+s~X-bx7A8ZvkS1T2rwY_or1tD8G}JiW4;`!{yHeqpyaFM9y-@a&Bp zou>G${r7;5U+nd}pY83(AMD-Fe{bLZ{CD>9w|{Rx{`x<&x4-#M?9Fff(cb^` zclPGnKiTW=ez9k-f40+`pKbH{qwU{+XZNqZvxnnHyMOk|4mYoC^YYPN9A4S>?yc=! zys!iBUp?I0@o=yXpt69h*E@*hX=9ts$-L7Zl6VJ6280T{6i3L(O}|i(E(#0U99b-p z37|cOyyR;eRRH^Z(Ys(P>_Vc&GM#{pb+QBiIn4p53RB{n@5eR>XExRXwd2|_ANApM z6nj3H05k>8M=8KGw)k>pSAfO=05lvXfZt0CJb2j*V_s0M%~cVzCsw_%@?;L@g7l*c=r!KFazAzd?)l7miM;&&*N6Y=D_NeF|yy z`qTf~2$@aCkOhabwdoR>qfk-4lIGO_UCK{pHVH!7720$%v6Sz}w0}%}#t^swGT=Hh zi}?I%tc24(U^oS^Ps|wyb}@-f$*(7rb9Elt<#b@)(;2|gv3PQ2Bib{7NN9oDdkVPp zr*MSBmUb0h^>Y7;&o5lxrs{*3`q3}$CH3;hfPUnqMRvPJcFOl(AoqA)SRK)ykV3^a)+xht^ghTTKT~WBzeT)spH5%t zgjvl0E+n^TAe-7$z+SmtXIC9$9rEb-5PXHZ!d{6iDGbyU(ibYUf|BF$9_2n5FB>MLipJyHKL5Gw?ybU5N#}n)o@}XXH2(5_xL}41DuHRT0bXmVp z;iP9)=gb@EoI+9Pq@2&a1Nu?%j#EAl(H{@J8$oxHnzAK>pe=&;s^7^LAmYd}l-EDJ7Df zQ>GF`x7Ry>TsZ(*4F%gm{+!{ch==vltP}^n64?T!tN~4F@;1@7@Sh$s!`Y~C9)0s z4Kr;*CH+Zd+8JmAW@Rb&_>G7BI-ANnD>>K-{jHLnO%$JBr;0;`=AquyDQeM2`lpnP z6}~5t#{~6Uqj%XB`6B~`ZQ?#Bk~hf8s(6dO^IY2?C;GHIm~t^_^B~*hmdyA*z3vk@ zCoOGT(B~O8aZ_8q!M1iA%aCoUMZ&J&8Sv49_cRYypbI*UuG82_wzekSTfU-i=eJgB zV~GDVEqrYGZmCn%M_bORKXuo_Ww%hGRP41Dc2-~tFjdwnde~!_+QssSC1M9j&gO^PUrWvbSZ4z7;R~9W2H7aAR>OPlz;ByRA(GI+{=|NI zL=X2i+C8(Hdl!`Nw+CwvJG($9I^I8_E|Wd)r=5rPnZ?UH^yz3>z2~!Ai_q^DY^aT` z<>H|adljs-!2R6Tyf32O%?|xJP(E^6?xmkc3%2qe*@7jvmeam2yS2rJaj`wvx@H_v z|8B{+jIM3ppZLGCWOuYpDNlv1EofIsf34_)e7CjT0-3GvECAOvV7!<*hdLC~p^Nf> zpw27C;2NEGX5 zyN>94gHCPvESqo8!H#-i4 zl^gV*GV|!c&NSY^;C0s`Q{>Xh6NE9EE_)9joxJza-4%a(+T`dDHBf)%2yM8|74{E4 zvt%C6s8@k~9x~rX%-glXt0mY2Z)-F9sGTqdv0VfDKEeJEc#k$9#wj=e{GTV-g|@Jw zR6YUldI-*94k@v_CG&!k3M*t`*eB&y(&WM}+5n8joLo|8g+ z)!fCFYZ|2Om!BTlvWLv=! z$jomt=I02R&f!A|`t)fteX0!;aDw{!f;q=W{$+RoKVef#>^JsFo?bDw-9zUh`mmJe zFmt_fQw{q$SAEy@_ba2Om@1P6*85o#%C?u2%hZO!&E;4yR1n83zPDg!v;bUN6 zcRB~((+2gukG-Sab>LZ!PAZR+L*HD2ee`<=zOvPdF}+l1 zX6A+)?99!|whz~K`|#T8(`!4tf@?p2Zg)4&`on|wcfYlVxA6LJKH9@ie{ZjU{DXb{ z-4FKq{omS)?|-zz*FV@bJbw4$jcp&_*yi~Qc>FUv+&);kdv41IY|Y`N-7t5>*wdJK zMu#ls^#Sa0vf-v=ZeKb6my&T%dBm%QJMX zDZ$`l_~|8fVq!D6^91fVNW8zew({rK=go(Ih1ciJhtEHse?I^Ghy0OU`EUN4|K|VJ z^}pJrf7eF+UtRy)n-6gSkOVAE96$sB*XI%t^dOUp+gbzAQh-GUxe$Sk0Dp@`ZB=`3 z3xH-@?)y^?s}1B;B6ul>S2ous#PNmAPmk8#y|Mk{O9015yL<7$ z^4o80_3Ar&^Z2v9eD|&0eEi-{?|x&izWu#De*Z^%{==W_8zrLtmUBX-v97>dj(Lr{pJUI{{9zx_vU9?QqJ?|kG6dC!ESli-8~@Z#l5A^pV{fzgSC$j zwgKoI_j}vk-dPKo+b&+%_H=;sJkmah)fO^ay|%4Rs&#AI4jt7D6+qD zE-jjRyeqbgaSWK%W`kqlFa#{k`kW7g(Gv@e!Q+!U_%S!hLEJ z-?brSD)I6}i}2~doY=APR|&w3c0g*}U<9E4k~Tmjz5r-n0e~k{0Qb1pt&4nYgUisO znP=w%%8Rb-$wdaJ7O)%JQ-v&wrnGr%iR0V((<$Kh%tpw^pDG6G7xt@oVh(_P7@pZ| z456DOHaT;t|Hv)|LGSV5Ud`+r8J-OR^2)t1@+_M`06ppnfLGX>u|wIRYr%QmZ|W$I z!`P|K9YW|vlmY1&6`svTd{3LtMu9n!J@Oqv&ZZ81MIQtZ3dM9);@9LRy=GFGl~n^Lc_OJ8}km3If(6rvTHH)}0)xu$i0YAuFTjxHfGfn1pz z$_#lABnW_;qEk=!J_{h5kcL7o;3AAMB>ia(@z#Qx$QGoacCCYy1xaNSZ($WAEmV#I z$U_7nk#|#GBzC??%~6czl)CY}yaE(brq&5`2vZ_5&F76m(LjzX^j!;ib(EWONu<=V zfWQwZM`T?|6CKEK44F}~KgWe^Q&w4QZIadyx3L8!eF!lgwu~Py|>Eb zNSZT6wrOUUTJ(;_7N)r=M@CfSRzS|bC>`@@`_p)CN{k*s$`t}3b0fRb27*W=q^ zSXJC%Z;b9iJcm(Zkxoa7RM!*6QqgaOJfZ(Q2w#MZbb3)q1t-*F=E#$V`x%!?2&kMb zN>q6%qNs39$YrGd=eNS$XrVtzXZ_;tSxTSJuv7ewkfTohjkqUrKPA8}a`ZPuAGxQf z1M0^Z&<23QdQo<$Mfu*-15#XO{pOdvBWCH+&YBF}WgJ7&eP`W!OgZRhI=x2Md2c9B z9PU}P_Ei^|7p`b81eZRFk>51IcEp8^lN!Ru7^6Lkt$e9X8|-T4Ep0}hxjJ2seooMb z0&<;ZHS_=FV!d=|j|bI@w-s>=IpU zo4rltMX|2>&@>fg71cfCYH4k8W06krb5F<^(?ZQxJll1PexY(K&jigynuAm3v+}@P zwXvjHTgcp`h4m=AvwDd>E$6mc@+@szcC<@vS#JA9(4tZZ7l`?FXHVB#>-q&lzHjGN zt+wd#qdBL!rKgS6t0T`Bwxhf?c3@tt`-H_!MV+X-LJ3uKJYLPuz_Zu8p zdc=;c%w1{msii)&iT-Wm4YWcZ+O?JI9q*%06w0eXFSUSBKnwTF!6!a8L>*6=l>7c@2@6Y?TwU90tG~A< z50^Rh=r=JGKC`*&PuMr*i{1;O-J+ML>;53gVEut1l# z=r46x@Y!;C;+b3OO#M4~Je+J--PwHE*x8P8x27+YFF<9j?!iz8`u~RapKQFnMn}=5 zgS-Wfl#6WE^wECNFCfj8{{gux>}P&pENm;}xa;elEB6@vtnpSYU)oOh3&U=YeV&D8 zPrJ%nQ$Bo&oRZLq5SF zw4o-CpgiAUH?d*7BjBE;D{mEfovgTLX{(H}RLB#1*>7Sc^s~ZL3Zs;P8-<&Mr@(48^Y#pT88TNZ zbYg-Xj4I|n<|-|6E5u;oX~B7hjl(8QR1fgp3Ovf(Hv+3f9yq{t%>!div|$04P{>Oq z9*&|lb;TxzU?>;-118o6KnP|`z!gt@a0c_`upBaX!y~|DrIKdTo+zS?#h_ns?~`N~ zVebV{gWqcAzjR*McIhK$<__#(kbTu}`X@ZE1o>^oc&+Emy}Y0P%oGw4dpiYxRm!u$ z-wAfSYvDuuukcC{eOxhr&Kr3nGq>{HMa)=>6b_PhG0!XX z3#dn*WSe=~k0$2FQ}kKw&8*g@6?0M_E{Xpg$vKq=!V0+-a6BL0tOGwCwt5O*0BcMY z_EH#FeL|V^mB&1V za>V>8F9dlnd{w~RlA#TX)M|eKhXMz}r`)T|o`@%cw*uiM@UN$h3!gfJJ zR|>~!!{H)+VlMBOcTJ@HbMTlEIyhi_4+of+D;E2ZTldP2Zd4kjXiw$*}nef z@9oX|-`UHr|HcmA{@&hv_`Tgf``-4CKiivU@9gmWTf08Jv(xt@`RDV`=b!(OKe8*@Ncdm= zm;dG8>-v|r`S2BhJ5%_HG=yL?0k3r`hKaQTfaU;5zz?EuMG0XP(Xsaw9X9pvs7VtTl~x8wY4J1F$g5t1rzhr3sHee>FGUc9v1 z$M0?X_MJVyd2ctbKHBqdzPIDoKik`H|7Z_C{Kmfh;osPYKm5VI`|bbJKK%TT_WtL8 zu=gK-+q+{PzWueme*U-i;=^}#c>K{G@88?{{#)C<{kkt#u^~^dzO}o@=XN^0u;cNK z%?}TDv;WYC2)Nz6wEFmH-tBeo!6EPxK1Asy9dol`as1QksYmPIrv&+c7R1#|+Kp9MJIvN9#wBg{J zdy(15^KCfgvq{YVT5t~mOFm^y0Z8>o-=J43@k?0E^_$FRUFjB zzEbQ|KeVYE^qUVCQ+X;t4jtdFX#Z%O+2z!+A?@>>u}vU!SJO*#XHP9G9J^A;EC+(u zds(!06=XIU(*Km>Qtlv(Y^o&N(b$IG2oi(*$`Rx;?H8n72vz3OwjzTFc#xmW3W#J9 zwDy#Hr-0;f+1V@)%{@bg_0;MK`uS9w1WWprzVJ4dLE?0hH-z}6<+@+&a|_6e7E&W6 zaD*&CC=Y(V%g-DlmXQj8avPtZsX(7<5Rp@O3X&Uf;o%)lTwUa;?0qS~( zS7#8t1;nmH|5uP&x!lWzT?>tn7s%RV1!+qlO-W?VQh6jq@QQvTp_L~GBs_vVk06X5 z#6Lh@I=w$ATx%eN0p#fYKJ<0;mnx=yD}OYX1j9Kx4s(?s4B z)L9AX5^bWzvH2o!klUPhrZIKD5HX{?0)iqNK-syA4j?PVk4+NBG~{{k&Qy`gZPfM(J=OrM~=N4}u z3wLe-dhIz8&xE}$co3%%ed0&H#n>1Rxr`OJK24AZ#0q<_gvOZ?Xe)ssHf|CusVjsU z!W)#3Go36HSwmMUud|rG3QOL_dsFm8CqA1Ry+_sxD>arUgx*U(E60RlYL^i2-Xnvy zd+1`0u86D;I&HcH)H63FbXIt=BCPrZm|tLDb2l-C%u-z=#>%8vQBV3E{Rz^&71T`| zXG$vSrgOWbPrQ`xAe#kpuam9K&|Q~j77*!ieQipns1P3VUZ~N@AiuE$ebWi}x;ml% zD+oD#%KP1g7QP$XmYaUzO>N2OtAP^wD*RK$m~6H^xy@SUOzPq=-qK`aE5>iB&HelY zQD^ShY^~Wg$Vv%)S2jaGx_NDlV#*ga_tGB4v@iJ%G949r+fnCixiMFH9kyCb+?lsj z!qt@xmrLHE82voc9Q#v#WzKzyNxxp(g0|?iw4YzwZpFM_Jhx_dw3_jsuN8`ktJ`4< z?rpx<+iC0fVVue($b6FMEwq>`5kS>)_Ca4q(siNFKt_^kVl0K z2DKJ(x|Fp4QVTZ66<wlcLJrDvP;ae9j?q@$Tng=Rw85sd7~Pt-hu$t03JtQL-@z;1 z8hJCGwHR5T%L;*%V-MSodMx+!_lf#l+i117u(`EGe6(P(L~rOro=LhReThD4(R{wQ z0BkhS$xHfG@6Kt%9Nn&Y?{a|-v^%iUp+CHl^Zxbb1jaaEpPyNm(N=9bRs3#mtV9>q z3MoUo6z4zD;&{8XC1u4Mc@yj?<7jJSxSmrton}{9Eo9TSkG9;ctX?YY&DQ4VT!|j6 z%A5Xh$)^zDL*B^88^8XaT4NBg%6Lojp73`XtTUrE-Vy-r{7=;-NpG-z;D7 z`^KW{2cD-aWS#E8l{@-}daMp>{=ex%FlCDa{kgM{x-1zRI`z6ycqg7K_^w$WDdUlM zYLR_wgCl)`?st@z$$MgbXYuaVx(#Ch4BJqbhR?MLkW?=$T2t=n)}B&+xqP&i_YStt zDC63a74J|84|M3Xy6wl-Y%7nalN}c?ZM~xX^uca%XY1~Sj@{UTG3e9po073v(e{lt zS?>G3(ME(%UmoXoVCmYb1$EwD_Zw*|`lMOjTe`ThY!_i47=QX4xvu!VX%%Kl`9D5| z7t0yL@`?$OMc(YKL}w>^bTDC@*L;Sqrr0i>`j%&qJV$bLd|u!6A&$Sh%4s59kzzQl@LBdrt%W1 zvAG#GsqAiTiv80eiaGk0tu$_U7Tcr46>$b0*5)U588Am_gCNI7IXdOf{59bB09~F? z|1z1=Un|P%OgVWb0do{{ZN*%YV21{a*pwqLR*1<`8wy$!4ycb#z$@2M-M{Nhn*usW z5i=(+muZt;2fi+II7RIAbKoU&pf(B|a83gL)&@mTfHKC-jpcm<8Of zI)%~PN+-6~r490kWDcq_Z8FSlRXettYtsQ7#GGE{pKwqKhOD)L!hGC;5sK(!E^|~W zJiz=NhnwEht**iDv{_y+Rf3Le=m)S#87m)AfK3CFz&*9;6DUj)c5ueLS_I7V9lA*0 z%(E$VT3ZC(Ou4uBxWumJIyjQ0*rwLbsat_94-$nN+Jd$AU^=)E{U}e!DcDY4F1h+! zo+#QN0h7eE=V>KurSPQ8U0|Lt=Ds<24s08MO*7#&u>YWi%lTj?A6Y0=YS-9B6518G ze@0&>d^d+L6q!8VQ%lhW7un3ftPU7z98K&Z^ZGE912B`qp@so%3Uz47rSHIw@C8SS zrN_)u4tgKzpjAzs78b)36fSwxd%(gQ;gM-V|H)ewj5R`5PbWIG1a6Pu1vAE<%e%@! zA9~4+l^2ULz>!mbZZTL(VX3abSi@=zzXI2S2Ng0=`l$_<88~MkjvzcPPk-hlZ6f7x z;#5iNmoF{F{;!q5fBuLqePqtKwJkPI_WHDaYhOLQwEf|YJv+U&yW8*V@#ZCQ&y|UHAD|>kOXuCHb?e^7g?B?6=?D_j2 z?d8Wm+SlLyjotk8C;R3%|7gGb=0CL`e*2%NE)ld2p zBMyYfjrf0717u2@hM7eG%c(XOyrMth9n4~z037{vV$R61>C?i-{6EzK`6VDo;fFkc zsKYf0?80yC%9-(9W`p6t{K=%>Kv4dH(fESIbXE-kwG*)^g#&( z3m1|T+Y{{T6UxkJgW>_tAoAmc@c`jbvidw|`h=8W2hl{{UqMz~`bwt&-9jg_=GLM^ ze&NtIc{EKSvLdAD7-fVI-#A%OPG(P&uFs|6QHD;WD^av!9nYxu1@cw60S_71Pw97v zv21=)VoxBflg77^^dVdI8!Hv^$RV>{2iZn1e6Q^{cm^%+OceV!rT*x+uLYgdvU!WX z(Ux$IKF%pS=XvxK@;aDHkLPx^@EBK=N4-;IUow`%(CNJ=a^yMDrWJ&|O!g2%pZB0I z)463n^Aft;M9ei;%vB9@Q<&Q23^J^RWAs}28?rjGO!*h`1v=FsBZ%}ow~4Dwh|a2n z_Ew)xyO#W)rE~f!M}{j4y$yDF1!+ar)yh16M;Y&$Z>aAM!hf^|5H2RyP)Cac_CB zGQGBRj?5~ZwBGd|7IWTHQ(n?l)^jGyh(+ zDeYU@N{Ld_13Iz)l&4_HJiTm?>&|L}*P(Rp73basV7U+wr%;TXyXO*TEX}q3!mz z?YjOHc(K}mW%#UlVFT(}RX5fyZ~9Oe8U3u&_xXNrOZq6%{~Mh`rjO{Cyp>GQ)mjVY z*WkLX?b;iz7dG3RY_+_$W_fG7Wo-++f6Ftgqb-nCv(f@Ky0^OpM{TX-^Kf_5>sYi_ zK8Te~)(4wuqhfiocK6V4X65|9n?JJ*%vF{ro0oU!7&?1G2dUGzx#K$iNK&GWVC*Zsz!6hfPCQwSmxkVqll#Ew!yRcEQEry~T{J z7MZr8LUGYwi&O6@tdL!W-doU4Y^XNC=1b;M`nXfhko=h~(p%f~8-ownGRD@XLkIbv zG8#S)uzy{ouvL7HJ)AR+#xG1uj3ZZ+==!85an zc@=CCx{Twe;2SVY3>G}Y?kMb~aAX=_8w2>-Ikp@uB^)5^C(q~DWqzO>|(gtS+iLz=~~+R|s4RgrQxENnbx+@xSN`h0-Al^;omJJ!shndFa5#IaPjlsRbRqx;};7rf+T z%;`CEphEMNU=#RGSccTW2d~U~4y;q{X`qe%0&KuLkk6N03TF~lS%R;@lVG*U60QLr z@@L>=uwFbt-te0z(j9FE#dABWXBMRNfi~jl=K#Dujskm{QqLhcD}@JuWk!V$e$XM3 zvBhIBJAHg1JPJ3`ftIUyY#G=socnem4_s}EfR7UJVCc}7PDeTLJh1uk?Z|wTJzqS`||7b5h{$ek_ean46 z+5XjA+dtge9o&6)|H|6C8=K!hn!CTX?u5NlQfqlzbT{Z4bNA+fITRho7B7QoEeh=^7D|zfc{G0bMltgxEY8Wp+gEM?1F0t zm(^cfTlw?r^X9|9!t3+q!{?vRKc9d8L;lFFXd~f&`k(%%|I;-X4F2Nhy8gv&J_LYX zKLhxEI-Oc&a|;2uUZzE#1fT>E0c5t2=*)%Cl?MwUQ;Ki8fJ7-tpOQK*_FHo|2dj@q z2;T$b6M}YlguvZesgO&nuOW;tY@>z$?Q?5x-rE5Hv3vZ^PA}eB_xi2fKl{nv-Th#X z0wW)PvbRbq{o`-#?f1Xo|9@lefBFae;phLief;&`+K>GG?&sgwhwpxE*Wdiw?mql% zkFP)4!}IU$`McM4`{H|h_Ue0E-M_K>`}ekc_}2D!?`(hj&JKqMTOZ$AcJpB2!-Fk1 zkG42Iw+)1~T)yh#?>3M%kzFO)OaN0O#p(u7SCGhN4LEO=+z>z$1J>t?pT99*ARSUN z1JGp|AhT3VPKXQyW2VJLAGreJ&oaMHYCLu)mW&j#Mc^>_ly3nLtb|`*#d5DM%y$4j z-lYvD0Lx%z-UVc8GVWb#&)l?k`;>QpKXh#xhBlt)#Efz(KsY8No1KpUnesq52Rx1K ztE-`fgWywmmvLlIr>@P00Ocw7OedyrO0&ttF8ra*W>fR7v}rKz7yPG=HmPD8&8}?d zjqQsW1Z1H5bDPenqvM(PCE(1R+0;|Mg~(>^)P@T06#JG8D97O)&XtWRTlZ+eeRP%D z_{u>(pd2Sfn zGzlyibT;#;GsJD6Fjo);?`nYDArJujAs}5LlLGogIVgTLf@lC(14pFQ0l<2+iDyH| z%oBN2@GQjP64Dt{PvyC&6>2AR(FMq5>Og|f8HkSJx5gPnD9#`a8Kj9e6|@H+96>@V z#;Kb^D5A&`#%?}i+=_@Tlq@c$9G&W3Gp^_6hD*z}@S05+%UU!5aL+f8-nEUDNDu-# z0Gzu3asc8$9lxC%c2deoA=-2FDqq@FR`sWS6G-EQPCY4(v=51gc)O74#LsO35za(b zG~ z39^mR2Un-$7(-W(=K{hRy4(*rR9FMW`BgZp#H*2GYf6Hc%S$8TUG!024lKsjDGsxr z7rbAD!nG$pgg;KPZH!G3w4m<24IFeq$){c9J<3y?QqCyhw@9*1*rUf!Q*=$I-`&Wf ziNa?k{pr3e#s&UAgb7|S)X)`CUGyS2dK@Lq_ul2b=nVNPB5UOm5xuq)UM zB~J{flak;&1!F^r$a$X!+4RuOabDSZp4dbiT>PF%x6w;aafOT4&a{Xgc72~H%#=2+ zbLNdaiY+bV$sv8EzeXz?q1%I&@n2B)R;MHjo63^}o7smvq7NPPeS*Ao+Obda7jA6O zZEcu`mN^UbcZrNCpSrXaBpV%@$*ZH#=}4WJoSUB=`tTsiW70P0K-u>Cq;Nk$v9=-a zSN!F0Q`n$hB1iO5r~X@=h})ZAFKmqdhAH!%ym-6=^5C7FHsC8;r#r^l#>#GC^My7Z zm_HTDqu%uGn3tW66e@&rvUXz)I#5*$E83kY`Epv(raH6H;$UgGvU;_)qS;z-2pNa1 zO{ufOrDUtd=AA;_Fg{zI+&@{DP`}08I_l|ml*MNXEuxSstBSe!jyliR%vo9}-t~DT zmd%YRk+VWBB`fSxv+hIL)Czk;J-dY#`v9pG{w};X;JRgCb3T+zI zdrQF=X}7Y$=C)7#ys5Es3v6ju(%;AoxwI>Vc)X*YykjR%25mAdtZr{DpbsxMa~tk& zEZ?9*-Hk2tjm7IV-)m7B8!k_rwUQ$5`dkXx{*HTZ`h?HgT-c(Y>3rXB98_w@>ZNU$ z;GX=!D$3ndO5BZ%x3~1ot<}vfmX1`~PVN=bXnnF`r!YY`wvhM1`oRWAo>?nQ63?w3z+-o| z;+eXBw0U)F*-kktPLzLdTP0$qUdk;pN1m(sYx;Z##@jM3KW$LNyA${A&AUg|2ZiB4 zzj*h$khkjz-M+Iub=)AAHTZU|oL`F*cHw|s+oRj^P`I}IKt1JIvf5g@JKEJ2JD~rU zx0Y^iY|Gf0Z5qm`X#Y*W=q@jclCc)AnP<62c@Z+&T5)LuXw~X{r+!m$(J#hpGv;9P z_POP1<6a)d=ntPc`~~>RH=@zEWc9)f)Ri z+oH{`?AzRZ-ABtd@`Bn}+o9_jeT}X+((MfUgp33FEnK66=z}&jE9%lI zNw`8*#h?1U#5SbZy%l4ul}=zIN_0~jx3xSR=3tD1_hiRDq?`KCOWi$t=C}~d5aH)BXYPD?{%=D%0ZAZe>lAtDLAa=Ip(fGI0qxZ85*#`ly(Te zQ1`K$*g1GUk5Aa=khu@MdbzNX!tm5!*2008fxDaB60n7GVohS@Dbl8YZkJJR*;Qf} z%0-|MMSXZj=F5P&kNOJtv|w%3>54f_m>~n-_+bNYiL9k9=@i^J!zO|iwUNBQ{wj>6 zQ(>p_7<)yXH(noRNlBusT$qCXTcpf$=vul$ZrV)XdwC3Chhwm&PZ?#v-|dh-)4>9H zD$wo-8<-w#%p9cy4l|Fr3Huxd^c{1J4ukZ0Btmd1WhmTL4$cr)Z5+k|?W%NGF4aMS zqMvUAdC0=O8nD8EzK$LB<-($Zwn}cy9lpFikfSfGNL{la1{2Ks!xvrz9z$*e{ttyW zyg7Y{UQh=eL~+1DDR^Q4ewl(F2O09nmc2)@yfS^T@hqimaHkFqJsmR#gAE7Nuc5DI zQ9%2IZ;`ihE+D6=uzv8g-(-rOD8V!TkEh^k^g!X9M&QnD1Wv5_y19M~)`c_0;9$6d z4uQ-ZFe?};yQ=9^^oX`b{)Ju43OEN`PW%T9?(%&K#`XfwE_LVydFlX$<2IH~kQXvl z=qcp_nK0+eliA64%nS4b^Gw8?Gf%W(tPRC2ctPP8HSb{OR(Ez8ar@A*RGrZJ_`RE zPyXWC%Aa5Vx;G#GyZ_q$^r!#Y{=2{Q-M`}N^X9|npU*#^fBr-M$gXH3;eY%e|HuEs zrHzOG_4@Pgbp1=)e25|?zFJz!?q4HN;kBb{tYulvQB z2J)OJsh&I_AoBr)GlDc!B92_;{sF?awB_dB=GPFj0|fc@rF9Q)ZFP8Kn->puclgFm z&j2Ea_qKcW#;#wzvYS`m+uIlK?D@Oj+419dcK`if+qWP8Xdl1(lfC-Gzpu>(XUVZqjz2UhR?|x&OHy`c#_B-3Z`^Fx=erI>r-`MWiN88_j zYx7(Fzj=paOM$j>6XHU~nPSF|mM zJeAj0D<*6K5QA97bEgmGaa97;I%HVO6tIy%W6_aTF{sPF4! z{7?({fsFvWA>W@nBO8qi8#xztIf>1=(874!Zx~!$4(+MJ_>`eJR}-5|eVe$0K2(#} z=YtrS_Z9EBbnT1T73F$1^oQn+hW&4UIs=?un)7sOqrtgNl<3$=_+PO{XZB>M&5VgT z!`LooBfFTmHoORJOnv2g>U^mUl93H(fM`FkaUYV2_KzVy}! zV3UDwSKNQWyXEN-4Y@)ea5ypL)ffPpoeRe%Gf0;=voq@EO4d51a;6Ok0Q46k03#cZ zcs7~ZSi}o5Hd08NNkm_H7V+GZaAH~SdEx>}DI0JaXp_RdGPqnZf+eDihuG=S<(`hqpbQI{o0OBA|h5{lufCvntsVUjr zpf1f-UJ2<5BsNJMNKtN`8`;ymv>c*Ux>dg*eW8VH4dtQgNq z)*Gf;+=aA4EZVZ;c`c3t%5}15!nlWIl*z)TkftGINQ>&T1tey^qJC@ZGKDzlEP=44 z3bhpJh-a`+eNyvi z!xh9b2&R3WgCxKvX%hjma|sy?eDocHq|}hY9k0F&rcX*=Mel!$CxUXkoc92kZr0{@jMqO zPY1G01G%X$=%dJn4f+z%N9ex~!5l&U93`k`%(|n{MnP>ZvdrnX$n|(ui}L6sB-lm1 z3YVo5kO}?o_>k8MGF-TjWXc;bHnpkgLl9|$i!1^y&WDivT%if5lfpoij5G9ENy9jfTnsv2((JyFV9~s;Ei1rmji_y!pW;~&Td0p@u60R^3Sw|a0 zbg5GoSWSD=Dm1qa`o)k8xmJwFRN>%sf)+h?vxtj6K%bOYJW00}7nDm`8GWb44-w}W zol|mSh2rqhnH>2zi^gWWFY&Y)u(2iObQS&DAS14z(W3Oh#x1&1qGOrHl{Pydohf=I z@2YNTo0@qJn|oOl$Z?PU>trYO?U0+t|LAgx9(%>w!e!BKSX6};gS0SSSyb>|E&3^$ zZB_T7Ky;Ejfxs6v<7;3bsIpxl(`i?ml(!AO-KDIVp-dd-e6`Q@K>zX;}Xl;6)&nY(nHsElu=$gOx zoy}J(TWI43xhdXy#aLZMl_^g%(#95kV?!{(uvu8gSe!FvD*DPflPn`mJ;>l2v9+GOB&7ac7`E^fE&LnR~%A(J1`b8Lk+IH$Hip@ADxj)KWoT2KCY0 zr9v_ttjTV$nFm{H(*b?Sm#5wvW?8p=?D|x({2S$%px=02G4oT}R@1-vTH$}R$pywh zU%JE6yzZ9owtZsoZSu?xbA{L1+jfUsxRh{wQSNQI?C7gUWPY%8OFihfvXK|Xo<6?i zox(Q?jdXAIn(?p&w^g)3r~H-Qf#=#aeMEh`jdb;dOzx4z+7|0;n=jQCbc*(u%D#|+qjlV;dnTJxAL2*hsl3(E7JROdon^;8wHEZREx+AZ z*506-Cu_FX7SR619@(tlSg}9YI)C0TIHk)MHdk07-k`hs zT+!x^7U>y7N5#{#T*`c`U7uV+KR(n)9kxhT-r^l%DdnwO`gF<}K zhv;<9y&X0~IXsryAPMLb#&#iHQ3$BsJ44p*}Bc zsf|$DlyNP0%ooT$W2`m2Kcb9Q;k{bMj_euF)aZ_qQ+vF>El#%927|(0)i=Bk9E~o2 z+JrmWV2{n`z6^{#L62G`NJnp4+U?ZTgR!}$ZVomyTVkh?b;tOO<<+y4jx229qBGc= zGTxdm??>kQd6P2c<;^LNG3;B#nATj*+>l{|uE25$^OMJ1H&%!^E&hUKwqb>B&#eL9 z_?icpgGMoY2m4a!H2)MF&ojb8Df3L>$%r{095&JX zTQgt51(>_L;tS?Xc?Kf4uPUo5FgEkHBk!_O`LCE8X;)JXde4dwEHrJw<=W&eR?KJM zK83c+eDKJj$E@-+P?)57%ovrIgf{j&K4v-5$!8n=4Ix)oVw_KdD-UFFNgwb$MmtnQi7R%c)_&M!HLo?==)|2 zu7hVh0f#6jhYKdjGRML|hei@>!ToV8j}&yvsqHDaIQGDxJez>qJTQ<4*4Jjqly}YG zj+a1^o?6YMIVXK>{~P%H@9djze{av;zPHC0zqaG+@9qBKoo(-5+5Y;C9Z!^T`_@+1H`q2lTi)4; zcUC)iICD?QJfC8VN`)dUnD^w_$NZLI6FTLsQ0Oqmw!(x7Zz)=V!}#&|?8y*J+)S|x z31bA(K({_=hQcd!3- z^Wp!On-KpIZgBh`Hy{2#_Fw&PGXAgl@BixO-@Q-QKiPl#-~ajN|L*huz5TcU^lv}^ zr~j7!KL33F`TX;*^+$F^8wvlz|L{NjZ`c2BEB^QE-~C?KzqHMVaZ&aOtfpFI)Jar; ztYW&SB|r{9lPSCk09r1zO3=8d>ORbcNJOfQ2tfT3G91di8uF|Je+z{pfH*ZGH>*cm z-(5pMA8mJhVa4jL&2PT84DfJ#c;3fF$G_Ad{!#OFNtZO{Zs&n@3w7 z?rgWYwQUQySwoVJfMGtrf~*IS@etCT$gRKAVlBX{UIWk@fUy>|0Bl)jg9U&Rf|1Xb zeKNBtfKPxu*9qJtvMVjjX8>58Bz6MJywLn91ST3=Itc(mp}8I)6~Gy4fqw?@@m*86 zok4hR(^+Is2C+Sz&g}ehWWj7|<12wmg&hK54yQabu&asJdj`zhz}$gv-XOAxycTAo zK4jAQQ{T>}Q}Z2w=kyA2J?p~&4aO6@oQ`c6j{w%_`DALNsc)Cc6*2wNE*;mNj$0d# z0Ar)no}RgO=}sU*IiK_FY-ndg-@XE%O(p=`QDNs3f!j~+!On0*Jpul-^*k8b@N8<+ z$*ix_Gi+cOIX9&%`GGR?Rq_GEf# zGi2#q7Irxf>r*^@hkIy8TUn=*=)9|f=%o;epiZn|j5|6JsC)`KEe2tVi^NK8 zFhJg-D(*J`a`aqrj3b@2gOvHaQzwXH#b{4k2;IW2_+GJ|UAe0x3xx>^AdG=RF+qTJ z`YKbrW9k`3Tb}DIR%ikUw`3ke)U??$iXfyFST~C?sXt< zehhh-`<51v_LP3piEv1?3qjW+dRS+SBiiag7-(Z$1(rY{LP%HQ>O>x6f^yuXws@)y zBM7S&L_@|$0+HjM6deu=^n}0NjItqlW5#lbtUY9qhXJyIsN|U?jNO1fjQH)-KQ4XX zF;*fE`%0fWv}0D(Hh|D6k+woA4e854%CjM)nfDB6v!Bf%>5zGz)uP4F)#5*7RV10d z9#C&LD!Gq(Arm)%1ZR9lxfQl!Mqm2KMB&K-A31uB%^+9Wl+mW;MDd^lZET@$kncpX zf3ZzLgng%P|G(`0S+*=mlAeb;Gb7G9yYt@6t#|9qyl-~joHkB084(%TS2h5VU~_rz zIO-MCz%$2C1K>OCalz{tGhZi2xE$`yjoJS9M-F3W*TO zJAyGVN*0~xOPn&ckcE=;s}51G?GhrM74z=2sTOOzdOobCDN3S6Pz9=%kXAGggw;ehgWjA#a7`8iWgTnWNMuC7BEpC38kE=R5i> zvJ`z$n1P-a+8H17iaBt(p)Q+l(=4aHN!nVTZ@c^kF*2Iy#QtnyIWo|Rb0s29xHrv^ zS+%fbrW3lQH31}9bH$wbqzJ57DP)i42Cjv-HfCNO=SQ0~m)*0yr9$u=x|7>sv+YjK zul#Fk+J&{0Sunn)inq-5dDAfO?#*XDR?dkTOwA1CnD(YXBJ6ktv z3wC>+TiS5j+GbOkTO->=W((?(>hyXT+k73^GOw)C0>86oo>*fNFq zH;U_zJ{OA1PF;{m>N4l%E6aFKugNXU7uHX5tEHUB#qVXs8u(q2HrrL0@gLZ_92`Ft7F&*XTWRuM%{CK6U7yivIT&@+45$C56sm z49Q!es4ZG-x|}4+ZBf(yZgCkqT(-w)Q7Lps=ZIyEZo#P$R zTAL(~-A2I`Wh{}+ntO9_jpF#v^C#-F1H;`>&pZ1F99K{WC6JzXi}~QV)f-zXOjCVl zt5V^0R<=@Jl(m${OcA}h*U>J;mChdeGVI)J+l==<){Hrb7ZYlV~AS)S?o zhQ8qb&CYg|k?iRw#zfQH*mirgZKD(U=o$Afv_ZGIvXxHnZ?8KKh>G!6Z+I`d)KG5R zURzZ@+IqpbOOM?Kg*NIow5Pr~cK4^?M0snZv|(O6S-Hw>`KQJA4EfI&@?hAQvqe9U zX+dA;dYK)%_~b!L{rRjH1-}or=N&~weX9>A{72x^P5hd2A3Cp#bLx~Jn`XJ}JXR9g z-7Khw!ZXo-(ocn_(W3l(fsJGwMqu%n``wi`I(Qa5+e&8i=Mo*4w?iyXou#}-_I56P zRfwq#^LJfQ@8UyK5A;^2hqj?Hi|J-`WmwexwU{3U~9n46aAJq z1mkYLtQf0nTQXK^bl;=@lN{SC4;gLNDf#yD$u`J4E*X!-)-JS>M)@b;?waxLF(%Gs zN3pF6v6MEo74Vdpxn)*hlU(M7wCpx<>M}7Un$7vX&eqt|1@jYfpD+fv&!v6x)JziQ zEan*H2lB8J&naJXbtKFIrjNDJ4YpFAH|07Au|oy(m4~#m&~sz_H~|uEBp=b*2V?@ixbtE<;>BbbnfpWLYrmY^1@|=c zrys7EPv|EwX6!NVbKOfC%bgYX(x!@X#Id-hyi)__k}f=y@GN!L!4E$|w{?Jl`PrlV zd7==FV8L+#PFaGN=%WeuE0iR7Sh*Jz_dlSIl+$B^Zk(b|A=p^+#bC-@0p1;hDLrKF zAipT%e|anTzWrzl_K>`pYa?WE0e9;>VBlyT;`ZM@KNd3UIBjIA|CLDP_n}T!u=I|a5 z%qYz14$+ZWKp$r4E#>GSSi^gDfF|jI&F3~$s4&g_%s)yVpE4)s^j!vS@e2B!Ibsf$ zan{U1*pX(r#%^F!7_aT&U=g;kTD-IE;R(C@+75>|wtcv@`qhK&UVd(yH(%NcUVnJ` zl|6m=3w!+hr}pmsuk8Js-`eYUzqYrJKegrSpLWp@?(aXb=JD2!*Kh5La-#c})^49{ zi5+cM%yEYYtJXKRSSbPj4s53g4cPw0x;q%D16Bd^r$R(6=;r{e7Bij##-kS?dwDa# zt8_RiIE720FUqYVZ~Ym#{^DW|XO9`9jOQux`Ekj)k?`;T{lEW@`utPde9!`vH!3Wg z4b2^Y0O9E*vDAqm`lTs;XPVRi5CAbiE(lf-qqX%R10uUQq(O0=Yb}20Bwlk5;cxA1 zceFi(%e%a@6w+DM54KrDTsOD22ZXdYSJvz=ZF~RTZlB)S<^3z$Uwvs;3XOF0*4A&{ z+0(<9cKhnD?C|B+_VCGX?d7Nc%6{_sAMDGY{Y!iMt3TNFZ+~r{|LR}cyU)M2yRZIR zdwlgvJAV3&y}jf9*FU$%`!DS2{u^7}e`YyZTH(RY=8H_?|a_)-d0yHt=Zk% z?&{vko7cA9K%&-dmke=yxwG}UfZ(hFHX=e-fMduAq$z-m)Cz&XMbYDrW>kYb1gx)x`{s_Qx4rrS4nZ4*vxby(EgYgLfIoaxt=5f6(P*=*j!wg1SI}&ZL{j=bZM8M@r63oyJ3(coXZnBXb8z7VQJx zF97|q4c)1^eaB|nQ~@OR`h7be`*!Nik)30ser*@yGjmQMUY^r=j+|dWvQFg@!n1=u zzyhtXwRmQlpbUw;=REX+49@xeU3mqfK@SE zqYHp-cOog^`yQkc`9l&$fZ@~r%m%}m#Z&q|;@uE~F$6c5WsEnx7f(}QR$F{@7AIe7~KD$R#9<&5hSh)s?hl~7&_WNwUXAaqe2 zTR(TZQ*vPf8HDKRbiF^;Nk2$!4)M;lm_6@K@&)`o<=Sj60(P(AV&1R;^#sDeRM&I_ht}ckwnF5*1Zw3nn5m=v@zv-N2k;vv?2X;!n-E^_yfUI zI}@Id87F6Hw?N;A2s(_*nO}6IJ4od5Kz$h}QBc^kanSX_Y!p~_4k1Ji4n$hSbmXI> zeCIg@*s3(A4W2plnU{Fzj6ze;2Rb!6RM+))UZCSj<{qq&sXPe$ z65V&Z1qz3GEy=ON1@@w*-c8-*hEUSfsGzUW#h^xB+L(h-Yq2_H{0tj;1~Mn+OUrcH z*SofSu9J0)N6M`tEfBYsq5Hi|2~#f_D}fcvm0JAwd1pF92g=f#Xor3?hw{D!_f~ob zbEgt2ukyW3DlL?3ELl?5Y;8r$+?4L9t75ckAz;`2)|}Lq2b(XLtCXXF|L66Q`t8iw zE-hKnpVi9N^{u&^gXPVW&3R9r?JVS;cv~=+SJt)*+m&s%=wIcPt+WwAKdfS8nUAR_ z_o3@8{aGU0fU%XMCuvH(!3ssgSYrN*!3Y&L!KaN0xi%2W23vs*sNM4h`oUY)flJv9&C2x>Me1qJ-J}UaoA`VAIf#sL{fdLLQ>?l8(UR-+eY*~GFBpU&s`xqbhuG?ASLQv z&~J*vzePrCn=by8gqONh)Gu6OFZeFpAL*x^J)@6K!BXk`(pC-E>Ps7Mt}IcQqou++ zt>}w2vgX;{hs}jpUIj{s+#J9!*Yp`Wo8DPnKAPX$c8kB-1c~!on`2)J?hm-WYPE=c zYwPWeWru|=c>lV(<2~qJjLt0&wyEzdYAK8Fyfy8t9&AxwT2tMdyUwlI9BsM2w%zVP zJ8D}fHv_txrh8k~*OqKo)|AQ#rlit$mhacrEWuyJwJkT`#jWx-T%(tJbW)4^*H(kS z7W$pa6XVGa%PU(i8dDnv#fl)0N{63;<_g#$g&SO{yc-E@- z4RVlY#nHwqbZK`*dl{eT%0k{m^r6Q1tXL{G#u!ZJp6|FO(AAtY?g=pQCOt_Tt4#_%rVRd;8%rc3qy2f zT3F)A!M&dA6c*4B$5>@Pbu(VF{2h4R5asr57P!)4L%6rJIL7Ap^B7tXaPI|7t>C8DGoF2 zcZIG*OK_47QHZ-X=mB%T11?1$d*J9ZZ5Scfxbw8+8Oc+d5nj=GxAy3x=d%x(v?m)Y$jy;Eylg&0 zw?doF&b#M)CAjW9e&JMo7kmn~qi@DB97CHAKKKQGF$&Nx9Yo`Q9fTQj&F|62Dr1aH z24F>Wvd919sfVm6X9(^FS1N(_N9baNUMVcpH0xP77A^(%PT>4b2H(l)i#|Gl{xi=j z?3S+sMDUB)XH0|nBe053pNBD+rqHIQysH{pGrp^Zxc$-cUs|z^@?QU+)jWe8teHdPy(KTdnz1u4cgPp4 zhfTTw^VZ6%!&sNMvhvmSQ;)F(UuBH?6Z&b;b_a@j$X{X4CJ}rPF7UDAAS2g?aJT{T z>`&m3@Z^q{!5atgfbUyd`R?Z*dGq0~?Qgz&{kx0#fByeZzyIxD|J^Cuzy6zVJ@@VV zzjYF~_pN7D=KuO{fB$#i{dx1F`~I)(uYdpH`d|Oe|7!pCZ~y+ja{s((@^|;?(|K-u z-+h02|A)GNPn-WUfBtUs;X4}&|NeirKmJ88h40&Z_zyh)tqlilO8l_-@Wam!KmUAx zWLLD2@bCWJzx$8+{8QU}c%BXbEC5%)R$uYFbs7UuQUP2%Ck3?2H8%qID&bpWbAY`M z=?(zBh5m=sRuEq|+jb`%>umzz6G0OpyoKaJayR!@L$DMtcd`4z$|Jw89&CFF;oM)@ z_W0Jyhxc}McWbvVKLeP&x7*uycD(<}?%#Z7*N;E7m!ExY?*S;E15iHu=C}6Aul_sx z^ymLS`{Jwr*1r1nAMEWnzq8k0{@h-@{-r(s`KjGMd}_-THJL2oxV+{i8*7yDu0Ll zhW{@Bxk?rm00?{b0bbkY+0jQ(Fgl9hnNKwDh%uXiHZ2H`>=To;^ zu%Gr+$Dy6~0JKhMFUC3%G_c9@u{}R?YzSewpbZ0_9bSy7XKAys+mLGkA3Q@#s5KsYzOvy!gDU=`$Kz9nM#B`0VpaF@C9IUICkyDIb>`AkVHPy z@xc1$bNi9J1%k18XCK@7aAd)SJVPKJ5U&%Lexi)oY-VF;VlPJ8IN~{-Lhk`gA&(B= zekvDTZ5oU`+7D=l$SUb{FF7+0LU^M1veUpK#?;`rDZy zU*CcuGdF!A@xo)egWP|SVF{C5SG>&5o1V|aygU`T^B+)1GEPUaT4id9=hx# zl#|(9c^n`l3D2CY74Mz8L6m0|q=akpDz-kPd>-prEduiFOdApqdu^^H5GS27Lr)@i zW3>a3rM_hdDW&bcHW?rds{7o*2GRZmxptv;AWK7tbEKRDkWyC*?-0NMay2Xe8p$3Wdr%MZ_E#rc*sD*UT>rV7Vyl>&;Hiz)KF8$z&h@y{>#{m8AP6a~D zop1!9y@31$=0(~}n04=ep}NeI?v%6Q|3>uVX@u^ll!1z{ffRwd7A%h-mz+n48B41uLgdEWRC z(C2;u(Qj><#Fp?(F^{_V!oIUGSEm7k(87_(r9u}`CZt=Z?c}YIqCa!BJ(<{?HYu_6 zh-;HPu(SFU9jY1Y$dKPkGVR8YZG|mBFNP5F9DRtU5cDFl82hH=zjD!+XNp2sxqd>Q z>3;Ok(*}bUc-rpNX%8~16Mm^S!24P(U357}e6OTz#zB^#Gt@U~tWdcH{mIx;{NcP@ zQg>`_f-WbOm9xwWd7$`z-XKP2%BEYuR&J0eTH8o*#3@^D_%3B74dVg5zL1v>WrRye zC^}tY*Oe4l2}Sd`?!uczWnxNVSfuQ_Cv)yI!K_3Jsx+h1T*)xfiz7Wn;yP|K|s57K&+pFpqh7 zm@zj|u1;3RT2QYR)ZxzNo0S#KrB&6Qc}gdsDN}zhKAcjnwOCrOEZgj@&8|8xjrmr2 zoa$~Pq>VD$wkxZ>l{M(}(hICWwh8^Xh_*Hl_clQ;N_IVlPX~=o^=I@M#9p2d^qs5F zFIotyH#P~I4l|@nbc|~Xx26Suc^d>}YIQ-mI>8z!&jIag=}&FaE!LJXza|+n@)wrV zUoB%eZc`g#XJ+-mdToIG(A%tKEYNq$J!SLGV&8dqWb{{&=+u5`6Y4puuxay!Z3~6l z(c<}zd0v~N3eB^m9vhp1R}>e2UTwP#hbh11c_Ld_FH(yaTvy!s)!Lfo!=^)AZfIXa zd4-L@Kn;DW@JWt8YrXZQdAv`D8&Y{qG{|3V4p%l-g5`$# z^C<$Aab;`XCvT2bdu8(_^=ogf1(Td>QLm+Mm16;2P}vHJxm#Xa+mu#v@AEq_4t<@Y z4~zA+oi-b5X;*!TY?j#jW^Zd`zs!-x8l5R`!9CZV=R~+hmMhxFJxVHFQSap*z29$b zvtL<>9yNTo+G58yw_RweX8CB#`!|;+uMv6OER^$NyR%9;7q*nS z*;=!uzj-lVA=7;*2_zD{SsX{AeTFHH*4BMztJxhWjDxg z4US8|cr`fGJ=|HHGJdvqmfu`iwz@Tkey$g&jf@>>uRa!2RVl{e5FiF3%D$Ciqi1GF--Uvd4}y z-lNsR{Kb{U>I24HMSu94o%y>hSQcGfF1tfD=g7z5o(A2B!R8r#A`g=a{a!Gh>Q%$@ zR~Dj^RY*T5JXN;|K)=%`$qI~6KiWE1Bb|>y)|B@hy+EY0G=TXFY7E4kG9jzjw-encEcxX`TcYhdK@K z*@Zkp-37RTxp?MwIj&rVCk00+Ct8xY;8Cx`ZKcE9k~61+_mcpu$^4rmgIrz##l&hj zqw;EvYVbB~oP!Mpd4j%!J+xrWJfTF=2^eQK--2!GF4u^>)_UlTFqu!CyL>plHeu*j z?7O@xhxE-DyRG~RI^;E<$$J6}0S+#a@sPev(SunIP6u=8K!T@SHQ<<1_%LbhMFc)6 zQoe>EI78u}=3{w|fbq2XF^xLe zCG__MTs1wRuG%=5B3JO`$KbL!^6i;6bSAu?dwSqd-*L@_!{{)_RC*}S{kR{cETYT_e1z6ZS?s5$maDK^K8>?9QpK96)-NSbHry*G5(nUO8V%- zMk;fA15T^3N7$4l_GEg?I6Xeudt&%7h9 zevqdFb4^oU+Ge}81Upk?Tl9}H)5^09dzfylx4;I}^kd9eKzA$jPX(VSEmU_VMVsIq>ag$ku_|Di=o&+^;aM;%ncxw({N2KkDYg z-~4$a;oBY$-`Xhnd;kAwQU7l@1ODc(t=m}m^L^dtZ|twXeb2X_{Rj8*Q5kx7SN5Ma z3Uuw;e|OKR+;43fe7n5ASN31HuPgsAY?k~#@cE0I5C7o*Z~y4KKX01!{LyI6z@`t1WHy);JmWUQiKoUvb%5uOQEgwF@D=y@JTyK)mlD#1P3Hgn6k` zdppY^u2uWk#UU=23&;^5r>w1}eaqwqqF!|;Hx-h?iI9y>?-Z@&CwrTE0iaXf4NJh} zg@pj-F4Rphv}eQIW&j-T1n@Vm?W_Zz0QkWOfQsDDL{0{PAm1)7Qh=pz16K>~0HMBb z?it{624R>a77nL20wfIvGdmB*-KiJn0s``4Y$xNHIsAUEut${T0Dk)lJ2X78!SIyt zpWB3cMjtDTP-xG_LsN{?@hJfI3}6Nc89;i%vyq*j@f`rWcM)38QNpwV@8>@cT2jbNm0}>TJ z$(zt-&pxL83U@Ue&ut888a@wb^Thn##7=ybKecIZ1{oXB7szyQ!Fx)8K7;`98u%XH zK@g@nKonvyIDc$ zjJerlZfDd3ptf^`u;O}wPAVjVLjO!Ce;C$`KkAC^^s*WC7%-0c zUmFivgn*PZQ=d9$ks-JKpzUJ+r%_(5L@mPce5V z_M>r(E@l=XJ0GI&K?dciF>{gWY>8fl=!IP5MHpRsfm}se0~gsM*BScPdAP`3ANfR- zJ)^&r7b48GaUpvE`BeE}1 z=E5dLYB|p-|G_ibHKWht;M^{}+)hhmj*P|`#1Y~h$516xPtHM4+jDduHlQ%`KjX3ngL+1u{ zVZ&8y{VcbSwP2a7&7}-2SZFM{N?Kkn%q`;X-Q#kDydnSEcv&>&h?G-C6KyEBuq;9@ zF@!kFtbqtSTvJl_MYFQ?BCx(ryz|V0cST!;Jt-`ynl5xwpztx3k~Xfo1#@phAC=lf zSV8y|?y$8{v$k};wfW-EowTgyYx9@N8Nv00=j)wie+r$Vlh%syUzN0YGDVItcx7!~%YEyWO}A^S zu@yymX-Ruzj$T=)&`8*qQYYMbuRL-BZC2IG&Wk3ZUg>;qz4eu~+0IJpa&bT|%>5;D z%NK=B)*EZ`58f$bUCZTRQkc7Xpx#?s3d$_0fk+Fd;E?e4!e71`l z+O)N1weRAN=f#fpBH#7S+D&8Sj&?1sExMts!=*LgykvW4A!TdRKna~^tIN(~W2;S^ z{GPFNX~iXN-(H!k&6k4~-sxxV5hjc(^r2x)t?uc+M=Ou$JF?FBPNAKY$HPN@Mf+ea z@7dAr=0Mr#e!Dy}zU5JYF6?M`eNR0U8+`>9U7#D+wxA3p^{(k(ohq)t*z*2RzL1dT zm(_u`UNKJBwxhlEeq+1x%C@v;k=)v{JXo>PMp=s-0Q*1$zYf@!J@y29K;OjL+>zd` zmguuQda*6&u<}HdTF~Dnya)Z^e}zxV8|GZfSs?2IJ38PbZ`qQ_dVb%3LZ>ytyL}3Lkr_jq;Sa4D3@?*oxRvkMHL2B--RKf5;=W z&s=z>jo@&@`@m3q;<0c)bEUlQz=FQQ*T`c`8v{{ju0t8jFFkB)lq(Dj^S~^zAJbM3 zob2lv%*NWJ4_5YL=Fc%W*$01SGi+(+5dnV7N7yUJ3U>uIzy`atk@-%El@sc! z@R&-PJObl*N;Etd7QFz^rC<^;Yd^6O^N8lX8Jt31pXZd*W8Tcc|{<|-}hgA?RcoF?Gu*y%9dnLJdOC+1VQOy_M1*5tho z_&Odfn#X`azvz6;(0OU~t)3GN@$2V;KgP*6xe zXv1l6&U`CAg{*_fu@l#`Nv>yH^lnCZF}eb70LSQ^XA1cPUz)-hlq+sF=3Vfd@g%V4 zVBHDaMF$CIU^$)O@A7v=uDNin(KNFW98^irQ#eI{?t~-sv!`%Yw1u{J*qbq&7U&i@ zI|dIG()(4#TnD$uUMSa;HZaA3YsT&tTe!e(?)NWkarMfU`+Hj*A8mX4WQRBJ?D6;o zJp4<0`Svrre*1~N|NQ6n_RF8!r|*AfFF*a2?cw;Zp1!gBS6|uT{il|^d}GDaYYVTn z5&ROH%3QKyUclyQll_3**znHI>y0@#!!{Q!vX5UfFUnhU&pg1GLdR0{Fb5APY-S-( zA|F|z+hG7-@fBjqw@{uY*b3$0J3%fXa=JjC(L~{vPT;=C91a`Io-?K=b~YW`08Tj_ z{8PyJ@aIpr;1BWt^G3k8HwwPJfd75h|NQ^=UHiUg_4l_H*}v-<@%PI3_VeFh^G|K_VFGxW zxwCH3_6469;N=6t&I3Se1|enQo+V01cmV)QOvzdkuj)?umyqE(puL0)R5`>s5vhl0 zKztLOs|3qj-)tH?}#xw+8@6`}h-k zynk(vFF&{ISFh|Pzu&z5!XDrMmA(4%H=PH>CqMh0z5DY2Ywy1Km-hafKiZq0{?R^p z^H=uf-Iuog^p{;8h^O~o*!9EL_IUHT-Q9j^i>H^idic~XkFV@%_YP9{+HNo3+T|_8 z{rV2TbOhW`ufuIeSZj!3eYo$)WONDH$slqqZG!}b%LM>?2?=T}& zW4UbmGn-rhUeAYsOh6CMxaR=;3!Tmw+u7;JdT!4?b}npu;n~oicHx~q8uRSXvoj@o zp7iYW%+{}^bb5bG9hE@$ z#KyzWCIg=~cs4!tDQ|A^PO-8Jpv{b~XY$_aILf%Dph) zqx=oAohS!_awLpT%~ew2@z5>?ls%n+yVrp~b+8g_J4nZ6%uf=2rNCn*cQMbV}fUup1l#9$l z+479=*2i~KCK6NrS!;Bd~kgg}fTY!huT>Eu%2*qL&M zpcf}93m`pl6dPY5s-D>(Pa#{hDfK#U1s6i;K+ICg&l#r^$oK$KEDwWxlGwabvS$d~ zd}|BHP!hBja^2&dVOrP;glY!4_aW(C=67LH&UD&KuIh>%oaYc3o!}mK8x7~B!?TcZ zfPKFL@Xs0uC$=KlVq4JjFfiq)n1_)~6W6AVLYBo{EMUhk7#9$E-Wfr30+;`thW?@M zF4rNPc|?1ZDDHICo!H7|8_VapT|oM#GwK*RkR^!Y6!M{sAMWidWSG1JAcziRa_%C7 z44o)Sn?>kA5kpu~WSdw|ITyI*(q|VFu9a@*GOzp^J&2&I)9j4dff7$oOaDE#-ptBB=9CNpHPG4%U`YRxf3oROrr(cj*M>obn-XDK>wSt&xZ3g)yX#(q93UN-+g@7?r7qkyT55ZP~ zapf7&=}?7<8bS=G)cquG&`bJ*{`PrBNjsx(#T>=+D%_5G)dWZVKlM@zxlpmj>{MyO19`|kv-jF%aKD= zo4>-|JGqrL{Y+iT*|m8P^WF;GT`*_lE%k5dzs8ydJ(rh3ez0`Dwz@`k3Nf-uZ5>~C z3)@;q>=jzP-ZFRA)=-vT?z$wlX)Vu&4dt|!SA6D|Rt5J~Yw?h|sBPAk^NA@l4sW{! zL4`XhnuWRh+NySMZr$2wx3%nQZN*kG*K^w}dekAe3>nst^A;JF%w1)@vDIwHxYKpY zAv8*%EHy53vbk0fk!0k?WQ}qKSr*~VbLgG4E2zVeT54__H%5R zv%rpJI>o-XJk`d~+M;D?t8zu1`FnQ<4x-PH*NA(^&B2`I4jFyOP0`BZ26@OUrEWL$ z33Y6j7SUJoE|{#2*7DAEv9pH%Q{J;Jw1Kp+D&3gNeTv1u%#?(gK3t(!o68R;Kvz4S zrGCpxun6re9&APbNBIryx#PZue!R3r{a|ftg<2Sv9}0eR)aw$b3b+bsB#~Th^DhDIdUh^0Yukn~lvk_ZDxETk~Mm=0m6@AJ9j&2iv1q@x{Sv&`ZB#s1vnxCA zkhL~cX#1>t_R>a2wc*P0#TL8?wp=6kE$?1j+X9@np+3qZG2=Uh7>dB1b-uTRv9Y7y zR^`$*O1yml_tlIg{!YPs@`h3Fg8&(al$G2ZI&X@0zq7^Wk^670Qu1u%xd1QLd{-(t zH8LGsQZ~Pf#XY*n`+26`Xsk)Lo6eJ;-O;J%XuSpt6zDc{TSk9v zusztQSa~6|aoVov`-8>HBRaynkW;OVj0pRM{fxOc2SYcEy+{j(8l&h(scXDndE-KD zkWl9?oGarxqTHq~sRQGJd3eFtsHnR<7AofXKqs83PlRpB6ov`=BCq638;RJTC}SRD z4)6->c7iR|28g^BvY2FW;rGl0LbtHKgvgWnBm? zUkCfp3!lDF$e$T~`vOdviw{Mq{W$J}3E)BsT?)pU4d9QX98N@EdmH-^_-d$dnhMt` zE<(SYqkAXRVel-qDgEwTWw6`hhqbza4OYuk&z*+q#Y=VEpruXOn2ug%?%0r4x^FMBh)H zA@}lu2Y=t%%6C8ib!wo_L`>uWWS^fUokV)V3{dddwzVE;L z`Ag6KrF;GheE#C*!+$XB(zk!))$l!=5C4~+|KaC{pC5kyIsM44Xd~hO{6GKCzy19E zP1X;eZ-1}PKef$=LBd4q7dHKI=%0F|s>nFEp0>8|xcC%B##pV|EvKL@n@!rp)O-`eA^ ze{C;+{{OLeU;j&c^NT;)r{DYw`{HMRu*WaHv8&I2V^{BgV%PVd+w0qJ?DFw*yTAL& zo&ZFPr_XGE_u8`CcXs*mrCmQhS$TMG$14cl?a@|O@_u*)DZR7J{1)my3 z+{S>u7Xm#1`%x&c56}cey5oUOCj$U}9}<$<_}R!_xQPw9?hllNw%0AJ52s<5e0nf^ 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

af4=yi>yB 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∨Y~(+n4Y_U3 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%0D^=2jh*u)2 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ℜI86gu+IAASiV?1l$%59!757C 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 n6NL6^e^vusL~6v*57jy*#;&iuqgp*2O!!92Z` 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

mg+TzUaZH(tX2)#q^b$~!o7{Y7lvcmw;# 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 `oky`p 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

YMqPcg3$<7`c+n3OqoWpqc6o#X- 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�gzc+OasJYWIAC8pd;T7d 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%0DjQy$HsV%dIfH1^1{mKS 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%0D{Z%b%A6VXnH+so~479Zkd`k4$HqMcyv z-Z|{)1ePq^I{cm`()Hc?kQ!z&^ToXpk386I2cOW3oUZ1P6kM$f@17;pde`kjWstue z#y6@61a8<*H`yNG_trEtlcBz%S*TzVfX3G10CkA?pyYUgj;n?IApAig2}S zjMlq`<J-6?zwRhJR$fIFB>}rLgC+6Ubp$3WXP7`|(vDS9zM$7&)UR&fBkJ+B* zS`CisA2S6(iNJOuo(i!N$G}tqJ5co7&M3)d1ukc68xT64{`?1VRkf(M_lFM=MX=yF za61*y_g+_^w=?K)4tMTuBT&A>i!AvgM0-4|w(y0*uiuG!dRdFqH_wiG2>)W*Tpw|n_bmC|?QiEv9$WKCn;UW*=q z>I&f>na_g~`ME013Av{^yA4VLYSOP;A4a%%WVNFyTMDMeG8>CT7)*xC1(q`jo6j}y z5cZJ@ZmYHG!4(;YUTY)eZ|uqULxxSx(XW5LFY<27iPD8lOP+ldKLn8MonRn}I zBJPK-{AW@0u^{C4z1I~pY9^P3j_COHF;lJI@)BUJw-lKwzS5f_{(xi&~<5FNK`My!&q@#7S)TFfkpF>hr z6`*E%lWpuvPi%GPw8*;#Y(0|nZu%|2u=CdfhwRyUElF+xJ$CfXnn3kDCkj-80`wNV z#hZ5-b)tYFrV^l)1S&{U-65{G(+za5Y#Y^<05f27ex8vfZ&^Yai^Wc-qTgjPWgLEn z`}b5d$mIkOT7!SN9soE{OcVyZq5}M8bhK?ZE-(X20sg>?oCvA`6IAX(h!DFLMM*$h za^Bz<_+jX2V0Qbc8zAjCu@-jp=mc;1nrh#uHjM--!=1bI-ec}K+Oh4wQPQNUG;kHc zIRi^wnN!`G1A&}z^v-fWeo}*xSDS1OA-ez4w875h4+1gkVn^s+8aIL-$<)X?d+ImA zCPDIW<1M-0;B54-#-3xqXCJ`d$<;rvc`kJbF1{ZJi2zJmAh&kTg3M%6f6@610Z%MC zGA}%Y40K4*NJTTL&XzFl%qOwl1TVMcGBSeJEv>P0g+A{CdegT&f&erG%WU4;hHckHBOe>H^ix|z7abZrX?|rcu?_<^at2#nHxYkV!3cvCuj&5`!EhNu)r5tTQ zS21o(n%b!Ci~1}4_^QmA!25Atw(&mp#1K=-8X>BzZmoh!H%?|)_n}IX%q$blD3PXR zCb1T~^&46+`ELf=u|1~LaG)df)z!OO^5{_;0 ze(t@>fR$3F+&otr^H$KqBcGcWDbm~tXzy68q+GHXsC5?-gipQ4lV6^J61%FKKiBHvDe zW^`XrZWPq%kWO^kOO^Qg@^i;vvptJCMb=bY5shJps?e|4W2V!_603GEg8o+U&&f?E zD)E<(x4JiLP+DAtsMB?(FjQB;u za&r%{jBAEJzZGa)aoTr>Ukf6HTWKjSlP?CdZ$0rSc}4}GK&=-f@`GtwYr{lp%DReM zIyVQbb1K{8WZM2kPglDcW2a&b)cWcW(s1e8xvpbvbhETkSy&(mNrp4uLyWoxD&R|* zF|xOb)|pXA#7D)r_X}aBDdVJc@Z|n}ZqGmMvD-QXaN@h*>Z)4Vg62?wXG-kXo8)SFM7!UjkCR8A;`0SK~w3( zX~|Vw`IjE&bes?*ODGduZH29dtD<8e}>}FR`hQ|ui z`1uqFO$*0(ASdj+E;>RAs<=kf(gl1r`5_DW(*z#Nre%mn7|`lP7AH}^^-=K&reJJe z{~N54CS*M0)QEvmP;`-lS3TkjY!+?+mvU?_0@^l#@2Y*tsha(R&?O=M+VGG`$D87V zt+*ZNmq2ii*G$le3E%734yUhy6VrBFInoXxXByil zK7)Rv3tOPfmU}P#aWR(-y?0K-?--9mDS8BSoO@kiSw2IAq>UJMn3fGl;s{dGcqTy~3dX{<&g)^Y?tw z=0JTXG$g&E;>QUxWeN9u|6Q(Gn$SP@_jlH0QQkki)SFs#?~4xH%eVZQL-?k?woB)C z7clk`(6&oCWE84DzWlknb4(ryw9`|O3QHB z0%$e!`o#TVd6TmMt)FGLUeZ!cnzM$R7G2O-43}FYShhZhms~9N(PrbG9Wf)S2$9h8 zP2z;;ML!vy;l#_!pTvcJBrc_Xq?bR6^u-arA0k`fnz&^0DYcu-2Oej};8LsEQkb{7} zbS8b=-y7)BtoB%u=7t`RH-F}^Ht28sz-re-zJK*<`>)T{>PjV+z^(tagsyk`wd^+< z)e+#nv=~Wr7ea2MR?IdfwCMg!p!c0Tw&pz1ZUr&d`goekvy(8=qSnXDQCZJSUPviQ z*3MAuw?_CW$c#{Wj(e7J=wdxLypA=QJM>HFwjlyi3>eYf#{ z%b`xLmoBe;JVru-{^u_K1RcFNr*zYhZ!$22%uG?6`XsgHK1j*opIKFFZng=jDbCb^ zTogh_r$MzceIknMQPUjhTei$a+a|KE_b=Wl;k_aEQZheEP|%Xz#ibI}3)ouH6i0?r z*7wqeM^S;G=@a!%P0f2rpHZ=O4ZX`FX>#&Pgwe_`rTa!Gyob{oow7BFggU}ycu^&B zEq+BhzjIq*p&a7yVQP@~j(I_)dt3RLkOB2n=^_=69s&en#wCFLpH~(8=$@3xi1g4c z%+KJ-v51Sli8H9k(1ooOe?Z_3mrHoAp^9_L20>Xx`TR`lkAN83X?UXs?o%rC(4b1H z_@k<1iB&w#)u`3DF?0X*`fl~-R!6GQi*Ytmo7Axr@neFtA#vApV5sMRU(4$C2zOd} zP66_uFRpwioE@nEu{zF zBmpC!@lGzaaCo_({hWmPlnDzSKlG^8C9E9J-|v{P#y*vf!_Vsi>LIjNYTea?eAe}m zpI@7cn!h7IIWXJXz7$Lp=+EV~{ce%aKJ&j?^*dR!)T#E;W5&8+w;iTjOTHIsj()Z& zCMb<={HnZ-&S{&n3K1cIz0jl=l0ZSEPChB3r{3Q05YWoyX{=;Q%{1?jP)NV^?1LHc zdow-2)?^E~Dz`6G0@*;lJ5dU_-s&@mUu=@J7Vy!Ng2M+b?b0awL3FbSMV)R>i_1Mc ztZ}GOr+`Ae=G?J3Nao$;e`0a)oXX#Fp)UE`#q$Rs?+~K9_D`LHOjN;d^$GTu$_{Cs zttOZa(+xU!dQI&9GGh}MsEq49V3K??BfL%n6Oe2Is<0Fk%3WmXe;@WEenu(h%~A2~ z(UUUX&(-pOE}tB6zbdhzTaf(PxB!UV;Fzlro4bZ^31!KwCDyRUse6Pk%ct~}z!Ja? z4?hCQvxTydlx$R!C;DZ}1uK&-1UNy)1;=;dWgTgbwGqA}WV0Fvx96Ix7p6yBS@6iZ z`5v|1DcQvTUitf%S-WOFwHv1wN|SIDZPGvjJ6wfK=mnbCvc}}b?90p>COTdG$hkV# z@SZ_M1g5|Dz6Aq@n6)G>RO`7K70tum29bOi2*5=7Kj6zW3RRs06fr!}kY;eQx2F6z z7p^irYB0^n{z85as{4nG|5;Q#ug)`0<~faiDE@53T0&zMx4H7>SMxao&?>#63JyLG&AEP$0@g$Ht`f=4eDtOnfeK&2>^5IJ({dx< zQ{Td}8b|F|sk*ov1kezhl3|`4gk9d6XpGly<($};RtDkFUE06u8&W7}$OPvGSTi!(6QDA`)Y?prp=YH0-+gPzaawf1>@l$`z zQdgbM9<8NzK9|V}0xmh#^HXb)KVtPc+?s2wRb{v$ zPmtVKA-0*_+u~dZw(HZ}l8Y1RJ)!jMhFM&FvyFs?rrOyy;(iOThY&KFm$t1;xkdyH z=ub@PN1sGRQ1s5aR}6p5Bot$SrWlcOE&eq;;=^&0W3^&wD{)hc^G^IrTh^JMjn_;o z>cLX|X7q6z<+BH-PgkpDVPo-2!cVnI2c)JPB~ig`C|hA0&X@*;l!Aa!B0n88a-KWg z_;(6eu0UO}UfDr#Qpl?&4Y>IA-N1Y>udC;^L!$#GanWW+Y#`$_o8JJD%)dDCna`S7 zf!!(-)}>su`+C(DQ<|`6+N%UI?so+awy=!DC5AEy<7Mmj2MC(e1 zt=Ju1M_j9AraKk&WU;o2tK`(1xTxB7R0tYL*mU(#Z~EWwvin+jBb{^8l1yhHSw&LUSl1}^QrMpM@sJDw9b!h-9iP?XmKkM6Wel1*(+#Ccn%1W8d z7GC=RU2p=aYDaB^g~6!ntumMUlbe9ER7?}5bh8c~i*elax%}3n=sS9R%LBySYl^NV z#eLJ}WV;t2wk3Q)L1SpnCuC;za@p(Mc3e0=+`1w`)Rs&--P+P#yDc$6=B`0S+=WZ` zQVUQ2KBVqyL~IF-*CzsHcu&3g*{7)~$1~(wcZ*O;UL8w4G_(gdlSke%%Kfy*w zK0>?D;b<2r&enVM?cmGfp__2j(FkoeV{Laf<(6;&`t+1pTn0U3G4^Rh*`vYpLp_Wo zHs_;s;qjNyi%yd_$fnqSJ|s8MXH4(FeBf+PC^F^3M%~y|kT!VC7TL_})C&x9fmvSH zWsi^aA?PG~<6(N+F>F}pQ>?%(m$#~Ym4IGYQP15*81G(~3Nt_Nmt z1UX+wB-K~3#nK#?bSrSaT>z+)G6;3-b{$8k9Fs1d|M|kPR>ypg7Mh**awL%5M-U`E z?=WS>VE&^qj@_0k_DZr>O!O^%Jf>iYl?C%jA#pgvvwUPx@At=4K4}|kmKrHSB4%m(RV-sB;+5@Q~ z)if+q&7im0pl~yp1Z4^BMtEj}iBRCwM45_36+WjT=-!zUq$m1|T4OJ{;gI26VSJC1 z3@etVvJ*P?f}SF;Pob+Y_Ljm^=w3;+;#q1_rmPcYPYa(|D`pTK$ z<}qolZ^FGsv;tZgw>T=wDDJ(NGiMf5PKbX=4d)AtuBCdxODECb&NE++Xo|%VC zlf5%KCOB6YP)Ul?P43)hZtj@c4NrdN<#Rqrs}PMR;ZFJu780vS7^C!>JuO@N{l=3rZeA;ob7*$0KZGb5NS??ouy?i z5T%trz_Ftw8+@DaQ{iDORA|L>>Y#+P(tUaoeu%?gwwxFb zh2733m(c)KMin#1jxSOB;_hDb1`Yft&a521itiwz0`&ak!Ol$TB<-jIG7P+N6Xjs% z>z~;!7v$mgGHS}Ox}#o~@ZxG;;>cvQ{>3MKv+?9is=l#gST6VUmXnv6Yw5mjv)=4) z=<>`vJ0+SRAvKr6jXM|D^$sZl(eA45$h%nSM!xfo+v&T@|DDX=8E4-$(MzpWzOC&< zME^=$NC+`NY)OCjf;?9*)pO)n(o5pmNU~#Y^rR&Dkku5u_3OJqdnKNr$m`&$cO00v zj91udE|CVOe)p9A!cPH1tB zZx|Oa#VnVNX;d~*XQNCwHN_K0E|Ne9x1Q?uX6Yd#0I^itOhQ%lvK%CklTrz--SF!m zO5+DivgglLRssxMkBE{o{E7Q(&3h0zOeBm-*iO@V3ccWcmG?v zPH`?d8ixPEWgQR>1PIrTlB=B*su5)%Gw?>!wi`z&f=&x7Bs#}KJ^EmIlG~w91eDP-iIqRbm^z&V+9nVOL}r@aBoB3}@ho|B@xalJ#V@b9bz?>~1*R_&)P@r(G) zEmlOz0I8bFL2C>}kN*bpO4##m;CAv0qoPx~6MN?p(Hr?niB^s28QeHZ9uXtt>Gu>Z z+Vrv_q*~n=2`-E2?;HZDyY$H*#x+^4KvEV$AfmOx%BL_R%?=3?zs z0zN#Nak=c9WP{k!O=r1PR1()j{1x_ptC(N%v;SHtKiut?MZjacSByRd4IcL_)m-FylO-E^91Gga9Qyk7ug@=iUKAh!*!zPx_Ab#2b6E_` zjN)n;5KWz^DkCg$^;Y7TMT*yDhaP)BdnoR;tw2Ef68lunjkp_;EEg#?SqIn(@_1XV z^X$Fe4^}KXEDBeuELj^Eag6)?G3j)&34R{rIbWp7_xIhDxk?V*t2H471HK^pk~a^% zNaJ_E7z?qxq9Of4cZ=O0f;`@hnH5_RKb5lX=$Lp#Q|3f$``@mZ4BLQGaKP^ju;ENZ zJ@k$2W=nUN4%Uk9B?SBYr7ra>ehXpFg*O8S7HU6{?0*~?ES8F^oZ6Ge^wnU4Jhm0v z*aRAo{5|u2qnh`CZ`vYV6Zk(2-0AIR@998Ih)@uMfN3H{4L9RmKgJ0~^U7iBOHKFoi(zOc*I~(vHni?C7Pk zTX&u9R+KGl{PMgQX;J9bH0|s&Y8gDtNnO~eZI2@R(RMNF(&nGltkNO(*ol7j3ew zU9ca#9l3K6K;4|vJo+P=9R6G762kgyfk;E=$7o+sBxflROUsHn9oPLq;nKmJXgYfq z`1*%DMt$+$`v%Wm|kp9PVWKa2H3>m`ppr`mikrUaQ49=<_lC zp#e>CPk)(>sL4;49oCU5ZIsaAK=fQz8uf1VN)q_ZdtHz49`SlDf3$tGq`d>oINaG*VO)TXqdOxh?tX}hNp zYm0ZFO_IHSN-|O>e19c>Pok#W*)^HfcLd2rq#|r4c09{=FPJ?T>x29!y?u&i$X@vJ zz(Ym@uT=YxY*`w^R|XX$TF3b#v{~&AHCNd{div9QQua2ldrut`eBU(-ikiqdWMHgk z+jY5v49#h&G2BjG-p-ArQ8q0#`1?+6u0*kt=QP0Y)Qw4WG}_Lzqy+_i-uK0dNd(HH zs;+}xBiXpJvm2J~MzcreRz<8~6DfzN=E6cW$24khC;%8H-0w3d*F=i%4Iz4NQu0fdU}G%eY8yBZz%3>cc_M%Dl^oT@E? zka;I>+j8xu{r;bIEjHH~LuKOVw04h?`A|)2r(OmeS2;O7_y~cHXy8fj7>{V8MKiNH zZ3NzSHm@(RIL+9m0u_2lNF=n{=aR=4z$6ir*UkN_qWq`LZ2hjv}oozYy7>bv58;QRM$I{r@S_s)zo~8&KE|uE82&=(rrbi(& zc;_9unq9)gjS#Ww#$~;_n7?Tsk*)k@wJ93$krz21&0b^@&Zk|3^F6Xv&98Cara5Y4 z%efdOV@l}PwcywJ^6r($0f^x=nRqB|d*E}!1X)&#xr=Uv|3sNy zoTONSt2a%qk=^Do!5Of^dYDiFcl(OMB2BFl3MqsNJ$>-@_aqB*#Zvx4 zuQV5@rDuHg-q{#O&i=L4&Kx7_U)*EZ+Oq@LaLi_!SUUxteV-U*Uu zdo(;at@gEDo8I&_H*(VsKTH(fu7om;O!9JKSO=Rf7!da$8>o|0(k-OL>L7Ia*=`v2 zBS><|j>{#StF!e#Q8+0P0H+MWK3d#N7jha^R6@f^3iC#iJI7$7mIkxG6PQ|_B;}K} zLm0NkHIMl^Ece*0PWVOsn9GoxkhyMk$|4i$_fGkPC*0*J;gWr=9yM@!xD z%TF{7L|P|a1x_GFu&A)$WLnD6IzE3&OYHb7 z3X@EXYfO703F*?_bt@p^aoW#nkj;yzL`rhsi+;+~=+I#V*8{!|1lbXfMH&pDo(sG_ zozU|(!dw?!A}@GNIGL~6?8#KQ`2J31Wu_1$4HR^taGwiu~W!r@P^eJFZCbo=kNJq+YKzxav$ZTCp`5D6IDg!&>s@Ofm}hrN^uJ1NYL0 z%IsD4vgPMqL14YD(!!<6Z4NVWIQMfuC9L=mIbukhOrM*#Uc6ZTc0&;4x0I0R0qV!| z#wxyBn<`H6+%;i0gA+M3k5H~BxK<_);d6*nia+_P$F3VGCu^|y`j9sCjSXFY^5GW_ z%r9czqe}A>YSMQ-VzmL6%Slr%0DBVPf?;`BW<=!?VX~U!lZ%di1 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

)qVvFuwV$0)tlA6f3)9 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 n8 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ÐJ)g?c<&4aXS>fi1r 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 z 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 K@#wE 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

  • wDMtqk?z9(?X@Hl_YH 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%0DR&op^BBw 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≪m-H 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%0DGT7Wc+%p4uzl1?wywjtj(R5~Y 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 z

    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�dP9EL_+Os*i9?R<@j{T?rp9-Zb3?CbsYp>E7Kn@>y7PQ2^_(*8@nLW8<)y4yGB*r zlGy$@ubWbF7K`kg9c<{{CUry$sNJFsi_2ik>DoKr6L1^5nK?RL^MwTEUCX0`@ia#l z1V5Y}IJ+ALDTdo||_vQtv9iVEx_^yulm%1;e;u7M=$xo_*{r`qltF3gd^QiqhYM27wQ zc6)KTzV-(mD`8)h2vBVd8Kh;pa>JM#Si*x%B*7w`T}_F%Jg1R2e`^}SAi zY;t>QV}bz;-i_KYHw3zL6;^o<$Za*6jf$EFSuZm)-L~EWxObA#V^FV&e;4_5Za}`t z)1x|y+l*%o_i#@3yulrRF#YS=<)fpRJ3d}ZFlSW291a&7cSbmc`hmf$osL@{NDnW( z0&HC6t)~%dZ1S39AstSkA%>qoUk=#cgN)>k)*9P6L~K5VtXM@Z4C4k`Yi~8pOh%g) zb`xZ#LzIx$Re2jqg2N$j(ZxJU7Hn6kCt))q-q9&&h(Ha$+B)uhxrH1 zWCmIVFY@>V@VUAI!8qJkx7fV`PUPxce^& zktNk?o1K^aX<%ivv&mi)07|nI4Py{u=E2R4w(LtV7nm(99CGiTnY7{)_C&_p)AZr(Vp*)pL+*z*qza}T0X5E@9_s#tkzD{} zf&XNnqVF$d^&);}xjcX{N))cUf(1#Pl%F$*GDMIIbH|WzFT3~xKZB}fiH&HYtyp(U znL#~GR(Sy=*QDc&2gM$=k~{Z|NlpwNjn51%z3)XVI(~o%VPn@HY&mbh=zD(kB*6^t zM+?&^ho0mHY_8CLHNiXy$Hod@yw8mAmtperI{Bwtl^7Dm96M5yC`WALhjSOb)8TWG zRnL-N7DwgTQq{u=>9sqB-jxJ~Y3(%99zO)@5ntckb>>hdrMXY8nHy(D*D_kJb&$U{ z^n+?c@QST(Hwbd+J)^hJ0`BLH#0cQ{{a|w1=)F zYw$Rf%H@{ep-c+L)g|qP1k_k5Wo)<#nYGYSzho0*nBQ>H6Wgd!BUN=-2Dg={QFnyf zT>1Zx5MB?tUi#k?ncogV(+7d#$Ft6>W#%rW|Ojeb$0mzZI`R*Hp(AOKFK5TM+7m(YR`q#<-yo}ZW_dt3TFdpQ2)j-xwqS;|C zr#%2wd9%2(7E-EtF~2l}ZPVF)*jhn7d#yhWqZKEqWO-6LyXy}HUH+r~mLo-LA_i4> zUmi#F*JStFek*dxAAnR|%;`*8zoN?_65?8wV8!edL}(?MzyDJBPjqRySA-%t zU1X*ac?Hn92gXEy2uTM7vAxoGV;+)pga{t=ji8}Iu|Grd@%Xc!));Q|cs^{`)_8lBfvB=01&Nedux!|i zdnPc4;e=iR0Yt}F$JAMq3RxUeNV%Lh!*vEjIug*%#+hgqYBIScv3!lcl;II6&p#|p zzdC1b|H}E4G3e_da5XCN*3}f64+e24u#q`^aB`?7r!9LZ9e3=+T(3d)AnpyZ8|wlW z>DkURFHQ&}UZ0sjt3aV)5%J$f4Tt-Ef;h`w3y*H%;@|MD=*pS;@PQP&)T6a%pxs?5 z%>8CyVV!)`JKL};;8Aqi8%nVOn-A~bJv_s`33lETOE2I3?fb5j-V0_d%(m^U#J1en zVH{-h%xL@%o-Bn?IgJGBoiE@m07p?>zHj-e^5UOPay@n!*A-U2kyLi_+8d%+sn+B`x&~dEg*Ibk;>+~nEWhzq8aGLulFyk5Sy7} zqZ3v8_0vF4Fk#x;_L0lz?&C-DFXvt=FWu!ms)Xr?6eArBcsRiCBzwIzy15@5sj;6? z)y22dyOMQ`aN-^;aZ2C&R<%q_5K*q!^SuLGPZYun_4x#sG~|#es1bV z1h2RezgVW`tSSip_+=g6f%Q%@HpSFbMo5g13@nongtO%mgl~1Vz1Kw#D)8pU$$jEu4NME|5C5(uNGQ8 zp$q*9uR()~8onzmNEZCfTU<+Q(>wi$7hH7wsp^50^3v{!y!lc)ua;&a7<9=C98 zOx$;v@A))sez&m^^DVI2V#(B65q7c?ym=RL+>|=B5My-(Tz-{7_oGBLA&3&)sc?J; z&p!bcE*T+=Q$K?Czk5QSRdNdz2VDWTjloXAXJw0fil>)_U;L!jhF!O{IS-sCD;U7m za7qhizF|H{_-l*T8Eh37*T6c{5x?P<*ow3K*_D#v)M1B&VCbrjX5X%Cw_*0<#pcSs z@Ba{v&BZr3Ib}@&UCkDUkdAUcFP1A)y8V92YfbHJw*-?^S>)T9sd3!r%b2NcHPooi z@^3vlL#HnAjGyhSaP#=Fg=GK^B!(3R2Ak$uDuzcp<_5WsXyirP$h~Q&V5Aj2wEEJ#n7jm8f#Bc}c(@XYjYgWV1%>;AoCOx3hGJ_FTqTMa#=Q)bSDY zTZzDMl0WvU1yF*NHoKWP{<|g(3!XhawQN7V+4{QMhQ*v|7_a#R{mY*3ZUp1<2eCCv zp@H+KM;+O0-TUaR9E19O!gP-G@lDzJL5{RMq395A`2!n~Y@T4zwf7F!&|iT`00k*E z$9c;iS~k8V-##_p-lEOXOeB2J^D!BLHv%&aWP$nYEvN6nSd+1w#^G)!i%uJ5nakZu z$Z5W7|AmRXbw4m^d}WvV{;sU#w5m%Ezok>%@~fhe#kmZ1?@?H9tvCGMrS)~unZ<&o zW+yod#lb7_#v1XLPtk71FJ=sGFYhS{jxnRd?C)9WX6rQi%aK`@;FUQl5>LJSd!RUj zzG@GDhSra&JB|L_FD+%8BoUp7>}95#-Wnf`elCt&xUuMgr)Z_4j?+&dqTT_*0!lU& zv2|tM`GQ@n;!d@uJXs+I;Z*`K+yE-1JMPNjS3v{&g1 z{|L_9F$dqu6LMl<;{4W_c_0Z@G}6gg7h2)4&D45-@QO+zrTN4fxs2#<(2f?m0l_RO8#QD<_G< zhc%O%b~7VdMnANL?&97mhRO(Ce{b`RGq+AaaUpdt{T0~t*~}I;y}BnGgH>xl=~MJv zx0Gv|n#`NMn25GH=1RAnqA>rX*DVes#u))6`~-UL1pCT%mF$eIv4{m3qFfCKTEV6+uLQ(f>G>irN4 zqE@5e&-mz9wf1C`z`ykbj!YxAUsB$n??*l9>r9|@Nt!4*onH?0>#4?j)X}<_nZvvo zA*}y#cXHze7L%(rhzQ7@o;6vD5dF zYUCl*<;2_6=2-2CRo6ziU$|ndRC3!R_K`1+T6f4)FiAL)ZYdTg_E;&>(D%ulH?d_066!=Y$N7r4C%w%h9@1zr{UtyQW9T1b& zBp)UsQ{=?q-mzO`9yEBD1X$HcU0m{E=)vmrPk^``a(BU6XmJ0j4TH4po_19{O3PLr zpVCck43oZ?AIr~~sIc@#CC3NNFn;zOPA?@(btybqv?`DH9>A^Z zEK~zNG?k)=kEc}U?qAkIp){}Hb{-V1Ix_EOo%<*^k{DUa@QGHcb;o7XxMwPw(yScI zBm^=`=ROouf9|G`+_3rvmktRtbB~LRhkAgzL=M7c>a)yeiU9FQ^#rB;xczVI8aJy; z!=W&Wf#3f(!@DG~@<99jxr|sQVv!PQM$PTgrDfoPY1_X-dPpdqFYgAaW&t?9b{_!r zW>^h2zISRLlMZ9pO7RlAmX1WOOnH}0;rlcnAg=y1?f9y*j~5^D7v7$$QjCXpHsTH~gN@8%TnB#A;>pn5LAn1p0rS9-BZ0m%w1LV^jO8iC#MCkM`NT!#8gKWU zn@2bOGD#CmXyZgDGMb6K>{W4RbiX+93n103|K?$c*6K_B>BQYu_Q2?@c4;}H4bTh} zc$hWmi+H||#4HCn(x4~2ZgDk1*3=5qhDT$0p?xnib!dNWK@;&NMBH6lxaNLQ$d{yZ z&73Tee45;SZ>@?7_YC3HxjdA!wjn)4HSc&b#+z4?6QkT+(@Z}YnPlP{mf=m0CKiXk z3t;fDH1&rU63H&p=EFOuAu=^)Z^4mfV|XhN73gE5Jaz_SPrmLy6EoW|s5o@@owwA( z+-mYx=cS6@_gnY+^CTW2I>u=pa@@p+oT`MwJ|xb@tc7jY9_jJ1qlrEq-hSB}Ov3Go z5A7A$7h$*4r!B?SOQ=fC?!1xBHwkPIfm@ zvztabh5TWZU?c6&0Qd00=h?m{ttOe&z7n5YYyUFwe@^>R2)2I@y|$vz;ohW$3(acG zX9?uwL*|wIg@fFSWDm+is7@mpR34N}Q5Gl8^cL!`c#kX*MQo3L|8F4v_B9&Dd>y&YgR1YbAp`Eo6(H zK&s>$i*`kop>lejeUa?j#vBFS_IG-&aa~QBKc9b7N4G0kKA8Pa>Lns)h53bg7qku)>5?**8inhNVhR2ixXIUzmT!+GdUPNdjCVvN;E^7D>uMxBz5 zlFLr*x5<$xRCZy*^te#sp@D8FW!oTpWXOL=Y0bt(&vn#7xW6emK!mK`;h&}Rmsph7 zaDbV?*PuaE97Q#JCePlH8zOHk>4#Mu+Y?kReq_pcffj?TQ^)UJly7wA3dFxJe_QpI z&fQKd!)c4O`vBH=uETZwi+|@5B37fBlK?jQu%pU{8;$ui{iDChtWkYzn8zU{M>OLw z@oym4lN9hI1z~)iJkAJV1<|QRZyp&_9{UFrECuTDeGbxTN;}#cZ}@a6n1gIeW2LJx zG|{j~sn+}^-e~Q;ey#cz7?mwwf&O%|uYv=Lh3E#K{Ml&w`8T=wpy(%}m}RYTt-JiA zJg--2%8|k1Y4Q1?&g#+IKg}~<9n--bGdqoCn)NcWQ#&Wcvwyhz6HKIzuQp2M&ZD5P z_}z^6UCY&LJ`0oNc!_J3oK%M@cZ5HrAl|_@p4@G&hKZ%RarsYqw@YZ?5mj)s zOWalQIjUO}a+Q}FBS&}r8(9^xzUkV}Up+E^i`6JU3*`b6y0@mm#GQW1{>ZlN75U0dCf@wel;9Kc_l)l;YyC26HNUP^V#A1`Bjnk*}G&DG%88KkgO( znUd_L<#n$(Gi02Rc99t0Ybfyw^w=tSF!@P_!)03Au19WW!7#z3WBXT^j7x*8V|#F! ztd}?@Ldv~qsT0w9RlXOf-iGnXi~sv%wQJueXgd9-MBTQi64!S>aT0|o9@x*tMFUNN zTnBH`EhTbCA4hcHbtX4=E-6Yqa{MFjNgZ zW#4O7yA9j&pFn@bo*4@HEvQPwu-d>nof~e69)1yMSIn@?A2xXa@4q*Ll&+7mrpH!$ zg+r%(&&`WaY#-$p)}E|ZWi#Mg8tf5{?FAMf-Pdp*)PO>G)k?PSlBI9w<+R$LqYo&h zMbOe=_id=6`n;k)QD`h)AZRIM{^4@EH5MvHXarAgoVcTm-Hf_>~~_jP5A@31;1xclm^$H>bRC<{))RZ*wF{?r#w-23brZp#*>}Bzh0*M66I?;#pVr?V!Td1V zwqvaLle?(*?IS$`R|7J#8w5Admo!{JPv#@Z6%Oys1vnjCd+VA%;6Lo($e_iL=8J)V zF}u&KHvItKz5k~34oF2><2^0(*^+H+68}rX<_Z$|Yp}lfq9r)x0HzeY(Map=P~JfX zKxNm(K<#(o+V6gh^uPu@5cw=%MWD_X;I|N6Rx5kNYR z%AV3Ig>sM2I4`&y_{pXh{|b|$?3Ka8`6#NZH-sG4JC9i`wR)X1MrVtW@6k66;F-^Z=f z=*UAsY54HoUTrnRga&0(g|bdj`w)HnhUw|M8?u3z%ZHhT`hYoX@z8@n7v9zs2QZLB z1)Mb#sIM9?8t(G^gdyOq=pASrny47iTTRm_z!Z63bzsfop^q3^4%50J-kk08^b=B4UU$|qp z`2XYYHrZ8f$~CJ9E$`!kl#9)7Hn7djR1>G9Q_Jb+{b18~ffzOzPiJWz&XcXof7%3G z02CgI&$^&Yt4hE*h3t}_bsMCGkfYH{sxMCBQ4GO_8rS6ad~l=Orw0}b?wE=dYD^_! zc4>CguLiFjDC83)MjbG4KU+SuyaHva&Id~8uxZ$iLRXVv;vMC#sBUKNCsmZ?B}>Yq z(RokyvyouPZZV>CnF6i7ivk)zF$T=+N7v)+c(B z;~j(p%7WNc_Zy>~Y=9QV=)YPE|^`s-2(<4NE= z5<#L+!{#$v^F34#lv%z?s_z>TB-2P1R^txEn>tG{nbEFBK@==it1Qe(hR;+~W7gVz z!*b~BZ`}H@nr3l8B2BRzelN*qptBhg2*A<*os5&}0{~md^c#V&RTT;C7;zQADQ(MyQ#s<; zBF>_0skPcrpJe2YU=nO^{92pSjnO1~?DLw^dB?(gRz|MjgskMSke;q~qEQa2bL+HH z#S9nE+`Qx*XtUZrNv#S&_vqF)mHQT69q#;IZli?a9!+V%)<4^RvYH1<_ZGFkHzQQ}qDJI~0ju~r9CqGBNTyMtJp)q?3>24j}y zZ_QL$Mo)*!m=)ap-Jp*7<^YnpINGN62Qjs#aY?PvTa*;rdgo6+MpI><$K^i~&J(do zBG7f)#MoF&<1D+B|Lv1365V*aSbfR8;u5FlT2d)1B~5fLEq%bD+Cjm&{olmU{&fSE ztiAL(?`M+wX(s)Q*J8;dy(znV>cyP{YcFV?U;b64xOAcByes79dtqWD5?>v``FQ{bdDPq}1svQyXYPW;U2>)O|zaM6?#Z)dFxUieqM#Mqb|v^bW|QH z4bOSq8Q_O#Gi#mysu#KR{TIgslH{0XAkfbUsoV&?3GE~B`8a=CRbve*(Uw}`^$K8n z=fIHXvXn7dqN!rxEhTbTCuYEPTu~TG-sog@kz!G~@!CK-O2HaT(xsmI{GW?jMwaNq zEC(4r)kOb&O+9pU>}qCx9jm~n|0tKVGh5|rG&$pUI=QPz_I*P&bO*mgmqxo3&1{=J zp+0;{$%+rX{hg`M?wg!Z6-th0wOAKfH0vs{|Cl+@i<)!!3|wKS6=2ekNavr#5*hDx z>qwW>;BthL2ZU^WtL_Wi|NZ$B5cjq%QtGUrCb-?eI97jZz_V+9M7&MXFa`@KYD}wY z%w+?GEp+6k#p=htNPj{(Y?0eh^=T=Czs~7!KAWt6Pe%wMSoy@#aG0~k__+41I$c!1 zsjH|(r6`-*<58`btbR@nQ)6t88d!a0thc+ExP%Bgw(8WGjXpbxhNc6z)vLd6>-BiD zYYg&hCjaH0e)p7IE={|9EaLUayP>VSATF5R%|3m+({bRYq4G@O^o7cM<3G+7;dt-? zX&d?Tjwk>SHj0e@oud^$yhG{h-|>E6k1WewlOk2XWCuePpc|^WxY$eqnnCfR7mc@8 zV>VwNPFegFlipzy=y}o61jxvW5Lx4609O={As~*7D>p;>)w@f&-4buk?rvAHirkc* z@0+>VJ_BSlY7siBCAGp#K6P1){l_xYKMltAdd*H!TuLB4St ziJHDu&~Nf~Q@ee3k_IIP4wH+RiY?a^+vyO0+dORJRV1Yx`j^t3?)sLEL8Bxu@VioHabuuKoBnI|z6|JGb`C6{BF!V)MTbS=KENIUR;;375+89~rLU~D%B@uvC{-+GbX0ZJ0U2#DT*Y~N*hcD_ z-daSdJ4YrBtQduvL(&S@SuF*P-u}(2A0?GdF7FzwTN_k?Y+8)P{e>~6kVrp}EGG{9ex0+EyVSwxBGnJR2Y>h5|2 z7id@xpN&XeaFf&9TYX#1#PxsV!4Q*nDbwV15);Em|2FnL;A0nO(EMSKxnr%VRXR>? z`rhYG@vmntZ-LMHu{f)0L2G`kUWpYEVw+e5)&xWXR8^^M+r=_yNRX4aKxygL`N1-h z8|YS`iV>sac>Aq~MyRz?d(sYmFg8Qlfa!g&>@g_^NsriKtuCE54O?7iIf;DO>CTc* zz8gwHgNbeEjp)D6;G9-YDPEpO>mBDw3ivbehlO7WLIUOq(^47O_8bPxZQKv@pfLOG`q8K9_L*9g<>ydj29jXzn58p=2hVS*zSSaCb?0 zaA!)9wv!U-2DMpA7>g-g3f_|nWeJ`)b0rl3knM$b{EvJ4k^6}YYGeNV;PU@tdf&XN zzHwr62?3zXR<(~dG@F8GCuVe3OZH5Co7mDWI>cr}KxM~wgNTOA3-q3AHTy@>MfNJK(dsk=Jx*G z{=^t`3c)v|o7)zlMO?5DdE0%67I(I6Cv!06vU9C=*?7*DiL<|@-xTRoj zSLPo(*DIomS^bvi>WCyZmil{Pn^FG~PVW(jCY*`X{?6``*k3ZCH-{Uxy0962f~6}; zrZjF%yr}8iqA_JHwO2DGPptk*u{wt}1!>hu7$b5DmuFRNuU8PS?#VQY%qmOVd7Tfn z&?0tY&`niV_w4{qZb;+!?ns`qqP|~iIIoZ^6hhp<#%M%?R@}=!-dus&$@s&(Nmjpd zGv+G8!ZA7N+nlL0lxap+EYnPu#Yuzxa}Mzc(QVT+_4oMWNb)9mU5T@(Q7R%;OEDP) zh498GT{bmy*eYAMwW>K$KI}pC(L*;j!bDb3JlQ6$h7z7MPwL1QSwL0x2brX> zq;GhGb91Q2Oljp7mj4%5XZ_a%AHQol9$J(RF+flRK^V0WBSfX7q+=-Ey-`Xksf2V& zOG(G*?(P%@3>YKEfWhE!Uf*+mIOmVp_TK%u?(5E@d8X7SM(}B0^x?8E4+pzP#6iNE znS-o zv)UthW!_dX2JryOF~R5;MttvsJ5&Fg@W-vkYt*H@w+Ji}sE`}VNmE!PKBmyOBZ#`f z>u4$5l3@JbEZrrR2Wr8sybq8_yJV8xu-1Rg^#3MvGbt?p9jP-&sr_iAe8qx=7uzs< z3OyMsJyP?Jh!{`;uslf0T;T%(LvG3nn(IHp^mkX85qqv?;;Se~MNqx2J;>r>#s z`<|<#xycWjFccJq5$bVv`QrQn1I!0q>#G zGPQq2To=`~J1Knw&sO84FP*i~L2#T)U@SnEn2T$Nf9qg(Wx;!)$oN zM1B9h+7B+g8N1-c5+$4`9%=Z^Q_P?k=y}pg8e&VnVc7ys;JlUC&g6OG`0)jDNz!W0 zu>iipdG=?QPRI?M)W^FuuLk;J4z^R#s(p4CZx4+Buz1kWe)kU}7e$KW_;8nBF(8uW z)4KF}{LpG8Od(R-;PjT`*U=N4{vkJqf;%Cta%cucue}>}er`AEFUwM+ZnR&xMgyGM ztw`~6t|nBWaqX7963OG|F~0BdG0w(v7;922U_pPNs1FtWIRVJx12%sP(~jW7?d1r) zX*&Pa}4i%O?^Vv5Y9J%T+ zzmg@Y_bC8?&CrV_yC2-T62sFM1*~m-><4zP(Ok4NvB!`@t#G{I>4|-fX zr7iu(l`10Bd+<r5a_Svby=?BQ70`^($H%EeN|kg4}1Hra5K{D zT~^eZ?KVl*9f0$>$P1>Zf*Jc}T_^2GCp0L8#rV#0WGL?rr70sqL57)Ped?SycW7NX zDZbW-hrO=ZZ_4Q|5^=8&&<>+M6+oUP27oL?$sfQlbpd++w69BpW0pl%vv$W+1Ygdt zTEwho)uc%=2qQRW6M--EoZk+Kdd0k-pPbEP+NU}*zjZ%=!lr(n{2NgX-ehR>p4lFd zYC}e?IKL#PIUud6cFfSRG^#%MbLLi#a4j9Mdnaj%*=fv&|9a-#sGH_i=vTj;V&y;c z9V_J!bIQQs)uPhE&;jd2)9}4f_wn|L+DXfbTwGcqYpffjc zycD&w9Tjecz9wrH;Fw8w-CMqIFVqQ1)9rMG0ez>amzKFE=DxK0b@U!AdYJImC zaj230C$%x>tpG~W^=Ao?UAr6r5T92y5d655=Nct*nT&&f6V5z(PfL~)tt;^q_MtoV zEB`++cWHO<0nR4g{gv-a!_R!t9gi=EC3%zE`lcyCr)2Whk~1$B^tmD^PYpP!5iQiT zx(RIWG{?Z6+2#YHPd~<7@}$|)Pu#fVC7oJ6C3X91-A<~#J?F72mA*qIqbB({oP7{J z5ablM!t>otxbF$k+!Wc4^3g_|A(IYQ7^Co~^mg`k+peD?e{*>8(NaGETq1j!L1zB_ zq2jUQMug=eWLC6}H1+F>d|lWaE-NDT#+z4dbRAzoHB;&btf^B07m>i2lzr*tCDKAt za3%X))|qblhdT$Y{!h3mfwG+HqK$w#HaGD*0mthX7_pv04ld)c%{$Az-Gy`3`1!!C7uYlFv-7#`Rg{C@T(Rf0L#WJ}?j~2zJ=&r) zYc|fC!0|%E(v$uo@%PI~5!Q!rq`7khgUFfAtzYc0SS>1lVz*TF5+yEI#H20WWD__U z?5;NrR>~k>G}HcdB73EC4GwRE`+hafVq?P+(KHdalbaui22q*Na#$8K5joiH3d)%+ zOWQprU(bI~w7_1Bc0=1RHZ?@rSkqK~WPctp{t2kvJhOTAhQV|7ilmWI^VSI+l|+V} z-F?!J8u=2_dDDh`S!O#9Mt20~Uj6uxSqeLD6PpE|(~M833?A{PtP`e433}ck#5aeY zdj#GdAJ8^FecrV>VQK`NV`4BG|6VS#Ea+Z{W9z=%ygFvWRNx%wPf$}w7$bk@wpM-6 zWD`Vv?%jVN^MLSgSeyO)u7HhZ3=s4z4-kRTByX``mzN#)&$uCMSX55UkgmO=)kr8Y z5sE_;g4FHkW7U}_%}?Yrq612@QLX9O>~A7g@?gXs38jwo%VX1=gf@AK_yHg) z?>az56{xqikvtBe5LWAAl4~uWS1q2rf2ip#)0PfRHE;Xz}5D=tJ+?*I(tvx3x4F+!WQ`5Q}(pg&yRtguc!PS{);E zUTgUa&t%6A!>e!vHvtK!lBMELzG|tx`t2ZRB;BP6!F;YqJ>(L=`~PObA=Ms!q$dkk zKlxU`K7^);6m$7ZWMOG1ITgozg?Gt?jx?wQ|2@T%y;5HL!Hl$x1XE*BuSil# z<+=V7nvL~livmoGX$vj!Q$4)CliGv-SPI2~MRwOH?pcq;egPW_9!L_UV8X~m67dS8 z;%T&>|0^Jl2KSxOjR)pv-8tu|61ya!;v1d~+)K_xDeqp##Mn9UE~nY-jS%1@GA)St zr7#7fGM`>dmdliPzM$qQhioCoo;klR`l(HKkuIme*l#I>SQs$wn$Q#-v{TU0esdlL z5@ID^nQkN%=|AOwkCoEDfgCu5l|K&HpENsb1(+wrZ5NC5*%a5z(@T*gR?z=GkLv&KJ`LTW|gL?q&Rn&$mN-bU);r^k%&ADiVOn zW9maY4}SY?dv~j{LMv2Yn8D@*(14HEYvVlc2;a`?Q{u4?0Z17JQ{!{XIxt%lLUGN1 zPc1T-LqMSChG;8Ytq#+pOzG%id4vr63pW=Hk8(#0mE|fGE4|VWhJ_)uV0&lQRq1$# ztKOXOIQO?1J*@c2S--L37m1;mpsmySu-W(Lc|W-yN(r@)W2)X=)H?FDOyU`gu+!{>ppU*O}K!<+wKEQokzpd#VroT$lMdMU7sJ57Cm0>f_lr~z^C~@?$Q4?ODzwk z*@@W0D-EHpd%1q_*>*`LTIuLn&_JZ0bO5;3w^8e0s_!cJAESsm3!18TJ|NcQ>dD3X zXuNXIhF0}isot^D)QRe4Cl{UUzNcyEB}PkK3aC)OWU0EqTqgc}WWvmKoy$W^_O!f7 zX0iZM%OWEw;V}~V6DePKsn#>fPGt1SD62%J6{Y+flZq!VqOz+Oz&ID8|gs?zWV+xk8|R zEaB8dKdaq~XlqE9FZ{^0=$DF6dcfSxXSxV|#~9g~0RPFm!4;<@6jCdEUw_1`%?6KA zOFI`bEW4Q=!bV~%oN;bf;imPsDq}kphW=N%OQ*L=(y(VO*ZHV9G}QM}R!Zg;Tt9R> zv3bSa6mVI-Ggq;ymdg{5Q$w3MK}$LTaO5Q-t-PZD^rm1lT0|&t-ve(H8;drS z37Gf^O{xgAf%!~fFEt(rfl^{(GBfr!(wxHeQB0#*F2AD_Y6IqyylB+}ZM^-bZO;as zH5N_Num0)v%#6V!-e);g<$T>a+0n1{`P>Mdq-Kw}T=A8eeb+nr6I8f{mjt3}mP}dP z0cA-r2cnD#zL^29)}Pu&_P7Racd_u}u9v@dcu#|yYuJ=w6Sd&;4E6Kx> zsmt)Q#*@W2RchzDVVq-LJA=)S;N>+7=5w*kt97eN98=QWM6S~x^3s` z8}PB-{IyfQ&1u0#ikBr=y%%mCbthSWRSQ2zsNkwS!YU%9YyFyEX?>pN&UQC`Sa2`@^OdOvZ~FFkBZ zGcVJWvSc4pC&7=w9qC%{DCY<^<7xc;=BU%sDkk<(@69IpU^q4-ubP7BBxJ_!FBlii3_K#NdP%N!MM8Xd%jc#4G%)F)cUcZr8$?E9Vb0s6ky zg)P7CVbGdhq-YaZ#>`tQmxkQpwSjjdN!V_qeNprnWRRm_3*P~kbRSqo=U}>F-+hVM zS;H&l$0OE!%%-fLZ!7IwenScFRvImQ6mvFwMSh+VKIoTEi$+p7FdlJ5{VYye&lf;8 zf<1hz{Sml~Aq&!3Q&Hy^$-h3o?JR>{D!XsbVM}!QPCm=HGqB{pPZsUNDsvp){97ej z?)I~xn|UFr?_T20J74;_KRrP>D;heSv;J+{jdHty%Q<(7Y%|~2epJSJtmQr9c2$(5 zPlpWh=zDRObkFL=?Kkp!;msstA-(L6_taBFQKX%TJ~^x{KSk-NlgHqMzqI@4fuwnj zP<3_m@1@oEE}-ILjz7u4z>XK|h4)vFeGj9*8=o<_U9@-KJq@3FhhOqLvucR;@v*Wn zs8axn)ZG1JCeY?|TyM|h+Gu|8ld7<7E@)RXeHmz%ccnHBGmA1I`{doBf_)R+{+!1X z69y4h(?itQ_2z)4^md5t-#_DyN@m;dpfrwoWkXT$uHB0Ne0wGOQ2E^+v8XgNk<{Mk zqa%v*j&EF#c6x1ek?nY1T_^W0Ii%70?PwHF){v$K^I zE&nWuGf%%TaT^lZyE_Yp8PT<0*phS6YtlC5n5?+gfB#STz$cg|Cz|m>{I=^C*-@1G zlqs7F?a{IDHyyP426DZM*LbNR(;9qnZsSrhCK!H(x~r~q#^E-~)GkKDztQ!!C$1NZ zL9AR*5#l=Jg=}APr8sDZ0kj1rSM;+r1{QnDn&xvZPb*ZZE1wU({ZTlV9Q32(%q2Hj zWK$gVRpYGvzh;?q|5q2dk6UxY$7a%X6bdAKs2EXPLm?rkL+kl0g39sTk|C1Y z9IR@v^8OC5yx=&v%*2t*@4&mUFb`_4=}Q+vcfPl>a#|0*y|D7v$J+(xmiPKc!oq{@ zIg^m=Q5)(;JPgMj^MXqkCY%#o=dSO|09W#ojZ-;a*53lfLLOLVxR&ka3K?m+UHF2&mBqQ(AV!pf$y z)PPd|-vNtjF&-Ltb)uWbS)Jy$<}1_0O*SM!zQ5);bg4Fh;ot0-?YuzlvQX?Jo4CBG zuhz&br!1=Vh{MjYtZ_z91Lg_hro)oVx(7!_>?^f?P0%=^_u820Ir^iW=x|eZgWNDs zw1`;xY0%Xboj)$Ab?a6g@Q-zITH#inSoqgIqyN0aRPVD~G?Car$19R)DDh{C2uv8^ zdd1WL!FT^4KeZKc^9#akqj%5Qo3Em%;ZkQ7rLF}|BywDG1YuQ&FpJuON$${jxp(qw z>`E9UdbI3^{rzq`|L@~Kg2WyBxZp3~=Q(TbY5c*`o_iQlsXwys6X)|DQQcSgut(UQ zfDI&i7(V}113*KN4~!=W@?rC=IxEO+{zwxM1}IPnDmRJFJ1Ts?`kSJ-SscS>MRJ6W z)3==^_JK`g9mjVQI2@$I;5?!Sd~d1O31{j0mqJ*c)F$!P0H~{q8!EisvJ*8sL(E)% zlbNrbM-yJ!N9eTe$J=A9qec`Sg?V|ZE9)vWyS!h6<>hH`V>lOWivp;9Sw*ovt%;>5Epo7~wOf(#NOeTI4ws~w*KUfsj#(-bsTt* z1F{*DBF%=<-NsaZ;|Y;Mj?N77e0?SI;r5Bqvq+wjxKYYayt@z`gfN z7pw-;bm9SmgN4}P(|c~6oG7XJ8fLl5*k+QY>`@0jy~wAR3Erx#0|UJ~2;)o3uK7(# zm=SdhhSE_*e`z86yF5_+9Ri^+@Mz+-_aiGz&7e*>GFU0c$AK=!{}Ugp_y;Resb{ZM zt!s!)M7TbiUdWjxN%xIT`W2IX`b@PL`X2ri9i9k&zQF!SN7*bKykq(?cg_F7PaDZ& zTSWdW@;mwmOiw5Bl|chIj2QRP?)8qZL)B3+`m*>xN3k`9Rd4%26T4U2(u;Fuk~&kY z>|LMr?QxOkCm!Hi?ivFr9;|XcxNZ1l>X_H}w}-A2KhA!%o$qeSZYEmmFV=jp_tg}Z z-OZ8Gl9_qrKLawbt&+IA06!Q=Aoo6$_N0g#>kjV-Fgbq*43q#J)d5vMP_} z6jd%Y(X#40k+d@h7{UG$uyyp3v8_M8bzU58L)OUVRH%GP;LOQ7xyTjGQW-pdggZQX z%kG?TRxov0u(MK){gv_Z%9;kNVd(UdttDV;4_8>1=A7!t`FGc3X)4XDo|&^;L$^O~ zbF6N|sY04XA+Pa6j z3@@K{54ieOj=qzuW5xu$yAJQfgHE@jYu7i|^)cxFyM)`xY^_EXKYn?LN@-_^?tqaK{>QTsRqGF( z++#=s-Z^KYRx??o^$%rDE6>|%Wbaz9VTUaSuFx`tCu*yvi4f5gpm}8(Bi_G3*z3aS z_<}R-@&kf;LB#ZBzl%@Hu9w$W=YX}AXVQ?h1n)(Qtm#Blt9iT-n>6}AM=p!U*mW1D z2QZ~!)=i_{qv4#!bax^LO(*fxGTJEj0~_!0hyZTKEZuSEOSj@xTu@oYv=nUW%O!*K zuy%Mus=bNS^zz$pz=yM=GnIvH8RqG}L2en9Q29W?Mxpd$>Q7Ra^=loY@Xc|U7))9i z;NfdV2be#`bT9W9)4g=@$$#Z;)ZIMFKIy*2Ix-|6>DIXEKL}gg=;57rUcaUb)#$F6 zF?=uPaRJ zHBWC~k^SBeoA45md3wDiv(s&MI~E-Gv(M?$k_q&A8%gv9|G; z+`OOR<2<=PE|~BFqPTY5Z4UO34T5!pxm^^Lt-L=LS`hHY&P@|0v3||kpu!pl0YZ)%${Xu|ti4JIPE&6i^9CdIV^3-QfAn`N9bK7?f6+PV zv(%=Fm+SS?7fyHM@v~-4XW6PP({Mt9uK(che8A6#!mQBjjLtQ zWi?&nHAAIJ!~(Ph?@Y$86uE(WuAR0!lRmqc#FJ&>+t^fMe+B2!*l|awJUn`tfIoa# z!5d3qLq-Q>@tVebrbF4sgndUL8F+Q)i%lb(mI#BWj+9c)dD?RH`x-g&c9eC9BPMPw z%J$+drqSc@^Xo zih{U5+0q?eOLn^J3w0~A&btrmV6Ju*B$BR%YXX$j7p7ej*f{ zli@*Q;RFOUlnv~Vck>SPv6cLN;*Po}vr7z$!Ct)mDn?;JyS>6cPUS=9mF>U2z*yhI z+~=zzqcuUWl$a2>G0L$k_$f1F`~JC+m{5^(W0qT~weAXU%zdOq(BHa00U|hKY5tEW zLOK0Wn+D5e!X$l${E>37z}BR&V%y{9`#Xaz8$a&vofuJFHlsdnc#yo}zmMsQYl+xt z`5_$iemLQ7Y6!!kkXcZZx7p(Z3;GTEl2F1Z??G@1n&I+Pz7{VuE7;rO|4pBP(0AX+bfZQ`teHQNhDLYwGgD^ zQM@=Exk{cG$);ZlFyxfal8)WqS5m?dgERyoW^8g?=Jk^nmSJvzCChizWsVf*?>qA zW7|UbmxgEg)7TS<2?v+)?6hLpJ|_SFxI4Ly{W?DW-4BR!D5istgnj?}6>1yE@GOIT zZ+rd=b2rZnr6bi;@d@c)sa~{C=S3b|JqfwPtCC++8-BAlIugev=FQGWzxApq=t*G? zqr&8E&)bdVGjJW%evfK09h*8Tw6a*7^Q0K?GrYJXJeMT9+kMI!^n^t4KWk1i>L$8S0Qz^(mjO)V}AUI{J9n zysq?T=*z+P9pA5b*(opyUb*Lq%udgOp?{0P;TBzykOy6GmkVBsz2D3H3kZS7&J;e3 zR;9iJXj4UN>YjnW{{>E;QffKZs9?bH~9L381WPjFwp;2)d#^CjyIv037{28yixuO)g zqKn*9VmNo;2Iw&o3D_4g{u0(<5z7S_zM3tc}# z-~1kWkRc=4GO22CoZAI0JljwmLNN;p2@PJ{V0;iM@FdfaHISYABJ$)U(rWdhaST-2McwIcnl(xl8hp(;#UzFV!pG3TP47Tmi+X11P^c`F#i|L=B`d_BVC~V4s&&<#AljHWvyUBmwBt&Ha51?3|V$>3^!i&%R#W4be0p zJq#_+Wf6wvd8hw=vuLT?3du^@e`~6^cFC#ug zK<`V|`lw%1hZ?BH3dP&VzC88%JlcM3hgO05`mrfUV(f<7HF&=skiic@M}J*;zJ~vH z5SS-)FerY6Pz$Hp+>Ji|x?=j0ua^iyz;2j+=U%@sM7Z~77ICMon3`4ndRKc~Y0^?` zwQN<0o)3#R6pi6t^DPu^&1@^O`g4#jlkPT$fwJ7)SCBIC@g5#^XEJ?Y&t^!=$+^08A2 zY%0RLa~PeIL1w?YlmdK8+Y%T6P5NY<4MW@NRw7PvX4iiP_aOP!QE2g zIE?-D)rAGc%aN({0PEFvV>7*d4|g(=3aI-p-WbWWu@AA*g>G=9M42?kLOFW}!c|hS z!Wru8R0*3h^p8DA^;omxha2k9je&)>5}!uv3c)!R|Mil!spF*2cKbN|IN9jfV}l=r zgYMsZ?@5<5Qk`XyXt&!2^zhN*woBV1{FBiBsaNeFSL)!0!2Z`EA_t;jSwaBy6GT<(;fIBi!rDwS-VW5>2}oapeORX9WWkY#YV0s*1NI(QwPG>SVufu2s1< zpA!xxuH=D+7fwGDqI5qC+ZDGDMksv3D$0$zNR0c-h5$O{ae@s34O9zz>+RwaCh%KuPFlQu)oy%?TX;!jOLvuZ3$~@u7MEn9dvdy_21LL z*#X+k=Rf?MO(^g`s4xC3lb5x{$3cKZn)KXNO@&xi9hL z^{B4!sm}-$$ZozXb!WnQS&nwgeYco4{i4mt=(1w&cK`P57FTS6*d{FLwQGj%D@p@^bFZ zcXH#Pq_~|cnwdp9yVaR#f0m*{nwTJw^r43?^S{fLTPv7L=1@8o>2`kJ`uoB;bFcl5 z9^t|T>O)S&L-6DaqS;eE2 zJmwkql$tQ&$6=G&OmXS#0bx00+;vr{7h0ZpaRK?7UsiMN?z46}()z zy4k#obI)N3oHI+*jjaqPk=&Kti-ZM@C17EX$+8#OyWRT#BxnfD(ssU~!~= zF^}zQ>QSK$=;H`0iI5Qa|A;8`_u`G{W04Y?k|akO6SnDtlu4!WTKshkTl7C)`HN}O z5FL_Y)$L2Z?gURHmF7PieHiQ>!Ba>1g;PN@L%2zAvZ9eWh3bqvPOUFDbW6Ek2TacR z#xVu*IPT{w#hMVSg8q;9b3P+(@<-|Ky|-pd1X`tLPi3S& zt((azM!Jwbrl2EnQ!t~6leTJsZUl^*$i3bXfXTvD3y>e-6!(@{O9?x?MY>u6FLz6W zTGJm!x4c`S)#Gm8U{0v3N>pvVu9!DP-pji+3@V0g_l~%bUr) zw)*Lr{J8tw1dku5J;O1^TgM``X(iuO3~Rz2?#?`p{q@8ZMPO0yZ00(0HQYE~~ktKUfK#vw30 zY|^J+$MuNAIdbt6mP-CuC;pOUhSlk0K^E<&(BzQ4$$~EsZ;iMvp1WQ9@7L;IfoV$+ zk_8)xV`CZ9=fB+>dU~lwfzx8|e!$?{jqpiHf0I8oa^$RS(UBSH-kmw10$Sv2;7MD2 z%7=5PenyDrn`EM^%tVk>p;p?D^F@TJ$w4Kr98Wl{%p$5Z$ zx?sA0S@K^`jRf?|sOw^*x2IO!DcNA{_aEFNRlzIrS0lQJ&xLqg$)^qa*Dx#Slt=xa zt@O;;{$LLEEoq=`WNPG$>Og?LFV`OpSlRf<1kcAL=f&)-Z{X&mG)RZDwYt;wAN*wG z9Ki8ch16lIjXPA^OUhn}(|)l<@J`m}JLP&)GPI|)iHaAOUJG`Rv3HKd<8(#$l1*aV zzAj&%m|R{essDku`f8n*((>(Pr!OJR67VG_7bRV%`iXPi@bp%s$Axy`l59Yj5ENgs zkF2n(wit769^zg+SsBRr^^!Rw>t_5ADU{(HxOZ|blwo$OYG5pMn}e95GimdiSelZ> zT%Tn@F{;>#J6HEjPClHgwbkzI23#TAx_60FDqS+eZDQ!)tvBPDZrp2T9@kiK>6~{a zZ2I^boR-%GhTDOq&#wdhZ*qI~nNi$XwaWq8zCKg^ne2UhI8y%uGY_dL?srzE5<=Z+ zyhEi-Y1PHgTp9AU4%Wh;2Eu z#0Bh*^M*awb($D+tRVfH(J~Q6W7R@csNcK9WYpnQEr^YVf4aJ*cCBg8Wc{^qsN*;+ zsE3W)ylHg2ZD#?U+-x+nZccKsM&|w3J3R>rIo{NiM|4YSVFv-vdkSllYT(_pRJ|Sw zY2wW)WtGt@c7;E!5AfPL?8aEj_9QIe=?;9frmFq(=PRMq>@K1V=PCp~59pkUjBFEY z%h=U$xV{bn-I&V+6ppO=!L;1E^u%{hY+~cvYBuXHr?U21+ia13Ph)p?uK$Qap{@Qo zPF99_h1L!i3pvSgJ&h05^?O%!(`M)#t2VDMXbh^J2ehTPY9_hojkgst_ma4o?ux?n zj=0>^!&G`Vw=ts5y-|N>OWC2gg0nA@h=b#RO#_(nh?r#VDZbiJzZV3J_8ML@+WEVI zm-4=qD2#G9=BORu5;I=RBlCCi>2n-QJ>p8ONG@#QR}6f*>$j&i7R~sUJ27cE5zFTC zM!7W>Z~A^5aO-TjDr?%%N0!v1e0q?L%e;gRaC9`kcp0nflxgU?eycmPQ`~j-rOSah zPpRN45ir)+F0Ote!)9&R7dvB&f}Y-EPuaeXK}r7V@}dK!>gCX8MEGW?3?qhZhx@3U z-8A&=@~LL5B`;j$)70l5{}n!$sF#xhW~ZHvt+n5KC#;g0k@B2TFqsa;TAvbK#7s@H z>TbEeoO99Q+Oa$_kev2;IDfdAYWw4+PlAXoeQVAT(Z-~Gw)5YYZ` zB=KVU3y2cLfmM=u{YBO=AdDq1d@-boWL3ELfG4=ho2)nW_wWixGoFXeEqu7qWE=Cc z;e?QLDOlKYR8R_b7Wu)Jd6*QG8nyYKhGK8BxlvZPx8=@V;QOy}m4ccYs|FVC8_z5^ z54!L^dW=*3Q278ym>1n%LL)rO>60He%-PBw1djS-zkbl+QqTcBW3&IF#mQSrx=PcI zsTE6pK{$1~0=%##iQ)dLzxg`bbSLubuY7(PiWW0OUAByiKQ{;a7g!hlpCwNlRbk)C z4{aKOug@UMOT7+4gu?^%YSHu_A6*~8QPOXAkFIG9i zuE@J|APqLmqf!cC^yQyu_0ysfJg&a4CsCdRxJg(@98v@@_T5o4nHd_fZhNEq0KGdo(!alVIr^W(`!?%# z>~`n>3BA4l_a=^>y8_~~reIBdOT=L)+DUDtK;s0UV;_psY@PxOYWJVV%s6XAjAoaG zK``#OeT%_|(kQ#?f34!0r{_tFYFP)j(YMXGT}60pDiq6dp_sBF$IVU?0L#8E0M+8t z0enq+pw}guYP6@DYN72^M}Fe_)B5|j!)Y#e+_R$hh(=S}yXoRk915asGH4gTRjiBf zr|_IBK6RkFU@C0fKO<%;|>=?>nhjkpQ z-6E=l%X7NTeOVn;Dy-@lIv=?-U*RUy&E^Y15qOn zd68H=5a2tIkcsawEBI`q@rA>jqj-(w8H=TK)^0rE!&)%sv1Tw?8;uc^;2>;6Mv>d^?XGluB<-CJnh~=p5Hd4f7(o;c zJ`HPE^v(+lGs#+ZJ(%Oj?Leah5!st8ME8AzZ47s&5 z{!8keIJYbk%)q%0FnqD&^P{Y8Lt!sbiW)FMl=xm0@^mBj#I#7gT{1*-G?@#mX&d~l zM5D4VF0(iZ3$7dRQIsAR6&K!{FoRefmIY)I zU~D_1!Bmnvq*#$J5nA45$#$&rsXQgYe&y-sMoB^wb8pL7EJwVj`Yjkgr`9FK`M+so zuBbLus*4|J_|HOTe47Nu8LRQ%!#~70DUFANAgx%F?s)^pfrj_Y)3timbvnk1iL^Vr zBG!MV-}05E3kY$je{bUtjKPmquG9hgnb;+T-fYExkI8v&Mv6dM&zJO+oTRes%tLFw z{#KygtnD-z@Sa9UEbMlqamORSLakG$xQ9CGq<*9%QCX$&8_!dj$8y#0k{JyVJx%jP z$iGTCuw65tYgRzo=;o8obK2to6n!O(o zUWJps)VwmkR$d#voJmDLcmBe^7Ap>#keo}p`q$I)_K_j9!&=RtUo!?!Q>9Y}va1`b zo&QslYFhhTXxg(}-H&e{`~dnHF3WF*u1R;U&CC$XbnoMo8+FahSiO+GQV?n zYO(D-U*boHT*{ZB7*aHJUtFOuy|5#-$ozO~X$Fh|gUE}PY}m3*e|b7Lx;B0e1aD*1MRzk zmm4KBIHk=ch305x?l!x>Cq#mQ+S|R~?7W3!g8i<}?cz5NLbr+QTuwgsr-|=G@`4i8 zfYMppt1$Ts-S{5$W(4E;DgGwqWVHtPI37IX;O};;6xpZ$0Q*A1U)%4pqzjw&68o^> zQP*ag>D`q3>UD7sk`4&M$FH^S;-ItpC^~=N>)fGV=%#?Hg8ivG4GOlT@Vw2#=d$e) z4#Z#}CRA%`L^mVRH-fo^jK0!?1fO5`90!n9YvQKbtZY_eb z$_pX^mm`@1{7t518S(#$E)JI2ehDzRChGq?DY?e{SwLv1tOWyyZN~Oorb15in!O#6 zs(qJA<2-eF(&ff(dyCa3d2{k-+^eA z-VTca=fbjFgzhg=Yy?pH{`6LjKA&}z1ZK{zl*iGP`8VCdk{6N>n)8zo`)r+C&p&9n z0uQHC4eAKoGcu6gW&?9i{w=g<;xtc%4q-kx#FX>#g>ElA5Z|IVR97%HMuHs<5f|l~ zC<6^zPUYs=1otKQo?mWTqxZiNzCoEg0cCegRyhU$am4@oy~`))d^eN?AqJFHMYG~% zR?O{dV0fSQ)q_yiUM%XznO^9=p<0_}D_o*w!&S3Y(ynb;m;EtcZwY{+S`f`Y+D0 z5k2DTE7A*izt1)6CMdVRU_{10Ne=^4-<=cnPvygW_N(qxt84jOKHOs|W^=0#b4;Ck zaRj}|jRJQL6XC4))q6nh5wE>JKFp%rG%4VpmW8D5E*&y(jBz`xB^hzuHf7g+y=M%1 zzN4{@M!rY-6fY+E21_2ecfjH`bJB7r#=Rpdi^f|)j%r0F;)qtn1f3Suy_zJt9%p>izztk zz})K12zw=*D{q7`?Q_EHEX|o?Gxflw4!P)@50l;=ytV|>@yu+Y4zk&6*BcEr@ZAi& zP=F00t{NCD?XT4Z?`2?AZ=CdzIR&pdS#~fVs{n&c!5kwms53v;W&_QPiKw>;)~gNS z2U%BX4i^IxrO4h%C_4jlj_<&Tlp5&> zr~piCEIP_!I2zb_00y#`Fxq9b83|=hMvn&qd>VrHyUm{-& zzV@M<0eor*HwnO-12{$Oe0KqO6RbEMpkw$-w@d$jn1RzBb`{Lc_qA!LcsQ>@7X?lv z4R*e>H$FJc8#2uhECt54SM_A_K%WHYeX5>i{YV=fP8eS04VD1j)VG)M2pk=jx`Sgq zz#$v(rv7lEd$@#iQgpZmw6_cIt@-ehb2jkZG#FK(q-tRDNmQ>kDTc$I2FTR}2M>^| z4z~*L(8m~=eAtV2ey&3Q{%4;#+;Mk;u6>|qj=lBZ2@$&Hw|D^F?Sa7~-3@A$hj1sU$6i7|NH;_YxCjP_3Qd|{knc#|2wY#X&!5R>Zso6 zs@C-;L{0sAS07rR0FZ-fA-vuhR>DtM$35ZoB_8d2`rNt=-W>ZK&pF z{_gX4`)5cVC#Sv-KTv*K4*Sz`c&1)U4eDukylF9@&JXJT8})y*Tc*7Q>iYB{(nl|- zJBLD*)8RMj4XQj4t!_=dUR#}yBh~7ZS&P*B_)#A})vHa5{%_t$;r?M;jgE5}(7tM+ zp34cIodaStsyr_~w(L#eurv0g@CFGW&T%O3Yl@r$z#!$mg>L#>Z9rR~PkpY>U9~!Q zT+SZ=`0yqIvUOSmJ=FVh_@|aPEBt-Oxc~z6$bGc=_j;tDPhCUg4DQfv1HJUBB;QTS zt^3ru7yh}w_0fykf$qHNGw|t-7HtH?1%XDbhQdw&_-*h%fT`jBe|Cc%c4% zPj}5gaifoHp*~Z0(;<}Fu|9X5oEiPK(T6t&!nQtA&!|?as^H`mu|? z9ZIVasPk`S<#F&p`|lmzsc+Zao@#Mh!=4j(chzl;)F1Vf1nAGF{`u~+LoD?HlPQ1> zJ4pfV;m|f?UGN*_r^7q`ALyPoI;QBS;aH!1S|vp%BZsW=0y{vkgDp^g4ZZYebF+`0 zovY$*42bo!5#Y01ZFE?t5kR#)=%V{T1ME5QMhJa9?4}TpR84z^B-kLJy8)0*vDp#r zGN5fb9MSNh%GJ;r_Nx=<57ZZVk-7JQc4LG6p+W%bkUsbXpml|0GAI>9 z*k{tLPU4TfXb+Gc-k~qXNDXq~dxLx-{)S}K50wSt)*f-ZnMuEJOKy&*yShhePy z7_d(H^`xydO)8h;9wZ_fhm=39Ha`*wT8jRB!Y8fdpE7Rf7bl!fml^`Vog94R_Rx-6 zTvrb{`hfZ&-N22~nkQCL;(<%zZ=UCLHK|l<_$lsud}LP(Onho3Ok2x~)E>+j%-dh*{V5^&r>I z%TR4XEEIa<0#aQon_Sx}e33&>W&Cae*R_lIoOjI>*=Vm5Sm$G8rO$`RGR%BZZch74 z$mJN_%oI7EaWAdBM$&Yx53^7o#`a{OpK_o0qs{4%XV5oS?(hX;`psbj82cGzk0$GC zTm^QIhiH3IKcgR_A${tTh2;X>JLD90m+lo~3-xTRN$M~R5K!zb%?}#Tr#>|}hQR#{ zVNgI4+gd<83+ymw{Irt|dRk!}t{=9@)E zpRAOW_OMv0OlQ?1em2V>+~|w46UhEN3RNtZ*wd`K?A0*K7ZARQhWS*D!v906i(DTI z=S`SZo+e|y>&)mwNc#dCYAiM?ikY03AKk#@7=1+Ef1w;v~4{< zDsecm7Zn})4WQ0>V+=Hou6Z$8`^nO_cYhor)-gNIX-Eg z`2Lg1<+{p!a9D0N-BIr9P;F|=7Z-k8BHIc1kD5*|N;f-f^+_vxAgor}Bv0IP(|Y=- z`OzLM2io_dl}`$7*_d&aIr=VJ#;~hD?|Ha`+$@ZZB0huq9y|`dNdm7Ze@#iFU6XmglPQ_^Nxyhu5y)#CJ|+3H25Lol6gT0T+l>7wK7YZcaK zb9&V7__YcPbn#*?&+qm>l-&N-;fmfLzv_16doP+l|IqFHMYqFOJwCqZ^yKTip0Dp( zUjL=}^Pkn`!IkfBPj9+qv?GHaRzg^MmyRO`S-g^<*9t_y!@r+$L zT-J+n^tG5uQ|`d#x2{dd?`A+gqHFUmXq z{}Vd4m(Ksu23@cB-&E2sk6xJHQV;#RUVo_)E8o^9#n{jE@XmMJDhI;u@TSxoEZE54 z`c3J{`A--(tCMcqwKm*0Jz?+LOO<5Wbl{x$mHaO>RpXwhh&q}KW z;UhNwsEJSdudoGgLe5WG&dyr#K3LCRs`0QnVmsHF=CtSHadTpv-ENv5ksJHo?;oph zQuD1nVtmTqULs$yFUIT@onF6dw)je0H@r`<#mzwnba+|NZ~O1sZRwN!7rvwKPJi+) zaF`?dmp&NZo|Hd5>uE>7U(h}FcDz2)=Py-q^2?JqX&ese6?^?tC;EQ5f6#2i%+E2z3Tb@oAW)2ysMg$+PB@7FjG@Cn4M#0s)}yW4|bW) zU(qG9(Qi(RD>9+m^@a9cbe%sVo9V$k9C+95owqz7ywl^!oOYw@;k%NfZ6cy)^MK-A zw@rqEcW$_(U!wo@#>UEn7B==-lIRul{E+*mM=$|$Fb;%EFdyT^n6aq9HpQB;e|XSx z2p(b#UeRA%#=PeEs$@A-K3QYG9ri`u8FQR@s4?CShjV^AtHqd@FlO~eYsN?B6Pt4; zo9|v6%L(J+oZlEn$BdCh#{6NPerp9I#%1Qp;e4pA%ecyYDRNY1cA#Lz7&v0Cq~Ft@ z{DOIo`PEM@8rWtq&pVc{$h;vK|Ffh}7pySiUdvSyrp#UD?U^3sGaq)rd*PUiHb%24 zvW(TGtp)R?ox=CQPCe%M+_8{}7EWnadH}`XlN#gv5KQ63v@N&LnyLCJ^>R-Try9j; zh2ShZr5_E4>YIlmI5cFQ&X}Jwa7!3Z!O*$-V>kix$0P^4%q?$MOq-dru!H4?iohWa z@O~EB;g=zE`+&JAkv|2C^g=~;Fo=6Ha9{{N@R|Fwk>Nh(9PpYOgJs7frG~}8JC5%w z>VYHDrMk#p>7W-6-Giw*Blt*OR}Ox(WZ0IpxH|wx2XIrcvgIyI;0rNWC>tT3(jT2QYk_=PYMg+wxt&B_s2s zh(GeT9ae(tz;_yO9koTKgad2=CS5IlddIq{@5%% z4H~w%{qUelqo!WdasvPs?)bjek;~_Yy31s5IR^fsO24c7_V?%iTHzj^@3jG1J<97= z)cMfSL$9h2)jL_P2=l0DJa}qWd{yeUvCz|Z^Fwe|+X_4UW*ZefN43UJs?C}ITyIee5(SuZ8T5GFL;r!aakQ9xC0^Q^Bp+BJ4vM zW~ObP4YVP=_Y_tEVUYT8G4HLR~%Iv zA5}x{cI6&$Xl>`d8a4r-Id^TjwWj)gJK>+ISqF?)keT0I+uUh+YS((|HUW#Y*J<6U z#=Um(qviIoucNz`*$90B)NGTcS$#mxs(fVccl)$A`tD5us4Ei}*COuisRtOVv;$SK zMaR59Iw`VZw}|$10fT@xr_32>O^59Q&kDl$ju7y=f0h_&8 zRY0a=r}}-`4xoHMAH5#!4e5VAfVLZ|(YBln^fAbW<3@S_u=X6M1eD$0P(J~XJAh}` zX_hwb`W4kvJUZ9P&^o^g?=ois_TpZ_>Qvv6!KxGs2~ij@29i65Wlzz5sPAZ=G75FSRoO0zlF{q zL0#&0Ar6pEA3_jxvB4l#4+8pEh>7QRAVZ_lWxR9&pIY7rY#2wh$(3WVYdZslv?nTa zBv2+gvHTNWVEGq9^Z=2C_}Qo1g`gs10I`c5^T-GxEty>UhL1d*&|LTPa$~_ZVFuWG zNV~$+Q)>BluJPuE4GE>6#W93Fv^)}!wxo}JEeSMs^j(GS3KB{GhPY?wz&4Kh zb~=8LLzn{%2SYU>qLx6pV~gs;fxH9)4%xmNrjS40_dy29wbS|qdK~fWT#eyMP6~O1 zl)2c;Hb%_Dp=BrYq9O95bL6Pb16jU`Ae_;6YysO&`di+PZFw@yH(4NWE<}1bNfdP^ z^o6P1a-+pU8<=NFqofHr$Ue{2ic|@8+*8+tHVl0`wH7PxqrV~VbplBp+CqO$ zyT%Z9`uU9aYPKqW@0olBnqLGJ00CQT7F?CSXY|n2f5i)xh0+*+G){o znS3)CEU0HuZU8uwUFlIUO)TujTEp2y3!ckog(ky;%o8MAS`z7*oPzexS7qp>gfjEB zg|Yd*=}=5B+Rm0r=8JM+emvbOE4GR^n=(wuf;xsP`ZE1sFypt)zKlC>i>}3zIv3o# zwYb|mHEfZ~5;w2+S}m{@bxexqazSsFAIo_5)8#_lwS|y*Q#{`(n=Uo6#ib2>oqDJ9 zwdPZc15e*w9yBl3*n?-6Gp$E!Y`;=5xoKkcPuJy1^Ztl7jW)b1C(YMuC5x$w!}lB! zv+1K|cIw%PjQL+)j;Oby)1Rp5EkdH!8L(ZHlYH!(7E`Q-($=w#c(y zX}Nkv-jjwKJKepNXC4mRV<+b=sj;1?F6?CW+~Tf3Yn9uA@v%%c?ViqBSssk@LX+K- z7Mmv>R~F967TeF7oX_b05uLthw?($&lcwiq?XR}z`>OfnRqNAdUC)nNzP@Su_^93C zMX%R4Ew*o(S{(i7FPgpnq4oY}E#E$C_4HN8CrbqURomxx?ax1J_2r9hZ#V52&*|-QzF1JpN6`^Cz8Oe$mbr znV(;@cz#vz=}m{zC+_*8DY9<(erKKrk1u87;MJCXaN1~jz9J9pw@sF#g}<^z=#56p zFPfMh>65GDqo(K}x9~ZOlZu^rgIInB%l~0vl&Ew4nRn(%bNbeNx6o|K?d6Jo{z!Ya7V_z&#hAX%`_a5UmEp+7 z$TeNr=FgdT>@)AtliVfmBKn^2t}f^3YJZa@j-DM(%6X3`lr@>oHQ{|v){JBHlktvz z!T2fPLGA+9k|c(Da_}L zvokGL=-(30W6#9Axsb~i^DSguKHM{I74jJGbDkXy!7}+C8Nf~Rgt3D0+mcOBN9DLz zM7FW8RCUR?$sADld+Mir=6K5$(P8Wxr?w$JWsWQqGQN(Ovr_OwkkE&i7d(^SUw_{W zPnb*71#=+3kC{sX`VyGR@m-;c}r7EHkW zUYkzAIbbJn+K~Aq1}BWcJ-&s08i19+V1pTR2z8B^S3R!OLSTYB0UIESuz@ZiJV>f~axJjAUVG0&*M~l*fJ&e&s0$-slI|NmRy0kX9 zcIab3TSKs+%d;7>4%J78X_r0>=gZ)XmS{SKM1E(1I23q)VENa~Bi92H+d&iBX$QduaFYbQJaAK<#fH_m40Aj1;J68O zrCoW(*OEXDI9ShzQ}A~i?&QJMnzk8Z-VSi2M(ToxkrR&F>Cz{BcsE?hyxmigcz|3N5^Eoc`0bm4Cec_y7LiKQ=b^jZC)7`3WjnWWWEQS*ak(p;n4zkdHP`ChX4!J6c$gk+$!T^2j^PQcV|492>H7g(0YWaHT-XmjO=7G`X?^Y#J-RY>^yqCqM zbZjBM)hqL7Sc2?!vtNcqvb+=)0;xm$>VThK<4(Q1zkW|r-S$f_hK^^OEZoceb<17Q z4Uoka`J3{bwwm=+UFxk{9oXdF1(fpHe&}h?wT0}8d~3UlJm!f}qdxOc=@|&*^WO3n zm^VPEfcqYhvDM9VUm27eK;5pd20D7+_YT0TUAyC1+myhD?gs^yKLYSpp}jqxaodhQ zw!45jJ5f>r*jh*`7l2pO{fCs_`f_MT1%2Kjd%NCNweG5c%^S8^QUgr8&GNLr+p4Ki z!{%PEOpg6P+dJsdp)HmWeBcdu&XdzXN9f&i2Iz<1(N(SQac_&~0Qm+;2R(%y1H2Wr zAqbs%6}_0p0k)4UZ^k`6_W_c-W2GLt z1FY8posC)w5Jqo(+74*%nD>D#fCHd|z*oJ4j+-szb<3@Q{%w=R2VB=68vGWaSI0sw z1(ql|(5Q=Sehz>K7~82D4A#nop>J3(Jwhdvq&R86J|0oxWMwjbGPDr}iGR0W8KId$>uhbU3fZ^<PhgpsNH?5fqnTQekpaXb%ppiwR)z-3AXj}zT1-8aAvQ{A8~X1JEzw;jm$E_+ zvKoxkf}G}%*&enrV)c+ixFd)u@{P?Cgz|$S#3+L-Ksx;xLNTQeyB3Rfqzpn<8A6n5 zg_0fwhf476NJ>mH9@7kpHpSGornrr#Pd(dNV##6)`r4 z5Vz1#HbH;3;gl8SVt*9cBJ&LLjowElBV;lhq34x`v~z5m8Ib>E#d}O&84h#oL>p~$ zAemz?%bj3-VhIr*tL063&O$gW%0$jt;c7#F8IA{v(f?qyl!a5U+zi!ep`pK}9SeDu z0Mt%EqEBzKl7(S1-PwuN@q)Uhl$&nK5DkTGEZJ#O%NLTaDPuwTmMD9q#KI==X`!KP zu|EnniY7Bn>0{}1p{#`M{t`q1PRX?QI2n+ ztZd<%XNvI#`FYN~E7lvui;0HIi>Bj+mZOn&7RqR{L)W`96iBkNldx;W5&!2K%_%3E zY&Eo#q~oP#)3wrq`xh(fJe8qGY-7X1iX1iz&5E-oxt-EpYcaKuBk!^Vx{J+`GLGeD zK{BPz&AePtop4{im{IOodGVyh9K9C{1(t+&vDb3A)_8T+bh#<(99dG{MWKSSb8Il3 z^JyWEc17t$F+9bPm)9~5wzj2oU^?Xc1Ivx?Q5cKcVIZ1H#XuBCYsP{!%_R)#*Bp5Amgz9@Zs z(f)Shw--Gf{!R1uU$r@Z)%xj4FSk#6K7G^X{j*NbpY{6qyDl%Udb?PX>R+^bw7d|X zwf^!=k1xOI@%*k8_wAm)YV-80`L{2+z5cBI>+gEJeAD*)S+%{N#I*J*$3iEoJZ8RI9|M6Kn#yHE@lMk<2 zO!n9bJxqC*=W|W@Zc;pA3&y@Fc3{jJVV9h1JZJowfq@uH7SpYg*@F9*@_5&?h`wp} z*v3Y|_+;Vp7=tqNj6{wycfyi;EY#kJF?RyiVqWTx&AVc&JZ4_C4PWzqndX{I269Fb z<8h%y$areWsu>&eGAT6}g89=z5<18oF{WCmqtHAF%(Kq0S7sh<)EOfW*rBn2yXDM1 z!&Ln_^Jg&UTIyk8o~1U|Fz=b?#T4w9kHDz8T;@*81Ljlq+^2scujMbOjF|6-78(>> z$350>tKbJeEtDpV+0pmS;kIoeaLt*Mdz3M?kQ`2E7xI9AG7A9(K4>vdk6h-50oY+ODskr$EEt8HUU~4R0w$~U3vhj)KKFM`Mlfx! z^e&#u zPtl-X@`i?Ceehn_4$iah?$84#elQPk+axfL2M0_R!ja$~6>zENI0{<}^}%Wb zI6w_9;oD(8cti~@-GJBSPEl@nxSd1}oW*h%=5Uz?vJBh+?uAY7_}`tt5#UqQ*FyIl zI9%w3+~dLpE$K9EMBcj)Ia+oo2>IZbmQ$~J$9iPMO2OLjP1MOwzTg8r7bv)dx9EK5c=${*x@gTL)?Mj6QEPar)Bq3E=~O&*>J`;(A-x`|(&9IB z6|H|%v(l1V_mH!7QaT0VNVyc_)9Y_?08I!+6jEfKRNzYbJu zcF~n>4)o=I=&EMnpq!>W3nkTWsO#9~K)u|6=y(nER#UU?Xi$yHJRKc-w%Sq9{7~A@ zLJqmj4gmRH_jdZ;w`AIF^=&f;aAqC`E%&}$5HE8ql(w(v1M*lB=NkQ>>msY=f$;9> z8|dIC+mHf~0bK9BnlKU$?_^-8;yDt2?(*h7s!28|VeF->}e5Rs97(*t66B zp(SUwjhGI=)e@UiX4AY3k`j>idbZ(Iqx?{9TYz_}@>+@7F?F;pmVXA2uj(Vnk^ax7PY=PQ3m^Z@X;d=MQ7Ry*Kb zOz4}CozzZXg~%77!=5d+djNR{@I1yIkd~14K@2+(f=YJ?K}+>l2u3*IZ~9j)^2*a# zo&(TE7lWt+(Fqi{A%qW^nh?1PMA3~P7SuJcTp^IaK0v+=39gyTG+;lpMB(;cL2Skz zqyi$6cFkKNf+#?CAXo$Q3Q5s9@)-H?AQ826EDIs#TV4+cl98Dxg&<+iF666|RUrkC z6WSQ~ksOF!YTgxnBUzRM0b*6(DJ=gVp$7;?TtH+75KABZSXe4#8QbPhK|5CRV){Fz zv`4!vr-3`L1bl(AY@=Yf!d^TB(Xh}GWmHc5`=E~?`lhESna*uEMCR#b~A?=2= z4szQNK`&WfVY*fVIgFD60z{v)a^eZ31OnC06pTFDie85iWD+u;XNtm9&0s>`DP&2A zQ~H60XlhZ02f+?4i6Dfz1p$t*l>^Z;uY)0W$swHaCqk#7N*d*^$ zZl)1rH;PvZvs6P!_#m;9fatmG5>HzycOl-3XLT_<{ota{Yf1WSC z=M=$K*?20?P9BbU7shjCQ`6I2PCnz^*kLDIWEpD`T1bbi%+=tJV&&9n8wsw31E9SL zgf^V;tSt)J#zH>VWSaB+M)MT%ZeA1Alg{W<)2WiIP%uL#^zDxsSLiQgf@ZE^5h+HO zmOOi6F`Snc_nSVq;D2=EOe|y)ZJJFqEkit@J3FuqOJ$+)gR<^d} z&5z2L3$2GY4Y&NZxM)Z_iuth&8)XTuw-zIPH7ncWY$uv5xK>!YT&L9=`-H(@FZ z{AZO6Lb`j;<_+1#QS@w0(i?HhU%WXWDqvXhwZY z+eBEEi^bE0d1&z5I#V&)YqY*-Z3~gBZ5dK!zdqBJvrZP9|N5x$^rD#i$GcZ_U?=s_ z^Y(zRuUgu|`tgdc&f4#1 zI_#eLf34Yu?>0B(hi5I$XT|5oa#Lh;{8j7In`ZoN;g`&#VvSt3aJ#l}I($Fey=i}Y z*Ys*$4!`KK`=-tLn^sSsOAm#|>nH7Qzi9sWwanA-WE&DsKkJcaPPcEGzyG4$>lYnQ zf78i+U%hGl_@*;|ubzL=`SyoymQecfcNI^+XvFuY%~vh2ziYpHSMPe$~0tK7Lj~ISZbfQ{V7-C>OgAXX-gz zHAPRBGQtPO|5S$QvYZu@{Y8u2UQ_Hnr0-iF8!z|e=0i3*^4y$0dMtB<%nr2Ea;waC^aJ|K zo-)?dX(#=8Zn$M^*}bU4dpKOL6>KbY*NHxAxhd##s~hjvlcvbIpiSfLjptA3V6Dsk zRlC(QdU?@)`L5lG-?sEU^tGG4Xtn#I3+*4DUUj&>$P!2IkjFNb7T9EY`Kkls ze6}R)j5&NRPke8Q$g%bQ@`x=i+T6}M9-oz;zR=%j|NfIMws}O~wem{u3EHtaeA0rx zu%fM-(^(@6DYiSSd*a>Ozo>cmS(g>^?`}HGu?_E7%QicBw}yuueV?}O7|&+Bd-G4& zo4!EXhI{O8VXpQId1niUW?ms1-e1OKOEAy7J2typh$UOhFBqT3=x(%@haHoYacjIO z!(pYCM7%gK{_L2qc|Ke#Wn778mP^Lwi5YV+bKP*M9^=z={KTBU)|mg}$(eWCyb@M& zCl=-?!#*3v)_Lizm)m^8_-`TNs!K2k^Tc?>9953VjB(sE;y3ehOqsus zn`=e`@Bwq#Xb!I6nl8Z)8|M9`7R;TK;Y`syMW%VVapE(+rZMvKY?3ZDw47TummrtT zMMaeBF1I?jYM95Nh5rlYY6NG6(NrDtl#2@WDbEf=BpJLU9e{Z%^MH0XEu`eY<}~gpHv(4Rh#8n8R|*b`z(FbVnH@H$Fh54jfwrm9W)8QI zgf8={2d++-3kQ_b0{?cwVV?Ir#8ebyv@c{1a48?IW``2E9P@a!0}~mz2mIBg?WsRh zpSinlC-J>4*aV!KEW!4ck7@!AwL>`*FhT$p>#GAcjQKyNJU_F8OUn`mdX(eeSq=rT z9=5T3Vp#yrAOLx4#wZ$g~5<$$f7F+9t{cbeC154;aPGF(_sy6^H<6@ zj0A4!+UAYlFXb7z18iy`os5e_r6-3S%yGg*S%r4N^`bUy>zba8pV-EY)d?Tz!XtvQ z?x-WM@T|sz&|{bHT`+#!Ha+m&0B)DM>Y$$r@>`CFJ{YzS@9V-#GO%F8_XF^859}BP z;LX-pS=EZ2j>$>2^er*gFLk`336%Q^3pYyrT zHYb{vOx!#x+%f@o(uSA%a9B7==-UB8^E?hI_hael-+>?2>x2K#y2?Mh{@?%i|NXJ~ z@Z#I$d>Z-@_Xw>CU_e z9=c`dp^k;pskLPxld8R{?#dhu532V%Wf&jZ$Z*WVfltqJ7&HMF)li*}j=Y+un&o`( zD(bY_<;F$D+$pVI=dYzVLCqG;8-Xg#zCP9leA+~RUnYLGMf#S7i>mg^4FcO7Y4&RB zcJ5WH+XA~Kd8RC%I_iBu7odjv8vqi^Y0yIcdaJI7MqN#(Q?|cvi{a*_V4fP(+2Foj zANkvn+Rd(7_uX=_yz$UcyVcQ0`@cU>qtj7?@6Fqw(rT$@E~J)Ap$%y2^i^#mhubXM zTI&F6xxZ75)PFEJkhKpWY9`3$s_uS7eq_0`)Baw$5#U;aZGcv*=A(}f@~!@Epx(nk z&1zd6zou3TeOW$&J8aVXSb9BFe`=}K{hmNWr-}4;0wM~T&l{?*A4F3v1 z9{p7u%N-G@>O9c4s=OvZ*7O*3)NNq{fT?YGH2V)+fNk@Z06a#20cdvkJ+$Q8e0F>V zRRe_R1Q6M^&`&)`P}Ao=NA);S-*SzZ2Tdpcp2Q0oY;oRi-Kk33?|lcGQg<7W*^50$%wZq%mgLl!1bo? z7CQBsEx>R`KLLVM^p?1eg1%R}jdyKPKXTQ#4Gw^In?4gpcifK*25w#S98gckQv=y7 zk#~rlAA*q*2M}+rz^R>nLg#~ziaIlF7OL(K&>f@)5)%TP2RVAPlThd*jx0Yy0wJa? zO>^m9LON`b-`t@gT>Tz8q-@BEYk4|`fbA9lKXi~iL>_=V#3wQ$7C_i6ER$_G^zB5@ z7-En>4kNX=ryu9k*OqTFR?(e#D)`|&eKJto98e#GCgGYuJOT9e5MmcL)fm%;402N8 z`<&1IRQJd~v{PjnGRGacw9n}$kVOb$-A?0E7yZ?lS~#nP29VJ@B**vG*dbTahXj{N zrl(p!wt{@ByTM3#dx-w%uMuSojOb0&uw;8lRK^0f(^oy(9A#6rVjt2&yXfb(DUcg6 zP9g9yZGk+ulSF=Mo;MTKhP+!DHcJbLEq0(DJ8jpUT0G#9I%8Wn$RVr=e-BD;fxad8 zhG3@D>jvv`Bc_`}#E|W;7Mf|;RAk-_)Y*p&1|7&2q|w3`IOr@-LI~yz+vb{}|7wb@ z3R`4{K%;{`Hf_^?Q%GshUzZyh7C*UT9s`uqf)M8DB!FPMU4HZC-``h=cQ~~0LPH4V zOzxDvVkFx<4<>VD!iGcB#a<(b+`TQ%r<9X&KlZazVj=b%&_7)IT09!7GMbighU09l zo}JEzf3B%{6wuxnn~n!-h2wdd1H>Is#x$d^+2YH%JbgKhGj+4MnxlmA zYJ+Yw>^)YK-|ghGxE;Qbl=f+OSaw%tlyotLswGs;{oknvWYE}yKvds9rdCf5t?dDV2kRzcrbF5k4<+%!Ws zwirC7TuWGOn+B(eEu_9^F@Mv>!X%weDvmeodewgaUWU>+oZcz-q>bf3IH2RxR}Bw0 z?mw2N^oz|GT`U*D^^5k~uiBiRwcEaFeEnHxOaA=$TrR$!7Oy%!zG(Q!-^X7y{rsZc z<5yi@-nGBJ>vFm2`1+*7_22aP_^M~>jXu3={rc}ZJ-umZA(=M6s(AUL#iu8oUf%Tl z`iriXE8^)7t*)PSc>h*zaHOx#dZz5+`b|^Y*tmSv`us_|*H60LYy;v+XJj4SK54W2 zqWF=|Gv6KGw3vOSp5JMw$xXdaTP=4lIvk(M1#9agv*$;RPiL*yH?7uJ+Pp-+H|6_- z=KHHwg>5!ixSo?T+oU)iwO`vp^%sqvo|GIOwZ%@G&2QSBFM7PZ>U^Ot${(L@dOExy z<4vRE7wy(>$blXYmT=iTP#$$$KWcT@l&ATJ*m<$W_So@qFmD5Fh^?0N4$v|nC!$Y+~U=Do4k;eZVEjm_HnfNgA{lij;^GYgeOKcjuwn)V+pl+w>- zIIPv?q&+s+ShDluvu?C!dovFS#*w4tZa`aW@;aiz=WOuS04z^KX zn>iMa30u;iwioPZA(l?q7`xlX!-RVFJN`z$^V8>YlV{I67ChfHq~6il-X+R0PmT@m z67Se@&zN)My(s^GQoen}wv07v#sp*<*(U3D!8mc&c=V+Ba?+S_!Q`3qey(``hPGMD zIMB9SIP{y9z4wgS1IF>(LZmHL*kG^uY=y21?819GX1uk$FpRasDdQ4zT{5G;%^7bd zr!t3)ZK4j>j7N;GmXl{`p|lnYwbBK$Se_fksA)@M#(zurZ^@E<3pL2t7BR<7X3W{! z3G){7;b^7aB2_+4n7oL;FPoU>repPrbbmg-EuZ)Vu0 zL1JMlr$fd$WFLX)n4`woN=dqslkF(au$nz<8~=rdA#)eQ znUBFG=|!V-%N$N!VoCds$xtQwk9y&ko*lx1<5{>X3t#om)>i)U`my=&e-3;K^fA>t9DeW*}}S8=7o5u^ws)MVG`$F?rTzpJ=cBk z%H-8{Jv1#OQ@sqc)Tmod1j_r+(S4_)dZ(^Rx500ed1oMj@@*m7@=I8rhKD|7wpHnT z{O&=~tg2SEO^$w<)4=j2JXo^mPD9-um&pteXf-G!hX?YhDNK7J!21`d*ofpu*);oBBX`Wtgd+qZUA;Z5|tTU+g`B1bmrJ*NnmYg09FBj7N+U0S+=h-=&4)h z?+V|$=)$}ss;>IgmOeZraF+rX| z=zPFGdO+7*$eb63O6;^eGDUt)f0;vCrx52%_qNG0v=d0?1p?t~<*Jk$0xNlGfsKqH z#;W-v#eRYHGh-Wa}GD0Zm34Vg3#iME|a zYooK=Ekg?>eyGuqz8R%zQm+v!^Pp&A*93wVQl^FfN$3|bI_cTzDhmrlTT_0^Ee}Kh zVa?le67EZF!5xyGK~zV%`t)&2s6F8S7^2w=%zK0W?c{1sVb1~SNr5dR?n_3xqx=Zs9gjUoVWGQhrly5EfY|!fXCcZgZ-JLv zVrKImK)zvCwk@T94SBwB%manK3fcGPg+}I~gx=#Al8#-xbg9-9vY!{cBTJ1f?7_I8 zj-mX~NDn+~$sH}cfh{Q5$$kepQr@@zWDMD-Pi6Eo^F-)xm3L-}1`E~EapWyDnjr6( zb`5Pq13Ra=#*2vhHX87KxPqLgD_IzV{;*IUp46EPHRt{y-6|cg)Q{HaCsJaYF9|XZ z=cN~hZI(<^`t>y9-5G1_PL;%S%`(bfqPvXm@`;!dgq<{xu4p|necIWo=GK@UncIK9IyZ6>-)fsBsy zFUBX1UcEGcE2`DqJ@dTD5s%!(4N_QAMEXQm+q~gpmOc~Cu2a^*PLcKKbT_&-%M?Rl zlgep>ue0ZQ_}{g)u%6=z&u-c79!Hl6@00Q#bdGzwdRv-0N>$VS32(O63T}Gqk9p%n z6T(4MoYMe_Cb>X+kyTh4Q}^#`vktP>Y&75#l3}955i}L(t?OD{|Jujm2Hb!AT9Ju9 zEXg}%5p&TZQmn^KhF`b=DX!G7kOtpgN;0;kwEJn9r9VzK337GJ^?=vQZ_rRsf%U;A z!a}iOik#`UqM}$Yz|yUDN*C`7V^sah&Bme8()S zJLVLh&I4Z3YPl_^uyO>q@BEXxOfjkR_Zi2Wm3CdKgztzh&Y%kqRCYFPhO@HkypeWC zSEbi@HKXjTy1Brao1^k>3=KEe_Yu50=ZWPk+IxHj&Wmi8UaXUnvbXkOskAvcu5@V} zQHlFvI(md=K;j_C(rPEnER|WVa zzigASO+U<{Gtex1qe`Ed31fnIxX7exBJ3;QuIuhwlx?IYAr&}%Vt(d39p7}Oc=9>W z@MvfcI=V&;IaNwwy+hLcdcLo1tB?%}AN`Yzr2vHI*QSGN7llx~+8Imn`&u{ch?kt$ zC8w;o6+KpIZo|1>I7hgG4vLPe>N)6;n*LMl=TFDAX9UoVA1oeO&QKUJbrp# zGF4FtxF{(7Z6vleY$uv6oM@l-Jk*9gDwmWjGg(?7Mu3tphRp#Tir4R+0&G)73;>@1 zMY9JuIv(LOYJzL}TKZ^jH3w6=Xm!?gRoI5ohdeCMk*XuVdor{}Tpo)3IOI%ymiBG$ z4gK2h(4*7OD?=hXsYG;=HWp}WbU}AUBX6pmh$2&u{9psMAXu9{N@bZrnF*`E7rs@F zc|9?fd&{?Q=ce-lJ^{fC>-6sH`+3d=~R!z;hQtL+(%oILNxyk z0q?P=xn>LM34poRsjSm{Vf$GO%jshGc@-K->>g15P9~dU`pZkqZrzpTUu_;%4zm2* zVIl5T3YBxmI(PlxU!;8ZRhN}^n*~;#XKIe#1a9-``o8O6=RnjbK=QpyOBqG_xeSXy zQynx4GD&9HuGQ}0n^?XP1R*OqDF5DdFsll4=>0315W(N%;@+aw2`9wfC{2mODU#6` z#;){-h%|V?Pm(Pm*ny&{*Rf&!1W&34ZAkiL+9fBG-xJ=)N_VH{sik8I;zEu zJl_%>d_8d;o;~HVH+b-YDv5N_C9r+`DoZ&}TYIsj)aZ1&!0|ZhkB509oWO+i>y%u_ z7Znf5{-wI;$M5^3Xlk`D;rKfs!u6Yb{4x6=yXi#^g%NVgRy~Eg54ZlUcKx#f?zC-t zxRfL)$(lWG)-J`E86w%K4ujeZl$|&EZ6%Zahuu?LY-H3nNVXxEo98|qE1m@P@mGaK zH0I4r!8C8`ib3>}jPJGSJHCGzA+j;!>Z9}RANW}Hr(O7@ z0$|>h{+SVJPSU-<5`{62ohZN>q=CC?qeQTJ;dySFaV3u_XPxDU3PA}bWHe$n0k^C{ zX=O2~vle6HYv1564v6T-jC%&XHf@+8Kb`g4rJ;N2n2%$iXK9B<|1(x^rFguXm~{_b zF+s9*<|AEq#p+}tyj@B@2E{P9ichIy=z{9v^gLsA(eqnrxO=sD0^L}@QtoZiYSGrp z(zy6!Xw;*&a4!23qfZ|i+^gynq+3ZhFYVkL3IQD_7E251*k|H!a?U0)iO&uvK8`NT z5(ts=td@Dz*Wxk&ML_TTAwpJlP@nA$Xu zo?wUBRxWb$a;y6nH2g6+S(#NjYo%!S8QO^d`zLiBuc921Muss(Iiw@mv&mT4RPi4F z>6?w7k5sMzHaBe+Cc^vWv(SSA%GX`0lyjKMA_)big`X{wS)qm=3hIq3&)I@C8j7VQ z>~jr}2tKv@GGLBihQAeTuixr?ZZH2*&W-*#KHlM?{a&9Ts|HA1@p`)N;dG7^YHan^ zT=QfMuKBHR!$3M=#+ZMd=PbDtLGtmx%R#|>+nlBiJzDmG5~S)bvBEZt@YEY&ou~St zJ^1lO>(4wF`BO)Yr_9PPGC#b4{dunl^-TrkkiS$z*WP4a-A|@r{mdf&5Z7pR)UGf; z9fT_-6^EJ*ixL%->6^YNk zXEw+(@Ij-P${cByW9kUM*@H9J)5IwqJJH&GX-vBJ4}7Mq^Fqk_#YeIWn_NH>eO~s! zl!&q|`^5`|xR1)OR5L3xw{bIdgns&BTv?G{Ftd{7$K{>fGd zsXY>o{4{5862|6=m&(e6oxWe2(+TZXqM9;ON=%qD?DQ|{_b+i29QSV1tVVJ2dR~oK zMJ^L>(D0@WoiF`sMkvVoYE=7cD(H=$m73p{&+V1=qn=(F3nQ}zpX$ldyy z$t{4rRktvNi^kF`(dTe03e#1u(5>C_CSWNA~LvPwA-wCRH=LYFH)MeQv z8fq_Q3*or<_canuKO}VPC=WLB84S)v({c{&yxL#{a%QPa%hMxy`L?;a(J8qw_o?X~wD&G+VYerQ`Sn z>)uA|9hgFyC^t^=G{!Rx1#oT0IM>~u-P*h;@5h!-52!{gxi>Km6pR2ytSx>PG*s!M z+H74e%D+osU*B%UU&K_+yKwIo;E(fFW3%0V-{j#3Y4&cjo?Z02iW;`xY0F{c`6pLb zmBX_(j7!FK>kY*z?K_V67d&@eLTBl!cVx;6K9Wi1I&V#KXb}H?1Hf48sOFFt(5!A@OC}nRIxrZFp z&vMKs(L3vN$7>=}WQ1UkH5iudBNQ^KP3x;w*S=Lg*%hDD4+t%b>CK-h!@1^zhlNqRLekkD1&f#QJ~W0x%`J9b?^RLV z#Md_d1>`p-lVDt(-|(eFZlY82{R_{6Z2hcg!86o$U6*lR9ng&#;tBEY2|%1ifG8z1 z?<_SYWAQ$GyC#FutpQ!0n>370;1kAOk36dJQOaho3QvCxo0vBANyEchwJMrBbN!3S z*ck(5RTTp?JC^G|1V$;e7e-<;xZ*Nq{aJF0bWLjQ$^PxGBYiAQW(xa&G@tZ0RRF4C zS`YudX0v+2vQM(_n_YiScvN;Wb-wA)H}04ypM?|?y1<60;wZTU?zMRx%>m9LH*tra z@cNC^73rSQH&)Oqu!Yyqc@lT31+7Uq!X7w8>*u|HTptEEYev}qM~jY*9iY=?kAxPD z8)Gus>AE!0^Hx0!{AT{etqD(R4K?!fOggSa%o z>}P;^m%hKhqdRmR_=XK5AEf@Cbd-YtQE%ZY>p?Y(vM>3o?vQ;zL`nBTvH?P2FPo3~ zzact1v82HzYO+F6rV^2iolaRw*ZssM(x_hJ9v}^?1>L)!KK>GU?HX#18~jun0TT=y zUL6d}P?lQuwGw|mSty=cB~_D*F9PbBhU?@?e(bA`7TYQ`{Xy;@&c%q&V z1d6igTUJG|9Mas9fb75Jd(6PSR|ZUHgU+8h5O7e|qbJ@AEzCp*@6Kh2_kV|%Yh1f zZ=9>1Ioi-aAo7+aYjvk~X2jx#$ViMrb!BuQ8Mlhvqj)k-nys*W%hZxjs=L$CcqMIE3IryF z6t3JHykTc}%SUOy0$Gv17Llka7}H_Gx)>ENJnL^-*0E ^V2FZ!>UK{i}(~1u{$* za&^TLiMf7C54FzoOQ~H^4`2`OnpPeSXUbR%)%A8(B#jx{>l~CQ!cjsfN9-9M-;C`j zY~}WNjmQ`o;Cpv^(Ot1S|92R_nKZn$XM(jng!h4J$Yh+S-%%OD`+QBD__Ru?N_Bm= zrM#^uA4JBRgz?+!PS-liavQuv8zaB|t%8h3kJ%r4b$Cf#7XoWg>ctO#?99Eg>HBEB z(pK4Y+O$pC-po7&o|(S4P|p?q9rVb(xyb>MCsC_?tMAK<=s(uaFPrJ=-OnOV1Tj6W zcyyGQMUA!^f8Rz$@UKl;ByCDpy;&p40{0u&A$Qqq^Pij?PQ@e;kI-CW8XG4fP!CAC z^reDmrzaW^JJ03S+E|^Jp5ESD-b(ygc)3+@f^gop*WV-M47cIp(wYQ5$ROP-DKqoA zE0B-onJ38U>EM*x6B;+lE(;zhRZWp71

    j-sZIbO(c!8Z!`+nFWH$PvTbWqN`QJkM%!_(5g2-@je$vO+qnX<@VEz#XC-S+rQMHXmE&yYB~jmc%y0Ql|+ zPu2K8=|k+D5#%J=3E+H7MPFU73k}9;Cbu-tJsMQ`UW(MocW8W}zrAF}K2YW*^Jk`6 z4z5LoXdwMtfmHY;GaDYD%Yv)l^NrxFWwqO_xxd)Xaz9|6TmCII)WI?{0nq8>sw*gWh?&fqt7}KFBn7)7Ao#qq_BH z&Tc0(L5{~a$bn$nG$-5eeF@`QP2!6@>k?-mfo~ZN!HD0n%UNax@S6@+^84z|LRgZ;y0yGO z$OrpAIb~}pt|_KM@V$6%{Pa`j1HXGSlREb?E>ofYf3I`OyW~k`xu@z?67Cy$L!{o* z`fklFARwQz`=?`@BjhX@zBH~1G#U{<1@b)w#46WH1a0$S^NjkdnI|i`)OS2 zKk8aEMTzJ?r>*&h7J|ngj^{sd1J%iYelIs5Uy$}}uxUxG=>*a{T6FwSrg|F1&4$JV zOLN9qaB}{pSpV?DFcOk}X2;wv_a7IbiS0wYchN8L+A(o7aeSd&BW7HLikw%6byKwO zw?n!No?(KPbA^%az>o8-?amh{R4OQg@@4X3PBEM7DR*70+9Ck<`^J*xp8%@$XG14b zoGF;3e=W1WMw?u(KqWUlN9IQzY48!tABrCV|Muau{6SwO7uJ5yl3sURSgx0L?SC-L z$&cq^_&`uX>56jsR6puBwo9QrA=OuuShK+xGx$A$@?sw;D=VGfo=bXh`V#TSDe}ok z$RTC36~tq#pD)AipP#K#H&!T+H$(Plw|5nuI0zmpgPi{|zT(LpU)}h0jZs=_tQx0H?@^5YRd}`X z*^YlwXo-V?Tlhs9P?@5Ko+8qy(QJ8C_l271Bd!zmHf`y2mNoTp_Z}SQbHS751zYJQ zjT>3mp_V4@i#Yw8gy=^njcK5GH(lxU(HMkf?)9!x_qrbDygXN`IV0IjcVbw6rvm!g zcgpp!{4{ZN_0Qs}N<#F;hia&iB*cHxA2wl&E4^MRT`;d=<|5qFhVA^kq&o6yIQowB zKFquFp0xIv@%NapjEVWnW!(zx=a@0zwh2ELhYd~MvXdz0-pTs{ zlu}61Q=Nkq7HwJc*TAtg`%fBYk7gIzYy6){7EZ#Fk#x8mMdgo@EhXPF>ZJ2FrK~34 z7~jeTz}Y7Ic5hK#**7QcA?A2UH<-R6;?4d+hT^IwLz$%hVzt=7+2i9XiDO*Pk>o-Ex7vR)DC1M_ ztMV=^SfbT`BHES7Gr8^1=p9!%Y6y|o4mC_8zZo2=BQdC zzO)+)iy1Ykzqz6pXu+JHsK9zhtv+Qg&bdDEpTQp~b*GB70y$xtN8n`L6%D6?U7pdj zOh-+tDy)B1aaX#Czt@~}3K^CT0&;J(jcK_YPN1y2{Ck-ZEt1GE@n_g)% ze}1JhzDDK|IPv0|3uPjFmwip~0)a;*vb}Fkm5MVr@M@?hQLS2g}DC!I)bb~3k* zOX7LAhnPQ;ga*t$RXj42fdM)$_@b^GquG0lW1`%}KcI*66DUsXH|A{NmVm;$R#j$* zX)Jy(fz97({QA+gqpC@rSir=&skrbKYq(mPIVloYJEk`Z4>lJt8h?K6go96$_<=!k zKSuMRW%CBoQC{3WYL9lvk~uB9#p;n`S!E%U7IY%^l78wnn^MN=J-@snT_zR5$I~jg z(Dv1Vadm!u2dlMp^E}LI5uqnX4**~{?3E&*JCwl>?)4K)jefodw+CBCol2?zjs=!N zpeFBxG}lKQSr-6PjYsZ9Y!)8Le4aGPj%hv}A{23g3NgVxT6fA5T{kFaGkEl`)a01R zL1$vu4yGA3yJdL0$fd z){XTSA#**{^|t9Ugcf;&9i+wQ%Z&`=pPNC)Rs`+uy1eH9!AHG3Wtrw=+uS;{nSPJM zy53+v>Cu;e-(C4r_@|Xb(t26o*w$IuP`@~a>pL$#Y%=mF=lh#)B2@Rf{GuzV(3_&p zxyXCr!J?$5m(Q-!>c*ebR*{3Aefz7p%fA)m(MXz^s`!`jwM$2a(&H_;kQV3k&-aoA znSz-7yKYQ?l<^({^ku&=@6%1rWchbK>~xzbQ}dAd_g&{s4dI43*0MC z-4r_=hm#!9^|;Da{pTCX(557*k6zsMSb1fJ;YLCOMG}~>_o($~|2$A7xyAUZh~r8a z<|oP!!OS;dCSnzKbgTW<9;0F<8>)hB!{8pp;X#Qo8wIL^uLs3o((UR-X0|spHIF|p zN+U#i6r3X?plR|vYkX3CfrBM)9f_xe3l=L4cXx!0>X#+anOKkfz^4BRX~qtR|Btrt z|IFdVjW^Rk>!07b%cHp$WDamfG>_HG$_%{D+wyhtOD`XFjHu$4M5oJ7ELS2IJ{vHS zHB4H+vZ<}qiwPw~KKPT^A5wO$qlcEd)itP*P#Gj1*WPT?MDy8db2O_$;0Taex?@5} z8E#y+ezMqqP>}yE4IX>B-TOZJk(KA3$5I2u)Ap9V`L^u}LK;{2d?{{Us{}U?r_OAv ze4JaT12aLJ+7dXwGa6{FO3E#gFvLpktsJi@5@;5a#nk|xCoA4dy|IwX*Jv#^3ZlbR zCbo~eoG)ExvHxok(GTLMxhAL`N?*&RPG*T)fEOFrhc7TL3fq@nEB-0TQK9ELNhA|H zB9P;*8p<6n*JpaPy<3MLRxL5uDw3>sNK~dD3SI3~)oSirETo*>zWx#8UmxE}tx0us zw#{7aP_XJ|KV9Lljg;-}m$*ZU+$4tL`?YTctah z(+>uCZpppgzX@$}dY=k-#HrQnWLD;Xy2ZPl%c`={_pdGLPc2` zb2H<6t)8)D%j5`1^?ft+6H|J&4sF_{zil(<1~nOk|VnQ?0AB`KVOlx*>mp+v>x5W7erOCg~Uuw_7aT_OXe)oXh)0E-TOyf`_dI-_ZA{QPlLk?7a2 zddYa!e{I2A()$Hv1u3>cPNbgO4>S(OLuq9@%J;Qi{z6@Um3hPJL2y&J*?nK{A!?LRjUPHPkSJcCgpA0YM;d(p}4Mg`(>9Icjt+;c-+idwDKuTOKdI)TDofgnpxJ z%^{y%-z1W+e^~pW^i`jA#1*8k8agFg^>f3v`l}(&YiUIjK=I$Y=58{DsyIFw<^fkN zOBekx!>t~<)9@1WUB0}iAc3a6BJu=Frvv`iOR~yVBj4^8-?W;ekCFLEJv07P2(&wc zpEUjbZ`lT+z_2OYdzklr?Bszt$zZ zZN;Y!0!YT4D%80M=sa^AyVYrfa@A@&5rT$Nj*5ZdBM=lUcTU=jfsV8^+AZ3;FOmo5 zoEK7i0Y4W&saq>7y=SJA81iPzbTBu|`{hxxqtukM^!%jD5EIpw_{_?n!X#{gra^R| z1_}*#Wpj%jOY-siFE!J8VT_%NP1Mp?S|g1s(aHfOX@YStw*=}MB9y+6^?vZlPpTa+ zx*9S6p;k-g!5}0b7IG1)ms``FNGbXvc5K?$@J3pdy9mxru8y+I?eVQxvChTN8mX|^ zj{rWi+jOrbdq@8EUck&|bFZRPq-#QJPZ#Hgkx)U~ zznjgu@l`*D3(H204exRP<3E_-+u6~9+1aD-hvp8EzOnOIlRBAz@pbp9fXhGEtMcK; zWo*3(I-52Wqx6|)vHElOZc+b67KG-r>(kmXpBm@TM&bB;g|hmYveb!1?M}0w<)XyR z7@Yk4iqhnq(qiiyKO^(1(6C7_;`~enD}R47ZJ0)#VSaJs0_N^M3vJ?Z-^67yYt^hH z*IET6DKbahbBFp5?h2MGLAcM>iI6mhw)f2W30I58gX65X26OD#B2g7IU@4&Jq3fu~ z79gFcL7Bn}u=>z1##jicfwnJu;ydtG)F`{|KUMsU>@-8Y{;SawmF~0vQFk?A<=@dsE3MFt>_#bWjT7-hE61N9;;-$b7Rc6l@Bdus^oRF2&d$kRomyxz}ZN*ey$s=8JnVU1;PPzgY0<>K&^D3a* zJ~w*JDNFVKzSHQ_NYxbj+raUgi*$6As8QQh>B(gJOw|drLB_-H%II>Cxv4E+^7Kf% zN-c2f2vb%W+irJzq?C@dkPu)WSU-D9ndaiZ6?wAt+R0P2 zx=W+}TjqKDM#2%q%0(VOE;XvGi@uh*UK&`k+?eF^p`5FHocE-$K|uU8B%r~l-TulJ za;S3Ls|(`I7WVO(nFc;Z1v~RLXuyZ1!BC}d+1R$!^R0nK(mt%4G6YgPIv9l z($?1uEDaQUn;)oV!<$x_Eo5LQ^x=%<47NbhxZ$=eg_xjH+iCSIX1D6j7a0r%NV>as zQ6^-H#QqOuGjaToPI|}jLP#x+!xLrZbpkv|B4a@g3lN%Yh4iRde1-I!mFCM+6y40n0v&h4qry}VoPatIJ zLtbPk-JZPF0@LPqq7S%p-D+3;vZ58-K;fJ{`i^~wv~soxngtvB?0mtsYG|;eApFZS zC!L5*KMz_>Q0S}QR7o_-Dv>Np2HpkSYa_B2=+|VMx@P6{F&we`dAZQd^yBL^@vuYG zkuTzJGXKq3jAM`C2RdRmU4cO%L%vM`FRezKjG-i7PV`+08zYOdEOq>=p44dhn0H-3 z?aQwZm=D(Bl1~E*SU~zDLvmB%HcZU?UK@g0^wFP3+oBqI@~-&*PK|C3LERcXM-zRd zzP;N2<=dH)EEs|3V-Cr^^yIUwBp(tt+sg`J3GwbXl%DFXfntV)%ww=0haje-l&2Dc z=yvscI;)qKQCXc9c9ejRY|h5LM?43Zb;P|dyS~d8LOTCl+0nB8>|Jtk3>s?mp^2K7 z)sg)AYd)A*@@+hSaR^lx;c+W>mc>%AqR(>W*um2j5Nf?-bW`i$(q+IvOYlugy#66U zV_Wz=isk35)rs^x@ow)81R5*8(joW=Y&Mp=B!0iT$E+RCe^gCz&P7;tGGOSi{LWqS zJMVu}&o^rV9@zCL2p!0>|pr#G!Pp+Xvnts<1yy=4KDu?P&=s&(fpK6jOHS^PEVe!RW!!_X6OOIqz zBWH&tVjPks`|Ho}mb>iJj)w}BvpALE{=dkmNTFqdHWPL7sx2J%eoi<9c+S$aYbq#t zAaAlA+=;DL@3!l-S}9$gjc_R>P*rYbUs$U7T6C~$KdGsoi-lA_2gO8@b!A?dE>+qv z&9N}tqf~A-TBAf*jWy~r?$Q18$jGYlC6!*aI#|!T_jl*zs$h7-3&kTl&4e3sf3XnV ze3Qup(9pM=0VY?UgYj^d>wi19|Jz&m|B6zE?;PU%WRq^Q=Q&Q-&FrC>KdR~_T+=|> zlJGG@^$j9wzd{W**UCC%sgT6B2dBNryN!Row^{oRp#ogL-k9&r0QWBc45&e-?=b8J z+S}-+7Eevp)SP({?$X-tz1P|I>XoS?NQDReAA%qSBbO2$b@Q&0^#bwr++Szy6E(~F z{Rql`8y1R&ZhShp^BPWr=U&0yuzC*ieev3`Cic+Ibfqp>T`22Lov6R-@Le06`9#irX;n}EEP1YQtL^5wFQ zAKraSxk2!*SsHHVVj{yO#bXaxqV{=_`N<4R$tb@qO!!^Jjj_mxvUY|LlL-0=cBrV_ zOE=OsXp?9yl~B1*6IEPl-FJ~BoF{S4?6@#sey@D_#pHu7MUbrr!Q(v-!mJ=ocMwYo zka>=j`FR~-AB5oDdgrcT|CZoZwaD*8dYO1h1uD5y(i*PVAdoqtNUb|qtbo!~GWm^1 z+4q*twtHKOQY318Ga>%y~N?T7%wIf1BdBw~+sI z^=u1cS=*!Lwmpls{#Ft|hy%(cBQ@vW>q_m8VUvIU3`YxhOt0L0mLR+`XbF5U)Tiy5 zJ@B+u82kEJQ>_^M%!{*V)W9~CDThJ8(gp0t@?UrK`d{=$Cpb6rJH2dE#*x=?oU^~d z)fr11Q8eQZ6WetXi0lL@-G2MdJJ9nwnpXLfikC??kyCN6SQAt}WlMfKAv8~mdg)En zr(ll)$khw%LF0<#K5?EZ5Ee{|d=Df3IP>qNo^39{1gRcb`r{|9Kv-L+Ub za|23vSD1(U%KPo8kI^g^Qmp)m^f+$#{ujEl$XAvsPj`QFP{t9tTK6Y>6Nj!ae zBAd?AN#!qE8>hk1l*ioocux%ax)6Zs2mB{$pRU;V+fzY#dQ8{U_#O4GnDe>{%Wx6R zyv@T}&NZfwFKQ!iuphH%j(7|f5iC2s1FU^zPay7JhuJsSKEKIRW3iDnDgAKf*MG0p zF#Zjq%(9KE(^AT&{NU+><7bPiLQK!ANsJ1S{|e`YSZ zAvUvUTj~RpO^#L$V=C#Pa}`O^4^!D_6B9|92u9wI*xWifA%d2F!)aLpDjFtUMRPlRi}KZAMX z$DMI~`KECJqXSjI28parjvHCLW%}zwL&DQJyTu^icY>7_i!ffbNuJ51nK}6`^Rkiu zRx_)TR76WvcBgiASdVQ#HGJN5hz5|VBnwu|LUk@-Y>|Rk9}O=r&b2Y#ne1o!we#Ju zqS+)Jq;BD?BDNu0xT(d?o}R)m{kS=7mYv%xyM7Vn?k&FKa#`6sm>+Y8MX1tbo{4UI zPdPzmdH`pfkCYf&_m>sdJagZ-2_l;boSqUIvmaCs%aggactp|w zC*sK6-<4zI#PoZKSe-&qIcZ6bZ*zH@@wHh(^ek%^1$4f(d|$~7ayA;o1*%d+hr=W- zCEg)S&LI^i&J+HYKb^3b2B~!ye1Y%U2X&RTDg5z<$??g5G}iiR)!S7v2U7 zUJ{jLGPxQ1C-Uli@9L~*`Z)b;G`r5vHy4s!=L6vuWf@5ym6*7NH&@kdkU^5$PBEps zM=EX?>lgTfMSKJ>J1Hx>zR6IiRq6;|*@d(*f-l+b3wi|TsN#FC136l`cp6OHTdqrv z2X*H!!=3iqw+_xLk!!kAEK8?@;54b*++v&g7*$HRnd^1vjxHldvG$U4@lGNO9|2(6yo{{B9^50nJwTan;F%Q^IO*nF$4f=qRsqB5$a!pCI@6pEIox#(oL1Qe?s z8GC~<)CTU=(zhW)GCM!oh6XoU>Md7vQTw99U>a`l(%(_wJKISnKa;Ux7<4;tNvd_{ z{3O-u+NMGcFz_&4CSc;|M82zmaRb63TI+bcdG;w#Vv&}2D>9bd3K*y-m6V${QLzC= zaLTv+2h;)hfpl83d(%DBy@o{-t*ZZ z>?f&$6Zp?hHYCZ=fI&AavozYJaEx*O?pNQHZanqc(Pv^YRvU8q(GEK5+ASK60wr(GCR_s}dRZDtrfXk$k+pH_i=IZLLU4@Be&5NDFnll=nw*}tPi#s3oiv1Bl0 z>EblcAL>3Jja+Fw=+q%LHV2Y9B4J~Rp0vHfs!4tMJcDMU&MW&hhhoR?dYR6oj#3)8 z4Uv37u=D!bXo$Nf6&3&f8G#c3_crp#mvPN>EBzAdoEGaS^;cuj<=L21FVq5keY9-) zH5@jP^}qdvx{dgQLEiSON#@)CFTI&ib;pf+_)CcztQGJq)}Zho-}%s#A$;4#~@IfbQO>DVbx(>U&aB?>8o?8s{caY zMDDp0K5erH*cX2}8?sbw9BvMvGcIx6OmsO<2dw^CQqP|+YWalKsW=h&gRl;Ro|WiM z*T*RcuQxQsm5lCJ#Om;*Os-uE0aySy@sNm7=1FK1OWEc>Q z>4_Dv)h-fcwD_&(Ng1b05NLZ$vK~>`RzaOh35y`xrv#2c)sF~zD{i&m&1AH0^g+33 zBMjy%;e9AkG0?}PI74AkL}jelCfC!qP*kZ{djtGQ@y%Bl9pS%=qfkn0cTrNCA#&Mn z&fGg}mw+GXT#A1jqLs;GnqYG=?1Ulwiutd!-f%i2?CRn@_p!u>Q4bgkPJ9bCTQZ{)-w7b$D5Z;-~_qAWL{E# z>{6eSP00-MGichM)-KK>?3h&S@r?U}L5A>-dJ!%Vxc91J$?q*5x3Ap;f+jmvX@#j# ztcsZd&pVj5iQtazKJ4UMVT>K^8{4#{PXcgZO3jcT;n(PQyR32pm;47)4~H#!emtxt zt~j#Pj+Gu8dP?B&zTJJCds!^3CD-COZp-^Bne=fM0sbB_&TW7g7+&&%@V|%mp4|OJ zBX~utP&oVJw9Io}=XuDoFbiR#dXt4_5mflax3_QIXZK<`L?=wb;(a?A*Ezq2Tr=*N zSm;&|euti=Dax{k65xskGQPRc)BS2B3C{F(;MfAVhN?HZj7Rx?=2lcBS%IlQpEa^T zNX|%GzlMr{6quNg1jB~deirko3e|32vidw;N65a4ekq2Si+(8(*YKId%t>X8eu*`K z+2;+OLADauSD{A#>H+M|D*rN`h~_9ehuPqx=xFq_Rho$ue>cH!1RehKn2V|(zD-g< zyy#I;D9`m^hgGH)IOWR~}dH&hcp{NQ}N8v)V~d#uIk zcXB9(l`ATd{HzU@{qu4#nZ65#Xq}SGS)_JfW>0oZy%-+Mr{Ppik7xqSaEv_&*^hQZ zQT067-6B~a`#|y14ll;3Cbc;8j$ST;GkGyId+ z+phj$w>LA-1el|TFTXF1L9!-L?uDHMN75cbdF|g;t&d6QUTgNq^(dWW=q>D!A4x`3 zvtJysSp{Yw`akV?{gRz*gBrhmR2` zDbNXnzWHqN;O4=qD&+LZHGhLQLVU@9iG00wOx2(H5MpI5p>I#iGd;+`{*fL2Gh|QF z^HqFXh9c)izFwo4K(z}0$rJsz_btDmH4FR68TD4}9VHsNDJu^RZyp(Z1&gGWsikwx zhC`dST-v$0UbDK3z`PM?z1j(cfr9{wqbB3^TH)&W$AC8V46yc>-UzNQq0=%-+Ux9k z8He4rDl)*gHDABrWnsBKY(wjgR4<~rM|^VKJvr1C)o2hNa4p+LQUT?gC~5YkF5kao z22(N)_Galb>?$)=`W00J9PFuk!iFfJ+ONE2iWRep!+2~{pth-!3GeMaP-bg^5i7PyGSwq9>N|A0F?mUu%SG7? zDf{|7lpLHPfT^J6yY{YeRH+sqJpyZT8F#SZk|llD@8- z9;~{$)!XrsHj%+xop=p9WqbHsFgal^Zot0Mx0SufDqr6f{4Cfv05U##%zSaN5hIo{Y0?fyI5&1#uP3dgQZ$V&cI!-idGa zP}s3pD0JS1YE)0Gta~k=CpNoIzIbJ)S(V1o=b~cB!Ugg{Ers_5zfJ~a%V-qo8P8}; zyRCOFAwfcUtmd9)eaO zsX6Jy``{MTpoxI7K=SwQc-&Nv`ArX#g|b*?RjTsXv1{4NZozo6S2C`3OLPuJar!Kap;NVwxDvG8$ruSUdp%eEujp)uct77V3+fgcg~W{lJgY3(lx}S|3}% z6C2=oPgy_EabW(F)B8g;*WJ}XA-*BDD98{;l#5b`|C*Lr(^tVe#*S2e$n2EPyW8~@ zA~@KpJjk;+KaV_^hUE?+-!^?Ts5zzoMJPgadwkEo`j;TwIdI5f`5Dtuyn`yE2+iff&Is$9k$YSNK&utSPJgEt4q^y<@{t2J zK$~s3nS_o<-)}0^(Rg|n7~=dJY8nANcu%wYG=!_EGXsnRMczSS|kpX{>~b`y+xVXvy21KR&ECO`XQbG z^^_Q{p=G2BKRds080J!h-I@F{SZEpanw3nr9qm?v->sRI%o>wtGyP*O=c%?O0g!X> zf?qG=zi(O`Tt8r-@Wib?-S=Dp0$xn_S`&JMzOrS6QBzQ7L5a*}or1Df1Y8z~sM2i& z|GupX4Q(4t@aT12Ry5)R_rQXoQc&c#wuWF*+z2LY`rt((5iZxr<7Cl!7?v(U z^89Zp<|CUQZ{*S^#;>SXKHyF8fS~RN6UPpWjlCd_=Z4nDcGYz zikr;r(WsjPh1AK51LgU3cOM&WwbvKI`?iA)Hd(io#Raj~^rpbSV8`(FD<>cC@?OC+ z@!d3TeZj36jhO4~r&qv`o6*Z%^kKvuuJ z5%;uOA5^u)cK&|oTbQH|>V2RdTYRqaXL1kX zb@WrGqkg|bojhCVsQD3DU8hX&`~f+9yBDC*<@t6UAZy`#EWYJKS8=VWmOW=>H*5OH zy)6Js*B0XeME4yBIl0&L!ZWQ(TUBct_tyq3zz^ReZyP!4t)_lzda8N0nEzK*k*VHo zs8Kchw5Z<)z)`+=IoJt%*UAjly0=7RmXiS8xY)59>b`DCm3{r>xq4{cqZa_7g>Y)O z})MLjYI1eJ9^S4taoEYY)G*n}3yiZzubGx%3f> zLBG4EVlVhU%(x@6>D1Ps~pDk-9y=owWg-_B&lY(077>XFDym zXmkH3%4nu?=vNKLM>j2X+8^Y&1N2`*F91Qnc+V}=taBfFGf#&Kzc(Am>m=CD;)s6V zEa}{tr$|?gzHMkA4}D~C7nBxE>fGr_)yY)aHb1AQ@p9YC)^w$Bps9O$@qz$n^ zZ{40c=z8Gx>9>GlH_*orTR0DD1A^-S-oZnL?i~fx;o7O2gnIj-J^1X{uHVb@ZJX3=}gpizuQ>AU8LL(49?Xyre703X#v;^K=^y|(6Lof*v6lmjA&Pki$#~-$lsg_k|O06FL(QyHGg$Pae3kX2p~szG1(+IG4gePp4Q5S_ShabsyGBrW3aI5E;Y zER#?t9r{^jVYFDf-m<}MGVc3%;vg=Ke1NrPEn{Ccm zJIxCs4$-?MdyYCvBl9SjsWJ-{Wi4g2=>fv&@ji8s&rbOFAaoOm=>RfRO_tO<);;a- z(!P7zVFW*jA~j9l;gq(Uo<>|e+p(CoQ{^uD9oU8s1RXu}DKEu#ei;g2t{B1@K}z!hXna^yQfL!dBcT<#ZtrdM3YXT zNp7*gEkshHr6oI^9MRoYqxn^h*-E3yN$zm3Ny^`glM>1s&vu$FW-6%H5;c2M+mLwC zWV+CDchbrdI8QBy!%_3`M)S>DsV#6@NRs(Q>GmK?W;+kZ4x3*!Uwl?^e%Ai{Rr}i)WiK}!o}bH22U{4vynWHi5(z(lE*CQ`(d_l`UY@K! zpX_wJom75Qe!l5Sx%=H&+3r>2<5~0FT3ddbOfJZBK@aF=xzS=Zqpg;3ca7~9s;t+V zO)SYX?ZIx*Zm!j)C_|o%Z1cw2v7Bg4zi@4{VSHA|v*~7~>GY_Sb{De^FF%hOHk-A$|2RnyC>Ht5+xJDtxPjra7|12UeD+S-Zu)01|W zwT4fh`R%Kgi$|@`Z(1F`=)C=+m*Zo3qWy7o#zu!SywUOcrv1}v8J_5P`G!5e>2~_6 z)#XzehG~2Kv;6+u!V+Ds*!_2%-z;~;SG~Oas@v<|RJ{DG?_*FW`g{#nzP zf76-&&+mU|cl%vW7i4(;jk>;SbNi;^^JhIhKWg@k{&M}S^~*QPcq=_6UiRPUM~^z( z(6wzYyu9jkzUXoPiE_En$@1`7hvjeR^j)Lts}}Ufu_cav<6cXC{6t?x#wC4p`RNy3 zkAK(k>5noj)aSR)x_Gk!$as9hqe*R6nKmVrVum886ko(i^-;wcm z%|HFS_HX=t`Lo=_*j-;#+}@E7nGe*546B2A5g?m|Qrf)gxV9w9N3C|259OlO@mZUr z*@^GBybCv5m^bf56@$iIh&*g^G5j&r6SKaon z+U-9pe|pozl1EeS{`pP$_N-U>&Xqo58x5D^d-?v4X!nU{mKXDII#Tw#mU~M`ZAq)o zI&QvdemT;Ik%@L#h^6Ju+HW2%^xw@*Iq$)aap20eSbf!a`dMdmvEW^vuU~lg7n&c} z8gKS03iA*#ZwbZ}#!B{=F%?NwPva`m;N^{0n z*UDq8nK2fmw$WJ>>hNw_*rf4dqrrx8eR|a_*)uMf$JkN>W5-tg(OMB>$%HXE%^9bd3v9eERx957oksbxoL|k8(Q?v67M5?sIOH>*ny0~J zsy1W1J3+Rog%w)L8ON$Kju+#AHX-Mjc|Nr{ka=Q6J;g~qo{P6@b$!dTFjLDCWRJlG zqlEU&n7eG#V$buDrp(uV1}yt-GvXNL|(;GLBQcBsO< z0l|ku=E3r?f-{jNWVVn@0oW%QTXJM@5SVF%Z0TT${ISw>t*PN1aAti5E(9lJiESo; zjpi}WPUL|fhL-0cE7W$AGWSCYwi@K%1O9eK@D1=w7fcm`Nh;%vc^>(|2RHhiE47K*@*{hHx4TW~k83s-?1$nh2> zMyr8WE4FC@#&NE9kL$K|3%Oad^G>j^KDMadsPXB` zv4wd4Z~b&%o`&z;0i-&Pnsp}chwAr@0-kMlYv02+wLI0$bHQTPcPw;LA3zIGxUZDu zH<81hukoDKVcrs*pPG8GFhv#HD6tSvHMJZ^ANaf9>L_Wo)T(^c$J%}QoI^df;D6si z#@V0C7~`) zfpiC|qQh#Z4Y;Xj(27;<0^V%H007@^573i&XEaLhhDyDye*e2nPOYQnT~qBo&!Lz8 zN93ph%+P7oPIdG`HM~F_R!qrM)Xa?k+GTIei5WXmr@UJcqkxt*a}mYf;@SL43Bo}&l;zV8I+ z!^-va5pd{s19f`a zUR~tq19Crl*oE(U5y0MDw>{+Ho#-@jb$V?`P*(x+RT6CJr`U@=mIkU?GB@nkbldbT z%5X-!1Fr4?vUlh{^oEd@SRWu8cOiY$?A-_Oh9O`Z5Kpm<+HnzcH zA&3(G4%JKo71*WQPQE9!HV=-d#qSO>5BVG_qn@4t_be&hrhRXOULzHh=f)nO+7{0P zwZaS_k3In8HNNY$A(I1aV5i;z^cIT82$jXf?RZ8^VkJF@9G|IElrGJK4kReGO$TJj zAXAXYZp{0fj37FGNlJz({c9LNQjlvfgzOk0wFGo_x@)X7#?HZ@j33)Kq7&zeAr5W| zIiS5E{jWv)XSRU=d9wv?XOhtma^;Yp)I2Tttz)re={L3^P>pCaHcUcGE}UuvdGdQh z2tDsc>4Kjrg3#pL>)45=d;l@DMREFFLSGI&B^?MbL^q;L>!)_|%L{lvqJ>5g?t7Jeu37m8?K2b~$A?L)4Tbc#;s%Vh$_ z@A@2OkU?t`1UG?{ht86BfI1i{?c>|sM1tc(8W23S1e69gHb0E7tZ0ZLV12~WmId9u$QA&S<*hY4b zo#aba8bao>A>?i})ReYbD6G*C@)u9b5CNTd1sR{IX)&u4N8RyI32jc|jy~E3)rfXM zOfB(ox$$A)r)<-Te(U7E5?hRk)(~m*&%I4sEOD)E^f3zuk*`!)Kw5_*g=0wig1I1{ z&>u2%y-+fqDxF~ubkU*iI2);FVWCope9rF~^2CK&JZ}p;Qwt-N&yRDn**Q~Sk1 z!`WW*4ezuq*7JK-T#$27ZZw3eo5r?iK6}+{wa}h2Ms~XQz`J9)1}0Z6S4R!^du^8| zoo%CGWijF{$HJQ?=cBU2MTf)Bimq3kuHSTe`lkKsziYAmRmeg3Ts+jDvULyylExBpGsueK0NS?ja*&sXhFFVsu@>%9)<5pmdP zQCJR$t7f!sTpX1w9{Ic|+Aoz%=GrZI4=kB1GN()0SI~#nr!t>Iwn1l$IXXQnUhXwm z@=lE?hyE}wb{Y@2{B~3^*=ai6X}fwZJrl;0v!>K%8#<}Q=AW!J%J*rkPemTa*N zWun*d#yo1w8za}qPD8ILf3xDgqjKt8(Y9c7QapZ9vAHUxEo+`lc9ehIE3)!dyE1gr z=!lNDJb$)a7?gQ@(s*v6W6oMG*Vu2P<7``omf28tw!dJz4WGzkUJaC)T%NSG1isjA zzc_0}oyB6S`Qwvz!;5D7Ck3Y+_ujDEO~U9`P@((?LAXLMIQ?RDC}=<@Wr zT(Cc%KkJNrA8*e(9e&Zu7PC)J{Qh1hioUMD=y?2HFUNPC-zekp7i~WOq8q=xU0-#0 z`Krt7SDnm@f$Qn)ZSPkH7z2 zZ@+Q<{y+5e<==GulYajCcRlm_%lof7(cf?H|F@oBA9X^nPxSdcWn0*xy@fa0zv{^Q zY4V$ANx2blc+-6MSt0$u3`c~`=BLl)Y5Xn!FHXFh79#8LNypPl2lH;=nc}w9Y4t{# z@3j3z&Ua@KMBtR-z-E}wWmY$M`CyB@Vz(*Jg^3g)l8 zlNMs>Svl`ebY$#0Kk^PP8MiK)*k!k1ZV2B7KreU6cHgd1S44c4Q7%m!4YY2^XxE8iFaDg0X1G*w6TqGoJ*^ z6+y9Op4iA^KAC0n(yJnzY)a3o(R3+yz5-J%w1_9lZ1cdpwHTxFgtFqfmf(ybvSy>1 z2DZ^Mz!tXPpE15qC&*K1!T4V-Mqo19!*k)7c?f)AiK5-KtK6a7v2Ez@)Midg<0bQ* zg@y#9fQvHl!N4{eY(pdlJMnBVm}=3PE8@O^c_fxO5+dpVADTA=_qiVPGxw&GxLm;h zXr2||h=}r^jIze+P>1D~Y7Uv7>;O#A2G12>s+po-re4z$7AN2dJM6$5kR8e} znC6{2>TrR_LU5!l-VeEw+yTRY^T4(NoGOkN;2PSGuDXWJz#2Zd%mXVLX6=I0A~3m! zYzev!yi6_R3i}fc!6zZuAhJd8@c^6w_o1EUoiPHhIbfdztZi*~z(1DTD+dc#!DANI zw2s~T3Ah5xH-r^qVMDmwFq) z6r5@s4q$icX(Dro4J@Rmc?`6{*S+pg{mc&Dn8z*nHMHCpiGnWp2@GXe*5jUvVcvKK z2LRujr*|70H|P^~AjHWPQg)xq!p9CAxF))Bz~r{DZ{bwUTfPgIj?8n}4xl+*`YBkR ze(G0;=oQWpV1L`Nq3y#mku+SOSHLmNt33g4$MBv6+tFSR?mF;GUJ_EK2gkJ}<^2?X z9>XJdEO4t>Fk2Igfkz&>yS%h%WH{?oOUf4s`ghyVFM z|K~sb@gJ`rn-4#(AJ>oT$Mxg-Kl%Ds^Vog&W4Yj5uXWV=P*JVY(OvKRW`TJm)GBWI z*=jaQ?}zURhbyvVxotbe-|6e&zQ+Bwz+O?6``Z=D>~_?%(-GCMOk{0kn^#4@Ue^b^ zw`*aT8s&n#Z3tNI1PhteiEz?Vg-FTL5oRkEdRP->CPl>y_o3C&V29r{dK0 z5g9ERw=L9HI^5s?t17LA?rh`XFI{!aW5O2QDX)RdUG!((5B*A1Zb(!bfJ0=uuLi2r zTeO$9wfNqWF$0b)A$RXCr|h^~$nQ9RRlQ{k>(u+uD^KfN9*v6ISGR#}JZ#Z5uZ*gi zA0oA>!$G&Dw+GK#lIV(sNkZ028<1Ev{bNTT(A%}#6~3DHeSPHqRxbo}d2%SjvqknE z<)YV4jr)8@%{zdZTT^#XmE%_Ael%~3dpQ8kZm%u}9d%l+x&XQ^AgtL$Hm{-v0MHiX z-8)yErUw9xG{8Rn$_GHGc}DbgZ(cHhziywh_`iitD@mXa7KVv3>-`7anfC|aujcyY zM#N9u37?^YjCz|XAfC4Ohw2QzhqUUTqehvWy02!Z3t4Cagek8-P}M>pp$~JptpGMF z$P_r{;SedVMrt&C1$9pk4**wW?%QHN&oup9wGP1C3l#px37(dDd4x?R{own8KhJak z^T7Zcmw)qO*n8;s!5u2WzP%0v$?qt9fDH5==m#$K*vXu!Y7PX?#m-@i?^A$p zu8%GxuQ$;hq@&VFvB@3s`wA^@2yO5jfUpBtjv+_p3T=tmMt5rF^h-f5G+ZL;{KEaq)6=na&Y@mzV<)x75M^4L1pAAfcT^k7e83a=N<5} zk(x22j;jWlaQl!eNUN96Afd=iUFKEc$BDXAh-W@lb1UIe2U za@SXX%6mBOX%f@NA0Shd9hf(YZ6fgZ#4)c0duJglW*^A0ms%Jjh#76FLcUzS8$*^8 z4-#xSGt8YGqTa(UEy!mK@pB-O7EY{bp`IXO9_<`sYg^$QHEO z!UH8`*q*qvRV^+c#^@W;A3#LS`^7vTg7Fd^&ecVi{jh+D_931->_Q)f=m&X3KY?&r zJ_hO-ITn+d{$-m)5b5sJHf0JWDWpB5tTE$i!FvKRuVAB5tIz~lEjgjJBN%YcBrFpu z+lEJwnioZ)W;9Wl^?6s#6CqUIT$OcK#{qR-C9e7{#7TD+$xg z^Xq3F-Yq=MyABsy6#knoU;fbf(8x(u@mUW|L~fyxb5qU=Bp>|Y1^Sp>O9kYzAraG_f2Ri?xo!g~q%S?s|oucM9fL>`+kVUUT%m z8lS26sOj{e@qCMIPV(kU&Btp^%`0MU8xw1dEELOei~de>xaYFB%^%CNu%us6mdR>~ zYSFQ?zm*#()5W>m*jd_XYRhr4v<)Bg)OgfjeJI;&i?ZX>L7~O|U%hC&H;)Kk)2-QL zr3rem1l{Jbve>_CyMEDTeNHAk5uJkR+-aP%H;X86$Qfu4T zu+UF0ztFEO88v0wW)}A>%-iCLwmp5OZ_#hwK56qpzkU8ik8fXfdV1H(>u*|p{+k}Z z{1+8}`%|l*|6SLw|3xo<{$G0i(~EBZ~VXi<8S)( z=Wlxc`R_Xa@^>AP`-%R2d;Yi5d*bEtS(ne)2i=``SC*GgdfZyF=QnL{@0vWH%07SM z|M~e7zgq(LH;vHyYX2<%wk*R3nJ3F}hducmJzjM>TjJ%o{ttn?Gt^Ad#~odA-OK%|y&-SitQK)y@Xu|tA+CK6gKPln)^?F}^t}Jo<_NaWlRc!A$@A8m$ zJ7>(#=NqMbpEI9Ew%BiD{CcCYZ8Y+pwx&nTvYAH1wO09(F<`4KpJ+1S+2mA?)5CnH z(Q>cAHao|2+zbY(Zp#z$7J_m>`@IR}jf4L`d;irmOLAlh zf>C+zM}oSCa~kg9!8vDN#K+m?G&67VOe6=gz!N|Ng`!>6)m_zOcc!igP{nir%g7=oX4=xem;clj;rtWr*nW-uYd_QMvlug=FYhf=Wrg1wk>mmp7AIDOk zn9a5t#3&pWS&t>*64?&dq+W<)U1AAW7C1QeXId?O?;}hcL_8l5Um3(INmOIMhS1Zt zMQLs?*>I3y*$&T1&ajMIgCmKZiND1Q(k2$QtQIj~hj^_CmF>zzKJgbZlH{1E5hoLK zNbU!X_3OlqZXjHM{YQLadapONIDSC>(|{Tm;gJ(7#ETW#AY^N}BlyRY4Hyw|t<+_{ z#^OpFLF^H;IoK!8aYB{y6UVWRqAMHw4pQErlQ$IjpDVmTa==CWFBX2%LWwd3N(G0M zL&DlhC|O;&Mw*X-m^3tD3jZXo@hOYs(6FdO(<>k>_u)qtBJs{(`*dPY86n^Hd9Lr}pW`n$dxKb8c>@wRYc@hKiGaEiRt5%|Ikw<2z4@1JydQR%W zqML2XOw7o3n$)E&^_M+F#Nb8ph9dcxMSSkCJuW$$6WDMJmw2BXQuE1kiBrY9gM8c| zPw>cH4~dB#;hW^V8FDP0oLH`PO2nci`;X48{Na%JM-XHz*505vC4{we)$D8BL z@#gp+`S?@gm@F6+a(gId_i-n)hg|Aea2L6QEDmH*!jOfB3?#vC`k672m3$D&T}Z5c zSv=4b0vdiwXrVl>k(>vaGJyim>31_Y%#Xx_6+268JHOddj*^SRn`24SO=-uCYvMk7uAIe<~{)7|b8Zb&^W6QC*32nuC^M-~A@_EJVB*eRDJ-YPn{!*UNw)E(tL zF!oV6a4Ek-In6Y2cb;`9n!-LVvY&D&5ZAPcu zx(bbLD;10Id7q^RI3xfK*?*F!pT=h7b1wLAL>sgbW;~&)=g3(lhiW7FFMQ+ILoJ7p-kqVr3uc>5($kRK=(;ntq6fh zGE%BjH#XiPxp9J!vPk?<5+X|$Oh^Ps46JfJ-9hBZM7~GzDWR@B0(M?6;gZS{cBe#8 zPeM_y8YC`kN0|UzPvB`f`-ue5I>0{3nM=}Xt85DikZvdGE-gRO5a(*hdo|iZ3%15~ zMGgUbL}FJ@lSdncI*CJqDhWhcmH4fqXR#Y06-MeIQ6?G8kRX{PcaBvg@zO~|CFg^K ziX-vN0ZEca zQc8P}`VCDIIg8sj$u&uv?~<6X{SgVFTk+ueHmXI+NBfXu(+8|4ltm7gWS4rkge2Os z>y7&4Gw21>pGguM<=FlTd~s8kg_cU0gq3{~kbF@$Ri4vm55;r`o9qgFtv{EtOM-Kk z#HP&t@nRdXDxnS7Z?)IEumVE}Gl?6^2}zVx*!-VFw{_tNen4pNc;6- zlCUcKn&dR5UA0KWLlX3|N118YLA8mh(@sffp&DYp(LkPM`%W!gXlc^U!U}DK*GjU< zkUEsfdaKz+g>^LIS~~e*M6@-^-DF=lG6^KE`Y}mA34L6Vn9|fG3IAa=p{%1c&qOh) zP`(<1I-e1V$sfp$(;8}V0~J1-70NFmvNS)0BVHA?3j4Q)m}Q7(NN7;THuaP=5ysTJ zJ4Ch3{;oGrr5(i57qqQPrI$|bl&ceDIuatI2DQ~eBD+gFB+iWy?Wl#M-h$a=-Lzrx zNHBr{nmkwY2b8l7uiitwJAm5gqS|ev)|9*r15~3)nk2f>W_c}%{Vn02`urTg?e){J zLzO`n-FOP8F+jbxLXhTlSfRF{O-_gKItvVVu2YlU|3|0}m*_NQxA7bvf5#(98ofZH zcY@kvi2?5&4P+PmE}dMKiSWT_i^=*Lv$@22zeaa=iPhp9qwNhQ+cOL$@$bn)jE?VP zeexLnlc(66yo2@CHKzBT@cRQ?T)d6#`3sz#UE}29363uwVRw3q^Q%i-9$#U3afQYC z39r3O6ZbAwYaGwlSgv}QPfsyeun%O{{&0bMvPQkhws$%h@OxE4SM{qH)VgSnsZ(#5 zCWftarfIu7><7OtyM$Y4h7*K6+D>bRYBEOD8S(sxwmpO{$*AkJ!!s&{Cg z-7zY(%NF~#+36wZ_AzKKFm1En*%xkOiCTS$aeIs*KdX}s#$#SLUZC2iElaZ7-U{)w zi*|pCL_#mI{!V{{{&$ozPN znJijNZ?RlFppD&NxxK`4eUsYRjNfOQTb#}xzV>`LJ;rupHw7vBewp+@6Nt@q3pglgr>h?Z%7w_Qo>N!py zyu$AO6P(?950{rOaPsUOoIm*#yUS0od-@V558uYclV^DF;63baKg86+cH&_%WuFYrP+On!IohJLq+P7f z(U4F_^HbUg`)YCpNeJE>UBPF+PN>uVl6`taId-zhNS$sjFqU<-b-Ca>WPXWcwPhI_^j19IKSn}X`g7XOgndLi8%Z9F;Uo?5 z)$E*LNI9p&Ysz>EyGxz)H)v1!tVtOSKF?FWllp6vW(zo}$IcGXY=aKpW#XmO?D4s8 zPvA{^u=(z*_W3*w_#8L4sP_lx_67(#bHw81(;T5)liVj$7{fl_EdxG_eEw^Ech?7q zI}^0{e&}?&d@dIp=c;JSJHFY4#dn4maXhN``3{h9cwIhM9lp;w77TlQe@MQUF8Zx1 zG7`c`5UUVF9ON; z!!ak*#+S14DtBl*xHm` z_PnPYyS%rHI>)7?$}!Fua_rf@h)1IyanT5O6AuyfQm%0fO~gBZxRcmKkHs6K3We|JD$6r` z$q80PKx`nPeZ(6>^~BpTL`b|-v#B$$jfi8a-XKnsjUDW-K+0v^;vr#3_#96>EW}$u z#%khI;<133#<$pa#1JlVZ^h{lOS-5Ndn(P499JfsU+2`wr=Aur+eqA35o{xyB?M!| zkfhI5mYsNqv;|__6dOr6AnIO^P_?LMyT*E?|B0`}o5F1pdsWgM_yMsF4{@efj)_I9sRv1wSpF^FffGwOC~~JzcHEO!5c9?=F&*1n zuCZQ&WfRw>;Z}*S>za?EE8K$hJLCz(sh;nq9@Z*(k>GuWoIW-h?im4i)N7 zC9fh!wk*Mq#AL+NWwzHKcksxCbbe-u_ciu+#`18t?jR?dPgq|jl1*{M)a3OV`BxyD z;D}ch35`n5U`q~%z=g&3nkqRDv9v6LnCuhratK*phCIqt+sKj2nU+HCM_xycTqu^w zA&K?Mv;o<$<&c9p!n;`~byYA_DE=K}trBd?Z_sWI$+^-#OgZE0jb?vrZsiY;bn)R$ z*rhkeo8!&#=6G}bYdHSYI956+AeSkjoG+wFjWhgI3kD>7Q7OaE{Y<)uVC1sc&*XVd z76%*x4cWDx!M>_O@)qd2EEbr^N{)nL37I=3mP-(lCkT@r;To?iX~+?@sQU`?EK@Dz zq3lWcBo6Xf{wKKr@(v{DKswPbivZ>x4)@C_94s#NUi2x+8KouDea!~Rn<+y`9 z>y!U7E&<3M=-^)^Fxy!Gd7#j*bKIL~u+LZIflV1gQK^ zLIK$hL0JJt!6E3$A}jin9q!^~A@MM^EcHsDcsHa@`CW1`uq-RbHXGD~s2)xt`4wXARuftS4%1n@@@GuqZvro$T40R}A zEkpgt?v;@J>O(IPq-tzek?k`MQR4LqLGeBTomJ3a>oWPRq9_TaSzcE1eFW?aSrnjd zvt{aAJWR^$Us-5T1+4khhlP;#lasz<-tAb`CRVdD1eNZx~T2Rd~qNwr;q zf1hP%e722sIqX;26{e9GRm2-Yb{q*2pnRoD07G__>s89rB&lWpil>TOhb!lzfbED7 z9@>;c5{OeDT07N!6w)RgmQ7+RiL^tOWBTGbVp3M>oidgkN&ZclLh;yOe+emM|I1{v zN4d+AM403;U>oCrc0+k|6OSG2j(ytSf?7^WpFrj!pJEZ9v@nefC{}q}O9v5}Vehj%0zzGbJ9c zi@>qq8zfG&8zG|N-C;|Z0TRRmUlvVB1jPlPc98Sia1JPcoqd-Sp#_p7p-wXTIvi5q zG~oKO8@z^?&yGhTU8vabOZ+Y*E|Fb_tb=wT2`D9Ol!UgjW0%iEmn1oX*XWVdlN37b zG?|_x!mh}olH~1(*^gm^Hs63xQk}4#P$oyjEk3MK?vU3|cO>kR>!C`0SWOaWyPqx$ zNG=F*!>=Ul7s;E!>nbcKtU3rtRtrM5<0hPzQibqcM~k z?W5A7OjWc=dR^)&6mlH);0HaZtiK==P)$h|IzTXJp-OpTmKnrt)Dn_viC!=lqg%reU31&Z}HeD-5p8KTweL+w(IV2Dh6fKH={YLj&|C$PH% z)El*Qr+u|Kgv&P9sGs(Dh=|w5lPN0ABhpC08=_s83H=^*(M#j4H(C?wd5lhFhHhNJurW%*Sq&Ofw3{{bYAb}j z4m!!4pMAvbA+&lIW{Z8%X~Lsklg0oomJ@Xbyq~)7Nr;v{YMm8&{VD6AzS$qG&JcEI zi5~4D8O~52E)mzn3u1_n{oU@(($Ft)ll2Ub(C81*WM6eyPM!D1b=pjCjNZ6|CXXuH z)oPD07_QK09HZP@pu@KGdqeajq?Vyj=u%z#(qw&0t&hQd3&&4CQeX>L{ zYNN4{WWQ_lCKAqRgVu0?2LJOGQ}+1+tqseU1%>$pQ%Nj7U_X!Mm`)@C^ATFR30mV5 zj2E<{`8oQ>*H|u>n6vMe%N>s!443zL?Spi2VREv=YI}zE;u6cz392W&etV6{`8{5H zi^UnwpFF^NeTL@l0eY)vSnVETct*RDWYVX%SdXu1M zSN`Ml`}p`Cj(N}OnCH$fF}=8l`tBb3M-MRDTw#5DiwW&&w!Y8vw`rp6(fS6<%>~BW z``Aem>FqtVZr;Ti@4Y>LiTV8(xOwypS5Ik|FW$lZ>yL5z=tJB-`xKAve}mKKpW@!r zPjKPr%9U!ppnqI-OX5wDS43ytj(Un#L744$Ves3O4(c`rT;T#pdt6FW=Ia%}ho1i%yq|aNM&y6esc7}X@_TI@ z_h3O1Kg&XdEJCoYag*az%(1#*qRO$SSe>F2a@_N3&{=*|Vf#4l#zB+gtAu3Ycv~Mp z5>IDZ5?+y*gmtSjw(28}UmTN(6{@npk#rHd9J?t;=(UmW^4=PCPduX$6Uff}OdLVA zcs@y4ia1`c_R)a+?3CAdOh`eC~-_G5ZkE4VS;-V2_;k|ZY6G!Fi8$^ zpT{~&vU!2Bdc@SFkl2&B*dP}6iA5t~UElK&5K}qfPG^6ePYFkyhW4zc?IDn>|5eM@s1D3 zA$-=6tMHT8OBh@CF0mKednn%il06VI_0s+T?%Z650l*4 zEej8${Rr1Am!V690A8z+3!9}9eAaKNhys8 z(jY!BOHym$|KvZBkte1mXC?0_I|^)f|BueC{NeG&^Wn|$=6G|wIo=%qYK}iOj!8mh z31f6OBRj)omwzT*Bq$!rq_Tu3Dy0+ank1c0!w{9RFXwXmX{e#Rp2dDKk5Vp!yyQgS zXO{Pg2SqW<-!gH0c!)f|OPHj60;DuSv(zIlqeT@)!9YR6Bo#{p2mD`s?OmY!OQP^yEXYEM0%gxlC&zPXIHx<1{0*|pKF{_P#1+-d z;7}*fIkaFJI<&*ro)@x^U=fIEnH==uU1TMpHswwiF6;v+q8G`fks(+u2Goy=vXXnsPLd{WL>dh3-nEWBKrUk2Lu*?ixSs)+)l!Veg z^;~w#shg|RV`i$b4Z$Ci{!Jbrb?tX@8lZGw;HX91d=PJFGJ= z6Tqs2iY!Q|BwOwwOiQD@`v|O%brQH57Ak5$P|v>HBZ*Mh76NHY+=9hznEl|C1RU$s zuR{{DhoDRnqtV_8niZe@X9qZ>{%qZW$Nyx}DK6Jo7Qgdcpb+$H7H!XiW|16_oaCeZ zH0fJec70KfT$#GF0{DEcOxi(EWPPl6c*xiQ0RQw!L_t(P<7VN828or%esB@#0l|EY z#KmA6Ls%>`a!DvjC~F76Ou^LPbI;#Uuj(vIO^e+1p$(Kx4|T~i!RsB8 zhO)#?_3GHK(N+!{$g(V*q{Sn#Q^X6vjj$&KMHVngP6GBpMJ9|%rZw7!PLdI_yetV- zOk%2QLfqJQykBL%h9>QV#7y!{7$NN;2uL6(f7N2UE0BB_s)Qf%_`b5*l*vO#y~)Co zOFNQXaFQ@kHAu>85z3wgpF~R0#jRRFqID^ojfjL-T)>5-X(Vh8NuyTbwJyo2EYwhk zS(k0HI*=H~681E)K{eqSKP#fP&+kLt5Of`on+hQ^Ijxrk4b0^zn<>&7xLap^E)KSH6!>W z# zlMcM3%Y!y#4^gT~ZVbr<(MEySIg+@Vzb)!Tr*2~jVHLIzM_nW&=~bCjp!|-Ibm~Qu zou-a>iPTY%36ciwF`};GHj;2cTjqD_I&M-wwGQky+g$DN-WKdyBVBNC*#=V8KTk-5G8!xT6KiI2yV+yCvk#yJ6!-VN!V*W*_AJg z2Q0rSVU&hwCp{!>*(pz3>WnDs9E0X84JQ)DtYb7sy*q;6S)kJBq0^hARv)IZ%^STI zYJ)D~)|U12n#r8yEl_K&G3c()7|c2xlS&y-mEa19$`H0BUubkn@-c+%>6p`L!C&x@>Xq39gR_I zNfPG~s`VwJMhDGS7mY?Y0K7m$zx7(E^hc;mIITXf?M%?7eMRj$+EEWx>L~6_(d^aH zs7_EDHPLR1J+@J9uc<%Yn~c$7UuC)j91d3K)pzM4&#*g$!8&Wyf3@F6$iC>X@7f*q zU8f6cyg_X;MQzyU`2k|~SG_Ys#J*{_7Z^4r{EJMQ&Jhn6aClylh|9u2G8)4e&QN1t zb_PAPnPr9Jc(7u53+`ok5r%N=?n$q7JvS+Oi$KR(`|zTTm~ z7EcLT%wYLDNz}}9vxiu$k1^QYpm{8zc`mSAJ;3hh6r1$}j8-R@Z6);3HO`Ljp?`dd z(a8^(A$AjQR8et?dTQ*$V9$p8-iAz1#Bpj_npNf;ATG z4n^Aqa+ z81ZV!Yj%A0&oHE(C9lR{c}_iUF`!LEXQ$|H*3|O|%iRp?-8qIU+Tns_AM>4ZbcB}J z%!D>F-C{D8{0%4kq)n|BSj;xGwKZ*SM|-F3jQQ*>7VssniP$8coyKB@PG_1XQ11_> zsQ0(%^BvXg#kBQlngqW#8$y{3(Hc)_<4e>VLj*%f>fS)mq`vBW-ucXUsV9WID<&A! zSFqYMcr344lLZYvn=L*+d?)*z25Pk>DmC$#;=8%pN4w6kq1l7WcS|iiLbt{-l+V4_ z9He2H$|K%y@;R(``Ocrh^(b2!dWr9M-dp2)sw`pPSiU6m5Ba{3Md*o ziyYS^k3>-EqgdtGE_t2AQ<3K+O1uQGj z_srO+frv)re($$|k$=S&rki zp%8;g9w>|7C0CVCtRkKWf|s?3ZS*C~Ws6ukfk#|pu-&dq=*xHFL96l_+w2pUg~Zb# zF_OnNmf1$Z*s?K3a%xnRh%yjoQ^YI&~DO55bJ$q2ZB(C>pU~c*tidg2(T+F5yGTk186uo`VAMf4Y$< zr0m4ka*sv4f55&Io?xnZVn_#(gmY%S205WmZX~(E%4}o7slerbu52)?P<})7$nq(V zMIMpy#RFJLJ%KaiAQ`VqzCqm0HfBw7ZOeiyp<>A+#Z&r#{V3t3Oq=|M{8k|+P{|kf z$wBXuXPdUvLA{e>{IR)}KRnXKhs9#~NB{i8Nktd)UD zT}oaBJ16au$$OjimeTM?u4!XWl28{llnMF{sXL>@zL(qxJS6l{rf5QAe;yLprpd7> zgH^C$myI+Lmw2>D{L6g;KBIWZHmGSb;$k5EQh=Rh|FT{BfrOeV!qRgrr;&QSq+TA> zRa!%Q6~}bsZY;I6O9!m2LbCT6QF9Q$G$Gp7D`a_E)G?e zLlB>}cz;=3Y!%+)rd|x0N`d|3KsR(`b;;$xGF*k^Li&h=z)*3=A+cha3U!;;bhsM( zfdJZ}UKPzC7>*&i6f`wNkpSDa*=IsR#QVmSkXUT9PMgwvXiAOXoCLLtct~Vz>VZUAAz>5UXByIe_5s@}UJ(*& z)-RA;lK7Tv65YUuS4f~M7GgIb5zWzFC6|Iry;e}=xwsr7AraETGW8drBC()_z`9Km zBHmA3DGmuEZC$)gJd#t7wos~SBt0Z}Y9$~s7v1KP3a%1%lh7QgEu^~Jgq ziJ$LzsIYH~B)a*y0$(QHNtR=42rCY08-0>|jk+gM6c3ZQlX`0Sahs$)BpGfXsLBpN z36~JVV3|e`Q9mTi5@L%aUc6Zd@}Pk#H5_WkNDna`D_1Ne6F4|!q zm0*Oh#b=RrlC*nhHoIteb=qkUZML@>R8jM1FdLM+CLtI6zx@=!=PrzwK& z1VJN0o#iDG?ulh7y&>un8l=%d(p{tr2+igU^?`)P8Khx_TJ0tL(Gr9H98qVDq`rVR z8K;xb&CUt$laM@1B*QMc!#O%KSt#-2kGAOY`=r0YxObE;JPhV17_4^aPtMYb>gDrKTAFTlz>^BLoB8gu^+KMC=mwXy-gL;xGZA$b&%~o;j%DK%qdw~yQQie@M)GIWk6G3zUAUNyR+voB zkkEFf3);v+!q^<~-g8VVr|2zrX>Neg@EG&KF3kndnVn(0Ji&Z~b*i}mphTHA9BP99@^c82BAH5SL$X|n0T`6&i# zmbJU2ENuVgisd}S?(`Zn+VtvD@{v5i=Hd*S+o!m=eFsOh>*ITGWApf3oV<92hgYBD z;iJ#+^zm1?|M3s-?B$>1`qejh_vN>E{{AoU_>*t(s(J;gbD#jIQLa7~G&s{fmdebbN~WWKO*vu`e$%UtD9nI77JFV7{f! z`Tb~diRthn&CM|%Qm4BO+Ojaiew@zbKi0eDJAq{m*L)X9NUGHtYLfS1x5kkDznY(8 zOdC8}J-~wZPUpO5ea>fcgXMgI@zF8HvgkouNQT$w(+(FB%4%@Vww%&NPSbNuNj%*@ z!c4p&Xit+i?W#$;9js9A&C!;H(9R08)(M}t9Xj0&DrsH|39-g!k?%Bl-!=Mu3|f4? zstbhEIYQcQeX>HkDrGJaOR{&qLmT}%`hF+%n#v6M4EB1dCxV1St95zZq=RNMhcn=_ z&u6&BXRX^FLT^q`>GGZI^F71!QJc?bozF7gDOPoeW-x%&;PYASAur+3_#P2Ytai1H zKHn?8EIe@B2pV-Hfh=Aplx3cJIT(EA?PeQhw-2B4H0uq%OKRxGe9mJD+b3cCIPO;Y z?&3J)BpqZWB$I>?Y&JMnSJSa3l=oAM@3N?au-Swe$tHj=4e!{Vyy8$aeX}u&+Zp7T6}m7yLqQK+NM2 zk4S>*{m@Q5kY&ez>`-^97Xf*hgej^J|C9HbGJ$WiUyYcUlI2@97`#s~pm?A9Za3vi zF7Z?#3j<~Hi69T1TtE^>S1n@s3h|aK46r>V3DGJ1B~wG5vX&)B9kHy0V#=qB5oWq^ z${@EA{$ml#IudHuEAc<^tZ?9K)Cv3J&?FWw@gCypGP#OIo7{JaP5HlRwaGVVyAJQI zQuYG55xJyJ>}JX49^RV?%B)u*P9_&1M>KU}w$NlhvkekDnK)lOj>UudKsP9hPEJD1 zDqi+%uTNehp=veSp-rAF`NK4F8M8_5EcHm;TEw=JOWNd#B0u?=t~cT5#Dmu(C!o$P z2?Nz6AJ@q($(;)1ij@kva0HbcS3G6|@;;s1z#`YR$$@e%Ij3ycBi_!?_6@}(-(x*i z_($hf{_sc_ADVn<|Ja{@c)VGBcyqit-W+d^H^=|T$DbO<_A)tSWO837J0*`pCIdxw z^WT*u&IAhz2VAubH6xSqF;wx6$g8P`giMI1|CbMWjpT|b<1G&2YCe-L9@s`XU9i~8 zmD9=XgNy~Wm_bpz2xQUXFq=+97xzjqB*YP~+1oF?&MzS4XJjHe_b=WUML7JFd=i@E zB~T8aD2M#aLF0XyeV)(l;STRF6e+uTmjI2xqUfY`?Pd5q_1xf*XI*)N<(jx7A(M=K zlnXgz*|rk(kpixGKVm7MeI?Z5=&A-N6CMwM~PzKZmGcQ2n>yEx`>j`7E#E1 zuR|ayvT!4d3q`mGlBYtFI(txL5rAN6k2*Dqlrvu@uoJHdky-L$P`qK`+)90i zeaSl5Ux$_sn>sRF3wi21S0J&lBtf&5-Y-d`_0$`J`gCpf8}BpA1cL?)%54_d1_EEV zWTm@oGL*I888}Gufs~;bCR~G{y)2#xAMgvB?Ob? zwJ1>!3folVeXfLTa#@cRpvW>6mu=K-XtI01OmOQ|Q7H47i1O5#fMV8XySVET;7fQg zPjsIZMX!FWKMxoc_g7119mfQfe3(ApE@+1&d5+2ckNnkEv z%(4XVB11$_USZ$3aAfhwWBCz@8joyHg6@mAM}=ik-#*Wo5+>?(8D@#ZL?)7bmAW7~ zQhA<0Uls#&rIAj0A5d>4+J!|h9|*9fE~@Sw1WR1hNuCVfBPpehsh<+{VDLYMgi1n3=@RqT5h770 z`C}RU?@%Z4ir5z<1-?v{lW0a-fGACn=chZvERsiANC_p@FYVPLu_?PADztyaaIjYk zU{NpPp&@MwNeE(H7BNWBNEl<awhONqQzR8b@mi`jOUgw4#^w1XfGxm1?j z^wfvJ=fGpRX&#JNCg9oUY)430EfQf_3@ht7wyRBoO#f{iZ8Jx5Xpxv(;cHI?@sx1NvbaG# z3P}x{B*&CTJZ6N#7%HF8JPN)NtTUpTY%UvWQkL>m%@wcKDiM)-(CwU{0mYswJ z66p-(sYKPZ+)P3;&Uym3i3-~wJHG;wJ(J~0pXVbxoeYSBHc9pCorMx-*J#wBB$Bs- zq|)v}tx+z@A|aqWw}C>PB$Z`msEQ-`U@F@%%{;C6q&UxLZBSUW3ZEcxDS#mLXxFT%TmU)`lN+(C|mRSHeXE zI7noHqMzoOs5njbYYSn}M?l>L^&#wP9gQ0GmwHarQSrKII3%mtf)jV)upQ>0hU%b` z<`M9kHPmPa5~Dk)_0t6nN%C25^SV|SUTciF-A%n5oOTZp+bla?!`2i|r;oaXujma? z={1nV9WP97#TeDSG`aI>TecGSRn?iA$MC z9H1@}fTLqHhI4c`_feT&^86JhM-spN6!Y12`Z+m%h~DlNo6B2tP9LIw{x(i7-o@nd z5soe%Vs!NiXZJqB=JrdRTz-nP#~7HBjE2&z-mC4WO#!YK`qNZ1#a zW4G&QwdZK`Hi+6Yw4xcJG}KiO{n`lG{u&AUuqmQy@dK_*}-^@YJbE2 z93kmTyn42eec$os2u5?ZmF0D&@H%VgWAS#8MTh|!-8tGk*BPzYmy}-?R=Nwccu#eD zj1gsOPrK-KCGP|Ky)#FPcG09w496RcheJ5aGxWv_^jEZ@=@A+O$}!ufJIp5y*0)-r zH#tLnHb;H9LuW;O9q}GsGak;cm|W1_E-+k3^5hdVk1l!KOOr<@+Z%Lt8w___^j7ES z&Mz=KK2N<7rt5PoBsui)J+!u$7@gf>xjARKmsp+O$L#0{c9P(Ech2J;ri*)6pFYN9 z@eIAQ$5@}=!+iS$tJ4SANv?sjM;M+Sqq(`lV#RvSud!I(XSpov{BgQ?HensB#bbzik|zI}j`tM{;Z{tlkdMvtF4!G!_&`yjK?4UIo|o;b3FU_b3A~2nRG&{j;eT>#* zhr!W#nv8uQc@x$t-L$Xaj?zt29qUZ+(S?{Wg)L_COJ}+$JsI|p__8K<%-sCeQ$=yZ1~eKeZ1 z&n}%Au0d~dfate^Kvj)e~2^>M9-I?vbn*{$6y-sMq+OZ}C0VN3+gnw%bKH=u(aWnz4i} ztRi8(T3r$_*Wq)#bYurSe}`;ClCb`yjgCKoCu6@%@XMk}wGF);aqOz|dXAO+jQE+U z4Pka!E-^+_?W5&!tZ62wCLDKUeC62bbF6m6bAt8D*x87wQ{G>XId&5pNQlfzRYC)? zeJ$#o7$Kz0QfHJ@P>;wjIObKu5v-t!a@9jZjG)IoREawx;^qq5Eff9~VhcTNqbea0 zqY7f;KFb=yH)@CiACcfbwmBjWas%-gkcAG97=dGawV5uE6o@s=LYs1^DW-5au9rAo zdp^q~uJMQ`16#Z~8<3DdUfo00>7u3(|AfR4g5!w^ZC@}ov1}+|CT))IB9EJfDpKMc z@(sl*~DQGQydcim;rGRF`*I?6B3um zW-E`lRLT*o84&A*5)zd9mJK?x@g=Zi^N$LLcuOaD2#J{;@oJEAi3wHW{bGd}(PV$A z;$=y`x<&xqBfs?b_^Gg5ojQ{TfluC-ms}Js z^`~3NR>WI`9FX?r@t!=(Iv{`XGY0XygfeCsd(?$^may%Apu1$XQ8a@BgZoIGUeMVVJ~xlLp_6ol8S6TgW_QpnyT@< zECN`s7Z|dvqi~0Ec~DGAv`ipFupyzOWP-jRI~@or^7$;vY;V5g@EXdbu?%T%K^6}r z3=_+-GC0gsSe6cjvPpgegR&NKEWJfWMlzGJ%ma*N=3?&&7oM5q}3&;Y=a>S zKl>%*2qp`K11M?%du&%p@uoTFyu4D(l*e_L(S1vWkT1aJ<8;Inl~Z~)3bOT0k5f~9teiRevzH{75-PzP%aQ? zTMitDL?jJ+WD~$w***^e+hsWHPZ9?4Oo#|%P1i&q3omY*PX0S=Z%({SB<4Q>w_$tG zSw~rRE!k{~Z=k4=^br(0Br&cmh&Vdy(qKz23de$FHz=#@z^=d&f+FNY5^fs=^Ry3z z&$1-rv%P@Nc?g@j5pN7nBMG36WH(V@$?kQM2g;PG6shkf3asC8-89ccNfI_wW^r{F zmu6MM8wsf(aVn>i;tGsI0sR`hg6uw%9bDACBfFgpf_vHy$$=s+;FTCf5+;}BOU{G3 zCP@(4uE0%qsY#eD#d}Tia*|Lk6tA8h(p(^s$$Ixl4yZr=c0D1>;=<2*9hWxfQ%ChQ zXGPU&LuFkh$|;LCrVvN3K@y{p&?J0*dkAvWgY5Q~Fly{qmwIwZj4DNvAQICsPvTmV zMHmNBQFf`3ypWh$5q05^1Z#En2T2jhZB-V8NQ`YmcASy?k@yNZ&Qz=EqJbqLiW2rC z>$j`48Q14MF=CR|iYZAAB_X6rUC`!bcRux)sWed%a!azWlOUJuh=ivJoy1obv?QUj zLy}x(JAJVWlDrbXi}!-cx}uommh}b|3x$|uoc5%V$cEH)iNsezbycOEB)vjpOA>;t z>O+!UOG0HM@!@#&G(n&x=V=>0`#z=~y||v{cc@A@BkClunh2^P+sZzo{n()-=`<0! zEmTP?UFt|lSeJxjkO>%mI$Dh+KENUSGB!r2)@VcGaUda>yf#Yp0OdxLdT78WVUFrG z#F3A>(}EW@ktdfk;s(rwI;SiZzeC$+pT)FMnM_Igl$CZ)`6St=Es3e4Ho~xvaH2neZ>BFHcZPsno+SE;edc6$^ z-QzdJYoUu;eSxIkK{x3j9!=9^#zuFHUa&!>*-j_PYr{F}?IwDICX&Sj?coN!(KwA? z9!#d_%H(u!lIA^-Yb+#b z^zJ;(<1ks>pnWpKYAcClZ!uUrL+khv*2hn=x_XTH^#hDf-^T3vKBkxN_e;>8CaWA{>aiu0ORZ{yy3Z{z0WD_lQ+jwerF;o;@W*I}5BwwP|uaeBgIx5j8O z$E-I)GFhO}?!j+QG46}U!3-VA$gV6b_-f>iqc?#cCU*GOmHz26Na8wv{%~ z8cx}k1)6gS88b(_zeRK0N0pyr-rJq8Fzy_qIzB;{_egGy!E%fGWQoprjP7)b_R$W5 z#x1(3Jzb+EiK*Mim`F&b#SY`yDHiJ^j3)OmS@4?0J#5w&SklJEr^gr^?=YHQpfBNe zc1tYR*J+~ilcO6q~cWVpD&=KLyMgcz;F8{!^TyGK}^UE^qX ziOJ>)r@Us$GA2jYI61w=^86I7^E2#D?_+s<4~w%KEKVMveJ+#jml$8%NB{B))00P- zoIjwA)6UQCo+;;>qV<)nc=q%sc=GnQ zc<}5?+Dk81Cknt{(8-9cI%r>Q*NISc?Bl~-GfrR}yYDWR7n z&%M;sl@7?i~I45qd501X?4m zPSXVObv}DWSDpu1;9aBHxo=3@)?q6RC2Mj)~HlAXrv*K zYUtG^7fhG;PWXQBKpXNM!1sBzk?^@)q9I;RjUF@}Nvp+iV+@n;{|cXNcf@g#a!81? zsw`%7+KBjWNxHIV-G|0^f1<6@_l_kC&oWtG?ZK<^8lTrlt{RR_EsptJuZu=K;TTd! z$ZKPcYsEJ2Yxhy)J1mGfmT_FF@_v`&m4q*XCzL-S&Xi3m#3h1@?0$-$d}5X`mc<=E^(qw^ z6=M7hu~^JDB)%*L5o4JVWeJHtYj9nel$Nkm)F1Jn%jiJDp1R^0N~~9; z?lOWULzDNi4J<>vas#gn$(bPezd~|?kYz|dFv&CK6018QWedrzh=F|KLzlQ+!YSEz zTF4V`Y8B$&n1@RoXUpadVp_rQ)LGy;(23(*n|#P4mL)Iq^f=x4qVO}I+^(;}3`6#T ziMgXQwK7MFMPr^((qiuJH*Sv zVA)miypTl***wC2^~Ga9D+^5l6!Mp%^bL8TN*u4t;uATEa43<(()lb90~_o&&0t$3 zJQD9O5kpIUNJG=e@5{*Ak~Et5T|(fNWI=*;P(C+Du1S7-V7fS@tUBAE>+D}uHaVIo zP~Hstpe)fFZ1Nf6VvSs}SR(HvhxCb;-E`wt#5x3{TWKzcOl1Ahxs^XW-Yh=6Io=#^ zjyK1f<6q73r^Yc=F|eO{1X##r_K~@(<3M)pXN#~h7K#Ts9Og@@cfx^8;NB_Wt;`;Z z85P=LHl64{EFQdGppb=yj7<6yJd_jylMIS^1Iy>8^V{Ye7ODN#f~@kwHPt;DDbc$vaV2k=@Uss2cb)@uUzL zWHOzfl0;k44%1}CdA7?U@W>ueUNZwN4S~aQ*)CZq&}1UNaEK!1EU>*9!$iK!-;&3o zOn|{_BnO64VAONgk!=zk5uoyVv!p_2 zyUcxp9Ft|S97$%J&-koUOT!fHYYr5)?@%R(D&67#k|ddcRFZ$?9rlOD`&{Jnl20KA zEkj)u3B*i=vZ~0d3M_)TeF1KA5C6;Stc&2vD1_7l0q}m2zcu7^f-y;cy-)BZUJL|n zig-l?5-d-J5V&wqp|5Tl_yH*jGsG2+|8AHVXUBCP^|~9ezaH zCSWgEak`VJOadVZtP7q;`{Z*-(66{5G!j6GJ6j>(_skm1f`sOw-mHY6oci!-&m=wK z3T^~N5;5vhV%5?<%)ljqsNo>dNDSF#lO&M$d3>J5%{*U`MHw9qWv~pF<&ms}Br9qS zA&F1Pm)-TWUy?$Xq)3u7`m{9(+hdcURM>W3Y*qSEyc5KAoaD&Pk?6^SOV~zO;dxmg zAz^j=8cNiq#LLyIvcN!_r;L_cW*daeL?}p1*hb7glTb$_Y9#4zc{cT7@%jn^@p9n1 z#qhguB^(k-T*isgHmH>{35Wj>^yeG=8sCNZPDI!RAn!Uxb+WEWnAghyP=OC-JG zJ)n>r7f8@G$}2HsL#xXBI{33nle(jB!zQ#G+af#fNqYB5gvGsFh_p$)=xk#^y-UJy z&6NeFCQ7VZr(Fo)j@1Z3fn<{;u3}5v;F!eNP3w^4g_1~Ga*Z_oKJ03UD7I1OHBPlh zy~U{qNI?=K2P5_o-(%Gp3E}`v_KVan$ruA3Rg&w#B~cAXTtoJ^?9L2YXcW7sQdc2~ zoJV5r1^sk~qj*9DgTB+bEL=MzRwy3E0LOybAl@dA-9j zcBI|>PZB^z6*OFuV%8Z4RYcV;G+8_$VfSM3a%du~w~<7&<(h<&Xr~K8PK&nTbx0}` z1hgx)Swm7AqT$Q`J+@&0y(WlT5jx=p?d}3$cZ{gjMAG9ul@+Yf1hr(0WX$%bJ9|f{_2+0zW*CeHsP*P7 zcZhapj8SIcc8)Qc%Fg8rH0GBWY$O){Da(F<)zM`d zOMWwZfZ@pvCYO&fKfZ^-;xW!P?_hO)i_?pHSe!q_@$Cc5uiwS`@nfv-zryi@53qgq z6|Nq9iF?mK#_Z{rxP9?8PT&6$7q7m-llOj-hNOA<_Al__i|_FAvv2UuXTQX=Prk>y zU;P9heEw6s{rNBO^s}$<;?p1E@kc+v%XdG)J8yrAd(Ym-y(hPLaQhffZ||kas8{!I zu{l1&@oJMMz#Xn8XpKhbb+)LETWB|^kKr1PUK`bZ6OHN!?UuwmpTih8(Unj|y$Soc z3ccNiH4yKfHe%WFI~<}%-ro_=lGcE>IY-=U!tSrxkJNW_MY~z^+z4@teIUuHgDrYV z4^dwxBfIHjX}c?n5`9=h@y3u4P+N4v5jve2dhHb?nRJ(Z-ycXgmm~Jy5XSWNB1nz0 z^&2CE(!odV z<_orG&bpRp(gvrpW1VI7mRt0v=V|ia$!vq!`UFj}zsUy4<`kXD8D>kFd_GFOCdM+k ze8$fW%U)mM^zsC&`2{AsYs_ZX7+>6Ce7wW#`VzAR?eOFlM@QF~pI=~o`w;818?3Ky zv0gvH(YY*w-N)qYDHhvnERP>ycKS9JSGSmNuCbGa4Vkc~J@1b0V}5py!Ks96y20#t zi`CUNj;@~Z{5_WSfOh^8E85%X#Z#Q{xO(z2E}ngci|3!?={rBfvln0CV!te0a-pc4+RdFyy_-`AO;tCHX&Q z^EC#N--F*fEAhBELw76rA~x)2J{yxOtk~z31)q_@3Zp({S)OEP$QhbJq9d`6n_1W~<@UUi;&3y7ysvo%7u zzd)Vu^9JAF@*Dn$# z#Z#)sajXqn#u<(k9mxU3?@^o2c+y3=J3+b8fg|sqL_7%^$nZUrR3uE2gaGOxu0~M# zy%tGM296UPzw<0Z7THb8>es}>P8Rk1d|xFjzYez+A!;-@21>4oCY%PxvicBB$(PV* zaaZ08tVO^D4n{x&%NRw@O^ut6%&r*MioustDJaP%0h#9K-7r! zscT7q9r`Uu?y7*eOTr;Z=$wdU7R95{t`f5*s48{hV3oQehO8Q>5}W!SaRKqVB!s@> zvF(oFPvSe4TlNR(#*s*P1F@XrcZk1bLk@9-$Qd-T7ZaOE&VYpYBr#AVc2}QhC;4j6LXp!n1?kefo!HBHmaD!rV{#;e5me{8*dDL1Q1|4Z#B?foxA0R5Q|xFiu`p%Q_$={SMYtC^(;=~Qpw`ob z)pz;7M(it_bu^D0oqeC79#oN?+*tZmJpV0nMO7s}blSr{^_lZ6l*k!WTQ;$& z>BcM9B3CxGKRUPahsT@6hd0NY1kr)3_(TFCBVqv;dzNaWyg5twFgCBAyCO=pk_5l z&Hzok2#T3>=Y7^;J;gng((+lad5HZy>yd=Vc^eYCNG98Jd0zKt3Jh6TFdSs|E#A*^ z41ztGJh#eFB(Fn376fdS;GhVdZO$*99zt--~4w@@^W^s!V-nC9(D$$(0bGEcp*KS?I8_pCJG{)S=%s(ge-w zTV?81L7o67E6Ixqyd>dvNy1{O3T2f^cIsZjF3AKcuL&|SWt1>HyjLxz37mDONMKin zp7B^#9z{uFo!duIvkAN;#1dt9r0*=`N*>#^2R~PZoh2xj9V9CCUE-%CFqU#nm38D` zmk$xpK60uCQ!!w(tO9juWoZLifIGAooi-u)4-Wkd9I+4CAzsiZhmK;l4Cl~-#kMFV z_O&N=REDb%bW%1Ya0!TMZ$^ka;`vf0cx2sqT|!Nf6sQJ)KgkB`mIVo07DhY`C5!DL zFx737GO~W!O{kYBlLDV@DG_uY(pK_@pYBjn#EXEk8~l_|N|JQkAy8I%olf9fR!x`& zK`Hy(mn3GDJmn`)rM^|2woTA1-VT~gdmzEE2%t+A`oa8E?U1%W! zorK)=+1IpD62LtIdz*bGp@?dH1_GDQLA63XP$vfKm3H_w%1%^`%ewY=tIVn*_Ja`ojo1$*2|u zB&;Mv)Q3(xGK)2mD+OUwLORJrIuE_Yx^0+o2eyPEVEYR`2|e}gNiuLNfh*n#B#4$g z2b90Ua+RvMh3`Q%>LjnSm_pgxB(5ZpSSw%cGERF|J5z>}w(0*OccWNj(!{>ckEuzeg1biMbi{NuH^1e&3fw(rJA?BqaT|gq)Dwobd>L zlXlo*pC(NNb=f`IM@-#2?2}eJgj4HcKj|Xu4B%5<$tRJ9mZ;Ol`qX)Ya>@h^uk%}M zFWc9P#H(e2I?IiE3nZ-(ltvwKV~9?J=QJ8Hb!-MVs z-SHUybeV=zs&;1RcIW8zmxvaxcl>w9XNYFE7)*{Znr+b-pYrL<^zJHChY?G?5c&oDoJhLihGaend&7gx`)x%U#w zdmmx)@D+}4Kf}e74{`G3Gu*uV7Eho22)A#4kIVPI!@Vzmj;A000&jo#OFaDKcX;&K zPw@DwpW>a*e~Fi${{kQX=r8f&t6$^g4}OOCzWov2`S_=J^vTcg!TaJ3@k4y{>Rr73 z&Ifq$_(ME@^b(hkF4N=c>KNOzn=~ZMX1T&-Hpgr>L1#w24X0?gUx!m^x9VsNBeWYc zv|4TS*~h)Qgj8Wajo3$n4*PJ1q&h~BNCNN?!ukmH_5{svjAo~gMy-#iSw*ceMk1k@ z=Cr5!1g&O*L>3#`?5EBg;b4^JY^ca&XRC{#IYp;8gWVp$8%%hO_l1RJRS+NasbjDk@ zRTdWpXbv|B#$D6~E5sv7QhbJ1cY}mBXS2Q4`5cWo?PYR|)@T52c7&!R`fVL!JX|8? zwS(RSJ@KGmx!u7qO)gz!xr6o&-RTO$k%YpL#KH^AWYTzjgwEm`)dkzqq-{#>jiWXH zJLdT%T2nAesFSu>Fyi@S!j^SYt}K^USTBXw%2fIhmE7#beFv(e{P-KqIG$V z<@o~~Z6088`2br9qqKd5+4>su%ZF*`pQAI{_}M*d#oOWX7K_~_R+5Kg`vCpp``FNi z#}|@c;y$)VPt*J%Cs&WtTn|&0al+r5^LsdZ^bBX$kFmOXiHisC;QHwcTs`>|H_v{C zd#`?gS6_UK$6x$8UViaQJpcN8eD>8};lrQ(4j=#Iuki6N{{f$U_wVq|_kV{^fAM?# z;KzT7uYdj*`0(d{gZIAsJwEx4w*AfT@S!Zaeg11ae)SXFy!sTk?|*^wXP@Hi=~EnE zKE{sE+A(F=UP>;D$7u6=_vm4ovtqTmhp~i^IzFS#zs}WAo8Dk3UJ>l;h9scg?l9xC zu{e?B?7UXINv7vmZ_m)VIK^~vPMg_bD&elSTP)5_FrZE+EMsvxXJ6dMfaOkm_o&;~ zNw^2oQ*>F@lscVnSLpHm(Ug1?vjPa74K-Gq@Y&!yb243^Chy8|2lf64m2M}^>Czg$PU_!j zPLMR#NV@z!m?CcXFl_L7X)Mw(cU8U@k}k&#Ugr&(X!aYh8yqM2uC-WR6wml<%VIUh zhgOI0f4*PZlK4M{&#}{K4AATF{mth$%W1&8XU*{4!J^` zcr)R6&+#r>>7!Qdp%zi6tfNwM;QM3BLp;m>oj69eDY&7QPQ3dLb;PkaXi~O-SSRYU zUda<7li(cZ8$GmKj;D<($M*=4%lE9;K+JYJ#201i*pbjolqul3n&ee-h$$wV& z>Mc{VaMw@Luum~@W{vM~sY|WeYzy^4T+pzH;fYa0UxCi@T=E4o2|0fI>Ba(+^@>+( zNDS##$g%7IK}6mW6XTX8OcLcGck@_}ZdQq_i3<(lMcLp&9MQDuxJ#J~nLIaJaEVhD z;$QK|wuyT)EZ?$YsKg*?@@t#@=Y*6$Al`nRufdXC^~CR9KwVIO`;r?gCch%C%lnj* z_b8O5O>~{*LzI8?rWKIRLF!Ax(2aCA3>`{HH%NDfbV&>?9Rf;+AT7;+N=ix%ox=>B zv-8{CH~V7$iRby;=bZbx2yKWjlmSuM2>$ItOYe7s$g?E2CqmHLQIM&3P*HE9Mg=o8FEeol#rC96{n-%7y3mA#>j_HL%-Z2o+tFXLS< zwVGKoyiT=}mN?x$j+Ib9a$&*xG~yEVPi3$*xJTqFxZVB@-9uuY>1~v@``7b6{0IJ8 zu+MT3LYNwB_^yRg&lB?1??|mjdYp*B2tnF4kN(iC(09~*h!$hyJ$@J?N;^wFUS!f2 znALr#qEK>g9RfKuQxrK&H~PSGpuBvdEDg}v7rM^o)+VNQ`EvVzFh36P{}=Pqd8^AQ z-&bn#^4N2e8FN{ zwMZ$Y?-3J~6gILYrxSEGE>3}!kFF+z4q;*3Dgxep-*MIT4%*35i~?&O{Vl6Xenpja zf%|rX*V~T8L%A4f;J{-Vxnrg~f-WD4H7W3hZoT}Mc>AvVGcSI-Dp;qQjtDAVN^<^s z*}`1@kcUx;?x^u@P!%V#M-b$?B}Uw{ej8(qeO-Kz(H zJ4k^VRAM5cE|sg-I(=h{W<>vLsKS-*?Hlwp_JM5=WpcB5^eBgTw*@EWAj+!14r0x3 zgqPCPcbYFMl;qeMb6j)WC`fW@G!nOUs5D2ad6FnF{IoagyH6$ot4=0MD0M@7B3Sjw z;k%H~yP&j|rYUtGK8v%Y+mwT;)=(r*F{{eUZ}m-X>PJsZl18{JQCH>B(z*M~i&&p` zYWdY<%xaVuxW3?|(v;?4JM(P8VE6de|l^2Ofvt_0%A z{&JDwa%c>Agh>id6hTA~eU%qooOntt#@k;Y{X}=6#`9qxBR96*=(U&owwNKg>0(o9^kqvN&>;Bi&xTyqq{* zsspSFDWZ|ZjrhiATs9iw>Xo_IGcY=1>j|p;*Nes!btl*e_XCswlMA)GQ5PgYZSKiw z5cn;K-Ld`dPyzgz8soTSb&|~lU}Rskp#{d~dYya1otRGua^i7c3J4`@h?&GyPy&8< zWx~*m25i=zWp@7ycAbt^ZTXr}`T(>x{OI;B7C1Y)?C!-u#05Mm#!0i&2kX1^tl#he zc3<$G&U|sDVr*_vv)8}jep4B4@5NHpK!gBN78eKmACOHLa3~_I)DAd`?!hzwT))O9 zBB_dz_HhN>SM39iYW@!J_hS|HPQXg&F4NZ7KTa5PCx8#jvPbPRP(4cv00jS}aOP{7 zE>jNw{F8U0P49bGLLqsg6PLM?U@tcK(v;<^A^5+y&(%%z8t*fATix0NHO_mukH*iW z!M5?0)7JTPiS1{?WwGqN>io97n3ABNKwbc#%p8da4gdEfIxV!Mkba0mp|Z zp@`@m>l)^->U{(NxC7tc5{gW@Q7w#Y!bzxOEncgMmXE}|oqqL|gjW@h*H7BsGve!N%IkoGHi{a8R9*U#(zy*Q0gDRR zZ9NHc-12aQ>=equ0vPj0Wh;y<( zvbP)-q33u~kC(ZDh~-8&V!MBMDD4>yhD;a}?H@3*d?J%UUTi?0JR;(W!f#zd@7Fxw z1B?BmtFq5HG7qRn;{ER__~HJ>W;Bt^!2i4=17seFZ!CM#_NVBfh%G#`4GZYW9@^NL z5hZS>J z{&3x|?;Nm6`>2m?=c(Te|CTuV&G@-^C(fy<1nX;W5Vzwv;=~%GaYNaF73V=3zZUBD zMj`o$xsyraRK{$1M(Si>&+(sS>B`p&S$I@g{pCYV>PkZV8=(iq%VRdD4stb>ECZXB zfcUmfGB+2Th-p=(%!*moiS>iVnR2NwXBgSf7$mZ*ZQHz)M}*bWn6HueWs9SI z^5GFl**ha(sM^x~OqrZ)@GFh3w4-#b*vz`6(ygS(CV&Z2?a{onK4k1Ipe7Sj5r0r9 zHJmQe^CLJF{ui%Ko6aiWnX=%o;;*U3x!AbF8A)TeVjJH(jG@{PF^S$$2!h4ov9GUh zbPw^;&`75lb&d4*cZji6Xi}?VqbG8pTP$Kftg!z{d_C;yRdEEuAQZ9X0l%(pTZTOY zV2`)-=Z90z|H(d#^bZB}Kc?M6Z;%8L&vOxjI?vaz^SO;D(Z|b0dfUoEF57zQUMCZaH(%3>R==z=nij%O0hjhH2cfuB)UXO|L36#<8bw5xx zYuO$-cJ90h_Ejo^|0D5Z?*!D$UHd0jK!$uXtiybx7Ivw+YBerzABnW5YF1q|9q0G& z=^`v`diGlTI|tmA!}$I*$;gaaJyG_qkwz0|wa zhPd3OP<;Vw8F2;F0JS3&rq+;nC$MW#z0M70E*I&SbL>z$4UCiN@3`v+D#9*xX8vgk zP|hqk`8*w_z^Y%x_42F?@q9QY`)0ecnIe+Ca*E&k7yI-KuzeOMqV~{mdfRteHWpyd zzhSjhY&E^cwD;yMjKI0SE`SlQOX{f1JP@cX?V7CVGn;xVDOEy;|1Yj)nNx82S1 zA$3zU&hz${%M-sjLpqIg_A{l(#v8AWNu-HkF6Ecy_~nC&Kg}T0v?TvQfplBDdL2~X zL*4CXbCm7d?mu0ap?uACdtwB=l{YI+Z%3!^EMI&5OJ+&KSY;@V=Yb}E;3B}Hd=EYe z&e$_UfE~J;8Naq_Pf!kr^8M|u`R?M{7^s&*yo{b@?^V?AVx7GG4$sd9z50DLwTK?P zyXGzVxJHXZ`xxotNEcVOjBIyZ$#&0WnjB>$U)K4p*FI#6rQH+R=_xBnkW_RH3v3bpWrY)tZL<=kxh31%CTsPm zNZIMqe<%eYo1Wa`_c>$*vUW-M0E$1LAh}+N(8k=FiWJL;PXvjw3IiP6tw3r~ZXAR8 zNclfd(=1u5J3YByN>X{j#qAl+#H&hlX8=>k9-)C95pCWuK>c^TL2Y$n0SjL?4`W(e z-fdD~66G8bJE?$OKIIt0-e1~cA6mNMu`C19Us{^Ej5&#Rb1BA6JPAT?w50!ke?nVNzJoOt^5MIX6dD(1I1?tcl@k>^x4jwUswp|8A^2c}Jq=6w?$ zm?so@H`AFx774h`^@Ht_^YQs?m?G#CN>V(DosbgXWi_pSoMw?33u}O# zcPg=wdY~mJ8Y@d9F{v&XNUPM5yN25c#hSHiF+#9ck{mrmej3k2~KADd0pjODdi#Ea2<7!!UA``~k@7!*7G;Ej;siPB;Kuj+d^Io|MjI2RnryU*=(uiI{a! zmeJ%|Y>Undr6)+ahJ$5n)gDgXl7EF}Iy)XYhMUBL&aR(*dwkd5i96pJW`k>8=uMsS zauRez{wEvW>k%nLkF2GGITj8sMulOqJ;^+WeUzkmWaXfUZZ-MTY76lNIZcsVTU{j{ zF;lH`!E}wz8`MI(Q&eGnUwlzB;C>Y&4979LbzL_G0%N^Pb+(eY(53A!+9Vgrxy0iinZFk& z1{voazcYkxzzY4Z{Tk z@)2!)(|pw!!_fG;YMyu+DKWI3f7x^GA7mvciIfP{%s z@h?H{N^5$Kp{iNjfHA>ILM=-5C`DE1#OQq3tB|jzVRGOj-4b_o4D)bxCi}%t&H--4 zi!~3}U*!Bdo9j`Y4S1WQKGBIz+O>ne!*?@gXB=X<*z^Y=DO?dbLla=GvBWo$txQNnhvN`u*DQzn%G?R69sQECxtP^9afrKe zxNA7?k$`=1<<@aEkrK3vHnfP$ zg(#tIuz&-YcAf-Z{tU(|8(&h2-j{lAcuU=r2GsL6TNw1s_{p%WV>ei~P=WsvYW1Sq zeMswrv;LvsJMyv5HS?U)cJb94Dw(GuQJ9?JM8zjgyJhV_A%kI;IHy)ukT-{<)wTo0 zl^SaqKnW6KKXw?SwM0gQ3E1At!U#_Y7mMafOmiWfSM>vW#Udwp@5$d^3H)2Y9W~(DAC8{J?Z1t~OS(dajX287A zx-IASk>Y?)lyVa2fqY$yvTYq32#rxt*1OM$FPHiB$Ok+SuVtFzPtjXQ&U zo?QaEGpqB~y3^K1xC%F9hW8M!v>VpP_O9R575By0QqXVTuTzLcT#36Ehekh4^^XkQ z^bfAWo>EF=$A)ym6UQu{gy}-zE}`cmmfJ(HXSAt46h-^_u79Lj_F3}r;2}aiAU@){ zAmXQL|D$T?!_x-zxa5hf@9xlY^Y2u6@>Kr=0qS;KvIlvUb{>7xKdee0mXu2$8ktM9 zKCn$O<>hsej?i5Q8Ox)u_w1pwVhiHDH%P%m$A55ZQ#lp74pAMX1r6@4W4wE2gD=>c znAymx17H$&y_yQF@sXc-GA>`EuEhDUdIGZvD86ot(fKyQ zUEQVJy#Wdc3gB#=C$*V98`}O(1`j_Z6abH~PXLPv&q|4GTjWtlyIk5;$ZL>a+<<5F z`+(29y!cfF7Lsydo=M>yX^h7Jow%*@1V7m3FRX+IRoyX{VoB8qbyJsm;@_#drzg{} zDgL7w)?=5HYDXt+=YD6wW1bIEE9e$)Ol|ljRU-V7)_t|9X$}71sbN=d-RAiR#oax= z^dEEldNXu#z^(Q9pYcX{ukc475Au1<5!`sy~ILdGAC70sUT&wprg4HN!UQwpQf7D|Ffc_f2egTJW6%r z8Jj5LmaFF;V!1ilh@`W8eB9V>wS0Dbyn{VcZ9JZ#5<$d;<@u8(G9VQBfTWVW>p)V6 zKi^2*bfeDQN-2F?H*f1T3We(QDK4` zt-D9;*en=PVA@}kXrFc*jek$+Ns23`-Fs^5c((QYL>%P6;+ZuABsEn|9x`n;bs7bV zEla}@2@*YNJI3TVXI~iG_P9WSVX+H_V3mua7O7pBZQXE1(i3+Oo8cU3xU80sRvRki z@-8@WPYG<@6$8hMi>wt)3x7GK^{A3-n6?VPC&gLzOSKbJj$pvEf%bZ31>dC{s~%j& zAF!%Y!cC~B+mEFz>FLYlSF@CRK-&raqVfS^)>Lh$aDebiaM6^;tl7}3S40?_I1NOzF8m6f85R#@Vm@Yrnrg0I3NeChcL15;|lGIqj%9oSR> z`0DvMUC!R3nk3|hAC^Gljrl+)KoCqba>*X8L&M7$_(APNrHeyDp(;+DRs`nrNDTU# zO0()jOl=zFoS;njn~rI@-jXf6>M=EjRImV5kgMl{^d^G11VLw|3Yv!|Dj?|h6%sz(bJ>T1G!ey|CzfVWuL7Iz^gLc55PS}0&u^BjDo!3ZR;YM$WTp@Jz^L8 z8s>sLKG=N?*@`Q({aa^d75aA*yq#+ku9g{v?AyYdu$i0$Kif13exPrr&f~8xjC~TU zZg6ti;^ba|9BlTP32F$HezvUPWM6$Oal7zCe>LI9F3y*bEbYxO5Z&1OC-Hk?H&<0m zF$)TiIYGQ1+@6XSRH+&!o{z1<%VgLJ$*3_+URq&70(CO@8>v(W2NB)2q{mQiwv96j@y^tn@r1Fu=~3pCd(Du-X2SU429psa4->$$n!|60$Gq9>g|Vfg*K3q zHdq#`_?$Z>uA9U?esMws=#2=xqCy0%Q8_(I!;5(o$YFO z_ap~!$Y#kRg=G-yaEIvl8twIB7>yJv>)MuI=IlssieK<*!kHkit+R#=7)wSM=2?EF zb35r)39fE)%+kF|V(h-)m^7zV_A>dM>!m7%(}qT9$Ee)Qp_tgkrD%{;SDn)1u5XF? z`g(wFa{kttopVBbBKInN3K5Zw*vD>I2j5<0J;{Bvd_DC#itFP0VqAGsn*B!wKH}FC z4Q>myIXK#H*kP@FC`#mysw29WCFq$Ftxj0rAx7J5T~0)JekEHv*Eif%3D{LGNEYxw@bkQQ03CR41UM3v4c& z^|h30oK#68fi1J0QF7&7te~EUJ8L*Wp*fZ|XrE+@jkqz!xN%0DRR*sRwpa8io1<3QU|=yTY0)BqjCfFa9xs zz=dSr0+Z7(6W4*G^*>sVfm|&=GX4J39ZIiEdCJOjw!l{W*C1Si!5*pqjj;uE0vslN zsCE#knWXekp8s@0nSAS-{<_)%9lRP@$$&5Y&ui%{J*+|0%eaGt4jkzmcCtF(>d3$V znp>Xw@?XhEAt}JsgiosSs=c}37Oa^&`}8UlzyiQa+xbNvH7)}%@^>~}XF2q~TWh)n zMY+VCM1Z&D;&pl-S^{^KQIN}1n@>-L>1LU?Ed)7=V30yK$TeD3=%SEWf(jGL@9LisQxW z);pFeHn6XMG6YKFlSmrj{b~8^HRO=0svGOTgWfjSi)i(N&A4%6bnk>NE|;$f{3_vi z%=jM)4+-xU>q3hBDGrUisvv3(MNs{*c*f4v=^r^N@|cV1-luAv7G5*-WrHT{5`vW7xgaWR&+xADw zn_~uQf8td92zwV*Keg*Qb!=S)>WD=G@fRg{e8B>rnG+M&Ra;k8Yqce7MTs?RR@D5p zMW++rV;39?^%yRJY5)8d!cyuGQRdGtv$RKE?W~?C*55chKT?x(@gamv};{c`N>)t^L6{LOJpRVpe)$kDRo+O>LJlG5%8f zKDZoNecVd9`OZ6C&7;n=b-l^7_Gvv=Y4FKMh!xq-HLY*52c~tOC=# zhhASuPC7RP$)2{TQq$GZRWb&4B|lKsvkcGTkk@jZ0C5nHG!<(+soH<|C1i9cD9QJa zg`}p>4(O^@AB@l3r#t&beZz=Q>ai2;2L5y!f?87=4|;1J$k&dkCW-E}fjfe|RchCu zr-w|G8%S%fO_2@ zR`(BfTcS1!5f9X%kCXjB(;}|u;d3xlPIyR0rj|TkMU3e@pGKf8ROb=rw;S+>e&hzc zAOeXT=0n1fA7RLAw`vG843-3h|p<|N8G)+jW%6N0-^ANZ{pduIlTmH8{yZ zZ3T*~miHr6s}E59Wey7_)lj0k#=z7rvyHKISlk_zU)QR2_il*Y6Y=&gOKQ%1GO$cm z9A!|}B44CD`7cLau&CHs2SgmVW;El_?EJ#brwwN;Rp zXyDWeTl|^++*%A5{&uYK%R#lRnrh|P{K}Yjz6tGLyz9|GT)PLvmM*LIevg?9_z?(HqoYWJ9e&7$C0yeR zo3QWsWPXJ(ZN1mwLS1UH6(DnSHIc9#Oz|$&gP<|l zkf|6zdH_a`veo&tZPINLJwr8c)_(ivpsFlmVvVZgDbf}eWowQ1{XSt^qH)*Q$@Anp zb1DyQUu~CGTanC|Sl<-zr8kfE#q?4=;iYyiOaw}6!tNN->lF2&HkH#W{cl#~$bKNd$(cilCH0BfY z&6{BErUx*MnNdxe=X@cV!}yNLX-$edS$l2~f66azm}}zkE8yE+$L7MTd+x$T+Gjp<<{qC$4S9Q5qMn85=6+>84P}NS6bi1Lgk4kjD#omqz)iWj>KAQMx?g z_Kla`*QI%94)aJ|Ffob@G&gSZ>gvByegITzN^3|T1>S_r<&ZSuL5b@Jk<3_euIUWC zIteDy!YbN>`2g8Yk<~2s((=%pgIqsx?&!i1`!!5>sy6rA*P%)cIeYI)|JYZkvoj{E z53^g#j6^l>RIw+V@Jhu~76{rWdb~sYha>z!VrS<4>6Hq>oDGtGur<+dnJzj|h}lm! zLV3N!`hgZQrXuA)l9pUu%e}Isl5M;Ul*O?w;G|h7)72jP%ET#LN`gggze3RLJrm$1 z_wQJrK6Pg=^Aq>*y~%{zSHfm#c(ukKPQ2HyX`aI7gN^S^)U?x?#B*InIL^2dM1|qs z1Fa-^gW5s8N%5-24Dk%rwT4as;Kq+44(U?{hB*5iQiFswMu;B_1YY*whr~s=`HyAX zX7*-TFP~!j+@N)a+@y)&!9MLrZ5ocPWWS>R#0ZvO0JkwFqQ!RzOmARCUDci7gmR9& zMfm3G&iH?47>zKVi;&M4g{MXnWIHvPPwAA!p^!3O&J!#M0XT6!3&}ZZj?hQ=_MiX% zLPQG{$f2%M^1$Z<)$Z)Er&36ZWMBHeo;n4=gj8-ezlwUKLUV$*p%nJD-e$yua&bTD zmpeM3=&-egtqDz*{lJ#4sysQm`hQ7Zb3ewoO~6B`fr*U%0np9DRgik%S}2aNh~xDuTQcG)2HZK%+M4}r1-D( zm~|s~p-QD#2!3tui?}-(hDsZi^Xwwx5 zO1*JB%c+TG^0Ts%)smrABwGWGe@Tg!e)7Wxe!WSzcYGVgQ#^Tk$Ul;)q;QVJdh)1N8}c0v9m z>wT!;Yxi1^U9A|yxz%BCqQycro@pJYkK5rqqFU`IOIh9$@4G>Rci8K<=4=dae6M8( z3hNnb)7jMmIgiZ9&^3$H_uWjW zjy=iCxUFyv(8Jq2!x3i`<0Y?=C3-&)x1Bp1SSdgAMdsIHCs_?q{y7=!RqW3`C%nX^ zXsvQxn}TE&Dw$O(T`Z`3p*8hnod&>gzY>2nQl1viijTN(5~Ig7qmXp|%g%Iqx{>R4 znR%2Vtr+;Rz&jgz!S6`&vR;Tr&#;0}tLW6IzHz7B=iWSI*Fs1 zyvOtSw^_`4KGaP#$rzf0v=G8Kd<>mTUt4<_A%-#D$_Tp}ptlLQBHjMoa=1)KmaIl^ zR;7+BY7G%Tj3hA2x2o<{YJ+o@h_+((4ocJ*tW6nEfR5hNH%D-TH(OSr-3d=a?L8w% zrT&cd^5Ua$)@XJCHi z#-%O58_N&u7~h58BNA${TK<&dOrMWAiF?$x%nAu6^LksQbxxbBjjfjYDx>6y*thgA z8em9-3E)?xG+QU?nfqitF9d#nsCv|-uUx^KtSfv}_Q~wmjnS7sGS%)buCHY!Xt;0sdsn*1?6lwABSCR0K4yLEi`l}77NwUd3SSxML8P``PsucfT%=Z z|7^^Esx`BzVF8iBT077PFQR-yv@Z+x=CnfpX<=lEHwdQ-VfM5qiXiczRI7%n^~(yz zw1e)Kv*(nb+=;xp391DYzDUT^5Y2qkoOb;)J5)cMq?7Pld@>I|NoOY{J5mA&2O7DCi6HY@VMyw}$2Hk4w*Ci8xGkM5 zvH%%J|NMk}C5t>p#+4vXWuYDYcaD#jq7ffU!jJ*CGdkh1^kGjvp_khw&;p|Vfie2< zlzsZ%=n%g3(chVDfu26}i@A+MBiu%K?ExQ`%T>dEO@H<$L9vDKO=|*F5ACeGg_Y~I zLbhSXJ(LpCw#=`7*zgxBc(hD8Gk;&lPt`mpP<2w{z7yC;j+W_y1JpZG8-^9= zweGs(nJ{k(t;H zIR89mshg#|3dHLd7_n-q_|&F*IyK{VzRr94QRMG2U72)o`G^QeEMMCrDV5vvynB`0 zBUT{TxfpXotxsK6+4t-E<#En zgn@COJ&&8>Adzj%D)u_YUMn@DE{;;iIeO^TUIl5JiYldFBl`x2L$pi#e#(<~VcZJH z&EGpeN4T(&zfwzQpNL;##rj9*V3xo1(zN@2F6EqqYB!gw5m7UWniLTd_xsvQ!b_&R zXCUz6MQZ7UXV1C!(z|#CGKRhDNT{|;5~wBuR6^u7=c|o$#vq7a!ZG% zjEwl;!#2hshj{pO@csurFYh~m=prA=CX8+-6%m(70o&e6o`P?}7X!~BI_J=BRJZ-2 ze`HMdQ9As5G9q~@{7L6_rV+`7N|Q*VM<_kg61BW}l# z=g84U`5)m>%n%w zT|X)bJ@hvIS^e1U-rD(3x{t`PI#+Bv#A?Xpb2SA@(_s}D90i#nP+>zsq%5JKUdg;y zCZ=Y#prTYmsI^zzz@hj;vQJ8`snnYKU$#`1LJM~AUIG%v@RJhC5gxl0wDWvEsRgZdB zCSLU`)^H#LXd}1HN5(djgLTa|u+6f6(y?)BKg!=_YX98%qDY&bcIA6$RS=oeL;e}@ z8eNH_iDuoko*P`;#cfu3NX1AhL#!BnSL;jOvwtNy)Y!@`)A6pjDOv#)t3#wOzQ~$chUy(42>5)AUKyxGn zh$B>o@e?=VKl3{HPPZlU0o$y<#0qW<`M+h8sVuCU(p791kC6}6|E4mGL!*;O62%E8 zY>u^}0@aNr zA>!|d2#Fn!r8Z(gW_H98o$^uNtTb{cFdZee#8|rUqkp3zL@muIhD$xu8wB4#6;|eeKP%Y!&$6*Pjoo2kKF#$lK`a7^WiCy2nV6l?fk_iPp$tJk6T;9JGQJwIS9lU1#hrSx zv}G%z7KXXN_-I}{?04Qwa5>hv%-;$-uS}rQI5$TtgrVl-K{htJIJt)zKKDx`~ zQq2w84VFwYIRx)prWw5_ z1oNj5Ew2b-_2E}aCom}Ieuck`?}|d(ooP{~(I*0{1*h3l=~uOVWKbt(6a-+#Awl7>-Bf6FaP?9d zplT!|W1)J$lJ>-(cJ}4Ppf~CP91$Qzk^cB@`vNz{gh{dtM^kPb=`XL#_V7=tPd6j7 zOr>xMv%>8D0_=rwn(VxkW9v~iyd$p0YPW3QQoeT%f;vmlKL3Qsz~4=m7wwO}O1$!& z-+D>wbBdh0mg1Z23oLF$fKT%&^kW&MT#2L;An&7MsFdRTIMWln|>X%;Gjs1xEJ@mLbWUPPhJ3&qKFOH(x$a(Q1+ipWd5wP(eD zF~qT2F8R-GH}b}r5Ls~s#KM7z1DnMd&VL^V{cvrS7k}L>{w8|bS6}B<$?4PtG$r2= zX*Z`#4Z^K&`6RC8Uz6*}?g#LV6C{aX@7`qIai)Nx_J7LRJ%J)SCNh4`fN|2E73UgG zB5m1K{hDic_VG#s3K=cckX`IJB9L}y^gZxLfa^+QAbN%z zh!Cfvuv%Kh^X;cdOK;EfzS5V;Ky|aYB0&g_-+vcD*iIeL@1-rzOn$u9#lXH=RRja$ z5XR0bv|e7Y6oV>@BVJM8v1OebRKWcs%Wb`+t2xuR`B5FUaG`;@yF(3XmcLWg>ljKDRQ*!fn=IWo%U-@r zlSu*mI_vHim7stQ+JOIY%UlT}2-Y9))VwOV846g&t6Gw^~m@2sg8MB@4w>j@<}B9 zPsVTi5|%=IPR5}hU0-0B9hu&cDzSlP(H!t`z#C1BF#Lr{SdkDYP#cOP87f0m%T3K@ zvXU1VmR^^R{{ff+K3P$pUvgL>h*)g>Z`BOQn1gYQ=*x;(h=bi_Fv4f`fgRkYJwC6$ zD71Wis8l!G^O?_9_padbMx+IIEL(sKdA6{Zuo_gQTf*nAh`GHryS%}?=+S;VZz+oB zHJEbQ;5l}`!AdKPCLP>~!md_^+E1BpDc+Ek{P+NHXPi@5VUZV>Teg16JomZuuj`P@<<|ALaY*9A2m0@SFbGVn+#AX^ zid40=hdS=Z({g7H{AcJI%h&Q1gL*z`hv4iEaCU9`wXK*QfO@XsbV7STl2gK??dSud z_D9l*(=UpY+Sg^BebEqv1$Ui!>h5ku-l{}Y@9J1nm(L44EZ%{=KOC+nTi=n~3pW<= zv81`yj{6^6X*vltR6T|l@{gPM5!9ZSmwsZtyG3H&%jROfSLkBilTTv4YeQl_Yl=TE z7vjC3Rb!sZ<~mzotm3i1M7=4KXJNF9Qjh<+hZZho(vO^`^?$@F4n`O4yCC=n|HbCD z@uqQmtJ-30ZmK5s^V!s-UG zcyz~9=;r#<(!bVN^bo_QzBa669}QzlZkvDfHq!^?9FWpulvO*5KrgC2f!|j7CzI+TVd)2`MhaA_a zdmEcf?>qrgxiTF~G#>pRSGrq{?g{E&qZKNCBUvsr$i9ryC}=@4bmb@A2F@;ZtvavX zHEu69<&0a6zRu!ur-(tjW5T2kJ zkP=#()D@HGjK3)y($>p(#UI0BT|JB*9k6Q^F9TYRC6Ra3~CN%Ec3{(5>lP8}?^LK)r zcFxVo|cr@-$Ms=_101n zDI?jvkJ`RJu<$Na`TLm)K1m*Mdsu~M+?$#W*nNT#uFn;%MtAP|`H~wpOPL{j-0)RG zOD<6(t#_Kn;Q?MReR|?90NT!Ee<9)c@mziTe=COsB}`8y-L4NMHe?^e+)0@4!o#DE z25B}-T=HP`R#N{|Jh<2S+K7T~W>SH!`kAm^s2#!gGt3WdI7T9-1)&rRfe|60>p3bs zvUNsr+g0Y(g)|zcvy@s?w%ipmb)GbT?<`ygznF()(*=*P0>wj2Mb5sN2io@$In8N3 zoAdsG!$eBV<-ZPweDGWP{@)n-#_9;;2E@Gby;k1u|1RTFyx@l4Zg1XQXoO;&_x`?7 z6IoO$zR=U&IlpJ`^y_P_^`xdb4uxTHx>2^wEMFMY36Q}wMAi9OkZHgIUiBykIBM?2 zF`vFg=|TP(TLc)RN7lZkQaT_1j)$3}*f@0mK%dV`?e7Oqce_=@t3GDd@pE%l>rYZ? zyXSpE$LD6t2Ro9=ELB`&V#s~nb3~o$-Wze_pY1`sEswspsXk%>pm5B^<}I)1Uk)7I zG^|ZxV-m_TLpRzD+B9$C20G`rdkwXF2tu0P*#8-MWrNk{(kt=yPolPrqIiOrSU@!* zYwSY>5R_)(AmQ=QNlr64pgbJy9!ELgLhN|%0ZC4GkhVWsZn!YPx!ED1hhS>VHL_{A zlKw*Ux;3vE5*iFQk$ZhoeynVMM7uI*OL*1BfW!@uX1)q4ni|BjubFsDQMkNkx#TO`a8Y8eIjP-Tstqwy^sgR49B zx1RR;=aP3Of8>@NHmIQ_*2Ie>uvyG^-lFinza|~oK#|D|JYvTWRa^8LSyQ6`no z#+LkFV{U+FqKU5{@@Ss}*|A7i#?n81^!$8kV;Vh329ZaHHUpUZj1n!K`%&^~CERJ~ zJbh<&V53Ihf>OG%q4d<@Fqfp9xWh=M#gq-joo=Mt=j$L1fB=FV2d~i1967%-A=}66 zDr5G8*Nmb8Z!z|`Sp~NC7j%G8>auZIK{fwoQrm^UNiC{Whn&9>FB{nI;C=?@M z9{pntZ;Nh&v4V)2W{rAMX{tmqSPK&eYgnY#8U-AEFQwTu?5#i!edAgX7;rFmVua&3 zBEb>xd3S^(_eFc4!pPYRdDFbjA1?`QZ&p3@E1sAN;Cqn7gq!i7mn{BA?B8CQx9#L`n3)Hf*$2^q^`u-`9>l0;ny z?W(u@{wOtImDK{W)Nen;AE;6G)Us+ECINdIV?+To=JSNhNb=Z7!Lp2}9V~}x?3@b) zpu6j`8bEM-OiVu(%SJS4wvD=v*u7Tf>P_5wcmG6GW;2!w2SmQWRogFM3OV2>L

    ~OEY*O=5%tto8+B$}&y#m1By4rP|KTo$`qpPs&99~%Hkl<FkgQY&kN5$J3a5HV$J5@@q$V2`17ByuT z(bWDPLsf|b-;9x#puoc@pW;LQUXvDuRc}2+kD&3AR^o5;yR;{VT6D8KzqeHl1focF ziFMq&Uz1GGI&YU25^nF>SBVQwXjCvG{_GfMG$A48&LU&{Z3>JYYjNzD!NVnebk_vh3`G*Fe6Ae#rsw25jf;PU+_@d`z zmKk*B$G>n zLC&oKI=K&ACA#0MvP`SGn)a8XSpXk<&_51ItzFHg5?J^qax9K>kV$T=h$8LMO9q?P z?Tjv&4)=eWv+J(3M1RD~96;xZw==iPt(BXlzb&L#)+Rum=ezT>nrB5J#~bsRQ3rpS zO44nGOO@`bTJC~%8t5+B4sHcCYU>$Gz8Dp)n_Uh1Qymi?=Zbx(D>b0j-w-@bIS#b$czx%^qyt!mc zh37bvI=9bXx^6z`;YM28`RXtBVNUI7XZhg%U$MClO9S_7dw{6MR%&qsDhM4((l z+dXmfUSl@|o&tFoB>K)8LXfmq`8_Y$A;*$;0)!v@8Tfi`KXmLC?s-l`@^1}S77Z%t z^rqZxKIlpRE9BpbzYZap>A8I`eQ`FkJ=ES8n=N8V=?l2 z^Xa|xzi|Goy6aGKBAGjqwTFG0j*EEzopbEM{!D+Fn2EX&vTSotcEW;AQg;4M^3{?0 z!NrpKrKK>cD_V&^dy-Tql1W$70DQyLI~oDai5kkfqjEyOhK8mYora!{j_{2&Le<1r z2*cBESIPI5*f96=^~T>i2J2>~gKG%$s}VG^Y&eZI_RbitsxwQ=?zK(sQ~N#q7lzLs z`4(?&!=%i<{&nj%;pa%#gHViuKWtAHJFU~9>+*eF{r;<5xG<4GbyLdvf#cJ=Gpz4N zn+9PRN@syiwO=HUW(ncx_Vm6fHBG@{d$V6%i)9gajcQ%UpkK~!bUCNy#3<5^zm=>U zl`PhLnfCW+W(HT*G$d-hvt=n+Qs`My>j70h5WIJB(xgUp z#D*(LBnnn9+JhiznI!SL$tP-Ui@|ji)A28}y}663-+5O_e8^%QD|r1F5z=T7uJ`IB zoQXPv+hWT6Vj|HnD#bY4Tk45u z54Qo|8qoZPHcw^EH?Cm0kf(^#XjE71*YyENtqHRxBhJYS{&GPp=0;si6huaT*ogUh zpU*SfrJFd6crfR?BF|p_W`kuHd|voR=t3=75qlP^n=tFsX9y4R<`TRDwlkqW+8!6_ zbH>5urrl7NldF;;;TqFaek5`xc8k%N_ey8by2s0seWVG#Dr!kWx+{`H@5@QU3U~8T zA7+c8(9vSGkuX%Nd)h zXY}O!4x2WSZJAmP$MEbFbLNvw+eP>k{F`1EA}A#9vy1Fx!y9Xt$Q!+fGc5HO3FwV1 zBRx^=jL-nQ3t_Cyr$kH3MvmXS&L){1_Ci}g;P$(MOiX5cd;aKq!SXw zZWkF5td>gB_x1^d%R7`!rT+z!6imMma&O+O|hbWkxn=aN+lt>C7O zL;^dF^S(osf5W>o423Jk2A%kkd9WxcXw&j_b(ohciot?HjN$)e#K7gu?mzIwlFwTO zE_!)J*+dU@CFaR^F@a-#(1cKqOQ5+$hT7jtR+7z@JLK<7-BmqrCC!@m&vsljHMnab`70BCtqcEZH- zzH)#%h(^wrpoj*_J3~C;hDK@dU*55=cKxzcf)BKqz+O&TEvt5`%#^E-%*LHV3QD-3HNByBQ|hMSH%)UH{vBxGFfv-CUz}L zQjfAMuoQ-G?wpnNrSbpiLlf7&gEgoz!L1iCE@`ZvDsWsdzG9i4$E0B@D`Dn=Bes@1 z`ob&NP#Jv?4-hoPsG&u~{^iX)A;{A=?J6(skD`gRy*kIwuV{%6lA6HG1=e^-ikOB+ z9m#BS0jx|)zJco&2)b6%RWxbrje}Jb0$RZDm@y9o^B&+=AIErvKqT5?+Q#aRWGU?E z7e0REB$+#NFx#V+DUq?a`O1uR14#<6E%Ssy=v3?dJcsE>_wQWSMlA&(7)TWT-~qk| z5;OK>VT+$lqCEbD)b7SrCqrOfa7sQXr}4%okt$LO6CScS0rMM&Ou0 zyaEqfWe%h~akSx~LJgssm;4{-ova@41n(-7scwfVtYrO~7&>$lvD7%|H;ct-$e1qA zrP=w7)>mTy{Gnn#gB6V6{g*Xsd*mL8vQv*i=Y+9Iwq~|NS(!3OEfE{vazGMUE(RWN zB#alqZ^uGs!DOt+U-&1`w2%5c4#VCzwJrj)ZW0ytlf_{`Ic~nCMjmF#8Gkf?&~4#V zTZfdHW;c@v+$gJ{VOgz3VVp`3RF8=gx&Y;Z3>WG_>f*m57f}^m+Fpa@(CBI(b(~jCxmm{0rRS9LfOaR13Eo)}+-*rmZz239R@pNQlf% ziP=I)ggt=n>u7_S_-cf)EAwU*qX9>W**^2sljfDs+f1%=;MY=Jr8;Bf@-_KZ6V+ZW zK&2_i#DIG}PQ8JW=%z|D58m`emFB?CE>5{Bg?SKR^f2bo!Iz?&_Qem1mD0*q9TC&E z7~iIG$?r5dQVsO}JdYGcDqZbFQ;&o(>5==XVsj=N!;agOT!(i8$UVfg6qc!)U|-;i zf@r0jP08rY^7$Oo*Ri`-B$H?DsAJ8Bh9{i16pLgiC}pD)cl8d`e{AeR-$fpzV;=cU z-_YvGPJHV}qiN&y+IlEQPUP>klqqL=_?dIS`Z-R@`rnp5%AoUqh8{y7__s$f_z}p5 znVkykjZ{;HTVl6>eXX@KB(~>;chR8h$rH~X$ce*QieYaG`{wm~>HBetGvuK~zkYof zl}^u7A_T$WesQ9+wM^6o$qG)XBj(N0=a|`-3Y#C>t7_#PEVo2Xyk5#o-ePV*g3tn40 z{&H{zv#s}HZfDI?f4`#g@>>%Rmw_%K1Xjc{D0FbNCqJT6`aYZ`-ho?5?m7Z_%#pb| z>#g-}gZiph_hSx618U$k%tQ zdTyk@u7Jle=gqFmQoggUci;)uvUkbX5ERMxUoYE?$^DGA+lhLFv9qt1ww^*(T)y>2 zsRqTFI1^-Uplb}ilsW_1=LI#u4Z}pOXQ4{ z6a7BWeJhbMQmAi>w{}2VKOs~YfnE~@0%Or)oW^eSLadKh!j&2%THyl2nZT0kDp2z)HQ_rzq z*9hvB`(N!cN~U2X?Xr(je?tB!K~AG}whIk=KUK>8orgTybj#j`bl=ApjokH~9zt#> z`jUvku702GR)&(E1l@_B4eW)!oauQ8k-mnyBdAvHZR&%`iTdtb*Y1!b9y?0>+Z92Z z$rElt=zDct6l(6>RM^w&lmBKc_hv7RB)vG>+Ec9@9yns|`1%k2S=H8_6!-ZNyS90{ z*)ga(D@|&m|H|@N$&qhv{U00i(2glB3jelHnaKWNgjC6E)U{D`R)S)P~ge9#^tq=PFI+ zgMQda>)ZX*+jXJ9bUx~JL6a$_qcI_&omVRl-EH4n*$m}* z;GY`J*MCxUd3pYA_iAXZG(%23)~>ihQV3Gg7vVE~EHscI+!590Wc(2W{Q*fZ^CQ-X zP3p-i*3<41*Iu5-#D_A8#dF#k^O_j@QmmSJwbnPc2ejBQj$Rh_m9EhMnHC9(1uoWi z2`X8pYDp*F^%AO!#{+dfBs&uPhIgYLg*m9TtzR;IDN=hsUn^^K!!X zURJ~mNKF|3mw248nFR3?o>~2kT8Pzu`81N)c+-v5Bg@?r&*aRJK^~z8D=JNU9cD~WJnbwgm52@+f-50(eH6Lz)=PwZ&UCB8k*Di~Z+WAn; ztYU9^@nqblmVJ4wlC1D+DWsvE%}CEO#yL0PEukii9~7hMeuX za6*#x^TV47&$4R%2m~q>fqTT(SNCtCT# zs0C>SEyXzLbG$s@OpjbmL~-9DUNOv9h+1=<**1>3mzj?r+mdm>t?R%Aq@~8VMcGr> z2Yl%j_-#=#Q$Pxbl0>ySNNWQ9l6HSsj0eMpLzmZnB<(MO63`G!-ghmM#6u@#t#juM znr-1Gl9EJdYA%MEEJgSm_bf&^+)9tZHY{26!PZ2~w#hh$! z(;y{ZqvjT3UY>+lw)|<2nK;eH8VpmRt!6@7EM&wMVkP^Sf7yl0b56sqI<0u`vWm3Dy34&0mG5RCr&_l7 z_)hG(X4_nvbCijhhdl&((o>w)wc_ceaWD*;0j4G|gKjZ9YYW(P+WBJG%t?@;XOx|c zc5~^-Qlv{0=Y`I_@!a6wz_nT~(*-aN2tOiv*PNqn-av4}Z(72vEeetu z1xg!I5=k-w{mMP{7*nc%KkyHU*jVw2!idU=mt3v50yi)i=|4wP>k$*MJyw1`9l{7&BGd3Lt=}4TD$T1dC1Y$9pGn$ zrs*nY@Cw#2vk6U>Ri`H6tlV@*c``Gu^5)?L;*y}#iuQ}?t9c12BkZ+nTpW@G#bO4)im`gSq>({eh&|AF-QPXaGj^Az%!Bre%+0f#`d9IUGD+9pU zyzQnQn;kjRGBR$2Sfep@zWZH-BQFjw*FW&N{~`se09#t7hg5hqWs$?OHN|{Wwe=wW zxMENAdO|`68@mod03CK?tR#^!qQA!Hy!*|3UYs;AiPu?-3bt~8n$F|OA{Njl-i$kO zjXTX|Ig#2g#0)(G#gBYG!P)rCU+JksYFfraPm7KeXP z;#!J_Fe56$<8|(S*8Xhecyc>kt#|+r@^vg{Dku(9f95?22dd=M*i(}zW4i0cR1Cm9 z7M2^>))b&l2u$@O11+}*H#sSyYju7T@zv_$(m<%dcFK%n%(pLKEG$Z2hOhR(_H?p) zRIHn;Ec$-BK8|WG7PHkqrcouk;LmoAKfd+PvEpmvsVtj~jYqr~3)l@la+=zHJ!}({ zNFK(`^4>$&qd84^UZo4G%d$T+m=IySO&)M*mHk=$ofk)-R#Xqxvk4s>LMP=*%n@`d z#2YuFn&s-z?AswVQNrU^lKf^Y(v+9U@Th?ocvTT2AM(k%6K$#>vS8*8kCU~1o1O3S z{MDma4CmRuLz#@vA!JxGE!@Bjn}{r)ziokzS+SwP_XZAVQ`;}T4NL#qkz61rpF7Z* zrPmUm=Kr#0q2%pEQr^kyLoU`RWH#*KD)%qFhmz;dprbS1)Hk{}2B_z}kB=CkwbL=^ zUyYiekzC4cBz8kb2>wM7k=6DrtI@h_bb$?fgVz>MR!aWR?p*VdKZ2_k?3kVY+h((I z)ideoM8=2z>VxO&l>8owO1Ex8>}i=8r9FE1GB?9;b3^P#lU)fFqTfwp2Po|R0f|l25D;d zyQ^*;qT%@7w?W^unC_m!4c>=)S_hbW^adt=C8d?mc&-BJUqoc@)dUgcY z!Zsf|E*FD5QOUm%O*J|@NYtLk@-`jqvSiZn<*V9nuD1bbS;Gt0wj}H3L_Kfue)%z= z?5RABC*51D+L!95K8KksXU=L&;hwjOQJ3>I4FS9T<~FN1-hqz5beTzTzWRB$no-fO zRbtZb?DU%F5En;#)_AvwPdnwq&ikt|#(x+$+?iH$)mj%7^~D%Ld_i54y_G$!<5eB+ zku)K;=dKIRw6Wg+PbZ8@wUe18AHi({&-hVB6hh$ZGk_%3i zQ{z#a&AsHV^^NFY#OhZ*mf3>hOp@RhtlkCH?;Z^H5`;(}?oj(GtM-xneC zFOOQW9=8Y=4$^Dcko7EsKkD#_P)dn^;-wG)6`;QQKKa zQOT&=sUFG`+L3?%6l(d3PL)zzkL40JcJ*qHmQ#OWunYK~V){w&T@^?~cVg@{T>s?u zJetjv2)!bw?cNQg?KxJ+@7m!s^So~ExOlwYuB+VmQF;=Bm)dgxgm7s3(^c0G&#rywV2LnK>@gbwQ$HQfiNLnq^tzmA01GAf#$ZDF;@h2K%tr)o`Fi zImD+C&G%+mcXV3Me0mIc{zjVlh+NPf!>)c@vPyY*#p5PLkc)uqMwZiSgGXdI-y7~+ zf+jO~odL4k?at!<1x2kHd0jld<{Al@QUk+R3 zY|$P6&f)cE=Cc;WZaQ6s=u-O3u?;i!BuBoLFg-_6k*?euV?0gG;GD-vYr0a!77uR9 zGq`&)W|jyk?U$0!kz&o!Cdax=p9U-1Ji1?mOne7*w)}UlvAaxfY~-)kRs#pzXXL-g z;8&W2v2Vl${_Mq_KuNnS5R-H>n-d{qaL(^{*JimtKb|z)8B(AF{ zH_5=^-04Pci`)$%3#`7b?Bj7{WAQhA%u7iqjr0Fn5G3qbA*m}-QMnp#-SUhw&Vzve zpn;QTVH4yohU|o7M@;N{@dZYzOU*a01rt$L;%81$Ho$o&I62l?gryFG<&m6yF|9$~ zX>7vqHY~Y+{y?#D=J_rel4i#CL;%cPUbnzzfZ3>@&73kGGr%*DEU_ z(s1f2c~-*TMux?3zqsG3df|W49Eh(g-VDicFqgz&dRN5V!7m1xi!{mykz&uG3!^rr zV2#@22A5cA1>txKeLD_-7uGq!2wSWT6*zrqg|W9K-tJXfrtd^V-`DR*HTby!&OE#c ztFuJI_^(gWrLJ5fk7saNw|r@c?bzyVo<>SRLO;wG=gf;SHts*%Ns+T=m>P%KU&%|d z3Gz@k3j$0^KAZSm}cU+Os35>&iejMeZv5yP@0F*MBvMxsfqXaf$ ztJQbdA3)t65#QCRpJ|aQ1sWW-l4iM4P9IK#JD%0X|D80RJRiye-YBle?R`Sp5T{1# zO2ili<3eo*h$KZw!T-hzS)t7gLTcK_YAiUz=<4c8cNqskbRZjrjTx|cJX4AK&&?MR z;g|@tAtE%gTs9A!=A>DXih!4_X0tqK`qF=bxcAZW><&ZK+1_{K4}gydC(n)3ua%8u zPf}+TrLh)nZsEV6Rnf)y2p#2+8LVeTgWfI26hQR0_qVFVfCDVUB7NvwU?CS1H2K!{ zvwWgmjDthSOfpBfN?a2gh{|tGG0yAdTj4ltf=Tr+2RFA3dQEd)f^tLpN{SrO1Gp8o zrOJPIf{Yxyi>`q$v>HQ2tG5u2WP(sRxD-qfQ>oh!SpapwkHYwgmHZ;9i5tMtFXFRN zuLel59aPe`ZP4PB3?O-5Z1!e$L@Rq)D`3tCYKx-~$bM@TZ!km=DS6m2S~sC${J z69Nu&fE*);ggz+L2ZRsw%}PtomiXz3UZ`RW zobGaro0+ManQg%3cgA=SN98_$NrhFJ2t)AQEi;GOk2sr{7h=%eW-yV)%BeUjS(}ZR z)@$6?8N!jD>=|sB4wm zZ3r{3B%Mt+K3cq4tA+1oYcWLFpo8C&q~c$_PbwB8iG&}&0lB;xTCz|4*Xlc|tELw% zC0O${pF7WjrC1)!xU6`vihBF~e! z^PhxIw55gizc_B;WAKZBC7liX8@wj~H=2@IfQW3pDJbkMTb~U>c`K$hCMqHKZ@SUz zxh9755%n>wS0f;WE;mXXuWq*amvTJmYyr5oHXNLJjFL|a+Mn(6yl^eF0b}t&2lC|0 zJGn2cwLfE4a3)D?@No`+{a*!skYth76f~ppWiAG8hhop6=fKt)HF`)V^VolhQROXHmQweDk z&McJ4pQxPNE&*4HG_6$Tcr*=AajY15*fHkXMAavZJY4G=xN94 z%w~eX1YwNIbK*Gu6saMH;B?%n|>Epj@{dDr0l++lz z{t*{{Ckse|a8Po|IVD=b%vdrVLa@kM-ykv~^Z1zAJL!&a$AriHKHDh5xM7aN%VLsD zmEOTfX)12e7^p(gMHFWJjAcC_=mB7e~|Ipl24*%+|&T{m5(j zKy0_JOOrK^!OM=_BdYw@0i4?OG7*_FY7K4v^xlWuMkdC?j=eEgmY=p8{$tOl{|(|v z%pYd>^3(BOW!N!-QoEg?#}xIXvj3}%p-;xJzW+;s#uD^RYeI$iY0oR6a=va2f@-gV zw&fUhG3&WMtY(IZ*FGOI&Sg5HS#2GIj@?L;@sF!{#dH;#MfTje7H)!n)38iPnVsc4 zU!Ln*ACfU<4hOC1lFy0DaVILJZ-K`phN>e@B^!Tk#FjYr?oWlAPEAn$Lw?D>ao%VB z;t|)Y@tynHuE$HH>oVEzatYmWX#VwAX(;10#>$EGu^)lC^JGxqDQL{SC*05XCGQ-K zuYnu56SiasEF+q8nkgN2K#>JDZz{FQDpt$EpHH{0I=aXBbFeh2Z-AEmrasO&O5Zse z7iP6PH-dkT{=0LB7t~q;fBf!;b`$awEOPdqxc8H@^-MmG6!Rvoa63-ATh={K*xvz4 zVl=8jjRGsN+voIe$giy$0!E2M7cEv&&j$2(YEMrtF(~VgN0iC842iswXn!2+ikZ}~ z&#pH|Mt7DPSx9|C9g|Z2F-yKp)@cIG{TjmeJ{E`f7edw#y z-oKt}w@aoS$8&}r4@&%q1k<7+)^?dF;q3LqK?nCA{rZO1w||{n=zDQZv8SzF9T>92 ziEO}%Y~S=4G=l_o8MXb`e8pY;q z-|W$5aPI1D1!tB^OHEuJ`0i&k8oAuj=Wkc_3+Q}&)vLys1Tig{4?`>*QxP`VA-O~K|I$E!oAs;{@e3zL#xjhE`=98wDjt` z&ZDU2xQSq`NhmXx`d(b-PZzvB_v{PTwClL+n9tvoP|crNwj&|@duF^!wCVwLxfi$H z5F$ve9IC@(oD(u6WZel1`zptMO-1OboJ$#Tjl{*#8!;D(1zu9Hnl~@okCY^-oZa)> z(AR;j$=QvSK0}7%^(&7Ob6gH2;5eMi5T-01Br)GXgO`{zLMYMBu7FGA;I(}BD~>a+ zj<_-!c#K#Wd)v8C=<9cg+T#8;b%+K+{0ui4%<+?~v0J;_ek6pSBz=jMyTl?OY?!1T zyKS9Cj>-Hp7m0h*F;`;?^1_R(-z(x<6wy0qbDX;hTXY~(%;IfumV_RY8ni)M>{cni z`-e4M#0l$vZ5kUDrq7nQ-EkoHS2jV;%Sz&|*r>?3$`{A#na^Kf3%TG|Z8LF|Nz|UR z0IM`xr;-@fFXp;3zIhl!vXR9(Yh1h6CrTORBzh2*4oqAE-pV=Fqgq>67GElJjH^Lw7Ke^JJbz-hdorEh&H0i-{yykz-S* z!kVi-7QhpJfMGf^jwCXKZyUn8 zKz5P}#za5Yk8WcM=2cF)`~TlIJTLlj3WT;NWbA6fh9T{`Up@(SJN7%;}xw8)E~EQ9oA)g?0n1ZzSnq;DeNFWhKEf;LjAY{*?H%s1RJ|xXO1H*gp$D zDe5Zqycttf@}X}2oKbK($on6r44U!2xKXy)OIGTbuN>;r%1|6_7M?=7F^&mhc`mC! zbe!A_{qoQOm-!*IvSo4DU-9A!Xwq~O&q3lfcQe*%c{9;F<$yjH+Z(2aH)C{`%+;v- z=c;fQ#p-VHezB?r!8--3T){^fEk;Lm*db2XHOf|QV(f1fApM09(+1hmsxs_yhD+DT zFfH)iZ8e9&cwRL87d|%5f&Vh5e@2lX$usC*a_$Q&v?4`x?6txj08{jhrdw3T3;i}z zmQfpH!3giXV$mGNoMgB_Y0j*DfX-WOsX23;mLWXl()Fr24rXeFrl>yL3X;_Gt`00WP4(&; zKoA;Wh4j*uT?D3FfEjV6Aq0f3F}dYnmc{#Ifs!y;R0CiLEN!|;*yMi32kjT&rK*e} zPdQCpoq_bs=#Rfta*Edk^fUBFNk%9DwGbLi+Lu{Y#Tl&2a~c_vgfd2KjiYykc%5ZP zQ^p2%wDf%Z>U>m@dAf&z9)JlIXWE>fl&yb`g}=PO6dz^zn@~*zBg~4|te(pl6L`UbzOXP!0#5d)0rNs+ z@2BP9jca*zJ0MTC%?3-gI35n{-2}5+abdWV7>68~a?E-t3zVZWY5%pM+WQH~c&EbI zavL^hQLJvq4RQhX`;lh7S74qA-P)udYb@Ya%ooBwRp)L>@LLjhK8V?MowVsB59VqZ#N5Pd+r z!)AW5B*Ojjl~17a>2B8S)-UML_9Hpt9~KTb<}v*E zZ?$kh^miZW@AXIK>9t$*x{i~Fj{oX@d)_L!Z?*Y%Gl0kPVyt|mTYifd{~glW65PdeCYj!5^!Fw#&!*&Ov|&AyKGlz}t&ZHj8Tq|^3YPDw z9SzhRQHMNzvH6DK>yBTtXo}O_zbvE)aLRNLjA0CHa?|<~tT>Xo2s2?5Oyv`Zcob`bGKYC>*E#lgKx4;yeo)~Xa&1B#@M5VY*qdvj_s?x;wekkqBAEeAuE4@ z#{qFz6XU5X``{(eO2cYiqzq-r2l_9IZeDNj_5SEzSuqqW#s$)pZe)`l)^Ic(MS!Yy zPaXghyGx@}ykF*@rI~?U# zcTP*{&7DWd`^`pZH{|g3b67#m--bwo`%YkKX&BVE?%(R-8^jA7_E6{U7N?WK2$cGEKwavLg-TRcO@i4@TNV@%>3?1TOKMsc0!(g zc$IPyu|**?sonP~(oehMr$6&HhbD^d0)lhI9_HL1m}DP%`rxZ_H@|NXsgKk}PpH13 z-=Tl~Z^nrp31lB8p2&+H|Mc~<_ukc?Lf!A_H?D^)hF;6v`gR{i%EhY5-iWSU6t;Vg zytWwBO6~nba}t2-;1)pUz!!plSJ&|}o3;xVTiZPTlEtt%3}de^9n}hUalP()rSg>$#b#Z2z8LRq!sf#-k*hNA zxG$>Cp3WN*tqR%{?xuh4Y7}U#T%l6~6RJh+sgzQnOrH@<%BFm+xAeO=RTRUak1**G zNczdXeAj^I>xe7|wxeJ# zr<6OzshQupRv)H5Chs(;;p=S&51u)maa~-)Ms8aPS`ThE@C*uK*KoLq+WNb3W4}_EY@gTh))%zO05Z#^i4d!y$GnQjLnL ziktyC%&K!P*%BH5vM~p$VGPrAKCT^bQBG@;!LoZVfkB?qGCgfsZfs8AbN*VpA-?)2 z)+VZU6ZGhj$aa<$P8s(5ZPVP(3vq%bIA^17;&+bQ?Mx81fyS$D4W5ZjCAhxvd+oNp z=Xwtm$E`UTnst7X3nsV&gitByTSn^mW#tr5>e+;NK{TiAwuoP^*b@p`!y#Ndu`d$x zkOVGDx?)l;2(v`WH=If&{M$a!H=nz?dGY?iZ{QW4N>+Jh*8JnDbSCgXXql30VegJpKFLn6-V36xXg1EopDtnM;gBRf!TRU@=qo>xor)^c79rB{+rZjS@(8G$#UE-xB8CUtcKdpgb zew991tZUH_IpsfJ(oc*4DGFJ+SyM#kHrz@s6Mm+`1N>uX2zp6kJ61JV*_@#DX%ri! z+(4+6skPWGlczvH9GEXXOZOf8AJ%iMyrNj;kE1@n*fBFp9u4lmoJfG@=io?MNw)9A z+Qn}fkPNllh^m& zcfL0-kzJVR&<~Fx6c%Li)&>J}j`t}uBOlb1?Uw^4;DVwcvsQ;=oJaJ#0T zmo~?ZC<-7jvxU))3KN)^FKcfBb z@(3EK+PIbJ{=?01M7KH+8x1NI#28D9_@F__6j8jcccxw3n-1eJ1X8LAemli&_%O!- z%n&bxtzpP*bm#&xpMyItQl}?T`&ogytV|t9?qd2WiMtHfWKBn|vp~x(W~YLGyVpM- zM@8&`E|K{wmAwd{c)G6|NO}SP1Pr_(S^GfCl*4YB7`GQMT?3y9lHRZD^N{mXrXU=DP5Kss^>O)gt4ZWD}<=$v`3pE$SHbq|bb zQ=R>GN0T6VrMc10%iZsp&x%%TK3{>wP9Yy7FIUmb@3d(GE6YT(E8H#OARg8TL3-2x zu%ftLoa88&k{>80TG})N1Z`(brPz!^wO(L98$`RQf0Bb!qikTrhSgt+7EH3?qml$9 z2Xh+f5@*kXr7DN%*7Efim*y-ME2ePpgj2f&m;hj-EKMimB2HqcFeP<;{$L2!rqPY9P3U2mPMiL@fnaN6SkCP=99|WIoohhHfa3Xg=u*rEeF>) zB|QyV3(jHvrC$u41XxW}1zg1Z|CtPRn$6{3;?2A&^OpZh;zDF5J5(A8fMsh z70nn5%6BdsTHnbDG$yh-SYonDfEf2N@Ya0#&@HYh^x2=5>_ICEx57(oAcH9%mBX*` zWuN@58~ID%r2O|6?50C?!SvvE^;_>y>k-gIoUZD7;CquJqDnxQ?k6^O>O|o8F{S?W zmzk7(m48rwix~XCVj5f=5_U-8mR5AvcHJl#Z}Ul_Ks9Ne-Po9JHfs4LDZSlfruyku zl`0gFIz#98XOC{Cq@z@&x1-khcC~v!9IsSIQJ+W2zN&Zm+G>cd7*oA$R|xvZa(ub{ z>ZAH^JN+*Sfh9@St?}N#mhq@tl8qtzNDS19DDS4dTIC%c~qY3*}q`C9oW69`iq8_>q zi3?n}kiYLY5Wh@+Jbg{uK68*tU58!=pk8+~TgA)05m=IU+~Sube(=AeVI*mNPfXnx zpDl-fN+OT%`t!ml=BdlcE9YzX$WDdTm?n{{og*#ki zXoe9sgdi&X_j-7D4k?O9DrUr!v1ofK{5Asc+&Zs0%t8)53&nkK2n*K+;YI4e6${9; z9YK<6ZT_#6*)z3Snp7=R`%w#L%Io!>FJ{ad+OQ360M6InjtsiBaAZ@Tkx?FLe-6&+ zw(m|w*$BMh)|-?gQ@vsf zkRZd8_<@jE_+GJc(tmWToxZ{FN3s>LKA-LJ&da2r-LRozo~q2kRJyE9nmT7z*;e>> zfS!r@qL^Ivy?H0A;D$nz>^c|zRttZd7|P`v%?K&GR*G%sh8n1Se1 zBfI;gnkA6oxcJDPy9RfIr0vp2hOrjZh+F#XN}V)$BhcJ5SH9>@5C zw{%1EbKWaq2#!KgpVx%NJp>NlyQmMo2cT7-1>i1kBE;Q7|1ode?o#_BRyASp<=*hy z(0|na_bq*~DEpoe{4*+uY$ArGMh!#n{GPA(=$;IN_lTZ3LytP1v3hSFku;V_3Y41# zxg`awl|r7w56_=*Hjz`%A*{ZOB>!z)C`8vil!mD1&T#|&a&)1h!LzUjFV7oT{Ns=W z_~V2SDC#HSOK6!A^~gKQka|!Q#o9D|+YjpkO-jaB67*8E6WZ86p(z$n8(BcNgX~^q z#Vk;A(F`Ic2t|{E8|vI`1v(No*9i9wm*=W9_E|=?ELYII_lO@zk9-G1^Tp0rXLB2s zv$z-c^Z53WS##p#qGFUSma$P1ADelB= z%AY&+vPnHvb4|76eCnYw%{M4!8Tc4V;tHOa@%z-Wz9W`(qq)wRq-31ezH(Hmxb8>Y zoG-QOZx;UNBh&9UOuFXMy{I;S6XAH-5FZMR5iID`xZe7EpK(-^#-ev8txd;u%yUz& z!(c!ETe*&i)H4V7CU3FZo@k*WmO|=nmy5EVN?jJxyH4}{eer<=K`)ct4!@3*x5ZYF zf)_v8{U)({qEpK0)(YEg~}^72o_a? z%&%dn@MzE~IsSB!uL1y|ny)sI{=Gl5F)_PdR*hc7737ko0L*SVhMZ$Io4gtaLM^|K ziuA_HS4QeZUkMyo{Zs+Ef>*v^zU<`Zf^~^El{j};l0qvlUw;S+c?>jW5ZLO znF{I#7hbIw5j}nRA4@KeAe`&KXNKpltZcDcrdRt$&hf)5sC}gxtc;5fG4*2HkcIXoCSRAo-+v-7^GouWJ3U!ZM`KtROzmeWsb)r+w(r6OX@ea? zeyU0Q`m^R$5DtwVGY_MNkAg3ZXJMpHF4&m9ojG?>arjZD+b97qCHcHQlZjSsZ}$S{ zAmimRL+auJ2}~6BW)*Gx2)kL5RTW>6>NQM12{@2QB19#k{Fl>^FfBU1=*uY;Y|@TO zX45^L=&xd=QFFgT{8c>f@FZ&dnh=#xl%VOFOQYJTX;%?Rsn7f&`O%_v*L_i&Ls^oE z8t)9>o=NiHooJ^_xUfd0(O4>x8qnr67-##-KzvhAGgYRw)C$i%)%{`e?qmyMDoyJ`+#N9E@4UpY4FA}% zX#Zb#^a|flAi4oI-(^<1IzrXL9`atE8;iU%YWIAh23_h`mVeO9fBEW{k`r%hXBbKO zp5$a$T*Xyfib_-Gv-wB`Joy6b)GimO-sm8*Q-}<4q?sMyS^8Iw0{g!h*6)M{ED05w=OD?gUW)uEW<%nLS zJkHPTeu2H;HaO2T@F8ii@V7q^>}t9c6snBJ*w@tQ{@J*b%{3Koug9Je#(Fjzrzjgg>6qgD$pOpBQOzIdlMo z6H-N)ku1$0`5BJhD0;Xx47?-#%F?)$;a^Np^Wx_d(Wu?#d5g~@T z^s|wQTQnNX44%Teh(FkkX6+2q$ZL6k^>{Ts^(zujdv$9?jY_TQ){)Q@dt#!|44o=t zih-{~k~-K{?3Rfk-$1hYIL*J}qm1Ii^_l&D+i6=`n=&ec9K~4d8A@~S%HEu^fh9l~ z;+erU;3EwRuX5?toC-pF^qA7TK=5U8_M15JoZ+CQDbEc2_59S&%B0ztAOWI10@Azn z7JzE@mmw=L046@S8u3i?2OKYT_)$6m{+dbZj&eq{6G(+Bl-F$o^dcb|bNoJi8_B0M z$Y1GitR;Z1k_wR>A5inxvdLCo_&R!3?IF9yb^2AUv*w-13wfP%s}c}4%;%;-qvy~m z!pf8!;j`irSJDv)VV1u5PSu=|0ha)g*~W_AzIDzAxf$Q^x^n67QIZ)t6$vWvf0X~| zy(kqC`m6NMWaN)l2Bz&Uffa^K>xp#cPV5%5s1Wu|d`C|j&2+@n59}ZgoDY!@Ee%D~ zXK->{%h`~d&lV8*-g5G899=q-(nHyd>$E$l3tV2`654~GW2ci@SKzYDOv%VZJ20bo;{kd=m6aXKM zIAF#{XuzPccdhTEqV+f6%-SWFJH*P4`r@4Ypp+9^ z5rVvmUbceWDB?6CPk3H*M6PPkQ~_Hi8xB}59=>t<{5++cQffEJF-UPg_|80C>1 z!}fG~I=LC(NF1y)4I1EW?&d#t&Zv29odv1(7Fk(^-Rq_v@;{d0)>|>mT$&{`xikhh zMC%o|XH_7+r!qc{s^_4*ZVcMird(20t)^f5-{~mtA1&h9dx6w)58VTqYg^shIW1l8 z;W=3`xL(a4vukC!CuKcS!&;Cl#RAuP)?z)uDJ48ooY_qYpQ=;>{%f36r_{hPC`)lF z+X)i?^3Byh)!+8V82Hz-3Q?sQ4pqk)FS$N0CmZ;0YN5Y^f4pF9qe+OAc8#tJy`_mX zJG2@oN9Gi=D~cLSwro(#ofFNT-e@1CZKuS26xiQJN$1-0-X3af5$?~Km`H~-#y)sZ zrL+xZJ`2VjTzZtx87Rt9Pc_*d7RwcM#eJoP+CJ z3Wqn_yp1G-+1rWC+eHXeD* z0+t^=hR}Jp+m$54*J%UMm!+;T-NJ5ce{2t<@&-k3_`2o&8`|LeWB&uy|5Z0a>C(bZ zu>5bbprcuq2%qj-@4i&Oko&ZY2SX&jd+2ckeB2!=)_u*16q9`B3`^2PZb4xcQV)2+ zmvLb+yib>X5Q@-kth-B1Bv8wCRDz z(}w`^Ncphe&`3n?1TC%Xb8~UK+ggXv*n-W(PAY_5%1zHJmQL;hDApgLkE$8XwX$<|ZH2OF%{7B$LHaV26DLw16fT=d&tG%F zxm;T8-z5;M)mlMt)X2SJRw+EGoeTA`ess7pA2uF?1O<;>Ewf$`Q>9tFS8L<4&WTmNC}up)RM-f1B*}T8lrYBl zAO@MH&Lk~gknIz^Ea7Y_iXn6@v8~WvlWAL)^_G45WUn2VJm^8%wuE*ngT<8k%3UDt zgTt$-Ie^KP_uo(LZ}aP{%(8apYbo)U=ZbB6vS^YY`4t7V4t^Zo-jqxA#Xb+dG})n1 z!>l#RhYr9#;uW=VbMc%G``=^d?rT1lkPw)*?<;X=puytDgAj?kaDW49nc$HpTgt^dR8 zjjIV$f5ct`tWzkIup#(4?_!|gnbA2g4bDj2m)vzqJ)hs9Y#pq@dqKz-?xByo7a0vm?1s>zNB^^WcP~URL0b0} z>5nV;?T%t<8|PUl&=87XLs7DbZp?fsZp;D+v3Pr4KHi!~zy~IqT7AfBT{MyXGVP91 zxp}Lxr>Lu|c5P@&YFlTNk+DeX**qV9F5#ny_5M=((_8)e6gf(s6D{Q8?Zg|CNmTRx zyOn^+bymetAQR(`2 zQ2j8!XaQyG2-{4`+?(0yJK9#$$er>l=Oj@kZS| zHL-<$H$@lQ@<;c}u)d^1P{7&6BMiX*e$7R$JNS;!y*>Rf6=BB1z2@BXRyJdXBFQ|z zh|smjTcaMoXH%x@txV@IoaOuicapcgOhB08y@*i!pCEGqv+?2ih=q@hZsV`s$qwxJ z?-%N1*v)^&RN;o>{_W>pe)5YwUeen2Pu5cWXv(966|ZiK`#b2P(U{ETp(npEgBt3|H^`dUfPeuZsV3zt|K%;DuEN6U`aK zu0(XPYiUd$f1lgh*o@g}2Ik$uS3yvFr<`k%%i_$G7dCByx!z(;s%2Y!KO+O+z9%Fz zt=1l!@4GS0;=F(Enm69{?jjljUfEzwA7-YNso`hUGZpO>s;On{guI#_qKXn$6;z1l zR-vL6sh#kv#(KxJiAMVf!d&3irGUKT;X~g`CI>)5g3p^z%GEcNjX~!+Ke)<@QG~7I z9aW)&%O_*jSVr0=TuH^Z1k+CtrhuMEO1?~4Gbv{LOqgs#VA9D(LgU@E zbqE>wNawBjm+(e*S^z{*F}&s>#P!0*^#E;;P~c1|g}T%F}hAW`l&sl?JM5XN9Pn z{=hMj6Ly&BrI6e|7nSdPxthPIOA)B!O$ugr1~+wTn6Zm(ZoUo^^6hnG$?Q6I(k+^2 z-x=c(t{@8`tKag!%=69+l|+gt6?|7FnKSFy%OCl|7H{id7)?p1KBSN@kaSVcAH@@L zc~Mr7NY4VGIjJW3QJSz|20fjME)nFs`QA2@4x(q{2y-+yBxPHqxzOu_uXDC}HD&zIy@^g)gFELZ~qIi{&;#(BQurkKIio0FNURNqO z)wi6@_!0{IFqZUblZhcDYgddtw=Dgj-~(X`WL4yMOmxos)icV@Tn))LV`C9-FQcMQ z-G5-S;$|WpcN=VGU_JlOemNfI?qVpQ>FZSi8cdtM%zY5Q;ahY?49 z*Uui)Gn67L<}X_WC6YojHaeOlGhHMCAMnmm4en=bX1E*VLoQ>iMx@CgN@{BimXDH= zw|gN~dLMuVL6;FHjbwNpd9e8@kUP}137(fZjpqbqzd()0 zjG=kSI*OY!g7WCurh=?hY?|WnD=uhYkr+u%hGHYZ^{s=?*h+7+5+7WNXNY}b=~XYy zl$FaU2ki52e-XQU1BbORQmH*`zD|%XoH30bU9B=k&t#R6#hy|tfhK2MsEq63w`^ko z_$JCniF0%r%A@e@6NgC*?Zrkc?sc8rQI?MvTCv)$62DvWSEo- zGtzbHptB3uZ(8Nl(YV10jDfgJA_}X<)sR6VVu3hpfCCf4)HVpl_fdB-#UF=wYouo3 zP`Pl+Ff;2b2+i?j$Wi{oIDoQtAv04pi-A%ew$0s^(oxSk_hz^n_qY}K~|x`>5`T5=Q2njHlAy(dUur`94TX^ z_E`sLc*q4VjQB#M6fZ5LGDy1Y0|8}ckw?jSS!<^mWZTJ4FxMD>M9kFye-CHB@D_>V z#KflW>c?Nuf-z6sKaH^m#@t>Qb5Hv^<=X_sbpOi7K(_w;!Gd?USn|W6<;gmedWi7{ z>v-12n}|>U*(yp0=eJkiNpEU?nsU%ndU!`5rXj1M#oITzAI)tYmkA=|;sx{9e${>% znrGiqlEZ&o)}zXU6%`KU2j{vjRixX&X{-)vq_9-7Lx!O?It^f&*(K)tA1mo9m+4

    WDq(pPa*wreoXD--^ngO6j#qH^y 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 Fnr#qwWo%$^Cx~v%I2rnQWUnV&+fu4lM$o#@389 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

    dBv)S%DE97fI7H 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

  • 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