diff options
107 files changed, 25242 insertions, 6200 deletions
@@ -2,8 +2,13 @@ For a more comprehensive changelog of the latest experimental code, see: https://github.com/scummvm/scummvm/commits/ 1.4.0 (????-??-??) + New Games: + - Added support for Lands of Lore: The Throne of Chaos. + SCUMM: - Implemented PC Speaker support for SCUMM v5 games. + - Fixed priority bug in iMuse. As a result the AdLib music should sound + better, since important notes are not interrupted anymore. SDL ports: - Added support for OpenGL (GSoC Task). @@ -153,7 +153,7 @@ support an unsupported game -- read the FAQ on our web site first. ---- --------------- To report a bug, please create a SourceForge account and follow the "Bug Tracker" link from our homepage. Please make sure the bug is -reproducible, and still occurs in the latest SVN/Daily build version. +reproducible, and still occurs in the latest git/Daily build version. Also check the known problems list (below) and the compatibility list on our website for that game, to ensure the issue is not already known: @@ -164,7 +164,7 @@ completeable in the 'Supported Games' section, or compatibility list. We -know- those games have bugs. Please include the following information: - - ScummVM version (PLEASE test the latest SVN/Daily build) + - ScummVM version (PLEASE test the latest git/Daily build) - Bug details, including instructions on reproducing - Language of game (English, German, ...) - Version of game (talkie, floppy, ...) @@ -303,12 +303,12 @@ SCUMM Games by Humongous Entertainment: From Your Head to Your Feet [pajama3] Pajama Sam's Lost & Found [lost] Pajama Sam's Sock Works [socks] - Putt-Putt Enters the Race [puttrace] - Putt-Putt Goes to the Moon [puttmoon] - Putt-Putt Joins the Circus [puttcircus] Putt-Putt Joins the Parade [puttputt] + Putt-Putt Goes to the Moon [puttmoon] Putt-Putt Saves the Zoo [puttzoo] Putt-Putt Travels Through Time [putttime] + Putt-Putt Enters the Race [puttrace] + Putt-Putt Joins the Circus [puttcircus] Putt-Putt and Pep's Balloon-O-Rama [balloon] Putt-Putt and Pep's Dog on a Stick [dog] Putt-Putt & Fatty Bear's Activity Pack [activity] @@ -770,11 +770,12 @@ to be able to play the game under ScummVM. 3.19) Dragon History notes: ----- --------------------- -There are 3 language variants of the game: Czech, English, and Polish. -Each of them is distributed in a separate archive. The only official -version is the Czech one, and the English and Polish ports have always -been work in progress and never officially released. Although all texts -are fully translated, it is known that some of them contain typos. +There are 4 language variants of the game: Czech, English, Polish and +German. Each of them is distributed in a separate archive. The only +official version is the Czech one, and the English, Polish and German +ports have always been work in progress and never officially released. +Although all texts are fully translated, it is known that some of them +contain typos. There exists an optional Czech dubbing for the game. For bandwidth reasons, you can download it separately and then unpack it to the @@ -846,8 +847,8 @@ site, please see the section on reporting bugs. Simon the Sorcerer's Puzzle Pack: - No support for displaying, entering, loading or saving high scores. - - No support for displaying explanation, when clicking on items in - Swampy Adventures. + - No support for displaying names of items, when hovering over them + in Swampy Adventures. The Feeble Files: - Subtitles are often incomplete, they were always disabled in the @@ -868,7 +869,7 @@ site, please see the section on reporting bugs. ScummVM has been ported to run on many platforms and operating systems. Links to these ports can be found either on the ScummVM web page or by a Google search. Many thanks to our porters for their efforts. If you have -a port of ScummVM and wish to commit it into the main SVN, feel free to +a port of ScummVM and wish to commit it into the master git, feel free to contact us! Supported platforms include (but are not limited to): @@ -955,7 +956,7 @@ arguments -- see the next section. --themepath=PATH Path to where GUI themes are stored --list-themes Display list of all usable GUI themes -e, --music-driver=MODE Select music driver (see also section 7.0) - -q, --language=LANG Select language (see also section 5.2) + -q, --language=LANG Select game's language (see also section 5.2) -m, --music-volume=NUM Set the music volume, 0-255 (default: 192) -s, --sfx-volume=NUM Set the sfx volume, 0-255 (default: 192) -r, --speech-volume=NUM Set the voice volume, 0-255 (default: 192) @@ -1026,8 +1027,8 @@ Examples: 5.2) Language options: ---- ----------------- ScummVM includes a language option for Maniac Mansion, Zak McKracken, -The Dig, The Curse of Monkey Island, Beneath a Steel Sky, Broken Sword -and Simon the Sorcerer 1 and 2. +The Dig, The Curse of Monkey Island, Beneath a Steel Sky and +Broken Sword. Note that with the exception of Beneath a Steel Sky, Broken Sword, multilanguage versions of Goblins games and Nippon Safes Inc., using @@ -1081,16 +1082,6 @@ Broken Sword pt - Portuguese cz - Czech -Simon the Sorcerer 1 and 2 - en - English (default) - de - German - fr - French - it - Italian - es - Spanish - he - Hebrew - pl - Polish - ru - Russian - 5.3) Graphics filters: ---- ----------------- @@ -1284,10 +1275,14 @@ other games. b - Background sounds on/off [Simon the Sorcerer 2 only] Pause - Pauses - t - Switch between speech and subtitles + t - Switch between speech only and + combined speech and subtitles + [Simon the Sorcerer 1 CD (other than + English and German) and Simon the + Sorcerer 2 CD (all languages)] v - Switch between subtitles only and combined speech and subtitles - [Simon the Sorcerer 2 only] + [Simon the Sorcerer 2 CD only] Simon the Sorcerer's Puzzle Pack Ctrl-d - Starts the debugger @@ -1305,7 +1300,8 @@ other games. F9 - Hitbox names on/off s - Sound effects on/off Pause - Pauses - t - Switch between speech and subtitles + t - Switch between speech only and + combined speech and subtitles v - Switch between subtitles only and combined speech and subtitles @@ -2140,7 +2136,7 @@ debug messages (see http://www.sysinternals.com/ntw2k/freeware/debugview.shtml). Maemo: * Get Scratchbox environment with Maemo 2.2 rootstrap (2.2 is for 770 and up) * Install libmad, Tremor, FLAC from source - * patch scummvm source (some stuff is currently too dirty to be in svn directly) + * patch scummvm source (some stuff is currently too dirty to be in git directly) patch -p1 < backends/platform/maemo/scummvm-[currentversion]-maemo.patch * update debian/changelog * run 'fakeroot dpkg-buildpackage -b -d' diff --git a/audio/decoders/adpcm.cpp b/audio/decoders/adpcm.cpp index f75196c882..116f2f776a 100644 --- a/audio/decoders/adpcm.cpp +++ b/audio/decoders/adpcm.cpp @@ -234,7 +234,7 @@ int MSIma_ADPCMStream::readBuffer(int16 *buffer, const int numSamples) { while (samples < numSamples && _samplesLeft[0] != 0) { for (int i = 0; i < _channels; i++) { - buffer[samples] = _buffer[i][8 - _samplesLeft[i]]; + buffer[samples + i] = _buffer[i][8 - _samplesLeft[i]]; _samplesLeft[i]--; } diff --git a/audio/decoders/qdm2.cpp b/audio/decoders/qdm2.cpp index ec2911ef20..19b30217e9 100644 --- a/audio/decoders/qdm2.cpp +++ b/audio/decoders/qdm2.cpp @@ -34,6 +34,7 @@ #include "common/array.h" #include "common/debug.h" +#include "common/math.h" #include "common/stream.h" #include "common/textconsole.h" @@ -289,21 +290,6 @@ private: typedef signed long long int int64_t; #endif -// Integer log2 function. This is much faster than invoking -// double precision C99 log2 math functions or equivalent, since -// this is only used to determine maximum number of bits needed -// i.e. only non-fractional part is needed. Also, the double -// version is incorrect for exact cases due to floating point -// rounding errors. -static inline int scummvm_log2(int n) { - int ret = -1; - while(n != 0) { - n /= 2; - ret++; - } - return ret; -} - #define QDM2_LIST_ADD(list, size, packet) \ do { \ if (size > 0) \ @@ -1836,11 +1822,11 @@ QDM2Stream::QDM2Stream(Common::SeekableReadStream *extraData, DisposeAfterUse::F warning("QDM2Stream::QDM2Stream() u4 field not 0"); } - _fftOrder = scummvm_log2(_frameSize) + 1; + _fftOrder = Common::intLog2(_frameSize) + 1; _fftFrameSize = 2 * _frameSize; // complex has two floats // something like max decodable tones - _groupOrder = scummvm_log2(_blockSize) + 1; + _groupOrder = Common::intLog2(_blockSize) + 1; _sFrameSize = _blockSize / 16; // 16 iterations per super block _subSampling = _fftOrder - 7; diff --git a/backends/mixer/wincesdl/wincesdl-mixer.cpp b/backends/mixer/wincesdl/wincesdl-mixer.cpp index 36ac310ad9..c7659cb0f5 100644 --- a/backends/mixer/wincesdl/wincesdl-mixer.cpp +++ b/backends/mixer/wincesdl/wincesdl-mixer.cpp @@ -131,15 +131,20 @@ uint32 WINCESdlMixerManager::compute_sample_rate() { ConfMan.setBool("FM_medium_quality", true); ConfMan.flushToDisk(); } + } else { + if (!ConfMan.hasKey("FM_high_quality") && !ConfMan.hasKey("FM_medium_quality")) { + ConfMan.setBool("FM_high_quality", true); + ConfMan.flushToDisk(); + } } // See if the output frequency is forced by the game if (gameid == "ft" || gameid == "dig" || gameid == "comi" || gameid == "queen" || gameid == "sword" || gameid == "agi") sampleRate = SAMPLES_PER_SEC_NEW; else { - if (ConfMan.hasKey("high_sample_rate") && ConfMan.getBool("high_sample_rate")) - sampleRate = SAMPLES_PER_SEC_NEW; - else + if (ConfMan.hasKey("high_sample_rate") && !ConfMan.getBool("high_sample_rate")) sampleRate = SAMPLES_PER_SEC_OLD; + else + sampleRate = SAMPLES_PER_SEC_NEW; } #ifdef USE_VORBIS diff --git a/backends/platform/dc/dc-fs.cpp b/backends/platform/dc/dc-fs.cpp index ac709f62b9..c46f9df093 100644 --- a/backends/platform/dc/dc-fs.cpp +++ b/backends/platform/dc/dc-fs.cpp @@ -124,7 +124,7 @@ bool RoninCDDirectoryNode::getChildren(AbstractFSList &myList, ListMode mode, bo if (mode == Common::FSNode::kListFilesOnly) continue; - myList.push_back(new RoninCDDirectoryNode(newPath+"/")); + myList.push_back(new RoninCDDirectoryNode(newPath)); } else { // Honor the chosen mode if (mode == Common::FSNode::kListDirectoriesOnly) diff --git a/backends/platform/dc/selector.cpp b/backends/platform/dc/selector.cpp index 859f2a40ed..339e5df62d 100644 --- a/backends/platform/dc/selector.cpp +++ b/backends/platform/dc/selector.cpp @@ -185,12 +185,24 @@ static void makeDefIcon(Icon &icon) icon.load(scummvm_icon, sizeof(scummvm_icon)); } +static bool sameOrSubdir(const char *dir1, const char *dir2) +{ + int l1 = strlen(dir1), l2 = strlen(dir2); + if (l1<=l2) + return !strcmp(dir1, dir2); + else + return !memcmp(dir1, dir2, l2); +} + static bool uniqueGame(const char *base, const char *dir, Common::Language lang, Common::Platform plf, Game *games, int cnt) { while (cnt--) - if (!strcmp(dir, games->dir) && + if (/*Don't detect the same game in a subdir, + this is a workaround for the detector bug in toon... */ + sameOrSubdir(dir, games->dir) && + /*!strcmp(dir, games->dir) &&*/ !stricmp(base, games->filename_base) && lang == games->language && plf == games->platform) @@ -237,19 +249,24 @@ static int findGames(Game *games, int max, bool use_ini) } while ((curr_game < max || use_ini) && curr_dir < num_dirs) { - strncpy(dirs[curr_dir].name, dirs[curr_dir].node.getPath().c_str(), 252); - dirs[curr_dir].name[251] = '\0'; + strncpy(dirs[curr_dir].name, dirs[curr_dir].node.getPath().c_str(), 251); + dirs[curr_dir].name[250] = '\0'; + if (!dirs[curr_dir].name[0] || + dirs[curr_dir].name[strlen(dirs[curr_dir].name)-1] != '/') + strcat(dirs[curr_dir].name, "/"); dirs[curr_dir].deficon[0] = '\0'; Common::FSList files, fslist; dirs[curr_dir++].node.getChildren(fslist, Common::FSNode::kListAll); for (Common::FSList::const_iterator entry = fslist.begin(); entry != fslist.end(); ++entry) { if (entry->isDirectory()) { - if (!use_ini && num_dirs < MAX_DIR && - strcasecmp(entry->getDisplayName().c_str(), "install")) { + if (!use_ini && num_dirs < MAX_DIR) { dirs[num_dirs].node = *entry; num_dirs++; } + /* Toonstruck detector needs directories to be present too */ + if(!use_ini) + files.push_back(*entry); } else if (isIcon(*entry)) strcpy(dirs[curr_dir-1].deficon, entry->getDisplayName().c_str()); diff --git a/backends/platform/sdl/win32/win32.cpp b/backends/platform/sdl/win32/win32.cpp index c1b6c853e4..a2c8e43424 100644 --- a/backends/platform/sdl/win32/win32.cpp +++ b/backends/platform/sdl/win32/win32.cpp @@ -23,11 +23,6 @@ // Disable symbol overrides so that we can use system headers. #define FORBIDDEN_SYMBOL_ALLOW_ALL -#include "common/scummsys.h" -#include "common/config-manager.h" -#include "common/error.h" -#include "common/textconsole.h" - #ifdef WIN32 #define WIN32_LEAN_AND_MEAN @@ -35,6 +30,11 @@ #undef ARRAYSIZE // winnt.h defines ARRAYSIZE, but we want our own one... #include <shellapi.h> +#include "common/scummsys.h" +#include "common/config-manager.h" +#include "common/error.h" +#include "common/textconsole.h" + #include <SDL_syswm.h> // For setting the icon #include "backends/platform/sdl/win32/win32.h" diff --git a/backends/platform/wince/CEActionsPocket.cpp b/backends/platform/wince/CEActionsPocket.cpp index 194f855e98..5980a41caa 100644 --- a/backends/platform/wince/CEActionsPocket.cpp +++ b/backends/platform/wince/CEActionsPocket.cpp @@ -215,6 +215,8 @@ void CEActionsPocket::initInstanceGame() { _key_action[POCKET_ACTION_MULTI].setKey(Common::ASCII_F1, SDLK_F1); // bargon : F1 to start else if (gameid == "atlantis") _key_action[POCKET_ACTION_MULTI].setKey(0, SDLK_KP0); // fate of atlantis : Ins to sucker-punch + else if (is_simon) + _key_action[POCKET_ACTION_MULTI].setKey(Common::ASCII_F10, SDLK_F10); // F10 else _key_action[POCKET_ACTION_MULTI].setKey('V', SDLK_v, KMOD_SHIFT); // FT cheat : shift-V // Key bind method @@ -268,6 +270,15 @@ bool CEActionsPocket::perform(GUI::ActionType action, bool pushed) { else _key_action[action].setKey(SDLK_s); } + if (action == POCKET_ACTION_SKIP && ConfMan.get("gameid") == "agi") { + // In several AGI games (for example SQ2) it is needed to press F10 to exit from + // a screen. But we still want be able to skip normally with the skip button. + // Because of this, we inject a F10 keystroke here (this works and doesn't seem + // to have side-effects) + _key_action[action].setKey(Common::ASCII_F10, SDLK_F10); // F10 + EventsBuffer::simulateKey(&_key_action[action], true); + _key_action[action].setKey(KEY_ALL_SKIP); + } EventsBuffer::simulateKey(&_key_action[action], true); return true; case POCKET_ACTION_KEYBOARD: diff --git a/backends/platform/wince/CEActionsSmartphone.cpp b/backends/platform/wince/CEActionsSmartphone.cpp index c6456d3eb5..2cce288323 100644 --- a/backends/platform/wince/CEActionsSmartphone.cpp +++ b/backends/platform/wince/CEActionsSmartphone.cpp @@ -181,6 +181,8 @@ void CEActionsSmartphone::initInstanceGame() { _key_action[SMARTPHONE_ACTION_MULTI].setKey(Common::ASCII_F1, SDLK_F1); // bargon : F1 to start else if (gameid == "atlantis") _key_action[SMARTPHONE_ACTION_MULTI].setKey(0, SDLK_KP0); // fate of atlantis : Ins to sucker-punch + else if (is_simon) + _key_action[SMARTPHONE_ACTION_MULTI].setKey(Common::ASCII_F10, SDLK_F10); // F10 else _key_action[SMARTPHONE_ACTION_MULTI].setKey('V', SDLK_v, KMOD_SHIFT); // FT cheat : shift-V // Bind keys @@ -232,6 +234,15 @@ bool CEActionsSmartphone::perform(GUI::ActionType action, bool pushed) { else _key_action[action].setKey(SDLK_s); } + if (action == SMARTPHONE_ACTION_SKIP && ConfMan.get("gameid") == "agi") { + // In several AGI games (for example SQ2) it is needed to press F10 to exit from + // a screen. But we still want be able to skip normally with the skip button. + // Because of this, we inject a F10 keystroke here (this works and doesn't seem + // to have side-effects) + _key_action[action].setKey(Common::ASCII_F10, SDLK_F10); // F10 + EventsBuffer::simulateKey(&_key_action[action], true); + _key_action[action].setKey(KEY_ALL_SKIP); + } EventsBuffer::simulateKey(&_key_action[action], true); return true; case SMARTPHONE_ACTION_RIGHTCLICK: diff --git a/backends/platform/wince/README-WinCE.txt b/backends/platform/wince/README-WinCE.txt index 8f1262051a..60bcf710bb 100644 --- a/backends/platform/wince/README-WinCE.txt +++ b/backends/platform/wince/README-WinCE.txt @@ -1,10 +1,19 @@ ScummVM Windows CE FAQ -Last updated: 2011-07-01 -Release version: 1.3.1 +Last updated: 2011-07-20 +Release version: x.x.x ------------------------------------------------------------------------ New in this version ------------------- +x.x.x: +- Changed default values for "high_sample_rate" & "FM_high_quality" to "true" as + most devices today are fast enough to handle this. It's still possible to set + this to "false" if you have a slower device. +- Fix for TeenAgent & Hugo engines (both weren't running at all, crashed right + at the beginning) +- Replaced the game mass-adding functionality with the functionality used on all + other platforms. It now shows progress while searching for games. + 1.3.1: - Fix for Normal2xAspect scaler which was causing screen update issues in some games. @@ -361,14 +370,13 @@ Some parameters are specific to this port : Game specific sections (f.e. [monkey2]) - performance options * high_sample_rate bool Desktop quality (22 kHz) sound output if - set. The default is 11 kHz. - If you have a fast device, you can set this - to true to enjoy better sound effects and - music. + set. This is the default. + If you have a slow device, you can set this + to false to prevent lags/delays in the game. * FM_high_quality bool Desktop quality FM synthesis if set. Lower - quality otherwise. The default is low + quality otherwise. The default is high quality. You can change this if you have a - fast device. + slow device. * sound_thread_priority int Set the priority of the sound thread (0, 1, 2). Depending on the release, this is set to 1 internally (above normal). diff --git a/backends/platform/wince/wince-sdl.cpp b/backends/platform/wince/wince-sdl.cpp index ec222c6fc1..1abc3cb350 100644 --- a/backends/platform/wince/wince-sdl.cpp +++ b/backends/platform/wince/wince-sdl.cpp @@ -42,6 +42,7 @@ #include "audio/mixer_intern.h" #include "audio/fmopl.h" +#include "backends/mutex/sdl/sdl-mutex.h" #include "backends/timer/sdl/sdl-timer.h" #include "gui/Actions.h" @@ -379,14 +380,6 @@ void OSystem_WINCE3::initBackend() { ((WINCESdlEventSource *)_eventSource)->init((WINCESdlGraphicsManager *)_graphicsManager); - // Create the timer (but remove the timer manager from the SDL backend first). - // CE SDL does not support multiple timers (SDL_AddTimer). - // We work around this by using the SetTimer function, since we only use - // one timer in scummvm (for the time being) - delete _timerManager; - _timerManager = new DefaultTimerManager(); - SDL_SetTimer(10, &timer_handler_wrapper); - // Call parent implementation of this method OSystem_SDL::initBackend(); @@ -546,6 +539,24 @@ void OSystem_WINCE3::initSDL() { } } +void OSystem_WINCE3::init() { + // Create SdlMutexManager instance as the TimerManager relies on the + // MutexManager being already initialized + if (_mutexManager == 0) + _mutexManager = new SdlMutexManager(); + + // Create the timer. CE SDL does not support multiple timers (SDL_AddTimer). + // We work around this by using the SetTimer function, since we only use + // one timer in scummvm (for the time being) + if (_timerManager == 0) { + _timerManager = new DefaultTimerManager(); + SDL_SetTimer(10, &timer_handler_wrapper); + } + + // Call parent implementation of this method + OSystem_SDL::init(); +} + void OSystem_WINCE3::quit() { fclose(stdout_file); fclose(stderr_file); diff --git a/backends/platform/wince/wince-sdl.h b/backends/platform/wince/wince-sdl.h index 481956c19a..b4f323c9e2 100644 --- a/backends/platform/wince/wince-sdl.h +++ b/backends/platform/wince/wince-sdl.h @@ -52,6 +52,7 @@ public: void initBackend(); // Overloaded from SDL backend + void init(); void quit(); virtual Common::String getSystemLanguage() const; diff --git a/common/bitstream.cpp b/common/bitstream.cpp new file mode 100644 index 0000000000..b41ad237e0 --- /dev/null +++ b/common/bitstream.cpp @@ -0,0 +1,217 @@ +/* ScummVM - Graphic Adventure Engine + * + * ScummVM is the legal property of its developers, whose names + * are too numerous to list here. Please refer to the COPYRIGHT + * file distributed with this source distribution. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ + +// Based on eos' BitStream implementation + +#include "common/bitstream.h" +#include "common/memstream.h" +#include "common/stream.h" +#include "common/textconsole.h" +#include "common/util.h" + +namespace Common { + +BitStream::BitStream() { +} + +BitStream::~BitStream() { +} + +void BitStream::skip(uint32 n) { + while (n-- > 0) + getBit(); +} + + +BitStreamBE::BitStreamBE(SeekableReadStream &stream, uint32 bitCount) : _value(0), _inValue(0) { + if ((bitCount % 8) != 0) + error("Big-endian bit stream size has to be divisible by 8"); + + // Read the number of bytes of the stream + + uint32 byteSize = bitCount / 8; + byte *data = (byte *)malloc(byteSize); + + if (stream.read(data, byteSize) != byteSize) { + free(data); + error("Bad BitStreamBE size"); + } + + _stream = new MemoryReadStream(data, byteSize, DisposeAfterUse::YES); +} + +BitStreamBE::BitStreamBE(const byte *data, uint32 bitCount) : _value(0), _inValue(0) { + if ((bitCount % 8) != 0) + error("Big-endian bit stream size has to be divisible by 8"); + + // Copy the number of bytes from the data array + + uint32 byteSize = bitCount / 8; + byte *dataN = (byte *)malloc(byteSize); + + memcpy(dataN, data, byteSize); + + _stream = new MemoryReadStream(dataN, byteSize, DisposeAfterUse::YES); +} + +BitStreamBE::~BitStreamBE() { + delete _stream; +} + +uint32 BitStreamBE::getBit() { + if (_inValue == 0) { + // Need to get new byte + + if (_stream->eos()) + error("End of bit stream reached"); + + _value = _stream->readByte(); + } + + // Get the current bit + int b = ((_value & 0x80) == 0) ? 0 : 1; + + // Shift to the next bit + _value <<= 1; + + // Increase the position within the current byte + _inValue = (_inValue + 1) % 8; + + return b; +} + +uint32 BitStreamBE::getBits(uint32 n) { + if (n > 32) + error("Too many bits requested to be read"); + + // Read the number of bits + uint32 v = 0; + while (n-- > 0) + v = (v << 1) | getBit(); + + return v; +} + +void BitStreamBE::addBit(uint32 &x, uint32 n) { + x = (x << 1) | getBit(); +} + +uint32 BitStreamBE::pos() const { + if (_stream->pos() == 0) + return 0; + + uint32 p = (_inValue == 0) ? _stream->pos() : (_stream->pos() - 1); + return p * 8 + _inValue; +} + +uint32 BitStreamBE::size() const { + return _stream->size() * 8; +} + + +BitStream32LE::BitStream32LE(SeekableReadStream &stream, uint32 bitCount) : _value(0), _inValue(0) { + if ((bitCount % 32) != 0) + error("32bit little-endian bit stream size has to be divisible by 32"); + + // Read the number of bytes of the stream + + uint32 byteSize = bitCount / 8; + byte *data = (byte *)malloc(byteSize); + + if (stream.read(data, byteSize) != byteSize) { + free(data); + error("Bad BitStream32LE size"); + } + + _stream = new MemoryReadStream(data, byteSize, DisposeAfterUse::YES); +} + +BitStream32LE::BitStream32LE(const byte *data, uint32 bitCount) : _value(0), _inValue(0) { + if ((bitCount % 32) != 0) + error("32bit little-endian bit stream size has to be divisible by 32"); + + // Copy the number of bytes from the data array + + uint32 byteSize = bitCount / 8; + byte *dataN = (byte *)malloc(byteSize); + + memcpy(dataN, data, byteSize); + + _stream = new MemoryReadStream(dataN, byteSize, DisposeAfterUse::YES); +} + +BitStream32LE::~BitStream32LE() { + delete _stream; +} + +uint32 BitStream32LE::getBit() { + if (_inValue == 0) { + // Need to get new 32bit value + + if (_stream->eos()) + error("End of bit stream reached"); + + _value = _stream->readUint32LE(); + } + + // Get the current bit + int b = ((_value & 1) == 0) ? 0 : 1; + + // Shift to the next bit + _value >>= 1; + + // Increase the position within the current byte + _inValue = (_inValue + 1) % 32; + + return b; +} + +uint32 BitStream32LE::getBits(uint32 n) { + if (n > 32) + error("Too many bits requested to be read"); + + // Read the number of bits + uint32 v = 0; + for (uint32 i = 0; i < n; i++) + v = (v >> 1) | (((uint32) getBit()) << 31); + + v >>= (32 - n); + return v; +} + +void BitStream32LE::addBit(uint32 &x, uint32 n) { + x = (x & ~(1 << n)) | (getBit() << n); +} + +uint32 BitStream32LE::pos() const { + if (_stream->pos() == 0) + return 0; + + uint32 p = ((_inValue == 0) ? _stream->pos() : (_stream->pos() - 1)) & 0xFFFFFFFC; + return p * 8 + _inValue; +} + +uint32 BitStream32LE::size() const { + return _stream->size() * 8; +} + +} // End of namespace Common diff --git a/common/bitstream.h b/common/bitstream.h new file mode 100644 index 0000000000..7be0dccf45 --- /dev/null +++ b/common/bitstream.h @@ -0,0 +1,173 @@ +/* ScummVM - Graphic Adventure Engine + * + * ScummVM is the legal property of its developers, whose names + * are too numerous to list here. Please refer to the COPYRIGHT + * file distributed with this source distribution. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ + +// Based on eos' BitStream implementation + +#ifndef COMMON_BITSTREAM_H +#define COMMON_BITSTREAM_H + +#include "common/scummsys.h" + +namespace Common { + +class SeekableReadStream; + +/** + * A bit stream, giving access to data one bit at a time. + * + * Used in engines: + * - scumm + */ +class BitStream { +public: + BitStream(); + virtual ~BitStream(); + + /** Read a bit from the bitstream. */ + virtual uint32 getBit() = 0; + + /** Read a number of bits, creating a multi-bit value. */ + virtual uint32 getBits(uint32 n) = 0; + + /** Add more bits, creating a multi-bit value in stages. */ + virtual void addBit(uint32 &x, uint32 n) = 0; + + /** Skip a number of bits. */ + void skip(uint32 n); + + /** Get the current position, in bits. */ + virtual uint32 pos() const = 0; + /** Return the number of bits in the stream. */ + virtual uint32 size() const = 0; +}; + +/** + * A big-endian bit stream. + * + * The input data is read one byte at a time. Their bits are handed out + * in the order of MSB to LSB. When all 8 bits of a byte have been consumed, + * another input data byte is read. + */ +class BitStreamBE : public BitStream { +public: + /** + * Create a big endian bit stream. + * + * Reads and copies bitCount bits from the provided stream. + * Ownership of the stream is not transferred. + */ + BitStreamBE(SeekableReadStream &stream, uint32 bitCount); + + /** + * Create a big endian bit stream. + * + * Reads and copies bitCount bits from the provided data. + * Ownership of the data is not transferred. + */ + BitStreamBE(const byte *data, uint32 bitCount); + + ~BitStreamBE(); + + uint32 getBit(); + + /** + * Read a number of bits, creating a multi-bit value. + * + * The bits are read one at a time, in the order MSB to LSB and + * or'd together to create a multi-bit value. + */ + uint32 getBits(uint32 n); + + /** + * Add more bits, creating a multi-bit value in stages. + * + * Shifts in n new bits into the value x, in the order of MSB to LSB. + */ + void addBit(uint32 &x, uint32 n); + + uint32 pos() const; + uint32 size() const; + +private: + SeekableReadStream *_stream; + + byte _value; ///< Current byte. + uint8 _inValue; ///< Position within the current byte. +}; + +/** + * A little-endian bit stream, reading 32bit values at a time. + * + * The input data is read one little-endian uint32 at a time. Their bits are + * handed out in the order of LSB to MSB. When all 8 bits of a byte have been + * consumed, another little-endian input data uint32 is read. + */ +class BitStream32LE : public BitStream { +public: + /** + * Create a little-endian bit stream. + * + * Reads and copies bitCount bits from the provided stream. + * Ownership of the stream is not transferred. + */ + BitStream32LE(SeekableReadStream &stream, uint32 bitCount); + + /** + * Create a little-endian bit stream. + * + * Reads and copies bitCount bits from the provided data. + * Ownership of the data is not transferred. + */ + BitStream32LE(const byte *data, uint32 bitCount); + + ~BitStream32LE(); + + uint32 getBit(); + + /** + * Read a number of bits, creating a multi-bit value. + * + * The bits are read one at a time, in the order LSB to MSB and + * or'd together to create a multi-bit value. + */ + uint32 getBits(uint32 n); + + /** + * Add more bits, creating a multi-bit value in stages. + * + * Shifts in n new bits into the value x, in the order of LSB to MSB. + */ + void addBit(uint32 &x, uint32 n); + + uint32 pos() const; + uint32 size() const; + +private: + SeekableReadStream *_stream; + + uint32 _value; ///< Current 32bit value. + uint8 _inValue; ///< Position within the current 32bit value. +}; + +} // End of namespace Common + +#endif // COMMON_BITSTREAM_H diff --git a/common/cosinetables.cpp b/common/cosinetables.cpp new file mode 100644 index 0000000000..30f55b55fc --- /dev/null +++ b/common/cosinetables.cpp @@ -0,0 +1,8274 @@ +/* ScummVM - Graphic Adventure Engine + * + * ScummVM is the legal property of its developers, whose names + * are too numerous to list here. Please refer to the COPYRIGHT + * file distributed with this source distribution. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ + +// Based on eos' cosine tables + +#include "common/cosinetables.h" +#include "common/scummsys.h" + +namespace Common { + +static const float cosTable16[8] = { + 1.000000f, 0.923880f, 0.707107f, 0.382683f, 0.000000f, 0.382683f, 0.707107f, 0.923880f +}; + +static const float cosTable32[16] = { + 1.000000f, 0.980785f, 0.923880f, 0.831470f, 0.707107f, 0.555570f, 0.382683f, 0.195090f, + 0.000000f, 0.195090f, 0.382683f, 0.555570f, 0.707107f, 0.831470f, 0.923880f, 0.980785f +}; + +static const float cosTable64[32] = { + 1.000000f, 0.995185f, 0.980785f, 0.956940f, 0.923880f, 0.881921f, 0.831470f, 0.773010f, + 0.707107f, 0.634393f, 0.555570f, 0.471397f, 0.382683f, 0.290285f, 0.195090f, 0.098017f, + 0.000000f, 0.098017f, 0.195090f, 0.290285f, 0.382683f, 0.471397f, 0.555570f, 0.634393f, + 0.707107f, 0.773010f, 0.831470f, 0.881921f, 0.923880f, 0.956940f, 0.980785f, 0.995185f +}; + +static const float cosTable128[64] = { + 1.000000f, 0.998795f, 0.995185f, 0.989177f, 0.980785f, 0.970031f, 0.956940f, 0.941544f, + 0.923880f, 0.903989f, 0.881921f, 0.857729f, 0.831470f, 0.803208f, 0.773010f, 0.740951f, + 0.707107f, 0.671559f, 0.634393f, 0.595699f, 0.555570f, 0.514103f, 0.471397f, 0.427555f, + 0.382683f, 0.336890f, 0.290285f, 0.242980f, 0.195090f, 0.146730f, 0.098017f, 0.049068f, + 0.000000f, 0.049068f, 0.098017f, 0.146730f, 0.195090f, 0.242980f, 0.290285f, 0.336890f, + 0.382683f, 0.427555f, 0.471397f, 0.514103f, 0.555570f, 0.595699f, 0.634393f, 0.671559f, + 0.707107f, 0.740951f, 0.773010f, 0.803208f, 0.831470f, 0.857729f, 0.881921f, 0.903989f, + 0.923880f, 0.941544f, 0.956940f, 0.970031f, 0.980785f, 0.989177f, 0.995185f, 0.998795f +}; + +static const float cosTable256[128] = { + 1.000000f, 0.999699f, 0.998795f, 0.997290f, 0.995185f, 0.992480f, 0.989177f, 0.985278f, + 0.980785f, 0.975702f, 0.970031f, 0.963776f, 0.956940f, 0.949528f, 0.941544f, 0.932993f, + 0.923880f, 0.914210f, 0.903989f, 0.893224f, 0.881921f, 0.870087f, 0.857729f, 0.844854f, + 0.831470f, 0.817585f, 0.803208f, 0.788346f, 0.773010f, 0.757209f, 0.740951f, 0.724247f, + 0.707107f, 0.689541f, 0.671559f, 0.653173f, 0.634393f, 0.615232f, 0.595699f, 0.575808f, + 0.555570f, 0.534998f, 0.514103f, 0.492898f, 0.471397f, 0.449611f, 0.427555f, 0.405241f, + 0.382683f, 0.359895f, 0.336890f, 0.313682f, 0.290285f, 0.266713f, 0.242980f, 0.219101f, + 0.195090f, 0.170962f, 0.146730f, 0.122411f, 0.098017f, 0.073565f, 0.049068f, 0.024541f, + 0.000000f, 0.024541f, 0.049068f, 0.073565f, 0.098017f, 0.122411f, 0.146730f, 0.170962f, + 0.195090f, 0.219101f, 0.242980f, 0.266713f, 0.290285f, 0.313682f, 0.336890f, 0.359895f, + 0.382683f, 0.405241f, 0.427555f, 0.449611f, 0.471397f, 0.492898f, 0.514103f, 0.534998f, + 0.555570f, 0.575808f, 0.595699f, 0.615232f, 0.634393f, 0.653173f, 0.671559f, 0.689541f, + 0.707107f, 0.724247f, 0.740951f, 0.757209f, 0.773010f, 0.788346f, 0.803208f, 0.817585f, + 0.831470f, 0.844854f, 0.857729f, 0.870087f, 0.881921f, 0.893224f, 0.903989f, 0.914210f, + 0.923880f, 0.932993f, 0.941544f, 0.949528f, 0.956940f, 0.963776f, 0.970031f, 0.975702f, + 0.980785f, 0.985278f, 0.989177f, 0.992480f, 0.995185f, 0.997290f, 0.998795f, 0.999699f +}; + +static const float cosTable512[256] = { + 1.000000f, 0.999925f, 0.999699f, 0.999322f, 0.998795f, 0.998118f, 0.997290f, 0.996313f, + 0.995185f, 0.993907f, 0.992480f, 0.990903f, 0.989177f, 0.987301f, 0.985278f, 0.983105f, + 0.980785f, 0.978317f, 0.975702f, 0.972940f, 0.970031f, 0.966976f, 0.963776f, 0.960431f, + 0.956940f, 0.953306f, 0.949528f, 0.945607f, 0.941544f, 0.937339f, 0.932993f, 0.928506f, + 0.923880f, 0.919114f, 0.914210f, 0.909168f, 0.903989f, 0.898674f, 0.893224f, 0.887640f, + 0.881921f, 0.876070f, 0.870087f, 0.863973f, 0.857729f, 0.851355f, 0.844854f, 0.838225f, + 0.831470f, 0.824589f, 0.817585f, 0.810457f, 0.803208f, 0.795837f, 0.788346f, 0.780737f, + 0.773010f, 0.765167f, 0.757209f, 0.749136f, 0.740951f, 0.732654f, 0.724247f, 0.715731f, + 0.707107f, 0.698376f, 0.689541f, 0.680601f, 0.671559f, 0.662416f, 0.653173f, 0.643832f, + 0.634393f, 0.624860f, 0.615232f, 0.605511f, 0.595699f, 0.585798f, 0.575808f, 0.565732f, + 0.555570f, 0.545325f, 0.534998f, 0.524590f, 0.514103f, 0.503538f, 0.492898f, 0.482184f, + 0.471397f, 0.460539f, 0.449611f, 0.438616f, 0.427555f, 0.416430f, 0.405241f, 0.393992f, + 0.382683f, 0.371317f, 0.359895f, 0.348419f, 0.336890f, 0.325310f, 0.313682f, 0.302006f, + 0.290285f, 0.278520f, 0.266713f, 0.254866f, 0.242980f, 0.231058f, 0.219101f, 0.207111f, + 0.195090f, 0.183040f, 0.170962f, 0.158858f, 0.146730f, 0.134581f, 0.122411f, 0.110222f, + 0.098017f, 0.085797f, 0.073565f, 0.061321f, 0.049068f, 0.036807f, 0.024541f, 0.012272f, + 0.000000f, 0.012272f, 0.024541f, 0.036807f, 0.049068f, 0.061321f, 0.073565f, 0.085797f, + 0.098017f, 0.110222f, 0.122411f, 0.134581f, 0.146730f, 0.158858f, 0.170962f, 0.183040f, + 0.195090f, 0.207111f, 0.219101f, 0.231058f, 0.242980f, 0.254866f, 0.266713f, 0.278520f, + 0.290285f, 0.302006f, 0.313682f, 0.325310f, 0.336890f, 0.348419f, 0.359895f, 0.371317f, + 0.382683f, 0.393992f, 0.405241f, 0.416430f, 0.427555f, 0.438616f, 0.449611f, 0.460539f, + 0.471397f, 0.482184f, 0.492898f, 0.503538f, 0.514103f, 0.524590f, 0.534998f, 0.545325f, + 0.555570f, 0.565732f, 0.575808f, 0.585798f, 0.595699f, 0.605511f, 0.615232f, 0.624860f, + 0.634393f, 0.643832f, 0.653173f, 0.662416f, 0.671559f, 0.680601f, 0.689541f, 0.698376f, + 0.707107f, 0.715731f, 0.724247f, 0.732654f, 0.740951f, 0.749136f, 0.757209f, 0.765167f, + 0.773010f, 0.780737f, 0.788346f, 0.795837f, 0.803208f, 0.810457f, 0.817585f, 0.824589f, + 0.831470f, 0.838225f, 0.844854f, 0.851355f, 0.857729f, 0.863973f, 0.870087f, 0.876070f, + 0.881921f, 0.887640f, 0.893224f, 0.898674f, 0.903989f, 0.909168f, 0.914210f, 0.919114f, + 0.923880f, 0.928506f, 0.932993f, 0.937339f, 0.941544f, 0.945607f, 0.949528f, 0.953306f, + 0.956940f, 0.960431f, 0.963776f, 0.966976f, 0.970031f, 0.972940f, 0.975702f, 0.978317f, + 0.980785f, 0.983105f, 0.985278f, 0.987301f, 0.989177f, 0.990903f, 0.992480f, 0.993907f, + 0.995185f, 0.996313f, 0.997290f, 0.998118f, 0.998795f, 0.999322f, 0.999699f, 0.999925f +}; + +static const float cosTable1024[512] = { + 1.000000f, 0.999981f, 0.999925f, 0.999831f, 0.999699f, 0.999529f, 0.999322f, 0.999078f, + 0.998795f, 0.998476f, 0.998118f, 0.997723f, 0.997290f, 0.996820f, 0.996313f, 0.995767f, + 0.995185f, 0.994565f, 0.993907f, 0.993212f, 0.992480f, 0.991710f, 0.990903f, 0.990058f, + 0.989177f, 0.988258f, 0.987301f, 0.986308f, 0.985278f, 0.984210f, 0.983105f, 0.981964f, + 0.980785f, 0.979570f, 0.978317f, 0.977028f, 0.975702f, 0.974339f, 0.972940f, 0.971504f, + 0.970031f, 0.968522f, 0.966976f, 0.965394f, 0.963776f, 0.962121f, 0.960431f, 0.958703f, + 0.956940f, 0.955141f, 0.953306f, 0.951435f, 0.949528f, 0.947586f, 0.945607f, 0.943593f, + 0.941544f, 0.939459f, 0.937339f, 0.935184f, 0.932993f, 0.930767f, 0.928506f, 0.926210f, + 0.923880f, 0.921514f, 0.919114f, 0.916679f, 0.914210f, 0.911706f, 0.909168f, 0.906596f, + 0.903989f, 0.901349f, 0.898674f, 0.895966f, 0.893224f, 0.890449f, 0.887640f, 0.884797f, + 0.881921f, 0.879012f, 0.876070f, 0.873095f, 0.870087f, 0.867046f, 0.863973f, 0.860867f, + 0.857729f, 0.854558f, 0.851355f, 0.848120f, 0.844854f, 0.841555f, 0.838225f, 0.834863f, + 0.831470f, 0.828045f, 0.824589f, 0.821102f, 0.817585f, 0.814036f, 0.810457f, 0.806848f, + 0.803208f, 0.799537f, 0.795837f, 0.792107f, 0.788346f, 0.784557f, 0.780737f, 0.776888f, + 0.773010f, 0.769103f, 0.765167f, 0.761202f, 0.757209f, 0.753187f, 0.749136f, 0.745058f, + 0.740951f, 0.736817f, 0.732654f, 0.728464f, 0.724247f, 0.720003f, 0.715731f, 0.711432f, + 0.707107f, 0.702755f, 0.698376f, 0.693971f, 0.689541f, 0.685084f, 0.680601f, 0.676093f, + 0.671559f, 0.667000f, 0.662416f, 0.657807f, 0.653173f, 0.648514f, 0.643832f, 0.639124f, + 0.634393f, 0.629638f, 0.624860f, 0.620057f, 0.615232f, 0.610383f, 0.605511f, 0.600616f, + 0.595699f, 0.590760f, 0.585798f, 0.580814f, 0.575808f, 0.570781f, 0.565732f, 0.560662f, + 0.555570f, 0.550458f, 0.545325f, 0.540171f, 0.534998f, 0.529804f, 0.524590f, 0.519356f, + 0.514103f, 0.508830f, 0.503538f, 0.498228f, 0.492898f, 0.487550f, 0.482184f, 0.476799f, + 0.471397f, 0.465977f, 0.460539f, 0.455084f, 0.449611f, 0.444122f, 0.438616f, 0.433094f, + 0.427555f, 0.422000f, 0.416430f, 0.410843f, 0.405241f, 0.399624f, 0.393992f, 0.388345f, + 0.382683f, 0.377007f, 0.371317f, 0.365613f, 0.359895f, 0.354164f, 0.348419f, 0.342661f, + 0.336890f, 0.331106f, 0.325310f, 0.319502f, 0.313682f, 0.307850f, 0.302006f, 0.296151f, + 0.290285f, 0.284408f, 0.278520f, 0.272621f, 0.266713f, 0.260794f, 0.254866f, 0.248928f, + 0.242980f, 0.237024f, 0.231058f, 0.225084f, 0.219101f, 0.213110f, 0.207111f, 0.201105f, + 0.195090f, 0.189069f, 0.183040f, 0.177004f, 0.170962f, 0.164913f, 0.158858f, 0.152797f, + 0.146730f, 0.140658f, 0.134581f, 0.128498f, 0.122411f, 0.116319f, 0.110222f, 0.104122f, + 0.098017f, 0.091909f, 0.085797f, 0.079682f, 0.073565f, 0.067444f, 0.061321f, 0.055195f, + 0.049068f, 0.042938f, 0.036807f, 0.030675f, 0.024541f, 0.018407f, 0.012272f, 0.006136f, + 0.000000f, 0.006136f, 0.012272f, 0.018407f, 0.024541f, 0.030675f, 0.036807f, 0.042938f, + 0.049068f, 0.055195f, 0.061321f, 0.067444f, 0.073565f, 0.079682f, 0.085797f, 0.091909f, + 0.098017f, 0.104122f, 0.110222f, 0.116319f, 0.122411f, 0.128498f, 0.134581f, 0.140658f, + 0.146730f, 0.152797f, 0.158858f, 0.164913f, 0.170962f, 0.177004f, 0.183040f, 0.189069f, + 0.195090f, 0.201105f, 0.207111f, 0.213110f, 0.219101f, 0.225084f, 0.231058f, 0.237024f, + 0.242980f, 0.248928f, 0.254866f, 0.260794f, 0.266713f, 0.272621f, 0.278520f, 0.284408f, + 0.290285f, 0.296151f, 0.302006f, 0.307850f, 0.313682f, 0.319502f, 0.325310f, 0.331106f, + 0.336890f, 0.342661f, 0.348419f, 0.354164f, 0.359895f, 0.365613f, 0.371317f, 0.377007f, + 0.382683f, 0.388345f, 0.393992f, 0.399624f, 0.405241f, 0.410843f, 0.416430f, 0.422000f, + 0.427555f, 0.433094f, 0.438616f, 0.444122f, 0.449611f, 0.455084f, 0.460539f, 0.465977f, + 0.471397f, 0.476799f, 0.482184f, 0.487550f, 0.492898f, 0.498228f, 0.503538f, 0.508830f, + 0.514103f, 0.519356f, 0.524590f, 0.529804f, 0.534998f, 0.540171f, 0.545325f, 0.550458f, + 0.555570f, 0.560662f, 0.565732f, 0.570781f, 0.575808f, 0.580814f, 0.585798f, 0.590760f, + 0.595699f, 0.600616f, 0.605511f, 0.610383f, 0.615232f, 0.620057f, 0.624860f, 0.629638f, + 0.634393f, 0.639124f, 0.643832f, 0.648514f, 0.653173f, 0.657807f, 0.662416f, 0.667000f, + 0.671559f, 0.676093f, 0.680601f, 0.685084f, 0.689541f, 0.693971f, 0.698376f, 0.702755f, + 0.707107f, 0.711432f, 0.715731f, 0.720003f, 0.724247f, 0.728464f, 0.732654f, 0.736817f, + 0.740951f, 0.745058f, 0.749136f, 0.753187f, 0.757209f, 0.761202f, 0.765167f, 0.769103f, + 0.773010f, 0.776888f, 0.780737f, 0.784557f, 0.788346f, 0.792107f, 0.795837f, 0.799537f, + 0.803208f, 0.806848f, 0.810457f, 0.814036f, 0.817585f, 0.821102f, 0.824589f, 0.828045f, + 0.831470f, 0.834863f, 0.838225f, 0.841555f, 0.844854f, 0.848120f, 0.851355f, 0.854558f, + 0.857729f, 0.860867f, 0.863973f, 0.867046f, 0.870087f, 0.873095f, 0.876070f, 0.879012f, + 0.881921f, 0.884797f, 0.887640f, 0.890449f, 0.893224f, 0.895966f, 0.898674f, 0.901349f, + 0.903989f, 0.906596f, 0.909168f, 0.911706f, 0.914210f, 0.916679f, 0.919114f, 0.921514f, + 0.923880f, 0.926210f, 0.928506f, 0.930767f, 0.932993f, 0.935184f, 0.937339f, 0.939459f, + 0.941544f, 0.943593f, 0.945607f, 0.947586f, 0.949528f, 0.951435f, 0.953306f, 0.955141f, + 0.956940f, 0.958703f, 0.960431f, 0.962121f, 0.963776f, 0.965394f, 0.966976f, 0.968522f, + 0.970031f, 0.971504f, 0.972940f, 0.974339f, 0.975702f, 0.977028f, 0.978317f, 0.979570f, + 0.980785f, 0.981964f, 0.983105f, 0.984210f, 0.985278f, 0.986308f, 0.987301f, 0.988258f, + 0.989177f, 0.990058f, 0.990903f, 0.991710f, 0.992480f, 0.993212f, 0.993907f, 0.994565f, + 0.995185f, 0.995767f, 0.996313f, 0.996820f, 0.997290f, 0.997723f, 0.998118f, 0.998476f, + 0.998795f, 0.999078f, 0.999322f, 0.999529f, 0.999699f, 0.999831f, 0.999925f, 0.999981f +}; + +static const float cosTable2048[1024] = { + 1.000000f, 0.999995f, 0.999981f, 0.999958f, 0.999925f, 0.999882f, 0.999831f, 0.999769f, + 0.999699f, 0.999619f, 0.999529f, 0.999431f, 0.999322f, 0.999205f, 0.999078f, 0.998941f, + 0.998795f, 0.998640f, 0.998476f, 0.998302f, 0.998118f, 0.997925f, 0.997723f, 0.997511f, + 0.997290f, 0.997060f, 0.996820f, 0.996571f, 0.996313f, 0.996045f, 0.995767f, 0.995481f, + 0.995185f, 0.994879f, 0.994565f, 0.994240f, 0.993907f, 0.993564f, 0.993212f, 0.992850f, + 0.992480f, 0.992099f, 0.991710f, 0.991311f, 0.990903f, 0.990485f, 0.990058f, 0.989622f, + 0.989177f, 0.988722f, 0.988258f, 0.987784f, 0.987301f, 0.986809f, 0.986308f, 0.985798f, + 0.985278f, 0.984748f, 0.984210f, 0.983662f, 0.983105f, 0.982539f, 0.981964f, 0.981379f, + 0.980785f, 0.980182f, 0.979570f, 0.978948f, 0.978317f, 0.977677f, 0.977028f, 0.976370f, + 0.975702f, 0.975025f, 0.974339f, 0.973644f, 0.972940f, 0.972227f, 0.971504f, 0.970772f, + 0.970031f, 0.969281f, 0.968522f, 0.967754f, 0.966976f, 0.966190f, 0.965394f, 0.964590f, + 0.963776f, 0.962953f, 0.962121f, 0.961280f, 0.960431f, 0.959572f, 0.958703f, 0.957826f, + 0.956940f, 0.956045f, 0.955141f, 0.954228f, 0.953306f, 0.952375f, 0.951435f, 0.950486f, + 0.949528f, 0.948561f, 0.947586f, 0.946601f, 0.945607f, 0.944605f, 0.943593f, 0.942573f, + 0.941544f, 0.940506f, 0.939459f, 0.938404f, 0.937339f, 0.936266f, 0.935184f, 0.934093f, + 0.932993f, 0.931884f, 0.930767f, 0.929641f, 0.928506f, 0.927363f, 0.926210f, 0.925049f, + 0.923880f, 0.922701f, 0.921514f, 0.920318f, 0.919114f, 0.917901f, 0.916679f, 0.915449f, + 0.914210f, 0.912962f, 0.911706f, 0.910441f, 0.909168f, 0.907886f, 0.906596f, 0.905297f, + 0.903989f, 0.902673f, 0.901349f, 0.900016f, 0.898674f, 0.897325f, 0.895966f, 0.894599f, + 0.893224f, 0.891841f, 0.890449f, 0.889048f, 0.887640f, 0.886223f, 0.884797f, 0.883363f, + 0.881921f, 0.880471f, 0.879012f, 0.877545f, 0.876070f, 0.874587f, 0.873095f, 0.871595f, + 0.870087f, 0.868571f, 0.867046f, 0.865514f, 0.863973f, 0.862424f, 0.860867f, 0.859302f, + 0.857729f, 0.856147f, 0.854558f, 0.852961f, 0.851355f, 0.849742f, 0.848120f, 0.846491f, + 0.844854f, 0.843208f, 0.841555f, 0.839894f, 0.838225f, 0.836548f, 0.834863f, 0.833170f, + 0.831470f, 0.829761f, 0.828045f, 0.826321f, 0.824589f, 0.822850f, 0.821102f, 0.819348f, + 0.817585f, 0.815814f, 0.814036f, 0.812251f, 0.810457f, 0.808656f, 0.806848f, 0.805031f, + 0.803208f, 0.801376f, 0.799537f, 0.797691f, 0.795837f, 0.793975f, 0.792107f, 0.790230f, + 0.788346f, 0.786455f, 0.784557f, 0.782651f, 0.780737f, 0.778817f, 0.776888f, 0.774953f, + 0.773010f, 0.771061f, 0.769103f, 0.767139f, 0.765167f, 0.763188f, 0.761202f, 0.759209f, + 0.757209f, 0.755201f, 0.753187f, 0.751165f, 0.749136f, 0.747101f, 0.745058f, 0.743008f, + 0.740951f, 0.738887f, 0.736817f, 0.734739f, 0.732654f, 0.730563f, 0.728464f, 0.726359f, + 0.724247f, 0.722128f, 0.720003f, 0.717870f, 0.715731f, 0.713585f, 0.711432f, 0.709273f, + 0.707107f, 0.704934f, 0.702755f, 0.700569f, 0.698376f, 0.696177f, 0.693971f, 0.691759f, + 0.689541f, 0.687315f, 0.685084f, 0.682846f, 0.680601f, 0.678350f, 0.676093f, 0.673829f, + 0.671559f, 0.669283f, 0.667000f, 0.664711f, 0.662416f, 0.660114f, 0.657807f, 0.655493f, + 0.653173f, 0.650847f, 0.648514f, 0.646176f, 0.643832f, 0.641481f, 0.639124f, 0.636762f, + 0.634393f, 0.632019f, 0.629638f, 0.627252f, 0.624860f, 0.622461f, 0.620057f, 0.617647f, + 0.615232f, 0.612810f, 0.610383f, 0.607950f, 0.605511f, 0.603067f, 0.600616f, 0.598161f, + 0.595699f, 0.593232f, 0.590760f, 0.588282f, 0.585798f, 0.583309f, 0.580814f, 0.578314f, + 0.575808f, 0.573297f, 0.570781f, 0.568259f, 0.565732f, 0.563199f, 0.560662f, 0.558119f, + 0.555570f, 0.553017f, 0.550458f, 0.547894f, 0.545325f, 0.542751f, 0.540171f, 0.537587f, + 0.534998f, 0.532403f, 0.529804f, 0.527199f, 0.524590f, 0.521975f, 0.519356f, 0.516732f, + 0.514103f, 0.511469f, 0.508830f, 0.506187f, 0.503538f, 0.500885f, 0.498228f, 0.495565f, + 0.492898f, 0.490226f, 0.487550f, 0.484869f, 0.482184f, 0.479494f, 0.476799f, 0.474100f, + 0.471397f, 0.468689f, 0.465977f, 0.463260f, 0.460539f, 0.457813f, 0.455084f, 0.452350f, + 0.449611f, 0.446869f, 0.444122f, 0.441371f, 0.438616f, 0.435857f, 0.433094f, 0.430326f, + 0.427555f, 0.424780f, 0.422000f, 0.419217f, 0.416430f, 0.413638f, 0.410843f, 0.408044f, + 0.405241f, 0.402435f, 0.399624f, 0.396810f, 0.393992f, 0.391170f, 0.388345f, 0.385516f, + 0.382683f, 0.379847f, 0.377007f, 0.374164f, 0.371317f, 0.368467f, 0.365613f, 0.362756f, + 0.359895f, 0.357031f, 0.354164f, 0.351293f, 0.348419f, 0.345541f, 0.342661f, 0.339777f, + 0.336890f, 0.334000f, 0.331106f, 0.328210f, 0.325310f, 0.322408f, 0.319502f, 0.316593f, + 0.313682f, 0.310767f, 0.307850f, 0.304929f, 0.302006f, 0.299080f, 0.296151f, 0.293219f, + 0.290285f, 0.287347f, 0.284408f, 0.281465f, 0.278520f, 0.275572f, 0.272621f, 0.269668f, + 0.266713f, 0.263755f, 0.260794f, 0.257831f, 0.254866f, 0.251898f, 0.248928f, 0.245955f, + 0.242980f, 0.240003f, 0.237024f, 0.234042f, 0.231058f, 0.228072f, 0.225084f, 0.222094f, + 0.219101f, 0.216107f, 0.213110f, 0.210112f, 0.207111f, 0.204109f, 0.201105f, 0.198098f, + 0.195090f, 0.192080f, 0.189069f, 0.186055f, 0.183040f, 0.180023f, 0.177004f, 0.173984f, + 0.170962f, 0.167938f, 0.164913f, 0.161886f, 0.158858f, 0.155828f, 0.152797f, 0.149765f, + 0.146730f, 0.143695f, 0.140658f, 0.137620f, 0.134581f, 0.131540f, 0.128498f, 0.125455f, + 0.122411f, 0.119365f, 0.116319f, 0.113271f, 0.110222f, 0.107172f, 0.104122f, 0.101070f, + 0.098017f, 0.094963f, 0.091909f, 0.088854f, 0.085797f, 0.082740f, 0.079682f, 0.076624f, + 0.073565f, 0.070505f, 0.067444f, 0.064383f, 0.061321f, 0.058258f, 0.055195f, 0.052132f, + 0.049068f, 0.046003f, 0.042938f, 0.039873f, 0.036807f, 0.033741f, 0.030675f, 0.027608f, + 0.024541f, 0.021474f, 0.018407f, 0.015339f, 0.012272f, 0.009204f, 0.006136f, 0.003068f, + 0.000000f, 0.003068f, 0.006136f, 0.009204f, 0.012272f, 0.015339f, 0.018407f, 0.021474f, + 0.024541f, 0.027608f, 0.030675f, 0.033741f, 0.036807f, 0.039873f, 0.042938f, 0.046003f, + 0.049068f, 0.052132f, 0.055195f, 0.058258f, 0.061321f, 0.064383f, 0.067444f, 0.070505f, + 0.073565f, 0.076624f, 0.079682f, 0.082740f, 0.085797f, 0.088854f, 0.091909f, 0.094963f, + 0.098017f, 0.101070f, 0.104122f, 0.107172f, 0.110222f, 0.113271f, 0.116319f, 0.119365f, + 0.122411f, 0.125455f, 0.128498f, 0.131540f, 0.134581f, 0.137620f, 0.140658f, 0.143695f, + 0.146730f, 0.149765f, 0.152797f, 0.155828f, 0.158858f, 0.161886f, 0.164913f, 0.167938f, + 0.170962f, 0.173984f, 0.177004f, 0.180023f, 0.183040f, 0.186055f, 0.189069f, 0.192080f, + 0.195090f, 0.198098f, 0.201105f, 0.204109f, 0.207111f, 0.210112f, 0.213110f, 0.216107f, + 0.219101f, 0.222094f, 0.225084f, 0.228072f, 0.231058f, 0.234042f, 0.237024f, 0.240003f, + 0.242980f, 0.245955f, 0.248928f, 0.251898f, 0.254866f, 0.257831f, 0.260794f, 0.263755f, + 0.266713f, 0.269668f, 0.272621f, 0.275572f, 0.278520f, 0.281465f, 0.284408f, 0.287347f, + 0.290285f, 0.293219f, 0.296151f, 0.299080f, 0.302006f, 0.304929f, 0.307850f, 0.310767f, + 0.313682f, 0.316593f, 0.319502f, 0.322408f, 0.325310f, 0.328210f, 0.331106f, 0.334000f, + 0.336890f, 0.339777f, 0.342661f, 0.345541f, 0.348419f, 0.351293f, 0.354164f, 0.357031f, + 0.359895f, 0.362756f, 0.365613f, 0.368467f, 0.371317f, 0.374164f, 0.377007f, 0.379847f, + 0.382683f, 0.385516f, 0.388345f, 0.391170f, 0.393992f, 0.396810f, 0.399624f, 0.402435f, + 0.405241f, 0.408044f, 0.410843f, 0.413638f, 0.416430f, 0.419217f, 0.422000f, 0.424780f, + 0.427555f, 0.430326f, 0.433094f, 0.435857f, 0.438616f, 0.441371f, 0.444122f, 0.446869f, + 0.449611f, 0.452350f, 0.455084f, 0.457813f, 0.460539f, 0.463260f, 0.465977f, 0.468689f, + 0.471397f, 0.474100f, 0.476799f, 0.479494f, 0.482184f, 0.484869f, 0.487550f, 0.490226f, + 0.492898f, 0.495565f, 0.498228f, 0.500885f, 0.503538f, 0.506187f, 0.508830f, 0.511469f, + 0.514103f, 0.516732f, 0.519356f, 0.521975f, 0.524590f, 0.527199f, 0.529804f, 0.532403f, + 0.534998f, 0.537587f, 0.540171f, 0.542751f, 0.545325f, 0.547894f, 0.550458f, 0.553017f, + 0.555570f, 0.558119f, 0.560662f, 0.563199f, 0.565732f, 0.568259f, 0.570781f, 0.573297f, + 0.575808f, 0.578314f, 0.580814f, 0.583309f, 0.585798f, 0.588282f, 0.590760f, 0.593232f, + 0.595699f, 0.598161f, 0.600616f, 0.603067f, 0.605511f, 0.607950f, 0.610383f, 0.612810f, + 0.615232f, 0.617647f, 0.620057f, 0.622461f, 0.624860f, 0.627252f, 0.629638f, 0.632019f, + 0.634393f, 0.636762f, 0.639124f, 0.641481f, 0.643832f, 0.646176f, 0.648514f, 0.650847f, + 0.653173f, 0.655493f, 0.657807f, 0.660114f, 0.662416f, 0.664711f, 0.667000f, 0.669283f, + 0.671559f, 0.673829f, 0.676093f, 0.678350f, 0.680601f, 0.682846f, 0.685084f, 0.687315f, + 0.689541f, 0.691759f, 0.693971f, 0.696177f, 0.698376f, 0.700569f, 0.702755f, 0.704934f, + 0.707107f, 0.709273f, 0.711432f, 0.713585f, 0.715731f, 0.717870f, 0.720003f, 0.722128f, + 0.724247f, 0.726359f, 0.728464f, 0.730563f, 0.732654f, 0.734739f, 0.736817f, 0.738887f, + 0.740951f, 0.743008f, 0.745058f, 0.747101f, 0.749136f, 0.751165f, 0.753187f, 0.755201f, + 0.757209f, 0.759209f, 0.761202f, 0.763188f, 0.765167f, 0.767139f, 0.769103f, 0.771061f, + 0.773010f, 0.774953f, 0.776888f, 0.778817f, 0.780737f, 0.782651f, 0.784557f, 0.786455f, + 0.788346f, 0.790230f, 0.792107f, 0.793975f, 0.795837f, 0.797691f, 0.799537f, 0.801376f, + 0.803208f, 0.805031f, 0.806848f, 0.808656f, 0.810457f, 0.812251f, 0.814036f, 0.815814f, + 0.817585f, 0.819348f, 0.821102f, 0.822850f, 0.824589f, 0.826321f, 0.828045f, 0.829761f, + 0.831470f, 0.833170f, 0.834863f, 0.836548f, 0.838225f, 0.839894f, 0.841555f, 0.843208f, + 0.844854f, 0.846491f, 0.848120f, 0.849742f, 0.851355f, 0.852961f, 0.854558f, 0.856147f, + 0.857729f, 0.859302f, 0.860867f, 0.862424f, 0.863973f, 0.865514f, 0.867046f, 0.868571f, + 0.870087f, 0.871595f, 0.873095f, 0.874587f, 0.876070f, 0.877545f, 0.879012f, 0.880471f, + 0.881921f, 0.883363f, 0.884797f, 0.886223f, 0.887640f, 0.889048f, 0.890449f, 0.891841f, + 0.893224f, 0.894599f, 0.895966f, 0.897325f, 0.898674f, 0.900016f, 0.901349f, 0.902673f, + 0.903989f, 0.905297f, 0.906596f, 0.907886f, 0.909168f, 0.910441f, 0.911706f, 0.912962f, + 0.914210f, 0.915449f, 0.916679f, 0.917901f, 0.919114f, 0.920318f, 0.921514f, 0.922701f, + 0.923880f, 0.925049f, 0.926210f, 0.927363f, 0.928506f, 0.929641f, 0.930767f, 0.931884f, + 0.932993f, 0.934093f, 0.935184f, 0.936266f, 0.937339f, 0.938404f, 0.939459f, 0.940506f, + 0.941544f, 0.942573f, 0.943593f, 0.944605f, 0.945607f, 0.946601f, 0.947586f, 0.948561f, + 0.949528f, 0.950486f, 0.951435f, 0.952375f, 0.953306f, 0.954228f, 0.955141f, 0.956045f, + 0.956940f, 0.957826f, 0.958703f, 0.959572f, 0.960431f, 0.961280f, 0.962121f, 0.962953f, + 0.963776f, 0.964590f, 0.965394f, 0.966190f, 0.966976f, 0.967754f, 0.968522f, 0.969281f, + 0.970031f, 0.970772f, 0.971504f, 0.972227f, 0.972940f, 0.973644f, 0.974339f, 0.975025f, + 0.975702f, 0.976370f, 0.977028f, 0.977677f, 0.978317f, 0.978948f, 0.979570f, 0.980182f, + 0.980785f, 0.981379f, 0.981964f, 0.982539f, 0.983105f, 0.983662f, 0.984210f, 0.984748f, + 0.985278f, 0.985798f, 0.986308f, 0.986809f, 0.987301f, 0.987784f, 0.988258f, 0.988722f, + 0.989177f, 0.989622f, 0.990058f, 0.990485f, 0.990903f, 0.991311f, 0.991710f, 0.992099f, + 0.992480f, 0.992850f, 0.993212f, 0.993564f, 0.993907f, 0.994240f, 0.994565f, 0.994879f, + 0.995185f, 0.995481f, 0.995767f, 0.996045f, 0.996313f, 0.996571f, 0.996820f, 0.997060f, + 0.997290f, 0.997511f, 0.997723f, 0.997925f, 0.998118f, 0.998302f, 0.998476f, 0.998640f, + 0.998795f, 0.998941f, 0.999078f, 0.999205f, 0.999322f, 0.999431f, 0.999529f, 0.999619f, + 0.999699f, 0.999769f, 0.999831f, 0.999882f, 0.999925f, 0.999958f, 0.999981f, 0.999995f +}; + +static const float cosTable4096[2048] = { + 1.000000f, 0.999999f, 0.999995f, 0.999989f, 0.999981f, 0.999971f, 0.999958f, 0.999942f, + 0.999925f, 0.999905f, 0.999882f, 0.999858f, 0.999831f, 0.999801f, 0.999769f, 0.999735f, + 0.999699f, 0.999660f, 0.999619f, 0.999575f, 0.999529f, 0.999481f, 0.999431f, 0.999378f, + 0.999322f, 0.999265f, 0.999205f, 0.999142f, 0.999078f, 0.999011f, 0.998941f, 0.998870f, + 0.998795f, 0.998719f, 0.998640f, 0.998559f, 0.998476f, 0.998390f, 0.998302f, 0.998211f, + 0.998118f, 0.998023f, 0.997925f, 0.997825f, 0.997723f, 0.997618f, 0.997511f, 0.997402f, + 0.997290f, 0.997176f, 0.997060f, 0.996941f, 0.996820f, 0.996697f, 0.996571f, 0.996443f, + 0.996313f, 0.996180f, 0.996045f, 0.995907f, 0.995767f, 0.995625f, 0.995481f, 0.995334f, + 0.995185f, 0.995033f, 0.994879f, 0.994723f, 0.994565f, 0.994404f, 0.994240f, 0.994075f, + 0.993907f, 0.993737f, 0.993564f, 0.993389f, 0.993212f, 0.993032f, 0.992850f, 0.992666f, + 0.992480f, 0.992291f, 0.992099f, 0.991906f, 0.991710f, 0.991511f, 0.991311f, 0.991108f, + 0.990903f, 0.990695f, 0.990485f, 0.990273f, 0.990058f, 0.989841f, 0.989622f, 0.989400f, + 0.989177f, 0.988950f, 0.988722f, 0.988491f, 0.988258f, 0.988022f, 0.987784f, 0.987544f, + 0.987301f, 0.987057f, 0.986809f, 0.986560f, 0.986308f, 0.986054f, 0.985798f, 0.985539f, + 0.985278f, 0.985014f, 0.984748f, 0.984480f, 0.984210f, 0.983937f, 0.983662f, 0.983385f, + 0.983105f, 0.982824f, 0.982539f, 0.982253f, 0.981964f, 0.981673f, 0.981379f, 0.981083f, + 0.980785f, 0.980485f, 0.980182f, 0.979877f, 0.979570f, 0.979260f, 0.978948f, 0.978634f, + 0.978317f, 0.977998f, 0.977677f, 0.977354f, 0.977028f, 0.976700f, 0.976370f, 0.976037f, + 0.975702f, 0.975365f, 0.975025f, 0.974684f, 0.974339f, 0.973993f, 0.973644f, 0.973293f, + 0.972940f, 0.972584f, 0.972227f, 0.971866f, 0.971504f, 0.971139f, 0.970772f, 0.970403f, + 0.970031f, 0.969657f, 0.969281f, 0.968903f, 0.968522f, 0.968139f, 0.967754f, 0.967366f, + 0.966976f, 0.966584f, 0.966190f, 0.965793f, 0.965394f, 0.964993f, 0.964590f, 0.964184f, + 0.963776f, 0.963366f, 0.962953f, 0.962538f, 0.962121f, 0.961702f, 0.961280f, 0.960857f, + 0.960431f, 0.960002f, 0.959572f, 0.959139f, 0.958703f, 0.958266f, 0.957826f, 0.957385f, + 0.956940f, 0.956494f, 0.956045f, 0.955594f, 0.955141f, 0.954686f, 0.954228f, 0.953768f, + 0.953306f, 0.952842f, 0.952375f, 0.951906f, 0.951435f, 0.950962f, 0.950486f, 0.950008f, + 0.949528f, 0.949046f, 0.948561f, 0.948075f, 0.947586f, 0.947094f, 0.946601f, 0.946105f, + 0.945607f, 0.945107f, 0.944605f, 0.944100f, 0.943593f, 0.943084f, 0.942573f, 0.942060f, + 0.941544f, 0.941026f, 0.940506f, 0.939984f, 0.939459f, 0.938932f, 0.938404f, 0.937872f, + 0.937339f, 0.936803f, 0.936266f, 0.935726f, 0.935184f, 0.934639f, 0.934093f, 0.933544f, + 0.932993f, 0.932440f, 0.931884f, 0.931327f, 0.930767f, 0.930205f, 0.929641f, 0.929075f, + 0.928506f, 0.927935f, 0.927363f, 0.926787f, 0.926210f, 0.925631f, 0.925049f, 0.924465f, + 0.923880f, 0.923291f, 0.922701f, 0.922109f, 0.921514f, 0.920917f, 0.920318f, 0.919717f, + 0.919114f, 0.918508f, 0.917901f, 0.917291f, 0.916679f, 0.916065f, 0.915449f, 0.914830f, + 0.914210f, 0.913587f, 0.912962f, 0.912335f, 0.911706f, 0.911075f, 0.910441f, 0.909806f, + 0.909168f, 0.908528f, 0.907886f, 0.907242f, 0.906596f, 0.905947f, 0.905297f, 0.904644f, + 0.903989f, 0.903332f, 0.902673f, 0.902012f, 0.901349f, 0.900683f, 0.900016f, 0.899346f, + 0.898674f, 0.898001f, 0.897325f, 0.896646f, 0.895966f, 0.895284f, 0.894599f, 0.893913f, + 0.893224f, 0.892534f, 0.891841f, 0.891146f, 0.890449f, 0.889750f, 0.889048f, 0.888345f, + 0.887640f, 0.886932f, 0.886223f, 0.885511f, 0.884797f, 0.884081f, 0.883363f, 0.882643f, + 0.881921f, 0.881197f, 0.880471f, 0.879743f, 0.879012f, 0.878280f, 0.877545f, 0.876809f, + 0.876070f, 0.875329f, 0.874587f, 0.873842f, 0.873095f, 0.872346f, 0.871595f, 0.870842f, + 0.870087f, 0.869330f, 0.868571f, 0.867809f, 0.867046f, 0.866281f, 0.865514f, 0.864744f, + 0.863973f, 0.863199f, 0.862424f, 0.861646f, 0.860867f, 0.860085f, 0.859302f, 0.858516f, + 0.857729f, 0.856939f, 0.856147f, 0.855354f, 0.854558f, 0.853760f, 0.852961f, 0.852159f, + 0.851355f, 0.850549f, 0.849742f, 0.848932f, 0.848120f, 0.847307f, 0.846491f, 0.845673f, + 0.844854f, 0.844032f, 0.843208f, 0.842383f, 0.841555f, 0.840725f, 0.839894f, 0.839060f, + 0.838225f, 0.837387f, 0.836548f, 0.835706f, 0.834863f, 0.834018f, 0.833170f, 0.832321f, + 0.831470f, 0.830616f, 0.829761f, 0.828904f, 0.828045f, 0.827184f, 0.826321f, 0.825456f, + 0.824589f, 0.823721f, 0.822850f, 0.821977f, 0.821102f, 0.820226f, 0.819348f, 0.818467f, + 0.817585f, 0.816701f, 0.815814f, 0.814926f, 0.814036f, 0.813144f, 0.812251f, 0.811355f, + 0.810457f, 0.809558f, 0.808656f, 0.807753f, 0.806848f, 0.805940f, 0.805031f, 0.804120f, + 0.803208f, 0.802293f, 0.801376f, 0.800458f, 0.799537f, 0.798615f, 0.797691f, 0.796765f, + 0.795837f, 0.794907f, 0.793975f, 0.793042f, 0.792107f, 0.791169f, 0.790230f, 0.789289f, + 0.788346f, 0.787402f, 0.786455f, 0.785507f, 0.784557f, 0.783605f, 0.782651f, 0.781695f, + 0.780737f, 0.779778f, 0.778817f, 0.777853f, 0.776888f, 0.775922f, 0.774953f, 0.773983f, + 0.773010f, 0.772036f, 0.771061f, 0.770083f, 0.769103f, 0.768122f, 0.767139f, 0.766154f, + 0.765167f, 0.764179f, 0.763188f, 0.762196f, 0.761202f, 0.760207f, 0.759209f, 0.758210f, + 0.757209f, 0.756206f, 0.755201f, 0.754195f, 0.753187f, 0.752177f, 0.751165f, 0.750152f, + 0.749136f, 0.748119f, 0.747101f, 0.746080f, 0.745058f, 0.744034f, 0.743008f, 0.741980f, + 0.740951f, 0.739920f, 0.738887f, 0.737853f, 0.736817f, 0.735779f, 0.734739f, 0.733697f, + 0.732654f, 0.731609f, 0.730563f, 0.729514f, 0.728464f, 0.727413f, 0.726359f, 0.725304f, + 0.724247f, 0.723188f, 0.722128f, 0.721066f, 0.720003f, 0.718937f, 0.717870f, 0.716801f, + 0.715731f, 0.714659f, 0.713585f, 0.712509f, 0.711432f, 0.710353f, 0.709273f, 0.708191f, + 0.707107f, 0.706021f, 0.704934f, 0.703845f, 0.702755f, 0.701663f, 0.700569f, 0.699473f, + 0.698376f, 0.697277f, 0.696177f, 0.695075f, 0.693971f, 0.692866f, 0.691759f, 0.690651f, + 0.689541f, 0.688429f, 0.687315f, 0.686200f, 0.685084f, 0.683965f, 0.682846f, 0.681724f, + 0.680601f, 0.679476f, 0.678350f, 0.677222f, 0.676093f, 0.674962f, 0.673829f, 0.672695f, + 0.671559f, 0.670422f, 0.669283f, 0.668142f, 0.667000f, 0.665856f, 0.664711f, 0.663564f, + 0.662416f, 0.661266f, 0.660114f, 0.658961f, 0.657807f, 0.656651f, 0.655493f, 0.654334f, + 0.653173f, 0.652011f, 0.650847f, 0.649681f, 0.648514f, 0.647346f, 0.646176f, 0.645005f, + 0.643832f, 0.642657f, 0.641481f, 0.640303f, 0.639124f, 0.637944f, 0.636762f, 0.635578f, + 0.634393f, 0.633207f, 0.632019f, 0.630829f, 0.629638f, 0.628446f, 0.627252f, 0.626056f, + 0.624860f, 0.623661f, 0.622461f, 0.621260f, 0.620057f, 0.618853f, 0.617647f, 0.616440f, + 0.615232f, 0.614022f, 0.612810f, 0.611597f, 0.610383f, 0.609167f, 0.607950f, 0.606731f, + 0.605511f, 0.604290f, 0.603067f, 0.601842f, 0.600616f, 0.599389f, 0.598161f, 0.596931f, + 0.595699f, 0.594467f, 0.593232f, 0.591997f, 0.590760f, 0.589521f, 0.588282f, 0.587040f, + 0.585798f, 0.584554f, 0.583309f, 0.582062f, 0.580814f, 0.579565f, 0.578314f, 0.577062f, + 0.575808f, 0.574553f, 0.573297f, 0.572040f, 0.570781f, 0.569521f, 0.568259f, 0.566996f, + 0.565732f, 0.564466f, 0.563199f, 0.561931f, 0.560662f, 0.559391f, 0.558119f, 0.556845f, + 0.555570f, 0.554294f, 0.553017f, 0.551738f, 0.550458f, 0.549177f, 0.547894f, 0.546610f, + 0.545325f, 0.544039f, 0.542751f, 0.541462f, 0.540171f, 0.538880f, 0.537587f, 0.536293f, + 0.534998f, 0.533701f, 0.532403f, 0.531104f, 0.529804f, 0.528502f, 0.527199f, 0.525895f, + 0.524590f, 0.523283f, 0.521975f, 0.520666f, 0.519356f, 0.518045f, 0.516732f, 0.515418f, + 0.514103f, 0.512786f, 0.511469f, 0.510150f, 0.508830f, 0.507509f, 0.506187f, 0.504863f, + 0.503538f, 0.502212f, 0.500885f, 0.499557f, 0.498228f, 0.496897f, 0.495565f, 0.494232f, + 0.492898f, 0.491563f, 0.490226f, 0.488889f, 0.487550f, 0.486210f, 0.484869f, 0.483527f, + 0.482184f, 0.480839f, 0.479494f, 0.478147f, 0.476799f, 0.475450f, 0.474100f, 0.472749f, + 0.471397f, 0.470043f, 0.468689f, 0.467333f, 0.465977f, 0.464619f, 0.463260f, 0.461900f, + 0.460539f, 0.459177f, 0.457813f, 0.456449f, 0.455084f, 0.453717f, 0.452350f, 0.450981f, + 0.449611f, 0.448241f, 0.446869f, 0.445496f, 0.444122f, 0.442747f, 0.441371f, 0.439994f, + 0.438616f, 0.437237f, 0.435857f, 0.434476f, 0.433094f, 0.431711f, 0.430326f, 0.428941f, + 0.427555f, 0.426168f, 0.424780f, 0.423390f, 0.422000f, 0.420609f, 0.419217f, 0.417824f, + 0.416430f, 0.415034f, 0.413638f, 0.412241f, 0.410843f, 0.409444f, 0.408044f, 0.406643f, + 0.405241f, 0.403838f, 0.402435f, 0.401030f, 0.399624f, 0.398218f, 0.396810f, 0.395401f, + 0.393992f, 0.392582f, 0.391170f, 0.389758f, 0.388345f, 0.386931f, 0.385516f, 0.384100f, + 0.382683f, 0.381266f, 0.379847f, 0.378428f, 0.377007f, 0.375586f, 0.374164f, 0.372741f, + 0.371317f, 0.369892f, 0.368467f, 0.367040f, 0.365613f, 0.364185f, 0.362756f, 0.361326f, + 0.359895f, 0.358463f, 0.357031f, 0.355598f, 0.354164f, 0.352729f, 0.351293f, 0.349856f, + 0.348419f, 0.346980f, 0.345541f, 0.344101f, 0.342661f, 0.341219f, 0.339777f, 0.338334f, + 0.336890f, 0.335445f, 0.334000f, 0.332553f, 0.331106f, 0.329658f, 0.328210f, 0.326760f, + 0.325310f, 0.323859f, 0.322408f, 0.320955f, 0.319502f, 0.318048f, 0.316593f, 0.315138f, + 0.313682f, 0.312225f, 0.310767f, 0.309309f, 0.307850f, 0.306390f, 0.304929f, 0.303468f, + 0.302006f, 0.300543f, 0.299080f, 0.297616f, 0.296151f, 0.294685f, 0.293219f, 0.291752f, + 0.290285f, 0.288816f, 0.287347f, 0.285878f, 0.284408f, 0.282937f, 0.281465f, 0.279993f, + 0.278520f, 0.277046f, 0.275572f, 0.274097f, 0.272621f, 0.271145f, 0.269668f, 0.268191f, + 0.266713f, 0.265234f, 0.263755f, 0.262275f, 0.260794f, 0.259313f, 0.257831f, 0.256349f, + 0.254866f, 0.253382f, 0.251898f, 0.250413f, 0.248928f, 0.247442f, 0.245955f, 0.244468f, + 0.242980f, 0.241492f, 0.240003f, 0.238514f, 0.237024f, 0.235533f, 0.234042f, 0.232550f, + 0.231058f, 0.229565f, 0.228072f, 0.226578f, 0.225084f, 0.223589f, 0.222094f, 0.220598f, + 0.219101f, 0.217604f, 0.216107f, 0.214609f, 0.213110f, 0.211611f, 0.210112f, 0.208612f, + 0.207111f, 0.205610f, 0.204109f, 0.202607f, 0.201105f, 0.199602f, 0.198098f, 0.196595f, + 0.195090f, 0.193586f, 0.192080f, 0.190575f, 0.189069f, 0.187562f, 0.186055f, 0.184548f, + 0.183040f, 0.181532f, 0.180023f, 0.178514f, 0.177004f, 0.175494f, 0.173984f, 0.172473f, + 0.170962f, 0.169450f, 0.167938f, 0.166426f, 0.164913f, 0.163400f, 0.161886f, 0.160372f, + 0.158858f, 0.157343f, 0.155828f, 0.154313f, 0.152797f, 0.151281f, 0.149765f, 0.148248f, + 0.146730f, 0.145213f, 0.143695f, 0.142177f, 0.140658f, 0.139139f, 0.137620f, 0.136101f, + 0.134581f, 0.133061f, 0.131540f, 0.130019f, 0.128498f, 0.126977f, 0.125455f, 0.123933f, + 0.122411f, 0.120888f, 0.119365f, 0.117842f, 0.116319f, 0.114795f, 0.113271f, 0.111747f, + 0.110222f, 0.108697f, 0.107172f, 0.105647f, 0.104122f, 0.102596f, 0.101070f, 0.099544f, + 0.098017f, 0.096490f, 0.094963f, 0.093436f, 0.091909f, 0.090381f, 0.088854f, 0.087326f, + 0.085797f, 0.084269f, 0.082740f, 0.081211f, 0.079682f, 0.078153f, 0.076624f, 0.075094f, + 0.073565f, 0.072035f, 0.070505f, 0.068974f, 0.067444f, 0.065913f, 0.064383f, 0.062852f, + 0.061321f, 0.059790f, 0.058258f, 0.056727f, 0.055195f, 0.053664f, 0.052132f, 0.050600f, + 0.049068f, 0.047535f, 0.046003f, 0.044471f, 0.042938f, 0.041406f, 0.039873f, 0.038340f, + 0.036807f, 0.035274f, 0.033741f, 0.032208f, 0.030675f, 0.029142f, 0.027608f, 0.026075f, + 0.024541f, 0.023008f, 0.021474f, 0.019940f, 0.018407f, 0.016873f, 0.015339f, 0.013805f, + 0.012272f, 0.010738f, 0.009204f, 0.007670f, 0.006136f, 0.004602f, 0.003068f, 0.001534f, + 0.000000f, 0.001534f, 0.003068f, 0.004602f, 0.006136f, 0.007670f, 0.009204f, 0.010738f, + 0.012272f, 0.013805f, 0.015339f, 0.016873f, 0.018407f, 0.019940f, 0.021474f, 0.023008f, + 0.024541f, 0.026075f, 0.027608f, 0.029142f, 0.030675f, 0.032208f, 0.033741f, 0.035274f, + 0.036807f, 0.038340f, 0.039873f, 0.041406f, 0.042938f, 0.044471f, 0.046003f, 0.047535f, + 0.049068f, 0.050600f, 0.052132f, 0.053664f, 0.055195f, 0.056727f, 0.058258f, 0.059790f, + 0.061321f, 0.062852f, 0.064383f, 0.065913f, 0.067444f, 0.068974f, 0.070505f, 0.072035f, + 0.073565f, 0.075094f, 0.076624f, 0.078153f, 0.079682f, 0.081211f, 0.082740f, 0.084269f, + 0.085797f, 0.087326f, 0.088854f, 0.090381f, 0.091909f, 0.093436f, 0.094963f, 0.096490f, + 0.098017f, 0.099544f, 0.101070f, 0.102596f, 0.104122f, 0.105647f, 0.107172f, 0.108697f, + 0.110222f, 0.111747f, 0.113271f, 0.114795f, 0.116319f, 0.117842f, 0.119365f, 0.120888f, + 0.122411f, 0.123933f, 0.125455f, 0.126977f, 0.128498f, 0.130019f, 0.131540f, 0.133061f, + 0.134581f, 0.136101f, 0.137620f, 0.139139f, 0.140658f, 0.142177f, 0.143695f, 0.145213f, + 0.146730f, 0.148248f, 0.149765f, 0.151281f, 0.152797f, 0.154313f, 0.155828f, 0.157343f, + 0.158858f, 0.160372f, 0.161886f, 0.163400f, 0.164913f, 0.166426f, 0.167938f, 0.169450f, + 0.170962f, 0.172473f, 0.173984f, 0.175494f, 0.177004f, 0.178514f, 0.180023f, 0.181532f, + 0.183040f, 0.184548f, 0.186055f, 0.187562f, 0.189069f, 0.190575f, 0.192080f, 0.193586f, + 0.195090f, 0.196595f, 0.198098f, 0.199602f, 0.201105f, 0.202607f, 0.204109f, 0.205610f, + 0.207111f, 0.208612f, 0.210112f, 0.211611f, 0.213110f, 0.214609f, 0.216107f, 0.217604f, + 0.219101f, 0.220598f, 0.222094f, 0.223589f, 0.225084f, 0.226578f, 0.228072f, 0.229565f, + 0.231058f, 0.232550f, 0.234042f, 0.235533f, 0.237024f, 0.238514f, 0.240003f, 0.241492f, + 0.242980f, 0.244468f, 0.245955f, 0.247442f, 0.248928f, 0.250413f, 0.251898f, 0.253382f, + 0.254866f, 0.256349f, 0.257831f, 0.259313f, 0.260794f, 0.262275f, 0.263755f, 0.265234f, + 0.266713f, 0.268191f, 0.269668f, 0.271145f, 0.272621f, 0.274097f, 0.275572f, 0.277046f, + 0.278520f, 0.279993f, 0.281465f, 0.282937f, 0.284408f, 0.285878f, 0.287347f, 0.288816f, + 0.290285f, 0.291752f, 0.293219f, 0.294685f, 0.296151f, 0.297616f, 0.299080f, 0.300543f, + 0.302006f, 0.303468f, 0.304929f, 0.306390f, 0.307850f, 0.309309f, 0.310767f, 0.312225f, + 0.313682f, 0.315138f, 0.316593f, 0.318048f, 0.319502f, 0.320955f, 0.322408f, 0.323859f, + 0.325310f, 0.326760f, 0.328210f, 0.329658f, 0.331106f, 0.332553f, 0.334000f, 0.335445f, + 0.336890f, 0.338334f, 0.339777f, 0.341219f, 0.342661f, 0.344101f, 0.345541f, 0.346980f, + 0.348419f, 0.349856f, 0.351293f, 0.352729f, 0.354164f, 0.355598f, 0.357031f, 0.358463f, + 0.359895f, 0.361326f, 0.362756f, 0.364185f, 0.365613f, 0.367040f, 0.368467f, 0.369892f, + 0.371317f, 0.372741f, 0.374164f, 0.375586f, 0.377007f, 0.378428f, 0.379847f, 0.381266f, + 0.382683f, 0.384100f, 0.385516f, 0.386931f, 0.388345f, 0.389758f, 0.391170f, 0.392582f, + 0.393992f, 0.395401f, 0.396810f, 0.398218f, 0.399624f, 0.401030f, 0.402435f, 0.403838f, + 0.405241f, 0.406643f, 0.408044f, 0.409444f, 0.410843f, 0.412241f, 0.413638f, 0.415034f, + 0.416430f, 0.417824f, 0.419217f, 0.420609f, 0.422000f, 0.423390f, 0.424780f, 0.426168f, + 0.427555f, 0.428941f, 0.430326f, 0.431711f, 0.433094f, 0.434476f, 0.435857f, 0.437237f, + 0.438616f, 0.439994f, 0.441371f, 0.442747f, 0.444122f, 0.445496f, 0.446869f, 0.448241f, + 0.449611f, 0.450981f, 0.452350f, 0.453717f, 0.455084f, 0.456449f, 0.457813f, 0.459177f, + 0.460539f, 0.461900f, 0.463260f, 0.464619f, 0.465977f, 0.467333f, 0.468689f, 0.470043f, + 0.471397f, 0.472749f, 0.474100f, 0.475450f, 0.476799f, 0.478147f, 0.479494f, 0.480839f, + 0.482184f, 0.483527f, 0.484869f, 0.486210f, 0.487550f, 0.488889f, 0.490226f, 0.491563f, + 0.492898f, 0.494232f, 0.495565f, 0.496897f, 0.498228f, 0.499557f, 0.500885f, 0.502212f, + 0.503538f, 0.504863f, 0.506187f, 0.507509f, 0.508830f, 0.510150f, 0.511469f, 0.512786f, + 0.514103f, 0.515418f, 0.516732f, 0.518045f, 0.519356f, 0.520666f, 0.521975f, 0.523283f, + 0.524590f, 0.525895f, 0.527199f, 0.528502f, 0.529804f, 0.531104f, 0.532403f, 0.533701f, + 0.534998f, 0.536293f, 0.537587f, 0.538880f, 0.540171f, 0.541462f, 0.542751f, 0.544039f, + 0.545325f, 0.546610f, 0.547894f, 0.549177f, 0.550458f, 0.551738f, 0.553017f, 0.554294f, + 0.555570f, 0.556845f, 0.558119f, 0.559391f, 0.560662f, 0.561931f, 0.563199f, 0.564466f, + 0.565732f, 0.566996f, 0.568259f, 0.569521f, 0.570781f, 0.572040f, 0.573297f, 0.574553f, + 0.575808f, 0.577062f, 0.578314f, 0.579565f, 0.580814f, 0.582062f, 0.583309f, 0.584554f, + 0.585798f, 0.587040f, 0.588282f, 0.589521f, 0.590760f, 0.591997f, 0.593232f, 0.594467f, + 0.595699f, 0.596931f, 0.598161f, 0.599389f, 0.600616f, 0.601842f, 0.603067f, 0.604290f, + 0.605511f, 0.606731f, 0.607950f, 0.609167f, 0.610383f, 0.611597f, 0.612810f, 0.614022f, + 0.615232f, 0.616440f, 0.617647f, 0.618853f, 0.620057f, 0.621260f, 0.622461f, 0.623661f, + 0.624860f, 0.626056f, 0.627252f, 0.628446f, 0.629638f, 0.630829f, 0.632019f, 0.633207f, + 0.634393f, 0.635578f, 0.636762f, 0.637944f, 0.639124f, 0.640303f, 0.641481f, 0.642657f, + 0.643832f, 0.645005f, 0.646176f, 0.647346f, 0.648514f, 0.649681f, 0.650847f, 0.652011f, + 0.653173f, 0.654334f, 0.655493f, 0.656651f, 0.657807f, 0.658961f, 0.660114f, 0.661266f, + 0.662416f, 0.663564f, 0.664711f, 0.665856f, 0.667000f, 0.668142f, 0.669283f, 0.670422f, + 0.671559f, 0.672695f, 0.673829f, 0.674962f, 0.676093f, 0.677222f, 0.678350f, 0.679476f, + 0.680601f, 0.681724f, 0.682846f, 0.683965f, 0.685084f, 0.686200f, 0.687315f, 0.688429f, + 0.689541f, 0.690651f, 0.691759f, 0.692866f, 0.693971f, 0.695075f, 0.696177f, 0.697277f, + 0.698376f, 0.699473f, 0.700569f, 0.701663f, 0.702755f, 0.703845f, 0.704934f, 0.706021f, + 0.707107f, 0.708191f, 0.709273f, 0.710353f, 0.711432f, 0.712509f, 0.713585f, 0.714659f, + 0.715731f, 0.716801f, 0.717870f, 0.718937f, 0.720003f, 0.721066f, 0.722128f, 0.723188f, + 0.724247f, 0.725304f, 0.726359f, 0.727413f, 0.728464f, 0.729514f, 0.730563f, 0.731609f, + 0.732654f, 0.733697f, 0.734739f, 0.735779f, 0.736817f, 0.737853f, 0.738887f, 0.739920f, + 0.740951f, 0.741980f, 0.743008f, 0.744034f, 0.745058f, 0.746080f, 0.747101f, 0.748119f, + 0.749136f, 0.750152f, 0.751165f, 0.752177f, 0.753187f, 0.754195f, 0.755201f, 0.756206f, + 0.757209f, 0.758210f, 0.759209f, 0.760207f, 0.761202f, 0.762196f, 0.763188f, 0.764179f, + 0.765167f, 0.766154f, 0.767139f, 0.768122f, 0.769103f, 0.770083f, 0.771061f, 0.772036f, + 0.773010f, 0.773983f, 0.774953f, 0.775922f, 0.776888f, 0.777853f, 0.778817f, 0.779778f, + 0.780737f, 0.781695f, 0.782651f, 0.783605f, 0.784557f, 0.785507f, 0.786455f, 0.787402f, + 0.788346f, 0.789289f, 0.790230f, 0.791169f, 0.792107f, 0.793042f, 0.793975f, 0.794907f, + 0.795837f, 0.796765f, 0.797691f, 0.798615f, 0.799537f, 0.800458f, 0.801376f, 0.802293f, + 0.803208f, 0.804120f, 0.805031f, 0.805940f, 0.806848f, 0.807753f, 0.808656f, 0.809558f, + 0.810457f, 0.811355f, 0.812251f, 0.813144f, 0.814036f, 0.814926f, 0.815814f, 0.816701f, + 0.817585f, 0.818467f, 0.819348f, 0.820226f, 0.821102f, 0.821977f, 0.822850f, 0.823721f, + 0.824589f, 0.825456f, 0.826321f, 0.827184f, 0.828045f, 0.828904f, 0.829761f, 0.830616f, + 0.831470f, 0.832321f, 0.833170f, 0.834018f, 0.834863f, 0.835706f, 0.836548f, 0.837387f, + 0.838225f, 0.839060f, 0.839894f, 0.840725f, 0.841555f, 0.842383f, 0.843208f, 0.844032f, + 0.844854f, 0.845673f, 0.846491f, 0.847307f, 0.848120f, 0.848932f, 0.849742f, 0.850549f, + 0.851355f, 0.852159f, 0.852961f, 0.853760f, 0.854558f, 0.855354f, 0.856147f, 0.856939f, + 0.857729f, 0.858516f, 0.859302f, 0.860085f, 0.860867f, 0.861646f, 0.862424f, 0.863199f, + 0.863973f, 0.864744f, 0.865514f, 0.866281f, 0.867046f, 0.867809f, 0.868571f, 0.869330f, + 0.870087f, 0.870842f, 0.871595f, 0.872346f, 0.873095f, 0.873842f, 0.874587f, 0.875329f, + 0.876070f, 0.876809f, 0.877545f, 0.878280f, 0.879012f, 0.879743f, 0.880471f, 0.881197f, + 0.881921f, 0.882643f, 0.883363f, 0.884081f, 0.884797f, 0.885511f, 0.886223f, 0.886932f, + 0.887640f, 0.888345f, 0.889048f, 0.889750f, 0.890449f, 0.891146f, 0.891841f, 0.892534f, + 0.893224f, 0.893913f, 0.894599f, 0.895284f, 0.895966f, 0.896646f, 0.897325f, 0.898001f, + 0.898674f, 0.899346f, 0.900016f, 0.900683f, 0.901349f, 0.902012f, 0.902673f, 0.903332f, + 0.903989f, 0.904644f, 0.905297f, 0.905947f, 0.906596f, 0.907242f, 0.907886f, 0.908528f, + 0.909168f, 0.909806f, 0.910441f, 0.911075f, 0.911706f, 0.912335f, 0.912962f, 0.913587f, + 0.914210f, 0.914830f, 0.915449f, 0.916065f, 0.916679f, 0.917291f, 0.917901f, 0.918508f, + 0.919114f, 0.919717f, 0.920318f, 0.920917f, 0.921514f, 0.922109f, 0.922701f, 0.923291f, + 0.923880f, 0.924465f, 0.925049f, 0.925631f, 0.926210f, 0.926787f, 0.927363f, 0.927935f, + 0.928506f, 0.929075f, 0.929641f, 0.930205f, 0.930767f, 0.931327f, 0.931884f, 0.932440f, + 0.932993f, 0.933544f, 0.934093f, 0.934639f, 0.935184f, 0.935726f, 0.936266f, 0.936803f, + 0.937339f, 0.937872f, 0.938404f, 0.938932f, 0.939459f, 0.939984f, 0.940506f, 0.941026f, + 0.941544f, 0.942060f, 0.942573f, 0.943084f, 0.943593f, 0.944100f, 0.944605f, 0.945107f, + 0.945607f, 0.946105f, 0.946601f, 0.947094f, 0.947586f, 0.948075f, 0.948561f, 0.949046f, + 0.949528f, 0.950008f, 0.950486f, 0.950962f, 0.951435f, 0.951906f, 0.952375f, 0.952842f, + 0.953306f, 0.953768f, 0.954228f, 0.954686f, 0.955141f, 0.955594f, 0.956045f, 0.956494f, + 0.956940f, 0.957385f, 0.957826f, 0.958266f, 0.958703f, 0.959139f, 0.959572f, 0.960002f, + 0.960431f, 0.960857f, 0.961280f, 0.961702f, 0.962121f, 0.962538f, 0.962953f, 0.963366f, + 0.963776f, 0.964184f, 0.964590f, 0.964993f, 0.965394f, 0.965793f, 0.966190f, 0.966584f, + 0.966976f, 0.967366f, 0.967754f, 0.968139f, 0.968522f, 0.968903f, 0.969281f, 0.969657f, + 0.970031f, 0.970403f, 0.970772f, 0.971139f, 0.971504f, 0.971866f, 0.972227f, 0.972584f, + 0.972940f, 0.973293f, 0.973644f, 0.973993f, 0.974339f, 0.974684f, 0.975025f, 0.975365f, + 0.975702f, 0.976037f, 0.976370f, 0.976700f, 0.977028f, 0.977354f, 0.977677f, 0.977998f, + 0.978317f, 0.978634f, 0.978948f, 0.979260f, 0.979570f, 0.979877f, 0.980182f, 0.980485f, + 0.980785f, 0.981083f, 0.981379f, 0.981673f, 0.981964f, 0.982253f, 0.982539f, 0.982824f, + 0.983105f, 0.983385f, 0.983662f, 0.983937f, 0.984210f, 0.984480f, 0.984748f, 0.985014f, + 0.985278f, 0.985539f, 0.985798f, 0.986054f, 0.986308f, 0.986560f, 0.986809f, 0.987057f, + 0.987301f, 0.987544f, 0.987784f, 0.988022f, 0.988258f, 0.988491f, 0.988722f, 0.988950f, + 0.989177f, 0.989400f, 0.989622f, 0.989841f, 0.990058f, 0.990273f, 0.990485f, 0.990695f, + 0.990903f, 0.991108f, 0.991311f, 0.991511f, 0.991710f, 0.991906f, 0.992099f, 0.992291f, + 0.992480f, 0.992666f, 0.992850f, 0.993032f, 0.993212f, 0.993389f, 0.993564f, 0.993737f, + 0.993907f, 0.994075f, 0.994240f, 0.994404f, 0.994565f, 0.994723f, 0.994879f, 0.995033f, + 0.995185f, 0.995334f, 0.995481f, 0.995625f, 0.995767f, 0.995907f, 0.996045f, 0.996180f, + 0.996313f, 0.996443f, 0.996571f, 0.996697f, 0.996820f, 0.996941f, 0.997060f, 0.997176f, + 0.997290f, 0.997402f, 0.997511f, 0.997618f, 0.997723f, 0.997825f, 0.997925f, 0.998023f, + 0.998118f, 0.998211f, 0.998302f, 0.998390f, 0.998476f, 0.998559f, 0.998640f, 0.998719f, + 0.998795f, 0.998870f, 0.998941f, 0.999011f, 0.999078f, 0.999142f, 0.999205f, 0.999265f, + 0.999322f, 0.999378f, 0.999431f, 0.999481f, 0.999529f, 0.999575f, 0.999619f, 0.999660f, + 0.999699f, 0.999735f, 0.999769f, 0.999801f, 0.999831f, 0.999858f, 0.999882f, 0.999905f, + 0.999925f, 0.999942f, 0.999958f, 0.999971f, 0.999981f, 0.999989f, 0.999995f, 0.999999f +}; + +static const float cosTable8192[4096] = { + 1.000000f, 1.000000f, 0.999999f, 0.999997f, 0.999995f, 0.999993f, 0.999989f, 0.999986f, + 0.999981f, 0.999976f, 0.999971f, 0.999964f, 0.999958f, 0.999950f, 0.999942f, 0.999934f, + 0.999925f, 0.999915f, 0.999905f, 0.999894f, 0.999882f, 0.999870f, 0.999858f, 0.999844f, + 0.999831f, 0.999816f, 0.999801f, 0.999786f, 0.999769f, 0.999753f, 0.999735f, 0.999717f, + 0.999699f, 0.999680f, 0.999660f, 0.999640f, 0.999619f, 0.999597f, 0.999575f, 0.999553f, + 0.999529f, 0.999506f, 0.999481f, 0.999456f, 0.999431f, 0.999404f, 0.999378f, 0.999350f, + 0.999322f, 0.999294f, 0.999265f, 0.999235f, 0.999205f, 0.999174f, 0.999142f, 0.999110f, + 0.999078f, 0.999044f, 0.999011f, 0.998976f, 0.998941f, 0.998906f, 0.998870f, 0.998833f, + 0.998795f, 0.998758f, 0.998719f, 0.998680f, 0.998640f, 0.998600f, 0.998559f, 0.998518f, + 0.998476f, 0.998433f, 0.998390f, 0.998346f, 0.998302f, 0.998257f, 0.998211f, 0.998165f, + 0.998118f, 0.998071f, 0.998023f, 0.997974f, 0.997925f, 0.997876f, 0.997825f, 0.997774f, + 0.997723f, 0.997671f, 0.997618f, 0.997565f, 0.997511f, 0.997457f, 0.997402f, 0.997347f, + 0.997290f, 0.997234f, 0.997176f, 0.997119f, 0.997060f, 0.997001f, 0.996941f, 0.996881f, + 0.996820f, 0.996759f, 0.996697f, 0.996634f, 0.996571f, 0.996507f, 0.996443f, 0.996378f, + 0.996313f, 0.996247f, 0.996180f, 0.996113f, 0.996045f, 0.995976f, 0.995907f, 0.995838f, + 0.995767f, 0.995697f, 0.995625f, 0.995553f, 0.995481f, 0.995408f, 0.995334f, 0.995260f, + 0.995185f, 0.995109f, 0.995033f, 0.994957f, 0.994879f, 0.994802f, 0.994723f, 0.994644f, + 0.994565f, 0.994484f, 0.994404f, 0.994322f, 0.994240f, 0.994158f, 0.994075f, 0.993991f, + 0.993907f, 0.993822f, 0.993737f, 0.993651f, 0.993564f, 0.993477f, 0.993389f, 0.993301f, + 0.993212f, 0.993122f, 0.993032f, 0.992942f, 0.992850f, 0.992759f, 0.992666f, 0.992573f, + 0.992480f, 0.992385f, 0.992291f, 0.992195f, 0.992099f, 0.992003f, 0.991906f, 0.991808f, + 0.991710f, 0.991611f, 0.991511f, 0.991411f, 0.991311f, 0.991210f, 0.991108f, 0.991006f, + 0.990903f, 0.990799f, 0.990695f, 0.990590f, 0.990485f, 0.990379f, 0.990273f, 0.990166f, + 0.990058f, 0.989950f, 0.989841f, 0.989732f, 0.989622f, 0.989511f, 0.989400f, 0.989289f, + 0.989177f, 0.989064f, 0.988950f, 0.988836f, 0.988722f, 0.988607f, 0.988491f, 0.988374f, + 0.988258f, 0.988140f, 0.988022f, 0.987903f, 0.987784f, 0.987664f, 0.987544f, 0.987423f, + 0.987301f, 0.987179f, 0.987057f, 0.986933f, 0.986809f, 0.986685f, 0.986560f, 0.986434f, + 0.986308f, 0.986181f, 0.986054f, 0.985926f, 0.985798f, 0.985668f, 0.985539f, 0.985408f, + 0.985278f, 0.985146f, 0.985014f, 0.984882f, 0.984748f, 0.984615f, 0.984480f, 0.984346f, + 0.984210f, 0.984074f, 0.983937f, 0.983800f, 0.983662f, 0.983524f, 0.983385f, 0.983246f, + 0.983105f, 0.982965f, 0.982824f, 0.982682f, 0.982539f, 0.982396f, 0.982253f, 0.982109f, + 0.981964f, 0.981819f, 0.981673f, 0.981526f, 0.981379f, 0.981232f, 0.981083f, 0.980935f, + 0.980785f, 0.980635f, 0.980485f, 0.980334f, 0.980182f, 0.980030f, 0.979877f, 0.979724f, + 0.979570f, 0.979415f, 0.979260f, 0.979104f, 0.978948f, 0.978791f, 0.978634f, 0.978476f, + 0.978317f, 0.978158f, 0.977998f, 0.977838f, 0.977677f, 0.977516f, 0.977354f, 0.977191f, + 0.977028f, 0.976864f, 0.976700f, 0.976535f, 0.976370f, 0.976204f, 0.976037f, 0.975870f, + 0.975702f, 0.975534f, 0.975365f, 0.975195f, 0.975025f, 0.974855f, 0.974684f, 0.974512f, + 0.974339f, 0.974166f, 0.973993f, 0.973819f, 0.973644f, 0.973469f, 0.973293f, 0.973117f, + 0.972940f, 0.972762f, 0.972584f, 0.972406f, 0.972227f, 0.972047f, 0.971866f, 0.971685f, + 0.971504f, 0.971322f, 0.971139f, 0.970956f, 0.970772f, 0.970588f, 0.970403f, 0.970217f, + 0.970031f, 0.969845f, 0.969657f, 0.969470f, 0.969281f, 0.969092f, 0.968903f, 0.968713f, + 0.968522f, 0.968331f, 0.968139f, 0.967947f, 0.967754f, 0.967560f, 0.967366f, 0.967172f, + 0.966976f, 0.966781f, 0.966584f, 0.966387f, 0.966190f, 0.965992f, 0.965793f, 0.965594f, + 0.965394f, 0.965194f, 0.964993f, 0.964792f, 0.964590f, 0.964387f, 0.964184f, 0.963980f, + 0.963776f, 0.963571f, 0.963366f, 0.963160f, 0.962953f, 0.962746f, 0.962538f, 0.962330f, + 0.962121f, 0.961912f, 0.961702f, 0.961492f, 0.961280f, 0.961069f, 0.960857f, 0.960644f, + 0.960431f, 0.960217f, 0.960002f, 0.959787f, 0.959572f, 0.959355f, 0.959139f, 0.958921f, + 0.958703f, 0.958485f, 0.958266f, 0.958046f, 0.957826f, 0.957606f, 0.957385f, 0.957163f, + 0.956940f, 0.956717f, 0.956494f, 0.956270f, 0.956045f, 0.955820f, 0.955594f, 0.955368f, + 0.955141f, 0.954914f, 0.954686f, 0.954457f, 0.954228f, 0.953998f, 0.953768f, 0.953537f, + 0.953306f, 0.953074f, 0.952842f, 0.952609f, 0.952375f, 0.952141f, 0.951906f, 0.951671f, + 0.951435f, 0.951199f, 0.950962f, 0.950724f, 0.950486f, 0.950247f, 0.950008f, 0.949768f, + 0.949528f, 0.949287f, 0.949046f, 0.948804f, 0.948561f, 0.948318f, 0.948075f, 0.947830f, + 0.947586f, 0.947340f, 0.947094f, 0.946848f, 0.946601f, 0.946353f, 0.946105f, 0.945857f, + 0.945607f, 0.945358f, 0.945107f, 0.944856f, 0.944605f, 0.944353f, 0.944100f, 0.943847f, + 0.943593f, 0.943339f, 0.943084f, 0.942829f, 0.942573f, 0.942317f, 0.942060f, 0.941802f, + 0.941544f, 0.941285f, 0.941026f, 0.940766f, 0.940506f, 0.940245f, 0.939984f, 0.939722f, + 0.939459f, 0.939196f, 0.938932f, 0.938668f, 0.938404f, 0.938138f, 0.937872f, 0.937606f, + 0.937339f, 0.937072f, 0.936803f, 0.936535f, 0.936266f, 0.935996f, 0.935726f, 0.935455f, + 0.935184f, 0.934912f, 0.934639f, 0.934366f, 0.934093f, 0.933818f, 0.933544f, 0.933269f, + 0.932993f, 0.932716f, 0.932440f, 0.932162f, 0.931884f, 0.931606f, 0.931327f, 0.931047f, + 0.930767f, 0.930486f, 0.930205f, 0.929923f, 0.929641f, 0.929358f, 0.929075f, 0.928791f, + 0.928506f, 0.928221f, 0.927935f, 0.927649f, 0.927363f, 0.927075f, 0.926787f, 0.926499f, + 0.926210f, 0.925921f, 0.925631f, 0.925340f, 0.925049f, 0.924758f, 0.924465f, 0.924173f, + 0.923880f, 0.923586f, 0.923291f, 0.922997f, 0.922701f, 0.922405f, 0.922109f, 0.921812f, + 0.921514f, 0.921216f, 0.920917f, 0.920618f, 0.920318f, 0.920018f, 0.919717f, 0.919416f, + 0.919114f, 0.918811f, 0.918508f, 0.918205f, 0.917901f, 0.917596f, 0.917291f, 0.916985f, + 0.916679f, 0.916372f, 0.916065f, 0.915757f, 0.915449f, 0.915140f, 0.914830f, 0.914520f, + 0.914210f, 0.913899f, 0.913587f, 0.913275f, 0.912962f, 0.912649f, 0.912335f, 0.912021f, + 0.911706f, 0.911391f, 0.911075f, 0.910758f, 0.910441f, 0.910124f, 0.909806f, 0.909487f, + 0.909168f, 0.908848f, 0.908528f, 0.908207f, 0.907886f, 0.907564f, 0.907242f, 0.906919f, + 0.906596f, 0.906272f, 0.905947f, 0.905622f, 0.905297f, 0.904971f, 0.904644f, 0.904317f, + 0.903989f, 0.903661f, 0.903332f, 0.903003f, 0.902673f, 0.902343f, 0.902012f, 0.901681f, + 0.901349f, 0.901016f, 0.900683f, 0.900350f, 0.900016f, 0.899681f, 0.899346f, 0.899011f, + 0.898674f, 0.898338f, 0.898001f, 0.897663f, 0.897325f, 0.896986f, 0.896646f, 0.896307f, + 0.895966f, 0.895625f, 0.895284f, 0.894942f, 0.894599f, 0.894256f, 0.893913f, 0.893569f, + 0.893224f, 0.892879f, 0.892534f, 0.892187f, 0.891841f, 0.891493f, 0.891146f, 0.890797f, + 0.890449f, 0.890099f, 0.889750f, 0.889399f, 0.889048f, 0.888697f, 0.888345f, 0.887993f, + 0.887640f, 0.887286f, 0.886932f, 0.886578f, 0.886223f, 0.885867f, 0.885511f, 0.885154f, + 0.884797f, 0.884439f, 0.884081f, 0.883723f, 0.883363f, 0.883004f, 0.882643f, 0.882283f, + 0.881921f, 0.881559f, 0.881197f, 0.880834f, 0.880471f, 0.880107f, 0.879743f, 0.879378f, + 0.879012f, 0.878646f, 0.878280f, 0.877913f, 0.877545f, 0.877177f, 0.876809f, 0.876440f, + 0.876070f, 0.875700f, 0.875329f, 0.874958f, 0.874587f, 0.874215f, 0.873842f, 0.873469f, + 0.873095f, 0.872721f, 0.872346f, 0.871971f, 0.871595f, 0.871219f, 0.870842f, 0.870465f, + 0.870087f, 0.869709f, 0.869330f, 0.868951f, 0.868571f, 0.868190f, 0.867809f, 0.867428f, + 0.867046f, 0.866664f, 0.866281f, 0.865898f, 0.865514f, 0.865129f, 0.864744f, 0.864359f, + 0.863973f, 0.863586f, 0.863199f, 0.862812f, 0.862424f, 0.862035f, 0.861646f, 0.861257f, + 0.860867f, 0.860476f, 0.860085f, 0.859694f, 0.859302f, 0.858909f, 0.858516f, 0.858123f, + 0.857729f, 0.857334f, 0.856939f, 0.856543f, 0.856147f, 0.855751f, 0.855354f, 0.854956f, + 0.854558f, 0.854159f, 0.853760f, 0.853361f, 0.852961f, 0.852560f, 0.852159f, 0.851757f, + 0.851355f, 0.850953f, 0.850549f, 0.850146f, 0.849742f, 0.849337f, 0.848932f, 0.848526f, + 0.848120f, 0.847714f, 0.847307f, 0.846899f, 0.846491f, 0.846082f, 0.845673f, 0.845264f, + 0.844854f, 0.844443f, 0.844032f, 0.843620f, 0.843208f, 0.842796f, 0.842383f, 0.841969f, + 0.841555f, 0.841140f, 0.840725f, 0.840310f, 0.839894f, 0.839477f, 0.839060f, 0.838643f, + 0.838225f, 0.837806f, 0.837387f, 0.836968f, 0.836548f, 0.836127f, 0.835706f, 0.835285f, + 0.834863f, 0.834440f, 0.834018f, 0.833594f, 0.833170f, 0.832746f, 0.832321f, 0.831895f, + 0.831470f, 0.831043f, 0.830616f, 0.830189f, 0.829761f, 0.829333f, 0.828904f, 0.828475f, + 0.828045f, 0.827615f, 0.827184f, 0.826753f, 0.826321f, 0.825889f, 0.825456f, 0.825023f, + 0.824589f, 0.824155f, 0.823721f, 0.823285f, 0.822850f, 0.822414f, 0.821977f, 0.821540f, + 0.821102f, 0.820664f, 0.820226f, 0.819787f, 0.819348f, 0.818908f, 0.818467f, 0.818026f, + 0.817585f, 0.817143f, 0.816701f, 0.816258f, 0.815814f, 0.815371f, 0.814926f, 0.814482f, + 0.814036f, 0.813591f, 0.813144f, 0.812698f, 0.812251f, 0.811803f, 0.811355f, 0.810906f, + 0.810457f, 0.810008f, 0.809558f, 0.809107f, 0.808656f, 0.808205f, 0.807753f, 0.807300f, + 0.806848f, 0.806394f, 0.805940f, 0.805486f, 0.805031f, 0.804576f, 0.804120f, 0.803664f, + 0.803208f, 0.802750f, 0.802293f, 0.801835f, 0.801376f, 0.800917f, 0.800458f, 0.799998f, + 0.799537f, 0.799076f, 0.798615f, 0.798153f, 0.797691f, 0.797228f, 0.796765f, 0.796301f, + 0.795837f, 0.795372f, 0.794907f, 0.794442f, 0.793975f, 0.793509f, 0.793042f, 0.792575f, + 0.792107f, 0.791638f, 0.791169f, 0.790700f, 0.790230f, 0.789760f, 0.789289f, 0.788818f, + 0.788346f, 0.787874f, 0.787402f, 0.786929f, 0.786455f, 0.785981f, 0.785507f, 0.785032f, + 0.784557f, 0.784081f, 0.783605f, 0.783128f, 0.782651f, 0.782173f, 0.781695f, 0.781216f, + 0.780737f, 0.780258f, 0.779778f, 0.779297f, 0.778817f, 0.778335f, 0.777853f, 0.777371f, + 0.776888f, 0.776405f, 0.775922f, 0.775438f, 0.774953f, 0.774468f, 0.773983f, 0.773497f, + 0.773010f, 0.772524f, 0.772036f, 0.771549f, 0.771061f, 0.770572f, 0.770083f, 0.769593f, + 0.769103f, 0.768613f, 0.768122f, 0.767631f, 0.767139f, 0.766647f, 0.766154f, 0.765661f, + 0.765167f, 0.764673f, 0.764179f, 0.763684f, 0.763188f, 0.762693f, 0.762196f, 0.761700f, + 0.761202f, 0.760705f, 0.760207f, 0.759708f, 0.759209f, 0.758710f, 0.758210f, 0.757710f, + 0.757209f, 0.756708f, 0.756206f, 0.755704f, 0.755201f, 0.754698f, 0.754195f, 0.753691f, + 0.753187f, 0.752682f, 0.752177f, 0.751671f, 0.751165f, 0.750659f, 0.750152f, 0.749644f, + 0.749136f, 0.748628f, 0.748119f, 0.747610f, 0.747101f, 0.746591f, 0.746080f, 0.745569f, + 0.745058f, 0.744546f, 0.744034f, 0.743521f, 0.743008f, 0.742494f, 0.741980f, 0.741466f, + 0.740951f, 0.740436f, 0.739920f, 0.739404f, 0.738887f, 0.738370f, 0.737853f, 0.737335f, + 0.736817f, 0.736298f, 0.735779f, 0.735259f, 0.734739f, 0.734218f, 0.733697f, 0.733176f, + 0.732654f, 0.732132f, 0.731609f, 0.731086f, 0.730563f, 0.730039f, 0.729514f, 0.728990f, + 0.728464f, 0.727939f, 0.727413f, 0.726886f, 0.726359f, 0.725832f, 0.725304f, 0.724776f, + 0.724247f, 0.723718f, 0.723188f, 0.722659f, 0.722128f, 0.721597f, 0.721066f, 0.720535f, + 0.720003f, 0.719470f, 0.718937f, 0.718404f, 0.717870f, 0.717336f, 0.716801f, 0.716266f, + 0.715731f, 0.715195f, 0.714659f, 0.714122f, 0.713585f, 0.713047f, 0.712509f, 0.711971f, + 0.711432f, 0.710893f, 0.710353f, 0.709813f, 0.709273f, 0.708732f, 0.708191f, 0.707649f, + 0.707107f, 0.706564f, 0.706021f, 0.705478f, 0.704934f, 0.704390f, 0.703845f, 0.703300f, + 0.702755f, 0.702209f, 0.701663f, 0.701116f, 0.700569f, 0.700021f, 0.699473f, 0.698925f, + 0.698376f, 0.697827f, 0.697277f, 0.696728f, 0.696177f, 0.695626f, 0.695075f, 0.694524f, + 0.693971f, 0.693419f, 0.692866f, 0.692313f, 0.691759f, 0.691205f, 0.690651f, 0.690096f, + 0.689541f, 0.688985f, 0.688429f, 0.687872f, 0.687315f, 0.686758f, 0.686200f, 0.685642f, + 0.685084f, 0.684525f, 0.683965f, 0.683406f, 0.682846f, 0.682285f, 0.681724f, 0.681163f, + 0.680601f, 0.680039f, 0.679476f, 0.678913f, 0.678350f, 0.677786f, 0.677222f, 0.676658f, + 0.676093f, 0.675527f, 0.674962f, 0.674396f, 0.673829f, 0.673262f, 0.672695f, 0.672127f, + 0.671559f, 0.670990f, 0.670422f, 0.669852f, 0.669283f, 0.668712f, 0.668142f, 0.667571f, + 0.667000f, 0.666428f, 0.665856f, 0.665284f, 0.664711f, 0.664138f, 0.663564f, 0.662990f, + 0.662416f, 0.661841f, 0.661266f, 0.660690f, 0.660114f, 0.659538f, 0.658961f, 0.658384f, + 0.657807f, 0.657229f, 0.656651f, 0.656072f, 0.655493f, 0.654913f, 0.654334f, 0.653753f, + 0.653173f, 0.652592f, 0.652011f, 0.651429f, 0.650847f, 0.650264f, 0.649681f, 0.649098f, + 0.648514f, 0.647930f, 0.647346f, 0.646761f, 0.646176f, 0.645590f, 0.645005f, 0.644418f, + 0.643832f, 0.643245f, 0.642657f, 0.642069f, 0.641481f, 0.640892f, 0.640303f, 0.639714f, + 0.639124f, 0.638534f, 0.637944f, 0.637353f, 0.636762f, 0.636170f, 0.635578f, 0.634986f, + 0.634393f, 0.633800f, 0.633207f, 0.632613f, 0.632019f, 0.631424f, 0.630829f, 0.630234f, + 0.629638f, 0.629042f, 0.628446f, 0.627849f, 0.627252f, 0.626654f, 0.626056f, 0.625458f, + 0.624860f, 0.624260f, 0.623661f, 0.623061f, 0.622461f, 0.621861f, 0.621260f, 0.620659f, + 0.620057f, 0.619455f, 0.618853f, 0.618250f, 0.617647f, 0.617044f, 0.616440f, 0.615836f, + 0.615232f, 0.614627f, 0.614022f, 0.613416f, 0.612810f, 0.612204f, 0.611597f, 0.610990f, + 0.610383f, 0.609775f, 0.609167f, 0.608559f, 0.607950f, 0.607341f, 0.606731f, 0.606121f, + 0.605511f, 0.604900f, 0.604290f, 0.603678f, 0.603067f, 0.602455f, 0.601842f, 0.601230f, + 0.600616f, 0.600003f, 0.599389f, 0.598775f, 0.598161f, 0.597546f, 0.596931f, 0.596315f, + 0.595699f, 0.595083f, 0.594467f, 0.593850f, 0.593232f, 0.592615f, 0.591997f, 0.591378f, + 0.590760f, 0.590141f, 0.589521f, 0.588902f, 0.588282f, 0.587661f, 0.587040f, 0.586419f, + 0.585798f, 0.585176f, 0.584554f, 0.583931f, 0.583309f, 0.582685f, 0.582062f, 0.581438f, + 0.580814f, 0.580189f, 0.579565f, 0.578939f, 0.578314f, 0.577688f, 0.577062f, 0.576435f, + 0.575808f, 0.575181f, 0.574553f, 0.573925f, 0.573297f, 0.572669f, 0.572040f, 0.571410f, + 0.570781f, 0.570151f, 0.569521f, 0.568890f, 0.568259f, 0.567628f, 0.566996f, 0.566364f, + 0.565732f, 0.565099f, 0.564466f, 0.563833f, 0.563199f, 0.562565f, 0.561931f, 0.561297f, + 0.560662f, 0.560026f, 0.559391f, 0.558755f, 0.558119f, 0.557482f, 0.556845f, 0.556208f, + 0.555570f, 0.554932f, 0.554294f, 0.553656f, 0.553017f, 0.552378f, 0.551738f, 0.551098f, + 0.550458f, 0.549818f, 0.549177f, 0.548536f, 0.547894f, 0.547252f, 0.546610f, 0.545968f, + 0.545325f, 0.544682f, 0.544039f, 0.543395f, 0.542751f, 0.542106f, 0.541462f, 0.540817f, + 0.540171f, 0.539526f, 0.538880f, 0.538234f, 0.537587f, 0.536940f, 0.536293f, 0.535645f, + 0.534998f, 0.534349f, 0.533701f, 0.533052f, 0.532403f, 0.531754f, 0.531104f, 0.530454f, + 0.529804f, 0.529153f, 0.528502f, 0.527851f, 0.527199f, 0.526547f, 0.525895f, 0.525243f, + 0.524590f, 0.523937f, 0.523283f, 0.522629f, 0.521975f, 0.521321f, 0.520666f, 0.520011f, + 0.519356f, 0.518700f, 0.518045f, 0.517388f, 0.516732f, 0.516075f, 0.515418f, 0.514760f, + 0.514103f, 0.513445f, 0.512786f, 0.512128f, 0.511469f, 0.510810f, 0.510150f, 0.509490f, + 0.508830f, 0.508170f, 0.507509f, 0.506848f, 0.506187f, 0.505525f, 0.504863f, 0.504201f, + 0.503538f, 0.502876f, 0.502212f, 0.501549f, 0.500885f, 0.500221f, 0.499557f, 0.498893f, + 0.498228f, 0.497562f, 0.496897f, 0.496231f, 0.495565f, 0.494899f, 0.494232f, 0.493565f, + 0.492898f, 0.492231f, 0.491563f, 0.490895f, 0.490226f, 0.489558f, 0.488889f, 0.488220f, + 0.487550f, 0.486880f, 0.486210f, 0.485540f, 0.484869f, 0.484198f, 0.483527f, 0.482856f, + 0.482184f, 0.481512f, 0.480839f, 0.480167f, 0.479494f, 0.478821f, 0.478147f, 0.477473f, + 0.476799f, 0.476125f, 0.475450f, 0.474775f, 0.474100f, 0.473425f, 0.472749f, 0.472073f, + 0.471397f, 0.470720f, 0.470043f, 0.469366f, 0.468689f, 0.468011f, 0.467333f, 0.466655f, + 0.465977f, 0.465298f, 0.464619f, 0.463939f, 0.463260f, 0.462580f, 0.461900f, 0.461219f, + 0.460539f, 0.459858f, 0.459177f, 0.458495f, 0.457813f, 0.457131f, 0.456449f, 0.455766f, + 0.455084f, 0.454400f, 0.453717f, 0.453033f, 0.452350f, 0.451665f, 0.450981f, 0.450296f, + 0.449611f, 0.448926f, 0.448241f, 0.447555f, 0.446869f, 0.446183f, 0.445496f, 0.444809f, + 0.444122f, 0.443435f, 0.442747f, 0.442059f, 0.441371f, 0.440683f, 0.439994f, 0.439305f, + 0.438616f, 0.437927f, 0.437237f, 0.436547f, 0.435857f, 0.435167f, 0.434476f, 0.433785f, + 0.433094f, 0.432402f, 0.431711f, 0.431019f, 0.430326f, 0.429634f, 0.428941f, 0.428248f, + 0.427555f, 0.426862f, 0.426168f, 0.425474f, 0.424780f, 0.424085f, 0.423390f, 0.422695f, + 0.422000f, 0.421305f, 0.420609f, 0.419913f, 0.419217f, 0.418520f, 0.417824f, 0.417127f, + 0.416430f, 0.415732f, 0.415034f, 0.414337f, 0.413638f, 0.412940f, 0.412241f, 0.411542f, + 0.410843f, 0.410144f, 0.409444f, 0.408744f, 0.408044f, 0.407344f, 0.406643f, 0.405942f, + 0.405241f, 0.404540f, 0.403838f, 0.403137f, 0.402435f, 0.401732f, 0.401030f, 0.400327f, + 0.399624f, 0.398921f, 0.398218f, 0.397514f, 0.396810f, 0.396106f, 0.395401f, 0.394697f, + 0.393992f, 0.393287f, 0.392582f, 0.391876f, 0.391170f, 0.390464f, 0.389758f, 0.389052f, + 0.388345f, 0.387638f, 0.386931f, 0.386224f, 0.385516f, 0.384808f, 0.384100f, 0.383392f, + 0.382683f, 0.381975f, 0.381266f, 0.380557f, 0.379847f, 0.379138f, 0.378428f, 0.377718f, + 0.377007f, 0.376297f, 0.375586f, 0.374875f, 0.374164f, 0.373453f, 0.372741f, 0.372029f, + 0.371317f, 0.370605f, 0.369892f, 0.369180f, 0.368467f, 0.367754f, 0.367040f, 0.366327f, + 0.365613f, 0.364899f, 0.364185f, 0.363470f, 0.362756f, 0.362041f, 0.361326f, 0.360611f, + 0.359895f, 0.359179f, 0.358463f, 0.357747f, 0.357031f, 0.356314f, 0.355598f, 0.354881f, + 0.354164f, 0.353446f, 0.352729f, 0.352011f, 0.351293f, 0.350575f, 0.349856f, 0.349138f, + 0.348419f, 0.347700f, 0.346980f, 0.346261f, 0.345541f, 0.344821f, 0.344101f, 0.343381f, + 0.342661f, 0.341940f, 0.341219f, 0.340498f, 0.339777f, 0.339055f, 0.338334f, 0.337612f, + 0.336890f, 0.336168f, 0.335445f, 0.334722f, 0.334000f, 0.333277f, 0.332553f, 0.331830f, + 0.331106f, 0.330382f, 0.329658f, 0.328934f, 0.328210f, 0.327485f, 0.326760f, 0.326035f, + 0.325310f, 0.324585f, 0.323859f, 0.323134f, 0.322408f, 0.321682f, 0.320955f, 0.320229f, + 0.319502f, 0.318775f, 0.318048f, 0.317321f, 0.316593f, 0.315866f, 0.315138f, 0.314410f, + 0.313682f, 0.312953f, 0.312225f, 0.311496f, 0.310767f, 0.310038f, 0.309309f, 0.308579f, + 0.307850f, 0.307120f, 0.306390f, 0.305660f, 0.304929f, 0.304199f, 0.303468f, 0.302737f, + 0.302006f, 0.301275f, 0.300543f, 0.299812f, 0.299080f, 0.298348f, 0.297616f, 0.296883f, + 0.296151f, 0.295418f, 0.294685f, 0.293952f, 0.293219f, 0.292486f, 0.291752f, 0.291019f, + 0.290285f, 0.289551f, 0.288816f, 0.288082f, 0.287347f, 0.286613f, 0.285878f, 0.285143f, + 0.284408f, 0.283672f, 0.282937f, 0.282201f, 0.281465f, 0.280729f, 0.279993f, 0.279256f, + 0.278520f, 0.277783f, 0.277046f, 0.276309f, 0.275572f, 0.274834f, 0.274097f, 0.273359f, + 0.272621f, 0.271883f, 0.271145f, 0.270407f, 0.269668f, 0.268930f, 0.268191f, 0.267452f, + 0.266713f, 0.265973f, 0.265234f, 0.264494f, 0.263755f, 0.263015f, 0.262275f, 0.261534f, + 0.260794f, 0.260054f, 0.259313f, 0.258572f, 0.257831f, 0.257090f, 0.256349f, 0.255607f, + 0.254866f, 0.254124f, 0.253382f, 0.252640f, 0.251898f, 0.251155f, 0.250413f, 0.249670f, + 0.248928f, 0.248185f, 0.247442f, 0.246698f, 0.245955f, 0.245212f, 0.244468f, 0.243724f, + 0.242980f, 0.242236f, 0.241492f, 0.240748f, 0.240003f, 0.239258f, 0.238514f, 0.237769f, + 0.237024f, 0.236278f, 0.235533f, 0.234788f, 0.234042f, 0.233296f, 0.232550f, 0.231804f, + 0.231058f, 0.230312f, 0.229565f, 0.228819f, 0.228072f, 0.227325f, 0.226578f, 0.225831f, + 0.225084f, 0.224337f, 0.223589f, 0.222841f, 0.222094f, 0.221346f, 0.220598f, 0.219850f, + 0.219101f, 0.218353f, 0.217604f, 0.216856f, 0.216107f, 0.215358f, 0.214609f, 0.213860f, + 0.213110f, 0.212361f, 0.211611f, 0.210862f, 0.210112f, 0.209362f, 0.208612f, 0.207862f, + 0.207111f, 0.206361f, 0.205610f, 0.204860f, 0.204109f, 0.203358f, 0.202607f, 0.201856f, + 0.201105f, 0.200353f, 0.199602f, 0.198850f, 0.198098f, 0.197347f, 0.196595f, 0.195843f, + 0.195090f, 0.194338f, 0.193586f, 0.192833f, 0.192080f, 0.191328f, 0.190575f, 0.189822f, + 0.189069f, 0.188315f, 0.187562f, 0.186809f, 0.186055f, 0.185301f, 0.184548f, 0.183794f, + 0.183040f, 0.182286f, 0.181532f, 0.180777f, 0.180023f, 0.179268f, 0.178514f, 0.177759f, + 0.177004f, 0.176249f, 0.175494f, 0.174739f, 0.173984f, 0.173229f, 0.172473f, 0.171718f, + 0.170962f, 0.170206f, 0.169450f, 0.168694f, 0.167938f, 0.167182f, 0.166426f, 0.165670f, + 0.164913f, 0.164157f, 0.163400f, 0.162643f, 0.161886f, 0.161129f, 0.160372f, 0.159615f, + 0.158858f, 0.158101f, 0.157343f, 0.156586f, 0.155828f, 0.155071f, 0.154313f, 0.153555f, + 0.152797f, 0.152039f, 0.151281f, 0.150523f, 0.149765f, 0.149006f, 0.148248f, 0.147489f, + 0.146730f, 0.145972f, 0.145213f, 0.144454f, 0.143695f, 0.142936f, 0.142177f, 0.141418f, + 0.140658f, 0.139899f, 0.139139f, 0.138380f, 0.137620f, 0.136860f, 0.136101f, 0.135341f, + 0.134581f, 0.133821f, 0.133061f, 0.132300f, 0.131540f, 0.130780f, 0.130019f, 0.129259f, + 0.128498f, 0.127737f, 0.126977f, 0.126216f, 0.125455f, 0.124694f, 0.123933f, 0.123172f, + 0.122411f, 0.121649f, 0.120888f, 0.120127f, 0.119365f, 0.118604f, 0.117842f, 0.117080f, + 0.116319f, 0.115557f, 0.114795f, 0.114033f, 0.113271f, 0.112509f, 0.111747f, 0.110984f, + 0.110222f, 0.109460f, 0.108697f, 0.107935f, 0.107172f, 0.106410f, 0.105647f, 0.104884f, + 0.104122f, 0.103359f, 0.102596f, 0.101833f, 0.101070f, 0.100307f, 0.099544f, 0.098780f, + 0.098017f, 0.097254f, 0.096490f, 0.095727f, 0.094963f, 0.094200f, 0.093436f, 0.092673f, + 0.091909f, 0.091145f, 0.090381f, 0.089617f, 0.088854f, 0.088090f, 0.087326f, 0.086561f, + 0.085797f, 0.085033f, 0.084269f, 0.083505f, 0.082740f, 0.081976f, 0.081211f, 0.080447f, + 0.079682f, 0.078918f, 0.078153f, 0.077389f, 0.076624f, 0.075859f, 0.075094f, 0.074329f, + 0.073565f, 0.072800f, 0.072035f, 0.071270f, 0.070505f, 0.069739f, 0.068974f, 0.068209f, + 0.067444f, 0.066679f, 0.065913f, 0.065148f, 0.064383f, 0.063617f, 0.062852f, 0.062086f, + 0.061321f, 0.060555f, 0.059790f, 0.059024f, 0.058258f, 0.057493f, 0.056727f, 0.055961f, + 0.055195f, 0.054429f, 0.053664f, 0.052898f, 0.052132f, 0.051366f, 0.050600f, 0.049834f, + 0.049068f, 0.048302f, 0.047535f, 0.046769f, 0.046003f, 0.045237f, 0.044471f, 0.043705f, + 0.042938f, 0.042172f, 0.041406f, 0.040639f, 0.039873f, 0.039107f, 0.038340f, 0.037574f, + 0.036807f, 0.036041f, 0.035274f, 0.034508f, 0.033741f, 0.032975f, 0.032208f, 0.031441f, + 0.030675f, 0.029908f, 0.029142f, 0.028375f, 0.027608f, 0.026841f, 0.026075f, 0.025308f, + 0.024541f, 0.023774f, 0.023008f, 0.022241f, 0.021474f, 0.020707f, 0.019940f, 0.019174f, + 0.018407f, 0.017640f, 0.016873f, 0.016106f, 0.015339f, 0.014572f, 0.013805f, 0.013038f, + 0.012272f, 0.011505f, 0.010738f, 0.009971f, 0.009204f, 0.008437f, 0.007670f, 0.006903f, + 0.006136f, 0.005369f, 0.004602f, 0.003835f, 0.003068f, 0.002301f, 0.001534f, 0.000767f, + 0.000000f, 0.000767f, 0.001534f, 0.002301f, 0.003068f, 0.003835f, 0.004602f, 0.005369f, + 0.006136f, 0.006903f, 0.007670f, 0.008437f, 0.009204f, 0.009971f, 0.010738f, 0.011505f, + 0.012272f, 0.013038f, 0.013805f, 0.014572f, 0.015339f, 0.016106f, 0.016873f, 0.017640f, + 0.018407f, 0.019174f, 0.019940f, 0.020707f, 0.021474f, 0.022241f, 0.023008f, 0.023774f, + 0.024541f, 0.025308f, 0.026075f, 0.026841f, 0.027608f, 0.028375f, 0.029142f, 0.029908f, + 0.030675f, 0.031441f, 0.032208f, 0.032975f, 0.033741f, 0.034508f, 0.035274f, 0.036041f, + 0.036807f, 0.037574f, 0.038340f, 0.039107f, 0.039873f, 0.040639f, 0.041406f, 0.042172f, + 0.042938f, 0.043705f, 0.044471f, 0.045237f, 0.046003f, 0.046769f, 0.047535f, 0.048302f, + 0.049068f, 0.049834f, 0.050600f, 0.051366f, 0.052132f, 0.052898f, 0.053664f, 0.054429f, + 0.055195f, 0.055961f, 0.056727f, 0.057493f, 0.058258f, 0.059024f, 0.059790f, 0.060555f, + 0.061321f, 0.062086f, 0.062852f, 0.063617f, 0.064383f, 0.065148f, 0.065913f, 0.066679f, + 0.067444f, 0.068209f, 0.068974f, 0.069739f, 0.070505f, 0.071270f, 0.072035f, 0.072800f, + 0.073565f, 0.074329f, 0.075094f, 0.075859f, 0.076624f, 0.077389f, 0.078153f, 0.078918f, + 0.079682f, 0.080447f, 0.081211f, 0.081976f, 0.082740f, 0.083505f, 0.084269f, 0.085033f, + 0.085797f, 0.086561f, 0.087326f, 0.088090f, 0.088854f, 0.089617f, 0.090381f, 0.091145f, + 0.091909f, 0.092673f, 0.093436f, 0.094200f, 0.094963f, 0.095727f, 0.096490f, 0.097254f, + 0.098017f, 0.098780f, 0.099544f, 0.100307f, 0.101070f, 0.101833f, 0.102596f, 0.103359f, + 0.104122f, 0.104884f, 0.105647f, 0.106410f, 0.107172f, 0.107935f, 0.108697f, 0.109460f, + 0.110222f, 0.110984f, 0.111747f, 0.112509f, 0.113271f, 0.114033f, 0.114795f, 0.115557f, + 0.116319f, 0.117080f, 0.117842f, 0.118604f, 0.119365f, 0.120127f, 0.120888f, 0.121649f, + 0.122411f, 0.123172f, 0.123933f, 0.124694f, 0.125455f, 0.126216f, 0.126977f, 0.127737f, + 0.128498f, 0.129259f, 0.130019f, 0.130780f, 0.131540f, 0.132300f, 0.133061f, 0.133821f, + 0.134581f, 0.135341f, 0.136101f, 0.136860f, 0.137620f, 0.138380f, 0.139139f, 0.139899f, + 0.140658f, 0.141418f, 0.142177f, 0.142936f, 0.143695f, 0.144454f, 0.145213f, 0.145972f, + 0.146730f, 0.147489f, 0.148248f, 0.149006f, 0.149765f, 0.150523f, 0.151281f, 0.152039f, + 0.152797f, 0.153555f, 0.154313f, 0.155071f, 0.155828f, 0.156586f, 0.157343f, 0.158101f, + 0.158858f, 0.159615f, 0.160372f, 0.161129f, 0.161886f, 0.162643f, 0.163400f, 0.164157f, + 0.164913f, 0.165670f, 0.166426f, 0.167182f, 0.167938f, 0.168694f, 0.169450f, 0.170206f, + 0.170962f, 0.171718f, 0.172473f, 0.173229f, 0.173984f, 0.174739f, 0.175494f, 0.176249f, + 0.177004f, 0.177759f, 0.178514f, 0.179268f, 0.180023f, 0.180777f, 0.181532f, 0.182286f, + 0.183040f, 0.183794f, 0.184548f, 0.185301f, 0.186055f, 0.186809f, 0.187562f, 0.188315f, + 0.189069f, 0.189822f, 0.190575f, 0.191328f, 0.192080f, 0.192833f, 0.193586f, 0.194338f, + 0.195090f, 0.195843f, 0.196595f, 0.197347f, 0.198098f, 0.198850f, 0.199602f, 0.200353f, + 0.201105f, 0.201856f, 0.202607f, 0.203358f, 0.204109f, 0.204860f, 0.205610f, 0.206361f, + 0.207111f, 0.207862f, 0.208612f, 0.209362f, 0.210112f, 0.210862f, 0.211611f, 0.212361f, + 0.213110f, 0.213860f, 0.214609f, 0.215358f, 0.216107f, 0.216856f, 0.217604f, 0.218353f, + 0.219101f, 0.219850f, 0.220598f, 0.221346f, 0.222094f, 0.222841f, 0.223589f, 0.224337f, + 0.225084f, 0.225831f, 0.226578f, 0.227325f, 0.228072f, 0.228819f, 0.229565f, 0.230312f, + 0.231058f, 0.231804f, 0.232550f, 0.233296f, 0.234042f, 0.234788f, 0.235533f, 0.236278f, + 0.237024f, 0.237769f, 0.238514f, 0.239258f, 0.240003f, 0.240748f, 0.241492f, 0.242236f, + 0.242980f, 0.243724f, 0.244468f, 0.245212f, 0.245955f, 0.246698f, 0.247442f, 0.248185f, + 0.248928f, 0.249670f, 0.250413f, 0.251155f, 0.251898f, 0.252640f, 0.253382f, 0.254124f, + 0.254866f, 0.255607f, 0.256349f, 0.257090f, 0.257831f, 0.258572f, 0.259313f, 0.260054f, + 0.260794f, 0.261534f, 0.262275f, 0.263015f, 0.263755f, 0.264494f, 0.265234f, 0.265973f, + 0.266713f, 0.267452f, 0.268191f, 0.268930f, 0.269668f, 0.270407f, 0.271145f, 0.271883f, + 0.272621f, 0.273359f, 0.274097f, 0.274834f, 0.275572f, 0.276309f, 0.277046f, 0.277783f, + 0.278520f, 0.279256f, 0.279993f, 0.280729f, 0.281465f, 0.282201f, 0.282937f, 0.283672f, + 0.284408f, 0.285143f, 0.285878f, 0.286613f, 0.287347f, 0.288082f, 0.288816f, 0.289551f, + 0.290285f, 0.291019f, 0.291752f, 0.292486f, 0.293219f, 0.293952f, 0.294685f, 0.295418f, + 0.296151f, 0.296883f, 0.297616f, 0.298348f, 0.299080f, 0.299812f, 0.300543f, 0.301275f, + 0.302006f, 0.302737f, 0.303468f, 0.304199f, 0.304929f, 0.305660f, 0.306390f, 0.307120f, + 0.307850f, 0.308579f, 0.309309f, 0.310038f, 0.310767f, 0.311496f, 0.312225f, 0.312953f, + 0.313682f, 0.314410f, 0.315138f, 0.315866f, 0.316593f, 0.317321f, 0.318048f, 0.318775f, + 0.319502f, 0.320229f, 0.320955f, 0.321682f, 0.322408f, 0.323134f, 0.323859f, 0.324585f, + 0.325310f, 0.326035f, 0.326760f, 0.327485f, 0.328210f, 0.328934f, 0.329658f, 0.330382f, + 0.331106f, 0.331830f, 0.332553f, 0.333277f, 0.334000f, 0.334722f, 0.335445f, 0.336168f, + 0.336890f, 0.337612f, 0.338334f, 0.339055f, 0.339777f, 0.340498f, 0.341219f, 0.341940f, + 0.342661f, 0.343381f, 0.344101f, 0.344821f, 0.345541f, 0.346261f, 0.346980f, 0.347700f, + 0.348419f, 0.349138f, 0.349856f, 0.350575f, 0.351293f, 0.352011f, 0.352729f, 0.353446f, + 0.354164f, 0.354881f, 0.355598f, 0.356314f, 0.357031f, 0.357747f, 0.358463f, 0.359179f, + 0.359895f, 0.360611f, 0.361326f, 0.362041f, 0.362756f, 0.363470f, 0.364185f, 0.364899f, + 0.365613f, 0.366327f, 0.367040f, 0.367754f, 0.368467f, 0.369180f, 0.369892f, 0.370605f, + 0.371317f, 0.372029f, 0.372741f, 0.373453f, 0.374164f, 0.374875f, 0.375586f, 0.376297f, + 0.377007f, 0.377718f, 0.378428f, 0.379138f, 0.379847f, 0.380557f, 0.381266f, 0.381975f, + 0.382683f, 0.383392f, 0.384100f, 0.384808f, 0.385516f, 0.386224f, 0.386931f, 0.387638f, + 0.388345f, 0.389052f, 0.389758f, 0.390464f, 0.391170f, 0.391876f, 0.392582f, 0.393287f, + 0.393992f, 0.394697f, 0.395401f, 0.396106f, 0.396810f, 0.397514f, 0.398218f, 0.398921f, + 0.399624f, 0.400327f, 0.401030f, 0.401732f, 0.402435f, 0.403137f, 0.403838f, 0.404540f, + 0.405241f, 0.405942f, 0.406643f, 0.407344f, 0.408044f, 0.408744f, 0.409444f, 0.410144f, + 0.410843f, 0.411542f, 0.412241f, 0.412940f, 0.413638f, 0.414337f, 0.415034f, 0.415732f, + 0.416430f, 0.417127f, 0.417824f, 0.418520f, 0.419217f, 0.419913f, 0.420609f, 0.421305f, + 0.422000f, 0.422695f, 0.423390f, 0.424085f, 0.424780f, 0.425474f, 0.426168f, 0.426862f, + 0.427555f, 0.428248f, 0.428941f, 0.429634f, 0.430326f, 0.431019f, 0.431711f, 0.432402f, + 0.433094f, 0.433785f, 0.434476f, 0.435167f, 0.435857f, 0.436547f, 0.437237f, 0.437927f, + 0.438616f, 0.439305f, 0.439994f, 0.440683f, 0.441371f, 0.442059f, 0.442747f, 0.443435f, + 0.444122f, 0.444809f, 0.445496f, 0.446183f, 0.446869f, 0.447555f, 0.448241f, 0.448926f, + 0.449611f, 0.450296f, 0.450981f, 0.451665f, 0.452350f, 0.453033f, 0.453717f, 0.454400f, + 0.455084f, 0.455766f, 0.456449f, 0.457131f, 0.457813f, 0.458495f, 0.459177f, 0.459858f, + 0.460539f, 0.461219f, 0.461900f, 0.462580f, 0.463260f, 0.463939f, 0.464619f, 0.465298f, + 0.465977f, 0.466655f, 0.467333f, 0.468011f, 0.468689f, 0.469366f, 0.470043f, 0.470720f, + 0.471397f, 0.472073f, 0.472749f, 0.473425f, 0.474100f, 0.474775f, 0.475450f, 0.476125f, + 0.476799f, 0.477473f, 0.478147f, 0.478821f, 0.479494f, 0.480167f, 0.480839f, 0.481512f, + 0.482184f, 0.482856f, 0.483527f, 0.484198f, 0.484869f, 0.485540f, 0.486210f, 0.486880f, + 0.487550f, 0.488220f, 0.488889f, 0.489558f, 0.490226f, 0.490895f, 0.491563f, 0.492231f, + 0.492898f, 0.493565f, 0.494232f, 0.494899f, 0.495565f, 0.496231f, 0.496897f, 0.497562f, + 0.498228f, 0.498893f, 0.499557f, 0.500221f, 0.500885f, 0.501549f, 0.502212f, 0.502876f, + 0.503538f, 0.504201f, 0.504863f, 0.505525f, 0.506187f, 0.506848f, 0.507509f, 0.508170f, + 0.508830f, 0.509490f, 0.510150f, 0.510810f, 0.511469f, 0.512128f, 0.512786f, 0.513445f, + 0.514103f, 0.514760f, 0.515418f, 0.516075f, 0.516732f, 0.517388f, 0.518045f, 0.518700f, + 0.519356f, 0.520011f, 0.520666f, 0.521321f, 0.521975f, 0.522629f, 0.523283f, 0.523937f, + 0.524590f, 0.525243f, 0.525895f, 0.526547f, 0.527199f, 0.527851f, 0.528502f, 0.529153f, + 0.529804f, 0.530454f, 0.531104f, 0.531754f, 0.532403f, 0.533052f, 0.533701f, 0.534349f, + 0.534998f, 0.535645f, 0.536293f, 0.536940f, 0.537587f, 0.538234f, 0.538880f, 0.539526f, + 0.540171f, 0.540817f, 0.541462f, 0.542106f, 0.542751f, 0.543395f, 0.544039f, 0.544682f, + 0.545325f, 0.545968f, 0.546610f, 0.547252f, 0.547894f, 0.548536f, 0.549177f, 0.549818f, + 0.550458f, 0.551098f, 0.551738f, 0.552378f, 0.553017f, 0.553656f, 0.554294f, 0.554932f, + 0.555570f, 0.556208f, 0.556845f, 0.557482f, 0.558119f, 0.558755f, 0.559391f, 0.560026f, + 0.560662f, 0.561297f, 0.561931f, 0.562565f, 0.563199f, 0.563833f, 0.564466f, 0.565099f, + 0.565732f, 0.566364f, 0.566996f, 0.567628f, 0.568259f, 0.568890f, 0.569521f, 0.570151f, + 0.570781f, 0.571410f, 0.572040f, 0.572669f, 0.573297f, 0.573925f, 0.574553f, 0.575181f, + 0.575808f, 0.576435f, 0.577062f, 0.577688f, 0.578314f, 0.578939f, 0.579565f, 0.580189f, + 0.580814f, 0.581438f, 0.582062f, 0.582685f, 0.583309f, 0.583931f, 0.584554f, 0.585176f, + 0.585798f, 0.586419f, 0.587040f, 0.587661f, 0.588282f, 0.588902f, 0.589521f, 0.590141f, + 0.590760f, 0.591378f, 0.591997f, 0.592615f, 0.593232f, 0.593850f, 0.594467f, 0.595083f, + 0.595699f, 0.596315f, 0.596931f, 0.597546f, 0.598161f, 0.598775f, 0.599389f, 0.600003f, + 0.600616f, 0.601230f, 0.601842f, 0.602455f, 0.603067f, 0.603678f, 0.604290f, 0.604900f, + 0.605511f, 0.606121f, 0.606731f, 0.607341f, 0.607950f, 0.608559f, 0.609167f, 0.609775f, + 0.610383f, 0.610990f, 0.611597f, 0.612204f, 0.612810f, 0.613416f, 0.614022f, 0.614627f, + 0.615232f, 0.615836f, 0.616440f, 0.617044f, 0.617647f, 0.618250f, 0.618853f, 0.619455f, + 0.620057f, 0.620659f, 0.621260f, 0.621861f, 0.622461f, 0.623061f, 0.623661f, 0.624260f, + 0.624860f, 0.625458f, 0.626056f, 0.626654f, 0.627252f, 0.627849f, 0.628446f, 0.629042f, + 0.629638f, 0.630234f, 0.630829f, 0.631424f, 0.632019f, 0.632613f, 0.633207f, 0.633800f, + 0.634393f, 0.634986f, 0.635578f, 0.636170f, 0.636762f, 0.637353f, 0.637944f, 0.638534f, + 0.639124f, 0.639714f, 0.640303f, 0.640892f, 0.641481f, 0.642069f, 0.642657f, 0.643245f, + 0.643832f, 0.644418f, 0.645005f, 0.645590f, 0.646176f, 0.646761f, 0.647346f, 0.647930f, + 0.648514f, 0.649098f, 0.649681f, 0.650264f, 0.650847f, 0.651429f, 0.652011f, 0.652592f, + 0.653173f, 0.653753f, 0.654334f, 0.654913f, 0.655493f, 0.656072f, 0.656651f, 0.657229f, + 0.657807f, 0.658384f, 0.658961f, 0.659538f, 0.660114f, 0.660690f, 0.661266f, 0.661841f, + 0.662416f, 0.662990f, 0.663564f, 0.664138f, 0.664711f, 0.665284f, 0.665856f, 0.666428f, + 0.667000f, 0.667571f, 0.668142f, 0.668712f, 0.669283f, 0.669852f, 0.670422f, 0.670990f, + 0.671559f, 0.672127f, 0.672695f, 0.673262f, 0.673829f, 0.674396f, 0.674962f, 0.675527f, + 0.676093f, 0.676658f, 0.677222f, 0.677786f, 0.678350f, 0.678913f, 0.679476f, 0.680039f, + 0.680601f, 0.681163f, 0.681724f, 0.682285f, 0.682846f, 0.683406f, 0.683965f, 0.684525f, + 0.685084f, 0.685642f, 0.686200f, 0.686758f, 0.687315f, 0.687872f, 0.688429f, 0.688985f, + 0.689541f, 0.690096f, 0.690651f, 0.691205f, 0.691759f, 0.692313f, 0.692866f, 0.693419f, + 0.693971f, 0.694524f, 0.695075f, 0.695626f, 0.696177f, 0.696728f, 0.697277f, 0.697827f, + 0.698376f, 0.698925f, 0.699473f, 0.700021f, 0.700569f, 0.701116f, 0.701663f, 0.702209f, + 0.702755f, 0.703300f, 0.703845f, 0.704390f, 0.704934f, 0.705478f, 0.706021f, 0.706564f, + 0.707107f, 0.707649f, 0.708191f, 0.708732f, 0.709273f, 0.709813f, 0.710353f, 0.710893f, + 0.711432f, 0.711971f, 0.712509f, 0.713047f, 0.713585f, 0.714122f, 0.714659f, 0.715195f, + 0.715731f, 0.716266f, 0.716801f, 0.717336f, 0.717870f, 0.718404f, 0.718937f, 0.719470f, + 0.720003f, 0.720535f, 0.721066f, 0.721597f, 0.722128f, 0.722659f, 0.723188f, 0.723718f, + 0.724247f, 0.724776f, 0.725304f, 0.725832f, 0.726359f, 0.726886f, 0.727413f, 0.727939f, + 0.728464f, 0.728990f, 0.729514f, 0.730039f, 0.730563f, 0.731086f, 0.731609f, 0.732132f, + 0.732654f, 0.733176f, 0.733697f, 0.734218f, 0.734739f, 0.735259f, 0.735779f, 0.736298f, + 0.736817f, 0.737335f, 0.737853f, 0.738370f, 0.738887f, 0.739404f, 0.739920f, 0.740436f, + 0.740951f, 0.741466f, 0.741980f, 0.742494f, 0.743008f, 0.743521f, 0.744034f, 0.744546f, + 0.745058f, 0.745569f, 0.746080f, 0.746591f, 0.747101f, 0.747610f, 0.748119f, 0.748628f, + 0.749136f, 0.749644f, 0.750152f, 0.750659f, 0.751165f, 0.751671f, 0.752177f, 0.752682f, + 0.753187f, 0.753691f, 0.754195f, 0.754698f, 0.755201f, 0.755704f, 0.756206f, 0.756708f, + 0.757209f, 0.757710f, 0.758210f, 0.758710f, 0.759209f, 0.759708f, 0.760207f, 0.760705f, + 0.761202f, 0.761700f, 0.762196f, 0.762693f, 0.763188f, 0.763684f, 0.764179f, 0.764673f, + 0.765167f, 0.765661f, 0.766154f, 0.766647f, 0.767139f, 0.767631f, 0.768122f, 0.768613f, + 0.769103f, 0.769593f, 0.770083f, 0.770572f, 0.771061f, 0.771549f, 0.772036f, 0.772524f, + 0.773010f, 0.773497f, 0.773983f, 0.774468f, 0.774953f, 0.775438f, 0.775922f, 0.776405f, + 0.776888f, 0.777371f, 0.777853f, 0.778335f, 0.778817f, 0.779297f, 0.779778f, 0.780258f, + 0.780737f, 0.781216f, 0.781695f, 0.782173f, 0.782651f, 0.783128f, 0.783605f, 0.784081f, + 0.784557f, 0.785032f, 0.785507f, 0.785981f, 0.786455f, 0.786929f, 0.787402f, 0.787874f, + 0.788346f, 0.788818f, 0.789289f, 0.789760f, 0.790230f, 0.790700f, 0.791169f, 0.791638f, + 0.792107f, 0.792575f, 0.793042f, 0.793509f, 0.793975f, 0.794442f, 0.794907f, 0.795372f, + 0.795837f, 0.796301f, 0.796765f, 0.797228f, 0.797691f, 0.798153f, 0.798615f, 0.799076f, + 0.799537f, 0.799998f, 0.800458f, 0.800917f, 0.801376f, 0.801835f, 0.802293f, 0.802750f, + 0.803208f, 0.803664f, 0.804120f, 0.804576f, 0.805031f, 0.805486f, 0.805940f, 0.806394f, + 0.806848f, 0.807300f, 0.807753f, 0.808205f, 0.808656f, 0.809107f, 0.809558f, 0.810008f, + 0.810457f, 0.810906f, 0.811355f, 0.811803f, 0.812251f, 0.812698f, 0.813144f, 0.813591f, + 0.814036f, 0.814482f, 0.814926f, 0.815371f, 0.815814f, 0.816258f, 0.816701f, 0.817143f, + 0.817585f, 0.818026f, 0.818467f, 0.818908f, 0.819348f, 0.819787f, 0.820226f, 0.820664f, + 0.821102f, 0.821540f, 0.821977f, 0.822414f, 0.822850f, 0.823285f, 0.823721f, 0.824155f, + 0.824589f, 0.825023f, 0.825456f, 0.825889f, 0.826321f, 0.826753f, 0.827184f, 0.827615f, + 0.828045f, 0.828475f, 0.828904f, 0.829333f, 0.829761f, 0.830189f, 0.830616f, 0.831043f, + 0.831470f, 0.831895f, 0.832321f, 0.832746f, 0.833170f, 0.833594f, 0.834018f, 0.834440f, + 0.834863f, 0.835285f, 0.835706f, 0.836127f, 0.836548f, 0.836968f, 0.837387f, 0.837806f, + 0.838225f, 0.838643f, 0.839060f, 0.839477f, 0.839894f, 0.840310f, 0.840725f, 0.841140f, + 0.841555f, 0.841969f, 0.842383f, 0.842796f, 0.843208f, 0.843620f, 0.844032f, 0.844443f, + 0.844854f, 0.845264f, 0.845673f, 0.846082f, 0.846491f, 0.846899f, 0.847307f, 0.847714f, + 0.848120f, 0.848526f, 0.848932f, 0.849337f, 0.849742f, 0.850146f, 0.850549f, 0.850953f, + 0.851355f, 0.851757f, 0.852159f, 0.852560f, 0.852961f, 0.853361f, 0.853760f, 0.854159f, + 0.854558f, 0.854956f, 0.855354f, 0.855751f, 0.856147f, 0.856543f, 0.856939f, 0.857334f, + 0.857729f, 0.858123f, 0.858516f, 0.858909f, 0.859302f, 0.859694f, 0.860085f, 0.860476f, + 0.860867f, 0.861257f, 0.861646f, 0.862035f, 0.862424f, 0.862812f, 0.863199f, 0.863586f, + 0.863973f, 0.864359f, 0.864744f, 0.865129f, 0.865514f, 0.865898f, 0.866281f, 0.866664f, + 0.867046f, 0.867428f, 0.867809f, 0.868190f, 0.868571f, 0.868951f, 0.869330f, 0.869709f, + 0.870087f, 0.870465f, 0.870842f, 0.871219f, 0.871595f, 0.871971f, 0.872346f, 0.872721f, + 0.873095f, 0.873469f, 0.873842f, 0.874215f, 0.874587f, 0.874958f, 0.875329f, 0.875700f, + 0.876070f, 0.876440f, 0.876809f, 0.877177f, 0.877545f, 0.877913f, 0.878280f, 0.878646f, + 0.879012f, 0.879378f, 0.879743f, 0.880107f, 0.880471f, 0.880834f, 0.881197f, 0.881559f, + 0.881921f, 0.882283f, 0.882643f, 0.883004f, 0.883363f, 0.883723f, 0.884081f, 0.884439f, + 0.884797f, 0.885154f, 0.885511f, 0.885867f, 0.886223f, 0.886578f, 0.886932f, 0.887286f, + 0.887640f, 0.887993f, 0.888345f, 0.888697f, 0.889048f, 0.889399f, 0.889750f, 0.890099f, + 0.890449f, 0.890797f, 0.891146f, 0.891493f, 0.891841f, 0.892187f, 0.892534f, 0.892879f, + 0.893224f, 0.893569f, 0.893913f, 0.894256f, 0.894599f, 0.894942f, 0.895284f, 0.895625f, + 0.895966f, 0.896307f, 0.896646f, 0.896986f, 0.897325f, 0.897663f, 0.898001f, 0.898338f, + 0.898674f, 0.899011f, 0.899346f, 0.899681f, 0.900016f, 0.900350f, 0.900683f, 0.901016f, + 0.901349f, 0.901681f, 0.902012f, 0.902343f, 0.902673f, 0.903003f, 0.903332f, 0.903661f, + 0.903989f, 0.904317f, 0.904644f, 0.904971f, 0.905297f, 0.905622f, 0.905947f, 0.906272f, + 0.906596f, 0.906919f, 0.907242f, 0.907564f, 0.907886f, 0.908207f, 0.908528f, 0.908848f, + 0.909168f, 0.909487f, 0.909806f, 0.910124f, 0.910441f, 0.910758f, 0.911075f, 0.911391f, + 0.911706f, 0.912021f, 0.912335f, 0.912649f, 0.912962f, 0.913275f, 0.913587f, 0.913899f, + 0.914210f, 0.914520f, 0.914830f, 0.915140f, 0.915449f, 0.915757f, 0.916065f, 0.916372f, + 0.916679f, 0.916985f, 0.917291f, 0.917596f, 0.917901f, 0.918205f, 0.918508f, 0.918811f, + 0.919114f, 0.919416f, 0.919717f, 0.920018f, 0.920318f, 0.920618f, 0.920917f, 0.921216f, + 0.921514f, 0.921812f, 0.922109f, 0.922405f, 0.922701f, 0.922997f, 0.923291f, 0.923586f, + 0.923880f, 0.924173f, 0.924465f, 0.924758f, 0.925049f, 0.925340f, 0.925631f, 0.925921f, + 0.926210f, 0.926499f, 0.926787f, 0.927075f, 0.927363f, 0.927649f, 0.927935f, 0.928221f, + 0.928506f, 0.928791f, 0.929075f, 0.929358f, 0.929641f, 0.929923f, 0.930205f, 0.930486f, + 0.930767f, 0.931047f, 0.931327f, 0.931606f, 0.931884f, 0.932162f, 0.932440f, 0.932716f, + 0.932993f, 0.933269f, 0.933544f, 0.933818f, 0.934093f, 0.934366f, 0.934639f, 0.934912f, + 0.935184f, 0.935455f, 0.935726f, 0.935996f, 0.936266f, 0.936535f, 0.936803f, 0.937072f, + 0.937339f, 0.937606f, 0.937872f, 0.938138f, 0.938404f, 0.938668f, 0.938932f, 0.939196f, + 0.939459f, 0.939722f, 0.939984f, 0.940245f, 0.940506f, 0.940766f, 0.941026f, 0.941285f, + 0.941544f, 0.941802f, 0.942060f, 0.942317f, 0.942573f, 0.942829f, 0.943084f, 0.943339f, + 0.943593f, 0.943847f, 0.944100f, 0.944353f, 0.944605f, 0.944856f, 0.945107f, 0.945358f, + 0.945607f, 0.945857f, 0.946105f, 0.946353f, 0.946601f, 0.946848f, 0.947094f, 0.947340f, + 0.947586f, 0.947830f, 0.948075f, 0.948318f, 0.948561f, 0.948804f, 0.949046f, 0.949287f, + 0.949528f, 0.949768f, 0.950008f, 0.950247f, 0.950486f, 0.950724f, 0.950962f, 0.951199f, + 0.951435f, 0.951671f, 0.951906f, 0.952141f, 0.952375f, 0.952609f, 0.952842f, 0.953074f, + 0.953306f, 0.953537f, 0.953768f, 0.953998f, 0.954228f, 0.954457f, 0.954686f, 0.954914f, + 0.955141f, 0.955368f, 0.955594f, 0.955820f, 0.956045f, 0.956270f, 0.956494f, 0.956717f, + 0.956940f, 0.957163f, 0.957385f, 0.957606f, 0.957826f, 0.958046f, 0.958266f, 0.958485f, + 0.958703f, 0.958921f, 0.959139f, 0.959355f, 0.959572f, 0.959787f, 0.960002f, 0.960217f, + 0.960431f, 0.960644f, 0.960857f, 0.961069f, 0.961280f, 0.961492f, 0.961702f, 0.961912f, + 0.962121f, 0.962330f, 0.962538f, 0.962746f, 0.962953f, 0.963160f, 0.963366f, 0.963571f, + 0.963776f, 0.963980f, 0.964184f, 0.964387f, 0.964590f, 0.964792f, 0.964993f, 0.965194f, + 0.965394f, 0.965594f, 0.965793f, 0.965992f, 0.966190f, 0.966387f, 0.966584f, 0.966781f, + 0.966976f, 0.967172f, 0.967366f, 0.967560f, 0.967754f, 0.967947f, 0.968139f, 0.968331f, + 0.968522f, 0.968713f, 0.968903f, 0.969092f, 0.969281f, 0.969470f, 0.969657f, 0.969845f, + 0.970031f, 0.970217f, 0.970403f, 0.970588f, 0.970772f, 0.970956f, 0.971139f, 0.971322f, + 0.971504f, 0.971685f, 0.971866f, 0.972047f, 0.972227f, 0.972406f, 0.972584f, 0.972762f, + 0.972940f, 0.973117f, 0.973293f, 0.973469f, 0.973644f, 0.973819f, 0.973993f, 0.974166f, + 0.974339f, 0.974512f, 0.974684f, 0.974855f, 0.975025f, 0.975195f, 0.975365f, 0.975534f, + 0.975702f, 0.975870f, 0.976037f, 0.976204f, 0.976370f, 0.976535f, 0.976700f, 0.976864f, + 0.977028f, 0.977191f, 0.977354f, 0.977516f, 0.977677f, 0.977838f, 0.977998f, 0.978158f, + 0.978317f, 0.978476f, 0.978634f, 0.978791f, 0.978948f, 0.979104f, 0.979260f, 0.979415f, + 0.979570f, 0.979724f, 0.979877f, 0.980030f, 0.980182f, 0.980334f, 0.980485f, 0.980635f, + 0.980785f, 0.980935f, 0.981083f, 0.981232f, 0.981379f, 0.981526f, 0.981673f, 0.981819f, + 0.981964f, 0.982109f, 0.982253f, 0.982396f, 0.982539f, 0.982682f, 0.982824f, 0.982965f, + 0.983105f, 0.983246f, 0.983385f, 0.983524f, 0.983662f, 0.983800f, 0.983937f, 0.984074f, + 0.984210f, 0.984346f, 0.984480f, 0.984615f, 0.984748f, 0.984882f, 0.985014f, 0.985146f, + 0.985278f, 0.985408f, 0.985539f, 0.985668f, 0.985798f, 0.985926f, 0.986054f, 0.986181f, + 0.986308f, 0.986434f, 0.986560f, 0.986685f, 0.986809f, 0.986933f, 0.987057f, 0.987179f, + 0.987301f, 0.987423f, 0.987544f, 0.987664f, 0.987784f, 0.987903f, 0.988022f, 0.988140f, + 0.988258f, 0.988374f, 0.988491f, 0.988607f, 0.988722f, 0.988836f, 0.988950f, 0.989064f, + 0.989177f, 0.989289f, 0.989400f, 0.989511f, 0.989622f, 0.989732f, 0.989841f, 0.989950f, + 0.990058f, 0.990166f, 0.990273f, 0.990379f, 0.990485f, 0.990590f, 0.990695f, 0.990799f, + 0.990903f, 0.991006f, 0.991108f, 0.991210f, 0.991311f, 0.991411f, 0.991511f, 0.991611f, + 0.991710f, 0.991808f, 0.991906f, 0.992003f, 0.992099f, 0.992195f, 0.992291f, 0.992385f, + 0.992480f, 0.992573f, 0.992666f, 0.992759f, 0.992850f, 0.992942f, 0.993032f, 0.993122f, + 0.993212f, 0.993301f, 0.993389f, 0.993477f, 0.993564f, 0.993651f, 0.993737f, 0.993822f, + 0.993907f, 0.993991f, 0.994075f, 0.994158f, 0.994240f, 0.994322f, 0.994404f, 0.994484f, + 0.994565f, 0.994644f, 0.994723f, 0.994802f, 0.994879f, 0.994957f, 0.995033f, 0.995109f, + 0.995185f, 0.995260f, 0.995334f, 0.995408f, 0.995481f, 0.995553f, 0.995625f, 0.995697f, + 0.995767f, 0.995838f, 0.995907f, 0.995976f, 0.996045f, 0.996113f, 0.996180f, 0.996247f, + 0.996313f, 0.996378f, 0.996443f, 0.996507f, 0.996571f, 0.996634f, 0.996697f, 0.996759f, + 0.996820f, 0.996881f, 0.996941f, 0.997001f, 0.997060f, 0.997119f, 0.997176f, 0.997234f, + 0.997290f, 0.997347f, 0.997402f, 0.997457f, 0.997511f, 0.997565f, 0.997618f, 0.997671f, + 0.997723f, 0.997774f, 0.997825f, 0.997876f, 0.997925f, 0.997974f, 0.998023f, 0.998071f, + 0.998118f, 0.998165f, 0.998211f, 0.998257f, 0.998302f, 0.998346f, 0.998390f, 0.998433f, + 0.998476f, 0.998518f, 0.998559f, 0.998600f, 0.998640f, 0.998680f, 0.998719f, 0.998758f, + 0.998795f, 0.998833f, 0.998870f, 0.998906f, 0.998941f, 0.998976f, 0.999011f, 0.999044f, + 0.999078f, 0.999110f, 0.999142f, 0.999174f, 0.999205f, 0.999235f, 0.999265f, 0.999294f, + 0.999322f, 0.999350f, 0.999378f, 0.999404f, 0.999431f, 0.999456f, 0.999481f, 0.999506f, + 0.999529f, 0.999553f, 0.999575f, 0.999597f, 0.999619f, 0.999640f, 0.999660f, 0.999680f, + 0.999699f, 0.999717f, 0.999735f, 0.999753f, 0.999769f, 0.999786f, 0.999801f, 0.999816f, + 0.999831f, 0.999844f, 0.999858f, 0.999870f, 0.999882f, 0.999894f, 0.999905f, 0.999915f, + 0.999925f, 0.999934f, 0.999942f, 0.999950f, 0.999958f, 0.999964f, 0.999971f, 0.999976f, + 0.999981f, 0.999986f, 0.999989f, 0.999993f, 0.999995f, 0.999997f, 0.999999f, 1.000000 +}; + +static const float cosTable16384[8192] = { + 1.000000f, 1.000000f, 1.000000f, 0.999999f, 0.999999f, 0.999998f, 0.999997f, 0.999996f, + 0.999995f, 0.999994f, 0.999993f, 0.999991f, 0.999989f, 0.999988f, 0.999986f, 0.999983f, + 0.999981f, 0.999979f, 0.999976f, 0.999973f, 0.999971f, 0.999968f, 0.999964f, 0.999961f, + 0.999958f, 0.999954f, 0.999950f, 0.999946f, 0.999942f, 0.999938f, 0.999934f, 0.999929f, + 0.999925f, 0.999920f, 0.999915f, 0.999910f, 0.999905f, 0.999899f, 0.999894f, 0.999888f, + 0.999882f, 0.999876f, 0.999870f, 0.999864f, 0.999858f, 0.999851f, 0.999844f, 0.999838f, + 0.999831f, 0.999823f, 0.999816f, 0.999809f, 0.999801f, 0.999793f, 0.999786f, 0.999778f, + 0.999769f, 0.999761f, 0.999753f, 0.999744f, 0.999735f, 0.999726f, 0.999717f, 0.999708f, + 0.999699f, 0.999689f, 0.999680f, 0.999670f, 0.999660f, 0.999650f, 0.999640f, 0.999629f, + 0.999619f, 0.999608f, 0.999597f, 0.999586f, 0.999575f, 0.999564f, 0.999553f, 0.999541f, + 0.999529f, 0.999518f, 0.999506f, 0.999493f, 0.999481f, 0.999469f, 0.999456f, 0.999443f, + 0.999431f, 0.999418f, 0.999404f, 0.999391f, 0.999378f, 0.999364f, 0.999350f, 0.999336f, + 0.999322f, 0.999308f, 0.999294f, 0.999279f, 0.999265f, 0.999250f, 0.999235f, 0.999220f, + 0.999205f, 0.999189f, 0.999174f, 0.999158f, 0.999142f, 0.999126f, 0.999110f, 0.999094f, + 0.999078f, 0.999061f, 0.999044f, 0.999028f, 0.999011f, 0.998994f, 0.998976f, 0.998959f, + 0.998941f, 0.998924f, 0.998906f, 0.998888f, 0.998870f, 0.998851f, 0.998833f, 0.998814f, + 0.998795f, 0.998777f, 0.998758f, 0.998738f, 0.998719f, 0.998700f, 0.998680f, 0.998660f, + 0.998640f, 0.998620f, 0.998600f, 0.998580f, 0.998559f, 0.998538f, 0.998518f, 0.998497f, + 0.998476f, 0.998454f, 0.998433f, 0.998411f, 0.998390f, 0.998368f, 0.998346f, 0.998324f, + 0.998302f, 0.998279f, 0.998257f, 0.998234f, 0.998211f, 0.998188f, 0.998165f, 0.998142f, + 0.998118f, 0.998094f, 0.998071f, 0.998047f, 0.998023f, 0.997999f, 0.997974f, 0.997950f, + 0.997925f, 0.997901f, 0.997876f, 0.997851f, 0.997825f, 0.997800f, 0.997774f, 0.997749f, + 0.997723f, 0.997697f, 0.997671f, 0.997645f, 0.997618f, 0.997592f, 0.997565f, 0.997538f, + 0.997511f, 0.997484f, 0.997457f, 0.997430f, 0.997402f, 0.997374f, 0.997347f, 0.997319f, + 0.997290f, 0.997262f, 0.997234f, 0.997205f, 0.997176f, 0.997148f, 0.997119f, 0.997089f, + 0.997060f, 0.997031f, 0.997001f, 0.996971f, 0.996941f, 0.996911f, 0.996881f, 0.996851f, + 0.996820f, 0.996790f, 0.996759f, 0.996728f, 0.996697f, 0.996666f, 0.996634f, 0.996603f, + 0.996571f, 0.996539f, 0.996507f, 0.996475f, 0.996443f, 0.996411f, 0.996378f, 0.996345f, + 0.996313f, 0.996280f, 0.996247f, 0.996213f, 0.996180f, 0.996146f, 0.996113f, 0.996079f, + 0.996045f, 0.996011f, 0.995976f, 0.995942f, 0.995907f, 0.995872f, 0.995838f, 0.995803f, + 0.995767f, 0.995732f, 0.995697f, 0.995661f, 0.995625f, 0.995589f, 0.995553f, 0.995517f, + 0.995481f, 0.995444f, 0.995408f, 0.995371f, 0.995334f, 0.995297f, 0.995260f, 0.995222f, + 0.995185f, 0.995147f, 0.995109f, 0.995071f, 0.995033f, 0.994995f, 0.994957f, 0.994918f, + 0.994879f, 0.994841f, 0.994802f, 0.994762f, 0.994723f, 0.994684f, 0.994644f, 0.994604f, + 0.994565f, 0.994525f, 0.994484f, 0.994444f, 0.994404f, 0.994363f, 0.994322f, 0.994281f, + 0.994240f, 0.994199f, 0.994158f, 0.994116f, 0.994075f, 0.994033f, 0.993991f, 0.993949f, + 0.993907f, 0.993865f, 0.993822f, 0.993779f, 0.993737f, 0.993694f, 0.993651f, 0.993608f, + 0.993564f, 0.993521f, 0.993477f, 0.993433f, 0.993389f, 0.993345f, 0.993301f, 0.993257f, + 0.993212f, 0.993167f, 0.993122f, 0.993077f, 0.993032f, 0.992987f, 0.992942f, 0.992896f, + 0.992850f, 0.992805f, 0.992759f, 0.992712f, 0.992666f, 0.992620f, 0.992573f, 0.992526f, + 0.992480f, 0.992433f, 0.992385f, 0.992338f, 0.992291f, 0.992243f, 0.992195f, 0.992147f, + 0.992099f, 0.992051f, 0.992003f, 0.991954f, 0.991906f, 0.991857f, 0.991808f, 0.991759f, + 0.991710f, 0.991660f, 0.991611f, 0.991561f, 0.991511f, 0.991462f, 0.991411f, 0.991361f, + 0.991311f, 0.991260f, 0.991210f, 0.991159f, 0.991108f, 0.991057f, 0.991006f, 0.990954f, + 0.990903f, 0.990851f, 0.990799f, 0.990747f, 0.990695f, 0.990643f, 0.990590f, 0.990538f, + 0.990485f, 0.990432f, 0.990379f, 0.990326f, 0.990273f, 0.990219f, 0.990166f, 0.990112f, + 0.990058f, 0.990004f, 0.989950f, 0.989896f, 0.989841f, 0.989787f, 0.989732f, 0.989677f, + 0.989622f, 0.989567f, 0.989511f, 0.989456f, 0.989400f, 0.989345f, 0.989289f, 0.989233f, + 0.989177f, 0.989120f, 0.989064f, 0.989007f, 0.988950f, 0.988893f, 0.988836f, 0.988779f, + 0.988722f, 0.988664f, 0.988607f, 0.988549f, 0.988491f, 0.988433f, 0.988374f, 0.988316f, + 0.988258f, 0.988199f, 0.988140f, 0.988081f, 0.988022f, 0.987963f, 0.987903f, 0.987844f, + 0.987784f, 0.987724f, 0.987664f, 0.987604f, 0.987544f, 0.987484f, 0.987423f, 0.987362f, + 0.987301f, 0.987240f, 0.987179f, 0.987118f, 0.987057f, 0.986995f, 0.986933f, 0.986871f, + 0.986809f, 0.986747f, 0.986685f, 0.986623f, 0.986560f, 0.986497f, 0.986434f, 0.986371f, + 0.986308f, 0.986245f, 0.986181f, 0.986118f, 0.986054f, 0.985990f, 0.985926f, 0.985862f, + 0.985798f, 0.985733f, 0.985668f, 0.985604f, 0.985539f, 0.985474f, 0.985408f, 0.985343f, + 0.985278f, 0.985212f, 0.985146f, 0.985080f, 0.985014f, 0.984948f, 0.984882f, 0.984815f, + 0.984748f, 0.984682f, 0.984615f, 0.984548f, 0.984480f, 0.984413f, 0.984346f, 0.984278f, + 0.984210f, 0.984142f, 0.984074f, 0.984006f, 0.983937f, 0.983869f, 0.983800f, 0.983731f, + 0.983662f, 0.983593f, 0.983524f, 0.983455f, 0.983385f, 0.983315f, 0.983246f, 0.983176f, + 0.983105f, 0.983035f, 0.982965f, 0.982894f, 0.982824f, 0.982753f, 0.982682f, 0.982611f, + 0.982539f, 0.982468f, 0.982396f, 0.982325f, 0.982253f, 0.982181f, 0.982109f, 0.982036f, + 0.981964f, 0.981891f, 0.981819f, 0.981746f, 0.981673f, 0.981600f, 0.981526f, 0.981453f, + 0.981379f, 0.981305f, 0.981232f, 0.981158f, 0.981083f, 0.981009f, 0.980935f, 0.980860f, + 0.980785f, 0.980710f, 0.980635f, 0.980560f, 0.980485f, 0.980409f, 0.980334f, 0.980258f, + 0.980182f, 0.980106f, 0.980030f, 0.979954f, 0.979877f, 0.979800f, 0.979724f, 0.979647f, + 0.979570f, 0.979493f, 0.979415f, 0.979338f, 0.979260f, 0.979182f, 0.979104f, 0.979026f, + 0.978948f, 0.978870f, 0.978791f, 0.978713f, 0.978634f, 0.978555f, 0.978476f, 0.978397f, + 0.978317f, 0.978238f, 0.978158f, 0.978078f, 0.977998f, 0.977918f, 0.977838f, 0.977758f, + 0.977677f, 0.977597f, 0.977516f, 0.977435f, 0.977354f, 0.977273f, 0.977191f, 0.977110f, + 0.977028f, 0.976946f, 0.976864f, 0.976782f, 0.976700f, 0.976618f, 0.976535f, 0.976453f, + 0.976370f, 0.976287f, 0.976204f, 0.976120f, 0.976037f, 0.975954f, 0.975870f, 0.975786f, + 0.975702f, 0.975618f, 0.975534f, 0.975449f, 0.975365f, 0.975280f, 0.975195f, 0.975110f, + 0.975025f, 0.974940f, 0.974855f, 0.974769f, 0.974684f, 0.974598f, 0.974512f, 0.974426f, + 0.974339f, 0.974253f, 0.974166f, 0.974080f, 0.973993f, 0.973906f, 0.973819f, 0.973732f, + 0.973644f, 0.973557f, 0.973469f, 0.973381f, 0.973293f, 0.973205f, 0.973117f, 0.973028f, + 0.972940f, 0.972851f, 0.972762f, 0.972673f, 0.972584f, 0.972495f, 0.972406f, 0.972316f, + 0.972227f, 0.972137f, 0.972047f, 0.971957f, 0.971866f, 0.971776f, 0.971685f, 0.971595f, + 0.971504f, 0.971413f, 0.971322f, 0.971231f, 0.971139f, 0.971048f, 0.970956f, 0.970864f, + 0.970772f, 0.970680f, 0.970588f, 0.970495f, 0.970403f, 0.970310f, 0.970217f, 0.970124f, + 0.970031f, 0.969938f, 0.969845f, 0.969751f, 0.969657f, 0.969564f, 0.969470f, 0.969375f, + 0.969281f, 0.969187f, 0.969092f, 0.968998f, 0.968903f, 0.968808f, 0.968713f, 0.968617f, + 0.968522f, 0.968427f, 0.968331f, 0.968235f, 0.968139f, 0.968043f, 0.967947f, 0.967850f, + 0.967754f, 0.967657f, 0.967560f, 0.967463f, 0.967366f, 0.967269f, 0.967172f, 0.967074f, + 0.966976f, 0.966879f, 0.966781f, 0.966683f, 0.966584f, 0.966486f, 0.966387f, 0.966289f, + 0.966190f, 0.966091f, 0.965992f, 0.965893f, 0.965793f, 0.965694f, 0.965594f, 0.965494f, + 0.965394f, 0.965294f, 0.965194f, 0.965094f, 0.964993f, 0.964893f, 0.964792f, 0.964691f, + 0.964590f, 0.964489f, 0.964387f, 0.964286f, 0.964184f, 0.964082f, 0.963980f, 0.963878f, + 0.963776f, 0.963674f, 0.963571f, 0.963469f, 0.963366f, 0.963263f, 0.963160f, 0.963057f, + 0.962953f, 0.962850f, 0.962746f, 0.962642f, 0.962538f, 0.962434f, 0.962330f, 0.962226f, + 0.962121f, 0.962017f, 0.961912f, 0.961807f, 0.961702f, 0.961597f, 0.961492f, 0.961386f, + 0.961280f, 0.961175f, 0.961069f, 0.960963f, 0.960857f, 0.960750f, 0.960644f, 0.960537f, + 0.960431f, 0.960324f, 0.960217f, 0.960109f, 0.960002f, 0.959895f, 0.959787f, 0.959679f, + 0.959572f, 0.959463f, 0.959355f, 0.959247f, 0.959139f, 0.959030f, 0.958921f, 0.958812f, + 0.958703f, 0.958594f, 0.958485f, 0.958376f, 0.958266f, 0.958156f, 0.958046f, 0.957937f, + 0.957826f, 0.957716f, 0.957606f, 0.957495f, 0.957385f, 0.957274f, 0.957163f, 0.957052f, + 0.956940f, 0.956829f, 0.956717f, 0.956606f, 0.956494f, 0.956382f, 0.956270f, 0.956158f, + 0.956045f, 0.955933f, 0.955820f, 0.955707f, 0.955594f, 0.955481f, 0.955368f, 0.955255f, + 0.955141f, 0.955028f, 0.954914f, 0.954800f, 0.954686f, 0.954572f, 0.954457f, 0.954343f, + 0.954228f, 0.954113f, 0.953998f, 0.953883f, 0.953768f, 0.953653f, 0.953537f, 0.953422f, + 0.953306f, 0.953190f, 0.953074f, 0.952958f, 0.952842f, 0.952725f, 0.952609f, 0.952492f, + 0.952375f, 0.952258f, 0.952141f, 0.952024f, 0.951906f, 0.951789f, 0.951671f, 0.951553f, + 0.951435f, 0.951317f, 0.951199f, 0.951080f, 0.950962f, 0.950843f, 0.950724f, 0.950605f, + 0.950486f, 0.950367f, 0.950247f, 0.950128f, 0.950008f, 0.949888f, 0.949768f, 0.949648f, + 0.949528f, 0.949408f, 0.949287f, 0.949167f, 0.949046f, 0.948925f, 0.948804f, 0.948683f, + 0.948561f, 0.948440f, 0.948318f, 0.948196f, 0.948075f, 0.947953f, 0.947830f, 0.947708f, + 0.947586f, 0.947463f, 0.947340f, 0.947217f, 0.947094f, 0.946971f, 0.946848f, 0.946724f, + 0.946601f, 0.946477f, 0.946353f, 0.946229f, 0.946105f, 0.945981f, 0.945857f, 0.945732f, + 0.945607f, 0.945482f, 0.945358f, 0.945232f, 0.945107f, 0.944982f, 0.944856f, 0.944731f, + 0.944605f, 0.944479f, 0.944353f, 0.944227f, 0.944100f, 0.943974f, 0.943847f, 0.943720f, + 0.943593f, 0.943466f, 0.943339f, 0.943212f, 0.943084f, 0.942957f, 0.942829f, 0.942701f, + 0.942573f, 0.942445f, 0.942317f, 0.942188f, 0.942060f, 0.941931f, 0.941802f, 0.941673f, + 0.941544f, 0.941415f, 0.941285f, 0.941156f, 0.941026f, 0.940896f, 0.940766f, 0.940636f, + 0.940506f, 0.940376f, 0.940245f, 0.940115f, 0.939984f, 0.939853f, 0.939722f, 0.939591f, + 0.939459f, 0.939328f, 0.939196f, 0.939064f, 0.938932f, 0.938800f, 0.938668f, 0.938536f, + 0.938404f, 0.938271f, 0.938138f, 0.938005f, 0.937872f, 0.937739f, 0.937606f, 0.937473f, + 0.937339f, 0.937205f, 0.937072f, 0.936938f, 0.936803f, 0.936669f, 0.936535f, 0.936400f, + 0.936266f, 0.936131f, 0.935996f, 0.935861f, 0.935726f, 0.935590f, 0.935455f, 0.935319f, + 0.935184f, 0.935048f, 0.934912f, 0.934775f, 0.934639f, 0.934503f, 0.934366f, 0.934229f, + 0.934093f, 0.933956f, 0.933818f, 0.933681f, 0.933544f, 0.933406f, 0.933269f, 0.933131f, + 0.932993f, 0.932855f, 0.932716f, 0.932578f, 0.932440f, 0.932301f, 0.932162f, 0.932023f, + 0.931884f, 0.931745f, 0.931606f, 0.931466f, 0.931327f, 0.931187f, 0.931047f, 0.930907f, + 0.930767f, 0.930627f, 0.930486f, 0.930346f, 0.930205f, 0.930064f, 0.929923f, 0.929782f, + 0.929641f, 0.929500f, 0.929358f, 0.929216f, 0.929075f, 0.928933f, 0.928791f, 0.928648f, + 0.928506f, 0.928364f, 0.928221f, 0.928078f, 0.927935f, 0.927792f, 0.927649f, 0.927506f, + 0.927363f, 0.927219f, 0.927075f, 0.926931f, 0.926787f, 0.926643f, 0.926499f, 0.926355f, + 0.926210f, 0.926066f, 0.925921f, 0.925776f, 0.925631f, 0.925486f, 0.925340f, 0.925195f, + 0.925049f, 0.924904f, 0.924758f, 0.924612f, 0.924465f, 0.924319f, 0.924173f, 0.924026f, + 0.923880f, 0.923733f, 0.923586f, 0.923439f, 0.923291f, 0.923144f, 0.922997f, 0.922849f, + 0.922701f, 0.922553f, 0.922405f, 0.922257f, 0.922109f, 0.921960f, 0.921812f, 0.921663f, + 0.921514f, 0.921365f, 0.921216f, 0.921067f, 0.920917f, 0.920768f, 0.920618f, 0.920468f, + 0.920318f, 0.920168f, 0.920018f, 0.919868f, 0.919717f, 0.919567f, 0.919416f, 0.919265f, + 0.919114f, 0.918963f, 0.918811f, 0.918660f, 0.918508f, 0.918357f, 0.918205f, 0.918053f, + 0.917901f, 0.917749f, 0.917596f, 0.917444f, 0.917291f, 0.917138f, 0.916985f, 0.916832f, + 0.916679f, 0.916526f, 0.916372f, 0.916219f, 0.916065f, 0.915911f, 0.915757f, 0.915603f, + 0.915449f, 0.915294f, 0.915140f, 0.914985f, 0.914830f, 0.914675f, 0.914520f, 0.914365f, + 0.914210f, 0.914054f, 0.913899f, 0.913743f, 0.913587f, 0.913431f, 0.913275f, 0.913119f, + 0.912962f, 0.912806f, 0.912649f, 0.912492f, 0.912335f, 0.912178f, 0.912021f, 0.911864f, + 0.911706f, 0.911548f, 0.911391f, 0.911233f, 0.911075f, 0.910917f, 0.910758f, 0.910600f, + 0.910441f, 0.910283f, 0.910124f, 0.909965f, 0.909806f, 0.909646f, 0.909487f, 0.909328f, + 0.909168f, 0.909008f, 0.908848f, 0.908688f, 0.908528f, 0.908368f, 0.908207f, 0.908047f, + 0.907886f, 0.907725f, 0.907564f, 0.907403f, 0.907242f, 0.907081f, 0.906919f, 0.906757f, + 0.906596f, 0.906434f, 0.906272f, 0.906110f, 0.905947f, 0.905785f, 0.905622f, 0.905460f, + 0.905297f, 0.905134f, 0.904971f, 0.904807f, 0.904644f, 0.904481f, 0.904317f, 0.904153f, + 0.903989f, 0.903825f, 0.903661f, 0.903497f, 0.903332f, 0.903168f, 0.903003f, 0.902838f, + 0.902673f, 0.902508f, 0.902343f, 0.902178f, 0.902012f, 0.901847f, 0.901681f, 0.901515f, + 0.901349f, 0.901183f, 0.901016f, 0.900850f, 0.900683f, 0.900517f, 0.900350f, 0.900183f, + 0.900016f, 0.899849f, 0.899681f, 0.899514f, 0.899346f, 0.899179f, 0.899011f, 0.898843f, + 0.898674f, 0.898506f, 0.898338f, 0.898169f, 0.898001f, 0.897832f, 0.897663f, 0.897494f, + 0.897325f, 0.897155f, 0.896986f, 0.896816f, 0.896646f, 0.896477f, 0.896307f, 0.896137f, + 0.895966f, 0.895796f, 0.895625f, 0.895455f, 0.895284f, 0.895113f, 0.894942f, 0.894771f, + 0.894599f, 0.894428f, 0.894256f, 0.894085f, 0.893913f, 0.893741f, 0.893569f, 0.893397f, + 0.893224f, 0.893052f, 0.892879f, 0.892706f, 0.892534f, 0.892361f, 0.892187f, 0.892014f, + 0.891841f, 0.891667f, 0.891493f, 0.891320f, 0.891146f, 0.890972f, 0.890797f, 0.890623f, + 0.890449f, 0.890274f, 0.890099f, 0.889925f, 0.889750f, 0.889574f, 0.889399f, 0.889224f, + 0.889048f, 0.888873f, 0.888697f, 0.888521f, 0.888345f, 0.888169f, 0.887993f, 0.887816f, + 0.887640f, 0.887463f, 0.887286f, 0.887109f, 0.886932f, 0.886755f, 0.886578f, 0.886400f, + 0.886223f, 0.886045f, 0.885867f, 0.885689f, 0.885511f, 0.885333f, 0.885154f, 0.884976f, + 0.884797f, 0.884618f, 0.884439f, 0.884260f, 0.884081f, 0.883902f, 0.883723f, 0.883543f, + 0.883363f, 0.883184f, 0.883004f, 0.882824f, 0.882643f, 0.882463f, 0.882283f, 0.882102f, + 0.881921f, 0.881740f, 0.881559f, 0.881378f, 0.881197f, 0.881016f, 0.880834f, 0.880653f, + 0.880471f, 0.880289f, 0.880107f, 0.879925f, 0.879743f, 0.879560f, 0.879378f, 0.879195f, + 0.879012f, 0.878829f, 0.878646f, 0.878463f, 0.878280f, 0.878096f, 0.877913f, 0.877729f, + 0.877545f, 0.877361f, 0.877177f, 0.876993f, 0.876809f, 0.876624f, 0.876440f, 0.876255f, + 0.876070f, 0.875885f, 0.875700f, 0.875515f, 0.875329f, 0.875144f, 0.874958f, 0.874773f, + 0.874587f, 0.874401f, 0.874215f, 0.874028f, 0.873842f, 0.873655f, 0.873469f, 0.873282f, + 0.873095f, 0.872908f, 0.872721f, 0.872534f, 0.872346f, 0.872159f, 0.871971f, 0.871783f, + 0.871595f, 0.871407f, 0.871219f, 0.871031f, 0.870842f, 0.870654f, 0.870465f, 0.870276f, + 0.870087f, 0.869898f, 0.869709f, 0.869519f, 0.869330f, 0.869140f, 0.868951f, 0.868761f, + 0.868571f, 0.868381f, 0.868190f, 0.868000f, 0.867809f, 0.867619f, 0.867428f, 0.867237f, + 0.867046f, 0.866855f, 0.866664f, 0.866472f, 0.866281f, 0.866089f, 0.865898f, 0.865706f, + 0.865514f, 0.865321f, 0.865129f, 0.864937f, 0.864744f, 0.864552f, 0.864359f, 0.864166f, + 0.863973f, 0.863780f, 0.863586f, 0.863393f, 0.863199f, 0.863006f, 0.862812f, 0.862618f, + 0.862424f, 0.862230f, 0.862035f, 0.861841f, 0.861646f, 0.861452f, 0.861257f, 0.861062f, + 0.860867f, 0.860672f, 0.860476f, 0.860281f, 0.860085f, 0.859890f, 0.859694f, 0.859498f, + 0.859302f, 0.859106f, 0.858909f, 0.858713f, 0.858516f, 0.858320f, 0.858123f, 0.857926f, + 0.857729f, 0.857531f, 0.857334f, 0.857137f, 0.856939f, 0.856741f, 0.856543f, 0.856345f, + 0.856147f, 0.855949f, 0.855751f, 0.855552f, 0.855354f, 0.855155f, 0.854956f, 0.854757f, + 0.854558f, 0.854359f, 0.854159f, 0.853960f, 0.853760f, 0.853561f, 0.853361f, 0.853161f, + 0.852961f, 0.852760f, 0.852560f, 0.852360f, 0.852159f, 0.851958f, 0.851757f, 0.851556f, + 0.851355f, 0.851154f, 0.850953f, 0.850751f, 0.850549f, 0.850348f, 0.850146f, 0.849944f, + 0.849742f, 0.849540f, 0.849337f, 0.849135f, 0.848932f, 0.848729f, 0.848526f, 0.848323f, + 0.848120f, 0.847917f, 0.847714f, 0.847510f, 0.847307f, 0.847103f, 0.846899f, 0.846695f, + 0.846491f, 0.846287f, 0.846082f, 0.845878f, 0.845673f, 0.845469f, 0.845264f, 0.845059f, + 0.844854f, 0.844648f, 0.844443f, 0.844238f, 0.844032f, 0.843826f, 0.843620f, 0.843414f, + 0.843208f, 0.843002f, 0.842796f, 0.842589f, 0.842383f, 0.842176f, 0.841969f, 0.841762f, + 0.841555f, 0.841348f, 0.841140f, 0.840933f, 0.840725f, 0.840518f, 0.840310f, 0.840102f, + 0.839894f, 0.839686f, 0.839477f, 0.839269f, 0.839060f, 0.838852f, 0.838643f, 0.838434f, + 0.838225f, 0.838015f, 0.837806f, 0.837597f, 0.837387f, 0.837178f, 0.836968f, 0.836758f, + 0.836548f, 0.836338f, 0.836127f, 0.835917f, 0.835706f, 0.835496f, 0.835285f, 0.835074f, + 0.834863f, 0.834652f, 0.834440f, 0.834229f, 0.834018f, 0.833806f, 0.833594f, 0.833382f, + 0.833170f, 0.832958f, 0.832746f, 0.832533f, 0.832321f, 0.832108f, 0.831895f, 0.831683f, + 0.831470f, 0.831257f, 0.831043f, 0.830830f, 0.830616f, 0.830403f, 0.830189f, 0.829975f, + 0.829761f, 0.829547f, 0.829333f, 0.829119f, 0.828904f, 0.828690f, 0.828475f, 0.828260f, + 0.828045f, 0.827830f, 0.827615f, 0.827399f, 0.827184f, 0.826968f, 0.826753f, 0.826537f, + 0.826321f, 0.826105f, 0.825889f, 0.825673f, 0.825456f, 0.825240f, 0.825023f, 0.824806f, + 0.824589f, 0.824372f, 0.824155f, 0.823938f, 0.823721f, 0.823503f, 0.823285f, 0.823068f, + 0.822850f, 0.822632f, 0.822414f, 0.822195f, 0.821977f, 0.821759f, 0.821540f, 0.821321f, + 0.821102f, 0.820884f, 0.820664f, 0.820445f, 0.820226f, 0.820007f, 0.819787f, 0.819567f, + 0.819348f, 0.819128f, 0.818908f, 0.818687f, 0.818467f, 0.818247f, 0.818026f, 0.817806f, + 0.817585f, 0.817364f, 0.817143f, 0.816922f, 0.816701f, 0.816479f, 0.816258f, 0.816036f, + 0.815814f, 0.815593f, 0.815371f, 0.815149f, 0.814926f, 0.814704f, 0.814482f, 0.814259f, + 0.814036f, 0.813814f, 0.813591f, 0.813368f, 0.813144f, 0.812921f, 0.812698f, 0.812474f, + 0.812251f, 0.812027f, 0.811803f, 0.811579f, 0.811355f, 0.811131f, 0.810906f, 0.810682f, + 0.810457f, 0.810232f, 0.810008f, 0.809783f, 0.809558f, 0.809332f, 0.809107f, 0.808882f, + 0.808656f, 0.808430f, 0.808205f, 0.807979f, 0.807753f, 0.807527f, 0.807300f, 0.807074f, + 0.806848f, 0.806621f, 0.806394f, 0.806167f, 0.805940f, 0.805713f, 0.805486f, 0.805259f, + 0.805031f, 0.804804f, 0.804576f, 0.804348f, 0.804120f, 0.803892f, 0.803664f, 0.803436f, + 0.803208f, 0.802979f, 0.802750f, 0.802522f, 0.802293f, 0.802064f, 0.801835f, 0.801606f, + 0.801376f, 0.801147f, 0.800917f, 0.800687f, 0.800458f, 0.800228f, 0.799998f, 0.799768f, + 0.799537f, 0.799307f, 0.799076f, 0.798846f, 0.798615f, 0.798384f, 0.798153f, 0.797922f, + 0.797691f, 0.797459f, 0.797228f, 0.796996f, 0.796765f, 0.796533f, 0.796301f, 0.796069f, + 0.795837f, 0.795605f, 0.795372f, 0.795140f, 0.794907f, 0.794674f, 0.794442f, 0.794209f, + 0.793975f, 0.793742f, 0.793509f, 0.793276f, 0.793042f, 0.792808f, 0.792575f, 0.792341f, + 0.792107f, 0.791872f, 0.791638f, 0.791404f, 0.791169f, 0.790935f, 0.790700f, 0.790465f, + 0.790230f, 0.789995f, 0.789760f, 0.789525f, 0.789289f, 0.789054f, 0.788818f, 0.788582f, + 0.788346f, 0.788110f, 0.787874f, 0.787638f, 0.787402f, 0.787165f, 0.786929f, 0.786692f, + 0.786455f, 0.786218f, 0.785981f, 0.785744f, 0.785507f, 0.785269f, 0.785032f, 0.784794f, + 0.784557f, 0.784319f, 0.784081f, 0.783843f, 0.783605f, 0.783366f, 0.783128f, 0.782889f, + 0.782651f, 0.782412f, 0.782173f, 0.781934f, 0.781695f, 0.781456f, 0.781216f, 0.780977f, + 0.780737f, 0.780498f, 0.780258f, 0.780018f, 0.779778f, 0.779538f, 0.779297f, 0.779057f, + 0.778817f, 0.778576f, 0.778335f, 0.778094f, 0.777853f, 0.777612f, 0.777371f, 0.777130f, + 0.776888f, 0.776647f, 0.776405f, 0.776164f, 0.775922f, 0.775680f, 0.775438f, 0.775195f, + 0.774953f, 0.774711f, 0.774468f, 0.774225f, 0.773983f, 0.773740f, 0.773497f, 0.773254f, + 0.773010f, 0.772767f, 0.772524f, 0.772280f, 0.772036f, 0.771793f, 0.771549f, 0.771305f, + 0.771061f, 0.770816f, 0.770572f, 0.770327f, 0.770083f, 0.769838f, 0.769593f, 0.769348f, + 0.769103f, 0.768858f, 0.768613f, 0.768368f, 0.768122f, 0.767876f, 0.767631f, 0.767385f, + 0.767139f, 0.766893f, 0.766647f, 0.766400f, 0.766154f, 0.765907f, 0.765661f, 0.765414f, + 0.765167f, 0.764920f, 0.764673f, 0.764426f, 0.764179f, 0.763931f, 0.763684f, 0.763436f, + 0.763188f, 0.762941f, 0.762693f, 0.762444f, 0.762196f, 0.761948f, 0.761700f, 0.761451f, + 0.761202f, 0.760954f, 0.760705f, 0.760456f, 0.760207f, 0.759957f, 0.759708f, 0.759459f, + 0.759209f, 0.758960f, 0.758710f, 0.758460f, 0.758210f, 0.757960f, 0.757710f, 0.757459f, + 0.757209f, 0.756958f, 0.756708f, 0.756457f, 0.756206f, 0.755955f, 0.755704f, 0.755453f, + 0.755201f, 0.754950f, 0.754698f, 0.754447f, 0.754195f, 0.753943f, 0.753691f, 0.753439f, + 0.753187f, 0.752934f, 0.752682f, 0.752429f, 0.752177f, 0.751924f, 0.751671f, 0.751418f, + 0.751165f, 0.750912f, 0.750659f, 0.750405f, 0.750152f, 0.749898f, 0.749644f, 0.749390f, + 0.749136f, 0.748882f, 0.748628f, 0.748374f, 0.748119f, 0.747865f, 0.747610f, 0.747355f, + 0.747101f, 0.746846f, 0.746591f, 0.746335f, 0.746080f, 0.745825f, 0.745569f, 0.745314f, + 0.745058f, 0.744802f, 0.744546f, 0.744290f, 0.744034f, 0.743777f, 0.743521f, 0.743265f, + 0.743008f, 0.742751f, 0.742494f, 0.742237f, 0.741980f, 0.741723f, 0.741466f, 0.741209f, + 0.740951f, 0.740694f, 0.740436f, 0.740178f, 0.739920f, 0.739662f, 0.739404f, 0.739146f, + 0.738887f, 0.738629f, 0.738370f, 0.738112f, 0.737853f, 0.737594f, 0.737335f, 0.737076f, + 0.736817f, 0.736557f, 0.736298f, 0.736038f, 0.735779f, 0.735519f, 0.735259f, 0.734999f, + 0.734739f, 0.734479f, 0.734218f, 0.733958f, 0.733697f, 0.733437f, 0.733176f, 0.732915f, + 0.732654f, 0.732393f, 0.732132f, 0.731871f, 0.731609f, 0.731348f, 0.731086f, 0.730825f, + 0.730563f, 0.730301f, 0.730039f, 0.729777f, 0.729514f, 0.729252f, 0.728990f, 0.728727f, + 0.728464f, 0.728202f, 0.727939f, 0.727676f, 0.727413f, 0.727149f, 0.726886f, 0.726623f, + 0.726359f, 0.726095f, 0.725832f, 0.725568f, 0.725304f, 0.725040f, 0.724776f, 0.724511f, + 0.724247f, 0.723983f, 0.723718f, 0.723453f, 0.723188f, 0.722924f, 0.722659f, 0.722393f, + 0.722128f, 0.721863f, 0.721597f, 0.721332f, 0.721066f, 0.720800f, 0.720535f, 0.720269f, + 0.720003f, 0.719736f, 0.719470f, 0.719204f, 0.718937f, 0.718670f, 0.718404f, 0.718137f, + 0.717870f, 0.717603f, 0.717336f, 0.717069f, 0.716801f, 0.716534f, 0.716266f, 0.715999f, + 0.715731f, 0.715463f, 0.715195f, 0.714927f, 0.714659f, 0.714390f, 0.714122f, 0.713853f, + 0.713585f, 0.713316f, 0.713047f, 0.712778f, 0.712509f, 0.712240f, 0.711971f, 0.711702f, + 0.711432f, 0.711163f, 0.710893f, 0.710623f, 0.710353f, 0.710083f, 0.709813f, 0.709543f, + 0.709273f, 0.709002f, 0.708732f, 0.708461f, 0.708191f, 0.707920f, 0.707649f, 0.707378f, + 0.707107f, 0.706836f, 0.706564f, 0.706293f, 0.706021f, 0.705750f, 0.705478f, 0.705206f, + 0.704934f, 0.704662f, 0.704390f, 0.704118f, 0.703845f, 0.703573f, 0.703300f, 0.703028f, + 0.702755f, 0.702482f, 0.702209f, 0.701936f, 0.701663f, 0.701389f, 0.701116f, 0.700842f, + 0.700569f, 0.700295f, 0.700021f, 0.699747f, 0.699473f, 0.699199f, 0.698925f, 0.698651f, + 0.698376f, 0.698102f, 0.697827f, 0.697552f, 0.697277f, 0.697003f, 0.696728f, 0.696452f, + 0.696177f, 0.695902f, 0.695626f, 0.695351f, 0.695075f, 0.694799f, 0.694524f, 0.694248f, + 0.693971f, 0.693695f, 0.693419f, 0.693143f, 0.692866f, 0.692590f, 0.692313f, 0.692036f, + 0.691759f, 0.691482f, 0.691205f, 0.690928f, 0.690651f, 0.690373f, 0.690096f, 0.689818f, + 0.689541f, 0.689263f, 0.688985f, 0.688707f, 0.688429f, 0.688151f, 0.687872f, 0.687594f, + 0.687315f, 0.687037f, 0.686758f, 0.686479f, 0.686200f, 0.685921f, 0.685642f, 0.685363f, + 0.685084f, 0.684804f, 0.684525f, 0.684245f, 0.683965f, 0.683686f, 0.683406f, 0.683126f, + 0.682846f, 0.682565f, 0.682285f, 0.682005f, 0.681724f, 0.681443f, 0.681163f, 0.680882f, + 0.680601f, 0.680320f, 0.680039f, 0.679758f, 0.679476f, 0.679195f, 0.678913f, 0.678632f, + 0.678350f, 0.678068f, 0.677786f, 0.677504f, 0.677222f, 0.676940f, 0.676658f, 0.676375f, + 0.676093f, 0.675810f, 0.675527f, 0.675245f, 0.674962f, 0.674679f, 0.674396f, 0.674112f, + 0.673829f, 0.673546f, 0.673262f, 0.672978f, 0.672695f, 0.672411f, 0.672127f, 0.671843f, + 0.671559f, 0.671275f, 0.670990f, 0.670706f, 0.670422f, 0.670137f, 0.669852f, 0.669567f, + 0.669283f, 0.668998f, 0.668712f, 0.668427f, 0.668142f, 0.667857f, 0.667571f, 0.667286f, + 0.667000f, 0.666714f, 0.666428f, 0.666142f, 0.665856f, 0.665570f, 0.665284f, 0.664997f, + 0.664711f, 0.664424f, 0.664138f, 0.663851f, 0.663564f, 0.663277f, 0.662990f, 0.662703f, + 0.662416f, 0.662128f, 0.661841f, 0.661553f, 0.661266f, 0.660978f, 0.660690f, 0.660402f, + 0.660114f, 0.659826f, 0.659538f, 0.659250f, 0.658961f, 0.658673f, 0.658384f, 0.658095f, + 0.657807f, 0.657518f, 0.657229f, 0.656940f, 0.656651f, 0.656361f, 0.656072f, 0.655782f, + 0.655493f, 0.655203f, 0.654913f, 0.654624f, 0.654334f, 0.654044f, 0.653753f, 0.653463f, + 0.653173f, 0.652882f, 0.652592f, 0.652301f, 0.652011f, 0.651720f, 0.651429f, 0.651138f, + 0.650847f, 0.650555f, 0.650264f, 0.649973f, 0.649681f, 0.649390f, 0.649098f, 0.648806f, + 0.648514f, 0.648222f, 0.647930f, 0.647638f, 0.647346f, 0.647054f, 0.646761f, 0.646469f, + 0.646176f, 0.645883f, 0.645590f, 0.645298f, 0.645005f, 0.644711f, 0.644418f, 0.644125f, + 0.643832f, 0.643538f, 0.643245f, 0.642951f, 0.642657f, 0.642363f, 0.642069f, 0.641775f, + 0.641481f, 0.641187f, 0.640892f, 0.640598f, 0.640303f, 0.640009f, 0.639714f, 0.639419f, + 0.639124f, 0.638829f, 0.638534f, 0.638239f, 0.637944f, 0.637649f, 0.637353f, 0.637057f, + 0.636762f, 0.636466f, 0.636170f, 0.635874f, 0.635578f, 0.635282f, 0.634986f, 0.634690f, + 0.634393f, 0.634097f, 0.633800f, 0.633504f, 0.633207f, 0.632910f, 0.632613f, 0.632316f, + 0.632019f, 0.631721f, 0.631424f, 0.631127f, 0.630829f, 0.630532f, 0.630234f, 0.629936f, + 0.629638f, 0.629340f, 0.629042f, 0.628744f, 0.628446f, 0.628147f, 0.627849f, 0.627550f, + 0.627252f, 0.626953f, 0.626654f, 0.626355f, 0.626056f, 0.625757f, 0.625458f, 0.625159f, + 0.624860f, 0.624560f, 0.624260f, 0.623961f, 0.623661f, 0.623361f, 0.623061f, 0.622761f, + 0.622461f, 0.622161f, 0.621861f, 0.621560f, 0.621260f, 0.620959f, 0.620659f, 0.620358f, + 0.620057f, 0.619756f, 0.619455f, 0.619154f, 0.618853f, 0.618552f, 0.618250f, 0.617949f, + 0.617647f, 0.617346f, 0.617044f, 0.616742f, 0.616440f, 0.616138f, 0.615836f, 0.615534f, + 0.615232f, 0.614929f, 0.614627f, 0.614324f, 0.614022f, 0.613719f, 0.613416f, 0.613113f, + 0.612810f, 0.612507f, 0.612204f, 0.611901f, 0.611597f, 0.611294f, 0.610990f, 0.610687f, + 0.610383f, 0.610079f, 0.609775f, 0.609471f, 0.609167f, 0.608863f, 0.608559f, 0.608254f, + 0.607950f, 0.607645f, 0.607341f, 0.607036f, 0.606731f, 0.606426f, 0.606121f, 0.605816f, + 0.605511f, 0.605206f, 0.604900f, 0.604595f, 0.604290f, 0.603984f, 0.603678f, 0.603372f, + 0.603067f, 0.602761f, 0.602455f, 0.602148f, 0.601842f, 0.601536f, 0.601230f, 0.600923f, + 0.600616f, 0.600310f, 0.600003f, 0.599696f, 0.599389f, 0.599082f, 0.598775f, 0.598468f, + 0.598161f, 0.597853f, 0.597546f, 0.597238f, 0.596931f, 0.596623f, 0.596315f, 0.596007f, + 0.595699f, 0.595391f, 0.595083f, 0.594775f, 0.594467f, 0.594158f, 0.593850f, 0.593541f, + 0.593232f, 0.592924f, 0.592615f, 0.592306f, 0.591997f, 0.591688f, 0.591378f, 0.591069f, + 0.590760f, 0.590450f, 0.590141f, 0.589831f, 0.589521f, 0.589212f, 0.588902f, 0.588592f, + 0.588282f, 0.587971f, 0.587661f, 0.587351f, 0.587040f, 0.586730f, 0.586419f, 0.586109f, + 0.585798f, 0.585487f, 0.585176f, 0.584865f, 0.584554f, 0.584243f, 0.583931f, 0.583620f, + 0.583309f, 0.582997f, 0.582685f, 0.582374f, 0.582062f, 0.581750f, 0.581438f, 0.581126f, + 0.580814f, 0.580502f, 0.580189f, 0.579877f, 0.579565f, 0.579252f, 0.578939f, 0.578627f, + 0.578314f, 0.578001f, 0.577688f, 0.577375f, 0.577062f, 0.576748f, 0.576435f, 0.576122f, + 0.575808f, 0.575495f, 0.575181f, 0.574867f, 0.574553f, 0.574239f, 0.573925f, 0.573611f, + 0.573297f, 0.572983f, 0.572669f, 0.572354f, 0.572040f, 0.571725f, 0.571410f, 0.571096f, + 0.570781f, 0.570466f, 0.570151f, 0.569836f, 0.569521f, 0.569205f, 0.568890f, 0.568574f, + 0.568259f, 0.567943f, 0.567628f, 0.567312f, 0.566996f, 0.566680f, 0.566364f, 0.566048f, + 0.565732f, 0.565416f, 0.565099f, 0.564783f, 0.564466f, 0.564150f, 0.563833f, 0.563516f, + 0.563199f, 0.562882f, 0.562565f, 0.562248f, 0.561931f, 0.561614f, 0.561297f, 0.560979f, + 0.560662f, 0.560344f, 0.560026f, 0.559709f, 0.559391f, 0.559073f, 0.558755f, 0.558437f, + 0.558119f, 0.557800f, 0.557482f, 0.557164f, 0.556845f, 0.556526f, 0.556208f, 0.555889f, + 0.555570f, 0.555251f, 0.554932f, 0.554613f, 0.554294f, 0.553975f, 0.553656f, 0.553336f, + 0.553017f, 0.552697f, 0.552378f, 0.552058f, 0.551738f, 0.551418f, 0.551098f, 0.550778f, + 0.550458f, 0.550138f, 0.549818f, 0.549497f, 0.549177f, 0.548856f, 0.548536f, 0.548215f, + 0.547894f, 0.547573f, 0.547252f, 0.546931f, 0.546610f, 0.546289f, 0.545968f, 0.545646f, + 0.545325f, 0.545003f, 0.544682f, 0.544360f, 0.544039f, 0.543717f, 0.543395f, 0.543073f, + 0.542751f, 0.542429f, 0.542106f, 0.541784f, 0.541462f, 0.541139f, 0.540817f, 0.540494f, + 0.540171f, 0.539849f, 0.539526f, 0.539203f, 0.538880f, 0.538557f, 0.538234f, 0.537910f, + 0.537587f, 0.537264f, 0.536940f, 0.536617f, 0.536293f, 0.535969f, 0.535645f, 0.535322f, + 0.534998f, 0.534674f, 0.534349f, 0.534025f, 0.533701f, 0.533377f, 0.533052f, 0.532728f, + 0.532403f, 0.532078f, 0.531754f, 0.531429f, 0.531104f, 0.530779f, 0.530454f, 0.530129f, + 0.529804f, 0.529478f, 0.529153f, 0.528828f, 0.528502f, 0.528176f, 0.527851f, 0.527525f, + 0.527199f, 0.526873f, 0.526547f, 0.526221f, 0.525895f, 0.525569f, 0.525243f, 0.524916f, + 0.524590f, 0.524263f, 0.523937f, 0.523610f, 0.523283f, 0.522956f, 0.522629f, 0.522302f, + 0.521975f, 0.521648f, 0.521321f, 0.520994f, 0.520666f, 0.520339f, 0.520011f, 0.519684f, + 0.519356f, 0.519028f, 0.518700f, 0.518372f, 0.518045f, 0.517716f, 0.517388f, 0.517060f, + 0.516732f, 0.516403f, 0.516075f, 0.515746f, 0.515418f, 0.515089f, 0.514760f, 0.514432f, + 0.514103f, 0.513774f, 0.513445f, 0.513116f, 0.512786f, 0.512457f, 0.512128f, 0.511798f, + 0.511469f, 0.511139f, 0.510810f, 0.510480f, 0.510150f, 0.509820f, 0.509490f, 0.509160f, + 0.508830f, 0.508500f, 0.508170f, 0.507839f, 0.507509f, 0.507179f, 0.506848f, 0.506517f, + 0.506187f, 0.505856f, 0.505525f, 0.505194f, 0.504863f, 0.504532f, 0.504201f, 0.503870f, + 0.503538f, 0.503207f, 0.502876f, 0.502544f, 0.502212f, 0.501881f, 0.501549f, 0.501217f, + 0.500885f, 0.500553f, 0.500221f, 0.499889f, 0.499557f, 0.499225f, 0.498893f, 0.498560f, + 0.498228f, 0.497895f, 0.497562f, 0.497230f, 0.496897f, 0.496564f, 0.496231f, 0.495898f, + 0.495565f, 0.495232f, 0.494899f, 0.494566f, 0.494232f, 0.493899f, 0.493565f, 0.493232f, + 0.492898f, 0.492564f, 0.492231f, 0.491897f, 0.491563f, 0.491229f, 0.490895f, 0.490561f, + 0.490226f, 0.489892f, 0.489558f, 0.489223f, 0.488889f, 0.488554f, 0.488220f, 0.487885f, + 0.487550f, 0.487215f, 0.486880f, 0.486545f, 0.486210f, 0.485875f, 0.485540f, 0.485205f, + 0.484869f, 0.484534f, 0.484198f, 0.483863f, 0.483527f, 0.483191f, 0.482856f, 0.482520f, + 0.482184f, 0.481848f, 0.481512f, 0.481176f, 0.480839f, 0.480503f, 0.480167f, 0.479830f, + 0.479494f, 0.479157f, 0.478821f, 0.478484f, 0.478147f, 0.477810f, 0.477473f, 0.477136f, + 0.476799f, 0.476462f, 0.476125f, 0.475788f, 0.475450f, 0.475113f, 0.474775f, 0.474438f, + 0.474100f, 0.473763f, 0.473425f, 0.473087f, 0.472749f, 0.472411f, 0.472073f, 0.471735f, + 0.471397f, 0.471058f, 0.470720f, 0.470382f, 0.470043f, 0.469705f, 0.469366f, 0.469028f, + 0.468689f, 0.468350f, 0.468011f, 0.467672f, 0.467333f, 0.466994f, 0.466655f, 0.466316f, + 0.465977f, 0.465637f, 0.465298f, 0.464958f, 0.464619f, 0.464279f, 0.463939f, 0.463600f, + 0.463260f, 0.462920f, 0.462580f, 0.462240f, 0.461900f, 0.461560f, 0.461219f, 0.460879f, + 0.460539f, 0.460198f, 0.459858f, 0.459517f, 0.459177f, 0.458836f, 0.458495f, 0.458154f, + 0.457813f, 0.457472f, 0.457131f, 0.456790f, 0.456449f, 0.456108f, 0.455766f, 0.455425f, + 0.455084f, 0.454742f, 0.454400f, 0.454059f, 0.453717f, 0.453375f, 0.453033f, 0.452692f, + 0.452350f, 0.452008f, 0.451665f, 0.451323f, 0.450981f, 0.450639f, 0.450296f, 0.449954f, + 0.449611f, 0.449269f, 0.448926f, 0.448583f, 0.448241f, 0.447898f, 0.447555f, 0.447212f, + 0.446869f, 0.446526f, 0.446183f, 0.445839f, 0.445496f, 0.445153f, 0.444809f, 0.444466f, + 0.444122f, 0.443779f, 0.443435f, 0.443091f, 0.442747f, 0.442403f, 0.442059f, 0.441715f, + 0.441371f, 0.441027f, 0.440683f, 0.440339f, 0.439994f, 0.439650f, 0.439305f, 0.438961f, + 0.438616f, 0.438272f, 0.437927f, 0.437582f, 0.437237f, 0.436892f, 0.436547f, 0.436202f, + 0.435857f, 0.435512f, 0.435167f, 0.434821f, 0.434476f, 0.434131f, 0.433785f, 0.433439f, + 0.433094f, 0.432748f, 0.432402f, 0.432057f, 0.431711f, 0.431365f, 0.431019f, 0.430673f, + 0.430326f, 0.429980f, 0.429634f, 0.429288f, 0.428941f, 0.428595f, 0.428248f, 0.427902f, + 0.427555f, 0.427208f, 0.426862f, 0.426515f, 0.426168f, 0.425821f, 0.425474f, 0.425127f, + 0.424780f, 0.424432f, 0.424085f, 0.423738f, 0.423390f, 0.423043f, 0.422695f, 0.422348f, + 0.422000f, 0.421653f, 0.421305f, 0.420957f, 0.420609f, 0.420261f, 0.419913f, 0.419565f, + 0.419217f, 0.418869f, 0.418520f, 0.418172f, 0.417824f, 0.417475f, 0.417127f, 0.416778f, + 0.416430f, 0.416081f, 0.415732f, 0.415383f, 0.415034f, 0.414685f, 0.414337f, 0.413987f, + 0.413638f, 0.413289f, 0.412940f, 0.412591f, 0.412241f, 0.411892f, 0.411542f, 0.411193f, + 0.410843f, 0.410493f, 0.410144f, 0.409794f, 0.409444f, 0.409094f, 0.408744f, 0.408394f, + 0.408044f, 0.407694f, 0.407344f, 0.406994f, 0.406643f, 0.406293f, 0.405942f, 0.405592f, + 0.405241f, 0.404891f, 0.404540f, 0.404189f, 0.403838f, 0.403488f, 0.403137f, 0.402786f, + 0.402435f, 0.402084f, 0.401732f, 0.401381f, 0.401030f, 0.400679f, 0.400327f, 0.399976f, + 0.399624f, 0.399273f, 0.398921f, 0.398569f, 0.398218f, 0.397866f, 0.397514f, 0.397162f, + 0.396810f, 0.396458f, 0.396106f, 0.395754f, 0.395401f, 0.395049f, 0.394697f, 0.394344f, + 0.393992f, 0.393640f, 0.393287f, 0.392934f, 0.392582f, 0.392229f, 0.391876f, 0.391523f, + 0.391170f, 0.390817f, 0.390464f, 0.390111f, 0.389758f, 0.389405f, 0.389052f, 0.388698f, + 0.388345f, 0.387992f, 0.387638f, 0.387285f, 0.386931f, 0.386577f, 0.386224f, 0.385870f, + 0.385516f, 0.385162f, 0.384808f, 0.384454f, 0.384100f, 0.383746f, 0.383392f, 0.383038f, + 0.382683f, 0.382329f, 0.381975f, 0.381620f, 0.381266f, 0.380911f, 0.380557f, 0.380202f, + 0.379847f, 0.379492f, 0.379138f, 0.378783f, 0.378428f, 0.378073f, 0.377718f, 0.377363f, + 0.377007f, 0.376652f, 0.376297f, 0.375942f, 0.375586f, 0.375231f, 0.374875f, 0.374520f, + 0.374164f, 0.373808f, 0.373453f, 0.373097f, 0.372741f, 0.372385f, 0.372029f, 0.371673f, + 0.371317f, 0.370961f, 0.370605f, 0.370249f, 0.369892f, 0.369536f, 0.369180f, 0.368823f, + 0.368467f, 0.368110f, 0.367754f, 0.367397f, 0.367040f, 0.366684f, 0.366327f, 0.365970f, + 0.365613f, 0.365256f, 0.364899f, 0.364542f, 0.364185f, 0.363828f, 0.363470f, 0.363113f, + 0.362756f, 0.362398f, 0.362041f, 0.361683f, 0.361326f, 0.360968f, 0.360611f, 0.360253f, + 0.359895f, 0.359537f, 0.359179f, 0.358821f, 0.358463f, 0.358105f, 0.357747f, 0.357389f, + 0.357031f, 0.356673f, 0.356314f, 0.355956f, 0.355598f, 0.355239f, 0.354881f, 0.354522f, + 0.354164f, 0.353805f, 0.353446f, 0.353087f, 0.352729f, 0.352370f, 0.352011f, 0.351652f, + 0.351293f, 0.350934f, 0.350575f, 0.350215f, 0.349856f, 0.349497f, 0.349138f, 0.348778f, + 0.348419f, 0.348059f, 0.347700f, 0.347340f, 0.346980f, 0.346621f, 0.346261f, 0.345901f, + 0.345541f, 0.345181f, 0.344821f, 0.344461f, 0.344101f, 0.343741f, 0.343381f, 0.343021f, + 0.342661f, 0.342300f, 0.341940f, 0.341580f, 0.341219f, 0.340859f, 0.340498f, 0.340138f, + 0.339777f, 0.339416f, 0.339055f, 0.338695f, 0.338334f, 0.337973f, 0.337612f, 0.337251f, + 0.336890f, 0.336529f, 0.336168f, 0.335806f, 0.335445f, 0.335084f, 0.334722f, 0.334361f, + 0.334000f, 0.333638f, 0.333277f, 0.332915f, 0.332553f, 0.332192f, 0.331830f, 0.331468f, + 0.331106f, 0.330744f, 0.330382f, 0.330020f, 0.329658f, 0.329296f, 0.328934f, 0.328572f, + 0.328210f, 0.327848f, 0.327485f, 0.327123f, 0.326760f, 0.326398f, 0.326035f, 0.325673f, + 0.325310f, 0.324948f, 0.324585f, 0.324222f, 0.323859f, 0.323497f, 0.323134f, 0.322771f, + 0.322408f, 0.322045f, 0.321682f, 0.321318f, 0.320955f, 0.320592f, 0.320229f, 0.319865f, + 0.319502f, 0.319139f, 0.318775f, 0.318412f, 0.318048f, 0.317684f, 0.317321f, 0.316957f, + 0.316593f, 0.316230f, 0.315866f, 0.315502f, 0.315138f, 0.314774f, 0.314410f, 0.314046f, + 0.313682f, 0.313318f, 0.312953f, 0.312589f, 0.312225f, 0.311860f, 0.311496f, 0.311132f, + 0.310767f, 0.310403f, 0.310038f, 0.309673f, 0.309309f, 0.308944f, 0.308579f, 0.308214f, + 0.307850f, 0.307485f, 0.307120f, 0.306755f, 0.306390f, 0.306025f, 0.305660f, 0.305294f, + 0.304929f, 0.304564f, 0.304199f, 0.303833f, 0.303468f, 0.303103f, 0.302737f, 0.302372f, + 0.302006f, 0.301640f, 0.301275f, 0.300909f, 0.300543f, 0.300177f, 0.299812f, 0.299446f, + 0.299080f, 0.298714f, 0.298348f, 0.297982f, 0.297616f, 0.297250f, 0.296883f, 0.296517f, + 0.296151f, 0.295785f, 0.295418f, 0.295052f, 0.294685f, 0.294319f, 0.293952f, 0.293586f, + 0.293219f, 0.292852f, 0.292486f, 0.292119f, 0.291752f, 0.291385f, 0.291019f, 0.290652f, + 0.290285f, 0.289918f, 0.289551f, 0.289184f, 0.288816f, 0.288449f, 0.288082f, 0.287715f, + 0.287347f, 0.286980f, 0.286613f, 0.286245f, 0.285878f, 0.285510f, 0.285143f, 0.284775f, + 0.284408f, 0.284040f, 0.283672f, 0.283304f, 0.282937f, 0.282569f, 0.282201f, 0.281833f, + 0.281465f, 0.281097f, 0.280729f, 0.280361f, 0.279993f, 0.279624f, 0.279256f, 0.278888f, + 0.278520f, 0.278151f, 0.277783f, 0.277415f, 0.277046f, 0.276678f, 0.276309f, 0.275940f, + 0.275572f, 0.275203f, 0.274834f, 0.274466f, 0.274097f, 0.273728f, 0.273359f, 0.272990f, + 0.272621f, 0.272252f, 0.271883f, 0.271514f, 0.271145f, 0.270776f, 0.270407f, 0.270038f, + 0.269668f, 0.269299f, 0.268930f, 0.268560f, 0.268191f, 0.267821f, 0.267452f, 0.267082f, + 0.266713f, 0.266343f, 0.265973f, 0.265604f, 0.265234f, 0.264864f, 0.264494f, 0.264125f, + 0.263755f, 0.263385f, 0.263015f, 0.262645f, 0.262275f, 0.261905f, 0.261534f, 0.261164f, + 0.260794f, 0.260424f, 0.260054f, 0.259683f, 0.259313f, 0.258943f, 0.258572f, 0.258202f, + 0.257831f, 0.257461f, 0.257090f, 0.256719f, 0.256349f, 0.255978f, 0.255607f, 0.255236f, + 0.254866f, 0.254495f, 0.254124f, 0.253753f, 0.253382f, 0.253011f, 0.252640f, 0.252269f, + 0.251898f, 0.251527f, 0.251155f, 0.250784f, 0.250413f, 0.250042f, 0.249670f, 0.249299f, + 0.248928f, 0.248556f, 0.248185f, 0.247813f, 0.247442f, 0.247070f, 0.246698f, 0.246327f, + 0.245955f, 0.245583f, 0.245212f, 0.244840f, 0.244468f, 0.244096f, 0.243724f, 0.243352f, + 0.242980f, 0.242608f, 0.242236f, 0.241864f, 0.241492f, 0.241120f, 0.240748f, 0.240375f, + 0.240003f, 0.239631f, 0.239258f, 0.238886f, 0.238514f, 0.238141f, 0.237769f, 0.237396f, + 0.237024f, 0.236651f, 0.236278f, 0.235906f, 0.235533f, 0.235160f, 0.234788f, 0.234415f, + 0.234042f, 0.233669f, 0.233296f, 0.232923f, 0.232550f, 0.232177f, 0.231804f, 0.231431f, + 0.231058f, 0.230685f, 0.230312f, 0.229939f, 0.229565f, 0.229192f, 0.228819f, 0.228445f, + 0.228072f, 0.227699f, 0.227325f, 0.226952f, 0.226578f, 0.226205f, 0.225831f, 0.225458f, + 0.225084f, 0.224710f, 0.224337f, 0.223963f, 0.223589f, 0.223215f, 0.222841f, 0.222468f, + 0.222094f, 0.221720f, 0.221346f, 0.220972f, 0.220598f, 0.220224f, 0.219850f, 0.219475f, + 0.219101f, 0.218727f, 0.218353f, 0.217979f, 0.217604f, 0.217230f, 0.216856f, 0.216481f, + 0.216107f, 0.215732f, 0.215358f, 0.214983f, 0.214609f, 0.214234f, 0.213860f, 0.213485f, + 0.213110f, 0.212736f, 0.212361f, 0.211986f, 0.211611f, 0.211237f, 0.210862f, 0.210487f, + 0.210112f, 0.209737f, 0.209362f, 0.208987f, 0.208612f, 0.208237f, 0.207862f, 0.207487f, + 0.207111f, 0.206736f, 0.206361f, 0.205986f, 0.205610f, 0.205235f, 0.204860f, 0.204484f, + 0.204109f, 0.203734f, 0.203358f, 0.202983f, 0.202607f, 0.202231f, 0.201856f, 0.201480f, + 0.201105f, 0.200729f, 0.200353f, 0.199978f, 0.199602f, 0.199226f, 0.198850f, 0.198474f, + 0.198098f, 0.197722f, 0.197347f, 0.196971f, 0.196595f, 0.196219f, 0.195843f, 0.195466f, + 0.195090f, 0.194714f, 0.194338f, 0.193962f, 0.193586f, 0.193209f, 0.192833f, 0.192457f, + 0.192080f, 0.191704f, 0.191328f, 0.190951f, 0.190575f, 0.190198f, 0.189822f, 0.189445f, + 0.189069f, 0.188692f, 0.188315f, 0.187939f, 0.187562f, 0.187185f, 0.186809f, 0.186432f, + 0.186055f, 0.185678f, 0.185301f, 0.184925f, 0.184548f, 0.184171f, 0.183794f, 0.183417f, + 0.183040f, 0.182663f, 0.182286f, 0.181909f, 0.181532f, 0.181154f, 0.180777f, 0.180400f, + 0.180023f, 0.179646f, 0.179268f, 0.178891f, 0.178514f, 0.178136f, 0.177759f, 0.177382f, + 0.177004f, 0.176627f, 0.176249f, 0.175872f, 0.175494f, 0.175117f, 0.174739f, 0.174362f, + 0.173984f, 0.173606f, 0.173229f, 0.172851f, 0.172473f, 0.172095f, 0.171718f, 0.171340f, + 0.170962f, 0.170584f, 0.170206f, 0.169828f, 0.169450f, 0.169072f, 0.168694f, 0.168316f, + 0.167938f, 0.167560f, 0.167182f, 0.166804f, 0.166426f, 0.166048f, 0.165670f, 0.165291f, + 0.164913f, 0.164535f, 0.164157f, 0.163778f, 0.163400f, 0.163022f, 0.162643f, 0.162265f, + 0.161886f, 0.161508f, 0.161129f, 0.160751f, 0.160372f, 0.159994f, 0.159615f, 0.159237f, + 0.158858f, 0.158480f, 0.158101f, 0.157722f, 0.157343f, 0.156965f, 0.156586f, 0.156207f, + 0.155828f, 0.155450f, 0.155071f, 0.154692f, 0.154313f, 0.153934f, 0.153555f, 0.153176f, + 0.152797f, 0.152418f, 0.152039f, 0.151660f, 0.151281f, 0.150902f, 0.150523f, 0.150144f, + 0.149765f, 0.149385f, 0.149006f, 0.148627f, 0.148248f, 0.147868f, 0.147489f, 0.147110f, + 0.146730f, 0.146351f, 0.145972f, 0.145592f, 0.145213f, 0.144833f, 0.144454f, 0.144075f, + 0.143695f, 0.143316f, 0.142936f, 0.142556f, 0.142177f, 0.141797f, 0.141418f, 0.141038f, + 0.140658f, 0.140279f, 0.139899f, 0.139519f, 0.139139f, 0.138760f, 0.138380f, 0.138000f, + 0.137620f, 0.137240f, 0.136860f, 0.136480f, 0.136101f, 0.135721f, 0.135341f, 0.134961f, + 0.134581f, 0.134201f, 0.133821f, 0.133441f, 0.133061f, 0.132680f, 0.132300f, 0.131920f, + 0.131540f, 0.131160f, 0.130780f, 0.130399f, 0.130019f, 0.129639f, 0.129259f, 0.128878f, + 0.128498f, 0.128118f, 0.127737f, 0.127357f, 0.126977f, 0.126596f, 0.126216f, 0.125835f, + 0.125455f, 0.125075f, 0.124694f, 0.124314f, 0.123933f, 0.123552f, 0.123172f, 0.122791f, + 0.122411f, 0.122030f, 0.121649f, 0.121269f, 0.120888f, 0.120507f, 0.120127f, 0.119746f, + 0.119365f, 0.118984f, 0.118604f, 0.118223f, 0.117842f, 0.117461f, 0.117080f, 0.116700f, + 0.116319f, 0.115938f, 0.115557f, 0.115176f, 0.114795f, 0.114414f, 0.114033f, 0.113652f, + 0.113271f, 0.112890f, 0.112509f, 0.112128f, 0.111747f, 0.111366f, 0.110984f, 0.110603f, + 0.110222f, 0.109841f, 0.109460f, 0.109079f, 0.108697f, 0.108316f, 0.107935f, 0.107554f, + 0.107172f, 0.106791f, 0.106410f, 0.106028f, 0.105647f, 0.105266f, 0.104884f, 0.104503f, + 0.104122f, 0.103740f, 0.103359f, 0.102977f, 0.102596f, 0.102214f, 0.101833f, 0.101451f, + 0.101070f, 0.100688f, 0.100307f, 0.099925f, 0.099544f, 0.099162f, 0.098780f, 0.098399f, + 0.098017f, 0.097635f, 0.097254f, 0.096872f, 0.096490f, 0.096109f, 0.095727f, 0.095345f, + 0.094963f, 0.094582f, 0.094200f, 0.093818f, 0.093436f, 0.093055f, 0.092673f, 0.092291f, + 0.091909f, 0.091527f, 0.091145f, 0.090763f, 0.090381f, 0.089999f, 0.089617f, 0.089236f, + 0.088854f, 0.088472f, 0.088090f, 0.087708f, 0.087326f, 0.086943f, 0.086561f, 0.086179f, + 0.085797f, 0.085415f, 0.085033f, 0.084651f, 0.084269f, 0.083887f, 0.083505f, 0.083122f, + 0.082740f, 0.082358f, 0.081976f, 0.081594f, 0.081211f, 0.080829f, 0.080447f, 0.080065f, + 0.079682f, 0.079300f, 0.078918f, 0.078536f, 0.078153f, 0.077771f, 0.077389f, 0.077006f, + 0.076624f, 0.076241f, 0.075859f, 0.075477f, 0.075094f, 0.074712f, 0.074329f, 0.073947f, + 0.073565f, 0.073182f, 0.072800f, 0.072417f, 0.072035f, 0.071652f, 0.071270f, 0.070887f, + 0.070505f, 0.070122f, 0.069739f, 0.069357f, 0.068974f, 0.068592f, 0.068209f, 0.067827f, + 0.067444f, 0.067061f, 0.066679f, 0.066296f, 0.065913f, 0.065531f, 0.065148f, 0.064765f, + 0.064383f, 0.064000f, 0.063617f, 0.063234f, 0.062852f, 0.062469f, 0.062086f, 0.061704f, + 0.061321f, 0.060938f, 0.060555f, 0.060172f, 0.059790f, 0.059407f, 0.059024f, 0.058641f, + 0.058258f, 0.057875f, 0.057493f, 0.057110f, 0.056727f, 0.056344f, 0.055961f, 0.055578f, + 0.055195f, 0.054812f, 0.054429f, 0.054046f, 0.053664f, 0.053281f, 0.052898f, 0.052515f, + 0.052132f, 0.051749f, 0.051366f, 0.050983f, 0.050600f, 0.050217f, 0.049834f, 0.049451f, + 0.049068f, 0.048685f, 0.048302f, 0.047919f, 0.047535f, 0.047152f, 0.046769f, 0.046386f, + 0.046003f, 0.045620f, 0.045237f, 0.044854f, 0.044471f, 0.044088f, 0.043705f, 0.043321f, + 0.042938f, 0.042555f, 0.042172f, 0.041789f, 0.041406f, 0.041022f, 0.040639f, 0.040256f, + 0.039873f, 0.039490f, 0.039107f, 0.038723f, 0.038340f, 0.037957f, 0.037574f, 0.037190f, + 0.036807f, 0.036424f, 0.036041f, 0.035657f, 0.035274f, 0.034891f, 0.034508f, 0.034124f, + 0.033741f, 0.033358f, 0.032975f, 0.032591f, 0.032208f, 0.031825f, 0.031441f, 0.031058f, + 0.030675f, 0.030291f, 0.029908f, 0.029525f, 0.029142f, 0.028758f, 0.028375f, 0.027991f, + 0.027608f, 0.027225f, 0.026841f, 0.026458f, 0.026075f, 0.025691f, 0.025308f, 0.024925f, + 0.024541f, 0.024158f, 0.023774f, 0.023391f, 0.023008f, 0.022624f, 0.022241f, 0.021857f, + 0.021474f, 0.021091f, 0.020707f, 0.020324f, 0.019940f, 0.019557f, 0.019174f, 0.018790f, + 0.018407f, 0.018023f, 0.017640f, 0.017256f, 0.016873f, 0.016490f, 0.016106f, 0.015723f, + 0.015339f, 0.014956f, 0.014572f, 0.014189f, 0.013805f, 0.013422f, 0.013038f, 0.012655f, + 0.012272f, 0.011888f, 0.011505f, 0.011121f, 0.010738f, 0.010354f, 0.009971f, 0.009587f, + 0.009204f, 0.008820f, 0.008437f, 0.008053f, 0.007670f, 0.007286f, 0.006903f, 0.006519f, + 0.006136f, 0.005752f, 0.005369f, 0.004985f, 0.004602f, 0.004218f, 0.003835f, 0.003451f, + 0.003068f, 0.002684f, 0.002301f, 0.001917f, 0.001534f, 0.001150f, 0.000767f, 0.000383f, + 0.000000f, 0.000383f, 0.000767f, 0.001150f, 0.001534f, 0.001917f, 0.002301f, 0.002684f, + 0.003068f, 0.003451f, 0.003835f, 0.004218f, 0.004602f, 0.004985f, 0.005369f, 0.005752f, + 0.006136f, 0.006519f, 0.006903f, 0.007286f, 0.007670f, 0.008053f, 0.008437f, 0.008820f, + 0.009204f, 0.009587f, 0.009971f, 0.010354f, 0.010738f, 0.011121f, 0.011505f, 0.011888f, + 0.012272f, 0.012655f, 0.013038f, 0.013422f, 0.013805f, 0.014189f, 0.014572f, 0.014956f, + 0.015339f, 0.015723f, 0.016106f, 0.016490f, 0.016873f, 0.017256f, 0.017640f, 0.018023f, + 0.018407f, 0.018790f, 0.019174f, 0.019557f, 0.019940f, 0.020324f, 0.020707f, 0.021091f, + 0.021474f, 0.021857f, 0.022241f, 0.022624f, 0.023008f, 0.023391f, 0.023774f, 0.024158f, + 0.024541f, 0.024925f, 0.025308f, 0.025691f, 0.026075f, 0.026458f, 0.026841f, 0.027225f, + 0.027608f, 0.027991f, 0.028375f, 0.028758f, 0.029142f, 0.029525f, 0.029908f, 0.030291f, + 0.030675f, 0.031058f, 0.031441f, 0.031825f, 0.032208f, 0.032591f, 0.032975f, 0.033358f, + 0.033741f, 0.034124f, 0.034508f, 0.034891f, 0.035274f, 0.035657f, 0.036041f, 0.036424f, + 0.036807f, 0.037190f, 0.037574f, 0.037957f, 0.038340f, 0.038723f, 0.039107f, 0.039490f, + 0.039873f, 0.040256f, 0.040639f, 0.041022f, 0.041406f, 0.041789f, 0.042172f, 0.042555f, + 0.042938f, 0.043321f, 0.043705f, 0.044088f, 0.044471f, 0.044854f, 0.045237f, 0.045620f, + 0.046003f, 0.046386f, 0.046769f, 0.047152f, 0.047535f, 0.047919f, 0.048302f, 0.048685f, + 0.049068f, 0.049451f, 0.049834f, 0.050217f, 0.050600f, 0.050983f, 0.051366f, 0.051749f, + 0.052132f, 0.052515f, 0.052898f, 0.053281f, 0.053664f, 0.054046f, 0.054429f, 0.054812f, + 0.055195f, 0.055578f, 0.055961f, 0.056344f, 0.056727f, 0.057110f, 0.057493f, 0.057875f, + 0.058258f, 0.058641f, 0.059024f, 0.059407f, 0.059790f, 0.060172f, 0.060555f, 0.060938f, + 0.061321f, 0.061704f, 0.062086f, 0.062469f, 0.062852f, 0.063234f, 0.063617f, 0.064000f, + 0.064383f, 0.064765f, 0.065148f, 0.065531f, 0.065913f, 0.066296f, 0.066679f, 0.067061f, + 0.067444f, 0.067827f, 0.068209f, 0.068592f, 0.068974f, 0.069357f, 0.069739f, 0.070122f, + 0.070505f, 0.070887f, 0.071270f, 0.071652f, 0.072035f, 0.072417f, 0.072800f, 0.073182f, + 0.073565f, 0.073947f, 0.074329f, 0.074712f, 0.075094f, 0.075477f, 0.075859f, 0.076241f, + 0.076624f, 0.077006f, 0.077389f, 0.077771f, 0.078153f, 0.078536f, 0.078918f, 0.079300f, + 0.079682f, 0.080065f, 0.080447f, 0.080829f, 0.081211f, 0.081594f, 0.081976f, 0.082358f, + 0.082740f, 0.083122f, 0.083505f, 0.083887f, 0.084269f, 0.084651f, 0.085033f, 0.085415f, + 0.085797f, 0.086179f, 0.086561f, 0.086943f, 0.087326f, 0.087708f, 0.088090f, 0.088472f, + 0.088854f, 0.089236f, 0.089617f, 0.089999f, 0.090381f, 0.090763f, 0.091145f, 0.091527f, + 0.091909f, 0.092291f, 0.092673f, 0.093055f, 0.093436f, 0.093818f, 0.094200f, 0.094582f, + 0.094963f, 0.095345f, 0.095727f, 0.096109f, 0.096490f, 0.096872f, 0.097254f, 0.097635f, + 0.098017f, 0.098399f, 0.098780f, 0.099162f, 0.099544f, 0.099925f, 0.100307f, 0.100688f, + 0.101070f, 0.101451f, 0.101833f, 0.102214f, 0.102596f, 0.102977f, 0.103359f, 0.103740f, + 0.104122f, 0.104503f, 0.104884f, 0.105266f, 0.105647f, 0.106028f, 0.106410f, 0.106791f, + 0.107172f, 0.107554f, 0.107935f, 0.108316f, 0.108697f, 0.109079f, 0.109460f, 0.109841f, + 0.110222f, 0.110603f, 0.110984f, 0.111366f, 0.111747f, 0.112128f, 0.112509f, 0.112890f, + 0.113271f, 0.113652f, 0.114033f, 0.114414f, 0.114795f, 0.115176f, 0.115557f, 0.115938f, + 0.116319f, 0.116700f, 0.117080f, 0.117461f, 0.117842f, 0.118223f, 0.118604f, 0.118984f, + 0.119365f, 0.119746f, 0.120127f, 0.120507f, 0.120888f, 0.121269f, 0.121649f, 0.122030f, + 0.122411f, 0.122791f, 0.123172f, 0.123552f, 0.123933f, 0.124314f, 0.124694f, 0.125075f, + 0.125455f, 0.125835f, 0.126216f, 0.126596f, 0.126977f, 0.127357f, 0.127737f, 0.128118f, + 0.128498f, 0.128878f, 0.129259f, 0.129639f, 0.130019f, 0.130399f, 0.130780f, 0.131160f, + 0.131540f, 0.131920f, 0.132300f, 0.132680f, 0.133061f, 0.133441f, 0.133821f, 0.134201f, + 0.134581f, 0.134961f, 0.135341f, 0.135721f, 0.136101f, 0.136480f, 0.136860f, 0.137240f, + 0.137620f, 0.138000f, 0.138380f, 0.138760f, 0.139139f, 0.139519f, 0.139899f, 0.140279f, + 0.140658f, 0.141038f, 0.141418f, 0.141797f, 0.142177f, 0.142556f, 0.142936f, 0.143316f, + 0.143695f, 0.144075f, 0.144454f, 0.144833f, 0.145213f, 0.145592f, 0.145972f, 0.146351f, + 0.146730f, 0.147110f, 0.147489f, 0.147868f, 0.148248f, 0.148627f, 0.149006f, 0.149385f, + 0.149765f, 0.150144f, 0.150523f, 0.150902f, 0.151281f, 0.151660f, 0.152039f, 0.152418f, + 0.152797f, 0.153176f, 0.153555f, 0.153934f, 0.154313f, 0.154692f, 0.155071f, 0.155450f, + 0.155828f, 0.156207f, 0.156586f, 0.156965f, 0.157343f, 0.157722f, 0.158101f, 0.158480f, + 0.158858f, 0.159237f, 0.159615f, 0.159994f, 0.160372f, 0.160751f, 0.161129f, 0.161508f, + 0.161886f, 0.162265f, 0.162643f, 0.163022f, 0.163400f, 0.163778f, 0.164157f, 0.164535f, + 0.164913f, 0.165291f, 0.165670f, 0.166048f, 0.166426f, 0.166804f, 0.167182f, 0.167560f, + 0.167938f, 0.168316f, 0.168694f, 0.169072f, 0.169450f, 0.169828f, 0.170206f, 0.170584f, + 0.170962f, 0.171340f, 0.171718f, 0.172095f, 0.172473f, 0.172851f, 0.173229f, 0.173606f, + 0.173984f, 0.174362f, 0.174739f, 0.175117f, 0.175494f, 0.175872f, 0.176249f, 0.176627f, + 0.177004f, 0.177382f, 0.177759f, 0.178136f, 0.178514f, 0.178891f, 0.179268f, 0.179646f, + 0.180023f, 0.180400f, 0.180777f, 0.181154f, 0.181532f, 0.181909f, 0.182286f, 0.182663f, + 0.183040f, 0.183417f, 0.183794f, 0.184171f, 0.184548f, 0.184925f, 0.185301f, 0.185678f, + 0.186055f, 0.186432f, 0.186809f, 0.187185f, 0.187562f, 0.187939f, 0.188315f, 0.188692f, + 0.189069f, 0.189445f, 0.189822f, 0.190198f, 0.190575f, 0.190951f, 0.191328f, 0.191704f, + 0.192080f, 0.192457f, 0.192833f, 0.193209f, 0.193586f, 0.193962f, 0.194338f, 0.194714f, + 0.195090f, 0.195466f, 0.195843f, 0.196219f, 0.196595f, 0.196971f, 0.197347f, 0.197722f, + 0.198098f, 0.198474f, 0.198850f, 0.199226f, 0.199602f, 0.199978f, 0.200353f, 0.200729f, + 0.201105f, 0.201480f, 0.201856f, 0.202231f, 0.202607f, 0.202983f, 0.203358f, 0.203734f, + 0.204109f, 0.204484f, 0.204860f, 0.205235f, 0.205610f, 0.205986f, 0.206361f, 0.206736f, + 0.207111f, 0.207487f, 0.207862f, 0.208237f, 0.208612f, 0.208987f, 0.209362f, 0.209737f, + 0.210112f, 0.210487f, 0.210862f, 0.211237f, 0.211611f, 0.211986f, 0.212361f, 0.212736f, + 0.213110f, 0.213485f, 0.213860f, 0.214234f, 0.214609f, 0.214983f, 0.215358f, 0.215732f, + 0.216107f, 0.216481f, 0.216856f, 0.217230f, 0.217604f, 0.217979f, 0.218353f, 0.218727f, + 0.219101f, 0.219475f, 0.219850f, 0.220224f, 0.220598f, 0.220972f, 0.221346f, 0.221720f, + 0.222094f, 0.222468f, 0.222841f, 0.223215f, 0.223589f, 0.223963f, 0.224337f, 0.224710f, + 0.225084f, 0.225458f, 0.225831f, 0.226205f, 0.226578f, 0.226952f, 0.227325f, 0.227699f, + 0.228072f, 0.228445f, 0.228819f, 0.229192f, 0.229565f, 0.229939f, 0.230312f, 0.230685f, + 0.231058f, 0.231431f, 0.231804f, 0.232177f, 0.232550f, 0.232923f, 0.233296f, 0.233669f, + 0.234042f, 0.234415f, 0.234788f, 0.235160f, 0.235533f, 0.235906f, 0.236278f, 0.236651f, + 0.237024f, 0.237396f, 0.237769f, 0.238141f, 0.238514f, 0.238886f, 0.239258f, 0.239631f, + 0.240003f, 0.240375f, 0.240748f, 0.241120f, 0.241492f, 0.241864f, 0.242236f, 0.242608f, + 0.242980f, 0.243352f, 0.243724f, 0.244096f, 0.244468f, 0.244840f, 0.245212f, 0.245583f, + 0.245955f, 0.246327f, 0.246698f, 0.247070f, 0.247442f, 0.247813f, 0.248185f, 0.248556f, + 0.248928f, 0.249299f, 0.249670f, 0.250042f, 0.250413f, 0.250784f, 0.251155f, 0.251527f, + 0.251898f, 0.252269f, 0.252640f, 0.253011f, 0.253382f, 0.253753f, 0.254124f, 0.254495f, + 0.254866f, 0.255236f, 0.255607f, 0.255978f, 0.256349f, 0.256719f, 0.257090f, 0.257461f, + 0.257831f, 0.258202f, 0.258572f, 0.258943f, 0.259313f, 0.259683f, 0.260054f, 0.260424f, + 0.260794f, 0.261164f, 0.261534f, 0.261905f, 0.262275f, 0.262645f, 0.263015f, 0.263385f, + 0.263755f, 0.264125f, 0.264494f, 0.264864f, 0.265234f, 0.265604f, 0.265973f, 0.266343f, + 0.266713f, 0.267082f, 0.267452f, 0.267821f, 0.268191f, 0.268560f, 0.268930f, 0.269299f, + 0.269668f, 0.270038f, 0.270407f, 0.270776f, 0.271145f, 0.271514f, 0.271883f, 0.272252f, + 0.272621f, 0.272990f, 0.273359f, 0.273728f, 0.274097f, 0.274466f, 0.274834f, 0.275203f, + 0.275572f, 0.275940f, 0.276309f, 0.276678f, 0.277046f, 0.277415f, 0.277783f, 0.278151f, + 0.278520f, 0.278888f, 0.279256f, 0.279624f, 0.279993f, 0.280361f, 0.280729f, 0.281097f, + 0.281465f, 0.281833f, 0.282201f, 0.282569f, 0.282937f, 0.283304f, 0.283672f, 0.284040f, + 0.284408f, 0.284775f, 0.285143f, 0.285510f, 0.285878f, 0.286245f, 0.286613f, 0.286980f, + 0.287347f, 0.287715f, 0.288082f, 0.288449f, 0.288816f, 0.289184f, 0.289551f, 0.289918f, + 0.290285f, 0.290652f, 0.291019f, 0.291385f, 0.291752f, 0.292119f, 0.292486f, 0.292852f, + 0.293219f, 0.293586f, 0.293952f, 0.294319f, 0.294685f, 0.295052f, 0.295418f, 0.295785f, + 0.296151f, 0.296517f, 0.296883f, 0.297250f, 0.297616f, 0.297982f, 0.298348f, 0.298714f, + 0.299080f, 0.299446f, 0.299812f, 0.300177f, 0.300543f, 0.300909f, 0.301275f, 0.301640f, + 0.302006f, 0.302372f, 0.302737f, 0.303103f, 0.303468f, 0.303833f, 0.304199f, 0.304564f, + 0.304929f, 0.305294f, 0.305660f, 0.306025f, 0.306390f, 0.306755f, 0.307120f, 0.307485f, + 0.307850f, 0.308214f, 0.308579f, 0.308944f, 0.309309f, 0.309673f, 0.310038f, 0.310403f, + 0.310767f, 0.311132f, 0.311496f, 0.311860f, 0.312225f, 0.312589f, 0.312953f, 0.313318f, + 0.313682f, 0.314046f, 0.314410f, 0.314774f, 0.315138f, 0.315502f, 0.315866f, 0.316230f, + 0.316593f, 0.316957f, 0.317321f, 0.317684f, 0.318048f, 0.318412f, 0.318775f, 0.319139f, + 0.319502f, 0.319865f, 0.320229f, 0.320592f, 0.320955f, 0.321318f, 0.321682f, 0.322045f, + 0.322408f, 0.322771f, 0.323134f, 0.323497f, 0.323859f, 0.324222f, 0.324585f, 0.324948f, + 0.325310f, 0.325673f, 0.326035f, 0.326398f, 0.326760f, 0.327123f, 0.327485f, 0.327848f, + 0.328210f, 0.328572f, 0.328934f, 0.329296f, 0.329658f, 0.330020f, 0.330382f, 0.330744f, + 0.331106f, 0.331468f, 0.331830f, 0.332192f, 0.332553f, 0.332915f, 0.333277f, 0.333638f, + 0.334000f, 0.334361f, 0.334722f, 0.335084f, 0.335445f, 0.335806f, 0.336168f, 0.336529f, + 0.336890f, 0.337251f, 0.337612f, 0.337973f, 0.338334f, 0.338695f, 0.339055f, 0.339416f, + 0.339777f, 0.340138f, 0.340498f, 0.340859f, 0.341219f, 0.341580f, 0.341940f, 0.342300f, + 0.342661f, 0.343021f, 0.343381f, 0.343741f, 0.344101f, 0.344461f, 0.344821f, 0.345181f, + 0.345541f, 0.345901f, 0.346261f, 0.346621f, 0.346980f, 0.347340f, 0.347700f, 0.348059f, + 0.348419f, 0.348778f, 0.349138f, 0.349497f, 0.349856f, 0.350215f, 0.350575f, 0.350934f, + 0.351293f, 0.351652f, 0.352011f, 0.352370f, 0.352729f, 0.353087f, 0.353446f, 0.353805f, + 0.354164f, 0.354522f, 0.354881f, 0.355239f, 0.355598f, 0.355956f, 0.356314f, 0.356673f, + 0.357031f, 0.357389f, 0.357747f, 0.358105f, 0.358463f, 0.358821f, 0.359179f, 0.359537f, + 0.359895f, 0.360253f, 0.360611f, 0.360968f, 0.361326f, 0.361683f, 0.362041f, 0.362398f, + 0.362756f, 0.363113f, 0.363470f, 0.363828f, 0.364185f, 0.364542f, 0.364899f, 0.365256f, + 0.365613f, 0.365970f, 0.366327f, 0.366684f, 0.367040f, 0.367397f, 0.367754f, 0.368110f, + 0.368467f, 0.368823f, 0.369180f, 0.369536f, 0.369892f, 0.370249f, 0.370605f, 0.370961f, + 0.371317f, 0.371673f, 0.372029f, 0.372385f, 0.372741f, 0.373097f, 0.373453f, 0.373808f, + 0.374164f, 0.374520f, 0.374875f, 0.375231f, 0.375586f, 0.375942f, 0.376297f, 0.376652f, + 0.377007f, 0.377363f, 0.377718f, 0.378073f, 0.378428f, 0.378783f, 0.379138f, 0.379492f, + 0.379847f, 0.380202f, 0.380557f, 0.380911f, 0.381266f, 0.381620f, 0.381975f, 0.382329f, + 0.382683f, 0.383038f, 0.383392f, 0.383746f, 0.384100f, 0.384454f, 0.384808f, 0.385162f, + 0.385516f, 0.385870f, 0.386224f, 0.386577f, 0.386931f, 0.387285f, 0.387638f, 0.387992f, + 0.388345f, 0.388698f, 0.389052f, 0.389405f, 0.389758f, 0.390111f, 0.390464f, 0.390817f, + 0.391170f, 0.391523f, 0.391876f, 0.392229f, 0.392582f, 0.392934f, 0.393287f, 0.393640f, + 0.393992f, 0.394344f, 0.394697f, 0.395049f, 0.395401f, 0.395754f, 0.396106f, 0.396458f, + 0.396810f, 0.397162f, 0.397514f, 0.397866f, 0.398218f, 0.398569f, 0.398921f, 0.399273f, + 0.399624f, 0.399976f, 0.400327f, 0.400679f, 0.401030f, 0.401381f, 0.401732f, 0.402084f, + 0.402435f, 0.402786f, 0.403137f, 0.403488f, 0.403838f, 0.404189f, 0.404540f, 0.404891f, + 0.405241f, 0.405592f, 0.405942f, 0.406293f, 0.406643f, 0.406994f, 0.407344f, 0.407694f, + 0.408044f, 0.408394f, 0.408744f, 0.409094f, 0.409444f, 0.409794f, 0.410144f, 0.410493f, + 0.410843f, 0.411193f, 0.411542f, 0.411892f, 0.412241f, 0.412591f, 0.412940f, 0.413289f, + 0.413638f, 0.413987f, 0.414337f, 0.414685f, 0.415034f, 0.415383f, 0.415732f, 0.416081f, + 0.416430f, 0.416778f, 0.417127f, 0.417475f, 0.417824f, 0.418172f, 0.418520f, 0.418869f, + 0.419217f, 0.419565f, 0.419913f, 0.420261f, 0.420609f, 0.420957f, 0.421305f, 0.421653f, + 0.422000f, 0.422348f, 0.422695f, 0.423043f, 0.423390f, 0.423738f, 0.424085f, 0.424432f, + 0.424780f, 0.425127f, 0.425474f, 0.425821f, 0.426168f, 0.426515f, 0.426862f, 0.427208f, + 0.427555f, 0.427902f, 0.428248f, 0.428595f, 0.428941f, 0.429288f, 0.429634f, 0.429980f, + 0.430326f, 0.430673f, 0.431019f, 0.431365f, 0.431711f, 0.432057f, 0.432402f, 0.432748f, + 0.433094f, 0.433439f, 0.433785f, 0.434131f, 0.434476f, 0.434821f, 0.435167f, 0.435512f, + 0.435857f, 0.436202f, 0.436547f, 0.436892f, 0.437237f, 0.437582f, 0.437927f, 0.438272f, + 0.438616f, 0.438961f, 0.439305f, 0.439650f, 0.439994f, 0.440339f, 0.440683f, 0.441027f, + 0.441371f, 0.441715f, 0.442059f, 0.442403f, 0.442747f, 0.443091f, 0.443435f, 0.443779f, + 0.444122f, 0.444466f, 0.444809f, 0.445153f, 0.445496f, 0.445839f, 0.446183f, 0.446526f, + 0.446869f, 0.447212f, 0.447555f, 0.447898f, 0.448241f, 0.448583f, 0.448926f, 0.449269f, + 0.449611f, 0.449954f, 0.450296f, 0.450639f, 0.450981f, 0.451323f, 0.451665f, 0.452008f, + 0.452350f, 0.452692f, 0.453033f, 0.453375f, 0.453717f, 0.454059f, 0.454400f, 0.454742f, + 0.455084f, 0.455425f, 0.455766f, 0.456108f, 0.456449f, 0.456790f, 0.457131f, 0.457472f, + 0.457813f, 0.458154f, 0.458495f, 0.458836f, 0.459177f, 0.459517f, 0.459858f, 0.460198f, + 0.460539f, 0.460879f, 0.461219f, 0.461560f, 0.461900f, 0.462240f, 0.462580f, 0.462920f, + 0.463260f, 0.463600f, 0.463939f, 0.464279f, 0.464619f, 0.464958f, 0.465298f, 0.465637f, + 0.465977f, 0.466316f, 0.466655f, 0.466994f, 0.467333f, 0.467672f, 0.468011f, 0.468350f, + 0.468689f, 0.469028f, 0.469366f, 0.469705f, 0.470043f, 0.470382f, 0.470720f, 0.471058f, + 0.471397f, 0.471735f, 0.472073f, 0.472411f, 0.472749f, 0.473087f, 0.473425f, 0.473763f, + 0.474100f, 0.474438f, 0.474775f, 0.475113f, 0.475450f, 0.475788f, 0.476125f, 0.476462f, + 0.476799f, 0.477136f, 0.477473f, 0.477810f, 0.478147f, 0.478484f, 0.478821f, 0.479157f, + 0.479494f, 0.479830f, 0.480167f, 0.480503f, 0.480839f, 0.481176f, 0.481512f, 0.481848f, + 0.482184f, 0.482520f, 0.482856f, 0.483191f, 0.483527f, 0.483863f, 0.484198f, 0.484534f, + 0.484869f, 0.485205f, 0.485540f, 0.485875f, 0.486210f, 0.486545f, 0.486880f, 0.487215f, + 0.487550f, 0.487885f, 0.488220f, 0.488554f, 0.488889f, 0.489223f, 0.489558f, 0.489892f, + 0.490226f, 0.490561f, 0.490895f, 0.491229f, 0.491563f, 0.491897f, 0.492231f, 0.492564f, + 0.492898f, 0.493232f, 0.493565f, 0.493899f, 0.494232f, 0.494566f, 0.494899f, 0.495232f, + 0.495565f, 0.495898f, 0.496231f, 0.496564f, 0.496897f, 0.497230f, 0.497562f, 0.497895f, + 0.498228f, 0.498560f, 0.498893f, 0.499225f, 0.499557f, 0.499889f, 0.500221f, 0.500553f, + 0.500885f, 0.501217f, 0.501549f, 0.501881f, 0.502212f, 0.502544f, 0.502876f, 0.503207f, + 0.503538f, 0.503870f, 0.504201f, 0.504532f, 0.504863f, 0.505194f, 0.505525f, 0.505856f, + 0.506187f, 0.506517f, 0.506848f, 0.507179f, 0.507509f, 0.507839f, 0.508170f, 0.508500f, + 0.508830f, 0.509160f, 0.509490f, 0.509820f, 0.510150f, 0.510480f, 0.510810f, 0.511139f, + 0.511469f, 0.511798f, 0.512128f, 0.512457f, 0.512786f, 0.513116f, 0.513445f, 0.513774f, + 0.514103f, 0.514432f, 0.514760f, 0.515089f, 0.515418f, 0.515746f, 0.516075f, 0.516403f, + 0.516732f, 0.517060f, 0.517388f, 0.517716f, 0.518045f, 0.518372f, 0.518700f, 0.519028f, + 0.519356f, 0.519684f, 0.520011f, 0.520339f, 0.520666f, 0.520994f, 0.521321f, 0.521648f, + 0.521975f, 0.522302f, 0.522629f, 0.522956f, 0.523283f, 0.523610f, 0.523937f, 0.524263f, + 0.524590f, 0.524916f, 0.525243f, 0.525569f, 0.525895f, 0.526221f, 0.526547f, 0.526873f, + 0.527199f, 0.527525f, 0.527851f, 0.528176f, 0.528502f, 0.528828f, 0.529153f, 0.529478f, + 0.529804f, 0.530129f, 0.530454f, 0.530779f, 0.531104f, 0.531429f, 0.531754f, 0.532078f, + 0.532403f, 0.532728f, 0.533052f, 0.533377f, 0.533701f, 0.534025f, 0.534349f, 0.534674f, + 0.534998f, 0.535322f, 0.535645f, 0.535969f, 0.536293f, 0.536617f, 0.536940f, 0.537264f, + 0.537587f, 0.537910f, 0.538234f, 0.538557f, 0.538880f, 0.539203f, 0.539526f, 0.539849f, + 0.540171f, 0.540494f, 0.540817f, 0.541139f, 0.541462f, 0.541784f, 0.542106f, 0.542429f, + 0.542751f, 0.543073f, 0.543395f, 0.543717f, 0.544039f, 0.544360f, 0.544682f, 0.545003f, + 0.545325f, 0.545646f, 0.545968f, 0.546289f, 0.546610f, 0.546931f, 0.547252f, 0.547573f, + 0.547894f, 0.548215f, 0.548536f, 0.548856f, 0.549177f, 0.549497f, 0.549818f, 0.550138f, + 0.550458f, 0.550778f, 0.551098f, 0.551418f, 0.551738f, 0.552058f, 0.552378f, 0.552697f, + 0.553017f, 0.553336f, 0.553656f, 0.553975f, 0.554294f, 0.554613f, 0.554932f, 0.555251f, + 0.555570f, 0.555889f, 0.556208f, 0.556526f, 0.556845f, 0.557164f, 0.557482f, 0.557800f, + 0.558119f, 0.558437f, 0.558755f, 0.559073f, 0.559391f, 0.559709f, 0.560026f, 0.560344f, + 0.560662f, 0.560979f, 0.561297f, 0.561614f, 0.561931f, 0.562248f, 0.562565f, 0.562882f, + 0.563199f, 0.563516f, 0.563833f, 0.564150f, 0.564466f, 0.564783f, 0.565099f, 0.565416f, + 0.565732f, 0.566048f, 0.566364f, 0.566680f, 0.566996f, 0.567312f, 0.567628f, 0.567943f, + 0.568259f, 0.568574f, 0.568890f, 0.569205f, 0.569521f, 0.569836f, 0.570151f, 0.570466f, + 0.570781f, 0.571096f, 0.571410f, 0.571725f, 0.572040f, 0.572354f, 0.572669f, 0.572983f, + 0.573297f, 0.573611f, 0.573925f, 0.574239f, 0.574553f, 0.574867f, 0.575181f, 0.575495f, + 0.575808f, 0.576122f, 0.576435f, 0.576748f, 0.577062f, 0.577375f, 0.577688f, 0.578001f, + 0.578314f, 0.578627f, 0.578939f, 0.579252f, 0.579565f, 0.579877f, 0.580189f, 0.580502f, + 0.580814f, 0.581126f, 0.581438f, 0.581750f, 0.582062f, 0.582374f, 0.582685f, 0.582997f, + 0.583309f, 0.583620f, 0.583931f, 0.584243f, 0.584554f, 0.584865f, 0.585176f, 0.585487f, + 0.585798f, 0.586109f, 0.586419f, 0.586730f, 0.587040f, 0.587351f, 0.587661f, 0.587971f, + 0.588282f, 0.588592f, 0.588902f, 0.589212f, 0.589521f, 0.589831f, 0.590141f, 0.590450f, + 0.590760f, 0.591069f, 0.591378f, 0.591688f, 0.591997f, 0.592306f, 0.592615f, 0.592924f, + 0.593232f, 0.593541f, 0.593850f, 0.594158f, 0.594467f, 0.594775f, 0.595083f, 0.595391f, + 0.595699f, 0.596007f, 0.596315f, 0.596623f, 0.596931f, 0.597238f, 0.597546f, 0.597853f, + 0.598161f, 0.598468f, 0.598775f, 0.599082f, 0.599389f, 0.599696f, 0.600003f, 0.600310f, + 0.600616f, 0.600923f, 0.601230f, 0.601536f, 0.601842f, 0.602148f, 0.602455f, 0.602761f, + 0.603067f, 0.603372f, 0.603678f, 0.603984f, 0.604290f, 0.604595f, 0.604900f, 0.605206f, + 0.605511f, 0.605816f, 0.606121f, 0.606426f, 0.606731f, 0.607036f, 0.607341f, 0.607645f, + 0.607950f, 0.608254f, 0.608559f, 0.608863f, 0.609167f, 0.609471f, 0.609775f, 0.610079f, + 0.610383f, 0.610687f, 0.610990f, 0.611294f, 0.611597f, 0.611901f, 0.612204f, 0.612507f, + 0.612810f, 0.613113f, 0.613416f, 0.613719f, 0.614022f, 0.614324f, 0.614627f, 0.614929f, + 0.615232f, 0.615534f, 0.615836f, 0.616138f, 0.616440f, 0.616742f, 0.617044f, 0.617346f, + 0.617647f, 0.617949f, 0.618250f, 0.618552f, 0.618853f, 0.619154f, 0.619455f, 0.619756f, + 0.620057f, 0.620358f, 0.620659f, 0.620959f, 0.621260f, 0.621560f, 0.621861f, 0.622161f, + 0.622461f, 0.622761f, 0.623061f, 0.623361f, 0.623661f, 0.623961f, 0.624260f, 0.624560f, + 0.624860f, 0.625159f, 0.625458f, 0.625757f, 0.626056f, 0.626355f, 0.626654f, 0.626953f, + 0.627252f, 0.627550f, 0.627849f, 0.628147f, 0.628446f, 0.628744f, 0.629042f, 0.629340f, + 0.629638f, 0.629936f, 0.630234f, 0.630532f, 0.630829f, 0.631127f, 0.631424f, 0.631721f, + 0.632019f, 0.632316f, 0.632613f, 0.632910f, 0.633207f, 0.633504f, 0.633800f, 0.634097f, + 0.634393f, 0.634690f, 0.634986f, 0.635282f, 0.635578f, 0.635874f, 0.636170f, 0.636466f, + 0.636762f, 0.637057f, 0.637353f, 0.637649f, 0.637944f, 0.638239f, 0.638534f, 0.638829f, + 0.639124f, 0.639419f, 0.639714f, 0.640009f, 0.640303f, 0.640598f, 0.640892f, 0.641187f, + 0.641481f, 0.641775f, 0.642069f, 0.642363f, 0.642657f, 0.642951f, 0.643245f, 0.643538f, + 0.643832f, 0.644125f, 0.644418f, 0.644711f, 0.645005f, 0.645298f, 0.645590f, 0.645883f, + 0.646176f, 0.646469f, 0.646761f, 0.647054f, 0.647346f, 0.647638f, 0.647930f, 0.648222f, + 0.648514f, 0.648806f, 0.649098f, 0.649390f, 0.649681f, 0.649973f, 0.650264f, 0.650555f, + 0.650847f, 0.651138f, 0.651429f, 0.651720f, 0.652011f, 0.652301f, 0.652592f, 0.652882f, + 0.653173f, 0.653463f, 0.653753f, 0.654044f, 0.654334f, 0.654624f, 0.654913f, 0.655203f, + 0.655493f, 0.655782f, 0.656072f, 0.656361f, 0.656651f, 0.656940f, 0.657229f, 0.657518f, + 0.657807f, 0.658095f, 0.658384f, 0.658673f, 0.658961f, 0.659250f, 0.659538f, 0.659826f, + 0.660114f, 0.660402f, 0.660690f, 0.660978f, 0.661266f, 0.661553f, 0.661841f, 0.662128f, + 0.662416f, 0.662703f, 0.662990f, 0.663277f, 0.663564f, 0.663851f, 0.664138f, 0.664424f, + 0.664711f, 0.664997f, 0.665284f, 0.665570f, 0.665856f, 0.666142f, 0.666428f, 0.666714f, + 0.667000f, 0.667286f, 0.667571f, 0.667857f, 0.668142f, 0.668427f, 0.668712f, 0.668998f, + 0.669283f, 0.669567f, 0.669852f, 0.670137f, 0.670422f, 0.670706f, 0.670990f, 0.671275f, + 0.671559f, 0.671843f, 0.672127f, 0.672411f, 0.672695f, 0.672978f, 0.673262f, 0.673546f, + 0.673829f, 0.674112f, 0.674396f, 0.674679f, 0.674962f, 0.675245f, 0.675527f, 0.675810f, + 0.676093f, 0.676375f, 0.676658f, 0.676940f, 0.677222f, 0.677504f, 0.677786f, 0.678068f, + 0.678350f, 0.678632f, 0.678913f, 0.679195f, 0.679476f, 0.679758f, 0.680039f, 0.680320f, + 0.680601f, 0.680882f, 0.681163f, 0.681443f, 0.681724f, 0.682005f, 0.682285f, 0.682565f, + 0.682846f, 0.683126f, 0.683406f, 0.683686f, 0.683965f, 0.684245f, 0.684525f, 0.684804f, + 0.685084f, 0.685363f, 0.685642f, 0.685921f, 0.686200f, 0.686479f, 0.686758f, 0.687037f, + 0.687315f, 0.687594f, 0.687872f, 0.688151f, 0.688429f, 0.688707f, 0.688985f, 0.689263f, + 0.689541f, 0.689818f, 0.690096f, 0.690373f, 0.690651f, 0.690928f, 0.691205f, 0.691482f, + 0.691759f, 0.692036f, 0.692313f, 0.692590f, 0.692866f, 0.693143f, 0.693419f, 0.693695f, + 0.693971f, 0.694248f, 0.694524f, 0.694799f, 0.695075f, 0.695351f, 0.695626f, 0.695902f, + 0.696177f, 0.696452f, 0.696728f, 0.697003f, 0.697277f, 0.697552f, 0.697827f, 0.698102f, + 0.698376f, 0.698651f, 0.698925f, 0.699199f, 0.699473f, 0.699747f, 0.700021f, 0.700295f, + 0.700569f, 0.700842f, 0.701116f, 0.701389f, 0.701663f, 0.701936f, 0.702209f, 0.702482f, + 0.702755f, 0.703028f, 0.703300f, 0.703573f, 0.703845f, 0.704118f, 0.704390f, 0.704662f, + 0.704934f, 0.705206f, 0.705478f, 0.705750f, 0.706021f, 0.706293f, 0.706564f, 0.706836f, + 0.707107f, 0.707378f, 0.707649f, 0.707920f, 0.708191f, 0.708461f, 0.708732f, 0.709002f, + 0.709273f, 0.709543f, 0.709813f, 0.710083f, 0.710353f, 0.710623f, 0.710893f, 0.711163f, + 0.711432f, 0.711702f, 0.711971f, 0.712240f, 0.712509f, 0.712778f, 0.713047f, 0.713316f, + 0.713585f, 0.713853f, 0.714122f, 0.714390f, 0.714659f, 0.714927f, 0.715195f, 0.715463f, + 0.715731f, 0.715999f, 0.716266f, 0.716534f, 0.716801f, 0.717069f, 0.717336f, 0.717603f, + 0.717870f, 0.718137f, 0.718404f, 0.718670f, 0.718937f, 0.719204f, 0.719470f, 0.719736f, + 0.720003f, 0.720269f, 0.720535f, 0.720800f, 0.721066f, 0.721332f, 0.721597f, 0.721863f, + 0.722128f, 0.722393f, 0.722659f, 0.722924f, 0.723188f, 0.723453f, 0.723718f, 0.723983f, + 0.724247f, 0.724511f, 0.724776f, 0.725040f, 0.725304f, 0.725568f, 0.725832f, 0.726095f, + 0.726359f, 0.726623f, 0.726886f, 0.727149f, 0.727413f, 0.727676f, 0.727939f, 0.728202f, + 0.728464f, 0.728727f, 0.728990f, 0.729252f, 0.729514f, 0.729777f, 0.730039f, 0.730301f, + 0.730563f, 0.730825f, 0.731086f, 0.731348f, 0.731609f, 0.731871f, 0.732132f, 0.732393f, + 0.732654f, 0.732915f, 0.733176f, 0.733437f, 0.733697f, 0.733958f, 0.734218f, 0.734479f, + 0.734739f, 0.734999f, 0.735259f, 0.735519f, 0.735779f, 0.736038f, 0.736298f, 0.736557f, + 0.736817f, 0.737076f, 0.737335f, 0.737594f, 0.737853f, 0.738112f, 0.738370f, 0.738629f, + 0.738887f, 0.739146f, 0.739404f, 0.739662f, 0.739920f, 0.740178f, 0.740436f, 0.740694f, + 0.740951f, 0.741209f, 0.741466f, 0.741723f, 0.741980f, 0.742237f, 0.742494f, 0.742751f, + 0.743008f, 0.743265f, 0.743521f, 0.743777f, 0.744034f, 0.744290f, 0.744546f, 0.744802f, + 0.745058f, 0.745314f, 0.745569f, 0.745825f, 0.746080f, 0.746335f, 0.746591f, 0.746846f, + 0.747101f, 0.747355f, 0.747610f, 0.747865f, 0.748119f, 0.748374f, 0.748628f, 0.748882f, + 0.749136f, 0.749390f, 0.749644f, 0.749898f, 0.750152f, 0.750405f, 0.750659f, 0.750912f, + 0.751165f, 0.751418f, 0.751671f, 0.751924f, 0.752177f, 0.752429f, 0.752682f, 0.752934f, + 0.753187f, 0.753439f, 0.753691f, 0.753943f, 0.754195f, 0.754447f, 0.754698f, 0.754950f, + 0.755201f, 0.755453f, 0.755704f, 0.755955f, 0.756206f, 0.756457f, 0.756708f, 0.756958f, + 0.757209f, 0.757459f, 0.757710f, 0.757960f, 0.758210f, 0.758460f, 0.758710f, 0.758960f, + 0.759209f, 0.759459f, 0.759708f, 0.759957f, 0.760207f, 0.760456f, 0.760705f, 0.760954f, + 0.761202f, 0.761451f, 0.761700f, 0.761948f, 0.762196f, 0.762444f, 0.762693f, 0.762941f, + 0.763188f, 0.763436f, 0.763684f, 0.763931f, 0.764179f, 0.764426f, 0.764673f, 0.764920f, + 0.765167f, 0.765414f, 0.765661f, 0.765907f, 0.766154f, 0.766400f, 0.766647f, 0.766893f, + 0.767139f, 0.767385f, 0.767631f, 0.767876f, 0.768122f, 0.768368f, 0.768613f, 0.768858f, + 0.769103f, 0.769348f, 0.769593f, 0.769838f, 0.770083f, 0.770327f, 0.770572f, 0.770816f, + 0.771061f, 0.771305f, 0.771549f, 0.771793f, 0.772036f, 0.772280f, 0.772524f, 0.772767f, + 0.773010f, 0.773254f, 0.773497f, 0.773740f, 0.773983f, 0.774225f, 0.774468f, 0.774711f, + 0.774953f, 0.775195f, 0.775438f, 0.775680f, 0.775922f, 0.776164f, 0.776405f, 0.776647f, + 0.776888f, 0.777130f, 0.777371f, 0.777612f, 0.777853f, 0.778094f, 0.778335f, 0.778576f, + 0.778817f, 0.779057f, 0.779297f, 0.779538f, 0.779778f, 0.780018f, 0.780258f, 0.780498f, + 0.780737f, 0.780977f, 0.781216f, 0.781456f, 0.781695f, 0.781934f, 0.782173f, 0.782412f, + 0.782651f, 0.782889f, 0.783128f, 0.783366f, 0.783605f, 0.783843f, 0.784081f, 0.784319f, + 0.784557f, 0.784794f, 0.785032f, 0.785269f, 0.785507f, 0.785744f, 0.785981f, 0.786218f, + 0.786455f, 0.786692f, 0.786929f, 0.787165f, 0.787402f, 0.787638f, 0.787874f, 0.788110f, + 0.788346f, 0.788582f, 0.788818f, 0.789054f, 0.789289f, 0.789525f, 0.789760f, 0.789995f, + 0.790230f, 0.790465f, 0.790700f, 0.790935f, 0.791169f, 0.791404f, 0.791638f, 0.791872f, + 0.792107f, 0.792341f, 0.792575f, 0.792808f, 0.793042f, 0.793276f, 0.793509f, 0.793742f, + 0.793975f, 0.794209f, 0.794442f, 0.794674f, 0.794907f, 0.795140f, 0.795372f, 0.795605f, + 0.795837f, 0.796069f, 0.796301f, 0.796533f, 0.796765f, 0.796996f, 0.797228f, 0.797459f, + 0.797691f, 0.797922f, 0.798153f, 0.798384f, 0.798615f, 0.798846f, 0.799076f, 0.799307f, + 0.799537f, 0.799768f, 0.799998f, 0.800228f, 0.800458f, 0.800687f, 0.800917f, 0.801147f, + 0.801376f, 0.801606f, 0.801835f, 0.802064f, 0.802293f, 0.802522f, 0.802750f, 0.802979f, + 0.803208f, 0.803436f, 0.803664f, 0.803892f, 0.804120f, 0.804348f, 0.804576f, 0.804804f, + 0.805031f, 0.805259f, 0.805486f, 0.805713f, 0.805940f, 0.806167f, 0.806394f, 0.806621f, + 0.806848f, 0.807074f, 0.807300f, 0.807527f, 0.807753f, 0.807979f, 0.808205f, 0.808430f, + 0.808656f, 0.808882f, 0.809107f, 0.809332f, 0.809558f, 0.809783f, 0.810008f, 0.810232f, + 0.810457f, 0.810682f, 0.810906f, 0.811131f, 0.811355f, 0.811579f, 0.811803f, 0.812027f, + 0.812251f, 0.812474f, 0.812698f, 0.812921f, 0.813144f, 0.813368f, 0.813591f, 0.813814f, + 0.814036f, 0.814259f, 0.814482f, 0.814704f, 0.814926f, 0.815149f, 0.815371f, 0.815593f, + 0.815814f, 0.816036f, 0.816258f, 0.816479f, 0.816701f, 0.816922f, 0.817143f, 0.817364f, + 0.817585f, 0.817806f, 0.818026f, 0.818247f, 0.818467f, 0.818687f, 0.818908f, 0.819128f, + 0.819348f, 0.819567f, 0.819787f, 0.820007f, 0.820226f, 0.820445f, 0.820664f, 0.820884f, + 0.821102f, 0.821321f, 0.821540f, 0.821759f, 0.821977f, 0.822195f, 0.822414f, 0.822632f, + 0.822850f, 0.823068f, 0.823285f, 0.823503f, 0.823721f, 0.823938f, 0.824155f, 0.824372f, + 0.824589f, 0.824806f, 0.825023f, 0.825240f, 0.825456f, 0.825673f, 0.825889f, 0.826105f, + 0.826321f, 0.826537f, 0.826753f, 0.826968f, 0.827184f, 0.827399f, 0.827615f, 0.827830f, + 0.828045f, 0.828260f, 0.828475f, 0.828690f, 0.828904f, 0.829119f, 0.829333f, 0.829547f, + 0.829761f, 0.829975f, 0.830189f, 0.830403f, 0.830616f, 0.830830f, 0.831043f, 0.831257f, + 0.831470f, 0.831683f, 0.831895f, 0.832108f, 0.832321f, 0.832533f, 0.832746f, 0.832958f, + 0.833170f, 0.833382f, 0.833594f, 0.833806f, 0.834018f, 0.834229f, 0.834440f, 0.834652f, + 0.834863f, 0.835074f, 0.835285f, 0.835496f, 0.835706f, 0.835917f, 0.836127f, 0.836338f, + 0.836548f, 0.836758f, 0.836968f, 0.837178f, 0.837387f, 0.837597f, 0.837806f, 0.838015f, + 0.838225f, 0.838434f, 0.838643f, 0.838852f, 0.839060f, 0.839269f, 0.839477f, 0.839686f, + 0.839894f, 0.840102f, 0.840310f, 0.840518f, 0.840725f, 0.840933f, 0.841140f, 0.841348f, + 0.841555f, 0.841762f, 0.841969f, 0.842176f, 0.842383f, 0.842589f, 0.842796f, 0.843002f, + 0.843208f, 0.843414f, 0.843620f, 0.843826f, 0.844032f, 0.844238f, 0.844443f, 0.844648f, + 0.844854f, 0.845059f, 0.845264f, 0.845469f, 0.845673f, 0.845878f, 0.846082f, 0.846287f, + 0.846491f, 0.846695f, 0.846899f, 0.847103f, 0.847307f, 0.847510f, 0.847714f, 0.847917f, + 0.848120f, 0.848323f, 0.848526f, 0.848729f, 0.848932f, 0.849135f, 0.849337f, 0.849540f, + 0.849742f, 0.849944f, 0.850146f, 0.850348f, 0.850549f, 0.850751f, 0.850953f, 0.851154f, + 0.851355f, 0.851556f, 0.851757f, 0.851958f, 0.852159f, 0.852360f, 0.852560f, 0.852760f, + 0.852961f, 0.853161f, 0.853361f, 0.853561f, 0.853760f, 0.853960f, 0.854159f, 0.854359f, + 0.854558f, 0.854757f, 0.854956f, 0.855155f, 0.855354f, 0.855552f, 0.855751f, 0.855949f, + 0.856147f, 0.856345f, 0.856543f, 0.856741f, 0.856939f, 0.857137f, 0.857334f, 0.857531f, + 0.857729f, 0.857926f, 0.858123f, 0.858320f, 0.858516f, 0.858713f, 0.858909f, 0.859106f, + 0.859302f, 0.859498f, 0.859694f, 0.859890f, 0.860085f, 0.860281f, 0.860476f, 0.860672f, + 0.860867f, 0.861062f, 0.861257f, 0.861452f, 0.861646f, 0.861841f, 0.862035f, 0.862230f, + 0.862424f, 0.862618f, 0.862812f, 0.863006f, 0.863199f, 0.863393f, 0.863586f, 0.863780f, + 0.863973f, 0.864166f, 0.864359f, 0.864552f, 0.864744f, 0.864937f, 0.865129f, 0.865321f, + 0.865514f, 0.865706f, 0.865898f, 0.866089f, 0.866281f, 0.866472f, 0.866664f, 0.866855f, + 0.867046f, 0.867237f, 0.867428f, 0.867619f, 0.867809f, 0.868000f, 0.868190f, 0.868381f, + 0.868571f, 0.868761f, 0.868951f, 0.869140f, 0.869330f, 0.869519f, 0.869709f, 0.869898f, + 0.870087f, 0.870276f, 0.870465f, 0.870654f, 0.870842f, 0.871031f, 0.871219f, 0.871407f, + 0.871595f, 0.871783f, 0.871971f, 0.872159f, 0.872346f, 0.872534f, 0.872721f, 0.872908f, + 0.873095f, 0.873282f, 0.873469f, 0.873655f, 0.873842f, 0.874028f, 0.874215f, 0.874401f, + 0.874587f, 0.874773f, 0.874958f, 0.875144f, 0.875329f, 0.875515f, 0.875700f, 0.875885f, + 0.876070f, 0.876255f, 0.876440f, 0.876624f, 0.876809f, 0.876993f, 0.877177f, 0.877361f, + 0.877545f, 0.877729f, 0.877913f, 0.878096f, 0.878280f, 0.878463f, 0.878646f, 0.878829f, + 0.879012f, 0.879195f, 0.879378f, 0.879560f, 0.879743f, 0.879925f, 0.880107f, 0.880289f, + 0.880471f, 0.880653f, 0.880834f, 0.881016f, 0.881197f, 0.881378f, 0.881559f, 0.881740f, + 0.881921f, 0.882102f, 0.882283f, 0.882463f, 0.882643f, 0.882824f, 0.883004f, 0.883184f, + 0.883363f, 0.883543f, 0.883723f, 0.883902f, 0.884081f, 0.884260f, 0.884439f, 0.884618f, + 0.884797f, 0.884976f, 0.885154f, 0.885333f, 0.885511f, 0.885689f, 0.885867f, 0.886045f, + 0.886223f, 0.886400f, 0.886578f, 0.886755f, 0.886932f, 0.887109f, 0.887286f, 0.887463f, + 0.887640f, 0.887816f, 0.887993f, 0.888169f, 0.888345f, 0.888521f, 0.888697f, 0.888873f, + 0.889048f, 0.889224f, 0.889399f, 0.889574f, 0.889750f, 0.889925f, 0.890099f, 0.890274f, + 0.890449f, 0.890623f, 0.890797f, 0.890972f, 0.891146f, 0.891320f, 0.891493f, 0.891667f, + 0.891841f, 0.892014f, 0.892187f, 0.892361f, 0.892534f, 0.892706f, 0.892879f, 0.893052f, + 0.893224f, 0.893397f, 0.893569f, 0.893741f, 0.893913f, 0.894085f, 0.894256f, 0.894428f, + 0.894599f, 0.894771f, 0.894942f, 0.895113f, 0.895284f, 0.895455f, 0.895625f, 0.895796f, + 0.895966f, 0.896137f, 0.896307f, 0.896477f, 0.896646f, 0.896816f, 0.896986f, 0.897155f, + 0.897325f, 0.897494f, 0.897663f, 0.897832f, 0.898001f, 0.898169f, 0.898338f, 0.898506f, + 0.898674f, 0.898843f, 0.899011f, 0.899179f, 0.899346f, 0.899514f, 0.899681f, 0.899849f, + 0.900016f, 0.900183f, 0.900350f, 0.900517f, 0.900683f, 0.900850f, 0.901016f, 0.901183f, + 0.901349f, 0.901515f, 0.901681f, 0.901847f, 0.902012f, 0.902178f, 0.902343f, 0.902508f, + 0.902673f, 0.902838f, 0.903003f, 0.903168f, 0.903332f, 0.903497f, 0.903661f, 0.903825f, + 0.903989f, 0.904153f, 0.904317f, 0.904481f, 0.904644f, 0.904807f, 0.904971f, 0.905134f, + 0.905297f, 0.905460f, 0.905622f, 0.905785f, 0.905947f, 0.906110f, 0.906272f, 0.906434f, + 0.906596f, 0.906757f, 0.906919f, 0.907081f, 0.907242f, 0.907403f, 0.907564f, 0.907725f, + 0.907886f, 0.908047f, 0.908207f, 0.908368f, 0.908528f, 0.908688f, 0.908848f, 0.909008f, + 0.909168f, 0.909328f, 0.909487f, 0.909646f, 0.909806f, 0.909965f, 0.910124f, 0.910283f, + 0.910441f, 0.910600f, 0.910758f, 0.910917f, 0.911075f, 0.911233f, 0.911391f, 0.911548f, + 0.911706f, 0.911864f, 0.912021f, 0.912178f, 0.912335f, 0.912492f, 0.912649f, 0.912806f, + 0.912962f, 0.913119f, 0.913275f, 0.913431f, 0.913587f, 0.913743f, 0.913899f, 0.914054f, + 0.914210f, 0.914365f, 0.914520f, 0.914675f, 0.914830f, 0.914985f, 0.915140f, 0.915294f, + 0.915449f, 0.915603f, 0.915757f, 0.915911f, 0.916065f, 0.916219f, 0.916372f, 0.916526f, + 0.916679f, 0.916832f, 0.916985f, 0.917138f, 0.917291f, 0.917444f, 0.917596f, 0.917749f, + 0.917901f, 0.918053f, 0.918205f, 0.918357f, 0.918508f, 0.918660f, 0.918811f, 0.918963f, + 0.919114f, 0.919265f, 0.919416f, 0.919567f, 0.919717f, 0.919868f, 0.920018f, 0.920168f, + 0.920318f, 0.920468f, 0.920618f, 0.920768f, 0.920917f, 0.921067f, 0.921216f, 0.921365f, + 0.921514f, 0.921663f, 0.921812f, 0.921960f, 0.922109f, 0.922257f, 0.922405f, 0.922553f, + 0.922701f, 0.922849f, 0.922997f, 0.923144f, 0.923291f, 0.923439f, 0.923586f, 0.923733f, + 0.923880f, 0.924026f, 0.924173f, 0.924319f, 0.924465f, 0.924612f, 0.924758f, 0.924904f, + 0.925049f, 0.925195f, 0.925340f, 0.925486f, 0.925631f, 0.925776f, 0.925921f, 0.926066f, + 0.926210f, 0.926355f, 0.926499f, 0.926643f, 0.926787f, 0.926931f, 0.927075f, 0.927219f, + 0.927363f, 0.927506f, 0.927649f, 0.927792f, 0.927935f, 0.928078f, 0.928221f, 0.928364f, + 0.928506f, 0.928648f, 0.928791f, 0.928933f, 0.929075f, 0.929216f, 0.929358f, 0.929500f, + 0.929641f, 0.929782f, 0.929923f, 0.930064f, 0.930205f, 0.930346f, 0.930486f, 0.930627f, + 0.930767f, 0.930907f, 0.931047f, 0.931187f, 0.931327f, 0.931466f, 0.931606f, 0.931745f, + 0.931884f, 0.932023f, 0.932162f, 0.932301f, 0.932440f, 0.932578f, 0.932716f, 0.932855f, + 0.932993f, 0.933131f, 0.933269f, 0.933406f, 0.933544f, 0.933681f, 0.933818f, 0.933956f, + 0.934093f, 0.934229f, 0.934366f, 0.934503f, 0.934639f, 0.934775f, 0.934912f, 0.935048f, + 0.935184f, 0.935319f, 0.935455f, 0.935590f, 0.935726f, 0.935861f, 0.935996f, 0.936131f, + 0.936266f, 0.936400f, 0.936535f, 0.936669f, 0.936803f, 0.936938f, 0.937072f, 0.937205f, + 0.937339f, 0.937473f, 0.937606f, 0.937739f, 0.937872f, 0.938005f, 0.938138f, 0.938271f, + 0.938404f, 0.938536f, 0.938668f, 0.938800f, 0.938932f, 0.939064f, 0.939196f, 0.939328f, + 0.939459f, 0.939591f, 0.939722f, 0.939853f, 0.939984f, 0.940115f, 0.940245f, 0.940376f, + 0.940506f, 0.940636f, 0.940766f, 0.940896f, 0.941026f, 0.941156f, 0.941285f, 0.941415f, + 0.941544f, 0.941673f, 0.941802f, 0.941931f, 0.942060f, 0.942188f, 0.942317f, 0.942445f, + 0.942573f, 0.942701f, 0.942829f, 0.942957f, 0.943084f, 0.943212f, 0.943339f, 0.943466f, + 0.943593f, 0.943720f, 0.943847f, 0.943974f, 0.944100f, 0.944227f, 0.944353f, 0.944479f, + 0.944605f, 0.944731f, 0.944856f, 0.944982f, 0.945107f, 0.945232f, 0.945358f, 0.945482f, + 0.945607f, 0.945732f, 0.945857f, 0.945981f, 0.946105f, 0.946229f, 0.946353f, 0.946477f, + 0.946601f, 0.946724f, 0.946848f, 0.946971f, 0.947094f, 0.947217f, 0.947340f, 0.947463f, + 0.947586f, 0.947708f, 0.947830f, 0.947953f, 0.948075f, 0.948196f, 0.948318f, 0.948440f, + 0.948561f, 0.948683f, 0.948804f, 0.948925f, 0.949046f, 0.949167f, 0.949287f, 0.949408f, + 0.949528f, 0.949648f, 0.949768f, 0.949888f, 0.950008f, 0.950128f, 0.950247f, 0.950367f, + 0.950486f, 0.950605f, 0.950724f, 0.950843f, 0.950962f, 0.951080f, 0.951199f, 0.951317f, + 0.951435f, 0.951553f, 0.951671f, 0.951789f, 0.951906f, 0.952024f, 0.952141f, 0.952258f, + 0.952375f, 0.952492f, 0.952609f, 0.952725f, 0.952842f, 0.952958f, 0.953074f, 0.953190f, + 0.953306f, 0.953422f, 0.953537f, 0.953653f, 0.953768f, 0.953883f, 0.953998f, 0.954113f, + 0.954228f, 0.954343f, 0.954457f, 0.954572f, 0.954686f, 0.954800f, 0.954914f, 0.955028f, + 0.955141f, 0.955255f, 0.955368f, 0.955481f, 0.955594f, 0.955707f, 0.955820f, 0.955933f, + 0.956045f, 0.956158f, 0.956270f, 0.956382f, 0.956494f, 0.956606f, 0.956717f, 0.956829f, + 0.956940f, 0.957052f, 0.957163f, 0.957274f, 0.957385f, 0.957495f, 0.957606f, 0.957716f, + 0.957826f, 0.957937f, 0.958046f, 0.958156f, 0.958266f, 0.958376f, 0.958485f, 0.958594f, + 0.958703f, 0.958812f, 0.958921f, 0.959030f, 0.959139f, 0.959247f, 0.959355f, 0.959463f, + 0.959572f, 0.959679f, 0.959787f, 0.959895f, 0.960002f, 0.960109f, 0.960217f, 0.960324f, + 0.960431f, 0.960537f, 0.960644f, 0.960750f, 0.960857f, 0.960963f, 0.961069f, 0.961175f, + 0.961280f, 0.961386f, 0.961492f, 0.961597f, 0.961702f, 0.961807f, 0.961912f, 0.962017f, + 0.962121f, 0.962226f, 0.962330f, 0.962434f, 0.962538f, 0.962642f, 0.962746f, 0.962850f, + 0.962953f, 0.963057f, 0.963160f, 0.963263f, 0.963366f, 0.963469f, 0.963571f, 0.963674f, + 0.963776f, 0.963878f, 0.963980f, 0.964082f, 0.964184f, 0.964286f, 0.964387f, 0.964489f, + 0.964590f, 0.964691f, 0.964792f, 0.964893f, 0.964993f, 0.965094f, 0.965194f, 0.965294f, + 0.965394f, 0.965494f, 0.965594f, 0.965694f, 0.965793f, 0.965893f, 0.965992f, 0.966091f, + 0.966190f, 0.966289f, 0.966387f, 0.966486f, 0.966584f, 0.966683f, 0.966781f, 0.966879f, + 0.966976f, 0.967074f, 0.967172f, 0.967269f, 0.967366f, 0.967463f, 0.967560f, 0.967657f, + 0.967754f, 0.967850f, 0.967947f, 0.968043f, 0.968139f, 0.968235f, 0.968331f, 0.968427f, + 0.968522f, 0.968617f, 0.968713f, 0.968808f, 0.968903f, 0.968998f, 0.969092f, 0.969187f, + 0.969281f, 0.969375f, 0.969470f, 0.969564f, 0.969657f, 0.969751f, 0.969845f, 0.969938f, + 0.970031f, 0.970124f, 0.970217f, 0.970310f, 0.970403f, 0.970495f, 0.970588f, 0.970680f, + 0.970772f, 0.970864f, 0.970956f, 0.971048f, 0.971139f, 0.971231f, 0.971322f, 0.971413f, + 0.971504f, 0.971595f, 0.971685f, 0.971776f, 0.971866f, 0.971957f, 0.972047f, 0.972137f, + 0.972227f, 0.972316f, 0.972406f, 0.972495f, 0.972584f, 0.972673f, 0.972762f, 0.972851f, + 0.972940f, 0.973028f, 0.973117f, 0.973205f, 0.973293f, 0.973381f, 0.973469f, 0.973557f, + 0.973644f, 0.973732f, 0.973819f, 0.973906f, 0.973993f, 0.974080f, 0.974166f, 0.974253f, + 0.974339f, 0.974426f, 0.974512f, 0.974598f, 0.974684f, 0.974769f, 0.974855f, 0.974940f, + 0.975025f, 0.975110f, 0.975195f, 0.975280f, 0.975365f, 0.975449f, 0.975534f, 0.975618f, + 0.975702f, 0.975786f, 0.975870f, 0.975954f, 0.976037f, 0.976120f, 0.976204f, 0.976287f, + 0.976370f, 0.976453f, 0.976535f, 0.976618f, 0.976700f, 0.976782f, 0.976864f, 0.976946f, + 0.977028f, 0.977110f, 0.977191f, 0.977273f, 0.977354f, 0.977435f, 0.977516f, 0.977597f, + 0.977677f, 0.977758f, 0.977838f, 0.977918f, 0.977998f, 0.978078f, 0.978158f, 0.978238f, + 0.978317f, 0.978397f, 0.978476f, 0.978555f, 0.978634f, 0.978713f, 0.978791f, 0.978870f, + 0.978948f, 0.979026f, 0.979104f, 0.979182f, 0.979260f, 0.979338f, 0.979415f, 0.979493f, + 0.979570f, 0.979647f, 0.979724f, 0.979800f, 0.979877f, 0.979954f, 0.980030f, 0.980106f, + 0.980182f, 0.980258f, 0.980334f, 0.980409f, 0.980485f, 0.980560f, 0.980635f, 0.980710f, + 0.980785f, 0.980860f, 0.980935f, 0.981009f, 0.981083f, 0.981158f, 0.981232f, 0.981305f, + 0.981379f, 0.981453f, 0.981526f, 0.981600f, 0.981673f, 0.981746f, 0.981819f, 0.981891f, + 0.981964f, 0.982036f, 0.982109f, 0.982181f, 0.982253f, 0.982325f, 0.982396f, 0.982468f, + 0.982539f, 0.982611f, 0.982682f, 0.982753f, 0.982824f, 0.982894f, 0.982965f, 0.983035f, + 0.983105f, 0.983176f, 0.983246f, 0.983315f, 0.983385f, 0.983455f, 0.983524f, 0.983593f, + 0.983662f, 0.983731f, 0.983800f, 0.983869f, 0.983937f, 0.984006f, 0.984074f, 0.984142f, + 0.984210f, 0.984278f, 0.984346f, 0.984413f, 0.984480f, 0.984548f, 0.984615f, 0.984682f, + 0.984748f, 0.984815f, 0.984882f, 0.984948f, 0.985014f, 0.985080f, 0.985146f, 0.985212f, + 0.985278f, 0.985343f, 0.985408f, 0.985474f, 0.985539f, 0.985604f, 0.985668f, 0.985733f, + 0.985798f, 0.985862f, 0.985926f, 0.985990f, 0.986054f, 0.986118f, 0.986181f, 0.986245f, + 0.986308f, 0.986371f, 0.986434f, 0.986497f, 0.986560f, 0.986623f, 0.986685f, 0.986747f, + 0.986809f, 0.986871f, 0.986933f, 0.986995f, 0.987057f, 0.987118f, 0.987179f, 0.987240f, + 0.987301f, 0.987362f, 0.987423f, 0.987484f, 0.987544f, 0.987604f, 0.987664f, 0.987724f, + 0.987784f, 0.987844f, 0.987903f, 0.987963f, 0.988022f, 0.988081f, 0.988140f, 0.988199f, + 0.988258f, 0.988316f, 0.988374f, 0.988433f, 0.988491f, 0.988549f, 0.988607f, 0.988664f, + 0.988722f, 0.988779f, 0.988836f, 0.988893f, 0.988950f, 0.989007f, 0.989064f, 0.989120f, + 0.989177f, 0.989233f, 0.989289f, 0.989345f, 0.989400f, 0.989456f, 0.989511f, 0.989567f, + 0.989622f, 0.989677f, 0.989732f, 0.989787f, 0.989841f, 0.989896f, 0.989950f, 0.990004f, + 0.990058f, 0.990112f, 0.990166f, 0.990219f, 0.990273f, 0.990326f, 0.990379f, 0.990432f, + 0.990485f, 0.990538f, 0.990590f, 0.990643f, 0.990695f, 0.990747f, 0.990799f, 0.990851f, + 0.990903f, 0.990954f, 0.991006f, 0.991057f, 0.991108f, 0.991159f, 0.991210f, 0.991260f, + 0.991311f, 0.991361f, 0.991411f, 0.991462f, 0.991511f, 0.991561f, 0.991611f, 0.991660f, + 0.991710f, 0.991759f, 0.991808f, 0.991857f, 0.991906f, 0.991954f, 0.992003f, 0.992051f, + 0.992099f, 0.992147f, 0.992195f, 0.992243f, 0.992291f, 0.992338f, 0.992385f, 0.992433f, + 0.992480f, 0.992526f, 0.992573f, 0.992620f, 0.992666f, 0.992712f, 0.992759f, 0.992805f, + 0.992850f, 0.992896f, 0.992942f, 0.992987f, 0.993032f, 0.993077f, 0.993122f, 0.993167f, + 0.993212f, 0.993257f, 0.993301f, 0.993345f, 0.993389f, 0.993433f, 0.993477f, 0.993521f, + 0.993564f, 0.993608f, 0.993651f, 0.993694f, 0.993737f, 0.993779f, 0.993822f, 0.993865f, + 0.993907f, 0.993949f, 0.993991f, 0.994033f, 0.994075f, 0.994116f, 0.994158f, 0.994199f, + 0.994240f, 0.994281f, 0.994322f, 0.994363f, 0.994404f, 0.994444f, 0.994484f, 0.994525f, + 0.994565f, 0.994604f, 0.994644f, 0.994684f, 0.994723f, 0.994762f, 0.994802f, 0.994841f, + 0.994879f, 0.994918f, 0.994957f, 0.994995f, 0.995033f, 0.995071f, 0.995109f, 0.995147f, + 0.995185f, 0.995222f, 0.995260f, 0.995297f, 0.995334f, 0.995371f, 0.995408f, 0.995444f, + 0.995481f, 0.995517f, 0.995553f, 0.995589f, 0.995625f, 0.995661f, 0.995697f, 0.995732f, + 0.995767f, 0.995803f, 0.995838f, 0.995872f, 0.995907f, 0.995942f, 0.995976f, 0.996011f, + 0.996045f, 0.996079f, 0.996113f, 0.996146f, 0.996180f, 0.996213f, 0.996247f, 0.996280f, + 0.996313f, 0.996345f, 0.996378f, 0.996411f, 0.996443f, 0.996475f, 0.996507f, 0.996539f, + 0.996571f, 0.996603f, 0.996634f, 0.996666f, 0.996697f, 0.996728f, 0.996759f, 0.996790f, + 0.996820f, 0.996851f, 0.996881f, 0.996911f, 0.996941f, 0.996971f, 0.997001f, 0.997031f, + 0.997060f, 0.997089f, 0.997119f, 0.997148f, 0.997176f, 0.997205f, 0.997234f, 0.997262f, + 0.997290f, 0.997319f, 0.997347f, 0.997374f, 0.997402f, 0.997430f, 0.997457f, 0.997484f, + 0.997511f, 0.997538f, 0.997565f, 0.997592f, 0.997618f, 0.997645f, 0.997671f, 0.997697f, + 0.997723f, 0.997749f, 0.997774f, 0.997800f, 0.997825f, 0.997851f, 0.997876f, 0.997901f, + 0.997925f, 0.997950f, 0.997974f, 0.997999f, 0.998023f, 0.998047f, 0.998071f, 0.998094f, + 0.998118f, 0.998142f, 0.998165f, 0.998188f, 0.998211f, 0.998234f, 0.998257f, 0.998279f, + 0.998302f, 0.998324f, 0.998346f, 0.998368f, 0.998390f, 0.998411f, 0.998433f, 0.998454f, + 0.998476f, 0.998497f, 0.998518f, 0.998538f, 0.998559f, 0.998580f, 0.998600f, 0.998620f, + 0.998640f, 0.998660f, 0.998680f, 0.998700f, 0.998719f, 0.998738f, 0.998758f, 0.998777f, + 0.998795f, 0.998814f, 0.998833f, 0.998851f, 0.998870f, 0.998888f, 0.998906f, 0.998924f, + 0.998941f, 0.998959f, 0.998976f, 0.998994f, 0.999011f, 0.999028f, 0.999044f, 0.999061f, + 0.999078f, 0.999094f, 0.999110f, 0.999126f, 0.999142f, 0.999158f, 0.999174f, 0.999189f, + 0.999205f, 0.999220f, 0.999235f, 0.999250f, 0.999265f, 0.999279f, 0.999294f, 0.999308f, + 0.999322f, 0.999336f, 0.999350f, 0.999364f, 0.999378f, 0.999391f, 0.999404f, 0.999418f, + 0.999431f, 0.999443f, 0.999456f, 0.999469f, 0.999481f, 0.999493f, 0.999506f, 0.999518f, + 0.999529f, 0.999541f, 0.999553f, 0.999564f, 0.999575f, 0.999586f, 0.999597f, 0.999608f, + 0.999619f, 0.999629f, 0.999640f, 0.999650f, 0.999660f, 0.999670f, 0.999680f, 0.999689f, + 0.999699f, 0.999708f, 0.999717f, 0.999726f, 0.999735f, 0.999744f, 0.999753f, 0.999761f, + 0.999769f, 0.999778f, 0.999786f, 0.999793f, 0.999801f, 0.999809f, 0.999816f, 0.999823f, + 0.999831f, 0.999838f, 0.999844f, 0.999851f, 0.999858f, 0.999864f, 0.999870f, 0.999876f, + 0.999882f, 0.999888f, 0.999894f, 0.999899f, 0.999905f, 0.999910f, 0.999915f, 0.999920f, + 0.999925f, 0.999929f, 0.999934f, 0.999938f, 0.999942f, 0.999946f, 0.999950f, 0.999954f, + 0.999958f, 0.999961f, 0.999964f, 0.999968f, 0.999971f, 0.999973f, 0.999976f, 0.999979f, + 0.999981f, 0.999983f, 0.999986f, 0.999988f, 0.999989f, 0.999991f, 0.999993f, 0.999994f, + 0.999995f, 0.999996f, 0.999997f, 0.999998f, 0.999999f, 0.999999f, 1.000000f, 1.000000 +}; + +static const float cosTable32768[16384] = { + 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 0.999999f, 0.999999f, + 0.999999f, 0.999999f, 0.999998f, 0.999998f, 0.999997f, 0.999997f, 0.999996f, 0.999996f, + 0.999995f, 0.999995f, 0.999994f, 0.999993f, 0.999993f, 0.999992f, 0.999991f, 0.999990f, + 0.999989f, 0.999988f, 0.999988f, 0.999987f, 0.999986f, 0.999985f, 0.999983f, 0.999982f, + 0.999981f, 0.999980f, 0.999979f, 0.999977f, 0.999976f, 0.999975f, 0.999973f, 0.999972f, + 0.999971f, 0.999969f, 0.999968f, 0.999966f, 0.999964f, 0.999963f, 0.999961f, 0.999959f, + 0.999958f, 0.999956f, 0.999954f, 0.999952f, 0.999950f, 0.999948f, 0.999946f, 0.999944f, + 0.999942f, 0.999940f, 0.999938f, 0.999936f, 0.999934f, 0.999932f, 0.999929f, 0.999927f, + 0.999925f, 0.999922f, 0.999920f, 0.999917f, 0.999915f, 0.999913f, 0.999910f, 0.999907f, + 0.999905f, 0.999902f, 0.999899f, 0.999897f, 0.999894f, 0.999891f, 0.999888f, 0.999885f, + 0.999882f, 0.999879f, 0.999876f, 0.999873f, 0.999870f, 0.999867f, 0.999864f, 0.999861f, + 0.999858f, 0.999854f, 0.999851f, 0.999848f, 0.999844f, 0.999841f, 0.999838f, 0.999834f, + 0.999831f, 0.999827f, 0.999823f, 0.999820f, 0.999816f, 0.999812f, 0.999809f, 0.999805f, + 0.999801f, 0.999797f, 0.999793f, 0.999790f, 0.999786f, 0.999782f, 0.999778f, 0.999774f, + 0.999769f, 0.999765f, 0.999761f, 0.999757f, 0.999753f, 0.999748f, 0.999744f, 0.999740f, + 0.999735f, 0.999731f, 0.999726f, 0.999722f, 0.999717f, 0.999713f, 0.999708f, 0.999704f, + 0.999699f, 0.999694f, 0.999689f, 0.999685f, 0.999680f, 0.999675f, 0.999670f, 0.999665f, + 0.999660f, 0.999655f, 0.999650f, 0.999645f, 0.999640f, 0.999635f, 0.999629f, 0.999624f, + 0.999619f, 0.999614f, 0.999608f, 0.999603f, 0.999597f, 0.999592f, 0.999586f, 0.999581f, + 0.999575f, 0.999570f, 0.999564f, 0.999558f, 0.999553f, 0.999547f, 0.999541f, 0.999535f, + 0.999529f, 0.999524f, 0.999518f, 0.999512f, 0.999506f, 0.999500f, 0.999493f, 0.999487f, + 0.999481f, 0.999475f, 0.999469f, 0.999462f, 0.999456f, 0.999450f, 0.999443f, 0.999437f, + 0.999431f, 0.999424f, 0.999418f, 0.999411f, 0.999404f, 0.999398f, 0.999391f, 0.999384f, + 0.999378f, 0.999371f, 0.999364f, 0.999357f, 0.999350f, 0.999343f, 0.999336f, 0.999329f, + 0.999322f, 0.999315f, 0.999308f, 0.999301f, 0.999294f, 0.999287f, 0.999279f, 0.999272f, + 0.999265f, 0.999257f, 0.999250f, 0.999243f, 0.999235f, 0.999228f, 0.999220f, 0.999212f, + 0.999205f, 0.999197f, 0.999189f, 0.999182f, 0.999174f, 0.999166f, 0.999158f, 0.999150f, + 0.999142f, 0.999134f, 0.999126f, 0.999118f, 0.999110f, 0.999102f, 0.999094f, 0.999086f, + 0.999078f, 0.999069f, 0.999061f, 0.999053f, 0.999044f, 0.999036f, 0.999028f, 0.999019f, + 0.999011f, 0.999002f, 0.998994f, 0.998985f, 0.998976f, 0.998968f, 0.998959f, 0.998950f, + 0.998941f, 0.998932f, 0.998924f, 0.998915f, 0.998906f, 0.998897f, 0.998888f, 0.998879f, + 0.998870f, 0.998860f, 0.998851f, 0.998842f, 0.998833f, 0.998824f, 0.998814f, 0.998805f, + 0.998795f, 0.998786f, 0.998777f, 0.998767f, 0.998758f, 0.998748f, 0.998738f, 0.998729f, + 0.998719f, 0.998709f, 0.998700f, 0.998690f, 0.998680f, 0.998670f, 0.998660f, 0.998650f, + 0.998640f, 0.998630f, 0.998620f, 0.998610f, 0.998600f, 0.998590f, 0.998580f, 0.998569f, + 0.998559f, 0.998549f, 0.998538f, 0.998528f, 0.998518f, 0.998507f, 0.998497f, 0.998486f, + 0.998476f, 0.998465f, 0.998454f, 0.998444f, 0.998433f, 0.998422f, 0.998411f, 0.998401f, + 0.998390f, 0.998379f, 0.998368f, 0.998357f, 0.998346f, 0.998335f, 0.998324f, 0.998313f, + 0.998302f, 0.998290f, 0.998279f, 0.998268f, 0.998257f, 0.998245f, 0.998234f, 0.998222f, + 0.998211f, 0.998200f, 0.998188f, 0.998176f, 0.998165f, 0.998153f, 0.998142f, 0.998130f, + 0.998118f, 0.998106f, 0.998094f, 0.998083f, 0.998071f, 0.998059f, 0.998047f, 0.998035f, + 0.998023f, 0.998011f, 0.997999f, 0.997987f, 0.997974f, 0.997962f, 0.997950f, 0.997938f, + 0.997925f, 0.997913f, 0.997901f, 0.997888f, 0.997876f, 0.997863f, 0.997851f, 0.997838f, + 0.997825f, 0.997813f, 0.997800f, 0.997787f, 0.997774f, 0.997762f, 0.997749f, 0.997736f, + 0.997723f, 0.997710f, 0.997697f, 0.997684f, 0.997671f, 0.997658f, 0.997645f, 0.997632f, + 0.997618f, 0.997605f, 0.997592f, 0.997579f, 0.997565f, 0.997552f, 0.997538f, 0.997525f, + 0.997511f, 0.997498f, 0.997484f, 0.997471f, 0.997457f, 0.997443f, 0.997430f, 0.997416f, + 0.997402f, 0.997388f, 0.997374f, 0.997361f, 0.997347f, 0.997333f, 0.997319f, 0.997305f, + 0.997290f, 0.997276f, 0.997262f, 0.997248f, 0.997234f, 0.997219f, 0.997205f, 0.997191f, + 0.997176f, 0.997162f, 0.997148f, 0.997133f, 0.997119f, 0.997104f, 0.997089f, 0.997075f, + 0.997060f, 0.997045f, 0.997031f, 0.997016f, 0.997001f, 0.996986f, 0.996971f, 0.996956f, + 0.996941f, 0.996926f, 0.996911f, 0.996896f, 0.996881f, 0.996866f, 0.996851f, 0.996836f, + 0.996820f, 0.996805f, 0.996790f, 0.996774f, 0.996759f, 0.996743f, 0.996728f, 0.996712f, + 0.996697f, 0.996681f, 0.996666f, 0.996650f, 0.996634f, 0.996619f, 0.996603f, 0.996587f, + 0.996571f, 0.996555f, 0.996539f, 0.996523f, 0.996507f, 0.996491f, 0.996475f, 0.996459f, + 0.996443f, 0.996427f, 0.996411f, 0.996394f, 0.996378f, 0.996362f, 0.996345f, 0.996329f, + 0.996313f, 0.996296f, 0.996280f, 0.996263f, 0.996247f, 0.996230f, 0.996213f, 0.996197f, + 0.996180f, 0.996163f, 0.996146f, 0.996129f, 0.996113f, 0.996096f, 0.996079f, 0.996062f, + 0.996045f, 0.996028f, 0.996011f, 0.995993f, 0.995976f, 0.995959f, 0.995942f, 0.995925f, + 0.995907f, 0.995890f, 0.995872f, 0.995855f, 0.995838f, 0.995820f, 0.995803f, 0.995785f, + 0.995767f, 0.995750f, 0.995732f, 0.995714f, 0.995697f, 0.995679f, 0.995661f, 0.995643f, + 0.995625f, 0.995607f, 0.995589f, 0.995571f, 0.995553f, 0.995535f, 0.995517f, 0.995499f, + 0.995481f, 0.995463f, 0.995444f, 0.995426f, 0.995408f, 0.995389f, 0.995371f, 0.995352f, + 0.995334f, 0.995315f, 0.995297f, 0.995278f, 0.995260f, 0.995241f, 0.995222f, 0.995203f, + 0.995185f, 0.995166f, 0.995147f, 0.995128f, 0.995109f, 0.995090f, 0.995071f, 0.995052f, + 0.995033f, 0.995014f, 0.994995f, 0.994976f, 0.994957f, 0.994937f, 0.994918f, 0.994899f, + 0.994879f, 0.994860f, 0.994841f, 0.994821f, 0.994802f, 0.994782f, 0.994762f, 0.994743f, + 0.994723f, 0.994703f, 0.994684f, 0.994664f, 0.994644f, 0.994624f, 0.994604f, 0.994585f, + 0.994565f, 0.994545f, 0.994525f, 0.994505f, 0.994484f, 0.994464f, 0.994444f, 0.994424f, + 0.994404f, 0.994383f, 0.994363f, 0.994343f, 0.994322f, 0.994302f, 0.994281f, 0.994261f, + 0.994240f, 0.994220f, 0.994199f, 0.994179f, 0.994158f, 0.994137f, 0.994116f, 0.994096f, + 0.994075f, 0.994054f, 0.994033f, 0.994012f, 0.993991f, 0.993970f, 0.993949f, 0.993928f, + 0.993907f, 0.993886f, 0.993865f, 0.993843f, 0.993822f, 0.993801f, 0.993779f, 0.993758f, + 0.993737f, 0.993715f, 0.993694f, 0.993672f, 0.993651f, 0.993629f, 0.993608f, 0.993586f, + 0.993564f, 0.993542f, 0.993521f, 0.993499f, 0.993477f, 0.993455f, 0.993433f, 0.993411f, + 0.993389f, 0.993367f, 0.993345f, 0.993323f, 0.993301f, 0.993279f, 0.993257f, 0.993234f, + 0.993212f, 0.993190f, 0.993167f, 0.993145f, 0.993122f, 0.993100f, 0.993077f, 0.993055f, + 0.993032f, 0.993010f, 0.992987f, 0.992964f, 0.992942f, 0.992919f, 0.992896f, 0.992873f, + 0.992850f, 0.992828f, 0.992805f, 0.992782f, 0.992759f, 0.992736f, 0.992712f, 0.992689f, + 0.992666f, 0.992643f, 0.992620f, 0.992596f, 0.992573f, 0.992550f, 0.992526f, 0.992503f, + 0.992480f, 0.992456f, 0.992433f, 0.992409f, 0.992385f, 0.992362f, 0.992338f, 0.992314f, + 0.992291f, 0.992267f, 0.992243f, 0.992219f, 0.992195f, 0.992171f, 0.992147f, 0.992123f, + 0.992099f, 0.992075f, 0.992051f, 0.992027f, 0.992003f, 0.991979f, 0.991954f, 0.991930f, + 0.991906f, 0.991881f, 0.991857f, 0.991832f, 0.991808f, 0.991783f, 0.991759f, 0.991734f, + 0.991710f, 0.991685f, 0.991660f, 0.991636f, 0.991611f, 0.991586f, 0.991561f, 0.991536f, + 0.991511f, 0.991487f, 0.991462f, 0.991437f, 0.991411f, 0.991386f, 0.991361f, 0.991336f, + 0.991311f, 0.991286f, 0.991260f, 0.991235f, 0.991210f, 0.991184f, 0.991159f, 0.991133f, + 0.991108f, 0.991082f, 0.991057f, 0.991031f, 0.991006f, 0.990980f, 0.990954f, 0.990928f, + 0.990903f, 0.990877f, 0.990851f, 0.990825f, 0.990799f, 0.990773f, 0.990747f, 0.990721f, + 0.990695f, 0.990669f, 0.990643f, 0.990617f, 0.990590f, 0.990564f, 0.990538f, 0.990511f, + 0.990485f, 0.990459f, 0.990432f, 0.990406f, 0.990379f, 0.990353f, 0.990326f, 0.990299f, + 0.990273f, 0.990246f, 0.990219f, 0.990193f, 0.990166f, 0.990139f, 0.990112f, 0.990085f, + 0.990058f, 0.990031f, 0.990004f, 0.989977f, 0.989950f, 0.989923f, 0.989896f, 0.989869f, + 0.989841f, 0.989814f, 0.989787f, 0.989759f, 0.989732f, 0.989704f, 0.989677f, 0.989650f, + 0.989622f, 0.989594f, 0.989567f, 0.989539f, 0.989511f, 0.989484f, 0.989456f, 0.989428f, + 0.989400f, 0.989373f, 0.989345f, 0.989317f, 0.989289f, 0.989261f, 0.989233f, 0.989205f, + 0.989177f, 0.989148f, 0.989120f, 0.989092f, 0.989064f, 0.989035f, 0.989007f, 0.988979f, + 0.988950f, 0.988922f, 0.988893f, 0.988865f, 0.988836f, 0.988808f, 0.988779f, 0.988750f, + 0.988722f, 0.988693f, 0.988664f, 0.988635f, 0.988607f, 0.988578f, 0.988549f, 0.988520f, + 0.988491f, 0.988462f, 0.988433f, 0.988404f, 0.988374f, 0.988345f, 0.988316f, 0.988287f, + 0.988258f, 0.988228f, 0.988199f, 0.988169f, 0.988140f, 0.988111f, 0.988081f, 0.988052f, + 0.988022f, 0.987992f, 0.987963f, 0.987933f, 0.987903f, 0.987874f, 0.987844f, 0.987814f, + 0.987784f, 0.987754f, 0.987724f, 0.987694f, 0.987664f, 0.987634f, 0.987604f, 0.987574f, + 0.987544f, 0.987514f, 0.987484f, 0.987453f, 0.987423f, 0.987393f, 0.987362f, 0.987332f, + 0.987301f, 0.987271f, 0.987240f, 0.987210f, 0.987179f, 0.987149f, 0.987118f, 0.987087f, + 0.987057f, 0.987026f, 0.986995f, 0.986964f, 0.986933f, 0.986902f, 0.986871f, 0.986840f, + 0.986809f, 0.986778f, 0.986747f, 0.986716f, 0.986685f, 0.986654f, 0.986623f, 0.986591f, + 0.986560f, 0.986529f, 0.986497f, 0.986466f, 0.986434f, 0.986403f, 0.986371f, 0.986340f, + 0.986308f, 0.986276f, 0.986245f, 0.986213f, 0.986181f, 0.986150f, 0.986118f, 0.986086f, + 0.986054f, 0.986022f, 0.985990f, 0.985958f, 0.985926f, 0.985894f, 0.985862f, 0.985830f, + 0.985798f, 0.985765f, 0.985733f, 0.985701f, 0.985668f, 0.985636f, 0.985604f, 0.985571f, + 0.985539f, 0.985506f, 0.985474f, 0.985441f, 0.985408f, 0.985376f, 0.985343f, 0.985310f, + 0.985278f, 0.985245f, 0.985212f, 0.985179f, 0.985146f, 0.985113f, 0.985080f, 0.985047f, + 0.985014f, 0.984981f, 0.984948f, 0.984915f, 0.984882f, 0.984848f, 0.984815f, 0.984782f, + 0.984748f, 0.984715f, 0.984682f, 0.984648f, 0.984615f, 0.984581f, 0.984548f, 0.984514f, + 0.984480f, 0.984447f, 0.984413f, 0.984379f, 0.984346f, 0.984312f, 0.984278f, 0.984244f, + 0.984210f, 0.984176f, 0.984142f, 0.984108f, 0.984074f, 0.984040f, 0.984006f, 0.983972f, + 0.983937f, 0.983903f, 0.983869f, 0.983835f, 0.983800f, 0.983766f, 0.983731f, 0.983697f, + 0.983662f, 0.983628f, 0.983593f, 0.983559f, 0.983524f, 0.983489f, 0.983455f, 0.983420f, + 0.983385f, 0.983350f, 0.983315f, 0.983281f, 0.983246f, 0.983211f, 0.983176f, 0.983141f, + 0.983105f, 0.983070f, 0.983035f, 0.983000f, 0.982965f, 0.982930f, 0.982894f, 0.982859f, + 0.982824f, 0.982788f, 0.982753f, 0.982717f, 0.982682f, 0.982646f, 0.982611f, 0.982575f, + 0.982539f, 0.982504f, 0.982468f, 0.982432f, 0.982396f, 0.982360f, 0.982325f, 0.982289f, + 0.982253f, 0.982217f, 0.982181f, 0.982145f, 0.982109f, 0.982072f, 0.982036f, 0.982000f, + 0.981964f, 0.981928f, 0.981891f, 0.981855f, 0.981819f, 0.981782f, 0.981746f, 0.981709f, + 0.981673f, 0.981636f, 0.981600f, 0.981563f, 0.981526f, 0.981490f, 0.981453f, 0.981416f, + 0.981379f, 0.981342f, 0.981305f, 0.981269f, 0.981232f, 0.981195f, 0.981158f, 0.981120f, + 0.981083f, 0.981046f, 0.981009f, 0.980972f, 0.980935f, 0.980897f, 0.980860f, 0.980823f, + 0.980785f, 0.980748f, 0.980710f, 0.980673f, 0.980635f, 0.980598f, 0.980560f, 0.980523f, + 0.980485f, 0.980447f, 0.980409f, 0.980372f, 0.980334f, 0.980296f, 0.980258f, 0.980220f, + 0.980182f, 0.980144f, 0.980106f, 0.980068f, 0.980030f, 0.979992f, 0.979954f, 0.979915f, + 0.979877f, 0.979839f, 0.979800f, 0.979762f, 0.979724f, 0.979685f, 0.979647f, 0.979608f, + 0.979570f, 0.979531f, 0.979493f, 0.979454f, 0.979415f, 0.979376f, 0.979338f, 0.979299f, + 0.979260f, 0.979221f, 0.979182f, 0.979143f, 0.979104f, 0.979065f, 0.979026f, 0.978987f, + 0.978948f, 0.978909f, 0.978870f, 0.978831f, 0.978791f, 0.978752f, 0.978713f, 0.978673f, + 0.978634f, 0.978594f, 0.978555f, 0.978516f, 0.978476f, 0.978436f, 0.978397f, 0.978357f, + 0.978317f, 0.978278f, 0.978238f, 0.978198f, 0.978158f, 0.978118f, 0.978078f, 0.978038f, + 0.977998f, 0.977959f, 0.977918f, 0.977878f, 0.977838f, 0.977798f, 0.977758f, 0.977718f, + 0.977677f, 0.977637f, 0.977597f, 0.977556f, 0.977516f, 0.977475f, 0.977435f, 0.977394f, + 0.977354f, 0.977313f, 0.977273f, 0.977232f, 0.977191f, 0.977151f, 0.977110f, 0.977069f, + 0.977028f, 0.976987f, 0.976946f, 0.976905f, 0.976864f, 0.976823f, 0.976782f, 0.976741f, + 0.976700f, 0.976659f, 0.976618f, 0.976576f, 0.976535f, 0.976494f, 0.976453f, 0.976411f, + 0.976370f, 0.976328f, 0.976287f, 0.976245f, 0.976204f, 0.976162f, 0.976120f, 0.976079f, + 0.976037f, 0.975995f, 0.975954f, 0.975912f, 0.975870f, 0.975828f, 0.975786f, 0.975744f, + 0.975702f, 0.975660f, 0.975618f, 0.975576f, 0.975534f, 0.975492f, 0.975449f, 0.975407f, + 0.975365f, 0.975323f, 0.975280f, 0.975238f, 0.975195f, 0.975153f, 0.975110f, 0.975068f, + 0.975025f, 0.974983f, 0.974940f, 0.974897f, 0.974855f, 0.974812f, 0.974769f, 0.974726f, + 0.974684f, 0.974641f, 0.974598f, 0.974555f, 0.974512f, 0.974469f, 0.974426f, 0.974383f, + 0.974339f, 0.974296f, 0.974253f, 0.974210f, 0.974166f, 0.974123f, 0.974080f, 0.974036f, + 0.973993f, 0.973949f, 0.973906f, 0.973862f, 0.973819f, 0.973775f, 0.973732f, 0.973688f, + 0.973644f, 0.973601f, 0.973557f, 0.973513f, 0.973469f, 0.973425f, 0.973381f, 0.973337f, + 0.973293f, 0.973249f, 0.973205f, 0.973161f, 0.973117f, 0.973073f, 0.973028f, 0.972984f, + 0.972940f, 0.972896f, 0.972851f, 0.972807f, 0.972762f, 0.972718f, 0.972673f, 0.972629f, + 0.972584f, 0.972540f, 0.972495f, 0.972450f, 0.972406f, 0.972361f, 0.972316f, 0.972271f, + 0.972227f, 0.972182f, 0.972137f, 0.972092f, 0.972047f, 0.972002f, 0.971957f, 0.971911f, + 0.971866f, 0.971821f, 0.971776f, 0.971731f, 0.971685f, 0.971640f, 0.971595f, 0.971549f, + 0.971504f, 0.971458f, 0.971413f, 0.971367f, 0.971322f, 0.971276f, 0.971231f, 0.971185f, + 0.971139f, 0.971093f, 0.971048f, 0.971002f, 0.970956f, 0.970910f, 0.970864f, 0.970818f, + 0.970772f, 0.970726f, 0.970680f, 0.970634f, 0.970588f, 0.970542f, 0.970495f, 0.970449f, + 0.970403f, 0.970357f, 0.970310f, 0.970264f, 0.970217f, 0.970171f, 0.970124f, 0.970078f, + 0.970031f, 0.969985f, 0.969938f, 0.969891f, 0.969845f, 0.969798f, 0.969751f, 0.969704f, + 0.969657f, 0.969611f, 0.969564f, 0.969517f, 0.969470f, 0.969423f, 0.969375f, 0.969328f, + 0.969281f, 0.969234f, 0.969187f, 0.969140f, 0.969092f, 0.969045f, 0.968998f, 0.968950f, + 0.968903f, 0.968855f, 0.968808f, 0.968760f, 0.968713f, 0.968665f, 0.968617f, 0.968570f, + 0.968522f, 0.968474f, 0.968427f, 0.968379f, 0.968331f, 0.968283f, 0.968235f, 0.968187f, + 0.968139f, 0.968091f, 0.968043f, 0.967995f, 0.967947f, 0.967899f, 0.967850f, 0.967802f, + 0.967754f, 0.967706f, 0.967657f, 0.967609f, 0.967560f, 0.967512f, 0.967463f, 0.967415f, + 0.967366f, 0.967318f, 0.967269f, 0.967220f, 0.967172f, 0.967123f, 0.967074f, 0.967025f, + 0.966976f, 0.966928f, 0.966879f, 0.966830f, 0.966781f, 0.966732f, 0.966683f, 0.966633f, + 0.966584f, 0.966535f, 0.966486f, 0.966437f, 0.966387f, 0.966338f, 0.966289f, 0.966239f, + 0.966190f, 0.966141f, 0.966091f, 0.966042f, 0.965992f, 0.965942f, 0.965893f, 0.965843f, + 0.965793f, 0.965744f, 0.965694f, 0.965644f, 0.965594f, 0.965544f, 0.965494f, 0.965444f, + 0.965394f, 0.965344f, 0.965294f, 0.965244f, 0.965194f, 0.965144f, 0.965094f, 0.965044f, + 0.964993f, 0.964943f, 0.964893f, 0.964842f, 0.964792f, 0.964741f, 0.964691f, 0.964640f, + 0.964590f, 0.964539f, 0.964489f, 0.964438f, 0.964387f, 0.964336f, 0.964286f, 0.964235f, + 0.964184f, 0.964133f, 0.964082f, 0.964031f, 0.963980f, 0.963929f, 0.963878f, 0.963827f, + 0.963776f, 0.963725f, 0.963674f, 0.963623f, 0.963571f, 0.963520f, 0.963469f, 0.963417f, + 0.963366f, 0.963314f, 0.963263f, 0.963211f, 0.963160f, 0.963108f, 0.963057f, 0.963005f, + 0.962953f, 0.962902f, 0.962850f, 0.962798f, 0.962746f, 0.962694f, 0.962642f, 0.962590f, + 0.962538f, 0.962486f, 0.962434f, 0.962382f, 0.962330f, 0.962278f, 0.962226f, 0.962174f, + 0.962121f, 0.962069f, 0.962017f, 0.961964f, 0.961912f, 0.961860f, 0.961807f, 0.961755f, + 0.961702f, 0.961649f, 0.961597f, 0.961544f, 0.961492f, 0.961439f, 0.961386f, 0.961333f, + 0.961280f, 0.961228f, 0.961175f, 0.961122f, 0.961069f, 0.961016f, 0.960963f, 0.960910f, + 0.960857f, 0.960804f, 0.960750f, 0.960697f, 0.960644f, 0.960591f, 0.960537f, 0.960484f, + 0.960431f, 0.960377f, 0.960324f, 0.960270f, 0.960217f, 0.960163f, 0.960109f, 0.960056f, + 0.960002f, 0.959948f, 0.959895f, 0.959841f, 0.959787f, 0.959733f, 0.959679f, 0.959625f, + 0.959572f, 0.959518f, 0.959463f, 0.959409f, 0.959355f, 0.959301f, 0.959247f, 0.959193f, + 0.959139f, 0.959084f, 0.959030f, 0.958976f, 0.958921f, 0.958867f, 0.958812f, 0.958758f, + 0.958703f, 0.958649f, 0.958594f, 0.958540f, 0.958485f, 0.958430f, 0.958376f, 0.958321f, + 0.958266f, 0.958211f, 0.958156f, 0.958101f, 0.958046f, 0.957992f, 0.957937f, 0.957882f, + 0.957826f, 0.957771f, 0.957716f, 0.957661f, 0.957606f, 0.957550f, 0.957495f, 0.957440f, + 0.957385f, 0.957329f, 0.957274f, 0.957218f, 0.957163f, 0.957107f, 0.957052f, 0.956996f, + 0.956940f, 0.956885f, 0.956829f, 0.956773f, 0.956717f, 0.956662f, 0.956606f, 0.956550f, + 0.956494f, 0.956438f, 0.956382f, 0.956326f, 0.956270f, 0.956214f, 0.956158f, 0.956101f, + 0.956045f, 0.955989f, 0.955933f, 0.955876f, 0.955820f, 0.955764f, 0.955707f, 0.955651f, + 0.955594f, 0.955538f, 0.955481f, 0.955425f, 0.955368f, 0.955311f, 0.955255f, 0.955198f, + 0.955141f, 0.955084f, 0.955028f, 0.954971f, 0.954914f, 0.954857f, 0.954800f, 0.954743f, + 0.954686f, 0.954629f, 0.954572f, 0.954514f, 0.954457f, 0.954400f, 0.954343f, 0.954285f, + 0.954228f, 0.954171f, 0.954113f, 0.954056f, 0.953998f, 0.953941f, 0.953883f, 0.953826f, + 0.953768f, 0.953711f, 0.953653f, 0.953595f, 0.953537f, 0.953480f, 0.953422f, 0.953364f, + 0.953306f, 0.953248f, 0.953190f, 0.953132f, 0.953074f, 0.953016f, 0.952958f, 0.952900f, + 0.952842f, 0.952783f, 0.952725f, 0.952667f, 0.952609f, 0.952550f, 0.952492f, 0.952433f, + 0.952375f, 0.952317f, 0.952258f, 0.952199f, 0.952141f, 0.952082f, 0.952024f, 0.951965f, + 0.951906f, 0.951847f, 0.951789f, 0.951730f, 0.951671f, 0.951612f, 0.951553f, 0.951494f, + 0.951435f, 0.951376f, 0.951317f, 0.951258f, 0.951199f, 0.951139f, 0.951080f, 0.951021f, + 0.950962f, 0.950902f, 0.950843f, 0.950784f, 0.950724f, 0.950665f, 0.950605f, 0.950546f, + 0.950486f, 0.950426f, 0.950367f, 0.950307f, 0.950247f, 0.950188f, 0.950128f, 0.950068f, + 0.950008f, 0.949948f, 0.949888f, 0.949829f, 0.949768f, 0.949708f, 0.949648f, 0.949588f, + 0.949528f, 0.949468f, 0.949408f, 0.949348f, 0.949287f, 0.949227f, 0.949167f, 0.949106f, + 0.949046f, 0.948985f, 0.948925f, 0.948864f, 0.948804f, 0.948743f, 0.948683f, 0.948622f, + 0.948561f, 0.948501f, 0.948440f, 0.948379f, 0.948318f, 0.948257f, 0.948196f, 0.948136f, + 0.948075f, 0.948014f, 0.947953f, 0.947891f, 0.947830f, 0.947769f, 0.947708f, 0.947647f, + 0.947586f, 0.947524f, 0.947463f, 0.947402f, 0.947340f, 0.947279f, 0.947217f, 0.947156f, + 0.947094f, 0.947033f, 0.946971f, 0.946910f, 0.946848f, 0.946786f, 0.946724f, 0.946663f, + 0.946601f, 0.946539f, 0.946477f, 0.946415f, 0.946353f, 0.946291f, 0.946229f, 0.946167f, + 0.946105f, 0.946043f, 0.945981f, 0.945919f, 0.945857f, 0.945794f, 0.945732f, 0.945670f, + 0.945607f, 0.945545f, 0.945482f, 0.945420f, 0.945358f, 0.945295f, 0.945232f, 0.945170f, + 0.945107f, 0.945045f, 0.944982f, 0.944919f, 0.944856f, 0.944793f, 0.944731f, 0.944668f, + 0.944605f, 0.944542f, 0.944479f, 0.944416f, 0.944353f, 0.944290f, 0.944227f, 0.944163f, + 0.944100f, 0.944037f, 0.943974f, 0.943910f, 0.943847f, 0.943784f, 0.943720f, 0.943657f, + 0.943593f, 0.943530f, 0.943466f, 0.943403f, 0.943339f, 0.943276f, 0.943212f, 0.943148f, + 0.943084f, 0.943021f, 0.942957f, 0.942893f, 0.942829f, 0.942765f, 0.942701f, 0.942637f, + 0.942573f, 0.942509f, 0.942445f, 0.942381f, 0.942317f, 0.942253f, 0.942188f, 0.942124f, + 0.942060f, 0.941995f, 0.941931f, 0.941867f, 0.941802f, 0.941738f, 0.941673f, 0.941609f, + 0.941544f, 0.941479f, 0.941415f, 0.941350f, 0.941285f, 0.941221f, 0.941156f, 0.941091f, + 0.941026f, 0.940961f, 0.940896f, 0.940831f, 0.940766f, 0.940701f, 0.940636f, 0.940571f, + 0.940506f, 0.940441f, 0.940376f, 0.940310f, 0.940245f, 0.940180f, 0.940115f, 0.940049f, + 0.939984f, 0.939918f, 0.939853f, 0.939787f, 0.939722f, 0.939656f, 0.939591f, 0.939525f, + 0.939459f, 0.939394f, 0.939328f, 0.939262f, 0.939196f, 0.939130f, 0.939064f, 0.938998f, + 0.938932f, 0.938866f, 0.938800f, 0.938734f, 0.938668f, 0.938602f, 0.938536f, 0.938470f, + 0.938404f, 0.938337f, 0.938271f, 0.938205f, 0.938138f, 0.938072f, 0.938005f, 0.937939f, + 0.937872f, 0.937806f, 0.937739f, 0.937673f, 0.937606f, 0.937539f, 0.937473f, 0.937406f, + 0.937339f, 0.937272f, 0.937205f, 0.937138f, 0.937072f, 0.937005f, 0.936938f, 0.936871f, + 0.936803f, 0.936736f, 0.936669f, 0.936602f, 0.936535f, 0.936468f, 0.936400f, 0.936333f, + 0.936266f, 0.936198f, 0.936131f, 0.936063f, 0.935996f, 0.935928f, 0.935861f, 0.935793f, + 0.935726f, 0.935658f, 0.935590f, 0.935523f, 0.935455f, 0.935387f, 0.935319f, 0.935251f, + 0.935184f, 0.935116f, 0.935048f, 0.934980f, 0.934912f, 0.934844f, 0.934775f, 0.934707f, + 0.934639f, 0.934571f, 0.934503f, 0.934434f, 0.934366f, 0.934298f, 0.934229f, 0.934161f, + 0.934093f, 0.934024f, 0.933956f, 0.933887f, 0.933818f, 0.933750f, 0.933681f, 0.933612f, + 0.933544f, 0.933475f, 0.933406f, 0.933337f, 0.933269f, 0.933200f, 0.933131f, 0.933062f, + 0.932993f, 0.932924f, 0.932855f, 0.932786f, 0.932716f, 0.932647f, 0.932578f, 0.932509f, + 0.932440f, 0.932370f, 0.932301f, 0.932232f, 0.932162f, 0.932093f, 0.932023f, 0.931954f, + 0.931884f, 0.931815f, 0.931745f, 0.931675f, 0.931606f, 0.931536f, 0.931466f, 0.931397f, + 0.931327f, 0.931257f, 0.931187f, 0.931117f, 0.931047f, 0.930977f, 0.930907f, 0.930837f, + 0.930767f, 0.930697f, 0.930627f, 0.930556f, 0.930486f, 0.930416f, 0.930346f, 0.930275f, + 0.930205f, 0.930135f, 0.930064f, 0.929994f, 0.929923f, 0.929853f, 0.929782f, 0.929712f, + 0.929641f, 0.929570f, 0.929500f, 0.929429f, 0.929358f, 0.929287f, 0.929216f, 0.929146f, + 0.929075f, 0.929004f, 0.928933f, 0.928862f, 0.928791f, 0.928720f, 0.928648f, 0.928577f, + 0.928506f, 0.928435f, 0.928364f, 0.928292f, 0.928221f, 0.928150f, 0.928078f, 0.928007f, + 0.927935f, 0.927864f, 0.927792f, 0.927721f, 0.927649f, 0.927578f, 0.927506f, 0.927434f, + 0.927363f, 0.927291f, 0.927219f, 0.927147f, 0.927075f, 0.927003f, 0.926931f, 0.926859f, + 0.926787f, 0.926715f, 0.926643f, 0.926571f, 0.926499f, 0.926427f, 0.926355f, 0.926283f, + 0.926210f, 0.926138f, 0.926066f, 0.925993f, 0.925921f, 0.925848f, 0.925776f, 0.925703f, + 0.925631f, 0.925558f, 0.925486f, 0.925413f, 0.925340f, 0.925268f, 0.925195f, 0.925122f, + 0.925049f, 0.924976f, 0.924904f, 0.924831f, 0.924758f, 0.924685f, 0.924612f, 0.924539f, + 0.924465f, 0.924392f, 0.924319f, 0.924246f, 0.924173f, 0.924100f, 0.924026f, 0.923953f, + 0.923880f, 0.923806f, 0.923733f, 0.923659f, 0.923586f, 0.923512f, 0.923439f, 0.923365f, + 0.923291f, 0.923218f, 0.923144f, 0.923070f, 0.922997f, 0.922923f, 0.922849f, 0.922775f, + 0.922701f, 0.922627f, 0.922553f, 0.922479f, 0.922405f, 0.922331f, 0.922257f, 0.922183f, + 0.922109f, 0.922034f, 0.921960f, 0.921886f, 0.921812f, 0.921737f, 0.921663f, 0.921588f, + 0.921514f, 0.921440f, 0.921365f, 0.921291f, 0.921216f, 0.921141f, 0.921067f, 0.920992f, + 0.920917f, 0.920842f, 0.920768f, 0.920693f, 0.920618f, 0.920543f, 0.920468f, 0.920393f, + 0.920318f, 0.920243f, 0.920168f, 0.920093f, 0.920018f, 0.919943f, 0.919868f, 0.919792f, + 0.919717f, 0.919642f, 0.919567f, 0.919491f, 0.919416f, 0.919340f, 0.919265f, 0.919189f, + 0.919114f, 0.919038f, 0.918963f, 0.918887f, 0.918811f, 0.918736f, 0.918660f, 0.918584f, + 0.918508f, 0.918433f, 0.918357f, 0.918281f, 0.918205f, 0.918129f, 0.918053f, 0.917977f, + 0.917901f, 0.917825f, 0.917749f, 0.917672f, 0.917596f, 0.917520f, 0.917444f, 0.917367f, + 0.917291f, 0.917215f, 0.917138f, 0.917062f, 0.916985f, 0.916909f, 0.916832f, 0.916756f, + 0.916679f, 0.916602f, 0.916526f, 0.916449f, 0.916372f, 0.916296f, 0.916219f, 0.916142f, + 0.916065f, 0.915988f, 0.915911f, 0.915834f, 0.915757f, 0.915680f, 0.915603f, 0.915526f, + 0.915449f, 0.915372f, 0.915294f, 0.915217f, 0.915140f, 0.915062f, 0.914985f, 0.914908f, + 0.914830f, 0.914753f, 0.914675f, 0.914598f, 0.914520f, 0.914443f, 0.914365f, 0.914287f, + 0.914210f, 0.914132f, 0.914054f, 0.913976f, 0.913899f, 0.913821f, 0.913743f, 0.913665f, + 0.913587f, 0.913509f, 0.913431f, 0.913353f, 0.913275f, 0.913197f, 0.913119f, 0.913040f, + 0.912962f, 0.912884f, 0.912806f, 0.912727f, 0.912649f, 0.912571f, 0.912492f, 0.912414f, + 0.912335f, 0.912257f, 0.912178f, 0.912099f, 0.912021f, 0.911942f, 0.911864f, 0.911785f, + 0.911706f, 0.911627f, 0.911548f, 0.911470f, 0.911391f, 0.911312f, 0.911233f, 0.911154f, + 0.911075f, 0.910996f, 0.910917f, 0.910837f, 0.910758f, 0.910679f, 0.910600f, 0.910521f, + 0.910441f, 0.910362f, 0.910283f, 0.910203f, 0.910124f, 0.910044f, 0.909965f, 0.909885f, + 0.909806f, 0.909726f, 0.909646f, 0.909567f, 0.909487f, 0.909407f, 0.909328f, 0.909248f, + 0.909168f, 0.909088f, 0.909008f, 0.908928f, 0.908848f, 0.908768f, 0.908688f, 0.908608f, + 0.908528f, 0.908448f, 0.908368f, 0.908288f, 0.908207f, 0.908127f, 0.908047f, 0.907966f, + 0.907886f, 0.907806f, 0.907725f, 0.907645f, 0.907564f, 0.907484f, 0.907403f, 0.907323f, + 0.907242f, 0.907161f, 0.907081f, 0.907000f, 0.906919f, 0.906838f, 0.906757f, 0.906677f, + 0.906596f, 0.906515f, 0.906434f, 0.906353f, 0.906272f, 0.906191f, 0.906110f, 0.906028f, + 0.905947f, 0.905866f, 0.905785f, 0.905704f, 0.905622f, 0.905541f, 0.905460f, 0.905378f, + 0.905297f, 0.905215f, 0.905134f, 0.905052f, 0.904971f, 0.904889f, 0.904807f, 0.904726f, + 0.904644f, 0.904562f, 0.904481f, 0.904399f, 0.904317f, 0.904235f, 0.904153f, 0.904071f, + 0.903989f, 0.903907f, 0.903825f, 0.903743f, 0.903661f, 0.903579f, 0.903497f, 0.903415f, + 0.903332f, 0.903250f, 0.903168f, 0.903085f, 0.903003f, 0.902921f, 0.902838f, 0.902756f, + 0.902673f, 0.902591f, 0.902508f, 0.902426f, 0.902343f, 0.902260f, 0.902178f, 0.902095f, + 0.902012f, 0.901929f, 0.901847f, 0.901764f, 0.901681f, 0.901598f, 0.901515f, 0.901432f, + 0.901349f, 0.901266f, 0.901183f, 0.901100f, 0.901016f, 0.900933f, 0.900850f, 0.900767f, + 0.900683f, 0.900600f, 0.900517f, 0.900433f, 0.900350f, 0.900266f, 0.900183f, 0.900099f, + 0.900016f, 0.899932f, 0.899849f, 0.899765f, 0.899681f, 0.899598f, 0.899514f, 0.899430f, + 0.899346f, 0.899262f, 0.899179f, 0.899095f, 0.899011f, 0.898927f, 0.898843f, 0.898759f, + 0.898674f, 0.898590f, 0.898506f, 0.898422f, 0.898338f, 0.898254f, 0.898169f, 0.898085f, + 0.898001f, 0.897916f, 0.897832f, 0.897747f, 0.897663f, 0.897578f, 0.897494f, 0.897409f, + 0.897325f, 0.897240f, 0.897155f, 0.897071f, 0.896986f, 0.896901f, 0.896816f, 0.896731f, + 0.896646f, 0.896562f, 0.896477f, 0.896392f, 0.896307f, 0.896222f, 0.896137f, 0.896051f, + 0.895966f, 0.895881f, 0.895796f, 0.895711f, 0.895625f, 0.895540f, 0.895455f, 0.895369f, + 0.895284f, 0.895198f, 0.895113f, 0.895028f, 0.894942f, 0.894856f, 0.894771f, 0.894685f, + 0.894599f, 0.894514f, 0.894428f, 0.894342f, 0.894256f, 0.894171f, 0.894085f, 0.893999f, + 0.893913f, 0.893827f, 0.893741f, 0.893655f, 0.893569f, 0.893483f, 0.893397f, 0.893310f, + 0.893224f, 0.893138f, 0.893052f, 0.892965f, 0.892879f, 0.892793f, 0.892706f, 0.892620f, + 0.892534f, 0.892447f, 0.892361f, 0.892274f, 0.892187f, 0.892101f, 0.892014f, 0.891927f, + 0.891841f, 0.891754f, 0.891667f, 0.891580f, 0.891493f, 0.891407f, 0.891320f, 0.891233f, + 0.891146f, 0.891059f, 0.890972f, 0.890885f, 0.890797f, 0.890710f, 0.890623f, 0.890536f, + 0.890449f, 0.890361f, 0.890274f, 0.890187f, 0.890099f, 0.890012f, 0.889925f, 0.889837f, + 0.889750f, 0.889662f, 0.889574f, 0.889487f, 0.889399f, 0.889312f, 0.889224f, 0.889136f, + 0.889048f, 0.888961f, 0.888873f, 0.888785f, 0.888697f, 0.888609f, 0.888521f, 0.888433f, + 0.888345f, 0.888257f, 0.888169f, 0.888081f, 0.887993f, 0.887904f, 0.887816f, 0.887728f, + 0.887640f, 0.887551f, 0.887463f, 0.887375f, 0.887286f, 0.887198f, 0.887109f, 0.887021f, + 0.886932f, 0.886844f, 0.886755f, 0.886666f, 0.886578f, 0.886489f, 0.886400f, 0.886311f, + 0.886223f, 0.886134f, 0.886045f, 0.885956f, 0.885867f, 0.885778f, 0.885689f, 0.885600f, + 0.885511f, 0.885422f, 0.885333f, 0.885243f, 0.885154f, 0.885065f, 0.884976f, 0.884886f, + 0.884797f, 0.884708f, 0.884618f, 0.884529f, 0.884439f, 0.884350f, 0.884260f, 0.884171f, + 0.884081f, 0.883992f, 0.883902f, 0.883812f, 0.883723f, 0.883633f, 0.883543f, 0.883453f, + 0.883363f, 0.883273f, 0.883184f, 0.883094f, 0.883004f, 0.882914f, 0.882824f, 0.882733f, + 0.882643f, 0.882553f, 0.882463f, 0.882373f, 0.882283f, 0.882192f, 0.882102f, 0.882012f, + 0.881921f, 0.881831f, 0.881740f, 0.881650f, 0.881559f, 0.881469f, 0.881378f, 0.881288f, + 0.881197f, 0.881106f, 0.881016f, 0.880925f, 0.880834f, 0.880743f, 0.880653f, 0.880562f, + 0.880471f, 0.880380f, 0.880289f, 0.880198f, 0.880107f, 0.880016f, 0.879925f, 0.879834f, + 0.879743f, 0.879651f, 0.879560f, 0.879469f, 0.879378f, 0.879286f, 0.879195f, 0.879104f, + 0.879012f, 0.878921f, 0.878829f, 0.878738f, 0.878646f, 0.878555f, 0.878463f, 0.878371f, + 0.878280f, 0.878188f, 0.878096f, 0.878005f, 0.877913f, 0.877821f, 0.877729f, 0.877637f, + 0.877545f, 0.877453f, 0.877361f, 0.877269f, 0.877177f, 0.877085f, 0.876993f, 0.876901f, + 0.876809f, 0.876716f, 0.876624f, 0.876532f, 0.876440f, 0.876347f, 0.876255f, 0.876163f, + 0.876070f, 0.875978f, 0.875885f, 0.875793f, 0.875700f, 0.875607f, 0.875515f, 0.875422f, + 0.875329f, 0.875237f, 0.875144f, 0.875051f, 0.874958f, 0.874865f, 0.874773f, 0.874680f, + 0.874587f, 0.874494f, 0.874401f, 0.874308f, 0.874215f, 0.874121f, 0.874028f, 0.873935f, + 0.873842f, 0.873749f, 0.873655f, 0.873562f, 0.873469f, 0.873375f, 0.873282f, 0.873188f, + 0.873095f, 0.873001f, 0.872908f, 0.872814f, 0.872721f, 0.872627f, 0.872534f, 0.872440f, + 0.872346f, 0.872252f, 0.872159f, 0.872065f, 0.871971f, 0.871877f, 0.871783f, 0.871689f, + 0.871595f, 0.871501f, 0.871407f, 0.871313f, 0.871219f, 0.871125f, 0.871031f, 0.870936f, + 0.870842f, 0.870748f, 0.870654f, 0.870559f, 0.870465f, 0.870370f, 0.870276f, 0.870182f, + 0.870087f, 0.869992f, 0.869898f, 0.869803f, 0.869709f, 0.869614f, 0.869519f, 0.869425f, + 0.869330f, 0.869235f, 0.869140f, 0.869045f, 0.868951f, 0.868856f, 0.868761f, 0.868666f, + 0.868571f, 0.868476f, 0.868381f, 0.868285f, 0.868190f, 0.868095f, 0.868000f, 0.867905f, + 0.867809f, 0.867714f, 0.867619f, 0.867523f, 0.867428f, 0.867333f, 0.867237f, 0.867142f, + 0.867046f, 0.866951f, 0.866855f, 0.866759f, 0.866664f, 0.866568f, 0.866472f, 0.866377f, + 0.866281f, 0.866185f, 0.866089f, 0.865993f, 0.865898f, 0.865802f, 0.865706f, 0.865610f, + 0.865514f, 0.865418f, 0.865321f, 0.865225f, 0.865129f, 0.865033f, 0.864937f, 0.864841f, + 0.864744f, 0.864648f, 0.864552f, 0.864455f, 0.864359f, 0.864262f, 0.864166f, 0.864069f, + 0.863973f, 0.863876f, 0.863780f, 0.863683f, 0.863586f, 0.863490f, 0.863393f, 0.863296f, + 0.863199f, 0.863103f, 0.863006f, 0.862909f, 0.862812f, 0.862715f, 0.862618f, 0.862521f, + 0.862424f, 0.862327f, 0.862230f, 0.862133f, 0.862035f, 0.861938f, 0.861841f, 0.861744f, + 0.861646f, 0.861549f, 0.861452f, 0.861354f, 0.861257f, 0.861160f, 0.861062f, 0.860964f, + 0.860867f, 0.860769f, 0.860672f, 0.860574f, 0.860476f, 0.860379f, 0.860281f, 0.860183f, + 0.860085f, 0.859988f, 0.859890f, 0.859792f, 0.859694f, 0.859596f, 0.859498f, 0.859400f, + 0.859302f, 0.859204f, 0.859106f, 0.859007f, 0.858909f, 0.858811f, 0.858713f, 0.858615f, + 0.858516f, 0.858418f, 0.858320f, 0.858221f, 0.858123f, 0.858024f, 0.857926f, 0.857827f, + 0.857729f, 0.857630f, 0.857531f, 0.857433f, 0.857334f, 0.857235f, 0.857137f, 0.857038f, + 0.856939f, 0.856840f, 0.856741f, 0.856642f, 0.856543f, 0.856444f, 0.856345f, 0.856246f, + 0.856147f, 0.856048f, 0.855949f, 0.855850f, 0.855751f, 0.855651f, 0.855552f, 0.855453f, + 0.855354f, 0.855254f, 0.855155f, 0.855056f, 0.854956f, 0.854857f, 0.854757f, 0.854658f, + 0.854558f, 0.854458f, 0.854359f, 0.854259f, 0.854159f, 0.854060f, 0.853960f, 0.853860f, + 0.853760f, 0.853660f, 0.853561f, 0.853461f, 0.853361f, 0.853261f, 0.853161f, 0.853061f, + 0.852961f, 0.852861f, 0.852760f, 0.852660f, 0.852560f, 0.852460f, 0.852360f, 0.852259f, + 0.852159f, 0.852059f, 0.851958f, 0.851858f, 0.851757f, 0.851657f, 0.851556f, 0.851456f, + 0.851355f, 0.851255f, 0.851154f, 0.851053f, 0.850953f, 0.850852f, 0.850751f, 0.850650f, + 0.850549f, 0.850449f, 0.850348f, 0.850247f, 0.850146f, 0.850045f, 0.849944f, 0.849843f, + 0.849742f, 0.849641f, 0.849540f, 0.849438f, 0.849337f, 0.849236f, 0.849135f, 0.849033f, + 0.848932f, 0.848831f, 0.848729f, 0.848628f, 0.848526f, 0.848425f, 0.848323f, 0.848222f, + 0.848120f, 0.848019f, 0.847917f, 0.847815f, 0.847714f, 0.847612f, 0.847510f, 0.847408f, + 0.847307f, 0.847205f, 0.847103f, 0.847001f, 0.846899f, 0.846797f, 0.846695f, 0.846593f, + 0.846491f, 0.846389f, 0.846287f, 0.846185f, 0.846082f, 0.845980f, 0.845878f, 0.845776f, + 0.845673f, 0.845571f, 0.845469f, 0.845366f, 0.845264f, 0.845161f, 0.845059f, 0.844956f, + 0.844854f, 0.844751f, 0.844648f, 0.844546f, 0.844443f, 0.844340f, 0.844238f, 0.844135f, + 0.844032f, 0.843929f, 0.843826f, 0.843723f, 0.843620f, 0.843517f, 0.843414f, 0.843311f, + 0.843208f, 0.843105f, 0.843002f, 0.842899f, 0.842796f, 0.842692f, 0.842589f, 0.842486f, + 0.842383f, 0.842279f, 0.842176f, 0.842072f, 0.841969f, 0.841866f, 0.841762f, 0.841659f, + 0.841555f, 0.841451f, 0.841348f, 0.841244f, 0.841140f, 0.841037f, 0.840933f, 0.840829f, + 0.840725f, 0.840622f, 0.840518f, 0.840414f, 0.840310f, 0.840206f, 0.840102f, 0.839998f, + 0.839894f, 0.839790f, 0.839686f, 0.839581f, 0.839477f, 0.839373f, 0.839269f, 0.839165f, + 0.839060f, 0.838956f, 0.838852f, 0.838747f, 0.838643f, 0.838538f, 0.838434f, 0.838329f, + 0.838225f, 0.838120f, 0.838015f, 0.837911f, 0.837806f, 0.837701f, 0.837597f, 0.837492f, + 0.837387f, 0.837282f, 0.837178f, 0.837073f, 0.836968f, 0.836863f, 0.836758f, 0.836653f, + 0.836548f, 0.836443f, 0.836338f, 0.836232f, 0.836127f, 0.836022f, 0.835917f, 0.835812f, + 0.835706f, 0.835601f, 0.835496f, 0.835390f, 0.835285f, 0.835179f, 0.835074f, 0.834968f, + 0.834863f, 0.834757f, 0.834652f, 0.834546f, 0.834440f, 0.834335f, 0.834229f, 0.834123f, + 0.834018f, 0.833912f, 0.833806f, 0.833700f, 0.833594f, 0.833488f, 0.833382f, 0.833276f, + 0.833170f, 0.833064f, 0.832958f, 0.832852f, 0.832746f, 0.832640f, 0.832533f, 0.832427f, + 0.832321f, 0.832215f, 0.832108f, 0.832002f, 0.831895f, 0.831789f, 0.831683f, 0.831576f, + 0.831470f, 0.831363f, 0.831257f, 0.831150f, 0.831043f, 0.830937f, 0.830830f, 0.830723f, + 0.830616f, 0.830510f, 0.830403f, 0.830296f, 0.830189f, 0.830082f, 0.829975f, 0.829868f, + 0.829761f, 0.829654f, 0.829547f, 0.829440f, 0.829333f, 0.829226f, 0.829119f, 0.829011f, + 0.828904f, 0.828797f, 0.828690f, 0.828582f, 0.828475f, 0.828367f, 0.828260f, 0.828153f, + 0.828045f, 0.827938f, 0.827830f, 0.827722f, 0.827615f, 0.827507f, 0.827399f, 0.827292f, + 0.827184f, 0.827076f, 0.826968f, 0.826861f, 0.826753f, 0.826645f, 0.826537f, 0.826429f, + 0.826321f, 0.826213f, 0.826105f, 0.825997f, 0.825889f, 0.825781f, 0.825673f, 0.825564f, + 0.825456f, 0.825348f, 0.825240f, 0.825131f, 0.825023f, 0.824915f, 0.824806f, 0.824698f, + 0.824589f, 0.824481f, 0.824372f, 0.824264f, 0.824155f, 0.824047f, 0.823938f, 0.823829f, + 0.823721f, 0.823612f, 0.823503f, 0.823394f, 0.823285f, 0.823177f, 0.823068f, 0.822959f, + 0.822850f, 0.822741f, 0.822632f, 0.822523f, 0.822414f, 0.822305f, 0.822195f, 0.822086f, + 0.821977f, 0.821868f, 0.821759f, 0.821649f, 0.821540f, 0.821431f, 0.821321f, 0.821212f, + 0.821102f, 0.820993f, 0.820884f, 0.820774f, 0.820664f, 0.820555f, 0.820445f, 0.820336f, + 0.820226f, 0.820116f, 0.820007f, 0.819897f, 0.819787f, 0.819677f, 0.819567f, 0.819457f, + 0.819348f, 0.819238f, 0.819128f, 0.819018f, 0.818908f, 0.818798f, 0.818687f, 0.818577f, + 0.818467f, 0.818357f, 0.818247f, 0.818137f, 0.818026f, 0.817916f, 0.817806f, 0.817695f, + 0.817585f, 0.817474f, 0.817364f, 0.817253f, 0.817143f, 0.817032f, 0.816922f, 0.816811f, + 0.816701f, 0.816590f, 0.816479f, 0.816368f, 0.816258f, 0.816147f, 0.816036f, 0.815925f, + 0.815814f, 0.815704f, 0.815593f, 0.815482f, 0.815371f, 0.815260f, 0.815149f, 0.815037f, + 0.814926f, 0.814815f, 0.814704f, 0.814593f, 0.814482f, 0.814370f, 0.814259f, 0.814148f, + 0.814036f, 0.813925f, 0.813814f, 0.813702f, 0.813591f, 0.813479f, 0.813368f, 0.813256f, + 0.813144f, 0.813033f, 0.812921f, 0.812809f, 0.812698f, 0.812586f, 0.812474f, 0.812362f, + 0.812251f, 0.812139f, 0.812027f, 0.811915f, 0.811803f, 0.811691f, 0.811579f, 0.811467f, + 0.811355f, 0.811243f, 0.811131f, 0.811018f, 0.810906f, 0.810794f, 0.810682f, 0.810570f, + 0.810457f, 0.810345f, 0.810232f, 0.810120f, 0.810008f, 0.809895f, 0.809783f, 0.809670f, + 0.809558f, 0.809445f, 0.809332f, 0.809220f, 0.809107f, 0.808994f, 0.808882f, 0.808769f, + 0.808656f, 0.808543f, 0.808430f, 0.808318f, 0.808205f, 0.808092f, 0.807979f, 0.807866f, + 0.807753f, 0.807640f, 0.807527f, 0.807414f, 0.807300f, 0.807187f, 0.807074f, 0.806961f, + 0.806848f, 0.806734f, 0.806621f, 0.806508f, 0.806394f, 0.806281f, 0.806167f, 0.806054f, + 0.805940f, 0.805827f, 0.805713f, 0.805600f, 0.805486f, 0.805372f, 0.805259f, 0.805145f, + 0.805031f, 0.804918f, 0.804804f, 0.804690f, 0.804576f, 0.804462f, 0.804348f, 0.804234f, + 0.804120f, 0.804006f, 0.803892f, 0.803778f, 0.803664f, 0.803550f, 0.803436f, 0.803322f, + 0.803208f, 0.803093f, 0.802979f, 0.802865f, 0.802750f, 0.802636f, 0.802522f, 0.802407f, + 0.802293f, 0.802178f, 0.802064f, 0.801949f, 0.801835f, 0.801720f, 0.801606f, 0.801491f, + 0.801376f, 0.801261f, 0.801147f, 0.801032f, 0.800917f, 0.800802f, 0.800687f, 0.800573f, + 0.800458f, 0.800343f, 0.800228f, 0.800113f, 0.799998f, 0.799883f, 0.799768f, 0.799652f, + 0.799537f, 0.799422f, 0.799307f, 0.799192f, 0.799076f, 0.798961f, 0.798846f, 0.798730f, + 0.798615f, 0.798500f, 0.798384f, 0.798269f, 0.798153f, 0.798038f, 0.797922f, 0.797806f, + 0.797691f, 0.797575f, 0.797459f, 0.797344f, 0.797228f, 0.797112f, 0.796996f, 0.796881f, + 0.796765f, 0.796649f, 0.796533f, 0.796417f, 0.796301f, 0.796185f, 0.796069f, 0.795953f, + 0.795837f, 0.795721f, 0.795605f, 0.795488f, 0.795372f, 0.795256f, 0.795140f, 0.795023f, + 0.794907f, 0.794791f, 0.794674f, 0.794558f, 0.794442f, 0.794325f, 0.794209f, 0.794092f, + 0.793975f, 0.793859f, 0.793742f, 0.793626f, 0.793509f, 0.793392f, 0.793276f, 0.793159f, + 0.793042f, 0.792925f, 0.792808f, 0.792691f, 0.792575f, 0.792458f, 0.792341f, 0.792224f, + 0.792107f, 0.791990f, 0.791872f, 0.791755f, 0.791638f, 0.791521f, 0.791404f, 0.791287f, + 0.791169f, 0.791052f, 0.790935f, 0.790817f, 0.790700f, 0.790583f, 0.790465f, 0.790348f, + 0.790230f, 0.790113f, 0.789995f, 0.789878f, 0.789760f, 0.789642f, 0.789525f, 0.789407f, + 0.789289f, 0.789172f, 0.789054f, 0.788936f, 0.788818f, 0.788700f, 0.788582f, 0.788464f, + 0.788346f, 0.788228f, 0.788110f, 0.787992f, 0.787874f, 0.787756f, 0.787638f, 0.787520f, + 0.787402f, 0.787284f, 0.787165f, 0.787047f, 0.786929f, 0.786810f, 0.786692f, 0.786574f, + 0.786455f, 0.786337f, 0.786218f, 0.786100f, 0.785981f, 0.785863f, 0.785744f, 0.785625f, + 0.785507f, 0.785388f, 0.785269f, 0.785151f, 0.785032f, 0.784913f, 0.784794f, 0.784675f, + 0.784557f, 0.784438f, 0.784319f, 0.784200f, 0.784081f, 0.783962f, 0.783843f, 0.783724f, + 0.783605f, 0.783485f, 0.783366f, 0.783247f, 0.783128f, 0.783009f, 0.782889f, 0.782770f, + 0.782651f, 0.782531f, 0.782412f, 0.782292f, 0.782173f, 0.782053f, 0.781934f, 0.781814f, + 0.781695f, 0.781575f, 0.781456f, 0.781336f, 0.781216f, 0.781097f, 0.780977f, 0.780857f, + 0.780737f, 0.780617f, 0.780498f, 0.780378f, 0.780258f, 0.780138f, 0.780018f, 0.779898f, + 0.779778f, 0.779658f, 0.779538f, 0.779418f, 0.779297f, 0.779177f, 0.779057f, 0.778937f, + 0.778817f, 0.778696f, 0.778576f, 0.778456f, 0.778335f, 0.778215f, 0.778094f, 0.777974f, + 0.777853f, 0.777733f, 0.777612f, 0.777492f, 0.777371f, 0.777251f, 0.777130f, 0.777009f, + 0.776888f, 0.776768f, 0.776647f, 0.776526f, 0.776405f, 0.776284f, 0.776164f, 0.776043f, + 0.775922f, 0.775801f, 0.775680f, 0.775559f, 0.775438f, 0.775317f, 0.775195f, 0.775074f, + 0.774953f, 0.774832f, 0.774711f, 0.774589f, 0.774468f, 0.774347f, 0.774225f, 0.774104f, + 0.773983f, 0.773861f, 0.773740f, 0.773618f, 0.773497f, 0.773375f, 0.773254f, 0.773132f, + 0.773010f, 0.772889f, 0.772767f, 0.772645f, 0.772524f, 0.772402f, 0.772280f, 0.772158f, + 0.772036f, 0.771915f, 0.771793f, 0.771671f, 0.771549f, 0.771427f, 0.771305f, 0.771183f, + 0.771061f, 0.770938f, 0.770816f, 0.770694f, 0.770572f, 0.770450f, 0.770327f, 0.770205f, + 0.770083f, 0.769961f, 0.769838f, 0.769716f, 0.769593f, 0.769471f, 0.769348f, 0.769226f, + 0.769103f, 0.768981f, 0.768858f, 0.768736f, 0.768613f, 0.768490f, 0.768368f, 0.768245f, + 0.768122f, 0.767999f, 0.767876f, 0.767754f, 0.767631f, 0.767508f, 0.767385f, 0.767262f, + 0.767139f, 0.767016f, 0.766893f, 0.766770f, 0.766647f, 0.766524f, 0.766400f, 0.766277f, + 0.766154f, 0.766031f, 0.765907f, 0.765784f, 0.765661f, 0.765538f, 0.765414f, 0.765291f, + 0.765167f, 0.765044f, 0.764920f, 0.764797f, 0.764673f, 0.764550f, 0.764426f, 0.764302f, + 0.764179f, 0.764055f, 0.763931f, 0.763808f, 0.763684f, 0.763560f, 0.763436f, 0.763312f, + 0.763188f, 0.763065f, 0.762941f, 0.762817f, 0.762693f, 0.762569f, 0.762444f, 0.762320f, + 0.762196f, 0.762072f, 0.761948f, 0.761824f, 0.761700f, 0.761575f, 0.761451f, 0.761327f, + 0.761202f, 0.761078f, 0.760954f, 0.760829f, 0.760705f, 0.760580f, 0.760456f, 0.760331f, + 0.760207f, 0.760082f, 0.759957f, 0.759833f, 0.759708f, 0.759583f, 0.759459f, 0.759334f, + 0.759209f, 0.759084f, 0.758960f, 0.758835f, 0.758710f, 0.758585f, 0.758460f, 0.758335f, + 0.758210f, 0.758085f, 0.757960f, 0.757835f, 0.757710f, 0.757584f, 0.757459f, 0.757334f, + 0.757209f, 0.757084f, 0.756958f, 0.756833f, 0.756708f, 0.756582f, 0.756457f, 0.756331f, + 0.756206f, 0.756081f, 0.755955f, 0.755829f, 0.755704f, 0.755578f, 0.755453f, 0.755327f, + 0.755201f, 0.755076f, 0.754950f, 0.754824f, 0.754698f, 0.754573f, 0.754447f, 0.754321f, + 0.754195f, 0.754069f, 0.753943f, 0.753817f, 0.753691f, 0.753565f, 0.753439f, 0.753313f, + 0.753187f, 0.753061f, 0.752934f, 0.752808f, 0.752682f, 0.752556f, 0.752429f, 0.752303f, + 0.752177f, 0.752050f, 0.751924f, 0.751798f, 0.751671f, 0.751545f, 0.751418f, 0.751292f, + 0.751165f, 0.751039f, 0.750912f, 0.750785f, 0.750659f, 0.750532f, 0.750405f, 0.750278f, + 0.750152f, 0.750025f, 0.749898f, 0.749771f, 0.749644f, 0.749517f, 0.749390f, 0.749263f, + 0.749136f, 0.749009f, 0.748882f, 0.748755f, 0.748628f, 0.748501f, 0.748374f, 0.748247f, + 0.748119f, 0.747992f, 0.747865f, 0.747738f, 0.747610f, 0.747483f, 0.747355f, 0.747228f, + 0.747101f, 0.746973f, 0.746846f, 0.746718f, 0.746591f, 0.746463f, 0.746335f, 0.746208f, + 0.746080f, 0.745952f, 0.745825f, 0.745697f, 0.745569f, 0.745441f, 0.745314f, 0.745186f, + 0.745058f, 0.744930f, 0.744802f, 0.744674f, 0.744546f, 0.744418f, 0.744290f, 0.744162f, + 0.744034f, 0.743906f, 0.743777f, 0.743649f, 0.743521f, 0.743393f, 0.743265f, 0.743136f, + 0.743008f, 0.742880f, 0.742751f, 0.742623f, 0.742494f, 0.742366f, 0.742237f, 0.742109f, + 0.741980f, 0.741852f, 0.741723f, 0.741595f, 0.741466f, 0.741337f, 0.741209f, 0.741080f, + 0.740951f, 0.740822f, 0.740694f, 0.740565f, 0.740436f, 0.740307f, 0.740178f, 0.740049f, + 0.739920f, 0.739791f, 0.739662f, 0.739533f, 0.739404f, 0.739275f, 0.739146f, 0.739017f, + 0.738887f, 0.738758f, 0.738629f, 0.738500f, 0.738370f, 0.738241f, 0.738112f, 0.737982f, + 0.737853f, 0.737723f, 0.737594f, 0.737464f, 0.737335f, 0.737205f, 0.737076f, 0.736946f, + 0.736817f, 0.736687f, 0.736557f, 0.736428f, 0.736298f, 0.736168f, 0.736038f, 0.735908f, + 0.735779f, 0.735649f, 0.735519f, 0.735389f, 0.735259f, 0.735129f, 0.734999f, 0.734869f, + 0.734739f, 0.734609f, 0.734479f, 0.734349f, 0.734218f, 0.734088f, 0.733958f, 0.733828f, + 0.733697f, 0.733567f, 0.733437f, 0.733306f, 0.733176f, 0.733046f, 0.732915f, 0.732785f, + 0.732654f, 0.732524f, 0.732393f, 0.732263f, 0.732132f, 0.732001f, 0.731871f, 0.731740f, + 0.731609f, 0.731479f, 0.731348f, 0.731217f, 0.731086f, 0.730955f, 0.730825f, 0.730694f, + 0.730563f, 0.730432f, 0.730301f, 0.730170f, 0.730039f, 0.729908f, 0.729777f, 0.729646f, + 0.729514f, 0.729383f, 0.729252f, 0.729121f, 0.728990f, 0.728858f, 0.728727f, 0.728596f, + 0.728464f, 0.728333f, 0.728202f, 0.728070f, 0.727939f, 0.727807f, 0.727676f, 0.727544f, + 0.727413f, 0.727281f, 0.727149f, 0.727018f, 0.726886f, 0.726754f, 0.726623f, 0.726491f, + 0.726359f, 0.726227f, 0.726095f, 0.725964f, 0.725832f, 0.725700f, 0.725568f, 0.725436f, + 0.725304f, 0.725172f, 0.725040f, 0.724908f, 0.724776f, 0.724644f, 0.724511f, 0.724379f, + 0.724247f, 0.724115f, 0.723983f, 0.723850f, 0.723718f, 0.723586f, 0.723453f, 0.723321f, + 0.723188f, 0.723056f, 0.722924f, 0.722791f, 0.722659f, 0.722526f, 0.722393f, 0.722261f, + 0.722128f, 0.721996f, 0.721863f, 0.721730f, 0.721597f, 0.721465f, 0.721332f, 0.721199f, + 0.721066f, 0.720933f, 0.720800f, 0.720668f, 0.720535f, 0.720402f, 0.720269f, 0.720136f, + 0.720003f, 0.719869f, 0.719736f, 0.719603f, 0.719470f, 0.719337f, 0.719204f, 0.719070f, + 0.718937f, 0.718804f, 0.718670f, 0.718537f, 0.718404f, 0.718270f, 0.718137f, 0.718004f, + 0.717870f, 0.717737f, 0.717603f, 0.717469f, 0.717336f, 0.717202f, 0.717069f, 0.716935f, + 0.716801f, 0.716668f, 0.716534f, 0.716400f, 0.716266f, 0.716132f, 0.715999f, 0.715865f, + 0.715731f, 0.715597f, 0.715463f, 0.715329f, 0.715195f, 0.715061f, 0.714927f, 0.714793f, + 0.714659f, 0.714525f, 0.714390f, 0.714256f, 0.714122f, 0.713988f, 0.713853f, 0.713719f, + 0.713585f, 0.713451f, 0.713316f, 0.713182f, 0.713047f, 0.712913f, 0.712778f, 0.712644f, + 0.712509f, 0.712375f, 0.712240f, 0.712106f, 0.711971f, 0.711836f, 0.711702f, 0.711567f, + 0.711432f, 0.711297f, 0.711163f, 0.711028f, 0.710893f, 0.710758f, 0.710623f, 0.710488f, + 0.710353f, 0.710218f, 0.710083f, 0.709948f, 0.709813f, 0.709678f, 0.709543f, 0.709408f, + 0.709273f, 0.709138f, 0.709002f, 0.708867f, 0.708732f, 0.708597f, 0.708461f, 0.708326f, + 0.708191f, 0.708055f, 0.707920f, 0.707784f, 0.707649f, 0.707513f, 0.707378f, 0.707242f, + 0.707107f, 0.706971f, 0.706836f, 0.706700f, 0.706564f, 0.706429f, 0.706293f, 0.706157f, + 0.706021f, 0.705885f, 0.705750f, 0.705614f, 0.705478f, 0.705342f, 0.705206f, 0.705070f, + 0.704934f, 0.704798f, 0.704662f, 0.704526f, 0.704390f, 0.704254f, 0.704118f, 0.703981f, + 0.703845f, 0.703709f, 0.703573f, 0.703436f, 0.703300f, 0.703164f, 0.703028f, 0.702891f, + 0.702755f, 0.702618f, 0.702482f, 0.702345f, 0.702209f, 0.702072f, 0.701936f, 0.701799f, + 0.701663f, 0.701526f, 0.701389f, 0.701253f, 0.701116f, 0.700979f, 0.700842f, 0.700706f, + 0.700569f, 0.700432f, 0.700295f, 0.700158f, 0.700021f, 0.699884f, 0.699747f, 0.699610f, + 0.699473f, 0.699336f, 0.699199f, 0.699062f, 0.698925f, 0.698788f, 0.698651f, 0.698513f, + 0.698376f, 0.698239f, 0.698102f, 0.697964f, 0.697827f, 0.697690f, 0.697552f, 0.697415f, + 0.697277f, 0.697140f, 0.697003f, 0.696865f, 0.696728f, 0.696590f, 0.696452f, 0.696315f, + 0.696177f, 0.696039f, 0.695902f, 0.695764f, 0.695626f, 0.695489f, 0.695351f, 0.695213f, + 0.695075f, 0.694937f, 0.694799f, 0.694661f, 0.694524f, 0.694386f, 0.694248f, 0.694109f, + 0.693971f, 0.693833f, 0.693695f, 0.693557f, 0.693419f, 0.693281f, 0.693143f, 0.693004f, + 0.692866f, 0.692728f, 0.692590f, 0.692451f, 0.692313f, 0.692175f, 0.692036f, 0.691898f, + 0.691759f, 0.691621f, 0.691482f, 0.691344f, 0.691205f, 0.691067f, 0.690928f, 0.690789f, + 0.690651f, 0.690512f, 0.690373f, 0.690235f, 0.690096f, 0.689957f, 0.689818f, 0.689679f, + 0.689541f, 0.689402f, 0.689263f, 0.689124f, 0.688985f, 0.688846f, 0.688707f, 0.688568f, + 0.688429f, 0.688290f, 0.688151f, 0.688011f, 0.687872f, 0.687733f, 0.687594f, 0.687455f, + 0.687315f, 0.687176f, 0.687037f, 0.686897f, 0.686758f, 0.686619f, 0.686479f, 0.686340f, + 0.686200f, 0.686061f, 0.685921f, 0.685782f, 0.685642f, 0.685503f, 0.685363f, 0.685223f, + 0.685084f, 0.684944f, 0.684804f, 0.684664f, 0.684525f, 0.684385f, 0.684245f, 0.684105f, + 0.683965f, 0.683825f, 0.683686f, 0.683546f, 0.683406f, 0.683266f, 0.683126f, 0.682986f, + 0.682846f, 0.682705f, 0.682565f, 0.682425f, 0.682285f, 0.682145f, 0.682005f, 0.681864f, + 0.681724f, 0.681584f, 0.681443f, 0.681303f, 0.681163f, 0.681022f, 0.680882f, 0.680741f, + 0.680601f, 0.680461f, 0.680320f, 0.680179f, 0.680039f, 0.679898f, 0.679758f, 0.679617f, + 0.679476f, 0.679336f, 0.679195f, 0.679054f, 0.678913f, 0.678773f, 0.678632f, 0.678491f, + 0.678350f, 0.678209f, 0.678068f, 0.677927f, 0.677786f, 0.677645f, 0.677504f, 0.677363f, + 0.677222f, 0.677081f, 0.676940f, 0.676799f, 0.676658f, 0.676516f, 0.676375f, 0.676234f, + 0.676093f, 0.675951f, 0.675810f, 0.675669f, 0.675527f, 0.675386f, 0.675245f, 0.675103f, + 0.674962f, 0.674820f, 0.674679f, 0.674537f, 0.674396f, 0.674254f, 0.674112f, 0.673971f, + 0.673829f, 0.673687f, 0.673546f, 0.673404f, 0.673262f, 0.673120f, 0.672978f, 0.672837f, + 0.672695f, 0.672553f, 0.672411f, 0.672269f, 0.672127f, 0.671985f, 0.671843f, 0.671701f, + 0.671559f, 0.671417f, 0.671275f, 0.671133f, 0.670990f, 0.670848f, 0.670706f, 0.670564f, + 0.670422f, 0.670279f, 0.670137f, 0.669995f, 0.669852f, 0.669710f, 0.669567f, 0.669425f, + 0.669283f, 0.669140f, 0.668998f, 0.668855f, 0.668712f, 0.668570f, 0.668427f, 0.668285f, + 0.668142f, 0.667999f, 0.667857f, 0.667714f, 0.667571f, 0.667428f, 0.667286f, 0.667143f, + 0.667000f, 0.666857f, 0.666714f, 0.666571f, 0.666428f, 0.666285f, 0.666142f, 0.665999f, + 0.665856f, 0.665713f, 0.665570f, 0.665427f, 0.665284f, 0.665141f, 0.664997f, 0.664854f, + 0.664711f, 0.664568f, 0.664424f, 0.664281f, 0.664138f, 0.663994f, 0.663851f, 0.663708f, + 0.663564f, 0.663421f, 0.663277f, 0.663134f, 0.662990f, 0.662847f, 0.662703f, 0.662559f, + 0.662416f, 0.662272f, 0.662128f, 0.661985f, 0.661841f, 0.661697f, 0.661553f, 0.661410f, + 0.661266f, 0.661122f, 0.660978f, 0.660834f, 0.660690f, 0.660546f, 0.660402f, 0.660258f, + 0.660114f, 0.659970f, 0.659826f, 0.659682f, 0.659538f, 0.659394f, 0.659250f, 0.659105f, + 0.658961f, 0.658817f, 0.658673f, 0.658529f, 0.658384f, 0.658240f, 0.658095f, 0.657951f, + 0.657807f, 0.657662f, 0.657518f, 0.657373f, 0.657229f, 0.657084f, 0.656940f, 0.656795f, + 0.656651f, 0.656506f, 0.656361f, 0.656217f, 0.656072f, 0.655927f, 0.655782f, 0.655638f, + 0.655493f, 0.655348f, 0.655203f, 0.655058f, 0.654913f, 0.654769f, 0.654624f, 0.654479f, + 0.654334f, 0.654189f, 0.654044f, 0.653899f, 0.653753f, 0.653608f, 0.653463f, 0.653318f, + 0.653173f, 0.653028f, 0.652882f, 0.652737f, 0.652592f, 0.652447f, 0.652301f, 0.652156f, + 0.652011f, 0.651865f, 0.651720f, 0.651574f, 0.651429f, 0.651283f, 0.651138f, 0.650992f, + 0.650847f, 0.650701f, 0.650555f, 0.650410f, 0.650264f, 0.650119f, 0.649973f, 0.649827f, + 0.649681f, 0.649536f, 0.649390f, 0.649244f, 0.649098f, 0.648952f, 0.648806f, 0.648660f, + 0.648514f, 0.648368f, 0.648222f, 0.648076f, 0.647930f, 0.647784f, 0.647638f, 0.647492f, + 0.647346f, 0.647200f, 0.647054f, 0.646907f, 0.646761f, 0.646615f, 0.646469f, 0.646322f, + 0.646176f, 0.646030f, 0.645883f, 0.645737f, 0.645590f, 0.645444f, 0.645298f, 0.645151f, + 0.645005f, 0.644858f, 0.644711f, 0.644565f, 0.644418f, 0.644272f, 0.644125f, 0.643978f, + 0.643832f, 0.643685f, 0.643538f, 0.643391f, 0.643245f, 0.643098f, 0.642951f, 0.642804f, + 0.642657f, 0.642510f, 0.642363f, 0.642216f, 0.642069f, 0.641922f, 0.641775f, 0.641628f, + 0.641481f, 0.641334f, 0.641187f, 0.641040f, 0.640892f, 0.640745f, 0.640598f, 0.640451f, + 0.640303f, 0.640156f, 0.640009f, 0.639862f, 0.639714f, 0.639567f, 0.639419f, 0.639272f, + 0.639124f, 0.638977f, 0.638829f, 0.638682f, 0.638534f, 0.638387f, 0.638239f, 0.638092f, + 0.637944f, 0.637796f, 0.637649f, 0.637501f, 0.637353f, 0.637205f, 0.637057f, 0.636910f, + 0.636762f, 0.636614f, 0.636466f, 0.636318f, 0.636170f, 0.636022f, 0.635874f, 0.635726f, + 0.635578f, 0.635430f, 0.635282f, 0.635134f, 0.634986f, 0.634838f, 0.634690f, 0.634542f, + 0.634393f, 0.634245f, 0.634097f, 0.633949f, 0.633800f, 0.633652f, 0.633504f, 0.633355f, + 0.633207f, 0.633058f, 0.632910f, 0.632761f, 0.632613f, 0.632464f, 0.632316f, 0.632167f, + 0.632019f, 0.631870f, 0.631721f, 0.631573f, 0.631424f, 0.631275f, 0.631127f, 0.630978f, + 0.630829f, 0.630680f, 0.630532f, 0.630383f, 0.630234f, 0.630085f, 0.629936f, 0.629787f, + 0.629638f, 0.629489f, 0.629340f, 0.629191f, 0.629042f, 0.628893f, 0.628744f, 0.628595f, + 0.628446f, 0.628297f, 0.628147f, 0.627998f, 0.627849f, 0.627700f, 0.627550f, 0.627401f, + 0.627252f, 0.627102f, 0.626953f, 0.626804f, 0.626654f, 0.626505f, 0.626355f, 0.626206f, + 0.626056f, 0.625907f, 0.625757f, 0.625608f, 0.625458f, 0.625309f, 0.625159f, 0.625009f, + 0.624860f, 0.624710f, 0.624560f, 0.624410f, 0.624260f, 0.624111f, 0.623961f, 0.623811f, + 0.623661f, 0.623511f, 0.623361f, 0.623211f, 0.623061f, 0.622911f, 0.622761f, 0.622611f, + 0.622461f, 0.622311f, 0.622161f, 0.622011f, 0.621861f, 0.621711f, 0.621560f, 0.621410f, + 0.621260f, 0.621110f, 0.620959f, 0.620809f, 0.620659f, 0.620508f, 0.620358f, 0.620208f, + 0.620057f, 0.619907f, 0.619756f, 0.619606f, 0.619455f, 0.619305f, 0.619154f, 0.619004f, + 0.618853f, 0.618702f, 0.618552f, 0.618401f, 0.618250f, 0.618100f, 0.617949f, 0.617798f, + 0.617647f, 0.617496f, 0.617346f, 0.617195f, 0.617044f, 0.616893f, 0.616742f, 0.616591f, + 0.616440f, 0.616289f, 0.616138f, 0.615987f, 0.615836f, 0.615685f, 0.615534f, 0.615383f, + 0.615232f, 0.615080f, 0.614929f, 0.614778f, 0.614627f, 0.614475f, 0.614324f, 0.614173f, + 0.614022f, 0.613870f, 0.613719f, 0.613567f, 0.613416f, 0.613265f, 0.613113f, 0.612962f, + 0.612810f, 0.612659f, 0.612507f, 0.612355f, 0.612204f, 0.612052f, 0.611901f, 0.611749f, + 0.611597f, 0.611445f, 0.611294f, 0.611142f, 0.610990f, 0.610838f, 0.610687f, 0.610535f, + 0.610383f, 0.610231f, 0.610079f, 0.609927f, 0.609775f, 0.609623f, 0.609471f, 0.609319f, + 0.609167f, 0.609015f, 0.608863f, 0.608711f, 0.608559f, 0.608406f, 0.608254f, 0.608102f, + 0.607950f, 0.607798f, 0.607645f, 0.607493f, 0.607341f, 0.607188f, 0.607036f, 0.606884f, + 0.606731f, 0.606579f, 0.606426f, 0.606274f, 0.606121f, 0.605969f, 0.605816f, 0.605664f, + 0.605511f, 0.605358f, 0.605206f, 0.605053f, 0.604900f, 0.604748f, 0.604595f, 0.604442f, + 0.604290f, 0.604137f, 0.603984f, 0.603831f, 0.603678f, 0.603525f, 0.603372f, 0.603220f, + 0.603067f, 0.602914f, 0.602761f, 0.602608f, 0.602455f, 0.602302f, 0.602148f, 0.601995f, + 0.601842f, 0.601689f, 0.601536f, 0.601383f, 0.601230f, 0.601076f, 0.600923f, 0.600770f, + 0.600616f, 0.600463f, 0.600310f, 0.600156f, 0.600003f, 0.599850f, 0.599696f, 0.599543f, + 0.599389f, 0.599236f, 0.599082f, 0.598929f, 0.598775f, 0.598622f, 0.598468f, 0.598314f, + 0.598161f, 0.598007f, 0.597853f, 0.597700f, 0.597546f, 0.597392f, 0.597238f, 0.597085f, + 0.596931f, 0.596777f, 0.596623f, 0.596469f, 0.596315f, 0.596161f, 0.596007f, 0.595853f, + 0.595699f, 0.595545f, 0.595391f, 0.595237f, 0.595083f, 0.594929f, 0.594775f, 0.594621f, + 0.594467f, 0.594312f, 0.594158f, 0.594004f, 0.593850f, 0.593695f, 0.593541f, 0.593387f, + 0.593232f, 0.593078f, 0.592924f, 0.592769f, 0.592615f, 0.592460f, 0.592306f, 0.592151f, + 0.591997f, 0.591842f, 0.591688f, 0.591533f, 0.591378f, 0.591224f, 0.591069f, 0.590914f, + 0.590760f, 0.590605f, 0.590450f, 0.590295f, 0.590141f, 0.589986f, 0.589831f, 0.589676f, + 0.589521f, 0.589366f, 0.589212f, 0.589057f, 0.588902f, 0.588747f, 0.588592f, 0.588437f, + 0.588282f, 0.588126f, 0.587971f, 0.587816f, 0.587661f, 0.587506f, 0.587351f, 0.587196f, + 0.587040f, 0.586885f, 0.586730f, 0.586575f, 0.586419f, 0.586264f, 0.586109f, 0.585953f, + 0.585798f, 0.585642f, 0.585487f, 0.585332f, 0.585176f, 0.585021f, 0.584865f, 0.584710f, + 0.584554f, 0.584398f, 0.584243f, 0.584087f, 0.583931f, 0.583776f, 0.583620f, 0.583464f, + 0.583309f, 0.583153f, 0.582997f, 0.582841f, 0.582685f, 0.582530f, 0.582374f, 0.582218f, + 0.582062f, 0.581906f, 0.581750f, 0.581594f, 0.581438f, 0.581282f, 0.581126f, 0.580970f, + 0.580814f, 0.580658f, 0.580502f, 0.580346f, 0.580189f, 0.580033f, 0.579877f, 0.579721f, + 0.579565f, 0.579408f, 0.579252f, 0.579096f, 0.578939f, 0.578783f, 0.578627f, 0.578470f, + 0.578314f, 0.578157f, 0.578001f, 0.577844f, 0.577688f, 0.577531f, 0.577375f, 0.577218f, + 0.577062f, 0.576905f, 0.576748f, 0.576592f, 0.576435f, 0.576278f, 0.576122f, 0.575965f, + 0.575808f, 0.575651f, 0.575495f, 0.575338f, 0.575181f, 0.575024f, 0.574867f, 0.574710f, + 0.574553f, 0.574396f, 0.574239f, 0.574082f, 0.573925f, 0.573768f, 0.573611f, 0.573454f, + 0.573297f, 0.573140f, 0.572983f, 0.572826f, 0.572669f, 0.572511f, 0.572354f, 0.572197f, + 0.572040f, 0.571882f, 0.571725f, 0.571568f, 0.571410f, 0.571253f, 0.571096f, 0.570938f, + 0.570781f, 0.570623f, 0.570466f, 0.570308f, 0.570151f, 0.569993f, 0.569836f, 0.569678f, + 0.569521f, 0.569363f, 0.569205f, 0.569048f, 0.568890f, 0.568732f, 0.568574f, 0.568417f, + 0.568259f, 0.568101f, 0.567943f, 0.567786f, 0.567628f, 0.567470f, 0.567312f, 0.567154f, + 0.566996f, 0.566838f, 0.566680f, 0.566522f, 0.566364f, 0.566206f, 0.566048f, 0.565890f, + 0.565732f, 0.565574f, 0.565416f, 0.565257f, 0.565099f, 0.564941f, 0.564783f, 0.564624f, + 0.564466f, 0.564308f, 0.564150f, 0.563991f, 0.563833f, 0.563675f, 0.563516f, 0.563358f, + 0.563199f, 0.563041f, 0.562882f, 0.562724f, 0.562565f, 0.562407f, 0.562248f, 0.562090f, + 0.561931f, 0.561773f, 0.561614f, 0.561455f, 0.561297f, 0.561138f, 0.560979f, 0.560820f, + 0.560662f, 0.560503f, 0.560344f, 0.560185f, 0.560026f, 0.559867f, 0.559709f, 0.559550f, + 0.559391f, 0.559232f, 0.559073f, 0.558914f, 0.558755f, 0.558596f, 0.558437f, 0.558278f, + 0.558119f, 0.557959f, 0.557800f, 0.557641f, 0.557482f, 0.557323f, 0.557164f, 0.557004f, + 0.556845f, 0.556686f, 0.556526f, 0.556367f, 0.556208f, 0.556048f, 0.555889f, 0.555730f, + 0.555570f, 0.555411f, 0.555251f, 0.555092f, 0.554932f, 0.554773f, 0.554613f, 0.554454f, + 0.554294f, 0.554134f, 0.553975f, 0.553815f, 0.553656f, 0.553496f, 0.553336f, 0.553176f, + 0.553017f, 0.552857f, 0.552697f, 0.552537f, 0.552378f, 0.552218f, 0.552058f, 0.551898f, + 0.551738f, 0.551578f, 0.551418f, 0.551258f, 0.551098f, 0.550938f, 0.550778f, 0.550618f, + 0.550458f, 0.550298f, 0.550138f, 0.549978f, 0.549818f, 0.549657f, 0.549497f, 0.549337f, + 0.549177f, 0.549016f, 0.548856f, 0.548696f, 0.548536f, 0.548375f, 0.548215f, 0.548054f, + 0.547894f, 0.547734f, 0.547573f, 0.547413f, 0.547252f, 0.547092f, 0.546931f, 0.546771f, + 0.546610f, 0.546450f, 0.546289f, 0.546128f, 0.545968f, 0.545807f, 0.545646f, 0.545486f, + 0.545325f, 0.545164f, 0.545003f, 0.544843f, 0.544682f, 0.544521f, 0.544360f, 0.544199f, + 0.544039f, 0.543878f, 0.543717f, 0.543556f, 0.543395f, 0.543234f, 0.543073f, 0.542912f, + 0.542751f, 0.542590f, 0.542429f, 0.542268f, 0.542106f, 0.541945f, 0.541784f, 0.541623f, + 0.541462f, 0.541301f, 0.541139f, 0.540978f, 0.540817f, 0.540655f, 0.540494f, 0.540333f, + 0.540171f, 0.540010f, 0.539849f, 0.539687f, 0.539526f, 0.539364f, 0.539203f, 0.539041f, + 0.538880f, 0.538718f, 0.538557f, 0.538395f, 0.538234f, 0.538072f, 0.537910f, 0.537749f, + 0.537587f, 0.537425f, 0.537264f, 0.537102f, 0.536940f, 0.536778f, 0.536617f, 0.536455f, + 0.536293f, 0.536131f, 0.535969f, 0.535807f, 0.535645f, 0.535484f, 0.535322f, 0.535160f, + 0.534998f, 0.534836f, 0.534674f, 0.534512f, 0.534349f, 0.534187f, 0.534025f, 0.533863f, + 0.533701f, 0.533539f, 0.533377f, 0.533214f, 0.533052f, 0.532890f, 0.532728f, 0.532565f, + 0.532403f, 0.532241f, 0.532078f, 0.531916f, 0.531754f, 0.531591f, 0.531429f, 0.531266f, + 0.531104f, 0.530942f, 0.530779f, 0.530617f, 0.530454f, 0.530291f, 0.530129f, 0.529966f, + 0.529804f, 0.529641f, 0.529478f, 0.529316f, 0.529153f, 0.528990f, 0.528828f, 0.528665f, + 0.528502f, 0.528339f, 0.528176f, 0.528014f, 0.527851f, 0.527688f, 0.527525f, 0.527362f, + 0.527199f, 0.527036f, 0.526873f, 0.526710f, 0.526547f, 0.526384f, 0.526221f, 0.526058f, + 0.525895f, 0.525732f, 0.525569f, 0.525406f, 0.525243f, 0.525079f, 0.524916f, 0.524753f, + 0.524590f, 0.524426f, 0.524263f, 0.524100f, 0.523937f, 0.523773f, 0.523610f, 0.523447f, + 0.523283f, 0.523120f, 0.522956f, 0.522793f, 0.522629f, 0.522466f, 0.522302f, 0.522139f, + 0.521975f, 0.521812f, 0.521648f, 0.521485f, 0.521321f, 0.521157f, 0.520994f, 0.520830f, + 0.520666f, 0.520503f, 0.520339f, 0.520175f, 0.520011f, 0.519848f, 0.519684f, 0.519520f, + 0.519356f, 0.519192f, 0.519028f, 0.518864f, 0.518700f, 0.518536f, 0.518372f, 0.518209f, + 0.518045f, 0.517880f, 0.517716f, 0.517552f, 0.517388f, 0.517224f, 0.517060f, 0.516896f, + 0.516732f, 0.516568f, 0.516403f, 0.516239f, 0.516075f, 0.515911f, 0.515746f, 0.515582f, + 0.515418f, 0.515254f, 0.515089f, 0.514925f, 0.514760f, 0.514596f, 0.514432f, 0.514267f, + 0.514103f, 0.513938f, 0.513774f, 0.513609f, 0.513445f, 0.513280f, 0.513116f, 0.512951f, + 0.512786f, 0.512622f, 0.512457f, 0.512292f, 0.512128f, 0.511963f, 0.511798f, 0.511634f, + 0.511469f, 0.511304f, 0.511139f, 0.510974f, 0.510810f, 0.510645f, 0.510480f, 0.510315f, + 0.510150f, 0.509985f, 0.509820f, 0.509655f, 0.509490f, 0.509325f, 0.509160f, 0.508995f, + 0.508830f, 0.508665f, 0.508500f, 0.508335f, 0.508170f, 0.508005f, 0.507839f, 0.507674f, + 0.507509f, 0.507344f, 0.507179f, 0.507013f, 0.506848f, 0.506683f, 0.506517f, 0.506352f, + 0.506187f, 0.506021f, 0.505856f, 0.505690f, 0.505525f, 0.505360f, 0.505194f, 0.505029f, + 0.504863f, 0.504698f, 0.504532f, 0.504366f, 0.504201f, 0.504035f, 0.503870f, 0.503704f, + 0.503538f, 0.503373f, 0.503207f, 0.503041f, 0.502876f, 0.502710f, 0.502544f, 0.502378f, + 0.502212f, 0.502047f, 0.501881f, 0.501715f, 0.501549f, 0.501383f, 0.501217f, 0.501051f, + 0.500885f, 0.500719f, 0.500553f, 0.500387f, 0.500221f, 0.500055f, 0.499889f, 0.499723f, + 0.499557f, 0.499391f, 0.499225f, 0.499059f, 0.498893f, 0.498726f, 0.498560f, 0.498394f, + 0.498228f, 0.498061f, 0.497895f, 0.497729f, 0.497562f, 0.497396f, 0.497230f, 0.497063f, + 0.496897f, 0.496731f, 0.496564f, 0.496398f, 0.496231f, 0.496065f, 0.495898f, 0.495732f, + 0.495565f, 0.495399f, 0.495232f, 0.495066f, 0.494899f, 0.494732f, 0.494566f, 0.494399f, + 0.494232f, 0.494066f, 0.493899f, 0.493732f, 0.493565f, 0.493399f, 0.493232f, 0.493065f, + 0.492898f, 0.492731f, 0.492564f, 0.492398f, 0.492231f, 0.492064f, 0.491897f, 0.491730f, + 0.491563f, 0.491396f, 0.491229f, 0.491062f, 0.490895f, 0.490728f, 0.490561f, 0.490394f, + 0.490226f, 0.490059f, 0.489892f, 0.489725f, 0.489558f, 0.489391f, 0.489223f, 0.489056f, + 0.488889f, 0.488722f, 0.488554f, 0.488387f, 0.488220f, 0.488052f, 0.487885f, 0.487718f, + 0.487550f, 0.487383f, 0.487215f, 0.487048f, 0.486880f, 0.486713f, 0.486545f, 0.486378f, + 0.486210f, 0.486043f, 0.485875f, 0.485708f, 0.485540f, 0.485372f, 0.485205f, 0.485037f, + 0.484869f, 0.484702f, 0.484534f, 0.484366f, 0.484198f, 0.484031f, 0.483863f, 0.483695f, + 0.483527f, 0.483359f, 0.483191f, 0.483023f, 0.482856f, 0.482688f, 0.482520f, 0.482352f, + 0.482184f, 0.482016f, 0.481848f, 0.481680f, 0.481512f, 0.481344f, 0.481176f, 0.481007f, + 0.480839f, 0.480671f, 0.480503f, 0.480335f, 0.480167f, 0.479998f, 0.479830f, 0.479662f, + 0.479494f, 0.479325f, 0.479157f, 0.478989f, 0.478821f, 0.478652f, 0.478484f, 0.478315f, + 0.478147f, 0.477979f, 0.477810f, 0.477642f, 0.477473f, 0.477305f, 0.477136f, 0.476968f, + 0.476799f, 0.476631f, 0.476462f, 0.476294f, 0.476125f, 0.475956f, 0.475788f, 0.475619f, + 0.475450f, 0.475282f, 0.475113f, 0.474944f, 0.474775f, 0.474607f, 0.474438f, 0.474269f, + 0.474100f, 0.473931f, 0.473763f, 0.473594f, 0.473425f, 0.473256f, 0.473087f, 0.472918f, + 0.472749f, 0.472580f, 0.472411f, 0.472242f, 0.472073f, 0.471904f, 0.471735f, 0.471566f, + 0.471397f, 0.471228f, 0.471058f, 0.470889f, 0.470720f, 0.470551f, 0.470382f, 0.470213f, + 0.470043f, 0.469874f, 0.469705f, 0.469536f, 0.469366f, 0.469197f, 0.469028f, 0.468858f, + 0.468689f, 0.468519f, 0.468350f, 0.468181f, 0.468011f, 0.467842f, 0.467672f, 0.467503f, + 0.467333f, 0.467164f, 0.466994f, 0.466825f, 0.466655f, 0.466485f, 0.466316f, 0.466146f, + 0.465977f, 0.465807f, 0.465637f, 0.465467f, 0.465298f, 0.465128f, 0.464958f, 0.464788f, + 0.464619f, 0.464449f, 0.464279f, 0.464109f, 0.463939f, 0.463769f, 0.463600f, 0.463430f, + 0.463260f, 0.463090f, 0.462920f, 0.462750f, 0.462580f, 0.462410f, 0.462240f, 0.462070f, + 0.461900f, 0.461730f, 0.461560f, 0.461390f, 0.461219f, 0.461049f, 0.460879f, 0.460709f, + 0.460539f, 0.460369f, 0.460198f, 0.460028f, 0.459858f, 0.459687f, 0.459517f, 0.459347f, + 0.459177f, 0.459006f, 0.458836f, 0.458665f, 0.458495f, 0.458325f, 0.458154f, 0.457984f, + 0.457813f, 0.457643f, 0.457472f, 0.457302f, 0.457131f, 0.456961f, 0.456790f, 0.456620f, + 0.456449f, 0.456278f, 0.456108f, 0.455937f, 0.455766f, 0.455596f, 0.455425f, 0.455254f, + 0.455084f, 0.454913f, 0.454742f, 0.454571f, 0.454400f, 0.454230f, 0.454059f, 0.453888f, + 0.453717f, 0.453546f, 0.453375f, 0.453204f, 0.453033f, 0.452863f, 0.452692f, 0.452521f, + 0.452350f, 0.452179f, 0.452008f, 0.451836f, 0.451665f, 0.451494f, 0.451323f, 0.451152f, + 0.450981f, 0.450810f, 0.450639f, 0.450467f, 0.450296f, 0.450125f, 0.449954f, 0.449783f, + 0.449611f, 0.449440f, 0.449269f, 0.449097f, 0.448926f, 0.448755f, 0.448583f, 0.448412f, + 0.448241f, 0.448069f, 0.447898f, 0.447726f, 0.447555f, 0.447383f, 0.447212f, 0.447040f, + 0.446869f, 0.446697f, 0.446526f, 0.446354f, 0.446183f, 0.446011f, 0.445839f, 0.445668f, + 0.445496f, 0.445324f, 0.445153f, 0.444981f, 0.444809f, 0.444637f, 0.444466f, 0.444294f, + 0.444122f, 0.443950f, 0.443779f, 0.443607f, 0.443435f, 0.443263f, 0.443091f, 0.442919f, + 0.442747f, 0.442575f, 0.442403f, 0.442231f, 0.442059f, 0.441887f, 0.441715f, 0.441543f, + 0.441371f, 0.441199f, 0.441027f, 0.440855f, 0.440683f, 0.440511f, 0.440339f, 0.440166f, + 0.439994f, 0.439822f, 0.439650f, 0.439478f, 0.439305f, 0.439133f, 0.438961f, 0.438789f, + 0.438616f, 0.438444f, 0.438272f, 0.438099f, 0.437927f, 0.437754f, 0.437582f, 0.437410f, + 0.437237f, 0.437065f, 0.436892f, 0.436720f, 0.436547f, 0.436375f, 0.436202f, 0.436030f, + 0.435857f, 0.435685f, 0.435512f, 0.435339f, 0.435167f, 0.434994f, 0.434821f, 0.434649f, + 0.434476f, 0.434303f, 0.434131f, 0.433958f, 0.433785f, 0.433612f, 0.433439f, 0.433267f, + 0.433094f, 0.432921f, 0.432748f, 0.432575f, 0.432402f, 0.432229f, 0.432057f, 0.431884f, + 0.431711f, 0.431538f, 0.431365f, 0.431192f, 0.431019f, 0.430846f, 0.430673f, 0.430500f, + 0.430326f, 0.430153f, 0.429980f, 0.429807f, 0.429634f, 0.429461f, 0.429288f, 0.429114f, + 0.428941f, 0.428768f, 0.428595f, 0.428422f, 0.428248f, 0.428075f, 0.427902f, 0.427728f, + 0.427555f, 0.427382f, 0.427208f, 0.427035f, 0.426862f, 0.426688f, 0.426515f, 0.426341f, + 0.426168f, 0.425994f, 0.425821f, 0.425647f, 0.425474f, 0.425300f, 0.425127f, 0.424953f, + 0.424780f, 0.424606f, 0.424432f, 0.424259f, 0.424085f, 0.423912f, 0.423738f, 0.423564f, + 0.423390f, 0.423217f, 0.423043f, 0.422869f, 0.422695f, 0.422522f, 0.422348f, 0.422174f, + 0.422000f, 0.421826f, 0.421653f, 0.421479f, 0.421305f, 0.421131f, 0.420957f, 0.420783f, + 0.420609f, 0.420435f, 0.420261f, 0.420087f, 0.419913f, 0.419739f, 0.419565f, 0.419391f, + 0.419217f, 0.419043f, 0.418869f, 0.418695f, 0.418520f, 0.418346f, 0.418172f, 0.417998f, + 0.417824f, 0.417650f, 0.417475f, 0.417301f, 0.417127f, 0.416952f, 0.416778f, 0.416604f, + 0.416430f, 0.416255f, 0.416081f, 0.415906f, 0.415732f, 0.415558f, 0.415383f, 0.415209f, + 0.415034f, 0.414860f, 0.414685f, 0.414511f, 0.414337f, 0.414162f, 0.413987f, 0.413813f, + 0.413638f, 0.413464f, 0.413289f, 0.413115f, 0.412940f, 0.412765f, 0.412591f, 0.412416f, + 0.412241f, 0.412067f, 0.411892f, 0.411717f, 0.411542f, 0.411368f, 0.411193f, 0.411018f, + 0.410843f, 0.410668f, 0.410493f, 0.410319f, 0.410144f, 0.409969f, 0.409794f, 0.409619f, + 0.409444f, 0.409269f, 0.409094f, 0.408919f, 0.408744f, 0.408569f, 0.408394f, 0.408219f, + 0.408044f, 0.407869f, 0.407694f, 0.407519f, 0.407344f, 0.407169f, 0.406994f, 0.406818f, + 0.406643f, 0.406468f, 0.406293f, 0.406118f, 0.405942f, 0.405767f, 0.405592f, 0.405417f, + 0.405241f, 0.405066f, 0.404891f, 0.404715f, 0.404540f, 0.404365f, 0.404189f, 0.404014f, + 0.403838f, 0.403663f, 0.403488f, 0.403312f, 0.403137f, 0.402961f, 0.402786f, 0.402610f, + 0.402435f, 0.402259f, 0.402084f, 0.401908f, 0.401732f, 0.401557f, 0.401381f, 0.401206f, + 0.401030f, 0.400854f, 0.400679f, 0.400503f, 0.400327f, 0.400151f, 0.399976f, 0.399800f, + 0.399624f, 0.399448f, 0.399273f, 0.399097f, 0.398921f, 0.398745f, 0.398569f, 0.398393f, + 0.398218f, 0.398042f, 0.397866f, 0.397690f, 0.397514f, 0.397338f, 0.397162f, 0.396986f, + 0.396810f, 0.396634f, 0.396458f, 0.396282f, 0.396106f, 0.395930f, 0.395754f, 0.395578f, + 0.395401f, 0.395225f, 0.395049f, 0.394873f, 0.394697f, 0.394521f, 0.394344f, 0.394168f, + 0.393992f, 0.393816f, 0.393640f, 0.393463f, 0.393287f, 0.393111f, 0.392934f, 0.392758f, + 0.392582f, 0.392405f, 0.392229f, 0.392053f, 0.391876f, 0.391700f, 0.391523f, 0.391347f, + 0.391170f, 0.390994f, 0.390817f, 0.390641f, 0.390464f, 0.390288f, 0.390111f, 0.389935f, + 0.389758f, 0.389582f, 0.389405f, 0.389228f, 0.389052f, 0.388875f, 0.388698f, 0.388522f, + 0.388345f, 0.388168f, 0.387992f, 0.387815f, 0.387638f, 0.387461f, 0.387285f, 0.387108f, + 0.386931f, 0.386754f, 0.386577f, 0.386400f, 0.386224f, 0.386047f, 0.385870f, 0.385693f, + 0.385516f, 0.385339f, 0.385162f, 0.384985f, 0.384808f, 0.384631f, 0.384454f, 0.384277f, + 0.384100f, 0.383923f, 0.383746f, 0.383569f, 0.383392f, 0.383215f, 0.383038f, 0.382861f, + 0.382683f, 0.382506f, 0.382329f, 0.382152f, 0.381975f, 0.381797f, 0.381620f, 0.381443f, + 0.381266f, 0.381088f, 0.380911f, 0.380734f, 0.380557f, 0.380379f, 0.380202f, 0.380025f, + 0.379847f, 0.379670f, 0.379492f, 0.379315f, 0.379138f, 0.378960f, 0.378783f, 0.378605f, + 0.378428f, 0.378250f, 0.378073f, 0.377895f, 0.377718f, 0.377540f, 0.377363f, 0.377185f, + 0.377007f, 0.376830f, 0.376652f, 0.376475f, 0.376297f, 0.376119f, 0.375942f, 0.375764f, + 0.375586f, 0.375408f, 0.375231f, 0.375053f, 0.374875f, 0.374697f, 0.374520f, 0.374342f, + 0.374164f, 0.373986f, 0.373808f, 0.373631f, 0.373453f, 0.373275f, 0.373097f, 0.372919f, + 0.372741f, 0.372563f, 0.372385f, 0.372207f, 0.372029f, 0.371851f, 0.371673f, 0.371495f, + 0.371317f, 0.371139f, 0.370961f, 0.370783f, 0.370605f, 0.370427f, 0.370249f, 0.370071f, + 0.369892f, 0.369714f, 0.369536f, 0.369358f, 0.369180f, 0.369002f, 0.368823f, 0.368645f, + 0.368467f, 0.368289f, 0.368110f, 0.367932f, 0.367754f, 0.367575f, 0.367397f, 0.367219f, + 0.367040f, 0.366862f, 0.366684f, 0.366505f, 0.366327f, 0.366148f, 0.365970f, 0.365791f, + 0.365613f, 0.365435f, 0.365256f, 0.365078f, 0.364899f, 0.364720f, 0.364542f, 0.364363f, + 0.364185f, 0.364006f, 0.363828f, 0.363649f, 0.363470f, 0.363292f, 0.363113f, 0.362934f, + 0.362756f, 0.362577f, 0.362398f, 0.362220f, 0.362041f, 0.361862f, 0.361683f, 0.361505f, + 0.361326f, 0.361147f, 0.360968f, 0.360789f, 0.360611f, 0.360432f, 0.360253f, 0.360074f, + 0.359895f, 0.359716f, 0.359537f, 0.359358f, 0.359179f, 0.359000f, 0.358821f, 0.358642f, + 0.358463f, 0.358284f, 0.358105f, 0.357926f, 0.357747f, 0.357568f, 0.357389f, 0.357210f, + 0.357031f, 0.356852f, 0.356673f, 0.356494f, 0.356314f, 0.356135f, 0.355956f, 0.355777f, + 0.355598f, 0.355418f, 0.355239f, 0.355060f, 0.354881f, 0.354701f, 0.354522f, 0.354343f, + 0.354164f, 0.353984f, 0.353805f, 0.353626f, 0.353446f, 0.353267f, 0.353087f, 0.352908f, + 0.352729f, 0.352549f, 0.352370f, 0.352190f, 0.352011f, 0.351831f, 0.351652f, 0.351472f, + 0.351293f, 0.351113f, 0.350934f, 0.350754f, 0.350575f, 0.350395f, 0.350215f, 0.350036f, + 0.349856f, 0.349676f, 0.349497f, 0.349317f, 0.349138f, 0.348958f, 0.348778f, 0.348598f, + 0.348419f, 0.348239f, 0.348059f, 0.347879f, 0.347700f, 0.347520f, 0.347340f, 0.347160f, + 0.346980f, 0.346801f, 0.346621f, 0.346441f, 0.346261f, 0.346081f, 0.345901f, 0.345721f, + 0.345541f, 0.345361f, 0.345181f, 0.345001f, 0.344821f, 0.344641f, 0.344461f, 0.344281f, + 0.344101f, 0.343921f, 0.343741f, 0.343561f, 0.343381f, 0.343201f, 0.343021f, 0.342841f, + 0.342661f, 0.342481f, 0.342300f, 0.342120f, 0.341940f, 0.341760f, 0.341580f, 0.341399f, + 0.341219f, 0.341039f, 0.340859f, 0.340678f, 0.340498f, 0.340318f, 0.340138f, 0.339957f, + 0.339777f, 0.339597f, 0.339416f, 0.339236f, 0.339055f, 0.338875f, 0.338695f, 0.338514f, + 0.338334f, 0.338153f, 0.337973f, 0.337792f, 0.337612f, 0.337431f, 0.337251f, 0.337070f, + 0.336890f, 0.336709f, 0.336529f, 0.336348f, 0.336168f, 0.335987f, 0.335806f, 0.335626f, + 0.335445f, 0.335265f, 0.335084f, 0.334903f, 0.334722f, 0.334542f, 0.334361f, 0.334180f, + 0.334000f, 0.333819f, 0.333638f, 0.333457f, 0.333277f, 0.333096f, 0.332915f, 0.332734f, + 0.332553f, 0.332373f, 0.332192f, 0.332011f, 0.331830f, 0.331649f, 0.331468f, 0.331287f, + 0.331106f, 0.330925f, 0.330744f, 0.330563f, 0.330382f, 0.330202f, 0.330020f, 0.329839f, + 0.329658f, 0.329477f, 0.329296f, 0.329115f, 0.328934f, 0.328753f, 0.328572f, 0.328391f, + 0.328210f, 0.328029f, 0.327848f, 0.327666f, 0.327485f, 0.327304f, 0.327123f, 0.326942f, + 0.326760f, 0.326579f, 0.326398f, 0.326217f, 0.326035f, 0.325854f, 0.325673f, 0.325492f, + 0.325310f, 0.325129f, 0.324948f, 0.324766f, 0.324585f, 0.324404f, 0.324222f, 0.324041f, + 0.323859f, 0.323678f, 0.323497f, 0.323315f, 0.323134f, 0.322952f, 0.322771f, 0.322589f, + 0.322408f, 0.322226f, 0.322045f, 0.321863f, 0.321682f, 0.321500f, 0.321318f, 0.321137f, + 0.320955f, 0.320774f, 0.320592f, 0.320410f, 0.320229f, 0.320047f, 0.319865f, 0.319684f, + 0.319502f, 0.319320f, 0.319139f, 0.318957f, 0.318775f, 0.318593f, 0.318412f, 0.318230f, + 0.318048f, 0.317866f, 0.317684f, 0.317503f, 0.317321f, 0.317139f, 0.316957f, 0.316775f, + 0.316593f, 0.316411f, 0.316230f, 0.316048f, 0.315866f, 0.315684f, 0.315502f, 0.315320f, + 0.315138f, 0.314956f, 0.314774f, 0.314592f, 0.314410f, 0.314228f, 0.314046f, 0.313864f, + 0.313682f, 0.313500f, 0.313318f, 0.313135f, 0.312953f, 0.312771f, 0.312589f, 0.312407f, + 0.312225f, 0.312043f, 0.311860f, 0.311678f, 0.311496f, 0.311314f, 0.311132f, 0.310949f, + 0.310767f, 0.310585f, 0.310403f, 0.310220f, 0.310038f, 0.309856f, 0.309673f, 0.309491f, + 0.309309f, 0.309126f, 0.308944f, 0.308762f, 0.308579f, 0.308397f, 0.308214f, 0.308032f, + 0.307850f, 0.307667f, 0.307485f, 0.307302f, 0.307120f, 0.306937f, 0.306755f, 0.306572f, + 0.306390f, 0.306207f, 0.306025f, 0.305842f, 0.305660f, 0.305477f, 0.305294f, 0.305112f, + 0.304929f, 0.304747f, 0.304564f, 0.304381f, 0.304199f, 0.304016f, 0.303833f, 0.303651f, + 0.303468f, 0.303285f, 0.303103f, 0.302920f, 0.302737f, 0.302554f, 0.302372f, 0.302189f, + 0.302006f, 0.301823f, 0.301640f, 0.301458f, 0.301275f, 0.301092f, 0.300909f, 0.300726f, + 0.300543f, 0.300360f, 0.300177f, 0.299995f, 0.299812f, 0.299629f, 0.299446f, 0.299263f, + 0.299080f, 0.298897f, 0.298714f, 0.298531f, 0.298348f, 0.298165f, 0.297982f, 0.297799f, + 0.297616f, 0.297433f, 0.297250f, 0.297066f, 0.296883f, 0.296700f, 0.296517f, 0.296334f, + 0.296151f, 0.295968f, 0.295785f, 0.295601f, 0.295418f, 0.295235f, 0.295052f, 0.294869f, + 0.294685f, 0.294502f, 0.294319f, 0.294136f, 0.293952f, 0.293769f, 0.293586f, 0.293402f, + 0.293219f, 0.293036f, 0.292852f, 0.292669f, 0.292486f, 0.292302f, 0.292119f, 0.291936f, + 0.291752f, 0.291569f, 0.291385f, 0.291202f, 0.291019f, 0.290835f, 0.290652f, 0.290468f, + 0.290285f, 0.290101f, 0.289918f, 0.289734f, 0.289551f, 0.289367f, 0.289184f, 0.289000f, + 0.288816f, 0.288633f, 0.288449f, 0.288266f, 0.288082f, 0.287898f, 0.287715f, 0.287531f, + 0.287347f, 0.287164f, 0.286980f, 0.286796f, 0.286613f, 0.286429f, 0.286245f, 0.286062f, + 0.285878f, 0.285694f, 0.285510f, 0.285327f, 0.285143f, 0.284959f, 0.284775f, 0.284591f, + 0.284408f, 0.284224f, 0.284040f, 0.283856f, 0.283672f, 0.283488f, 0.283304f, 0.283120f, + 0.282937f, 0.282753f, 0.282569f, 0.282385f, 0.282201f, 0.282017f, 0.281833f, 0.281649f, + 0.281465f, 0.281281f, 0.281097f, 0.280913f, 0.280729f, 0.280545f, 0.280361f, 0.280177f, + 0.279993f, 0.279809f, 0.279624f, 0.279440f, 0.279256f, 0.279072f, 0.278888f, 0.278704f, + 0.278520f, 0.278336f, 0.278151f, 0.277967f, 0.277783f, 0.277599f, 0.277415f, 0.277230f, + 0.277046f, 0.276862f, 0.276678f, 0.276493f, 0.276309f, 0.276125f, 0.275940f, 0.275756f, + 0.275572f, 0.275387f, 0.275203f, 0.275019f, 0.274834f, 0.274650f, 0.274466f, 0.274281f, + 0.274097f, 0.273912f, 0.273728f, 0.273544f, 0.273359f, 0.273175f, 0.272990f, 0.272806f, + 0.272621f, 0.272437f, 0.272252f, 0.272068f, 0.271883f, 0.271699f, 0.271514f, 0.271330f, + 0.271145f, 0.270961f, 0.270776f, 0.270591f, 0.270407f, 0.270222f, 0.270038f, 0.269853f, + 0.269668f, 0.269484f, 0.269299f, 0.269114f, 0.268930f, 0.268745f, 0.268560f, 0.268376f, + 0.268191f, 0.268006f, 0.267821f, 0.267637f, 0.267452f, 0.267267f, 0.267082f, 0.266898f, + 0.266713f, 0.266528f, 0.266343f, 0.266158f, 0.265973f, 0.265789f, 0.265604f, 0.265419f, + 0.265234f, 0.265049f, 0.264864f, 0.264679f, 0.264494f, 0.264309f, 0.264125f, 0.263940f, + 0.263755f, 0.263570f, 0.263385f, 0.263200f, 0.263015f, 0.262830f, 0.262645f, 0.262460f, + 0.262275f, 0.262090f, 0.261905f, 0.261720f, 0.261534f, 0.261349f, 0.261164f, 0.260979f, + 0.260794f, 0.260609f, 0.260424f, 0.260239f, 0.260054f, 0.259868f, 0.259683f, 0.259498f, + 0.259313f, 0.259128f, 0.258943f, 0.258757f, 0.258572f, 0.258387f, 0.258202f, 0.258016f, + 0.257831f, 0.257646f, 0.257461f, 0.257275f, 0.257090f, 0.256905f, 0.256719f, 0.256534f, + 0.256349f, 0.256163f, 0.255978f, 0.255793f, 0.255607f, 0.255422f, 0.255236f, 0.255051f, + 0.254866f, 0.254680f, 0.254495f, 0.254309f, 0.254124f, 0.253938f, 0.253753f, 0.253568f, + 0.253382f, 0.253197f, 0.253011f, 0.252826f, 0.252640f, 0.252454f, 0.252269f, 0.252083f, + 0.251898f, 0.251712f, 0.251527f, 0.251341f, 0.251155f, 0.250970f, 0.250784f, 0.250599f, + 0.250413f, 0.250227f, 0.250042f, 0.249856f, 0.249670f, 0.249485f, 0.249299f, 0.249113f, + 0.248928f, 0.248742f, 0.248556f, 0.248370f, 0.248185f, 0.247999f, 0.247813f, 0.247627f, + 0.247442f, 0.247256f, 0.247070f, 0.246884f, 0.246698f, 0.246513f, 0.246327f, 0.246141f, + 0.245955f, 0.245769f, 0.245583f, 0.245397f, 0.245212f, 0.245026f, 0.244840f, 0.244654f, + 0.244468f, 0.244282f, 0.244096f, 0.243910f, 0.243724f, 0.243538f, 0.243352f, 0.243166f, + 0.242980f, 0.242794f, 0.242608f, 0.242422f, 0.242236f, 0.242050f, 0.241864f, 0.241678f, + 0.241492f, 0.241306f, 0.241120f, 0.240934f, 0.240748f, 0.240561f, 0.240375f, 0.240189f, + 0.240003f, 0.239817f, 0.239631f, 0.239445f, 0.239258f, 0.239072f, 0.238886f, 0.238700f, + 0.238514f, 0.238327f, 0.238141f, 0.237955f, 0.237769f, 0.237582f, 0.237396f, 0.237210f, + 0.237024f, 0.236837f, 0.236651f, 0.236465f, 0.236278f, 0.236092f, 0.235906f, 0.235719f, + 0.235533f, 0.235347f, 0.235160f, 0.234974f, 0.234788f, 0.234601f, 0.234415f, 0.234228f, + 0.234042f, 0.233856f, 0.233669f, 0.233483f, 0.233296f, 0.233110f, 0.232923f, 0.232737f, + 0.232550f, 0.232364f, 0.232177f, 0.231991f, 0.231804f, 0.231618f, 0.231431f, 0.231245f, + 0.231058f, 0.230872f, 0.230685f, 0.230498f, 0.230312f, 0.230125f, 0.229939f, 0.229752f, + 0.229565f, 0.229379f, 0.229192f, 0.229005f, 0.228819f, 0.228632f, 0.228445f, 0.228259f, + 0.228072f, 0.227885f, 0.227699f, 0.227512f, 0.227325f, 0.227139f, 0.226952f, 0.226765f, + 0.226578f, 0.226391f, 0.226205f, 0.226018f, 0.225831f, 0.225644f, 0.225458f, 0.225271f, + 0.225084f, 0.224897f, 0.224710f, 0.224523f, 0.224337f, 0.224150f, 0.223963f, 0.223776f, + 0.223589f, 0.223402f, 0.223215f, 0.223028f, 0.222841f, 0.222654f, 0.222468f, 0.222281f, + 0.222094f, 0.221907f, 0.221720f, 0.221533f, 0.221346f, 0.221159f, 0.220972f, 0.220785f, + 0.220598f, 0.220411f, 0.220224f, 0.220037f, 0.219850f, 0.219662f, 0.219475f, 0.219288f, + 0.219101f, 0.218914f, 0.218727f, 0.218540f, 0.218353f, 0.218166f, 0.217979f, 0.217791f, + 0.217604f, 0.217417f, 0.217230f, 0.217043f, 0.216856f, 0.216668f, 0.216481f, 0.216294f, + 0.216107f, 0.215920f, 0.215732f, 0.215545f, 0.215358f, 0.215171f, 0.214983f, 0.214796f, + 0.214609f, 0.214422f, 0.214234f, 0.214047f, 0.213860f, 0.213672f, 0.213485f, 0.213298f, + 0.213110f, 0.212923f, 0.212736f, 0.212548f, 0.212361f, 0.212174f, 0.211986f, 0.211799f, + 0.211611f, 0.211424f, 0.211237f, 0.211049f, 0.210862f, 0.210674f, 0.210487f, 0.210299f, + 0.210112f, 0.209924f, 0.209737f, 0.209549f, 0.209362f, 0.209174f, 0.208987f, 0.208799f, + 0.208612f, 0.208424f, 0.208237f, 0.208049f, 0.207862f, 0.207674f, 0.207487f, 0.207299f, + 0.207111f, 0.206924f, 0.206736f, 0.206549f, 0.206361f, 0.206173f, 0.205986f, 0.205798f, + 0.205610f, 0.205423f, 0.205235f, 0.205047f, 0.204860f, 0.204672f, 0.204484f, 0.204297f, + 0.204109f, 0.203921f, 0.203734f, 0.203546f, 0.203358f, 0.203170f, 0.202983f, 0.202795f, + 0.202607f, 0.202419f, 0.202231f, 0.202044f, 0.201856f, 0.201668f, 0.201480f, 0.201292f, + 0.201105f, 0.200917f, 0.200729f, 0.200541f, 0.200353f, 0.200165f, 0.199978f, 0.199790f, + 0.199602f, 0.199414f, 0.199226f, 0.199038f, 0.198850f, 0.198662f, 0.198474f, 0.198286f, + 0.198098f, 0.197910f, 0.197722f, 0.197535f, 0.197347f, 0.197159f, 0.196971f, 0.196783f, + 0.196595f, 0.196407f, 0.196219f, 0.196031f, 0.195843f, 0.195654f, 0.195466f, 0.195278f, + 0.195090f, 0.194902f, 0.194714f, 0.194526f, 0.194338f, 0.194150f, 0.193962f, 0.193774f, + 0.193586f, 0.193397f, 0.193209f, 0.193021f, 0.192833f, 0.192645f, 0.192457f, 0.192269f, + 0.192080f, 0.191892f, 0.191704f, 0.191516f, 0.191328f, 0.191139f, 0.190951f, 0.190763f, + 0.190575f, 0.190387f, 0.190198f, 0.190010f, 0.189822f, 0.189634f, 0.189445f, 0.189257f, + 0.189069f, 0.188880f, 0.188692f, 0.188504f, 0.188315f, 0.188127f, 0.187939f, 0.187750f, + 0.187562f, 0.187374f, 0.187185f, 0.186997f, 0.186809f, 0.186620f, 0.186432f, 0.186244f, + 0.186055f, 0.185867f, 0.185678f, 0.185490f, 0.185301f, 0.185113f, 0.184925f, 0.184736f, + 0.184548f, 0.184359f, 0.184171f, 0.183982f, 0.183794f, 0.183605f, 0.183417f, 0.183228f, + 0.183040f, 0.182851f, 0.182663f, 0.182474f, 0.182286f, 0.182097f, 0.181909f, 0.181720f, + 0.181532f, 0.181343f, 0.181154f, 0.180966f, 0.180777f, 0.180589f, 0.180400f, 0.180212f, + 0.180023f, 0.179834f, 0.179646f, 0.179457f, 0.179268f, 0.179080f, 0.178891f, 0.178702f, + 0.178514f, 0.178325f, 0.178136f, 0.177948f, 0.177759f, 0.177570f, 0.177382f, 0.177193f, + 0.177004f, 0.176815f, 0.176627f, 0.176438f, 0.176249f, 0.176061f, 0.175872f, 0.175683f, + 0.175494f, 0.175305f, 0.175117f, 0.174928f, 0.174739f, 0.174550f, 0.174362f, 0.174173f, + 0.173984f, 0.173795f, 0.173606f, 0.173417f, 0.173229f, 0.173040f, 0.172851f, 0.172662f, + 0.172473f, 0.172284f, 0.172095f, 0.171906f, 0.171718f, 0.171529f, 0.171340f, 0.171151f, + 0.170962f, 0.170773f, 0.170584f, 0.170395f, 0.170206f, 0.170017f, 0.169828f, 0.169639f, + 0.169450f, 0.169261f, 0.169072f, 0.168883f, 0.168694f, 0.168505f, 0.168316f, 0.168127f, + 0.167938f, 0.167749f, 0.167560f, 0.167371f, 0.167182f, 0.166993f, 0.166804f, 0.166615f, + 0.166426f, 0.166237f, 0.166048f, 0.165859f, 0.165670f, 0.165480f, 0.165291f, 0.165102f, + 0.164913f, 0.164724f, 0.164535f, 0.164346f, 0.164157f, 0.163967f, 0.163778f, 0.163589f, + 0.163400f, 0.163211f, 0.163022f, 0.162832f, 0.162643f, 0.162454f, 0.162265f, 0.162076f, + 0.161886f, 0.161697f, 0.161508f, 0.161319f, 0.161129f, 0.160940f, 0.160751f, 0.160562f, + 0.160372f, 0.160183f, 0.159994f, 0.159805f, 0.159615f, 0.159426f, 0.159237f, 0.159047f, + 0.158858f, 0.158669f, 0.158480f, 0.158290f, 0.158101f, 0.157912f, 0.157722f, 0.157533f, + 0.157343f, 0.157154f, 0.156965f, 0.156775f, 0.156586f, 0.156397f, 0.156207f, 0.156018f, + 0.155828f, 0.155639f, 0.155450f, 0.155260f, 0.155071f, 0.154881f, 0.154692f, 0.154502f, + 0.154313f, 0.154124f, 0.153934f, 0.153745f, 0.153555f, 0.153366f, 0.153176f, 0.152987f, + 0.152797f, 0.152608f, 0.152418f, 0.152229f, 0.152039f, 0.151850f, 0.151660f, 0.151471f, + 0.151281f, 0.151092f, 0.150902f, 0.150712f, 0.150523f, 0.150333f, 0.150144f, 0.149954f, + 0.149765f, 0.149575f, 0.149385f, 0.149196f, 0.149006f, 0.148817f, 0.148627f, 0.148437f, + 0.148248f, 0.148058f, 0.147868f, 0.147679f, 0.147489f, 0.147299f, 0.147110f, 0.146920f, + 0.146730f, 0.146541f, 0.146351f, 0.146161f, 0.145972f, 0.145782f, 0.145592f, 0.145403f, + 0.145213f, 0.145023f, 0.144833f, 0.144644f, 0.144454f, 0.144264f, 0.144075f, 0.143885f, + 0.143695f, 0.143505f, 0.143316f, 0.143126f, 0.142936f, 0.142746f, 0.142556f, 0.142367f, + 0.142177f, 0.141987f, 0.141797f, 0.141607f, 0.141418f, 0.141228f, 0.141038f, 0.140848f, + 0.140658f, 0.140468f, 0.140279f, 0.140089f, 0.139899f, 0.139709f, 0.139519f, 0.139329f, + 0.139139f, 0.138949f, 0.138760f, 0.138570f, 0.138380f, 0.138190f, 0.138000f, 0.137810f, + 0.137620f, 0.137430f, 0.137240f, 0.137050f, 0.136860f, 0.136670f, 0.136480f, 0.136291f, + 0.136101f, 0.135911f, 0.135721f, 0.135531f, 0.135341f, 0.135151f, 0.134961f, 0.134771f, + 0.134581f, 0.134391f, 0.134201f, 0.134011f, 0.133821f, 0.133631f, 0.133441f, 0.133251f, + 0.133061f, 0.132870f, 0.132680f, 0.132490f, 0.132300f, 0.132110f, 0.131920f, 0.131730f, + 0.131540f, 0.131350f, 0.131160f, 0.130970f, 0.130780f, 0.130590f, 0.130399f, 0.130209f, + 0.130019f, 0.129829f, 0.129639f, 0.129449f, 0.129259f, 0.129069f, 0.128878f, 0.128688f, + 0.128498f, 0.128308f, 0.128118f, 0.127928f, 0.127737f, 0.127547f, 0.127357f, 0.127167f, + 0.126977f, 0.126787f, 0.126596f, 0.126406f, 0.126216f, 0.126026f, 0.125835f, 0.125645f, + 0.125455f, 0.125265f, 0.125075f, 0.124884f, 0.124694f, 0.124504f, 0.124314f, 0.124123f, + 0.123933f, 0.123743f, 0.123552f, 0.123362f, 0.123172f, 0.122982f, 0.122791f, 0.122601f, + 0.122411f, 0.122220f, 0.122030f, 0.121840f, 0.121649f, 0.121459f, 0.121269f, 0.121078f, + 0.120888f, 0.120698f, 0.120507f, 0.120317f, 0.120127f, 0.119936f, 0.119746f, 0.119556f, + 0.119365f, 0.119175f, 0.118984f, 0.118794f, 0.118604f, 0.118413f, 0.118223f, 0.118032f, + 0.117842f, 0.117652f, 0.117461f, 0.117271f, 0.117080f, 0.116890f, 0.116700f, 0.116509f, + 0.116319f, 0.116128f, 0.115938f, 0.115747f, 0.115557f, 0.115366f, 0.115176f, 0.114985f, + 0.114795f, 0.114604f, 0.114414f, 0.114223f, 0.114033f, 0.113842f, 0.113652f, 0.113461f, + 0.113271f, 0.113080f, 0.112890f, 0.112699f, 0.112509f, 0.112318f, 0.112128f, 0.111937f, + 0.111747f, 0.111556f, 0.111366f, 0.111175f, 0.110984f, 0.110794f, 0.110603f, 0.110413f, + 0.110222f, 0.110032f, 0.109841f, 0.109650f, 0.109460f, 0.109269f, 0.109079f, 0.108888f, + 0.108697f, 0.108507f, 0.108316f, 0.108126f, 0.107935f, 0.107744f, 0.107554f, 0.107363f, + 0.107172f, 0.106982f, 0.106791f, 0.106600f, 0.106410f, 0.106219f, 0.106028f, 0.105838f, + 0.105647f, 0.105456f, 0.105266f, 0.105075f, 0.104884f, 0.104694f, 0.104503f, 0.104312f, + 0.104122f, 0.103931f, 0.103740f, 0.103550f, 0.103359f, 0.103168f, 0.102977f, 0.102787f, + 0.102596f, 0.102405f, 0.102214f, 0.102024f, 0.101833f, 0.101642f, 0.101451f, 0.101261f, + 0.101070f, 0.100879f, 0.100688f, 0.100498f, 0.100307f, 0.100116f, 0.099925f, 0.099734f, + 0.099544f, 0.099353f, 0.099162f, 0.098971f, 0.098780f, 0.098590f, 0.098399f, 0.098208f, + 0.098017f, 0.097826f, 0.097635f, 0.097445f, 0.097254f, 0.097063f, 0.096872f, 0.096681f, + 0.096490f, 0.096300f, 0.096109f, 0.095918f, 0.095727f, 0.095536f, 0.095345f, 0.095154f, + 0.094963f, 0.094773f, 0.094582f, 0.094391f, 0.094200f, 0.094009f, 0.093818f, 0.093627f, + 0.093436f, 0.093245f, 0.093055f, 0.092864f, 0.092673f, 0.092482f, 0.092291f, 0.092100f, + 0.091909f, 0.091718f, 0.091527f, 0.091336f, 0.091145f, 0.090954f, 0.090763f, 0.090572f, + 0.090381f, 0.090190f, 0.089999f, 0.089808f, 0.089617f, 0.089427f, 0.089236f, 0.089045f, + 0.088854f, 0.088663f, 0.088472f, 0.088281f, 0.088090f, 0.087899f, 0.087708f, 0.087517f, + 0.087326f, 0.087135f, 0.086943f, 0.086752f, 0.086561f, 0.086370f, 0.086179f, 0.085988f, + 0.085797f, 0.085606f, 0.085415f, 0.085224f, 0.085033f, 0.084842f, 0.084651f, 0.084460f, + 0.084269f, 0.084078f, 0.083887f, 0.083696f, 0.083505f, 0.083314f, 0.083122f, 0.082931f, + 0.082740f, 0.082549f, 0.082358f, 0.082167f, 0.081976f, 0.081785f, 0.081594f, 0.081403f, + 0.081211f, 0.081020f, 0.080829f, 0.080638f, 0.080447f, 0.080256f, 0.080065f, 0.079874f, + 0.079682f, 0.079491f, 0.079300f, 0.079109f, 0.078918f, 0.078727f, 0.078536f, 0.078344f, + 0.078153f, 0.077962f, 0.077771f, 0.077580f, 0.077389f, 0.077197f, 0.077006f, 0.076815f, + 0.076624f, 0.076433f, 0.076241f, 0.076050f, 0.075859f, 0.075668f, 0.075477f, 0.075286f, + 0.075094f, 0.074903f, 0.074712f, 0.074521f, 0.074329f, 0.074138f, 0.073947f, 0.073756f, + 0.073565f, 0.073373f, 0.073182f, 0.072991f, 0.072800f, 0.072608f, 0.072417f, 0.072226f, + 0.072035f, 0.071843f, 0.071652f, 0.071461f, 0.071270f, 0.071078f, 0.070887f, 0.070696f, + 0.070505f, 0.070313f, 0.070122f, 0.069931f, 0.069739f, 0.069548f, 0.069357f, 0.069166f, + 0.068974f, 0.068783f, 0.068592f, 0.068400f, 0.068209f, 0.068018f, 0.067827f, 0.067635f, + 0.067444f, 0.067253f, 0.067061f, 0.066870f, 0.066679f, 0.066487f, 0.066296f, 0.066105f, + 0.065913f, 0.065722f, 0.065531f, 0.065339f, 0.065148f, 0.064957f, 0.064765f, 0.064574f, + 0.064383f, 0.064191f, 0.064000f, 0.063809f, 0.063617f, 0.063426f, 0.063234f, 0.063043f, + 0.062852f, 0.062660f, 0.062469f, 0.062278f, 0.062086f, 0.061895f, 0.061704f, 0.061512f, + 0.061321f, 0.061129f, 0.060938f, 0.060747f, 0.060555f, 0.060364f, 0.060172f, 0.059981f, + 0.059790f, 0.059598f, 0.059407f, 0.059215f, 0.059024f, 0.058833f, 0.058641f, 0.058450f, + 0.058258f, 0.058067f, 0.057875f, 0.057684f, 0.057493f, 0.057301f, 0.057110f, 0.056918f, + 0.056727f, 0.056535f, 0.056344f, 0.056152f, 0.055961f, 0.055770f, 0.055578f, 0.055387f, + 0.055195f, 0.055004f, 0.054812f, 0.054621f, 0.054429f, 0.054238f, 0.054046f, 0.053855f, + 0.053664f, 0.053472f, 0.053281f, 0.053089f, 0.052898f, 0.052706f, 0.052515f, 0.052323f, + 0.052132f, 0.051940f, 0.051749f, 0.051557f, 0.051366f, 0.051174f, 0.050983f, 0.050791f, + 0.050600f, 0.050408f, 0.050217f, 0.050025f, 0.049834f, 0.049642f, 0.049451f, 0.049259f, + 0.049068f, 0.048876f, 0.048685f, 0.048493f, 0.048302f, 0.048110f, 0.047919f, 0.047727f, + 0.047535f, 0.047344f, 0.047152f, 0.046961f, 0.046769f, 0.046578f, 0.046386f, 0.046195f, + 0.046003f, 0.045812f, 0.045620f, 0.045429f, 0.045237f, 0.045045f, 0.044854f, 0.044662f, + 0.044471f, 0.044279f, 0.044088f, 0.043896f, 0.043705f, 0.043513f, 0.043321f, 0.043130f, + 0.042938f, 0.042747f, 0.042555f, 0.042364f, 0.042172f, 0.041980f, 0.041789f, 0.041597f, + 0.041406f, 0.041214f, 0.041022f, 0.040831f, 0.040639f, 0.040448f, 0.040256f, 0.040065f, + 0.039873f, 0.039681f, 0.039490f, 0.039298f, 0.039107f, 0.038915f, 0.038723f, 0.038532f, + 0.038340f, 0.038149f, 0.037957f, 0.037765f, 0.037574f, 0.037382f, 0.037190f, 0.036999f, + 0.036807f, 0.036616f, 0.036424f, 0.036232f, 0.036041f, 0.035849f, 0.035657f, 0.035466f, + 0.035274f, 0.035083f, 0.034891f, 0.034699f, 0.034508f, 0.034316f, 0.034124f, 0.033933f, + 0.033741f, 0.033550f, 0.033358f, 0.033166f, 0.032975f, 0.032783f, 0.032591f, 0.032400f, + 0.032208f, 0.032016f, 0.031825f, 0.031633f, 0.031441f, 0.031250f, 0.031058f, 0.030866f, + 0.030675f, 0.030483f, 0.030291f, 0.030100f, 0.029908f, 0.029717f, 0.029525f, 0.029333f, + 0.029142f, 0.028950f, 0.028758f, 0.028567f, 0.028375f, 0.028183f, 0.027991f, 0.027800f, + 0.027608f, 0.027416f, 0.027225f, 0.027033f, 0.026841f, 0.026650f, 0.026458f, 0.026266f, + 0.026075f, 0.025883f, 0.025691f, 0.025500f, 0.025308f, 0.025116f, 0.024925f, 0.024733f, + 0.024541f, 0.024350f, 0.024158f, 0.023966f, 0.023774f, 0.023583f, 0.023391f, 0.023199f, + 0.023008f, 0.022816f, 0.022624f, 0.022433f, 0.022241f, 0.022049f, 0.021857f, 0.021666f, + 0.021474f, 0.021282f, 0.021091f, 0.020899f, 0.020707f, 0.020516f, 0.020324f, 0.020132f, + 0.019940f, 0.019749f, 0.019557f, 0.019365f, 0.019174f, 0.018982f, 0.018790f, 0.018598f, + 0.018407f, 0.018215f, 0.018023f, 0.017832f, 0.017640f, 0.017448f, 0.017256f, 0.017065f, + 0.016873f, 0.016681f, 0.016490f, 0.016298f, 0.016106f, 0.015914f, 0.015723f, 0.015531f, + 0.015339f, 0.015147f, 0.014956f, 0.014764f, 0.014572f, 0.014381f, 0.014189f, 0.013997f, + 0.013805f, 0.013614f, 0.013422f, 0.013230f, 0.013038f, 0.012847f, 0.012655f, 0.012463f, + 0.012272f, 0.012080f, 0.011888f, 0.011696f, 0.011505f, 0.011313f, 0.011121f, 0.010929f, + 0.010738f, 0.010546f, 0.010354f, 0.010162f, 0.009971f, 0.009779f, 0.009587f, 0.009395f, + 0.009204f, 0.009012f, 0.008820f, 0.008629f, 0.008437f, 0.008245f, 0.008053f, 0.007862f, + 0.007670f, 0.007478f, 0.007286f, 0.007095f, 0.006903f, 0.006711f, 0.006519f, 0.006328f, + 0.006136f, 0.005944f, 0.005752f, 0.005561f, 0.005369f, 0.005177f, 0.004985f, 0.004794f, + 0.004602f, 0.004410f, 0.004218f, 0.004027f, 0.003835f, 0.003643f, 0.003451f, 0.003260f, + 0.003068f, 0.002876f, 0.002684f, 0.002493f, 0.002301f, 0.002109f, 0.001917f, 0.001726f, + 0.001534f, 0.001342f, 0.001150f, 0.000959f, 0.000767f, 0.000575f, 0.000383f, 0.000192f, + 0.000000f, 0.000192f, 0.000383f, 0.000575f, 0.000767f, 0.000959f, 0.001150f, 0.001342f, + 0.001534f, 0.001726f, 0.001917f, 0.002109f, 0.002301f, 0.002493f, 0.002684f, 0.002876f, + 0.003068f, 0.003260f, 0.003451f, 0.003643f, 0.003835f, 0.004027f, 0.004218f, 0.004410f, + 0.004602f, 0.004794f, 0.004985f, 0.005177f, 0.005369f, 0.005561f, 0.005752f, 0.005944f, + 0.006136f, 0.006328f, 0.006519f, 0.006711f, 0.006903f, 0.007095f, 0.007286f, 0.007478f, + 0.007670f, 0.007862f, 0.008053f, 0.008245f, 0.008437f, 0.008629f, 0.008820f, 0.009012f, + 0.009204f, 0.009395f, 0.009587f, 0.009779f, 0.009971f, 0.010162f, 0.010354f, 0.010546f, + 0.010738f, 0.010929f, 0.011121f, 0.011313f, 0.011505f, 0.011696f, 0.011888f, 0.012080f, + 0.012272f, 0.012463f, 0.012655f, 0.012847f, 0.013038f, 0.013230f, 0.013422f, 0.013614f, + 0.013805f, 0.013997f, 0.014189f, 0.014381f, 0.014572f, 0.014764f, 0.014956f, 0.015147f, + 0.015339f, 0.015531f, 0.015723f, 0.015914f, 0.016106f, 0.016298f, 0.016490f, 0.016681f, + 0.016873f, 0.017065f, 0.017256f, 0.017448f, 0.017640f, 0.017832f, 0.018023f, 0.018215f, + 0.018407f, 0.018598f, 0.018790f, 0.018982f, 0.019174f, 0.019365f, 0.019557f, 0.019749f, + 0.019940f, 0.020132f, 0.020324f, 0.020516f, 0.020707f, 0.020899f, 0.021091f, 0.021282f, + 0.021474f, 0.021666f, 0.021857f, 0.022049f, 0.022241f, 0.022433f, 0.022624f, 0.022816f, + 0.023008f, 0.023199f, 0.023391f, 0.023583f, 0.023774f, 0.023966f, 0.024158f, 0.024350f, + 0.024541f, 0.024733f, 0.024925f, 0.025116f, 0.025308f, 0.025500f, 0.025691f, 0.025883f, + 0.026075f, 0.026266f, 0.026458f, 0.026650f, 0.026841f, 0.027033f, 0.027225f, 0.027416f, + 0.027608f, 0.027800f, 0.027991f, 0.028183f, 0.028375f, 0.028567f, 0.028758f, 0.028950f, + 0.029142f, 0.029333f, 0.029525f, 0.029717f, 0.029908f, 0.030100f, 0.030291f, 0.030483f, + 0.030675f, 0.030866f, 0.031058f, 0.031250f, 0.031441f, 0.031633f, 0.031825f, 0.032016f, + 0.032208f, 0.032400f, 0.032591f, 0.032783f, 0.032975f, 0.033166f, 0.033358f, 0.033550f, + 0.033741f, 0.033933f, 0.034124f, 0.034316f, 0.034508f, 0.034699f, 0.034891f, 0.035083f, + 0.035274f, 0.035466f, 0.035657f, 0.035849f, 0.036041f, 0.036232f, 0.036424f, 0.036616f, + 0.036807f, 0.036999f, 0.037190f, 0.037382f, 0.037574f, 0.037765f, 0.037957f, 0.038149f, + 0.038340f, 0.038532f, 0.038723f, 0.038915f, 0.039107f, 0.039298f, 0.039490f, 0.039681f, + 0.039873f, 0.040065f, 0.040256f, 0.040448f, 0.040639f, 0.040831f, 0.041022f, 0.041214f, + 0.041406f, 0.041597f, 0.041789f, 0.041980f, 0.042172f, 0.042364f, 0.042555f, 0.042747f, + 0.042938f, 0.043130f, 0.043321f, 0.043513f, 0.043705f, 0.043896f, 0.044088f, 0.044279f, + 0.044471f, 0.044662f, 0.044854f, 0.045045f, 0.045237f, 0.045429f, 0.045620f, 0.045812f, + 0.046003f, 0.046195f, 0.046386f, 0.046578f, 0.046769f, 0.046961f, 0.047152f, 0.047344f, + 0.047535f, 0.047727f, 0.047919f, 0.048110f, 0.048302f, 0.048493f, 0.048685f, 0.048876f, + 0.049068f, 0.049259f, 0.049451f, 0.049642f, 0.049834f, 0.050025f, 0.050217f, 0.050408f, + 0.050600f, 0.050791f, 0.050983f, 0.051174f, 0.051366f, 0.051557f, 0.051749f, 0.051940f, + 0.052132f, 0.052323f, 0.052515f, 0.052706f, 0.052898f, 0.053089f, 0.053281f, 0.053472f, + 0.053664f, 0.053855f, 0.054046f, 0.054238f, 0.054429f, 0.054621f, 0.054812f, 0.055004f, + 0.055195f, 0.055387f, 0.055578f, 0.055770f, 0.055961f, 0.056152f, 0.056344f, 0.056535f, + 0.056727f, 0.056918f, 0.057110f, 0.057301f, 0.057493f, 0.057684f, 0.057875f, 0.058067f, + 0.058258f, 0.058450f, 0.058641f, 0.058833f, 0.059024f, 0.059215f, 0.059407f, 0.059598f, + 0.059790f, 0.059981f, 0.060172f, 0.060364f, 0.060555f, 0.060747f, 0.060938f, 0.061129f, + 0.061321f, 0.061512f, 0.061704f, 0.061895f, 0.062086f, 0.062278f, 0.062469f, 0.062660f, + 0.062852f, 0.063043f, 0.063234f, 0.063426f, 0.063617f, 0.063809f, 0.064000f, 0.064191f, + 0.064383f, 0.064574f, 0.064765f, 0.064957f, 0.065148f, 0.065339f, 0.065531f, 0.065722f, + 0.065913f, 0.066105f, 0.066296f, 0.066487f, 0.066679f, 0.066870f, 0.067061f, 0.067253f, + 0.067444f, 0.067635f, 0.067827f, 0.068018f, 0.068209f, 0.068400f, 0.068592f, 0.068783f, + 0.068974f, 0.069166f, 0.069357f, 0.069548f, 0.069739f, 0.069931f, 0.070122f, 0.070313f, + 0.070505f, 0.070696f, 0.070887f, 0.071078f, 0.071270f, 0.071461f, 0.071652f, 0.071843f, + 0.072035f, 0.072226f, 0.072417f, 0.072608f, 0.072800f, 0.072991f, 0.073182f, 0.073373f, + 0.073565f, 0.073756f, 0.073947f, 0.074138f, 0.074329f, 0.074521f, 0.074712f, 0.074903f, + 0.075094f, 0.075286f, 0.075477f, 0.075668f, 0.075859f, 0.076050f, 0.076241f, 0.076433f, + 0.076624f, 0.076815f, 0.077006f, 0.077197f, 0.077389f, 0.077580f, 0.077771f, 0.077962f, + 0.078153f, 0.078344f, 0.078536f, 0.078727f, 0.078918f, 0.079109f, 0.079300f, 0.079491f, + 0.079682f, 0.079874f, 0.080065f, 0.080256f, 0.080447f, 0.080638f, 0.080829f, 0.081020f, + 0.081211f, 0.081403f, 0.081594f, 0.081785f, 0.081976f, 0.082167f, 0.082358f, 0.082549f, + 0.082740f, 0.082931f, 0.083122f, 0.083314f, 0.083505f, 0.083696f, 0.083887f, 0.084078f, + 0.084269f, 0.084460f, 0.084651f, 0.084842f, 0.085033f, 0.085224f, 0.085415f, 0.085606f, + 0.085797f, 0.085988f, 0.086179f, 0.086370f, 0.086561f, 0.086752f, 0.086943f, 0.087135f, + 0.087326f, 0.087517f, 0.087708f, 0.087899f, 0.088090f, 0.088281f, 0.088472f, 0.088663f, + 0.088854f, 0.089045f, 0.089236f, 0.089427f, 0.089617f, 0.089808f, 0.089999f, 0.090190f, + 0.090381f, 0.090572f, 0.090763f, 0.090954f, 0.091145f, 0.091336f, 0.091527f, 0.091718f, + 0.091909f, 0.092100f, 0.092291f, 0.092482f, 0.092673f, 0.092864f, 0.093055f, 0.093245f, + 0.093436f, 0.093627f, 0.093818f, 0.094009f, 0.094200f, 0.094391f, 0.094582f, 0.094773f, + 0.094963f, 0.095154f, 0.095345f, 0.095536f, 0.095727f, 0.095918f, 0.096109f, 0.096300f, + 0.096490f, 0.096681f, 0.096872f, 0.097063f, 0.097254f, 0.097445f, 0.097635f, 0.097826f, + 0.098017f, 0.098208f, 0.098399f, 0.098590f, 0.098780f, 0.098971f, 0.099162f, 0.099353f, + 0.099544f, 0.099734f, 0.099925f, 0.100116f, 0.100307f, 0.100498f, 0.100688f, 0.100879f, + 0.101070f, 0.101261f, 0.101451f, 0.101642f, 0.101833f, 0.102024f, 0.102214f, 0.102405f, + 0.102596f, 0.102787f, 0.102977f, 0.103168f, 0.103359f, 0.103550f, 0.103740f, 0.103931f, + 0.104122f, 0.104312f, 0.104503f, 0.104694f, 0.104884f, 0.105075f, 0.105266f, 0.105456f, + 0.105647f, 0.105838f, 0.106028f, 0.106219f, 0.106410f, 0.106600f, 0.106791f, 0.106982f, + 0.107172f, 0.107363f, 0.107554f, 0.107744f, 0.107935f, 0.108126f, 0.108316f, 0.108507f, + 0.108697f, 0.108888f, 0.109079f, 0.109269f, 0.109460f, 0.109650f, 0.109841f, 0.110032f, + 0.110222f, 0.110413f, 0.110603f, 0.110794f, 0.110984f, 0.111175f, 0.111366f, 0.111556f, + 0.111747f, 0.111937f, 0.112128f, 0.112318f, 0.112509f, 0.112699f, 0.112890f, 0.113080f, + 0.113271f, 0.113461f, 0.113652f, 0.113842f, 0.114033f, 0.114223f, 0.114414f, 0.114604f, + 0.114795f, 0.114985f, 0.115176f, 0.115366f, 0.115557f, 0.115747f, 0.115938f, 0.116128f, + 0.116319f, 0.116509f, 0.116700f, 0.116890f, 0.117080f, 0.117271f, 0.117461f, 0.117652f, + 0.117842f, 0.118032f, 0.118223f, 0.118413f, 0.118604f, 0.118794f, 0.118984f, 0.119175f, + 0.119365f, 0.119556f, 0.119746f, 0.119936f, 0.120127f, 0.120317f, 0.120507f, 0.120698f, + 0.120888f, 0.121078f, 0.121269f, 0.121459f, 0.121649f, 0.121840f, 0.122030f, 0.122220f, + 0.122411f, 0.122601f, 0.122791f, 0.122982f, 0.123172f, 0.123362f, 0.123552f, 0.123743f, + 0.123933f, 0.124123f, 0.124314f, 0.124504f, 0.124694f, 0.124884f, 0.125075f, 0.125265f, + 0.125455f, 0.125645f, 0.125835f, 0.126026f, 0.126216f, 0.126406f, 0.126596f, 0.126787f, + 0.126977f, 0.127167f, 0.127357f, 0.127547f, 0.127737f, 0.127928f, 0.128118f, 0.128308f, + 0.128498f, 0.128688f, 0.128878f, 0.129069f, 0.129259f, 0.129449f, 0.129639f, 0.129829f, + 0.130019f, 0.130209f, 0.130399f, 0.130590f, 0.130780f, 0.130970f, 0.131160f, 0.131350f, + 0.131540f, 0.131730f, 0.131920f, 0.132110f, 0.132300f, 0.132490f, 0.132680f, 0.132870f, + 0.133061f, 0.133251f, 0.133441f, 0.133631f, 0.133821f, 0.134011f, 0.134201f, 0.134391f, + 0.134581f, 0.134771f, 0.134961f, 0.135151f, 0.135341f, 0.135531f, 0.135721f, 0.135911f, + 0.136101f, 0.136291f, 0.136480f, 0.136670f, 0.136860f, 0.137050f, 0.137240f, 0.137430f, + 0.137620f, 0.137810f, 0.138000f, 0.138190f, 0.138380f, 0.138570f, 0.138760f, 0.138949f, + 0.139139f, 0.139329f, 0.139519f, 0.139709f, 0.139899f, 0.140089f, 0.140279f, 0.140468f, + 0.140658f, 0.140848f, 0.141038f, 0.141228f, 0.141418f, 0.141607f, 0.141797f, 0.141987f, + 0.142177f, 0.142367f, 0.142556f, 0.142746f, 0.142936f, 0.143126f, 0.143316f, 0.143505f, + 0.143695f, 0.143885f, 0.144075f, 0.144264f, 0.144454f, 0.144644f, 0.144833f, 0.145023f, + 0.145213f, 0.145403f, 0.145592f, 0.145782f, 0.145972f, 0.146161f, 0.146351f, 0.146541f, + 0.146730f, 0.146920f, 0.147110f, 0.147299f, 0.147489f, 0.147679f, 0.147868f, 0.148058f, + 0.148248f, 0.148437f, 0.148627f, 0.148817f, 0.149006f, 0.149196f, 0.149385f, 0.149575f, + 0.149765f, 0.149954f, 0.150144f, 0.150333f, 0.150523f, 0.150712f, 0.150902f, 0.151092f, + 0.151281f, 0.151471f, 0.151660f, 0.151850f, 0.152039f, 0.152229f, 0.152418f, 0.152608f, + 0.152797f, 0.152987f, 0.153176f, 0.153366f, 0.153555f, 0.153745f, 0.153934f, 0.154124f, + 0.154313f, 0.154502f, 0.154692f, 0.154881f, 0.155071f, 0.155260f, 0.155450f, 0.155639f, + 0.155828f, 0.156018f, 0.156207f, 0.156397f, 0.156586f, 0.156775f, 0.156965f, 0.157154f, + 0.157343f, 0.157533f, 0.157722f, 0.157912f, 0.158101f, 0.158290f, 0.158480f, 0.158669f, + 0.158858f, 0.159047f, 0.159237f, 0.159426f, 0.159615f, 0.159805f, 0.159994f, 0.160183f, + 0.160372f, 0.160562f, 0.160751f, 0.160940f, 0.161129f, 0.161319f, 0.161508f, 0.161697f, + 0.161886f, 0.162076f, 0.162265f, 0.162454f, 0.162643f, 0.162832f, 0.163022f, 0.163211f, + 0.163400f, 0.163589f, 0.163778f, 0.163967f, 0.164157f, 0.164346f, 0.164535f, 0.164724f, + 0.164913f, 0.165102f, 0.165291f, 0.165480f, 0.165670f, 0.165859f, 0.166048f, 0.166237f, + 0.166426f, 0.166615f, 0.166804f, 0.166993f, 0.167182f, 0.167371f, 0.167560f, 0.167749f, + 0.167938f, 0.168127f, 0.168316f, 0.168505f, 0.168694f, 0.168883f, 0.169072f, 0.169261f, + 0.169450f, 0.169639f, 0.169828f, 0.170017f, 0.170206f, 0.170395f, 0.170584f, 0.170773f, + 0.170962f, 0.171151f, 0.171340f, 0.171529f, 0.171718f, 0.171906f, 0.172095f, 0.172284f, + 0.172473f, 0.172662f, 0.172851f, 0.173040f, 0.173229f, 0.173417f, 0.173606f, 0.173795f, + 0.173984f, 0.174173f, 0.174362f, 0.174550f, 0.174739f, 0.174928f, 0.175117f, 0.175305f, + 0.175494f, 0.175683f, 0.175872f, 0.176061f, 0.176249f, 0.176438f, 0.176627f, 0.176815f, + 0.177004f, 0.177193f, 0.177382f, 0.177570f, 0.177759f, 0.177948f, 0.178136f, 0.178325f, + 0.178514f, 0.178702f, 0.178891f, 0.179080f, 0.179268f, 0.179457f, 0.179646f, 0.179834f, + 0.180023f, 0.180212f, 0.180400f, 0.180589f, 0.180777f, 0.180966f, 0.181154f, 0.181343f, + 0.181532f, 0.181720f, 0.181909f, 0.182097f, 0.182286f, 0.182474f, 0.182663f, 0.182851f, + 0.183040f, 0.183228f, 0.183417f, 0.183605f, 0.183794f, 0.183982f, 0.184171f, 0.184359f, + 0.184548f, 0.184736f, 0.184925f, 0.185113f, 0.185301f, 0.185490f, 0.185678f, 0.185867f, + 0.186055f, 0.186244f, 0.186432f, 0.186620f, 0.186809f, 0.186997f, 0.187185f, 0.187374f, + 0.187562f, 0.187750f, 0.187939f, 0.188127f, 0.188315f, 0.188504f, 0.188692f, 0.188880f, + 0.189069f, 0.189257f, 0.189445f, 0.189634f, 0.189822f, 0.190010f, 0.190198f, 0.190387f, + 0.190575f, 0.190763f, 0.190951f, 0.191139f, 0.191328f, 0.191516f, 0.191704f, 0.191892f, + 0.192080f, 0.192269f, 0.192457f, 0.192645f, 0.192833f, 0.193021f, 0.193209f, 0.193397f, + 0.193586f, 0.193774f, 0.193962f, 0.194150f, 0.194338f, 0.194526f, 0.194714f, 0.194902f, + 0.195090f, 0.195278f, 0.195466f, 0.195654f, 0.195843f, 0.196031f, 0.196219f, 0.196407f, + 0.196595f, 0.196783f, 0.196971f, 0.197159f, 0.197347f, 0.197535f, 0.197722f, 0.197910f, + 0.198098f, 0.198286f, 0.198474f, 0.198662f, 0.198850f, 0.199038f, 0.199226f, 0.199414f, + 0.199602f, 0.199790f, 0.199978f, 0.200165f, 0.200353f, 0.200541f, 0.200729f, 0.200917f, + 0.201105f, 0.201292f, 0.201480f, 0.201668f, 0.201856f, 0.202044f, 0.202231f, 0.202419f, + 0.202607f, 0.202795f, 0.202983f, 0.203170f, 0.203358f, 0.203546f, 0.203734f, 0.203921f, + 0.204109f, 0.204297f, 0.204484f, 0.204672f, 0.204860f, 0.205047f, 0.205235f, 0.205423f, + 0.205610f, 0.205798f, 0.205986f, 0.206173f, 0.206361f, 0.206549f, 0.206736f, 0.206924f, + 0.207111f, 0.207299f, 0.207487f, 0.207674f, 0.207862f, 0.208049f, 0.208237f, 0.208424f, + 0.208612f, 0.208799f, 0.208987f, 0.209174f, 0.209362f, 0.209549f, 0.209737f, 0.209924f, + 0.210112f, 0.210299f, 0.210487f, 0.210674f, 0.210862f, 0.211049f, 0.211237f, 0.211424f, + 0.211611f, 0.211799f, 0.211986f, 0.212174f, 0.212361f, 0.212548f, 0.212736f, 0.212923f, + 0.213110f, 0.213298f, 0.213485f, 0.213672f, 0.213860f, 0.214047f, 0.214234f, 0.214422f, + 0.214609f, 0.214796f, 0.214983f, 0.215171f, 0.215358f, 0.215545f, 0.215732f, 0.215920f, + 0.216107f, 0.216294f, 0.216481f, 0.216668f, 0.216856f, 0.217043f, 0.217230f, 0.217417f, + 0.217604f, 0.217791f, 0.217979f, 0.218166f, 0.218353f, 0.218540f, 0.218727f, 0.218914f, + 0.219101f, 0.219288f, 0.219475f, 0.219662f, 0.219850f, 0.220037f, 0.220224f, 0.220411f, + 0.220598f, 0.220785f, 0.220972f, 0.221159f, 0.221346f, 0.221533f, 0.221720f, 0.221907f, + 0.222094f, 0.222281f, 0.222468f, 0.222654f, 0.222841f, 0.223028f, 0.223215f, 0.223402f, + 0.223589f, 0.223776f, 0.223963f, 0.224150f, 0.224337f, 0.224523f, 0.224710f, 0.224897f, + 0.225084f, 0.225271f, 0.225458f, 0.225644f, 0.225831f, 0.226018f, 0.226205f, 0.226391f, + 0.226578f, 0.226765f, 0.226952f, 0.227139f, 0.227325f, 0.227512f, 0.227699f, 0.227885f, + 0.228072f, 0.228259f, 0.228445f, 0.228632f, 0.228819f, 0.229005f, 0.229192f, 0.229379f, + 0.229565f, 0.229752f, 0.229939f, 0.230125f, 0.230312f, 0.230498f, 0.230685f, 0.230872f, + 0.231058f, 0.231245f, 0.231431f, 0.231618f, 0.231804f, 0.231991f, 0.232177f, 0.232364f, + 0.232550f, 0.232737f, 0.232923f, 0.233110f, 0.233296f, 0.233483f, 0.233669f, 0.233856f, + 0.234042f, 0.234228f, 0.234415f, 0.234601f, 0.234788f, 0.234974f, 0.235160f, 0.235347f, + 0.235533f, 0.235719f, 0.235906f, 0.236092f, 0.236278f, 0.236465f, 0.236651f, 0.236837f, + 0.237024f, 0.237210f, 0.237396f, 0.237582f, 0.237769f, 0.237955f, 0.238141f, 0.238327f, + 0.238514f, 0.238700f, 0.238886f, 0.239072f, 0.239258f, 0.239445f, 0.239631f, 0.239817f, + 0.240003f, 0.240189f, 0.240375f, 0.240561f, 0.240748f, 0.240934f, 0.241120f, 0.241306f, + 0.241492f, 0.241678f, 0.241864f, 0.242050f, 0.242236f, 0.242422f, 0.242608f, 0.242794f, + 0.242980f, 0.243166f, 0.243352f, 0.243538f, 0.243724f, 0.243910f, 0.244096f, 0.244282f, + 0.244468f, 0.244654f, 0.244840f, 0.245026f, 0.245212f, 0.245397f, 0.245583f, 0.245769f, + 0.245955f, 0.246141f, 0.246327f, 0.246513f, 0.246698f, 0.246884f, 0.247070f, 0.247256f, + 0.247442f, 0.247627f, 0.247813f, 0.247999f, 0.248185f, 0.248370f, 0.248556f, 0.248742f, + 0.248928f, 0.249113f, 0.249299f, 0.249485f, 0.249670f, 0.249856f, 0.250042f, 0.250227f, + 0.250413f, 0.250599f, 0.250784f, 0.250970f, 0.251155f, 0.251341f, 0.251527f, 0.251712f, + 0.251898f, 0.252083f, 0.252269f, 0.252454f, 0.252640f, 0.252826f, 0.253011f, 0.253197f, + 0.253382f, 0.253568f, 0.253753f, 0.253938f, 0.254124f, 0.254309f, 0.254495f, 0.254680f, + 0.254866f, 0.255051f, 0.255236f, 0.255422f, 0.255607f, 0.255793f, 0.255978f, 0.256163f, + 0.256349f, 0.256534f, 0.256719f, 0.256905f, 0.257090f, 0.257275f, 0.257461f, 0.257646f, + 0.257831f, 0.258016f, 0.258202f, 0.258387f, 0.258572f, 0.258757f, 0.258943f, 0.259128f, + 0.259313f, 0.259498f, 0.259683f, 0.259868f, 0.260054f, 0.260239f, 0.260424f, 0.260609f, + 0.260794f, 0.260979f, 0.261164f, 0.261349f, 0.261534f, 0.261720f, 0.261905f, 0.262090f, + 0.262275f, 0.262460f, 0.262645f, 0.262830f, 0.263015f, 0.263200f, 0.263385f, 0.263570f, + 0.263755f, 0.263940f, 0.264125f, 0.264309f, 0.264494f, 0.264679f, 0.264864f, 0.265049f, + 0.265234f, 0.265419f, 0.265604f, 0.265789f, 0.265973f, 0.266158f, 0.266343f, 0.266528f, + 0.266713f, 0.266898f, 0.267082f, 0.267267f, 0.267452f, 0.267637f, 0.267821f, 0.268006f, + 0.268191f, 0.268376f, 0.268560f, 0.268745f, 0.268930f, 0.269114f, 0.269299f, 0.269484f, + 0.269668f, 0.269853f, 0.270038f, 0.270222f, 0.270407f, 0.270591f, 0.270776f, 0.270961f, + 0.271145f, 0.271330f, 0.271514f, 0.271699f, 0.271883f, 0.272068f, 0.272252f, 0.272437f, + 0.272621f, 0.272806f, 0.272990f, 0.273175f, 0.273359f, 0.273544f, 0.273728f, 0.273912f, + 0.274097f, 0.274281f, 0.274466f, 0.274650f, 0.274834f, 0.275019f, 0.275203f, 0.275387f, + 0.275572f, 0.275756f, 0.275940f, 0.276125f, 0.276309f, 0.276493f, 0.276678f, 0.276862f, + 0.277046f, 0.277230f, 0.277415f, 0.277599f, 0.277783f, 0.277967f, 0.278151f, 0.278336f, + 0.278520f, 0.278704f, 0.278888f, 0.279072f, 0.279256f, 0.279440f, 0.279624f, 0.279809f, + 0.279993f, 0.280177f, 0.280361f, 0.280545f, 0.280729f, 0.280913f, 0.281097f, 0.281281f, + 0.281465f, 0.281649f, 0.281833f, 0.282017f, 0.282201f, 0.282385f, 0.282569f, 0.282753f, + 0.282937f, 0.283120f, 0.283304f, 0.283488f, 0.283672f, 0.283856f, 0.284040f, 0.284224f, + 0.284408f, 0.284591f, 0.284775f, 0.284959f, 0.285143f, 0.285327f, 0.285510f, 0.285694f, + 0.285878f, 0.286062f, 0.286245f, 0.286429f, 0.286613f, 0.286796f, 0.286980f, 0.287164f, + 0.287347f, 0.287531f, 0.287715f, 0.287898f, 0.288082f, 0.288266f, 0.288449f, 0.288633f, + 0.288816f, 0.289000f, 0.289184f, 0.289367f, 0.289551f, 0.289734f, 0.289918f, 0.290101f, + 0.290285f, 0.290468f, 0.290652f, 0.290835f, 0.291019f, 0.291202f, 0.291385f, 0.291569f, + 0.291752f, 0.291936f, 0.292119f, 0.292302f, 0.292486f, 0.292669f, 0.292852f, 0.293036f, + 0.293219f, 0.293402f, 0.293586f, 0.293769f, 0.293952f, 0.294136f, 0.294319f, 0.294502f, + 0.294685f, 0.294869f, 0.295052f, 0.295235f, 0.295418f, 0.295601f, 0.295785f, 0.295968f, + 0.296151f, 0.296334f, 0.296517f, 0.296700f, 0.296883f, 0.297066f, 0.297250f, 0.297433f, + 0.297616f, 0.297799f, 0.297982f, 0.298165f, 0.298348f, 0.298531f, 0.298714f, 0.298897f, + 0.299080f, 0.299263f, 0.299446f, 0.299629f, 0.299812f, 0.299995f, 0.300177f, 0.300360f, + 0.300543f, 0.300726f, 0.300909f, 0.301092f, 0.301275f, 0.301458f, 0.301640f, 0.301823f, + 0.302006f, 0.302189f, 0.302372f, 0.302554f, 0.302737f, 0.302920f, 0.303103f, 0.303285f, + 0.303468f, 0.303651f, 0.303833f, 0.304016f, 0.304199f, 0.304381f, 0.304564f, 0.304747f, + 0.304929f, 0.305112f, 0.305294f, 0.305477f, 0.305660f, 0.305842f, 0.306025f, 0.306207f, + 0.306390f, 0.306572f, 0.306755f, 0.306937f, 0.307120f, 0.307302f, 0.307485f, 0.307667f, + 0.307850f, 0.308032f, 0.308214f, 0.308397f, 0.308579f, 0.308762f, 0.308944f, 0.309126f, + 0.309309f, 0.309491f, 0.309673f, 0.309856f, 0.310038f, 0.310220f, 0.310403f, 0.310585f, + 0.310767f, 0.310949f, 0.311132f, 0.311314f, 0.311496f, 0.311678f, 0.311860f, 0.312043f, + 0.312225f, 0.312407f, 0.312589f, 0.312771f, 0.312953f, 0.313135f, 0.313318f, 0.313500f, + 0.313682f, 0.313864f, 0.314046f, 0.314228f, 0.314410f, 0.314592f, 0.314774f, 0.314956f, + 0.315138f, 0.315320f, 0.315502f, 0.315684f, 0.315866f, 0.316048f, 0.316230f, 0.316411f, + 0.316593f, 0.316775f, 0.316957f, 0.317139f, 0.317321f, 0.317503f, 0.317684f, 0.317866f, + 0.318048f, 0.318230f, 0.318412f, 0.318593f, 0.318775f, 0.318957f, 0.319139f, 0.319320f, + 0.319502f, 0.319684f, 0.319865f, 0.320047f, 0.320229f, 0.320410f, 0.320592f, 0.320774f, + 0.320955f, 0.321137f, 0.321318f, 0.321500f, 0.321682f, 0.321863f, 0.322045f, 0.322226f, + 0.322408f, 0.322589f, 0.322771f, 0.322952f, 0.323134f, 0.323315f, 0.323497f, 0.323678f, + 0.323859f, 0.324041f, 0.324222f, 0.324404f, 0.324585f, 0.324766f, 0.324948f, 0.325129f, + 0.325310f, 0.325492f, 0.325673f, 0.325854f, 0.326035f, 0.326217f, 0.326398f, 0.326579f, + 0.326760f, 0.326942f, 0.327123f, 0.327304f, 0.327485f, 0.327666f, 0.327848f, 0.328029f, + 0.328210f, 0.328391f, 0.328572f, 0.328753f, 0.328934f, 0.329115f, 0.329296f, 0.329477f, + 0.329658f, 0.329839f, 0.330020f, 0.330202f, 0.330382f, 0.330563f, 0.330744f, 0.330925f, + 0.331106f, 0.331287f, 0.331468f, 0.331649f, 0.331830f, 0.332011f, 0.332192f, 0.332373f, + 0.332553f, 0.332734f, 0.332915f, 0.333096f, 0.333277f, 0.333457f, 0.333638f, 0.333819f, + 0.334000f, 0.334180f, 0.334361f, 0.334542f, 0.334722f, 0.334903f, 0.335084f, 0.335265f, + 0.335445f, 0.335626f, 0.335806f, 0.335987f, 0.336168f, 0.336348f, 0.336529f, 0.336709f, + 0.336890f, 0.337070f, 0.337251f, 0.337431f, 0.337612f, 0.337792f, 0.337973f, 0.338153f, + 0.338334f, 0.338514f, 0.338695f, 0.338875f, 0.339055f, 0.339236f, 0.339416f, 0.339597f, + 0.339777f, 0.339957f, 0.340138f, 0.340318f, 0.340498f, 0.340678f, 0.340859f, 0.341039f, + 0.341219f, 0.341399f, 0.341580f, 0.341760f, 0.341940f, 0.342120f, 0.342300f, 0.342481f, + 0.342661f, 0.342841f, 0.343021f, 0.343201f, 0.343381f, 0.343561f, 0.343741f, 0.343921f, + 0.344101f, 0.344281f, 0.344461f, 0.344641f, 0.344821f, 0.345001f, 0.345181f, 0.345361f, + 0.345541f, 0.345721f, 0.345901f, 0.346081f, 0.346261f, 0.346441f, 0.346621f, 0.346801f, + 0.346980f, 0.347160f, 0.347340f, 0.347520f, 0.347700f, 0.347879f, 0.348059f, 0.348239f, + 0.348419f, 0.348598f, 0.348778f, 0.348958f, 0.349138f, 0.349317f, 0.349497f, 0.349676f, + 0.349856f, 0.350036f, 0.350215f, 0.350395f, 0.350575f, 0.350754f, 0.350934f, 0.351113f, + 0.351293f, 0.351472f, 0.351652f, 0.351831f, 0.352011f, 0.352190f, 0.352370f, 0.352549f, + 0.352729f, 0.352908f, 0.353087f, 0.353267f, 0.353446f, 0.353626f, 0.353805f, 0.353984f, + 0.354164f, 0.354343f, 0.354522f, 0.354701f, 0.354881f, 0.355060f, 0.355239f, 0.355418f, + 0.355598f, 0.355777f, 0.355956f, 0.356135f, 0.356314f, 0.356494f, 0.356673f, 0.356852f, + 0.357031f, 0.357210f, 0.357389f, 0.357568f, 0.357747f, 0.357926f, 0.358105f, 0.358284f, + 0.358463f, 0.358642f, 0.358821f, 0.359000f, 0.359179f, 0.359358f, 0.359537f, 0.359716f, + 0.359895f, 0.360074f, 0.360253f, 0.360432f, 0.360611f, 0.360789f, 0.360968f, 0.361147f, + 0.361326f, 0.361505f, 0.361683f, 0.361862f, 0.362041f, 0.362220f, 0.362398f, 0.362577f, + 0.362756f, 0.362934f, 0.363113f, 0.363292f, 0.363470f, 0.363649f, 0.363828f, 0.364006f, + 0.364185f, 0.364363f, 0.364542f, 0.364720f, 0.364899f, 0.365078f, 0.365256f, 0.365435f, + 0.365613f, 0.365791f, 0.365970f, 0.366148f, 0.366327f, 0.366505f, 0.366684f, 0.366862f, + 0.367040f, 0.367219f, 0.367397f, 0.367575f, 0.367754f, 0.367932f, 0.368110f, 0.368289f, + 0.368467f, 0.368645f, 0.368823f, 0.369002f, 0.369180f, 0.369358f, 0.369536f, 0.369714f, + 0.369892f, 0.370071f, 0.370249f, 0.370427f, 0.370605f, 0.370783f, 0.370961f, 0.371139f, + 0.371317f, 0.371495f, 0.371673f, 0.371851f, 0.372029f, 0.372207f, 0.372385f, 0.372563f, + 0.372741f, 0.372919f, 0.373097f, 0.373275f, 0.373453f, 0.373631f, 0.373808f, 0.373986f, + 0.374164f, 0.374342f, 0.374520f, 0.374697f, 0.374875f, 0.375053f, 0.375231f, 0.375408f, + 0.375586f, 0.375764f, 0.375942f, 0.376119f, 0.376297f, 0.376475f, 0.376652f, 0.376830f, + 0.377007f, 0.377185f, 0.377363f, 0.377540f, 0.377718f, 0.377895f, 0.378073f, 0.378250f, + 0.378428f, 0.378605f, 0.378783f, 0.378960f, 0.379138f, 0.379315f, 0.379492f, 0.379670f, + 0.379847f, 0.380025f, 0.380202f, 0.380379f, 0.380557f, 0.380734f, 0.380911f, 0.381088f, + 0.381266f, 0.381443f, 0.381620f, 0.381797f, 0.381975f, 0.382152f, 0.382329f, 0.382506f, + 0.382683f, 0.382861f, 0.383038f, 0.383215f, 0.383392f, 0.383569f, 0.383746f, 0.383923f, + 0.384100f, 0.384277f, 0.384454f, 0.384631f, 0.384808f, 0.384985f, 0.385162f, 0.385339f, + 0.385516f, 0.385693f, 0.385870f, 0.386047f, 0.386224f, 0.386400f, 0.386577f, 0.386754f, + 0.386931f, 0.387108f, 0.387285f, 0.387461f, 0.387638f, 0.387815f, 0.387992f, 0.388168f, + 0.388345f, 0.388522f, 0.388698f, 0.388875f, 0.389052f, 0.389228f, 0.389405f, 0.389582f, + 0.389758f, 0.389935f, 0.390111f, 0.390288f, 0.390464f, 0.390641f, 0.390817f, 0.390994f, + 0.391170f, 0.391347f, 0.391523f, 0.391700f, 0.391876f, 0.392053f, 0.392229f, 0.392405f, + 0.392582f, 0.392758f, 0.392934f, 0.393111f, 0.393287f, 0.393463f, 0.393640f, 0.393816f, + 0.393992f, 0.394168f, 0.394344f, 0.394521f, 0.394697f, 0.394873f, 0.395049f, 0.395225f, + 0.395401f, 0.395578f, 0.395754f, 0.395930f, 0.396106f, 0.396282f, 0.396458f, 0.396634f, + 0.396810f, 0.396986f, 0.397162f, 0.397338f, 0.397514f, 0.397690f, 0.397866f, 0.398042f, + 0.398218f, 0.398393f, 0.398569f, 0.398745f, 0.398921f, 0.399097f, 0.399273f, 0.399448f, + 0.399624f, 0.399800f, 0.399976f, 0.400151f, 0.400327f, 0.400503f, 0.400679f, 0.400854f, + 0.401030f, 0.401206f, 0.401381f, 0.401557f, 0.401732f, 0.401908f, 0.402084f, 0.402259f, + 0.402435f, 0.402610f, 0.402786f, 0.402961f, 0.403137f, 0.403312f, 0.403488f, 0.403663f, + 0.403838f, 0.404014f, 0.404189f, 0.404365f, 0.404540f, 0.404715f, 0.404891f, 0.405066f, + 0.405241f, 0.405417f, 0.405592f, 0.405767f, 0.405942f, 0.406118f, 0.406293f, 0.406468f, + 0.406643f, 0.406818f, 0.406994f, 0.407169f, 0.407344f, 0.407519f, 0.407694f, 0.407869f, + 0.408044f, 0.408219f, 0.408394f, 0.408569f, 0.408744f, 0.408919f, 0.409094f, 0.409269f, + 0.409444f, 0.409619f, 0.409794f, 0.409969f, 0.410144f, 0.410319f, 0.410493f, 0.410668f, + 0.410843f, 0.411018f, 0.411193f, 0.411368f, 0.411542f, 0.411717f, 0.411892f, 0.412067f, + 0.412241f, 0.412416f, 0.412591f, 0.412765f, 0.412940f, 0.413115f, 0.413289f, 0.413464f, + 0.413638f, 0.413813f, 0.413987f, 0.414162f, 0.414337f, 0.414511f, 0.414685f, 0.414860f, + 0.415034f, 0.415209f, 0.415383f, 0.415558f, 0.415732f, 0.415906f, 0.416081f, 0.416255f, + 0.416430f, 0.416604f, 0.416778f, 0.416952f, 0.417127f, 0.417301f, 0.417475f, 0.417650f, + 0.417824f, 0.417998f, 0.418172f, 0.418346f, 0.418520f, 0.418695f, 0.418869f, 0.419043f, + 0.419217f, 0.419391f, 0.419565f, 0.419739f, 0.419913f, 0.420087f, 0.420261f, 0.420435f, + 0.420609f, 0.420783f, 0.420957f, 0.421131f, 0.421305f, 0.421479f, 0.421653f, 0.421826f, + 0.422000f, 0.422174f, 0.422348f, 0.422522f, 0.422695f, 0.422869f, 0.423043f, 0.423217f, + 0.423390f, 0.423564f, 0.423738f, 0.423912f, 0.424085f, 0.424259f, 0.424432f, 0.424606f, + 0.424780f, 0.424953f, 0.425127f, 0.425300f, 0.425474f, 0.425647f, 0.425821f, 0.425994f, + 0.426168f, 0.426341f, 0.426515f, 0.426688f, 0.426862f, 0.427035f, 0.427208f, 0.427382f, + 0.427555f, 0.427728f, 0.427902f, 0.428075f, 0.428248f, 0.428422f, 0.428595f, 0.428768f, + 0.428941f, 0.429114f, 0.429288f, 0.429461f, 0.429634f, 0.429807f, 0.429980f, 0.430153f, + 0.430326f, 0.430500f, 0.430673f, 0.430846f, 0.431019f, 0.431192f, 0.431365f, 0.431538f, + 0.431711f, 0.431884f, 0.432057f, 0.432229f, 0.432402f, 0.432575f, 0.432748f, 0.432921f, + 0.433094f, 0.433267f, 0.433439f, 0.433612f, 0.433785f, 0.433958f, 0.434131f, 0.434303f, + 0.434476f, 0.434649f, 0.434821f, 0.434994f, 0.435167f, 0.435339f, 0.435512f, 0.435685f, + 0.435857f, 0.436030f, 0.436202f, 0.436375f, 0.436547f, 0.436720f, 0.436892f, 0.437065f, + 0.437237f, 0.437410f, 0.437582f, 0.437754f, 0.437927f, 0.438099f, 0.438272f, 0.438444f, + 0.438616f, 0.438789f, 0.438961f, 0.439133f, 0.439305f, 0.439478f, 0.439650f, 0.439822f, + 0.439994f, 0.440166f, 0.440339f, 0.440511f, 0.440683f, 0.440855f, 0.441027f, 0.441199f, + 0.441371f, 0.441543f, 0.441715f, 0.441887f, 0.442059f, 0.442231f, 0.442403f, 0.442575f, + 0.442747f, 0.442919f, 0.443091f, 0.443263f, 0.443435f, 0.443607f, 0.443779f, 0.443950f, + 0.444122f, 0.444294f, 0.444466f, 0.444637f, 0.444809f, 0.444981f, 0.445153f, 0.445324f, + 0.445496f, 0.445668f, 0.445839f, 0.446011f, 0.446183f, 0.446354f, 0.446526f, 0.446697f, + 0.446869f, 0.447040f, 0.447212f, 0.447383f, 0.447555f, 0.447726f, 0.447898f, 0.448069f, + 0.448241f, 0.448412f, 0.448583f, 0.448755f, 0.448926f, 0.449097f, 0.449269f, 0.449440f, + 0.449611f, 0.449783f, 0.449954f, 0.450125f, 0.450296f, 0.450467f, 0.450639f, 0.450810f, + 0.450981f, 0.451152f, 0.451323f, 0.451494f, 0.451665f, 0.451836f, 0.452008f, 0.452179f, + 0.452350f, 0.452521f, 0.452692f, 0.452863f, 0.453033f, 0.453204f, 0.453375f, 0.453546f, + 0.453717f, 0.453888f, 0.454059f, 0.454230f, 0.454400f, 0.454571f, 0.454742f, 0.454913f, + 0.455084f, 0.455254f, 0.455425f, 0.455596f, 0.455766f, 0.455937f, 0.456108f, 0.456278f, + 0.456449f, 0.456620f, 0.456790f, 0.456961f, 0.457131f, 0.457302f, 0.457472f, 0.457643f, + 0.457813f, 0.457984f, 0.458154f, 0.458325f, 0.458495f, 0.458665f, 0.458836f, 0.459006f, + 0.459177f, 0.459347f, 0.459517f, 0.459687f, 0.459858f, 0.460028f, 0.460198f, 0.460369f, + 0.460539f, 0.460709f, 0.460879f, 0.461049f, 0.461219f, 0.461390f, 0.461560f, 0.461730f, + 0.461900f, 0.462070f, 0.462240f, 0.462410f, 0.462580f, 0.462750f, 0.462920f, 0.463090f, + 0.463260f, 0.463430f, 0.463600f, 0.463769f, 0.463939f, 0.464109f, 0.464279f, 0.464449f, + 0.464619f, 0.464788f, 0.464958f, 0.465128f, 0.465298f, 0.465467f, 0.465637f, 0.465807f, + 0.465977f, 0.466146f, 0.466316f, 0.466485f, 0.466655f, 0.466825f, 0.466994f, 0.467164f, + 0.467333f, 0.467503f, 0.467672f, 0.467842f, 0.468011f, 0.468181f, 0.468350f, 0.468519f, + 0.468689f, 0.468858f, 0.469028f, 0.469197f, 0.469366f, 0.469536f, 0.469705f, 0.469874f, + 0.470043f, 0.470213f, 0.470382f, 0.470551f, 0.470720f, 0.470889f, 0.471058f, 0.471228f, + 0.471397f, 0.471566f, 0.471735f, 0.471904f, 0.472073f, 0.472242f, 0.472411f, 0.472580f, + 0.472749f, 0.472918f, 0.473087f, 0.473256f, 0.473425f, 0.473594f, 0.473763f, 0.473931f, + 0.474100f, 0.474269f, 0.474438f, 0.474607f, 0.474775f, 0.474944f, 0.475113f, 0.475282f, + 0.475450f, 0.475619f, 0.475788f, 0.475956f, 0.476125f, 0.476294f, 0.476462f, 0.476631f, + 0.476799f, 0.476968f, 0.477136f, 0.477305f, 0.477473f, 0.477642f, 0.477810f, 0.477979f, + 0.478147f, 0.478315f, 0.478484f, 0.478652f, 0.478821f, 0.478989f, 0.479157f, 0.479325f, + 0.479494f, 0.479662f, 0.479830f, 0.479998f, 0.480167f, 0.480335f, 0.480503f, 0.480671f, + 0.480839f, 0.481007f, 0.481176f, 0.481344f, 0.481512f, 0.481680f, 0.481848f, 0.482016f, + 0.482184f, 0.482352f, 0.482520f, 0.482688f, 0.482856f, 0.483023f, 0.483191f, 0.483359f, + 0.483527f, 0.483695f, 0.483863f, 0.484031f, 0.484198f, 0.484366f, 0.484534f, 0.484702f, + 0.484869f, 0.485037f, 0.485205f, 0.485372f, 0.485540f, 0.485708f, 0.485875f, 0.486043f, + 0.486210f, 0.486378f, 0.486545f, 0.486713f, 0.486880f, 0.487048f, 0.487215f, 0.487383f, + 0.487550f, 0.487718f, 0.487885f, 0.488052f, 0.488220f, 0.488387f, 0.488554f, 0.488722f, + 0.488889f, 0.489056f, 0.489223f, 0.489391f, 0.489558f, 0.489725f, 0.489892f, 0.490059f, + 0.490226f, 0.490394f, 0.490561f, 0.490728f, 0.490895f, 0.491062f, 0.491229f, 0.491396f, + 0.491563f, 0.491730f, 0.491897f, 0.492064f, 0.492231f, 0.492398f, 0.492564f, 0.492731f, + 0.492898f, 0.493065f, 0.493232f, 0.493399f, 0.493565f, 0.493732f, 0.493899f, 0.494066f, + 0.494232f, 0.494399f, 0.494566f, 0.494732f, 0.494899f, 0.495066f, 0.495232f, 0.495399f, + 0.495565f, 0.495732f, 0.495898f, 0.496065f, 0.496231f, 0.496398f, 0.496564f, 0.496731f, + 0.496897f, 0.497063f, 0.497230f, 0.497396f, 0.497562f, 0.497729f, 0.497895f, 0.498061f, + 0.498228f, 0.498394f, 0.498560f, 0.498726f, 0.498893f, 0.499059f, 0.499225f, 0.499391f, + 0.499557f, 0.499723f, 0.499889f, 0.500055f, 0.500221f, 0.500387f, 0.500553f, 0.500719f, + 0.500885f, 0.501051f, 0.501217f, 0.501383f, 0.501549f, 0.501715f, 0.501881f, 0.502047f, + 0.502212f, 0.502378f, 0.502544f, 0.502710f, 0.502876f, 0.503041f, 0.503207f, 0.503373f, + 0.503538f, 0.503704f, 0.503870f, 0.504035f, 0.504201f, 0.504366f, 0.504532f, 0.504698f, + 0.504863f, 0.505029f, 0.505194f, 0.505360f, 0.505525f, 0.505690f, 0.505856f, 0.506021f, + 0.506187f, 0.506352f, 0.506517f, 0.506683f, 0.506848f, 0.507013f, 0.507179f, 0.507344f, + 0.507509f, 0.507674f, 0.507839f, 0.508005f, 0.508170f, 0.508335f, 0.508500f, 0.508665f, + 0.508830f, 0.508995f, 0.509160f, 0.509325f, 0.509490f, 0.509655f, 0.509820f, 0.509985f, + 0.510150f, 0.510315f, 0.510480f, 0.510645f, 0.510810f, 0.510974f, 0.511139f, 0.511304f, + 0.511469f, 0.511634f, 0.511798f, 0.511963f, 0.512128f, 0.512292f, 0.512457f, 0.512622f, + 0.512786f, 0.512951f, 0.513116f, 0.513280f, 0.513445f, 0.513609f, 0.513774f, 0.513938f, + 0.514103f, 0.514267f, 0.514432f, 0.514596f, 0.514760f, 0.514925f, 0.515089f, 0.515254f, + 0.515418f, 0.515582f, 0.515746f, 0.515911f, 0.516075f, 0.516239f, 0.516403f, 0.516568f, + 0.516732f, 0.516896f, 0.517060f, 0.517224f, 0.517388f, 0.517552f, 0.517716f, 0.517880f, + 0.518045f, 0.518209f, 0.518372f, 0.518536f, 0.518700f, 0.518864f, 0.519028f, 0.519192f, + 0.519356f, 0.519520f, 0.519684f, 0.519848f, 0.520011f, 0.520175f, 0.520339f, 0.520503f, + 0.520666f, 0.520830f, 0.520994f, 0.521157f, 0.521321f, 0.521485f, 0.521648f, 0.521812f, + 0.521975f, 0.522139f, 0.522302f, 0.522466f, 0.522629f, 0.522793f, 0.522956f, 0.523120f, + 0.523283f, 0.523447f, 0.523610f, 0.523773f, 0.523937f, 0.524100f, 0.524263f, 0.524426f, + 0.524590f, 0.524753f, 0.524916f, 0.525079f, 0.525243f, 0.525406f, 0.525569f, 0.525732f, + 0.525895f, 0.526058f, 0.526221f, 0.526384f, 0.526547f, 0.526710f, 0.526873f, 0.527036f, + 0.527199f, 0.527362f, 0.527525f, 0.527688f, 0.527851f, 0.528014f, 0.528176f, 0.528339f, + 0.528502f, 0.528665f, 0.528828f, 0.528990f, 0.529153f, 0.529316f, 0.529478f, 0.529641f, + 0.529804f, 0.529966f, 0.530129f, 0.530291f, 0.530454f, 0.530617f, 0.530779f, 0.530942f, + 0.531104f, 0.531266f, 0.531429f, 0.531591f, 0.531754f, 0.531916f, 0.532078f, 0.532241f, + 0.532403f, 0.532565f, 0.532728f, 0.532890f, 0.533052f, 0.533214f, 0.533377f, 0.533539f, + 0.533701f, 0.533863f, 0.534025f, 0.534187f, 0.534349f, 0.534512f, 0.534674f, 0.534836f, + 0.534998f, 0.535160f, 0.535322f, 0.535484f, 0.535645f, 0.535807f, 0.535969f, 0.536131f, + 0.536293f, 0.536455f, 0.536617f, 0.536778f, 0.536940f, 0.537102f, 0.537264f, 0.537425f, + 0.537587f, 0.537749f, 0.537910f, 0.538072f, 0.538234f, 0.538395f, 0.538557f, 0.538718f, + 0.538880f, 0.539041f, 0.539203f, 0.539364f, 0.539526f, 0.539687f, 0.539849f, 0.540010f, + 0.540171f, 0.540333f, 0.540494f, 0.540655f, 0.540817f, 0.540978f, 0.541139f, 0.541301f, + 0.541462f, 0.541623f, 0.541784f, 0.541945f, 0.542106f, 0.542268f, 0.542429f, 0.542590f, + 0.542751f, 0.542912f, 0.543073f, 0.543234f, 0.543395f, 0.543556f, 0.543717f, 0.543878f, + 0.544039f, 0.544199f, 0.544360f, 0.544521f, 0.544682f, 0.544843f, 0.545003f, 0.545164f, + 0.545325f, 0.545486f, 0.545646f, 0.545807f, 0.545968f, 0.546128f, 0.546289f, 0.546450f, + 0.546610f, 0.546771f, 0.546931f, 0.547092f, 0.547252f, 0.547413f, 0.547573f, 0.547734f, + 0.547894f, 0.548054f, 0.548215f, 0.548375f, 0.548536f, 0.548696f, 0.548856f, 0.549016f, + 0.549177f, 0.549337f, 0.549497f, 0.549657f, 0.549818f, 0.549978f, 0.550138f, 0.550298f, + 0.550458f, 0.550618f, 0.550778f, 0.550938f, 0.551098f, 0.551258f, 0.551418f, 0.551578f, + 0.551738f, 0.551898f, 0.552058f, 0.552218f, 0.552378f, 0.552537f, 0.552697f, 0.552857f, + 0.553017f, 0.553176f, 0.553336f, 0.553496f, 0.553656f, 0.553815f, 0.553975f, 0.554134f, + 0.554294f, 0.554454f, 0.554613f, 0.554773f, 0.554932f, 0.555092f, 0.555251f, 0.555411f, + 0.555570f, 0.555730f, 0.555889f, 0.556048f, 0.556208f, 0.556367f, 0.556526f, 0.556686f, + 0.556845f, 0.557004f, 0.557164f, 0.557323f, 0.557482f, 0.557641f, 0.557800f, 0.557959f, + 0.558119f, 0.558278f, 0.558437f, 0.558596f, 0.558755f, 0.558914f, 0.559073f, 0.559232f, + 0.559391f, 0.559550f, 0.559709f, 0.559867f, 0.560026f, 0.560185f, 0.560344f, 0.560503f, + 0.560662f, 0.560820f, 0.560979f, 0.561138f, 0.561297f, 0.561455f, 0.561614f, 0.561773f, + 0.561931f, 0.562090f, 0.562248f, 0.562407f, 0.562565f, 0.562724f, 0.562882f, 0.563041f, + 0.563199f, 0.563358f, 0.563516f, 0.563675f, 0.563833f, 0.563991f, 0.564150f, 0.564308f, + 0.564466f, 0.564624f, 0.564783f, 0.564941f, 0.565099f, 0.565257f, 0.565416f, 0.565574f, + 0.565732f, 0.565890f, 0.566048f, 0.566206f, 0.566364f, 0.566522f, 0.566680f, 0.566838f, + 0.566996f, 0.567154f, 0.567312f, 0.567470f, 0.567628f, 0.567786f, 0.567943f, 0.568101f, + 0.568259f, 0.568417f, 0.568574f, 0.568732f, 0.568890f, 0.569048f, 0.569205f, 0.569363f, + 0.569521f, 0.569678f, 0.569836f, 0.569993f, 0.570151f, 0.570308f, 0.570466f, 0.570623f, + 0.570781f, 0.570938f, 0.571096f, 0.571253f, 0.571410f, 0.571568f, 0.571725f, 0.571882f, + 0.572040f, 0.572197f, 0.572354f, 0.572511f, 0.572669f, 0.572826f, 0.572983f, 0.573140f, + 0.573297f, 0.573454f, 0.573611f, 0.573768f, 0.573925f, 0.574082f, 0.574239f, 0.574396f, + 0.574553f, 0.574710f, 0.574867f, 0.575024f, 0.575181f, 0.575338f, 0.575495f, 0.575651f, + 0.575808f, 0.575965f, 0.576122f, 0.576278f, 0.576435f, 0.576592f, 0.576748f, 0.576905f, + 0.577062f, 0.577218f, 0.577375f, 0.577531f, 0.577688f, 0.577844f, 0.578001f, 0.578157f, + 0.578314f, 0.578470f, 0.578627f, 0.578783f, 0.578939f, 0.579096f, 0.579252f, 0.579408f, + 0.579565f, 0.579721f, 0.579877f, 0.580033f, 0.580189f, 0.580346f, 0.580502f, 0.580658f, + 0.580814f, 0.580970f, 0.581126f, 0.581282f, 0.581438f, 0.581594f, 0.581750f, 0.581906f, + 0.582062f, 0.582218f, 0.582374f, 0.582530f, 0.582685f, 0.582841f, 0.582997f, 0.583153f, + 0.583309f, 0.583464f, 0.583620f, 0.583776f, 0.583931f, 0.584087f, 0.584243f, 0.584398f, + 0.584554f, 0.584710f, 0.584865f, 0.585021f, 0.585176f, 0.585332f, 0.585487f, 0.585642f, + 0.585798f, 0.585953f, 0.586109f, 0.586264f, 0.586419f, 0.586575f, 0.586730f, 0.586885f, + 0.587040f, 0.587196f, 0.587351f, 0.587506f, 0.587661f, 0.587816f, 0.587971f, 0.588126f, + 0.588282f, 0.588437f, 0.588592f, 0.588747f, 0.588902f, 0.589057f, 0.589212f, 0.589366f, + 0.589521f, 0.589676f, 0.589831f, 0.589986f, 0.590141f, 0.590295f, 0.590450f, 0.590605f, + 0.590760f, 0.590914f, 0.591069f, 0.591224f, 0.591378f, 0.591533f, 0.591688f, 0.591842f, + 0.591997f, 0.592151f, 0.592306f, 0.592460f, 0.592615f, 0.592769f, 0.592924f, 0.593078f, + 0.593232f, 0.593387f, 0.593541f, 0.593695f, 0.593850f, 0.594004f, 0.594158f, 0.594312f, + 0.594467f, 0.594621f, 0.594775f, 0.594929f, 0.595083f, 0.595237f, 0.595391f, 0.595545f, + 0.595699f, 0.595853f, 0.596007f, 0.596161f, 0.596315f, 0.596469f, 0.596623f, 0.596777f, + 0.596931f, 0.597085f, 0.597238f, 0.597392f, 0.597546f, 0.597700f, 0.597853f, 0.598007f, + 0.598161f, 0.598314f, 0.598468f, 0.598622f, 0.598775f, 0.598929f, 0.599082f, 0.599236f, + 0.599389f, 0.599543f, 0.599696f, 0.599850f, 0.600003f, 0.600156f, 0.600310f, 0.600463f, + 0.600616f, 0.600770f, 0.600923f, 0.601076f, 0.601230f, 0.601383f, 0.601536f, 0.601689f, + 0.601842f, 0.601995f, 0.602148f, 0.602302f, 0.602455f, 0.602608f, 0.602761f, 0.602914f, + 0.603067f, 0.603220f, 0.603372f, 0.603525f, 0.603678f, 0.603831f, 0.603984f, 0.604137f, + 0.604290f, 0.604442f, 0.604595f, 0.604748f, 0.604900f, 0.605053f, 0.605206f, 0.605358f, + 0.605511f, 0.605664f, 0.605816f, 0.605969f, 0.606121f, 0.606274f, 0.606426f, 0.606579f, + 0.606731f, 0.606884f, 0.607036f, 0.607188f, 0.607341f, 0.607493f, 0.607645f, 0.607798f, + 0.607950f, 0.608102f, 0.608254f, 0.608406f, 0.608559f, 0.608711f, 0.608863f, 0.609015f, + 0.609167f, 0.609319f, 0.609471f, 0.609623f, 0.609775f, 0.609927f, 0.610079f, 0.610231f, + 0.610383f, 0.610535f, 0.610687f, 0.610838f, 0.610990f, 0.611142f, 0.611294f, 0.611445f, + 0.611597f, 0.611749f, 0.611901f, 0.612052f, 0.612204f, 0.612355f, 0.612507f, 0.612659f, + 0.612810f, 0.612962f, 0.613113f, 0.613265f, 0.613416f, 0.613567f, 0.613719f, 0.613870f, + 0.614022f, 0.614173f, 0.614324f, 0.614475f, 0.614627f, 0.614778f, 0.614929f, 0.615080f, + 0.615232f, 0.615383f, 0.615534f, 0.615685f, 0.615836f, 0.615987f, 0.616138f, 0.616289f, + 0.616440f, 0.616591f, 0.616742f, 0.616893f, 0.617044f, 0.617195f, 0.617346f, 0.617496f, + 0.617647f, 0.617798f, 0.617949f, 0.618100f, 0.618250f, 0.618401f, 0.618552f, 0.618702f, + 0.618853f, 0.619004f, 0.619154f, 0.619305f, 0.619455f, 0.619606f, 0.619756f, 0.619907f, + 0.620057f, 0.620208f, 0.620358f, 0.620508f, 0.620659f, 0.620809f, 0.620959f, 0.621110f, + 0.621260f, 0.621410f, 0.621560f, 0.621711f, 0.621861f, 0.622011f, 0.622161f, 0.622311f, + 0.622461f, 0.622611f, 0.622761f, 0.622911f, 0.623061f, 0.623211f, 0.623361f, 0.623511f, + 0.623661f, 0.623811f, 0.623961f, 0.624111f, 0.624260f, 0.624410f, 0.624560f, 0.624710f, + 0.624860f, 0.625009f, 0.625159f, 0.625309f, 0.625458f, 0.625608f, 0.625757f, 0.625907f, + 0.626056f, 0.626206f, 0.626355f, 0.626505f, 0.626654f, 0.626804f, 0.626953f, 0.627102f, + 0.627252f, 0.627401f, 0.627550f, 0.627700f, 0.627849f, 0.627998f, 0.628147f, 0.628297f, + 0.628446f, 0.628595f, 0.628744f, 0.628893f, 0.629042f, 0.629191f, 0.629340f, 0.629489f, + 0.629638f, 0.629787f, 0.629936f, 0.630085f, 0.630234f, 0.630383f, 0.630532f, 0.630680f, + 0.630829f, 0.630978f, 0.631127f, 0.631275f, 0.631424f, 0.631573f, 0.631721f, 0.631870f, + 0.632019f, 0.632167f, 0.632316f, 0.632464f, 0.632613f, 0.632761f, 0.632910f, 0.633058f, + 0.633207f, 0.633355f, 0.633504f, 0.633652f, 0.633800f, 0.633949f, 0.634097f, 0.634245f, + 0.634393f, 0.634542f, 0.634690f, 0.634838f, 0.634986f, 0.635134f, 0.635282f, 0.635430f, + 0.635578f, 0.635726f, 0.635874f, 0.636022f, 0.636170f, 0.636318f, 0.636466f, 0.636614f, + 0.636762f, 0.636910f, 0.637057f, 0.637205f, 0.637353f, 0.637501f, 0.637649f, 0.637796f, + 0.637944f, 0.638092f, 0.638239f, 0.638387f, 0.638534f, 0.638682f, 0.638829f, 0.638977f, + 0.639124f, 0.639272f, 0.639419f, 0.639567f, 0.639714f, 0.639862f, 0.640009f, 0.640156f, + 0.640303f, 0.640451f, 0.640598f, 0.640745f, 0.640892f, 0.641040f, 0.641187f, 0.641334f, + 0.641481f, 0.641628f, 0.641775f, 0.641922f, 0.642069f, 0.642216f, 0.642363f, 0.642510f, + 0.642657f, 0.642804f, 0.642951f, 0.643098f, 0.643245f, 0.643391f, 0.643538f, 0.643685f, + 0.643832f, 0.643978f, 0.644125f, 0.644272f, 0.644418f, 0.644565f, 0.644711f, 0.644858f, + 0.645005f, 0.645151f, 0.645298f, 0.645444f, 0.645590f, 0.645737f, 0.645883f, 0.646030f, + 0.646176f, 0.646322f, 0.646469f, 0.646615f, 0.646761f, 0.646907f, 0.647054f, 0.647200f, + 0.647346f, 0.647492f, 0.647638f, 0.647784f, 0.647930f, 0.648076f, 0.648222f, 0.648368f, + 0.648514f, 0.648660f, 0.648806f, 0.648952f, 0.649098f, 0.649244f, 0.649390f, 0.649536f, + 0.649681f, 0.649827f, 0.649973f, 0.650119f, 0.650264f, 0.650410f, 0.650555f, 0.650701f, + 0.650847f, 0.650992f, 0.651138f, 0.651283f, 0.651429f, 0.651574f, 0.651720f, 0.651865f, + 0.652011f, 0.652156f, 0.652301f, 0.652447f, 0.652592f, 0.652737f, 0.652882f, 0.653028f, + 0.653173f, 0.653318f, 0.653463f, 0.653608f, 0.653753f, 0.653899f, 0.654044f, 0.654189f, + 0.654334f, 0.654479f, 0.654624f, 0.654769f, 0.654913f, 0.655058f, 0.655203f, 0.655348f, + 0.655493f, 0.655638f, 0.655782f, 0.655927f, 0.656072f, 0.656217f, 0.656361f, 0.656506f, + 0.656651f, 0.656795f, 0.656940f, 0.657084f, 0.657229f, 0.657373f, 0.657518f, 0.657662f, + 0.657807f, 0.657951f, 0.658095f, 0.658240f, 0.658384f, 0.658529f, 0.658673f, 0.658817f, + 0.658961f, 0.659105f, 0.659250f, 0.659394f, 0.659538f, 0.659682f, 0.659826f, 0.659970f, + 0.660114f, 0.660258f, 0.660402f, 0.660546f, 0.660690f, 0.660834f, 0.660978f, 0.661122f, + 0.661266f, 0.661410f, 0.661553f, 0.661697f, 0.661841f, 0.661985f, 0.662128f, 0.662272f, + 0.662416f, 0.662559f, 0.662703f, 0.662847f, 0.662990f, 0.663134f, 0.663277f, 0.663421f, + 0.663564f, 0.663708f, 0.663851f, 0.663994f, 0.664138f, 0.664281f, 0.664424f, 0.664568f, + 0.664711f, 0.664854f, 0.664997f, 0.665141f, 0.665284f, 0.665427f, 0.665570f, 0.665713f, + 0.665856f, 0.665999f, 0.666142f, 0.666285f, 0.666428f, 0.666571f, 0.666714f, 0.666857f, + 0.667000f, 0.667143f, 0.667286f, 0.667428f, 0.667571f, 0.667714f, 0.667857f, 0.667999f, + 0.668142f, 0.668285f, 0.668427f, 0.668570f, 0.668712f, 0.668855f, 0.668998f, 0.669140f, + 0.669283f, 0.669425f, 0.669567f, 0.669710f, 0.669852f, 0.669995f, 0.670137f, 0.670279f, + 0.670422f, 0.670564f, 0.670706f, 0.670848f, 0.670990f, 0.671133f, 0.671275f, 0.671417f, + 0.671559f, 0.671701f, 0.671843f, 0.671985f, 0.672127f, 0.672269f, 0.672411f, 0.672553f, + 0.672695f, 0.672837f, 0.672978f, 0.673120f, 0.673262f, 0.673404f, 0.673546f, 0.673687f, + 0.673829f, 0.673971f, 0.674112f, 0.674254f, 0.674396f, 0.674537f, 0.674679f, 0.674820f, + 0.674962f, 0.675103f, 0.675245f, 0.675386f, 0.675527f, 0.675669f, 0.675810f, 0.675951f, + 0.676093f, 0.676234f, 0.676375f, 0.676516f, 0.676658f, 0.676799f, 0.676940f, 0.677081f, + 0.677222f, 0.677363f, 0.677504f, 0.677645f, 0.677786f, 0.677927f, 0.678068f, 0.678209f, + 0.678350f, 0.678491f, 0.678632f, 0.678773f, 0.678913f, 0.679054f, 0.679195f, 0.679336f, + 0.679476f, 0.679617f, 0.679758f, 0.679898f, 0.680039f, 0.680179f, 0.680320f, 0.680461f, + 0.680601f, 0.680741f, 0.680882f, 0.681022f, 0.681163f, 0.681303f, 0.681443f, 0.681584f, + 0.681724f, 0.681864f, 0.682005f, 0.682145f, 0.682285f, 0.682425f, 0.682565f, 0.682705f, + 0.682846f, 0.682986f, 0.683126f, 0.683266f, 0.683406f, 0.683546f, 0.683686f, 0.683825f, + 0.683965f, 0.684105f, 0.684245f, 0.684385f, 0.684525f, 0.684664f, 0.684804f, 0.684944f, + 0.685084f, 0.685223f, 0.685363f, 0.685503f, 0.685642f, 0.685782f, 0.685921f, 0.686061f, + 0.686200f, 0.686340f, 0.686479f, 0.686619f, 0.686758f, 0.686897f, 0.687037f, 0.687176f, + 0.687315f, 0.687455f, 0.687594f, 0.687733f, 0.687872f, 0.688011f, 0.688151f, 0.688290f, + 0.688429f, 0.688568f, 0.688707f, 0.688846f, 0.688985f, 0.689124f, 0.689263f, 0.689402f, + 0.689541f, 0.689679f, 0.689818f, 0.689957f, 0.690096f, 0.690235f, 0.690373f, 0.690512f, + 0.690651f, 0.690789f, 0.690928f, 0.691067f, 0.691205f, 0.691344f, 0.691482f, 0.691621f, + 0.691759f, 0.691898f, 0.692036f, 0.692175f, 0.692313f, 0.692451f, 0.692590f, 0.692728f, + 0.692866f, 0.693004f, 0.693143f, 0.693281f, 0.693419f, 0.693557f, 0.693695f, 0.693833f, + 0.693971f, 0.694109f, 0.694248f, 0.694386f, 0.694524f, 0.694661f, 0.694799f, 0.694937f, + 0.695075f, 0.695213f, 0.695351f, 0.695489f, 0.695626f, 0.695764f, 0.695902f, 0.696039f, + 0.696177f, 0.696315f, 0.696452f, 0.696590f, 0.696728f, 0.696865f, 0.697003f, 0.697140f, + 0.697277f, 0.697415f, 0.697552f, 0.697690f, 0.697827f, 0.697964f, 0.698102f, 0.698239f, + 0.698376f, 0.698513f, 0.698651f, 0.698788f, 0.698925f, 0.699062f, 0.699199f, 0.699336f, + 0.699473f, 0.699610f, 0.699747f, 0.699884f, 0.700021f, 0.700158f, 0.700295f, 0.700432f, + 0.700569f, 0.700706f, 0.700842f, 0.700979f, 0.701116f, 0.701253f, 0.701389f, 0.701526f, + 0.701663f, 0.701799f, 0.701936f, 0.702072f, 0.702209f, 0.702345f, 0.702482f, 0.702618f, + 0.702755f, 0.702891f, 0.703028f, 0.703164f, 0.703300f, 0.703436f, 0.703573f, 0.703709f, + 0.703845f, 0.703981f, 0.704118f, 0.704254f, 0.704390f, 0.704526f, 0.704662f, 0.704798f, + 0.704934f, 0.705070f, 0.705206f, 0.705342f, 0.705478f, 0.705614f, 0.705750f, 0.705885f, + 0.706021f, 0.706157f, 0.706293f, 0.706429f, 0.706564f, 0.706700f, 0.706836f, 0.706971f, + 0.707107f, 0.707242f, 0.707378f, 0.707513f, 0.707649f, 0.707784f, 0.707920f, 0.708055f, + 0.708191f, 0.708326f, 0.708461f, 0.708597f, 0.708732f, 0.708867f, 0.709002f, 0.709138f, + 0.709273f, 0.709408f, 0.709543f, 0.709678f, 0.709813f, 0.709948f, 0.710083f, 0.710218f, + 0.710353f, 0.710488f, 0.710623f, 0.710758f, 0.710893f, 0.711028f, 0.711163f, 0.711297f, + 0.711432f, 0.711567f, 0.711702f, 0.711836f, 0.711971f, 0.712106f, 0.712240f, 0.712375f, + 0.712509f, 0.712644f, 0.712778f, 0.712913f, 0.713047f, 0.713182f, 0.713316f, 0.713451f, + 0.713585f, 0.713719f, 0.713853f, 0.713988f, 0.714122f, 0.714256f, 0.714390f, 0.714525f, + 0.714659f, 0.714793f, 0.714927f, 0.715061f, 0.715195f, 0.715329f, 0.715463f, 0.715597f, + 0.715731f, 0.715865f, 0.715999f, 0.716132f, 0.716266f, 0.716400f, 0.716534f, 0.716668f, + 0.716801f, 0.716935f, 0.717069f, 0.717202f, 0.717336f, 0.717469f, 0.717603f, 0.717737f, + 0.717870f, 0.718004f, 0.718137f, 0.718270f, 0.718404f, 0.718537f, 0.718670f, 0.718804f, + 0.718937f, 0.719070f, 0.719204f, 0.719337f, 0.719470f, 0.719603f, 0.719736f, 0.719869f, + 0.720003f, 0.720136f, 0.720269f, 0.720402f, 0.720535f, 0.720668f, 0.720800f, 0.720933f, + 0.721066f, 0.721199f, 0.721332f, 0.721465f, 0.721597f, 0.721730f, 0.721863f, 0.721996f, + 0.722128f, 0.722261f, 0.722393f, 0.722526f, 0.722659f, 0.722791f, 0.722924f, 0.723056f, + 0.723188f, 0.723321f, 0.723453f, 0.723586f, 0.723718f, 0.723850f, 0.723983f, 0.724115f, + 0.724247f, 0.724379f, 0.724511f, 0.724644f, 0.724776f, 0.724908f, 0.725040f, 0.725172f, + 0.725304f, 0.725436f, 0.725568f, 0.725700f, 0.725832f, 0.725964f, 0.726095f, 0.726227f, + 0.726359f, 0.726491f, 0.726623f, 0.726754f, 0.726886f, 0.727018f, 0.727149f, 0.727281f, + 0.727413f, 0.727544f, 0.727676f, 0.727807f, 0.727939f, 0.728070f, 0.728202f, 0.728333f, + 0.728464f, 0.728596f, 0.728727f, 0.728858f, 0.728990f, 0.729121f, 0.729252f, 0.729383f, + 0.729514f, 0.729646f, 0.729777f, 0.729908f, 0.730039f, 0.730170f, 0.730301f, 0.730432f, + 0.730563f, 0.730694f, 0.730825f, 0.730955f, 0.731086f, 0.731217f, 0.731348f, 0.731479f, + 0.731609f, 0.731740f, 0.731871f, 0.732001f, 0.732132f, 0.732263f, 0.732393f, 0.732524f, + 0.732654f, 0.732785f, 0.732915f, 0.733046f, 0.733176f, 0.733306f, 0.733437f, 0.733567f, + 0.733697f, 0.733828f, 0.733958f, 0.734088f, 0.734218f, 0.734349f, 0.734479f, 0.734609f, + 0.734739f, 0.734869f, 0.734999f, 0.735129f, 0.735259f, 0.735389f, 0.735519f, 0.735649f, + 0.735779f, 0.735908f, 0.736038f, 0.736168f, 0.736298f, 0.736428f, 0.736557f, 0.736687f, + 0.736817f, 0.736946f, 0.737076f, 0.737205f, 0.737335f, 0.737464f, 0.737594f, 0.737723f, + 0.737853f, 0.737982f, 0.738112f, 0.738241f, 0.738370f, 0.738500f, 0.738629f, 0.738758f, + 0.738887f, 0.739017f, 0.739146f, 0.739275f, 0.739404f, 0.739533f, 0.739662f, 0.739791f, + 0.739920f, 0.740049f, 0.740178f, 0.740307f, 0.740436f, 0.740565f, 0.740694f, 0.740822f, + 0.740951f, 0.741080f, 0.741209f, 0.741337f, 0.741466f, 0.741595f, 0.741723f, 0.741852f, + 0.741980f, 0.742109f, 0.742237f, 0.742366f, 0.742494f, 0.742623f, 0.742751f, 0.742880f, + 0.743008f, 0.743136f, 0.743265f, 0.743393f, 0.743521f, 0.743649f, 0.743777f, 0.743906f, + 0.744034f, 0.744162f, 0.744290f, 0.744418f, 0.744546f, 0.744674f, 0.744802f, 0.744930f, + 0.745058f, 0.745186f, 0.745314f, 0.745441f, 0.745569f, 0.745697f, 0.745825f, 0.745952f, + 0.746080f, 0.746208f, 0.746335f, 0.746463f, 0.746591f, 0.746718f, 0.746846f, 0.746973f, + 0.747101f, 0.747228f, 0.747355f, 0.747483f, 0.747610f, 0.747738f, 0.747865f, 0.747992f, + 0.748119f, 0.748247f, 0.748374f, 0.748501f, 0.748628f, 0.748755f, 0.748882f, 0.749009f, + 0.749136f, 0.749263f, 0.749390f, 0.749517f, 0.749644f, 0.749771f, 0.749898f, 0.750025f, + 0.750152f, 0.750278f, 0.750405f, 0.750532f, 0.750659f, 0.750785f, 0.750912f, 0.751039f, + 0.751165f, 0.751292f, 0.751418f, 0.751545f, 0.751671f, 0.751798f, 0.751924f, 0.752050f, + 0.752177f, 0.752303f, 0.752429f, 0.752556f, 0.752682f, 0.752808f, 0.752934f, 0.753061f, + 0.753187f, 0.753313f, 0.753439f, 0.753565f, 0.753691f, 0.753817f, 0.753943f, 0.754069f, + 0.754195f, 0.754321f, 0.754447f, 0.754573f, 0.754698f, 0.754824f, 0.754950f, 0.755076f, + 0.755201f, 0.755327f, 0.755453f, 0.755578f, 0.755704f, 0.755829f, 0.755955f, 0.756081f, + 0.756206f, 0.756331f, 0.756457f, 0.756582f, 0.756708f, 0.756833f, 0.756958f, 0.757084f, + 0.757209f, 0.757334f, 0.757459f, 0.757584f, 0.757710f, 0.757835f, 0.757960f, 0.758085f, + 0.758210f, 0.758335f, 0.758460f, 0.758585f, 0.758710f, 0.758835f, 0.758960f, 0.759084f, + 0.759209f, 0.759334f, 0.759459f, 0.759583f, 0.759708f, 0.759833f, 0.759957f, 0.760082f, + 0.760207f, 0.760331f, 0.760456f, 0.760580f, 0.760705f, 0.760829f, 0.760954f, 0.761078f, + 0.761202f, 0.761327f, 0.761451f, 0.761575f, 0.761700f, 0.761824f, 0.761948f, 0.762072f, + 0.762196f, 0.762320f, 0.762444f, 0.762569f, 0.762693f, 0.762817f, 0.762941f, 0.763065f, + 0.763188f, 0.763312f, 0.763436f, 0.763560f, 0.763684f, 0.763808f, 0.763931f, 0.764055f, + 0.764179f, 0.764302f, 0.764426f, 0.764550f, 0.764673f, 0.764797f, 0.764920f, 0.765044f, + 0.765167f, 0.765291f, 0.765414f, 0.765538f, 0.765661f, 0.765784f, 0.765907f, 0.766031f, + 0.766154f, 0.766277f, 0.766400f, 0.766524f, 0.766647f, 0.766770f, 0.766893f, 0.767016f, + 0.767139f, 0.767262f, 0.767385f, 0.767508f, 0.767631f, 0.767754f, 0.767876f, 0.767999f, + 0.768122f, 0.768245f, 0.768368f, 0.768490f, 0.768613f, 0.768736f, 0.768858f, 0.768981f, + 0.769103f, 0.769226f, 0.769348f, 0.769471f, 0.769593f, 0.769716f, 0.769838f, 0.769961f, + 0.770083f, 0.770205f, 0.770327f, 0.770450f, 0.770572f, 0.770694f, 0.770816f, 0.770938f, + 0.771061f, 0.771183f, 0.771305f, 0.771427f, 0.771549f, 0.771671f, 0.771793f, 0.771915f, + 0.772036f, 0.772158f, 0.772280f, 0.772402f, 0.772524f, 0.772645f, 0.772767f, 0.772889f, + 0.773010f, 0.773132f, 0.773254f, 0.773375f, 0.773497f, 0.773618f, 0.773740f, 0.773861f, + 0.773983f, 0.774104f, 0.774225f, 0.774347f, 0.774468f, 0.774589f, 0.774711f, 0.774832f, + 0.774953f, 0.775074f, 0.775195f, 0.775317f, 0.775438f, 0.775559f, 0.775680f, 0.775801f, + 0.775922f, 0.776043f, 0.776164f, 0.776284f, 0.776405f, 0.776526f, 0.776647f, 0.776768f, + 0.776888f, 0.777009f, 0.777130f, 0.777251f, 0.777371f, 0.777492f, 0.777612f, 0.777733f, + 0.777853f, 0.777974f, 0.778094f, 0.778215f, 0.778335f, 0.778456f, 0.778576f, 0.778696f, + 0.778817f, 0.778937f, 0.779057f, 0.779177f, 0.779297f, 0.779418f, 0.779538f, 0.779658f, + 0.779778f, 0.779898f, 0.780018f, 0.780138f, 0.780258f, 0.780378f, 0.780498f, 0.780617f, + 0.780737f, 0.780857f, 0.780977f, 0.781097f, 0.781216f, 0.781336f, 0.781456f, 0.781575f, + 0.781695f, 0.781814f, 0.781934f, 0.782053f, 0.782173f, 0.782292f, 0.782412f, 0.782531f, + 0.782651f, 0.782770f, 0.782889f, 0.783009f, 0.783128f, 0.783247f, 0.783366f, 0.783485f, + 0.783605f, 0.783724f, 0.783843f, 0.783962f, 0.784081f, 0.784200f, 0.784319f, 0.784438f, + 0.784557f, 0.784675f, 0.784794f, 0.784913f, 0.785032f, 0.785151f, 0.785269f, 0.785388f, + 0.785507f, 0.785625f, 0.785744f, 0.785863f, 0.785981f, 0.786100f, 0.786218f, 0.786337f, + 0.786455f, 0.786574f, 0.786692f, 0.786810f, 0.786929f, 0.787047f, 0.787165f, 0.787284f, + 0.787402f, 0.787520f, 0.787638f, 0.787756f, 0.787874f, 0.787992f, 0.788110f, 0.788228f, + 0.788346f, 0.788464f, 0.788582f, 0.788700f, 0.788818f, 0.788936f, 0.789054f, 0.789172f, + 0.789289f, 0.789407f, 0.789525f, 0.789642f, 0.789760f, 0.789878f, 0.789995f, 0.790113f, + 0.790230f, 0.790348f, 0.790465f, 0.790583f, 0.790700f, 0.790817f, 0.790935f, 0.791052f, + 0.791169f, 0.791287f, 0.791404f, 0.791521f, 0.791638f, 0.791755f, 0.791872f, 0.791990f, + 0.792107f, 0.792224f, 0.792341f, 0.792458f, 0.792575f, 0.792691f, 0.792808f, 0.792925f, + 0.793042f, 0.793159f, 0.793276f, 0.793392f, 0.793509f, 0.793626f, 0.793742f, 0.793859f, + 0.793975f, 0.794092f, 0.794209f, 0.794325f, 0.794442f, 0.794558f, 0.794674f, 0.794791f, + 0.794907f, 0.795023f, 0.795140f, 0.795256f, 0.795372f, 0.795488f, 0.795605f, 0.795721f, + 0.795837f, 0.795953f, 0.796069f, 0.796185f, 0.796301f, 0.796417f, 0.796533f, 0.796649f, + 0.796765f, 0.796881f, 0.796996f, 0.797112f, 0.797228f, 0.797344f, 0.797459f, 0.797575f, + 0.797691f, 0.797806f, 0.797922f, 0.798038f, 0.798153f, 0.798269f, 0.798384f, 0.798500f, + 0.798615f, 0.798730f, 0.798846f, 0.798961f, 0.799076f, 0.799192f, 0.799307f, 0.799422f, + 0.799537f, 0.799652f, 0.799768f, 0.799883f, 0.799998f, 0.800113f, 0.800228f, 0.800343f, + 0.800458f, 0.800573f, 0.800687f, 0.800802f, 0.800917f, 0.801032f, 0.801147f, 0.801261f, + 0.801376f, 0.801491f, 0.801606f, 0.801720f, 0.801835f, 0.801949f, 0.802064f, 0.802178f, + 0.802293f, 0.802407f, 0.802522f, 0.802636f, 0.802750f, 0.802865f, 0.802979f, 0.803093f, + 0.803208f, 0.803322f, 0.803436f, 0.803550f, 0.803664f, 0.803778f, 0.803892f, 0.804006f, + 0.804120f, 0.804234f, 0.804348f, 0.804462f, 0.804576f, 0.804690f, 0.804804f, 0.804918f, + 0.805031f, 0.805145f, 0.805259f, 0.805372f, 0.805486f, 0.805600f, 0.805713f, 0.805827f, + 0.805940f, 0.806054f, 0.806167f, 0.806281f, 0.806394f, 0.806508f, 0.806621f, 0.806734f, + 0.806848f, 0.806961f, 0.807074f, 0.807187f, 0.807300f, 0.807414f, 0.807527f, 0.807640f, + 0.807753f, 0.807866f, 0.807979f, 0.808092f, 0.808205f, 0.808318f, 0.808430f, 0.808543f, + 0.808656f, 0.808769f, 0.808882f, 0.808994f, 0.809107f, 0.809220f, 0.809332f, 0.809445f, + 0.809558f, 0.809670f, 0.809783f, 0.809895f, 0.810008f, 0.810120f, 0.810232f, 0.810345f, + 0.810457f, 0.810570f, 0.810682f, 0.810794f, 0.810906f, 0.811018f, 0.811131f, 0.811243f, + 0.811355f, 0.811467f, 0.811579f, 0.811691f, 0.811803f, 0.811915f, 0.812027f, 0.812139f, + 0.812251f, 0.812362f, 0.812474f, 0.812586f, 0.812698f, 0.812809f, 0.812921f, 0.813033f, + 0.813144f, 0.813256f, 0.813368f, 0.813479f, 0.813591f, 0.813702f, 0.813814f, 0.813925f, + 0.814036f, 0.814148f, 0.814259f, 0.814370f, 0.814482f, 0.814593f, 0.814704f, 0.814815f, + 0.814926f, 0.815037f, 0.815149f, 0.815260f, 0.815371f, 0.815482f, 0.815593f, 0.815704f, + 0.815814f, 0.815925f, 0.816036f, 0.816147f, 0.816258f, 0.816368f, 0.816479f, 0.816590f, + 0.816701f, 0.816811f, 0.816922f, 0.817032f, 0.817143f, 0.817253f, 0.817364f, 0.817474f, + 0.817585f, 0.817695f, 0.817806f, 0.817916f, 0.818026f, 0.818137f, 0.818247f, 0.818357f, + 0.818467f, 0.818577f, 0.818687f, 0.818798f, 0.818908f, 0.819018f, 0.819128f, 0.819238f, + 0.819348f, 0.819457f, 0.819567f, 0.819677f, 0.819787f, 0.819897f, 0.820007f, 0.820116f, + 0.820226f, 0.820336f, 0.820445f, 0.820555f, 0.820664f, 0.820774f, 0.820884f, 0.820993f, + 0.821102f, 0.821212f, 0.821321f, 0.821431f, 0.821540f, 0.821649f, 0.821759f, 0.821868f, + 0.821977f, 0.822086f, 0.822195f, 0.822305f, 0.822414f, 0.822523f, 0.822632f, 0.822741f, + 0.822850f, 0.822959f, 0.823068f, 0.823177f, 0.823285f, 0.823394f, 0.823503f, 0.823612f, + 0.823721f, 0.823829f, 0.823938f, 0.824047f, 0.824155f, 0.824264f, 0.824372f, 0.824481f, + 0.824589f, 0.824698f, 0.824806f, 0.824915f, 0.825023f, 0.825131f, 0.825240f, 0.825348f, + 0.825456f, 0.825564f, 0.825673f, 0.825781f, 0.825889f, 0.825997f, 0.826105f, 0.826213f, + 0.826321f, 0.826429f, 0.826537f, 0.826645f, 0.826753f, 0.826861f, 0.826968f, 0.827076f, + 0.827184f, 0.827292f, 0.827399f, 0.827507f, 0.827615f, 0.827722f, 0.827830f, 0.827938f, + 0.828045f, 0.828153f, 0.828260f, 0.828367f, 0.828475f, 0.828582f, 0.828690f, 0.828797f, + 0.828904f, 0.829011f, 0.829119f, 0.829226f, 0.829333f, 0.829440f, 0.829547f, 0.829654f, + 0.829761f, 0.829868f, 0.829975f, 0.830082f, 0.830189f, 0.830296f, 0.830403f, 0.830510f, + 0.830616f, 0.830723f, 0.830830f, 0.830937f, 0.831043f, 0.831150f, 0.831257f, 0.831363f, + 0.831470f, 0.831576f, 0.831683f, 0.831789f, 0.831895f, 0.832002f, 0.832108f, 0.832215f, + 0.832321f, 0.832427f, 0.832533f, 0.832640f, 0.832746f, 0.832852f, 0.832958f, 0.833064f, + 0.833170f, 0.833276f, 0.833382f, 0.833488f, 0.833594f, 0.833700f, 0.833806f, 0.833912f, + 0.834018f, 0.834123f, 0.834229f, 0.834335f, 0.834440f, 0.834546f, 0.834652f, 0.834757f, + 0.834863f, 0.834968f, 0.835074f, 0.835179f, 0.835285f, 0.835390f, 0.835496f, 0.835601f, + 0.835706f, 0.835812f, 0.835917f, 0.836022f, 0.836127f, 0.836232f, 0.836338f, 0.836443f, + 0.836548f, 0.836653f, 0.836758f, 0.836863f, 0.836968f, 0.837073f, 0.837178f, 0.837282f, + 0.837387f, 0.837492f, 0.837597f, 0.837701f, 0.837806f, 0.837911f, 0.838015f, 0.838120f, + 0.838225f, 0.838329f, 0.838434f, 0.838538f, 0.838643f, 0.838747f, 0.838852f, 0.838956f, + 0.839060f, 0.839165f, 0.839269f, 0.839373f, 0.839477f, 0.839581f, 0.839686f, 0.839790f, + 0.839894f, 0.839998f, 0.840102f, 0.840206f, 0.840310f, 0.840414f, 0.840518f, 0.840622f, + 0.840725f, 0.840829f, 0.840933f, 0.841037f, 0.841140f, 0.841244f, 0.841348f, 0.841451f, + 0.841555f, 0.841659f, 0.841762f, 0.841866f, 0.841969f, 0.842072f, 0.842176f, 0.842279f, + 0.842383f, 0.842486f, 0.842589f, 0.842692f, 0.842796f, 0.842899f, 0.843002f, 0.843105f, + 0.843208f, 0.843311f, 0.843414f, 0.843517f, 0.843620f, 0.843723f, 0.843826f, 0.843929f, + 0.844032f, 0.844135f, 0.844238f, 0.844340f, 0.844443f, 0.844546f, 0.844648f, 0.844751f, + 0.844854f, 0.844956f, 0.845059f, 0.845161f, 0.845264f, 0.845366f, 0.845469f, 0.845571f, + 0.845673f, 0.845776f, 0.845878f, 0.845980f, 0.846082f, 0.846185f, 0.846287f, 0.846389f, + 0.846491f, 0.846593f, 0.846695f, 0.846797f, 0.846899f, 0.847001f, 0.847103f, 0.847205f, + 0.847307f, 0.847408f, 0.847510f, 0.847612f, 0.847714f, 0.847815f, 0.847917f, 0.848019f, + 0.848120f, 0.848222f, 0.848323f, 0.848425f, 0.848526f, 0.848628f, 0.848729f, 0.848831f, + 0.848932f, 0.849033f, 0.849135f, 0.849236f, 0.849337f, 0.849438f, 0.849540f, 0.849641f, + 0.849742f, 0.849843f, 0.849944f, 0.850045f, 0.850146f, 0.850247f, 0.850348f, 0.850449f, + 0.850549f, 0.850650f, 0.850751f, 0.850852f, 0.850953f, 0.851053f, 0.851154f, 0.851255f, + 0.851355f, 0.851456f, 0.851556f, 0.851657f, 0.851757f, 0.851858f, 0.851958f, 0.852059f, + 0.852159f, 0.852259f, 0.852360f, 0.852460f, 0.852560f, 0.852660f, 0.852760f, 0.852861f, + 0.852961f, 0.853061f, 0.853161f, 0.853261f, 0.853361f, 0.853461f, 0.853561f, 0.853660f, + 0.853760f, 0.853860f, 0.853960f, 0.854060f, 0.854159f, 0.854259f, 0.854359f, 0.854458f, + 0.854558f, 0.854658f, 0.854757f, 0.854857f, 0.854956f, 0.855056f, 0.855155f, 0.855254f, + 0.855354f, 0.855453f, 0.855552f, 0.855651f, 0.855751f, 0.855850f, 0.855949f, 0.856048f, + 0.856147f, 0.856246f, 0.856345f, 0.856444f, 0.856543f, 0.856642f, 0.856741f, 0.856840f, + 0.856939f, 0.857038f, 0.857137f, 0.857235f, 0.857334f, 0.857433f, 0.857531f, 0.857630f, + 0.857729f, 0.857827f, 0.857926f, 0.858024f, 0.858123f, 0.858221f, 0.858320f, 0.858418f, + 0.858516f, 0.858615f, 0.858713f, 0.858811f, 0.858909f, 0.859007f, 0.859106f, 0.859204f, + 0.859302f, 0.859400f, 0.859498f, 0.859596f, 0.859694f, 0.859792f, 0.859890f, 0.859988f, + 0.860085f, 0.860183f, 0.860281f, 0.860379f, 0.860476f, 0.860574f, 0.860672f, 0.860769f, + 0.860867f, 0.860964f, 0.861062f, 0.861160f, 0.861257f, 0.861354f, 0.861452f, 0.861549f, + 0.861646f, 0.861744f, 0.861841f, 0.861938f, 0.862035f, 0.862133f, 0.862230f, 0.862327f, + 0.862424f, 0.862521f, 0.862618f, 0.862715f, 0.862812f, 0.862909f, 0.863006f, 0.863103f, + 0.863199f, 0.863296f, 0.863393f, 0.863490f, 0.863586f, 0.863683f, 0.863780f, 0.863876f, + 0.863973f, 0.864069f, 0.864166f, 0.864262f, 0.864359f, 0.864455f, 0.864552f, 0.864648f, + 0.864744f, 0.864841f, 0.864937f, 0.865033f, 0.865129f, 0.865225f, 0.865321f, 0.865418f, + 0.865514f, 0.865610f, 0.865706f, 0.865802f, 0.865898f, 0.865993f, 0.866089f, 0.866185f, + 0.866281f, 0.866377f, 0.866472f, 0.866568f, 0.866664f, 0.866759f, 0.866855f, 0.866951f, + 0.867046f, 0.867142f, 0.867237f, 0.867333f, 0.867428f, 0.867523f, 0.867619f, 0.867714f, + 0.867809f, 0.867905f, 0.868000f, 0.868095f, 0.868190f, 0.868285f, 0.868381f, 0.868476f, + 0.868571f, 0.868666f, 0.868761f, 0.868856f, 0.868951f, 0.869045f, 0.869140f, 0.869235f, + 0.869330f, 0.869425f, 0.869519f, 0.869614f, 0.869709f, 0.869803f, 0.869898f, 0.869992f, + 0.870087f, 0.870182f, 0.870276f, 0.870370f, 0.870465f, 0.870559f, 0.870654f, 0.870748f, + 0.870842f, 0.870936f, 0.871031f, 0.871125f, 0.871219f, 0.871313f, 0.871407f, 0.871501f, + 0.871595f, 0.871689f, 0.871783f, 0.871877f, 0.871971f, 0.872065f, 0.872159f, 0.872252f, + 0.872346f, 0.872440f, 0.872534f, 0.872627f, 0.872721f, 0.872814f, 0.872908f, 0.873001f, + 0.873095f, 0.873188f, 0.873282f, 0.873375f, 0.873469f, 0.873562f, 0.873655f, 0.873749f, + 0.873842f, 0.873935f, 0.874028f, 0.874121f, 0.874215f, 0.874308f, 0.874401f, 0.874494f, + 0.874587f, 0.874680f, 0.874773f, 0.874865f, 0.874958f, 0.875051f, 0.875144f, 0.875237f, + 0.875329f, 0.875422f, 0.875515f, 0.875607f, 0.875700f, 0.875793f, 0.875885f, 0.875978f, + 0.876070f, 0.876163f, 0.876255f, 0.876347f, 0.876440f, 0.876532f, 0.876624f, 0.876716f, + 0.876809f, 0.876901f, 0.876993f, 0.877085f, 0.877177f, 0.877269f, 0.877361f, 0.877453f, + 0.877545f, 0.877637f, 0.877729f, 0.877821f, 0.877913f, 0.878005f, 0.878096f, 0.878188f, + 0.878280f, 0.878371f, 0.878463f, 0.878555f, 0.878646f, 0.878738f, 0.878829f, 0.878921f, + 0.879012f, 0.879104f, 0.879195f, 0.879286f, 0.879378f, 0.879469f, 0.879560f, 0.879651f, + 0.879743f, 0.879834f, 0.879925f, 0.880016f, 0.880107f, 0.880198f, 0.880289f, 0.880380f, + 0.880471f, 0.880562f, 0.880653f, 0.880743f, 0.880834f, 0.880925f, 0.881016f, 0.881106f, + 0.881197f, 0.881288f, 0.881378f, 0.881469f, 0.881559f, 0.881650f, 0.881740f, 0.881831f, + 0.881921f, 0.882012f, 0.882102f, 0.882192f, 0.882283f, 0.882373f, 0.882463f, 0.882553f, + 0.882643f, 0.882733f, 0.882824f, 0.882914f, 0.883004f, 0.883094f, 0.883184f, 0.883273f, + 0.883363f, 0.883453f, 0.883543f, 0.883633f, 0.883723f, 0.883812f, 0.883902f, 0.883992f, + 0.884081f, 0.884171f, 0.884260f, 0.884350f, 0.884439f, 0.884529f, 0.884618f, 0.884708f, + 0.884797f, 0.884886f, 0.884976f, 0.885065f, 0.885154f, 0.885243f, 0.885333f, 0.885422f, + 0.885511f, 0.885600f, 0.885689f, 0.885778f, 0.885867f, 0.885956f, 0.886045f, 0.886134f, + 0.886223f, 0.886311f, 0.886400f, 0.886489f, 0.886578f, 0.886666f, 0.886755f, 0.886844f, + 0.886932f, 0.887021f, 0.887109f, 0.887198f, 0.887286f, 0.887375f, 0.887463f, 0.887551f, + 0.887640f, 0.887728f, 0.887816f, 0.887904f, 0.887993f, 0.888081f, 0.888169f, 0.888257f, + 0.888345f, 0.888433f, 0.888521f, 0.888609f, 0.888697f, 0.888785f, 0.888873f, 0.888961f, + 0.889048f, 0.889136f, 0.889224f, 0.889312f, 0.889399f, 0.889487f, 0.889574f, 0.889662f, + 0.889750f, 0.889837f, 0.889925f, 0.890012f, 0.890099f, 0.890187f, 0.890274f, 0.890361f, + 0.890449f, 0.890536f, 0.890623f, 0.890710f, 0.890797f, 0.890885f, 0.890972f, 0.891059f, + 0.891146f, 0.891233f, 0.891320f, 0.891407f, 0.891493f, 0.891580f, 0.891667f, 0.891754f, + 0.891841f, 0.891927f, 0.892014f, 0.892101f, 0.892187f, 0.892274f, 0.892361f, 0.892447f, + 0.892534f, 0.892620f, 0.892706f, 0.892793f, 0.892879f, 0.892965f, 0.893052f, 0.893138f, + 0.893224f, 0.893310f, 0.893397f, 0.893483f, 0.893569f, 0.893655f, 0.893741f, 0.893827f, + 0.893913f, 0.893999f, 0.894085f, 0.894171f, 0.894256f, 0.894342f, 0.894428f, 0.894514f, + 0.894599f, 0.894685f, 0.894771f, 0.894856f, 0.894942f, 0.895028f, 0.895113f, 0.895198f, + 0.895284f, 0.895369f, 0.895455f, 0.895540f, 0.895625f, 0.895711f, 0.895796f, 0.895881f, + 0.895966f, 0.896051f, 0.896137f, 0.896222f, 0.896307f, 0.896392f, 0.896477f, 0.896562f, + 0.896646f, 0.896731f, 0.896816f, 0.896901f, 0.896986f, 0.897071f, 0.897155f, 0.897240f, + 0.897325f, 0.897409f, 0.897494f, 0.897578f, 0.897663f, 0.897747f, 0.897832f, 0.897916f, + 0.898001f, 0.898085f, 0.898169f, 0.898254f, 0.898338f, 0.898422f, 0.898506f, 0.898590f, + 0.898674f, 0.898759f, 0.898843f, 0.898927f, 0.899011f, 0.899095f, 0.899179f, 0.899262f, + 0.899346f, 0.899430f, 0.899514f, 0.899598f, 0.899681f, 0.899765f, 0.899849f, 0.899932f, + 0.900016f, 0.900099f, 0.900183f, 0.900266f, 0.900350f, 0.900433f, 0.900517f, 0.900600f, + 0.900683f, 0.900767f, 0.900850f, 0.900933f, 0.901016f, 0.901100f, 0.901183f, 0.901266f, + 0.901349f, 0.901432f, 0.901515f, 0.901598f, 0.901681f, 0.901764f, 0.901847f, 0.901929f, + 0.902012f, 0.902095f, 0.902178f, 0.902260f, 0.902343f, 0.902426f, 0.902508f, 0.902591f, + 0.902673f, 0.902756f, 0.902838f, 0.902921f, 0.903003f, 0.903085f, 0.903168f, 0.903250f, + 0.903332f, 0.903415f, 0.903497f, 0.903579f, 0.903661f, 0.903743f, 0.903825f, 0.903907f, + 0.903989f, 0.904071f, 0.904153f, 0.904235f, 0.904317f, 0.904399f, 0.904481f, 0.904562f, + 0.904644f, 0.904726f, 0.904807f, 0.904889f, 0.904971f, 0.905052f, 0.905134f, 0.905215f, + 0.905297f, 0.905378f, 0.905460f, 0.905541f, 0.905622f, 0.905704f, 0.905785f, 0.905866f, + 0.905947f, 0.906028f, 0.906110f, 0.906191f, 0.906272f, 0.906353f, 0.906434f, 0.906515f, + 0.906596f, 0.906677f, 0.906757f, 0.906838f, 0.906919f, 0.907000f, 0.907081f, 0.907161f, + 0.907242f, 0.907323f, 0.907403f, 0.907484f, 0.907564f, 0.907645f, 0.907725f, 0.907806f, + 0.907886f, 0.907966f, 0.908047f, 0.908127f, 0.908207f, 0.908288f, 0.908368f, 0.908448f, + 0.908528f, 0.908608f, 0.908688f, 0.908768f, 0.908848f, 0.908928f, 0.909008f, 0.909088f, + 0.909168f, 0.909248f, 0.909328f, 0.909407f, 0.909487f, 0.909567f, 0.909646f, 0.909726f, + 0.909806f, 0.909885f, 0.909965f, 0.910044f, 0.910124f, 0.910203f, 0.910283f, 0.910362f, + 0.910441f, 0.910521f, 0.910600f, 0.910679f, 0.910758f, 0.910837f, 0.910917f, 0.910996f, + 0.911075f, 0.911154f, 0.911233f, 0.911312f, 0.911391f, 0.911470f, 0.911548f, 0.911627f, + 0.911706f, 0.911785f, 0.911864f, 0.911942f, 0.912021f, 0.912099f, 0.912178f, 0.912257f, + 0.912335f, 0.912414f, 0.912492f, 0.912571f, 0.912649f, 0.912727f, 0.912806f, 0.912884f, + 0.912962f, 0.913040f, 0.913119f, 0.913197f, 0.913275f, 0.913353f, 0.913431f, 0.913509f, + 0.913587f, 0.913665f, 0.913743f, 0.913821f, 0.913899f, 0.913976f, 0.914054f, 0.914132f, + 0.914210f, 0.914287f, 0.914365f, 0.914443f, 0.914520f, 0.914598f, 0.914675f, 0.914753f, + 0.914830f, 0.914908f, 0.914985f, 0.915062f, 0.915140f, 0.915217f, 0.915294f, 0.915372f, + 0.915449f, 0.915526f, 0.915603f, 0.915680f, 0.915757f, 0.915834f, 0.915911f, 0.915988f, + 0.916065f, 0.916142f, 0.916219f, 0.916296f, 0.916372f, 0.916449f, 0.916526f, 0.916602f, + 0.916679f, 0.916756f, 0.916832f, 0.916909f, 0.916985f, 0.917062f, 0.917138f, 0.917215f, + 0.917291f, 0.917367f, 0.917444f, 0.917520f, 0.917596f, 0.917672f, 0.917749f, 0.917825f, + 0.917901f, 0.917977f, 0.918053f, 0.918129f, 0.918205f, 0.918281f, 0.918357f, 0.918433f, + 0.918508f, 0.918584f, 0.918660f, 0.918736f, 0.918811f, 0.918887f, 0.918963f, 0.919038f, + 0.919114f, 0.919189f, 0.919265f, 0.919340f, 0.919416f, 0.919491f, 0.919567f, 0.919642f, + 0.919717f, 0.919792f, 0.919868f, 0.919943f, 0.920018f, 0.920093f, 0.920168f, 0.920243f, + 0.920318f, 0.920393f, 0.920468f, 0.920543f, 0.920618f, 0.920693f, 0.920768f, 0.920842f, + 0.920917f, 0.920992f, 0.921067f, 0.921141f, 0.921216f, 0.921291f, 0.921365f, 0.921440f, + 0.921514f, 0.921588f, 0.921663f, 0.921737f, 0.921812f, 0.921886f, 0.921960f, 0.922034f, + 0.922109f, 0.922183f, 0.922257f, 0.922331f, 0.922405f, 0.922479f, 0.922553f, 0.922627f, + 0.922701f, 0.922775f, 0.922849f, 0.922923f, 0.922997f, 0.923070f, 0.923144f, 0.923218f, + 0.923291f, 0.923365f, 0.923439f, 0.923512f, 0.923586f, 0.923659f, 0.923733f, 0.923806f, + 0.923880f, 0.923953f, 0.924026f, 0.924100f, 0.924173f, 0.924246f, 0.924319f, 0.924392f, + 0.924465f, 0.924539f, 0.924612f, 0.924685f, 0.924758f, 0.924831f, 0.924904f, 0.924976f, + 0.925049f, 0.925122f, 0.925195f, 0.925268f, 0.925340f, 0.925413f, 0.925486f, 0.925558f, + 0.925631f, 0.925703f, 0.925776f, 0.925848f, 0.925921f, 0.925993f, 0.926066f, 0.926138f, + 0.926210f, 0.926283f, 0.926355f, 0.926427f, 0.926499f, 0.926571f, 0.926643f, 0.926715f, + 0.926787f, 0.926859f, 0.926931f, 0.927003f, 0.927075f, 0.927147f, 0.927219f, 0.927291f, + 0.927363f, 0.927434f, 0.927506f, 0.927578f, 0.927649f, 0.927721f, 0.927792f, 0.927864f, + 0.927935f, 0.928007f, 0.928078f, 0.928150f, 0.928221f, 0.928292f, 0.928364f, 0.928435f, + 0.928506f, 0.928577f, 0.928648f, 0.928720f, 0.928791f, 0.928862f, 0.928933f, 0.929004f, + 0.929075f, 0.929146f, 0.929216f, 0.929287f, 0.929358f, 0.929429f, 0.929500f, 0.929570f, + 0.929641f, 0.929712f, 0.929782f, 0.929853f, 0.929923f, 0.929994f, 0.930064f, 0.930135f, + 0.930205f, 0.930275f, 0.930346f, 0.930416f, 0.930486f, 0.930556f, 0.930627f, 0.930697f, + 0.930767f, 0.930837f, 0.930907f, 0.930977f, 0.931047f, 0.931117f, 0.931187f, 0.931257f, + 0.931327f, 0.931397f, 0.931466f, 0.931536f, 0.931606f, 0.931675f, 0.931745f, 0.931815f, + 0.931884f, 0.931954f, 0.932023f, 0.932093f, 0.932162f, 0.932232f, 0.932301f, 0.932370f, + 0.932440f, 0.932509f, 0.932578f, 0.932647f, 0.932716f, 0.932786f, 0.932855f, 0.932924f, + 0.932993f, 0.933062f, 0.933131f, 0.933200f, 0.933269f, 0.933337f, 0.933406f, 0.933475f, + 0.933544f, 0.933612f, 0.933681f, 0.933750f, 0.933818f, 0.933887f, 0.933956f, 0.934024f, + 0.934093f, 0.934161f, 0.934229f, 0.934298f, 0.934366f, 0.934434f, 0.934503f, 0.934571f, + 0.934639f, 0.934707f, 0.934775f, 0.934844f, 0.934912f, 0.934980f, 0.935048f, 0.935116f, + 0.935184f, 0.935251f, 0.935319f, 0.935387f, 0.935455f, 0.935523f, 0.935590f, 0.935658f, + 0.935726f, 0.935793f, 0.935861f, 0.935928f, 0.935996f, 0.936063f, 0.936131f, 0.936198f, + 0.936266f, 0.936333f, 0.936400f, 0.936468f, 0.936535f, 0.936602f, 0.936669f, 0.936736f, + 0.936803f, 0.936871f, 0.936938f, 0.937005f, 0.937072f, 0.937138f, 0.937205f, 0.937272f, + 0.937339f, 0.937406f, 0.937473f, 0.937539f, 0.937606f, 0.937673f, 0.937739f, 0.937806f, + 0.937872f, 0.937939f, 0.938005f, 0.938072f, 0.938138f, 0.938205f, 0.938271f, 0.938337f, + 0.938404f, 0.938470f, 0.938536f, 0.938602f, 0.938668f, 0.938734f, 0.938800f, 0.938866f, + 0.938932f, 0.938998f, 0.939064f, 0.939130f, 0.939196f, 0.939262f, 0.939328f, 0.939394f, + 0.939459f, 0.939525f, 0.939591f, 0.939656f, 0.939722f, 0.939787f, 0.939853f, 0.939918f, + 0.939984f, 0.940049f, 0.940115f, 0.940180f, 0.940245f, 0.940310f, 0.940376f, 0.940441f, + 0.940506f, 0.940571f, 0.940636f, 0.940701f, 0.940766f, 0.940831f, 0.940896f, 0.940961f, + 0.941026f, 0.941091f, 0.941156f, 0.941221f, 0.941285f, 0.941350f, 0.941415f, 0.941479f, + 0.941544f, 0.941609f, 0.941673f, 0.941738f, 0.941802f, 0.941867f, 0.941931f, 0.941995f, + 0.942060f, 0.942124f, 0.942188f, 0.942253f, 0.942317f, 0.942381f, 0.942445f, 0.942509f, + 0.942573f, 0.942637f, 0.942701f, 0.942765f, 0.942829f, 0.942893f, 0.942957f, 0.943021f, + 0.943084f, 0.943148f, 0.943212f, 0.943276f, 0.943339f, 0.943403f, 0.943466f, 0.943530f, + 0.943593f, 0.943657f, 0.943720f, 0.943784f, 0.943847f, 0.943910f, 0.943974f, 0.944037f, + 0.944100f, 0.944163f, 0.944227f, 0.944290f, 0.944353f, 0.944416f, 0.944479f, 0.944542f, + 0.944605f, 0.944668f, 0.944731f, 0.944793f, 0.944856f, 0.944919f, 0.944982f, 0.945045f, + 0.945107f, 0.945170f, 0.945232f, 0.945295f, 0.945358f, 0.945420f, 0.945482f, 0.945545f, + 0.945607f, 0.945670f, 0.945732f, 0.945794f, 0.945857f, 0.945919f, 0.945981f, 0.946043f, + 0.946105f, 0.946167f, 0.946229f, 0.946291f, 0.946353f, 0.946415f, 0.946477f, 0.946539f, + 0.946601f, 0.946663f, 0.946724f, 0.946786f, 0.946848f, 0.946910f, 0.946971f, 0.947033f, + 0.947094f, 0.947156f, 0.947217f, 0.947279f, 0.947340f, 0.947402f, 0.947463f, 0.947524f, + 0.947586f, 0.947647f, 0.947708f, 0.947769f, 0.947830f, 0.947891f, 0.947953f, 0.948014f, + 0.948075f, 0.948136f, 0.948196f, 0.948257f, 0.948318f, 0.948379f, 0.948440f, 0.948501f, + 0.948561f, 0.948622f, 0.948683f, 0.948743f, 0.948804f, 0.948864f, 0.948925f, 0.948985f, + 0.949046f, 0.949106f, 0.949167f, 0.949227f, 0.949287f, 0.949348f, 0.949408f, 0.949468f, + 0.949528f, 0.949588f, 0.949648f, 0.949708f, 0.949768f, 0.949829f, 0.949888f, 0.949948f, + 0.950008f, 0.950068f, 0.950128f, 0.950188f, 0.950247f, 0.950307f, 0.950367f, 0.950426f, + 0.950486f, 0.950546f, 0.950605f, 0.950665f, 0.950724f, 0.950784f, 0.950843f, 0.950902f, + 0.950962f, 0.951021f, 0.951080f, 0.951139f, 0.951199f, 0.951258f, 0.951317f, 0.951376f, + 0.951435f, 0.951494f, 0.951553f, 0.951612f, 0.951671f, 0.951730f, 0.951789f, 0.951847f, + 0.951906f, 0.951965f, 0.952024f, 0.952082f, 0.952141f, 0.952199f, 0.952258f, 0.952317f, + 0.952375f, 0.952433f, 0.952492f, 0.952550f, 0.952609f, 0.952667f, 0.952725f, 0.952783f, + 0.952842f, 0.952900f, 0.952958f, 0.953016f, 0.953074f, 0.953132f, 0.953190f, 0.953248f, + 0.953306f, 0.953364f, 0.953422f, 0.953480f, 0.953537f, 0.953595f, 0.953653f, 0.953711f, + 0.953768f, 0.953826f, 0.953883f, 0.953941f, 0.953998f, 0.954056f, 0.954113f, 0.954171f, + 0.954228f, 0.954285f, 0.954343f, 0.954400f, 0.954457f, 0.954514f, 0.954572f, 0.954629f, + 0.954686f, 0.954743f, 0.954800f, 0.954857f, 0.954914f, 0.954971f, 0.955028f, 0.955084f, + 0.955141f, 0.955198f, 0.955255f, 0.955311f, 0.955368f, 0.955425f, 0.955481f, 0.955538f, + 0.955594f, 0.955651f, 0.955707f, 0.955764f, 0.955820f, 0.955876f, 0.955933f, 0.955989f, + 0.956045f, 0.956101f, 0.956158f, 0.956214f, 0.956270f, 0.956326f, 0.956382f, 0.956438f, + 0.956494f, 0.956550f, 0.956606f, 0.956662f, 0.956717f, 0.956773f, 0.956829f, 0.956885f, + 0.956940f, 0.956996f, 0.957052f, 0.957107f, 0.957163f, 0.957218f, 0.957274f, 0.957329f, + 0.957385f, 0.957440f, 0.957495f, 0.957550f, 0.957606f, 0.957661f, 0.957716f, 0.957771f, + 0.957826f, 0.957882f, 0.957937f, 0.957992f, 0.958046f, 0.958101f, 0.958156f, 0.958211f, + 0.958266f, 0.958321f, 0.958376f, 0.958430f, 0.958485f, 0.958540f, 0.958594f, 0.958649f, + 0.958703f, 0.958758f, 0.958812f, 0.958867f, 0.958921f, 0.958976f, 0.959030f, 0.959084f, + 0.959139f, 0.959193f, 0.959247f, 0.959301f, 0.959355f, 0.959409f, 0.959463f, 0.959518f, + 0.959572f, 0.959625f, 0.959679f, 0.959733f, 0.959787f, 0.959841f, 0.959895f, 0.959948f, + 0.960002f, 0.960056f, 0.960109f, 0.960163f, 0.960217f, 0.960270f, 0.960324f, 0.960377f, + 0.960431f, 0.960484f, 0.960537f, 0.960591f, 0.960644f, 0.960697f, 0.960750f, 0.960804f, + 0.960857f, 0.960910f, 0.960963f, 0.961016f, 0.961069f, 0.961122f, 0.961175f, 0.961228f, + 0.961280f, 0.961333f, 0.961386f, 0.961439f, 0.961492f, 0.961544f, 0.961597f, 0.961649f, + 0.961702f, 0.961755f, 0.961807f, 0.961860f, 0.961912f, 0.961964f, 0.962017f, 0.962069f, + 0.962121f, 0.962174f, 0.962226f, 0.962278f, 0.962330f, 0.962382f, 0.962434f, 0.962486f, + 0.962538f, 0.962590f, 0.962642f, 0.962694f, 0.962746f, 0.962798f, 0.962850f, 0.962902f, + 0.962953f, 0.963005f, 0.963057f, 0.963108f, 0.963160f, 0.963211f, 0.963263f, 0.963314f, + 0.963366f, 0.963417f, 0.963469f, 0.963520f, 0.963571f, 0.963623f, 0.963674f, 0.963725f, + 0.963776f, 0.963827f, 0.963878f, 0.963929f, 0.963980f, 0.964031f, 0.964082f, 0.964133f, + 0.964184f, 0.964235f, 0.964286f, 0.964336f, 0.964387f, 0.964438f, 0.964489f, 0.964539f, + 0.964590f, 0.964640f, 0.964691f, 0.964741f, 0.964792f, 0.964842f, 0.964893f, 0.964943f, + 0.964993f, 0.965044f, 0.965094f, 0.965144f, 0.965194f, 0.965244f, 0.965294f, 0.965344f, + 0.965394f, 0.965444f, 0.965494f, 0.965544f, 0.965594f, 0.965644f, 0.965694f, 0.965744f, + 0.965793f, 0.965843f, 0.965893f, 0.965942f, 0.965992f, 0.966042f, 0.966091f, 0.966141f, + 0.966190f, 0.966239f, 0.966289f, 0.966338f, 0.966387f, 0.966437f, 0.966486f, 0.966535f, + 0.966584f, 0.966633f, 0.966683f, 0.966732f, 0.966781f, 0.966830f, 0.966879f, 0.966928f, + 0.966976f, 0.967025f, 0.967074f, 0.967123f, 0.967172f, 0.967220f, 0.967269f, 0.967318f, + 0.967366f, 0.967415f, 0.967463f, 0.967512f, 0.967560f, 0.967609f, 0.967657f, 0.967706f, + 0.967754f, 0.967802f, 0.967850f, 0.967899f, 0.967947f, 0.967995f, 0.968043f, 0.968091f, + 0.968139f, 0.968187f, 0.968235f, 0.968283f, 0.968331f, 0.968379f, 0.968427f, 0.968474f, + 0.968522f, 0.968570f, 0.968617f, 0.968665f, 0.968713f, 0.968760f, 0.968808f, 0.968855f, + 0.968903f, 0.968950f, 0.968998f, 0.969045f, 0.969092f, 0.969140f, 0.969187f, 0.969234f, + 0.969281f, 0.969328f, 0.969375f, 0.969423f, 0.969470f, 0.969517f, 0.969564f, 0.969611f, + 0.969657f, 0.969704f, 0.969751f, 0.969798f, 0.969845f, 0.969891f, 0.969938f, 0.969985f, + 0.970031f, 0.970078f, 0.970124f, 0.970171f, 0.970217f, 0.970264f, 0.970310f, 0.970357f, + 0.970403f, 0.970449f, 0.970495f, 0.970542f, 0.970588f, 0.970634f, 0.970680f, 0.970726f, + 0.970772f, 0.970818f, 0.970864f, 0.970910f, 0.970956f, 0.971002f, 0.971048f, 0.971093f, + 0.971139f, 0.971185f, 0.971231f, 0.971276f, 0.971322f, 0.971367f, 0.971413f, 0.971458f, + 0.971504f, 0.971549f, 0.971595f, 0.971640f, 0.971685f, 0.971731f, 0.971776f, 0.971821f, + 0.971866f, 0.971911f, 0.971957f, 0.972002f, 0.972047f, 0.972092f, 0.972137f, 0.972182f, + 0.972227f, 0.972271f, 0.972316f, 0.972361f, 0.972406f, 0.972450f, 0.972495f, 0.972540f, + 0.972584f, 0.972629f, 0.972673f, 0.972718f, 0.972762f, 0.972807f, 0.972851f, 0.972896f, + 0.972940f, 0.972984f, 0.973028f, 0.973073f, 0.973117f, 0.973161f, 0.973205f, 0.973249f, + 0.973293f, 0.973337f, 0.973381f, 0.973425f, 0.973469f, 0.973513f, 0.973557f, 0.973601f, + 0.973644f, 0.973688f, 0.973732f, 0.973775f, 0.973819f, 0.973862f, 0.973906f, 0.973949f, + 0.973993f, 0.974036f, 0.974080f, 0.974123f, 0.974166f, 0.974210f, 0.974253f, 0.974296f, + 0.974339f, 0.974383f, 0.974426f, 0.974469f, 0.974512f, 0.974555f, 0.974598f, 0.974641f, + 0.974684f, 0.974726f, 0.974769f, 0.974812f, 0.974855f, 0.974897f, 0.974940f, 0.974983f, + 0.975025f, 0.975068f, 0.975110f, 0.975153f, 0.975195f, 0.975238f, 0.975280f, 0.975323f, + 0.975365f, 0.975407f, 0.975449f, 0.975492f, 0.975534f, 0.975576f, 0.975618f, 0.975660f, + 0.975702f, 0.975744f, 0.975786f, 0.975828f, 0.975870f, 0.975912f, 0.975954f, 0.975995f, + 0.976037f, 0.976079f, 0.976120f, 0.976162f, 0.976204f, 0.976245f, 0.976287f, 0.976328f, + 0.976370f, 0.976411f, 0.976453f, 0.976494f, 0.976535f, 0.976576f, 0.976618f, 0.976659f, + 0.976700f, 0.976741f, 0.976782f, 0.976823f, 0.976864f, 0.976905f, 0.976946f, 0.976987f, + 0.977028f, 0.977069f, 0.977110f, 0.977151f, 0.977191f, 0.977232f, 0.977273f, 0.977313f, + 0.977354f, 0.977394f, 0.977435f, 0.977475f, 0.977516f, 0.977556f, 0.977597f, 0.977637f, + 0.977677f, 0.977718f, 0.977758f, 0.977798f, 0.977838f, 0.977878f, 0.977918f, 0.977959f, + 0.977998f, 0.978038f, 0.978078f, 0.978118f, 0.978158f, 0.978198f, 0.978238f, 0.978278f, + 0.978317f, 0.978357f, 0.978397f, 0.978436f, 0.978476f, 0.978516f, 0.978555f, 0.978594f, + 0.978634f, 0.978673f, 0.978713f, 0.978752f, 0.978791f, 0.978831f, 0.978870f, 0.978909f, + 0.978948f, 0.978987f, 0.979026f, 0.979065f, 0.979104f, 0.979143f, 0.979182f, 0.979221f, + 0.979260f, 0.979299f, 0.979338f, 0.979376f, 0.979415f, 0.979454f, 0.979493f, 0.979531f, + 0.979570f, 0.979608f, 0.979647f, 0.979685f, 0.979724f, 0.979762f, 0.979800f, 0.979839f, + 0.979877f, 0.979915f, 0.979954f, 0.979992f, 0.980030f, 0.980068f, 0.980106f, 0.980144f, + 0.980182f, 0.980220f, 0.980258f, 0.980296f, 0.980334f, 0.980372f, 0.980409f, 0.980447f, + 0.980485f, 0.980523f, 0.980560f, 0.980598f, 0.980635f, 0.980673f, 0.980710f, 0.980748f, + 0.980785f, 0.980823f, 0.980860f, 0.980897f, 0.980935f, 0.980972f, 0.981009f, 0.981046f, + 0.981083f, 0.981120f, 0.981158f, 0.981195f, 0.981232f, 0.981269f, 0.981305f, 0.981342f, + 0.981379f, 0.981416f, 0.981453f, 0.981490f, 0.981526f, 0.981563f, 0.981600f, 0.981636f, + 0.981673f, 0.981709f, 0.981746f, 0.981782f, 0.981819f, 0.981855f, 0.981891f, 0.981928f, + 0.981964f, 0.982000f, 0.982036f, 0.982072f, 0.982109f, 0.982145f, 0.982181f, 0.982217f, + 0.982253f, 0.982289f, 0.982325f, 0.982360f, 0.982396f, 0.982432f, 0.982468f, 0.982504f, + 0.982539f, 0.982575f, 0.982611f, 0.982646f, 0.982682f, 0.982717f, 0.982753f, 0.982788f, + 0.982824f, 0.982859f, 0.982894f, 0.982930f, 0.982965f, 0.983000f, 0.983035f, 0.983070f, + 0.983105f, 0.983141f, 0.983176f, 0.983211f, 0.983246f, 0.983281f, 0.983315f, 0.983350f, + 0.983385f, 0.983420f, 0.983455f, 0.983489f, 0.983524f, 0.983559f, 0.983593f, 0.983628f, + 0.983662f, 0.983697f, 0.983731f, 0.983766f, 0.983800f, 0.983835f, 0.983869f, 0.983903f, + 0.983937f, 0.983972f, 0.984006f, 0.984040f, 0.984074f, 0.984108f, 0.984142f, 0.984176f, + 0.984210f, 0.984244f, 0.984278f, 0.984312f, 0.984346f, 0.984379f, 0.984413f, 0.984447f, + 0.984480f, 0.984514f, 0.984548f, 0.984581f, 0.984615f, 0.984648f, 0.984682f, 0.984715f, + 0.984748f, 0.984782f, 0.984815f, 0.984848f, 0.984882f, 0.984915f, 0.984948f, 0.984981f, + 0.985014f, 0.985047f, 0.985080f, 0.985113f, 0.985146f, 0.985179f, 0.985212f, 0.985245f, + 0.985278f, 0.985310f, 0.985343f, 0.985376f, 0.985408f, 0.985441f, 0.985474f, 0.985506f, + 0.985539f, 0.985571f, 0.985604f, 0.985636f, 0.985668f, 0.985701f, 0.985733f, 0.985765f, + 0.985798f, 0.985830f, 0.985862f, 0.985894f, 0.985926f, 0.985958f, 0.985990f, 0.986022f, + 0.986054f, 0.986086f, 0.986118f, 0.986150f, 0.986181f, 0.986213f, 0.986245f, 0.986276f, + 0.986308f, 0.986340f, 0.986371f, 0.986403f, 0.986434f, 0.986466f, 0.986497f, 0.986529f, + 0.986560f, 0.986591f, 0.986623f, 0.986654f, 0.986685f, 0.986716f, 0.986747f, 0.986778f, + 0.986809f, 0.986840f, 0.986871f, 0.986902f, 0.986933f, 0.986964f, 0.986995f, 0.987026f, + 0.987057f, 0.987087f, 0.987118f, 0.987149f, 0.987179f, 0.987210f, 0.987240f, 0.987271f, + 0.987301f, 0.987332f, 0.987362f, 0.987393f, 0.987423f, 0.987453f, 0.987484f, 0.987514f, + 0.987544f, 0.987574f, 0.987604f, 0.987634f, 0.987664f, 0.987694f, 0.987724f, 0.987754f, + 0.987784f, 0.987814f, 0.987844f, 0.987874f, 0.987903f, 0.987933f, 0.987963f, 0.987992f, + 0.988022f, 0.988052f, 0.988081f, 0.988111f, 0.988140f, 0.988169f, 0.988199f, 0.988228f, + 0.988258f, 0.988287f, 0.988316f, 0.988345f, 0.988374f, 0.988404f, 0.988433f, 0.988462f, + 0.988491f, 0.988520f, 0.988549f, 0.988578f, 0.988607f, 0.988635f, 0.988664f, 0.988693f, + 0.988722f, 0.988750f, 0.988779f, 0.988808f, 0.988836f, 0.988865f, 0.988893f, 0.988922f, + 0.988950f, 0.988979f, 0.989007f, 0.989035f, 0.989064f, 0.989092f, 0.989120f, 0.989148f, + 0.989177f, 0.989205f, 0.989233f, 0.989261f, 0.989289f, 0.989317f, 0.989345f, 0.989373f, + 0.989400f, 0.989428f, 0.989456f, 0.989484f, 0.989511f, 0.989539f, 0.989567f, 0.989594f, + 0.989622f, 0.989650f, 0.989677f, 0.989704f, 0.989732f, 0.989759f, 0.989787f, 0.989814f, + 0.989841f, 0.989869f, 0.989896f, 0.989923f, 0.989950f, 0.989977f, 0.990004f, 0.990031f, + 0.990058f, 0.990085f, 0.990112f, 0.990139f, 0.990166f, 0.990193f, 0.990219f, 0.990246f, + 0.990273f, 0.990299f, 0.990326f, 0.990353f, 0.990379f, 0.990406f, 0.990432f, 0.990459f, + 0.990485f, 0.990511f, 0.990538f, 0.990564f, 0.990590f, 0.990617f, 0.990643f, 0.990669f, + 0.990695f, 0.990721f, 0.990747f, 0.990773f, 0.990799f, 0.990825f, 0.990851f, 0.990877f, + 0.990903f, 0.990928f, 0.990954f, 0.990980f, 0.991006f, 0.991031f, 0.991057f, 0.991082f, + 0.991108f, 0.991133f, 0.991159f, 0.991184f, 0.991210f, 0.991235f, 0.991260f, 0.991286f, + 0.991311f, 0.991336f, 0.991361f, 0.991386f, 0.991411f, 0.991437f, 0.991462f, 0.991487f, + 0.991511f, 0.991536f, 0.991561f, 0.991586f, 0.991611f, 0.991636f, 0.991660f, 0.991685f, + 0.991710f, 0.991734f, 0.991759f, 0.991783f, 0.991808f, 0.991832f, 0.991857f, 0.991881f, + 0.991906f, 0.991930f, 0.991954f, 0.991979f, 0.992003f, 0.992027f, 0.992051f, 0.992075f, + 0.992099f, 0.992123f, 0.992147f, 0.992171f, 0.992195f, 0.992219f, 0.992243f, 0.992267f, + 0.992291f, 0.992314f, 0.992338f, 0.992362f, 0.992385f, 0.992409f, 0.992433f, 0.992456f, + 0.992480f, 0.992503f, 0.992526f, 0.992550f, 0.992573f, 0.992596f, 0.992620f, 0.992643f, + 0.992666f, 0.992689f, 0.992712f, 0.992736f, 0.992759f, 0.992782f, 0.992805f, 0.992828f, + 0.992850f, 0.992873f, 0.992896f, 0.992919f, 0.992942f, 0.992964f, 0.992987f, 0.993010f, + 0.993032f, 0.993055f, 0.993077f, 0.993100f, 0.993122f, 0.993145f, 0.993167f, 0.993190f, + 0.993212f, 0.993234f, 0.993257f, 0.993279f, 0.993301f, 0.993323f, 0.993345f, 0.993367f, + 0.993389f, 0.993411f, 0.993433f, 0.993455f, 0.993477f, 0.993499f, 0.993521f, 0.993542f, + 0.993564f, 0.993586f, 0.993608f, 0.993629f, 0.993651f, 0.993672f, 0.993694f, 0.993715f, + 0.993737f, 0.993758f, 0.993779f, 0.993801f, 0.993822f, 0.993843f, 0.993865f, 0.993886f, + 0.993907f, 0.993928f, 0.993949f, 0.993970f, 0.993991f, 0.994012f, 0.994033f, 0.994054f, + 0.994075f, 0.994096f, 0.994116f, 0.994137f, 0.994158f, 0.994179f, 0.994199f, 0.994220f, + 0.994240f, 0.994261f, 0.994281f, 0.994302f, 0.994322f, 0.994343f, 0.994363f, 0.994383f, + 0.994404f, 0.994424f, 0.994444f, 0.994464f, 0.994484f, 0.994505f, 0.994525f, 0.994545f, + 0.994565f, 0.994585f, 0.994604f, 0.994624f, 0.994644f, 0.994664f, 0.994684f, 0.994703f, + 0.994723f, 0.994743f, 0.994762f, 0.994782f, 0.994802f, 0.994821f, 0.994841f, 0.994860f, + 0.994879f, 0.994899f, 0.994918f, 0.994937f, 0.994957f, 0.994976f, 0.994995f, 0.995014f, + 0.995033f, 0.995052f, 0.995071f, 0.995090f, 0.995109f, 0.995128f, 0.995147f, 0.995166f, + 0.995185f, 0.995203f, 0.995222f, 0.995241f, 0.995260f, 0.995278f, 0.995297f, 0.995315f, + 0.995334f, 0.995352f, 0.995371f, 0.995389f, 0.995408f, 0.995426f, 0.995444f, 0.995463f, + 0.995481f, 0.995499f, 0.995517f, 0.995535f, 0.995553f, 0.995571f, 0.995589f, 0.995607f, + 0.995625f, 0.995643f, 0.995661f, 0.995679f, 0.995697f, 0.995714f, 0.995732f, 0.995750f, + 0.995767f, 0.995785f, 0.995803f, 0.995820f, 0.995838f, 0.995855f, 0.995872f, 0.995890f, + 0.995907f, 0.995925f, 0.995942f, 0.995959f, 0.995976f, 0.995993f, 0.996011f, 0.996028f, + 0.996045f, 0.996062f, 0.996079f, 0.996096f, 0.996113f, 0.996129f, 0.996146f, 0.996163f, + 0.996180f, 0.996197f, 0.996213f, 0.996230f, 0.996247f, 0.996263f, 0.996280f, 0.996296f, + 0.996313f, 0.996329f, 0.996345f, 0.996362f, 0.996378f, 0.996394f, 0.996411f, 0.996427f, + 0.996443f, 0.996459f, 0.996475f, 0.996491f, 0.996507f, 0.996523f, 0.996539f, 0.996555f, + 0.996571f, 0.996587f, 0.996603f, 0.996619f, 0.996634f, 0.996650f, 0.996666f, 0.996681f, + 0.996697f, 0.996712f, 0.996728f, 0.996743f, 0.996759f, 0.996774f, 0.996790f, 0.996805f, + 0.996820f, 0.996836f, 0.996851f, 0.996866f, 0.996881f, 0.996896f, 0.996911f, 0.996926f, + 0.996941f, 0.996956f, 0.996971f, 0.996986f, 0.997001f, 0.997016f, 0.997031f, 0.997045f, + 0.997060f, 0.997075f, 0.997089f, 0.997104f, 0.997119f, 0.997133f, 0.997148f, 0.997162f, + 0.997176f, 0.997191f, 0.997205f, 0.997219f, 0.997234f, 0.997248f, 0.997262f, 0.997276f, + 0.997290f, 0.997305f, 0.997319f, 0.997333f, 0.997347f, 0.997361f, 0.997374f, 0.997388f, + 0.997402f, 0.997416f, 0.997430f, 0.997443f, 0.997457f, 0.997471f, 0.997484f, 0.997498f, + 0.997511f, 0.997525f, 0.997538f, 0.997552f, 0.997565f, 0.997579f, 0.997592f, 0.997605f, + 0.997618f, 0.997632f, 0.997645f, 0.997658f, 0.997671f, 0.997684f, 0.997697f, 0.997710f, + 0.997723f, 0.997736f, 0.997749f, 0.997762f, 0.997774f, 0.997787f, 0.997800f, 0.997813f, + 0.997825f, 0.997838f, 0.997851f, 0.997863f, 0.997876f, 0.997888f, 0.997901f, 0.997913f, + 0.997925f, 0.997938f, 0.997950f, 0.997962f, 0.997974f, 0.997987f, 0.997999f, 0.998011f, + 0.998023f, 0.998035f, 0.998047f, 0.998059f, 0.998071f, 0.998083f, 0.998094f, 0.998106f, + 0.998118f, 0.998130f, 0.998142f, 0.998153f, 0.998165f, 0.998176f, 0.998188f, 0.998200f, + 0.998211f, 0.998222f, 0.998234f, 0.998245f, 0.998257f, 0.998268f, 0.998279f, 0.998290f, + 0.998302f, 0.998313f, 0.998324f, 0.998335f, 0.998346f, 0.998357f, 0.998368f, 0.998379f, + 0.998390f, 0.998401f, 0.998411f, 0.998422f, 0.998433f, 0.998444f, 0.998454f, 0.998465f, + 0.998476f, 0.998486f, 0.998497f, 0.998507f, 0.998518f, 0.998528f, 0.998538f, 0.998549f, + 0.998559f, 0.998569f, 0.998580f, 0.998590f, 0.998600f, 0.998610f, 0.998620f, 0.998630f, + 0.998640f, 0.998650f, 0.998660f, 0.998670f, 0.998680f, 0.998690f, 0.998700f, 0.998709f, + 0.998719f, 0.998729f, 0.998738f, 0.998748f, 0.998758f, 0.998767f, 0.998777f, 0.998786f, + 0.998795f, 0.998805f, 0.998814f, 0.998824f, 0.998833f, 0.998842f, 0.998851f, 0.998860f, + 0.998870f, 0.998879f, 0.998888f, 0.998897f, 0.998906f, 0.998915f, 0.998924f, 0.998932f, + 0.998941f, 0.998950f, 0.998959f, 0.998968f, 0.998976f, 0.998985f, 0.998994f, 0.999002f, + 0.999011f, 0.999019f, 0.999028f, 0.999036f, 0.999044f, 0.999053f, 0.999061f, 0.999069f, + 0.999078f, 0.999086f, 0.999094f, 0.999102f, 0.999110f, 0.999118f, 0.999126f, 0.999134f, + 0.999142f, 0.999150f, 0.999158f, 0.999166f, 0.999174f, 0.999182f, 0.999189f, 0.999197f, + 0.999205f, 0.999212f, 0.999220f, 0.999228f, 0.999235f, 0.999243f, 0.999250f, 0.999257f, + 0.999265f, 0.999272f, 0.999279f, 0.999287f, 0.999294f, 0.999301f, 0.999308f, 0.999315f, + 0.999322f, 0.999329f, 0.999336f, 0.999343f, 0.999350f, 0.999357f, 0.999364f, 0.999371f, + 0.999378f, 0.999384f, 0.999391f, 0.999398f, 0.999404f, 0.999411f, 0.999418f, 0.999424f, + 0.999431f, 0.999437f, 0.999443f, 0.999450f, 0.999456f, 0.999462f, 0.999469f, 0.999475f, + 0.999481f, 0.999487f, 0.999493f, 0.999500f, 0.999506f, 0.999512f, 0.999518f, 0.999524f, + 0.999529f, 0.999535f, 0.999541f, 0.999547f, 0.999553f, 0.999558f, 0.999564f, 0.999570f, + 0.999575f, 0.999581f, 0.999586f, 0.999592f, 0.999597f, 0.999603f, 0.999608f, 0.999614f, + 0.999619f, 0.999624f, 0.999629f, 0.999635f, 0.999640f, 0.999645f, 0.999650f, 0.999655f, + 0.999660f, 0.999665f, 0.999670f, 0.999675f, 0.999680f, 0.999685f, 0.999689f, 0.999694f, + 0.999699f, 0.999704f, 0.999708f, 0.999713f, 0.999717f, 0.999722f, 0.999726f, 0.999731f, + 0.999735f, 0.999740f, 0.999744f, 0.999748f, 0.999753f, 0.999757f, 0.999761f, 0.999765f, + 0.999769f, 0.999774f, 0.999778f, 0.999782f, 0.999786f, 0.999790f, 0.999793f, 0.999797f, + 0.999801f, 0.999805f, 0.999809f, 0.999812f, 0.999816f, 0.999820f, 0.999823f, 0.999827f, + 0.999831f, 0.999834f, 0.999838f, 0.999841f, 0.999844f, 0.999848f, 0.999851f, 0.999854f, + 0.999858f, 0.999861f, 0.999864f, 0.999867f, 0.999870f, 0.999873f, 0.999876f, 0.999879f, + 0.999882f, 0.999885f, 0.999888f, 0.999891f, 0.999894f, 0.999897f, 0.999899f, 0.999902f, + 0.999905f, 0.999907f, 0.999910f, 0.999913f, 0.999915f, 0.999917f, 0.999920f, 0.999922f, + 0.999925f, 0.999927f, 0.999929f, 0.999932f, 0.999934f, 0.999936f, 0.999938f, 0.999940f, + 0.999942f, 0.999944f, 0.999946f, 0.999948f, 0.999950f, 0.999952f, 0.999954f, 0.999956f, + 0.999958f, 0.999959f, 0.999961f, 0.999963f, 0.999964f, 0.999966f, 0.999968f, 0.999969f, + 0.999971f, 0.999972f, 0.999973f, 0.999975f, 0.999976f, 0.999977f, 0.999979f, 0.999980f, + 0.999981f, 0.999982f, 0.999983f, 0.999985f, 0.999986f, 0.999987f, 0.999988f, 0.999988f, + 0.999989f, 0.999990f, 0.999991f, 0.999992f, 0.999993f, 0.999993f, 0.999994f, 0.999995f, + 0.999995f, 0.999996f, 0.999996f, 0.999997f, 0.999997f, 0.999998f, 0.999998f, 0.999999f, + 0.999999f, 0.999999f, 0.999999f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f +}; + +static const float cosTable65536[32768] = { + 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, + 1.000000f, 1.000000f, 1.000000f, 0.999999f, 0.999999f, 0.999999f, 0.999999f, 0.999999f, + 0.999999f, 0.999999f, 0.999999f, 0.999998f, 0.999998f, 0.999998f, 0.999998f, 0.999998f, + 0.999997f, 0.999997f, 0.999997f, 0.999997f, 0.999996f, 0.999996f, 0.999996f, 0.999996f, + 0.999995f, 0.999995f, 0.999995f, 0.999994f, 0.999994f, 0.999994f, 0.999993f, 0.999993f, + 0.999993f, 0.999992f, 0.999992f, 0.999991f, 0.999991f, 0.999991f, 0.999990f, 0.999990f, + 0.999989f, 0.999989f, 0.999988f, 0.999988f, 0.999988f, 0.999987f, 0.999987f, 0.999986f, + 0.999986f, 0.999985f, 0.999985f, 0.999984f, 0.999983f, 0.999983f, 0.999982f, 0.999982f, + 0.999981f, 0.999981f, 0.999980f, 0.999979f, 0.999979f, 0.999978f, 0.999977f, 0.999977f, + 0.999976f, 0.999976f, 0.999975f, 0.999974f, 0.999973f, 0.999973f, 0.999972f, 0.999971f, + 0.999971f, 0.999970f, 0.999969f, 0.999968f, 0.999968f, 0.999967f, 0.999966f, 0.999965f, + 0.999964f, 0.999964f, 0.999963f, 0.999962f, 0.999961f, 0.999960f, 0.999959f, 0.999959f, + 0.999958f, 0.999957f, 0.999956f, 0.999955f, 0.999954f, 0.999953f, 0.999952f, 0.999951f, + 0.999950f, 0.999949f, 0.999948f, 0.999947f, 0.999946f, 0.999945f, 0.999944f, 0.999943f, + 0.999942f, 0.999941f, 0.999940f, 0.999939f, 0.999938f, 0.999937f, 0.999936f, 0.999935f, + 0.999934f, 0.999933f, 0.999932f, 0.999930f, 0.999929f, 0.999928f, 0.999927f, 0.999926f, + 0.999925f, 0.999924f, 0.999922f, 0.999921f, 0.999920f, 0.999919f, 0.999917f, 0.999916f, + 0.999915f, 0.999914f, 0.999913f, 0.999911f, 0.999910f, 0.999909f, 0.999907f, 0.999906f, + 0.999905f, 0.999903f, 0.999902f, 0.999901f, 0.999899f, 0.999898f, 0.999897f, 0.999895f, + 0.999894f, 0.999892f, 0.999891f, 0.999890f, 0.999888f, 0.999887f, 0.999885f, 0.999884f, + 0.999882f, 0.999881f, 0.999879f, 0.999878f, 0.999876f, 0.999875f, 0.999873f, 0.999872f, + 0.999870f, 0.999869f, 0.999867f, 0.999866f, 0.999864f, 0.999862f, 0.999861f, 0.999859f, + 0.999858f, 0.999856f, 0.999854f, 0.999853f, 0.999851f, 0.999849f, 0.999848f, 0.999846f, + 0.999844f, 0.999843f, 0.999841f, 0.999839f, 0.999838f, 0.999836f, 0.999834f, 0.999832f, + 0.999831f, 0.999829f, 0.999827f, 0.999825f, 0.999823f, 0.999822f, 0.999820f, 0.999818f, + 0.999816f, 0.999814f, 0.999812f, 0.999811f, 0.999809f, 0.999807f, 0.999805f, 0.999803f, + 0.999801f, 0.999799f, 0.999797f, 0.999795f, 0.999793f, 0.999792f, 0.999790f, 0.999788f, + 0.999786f, 0.999784f, 0.999782f, 0.999780f, 0.999778f, 0.999776f, 0.999774f, 0.999771f, + 0.999769f, 0.999767f, 0.999765f, 0.999763f, 0.999761f, 0.999759f, 0.999757f, 0.999755f, + 0.999753f, 0.999750f, 0.999748f, 0.999746f, 0.999744f, 0.999742f, 0.999740f, 0.999738f, + 0.999735f, 0.999733f, 0.999731f, 0.999729f, 0.999726f, 0.999724f, 0.999722f, 0.999720f, + 0.999717f, 0.999715f, 0.999713f, 0.999710f, 0.999708f, 0.999706f, 0.999704f, 0.999701f, + 0.999699f, 0.999696f, 0.999694f, 0.999692f, 0.999689f, 0.999687f, 0.999685f, 0.999682f, + 0.999680f, 0.999677f, 0.999675f, 0.999672f, 0.999670f, 0.999667f, 0.999665f, 0.999663f, + 0.999660f, 0.999658f, 0.999655f, 0.999652f, 0.999650f, 0.999647f, 0.999645f, 0.999642f, + 0.999640f, 0.999637f, 0.999635f, 0.999632f, 0.999629f, 0.999627f, 0.999624f, 0.999621f, + 0.999619f, 0.999616f, 0.999614f, 0.999611f, 0.999608f, 0.999605f, 0.999603f, 0.999600f, + 0.999597f, 0.999595f, 0.999592f, 0.999589f, 0.999586f, 0.999584f, 0.999581f, 0.999578f, + 0.999575f, 0.999573f, 0.999570f, 0.999567f, 0.999564f, 0.999561f, 0.999558f, 0.999556f, + 0.999553f, 0.999550f, 0.999547f, 0.999544f, 0.999541f, 0.999538f, 0.999535f, 0.999532f, + 0.999529f, 0.999527f, 0.999524f, 0.999521f, 0.999518f, 0.999515f, 0.999512f, 0.999509f, + 0.999506f, 0.999503f, 0.999500f, 0.999497f, 0.999493f, 0.999490f, 0.999487f, 0.999484f, + 0.999481f, 0.999478f, 0.999475f, 0.999472f, 0.999469f, 0.999466f, 0.999462f, 0.999459f, + 0.999456f, 0.999453f, 0.999450f, 0.999447f, 0.999443f, 0.999440f, 0.999437f, 0.999434f, + 0.999431f, 0.999427f, 0.999424f, 0.999421f, 0.999418f, 0.999414f, 0.999411f, 0.999408f, + 0.999404f, 0.999401f, 0.999398f, 0.999394f, 0.999391f, 0.999388f, 0.999384f, 0.999381f, + 0.999378f, 0.999374f, 0.999371f, 0.999367f, 0.999364f, 0.999361f, 0.999357f, 0.999354f, + 0.999350f, 0.999347f, 0.999343f, 0.999340f, 0.999336f, 0.999333f, 0.999329f, 0.999326f, + 0.999322f, 0.999319f, 0.999315f, 0.999312f, 0.999308f, 0.999305f, 0.999301f, 0.999297f, + 0.999294f, 0.999290f, 0.999287f, 0.999283f, 0.999279f, 0.999276f, 0.999272f, 0.999268f, + 0.999265f, 0.999261f, 0.999257f, 0.999254f, 0.999250f, 0.999246f, 0.999243f, 0.999239f, + 0.999235f, 0.999231f, 0.999228f, 0.999224f, 0.999220f, 0.999216f, 0.999212f, 0.999209f, + 0.999205f, 0.999201f, 0.999197f, 0.999193f, 0.999189f, 0.999186f, 0.999182f, 0.999178f, + 0.999174f, 0.999170f, 0.999166f, 0.999162f, 0.999158f, 0.999154f, 0.999150f, 0.999146f, + 0.999142f, 0.999138f, 0.999134f, 0.999130f, 0.999126f, 0.999122f, 0.999118f, 0.999114f, + 0.999110f, 0.999106f, 0.999102f, 0.999098f, 0.999094f, 0.999090f, 0.999086f, 0.999082f, + 0.999078f, 0.999074f, 0.999069f, 0.999065f, 0.999061f, 0.999057f, 0.999053f, 0.999049f, + 0.999044f, 0.999040f, 0.999036f, 0.999032f, 0.999028f, 0.999023f, 0.999019f, 0.999015f, + 0.999011f, 0.999006f, 0.999002f, 0.998998f, 0.998994f, 0.998989f, 0.998985f, 0.998981f, + 0.998976f, 0.998972f, 0.998968f, 0.998963f, 0.998959f, 0.998954f, 0.998950f, 0.998946f, + 0.998941f, 0.998937f, 0.998932f, 0.998928f, 0.998924f, 0.998919f, 0.998915f, 0.998910f, + 0.998906f, 0.998901f, 0.998897f, 0.998892f, 0.998888f, 0.998883f, 0.998879f, 0.998874f, + 0.998870f, 0.998865f, 0.998860f, 0.998856f, 0.998851f, 0.998847f, 0.998842f, 0.998837f, + 0.998833f, 0.998828f, 0.998824f, 0.998819f, 0.998814f, 0.998810f, 0.998805f, 0.998800f, + 0.998795f, 0.998791f, 0.998786f, 0.998781f, 0.998777f, 0.998772f, 0.998767f, 0.998762f, + 0.998758f, 0.998753f, 0.998748f, 0.998743f, 0.998738f, 0.998734f, 0.998729f, 0.998724f, + 0.998719f, 0.998714f, 0.998709f, 0.998704f, 0.998700f, 0.998695f, 0.998690f, 0.998685f, + 0.998680f, 0.998675f, 0.998670f, 0.998665f, 0.998660f, 0.998655f, 0.998650f, 0.998645f, + 0.998640f, 0.998635f, 0.998630f, 0.998625f, 0.998620f, 0.998615f, 0.998610f, 0.998605f, + 0.998600f, 0.998595f, 0.998590f, 0.998585f, 0.998580f, 0.998574f, 0.998569f, 0.998564f, + 0.998559f, 0.998554f, 0.998549f, 0.998544f, 0.998538f, 0.998533f, 0.998528f, 0.998523f, + 0.998518f, 0.998512f, 0.998507f, 0.998502f, 0.998497f, 0.998491f, 0.998486f, 0.998481f, + 0.998476f, 0.998470f, 0.998465f, 0.998460f, 0.998454f, 0.998449f, 0.998444f, 0.998438f, + 0.998433f, 0.998428f, 0.998422f, 0.998417f, 0.998411f, 0.998406f, 0.998401f, 0.998395f, + 0.998390f, 0.998384f, 0.998379f, 0.998373f, 0.998368f, 0.998362f, 0.998357f, 0.998351f, + 0.998346f, 0.998340f, 0.998335f, 0.998329f, 0.998324f, 0.998318f, 0.998313f, 0.998307f, + 0.998302f, 0.998296f, 0.998290f, 0.998285f, 0.998279f, 0.998273f, 0.998268f, 0.998262f, + 0.998257f, 0.998251f, 0.998245f, 0.998240f, 0.998234f, 0.998228f, 0.998222f, 0.998217f, + 0.998211f, 0.998205f, 0.998200f, 0.998194f, 0.998188f, 0.998182f, 0.998176f, 0.998171f, + 0.998165f, 0.998159f, 0.998153f, 0.998147f, 0.998142f, 0.998136f, 0.998130f, 0.998124f, + 0.998118f, 0.998112f, 0.998106f, 0.998100f, 0.998094f, 0.998089f, 0.998083f, 0.998077f, + 0.998071f, 0.998065f, 0.998059f, 0.998053f, 0.998047f, 0.998041f, 0.998035f, 0.998029f, + 0.998023f, 0.998017f, 0.998011f, 0.998005f, 0.997999f, 0.997993f, 0.997987f, 0.997980f, + 0.997974f, 0.997968f, 0.997962f, 0.997956f, 0.997950f, 0.997944f, 0.997938f, 0.997931f, + 0.997925f, 0.997919f, 0.997913f, 0.997907f, 0.997901f, 0.997894f, 0.997888f, 0.997882f, + 0.997876f, 0.997869f, 0.997863f, 0.997857f, 0.997851f, 0.997844f, 0.997838f, 0.997832f, + 0.997825f, 0.997819f, 0.997813f, 0.997806f, 0.997800f, 0.997794f, 0.997787f, 0.997781f, + 0.997774f, 0.997768f, 0.997762f, 0.997755f, 0.997749f, 0.997742f, 0.997736f, 0.997730f, + 0.997723f, 0.997717f, 0.997710f, 0.997704f, 0.997697f, 0.997691f, 0.997684f, 0.997678f, + 0.997671f, 0.997665f, 0.997658f, 0.997651f, 0.997645f, 0.997638f, 0.997632f, 0.997625f, + 0.997618f, 0.997612f, 0.997605f, 0.997599f, 0.997592f, 0.997585f, 0.997579f, 0.997572f, + 0.997565f, 0.997559f, 0.997552f, 0.997545f, 0.997538f, 0.997532f, 0.997525f, 0.997518f, + 0.997511f, 0.997505f, 0.997498f, 0.997491f, 0.997484f, 0.997478f, 0.997471f, 0.997464f, + 0.997457f, 0.997450f, 0.997443f, 0.997437f, 0.997430f, 0.997423f, 0.997416f, 0.997409f, + 0.997402f, 0.997395f, 0.997388f, 0.997381f, 0.997374f, 0.997368f, 0.997361f, 0.997354f, + 0.997347f, 0.997340f, 0.997333f, 0.997326f, 0.997319f, 0.997312f, 0.997305f, 0.997298f, + 0.997290f, 0.997283f, 0.997276f, 0.997269f, 0.997262f, 0.997255f, 0.997248f, 0.997241f, + 0.997234f, 0.997227f, 0.997219f, 0.997212f, 0.997205f, 0.997198f, 0.997191f, 0.997184f, + 0.997176f, 0.997169f, 0.997162f, 0.997155f, 0.997148f, 0.997140f, 0.997133f, 0.997126f, + 0.997119f, 0.997111f, 0.997104f, 0.997097f, 0.997089f, 0.997082f, 0.997075f, 0.997067f, + 0.997060f, 0.997053f, 0.997045f, 0.997038f, 0.997031f, 0.997023f, 0.997016f, 0.997008f, + 0.997001f, 0.996994f, 0.996986f, 0.996979f, 0.996971f, 0.996964f, 0.996956f, 0.996949f, + 0.996941f, 0.996934f, 0.996926f, 0.996919f, 0.996911f, 0.996904f, 0.996896f, 0.996889f, + 0.996881f, 0.996874f, 0.996866f, 0.996858f, 0.996851f, 0.996843f, 0.996836f, 0.996828f, + 0.996820f, 0.996813f, 0.996805f, 0.996797f, 0.996790f, 0.996782f, 0.996774f, 0.996767f, + 0.996759f, 0.996751f, 0.996743f, 0.996736f, 0.996728f, 0.996720f, 0.996712f, 0.996705f, + 0.996697f, 0.996689f, 0.996681f, 0.996674f, 0.996666f, 0.996658f, 0.996650f, 0.996642f, + 0.996634f, 0.996626f, 0.996619f, 0.996611f, 0.996603f, 0.996595f, 0.996587f, 0.996579f, + 0.996571f, 0.996563f, 0.996555f, 0.996547f, 0.996539f, 0.996531f, 0.996523f, 0.996515f, + 0.996507f, 0.996499f, 0.996491f, 0.996483f, 0.996475f, 0.996467f, 0.996459f, 0.996451f, + 0.996443f, 0.996435f, 0.996427f, 0.996419f, 0.996411f, 0.996403f, 0.996394f, 0.996386f, + 0.996378f, 0.996370f, 0.996362f, 0.996354f, 0.996345f, 0.996337f, 0.996329f, 0.996321f, + 0.996313f, 0.996304f, 0.996296f, 0.996288f, 0.996280f, 0.996271f, 0.996263f, 0.996255f, + 0.996247f, 0.996238f, 0.996230f, 0.996222f, 0.996213f, 0.996205f, 0.996197f, 0.996188f, + 0.996180f, 0.996171f, 0.996163f, 0.996155f, 0.996146f, 0.996138f, 0.996129f, 0.996121f, + 0.996113f, 0.996104f, 0.996096f, 0.996087f, 0.996079f, 0.996070f, 0.996062f, 0.996053f, + 0.996045f, 0.996036f, 0.996028f, 0.996019f, 0.996011f, 0.996002f, 0.995993f, 0.995985f, + 0.995976f, 0.995968f, 0.995959f, 0.995950f, 0.995942f, 0.995933f, 0.995925f, 0.995916f, + 0.995907f, 0.995899f, 0.995890f, 0.995881f, 0.995872f, 0.995864f, 0.995855f, 0.995846f, + 0.995838f, 0.995829f, 0.995820f, 0.995811f, 0.995803f, 0.995794f, 0.995785f, 0.995776f, + 0.995767f, 0.995759f, 0.995750f, 0.995741f, 0.995732f, 0.995723f, 0.995714f, 0.995705f, + 0.995697f, 0.995688f, 0.995679f, 0.995670f, 0.995661f, 0.995652f, 0.995643f, 0.995634f, + 0.995625f, 0.995616f, 0.995607f, 0.995598f, 0.995589f, 0.995580f, 0.995571f, 0.995562f, + 0.995553f, 0.995544f, 0.995535f, 0.995526f, 0.995517f, 0.995508f, 0.995499f, 0.995490f, + 0.995481f, 0.995472f, 0.995463f, 0.995453f, 0.995444f, 0.995435f, 0.995426f, 0.995417f, + 0.995408f, 0.995398f, 0.995389f, 0.995380f, 0.995371f, 0.995362f, 0.995352f, 0.995343f, + 0.995334f, 0.995325f, 0.995315f, 0.995306f, 0.995297f, 0.995288f, 0.995278f, 0.995269f, + 0.995260f, 0.995250f, 0.995241f, 0.995232f, 0.995222f, 0.995213f, 0.995203f, 0.995194f, + 0.995185f, 0.995175f, 0.995166f, 0.995156f, 0.995147f, 0.995138f, 0.995128f, 0.995119f, + 0.995109f, 0.995100f, 0.995090f, 0.995081f, 0.995071f, 0.995062f, 0.995052f, 0.995043f, + 0.995033f, 0.995024f, 0.995014f, 0.995005f, 0.994995f, 0.994985f, 0.994976f, 0.994966f, + 0.994957f, 0.994947f, 0.994937f, 0.994928f, 0.994918f, 0.994908f, 0.994899f, 0.994889f, + 0.994879f, 0.994870f, 0.994860f, 0.994850f, 0.994841f, 0.994831f, 0.994821f, 0.994811f, + 0.994802f, 0.994792f, 0.994782f, 0.994772f, 0.994762f, 0.994753f, 0.994743f, 0.994733f, + 0.994723f, 0.994713f, 0.994703f, 0.994694f, 0.994684f, 0.994674f, 0.994664f, 0.994654f, + 0.994644f, 0.994634f, 0.994624f, 0.994614f, 0.994604f, 0.994594f, 0.994585f, 0.994575f, + 0.994565f, 0.994555f, 0.994545f, 0.994535f, 0.994525f, 0.994515f, 0.994505f, 0.994494f, + 0.994484f, 0.994474f, 0.994464f, 0.994454f, 0.994444f, 0.994434f, 0.994424f, 0.994414f, + 0.994404f, 0.994394f, 0.994383f, 0.994373f, 0.994363f, 0.994353f, 0.994343f, 0.994333f, + 0.994322f, 0.994312f, 0.994302f, 0.994292f, 0.994281f, 0.994271f, 0.994261f, 0.994251f, + 0.994240f, 0.994230f, 0.994220f, 0.994210f, 0.994199f, 0.994189f, 0.994179f, 0.994168f, + 0.994158f, 0.994148f, 0.994137f, 0.994127f, 0.994116f, 0.994106f, 0.994096f, 0.994085f, + 0.994075f, 0.994064f, 0.994054f, 0.994044f, 0.994033f, 0.994023f, 0.994012f, 0.994002f, + 0.993991f, 0.993981f, 0.993970f, 0.993960f, 0.993949f, 0.993939f, 0.993928f, 0.993918f, + 0.993907f, 0.993896f, 0.993886f, 0.993875f, 0.993865f, 0.993854f, 0.993843f, 0.993833f, + 0.993822f, 0.993811f, 0.993801f, 0.993790f, 0.993779f, 0.993769f, 0.993758f, 0.993747f, + 0.993737f, 0.993726f, 0.993715f, 0.993705f, 0.993694f, 0.993683f, 0.993672f, 0.993662f, + 0.993651f, 0.993640f, 0.993629f, 0.993618f, 0.993608f, 0.993597f, 0.993586f, 0.993575f, + 0.993564f, 0.993553f, 0.993542f, 0.993532f, 0.993521f, 0.993510f, 0.993499f, 0.993488f, + 0.993477f, 0.993466f, 0.993455f, 0.993444f, 0.993433f, 0.993422f, 0.993411f, 0.993400f, + 0.993389f, 0.993378f, 0.993367f, 0.993356f, 0.993345f, 0.993334f, 0.993323f, 0.993312f, + 0.993301f, 0.993290f, 0.993279f, 0.993268f, 0.993257f, 0.993245f, 0.993234f, 0.993223f, + 0.993212f, 0.993201f, 0.993190f, 0.993178f, 0.993167f, 0.993156f, 0.993145f, 0.993134f, + 0.993122f, 0.993111f, 0.993100f, 0.993089f, 0.993077f, 0.993066f, 0.993055f, 0.993044f, + 0.993032f, 0.993021f, 0.993010f, 0.992998f, 0.992987f, 0.992976f, 0.992964f, 0.992953f, + 0.992942f, 0.992930f, 0.992919f, 0.992908f, 0.992896f, 0.992885f, 0.992873f, 0.992862f, + 0.992850f, 0.992839f, 0.992828f, 0.992816f, 0.992805f, 0.992793f, 0.992782f, 0.992770f, + 0.992759f, 0.992747f, 0.992736f, 0.992724f, 0.992712f, 0.992701f, 0.992689f, 0.992678f, + 0.992666f, 0.992655f, 0.992643f, 0.992631f, 0.992620f, 0.992608f, 0.992596f, 0.992585f, + 0.992573f, 0.992561f, 0.992550f, 0.992538f, 0.992526f, 0.992515f, 0.992503f, 0.992491f, + 0.992480f, 0.992468f, 0.992456f, 0.992444f, 0.992433f, 0.992421f, 0.992409f, 0.992397f, + 0.992385f, 0.992374f, 0.992362f, 0.992350f, 0.992338f, 0.992326f, 0.992314f, 0.992302f, + 0.992291f, 0.992279f, 0.992267f, 0.992255f, 0.992243f, 0.992231f, 0.992219f, 0.992207f, + 0.992195f, 0.992183f, 0.992171f, 0.992159f, 0.992147f, 0.992135f, 0.992123f, 0.992111f, + 0.992099f, 0.992087f, 0.992075f, 0.992063f, 0.992051f, 0.992039f, 0.992027f, 0.992015f, + 0.992003f, 0.991991f, 0.991979f, 0.991966f, 0.991954f, 0.991942f, 0.991930f, 0.991918f, + 0.991906f, 0.991894f, 0.991881f, 0.991869f, 0.991857f, 0.991845f, 0.991832f, 0.991820f, + 0.991808f, 0.991796f, 0.991783f, 0.991771f, 0.991759f, 0.991747f, 0.991734f, 0.991722f, + 0.991710f, 0.991697f, 0.991685f, 0.991673f, 0.991660f, 0.991648f, 0.991636f, 0.991623f, + 0.991611f, 0.991598f, 0.991586f, 0.991574f, 0.991561f, 0.991549f, 0.991536f, 0.991524f, + 0.991511f, 0.991499f, 0.991487f, 0.991474f, 0.991462f, 0.991449f, 0.991437f, 0.991424f, + 0.991411f, 0.991399f, 0.991386f, 0.991374f, 0.991361f, 0.991349f, 0.991336f, 0.991323f, + 0.991311f, 0.991298f, 0.991286f, 0.991273f, 0.991260f, 0.991248f, 0.991235f, 0.991222f, + 0.991210f, 0.991197f, 0.991184f, 0.991172f, 0.991159f, 0.991146f, 0.991133f, 0.991121f, + 0.991108f, 0.991095f, 0.991082f, 0.991070f, 0.991057f, 0.991044f, 0.991031f, 0.991018f, + 0.991006f, 0.990993f, 0.990980f, 0.990967f, 0.990954f, 0.990941f, 0.990928f, 0.990916f, + 0.990903f, 0.990890f, 0.990877f, 0.990864f, 0.990851f, 0.990838f, 0.990825f, 0.990812f, + 0.990799f, 0.990786f, 0.990773f, 0.990760f, 0.990747f, 0.990734f, 0.990721f, 0.990708f, + 0.990695f, 0.990682f, 0.990669f, 0.990656f, 0.990643f, 0.990630f, 0.990617f, 0.990603f, + 0.990590f, 0.990577f, 0.990564f, 0.990551f, 0.990538f, 0.990525f, 0.990511f, 0.990498f, + 0.990485f, 0.990472f, 0.990459f, 0.990445f, 0.990432f, 0.990419f, 0.990406f, 0.990393f, + 0.990379f, 0.990366f, 0.990353f, 0.990339f, 0.990326f, 0.990313f, 0.990299f, 0.990286f, + 0.990273f, 0.990259f, 0.990246f, 0.990233f, 0.990219f, 0.990206f, 0.990193f, 0.990179f, + 0.990166f, 0.990152f, 0.990139f, 0.990126f, 0.990112f, 0.990099f, 0.990085f, 0.990072f, + 0.990058f, 0.990045f, 0.990031f, 0.990018f, 0.990004f, 0.989991f, 0.989977f, 0.989964f, + 0.989950f, 0.989936f, 0.989923f, 0.989909f, 0.989896f, 0.989882f, 0.989869f, 0.989855f, + 0.989841f, 0.989828f, 0.989814f, 0.989800f, 0.989787f, 0.989773f, 0.989759f, 0.989746f, + 0.989732f, 0.989718f, 0.989704f, 0.989691f, 0.989677f, 0.989663f, 0.989650f, 0.989636f, + 0.989622f, 0.989608f, 0.989594f, 0.989581f, 0.989567f, 0.989553f, 0.989539f, 0.989525f, + 0.989511f, 0.989498f, 0.989484f, 0.989470f, 0.989456f, 0.989442f, 0.989428f, 0.989414f, + 0.989400f, 0.989386f, 0.989373f, 0.989359f, 0.989345f, 0.989331f, 0.989317f, 0.989303f, + 0.989289f, 0.989275f, 0.989261f, 0.989247f, 0.989233f, 0.989219f, 0.989205f, 0.989191f, + 0.989177f, 0.989162f, 0.989148f, 0.989134f, 0.989120f, 0.989106f, 0.989092f, 0.989078f, + 0.989064f, 0.989050f, 0.989035f, 0.989021f, 0.989007f, 0.988993f, 0.988979f, 0.988964f, + 0.988950f, 0.988936f, 0.988922f, 0.988908f, 0.988893f, 0.988879f, 0.988865f, 0.988851f, + 0.988836f, 0.988822f, 0.988808f, 0.988793f, 0.988779f, 0.988765f, 0.988750f, 0.988736f, + 0.988722f, 0.988707f, 0.988693f, 0.988679f, 0.988664f, 0.988650f, 0.988635f, 0.988621f, + 0.988607f, 0.988592f, 0.988578f, 0.988563f, 0.988549f, 0.988534f, 0.988520f, 0.988505f, + 0.988491f, 0.988476f, 0.988462f, 0.988447f, 0.988433f, 0.988418f, 0.988404f, 0.988389f, + 0.988374f, 0.988360f, 0.988345f, 0.988331f, 0.988316f, 0.988301f, 0.988287f, 0.988272f, + 0.988258f, 0.988243f, 0.988228f, 0.988214f, 0.988199f, 0.988184f, 0.988169f, 0.988155f, + 0.988140f, 0.988125f, 0.988111f, 0.988096f, 0.988081f, 0.988066f, 0.988052f, 0.988037f, + 0.988022f, 0.988007f, 0.987992f, 0.987978f, 0.987963f, 0.987948f, 0.987933f, 0.987918f, + 0.987903f, 0.987889f, 0.987874f, 0.987859f, 0.987844f, 0.987829f, 0.987814f, 0.987799f, + 0.987784f, 0.987769f, 0.987754f, 0.987739f, 0.987724f, 0.987709f, 0.987694f, 0.987679f, + 0.987664f, 0.987649f, 0.987634f, 0.987619f, 0.987604f, 0.987589f, 0.987574f, 0.987559f, + 0.987544f, 0.987529f, 0.987514f, 0.987499f, 0.987484f, 0.987468f, 0.987453f, 0.987438f, + 0.987423f, 0.987408f, 0.987393f, 0.987377f, 0.987362f, 0.987347f, 0.987332f, 0.987317f, + 0.987301f, 0.987286f, 0.987271f, 0.987256f, 0.987240f, 0.987225f, 0.987210f, 0.987195f, + 0.987179f, 0.987164f, 0.987149f, 0.987133f, 0.987118f, 0.987103f, 0.987087f, 0.987072f, + 0.987057f, 0.987041f, 0.987026f, 0.987010f, 0.986995f, 0.986980f, 0.986964f, 0.986949f, + 0.986933f, 0.986918f, 0.986902f, 0.986887f, 0.986871f, 0.986856f, 0.986840f, 0.986825f, + 0.986809f, 0.986794f, 0.986778f, 0.986763f, 0.986747f, 0.986732f, 0.986716f, 0.986701f, + 0.986685f, 0.986669f, 0.986654f, 0.986638f, 0.986623f, 0.986607f, 0.986591f, 0.986576f, + 0.986560f, 0.986544f, 0.986529f, 0.986513f, 0.986497f, 0.986481f, 0.986466f, 0.986450f, + 0.986434f, 0.986419f, 0.986403f, 0.986387f, 0.986371f, 0.986355f, 0.986340f, 0.986324f, + 0.986308f, 0.986292f, 0.986276f, 0.986261f, 0.986245f, 0.986229f, 0.986213f, 0.986197f, + 0.986181f, 0.986165f, 0.986150f, 0.986134f, 0.986118f, 0.986102f, 0.986086f, 0.986070f, + 0.986054f, 0.986038f, 0.986022f, 0.986006f, 0.985990f, 0.985974f, 0.985958f, 0.985942f, + 0.985926f, 0.985910f, 0.985894f, 0.985878f, 0.985862f, 0.985846f, 0.985830f, 0.985814f, + 0.985798f, 0.985781f, 0.985765f, 0.985749f, 0.985733f, 0.985717f, 0.985701f, 0.985685f, + 0.985668f, 0.985652f, 0.985636f, 0.985620f, 0.985604f, 0.985587f, 0.985571f, 0.985555f, + 0.985539f, 0.985523f, 0.985506f, 0.985490f, 0.985474f, 0.985457f, 0.985441f, 0.985425f, + 0.985408f, 0.985392f, 0.985376f, 0.985359f, 0.985343f, 0.985327f, 0.985310f, 0.985294f, + 0.985278f, 0.985261f, 0.985245f, 0.985228f, 0.985212f, 0.985196f, 0.985179f, 0.985163f, + 0.985146f, 0.985130f, 0.985113f, 0.985097f, 0.985080f, 0.985064f, 0.985047f, 0.985031f, + 0.985014f, 0.984998f, 0.984981f, 0.984965f, 0.984948f, 0.984931f, 0.984915f, 0.984898f, + 0.984882f, 0.984865f, 0.984848f, 0.984832f, 0.984815f, 0.984798f, 0.984782f, 0.984765f, + 0.984748f, 0.984732f, 0.984715f, 0.984698f, 0.984682f, 0.984665f, 0.984648f, 0.984632f, + 0.984615f, 0.984598f, 0.984581f, 0.984564f, 0.984548f, 0.984531f, 0.984514f, 0.984497f, + 0.984480f, 0.984464f, 0.984447f, 0.984430f, 0.984413f, 0.984396f, 0.984379f, 0.984362f, + 0.984346f, 0.984329f, 0.984312f, 0.984295f, 0.984278f, 0.984261f, 0.984244f, 0.984227f, + 0.984210f, 0.984193f, 0.984176f, 0.984159f, 0.984142f, 0.984125f, 0.984108f, 0.984091f, + 0.984074f, 0.984057f, 0.984040f, 0.984023f, 0.984006f, 0.983989f, 0.983972f, 0.983955f, + 0.983937f, 0.983920f, 0.983903f, 0.983886f, 0.983869f, 0.983852f, 0.983835f, 0.983817f, + 0.983800f, 0.983783f, 0.983766f, 0.983749f, 0.983731f, 0.983714f, 0.983697f, 0.983680f, + 0.983662f, 0.983645f, 0.983628f, 0.983611f, 0.983593f, 0.983576f, 0.983559f, 0.983541f, + 0.983524f, 0.983507f, 0.983489f, 0.983472f, 0.983455f, 0.983437f, 0.983420f, 0.983402f, + 0.983385f, 0.983368f, 0.983350f, 0.983333f, 0.983315f, 0.983298f, 0.983281f, 0.983263f, + 0.983246f, 0.983228f, 0.983211f, 0.983193f, 0.983176f, 0.983158f, 0.983141f, 0.983123f, + 0.983105f, 0.983088f, 0.983070f, 0.983053f, 0.983035f, 0.983018f, 0.983000f, 0.982982f, + 0.982965f, 0.982947f, 0.982930f, 0.982912f, 0.982894f, 0.982877f, 0.982859f, 0.982841f, + 0.982824f, 0.982806f, 0.982788f, 0.982770f, 0.982753f, 0.982735f, 0.982717f, 0.982699f, + 0.982682f, 0.982664f, 0.982646f, 0.982628f, 0.982611f, 0.982593f, 0.982575f, 0.982557f, + 0.982539f, 0.982521f, 0.982504f, 0.982486f, 0.982468f, 0.982450f, 0.982432f, 0.982414f, + 0.982396f, 0.982378f, 0.982360f, 0.982343f, 0.982325f, 0.982307f, 0.982289f, 0.982271f, + 0.982253f, 0.982235f, 0.982217f, 0.982199f, 0.982181f, 0.982163f, 0.982145f, 0.982127f, + 0.982109f, 0.982091f, 0.982072f, 0.982054f, 0.982036f, 0.982018f, 0.982000f, 0.981982f, + 0.981964f, 0.981946f, 0.981928f, 0.981909f, 0.981891f, 0.981873f, 0.981855f, 0.981837f, + 0.981819f, 0.981800f, 0.981782f, 0.981764f, 0.981746f, 0.981727f, 0.981709f, 0.981691f, + 0.981673f, 0.981654f, 0.981636f, 0.981618f, 0.981600f, 0.981581f, 0.981563f, 0.981545f, + 0.981526f, 0.981508f, 0.981490f, 0.981471f, 0.981453f, 0.981434f, 0.981416f, 0.981398f, + 0.981379f, 0.981361f, 0.981342f, 0.981324f, 0.981305f, 0.981287f, 0.981269f, 0.981250f, + 0.981232f, 0.981213f, 0.981195f, 0.981176f, 0.981158f, 0.981139f, 0.981120f, 0.981102f, + 0.981083f, 0.981065f, 0.981046f, 0.981028f, 0.981009f, 0.980990f, 0.980972f, 0.980953f, + 0.980935f, 0.980916f, 0.980897f, 0.980879f, 0.980860f, 0.980841f, 0.980823f, 0.980804f, + 0.980785f, 0.980767f, 0.980748f, 0.980729f, 0.980710f, 0.980692f, 0.980673f, 0.980654f, + 0.980635f, 0.980617f, 0.980598f, 0.980579f, 0.980560f, 0.980541f, 0.980523f, 0.980504f, + 0.980485f, 0.980466f, 0.980447f, 0.980428f, 0.980409f, 0.980390f, 0.980372f, 0.980353f, + 0.980334f, 0.980315f, 0.980296f, 0.980277f, 0.980258f, 0.980239f, 0.980220f, 0.980201f, + 0.980182f, 0.980163f, 0.980144f, 0.980125f, 0.980106f, 0.980087f, 0.980068f, 0.980049f, + 0.980030f, 0.980011f, 0.979992f, 0.979973f, 0.979954f, 0.979934f, 0.979915f, 0.979896f, + 0.979877f, 0.979858f, 0.979839f, 0.979820f, 0.979800f, 0.979781f, 0.979762f, 0.979743f, + 0.979724f, 0.979704f, 0.979685f, 0.979666f, 0.979647f, 0.979628f, 0.979608f, 0.979589f, + 0.979570f, 0.979550f, 0.979531f, 0.979512f, 0.979493f, 0.979473f, 0.979454f, 0.979435f, + 0.979415f, 0.979396f, 0.979376f, 0.979357f, 0.979338f, 0.979318f, 0.979299f, 0.979280f, + 0.979260f, 0.979241f, 0.979221f, 0.979202f, 0.979182f, 0.979163f, 0.979143f, 0.979124f, + 0.979104f, 0.979085f, 0.979065f, 0.979046f, 0.979026f, 0.979007f, 0.978987f, 0.978968f, + 0.978948f, 0.978929f, 0.978909f, 0.978889f, 0.978870f, 0.978850f, 0.978831f, 0.978811f, + 0.978791f, 0.978772f, 0.978752f, 0.978732f, 0.978713f, 0.978693f, 0.978673f, 0.978654f, + 0.978634f, 0.978614f, 0.978594f, 0.978575f, 0.978555f, 0.978535f, 0.978516f, 0.978496f, + 0.978476f, 0.978456f, 0.978436f, 0.978417f, 0.978397f, 0.978377f, 0.978357f, 0.978337f, + 0.978317f, 0.978298f, 0.978278f, 0.978258f, 0.978238f, 0.978218f, 0.978198f, 0.978178f, + 0.978158f, 0.978138f, 0.978118f, 0.978098f, 0.978078f, 0.978058f, 0.978038f, 0.978019f, + 0.977998f, 0.977979f, 0.977959f, 0.977938f, 0.977918f, 0.977898f, 0.977878f, 0.977858f, + 0.977838f, 0.977818f, 0.977798f, 0.977778f, 0.977758f, 0.977738f, 0.977718f, 0.977697f, + 0.977677f, 0.977657f, 0.977637f, 0.977617f, 0.977597f, 0.977577f, 0.977556f, 0.977536f, + 0.977516f, 0.977496f, 0.977475f, 0.977455f, 0.977435f, 0.977415f, 0.977394f, 0.977374f, + 0.977354f, 0.977334f, 0.977313f, 0.977293f, 0.977273f, 0.977252f, 0.977232f, 0.977212f, + 0.977191f, 0.977171f, 0.977151f, 0.977130f, 0.977110f, 0.977089f, 0.977069f, 0.977049f, + 0.977028f, 0.977008f, 0.976987f, 0.976967f, 0.976946f, 0.976926f, 0.976905f, 0.976885f, + 0.976864f, 0.976844f, 0.976823f, 0.976803f, 0.976782f, 0.976762f, 0.976741f, 0.976721f, + 0.976700f, 0.976680f, 0.976659f, 0.976638f, 0.976618f, 0.976597f, 0.976576f, 0.976556f, + 0.976535f, 0.976515f, 0.976494f, 0.976473f, 0.976453f, 0.976432f, 0.976411f, 0.976390f, + 0.976370f, 0.976349f, 0.976328f, 0.976308f, 0.976287f, 0.976266f, 0.976245f, 0.976224f, + 0.976204f, 0.976183f, 0.976162f, 0.976141f, 0.976120f, 0.976100f, 0.976079f, 0.976058f, + 0.976037f, 0.976016f, 0.975995f, 0.975974f, 0.975954f, 0.975933f, 0.975912f, 0.975891f, + 0.975870f, 0.975849f, 0.975828f, 0.975807f, 0.975786f, 0.975765f, 0.975744f, 0.975723f, + 0.975702f, 0.975681f, 0.975660f, 0.975639f, 0.975618f, 0.975597f, 0.975576f, 0.975555f, + 0.975534f, 0.975513f, 0.975492f, 0.975471f, 0.975449f, 0.975428f, 0.975407f, 0.975386f, + 0.975365f, 0.975344f, 0.975323f, 0.975301f, 0.975280f, 0.975259f, 0.975238f, 0.975217f, + 0.975195f, 0.975174f, 0.975153f, 0.975132f, 0.975110f, 0.975089f, 0.975068f, 0.975047f, + 0.975025f, 0.975004f, 0.974983f, 0.974961f, 0.974940f, 0.974919f, 0.974897f, 0.974876f, + 0.974855f, 0.974833f, 0.974812f, 0.974791f, 0.974769f, 0.974748f, 0.974726f, 0.974705f, + 0.974684f, 0.974662f, 0.974641f, 0.974619f, 0.974598f, 0.974576f, 0.974555f, 0.974533f, + 0.974512f, 0.974490f, 0.974469f, 0.974447f, 0.974426f, 0.974404f, 0.974383f, 0.974361f, + 0.974339f, 0.974318f, 0.974296f, 0.974275f, 0.974253f, 0.974231f, 0.974210f, 0.974188f, + 0.974166f, 0.974145f, 0.974123f, 0.974101f, 0.974080f, 0.974058f, 0.974036f, 0.974015f, + 0.973993f, 0.973971f, 0.973949f, 0.973928f, 0.973906f, 0.973884f, 0.973862f, 0.973841f, + 0.973819f, 0.973797f, 0.973775f, 0.973753f, 0.973732f, 0.973710f, 0.973688f, 0.973666f, + 0.973644f, 0.973622f, 0.973601f, 0.973579f, 0.973557f, 0.973535f, 0.973513f, 0.973491f, + 0.973469f, 0.973447f, 0.973425f, 0.973403f, 0.973381f, 0.973359f, 0.973337f, 0.973315f, + 0.973293f, 0.973271f, 0.973249f, 0.973227f, 0.973205f, 0.973183f, 0.973161f, 0.973139f, + 0.973117f, 0.973095f, 0.973073f, 0.973051f, 0.973028f, 0.973006f, 0.972984f, 0.972962f, + 0.972940f, 0.972918f, 0.972896f, 0.972873f, 0.972851f, 0.972829f, 0.972807f, 0.972785f, + 0.972762f, 0.972740f, 0.972718f, 0.972696f, 0.972673f, 0.972651f, 0.972629f, 0.972607f, + 0.972584f, 0.972562f, 0.972540f, 0.972517f, 0.972495f, 0.972473f, 0.972450f, 0.972428f, + 0.972406f, 0.972383f, 0.972361f, 0.972339f, 0.972316f, 0.972294f, 0.972271f, 0.972249f, + 0.972227f, 0.972204f, 0.972182f, 0.972159f, 0.972137f, 0.972114f, 0.972092f, 0.972069f, + 0.972047f, 0.972024f, 0.972002f, 0.971979f, 0.971957f, 0.971934f, 0.971911f, 0.971889f, + 0.971866f, 0.971844f, 0.971821f, 0.971799f, 0.971776f, 0.971753f, 0.971731f, 0.971708f, + 0.971685f, 0.971663f, 0.971640f, 0.971617f, 0.971595f, 0.971572f, 0.971549f, 0.971527f, + 0.971504f, 0.971481f, 0.971458f, 0.971436f, 0.971413f, 0.971390f, 0.971367f, 0.971345f, + 0.971322f, 0.971299f, 0.971276f, 0.971253f, 0.971231f, 0.971208f, 0.971185f, 0.971162f, + 0.971139f, 0.971116f, 0.971093f, 0.971071f, 0.971048f, 0.971025f, 0.971002f, 0.970979f, + 0.970956f, 0.970933f, 0.970910f, 0.970887f, 0.970864f, 0.970841f, 0.970818f, 0.970795f, + 0.970772f, 0.970749f, 0.970726f, 0.970703f, 0.970680f, 0.970657f, 0.970634f, 0.970611f, + 0.970588f, 0.970565f, 0.970542f, 0.970518f, 0.970495f, 0.970472f, 0.970449f, 0.970426f, + 0.970403f, 0.970380f, 0.970357f, 0.970333f, 0.970310f, 0.970287f, 0.970264f, 0.970241f, + 0.970217f, 0.970194f, 0.970171f, 0.970148f, 0.970124f, 0.970101f, 0.970078f, 0.970055f, + 0.970031f, 0.970008f, 0.969985f, 0.969961f, 0.969938f, 0.969915f, 0.969891f, 0.969868f, + 0.969845f, 0.969821f, 0.969798f, 0.969774f, 0.969751f, 0.969728f, 0.969704f, 0.969681f, + 0.969657f, 0.969634f, 0.969611f, 0.969587f, 0.969564f, 0.969540f, 0.969517f, 0.969493f, + 0.969470f, 0.969446f, 0.969423f, 0.969399f, 0.969375f, 0.969352f, 0.969328f, 0.969305f, + 0.969281f, 0.969258f, 0.969234f, 0.969210f, 0.969187f, 0.969163f, 0.969140f, 0.969116f, + 0.969092f, 0.969069f, 0.969045f, 0.969021f, 0.968998f, 0.968974f, 0.968950f, 0.968927f, + 0.968903f, 0.968879f, 0.968855f, 0.968832f, 0.968808f, 0.968784f, 0.968760f, 0.968737f, + 0.968713f, 0.968689f, 0.968665f, 0.968641f, 0.968617f, 0.968594f, 0.968570f, 0.968546f, + 0.968522f, 0.968498f, 0.968474f, 0.968450f, 0.968427f, 0.968403f, 0.968379f, 0.968355f, + 0.968331f, 0.968307f, 0.968283f, 0.968259f, 0.968235f, 0.968211f, 0.968187f, 0.968163f, + 0.968139f, 0.968115f, 0.968091f, 0.968067f, 0.968043f, 0.968019f, 0.967995f, 0.967971f, + 0.967947f, 0.967923f, 0.967899f, 0.967874f, 0.967850f, 0.967826f, 0.967802f, 0.967778f, + 0.967754f, 0.967730f, 0.967706f, 0.967681f, 0.967657f, 0.967633f, 0.967609f, 0.967585f, + 0.967560f, 0.967536f, 0.967512f, 0.967488f, 0.967463f, 0.967439f, 0.967415f, 0.967391f, + 0.967366f, 0.967342f, 0.967318f, 0.967293f, 0.967269f, 0.967245f, 0.967220f, 0.967196f, + 0.967172f, 0.967147f, 0.967123f, 0.967099f, 0.967074f, 0.967050f, 0.967025f, 0.967001f, + 0.966976f, 0.966952f, 0.966928f, 0.966903f, 0.966879f, 0.966854f, 0.966830f, 0.966805f, + 0.966781f, 0.966756f, 0.966732f, 0.966707f, 0.966683f, 0.966658f, 0.966633f, 0.966609f, + 0.966584f, 0.966560f, 0.966535f, 0.966511f, 0.966486f, 0.966461f, 0.966437f, 0.966412f, + 0.966387f, 0.966363f, 0.966338f, 0.966313f, 0.966289f, 0.966264f, 0.966239f, 0.966215f, + 0.966190f, 0.966165f, 0.966141f, 0.966116f, 0.966091f, 0.966066f, 0.966042f, 0.966017f, + 0.965992f, 0.965967f, 0.965942f, 0.965918f, 0.965893f, 0.965868f, 0.965843f, 0.965818f, + 0.965793f, 0.965769f, 0.965744f, 0.965719f, 0.965694f, 0.965669f, 0.965644f, 0.965619f, + 0.965594f, 0.965569f, 0.965544f, 0.965519f, 0.965494f, 0.965469f, 0.965444f, 0.965419f, + 0.965394f, 0.965369f, 0.965344f, 0.965319f, 0.965294f, 0.965269f, 0.965244f, 0.965219f, + 0.965194f, 0.965169f, 0.965144f, 0.965119f, 0.965094f, 0.965069f, 0.965044f, 0.965018f, + 0.964993f, 0.964968f, 0.964943f, 0.964918f, 0.964893f, 0.964867f, 0.964842f, 0.964817f, + 0.964792f, 0.964767f, 0.964741f, 0.964716f, 0.964691f, 0.964666f, 0.964640f, 0.964615f, + 0.964590f, 0.964565f, 0.964539f, 0.964514f, 0.964489f, 0.964463f, 0.964438f, 0.964413f, + 0.964387f, 0.964362f, 0.964336f, 0.964311f, 0.964286f, 0.964260f, 0.964235f, 0.964209f, + 0.964184f, 0.964159f, 0.964133f, 0.964108f, 0.964082f, 0.964057f, 0.964031f, 0.964006f, + 0.963980f, 0.963955f, 0.963929f, 0.963904f, 0.963878f, 0.963853f, 0.963827f, 0.963802f, + 0.963776f, 0.963750f, 0.963725f, 0.963699f, 0.963674f, 0.963648f, 0.963623f, 0.963597f, + 0.963571f, 0.963546f, 0.963520f, 0.963494f, 0.963469f, 0.963443f, 0.963417f, 0.963391f, + 0.963366f, 0.963340f, 0.963314f, 0.963289f, 0.963263f, 0.963237f, 0.963211f, 0.963186f, + 0.963160f, 0.963134f, 0.963108f, 0.963082f, 0.963057f, 0.963031f, 0.963005f, 0.962979f, + 0.962953f, 0.962927f, 0.962902f, 0.962876f, 0.962850f, 0.962824f, 0.962798f, 0.962772f, + 0.962746f, 0.962720f, 0.962694f, 0.962668f, 0.962642f, 0.962616f, 0.962590f, 0.962564f, + 0.962538f, 0.962512f, 0.962486f, 0.962460f, 0.962434f, 0.962408f, 0.962382f, 0.962356f, + 0.962330f, 0.962304f, 0.962278f, 0.962252f, 0.962226f, 0.962200f, 0.962174f, 0.962148f, + 0.962121f, 0.962095f, 0.962069f, 0.962043f, 0.962017f, 0.961991f, 0.961964f, 0.961938f, + 0.961912f, 0.961886f, 0.961860f, 0.961833f, 0.961807f, 0.961781f, 0.961755f, 0.961728f, + 0.961702f, 0.961676f, 0.961649f, 0.961623f, 0.961597f, 0.961571f, 0.961544f, 0.961518f, + 0.961492f, 0.961465f, 0.961439f, 0.961412f, 0.961386f, 0.961360f, 0.961333f, 0.961307f, + 0.961280f, 0.961254f, 0.961228f, 0.961201f, 0.961175f, 0.961148f, 0.961122f, 0.961095f, + 0.961069f, 0.961042f, 0.961016f, 0.960989f, 0.960963f, 0.960936f, 0.960910f, 0.960883f, + 0.960857f, 0.960830f, 0.960804f, 0.960777f, 0.960750f, 0.960724f, 0.960697f, 0.960670f, + 0.960644f, 0.960617f, 0.960591f, 0.960564f, 0.960537f, 0.960511f, 0.960484f, 0.960457f, + 0.960431f, 0.960404f, 0.960377f, 0.960350f, 0.960324f, 0.960297f, 0.960270f, 0.960243f, + 0.960217f, 0.960190f, 0.960163f, 0.960136f, 0.960109f, 0.960083f, 0.960056f, 0.960029f, + 0.960002f, 0.959975f, 0.959948f, 0.959922f, 0.959895f, 0.959868f, 0.959841f, 0.959814f, + 0.959787f, 0.959760f, 0.959733f, 0.959706f, 0.959679f, 0.959652f, 0.959625f, 0.959598f, + 0.959572f, 0.959545f, 0.959518f, 0.959491f, 0.959463f, 0.959436f, 0.959409f, 0.959382f, + 0.959355f, 0.959328f, 0.959301f, 0.959274f, 0.959247f, 0.959220f, 0.959193f, 0.959166f, + 0.959139f, 0.959112f, 0.959084f, 0.959057f, 0.959030f, 0.959003f, 0.958976f, 0.958949f, + 0.958921f, 0.958894f, 0.958867f, 0.958840f, 0.958812f, 0.958785f, 0.958758f, 0.958731f, + 0.958703f, 0.958676f, 0.958649f, 0.958622f, 0.958594f, 0.958567f, 0.958540f, 0.958512f, + 0.958485f, 0.958458f, 0.958430f, 0.958403f, 0.958376f, 0.958348f, 0.958321f, 0.958293f, + 0.958266f, 0.958239f, 0.958211f, 0.958184f, 0.958156f, 0.958129f, 0.958101f, 0.958074f, + 0.958046f, 0.958019f, 0.957992f, 0.957964f, 0.957937f, 0.957909f, 0.957882f, 0.957854f, + 0.957826f, 0.957799f, 0.957771f, 0.957744f, 0.957716f, 0.957689f, 0.957661f, 0.957633f, + 0.957606f, 0.957578f, 0.957550f, 0.957523f, 0.957495f, 0.957468f, 0.957440f, 0.957412f, + 0.957385f, 0.957357f, 0.957329f, 0.957301f, 0.957274f, 0.957246f, 0.957218f, 0.957190f, + 0.957163f, 0.957135f, 0.957107f, 0.957079f, 0.957052f, 0.957024f, 0.956996f, 0.956968f, + 0.956940f, 0.956913f, 0.956885f, 0.956857f, 0.956829f, 0.956801f, 0.956773f, 0.956745f, + 0.956717f, 0.956689f, 0.956662f, 0.956634f, 0.956606f, 0.956578f, 0.956550f, 0.956522f, + 0.956494f, 0.956466f, 0.956438f, 0.956410f, 0.956382f, 0.956354f, 0.956326f, 0.956298f, + 0.956270f, 0.956242f, 0.956214f, 0.956186f, 0.956158f, 0.956130f, 0.956101f, 0.956073f, + 0.956045f, 0.956017f, 0.955989f, 0.955961f, 0.955933f, 0.955905f, 0.955876f, 0.955848f, + 0.955820f, 0.955792f, 0.955764f, 0.955736f, 0.955707f, 0.955679f, 0.955651f, 0.955623f, + 0.955594f, 0.955566f, 0.955538f, 0.955510f, 0.955481f, 0.955453f, 0.955425f, 0.955396f, + 0.955368f, 0.955340f, 0.955311f, 0.955283f, 0.955255f, 0.955226f, 0.955198f, 0.955170f, + 0.955141f, 0.955113f, 0.955084f, 0.955056f, 0.955028f, 0.954999f, 0.954971f, 0.954942f, + 0.954914f, 0.954885f, 0.954857f, 0.954828f, 0.954800f, 0.954771f, 0.954743f, 0.954714f, + 0.954686f, 0.954657f, 0.954629f, 0.954600f, 0.954572f, 0.954543f, 0.954514f, 0.954486f, + 0.954457f, 0.954429f, 0.954400f, 0.954371f, 0.954343f, 0.954314f, 0.954285f, 0.954257f, + 0.954228f, 0.954199f, 0.954171f, 0.954142f, 0.954113f, 0.954085f, 0.954056f, 0.954027f, + 0.953998f, 0.953970f, 0.953941f, 0.953912f, 0.953883f, 0.953855f, 0.953826f, 0.953797f, + 0.953768f, 0.953739f, 0.953711f, 0.953682f, 0.953653f, 0.953624f, 0.953595f, 0.953566f, + 0.953537f, 0.953508f, 0.953480f, 0.953451f, 0.953422f, 0.953393f, 0.953364f, 0.953335f, + 0.953306f, 0.953277f, 0.953248f, 0.953219f, 0.953190f, 0.953161f, 0.953132f, 0.953103f, + 0.953074f, 0.953045f, 0.953016f, 0.952987f, 0.952958f, 0.952929f, 0.952900f, 0.952871f, + 0.952842f, 0.952813f, 0.952783f, 0.952754f, 0.952725f, 0.952696f, 0.952667f, 0.952638f, + 0.952609f, 0.952579f, 0.952550f, 0.952521f, 0.952492f, 0.952463f, 0.952433f, 0.952404f, + 0.952375f, 0.952346f, 0.952317f, 0.952287f, 0.952258f, 0.952229f, 0.952199f, 0.952170f, + 0.952141f, 0.952112f, 0.952082f, 0.952053f, 0.952024f, 0.951994f, 0.951965f, 0.951936f, + 0.951906f, 0.951877f, 0.951847f, 0.951818f, 0.951789f, 0.951759f, 0.951730f, 0.951700f, + 0.951671f, 0.951641f, 0.951612f, 0.951582f, 0.951553f, 0.951524f, 0.951494f, 0.951465f, + 0.951435f, 0.951406f, 0.951376f, 0.951346f, 0.951317f, 0.951287f, 0.951258f, 0.951228f, + 0.951199f, 0.951169f, 0.951139f, 0.951110f, 0.951080f, 0.951051f, 0.951021f, 0.950991f, + 0.950962f, 0.950932f, 0.950902f, 0.950873f, 0.950843f, 0.950813f, 0.950784f, 0.950754f, + 0.950724f, 0.950694f, 0.950665f, 0.950635f, 0.950605f, 0.950575f, 0.950546f, 0.950516f, + 0.950486f, 0.950456f, 0.950426f, 0.950397f, 0.950367f, 0.950337f, 0.950307f, 0.950277f, + 0.950247f, 0.950218f, 0.950188f, 0.950158f, 0.950128f, 0.950098f, 0.950068f, 0.950038f, + 0.950008f, 0.949978f, 0.949948f, 0.949918f, 0.949888f, 0.949858f, 0.949829f, 0.949798f, + 0.949768f, 0.949739f, 0.949708f, 0.949678f, 0.949648f, 0.949618f, 0.949588f, 0.949558f, + 0.949528f, 0.949498f, 0.949468f, 0.949438f, 0.949408f, 0.949378f, 0.949348f, 0.949317f, + 0.949287f, 0.949257f, 0.949227f, 0.949197f, 0.949167f, 0.949136f, 0.949106f, 0.949076f, + 0.949046f, 0.949016f, 0.948985f, 0.948955f, 0.948925f, 0.948895f, 0.948864f, 0.948834f, + 0.948804f, 0.948774f, 0.948743f, 0.948713f, 0.948683f, 0.948652f, 0.948622f, 0.948592f, + 0.948561f, 0.948531f, 0.948501f, 0.948470f, 0.948440f, 0.948409f, 0.948379f, 0.948349f, + 0.948318f, 0.948288f, 0.948257f, 0.948227f, 0.948196f, 0.948166f, 0.948136f, 0.948105f, + 0.948075f, 0.948044f, 0.948014f, 0.947983f, 0.947953f, 0.947922f, 0.947891f, 0.947861f, + 0.947830f, 0.947800f, 0.947769f, 0.947739f, 0.947708f, 0.947677f, 0.947647f, 0.947616f, + 0.947586f, 0.947555f, 0.947524f, 0.947494f, 0.947463f, 0.947432f, 0.947402f, 0.947371f, + 0.947340f, 0.947310f, 0.947279f, 0.947248f, 0.947217f, 0.947187f, 0.947156f, 0.947125f, + 0.947094f, 0.947064f, 0.947033f, 0.947002f, 0.946971f, 0.946940f, 0.946910f, 0.946879f, + 0.946848f, 0.946817f, 0.946786f, 0.946755f, 0.946724f, 0.946694f, 0.946663f, 0.946632f, + 0.946601f, 0.946570f, 0.946539f, 0.946508f, 0.946477f, 0.946446f, 0.946415f, 0.946384f, + 0.946353f, 0.946322f, 0.946291f, 0.946260f, 0.946229f, 0.946198f, 0.946167f, 0.946136f, + 0.946105f, 0.946074f, 0.946043f, 0.946012f, 0.945981f, 0.945950f, 0.945919f, 0.945888f, + 0.945857f, 0.945825f, 0.945794f, 0.945763f, 0.945732f, 0.945701f, 0.945670f, 0.945639f, + 0.945607f, 0.945576f, 0.945545f, 0.945514f, 0.945482f, 0.945451f, 0.945420f, 0.945389f, + 0.945358f, 0.945326f, 0.945295f, 0.945264f, 0.945232f, 0.945201f, 0.945170f, 0.945139f, + 0.945107f, 0.945076f, 0.945045f, 0.945013f, 0.944982f, 0.944950f, 0.944919f, 0.944888f, + 0.944856f, 0.944825f, 0.944793f, 0.944762f, 0.944731f, 0.944699f, 0.944668f, 0.944636f, + 0.944605f, 0.944573f, 0.944542f, 0.944510f, 0.944479f, 0.944447f, 0.944416f, 0.944384f, + 0.944353f, 0.944321f, 0.944290f, 0.944258f, 0.944227f, 0.944195f, 0.944163f, 0.944132f, + 0.944100f, 0.944069f, 0.944037f, 0.944005f, 0.943974f, 0.943942f, 0.943910f, 0.943879f, + 0.943847f, 0.943815f, 0.943784f, 0.943752f, 0.943720f, 0.943689f, 0.943657f, 0.943625f, + 0.943593f, 0.943562f, 0.943530f, 0.943498f, 0.943466f, 0.943435f, 0.943403f, 0.943371f, + 0.943339f, 0.943307f, 0.943276f, 0.943244f, 0.943212f, 0.943180f, 0.943148f, 0.943116f, + 0.943084f, 0.943053f, 0.943021f, 0.942989f, 0.942957f, 0.942925f, 0.942893f, 0.942861f, + 0.942829f, 0.942797f, 0.942765f, 0.942733f, 0.942701f, 0.942669f, 0.942637f, 0.942605f, + 0.942573f, 0.942541f, 0.942509f, 0.942477f, 0.942445f, 0.942413f, 0.942381f, 0.942349f, + 0.942317f, 0.942285f, 0.942253f, 0.942220f, 0.942188f, 0.942156f, 0.942124f, 0.942092f, + 0.942060f, 0.942028f, 0.941995f, 0.941963f, 0.941931f, 0.941899f, 0.941867f, 0.941834f, + 0.941802f, 0.941770f, 0.941738f, 0.941705f, 0.941673f, 0.941641f, 0.941609f, 0.941576f, + 0.941544f, 0.941512f, 0.941479f, 0.941447f, 0.941415f, 0.941382f, 0.941350f, 0.941318f, + 0.941285f, 0.941253f, 0.941221f, 0.941188f, 0.941156f, 0.941123f, 0.941091f, 0.941059f, + 0.941026f, 0.940994f, 0.940961f, 0.940929f, 0.940896f, 0.940864f, 0.940831f, 0.940799f, + 0.940766f, 0.940734f, 0.940701f, 0.940669f, 0.940636f, 0.940604f, 0.940571f, 0.940539f, + 0.940506f, 0.940473f, 0.940441f, 0.940408f, 0.940376f, 0.940343f, 0.940310f, 0.940278f, + 0.940245f, 0.940213f, 0.940180f, 0.940147f, 0.940115f, 0.940082f, 0.940049f, 0.940016f, + 0.939984f, 0.939951f, 0.939918f, 0.939886f, 0.939853f, 0.939820f, 0.939787f, 0.939755f, + 0.939722f, 0.939689f, 0.939656f, 0.939623f, 0.939591f, 0.939558f, 0.939525f, 0.939492f, + 0.939459f, 0.939426f, 0.939394f, 0.939361f, 0.939328f, 0.939295f, 0.939262f, 0.939229f, + 0.939196f, 0.939163f, 0.939130f, 0.939097f, 0.939064f, 0.939031f, 0.938998f, 0.938965f, + 0.938932f, 0.938900f, 0.938866f, 0.938833f, 0.938800f, 0.938767f, 0.938734f, 0.938701f, + 0.938668f, 0.938635f, 0.938602f, 0.938569f, 0.938536f, 0.938503f, 0.938470f, 0.938437f, + 0.938404f, 0.938370f, 0.938337f, 0.938304f, 0.938271f, 0.938238f, 0.938205f, 0.938171f, + 0.938138f, 0.938105f, 0.938072f, 0.938039f, 0.938005f, 0.937972f, 0.937939f, 0.937906f, + 0.937872f, 0.937839f, 0.937806f, 0.937773f, 0.937739f, 0.937706f, 0.937673f, 0.937639f, + 0.937606f, 0.937573f, 0.937539f, 0.937506f, 0.937473f, 0.937439f, 0.937406f, 0.937372f, + 0.937339f, 0.937306f, 0.937272f, 0.937239f, 0.937205f, 0.937172f, 0.937138f, 0.937105f, + 0.937072f, 0.937038f, 0.937005f, 0.936971f, 0.936938f, 0.936904f, 0.936871f, 0.936837f, + 0.936803f, 0.936770f, 0.936736f, 0.936703f, 0.936669f, 0.936636f, 0.936602f, 0.936568f, + 0.936535f, 0.936501f, 0.936468f, 0.936434f, 0.936400f, 0.936367f, 0.936333f, 0.936299f, + 0.936266f, 0.936232f, 0.936198f, 0.936165f, 0.936131f, 0.936097f, 0.936063f, 0.936030f, + 0.935996f, 0.935962f, 0.935928f, 0.935895f, 0.935861f, 0.935827f, 0.935793f, 0.935759f, + 0.935726f, 0.935692f, 0.935658f, 0.935624f, 0.935590f, 0.935556f, 0.935523f, 0.935489f, + 0.935455f, 0.935421f, 0.935387f, 0.935353f, 0.935319f, 0.935285f, 0.935251f, 0.935217f, + 0.935184f, 0.935150f, 0.935116f, 0.935082f, 0.935048f, 0.935014f, 0.934980f, 0.934946f, + 0.934912f, 0.934878f, 0.934844f, 0.934810f, 0.934775f, 0.934741f, 0.934707f, 0.934673f, + 0.934639f, 0.934605f, 0.934571f, 0.934537f, 0.934503f, 0.934469f, 0.934434f, 0.934400f, + 0.934366f, 0.934332f, 0.934298f, 0.934264f, 0.934229f, 0.934195f, 0.934161f, 0.934127f, + 0.934093f, 0.934058f, 0.934024f, 0.933990f, 0.933956f, 0.933921f, 0.933887f, 0.933853f, + 0.933818f, 0.933784f, 0.933750f, 0.933716f, 0.933681f, 0.933647f, 0.933612f, 0.933578f, + 0.933544f, 0.933509f, 0.933475f, 0.933441f, 0.933406f, 0.933372f, 0.933337f, 0.933303f, + 0.933269f, 0.933234f, 0.933200f, 0.933165f, 0.933131f, 0.933096f, 0.933062f, 0.933027f, + 0.932993f, 0.932958f, 0.932924f, 0.932889f, 0.932855f, 0.932820f, 0.932786f, 0.932751f, + 0.932716f, 0.932682f, 0.932647f, 0.932613f, 0.932578f, 0.932544f, 0.932509f, 0.932474f, + 0.932440f, 0.932405f, 0.932370f, 0.932336f, 0.932301f, 0.932266f, 0.932232f, 0.932197f, + 0.932162f, 0.932128f, 0.932093f, 0.932058f, 0.932023f, 0.931989f, 0.931954f, 0.931919f, + 0.931884f, 0.931849f, 0.931815f, 0.931780f, 0.931745f, 0.931710f, 0.931675f, 0.931641f, + 0.931606f, 0.931571f, 0.931536f, 0.931501f, 0.931466f, 0.931431f, 0.931397f, 0.931362f, + 0.931327f, 0.931292f, 0.931257f, 0.931222f, 0.931187f, 0.931152f, 0.931117f, 0.931082f, + 0.931047f, 0.931012f, 0.930977f, 0.930942f, 0.930907f, 0.930872f, 0.930837f, 0.930802f, + 0.930767f, 0.930732f, 0.930697f, 0.930662f, 0.930627f, 0.930592f, 0.930556f, 0.930521f, + 0.930486f, 0.930451f, 0.930416f, 0.930381f, 0.930346f, 0.930311f, 0.930275f, 0.930240f, + 0.930205f, 0.930170f, 0.930135f, 0.930099f, 0.930064f, 0.930029f, 0.929994f, 0.929958f, + 0.929923f, 0.929888f, 0.929853f, 0.929817f, 0.929782f, 0.929747f, 0.929712f, 0.929676f, + 0.929641f, 0.929606f, 0.929570f, 0.929535f, 0.929500f, 0.929464f, 0.929429f, 0.929393f, + 0.929358f, 0.929323f, 0.929287f, 0.929252f, 0.929216f, 0.929181f, 0.929146f, 0.929110f, + 0.929075f, 0.929039f, 0.929004f, 0.928968f, 0.928933f, 0.928897f, 0.928862f, 0.928826f, + 0.928791f, 0.928755f, 0.928720f, 0.928684f, 0.928648f, 0.928613f, 0.928577f, 0.928542f, + 0.928506f, 0.928470f, 0.928435f, 0.928399f, 0.928364f, 0.928328f, 0.928292f, 0.928257f, + 0.928221f, 0.928185f, 0.928150f, 0.928114f, 0.928078f, 0.928043f, 0.928007f, 0.927971f, + 0.927935f, 0.927900f, 0.927864f, 0.927828f, 0.927792f, 0.927757f, 0.927721f, 0.927685f, + 0.927649f, 0.927613f, 0.927578f, 0.927542f, 0.927506f, 0.927470f, 0.927434f, 0.927398f, + 0.927363f, 0.927327f, 0.927291f, 0.927255f, 0.927219f, 0.927183f, 0.927147f, 0.927111f, + 0.927075f, 0.927039f, 0.927003f, 0.926967f, 0.926931f, 0.926895f, 0.926859f, 0.926823f, + 0.926787f, 0.926751f, 0.926715f, 0.926679f, 0.926643f, 0.926607f, 0.926571f, 0.926535f, + 0.926499f, 0.926463f, 0.926427f, 0.926391f, 0.926355f, 0.926319f, 0.926283f, 0.926246f, + 0.926210f, 0.926174f, 0.926138f, 0.926102f, 0.926066f, 0.926029f, 0.925993f, 0.925957f, + 0.925921f, 0.925885f, 0.925848f, 0.925812f, 0.925776f, 0.925740f, 0.925703f, 0.925667f, + 0.925631f, 0.925595f, 0.925558f, 0.925522f, 0.925486f, 0.925449f, 0.925413f, 0.925377f, + 0.925340f, 0.925304f, 0.925268f, 0.925231f, 0.925195f, 0.925158f, 0.925122f, 0.925086f, + 0.925049f, 0.925013f, 0.924976f, 0.924940f, 0.924904f, 0.924867f, 0.924831f, 0.924794f, + 0.924758f, 0.924721f, 0.924685f, 0.924648f, 0.924612f, 0.924575f, 0.924539f, 0.924502f, + 0.924465f, 0.924429f, 0.924392f, 0.924356f, 0.924319f, 0.924283f, 0.924246f, 0.924209f, + 0.924173f, 0.924136f, 0.924100f, 0.924063f, 0.924026f, 0.923990f, 0.923953f, 0.923916f, + 0.923880f, 0.923843f, 0.923806f, 0.923769f, 0.923733f, 0.923696f, 0.923659f, 0.923622f, + 0.923586f, 0.923549f, 0.923512f, 0.923475f, 0.923439f, 0.923402f, 0.923365f, 0.923328f, + 0.923291f, 0.923255f, 0.923218f, 0.923181f, 0.923144f, 0.923107f, 0.923070f, 0.923033f, + 0.922997f, 0.922960f, 0.922923f, 0.922886f, 0.922849f, 0.922812f, 0.922775f, 0.922738f, + 0.922701f, 0.922664f, 0.922627f, 0.922590f, 0.922553f, 0.922516f, 0.922479f, 0.922442f, + 0.922405f, 0.922368f, 0.922331f, 0.922294f, 0.922257f, 0.922220f, 0.922183f, 0.922146f, + 0.922109f, 0.922072f, 0.922034f, 0.921997f, 0.921960f, 0.921923f, 0.921886f, 0.921849f, + 0.921812f, 0.921774f, 0.921737f, 0.921700f, 0.921663f, 0.921626f, 0.921588f, 0.921551f, + 0.921514f, 0.921477f, 0.921440f, 0.921402f, 0.921365f, 0.921328f, 0.921291f, 0.921253f, + 0.921216f, 0.921179f, 0.921141f, 0.921104f, 0.921067f, 0.921029f, 0.920992f, 0.920955f, + 0.920917f, 0.920880f, 0.920842f, 0.920805f, 0.920768f, 0.920730f, 0.920693f, 0.920655f, + 0.920618f, 0.920581f, 0.920543f, 0.920506f, 0.920468f, 0.920431f, 0.920393f, 0.920356f, + 0.920318f, 0.920281f, 0.920243f, 0.920206f, 0.920168f, 0.920131f, 0.920093f, 0.920056f, + 0.920018f, 0.919980f, 0.919943f, 0.919905f, 0.919868f, 0.919830f, 0.919792f, 0.919755f, + 0.919717f, 0.919680f, 0.919642f, 0.919604f, 0.919567f, 0.919529f, 0.919491f, 0.919453f, + 0.919416f, 0.919378f, 0.919340f, 0.919303f, 0.919265f, 0.919227f, 0.919189f, 0.919152f, + 0.919114f, 0.919076f, 0.919038f, 0.919001f, 0.918963f, 0.918925f, 0.918887f, 0.918849f, + 0.918811f, 0.918774f, 0.918736f, 0.918698f, 0.918660f, 0.918622f, 0.918584f, 0.918546f, + 0.918508f, 0.918471f, 0.918433f, 0.918395f, 0.918357f, 0.918319f, 0.918281f, 0.918243f, + 0.918205f, 0.918167f, 0.918129f, 0.918091f, 0.918053f, 0.918015f, 0.917977f, 0.917939f, + 0.917901f, 0.917863f, 0.917825f, 0.917787f, 0.917749f, 0.917710f, 0.917672f, 0.917634f, + 0.917596f, 0.917558f, 0.917520f, 0.917482f, 0.917444f, 0.917405f, 0.917367f, 0.917329f, + 0.917291f, 0.917253f, 0.917215f, 0.917176f, 0.917138f, 0.917100f, 0.917062f, 0.917024f, + 0.916985f, 0.916947f, 0.916909f, 0.916871f, 0.916832f, 0.916794f, 0.916756f, 0.916717f, + 0.916679f, 0.916641f, 0.916602f, 0.916564f, 0.916526f, 0.916487f, 0.916449f, 0.916411f, + 0.916372f, 0.916334f, 0.916296f, 0.916257f, 0.916219f, 0.916180f, 0.916142f, 0.916103f, + 0.916065f, 0.916027f, 0.915988f, 0.915950f, 0.915911f, 0.915873f, 0.915834f, 0.915796f, + 0.915757f, 0.915719f, 0.915680f, 0.915642f, 0.915603f, 0.915564f, 0.915526f, 0.915487f, + 0.915449f, 0.915410f, 0.915372f, 0.915333f, 0.915294f, 0.915256f, 0.915217f, 0.915178f, + 0.915140f, 0.915101f, 0.915062f, 0.915024f, 0.914985f, 0.914946f, 0.914908f, 0.914869f, + 0.914830f, 0.914792f, 0.914753f, 0.914714f, 0.914675f, 0.914637f, 0.914598f, 0.914559f, + 0.914520f, 0.914482f, 0.914443f, 0.914404f, 0.914365f, 0.914326f, 0.914287f, 0.914249f, + 0.914210f, 0.914171f, 0.914132f, 0.914093f, 0.914054f, 0.914015f, 0.913976f, 0.913938f, + 0.913899f, 0.913860f, 0.913821f, 0.913782f, 0.913743f, 0.913704f, 0.913665f, 0.913626f, + 0.913587f, 0.913548f, 0.913509f, 0.913470f, 0.913431f, 0.913392f, 0.913353f, 0.913314f, + 0.913275f, 0.913236f, 0.913197f, 0.913158f, 0.913119f, 0.913080f, 0.913040f, 0.913001f, + 0.912962f, 0.912923f, 0.912884f, 0.912845f, 0.912806f, 0.912766f, 0.912727f, 0.912688f, + 0.912649f, 0.912610f, 0.912571f, 0.912531f, 0.912492f, 0.912453f, 0.912414f, 0.912374f, + 0.912335f, 0.912296f, 0.912257f, 0.912217f, 0.912178f, 0.912139f, 0.912099f, 0.912060f, + 0.912021f, 0.911982f, 0.911942f, 0.911903f, 0.911864f, 0.911824f, 0.911785f, 0.911745f, + 0.911706f, 0.911667f, 0.911627f, 0.911588f, 0.911548f, 0.911509f, 0.911470f, 0.911430f, + 0.911391f, 0.911351f, 0.911312f, 0.911272f, 0.911233f, 0.911193f, 0.911154f, 0.911114f, + 0.911075f, 0.911035f, 0.910996f, 0.910956f, 0.910917f, 0.910877f, 0.910837f, 0.910798f, + 0.910758f, 0.910719f, 0.910679f, 0.910639f, 0.910600f, 0.910560f, 0.910521f, 0.910481f, + 0.910441f, 0.910402f, 0.910362f, 0.910322f, 0.910283f, 0.910243f, 0.910203f, 0.910163f, + 0.910124f, 0.910084f, 0.910044f, 0.910005f, 0.909965f, 0.909925f, 0.909885f, 0.909845f, + 0.909806f, 0.909766f, 0.909726f, 0.909686f, 0.909646f, 0.909607f, 0.909567f, 0.909527f, + 0.909487f, 0.909447f, 0.909407f, 0.909368f, 0.909328f, 0.909288f, 0.909248f, 0.909208f, + 0.909168f, 0.909128f, 0.909088f, 0.909048f, 0.909008f, 0.908968f, 0.908928f, 0.908888f, + 0.908848f, 0.908808f, 0.908768f, 0.908728f, 0.908688f, 0.908648f, 0.908608f, 0.908568f, + 0.908528f, 0.908488f, 0.908448f, 0.908408f, 0.908368f, 0.908328f, 0.908288f, 0.908248f, + 0.908207f, 0.908167f, 0.908127f, 0.908087f, 0.908047f, 0.908007f, 0.907966f, 0.907926f, + 0.907886f, 0.907846f, 0.907806f, 0.907766f, 0.907725f, 0.907685f, 0.907645f, 0.907605f, + 0.907564f, 0.907524f, 0.907484f, 0.907444f, 0.907403f, 0.907363f, 0.907323f, 0.907282f, + 0.907242f, 0.907202f, 0.907161f, 0.907121f, 0.907081f, 0.907040f, 0.907000f, 0.906959f, + 0.906919f, 0.906879f, 0.906838f, 0.906798f, 0.906757f, 0.906717f, 0.906677f, 0.906636f, + 0.906596f, 0.906555f, 0.906515f, 0.906474f, 0.906434f, 0.906393f, 0.906353f, 0.906312f, + 0.906272f, 0.906231f, 0.906191f, 0.906150f, 0.906110f, 0.906069f, 0.906028f, 0.905988f, + 0.905947f, 0.905907f, 0.905866f, 0.905825f, 0.905785f, 0.905744f, 0.905704f, 0.905663f, + 0.905622f, 0.905582f, 0.905541f, 0.905500f, 0.905460f, 0.905419f, 0.905378f, 0.905337f, + 0.905297f, 0.905256f, 0.905215f, 0.905175f, 0.905134f, 0.905093f, 0.905052f, 0.905011f, + 0.904971f, 0.904930f, 0.904889f, 0.904848f, 0.904807f, 0.904767f, 0.904726f, 0.904685f, + 0.904644f, 0.904603f, 0.904562f, 0.904521f, 0.904481f, 0.904440f, 0.904399f, 0.904358f, + 0.904317f, 0.904276f, 0.904235f, 0.904194f, 0.904153f, 0.904112f, 0.904071f, 0.904030f, + 0.903989f, 0.903948f, 0.903907f, 0.903866f, 0.903825f, 0.903784f, 0.903743f, 0.903702f, + 0.903661f, 0.903620f, 0.903579f, 0.903538f, 0.903497f, 0.903456f, 0.903415f, 0.903373f, + 0.903332f, 0.903291f, 0.903250f, 0.903209f, 0.903168f, 0.903127f, 0.903085f, 0.903044f, + 0.903003f, 0.902962f, 0.902921f, 0.902879f, 0.902838f, 0.902797f, 0.902756f, 0.902715f, + 0.902673f, 0.902632f, 0.902591f, 0.902550f, 0.902508f, 0.902467f, 0.902426f, 0.902384f, + 0.902343f, 0.902302f, 0.902260f, 0.902219f, 0.902178f, 0.902136f, 0.902095f, 0.902054f, + 0.902012f, 0.901971f, 0.901929f, 0.901888f, 0.901847f, 0.901805f, 0.901764f, 0.901722f, + 0.901681f, 0.901639f, 0.901598f, 0.901556f, 0.901515f, 0.901473f, 0.901432f, 0.901390f, + 0.901349f, 0.901307f, 0.901266f, 0.901224f, 0.901183f, 0.901141f, 0.901100f, 0.901058f, + 0.901016f, 0.900975f, 0.900933f, 0.900892f, 0.900850f, 0.900808f, 0.900767f, 0.900725f, + 0.900683f, 0.900642f, 0.900600f, 0.900558f, 0.900517f, 0.900475f, 0.900433f, 0.900392f, + 0.900350f, 0.900308f, 0.900266f, 0.900225f, 0.900183f, 0.900141f, 0.900099f, 0.900058f, + 0.900016f, 0.899974f, 0.899932f, 0.899890f, 0.899849f, 0.899807f, 0.899765f, 0.899723f, + 0.899681f, 0.899639f, 0.899598f, 0.899556f, 0.899514f, 0.899472f, 0.899430f, 0.899388f, + 0.899346f, 0.899304f, 0.899262f, 0.899220f, 0.899179f, 0.899137f, 0.899095f, 0.899053f, + 0.899011f, 0.898969f, 0.898927f, 0.898885f, 0.898843f, 0.898801f, 0.898759f, 0.898717f, + 0.898674f, 0.898632f, 0.898590f, 0.898548f, 0.898506f, 0.898464f, 0.898422f, 0.898380f, + 0.898338f, 0.898296f, 0.898254f, 0.898211f, 0.898169f, 0.898127f, 0.898085f, 0.898043f, + 0.898001f, 0.897958f, 0.897916f, 0.897874f, 0.897832f, 0.897790f, 0.897747f, 0.897705f, + 0.897663f, 0.897621f, 0.897578f, 0.897536f, 0.897494f, 0.897452f, 0.897409f, 0.897367f, + 0.897325f, 0.897282f, 0.897240f, 0.897198f, 0.897155f, 0.897113f, 0.897071f, 0.897028f, + 0.896986f, 0.896943f, 0.896901f, 0.896859f, 0.896816f, 0.896774f, 0.896731f, 0.896689f, + 0.896646f, 0.896604f, 0.896562f, 0.896519f, 0.896477f, 0.896434f, 0.896392f, 0.896349f, + 0.896307f, 0.896264f, 0.896222f, 0.896179f, 0.896137f, 0.896094f, 0.896051f, 0.896009f, + 0.895966f, 0.895924f, 0.895881f, 0.895838f, 0.895796f, 0.895753f, 0.895711f, 0.895668f, + 0.895625f, 0.895583f, 0.895540f, 0.895497f, 0.895455f, 0.895412f, 0.895369f, 0.895327f, + 0.895284f, 0.895241f, 0.895198f, 0.895156f, 0.895113f, 0.895070f, 0.895028f, 0.894985f, + 0.894942f, 0.894899f, 0.894856f, 0.894814f, 0.894771f, 0.894728f, 0.894685f, 0.894642f, + 0.894599f, 0.894557f, 0.894514f, 0.894471f, 0.894428f, 0.894385f, 0.894342f, 0.894299f, + 0.894256f, 0.894214f, 0.894171f, 0.894128f, 0.894085f, 0.894042f, 0.893999f, 0.893956f, + 0.893913f, 0.893870f, 0.893827f, 0.893784f, 0.893741f, 0.893698f, 0.893655f, 0.893612f, + 0.893569f, 0.893526f, 0.893483f, 0.893440f, 0.893397f, 0.893354f, 0.893310f, 0.893267f, + 0.893224f, 0.893181f, 0.893138f, 0.893095f, 0.893052f, 0.893009f, 0.892965f, 0.892922f, + 0.892879f, 0.892836f, 0.892793f, 0.892750f, 0.892706f, 0.892663f, 0.892620f, 0.892577f, + 0.892534f, 0.892490f, 0.892447f, 0.892404f, 0.892361f, 0.892317f, 0.892274f, 0.892231f, + 0.892187f, 0.892144f, 0.892101f, 0.892057f, 0.892014f, 0.891971f, 0.891927f, 0.891884f, + 0.891841f, 0.891797f, 0.891754f, 0.891711f, 0.891667f, 0.891624f, 0.891580f, 0.891537f, + 0.891493f, 0.891450f, 0.891407f, 0.891363f, 0.891320f, 0.891276f, 0.891233f, 0.891189f, + 0.891146f, 0.891102f, 0.891059f, 0.891015f, 0.890972f, 0.890928f, 0.890885f, 0.890841f, + 0.890797f, 0.890754f, 0.890710f, 0.890667f, 0.890623f, 0.890580f, 0.890536f, 0.890492f, + 0.890449f, 0.890405f, 0.890361f, 0.890318f, 0.890274f, 0.890230f, 0.890187f, 0.890143f, + 0.890099f, 0.890056f, 0.890012f, 0.889968f, 0.889925f, 0.889881f, 0.889837f, 0.889793f, + 0.889750f, 0.889706f, 0.889662f, 0.889618f, 0.889574f, 0.889531f, 0.889487f, 0.889443f, + 0.889399f, 0.889355f, 0.889312f, 0.889268f, 0.889224f, 0.889180f, 0.889136f, 0.889092f, + 0.889048f, 0.889004f, 0.888961f, 0.888917f, 0.888873f, 0.888829f, 0.888785f, 0.888741f, + 0.888697f, 0.888653f, 0.888609f, 0.888565f, 0.888521f, 0.888477f, 0.888433f, 0.888389f, + 0.888345f, 0.888301f, 0.888257f, 0.888213f, 0.888169f, 0.888125f, 0.888081f, 0.888037f, + 0.887993f, 0.887949f, 0.887904f, 0.887860f, 0.887816f, 0.887772f, 0.887728f, 0.887684f, + 0.887640f, 0.887595f, 0.887551f, 0.887507f, 0.887463f, 0.887419f, 0.887375f, 0.887330f, + 0.887286f, 0.887242f, 0.887198f, 0.887153f, 0.887109f, 0.887065f, 0.887021f, 0.886976f, + 0.886932f, 0.886888f, 0.886844f, 0.886799f, 0.886755f, 0.886711f, 0.886666f, 0.886622f, + 0.886578f, 0.886533f, 0.886489f, 0.886445f, 0.886400f, 0.886356f, 0.886311f, 0.886267f, + 0.886223f, 0.886178f, 0.886134f, 0.886089f, 0.886045f, 0.886000f, 0.885956f, 0.885911f, + 0.885867f, 0.885822f, 0.885778f, 0.885733f, 0.885689f, 0.885644f, 0.885600f, 0.885555f, + 0.885511f, 0.885466f, 0.885422f, 0.885377f, 0.885333f, 0.885288f, 0.885243f, 0.885199f, + 0.885154f, 0.885110f, 0.885065f, 0.885020f, 0.884976f, 0.884931f, 0.884886f, 0.884842f, + 0.884797f, 0.884752f, 0.884708f, 0.884663f, 0.884618f, 0.884574f, 0.884529f, 0.884484f, + 0.884439f, 0.884395f, 0.884350f, 0.884305f, 0.884260f, 0.884216f, 0.884171f, 0.884126f, + 0.884081f, 0.884036f, 0.883992f, 0.883947f, 0.883902f, 0.883857f, 0.883812f, 0.883767f, + 0.883723f, 0.883678f, 0.883633f, 0.883588f, 0.883543f, 0.883498f, 0.883453f, 0.883408f, + 0.883363f, 0.883318f, 0.883273f, 0.883228f, 0.883184f, 0.883139f, 0.883094f, 0.883049f, + 0.883004f, 0.882959f, 0.882914f, 0.882869f, 0.882824f, 0.882779f, 0.882733f, 0.882688f, + 0.882643f, 0.882598f, 0.882553f, 0.882508f, 0.882463f, 0.882418f, 0.882373f, 0.882328f, + 0.882283f, 0.882237f, 0.882192f, 0.882147f, 0.882102f, 0.882057f, 0.882012f, 0.881966f, + 0.881921f, 0.881876f, 0.881831f, 0.881786f, 0.881740f, 0.881695f, 0.881650f, 0.881605f, + 0.881559f, 0.881514f, 0.881469f, 0.881424f, 0.881378f, 0.881333f, 0.881288f, 0.881242f, + 0.881197f, 0.881152f, 0.881106f, 0.881061f, 0.881016f, 0.880970f, 0.880925f, 0.880880f, + 0.880834f, 0.880789f, 0.880743f, 0.880698f, 0.880653f, 0.880607f, 0.880562f, 0.880516f, + 0.880471f, 0.880425f, 0.880380f, 0.880334f, 0.880289f, 0.880244f, 0.880198f, 0.880153f, + 0.880107f, 0.880061f, 0.880016f, 0.879970f, 0.879925f, 0.879879f, 0.879834f, 0.879788f, + 0.879743f, 0.879697f, 0.879651f, 0.879606f, 0.879560f, 0.879515f, 0.879469f, 0.879423f, + 0.879378f, 0.879332f, 0.879286f, 0.879241f, 0.879195f, 0.879149f, 0.879104f, 0.879058f, + 0.879012f, 0.878967f, 0.878921f, 0.878875f, 0.878829f, 0.878784f, 0.878738f, 0.878692f, + 0.878646f, 0.878600f, 0.878555f, 0.878509f, 0.878463f, 0.878417f, 0.878371f, 0.878326f, + 0.878280f, 0.878234f, 0.878188f, 0.878142f, 0.878096f, 0.878051f, 0.878005f, 0.877959f, + 0.877913f, 0.877867f, 0.877821f, 0.877775f, 0.877729f, 0.877683f, 0.877637f, 0.877591f, + 0.877545f, 0.877499f, 0.877453f, 0.877407f, 0.877361f, 0.877315f, 0.877269f, 0.877223f, + 0.877177f, 0.877131f, 0.877085f, 0.877039f, 0.876993f, 0.876947f, 0.876901f, 0.876855f, + 0.876809f, 0.876763f, 0.876716f, 0.876670f, 0.876624f, 0.876578f, 0.876532f, 0.876486f, + 0.876440f, 0.876393f, 0.876347f, 0.876301f, 0.876255f, 0.876209f, 0.876163f, 0.876116f, + 0.876070f, 0.876024f, 0.875978f, 0.875931f, 0.875885f, 0.875839f, 0.875793f, 0.875746f, + 0.875700f, 0.875654f, 0.875607f, 0.875561f, 0.875515f, 0.875468f, 0.875422f, 0.875376f, + 0.875329f, 0.875283f, 0.875237f, 0.875190f, 0.875144f, 0.875098f, 0.875051f, 0.875005f, + 0.874958f, 0.874912f, 0.874865f, 0.874819f, 0.874773f, 0.874726f, 0.874680f, 0.874633f, + 0.874587f, 0.874540f, 0.874494f, 0.874447f, 0.874401f, 0.874354f, 0.874308f, 0.874261f, + 0.874215f, 0.874168f, 0.874121f, 0.874075f, 0.874028f, 0.873982f, 0.873935f, 0.873888f, + 0.873842f, 0.873795f, 0.873749f, 0.873702f, 0.873655f, 0.873609f, 0.873562f, 0.873515f, + 0.873469f, 0.873422f, 0.873375f, 0.873329f, 0.873282f, 0.873235f, 0.873188f, 0.873142f, + 0.873095f, 0.873048f, 0.873001f, 0.872955f, 0.872908f, 0.872861f, 0.872814f, 0.872768f, + 0.872721f, 0.872674f, 0.872627f, 0.872580f, 0.872534f, 0.872487f, 0.872440f, 0.872393f, + 0.872346f, 0.872299f, 0.872252f, 0.872205f, 0.872159f, 0.872112f, 0.872065f, 0.872018f, + 0.871971f, 0.871924f, 0.871877f, 0.871830f, 0.871783f, 0.871736f, 0.871689f, 0.871642f, + 0.871595f, 0.871548f, 0.871501f, 0.871454f, 0.871407f, 0.871360f, 0.871313f, 0.871266f, + 0.871219f, 0.871172f, 0.871125f, 0.871078f, 0.871031f, 0.870983f, 0.870936f, 0.870889f, + 0.870842f, 0.870795f, 0.870748f, 0.870701f, 0.870654f, 0.870606f, 0.870559f, 0.870512f, + 0.870465f, 0.870418f, 0.870370f, 0.870323f, 0.870276f, 0.870229f, 0.870182f, 0.870134f, + 0.870087f, 0.870040f, 0.869992f, 0.869945f, 0.869898f, 0.869851f, 0.869803f, 0.869756f, + 0.869709f, 0.869661f, 0.869614f, 0.869567f, 0.869519f, 0.869472f, 0.869425f, 0.869377f, + 0.869330f, 0.869282f, 0.869235f, 0.869188f, 0.869140f, 0.869093f, 0.869045f, 0.868998f, + 0.868951f, 0.868903f, 0.868856f, 0.868808f, 0.868761f, 0.868713f, 0.868666f, 0.868618f, + 0.868571f, 0.868523f, 0.868476f, 0.868428f, 0.868381f, 0.868333f, 0.868285f, 0.868238f, + 0.868190f, 0.868143f, 0.868095f, 0.868048f, 0.868000f, 0.867952f, 0.867905f, 0.867857f, + 0.867809f, 0.867762f, 0.867714f, 0.867667f, 0.867619f, 0.867571f, 0.867523f, 0.867476f, + 0.867428f, 0.867380f, 0.867333f, 0.867285f, 0.867237f, 0.867190f, 0.867142f, 0.867094f, + 0.867046f, 0.866998f, 0.866951f, 0.866903f, 0.866855f, 0.866807f, 0.866759f, 0.866712f, + 0.866664f, 0.866616f, 0.866568f, 0.866520f, 0.866472f, 0.866425f, 0.866377f, 0.866329f, + 0.866281f, 0.866233f, 0.866185f, 0.866137f, 0.866089f, 0.866041f, 0.865993f, 0.865946f, + 0.865898f, 0.865850f, 0.865802f, 0.865754f, 0.865706f, 0.865658f, 0.865610f, 0.865562f, + 0.865514f, 0.865466f, 0.865418f, 0.865369f, 0.865321f, 0.865273f, 0.865225f, 0.865177f, + 0.865129f, 0.865081f, 0.865033f, 0.864985f, 0.864937f, 0.864889f, 0.864841f, 0.864792f, + 0.864744f, 0.864696f, 0.864648f, 0.864600f, 0.864552f, 0.864503f, 0.864455f, 0.864407f, + 0.864359f, 0.864311f, 0.864262f, 0.864214f, 0.864166f, 0.864118f, 0.864069f, 0.864021f, + 0.863973f, 0.863925f, 0.863876f, 0.863828f, 0.863780f, 0.863731f, 0.863683f, 0.863635f, + 0.863586f, 0.863538f, 0.863490f, 0.863441f, 0.863393f, 0.863345f, 0.863296f, 0.863248f, + 0.863199f, 0.863151f, 0.863103f, 0.863054f, 0.863006f, 0.862957f, 0.862909f, 0.862860f, + 0.862812f, 0.862763f, 0.862715f, 0.862666f, 0.862618f, 0.862570f, 0.862521f, 0.862472f, + 0.862424f, 0.862375f, 0.862327f, 0.862278f, 0.862230f, 0.862181f, 0.862133f, 0.862084f, + 0.862035f, 0.861987f, 0.861938f, 0.861890f, 0.861841f, 0.861792f, 0.861744f, 0.861695f, + 0.861646f, 0.861598f, 0.861549f, 0.861500f, 0.861452f, 0.861403f, 0.861354f, 0.861306f, + 0.861257f, 0.861208f, 0.861160f, 0.861111f, 0.861062f, 0.861013f, 0.860964f, 0.860916f, + 0.860867f, 0.860818f, 0.860769f, 0.860721f, 0.860672f, 0.860623f, 0.860574f, 0.860525f, + 0.860476f, 0.860428f, 0.860379f, 0.860330f, 0.860281f, 0.860232f, 0.860183f, 0.860134f, + 0.860085f, 0.860036f, 0.859988f, 0.859939f, 0.859890f, 0.859841f, 0.859792f, 0.859743f, + 0.859694f, 0.859645f, 0.859596f, 0.859547f, 0.859498f, 0.859449f, 0.859400f, 0.859351f, + 0.859302f, 0.859253f, 0.859204f, 0.859155f, 0.859106f, 0.859057f, 0.859007f, 0.858958f, + 0.858909f, 0.858860f, 0.858811f, 0.858762f, 0.858713f, 0.858664f, 0.858615f, 0.858565f, + 0.858516f, 0.858467f, 0.858418f, 0.858369f, 0.858320f, 0.858270f, 0.858221f, 0.858172f, + 0.858123f, 0.858073f, 0.858024f, 0.857975f, 0.857926f, 0.857876f, 0.857827f, 0.857778f, + 0.857729f, 0.857679f, 0.857630f, 0.857581f, 0.857531f, 0.857482f, 0.857433f, 0.857383f, + 0.857334f, 0.857285f, 0.857235f, 0.857186f, 0.857137f, 0.857087f, 0.857038f, 0.856988f, + 0.856939f, 0.856890f, 0.856840f, 0.856791f, 0.856741f, 0.856692f, 0.856642f, 0.856593f, + 0.856543f, 0.856494f, 0.856444f, 0.856395f, 0.856345f, 0.856296f, 0.856246f, 0.856197f, + 0.856147f, 0.856098f, 0.856048f, 0.855999f, 0.855949f, 0.855900f, 0.855850f, 0.855800f, + 0.855751f, 0.855701f, 0.855651f, 0.855602f, 0.855552f, 0.855503f, 0.855453f, 0.855403f, + 0.855354f, 0.855304f, 0.855254f, 0.855205f, 0.855155f, 0.855105f, 0.855056f, 0.855006f, + 0.854956f, 0.854906f, 0.854857f, 0.854807f, 0.854757f, 0.854707f, 0.854658f, 0.854608f, + 0.854558f, 0.854508f, 0.854458f, 0.854409f, 0.854359f, 0.854309f, 0.854259f, 0.854209f, + 0.854159f, 0.854110f, 0.854060f, 0.854010f, 0.853960f, 0.853910f, 0.853860f, 0.853810f, + 0.853760f, 0.853710f, 0.853660f, 0.853611f, 0.853561f, 0.853511f, 0.853461f, 0.853411f, + 0.853361f, 0.853311f, 0.853261f, 0.853211f, 0.853161f, 0.853111f, 0.853061f, 0.853011f, + 0.852961f, 0.852911f, 0.852861f, 0.852810f, 0.852760f, 0.852710f, 0.852660f, 0.852610f, + 0.852560f, 0.852510f, 0.852460f, 0.852410f, 0.852360f, 0.852309f, 0.852259f, 0.852209f, + 0.852159f, 0.852109f, 0.852059f, 0.852008f, 0.851958f, 0.851908f, 0.851858f, 0.851808f, + 0.851757f, 0.851707f, 0.851657f, 0.851607f, 0.851556f, 0.851506f, 0.851456f, 0.851406f, + 0.851355f, 0.851305f, 0.851255f, 0.851204f, 0.851154f, 0.851104f, 0.851053f, 0.851003f, + 0.850953f, 0.850902f, 0.850852f, 0.850801f, 0.850751f, 0.850701f, 0.850650f, 0.850600f, + 0.850549f, 0.850499f, 0.850449f, 0.850398f, 0.850348f, 0.850297f, 0.850247f, 0.850196f, + 0.850146f, 0.850095f, 0.850045f, 0.849994f, 0.849944f, 0.849893f, 0.849843f, 0.849792f, + 0.849742f, 0.849691f, 0.849641f, 0.849590f, 0.849540f, 0.849489f, 0.849438f, 0.849388f, + 0.849337f, 0.849287f, 0.849236f, 0.849185f, 0.849135f, 0.849084f, 0.849033f, 0.848983f, + 0.848932f, 0.848881f, 0.848831f, 0.848780f, 0.848729f, 0.848679f, 0.848628f, 0.848577f, + 0.848526f, 0.848476f, 0.848425f, 0.848374f, 0.848323f, 0.848273f, 0.848222f, 0.848171f, + 0.848120f, 0.848070f, 0.848019f, 0.847968f, 0.847917f, 0.847866f, 0.847815f, 0.847765f, + 0.847714f, 0.847663f, 0.847612f, 0.847561f, 0.847510f, 0.847459f, 0.847408f, 0.847358f, + 0.847307f, 0.847256f, 0.847205f, 0.847154f, 0.847103f, 0.847052f, 0.847001f, 0.846950f, + 0.846899f, 0.846848f, 0.846797f, 0.846746f, 0.846695f, 0.846644f, 0.846593f, 0.846542f, + 0.846491f, 0.846440f, 0.846389f, 0.846338f, 0.846287f, 0.846236f, 0.846185f, 0.846133f, + 0.846082f, 0.846031f, 0.845980f, 0.845929f, 0.845878f, 0.845827f, 0.845776f, 0.845724f, + 0.845673f, 0.845622f, 0.845571f, 0.845520f, 0.845469f, 0.845417f, 0.845366f, 0.845315f, + 0.845264f, 0.845212f, 0.845161f, 0.845110f, 0.845059f, 0.845007f, 0.844956f, 0.844905f, + 0.844854f, 0.844802f, 0.844751f, 0.844700f, 0.844648f, 0.844597f, 0.844546f, 0.844494f, + 0.844443f, 0.844392f, 0.844340f, 0.844289f, 0.844238f, 0.844186f, 0.844135f, 0.844083f, + 0.844032f, 0.843980f, 0.843929f, 0.843878f, 0.843826f, 0.843775f, 0.843723f, 0.843672f, + 0.843620f, 0.843569f, 0.843517f, 0.843466f, 0.843414f, 0.843363f, 0.843311f, 0.843260f, + 0.843208f, 0.843157f, 0.843105f, 0.843054f, 0.843002f, 0.842950f, 0.842899f, 0.842847f, + 0.842796f, 0.842744f, 0.842692f, 0.842641f, 0.842589f, 0.842538f, 0.842486f, 0.842434f, + 0.842383f, 0.842331f, 0.842279f, 0.842228f, 0.842176f, 0.842124f, 0.842072f, 0.842021f, + 0.841969f, 0.841917f, 0.841866f, 0.841814f, 0.841762f, 0.841710f, 0.841659f, 0.841607f, + 0.841555f, 0.841503f, 0.841451f, 0.841400f, 0.841348f, 0.841296f, 0.841244f, 0.841192f, + 0.841140f, 0.841089f, 0.841037f, 0.840985f, 0.840933f, 0.840881f, 0.840829f, 0.840777f, + 0.840725f, 0.840673f, 0.840622f, 0.840570f, 0.840518f, 0.840466f, 0.840414f, 0.840362f, + 0.840310f, 0.840258f, 0.840206f, 0.840154f, 0.840102f, 0.840050f, 0.839998f, 0.839946f, + 0.839894f, 0.839842f, 0.839790f, 0.839738f, 0.839686f, 0.839634f, 0.839581f, 0.839529f, + 0.839477f, 0.839425f, 0.839373f, 0.839321f, 0.839269f, 0.839217f, 0.839165f, 0.839112f, + 0.839060f, 0.839008f, 0.838956f, 0.838904f, 0.838852f, 0.838799f, 0.838747f, 0.838695f, + 0.838643f, 0.838591f, 0.838538f, 0.838486f, 0.838434f, 0.838382f, 0.838329f, 0.838277f, + 0.838225f, 0.838172f, 0.838120f, 0.838068f, 0.838015f, 0.837963f, 0.837911f, 0.837859f, + 0.837806f, 0.837754f, 0.837701f, 0.837649f, 0.837597f, 0.837544f, 0.837492f, 0.837440f, + 0.837387f, 0.837335f, 0.837282f, 0.837230f, 0.837178f, 0.837125f, 0.837073f, 0.837020f, + 0.836968f, 0.836915f, 0.836863f, 0.836810f, 0.836758f, 0.836705f, 0.836653f, 0.836600f, + 0.836548f, 0.836495f, 0.836443f, 0.836390f, 0.836338f, 0.836285f, 0.836232f, 0.836180f, + 0.836127f, 0.836075f, 0.836022f, 0.835969f, 0.835917f, 0.835864f, 0.835812f, 0.835759f, + 0.835706f, 0.835654f, 0.835601f, 0.835548f, 0.835496f, 0.835443f, 0.835390f, 0.835338f, + 0.835285f, 0.835232f, 0.835179f, 0.835127f, 0.835074f, 0.835021f, 0.834968f, 0.834916f, + 0.834863f, 0.834810f, 0.834757f, 0.834705f, 0.834652f, 0.834599f, 0.834546f, 0.834493f, + 0.834440f, 0.834388f, 0.834335f, 0.834282f, 0.834229f, 0.834176f, 0.834123f, 0.834070f, + 0.834018f, 0.833965f, 0.833912f, 0.833859f, 0.833806f, 0.833753f, 0.833700f, 0.833647f, + 0.833594f, 0.833541f, 0.833488f, 0.833435f, 0.833382f, 0.833329f, 0.833276f, 0.833223f, + 0.833170f, 0.833117f, 0.833064f, 0.833011f, 0.832958f, 0.832905f, 0.832852f, 0.832799f, + 0.832746f, 0.832693f, 0.832640f, 0.832586f, 0.832533f, 0.832480f, 0.832427f, 0.832374f, + 0.832321f, 0.832268f, 0.832215f, 0.832161f, 0.832108f, 0.832055f, 0.832002f, 0.831949f, + 0.831895f, 0.831842f, 0.831789f, 0.831736f, 0.831683f, 0.831629f, 0.831576f, 0.831523f, + 0.831470f, 0.831416f, 0.831363f, 0.831310f, 0.831257f, 0.831203f, 0.831150f, 0.831097f, + 0.831043f, 0.830990f, 0.830937f, 0.830883f, 0.830830f, 0.830777f, 0.830723f, 0.830670f, + 0.830616f, 0.830563f, 0.830510f, 0.830456f, 0.830403f, 0.830349f, 0.830296f, 0.830243f, + 0.830189f, 0.830136f, 0.830082f, 0.830029f, 0.829975f, 0.829922f, 0.829868f, 0.829815f, + 0.829761f, 0.829708f, 0.829654f, 0.829601f, 0.829547f, 0.829494f, 0.829440f, 0.829386f, + 0.829333f, 0.829279f, 0.829226f, 0.829172f, 0.829119f, 0.829065f, 0.829011f, 0.828958f, + 0.828904f, 0.828851f, 0.828797f, 0.828743f, 0.828690f, 0.828636f, 0.828582f, 0.828529f, + 0.828475f, 0.828421f, 0.828367f, 0.828314f, 0.828260f, 0.828206f, 0.828153f, 0.828099f, + 0.828045f, 0.827991f, 0.827938f, 0.827884f, 0.827830f, 0.827776f, 0.827722f, 0.827669f, + 0.827615f, 0.827561f, 0.827507f, 0.827453f, 0.827399f, 0.827346f, 0.827292f, 0.827238f, + 0.827184f, 0.827130f, 0.827076f, 0.827022f, 0.826968f, 0.826915f, 0.826861f, 0.826807f, + 0.826753f, 0.826699f, 0.826645f, 0.826591f, 0.826537f, 0.826483f, 0.826429f, 0.826375f, + 0.826321f, 0.826267f, 0.826213f, 0.826159f, 0.826105f, 0.826051f, 0.825997f, 0.825943f, + 0.825889f, 0.825835f, 0.825781f, 0.825727f, 0.825673f, 0.825618f, 0.825564f, 0.825510f, + 0.825456f, 0.825402f, 0.825348f, 0.825294f, 0.825240f, 0.825185f, 0.825131f, 0.825077f, + 0.825023f, 0.824969f, 0.824915f, 0.824860f, 0.824806f, 0.824752f, 0.824698f, 0.824644f, + 0.824589f, 0.824535f, 0.824481f, 0.824427f, 0.824372f, 0.824318f, 0.824264f, 0.824209f, + 0.824155f, 0.824101f, 0.824047f, 0.823992f, 0.823938f, 0.823884f, 0.823829f, 0.823775f, + 0.823721f, 0.823666f, 0.823612f, 0.823557f, 0.823503f, 0.823449f, 0.823394f, 0.823340f, + 0.823285f, 0.823231f, 0.823177f, 0.823122f, 0.823068f, 0.823013f, 0.822959f, 0.822904f, + 0.822850f, 0.822795f, 0.822741f, 0.822686f, 0.822632f, 0.822577f, 0.822523f, 0.822468f, + 0.822414f, 0.822359f, 0.822305f, 0.822250f, 0.822195f, 0.822141f, 0.822086f, 0.822032f, + 0.821977f, 0.821922f, 0.821868f, 0.821813f, 0.821759f, 0.821704f, 0.821649f, 0.821595f, + 0.821540f, 0.821485f, 0.821431f, 0.821376f, 0.821321f, 0.821267f, 0.821212f, 0.821157f, + 0.821102f, 0.821048f, 0.820993f, 0.820938f, 0.820884f, 0.820829f, 0.820774f, 0.820719f, + 0.820664f, 0.820610f, 0.820555f, 0.820500f, 0.820445f, 0.820390f, 0.820336f, 0.820281f, + 0.820226f, 0.820171f, 0.820116f, 0.820061f, 0.820007f, 0.819952f, 0.819897f, 0.819842f, + 0.819787f, 0.819732f, 0.819677f, 0.819622f, 0.819567f, 0.819512f, 0.819457f, 0.819402f, + 0.819348f, 0.819293f, 0.819238f, 0.819183f, 0.819128f, 0.819073f, 0.819018f, 0.818963f, + 0.818908f, 0.818853f, 0.818798f, 0.818742f, 0.818687f, 0.818632f, 0.818577f, 0.818522f, + 0.818467f, 0.818412f, 0.818357f, 0.818302f, 0.818247f, 0.818192f, 0.818137f, 0.818081f, + 0.818026f, 0.817971f, 0.817916f, 0.817861f, 0.817806f, 0.817750f, 0.817695f, 0.817640f, + 0.817585f, 0.817530f, 0.817474f, 0.817419f, 0.817364f, 0.817309f, 0.817253f, 0.817198f, + 0.817143f, 0.817088f, 0.817032f, 0.816977f, 0.816922f, 0.816867f, 0.816811f, 0.816756f, + 0.816701f, 0.816645f, 0.816590f, 0.816535f, 0.816479f, 0.816424f, 0.816368f, 0.816313f, + 0.816258f, 0.816202f, 0.816147f, 0.816092f, 0.816036f, 0.815981f, 0.815925f, 0.815870f, + 0.815814f, 0.815759f, 0.815704f, 0.815648f, 0.815593f, 0.815537f, 0.815482f, 0.815426f, + 0.815371f, 0.815315f, 0.815260f, 0.815204f, 0.815149f, 0.815093f, 0.815037f, 0.814982f, + 0.814926f, 0.814871f, 0.814815f, 0.814760f, 0.814704f, 0.814648f, 0.814593f, 0.814537f, + 0.814482f, 0.814426f, 0.814370f, 0.814315f, 0.814259f, 0.814203f, 0.814148f, 0.814092f, + 0.814036f, 0.813981f, 0.813925f, 0.813869f, 0.813814f, 0.813758f, 0.813702f, 0.813646f, + 0.813591f, 0.813535f, 0.813479f, 0.813423f, 0.813368f, 0.813312f, 0.813256f, 0.813200f, + 0.813144f, 0.813089f, 0.813033f, 0.812977f, 0.812921f, 0.812865f, 0.812809f, 0.812754f, + 0.812698f, 0.812642f, 0.812586f, 0.812530f, 0.812474f, 0.812418f, 0.812362f, 0.812307f, + 0.812251f, 0.812195f, 0.812139f, 0.812083f, 0.812027f, 0.811971f, 0.811915f, 0.811859f, + 0.811803f, 0.811747f, 0.811691f, 0.811635f, 0.811579f, 0.811523f, 0.811467f, 0.811411f, + 0.811355f, 0.811299f, 0.811243f, 0.811187f, 0.811131f, 0.811075f, 0.811018f, 0.810962f, + 0.810906f, 0.810850f, 0.810794f, 0.810738f, 0.810682f, 0.810626f, 0.810570f, 0.810513f, + 0.810457f, 0.810401f, 0.810345f, 0.810289f, 0.810232f, 0.810176f, 0.810120f, 0.810064f, + 0.810008f, 0.809951f, 0.809895f, 0.809839f, 0.809783f, 0.809726f, 0.809670f, 0.809614f, + 0.809558f, 0.809501f, 0.809445f, 0.809389f, 0.809332f, 0.809276f, 0.809220f, 0.809164f, + 0.809107f, 0.809051f, 0.808994f, 0.808938f, 0.808882f, 0.808825f, 0.808769f, 0.808713f, + 0.808656f, 0.808600f, 0.808543f, 0.808487f, 0.808430f, 0.808374f, 0.808318f, 0.808261f, + 0.808205f, 0.808148f, 0.808092f, 0.808035f, 0.807979f, 0.807922f, 0.807866f, 0.807809f, + 0.807753f, 0.807696f, 0.807640f, 0.807583f, 0.807527f, 0.807470f, 0.807414f, 0.807357f, + 0.807300f, 0.807244f, 0.807187f, 0.807131f, 0.807074f, 0.807017f, 0.806961f, 0.806904f, + 0.806848f, 0.806791f, 0.806734f, 0.806678f, 0.806621f, 0.806564f, 0.806508f, 0.806451f, + 0.806394f, 0.806338f, 0.806281f, 0.806224f, 0.806167f, 0.806111f, 0.806054f, 0.805997f, + 0.805940f, 0.805884f, 0.805827f, 0.805770f, 0.805713f, 0.805656f, 0.805600f, 0.805543f, + 0.805486f, 0.805429f, 0.805372f, 0.805316f, 0.805259f, 0.805202f, 0.805145f, 0.805088f, + 0.805031f, 0.804974f, 0.804918f, 0.804861f, 0.804804f, 0.804747f, 0.804690f, 0.804633f, + 0.804576f, 0.804519f, 0.804462f, 0.804405f, 0.804348f, 0.804291f, 0.804234f, 0.804177f, + 0.804120f, 0.804063f, 0.804006f, 0.803949f, 0.803892f, 0.803835f, 0.803778f, 0.803721f, + 0.803664f, 0.803607f, 0.803550f, 0.803493f, 0.803436f, 0.803379f, 0.803322f, 0.803265f, + 0.803208f, 0.803150f, 0.803093f, 0.803036f, 0.802979f, 0.802922f, 0.802865f, 0.802808f, + 0.802750f, 0.802693f, 0.802636f, 0.802579f, 0.802522f, 0.802464f, 0.802407f, 0.802350f, + 0.802293f, 0.802236f, 0.802178f, 0.802121f, 0.802064f, 0.802007f, 0.801949f, 0.801892f, + 0.801835f, 0.801777f, 0.801720f, 0.801663f, 0.801606f, 0.801548f, 0.801491f, 0.801434f, + 0.801376f, 0.801319f, 0.801261f, 0.801204f, 0.801147f, 0.801089f, 0.801032f, 0.800975f, + 0.800917f, 0.800860f, 0.800802f, 0.800745f, 0.800687f, 0.800630f, 0.800573f, 0.800515f, + 0.800458f, 0.800400f, 0.800343f, 0.800285f, 0.800228f, 0.800170f, 0.800113f, 0.800055f, + 0.799998f, 0.799940f, 0.799883f, 0.799825f, 0.799768f, 0.799710f, 0.799652f, 0.799595f, + 0.799537f, 0.799480f, 0.799422f, 0.799365f, 0.799307f, 0.799249f, 0.799192f, 0.799134f, + 0.799076f, 0.799019f, 0.798961f, 0.798903f, 0.798846f, 0.798788f, 0.798730f, 0.798673f, + 0.798615f, 0.798557f, 0.798500f, 0.798442f, 0.798384f, 0.798326f, 0.798269f, 0.798211f, + 0.798153f, 0.798095f, 0.798038f, 0.797980f, 0.797922f, 0.797864f, 0.797806f, 0.797749f, + 0.797691f, 0.797633f, 0.797575f, 0.797517f, 0.797459f, 0.797402f, 0.797344f, 0.797286f, + 0.797228f, 0.797170f, 0.797112f, 0.797054f, 0.796996f, 0.796939f, 0.796881f, 0.796823f, + 0.796765f, 0.796707f, 0.796649f, 0.796591f, 0.796533f, 0.796475f, 0.796417f, 0.796359f, + 0.796301f, 0.796243f, 0.796185f, 0.796127f, 0.796069f, 0.796011f, 0.795953f, 0.795895f, + 0.795837f, 0.795779f, 0.795721f, 0.795663f, 0.795605f, 0.795547f, 0.795488f, 0.795430f, + 0.795372f, 0.795314f, 0.795256f, 0.795198f, 0.795140f, 0.795082f, 0.795023f, 0.794965f, + 0.794907f, 0.794849f, 0.794791f, 0.794733f, 0.794674f, 0.794616f, 0.794558f, 0.794500f, + 0.794442f, 0.794383f, 0.794325f, 0.794267f, 0.794209f, 0.794150f, 0.794092f, 0.794034f, + 0.793975f, 0.793917f, 0.793859f, 0.793801f, 0.793742f, 0.793684f, 0.793626f, 0.793567f, + 0.793509f, 0.793451f, 0.793392f, 0.793334f, 0.793276f, 0.793217f, 0.793159f, 0.793100f, + 0.793042f, 0.792984f, 0.792925f, 0.792867f, 0.792808f, 0.792750f, 0.792691f, 0.792633f, + 0.792575f, 0.792516f, 0.792458f, 0.792399f, 0.792341f, 0.792282f, 0.792224f, 0.792165f, + 0.792107f, 0.792048f, 0.791990f, 0.791931f, 0.791872f, 0.791814f, 0.791755f, 0.791697f, + 0.791638f, 0.791580f, 0.791521f, 0.791462f, 0.791404f, 0.791345f, 0.791287f, 0.791228f, + 0.791169f, 0.791111f, 0.791052f, 0.790993f, 0.790935f, 0.790876f, 0.790817f, 0.790759f, + 0.790700f, 0.790641f, 0.790583f, 0.790524f, 0.790465f, 0.790406f, 0.790348f, 0.790289f, + 0.790230f, 0.790171f, 0.790113f, 0.790054f, 0.789995f, 0.789936f, 0.789878f, 0.789819f, + 0.789760f, 0.789701f, 0.789642f, 0.789584f, 0.789525f, 0.789466f, 0.789407f, 0.789348f, + 0.789289f, 0.789230f, 0.789172f, 0.789113f, 0.789054f, 0.788995f, 0.788936f, 0.788877f, + 0.788818f, 0.788759f, 0.788700f, 0.788641f, 0.788582f, 0.788523f, 0.788464f, 0.788405f, + 0.788346f, 0.788287f, 0.788228f, 0.788169f, 0.788110f, 0.788051f, 0.787992f, 0.787933f, + 0.787874f, 0.787815f, 0.787756f, 0.787697f, 0.787638f, 0.787579f, 0.787520f, 0.787461f, + 0.787402f, 0.787343f, 0.787284f, 0.787224f, 0.787165f, 0.787106f, 0.787047f, 0.786988f, + 0.786929f, 0.786870f, 0.786810f, 0.786751f, 0.786692f, 0.786633f, 0.786574f, 0.786514f, + 0.786455f, 0.786396f, 0.786337f, 0.786278f, 0.786218f, 0.786159f, 0.786100f, 0.786041f, + 0.785981f, 0.785922f, 0.785863f, 0.785803f, 0.785744f, 0.785685f, 0.785625f, 0.785566f, + 0.785507f, 0.785447f, 0.785388f, 0.785329f, 0.785269f, 0.785210f, 0.785151f, 0.785091f, + 0.785032f, 0.784973f, 0.784913f, 0.784854f, 0.784794f, 0.784735f, 0.784675f, 0.784616f, + 0.784557f, 0.784497f, 0.784438f, 0.784378f, 0.784319f, 0.784259f, 0.784200f, 0.784140f, + 0.784081f, 0.784021f, 0.783962f, 0.783902f, 0.783843f, 0.783783f, 0.783724f, 0.783664f, + 0.783605f, 0.783545f, 0.783485f, 0.783426f, 0.783366f, 0.783307f, 0.783247f, 0.783187f, + 0.783128f, 0.783068f, 0.783009f, 0.782949f, 0.782889f, 0.782830f, 0.782770f, 0.782710f, + 0.782651f, 0.782591f, 0.782531f, 0.782472f, 0.782412f, 0.782352f, 0.782292f, 0.782233f, + 0.782173f, 0.782113f, 0.782053f, 0.781994f, 0.781934f, 0.781874f, 0.781814f, 0.781755f, + 0.781695f, 0.781635f, 0.781575f, 0.781515f, 0.781456f, 0.781396f, 0.781336f, 0.781276f, + 0.781216f, 0.781156f, 0.781097f, 0.781037f, 0.780977f, 0.780917f, 0.780857f, 0.780797f, + 0.780737f, 0.780677f, 0.780617f, 0.780557f, 0.780498f, 0.780438f, 0.780378f, 0.780318f, + 0.780258f, 0.780198f, 0.780138f, 0.780078f, 0.780018f, 0.779958f, 0.779898f, 0.779838f, + 0.779778f, 0.779718f, 0.779658f, 0.779598f, 0.779538f, 0.779478f, 0.779418f, 0.779357f, + 0.779297f, 0.779237f, 0.779177f, 0.779117f, 0.779057f, 0.778997f, 0.778937f, 0.778877f, + 0.778817f, 0.778756f, 0.778696f, 0.778636f, 0.778576f, 0.778516f, 0.778456f, 0.778395f, + 0.778335f, 0.778275f, 0.778215f, 0.778155f, 0.778094f, 0.778034f, 0.777974f, 0.777914f, + 0.777853f, 0.777793f, 0.777733f, 0.777673f, 0.777612f, 0.777552f, 0.777492f, 0.777431f, + 0.777371f, 0.777311f, 0.777251f, 0.777190f, 0.777130f, 0.777070f, 0.777009f, 0.776949f, + 0.776888f, 0.776828f, 0.776768f, 0.776707f, 0.776647f, 0.776587f, 0.776526f, 0.776466f, + 0.776405f, 0.776345f, 0.776284f, 0.776224f, 0.776164f, 0.776103f, 0.776043f, 0.775982f, + 0.775922f, 0.775861f, 0.775801f, 0.775740f, 0.775680f, 0.775619f, 0.775559f, 0.775498f, + 0.775438f, 0.775377f, 0.775317f, 0.775256f, 0.775195f, 0.775135f, 0.775074f, 0.775014f, + 0.774953f, 0.774893f, 0.774832f, 0.774771f, 0.774711f, 0.774650f, 0.774589f, 0.774529f, + 0.774468f, 0.774407f, 0.774347f, 0.774286f, 0.774225f, 0.774165f, 0.774104f, 0.774043f, + 0.773983f, 0.773922f, 0.773861f, 0.773801f, 0.773740f, 0.773679f, 0.773618f, 0.773558f, + 0.773497f, 0.773436f, 0.773375f, 0.773314f, 0.773254f, 0.773193f, 0.773132f, 0.773071f, + 0.773010f, 0.772950f, 0.772889f, 0.772828f, 0.772767f, 0.772706f, 0.772645f, 0.772584f, + 0.772524f, 0.772463f, 0.772402f, 0.772341f, 0.772280f, 0.772219f, 0.772158f, 0.772097f, + 0.772036f, 0.771975f, 0.771915f, 0.771854f, 0.771793f, 0.771732f, 0.771671f, 0.771610f, + 0.771549f, 0.771488f, 0.771427f, 0.771366f, 0.771305f, 0.771244f, 0.771183f, 0.771122f, + 0.771061f, 0.770999f, 0.770938f, 0.770877f, 0.770816f, 0.770755f, 0.770694f, 0.770633f, + 0.770572f, 0.770511f, 0.770450f, 0.770389f, 0.770327f, 0.770266f, 0.770205f, 0.770144f, + 0.770083f, 0.770022f, 0.769961f, 0.769899f, 0.769838f, 0.769777f, 0.769716f, 0.769655f, + 0.769593f, 0.769532f, 0.769471f, 0.769410f, 0.769348f, 0.769287f, 0.769226f, 0.769165f, + 0.769103f, 0.769042f, 0.768981f, 0.768919f, 0.768858f, 0.768797f, 0.768736f, 0.768674f, + 0.768613f, 0.768552f, 0.768490f, 0.768429f, 0.768368f, 0.768306f, 0.768245f, 0.768183f, + 0.768122f, 0.768061f, 0.767999f, 0.767938f, 0.767876f, 0.767815f, 0.767754f, 0.767692f, + 0.767631f, 0.767569f, 0.767508f, 0.767446f, 0.767385f, 0.767323f, 0.767262f, 0.767200f, + 0.767139f, 0.767077f, 0.767016f, 0.766954f, 0.766893f, 0.766831f, 0.766770f, 0.766708f, + 0.766647f, 0.766585f, 0.766524f, 0.766462f, 0.766400f, 0.766339f, 0.766277f, 0.766216f, + 0.766154f, 0.766092f, 0.766031f, 0.765969f, 0.765907f, 0.765846f, 0.765784f, 0.765723f, + 0.765661f, 0.765599f, 0.765538f, 0.765476f, 0.765414f, 0.765352f, 0.765291f, 0.765229f, + 0.765167f, 0.765106f, 0.765044f, 0.764982f, 0.764920f, 0.764859f, 0.764797f, 0.764735f, + 0.764673f, 0.764611f, 0.764550f, 0.764488f, 0.764426f, 0.764364f, 0.764302f, 0.764241f, + 0.764179f, 0.764117f, 0.764055f, 0.763993f, 0.763931f, 0.763869f, 0.763808f, 0.763746f, + 0.763684f, 0.763622f, 0.763560f, 0.763498f, 0.763436f, 0.763374f, 0.763312f, 0.763250f, + 0.763188f, 0.763126f, 0.763065f, 0.763003f, 0.762941f, 0.762879f, 0.762817f, 0.762755f, + 0.762693f, 0.762631f, 0.762569f, 0.762507f, 0.762444f, 0.762382f, 0.762320f, 0.762258f, + 0.762196f, 0.762134f, 0.762072f, 0.762010f, 0.761948f, 0.761886f, 0.761824f, 0.761762f, + 0.761700f, 0.761637f, 0.761575f, 0.761513f, 0.761451f, 0.761389f, 0.761327f, 0.761265f, + 0.761202f, 0.761140f, 0.761078f, 0.761016f, 0.760954f, 0.760891f, 0.760829f, 0.760767f, + 0.760705f, 0.760643f, 0.760580f, 0.760518f, 0.760456f, 0.760394f, 0.760331f, 0.760269f, + 0.760207f, 0.760144f, 0.760082f, 0.760020f, 0.759957f, 0.759895f, 0.759833f, 0.759771f, + 0.759708f, 0.759646f, 0.759583f, 0.759521f, 0.759459f, 0.759396f, 0.759334f, 0.759272f, + 0.759209f, 0.759147f, 0.759084f, 0.759022f, 0.758960f, 0.758897f, 0.758835f, 0.758772f, + 0.758710f, 0.758647f, 0.758585f, 0.758522f, 0.758460f, 0.758397f, 0.758335f, 0.758272f, + 0.758210f, 0.758147f, 0.758085f, 0.758022f, 0.757960f, 0.757897f, 0.757835f, 0.757772f, + 0.757710f, 0.757647f, 0.757584f, 0.757522f, 0.757459f, 0.757397f, 0.757334f, 0.757271f, + 0.757209f, 0.757146f, 0.757084f, 0.757021f, 0.756958f, 0.756896f, 0.756833f, 0.756770f, + 0.756708f, 0.756645f, 0.756582f, 0.756520f, 0.756457f, 0.756394f, 0.756331f, 0.756269f, + 0.756206f, 0.756143f, 0.756081f, 0.756018f, 0.755955f, 0.755892f, 0.755829f, 0.755767f, + 0.755704f, 0.755641f, 0.755578f, 0.755516f, 0.755453f, 0.755390f, 0.755327f, 0.755264f, + 0.755201f, 0.755139f, 0.755076f, 0.755013f, 0.754950f, 0.754887f, 0.754824f, 0.754761f, + 0.754698f, 0.754636f, 0.754573f, 0.754510f, 0.754447f, 0.754384f, 0.754321f, 0.754258f, + 0.754195f, 0.754132f, 0.754069f, 0.754006f, 0.753943f, 0.753880f, 0.753817f, 0.753754f, + 0.753691f, 0.753628f, 0.753565f, 0.753502f, 0.753439f, 0.753376f, 0.753313f, 0.753250f, + 0.753187f, 0.753124f, 0.753061f, 0.752998f, 0.752934f, 0.752871f, 0.752808f, 0.752745f, + 0.752682f, 0.752619f, 0.752556f, 0.752493f, 0.752429f, 0.752366f, 0.752303f, 0.752240f, + 0.752177f, 0.752114f, 0.752050f, 0.751987f, 0.751924f, 0.751861f, 0.751798f, 0.751734f, + 0.751671f, 0.751608f, 0.751545f, 0.751481f, 0.751418f, 0.751355f, 0.751292f, 0.751228f, + 0.751165f, 0.751102f, 0.751039f, 0.750975f, 0.750912f, 0.750849f, 0.750785f, 0.750722f, + 0.750659f, 0.750595f, 0.750532f, 0.750469f, 0.750405f, 0.750342f, 0.750278f, 0.750215f, + 0.750152f, 0.750088f, 0.750025f, 0.749961f, 0.749898f, 0.749835f, 0.749771f, 0.749708f, + 0.749644f, 0.749581f, 0.749517f, 0.749454f, 0.749390f, 0.749327f, 0.749263f, 0.749200f, + 0.749136f, 0.749073f, 0.749009f, 0.748946f, 0.748882f, 0.748819f, 0.748755f, 0.748692f, + 0.748628f, 0.748565f, 0.748501f, 0.748437f, 0.748374f, 0.748310f, 0.748247f, 0.748183f, + 0.748119f, 0.748056f, 0.747992f, 0.747929f, 0.747865f, 0.747801f, 0.747738f, 0.747674f, + 0.747610f, 0.747547f, 0.747483f, 0.747419f, 0.747355f, 0.747292f, 0.747228f, 0.747164f, + 0.747101f, 0.747037f, 0.746973f, 0.746909f, 0.746846f, 0.746782f, 0.746718f, 0.746654f, + 0.746591f, 0.746527f, 0.746463f, 0.746399f, 0.746335f, 0.746272f, 0.746208f, 0.746144f, + 0.746080f, 0.746016f, 0.745952f, 0.745889f, 0.745825f, 0.745761f, 0.745697f, 0.745633f, + 0.745569f, 0.745505f, 0.745441f, 0.745377f, 0.745314f, 0.745250f, 0.745186f, 0.745122f, + 0.745058f, 0.744994f, 0.744930f, 0.744866f, 0.744802f, 0.744738f, 0.744674f, 0.744610f, + 0.744546f, 0.744482f, 0.744418f, 0.744354f, 0.744290f, 0.744226f, 0.744162f, 0.744098f, + 0.744034f, 0.743970f, 0.743906f, 0.743842f, 0.743777f, 0.743713f, 0.743649f, 0.743585f, + 0.743521f, 0.743457f, 0.743393f, 0.743329f, 0.743265f, 0.743200f, 0.743136f, 0.743072f, + 0.743008f, 0.742944f, 0.742880f, 0.742815f, 0.742751f, 0.742687f, 0.742623f, 0.742559f, + 0.742494f, 0.742430f, 0.742366f, 0.742302f, 0.742237f, 0.742173f, 0.742109f, 0.742045f, + 0.741980f, 0.741916f, 0.741852f, 0.741788f, 0.741723f, 0.741659f, 0.741595f, 0.741530f, + 0.741466f, 0.741402f, 0.741337f, 0.741273f, 0.741209f, 0.741144f, 0.741080f, 0.741015f, + 0.740951f, 0.740887f, 0.740822f, 0.740758f, 0.740694f, 0.740629f, 0.740565f, 0.740500f, + 0.740436f, 0.740371f, 0.740307f, 0.740242f, 0.740178f, 0.740114f, 0.740049f, 0.739985f, + 0.739920f, 0.739856f, 0.739791f, 0.739727f, 0.739662f, 0.739598f, 0.739533f, 0.739468f, + 0.739404f, 0.739339f, 0.739275f, 0.739210f, 0.739146f, 0.739081f, 0.739017f, 0.738952f, + 0.738887f, 0.738823f, 0.738758f, 0.738693f, 0.738629f, 0.738564f, 0.738500f, 0.738435f, + 0.738370f, 0.738306f, 0.738241f, 0.738176f, 0.738112f, 0.738047f, 0.737982f, 0.737918f, + 0.737853f, 0.737788f, 0.737723f, 0.737659f, 0.737594f, 0.737529f, 0.737464f, 0.737400f, + 0.737335f, 0.737270f, 0.737205f, 0.737141f, 0.737076f, 0.737011f, 0.736946f, 0.736881f, + 0.736817f, 0.736752f, 0.736687f, 0.736622f, 0.736557f, 0.736492f, 0.736428f, 0.736363f, + 0.736298f, 0.736233f, 0.736168f, 0.736103f, 0.736038f, 0.735973f, 0.735908f, 0.735844f, + 0.735779f, 0.735714f, 0.735649f, 0.735584f, 0.735519f, 0.735454f, 0.735389f, 0.735324f, + 0.735259f, 0.735194f, 0.735129f, 0.735064f, 0.734999f, 0.734934f, 0.734869f, 0.734804f, + 0.734739f, 0.734674f, 0.734609f, 0.734544f, 0.734479f, 0.734414f, 0.734349f, 0.734283f, + 0.734218f, 0.734153f, 0.734088f, 0.734023f, 0.733958f, 0.733893f, 0.733828f, 0.733763f, + 0.733697f, 0.733632f, 0.733567f, 0.733502f, 0.733437f, 0.733372f, 0.733306f, 0.733241f, + 0.733176f, 0.733111f, 0.733046f, 0.732980f, 0.732915f, 0.732850f, 0.732785f, 0.732720f, + 0.732654f, 0.732589f, 0.732524f, 0.732458f, 0.732393f, 0.732328f, 0.732263f, 0.732197f, + 0.732132f, 0.732067f, 0.732001f, 0.731936f, 0.731871f, 0.731805f, 0.731740f, 0.731675f, + 0.731609f, 0.731544f, 0.731479f, 0.731413f, 0.731348f, 0.731282f, 0.731217f, 0.731152f, + 0.731086f, 0.731021f, 0.730955f, 0.730890f, 0.730825f, 0.730759f, 0.730694f, 0.730628f, + 0.730563f, 0.730497f, 0.730432f, 0.730366f, 0.730301f, 0.730235f, 0.730170f, 0.730104f, + 0.730039f, 0.729973f, 0.729908f, 0.729842f, 0.729777f, 0.729711f, 0.729646f, 0.729580f, + 0.729514f, 0.729449f, 0.729383f, 0.729318f, 0.729252f, 0.729186f, 0.729121f, 0.729055f, + 0.728990f, 0.728924f, 0.728858f, 0.728793f, 0.728727f, 0.728661f, 0.728596f, 0.728530f, + 0.728464f, 0.728399f, 0.728333f, 0.728267f, 0.728202f, 0.728136f, 0.728070f, 0.728004f, + 0.727939f, 0.727873f, 0.727807f, 0.727741f, 0.727676f, 0.727610f, 0.727544f, 0.727478f, + 0.727413f, 0.727347f, 0.727281f, 0.727215f, 0.727149f, 0.727084f, 0.727018f, 0.726952f, + 0.726886f, 0.726820f, 0.726754f, 0.726689f, 0.726623f, 0.726557f, 0.726491f, 0.726425f, + 0.726359f, 0.726293f, 0.726227f, 0.726161f, 0.726095f, 0.726030f, 0.725964f, 0.725898f, + 0.725832f, 0.725766f, 0.725700f, 0.725634f, 0.725568f, 0.725502f, 0.725436f, 0.725370f, + 0.725304f, 0.725238f, 0.725172f, 0.725106f, 0.725040f, 0.724974f, 0.724908f, 0.724842f, + 0.724776f, 0.724710f, 0.724644f, 0.724578f, 0.724511f, 0.724445f, 0.724379f, 0.724313f, + 0.724247f, 0.724181f, 0.724115f, 0.724049f, 0.723983f, 0.723916f, 0.723850f, 0.723784f, + 0.723718f, 0.723652f, 0.723586f, 0.723520f, 0.723453f, 0.723387f, 0.723321f, 0.723255f, + 0.723188f, 0.723122f, 0.723056f, 0.722990f, 0.722924f, 0.722857f, 0.722791f, 0.722725f, + 0.722659f, 0.722592f, 0.722526f, 0.722460f, 0.722393f, 0.722327f, 0.722261f, 0.722194f, + 0.722128f, 0.722062f, 0.721996f, 0.721929f, 0.721863f, 0.721797f, 0.721730f, 0.721664f, + 0.721597f, 0.721531f, 0.721465f, 0.721398f, 0.721332f, 0.721265f, 0.721199f, 0.721133f, + 0.721066f, 0.721000f, 0.720933f, 0.720867f, 0.720800f, 0.720734f, 0.720668f, 0.720601f, + 0.720535f, 0.720468f, 0.720402f, 0.720335f, 0.720269f, 0.720202f, 0.720136f, 0.720069f, + 0.720003f, 0.719936f, 0.719869f, 0.719803f, 0.719736f, 0.719670f, 0.719603f, 0.719537f, + 0.719470f, 0.719403f, 0.719337f, 0.719270f, 0.719204f, 0.719137f, 0.719070f, 0.719004f, + 0.718937f, 0.718870f, 0.718804f, 0.718737f, 0.718670f, 0.718604f, 0.718537f, 0.718471f, + 0.718404f, 0.718337f, 0.718270f, 0.718204f, 0.718137f, 0.718070f, 0.718004f, 0.717937f, + 0.717870f, 0.717803f, 0.717737f, 0.717670f, 0.717603f, 0.717536f, 0.717469f, 0.717403f, + 0.717336f, 0.717269f, 0.717202f, 0.717135f, 0.717069f, 0.717002f, 0.716935f, 0.716868f, + 0.716801f, 0.716734f, 0.716668f, 0.716601f, 0.716534f, 0.716467f, 0.716400f, 0.716333f, + 0.716266f, 0.716199f, 0.716132f, 0.716066f, 0.715999f, 0.715932f, 0.715865f, 0.715798f, + 0.715731f, 0.715664f, 0.715597f, 0.715530f, 0.715463f, 0.715396f, 0.715329f, 0.715262f, + 0.715195f, 0.715128f, 0.715061f, 0.714994f, 0.714927f, 0.714860f, 0.714793f, 0.714726f, + 0.714659f, 0.714592f, 0.714525f, 0.714457f, 0.714390f, 0.714323f, 0.714256f, 0.714189f, + 0.714122f, 0.714055f, 0.713988f, 0.713921f, 0.713853f, 0.713786f, 0.713719f, 0.713652f, + 0.713585f, 0.713518f, 0.713451f, 0.713383f, 0.713316f, 0.713249f, 0.713182f, 0.713115f, + 0.713047f, 0.712980f, 0.712913f, 0.712846f, 0.712778f, 0.712711f, 0.712644f, 0.712577f, + 0.712509f, 0.712442f, 0.712375f, 0.712308f, 0.712240f, 0.712173f, 0.712106f, 0.712038f, + 0.711971f, 0.711904f, 0.711836f, 0.711769f, 0.711702f, 0.711634f, 0.711567f, 0.711500f, + 0.711432f, 0.711365f, 0.711297f, 0.711230f, 0.711163f, 0.711095f, 0.711028f, 0.710960f, + 0.710893f, 0.710826f, 0.710758f, 0.710691f, 0.710623f, 0.710556f, 0.710488f, 0.710421f, + 0.710353f, 0.710286f, 0.710218f, 0.710151f, 0.710083f, 0.710016f, 0.709948f, 0.709881f, + 0.709813f, 0.709746f, 0.709678f, 0.709611f, 0.709543f, 0.709476f, 0.709408f, 0.709340f, + 0.709273f, 0.709205f, 0.709138f, 0.709070f, 0.709002f, 0.708935f, 0.708867f, 0.708800f, + 0.708732f, 0.708664f, 0.708597f, 0.708529f, 0.708461f, 0.708394f, 0.708326f, 0.708258f, + 0.708191f, 0.708123f, 0.708055f, 0.707988f, 0.707920f, 0.707852f, 0.707784f, 0.707717f, + 0.707649f, 0.707581f, 0.707513f, 0.707446f, 0.707378f, 0.707310f, 0.707242f, 0.707175f, + 0.707107f, 0.707039f, 0.706971f, 0.706903f, 0.706836f, 0.706768f, 0.706700f, 0.706632f, + 0.706564f, 0.706496f, 0.706429f, 0.706361f, 0.706293f, 0.706225f, 0.706157f, 0.706089f, + 0.706021f, 0.705953f, 0.705885f, 0.705818f, 0.705750f, 0.705682f, 0.705614f, 0.705546f, + 0.705478f, 0.705410f, 0.705342f, 0.705274f, 0.705206f, 0.705138f, 0.705070f, 0.705002f, + 0.704934f, 0.704866f, 0.704798f, 0.704730f, 0.704662f, 0.704594f, 0.704526f, 0.704458f, + 0.704390f, 0.704322f, 0.704254f, 0.704186f, 0.704118f, 0.704050f, 0.703981f, 0.703913f, + 0.703845f, 0.703777f, 0.703709f, 0.703641f, 0.703573f, 0.703505f, 0.703436f, 0.703368f, + 0.703300f, 0.703232f, 0.703164f, 0.703096f, 0.703028f, 0.702959f, 0.702891f, 0.702823f, + 0.702755f, 0.702687f, 0.702618f, 0.702550f, 0.702482f, 0.702414f, 0.702345f, 0.702277f, + 0.702209f, 0.702141f, 0.702072f, 0.702004f, 0.701936f, 0.701868f, 0.701799f, 0.701731f, + 0.701663f, 0.701594f, 0.701526f, 0.701458f, 0.701389f, 0.701321f, 0.701253f, 0.701184f, + 0.701116f, 0.701048f, 0.700979f, 0.700911f, 0.700842f, 0.700774f, 0.700706f, 0.700637f, + 0.700569f, 0.700500f, 0.700432f, 0.700364f, 0.700295f, 0.700227f, 0.700158f, 0.700090f, + 0.700021f, 0.699953f, 0.699884f, 0.699816f, 0.699747f, 0.699679f, 0.699610f, 0.699542f, + 0.699473f, 0.699405f, 0.699336f, 0.699268f, 0.699199f, 0.699131f, 0.699062f, 0.698994f, + 0.698925f, 0.698856f, 0.698788f, 0.698719f, 0.698651f, 0.698582f, 0.698513f, 0.698445f, + 0.698376f, 0.698308f, 0.698239f, 0.698170f, 0.698102f, 0.698033f, 0.697964f, 0.697896f, + 0.697827f, 0.697758f, 0.697690f, 0.697621f, 0.697552f, 0.697484f, 0.697415f, 0.697346f, + 0.697277f, 0.697209f, 0.697140f, 0.697071f, 0.697003f, 0.696934f, 0.696865f, 0.696796f, + 0.696728f, 0.696659f, 0.696590f, 0.696521f, 0.696452f, 0.696384f, 0.696315f, 0.696246f, + 0.696177f, 0.696108f, 0.696039f, 0.695971f, 0.695902f, 0.695833f, 0.695764f, 0.695695f, + 0.695626f, 0.695557f, 0.695489f, 0.695420f, 0.695351f, 0.695282f, 0.695213f, 0.695144f, + 0.695075f, 0.695006f, 0.694937f, 0.694868f, 0.694799f, 0.694730f, 0.694661f, 0.694592f, + 0.694524f, 0.694454f, 0.694386f, 0.694317f, 0.694248f, 0.694179f, 0.694109f, 0.694040f, + 0.693971f, 0.693902f, 0.693833f, 0.693764f, 0.693695f, 0.693626f, 0.693557f, 0.693488f, + 0.693419f, 0.693350f, 0.693281f, 0.693212f, 0.693143f, 0.693074f, 0.693004f, 0.692935f, + 0.692866f, 0.692797f, 0.692728f, 0.692659f, 0.692590f, 0.692520f, 0.692451f, 0.692382f, + 0.692313f, 0.692244f, 0.692175f, 0.692105f, 0.692036f, 0.691967f, 0.691898f, 0.691828f, + 0.691759f, 0.691690f, 0.691621f, 0.691552f, 0.691482f, 0.691413f, 0.691344f, 0.691274f, + 0.691205f, 0.691136f, 0.691067f, 0.690997f, 0.690928f, 0.690859f, 0.690789f, 0.690720f, + 0.690651f, 0.690581f, 0.690512f, 0.690443f, 0.690373f, 0.690304f, 0.690235f, 0.690165f, + 0.690096f, 0.690026f, 0.689957f, 0.689888f, 0.689818f, 0.689749f, 0.689679f, 0.689610f, + 0.689541f, 0.689471f, 0.689402f, 0.689332f, 0.689263f, 0.689193f, 0.689124f, 0.689054f, + 0.688985f, 0.688915f, 0.688846f, 0.688776f, 0.688707f, 0.688637f, 0.688568f, 0.688498f, + 0.688429f, 0.688359f, 0.688290f, 0.688220f, 0.688151f, 0.688081f, 0.688011f, 0.687942f, + 0.687872f, 0.687803f, 0.687733f, 0.687663f, 0.687594f, 0.687524f, 0.687455f, 0.687385f, + 0.687315f, 0.687246f, 0.687176f, 0.687106f, 0.687037f, 0.686967f, 0.686897f, 0.686828f, + 0.686758f, 0.686688f, 0.686619f, 0.686549f, 0.686479f, 0.686409f, 0.686340f, 0.686270f, + 0.686200f, 0.686131f, 0.686061f, 0.685991f, 0.685921f, 0.685852f, 0.685782f, 0.685712f, + 0.685642f, 0.685572f, 0.685503f, 0.685433f, 0.685363f, 0.685293f, 0.685223f, 0.685153f, + 0.685084f, 0.685014f, 0.684944f, 0.684874f, 0.684804f, 0.684734f, 0.684664f, 0.684595f, + 0.684525f, 0.684455f, 0.684385f, 0.684315f, 0.684245f, 0.684175f, 0.684105f, 0.684035f, + 0.683965f, 0.683895f, 0.683825f, 0.683756f, 0.683686f, 0.683616f, 0.683546f, 0.683476f, + 0.683406f, 0.683336f, 0.683266f, 0.683196f, 0.683126f, 0.683056f, 0.682986f, 0.682916f, + 0.682846f, 0.682775f, 0.682705f, 0.682635f, 0.682565f, 0.682495f, 0.682425f, 0.682355f, + 0.682285f, 0.682215f, 0.682145f, 0.682075f, 0.682005f, 0.681934f, 0.681864f, 0.681794f, + 0.681724f, 0.681654f, 0.681584f, 0.681514f, 0.681443f, 0.681373f, 0.681303f, 0.681233f, + 0.681163f, 0.681093f, 0.681022f, 0.680952f, 0.680882f, 0.680812f, 0.680741f, 0.680671f, + 0.680601f, 0.680531f, 0.680461f, 0.680390f, 0.680320f, 0.680250f, 0.680179f, 0.680109f, + 0.680039f, 0.679969f, 0.679898f, 0.679828f, 0.679758f, 0.679687f, 0.679617f, 0.679547f, + 0.679476f, 0.679406f, 0.679336f, 0.679265f, 0.679195f, 0.679125f, 0.679054f, 0.678984f, + 0.678913f, 0.678843f, 0.678773f, 0.678702f, 0.678632f, 0.678561f, 0.678491f, 0.678420f, + 0.678350f, 0.678280f, 0.678209f, 0.678139f, 0.678068f, 0.677998f, 0.677927f, 0.677857f, + 0.677786f, 0.677716f, 0.677645f, 0.677575f, 0.677504f, 0.677434f, 0.677363f, 0.677293f, + 0.677222f, 0.677152f, 0.677081f, 0.677011f, 0.676940f, 0.676869f, 0.676799f, 0.676728f, + 0.676658f, 0.676587f, 0.676516f, 0.676446f, 0.676375f, 0.676305f, 0.676234f, 0.676163f, + 0.676093f, 0.676022f, 0.675951f, 0.675881f, 0.675810f, 0.675739f, 0.675669f, 0.675598f, + 0.675527f, 0.675457f, 0.675386f, 0.675315f, 0.675245f, 0.675174f, 0.675103f, 0.675032f, + 0.674962f, 0.674891f, 0.674820f, 0.674749f, 0.674679f, 0.674608f, 0.674537f, 0.674466f, + 0.674396f, 0.674325f, 0.674254f, 0.674183f, 0.674112f, 0.674042f, 0.673971f, 0.673900f, + 0.673829f, 0.673758f, 0.673687f, 0.673616f, 0.673546f, 0.673475f, 0.673404f, 0.673333f, + 0.673262f, 0.673191f, 0.673120f, 0.673049f, 0.672978f, 0.672908f, 0.672837f, 0.672766f, + 0.672695f, 0.672624f, 0.672553f, 0.672482f, 0.672411f, 0.672340f, 0.672269f, 0.672198f, + 0.672127f, 0.672056f, 0.671985f, 0.671914f, 0.671843f, 0.671772f, 0.671701f, 0.671630f, + 0.671559f, 0.671488f, 0.671417f, 0.671346f, 0.671275f, 0.671204f, 0.671133f, 0.671062f, + 0.670990f, 0.670919f, 0.670848f, 0.670777f, 0.670706f, 0.670635f, 0.670564f, 0.670493f, + 0.670422f, 0.670350f, 0.670279f, 0.670208f, 0.670137f, 0.670066f, 0.669995f, 0.669923f, + 0.669852f, 0.669781f, 0.669710f, 0.669639f, 0.669567f, 0.669496f, 0.669425f, 0.669354f, + 0.669283f, 0.669211f, 0.669140f, 0.669069f, 0.668998f, 0.668926f, 0.668855f, 0.668784f, + 0.668712f, 0.668641f, 0.668570f, 0.668499f, 0.668427f, 0.668356f, 0.668285f, 0.668213f, + 0.668142f, 0.668071f, 0.667999f, 0.667928f, 0.667857f, 0.667785f, 0.667714f, 0.667643f, + 0.667571f, 0.667500f, 0.667428f, 0.667357f, 0.667286f, 0.667214f, 0.667143f, 0.667071f, + 0.667000f, 0.666928f, 0.666857f, 0.666786f, 0.666714f, 0.666643f, 0.666571f, 0.666500f, + 0.666428f, 0.666357f, 0.666285f, 0.666214f, 0.666142f, 0.666071f, 0.665999f, 0.665928f, + 0.665856f, 0.665785f, 0.665713f, 0.665642f, 0.665570f, 0.665498f, 0.665427f, 0.665355f, + 0.665284f, 0.665212f, 0.665141f, 0.665069f, 0.664997f, 0.664926f, 0.664854f, 0.664783f, + 0.664711f, 0.664639f, 0.664568f, 0.664496f, 0.664424f, 0.664353f, 0.664281f, 0.664209f, + 0.664138f, 0.664066f, 0.663994f, 0.663923f, 0.663851f, 0.663779f, 0.663708f, 0.663636f, + 0.663564f, 0.663492f, 0.663421f, 0.663349f, 0.663277f, 0.663205f, 0.663134f, 0.663062f, + 0.662990f, 0.662918f, 0.662847f, 0.662775f, 0.662703f, 0.662631f, 0.662559f, 0.662488f, + 0.662416f, 0.662344f, 0.662272f, 0.662200f, 0.662128f, 0.662057f, 0.661985f, 0.661913f, + 0.661841f, 0.661769f, 0.661697f, 0.661625f, 0.661553f, 0.661482f, 0.661410f, 0.661338f, + 0.661266f, 0.661194f, 0.661122f, 0.661050f, 0.660978f, 0.660906f, 0.660834f, 0.660762f, + 0.660690f, 0.660618f, 0.660546f, 0.660474f, 0.660402f, 0.660330f, 0.660258f, 0.660186f, + 0.660114f, 0.660042f, 0.659970f, 0.659898f, 0.659826f, 0.659754f, 0.659682f, 0.659610f, + 0.659538f, 0.659466f, 0.659394f, 0.659322f, 0.659250f, 0.659178f, 0.659105f, 0.659033f, + 0.658961f, 0.658889f, 0.658817f, 0.658745f, 0.658673f, 0.658601f, 0.658529f, 0.658456f, + 0.658384f, 0.658312f, 0.658240f, 0.658168f, 0.658095f, 0.658023f, 0.657951f, 0.657879f, + 0.657807f, 0.657734f, 0.657662f, 0.657590f, 0.657518f, 0.657446f, 0.657373f, 0.657301f, + 0.657229f, 0.657157f, 0.657084f, 0.657012f, 0.656940f, 0.656867f, 0.656795f, 0.656723f, + 0.656651f, 0.656578f, 0.656506f, 0.656434f, 0.656361f, 0.656289f, 0.656217f, 0.656144f, + 0.656072f, 0.656000f, 0.655927f, 0.655855f, 0.655782f, 0.655710f, 0.655638f, 0.655565f, + 0.655493f, 0.655420f, 0.655348f, 0.655276f, 0.655203f, 0.655131f, 0.655058f, 0.654986f, + 0.654913f, 0.654841f, 0.654769f, 0.654696f, 0.654624f, 0.654551f, 0.654479f, 0.654406f, + 0.654334f, 0.654261f, 0.654189f, 0.654116f, 0.654044f, 0.653971f, 0.653899f, 0.653826f, + 0.653753f, 0.653681f, 0.653608f, 0.653536f, 0.653463f, 0.653391f, 0.653318f, 0.653245f, + 0.653173f, 0.653100f, 0.653028f, 0.652955f, 0.652882f, 0.652810f, 0.652737f, 0.652665f, + 0.652592f, 0.652519f, 0.652447f, 0.652374f, 0.652301f, 0.652229f, 0.652156f, 0.652083f, + 0.652011f, 0.651938f, 0.651865f, 0.651792f, 0.651720f, 0.651647f, 0.651574f, 0.651502f, + 0.651429f, 0.651356f, 0.651283f, 0.651211f, 0.651138f, 0.651065f, 0.650992f, 0.650919f, + 0.650847f, 0.650774f, 0.650701f, 0.650628f, 0.650555f, 0.650483f, 0.650410f, 0.650337f, + 0.650264f, 0.650191f, 0.650119f, 0.650046f, 0.649973f, 0.649900f, 0.649827f, 0.649754f, + 0.649681f, 0.649608f, 0.649536f, 0.649463f, 0.649390f, 0.649317f, 0.649244f, 0.649171f, + 0.649098f, 0.649025f, 0.648952f, 0.648879f, 0.648806f, 0.648733f, 0.648660f, 0.648587f, + 0.648514f, 0.648441f, 0.648368f, 0.648295f, 0.648222f, 0.648149f, 0.648076f, 0.648003f, + 0.647930f, 0.647857f, 0.647784f, 0.647711f, 0.647638f, 0.647565f, 0.647492f, 0.647419f, + 0.647346f, 0.647273f, 0.647200f, 0.647127f, 0.647054f, 0.646981f, 0.646907f, 0.646834f, + 0.646761f, 0.646688f, 0.646615f, 0.646542f, 0.646469f, 0.646396f, 0.646322f, 0.646249f, + 0.646176f, 0.646103f, 0.646030f, 0.645956f, 0.645883f, 0.645810f, 0.645737f, 0.645664f, + 0.645590f, 0.645517f, 0.645444f, 0.645371f, 0.645298f, 0.645224f, 0.645151f, 0.645078f, + 0.645005f, 0.644931f, 0.644858f, 0.644785f, 0.644711f, 0.644638f, 0.644565f, 0.644492f, + 0.644418f, 0.644345f, 0.644272f, 0.644198f, 0.644125f, 0.644052f, 0.643978f, 0.643905f, + 0.643832f, 0.643758f, 0.643685f, 0.643611f, 0.643538f, 0.643465f, 0.643391f, 0.643318f, + 0.643245f, 0.643171f, 0.643098f, 0.643024f, 0.642951f, 0.642877f, 0.642804f, 0.642730f, + 0.642657f, 0.642584f, 0.642510f, 0.642437f, 0.642363f, 0.642290f, 0.642216f, 0.642143f, + 0.642069f, 0.641996f, 0.641922f, 0.641849f, 0.641775f, 0.641702f, 0.641628f, 0.641555f, + 0.641481f, 0.641407f, 0.641334f, 0.641260f, 0.641187f, 0.641113f, 0.641040f, 0.640966f, + 0.640892f, 0.640819f, 0.640745f, 0.640672f, 0.640598f, 0.640524f, 0.640451f, 0.640377f, + 0.640303f, 0.640230f, 0.640156f, 0.640083f, 0.640009f, 0.639935f, 0.639862f, 0.639788f, + 0.639714f, 0.639640f, 0.639567f, 0.639493f, 0.639419f, 0.639346f, 0.639272f, 0.639198f, + 0.639124f, 0.639051f, 0.638977f, 0.638903f, 0.638829f, 0.638756f, 0.638682f, 0.638608f, + 0.638534f, 0.638461f, 0.638387f, 0.638313f, 0.638239f, 0.638165f, 0.638092f, 0.638018f, + 0.637944f, 0.637870f, 0.637796f, 0.637722f, 0.637649f, 0.637575f, 0.637501f, 0.637427f, + 0.637353f, 0.637279f, 0.637205f, 0.637131f, 0.637057f, 0.636984f, 0.636910f, 0.636836f, + 0.636762f, 0.636688f, 0.636614f, 0.636540f, 0.636466f, 0.636392f, 0.636318f, 0.636244f, + 0.636170f, 0.636096f, 0.636022f, 0.635948f, 0.635874f, 0.635800f, 0.635726f, 0.635652f, + 0.635578f, 0.635504f, 0.635430f, 0.635356f, 0.635282f, 0.635208f, 0.635134f, 0.635060f, + 0.634986f, 0.634912f, 0.634838f, 0.634764f, 0.634690f, 0.634616f, 0.634542f, 0.634467f, + 0.634393f, 0.634319f, 0.634245f, 0.634171f, 0.634097f, 0.634023f, 0.633949f, 0.633874f, + 0.633800f, 0.633726f, 0.633652f, 0.633578f, 0.633504f, 0.633429f, 0.633355f, 0.633281f, + 0.633207f, 0.633133f, 0.633058f, 0.632984f, 0.632910f, 0.632836f, 0.632761f, 0.632687f, + 0.632613f, 0.632539f, 0.632464f, 0.632390f, 0.632316f, 0.632242f, 0.632167f, 0.632093f, + 0.632019f, 0.631944f, 0.631870f, 0.631796f, 0.631721f, 0.631647f, 0.631573f, 0.631499f, + 0.631424f, 0.631350f, 0.631275f, 0.631201f, 0.631127f, 0.631052f, 0.630978f, 0.630904f, + 0.630829f, 0.630755f, 0.630680f, 0.630606f, 0.630532f, 0.630457f, 0.630383f, 0.630308f, + 0.630234f, 0.630159f, 0.630085f, 0.630011f, 0.629936f, 0.629862f, 0.629787f, 0.629713f, + 0.629638f, 0.629564f, 0.629489f, 0.629415f, 0.629340f, 0.629266f, 0.629191f, 0.629117f, + 0.629042f, 0.628968f, 0.628893f, 0.628819f, 0.628744f, 0.628669f, 0.628595f, 0.628520f, + 0.628446f, 0.628371f, 0.628297f, 0.628222f, 0.628147f, 0.628073f, 0.627998f, 0.627924f, + 0.627849f, 0.627774f, 0.627700f, 0.627625f, 0.627550f, 0.627476f, 0.627401f, 0.627326f, + 0.627252f, 0.627177f, 0.627102f, 0.627028f, 0.626953f, 0.626878f, 0.626804f, 0.626729f, + 0.626654f, 0.626580f, 0.626505f, 0.626430f, 0.626355f, 0.626281f, 0.626206f, 0.626131f, + 0.626056f, 0.625982f, 0.625907f, 0.625832f, 0.625757f, 0.625683f, 0.625608f, 0.625533f, + 0.625458f, 0.625383f, 0.625309f, 0.625234f, 0.625159f, 0.625084f, 0.625009f, 0.624934f, + 0.624860f, 0.624785f, 0.624710f, 0.624635f, 0.624560f, 0.624485f, 0.624410f, 0.624335f, + 0.624260f, 0.624186f, 0.624111f, 0.624036f, 0.623961f, 0.623886f, 0.623811f, 0.623736f, + 0.623661f, 0.623586f, 0.623511f, 0.623436f, 0.623361f, 0.623286f, 0.623211f, 0.623136f, + 0.623061f, 0.622986f, 0.622911f, 0.622836f, 0.622761f, 0.622686f, 0.622611f, 0.622536f, + 0.622461f, 0.622386f, 0.622311f, 0.622236f, 0.622161f, 0.622086f, 0.622011f, 0.621936f, + 0.621861f, 0.621786f, 0.621711f, 0.621636f, 0.621560f, 0.621485f, 0.621410f, 0.621335f, + 0.621260f, 0.621185f, 0.621110f, 0.621035f, 0.620959f, 0.620884f, 0.620809f, 0.620734f, + 0.620659f, 0.620584f, 0.620508f, 0.620433f, 0.620358f, 0.620283f, 0.620208f, 0.620132f, + 0.620057f, 0.619982f, 0.619907f, 0.619832f, 0.619756f, 0.619681f, 0.619606f, 0.619531f, + 0.619455f, 0.619380f, 0.619305f, 0.619229f, 0.619154f, 0.619079f, 0.619004f, 0.618928f, + 0.618853f, 0.618778f, 0.618702f, 0.618627f, 0.618552f, 0.618476f, 0.618401f, 0.618326f, + 0.618250f, 0.618175f, 0.618100f, 0.618024f, 0.617949f, 0.617873f, 0.617798f, 0.617723f, + 0.617647f, 0.617572f, 0.617496f, 0.617421f, 0.617346f, 0.617270f, 0.617195f, 0.617119f, + 0.617044f, 0.616968f, 0.616893f, 0.616818f, 0.616742f, 0.616667f, 0.616591f, 0.616516f, + 0.616440f, 0.616365f, 0.616289f, 0.616214f, 0.616138f, 0.616063f, 0.615987f, 0.615912f, + 0.615836f, 0.615761f, 0.615685f, 0.615609f, 0.615534f, 0.615458f, 0.615383f, 0.615307f, + 0.615232f, 0.615156f, 0.615080f, 0.615005f, 0.614929f, 0.614854f, 0.614778f, 0.614702f, + 0.614627f, 0.614551f, 0.614475f, 0.614400f, 0.614324f, 0.614249f, 0.614173f, 0.614097f, + 0.614022f, 0.613946f, 0.613870f, 0.613795f, 0.613719f, 0.613643f, 0.613567f, 0.613492f, + 0.613416f, 0.613340f, 0.613265f, 0.613189f, 0.613113f, 0.613037f, 0.612962f, 0.612886f, + 0.612810f, 0.612734f, 0.612659f, 0.612583f, 0.612507f, 0.612431f, 0.612355f, 0.612280f, + 0.612204f, 0.612128f, 0.612052f, 0.611976f, 0.611901f, 0.611825f, 0.611749f, 0.611673f, + 0.611597f, 0.611521f, 0.611445f, 0.611370f, 0.611294f, 0.611218f, 0.611142f, 0.611066f, + 0.610990f, 0.610914f, 0.610838f, 0.610762f, 0.610687f, 0.610611f, 0.610535f, 0.610459f, + 0.610383f, 0.610307f, 0.610231f, 0.610155f, 0.610079f, 0.610003f, 0.609927f, 0.609851f, + 0.609775f, 0.609699f, 0.609623f, 0.609547f, 0.609471f, 0.609395f, 0.609319f, 0.609243f, + 0.609167f, 0.609091f, 0.609015f, 0.608939f, 0.608863f, 0.608787f, 0.608711f, 0.608635f, + 0.608559f, 0.608482f, 0.608406f, 0.608330f, 0.608254f, 0.608178f, 0.608102f, 0.608026f, + 0.607950f, 0.607874f, 0.607798f, 0.607721f, 0.607645f, 0.607569f, 0.607493f, 0.607417f, + 0.607341f, 0.607264f, 0.607188f, 0.607112f, 0.607036f, 0.606960f, 0.606884f, 0.606807f, + 0.606731f, 0.606655f, 0.606579f, 0.606502f, 0.606426f, 0.606350f, 0.606274f, 0.606198f, + 0.606121f, 0.606045f, 0.605969f, 0.605892f, 0.605816f, 0.605740f, 0.605664f, 0.605587f, + 0.605511f, 0.605435f, 0.605358f, 0.605282f, 0.605206f, 0.605129f, 0.605053f, 0.604977f, + 0.604900f, 0.604824f, 0.604748f, 0.604671f, 0.604595f, 0.604519f, 0.604442f, 0.604366f, + 0.604290f, 0.604213f, 0.604137f, 0.604060f, 0.603984f, 0.603908f, 0.603831f, 0.603755f, + 0.603678f, 0.603602f, 0.603525f, 0.603449f, 0.603372f, 0.603296f, 0.603220f, 0.603143f, + 0.603067f, 0.602990f, 0.602914f, 0.602837f, 0.602761f, 0.602684f, 0.602608f, 0.602531f, + 0.602455f, 0.602378f, 0.602302f, 0.602225f, 0.602148f, 0.602072f, 0.601995f, 0.601919f, + 0.601842f, 0.601766f, 0.601689f, 0.601613f, 0.601536f, 0.601459f, 0.601383f, 0.601306f, + 0.601230f, 0.601153f, 0.601076f, 0.601000f, 0.600923f, 0.600846f, 0.600770f, 0.600693f, + 0.600616f, 0.600540f, 0.600463f, 0.600387f, 0.600310f, 0.600233f, 0.600156f, 0.600080f, + 0.600003f, 0.599926f, 0.599850f, 0.599773f, 0.599696f, 0.599620f, 0.599543f, 0.599466f, + 0.599389f, 0.599313f, 0.599236f, 0.599159f, 0.599082f, 0.599006f, 0.598929f, 0.598852f, + 0.598775f, 0.598698f, 0.598622f, 0.598545f, 0.598468f, 0.598391f, 0.598314f, 0.598238f, + 0.598161f, 0.598084f, 0.598007f, 0.597930f, 0.597853f, 0.597776f, 0.597700f, 0.597623f, + 0.597546f, 0.597469f, 0.597392f, 0.597315f, 0.597238f, 0.597161f, 0.597085f, 0.597008f, + 0.596931f, 0.596854f, 0.596777f, 0.596700f, 0.596623f, 0.596546f, 0.596469f, 0.596392f, + 0.596315f, 0.596238f, 0.596161f, 0.596084f, 0.596007f, 0.595930f, 0.595853f, 0.595776f, + 0.595699f, 0.595622f, 0.595545f, 0.595468f, 0.595391f, 0.595314f, 0.595237f, 0.595160f, + 0.595083f, 0.595006f, 0.594929f, 0.594852f, 0.594775f, 0.594698f, 0.594621f, 0.594544f, + 0.594467f, 0.594389f, 0.594312f, 0.594235f, 0.594158f, 0.594081f, 0.594004f, 0.593927f, + 0.593850f, 0.593772f, 0.593695f, 0.593618f, 0.593541f, 0.593464f, 0.593387f, 0.593309f, + 0.593232f, 0.593155f, 0.593078f, 0.593001f, 0.592924f, 0.592846f, 0.592769f, 0.592692f, + 0.592615f, 0.592537f, 0.592460f, 0.592383f, 0.592306f, 0.592228f, 0.592151f, 0.592074f, + 0.591997f, 0.591919f, 0.591842f, 0.591765f, 0.591688f, 0.591610f, 0.591533f, 0.591456f, + 0.591378f, 0.591301f, 0.591224f, 0.591146f, 0.591069f, 0.590992f, 0.590914f, 0.590837f, + 0.590760f, 0.590682f, 0.590605f, 0.590528f, 0.590450f, 0.590373f, 0.590295f, 0.590218f, + 0.590141f, 0.590063f, 0.589986f, 0.589908f, 0.589831f, 0.589754f, 0.589676f, 0.589599f, + 0.589521f, 0.589444f, 0.589366f, 0.589289f, 0.589212f, 0.589134f, 0.589057f, 0.588979f, + 0.588902f, 0.588824f, 0.588747f, 0.588669f, 0.588592f, 0.588514f, 0.588437f, 0.588359f, + 0.588282f, 0.588204f, 0.588126f, 0.588049f, 0.587971f, 0.587894f, 0.587816f, 0.587739f, + 0.587661f, 0.587584f, 0.587506f, 0.587428f, 0.587351f, 0.587273f, 0.587196f, 0.587118f, + 0.587040f, 0.586963f, 0.586885f, 0.586808f, 0.586730f, 0.586652f, 0.586575f, 0.586497f, + 0.586419f, 0.586342f, 0.586264f, 0.586186f, 0.586109f, 0.586031f, 0.585953f, 0.585876f, + 0.585798f, 0.585720f, 0.585642f, 0.585565f, 0.585487f, 0.585409f, 0.585332f, 0.585254f, + 0.585176f, 0.585098f, 0.585021f, 0.584943f, 0.584865f, 0.584787f, 0.584710f, 0.584632f, + 0.584554f, 0.584476f, 0.584398f, 0.584321f, 0.584243f, 0.584165f, 0.584087f, 0.584009f, + 0.583931f, 0.583854f, 0.583776f, 0.583698f, 0.583620f, 0.583542f, 0.583464f, 0.583387f, + 0.583309f, 0.583231f, 0.583153f, 0.583075f, 0.582997f, 0.582919f, 0.582841f, 0.582763f, + 0.582685f, 0.582608f, 0.582530f, 0.582452f, 0.582374f, 0.582296f, 0.582218f, 0.582140f, + 0.582062f, 0.581984f, 0.581906f, 0.581828f, 0.581750f, 0.581672f, 0.581594f, 0.581516f, + 0.581438f, 0.581360f, 0.581282f, 0.581204f, 0.581126f, 0.581048f, 0.580970f, 0.580892f, + 0.580814f, 0.580736f, 0.580658f, 0.580580f, 0.580502f, 0.580424f, 0.580346f, 0.580267f, + 0.580189f, 0.580111f, 0.580033f, 0.579955f, 0.579877f, 0.579799f, 0.579721f, 0.579643f, + 0.579565f, 0.579486f, 0.579408f, 0.579330f, 0.579252f, 0.579174f, 0.579096f, 0.579018f, + 0.578939f, 0.578861f, 0.578783f, 0.578705f, 0.578627f, 0.578548f, 0.578470f, 0.578392f, + 0.578314f, 0.578236f, 0.578157f, 0.578079f, 0.578001f, 0.577923f, 0.577844f, 0.577766f, + 0.577688f, 0.577610f, 0.577531f, 0.577453f, 0.577375f, 0.577297f, 0.577218f, 0.577140f, + 0.577062f, 0.576983f, 0.576905f, 0.576827f, 0.576748f, 0.576670f, 0.576592f, 0.576513f, + 0.576435f, 0.576357f, 0.576278f, 0.576200f, 0.576122f, 0.576043f, 0.575965f, 0.575887f, + 0.575808f, 0.575730f, 0.575651f, 0.575573f, 0.575495f, 0.575416f, 0.575338f, 0.575259f, + 0.575181f, 0.575103f, 0.575024f, 0.574946f, 0.574867f, 0.574789f, 0.574710f, 0.574632f, + 0.574553f, 0.574475f, 0.574396f, 0.574318f, 0.574239f, 0.574161f, 0.574082f, 0.574004f, + 0.573925f, 0.573847f, 0.573768f, 0.573690f, 0.573611f, 0.573533f, 0.573454f, 0.573376f, + 0.573297f, 0.573219f, 0.573140f, 0.573061f, 0.572983f, 0.572904f, 0.572826f, 0.572747f, + 0.572669f, 0.572590f, 0.572511f, 0.572433f, 0.572354f, 0.572276f, 0.572197f, 0.572118f, + 0.572040f, 0.571961f, 0.571882f, 0.571804f, 0.571725f, 0.571646f, 0.571568f, 0.571489f, + 0.571410f, 0.571332f, 0.571253f, 0.571174f, 0.571096f, 0.571017f, 0.570938f, 0.570859f, + 0.570781f, 0.570702f, 0.570623f, 0.570545f, 0.570466f, 0.570387f, 0.570308f, 0.570230f, + 0.570151f, 0.570072f, 0.569993f, 0.569914f, 0.569836f, 0.569757f, 0.569678f, 0.569599f, + 0.569521f, 0.569442f, 0.569363f, 0.569284f, 0.569205f, 0.569126f, 0.569048f, 0.568969f, + 0.568890f, 0.568811f, 0.568732f, 0.568653f, 0.568574f, 0.568496f, 0.568417f, 0.568338f, + 0.568259f, 0.568180f, 0.568101f, 0.568022f, 0.567943f, 0.567864f, 0.567786f, 0.567707f, + 0.567628f, 0.567549f, 0.567470f, 0.567391f, 0.567312f, 0.567233f, 0.567154f, 0.567075f, + 0.566996f, 0.566917f, 0.566838f, 0.566759f, 0.566680f, 0.566601f, 0.566522f, 0.566443f, + 0.566364f, 0.566285f, 0.566206f, 0.566127f, 0.566048f, 0.565969f, 0.565890f, 0.565811f, + 0.565732f, 0.565653f, 0.565574f, 0.565495f, 0.565416f, 0.565336f, 0.565257f, 0.565178f, + 0.565099f, 0.565020f, 0.564941f, 0.564862f, 0.564783f, 0.564704f, 0.564624f, 0.564545f, + 0.564466f, 0.564387f, 0.564308f, 0.564229f, 0.564150f, 0.564070f, 0.563991f, 0.563912f, + 0.563833f, 0.563754f, 0.563675f, 0.563595f, 0.563516f, 0.563437f, 0.563358f, 0.563279f, + 0.563199f, 0.563120f, 0.563041f, 0.562962f, 0.562882f, 0.562803f, 0.562724f, 0.562645f, + 0.562565f, 0.562486f, 0.562407f, 0.562328f, 0.562248f, 0.562169f, 0.562090f, 0.562010f, + 0.561931f, 0.561852f, 0.561773f, 0.561693f, 0.561614f, 0.561535f, 0.561455f, 0.561376f, + 0.561297f, 0.561217f, 0.561138f, 0.561058f, 0.560979f, 0.560900f, 0.560820f, 0.560741f, + 0.560662f, 0.560582f, 0.560503f, 0.560423f, 0.560344f, 0.560265f, 0.560185f, 0.560106f, + 0.560026f, 0.559947f, 0.559867f, 0.559788f, 0.559709f, 0.559629f, 0.559550f, 0.559470f, + 0.559391f, 0.559311f, 0.559232f, 0.559152f, 0.559073f, 0.558993f, 0.558914f, 0.558834f, + 0.558755f, 0.558675f, 0.558596f, 0.558516f, 0.558437f, 0.558357f, 0.558278f, 0.558198f, + 0.558119f, 0.558039f, 0.557959f, 0.557880f, 0.557800f, 0.557721f, 0.557641f, 0.557562f, + 0.557482f, 0.557402f, 0.557323f, 0.557243f, 0.557164f, 0.557084f, 0.557004f, 0.556925f, + 0.556845f, 0.556765f, 0.556686f, 0.556606f, 0.556526f, 0.556447f, 0.556367f, 0.556287f, + 0.556208f, 0.556128f, 0.556048f, 0.555969f, 0.555889f, 0.555809f, 0.555730f, 0.555650f, + 0.555570f, 0.555490f, 0.555411f, 0.555331f, 0.555251f, 0.555172f, 0.555092f, 0.555012f, + 0.554932f, 0.554853f, 0.554773f, 0.554693f, 0.554613f, 0.554533f, 0.554454f, 0.554374f, + 0.554294f, 0.554214f, 0.554134f, 0.554055f, 0.553975f, 0.553895f, 0.553815f, 0.553735f, + 0.553656f, 0.553576f, 0.553496f, 0.553416f, 0.553336f, 0.553256f, 0.553176f, 0.553097f, + 0.553017f, 0.552937f, 0.552857f, 0.552777f, 0.552697f, 0.552617f, 0.552537f, 0.552457f, + 0.552378f, 0.552298f, 0.552218f, 0.552138f, 0.552058f, 0.551978f, 0.551898f, 0.551818f, + 0.551738f, 0.551658f, 0.551578f, 0.551498f, 0.551418f, 0.551338f, 0.551258f, 0.551178f, + 0.551098f, 0.551018f, 0.550938f, 0.550858f, 0.550778f, 0.550698f, 0.550618f, 0.550538f, + 0.550458f, 0.550378f, 0.550298f, 0.550218f, 0.550138f, 0.550058f, 0.549978f, 0.549898f, + 0.549818f, 0.549737f, 0.549657f, 0.549577f, 0.549497f, 0.549417f, 0.549337f, 0.549257f, + 0.549177f, 0.549097f, 0.549016f, 0.548936f, 0.548856f, 0.548776f, 0.548696f, 0.548616f, + 0.548536f, 0.548455f, 0.548375f, 0.548295f, 0.548215f, 0.548135f, 0.548054f, 0.547974f, + 0.547894f, 0.547814f, 0.547734f, 0.547653f, 0.547573f, 0.547493f, 0.547413f, 0.547333f, + 0.547252f, 0.547172f, 0.547092f, 0.547011f, 0.546931f, 0.546851f, 0.546771f, 0.546690f, + 0.546610f, 0.546530f, 0.546450f, 0.546369f, 0.546289f, 0.546209f, 0.546128f, 0.546048f, + 0.545968f, 0.545887f, 0.545807f, 0.545727f, 0.545646f, 0.545566f, 0.545486f, 0.545405f, + 0.545325f, 0.545245f, 0.545164f, 0.545084f, 0.545003f, 0.544923f, 0.544843f, 0.544762f, + 0.544682f, 0.544602f, 0.544521f, 0.544441f, 0.544360f, 0.544280f, 0.544199f, 0.544119f, + 0.544039f, 0.543958f, 0.543878f, 0.543797f, 0.543717f, 0.543636f, 0.543556f, 0.543475f, + 0.543395f, 0.543314f, 0.543234f, 0.543153f, 0.543073f, 0.542992f, 0.542912f, 0.542831f, + 0.542751f, 0.542670f, 0.542590f, 0.542509f, 0.542429f, 0.542348f, 0.542268f, 0.542187f, + 0.542106f, 0.542026f, 0.541945f, 0.541865f, 0.541784f, 0.541704f, 0.541623f, 0.541542f, + 0.541462f, 0.541381f, 0.541301f, 0.541220f, 0.541139f, 0.541059f, 0.540978f, 0.540897f, + 0.540817f, 0.540736f, 0.540655f, 0.540575f, 0.540494f, 0.540413f, 0.540333f, 0.540252f, + 0.540171f, 0.540091f, 0.540010f, 0.539929f, 0.539849f, 0.539768f, 0.539687f, 0.539607f, + 0.539526f, 0.539445f, 0.539364f, 0.539284f, 0.539203f, 0.539122f, 0.539041f, 0.538961f, + 0.538880f, 0.538799f, 0.538718f, 0.538638f, 0.538557f, 0.538476f, 0.538395f, 0.538314f, + 0.538234f, 0.538153f, 0.538072f, 0.537991f, 0.537910f, 0.537830f, 0.537749f, 0.537668f, + 0.537587f, 0.537506f, 0.537425f, 0.537345f, 0.537264f, 0.537183f, 0.537102f, 0.537021f, + 0.536940f, 0.536859f, 0.536778f, 0.536698f, 0.536617f, 0.536536f, 0.536455f, 0.536374f, + 0.536293f, 0.536212f, 0.536131f, 0.536050f, 0.535969f, 0.535888f, 0.535807f, 0.535726f, + 0.535645f, 0.535564f, 0.535484f, 0.535403f, 0.535322f, 0.535241f, 0.535160f, 0.535079f, + 0.534998f, 0.534917f, 0.534836f, 0.534755f, 0.534674f, 0.534593f, 0.534512f, 0.534431f, + 0.534349f, 0.534268f, 0.534187f, 0.534106f, 0.534025f, 0.533944f, 0.533863f, 0.533782f, + 0.533701f, 0.533620f, 0.533539f, 0.533458f, 0.533377f, 0.533296f, 0.533214f, 0.533133f, + 0.533052f, 0.532971f, 0.532890f, 0.532809f, 0.532728f, 0.532647f, 0.532565f, 0.532484f, + 0.532403f, 0.532322f, 0.532241f, 0.532160f, 0.532078f, 0.531997f, 0.531916f, 0.531835f, + 0.531754f, 0.531673f, 0.531591f, 0.531510f, 0.531429f, 0.531348f, 0.531266f, 0.531185f, + 0.531104f, 0.531023f, 0.530942f, 0.530860f, 0.530779f, 0.530698f, 0.530617f, 0.530535f, + 0.530454f, 0.530373f, 0.530291f, 0.530210f, 0.530129f, 0.530048f, 0.529966f, 0.529885f, + 0.529804f, 0.529722f, 0.529641f, 0.529560f, 0.529478f, 0.529397f, 0.529316f, 0.529234f, + 0.529153f, 0.529072f, 0.528990f, 0.528909f, 0.528828f, 0.528746f, 0.528665f, 0.528583f, + 0.528502f, 0.528421f, 0.528339f, 0.528258f, 0.528176f, 0.528095f, 0.528014f, 0.527932f, + 0.527851f, 0.527769f, 0.527688f, 0.527606f, 0.527525f, 0.527444f, 0.527362f, 0.527281f, + 0.527199f, 0.527118f, 0.527036f, 0.526955f, 0.526873f, 0.526792f, 0.526710f, 0.526629f, + 0.526547f, 0.526466f, 0.526384f, 0.526303f, 0.526221f, 0.526140f, 0.526058f, 0.525977f, + 0.525895f, 0.525813f, 0.525732f, 0.525650f, 0.525569f, 0.525487f, 0.525406f, 0.525324f, + 0.525243f, 0.525161f, 0.525079f, 0.524998f, 0.524916f, 0.524835f, 0.524753f, 0.524671f, + 0.524590f, 0.524508f, 0.524426f, 0.524345f, 0.524263f, 0.524181f, 0.524100f, 0.524018f, + 0.523937f, 0.523855f, 0.523773f, 0.523692f, 0.523610f, 0.523528f, 0.523447f, 0.523365f, + 0.523283f, 0.523201f, 0.523120f, 0.523038f, 0.522956f, 0.522875f, 0.522793f, 0.522711f, + 0.522629f, 0.522548f, 0.522466f, 0.522384f, 0.522302f, 0.522221f, 0.522139f, 0.522057f, + 0.521975f, 0.521894f, 0.521812f, 0.521730f, 0.521648f, 0.521566f, 0.521485f, 0.521403f, + 0.521321f, 0.521239f, 0.521157f, 0.521075f, 0.520994f, 0.520912f, 0.520830f, 0.520748f, + 0.520666f, 0.520584f, 0.520503f, 0.520421f, 0.520339f, 0.520257f, 0.520175f, 0.520093f, + 0.520011f, 0.519929f, 0.519848f, 0.519766f, 0.519684f, 0.519602f, 0.519520f, 0.519438f, + 0.519356f, 0.519274f, 0.519192f, 0.519110f, 0.519028f, 0.518946f, 0.518864f, 0.518782f, + 0.518700f, 0.518618f, 0.518536f, 0.518454f, 0.518372f, 0.518291f, 0.518209f, 0.518126f, + 0.518045f, 0.517963f, 0.517880f, 0.517798f, 0.517716f, 0.517634f, 0.517552f, 0.517470f, + 0.517388f, 0.517306f, 0.517224f, 0.517142f, 0.517060f, 0.516978f, 0.516896f, 0.516814f, + 0.516732f, 0.516650f, 0.516568f, 0.516486f, 0.516403f, 0.516321f, 0.516239f, 0.516157f, + 0.516075f, 0.515993f, 0.515911f, 0.515829f, 0.515746f, 0.515664f, 0.515582f, 0.515500f, + 0.515418f, 0.515336f, 0.515254f, 0.515171f, 0.515089f, 0.515007f, 0.514925f, 0.514843f, + 0.514760f, 0.514678f, 0.514596f, 0.514514f, 0.514432f, 0.514349f, 0.514267f, 0.514185f, + 0.514103f, 0.514021f, 0.513938f, 0.513856f, 0.513774f, 0.513692f, 0.513609f, 0.513527f, + 0.513445f, 0.513362f, 0.513280f, 0.513198f, 0.513116f, 0.513033f, 0.512951f, 0.512869f, + 0.512786f, 0.512704f, 0.512622f, 0.512539f, 0.512457f, 0.512375f, 0.512292f, 0.512210f, + 0.512128f, 0.512045f, 0.511963f, 0.511881f, 0.511798f, 0.511716f, 0.511634f, 0.511551f, + 0.511469f, 0.511386f, 0.511304f, 0.511222f, 0.511139f, 0.511057f, 0.510974f, 0.510892f, + 0.510810f, 0.510727f, 0.510645f, 0.510562f, 0.510480f, 0.510397f, 0.510315f, 0.510233f, + 0.510150f, 0.510068f, 0.509985f, 0.509903f, 0.509820f, 0.509738f, 0.509655f, 0.509573f, + 0.509490f, 0.509408f, 0.509325f, 0.509243f, 0.509160f, 0.509078f, 0.508995f, 0.508913f, + 0.508830f, 0.508748f, 0.508665f, 0.508583f, 0.508500f, 0.508417f, 0.508335f, 0.508252f, + 0.508170f, 0.508087f, 0.508005f, 0.507922f, 0.507839f, 0.507757f, 0.507674f, 0.507592f, + 0.507509f, 0.507426f, 0.507344f, 0.507261f, 0.507179f, 0.507096f, 0.507013f, 0.506931f, + 0.506848f, 0.506765f, 0.506683f, 0.506600f, 0.506517f, 0.506435f, 0.506352f, 0.506269f, + 0.506187f, 0.506104f, 0.506021f, 0.505939f, 0.505856f, 0.505773f, 0.505690f, 0.505608f, + 0.505525f, 0.505442f, 0.505360f, 0.505277f, 0.505194f, 0.505111f, 0.505029f, 0.504946f, + 0.504863f, 0.504780f, 0.504698f, 0.504615f, 0.504532f, 0.504449f, 0.504366f, 0.504284f, + 0.504201f, 0.504118f, 0.504035f, 0.503953f, 0.503870f, 0.503787f, 0.503704f, 0.503621f, + 0.503538f, 0.503456f, 0.503373f, 0.503290f, 0.503207f, 0.503124f, 0.503041f, 0.502958f, + 0.502876f, 0.502793f, 0.502710f, 0.502627f, 0.502544f, 0.502461f, 0.502378f, 0.502295f, + 0.502212f, 0.502130f, 0.502047f, 0.501964f, 0.501881f, 0.501798f, 0.501715f, 0.501632f, + 0.501549f, 0.501466f, 0.501383f, 0.501300f, 0.501217f, 0.501134f, 0.501051f, 0.500968f, + 0.500885f, 0.500802f, 0.500719f, 0.500636f, 0.500553f, 0.500470f, 0.500387f, 0.500304f, + 0.500221f, 0.500138f, 0.500055f, 0.499972f, 0.499889f, 0.499806f, 0.499723f, 0.499640f, + 0.499557f, 0.499474f, 0.499391f, 0.499308f, 0.499225f, 0.499142f, 0.499059f, 0.498976f, + 0.498893f, 0.498809f, 0.498726f, 0.498643f, 0.498560f, 0.498477f, 0.498394f, 0.498311f, + 0.498228f, 0.498145f, 0.498061f, 0.497978f, 0.497895f, 0.497812f, 0.497729f, 0.497646f, + 0.497562f, 0.497479f, 0.497396f, 0.497313f, 0.497230f, 0.497147f, 0.497063f, 0.496980f, + 0.496897f, 0.496814f, 0.496731f, 0.496647f, 0.496564f, 0.496481f, 0.496398f, 0.496315f, + 0.496231f, 0.496148f, 0.496065f, 0.495982f, 0.495898f, 0.495815f, 0.495732f, 0.495649f, + 0.495565f, 0.495482f, 0.495399f, 0.495315f, 0.495232f, 0.495149f, 0.495066f, 0.494982f, + 0.494899f, 0.494816f, 0.494732f, 0.494649f, 0.494566f, 0.494482f, 0.494399f, 0.494316f, + 0.494232f, 0.494149f, 0.494066f, 0.493982f, 0.493899f, 0.493816f, 0.493732f, 0.493649f, + 0.493565f, 0.493482f, 0.493399f, 0.493315f, 0.493232f, 0.493148f, 0.493065f, 0.492982f, + 0.492898f, 0.492815f, 0.492731f, 0.492648f, 0.492564f, 0.492481f, 0.492398f, 0.492314f, + 0.492231f, 0.492147f, 0.492064f, 0.491980f, 0.491897f, 0.491813f, 0.491730f, 0.491646f, + 0.491563f, 0.491479f, 0.491396f, 0.491312f, 0.491229f, 0.491145f, 0.491062f, 0.490978f, + 0.490895f, 0.490811f, 0.490728f, 0.490644f, 0.490561f, 0.490477f, 0.490394f, 0.490310f, + 0.490226f, 0.490143f, 0.490059f, 0.489976f, 0.489892f, 0.489809f, 0.489725f, 0.489641f, + 0.489558f, 0.489474f, 0.489391f, 0.489307f, 0.489223f, 0.489140f, 0.489056f, 0.488973f, + 0.488889f, 0.488805f, 0.488722f, 0.488638f, 0.488554f, 0.488471f, 0.488387f, 0.488303f, + 0.488220f, 0.488136f, 0.488052f, 0.487969f, 0.487885f, 0.487801f, 0.487718f, 0.487634f, + 0.487550f, 0.487466f, 0.487383f, 0.487299f, 0.487215f, 0.487132f, 0.487048f, 0.486964f, + 0.486880f, 0.486797f, 0.486713f, 0.486629f, 0.486545f, 0.486462f, 0.486378f, 0.486294f, + 0.486210f, 0.486126f, 0.486043f, 0.485959f, 0.485875f, 0.485791f, 0.485708f, 0.485624f, + 0.485540f, 0.485456f, 0.485372f, 0.485288f, 0.485205f, 0.485121f, 0.485037f, 0.484953f, + 0.484869f, 0.484785f, 0.484702f, 0.484618f, 0.484534f, 0.484450f, 0.484366f, 0.484282f, + 0.484198f, 0.484114f, 0.484031f, 0.483947f, 0.483863f, 0.483779f, 0.483695f, 0.483611f, + 0.483527f, 0.483443f, 0.483359f, 0.483275f, 0.483191f, 0.483107f, 0.483023f, 0.482940f, + 0.482856f, 0.482772f, 0.482688f, 0.482604f, 0.482520f, 0.482436f, 0.482352f, 0.482268f, + 0.482184f, 0.482100f, 0.482016f, 0.481932f, 0.481848f, 0.481764f, 0.481680f, 0.481596f, + 0.481512f, 0.481428f, 0.481344f, 0.481260f, 0.481176f, 0.481091f, 0.481007f, 0.480923f, + 0.480839f, 0.480755f, 0.480671f, 0.480587f, 0.480503f, 0.480419f, 0.480335f, 0.480251f, + 0.480167f, 0.480083f, 0.479998f, 0.479914f, 0.479830f, 0.479746f, 0.479662f, 0.479578f, + 0.479494f, 0.479410f, 0.479325f, 0.479241f, 0.479157f, 0.479073f, 0.478989f, 0.478905f, + 0.478821f, 0.478736f, 0.478652f, 0.478568f, 0.478484f, 0.478400f, 0.478315f, 0.478231f, + 0.478147f, 0.478063f, 0.477979f, 0.477894f, 0.477810f, 0.477726f, 0.477642f, 0.477558f, + 0.477473f, 0.477389f, 0.477305f, 0.477221f, 0.477136f, 0.477052f, 0.476968f, 0.476884f, + 0.476799f, 0.476715f, 0.476631f, 0.476546f, 0.476462f, 0.476378f, 0.476294f, 0.476209f, + 0.476125f, 0.476041f, 0.475956f, 0.475872f, 0.475788f, 0.475703f, 0.475619f, 0.475535f, + 0.475450f, 0.475366f, 0.475282f, 0.475197f, 0.475113f, 0.475029f, 0.474944f, 0.474860f, + 0.474775f, 0.474691f, 0.474607f, 0.474522f, 0.474438f, 0.474353f, 0.474269f, 0.474185f, + 0.474100f, 0.474016f, 0.473931f, 0.473847f, 0.473763f, 0.473678f, 0.473594f, 0.473509f, + 0.473425f, 0.473340f, 0.473256f, 0.473171f, 0.473087f, 0.473002f, 0.472918f, 0.472834f, + 0.472749f, 0.472665f, 0.472580f, 0.472496f, 0.472411f, 0.472327f, 0.472242f, 0.472158f, + 0.472073f, 0.471988f, 0.471904f, 0.471819f, 0.471735f, 0.471650f, 0.471566f, 0.471481f, + 0.471397f, 0.471312f, 0.471228f, 0.471143f, 0.471058f, 0.470974f, 0.470889f, 0.470805f, + 0.470720f, 0.470636f, 0.470551f, 0.470466f, 0.470382f, 0.470297f, 0.470213f, 0.470128f, + 0.470043f, 0.469959f, 0.469874f, 0.469789f, 0.469705f, 0.469620f, 0.469536f, 0.469451f, + 0.469366f, 0.469282f, 0.469197f, 0.469112f, 0.469028f, 0.468943f, 0.468858f, 0.468774f, + 0.468689f, 0.468604f, 0.468519f, 0.468435f, 0.468350f, 0.468265f, 0.468181f, 0.468096f, + 0.468011f, 0.467926f, 0.467842f, 0.467757f, 0.467672f, 0.467587f, 0.467503f, 0.467418f, + 0.467333f, 0.467248f, 0.467164f, 0.467079f, 0.466994f, 0.466909f, 0.466825f, 0.466740f, + 0.466655f, 0.466570f, 0.466485f, 0.466401f, 0.466316f, 0.466231f, 0.466146f, 0.466061f, + 0.465977f, 0.465892f, 0.465807f, 0.465722f, 0.465637f, 0.465552f, 0.465467f, 0.465383f, + 0.465298f, 0.465213f, 0.465128f, 0.465043f, 0.464958f, 0.464873f, 0.464788f, 0.464704f, + 0.464619f, 0.464534f, 0.464449f, 0.464364f, 0.464279f, 0.464194f, 0.464109f, 0.464024f, + 0.463939f, 0.463854f, 0.463769f, 0.463685f, 0.463600f, 0.463515f, 0.463430f, 0.463345f, + 0.463260f, 0.463175f, 0.463090f, 0.463005f, 0.462920f, 0.462835f, 0.462750f, 0.462665f, + 0.462580f, 0.462495f, 0.462410f, 0.462325f, 0.462240f, 0.462155f, 0.462070f, 0.461985f, + 0.461900f, 0.461815f, 0.461730f, 0.461645f, 0.461560f, 0.461475f, 0.461390f, 0.461304f, + 0.461219f, 0.461134f, 0.461049f, 0.460964f, 0.460879f, 0.460794f, 0.460709f, 0.460624f, + 0.460539f, 0.460454f, 0.460369f, 0.460283f, 0.460198f, 0.460113f, 0.460028f, 0.459943f, + 0.459858f, 0.459773f, 0.459687f, 0.459602f, 0.459517f, 0.459432f, 0.459347f, 0.459262f, + 0.459177f, 0.459091f, 0.459006f, 0.458921f, 0.458836f, 0.458751f, 0.458665f, 0.458580f, + 0.458495f, 0.458410f, 0.458325f, 0.458239f, 0.458154f, 0.458069f, 0.457984f, 0.457899f, + 0.457813f, 0.457728f, 0.457643f, 0.457558f, 0.457472f, 0.457387f, 0.457302f, 0.457217f, + 0.457131f, 0.457046f, 0.456961f, 0.456875f, 0.456790f, 0.456705f, 0.456620f, 0.456534f, + 0.456449f, 0.456364f, 0.456278f, 0.456193f, 0.456108f, 0.456022f, 0.455937f, 0.455852f, + 0.455766f, 0.455681f, 0.455596f, 0.455510f, 0.455425f, 0.455340f, 0.455254f, 0.455169f, + 0.455084f, 0.454998f, 0.454913f, 0.454827f, 0.454742f, 0.454657f, 0.454571f, 0.454486f, + 0.454400f, 0.454315f, 0.454230f, 0.454144f, 0.454059f, 0.453973f, 0.453888f, 0.453803f, + 0.453717f, 0.453632f, 0.453546f, 0.453461f, 0.453375f, 0.453290f, 0.453204f, 0.453119f, + 0.453033f, 0.452948f, 0.452863f, 0.452777f, 0.452692f, 0.452606f, 0.452521f, 0.452435f, + 0.452350f, 0.452264f, 0.452179f, 0.452093f, 0.452008f, 0.451922f, 0.451836f, 0.451751f, + 0.451665f, 0.451580f, 0.451494f, 0.451409f, 0.451323f, 0.451238f, 0.451152f, 0.451067f, + 0.450981f, 0.450895f, 0.450810f, 0.450724f, 0.450639f, 0.450553f, 0.450467f, 0.450382f, + 0.450296f, 0.450211f, 0.450125f, 0.450039f, 0.449954f, 0.449868f, 0.449783f, 0.449697f, + 0.449611f, 0.449526f, 0.449440f, 0.449354f, 0.449269f, 0.449183f, 0.449097f, 0.449012f, + 0.448926f, 0.448840f, 0.448755f, 0.448669f, 0.448583f, 0.448498f, 0.448412f, 0.448326f, + 0.448241f, 0.448155f, 0.448069f, 0.447983f, 0.447898f, 0.447812f, 0.447726f, 0.447641f, + 0.447555f, 0.447469f, 0.447383f, 0.447298f, 0.447212f, 0.447126f, 0.447040f, 0.446955f, + 0.446869f, 0.446783f, 0.446697f, 0.446612f, 0.446526f, 0.446440f, 0.446354f, 0.446268f, + 0.446183f, 0.446097f, 0.446011f, 0.445925f, 0.445839f, 0.445754f, 0.445668f, 0.445582f, + 0.445496f, 0.445410f, 0.445324f, 0.445239f, 0.445153f, 0.445067f, 0.444981f, 0.444895f, + 0.444809f, 0.444723f, 0.444637f, 0.444552f, 0.444466f, 0.444380f, 0.444294f, 0.444208f, + 0.444122f, 0.444036f, 0.443950f, 0.443864f, 0.443779f, 0.443693f, 0.443607f, 0.443521f, + 0.443435f, 0.443349f, 0.443263f, 0.443177f, 0.443091f, 0.443005f, 0.442919f, 0.442833f, + 0.442747f, 0.442661f, 0.442575f, 0.442489f, 0.442403f, 0.442317f, 0.442231f, 0.442145f, + 0.442059f, 0.441973f, 0.441887f, 0.441801f, 0.441715f, 0.441629f, 0.441543f, 0.441457f, + 0.441371f, 0.441285f, 0.441199f, 0.441113f, 0.441027f, 0.440941f, 0.440855f, 0.440769f, + 0.440683f, 0.440597f, 0.440511f, 0.440425f, 0.440339f, 0.440253f, 0.440166f, 0.440080f, + 0.439994f, 0.439908f, 0.439822f, 0.439736f, 0.439650f, 0.439564f, 0.439478f, 0.439392f, + 0.439305f, 0.439219f, 0.439133f, 0.439047f, 0.438961f, 0.438875f, 0.438789f, 0.438702f, + 0.438616f, 0.438530f, 0.438444f, 0.438358f, 0.438272f, 0.438185f, 0.438099f, 0.438013f, + 0.437927f, 0.437841f, 0.437754f, 0.437668f, 0.437582f, 0.437496f, 0.437410f, 0.437323f, + 0.437237f, 0.437151f, 0.437065f, 0.436978f, 0.436892f, 0.436806f, 0.436720f, 0.436633f, + 0.436547f, 0.436461f, 0.436375f, 0.436288f, 0.436202f, 0.436116f, 0.436030f, 0.435943f, + 0.435857f, 0.435771f, 0.435685f, 0.435598f, 0.435512f, 0.435426f, 0.435339f, 0.435253f, + 0.435167f, 0.435080f, 0.434994f, 0.434908f, 0.434821f, 0.434735f, 0.434649f, 0.434562f, + 0.434476f, 0.434390f, 0.434303f, 0.434217f, 0.434131f, 0.434044f, 0.433958f, 0.433871f, + 0.433785f, 0.433699f, 0.433612f, 0.433526f, 0.433439f, 0.433353f, 0.433267f, 0.433180f, + 0.433094f, 0.433007f, 0.432921f, 0.432835f, 0.432748f, 0.432662f, 0.432575f, 0.432489f, + 0.432402f, 0.432316f, 0.432229f, 0.432143f, 0.432057f, 0.431970f, 0.431884f, 0.431797f, + 0.431711f, 0.431624f, 0.431538f, 0.431451f, 0.431365f, 0.431278f, 0.431192f, 0.431105f, + 0.431019f, 0.430932f, 0.430846f, 0.430759f, 0.430673f, 0.430586f, 0.430500f, 0.430413f, + 0.430326f, 0.430240f, 0.430153f, 0.430067f, 0.429980f, 0.429894f, 0.429807f, 0.429721f, + 0.429634f, 0.429547f, 0.429461f, 0.429374f, 0.429288f, 0.429201f, 0.429114f, 0.429028f, + 0.428941f, 0.428855f, 0.428768f, 0.428681f, 0.428595f, 0.428508f, 0.428422f, 0.428335f, + 0.428248f, 0.428162f, 0.428075f, 0.427988f, 0.427902f, 0.427815f, 0.427728f, 0.427642f, + 0.427555f, 0.427468f, 0.427382f, 0.427295f, 0.427208f, 0.427122f, 0.427035f, 0.426948f, + 0.426862f, 0.426775f, 0.426688f, 0.426601f, 0.426515f, 0.426428f, 0.426341f, 0.426255f, + 0.426168f, 0.426081f, 0.425994f, 0.425908f, 0.425821f, 0.425734f, 0.425647f, 0.425561f, + 0.425474f, 0.425387f, 0.425300f, 0.425214f, 0.425127f, 0.425040f, 0.424953f, 0.424866f, + 0.424780f, 0.424693f, 0.424606f, 0.424519f, 0.424432f, 0.424346f, 0.424259f, 0.424172f, + 0.424085f, 0.423998f, 0.423912f, 0.423825f, 0.423738f, 0.423651f, 0.423564f, 0.423477f, + 0.423390f, 0.423304f, 0.423217f, 0.423130f, 0.423043f, 0.422956f, 0.422869f, 0.422782f, + 0.422695f, 0.422609f, 0.422522f, 0.422435f, 0.422348f, 0.422261f, 0.422174f, 0.422087f, + 0.422000f, 0.421913f, 0.421826f, 0.421739f, 0.421653f, 0.421566f, 0.421479f, 0.421392f, + 0.421305f, 0.421218f, 0.421131f, 0.421044f, 0.420957f, 0.420870f, 0.420783f, 0.420696f, + 0.420609f, 0.420522f, 0.420435f, 0.420348f, 0.420261f, 0.420174f, 0.420087f, 0.420000f, + 0.419913f, 0.419826f, 0.419739f, 0.419652f, 0.419565f, 0.419478f, 0.419391f, 0.419304f, + 0.419217f, 0.419130f, 0.419043f, 0.418956f, 0.418869f, 0.418782f, 0.418695f, 0.418608f, + 0.418520f, 0.418433f, 0.418346f, 0.418259f, 0.418172f, 0.418085f, 0.417998f, 0.417911f, + 0.417824f, 0.417737f, 0.417650f, 0.417562f, 0.417475f, 0.417388f, 0.417301f, 0.417214f, + 0.417127f, 0.417040f, 0.416952f, 0.416865f, 0.416778f, 0.416691f, 0.416604f, 0.416517f, + 0.416430f, 0.416342f, 0.416255f, 0.416168f, 0.416081f, 0.415994f, 0.415906f, 0.415819f, + 0.415732f, 0.415645f, 0.415558f, 0.415471f, 0.415383f, 0.415296f, 0.415209f, 0.415122f, + 0.415034f, 0.414947f, 0.414860f, 0.414773f, 0.414685f, 0.414598f, 0.414511f, 0.414424f, + 0.414337f, 0.414249f, 0.414162f, 0.414075f, 0.413987f, 0.413900f, 0.413813f, 0.413726f, + 0.413638f, 0.413551f, 0.413464f, 0.413376f, 0.413289f, 0.413202f, 0.413115f, 0.413027f, + 0.412940f, 0.412853f, 0.412765f, 0.412678f, 0.412591f, 0.412503f, 0.412416f, 0.412329f, + 0.412241f, 0.412154f, 0.412067f, 0.411979f, 0.411892f, 0.411804f, 0.411717f, 0.411630f, + 0.411542f, 0.411455f, 0.411368f, 0.411280f, 0.411193f, 0.411105f, 0.411018f, 0.410931f, + 0.410843f, 0.410756f, 0.410668f, 0.410581f, 0.410493f, 0.410406f, 0.410319f, 0.410231f, + 0.410144f, 0.410056f, 0.409969f, 0.409881f, 0.409794f, 0.409707f, 0.409619f, 0.409532f, + 0.409444f, 0.409357f, 0.409269f, 0.409182f, 0.409094f, 0.409007f, 0.408919f, 0.408832f, + 0.408744f, 0.408657f, 0.408569f, 0.408482f, 0.408394f, 0.408307f, 0.408219f, 0.408132f, + 0.408044f, 0.407957f, 0.407869f, 0.407782f, 0.407694f, 0.407606f, 0.407519f, 0.407431f, + 0.407344f, 0.407256f, 0.407169f, 0.407081f, 0.406994f, 0.406906f, 0.406818f, 0.406731f, + 0.406643f, 0.406556f, 0.406468f, 0.406380f, 0.406293f, 0.406205f, 0.406118f, 0.406030f, + 0.405942f, 0.405855f, 0.405767f, 0.405680f, 0.405592f, 0.405504f, 0.405417f, 0.405329f, + 0.405241f, 0.405154f, 0.405066f, 0.404978f, 0.404891f, 0.404803f, 0.404715f, 0.404628f, + 0.404540f, 0.404452f, 0.404365f, 0.404277f, 0.404189f, 0.404102f, 0.404014f, 0.403926f, + 0.403838f, 0.403751f, 0.403663f, 0.403575f, 0.403488f, 0.403400f, 0.403312f, 0.403224f, + 0.403137f, 0.403049f, 0.402961f, 0.402873f, 0.402786f, 0.402698f, 0.402610f, 0.402522f, + 0.402435f, 0.402347f, 0.402259f, 0.402171f, 0.402084f, 0.401996f, 0.401908f, 0.401820f, + 0.401732f, 0.401645f, 0.401557f, 0.401469f, 0.401381f, 0.401293f, 0.401206f, 0.401118f, + 0.401030f, 0.400942f, 0.400854f, 0.400766f, 0.400679f, 0.400591f, 0.400503f, 0.400415f, + 0.400327f, 0.400239f, 0.400151f, 0.400064f, 0.399976f, 0.399888f, 0.399800f, 0.399712f, + 0.399624f, 0.399536f, 0.399448f, 0.399361f, 0.399273f, 0.399185f, 0.399097f, 0.399009f, + 0.398921f, 0.398833f, 0.398745f, 0.398657f, 0.398569f, 0.398481f, 0.398393f, 0.398306f, + 0.398218f, 0.398130f, 0.398042f, 0.397954f, 0.397866f, 0.397778f, 0.397690f, 0.397602f, + 0.397514f, 0.397426f, 0.397338f, 0.397250f, 0.397162f, 0.397074f, 0.396986f, 0.396898f, + 0.396810f, 0.396722f, 0.396634f, 0.396546f, 0.396458f, 0.396370f, 0.396282f, 0.396194f, + 0.396106f, 0.396018f, 0.395930f, 0.395842f, 0.395754f, 0.395666f, 0.395578f, 0.395490f, + 0.395401f, 0.395313f, 0.395225f, 0.395137f, 0.395049f, 0.394961f, 0.394873f, 0.394785f, + 0.394697f, 0.394609f, 0.394521f, 0.394433f, 0.394344f, 0.394256f, 0.394168f, 0.394080f, + 0.393992f, 0.393904f, 0.393816f, 0.393728f, 0.393640f, 0.393551f, 0.393463f, 0.393375f, + 0.393287f, 0.393199f, 0.393111f, 0.393023f, 0.392934f, 0.392846f, 0.392758f, 0.392670f, + 0.392582f, 0.392493f, 0.392405f, 0.392317f, 0.392229f, 0.392141f, 0.392053f, 0.391964f, + 0.391876f, 0.391788f, 0.391700f, 0.391612f, 0.391523f, 0.391435f, 0.391347f, 0.391259f, + 0.391170f, 0.391082f, 0.390994f, 0.390906f, 0.390817f, 0.390729f, 0.390641f, 0.390553f, + 0.390464f, 0.390376f, 0.390288f, 0.390200f, 0.390111f, 0.390023f, 0.389935f, 0.389846f, + 0.389758f, 0.389670f, 0.389582f, 0.389493f, 0.389405f, 0.389317f, 0.389228f, 0.389140f, + 0.389052f, 0.388963f, 0.388875f, 0.388787f, 0.388698f, 0.388610f, 0.388522f, 0.388433f, + 0.388345f, 0.388257f, 0.388168f, 0.388080f, 0.387992f, 0.387903f, 0.387815f, 0.387727f, + 0.387638f, 0.387550f, 0.387461f, 0.387373f, 0.387285f, 0.387196f, 0.387108f, 0.387019f, + 0.386931f, 0.386843f, 0.386754f, 0.386666f, 0.386577f, 0.386489f, 0.386400f, 0.386312f, + 0.386224f, 0.386135f, 0.386047f, 0.385958f, 0.385870f, 0.385781f, 0.385693f, 0.385605f, + 0.385516f, 0.385428f, 0.385339f, 0.385251f, 0.385162f, 0.385074f, 0.384985f, 0.384897f, + 0.384808f, 0.384720f, 0.384631f, 0.384543f, 0.384454f, 0.384366f, 0.384277f, 0.384189f, + 0.384100f, 0.384012f, 0.383923f, 0.383835f, 0.383746f, 0.383658f, 0.383569f, 0.383480f, + 0.383392f, 0.383303f, 0.383215f, 0.383126f, 0.383038f, 0.382949f, 0.382861f, 0.382772f, + 0.382683f, 0.382595f, 0.382506f, 0.382418f, 0.382329f, 0.382241f, 0.382152f, 0.382063f, + 0.381975f, 0.381886f, 0.381797f, 0.381709f, 0.381620f, 0.381532f, 0.381443f, 0.381354f, + 0.381266f, 0.381177f, 0.381088f, 0.381000f, 0.380911f, 0.380823f, 0.380734f, 0.380645f, + 0.380557f, 0.380468f, 0.380379f, 0.380291f, 0.380202f, 0.380113f, 0.380025f, 0.379936f, + 0.379847f, 0.379759f, 0.379670f, 0.379581f, 0.379492f, 0.379404f, 0.379315f, 0.379226f, + 0.379138f, 0.379049f, 0.378960f, 0.378871f, 0.378783f, 0.378694f, 0.378605f, 0.378516f, + 0.378428f, 0.378339f, 0.378250f, 0.378162f, 0.378073f, 0.377984f, 0.377895f, 0.377806f, + 0.377718f, 0.377629f, 0.377540f, 0.377451f, 0.377363f, 0.377274f, 0.377185f, 0.377096f, + 0.377007f, 0.376919f, 0.376830f, 0.376741f, 0.376652f, 0.376563f, 0.376475f, 0.376386f, + 0.376297f, 0.376208f, 0.376119f, 0.376030f, 0.375942f, 0.375853f, 0.375764f, 0.375675f, + 0.375586f, 0.375497f, 0.375408f, 0.375320f, 0.375231f, 0.375142f, 0.375053f, 0.374964f, + 0.374875f, 0.374786f, 0.374697f, 0.374609f, 0.374520f, 0.374431f, 0.374342f, 0.374253f, + 0.374164f, 0.374075f, 0.373986f, 0.373897f, 0.373808f, 0.373719f, 0.373631f, 0.373542f, + 0.373453f, 0.373364f, 0.373275f, 0.373186f, 0.373097f, 0.373008f, 0.372919f, 0.372830f, + 0.372741f, 0.372652f, 0.372563f, 0.372474f, 0.372385f, 0.372296f, 0.372207f, 0.372118f, + 0.372029f, 0.371940f, 0.371851f, 0.371762f, 0.371673f, 0.371584f, 0.371495f, 0.371406f, + 0.371317f, 0.371228f, 0.371139f, 0.371050f, 0.370961f, 0.370872f, 0.370783f, 0.370694f, + 0.370605f, 0.370516f, 0.370427f, 0.370338f, 0.370249f, 0.370160f, 0.370071f, 0.369982f, + 0.369892f, 0.369803f, 0.369714f, 0.369625f, 0.369536f, 0.369447f, 0.369358f, 0.369269f, + 0.369180f, 0.369091f, 0.369002f, 0.368912f, 0.368823f, 0.368734f, 0.368645f, 0.368556f, + 0.368467f, 0.368378f, 0.368289f, 0.368199f, 0.368110f, 0.368021f, 0.367932f, 0.367843f, + 0.367754f, 0.367665f, 0.367575f, 0.367486f, 0.367397f, 0.367308f, 0.367219f, 0.367130f, + 0.367040f, 0.366951f, 0.366862f, 0.366773f, 0.366684f, 0.366594f, 0.366505f, 0.366416f, + 0.366327f, 0.366238f, 0.366148f, 0.366059f, 0.365970f, 0.365881f, 0.365791f, 0.365702f, + 0.365613f, 0.365524f, 0.365435f, 0.365345f, 0.365256f, 0.365167f, 0.365078f, 0.364988f, + 0.364899f, 0.364810f, 0.364720f, 0.364631f, 0.364542f, 0.364453f, 0.364363f, 0.364274f, + 0.364185f, 0.364096f, 0.364006f, 0.363917f, 0.363828f, 0.363738f, 0.363649f, 0.363560f, + 0.363470f, 0.363381f, 0.363292f, 0.363202f, 0.363113f, 0.363024f, 0.362934f, 0.362845f, + 0.362756f, 0.362666f, 0.362577f, 0.362488f, 0.362398f, 0.362309f, 0.362220f, 0.362130f, + 0.362041f, 0.361952f, 0.361862f, 0.361773f, 0.361683f, 0.361594f, 0.361505f, 0.361415f, + 0.361326f, 0.361236f, 0.361147f, 0.361058f, 0.360968f, 0.360879f, 0.360789f, 0.360700f, + 0.360611f, 0.360521f, 0.360432f, 0.360342f, 0.360253f, 0.360163f, 0.360074f, 0.359984f, + 0.359895f, 0.359806f, 0.359716f, 0.359627f, 0.359537f, 0.359448f, 0.359358f, 0.359269f, + 0.359179f, 0.359090f, 0.359000f, 0.358911f, 0.358821f, 0.358732f, 0.358642f, 0.358553f, + 0.358463f, 0.358374f, 0.358284f, 0.358195f, 0.358105f, 0.358016f, 0.357926f, 0.357837f, + 0.357747f, 0.357658f, 0.357568f, 0.357479f, 0.357389f, 0.357300f, 0.357210f, 0.357121f, + 0.357031f, 0.356941f, 0.356852f, 0.356762f, 0.356673f, 0.356583f, 0.356494f, 0.356404f, + 0.356314f, 0.356225f, 0.356135f, 0.356046f, 0.355956f, 0.355866f, 0.355777f, 0.355687f, + 0.355598f, 0.355508f, 0.355418f, 0.355329f, 0.355239f, 0.355150f, 0.355060f, 0.354970f, + 0.354881f, 0.354791f, 0.354701f, 0.354612f, 0.354522f, 0.354432f, 0.354343f, 0.354253f, + 0.354164f, 0.354074f, 0.353984f, 0.353895f, 0.353805f, 0.353715f, 0.353626f, 0.353536f, + 0.353446f, 0.353356f, 0.353267f, 0.353177f, 0.353087f, 0.352998f, 0.352908f, 0.352818f, + 0.352729f, 0.352639f, 0.352549f, 0.352459f, 0.352370f, 0.352280f, 0.352190f, 0.352100f, + 0.352011f, 0.351921f, 0.351831f, 0.351742f, 0.351652f, 0.351562f, 0.351472f, 0.351383f, + 0.351293f, 0.351203f, 0.351113f, 0.351023f, 0.350934f, 0.350844f, 0.350754f, 0.350664f, + 0.350575f, 0.350485f, 0.350395f, 0.350305f, 0.350215f, 0.350126f, 0.350036f, 0.349946f, + 0.349856f, 0.349766f, 0.349676f, 0.349587f, 0.349497f, 0.349407f, 0.349317f, 0.349227f, + 0.349138f, 0.349048f, 0.348958f, 0.348868f, 0.348778f, 0.348688f, 0.348598f, 0.348509f, + 0.348419f, 0.348329f, 0.348239f, 0.348149f, 0.348059f, 0.347969f, 0.347879f, 0.347790f, + 0.347700f, 0.347610f, 0.347520f, 0.347430f, 0.347340f, 0.347250f, 0.347160f, 0.347070f, + 0.346980f, 0.346890f, 0.346801f, 0.346711f, 0.346621f, 0.346531f, 0.346441f, 0.346351f, + 0.346261f, 0.346171f, 0.346081f, 0.345991f, 0.345901f, 0.345811f, 0.345721f, 0.345631f, + 0.345541f, 0.345451f, 0.345361f, 0.345271f, 0.345181f, 0.345091f, 0.345001f, 0.344911f, + 0.344821f, 0.344731f, 0.344641f, 0.344551f, 0.344461f, 0.344371f, 0.344281f, 0.344191f, + 0.344101f, 0.344011f, 0.343921f, 0.343831f, 0.343741f, 0.343651f, 0.343561f, 0.343471f, + 0.343381f, 0.343291f, 0.343201f, 0.343111f, 0.343021f, 0.342931f, 0.342841f, 0.342751f, + 0.342661f, 0.342571f, 0.342481f, 0.342391f, 0.342300f, 0.342210f, 0.342120f, 0.342030f, + 0.341940f, 0.341850f, 0.341760f, 0.341670f, 0.341580f, 0.341490f, 0.341399f, 0.341309f, + 0.341219f, 0.341129f, 0.341039f, 0.340949f, 0.340859f, 0.340769f, 0.340678f, 0.340588f, + 0.340498f, 0.340408f, 0.340318f, 0.340228f, 0.340138f, 0.340047f, 0.339957f, 0.339867f, + 0.339777f, 0.339687f, 0.339597f, 0.339506f, 0.339416f, 0.339326f, 0.339236f, 0.339146f, + 0.339055f, 0.338965f, 0.338875f, 0.338785f, 0.338695f, 0.338604f, 0.338514f, 0.338424f, + 0.338334f, 0.338244f, 0.338153f, 0.338063f, 0.337973f, 0.337883f, 0.337792f, 0.337702f, + 0.337612f, 0.337522f, 0.337431f, 0.337341f, 0.337251f, 0.337161f, 0.337070f, 0.336980f, + 0.336890f, 0.336800f, 0.336709f, 0.336619f, 0.336529f, 0.336438f, 0.336348f, 0.336258f, + 0.336168f, 0.336077f, 0.335987f, 0.335897f, 0.335806f, 0.335716f, 0.335626f, 0.335535f, + 0.335445f, 0.335355f, 0.335265f, 0.335174f, 0.335084f, 0.334994f, 0.334903f, 0.334813f, + 0.334722f, 0.334632f, 0.334542f, 0.334451f, 0.334361f, 0.334271f, 0.334180f, 0.334090f, + 0.334000f, 0.333909f, 0.333819f, 0.333729f, 0.333638f, 0.333548f, 0.333457f, 0.333367f, + 0.333277f, 0.333186f, 0.333096f, 0.333005f, 0.332915f, 0.332825f, 0.332734f, 0.332644f, + 0.332553f, 0.332463f, 0.332373f, 0.332282f, 0.332192f, 0.332101f, 0.332011f, 0.331920f, + 0.331830f, 0.331739f, 0.331649f, 0.331559f, 0.331468f, 0.331378f, 0.331287f, 0.331197f, + 0.331106f, 0.331016f, 0.330925f, 0.330835f, 0.330744f, 0.330654f, 0.330563f, 0.330473f, + 0.330382f, 0.330292f, 0.330202f, 0.330111f, 0.330020f, 0.329930f, 0.329839f, 0.329749f, + 0.329658f, 0.329568f, 0.329477f, 0.329387f, 0.329296f, 0.329206f, 0.329115f, 0.329025f, + 0.328934f, 0.328844f, 0.328753f, 0.328663f, 0.328572f, 0.328482f, 0.328391f, 0.328300f, + 0.328210f, 0.328119f, 0.328029f, 0.327938f, 0.327848f, 0.327757f, 0.327666f, 0.327576f, + 0.327485f, 0.327395f, 0.327304f, 0.327213f, 0.327123f, 0.327032f, 0.326942f, 0.326851f, + 0.326760f, 0.326670f, 0.326579f, 0.326489f, 0.326398f, 0.326307f, 0.326217f, 0.326126f, + 0.326035f, 0.325945f, 0.325854f, 0.325764f, 0.325673f, 0.325582f, 0.325492f, 0.325401f, + 0.325310f, 0.325220f, 0.325129f, 0.325038f, 0.324948f, 0.324857f, 0.324766f, 0.324676f, + 0.324585f, 0.324494f, 0.324404f, 0.324313f, 0.324222f, 0.324131f, 0.324041f, 0.323950f, + 0.323859f, 0.323769f, 0.323678f, 0.323587f, 0.323497f, 0.323406f, 0.323315f, 0.323224f, + 0.323134f, 0.323043f, 0.322952f, 0.322861f, 0.322771f, 0.322680f, 0.322589f, 0.322498f, + 0.322408f, 0.322317f, 0.322226f, 0.322135f, 0.322045f, 0.321954f, 0.321863f, 0.321772f, + 0.321682f, 0.321591f, 0.321500f, 0.321409f, 0.321318f, 0.321228f, 0.321137f, 0.321046f, + 0.320955f, 0.320864f, 0.320774f, 0.320683f, 0.320592f, 0.320501f, 0.320410f, 0.320320f, + 0.320229f, 0.320138f, 0.320047f, 0.319956f, 0.319865f, 0.319775f, 0.319684f, 0.319593f, + 0.319502f, 0.319411f, 0.319320f, 0.319229f, 0.319139f, 0.319048f, 0.318957f, 0.318866f, + 0.318775f, 0.318684f, 0.318593f, 0.318503f, 0.318412f, 0.318321f, 0.318230f, 0.318139f, + 0.318048f, 0.317957f, 0.317866f, 0.317775f, 0.317684f, 0.317594f, 0.317503f, 0.317412f, + 0.317321f, 0.317230f, 0.317139f, 0.317048f, 0.316957f, 0.316866f, 0.316775f, 0.316684f, + 0.316593f, 0.316502f, 0.316411f, 0.316321f, 0.316230f, 0.316139f, 0.316048f, 0.315957f, + 0.315866f, 0.315775f, 0.315684f, 0.315593f, 0.315502f, 0.315411f, 0.315320f, 0.315229f, + 0.315138f, 0.315047f, 0.314956f, 0.314865f, 0.314774f, 0.314683f, 0.314592f, 0.314501f, + 0.314410f, 0.314319f, 0.314228f, 0.314137f, 0.314046f, 0.313955f, 0.313864f, 0.313773f, + 0.313682f, 0.313591f, 0.313500f, 0.313409f, 0.313318f, 0.313227f, 0.313135f, 0.313044f, + 0.312953f, 0.312862f, 0.312771f, 0.312680f, 0.312589f, 0.312498f, 0.312407f, 0.312316f, + 0.312225f, 0.312134f, 0.312043f, 0.311952f, 0.311860f, 0.311769f, 0.311678f, 0.311587f, + 0.311496f, 0.311405f, 0.311314f, 0.311223f, 0.311132f, 0.311041f, 0.310949f, 0.310858f, + 0.310767f, 0.310676f, 0.310585f, 0.310494f, 0.310403f, 0.310311f, 0.310220f, 0.310129f, + 0.310038f, 0.309947f, 0.309856f, 0.309765f, 0.309673f, 0.309582f, 0.309491f, 0.309400f, + 0.309309f, 0.309218f, 0.309126f, 0.309035f, 0.308944f, 0.308853f, 0.308762f, 0.308670f, + 0.308579f, 0.308488f, 0.308397f, 0.308306f, 0.308214f, 0.308123f, 0.308032f, 0.307941f, + 0.307850f, 0.307758f, 0.307667f, 0.307576f, 0.307485f, 0.307394f, 0.307302f, 0.307211f, + 0.307120f, 0.307029f, 0.306937f, 0.306846f, 0.306755f, 0.306664f, 0.306572f, 0.306481f, + 0.306390f, 0.306299f, 0.306207f, 0.306116f, 0.306025f, 0.305933f, 0.305842f, 0.305751f, + 0.305660f, 0.305568f, 0.305477f, 0.305386f, 0.305294f, 0.305203f, 0.305112f, 0.305021f, + 0.304929f, 0.304838f, 0.304747f, 0.304655f, 0.304564f, 0.304473f, 0.304381f, 0.304290f, + 0.304199f, 0.304107f, 0.304016f, 0.303925f, 0.303833f, 0.303742f, 0.303651f, 0.303559f, + 0.303468f, 0.303377f, 0.303285f, 0.303194f, 0.303103f, 0.303011f, 0.302920f, 0.302828f, + 0.302737f, 0.302646f, 0.302554f, 0.302463f, 0.302372f, 0.302280f, 0.302189f, 0.302097f, + 0.302006f, 0.301915f, 0.301823f, 0.301732f, 0.301640f, 0.301549f, 0.301458f, 0.301366f, + 0.301275f, 0.301183f, 0.301092f, 0.301000f, 0.300909f, 0.300818f, 0.300726f, 0.300635f, + 0.300543f, 0.300452f, 0.300360f, 0.300269f, 0.300177f, 0.300086f, 0.299995f, 0.299903f, + 0.299812f, 0.299720f, 0.299629f, 0.299537f, 0.299446f, 0.299354f, 0.299263f, 0.299171f, + 0.299080f, 0.298988f, 0.298897f, 0.298805f, 0.298714f, 0.298622f, 0.298531f, 0.298439f, + 0.298348f, 0.298256f, 0.298165f, 0.298073f, 0.297982f, 0.297890f, 0.297799f, 0.297707f, + 0.297616f, 0.297524f, 0.297433f, 0.297341f, 0.297250f, 0.297158f, 0.297066f, 0.296975f, + 0.296883f, 0.296792f, 0.296700f, 0.296609f, 0.296517f, 0.296426f, 0.296334f, 0.296242f, + 0.296151f, 0.296059f, 0.295968f, 0.295876f, 0.295785f, 0.295693f, 0.295601f, 0.295510f, + 0.295418f, 0.295327f, 0.295235f, 0.295143f, 0.295052f, 0.294960f, 0.294869f, 0.294777f, + 0.294685f, 0.294594f, 0.294502f, 0.294410f, 0.294319f, 0.294227f, 0.294136f, 0.294044f, + 0.293952f, 0.293861f, 0.293769f, 0.293677f, 0.293586f, 0.293494f, 0.293402f, 0.293311f, + 0.293219f, 0.293128f, 0.293036f, 0.292944f, 0.292852f, 0.292761f, 0.292669f, 0.292577f, + 0.292486f, 0.292394f, 0.292302f, 0.292211f, 0.292119f, 0.292027f, 0.291936f, 0.291844f, + 0.291752f, 0.291661f, 0.291569f, 0.291477f, 0.291385f, 0.291294f, 0.291202f, 0.291110f, + 0.291019f, 0.290927f, 0.290835f, 0.290743f, 0.290652f, 0.290560f, 0.290468f, 0.290376f, + 0.290285f, 0.290193f, 0.290101f, 0.290009f, 0.289918f, 0.289826f, 0.289734f, 0.289642f, + 0.289551f, 0.289459f, 0.289367f, 0.289275f, 0.289184f, 0.289092f, 0.289000f, 0.288908f, + 0.288816f, 0.288725f, 0.288633f, 0.288541f, 0.288449f, 0.288357f, 0.288266f, 0.288174f, + 0.288082f, 0.287990f, 0.287898f, 0.287807f, 0.287715f, 0.287623f, 0.287531f, 0.287439f, + 0.287347f, 0.287256f, 0.287164f, 0.287072f, 0.286980f, 0.286888f, 0.286796f, 0.286705f, + 0.286613f, 0.286521f, 0.286429f, 0.286337f, 0.286245f, 0.286153f, 0.286062f, 0.285970f, + 0.285878f, 0.285786f, 0.285694f, 0.285602f, 0.285510f, 0.285418f, 0.285327f, 0.285235f, + 0.285143f, 0.285051f, 0.284959f, 0.284867f, 0.284775f, 0.284683f, 0.284591f, 0.284499f, + 0.284408f, 0.284316f, 0.284224f, 0.284132f, 0.284040f, 0.283948f, 0.283856f, 0.283764f, + 0.283672f, 0.283580f, 0.283488f, 0.283396f, 0.283304f, 0.283212f, 0.283120f, 0.283029f, + 0.282937f, 0.282845f, 0.282753f, 0.282661f, 0.282569f, 0.282477f, 0.282385f, 0.282293f, + 0.282201f, 0.282109f, 0.282017f, 0.281925f, 0.281833f, 0.281741f, 0.281649f, 0.281557f, + 0.281465f, 0.281373f, 0.281281f, 0.281189f, 0.281097f, 0.281005f, 0.280913f, 0.280821f, + 0.280729f, 0.280637f, 0.280545f, 0.280453f, 0.280361f, 0.280269f, 0.280177f, 0.280085f, + 0.279993f, 0.279901f, 0.279809f, 0.279717f, 0.279624f, 0.279532f, 0.279440f, 0.279348f, + 0.279256f, 0.279164f, 0.279072f, 0.278980f, 0.278888f, 0.278796f, 0.278704f, 0.278612f, + 0.278520f, 0.278428f, 0.278336f, 0.278243f, 0.278151f, 0.278059f, 0.277967f, 0.277875f, + 0.277783f, 0.277691f, 0.277599f, 0.277507f, 0.277415f, 0.277322f, 0.277230f, 0.277138f, + 0.277046f, 0.276954f, 0.276862f, 0.276770f, 0.276678f, 0.276585f, 0.276493f, 0.276401f, + 0.276309f, 0.276217f, 0.276125f, 0.276033f, 0.275940f, 0.275848f, 0.275756f, 0.275664f, + 0.275572f, 0.275480f, 0.275387f, 0.275295f, 0.275203f, 0.275111f, 0.275019f, 0.274927f, + 0.274834f, 0.274742f, 0.274650f, 0.274558f, 0.274466f, 0.274374f, 0.274281f, 0.274189f, + 0.274097f, 0.274005f, 0.273912f, 0.273820f, 0.273728f, 0.273636f, 0.273544f, 0.273451f, + 0.273359f, 0.273267f, 0.273175f, 0.273083f, 0.272990f, 0.272898f, 0.272806f, 0.272714f, + 0.272621f, 0.272529f, 0.272437f, 0.272345f, 0.272252f, 0.272160f, 0.272068f, 0.271976f, + 0.271883f, 0.271791f, 0.271699f, 0.271607f, 0.271514f, 0.271422f, 0.271330f, 0.271237f, + 0.271145f, 0.271053f, 0.270961f, 0.270868f, 0.270776f, 0.270684f, 0.270591f, 0.270499f, + 0.270407f, 0.270315f, 0.270222f, 0.270130f, 0.270038f, 0.269945f, 0.269853f, 0.269761f, + 0.269668f, 0.269576f, 0.269484f, 0.269391f, 0.269299f, 0.269207f, 0.269114f, 0.269022f, + 0.268930f, 0.268837f, 0.268745f, 0.268653f, 0.268560f, 0.268468f, 0.268376f, 0.268283f, + 0.268191f, 0.268099f, 0.268006f, 0.267914f, 0.267821f, 0.267729f, 0.267637f, 0.267544f, + 0.267452f, 0.267359f, 0.267267f, 0.267175f, 0.267082f, 0.266990f, 0.266898f, 0.266805f, + 0.266713f, 0.266620f, 0.266528f, 0.266436f, 0.266343f, 0.266251f, 0.266158f, 0.266066f, + 0.265973f, 0.265881f, 0.265789f, 0.265696f, 0.265604f, 0.265511f, 0.265419f, 0.265326f, + 0.265234f, 0.265142f, 0.265049f, 0.264957f, 0.264864f, 0.264772f, 0.264679f, 0.264587f, + 0.264494f, 0.264402f, 0.264309f, 0.264217f, 0.264125f, 0.264032f, 0.263940f, 0.263847f, + 0.263755f, 0.263662f, 0.263570f, 0.263477f, 0.263385f, 0.263292f, 0.263200f, 0.263107f, + 0.263015f, 0.262922f, 0.262830f, 0.262737f, 0.262645f, 0.262552f, 0.262460f, 0.262367f, + 0.262275f, 0.262182f, 0.262090f, 0.261997f, 0.261905f, 0.261812f, 0.261720f, 0.261627f, + 0.261534f, 0.261442f, 0.261349f, 0.261257f, 0.261164f, 0.261072f, 0.260979f, 0.260887f, + 0.260794f, 0.260702f, 0.260609f, 0.260516f, 0.260424f, 0.260331f, 0.260239f, 0.260146f, + 0.260054f, 0.259961f, 0.259868f, 0.259776f, 0.259683f, 0.259591f, 0.259498f, 0.259405f, + 0.259313f, 0.259220f, 0.259128f, 0.259035f, 0.258943f, 0.258850f, 0.258757f, 0.258665f, + 0.258572f, 0.258479f, 0.258387f, 0.258294f, 0.258202f, 0.258109f, 0.258016f, 0.257924f, + 0.257831f, 0.257738f, 0.257646f, 0.257553f, 0.257461f, 0.257368f, 0.257275f, 0.257183f, + 0.257090f, 0.256997f, 0.256905f, 0.256812f, 0.256719f, 0.256627f, 0.256534f, 0.256441f, + 0.256349f, 0.256256f, 0.256163f, 0.256071f, 0.255978f, 0.255885f, 0.255793f, 0.255700f, + 0.255607f, 0.255515f, 0.255422f, 0.255329f, 0.255236f, 0.255144f, 0.255051f, 0.254958f, + 0.254866f, 0.254773f, 0.254680f, 0.254588f, 0.254495f, 0.254402f, 0.254309f, 0.254217f, + 0.254124f, 0.254031f, 0.253938f, 0.253846f, 0.253753f, 0.253660f, 0.253568f, 0.253475f, + 0.253382f, 0.253289f, 0.253197f, 0.253104f, 0.253011f, 0.252918f, 0.252826f, 0.252733f, + 0.252640f, 0.252547f, 0.252454f, 0.252362f, 0.252269f, 0.252176f, 0.252083f, 0.251991f, + 0.251898f, 0.251805f, 0.251712f, 0.251619f, 0.251527f, 0.251434f, 0.251341f, 0.251248f, + 0.251155f, 0.251063f, 0.250970f, 0.250877f, 0.250784f, 0.250691f, 0.250599f, 0.250506f, + 0.250413f, 0.250320f, 0.250227f, 0.250135f, 0.250042f, 0.249949f, 0.249856f, 0.249763f, + 0.249670f, 0.249578f, 0.249485f, 0.249392f, 0.249299f, 0.249206f, 0.249113f, 0.249020f, + 0.248928f, 0.248835f, 0.248742f, 0.248649f, 0.248556f, 0.248463f, 0.248370f, 0.248278f, + 0.248185f, 0.248092f, 0.247999f, 0.247906f, 0.247813f, 0.247720f, 0.247627f, 0.247535f, + 0.247442f, 0.247349f, 0.247256f, 0.247163f, 0.247070f, 0.246977f, 0.246884f, 0.246791f, + 0.246698f, 0.246606f, 0.246513f, 0.246420f, 0.246327f, 0.246234f, 0.246141f, 0.246048f, + 0.245955f, 0.245862f, 0.245769f, 0.245676f, 0.245583f, 0.245490f, 0.245397f, 0.245304f, + 0.245212f, 0.245119f, 0.245026f, 0.244933f, 0.244840f, 0.244747f, 0.244654f, 0.244561f, + 0.244468f, 0.244375f, 0.244282f, 0.244189f, 0.244096f, 0.244003f, 0.243910f, 0.243817f, + 0.243724f, 0.243631f, 0.243538f, 0.243445f, 0.243352f, 0.243259f, 0.243166f, 0.243073f, + 0.242980f, 0.242887f, 0.242794f, 0.242701f, 0.242608f, 0.242515f, 0.242422f, 0.242329f, + 0.242236f, 0.242143f, 0.242050f, 0.241957f, 0.241864f, 0.241771f, 0.241678f, 0.241585f, + 0.241492f, 0.241399f, 0.241306f, 0.241213f, 0.241120f, 0.241027f, 0.240934f, 0.240841f, + 0.240748f, 0.240654f, 0.240561f, 0.240468f, 0.240375f, 0.240282f, 0.240189f, 0.240096f, + 0.240003f, 0.239910f, 0.239817f, 0.239724f, 0.239631f, 0.239538f, 0.239445f, 0.239351f, + 0.239258f, 0.239165f, 0.239072f, 0.238979f, 0.238886f, 0.238793f, 0.238700f, 0.238607f, + 0.238514f, 0.238420f, 0.238327f, 0.238234f, 0.238141f, 0.238048f, 0.237955f, 0.237862f, + 0.237769f, 0.237676f, 0.237582f, 0.237489f, 0.237396f, 0.237303f, 0.237210f, 0.237117f, + 0.237024f, 0.236930f, 0.236837f, 0.236744f, 0.236651f, 0.236558f, 0.236465f, 0.236372f, + 0.236278f, 0.236185f, 0.236092f, 0.235999f, 0.235906f, 0.235813f, 0.235719f, 0.235626f, + 0.235533f, 0.235440f, 0.235347f, 0.235254f, 0.235160f, 0.235067f, 0.234974f, 0.234881f, + 0.234788f, 0.234694f, 0.234601f, 0.234508f, 0.234415f, 0.234322f, 0.234228f, 0.234135f, + 0.234042f, 0.233949f, 0.233856f, 0.233762f, 0.233669f, 0.233576f, 0.233483f, 0.233389f, + 0.233296f, 0.233203f, 0.233110f, 0.233017f, 0.232923f, 0.232830f, 0.232737f, 0.232644f, + 0.232550f, 0.232457f, 0.232364f, 0.232271f, 0.232177f, 0.232084f, 0.231991f, 0.231898f, + 0.231804f, 0.231711f, 0.231618f, 0.231524f, 0.231431f, 0.231338f, 0.231245f, 0.231151f, + 0.231058f, 0.230965f, 0.230872f, 0.230778f, 0.230685f, 0.230592f, 0.230498f, 0.230405f, + 0.230312f, 0.230218f, 0.230125f, 0.230032f, 0.229939f, 0.229845f, 0.229752f, 0.229659f, + 0.229565f, 0.229472f, 0.229379f, 0.229285f, 0.229192f, 0.229099f, 0.229005f, 0.228912f, + 0.228819f, 0.228725f, 0.228632f, 0.228539f, 0.228445f, 0.228352f, 0.228259f, 0.228165f, + 0.228072f, 0.227979f, 0.227885f, 0.227792f, 0.227699f, 0.227605f, 0.227512f, 0.227419f, + 0.227325f, 0.227232f, 0.227139f, 0.227045f, 0.226952f, 0.226858f, 0.226765f, 0.226672f, + 0.226578f, 0.226485f, 0.226391f, 0.226298f, 0.226205f, 0.226111f, 0.226018f, 0.225925f, + 0.225831f, 0.225738f, 0.225644f, 0.225551f, 0.225458f, 0.225364f, 0.225271f, 0.225177f, + 0.225084f, 0.224991f, 0.224897f, 0.224804f, 0.224710f, 0.224617f, 0.224523f, 0.224430f, + 0.224337f, 0.224243f, 0.224150f, 0.224056f, 0.223963f, 0.223869f, 0.223776f, 0.223682f, + 0.223589f, 0.223496f, 0.223402f, 0.223309f, 0.223215f, 0.223122f, 0.223028f, 0.222935f, + 0.222841f, 0.222748f, 0.222654f, 0.222561f, 0.222468f, 0.222374f, 0.222281f, 0.222187f, + 0.222094f, 0.222000f, 0.221907f, 0.221813f, 0.221720f, 0.221626f, 0.221533f, 0.221439f, + 0.221346f, 0.221252f, 0.221159f, 0.221065f, 0.220972f, 0.220878f, 0.220785f, 0.220691f, + 0.220598f, 0.220504f, 0.220411f, 0.220317f, 0.220224f, 0.220130f, 0.220037f, 0.219943f, + 0.219850f, 0.219756f, 0.219662f, 0.219569f, 0.219475f, 0.219382f, 0.219288f, 0.219195f, + 0.219101f, 0.219008f, 0.218914f, 0.218821f, 0.218727f, 0.218633f, 0.218540f, 0.218446f, + 0.218353f, 0.218259f, 0.218166f, 0.218072f, 0.217979f, 0.217885f, 0.217791f, 0.217698f, + 0.217604f, 0.217511f, 0.217417f, 0.217324f, 0.217230f, 0.217136f, 0.217043f, 0.216949f, + 0.216856f, 0.216762f, 0.216668f, 0.216575f, 0.216481f, 0.216388f, 0.216294f, 0.216200f, + 0.216107f, 0.216013f, 0.215920f, 0.215826f, 0.215732f, 0.215639f, 0.215545f, 0.215451f, + 0.215358f, 0.215264f, 0.215171f, 0.215077f, 0.214983f, 0.214890f, 0.214796f, 0.214702f, + 0.214609f, 0.214515f, 0.214422f, 0.214328f, 0.214234f, 0.214141f, 0.214047f, 0.213953f, + 0.213860f, 0.213766f, 0.213672f, 0.213579f, 0.213485f, 0.213391f, 0.213298f, 0.213204f, + 0.213110f, 0.213017f, 0.212923f, 0.212829f, 0.212736f, 0.212642f, 0.212548f, 0.212455f, + 0.212361f, 0.212267f, 0.212174f, 0.212080f, 0.211986f, 0.211892f, 0.211799f, 0.211705f, + 0.211611f, 0.211518f, 0.211424f, 0.211330f, 0.211237f, 0.211143f, 0.211049f, 0.210955f, + 0.210862f, 0.210768f, 0.210674f, 0.210580f, 0.210487f, 0.210393f, 0.210299f, 0.210206f, + 0.210112f, 0.210018f, 0.209924f, 0.209831f, 0.209737f, 0.209643f, 0.209549f, 0.209456f, + 0.209362f, 0.209268f, 0.209174f, 0.209081f, 0.208987f, 0.208893f, 0.208799f, 0.208706f, + 0.208612f, 0.208518f, 0.208424f, 0.208331f, 0.208237f, 0.208143f, 0.208049f, 0.207955f, + 0.207862f, 0.207768f, 0.207674f, 0.207580f, 0.207487f, 0.207393f, 0.207299f, 0.207205f, + 0.207111f, 0.207018f, 0.206924f, 0.206830f, 0.206736f, 0.206642f, 0.206549f, 0.206455f, + 0.206361f, 0.206267f, 0.206173f, 0.206080f, 0.205986f, 0.205892f, 0.205798f, 0.205704f, + 0.205610f, 0.205517f, 0.205423f, 0.205329f, 0.205235f, 0.205141f, 0.205047f, 0.204954f, + 0.204860f, 0.204766f, 0.204672f, 0.204578f, 0.204484f, 0.204391f, 0.204297f, 0.204203f, + 0.204109f, 0.204015f, 0.203921f, 0.203827f, 0.203734f, 0.203640f, 0.203546f, 0.203452f, + 0.203358f, 0.203264f, 0.203170f, 0.203076f, 0.202983f, 0.202889f, 0.202795f, 0.202701f, + 0.202607f, 0.202513f, 0.202419f, 0.202325f, 0.202231f, 0.202138f, 0.202044f, 0.201950f, + 0.201856f, 0.201762f, 0.201668f, 0.201574f, 0.201480f, 0.201386f, 0.201292f, 0.201199f, + 0.201105f, 0.201011f, 0.200917f, 0.200823f, 0.200729f, 0.200635f, 0.200541f, 0.200447f, + 0.200353f, 0.200259f, 0.200165f, 0.200071f, 0.199978f, 0.199884f, 0.199790f, 0.199696f, + 0.199602f, 0.199508f, 0.199414f, 0.199320f, 0.199226f, 0.199132f, 0.199038f, 0.198944f, + 0.198850f, 0.198756f, 0.198662f, 0.198568f, 0.198474f, 0.198380f, 0.198286f, 0.198192f, + 0.198098f, 0.198004f, 0.197910f, 0.197816f, 0.197722f, 0.197629f, 0.197535f, 0.197441f, + 0.197347f, 0.197253f, 0.197159f, 0.197065f, 0.196971f, 0.196877f, 0.196783f, 0.196689f, + 0.196595f, 0.196501f, 0.196407f, 0.196313f, 0.196219f, 0.196125f, 0.196031f, 0.195937f, + 0.195843f, 0.195748f, 0.195654f, 0.195560f, 0.195466f, 0.195372f, 0.195278f, 0.195184f, + 0.195090f, 0.194996f, 0.194902f, 0.194808f, 0.194714f, 0.194620f, 0.194526f, 0.194432f, + 0.194338f, 0.194244f, 0.194150f, 0.194056f, 0.193962f, 0.193868f, 0.193774f, 0.193680f, + 0.193586f, 0.193492f, 0.193397f, 0.193303f, 0.193209f, 0.193115f, 0.193021f, 0.192927f, + 0.192833f, 0.192739f, 0.192645f, 0.192551f, 0.192457f, 0.192363f, 0.192269f, 0.192174f, + 0.192080f, 0.191986f, 0.191892f, 0.191798f, 0.191704f, 0.191610f, 0.191516f, 0.191422f, + 0.191328f, 0.191234f, 0.191139f, 0.191045f, 0.190951f, 0.190857f, 0.190763f, 0.190669f, + 0.190575f, 0.190481f, 0.190387f, 0.190292f, 0.190198f, 0.190104f, 0.190010f, 0.189916f, + 0.189822f, 0.189728f, 0.189634f, 0.189539f, 0.189445f, 0.189351f, 0.189257f, 0.189163f, + 0.189069f, 0.188975f, 0.188880f, 0.188786f, 0.188692f, 0.188598f, 0.188504f, 0.188410f, + 0.188315f, 0.188221f, 0.188127f, 0.188033f, 0.187939f, 0.187845f, 0.187750f, 0.187656f, + 0.187562f, 0.187468f, 0.187374f, 0.187280f, 0.187185f, 0.187091f, 0.186997f, 0.186903f, + 0.186809f, 0.186715f, 0.186620f, 0.186526f, 0.186432f, 0.186338f, 0.186244f, 0.186149f, + 0.186055f, 0.185961f, 0.185867f, 0.185773f, 0.185678f, 0.185584f, 0.185490f, 0.185396f, + 0.185301f, 0.185207f, 0.185113f, 0.185019f, 0.184925f, 0.184830f, 0.184736f, 0.184642f, + 0.184548f, 0.184454f, 0.184359f, 0.184265f, 0.184171f, 0.184077f, 0.183982f, 0.183888f, + 0.183794f, 0.183700f, 0.183605f, 0.183511f, 0.183417f, 0.183323f, 0.183228f, 0.183134f, + 0.183040f, 0.182946f, 0.182851f, 0.182757f, 0.182663f, 0.182569f, 0.182474f, 0.182380f, + 0.182286f, 0.182192f, 0.182097f, 0.182003f, 0.181909f, 0.181814f, 0.181720f, 0.181626f, + 0.181532f, 0.181437f, 0.181343f, 0.181249f, 0.181154f, 0.181060f, 0.180966f, 0.180872f, + 0.180777f, 0.180683f, 0.180589f, 0.180494f, 0.180400f, 0.180306f, 0.180212f, 0.180117f, + 0.180023f, 0.179929f, 0.179834f, 0.179740f, 0.179646f, 0.179551f, 0.179457f, 0.179363f, + 0.179268f, 0.179174f, 0.179080f, 0.178985f, 0.178891f, 0.178797f, 0.178702f, 0.178608f, + 0.178514f, 0.178419f, 0.178325f, 0.178231f, 0.178136f, 0.178042f, 0.177948f, 0.177853f, + 0.177759f, 0.177665f, 0.177570f, 0.177476f, 0.177382f, 0.177287f, 0.177193f, 0.177099f, + 0.177004f, 0.176910f, 0.176815f, 0.176721f, 0.176627f, 0.176532f, 0.176438f, 0.176344f, + 0.176249f, 0.176155f, 0.176061f, 0.175966f, 0.175872f, 0.175777f, 0.175683f, 0.175589f, + 0.175494f, 0.175400f, 0.175305f, 0.175211f, 0.175117f, 0.175022f, 0.174928f, 0.174834f, + 0.174739f, 0.174645f, 0.174550f, 0.174456f, 0.174362f, 0.174267f, 0.174173f, 0.174078f, + 0.173984f, 0.173889f, 0.173795f, 0.173701f, 0.173606f, 0.173512f, 0.173417f, 0.173323f, + 0.173229f, 0.173134f, 0.173040f, 0.172945f, 0.172851f, 0.172756f, 0.172662f, 0.172568f, + 0.172473f, 0.172379f, 0.172284f, 0.172190f, 0.172095f, 0.172001f, 0.171906f, 0.171812f, + 0.171718f, 0.171623f, 0.171529f, 0.171434f, 0.171340f, 0.171245f, 0.171151f, 0.171056f, + 0.170962f, 0.170867f, 0.170773f, 0.170678f, 0.170584f, 0.170490f, 0.170395f, 0.170301f, + 0.170206f, 0.170112f, 0.170017f, 0.169923f, 0.169828f, 0.169734f, 0.169639f, 0.169545f, + 0.169450f, 0.169356f, 0.169261f, 0.169167f, 0.169072f, 0.168978f, 0.168883f, 0.168789f, + 0.168694f, 0.168600f, 0.168505f, 0.168411f, 0.168316f, 0.168222f, 0.168127f, 0.168033f, + 0.167938f, 0.167844f, 0.167749f, 0.167655f, 0.167560f, 0.167466f, 0.167371f, 0.167277f, + 0.167182f, 0.167088f, 0.166993f, 0.166899f, 0.166804f, 0.166710f, 0.166615f, 0.166520f, + 0.166426f, 0.166331f, 0.166237f, 0.166142f, 0.166048f, 0.165953f, 0.165859f, 0.165764f, + 0.165670f, 0.165575f, 0.165480f, 0.165386f, 0.165291f, 0.165197f, 0.165102f, 0.165008f, + 0.164913f, 0.164819f, 0.164724f, 0.164629f, 0.164535f, 0.164440f, 0.164346f, 0.164251f, + 0.164157f, 0.164062f, 0.163967f, 0.163873f, 0.163778f, 0.163684f, 0.163589f, 0.163495f, + 0.163400f, 0.163305f, 0.163211f, 0.163116f, 0.163022f, 0.162927f, 0.162832f, 0.162738f, + 0.162643f, 0.162549f, 0.162454f, 0.162359f, 0.162265f, 0.162170f, 0.162076f, 0.161981f, + 0.161886f, 0.161792f, 0.161697f, 0.161603f, 0.161508f, 0.161413f, 0.161319f, 0.161224f, + 0.161129f, 0.161035f, 0.160940f, 0.160846f, 0.160751f, 0.160656f, 0.160562f, 0.160467f, + 0.160372f, 0.160278f, 0.160183f, 0.160089f, 0.159994f, 0.159899f, 0.159805f, 0.159710f, + 0.159615f, 0.159521f, 0.159426f, 0.159331f, 0.159237f, 0.159142f, 0.159047f, 0.158953f, + 0.158858f, 0.158763f, 0.158669f, 0.158574f, 0.158480f, 0.158385f, 0.158290f, 0.158196f, + 0.158101f, 0.158006f, 0.157912f, 0.157817f, 0.157722f, 0.157627f, 0.157533f, 0.157438f, + 0.157343f, 0.157249f, 0.157154f, 0.157059f, 0.156965f, 0.156870f, 0.156775f, 0.156681f, + 0.156586f, 0.156491f, 0.156397f, 0.156302f, 0.156207f, 0.156112f, 0.156018f, 0.155923f, + 0.155828f, 0.155734f, 0.155639f, 0.155544f, 0.155450f, 0.155355f, 0.155260f, 0.155165f, + 0.155071f, 0.154976f, 0.154881f, 0.154787f, 0.154692f, 0.154597f, 0.154502f, 0.154408f, + 0.154313f, 0.154218f, 0.154124f, 0.154029f, 0.153934f, 0.153839f, 0.153745f, 0.153650f, + 0.153555f, 0.153460f, 0.153366f, 0.153271f, 0.153176f, 0.153081f, 0.152987f, 0.152892f, + 0.152797f, 0.152702f, 0.152608f, 0.152513f, 0.152418f, 0.152323f, 0.152229f, 0.152134f, + 0.152039f, 0.151944f, 0.151850f, 0.151755f, 0.151660f, 0.151565f, 0.151471f, 0.151376f, + 0.151281f, 0.151186f, 0.151092f, 0.150997f, 0.150902f, 0.150807f, 0.150712f, 0.150618f, + 0.150523f, 0.150428f, 0.150333f, 0.150238f, 0.150144f, 0.150049f, 0.149954f, 0.149859f, + 0.149765f, 0.149670f, 0.149575f, 0.149480f, 0.149385f, 0.149291f, 0.149196f, 0.149101f, + 0.149006f, 0.148911f, 0.148817f, 0.148722f, 0.148627f, 0.148532f, 0.148437f, 0.148342f, + 0.148248f, 0.148153f, 0.148058f, 0.147963f, 0.147868f, 0.147774f, 0.147679f, 0.147584f, + 0.147489f, 0.147394f, 0.147299f, 0.147205f, 0.147110f, 0.147015f, 0.146920f, 0.146825f, + 0.146730f, 0.146636f, 0.146541f, 0.146446f, 0.146351f, 0.146256f, 0.146161f, 0.146067f, + 0.145972f, 0.145877f, 0.145782f, 0.145687f, 0.145592f, 0.145497f, 0.145403f, 0.145308f, + 0.145213f, 0.145118f, 0.145023f, 0.144928f, 0.144833f, 0.144739f, 0.144644f, 0.144549f, + 0.144454f, 0.144359f, 0.144264f, 0.144169f, 0.144075f, 0.143980f, 0.143885f, 0.143790f, + 0.143695f, 0.143600f, 0.143505f, 0.143410f, 0.143316f, 0.143221f, 0.143126f, 0.143031f, + 0.142936f, 0.142841f, 0.142746f, 0.142651f, 0.142556f, 0.142461f, 0.142367f, 0.142272f, + 0.142177f, 0.142082f, 0.141987f, 0.141892f, 0.141797f, 0.141702f, 0.141607f, 0.141512f, + 0.141418f, 0.141323f, 0.141228f, 0.141133f, 0.141038f, 0.140943f, 0.140848f, 0.140753f, + 0.140658f, 0.140563f, 0.140468f, 0.140373f, 0.140279f, 0.140184f, 0.140089f, 0.139994f, + 0.139899f, 0.139804f, 0.139709f, 0.139614f, 0.139519f, 0.139424f, 0.139329f, 0.139234f, + 0.139139f, 0.139044f, 0.138949f, 0.138855f, 0.138760f, 0.138665f, 0.138570f, 0.138475f, + 0.138380f, 0.138285f, 0.138190f, 0.138095f, 0.138000f, 0.137905f, 0.137810f, 0.137715f, + 0.137620f, 0.137525f, 0.137430f, 0.137335f, 0.137240f, 0.137145f, 0.137050f, 0.136955f, + 0.136860f, 0.136765f, 0.136670f, 0.136575f, 0.136480f, 0.136386f, 0.136291f, 0.136196f, + 0.136101f, 0.136006f, 0.135911f, 0.135816f, 0.135721f, 0.135626f, 0.135531f, 0.135436f, + 0.135341f, 0.135246f, 0.135151f, 0.135056f, 0.134961f, 0.134866f, 0.134771f, 0.134676f, + 0.134581f, 0.134486f, 0.134391f, 0.134296f, 0.134201f, 0.134106f, 0.134011f, 0.133916f, + 0.133821f, 0.133726f, 0.133631f, 0.133536f, 0.133441f, 0.133346f, 0.133251f, 0.133156f, + 0.133061f, 0.132966f, 0.132870f, 0.132775f, 0.132680f, 0.132585f, 0.132490f, 0.132395f, + 0.132300f, 0.132205f, 0.132110f, 0.132015f, 0.131920f, 0.131825f, 0.131730f, 0.131635f, + 0.131540f, 0.131445f, 0.131350f, 0.131255f, 0.131160f, 0.131065f, 0.130970f, 0.130875f, + 0.130780f, 0.130685f, 0.130590f, 0.130495f, 0.130399f, 0.130304f, 0.130209f, 0.130114f, + 0.130019f, 0.129924f, 0.129829f, 0.129734f, 0.129639f, 0.129544f, 0.129449f, 0.129354f, + 0.129259f, 0.129164f, 0.129069f, 0.128973f, 0.128878f, 0.128783f, 0.128688f, 0.128593f, + 0.128498f, 0.128403f, 0.128308f, 0.128213f, 0.128118f, 0.128023f, 0.127928f, 0.127833f, + 0.127737f, 0.127642f, 0.127547f, 0.127452f, 0.127357f, 0.127262f, 0.127167f, 0.127072f, + 0.126977f, 0.126882f, 0.126787f, 0.126691f, 0.126596f, 0.126501f, 0.126406f, 0.126311f, + 0.126216f, 0.126121f, 0.126026f, 0.125931f, 0.125835f, 0.125740f, 0.125645f, 0.125550f, + 0.125455f, 0.125360f, 0.125265f, 0.125170f, 0.125075f, 0.124979f, 0.124884f, 0.124789f, + 0.124694f, 0.124599f, 0.124504f, 0.124409f, 0.124314f, 0.124218f, 0.124123f, 0.124028f, + 0.123933f, 0.123838f, 0.123743f, 0.123648f, 0.123552f, 0.123457f, 0.123362f, 0.123267f, + 0.123172f, 0.123077f, 0.122982f, 0.122886f, 0.122791f, 0.122696f, 0.122601f, 0.122506f, + 0.122411f, 0.122316f, 0.122220f, 0.122125f, 0.122030f, 0.121935f, 0.121840f, 0.121745f, + 0.121649f, 0.121554f, 0.121459f, 0.121364f, 0.121269f, 0.121174f, 0.121078f, 0.120983f, + 0.120888f, 0.120793f, 0.120698f, 0.120603f, 0.120507f, 0.120412f, 0.120317f, 0.120222f, + 0.120127f, 0.120032f, 0.119936f, 0.119841f, 0.119746f, 0.119651f, 0.119556f, 0.119460f, + 0.119365f, 0.119270f, 0.119175f, 0.119080f, 0.118984f, 0.118889f, 0.118794f, 0.118699f, + 0.118604f, 0.118508f, 0.118413f, 0.118318f, 0.118223f, 0.118128f, 0.118032f, 0.117937f, + 0.117842f, 0.117747f, 0.117652f, 0.117556f, 0.117461f, 0.117366f, 0.117271f, 0.117176f, + 0.117080f, 0.116985f, 0.116890f, 0.116795f, 0.116700f, 0.116604f, 0.116509f, 0.116414f, + 0.116319f, 0.116223f, 0.116128f, 0.116033f, 0.115938f, 0.115842f, 0.115747f, 0.115652f, + 0.115557f, 0.115462f, 0.115366f, 0.115271f, 0.115176f, 0.115081f, 0.114985f, 0.114890f, + 0.114795f, 0.114700f, 0.114604f, 0.114509f, 0.114414f, 0.114319f, 0.114223f, 0.114128f, + 0.114033f, 0.113938f, 0.113842f, 0.113747f, 0.113652f, 0.113557f, 0.113461f, 0.113366f, + 0.113271f, 0.113176f, 0.113080f, 0.112985f, 0.112890f, 0.112795f, 0.112699f, 0.112604f, + 0.112509f, 0.112414f, 0.112318f, 0.112223f, 0.112128f, 0.112033f, 0.111937f, 0.111842f, + 0.111747f, 0.111651f, 0.111556f, 0.111461f, 0.111366f, 0.111270f, 0.111175f, 0.111080f, + 0.110984f, 0.110889f, 0.110794f, 0.110699f, 0.110603f, 0.110508f, 0.110413f, 0.110317f, + 0.110222f, 0.110127f, 0.110032f, 0.109936f, 0.109841f, 0.109746f, 0.109650f, 0.109555f, + 0.109460f, 0.109365f, 0.109269f, 0.109174f, 0.109079f, 0.108983f, 0.108888f, 0.108793f, + 0.108697f, 0.108602f, 0.108507f, 0.108412f, 0.108316f, 0.108221f, 0.108126f, 0.108030f, + 0.107935f, 0.107840f, 0.107744f, 0.107649f, 0.107554f, 0.107458f, 0.107363f, 0.107268f, + 0.107172f, 0.107077f, 0.106982f, 0.106886f, 0.106791f, 0.106696f, 0.106600f, 0.106505f, + 0.106410f, 0.106314f, 0.106219f, 0.106124f, 0.106028f, 0.105933f, 0.105838f, 0.105742f, + 0.105647f, 0.105552f, 0.105456f, 0.105361f, 0.105266f, 0.105170f, 0.105075f, 0.104980f, + 0.104884f, 0.104789f, 0.104694f, 0.104598f, 0.104503f, 0.104408f, 0.104312f, 0.104217f, + 0.104122f, 0.104026f, 0.103931f, 0.103836f, 0.103740f, 0.103645f, 0.103550f, 0.103454f, + 0.103359f, 0.103263f, 0.103168f, 0.103073f, 0.102977f, 0.102882f, 0.102787f, 0.102691f, + 0.102596f, 0.102500f, 0.102405f, 0.102310f, 0.102214f, 0.102119f, 0.102024f, 0.101928f, + 0.101833f, 0.101738f, 0.101642f, 0.101547f, 0.101451f, 0.101356f, 0.101261f, 0.101165f, + 0.101070f, 0.100974f, 0.100879f, 0.100784f, 0.100688f, 0.100593f, 0.100498f, 0.100402f, + 0.100307f, 0.100211f, 0.100116f, 0.100021f, 0.099925f, 0.099830f, 0.099734f, 0.099639f, + 0.099544f, 0.099448f, 0.099353f, 0.099257f, 0.099162f, 0.099067f, 0.098971f, 0.098876f, + 0.098780f, 0.098685f, 0.098590f, 0.098494f, 0.098399f, 0.098303f, 0.098208f, 0.098113f, + 0.098017f, 0.097922f, 0.097826f, 0.097731f, 0.097635f, 0.097540f, 0.097445f, 0.097349f, + 0.097254f, 0.097158f, 0.097063f, 0.096968f, 0.096872f, 0.096777f, 0.096681f, 0.096586f, + 0.096490f, 0.096395f, 0.096300f, 0.096204f, 0.096109f, 0.096013f, 0.095918f, 0.095822f, + 0.095727f, 0.095632f, 0.095536f, 0.095441f, 0.095345f, 0.095250f, 0.095154f, 0.095059f, + 0.094963f, 0.094868f, 0.094773f, 0.094677f, 0.094582f, 0.094486f, 0.094391f, 0.094295f, + 0.094200f, 0.094104f, 0.094009f, 0.093914f, 0.093818f, 0.093723f, 0.093627f, 0.093532f, + 0.093436f, 0.093341f, 0.093245f, 0.093150f, 0.093055f, 0.092959f, 0.092864f, 0.092768f, + 0.092673f, 0.092577f, 0.092482f, 0.092386f, 0.092291f, 0.092195f, 0.092100f, 0.092004f, + 0.091909f, 0.091813f, 0.091718f, 0.091623f, 0.091527f, 0.091432f, 0.091336f, 0.091241f, + 0.091145f, 0.091050f, 0.090954f, 0.090859f, 0.090763f, 0.090668f, 0.090572f, 0.090477f, + 0.090381f, 0.090286f, 0.090190f, 0.090095f, 0.089999f, 0.089904f, 0.089808f, 0.089713f, + 0.089617f, 0.089522f, 0.089427f, 0.089331f, 0.089236f, 0.089140f, 0.089045f, 0.088949f, + 0.088854f, 0.088758f, 0.088663f, 0.088567f, 0.088472f, 0.088376f, 0.088281f, 0.088185f, + 0.088090f, 0.087994f, 0.087899f, 0.087803f, 0.087708f, 0.087612f, 0.087517f, 0.087421f, + 0.087326f, 0.087230f, 0.087135f, 0.087039f, 0.086943f, 0.086848f, 0.086752f, 0.086657f, + 0.086561f, 0.086466f, 0.086370f, 0.086275f, 0.086179f, 0.086084f, 0.085988f, 0.085893f, + 0.085797f, 0.085702f, 0.085606f, 0.085511f, 0.085415f, 0.085320f, 0.085224f, 0.085129f, + 0.085033f, 0.084938f, 0.084842f, 0.084747f, 0.084651f, 0.084555f, 0.084460f, 0.084364f, + 0.084269f, 0.084173f, 0.084078f, 0.083982f, 0.083887f, 0.083791f, 0.083696f, 0.083600f, + 0.083505f, 0.083409f, 0.083314f, 0.083218f, 0.083122f, 0.083027f, 0.082931f, 0.082836f, + 0.082740f, 0.082645f, 0.082549f, 0.082454f, 0.082358f, 0.082263f, 0.082167f, 0.082071f, + 0.081976f, 0.081880f, 0.081785f, 0.081689f, 0.081594f, 0.081498f, 0.081403f, 0.081307f, + 0.081211f, 0.081116f, 0.081020f, 0.080925f, 0.080829f, 0.080734f, 0.080638f, 0.080543f, + 0.080447f, 0.080351f, 0.080256f, 0.080160f, 0.080065f, 0.079969f, 0.079874f, 0.079778f, + 0.079682f, 0.079587f, 0.079491f, 0.079396f, 0.079300f, 0.079205f, 0.079109f, 0.079013f, + 0.078918f, 0.078822f, 0.078727f, 0.078631f, 0.078536f, 0.078440f, 0.078344f, 0.078249f, + 0.078153f, 0.078058f, 0.077962f, 0.077866f, 0.077771f, 0.077675f, 0.077580f, 0.077484f, + 0.077389f, 0.077293f, 0.077197f, 0.077102f, 0.077006f, 0.076911f, 0.076815f, 0.076719f, + 0.076624f, 0.076528f, 0.076433f, 0.076337f, 0.076241f, 0.076146f, 0.076050f, 0.075955f, + 0.075859f, 0.075764f, 0.075668f, 0.075572f, 0.075477f, 0.075381f, 0.075286f, 0.075190f, + 0.075094f, 0.074999f, 0.074903f, 0.074807f, 0.074712f, 0.074616f, 0.074521f, 0.074425f, + 0.074329f, 0.074234f, 0.074138f, 0.074043f, 0.073947f, 0.073851f, 0.073756f, 0.073660f, + 0.073565f, 0.073469f, 0.073373f, 0.073278f, 0.073182f, 0.073086f, 0.072991f, 0.072895f, + 0.072800f, 0.072704f, 0.072608f, 0.072513f, 0.072417f, 0.072322f, 0.072226f, 0.072130f, + 0.072035f, 0.071939f, 0.071843f, 0.071748f, 0.071652f, 0.071557f, 0.071461f, 0.071365f, + 0.071270f, 0.071174f, 0.071078f, 0.070983f, 0.070887f, 0.070791f, 0.070696f, 0.070600f, + 0.070505f, 0.070409f, 0.070313f, 0.070218f, 0.070122f, 0.070026f, 0.069931f, 0.069835f, + 0.069739f, 0.069644f, 0.069548f, 0.069453f, 0.069357f, 0.069261f, 0.069166f, 0.069070f, + 0.068974f, 0.068879f, 0.068783f, 0.068687f, 0.068592f, 0.068496f, 0.068400f, 0.068305f, + 0.068209f, 0.068113f, 0.068018f, 0.067922f, 0.067827f, 0.067731f, 0.067635f, 0.067540f, + 0.067444f, 0.067348f, 0.067253f, 0.067157f, 0.067061f, 0.066966f, 0.066870f, 0.066774f, + 0.066679f, 0.066583f, 0.066487f, 0.066392f, 0.066296f, 0.066200f, 0.066105f, 0.066009f, + 0.065913f, 0.065818f, 0.065722f, 0.065626f, 0.065531f, 0.065435f, 0.065339f, 0.065244f, + 0.065148f, 0.065052f, 0.064957f, 0.064861f, 0.064765f, 0.064670f, 0.064574f, 0.064478f, + 0.064383f, 0.064287f, 0.064191f, 0.064096f, 0.064000f, 0.063904f, 0.063809f, 0.063713f, + 0.063617f, 0.063522f, 0.063426f, 0.063330f, 0.063234f, 0.063139f, 0.063043f, 0.062947f, + 0.062852f, 0.062756f, 0.062660f, 0.062565f, 0.062469f, 0.062373f, 0.062278f, 0.062182f, + 0.062086f, 0.061991f, 0.061895f, 0.061799f, 0.061704f, 0.061608f, 0.061512f, 0.061416f, + 0.061321f, 0.061225f, 0.061129f, 0.061034f, 0.060938f, 0.060842f, 0.060747f, 0.060651f, + 0.060555f, 0.060459f, 0.060364f, 0.060268f, 0.060172f, 0.060077f, 0.059981f, 0.059885f, + 0.059790f, 0.059694f, 0.059598f, 0.059502f, 0.059407f, 0.059311f, 0.059215f, 0.059120f, + 0.059024f, 0.058928f, 0.058833f, 0.058737f, 0.058641f, 0.058545f, 0.058450f, 0.058354f, + 0.058258f, 0.058163f, 0.058067f, 0.057971f, 0.057875f, 0.057780f, 0.057684f, 0.057588f, + 0.057493f, 0.057397f, 0.057301f, 0.057205f, 0.057110f, 0.057014f, 0.056918f, 0.056823f, + 0.056727f, 0.056631f, 0.056535f, 0.056440f, 0.056344f, 0.056248f, 0.056152f, 0.056057f, + 0.055961f, 0.055865f, 0.055770f, 0.055674f, 0.055578f, 0.055482f, 0.055387f, 0.055291f, + 0.055195f, 0.055100f, 0.055004f, 0.054908f, 0.054812f, 0.054717f, 0.054621f, 0.054525f, + 0.054429f, 0.054334f, 0.054238f, 0.054142f, 0.054046f, 0.053951f, 0.053855f, 0.053759f, + 0.053664f, 0.053568f, 0.053472f, 0.053376f, 0.053281f, 0.053185f, 0.053089f, 0.052993f, + 0.052898f, 0.052802f, 0.052706f, 0.052610f, 0.052515f, 0.052419f, 0.052323f, 0.052227f, + 0.052132f, 0.052036f, 0.051940f, 0.051844f, 0.051749f, 0.051653f, 0.051557f, 0.051461f, + 0.051366f, 0.051270f, 0.051174f, 0.051078f, 0.050983f, 0.050887f, 0.050791f, 0.050696f, + 0.050600f, 0.050504f, 0.050408f, 0.050312f, 0.050217f, 0.050121f, 0.050025f, 0.049929f, + 0.049834f, 0.049738f, 0.049642f, 0.049546f, 0.049451f, 0.049355f, 0.049259f, 0.049163f, + 0.049068f, 0.048972f, 0.048876f, 0.048780f, 0.048685f, 0.048589f, 0.048493f, 0.048397f, + 0.048302f, 0.048206f, 0.048110f, 0.048014f, 0.047919f, 0.047823f, 0.047727f, 0.047631f, + 0.047535f, 0.047440f, 0.047344f, 0.047248f, 0.047152f, 0.047057f, 0.046961f, 0.046865f, + 0.046769f, 0.046674f, 0.046578f, 0.046482f, 0.046386f, 0.046290f, 0.046195f, 0.046099f, + 0.046003f, 0.045907f, 0.045812f, 0.045716f, 0.045620f, 0.045524f, 0.045429f, 0.045333f, + 0.045237f, 0.045141f, 0.045045f, 0.044950f, 0.044854f, 0.044758f, 0.044662f, 0.044567f, + 0.044471f, 0.044375f, 0.044279f, 0.044183f, 0.044088f, 0.043992f, 0.043896f, 0.043800f, + 0.043705f, 0.043609f, 0.043513f, 0.043417f, 0.043321f, 0.043226f, 0.043130f, 0.043034f, + 0.042938f, 0.042842f, 0.042747f, 0.042651f, 0.042555f, 0.042459f, 0.042364f, 0.042268f, + 0.042172f, 0.042076f, 0.041980f, 0.041885f, 0.041789f, 0.041693f, 0.041597f, 0.041501f, + 0.041406f, 0.041310f, 0.041214f, 0.041118f, 0.041022f, 0.040927f, 0.040831f, 0.040735f, + 0.040639f, 0.040544f, 0.040448f, 0.040352f, 0.040256f, 0.040160f, 0.040065f, 0.039969f, + 0.039873f, 0.039777f, 0.039681f, 0.039586f, 0.039490f, 0.039394f, 0.039298f, 0.039202f, + 0.039107f, 0.039011f, 0.038915f, 0.038819f, 0.038723f, 0.038628f, 0.038532f, 0.038436f, + 0.038340f, 0.038244f, 0.038149f, 0.038053f, 0.037957f, 0.037861f, 0.037765f, 0.037669f, + 0.037574f, 0.037478f, 0.037382f, 0.037286f, 0.037190f, 0.037095f, 0.036999f, 0.036903f, + 0.036807f, 0.036711f, 0.036616f, 0.036520f, 0.036424f, 0.036328f, 0.036232f, 0.036137f, + 0.036041f, 0.035945f, 0.035849f, 0.035753f, 0.035657f, 0.035562f, 0.035466f, 0.035370f, + 0.035274f, 0.035178f, 0.035083f, 0.034987f, 0.034891f, 0.034795f, 0.034699f, 0.034604f, + 0.034508f, 0.034412f, 0.034316f, 0.034220f, 0.034124f, 0.034029f, 0.033933f, 0.033837f, + 0.033741f, 0.033645f, 0.033550f, 0.033454f, 0.033358f, 0.033262f, 0.033166f, 0.033070f, + 0.032975f, 0.032879f, 0.032783f, 0.032687f, 0.032591f, 0.032495f, 0.032400f, 0.032304f, + 0.032208f, 0.032112f, 0.032016f, 0.031921f, 0.031825f, 0.031729f, 0.031633f, 0.031537f, + 0.031441f, 0.031346f, 0.031250f, 0.031154f, 0.031058f, 0.030962f, 0.030866f, 0.030771f, + 0.030675f, 0.030579f, 0.030483f, 0.030387f, 0.030291f, 0.030196f, 0.030100f, 0.030004f, + 0.029908f, 0.029812f, 0.029717f, 0.029621f, 0.029525f, 0.029429f, 0.029333f, 0.029237f, + 0.029142f, 0.029046f, 0.028950f, 0.028854f, 0.028758f, 0.028662f, 0.028567f, 0.028471f, + 0.028375f, 0.028279f, 0.028183f, 0.028087f, 0.027991f, 0.027896f, 0.027800f, 0.027704f, + 0.027608f, 0.027512f, 0.027416f, 0.027321f, 0.027225f, 0.027129f, 0.027033f, 0.026937f, + 0.026841f, 0.026746f, 0.026650f, 0.026554f, 0.026458f, 0.026362f, 0.026266f, 0.026171f, + 0.026075f, 0.025979f, 0.025883f, 0.025787f, 0.025691f, 0.025596f, 0.025500f, 0.025404f, + 0.025308f, 0.025212f, 0.025116f, 0.025020f, 0.024925f, 0.024829f, 0.024733f, 0.024637f, + 0.024541f, 0.024445f, 0.024350f, 0.024254f, 0.024158f, 0.024062f, 0.023966f, 0.023870f, + 0.023774f, 0.023679f, 0.023583f, 0.023487f, 0.023391f, 0.023295f, 0.023199f, 0.023104f, + 0.023008f, 0.022912f, 0.022816f, 0.022720f, 0.022624f, 0.022528f, 0.022433f, 0.022337f, + 0.022241f, 0.022145f, 0.022049f, 0.021953f, 0.021857f, 0.021762f, 0.021666f, 0.021570f, + 0.021474f, 0.021378f, 0.021282f, 0.021187f, 0.021091f, 0.020995f, 0.020899f, 0.020803f, + 0.020707f, 0.020611f, 0.020516f, 0.020420f, 0.020324f, 0.020228f, 0.020132f, 0.020036f, + 0.019940f, 0.019845f, 0.019749f, 0.019653f, 0.019557f, 0.019461f, 0.019365f, 0.019269f, + 0.019174f, 0.019078f, 0.018982f, 0.018886f, 0.018790f, 0.018694f, 0.018598f, 0.018503f, + 0.018407f, 0.018311f, 0.018215f, 0.018119f, 0.018023f, 0.017927f, 0.017832f, 0.017736f, + 0.017640f, 0.017544f, 0.017448f, 0.017352f, 0.017256f, 0.017161f, 0.017065f, 0.016969f, + 0.016873f, 0.016777f, 0.016681f, 0.016585f, 0.016490f, 0.016394f, 0.016298f, 0.016202f, + 0.016106f, 0.016010f, 0.015914f, 0.015819f, 0.015723f, 0.015627f, 0.015531f, 0.015435f, + 0.015339f, 0.015243f, 0.015147f, 0.015052f, 0.014956f, 0.014860f, 0.014764f, 0.014668f, + 0.014572f, 0.014476f, 0.014381f, 0.014285f, 0.014189f, 0.014093f, 0.013997f, 0.013901f, + 0.013805f, 0.013710f, 0.013614f, 0.013518f, 0.013422f, 0.013326f, 0.013230f, 0.013134f, + 0.013038f, 0.012943f, 0.012847f, 0.012751f, 0.012655f, 0.012559f, 0.012463f, 0.012367f, + 0.012272f, 0.012176f, 0.012080f, 0.011984f, 0.011888f, 0.011792f, 0.011696f, 0.011600f, + 0.011505f, 0.011409f, 0.011313f, 0.011217f, 0.011121f, 0.011025f, 0.010929f, 0.010834f, + 0.010738f, 0.010642f, 0.010546f, 0.010450f, 0.010354f, 0.010258f, 0.010162f, 0.010067f, + 0.009971f, 0.009875f, 0.009779f, 0.009683f, 0.009587f, 0.009491f, 0.009395f, 0.009300f, + 0.009204f, 0.009108f, 0.009012f, 0.008916f, 0.008820f, 0.008724f, 0.008629f, 0.008533f, + 0.008437f, 0.008341f, 0.008245f, 0.008149f, 0.008053f, 0.007957f, 0.007862f, 0.007766f, + 0.007670f, 0.007574f, 0.007478f, 0.007382f, 0.007286f, 0.007190f, 0.007095f, 0.006999f, + 0.006903f, 0.006807f, 0.006711f, 0.006615f, 0.006519f, 0.006424f, 0.006328f, 0.006232f, + 0.006136f, 0.006040f, 0.005944f, 0.005848f, 0.005752f, 0.005657f, 0.005561f, 0.005465f, + 0.005369f, 0.005273f, 0.005177f, 0.005081f, 0.004985f, 0.004890f, 0.004794f, 0.004698f, + 0.004602f, 0.004506f, 0.004410f, 0.004314f, 0.004218f, 0.004123f, 0.004027f, 0.003931f, + 0.003835f, 0.003739f, 0.003643f, 0.003547f, 0.003451f, 0.003356f, 0.003260f, 0.003164f, + 0.003068f, 0.002972f, 0.002876f, 0.002780f, 0.002684f, 0.002589f, 0.002493f, 0.002397f, + 0.002301f, 0.002205f, 0.002109f, 0.002013f, 0.001917f, 0.001822f, 0.001726f, 0.001630f, + 0.001534f, 0.001438f, 0.001342f, 0.001246f, 0.001150f, 0.001055f, 0.000959f, 0.000863f, + 0.000767f, 0.000671f, 0.000575f, 0.000479f, 0.000383f, 0.000288f, 0.000192f, 0.000096f, + 0.000000f, 0.000096f, 0.000192f, 0.000288f, 0.000383f, 0.000479f, 0.000575f, 0.000671f, + 0.000767f, 0.000863f, 0.000959f, 0.001055f, 0.001150f, 0.001246f, 0.001342f, 0.001438f, + 0.001534f, 0.001630f, 0.001726f, 0.001822f, 0.001917f, 0.002013f, 0.002109f, 0.002205f, + 0.002301f, 0.002397f, 0.002493f, 0.002589f, 0.002684f, 0.002780f, 0.002876f, 0.002972f, + 0.003068f, 0.003164f, 0.003260f, 0.003356f, 0.003451f, 0.003547f, 0.003643f, 0.003739f, + 0.003835f, 0.003931f, 0.004027f, 0.004123f, 0.004218f, 0.004314f, 0.004410f, 0.004506f, + 0.004602f, 0.004698f, 0.004794f, 0.004890f, 0.004985f, 0.005081f, 0.005177f, 0.005273f, + 0.005369f, 0.005465f, 0.005561f, 0.005657f, 0.005752f, 0.005848f, 0.005944f, 0.006040f, + 0.006136f, 0.006232f, 0.006328f, 0.006424f, 0.006519f, 0.006615f, 0.006711f, 0.006807f, + 0.006903f, 0.006999f, 0.007095f, 0.007190f, 0.007286f, 0.007382f, 0.007478f, 0.007574f, + 0.007670f, 0.007766f, 0.007862f, 0.007957f, 0.008053f, 0.008149f, 0.008245f, 0.008341f, + 0.008437f, 0.008533f, 0.008629f, 0.008724f, 0.008820f, 0.008916f, 0.009012f, 0.009108f, + 0.009204f, 0.009300f, 0.009395f, 0.009491f, 0.009587f, 0.009683f, 0.009779f, 0.009875f, + 0.009971f, 0.010067f, 0.010162f, 0.010258f, 0.010354f, 0.010450f, 0.010546f, 0.010642f, + 0.010738f, 0.010834f, 0.010929f, 0.011025f, 0.011121f, 0.011217f, 0.011313f, 0.011409f, + 0.011505f, 0.011600f, 0.011696f, 0.011792f, 0.011888f, 0.011984f, 0.012080f, 0.012176f, + 0.012272f, 0.012367f, 0.012463f, 0.012559f, 0.012655f, 0.012751f, 0.012847f, 0.012943f, + 0.013038f, 0.013134f, 0.013230f, 0.013326f, 0.013422f, 0.013518f, 0.013614f, 0.013710f, + 0.013805f, 0.013901f, 0.013997f, 0.014093f, 0.014189f, 0.014285f, 0.014381f, 0.014476f, + 0.014572f, 0.014668f, 0.014764f, 0.014860f, 0.014956f, 0.015052f, 0.015147f, 0.015243f, + 0.015339f, 0.015435f, 0.015531f, 0.015627f, 0.015723f, 0.015819f, 0.015914f, 0.016010f, + 0.016106f, 0.016202f, 0.016298f, 0.016394f, 0.016490f, 0.016585f, 0.016681f, 0.016777f, + 0.016873f, 0.016969f, 0.017065f, 0.017161f, 0.017256f, 0.017352f, 0.017448f, 0.017544f, + 0.017640f, 0.017736f, 0.017832f, 0.017927f, 0.018023f, 0.018119f, 0.018215f, 0.018311f, + 0.018407f, 0.018503f, 0.018598f, 0.018694f, 0.018790f, 0.018886f, 0.018982f, 0.019078f, + 0.019174f, 0.019269f, 0.019365f, 0.019461f, 0.019557f, 0.019653f, 0.019749f, 0.019845f, + 0.019940f, 0.020036f, 0.020132f, 0.020228f, 0.020324f, 0.020420f, 0.020516f, 0.020611f, + 0.020707f, 0.020803f, 0.020899f, 0.020995f, 0.021091f, 0.021187f, 0.021282f, 0.021378f, + 0.021474f, 0.021570f, 0.021666f, 0.021762f, 0.021857f, 0.021953f, 0.022049f, 0.022145f, + 0.022241f, 0.022337f, 0.022433f, 0.022528f, 0.022624f, 0.022720f, 0.022816f, 0.022912f, + 0.023008f, 0.023104f, 0.023199f, 0.023295f, 0.023391f, 0.023487f, 0.023583f, 0.023679f, + 0.023774f, 0.023870f, 0.023966f, 0.024062f, 0.024158f, 0.024254f, 0.024350f, 0.024445f, + 0.024541f, 0.024637f, 0.024733f, 0.024829f, 0.024925f, 0.025020f, 0.025116f, 0.025212f, + 0.025308f, 0.025404f, 0.025500f, 0.025596f, 0.025691f, 0.025787f, 0.025883f, 0.025979f, + 0.026075f, 0.026171f, 0.026266f, 0.026362f, 0.026458f, 0.026554f, 0.026650f, 0.026746f, + 0.026841f, 0.026937f, 0.027033f, 0.027129f, 0.027225f, 0.027321f, 0.027416f, 0.027512f, + 0.027608f, 0.027704f, 0.027800f, 0.027896f, 0.027991f, 0.028087f, 0.028183f, 0.028279f, + 0.028375f, 0.028471f, 0.028567f, 0.028662f, 0.028758f, 0.028854f, 0.028950f, 0.029046f, + 0.029142f, 0.029237f, 0.029333f, 0.029429f, 0.029525f, 0.029621f, 0.029717f, 0.029812f, + 0.029908f, 0.030004f, 0.030100f, 0.030196f, 0.030291f, 0.030387f, 0.030483f, 0.030579f, + 0.030675f, 0.030771f, 0.030866f, 0.030962f, 0.031058f, 0.031154f, 0.031250f, 0.031346f, + 0.031441f, 0.031537f, 0.031633f, 0.031729f, 0.031825f, 0.031921f, 0.032016f, 0.032112f, + 0.032208f, 0.032304f, 0.032400f, 0.032495f, 0.032591f, 0.032687f, 0.032783f, 0.032879f, + 0.032975f, 0.033070f, 0.033166f, 0.033262f, 0.033358f, 0.033454f, 0.033550f, 0.033645f, + 0.033741f, 0.033837f, 0.033933f, 0.034029f, 0.034124f, 0.034220f, 0.034316f, 0.034412f, + 0.034508f, 0.034604f, 0.034699f, 0.034795f, 0.034891f, 0.034987f, 0.035083f, 0.035178f, + 0.035274f, 0.035370f, 0.035466f, 0.035562f, 0.035657f, 0.035753f, 0.035849f, 0.035945f, + 0.036041f, 0.036137f, 0.036232f, 0.036328f, 0.036424f, 0.036520f, 0.036616f, 0.036711f, + 0.036807f, 0.036903f, 0.036999f, 0.037095f, 0.037190f, 0.037286f, 0.037382f, 0.037478f, + 0.037574f, 0.037669f, 0.037765f, 0.037861f, 0.037957f, 0.038053f, 0.038149f, 0.038244f, + 0.038340f, 0.038436f, 0.038532f, 0.038628f, 0.038723f, 0.038819f, 0.038915f, 0.039011f, + 0.039107f, 0.039202f, 0.039298f, 0.039394f, 0.039490f, 0.039586f, 0.039681f, 0.039777f, + 0.039873f, 0.039969f, 0.040065f, 0.040160f, 0.040256f, 0.040352f, 0.040448f, 0.040544f, + 0.040639f, 0.040735f, 0.040831f, 0.040927f, 0.041022f, 0.041118f, 0.041214f, 0.041310f, + 0.041406f, 0.041501f, 0.041597f, 0.041693f, 0.041789f, 0.041885f, 0.041980f, 0.042076f, + 0.042172f, 0.042268f, 0.042364f, 0.042459f, 0.042555f, 0.042651f, 0.042747f, 0.042842f, + 0.042938f, 0.043034f, 0.043130f, 0.043226f, 0.043321f, 0.043417f, 0.043513f, 0.043609f, + 0.043705f, 0.043800f, 0.043896f, 0.043992f, 0.044088f, 0.044183f, 0.044279f, 0.044375f, + 0.044471f, 0.044567f, 0.044662f, 0.044758f, 0.044854f, 0.044950f, 0.045045f, 0.045141f, + 0.045237f, 0.045333f, 0.045429f, 0.045524f, 0.045620f, 0.045716f, 0.045812f, 0.045907f, + 0.046003f, 0.046099f, 0.046195f, 0.046290f, 0.046386f, 0.046482f, 0.046578f, 0.046674f, + 0.046769f, 0.046865f, 0.046961f, 0.047057f, 0.047152f, 0.047248f, 0.047344f, 0.047440f, + 0.047535f, 0.047631f, 0.047727f, 0.047823f, 0.047919f, 0.048014f, 0.048110f, 0.048206f, + 0.048302f, 0.048397f, 0.048493f, 0.048589f, 0.048685f, 0.048780f, 0.048876f, 0.048972f, + 0.049068f, 0.049163f, 0.049259f, 0.049355f, 0.049451f, 0.049546f, 0.049642f, 0.049738f, + 0.049834f, 0.049929f, 0.050025f, 0.050121f, 0.050217f, 0.050312f, 0.050408f, 0.050504f, + 0.050600f, 0.050696f, 0.050791f, 0.050887f, 0.050983f, 0.051078f, 0.051174f, 0.051270f, + 0.051366f, 0.051461f, 0.051557f, 0.051653f, 0.051749f, 0.051844f, 0.051940f, 0.052036f, + 0.052132f, 0.052227f, 0.052323f, 0.052419f, 0.052515f, 0.052610f, 0.052706f, 0.052802f, + 0.052898f, 0.052993f, 0.053089f, 0.053185f, 0.053281f, 0.053376f, 0.053472f, 0.053568f, + 0.053664f, 0.053759f, 0.053855f, 0.053951f, 0.054046f, 0.054142f, 0.054238f, 0.054334f, + 0.054429f, 0.054525f, 0.054621f, 0.054717f, 0.054812f, 0.054908f, 0.055004f, 0.055100f, + 0.055195f, 0.055291f, 0.055387f, 0.055482f, 0.055578f, 0.055674f, 0.055770f, 0.055865f, + 0.055961f, 0.056057f, 0.056152f, 0.056248f, 0.056344f, 0.056440f, 0.056535f, 0.056631f, + 0.056727f, 0.056823f, 0.056918f, 0.057014f, 0.057110f, 0.057205f, 0.057301f, 0.057397f, + 0.057493f, 0.057588f, 0.057684f, 0.057780f, 0.057875f, 0.057971f, 0.058067f, 0.058163f, + 0.058258f, 0.058354f, 0.058450f, 0.058545f, 0.058641f, 0.058737f, 0.058833f, 0.058928f, + 0.059024f, 0.059120f, 0.059215f, 0.059311f, 0.059407f, 0.059502f, 0.059598f, 0.059694f, + 0.059790f, 0.059885f, 0.059981f, 0.060077f, 0.060172f, 0.060268f, 0.060364f, 0.060459f, + 0.060555f, 0.060651f, 0.060747f, 0.060842f, 0.060938f, 0.061034f, 0.061129f, 0.061225f, + 0.061321f, 0.061416f, 0.061512f, 0.061608f, 0.061704f, 0.061799f, 0.061895f, 0.061991f, + 0.062086f, 0.062182f, 0.062278f, 0.062373f, 0.062469f, 0.062565f, 0.062660f, 0.062756f, + 0.062852f, 0.062947f, 0.063043f, 0.063139f, 0.063234f, 0.063330f, 0.063426f, 0.063522f, + 0.063617f, 0.063713f, 0.063809f, 0.063904f, 0.064000f, 0.064096f, 0.064191f, 0.064287f, + 0.064383f, 0.064478f, 0.064574f, 0.064670f, 0.064765f, 0.064861f, 0.064957f, 0.065052f, + 0.065148f, 0.065244f, 0.065339f, 0.065435f, 0.065531f, 0.065626f, 0.065722f, 0.065818f, + 0.065913f, 0.066009f, 0.066105f, 0.066200f, 0.066296f, 0.066392f, 0.066487f, 0.066583f, + 0.066679f, 0.066774f, 0.066870f, 0.066966f, 0.067061f, 0.067157f, 0.067253f, 0.067348f, + 0.067444f, 0.067540f, 0.067635f, 0.067731f, 0.067827f, 0.067922f, 0.068018f, 0.068113f, + 0.068209f, 0.068305f, 0.068400f, 0.068496f, 0.068592f, 0.068687f, 0.068783f, 0.068879f, + 0.068974f, 0.069070f, 0.069166f, 0.069261f, 0.069357f, 0.069453f, 0.069548f, 0.069644f, + 0.069739f, 0.069835f, 0.069931f, 0.070026f, 0.070122f, 0.070218f, 0.070313f, 0.070409f, + 0.070505f, 0.070600f, 0.070696f, 0.070791f, 0.070887f, 0.070983f, 0.071078f, 0.071174f, + 0.071270f, 0.071365f, 0.071461f, 0.071557f, 0.071652f, 0.071748f, 0.071843f, 0.071939f, + 0.072035f, 0.072130f, 0.072226f, 0.072322f, 0.072417f, 0.072513f, 0.072608f, 0.072704f, + 0.072800f, 0.072895f, 0.072991f, 0.073086f, 0.073182f, 0.073278f, 0.073373f, 0.073469f, + 0.073565f, 0.073660f, 0.073756f, 0.073851f, 0.073947f, 0.074043f, 0.074138f, 0.074234f, + 0.074329f, 0.074425f, 0.074521f, 0.074616f, 0.074712f, 0.074807f, 0.074903f, 0.074999f, + 0.075094f, 0.075190f, 0.075286f, 0.075381f, 0.075477f, 0.075572f, 0.075668f, 0.075764f, + 0.075859f, 0.075955f, 0.076050f, 0.076146f, 0.076241f, 0.076337f, 0.076433f, 0.076528f, + 0.076624f, 0.076719f, 0.076815f, 0.076911f, 0.077006f, 0.077102f, 0.077197f, 0.077293f, + 0.077389f, 0.077484f, 0.077580f, 0.077675f, 0.077771f, 0.077866f, 0.077962f, 0.078058f, + 0.078153f, 0.078249f, 0.078344f, 0.078440f, 0.078536f, 0.078631f, 0.078727f, 0.078822f, + 0.078918f, 0.079013f, 0.079109f, 0.079205f, 0.079300f, 0.079396f, 0.079491f, 0.079587f, + 0.079682f, 0.079778f, 0.079874f, 0.079969f, 0.080065f, 0.080160f, 0.080256f, 0.080351f, + 0.080447f, 0.080543f, 0.080638f, 0.080734f, 0.080829f, 0.080925f, 0.081020f, 0.081116f, + 0.081211f, 0.081307f, 0.081403f, 0.081498f, 0.081594f, 0.081689f, 0.081785f, 0.081880f, + 0.081976f, 0.082071f, 0.082167f, 0.082263f, 0.082358f, 0.082454f, 0.082549f, 0.082645f, + 0.082740f, 0.082836f, 0.082931f, 0.083027f, 0.083122f, 0.083218f, 0.083314f, 0.083409f, + 0.083505f, 0.083600f, 0.083696f, 0.083791f, 0.083887f, 0.083982f, 0.084078f, 0.084173f, + 0.084269f, 0.084364f, 0.084460f, 0.084555f, 0.084651f, 0.084747f, 0.084842f, 0.084938f, + 0.085033f, 0.085129f, 0.085224f, 0.085320f, 0.085415f, 0.085511f, 0.085606f, 0.085702f, + 0.085797f, 0.085893f, 0.085988f, 0.086084f, 0.086179f, 0.086275f, 0.086370f, 0.086466f, + 0.086561f, 0.086657f, 0.086752f, 0.086848f, 0.086943f, 0.087039f, 0.087135f, 0.087230f, + 0.087326f, 0.087421f, 0.087517f, 0.087612f, 0.087708f, 0.087803f, 0.087899f, 0.087994f, + 0.088090f, 0.088185f, 0.088281f, 0.088376f, 0.088472f, 0.088567f, 0.088663f, 0.088758f, + 0.088854f, 0.088949f, 0.089045f, 0.089140f, 0.089236f, 0.089331f, 0.089427f, 0.089522f, + 0.089617f, 0.089713f, 0.089808f, 0.089904f, 0.089999f, 0.090095f, 0.090190f, 0.090286f, + 0.090381f, 0.090477f, 0.090572f, 0.090668f, 0.090763f, 0.090859f, 0.090954f, 0.091050f, + 0.091145f, 0.091241f, 0.091336f, 0.091432f, 0.091527f, 0.091623f, 0.091718f, 0.091813f, + 0.091909f, 0.092004f, 0.092100f, 0.092195f, 0.092291f, 0.092386f, 0.092482f, 0.092577f, + 0.092673f, 0.092768f, 0.092864f, 0.092959f, 0.093055f, 0.093150f, 0.093245f, 0.093341f, + 0.093436f, 0.093532f, 0.093627f, 0.093723f, 0.093818f, 0.093914f, 0.094009f, 0.094104f, + 0.094200f, 0.094295f, 0.094391f, 0.094486f, 0.094582f, 0.094677f, 0.094773f, 0.094868f, + 0.094963f, 0.095059f, 0.095154f, 0.095250f, 0.095345f, 0.095441f, 0.095536f, 0.095632f, + 0.095727f, 0.095822f, 0.095918f, 0.096013f, 0.096109f, 0.096204f, 0.096300f, 0.096395f, + 0.096490f, 0.096586f, 0.096681f, 0.096777f, 0.096872f, 0.096968f, 0.097063f, 0.097158f, + 0.097254f, 0.097349f, 0.097445f, 0.097540f, 0.097635f, 0.097731f, 0.097826f, 0.097922f, + 0.098017f, 0.098113f, 0.098208f, 0.098303f, 0.098399f, 0.098494f, 0.098590f, 0.098685f, + 0.098780f, 0.098876f, 0.098971f, 0.099067f, 0.099162f, 0.099257f, 0.099353f, 0.099448f, + 0.099544f, 0.099639f, 0.099734f, 0.099830f, 0.099925f, 0.100021f, 0.100116f, 0.100211f, + 0.100307f, 0.100402f, 0.100498f, 0.100593f, 0.100688f, 0.100784f, 0.100879f, 0.100974f, + 0.101070f, 0.101165f, 0.101261f, 0.101356f, 0.101451f, 0.101547f, 0.101642f, 0.101738f, + 0.101833f, 0.101928f, 0.102024f, 0.102119f, 0.102214f, 0.102310f, 0.102405f, 0.102500f, + 0.102596f, 0.102691f, 0.102787f, 0.102882f, 0.102977f, 0.103073f, 0.103168f, 0.103263f, + 0.103359f, 0.103454f, 0.103550f, 0.103645f, 0.103740f, 0.103836f, 0.103931f, 0.104026f, + 0.104122f, 0.104217f, 0.104312f, 0.104408f, 0.104503f, 0.104598f, 0.104694f, 0.104789f, + 0.104884f, 0.104980f, 0.105075f, 0.105170f, 0.105266f, 0.105361f, 0.105456f, 0.105552f, + 0.105647f, 0.105742f, 0.105838f, 0.105933f, 0.106028f, 0.106124f, 0.106219f, 0.106314f, + 0.106410f, 0.106505f, 0.106600f, 0.106696f, 0.106791f, 0.106886f, 0.106982f, 0.107077f, + 0.107172f, 0.107268f, 0.107363f, 0.107458f, 0.107554f, 0.107649f, 0.107744f, 0.107840f, + 0.107935f, 0.108030f, 0.108126f, 0.108221f, 0.108316f, 0.108412f, 0.108507f, 0.108602f, + 0.108697f, 0.108793f, 0.108888f, 0.108983f, 0.109079f, 0.109174f, 0.109269f, 0.109365f, + 0.109460f, 0.109555f, 0.109650f, 0.109746f, 0.109841f, 0.109936f, 0.110032f, 0.110127f, + 0.110222f, 0.110317f, 0.110413f, 0.110508f, 0.110603f, 0.110699f, 0.110794f, 0.110889f, + 0.110984f, 0.111080f, 0.111175f, 0.111270f, 0.111366f, 0.111461f, 0.111556f, 0.111651f, + 0.111747f, 0.111842f, 0.111937f, 0.112033f, 0.112128f, 0.112223f, 0.112318f, 0.112414f, + 0.112509f, 0.112604f, 0.112699f, 0.112795f, 0.112890f, 0.112985f, 0.113080f, 0.113176f, + 0.113271f, 0.113366f, 0.113461f, 0.113557f, 0.113652f, 0.113747f, 0.113842f, 0.113938f, + 0.114033f, 0.114128f, 0.114223f, 0.114319f, 0.114414f, 0.114509f, 0.114604f, 0.114700f, + 0.114795f, 0.114890f, 0.114985f, 0.115081f, 0.115176f, 0.115271f, 0.115366f, 0.115462f, + 0.115557f, 0.115652f, 0.115747f, 0.115842f, 0.115938f, 0.116033f, 0.116128f, 0.116223f, + 0.116319f, 0.116414f, 0.116509f, 0.116604f, 0.116700f, 0.116795f, 0.116890f, 0.116985f, + 0.117080f, 0.117176f, 0.117271f, 0.117366f, 0.117461f, 0.117556f, 0.117652f, 0.117747f, + 0.117842f, 0.117937f, 0.118032f, 0.118128f, 0.118223f, 0.118318f, 0.118413f, 0.118508f, + 0.118604f, 0.118699f, 0.118794f, 0.118889f, 0.118984f, 0.119080f, 0.119175f, 0.119270f, + 0.119365f, 0.119460f, 0.119556f, 0.119651f, 0.119746f, 0.119841f, 0.119936f, 0.120032f, + 0.120127f, 0.120222f, 0.120317f, 0.120412f, 0.120507f, 0.120603f, 0.120698f, 0.120793f, + 0.120888f, 0.120983f, 0.121078f, 0.121174f, 0.121269f, 0.121364f, 0.121459f, 0.121554f, + 0.121649f, 0.121745f, 0.121840f, 0.121935f, 0.122030f, 0.122125f, 0.122220f, 0.122316f, + 0.122411f, 0.122506f, 0.122601f, 0.122696f, 0.122791f, 0.122886f, 0.122982f, 0.123077f, + 0.123172f, 0.123267f, 0.123362f, 0.123457f, 0.123552f, 0.123648f, 0.123743f, 0.123838f, + 0.123933f, 0.124028f, 0.124123f, 0.124218f, 0.124314f, 0.124409f, 0.124504f, 0.124599f, + 0.124694f, 0.124789f, 0.124884f, 0.124979f, 0.125075f, 0.125170f, 0.125265f, 0.125360f, + 0.125455f, 0.125550f, 0.125645f, 0.125740f, 0.125835f, 0.125931f, 0.126026f, 0.126121f, + 0.126216f, 0.126311f, 0.126406f, 0.126501f, 0.126596f, 0.126691f, 0.126787f, 0.126882f, + 0.126977f, 0.127072f, 0.127167f, 0.127262f, 0.127357f, 0.127452f, 0.127547f, 0.127642f, + 0.127737f, 0.127833f, 0.127928f, 0.128023f, 0.128118f, 0.128213f, 0.128308f, 0.128403f, + 0.128498f, 0.128593f, 0.128688f, 0.128783f, 0.128878f, 0.128973f, 0.129069f, 0.129164f, + 0.129259f, 0.129354f, 0.129449f, 0.129544f, 0.129639f, 0.129734f, 0.129829f, 0.129924f, + 0.130019f, 0.130114f, 0.130209f, 0.130304f, 0.130399f, 0.130495f, 0.130590f, 0.130685f, + 0.130780f, 0.130875f, 0.130970f, 0.131065f, 0.131160f, 0.131255f, 0.131350f, 0.131445f, + 0.131540f, 0.131635f, 0.131730f, 0.131825f, 0.131920f, 0.132015f, 0.132110f, 0.132205f, + 0.132300f, 0.132395f, 0.132490f, 0.132585f, 0.132680f, 0.132775f, 0.132870f, 0.132966f, + 0.133061f, 0.133156f, 0.133251f, 0.133346f, 0.133441f, 0.133536f, 0.133631f, 0.133726f, + 0.133821f, 0.133916f, 0.134011f, 0.134106f, 0.134201f, 0.134296f, 0.134391f, 0.134486f, + 0.134581f, 0.134676f, 0.134771f, 0.134866f, 0.134961f, 0.135056f, 0.135151f, 0.135246f, + 0.135341f, 0.135436f, 0.135531f, 0.135626f, 0.135721f, 0.135816f, 0.135911f, 0.136006f, + 0.136101f, 0.136196f, 0.136291f, 0.136386f, 0.136480f, 0.136575f, 0.136670f, 0.136765f, + 0.136860f, 0.136955f, 0.137050f, 0.137145f, 0.137240f, 0.137335f, 0.137430f, 0.137525f, + 0.137620f, 0.137715f, 0.137810f, 0.137905f, 0.138000f, 0.138095f, 0.138190f, 0.138285f, + 0.138380f, 0.138475f, 0.138570f, 0.138665f, 0.138760f, 0.138855f, 0.138949f, 0.139044f, + 0.139139f, 0.139234f, 0.139329f, 0.139424f, 0.139519f, 0.139614f, 0.139709f, 0.139804f, + 0.139899f, 0.139994f, 0.140089f, 0.140184f, 0.140279f, 0.140373f, 0.140468f, 0.140563f, + 0.140658f, 0.140753f, 0.140848f, 0.140943f, 0.141038f, 0.141133f, 0.141228f, 0.141323f, + 0.141418f, 0.141512f, 0.141607f, 0.141702f, 0.141797f, 0.141892f, 0.141987f, 0.142082f, + 0.142177f, 0.142272f, 0.142367f, 0.142461f, 0.142556f, 0.142651f, 0.142746f, 0.142841f, + 0.142936f, 0.143031f, 0.143126f, 0.143221f, 0.143316f, 0.143410f, 0.143505f, 0.143600f, + 0.143695f, 0.143790f, 0.143885f, 0.143980f, 0.144075f, 0.144169f, 0.144264f, 0.144359f, + 0.144454f, 0.144549f, 0.144644f, 0.144739f, 0.144833f, 0.144928f, 0.145023f, 0.145118f, + 0.145213f, 0.145308f, 0.145403f, 0.145497f, 0.145592f, 0.145687f, 0.145782f, 0.145877f, + 0.145972f, 0.146067f, 0.146161f, 0.146256f, 0.146351f, 0.146446f, 0.146541f, 0.146636f, + 0.146730f, 0.146825f, 0.146920f, 0.147015f, 0.147110f, 0.147205f, 0.147299f, 0.147394f, + 0.147489f, 0.147584f, 0.147679f, 0.147774f, 0.147868f, 0.147963f, 0.148058f, 0.148153f, + 0.148248f, 0.148342f, 0.148437f, 0.148532f, 0.148627f, 0.148722f, 0.148817f, 0.148911f, + 0.149006f, 0.149101f, 0.149196f, 0.149291f, 0.149385f, 0.149480f, 0.149575f, 0.149670f, + 0.149765f, 0.149859f, 0.149954f, 0.150049f, 0.150144f, 0.150238f, 0.150333f, 0.150428f, + 0.150523f, 0.150618f, 0.150712f, 0.150807f, 0.150902f, 0.150997f, 0.151092f, 0.151186f, + 0.151281f, 0.151376f, 0.151471f, 0.151565f, 0.151660f, 0.151755f, 0.151850f, 0.151944f, + 0.152039f, 0.152134f, 0.152229f, 0.152323f, 0.152418f, 0.152513f, 0.152608f, 0.152702f, + 0.152797f, 0.152892f, 0.152987f, 0.153081f, 0.153176f, 0.153271f, 0.153366f, 0.153460f, + 0.153555f, 0.153650f, 0.153745f, 0.153839f, 0.153934f, 0.154029f, 0.154124f, 0.154218f, + 0.154313f, 0.154408f, 0.154502f, 0.154597f, 0.154692f, 0.154787f, 0.154881f, 0.154976f, + 0.155071f, 0.155165f, 0.155260f, 0.155355f, 0.155450f, 0.155544f, 0.155639f, 0.155734f, + 0.155828f, 0.155923f, 0.156018f, 0.156112f, 0.156207f, 0.156302f, 0.156397f, 0.156491f, + 0.156586f, 0.156681f, 0.156775f, 0.156870f, 0.156965f, 0.157059f, 0.157154f, 0.157249f, + 0.157343f, 0.157438f, 0.157533f, 0.157627f, 0.157722f, 0.157817f, 0.157912f, 0.158006f, + 0.158101f, 0.158196f, 0.158290f, 0.158385f, 0.158480f, 0.158574f, 0.158669f, 0.158763f, + 0.158858f, 0.158953f, 0.159047f, 0.159142f, 0.159237f, 0.159331f, 0.159426f, 0.159521f, + 0.159615f, 0.159710f, 0.159805f, 0.159899f, 0.159994f, 0.160089f, 0.160183f, 0.160278f, + 0.160372f, 0.160467f, 0.160562f, 0.160656f, 0.160751f, 0.160846f, 0.160940f, 0.161035f, + 0.161129f, 0.161224f, 0.161319f, 0.161413f, 0.161508f, 0.161603f, 0.161697f, 0.161792f, + 0.161886f, 0.161981f, 0.162076f, 0.162170f, 0.162265f, 0.162359f, 0.162454f, 0.162549f, + 0.162643f, 0.162738f, 0.162832f, 0.162927f, 0.163022f, 0.163116f, 0.163211f, 0.163305f, + 0.163400f, 0.163495f, 0.163589f, 0.163684f, 0.163778f, 0.163873f, 0.163967f, 0.164062f, + 0.164157f, 0.164251f, 0.164346f, 0.164440f, 0.164535f, 0.164629f, 0.164724f, 0.164819f, + 0.164913f, 0.165008f, 0.165102f, 0.165197f, 0.165291f, 0.165386f, 0.165480f, 0.165575f, + 0.165670f, 0.165764f, 0.165859f, 0.165953f, 0.166048f, 0.166142f, 0.166237f, 0.166331f, + 0.166426f, 0.166520f, 0.166615f, 0.166710f, 0.166804f, 0.166899f, 0.166993f, 0.167088f, + 0.167182f, 0.167277f, 0.167371f, 0.167466f, 0.167560f, 0.167655f, 0.167749f, 0.167844f, + 0.167938f, 0.168033f, 0.168127f, 0.168222f, 0.168316f, 0.168411f, 0.168505f, 0.168600f, + 0.168694f, 0.168789f, 0.168883f, 0.168978f, 0.169072f, 0.169167f, 0.169261f, 0.169356f, + 0.169450f, 0.169545f, 0.169639f, 0.169734f, 0.169828f, 0.169923f, 0.170017f, 0.170112f, + 0.170206f, 0.170301f, 0.170395f, 0.170490f, 0.170584f, 0.170678f, 0.170773f, 0.170867f, + 0.170962f, 0.171056f, 0.171151f, 0.171245f, 0.171340f, 0.171434f, 0.171529f, 0.171623f, + 0.171718f, 0.171812f, 0.171906f, 0.172001f, 0.172095f, 0.172190f, 0.172284f, 0.172379f, + 0.172473f, 0.172568f, 0.172662f, 0.172756f, 0.172851f, 0.172945f, 0.173040f, 0.173134f, + 0.173229f, 0.173323f, 0.173417f, 0.173512f, 0.173606f, 0.173701f, 0.173795f, 0.173889f, + 0.173984f, 0.174078f, 0.174173f, 0.174267f, 0.174362f, 0.174456f, 0.174550f, 0.174645f, + 0.174739f, 0.174834f, 0.174928f, 0.175022f, 0.175117f, 0.175211f, 0.175305f, 0.175400f, + 0.175494f, 0.175589f, 0.175683f, 0.175777f, 0.175872f, 0.175966f, 0.176061f, 0.176155f, + 0.176249f, 0.176344f, 0.176438f, 0.176532f, 0.176627f, 0.176721f, 0.176815f, 0.176910f, + 0.177004f, 0.177099f, 0.177193f, 0.177287f, 0.177382f, 0.177476f, 0.177570f, 0.177665f, + 0.177759f, 0.177853f, 0.177948f, 0.178042f, 0.178136f, 0.178231f, 0.178325f, 0.178419f, + 0.178514f, 0.178608f, 0.178702f, 0.178797f, 0.178891f, 0.178985f, 0.179080f, 0.179174f, + 0.179268f, 0.179363f, 0.179457f, 0.179551f, 0.179646f, 0.179740f, 0.179834f, 0.179929f, + 0.180023f, 0.180117f, 0.180212f, 0.180306f, 0.180400f, 0.180494f, 0.180589f, 0.180683f, + 0.180777f, 0.180872f, 0.180966f, 0.181060f, 0.181154f, 0.181249f, 0.181343f, 0.181437f, + 0.181532f, 0.181626f, 0.181720f, 0.181814f, 0.181909f, 0.182003f, 0.182097f, 0.182192f, + 0.182286f, 0.182380f, 0.182474f, 0.182569f, 0.182663f, 0.182757f, 0.182851f, 0.182946f, + 0.183040f, 0.183134f, 0.183228f, 0.183323f, 0.183417f, 0.183511f, 0.183605f, 0.183700f, + 0.183794f, 0.183888f, 0.183982f, 0.184077f, 0.184171f, 0.184265f, 0.184359f, 0.184454f, + 0.184548f, 0.184642f, 0.184736f, 0.184830f, 0.184925f, 0.185019f, 0.185113f, 0.185207f, + 0.185301f, 0.185396f, 0.185490f, 0.185584f, 0.185678f, 0.185773f, 0.185867f, 0.185961f, + 0.186055f, 0.186149f, 0.186244f, 0.186338f, 0.186432f, 0.186526f, 0.186620f, 0.186715f, + 0.186809f, 0.186903f, 0.186997f, 0.187091f, 0.187185f, 0.187280f, 0.187374f, 0.187468f, + 0.187562f, 0.187656f, 0.187750f, 0.187845f, 0.187939f, 0.188033f, 0.188127f, 0.188221f, + 0.188315f, 0.188410f, 0.188504f, 0.188598f, 0.188692f, 0.188786f, 0.188880f, 0.188975f, + 0.189069f, 0.189163f, 0.189257f, 0.189351f, 0.189445f, 0.189539f, 0.189634f, 0.189728f, + 0.189822f, 0.189916f, 0.190010f, 0.190104f, 0.190198f, 0.190292f, 0.190387f, 0.190481f, + 0.190575f, 0.190669f, 0.190763f, 0.190857f, 0.190951f, 0.191045f, 0.191139f, 0.191234f, + 0.191328f, 0.191422f, 0.191516f, 0.191610f, 0.191704f, 0.191798f, 0.191892f, 0.191986f, + 0.192080f, 0.192174f, 0.192269f, 0.192363f, 0.192457f, 0.192551f, 0.192645f, 0.192739f, + 0.192833f, 0.192927f, 0.193021f, 0.193115f, 0.193209f, 0.193303f, 0.193397f, 0.193492f, + 0.193586f, 0.193680f, 0.193774f, 0.193868f, 0.193962f, 0.194056f, 0.194150f, 0.194244f, + 0.194338f, 0.194432f, 0.194526f, 0.194620f, 0.194714f, 0.194808f, 0.194902f, 0.194996f, + 0.195090f, 0.195184f, 0.195278f, 0.195372f, 0.195466f, 0.195560f, 0.195654f, 0.195748f, + 0.195843f, 0.195937f, 0.196031f, 0.196125f, 0.196219f, 0.196313f, 0.196407f, 0.196501f, + 0.196595f, 0.196689f, 0.196783f, 0.196877f, 0.196971f, 0.197065f, 0.197159f, 0.197253f, + 0.197347f, 0.197441f, 0.197535f, 0.197629f, 0.197722f, 0.197816f, 0.197910f, 0.198004f, + 0.198098f, 0.198192f, 0.198286f, 0.198380f, 0.198474f, 0.198568f, 0.198662f, 0.198756f, + 0.198850f, 0.198944f, 0.199038f, 0.199132f, 0.199226f, 0.199320f, 0.199414f, 0.199508f, + 0.199602f, 0.199696f, 0.199790f, 0.199884f, 0.199978f, 0.200071f, 0.200165f, 0.200259f, + 0.200353f, 0.200447f, 0.200541f, 0.200635f, 0.200729f, 0.200823f, 0.200917f, 0.201011f, + 0.201105f, 0.201199f, 0.201292f, 0.201386f, 0.201480f, 0.201574f, 0.201668f, 0.201762f, + 0.201856f, 0.201950f, 0.202044f, 0.202138f, 0.202231f, 0.202325f, 0.202419f, 0.202513f, + 0.202607f, 0.202701f, 0.202795f, 0.202889f, 0.202983f, 0.203076f, 0.203170f, 0.203264f, + 0.203358f, 0.203452f, 0.203546f, 0.203640f, 0.203734f, 0.203827f, 0.203921f, 0.204015f, + 0.204109f, 0.204203f, 0.204297f, 0.204391f, 0.204484f, 0.204578f, 0.204672f, 0.204766f, + 0.204860f, 0.204954f, 0.205047f, 0.205141f, 0.205235f, 0.205329f, 0.205423f, 0.205517f, + 0.205610f, 0.205704f, 0.205798f, 0.205892f, 0.205986f, 0.206080f, 0.206173f, 0.206267f, + 0.206361f, 0.206455f, 0.206549f, 0.206642f, 0.206736f, 0.206830f, 0.206924f, 0.207018f, + 0.207111f, 0.207205f, 0.207299f, 0.207393f, 0.207487f, 0.207580f, 0.207674f, 0.207768f, + 0.207862f, 0.207955f, 0.208049f, 0.208143f, 0.208237f, 0.208331f, 0.208424f, 0.208518f, + 0.208612f, 0.208706f, 0.208799f, 0.208893f, 0.208987f, 0.209081f, 0.209174f, 0.209268f, + 0.209362f, 0.209456f, 0.209549f, 0.209643f, 0.209737f, 0.209831f, 0.209924f, 0.210018f, + 0.210112f, 0.210206f, 0.210299f, 0.210393f, 0.210487f, 0.210580f, 0.210674f, 0.210768f, + 0.210862f, 0.210955f, 0.211049f, 0.211143f, 0.211237f, 0.211330f, 0.211424f, 0.211518f, + 0.211611f, 0.211705f, 0.211799f, 0.211892f, 0.211986f, 0.212080f, 0.212174f, 0.212267f, + 0.212361f, 0.212455f, 0.212548f, 0.212642f, 0.212736f, 0.212829f, 0.212923f, 0.213017f, + 0.213110f, 0.213204f, 0.213298f, 0.213391f, 0.213485f, 0.213579f, 0.213672f, 0.213766f, + 0.213860f, 0.213953f, 0.214047f, 0.214141f, 0.214234f, 0.214328f, 0.214422f, 0.214515f, + 0.214609f, 0.214702f, 0.214796f, 0.214890f, 0.214983f, 0.215077f, 0.215171f, 0.215264f, + 0.215358f, 0.215451f, 0.215545f, 0.215639f, 0.215732f, 0.215826f, 0.215920f, 0.216013f, + 0.216107f, 0.216200f, 0.216294f, 0.216388f, 0.216481f, 0.216575f, 0.216668f, 0.216762f, + 0.216856f, 0.216949f, 0.217043f, 0.217136f, 0.217230f, 0.217324f, 0.217417f, 0.217511f, + 0.217604f, 0.217698f, 0.217791f, 0.217885f, 0.217979f, 0.218072f, 0.218166f, 0.218259f, + 0.218353f, 0.218446f, 0.218540f, 0.218633f, 0.218727f, 0.218821f, 0.218914f, 0.219008f, + 0.219101f, 0.219195f, 0.219288f, 0.219382f, 0.219475f, 0.219569f, 0.219662f, 0.219756f, + 0.219850f, 0.219943f, 0.220037f, 0.220130f, 0.220224f, 0.220317f, 0.220411f, 0.220504f, + 0.220598f, 0.220691f, 0.220785f, 0.220878f, 0.220972f, 0.221065f, 0.221159f, 0.221252f, + 0.221346f, 0.221439f, 0.221533f, 0.221626f, 0.221720f, 0.221813f, 0.221907f, 0.222000f, + 0.222094f, 0.222187f, 0.222281f, 0.222374f, 0.222468f, 0.222561f, 0.222654f, 0.222748f, + 0.222841f, 0.222935f, 0.223028f, 0.223122f, 0.223215f, 0.223309f, 0.223402f, 0.223496f, + 0.223589f, 0.223682f, 0.223776f, 0.223869f, 0.223963f, 0.224056f, 0.224150f, 0.224243f, + 0.224337f, 0.224430f, 0.224523f, 0.224617f, 0.224710f, 0.224804f, 0.224897f, 0.224991f, + 0.225084f, 0.225177f, 0.225271f, 0.225364f, 0.225458f, 0.225551f, 0.225644f, 0.225738f, + 0.225831f, 0.225925f, 0.226018f, 0.226111f, 0.226205f, 0.226298f, 0.226391f, 0.226485f, + 0.226578f, 0.226672f, 0.226765f, 0.226858f, 0.226952f, 0.227045f, 0.227139f, 0.227232f, + 0.227325f, 0.227419f, 0.227512f, 0.227605f, 0.227699f, 0.227792f, 0.227885f, 0.227979f, + 0.228072f, 0.228165f, 0.228259f, 0.228352f, 0.228445f, 0.228539f, 0.228632f, 0.228725f, + 0.228819f, 0.228912f, 0.229005f, 0.229099f, 0.229192f, 0.229285f, 0.229379f, 0.229472f, + 0.229565f, 0.229659f, 0.229752f, 0.229845f, 0.229939f, 0.230032f, 0.230125f, 0.230218f, + 0.230312f, 0.230405f, 0.230498f, 0.230592f, 0.230685f, 0.230778f, 0.230872f, 0.230965f, + 0.231058f, 0.231151f, 0.231245f, 0.231338f, 0.231431f, 0.231524f, 0.231618f, 0.231711f, + 0.231804f, 0.231898f, 0.231991f, 0.232084f, 0.232177f, 0.232271f, 0.232364f, 0.232457f, + 0.232550f, 0.232644f, 0.232737f, 0.232830f, 0.232923f, 0.233017f, 0.233110f, 0.233203f, + 0.233296f, 0.233389f, 0.233483f, 0.233576f, 0.233669f, 0.233762f, 0.233856f, 0.233949f, + 0.234042f, 0.234135f, 0.234228f, 0.234322f, 0.234415f, 0.234508f, 0.234601f, 0.234694f, + 0.234788f, 0.234881f, 0.234974f, 0.235067f, 0.235160f, 0.235254f, 0.235347f, 0.235440f, + 0.235533f, 0.235626f, 0.235719f, 0.235813f, 0.235906f, 0.235999f, 0.236092f, 0.236185f, + 0.236278f, 0.236372f, 0.236465f, 0.236558f, 0.236651f, 0.236744f, 0.236837f, 0.236930f, + 0.237024f, 0.237117f, 0.237210f, 0.237303f, 0.237396f, 0.237489f, 0.237582f, 0.237676f, + 0.237769f, 0.237862f, 0.237955f, 0.238048f, 0.238141f, 0.238234f, 0.238327f, 0.238420f, + 0.238514f, 0.238607f, 0.238700f, 0.238793f, 0.238886f, 0.238979f, 0.239072f, 0.239165f, + 0.239258f, 0.239351f, 0.239445f, 0.239538f, 0.239631f, 0.239724f, 0.239817f, 0.239910f, + 0.240003f, 0.240096f, 0.240189f, 0.240282f, 0.240375f, 0.240468f, 0.240561f, 0.240654f, + 0.240748f, 0.240841f, 0.240934f, 0.241027f, 0.241120f, 0.241213f, 0.241306f, 0.241399f, + 0.241492f, 0.241585f, 0.241678f, 0.241771f, 0.241864f, 0.241957f, 0.242050f, 0.242143f, + 0.242236f, 0.242329f, 0.242422f, 0.242515f, 0.242608f, 0.242701f, 0.242794f, 0.242887f, + 0.242980f, 0.243073f, 0.243166f, 0.243259f, 0.243352f, 0.243445f, 0.243538f, 0.243631f, + 0.243724f, 0.243817f, 0.243910f, 0.244003f, 0.244096f, 0.244189f, 0.244282f, 0.244375f, + 0.244468f, 0.244561f, 0.244654f, 0.244747f, 0.244840f, 0.244933f, 0.245026f, 0.245119f, + 0.245212f, 0.245304f, 0.245397f, 0.245490f, 0.245583f, 0.245676f, 0.245769f, 0.245862f, + 0.245955f, 0.246048f, 0.246141f, 0.246234f, 0.246327f, 0.246420f, 0.246513f, 0.246606f, + 0.246698f, 0.246791f, 0.246884f, 0.246977f, 0.247070f, 0.247163f, 0.247256f, 0.247349f, + 0.247442f, 0.247535f, 0.247627f, 0.247720f, 0.247813f, 0.247906f, 0.247999f, 0.248092f, + 0.248185f, 0.248278f, 0.248370f, 0.248463f, 0.248556f, 0.248649f, 0.248742f, 0.248835f, + 0.248928f, 0.249020f, 0.249113f, 0.249206f, 0.249299f, 0.249392f, 0.249485f, 0.249578f, + 0.249670f, 0.249763f, 0.249856f, 0.249949f, 0.250042f, 0.250135f, 0.250227f, 0.250320f, + 0.250413f, 0.250506f, 0.250599f, 0.250691f, 0.250784f, 0.250877f, 0.250970f, 0.251063f, + 0.251155f, 0.251248f, 0.251341f, 0.251434f, 0.251527f, 0.251619f, 0.251712f, 0.251805f, + 0.251898f, 0.251991f, 0.252083f, 0.252176f, 0.252269f, 0.252362f, 0.252454f, 0.252547f, + 0.252640f, 0.252733f, 0.252826f, 0.252918f, 0.253011f, 0.253104f, 0.253197f, 0.253289f, + 0.253382f, 0.253475f, 0.253568f, 0.253660f, 0.253753f, 0.253846f, 0.253938f, 0.254031f, + 0.254124f, 0.254217f, 0.254309f, 0.254402f, 0.254495f, 0.254588f, 0.254680f, 0.254773f, + 0.254866f, 0.254958f, 0.255051f, 0.255144f, 0.255236f, 0.255329f, 0.255422f, 0.255515f, + 0.255607f, 0.255700f, 0.255793f, 0.255885f, 0.255978f, 0.256071f, 0.256163f, 0.256256f, + 0.256349f, 0.256441f, 0.256534f, 0.256627f, 0.256719f, 0.256812f, 0.256905f, 0.256997f, + 0.257090f, 0.257183f, 0.257275f, 0.257368f, 0.257461f, 0.257553f, 0.257646f, 0.257738f, + 0.257831f, 0.257924f, 0.258016f, 0.258109f, 0.258202f, 0.258294f, 0.258387f, 0.258479f, + 0.258572f, 0.258665f, 0.258757f, 0.258850f, 0.258943f, 0.259035f, 0.259128f, 0.259220f, + 0.259313f, 0.259405f, 0.259498f, 0.259591f, 0.259683f, 0.259776f, 0.259868f, 0.259961f, + 0.260054f, 0.260146f, 0.260239f, 0.260331f, 0.260424f, 0.260516f, 0.260609f, 0.260702f, + 0.260794f, 0.260887f, 0.260979f, 0.261072f, 0.261164f, 0.261257f, 0.261349f, 0.261442f, + 0.261534f, 0.261627f, 0.261720f, 0.261812f, 0.261905f, 0.261997f, 0.262090f, 0.262182f, + 0.262275f, 0.262367f, 0.262460f, 0.262552f, 0.262645f, 0.262737f, 0.262830f, 0.262922f, + 0.263015f, 0.263107f, 0.263200f, 0.263292f, 0.263385f, 0.263477f, 0.263570f, 0.263662f, + 0.263755f, 0.263847f, 0.263940f, 0.264032f, 0.264125f, 0.264217f, 0.264309f, 0.264402f, + 0.264494f, 0.264587f, 0.264679f, 0.264772f, 0.264864f, 0.264957f, 0.265049f, 0.265142f, + 0.265234f, 0.265326f, 0.265419f, 0.265511f, 0.265604f, 0.265696f, 0.265789f, 0.265881f, + 0.265973f, 0.266066f, 0.266158f, 0.266251f, 0.266343f, 0.266436f, 0.266528f, 0.266620f, + 0.266713f, 0.266805f, 0.266898f, 0.266990f, 0.267082f, 0.267175f, 0.267267f, 0.267359f, + 0.267452f, 0.267544f, 0.267637f, 0.267729f, 0.267821f, 0.267914f, 0.268006f, 0.268099f, + 0.268191f, 0.268283f, 0.268376f, 0.268468f, 0.268560f, 0.268653f, 0.268745f, 0.268837f, + 0.268930f, 0.269022f, 0.269114f, 0.269207f, 0.269299f, 0.269391f, 0.269484f, 0.269576f, + 0.269668f, 0.269761f, 0.269853f, 0.269945f, 0.270038f, 0.270130f, 0.270222f, 0.270315f, + 0.270407f, 0.270499f, 0.270591f, 0.270684f, 0.270776f, 0.270868f, 0.270961f, 0.271053f, + 0.271145f, 0.271237f, 0.271330f, 0.271422f, 0.271514f, 0.271607f, 0.271699f, 0.271791f, + 0.271883f, 0.271976f, 0.272068f, 0.272160f, 0.272252f, 0.272345f, 0.272437f, 0.272529f, + 0.272621f, 0.272714f, 0.272806f, 0.272898f, 0.272990f, 0.273083f, 0.273175f, 0.273267f, + 0.273359f, 0.273451f, 0.273544f, 0.273636f, 0.273728f, 0.273820f, 0.273912f, 0.274005f, + 0.274097f, 0.274189f, 0.274281f, 0.274374f, 0.274466f, 0.274558f, 0.274650f, 0.274742f, + 0.274834f, 0.274927f, 0.275019f, 0.275111f, 0.275203f, 0.275295f, 0.275387f, 0.275480f, + 0.275572f, 0.275664f, 0.275756f, 0.275848f, 0.275940f, 0.276033f, 0.276125f, 0.276217f, + 0.276309f, 0.276401f, 0.276493f, 0.276585f, 0.276678f, 0.276770f, 0.276862f, 0.276954f, + 0.277046f, 0.277138f, 0.277230f, 0.277322f, 0.277415f, 0.277507f, 0.277599f, 0.277691f, + 0.277783f, 0.277875f, 0.277967f, 0.278059f, 0.278151f, 0.278243f, 0.278336f, 0.278428f, + 0.278520f, 0.278612f, 0.278704f, 0.278796f, 0.278888f, 0.278980f, 0.279072f, 0.279164f, + 0.279256f, 0.279348f, 0.279440f, 0.279532f, 0.279624f, 0.279717f, 0.279809f, 0.279901f, + 0.279993f, 0.280085f, 0.280177f, 0.280269f, 0.280361f, 0.280453f, 0.280545f, 0.280637f, + 0.280729f, 0.280821f, 0.280913f, 0.281005f, 0.281097f, 0.281189f, 0.281281f, 0.281373f, + 0.281465f, 0.281557f, 0.281649f, 0.281741f, 0.281833f, 0.281925f, 0.282017f, 0.282109f, + 0.282201f, 0.282293f, 0.282385f, 0.282477f, 0.282569f, 0.282661f, 0.282753f, 0.282845f, + 0.282937f, 0.283029f, 0.283120f, 0.283212f, 0.283304f, 0.283396f, 0.283488f, 0.283580f, + 0.283672f, 0.283764f, 0.283856f, 0.283948f, 0.284040f, 0.284132f, 0.284224f, 0.284316f, + 0.284408f, 0.284499f, 0.284591f, 0.284683f, 0.284775f, 0.284867f, 0.284959f, 0.285051f, + 0.285143f, 0.285235f, 0.285327f, 0.285418f, 0.285510f, 0.285602f, 0.285694f, 0.285786f, + 0.285878f, 0.285970f, 0.286062f, 0.286153f, 0.286245f, 0.286337f, 0.286429f, 0.286521f, + 0.286613f, 0.286705f, 0.286796f, 0.286888f, 0.286980f, 0.287072f, 0.287164f, 0.287256f, + 0.287347f, 0.287439f, 0.287531f, 0.287623f, 0.287715f, 0.287807f, 0.287898f, 0.287990f, + 0.288082f, 0.288174f, 0.288266f, 0.288357f, 0.288449f, 0.288541f, 0.288633f, 0.288725f, + 0.288816f, 0.288908f, 0.289000f, 0.289092f, 0.289184f, 0.289275f, 0.289367f, 0.289459f, + 0.289551f, 0.289642f, 0.289734f, 0.289826f, 0.289918f, 0.290009f, 0.290101f, 0.290193f, + 0.290285f, 0.290376f, 0.290468f, 0.290560f, 0.290652f, 0.290743f, 0.290835f, 0.290927f, + 0.291019f, 0.291110f, 0.291202f, 0.291294f, 0.291385f, 0.291477f, 0.291569f, 0.291661f, + 0.291752f, 0.291844f, 0.291936f, 0.292027f, 0.292119f, 0.292211f, 0.292302f, 0.292394f, + 0.292486f, 0.292577f, 0.292669f, 0.292761f, 0.292852f, 0.292944f, 0.293036f, 0.293128f, + 0.293219f, 0.293311f, 0.293402f, 0.293494f, 0.293586f, 0.293677f, 0.293769f, 0.293861f, + 0.293952f, 0.294044f, 0.294136f, 0.294227f, 0.294319f, 0.294410f, 0.294502f, 0.294594f, + 0.294685f, 0.294777f, 0.294869f, 0.294960f, 0.295052f, 0.295143f, 0.295235f, 0.295327f, + 0.295418f, 0.295510f, 0.295601f, 0.295693f, 0.295785f, 0.295876f, 0.295968f, 0.296059f, + 0.296151f, 0.296242f, 0.296334f, 0.296426f, 0.296517f, 0.296609f, 0.296700f, 0.296792f, + 0.296883f, 0.296975f, 0.297066f, 0.297158f, 0.297250f, 0.297341f, 0.297433f, 0.297524f, + 0.297616f, 0.297707f, 0.297799f, 0.297890f, 0.297982f, 0.298073f, 0.298165f, 0.298256f, + 0.298348f, 0.298439f, 0.298531f, 0.298622f, 0.298714f, 0.298805f, 0.298897f, 0.298988f, + 0.299080f, 0.299171f, 0.299263f, 0.299354f, 0.299446f, 0.299537f, 0.299629f, 0.299720f, + 0.299812f, 0.299903f, 0.299995f, 0.300086f, 0.300177f, 0.300269f, 0.300360f, 0.300452f, + 0.300543f, 0.300635f, 0.300726f, 0.300818f, 0.300909f, 0.301000f, 0.301092f, 0.301183f, + 0.301275f, 0.301366f, 0.301458f, 0.301549f, 0.301640f, 0.301732f, 0.301823f, 0.301915f, + 0.302006f, 0.302097f, 0.302189f, 0.302280f, 0.302372f, 0.302463f, 0.302554f, 0.302646f, + 0.302737f, 0.302828f, 0.302920f, 0.303011f, 0.303103f, 0.303194f, 0.303285f, 0.303377f, + 0.303468f, 0.303559f, 0.303651f, 0.303742f, 0.303833f, 0.303925f, 0.304016f, 0.304107f, + 0.304199f, 0.304290f, 0.304381f, 0.304473f, 0.304564f, 0.304655f, 0.304747f, 0.304838f, + 0.304929f, 0.305021f, 0.305112f, 0.305203f, 0.305294f, 0.305386f, 0.305477f, 0.305568f, + 0.305660f, 0.305751f, 0.305842f, 0.305933f, 0.306025f, 0.306116f, 0.306207f, 0.306299f, + 0.306390f, 0.306481f, 0.306572f, 0.306664f, 0.306755f, 0.306846f, 0.306937f, 0.307029f, + 0.307120f, 0.307211f, 0.307302f, 0.307394f, 0.307485f, 0.307576f, 0.307667f, 0.307758f, + 0.307850f, 0.307941f, 0.308032f, 0.308123f, 0.308214f, 0.308306f, 0.308397f, 0.308488f, + 0.308579f, 0.308670f, 0.308762f, 0.308853f, 0.308944f, 0.309035f, 0.309126f, 0.309218f, + 0.309309f, 0.309400f, 0.309491f, 0.309582f, 0.309673f, 0.309765f, 0.309856f, 0.309947f, + 0.310038f, 0.310129f, 0.310220f, 0.310311f, 0.310403f, 0.310494f, 0.310585f, 0.310676f, + 0.310767f, 0.310858f, 0.310949f, 0.311041f, 0.311132f, 0.311223f, 0.311314f, 0.311405f, + 0.311496f, 0.311587f, 0.311678f, 0.311769f, 0.311860f, 0.311952f, 0.312043f, 0.312134f, + 0.312225f, 0.312316f, 0.312407f, 0.312498f, 0.312589f, 0.312680f, 0.312771f, 0.312862f, + 0.312953f, 0.313044f, 0.313135f, 0.313227f, 0.313318f, 0.313409f, 0.313500f, 0.313591f, + 0.313682f, 0.313773f, 0.313864f, 0.313955f, 0.314046f, 0.314137f, 0.314228f, 0.314319f, + 0.314410f, 0.314501f, 0.314592f, 0.314683f, 0.314774f, 0.314865f, 0.314956f, 0.315047f, + 0.315138f, 0.315229f, 0.315320f, 0.315411f, 0.315502f, 0.315593f, 0.315684f, 0.315775f, + 0.315866f, 0.315957f, 0.316048f, 0.316139f, 0.316230f, 0.316321f, 0.316411f, 0.316502f, + 0.316593f, 0.316684f, 0.316775f, 0.316866f, 0.316957f, 0.317048f, 0.317139f, 0.317230f, + 0.317321f, 0.317412f, 0.317503f, 0.317594f, 0.317684f, 0.317775f, 0.317866f, 0.317957f, + 0.318048f, 0.318139f, 0.318230f, 0.318321f, 0.318412f, 0.318503f, 0.318593f, 0.318684f, + 0.318775f, 0.318866f, 0.318957f, 0.319048f, 0.319139f, 0.319229f, 0.319320f, 0.319411f, + 0.319502f, 0.319593f, 0.319684f, 0.319775f, 0.319865f, 0.319956f, 0.320047f, 0.320138f, + 0.320229f, 0.320320f, 0.320410f, 0.320501f, 0.320592f, 0.320683f, 0.320774f, 0.320864f, + 0.320955f, 0.321046f, 0.321137f, 0.321228f, 0.321318f, 0.321409f, 0.321500f, 0.321591f, + 0.321682f, 0.321772f, 0.321863f, 0.321954f, 0.322045f, 0.322135f, 0.322226f, 0.322317f, + 0.322408f, 0.322498f, 0.322589f, 0.322680f, 0.322771f, 0.322861f, 0.322952f, 0.323043f, + 0.323134f, 0.323224f, 0.323315f, 0.323406f, 0.323497f, 0.323587f, 0.323678f, 0.323769f, + 0.323859f, 0.323950f, 0.324041f, 0.324131f, 0.324222f, 0.324313f, 0.324404f, 0.324494f, + 0.324585f, 0.324676f, 0.324766f, 0.324857f, 0.324948f, 0.325038f, 0.325129f, 0.325220f, + 0.325310f, 0.325401f, 0.325492f, 0.325582f, 0.325673f, 0.325764f, 0.325854f, 0.325945f, + 0.326035f, 0.326126f, 0.326217f, 0.326307f, 0.326398f, 0.326489f, 0.326579f, 0.326670f, + 0.326760f, 0.326851f, 0.326942f, 0.327032f, 0.327123f, 0.327213f, 0.327304f, 0.327395f, + 0.327485f, 0.327576f, 0.327666f, 0.327757f, 0.327848f, 0.327938f, 0.328029f, 0.328119f, + 0.328210f, 0.328300f, 0.328391f, 0.328482f, 0.328572f, 0.328663f, 0.328753f, 0.328844f, + 0.328934f, 0.329025f, 0.329115f, 0.329206f, 0.329296f, 0.329387f, 0.329477f, 0.329568f, + 0.329658f, 0.329749f, 0.329839f, 0.329930f, 0.330020f, 0.330111f, 0.330202f, 0.330292f, + 0.330382f, 0.330473f, 0.330563f, 0.330654f, 0.330744f, 0.330835f, 0.330925f, 0.331016f, + 0.331106f, 0.331197f, 0.331287f, 0.331378f, 0.331468f, 0.331559f, 0.331649f, 0.331739f, + 0.331830f, 0.331920f, 0.332011f, 0.332101f, 0.332192f, 0.332282f, 0.332373f, 0.332463f, + 0.332553f, 0.332644f, 0.332734f, 0.332825f, 0.332915f, 0.333005f, 0.333096f, 0.333186f, + 0.333277f, 0.333367f, 0.333457f, 0.333548f, 0.333638f, 0.333729f, 0.333819f, 0.333909f, + 0.334000f, 0.334090f, 0.334180f, 0.334271f, 0.334361f, 0.334451f, 0.334542f, 0.334632f, + 0.334722f, 0.334813f, 0.334903f, 0.334994f, 0.335084f, 0.335174f, 0.335265f, 0.335355f, + 0.335445f, 0.335535f, 0.335626f, 0.335716f, 0.335806f, 0.335897f, 0.335987f, 0.336077f, + 0.336168f, 0.336258f, 0.336348f, 0.336438f, 0.336529f, 0.336619f, 0.336709f, 0.336800f, + 0.336890f, 0.336980f, 0.337070f, 0.337161f, 0.337251f, 0.337341f, 0.337431f, 0.337522f, + 0.337612f, 0.337702f, 0.337792f, 0.337883f, 0.337973f, 0.338063f, 0.338153f, 0.338244f, + 0.338334f, 0.338424f, 0.338514f, 0.338604f, 0.338695f, 0.338785f, 0.338875f, 0.338965f, + 0.339055f, 0.339146f, 0.339236f, 0.339326f, 0.339416f, 0.339506f, 0.339597f, 0.339687f, + 0.339777f, 0.339867f, 0.339957f, 0.340047f, 0.340138f, 0.340228f, 0.340318f, 0.340408f, + 0.340498f, 0.340588f, 0.340678f, 0.340769f, 0.340859f, 0.340949f, 0.341039f, 0.341129f, + 0.341219f, 0.341309f, 0.341399f, 0.341490f, 0.341580f, 0.341670f, 0.341760f, 0.341850f, + 0.341940f, 0.342030f, 0.342120f, 0.342210f, 0.342300f, 0.342391f, 0.342481f, 0.342571f, + 0.342661f, 0.342751f, 0.342841f, 0.342931f, 0.343021f, 0.343111f, 0.343201f, 0.343291f, + 0.343381f, 0.343471f, 0.343561f, 0.343651f, 0.343741f, 0.343831f, 0.343921f, 0.344011f, + 0.344101f, 0.344191f, 0.344281f, 0.344371f, 0.344461f, 0.344551f, 0.344641f, 0.344731f, + 0.344821f, 0.344911f, 0.345001f, 0.345091f, 0.345181f, 0.345271f, 0.345361f, 0.345451f, + 0.345541f, 0.345631f, 0.345721f, 0.345811f, 0.345901f, 0.345991f, 0.346081f, 0.346171f, + 0.346261f, 0.346351f, 0.346441f, 0.346531f, 0.346621f, 0.346711f, 0.346801f, 0.346890f, + 0.346980f, 0.347070f, 0.347160f, 0.347250f, 0.347340f, 0.347430f, 0.347520f, 0.347610f, + 0.347700f, 0.347790f, 0.347879f, 0.347969f, 0.348059f, 0.348149f, 0.348239f, 0.348329f, + 0.348419f, 0.348509f, 0.348598f, 0.348688f, 0.348778f, 0.348868f, 0.348958f, 0.349048f, + 0.349138f, 0.349227f, 0.349317f, 0.349407f, 0.349497f, 0.349587f, 0.349676f, 0.349766f, + 0.349856f, 0.349946f, 0.350036f, 0.350126f, 0.350215f, 0.350305f, 0.350395f, 0.350485f, + 0.350575f, 0.350664f, 0.350754f, 0.350844f, 0.350934f, 0.351023f, 0.351113f, 0.351203f, + 0.351293f, 0.351383f, 0.351472f, 0.351562f, 0.351652f, 0.351742f, 0.351831f, 0.351921f, + 0.352011f, 0.352100f, 0.352190f, 0.352280f, 0.352370f, 0.352459f, 0.352549f, 0.352639f, + 0.352729f, 0.352818f, 0.352908f, 0.352998f, 0.353087f, 0.353177f, 0.353267f, 0.353356f, + 0.353446f, 0.353536f, 0.353626f, 0.353715f, 0.353805f, 0.353895f, 0.353984f, 0.354074f, + 0.354164f, 0.354253f, 0.354343f, 0.354432f, 0.354522f, 0.354612f, 0.354701f, 0.354791f, + 0.354881f, 0.354970f, 0.355060f, 0.355150f, 0.355239f, 0.355329f, 0.355418f, 0.355508f, + 0.355598f, 0.355687f, 0.355777f, 0.355866f, 0.355956f, 0.356046f, 0.356135f, 0.356225f, + 0.356314f, 0.356404f, 0.356494f, 0.356583f, 0.356673f, 0.356762f, 0.356852f, 0.356941f, + 0.357031f, 0.357121f, 0.357210f, 0.357300f, 0.357389f, 0.357479f, 0.357568f, 0.357658f, + 0.357747f, 0.357837f, 0.357926f, 0.358016f, 0.358105f, 0.358195f, 0.358284f, 0.358374f, + 0.358463f, 0.358553f, 0.358642f, 0.358732f, 0.358821f, 0.358911f, 0.359000f, 0.359090f, + 0.359179f, 0.359269f, 0.359358f, 0.359448f, 0.359537f, 0.359627f, 0.359716f, 0.359806f, + 0.359895f, 0.359984f, 0.360074f, 0.360163f, 0.360253f, 0.360342f, 0.360432f, 0.360521f, + 0.360611f, 0.360700f, 0.360789f, 0.360879f, 0.360968f, 0.361058f, 0.361147f, 0.361236f, + 0.361326f, 0.361415f, 0.361505f, 0.361594f, 0.361683f, 0.361773f, 0.361862f, 0.361952f, + 0.362041f, 0.362130f, 0.362220f, 0.362309f, 0.362398f, 0.362488f, 0.362577f, 0.362666f, + 0.362756f, 0.362845f, 0.362934f, 0.363024f, 0.363113f, 0.363202f, 0.363292f, 0.363381f, + 0.363470f, 0.363560f, 0.363649f, 0.363738f, 0.363828f, 0.363917f, 0.364006f, 0.364096f, + 0.364185f, 0.364274f, 0.364363f, 0.364453f, 0.364542f, 0.364631f, 0.364720f, 0.364810f, + 0.364899f, 0.364988f, 0.365078f, 0.365167f, 0.365256f, 0.365345f, 0.365435f, 0.365524f, + 0.365613f, 0.365702f, 0.365791f, 0.365881f, 0.365970f, 0.366059f, 0.366148f, 0.366238f, + 0.366327f, 0.366416f, 0.366505f, 0.366594f, 0.366684f, 0.366773f, 0.366862f, 0.366951f, + 0.367040f, 0.367130f, 0.367219f, 0.367308f, 0.367397f, 0.367486f, 0.367575f, 0.367665f, + 0.367754f, 0.367843f, 0.367932f, 0.368021f, 0.368110f, 0.368199f, 0.368289f, 0.368378f, + 0.368467f, 0.368556f, 0.368645f, 0.368734f, 0.368823f, 0.368912f, 0.369002f, 0.369091f, + 0.369180f, 0.369269f, 0.369358f, 0.369447f, 0.369536f, 0.369625f, 0.369714f, 0.369803f, + 0.369892f, 0.369982f, 0.370071f, 0.370160f, 0.370249f, 0.370338f, 0.370427f, 0.370516f, + 0.370605f, 0.370694f, 0.370783f, 0.370872f, 0.370961f, 0.371050f, 0.371139f, 0.371228f, + 0.371317f, 0.371406f, 0.371495f, 0.371584f, 0.371673f, 0.371762f, 0.371851f, 0.371940f, + 0.372029f, 0.372118f, 0.372207f, 0.372296f, 0.372385f, 0.372474f, 0.372563f, 0.372652f, + 0.372741f, 0.372830f, 0.372919f, 0.373008f, 0.373097f, 0.373186f, 0.373275f, 0.373364f, + 0.373453f, 0.373542f, 0.373631f, 0.373719f, 0.373808f, 0.373897f, 0.373986f, 0.374075f, + 0.374164f, 0.374253f, 0.374342f, 0.374431f, 0.374520f, 0.374609f, 0.374697f, 0.374786f, + 0.374875f, 0.374964f, 0.375053f, 0.375142f, 0.375231f, 0.375320f, 0.375408f, 0.375497f, + 0.375586f, 0.375675f, 0.375764f, 0.375853f, 0.375942f, 0.376030f, 0.376119f, 0.376208f, + 0.376297f, 0.376386f, 0.376475f, 0.376563f, 0.376652f, 0.376741f, 0.376830f, 0.376919f, + 0.377007f, 0.377096f, 0.377185f, 0.377274f, 0.377363f, 0.377451f, 0.377540f, 0.377629f, + 0.377718f, 0.377806f, 0.377895f, 0.377984f, 0.378073f, 0.378162f, 0.378250f, 0.378339f, + 0.378428f, 0.378516f, 0.378605f, 0.378694f, 0.378783f, 0.378871f, 0.378960f, 0.379049f, + 0.379138f, 0.379226f, 0.379315f, 0.379404f, 0.379492f, 0.379581f, 0.379670f, 0.379759f, + 0.379847f, 0.379936f, 0.380025f, 0.380113f, 0.380202f, 0.380291f, 0.380379f, 0.380468f, + 0.380557f, 0.380645f, 0.380734f, 0.380823f, 0.380911f, 0.381000f, 0.381088f, 0.381177f, + 0.381266f, 0.381354f, 0.381443f, 0.381532f, 0.381620f, 0.381709f, 0.381797f, 0.381886f, + 0.381975f, 0.382063f, 0.382152f, 0.382241f, 0.382329f, 0.382418f, 0.382506f, 0.382595f, + 0.382683f, 0.382772f, 0.382861f, 0.382949f, 0.383038f, 0.383126f, 0.383215f, 0.383303f, + 0.383392f, 0.383480f, 0.383569f, 0.383658f, 0.383746f, 0.383835f, 0.383923f, 0.384012f, + 0.384100f, 0.384189f, 0.384277f, 0.384366f, 0.384454f, 0.384543f, 0.384631f, 0.384720f, + 0.384808f, 0.384897f, 0.384985f, 0.385074f, 0.385162f, 0.385251f, 0.385339f, 0.385428f, + 0.385516f, 0.385605f, 0.385693f, 0.385781f, 0.385870f, 0.385958f, 0.386047f, 0.386135f, + 0.386224f, 0.386312f, 0.386400f, 0.386489f, 0.386577f, 0.386666f, 0.386754f, 0.386843f, + 0.386931f, 0.387019f, 0.387108f, 0.387196f, 0.387285f, 0.387373f, 0.387461f, 0.387550f, + 0.387638f, 0.387727f, 0.387815f, 0.387903f, 0.387992f, 0.388080f, 0.388168f, 0.388257f, + 0.388345f, 0.388433f, 0.388522f, 0.388610f, 0.388698f, 0.388787f, 0.388875f, 0.388963f, + 0.389052f, 0.389140f, 0.389228f, 0.389317f, 0.389405f, 0.389493f, 0.389582f, 0.389670f, + 0.389758f, 0.389846f, 0.389935f, 0.390023f, 0.390111f, 0.390200f, 0.390288f, 0.390376f, + 0.390464f, 0.390553f, 0.390641f, 0.390729f, 0.390817f, 0.390906f, 0.390994f, 0.391082f, + 0.391170f, 0.391259f, 0.391347f, 0.391435f, 0.391523f, 0.391612f, 0.391700f, 0.391788f, + 0.391876f, 0.391964f, 0.392053f, 0.392141f, 0.392229f, 0.392317f, 0.392405f, 0.392493f, + 0.392582f, 0.392670f, 0.392758f, 0.392846f, 0.392934f, 0.393023f, 0.393111f, 0.393199f, + 0.393287f, 0.393375f, 0.393463f, 0.393551f, 0.393640f, 0.393728f, 0.393816f, 0.393904f, + 0.393992f, 0.394080f, 0.394168f, 0.394256f, 0.394344f, 0.394433f, 0.394521f, 0.394609f, + 0.394697f, 0.394785f, 0.394873f, 0.394961f, 0.395049f, 0.395137f, 0.395225f, 0.395313f, + 0.395401f, 0.395490f, 0.395578f, 0.395666f, 0.395754f, 0.395842f, 0.395930f, 0.396018f, + 0.396106f, 0.396194f, 0.396282f, 0.396370f, 0.396458f, 0.396546f, 0.396634f, 0.396722f, + 0.396810f, 0.396898f, 0.396986f, 0.397074f, 0.397162f, 0.397250f, 0.397338f, 0.397426f, + 0.397514f, 0.397602f, 0.397690f, 0.397778f, 0.397866f, 0.397954f, 0.398042f, 0.398130f, + 0.398218f, 0.398306f, 0.398393f, 0.398481f, 0.398569f, 0.398657f, 0.398745f, 0.398833f, + 0.398921f, 0.399009f, 0.399097f, 0.399185f, 0.399273f, 0.399361f, 0.399448f, 0.399536f, + 0.399624f, 0.399712f, 0.399800f, 0.399888f, 0.399976f, 0.400064f, 0.400151f, 0.400239f, + 0.400327f, 0.400415f, 0.400503f, 0.400591f, 0.400679f, 0.400766f, 0.400854f, 0.400942f, + 0.401030f, 0.401118f, 0.401206f, 0.401293f, 0.401381f, 0.401469f, 0.401557f, 0.401645f, + 0.401732f, 0.401820f, 0.401908f, 0.401996f, 0.402084f, 0.402171f, 0.402259f, 0.402347f, + 0.402435f, 0.402522f, 0.402610f, 0.402698f, 0.402786f, 0.402873f, 0.402961f, 0.403049f, + 0.403137f, 0.403224f, 0.403312f, 0.403400f, 0.403488f, 0.403575f, 0.403663f, 0.403751f, + 0.403838f, 0.403926f, 0.404014f, 0.404102f, 0.404189f, 0.404277f, 0.404365f, 0.404452f, + 0.404540f, 0.404628f, 0.404715f, 0.404803f, 0.404891f, 0.404978f, 0.405066f, 0.405154f, + 0.405241f, 0.405329f, 0.405417f, 0.405504f, 0.405592f, 0.405680f, 0.405767f, 0.405855f, + 0.405942f, 0.406030f, 0.406118f, 0.406205f, 0.406293f, 0.406380f, 0.406468f, 0.406556f, + 0.406643f, 0.406731f, 0.406818f, 0.406906f, 0.406994f, 0.407081f, 0.407169f, 0.407256f, + 0.407344f, 0.407431f, 0.407519f, 0.407606f, 0.407694f, 0.407782f, 0.407869f, 0.407957f, + 0.408044f, 0.408132f, 0.408219f, 0.408307f, 0.408394f, 0.408482f, 0.408569f, 0.408657f, + 0.408744f, 0.408832f, 0.408919f, 0.409007f, 0.409094f, 0.409182f, 0.409269f, 0.409357f, + 0.409444f, 0.409532f, 0.409619f, 0.409707f, 0.409794f, 0.409881f, 0.409969f, 0.410056f, + 0.410144f, 0.410231f, 0.410319f, 0.410406f, 0.410493f, 0.410581f, 0.410668f, 0.410756f, + 0.410843f, 0.410931f, 0.411018f, 0.411105f, 0.411193f, 0.411280f, 0.411368f, 0.411455f, + 0.411542f, 0.411630f, 0.411717f, 0.411804f, 0.411892f, 0.411979f, 0.412067f, 0.412154f, + 0.412241f, 0.412329f, 0.412416f, 0.412503f, 0.412591f, 0.412678f, 0.412765f, 0.412853f, + 0.412940f, 0.413027f, 0.413115f, 0.413202f, 0.413289f, 0.413376f, 0.413464f, 0.413551f, + 0.413638f, 0.413726f, 0.413813f, 0.413900f, 0.413987f, 0.414075f, 0.414162f, 0.414249f, + 0.414337f, 0.414424f, 0.414511f, 0.414598f, 0.414685f, 0.414773f, 0.414860f, 0.414947f, + 0.415034f, 0.415122f, 0.415209f, 0.415296f, 0.415383f, 0.415471f, 0.415558f, 0.415645f, + 0.415732f, 0.415819f, 0.415906f, 0.415994f, 0.416081f, 0.416168f, 0.416255f, 0.416342f, + 0.416430f, 0.416517f, 0.416604f, 0.416691f, 0.416778f, 0.416865f, 0.416952f, 0.417040f, + 0.417127f, 0.417214f, 0.417301f, 0.417388f, 0.417475f, 0.417562f, 0.417650f, 0.417737f, + 0.417824f, 0.417911f, 0.417998f, 0.418085f, 0.418172f, 0.418259f, 0.418346f, 0.418433f, + 0.418520f, 0.418608f, 0.418695f, 0.418782f, 0.418869f, 0.418956f, 0.419043f, 0.419130f, + 0.419217f, 0.419304f, 0.419391f, 0.419478f, 0.419565f, 0.419652f, 0.419739f, 0.419826f, + 0.419913f, 0.420000f, 0.420087f, 0.420174f, 0.420261f, 0.420348f, 0.420435f, 0.420522f, + 0.420609f, 0.420696f, 0.420783f, 0.420870f, 0.420957f, 0.421044f, 0.421131f, 0.421218f, + 0.421305f, 0.421392f, 0.421479f, 0.421566f, 0.421653f, 0.421739f, 0.421826f, 0.421913f, + 0.422000f, 0.422087f, 0.422174f, 0.422261f, 0.422348f, 0.422435f, 0.422522f, 0.422609f, + 0.422695f, 0.422782f, 0.422869f, 0.422956f, 0.423043f, 0.423130f, 0.423217f, 0.423304f, + 0.423390f, 0.423477f, 0.423564f, 0.423651f, 0.423738f, 0.423825f, 0.423912f, 0.423998f, + 0.424085f, 0.424172f, 0.424259f, 0.424346f, 0.424432f, 0.424519f, 0.424606f, 0.424693f, + 0.424780f, 0.424866f, 0.424953f, 0.425040f, 0.425127f, 0.425214f, 0.425300f, 0.425387f, + 0.425474f, 0.425561f, 0.425647f, 0.425734f, 0.425821f, 0.425908f, 0.425994f, 0.426081f, + 0.426168f, 0.426255f, 0.426341f, 0.426428f, 0.426515f, 0.426601f, 0.426688f, 0.426775f, + 0.426862f, 0.426948f, 0.427035f, 0.427122f, 0.427208f, 0.427295f, 0.427382f, 0.427468f, + 0.427555f, 0.427642f, 0.427728f, 0.427815f, 0.427902f, 0.427988f, 0.428075f, 0.428162f, + 0.428248f, 0.428335f, 0.428422f, 0.428508f, 0.428595f, 0.428681f, 0.428768f, 0.428855f, + 0.428941f, 0.429028f, 0.429114f, 0.429201f, 0.429288f, 0.429374f, 0.429461f, 0.429547f, + 0.429634f, 0.429721f, 0.429807f, 0.429894f, 0.429980f, 0.430067f, 0.430153f, 0.430240f, + 0.430326f, 0.430413f, 0.430500f, 0.430586f, 0.430673f, 0.430759f, 0.430846f, 0.430932f, + 0.431019f, 0.431105f, 0.431192f, 0.431278f, 0.431365f, 0.431451f, 0.431538f, 0.431624f, + 0.431711f, 0.431797f, 0.431884f, 0.431970f, 0.432057f, 0.432143f, 0.432229f, 0.432316f, + 0.432402f, 0.432489f, 0.432575f, 0.432662f, 0.432748f, 0.432835f, 0.432921f, 0.433007f, + 0.433094f, 0.433180f, 0.433267f, 0.433353f, 0.433439f, 0.433526f, 0.433612f, 0.433699f, + 0.433785f, 0.433871f, 0.433958f, 0.434044f, 0.434131f, 0.434217f, 0.434303f, 0.434390f, + 0.434476f, 0.434562f, 0.434649f, 0.434735f, 0.434821f, 0.434908f, 0.434994f, 0.435080f, + 0.435167f, 0.435253f, 0.435339f, 0.435426f, 0.435512f, 0.435598f, 0.435685f, 0.435771f, + 0.435857f, 0.435943f, 0.436030f, 0.436116f, 0.436202f, 0.436288f, 0.436375f, 0.436461f, + 0.436547f, 0.436633f, 0.436720f, 0.436806f, 0.436892f, 0.436978f, 0.437065f, 0.437151f, + 0.437237f, 0.437323f, 0.437410f, 0.437496f, 0.437582f, 0.437668f, 0.437754f, 0.437841f, + 0.437927f, 0.438013f, 0.438099f, 0.438185f, 0.438272f, 0.438358f, 0.438444f, 0.438530f, + 0.438616f, 0.438702f, 0.438789f, 0.438875f, 0.438961f, 0.439047f, 0.439133f, 0.439219f, + 0.439305f, 0.439392f, 0.439478f, 0.439564f, 0.439650f, 0.439736f, 0.439822f, 0.439908f, + 0.439994f, 0.440080f, 0.440166f, 0.440253f, 0.440339f, 0.440425f, 0.440511f, 0.440597f, + 0.440683f, 0.440769f, 0.440855f, 0.440941f, 0.441027f, 0.441113f, 0.441199f, 0.441285f, + 0.441371f, 0.441457f, 0.441543f, 0.441629f, 0.441715f, 0.441801f, 0.441887f, 0.441973f, + 0.442059f, 0.442145f, 0.442231f, 0.442317f, 0.442403f, 0.442489f, 0.442575f, 0.442661f, + 0.442747f, 0.442833f, 0.442919f, 0.443005f, 0.443091f, 0.443177f, 0.443263f, 0.443349f, + 0.443435f, 0.443521f, 0.443607f, 0.443693f, 0.443779f, 0.443864f, 0.443950f, 0.444036f, + 0.444122f, 0.444208f, 0.444294f, 0.444380f, 0.444466f, 0.444552f, 0.444637f, 0.444723f, + 0.444809f, 0.444895f, 0.444981f, 0.445067f, 0.445153f, 0.445239f, 0.445324f, 0.445410f, + 0.445496f, 0.445582f, 0.445668f, 0.445754f, 0.445839f, 0.445925f, 0.446011f, 0.446097f, + 0.446183f, 0.446268f, 0.446354f, 0.446440f, 0.446526f, 0.446612f, 0.446697f, 0.446783f, + 0.446869f, 0.446955f, 0.447040f, 0.447126f, 0.447212f, 0.447298f, 0.447383f, 0.447469f, + 0.447555f, 0.447641f, 0.447726f, 0.447812f, 0.447898f, 0.447983f, 0.448069f, 0.448155f, + 0.448241f, 0.448326f, 0.448412f, 0.448498f, 0.448583f, 0.448669f, 0.448755f, 0.448840f, + 0.448926f, 0.449012f, 0.449097f, 0.449183f, 0.449269f, 0.449354f, 0.449440f, 0.449526f, + 0.449611f, 0.449697f, 0.449783f, 0.449868f, 0.449954f, 0.450039f, 0.450125f, 0.450211f, + 0.450296f, 0.450382f, 0.450467f, 0.450553f, 0.450639f, 0.450724f, 0.450810f, 0.450895f, + 0.450981f, 0.451067f, 0.451152f, 0.451238f, 0.451323f, 0.451409f, 0.451494f, 0.451580f, + 0.451665f, 0.451751f, 0.451836f, 0.451922f, 0.452008f, 0.452093f, 0.452179f, 0.452264f, + 0.452350f, 0.452435f, 0.452521f, 0.452606f, 0.452692f, 0.452777f, 0.452863f, 0.452948f, + 0.453033f, 0.453119f, 0.453204f, 0.453290f, 0.453375f, 0.453461f, 0.453546f, 0.453632f, + 0.453717f, 0.453803f, 0.453888f, 0.453973f, 0.454059f, 0.454144f, 0.454230f, 0.454315f, + 0.454400f, 0.454486f, 0.454571f, 0.454657f, 0.454742f, 0.454827f, 0.454913f, 0.454998f, + 0.455084f, 0.455169f, 0.455254f, 0.455340f, 0.455425f, 0.455510f, 0.455596f, 0.455681f, + 0.455766f, 0.455852f, 0.455937f, 0.456022f, 0.456108f, 0.456193f, 0.456278f, 0.456364f, + 0.456449f, 0.456534f, 0.456620f, 0.456705f, 0.456790f, 0.456875f, 0.456961f, 0.457046f, + 0.457131f, 0.457217f, 0.457302f, 0.457387f, 0.457472f, 0.457558f, 0.457643f, 0.457728f, + 0.457813f, 0.457899f, 0.457984f, 0.458069f, 0.458154f, 0.458239f, 0.458325f, 0.458410f, + 0.458495f, 0.458580f, 0.458665f, 0.458751f, 0.458836f, 0.458921f, 0.459006f, 0.459091f, + 0.459177f, 0.459262f, 0.459347f, 0.459432f, 0.459517f, 0.459602f, 0.459687f, 0.459773f, + 0.459858f, 0.459943f, 0.460028f, 0.460113f, 0.460198f, 0.460283f, 0.460369f, 0.460454f, + 0.460539f, 0.460624f, 0.460709f, 0.460794f, 0.460879f, 0.460964f, 0.461049f, 0.461134f, + 0.461219f, 0.461304f, 0.461390f, 0.461475f, 0.461560f, 0.461645f, 0.461730f, 0.461815f, + 0.461900f, 0.461985f, 0.462070f, 0.462155f, 0.462240f, 0.462325f, 0.462410f, 0.462495f, + 0.462580f, 0.462665f, 0.462750f, 0.462835f, 0.462920f, 0.463005f, 0.463090f, 0.463175f, + 0.463260f, 0.463345f, 0.463430f, 0.463515f, 0.463600f, 0.463685f, 0.463769f, 0.463854f, + 0.463939f, 0.464024f, 0.464109f, 0.464194f, 0.464279f, 0.464364f, 0.464449f, 0.464534f, + 0.464619f, 0.464704f, 0.464788f, 0.464873f, 0.464958f, 0.465043f, 0.465128f, 0.465213f, + 0.465298f, 0.465383f, 0.465467f, 0.465552f, 0.465637f, 0.465722f, 0.465807f, 0.465892f, + 0.465977f, 0.466061f, 0.466146f, 0.466231f, 0.466316f, 0.466401f, 0.466485f, 0.466570f, + 0.466655f, 0.466740f, 0.466825f, 0.466909f, 0.466994f, 0.467079f, 0.467164f, 0.467248f, + 0.467333f, 0.467418f, 0.467503f, 0.467587f, 0.467672f, 0.467757f, 0.467842f, 0.467926f, + 0.468011f, 0.468096f, 0.468181f, 0.468265f, 0.468350f, 0.468435f, 0.468519f, 0.468604f, + 0.468689f, 0.468774f, 0.468858f, 0.468943f, 0.469028f, 0.469112f, 0.469197f, 0.469282f, + 0.469366f, 0.469451f, 0.469536f, 0.469620f, 0.469705f, 0.469789f, 0.469874f, 0.469959f, + 0.470043f, 0.470128f, 0.470213f, 0.470297f, 0.470382f, 0.470466f, 0.470551f, 0.470636f, + 0.470720f, 0.470805f, 0.470889f, 0.470974f, 0.471058f, 0.471143f, 0.471228f, 0.471312f, + 0.471397f, 0.471481f, 0.471566f, 0.471650f, 0.471735f, 0.471819f, 0.471904f, 0.471988f, + 0.472073f, 0.472158f, 0.472242f, 0.472327f, 0.472411f, 0.472496f, 0.472580f, 0.472665f, + 0.472749f, 0.472834f, 0.472918f, 0.473002f, 0.473087f, 0.473171f, 0.473256f, 0.473340f, + 0.473425f, 0.473509f, 0.473594f, 0.473678f, 0.473763f, 0.473847f, 0.473931f, 0.474016f, + 0.474100f, 0.474185f, 0.474269f, 0.474353f, 0.474438f, 0.474522f, 0.474607f, 0.474691f, + 0.474775f, 0.474860f, 0.474944f, 0.475029f, 0.475113f, 0.475197f, 0.475282f, 0.475366f, + 0.475450f, 0.475535f, 0.475619f, 0.475703f, 0.475788f, 0.475872f, 0.475956f, 0.476041f, + 0.476125f, 0.476209f, 0.476294f, 0.476378f, 0.476462f, 0.476546f, 0.476631f, 0.476715f, + 0.476799f, 0.476884f, 0.476968f, 0.477052f, 0.477136f, 0.477221f, 0.477305f, 0.477389f, + 0.477473f, 0.477558f, 0.477642f, 0.477726f, 0.477810f, 0.477894f, 0.477979f, 0.478063f, + 0.478147f, 0.478231f, 0.478315f, 0.478400f, 0.478484f, 0.478568f, 0.478652f, 0.478736f, + 0.478821f, 0.478905f, 0.478989f, 0.479073f, 0.479157f, 0.479241f, 0.479325f, 0.479410f, + 0.479494f, 0.479578f, 0.479662f, 0.479746f, 0.479830f, 0.479914f, 0.479998f, 0.480083f, + 0.480167f, 0.480251f, 0.480335f, 0.480419f, 0.480503f, 0.480587f, 0.480671f, 0.480755f, + 0.480839f, 0.480923f, 0.481007f, 0.481091f, 0.481176f, 0.481260f, 0.481344f, 0.481428f, + 0.481512f, 0.481596f, 0.481680f, 0.481764f, 0.481848f, 0.481932f, 0.482016f, 0.482100f, + 0.482184f, 0.482268f, 0.482352f, 0.482436f, 0.482520f, 0.482604f, 0.482688f, 0.482772f, + 0.482856f, 0.482940f, 0.483023f, 0.483107f, 0.483191f, 0.483275f, 0.483359f, 0.483443f, + 0.483527f, 0.483611f, 0.483695f, 0.483779f, 0.483863f, 0.483947f, 0.484031f, 0.484114f, + 0.484198f, 0.484282f, 0.484366f, 0.484450f, 0.484534f, 0.484618f, 0.484702f, 0.484785f, + 0.484869f, 0.484953f, 0.485037f, 0.485121f, 0.485205f, 0.485288f, 0.485372f, 0.485456f, + 0.485540f, 0.485624f, 0.485708f, 0.485791f, 0.485875f, 0.485959f, 0.486043f, 0.486126f, + 0.486210f, 0.486294f, 0.486378f, 0.486462f, 0.486545f, 0.486629f, 0.486713f, 0.486797f, + 0.486880f, 0.486964f, 0.487048f, 0.487132f, 0.487215f, 0.487299f, 0.487383f, 0.487466f, + 0.487550f, 0.487634f, 0.487718f, 0.487801f, 0.487885f, 0.487969f, 0.488052f, 0.488136f, + 0.488220f, 0.488303f, 0.488387f, 0.488471f, 0.488554f, 0.488638f, 0.488722f, 0.488805f, + 0.488889f, 0.488973f, 0.489056f, 0.489140f, 0.489223f, 0.489307f, 0.489391f, 0.489474f, + 0.489558f, 0.489641f, 0.489725f, 0.489809f, 0.489892f, 0.489976f, 0.490059f, 0.490143f, + 0.490226f, 0.490310f, 0.490394f, 0.490477f, 0.490561f, 0.490644f, 0.490728f, 0.490811f, + 0.490895f, 0.490978f, 0.491062f, 0.491145f, 0.491229f, 0.491312f, 0.491396f, 0.491479f, + 0.491563f, 0.491646f, 0.491730f, 0.491813f, 0.491897f, 0.491980f, 0.492064f, 0.492147f, + 0.492231f, 0.492314f, 0.492398f, 0.492481f, 0.492564f, 0.492648f, 0.492731f, 0.492815f, + 0.492898f, 0.492982f, 0.493065f, 0.493148f, 0.493232f, 0.493315f, 0.493399f, 0.493482f, + 0.493565f, 0.493649f, 0.493732f, 0.493816f, 0.493899f, 0.493982f, 0.494066f, 0.494149f, + 0.494232f, 0.494316f, 0.494399f, 0.494482f, 0.494566f, 0.494649f, 0.494732f, 0.494816f, + 0.494899f, 0.494982f, 0.495066f, 0.495149f, 0.495232f, 0.495315f, 0.495399f, 0.495482f, + 0.495565f, 0.495649f, 0.495732f, 0.495815f, 0.495898f, 0.495982f, 0.496065f, 0.496148f, + 0.496231f, 0.496315f, 0.496398f, 0.496481f, 0.496564f, 0.496647f, 0.496731f, 0.496814f, + 0.496897f, 0.496980f, 0.497063f, 0.497147f, 0.497230f, 0.497313f, 0.497396f, 0.497479f, + 0.497562f, 0.497646f, 0.497729f, 0.497812f, 0.497895f, 0.497978f, 0.498061f, 0.498145f, + 0.498228f, 0.498311f, 0.498394f, 0.498477f, 0.498560f, 0.498643f, 0.498726f, 0.498809f, + 0.498893f, 0.498976f, 0.499059f, 0.499142f, 0.499225f, 0.499308f, 0.499391f, 0.499474f, + 0.499557f, 0.499640f, 0.499723f, 0.499806f, 0.499889f, 0.499972f, 0.500055f, 0.500138f, + 0.500221f, 0.500304f, 0.500387f, 0.500470f, 0.500553f, 0.500636f, 0.500719f, 0.500802f, + 0.500885f, 0.500968f, 0.501051f, 0.501134f, 0.501217f, 0.501300f, 0.501383f, 0.501466f, + 0.501549f, 0.501632f, 0.501715f, 0.501798f, 0.501881f, 0.501964f, 0.502047f, 0.502130f, + 0.502212f, 0.502295f, 0.502378f, 0.502461f, 0.502544f, 0.502627f, 0.502710f, 0.502793f, + 0.502876f, 0.502958f, 0.503041f, 0.503124f, 0.503207f, 0.503290f, 0.503373f, 0.503456f, + 0.503538f, 0.503621f, 0.503704f, 0.503787f, 0.503870f, 0.503953f, 0.504035f, 0.504118f, + 0.504201f, 0.504284f, 0.504366f, 0.504449f, 0.504532f, 0.504615f, 0.504698f, 0.504780f, + 0.504863f, 0.504946f, 0.505029f, 0.505111f, 0.505194f, 0.505277f, 0.505360f, 0.505442f, + 0.505525f, 0.505608f, 0.505690f, 0.505773f, 0.505856f, 0.505939f, 0.506021f, 0.506104f, + 0.506187f, 0.506269f, 0.506352f, 0.506435f, 0.506517f, 0.506600f, 0.506683f, 0.506765f, + 0.506848f, 0.506931f, 0.507013f, 0.507096f, 0.507179f, 0.507261f, 0.507344f, 0.507426f, + 0.507509f, 0.507592f, 0.507674f, 0.507757f, 0.507839f, 0.507922f, 0.508005f, 0.508087f, + 0.508170f, 0.508252f, 0.508335f, 0.508417f, 0.508500f, 0.508583f, 0.508665f, 0.508748f, + 0.508830f, 0.508913f, 0.508995f, 0.509078f, 0.509160f, 0.509243f, 0.509325f, 0.509408f, + 0.509490f, 0.509573f, 0.509655f, 0.509738f, 0.509820f, 0.509903f, 0.509985f, 0.510068f, + 0.510150f, 0.510233f, 0.510315f, 0.510397f, 0.510480f, 0.510562f, 0.510645f, 0.510727f, + 0.510810f, 0.510892f, 0.510974f, 0.511057f, 0.511139f, 0.511222f, 0.511304f, 0.511386f, + 0.511469f, 0.511551f, 0.511634f, 0.511716f, 0.511798f, 0.511881f, 0.511963f, 0.512045f, + 0.512128f, 0.512210f, 0.512292f, 0.512375f, 0.512457f, 0.512539f, 0.512622f, 0.512704f, + 0.512786f, 0.512869f, 0.512951f, 0.513033f, 0.513116f, 0.513198f, 0.513280f, 0.513362f, + 0.513445f, 0.513527f, 0.513609f, 0.513692f, 0.513774f, 0.513856f, 0.513938f, 0.514021f, + 0.514103f, 0.514185f, 0.514267f, 0.514349f, 0.514432f, 0.514514f, 0.514596f, 0.514678f, + 0.514760f, 0.514843f, 0.514925f, 0.515007f, 0.515089f, 0.515171f, 0.515254f, 0.515336f, + 0.515418f, 0.515500f, 0.515582f, 0.515664f, 0.515746f, 0.515829f, 0.515911f, 0.515993f, + 0.516075f, 0.516157f, 0.516239f, 0.516321f, 0.516403f, 0.516486f, 0.516568f, 0.516650f, + 0.516732f, 0.516814f, 0.516896f, 0.516978f, 0.517060f, 0.517142f, 0.517224f, 0.517306f, + 0.517388f, 0.517470f, 0.517552f, 0.517634f, 0.517716f, 0.517798f, 0.517880f, 0.517963f, + 0.518045f, 0.518126f, 0.518209f, 0.518291f, 0.518372f, 0.518454f, 0.518536f, 0.518618f, + 0.518700f, 0.518782f, 0.518864f, 0.518946f, 0.519028f, 0.519110f, 0.519192f, 0.519274f, + 0.519356f, 0.519438f, 0.519520f, 0.519602f, 0.519684f, 0.519766f, 0.519848f, 0.519929f, + 0.520011f, 0.520093f, 0.520175f, 0.520257f, 0.520339f, 0.520421f, 0.520503f, 0.520584f, + 0.520666f, 0.520748f, 0.520830f, 0.520912f, 0.520994f, 0.521075f, 0.521157f, 0.521239f, + 0.521321f, 0.521403f, 0.521485f, 0.521566f, 0.521648f, 0.521730f, 0.521812f, 0.521894f, + 0.521975f, 0.522057f, 0.522139f, 0.522221f, 0.522302f, 0.522384f, 0.522466f, 0.522548f, + 0.522629f, 0.522711f, 0.522793f, 0.522875f, 0.522956f, 0.523038f, 0.523120f, 0.523201f, + 0.523283f, 0.523365f, 0.523447f, 0.523528f, 0.523610f, 0.523692f, 0.523773f, 0.523855f, + 0.523937f, 0.524018f, 0.524100f, 0.524181f, 0.524263f, 0.524345f, 0.524426f, 0.524508f, + 0.524590f, 0.524671f, 0.524753f, 0.524835f, 0.524916f, 0.524998f, 0.525079f, 0.525161f, + 0.525243f, 0.525324f, 0.525406f, 0.525487f, 0.525569f, 0.525650f, 0.525732f, 0.525813f, + 0.525895f, 0.525977f, 0.526058f, 0.526140f, 0.526221f, 0.526303f, 0.526384f, 0.526466f, + 0.526547f, 0.526629f, 0.526710f, 0.526792f, 0.526873f, 0.526955f, 0.527036f, 0.527118f, + 0.527199f, 0.527281f, 0.527362f, 0.527444f, 0.527525f, 0.527606f, 0.527688f, 0.527769f, + 0.527851f, 0.527932f, 0.528014f, 0.528095f, 0.528176f, 0.528258f, 0.528339f, 0.528421f, + 0.528502f, 0.528583f, 0.528665f, 0.528746f, 0.528828f, 0.528909f, 0.528990f, 0.529072f, + 0.529153f, 0.529234f, 0.529316f, 0.529397f, 0.529478f, 0.529560f, 0.529641f, 0.529722f, + 0.529804f, 0.529885f, 0.529966f, 0.530048f, 0.530129f, 0.530210f, 0.530291f, 0.530373f, + 0.530454f, 0.530535f, 0.530617f, 0.530698f, 0.530779f, 0.530860f, 0.530942f, 0.531023f, + 0.531104f, 0.531185f, 0.531266f, 0.531348f, 0.531429f, 0.531510f, 0.531591f, 0.531673f, + 0.531754f, 0.531835f, 0.531916f, 0.531997f, 0.532078f, 0.532160f, 0.532241f, 0.532322f, + 0.532403f, 0.532484f, 0.532565f, 0.532647f, 0.532728f, 0.532809f, 0.532890f, 0.532971f, + 0.533052f, 0.533133f, 0.533214f, 0.533296f, 0.533377f, 0.533458f, 0.533539f, 0.533620f, + 0.533701f, 0.533782f, 0.533863f, 0.533944f, 0.534025f, 0.534106f, 0.534187f, 0.534268f, + 0.534349f, 0.534431f, 0.534512f, 0.534593f, 0.534674f, 0.534755f, 0.534836f, 0.534917f, + 0.534998f, 0.535079f, 0.535160f, 0.535241f, 0.535322f, 0.535403f, 0.535484f, 0.535564f, + 0.535645f, 0.535726f, 0.535807f, 0.535888f, 0.535969f, 0.536050f, 0.536131f, 0.536212f, + 0.536293f, 0.536374f, 0.536455f, 0.536536f, 0.536617f, 0.536698f, 0.536778f, 0.536859f, + 0.536940f, 0.537021f, 0.537102f, 0.537183f, 0.537264f, 0.537345f, 0.537425f, 0.537506f, + 0.537587f, 0.537668f, 0.537749f, 0.537830f, 0.537910f, 0.537991f, 0.538072f, 0.538153f, + 0.538234f, 0.538314f, 0.538395f, 0.538476f, 0.538557f, 0.538638f, 0.538718f, 0.538799f, + 0.538880f, 0.538961f, 0.539041f, 0.539122f, 0.539203f, 0.539284f, 0.539364f, 0.539445f, + 0.539526f, 0.539607f, 0.539687f, 0.539768f, 0.539849f, 0.539929f, 0.540010f, 0.540091f, + 0.540171f, 0.540252f, 0.540333f, 0.540413f, 0.540494f, 0.540575f, 0.540655f, 0.540736f, + 0.540817f, 0.540897f, 0.540978f, 0.541059f, 0.541139f, 0.541220f, 0.541301f, 0.541381f, + 0.541462f, 0.541542f, 0.541623f, 0.541704f, 0.541784f, 0.541865f, 0.541945f, 0.542026f, + 0.542106f, 0.542187f, 0.542268f, 0.542348f, 0.542429f, 0.542509f, 0.542590f, 0.542670f, + 0.542751f, 0.542831f, 0.542912f, 0.542992f, 0.543073f, 0.543153f, 0.543234f, 0.543314f, + 0.543395f, 0.543475f, 0.543556f, 0.543636f, 0.543717f, 0.543797f, 0.543878f, 0.543958f, + 0.544039f, 0.544119f, 0.544199f, 0.544280f, 0.544360f, 0.544441f, 0.544521f, 0.544602f, + 0.544682f, 0.544762f, 0.544843f, 0.544923f, 0.545003f, 0.545084f, 0.545164f, 0.545245f, + 0.545325f, 0.545405f, 0.545486f, 0.545566f, 0.545646f, 0.545727f, 0.545807f, 0.545887f, + 0.545968f, 0.546048f, 0.546128f, 0.546209f, 0.546289f, 0.546369f, 0.546450f, 0.546530f, + 0.546610f, 0.546690f, 0.546771f, 0.546851f, 0.546931f, 0.547011f, 0.547092f, 0.547172f, + 0.547252f, 0.547333f, 0.547413f, 0.547493f, 0.547573f, 0.547653f, 0.547734f, 0.547814f, + 0.547894f, 0.547974f, 0.548054f, 0.548135f, 0.548215f, 0.548295f, 0.548375f, 0.548455f, + 0.548536f, 0.548616f, 0.548696f, 0.548776f, 0.548856f, 0.548936f, 0.549016f, 0.549097f, + 0.549177f, 0.549257f, 0.549337f, 0.549417f, 0.549497f, 0.549577f, 0.549657f, 0.549737f, + 0.549818f, 0.549898f, 0.549978f, 0.550058f, 0.550138f, 0.550218f, 0.550298f, 0.550378f, + 0.550458f, 0.550538f, 0.550618f, 0.550698f, 0.550778f, 0.550858f, 0.550938f, 0.551018f, + 0.551098f, 0.551178f, 0.551258f, 0.551338f, 0.551418f, 0.551498f, 0.551578f, 0.551658f, + 0.551738f, 0.551818f, 0.551898f, 0.551978f, 0.552058f, 0.552138f, 0.552218f, 0.552298f, + 0.552378f, 0.552457f, 0.552537f, 0.552617f, 0.552697f, 0.552777f, 0.552857f, 0.552937f, + 0.553017f, 0.553097f, 0.553176f, 0.553256f, 0.553336f, 0.553416f, 0.553496f, 0.553576f, + 0.553656f, 0.553735f, 0.553815f, 0.553895f, 0.553975f, 0.554055f, 0.554134f, 0.554214f, + 0.554294f, 0.554374f, 0.554454f, 0.554533f, 0.554613f, 0.554693f, 0.554773f, 0.554853f, + 0.554932f, 0.555012f, 0.555092f, 0.555172f, 0.555251f, 0.555331f, 0.555411f, 0.555490f, + 0.555570f, 0.555650f, 0.555730f, 0.555809f, 0.555889f, 0.555969f, 0.556048f, 0.556128f, + 0.556208f, 0.556287f, 0.556367f, 0.556447f, 0.556526f, 0.556606f, 0.556686f, 0.556765f, + 0.556845f, 0.556925f, 0.557004f, 0.557084f, 0.557164f, 0.557243f, 0.557323f, 0.557402f, + 0.557482f, 0.557562f, 0.557641f, 0.557721f, 0.557800f, 0.557880f, 0.557959f, 0.558039f, + 0.558119f, 0.558198f, 0.558278f, 0.558357f, 0.558437f, 0.558516f, 0.558596f, 0.558675f, + 0.558755f, 0.558834f, 0.558914f, 0.558993f, 0.559073f, 0.559152f, 0.559232f, 0.559311f, + 0.559391f, 0.559470f, 0.559550f, 0.559629f, 0.559709f, 0.559788f, 0.559867f, 0.559947f, + 0.560026f, 0.560106f, 0.560185f, 0.560265f, 0.560344f, 0.560423f, 0.560503f, 0.560582f, + 0.560662f, 0.560741f, 0.560820f, 0.560900f, 0.560979f, 0.561058f, 0.561138f, 0.561217f, + 0.561297f, 0.561376f, 0.561455f, 0.561535f, 0.561614f, 0.561693f, 0.561773f, 0.561852f, + 0.561931f, 0.562010f, 0.562090f, 0.562169f, 0.562248f, 0.562328f, 0.562407f, 0.562486f, + 0.562565f, 0.562645f, 0.562724f, 0.562803f, 0.562882f, 0.562962f, 0.563041f, 0.563120f, + 0.563199f, 0.563279f, 0.563358f, 0.563437f, 0.563516f, 0.563595f, 0.563675f, 0.563754f, + 0.563833f, 0.563912f, 0.563991f, 0.564070f, 0.564150f, 0.564229f, 0.564308f, 0.564387f, + 0.564466f, 0.564545f, 0.564624f, 0.564704f, 0.564783f, 0.564862f, 0.564941f, 0.565020f, + 0.565099f, 0.565178f, 0.565257f, 0.565336f, 0.565416f, 0.565495f, 0.565574f, 0.565653f, + 0.565732f, 0.565811f, 0.565890f, 0.565969f, 0.566048f, 0.566127f, 0.566206f, 0.566285f, + 0.566364f, 0.566443f, 0.566522f, 0.566601f, 0.566680f, 0.566759f, 0.566838f, 0.566917f, + 0.566996f, 0.567075f, 0.567154f, 0.567233f, 0.567312f, 0.567391f, 0.567470f, 0.567549f, + 0.567628f, 0.567707f, 0.567786f, 0.567864f, 0.567943f, 0.568022f, 0.568101f, 0.568180f, + 0.568259f, 0.568338f, 0.568417f, 0.568496f, 0.568574f, 0.568653f, 0.568732f, 0.568811f, + 0.568890f, 0.568969f, 0.569048f, 0.569126f, 0.569205f, 0.569284f, 0.569363f, 0.569442f, + 0.569521f, 0.569599f, 0.569678f, 0.569757f, 0.569836f, 0.569914f, 0.569993f, 0.570072f, + 0.570151f, 0.570230f, 0.570308f, 0.570387f, 0.570466f, 0.570545f, 0.570623f, 0.570702f, + 0.570781f, 0.570859f, 0.570938f, 0.571017f, 0.571096f, 0.571174f, 0.571253f, 0.571332f, + 0.571410f, 0.571489f, 0.571568f, 0.571646f, 0.571725f, 0.571804f, 0.571882f, 0.571961f, + 0.572040f, 0.572118f, 0.572197f, 0.572276f, 0.572354f, 0.572433f, 0.572511f, 0.572590f, + 0.572669f, 0.572747f, 0.572826f, 0.572904f, 0.572983f, 0.573061f, 0.573140f, 0.573219f, + 0.573297f, 0.573376f, 0.573454f, 0.573533f, 0.573611f, 0.573690f, 0.573768f, 0.573847f, + 0.573925f, 0.574004f, 0.574082f, 0.574161f, 0.574239f, 0.574318f, 0.574396f, 0.574475f, + 0.574553f, 0.574632f, 0.574710f, 0.574789f, 0.574867f, 0.574946f, 0.575024f, 0.575103f, + 0.575181f, 0.575259f, 0.575338f, 0.575416f, 0.575495f, 0.575573f, 0.575651f, 0.575730f, + 0.575808f, 0.575887f, 0.575965f, 0.576043f, 0.576122f, 0.576200f, 0.576278f, 0.576357f, + 0.576435f, 0.576513f, 0.576592f, 0.576670f, 0.576748f, 0.576827f, 0.576905f, 0.576983f, + 0.577062f, 0.577140f, 0.577218f, 0.577297f, 0.577375f, 0.577453f, 0.577531f, 0.577610f, + 0.577688f, 0.577766f, 0.577844f, 0.577923f, 0.578001f, 0.578079f, 0.578157f, 0.578236f, + 0.578314f, 0.578392f, 0.578470f, 0.578548f, 0.578627f, 0.578705f, 0.578783f, 0.578861f, + 0.578939f, 0.579018f, 0.579096f, 0.579174f, 0.579252f, 0.579330f, 0.579408f, 0.579486f, + 0.579565f, 0.579643f, 0.579721f, 0.579799f, 0.579877f, 0.579955f, 0.580033f, 0.580111f, + 0.580189f, 0.580267f, 0.580346f, 0.580424f, 0.580502f, 0.580580f, 0.580658f, 0.580736f, + 0.580814f, 0.580892f, 0.580970f, 0.581048f, 0.581126f, 0.581204f, 0.581282f, 0.581360f, + 0.581438f, 0.581516f, 0.581594f, 0.581672f, 0.581750f, 0.581828f, 0.581906f, 0.581984f, + 0.582062f, 0.582140f, 0.582218f, 0.582296f, 0.582374f, 0.582452f, 0.582530f, 0.582608f, + 0.582685f, 0.582763f, 0.582841f, 0.582919f, 0.582997f, 0.583075f, 0.583153f, 0.583231f, + 0.583309f, 0.583387f, 0.583464f, 0.583542f, 0.583620f, 0.583698f, 0.583776f, 0.583854f, + 0.583931f, 0.584009f, 0.584087f, 0.584165f, 0.584243f, 0.584321f, 0.584398f, 0.584476f, + 0.584554f, 0.584632f, 0.584710f, 0.584787f, 0.584865f, 0.584943f, 0.585021f, 0.585098f, + 0.585176f, 0.585254f, 0.585332f, 0.585409f, 0.585487f, 0.585565f, 0.585642f, 0.585720f, + 0.585798f, 0.585876f, 0.585953f, 0.586031f, 0.586109f, 0.586186f, 0.586264f, 0.586342f, + 0.586419f, 0.586497f, 0.586575f, 0.586652f, 0.586730f, 0.586808f, 0.586885f, 0.586963f, + 0.587040f, 0.587118f, 0.587196f, 0.587273f, 0.587351f, 0.587428f, 0.587506f, 0.587584f, + 0.587661f, 0.587739f, 0.587816f, 0.587894f, 0.587971f, 0.588049f, 0.588126f, 0.588204f, + 0.588282f, 0.588359f, 0.588437f, 0.588514f, 0.588592f, 0.588669f, 0.588747f, 0.588824f, + 0.588902f, 0.588979f, 0.589057f, 0.589134f, 0.589212f, 0.589289f, 0.589366f, 0.589444f, + 0.589521f, 0.589599f, 0.589676f, 0.589754f, 0.589831f, 0.589908f, 0.589986f, 0.590063f, + 0.590141f, 0.590218f, 0.590295f, 0.590373f, 0.590450f, 0.590528f, 0.590605f, 0.590682f, + 0.590760f, 0.590837f, 0.590914f, 0.590992f, 0.591069f, 0.591146f, 0.591224f, 0.591301f, + 0.591378f, 0.591456f, 0.591533f, 0.591610f, 0.591688f, 0.591765f, 0.591842f, 0.591919f, + 0.591997f, 0.592074f, 0.592151f, 0.592228f, 0.592306f, 0.592383f, 0.592460f, 0.592537f, + 0.592615f, 0.592692f, 0.592769f, 0.592846f, 0.592924f, 0.593001f, 0.593078f, 0.593155f, + 0.593232f, 0.593309f, 0.593387f, 0.593464f, 0.593541f, 0.593618f, 0.593695f, 0.593772f, + 0.593850f, 0.593927f, 0.594004f, 0.594081f, 0.594158f, 0.594235f, 0.594312f, 0.594389f, + 0.594467f, 0.594544f, 0.594621f, 0.594698f, 0.594775f, 0.594852f, 0.594929f, 0.595006f, + 0.595083f, 0.595160f, 0.595237f, 0.595314f, 0.595391f, 0.595468f, 0.595545f, 0.595622f, + 0.595699f, 0.595776f, 0.595853f, 0.595930f, 0.596007f, 0.596084f, 0.596161f, 0.596238f, + 0.596315f, 0.596392f, 0.596469f, 0.596546f, 0.596623f, 0.596700f, 0.596777f, 0.596854f, + 0.596931f, 0.597008f, 0.597085f, 0.597161f, 0.597238f, 0.597315f, 0.597392f, 0.597469f, + 0.597546f, 0.597623f, 0.597700f, 0.597776f, 0.597853f, 0.597930f, 0.598007f, 0.598084f, + 0.598161f, 0.598238f, 0.598314f, 0.598391f, 0.598468f, 0.598545f, 0.598622f, 0.598698f, + 0.598775f, 0.598852f, 0.598929f, 0.599006f, 0.599082f, 0.599159f, 0.599236f, 0.599313f, + 0.599389f, 0.599466f, 0.599543f, 0.599620f, 0.599696f, 0.599773f, 0.599850f, 0.599926f, + 0.600003f, 0.600080f, 0.600156f, 0.600233f, 0.600310f, 0.600387f, 0.600463f, 0.600540f, + 0.600616f, 0.600693f, 0.600770f, 0.600846f, 0.600923f, 0.601000f, 0.601076f, 0.601153f, + 0.601230f, 0.601306f, 0.601383f, 0.601459f, 0.601536f, 0.601613f, 0.601689f, 0.601766f, + 0.601842f, 0.601919f, 0.601995f, 0.602072f, 0.602148f, 0.602225f, 0.602302f, 0.602378f, + 0.602455f, 0.602531f, 0.602608f, 0.602684f, 0.602761f, 0.602837f, 0.602914f, 0.602990f, + 0.603067f, 0.603143f, 0.603220f, 0.603296f, 0.603372f, 0.603449f, 0.603525f, 0.603602f, + 0.603678f, 0.603755f, 0.603831f, 0.603908f, 0.603984f, 0.604060f, 0.604137f, 0.604213f, + 0.604290f, 0.604366f, 0.604442f, 0.604519f, 0.604595f, 0.604671f, 0.604748f, 0.604824f, + 0.604900f, 0.604977f, 0.605053f, 0.605129f, 0.605206f, 0.605282f, 0.605358f, 0.605435f, + 0.605511f, 0.605587f, 0.605664f, 0.605740f, 0.605816f, 0.605892f, 0.605969f, 0.606045f, + 0.606121f, 0.606198f, 0.606274f, 0.606350f, 0.606426f, 0.606502f, 0.606579f, 0.606655f, + 0.606731f, 0.606807f, 0.606884f, 0.606960f, 0.607036f, 0.607112f, 0.607188f, 0.607264f, + 0.607341f, 0.607417f, 0.607493f, 0.607569f, 0.607645f, 0.607721f, 0.607798f, 0.607874f, + 0.607950f, 0.608026f, 0.608102f, 0.608178f, 0.608254f, 0.608330f, 0.608406f, 0.608482f, + 0.608559f, 0.608635f, 0.608711f, 0.608787f, 0.608863f, 0.608939f, 0.609015f, 0.609091f, + 0.609167f, 0.609243f, 0.609319f, 0.609395f, 0.609471f, 0.609547f, 0.609623f, 0.609699f, + 0.609775f, 0.609851f, 0.609927f, 0.610003f, 0.610079f, 0.610155f, 0.610231f, 0.610307f, + 0.610383f, 0.610459f, 0.610535f, 0.610611f, 0.610687f, 0.610762f, 0.610838f, 0.610914f, + 0.610990f, 0.611066f, 0.611142f, 0.611218f, 0.611294f, 0.611370f, 0.611445f, 0.611521f, + 0.611597f, 0.611673f, 0.611749f, 0.611825f, 0.611901f, 0.611976f, 0.612052f, 0.612128f, + 0.612204f, 0.612280f, 0.612355f, 0.612431f, 0.612507f, 0.612583f, 0.612659f, 0.612734f, + 0.612810f, 0.612886f, 0.612962f, 0.613037f, 0.613113f, 0.613189f, 0.613265f, 0.613340f, + 0.613416f, 0.613492f, 0.613567f, 0.613643f, 0.613719f, 0.613795f, 0.613870f, 0.613946f, + 0.614022f, 0.614097f, 0.614173f, 0.614249f, 0.614324f, 0.614400f, 0.614475f, 0.614551f, + 0.614627f, 0.614702f, 0.614778f, 0.614854f, 0.614929f, 0.615005f, 0.615080f, 0.615156f, + 0.615232f, 0.615307f, 0.615383f, 0.615458f, 0.615534f, 0.615609f, 0.615685f, 0.615761f, + 0.615836f, 0.615912f, 0.615987f, 0.616063f, 0.616138f, 0.616214f, 0.616289f, 0.616365f, + 0.616440f, 0.616516f, 0.616591f, 0.616667f, 0.616742f, 0.616818f, 0.616893f, 0.616968f, + 0.617044f, 0.617119f, 0.617195f, 0.617270f, 0.617346f, 0.617421f, 0.617496f, 0.617572f, + 0.617647f, 0.617723f, 0.617798f, 0.617873f, 0.617949f, 0.618024f, 0.618100f, 0.618175f, + 0.618250f, 0.618326f, 0.618401f, 0.618476f, 0.618552f, 0.618627f, 0.618702f, 0.618778f, + 0.618853f, 0.618928f, 0.619004f, 0.619079f, 0.619154f, 0.619229f, 0.619305f, 0.619380f, + 0.619455f, 0.619531f, 0.619606f, 0.619681f, 0.619756f, 0.619832f, 0.619907f, 0.619982f, + 0.620057f, 0.620132f, 0.620208f, 0.620283f, 0.620358f, 0.620433f, 0.620508f, 0.620584f, + 0.620659f, 0.620734f, 0.620809f, 0.620884f, 0.620959f, 0.621035f, 0.621110f, 0.621185f, + 0.621260f, 0.621335f, 0.621410f, 0.621485f, 0.621560f, 0.621636f, 0.621711f, 0.621786f, + 0.621861f, 0.621936f, 0.622011f, 0.622086f, 0.622161f, 0.622236f, 0.622311f, 0.622386f, + 0.622461f, 0.622536f, 0.622611f, 0.622686f, 0.622761f, 0.622836f, 0.622911f, 0.622986f, + 0.623061f, 0.623136f, 0.623211f, 0.623286f, 0.623361f, 0.623436f, 0.623511f, 0.623586f, + 0.623661f, 0.623736f, 0.623811f, 0.623886f, 0.623961f, 0.624036f, 0.624111f, 0.624186f, + 0.624260f, 0.624335f, 0.624410f, 0.624485f, 0.624560f, 0.624635f, 0.624710f, 0.624785f, + 0.624860f, 0.624934f, 0.625009f, 0.625084f, 0.625159f, 0.625234f, 0.625309f, 0.625383f, + 0.625458f, 0.625533f, 0.625608f, 0.625683f, 0.625757f, 0.625832f, 0.625907f, 0.625982f, + 0.626056f, 0.626131f, 0.626206f, 0.626281f, 0.626355f, 0.626430f, 0.626505f, 0.626580f, + 0.626654f, 0.626729f, 0.626804f, 0.626878f, 0.626953f, 0.627028f, 0.627102f, 0.627177f, + 0.627252f, 0.627326f, 0.627401f, 0.627476f, 0.627550f, 0.627625f, 0.627700f, 0.627774f, + 0.627849f, 0.627924f, 0.627998f, 0.628073f, 0.628147f, 0.628222f, 0.628297f, 0.628371f, + 0.628446f, 0.628520f, 0.628595f, 0.628669f, 0.628744f, 0.628819f, 0.628893f, 0.628968f, + 0.629042f, 0.629117f, 0.629191f, 0.629266f, 0.629340f, 0.629415f, 0.629489f, 0.629564f, + 0.629638f, 0.629713f, 0.629787f, 0.629862f, 0.629936f, 0.630011f, 0.630085f, 0.630159f, + 0.630234f, 0.630308f, 0.630383f, 0.630457f, 0.630532f, 0.630606f, 0.630680f, 0.630755f, + 0.630829f, 0.630904f, 0.630978f, 0.631052f, 0.631127f, 0.631201f, 0.631275f, 0.631350f, + 0.631424f, 0.631499f, 0.631573f, 0.631647f, 0.631721f, 0.631796f, 0.631870f, 0.631944f, + 0.632019f, 0.632093f, 0.632167f, 0.632242f, 0.632316f, 0.632390f, 0.632464f, 0.632539f, + 0.632613f, 0.632687f, 0.632761f, 0.632836f, 0.632910f, 0.632984f, 0.633058f, 0.633133f, + 0.633207f, 0.633281f, 0.633355f, 0.633429f, 0.633504f, 0.633578f, 0.633652f, 0.633726f, + 0.633800f, 0.633874f, 0.633949f, 0.634023f, 0.634097f, 0.634171f, 0.634245f, 0.634319f, + 0.634393f, 0.634467f, 0.634542f, 0.634616f, 0.634690f, 0.634764f, 0.634838f, 0.634912f, + 0.634986f, 0.635060f, 0.635134f, 0.635208f, 0.635282f, 0.635356f, 0.635430f, 0.635504f, + 0.635578f, 0.635652f, 0.635726f, 0.635800f, 0.635874f, 0.635948f, 0.636022f, 0.636096f, + 0.636170f, 0.636244f, 0.636318f, 0.636392f, 0.636466f, 0.636540f, 0.636614f, 0.636688f, + 0.636762f, 0.636836f, 0.636910f, 0.636984f, 0.637057f, 0.637131f, 0.637205f, 0.637279f, + 0.637353f, 0.637427f, 0.637501f, 0.637575f, 0.637649f, 0.637722f, 0.637796f, 0.637870f, + 0.637944f, 0.638018f, 0.638092f, 0.638165f, 0.638239f, 0.638313f, 0.638387f, 0.638461f, + 0.638534f, 0.638608f, 0.638682f, 0.638756f, 0.638829f, 0.638903f, 0.638977f, 0.639051f, + 0.639124f, 0.639198f, 0.639272f, 0.639346f, 0.639419f, 0.639493f, 0.639567f, 0.639640f, + 0.639714f, 0.639788f, 0.639862f, 0.639935f, 0.640009f, 0.640083f, 0.640156f, 0.640230f, + 0.640303f, 0.640377f, 0.640451f, 0.640524f, 0.640598f, 0.640672f, 0.640745f, 0.640819f, + 0.640892f, 0.640966f, 0.641040f, 0.641113f, 0.641187f, 0.641260f, 0.641334f, 0.641407f, + 0.641481f, 0.641555f, 0.641628f, 0.641702f, 0.641775f, 0.641849f, 0.641922f, 0.641996f, + 0.642069f, 0.642143f, 0.642216f, 0.642290f, 0.642363f, 0.642437f, 0.642510f, 0.642584f, + 0.642657f, 0.642730f, 0.642804f, 0.642877f, 0.642951f, 0.643024f, 0.643098f, 0.643171f, + 0.643245f, 0.643318f, 0.643391f, 0.643465f, 0.643538f, 0.643611f, 0.643685f, 0.643758f, + 0.643832f, 0.643905f, 0.643978f, 0.644052f, 0.644125f, 0.644198f, 0.644272f, 0.644345f, + 0.644418f, 0.644492f, 0.644565f, 0.644638f, 0.644711f, 0.644785f, 0.644858f, 0.644931f, + 0.645005f, 0.645078f, 0.645151f, 0.645224f, 0.645298f, 0.645371f, 0.645444f, 0.645517f, + 0.645590f, 0.645664f, 0.645737f, 0.645810f, 0.645883f, 0.645956f, 0.646030f, 0.646103f, + 0.646176f, 0.646249f, 0.646322f, 0.646396f, 0.646469f, 0.646542f, 0.646615f, 0.646688f, + 0.646761f, 0.646834f, 0.646907f, 0.646981f, 0.647054f, 0.647127f, 0.647200f, 0.647273f, + 0.647346f, 0.647419f, 0.647492f, 0.647565f, 0.647638f, 0.647711f, 0.647784f, 0.647857f, + 0.647930f, 0.648003f, 0.648076f, 0.648149f, 0.648222f, 0.648295f, 0.648368f, 0.648441f, + 0.648514f, 0.648587f, 0.648660f, 0.648733f, 0.648806f, 0.648879f, 0.648952f, 0.649025f, + 0.649098f, 0.649171f, 0.649244f, 0.649317f, 0.649390f, 0.649463f, 0.649536f, 0.649608f, + 0.649681f, 0.649754f, 0.649827f, 0.649900f, 0.649973f, 0.650046f, 0.650119f, 0.650191f, + 0.650264f, 0.650337f, 0.650410f, 0.650483f, 0.650555f, 0.650628f, 0.650701f, 0.650774f, + 0.650847f, 0.650919f, 0.650992f, 0.651065f, 0.651138f, 0.651211f, 0.651283f, 0.651356f, + 0.651429f, 0.651502f, 0.651574f, 0.651647f, 0.651720f, 0.651792f, 0.651865f, 0.651938f, + 0.652011f, 0.652083f, 0.652156f, 0.652229f, 0.652301f, 0.652374f, 0.652447f, 0.652519f, + 0.652592f, 0.652665f, 0.652737f, 0.652810f, 0.652882f, 0.652955f, 0.653028f, 0.653100f, + 0.653173f, 0.653245f, 0.653318f, 0.653391f, 0.653463f, 0.653536f, 0.653608f, 0.653681f, + 0.653753f, 0.653826f, 0.653899f, 0.653971f, 0.654044f, 0.654116f, 0.654189f, 0.654261f, + 0.654334f, 0.654406f, 0.654479f, 0.654551f, 0.654624f, 0.654696f, 0.654769f, 0.654841f, + 0.654913f, 0.654986f, 0.655058f, 0.655131f, 0.655203f, 0.655276f, 0.655348f, 0.655420f, + 0.655493f, 0.655565f, 0.655638f, 0.655710f, 0.655782f, 0.655855f, 0.655927f, 0.656000f, + 0.656072f, 0.656144f, 0.656217f, 0.656289f, 0.656361f, 0.656434f, 0.656506f, 0.656578f, + 0.656651f, 0.656723f, 0.656795f, 0.656867f, 0.656940f, 0.657012f, 0.657084f, 0.657157f, + 0.657229f, 0.657301f, 0.657373f, 0.657446f, 0.657518f, 0.657590f, 0.657662f, 0.657734f, + 0.657807f, 0.657879f, 0.657951f, 0.658023f, 0.658095f, 0.658168f, 0.658240f, 0.658312f, + 0.658384f, 0.658456f, 0.658529f, 0.658601f, 0.658673f, 0.658745f, 0.658817f, 0.658889f, + 0.658961f, 0.659033f, 0.659105f, 0.659178f, 0.659250f, 0.659322f, 0.659394f, 0.659466f, + 0.659538f, 0.659610f, 0.659682f, 0.659754f, 0.659826f, 0.659898f, 0.659970f, 0.660042f, + 0.660114f, 0.660186f, 0.660258f, 0.660330f, 0.660402f, 0.660474f, 0.660546f, 0.660618f, + 0.660690f, 0.660762f, 0.660834f, 0.660906f, 0.660978f, 0.661050f, 0.661122f, 0.661194f, + 0.661266f, 0.661338f, 0.661410f, 0.661482f, 0.661553f, 0.661625f, 0.661697f, 0.661769f, + 0.661841f, 0.661913f, 0.661985f, 0.662057f, 0.662128f, 0.662200f, 0.662272f, 0.662344f, + 0.662416f, 0.662488f, 0.662559f, 0.662631f, 0.662703f, 0.662775f, 0.662847f, 0.662918f, + 0.662990f, 0.663062f, 0.663134f, 0.663205f, 0.663277f, 0.663349f, 0.663421f, 0.663492f, + 0.663564f, 0.663636f, 0.663708f, 0.663779f, 0.663851f, 0.663923f, 0.663994f, 0.664066f, + 0.664138f, 0.664209f, 0.664281f, 0.664353f, 0.664424f, 0.664496f, 0.664568f, 0.664639f, + 0.664711f, 0.664783f, 0.664854f, 0.664926f, 0.664997f, 0.665069f, 0.665141f, 0.665212f, + 0.665284f, 0.665355f, 0.665427f, 0.665498f, 0.665570f, 0.665642f, 0.665713f, 0.665785f, + 0.665856f, 0.665928f, 0.665999f, 0.666071f, 0.666142f, 0.666214f, 0.666285f, 0.666357f, + 0.666428f, 0.666500f, 0.666571f, 0.666643f, 0.666714f, 0.666786f, 0.666857f, 0.666928f, + 0.667000f, 0.667071f, 0.667143f, 0.667214f, 0.667286f, 0.667357f, 0.667428f, 0.667500f, + 0.667571f, 0.667643f, 0.667714f, 0.667785f, 0.667857f, 0.667928f, 0.667999f, 0.668071f, + 0.668142f, 0.668213f, 0.668285f, 0.668356f, 0.668427f, 0.668499f, 0.668570f, 0.668641f, + 0.668712f, 0.668784f, 0.668855f, 0.668926f, 0.668998f, 0.669069f, 0.669140f, 0.669211f, + 0.669283f, 0.669354f, 0.669425f, 0.669496f, 0.669567f, 0.669639f, 0.669710f, 0.669781f, + 0.669852f, 0.669923f, 0.669995f, 0.670066f, 0.670137f, 0.670208f, 0.670279f, 0.670350f, + 0.670422f, 0.670493f, 0.670564f, 0.670635f, 0.670706f, 0.670777f, 0.670848f, 0.670919f, + 0.670990f, 0.671062f, 0.671133f, 0.671204f, 0.671275f, 0.671346f, 0.671417f, 0.671488f, + 0.671559f, 0.671630f, 0.671701f, 0.671772f, 0.671843f, 0.671914f, 0.671985f, 0.672056f, + 0.672127f, 0.672198f, 0.672269f, 0.672340f, 0.672411f, 0.672482f, 0.672553f, 0.672624f, + 0.672695f, 0.672766f, 0.672837f, 0.672908f, 0.672978f, 0.673049f, 0.673120f, 0.673191f, + 0.673262f, 0.673333f, 0.673404f, 0.673475f, 0.673546f, 0.673616f, 0.673687f, 0.673758f, + 0.673829f, 0.673900f, 0.673971f, 0.674042f, 0.674112f, 0.674183f, 0.674254f, 0.674325f, + 0.674396f, 0.674466f, 0.674537f, 0.674608f, 0.674679f, 0.674749f, 0.674820f, 0.674891f, + 0.674962f, 0.675032f, 0.675103f, 0.675174f, 0.675245f, 0.675315f, 0.675386f, 0.675457f, + 0.675527f, 0.675598f, 0.675669f, 0.675739f, 0.675810f, 0.675881f, 0.675951f, 0.676022f, + 0.676093f, 0.676163f, 0.676234f, 0.676305f, 0.676375f, 0.676446f, 0.676516f, 0.676587f, + 0.676658f, 0.676728f, 0.676799f, 0.676869f, 0.676940f, 0.677011f, 0.677081f, 0.677152f, + 0.677222f, 0.677293f, 0.677363f, 0.677434f, 0.677504f, 0.677575f, 0.677645f, 0.677716f, + 0.677786f, 0.677857f, 0.677927f, 0.677998f, 0.678068f, 0.678139f, 0.678209f, 0.678280f, + 0.678350f, 0.678420f, 0.678491f, 0.678561f, 0.678632f, 0.678702f, 0.678773f, 0.678843f, + 0.678913f, 0.678984f, 0.679054f, 0.679125f, 0.679195f, 0.679265f, 0.679336f, 0.679406f, + 0.679476f, 0.679547f, 0.679617f, 0.679687f, 0.679758f, 0.679828f, 0.679898f, 0.679969f, + 0.680039f, 0.680109f, 0.680179f, 0.680250f, 0.680320f, 0.680390f, 0.680461f, 0.680531f, + 0.680601f, 0.680671f, 0.680741f, 0.680812f, 0.680882f, 0.680952f, 0.681022f, 0.681093f, + 0.681163f, 0.681233f, 0.681303f, 0.681373f, 0.681443f, 0.681514f, 0.681584f, 0.681654f, + 0.681724f, 0.681794f, 0.681864f, 0.681934f, 0.682005f, 0.682075f, 0.682145f, 0.682215f, + 0.682285f, 0.682355f, 0.682425f, 0.682495f, 0.682565f, 0.682635f, 0.682705f, 0.682775f, + 0.682846f, 0.682916f, 0.682986f, 0.683056f, 0.683126f, 0.683196f, 0.683266f, 0.683336f, + 0.683406f, 0.683476f, 0.683546f, 0.683616f, 0.683686f, 0.683756f, 0.683825f, 0.683895f, + 0.683965f, 0.684035f, 0.684105f, 0.684175f, 0.684245f, 0.684315f, 0.684385f, 0.684455f, + 0.684525f, 0.684595f, 0.684664f, 0.684734f, 0.684804f, 0.684874f, 0.684944f, 0.685014f, + 0.685084f, 0.685153f, 0.685223f, 0.685293f, 0.685363f, 0.685433f, 0.685503f, 0.685572f, + 0.685642f, 0.685712f, 0.685782f, 0.685852f, 0.685921f, 0.685991f, 0.686061f, 0.686131f, + 0.686200f, 0.686270f, 0.686340f, 0.686409f, 0.686479f, 0.686549f, 0.686619f, 0.686688f, + 0.686758f, 0.686828f, 0.686897f, 0.686967f, 0.687037f, 0.687106f, 0.687176f, 0.687246f, + 0.687315f, 0.687385f, 0.687455f, 0.687524f, 0.687594f, 0.687663f, 0.687733f, 0.687803f, + 0.687872f, 0.687942f, 0.688011f, 0.688081f, 0.688151f, 0.688220f, 0.688290f, 0.688359f, + 0.688429f, 0.688498f, 0.688568f, 0.688637f, 0.688707f, 0.688776f, 0.688846f, 0.688915f, + 0.688985f, 0.689054f, 0.689124f, 0.689193f, 0.689263f, 0.689332f, 0.689402f, 0.689471f, + 0.689541f, 0.689610f, 0.689679f, 0.689749f, 0.689818f, 0.689888f, 0.689957f, 0.690026f, + 0.690096f, 0.690165f, 0.690235f, 0.690304f, 0.690373f, 0.690443f, 0.690512f, 0.690581f, + 0.690651f, 0.690720f, 0.690789f, 0.690859f, 0.690928f, 0.690997f, 0.691067f, 0.691136f, + 0.691205f, 0.691274f, 0.691344f, 0.691413f, 0.691482f, 0.691552f, 0.691621f, 0.691690f, + 0.691759f, 0.691828f, 0.691898f, 0.691967f, 0.692036f, 0.692105f, 0.692175f, 0.692244f, + 0.692313f, 0.692382f, 0.692451f, 0.692520f, 0.692590f, 0.692659f, 0.692728f, 0.692797f, + 0.692866f, 0.692935f, 0.693004f, 0.693074f, 0.693143f, 0.693212f, 0.693281f, 0.693350f, + 0.693419f, 0.693488f, 0.693557f, 0.693626f, 0.693695f, 0.693764f, 0.693833f, 0.693902f, + 0.693971f, 0.694040f, 0.694109f, 0.694179f, 0.694248f, 0.694317f, 0.694386f, 0.694454f, + 0.694524f, 0.694592f, 0.694661f, 0.694730f, 0.694799f, 0.694868f, 0.694937f, 0.695006f, + 0.695075f, 0.695144f, 0.695213f, 0.695282f, 0.695351f, 0.695420f, 0.695489f, 0.695557f, + 0.695626f, 0.695695f, 0.695764f, 0.695833f, 0.695902f, 0.695971f, 0.696039f, 0.696108f, + 0.696177f, 0.696246f, 0.696315f, 0.696384f, 0.696452f, 0.696521f, 0.696590f, 0.696659f, + 0.696728f, 0.696796f, 0.696865f, 0.696934f, 0.697003f, 0.697071f, 0.697140f, 0.697209f, + 0.697277f, 0.697346f, 0.697415f, 0.697484f, 0.697552f, 0.697621f, 0.697690f, 0.697758f, + 0.697827f, 0.697896f, 0.697964f, 0.698033f, 0.698102f, 0.698170f, 0.698239f, 0.698308f, + 0.698376f, 0.698445f, 0.698513f, 0.698582f, 0.698651f, 0.698719f, 0.698788f, 0.698856f, + 0.698925f, 0.698994f, 0.699062f, 0.699131f, 0.699199f, 0.699268f, 0.699336f, 0.699405f, + 0.699473f, 0.699542f, 0.699610f, 0.699679f, 0.699747f, 0.699816f, 0.699884f, 0.699953f, + 0.700021f, 0.700090f, 0.700158f, 0.700227f, 0.700295f, 0.700364f, 0.700432f, 0.700500f, + 0.700569f, 0.700637f, 0.700706f, 0.700774f, 0.700842f, 0.700911f, 0.700979f, 0.701048f, + 0.701116f, 0.701184f, 0.701253f, 0.701321f, 0.701389f, 0.701458f, 0.701526f, 0.701594f, + 0.701663f, 0.701731f, 0.701799f, 0.701868f, 0.701936f, 0.702004f, 0.702072f, 0.702141f, + 0.702209f, 0.702277f, 0.702345f, 0.702414f, 0.702482f, 0.702550f, 0.702618f, 0.702687f, + 0.702755f, 0.702823f, 0.702891f, 0.702959f, 0.703028f, 0.703096f, 0.703164f, 0.703232f, + 0.703300f, 0.703368f, 0.703436f, 0.703505f, 0.703573f, 0.703641f, 0.703709f, 0.703777f, + 0.703845f, 0.703913f, 0.703981f, 0.704050f, 0.704118f, 0.704186f, 0.704254f, 0.704322f, + 0.704390f, 0.704458f, 0.704526f, 0.704594f, 0.704662f, 0.704730f, 0.704798f, 0.704866f, + 0.704934f, 0.705002f, 0.705070f, 0.705138f, 0.705206f, 0.705274f, 0.705342f, 0.705410f, + 0.705478f, 0.705546f, 0.705614f, 0.705682f, 0.705750f, 0.705818f, 0.705885f, 0.705953f, + 0.706021f, 0.706089f, 0.706157f, 0.706225f, 0.706293f, 0.706361f, 0.706429f, 0.706496f, + 0.706564f, 0.706632f, 0.706700f, 0.706768f, 0.706836f, 0.706903f, 0.706971f, 0.707039f, + 0.707107f, 0.707175f, 0.707242f, 0.707310f, 0.707378f, 0.707446f, 0.707513f, 0.707581f, + 0.707649f, 0.707717f, 0.707784f, 0.707852f, 0.707920f, 0.707988f, 0.708055f, 0.708123f, + 0.708191f, 0.708258f, 0.708326f, 0.708394f, 0.708461f, 0.708529f, 0.708597f, 0.708664f, + 0.708732f, 0.708800f, 0.708867f, 0.708935f, 0.709002f, 0.709070f, 0.709138f, 0.709205f, + 0.709273f, 0.709340f, 0.709408f, 0.709476f, 0.709543f, 0.709611f, 0.709678f, 0.709746f, + 0.709813f, 0.709881f, 0.709948f, 0.710016f, 0.710083f, 0.710151f, 0.710218f, 0.710286f, + 0.710353f, 0.710421f, 0.710488f, 0.710556f, 0.710623f, 0.710691f, 0.710758f, 0.710826f, + 0.710893f, 0.710960f, 0.711028f, 0.711095f, 0.711163f, 0.711230f, 0.711297f, 0.711365f, + 0.711432f, 0.711500f, 0.711567f, 0.711634f, 0.711702f, 0.711769f, 0.711836f, 0.711904f, + 0.711971f, 0.712038f, 0.712106f, 0.712173f, 0.712240f, 0.712308f, 0.712375f, 0.712442f, + 0.712509f, 0.712577f, 0.712644f, 0.712711f, 0.712778f, 0.712846f, 0.712913f, 0.712980f, + 0.713047f, 0.713115f, 0.713182f, 0.713249f, 0.713316f, 0.713383f, 0.713451f, 0.713518f, + 0.713585f, 0.713652f, 0.713719f, 0.713786f, 0.713853f, 0.713921f, 0.713988f, 0.714055f, + 0.714122f, 0.714189f, 0.714256f, 0.714323f, 0.714390f, 0.714457f, 0.714525f, 0.714592f, + 0.714659f, 0.714726f, 0.714793f, 0.714860f, 0.714927f, 0.714994f, 0.715061f, 0.715128f, + 0.715195f, 0.715262f, 0.715329f, 0.715396f, 0.715463f, 0.715530f, 0.715597f, 0.715664f, + 0.715731f, 0.715798f, 0.715865f, 0.715932f, 0.715999f, 0.716066f, 0.716132f, 0.716199f, + 0.716266f, 0.716333f, 0.716400f, 0.716467f, 0.716534f, 0.716601f, 0.716668f, 0.716734f, + 0.716801f, 0.716868f, 0.716935f, 0.717002f, 0.717069f, 0.717135f, 0.717202f, 0.717269f, + 0.717336f, 0.717403f, 0.717469f, 0.717536f, 0.717603f, 0.717670f, 0.717737f, 0.717803f, + 0.717870f, 0.717937f, 0.718004f, 0.718070f, 0.718137f, 0.718204f, 0.718270f, 0.718337f, + 0.718404f, 0.718471f, 0.718537f, 0.718604f, 0.718670f, 0.718737f, 0.718804f, 0.718870f, + 0.718937f, 0.719004f, 0.719070f, 0.719137f, 0.719204f, 0.719270f, 0.719337f, 0.719403f, + 0.719470f, 0.719537f, 0.719603f, 0.719670f, 0.719736f, 0.719803f, 0.719869f, 0.719936f, + 0.720003f, 0.720069f, 0.720136f, 0.720202f, 0.720269f, 0.720335f, 0.720402f, 0.720468f, + 0.720535f, 0.720601f, 0.720668f, 0.720734f, 0.720800f, 0.720867f, 0.720933f, 0.721000f, + 0.721066f, 0.721133f, 0.721199f, 0.721265f, 0.721332f, 0.721398f, 0.721465f, 0.721531f, + 0.721597f, 0.721664f, 0.721730f, 0.721797f, 0.721863f, 0.721929f, 0.721996f, 0.722062f, + 0.722128f, 0.722194f, 0.722261f, 0.722327f, 0.722393f, 0.722460f, 0.722526f, 0.722592f, + 0.722659f, 0.722725f, 0.722791f, 0.722857f, 0.722924f, 0.722990f, 0.723056f, 0.723122f, + 0.723188f, 0.723255f, 0.723321f, 0.723387f, 0.723453f, 0.723520f, 0.723586f, 0.723652f, + 0.723718f, 0.723784f, 0.723850f, 0.723916f, 0.723983f, 0.724049f, 0.724115f, 0.724181f, + 0.724247f, 0.724313f, 0.724379f, 0.724445f, 0.724511f, 0.724578f, 0.724644f, 0.724710f, + 0.724776f, 0.724842f, 0.724908f, 0.724974f, 0.725040f, 0.725106f, 0.725172f, 0.725238f, + 0.725304f, 0.725370f, 0.725436f, 0.725502f, 0.725568f, 0.725634f, 0.725700f, 0.725766f, + 0.725832f, 0.725898f, 0.725964f, 0.726030f, 0.726095f, 0.726161f, 0.726227f, 0.726293f, + 0.726359f, 0.726425f, 0.726491f, 0.726557f, 0.726623f, 0.726689f, 0.726754f, 0.726820f, + 0.726886f, 0.726952f, 0.727018f, 0.727084f, 0.727149f, 0.727215f, 0.727281f, 0.727347f, + 0.727413f, 0.727478f, 0.727544f, 0.727610f, 0.727676f, 0.727741f, 0.727807f, 0.727873f, + 0.727939f, 0.728004f, 0.728070f, 0.728136f, 0.728202f, 0.728267f, 0.728333f, 0.728399f, + 0.728464f, 0.728530f, 0.728596f, 0.728661f, 0.728727f, 0.728793f, 0.728858f, 0.728924f, + 0.728990f, 0.729055f, 0.729121f, 0.729186f, 0.729252f, 0.729318f, 0.729383f, 0.729449f, + 0.729514f, 0.729580f, 0.729646f, 0.729711f, 0.729777f, 0.729842f, 0.729908f, 0.729973f, + 0.730039f, 0.730104f, 0.730170f, 0.730235f, 0.730301f, 0.730366f, 0.730432f, 0.730497f, + 0.730563f, 0.730628f, 0.730694f, 0.730759f, 0.730825f, 0.730890f, 0.730955f, 0.731021f, + 0.731086f, 0.731152f, 0.731217f, 0.731282f, 0.731348f, 0.731413f, 0.731479f, 0.731544f, + 0.731609f, 0.731675f, 0.731740f, 0.731805f, 0.731871f, 0.731936f, 0.732001f, 0.732067f, + 0.732132f, 0.732197f, 0.732263f, 0.732328f, 0.732393f, 0.732458f, 0.732524f, 0.732589f, + 0.732654f, 0.732720f, 0.732785f, 0.732850f, 0.732915f, 0.732980f, 0.733046f, 0.733111f, + 0.733176f, 0.733241f, 0.733306f, 0.733372f, 0.733437f, 0.733502f, 0.733567f, 0.733632f, + 0.733697f, 0.733763f, 0.733828f, 0.733893f, 0.733958f, 0.734023f, 0.734088f, 0.734153f, + 0.734218f, 0.734283f, 0.734349f, 0.734414f, 0.734479f, 0.734544f, 0.734609f, 0.734674f, + 0.734739f, 0.734804f, 0.734869f, 0.734934f, 0.734999f, 0.735064f, 0.735129f, 0.735194f, + 0.735259f, 0.735324f, 0.735389f, 0.735454f, 0.735519f, 0.735584f, 0.735649f, 0.735714f, + 0.735779f, 0.735844f, 0.735908f, 0.735973f, 0.736038f, 0.736103f, 0.736168f, 0.736233f, + 0.736298f, 0.736363f, 0.736428f, 0.736492f, 0.736557f, 0.736622f, 0.736687f, 0.736752f, + 0.736817f, 0.736881f, 0.736946f, 0.737011f, 0.737076f, 0.737141f, 0.737205f, 0.737270f, + 0.737335f, 0.737400f, 0.737464f, 0.737529f, 0.737594f, 0.737659f, 0.737723f, 0.737788f, + 0.737853f, 0.737918f, 0.737982f, 0.738047f, 0.738112f, 0.738176f, 0.738241f, 0.738306f, + 0.738370f, 0.738435f, 0.738500f, 0.738564f, 0.738629f, 0.738693f, 0.738758f, 0.738823f, + 0.738887f, 0.738952f, 0.739017f, 0.739081f, 0.739146f, 0.739210f, 0.739275f, 0.739339f, + 0.739404f, 0.739468f, 0.739533f, 0.739598f, 0.739662f, 0.739727f, 0.739791f, 0.739856f, + 0.739920f, 0.739985f, 0.740049f, 0.740114f, 0.740178f, 0.740242f, 0.740307f, 0.740371f, + 0.740436f, 0.740500f, 0.740565f, 0.740629f, 0.740694f, 0.740758f, 0.740822f, 0.740887f, + 0.740951f, 0.741015f, 0.741080f, 0.741144f, 0.741209f, 0.741273f, 0.741337f, 0.741402f, + 0.741466f, 0.741530f, 0.741595f, 0.741659f, 0.741723f, 0.741788f, 0.741852f, 0.741916f, + 0.741980f, 0.742045f, 0.742109f, 0.742173f, 0.742237f, 0.742302f, 0.742366f, 0.742430f, + 0.742494f, 0.742559f, 0.742623f, 0.742687f, 0.742751f, 0.742815f, 0.742880f, 0.742944f, + 0.743008f, 0.743072f, 0.743136f, 0.743200f, 0.743265f, 0.743329f, 0.743393f, 0.743457f, + 0.743521f, 0.743585f, 0.743649f, 0.743713f, 0.743777f, 0.743842f, 0.743906f, 0.743970f, + 0.744034f, 0.744098f, 0.744162f, 0.744226f, 0.744290f, 0.744354f, 0.744418f, 0.744482f, + 0.744546f, 0.744610f, 0.744674f, 0.744738f, 0.744802f, 0.744866f, 0.744930f, 0.744994f, + 0.745058f, 0.745122f, 0.745186f, 0.745250f, 0.745314f, 0.745377f, 0.745441f, 0.745505f, + 0.745569f, 0.745633f, 0.745697f, 0.745761f, 0.745825f, 0.745889f, 0.745952f, 0.746016f, + 0.746080f, 0.746144f, 0.746208f, 0.746272f, 0.746335f, 0.746399f, 0.746463f, 0.746527f, + 0.746591f, 0.746654f, 0.746718f, 0.746782f, 0.746846f, 0.746909f, 0.746973f, 0.747037f, + 0.747101f, 0.747164f, 0.747228f, 0.747292f, 0.747355f, 0.747419f, 0.747483f, 0.747547f, + 0.747610f, 0.747674f, 0.747738f, 0.747801f, 0.747865f, 0.747929f, 0.747992f, 0.748056f, + 0.748119f, 0.748183f, 0.748247f, 0.748310f, 0.748374f, 0.748437f, 0.748501f, 0.748565f, + 0.748628f, 0.748692f, 0.748755f, 0.748819f, 0.748882f, 0.748946f, 0.749009f, 0.749073f, + 0.749136f, 0.749200f, 0.749263f, 0.749327f, 0.749390f, 0.749454f, 0.749517f, 0.749581f, + 0.749644f, 0.749708f, 0.749771f, 0.749835f, 0.749898f, 0.749961f, 0.750025f, 0.750088f, + 0.750152f, 0.750215f, 0.750278f, 0.750342f, 0.750405f, 0.750469f, 0.750532f, 0.750595f, + 0.750659f, 0.750722f, 0.750785f, 0.750849f, 0.750912f, 0.750975f, 0.751039f, 0.751102f, + 0.751165f, 0.751228f, 0.751292f, 0.751355f, 0.751418f, 0.751481f, 0.751545f, 0.751608f, + 0.751671f, 0.751734f, 0.751798f, 0.751861f, 0.751924f, 0.751987f, 0.752050f, 0.752114f, + 0.752177f, 0.752240f, 0.752303f, 0.752366f, 0.752429f, 0.752493f, 0.752556f, 0.752619f, + 0.752682f, 0.752745f, 0.752808f, 0.752871f, 0.752934f, 0.752998f, 0.753061f, 0.753124f, + 0.753187f, 0.753250f, 0.753313f, 0.753376f, 0.753439f, 0.753502f, 0.753565f, 0.753628f, + 0.753691f, 0.753754f, 0.753817f, 0.753880f, 0.753943f, 0.754006f, 0.754069f, 0.754132f, + 0.754195f, 0.754258f, 0.754321f, 0.754384f, 0.754447f, 0.754510f, 0.754573f, 0.754636f, + 0.754698f, 0.754761f, 0.754824f, 0.754887f, 0.754950f, 0.755013f, 0.755076f, 0.755139f, + 0.755201f, 0.755264f, 0.755327f, 0.755390f, 0.755453f, 0.755516f, 0.755578f, 0.755641f, + 0.755704f, 0.755767f, 0.755829f, 0.755892f, 0.755955f, 0.756018f, 0.756081f, 0.756143f, + 0.756206f, 0.756269f, 0.756331f, 0.756394f, 0.756457f, 0.756520f, 0.756582f, 0.756645f, + 0.756708f, 0.756770f, 0.756833f, 0.756896f, 0.756958f, 0.757021f, 0.757084f, 0.757146f, + 0.757209f, 0.757271f, 0.757334f, 0.757397f, 0.757459f, 0.757522f, 0.757584f, 0.757647f, + 0.757710f, 0.757772f, 0.757835f, 0.757897f, 0.757960f, 0.758022f, 0.758085f, 0.758147f, + 0.758210f, 0.758272f, 0.758335f, 0.758397f, 0.758460f, 0.758522f, 0.758585f, 0.758647f, + 0.758710f, 0.758772f, 0.758835f, 0.758897f, 0.758960f, 0.759022f, 0.759084f, 0.759147f, + 0.759209f, 0.759272f, 0.759334f, 0.759396f, 0.759459f, 0.759521f, 0.759583f, 0.759646f, + 0.759708f, 0.759771f, 0.759833f, 0.759895f, 0.759957f, 0.760020f, 0.760082f, 0.760144f, + 0.760207f, 0.760269f, 0.760331f, 0.760394f, 0.760456f, 0.760518f, 0.760580f, 0.760643f, + 0.760705f, 0.760767f, 0.760829f, 0.760891f, 0.760954f, 0.761016f, 0.761078f, 0.761140f, + 0.761202f, 0.761265f, 0.761327f, 0.761389f, 0.761451f, 0.761513f, 0.761575f, 0.761637f, + 0.761700f, 0.761762f, 0.761824f, 0.761886f, 0.761948f, 0.762010f, 0.762072f, 0.762134f, + 0.762196f, 0.762258f, 0.762320f, 0.762382f, 0.762444f, 0.762507f, 0.762569f, 0.762631f, + 0.762693f, 0.762755f, 0.762817f, 0.762879f, 0.762941f, 0.763003f, 0.763065f, 0.763126f, + 0.763188f, 0.763250f, 0.763312f, 0.763374f, 0.763436f, 0.763498f, 0.763560f, 0.763622f, + 0.763684f, 0.763746f, 0.763808f, 0.763869f, 0.763931f, 0.763993f, 0.764055f, 0.764117f, + 0.764179f, 0.764241f, 0.764302f, 0.764364f, 0.764426f, 0.764488f, 0.764550f, 0.764611f, + 0.764673f, 0.764735f, 0.764797f, 0.764859f, 0.764920f, 0.764982f, 0.765044f, 0.765106f, + 0.765167f, 0.765229f, 0.765291f, 0.765352f, 0.765414f, 0.765476f, 0.765538f, 0.765599f, + 0.765661f, 0.765723f, 0.765784f, 0.765846f, 0.765907f, 0.765969f, 0.766031f, 0.766092f, + 0.766154f, 0.766216f, 0.766277f, 0.766339f, 0.766400f, 0.766462f, 0.766524f, 0.766585f, + 0.766647f, 0.766708f, 0.766770f, 0.766831f, 0.766893f, 0.766954f, 0.767016f, 0.767077f, + 0.767139f, 0.767200f, 0.767262f, 0.767323f, 0.767385f, 0.767446f, 0.767508f, 0.767569f, + 0.767631f, 0.767692f, 0.767754f, 0.767815f, 0.767876f, 0.767938f, 0.767999f, 0.768061f, + 0.768122f, 0.768183f, 0.768245f, 0.768306f, 0.768368f, 0.768429f, 0.768490f, 0.768552f, + 0.768613f, 0.768674f, 0.768736f, 0.768797f, 0.768858f, 0.768919f, 0.768981f, 0.769042f, + 0.769103f, 0.769165f, 0.769226f, 0.769287f, 0.769348f, 0.769410f, 0.769471f, 0.769532f, + 0.769593f, 0.769655f, 0.769716f, 0.769777f, 0.769838f, 0.769899f, 0.769961f, 0.770022f, + 0.770083f, 0.770144f, 0.770205f, 0.770266f, 0.770327f, 0.770389f, 0.770450f, 0.770511f, + 0.770572f, 0.770633f, 0.770694f, 0.770755f, 0.770816f, 0.770877f, 0.770938f, 0.770999f, + 0.771061f, 0.771122f, 0.771183f, 0.771244f, 0.771305f, 0.771366f, 0.771427f, 0.771488f, + 0.771549f, 0.771610f, 0.771671f, 0.771732f, 0.771793f, 0.771854f, 0.771915f, 0.771975f, + 0.772036f, 0.772097f, 0.772158f, 0.772219f, 0.772280f, 0.772341f, 0.772402f, 0.772463f, + 0.772524f, 0.772584f, 0.772645f, 0.772706f, 0.772767f, 0.772828f, 0.772889f, 0.772950f, + 0.773010f, 0.773071f, 0.773132f, 0.773193f, 0.773254f, 0.773314f, 0.773375f, 0.773436f, + 0.773497f, 0.773558f, 0.773618f, 0.773679f, 0.773740f, 0.773801f, 0.773861f, 0.773922f, + 0.773983f, 0.774043f, 0.774104f, 0.774165f, 0.774225f, 0.774286f, 0.774347f, 0.774407f, + 0.774468f, 0.774529f, 0.774589f, 0.774650f, 0.774711f, 0.774771f, 0.774832f, 0.774893f, + 0.774953f, 0.775014f, 0.775074f, 0.775135f, 0.775195f, 0.775256f, 0.775317f, 0.775377f, + 0.775438f, 0.775498f, 0.775559f, 0.775619f, 0.775680f, 0.775740f, 0.775801f, 0.775861f, + 0.775922f, 0.775982f, 0.776043f, 0.776103f, 0.776164f, 0.776224f, 0.776284f, 0.776345f, + 0.776405f, 0.776466f, 0.776526f, 0.776587f, 0.776647f, 0.776707f, 0.776768f, 0.776828f, + 0.776888f, 0.776949f, 0.777009f, 0.777070f, 0.777130f, 0.777190f, 0.777251f, 0.777311f, + 0.777371f, 0.777431f, 0.777492f, 0.777552f, 0.777612f, 0.777673f, 0.777733f, 0.777793f, + 0.777853f, 0.777914f, 0.777974f, 0.778034f, 0.778094f, 0.778155f, 0.778215f, 0.778275f, + 0.778335f, 0.778395f, 0.778456f, 0.778516f, 0.778576f, 0.778636f, 0.778696f, 0.778756f, + 0.778817f, 0.778877f, 0.778937f, 0.778997f, 0.779057f, 0.779117f, 0.779177f, 0.779237f, + 0.779297f, 0.779357f, 0.779418f, 0.779478f, 0.779538f, 0.779598f, 0.779658f, 0.779718f, + 0.779778f, 0.779838f, 0.779898f, 0.779958f, 0.780018f, 0.780078f, 0.780138f, 0.780198f, + 0.780258f, 0.780318f, 0.780378f, 0.780438f, 0.780498f, 0.780557f, 0.780617f, 0.780677f, + 0.780737f, 0.780797f, 0.780857f, 0.780917f, 0.780977f, 0.781037f, 0.781097f, 0.781156f, + 0.781216f, 0.781276f, 0.781336f, 0.781396f, 0.781456f, 0.781515f, 0.781575f, 0.781635f, + 0.781695f, 0.781755f, 0.781814f, 0.781874f, 0.781934f, 0.781994f, 0.782053f, 0.782113f, + 0.782173f, 0.782233f, 0.782292f, 0.782352f, 0.782412f, 0.782472f, 0.782531f, 0.782591f, + 0.782651f, 0.782710f, 0.782770f, 0.782830f, 0.782889f, 0.782949f, 0.783009f, 0.783068f, + 0.783128f, 0.783187f, 0.783247f, 0.783307f, 0.783366f, 0.783426f, 0.783485f, 0.783545f, + 0.783605f, 0.783664f, 0.783724f, 0.783783f, 0.783843f, 0.783902f, 0.783962f, 0.784021f, + 0.784081f, 0.784140f, 0.784200f, 0.784259f, 0.784319f, 0.784378f, 0.784438f, 0.784497f, + 0.784557f, 0.784616f, 0.784675f, 0.784735f, 0.784794f, 0.784854f, 0.784913f, 0.784973f, + 0.785032f, 0.785091f, 0.785151f, 0.785210f, 0.785269f, 0.785329f, 0.785388f, 0.785447f, + 0.785507f, 0.785566f, 0.785625f, 0.785685f, 0.785744f, 0.785803f, 0.785863f, 0.785922f, + 0.785981f, 0.786041f, 0.786100f, 0.786159f, 0.786218f, 0.786278f, 0.786337f, 0.786396f, + 0.786455f, 0.786514f, 0.786574f, 0.786633f, 0.786692f, 0.786751f, 0.786810f, 0.786870f, + 0.786929f, 0.786988f, 0.787047f, 0.787106f, 0.787165f, 0.787224f, 0.787284f, 0.787343f, + 0.787402f, 0.787461f, 0.787520f, 0.787579f, 0.787638f, 0.787697f, 0.787756f, 0.787815f, + 0.787874f, 0.787933f, 0.787992f, 0.788051f, 0.788110f, 0.788169f, 0.788228f, 0.788287f, + 0.788346f, 0.788405f, 0.788464f, 0.788523f, 0.788582f, 0.788641f, 0.788700f, 0.788759f, + 0.788818f, 0.788877f, 0.788936f, 0.788995f, 0.789054f, 0.789113f, 0.789172f, 0.789230f, + 0.789289f, 0.789348f, 0.789407f, 0.789466f, 0.789525f, 0.789584f, 0.789642f, 0.789701f, + 0.789760f, 0.789819f, 0.789878f, 0.789936f, 0.789995f, 0.790054f, 0.790113f, 0.790171f, + 0.790230f, 0.790289f, 0.790348f, 0.790406f, 0.790465f, 0.790524f, 0.790583f, 0.790641f, + 0.790700f, 0.790759f, 0.790817f, 0.790876f, 0.790935f, 0.790993f, 0.791052f, 0.791111f, + 0.791169f, 0.791228f, 0.791287f, 0.791345f, 0.791404f, 0.791462f, 0.791521f, 0.791580f, + 0.791638f, 0.791697f, 0.791755f, 0.791814f, 0.791872f, 0.791931f, 0.791990f, 0.792048f, + 0.792107f, 0.792165f, 0.792224f, 0.792282f, 0.792341f, 0.792399f, 0.792458f, 0.792516f, + 0.792575f, 0.792633f, 0.792691f, 0.792750f, 0.792808f, 0.792867f, 0.792925f, 0.792984f, + 0.793042f, 0.793100f, 0.793159f, 0.793217f, 0.793276f, 0.793334f, 0.793392f, 0.793451f, + 0.793509f, 0.793567f, 0.793626f, 0.793684f, 0.793742f, 0.793801f, 0.793859f, 0.793917f, + 0.793975f, 0.794034f, 0.794092f, 0.794150f, 0.794209f, 0.794267f, 0.794325f, 0.794383f, + 0.794442f, 0.794500f, 0.794558f, 0.794616f, 0.794674f, 0.794733f, 0.794791f, 0.794849f, + 0.794907f, 0.794965f, 0.795023f, 0.795082f, 0.795140f, 0.795198f, 0.795256f, 0.795314f, + 0.795372f, 0.795430f, 0.795488f, 0.795547f, 0.795605f, 0.795663f, 0.795721f, 0.795779f, + 0.795837f, 0.795895f, 0.795953f, 0.796011f, 0.796069f, 0.796127f, 0.796185f, 0.796243f, + 0.796301f, 0.796359f, 0.796417f, 0.796475f, 0.796533f, 0.796591f, 0.796649f, 0.796707f, + 0.796765f, 0.796823f, 0.796881f, 0.796939f, 0.796996f, 0.797054f, 0.797112f, 0.797170f, + 0.797228f, 0.797286f, 0.797344f, 0.797402f, 0.797459f, 0.797517f, 0.797575f, 0.797633f, + 0.797691f, 0.797749f, 0.797806f, 0.797864f, 0.797922f, 0.797980f, 0.798038f, 0.798095f, + 0.798153f, 0.798211f, 0.798269f, 0.798326f, 0.798384f, 0.798442f, 0.798500f, 0.798557f, + 0.798615f, 0.798673f, 0.798730f, 0.798788f, 0.798846f, 0.798903f, 0.798961f, 0.799019f, + 0.799076f, 0.799134f, 0.799192f, 0.799249f, 0.799307f, 0.799365f, 0.799422f, 0.799480f, + 0.799537f, 0.799595f, 0.799652f, 0.799710f, 0.799768f, 0.799825f, 0.799883f, 0.799940f, + 0.799998f, 0.800055f, 0.800113f, 0.800170f, 0.800228f, 0.800285f, 0.800343f, 0.800400f, + 0.800458f, 0.800515f, 0.800573f, 0.800630f, 0.800687f, 0.800745f, 0.800802f, 0.800860f, + 0.800917f, 0.800975f, 0.801032f, 0.801089f, 0.801147f, 0.801204f, 0.801261f, 0.801319f, + 0.801376f, 0.801434f, 0.801491f, 0.801548f, 0.801606f, 0.801663f, 0.801720f, 0.801777f, + 0.801835f, 0.801892f, 0.801949f, 0.802007f, 0.802064f, 0.802121f, 0.802178f, 0.802236f, + 0.802293f, 0.802350f, 0.802407f, 0.802464f, 0.802522f, 0.802579f, 0.802636f, 0.802693f, + 0.802750f, 0.802808f, 0.802865f, 0.802922f, 0.802979f, 0.803036f, 0.803093f, 0.803150f, + 0.803208f, 0.803265f, 0.803322f, 0.803379f, 0.803436f, 0.803493f, 0.803550f, 0.803607f, + 0.803664f, 0.803721f, 0.803778f, 0.803835f, 0.803892f, 0.803949f, 0.804006f, 0.804063f, + 0.804120f, 0.804177f, 0.804234f, 0.804291f, 0.804348f, 0.804405f, 0.804462f, 0.804519f, + 0.804576f, 0.804633f, 0.804690f, 0.804747f, 0.804804f, 0.804861f, 0.804918f, 0.804974f, + 0.805031f, 0.805088f, 0.805145f, 0.805202f, 0.805259f, 0.805316f, 0.805372f, 0.805429f, + 0.805486f, 0.805543f, 0.805600f, 0.805656f, 0.805713f, 0.805770f, 0.805827f, 0.805884f, + 0.805940f, 0.805997f, 0.806054f, 0.806111f, 0.806167f, 0.806224f, 0.806281f, 0.806338f, + 0.806394f, 0.806451f, 0.806508f, 0.806564f, 0.806621f, 0.806678f, 0.806734f, 0.806791f, + 0.806848f, 0.806904f, 0.806961f, 0.807017f, 0.807074f, 0.807131f, 0.807187f, 0.807244f, + 0.807300f, 0.807357f, 0.807414f, 0.807470f, 0.807527f, 0.807583f, 0.807640f, 0.807696f, + 0.807753f, 0.807809f, 0.807866f, 0.807922f, 0.807979f, 0.808035f, 0.808092f, 0.808148f, + 0.808205f, 0.808261f, 0.808318f, 0.808374f, 0.808430f, 0.808487f, 0.808543f, 0.808600f, + 0.808656f, 0.808713f, 0.808769f, 0.808825f, 0.808882f, 0.808938f, 0.808994f, 0.809051f, + 0.809107f, 0.809164f, 0.809220f, 0.809276f, 0.809332f, 0.809389f, 0.809445f, 0.809501f, + 0.809558f, 0.809614f, 0.809670f, 0.809726f, 0.809783f, 0.809839f, 0.809895f, 0.809951f, + 0.810008f, 0.810064f, 0.810120f, 0.810176f, 0.810232f, 0.810289f, 0.810345f, 0.810401f, + 0.810457f, 0.810513f, 0.810570f, 0.810626f, 0.810682f, 0.810738f, 0.810794f, 0.810850f, + 0.810906f, 0.810962f, 0.811018f, 0.811075f, 0.811131f, 0.811187f, 0.811243f, 0.811299f, + 0.811355f, 0.811411f, 0.811467f, 0.811523f, 0.811579f, 0.811635f, 0.811691f, 0.811747f, + 0.811803f, 0.811859f, 0.811915f, 0.811971f, 0.812027f, 0.812083f, 0.812139f, 0.812195f, + 0.812251f, 0.812307f, 0.812362f, 0.812418f, 0.812474f, 0.812530f, 0.812586f, 0.812642f, + 0.812698f, 0.812754f, 0.812809f, 0.812865f, 0.812921f, 0.812977f, 0.813033f, 0.813089f, + 0.813144f, 0.813200f, 0.813256f, 0.813312f, 0.813368f, 0.813423f, 0.813479f, 0.813535f, + 0.813591f, 0.813646f, 0.813702f, 0.813758f, 0.813814f, 0.813869f, 0.813925f, 0.813981f, + 0.814036f, 0.814092f, 0.814148f, 0.814203f, 0.814259f, 0.814315f, 0.814370f, 0.814426f, + 0.814482f, 0.814537f, 0.814593f, 0.814648f, 0.814704f, 0.814760f, 0.814815f, 0.814871f, + 0.814926f, 0.814982f, 0.815037f, 0.815093f, 0.815149f, 0.815204f, 0.815260f, 0.815315f, + 0.815371f, 0.815426f, 0.815482f, 0.815537f, 0.815593f, 0.815648f, 0.815704f, 0.815759f, + 0.815814f, 0.815870f, 0.815925f, 0.815981f, 0.816036f, 0.816092f, 0.816147f, 0.816202f, + 0.816258f, 0.816313f, 0.816368f, 0.816424f, 0.816479f, 0.816535f, 0.816590f, 0.816645f, + 0.816701f, 0.816756f, 0.816811f, 0.816867f, 0.816922f, 0.816977f, 0.817032f, 0.817088f, + 0.817143f, 0.817198f, 0.817253f, 0.817309f, 0.817364f, 0.817419f, 0.817474f, 0.817530f, + 0.817585f, 0.817640f, 0.817695f, 0.817750f, 0.817806f, 0.817861f, 0.817916f, 0.817971f, + 0.818026f, 0.818081f, 0.818137f, 0.818192f, 0.818247f, 0.818302f, 0.818357f, 0.818412f, + 0.818467f, 0.818522f, 0.818577f, 0.818632f, 0.818687f, 0.818742f, 0.818798f, 0.818853f, + 0.818908f, 0.818963f, 0.819018f, 0.819073f, 0.819128f, 0.819183f, 0.819238f, 0.819293f, + 0.819348f, 0.819402f, 0.819457f, 0.819512f, 0.819567f, 0.819622f, 0.819677f, 0.819732f, + 0.819787f, 0.819842f, 0.819897f, 0.819952f, 0.820007f, 0.820061f, 0.820116f, 0.820171f, + 0.820226f, 0.820281f, 0.820336f, 0.820390f, 0.820445f, 0.820500f, 0.820555f, 0.820610f, + 0.820664f, 0.820719f, 0.820774f, 0.820829f, 0.820884f, 0.820938f, 0.820993f, 0.821048f, + 0.821102f, 0.821157f, 0.821212f, 0.821267f, 0.821321f, 0.821376f, 0.821431f, 0.821485f, + 0.821540f, 0.821595f, 0.821649f, 0.821704f, 0.821759f, 0.821813f, 0.821868f, 0.821922f, + 0.821977f, 0.822032f, 0.822086f, 0.822141f, 0.822195f, 0.822250f, 0.822305f, 0.822359f, + 0.822414f, 0.822468f, 0.822523f, 0.822577f, 0.822632f, 0.822686f, 0.822741f, 0.822795f, + 0.822850f, 0.822904f, 0.822959f, 0.823013f, 0.823068f, 0.823122f, 0.823177f, 0.823231f, + 0.823285f, 0.823340f, 0.823394f, 0.823449f, 0.823503f, 0.823557f, 0.823612f, 0.823666f, + 0.823721f, 0.823775f, 0.823829f, 0.823884f, 0.823938f, 0.823992f, 0.824047f, 0.824101f, + 0.824155f, 0.824209f, 0.824264f, 0.824318f, 0.824372f, 0.824427f, 0.824481f, 0.824535f, + 0.824589f, 0.824644f, 0.824698f, 0.824752f, 0.824806f, 0.824860f, 0.824915f, 0.824969f, + 0.825023f, 0.825077f, 0.825131f, 0.825185f, 0.825240f, 0.825294f, 0.825348f, 0.825402f, + 0.825456f, 0.825510f, 0.825564f, 0.825618f, 0.825673f, 0.825727f, 0.825781f, 0.825835f, + 0.825889f, 0.825943f, 0.825997f, 0.826051f, 0.826105f, 0.826159f, 0.826213f, 0.826267f, + 0.826321f, 0.826375f, 0.826429f, 0.826483f, 0.826537f, 0.826591f, 0.826645f, 0.826699f, + 0.826753f, 0.826807f, 0.826861f, 0.826915f, 0.826968f, 0.827022f, 0.827076f, 0.827130f, + 0.827184f, 0.827238f, 0.827292f, 0.827346f, 0.827399f, 0.827453f, 0.827507f, 0.827561f, + 0.827615f, 0.827669f, 0.827722f, 0.827776f, 0.827830f, 0.827884f, 0.827938f, 0.827991f, + 0.828045f, 0.828099f, 0.828153f, 0.828206f, 0.828260f, 0.828314f, 0.828367f, 0.828421f, + 0.828475f, 0.828529f, 0.828582f, 0.828636f, 0.828690f, 0.828743f, 0.828797f, 0.828851f, + 0.828904f, 0.828958f, 0.829011f, 0.829065f, 0.829119f, 0.829172f, 0.829226f, 0.829279f, + 0.829333f, 0.829386f, 0.829440f, 0.829494f, 0.829547f, 0.829601f, 0.829654f, 0.829708f, + 0.829761f, 0.829815f, 0.829868f, 0.829922f, 0.829975f, 0.830029f, 0.830082f, 0.830136f, + 0.830189f, 0.830243f, 0.830296f, 0.830349f, 0.830403f, 0.830456f, 0.830510f, 0.830563f, + 0.830616f, 0.830670f, 0.830723f, 0.830777f, 0.830830f, 0.830883f, 0.830937f, 0.830990f, + 0.831043f, 0.831097f, 0.831150f, 0.831203f, 0.831257f, 0.831310f, 0.831363f, 0.831416f, + 0.831470f, 0.831523f, 0.831576f, 0.831629f, 0.831683f, 0.831736f, 0.831789f, 0.831842f, + 0.831895f, 0.831949f, 0.832002f, 0.832055f, 0.832108f, 0.832161f, 0.832215f, 0.832268f, + 0.832321f, 0.832374f, 0.832427f, 0.832480f, 0.832533f, 0.832586f, 0.832640f, 0.832693f, + 0.832746f, 0.832799f, 0.832852f, 0.832905f, 0.832958f, 0.833011f, 0.833064f, 0.833117f, + 0.833170f, 0.833223f, 0.833276f, 0.833329f, 0.833382f, 0.833435f, 0.833488f, 0.833541f, + 0.833594f, 0.833647f, 0.833700f, 0.833753f, 0.833806f, 0.833859f, 0.833912f, 0.833965f, + 0.834018f, 0.834070f, 0.834123f, 0.834176f, 0.834229f, 0.834282f, 0.834335f, 0.834388f, + 0.834440f, 0.834493f, 0.834546f, 0.834599f, 0.834652f, 0.834705f, 0.834757f, 0.834810f, + 0.834863f, 0.834916f, 0.834968f, 0.835021f, 0.835074f, 0.835127f, 0.835179f, 0.835232f, + 0.835285f, 0.835338f, 0.835390f, 0.835443f, 0.835496f, 0.835548f, 0.835601f, 0.835654f, + 0.835706f, 0.835759f, 0.835812f, 0.835864f, 0.835917f, 0.835969f, 0.836022f, 0.836075f, + 0.836127f, 0.836180f, 0.836232f, 0.836285f, 0.836338f, 0.836390f, 0.836443f, 0.836495f, + 0.836548f, 0.836600f, 0.836653f, 0.836705f, 0.836758f, 0.836810f, 0.836863f, 0.836915f, + 0.836968f, 0.837020f, 0.837073f, 0.837125f, 0.837178f, 0.837230f, 0.837282f, 0.837335f, + 0.837387f, 0.837440f, 0.837492f, 0.837544f, 0.837597f, 0.837649f, 0.837701f, 0.837754f, + 0.837806f, 0.837859f, 0.837911f, 0.837963f, 0.838015f, 0.838068f, 0.838120f, 0.838172f, + 0.838225f, 0.838277f, 0.838329f, 0.838382f, 0.838434f, 0.838486f, 0.838538f, 0.838591f, + 0.838643f, 0.838695f, 0.838747f, 0.838799f, 0.838852f, 0.838904f, 0.838956f, 0.839008f, + 0.839060f, 0.839112f, 0.839165f, 0.839217f, 0.839269f, 0.839321f, 0.839373f, 0.839425f, + 0.839477f, 0.839529f, 0.839581f, 0.839634f, 0.839686f, 0.839738f, 0.839790f, 0.839842f, + 0.839894f, 0.839946f, 0.839998f, 0.840050f, 0.840102f, 0.840154f, 0.840206f, 0.840258f, + 0.840310f, 0.840362f, 0.840414f, 0.840466f, 0.840518f, 0.840570f, 0.840622f, 0.840673f, + 0.840725f, 0.840777f, 0.840829f, 0.840881f, 0.840933f, 0.840985f, 0.841037f, 0.841089f, + 0.841140f, 0.841192f, 0.841244f, 0.841296f, 0.841348f, 0.841400f, 0.841451f, 0.841503f, + 0.841555f, 0.841607f, 0.841659f, 0.841710f, 0.841762f, 0.841814f, 0.841866f, 0.841917f, + 0.841969f, 0.842021f, 0.842072f, 0.842124f, 0.842176f, 0.842228f, 0.842279f, 0.842331f, + 0.842383f, 0.842434f, 0.842486f, 0.842538f, 0.842589f, 0.842641f, 0.842692f, 0.842744f, + 0.842796f, 0.842847f, 0.842899f, 0.842950f, 0.843002f, 0.843054f, 0.843105f, 0.843157f, + 0.843208f, 0.843260f, 0.843311f, 0.843363f, 0.843414f, 0.843466f, 0.843517f, 0.843569f, + 0.843620f, 0.843672f, 0.843723f, 0.843775f, 0.843826f, 0.843878f, 0.843929f, 0.843980f, + 0.844032f, 0.844083f, 0.844135f, 0.844186f, 0.844238f, 0.844289f, 0.844340f, 0.844392f, + 0.844443f, 0.844494f, 0.844546f, 0.844597f, 0.844648f, 0.844700f, 0.844751f, 0.844802f, + 0.844854f, 0.844905f, 0.844956f, 0.845007f, 0.845059f, 0.845110f, 0.845161f, 0.845212f, + 0.845264f, 0.845315f, 0.845366f, 0.845417f, 0.845469f, 0.845520f, 0.845571f, 0.845622f, + 0.845673f, 0.845724f, 0.845776f, 0.845827f, 0.845878f, 0.845929f, 0.845980f, 0.846031f, + 0.846082f, 0.846133f, 0.846185f, 0.846236f, 0.846287f, 0.846338f, 0.846389f, 0.846440f, + 0.846491f, 0.846542f, 0.846593f, 0.846644f, 0.846695f, 0.846746f, 0.846797f, 0.846848f, + 0.846899f, 0.846950f, 0.847001f, 0.847052f, 0.847103f, 0.847154f, 0.847205f, 0.847256f, + 0.847307f, 0.847358f, 0.847408f, 0.847459f, 0.847510f, 0.847561f, 0.847612f, 0.847663f, + 0.847714f, 0.847765f, 0.847815f, 0.847866f, 0.847917f, 0.847968f, 0.848019f, 0.848070f, + 0.848120f, 0.848171f, 0.848222f, 0.848273f, 0.848323f, 0.848374f, 0.848425f, 0.848476f, + 0.848526f, 0.848577f, 0.848628f, 0.848679f, 0.848729f, 0.848780f, 0.848831f, 0.848881f, + 0.848932f, 0.848983f, 0.849033f, 0.849084f, 0.849135f, 0.849185f, 0.849236f, 0.849287f, + 0.849337f, 0.849388f, 0.849438f, 0.849489f, 0.849540f, 0.849590f, 0.849641f, 0.849691f, + 0.849742f, 0.849792f, 0.849843f, 0.849893f, 0.849944f, 0.849994f, 0.850045f, 0.850095f, + 0.850146f, 0.850196f, 0.850247f, 0.850297f, 0.850348f, 0.850398f, 0.850449f, 0.850499f, + 0.850549f, 0.850600f, 0.850650f, 0.850701f, 0.850751f, 0.850801f, 0.850852f, 0.850902f, + 0.850953f, 0.851003f, 0.851053f, 0.851104f, 0.851154f, 0.851204f, 0.851255f, 0.851305f, + 0.851355f, 0.851406f, 0.851456f, 0.851506f, 0.851556f, 0.851607f, 0.851657f, 0.851707f, + 0.851757f, 0.851808f, 0.851858f, 0.851908f, 0.851958f, 0.852008f, 0.852059f, 0.852109f, + 0.852159f, 0.852209f, 0.852259f, 0.852309f, 0.852360f, 0.852410f, 0.852460f, 0.852510f, + 0.852560f, 0.852610f, 0.852660f, 0.852710f, 0.852760f, 0.852810f, 0.852861f, 0.852911f, + 0.852961f, 0.853011f, 0.853061f, 0.853111f, 0.853161f, 0.853211f, 0.853261f, 0.853311f, + 0.853361f, 0.853411f, 0.853461f, 0.853511f, 0.853561f, 0.853611f, 0.853660f, 0.853710f, + 0.853760f, 0.853810f, 0.853860f, 0.853910f, 0.853960f, 0.854010f, 0.854060f, 0.854110f, + 0.854159f, 0.854209f, 0.854259f, 0.854309f, 0.854359f, 0.854409f, 0.854458f, 0.854508f, + 0.854558f, 0.854608f, 0.854658f, 0.854707f, 0.854757f, 0.854807f, 0.854857f, 0.854906f, + 0.854956f, 0.855006f, 0.855056f, 0.855105f, 0.855155f, 0.855205f, 0.855254f, 0.855304f, + 0.855354f, 0.855403f, 0.855453f, 0.855503f, 0.855552f, 0.855602f, 0.855651f, 0.855701f, + 0.855751f, 0.855800f, 0.855850f, 0.855900f, 0.855949f, 0.855999f, 0.856048f, 0.856098f, + 0.856147f, 0.856197f, 0.856246f, 0.856296f, 0.856345f, 0.856395f, 0.856444f, 0.856494f, + 0.856543f, 0.856593f, 0.856642f, 0.856692f, 0.856741f, 0.856791f, 0.856840f, 0.856890f, + 0.856939f, 0.856988f, 0.857038f, 0.857087f, 0.857137f, 0.857186f, 0.857235f, 0.857285f, + 0.857334f, 0.857383f, 0.857433f, 0.857482f, 0.857531f, 0.857581f, 0.857630f, 0.857679f, + 0.857729f, 0.857778f, 0.857827f, 0.857876f, 0.857926f, 0.857975f, 0.858024f, 0.858073f, + 0.858123f, 0.858172f, 0.858221f, 0.858270f, 0.858320f, 0.858369f, 0.858418f, 0.858467f, + 0.858516f, 0.858565f, 0.858615f, 0.858664f, 0.858713f, 0.858762f, 0.858811f, 0.858860f, + 0.858909f, 0.858958f, 0.859007f, 0.859057f, 0.859106f, 0.859155f, 0.859204f, 0.859253f, + 0.859302f, 0.859351f, 0.859400f, 0.859449f, 0.859498f, 0.859547f, 0.859596f, 0.859645f, + 0.859694f, 0.859743f, 0.859792f, 0.859841f, 0.859890f, 0.859939f, 0.859988f, 0.860036f, + 0.860085f, 0.860134f, 0.860183f, 0.860232f, 0.860281f, 0.860330f, 0.860379f, 0.860428f, + 0.860476f, 0.860525f, 0.860574f, 0.860623f, 0.860672f, 0.860721f, 0.860769f, 0.860818f, + 0.860867f, 0.860916f, 0.860964f, 0.861013f, 0.861062f, 0.861111f, 0.861160f, 0.861208f, + 0.861257f, 0.861306f, 0.861354f, 0.861403f, 0.861452f, 0.861500f, 0.861549f, 0.861598f, + 0.861646f, 0.861695f, 0.861744f, 0.861792f, 0.861841f, 0.861890f, 0.861938f, 0.861987f, + 0.862035f, 0.862084f, 0.862133f, 0.862181f, 0.862230f, 0.862278f, 0.862327f, 0.862375f, + 0.862424f, 0.862472f, 0.862521f, 0.862570f, 0.862618f, 0.862666f, 0.862715f, 0.862763f, + 0.862812f, 0.862860f, 0.862909f, 0.862957f, 0.863006f, 0.863054f, 0.863103f, 0.863151f, + 0.863199f, 0.863248f, 0.863296f, 0.863345f, 0.863393f, 0.863441f, 0.863490f, 0.863538f, + 0.863586f, 0.863635f, 0.863683f, 0.863731f, 0.863780f, 0.863828f, 0.863876f, 0.863925f, + 0.863973f, 0.864021f, 0.864069f, 0.864118f, 0.864166f, 0.864214f, 0.864262f, 0.864311f, + 0.864359f, 0.864407f, 0.864455f, 0.864503f, 0.864552f, 0.864600f, 0.864648f, 0.864696f, + 0.864744f, 0.864792f, 0.864841f, 0.864889f, 0.864937f, 0.864985f, 0.865033f, 0.865081f, + 0.865129f, 0.865177f, 0.865225f, 0.865273f, 0.865321f, 0.865369f, 0.865418f, 0.865466f, + 0.865514f, 0.865562f, 0.865610f, 0.865658f, 0.865706f, 0.865754f, 0.865802f, 0.865850f, + 0.865898f, 0.865946f, 0.865993f, 0.866041f, 0.866089f, 0.866137f, 0.866185f, 0.866233f, + 0.866281f, 0.866329f, 0.866377f, 0.866425f, 0.866472f, 0.866520f, 0.866568f, 0.866616f, + 0.866664f, 0.866712f, 0.866759f, 0.866807f, 0.866855f, 0.866903f, 0.866951f, 0.866998f, + 0.867046f, 0.867094f, 0.867142f, 0.867190f, 0.867237f, 0.867285f, 0.867333f, 0.867380f, + 0.867428f, 0.867476f, 0.867523f, 0.867571f, 0.867619f, 0.867667f, 0.867714f, 0.867762f, + 0.867809f, 0.867857f, 0.867905f, 0.867952f, 0.868000f, 0.868048f, 0.868095f, 0.868143f, + 0.868190f, 0.868238f, 0.868285f, 0.868333f, 0.868381f, 0.868428f, 0.868476f, 0.868523f, + 0.868571f, 0.868618f, 0.868666f, 0.868713f, 0.868761f, 0.868808f, 0.868856f, 0.868903f, + 0.868951f, 0.868998f, 0.869045f, 0.869093f, 0.869140f, 0.869188f, 0.869235f, 0.869282f, + 0.869330f, 0.869377f, 0.869425f, 0.869472f, 0.869519f, 0.869567f, 0.869614f, 0.869661f, + 0.869709f, 0.869756f, 0.869803f, 0.869851f, 0.869898f, 0.869945f, 0.869992f, 0.870040f, + 0.870087f, 0.870134f, 0.870182f, 0.870229f, 0.870276f, 0.870323f, 0.870370f, 0.870418f, + 0.870465f, 0.870512f, 0.870559f, 0.870606f, 0.870654f, 0.870701f, 0.870748f, 0.870795f, + 0.870842f, 0.870889f, 0.870936f, 0.870983f, 0.871031f, 0.871078f, 0.871125f, 0.871172f, + 0.871219f, 0.871266f, 0.871313f, 0.871360f, 0.871407f, 0.871454f, 0.871501f, 0.871548f, + 0.871595f, 0.871642f, 0.871689f, 0.871736f, 0.871783f, 0.871830f, 0.871877f, 0.871924f, + 0.871971f, 0.872018f, 0.872065f, 0.872112f, 0.872159f, 0.872205f, 0.872252f, 0.872299f, + 0.872346f, 0.872393f, 0.872440f, 0.872487f, 0.872534f, 0.872580f, 0.872627f, 0.872674f, + 0.872721f, 0.872768f, 0.872814f, 0.872861f, 0.872908f, 0.872955f, 0.873001f, 0.873048f, + 0.873095f, 0.873142f, 0.873188f, 0.873235f, 0.873282f, 0.873329f, 0.873375f, 0.873422f, + 0.873469f, 0.873515f, 0.873562f, 0.873609f, 0.873655f, 0.873702f, 0.873749f, 0.873795f, + 0.873842f, 0.873888f, 0.873935f, 0.873982f, 0.874028f, 0.874075f, 0.874121f, 0.874168f, + 0.874215f, 0.874261f, 0.874308f, 0.874354f, 0.874401f, 0.874447f, 0.874494f, 0.874540f, + 0.874587f, 0.874633f, 0.874680f, 0.874726f, 0.874773f, 0.874819f, 0.874865f, 0.874912f, + 0.874958f, 0.875005f, 0.875051f, 0.875098f, 0.875144f, 0.875190f, 0.875237f, 0.875283f, + 0.875329f, 0.875376f, 0.875422f, 0.875468f, 0.875515f, 0.875561f, 0.875607f, 0.875654f, + 0.875700f, 0.875746f, 0.875793f, 0.875839f, 0.875885f, 0.875931f, 0.875978f, 0.876024f, + 0.876070f, 0.876116f, 0.876163f, 0.876209f, 0.876255f, 0.876301f, 0.876347f, 0.876393f, + 0.876440f, 0.876486f, 0.876532f, 0.876578f, 0.876624f, 0.876670f, 0.876716f, 0.876763f, + 0.876809f, 0.876855f, 0.876901f, 0.876947f, 0.876993f, 0.877039f, 0.877085f, 0.877131f, + 0.877177f, 0.877223f, 0.877269f, 0.877315f, 0.877361f, 0.877407f, 0.877453f, 0.877499f, + 0.877545f, 0.877591f, 0.877637f, 0.877683f, 0.877729f, 0.877775f, 0.877821f, 0.877867f, + 0.877913f, 0.877959f, 0.878005f, 0.878051f, 0.878096f, 0.878142f, 0.878188f, 0.878234f, + 0.878280f, 0.878326f, 0.878371f, 0.878417f, 0.878463f, 0.878509f, 0.878555f, 0.878600f, + 0.878646f, 0.878692f, 0.878738f, 0.878784f, 0.878829f, 0.878875f, 0.878921f, 0.878967f, + 0.879012f, 0.879058f, 0.879104f, 0.879149f, 0.879195f, 0.879241f, 0.879286f, 0.879332f, + 0.879378f, 0.879423f, 0.879469f, 0.879515f, 0.879560f, 0.879606f, 0.879651f, 0.879697f, + 0.879743f, 0.879788f, 0.879834f, 0.879879f, 0.879925f, 0.879970f, 0.880016f, 0.880061f, + 0.880107f, 0.880153f, 0.880198f, 0.880244f, 0.880289f, 0.880334f, 0.880380f, 0.880425f, + 0.880471f, 0.880516f, 0.880562f, 0.880607f, 0.880653f, 0.880698f, 0.880743f, 0.880789f, + 0.880834f, 0.880880f, 0.880925f, 0.880970f, 0.881016f, 0.881061f, 0.881106f, 0.881152f, + 0.881197f, 0.881242f, 0.881288f, 0.881333f, 0.881378f, 0.881424f, 0.881469f, 0.881514f, + 0.881559f, 0.881605f, 0.881650f, 0.881695f, 0.881740f, 0.881786f, 0.881831f, 0.881876f, + 0.881921f, 0.881966f, 0.882012f, 0.882057f, 0.882102f, 0.882147f, 0.882192f, 0.882237f, + 0.882283f, 0.882328f, 0.882373f, 0.882418f, 0.882463f, 0.882508f, 0.882553f, 0.882598f, + 0.882643f, 0.882688f, 0.882733f, 0.882779f, 0.882824f, 0.882869f, 0.882914f, 0.882959f, + 0.883004f, 0.883049f, 0.883094f, 0.883139f, 0.883184f, 0.883228f, 0.883273f, 0.883318f, + 0.883363f, 0.883408f, 0.883453f, 0.883498f, 0.883543f, 0.883588f, 0.883633f, 0.883678f, + 0.883723f, 0.883767f, 0.883812f, 0.883857f, 0.883902f, 0.883947f, 0.883992f, 0.884036f, + 0.884081f, 0.884126f, 0.884171f, 0.884216f, 0.884260f, 0.884305f, 0.884350f, 0.884395f, + 0.884439f, 0.884484f, 0.884529f, 0.884574f, 0.884618f, 0.884663f, 0.884708f, 0.884752f, + 0.884797f, 0.884842f, 0.884886f, 0.884931f, 0.884976f, 0.885020f, 0.885065f, 0.885110f, + 0.885154f, 0.885199f, 0.885243f, 0.885288f, 0.885333f, 0.885377f, 0.885422f, 0.885466f, + 0.885511f, 0.885555f, 0.885600f, 0.885644f, 0.885689f, 0.885733f, 0.885778f, 0.885822f, + 0.885867f, 0.885911f, 0.885956f, 0.886000f, 0.886045f, 0.886089f, 0.886134f, 0.886178f, + 0.886223f, 0.886267f, 0.886311f, 0.886356f, 0.886400f, 0.886445f, 0.886489f, 0.886533f, + 0.886578f, 0.886622f, 0.886666f, 0.886711f, 0.886755f, 0.886799f, 0.886844f, 0.886888f, + 0.886932f, 0.886976f, 0.887021f, 0.887065f, 0.887109f, 0.887153f, 0.887198f, 0.887242f, + 0.887286f, 0.887330f, 0.887375f, 0.887419f, 0.887463f, 0.887507f, 0.887551f, 0.887595f, + 0.887640f, 0.887684f, 0.887728f, 0.887772f, 0.887816f, 0.887860f, 0.887904f, 0.887949f, + 0.887993f, 0.888037f, 0.888081f, 0.888125f, 0.888169f, 0.888213f, 0.888257f, 0.888301f, + 0.888345f, 0.888389f, 0.888433f, 0.888477f, 0.888521f, 0.888565f, 0.888609f, 0.888653f, + 0.888697f, 0.888741f, 0.888785f, 0.888829f, 0.888873f, 0.888917f, 0.888961f, 0.889004f, + 0.889048f, 0.889092f, 0.889136f, 0.889180f, 0.889224f, 0.889268f, 0.889312f, 0.889355f, + 0.889399f, 0.889443f, 0.889487f, 0.889531f, 0.889574f, 0.889618f, 0.889662f, 0.889706f, + 0.889750f, 0.889793f, 0.889837f, 0.889881f, 0.889925f, 0.889968f, 0.890012f, 0.890056f, + 0.890099f, 0.890143f, 0.890187f, 0.890230f, 0.890274f, 0.890318f, 0.890361f, 0.890405f, + 0.890449f, 0.890492f, 0.890536f, 0.890580f, 0.890623f, 0.890667f, 0.890710f, 0.890754f, + 0.890797f, 0.890841f, 0.890885f, 0.890928f, 0.890972f, 0.891015f, 0.891059f, 0.891102f, + 0.891146f, 0.891189f, 0.891233f, 0.891276f, 0.891320f, 0.891363f, 0.891407f, 0.891450f, + 0.891493f, 0.891537f, 0.891580f, 0.891624f, 0.891667f, 0.891711f, 0.891754f, 0.891797f, + 0.891841f, 0.891884f, 0.891927f, 0.891971f, 0.892014f, 0.892057f, 0.892101f, 0.892144f, + 0.892187f, 0.892231f, 0.892274f, 0.892317f, 0.892361f, 0.892404f, 0.892447f, 0.892490f, + 0.892534f, 0.892577f, 0.892620f, 0.892663f, 0.892706f, 0.892750f, 0.892793f, 0.892836f, + 0.892879f, 0.892922f, 0.892965f, 0.893009f, 0.893052f, 0.893095f, 0.893138f, 0.893181f, + 0.893224f, 0.893267f, 0.893310f, 0.893354f, 0.893397f, 0.893440f, 0.893483f, 0.893526f, + 0.893569f, 0.893612f, 0.893655f, 0.893698f, 0.893741f, 0.893784f, 0.893827f, 0.893870f, + 0.893913f, 0.893956f, 0.893999f, 0.894042f, 0.894085f, 0.894128f, 0.894171f, 0.894214f, + 0.894256f, 0.894299f, 0.894342f, 0.894385f, 0.894428f, 0.894471f, 0.894514f, 0.894557f, + 0.894599f, 0.894642f, 0.894685f, 0.894728f, 0.894771f, 0.894814f, 0.894856f, 0.894899f, + 0.894942f, 0.894985f, 0.895028f, 0.895070f, 0.895113f, 0.895156f, 0.895198f, 0.895241f, + 0.895284f, 0.895327f, 0.895369f, 0.895412f, 0.895455f, 0.895497f, 0.895540f, 0.895583f, + 0.895625f, 0.895668f, 0.895711f, 0.895753f, 0.895796f, 0.895838f, 0.895881f, 0.895924f, + 0.895966f, 0.896009f, 0.896051f, 0.896094f, 0.896137f, 0.896179f, 0.896222f, 0.896264f, + 0.896307f, 0.896349f, 0.896392f, 0.896434f, 0.896477f, 0.896519f, 0.896562f, 0.896604f, + 0.896646f, 0.896689f, 0.896731f, 0.896774f, 0.896816f, 0.896859f, 0.896901f, 0.896943f, + 0.896986f, 0.897028f, 0.897071f, 0.897113f, 0.897155f, 0.897198f, 0.897240f, 0.897282f, + 0.897325f, 0.897367f, 0.897409f, 0.897452f, 0.897494f, 0.897536f, 0.897578f, 0.897621f, + 0.897663f, 0.897705f, 0.897747f, 0.897790f, 0.897832f, 0.897874f, 0.897916f, 0.897958f, + 0.898001f, 0.898043f, 0.898085f, 0.898127f, 0.898169f, 0.898211f, 0.898254f, 0.898296f, + 0.898338f, 0.898380f, 0.898422f, 0.898464f, 0.898506f, 0.898548f, 0.898590f, 0.898632f, + 0.898674f, 0.898717f, 0.898759f, 0.898801f, 0.898843f, 0.898885f, 0.898927f, 0.898969f, + 0.899011f, 0.899053f, 0.899095f, 0.899137f, 0.899179f, 0.899220f, 0.899262f, 0.899304f, + 0.899346f, 0.899388f, 0.899430f, 0.899472f, 0.899514f, 0.899556f, 0.899598f, 0.899639f, + 0.899681f, 0.899723f, 0.899765f, 0.899807f, 0.899849f, 0.899890f, 0.899932f, 0.899974f, + 0.900016f, 0.900058f, 0.900099f, 0.900141f, 0.900183f, 0.900225f, 0.900266f, 0.900308f, + 0.900350f, 0.900392f, 0.900433f, 0.900475f, 0.900517f, 0.900558f, 0.900600f, 0.900642f, + 0.900683f, 0.900725f, 0.900767f, 0.900808f, 0.900850f, 0.900892f, 0.900933f, 0.900975f, + 0.901016f, 0.901058f, 0.901100f, 0.901141f, 0.901183f, 0.901224f, 0.901266f, 0.901307f, + 0.901349f, 0.901390f, 0.901432f, 0.901473f, 0.901515f, 0.901556f, 0.901598f, 0.901639f, + 0.901681f, 0.901722f, 0.901764f, 0.901805f, 0.901847f, 0.901888f, 0.901929f, 0.901971f, + 0.902012f, 0.902054f, 0.902095f, 0.902136f, 0.902178f, 0.902219f, 0.902260f, 0.902302f, + 0.902343f, 0.902384f, 0.902426f, 0.902467f, 0.902508f, 0.902550f, 0.902591f, 0.902632f, + 0.902673f, 0.902715f, 0.902756f, 0.902797f, 0.902838f, 0.902879f, 0.902921f, 0.902962f, + 0.903003f, 0.903044f, 0.903085f, 0.903127f, 0.903168f, 0.903209f, 0.903250f, 0.903291f, + 0.903332f, 0.903373f, 0.903415f, 0.903456f, 0.903497f, 0.903538f, 0.903579f, 0.903620f, + 0.903661f, 0.903702f, 0.903743f, 0.903784f, 0.903825f, 0.903866f, 0.903907f, 0.903948f, + 0.903989f, 0.904030f, 0.904071f, 0.904112f, 0.904153f, 0.904194f, 0.904235f, 0.904276f, + 0.904317f, 0.904358f, 0.904399f, 0.904440f, 0.904481f, 0.904521f, 0.904562f, 0.904603f, + 0.904644f, 0.904685f, 0.904726f, 0.904767f, 0.904807f, 0.904848f, 0.904889f, 0.904930f, + 0.904971f, 0.905011f, 0.905052f, 0.905093f, 0.905134f, 0.905175f, 0.905215f, 0.905256f, + 0.905297f, 0.905337f, 0.905378f, 0.905419f, 0.905460f, 0.905500f, 0.905541f, 0.905582f, + 0.905622f, 0.905663f, 0.905704f, 0.905744f, 0.905785f, 0.905825f, 0.905866f, 0.905907f, + 0.905947f, 0.905988f, 0.906028f, 0.906069f, 0.906110f, 0.906150f, 0.906191f, 0.906231f, + 0.906272f, 0.906312f, 0.906353f, 0.906393f, 0.906434f, 0.906474f, 0.906515f, 0.906555f, + 0.906596f, 0.906636f, 0.906677f, 0.906717f, 0.906757f, 0.906798f, 0.906838f, 0.906879f, + 0.906919f, 0.906959f, 0.907000f, 0.907040f, 0.907081f, 0.907121f, 0.907161f, 0.907202f, + 0.907242f, 0.907282f, 0.907323f, 0.907363f, 0.907403f, 0.907444f, 0.907484f, 0.907524f, + 0.907564f, 0.907605f, 0.907645f, 0.907685f, 0.907725f, 0.907766f, 0.907806f, 0.907846f, + 0.907886f, 0.907926f, 0.907966f, 0.908007f, 0.908047f, 0.908087f, 0.908127f, 0.908167f, + 0.908207f, 0.908248f, 0.908288f, 0.908328f, 0.908368f, 0.908408f, 0.908448f, 0.908488f, + 0.908528f, 0.908568f, 0.908608f, 0.908648f, 0.908688f, 0.908728f, 0.908768f, 0.908808f, + 0.908848f, 0.908888f, 0.908928f, 0.908968f, 0.909008f, 0.909048f, 0.909088f, 0.909128f, + 0.909168f, 0.909208f, 0.909248f, 0.909288f, 0.909328f, 0.909368f, 0.909407f, 0.909447f, + 0.909487f, 0.909527f, 0.909567f, 0.909607f, 0.909646f, 0.909686f, 0.909726f, 0.909766f, + 0.909806f, 0.909845f, 0.909885f, 0.909925f, 0.909965f, 0.910005f, 0.910044f, 0.910084f, + 0.910124f, 0.910163f, 0.910203f, 0.910243f, 0.910283f, 0.910322f, 0.910362f, 0.910402f, + 0.910441f, 0.910481f, 0.910521f, 0.910560f, 0.910600f, 0.910639f, 0.910679f, 0.910719f, + 0.910758f, 0.910798f, 0.910837f, 0.910877f, 0.910917f, 0.910956f, 0.910996f, 0.911035f, + 0.911075f, 0.911114f, 0.911154f, 0.911193f, 0.911233f, 0.911272f, 0.911312f, 0.911351f, + 0.911391f, 0.911430f, 0.911470f, 0.911509f, 0.911548f, 0.911588f, 0.911627f, 0.911667f, + 0.911706f, 0.911745f, 0.911785f, 0.911824f, 0.911864f, 0.911903f, 0.911942f, 0.911982f, + 0.912021f, 0.912060f, 0.912099f, 0.912139f, 0.912178f, 0.912217f, 0.912257f, 0.912296f, + 0.912335f, 0.912374f, 0.912414f, 0.912453f, 0.912492f, 0.912531f, 0.912571f, 0.912610f, + 0.912649f, 0.912688f, 0.912727f, 0.912766f, 0.912806f, 0.912845f, 0.912884f, 0.912923f, + 0.912962f, 0.913001f, 0.913040f, 0.913080f, 0.913119f, 0.913158f, 0.913197f, 0.913236f, + 0.913275f, 0.913314f, 0.913353f, 0.913392f, 0.913431f, 0.913470f, 0.913509f, 0.913548f, + 0.913587f, 0.913626f, 0.913665f, 0.913704f, 0.913743f, 0.913782f, 0.913821f, 0.913860f, + 0.913899f, 0.913938f, 0.913976f, 0.914015f, 0.914054f, 0.914093f, 0.914132f, 0.914171f, + 0.914210f, 0.914249f, 0.914287f, 0.914326f, 0.914365f, 0.914404f, 0.914443f, 0.914482f, + 0.914520f, 0.914559f, 0.914598f, 0.914637f, 0.914675f, 0.914714f, 0.914753f, 0.914792f, + 0.914830f, 0.914869f, 0.914908f, 0.914946f, 0.914985f, 0.915024f, 0.915062f, 0.915101f, + 0.915140f, 0.915178f, 0.915217f, 0.915256f, 0.915294f, 0.915333f, 0.915372f, 0.915410f, + 0.915449f, 0.915487f, 0.915526f, 0.915564f, 0.915603f, 0.915642f, 0.915680f, 0.915719f, + 0.915757f, 0.915796f, 0.915834f, 0.915873f, 0.915911f, 0.915950f, 0.915988f, 0.916027f, + 0.916065f, 0.916103f, 0.916142f, 0.916180f, 0.916219f, 0.916257f, 0.916296f, 0.916334f, + 0.916372f, 0.916411f, 0.916449f, 0.916487f, 0.916526f, 0.916564f, 0.916602f, 0.916641f, + 0.916679f, 0.916717f, 0.916756f, 0.916794f, 0.916832f, 0.916871f, 0.916909f, 0.916947f, + 0.916985f, 0.917024f, 0.917062f, 0.917100f, 0.917138f, 0.917176f, 0.917215f, 0.917253f, + 0.917291f, 0.917329f, 0.917367f, 0.917405f, 0.917444f, 0.917482f, 0.917520f, 0.917558f, + 0.917596f, 0.917634f, 0.917672f, 0.917710f, 0.917749f, 0.917787f, 0.917825f, 0.917863f, + 0.917901f, 0.917939f, 0.917977f, 0.918015f, 0.918053f, 0.918091f, 0.918129f, 0.918167f, + 0.918205f, 0.918243f, 0.918281f, 0.918319f, 0.918357f, 0.918395f, 0.918433f, 0.918471f, + 0.918508f, 0.918546f, 0.918584f, 0.918622f, 0.918660f, 0.918698f, 0.918736f, 0.918774f, + 0.918811f, 0.918849f, 0.918887f, 0.918925f, 0.918963f, 0.919001f, 0.919038f, 0.919076f, + 0.919114f, 0.919152f, 0.919189f, 0.919227f, 0.919265f, 0.919303f, 0.919340f, 0.919378f, + 0.919416f, 0.919453f, 0.919491f, 0.919529f, 0.919567f, 0.919604f, 0.919642f, 0.919680f, + 0.919717f, 0.919755f, 0.919792f, 0.919830f, 0.919868f, 0.919905f, 0.919943f, 0.919980f, + 0.920018f, 0.920056f, 0.920093f, 0.920131f, 0.920168f, 0.920206f, 0.920243f, 0.920281f, + 0.920318f, 0.920356f, 0.920393f, 0.920431f, 0.920468f, 0.920506f, 0.920543f, 0.920581f, + 0.920618f, 0.920655f, 0.920693f, 0.920730f, 0.920768f, 0.920805f, 0.920842f, 0.920880f, + 0.920917f, 0.920955f, 0.920992f, 0.921029f, 0.921067f, 0.921104f, 0.921141f, 0.921179f, + 0.921216f, 0.921253f, 0.921291f, 0.921328f, 0.921365f, 0.921402f, 0.921440f, 0.921477f, + 0.921514f, 0.921551f, 0.921588f, 0.921626f, 0.921663f, 0.921700f, 0.921737f, 0.921774f, + 0.921812f, 0.921849f, 0.921886f, 0.921923f, 0.921960f, 0.921997f, 0.922034f, 0.922072f, + 0.922109f, 0.922146f, 0.922183f, 0.922220f, 0.922257f, 0.922294f, 0.922331f, 0.922368f, + 0.922405f, 0.922442f, 0.922479f, 0.922516f, 0.922553f, 0.922590f, 0.922627f, 0.922664f, + 0.922701f, 0.922738f, 0.922775f, 0.922812f, 0.922849f, 0.922886f, 0.922923f, 0.922960f, + 0.922997f, 0.923033f, 0.923070f, 0.923107f, 0.923144f, 0.923181f, 0.923218f, 0.923255f, + 0.923291f, 0.923328f, 0.923365f, 0.923402f, 0.923439f, 0.923475f, 0.923512f, 0.923549f, + 0.923586f, 0.923622f, 0.923659f, 0.923696f, 0.923733f, 0.923769f, 0.923806f, 0.923843f, + 0.923880f, 0.923916f, 0.923953f, 0.923990f, 0.924026f, 0.924063f, 0.924100f, 0.924136f, + 0.924173f, 0.924209f, 0.924246f, 0.924283f, 0.924319f, 0.924356f, 0.924392f, 0.924429f, + 0.924465f, 0.924502f, 0.924539f, 0.924575f, 0.924612f, 0.924648f, 0.924685f, 0.924721f, + 0.924758f, 0.924794f, 0.924831f, 0.924867f, 0.924904f, 0.924940f, 0.924976f, 0.925013f, + 0.925049f, 0.925086f, 0.925122f, 0.925158f, 0.925195f, 0.925231f, 0.925268f, 0.925304f, + 0.925340f, 0.925377f, 0.925413f, 0.925449f, 0.925486f, 0.925522f, 0.925558f, 0.925595f, + 0.925631f, 0.925667f, 0.925703f, 0.925740f, 0.925776f, 0.925812f, 0.925848f, 0.925885f, + 0.925921f, 0.925957f, 0.925993f, 0.926029f, 0.926066f, 0.926102f, 0.926138f, 0.926174f, + 0.926210f, 0.926246f, 0.926283f, 0.926319f, 0.926355f, 0.926391f, 0.926427f, 0.926463f, + 0.926499f, 0.926535f, 0.926571f, 0.926607f, 0.926643f, 0.926679f, 0.926715f, 0.926751f, + 0.926787f, 0.926823f, 0.926859f, 0.926895f, 0.926931f, 0.926967f, 0.927003f, 0.927039f, + 0.927075f, 0.927111f, 0.927147f, 0.927183f, 0.927219f, 0.927255f, 0.927291f, 0.927327f, + 0.927363f, 0.927398f, 0.927434f, 0.927470f, 0.927506f, 0.927542f, 0.927578f, 0.927613f, + 0.927649f, 0.927685f, 0.927721f, 0.927757f, 0.927792f, 0.927828f, 0.927864f, 0.927900f, + 0.927935f, 0.927971f, 0.928007f, 0.928043f, 0.928078f, 0.928114f, 0.928150f, 0.928185f, + 0.928221f, 0.928257f, 0.928292f, 0.928328f, 0.928364f, 0.928399f, 0.928435f, 0.928470f, + 0.928506f, 0.928542f, 0.928577f, 0.928613f, 0.928648f, 0.928684f, 0.928720f, 0.928755f, + 0.928791f, 0.928826f, 0.928862f, 0.928897f, 0.928933f, 0.928968f, 0.929004f, 0.929039f, + 0.929075f, 0.929110f, 0.929146f, 0.929181f, 0.929216f, 0.929252f, 0.929287f, 0.929323f, + 0.929358f, 0.929393f, 0.929429f, 0.929464f, 0.929500f, 0.929535f, 0.929570f, 0.929606f, + 0.929641f, 0.929676f, 0.929712f, 0.929747f, 0.929782f, 0.929817f, 0.929853f, 0.929888f, + 0.929923f, 0.929958f, 0.929994f, 0.930029f, 0.930064f, 0.930099f, 0.930135f, 0.930170f, + 0.930205f, 0.930240f, 0.930275f, 0.930311f, 0.930346f, 0.930381f, 0.930416f, 0.930451f, + 0.930486f, 0.930521f, 0.930556f, 0.930592f, 0.930627f, 0.930662f, 0.930697f, 0.930732f, + 0.930767f, 0.930802f, 0.930837f, 0.930872f, 0.930907f, 0.930942f, 0.930977f, 0.931012f, + 0.931047f, 0.931082f, 0.931117f, 0.931152f, 0.931187f, 0.931222f, 0.931257f, 0.931292f, + 0.931327f, 0.931362f, 0.931397f, 0.931431f, 0.931466f, 0.931501f, 0.931536f, 0.931571f, + 0.931606f, 0.931641f, 0.931675f, 0.931710f, 0.931745f, 0.931780f, 0.931815f, 0.931849f, + 0.931884f, 0.931919f, 0.931954f, 0.931989f, 0.932023f, 0.932058f, 0.932093f, 0.932128f, + 0.932162f, 0.932197f, 0.932232f, 0.932266f, 0.932301f, 0.932336f, 0.932370f, 0.932405f, + 0.932440f, 0.932474f, 0.932509f, 0.932544f, 0.932578f, 0.932613f, 0.932647f, 0.932682f, + 0.932716f, 0.932751f, 0.932786f, 0.932820f, 0.932855f, 0.932889f, 0.932924f, 0.932958f, + 0.932993f, 0.933027f, 0.933062f, 0.933096f, 0.933131f, 0.933165f, 0.933200f, 0.933234f, + 0.933269f, 0.933303f, 0.933337f, 0.933372f, 0.933406f, 0.933441f, 0.933475f, 0.933509f, + 0.933544f, 0.933578f, 0.933612f, 0.933647f, 0.933681f, 0.933716f, 0.933750f, 0.933784f, + 0.933818f, 0.933853f, 0.933887f, 0.933921f, 0.933956f, 0.933990f, 0.934024f, 0.934058f, + 0.934093f, 0.934127f, 0.934161f, 0.934195f, 0.934229f, 0.934264f, 0.934298f, 0.934332f, + 0.934366f, 0.934400f, 0.934434f, 0.934469f, 0.934503f, 0.934537f, 0.934571f, 0.934605f, + 0.934639f, 0.934673f, 0.934707f, 0.934741f, 0.934775f, 0.934810f, 0.934844f, 0.934878f, + 0.934912f, 0.934946f, 0.934980f, 0.935014f, 0.935048f, 0.935082f, 0.935116f, 0.935150f, + 0.935184f, 0.935217f, 0.935251f, 0.935285f, 0.935319f, 0.935353f, 0.935387f, 0.935421f, + 0.935455f, 0.935489f, 0.935523f, 0.935556f, 0.935590f, 0.935624f, 0.935658f, 0.935692f, + 0.935726f, 0.935759f, 0.935793f, 0.935827f, 0.935861f, 0.935895f, 0.935928f, 0.935962f, + 0.935996f, 0.936030f, 0.936063f, 0.936097f, 0.936131f, 0.936165f, 0.936198f, 0.936232f, + 0.936266f, 0.936299f, 0.936333f, 0.936367f, 0.936400f, 0.936434f, 0.936468f, 0.936501f, + 0.936535f, 0.936568f, 0.936602f, 0.936636f, 0.936669f, 0.936703f, 0.936736f, 0.936770f, + 0.936803f, 0.936837f, 0.936871f, 0.936904f, 0.936938f, 0.936971f, 0.937005f, 0.937038f, + 0.937072f, 0.937105f, 0.937138f, 0.937172f, 0.937205f, 0.937239f, 0.937272f, 0.937306f, + 0.937339f, 0.937372f, 0.937406f, 0.937439f, 0.937473f, 0.937506f, 0.937539f, 0.937573f, + 0.937606f, 0.937639f, 0.937673f, 0.937706f, 0.937739f, 0.937773f, 0.937806f, 0.937839f, + 0.937872f, 0.937906f, 0.937939f, 0.937972f, 0.938005f, 0.938039f, 0.938072f, 0.938105f, + 0.938138f, 0.938171f, 0.938205f, 0.938238f, 0.938271f, 0.938304f, 0.938337f, 0.938370f, + 0.938404f, 0.938437f, 0.938470f, 0.938503f, 0.938536f, 0.938569f, 0.938602f, 0.938635f, + 0.938668f, 0.938701f, 0.938734f, 0.938767f, 0.938800f, 0.938833f, 0.938866f, 0.938900f, + 0.938932f, 0.938965f, 0.938998f, 0.939031f, 0.939064f, 0.939097f, 0.939130f, 0.939163f, + 0.939196f, 0.939229f, 0.939262f, 0.939295f, 0.939328f, 0.939361f, 0.939394f, 0.939426f, + 0.939459f, 0.939492f, 0.939525f, 0.939558f, 0.939591f, 0.939623f, 0.939656f, 0.939689f, + 0.939722f, 0.939755f, 0.939787f, 0.939820f, 0.939853f, 0.939886f, 0.939918f, 0.939951f, + 0.939984f, 0.940016f, 0.940049f, 0.940082f, 0.940115f, 0.940147f, 0.940180f, 0.940213f, + 0.940245f, 0.940278f, 0.940310f, 0.940343f, 0.940376f, 0.940408f, 0.940441f, 0.940473f, + 0.940506f, 0.940539f, 0.940571f, 0.940604f, 0.940636f, 0.940669f, 0.940701f, 0.940734f, + 0.940766f, 0.940799f, 0.940831f, 0.940864f, 0.940896f, 0.940929f, 0.940961f, 0.940994f, + 0.941026f, 0.941059f, 0.941091f, 0.941123f, 0.941156f, 0.941188f, 0.941221f, 0.941253f, + 0.941285f, 0.941318f, 0.941350f, 0.941382f, 0.941415f, 0.941447f, 0.941479f, 0.941512f, + 0.941544f, 0.941576f, 0.941609f, 0.941641f, 0.941673f, 0.941705f, 0.941738f, 0.941770f, + 0.941802f, 0.941834f, 0.941867f, 0.941899f, 0.941931f, 0.941963f, 0.941995f, 0.942028f, + 0.942060f, 0.942092f, 0.942124f, 0.942156f, 0.942188f, 0.942220f, 0.942253f, 0.942285f, + 0.942317f, 0.942349f, 0.942381f, 0.942413f, 0.942445f, 0.942477f, 0.942509f, 0.942541f, + 0.942573f, 0.942605f, 0.942637f, 0.942669f, 0.942701f, 0.942733f, 0.942765f, 0.942797f, + 0.942829f, 0.942861f, 0.942893f, 0.942925f, 0.942957f, 0.942989f, 0.943021f, 0.943053f, + 0.943084f, 0.943116f, 0.943148f, 0.943180f, 0.943212f, 0.943244f, 0.943276f, 0.943307f, + 0.943339f, 0.943371f, 0.943403f, 0.943435f, 0.943466f, 0.943498f, 0.943530f, 0.943562f, + 0.943593f, 0.943625f, 0.943657f, 0.943689f, 0.943720f, 0.943752f, 0.943784f, 0.943815f, + 0.943847f, 0.943879f, 0.943910f, 0.943942f, 0.943974f, 0.944005f, 0.944037f, 0.944069f, + 0.944100f, 0.944132f, 0.944163f, 0.944195f, 0.944227f, 0.944258f, 0.944290f, 0.944321f, + 0.944353f, 0.944384f, 0.944416f, 0.944447f, 0.944479f, 0.944510f, 0.944542f, 0.944573f, + 0.944605f, 0.944636f, 0.944668f, 0.944699f, 0.944731f, 0.944762f, 0.944793f, 0.944825f, + 0.944856f, 0.944888f, 0.944919f, 0.944950f, 0.944982f, 0.945013f, 0.945045f, 0.945076f, + 0.945107f, 0.945139f, 0.945170f, 0.945201f, 0.945232f, 0.945264f, 0.945295f, 0.945326f, + 0.945358f, 0.945389f, 0.945420f, 0.945451f, 0.945482f, 0.945514f, 0.945545f, 0.945576f, + 0.945607f, 0.945639f, 0.945670f, 0.945701f, 0.945732f, 0.945763f, 0.945794f, 0.945825f, + 0.945857f, 0.945888f, 0.945919f, 0.945950f, 0.945981f, 0.946012f, 0.946043f, 0.946074f, + 0.946105f, 0.946136f, 0.946167f, 0.946198f, 0.946229f, 0.946260f, 0.946291f, 0.946322f, + 0.946353f, 0.946384f, 0.946415f, 0.946446f, 0.946477f, 0.946508f, 0.946539f, 0.946570f, + 0.946601f, 0.946632f, 0.946663f, 0.946694f, 0.946724f, 0.946755f, 0.946786f, 0.946817f, + 0.946848f, 0.946879f, 0.946910f, 0.946940f, 0.946971f, 0.947002f, 0.947033f, 0.947064f, + 0.947094f, 0.947125f, 0.947156f, 0.947187f, 0.947217f, 0.947248f, 0.947279f, 0.947310f, + 0.947340f, 0.947371f, 0.947402f, 0.947432f, 0.947463f, 0.947494f, 0.947524f, 0.947555f, + 0.947586f, 0.947616f, 0.947647f, 0.947677f, 0.947708f, 0.947739f, 0.947769f, 0.947800f, + 0.947830f, 0.947861f, 0.947891f, 0.947922f, 0.947953f, 0.947983f, 0.948014f, 0.948044f, + 0.948075f, 0.948105f, 0.948136f, 0.948166f, 0.948196f, 0.948227f, 0.948257f, 0.948288f, + 0.948318f, 0.948349f, 0.948379f, 0.948409f, 0.948440f, 0.948470f, 0.948501f, 0.948531f, + 0.948561f, 0.948592f, 0.948622f, 0.948652f, 0.948683f, 0.948713f, 0.948743f, 0.948774f, + 0.948804f, 0.948834f, 0.948864f, 0.948895f, 0.948925f, 0.948955f, 0.948985f, 0.949016f, + 0.949046f, 0.949076f, 0.949106f, 0.949136f, 0.949167f, 0.949197f, 0.949227f, 0.949257f, + 0.949287f, 0.949317f, 0.949348f, 0.949378f, 0.949408f, 0.949438f, 0.949468f, 0.949498f, + 0.949528f, 0.949558f, 0.949588f, 0.949618f, 0.949648f, 0.949678f, 0.949708f, 0.949739f, + 0.949768f, 0.949798f, 0.949829f, 0.949858f, 0.949888f, 0.949918f, 0.949948f, 0.949978f, + 0.950008f, 0.950038f, 0.950068f, 0.950098f, 0.950128f, 0.950158f, 0.950188f, 0.950218f, + 0.950247f, 0.950277f, 0.950307f, 0.950337f, 0.950367f, 0.950397f, 0.950426f, 0.950456f, + 0.950486f, 0.950516f, 0.950546f, 0.950575f, 0.950605f, 0.950635f, 0.950665f, 0.950694f, + 0.950724f, 0.950754f, 0.950784f, 0.950813f, 0.950843f, 0.950873f, 0.950902f, 0.950932f, + 0.950962f, 0.950991f, 0.951021f, 0.951051f, 0.951080f, 0.951110f, 0.951139f, 0.951169f, + 0.951199f, 0.951228f, 0.951258f, 0.951287f, 0.951317f, 0.951346f, 0.951376f, 0.951406f, + 0.951435f, 0.951465f, 0.951494f, 0.951524f, 0.951553f, 0.951582f, 0.951612f, 0.951641f, + 0.951671f, 0.951700f, 0.951730f, 0.951759f, 0.951789f, 0.951818f, 0.951847f, 0.951877f, + 0.951906f, 0.951936f, 0.951965f, 0.951994f, 0.952024f, 0.952053f, 0.952082f, 0.952112f, + 0.952141f, 0.952170f, 0.952199f, 0.952229f, 0.952258f, 0.952287f, 0.952317f, 0.952346f, + 0.952375f, 0.952404f, 0.952433f, 0.952463f, 0.952492f, 0.952521f, 0.952550f, 0.952579f, + 0.952609f, 0.952638f, 0.952667f, 0.952696f, 0.952725f, 0.952754f, 0.952783f, 0.952813f, + 0.952842f, 0.952871f, 0.952900f, 0.952929f, 0.952958f, 0.952987f, 0.953016f, 0.953045f, + 0.953074f, 0.953103f, 0.953132f, 0.953161f, 0.953190f, 0.953219f, 0.953248f, 0.953277f, + 0.953306f, 0.953335f, 0.953364f, 0.953393f, 0.953422f, 0.953451f, 0.953480f, 0.953508f, + 0.953537f, 0.953566f, 0.953595f, 0.953624f, 0.953653f, 0.953682f, 0.953711f, 0.953739f, + 0.953768f, 0.953797f, 0.953826f, 0.953855f, 0.953883f, 0.953912f, 0.953941f, 0.953970f, + 0.953998f, 0.954027f, 0.954056f, 0.954085f, 0.954113f, 0.954142f, 0.954171f, 0.954199f, + 0.954228f, 0.954257f, 0.954285f, 0.954314f, 0.954343f, 0.954371f, 0.954400f, 0.954429f, + 0.954457f, 0.954486f, 0.954514f, 0.954543f, 0.954572f, 0.954600f, 0.954629f, 0.954657f, + 0.954686f, 0.954714f, 0.954743f, 0.954771f, 0.954800f, 0.954828f, 0.954857f, 0.954885f, + 0.954914f, 0.954942f, 0.954971f, 0.954999f, 0.955028f, 0.955056f, 0.955084f, 0.955113f, + 0.955141f, 0.955170f, 0.955198f, 0.955226f, 0.955255f, 0.955283f, 0.955311f, 0.955340f, + 0.955368f, 0.955396f, 0.955425f, 0.955453f, 0.955481f, 0.955510f, 0.955538f, 0.955566f, + 0.955594f, 0.955623f, 0.955651f, 0.955679f, 0.955707f, 0.955736f, 0.955764f, 0.955792f, + 0.955820f, 0.955848f, 0.955876f, 0.955905f, 0.955933f, 0.955961f, 0.955989f, 0.956017f, + 0.956045f, 0.956073f, 0.956101f, 0.956130f, 0.956158f, 0.956186f, 0.956214f, 0.956242f, + 0.956270f, 0.956298f, 0.956326f, 0.956354f, 0.956382f, 0.956410f, 0.956438f, 0.956466f, + 0.956494f, 0.956522f, 0.956550f, 0.956578f, 0.956606f, 0.956634f, 0.956662f, 0.956689f, + 0.956717f, 0.956745f, 0.956773f, 0.956801f, 0.956829f, 0.956857f, 0.956885f, 0.956913f, + 0.956940f, 0.956968f, 0.956996f, 0.957024f, 0.957052f, 0.957079f, 0.957107f, 0.957135f, + 0.957163f, 0.957190f, 0.957218f, 0.957246f, 0.957274f, 0.957301f, 0.957329f, 0.957357f, + 0.957385f, 0.957412f, 0.957440f, 0.957468f, 0.957495f, 0.957523f, 0.957550f, 0.957578f, + 0.957606f, 0.957633f, 0.957661f, 0.957689f, 0.957716f, 0.957744f, 0.957771f, 0.957799f, + 0.957826f, 0.957854f, 0.957882f, 0.957909f, 0.957937f, 0.957964f, 0.957992f, 0.958019f, + 0.958046f, 0.958074f, 0.958101f, 0.958129f, 0.958156f, 0.958184f, 0.958211f, 0.958239f, + 0.958266f, 0.958293f, 0.958321f, 0.958348f, 0.958376f, 0.958403f, 0.958430f, 0.958458f, + 0.958485f, 0.958512f, 0.958540f, 0.958567f, 0.958594f, 0.958622f, 0.958649f, 0.958676f, + 0.958703f, 0.958731f, 0.958758f, 0.958785f, 0.958812f, 0.958840f, 0.958867f, 0.958894f, + 0.958921f, 0.958949f, 0.958976f, 0.959003f, 0.959030f, 0.959057f, 0.959084f, 0.959112f, + 0.959139f, 0.959166f, 0.959193f, 0.959220f, 0.959247f, 0.959274f, 0.959301f, 0.959328f, + 0.959355f, 0.959382f, 0.959409f, 0.959436f, 0.959463f, 0.959491f, 0.959518f, 0.959545f, + 0.959572f, 0.959598f, 0.959625f, 0.959652f, 0.959679f, 0.959706f, 0.959733f, 0.959760f, + 0.959787f, 0.959814f, 0.959841f, 0.959868f, 0.959895f, 0.959922f, 0.959948f, 0.959975f, + 0.960002f, 0.960029f, 0.960056f, 0.960083f, 0.960109f, 0.960136f, 0.960163f, 0.960190f, + 0.960217f, 0.960243f, 0.960270f, 0.960297f, 0.960324f, 0.960350f, 0.960377f, 0.960404f, + 0.960431f, 0.960457f, 0.960484f, 0.960511f, 0.960537f, 0.960564f, 0.960591f, 0.960617f, + 0.960644f, 0.960670f, 0.960697f, 0.960724f, 0.960750f, 0.960777f, 0.960804f, 0.960830f, + 0.960857f, 0.960883f, 0.960910f, 0.960936f, 0.960963f, 0.960989f, 0.961016f, 0.961042f, + 0.961069f, 0.961095f, 0.961122f, 0.961148f, 0.961175f, 0.961201f, 0.961228f, 0.961254f, + 0.961280f, 0.961307f, 0.961333f, 0.961360f, 0.961386f, 0.961412f, 0.961439f, 0.961465f, + 0.961492f, 0.961518f, 0.961544f, 0.961571f, 0.961597f, 0.961623f, 0.961649f, 0.961676f, + 0.961702f, 0.961728f, 0.961755f, 0.961781f, 0.961807f, 0.961833f, 0.961860f, 0.961886f, + 0.961912f, 0.961938f, 0.961964f, 0.961991f, 0.962017f, 0.962043f, 0.962069f, 0.962095f, + 0.962121f, 0.962148f, 0.962174f, 0.962200f, 0.962226f, 0.962252f, 0.962278f, 0.962304f, + 0.962330f, 0.962356f, 0.962382f, 0.962408f, 0.962434f, 0.962460f, 0.962486f, 0.962512f, + 0.962538f, 0.962564f, 0.962590f, 0.962616f, 0.962642f, 0.962668f, 0.962694f, 0.962720f, + 0.962746f, 0.962772f, 0.962798f, 0.962824f, 0.962850f, 0.962876f, 0.962902f, 0.962927f, + 0.962953f, 0.962979f, 0.963005f, 0.963031f, 0.963057f, 0.963082f, 0.963108f, 0.963134f, + 0.963160f, 0.963186f, 0.963211f, 0.963237f, 0.963263f, 0.963289f, 0.963314f, 0.963340f, + 0.963366f, 0.963391f, 0.963417f, 0.963443f, 0.963469f, 0.963494f, 0.963520f, 0.963546f, + 0.963571f, 0.963597f, 0.963623f, 0.963648f, 0.963674f, 0.963699f, 0.963725f, 0.963750f, + 0.963776f, 0.963802f, 0.963827f, 0.963853f, 0.963878f, 0.963904f, 0.963929f, 0.963955f, + 0.963980f, 0.964006f, 0.964031f, 0.964057f, 0.964082f, 0.964108f, 0.964133f, 0.964159f, + 0.964184f, 0.964209f, 0.964235f, 0.964260f, 0.964286f, 0.964311f, 0.964336f, 0.964362f, + 0.964387f, 0.964413f, 0.964438f, 0.964463f, 0.964489f, 0.964514f, 0.964539f, 0.964565f, + 0.964590f, 0.964615f, 0.964640f, 0.964666f, 0.964691f, 0.964716f, 0.964741f, 0.964767f, + 0.964792f, 0.964817f, 0.964842f, 0.964867f, 0.964893f, 0.964918f, 0.964943f, 0.964968f, + 0.964993f, 0.965018f, 0.965044f, 0.965069f, 0.965094f, 0.965119f, 0.965144f, 0.965169f, + 0.965194f, 0.965219f, 0.965244f, 0.965269f, 0.965294f, 0.965319f, 0.965344f, 0.965369f, + 0.965394f, 0.965419f, 0.965444f, 0.965469f, 0.965494f, 0.965519f, 0.965544f, 0.965569f, + 0.965594f, 0.965619f, 0.965644f, 0.965669f, 0.965694f, 0.965719f, 0.965744f, 0.965769f, + 0.965793f, 0.965818f, 0.965843f, 0.965868f, 0.965893f, 0.965918f, 0.965942f, 0.965967f, + 0.965992f, 0.966017f, 0.966042f, 0.966066f, 0.966091f, 0.966116f, 0.966141f, 0.966165f, + 0.966190f, 0.966215f, 0.966239f, 0.966264f, 0.966289f, 0.966313f, 0.966338f, 0.966363f, + 0.966387f, 0.966412f, 0.966437f, 0.966461f, 0.966486f, 0.966511f, 0.966535f, 0.966560f, + 0.966584f, 0.966609f, 0.966633f, 0.966658f, 0.966683f, 0.966707f, 0.966732f, 0.966756f, + 0.966781f, 0.966805f, 0.966830f, 0.966854f, 0.966879f, 0.966903f, 0.966928f, 0.966952f, + 0.966976f, 0.967001f, 0.967025f, 0.967050f, 0.967074f, 0.967099f, 0.967123f, 0.967147f, + 0.967172f, 0.967196f, 0.967220f, 0.967245f, 0.967269f, 0.967293f, 0.967318f, 0.967342f, + 0.967366f, 0.967391f, 0.967415f, 0.967439f, 0.967463f, 0.967488f, 0.967512f, 0.967536f, + 0.967560f, 0.967585f, 0.967609f, 0.967633f, 0.967657f, 0.967681f, 0.967706f, 0.967730f, + 0.967754f, 0.967778f, 0.967802f, 0.967826f, 0.967850f, 0.967874f, 0.967899f, 0.967923f, + 0.967947f, 0.967971f, 0.967995f, 0.968019f, 0.968043f, 0.968067f, 0.968091f, 0.968115f, + 0.968139f, 0.968163f, 0.968187f, 0.968211f, 0.968235f, 0.968259f, 0.968283f, 0.968307f, + 0.968331f, 0.968355f, 0.968379f, 0.968403f, 0.968427f, 0.968450f, 0.968474f, 0.968498f, + 0.968522f, 0.968546f, 0.968570f, 0.968594f, 0.968617f, 0.968641f, 0.968665f, 0.968689f, + 0.968713f, 0.968737f, 0.968760f, 0.968784f, 0.968808f, 0.968832f, 0.968855f, 0.968879f, + 0.968903f, 0.968927f, 0.968950f, 0.968974f, 0.968998f, 0.969021f, 0.969045f, 0.969069f, + 0.969092f, 0.969116f, 0.969140f, 0.969163f, 0.969187f, 0.969210f, 0.969234f, 0.969258f, + 0.969281f, 0.969305f, 0.969328f, 0.969352f, 0.969375f, 0.969399f, 0.969423f, 0.969446f, + 0.969470f, 0.969493f, 0.969517f, 0.969540f, 0.969564f, 0.969587f, 0.969611f, 0.969634f, + 0.969657f, 0.969681f, 0.969704f, 0.969728f, 0.969751f, 0.969774f, 0.969798f, 0.969821f, + 0.969845f, 0.969868f, 0.969891f, 0.969915f, 0.969938f, 0.969961f, 0.969985f, 0.970008f, + 0.970031f, 0.970055f, 0.970078f, 0.970101f, 0.970124f, 0.970148f, 0.970171f, 0.970194f, + 0.970217f, 0.970241f, 0.970264f, 0.970287f, 0.970310f, 0.970333f, 0.970357f, 0.970380f, + 0.970403f, 0.970426f, 0.970449f, 0.970472f, 0.970495f, 0.970518f, 0.970542f, 0.970565f, + 0.970588f, 0.970611f, 0.970634f, 0.970657f, 0.970680f, 0.970703f, 0.970726f, 0.970749f, + 0.970772f, 0.970795f, 0.970818f, 0.970841f, 0.970864f, 0.970887f, 0.970910f, 0.970933f, + 0.970956f, 0.970979f, 0.971002f, 0.971025f, 0.971048f, 0.971071f, 0.971093f, 0.971116f, + 0.971139f, 0.971162f, 0.971185f, 0.971208f, 0.971231f, 0.971253f, 0.971276f, 0.971299f, + 0.971322f, 0.971345f, 0.971367f, 0.971390f, 0.971413f, 0.971436f, 0.971458f, 0.971481f, + 0.971504f, 0.971527f, 0.971549f, 0.971572f, 0.971595f, 0.971617f, 0.971640f, 0.971663f, + 0.971685f, 0.971708f, 0.971731f, 0.971753f, 0.971776f, 0.971799f, 0.971821f, 0.971844f, + 0.971866f, 0.971889f, 0.971911f, 0.971934f, 0.971957f, 0.971979f, 0.972002f, 0.972024f, + 0.972047f, 0.972069f, 0.972092f, 0.972114f, 0.972137f, 0.972159f, 0.972182f, 0.972204f, + 0.972227f, 0.972249f, 0.972271f, 0.972294f, 0.972316f, 0.972339f, 0.972361f, 0.972383f, + 0.972406f, 0.972428f, 0.972450f, 0.972473f, 0.972495f, 0.972517f, 0.972540f, 0.972562f, + 0.972584f, 0.972607f, 0.972629f, 0.972651f, 0.972673f, 0.972696f, 0.972718f, 0.972740f, + 0.972762f, 0.972785f, 0.972807f, 0.972829f, 0.972851f, 0.972873f, 0.972896f, 0.972918f, + 0.972940f, 0.972962f, 0.972984f, 0.973006f, 0.973028f, 0.973051f, 0.973073f, 0.973095f, + 0.973117f, 0.973139f, 0.973161f, 0.973183f, 0.973205f, 0.973227f, 0.973249f, 0.973271f, + 0.973293f, 0.973315f, 0.973337f, 0.973359f, 0.973381f, 0.973403f, 0.973425f, 0.973447f, + 0.973469f, 0.973491f, 0.973513f, 0.973535f, 0.973557f, 0.973579f, 0.973601f, 0.973622f, + 0.973644f, 0.973666f, 0.973688f, 0.973710f, 0.973732f, 0.973753f, 0.973775f, 0.973797f, + 0.973819f, 0.973841f, 0.973862f, 0.973884f, 0.973906f, 0.973928f, 0.973949f, 0.973971f, + 0.973993f, 0.974015f, 0.974036f, 0.974058f, 0.974080f, 0.974101f, 0.974123f, 0.974145f, + 0.974166f, 0.974188f, 0.974210f, 0.974231f, 0.974253f, 0.974275f, 0.974296f, 0.974318f, + 0.974339f, 0.974361f, 0.974383f, 0.974404f, 0.974426f, 0.974447f, 0.974469f, 0.974490f, + 0.974512f, 0.974533f, 0.974555f, 0.974576f, 0.974598f, 0.974619f, 0.974641f, 0.974662f, + 0.974684f, 0.974705f, 0.974726f, 0.974748f, 0.974769f, 0.974791f, 0.974812f, 0.974833f, + 0.974855f, 0.974876f, 0.974897f, 0.974919f, 0.974940f, 0.974961f, 0.974983f, 0.975004f, + 0.975025f, 0.975047f, 0.975068f, 0.975089f, 0.975110f, 0.975132f, 0.975153f, 0.975174f, + 0.975195f, 0.975217f, 0.975238f, 0.975259f, 0.975280f, 0.975301f, 0.975323f, 0.975344f, + 0.975365f, 0.975386f, 0.975407f, 0.975428f, 0.975449f, 0.975471f, 0.975492f, 0.975513f, + 0.975534f, 0.975555f, 0.975576f, 0.975597f, 0.975618f, 0.975639f, 0.975660f, 0.975681f, + 0.975702f, 0.975723f, 0.975744f, 0.975765f, 0.975786f, 0.975807f, 0.975828f, 0.975849f, + 0.975870f, 0.975891f, 0.975912f, 0.975933f, 0.975954f, 0.975974f, 0.975995f, 0.976016f, + 0.976037f, 0.976058f, 0.976079f, 0.976100f, 0.976120f, 0.976141f, 0.976162f, 0.976183f, + 0.976204f, 0.976224f, 0.976245f, 0.976266f, 0.976287f, 0.976308f, 0.976328f, 0.976349f, + 0.976370f, 0.976390f, 0.976411f, 0.976432f, 0.976453f, 0.976473f, 0.976494f, 0.976515f, + 0.976535f, 0.976556f, 0.976576f, 0.976597f, 0.976618f, 0.976638f, 0.976659f, 0.976680f, + 0.976700f, 0.976721f, 0.976741f, 0.976762f, 0.976782f, 0.976803f, 0.976823f, 0.976844f, + 0.976864f, 0.976885f, 0.976905f, 0.976926f, 0.976946f, 0.976967f, 0.976987f, 0.977008f, + 0.977028f, 0.977049f, 0.977069f, 0.977089f, 0.977110f, 0.977130f, 0.977151f, 0.977171f, + 0.977191f, 0.977212f, 0.977232f, 0.977252f, 0.977273f, 0.977293f, 0.977313f, 0.977334f, + 0.977354f, 0.977374f, 0.977394f, 0.977415f, 0.977435f, 0.977455f, 0.977475f, 0.977496f, + 0.977516f, 0.977536f, 0.977556f, 0.977577f, 0.977597f, 0.977617f, 0.977637f, 0.977657f, + 0.977677f, 0.977697f, 0.977718f, 0.977738f, 0.977758f, 0.977778f, 0.977798f, 0.977818f, + 0.977838f, 0.977858f, 0.977878f, 0.977898f, 0.977918f, 0.977938f, 0.977959f, 0.977979f, + 0.977998f, 0.978019f, 0.978038f, 0.978058f, 0.978078f, 0.978098f, 0.978118f, 0.978138f, + 0.978158f, 0.978178f, 0.978198f, 0.978218f, 0.978238f, 0.978258f, 0.978278f, 0.978298f, + 0.978317f, 0.978337f, 0.978357f, 0.978377f, 0.978397f, 0.978417f, 0.978436f, 0.978456f, + 0.978476f, 0.978496f, 0.978516f, 0.978535f, 0.978555f, 0.978575f, 0.978594f, 0.978614f, + 0.978634f, 0.978654f, 0.978673f, 0.978693f, 0.978713f, 0.978732f, 0.978752f, 0.978772f, + 0.978791f, 0.978811f, 0.978831f, 0.978850f, 0.978870f, 0.978889f, 0.978909f, 0.978929f, + 0.978948f, 0.978968f, 0.978987f, 0.979007f, 0.979026f, 0.979046f, 0.979065f, 0.979085f, + 0.979104f, 0.979124f, 0.979143f, 0.979163f, 0.979182f, 0.979202f, 0.979221f, 0.979241f, + 0.979260f, 0.979280f, 0.979299f, 0.979318f, 0.979338f, 0.979357f, 0.979376f, 0.979396f, + 0.979415f, 0.979435f, 0.979454f, 0.979473f, 0.979493f, 0.979512f, 0.979531f, 0.979550f, + 0.979570f, 0.979589f, 0.979608f, 0.979628f, 0.979647f, 0.979666f, 0.979685f, 0.979704f, + 0.979724f, 0.979743f, 0.979762f, 0.979781f, 0.979800f, 0.979820f, 0.979839f, 0.979858f, + 0.979877f, 0.979896f, 0.979915f, 0.979934f, 0.979954f, 0.979973f, 0.979992f, 0.980011f, + 0.980030f, 0.980049f, 0.980068f, 0.980087f, 0.980106f, 0.980125f, 0.980144f, 0.980163f, + 0.980182f, 0.980201f, 0.980220f, 0.980239f, 0.980258f, 0.980277f, 0.980296f, 0.980315f, + 0.980334f, 0.980353f, 0.980372f, 0.980390f, 0.980409f, 0.980428f, 0.980447f, 0.980466f, + 0.980485f, 0.980504f, 0.980523f, 0.980541f, 0.980560f, 0.980579f, 0.980598f, 0.980617f, + 0.980635f, 0.980654f, 0.980673f, 0.980692f, 0.980710f, 0.980729f, 0.980748f, 0.980767f, + 0.980785f, 0.980804f, 0.980823f, 0.980841f, 0.980860f, 0.980879f, 0.980897f, 0.980916f, + 0.980935f, 0.980953f, 0.980972f, 0.980990f, 0.981009f, 0.981028f, 0.981046f, 0.981065f, + 0.981083f, 0.981102f, 0.981120f, 0.981139f, 0.981158f, 0.981176f, 0.981195f, 0.981213f, + 0.981232f, 0.981250f, 0.981269f, 0.981287f, 0.981305f, 0.981324f, 0.981342f, 0.981361f, + 0.981379f, 0.981398f, 0.981416f, 0.981434f, 0.981453f, 0.981471f, 0.981490f, 0.981508f, + 0.981526f, 0.981545f, 0.981563f, 0.981581f, 0.981600f, 0.981618f, 0.981636f, 0.981654f, + 0.981673f, 0.981691f, 0.981709f, 0.981727f, 0.981746f, 0.981764f, 0.981782f, 0.981800f, + 0.981819f, 0.981837f, 0.981855f, 0.981873f, 0.981891f, 0.981909f, 0.981928f, 0.981946f, + 0.981964f, 0.981982f, 0.982000f, 0.982018f, 0.982036f, 0.982054f, 0.982072f, 0.982091f, + 0.982109f, 0.982127f, 0.982145f, 0.982163f, 0.982181f, 0.982199f, 0.982217f, 0.982235f, + 0.982253f, 0.982271f, 0.982289f, 0.982307f, 0.982325f, 0.982343f, 0.982360f, 0.982378f, + 0.982396f, 0.982414f, 0.982432f, 0.982450f, 0.982468f, 0.982486f, 0.982504f, 0.982521f, + 0.982539f, 0.982557f, 0.982575f, 0.982593f, 0.982611f, 0.982628f, 0.982646f, 0.982664f, + 0.982682f, 0.982699f, 0.982717f, 0.982735f, 0.982753f, 0.982770f, 0.982788f, 0.982806f, + 0.982824f, 0.982841f, 0.982859f, 0.982877f, 0.982894f, 0.982912f, 0.982930f, 0.982947f, + 0.982965f, 0.982982f, 0.983000f, 0.983018f, 0.983035f, 0.983053f, 0.983070f, 0.983088f, + 0.983105f, 0.983123f, 0.983141f, 0.983158f, 0.983176f, 0.983193f, 0.983211f, 0.983228f, + 0.983246f, 0.983263f, 0.983281f, 0.983298f, 0.983315f, 0.983333f, 0.983350f, 0.983368f, + 0.983385f, 0.983402f, 0.983420f, 0.983437f, 0.983455f, 0.983472f, 0.983489f, 0.983507f, + 0.983524f, 0.983541f, 0.983559f, 0.983576f, 0.983593f, 0.983611f, 0.983628f, 0.983645f, + 0.983662f, 0.983680f, 0.983697f, 0.983714f, 0.983731f, 0.983749f, 0.983766f, 0.983783f, + 0.983800f, 0.983817f, 0.983835f, 0.983852f, 0.983869f, 0.983886f, 0.983903f, 0.983920f, + 0.983937f, 0.983955f, 0.983972f, 0.983989f, 0.984006f, 0.984023f, 0.984040f, 0.984057f, + 0.984074f, 0.984091f, 0.984108f, 0.984125f, 0.984142f, 0.984159f, 0.984176f, 0.984193f, + 0.984210f, 0.984227f, 0.984244f, 0.984261f, 0.984278f, 0.984295f, 0.984312f, 0.984329f, + 0.984346f, 0.984362f, 0.984379f, 0.984396f, 0.984413f, 0.984430f, 0.984447f, 0.984464f, + 0.984480f, 0.984497f, 0.984514f, 0.984531f, 0.984548f, 0.984564f, 0.984581f, 0.984598f, + 0.984615f, 0.984632f, 0.984648f, 0.984665f, 0.984682f, 0.984698f, 0.984715f, 0.984732f, + 0.984748f, 0.984765f, 0.984782f, 0.984798f, 0.984815f, 0.984832f, 0.984848f, 0.984865f, + 0.984882f, 0.984898f, 0.984915f, 0.984931f, 0.984948f, 0.984965f, 0.984981f, 0.984998f, + 0.985014f, 0.985031f, 0.985047f, 0.985064f, 0.985080f, 0.985097f, 0.985113f, 0.985130f, + 0.985146f, 0.985163f, 0.985179f, 0.985196f, 0.985212f, 0.985228f, 0.985245f, 0.985261f, + 0.985278f, 0.985294f, 0.985310f, 0.985327f, 0.985343f, 0.985359f, 0.985376f, 0.985392f, + 0.985408f, 0.985425f, 0.985441f, 0.985457f, 0.985474f, 0.985490f, 0.985506f, 0.985523f, + 0.985539f, 0.985555f, 0.985571f, 0.985587f, 0.985604f, 0.985620f, 0.985636f, 0.985652f, + 0.985668f, 0.985685f, 0.985701f, 0.985717f, 0.985733f, 0.985749f, 0.985765f, 0.985781f, + 0.985798f, 0.985814f, 0.985830f, 0.985846f, 0.985862f, 0.985878f, 0.985894f, 0.985910f, + 0.985926f, 0.985942f, 0.985958f, 0.985974f, 0.985990f, 0.986006f, 0.986022f, 0.986038f, + 0.986054f, 0.986070f, 0.986086f, 0.986102f, 0.986118f, 0.986134f, 0.986150f, 0.986165f, + 0.986181f, 0.986197f, 0.986213f, 0.986229f, 0.986245f, 0.986261f, 0.986276f, 0.986292f, + 0.986308f, 0.986324f, 0.986340f, 0.986355f, 0.986371f, 0.986387f, 0.986403f, 0.986419f, + 0.986434f, 0.986450f, 0.986466f, 0.986481f, 0.986497f, 0.986513f, 0.986529f, 0.986544f, + 0.986560f, 0.986576f, 0.986591f, 0.986607f, 0.986623f, 0.986638f, 0.986654f, 0.986669f, + 0.986685f, 0.986701f, 0.986716f, 0.986732f, 0.986747f, 0.986763f, 0.986778f, 0.986794f, + 0.986809f, 0.986825f, 0.986840f, 0.986856f, 0.986871f, 0.986887f, 0.986902f, 0.986918f, + 0.986933f, 0.986949f, 0.986964f, 0.986980f, 0.986995f, 0.987010f, 0.987026f, 0.987041f, + 0.987057f, 0.987072f, 0.987087f, 0.987103f, 0.987118f, 0.987133f, 0.987149f, 0.987164f, + 0.987179f, 0.987195f, 0.987210f, 0.987225f, 0.987240f, 0.987256f, 0.987271f, 0.987286f, + 0.987301f, 0.987317f, 0.987332f, 0.987347f, 0.987362f, 0.987377f, 0.987393f, 0.987408f, + 0.987423f, 0.987438f, 0.987453f, 0.987468f, 0.987484f, 0.987499f, 0.987514f, 0.987529f, + 0.987544f, 0.987559f, 0.987574f, 0.987589f, 0.987604f, 0.987619f, 0.987634f, 0.987649f, + 0.987664f, 0.987679f, 0.987694f, 0.987709f, 0.987724f, 0.987739f, 0.987754f, 0.987769f, + 0.987784f, 0.987799f, 0.987814f, 0.987829f, 0.987844f, 0.987859f, 0.987874f, 0.987889f, + 0.987903f, 0.987918f, 0.987933f, 0.987948f, 0.987963f, 0.987978f, 0.987992f, 0.988007f, + 0.988022f, 0.988037f, 0.988052f, 0.988066f, 0.988081f, 0.988096f, 0.988111f, 0.988125f, + 0.988140f, 0.988155f, 0.988169f, 0.988184f, 0.988199f, 0.988214f, 0.988228f, 0.988243f, + 0.988258f, 0.988272f, 0.988287f, 0.988301f, 0.988316f, 0.988331f, 0.988345f, 0.988360f, + 0.988374f, 0.988389f, 0.988404f, 0.988418f, 0.988433f, 0.988447f, 0.988462f, 0.988476f, + 0.988491f, 0.988505f, 0.988520f, 0.988534f, 0.988549f, 0.988563f, 0.988578f, 0.988592f, + 0.988607f, 0.988621f, 0.988635f, 0.988650f, 0.988664f, 0.988679f, 0.988693f, 0.988707f, + 0.988722f, 0.988736f, 0.988750f, 0.988765f, 0.988779f, 0.988793f, 0.988808f, 0.988822f, + 0.988836f, 0.988851f, 0.988865f, 0.988879f, 0.988893f, 0.988908f, 0.988922f, 0.988936f, + 0.988950f, 0.988964f, 0.988979f, 0.988993f, 0.989007f, 0.989021f, 0.989035f, 0.989050f, + 0.989064f, 0.989078f, 0.989092f, 0.989106f, 0.989120f, 0.989134f, 0.989148f, 0.989162f, + 0.989177f, 0.989191f, 0.989205f, 0.989219f, 0.989233f, 0.989247f, 0.989261f, 0.989275f, + 0.989289f, 0.989303f, 0.989317f, 0.989331f, 0.989345f, 0.989359f, 0.989373f, 0.989386f, + 0.989400f, 0.989414f, 0.989428f, 0.989442f, 0.989456f, 0.989470f, 0.989484f, 0.989498f, + 0.989511f, 0.989525f, 0.989539f, 0.989553f, 0.989567f, 0.989581f, 0.989594f, 0.989608f, + 0.989622f, 0.989636f, 0.989650f, 0.989663f, 0.989677f, 0.989691f, 0.989704f, 0.989718f, + 0.989732f, 0.989746f, 0.989759f, 0.989773f, 0.989787f, 0.989800f, 0.989814f, 0.989828f, + 0.989841f, 0.989855f, 0.989869f, 0.989882f, 0.989896f, 0.989909f, 0.989923f, 0.989936f, + 0.989950f, 0.989964f, 0.989977f, 0.989991f, 0.990004f, 0.990018f, 0.990031f, 0.990045f, + 0.990058f, 0.990072f, 0.990085f, 0.990099f, 0.990112f, 0.990126f, 0.990139f, 0.990152f, + 0.990166f, 0.990179f, 0.990193f, 0.990206f, 0.990219f, 0.990233f, 0.990246f, 0.990259f, + 0.990273f, 0.990286f, 0.990299f, 0.990313f, 0.990326f, 0.990339f, 0.990353f, 0.990366f, + 0.990379f, 0.990393f, 0.990406f, 0.990419f, 0.990432f, 0.990445f, 0.990459f, 0.990472f, + 0.990485f, 0.990498f, 0.990511f, 0.990525f, 0.990538f, 0.990551f, 0.990564f, 0.990577f, + 0.990590f, 0.990603f, 0.990617f, 0.990630f, 0.990643f, 0.990656f, 0.990669f, 0.990682f, + 0.990695f, 0.990708f, 0.990721f, 0.990734f, 0.990747f, 0.990760f, 0.990773f, 0.990786f, + 0.990799f, 0.990812f, 0.990825f, 0.990838f, 0.990851f, 0.990864f, 0.990877f, 0.990890f, + 0.990903f, 0.990916f, 0.990928f, 0.990941f, 0.990954f, 0.990967f, 0.990980f, 0.990993f, + 0.991006f, 0.991018f, 0.991031f, 0.991044f, 0.991057f, 0.991070f, 0.991082f, 0.991095f, + 0.991108f, 0.991121f, 0.991133f, 0.991146f, 0.991159f, 0.991172f, 0.991184f, 0.991197f, + 0.991210f, 0.991222f, 0.991235f, 0.991248f, 0.991260f, 0.991273f, 0.991286f, 0.991298f, + 0.991311f, 0.991323f, 0.991336f, 0.991349f, 0.991361f, 0.991374f, 0.991386f, 0.991399f, + 0.991411f, 0.991424f, 0.991437f, 0.991449f, 0.991462f, 0.991474f, 0.991487f, 0.991499f, + 0.991511f, 0.991524f, 0.991536f, 0.991549f, 0.991561f, 0.991574f, 0.991586f, 0.991598f, + 0.991611f, 0.991623f, 0.991636f, 0.991648f, 0.991660f, 0.991673f, 0.991685f, 0.991697f, + 0.991710f, 0.991722f, 0.991734f, 0.991747f, 0.991759f, 0.991771f, 0.991783f, 0.991796f, + 0.991808f, 0.991820f, 0.991832f, 0.991845f, 0.991857f, 0.991869f, 0.991881f, 0.991894f, + 0.991906f, 0.991918f, 0.991930f, 0.991942f, 0.991954f, 0.991966f, 0.991979f, 0.991991f, + 0.992003f, 0.992015f, 0.992027f, 0.992039f, 0.992051f, 0.992063f, 0.992075f, 0.992087f, + 0.992099f, 0.992111f, 0.992123f, 0.992135f, 0.992147f, 0.992159f, 0.992171f, 0.992183f, + 0.992195f, 0.992207f, 0.992219f, 0.992231f, 0.992243f, 0.992255f, 0.992267f, 0.992279f, + 0.992291f, 0.992302f, 0.992314f, 0.992326f, 0.992338f, 0.992350f, 0.992362f, 0.992374f, + 0.992385f, 0.992397f, 0.992409f, 0.992421f, 0.992433f, 0.992444f, 0.992456f, 0.992468f, + 0.992480f, 0.992491f, 0.992503f, 0.992515f, 0.992526f, 0.992538f, 0.992550f, 0.992561f, + 0.992573f, 0.992585f, 0.992596f, 0.992608f, 0.992620f, 0.992631f, 0.992643f, 0.992655f, + 0.992666f, 0.992678f, 0.992689f, 0.992701f, 0.992712f, 0.992724f, 0.992736f, 0.992747f, + 0.992759f, 0.992770f, 0.992782f, 0.992793f, 0.992805f, 0.992816f, 0.992828f, 0.992839f, + 0.992850f, 0.992862f, 0.992873f, 0.992885f, 0.992896f, 0.992908f, 0.992919f, 0.992930f, + 0.992942f, 0.992953f, 0.992964f, 0.992976f, 0.992987f, 0.992998f, 0.993010f, 0.993021f, + 0.993032f, 0.993044f, 0.993055f, 0.993066f, 0.993077f, 0.993089f, 0.993100f, 0.993111f, + 0.993122f, 0.993134f, 0.993145f, 0.993156f, 0.993167f, 0.993178f, 0.993190f, 0.993201f, + 0.993212f, 0.993223f, 0.993234f, 0.993245f, 0.993257f, 0.993268f, 0.993279f, 0.993290f, + 0.993301f, 0.993312f, 0.993323f, 0.993334f, 0.993345f, 0.993356f, 0.993367f, 0.993378f, + 0.993389f, 0.993400f, 0.993411f, 0.993422f, 0.993433f, 0.993444f, 0.993455f, 0.993466f, + 0.993477f, 0.993488f, 0.993499f, 0.993510f, 0.993521f, 0.993532f, 0.993542f, 0.993553f, + 0.993564f, 0.993575f, 0.993586f, 0.993597f, 0.993608f, 0.993618f, 0.993629f, 0.993640f, + 0.993651f, 0.993662f, 0.993672f, 0.993683f, 0.993694f, 0.993705f, 0.993715f, 0.993726f, + 0.993737f, 0.993747f, 0.993758f, 0.993769f, 0.993779f, 0.993790f, 0.993801f, 0.993811f, + 0.993822f, 0.993833f, 0.993843f, 0.993854f, 0.993865f, 0.993875f, 0.993886f, 0.993896f, + 0.993907f, 0.993918f, 0.993928f, 0.993939f, 0.993949f, 0.993960f, 0.993970f, 0.993981f, + 0.993991f, 0.994002f, 0.994012f, 0.994023f, 0.994033f, 0.994044f, 0.994054f, 0.994064f, + 0.994075f, 0.994085f, 0.994096f, 0.994106f, 0.994116f, 0.994127f, 0.994137f, 0.994148f, + 0.994158f, 0.994168f, 0.994179f, 0.994189f, 0.994199f, 0.994210f, 0.994220f, 0.994230f, + 0.994240f, 0.994251f, 0.994261f, 0.994271f, 0.994281f, 0.994292f, 0.994302f, 0.994312f, + 0.994322f, 0.994333f, 0.994343f, 0.994353f, 0.994363f, 0.994373f, 0.994383f, 0.994394f, + 0.994404f, 0.994414f, 0.994424f, 0.994434f, 0.994444f, 0.994454f, 0.994464f, 0.994474f, + 0.994484f, 0.994494f, 0.994505f, 0.994515f, 0.994525f, 0.994535f, 0.994545f, 0.994555f, + 0.994565f, 0.994575f, 0.994585f, 0.994594f, 0.994604f, 0.994614f, 0.994624f, 0.994634f, + 0.994644f, 0.994654f, 0.994664f, 0.994674f, 0.994684f, 0.994694f, 0.994703f, 0.994713f, + 0.994723f, 0.994733f, 0.994743f, 0.994753f, 0.994762f, 0.994772f, 0.994782f, 0.994792f, + 0.994802f, 0.994811f, 0.994821f, 0.994831f, 0.994841f, 0.994850f, 0.994860f, 0.994870f, + 0.994879f, 0.994889f, 0.994899f, 0.994908f, 0.994918f, 0.994928f, 0.994937f, 0.994947f, + 0.994957f, 0.994966f, 0.994976f, 0.994985f, 0.994995f, 0.995005f, 0.995014f, 0.995024f, + 0.995033f, 0.995043f, 0.995052f, 0.995062f, 0.995071f, 0.995081f, 0.995090f, 0.995100f, + 0.995109f, 0.995119f, 0.995128f, 0.995138f, 0.995147f, 0.995156f, 0.995166f, 0.995175f, + 0.995185f, 0.995194f, 0.995203f, 0.995213f, 0.995222f, 0.995232f, 0.995241f, 0.995250f, + 0.995260f, 0.995269f, 0.995278f, 0.995288f, 0.995297f, 0.995306f, 0.995315f, 0.995325f, + 0.995334f, 0.995343f, 0.995352f, 0.995362f, 0.995371f, 0.995380f, 0.995389f, 0.995398f, + 0.995408f, 0.995417f, 0.995426f, 0.995435f, 0.995444f, 0.995453f, 0.995463f, 0.995472f, + 0.995481f, 0.995490f, 0.995499f, 0.995508f, 0.995517f, 0.995526f, 0.995535f, 0.995544f, + 0.995553f, 0.995562f, 0.995571f, 0.995580f, 0.995589f, 0.995598f, 0.995607f, 0.995616f, + 0.995625f, 0.995634f, 0.995643f, 0.995652f, 0.995661f, 0.995670f, 0.995679f, 0.995688f, + 0.995697f, 0.995705f, 0.995714f, 0.995723f, 0.995732f, 0.995741f, 0.995750f, 0.995759f, + 0.995767f, 0.995776f, 0.995785f, 0.995794f, 0.995803f, 0.995811f, 0.995820f, 0.995829f, + 0.995838f, 0.995846f, 0.995855f, 0.995864f, 0.995872f, 0.995881f, 0.995890f, 0.995899f, + 0.995907f, 0.995916f, 0.995925f, 0.995933f, 0.995942f, 0.995950f, 0.995959f, 0.995968f, + 0.995976f, 0.995985f, 0.995993f, 0.996002f, 0.996011f, 0.996019f, 0.996028f, 0.996036f, + 0.996045f, 0.996053f, 0.996062f, 0.996070f, 0.996079f, 0.996087f, 0.996096f, 0.996104f, + 0.996113f, 0.996121f, 0.996129f, 0.996138f, 0.996146f, 0.996155f, 0.996163f, 0.996171f, + 0.996180f, 0.996188f, 0.996197f, 0.996205f, 0.996213f, 0.996222f, 0.996230f, 0.996238f, + 0.996247f, 0.996255f, 0.996263f, 0.996271f, 0.996280f, 0.996288f, 0.996296f, 0.996304f, + 0.996313f, 0.996321f, 0.996329f, 0.996337f, 0.996345f, 0.996354f, 0.996362f, 0.996370f, + 0.996378f, 0.996386f, 0.996394f, 0.996403f, 0.996411f, 0.996419f, 0.996427f, 0.996435f, + 0.996443f, 0.996451f, 0.996459f, 0.996467f, 0.996475f, 0.996483f, 0.996491f, 0.996499f, + 0.996507f, 0.996515f, 0.996523f, 0.996531f, 0.996539f, 0.996547f, 0.996555f, 0.996563f, + 0.996571f, 0.996579f, 0.996587f, 0.996595f, 0.996603f, 0.996611f, 0.996619f, 0.996626f, + 0.996634f, 0.996642f, 0.996650f, 0.996658f, 0.996666f, 0.996674f, 0.996681f, 0.996689f, + 0.996697f, 0.996705f, 0.996712f, 0.996720f, 0.996728f, 0.996736f, 0.996743f, 0.996751f, + 0.996759f, 0.996767f, 0.996774f, 0.996782f, 0.996790f, 0.996797f, 0.996805f, 0.996813f, + 0.996820f, 0.996828f, 0.996836f, 0.996843f, 0.996851f, 0.996858f, 0.996866f, 0.996874f, + 0.996881f, 0.996889f, 0.996896f, 0.996904f, 0.996911f, 0.996919f, 0.996926f, 0.996934f, + 0.996941f, 0.996949f, 0.996956f, 0.996964f, 0.996971f, 0.996979f, 0.996986f, 0.996994f, + 0.997001f, 0.997008f, 0.997016f, 0.997023f, 0.997031f, 0.997038f, 0.997045f, 0.997053f, + 0.997060f, 0.997067f, 0.997075f, 0.997082f, 0.997089f, 0.997097f, 0.997104f, 0.997111f, + 0.997119f, 0.997126f, 0.997133f, 0.997140f, 0.997148f, 0.997155f, 0.997162f, 0.997169f, + 0.997176f, 0.997184f, 0.997191f, 0.997198f, 0.997205f, 0.997212f, 0.997219f, 0.997227f, + 0.997234f, 0.997241f, 0.997248f, 0.997255f, 0.997262f, 0.997269f, 0.997276f, 0.997283f, + 0.997290f, 0.997298f, 0.997305f, 0.997312f, 0.997319f, 0.997326f, 0.997333f, 0.997340f, + 0.997347f, 0.997354f, 0.997361f, 0.997368f, 0.997374f, 0.997381f, 0.997388f, 0.997395f, + 0.997402f, 0.997409f, 0.997416f, 0.997423f, 0.997430f, 0.997437f, 0.997443f, 0.997450f, + 0.997457f, 0.997464f, 0.997471f, 0.997478f, 0.997484f, 0.997491f, 0.997498f, 0.997505f, + 0.997511f, 0.997518f, 0.997525f, 0.997532f, 0.997538f, 0.997545f, 0.997552f, 0.997559f, + 0.997565f, 0.997572f, 0.997579f, 0.997585f, 0.997592f, 0.997599f, 0.997605f, 0.997612f, + 0.997618f, 0.997625f, 0.997632f, 0.997638f, 0.997645f, 0.997651f, 0.997658f, 0.997665f, + 0.997671f, 0.997678f, 0.997684f, 0.997691f, 0.997697f, 0.997704f, 0.997710f, 0.997717f, + 0.997723f, 0.997730f, 0.997736f, 0.997742f, 0.997749f, 0.997755f, 0.997762f, 0.997768f, + 0.997774f, 0.997781f, 0.997787f, 0.997794f, 0.997800f, 0.997806f, 0.997813f, 0.997819f, + 0.997825f, 0.997832f, 0.997838f, 0.997844f, 0.997851f, 0.997857f, 0.997863f, 0.997869f, + 0.997876f, 0.997882f, 0.997888f, 0.997894f, 0.997901f, 0.997907f, 0.997913f, 0.997919f, + 0.997925f, 0.997931f, 0.997938f, 0.997944f, 0.997950f, 0.997956f, 0.997962f, 0.997968f, + 0.997974f, 0.997980f, 0.997987f, 0.997993f, 0.997999f, 0.998005f, 0.998011f, 0.998017f, + 0.998023f, 0.998029f, 0.998035f, 0.998041f, 0.998047f, 0.998053f, 0.998059f, 0.998065f, + 0.998071f, 0.998077f, 0.998083f, 0.998089f, 0.998094f, 0.998100f, 0.998106f, 0.998112f, + 0.998118f, 0.998124f, 0.998130f, 0.998136f, 0.998142f, 0.998147f, 0.998153f, 0.998159f, + 0.998165f, 0.998171f, 0.998176f, 0.998182f, 0.998188f, 0.998194f, 0.998200f, 0.998205f, + 0.998211f, 0.998217f, 0.998222f, 0.998228f, 0.998234f, 0.998240f, 0.998245f, 0.998251f, + 0.998257f, 0.998262f, 0.998268f, 0.998273f, 0.998279f, 0.998285f, 0.998290f, 0.998296f, + 0.998302f, 0.998307f, 0.998313f, 0.998318f, 0.998324f, 0.998329f, 0.998335f, 0.998340f, + 0.998346f, 0.998351f, 0.998357f, 0.998362f, 0.998368f, 0.998373f, 0.998379f, 0.998384f, + 0.998390f, 0.998395f, 0.998401f, 0.998406f, 0.998411f, 0.998417f, 0.998422f, 0.998428f, + 0.998433f, 0.998438f, 0.998444f, 0.998449f, 0.998454f, 0.998460f, 0.998465f, 0.998470f, + 0.998476f, 0.998481f, 0.998486f, 0.998491f, 0.998497f, 0.998502f, 0.998507f, 0.998512f, + 0.998518f, 0.998523f, 0.998528f, 0.998533f, 0.998538f, 0.998544f, 0.998549f, 0.998554f, + 0.998559f, 0.998564f, 0.998569f, 0.998574f, 0.998580f, 0.998585f, 0.998590f, 0.998595f, + 0.998600f, 0.998605f, 0.998610f, 0.998615f, 0.998620f, 0.998625f, 0.998630f, 0.998635f, + 0.998640f, 0.998645f, 0.998650f, 0.998655f, 0.998660f, 0.998665f, 0.998670f, 0.998675f, + 0.998680f, 0.998685f, 0.998690f, 0.998695f, 0.998700f, 0.998704f, 0.998709f, 0.998714f, + 0.998719f, 0.998724f, 0.998729f, 0.998734f, 0.998738f, 0.998743f, 0.998748f, 0.998753f, + 0.998758f, 0.998762f, 0.998767f, 0.998772f, 0.998777f, 0.998781f, 0.998786f, 0.998791f, + 0.998795f, 0.998800f, 0.998805f, 0.998810f, 0.998814f, 0.998819f, 0.998824f, 0.998828f, + 0.998833f, 0.998837f, 0.998842f, 0.998847f, 0.998851f, 0.998856f, 0.998860f, 0.998865f, + 0.998870f, 0.998874f, 0.998879f, 0.998883f, 0.998888f, 0.998892f, 0.998897f, 0.998901f, + 0.998906f, 0.998910f, 0.998915f, 0.998919f, 0.998924f, 0.998928f, 0.998932f, 0.998937f, + 0.998941f, 0.998946f, 0.998950f, 0.998954f, 0.998959f, 0.998963f, 0.998968f, 0.998972f, + 0.998976f, 0.998981f, 0.998985f, 0.998989f, 0.998994f, 0.998998f, 0.999002f, 0.999006f, + 0.999011f, 0.999015f, 0.999019f, 0.999023f, 0.999028f, 0.999032f, 0.999036f, 0.999040f, + 0.999044f, 0.999049f, 0.999053f, 0.999057f, 0.999061f, 0.999065f, 0.999069f, 0.999074f, + 0.999078f, 0.999082f, 0.999086f, 0.999090f, 0.999094f, 0.999098f, 0.999102f, 0.999106f, + 0.999110f, 0.999114f, 0.999118f, 0.999122f, 0.999126f, 0.999130f, 0.999134f, 0.999138f, + 0.999142f, 0.999146f, 0.999150f, 0.999154f, 0.999158f, 0.999162f, 0.999166f, 0.999170f, + 0.999174f, 0.999178f, 0.999182f, 0.999186f, 0.999189f, 0.999193f, 0.999197f, 0.999201f, + 0.999205f, 0.999209f, 0.999212f, 0.999216f, 0.999220f, 0.999224f, 0.999228f, 0.999231f, + 0.999235f, 0.999239f, 0.999243f, 0.999246f, 0.999250f, 0.999254f, 0.999257f, 0.999261f, + 0.999265f, 0.999268f, 0.999272f, 0.999276f, 0.999279f, 0.999283f, 0.999287f, 0.999290f, + 0.999294f, 0.999297f, 0.999301f, 0.999305f, 0.999308f, 0.999312f, 0.999315f, 0.999319f, + 0.999322f, 0.999326f, 0.999329f, 0.999333f, 0.999336f, 0.999340f, 0.999343f, 0.999347f, + 0.999350f, 0.999354f, 0.999357f, 0.999361f, 0.999364f, 0.999367f, 0.999371f, 0.999374f, + 0.999378f, 0.999381f, 0.999384f, 0.999388f, 0.999391f, 0.999394f, 0.999398f, 0.999401f, + 0.999404f, 0.999408f, 0.999411f, 0.999414f, 0.999418f, 0.999421f, 0.999424f, 0.999427f, + 0.999431f, 0.999434f, 0.999437f, 0.999440f, 0.999443f, 0.999447f, 0.999450f, 0.999453f, + 0.999456f, 0.999459f, 0.999462f, 0.999466f, 0.999469f, 0.999472f, 0.999475f, 0.999478f, + 0.999481f, 0.999484f, 0.999487f, 0.999490f, 0.999493f, 0.999497f, 0.999500f, 0.999503f, + 0.999506f, 0.999509f, 0.999512f, 0.999515f, 0.999518f, 0.999521f, 0.999524f, 0.999527f, + 0.999529f, 0.999532f, 0.999535f, 0.999538f, 0.999541f, 0.999544f, 0.999547f, 0.999550f, + 0.999553f, 0.999556f, 0.999558f, 0.999561f, 0.999564f, 0.999567f, 0.999570f, 0.999573f, + 0.999575f, 0.999578f, 0.999581f, 0.999584f, 0.999586f, 0.999589f, 0.999592f, 0.999595f, + 0.999597f, 0.999600f, 0.999603f, 0.999605f, 0.999608f, 0.999611f, 0.999614f, 0.999616f, + 0.999619f, 0.999621f, 0.999624f, 0.999627f, 0.999629f, 0.999632f, 0.999635f, 0.999637f, + 0.999640f, 0.999642f, 0.999645f, 0.999647f, 0.999650f, 0.999652f, 0.999655f, 0.999658f, + 0.999660f, 0.999663f, 0.999665f, 0.999667f, 0.999670f, 0.999672f, 0.999675f, 0.999677f, + 0.999680f, 0.999682f, 0.999685f, 0.999687f, 0.999689f, 0.999692f, 0.999694f, 0.999696f, + 0.999699f, 0.999701f, 0.999704f, 0.999706f, 0.999708f, 0.999710f, 0.999713f, 0.999715f, + 0.999717f, 0.999720f, 0.999722f, 0.999724f, 0.999726f, 0.999729f, 0.999731f, 0.999733f, + 0.999735f, 0.999738f, 0.999740f, 0.999742f, 0.999744f, 0.999746f, 0.999748f, 0.999750f, + 0.999753f, 0.999755f, 0.999757f, 0.999759f, 0.999761f, 0.999763f, 0.999765f, 0.999767f, + 0.999769f, 0.999771f, 0.999774f, 0.999776f, 0.999778f, 0.999780f, 0.999782f, 0.999784f, + 0.999786f, 0.999788f, 0.999790f, 0.999792f, 0.999793f, 0.999795f, 0.999797f, 0.999799f, + 0.999801f, 0.999803f, 0.999805f, 0.999807f, 0.999809f, 0.999811f, 0.999812f, 0.999814f, + 0.999816f, 0.999818f, 0.999820f, 0.999822f, 0.999823f, 0.999825f, 0.999827f, 0.999829f, + 0.999831f, 0.999832f, 0.999834f, 0.999836f, 0.999838f, 0.999839f, 0.999841f, 0.999843f, + 0.999844f, 0.999846f, 0.999848f, 0.999849f, 0.999851f, 0.999853f, 0.999854f, 0.999856f, + 0.999858f, 0.999859f, 0.999861f, 0.999862f, 0.999864f, 0.999866f, 0.999867f, 0.999869f, + 0.999870f, 0.999872f, 0.999873f, 0.999875f, 0.999876f, 0.999878f, 0.999879f, 0.999881f, + 0.999882f, 0.999884f, 0.999885f, 0.999887f, 0.999888f, 0.999890f, 0.999891f, 0.999892f, + 0.999894f, 0.999895f, 0.999897f, 0.999898f, 0.999899f, 0.999901f, 0.999902f, 0.999903f, + 0.999905f, 0.999906f, 0.999907f, 0.999909f, 0.999910f, 0.999911f, 0.999913f, 0.999914f, + 0.999915f, 0.999916f, 0.999917f, 0.999919f, 0.999920f, 0.999921f, 0.999922f, 0.999924f, + 0.999925f, 0.999926f, 0.999927f, 0.999928f, 0.999929f, 0.999930f, 0.999932f, 0.999933f, + 0.999934f, 0.999935f, 0.999936f, 0.999937f, 0.999938f, 0.999939f, 0.999940f, 0.999941f, + 0.999942f, 0.999943f, 0.999944f, 0.999945f, 0.999946f, 0.999947f, 0.999948f, 0.999949f, + 0.999950f, 0.999951f, 0.999952f, 0.999953f, 0.999954f, 0.999955f, 0.999956f, 0.999957f, + 0.999958f, 0.999959f, 0.999959f, 0.999960f, 0.999961f, 0.999962f, 0.999963f, 0.999964f, + 0.999964f, 0.999965f, 0.999966f, 0.999967f, 0.999968f, 0.999968f, 0.999969f, 0.999970f, + 0.999971f, 0.999971f, 0.999972f, 0.999973f, 0.999973f, 0.999974f, 0.999975f, 0.999976f, + 0.999976f, 0.999977f, 0.999977f, 0.999978f, 0.999979f, 0.999979f, 0.999980f, 0.999981f, + 0.999981f, 0.999982f, 0.999982f, 0.999983f, 0.999983f, 0.999984f, 0.999985f, 0.999985f, + 0.999986f, 0.999986f, 0.999987f, 0.999987f, 0.999988f, 0.999988f, 0.999988f, 0.999989f, + 0.999989f, 0.999990f, 0.999990f, 0.999991f, 0.999991f, 0.999991f, 0.999992f, 0.999992f, + 0.999993f, 0.999993f, 0.999993f, 0.999994f, 0.999994f, 0.999994f, 0.999995f, 0.999995f, + 0.999995f, 0.999996f, 0.999996f, 0.999996f, 0.999996f, 0.999997f, 0.999997f, 0.999997f, + 0.999997f, 0.999998f, 0.999998f, 0.999998f, 0.999998f, 0.999998f, 0.999999f, 0.999999f, + 0.999999f, 0.999999f, 0.999999f, 0.999999f, 0.999999f, 0.999999f, 1.000000f, 1.000000f, + 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f +}; + +static const float *cosTables[17] = { + 0 , 0 , 0 , 0 , + cosTable16 , cosTable32 , cosTable64 , cosTable128 , + cosTable256 , cosTable512 , cosTable1024 , cosTable2048 , + cosTable4096, cosTable8192, cosTable16384, cosTable32768, + cosTable65536 +}; + +const float *getCosineTable(int bits) { + assert((bits >= 4) && (bits <= 16)); + + return cosTables[bits]; +} + +} // End of namespace Common diff --git a/common/cosinetables.h b/common/cosinetables.h new file mode 100644 index 0000000000..5744d21569 --- /dev/null +++ b/common/cosinetables.h @@ -0,0 +1,37 @@ +/* ScummVM - Graphic Adventure Engine + * + * ScummVM is the legal property of its developers, whose names + * are too numerous to list here. Please refer to the COPYRIGHT + * file distributed with this source distribution. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ + +#ifndef COMMON_COSINETABLES_H +#define COMMON_COSINETABLES_H + +namespace Common { + +/** + * Get a cosine table with the specified bit precision + * + * @param bits Precision of the table, which must be in range [4, 16] + */ +const float *getCosineTable(int bits); + +} // End of namespace Common + +#endif // COMMON_COSINETABLES_H diff --git a/common/dct.cpp b/common/dct.cpp new file mode 100644 index 0000000000..6525c727ae --- /dev/null +++ b/common/dct.cpp @@ -0,0 +1,208 @@ +/* ScummVM - Graphic Adventure Engine + * + * ScummVM is the legal property of its developers, whose names + * are too numerous to list here. Please refer to the COPYRIGHT + * file distributed with this source distribution. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ + +// Based on eos' (I)RDFT code which is in turn +// Based upon the (I)DCT code in FFmpeg +// Copyright (c) 2009 Peter Ross <pross@xvid.org> +// Copyright (c) 2010 Alex Converse <alex.converse@gmail.com> +// Copyright (c) 2010 Vitor Sessak + +#include "common/cosinetables.h" +#include "common/dct.h" + +namespace Common { + +DCT::DCT(int bits, TransformType trans) : _bits(bits), _trans(trans), _rdft(0) { + int n = 1 << _bits; + + _tCos = getCosineTable(_bits + 2); + + _csc2 = new float[n / 2]; + + _rdft = new RDFT(_bits, (_trans == DCT_III) ? RDFT::IDFT_C2R : RDFT::DFT_R2C); + + for (int i = 0; i < (n / 2); i++) + _csc2[i] = 0.5 / sin((M_PI / (2 * n) * (2 * i + 1))); +} + +DCT::~DCT() { + delete _rdft; + delete[] _csc2; +} + +void DCT::calc(float *data) { + switch (_trans) { + case DCT_I: + calcDCTI(data); + break; + case DCT_II: + calcDCTII(data); + break; + case DCT_III: + calcDCTIII(data); + break; + case DST_I: + calcDSTI(data); + break; + } +} + +/* sin((M_PI * x / (2*n)) */ +#define SIN(n,x) (_tCos[(n) - (x)]) +/* cos((M_PI * x / (2*n)) */ +#define COS(n,x) (_tCos[x]) + +void DCT::calcDCTI(float *data) { + int n = 1 << _bits; + + float next = -0.5 * (data[0] - data[n]); + + for (int i = 0; i < (n / 2); i++) { + float tmp1 = data[i ]; + float tmp2 = data[n - i]; + + float s = SIN(n, 2 * i); + float c = COS(n, 2 * i); + + c *= tmp1 - tmp2; + s *= tmp1 - tmp2; + + next += c; + + tmp1 = (tmp1 + tmp2) * 0.5; + + data[i ] = tmp1 - s; + data[n - i] = tmp1 + s; + } + + _rdft->calc(data); + + data[n] = data[1]; + data[1] = next; + + for (int i = 3; i <= n; i += 2) + data[i] = data[i - 2] - data[i]; +} + +void DCT::calcDCTII(float *data) { + int n = 1 << _bits; + + for (int i = 0; i < (n / 2); i++) { + float tmp1 = data[i ]; + float tmp2 = data[n - i - 1]; + + float s = SIN(n, 2 * i + 1); + + s *= tmp1 - tmp2; + + tmp1 = (tmp1 + tmp2) * 0.5; + + data[i ] = tmp1 + s; + data[n - i - 1] = tmp1 - s; + } + + _rdft->calc(data); + + float next = data[1] * 0.5; + + data[1] *= -1; + + for (int i = n - 2; i >= 0; i -= 2) { + float inr = data[i ]; + float ini = data[i + 1]; + + float c = COS(n, i); + float s = SIN(n, i); + + data[i ] = c * inr + s * ini; + data[i + 1] = next; + + next += s * inr - c * ini; + } +} + +void DCT::calcDCTIII(float *data) { + int n = 1 << _bits; + + float next = data[n - 1]; + float inv_n = 1.0 / n; + + for (int i = n - 2; i >= 2; i -= 2) { + float val1 = data[i ]; + float val2 = data[i - 1] - data[i + 1]; + + float c = COS(n, i); + float s = SIN(n, i); + + data[i ] = c * val1 + s * val2; + data[i + 1] = s * val1 - c * val2; + } + + data[1] = 2 * next; + + _rdft->calc(data); + + for (int i = 0; i < (n / 2); i++) { + float tmp1 = data[i ] * inv_n; + float tmp2 = data[n - i - 1] * inv_n; + + float csc = _csc2[i] * (tmp1 - tmp2); + + tmp1 += tmp2; + + data[i ] = tmp1 + csc; + data[n - i - 1] = tmp1 - csc; + } +} + +void DCT::calcDSTI(float *data) { + int n = 1 << _bits; + + data[0] = 0; + + for (int i = 1; i < (n / 2); i++) { + float tmp1 = data[i ]; + float tmp2 = data[n - i]; + float s = SIN(n, 2 * i); + + s *= tmp1 + tmp2; + tmp1 = (tmp1 - tmp2) * 0.5; + + data[i ] = s + tmp1; + data[n - i] = s - tmp1; + } + + data[n / 2] *= 2; + + _rdft->calc(data); + + data[0] *= 0.5; + + for (int i = 1; i < (n - 2); i += 2) { + data[i + 1] += data[i - 1]; + data[i ] = -data[i + 2]; + } + + data[n - 1] = 0; +} + +} // End of namespace Common diff --git a/common/dct.h b/common/dct.h new file mode 100644 index 0000000000..2c8c5129b8 --- /dev/null +++ b/common/dct.h @@ -0,0 +1,76 @@ +/* ScummVM - Graphic Adventure Engine + * + * ScummVM is the legal property of its developers, whose names + * are too numerous to list here. Please refer to the COPYRIGHT + * file distributed with this source distribution. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ + +// Based on eos' (I)RDFT code which is in turn +// Based upon the (I)DCT code in FFmpeg +// Copyright (c) 2009 Peter Ross <pross@xvid.org> +// Copyright (c) 2010 Alex Converse <alex.converse@gmail.com> +// Copyright (c) 2010 Vitor Sessak + +#ifndef COMMON_DCT_H +#define COMMON_DCT_H + +#include "common/scummsys.h" +#include "common/math.h" +#include "common/rdft.h" + +namespace Common { + +/** + * (Inverse) Discrete Cosine Transforms. + * + * Used in engines: + * - scumm + */ +class DCT { +public: + enum TransformType { + DCT_II, + DCT_III, + DCT_I, + DST_I + }; + + DCT(int bits, TransformType trans); + ~DCT(); + + void calc(float *data); + +private: + int _bits; + TransformType _trans; + + const float *_tCos; + + float *_csc2; + + RDFT *_rdft; + + void calcDCTI (float *data); + void calcDCTII (float *data); + void calcDCTIII(float *data); + void calcDSTI (float *data); +}; + +} // End of namespace Common + +#endif // COMMON_DCT_H diff --git a/common/fft.cpp b/common/fft.cpp new file mode 100644 index 0000000000..5852698b61 --- /dev/null +++ b/common/fft.cpp @@ -0,0 +1,243 @@ +/* ScummVM - Graphic Adventure Engine + * + * ScummVM is the legal property of its developers, whose names + * are too numerous to list here. Please refer to the COPYRIGHT + * file distributed with this source distribution. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ + +// Based on eos' (I)FFT code which is in turn +// Based upon the (I)FFT code in FFmpeg +// Copyright (c) 2008 Loren Merritt +// Copyright (c) 2002 Fabrice Bellard +// Partly based on libdjbfft by D. J. Bernstein + +#include "common/cosinetables.h" +#include "common/fft.h" +#include "common/util.h" + +namespace Common { + +FFT::FFT(int bits, int inverse) : _bits(bits), _inverse(inverse) { + assert((_bits >= 2) && (_bits <= 16)); + + int n = 1 << bits; + + _tmpBuf = new Complex[n]; + _expTab = new Complex[n / 2]; + _revTab = new uint16[n]; + + _splitRadix = 1; + + for (int i = 0; i < n; i++) + _revTab[-splitRadixPermutation(i, n, _inverse) & (n - 1)] = i; +} + +FFT::~FFT() { + delete[] _revTab; + delete[] _expTab; + delete[] _tmpBuf; +} + +void FFT::permute(Complex *z) { + int np = 1 << _bits; + + if (_tmpBuf) { + for (int j = 0; j < np; j++) + _tmpBuf[_revTab[j]] = z[j]; + + memcpy(z, _tmpBuf, np * sizeof(Complex)); + + return; + } + + // Reverse + for (int j = 0; j < np; j++) { + int k = _revTab[j]; + + if (k < j) + SWAP(z[k], z[j]); + } +} + +int FFT::splitRadixPermutation(int i, int n, int inverse) { + if (n <= 2) + return i & 1; + + int m = n >> 1; + + if (!(i & m)) + return splitRadixPermutation(i, m, inverse) * 2; + + m >>= 1; + + if (inverse == !(i & m)) + return splitRadixPermutation(i, m, inverse) * 4 + 1; + + return splitRadixPermutation(i, m, inverse) * 4 - 1; +} + +#define sqrthalf (float)M_SQRT1_2 + +#define BF(x, y, a, b) { \ + x = a - b; \ + y = a + b; \ +} + +#define BUTTERFLIES(a0, a1, a2, a3) { \ + BF(t3, t5, t5, t1); \ + BF(a2.re, a0.re, a0.re, t5); \ + BF(a3.im, a1.im, a1.im, t3); \ + BF(t4, t6, t2, t6); \ + BF(a3.re, a1.re, a1.re, t4); \ + BF(a2.im, a0.im, a0.im, t6); \ +} + +// force loading all the inputs before storing any. +// this is slightly slower for small data, but avoids store->load aliasing +// for addresses separated by large powers of 2. +#define BUTTERFLIES_BIG(a0, a1, a2, a3) { \ + float r0 = a0.re, i0 = a0.im, r1 = a1.re, i1 = a1.im; \ + BF(t3, t5, t5, t1); \ + BF(a2.re, a0.re, r0, t5); \ + BF(a3.im, a1.im, i1, t3); \ + BF(t4, t6, t2, t6); \ + BF(a3.re, a1.re, r1, t4); \ + BF(a2.im, a0.im, i0, t6); \ +} + +#define TRANSFORM(a0, a1, a2, a3, wre, wim) { \ + t1 = a2.re * wre + a2.im * wim; \ + t2 = a2.im * wre - a2.re * wim; \ + t5 = a3.re * wre - a3.im * wim; \ + t6 = a3.im * wre + a3.re * wim; \ + BUTTERFLIES(a0, a1, a2, a3) \ +} + +#define TRANSFORM_ZERO(a0, a1, a2, a3) { \ + t1 = a2.re; \ + t2 = a2.im; \ + t5 = a3.re; \ + t6 = a3.im; \ + BUTTERFLIES(a0, a1, a2, a3) \ +} + +/* z[0...8n-1], w[1...2n-1] */ +#define PASS(name) \ +static void name(Complex *z, const float *wre, unsigned int n) { \ + float t1, t2, t3, t4, t5, t6; \ + int o1 = 2 * n; \ + int o2 = 4 * n; \ + int o3 = 6 * n; \ + const float *wim = wre + o1; \ + n--; \ + \ + TRANSFORM_ZERO(z[0], z[o1], z[o2], z[o3]); \ + TRANSFORM(z[1], z[o1 + 1], z[o2 + 1], z[o3 + 1], wre[1], wim[-1]); \ + do { \ + z += 2; \ + wre += 2; \ + wim -= 2; \ + TRANSFORM(z[0], z[o1], z[o2], z[o3], wre[0], wim[0]);\ + TRANSFORM(z[1], z[o1 + 1], z[o2 + 1], z[o3 + 1], wre[1], wim[-1]);\ + } while(--n);\ +} + +PASS(pass) +#undef BUTTERFLIES +#define BUTTERFLIES BUTTERFLIES_BIG +PASS(pass_big) + +#define DECL_FFT(t, n, n2, n4) \ +static void fft##n(Complex *z) { \ + fft##n2(z); \ + fft##n4(z + n4 * 2); \ + fft##n4(z + n4 * 3); \ + pass(z, getCosineTable(t), n4 / 2);\ +} + +static void fft4(Complex *z) { + float t1, t2, t3, t4, t5, t6, t7, t8; + + BF(t3, t1, z[0].re, z[1].re); + BF(t8, t6, z[3].re, z[2].re); + BF(z[2].re, z[0].re, t1, t6); + BF(t4, t2, z[0].im, z[1].im); + BF(t7, t5, z[2].im, z[3].im); + BF(z[3].im, z[1].im, t4, t8); + BF(z[3].re, z[1].re, t3, t7); + BF(z[2].im, z[0].im, t2, t5); +} + +static void fft8(Complex *z) { + float t1, t2, t3, t4, t5, t6, t7, t8; + + fft4(z); + + BF(t1, z[5].re, z[4].re, -z[5].re); + BF(t2, z[5].im, z[4].im, -z[5].im); + BF(t3, z[7].re, z[6].re, -z[7].re); + BF(t4, z[7].im, z[6].im, -z[7].im); + BF(t8, t1, t3, t1); + BF(t7, t2, t2, t4); + BF(z[4].re, z[0].re, z[0].re, t1); + BF(z[4].im, z[0].im, z[0].im, t2); + BF(z[6].re, z[2].re, z[2].re, t7); + BF(z[6].im, z[2].im, z[2].im, t8); + + TRANSFORM(z[1], z[3], z[5], z[7], sqrthalf, sqrthalf); +} + +static void fft16(Complex *z) { + float t1, t2, t3, t4, t5, t6; + + fft8(z); + fft4(z + 8); + fft4(z + 12); + + const float * const cosTable = getCosineTable(4); + + TRANSFORM_ZERO(z[0], z[4], z[8], z[12]); + TRANSFORM(z[2], z[6], z[10], z[14], sqrthalf, sqrthalf); + TRANSFORM(z[1], z[5], z[9], z[13], cosTable[1],cosTable[3]); + TRANSFORM(z[3], z[7], z[11], z[15], cosTable[3], cosTable[1]); +} + +DECL_FFT(5, 32, 16, 8) +DECL_FFT(6, 64, 32, 16) +DECL_FFT(7, 128, 64, 32) +DECL_FFT(8, 256, 128, 64) +DECL_FFT(9, 512, 256, 128) +#define pass pass_big +DECL_FFT(10, 1024, 512, 256) +DECL_FFT(11, 2048, 1024, 512) +DECL_FFT(12, 4096, 2048, 1024) +DECL_FFT(13, 8192, 4096, 2048) +DECL_FFT(14, 16384, 8192, 4096) +DECL_FFT(15, 32768, 16384, 8192) +DECL_FFT(16, 65536, 32768, 16384) + +static void (* const fft_dispatch[])(Complex*) = { + fft4, fft8, fft16, fft32, fft64, fft128, fft256, fft512, fft1024, + fft2048, fft4096, fft8192, fft16384, fft32768, fft65536, +}; + +void FFT::calc(Complex *z) { + fft_dispatch[_bits - 2](z); +} + +} // End of namespace Common diff --git a/common/fft.h b/common/fft.h new file mode 100644 index 0000000000..e77c53c2a7 --- /dev/null +++ b/common/fft.h @@ -0,0 +1,78 @@ +/* ScummVM - Graphic Adventure Engine + * + * ScummVM is the legal property of its developers, whose names + * are too numerous to list here. Please refer to the COPYRIGHT + * file distributed with this source distribution. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ + +// Based on eos' (I)FFT code which is in turn +// based upon the (I)FFT code in FFmpeg +// Copyright (c) 2008 Loren Merritt +// Copyright (c) 2002 Fabrice Bellard +// Partly based on libdjbfft by D. J. Bernstein + +#ifndef COMMON_FFT_H +#define COMMON_FFT_H + +#include "common/scummsys.h" +#include "common/math.h" + +namespace Common { + +/** + * (Inverse) Fast Fourier Transform. + * + * Used in engines: + * - scumm + */ +class FFT { +public: + FFT(int bits, int inverse); + ~FFT(); + + /** Do the permutation needed BEFORE calling calc(). */ + void permute(Complex *z); + + /** Do a complex FFT. + * + * The input data must be permuted before. + * No 1.0/sqrt(n) normalization is done. + */ + void calc(Complex *z); + +private: + int _bits; + int _inverse; + + uint16 *_revTab; + + Complex *_expTab; + Complex *_tmpBuf; + + const float *_tSin; + const float *_tCos; + + int _splitRadix; + int _permutation; + + static int splitRadixPermutation(int i, int n, int inverse); +}; + +} // End of namespace Common + +#endif // COMMON_FFT_H diff --git a/common/huffman.cpp b/common/huffman.cpp new file mode 100644 index 0000000000..a8ebe4142a --- /dev/null +++ b/common/huffman.cpp @@ -0,0 +1,86 @@ +/* ScummVM - Graphic Adventure Engine + * + * ScummVM is the legal property of its developers, whose names + * are too numerous to list here. Please refer to the COPYRIGHT + * file distributed with this source distribution. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ + +// Based on eos' Huffman code + +#include "common/huffman.h" +#include "common/util.h" +#include "common/textconsole.h" +#include "common/bitstream.h" + +namespace Common { + +Huffman::Symbol::Symbol(uint32 c, uint32 s) : code(c), symbol(s) { +} + + +Huffman::Huffman(uint8 maxLength, uint32 codeCount, const uint32 *codes, const uint8 *lengths, const uint32 *symbols) { + assert(codeCount > 0); + + assert(codes); + assert(lengths); + + if (maxLength == 0) + for (uint32 i = 0; i < codeCount; i++) + maxLength = MAX(maxLength, lengths[i]); + + assert(maxLength <= 32); + + _codes.resize(maxLength); + _symbols.resize(codeCount); + + for (uint32 i = 0; i < codeCount; i++) { + // The symbol. If none were specified, just assume it's identical to the code index + uint32 symbol = symbols ? symbols[i] : i; + + // Put the code and symbol into the correct list + _codes[lengths[i] - 1].push_back(Symbol(codes[i], symbol)); + + // And put the pointer to the symbol/code struct into the symbol list. + _symbols[i] = &_codes[lengths[i] - 1].back(); + } +} + +Huffman::~Huffman() { +} + +void Huffman::setSymbols(const uint32 *symbols) { + for (uint32 i = 0; i < _symbols.size(); i++) + _symbols[i]->symbol = symbols ? *symbols++ : i; +} + +uint32 Huffman::getSymbol(BitStream &bits) const { + uint32 code = 0; + + for (uint32 i = 0; i < _codes.size(); i++) { + bits.addBit(code, i); + + for (CodeList::const_iterator cCode = _codes[i].begin(); cCode != _codes[i].end(); ++cCode) + if (code == cCode->code) + return cCode->symbol; + } + + error("Unknown Huffman code"); + return 0; +} + +} // End of namespace Common diff --git a/common/huffman.h b/common/huffman.h new file mode 100644 index 0000000000..9a8b712c23 --- /dev/null +++ b/common/huffman.h @@ -0,0 +1,82 @@ +/* ScummVM - Graphic Adventure Engine + * + * ScummVM is the legal property of its developers, whose names + * are too numerous to list here. Please refer to the COPYRIGHT + * file distributed with this source distribution. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ + +// Based on eos' Huffman code + +#ifndef COMMON_HUFFMAN_H +#define COMMON_HUFFMAN_H + +#include "common/array.h" +#include "common/list.h" +#include "common/types.h" + +namespace Common { + +class BitStream; + +/** + * Huffman bitstream decoding + * + * Used in engines: + * - scumm + */ +class Huffman { +public: + /** Construct a Huffman decoder. + * + * @param maxLength Maximal code length. If 0, it's searched for. + * @param codeCount Number of codes. + * @param codes The actual codes. + * @param lengths Lengths of the individual codes. + * @param symbols The symbols. If 0, assume they are identical to the code indices. + */ + Huffman(uint8 maxLength, uint32 codeCount, const uint32 *codes, const uint8 *lengths, const uint32 *symbols = 0); + ~Huffman(); + + /** Modify the codes' symbols. */ + void setSymbols(const uint32 *symbols = 0); + + /** Return the next symbol in the bitstream. */ + uint32 getSymbol(BitStream &bits) const; + +private: + struct Symbol { + uint32 code; + uint32 symbol; + + Symbol(uint32 c, uint32 s); + }; + + typedef Common::List<Symbol> CodeList; + typedef Common::Array<CodeList> CodeLists; + typedef Common::Array<Symbol *> SymbolList; + + /** Lists of codes and their symbols, sorted by code length. */ + CodeLists _codes; + + /** Sorted list of pointers to the symbols. */ + SymbolList _symbols; +}; + +} // End of namespace Common + +#endif // COMMON_HUFFMAN_H diff --git a/common/math.h b/common/math.h new file mode 100644 index 0000000000..56ab171bd3 --- /dev/null +++ b/common/math.h @@ -0,0 +1,95 @@ +/* ScummVM - Graphic Adventure Engine + * + * ScummVM is the legal property of its developers, whose names + * are too numerous to list here. Please refer to the COPYRIGHT + * file distributed with this source distribution. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ + +// Based on eos' math code + +#ifndef COMMON_MATH_H +#define COMMON_MATH_H + +#include "common/scummsys.h" + +#ifndef M_SQRT1_2 + #define M_SQRT1_2 0.70710678118654752440 /* 1/sqrt(2) */ +#endif + +#ifndef M_PI + #define M_PI 3.14159265358979323846 +#endif + +#ifndef FLT_MIN + #define FLT_MIN 1E-37 +#endif + +#ifndef FLT_MAX + #define FLT_MAX 1E+37 +#endif + +namespace Common { + +/** A complex number. */ +struct Complex { + float re, im; +}; + +#if defined(__GNUC__) && (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)) +inline int intLog2(uint32 v) { + // This is a slightly optimized implementation of log2 for natural numbers + // targeting gcc. It also saves some binary size over our fallback + // implementation, since it does not need any table. + if (v == 0) + return -1; + else + // This is really "sizeof(unsigned int) * CHAR_BIT - 1" but using 8 + // instead of CHAR_BIT is sane enough and it saves us from including + // limits.h + return (sizeof(unsigned int) * 8 - 1) - __builtin_clz(v); +} +#else +// See http://graphics.stanford.edu/~seander/bithacks.html#IntegerLogLookup +static const char LogTable256[256] = { +#define LT(n) n, n, n, n, n, n, n, n, n, n, n, n, n, n, n, n + -1, 0, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, + LT(4), LT(5), LT(5), LT(6), LT(6), LT(6), LT(6), + LT(7), LT(7), LT(7), LT(7), LT(7), LT(7), LT(7), LT(7) +}; + +inline int intLog2(uint32 v) { + register uint32 t, tt; + + if ((tt = v >> 16)) + return (t = tt >> 8) ? 24 + LogTable256[t] : 16 + LogTable256[tt]; + else + return (t = v >> 8) ? 8 + LogTable256[t] : LogTable256[v]; +} +#endif + +inline float rad2deg(float rad) { + return rad * 180.0 / M_PI; +} + +inline float deg2rad(float deg) { + return deg * M_PI / 180.0; +} + +} // End of namespace Common + +#endif // COMMON_MATH_H diff --git a/common/module.mk b/common/module.mk index 5f6a529595..00caee86d1 100644 --- a/common/module.mk +++ b/common/module.mk @@ -35,5 +35,16 @@ MODULE_OBJS := \ xmlparser.o \ zlib.o +ifdef USE_BINK +MODULE_OBJS += \ + bitstream.o \ + cosinetables.o \ + dct.o \ + fft.o \ + huffman.o \ + rdft.o \ + sinetables.o +endif + # Include common rules include $(srcdir)/rules.mk diff --git a/common/rdft.cpp b/common/rdft.cpp new file mode 100644 index 0000000000..3f52a89cba --- /dev/null +++ b/common/rdft.cpp @@ -0,0 +1,102 @@ +/* ScummVM - Graphic Adventure Engine + * + * ScummVM is the legal property of its developers, whose names + * are too numerous to list here. Please refer to the COPYRIGHT + * file distributed with this source distribution. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ + +// Based on eos' (I)RDFT code which is in turn +// Based upon the (I)RDFT code in FFmpeg +// Copyright (c) 2009 Alex Converse <alex dot converse at gmail dot com> + +#include "common/rdft.h" +#include "common/cosinetables.h" +#include "common/sinetables.h" + +namespace Common { + +RDFT::RDFT(int bits, TransformType trans) : _bits(bits), _fft(0) { + assert ((_bits >= 4) && (_bits <= 16)); + + _inverse = trans == IDFT_C2R || trans == DFT_C2R; + _signConvention = trans == IDFT_R2C || trans == DFT_C2R ? 1 : -1; + + _fft = new FFT(bits - 1, trans == IDFT_C2R || trans == IDFT_R2C); + + int n = 1 << bits; + + _tSin = getSineTable(bits) + (trans == DFT_R2C || trans == DFT_C2R) * (n >> 2); + _tCos = getCosineTable(bits); +} + +RDFT::~RDFT() { + delete _fft; +} + +void RDFT::calc(float *data) { + const int n = 1 << _bits; + + const float k1 = 0.5; + const float k2 = 0.5 - _inverse; + + if (!_inverse) { + _fft->permute((Complex *) data); + _fft->calc ((Complex *) data); + } + + Complex ev, od; + + /* i=0 is a special case because of packing, the DC term is real, so we + are going to throw the N/2 term (also real) in with it. */ + + ev.re = data[0]; + + data[0] = ev.re + data[1]; + data[1] = ev.re - data[1]; + + int i; + for (i = 1; i < (n >> 2); i++) { + int i1 = 2 * i; + int i2 = n - i1; + + /* Separate even and odd FFTs */ + ev.re = k1 * (data[i1 ] + data[i2 ]); + od.im = -k2 * (data[i1 ] - data[i2 ]); + ev.im = k1 * (data[i1 + 1] - data[i2 + 1]); + od.re = k2 * (data[i1 + 1] + data[i2 + 1]); + + /* Apply twiddle factors to the odd FFT and add to the even FFT */ + data[i1 ] = ev.re + od.re * _tCos[i] - od.im * _tSin[i]; + data[i1 + 1] = ev.im + od.im * _tCos[i] + od.re * _tSin[i]; + data[i2 ] = ev.re - od.re * _tCos[i] + od.im * _tSin[i]; + data[i2 + 1] = -ev.im + od.im * _tCos[i] + od.re * _tSin[i]; + } + + data[2 * i + 1] = _signConvention * data[2 * i + 1]; + + if (_inverse) { + data[0] *= k1; + data[1] *= k1; + + _fft->permute((Complex *) data); + _fft->calc ((Complex *) data); + } + +} + +} // End of namespace Common diff --git a/common/rdft.h b/common/rdft.h new file mode 100644 index 0000000000..68be0f4dac --- /dev/null +++ b/common/rdft.h @@ -0,0 +1,70 @@ +/* ScummVM - Graphic Adventure Engine + * + * ScummVM is the legal property of its developers, whose names + * are too numerous to list here. Please refer to the COPYRIGHT + * file distributed with this source distribution. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ + +// Based on eos' (I)RDFT code which is in turn +// Based upon the (I)RDFT code in FFmpeg +// Copyright (c) 2009 Alex Converse <alex dot converse at gmail dot com> + +#ifndef COMMON_RDFT_H +#define COMMON_RDFT_H + +#include "common/scummsys.h" +#include "common/math.h" +#include "common/fft.h" + +namespace Common { + +/** + * (Inverse) Real Discrete Fourier Transform. + * + * Used in engines: + * - scumm + */ + +class RDFT { +public: + enum TransformType { + DFT_R2C, + IDFT_C2R, + IDFT_R2C, + DFT_C2R + }; + + RDFT(int bits, TransformType trans); + ~RDFT(); + + void calc(float *data); + +private: + int _bits; + int _inverse; + int _signConvention; + + const float *_tSin; + const float *_tCos; + + FFT *_fft; +}; + +} // End of namespace Common + +#endif // COMMON_RDFT_H diff --git a/common/sinetables.cpp b/common/sinetables.cpp new file mode 100644 index 0000000000..79721ec401 --- /dev/null +++ b/common/sinetables.cpp @@ -0,0 +1,8274 @@ +/* ScummVM - Graphic Adventure Engine + * + * ScummVM is the legal property of its developers, whose names + * are too numerous to list here. Please refer to the COPYRIGHT + * file distributed with this source distribution. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ + +// Based on eos' sine tables + +#include "common/scummsys.h" +#include "common/sinetables.h" + +namespace Common { + +static const float sinTable16[8] = { + 0.000000f, 0.382683f, 0.707107f, 0.923880f, 0.000000f, -0.382683f, -0.707107f, -0.923880f +}; + +static const float sinTable32[16] = { + 0.000000f, 0.195090f, 0.382683f, 0.555570f, 0.707107f, 0.831470f, 0.923880f, 0.980785f, + 0.000000f, -0.195090f, -0.382683f, -0.555570f, -0.707107f, -0.831470f, -0.923880f, -0.980785f +}; + +static const float sinTable64[32] = { + 0.000000f, 0.098017f, 0.195090f, 0.290285f, 0.382683f, 0.471397f, 0.555570f, 0.634393f, + 0.707107f, 0.773010f, 0.831470f, 0.881921f, 0.923880f, 0.956940f, 0.980785f, 0.995185f, + 0.000000f, -0.098017f, -0.195090f, -0.290285f, -0.382683f, -0.471397f, -0.555570f, -0.634393f, + -0.707107f, -0.773010f, -0.831470f, -0.881921f, -0.923880f, -0.956940f, -0.980785f, -0.995185f +}; + +static const float sinTable128[64] = { + 0.000000f, 0.049068f, 0.098017f, 0.146730f, 0.195090f, 0.242980f, 0.290285f, 0.336890f, + 0.382683f, 0.427555f, 0.471397f, 0.514103f, 0.555570f, 0.595699f, 0.634393f, 0.671559f, + 0.707107f, 0.740951f, 0.773010f, 0.803208f, 0.831470f, 0.857729f, 0.881921f, 0.903989f, + 0.923880f, 0.941544f, 0.956940f, 0.970031f, 0.980785f, 0.989177f, 0.995185f, 0.998795f, + 0.000000f, -0.049068f, -0.098017f, -0.146730f, -0.195090f, -0.242980f, -0.290285f, -0.336890f, + -0.382683f, -0.427555f, -0.471397f, -0.514103f, -0.555570f, -0.595699f, -0.634393f, -0.671559f, + -0.707107f, -0.740951f, -0.773010f, -0.803208f, -0.831470f, -0.857729f, -0.881921f, -0.903989f, + -0.923880f, -0.941544f, -0.956940f, -0.970031f, -0.980785f, -0.989177f, -0.995185f, -0.998795f +}; + +static const float sinTable256[128] = { + 0.000000f, 0.024541f, 0.049068f, 0.073565f, 0.098017f, 0.122411f, 0.146730f, 0.170962f, + 0.195090f, 0.219101f, 0.242980f, 0.266713f, 0.290285f, 0.313682f, 0.336890f, 0.359895f, + 0.382683f, 0.405241f, 0.427555f, 0.449611f, 0.471397f, 0.492898f, 0.514103f, 0.534998f, + 0.555570f, 0.575808f, 0.595699f, 0.615232f, 0.634393f, 0.653173f, 0.671559f, 0.689541f, + 0.707107f, 0.724247f, 0.740951f, 0.757209f, 0.773010f, 0.788346f, 0.803208f, 0.817585f, + 0.831470f, 0.844854f, 0.857729f, 0.870087f, 0.881921f, 0.893224f, 0.903989f, 0.914210f, + 0.923880f, 0.932993f, 0.941544f, 0.949528f, 0.956940f, 0.963776f, 0.970031f, 0.975702f, + 0.980785f, 0.985278f, 0.989177f, 0.992480f, 0.995185f, 0.997290f, 0.998795f, 0.999699f, + 0.000000f, -0.024541f, -0.049068f, -0.073565f, -0.098017f, -0.122411f, -0.146730f, -0.170962f, + -0.195090f, -0.219101f, -0.242980f, -0.266713f, -0.290285f, -0.313682f, -0.336890f, -0.359895f, + -0.382683f, -0.405241f, -0.427555f, -0.449611f, -0.471397f, -0.492898f, -0.514103f, -0.534998f, + -0.555570f, -0.575808f, -0.595699f, -0.615232f, -0.634393f, -0.653173f, -0.671559f, -0.689541f, + -0.707107f, -0.724247f, -0.740951f, -0.757209f, -0.773010f, -0.788346f, -0.803208f, -0.817585f, + -0.831470f, -0.844854f, -0.857729f, -0.870087f, -0.881921f, -0.893224f, -0.903989f, -0.914210f, + -0.923880f, -0.932993f, -0.941544f, -0.949528f, -0.956940f, -0.963776f, -0.970031f, -0.975702f, + -0.980785f, -0.985278f, -0.989177f, -0.992480f, -0.995185f, -0.997290f, -0.998795f, -0.999699f +}; + +static const float sinTable512[256] = { + 0.000000f, 0.012272f, 0.024541f, 0.036807f, 0.049068f, 0.061321f, 0.073565f, 0.085797f, + 0.098017f, 0.110222f, 0.122411f, 0.134581f, 0.146730f, 0.158858f, 0.170962f, 0.183040f, + 0.195090f, 0.207111f, 0.219101f, 0.231058f, 0.242980f, 0.254866f, 0.266713f, 0.278520f, + 0.290285f, 0.302006f, 0.313682f, 0.325310f, 0.336890f, 0.348419f, 0.359895f, 0.371317f, + 0.382683f, 0.393992f, 0.405241f, 0.416430f, 0.427555f, 0.438616f, 0.449611f, 0.460539f, + 0.471397f, 0.482184f, 0.492898f, 0.503538f, 0.514103f, 0.524590f, 0.534998f, 0.545325f, + 0.555570f, 0.565732f, 0.575808f, 0.585798f, 0.595699f, 0.605511f, 0.615232f, 0.624860f, + 0.634393f, 0.643832f, 0.653173f, 0.662416f, 0.671559f, 0.680601f, 0.689541f, 0.698376f, + 0.707107f, 0.715731f, 0.724247f, 0.732654f, 0.740951f, 0.749136f, 0.757209f, 0.765167f, + 0.773010f, 0.780737f, 0.788346f, 0.795837f, 0.803208f, 0.810457f, 0.817585f, 0.824589f, + 0.831470f, 0.838225f, 0.844854f, 0.851355f, 0.857729f, 0.863973f, 0.870087f, 0.876070f, + 0.881921f, 0.887640f, 0.893224f, 0.898674f, 0.903989f, 0.909168f, 0.914210f, 0.919114f, + 0.923880f, 0.928506f, 0.932993f, 0.937339f, 0.941544f, 0.945607f, 0.949528f, 0.953306f, + 0.956940f, 0.960431f, 0.963776f, 0.966976f, 0.970031f, 0.972940f, 0.975702f, 0.978317f, + 0.980785f, 0.983105f, 0.985278f, 0.987301f, 0.989177f, 0.990903f, 0.992480f, 0.993907f, + 0.995185f, 0.996313f, 0.997290f, 0.998118f, 0.998795f, 0.999322f, 0.999699f, 0.999925f, + 0.000000f, -0.012272f, -0.024541f, -0.036807f, -0.049068f, -0.061321f, -0.073565f, -0.085797f, + -0.098017f, -0.110222f, -0.122411f, -0.134581f, -0.146730f, -0.158858f, -0.170962f, -0.183040f, + -0.195090f, -0.207111f, -0.219101f, -0.231058f, -0.242980f, -0.254866f, -0.266713f, -0.278520f, + -0.290285f, -0.302006f, -0.313682f, -0.325310f, -0.336890f, -0.348419f, -0.359895f, -0.371317f, + -0.382683f, -0.393992f, -0.405241f, -0.416430f, -0.427555f, -0.438616f, -0.449611f, -0.460539f, + -0.471397f, -0.482184f, -0.492898f, -0.503538f, -0.514103f, -0.524590f, -0.534998f, -0.545325f, + -0.555570f, -0.565732f, -0.575808f, -0.585798f, -0.595699f, -0.605511f, -0.615232f, -0.624860f, + -0.634393f, -0.643832f, -0.653173f, -0.662416f, -0.671559f, -0.680601f, -0.689541f, -0.698376f, + -0.707107f, -0.715731f, -0.724247f, -0.732654f, -0.740951f, -0.749136f, -0.757209f, -0.765167f, + -0.773010f, -0.780737f, -0.788346f, -0.795837f, -0.803208f, -0.810457f, -0.817585f, -0.824589f, + -0.831470f, -0.838225f, -0.844854f, -0.851355f, -0.857729f, -0.863973f, -0.870087f, -0.876070f, + -0.881921f, -0.887640f, -0.893224f, -0.898674f, -0.903989f, -0.909168f, -0.914210f, -0.919114f, + -0.923880f, -0.928506f, -0.932993f, -0.937339f, -0.941544f, -0.945607f, -0.949528f, -0.953306f, + -0.956940f, -0.960431f, -0.963776f, -0.966976f, -0.970031f, -0.972940f, -0.975702f, -0.978317f, + -0.980785f, -0.983105f, -0.985278f, -0.987301f, -0.989177f, -0.990903f, -0.992480f, -0.993907f, + -0.995185f, -0.996313f, -0.997290f, -0.998118f, -0.998795f, -0.999322f, -0.999699f, -0.999925f +}; + +static const float sinTable1024[512] = { + 0.000000f, 0.006136f, 0.012272f, 0.018407f, 0.024541f, 0.030675f, 0.036807f, 0.042938f, + 0.049068f, 0.055195f, 0.061321f, 0.067444f, 0.073565f, 0.079682f, 0.085797f, 0.091909f, + 0.098017f, 0.104122f, 0.110222f, 0.116319f, 0.122411f, 0.128498f, 0.134581f, 0.140658f, + 0.146730f, 0.152797f, 0.158858f, 0.164913f, 0.170962f, 0.177004f, 0.183040f, 0.189069f, + 0.195090f, 0.201105f, 0.207111f, 0.213110f, 0.219101f, 0.225084f, 0.231058f, 0.237024f, + 0.242980f, 0.248928f, 0.254866f, 0.260794f, 0.266713f, 0.272621f, 0.278520f, 0.284408f, + 0.290285f, 0.296151f, 0.302006f, 0.307850f, 0.313682f, 0.319502f, 0.325310f, 0.331106f, + 0.336890f, 0.342661f, 0.348419f, 0.354164f, 0.359895f, 0.365613f, 0.371317f, 0.377007f, + 0.382683f, 0.388345f, 0.393992f, 0.399624f, 0.405241f, 0.410843f, 0.416430f, 0.422000f, + 0.427555f, 0.433094f, 0.438616f, 0.444122f, 0.449611f, 0.455084f, 0.460539f, 0.465977f, + 0.471397f, 0.476799f, 0.482184f, 0.487550f, 0.492898f, 0.498228f, 0.503538f, 0.508830f, + 0.514103f, 0.519356f, 0.524590f, 0.529804f, 0.534998f, 0.540171f, 0.545325f, 0.550458f, + 0.555570f, 0.560662f, 0.565732f, 0.570781f, 0.575808f, 0.580814f, 0.585798f, 0.590760f, + 0.595699f, 0.600616f, 0.605511f, 0.610383f, 0.615232f, 0.620057f, 0.624860f, 0.629638f, + 0.634393f, 0.639124f, 0.643832f, 0.648514f, 0.653173f, 0.657807f, 0.662416f, 0.667000f, + 0.671559f, 0.676093f, 0.680601f, 0.685084f, 0.689541f, 0.693971f, 0.698376f, 0.702755f, + 0.707107f, 0.711432f, 0.715731f, 0.720003f, 0.724247f, 0.728464f, 0.732654f, 0.736817f, + 0.740951f, 0.745058f, 0.749136f, 0.753187f, 0.757209f, 0.761202f, 0.765167f, 0.769103f, + 0.773010f, 0.776888f, 0.780737f, 0.784557f, 0.788346f, 0.792107f, 0.795837f, 0.799537f, + 0.803208f, 0.806848f, 0.810457f, 0.814036f, 0.817585f, 0.821102f, 0.824589f, 0.828045f, + 0.831470f, 0.834863f, 0.838225f, 0.841555f, 0.844854f, 0.848120f, 0.851355f, 0.854558f, + 0.857729f, 0.860867f, 0.863973f, 0.867046f, 0.870087f, 0.873095f, 0.876070f, 0.879012f, + 0.881921f, 0.884797f, 0.887640f, 0.890449f, 0.893224f, 0.895966f, 0.898674f, 0.901349f, + 0.903989f, 0.906596f, 0.909168f, 0.911706f, 0.914210f, 0.916679f, 0.919114f, 0.921514f, + 0.923880f, 0.926210f, 0.928506f, 0.930767f, 0.932993f, 0.935184f, 0.937339f, 0.939459f, + 0.941544f, 0.943593f, 0.945607f, 0.947586f, 0.949528f, 0.951435f, 0.953306f, 0.955141f, + 0.956940f, 0.958703f, 0.960431f, 0.962121f, 0.963776f, 0.965394f, 0.966976f, 0.968522f, + 0.970031f, 0.971504f, 0.972940f, 0.974339f, 0.975702f, 0.977028f, 0.978317f, 0.979570f, + 0.980785f, 0.981964f, 0.983105f, 0.984210f, 0.985278f, 0.986308f, 0.987301f, 0.988258f, + 0.989177f, 0.990058f, 0.990903f, 0.991710f, 0.992480f, 0.993212f, 0.993907f, 0.994565f, + 0.995185f, 0.995767f, 0.996313f, 0.996820f, 0.997290f, 0.997723f, 0.998118f, 0.998476f, + 0.998795f, 0.999078f, 0.999322f, 0.999529f, 0.999699f, 0.999831f, 0.999925f, 0.999981f, + 0.000000f, -0.006136f, -0.012272f, -0.018407f, -0.024541f, -0.030675f, -0.036807f, -0.042938f, + -0.049068f, -0.055195f, -0.061321f, -0.067444f, -0.073565f, -0.079682f, -0.085797f, -0.091909f, + -0.098017f, -0.104122f, -0.110222f, -0.116319f, -0.122411f, -0.128498f, -0.134581f, -0.140658f, + -0.146730f, -0.152797f, -0.158858f, -0.164913f, -0.170962f, -0.177004f, -0.183040f, -0.189069f, + -0.195090f, -0.201105f, -0.207111f, -0.213110f, -0.219101f, -0.225084f, -0.231058f, -0.237024f, + -0.242980f, -0.248928f, -0.254866f, -0.260794f, -0.266713f, -0.272621f, -0.278520f, -0.284408f, + -0.290285f, -0.296151f, -0.302006f, -0.307850f, -0.313682f, -0.319502f, -0.325310f, -0.331106f, + -0.336890f, -0.342661f, -0.348419f, -0.354164f, -0.359895f, -0.365613f, -0.371317f, -0.377007f, + -0.382683f, -0.388345f, -0.393992f, -0.399624f, -0.405241f, -0.410843f, -0.416430f, -0.422000f, + -0.427555f, -0.433094f, -0.438616f, -0.444122f, -0.449611f, -0.455084f, -0.460539f, -0.465977f, + -0.471397f, -0.476799f, -0.482184f, -0.487550f, -0.492898f, -0.498228f, -0.503538f, -0.508830f, + -0.514103f, -0.519356f, -0.524590f, -0.529804f, -0.534998f, -0.540171f, -0.545325f, -0.550458f, + -0.555570f, -0.560662f, -0.565732f, -0.570781f, -0.575808f, -0.580814f, -0.585798f, -0.590760f, + -0.595699f, -0.600616f, -0.605511f, -0.610383f, -0.615232f, -0.620057f, -0.624860f, -0.629638f, + -0.634393f, -0.639124f, -0.643832f, -0.648514f, -0.653173f, -0.657807f, -0.662416f, -0.667000f, + -0.671559f, -0.676093f, -0.680601f, -0.685084f, -0.689541f, -0.693971f, -0.698376f, -0.702755f, + -0.707107f, -0.711432f, -0.715731f, -0.720003f, -0.724247f, -0.728464f, -0.732654f, -0.736817f, + -0.740951f, -0.745058f, -0.749136f, -0.753187f, -0.757209f, -0.761202f, -0.765167f, -0.769103f, + -0.773010f, -0.776888f, -0.780737f, -0.784557f, -0.788346f, -0.792107f, -0.795837f, -0.799537f, + -0.803208f, -0.806848f, -0.810457f, -0.814036f, -0.817585f, -0.821102f, -0.824589f, -0.828045f, + -0.831470f, -0.834863f, -0.838225f, -0.841555f, -0.844854f, -0.848120f, -0.851355f, -0.854558f, + -0.857729f, -0.860867f, -0.863973f, -0.867046f, -0.870087f, -0.873095f, -0.876070f, -0.879012f, + -0.881921f, -0.884797f, -0.887640f, -0.890449f, -0.893224f, -0.895966f, -0.898674f, -0.901349f, + -0.903989f, -0.906596f, -0.909168f, -0.911706f, -0.914210f, -0.916679f, -0.919114f, -0.921514f, + -0.923880f, -0.926210f, -0.928506f, -0.930767f, -0.932993f, -0.935184f, -0.937339f, -0.939459f, + -0.941544f, -0.943593f, -0.945607f, -0.947586f, -0.949528f, -0.951435f, -0.953306f, -0.955141f, + -0.956940f, -0.958703f, -0.960431f, -0.962121f, -0.963776f, -0.965394f, -0.966976f, -0.968522f, + -0.970031f, -0.971504f, -0.972940f, -0.974339f, -0.975702f, -0.977028f, -0.978317f, -0.979570f, + -0.980785f, -0.981964f, -0.983105f, -0.984210f, -0.985278f, -0.986308f, -0.987301f, -0.988258f, + -0.989177f, -0.990058f, -0.990903f, -0.991710f, -0.992480f, -0.993212f, -0.993907f, -0.994565f, + -0.995185f, -0.995767f, -0.996313f, -0.996820f, -0.997290f, -0.997723f, -0.998118f, -0.998476f, + -0.998795f, -0.999078f, -0.999322f, -0.999529f, -0.999699f, -0.999831f, -0.999925f, -0.999981f +}; + +static const float sinTable2048[1024] = { + 0.000000f, 0.003068f, 0.006136f, 0.009204f, 0.012272f, 0.015339f, 0.018407f, 0.021474f, + 0.024541f, 0.027608f, 0.030675f, 0.033741f, 0.036807f, 0.039873f, 0.042938f, 0.046003f, + 0.049068f, 0.052132f, 0.055195f, 0.058258f, 0.061321f, 0.064383f, 0.067444f, 0.070505f, + 0.073565f, 0.076624f, 0.079682f, 0.082740f, 0.085797f, 0.088854f, 0.091909f, 0.094963f, + 0.098017f, 0.101070f, 0.104122f, 0.107172f, 0.110222f, 0.113271f, 0.116319f, 0.119365f, + 0.122411f, 0.125455f, 0.128498f, 0.131540f, 0.134581f, 0.137620f, 0.140658f, 0.143695f, + 0.146730f, 0.149765f, 0.152797f, 0.155828f, 0.158858f, 0.161886f, 0.164913f, 0.167938f, + 0.170962f, 0.173984f, 0.177004f, 0.180023f, 0.183040f, 0.186055f, 0.189069f, 0.192080f, + 0.195090f, 0.198098f, 0.201105f, 0.204109f, 0.207111f, 0.210112f, 0.213110f, 0.216107f, + 0.219101f, 0.222094f, 0.225084f, 0.228072f, 0.231058f, 0.234042f, 0.237024f, 0.240003f, + 0.242980f, 0.245955f, 0.248928f, 0.251898f, 0.254866f, 0.257831f, 0.260794f, 0.263755f, + 0.266713f, 0.269668f, 0.272621f, 0.275572f, 0.278520f, 0.281465f, 0.284408f, 0.287347f, + 0.290285f, 0.293219f, 0.296151f, 0.299080f, 0.302006f, 0.304929f, 0.307850f, 0.310767f, + 0.313682f, 0.316593f, 0.319502f, 0.322408f, 0.325310f, 0.328210f, 0.331106f, 0.334000f, + 0.336890f, 0.339777f, 0.342661f, 0.345541f, 0.348419f, 0.351293f, 0.354164f, 0.357031f, + 0.359895f, 0.362756f, 0.365613f, 0.368467f, 0.371317f, 0.374164f, 0.377007f, 0.379847f, + 0.382683f, 0.385516f, 0.388345f, 0.391170f, 0.393992f, 0.396810f, 0.399624f, 0.402435f, + 0.405241f, 0.408044f, 0.410843f, 0.413638f, 0.416430f, 0.419217f, 0.422000f, 0.424780f, + 0.427555f, 0.430326f, 0.433094f, 0.435857f, 0.438616f, 0.441371f, 0.444122f, 0.446869f, + 0.449611f, 0.452350f, 0.455084f, 0.457813f, 0.460539f, 0.463260f, 0.465977f, 0.468689f, + 0.471397f, 0.474100f, 0.476799f, 0.479494f, 0.482184f, 0.484869f, 0.487550f, 0.490226f, + 0.492898f, 0.495565f, 0.498228f, 0.500885f, 0.503538f, 0.506187f, 0.508830f, 0.511469f, + 0.514103f, 0.516732f, 0.519356f, 0.521975f, 0.524590f, 0.527199f, 0.529804f, 0.532403f, + 0.534998f, 0.537587f, 0.540171f, 0.542751f, 0.545325f, 0.547894f, 0.550458f, 0.553017f, + 0.555570f, 0.558119f, 0.560662f, 0.563199f, 0.565732f, 0.568259f, 0.570781f, 0.573297f, + 0.575808f, 0.578314f, 0.580814f, 0.583309f, 0.585798f, 0.588282f, 0.590760f, 0.593232f, + 0.595699f, 0.598161f, 0.600616f, 0.603067f, 0.605511f, 0.607950f, 0.610383f, 0.612810f, + 0.615232f, 0.617647f, 0.620057f, 0.622461f, 0.624860f, 0.627252f, 0.629638f, 0.632019f, + 0.634393f, 0.636762f, 0.639124f, 0.641481f, 0.643832f, 0.646176f, 0.648514f, 0.650847f, + 0.653173f, 0.655493f, 0.657807f, 0.660114f, 0.662416f, 0.664711f, 0.667000f, 0.669283f, + 0.671559f, 0.673829f, 0.676093f, 0.678350f, 0.680601f, 0.682846f, 0.685084f, 0.687315f, + 0.689541f, 0.691759f, 0.693971f, 0.696177f, 0.698376f, 0.700569f, 0.702755f, 0.704934f, + 0.707107f, 0.709273f, 0.711432f, 0.713585f, 0.715731f, 0.717870f, 0.720003f, 0.722128f, + 0.724247f, 0.726359f, 0.728464f, 0.730563f, 0.732654f, 0.734739f, 0.736817f, 0.738887f, + 0.740951f, 0.743008f, 0.745058f, 0.747101f, 0.749136f, 0.751165f, 0.753187f, 0.755201f, + 0.757209f, 0.759209f, 0.761202f, 0.763188f, 0.765167f, 0.767139f, 0.769103f, 0.771061f, + 0.773010f, 0.774953f, 0.776888f, 0.778817f, 0.780737f, 0.782651f, 0.784557f, 0.786455f, + 0.788346f, 0.790230f, 0.792107f, 0.793975f, 0.795837f, 0.797691f, 0.799537f, 0.801376f, + 0.803208f, 0.805031f, 0.806848f, 0.808656f, 0.810457f, 0.812251f, 0.814036f, 0.815814f, + 0.817585f, 0.819348f, 0.821102f, 0.822850f, 0.824589f, 0.826321f, 0.828045f, 0.829761f, + 0.831470f, 0.833170f, 0.834863f, 0.836548f, 0.838225f, 0.839894f, 0.841555f, 0.843208f, + 0.844854f, 0.846491f, 0.848120f, 0.849742f, 0.851355f, 0.852961f, 0.854558f, 0.856147f, + 0.857729f, 0.859302f, 0.860867f, 0.862424f, 0.863973f, 0.865514f, 0.867046f, 0.868571f, + 0.870087f, 0.871595f, 0.873095f, 0.874587f, 0.876070f, 0.877545f, 0.879012f, 0.880471f, + 0.881921f, 0.883363f, 0.884797f, 0.886223f, 0.887640f, 0.889048f, 0.890449f, 0.891841f, + 0.893224f, 0.894599f, 0.895966f, 0.897325f, 0.898674f, 0.900016f, 0.901349f, 0.902673f, + 0.903989f, 0.905297f, 0.906596f, 0.907886f, 0.909168f, 0.910441f, 0.911706f, 0.912962f, + 0.914210f, 0.915449f, 0.916679f, 0.917901f, 0.919114f, 0.920318f, 0.921514f, 0.922701f, + 0.923880f, 0.925049f, 0.926210f, 0.927363f, 0.928506f, 0.929641f, 0.930767f, 0.931884f, + 0.932993f, 0.934093f, 0.935184f, 0.936266f, 0.937339f, 0.938404f, 0.939459f, 0.940506f, + 0.941544f, 0.942573f, 0.943593f, 0.944605f, 0.945607f, 0.946601f, 0.947586f, 0.948561f, + 0.949528f, 0.950486f, 0.951435f, 0.952375f, 0.953306f, 0.954228f, 0.955141f, 0.956045f, + 0.956940f, 0.957826f, 0.958703f, 0.959572f, 0.960431f, 0.961280f, 0.962121f, 0.962953f, + 0.963776f, 0.964590f, 0.965394f, 0.966190f, 0.966976f, 0.967754f, 0.968522f, 0.969281f, + 0.970031f, 0.970772f, 0.971504f, 0.972227f, 0.972940f, 0.973644f, 0.974339f, 0.975025f, + 0.975702f, 0.976370f, 0.977028f, 0.977677f, 0.978317f, 0.978948f, 0.979570f, 0.980182f, + 0.980785f, 0.981379f, 0.981964f, 0.982539f, 0.983105f, 0.983662f, 0.984210f, 0.984748f, + 0.985278f, 0.985798f, 0.986308f, 0.986809f, 0.987301f, 0.987784f, 0.988258f, 0.988722f, + 0.989177f, 0.989622f, 0.990058f, 0.990485f, 0.990903f, 0.991311f, 0.991710f, 0.992099f, + 0.992480f, 0.992850f, 0.993212f, 0.993564f, 0.993907f, 0.994240f, 0.994565f, 0.994879f, + 0.995185f, 0.995481f, 0.995767f, 0.996045f, 0.996313f, 0.996571f, 0.996820f, 0.997060f, + 0.997290f, 0.997511f, 0.997723f, 0.997925f, 0.998118f, 0.998302f, 0.998476f, 0.998640f, + 0.998795f, 0.998941f, 0.999078f, 0.999205f, 0.999322f, 0.999431f, 0.999529f, 0.999619f, + 0.999699f, 0.999769f, 0.999831f, 0.999882f, 0.999925f, 0.999958f, 0.999981f, 0.999995f, + 0.000000f, -0.003068f, -0.006136f, -0.009204f, -0.012272f, -0.015339f, -0.018407f, -0.021474f, + -0.024541f, -0.027608f, -0.030675f, -0.033741f, -0.036807f, -0.039873f, -0.042938f, -0.046003f, + -0.049068f, -0.052132f, -0.055195f, -0.058258f, -0.061321f, -0.064383f, -0.067444f, -0.070505f, + -0.073565f, -0.076624f, -0.079682f, -0.082740f, -0.085797f, -0.088854f, -0.091909f, -0.094963f, + -0.098017f, -0.101070f, -0.104122f, -0.107172f, -0.110222f, -0.113271f, -0.116319f, -0.119365f, + -0.122411f, -0.125455f, -0.128498f, -0.131540f, -0.134581f, -0.137620f, -0.140658f, -0.143695f, + -0.146730f, -0.149765f, -0.152797f, -0.155828f, -0.158858f, -0.161886f, -0.164913f, -0.167938f, + -0.170962f, -0.173984f, -0.177004f, -0.180023f, -0.183040f, -0.186055f, -0.189069f, -0.192080f, + -0.195090f, -0.198098f, -0.201105f, -0.204109f, -0.207111f, -0.210112f, -0.213110f, -0.216107f, + -0.219101f, -0.222094f, -0.225084f, -0.228072f, -0.231058f, -0.234042f, -0.237024f, -0.240003f, + -0.242980f, -0.245955f, -0.248928f, -0.251898f, -0.254866f, -0.257831f, -0.260794f, -0.263755f, + -0.266713f, -0.269668f, -0.272621f, -0.275572f, -0.278520f, -0.281465f, -0.284408f, -0.287347f, + -0.290285f, -0.293219f, -0.296151f, -0.299080f, -0.302006f, -0.304929f, -0.307850f, -0.310767f, + -0.313682f, -0.316593f, -0.319502f, -0.322408f, -0.325310f, -0.328210f, -0.331106f, -0.334000f, + -0.336890f, -0.339777f, -0.342661f, -0.345541f, -0.348419f, -0.351293f, -0.354164f, -0.357031f, + -0.359895f, -0.362756f, -0.365613f, -0.368467f, -0.371317f, -0.374164f, -0.377007f, -0.379847f, + -0.382683f, -0.385516f, -0.388345f, -0.391170f, -0.393992f, -0.396810f, -0.399624f, -0.402435f, + -0.405241f, -0.408044f, -0.410843f, -0.413638f, -0.416430f, -0.419217f, -0.422000f, -0.424780f, + -0.427555f, -0.430326f, -0.433094f, -0.435857f, -0.438616f, -0.441371f, -0.444122f, -0.446869f, + -0.449611f, -0.452350f, -0.455084f, -0.457813f, -0.460539f, -0.463260f, -0.465977f, -0.468689f, + -0.471397f, -0.474100f, -0.476799f, -0.479494f, -0.482184f, -0.484869f, -0.487550f, -0.490226f, + -0.492898f, -0.495565f, -0.498228f, -0.500885f, -0.503538f, -0.506187f, -0.508830f, -0.511469f, + -0.514103f, -0.516732f, -0.519356f, -0.521975f, -0.524590f, -0.527199f, -0.529804f, -0.532403f, + -0.534998f, -0.537587f, -0.540171f, -0.542751f, -0.545325f, -0.547894f, -0.550458f, -0.553017f, + -0.555570f, -0.558119f, -0.560662f, -0.563199f, -0.565732f, -0.568259f, -0.570781f, -0.573297f, + -0.575808f, -0.578314f, -0.580814f, -0.583309f, -0.585798f, -0.588282f, -0.590760f, -0.593232f, + -0.595699f, -0.598161f, -0.600616f, -0.603067f, -0.605511f, -0.607950f, -0.610383f, -0.612810f, + -0.615232f, -0.617647f, -0.620057f, -0.622461f, -0.624860f, -0.627252f, -0.629638f, -0.632019f, + -0.634393f, -0.636762f, -0.639124f, -0.641481f, -0.643832f, -0.646176f, -0.648514f, -0.650847f, + -0.653173f, -0.655493f, -0.657807f, -0.660114f, -0.662416f, -0.664711f, -0.667000f, -0.669283f, + -0.671559f, -0.673829f, -0.676093f, -0.678350f, -0.680601f, -0.682846f, -0.685084f, -0.687315f, + -0.689541f, -0.691759f, -0.693971f, -0.696177f, -0.698376f, -0.700569f, -0.702755f, -0.704934f, + -0.707107f, -0.709273f, -0.711432f, -0.713585f, -0.715731f, -0.717870f, -0.720003f, -0.722128f, + -0.724247f, -0.726359f, -0.728464f, -0.730563f, -0.732654f, -0.734739f, -0.736817f, -0.738887f, + -0.740951f, -0.743008f, -0.745058f, -0.747101f, -0.749136f, -0.751165f, -0.753187f, -0.755201f, + -0.757209f, -0.759209f, -0.761202f, -0.763188f, -0.765167f, -0.767139f, -0.769103f, -0.771061f, + -0.773010f, -0.774953f, -0.776888f, -0.778817f, -0.780737f, -0.782651f, -0.784557f, -0.786455f, + -0.788346f, -0.790230f, -0.792107f, -0.793975f, -0.795837f, -0.797691f, -0.799537f, -0.801376f, + -0.803208f, -0.805031f, -0.806848f, -0.808656f, -0.810457f, -0.812251f, -0.814036f, -0.815814f, + -0.817585f, -0.819348f, -0.821102f, -0.822850f, -0.824589f, -0.826321f, -0.828045f, -0.829761f, + -0.831470f, -0.833170f, -0.834863f, -0.836548f, -0.838225f, -0.839894f, -0.841555f, -0.843208f, + -0.844854f, -0.846491f, -0.848120f, -0.849742f, -0.851355f, -0.852961f, -0.854558f, -0.856147f, + -0.857729f, -0.859302f, -0.860867f, -0.862424f, -0.863973f, -0.865514f, -0.867046f, -0.868571f, + -0.870087f, -0.871595f, -0.873095f, -0.874587f, -0.876070f, -0.877545f, -0.879012f, -0.880471f, + -0.881921f, -0.883363f, -0.884797f, -0.886223f, -0.887640f, -0.889048f, -0.890449f, -0.891841f, + -0.893224f, -0.894599f, -0.895966f, -0.897325f, -0.898674f, -0.900016f, -0.901349f, -0.902673f, + -0.903989f, -0.905297f, -0.906596f, -0.907886f, -0.909168f, -0.910441f, -0.911706f, -0.912962f, + -0.914210f, -0.915449f, -0.916679f, -0.917901f, -0.919114f, -0.920318f, -0.921514f, -0.922701f, + -0.923880f, -0.925049f, -0.926210f, -0.927363f, -0.928506f, -0.929641f, -0.930767f, -0.931884f, + -0.932993f, -0.934093f, -0.935184f, -0.936266f, -0.937339f, -0.938404f, -0.939459f, -0.940506f, + -0.941544f, -0.942573f, -0.943593f, -0.944605f, -0.945607f, -0.946601f, -0.947586f, -0.948561f, + -0.949528f, -0.950486f, -0.951435f, -0.952375f, -0.953306f, -0.954228f, -0.955141f, -0.956045f, + -0.956940f, -0.957826f, -0.958703f, -0.959572f, -0.960431f, -0.961280f, -0.962121f, -0.962953f, + -0.963776f, -0.964590f, -0.965394f, -0.966190f, -0.966976f, -0.967754f, -0.968522f, -0.969281f, + -0.970031f, -0.970772f, -0.971504f, -0.972227f, -0.972940f, -0.973644f, -0.974339f, -0.975025f, + -0.975702f, -0.976370f, -0.977028f, -0.977677f, -0.978317f, -0.978948f, -0.979570f, -0.980182f, + -0.980785f, -0.981379f, -0.981964f, -0.982539f, -0.983105f, -0.983662f, -0.984210f, -0.984748f, + -0.985278f, -0.985798f, -0.986308f, -0.986809f, -0.987301f, -0.987784f, -0.988258f, -0.988722f, + -0.989177f, -0.989622f, -0.990058f, -0.990485f, -0.990903f, -0.991311f, -0.991710f, -0.992099f, + -0.992480f, -0.992850f, -0.993212f, -0.993564f, -0.993907f, -0.994240f, -0.994565f, -0.994879f, + -0.995185f, -0.995481f, -0.995767f, -0.996045f, -0.996313f, -0.996571f, -0.996820f, -0.997060f, + -0.997290f, -0.997511f, -0.997723f, -0.997925f, -0.998118f, -0.998302f, -0.998476f, -0.998640f, + -0.998795f, -0.998941f, -0.999078f, -0.999205f, -0.999322f, -0.999431f, -0.999529f, -0.999619f, + -0.999699f, -0.999769f, -0.999831f, -0.999882f, -0.999925f, -0.999958f, -0.999981f, -0.999995f +}; + +static const float sinTable4096[2048] = { + 0.000000f, 0.001534f, 0.003068f, 0.004602f, 0.006136f, 0.007670f, 0.009204f, 0.010738f, + 0.012272f, 0.013805f, 0.015339f, 0.016873f, 0.018407f, 0.019940f, 0.021474f, 0.023008f, + 0.024541f, 0.026075f, 0.027608f, 0.029142f, 0.030675f, 0.032208f, 0.033741f, 0.035274f, + 0.036807f, 0.038340f, 0.039873f, 0.041406f, 0.042938f, 0.044471f, 0.046003f, 0.047535f, + 0.049068f, 0.050600f, 0.052132f, 0.053664f, 0.055195f, 0.056727f, 0.058258f, 0.059790f, + 0.061321f, 0.062852f, 0.064383f, 0.065913f, 0.067444f, 0.068974f, 0.070505f, 0.072035f, + 0.073565f, 0.075094f, 0.076624f, 0.078153f, 0.079682f, 0.081211f, 0.082740f, 0.084269f, + 0.085797f, 0.087326f, 0.088854f, 0.090381f, 0.091909f, 0.093436f, 0.094963f, 0.096490f, + 0.098017f, 0.099544f, 0.101070f, 0.102596f, 0.104122f, 0.105647f, 0.107172f, 0.108697f, + 0.110222f, 0.111747f, 0.113271f, 0.114795f, 0.116319f, 0.117842f, 0.119365f, 0.120888f, + 0.122411f, 0.123933f, 0.125455f, 0.126977f, 0.128498f, 0.130019f, 0.131540f, 0.133061f, + 0.134581f, 0.136101f, 0.137620f, 0.139139f, 0.140658f, 0.142177f, 0.143695f, 0.145213f, + 0.146730f, 0.148248f, 0.149765f, 0.151281f, 0.152797f, 0.154313f, 0.155828f, 0.157343f, + 0.158858f, 0.160372f, 0.161886f, 0.163400f, 0.164913f, 0.166426f, 0.167938f, 0.169450f, + 0.170962f, 0.172473f, 0.173984f, 0.175494f, 0.177004f, 0.178514f, 0.180023f, 0.181532f, + 0.183040f, 0.184548f, 0.186055f, 0.187562f, 0.189069f, 0.190575f, 0.192080f, 0.193586f, + 0.195090f, 0.196595f, 0.198098f, 0.199602f, 0.201105f, 0.202607f, 0.204109f, 0.205610f, + 0.207111f, 0.208612f, 0.210112f, 0.211611f, 0.213110f, 0.214609f, 0.216107f, 0.217604f, + 0.219101f, 0.220598f, 0.222094f, 0.223589f, 0.225084f, 0.226578f, 0.228072f, 0.229565f, + 0.231058f, 0.232550f, 0.234042f, 0.235533f, 0.237024f, 0.238514f, 0.240003f, 0.241492f, + 0.242980f, 0.244468f, 0.245955f, 0.247442f, 0.248928f, 0.250413f, 0.251898f, 0.253382f, + 0.254866f, 0.256349f, 0.257831f, 0.259313f, 0.260794f, 0.262275f, 0.263755f, 0.265234f, + 0.266713f, 0.268191f, 0.269668f, 0.271145f, 0.272621f, 0.274097f, 0.275572f, 0.277046f, + 0.278520f, 0.279993f, 0.281465f, 0.282937f, 0.284408f, 0.285878f, 0.287347f, 0.288816f, + 0.290285f, 0.291752f, 0.293219f, 0.294685f, 0.296151f, 0.297616f, 0.299080f, 0.300543f, + 0.302006f, 0.303468f, 0.304929f, 0.306390f, 0.307850f, 0.309309f, 0.310767f, 0.312225f, + 0.313682f, 0.315138f, 0.316593f, 0.318048f, 0.319502f, 0.320955f, 0.322408f, 0.323859f, + 0.325310f, 0.326760f, 0.328210f, 0.329658f, 0.331106f, 0.332553f, 0.334000f, 0.335445f, + 0.336890f, 0.338334f, 0.339777f, 0.341219f, 0.342661f, 0.344101f, 0.345541f, 0.346980f, + 0.348419f, 0.349856f, 0.351293f, 0.352729f, 0.354164f, 0.355598f, 0.357031f, 0.358463f, + 0.359895f, 0.361326f, 0.362756f, 0.364185f, 0.365613f, 0.367040f, 0.368467f, 0.369892f, + 0.371317f, 0.372741f, 0.374164f, 0.375586f, 0.377007f, 0.378428f, 0.379847f, 0.381266f, + 0.382683f, 0.384100f, 0.385516f, 0.386931f, 0.388345f, 0.389758f, 0.391170f, 0.392582f, + 0.393992f, 0.395401f, 0.396810f, 0.398218f, 0.399624f, 0.401030f, 0.402435f, 0.403838f, + 0.405241f, 0.406643f, 0.408044f, 0.409444f, 0.410843f, 0.412241f, 0.413638f, 0.415034f, + 0.416430f, 0.417824f, 0.419217f, 0.420609f, 0.422000f, 0.423390f, 0.424780f, 0.426168f, + 0.427555f, 0.428941f, 0.430326f, 0.431711f, 0.433094f, 0.434476f, 0.435857f, 0.437237f, + 0.438616f, 0.439994f, 0.441371f, 0.442747f, 0.444122f, 0.445496f, 0.446869f, 0.448241f, + 0.449611f, 0.450981f, 0.452350f, 0.453717f, 0.455084f, 0.456449f, 0.457813f, 0.459177f, + 0.460539f, 0.461900f, 0.463260f, 0.464619f, 0.465977f, 0.467333f, 0.468689f, 0.470043f, + 0.471397f, 0.472749f, 0.474100f, 0.475450f, 0.476799f, 0.478147f, 0.479494f, 0.480839f, + 0.482184f, 0.483527f, 0.484869f, 0.486210f, 0.487550f, 0.488889f, 0.490226f, 0.491563f, + 0.492898f, 0.494232f, 0.495565f, 0.496897f, 0.498228f, 0.499557f, 0.500885f, 0.502212f, + 0.503538f, 0.504863f, 0.506187f, 0.507509f, 0.508830f, 0.510150f, 0.511469f, 0.512786f, + 0.514103f, 0.515418f, 0.516732f, 0.518045f, 0.519356f, 0.520666f, 0.521975f, 0.523283f, + 0.524590f, 0.525895f, 0.527199f, 0.528502f, 0.529804f, 0.531104f, 0.532403f, 0.533701f, + 0.534998f, 0.536293f, 0.537587f, 0.538880f, 0.540171f, 0.541462f, 0.542751f, 0.544039f, + 0.545325f, 0.546610f, 0.547894f, 0.549177f, 0.550458f, 0.551738f, 0.553017f, 0.554294f, + 0.555570f, 0.556845f, 0.558119f, 0.559391f, 0.560662f, 0.561931f, 0.563199f, 0.564466f, + 0.565732f, 0.566996f, 0.568259f, 0.569521f, 0.570781f, 0.572040f, 0.573297f, 0.574553f, + 0.575808f, 0.577062f, 0.578314f, 0.579565f, 0.580814f, 0.582062f, 0.583309f, 0.584554f, + 0.585798f, 0.587040f, 0.588282f, 0.589521f, 0.590760f, 0.591997f, 0.593232f, 0.594467f, + 0.595699f, 0.596931f, 0.598161f, 0.599389f, 0.600616f, 0.601842f, 0.603067f, 0.604290f, + 0.605511f, 0.606731f, 0.607950f, 0.609167f, 0.610383f, 0.611597f, 0.612810f, 0.614022f, + 0.615232f, 0.616440f, 0.617647f, 0.618853f, 0.620057f, 0.621260f, 0.622461f, 0.623661f, + 0.624860f, 0.626056f, 0.627252f, 0.628446f, 0.629638f, 0.630829f, 0.632019f, 0.633207f, + 0.634393f, 0.635578f, 0.636762f, 0.637944f, 0.639124f, 0.640303f, 0.641481f, 0.642657f, + 0.643832f, 0.645005f, 0.646176f, 0.647346f, 0.648514f, 0.649681f, 0.650847f, 0.652011f, + 0.653173f, 0.654334f, 0.655493f, 0.656651f, 0.657807f, 0.658961f, 0.660114f, 0.661266f, + 0.662416f, 0.663564f, 0.664711f, 0.665856f, 0.667000f, 0.668142f, 0.669283f, 0.670422f, + 0.671559f, 0.672695f, 0.673829f, 0.674962f, 0.676093f, 0.677222f, 0.678350f, 0.679476f, + 0.680601f, 0.681724f, 0.682846f, 0.683965f, 0.685084f, 0.686200f, 0.687315f, 0.688429f, + 0.689541f, 0.690651f, 0.691759f, 0.692866f, 0.693971f, 0.695075f, 0.696177f, 0.697277f, + 0.698376f, 0.699473f, 0.700569f, 0.701663f, 0.702755f, 0.703845f, 0.704934f, 0.706021f, + 0.707107f, 0.708191f, 0.709273f, 0.710353f, 0.711432f, 0.712509f, 0.713585f, 0.714659f, + 0.715731f, 0.716801f, 0.717870f, 0.718937f, 0.720003f, 0.721066f, 0.722128f, 0.723188f, + 0.724247f, 0.725304f, 0.726359f, 0.727413f, 0.728464f, 0.729514f, 0.730563f, 0.731609f, + 0.732654f, 0.733697f, 0.734739f, 0.735779f, 0.736817f, 0.737853f, 0.738887f, 0.739920f, + 0.740951f, 0.741980f, 0.743008f, 0.744034f, 0.745058f, 0.746080f, 0.747101f, 0.748119f, + 0.749136f, 0.750152f, 0.751165f, 0.752177f, 0.753187f, 0.754195f, 0.755201f, 0.756206f, + 0.757209f, 0.758210f, 0.759209f, 0.760207f, 0.761202f, 0.762196f, 0.763188f, 0.764179f, + 0.765167f, 0.766154f, 0.767139f, 0.768122f, 0.769103f, 0.770083f, 0.771061f, 0.772036f, + 0.773010f, 0.773983f, 0.774953f, 0.775922f, 0.776888f, 0.777853f, 0.778817f, 0.779778f, + 0.780737f, 0.781695f, 0.782651f, 0.783605f, 0.784557f, 0.785507f, 0.786455f, 0.787402f, + 0.788346f, 0.789289f, 0.790230f, 0.791169f, 0.792107f, 0.793042f, 0.793975f, 0.794907f, + 0.795837f, 0.796765f, 0.797691f, 0.798615f, 0.799537f, 0.800458f, 0.801376f, 0.802293f, + 0.803208f, 0.804120f, 0.805031f, 0.805940f, 0.806848f, 0.807753f, 0.808656f, 0.809558f, + 0.810457f, 0.811355f, 0.812251f, 0.813144f, 0.814036f, 0.814926f, 0.815814f, 0.816701f, + 0.817585f, 0.818467f, 0.819348f, 0.820226f, 0.821102f, 0.821977f, 0.822850f, 0.823721f, + 0.824589f, 0.825456f, 0.826321f, 0.827184f, 0.828045f, 0.828904f, 0.829761f, 0.830616f, + 0.831470f, 0.832321f, 0.833170f, 0.834018f, 0.834863f, 0.835706f, 0.836548f, 0.837387f, + 0.838225f, 0.839060f, 0.839894f, 0.840725f, 0.841555f, 0.842383f, 0.843208f, 0.844032f, + 0.844854f, 0.845673f, 0.846491f, 0.847307f, 0.848120f, 0.848932f, 0.849742f, 0.850549f, + 0.851355f, 0.852159f, 0.852961f, 0.853760f, 0.854558f, 0.855354f, 0.856147f, 0.856939f, + 0.857729f, 0.858516f, 0.859302f, 0.860085f, 0.860867f, 0.861646f, 0.862424f, 0.863199f, + 0.863973f, 0.864744f, 0.865514f, 0.866281f, 0.867046f, 0.867809f, 0.868571f, 0.869330f, + 0.870087f, 0.870842f, 0.871595f, 0.872346f, 0.873095f, 0.873842f, 0.874587f, 0.875329f, + 0.876070f, 0.876809f, 0.877545f, 0.878280f, 0.879012f, 0.879743f, 0.880471f, 0.881197f, + 0.881921f, 0.882643f, 0.883363f, 0.884081f, 0.884797f, 0.885511f, 0.886223f, 0.886932f, + 0.887640f, 0.888345f, 0.889048f, 0.889750f, 0.890449f, 0.891146f, 0.891841f, 0.892534f, + 0.893224f, 0.893913f, 0.894599f, 0.895284f, 0.895966f, 0.896646f, 0.897325f, 0.898001f, + 0.898674f, 0.899346f, 0.900016f, 0.900683f, 0.901349f, 0.902012f, 0.902673f, 0.903332f, + 0.903989f, 0.904644f, 0.905297f, 0.905947f, 0.906596f, 0.907242f, 0.907886f, 0.908528f, + 0.909168f, 0.909806f, 0.910441f, 0.911075f, 0.911706f, 0.912335f, 0.912962f, 0.913587f, + 0.914210f, 0.914830f, 0.915449f, 0.916065f, 0.916679f, 0.917291f, 0.917901f, 0.918508f, + 0.919114f, 0.919717f, 0.920318f, 0.920917f, 0.921514f, 0.922109f, 0.922701f, 0.923291f, + 0.923880f, 0.924465f, 0.925049f, 0.925631f, 0.926210f, 0.926787f, 0.927363f, 0.927935f, + 0.928506f, 0.929075f, 0.929641f, 0.930205f, 0.930767f, 0.931327f, 0.931884f, 0.932440f, + 0.932993f, 0.933544f, 0.934093f, 0.934639f, 0.935184f, 0.935726f, 0.936266f, 0.936803f, + 0.937339f, 0.937872f, 0.938404f, 0.938932f, 0.939459f, 0.939984f, 0.940506f, 0.941026f, + 0.941544f, 0.942060f, 0.942573f, 0.943084f, 0.943593f, 0.944100f, 0.944605f, 0.945107f, + 0.945607f, 0.946105f, 0.946601f, 0.947094f, 0.947586f, 0.948075f, 0.948561f, 0.949046f, + 0.949528f, 0.950008f, 0.950486f, 0.950962f, 0.951435f, 0.951906f, 0.952375f, 0.952842f, + 0.953306f, 0.953768f, 0.954228f, 0.954686f, 0.955141f, 0.955594f, 0.956045f, 0.956494f, + 0.956940f, 0.957385f, 0.957826f, 0.958266f, 0.958703f, 0.959139f, 0.959572f, 0.960002f, + 0.960431f, 0.960857f, 0.961280f, 0.961702f, 0.962121f, 0.962538f, 0.962953f, 0.963366f, + 0.963776f, 0.964184f, 0.964590f, 0.964993f, 0.965394f, 0.965793f, 0.966190f, 0.966584f, + 0.966976f, 0.967366f, 0.967754f, 0.968139f, 0.968522f, 0.968903f, 0.969281f, 0.969657f, + 0.970031f, 0.970403f, 0.970772f, 0.971139f, 0.971504f, 0.971866f, 0.972227f, 0.972584f, + 0.972940f, 0.973293f, 0.973644f, 0.973993f, 0.974339f, 0.974684f, 0.975025f, 0.975365f, + 0.975702f, 0.976037f, 0.976370f, 0.976700f, 0.977028f, 0.977354f, 0.977677f, 0.977998f, + 0.978317f, 0.978634f, 0.978948f, 0.979260f, 0.979570f, 0.979877f, 0.980182f, 0.980485f, + 0.980785f, 0.981083f, 0.981379f, 0.981673f, 0.981964f, 0.982253f, 0.982539f, 0.982824f, + 0.983105f, 0.983385f, 0.983662f, 0.983937f, 0.984210f, 0.984480f, 0.984748f, 0.985014f, + 0.985278f, 0.985539f, 0.985798f, 0.986054f, 0.986308f, 0.986560f, 0.986809f, 0.987057f, + 0.987301f, 0.987544f, 0.987784f, 0.988022f, 0.988258f, 0.988491f, 0.988722f, 0.988950f, + 0.989177f, 0.989400f, 0.989622f, 0.989841f, 0.990058f, 0.990273f, 0.990485f, 0.990695f, + 0.990903f, 0.991108f, 0.991311f, 0.991511f, 0.991710f, 0.991906f, 0.992099f, 0.992291f, + 0.992480f, 0.992666f, 0.992850f, 0.993032f, 0.993212f, 0.993389f, 0.993564f, 0.993737f, + 0.993907f, 0.994075f, 0.994240f, 0.994404f, 0.994565f, 0.994723f, 0.994879f, 0.995033f, + 0.995185f, 0.995334f, 0.995481f, 0.995625f, 0.995767f, 0.995907f, 0.996045f, 0.996180f, + 0.996313f, 0.996443f, 0.996571f, 0.996697f, 0.996820f, 0.996941f, 0.997060f, 0.997176f, + 0.997290f, 0.997402f, 0.997511f, 0.997618f, 0.997723f, 0.997825f, 0.997925f, 0.998023f, + 0.998118f, 0.998211f, 0.998302f, 0.998390f, 0.998476f, 0.998559f, 0.998640f, 0.998719f, + 0.998795f, 0.998870f, 0.998941f, 0.999011f, 0.999078f, 0.999142f, 0.999205f, 0.999265f, + 0.999322f, 0.999378f, 0.999431f, 0.999481f, 0.999529f, 0.999575f, 0.999619f, 0.999660f, + 0.999699f, 0.999735f, 0.999769f, 0.999801f, 0.999831f, 0.999858f, 0.999882f, 0.999905f, + 0.999925f, 0.999942f, 0.999958f, 0.999971f, 0.999981f, 0.999989f, 0.999995f, 0.999999f, + 0.000000f, -0.001534f, -0.003068f, -0.004602f, -0.006136f, -0.007670f, -0.009204f, -0.010738f, + -0.012272f, -0.013805f, -0.015339f, -0.016873f, -0.018407f, -0.019940f, -0.021474f, -0.023008f, + -0.024541f, -0.026075f, -0.027608f, -0.029142f, -0.030675f, -0.032208f, -0.033741f, -0.035274f, + -0.036807f, -0.038340f, -0.039873f, -0.041406f, -0.042938f, -0.044471f, -0.046003f, -0.047535f, + -0.049068f, -0.050600f, -0.052132f, -0.053664f, -0.055195f, -0.056727f, -0.058258f, -0.059790f, + -0.061321f, -0.062852f, -0.064383f, -0.065913f, -0.067444f, -0.068974f, -0.070505f, -0.072035f, + -0.073565f, -0.075094f, -0.076624f, -0.078153f, -0.079682f, -0.081211f, -0.082740f, -0.084269f, + -0.085797f, -0.087326f, -0.088854f, -0.090381f, -0.091909f, -0.093436f, -0.094963f, -0.096490f, + -0.098017f, -0.099544f, -0.101070f, -0.102596f, -0.104122f, -0.105647f, -0.107172f, -0.108697f, + -0.110222f, -0.111747f, -0.113271f, -0.114795f, -0.116319f, -0.117842f, -0.119365f, -0.120888f, + -0.122411f, -0.123933f, -0.125455f, -0.126977f, -0.128498f, -0.130019f, -0.131540f, -0.133061f, + -0.134581f, -0.136101f, -0.137620f, -0.139139f, -0.140658f, -0.142177f, -0.143695f, -0.145213f, + -0.146730f, -0.148248f, -0.149765f, -0.151281f, -0.152797f, -0.154313f, -0.155828f, -0.157343f, + -0.158858f, -0.160372f, -0.161886f, -0.163400f, -0.164913f, -0.166426f, -0.167938f, -0.169450f, + -0.170962f, -0.172473f, -0.173984f, -0.175494f, -0.177004f, -0.178514f, -0.180023f, -0.181532f, + -0.183040f, -0.184548f, -0.186055f, -0.187562f, -0.189069f, -0.190575f, -0.192080f, -0.193586f, + -0.195090f, -0.196595f, -0.198098f, -0.199602f, -0.201105f, -0.202607f, -0.204109f, -0.205610f, + -0.207111f, -0.208612f, -0.210112f, -0.211611f, -0.213110f, -0.214609f, -0.216107f, -0.217604f, + -0.219101f, -0.220598f, -0.222094f, -0.223589f, -0.225084f, -0.226578f, -0.228072f, -0.229565f, + -0.231058f, -0.232550f, -0.234042f, -0.235533f, -0.237024f, -0.238514f, -0.240003f, -0.241492f, + -0.242980f, -0.244468f, -0.245955f, -0.247442f, -0.248928f, -0.250413f, -0.251898f, -0.253382f, + -0.254866f, -0.256349f, -0.257831f, -0.259313f, -0.260794f, -0.262275f, -0.263755f, -0.265234f, + -0.266713f, -0.268191f, -0.269668f, -0.271145f, -0.272621f, -0.274097f, -0.275572f, -0.277046f, + -0.278520f, -0.279993f, -0.281465f, -0.282937f, -0.284408f, -0.285878f, -0.287347f, -0.288816f, + -0.290285f, -0.291752f, -0.293219f, -0.294685f, -0.296151f, -0.297616f, -0.299080f, -0.300543f, + -0.302006f, -0.303468f, -0.304929f, -0.306390f, -0.307850f, -0.309309f, -0.310767f, -0.312225f, + -0.313682f, -0.315138f, -0.316593f, -0.318048f, -0.319502f, -0.320955f, -0.322408f, -0.323859f, + -0.325310f, -0.326760f, -0.328210f, -0.329658f, -0.331106f, -0.332553f, -0.334000f, -0.335445f, + -0.336890f, -0.338334f, -0.339777f, -0.341219f, -0.342661f, -0.344101f, -0.345541f, -0.346980f, + -0.348419f, -0.349856f, -0.351293f, -0.352729f, -0.354164f, -0.355598f, -0.357031f, -0.358463f, + -0.359895f, -0.361326f, -0.362756f, -0.364185f, -0.365613f, -0.367040f, -0.368467f, -0.369892f, + -0.371317f, -0.372741f, -0.374164f, -0.375586f, -0.377007f, -0.378428f, -0.379847f, -0.381266f, + -0.382683f, -0.384100f, -0.385516f, -0.386931f, -0.388345f, -0.389758f, -0.391170f, -0.392582f, + -0.393992f, -0.395401f, -0.396810f, -0.398218f, -0.399624f, -0.401030f, -0.402435f, -0.403838f, + -0.405241f, -0.406643f, -0.408044f, -0.409444f, -0.410843f, -0.412241f, -0.413638f, -0.415034f, + -0.416430f, -0.417824f, -0.419217f, -0.420609f, -0.422000f, -0.423390f, -0.424780f, -0.426168f, + -0.427555f, -0.428941f, -0.430326f, -0.431711f, -0.433094f, -0.434476f, -0.435857f, -0.437237f, + -0.438616f, -0.439994f, -0.441371f, -0.442747f, -0.444122f, -0.445496f, -0.446869f, -0.448241f, + -0.449611f, -0.450981f, -0.452350f, -0.453717f, -0.455084f, -0.456449f, -0.457813f, -0.459177f, + -0.460539f, -0.461900f, -0.463260f, -0.464619f, -0.465977f, -0.467333f, -0.468689f, -0.470043f, + -0.471397f, -0.472749f, -0.474100f, -0.475450f, -0.476799f, -0.478147f, -0.479494f, -0.480839f, + -0.482184f, -0.483527f, -0.484869f, -0.486210f, -0.487550f, -0.488889f, -0.490226f, -0.491563f, + -0.492898f, -0.494232f, -0.495565f, -0.496897f, -0.498228f, -0.499557f, -0.500885f, -0.502212f, + -0.503538f, -0.504863f, -0.506187f, -0.507509f, -0.508830f, -0.510150f, -0.511469f, -0.512786f, + -0.514103f, -0.515418f, -0.516732f, -0.518045f, -0.519356f, -0.520666f, -0.521975f, -0.523283f, + -0.524590f, -0.525895f, -0.527199f, -0.528502f, -0.529804f, -0.531104f, -0.532403f, -0.533701f, + -0.534998f, -0.536293f, -0.537587f, -0.538880f, -0.540171f, -0.541462f, -0.542751f, -0.544039f, + -0.545325f, -0.546610f, -0.547894f, -0.549177f, -0.550458f, -0.551738f, -0.553017f, -0.554294f, + -0.555570f, -0.556845f, -0.558119f, -0.559391f, -0.560662f, -0.561931f, -0.563199f, -0.564466f, + -0.565732f, -0.566996f, -0.568259f, -0.569521f, -0.570781f, -0.572040f, -0.573297f, -0.574553f, + -0.575808f, -0.577062f, -0.578314f, -0.579565f, -0.580814f, -0.582062f, -0.583309f, -0.584554f, + -0.585798f, -0.587040f, -0.588282f, -0.589521f, -0.590760f, -0.591997f, -0.593232f, -0.594467f, + -0.595699f, -0.596931f, -0.598161f, -0.599389f, -0.600616f, -0.601842f, -0.603067f, -0.604290f, + -0.605511f, -0.606731f, -0.607950f, -0.609167f, -0.610383f, -0.611597f, -0.612810f, -0.614022f, + -0.615232f, -0.616440f, -0.617647f, -0.618853f, -0.620057f, -0.621260f, -0.622461f, -0.623661f, + -0.624860f, -0.626056f, -0.627252f, -0.628446f, -0.629638f, -0.630829f, -0.632019f, -0.633207f, + -0.634393f, -0.635578f, -0.636762f, -0.637944f, -0.639124f, -0.640303f, -0.641481f, -0.642657f, + -0.643832f, -0.645005f, -0.646176f, -0.647346f, -0.648514f, -0.649681f, -0.650847f, -0.652011f, + -0.653173f, -0.654334f, -0.655493f, -0.656651f, -0.657807f, -0.658961f, -0.660114f, -0.661266f, + -0.662416f, -0.663564f, -0.664711f, -0.665856f, -0.667000f, -0.668142f, -0.669283f, -0.670422f, + -0.671559f, -0.672695f, -0.673829f, -0.674962f, -0.676093f, -0.677222f, -0.678350f, -0.679476f, + -0.680601f, -0.681724f, -0.682846f, -0.683965f, -0.685084f, -0.686200f, -0.687315f, -0.688429f, + -0.689541f, -0.690651f, -0.691759f, -0.692866f, -0.693971f, -0.695075f, -0.696177f, -0.697277f, + -0.698376f, -0.699473f, -0.700569f, -0.701663f, -0.702755f, -0.703845f, -0.704934f, -0.706021f, + -0.707107f, -0.708191f, -0.709273f, -0.710353f, -0.711432f, -0.712509f, -0.713585f, -0.714659f, + -0.715731f, -0.716801f, -0.717870f, -0.718937f, -0.720003f, -0.721066f, -0.722128f, -0.723188f, + -0.724247f, -0.725304f, -0.726359f, -0.727413f, -0.728464f, -0.729514f, -0.730563f, -0.731609f, + -0.732654f, -0.733697f, -0.734739f, -0.735779f, -0.736817f, -0.737853f, -0.738887f, -0.739920f, + -0.740951f, -0.741980f, -0.743008f, -0.744034f, -0.745058f, -0.746080f, -0.747101f, -0.748119f, + -0.749136f, -0.750152f, -0.751165f, -0.752177f, -0.753187f, -0.754195f, -0.755201f, -0.756206f, + -0.757209f, -0.758210f, -0.759209f, -0.760207f, -0.761202f, -0.762196f, -0.763188f, -0.764179f, + -0.765167f, -0.766154f, -0.767139f, -0.768122f, -0.769103f, -0.770083f, -0.771061f, -0.772036f, + -0.773010f, -0.773983f, -0.774953f, -0.775922f, -0.776888f, -0.777853f, -0.778817f, -0.779778f, + -0.780737f, -0.781695f, -0.782651f, -0.783605f, -0.784557f, -0.785507f, -0.786455f, -0.787402f, + -0.788346f, -0.789289f, -0.790230f, -0.791169f, -0.792107f, -0.793042f, -0.793975f, -0.794907f, + -0.795837f, -0.796765f, -0.797691f, -0.798615f, -0.799537f, -0.800458f, -0.801376f, -0.802293f, + -0.803208f, -0.804120f, -0.805031f, -0.805940f, -0.806848f, -0.807753f, -0.808656f, -0.809558f, + -0.810457f, -0.811355f, -0.812251f, -0.813144f, -0.814036f, -0.814926f, -0.815814f, -0.816701f, + -0.817585f, -0.818467f, -0.819348f, -0.820226f, -0.821102f, -0.821977f, -0.822850f, -0.823721f, + -0.824589f, -0.825456f, -0.826321f, -0.827184f, -0.828045f, -0.828904f, -0.829761f, -0.830616f, + -0.831470f, -0.832321f, -0.833170f, -0.834018f, -0.834863f, -0.835706f, -0.836548f, -0.837387f, + -0.838225f, -0.839060f, -0.839894f, -0.840725f, -0.841555f, -0.842383f, -0.843208f, -0.844032f, + -0.844854f, -0.845673f, -0.846491f, -0.847307f, -0.848120f, -0.848932f, -0.849742f, -0.850549f, + -0.851355f, -0.852159f, -0.852961f, -0.853760f, -0.854558f, -0.855354f, -0.856147f, -0.856939f, + -0.857729f, -0.858516f, -0.859302f, -0.860085f, -0.860867f, -0.861646f, -0.862424f, -0.863199f, + -0.863973f, -0.864744f, -0.865514f, -0.866281f, -0.867046f, -0.867809f, -0.868571f, -0.869330f, + -0.870087f, -0.870842f, -0.871595f, -0.872346f, -0.873095f, -0.873842f, -0.874587f, -0.875329f, + -0.876070f, -0.876809f, -0.877545f, -0.878280f, -0.879012f, -0.879743f, -0.880471f, -0.881197f, + -0.881921f, -0.882643f, -0.883363f, -0.884081f, -0.884797f, -0.885511f, -0.886223f, -0.886932f, + -0.887640f, -0.888345f, -0.889048f, -0.889750f, -0.890449f, -0.891146f, -0.891841f, -0.892534f, + -0.893224f, -0.893913f, -0.894599f, -0.895284f, -0.895966f, -0.896646f, -0.897325f, -0.898001f, + -0.898674f, -0.899346f, -0.900016f, -0.900683f, -0.901349f, -0.902012f, -0.902673f, -0.903332f, + -0.903989f, -0.904644f, -0.905297f, -0.905947f, -0.906596f, -0.907242f, -0.907886f, -0.908528f, + -0.909168f, -0.909806f, -0.910441f, -0.911075f, -0.911706f, -0.912335f, -0.912962f, -0.913587f, + -0.914210f, -0.914830f, -0.915449f, -0.916065f, -0.916679f, -0.917291f, -0.917901f, -0.918508f, + -0.919114f, -0.919717f, -0.920318f, -0.920917f, -0.921514f, -0.922109f, -0.922701f, -0.923291f, + -0.923880f, -0.924465f, -0.925049f, -0.925631f, -0.926210f, -0.926787f, -0.927363f, -0.927935f, + -0.928506f, -0.929075f, -0.929641f, -0.930205f, -0.930767f, -0.931327f, -0.931884f, -0.932440f, + -0.932993f, -0.933544f, -0.934093f, -0.934639f, -0.935184f, -0.935726f, -0.936266f, -0.936803f, + -0.937339f, -0.937872f, -0.938404f, -0.938932f, -0.939459f, -0.939984f, -0.940506f, -0.941026f, + -0.941544f, -0.942060f, -0.942573f, -0.943084f, -0.943593f, -0.944100f, -0.944605f, -0.945107f, + -0.945607f, -0.946105f, -0.946601f, -0.947094f, -0.947586f, -0.948075f, -0.948561f, -0.949046f, + -0.949528f, -0.950008f, -0.950486f, -0.950962f, -0.951435f, -0.951906f, -0.952375f, -0.952842f, + -0.953306f, -0.953768f, -0.954228f, -0.954686f, -0.955141f, -0.955594f, -0.956045f, -0.956494f, + -0.956940f, -0.957385f, -0.957826f, -0.958266f, -0.958703f, -0.959139f, -0.959572f, -0.960002f, + -0.960431f, -0.960857f, -0.961280f, -0.961702f, -0.962121f, -0.962538f, -0.962953f, -0.963366f, + -0.963776f, -0.964184f, -0.964590f, -0.964993f, -0.965394f, -0.965793f, -0.966190f, -0.966584f, + -0.966976f, -0.967366f, -0.967754f, -0.968139f, -0.968522f, -0.968903f, -0.969281f, -0.969657f, + -0.970031f, -0.970403f, -0.970772f, -0.971139f, -0.971504f, -0.971866f, -0.972227f, -0.972584f, + -0.972940f, -0.973293f, -0.973644f, -0.973993f, -0.974339f, -0.974684f, -0.975025f, -0.975365f, + -0.975702f, -0.976037f, -0.976370f, -0.976700f, -0.977028f, -0.977354f, -0.977677f, -0.977998f, + -0.978317f, -0.978634f, -0.978948f, -0.979260f, -0.979570f, -0.979877f, -0.980182f, -0.980485f, + -0.980785f, -0.981083f, -0.981379f, -0.981673f, -0.981964f, -0.982253f, -0.982539f, -0.982824f, + -0.983105f, -0.983385f, -0.983662f, -0.983937f, -0.984210f, -0.984480f, -0.984748f, -0.985014f, + -0.985278f, -0.985539f, -0.985798f, -0.986054f, -0.986308f, -0.986560f, -0.986809f, -0.987057f, + -0.987301f, -0.987544f, -0.987784f, -0.988022f, -0.988258f, -0.988491f, -0.988722f, -0.988950f, + -0.989177f, -0.989400f, -0.989622f, -0.989841f, -0.990058f, -0.990273f, -0.990485f, -0.990695f, + -0.990903f, -0.991108f, -0.991311f, -0.991511f, -0.991710f, -0.991906f, -0.992099f, -0.992291f, + -0.992480f, -0.992666f, -0.992850f, -0.993032f, -0.993212f, -0.993389f, -0.993564f, -0.993737f, + -0.993907f, -0.994075f, -0.994240f, -0.994404f, -0.994565f, -0.994723f, -0.994879f, -0.995033f, + -0.995185f, -0.995334f, -0.995481f, -0.995625f, -0.995767f, -0.995907f, -0.996045f, -0.996180f, + -0.996313f, -0.996443f, -0.996571f, -0.996697f, -0.996820f, -0.996941f, -0.997060f, -0.997176f, + -0.997290f, -0.997402f, -0.997511f, -0.997618f, -0.997723f, -0.997825f, -0.997925f, -0.998023f, + -0.998118f, -0.998211f, -0.998302f, -0.998390f, -0.998476f, -0.998559f, -0.998640f, -0.998719f, + -0.998795f, -0.998870f, -0.998941f, -0.999011f, -0.999078f, -0.999142f, -0.999205f, -0.999265f, + -0.999322f, -0.999378f, -0.999431f, -0.999481f, -0.999529f, -0.999575f, -0.999619f, -0.999660f, + -0.999699f, -0.999735f, -0.999769f, -0.999801f, -0.999831f, -0.999858f, -0.999882f, -0.999905f, + -0.999925f, -0.999942f, -0.999958f, -0.999971f, -0.999981f, -0.999989f, -0.999995f, -0.999999f +}; + +static const float sinTable8192[4096] = { + 0.000000f, 0.000767f, 0.001534f, 0.002301f, 0.003068f, 0.003835f, 0.004602f, 0.005369f, + 0.006136f, 0.006903f, 0.007670f, 0.008437f, 0.009204f, 0.009971f, 0.010738f, 0.011505f, + 0.012272f, 0.013038f, 0.013805f, 0.014572f, 0.015339f, 0.016106f, 0.016873f, 0.017640f, + 0.018407f, 0.019174f, 0.019940f, 0.020707f, 0.021474f, 0.022241f, 0.023008f, 0.023774f, + 0.024541f, 0.025308f, 0.026075f, 0.026841f, 0.027608f, 0.028375f, 0.029142f, 0.029908f, + 0.030675f, 0.031441f, 0.032208f, 0.032975f, 0.033741f, 0.034508f, 0.035274f, 0.036041f, + 0.036807f, 0.037574f, 0.038340f, 0.039107f, 0.039873f, 0.040639f, 0.041406f, 0.042172f, + 0.042938f, 0.043705f, 0.044471f, 0.045237f, 0.046003f, 0.046769f, 0.047535f, 0.048302f, + 0.049068f, 0.049834f, 0.050600f, 0.051366f, 0.052132f, 0.052898f, 0.053664f, 0.054429f, + 0.055195f, 0.055961f, 0.056727f, 0.057493f, 0.058258f, 0.059024f, 0.059790f, 0.060555f, + 0.061321f, 0.062086f, 0.062852f, 0.063617f, 0.064383f, 0.065148f, 0.065913f, 0.066679f, + 0.067444f, 0.068209f, 0.068974f, 0.069739f, 0.070505f, 0.071270f, 0.072035f, 0.072800f, + 0.073565f, 0.074329f, 0.075094f, 0.075859f, 0.076624f, 0.077389f, 0.078153f, 0.078918f, + 0.079682f, 0.080447f, 0.081211f, 0.081976f, 0.082740f, 0.083505f, 0.084269f, 0.085033f, + 0.085797f, 0.086561f, 0.087326f, 0.088090f, 0.088854f, 0.089617f, 0.090381f, 0.091145f, + 0.091909f, 0.092673f, 0.093436f, 0.094200f, 0.094963f, 0.095727f, 0.096490f, 0.097254f, + 0.098017f, 0.098780f, 0.099544f, 0.100307f, 0.101070f, 0.101833f, 0.102596f, 0.103359f, + 0.104122f, 0.104884f, 0.105647f, 0.106410f, 0.107172f, 0.107935f, 0.108697f, 0.109460f, + 0.110222f, 0.110984f, 0.111747f, 0.112509f, 0.113271f, 0.114033f, 0.114795f, 0.115557f, + 0.116319f, 0.117080f, 0.117842f, 0.118604f, 0.119365f, 0.120127f, 0.120888f, 0.121649f, + 0.122411f, 0.123172f, 0.123933f, 0.124694f, 0.125455f, 0.126216f, 0.126977f, 0.127737f, + 0.128498f, 0.129259f, 0.130019f, 0.130780f, 0.131540f, 0.132300f, 0.133061f, 0.133821f, + 0.134581f, 0.135341f, 0.136101f, 0.136860f, 0.137620f, 0.138380f, 0.139139f, 0.139899f, + 0.140658f, 0.141418f, 0.142177f, 0.142936f, 0.143695f, 0.144454f, 0.145213f, 0.145972f, + 0.146730f, 0.147489f, 0.148248f, 0.149006f, 0.149765f, 0.150523f, 0.151281f, 0.152039f, + 0.152797f, 0.153555f, 0.154313f, 0.155071f, 0.155828f, 0.156586f, 0.157343f, 0.158101f, + 0.158858f, 0.159615f, 0.160372f, 0.161129f, 0.161886f, 0.162643f, 0.163400f, 0.164157f, + 0.164913f, 0.165670f, 0.166426f, 0.167182f, 0.167938f, 0.168694f, 0.169450f, 0.170206f, + 0.170962f, 0.171718f, 0.172473f, 0.173229f, 0.173984f, 0.174739f, 0.175494f, 0.176249f, + 0.177004f, 0.177759f, 0.178514f, 0.179268f, 0.180023f, 0.180777f, 0.181532f, 0.182286f, + 0.183040f, 0.183794f, 0.184548f, 0.185301f, 0.186055f, 0.186809f, 0.187562f, 0.188315f, + 0.189069f, 0.189822f, 0.190575f, 0.191328f, 0.192080f, 0.192833f, 0.193586f, 0.194338f, + 0.195090f, 0.195843f, 0.196595f, 0.197347f, 0.198098f, 0.198850f, 0.199602f, 0.200353f, + 0.201105f, 0.201856f, 0.202607f, 0.203358f, 0.204109f, 0.204860f, 0.205610f, 0.206361f, + 0.207111f, 0.207862f, 0.208612f, 0.209362f, 0.210112f, 0.210862f, 0.211611f, 0.212361f, + 0.213110f, 0.213860f, 0.214609f, 0.215358f, 0.216107f, 0.216856f, 0.217604f, 0.218353f, + 0.219101f, 0.219850f, 0.220598f, 0.221346f, 0.222094f, 0.222841f, 0.223589f, 0.224337f, + 0.225084f, 0.225831f, 0.226578f, 0.227325f, 0.228072f, 0.228819f, 0.229565f, 0.230312f, + 0.231058f, 0.231804f, 0.232550f, 0.233296f, 0.234042f, 0.234788f, 0.235533f, 0.236278f, + 0.237024f, 0.237769f, 0.238514f, 0.239258f, 0.240003f, 0.240748f, 0.241492f, 0.242236f, + 0.242980f, 0.243724f, 0.244468f, 0.245212f, 0.245955f, 0.246698f, 0.247442f, 0.248185f, + 0.248928f, 0.249670f, 0.250413f, 0.251155f, 0.251898f, 0.252640f, 0.253382f, 0.254124f, + 0.254866f, 0.255607f, 0.256349f, 0.257090f, 0.257831f, 0.258572f, 0.259313f, 0.260054f, + 0.260794f, 0.261534f, 0.262275f, 0.263015f, 0.263755f, 0.264494f, 0.265234f, 0.265973f, + 0.266713f, 0.267452f, 0.268191f, 0.268930f, 0.269668f, 0.270407f, 0.271145f, 0.271883f, + 0.272621f, 0.273359f, 0.274097f, 0.274834f, 0.275572f, 0.276309f, 0.277046f, 0.277783f, + 0.278520f, 0.279256f, 0.279993f, 0.280729f, 0.281465f, 0.282201f, 0.282937f, 0.283672f, + 0.284408f, 0.285143f, 0.285878f, 0.286613f, 0.287347f, 0.288082f, 0.288816f, 0.289551f, + 0.290285f, 0.291019f, 0.291752f, 0.292486f, 0.293219f, 0.293952f, 0.294685f, 0.295418f, + 0.296151f, 0.296883f, 0.297616f, 0.298348f, 0.299080f, 0.299812f, 0.300543f, 0.301275f, + 0.302006f, 0.302737f, 0.303468f, 0.304199f, 0.304929f, 0.305660f, 0.306390f, 0.307120f, + 0.307850f, 0.308579f, 0.309309f, 0.310038f, 0.310767f, 0.311496f, 0.312225f, 0.312953f, + 0.313682f, 0.314410f, 0.315138f, 0.315866f, 0.316593f, 0.317321f, 0.318048f, 0.318775f, + 0.319502f, 0.320229f, 0.320955f, 0.321682f, 0.322408f, 0.323134f, 0.323859f, 0.324585f, + 0.325310f, 0.326035f, 0.326760f, 0.327485f, 0.328210f, 0.328934f, 0.329658f, 0.330382f, + 0.331106f, 0.331830f, 0.332553f, 0.333277f, 0.334000f, 0.334722f, 0.335445f, 0.336168f, + 0.336890f, 0.337612f, 0.338334f, 0.339055f, 0.339777f, 0.340498f, 0.341219f, 0.341940f, + 0.342661f, 0.343381f, 0.344101f, 0.344821f, 0.345541f, 0.346261f, 0.346980f, 0.347700f, + 0.348419f, 0.349138f, 0.349856f, 0.350575f, 0.351293f, 0.352011f, 0.352729f, 0.353446f, + 0.354164f, 0.354881f, 0.355598f, 0.356314f, 0.357031f, 0.357747f, 0.358463f, 0.359179f, + 0.359895f, 0.360611f, 0.361326f, 0.362041f, 0.362756f, 0.363470f, 0.364185f, 0.364899f, + 0.365613f, 0.366327f, 0.367040f, 0.367754f, 0.368467f, 0.369180f, 0.369892f, 0.370605f, + 0.371317f, 0.372029f, 0.372741f, 0.373453f, 0.374164f, 0.374875f, 0.375586f, 0.376297f, + 0.377007f, 0.377718f, 0.378428f, 0.379138f, 0.379847f, 0.380557f, 0.381266f, 0.381975f, + 0.382683f, 0.383392f, 0.384100f, 0.384808f, 0.385516f, 0.386224f, 0.386931f, 0.387638f, + 0.388345f, 0.389052f, 0.389758f, 0.390464f, 0.391170f, 0.391876f, 0.392582f, 0.393287f, + 0.393992f, 0.394697f, 0.395401f, 0.396106f, 0.396810f, 0.397514f, 0.398218f, 0.398921f, + 0.399624f, 0.400327f, 0.401030f, 0.401732f, 0.402435f, 0.403137f, 0.403838f, 0.404540f, + 0.405241f, 0.405942f, 0.406643f, 0.407344f, 0.408044f, 0.408744f, 0.409444f, 0.410144f, + 0.410843f, 0.411542f, 0.412241f, 0.412940f, 0.413638f, 0.414337f, 0.415034f, 0.415732f, + 0.416430f, 0.417127f, 0.417824f, 0.418520f, 0.419217f, 0.419913f, 0.420609f, 0.421305f, + 0.422000f, 0.422695f, 0.423390f, 0.424085f, 0.424780f, 0.425474f, 0.426168f, 0.426862f, + 0.427555f, 0.428248f, 0.428941f, 0.429634f, 0.430326f, 0.431019f, 0.431711f, 0.432402f, + 0.433094f, 0.433785f, 0.434476f, 0.435167f, 0.435857f, 0.436547f, 0.437237f, 0.437927f, + 0.438616f, 0.439305f, 0.439994f, 0.440683f, 0.441371f, 0.442059f, 0.442747f, 0.443435f, + 0.444122f, 0.444809f, 0.445496f, 0.446183f, 0.446869f, 0.447555f, 0.448241f, 0.448926f, + 0.449611f, 0.450296f, 0.450981f, 0.451665f, 0.452350f, 0.453033f, 0.453717f, 0.454400f, + 0.455084f, 0.455766f, 0.456449f, 0.457131f, 0.457813f, 0.458495f, 0.459177f, 0.459858f, + 0.460539f, 0.461219f, 0.461900f, 0.462580f, 0.463260f, 0.463939f, 0.464619f, 0.465298f, + 0.465977f, 0.466655f, 0.467333f, 0.468011f, 0.468689f, 0.469366f, 0.470043f, 0.470720f, + 0.471397f, 0.472073f, 0.472749f, 0.473425f, 0.474100f, 0.474775f, 0.475450f, 0.476125f, + 0.476799f, 0.477473f, 0.478147f, 0.478821f, 0.479494f, 0.480167f, 0.480839f, 0.481512f, + 0.482184f, 0.482856f, 0.483527f, 0.484198f, 0.484869f, 0.485540f, 0.486210f, 0.486880f, + 0.487550f, 0.488220f, 0.488889f, 0.489558f, 0.490226f, 0.490895f, 0.491563f, 0.492231f, + 0.492898f, 0.493565f, 0.494232f, 0.494899f, 0.495565f, 0.496231f, 0.496897f, 0.497562f, + 0.498228f, 0.498893f, 0.499557f, 0.500221f, 0.500885f, 0.501549f, 0.502212f, 0.502876f, + 0.503538f, 0.504201f, 0.504863f, 0.505525f, 0.506187f, 0.506848f, 0.507509f, 0.508170f, + 0.508830f, 0.509490f, 0.510150f, 0.510810f, 0.511469f, 0.512128f, 0.512786f, 0.513445f, + 0.514103f, 0.514760f, 0.515418f, 0.516075f, 0.516732f, 0.517388f, 0.518045f, 0.518700f, + 0.519356f, 0.520011f, 0.520666f, 0.521321f, 0.521975f, 0.522629f, 0.523283f, 0.523937f, + 0.524590f, 0.525243f, 0.525895f, 0.526547f, 0.527199f, 0.527851f, 0.528502f, 0.529153f, + 0.529804f, 0.530454f, 0.531104f, 0.531754f, 0.532403f, 0.533052f, 0.533701f, 0.534349f, + 0.534998f, 0.535645f, 0.536293f, 0.536940f, 0.537587f, 0.538234f, 0.538880f, 0.539526f, + 0.540171f, 0.540817f, 0.541462f, 0.542106f, 0.542751f, 0.543395f, 0.544039f, 0.544682f, + 0.545325f, 0.545968f, 0.546610f, 0.547252f, 0.547894f, 0.548536f, 0.549177f, 0.549818f, + 0.550458f, 0.551098f, 0.551738f, 0.552378f, 0.553017f, 0.553656f, 0.554294f, 0.554932f, + 0.555570f, 0.556208f, 0.556845f, 0.557482f, 0.558119f, 0.558755f, 0.559391f, 0.560026f, + 0.560662f, 0.561297f, 0.561931f, 0.562565f, 0.563199f, 0.563833f, 0.564466f, 0.565099f, + 0.565732f, 0.566364f, 0.566996f, 0.567628f, 0.568259f, 0.568890f, 0.569521f, 0.570151f, + 0.570781f, 0.571410f, 0.572040f, 0.572669f, 0.573297f, 0.573925f, 0.574553f, 0.575181f, + 0.575808f, 0.576435f, 0.577062f, 0.577688f, 0.578314f, 0.578939f, 0.579565f, 0.580189f, + 0.580814f, 0.581438f, 0.582062f, 0.582685f, 0.583309f, 0.583931f, 0.584554f, 0.585176f, + 0.585798f, 0.586419f, 0.587040f, 0.587661f, 0.588282f, 0.588902f, 0.589521f, 0.590141f, + 0.590760f, 0.591378f, 0.591997f, 0.592615f, 0.593232f, 0.593850f, 0.594467f, 0.595083f, + 0.595699f, 0.596315f, 0.596931f, 0.597546f, 0.598161f, 0.598775f, 0.599389f, 0.600003f, + 0.600616f, 0.601230f, 0.601842f, 0.602455f, 0.603067f, 0.603678f, 0.604290f, 0.604900f, + 0.605511f, 0.606121f, 0.606731f, 0.607341f, 0.607950f, 0.608559f, 0.609167f, 0.609775f, + 0.610383f, 0.610990f, 0.611597f, 0.612204f, 0.612810f, 0.613416f, 0.614022f, 0.614627f, + 0.615232f, 0.615836f, 0.616440f, 0.617044f, 0.617647f, 0.618250f, 0.618853f, 0.619455f, + 0.620057f, 0.620659f, 0.621260f, 0.621861f, 0.622461f, 0.623061f, 0.623661f, 0.624260f, + 0.624860f, 0.625458f, 0.626056f, 0.626654f, 0.627252f, 0.627849f, 0.628446f, 0.629042f, + 0.629638f, 0.630234f, 0.630829f, 0.631424f, 0.632019f, 0.632613f, 0.633207f, 0.633800f, + 0.634393f, 0.634986f, 0.635578f, 0.636170f, 0.636762f, 0.637353f, 0.637944f, 0.638534f, + 0.639124f, 0.639714f, 0.640303f, 0.640892f, 0.641481f, 0.642069f, 0.642657f, 0.643245f, + 0.643832f, 0.644418f, 0.645005f, 0.645590f, 0.646176f, 0.646761f, 0.647346f, 0.647930f, + 0.648514f, 0.649098f, 0.649681f, 0.650264f, 0.650847f, 0.651429f, 0.652011f, 0.652592f, + 0.653173f, 0.653753f, 0.654334f, 0.654913f, 0.655493f, 0.656072f, 0.656651f, 0.657229f, + 0.657807f, 0.658384f, 0.658961f, 0.659538f, 0.660114f, 0.660690f, 0.661266f, 0.661841f, + 0.662416f, 0.662990f, 0.663564f, 0.664138f, 0.664711f, 0.665284f, 0.665856f, 0.666428f, + 0.667000f, 0.667571f, 0.668142f, 0.668712f, 0.669283f, 0.669852f, 0.670422f, 0.670990f, + 0.671559f, 0.672127f, 0.672695f, 0.673262f, 0.673829f, 0.674396f, 0.674962f, 0.675527f, + 0.676093f, 0.676658f, 0.677222f, 0.677786f, 0.678350f, 0.678913f, 0.679476f, 0.680039f, + 0.680601f, 0.681163f, 0.681724f, 0.682285f, 0.682846f, 0.683406f, 0.683965f, 0.684525f, + 0.685084f, 0.685642f, 0.686200f, 0.686758f, 0.687315f, 0.687872f, 0.688429f, 0.688985f, + 0.689541f, 0.690096f, 0.690651f, 0.691205f, 0.691759f, 0.692313f, 0.692866f, 0.693419f, + 0.693971f, 0.694524f, 0.695075f, 0.695626f, 0.696177f, 0.696728f, 0.697277f, 0.697827f, + 0.698376f, 0.698925f, 0.699473f, 0.700021f, 0.700569f, 0.701116f, 0.701663f, 0.702209f, + 0.702755f, 0.703300f, 0.703845f, 0.704390f, 0.704934f, 0.705478f, 0.706021f, 0.706564f, + 0.707107f, 0.707649f, 0.708191f, 0.708732f, 0.709273f, 0.709813f, 0.710353f, 0.710893f, + 0.711432f, 0.711971f, 0.712509f, 0.713047f, 0.713585f, 0.714122f, 0.714659f, 0.715195f, + 0.715731f, 0.716266f, 0.716801f, 0.717336f, 0.717870f, 0.718404f, 0.718937f, 0.719470f, + 0.720003f, 0.720535f, 0.721066f, 0.721597f, 0.722128f, 0.722659f, 0.723188f, 0.723718f, + 0.724247f, 0.724776f, 0.725304f, 0.725832f, 0.726359f, 0.726886f, 0.727413f, 0.727939f, + 0.728464f, 0.728990f, 0.729514f, 0.730039f, 0.730563f, 0.731086f, 0.731609f, 0.732132f, + 0.732654f, 0.733176f, 0.733697f, 0.734218f, 0.734739f, 0.735259f, 0.735779f, 0.736298f, + 0.736817f, 0.737335f, 0.737853f, 0.738370f, 0.738887f, 0.739404f, 0.739920f, 0.740436f, + 0.740951f, 0.741466f, 0.741980f, 0.742494f, 0.743008f, 0.743521f, 0.744034f, 0.744546f, + 0.745058f, 0.745569f, 0.746080f, 0.746591f, 0.747101f, 0.747610f, 0.748119f, 0.748628f, + 0.749136f, 0.749644f, 0.750152f, 0.750659f, 0.751165f, 0.751671f, 0.752177f, 0.752682f, + 0.753187f, 0.753691f, 0.754195f, 0.754698f, 0.755201f, 0.755704f, 0.756206f, 0.756708f, + 0.757209f, 0.757710f, 0.758210f, 0.758710f, 0.759209f, 0.759708f, 0.760207f, 0.760705f, + 0.761202f, 0.761700f, 0.762196f, 0.762693f, 0.763188f, 0.763684f, 0.764179f, 0.764673f, + 0.765167f, 0.765661f, 0.766154f, 0.766647f, 0.767139f, 0.767631f, 0.768122f, 0.768613f, + 0.769103f, 0.769593f, 0.770083f, 0.770572f, 0.771061f, 0.771549f, 0.772036f, 0.772524f, + 0.773010f, 0.773497f, 0.773983f, 0.774468f, 0.774953f, 0.775438f, 0.775922f, 0.776405f, + 0.776888f, 0.777371f, 0.777853f, 0.778335f, 0.778817f, 0.779297f, 0.779778f, 0.780258f, + 0.780737f, 0.781216f, 0.781695f, 0.782173f, 0.782651f, 0.783128f, 0.783605f, 0.784081f, + 0.784557f, 0.785032f, 0.785507f, 0.785981f, 0.786455f, 0.786929f, 0.787402f, 0.787874f, + 0.788346f, 0.788818f, 0.789289f, 0.789760f, 0.790230f, 0.790700f, 0.791169f, 0.791638f, + 0.792107f, 0.792575f, 0.793042f, 0.793509f, 0.793975f, 0.794442f, 0.794907f, 0.795372f, + 0.795837f, 0.796301f, 0.796765f, 0.797228f, 0.797691f, 0.798153f, 0.798615f, 0.799076f, + 0.799537f, 0.799998f, 0.800458f, 0.800917f, 0.801376f, 0.801835f, 0.802293f, 0.802750f, + 0.803208f, 0.803664f, 0.804120f, 0.804576f, 0.805031f, 0.805486f, 0.805940f, 0.806394f, + 0.806848f, 0.807300f, 0.807753f, 0.808205f, 0.808656f, 0.809107f, 0.809558f, 0.810008f, + 0.810457f, 0.810906f, 0.811355f, 0.811803f, 0.812251f, 0.812698f, 0.813144f, 0.813591f, + 0.814036f, 0.814482f, 0.814926f, 0.815371f, 0.815814f, 0.816258f, 0.816701f, 0.817143f, + 0.817585f, 0.818026f, 0.818467f, 0.818908f, 0.819348f, 0.819787f, 0.820226f, 0.820664f, + 0.821102f, 0.821540f, 0.821977f, 0.822414f, 0.822850f, 0.823285f, 0.823721f, 0.824155f, + 0.824589f, 0.825023f, 0.825456f, 0.825889f, 0.826321f, 0.826753f, 0.827184f, 0.827615f, + 0.828045f, 0.828475f, 0.828904f, 0.829333f, 0.829761f, 0.830189f, 0.830616f, 0.831043f, + 0.831470f, 0.831895f, 0.832321f, 0.832746f, 0.833170f, 0.833594f, 0.834018f, 0.834440f, + 0.834863f, 0.835285f, 0.835706f, 0.836127f, 0.836548f, 0.836968f, 0.837387f, 0.837806f, + 0.838225f, 0.838643f, 0.839060f, 0.839477f, 0.839894f, 0.840310f, 0.840725f, 0.841140f, + 0.841555f, 0.841969f, 0.842383f, 0.842796f, 0.843208f, 0.843620f, 0.844032f, 0.844443f, + 0.844854f, 0.845264f, 0.845673f, 0.846082f, 0.846491f, 0.846899f, 0.847307f, 0.847714f, + 0.848120f, 0.848526f, 0.848932f, 0.849337f, 0.849742f, 0.850146f, 0.850549f, 0.850953f, + 0.851355f, 0.851757f, 0.852159f, 0.852560f, 0.852961f, 0.853361f, 0.853760f, 0.854159f, + 0.854558f, 0.854956f, 0.855354f, 0.855751f, 0.856147f, 0.856543f, 0.856939f, 0.857334f, + 0.857729f, 0.858123f, 0.858516f, 0.858909f, 0.859302f, 0.859694f, 0.860085f, 0.860476f, + 0.860867f, 0.861257f, 0.861646f, 0.862035f, 0.862424f, 0.862812f, 0.863199f, 0.863586f, + 0.863973f, 0.864359f, 0.864744f, 0.865129f, 0.865514f, 0.865898f, 0.866281f, 0.866664f, + 0.867046f, 0.867428f, 0.867809f, 0.868190f, 0.868571f, 0.868951f, 0.869330f, 0.869709f, + 0.870087f, 0.870465f, 0.870842f, 0.871219f, 0.871595f, 0.871971f, 0.872346f, 0.872721f, + 0.873095f, 0.873469f, 0.873842f, 0.874215f, 0.874587f, 0.874958f, 0.875329f, 0.875700f, + 0.876070f, 0.876440f, 0.876809f, 0.877177f, 0.877545f, 0.877913f, 0.878280f, 0.878646f, + 0.879012f, 0.879378f, 0.879743f, 0.880107f, 0.880471f, 0.880834f, 0.881197f, 0.881559f, + 0.881921f, 0.882283f, 0.882643f, 0.883004f, 0.883363f, 0.883723f, 0.884081f, 0.884439f, + 0.884797f, 0.885154f, 0.885511f, 0.885867f, 0.886223f, 0.886578f, 0.886932f, 0.887286f, + 0.887640f, 0.887993f, 0.888345f, 0.888697f, 0.889048f, 0.889399f, 0.889750f, 0.890099f, + 0.890449f, 0.890797f, 0.891146f, 0.891493f, 0.891841f, 0.892187f, 0.892534f, 0.892879f, + 0.893224f, 0.893569f, 0.893913f, 0.894256f, 0.894599f, 0.894942f, 0.895284f, 0.895625f, + 0.895966f, 0.896307f, 0.896646f, 0.896986f, 0.897325f, 0.897663f, 0.898001f, 0.898338f, + 0.898674f, 0.899011f, 0.899346f, 0.899681f, 0.900016f, 0.900350f, 0.900683f, 0.901016f, + 0.901349f, 0.901681f, 0.902012f, 0.902343f, 0.902673f, 0.903003f, 0.903332f, 0.903661f, + 0.903989f, 0.904317f, 0.904644f, 0.904971f, 0.905297f, 0.905622f, 0.905947f, 0.906272f, + 0.906596f, 0.906919f, 0.907242f, 0.907564f, 0.907886f, 0.908207f, 0.908528f, 0.908848f, + 0.909168f, 0.909487f, 0.909806f, 0.910124f, 0.910441f, 0.910758f, 0.911075f, 0.911391f, + 0.911706f, 0.912021f, 0.912335f, 0.912649f, 0.912962f, 0.913275f, 0.913587f, 0.913899f, + 0.914210f, 0.914520f, 0.914830f, 0.915140f, 0.915449f, 0.915757f, 0.916065f, 0.916372f, + 0.916679f, 0.916985f, 0.917291f, 0.917596f, 0.917901f, 0.918205f, 0.918508f, 0.918811f, + 0.919114f, 0.919416f, 0.919717f, 0.920018f, 0.920318f, 0.920618f, 0.920917f, 0.921216f, + 0.921514f, 0.921812f, 0.922109f, 0.922405f, 0.922701f, 0.922997f, 0.923291f, 0.923586f, + 0.923880f, 0.924173f, 0.924465f, 0.924758f, 0.925049f, 0.925340f, 0.925631f, 0.925921f, + 0.926210f, 0.926499f, 0.926787f, 0.927075f, 0.927363f, 0.927649f, 0.927935f, 0.928221f, + 0.928506f, 0.928791f, 0.929075f, 0.929358f, 0.929641f, 0.929923f, 0.930205f, 0.930486f, + 0.930767f, 0.931047f, 0.931327f, 0.931606f, 0.931884f, 0.932162f, 0.932440f, 0.932716f, + 0.932993f, 0.933269f, 0.933544f, 0.933818f, 0.934093f, 0.934366f, 0.934639f, 0.934912f, + 0.935184f, 0.935455f, 0.935726f, 0.935996f, 0.936266f, 0.936535f, 0.936803f, 0.937072f, + 0.937339f, 0.937606f, 0.937872f, 0.938138f, 0.938404f, 0.938668f, 0.938932f, 0.939196f, + 0.939459f, 0.939722f, 0.939984f, 0.940245f, 0.940506f, 0.940766f, 0.941026f, 0.941285f, + 0.941544f, 0.941802f, 0.942060f, 0.942317f, 0.942573f, 0.942829f, 0.943084f, 0.943339f, + 0.943593f, 0.943847f, 0.944100f, 0.944353f, 0.944605f, 0.944856f, 0.945107f, 0.945358f, + 0.945607f, 0.945857f, 0.946105f, 0.946353f, 0.946601f, 0.946848f, 0.947094f, 0.947340f, + 0.947586f, 0.947830f, 0.948075f, 0.948318f, 0.948561f, 0.948804f, 0.949046f, 0.949287f, + 0.949528f, 0.949768f, 0.950008f, 0.950247f, 0.950486f, 0.950724f, 0.950962f, 0.951199f, + 0.951435f, 0.951671f, 0.951906f, 0.952141f, 0.952375f, 0.952609f, 0.952842f, 0.953074f, + 0.953306f, 0.953537f, 0.953768f, 0.953998f, 0.954228f, 0.954457f, 0.954686f, 0.954914f, + 0.955141f, 0.955368f, 0.955594f, 0.955820f, 0.956045f, 0.956270f, 0.956494f, 0.956717f, + 0.956940f, 0.957163f, 0.957385f, 0.957606f, 0.957826f, 0.958046f, 0.958266f, 0.958485f, + 0.958703f, 0.958921f, 0.959139f, 0.959355f, 0.959572f, 0.959787f, 0.960002f, 0.960217f, + 0.960431f, 0.960644f, 0.960857f, 0.961069f, 0.961280f, 0.961492f, 0.961702f, 0.961912f, + 0.962121f, 0.962330f, 0.962538f, 0.962746f, 0.962953f, 0.963160f, 0.963366f, 0.963571f, + 0.963776f, 0.963980f, 0.964184f, 0.964387f, 0.964590f, 0.964792f, 0.964993f, 0.965194f, + 0.965394f, 0.965594f, 0.965793f, 0.965992f, 0.966190f, 0.966387f, 0.966584f, 0.966781f, + 0.966976f, 0.967172f, 0.967366f, 0.967560f, 0.967754f, 0.967947f, 0.968139f, 0.968331f, + 0.968522f, 0.968713f, 0.968903f, 0.969092f, 0.969281f, 0.969470f, 0.969657f, 0.969845f, + 0.970031f, 0.970217f, 0.970403f, 0.970588f, 0.970772f, 0.970956f, 0.971139f, 0.971322f, + 0.971504f, 0.971685f, 0.971866f, 0.972047f, 0.972227f, 0.972406f, 0.972584f, 0.972762f, + 0.972940f, 0.973117f, 0.973293f, 0.973469f, 0.973644f, 0.973819f, 0.973993f, 0.974166f, + 0.974339f, 0.974512f, 0.974684f, 0.974855f, 0.975025f, 0.975195f, 0.975365f, 0.975534f, + 0.975702f, 0.975870f, 0.976037f, 0.976204f, 0.976370f, 0.976535f, 0.976700f, 0.976864f, + 0.977028f, 0.977191f, 0.977354f, 0.977516f, 0.977677f, 0.977838f, 0.977998f, 0.978158f, + 0.978317f, 0.978476f, 0.978634f, 0.978791f, 0.978948f, 0.979104f, 0.979260f, 0.979415f, + 0.979570f, 0.979724f, 0.979877f, 0.980030f, 0.980182f, 0.980334f, 0.980485f, 0.980635f, + 0.980785f, 0.980935f, 0.981083f, 0.981232f, 0.981379f, 0.981526f, 0.981673f, 0.981819f, + 0.981964f, 0.982109f, 0.982253f, 0.982396f, 0.982539f, 0.982682f, 0.982824f, 0.982965f, + 0.983105f, 0.983246f, 0.983385f, 0.983524f, 0.983662f, 0.983800f, 0.983937f, 0.984074f, + 0.984210f, 0.984346f, 0.984480f, 0.984615f, 0.984748f, 0.984882f, 0.985014f, 0.985146f, + 0.985278f, 0.985408f, 0.985539f, 0.985668f, 0.985798f, 0.985926f, 0.986054f, 0.986181f, + 0.986308f, 0.986434f, 0.986560f, 0.986685f, 0.986809f, 0.986933f, 0.987057f, 0.987179f, + 0.987301f, 0.987423f, 0.987544f, 0.987664f, 0.987784f, 0.987903f, 0.988022f, 0.988140f, + 0.988258f, 0.988374f, 0.988491f, 0.988607f, 0.988722f, 0.988836f, 0.988950f, 0.989064f, + 0.989177f, 0.989289f, 0.989400f, 0.989511f, 0.989622f, 0.989732f, 0.989841f, 0.989950f, + 0.990058f, 0.990166f, 0.990273f, 0.990379f, 0.990485f, 0.990590f, 0.990695f, 0.990799f, + 0.990903f, 0.991006f, 0.991108f, 0.991210f, 0.991311f, 0.991411f, 0.991511f, 0.991611f, + 0.991710f, 0.991808f, 0.991906f, 0.992003f, 0.992099f, 0.992195f, 0.992291f, 0.992385f, + 0.992480f, 0.992573f, 0.992666f, 0.992759f, 0.992850f, 0.992942f, 0.993032f, 0.993122f, + 0.993212f, 0.993301f, 0.993389f, 0.993477f, 0.993564f, 0.993651f, 0.993737f, 0.993822f, + 0.993907f, 0.993991f, 0.994075f, 0.994158f, 0.994240f, 0.994322f, 0.994404f, 0.994484f, + 0.994565f, 0.994644f, 0.994723f, 0.994802f, 0.994879f, 0.994957f, 0.995033f, 0.995109f, + 0.995185f, 0.995260f, 0.995334f, 0.995408f, 0.995481f, 0.995553f, 0.995625f, 0.995697f, + 0.995767f, 0.995838f, 0.995907f, 0.995976f, 0.996045f, 0.996113f, 0.996180f, 0.996247f, + 0.996313f, 0.996378f, 0.996443f, 0.996507f, 0.996571f, 0.996634f, 0.996697f, 0.996759f, + 0.996820f, 0.996881f, 0.996941f, 0.997001f, 0.997060f, 0.997119f, 0.997176f, 0.997234f, + 0.997290f, 0.997347f, 0.997402f, 0.997457f, 0.997511f, 0.997565f, 0.997618f, 0.997671f, + 0.997723f, 0.997774f, 0.997825f, 0.997876f, 0.997925f, 0.997974f, 0.998023f, 0.998071f, + 0.998118f, 0.998165f, 0.998211f, 0.998257f, 0.998302f, 0.998346f, 0.998390f, 0.998433f, + 0.998476f, 0.998518f, 0.998559f, 0.998600f, 0.998640f, 0.998680f, 0.998719f, 0.998758f, + 0.998795f, 0.998833f, 0.998870f, 0.998906f, 0.998941f, 0.998976f, 0.999011f, 0.999044f, + 0.999078f, 0.999110f, 0.999142f, 0.999174f, 0.999205f, 0.999235f, 0.999265f, 0.999294f, + 0.999322f, 0.999350f, 0.999378f, 0.999404f, 0.999431f, 0.999456f, 0.999481f, 0.999506f, + 0.999529f, 0.999553f, 0.999575f, 0.999597f, 0.999619f, 0.999640f, 0.999660f, 0.999680f, + 0.999699f, 0.999717f, 0.999735f, 0.999753f, 0.999769f, 0.999786f, 0.999801f, 0.999816f, + 0.999831f, 0.999844f, 0.999858f, 0.999870f, 0.999882f, 0.999894f, 0.999905f, 0.999915f, + 0.999925f, 0.999934f, 0.999942f, 0.999950f, 0.999958f, 0.999964f, 0.999971f, 0.999976f, + 0.999981f, 0.999986f, 0.999989f, 0.999993f, 0.999995f, 0.999997f, 0.999999f, 1.000000f, + 0.000000f, -0.000767f, -0.001534f, -0.002301f, -0.003068f, -0.003835f, -0.004602f, -0.005369f, + -0.006136f, -0.006903f, -0.007670f, -0.008437f, -0.009204f, -0.009971f, -0.010738f, -0.011505f, + -0.012272f, -0.013038f, -0.013805f, -0.014572f, -0.015339f, -0.016106f, -0.016873f, -0.017640f, + -0.018407f, -0.019174f, -0.019940f, -0.020707f, -0.021474f, -0.022241f, -0.023008f, -0.023774f, + -0.024541f, -0.025308f, -0.026075f, -0.026841f, -0.027608f, -0.028375f, -0.029142f, -0.029908f, + -0.030675f, -0.031441f, -0.032208f, -0.032975f, -0.033741f, -0.034508f, -0.035274f, -0.036041f, + -0.036807f, -0.037574f, -0.038340f, -0.039107f, -0.039873f, -0.040639f, -0.041406f, -0.042172f, + -0.042938f, -0.043705f, -0.044471f, -0.045237f, -0.046003f, -0.046769f, -0.047535f, -0.048302f, + -0.049068f, -0.049834f, -0.050600f, -0.051366f, -0.052132f, -0.052898f, -0.053664f, -0.054429f, + -0.055195f, -0.055961f, -0.056727f, -0.057493f, -0.058258f, -0.059024f, -0.059790f, -0.060555f, + -0.061321f, -0.062086f, -0.062852f, -0.063617f, -0.064383f, -0.065148f, -0.065913f, -0.066679f, + -0.067444f, -0.068209f, -0.068974f, -0.069739f, -0.070505f, -0.071270f, -0.072035f, -0.072800f, + -0.073565f, -0.074329f, -0.075094f, -0.075859f, -0.076624f, -0.077389f, -0.078153f, -0.078918f, + -0.079682f, -0.080447f, -0.081211f, -0.081976f, -0.082740f, -0.083505f, -0.084269f, -0.085033f, + -0.085797f, -0.086561f, -0.087326f, -0.088090f, -0.088854f, -0.089617f, -0.090381f, -0.091145f, + -0.091909f, -0.092673f, -0.093436f, -0.094200f, -0.094963f, -0.095727f, -0.096490f, -0.097254f, + -0.098017f, -0.098780f, -0.099544f, -0.100307f, -0.101070f, -0.101833f, -0.102596f, -0.103359f, + -0.104122f, -0.104884f, -0.105647f, -0.106410f, -0.107172f, -0.107935f, -0.108697f, -0.109460f, + -0.110222f, -0.110984f, -0.111747f, -0.112509f, -0.113271f, -0.114033f, -0.114795f, -0.115557f, + -0.116319f, -0.117080f, -0.117842f, -0.118604f, -0.119365f, -0.120127f, -0.120888f, -0.121649f, + -0.122411f, -0.123172f, -0.123933f, -0.124694f, -0.125455f, -0.126216f, -0.126977f, -0.127737f, + -0.128498f, -0.129259f, -0.130019f, -0.130780f, -0.131540f, -0.132300f, -0.133061f, -0.133821f, + -0.134581f, -0.135341f, -0.136101f, -0.136860f, -0.137620f, -0.138380f, -0.139139f, -0.139899f, + -0.140658f, -0.141418f, -0.142177f, -0.142936f, -0.143695f, -0.144454f, -0.145213f, -0.145972f, + -0.146730f, -0.147489f, -0.148248f, -0.149006f, -0.149765f, -0.150523f, -0.151281f, -0.152039f, + -0.152797f, -0.153555f, -0.154313f, -0.155071f, -0.155828f, -0.156586f, -0.157343f, -0.158101f, + -0.158858f, -0.159615f, -0.160372f, -0.161129f, -0.161886f, -0.162643f, -0.163400f, -0.164157f, + -0.164913f, -0.165670f, -0.166426f, -0.167182f, -0.167938f, -0.168694f, -0.169450f, -0.170206f, + -0.170962f, -0.171718f, -0.172473f, -0.173229f, -0.173984f, -0.174739f, -0.175494f, -0.176249f, + -0.177004f, -0.177759f, -0.178514f, -0.179268f, -0.180023f, -0.180777f, -0.181532f, -0.182286f, + -0.183040f, -0.183794f, -0.184548f, -0.185301f, -0.186055f, -0.186809f, -0.187562f, -0.188315f, + -0.189069f, -0.189822f, -0.190575f, -0.191328f, -0.192080f, -0.192833f, -0.193586f, -0.194338f, + -0.195090f, -0.195843f, -0.196595f, -0.197347f, -0.198098f, -0.198850f, -0.199602f, -0.200353f, + -0.201105f, -0.201856f, -0.202607f, -0.203358f, -0.204109f, -0.204860f, -0.205610f, -0.206361f, + -0.207111f, -0.207862f, -0.208612f, -0.209362f, -0.210112f, -0.210862f, -0.211611f, -0.212361f, + -0.213110f, -0.213860f, -0.214609f, -0.215358f, -0.216107f, -0.216856f, -0.217604f, -0.218353f, + -0.219101f, -0.219850f, -0.220598f, -0.221346f, -0.222094f, -0.222841f, -0.223589f, -0.224337f, + -0.225084f, -0.225831f, -0.226578f, -0.227325f, -0.228072f, -0.228819f, -0.229565f, -0.230312f, + -0.231058f, -0.231804f, -0.232550f, -0.233296f, -0.234042f, -0.234788f, -0.235533f, -0.236278f, + -0.237024f, -0.237769f, -0.238514f, -0.239258f, -0.240003f, -0.240748f, -0.241492f, -0.242236f, + -0.242980f, -0.243724f, -0.244468f, -0.245212f, -0.245955f, -0.246698f, -0.247442f, -0.248185f, + -0.248928f, -0.249670f, -0.250413f, -0.251155f, -0.251898f, -0.252640f, -0.253382f, -0.254124f, + -0.254866f, -0.255607f, -0.256349f, -0.257090f, -0.257831f, -0.258572f, -0.259313f, -0.260054f, + -0.260794f, -0.261534f, -0.262275f, -0.263015f, -0.263755f, -0.264494f, -0.265234f, -0.265973f, + -0.266713f, -0.267452f, -0.268191f, -0.268930f, -0.269668f, -0.270407f, -0.271145f, -0.271883f, + -0.272621f, -0.273359f, -0.274097f, -0.274834f, -0.275572f, -0.276309f, -0.277046f, -0.277783f, + -0.278520f, -0.279256f, -0.279993f, -0.280729f, -0.281465f, -0.282201f, -0.282937f, -0.283672f, + -0.284408f, -0.285143f, -0.285878f, -0.286613f, -0.287347f, -0.288082f, -0.288816f, -0.289551f, + -0.290285f, -0.291019f, -0.291752f, -0.292486f, -0.293219f, -0.293952f, -0.294685f, -0.295418f, + -0.296151f, -0.296883f, -0.297616f, -0.298348f, -0.299080f, -0.299812f, -0.300543f, -0.301275f, + -0.302006f, -0.302737f, -0.303468f, -0.304199f, -0.304929f, -0.305660f, -0.306390f, -0.307120f, + -0.307850f, -0.308579f, -0.309309f, -0.310038f, -0.310767f, -0.311496f, -0.312225f, -0.312953f, + -0.313682f, -0.314410f, -0.315138f, -0.315866f, -0.316593f, -0.317321f, -0.318048f, -0.318775f, + -0.319502f, -0.320229f, -0.320955f, -0.321682f, -0.322408f, -0.323134f, -0.323859f, -0.324585f, + -0.325310f, -0.326035f, -0.326760f, -0.327485f, -0.328210f, -0.328934f, -0.329658f, -0.330382f, + -0.331106f, -0.331830f, -0.332553f, -0.333277f, -0.334000f, -0.334722f, -0.335445f, -0.336168f, + -0.336890f, -0.337612f, -0.338334f, -0.339055f, -0.339777f, -0.340498f, -0.341219f, -0.341940f, + -0.342661f, -0.343381f, -0.344101f, -0.344821f, -0.345541f, -0.346261f, -0.346980f, -0.347700f, + -0.348419f, -0.349138f, -0.349856f, -0.350575f, -0.351293f, -0.352011f, -0.352729f, -0.353446f, + -0.354164f, -0.354881f, -0.355598f, -0.356314f, -0.357031f, -0.357747f, -0.358463f, -0.359179f, + -0.359895f, -0.360611f, -0.361326f, -0.362041f, -0.362756f, -0.363470f, -0.364185f, -0.364899f, + -0.365613f, -0.366327f, -0.367040f, -0.367754f, -0.368467f, -0.369180f, -0.369892f, -0.370605f, + -0.371317f, -0.372029f, -0.372741f, -0.373453f, -0.374164f, -0.374875f, -0.375586f, -0.376297f, + -0.377007f, -0.377718f, -0.378428f, -0.379138f, -0.379847f, -0.380557f, -0.381266f, -0.381975f, + -0.382683f, -0.383392f, -0.384100f, -0.384808f, -0.385516f, -0.386224f, -0.386931f, -0.387638f, + -0.388345f, -0.389052f, -0.389758f, -0.390464f, -0.391170f, -0.391876f, -0.392582f, -0.393287f, + -0.393992f, -0.394697f, -0.395401f, -0.396106f, -0.396810f, -0.397514f, -0.398218f, -0.398921f, + -0.399624f, -0.400327f, -0.401030f, -0.401732f, -0.402435f, -0.403137f, -0.403838f, -0.404540f, + -0.405241f, -0.405942f, -0.406643f, -0.407344f, -0.408044f, -0.408744f, -0.409444f, -0.410144f, + -0.410843f, -0.411542f, -0.412241f, -0.412940f, -0.413638f, -0.414337f, -0.415034f, -0.415732f, + -0.416430f, -0.417127f, -0.417824f, -0.418520f, -0.419217f, -0.419913f, -0.420609f, -0.421305f, + -0.422000f, -0.422695f, -0.423390f, -0.424085f, -0.424780f, -0.425474f, -0.426168f, -0.426862f, + -0.427555f, -0.428248f, -0.428941f, -0.429634f, -0.430326f, -0.431019f, -0.431711f, -0.432402f, + -0.433094f, -0.433785f, -0.434476f, -0.435167f, -0.435857f, -0.436547f, -0.437237f, -0.437927f, + -0.438616f, -0.439305f, -0.439994f, -0.440683f, -0.441371f, -0.442059f, -0.442747f, -0.443435f, + -0.444122f, -0.444809f, -0.445496f, -0.446183f, -0.446869f, -0.447555f, -0.448241f, -0.448926f, + -0.449611f, -0.450296f, -0.450981f, -0.451665f, -0.452350f, -0.453033f, -0.453717f, -0.454400f, + -0.455084f, -0.455766f, -0.456449f, -0.457131f, -0.457813f, -0.458495f, -0.459177f, -0.459858f, + -0.460539f, -0.461219f, -0.461900f, -0.462580f, -0.463260f, -0.463939f, -0.464619f, -0.465298f, + -0.465977f, -0.466655f, -0.467333f, -0.468011f, -0.468689f, -0.469366f, -0.470043f, -0.470720f, + -0.471397f, -0.472073f, -0.472749f, -0.473425f, -0.474100f, -0.474775f, -0.475450f, -0.476125f, + -0.476799f, -0.477473f, -0.478147f, -0.478821f, -0.479494f, -0.480167f, -0.480839f, -0.481512f, + -0.482184f, -0.482856f, -0.483527f, -0.484198f, -0.484869f, -0.485540f, -0.486210f, -0.486880f, + -0.487550f, -0.488220f, -0.488889f, -0.489558f, -0.490226f, -0.490895f, -0.491563f, -0.492231f, + -0.492898f, -0.493565f, -0.494232f, -0.494899f, -0.495565f, -0.496231f, -0.496897f, -0.497562f, + -0.498228f, -0.498893f, -0.499557f, -0.500221f, -0.500885f, -0.501549f, -0.502212f, -0.502876f, + -0.503538f, -0.504201f, -0.504863f, -0.505525f, -0.506187f, -0.506848f, -0.507509f, -0.508170f, + -0.508830f, -0.509490f, -0.510150f, -0.510810f, -0.511469f, -0.512128f, -0.512786f, -0.513445f, + -0.514103f, -0.514760f, -0.515418f, -0.516075f, -0.516732f, -0.517388f, -0.518045f, -0.518700f, + -0.519356f, -0.520011f, -0.520666f, -0.521321f, -0.521975f, -0.522629f, -0.523283f, -0.523937f, + -0.524590f, -0.525243f, -0.525895f, -0.526547f, -0.527199f, -0.527851f, -0.528502f, -0.529153f, + -0.529804f, -0.530454f, -0.531104f, -0.531754f, -0.532403f, -0.533052f, -0.533701f, -0.534349f, + -0.534998f, -0.535645f, -0.536293f, -0.536940f, -0.537587f, -0.538234f, -0.538880f, -0.539526f, + -0.540171f, -0.540817f, -0.541462f, -0.542106f, -0.542751f, -0.543395f, -0.544039f, -0.544682f, + -0.545325f, -0.545968f, -0.546610f, -0.547252f, -0.547894f, -0.548536f, -0.549177f, -0.549818f, + -0.550458f, -0.551098f, -0.551738f, -0.552378f, -0.553017f, -0.553656f, -0.554294f, -0.554932f, + -0.555570f, -0.556208f, -0.556845f, -0.557482f, -0.558119f, -0.558755f, -0.559391f, -0.560026f, + -0.560662f, -0.561297f, -0.561931f, -0.562565f, -0.563199f, -0.563833f, -0.564466f, -0.565099f, + -0.565732f, -0.566364f, -0.566996f, -0.567628f, -0.568259f, -0.568890f, -0.569521f, -0.570151f, + -0.570781f, -0.571410f, -0.572040f, -0.572669f, -0.573297f, -0.573925f, -0.574553f, -0.575181f, + -0.575808f, -0.576435f, -0.577062f, -0.577688f, -0.578314f, -0.578939f, -0.579565f, -0.580189f, + -0.580814f, -0.581438f, -0.582062f, -0.582685f, -0.583309f, -0.583931f, -0.584554f, -0.585176f, + -0.585798f, -0.586419f, -0.587040f, -0.587661f, -0.588282f, -0.588902f, -0.589521f, -0.590141f, + -0.590760f, -0.591378f, -0.591997f, -0.592615f, -0.593232f, -0.593850f, -0.594467f, -0.595083f, + -0.595699f, -0.596315f, -0.596931f, -0.597546f, -0.598161f, -0.598775f, -0.599389f, -0.600003f, + -0.600616f, -0.601230f, -0.601842f, -0.602455f, -0.603067f, -0.603678f, -0.604290f, -0.604900f, + -0.605511f, -0.606121f, -0.606731f, -0.607341f, -0.607950f, -0.608559f, -0.609167f, -0.609775f, + -0.610383f, -0.610990f, -0.611597f, -0.612204f, -0.612810f, -0.613416f, -0.614022f, -0.614627f, + -0.615232f, -0.615836f, -0.616440f, -0.617044f, -0.617647f, -0.618250f, -0.618853f, -0.619455f, + -0.620057f, -0.620659f, -0.621260f, -0.621861f, -0.622461f, -0.623061f, -0.623661f, -0.624260f, + -0.624860f, -0.625458f, -0.626056f, -0.626654f, -0.627252f, -0.627849f, -0.628446f, -0.629042f, + -0.629638f, -0.630234f, -0.630829f, -0.631424f, -0.632019f, -0.632613f, -0.633207f, -0.633800f, + -0.634393f, -0.634986f, -0.635578f, -0.636170f, -0.636762f, -0.637353f, -0.637944f, -0.638534f, + -0.639124f, -0.639714f, -0.640303f, -0.640892f, -0.641481f, -0.642069f, -0.642657f, -0.643245f, + -0.643832f, -0.644418f, -0.645005f, -0.645590f, -0.646176f, -0.646761f, -0.647346f, -0.647930f, + -0.648514f, -0.649098f, -0.649681f, -0.650264f, -0.650847f, -0.651429f, -0.652011f, -0.652592f, + -0.653173f, -0.653753f, -0.654334f, -0.654913f, -0.655493f, -0.656072f, -0.656651f, -0.657229f, + -0.657807f, -0.658384f, -0.658961f, -0.659538f, -0.660114f, -0.660690f, -0.661266f, -0.661841f, + -0.662416f, -0.662990f, -0.663564f, -0.664138f, -0.664711f, -0.665284f, -0.665856f, -0.666428f, + -0.667000f, -0.667571f, -0.668142f, -0.668712f, -0.669283f, -0.669852f, -0.670422f, -0.670990f, + -0.671559f, -0.672127f, -0.672695f, -0.673262f, -0.673829f, -0.674396f, -0.674962f, -0.675527f, + -0.676093f, -0.676658f, -0.677222f, -0.677786f, -0.678350f, -0.678913f, -0.679476f, -0.680039f, + -0.680601f, -0.681163f, -0.681724f, -0.682285f, -0.682846f, -0.683406f, -0.683965f, -0.684525f, + -0.685084f, -0.685642f, -0.686200f, -0.686758f, -0.687315f, -0.687872f, -0.688429f, -0.688985f, + -0.689541f, -0.690096f, -0.690651f, -0.691205f, -0.691759f, -0.692313f, -0.692866f, -0.693419f, + -0.693971f, -0.694524f, -0.695075f, -0.695626f, -0.696177f, -0.696728f, -0.697277f, -0.697827f, + -0.698376f, -0.698925f, -0.699473f, -0.700021f, -0.700569f, -0.701116f, -0.701663f, -0.702209f, + -0.702755f, -0.703300f, -0.703845f, -0.704390f, -0.704934f, -0.705478f, -0.706021f, -0.706564f, + -0.707107f, -0.707649f, -0.708191f, -0.708732f, -0.709273f, -0.709813f, -0.710353f, -0.710893f, + -0.711432f, -0.711971f, -0.712509f, -0.713047f, -0.713585f, -0.714122f, -0.714659f, -0.715195f, + -0.715731f, -0.716266f, -0.716801f, -0.717336f, -0.717870f, -0.718404f, -0.718937f, -0.719470f, + -0.720003f, -0.720535f, -0.721066f, -0.721597f, -0.722128f, -0.722659f, -0.723188f, -0.723718f, + -0.724247f, -0.724776f, -0.725304f, -0.725832f, -0.726359f, -0.726886f, -0.727413f, -0.727939f, + -0.728464f, -0.728990f, -0.729514f, -0.730039f, -0.730563f, -0.731086f, -0.731609f, -0.732132f, + -0.732654f, -0.733176f, -0.733697f, -0.734218f, -0.734739f, -0.735259f, -0.735779f, -0.736298f, + -0.736817f, -0.737335f, -0.737853f, -0.738370f, -0.738887f, -0.739404f, -0.739920f, -0.740436f, + -0.740951f, -0.741466f, -0.741980f, -0.742494f, -0.743008f, -0.743521f, -0.744034f, -0.744546f, + -0.745058f, -0.745569f, -0.746080f, -0.746591f, -0.747101f, -0.747610f, -0.748119f, -0.748628f, + -0.749136f, -0.749644f, -0.750152f, -0.750659f, -0.751165f, -0.751671f, -0.752177f, -0.752682f, + -0.753187f, -0.753691f, -0.754195f, -0.754698f, -0.755201f, -0.755704f, -0.756206f, -0.756708f, + -0.757209f, -0.757710f, -0.758210f, -0.758710f, -0.759209f, -0.759708f, -0.760207f, -0.760705f, + -0.761202f, -0.761700f, -0.762196f, -0.762693f, -0.763188f, -0.763684f, -0.764179f, -0.764673f, + -0.765167f, -0.765661f, -0.766154f, -0.766647f, -0.767139f, -0.767631f, -0.768122f, -0.768613f, + -0.769103f, -0.769593f, -0.770083f, -0.770572f, -0.771061f, -0.771549f, -0.772036f, -0.772524f, + -0.773010f, -0.773497f, -0.773983f, -0.774468f, -0.774953f, -0.775438f, -0.775922f, -0.776405f, + -0.776888f, -0.777371f, -0.777853f, -0.778335f, -0.778817f, -0.779297f, -0.779778f, -0.780258f, + -0.780737f, -0.781216f, -0.781695f, -0.782173f, -0.782651f, -0.783128f, -0.783605f, -0.784081f, + -0.784557f, -0.785032f, -0.785507f, -0.785981f, -0.786455f, -0.786929f, -0.787402f, -0.787874f, + -0.788346f, -0.788818f, -0.789289f, -0.789760f, -0.790230f, -0.790700f, -0.791169f, -0.791638f, + -0.792107f, -0.792575f, -0.793042f, -0.793509f, -0.793975f, -0.794442f, -0.794907f, -0.795372f, + -0.795837f, -0.796301f, -0.796765f, -0.797228f, -0.797691f, -0.798153f, -0.798615f, -0.799076f, + -0.799537f, -0.799998f, -0.800458f, -0.800917f, -0.801376f, -0.801835f, -0.802293f, -0.802750f, + -0.803208f, -0.803664f, -0.804120f, -0.804576f, -0.805031f, -0.805486f, -0.805940f, -0.806394f, + -0.806848f, -0.807300f, -0.807753f, -0.808205f, -0.808656f, -0.809107f, -0.809558f, -0.810008f, + -0.810457f, -0.810906f, -0.811355f, -0.811803f, -0.812251f, -0.812698f, -0.813144f, -0.813591f, + -0.814036f, -0.814482f, -0.814926f, -0.815371f, -0.815814f, -0.816258f, -0.816701f, -0.817143f, + -0.817585f, -0.818026f, -0.818467f, -0.818908f, -0.819348f, -0.819787f, -0.820226f, -0.820664f, + -0.821102f, -0.821540f, -0.821977f, -0.822414f, -0.822850f, -0.823285f, -0.823721f, -0.824155f, + -0.824589f, -0.825023f, -0.825456f, -0.825889f, -0.826321f, -0.826753f, -0.827184f, -0.827615f, + -0.828045f, -0.828475f, -0.828904f, -0.829333f, -0.829761f, -0.830189f, -0.830616f, -0.831043f, + -0.831470f, -0.831895f, -0.832321f, -0.832746f, -0.833170f, -0.833594f, -0.834018f, -0.834440f, + -0.834863f, -0.835285f, -0.835706f, -0.836127f, -0.836548f, -0.836968f, -0.837387f, -0.837806f, + -0.838225f, -0.838643f, -0.839060f, -0.839477f, -0.839894f, -0.840310f, -0.840725f, -0.841140f, + -0.841555f, -0.841969f, -0.842383f, -0.842796f, -0.843208f, -0.843620f, -0.844032f, -0.844443f, + -0.844854f, -0.845264f, -0.845673f, -0.846082f, -0.846491f, -0.846899f, -0.847307f, -0.847714f, + -0.848120f, -0.848526f, -0.848932f, -0.849337f, -0.849742f, -0.850146f, -0.850549f, -0.850953f, + -0.851355f, -0.851757f, -0.852159f, -0.852560f, -0.852961f, -0.853361f, -0.853760f, -0.854159f, + -0.854558f, -0.854956f, -0.855354f, -0.855751f, -0.856147f, -0.856543f, -0.856939f, -0.857334f, + -0.857729f, -0.858123f, -0.858516f, -0.858909f, -0.859302f, -0.859694f, -0.860085f, -0.860476f, + -0.860867f, -0.861257f, -0.861646f, -0.862035f, -0.862424f, -0.862812f, -0.863199f, -0.863586f, + -0.863973f, -0.864359f, -0.864744f, -0.865129f, -0.865514f, -0.865898f, -0.866281f, -0.866664f, + -0.867046f, -0.867428f, -0.867809f, -0.868190f, -0.868571f, -0.868951f, -0.869330f, -0.869709f, + -0.870087f, -0.870465f, -0.870842f, -0.871219f, -0.871595f, -0.871971f, -0.872346f, -0.872721f, + -0.873095f, -0.873469f, -0.873842f, -0.874215f, -0.874587f, -0.874958f, -0.875329f, -0.875700f, + -0.876070f, -0.876440f, -0.876809f, -0.877177f, -0.877545f, -0.877913f, -0.878280f, -0.878646f, + -0.879012f, -0.879378f, -0.879743f, -0.880107f, -0.880471f, -0.880834f, -0.881197f, -0.881559f, + -0.881921f, -0.882283f, -0.882643f, -0.883004f, -0.883363f, -0.883723f, -0.884081f, -0.884439f, + -0.884797f, -0.885154f, -0.885511f, -0.885867f, -0.886223f, -0.886578f, -0.886932f, -0.887286f, + -0.887640f, -0.887993f, -0.888345f, -0.888697f, -0.889048f, -0.889399f, -0.889750f, -0.890099f, + -0.890449f, -0.890797f, -0.891146f, -0.891493f, -0.891841f, -0.892187f, -0.892534f, -0.892879f, + -0.893224f, -0.893569f, -0.893913f, -0.894256f, -0.894599f, -0.894942f, -0.895284f, -0.895625f, + -0.895966f, -0.896307f, -0.896646f, -0.896986f, -0.897325f, -0.897663f, -0.898001f, -0.898338f, + -0.898674f, -0.899011f, -0.899346f, -0.899681f, -0.900016f, -0.900350f, -0.900683f, -0.901016f, + -0.901349f, -0.901681f, -0.902012f, -0.902343f, -0.902673f, -0.903003f, -0.903332f, -0.903661f, + -0.903989f, -0.904317f, -0.904644f, -0.904971f, -0.905297f, -0.905622f, -0.905947f, -0.906272f, + -0.906596f, -0.906919f, -0.907242f, -0.907564f, -0.907886f, -0.908207f, -0.908528f, -0.908848f, + -0.909168f, -0.909487f, -0.909806f, -0.910124f, -0.910441f, -0.910758f, -0.911075f, -0.911391f, + -0.911706f, -0.912021f, -0.912335f, -0.912649f, -0.912962f, -0.913275f, -0.913587f, -0.913899f, + -0.914210f, -0.914520f, -0.914830f, -0.915140f, -0.915449f, -0.915757f, -0.916065f, -0.916372f, + -0.916679f, -0.916985f, -0.917291f, -0.917596f, -0.917901f, -0.918205f, -0.918508f, -0.918811f, + -0.919114f, -0.919416f, -0.919717f, -0.920018f, -0.920318f, -0.920618f, -0.920917f, -0.921216f, + -0.921514f, -0.921812f, -0.922109f, -0.922405f, -0.922701f, -0.922997f, -0.923291f, -0.923586f, + -0.923880f, -0.924173f, -0.924465f, -0.924758f, -0.925049f, -0.925340f, -0.925631f, -0.925921f, + -0.926210f, -0.926499f, -0.926787f, -0.927075f, -0.927363f, -0.927649f, -0.927935f, -0.928221f, + -0.928506f, -0.928791f, -0.929075f, -0.929358f, -0.929641f, -0.929923f, -0.930205f, -0.930486f, + -0.930767f, -0.931047f, -0.931327f, -0.931606f, -0.931884f, -0.932162f, -0.932440f, -0.932716f, + -0.932993f, -0.933269f, -0.933544f, -0.933818f, -0.934093f, -0.934366f, -0.934639f, -0.934912f, + -0.935184f, -0.935455f, -0.935726f, -0.935996f, -0.936266f, -0.936535f, -0.936803f, -0.937072f, + -0.937339f, -0.937606f, -0.937872f, -0.938138f, -0.938404f, -0.938668f, -0.938932f, -0.939196f, + -0.939459f, -0.939722f, -0.939984f, -0.940245f, -0.940506f, -0.940766f, -0.941026f, -0.941285f, + -0.941544f, -0.941802f, -0.942060f, -0.942317f, -0.942573f, -0.942829f, -0.943084f, -0.943339f, + -0.943593f, -0.943847f, -0.944100f, -0.944353f, -0.944605f, -0.944856f, -0.945107f, -0.945358f, + -0.945607f, -0.945857f, -0.946105f, -0.946353f, -0.946601f, -0.946848f, -0.947094f, -0.947340f, + -0.947586f, -0.947830f, -0.948075f, -0.948318f, -0.948561f, -0.948804f, -0.949046f, -0.949287f, + -0.949528f, -0.949768f, -0.950008f, -0.950247f, -0.950486f, -0.950724f, -0.950962f, -0.951199f, + -0.951435f, -0.951671f, -0.951906f, -0.952141f, -0.952375f, -0.952609f, -0.952842f, -0.953074f, + -0.953306f, -0.953537f, -0.953768f, -0.953998f, -0.954228f, -0.954457f, -0.954686f, -0.954914f, + -0.955141f, -0.955368f, -0.955594f, -0.955820f, -0.956045f, -0.956270f, -0.956494f, -0.956717f, + -0.956940f, -0.957163f, -0.957385f, -0.957606f, -0.957826f, -0.958046f, -0.958266f, -0.958485f, + -0.958703f, -0.958921f, -0.959139f, -0.959355f, -0.959572f, -0.959787f, -0.960002f, -0.960217f, + -0.960431f, -0.960644f, -0.960857f, -0.961069f, -0.961280f, -0.961492f, -0.961702f, -0.961912f, + -0.962121f, -0.962330f, -0.962538f, -0.962746f, -0.962953f, -0.963160f, -0.963366f, -0.963571f, + -0.963776f, -0.963980f, -0.964184f, -0.964387f, -0.964590f, -0.964792f, -0.964993f, -0.965194f, + -0.965394f, -0.965594f, -0.965793f, -0.965992f, -0.966190f, -0.966387f, -0.966584f, -0.966781f, + -0.966976f, -0.967172f, -0.967366f, -0.967560f, -0.967754f, -0.967947f, -0.968139f, -0.968331f, + -0.968522f, -0.968713f, -0.968903f, -0.969092f, -0.969281f, -0.969470f, -0.969657f, -0.969845f, + -0.970031f, -0.970217f, -0.970403f, -0.970588f, -0.970772f, -0.970956f, -0.971139f, -0.971322f, + -0.971504f, -0.971685f, -0.971866f, -0.972047f, -0.972227f, -0.972406f, -0.972584f, -0.972762f, + -0.972940f, -0.973117f, -0.973293f, -0.973469f, -0.973644f, -0.973819f, -0.973993f, -0.974166f, + -0.974339f, -0.974512f, -0.974684f, -0.974855f, -0.975025f, -0.975195f, -0.975365f, -0.975534f, + -0.975702f, -0.975870f, -0.976037f, -0.976204f, -0.976370f, -0.976535f, -0.976700f, -0.976864f, + -0.977028f, -0.977191f, -0.977354f, -0.977516f, -0.977677f, -0.977838f, -0.977998f, -0.978158f, + -0.978317f, -0.978476f, -0.978634f, -0.978791f, -0.978948f, -0.979104f, -0.979260f, -0.979415f, + -0.979570f, -0.979724f, -0.979877f, -0.980030f, -0.980182f, -0.980334f, -0.980485f, -0.980635f, + -0.980785f, -0.980935f, -0.981083f, -0.981232f, -0.981379f, -0.981526f, -0.981673f, -0.981819f, + -0.981964f, -0.982109f, -0.982253f, -0.982396f, -0.982539f, -0.982682f, -0.982824f, -0.982965f, + -0.983105f, -0.983246f, -0.983385f, -0.983524f, -0.983662f, -0.983800f, -0.983937f, -0.984074f, + -0.984210f, -0.984346f, -0.984480f, -0.984615f, -0.984748f, -0.984882f, -0.985014f, -0.985146f, + -0.985278f, -0.985408f, -0.985539f, -0.985668f, -0.985798f, -0.985926f, -0.986054f, -0.986181f, + -0.986308f, -0.986434f, -0.986560f, -0.986685f, -0.986809f, -0.986933f, -0.987057f, -0.987179f, + -0.987301f, -0.987423f, -0.987544f, -0.987664f, -0.987784f, -0.987903f, -0.988022f, -0.988140f, + -0.988258f, -0.988374f, -0.988491f, -0.988607f, -0.988722f, -0.988836f, -0.988950f, -0.989064f, + -0.989177f, -0.989289f, -0.989400f, -0.989511f, -0.989622f, -0.989732f, -0.989841f, -0.989950f, + -0.990058f, -0.990166f, -0.990273f, -0.990379f, -0.990485f, -0.990590f, -0.990695f, -0.990799f, + -0.990903f, -0.991006f, -0.991108f, -0.991210f, -0.991311f, -0.991411f, -0.991511f, -0.991611f, + -0.991710f, -0.991808f, -0.991906f, -0.992003f, -0.992099f, -0.992195f, -0.992291f, -0.992385f, + -0.992480f, -0.992573f, -0.992666f, -0.992759f, -0.992850f, -0.992942f, -0.993032f, -0.993122f, + -0.993212f, -0.993301f, -0.993389f, -0.993477f, -0.993564f, -0.993651f, -0.993737f, -0.993822f, + -0.993907f, -0.993991f, -0.994075f, -0.994158f, -0.994240f, -0.994322f, -0.994404f, -0.994484f, + -0.994565f, -0.994644f, -0.994723f, -0.994802f, -0.994879f, -0.994957f, -0.995033f, -0.995109f, + -0.995185f, -0.995260f, -0.995334f, -0.995408f, -0.995481f, -0.995553f, -0.995625f, -0.995697f, + -0.995767f, -0.995838f, -0.995907f, -0.995976f, -0.996045f, -0.996113f, -0.996180f, -0.996247f, + -0.996313f, -0.996378f, -0.996443f, -0.996507f, -0.996571f, -0.996634f, -0.996697f, -0.996759f, + -0.996820f, -0.996881f, -0.996941f, -0.997001f, -0.997060f, -0.997119f, -0.997176f, -0.997234f, + -0.997290f, -0.997347f, -0.997402f, -0.997457f, -0.997511f, -0.997565f, -0.997618f, -0.997671f, + -0.997723f, -0.997774f, -0.997825f, -0.997876f, -0.997925f, -0.997974f, -0.998023f, -0.998071f, + -0.998118f, -0.998165f, -0.998211f, -0.998257f, -0.998302f, -0.998346f, -0.998390f, -0.998433f, + -0.998476f, -0.998518f, -0.998559f, -0.998600f, -0.998640f, -0.998680f, -0.998719f, -0.998758f, + -0.998795f, -0.998833f, -0.998870f, -0.998906f, -0.998941f, -0.998976f, -0.999011f, -0.999044f, + -0.999078f, -0.999110f, -0.999142f, -0.999174f, -0.999205f, -0.999235f, -0.999265f, -0.999294f, + -0.999322f, -0.999350f, -0.999378f, -0.999404f, -0.999431f, -0.999456f, -0.999481f, -0.999506f, + -0.999529f, -0.999553f, -0.999575f, -0.999597f, -0.999619f, -0.999640f, -0.999660f, -0.999680f, + -0.999699f, -0.999717f, -0.999735f, -0.999753f, -0.999769f, -0.999786f, -0.999801f, -0.999816f, + -0.999831f, -0.999844f, -0.999858f, -0.999870f, -0.999882f, -0.999894f, -0.999905f, -0.999915f, + -0.999925f, -0.999934f, -0.999942f, -0.999950f, -0.999958f, -0.999964f, -0.999971f, -0.999976f, + -0.999981f, -0.999986f, -0.999989f, -0.999993f, -0.999995f, -0.999997f, -0.999999f, -1.000000 +}; + +static const float sinTable16384[8192] = { + 0.000000f, 0.000383f, 0.000767f, 0.001150f, 0.001534f, 0.001917f, 0.002301f, 0.002684f, + 0.003068f, 0.003451f, 0.003835f, 0.004218f, 0.004602f, 0.004985f, 0.005369f, 0.005752f, + 0.006136f, 0.006519f, 0.006903f, 0.007286f, 0.007670f, 0.008053f, 0.008437f, 0.008820f, + 0.009204f, 0.009587f, 0.009971f, 0.010354f, 0.010738f, 0.011121f, 0.011505f, 0.011888f, + 0.012272f, 0.012655f, 0.013038f, 0.013422f, 0.013805f, 0.014189f, 0.014572f, 0.014956f, + 0.015339f, 0.015723f, 0.016106f, 0.016490f, 0.016873f, 0.017256f, 0.017640f, 0.018023f, + 0.018407f, 0.018790f, 0.019174f, 0.019557f, 0.019940f, 0.020324f, 0.020707f, 0.021091f, + 0.021474f, 0.021857f, 0.022241f, 0.022624f, 0.023008f, 0.023391f, 0.023774f, 0.024158f, + 0.024541f, 0.024925f, 0.025308f, 0.025691f, 0.026075f, 0.026458f, 0.026841f, 0.027225f, + 0.027608f, 0.027991f, 0.028375f, 0.028758f, 0.029142f, 0.029525f, 0.029908f, 0.030291f, + 0.030675f, 0.031058f, 0.031441f, 0.031825f, 0.032208f, 0.032591f, 0.032975f, 0.033358f, + 0.033741f, 0.034124f, 0.034508f, 0.034891f, 0.035274f, 0.035657f, 0.036041f, 0.036424f, + 0.036807f, 0.037190f, 0.037574f, 0.037957f, 0.038340f, 0.038723f, 0.039107f, 0.039490f, + 0.039873f, 0.040256f, 0.040639f, 0.041022f, 0.041406f, 0.041789f, 0.042172f, 0.042555f, + 0.042938f, 0.043321f, 0.043705f, 0.044088f, 0.044471f, 0.044854f, 0.045237f, 0.045620f, + 0.046003f, 0.046386f, 0.046769f, 0.047152f, 0.047535f, 0.047919f, 0.048302f, 0.048685f, + 0.049068f, 0.049451f, 0.049834f, 0.050217f, 0.050600f, 0.050983f, 0.051366f, 0.051749f, + 0.052132f, 0.052515f, 0.052898f, 0.053281f, 0.053664f, 0.054046f, 0.054429f, 0.054812f, + 0.055195f, 0.055578f, 0.055961f, 0.056344f, 0.056727f, 0.057110f, 0.057493f, 0.057875f, + 0.058258f, 0.058641f, 0.059024f, 0.059407f, 0.059790f, 0.060172f, 0.060555f, 0.060938f, + 0.061321f, 0.061704f, 0.062086f, 0.062469f, 0.062852f, 0.063234f, 0.063617f, 0.064000f, + 0.064383f, 0.064765f, 0.065148f, 0.065531f, 0.065913f, 0.066296f, 0.066679f, 0.067061f, + 0.067444f, 0.067827f, 0.068209f, 0.068592f, 0.068974f, 0.069357f, 0.069739f, 0.070122f, + 0.070505f, 0.070887f, 0.071270f, 0.071652f, 0.072035f, 0.072417f, 0.072800f, 0.073182f, + 0.073565f, 0.073947f, 0.074329f, 0.074712f, 0.075094f, 0.075477f, 0.075859f, 0.076241f, + 0.076624f, 0.077006f, 0.077389f, 0.077771f, 0.078153f, 0.078536f, 0.078918f, 0.079300f, + 0.079682f, 0.080065f, 0.080447f, 0.080829f, 0.081211f, 0.081594f, 0.081976f, 0.082358f, + 0.082740f, 0.083122f, 0.083505f, 0.083887f, 0.084269f, 0.084651f, 0.085033f, 0.085415f, + 0.085797f, 0.086179f, 0.086561f, 0.086943f, 0.087326f, 0.087708f, 0.088090f, 0.088472f, + 0.088854f, 0.089236f, 0.089617f, 0.089999f, 0.090381f, 0.090763f, 0.091145f, 0.091527f, + 0.091909f, 0.092291f, 0.092673f, 0.093055f, 0.093436f, 0.093818f, 0.094200f, 0.094582f, + 0.094963f, 0.095345f, 0.095727f, 0.096109f, 0.096490f, 0.096872f, 0.097254f, 0.097635f, + 0.098017f, 0.098399f, 0.098780f, 0.099162f, 0.099544f, 0.099925f, 0.100307f, 0.100688f, + 0.101070f, 0.101451f, 0.101833f, 0.102214f, 0.102596f, 0.102977f, 0.103359f, 0.103740f, + 0.104122f, 0.104503f, 0.104884f, 0.105266f, 0.105647f, 0.106028f, 0.106410f, 0.106791f, + 0.107172f, 0.107554f, 0.107935f, 0.108316f, 0.108697f, 0.109079f, 0.109460f, 0.109841f, + 0.110222f, 0.110603f, 0.110984f, 0.111366f, 0.111747f, 0.112128f, 0.112509f, 0.112890f, + 0.113271f, 0.113652f, 0.114033f, 0.114414f, 0.114795f, 0.115176f, 0.115557f, 0.115938f, + 0.116319f, 0.116700f, 0.117080f, 0.117461f, 0.117842f, 0.118223f, 0.118604f, 0.118984f, + 0.119365f, 0.119746f, 0.120127f, 0.120507f, 0.120888f, 0.121269f, 0.121649f, 0.122030f, + 0.122411f, 0.122791f, 0.123172f, 0.123552f, 0.123933f, 0.124314f, 0.124694f, 0.125075f, + 0.125455f, 0.125835f, 0.126216f, 0.126596f, 0.126977f, 0.127357f, 0.127737f, 0.128118f, + 0.128498f, 0.128878f, 0.129259f, 0.129639f, 0.130019f, 0.130399f, 0.130780f, 0.131160f, + 0.131540f, 0.131920f, 0.132300f, 0.132680f, 0.133061f, 0.133441f, 0.133821f, 0.134201f, + 0.134581f, 0.134961f, 0.135341f, 0.135721f, 0.136101f, 0.136480f, 0.136860f, 0.137240f, + 0.137620f, 0.138000f, 0.138380f, 0.138760f, 0.139139f, 0.139519f, 0.139899f, 0.140279f, + 0.140658f, 0.141038f, 0.141418f, 0.141797f, 0.142177f, 0.142556f, 0.142936f, 0.143316f, + 0.143695f, 0.144075f, 0.144454f, 0.144833f, 0.145213f, 0.145592f, 0.145972f, 0.146351f, + 0.146730f, 0.147110f, 0.147489f, 0.147868f, 0.148248f, 0.148627f, 0.149006f, 0.149385f, + 0.149765f, 0.150144f, 0.150523f, 0.150902f, 0.151281f, 0.151660f, 0.152039f, 0.152418f, + 0.152797f, 0.153176f, 0.153555f, 0.153934f, 0.154313f, 0.154692f, 0.155071f, 0.155450f, + 0.155828f, 0.156207f, 0.156586f, 0.156965f, 0.157343f, 0.157722f, 0.158101f, 0.158480f, + 0.158858f, 0.159237f, 0.159615f, 0.159994f, 0.160372f, 0.160751f, 0.161129f, 0.161508f, + 0.161886f, 0.162265f, 0.162643f, 0.163022f, 0.163400f, 0.163778f, 0.164157f, 0.164535f, + 0.164913f, 0.165291f, 0.165670f, 0.166048f, 0.166426f, 0.166804f, 0.167182f, 0.167560f, + 0.167938f, 0.168316f, 0.168694f, 0.169072f, 0.169450f, 0.169828f, 0.170206f, 0.170584f, + 0.170962f, 0.171340f, 0.171718f, 0.172095f, 0.172473f, 0.172851f, 0.173229f, 0.173606f, + 0.173984f, 0.174362f, 0.174739f, 0.175117f, 0.175494f, 0.175872f, 0.176249f, 0.176627f, + 0.177004f, 0.177382f, 0.177759f, 0.178136f, 0.178514f, 0.178891f, 0.179268f, 0.179646f, + 0.180023f, 0.180400f, 0.180777f, 0.181154f, 0.181532f, 0.181909f, 0.182286f, 0.182663f, + 0.183040f, 0.183417f, 0.183794f, 0.184171f, 0.184548f, 0.184925f, 0.185301f, 0.185678f, + 0.186055f, 0.186432f, 0.186809f, 0.187185f, 0.187562f, 0.187939f, 0.188315f, 0.188692f, + 0.189069f, 0.189445f, 0.189822f, 0.190198f, 0.190575f, 0.190951f, 0.191328f, 0.191704f, + 0.192080f, 0.192457f, 0.192833f, 0.193209f, 0.193586f, 0.193962f, 0.194338f, 0.194714f, + 0.195090f, 0.195466f, 0.195843f, 0.196219f, 0.196595f, 0.196971f, 0.197347f, 0.197722f, + 0.198098f, 0.198474f, 0.198850f, 0.199226f, 0.199602f, 0.199978f, 0.200353f, 0.200729f, + 0.201105f, 0.201480f, 0.201856f, 0.202231f, 0.202607f, 0.202983f, 0.203358f, 0.203734f, + 0.204109f, 0.204484f, 0.204860f, 0.205235f, 0.205610f, 0.205986f, 0.206361f, 0.206736f, + 0.207111f, 0.207487f, 0.207862f, 0.208237f, 0.208612f, 0.208987f, 0.209362f, 0.209737f, + 0.210112f, 0.210487f, 0.210862f, 0.211237f, 0.211611f, 0.211986f, 0.212361f, 0.212736f, + 0.213110f, 0.213485f, 0.213860f, 0.214234f, 0.214609f, 0.214983f, 0.215358f, 0.215732f, + 0.216107f, 0.216481f, 0.216856f, 0.217230f, 0.217604f, 0.217979f, 0.218353f, 0.218727f, + 0.219101f, 0.219475f, 0.219850f, 0.220224f, 0.220598f, 0.220972f, 0.221346f, 0.221720f, + 0.222094f, 0.222468f, 0.222841f, 0.223215f, 0.223589f, 0.223963f, 0.224337f, 0.224710f, + 0.225084f, 0.225458f, 0.225831f, 0.226205f, 0.226578f, 0.226952f, 0.227325f, 0.227699f, + 0.228072f, 0.228445f, 0.228819f, 0.229192f, 0.229565f, 0.229939f, 0.230312f, 0.230685f, + 0.231058f, 0.231431f, 0.231804f, 0.232177f, 0.232550f, 0.232923f, 0.233296f, 0.233669f, + 0.234042f, 0.234415f, 0.234788f, 0.235160f, 0.235533f, 0.235906f, 0.236278f, 0.236651f, + 0.237024f, 0.237396f, 0.237769f, 0.238141f, 0.238514f, 0.238886f, 0.239258f, 0.239631f, + 0.240003f, 0.240375f, 0.240748f, 0.241120f, 0.241492f, 0.241864f, 0.242236f, 0.242608f, + 0.242980f, 0.243352f, 0.243724f, 0.244096f, 0.244468f, 0.244840f, 0.245212f, 0.245583f, + 0.245955f, 0.246327f, 0.246698f, 0.247070f, 0.247442f, 0.247813f, 0.248185f, 0.248556f, + 0.248928f, 0.249299f, 0.249670f, 0.250042f, 0.250413f, 0.250784f, 0.251155f, 0.251527f, + 0.251898f, 0.252269f, 0.252640f, 0.253011f, 0.253382f, 0.253753f, 0.254124f, 0.254495f, + 0.254866f, 0.255236f, 0.255607f, 0.255978f, 0.256349f, 0.256719f, 0.257090f, 0.257461f, + 0.257831f, 0.258202f, 0.258572f, 0.258943f, 0.259313f, 0.259683f, 0.260054f, 0.260424f, + 0.260794f, 0.261164f, 0.261534f, 0.261905f, 0.262275f, 0.262645f, 0.263015f, 0.263385f, + 0.263755f, 0.264125f, 0.264494f, 0.264864f, 0.265234f, 0.265604f, 0.265973f, 0.266343f, + 0.266713f, 0.267082f, 0.267452f, 0.267821f, 0.268191f, 0.268560f, 0.268930f, 0.269299f, + 0.269668f, 0.270038f, 0.270407f, 0.270776f, 0.271145f, 0.271514f, 0.271883f, 0.272252f, + 0.272621f, 0.272990f, 0.273359f, 0.273728f, 0.274097f, 0.274466f, 0.274834f, 0.275203f, + 0.275572f, 0.275940f, 0.276309f, 0.276678f, 0.277046f, 0.277415f, 0.277783f, 0.278151f, + 0.278520f, 0.278888f, 0.279256f, 0.279624f, 0.279993f, 0.280361f, 0.280729f, 0.281097f, + 0.281465f, 0.281833f, 0.282201f, 0.282569f, 0.282937f, 0.283304f, 0.283672f, 0.284040f, + 0.284408f, 0.284775f, 0.285143f, 0.285510f, 0.285878f, 0.286245f, 0.286613f, 0.286980f, + 0.287347f, 0.287715f, 0.288082f, 0.288449f, 0.288816f, 0.289184f, 0.289551f, 0.289918f, + 0.290285f, 0.290652f, 0.291019f, 0.291385f, 0.291752f, 0.292119f, 0.292486f, 0.292852f, + 0.293219f, 0.293586f, 0.293952f, 0.294319f, 0.294685f, 0.295052f, 0.295418f, 0.295785f, + 0.296151f, 0.296517f, 0.296883f, 0.297250f, 0.297616f, 0.297982f, 0.298348f, 0.298714f, + 0.299080f, 0.299446f, 0.299812f, 0.300177f, 0.300543f, 0.300909f, 0.301275f, 0.301640f, + 0.302006f, 0.302372f, 0.302737f, 0.303103f, 0.303468f, 0.303833f, 0.304199f, 0.304564f, + 0.304929f, 0.305294f, 0.305660f, 0.306025f, 0.306390f, 0.306755f, 0.307120f, 0.307485f, + 0.307850f, 0.308214f, 0.308579f, 0.308944f, 0.309309f, 0.309673f, 0.310038f, 0.310403f, + 0.310767f, 0.311132f, 0.311496f, 0.311860f, 0.312225f, 0.312589f, 0.312953f, 0.313318f, + 0.313682f, 0.314046f, 0.314410f, 0.314774f, 0.315138f, 0.315502f, 0.315866f, 0.316230f, + 0.316593f, 0.316957f, 0.317321f, 0.317684f, 0.318048f, 0.318412f, 0.318775f, 0.319139f, + 0.319502f, 0.319865f, 0.320229f, 0.320592f, 0.320955f, 0.321318f, 0.321682f, 0.322045f, + 0.322408f, 0.322771f, 0.323134f, 0.323497f, 0.323859f, 0.324222f, 0.324585f, 0.324948f, + 0.325310f, 0.325673f, 0.326035f, 0.326398f, 0.326760f, 0.327123f, 0.327485f, 0.327848f, + 0.328210f, 0.328572f, 0.328934f, 0.329296f, 0.329658f, 0.330020f, 0.330382f, 0.330744f, + 0.331106f, 0.331468f, 0.331830f, 0.332192f, 0.332553f, 0.332915f, 0.333277f, 0.333638f, + 0.334000f, 0.334361f, 0.334722f, 0.335084f, 0.335445f, 0.335806f, 0.336168f, 0.336529f, + 0.336890f, 0.337251f, 0.337612f, 0.337973f, 0.338334f, 0.338695f, 0.339055f, 0.339416f, + 0.339777f, 0.340138f, 0.340498f, 0.340859f, 0.341219f, 0.341580f, 0.341940f, 0.342300f, + 0.342661f, 0.343021f, 0.343381f, 0.343741f, 0.344101f, 0.344461f, 0.344821f, 0.345181f, + 0.345541f, 0.345901f, 0.346261f, 0.346621f, 0.346980f, 0.347340f, 0.347700f, 0.348059f, + 0.348419f, 0.348778f, 0.349138f, 0.349497f, 0.349856f, 0.350215f, 0.350575f, 0.350934f, + 0.351293f, 0.351652f, 0.352011f, 0.352370f, 0.352729f, 0.353087f, 0.353446f, 0.353805f, + 0.354164f, 0.354522f, 0.354881f, 0.355239f, 0.355598f, 0.355956f, 0.356314f, 0.356673f, + 0.357031f, 0.357389f, 0.357747f, 0.358105f, 0.358463f, 0.358821f, 0.359179f, 0.359537f, + 0.359895f, 0.360253f, 0.360611f, 0.360968f, 0.361326f, 0.361683f, 0.362041f, 0.362398f, + 0.362756f, 0.363113f, 0.363470f, 0.363828f, 0.364185f, 0.364542f, 0.364899f, 0.365256f, + 0.365613f, 0.365970f, 0.366327f, 0.366684f, 0.367040f, 0.367397f, 0.367754f, 0.368110f, + 0.368467f, 0.368823f, 0.369180f, 0.369536f, 0.369892f, 0.370249f, 0.370605f, 0.370961f, + 0.371317f, 0.371673f, 0.372029f, 0.372385f, 0.372741f, 0.373097f, 0.373453f, 0.373808f, + 0.374164f, 0.374520f, 0.374875f, 0.375231f, 0.375586f, 0.375942f, 0.376297f, 0.376652f, + 0.377007f, 0.377363f, 0.377718f, 0.378073f, 0.378428f, 0.378783f, 0.379138f, 0.379492f, + 0.379847f, 0.380202f, 0.380557f, 0.380911f, 0.381266f, 0.381620f, 0.381975f, 0.382329f, + 0.382683f, 0.383038f, 0.383392f, 0.383746f, 0.384100f, 0.384454f, 0.384808f, 0.385162f, + 0.385516f, 0.385870f, 0.386224f, 0.386577f, 0.386931f, 0.387285f, 0.387638f, 0.387992f, + 0.388345f, 0.388698f, 0.389052f, 0.389405f, 0.389758f, 0.390111f, 0.390464f, 0.390817f, + 0.391170f, 0.391523f, 0.391876f, 0.392229f, 0.392582f, 0.392934f, 0.393287f, 0.393640f, + 0.393992f, 0.394344f, 0.394697f, 0.395049f, 0.395401f, 0.395754f, 0.396106f, 0.396458f, + 0.396810f, 0.397162f, 0.397514f, 0.397866f, 0.398218f, 0.398569f, 0.398921f, 0.399273f, + 0.399624f, 0.399976f, 0.400327f, 0.400679f, 0.401030f, 0.401381f, 0.401732f, 0.402084f, + 0.402435f, 0.402786f, 0.403137f, 0.403488f, 0.403838f, 0.404189f, 0.404540f, 0.404891f, + 0.405241f, 0.405592f, 0.405942f, 0.406293f, 0.406643f, 0.406994f, 0.407344f, 0.407694f, + 0.408044f, 0.408394f, 0.408744f, 0.409094f, 0.409444f, 0.409794f, 0.410144f, 0.410493f, + 0.410843f, 0.411193f, 0.411542f, 0.411892f, 0.412241f, 0.412591f, 0.412940f, 0.413289f, + 0.413638f, 0.413987f, 0.414337f, 0.414685f, 0.415034f, 0.415383f, 0.415732f, 0.416081f, + 0.416430f, 0.416778f, 0.417127f, 0.417475f, 0.417824f, 0.418172f, 0.418520f, 0.418869f, + 0.419217f, 0.419565f, 0.419913f, 0.420261f, 0.420609f, 0.420957f, 0.421305f, 0.421653f, + 0.422000f, 0.422348f, 0.422695f, 0.423043f, 0.423390f, 0.423738f, 0.424085f, 0.424432f, + 0.424780f, 0.425127f, 0.425474f, 0.425821f, 0.426168f, 0.426515f, 0.426862f, 0.427208f, + 0.427555f, 0.427902f, 0.428248f, 0.428595f, 0.428941f, 0.429288f, 0.429634f, 0.429980f, + 0.430326f, 0.430673f, 0.431019f, 0.431365f, 0.431711f, 0.432057f, 0.432402f, 0.432748f, + 0.433094f, 0.433439f, 0.433785f, 0.434131f, 0.434476f, 0.434821f, 0.435167f, 0.435512f, + 0.435857f, 0.436202f, 0.436547f, 0.436892f, 0.437237f, 0.437582f, 0.437927f, 0.438272f, + 0.438616f, 0.438961f, 0.439305f, 0.439650f, 0.439994f, 0.440339f, 0.440683f, 0.441027f, + 0.441371f, 0.441715f, 0.442059f, 0.442403f, 0.442747f, 0.443091f, 0.443435f, 0.443779f, + 0.444122f, 0.444466f, 0.444809f, 0.445153f, 0.445496f, 0.445839f, 0.446183f, 0.446526f, + 0.446869f, 0.447212f, 0.447555f, 0.447898f, 0.448241f, 0.448583f, 0.448926f, 0.449269f, + 0.449611f, 0.449954f, 0.450296f, 0.450639f, 0.450981f, 0.451323f, 0.451665f, 0.452008f, + 0.452350f, 0.452692f, 0.453033f, 0.453375f, 0.453717f, 0.454059f, 0.454400f, 0.454742f, + 0.455084f, 0.455425f, 0.455766f, 0.456108f, 0.456449f, 0.456790f, 0.457131f, 0.457472f, + 0.457813f, 0.458154f, 0.458495f, 0.458836f, 0.459177f, 0.459517f, 0.459858f, 0.460198f, + 0.460539f, 0.460879f, 0.461219f, 0.461560f, 0.461900f, 0.462240f, 0.462580f, 0.462920f, + 0.463260f, 0.463600f, 0.463939f, 0.464279f, 0.464619f, 0.464958f, 0.465298f, 0.465637f, + 0.465977f, 0.466316f, 0.466655f, 0.466994f, 0.467333f, 0.467672f, 0.468011f, 0.468350f, + 0.468689f, 0.469028f, 0.469366f, 0.469705f, 0.470043f, 0.470382f, 0.470720f, 0.471058f, + 0.471397f, 0.471735f, 0.472073f, 0.472411f, 0.472749f, 0.473087f, 0.473425f, 0.473763f, + 0.474100f, 0.474438f, 0.474775f, 0.475113f, 0.475450f, 0.475788f, 0.476125f, 0.476462f, + 0.476799f, 0.477136f, 0.477473f, 0.477810f, 0.478147f, 0.478484f, 0.478821f, 0.479157f, + 0.479494f, 0.479830f, 0.480167f, 0.480503f, 0.480839f, 0.481176f, 0.481512f, 0.481848f, + 0.482184f, 0.482520f, 0.482856f, 0.483191f, 0.483527f, 0.483863f, 0.484198f, 0.484534f, + 0.484869f, 0.485205f, 0.485540f, 0.485875f, 0.486210f, 0.486545f, 0.486880f, 0.487215f, + 0.487550f, 0.487885f, 0.488220f, 0.488554f, 0.488889f, 0.489223f, 0.489558f, 0.489892f, + 0.490226f, 0.490561f, 0.490895f, 0.491229f, 0.491563f, 0.491897f, 0.492231f, 0.492564f, + 0.492898f, 0.493232f, 0.493565f, 0.493899f, 0.494232f, 0.494566f, 0.494899f, 0.495232f, + 0.495565f, 0.495898f, 0.496231f, 0.496564f, 0.496897f, 0.497230f, 0.497562f, 0.497895f, + 0.498228f, 0.498560f, 0.498893f, 0.499225f, 0.499557f, 0.499889f, 0.500221f, 0.500553f, + 0.500885f, 0.501217f, 0.501549f, 0.501881f, 0.502212f, 0.502544f, 0.502876f, 0.503207f, + 0.503538f, 0.503870f, 0.504201f, 0.504532f, 0.504863f, 0.505194f, 0.505525f, 0.505856f, + 0.506187f, 0.506517f, 0.506848f, 0.507179f, 0.507509f, 0.507839f, 0.508170f, 0.508500f, + 0.508830f, 0.509160f, 0.509490f, 0.509820f, 0.510150f, 0.510480f, 0.510810f, 0.511139f, + 0.511469f, 0.511798f, 0.512128f, 0.512457f, 0.512786f, 0.513116f, 0.513445f, 0.513774f, + 0.514103f, 0.514432f, 0.514760f, 0.515089f, 0.515418f, 0.515746f, 0.516075f, 0.516403f, + 0.516732f, 0.517060f, 0.517388f, 0.517716f, 0.518045f, 0.518372f, 0.518700f, 0.519028f, + 0.519356f, 0.519684f, 0.520011f, 0.520339f, 0.520666f, 0.520994f, 0.521321f, 0.521648f, + 0.521975f, 0.522302f, 0.522629f, 0.522956f, 0.523283f, 0.523610f, 0.523937f, 0.524263f, + 0.524590f, 0.524916f, 0.525243f, 0.525569f, 0.525895f, 0.526221f, 0.526547f, 0.526873f, + 0.527199f, 0.527525f, 0.527851f, 0.528176f, 0.528502f, 0.528828f, 0.529153f, 0.529478f, + 0.529804f, 0.530129f, 0.530454f, 0.530779f, 0.531104f, 0.531429f, 0.531754f, 0.532078f, + 0.532403f, 0.532728f, 0.533052f, 0.533377f, 0.533701f, 0.534025f, 0.534349f, 0.534674f, + 0.534998f, 0.535322f, 0.535645f, 0.535969f, 0.536293f, 0.536617f, 0.536940f, 0.537264f, + 0.537587f, 0.537910f, 0.538234f, 0.538557f, 0.538880f, 0.539203f, 0.539526f, 0.539849f, + 0.540171f, 0.540494f, 0.540817f, 0.541139f, 0.541462f, 0.541784f, 0.542106f, 0.542429f, + 0.542751f, 0.543073f, 0.543395f, 0.543717f, 0.544039f, 0.544360f, 0.544682f, 0.545003f, + 0.545325f, 0.545646f, 0.545968f, 0.546289f, 0.546610f, 0.546931f, 0.547252f, 0.547573f, + 0.547894f, 0.548215f, 0.548536f, 0.548856f, 0.549177f, 0.549497f, 0.549818f, 0.550138f, + 0.550458f, 0.550778f, 0.551098f, 0.551418f, 0.551738f, 0.552058f, 0.552378f, 0.552697f, + 0.553017f, 0.553336f, 0.553656f, 0.553975f, 0.554294f, 0.554613f, 0.554932f, 0.555251f, + 0.555570f, 0.555889f, 0.556208f, 0.556526f, 0.556845f, 0.557164f, 0.557482f, 0.557800f, + 0.558119f, 0.558437f, 0.558755f, 0.559073f, 0.559391f, 0.559709f, 0.560026f, 0.560344f, + 0.560662f, 0.560979f, 0.561297f, 0.561614f, 0.561931f, 0.562248f, 0.562565f, 0.562882f, + 0.563199f, 0.563516f, 0.563833f, 0.564150f, 0.564466f, 0.564783f, 0.565099f, 0.565416f, + 0.565732f, 0.566048f, 0.566364f, 0.566680f, 0.566996f, 0.567312f, 0.567628f, 0.567943f, + 0.568259f, 0.568574f, 0.568890f, 0.569205f, 0.569521f, 0.569836f, 0.570151f, 0.570466f, + 0.570781f, 0.571096f, 0.571410f, 0.571725f, 0.572040f, 0.572354f, 0.572669f, 0.572983f, + 0.573297f, 0.573611f, 0.573925f, 0.574239f, 0.574553f, 0.574867f, 0.575181f, 0.575495f, + 0.575808f, 0.576122f, 0.576435f, 0.576748f, 0.577062f, 0.577375f, 0.577688f, 0.578001f, + 0.578314f, 0.578627f, 0.578939f, 0.579252f, 0.579565f, 0.579877f, 0.580189f, 0.580502f, + 0.580814f, 0.581126f, 0.581438f, 0.581750f, 0.582062f, 0.582374f, 0.582685f, 0.582997f, + 0.583309f, 0.583620f, 0.583931f, 0.584243f, 0.584554f, 0.584865f, 0.585176f, 0.585487f, + 0.585798f, 0.586109f, 0.586419f, 0.586730f, 0.587040f, 0.587351f, 0.587661f, 0.587971f, + 0.588282f, 0.588592f, 0.588902f, 0.589212f, 0.589521f, 0.589831f, 0.590141f, 0.590450f, + 0.590760f, 0.591069f, 0.591378f, 0.591688f, 0.591997f, 0.592306f, 0.592615f, 0.592924f, + 0.593232f, 0.593541f, 0.593850f, 0.594158f, 0.594467f, 0.594775f, 0.595083f, 0.595391f, + 0.595699f, 0.596007f, 0.596315f, 0.596623f, 0.596931f, 0.597238f, 0.597546f, 0.597853f, + 0.598161f, 0.598468f, 0.598775f, 0.599082f, 0.599389f, 0.599696f, 0.600003f, 0.600310f, + 0.600616f, 0.600923f, 0.601230f, 0.601536f, 0.601842f, 0.602148f, 0.602455f, 0.602761f, + 0.603067f, 0.603372f, 0.603678f, 0.603984f, 0.604290f, 0.604595f, 0.604900f, 0.605206f, + 0.605511f, 0.605816f, 0.606121f, 0.606426f, 0.606731f, 0.607036f, 0.607341f, 0.607645f, + 0.607950f, 0.608254f, 0.608559f, 0.608863f, 0.609167f, 0.609471f, 0.609775f, 0.610079f, + 0.610383f, 0.610687f, 0.610990f, 0.611294f, 0.611597f, 0.611901f, 0.612204f, 0.612507f, + 0.612810f, 0.613113f, 0.613416f, 0.613719f, 0.614022f, 0.614324f, 0.614627f, 0.614929f, + 0.615232f, 0.615534f, 0.615836f, 0.616138f, 0.616440f, 0.616742f, 0.617044f, 0.617346f, + 0.617647f, 0.617949f, 0.618250f, 0.618552f, 0.618853f, 0.619154f, 0.619455f, 0.619756f, + 0.620057f, 0.620358f, 0.620659f, 0.620959f, 0.621260f, 0.621560f, 0.621861f, 0.622161f, + 0.622461f, 0.622761f, 0.623061f, 0.623361f, 0.623661f, 0.623961f, 0.624260f, 0.624560f, + 0.624860f, 0.625159f, 0.625458f, 0.625757f, 0.626056f, 0.626355f, 0.626654f, 0.626953f, + 0.627252f, 0.627550f, 0.627849f, 0.628147f, 0.628446f, 0.628744f, 0.629042f, 0.629340f, + 0.629638f, 0.629936f, 0.630234f, 0.630532f, 0.630829f, 0.631127f, 0.631424f, 0.631721f, + 0.632019f, 0.632316f, 0.632613f, 0.632910f, 0.633207f, 0.633504f, 0.633800f, 0.634097f, + 0.634393f, 0.634690f, 0.634986f, 0.635282f, 0.635578f, 0.635874f, 0.636170f, 0.636466f, + 0.636762f, 0.637057f, 0.637353f, 0.637649f, 0.637944f, 0.638239f, 0.638534f, 0.638829f, + 0.639124f, 0.639419f, 0.639714f, 0.640009f, 0.640303f, 0.640598f, 0.640892f, 0.641187f, + 0.641481f, 0.641775f, 0.642069f, 0.642363f, 0.642657f, 0.642951f, 0.643245f, 0.643538f, + 0.643832f, 0.644125f, 0.644418f, 0.644711f, 0.645005f, 0.645298f, 0.645590f, 0.645883f, + 0.646176f, 0.646469f, 0.646761f, 0.647054f, 0.647346f, 0.647638f, 0.647930f, 0.648222f, + 0.648514f, 0.648806f, 0.649098f, 0.649390f, 0.649681f, 0.649973f, 0.650264f, 0.650555f, + 0.650847f, 0.651138f, 0.651429f, 0.651720f, 0.652011f, 0.652301f, 0.652592f, 0.652882f, + 0.653173f, 0.653463f, 0.653753f, 0.654044f, 0.654334f, 0.654624f, 0.654913f, 0.655203f, + 0.655493f, 0.655782f, 0.656072f, 0.656361f, 0.656651f, 0.656940f, 0.657229f, 0.657518f, + 0.657807f, 0.658095f, 0.658384f, 0.658673f, 0.658961f, 0.659250f, 0.659538f, 0.659826f, + 0.660114f, 0.660402f, 0.660690f, 0.660978f, 0.661266f, 0.661553f, 0.661841f, 0.662128f, + 0.662416f, 0.662703f, 0.662990f, 0.663277f, 0.663564f, 0.663851f, 0.664138f, 0.664424f, + 0.664711f, 0.664997f, 0.665284f, 0.665570f, 0.665856f, 0.666142f, 0.666428f, 0.666714f, + 0.667000f, 0.667286f, 0.667571f, 0.667857f, 0.668142f, 0.668427f, 0.668712f, 0.668998f, + 0.669283f, 0.669567f, 0.669852f, 0.670137f, 0.670422f, 0.670706f, 0.670990f, 0.671275f, + 0.671559f, 0.671843f, 0.672127f, 0.672411f, 0.672695f, 0.672978f, 0.673262f, 0.673546f, + 0.673829f, 0.674112f, 0.674396f, 0.674679f, 0.674962f, 0.675245f, 0.675527f, 0.675810f, + 0.676093f, 0.676375f, 0.676658f, 0.676940f, 0.677222f, 0.677504f, 0.677786f, 0.678068f, + 0.678350f, 0.678632f, 0.678913f, 0.679195f, 0.679476f, 0.679758f, 0.680039f, 0.680320f, + 0.680601f, 0.680882f, 0.681163f, 0.681443f, 0.681724f, 0.682005f, 0.682285f, 0.682565f, + 0.682846f, 0.683126f, 0.683406f, 0.683686f, 0.683965f, 0.684245f, 0.684525f, 0.684804f, + 0.685084f, 0.685363f, 0.685642f, 0.685921f, 0.686200f, 0.686479f, 0.686758f, 0.687037f, + 0.687315f, 0.687594f, 0.687872f, 0.688151f, 0.688429f, 0.688707f, 0.688985f, 0.689263f, + 0.689541f, 0.689818f, 0.690096f, 0.690373f, 0.690651f, 0.690928f, 0.691205f, 0.691482f, + 0.691759f, 0.692036f, 0.692313f, 0.692590f, 0.692866f, 0.693143f, 0.693419f, 0.693695f, + 0.693971f, 0.694248f, 0.694524f, 0.694799f, 0.695075f, 0.695351f, 0.695626f, 0.695902f, + 0.696177f, 0.696452f, 0.696728f, 0.697003f, 0.697277f, 0.697552f, 0.697827f, 0.698102f, + 0.698376f, 0.698651f, 0.698925f, 0.699199f, 0.699473f, 0.699747f, 0.700021f, 0.700295f, + 0.700569f, 0.700842f, 0.701116f, 0.701389f, 0.701663f, 0.701936f, 0.702209f, 0.702482f, + 0.702755f, 0.703028f, 0.703300f, 0.703573f, 0.703845f, 0.704118f, 0.704390f, 0.704662f, + 0.704934f, 0.705206f, 0.705478f, 0.705750f, 0.706021f, 0.706293f, 0.706564f, 0.706836f, + 0.707107f, 0.707378f, 0.707649f, 0.707920f, 0.708191f, 0.708461f, 0.708732f, 0.709002f, + 0.709273f, 0.709543f, 0.709813f, 0.710083f, 0.710353f, 0.710623f, 0.710893f, 0.711163f, + 0.711432f, 0.711702f, 0.711971f, 0.712240f, 0.712509f, 0.712778f, 0.713047f, 0.713316f, + 0.713585f, 0.713853f, 0.714122f, 0.714390f, 0.714659f, 0.714927f, 0.715195f, 0.715463f, + 0.715731f, 0.715999f, 0.716266f, 0.716534f, 0.716801f, 0.717069f, 0.717336f, 0.717603f, + 0.717870f, 0.718137f, 0.718404f, 0.718670f, 0.718937f, 0.719204f, 0.719470f, 0.719736f, + 0.720003f, 0.720269f, 0.720535f, 0.720800f, 0.721066f, 0.721332f, 0.721597f, 0.721863f, + 0.722128f, 0.722393f, 0.722659f, 0.722924f, 0.723188f, 0.723453f, 0.723718f, 0.723983f, + 0.724247f, 0.724511f, 0.724776f, 0.725040f, 0.725304f, 0.725568f, 0.725832f, 0.726095f, + 0.726359f, 0.726623f, 0.726886f, 0.727149f, 0.727413f, 0.727676f, 0.727939f, 0.728202f, + 0.728464f, 0.728727f, 0.728990f, 0.729252f, 0.729514f, 0.729777f, 0.730039f, 0.730301f, + 0.730563f, 0.730825f, 0.731086f, 0.731348f, 0.731609f, 0.731871f, 0.732132f, 0.732393f, + 0.732654f, 0.732915f, 0.733176f, 0.733437f, 0.733697f, 0.733958f, 0.734218f, 0.734479f, + 0.734739f, 0.734999f, 0.735259f, 0.735519f, 0.735779f, 0.736038f, 0.736298f, 0.736557f, + 0.736817f, 0.737076f, 0.737335f, 0.737594f, 0.737853f, 0.738112f, 0.738370f, 0.738629f, + 0.738887f, 0.739146f, 0.739404f, 0.739662f, 0.739920f, 0.740178f, 0.740436f, 0.740694f, + 0.740951f, 0.741209f, 0.741466f, 0.741723f, 0.741980f, 0.742237f, 0.742494f, 0.742751f, + 0.743008f, 0.743265f, 0.743521f, 0.743777f, 0.744034f, 0.744290f, 0.744546f, 0.744802f, + 0.745058f, 0.745314f, 0.745569f, 0.745825f, 0.746080f, 0.746335f, 0.746591f, 0.746846f, + 0.747101f, 0.747355f, 0.747610f, 0.747865f, 0.748119f, 0.748374f, 0.748628f, 0.748882f, + 0.749136f, 0.749390f, 0.749644f, 0.749898f, 0.750152f, 0.750405f, 0.750659f, 0.750912f, + 0.751165f, 0.751418f, 0.751671f, 0.751924f, 0.752177f, 0.752429f, 0.752682f, 0.752934f, + 0.753187f, 0.753439f, 0.753691f, 0.753943f, 0.754195f, 0.754447f, 0.754698f, 0.754950f, + 0.755201f, 0.755453f, 0.755704f, 0.755955f, 0.756206f, 0.756457f, 0.756708f, 0.756958f, + 0.757209f, 0.757459f, 0.757710f, 0.757960f, 0.758210f, 0.758460f, 0.758710f, 0.758960f, + 0.759209f, 0.759459f, 0.759708f, 0.759957f, 0.760207f, 0.760456f, 0.760705f, 0.760954f, + 0.761202f, 0.761451f, 0.761700f, 0.761948f, 0.762196f, 0.762444f, 0.762693f, 0.762941f, + 0.763188f, 0.763436f, 0.763684f, 0.763931f, 0.764179f, 0.764426f, 0.764673f, 0.764920f, + 0.765167f, 0.765414f, 0.765661f, 0.765907f, 0.766154f, 0.766400f, 0.766647f, 0.766893f, + 0.767139f, 0.767385f, 0.767631f, 0.767876f, 0.768122f, 0.768368f, 0.768613f, 0.768858f, + 0.769103f, 0.769348f, 0.769593f, 0.769838f, 0.770083f, 0.770327f, 0.770572f, 0.770816f, + 0.771061f, 0.771305f, 0.771549f, 0.771793f, 0.772036f, 0.772280f, 0.772524f, 0.772767f, + 0.773010f, 0.773254f, 0.773497f, 0.773740f, 0.773983f, 0.774225f, 0.774468f, 0.774711f, + 0.774953f, 0.775195f, 0.775438f, 0.775680f, 0.775922f, 0.776164f, 0.776405f, 0.776647f, + 0.776888f, 0.777130f, 0.777371f, 0.777612f, 0.777853f, 0.778094f, 0.778335f, 0.778576f, + 0.778817f, 0.779057f, 0.779297f, 0.779538f, 0.779778f, 0.780018f, 0.780258f, 0.780498f, + 0.780737f, 0.780977f, 0.781216f, 0.781456f, 0.781695f, 0.781934f, 0.782173f, 0.782412f, + 0.782651f, 0.782889f, 0.783128f, 0.783366f, 0.783605f, 0.783843f, 0.784081f, 0.784319f, + 0.784557f, 0.784794f, 0.785032f, 0.785269f, 0.785507f, 0.785744f, 0.785981f, 0.786218f, + 0.786455f, 0.786692f, 0.786929f, 0.787165f, 0.787402f, 0.787638f, 0.787874f, 0.788110f, + 0.788346f, 0.788582f, 0.788818f, 0.789054f, 0.789289f, 0.789525f, 0.789760f, 0.789995f, + 0.790230f, 0.790465f, 0.790700f, 0.790935f, 0.791169f, 0.791404f, 0.791638f, 0.791872f, + 0.792107f, 0.792341f, 0.792575f, 0.792808f, 0.793042f, 0.793276f, 0.793509f, 0.793742f, + 0.793975f, 0.794209f, 0.794442f, 0.794674f, 0.794907f, 0.795140f, 0.795372f, 0.795605f, + 0.795837f, 0.796069f, 0.796301f, 0.796533f, 0.796765f, 0.796996f, 0.797228f, 0.797459f, + 0.797691f, 0.797922f, 0.798153f, 0.798384f, 0.798615f, 0.798846f, 0.799076f, 0.799307f, + 0.799537f, 0.799768f, 0.799998f, 0.800228f, 0.800458f, 0.800687f, 0.800917f, 0.801147f, + 0.801376f, 0.801606f, 0.801835f, 0.802064f, 0.802293f, 0.802522f, 0.802750f, 0.802979f, + 0.803208f, 0.803436f, 0.803664f, 0.803892f, 0.804120f, 0.804348f, 0.804576f, 0.804804f, + 0.805031f, 0.805259f, 0.805486f, 0.805713f, 0.805940f, 0.806167f, 0.806394f, 0.806621f, + 0.806848f, 0.807074f, 0.807300f, 0.807527f, 0.807753f, 0.807979f, 0.808205f, 0.808430f, + 0.808656f, 0.808882f, 0.809107f, 0.809332f, 0.809558f, 0.809783f, 0.810008f, 0.810232f, + 0.810457f, 0.810682f, 0.810906f, 0.811131f, 0.811355f, 0.811579f, 0.811803f, 0.812027f, + 0.812251f, 0.812474f, 0.812698f, 0.812921f, 0.813144f, 0.813368f, 0.813591f, 0.813814f, + 0.814036f, 0.814259f, 0.814482f, 0.814704f, 0.814926f, 0.815149f, 0.815371f, 0.815593f, + 0.815814f, 0.816036f, 0.816258f, 0.816479f, 0.816701f, 0.816922f, 0.817143f, 0.817364f, + 0.817585f, 0.817806f, 0.818026f, 0.818247f, 0.818467f, 0.818687f, 0.818908f, 0.819128f, + 0.819348f, 0.819567f, 0.819787f, 0.820007f, 0.820226f, 0.820445f, 0.820664f, 0.820884f, + 0.821102f, 0.821321f, 0.821540f, 0.821759f, 0.821977f, 0.822195f, 0.822414f, 0.822632f, + 0.822850f, 0.823068f, 0.823285f, 0.823503f, 0.823721f, 0.823938f, 0.824155f, 0.824372f, + 0.824589f, 0.824806f, 0.825023f, 0.825240f, 0.825456f, 0.825673f, 0.825889f, 0.826105f, + 0.826321f, 0.826537f, 0.826753f, 0.826968f, 0.827184f, 0.827399f, 0.827615f, 0.827830f, + 0.828045f, 0.828260f, 0.828475f, 0.828690f, 0.828904f, 0.829119f, 0.829333f, 0.829547f, + 0.829761f, 0.829975f, 0.830189f, 0.830403f, 0.830616f, 0.830830f, 0.831043f, 0.831257f, + 0.831470f, 0.831683f, 0.831895f, 0.832108f, 0.832321f, 0.832533f, 0.832746f, 0.832958f, + 0.833170f, 0.833382f, 0.833594f, 0.833806f, 0.834018f, 0.834229f, 0.834440f, 0.834652f, + 0.834863f, 0.835074f, 0.835285f, 0.835496f, 0.835706f, 0.835917f, 0.836127f, 0.836338f, + 0.836548f, 0.836758f, 0.836968f, 0.837178f, 0.837387f, 0.837597f, 0.837806f, 0.838015f, + 0.838225f, 0.838434f, 0.838643f, 0.838852f, 0.839060f, 0.839269f, 0.839477f, 0.839686f, + 0.839894f, 0.840102f, 0.840310f, 0.840518f, 0.840725f, 0.840933f, 0.841140f, 0.841348f, + 0.841555f, 0.841762f, 0.841969f, 0.842176f, 0.842383f, 0.842589f, 0.842796f, 0.843002f, + 0.843208f, 0.843414f, 0.843620f, 0.843826f, 0.844032f, 0.844238f, 0.844443f, 0.844648f, + 0.844854f, 0.845059f, 0.845264f, 0.845469f, 0.845673f, 0.845878f, 0.846082f, 0.846287f, + 0.846491f, 0.846695f, 0.846899f, 0.847103f, 0.847307f, 0.847510f, 0.847714f, 0.847917f, + 0.848120f, 0.848323f, 0.848526f, 0.848729f, 0.848932f, 0.849135f, 0.849337f, 0.849540f, + 0.849742f, 0.849944f, 0.850146f, 0.850348f, 0.850549f, 0.850751f, 0.850953f, 0.851154f, + 0.851355f, 0.851556f, 0.851757f, 0.851958f, 0.852159f, 0.852360f, 0.852560f, 0.852760f, + 0.852961f, 0.853161f, 0.853361f, 0.853561f, 0.853760f, 0.853960f, 0.854159f, 0.854359f, + 0.854558f, 0.854757f, 0.854956f, 0.855155f, 0.855354f, 0.855552f, 0.855751f, 0.855949f, + 0.856147f, 0.856345f, 0.856543f, 0.856741f, 0.856939f, 0.857137f, 0.857334f, 0.857531f, + 0.857729f, 0.857926f, 0.858123f, 0.858320f, 0.858516f, 0.858713f, 0.858909f, 0.859106f, + 0.859302f, 0.859498f, 0.859694f, 0.859890f, 0.860085f, 0.860281f, 0.860476f, 0.860672f, + 0.860867f, 0.861062f, 0.861257f, 0.861452f, 0.861646f, 0.861841f, 0.862035f, 0.862230f, + 0.862424f, 0.862618f, 0.862812f, 0.863006f, 0.863199f, 0.863393f, 0.863586f, 0.863780f, + 0.863973f, 0.864166f, 0.864359f, 0.864552f, 0.864744f, 0.864937f, 0.865129f, 0.865321f, + 0.865514f, 0.865706f, 0.865898f, 0.866089f, 0.866281f, 0.866472f, 0.866664f, 0.866855f, + 0.867046f, 0.867237f, 0.867428f, 0.867619f, 0.867809f, 0.868000f, 0.868190f, 0.868381f, + 0.868571f, 0.868761f, 0.868951f, 0.869140f, 0.869330f, 0.869519f, 0.869709f, 0.869898f, + 0.870087f, 0.870276f, 0.870465f, 0.870654f, 0.870842f, 0.871031f, 0.871219f, 0.871407f, + 0.871595f, 0.871783f, 0.871971f, 0.872159f, 0.872346f, 0.872534f, 0.872721f, 0.872908f, + 0.873095f, 0.873282f, 0.873469f, 0.873655f, 0.873842f, 0.874028f, 0.874215f, 0.874401f, + 0.874587f, 0.874773f, 0.874958f, 0.875144f, 0.875329f, 0.875515f, 0.875700f, 0.875885f, + 0.876070f, 0.876255f, 0.876440f, 0.876624f, 0.876809f, 0.876993f, 0.877177f, 0.877361f, + 0.877545f, 0.877729f, 0.877913f, 0.878096f, 0.878280f, 0.878463f, 0.878646f, 0.878829f, + 0.879012f, 0.879195f, 0.879378f, 0.879560f, 0.879743f, 0.879925f, 0.880107f, 0.880289f, + 0.880471f, 0.880653f, 0.880834f, 0.881016f, 0.881197f, 0.881378f, 0.881559f, 0.881740f, + 0.881921f, 0.882102f, 0.882283f, 0.882463f, 0.882643f, 0.882824f, 0.883004f, 0.883184f, + 0.883363f, 0.883543f, 0.883723f, 0.883902f, 0.884081f, 0.884260f, 0.884439f, 0.884618f, + 0.884797f, 0.884976f, 0.885154f, 0.885333f, 0.885511f, 0.885689f, 0.885867f, 0.886045f, + 0.886223f, 0.886400f, 0.886578f, 0.886755f, 0.886932f, 0.887109f, 0.887286f, 0.887463f, + 0.887640f, 0.887816f, 0.887993f, 0.888169f, 0.888345f, 0.888521f, 0.888697f, 0.888873f, + 0.889048f, 0.889224f, 0.889399f, 0.889574f, 0.889750f, 0.889925f, 0.890099f, 0.890274f, + 0.890449f, 0.890623f, 0.890797f, 0.890972f, 0.891146f, 0.891320f, 0.891493f, 0.891667f, + 0.891841f, 0.892014f, 0.892187f, 0.892361f, 0.892534f, 0.892706f, 0.892879f, 0.893052f, + 0.893224f, 0.893397f, 0.893569f, 0.893741f, 0.893913f, 0.894085f, 0.894256f, 0.894428f, + 0.894599f, 0.894771f, 0.894942f, 0.895113f, 0.895284f, 0.895455f, 0.895625f, 0.895796f, + 0.895966f, 0.896137f, 0.896307f, 0.896477f, 0.896646f, 0.896816f, 0.896986f, 0.897155f, + 0.897325f, 0.897494f, 0.897663f, 0.897832f, 0.898001f, 0.898169f, 0.898338f, 0.898506f, + 0.898674f, 0.898843f, 0.899011f, 0.899179f, 0.899346f, 0.899514f, 0.899681f, 0.899849f, + 0.900016f, 0.900183f, 0.900350f, 0.900517f, 0.900683f, 0.900850f, 0.901016f, 0.901183f, + 0.901349f, 0.901515f, 0.901681f, 0.901847f, 0.902012f, 0.902178f, 0.902343f, 0.902508f, + 0.902673f, 0.902838f, 0.903003f, 0.903168f, 0.903332f, 0.903497f, 0.903661f, 0.903825f, + 0.903989f, 0.904153f, 0.904317f, 0.904481f, 0.904644f, 0.904807f, 0.904971f, 0.905134f, + 0.905297f, 0.905460f, 0.905622f, 0.905785f, 0.905947f, 0.906110f, 0.906272f, 0.906434f, + 0.906596f, 0.906757f, 0.906919f, 0.907081f, 0.907242f, 0.907403f, 0.907564f, 0.907725f, + 0.907886f, 0.908047f, 0.908207f, 0.908368f, 0.908528f, 0.908688f, 0.908848f, 0.909008f, + 0.909168f, 0.909328f, 0.909487f, 0.909646f, 0.909806f, 0.909965f, 0.910124f, 0.910283f, + 0.910441f, 0.910600f, 0.910758f, 0.910917f, 0.911075f, 0.911233f, 0.911391f, 0.911548f, + 0.911706f, 0.911864f, 0.912021f, 0.912178f, 0.912335f, 0.912492f, 0.912649f, 0.912806f, + 0.912962f, 0.913119f, 0.913275f, 0.913431f, 0.913587f, 0.913743f, 0.913899f, 0.914054f, + 0.914210f, 0.914365f, 0.914520f, 0.914675f, 0.914830f, 0.914985f, 0.915140f, 0.915294f, + 0.915449f, 0.915603f, 0.915757f, 0.915911f, 0.916065f, 0.916219f, 0.916372f, 0.916526f, + 0.916679f, 0.916832f, 0.916985f, 0.917138f, 0.917291f, 0.917444f, 0.917596f, 0.917749f, + 0.917901f, 0.918053f, 0.918205f, 0.918357f, 0.918508f, 0.918660f, 0.918811f, 0.918963f, + 0.919114f, 0.919265f, 0.919416f, 0.919567f, 0.919717f, 0.919868f, 0.920018f, 0.920168f, + 0.920318f, 0.920468f, 0.920618f, 0.920768f, 0.920917f, 0.921067f, 0.921216f, 0.921365f, + 0.921514f, 0.921663f, 0.921812f, 0.921960f, 0.922109f, 0.922257f, 0.922405f, 0.922553f, + 0.922701f, 0.922849f, 0.922997f, 0.923144f, 0.923291f, 0.923439f, 0.923586f, 0.923733f, + 0.923880f, 0.924026f, 0.924173f, 0.924319f, 0.924465f, 0.924612f, 0.924758f, 0.924904f, + 0.925049f, 0.925195f, 0.925340f, 0.925486f, 0.925631f, 0.925776f, 0.925921f, 0.926066f, + 0.926210f, 0.926355f, 0.926499f, 0.926643f, 0.926787f, 0.926931f, 0.927075f, 0.927219f, + 0.927363f, 0.927506f, 0.927649f, 0.927792f, 0.927935f, 0.928078f, 0.928221f, 0.928364f, + 0.928506f, 0.928648f, 0.928791f, 0.928933f, 0.929075f, 0.929216f, 0.929358f, 0.929500f, + 0.929641f, 0.929782f, 0.929923f, 0.930064f, 0.930205f, 0.930346f, 0.930486f, 0.930627f, + 0.930767f, 0.930907f, 0.931047f, 0.931187f, 0.931327f, 0.931466f, 0.931606f, 0.931745f, + 0.931884f, 0.932023f, 0.932162f, 0.932301f, 0.932440f, 0.932578f, 0.932716f, 0.932855f, + 0.932993f, 0.933131f, 0.933269f, 0.933406f, 0.933544f, 0.933681f, 0.933818f, 0.933956f, + 0.934093f, 0.934229f, 0.934366f, 0.934503f, 0.934639f, 0.934775f, 0.934912f, 0.935048f, + 0.935184f, 0.935319f, 0.935455f, 0.935590f, 0.935726f, 0.935861f, 0.935996f, 0.936131f, + 0.936266f, 0.936400f, 0.936535f, 0.936669f, 0.936803f, 0.936938f, 0.937072f, 0.937205f, + 0.937339f, 0.937473f, 0.937606f, 0.937739f, 0.937872f, 0.938005f, 0.938138f, 0.938271f, + 0.938404f, 0.938536f, 0.938668f, 0.938800f, 0.938932f, 0.939064f, 0.939196f, 0.939328f, + 0.939459f, 0.939591f, 0.939722f, 0.939853f, 0.939984f, 0.940115f, 0.940245f, 0.940376f, + 0.940506f, 0.940636f, 0.940766f, 0.940896f, 0.941026f, 0.941156f, 0.941285f, 0.941415f, + 0.941544f, 0.941673f, 0.941802f, 0.941931f, 0.942060f, 0.942188f, 0.942317f, 0.942445f, + 0.942573f, 0.942701f, 0.942829f, 0.942957f, 0.943084f, 0.943212f, 0.943339f, 0.943466f, + 0.943593f, 0.943720f, 0.943847f, 0.943974f, 0.944100f, 0.944227f, 0.944353f, 0.944479f, + 0.944605f, 0.944731f, 0.944856f, 0.944982f, 0.945107f, 0.945232f, 0.945358f, 0.945482f, + 0.945607f, 0.945732f, 0.945857f, 0.945981f, 0.946105f, 0.946229f, 0.946353f, 0.946477f, + 0.946601f, 0.946724f, 0.946848f, 0.946971f, 0.947094f, 0.947217f, 0.947340f, 0.947463f, + 0.947586f, 0.947708f, 0.947830f, 0.947953f, 0.948075f, 0.948196f, 0.948318f, 0.948440f, + 0.948561f, 0.948683f, 0.948804f, 0.948925f, 0.949046f, 0.949167f, 0.949287f, 0.949408f, + 0.949528f, 0.949648f, 0.949768f, 0.949888f, 0.950008f, 0.950128f, 0.950247f, 0.950367f, + 0.950486f, 0.950605f, 0.950724f, 0.950843f, 0.950962f, 0.951080f, 0.951199f, 0.951317f, + 0.951435f, 0.951553f, 0.951671f, 0.951789f, 0.951906f, 0.952024f, 0.952141f, 0.952258f, + 0.952375f, 0.952492f, 0.952609f, 0.952725f, 0.952842f, 0.952958f, 0.953074f, 0.953190f, + 0.953306f, 0.953422f, 0.953537f, 0.953653f, 0.953768f, 0.953883f, 0.953998f, 0.954113f, + 0.954228f, 0.954343f, 0.954457f, 0.954572f, 0.954686f, 0.954800f, 0.954914f, 0.955028f, + 0.955141f, 0.955255f, 0.955368f, 0.955481f, 0.955594f, 0.955707f, 0.955820f, 0.955933f, + 0.956045f, 0.956158f, 0.956270f, 0.956382f, 0.956494f, 0.956606f, 0.956717f, 0.956829f, + 0.956940f, 0.957052f, 0.957163f, 0.957274f, 0.957385f, 0.957495f, 0.957606f, 0.957716f, + 0.957826f, 0.957937f, 0.958046f, 0.958156f, 0.958266f, 0.958376f, 0.958485f, 0.958594f, + 0.958703f, 0.958812f, 0.958921f, 0.959030f, 0.959139f, 0.959247f, 0.959355f, 0.959463f, + 0.959572f, 0.959679f, 0.959787f, 0.959895f, 0.960002f, 0.960109f, 0.960217f, 0.960324f, + 0.960431f, 0.960537f, 0.960644f, 0.960750f, 0.960857f, 0.960963f, 0.961069f, 0.961175f, + 0.961280f, 0.961386f, 0.961492f, 0.961597f, 0.961702f, 0.961807f, 0.961912f, 0.962017f, + 0.962121f, 0.962226f, 0.962330f, 0.962434f, 0.962538f, 0.962642f, 0.962746f, 0.962850f, + 0.962953f, 0.963057f, 0.963160f, 0.963263f, 0.963366f, 0.963469f, 0.963571f, 0.963674f, + 0.963776f, 0.963878f, 0.963980f, 0.964082f, 0.964184f, 0.964286f, 0.964387f, 0.964489f, + 0.964590f, 0.964691f, 0.964792f, 0.964893f, 0.964993f, 0.965094f, 0.965194f, 0.965294f, + 0.965394f, 0.965494f, 0.965594f, 0.965694f, 0.965793f, 0.965893f, 0.965992f, 0.966091f, + 0.966190f, 0.966289f, 0.966387f, 0.966486f, 0.966584f, 0.966683f, 0.966781f, 0.966879f, + 0.966976f, 0.967074f, 0.967172f, 0.967269f, 0.967366f, 0.967463f, 0.967560f, 0.967657f, + 0.967754f, 0.967850f, 0.967947f, 0.968043f, 0.968139f, 0.968235f, 0.968331f, 0.968427f, + 0.968522f, 0.968617f, 0.968713f, 0.968808f, 0.968903f, 0.968998f, 0.969092f, 0.969187f, + 0.969281f, 0.969375f, 0.969470f, 0.969564f, 0.969657f, 0.969751f, 0.969845f, 0.969938f, + 0.970031f, 0.970124f, 0.970217f, 0.970310f, 0.970403f, 0.970495f, 0.970588f, 0.970680f, + 0.970772f, 0.970864f, 0.970956f, 0.971048f, 0.971139f, 0.971231f, 0.971322f, 0.971413f, + 0.971504f, 0.971595f, 0.971685f, 0.971776f, 0.971866f, 0.971957f, 0.972047f, 0.972137f, + 0.972227f, 0.972316f, 0.972406f, 0.972495f, 0.972584f, 0.972673f, 0.972762f, 0.972851f, + 0.972940f, 0.973028f, 0.973117f, 0.973205f, 0.973293f, 0.973381f, 0.973469f, 0.973557f, + 0.973644f, 0.973732f, 0.973819f, 0.973906f, 0.973993f, 0.974080f, 0.974166f, 0.974253f, + 0.974339f, 0.974426f, 0.974512f, 0.974598f, 0.974684f, 0.974769f, 0.974855f, 0.974940f, + 0.975025f, 0.975110f, 0.975195f, 0.975280f, 0.975365f, 0.975449f, 0.975534f, 0.975618f, + 0.975702f, 0.975786f, 0.975870f, 0.975954f, 0.976037f, 0.976120f, 0.976204f, 0.976287f, + 0.976370f, 0.976453f, 0.976535f, 0.976618f, 0.976700f, 0.976782f, 0.976864f, 0.976946f, + 0.977028f, 0.977110f, 0.977191f, 0.977273f, 0.977354f, 0.977435f, 0.977516f, 0.977597f, + 0.977677f, 0.977758f, 0.977838f, 0.977918f, 0.977998f, 0.978078f, 0.978158f, 0.978238f, + 0.978317f, 0.978397f, 0.978476f, 0.978555f, 0.978634f, 0.978713f, 0.978791f, 0.978870f, + 0.978948f, 0.979026f, 0.979104f, 0.979182f, 0.979260f, 0.979338f, 0.979415f, 0.979493f, + 0.979570f, 0.979647f, 0.979724f, 0.979800f, 0.979877f, 0.979954f, 0.980030f, 0.980106f, + 0.980182f, 0.980258f, 0.980334f, 0.980409f, 0.980485f, 0.980560f, 0.980635f, 0.980710f, + 0.980785f, 0.980860f, 0.980935f, 0.981009f, 0.981083f, 0.981158f, 0.981232f, 0.981305f, + 0.981379f, 0.981453f, 0.981526f, 0.981600f, 0.981673f, 0.981746f, 0.981819f, 0.981891f, + 0.981964f, 0.982036f, 0.982109f, 0.982181f, 0.982253f, 0.982325f, 0.982396f, 0.982468f, + 0.982539f, 0.982611f, 0.982682f, 0.982753f, 0.982824f, 0.982894f, 0.982965f, 0.983035f, + 0.983105f, 0.983176f, 0.983246f, 0.983315f, 0.983385f, 0.983455f, 0.983524f, 0.983593f, + 0.983662f, 0.983731f, 0.983800f, 0.983869f, 0.983937f, 0.984006f, 0.984074f, 0.984142f, + 0.984210f, 0.984278f, 0.984346f, 0.984413f, 0.984480f, 0.984548f, 0.984615f, 0.984682f, + 0.984748f, 0.984815f, 0.984882f, 0.984948f, 0.985014f, 0.985080f, 0.985146f, 0.985212f, + 0.985278f, 0.985343f, 0.985408f, 0.985474f, 0.985539f, 0.985604f, 0.985668f, 0.985733f, + 0.985798f, 0.985862f, 0.985926f, 0.985990f, 0.986054f, 0.986118f, 0.986181f, 0.986245f, + 0.986308f, 0.986371f, 0.986434f, 0.986497f, 0.986560f, 0.986623f, 0.986685f, 0.986747f, + 0.986809f, 0.986871f, 0.986933f, 0.986995f, 0.987057f, 0.987118f, 0.987179f, 0.987240f, + 0.987301f, 0.987362f, 0.987423f, 0.987484f, 0.987544f, 0.987604f, 0.987664f, 0.987724f, + 0.987784f, 0.987844f, 0.987903f, 0.987963f, 0.988022f, 0.988081f, 0.988140f, 0.988199f, + 0.988258f, 0.988316f, 0.988374f, 0.988433f, 0.988491f, 0.988549f, 0.988607f, 0.988664f, + 0.988722f, 0.988779f, 0.988836f, 0.988893f, 0.988950f, 0.989007f, 0.989064f, 0.989120f, + 0.989177f, 0.989233f, 0.989289f, 0.989345f, 0.989400f, 0.989456f, 0.989511f, 0.989567f, + 0.989622f, 0.989677f, 0.989732f, 0.989787f, 0.989841f, 0.989896f, 0.989950f, 0.990004f, + 0.990058f, 0.990112f, 0.990166f, 0.990219f, 0.990273f, 0.990326f, 0.990379f, 0.990432f, + 0.990485f, 0.990538f, 0.990590f, 0.990643f, 0.990695f, 0.990747f, 0.990799f, 0.990851f, + 0.990903f, 0.990954f, 0.991006f, 0.991057f, 0.991108f, 0.991159f, 0.991210f, 0.991260f, + 0.991311f, 0.991361f, 0.991411f, 0.991462f, 0.991511f, 0.991561f, 0.991611f, 0.991660f, + 0.991710f, 0.991759f, 0.991808f, 0.991857f, 0.991906f, 0.991954f, 0.992003f, 0.992051f, + 0.992099f, 0.992147f, 0.992195f, 0.992243f, 0.992291f, 0.992338f, 0.992385f, 0.992433f, + 0.992480f, 0.992526f, 0.992573f, 0.992620f, 0.992666f, 0.992712f, 0.992759f, 0.992805f, + 0.992850f, 0.992896f, 0.992942f, 0.992987f, 0.993032f, 0.993077f, 0.993122f, 0.993167f, + 0.993212f, 0.993257f, 0.993301f, 0.993345f, 0.993389f, 0.993433f, 0.993477f, 0.993521f, + 0.993564f, 0.993608f, 0.993651f, 0.993694f, 0.993737f, 0.993779f, 0.993822f, 0.993865f, + 0.993907f, 0.993949f, 0.993991f, 0.994033f, 0.994075f, 0.994116f, 0.994158f, 0.994199f, + 0.994240f, 0.994281f, 0.994322f, 0.994363f, 0.994404f, 0.994444f, 0.994484f, 0.994525f, + 0.994565f, 0.994604f, 0.994644f, 0.994684f, 0.994723f, 0.994762f, 0.994802f, 0.994841f, + 0.994879f, 0.994918f, 0.994957f, 0.994995f, 0.995033f, 0.995071f, 0.995109f, 0.995147f, + 0.995185f, 0.995222f, 0.995260f, 0.995297f, 0.995334f, 0.995371f, 0.995408f, 0.995444f, + 0.995481f, 0.995517f, 0.995553f, 0.995589f, 0.995625f, 0.995661f, 0.995697f, 0.995732f, + 0.995767f, 0.995803f, 0.995838f, 0.995872f, 0.995907f, 0.995942f, 0.995976f, 0.996011f, + 0.996045f, 0.996079f, 0.996113f, 0.996146f, 0.996180f, 0.996213f, 0.996247f, 0.996280f, + 0.996313f, 0.996345f, 0.996378f, 0.996411f, 0.996443f, 0.996475f, 0.996507f, 0.996539f, + 0.996571f, 0.996603f, 0.996634f, 0.996666f, 0.996697f, 0.996728f, 0.996759f, 0.996790f, + 0.996820f, 0.996851f, 0.996881f, 0.996911f, 0.996941f, 0.996971f, 0.997001f, 0.997031f, + 0.997060f, 0.997089f, 0.997119f, 0.997148f, 0.997176f, 0.997205f, 0.997234f, 0.997262f, + 0.997290f, 0.997319f, 0.997347f, 0.997374f, 0.997402f, 0.997430f, 0.997457f, 0.997484f, + 0.997511f, 0.997538f, 0.997565f, 0.997592f, 0.997618f, 0.997645f, 0.997671f, 0.997697f, + 0.997723f, 0.997749f, 0.997774f, 0.997800f, 0.997825f, 0.997851f, 0.997876f, 0.997901f, + 0.997925f, 0.997950f, 0.997974f, 0.997999f, 0.998023f, 0.998047f, 0.998071f, 0.998094f, + 0.998118f, 0.998142f, 0.998165f, 0.998188f, 0.998211f, 0.998234f, 0.998257f, 0.998279f, + 0.998302f, 0.998324f, 0.998346f, 0.998368f, 0.998390f, 0.998411f, 0.998433f, 0.998454f, + 0.998476f, 0.998497f, 0.998518f, 0.998538f, 0.998559f, 0.998580f, 0.998600f, 0.998620f, + 0.998640f, 0.998660f, 0.998680f, 0.998700f, 0.998719f, 0.998738f, 0.998758f, 0.998777f, + 0.998795f, 0.998814f, 0.998833f, 0.998851f, 0.998870f, 0.998888f, 0.998906f, 0.998924f, + 0.998941f, 0.998959f, 0.998976f, 0.998994f, 0.999011f, 0.999028f, 0.999044f, 0.999061f, + 0.999078f, 0.999094f, 0.999110f, 0.999126f, 0.999142f, 0.999158f, 0.999174f, 0.999189f, + 0.999205f, 0.999220f, 0.999235f, 0.999250f, 0.999265f, 0.999279f, 0.999294f, 0.999308f, + 0.999322f, 0.999336f, 0.999350f, 0.999364f, 0.999378f, 0.999391f, 0.999404f, 0.999418f, + 0.999431f, 0.999443f, 0.999456f, 0.999469f, 0.999481f, 0.999493f, 0.999506f, 0.999518f, + 0.999529f, 0.999541f, 0.999553f, 0.999564f, 0.999575f, 0.999586f, 0.999597f, 0.999608f, + 0.999619f, 0.999629f, 0.999640f, 0.999650f, 0.999660f, 0.999670f, 0.999680f, 0.999689f, + 0.999699f, 0.999708f, 0.999717f, 0.999726f, 0.999735f, 0.999744f, 0.999753f, 0.999761f, + 0.999769f, 0.999778f, 0.999786f, 0.999793f, 0.999801f, 0.999809f, 0.999816f, 0.999823f, + 0.999831f, 0.999838f, 0.999844f, 0.999851f, 0.999858f, 0.999864f, 0.999870f, 0.999876f, + 0.999882f, 0.999888f, 0.999894f, 0.999899f, 0.999905f, 0.999910f, 0.999915f, 0.999920f, + 0.999925f, 0.999929f, 0.999934f, 0.999938f, 0.999942f, 0.999946f, 0.999950f, 0.999954f, + 0.999958f, 0.999961f, 0.999964f, 0.999968f, 0.999971f, 0.999973f, 0.999976f, 0.999979f, + 0.999981f, 0.999983f, 0.999986f, 0.999988f, 0.999989f, 0.999991f, 0.999993f, 0.999994f, + 0.999995f, 0.999996f, 0.999997f, 0.999998f, 0.999999f, 0.999999f, 1.000000f, 1.000000f, + 0.000000f, -0.000383f, -0.000767f, -0.001150f, -0.001534f, -0.001917f, -0.002301f, -0.002684f, + -0.003068f, -0.003451f, -0.003835f, -0.004218f, -0.004602f, -0.004985f, -0.005369f, -0.005752f, + -0.006136f, -0.006519f, -0.006903f, -0.007286f, -0.007670f, -0.008053f, -0.008437f, -0.008820f, + -0.009204f, -0.009587f, -0.009971f, -0.010354f, -0.010738f, -0.011121f, -0.011505f, -0.011888f, + -0.012272f, -0.012655f, -0.013038f, -0.013422f, -0.013805f, -0.014189f, -0.014572f, -0.014956f, + -0.015339f, -0.015723f, -0.016106f, -0.016490f, -0.016873f, -0.017256f, -0.017640f, -0.018023f, + -0.018407f, -0.018790f, -0.019174f, -0.019557f, -0.019940f, -0.020324f, -0.020707f, -0.021091f, + -0.021474f, -0.021857f, -0.022241f, -0.022624f, -0.023008f, -0.023391f, -0.023774f, -0.024158f, + -0.024541f, -0.024925f, -0.025308f, -0.025691f, -0.026075f, -0.026458f, -0.026841f, -0.027225f, + -0.027608f, -0.027991f, -0.028375f, -0.028758f, -0.029142f, -0.029525f, -0.029908f, -0.030291f, + -0.030675f, -0.031058f, -0.031441f, -0.031825f, -0.032208f, -0.032591f, -0.032975f, -0.033358f, + -0.033741f, -0.034124f, -0.034508f, -0.034891f, -0.035274f, -0.035657f, -0.036041f, -0.036424f, + -0.036807f, -0.037190f, -0.037574f, -0.037957f, -0.038340f, -0.038723f, -0.039107f, -0.039490f, + -0.039873f, -0.040256f, -0.040639f, -0.041022f, -0.041406f, -0.041789f, -0.042172f, -0.042555f, + -0.042938f, -0.043321f, -0.043705f, -0.044088f, -0.044471f, -0.044854f, -0.045237f, -0.045620f, + -0.046003f, -0.046386f, -0.046769f, -0.047152f, -0.047535f, -0.047919f, -0.048302f, -0.048685f, + -0.049068f, -0.049451f, -0.049834f, -0.050217f, -0.050600f, -0.050983f, -0.051366f, -0.051749f, + -0.052132f, -0.052515f, -0.052898f, -0.053281f, -0.053664f, -0.054046f, -0.054429f, -0.054812f, + -0.055195f, -0.055578f, -0.055961f, -0.056344f, -0.056727f, -0.057110f, -0.057493f, -0.057875f, + -0.058258f, -0.058641f, -0.059024f, -0.059407f, -0.059790f, -0.060172f, -0.060555f, -0.060938f, + -0.061321f, -0.061704f, -0.062086f, -0.062469f, -0.062852f, -0.063234f, -0.063617f, -0.064000f, + -0.064383f, -0.064765f, -0.065148f, -0.065531f, -0.065913f, -0.066296f, -0.066679f, -0.067061f, + -0.067444f, -0.067827f, -0.068209f, -0.068592f, -0.068974f, -0.069357f, -0.069739f, -0.070122f, + -0.070505f, -0.070887f, -0.071270f, -0.071652f, -0.072035f, -0.072417f, -0.072800f, -0.073182f, + -0.073565f, -0.073947f, -0.074329f, -0.074712f, -0.075094f, -0.075477f, -0.075859f, -0.076241f, + -0.076624f, -0.077006f, -0.077389f, -0.077771f, -0.078153f, -0.078536f, -0.078918f, -0.079300f, + -0.079682f, -0.080065f, -0.080447f, -0.080829f, -0.081211f, -0.081594f, -0.081976f, -0.082358f, + -0.082740f, -0.083122f, -0.083505f, -0.083887f, -0.084269f, -0.084651f, -0.085033f, -0.085415f, + -0.085797f, -0.086179f, -0.086561f, -0.086943f, -0.087326f, -0.087708f, -0.088090f, -0.088472f, + -0.088854f, -0.089236f, -0.089617f, -0.089999f, -0.090381f, -0.090763f, -0.091145f, -0.091527f, + -0.091909f, -0.092291f, -0.092673f, -0.093055f, -0.093436f, -0.093818f, -0.094200f, -0.094582f, + -0.094963f, -0.095345f, -0.095727f, -0.096109f, -0.096490f, -0.096872f, -0.097254f, -0.097635f, + -0.098017f, -0.098399f, -0.098780f, -0.099162f, -0.099544f, -0.099925f, -0.100307f, -0.100688f, + -0.101070f, -0.101451f, -0.101833f, -0.102214f, -0.102596f, -0.102977f, -0.103359f, -0.103740f, + -0.104122f, -0.104503f, -0.104884f, -0.105266f, -0.105647f, -0.106028f, -0.106410f, -0.106791f, + -0.107172f, -0.107554f, -0.107935f, -0.108316f, -0.108697f, -0.109079f, -0.109460f, -0.109841f, + -0.110222f, -0.110603f, -0.110984f, -0.111366f, -0.111747f, -0.112128f, -0.112509f, -0.112890f, + -0.113271f, -0.113652f, -0.114033f, -0.114414f, -0.114795f, -0.115176f, -0.115557f, -0.115938f, + -0.116319f, -0.116700f, -0.117080f, -0.117461f, -0.117842f, -0.118223f, -0.118604f, -0.118984f, + -0.119365f, -0.119746f, -0.120127f, -0.120507f, -0.120888f, -0.121269f, -0.121649f, -0.122030f, + -0.122411f, -0.122791f, -0.123172f, -0.123552f, -0.123933f, -0.124314f, -0.124694f, -0.125075f, + -0.125455f, -0.125835f, -0.126216f, -0.126596f, -0.126977f, -0.127357f, -0.127737f, -0.128118f, + -0.128498f, -0.128878f, -0.129259f, -0.129639f, -0.130019f, -0.130399f, -0.130780f, -0.131160f, + -0.131540f, -0.131920f, -0.132300f, -0.132680f, -0.133061f, -0.133441f, -0.133821f, -0.134201f, + -0.134581f, -0.134961f, -0.135341f, -0.135721f, -0.136101f, -0.136480f, -0.136860f, -0.137240f, + -0.137620f, -0.138000f, -0.138380f, -0.138760f, -0.139139f, -0.139519f, -0.139899f, -0.140279f, + -0.140658f, -0.141038f, -0.141418f, -0.141797f, -0.142177f, -0.142556f, -0.142936f, -0.143316f, + -0.143695f, -0.144075f, -0.144454f, -0.144833f, -0.145213f, -0.145592f, -0.145972f, -0.146351f, + -0.146730f, -0.147110f, -0.147489f, -0.147868f, -0.148248f, -0.148627f, -0.149006f, -0.149385f, + -0.149765f, -0.150144f, -0.150523f, -0.150902f, -0.151281f, -0.151660f, -0.152039f, -0.152418f, + -0.152797f, -0.153176f, -0.153555f, -0.153934f, -0.154313f, -0.154692f, -0.155071f, -0.155450f, + -0.155828f, -0.156207f, -0.156586f, -0.156965f, -0.157343f, -0.157722f, -0.158101f, -0.158480f, + -0.158858f, -0.159237f, -0.159615f, -0.159994f, -0.160372f, -0.160751f, -0.161129f, -0.161508f, + -0.161886f, -0.162265f, -0.162643f, -0.163022f, -0.163400f, -0.163778f, -0.164157f, -0.164535f, + -0.164913f, -0.165291f, -0.165670f, -0.166048f, -0.166426f, -0.166804f, -0.167182f, -0.167560f, + -0.167938f, -0.168316f, -0.168694f, -0.169072f, -0.169450f, -0.169828f, -0.170206f, -0.170584f, + -0.170962f, -0.171340f, -0.171718f, -0.172095f, -0.172473f, -0.172851f, -0.173229f, -0.173606f, + -0.173984f, -0.174362f, -0.174739f, -0.175117f, -0.175494f, -0.175872f, -0.176249f, -0.176627f, + -0.177004f, -0.177382f, -0.177759f, -0.178136f, -0.178514f, -0.178891f, -0.179268f, -0.179646f, + -0.180023f, -0.180400f, -0.180777f, -0.181154f, -0.181532f, -0.181909f, -0.182286f, -0.182663f, + -0.183040f, -0.183417f, -0.183794f, -0.184171f, -0.184548f, -0.184925f, -0.185301f, -0.185678f, + -0.186055f, -0.186432f, -0.186809f, -0.187185f, -0.187562f, -0.187939f, -0.188315f, -0.188692f, + -0.189069f, -0.189445f, -0.189822f, -0.190198f, -0.190575f, -0.190951f, -0.191328f, -0.191704f, + -0.192080f, -0.192457f, -0.192833f, -0.193209f, -0.193586f, -0.193962f, -0.194338f, -0.194714f, + -0.195090f, -0.195466f, -0.195843f, -0.196219f, -0.196595f, -0.196971f, -0.197347f, -0.197722f, + -0.198098f, -0.198474f, -0.198850f, -0.199226f, -0.199602f, -0.199978f, -0.200353f, -0.200729f, + -0.201105f, -0.201480f, -0.201856f, -0.202231f, -0.202607f, -0.202983f, -0.203358f, -0.203734f, + -0.204109f, -0.204484f, -0.204860f, -0.205235f, -0.205610f, -0.205986f, -0.206361f, -0.206736f, + -0.207111f, -0.207487f, -0.207862f, -0.208237f, -0.208612f, -0.208987f, -0.209362f, -0.209737f, + -0.210112f, -0.210487f, -0.210862f, -0.211237f, -0.211611f, -0.211986f, -0.212361f, -0.212736f, + -0.213110f, -0.213485f, -0.213860f, -0.214234f, -0.214609f, -0.214983f, -0.215358f, -0.215732f, + -0.216107f, -0.216481f, -0.216856f, -0.217230f, -0.217604f, -0.217979f, -0.218353f, -0.218727f, + -0.219101f, -0.219475f, -0.219850f, -0.220224f, -0.220598f, -0.220972f, -0.221346f, -0.221720f, + -0.222094f, -0.222468f, -0.222841f, -0.223215f, -0.223589f, -0.223963f, -0.224337f, -0.224710f, + -0.225084f, -0.225458f, -0.225831f, -0.226205f, -0.226578f, -0.226952f, -0.227325f, -0.227699f, + -0.228072f, -0.228445f, -0.228819f, -0.229192f, -0.229565f, -0.229939f, -0.230312f, -0.230685f, + -0.231058f, -0.231431f, -0.231804f, -0.232177f, -0.232550f, -0.232923f, -0.233296f, -0.233669f, + -0.234042f, -0.234415f, -0.234788f, -0.235160f, -0.235533f, -0.235906f, -0.236278f, -0.236651f, + -0.237024f, -0.237396f, -0.237769f, -0.238141f, -0.238514f, -0.238886f, -0.239258f, -0.239631f, + -0.240003f, -0.240375f, -0.240748f, -0.241120f, -0.241492f, -0.241864f, -0.242236f, -0.242608f, + -0.242980f, -0.243352f, -0.243724f, -0.244096f, -0.244468f, -0.244840f, -0.245212f, -0.245583f, + -0.245955f, -0.246327f, -0.246698f, -0.247070f, -0.247442f, -0.247813f, -0.248185f, -0.248556f, + -0.248928f, -0.249299f, -0.249670f, -0.250042f, -0.250413f, -0.250784f, -0.251155f, -0.251527f, + -0.251898f, -0.252269f, -0.252640f, -0.253011f, -0.253382f, -0.253753f, -0.254124f, -0.254495f, + -0.254866f, -0.255236f, -0.255607f, -0.255978f, -0.256349f, -0.256719f, -0.257090f, -0.257461f, + -0.257831f, -0.258202f, -0.258572f, -0.258943f, -0.259313f, -0.259683f, -0.260054f, -0.260424f, + -0.260794f, -0.261164f, -0.261534f, -0.261905f, -0.262275f, -0.262645f, -0.263015f, -0.263385f, + -0.263755f, -0.264125f, -0.264494f, -0.264864f, -0.265234f, -0.265604f, -0.265973f, -0.266343f, + -0.266713f, -0.267082f, -0.267452f, -0.267821f, -0.268191f, -0.268560f, -0.268930f, -0.269299f, + -0.269668f, -0.270038f, -0.270407f, -0.270776f, -0.271145f, -0.271514f, -0.271883f, -0.272252f, + -0.272621f, -0.272990f, -0.273359f, -0.273728f, -0.274097f, -0.274466f, -0.274834f, -0.275203f, + -0.275572f, -0.275940f, -0.276309f, -0.276678f, -0.277046f, -0.277415f, -0.277783f, -0.278151f, + -0.278520f, -0.278888f, -0.279256f, -0.279624f, -0.279993f, -0.280361f, -0.280729f, -0.281097f, + -0.281465f, -0.281833f, -0.282201f, -0.282569f, -0.282937f, -0.283304f, -0.283672f, -0.284040f, + -0.284408f, -0.284775f, -0.285143f, -0.285510f, -0.285878f, -0.286245f, -0.286613f, -0.286980f, + -0.287347f, -0.287715f, -0.288082f, -0.288449f, -0.288816f, -0.289184f, -0.289551f, -0.289918f, + -0.290285f, -0.290652f, -0.291019f, -0.291385f, -0.291752f, -0.292119f, -0.292486f, -0.292852f, + -0.293219f, -0.293586f, -0.293952f, -0.294319f, -0.294685f, -0.295052f, -0.295418f, -0.295785f, + -0.296151f, -0.296517f, -0.296883f, -0.297250f, -0.297616f, -0.297982f, -0.298348f, -0.298714f, + -0.299080f, -0.299446f, -0.299812f, -0.300177f, -0.300543f, -0.300909f, -0.301275f, -0.301640f, + -0.302006f, -0.302372f, -0.302737f, -0.303103f, -0.303468f, -0.303833f, -0.304199f, -0.304564f, + -0.304929f, -0.305294f, -0.305660f, -0.306025f, -0.306390f, -0.306755f, -0.307120f, -0.307485f, + -0.307850f, -0.308214f, -0.308579f, -0.308944f, -0.309309f, -0.309673f, -0.310038f, -0.310403f, + -0.310767f, -0.311132f, -0.311496f, -0.311860f, -0.312225f, -0.312589f, -0.312953f, -0.313318f, + -0.313682f, -0.314046f, -0.314410f, -0.314774f, -0.315138f, -0.315502f, -0.315866f, -0.316230f, + -0.316593f, -0.316957f, -0.317321f, -0.317684f, -0.318048f, -0.318412f, -0.318775f, -0.319139f, + -0.319502f, -0.319865f, -0.320229f, -0.320592f, -0.320955f, -0.321318f, -0.321682f, -0.322045f, + -0.322408f, -0.322771f, -0.323134f, -0.323497f, -0.323859f, -0.324222f, -0.324585f, -0.324948f, + -0.325310f, -0.325673f, -0.326035f, -0.326398f, -0.326760f, -0.327123f, -0.327485f, -0.327848f, + -0.328210f, -0.328572f, -0.328934f, -0.329296f, -0.329658f, -0.330020f, -0.330382f, -0.330744f, + -0.331106f, -0.331468f, -0.331830f, -0.332192f, -0.332553f, -0.332915f, -0.333277f, -0.333638f, + -0.334000f, -0.334361f, -0.334722f, -0.335084f, -0.335445f, -0.335806f, -0.336168f, -0.336529f, + -0.336890f, -0.337251f, -0.337612f, -0.337973f, -0.338334f, -0.338695f, -0.339055f, -0.339416f, + -0.339777f, -0.340138f, -0.340498f, -0.340859f, -0.341219f, -0.341580f, -0.341940f, -0.342300f, + -0.342661f, -0.343021f, -0.343381f, -0.343741f, -0.344101f, -0.344461f, -0.344821f, -0.345181f, + -0.345541f, -0.345901f, -0.346261f, -0.346621f, -0.346980f, -0.347340f, -0.347700f, -0.348059f, + -0.348419f, -0.348778f, -0.349138f, -0.349497f, -0.349856f, -0.350215f, -0.350575f, -0.350934f, + -0.351293f, -0.351652f, -0.352011f, -0.352370f, -0.352729f, -0.353087f, -0.353446f, -0.353805f, + -0.354164f, -0.354522f, -0.354881f, -0.355239f, -0.355598f, -0.355956f, -0.356314f, -0.356673f, + -0.357031f, -0.357389f, -0.357747f, -0.358105f, -0.358463f, -0.358821f, -0.359179f, -0.359537f, + -0.359895f, -0.360253f, -0.360611f, -0.360968f, -0.361326f, -0.361683f, -0.362041f, -0.362398f, + -0.362756f, -0.363113f, -0.363470f, -0.363828f, -0.364185f, -0.364542f, -0.364899f, -0.365256f, + -0.365613f, -0.365970f, -0.366327f, -0.366684f, -0.367040f, -0.367397f, -0.367754f, -0.368110f, + -0.368467f, -0.368823f, -0.369180f, -0.369536f, -0.369892f, -0.370249f, -0.370605f, -0.370961f, + -0.371317f, -0.371673f, -0.372029f, -0.372385f, -0.372741f, -0.373097f, -0.373453f, -0.373808f, + -0.374164f, -0.374520f, -0.374875f, -0.375231f, -0.375586f, -0.375942f, -0.376297f, -0.376652f, + -0.377007f, -0.377363f, -0.377718f, -0.378073f, -0.378428f, -0.378783f, -0.379138f, -0.379492f, + -0.379847f, -0.380202f, -0.380557f, -0.380911f, -0.381266f, -0.381620f, -0.381975f, -0.382329f, + -0.382683f, -0.383038f, -0.383392f, -0.383746f, -0.384100f, -0.384454f, -0.384808f, -0.385162f, + -0.385516f, -0.385870f, -0.386224f, -0.386577f, -0.386931f, -0.387285f, -0.387638f, -0.387992f, + -0.388345f, -0.388698f, -0.389052f, -0.389405f, -0.389758f, -0.390111f, -0.390464f, -0.390817f, + -0.391170f, -0.391523f, -0.391876f, -0.392229f, -0.392582f, -0.392934f, -0.393287f, -0.393640f, + -0.393992f, -0.394344f, -0.394697f, -0.395049f, -0.395401f, -0.395754f, -0.396106f, -0.396458f, + -0.396810f, -0.397162f, -0.397514f, -0.397866f, -0.398218f, -0.398569f, -0.398921f, -0.399273f, + -0.399624f, -0.399976f, -0.400327f, -0.400679f, -0.401030f, -0.401381f, -0.401732f, -0.402084f, + -0.402435f, -0.402786f, -0.403137f, -0.403488f, -0.403838f, -0.404189f, -0.404540f, -0.404891f, + -0.405241f, -0.405592f, -0.405942f, -0.406293f, -0.406643f, -0.406994f, -0.407344f, -0.407694f, + -0.408044f, -0.408394f, -0.408744f, -0.409094f, -0.409444f, -0.409794f, -0.410144f, -0.410493f, + -0.410843f, -0.411193f, -0.411542f, -0.411892f, -0.412241f, -0.412591f, -0.412940f, -0.413289f, + -0.413638f, -0.413987f, -0.414337f, -0.414685f, -0.415034f, -0.415383f, -0.415732f, -0.416081f, + -0.416430f, -0.416778f, -0.417127f, -0.417475f, -0.417824f, -0.418172f, -0.418520f, -0.418869f, + -0.419217f, -0.419565f, -0.419913f, -0.420261f, -0.420609f, -0.420957f, -0.421305f, -0.421653f, + -0.422000f, -0.422348f, -0.422695f, -0.423043f, -0.423390f, -0.423738f, -0.424085f, -0.424432f, + -0.424780f, -0.425127f, -0.425474f, -0.425821f, -0.426168f, -0.426515f, -0.426862f, -0.427208f, + -0.427555f, -0.427902f, -0.428248f, -0.428595f, -0.428941f, -0.429288f, -0.429634f, -0.429980f, + -0.430326f, -0.430673f, -0.431019f, -0.431365f, -0.431711f, -0.432057f, -0.432402f, -0.432748f, + -0.433094f, -0.433439f, -0.433785f, -0.434131f, -0.434476f, -0.434821f, -0.435167f, -0.435512f, + -0.435857f, -0.436202f, -0.436547f, -0.436892f, -0.437237f, -0.437582f, -0.437927f, -0.438272f, + -0.438616f, -0.438961f, -0.439305f, -0.439650f, -0.439994f, -0.440339f, -0.440683f, -0.441027f, + -0.441371f, -0.441715f, -0.442059f, -0.442403f, -0.442747f, -0.443091f, -0.443435f, -0.443779f, + -0.444122f, -0.444466f, -0.444809f, -0.445153f, -0.445496f, -0.445839f, -0.446183f, -0.446526f, + -0.446869f, -0.447212f, -0.447555f, -0.447898f, -0.448241f, -0.448583f, -0.448926f, -0.449269f, + -0.449611f, -0.449954f, -0.450296f, -0.450639f, -0.450981f, -0.451323f, -0.451665f, -0.452008f, + -0.452350f, -0.452692f, -0.453033f, -0.453375f, -0.453717f, -0.454059f, -0.454400f, -0.454742f, + -0.455084f, -0.455425f, -0.455766f, -0.456108f, -0.456449f, -0.456790f, -0.457131f, -0.457472f, + -0.457813f, -0.458154f, -0.458495f, -0.458836f, -0.459177f, -0.459517f, -0.459858f, -0.460198f, + -0.460539f, -0.460879f, -0.461219f, -0.461560f, -0.461900f, -0.462240f, -0.462580f, -0.462920f, + -0.463260f, -0.463600f, -0.463939f, -0.464279f, -0.464619f, -0.464958f, -0.465298f, -0.465637f, + -0.465977f, -0.466316f, -0.466655f, -0.466994f, -0.467333f, -0.467672f, -0.468011f, -0.468350f, + -0.468689f, -0.469028f, -0.469366f, -0.469705f, -0.470043f, -0.470382f, -0.470720f, -0.471058f, + -0.471397f, -0.471735f, -0.472073f, -0.472411f, -0.472749f, -0.473087f, -0.473425f, -0.473763f, + -0.474100f, -0.474438f, -0.474775f, -0.475113f, -0.475450f, -0.475788f, -0.476125f, -0.476462f, + -0.476799f, -0.477136f, -0.477473f, -0.477810f, -0.478147f, -0.478484f, -0.478821f, -0.479157f, + -0.479494f, -0.479830f, -0.480167f, -0.480503f, -0.480839f, -0.481176f, -0.481512f, -0.481848f, + -0.482184f, -0.482520f, -0.482856f, -0.483191f, -0.483527f, -0.483863f, -0.484198f, -0.484534f, + -0.484869f, -0.485205f, -0.485540f, -0.485875f, -0.486210f, -0.486545f, -0.486880f, -0.487215f, + -0.487550f, -0.487885f, -0.488220f, -0.488554f, -0.488889f, -0.489223f, -0.489558f, -0.489892f, + -0.490226f, -0.490561f, -0.490895f, -0.491229f, -0.491563f, -0.491897f, -0.492231f, -0.492564f, + -0.492898f, -0.493232f, -0.493565f, -0.493899f, -0.494232f, -0.494566f, -0.494899f, -0.495232f, + -0.495565f, -0.495898f, -0.496231f, -0.496564f, -0.496897f, -0.497230f, -0.497562f, -0.497895f, + -0.498228f, -0.498560f, -0.498893f, -0.499225f, -0.499557f, -0.499889f, -0.500221f, -0.500553f, + -0.500885f, -0.501217f, -0.501549f, -0.501881f, -0.502212f, -0.502544f, -0.502876f, -0.503207f, + -0.503538f, -0.503870f, -0.504201f, -0.504532f, -0.504863f, -0.505194f, -0.505525f, -0.505856f, + -0.506187f, -0.506517f, -0.506848f, -0.507179f, -0.507509f, -0.507839f, -0.508170f, -0.508500f, + -0.508830f, -0.509160f, -0.509490f, -0.509820f, -0.510150f, -0.510480f, -0.510810f, -0.511139f, + -0.511469f, -0.511798f, -0.512128f, -0.512457f, -0.512786f, -0.513116f, -0.513445f, -0.513774f, + -0.514103f, -0.514432f, -0.514760f, -0.515089f, -0.515418f, -0.515746f, -0.516075f, -0.516403f, + -0.516732f, -0.517060f, -0.517388f, -0.517716f, -0.518045f, -0.518372f, -0.518700f, -0.519028f, + -0.519356f, -0.519684f, -0.520011f, -0.520339f, -0.520666f, -0.520994f, -0.521321f, -0.521648f, + -0.521975f, -0.522302f, -0.522629f, -0.522956f, -0.523283f, -0.523610f, -0.523937f, -0.524263f, + -0.524590f, -0.524916f, -0.525243f, -0.525569f, -0.525895f, -0.526221f, -0.526547f, -0.526873f, + -0.527199f, -0.527525f, -0.527851f, -0.528176f, -0.528502f, -0.528828f, -0.529153f, -0.529478f, + -0.529804f, -0.530129f, -0.530454f, -0.530779f, -0.531104f, -0.531429f, -0.531754f, -0.532078f, + -0.532403f, -0.532728f, -0.533052f, -0.533377f, -0.533701f, -0.534025f, -0.534349f, -0.534674f, + -0.534998f, -0.535322f, -0.535645f, -0.535969f, -0.536293f, -0.536617f, -0.536940f, -0.537264f, + -0.537587f, -0.537910f, -0.538234f, -0.538557f, -0.538880f, -0.539203f, -0.539526f, -0.539849f, + -0.540171f, -0.540494f, -0.540817f, -0.541139f, -0.541462f, -0.541784f, -0.542106f, -0.542429f, + -0.542751f, -0.543073f, -0.543395f, -0.543717f, -0.544039f, -0.544360f, -0.544682f, -0.545003f, + -0.545325f, -0.545646f, -0.545968f, -0.546289f, -0.546610f, -0.546931f, -0.547252f, -0.547573f, + -0.547894f, -0.548215f, -0.548536f, -0.548856f, -0.549177f, -0.549497f, -0.549818f, -0.550138f, + -0.550458f, -0.550778f, -0.551098f, -0.551418f, -0.551738f, -0.552058f, -0.552378f, -0.552697f, + -0.553017f, -0.553336f, -0.553656f, -0.553975f, -0.554294f, -0.554613f, -0.554932f, -0.555251f, + -0.555570f, -0.555889f, -0.556208f, -0.556526f, -0.556845f, -0.557164f, -0.557482f, -0.557800f, + -0.558119f, -0.558437f, -0.558755f, -0.559073f, -0.559391f, -0.559709f, -0.560026f, -0.560344f, + -0.560662f, -0.560979f, -0.561297f, -0.561614f, -0.561931f, -0.562248f, -0.562565f, -0.562882f, + -0.563199f, -0.563516f, -0.563833f, -0.564150f, -0.564466f, -0.564783f, -0.565099f, -0.565416f, + -0.565732f, -0.566048f, -0.566364f, -0.566680f, -0.566996f, -0.567312f, -0.567628f, -0.567943f, + -0.568259f, -0.568574f, -0.568890f, -0.569205f, -0.569521f, -0.569836f, -0.570151f, -0.570466f, + -0.570781f, -0.571096f, -0.571410f, -0.571725f, -0.572040f, -0.572354f, -0.572669f, -0.572983f, + -0.573297f, -0.573611f, -0.573925f, -0.574239f, -0.574553f, -0.574867f, -0.575181f, -0.575495f, + -0.575808f, -0.576122f, -0.576435f, -0.576748f, -0.577062f, -0.577375f, -0.577688f, -0.578001f, + -0.578314f, -0.578627f, -0.578939f, -0.579252f, -0.579565f, -0.579877f, -0.580189f, -0.580502f, + -0.580814f, -0.581126f, -0.581438f, -0.581750f, -0.582062f, -0.582374f, -0.582685f, -0.582997f, + -0.583309f, -0.583620f, -0.583931f, -0.584243f, -0.584554f, -0.584865f, -0.585176f, -0.585487f, + -0.585798f, -0.586109f, -0.586419f, -0.586730f, -0.587040f, -0.587351f, -0.587661f, -0.587971f, + -0.588282f, -0.588592f, -0.588902f, -0.589212f, -0.589521f, -0.589831f, -0.590141f, -0.590450f, + -0.590760f, -0.591069f, -0.591378f, -0.591688f, -0.591997f, -0.592306f, -0.592615f, -0.592924f, + -0.593232f, -0.593541f, -0.593850f, -0.594158f, -0.594467f, -0.594775f, -0.595083f, -0.595391f, + -0.595699f, -0.596007f, -0.596315f, -0.596623f, -0.596931f, -0.597238f, -0.597546f, -0.597853f, + -0.598161f, -0.598468f, -0.598775f, -0.599082f, -0.599389f, -0.599696f, -0.600003f, -0.600310f, + -0.600616f, -0.600923f, -0.601230f, -0.601536f, -0.601842f, -0.602148f, -0.602455f, -0.602761f, + -0.603067f, -0.603372f, -0.603678f, -0.603984f, -0.604290f, -0.604595f, -0.604900f, -0.605206f, + -0.605511f, -0.605816f, -0.606121f, -0.606426f, -0.606731f, -0.607036f, -0.607341f, -0.607645f, + -0.607950f, -0.608254f, -0.608559f, -0.608863f, -0.609167f, -0.609471f, -0.609775f, -0.610079f, + -0.610383f, -0.610687f, -0.610990f, -0.611294f, -0.611597f, -0.611901f, -0.612204f, -0.612507f, + -0.612810f, -0.613113f, -0.613416f, -0.613719f, -0.614022f, -0.614324f, -0.614627f, -0.614929f, + -0.615232f, -0.615534f, -0.615836f, -0.616138f, -0.616440f, -0.616742f, -0.617044f, -0.617346f, + -0.617647f, -0.617949f, -0.618250f, -0.618552f, -0.618853f, -0.619154f, -0.619455f, -0.619756f, + -0.620057f, -0.620358f, -0.620659f, -0.620959f, -0.621260f, -0.621560f, -0.621861f, -0.622161f, + -0.622461f, -0.622761f, -0.623061f, -0.623361f, -0.623661f, -0.623961f, -0.624260f, -0.624560f, + -0.624860f, -0.625159f, -0.625458f, -0.625757f, -0.626056f, -0.626355f, -0.626654f, -0.626953f, + -0.627252f, -0.627550f, -0.627849f, -0.628147f, -0.628446f, -0.628744f, -0.629042f, -0.629340f, + -0.629638f, -0.629936f, -0.630234f, -0.630532f, -0.630829f, -0.631127f, -0.631424f, -0.631721f, + -0.632019f, -0.632316f, -0.632613f, -0.632910f, -0.633207f, -0.633504f, -0.633800f, -0.634097f, + -0.634393f, -0.634690f, -0.634986f, -0.635282f, -0.635578f, -0.635874f, -0.636170f, -0.636466f, + -0.636762f, -0.637057f, -0.637353f, -0.637649f, -0.637944f, -0.638239f, -0.638534f, -0.638829f, + -0.639124f, -0.639419f, -0.639714f, -0.640009f, -0.640303f, -0.640598f, -0.640892f, -0.641187f, + -0.641481f, -0.641775f, -0.642069f, -0.642363f, -0.642657f, -0.642951f, -0.643245f, -0.643538f, + -0.643832f, -0.644125f, -0.644418f, -0.644711f, -0.645005f, -0.645298f, -0.645590f, -0.645883f, + -0.646176f, -0.646469f, -0.646761f, -0.647054f, -0.647346f, -0.647638f, -0.647930f, -0.648222f, + -0.648514f, -0.648806f, -0.649098f, -0.649390f, -0.649681f, -0.649973f, -0.650264f, -0.650555f, + -0.650847f, -0.651138f, -0.651429f, -0.651720f, -0.652011f, -0.652301f, -0.652592f, -0.652882f, + -0.653173f, -0.653463f, -0.653753f, -0.654044f, -0.654334f, -0.654624f, -0.654913f, -0.655203f, + -0.655493f, -0.655782f, -0.656072f, -0.656361f, -0.656651f, -0.656940f, -0.657229f, -0.657518f, + -0.657807f, -0.658095f, -0.658384f, -0.658673f, -0.658961f, -0.659250f, -0.659538f, -0.659826f, + -0.660114f, -0.660402f, -0.660690f, -0.660978f, -0.661266f, -0.661553f, -0.661841f, -0.662128f, + -0.662416f, -0.662703f, -0.662990f, -0.663277f, -0.663564f, -0.663851f, -0.664138f, -0.664424f, + -0.664711f, -0.664997f, -0.665284f, -0.665570f, -0.665856f, -0.666142f, -0.666428f, -0.666714f, + -0.667000f, -0.667286f, -0.667571f, -0.667857f, -0.668142f, -0.668427f, -0.668712f, -0.668998f, + -0.669283f, -0.669567f, -0.669852f, -0.670137f, -0.670422f, -0.670706f, -0.670990f, -0.671275f, + -0.671559f, -0.671843f, -0.672127f, -0.672411f, -0.672695f, -0.672978f, -0.673262f, -0.673546f, + -0.673829f, -0.674112f, -0.674396f, -0.674679f, -0.674962f, -0.675245f, -0.675527f, -0.675810f, + -0.676093f, -0.676375f, -0.676658f, -0.676940f, -0.677222f, -0.677504f, -0.677786f, -0.678068f, + -0.678350f, -0.678632f, -0.678913f, -0.679195f, -0.679476f, -0.679758f, -0.680039f, -0.680320f, + -0.680601f, -0.680882f, -0.681163f, -0.681443f, -0.681724f, -0.682005f, -0.682285f, -0.682565f, + -0.682846f, -0.683126f, -0.683406f, -0.683686f, -0.683965f, -0.684245f, -0.684525f, -0.684804f, + -0.685084f, -0.685363f, -0.685642f, -0.685921f, -0.686200f, -0.686479f, -0.686758f, -0.687037f, + -0.687315f, -0.687594f, -0.687872f, -0.688151f, -0.688429f, -0.688707f, -0.688985f, -0.689263f, + -0.689541f, -0.689818f, -0.690096f, -0.690373f, -0.690651f, -0.690928f, -0.691205f, -0.691482f, + -0.691759f, -0.692036f, -0.692313f, -0.692590f, -0.692866f, -0.693143f, -0.693419f, -0.693695f, + -0.693971f, -0.694248f, -0.694524f, -0.694799f, -0.695075f, -0.695351f, -0.695626f, -0.695902f, + -0.696177f, -0.696452f, -0.696728f, -0.697003f, -0.697277f, -0.697552f, -0.697827f, -0.698102f, + -0.698376f, -0.698651f, -0.698925f, -0.699199f, -0.699473f, -0.699747f, -0.700021f, -0.700295f, + -0.700569f, -0.700842f, -0.701116f, -0.701389f, -0.701663f, -0.701936f, -0.702209f, -0.702482f, + -0.702755f, -0.703028f, -0.703300f, -0.703573f, -0.703845f, -0.704118f, -0.704390f, -0.704662f, + -0.704934f, -0.705206f, -0.705478f, -0.705750f, -0.706021f, -0.706293f, -0.706564f, -0.706836f, + -0.707107f, -0.707378f, -0.707649f, -0.707920f, -0.708191f, -0.708461f, -0.708732f, -0.709002f, + -0.709273f, -0.709543f, -0.709813f, -0.710083f, -0.710353f, -0.710623f, -0.710893f, -0.711163f, + -0.711432f, -0.711702f, -0.711971f, -0.712240f, -0.712509f, -0.712778f, -0.713047f, -0.713316f, + -0.713585f, -0.713853f, -0.714122f, -0.714390f, -0.714659f, -0.714927f, -0.715195f, -0.715463f, + -0.715731f, -0.715999f, -0.716266f, -0.716534f, -0.716801f, -0.717069f, -0.717336f, -0.717603f, + -0.717870f, -0.718137f, -0.718404f, -0.718670f, -0.718937f, -0.719204f, -0.719470f, -0.719736f, + -0.720003f, -0.720269f, -0.720535f, -0.720800f, -0.721066f, -0.721332f, -0.721597f, -0.721863f, + -0.722128f, -0.722393f, -0.722659f, -0.722924f, -0.723188f, -0.723453f, -0.723718f, -0.723983f, + -0.724247f, -0.724511f, -0.724776f, -0.725040f, -0.725304f, -0.725568f, -0.725832f, -0.726095f, + -0.726359f, -0.726623f, -0.726886f, -0.727149f, -0.727413f, -0.727676f, -0.727939f, -0.728202f, + -0.728464f, -0.728727f, -0.728990f, -0.729252f, -0.729514f, -0.729777f, -0.730039f, -0.730301f, + -0.730563f, -0.730825f, -0.731086f, -0.731348f, -0.731609f, -0.731871f, -0.732132f, -0.732393f, + -0.732654f, -0.732915f, -0.733176f, -0.733437f, -0.733697f, -0.733958f, -0.734218f, -0.734479f, + -0.734739f, -0.734999f, -0.735259f, -0.735519f, -0.735779f, -0.736038f, -0.736298f, -0.736557f, + -0.736817f, -0.737076f, -0.737335f, -0.737594f, -0.737853f, -0.738112f, -0.738370f, -0.738629f, + -0.738887f, -0.739146f, -0.739404f, -0.739662f, -0.739920f, -0.740178f, -0.740436f, -0.740694f, + -0.740951f, -0.741209f, -0.741466f, -0.741723f, -0.741980f, -0.742237f, -0.742494f, -0.742751f, + -0.743008f, -0.743265f, -0.743521f, -0.743777f, -0.744034f, -0.744290f, -0.744546f, -0.744802f, + -0.745058f, -0.745314f, -0.745569f, -0.745825f, -0.746080f, -0.746335f, -0.746591f, -0.746846f, + -0.747101f, -0.747355f, -0.747610f, -0.747865f, -0.748119f, -0.748374f, -0.748628f, -0.748882f, + -0.749136f, -0.749390f, -0.749644f, -0.749898f, -0.750152f, -0.750405f, -0.750659f, -0.750912f, + -0.751165f, -0.751418f, -0.751671f, -0.751924f, -0.752177f, -0.752429f, -0.752682f, -0.752934f, + -0.753187f, -0.753439f, -0.753691f, -0.753943f, -0.754195f, -0.754447f, -0.754698f, -0.754950f, + -0.755201f, -0.755453f, -0.755704f, -0.755955f, -0.756206f, -0.756457f, -0.756708f, -0.756958f, + -0.757209f, -0.757459f, -0.757710f, -0.757960f, -0.758210f, -0.758460f, -0.758710f, -0.758960f, + -0.759209f, -0.759459f, -0.759708f, -0.759957f, -0.760207f, -0.760456f, -0.760705f, -0.760954f, + -0.761202f, -0.761451f, -0.761700f, -0.761948f, -0.762196f, -0.762444f, -0.762693f, -0.762941f, + -0.763188f, -0.763436f, -0.763684f, -0.763931f, -0.764179f, -0.764426f, -0.764673f, -0.764920f, + -0.765167f, -0.765414f, -0.765661f, -0.765907f, -0.766154f, -0.766400f, -0.766647f, -0.766893f, + -0.767139f, -0.767385f, -0.767631f, -0.767876f, -0.768122f, -0.768368f, -0.768613f, -0.768858f, + -0.769103f, -0.769348f, -0.769593f, -0.769838f, -0.770083f, -0.770327f, -0.770572f, -0.770816f, + -0.771061f, -0.771305f, -0.771549f, -0.771793f, -0.772036f, -0.772280f, -0.772524f, -0.772767f, + -0.773010f, -0.773254f, -0.773497f, -0.773740f, -0.773983f, -0.774225f, -0.774468f, -0.774711f, + -0.774953f, -0.775195f, -0.775438f, -0.775680f, -0.775922f, -0.776164f, -0.776405f, -0.776647f, + -0.776888f, -0.777130f, -0.777371f, -0.777612f, -0.777853f, -0.778094f, -0.778335f, -0.778576f, + -0.778817f, -0.779057f, -0.779297f, -0.779538f, -0.779778f, -0.780018f, -0.780258f, -0.780498f, + -0.780737f, -0.780977f, -0.781216f, -0.781456f, -0.781695f, -0.781934f, -0.782173f, -0.782412f, + -0.782651f, -0.782889f, -0.783128f, -0.783366f, -0.783605f, -0.783843f, -0.784081f, -0.784319f, + -0.784557f, -0.784794f, -0.785032f, -0.785269f, -0.785507f, -0.785744f, -0.785981f, -0.786218f, + -0.786455f, -0.786692f, -0.786929f, -0.787165f, -0.787402f, -0.787638f, -0.787874f, -0.788110f, + -0.788346f, -0.788582f, -0.788818f, -0.789054f, -0.789289f, -0.789525f, -0.789760f, -0.789995f, + -0.790230f, -0.790465f, -0.790700f, -0.790935f, -0.791169f, -0.791404f, -0.791638f, -0.791872f, + -0.792107f, -0.792341f, -0.792575f, -0.792808f, -0.793042f, -0.793276f, -0.793509f, -0.793742f, + -0.793975f, -0.794209f, -0.794442f, -0.794674f, -0.794907f, -0.795140f, -0.795372f, -0.795605f, + -0.795837f, -0.796069f, -0.796301f, -0.796533f, -0.796765f, -0.796996f, -0.797228f, -0.797459f, + -0.797691f, -0.797922f, -0.798153f, -0.798384f, -0.798615f, -0.798846f, -0.799076f, -0.799307f, + -0.799537f, -0.799768f, -0.799998f, -0.800228f, -0.800458f, -0.800687f, -0.800917f, -0.801147f, + -0.801376f, -0.801606f, -0.801835f, -0.802064f, -0.802293f, -0.802522f, -0.802750f, -0.802979f, + -0.803208f, -0.803436f, -0.803664f, -0.803892f, -0.804120f, -0.804348f, -0.804576f, -0.804804f, + -0.805031f, -0.805259f, -0.805486f, -0.805713f, -0.805940f, -0.806167f, -0.806394f, -0.806621f, + -0.806848f, -0.807074f, -0.807300f, -0.807527f, -0.807753f, -0.807979f, -0.808205f, -0.808430f, + -0.808656f, -0.808882f, -0.809107f, -0.809332f, -0.809558f, -0.809783f, -0.810008f, -0.810232f, + -0.810457f, -0.810682f, -0.810906f, -0.811131f, -0.811355f, -0.811579f, -0.811803f, -0.812027f, + -0.812251f, -0.812474f, -0.812698f, -0.812921f, -0.813144f, -0.813368f, -0.813591f, -0.813814f, + -0.814036f, -0.814259f, -0.814482f, -0.814704f, -0.814926f, -0.815149f, -0.815371f, -0.815593f, + -0.815814f, -0.816036f, -0.816258f, -0.816479f, -0.816701f, -0.816922f, -0.817143f, -0.817364f, + -0.817585f, -0.817806f, -0.818026f, -0.818247f, -0.818467f, -0.818687f, -0.818908f, -0.819128f, + -0.819348f, -0.819567f, -0.819787f, -0.820007f, -0.820226f, -0.820445f, -0.820664f, -0.820884f, + -0.821102f, -0.821321f, -0.821540f, -0.821759f, -0.821977f, -0.822195f, -0.822414f, -0.822632f, + -0.822850f, -0.823068f, -0.823285f, -0.823503f, -0.823721f, -0.823938f, -0.824155f, -0.824372f, + -0.824589f, -0.824806f, -0.825023f, -0.825240f, -0.825456f, -0.825673f, -0.825889f, -0.826105f, + -0.826321f, -0.826537f, -0.826753f, -0.826968f, -0.827184f, -0.827399f, -0.827615f, -0.827830f, + -0.828045f, -0.828260f, -0.828475f, -0.828690f, -0.828904f, -0.829119f, -0.829333f, -0.829547f, + -0.829761f, -0.829975f, -0.830189f, -0.830403f, -0.830616f, -0.830830f, -0.831043f, -0.831257f, + -0.831470f, -0.831683f, -0.831895f, -0.832108f, -0.832321f, -0.832533f, -0.832746f, -0.832958f, + -0.833170f, -0.833382f, -0.833594f, -0.833806f, -0.834018f, -0.834229f, -0.834440f, -0.834652f, + -0.834863f, -0.835074f, -0.835285f, -0.835496f, -0.835706f, -0.835917f, -0.836127f, -0.836338f, + -0.836548f, -0.836758f, -0.836968f, -0.837178f, -0.837387f, -0.837597f, -0.837806f, -0.838015f, + -0.838225f, -0.838434f, -0.838643f, -0.838852f, -0.839060f, -0.839269f, -0.839477f, -0.839686f, + -0.839894f, -0.840102f, -0.840310f, -0.840518f, -0.840725f, -0.840933f, -0.841140f, -0.841348f, + -0.841555f, -0.841762f, -0.841969f, -0.842176f, -0.842383f, -0.842589f, -0.842796f, -0.843002f, + -0.843208f, -0.843414f, -0.843620f, -0.843826f, -0.844032f, -0.844238f, -0.844443f, -0.844648f, + -0.844854f, -0.845059f, -0.845264f, -0.845469f, -0.845673f, -0.845878f, -0.846082f, -0.846287f, + -0.846491f, -0.846695f, -0.846899f, -0.847103f, -0.847307f, -0.847510f, -0.847714f, -0.847917f, + -0.848120f, -0.848323f, -0.848526f, -0.848729f, -0.848932f, -0.849135f, -0.849337f, -0.849540f, + -0.849742f, -0.849944f, -0.850146f, -0.850348f, -0.850549f, -0.850751f, -0.850953f, -0.851154f, + -0.851355f, -0.851556f, -0.851757f, -0.851958f, -0.852159f, -0.852360f, -0.852560f, -0.852760f, + -0.852961f, -0.853161f, -0.853361f, -0.853561f, -0.853760f, -0.853960f, -0.854159f, -0.854359f, + -0.854558f, -0.854757f, -0.854956f, -0.855155f, -0.855354f, -0.855552f, -0.855751f, -0.855949f, + -0.856147f, -0.856345f, -0.856543f, -0.856741f, -0.856939f, -0.857137f, -0.857334f, -0.857531f, + -0.857729f, -0.857926f, -0.858123f, -0.858320f, -0.858516f, -0.858713f, -0.858909f, -0.859106f, + -0.859302f, -0.859498f, -0.859694f, -0.859890f, -0.860085f, -0.860281f, -0.860476f, -0.860672f, + -0.860867f, -0.861062f, -0.861257f, -0.861452f, -0.861646f, -0.861841f, -0.862035f, -0.862230f, + -0.862424f, -0.862618f, -0.862812f, -0.863006f, -0.863199f, -0.863393f, -0.863586f, -0.863780f, + -0.863973f, -0.864166f, -0.864359f, -0.864552f, -0.864744f, -0.864937f, -0.865129f, -0.865321f, + -0.865514f, -0.865706f, -0.865898f, -0.866089f, -0.866281f, -0.866472f, -0.866664f, -0.866855f, + -0.867046f, -0.867237f, -0.867428f, -0.867619f, -0.867809f, -0.868000f, -0.868190f, -0.868381f, + -0.868571f, -0.868761f, -0.868951f, -0.869140f, -0.869330f, -0.869519f, -0.869709f, -0.869898f, + -0.870087f, -0.870276f, -0.870465f, -0.870654f, -0.870842f, -0.871031f, -0.871219f, -0.871407f, + -0.871595f, -0.871783f, -0.871971f, -0.872159f, -0.872346f, -0.872534f, -0.872721f, -0.872908f, + -0.873095f, -0.873282f, -0.873469f, -0.873655f, -0.873842f, -0.874028f, -0.874215f, -0.874401f, + -0.874587f, -0.874773f, -0.874958f, -0.875144f, -0.875329f, -0.875515f, -0.875700f, -0.875885f, + -0.876070f, -0.876255f, -0.876440f, -0.876624f, -0.876809f, -0.876993f, -0.877177f, -0.877361f, + -0.877545f, -0.877729f, -0.877913f, -0.878096f, -0.878280f, -0.878463f, -0.878646f, -0.878829f, + -0.879012f, -0.879195f, -0.879378f, -0.879560f, -0.879743f, -0.879925f, -0.880107f, -0.880289f, + -0.880471f, -0.880653f, -0.880834f, -0.881016f, -0.881197f, -0.881378f, -0.881559f, -0.881740f, + -0.881921f, -0.882102f, -0.882283f, -0.882463f, -0.882643f, -0.882824f, -0.883004f, -0.883184f, + -0.883363f, -0.883543f, -0.883723f, -0.883902f, -0.884081f, -0.884260f, -0.884439f, -0.884618f, + -0.884797f, -0.884976f, -0.885154f, -0.885333f, -0.885511f, -0.885689f, -0.885867f, -0.886045f, + -0.886223f, -0.886400f, -0.886578f, -0.886755f, -0.886932f, -0.887109f, -0.887286f, -0.887463f, + -0.887640f, -0.887816f, -0.887993f, -0.888169f, -0.888345f, -0.888521f, -0.888697f, -0.888873f, + -0.889048f, -0.889224f, -0.889399f, -0.889574f, -0.889750f, -0.889925f, -0.890099f, -0.890274f, + -0.890449f, -0.890623f, -0.890797f, -0.890972f, -0.891146f, -0.891320f, -0.891493f, -0.891667f, + -0.891841f, -0.892014f, -0.892187f, -0.892361f, -0.892534f, -0.892706f, -0.892879f, -0.893052f, + -0.893224f, -0.893397f, -0.893569f, -0.893741f, -0.893913f, -0.894085f, -0.894256f, -0.894428f, + -0.894599f, -0.894771f, -0.894942f, -0.895113f, -0.895284f, -0.895455f, -0.895625f, -0.895796f, + -0.895966f, -0.896137f, -0.896307f, -0.896477f, -0.896646f, -0.896816f, -0.896986f, -0.897155f, + -0.897325f, -0.897494f, -0.897663f, -0.897832f, -0.898001f, -0.898169f, -0.898338f, -0.898506f, + -0.898674f, -0.898843f, -0.899011f, -0.899179f, -0.899346f, -0.899514f, -0.899681f, -0.899849f, + -0.900016f, -0.900183f, -0.900350f, -0.900517f, -0.900683f, -0.900850f, -0.901016f, -0.901183f, + -0.901349f, -0.901515f, -0.901681f, -0.901847f, -0.902012f, -0.902178f, -0.902343f, -0.902508f, + -0.902673f, -0.902838f, -0.903003f, -0.903168f, -0.903332f, -0.903497f, -0.903661f, -0.903825f, + -0.903989f, -0.904153f, -0.904317f, -0.904481f, -0.904644f, -0.904807f, -0.904971f, -0.905134f, + -0.905297f, -0.905460f, -0.905622f, -0.905785f, -0.905947f, -0.906110f, -0.906272f, -0.906434f, + -0.906596f, -0.906757f, -0.906919f, -0.907081f, -0.907242f, -0.907403f, -0.907564f, -0.907725f, + -0.907886f, -0.908047f, -0.908207f, -0.908368f, -0.908528f, -0.908688f, -0.908848f, -0.909008f, + -0.909168f, -0.909328f, -0.909487f, -0.909646f, -0.909806f, -0.909965f, -0.910124f, -0.910283f, + -0.910441f, -0.910600f, -0.910758f, -0.910917f, -0.911075f, -0.911233f, -0.911391f, -0.911548f, + -0.911706f, -0.911864f, -0.912021f, -0.912178f, -0.912335f, -0.912492f, -0.912649f, -0.912806f, + -0.912962f, -0.913119f, -0.913275f, -0.913431f, -0.913587f, -0.913743f, -0.913899f, -0.914054f, + -0.914210f, -0.914365f, -0.914520f, -0.914675f, -0.914830f, -0.914985f, -0.915140f, -0.915294f, + -0.915449f, -0.915603f, -0.915757f, -0.915911f, -0.916065f, -0.916219f, -0.916372f, -0.916526f, + -0.916679f, -0.916832f, -0.916985f, -0.917138f, -0.917291f, -0.917444f, -0.917596f, -0.917749f, + -0.917901f, -0.918053f, -0.918205f, -0.918357f, -0.918508f, -0.918660f, -0.918811f, -0.918963f, + -0.919114f, -0.919265f, -0.919416f, -0.919567f, -0.919717f, -0.919868f, -0.920018f, -0.920168f, + -0.920318f, -0.920468f, -0.920618f, -0.920768f, -0.920917f, -0.921067f, -0.921216f, -0.921365f, + -0.921514f, -0.921663f, -0.921812f, -0.921960f, -0.922109f, -0.922257f, -0.922405f, -0.922553f, + -0.922701f, -0.922849f, -0.922997f, -0.923144f, -0.923291f, -0.923439f, -0.923586f, -0.923733f, + -0.923880f, -0.924026f, -0.924173f, -0.924319f, -0.924465f, -0.924612f, -0.924758f, -0.924904f, + -0.925049f, -0.925195f, -0.925340f, -0.925486f, -0.925631f, -0.925776f, -0.925921f, -0.926066f, + -0.926210f, -0.926355f, -0.926499f, -0.926643f, -0.926787f, -0.926931f, -0.927075f, -0.927219f, + -0.927363f, -0.927506f, -0.927649f, -0.927792f, -0.927935f, -0.928078f, -0.928221f, -0.928364f, + -0.928506f, -0.928648f, -0.928791f, -0.928933f, -0.929075f, -0.929216f, -0.929358f, -0.929500f, + -0.929641f, -0.929782f, -0.929923f, -0.930064f, -0.930205f, -0.930346f, -0.930486f, -0.930627f, + -0.930767f, -0.930907f, -0.931047f, -0.931187f, -0.931327f, -0.931466f, -0.931606f, -0.931745f, + -0.931884f, -0.932023f, -0.932162f, -0.932301f, -0.932440f, -0.932578f, -0.932716f, -0.932855f, + -0.932993f, -0.933131f, -0.933269f, -0.933406f, -0.933544f, -0.933681f, -0.933818f, -0.933956f, + -0.934093f, -0.934229f, -0.934366f, -0.934503f, -0.934639f, -0.934775f, -0.934912f, -0.935048f, + -0.935184f, -0.935319f, -0.935455f, -0.935590f, -0.935726f, -0.935861f, -0.935996f, -0.936131f, + -0.936266f, -0.936400f, -0.936535f, -0.936669f, -0.936803f, -0.936938f, -0.937072f, -0.937205f, + -0.937339f, -0.937473f, -0.937606f, -0.937739f, -0.937872f, -0.938005f, -0.938138f, -0.938271f, + -0.938404f, -0.938536f, -0.938668f, -0.938800f, -0.938932f, -0.939064f, -0.939196f, -0.939328f, + -0.939459f, -0.939591f, -0.939722f, -0.939853f, -0.939984f, -0.940115f, -0.940245f, -0.940376f, + -0.940506f, -0.940636f, -0.940766f, -0.940896f, -0.941026f, -0.941156f, -0.941285f, -0.941415f, + -0.941544f, -0.941673f, -0.941802f, -0.941931f, -0.942060f, -0.942188f, -0.942317f, -0.942445f, + -0.942573f, -0.942701f, -0.942829f, -0.942957f, -0.943084f, -0.943212f, -0.943339f, -0.943466f, + -0.943593f, -0.943720f, -0.943847f, -0.943974f, -0.944100f, -0.944227f, -0.944353f, -0.944479f, + -0.944605f, -0.944731f, -0.944856f, -0.944982f, -0.945107f, -0.945232f, -0.945358f, -0.945482f, + -0.945607f, -0.945732f, -0.945857f, -0.945981f, -0.946105f, -0.946229f, -0.946353f, -0.946477f, + -0.946601f, -0.946724f, -0.946848f, -0.946971f, -0.947094f, -0.947217f, -0.947340f, -0.947463f, + -0.947586f, -0.947708f, -0.947830f, -0.947953f, -0.948075f, -0.948196f, -0.948318f, -0.948440f, + -0.948561f, -0.948683f, -0.948804f, -0.948925f, -0.949046f, -0.949167f, -0.949287f, -0.949408f, + -0.949528f, -0.949648f, -0.949768f, -0.949888f, -0.950008f, -0.950128f, -0.950247f, -0.950367f, + -0.950486f, -0.950605f, -0.950724f, -0.950843f, -0.950962f, -0.951080f, -0.951199f, -0.951317f, + -0.951435f, -0.951553f, -0.951671f, -0.951789f, -0.951906f, -0.952024f, -0.952141f, -0.952258f, + -0.952375f, -0.952492f, -0.952609f, -0.952725f, -0.952842f, -0.952958f, -0.953074f, -0.953190f, + -0.953306f, -0.953422f, -0.953537f, -0.953653f, -0.953768f, -0.953883f, -0.953998f, -0.954113f, + -0.954228f, -0.954343f, -0.954457f, -0.954572f, -0.954686f, -0.954800f, -0.954914f, -0.955028f, + -0.955141f, -0.955255f, -0.955368f, -0.955481f, -0.955594f, -0.955707f, -0.955820f, -0.955933f, + -0.956045f, -0.956158f, -0.956270f, -0.956382f, -0.956494f, -0.956606f, -0.956717f, -0.956829f, + -0.956940f, -0.957052f, -0.957163f, -0.957274f, -0.957385f, -0.957495f, -0.957606f, -0.957716f, + -0.957826f, -0.957937f, -0.958046f, -0.958156f, -0.958266f, -0.958376f, -0.958485f, -0.958594f, + -0.958703f, -0.958812f, -0.958921f, -0.959030f, -0.959139f, -0.959247f, -0.959355f, -0.959463f, + -0.959572f, -0.959679f, -0.959787f, -0.959895f, -0.960002f, -0.960109f, -0.960217f, -0.960324f, + -0.960431f, -0.960537f, -0.960644f, -0.960750f, -0.960857f, -0.960963f, -0.961069f, -0.961175f, + -0.961280f, -0.961386f, -0.961492f, -0.961597f, -0.961702f, -0.961807f, -0.961912f, -0.962017f, + -0.962121f, -0.962226f, -0.962330f, -0.962434f, -0.962538f, -0.962642f, -0.962746f, -0.962850f, + -0.962953f, -0.963057f, -0.963160f, -0.963263f, -0.963366f, -0.963469f, -0.963571f, -0.963674f, + -0.963776f, -0.963878f, -0.963980f, -0.964082f, -0.964184f, -0.964286f, -0.964387f, -0.964489f, + -0.964590f, -0.964691f, -0.964792f, -0.964893f, -0.964993f, -0.965094f, -0.965194f, -0.965294f, + -0.965394f, -0.965494f, -0.965594f, -0.965694f, -0.965793f, -0.965893f, -0.965992f, -0.966091f, + -0.966190f, -0.966289f, -0.966387f, -0.966486f, -0.966584f, -0.966683f, -0.966781f, -0.966879f, + -0.966976f, -0.967074f, -0.967172f, -0.967269f, -0.967366f, -0.967463f, -0.967560f, -0.967657f, + -0.967754f, -0.967850f, -0.967947f, -0.968043f, -0.968139f, -0.968235f, -0.968331f, -0.968427f, + -0.968522f, -0.968617f, -0.968713f, -0.968808f, -0.968903f, -0.968998f, -0.969092f, -0.969187f, + -0.969281f, -0.969375f, -0.969470f, -0.969564f, -0.969657f, -0.969751f, -0.969845f, -0.969938f, + -0.970031f, -0.970124f, -0.970217f, -0.970310f, -0.970403f, -0.970495f, -0.970588f, -0.970680f, + -0.970772f, -0.970864f, -0.970956f, -0.971048f, -0.971139f, -0.971231f, -0.971322f, -0.971413f, + -0.971504f, -0.971595f, -0.971685f, -0.971776f, -0.971866f, -0.971957f, -0.972047f, -0.972137f, + -0.972227f, -0.972316f, -0.972406f, -0.972495f, -0.972584f, -0.972673f, -0.972762f, -0.972851f, + -0.972940f, -0.973028f, -0.973117f, -0.973205f, -0.973293f, -0.973381f, -0.973469f, -0.973557f, + -0.973644f, -0.973732f, -0.973819f, -0.973906f, -0.973993f, -0.974080f, -0.974166f, -0.974253f, + -0.974339f, -0.974426f, -0.974512f, -0.974598f, -0.974684f, -0.974769f, -0.974855f, -0.974940f, + -0.975025f, -0.975110f, -0.975195f, -0.975280f, -0.975365f, -0.975449f, -0.975534f, -0.975618f, + -0.975702f, -0.975786f, -0.975870f, -0.975954f, -0.976037f, -0.976120f, -0.976204f, -0.976287f, + -0.976370f, -0.976453f, -0.976535f, -0.976618f, -0.976700f, -0.976782f, -0.976864f, -0.976946f, + -0.977028f, -0.977110f, -0.977191f, -0.977273f, -0.977354f, -0.977435f, -0.977516f, -0.977597f, + -0.977677f, -0.977758f, -0.977838f, -0.977918f, -0.977998f, -0.978078f, -0.978158f, -0.978238f, + -0.978317f, -0.978397f, -0.978476f, -0.978555f, -0.978634f, -0.978713f, -0.978791f, -0.978870f, + -0.978948f, -0.979026f, -0.979104f, -0.979182f, -0.979260f, -0.979338f, -0.979415f, -0.979493f, + -0.979570f, -0.979647f, -0.979724f, -0.979800f, -0.979877f, -0.979954f, -0.980030f, -0.980106f, + -0.980182f, -0.980258f, -0.980334f, -0.980409f, -0.980485f, -0.980560f, -0.980635f, -0.980710f, + -0.980785f, -0.980860f, -0.980935f, -0.981009f, -0.981083f, -0.981158f, -0.981232f, -0.981305f, + -0.981379f, -0.981453f, -0.981526f, -0.981600f, -0.981673f, -0.981746f, -0.981819f, -0.981891f, + -0.981964f, -0.982036f, -0.982109f, -0.982181f, -0.982253f, -0.982325f, -0.982396f, -0.982468f, + -0.982539f, -0.982611f, -0.982682f, -0.982753f, -0.982824f, -0.982894f, -0.982965f, -0.983035f, + -0.983105f, -0.983176f, -0.983246f, -0.983315f, -0.983385f, -0.983455f, -0.983524f, -0.983593f, + -0.983662f, -0.983731f, -0.983800f, -0.983869f, -0.983937f, -0.984006f, -0.984074f, -0.984142f, + -0.984210f, -0.984278f, -0.984346f, -0.984413f, -0.984480f, -0.984548f, -0.984615f, -0.984682f, + -0.984748f, -0.984815f, -0.984882f, -0.984948f, -0.985014f, -0.985080f, -0.985146f, -0.985212f, + -0.985278f, -0.985343f, -0.985408f, -0.985474f, -0.985539f, -0.985604f, -0.985668f, -0.985733f, + -0.985798f, -0.985862f, -0.985926f, -0.985990f, -0.986054f, -0.986118f, -0.986181f, -0.986245f, + -0.986308f, -0.986371f, -0.986434f, -0.986497f, -0.986560f, -0.986623f, -0.986685f, -0.986747f, + -0.986809f, -0.986871f, -0.986933f, -0.986995f, -0.987057f, -0.987118f, -0.987179f, -0.987240f, + -0.987301f, -0.987362f, -0.987423f, -0.987484f, -0.987544f, -0.987604f, -0.987664f, -0.987724f, + -0.987784f, -0.987844f, -0.987903f, -0.987963f, -0.988022f, -0.988081f, -0.988140f, -0.988199f, + -0.988258f, -0.988316f, -0.988374f, -0.988433f, -0.988491f, -0.988549f, -0.988607f, -0.988664f, + -0.988722f, -0.988779f, -0.988836f, -0.988893f, -0.988950f, -0.989007f, -0.989064f, -0.989120f, + -0.989177f, -0.989233f, -0.989289f, -0.989345f, -0.989400f, -0.989456f, -0.989511f, -0.989567f, + -0.989622f, -0.989677f, -0.989732f, -0.989787f, -0.989841f, -0.989896f, -0.989950f, -0.990004f, + -0.990058f, -0.990112f, -0.990166f, -0.990219f, -0.990273f, -0.990326f, -0.990379f, -0.990432f, + -0.990485f, -0.990538f, -0.990590f, -0.990643f, -0.990695f, -0.990747f, -0.990799f, -0.990851f, + -0.990903f, -0.990954f, -0.991006f, -0.991057f, -0.991108f, -0.991159f, -0.991210f, -0.991260f, + -0.991311f, -0.991361f, -0.991411f, -0.991462f, -0.991511f, -0.991561f, -0.991611f, -0.991660f, + -0.991710f, -0.991759f, -0.991808f, -0.991857f, -0.991906f, -0.991954f, -0.992003f, -0.992051f, + -0.992099f, -0.992147f, -0.992195f, -0.992243f, -0.992291f, -0.992338f, -0.992385f, -0.992433f, + -0.992480f, -0.992526f, -0.992573f, -0.992620f, -0.992666f, -0.992712f, -0.992759f, -0.992805f, + -0.992850f, -0.992896f, -0.992942f, -0.992987f, -0.993032f, -0.993077f, -0.993122f, -0.993167f, + -0.993212f, -0.993257f, -0.993301f, -0.993345f, -0.993389f, -0.993433f, -0.993477f, -0.993521f, + -0.993564f, -0.993608f, -0.993651f, -0.993694f, -0.993737f, -0.993779f, -0.993822f, -0.993865f, + -0.993907f, -0.993949f, -0.993991f, -0.994033f, -0.994075f, -0.994116f, -0.994158f, -0.994199f, + -0.994240f, -0.994281f, -0.994322f, -0.994363f, -0.994404f, -0.994444f, -0.994484f, -0.994525f, + -0.994565f, -0.994604f, -0.994644f, -0.994684f, -0.994723f, -0.994762f, -0.994802f, -0.994841f, + -0.994879f, -0.994918f, -0.994957f, -0.994995f, -0.995033f, -0.995071f, -0.995109f, -0.995147f, + -0.995185f, -0.995222f, -0.995260f, -0.995297f, -0.995334f, -0.995371f, -0.995408f, -0.995444f, + -0.995481f, -0.995517f, -0.995553f, -0.995589f, -0.995625f, -0.995661f, -0.995697f, -0.995732f, + -0.995767f, -0.995803f, -0.995838f, -0.995872f, -0.995907f, -0.995942f, -0.995976f, -0.996011f, + -0.996045f, -0.996079f, -0.996113f, -0.996146f, -0.996180f, -0.996213f, -0.996247f, -0.996280f, + -0.996313f, -0.996345f, -0.996378f, -0.996411f, -0.996443f, -0.996475f, -0.996507f, -0.996539f, + -0.996571f, -0.996603f, -0.996634f, -0.996666f, -0.996697f, -0.996728f, -0.996759f, -0.996790f, + -0.996820f, -0.996851f, -0.996881f, -0.996911f, -0.996941f, -0.996971f, -0.997001f, -0.997031f, + -0.997060f, -0.997089f, -0.997119f, -0.997148f, -0.997176f, -0.997205f, -0.997234f, -0.997262f, + -0.997290f, -0.997319f, -0.997347f, -0.997374f, -0.997402f, -0.997430f, -0.997457f, -0.997484f, + -0.997511f, -0.997538f, -0.997565f, -0.997592f, -0.997618f, -0.997645f, -0.997671f, -0.997697f, + -0.997723f, -0.997749f, -0.997774f, -0.997800f, -0.997825f, -0.997851f, -0.997876f, -0.997901f, + -0.997925f, -0.997950f, -0.997974f, -0.997999f, -0.998023f, -0.998047f, -0.998071f, -0.998094f, + -0.998118f, -0.998142f, -0.998165f, -0.998188f, -0.998211f, -0.998234f, -0.998257f, -0.998279f, + -0.998302f, -0.998324f, -0.998346f, -0.998368f, -0.998390f, -0.998411f, -0.998433f, -0.998454f, + -0.998476f, -0.998497f, -0.998518f, -0.998538f, -0.998559f, -0.998580f, -0.998600f, -0.998620f, + -0.998640f, -0.998660f, -0.998680f, -0.998700f, -0.998719f, -0.998738f, -0.998758f, -0.998777f, + -0.998795f, -0.998814f, -0.998833f, -0.998851f, -0.998870f, -0.998888f, -0.998906f, -0.998924f, + -0.998941f, -0.998959f, -0.998976f, -0.998994f, -0.999011f, -0.999028f, -0.999044f, -0.999061f, + -0.999078f, -0.999094f, -0.999110f, -0.999126f, -0.999142f, -0.999158f, -0.999174f, -0.999189f, + -0.999205f, -0.999220f, -0.999235f, -0.999250f, -0.999265f, -0.999279f, -0.999294f, -0.999308f, + -0.999322f, -0.999336f, -0.999350f, -0.999364f, -0.999378f, -0.999391f, -0.999404f, -0.999418f, + -0.999431f, -0.999443f, -0.999456f, -0.999469f, -0.999481f, -0.999493f, -0.999506f, -0.999518f, + -0.999529f, -0.999541f, -0.999553f, -0.999564f, -0.999575f, -0.999586f, -0.999597f, -0.999608f, + -0.999619f, -0.999629f, -0.999640f, -0.999650f, -0.999660f, -0.999670f, -0.999680f, -0.999689f, + -0.999699f, -0.999708f, -0.999717f, -0.999726f, -0.999735f, -0.999744f, -0.999753f, -0.999761f, + -0.999769f, -0.999778f, -0.999786f, -0.999793f, -0.999801f, -0.999809f, -0.999816f, -0.999823f, + -0.999831f, -0.999838f, -0.999844f, -0.999851f, -0.999858f, -0.999864f, -0.999870f, -0.999876f, + -0.999882f, -0.999888f, -0.999894f, -0.999899f, -0.999905f, -0.999910f, -0.999915f, -0.999920f, + -0.999925f, -0.999929f, -0.999934f, -0.999938f, -0.999942f, -0.999946f, -0.999950f, -0.999954f, + -0.999958f, -0.999961f, -0.999964f, -0.999968f, -0.999971f, -0.999973f, -0.999976f, -0.999979f, + -0.999981f, -0.999983f, -0.999986f, -0.999988f, -0.999989f, -0.999991f, -0.999993f, -0.999994f, + -0.999995f, -0.999996f, -0.999997f, -0.999998f, -0.999999f, -0.999999f, -1.000000f, -1.000000 +}; + +static const float sinTable32768[16384] = { + 0.000000f, 0.000192f, 0.000383f, 0.000575f, 0.000767f, 0.000959f, 0.001150f, 0.001342f, + 0.001534f, 0.001726f, 0.001917f, 0.002109f, 0.002301f, 0.002493f, 0.002684f, 0.002876f, + 0.003068f, 0.003260f, 0.003451f, 0.003643f, 0.003835f, 0.004027f, 0.004218f, 0.004410f, + 0.004602f, 0.004794f, 0.004985f, 0.005177f, 0.005369f, 0.005561f, 0.005752f, 0.005944f, + 0.006136f, 0.006328f, 0.006519f, 0.006711f, 0.006903f, 0.007095f, 0.007286f, 0.007478f, + 0.007670f, 0.007862f, 0.008053f, 0.008245f, 0.008437f, 0.008629f, 0.008820f, 0.009012f, + 0.009204f, 0.009395f, 0.009587f, 0.009779f, 0.009971f, 0.010162f, 0.010354f, 0.010546f, + 0.010738f, 0.010929f, 0.011121f, 0.011313f, 0.011505f, 0.011696f, 0.011888f, 0.012080f, + 0.012272f, 0.012463f, 0.012655f, 0.012847f, 0.013038f, 0.013230f, 0.013422f, 0.013614f, + 0.013805f, 0.013997f, 0.014189f, 0.014381f, 0.014572f, 0.014764f, 0.014956f, 0.015147f, + 0.015339f, 0.015531f, 0.015723f, 0.015914f, 0.016106f, 0.016298f, 0.016490f, 0.016681f, + 0.016873f, 0.017065f, 0.017256f, 0.017448f, 0.017640f, 0.017832f, 0.018023f, 0.018215f, + 0.018407f, 0.018598f, 0.018790f, 0.018982f, 0.019174f, 0.019365f, 0.019557f, 0.019749f, + 0.019940f, 0.020132f, 0.020324f, 0.020516f, 0.020707f, 0.020899f, 0.021091f, 0.021282f, + 0.021474f, 0.021666f, 0.021857f, 0.022049f, 0.022241f, 0.022433f, 0.022624f, 0.022816f, + 0.023008f, 0.023199f, 0.023391f, 0.023583f, 0.023774f, 0.023966f, 0.024158f, 0.024350f, + 0.024541f, 0.024733f, 0.024925f, 0.025116f, 0.025308f, 0.025500f, 0.025691f, 0.025883f, + 0.026075f, 0.026266f, 0.026458f, 0.026650f, 0.026841f, 0.027033f, 0.027225f, 0.027416f, + 0.027608f, 0.027800f, 0.027991f, 0.028183f, 0.028375f, 0.028567f, 0.028758f, 0.028950f, + 0.029142f, 0.029333f, 0.029525f, 0.029717f, 0.029908f, 0.030100f, 0.030291f, 0.030483f, + 0.030675f, 0.030866f, 0.031058f, 0.031250f, 0.031441f, 0.031633f, 0.031825f, 0.032016f, + 0.032208f, 0.032400f, 0.032591f, 0.032783f, 0.032975f, 0.033166f, 0.033358f, 0.033550f, + 0.033741f, 0.033933f, 0.034124f, 0.034316f, 0.034508f, 0.034699f, 0.034891f, 0.035083f, + 0.035274f, 0.035466f, 0.035657f, 0.035849f, 0.036041f, 0.036232f, 0.036424f, 0.036616f, + 0.036807f, 0.036999f, 0.037190f, 0.037382f, 0.037574f, 0.037765f, 0.037957f, 0.038149f, + 0.038340f, 0.038532f, 0.038723f, 0.038915f, 0.039107f, 0.039298f, 0.039490f, 0.039681f, + 0.039873f, 0.040065f, 0.040256f, 0.040448f, 0.040639f, 0.040831f, 0.041022f, 0.041214f, + 0.041406f, 0.041597f, 0.041789f, 0.041980f, 0.042172f, 0.042364f, 0.042555f, 0.042747f, + 0.042938f, 0.043130f, 0.043321f, 0.043513f, 0.043705f, 0.043896f, 0.044088f, 0.044279f, + 0.044471f, 0.044662f, 0.044854f, 0.045045f, 0.045237f, 0.045429f, 0.045620f, 0.045812f, + 0.046003f, 0.046195f, 0.046386f, 0.046578f, 0.046769f, 0.046961f, 0.047152f, 0.047344f, + 0.047535f, 0.047727f, 0.047919f, 0.048110f, 0.048302f, 0.048493f, 0.048685f, 0.048876f, + 0.049068f, 0.049259f, 0.049451f, 0.049642f, 0.049834f, 0.050025f, 0.050217f, 0.050408f, + 0.050600f, 0.050791f, 0.050983f, 0.051174f, 0.051366f, 0.051557f, 0.051749f, 0.051940f, + 0.052132f, 0.052323f, 0.052515f, 0.052706f, 0.052898f, 0.053089f, 0.053281f, 0.053472f, + 0.053664f, 0.053855f, 0.054046f, 0.054238f, 0.054429f, 0.054621f, 0.054812f, 0.055004f, + 0.055195f, 0.055387f, 0.055578f, 0.055770f, 0.055961f, 0.056152f, 0.056344f, 0.056535f, + 0.056727f, 0.056918f, 0.057110f, 0.057301f, 0.057493f, 0.057684f, 0.057875f, 0.058067f, + 0.058258f, 0.058450f, 0.058641f, 0.058833f, 0.059024f, 0.059215f, 0.059407f, 0.059598f, + 0.059790f, 0.059981f, 0.060172f, 0.060364f, 0.060555f, 0.060747f, 0.060938f, 0.061129f, + 0.061321f, 0.061512f, 0.061704f, 0.061895f, 0.062086f, 0.062278f, 0.062469f, 0.062660f, + 0.062852f, 0.063043f, 0.063234f, 0.063426f, 0.063617f, 0.063809f, 0.064000f, 0.064191f, + 0.064383f, 0.064574f, 0.064765f, 0.064957f, 0.065148f, 0.065339f, 0.065531f, 0.065722f, + 0.065913f, 0.066105f, 0.066296f, 0.066487f, 0.066679f, 0.066870f, 0.067061f, 0.067253f, + 0.067444f, 0.067635f, 0.067827f, 0.068018f, 0.068209f, 0.068400f, 0.068592f, 0.068783f, + 0.068974f, 0.069166f, 0.069357f, 0.069548f, 0.069739f, 0.069931f, 0.070122f, 0.070313f, + 0.070505f, 0.070696f, 0.070887f, 0.071078f, 0.071270f, 0.071461f, 0.071652f, 0.071843f, + 0.072035f, 0.072226f, 0.072417f, 0.072608f, 0.072800f, 0.072991f, 0.073182f, 0.073373f, + 0.073565f, 0.073756f, 0.073947f, 0.074138f, 0.074329f, 0.074521f, 0.074712f, 0.074903f, + 0.075094f, 0.075286f, 0.075477f, 0.075668f, 0.075859f, 0.076050f, 0.076241f, 0.076433f, + 0.076624f, 0.076815f, 0.077006f, 0.077197f, 0.077389f, 0.077580f, 0.077771f, 0.077962f, + 0.078153f, 0.078344f, 0.078536f, 0.078727f, 0.078918f, 0.079109f, 0.079300f, 0.079491f, + 0.079682f, 0.079874f, 0.080065f, 0.080256f, 0.080447f, 0.080638f, 0.080829f, 0.081020f, + 0.081211f, 0.081403f, 0.081594f, 0.081785f, 0.081976f, 0.082167f, 0.082358f, 0.082549f, + 0.082740f, 0.082931f, 0.083122f, 0.083314f, 0.083505f, 0.083696f, 0.083887f, 0.084078f, + 0.084269f, 0.084460f, 0.084651f, 0.084842f, 0.085033f, 0.085224f, 0.085415f, 0.085606f, + 0.085797f, 0.085988f, 0.086179f, 0.086370f, 0.086561f, 0.086752f, 0.086943f, 0.087135f, + 0.087326f, 0.087517f, 0.087708f, 0.087899f, 0.088090f, 0.088281f, 0.088472f, 0.088663f, + 0.088854f, 0.089045f, 0.089236f, 0.089427f, 0.089617f, 0.089808f, 0.089999f, 0.090190f, + 0.090381f, 0.090572f, 0.090763f, 0.090954f, 0.091145f, 0.091336f, 0.091527f, 0.091718f, + 0.091909f, 0.092100f, 0.092291f, 0.092482f, 0.092673f, 0.092864f, 0.093055f, 0.093245f, + 0.093436f, 0.093627f, 0.093818f, 0.094009f, 0.094200f, 0.094391f, 0.094582f, 0.094773f, + 0.094963f, 0.095154f, 0.095345f, 0.095536f, 0.095727f, 0.095918f, 0.096109f, 0.096300f, + 0.096490f, 0.096681f, 0.096872f, 0.097063f, 0.097254f, 0.097445f, 0.097635f, 0.097826f, + 0.098017f, 0.098208f, 0.098399f, 0.098590f, 0.098780f, 0.098971f, 0.099162f, 0.099353f, + 0.099544f, 0.099734f, 0.099925f, 0.100116f, 0.100307f, 0.100498f, 0.100688f, 0.100879f, + 0.101070f, 0.101261f, 0.101451f, 0.101642f, 0.101833f, 0.102024f, 0.102214f, 0.102405f, + 0.102596f, 0.102787f, 0.102977f, 0.103168f, 0.103359f, 0.103550f, 0.103740f, 0.103931f, + 0.104122f, 0.104312f, 0.104503f, 0.104694f, 0.104884f, 0.105075f, 0.105266f, 0.105456f, + 0.105647f, 0.105838f, 0.106028f, 0.106219f, 0.106410f, 0.106600f, 0.106791f, 0.106982f, + 0.107172f, 0.107363f, 0.107554f, 0.107744f, 0.107935f, 0.108126f, 0.108316f, 0.108507f, + 0.108697f, 0.108888f, 0.109079f, 0.109269f, 0.109460f, 0.109650f, 0.109841f, 0.110032f, + 0.110222f, 0.110413f, 0.110603f, 0.110794f, 0.110984f, 0.111175f, 0.111366f, 0.111556f, + 0.111747f, 0.111937f, 0.112128f, 0.112318f, 0.112509f, 0.112699f, 0.112890f, 0.113080f, + 0.113271f, 0.113461f, 0.113652f, 0.113842f, 0.114033f, 0.114223f, 0.114414f, 0.114604f, + 0.114795f, 0.114985f, 0.115176f, 0.115366f, 0.115557f, 0.115747f, 0.115938f, 0.116128f, + 0.116319f, 0.116509f, 0.116700f, 0.116890f, 0.117080f, 0.117271f, 0.117461f, 0.117652f, + 0.117842f, 0.118032f, 0.118223f, 0.118413f, 0.118604f, 0.118794f, 0.118984f, 0.119175f, + 0.119365f, 0.119556f, 0.119746f, 0.119936f, 0.120127f, 0.120317f, 0.120507f, 0.120698f, + 0.120888f, 0.121078f, 0.121269f, 0.121459f, 0.121649f, 0.121840f, 0.122030f, 0.122220f, + 0.122411f, 0.122601f, 0.122791f, 0.122982f, 0.123172f, 0.123362f, 0.123552f, 0.123743f, + 0.123933f, 0.124123f, 0.124314f, 0.124504f, 0.124694f, 0.124884f, 0.125075f, 0.125265f, + 0.125455f, 0.125645f, 0.125835f, 0.126026f, 0.126216f, 0.126406f, 0.126596f, 0.126787f, + 0.126977f, 0.127167f, 0.127357f, 0.127547f, 0.127737f, 0.127928f, 0.128118f, 0.128308f, + 0.128498f, 0.128688f, 0.128878f, 0.129069f, 0.129259f, 0.129449f, 0.129639f, 0.129829f, + 0.130019f, 0.130209f, 0.130399f, 0.130590f, 0.130780f, 0.130970f, 0.131160f, 0.131350f, + 0.131540f, 0.131730f, 0.131920f, 0.132110f, 0.132300f, 0.132490f, 0.132680f, 0.132870f, + 0.133061f, 0.133251f, 0.133441f, 0.133631f, 0.133821f, 0.134011f, 0.134201f, 0.134391f, + 0.134581f, 0.134771f, 0.134961f, 0.135151f, 0.135341f, 0.135531f, 0.135721f, 0.135911f, + 0.136101f, 0.136291f, 0.136480f, 0.136670f, 0.136860f, 0.137050f, 0.137240f, 0.137430f, + 0.137620f, 0.137810f, 0.138000f, 0.138190f, 0.138380f, 0.138570f, 0.138760f, 0.138949f, + 0.139139f, 0.139329f, 0.139519f, 0.139709f, 0.139899f, 0.140089f, 0.140279f, 0.140468f, + 0.140658f, 0.140848f, 0.141038f, 0.141228f, 0.141418f, 0.141607f, 0.141797f, 0.141987f, + 0.142177f, 0.142367f, 0.142556f, 0.142746f, 0.142936f, 0.143126f, 0.143316f, 0.143505f, + 0.143695f, 0.143885f, 0.144075f, 0.144264f, 0.144454f, 0.144644f, 0.144833f, 0.145023f, + 0.145213f, 0.145403f, 0.145592f, 0.145782f, 0.145972f, 0.146161f, 0.146351f, 0.146541f, + 0.146730f, 0.146920f, 0.147110f, 0.147299f, 0.147489f, 0.147679f, 0.147868f, 0.148058f, + 0.148248f, 0.148437f, 0.148627f, 0.148817f, 0.149006f, 0.149196f, 0.149385f, 0.149575f, + 0.149765f, 0.149954f, 0.150144f, 0.150333f, 0.150523f, 0.150712f, 0.150902f, 0.151092f, + 0.151281f, 0.151471f, 0.151660f, 0.151850f, 0.152039f, 0.152229f, 0.152418f, 0.152608f, + 0.152797f, 0.152987f, 0.153176f, 0.153366f, 0.153555f, 0.153745f, 0.153934f, 0.154124f, + 0.154313f, 0.154502f, 0.154692f, 0.154881f, 0.155071f, 0.155260f, 0.155450f, 0.155639f, + 0.155828f, 0.156018f, 0.156207f, 0.156397f, 0.156586f, 0.156775f, 0.156965f, 0.157154f, + 0.157343f, 0.157533f, 0.157722f, 0.157912f, 0.158101f, 0.158290f, 0.158480f, 0.158669f, + 0.158858f, 0.159047f, 0.159237f, 0.159426f, 0.159615f, 0.159805f, 0.159994f, 0.160183f, + 0.160372f, 0.160562f, 0.160751f, 0.160940f, 0.161129f, 0.161319f, 0.161508f, 0.161697f, + 0.161886f, 0.162076f, 0.162265f, 0.162454f, 0.162643f, 0.162832f, 0.163022f, 0.163211f, + 0.163400f, 0.163589f, 0.163778f, 0.163967f, 0.164157f, 0.164346f, 0.164535f, 0.164724f, + 0.164913f, 0.165102f, 0.165291f, 0.165480f, 0.165670f, 0.165859f, 0.166048f, 0.166237f, + 0.166426f, 0.166615f, 0.166804f, 0.166993f, 0.167182f, 0.167371f, 0.167560f, 0.167749f, + 0.167938f, 0.168127f, 0.168316f, 0.168505f, 0.168694f, 0.168883f, 0.169072f, 0.169261f, + 0.169450f, 0.169639f, 0.169828f, 0.170017f, 0.170206f, 0.170395f, 0.170584f, 0.170773f, + 0.170962f, 0.171151f, 0.171340f, 0.171529f, 0.171718f, 0.171906f, 0.172095f, 0.172284f, + 0.172473f, 0.172662f, 0.172851f, 0.173040f, 0.173229f, 0.173417f, 0.173606f, 0.173795f, + 0.173984f, 0.174173f, 0.174362f, 0.174550f, 0.174739f, 0.174928f, 0.175117f, 0.175305f, + 0.175494f, 0.175683f, 0.175872f, 0.176061f, 0.176249f, 0.176438f, 0.176627f, 0.176815f, + 0.177004f, 0.177193f, 0.177382f, 0.177570f, 0.177759f, 0.177948f, 0.178136f, 0.178325f, + 0.178514f, 0.178702f, 0.178891f, 0.179080f, 0.179268f, 0.179457f, 0.179646f, 0.179834f, + 0.180023f, 0.180212f, 0.180400f, 0.180589f, 0.180777f, 0.180966f, 0.181154f, 0.181343f, + 0.181532f, 0.181720f, 0.181909f, 0.182097f, 0.182286f, 0.182474f, 0.182663f, 0.182851f, + 0.183040f, 0.183228f, 0.183417f, 0.183605f, 0.183794f, 0.183982f, 0.184171f, 0.184359f, + 0.184548f, 0.184736f, 0.184925f, 0.185113f, 0.185301f, 0.185490f, 0.185678f, 0.185867f, + 0.186055f, 0.186244f, 0.186432f, 0.186620f, 0.186809f, 0.186997f, 0.187185f, 0.187374f, + 0.187562f, 0.187750f, 0.187939f, 0.188127f, 0.188315f, 0.188504f, 0.188692f, 0.188880f, + 0.189069f, 0.189257f, 0.189445f, 0.189634f, 0.189822f, 0.190010f, 0.190198f, 0.190387f, + 0.190575f, 0.190763f, 0.190951f, 0.191139f, 0.191328f, 0.191516f, 0.191704f, 0.191892f, + 0.192080f, 0.192269f, 0.192457f, 0.192645f, 0.192833f, 0.193021f, 0.193209f, 0.193397f, + 0.193586f, 0.193774f, 0.193962f, 0.194150f, 0.194338f, 0.194526f, 0.194714f, 0.194902f, + 0.195090f, 0.195278f, 0.195466f, 0.195654f, 0.195843f, 0.196031f, 0.196219f, 0.196407f, + 0.196595f, 0.196783f, 0.196971f, 0.197159f, 0.197347f, 0.197535f, 0.197722f, 0.197910f, + 0.198098f, 0.198286f, 0.198474f, 0.198662f, 0.198850f, 0.199038f, 0.199226f, 0.199414f, + 0.199602f, 0.199790f, 0.199978f, 0.200165f, 0.200353f, 0.200541f, 0.200729f, 0.200917f, + 0.201105f, 0.201292f, 0.201480f, 0.201668f, 0.201856f, 0.202044f, 0.202231f, 0.202419f, + 0.202607f, 0.202795f, 0.202983f, 0.203170f, 0.203358f, 0.203546f, 0.203734f, 0.203921f, + 0.204109f, 0.204297f, 0.204484f, 0.204672f, 0.204860f, 0.205047f, 0.205235f, 0.205423f, + 0.205610f, 0.205798f, 0.205986f, 0.206173f, 0.206361f, 0.206549f, 0.206736f, 0.206924f, + 0.207111f, 0.207299f, 0.207487f, 0.207674f, 0.207862f, 0.208049f, 0.208237f, 0.208424f, + 0.208612f, 0.208799f, 0.208987f, 0.209174f, 0.209362f, 0.209549f, 0.209737f, 0.209924f, + 0.210112f, 0.210299f, 0.210487f, 0.210674f, 0.210862f, 0.211049f, 0.211237f, 0.211424f, + 0.211611f, 0.211799f, 0.211986f, 0.212174f, 0.212361f, 0.212548f, 0.212736f, 0.212923f, + 0.213110f, 0.213298f, 0.213485f, 0.213672f, 0.213860f, 0.214047f, 0.214234f, 0.214422f, + 0.214609f, 0.214796f, 0.214983f, 0.215171f, 0.215358f, 0.215545f, 0.215732f, 0.215920f, + 0.216107f, 0.216294f, 0.216481f, 0.216668f, 0.216856f, 0.217043f, 0.217230f, 0.217417f, + 0.217604f, 0.217791f, 0.217979f, 0.218166f, 0.218353f, 0.218540f, 0.218727f, 0.218914f, + 0.219101f, 0.219288f, 0.219475f, 0.219662f, 0.219850f, 0.220037f, 0.220224f, 0.220411f, + 0.220598f, 0.220785f, 0.220972f, 0.221159f, 0.221346f, 0.221533f, 0.221720f, 0.221907f, + 0.222094f, 0.222281f, 0.222468f, 0.222654f, 0.222841f, 0.223028f, 0.223215f, 0.223402f, + 0.223589f, 0.223776f, 0.223963f, 0.224150f, 0.224337f, 0.224523f, 0.224710f, 0.224897f, + 0.225084f, 0.225271f, 0.225458f, 0.225644f, 0.225831f, 0.226018f, 0.226205f, 0.226391f, + 0.226578f, 0.226765f, 0.226952f, 0.227139f, 0.227325f, 0.227512f, 0.227699f, 0.227885f, + 0.228072f, 0.228259f, 0.228445f, 0.228632f, 0.228819f, 0.229005f, 0.229192f, 0.229379f, + 0.229565f, 0.229752f, 0.229939f, 0.230125f, 0.230312f, 0.230498f, 0.230685f, 0.230872f, + 0.231058f, 0.231245f, 0.231431f, 0.231618f, 0.231804f, 0.231991f, 0.232177f, 0.232364f, + 0.232550f, 0.232737f, 0.232923f, 0.233110f, 0.233296f, 0.233483f, 0.233669f, 0.233856f, + 0.234042f, 0.234228f, 0.234415f, 0.234601f, 0.234788f, 0.234974f, 0.235160f, 0.235347f, + 0.235533f, 0.235719f, 0.235906f, 0.236092f, 0.236278f, 0.236465f, 0.236651f, 0.236837f, + 0.237024f, 0.237210f, 0.237396f, 0.237582f, 0.237769f, 0.237955f, 0.238141f, 0.238327f, + 0.238514f, 0.238700f, 0.238886f, 0.239072f, 0.239258f, 0.239445f, 0.239631f, 0.239817f, + 0.240003f, 0.240189f, 0.240375f, 0.240561f, 0.240748f, 0.240934f, 0.241120f, 0.241306f, + 0.241492f, 0.241678f, 0.241864f, 0.242050f, 0.242236f, 0.242422f, 0.242608f, 0.242794f, + 0.242980f, 0.243166f, 0.243352f, 0.243538f, 0.243724f, 0.243910f, 0.244096f, 0.244282f, + 0.244468f, 0.244654f, 0.244840f, 0.245026f, 0.245212f, 0.245397f, 0.245583f, 0.245769f, + 0.245955f, 0.246141f, 0.246327f, 0.246513f, 0.246698f, 0.246884f, 0.247070f, 0.247256f, + 0.247442f, 0.247627f, 0.247813f, 0.247999f, 0.248185f, 0.248370f, 0.248556f, 0.248742f, + 0.248928f, 0.249113f, 0.249299f, 0.249485f, 0.249670f, 0.249856f, 0.250042f, 0.250227f, + 0.250413f, 0.250599f, 0.250784f, 0.250970f, 0.251155f, 0.251341f, 0.251527f, 0.251712f, + 0.251898f, 0.252083f, 0.252269f, 0.252454f, 0.252640f, 0.252826f, 0.253011f, 0.253197f, + 0.253382f, 0.253568f, 0.253753f, 0.253938f, 0.254124f, 0.254309f, 0.254495f, 0.254680f, + 0.254866f, 0.255051f, 0.255236f, 0.255422f, 0.255607f, 0.255793f, 0.255978f, 0.256163f, + 0.256349f, 0.256534f, 0.256719f, 0.256905f, 0.257090f, 0.257275f, 0.257461f, 0.257646f, + 0.257831f, 0.258016f, 0.258202f, 0.258387f, 0.258572f, 0.258757f, 0.258943f, 0.259128f, + 0.259313f, 0.259498f, 0.259683f, 0.259868f, 0.260054f, 0.260239f, 0.260424f, 0.260609f, + 0.260794f, 0.260979f, 0.261164f, 0.261349f, 0.261534f, 0.261720f, 0.261905f, 0.262090f, + 0.262275f, 0.262460f, 0.262645f, 0.262830f, 0.263015f, 0.263200f, 0.263385f, 0.263570f, + 0.263755f, 0.263940f, 0.264125f, 0.264309f, 0.264494f, 0.264679f, 0.264864f, 0.265049f, + 0.265234f, 0.265419f, 0.265604f, 0.265789f, 0.265973f, 0.266158f, 0.266343f, 0.266528f, + 0.266713f, 0.266898f, 0.267082f, 0.267267f, 0.267452f, 0.267637f, 0.267821f, 0.268006f, + 0.268191f, 0.268376f, 0.268560f, 0.268745f, 0.268930f, 0.269114f, 0.269299f, 0.269484f, + 0.269668f, 0.269853f, 0.270038f, 0.270222f, 0.270407f, 0.270591f, 0.270776f, 0.270961f, + 0.271145f, 0.271330f, 0.271514f, 0.271699f, 0.271883f, 0.272068f, 0.272252f, 0.272437f, + 0.272621f, 0.272806f, 0.272990f, 0.273175f, 0.273359f, 0.273544f, 0.273728f, 0.273912f, + 0.274097f, 0.274281f, 0.274466f, 0.274650f, 0.274834f, 0.275019f, 0.275203f, 0.275387f, + 0.275572f, 0.275756f, 0.275940f, 0.276125f, 0.276309f, 0.276493f, 0.276678f, 0.276862f, + 0.277046f, 0.277230f, 0.277415f, 0.277599f, 0.277783f, 0.277967f, 0.278151f, 0.278336f, + 0.278520f, 0.278704f, 0.278888f, 0.279072f, 0.279256f, 0.279440f, 0.279624f, 0.279809f, + 0.279993f, 0.280177f, 0.280361f, 0.280545f, 0.280729f, 0.280913f, 0.281097f, 0.281281f, + 0.281465f, 0.281649f, 0.281833f, 0.282017f, 0.282201f, 0.282385f, 0.282569f, 0.282753f, + 0.282937f, 0.283120f, 0.283304f, 0.283488f, 0.283672f, 0.283856f, 0.284040f, 0.284224f, + 0.284408f, 0.284591f, 0.284775f, 0.284959f, 0.285143f, 0.285327f, 0.285510f, 0.285694f, + 0.285878f, 0.286062f, 0.286245f, 0.286429f, 0.286613f, 0.286796f, 0.286980f, 0.287164f, + 0.287347f, 0.287531f, 0.287715f, 0.287898f, 0.288082f, 0.288266f, 0.288449f, 0.288633f, + 0.288816f, 0.289000f, 0.289184f, 0.289367f, 0.289551f, 0.289734f, 0.289918f, 0.290101f, + 0.290285f, 0.290468f, 0.290652f, 0.290835f, 0.291019f, 0.291202f, 0.291385f, 0.291569f, + 0.291752f, 0.291936f, 0.292119f, 0.292302f, 0.292486f, 0.292669f, 0.292852f, 0.293036f, + 0.293219f, 0.293402f, 0.293586f, 0.293769f, 0.293952f, 0.294136f, 0.294319f, 0.294502f, + 0.294685f, 0.294869f, 0.295052f, 0.295235f, 0.295418f, 0.295601f, 0.295785f, 0.295968f, + 0.296151f, 0.296334f, 0.296517f, 0.296700f, 0.296883f, 0.297066f, 0.297250f, 0.297433f, + 0.297616f, 0.297799f, 0.297982f, 0.298165f, 0.298348f, 0.298531f, 0.298714f, 0.298897f, + 0.299080f, 0.299263f, 0.299446f, 0.299629f, 0.299812f, 0.299995f, 0.300177f, 0.300360f, + 0.300543f, 0.300726f, 0.300909f, 0.301092f, 0.301275f, 0.301458f, 0.301640f, 0.301823f, + 0.302006f, 0.302189f, 0.302372f, 0.302554f, 0.302737f, 0.302920f, 0.303103f, 0.303285f, + 0.303468f, 0.303651f, 0.303833f, 0.304016f, 0.304199f, 0.304381f, 0.304564f, 0.304747f, + 0.304929f, 0.305112f, 0.305294f, 0.305477f, 0.305660f, 0.305842f, 0.306025f, 0.306207f, + 0.306390f, 0.306572f, 0.306755f, 0.306937f, 0.307120f, 0.307302f, 0.307485f, 0.307667f, + 0.307850f, 0.308032f, 0.308214f, 0.308397f, 0.308579f, 0.308762f, 0.308944f, 0.309126f, + 0.309309f, 0.309491f, 0.309673f, 0.309856f, 0.310038f, 0.310220f, 0.310403f, 0.310585f, + 0.310767f, 0.310949f, 0.311132f, 0.311314f, 0.311496f, 0.311678f, 0.311860f, 0.312043f, + 0.312225f, 0.312407f, 0.312589f, 0.312771f, 0.312953f, 0.313135f, 0.313318f, 0.313500f, + 0.313682f, 0.313864f, 0.314046f, 0.314228f, 0.314410f, 0.314592f, 0.314774f, 0.314956f, + 0.315138f, 0.315320f, 0.315502f, 0.315684f, 0.315866f, 0.316048f, 0.316230f, 0.316411f, + 0.316593f, 0.316775f, 0.316957f, 0.317139f, 0.317321f, 0.317503f, 0.317684f, 0.317866f, + 0.318048f, 0.318230f, 0.318412f, 0.318593f, 0.318775f, 0.318957f, 0.319139f, 0.319320f, + 0.319502f, 0.319684f, 0.319865f, 0.320047f, 0.320229f, 0.320410f, 0.320592f, 0.320774f, + 0.320955f, 0.321137f, 0.321318f, 0.321500f, 0.321682f, 0.321863f, 0.322045f, 0.322226f, + 0.322408f, 0.322589f, 0.322771f, 0.322952f, 0.323134f, 0.323315f, 0.323497f, 0.323678f, + 0.323859f, 0.324041f, 0.324222f, 0.324404f, 0.324585f, 0.324766f, 0.324948f, 0.325129f, + 0.325310f, 0.325492f, 0.325673f, 0.325854f, 0.326035f, 0.326217f, 0.326398f, 0.326579f, + 0.326760f, 0.326942f, 0.327123f, 0.327304f, 0.327485f, 0.327666f, 0.327848f, 0.328029f, + 0.328210f, 0.328391f, 0.328572f, 0.328753f, 0.328934f, 0.329115f, 0.329296f, 0.329477f, + 0.329658f, 0.329839f, 0.330020f, 0.330202f, 0.330382f, 0.330563f, 0.330744f, 0.330925f, + 0.331106f, 0.331287f, 0.331468f, 0.331649f, 0.331830f, 0.332011f, 0.332192f, 0.332373f, + 0.332553f, 0.332734f, 0.332915f, 0.333096f, 0.333277f, 0.333457f, 0.333638f, 0.333819f, + 0.334000f, 0.334180f, 0.334361f, 0.334542f, 0.334722f, 0.334903f, 0.335084f, 0.335265f, + 0.335445f, 0.335626f, 0.335806f, 0.335987f, 0.336168f, 0.336348f, 0.336529f, 0.336709f, + 0.336890f, 0.337070f, 0.337251f, 0.337431f, 0.337612f, 0.337792f, 0.337973f, 0.338153f, + 0.338334f, 0.338514f, 0.338695f, 0.338875f, 0.339055f, 0.339236f, 0.339416f, 0.339597f, + 0.339777f, 0.339957f, 0.340138f, 0.340318f, 0.340498f, 0.340678f, 0.340859f, 0.341039f, + 0.341219f, 0.341399f, 0.341580f, 0.341760f, 0.341940f, 0.342120f, 0.342300f, 0.342481f, + 0.342661f, 0.342841f, 0.343021f, 0.343201f, 0.343381f, 0.343561f, 0.343741f, 0.343921f, + 0.344101f, 0.344281f, 0.344461f, 0.344641f, 0.344821f, 0.345001f, 0.345181f, 0.345361f, + 0.345541f, 0.345721f, 0.345901f, 0.346081f, 0.346261f, 0.346441f, 0.346621f, 0.346801f, + 0.346980f, 0.347160f, 0.347340f, 0.347520f, 0.347700f, 0.347879f, 0.348059f, 0.348239f, + 0.348419f, 0.348598f, 0.348778f, 0.348958f, 0.349138f, 0.349317f, 0.349497f, 0.349676f, + 0.349856f, 0.350036f, 0.350215f, 0.350395f, 0.350575f, 0.350754f, 0.350934f, 0.351113f, + 0.351293f, 0.351472f, 0.351652f, 0.351831f, 0.352011f, 0.352190f, 0.352370f, 0.352549f, + 0.352729f, 0.352908f, 0.353087f, 0.353267f, 0.353446f, 0.353626f, 0.353805f, 0.353984f, + 0.354164f, 0.354343f, 0.354522f, 0.354701f, 0.354881f, 0.355060f, 0.355239f, 0.355418f, + 0.355598f, 0.355777f, 0.355956f, 0.356135f, 0.356314f, 0.356494f, 0.356673f, 0.356852f, + 0.357031f, 0.357210f, 0.357389f, 0.357568f, 0.357747f, 0.357926f, 0.358105f, 0.358284f, + 0.358463f, 0.358642f, 0.358821f, 0.359000f, 0.359179f, 0.359358f, 0.359537f, 0.359716f, + 0.359895f, 0.360074f, 0.360253f, 0.360432f, 0.360611f, 0.360789f, 0.360968f, 0.361147f, + 0.361326f, 0.361505f, 0.361683f, 0.361862f, 0.362041f, 0.362220f, 0.362398f, 0.362577f, + 0.362756f, 0.362934f, 0.363113f, 0.363292f, 0.363470f, 0.363649f, 0.363828f, 0.364006f, + 0.364185f, 0.364363f, 0.364542f, 0.364720f, 0.364899f, 0.365078f, 0.365256f, 0.365435f, + 0.365613f, 0.365791f, 0.365970f, 0.366148f, 0.366327f, 0.366505f, 0.366684f, 0.366862f, + 0.367040f, 0.367219f, 0.367397f, 0.367575f, 0.367754f, 0.367932f, 0.368110f, 0.368289f, + 0.368467f, 0.368645f, 0.368823f, 0.369002f, 0.369180f, 0.369358f, 0.369536f, 0.369714f, + 0.369892f, 0.370071f, 0.370249f, 0.370427f, 0.370605f, 0.370783f, 0.370961f, 0.371139f, + 0.371317f, 0.371495f, 0.371673f, 0.371851f, 0.372029f, 0.372207f, 0.372385f, 0.372563f, + 0.372741f, 0.372919f, 0.373097f, 0.373275f, 0.373453f, 0.373631f, 0.373808f, 0.373986f, + 0.374164f, 0.374342f, 0.374520f, 0.374697f, 0.374875f, 0.375053f, 0.375231f, 0.375408f, + 0.375586f, 0.375764f, 0.375942f, 0.376119f, 0.376297f, 0.376475f, 0.376652f, 0.376830f, + 0.377007f, 0.377185f, 0.377363f, 0.377540f, 0.377718f, 0.377895f, 0.378073f, 0.378250f, + 0.378428f, 0.378605f, 0.378783f, 0.378960f, 0.379138f, 0.379315f, 0.379492f, 0.379670f, + 0.379847f, 0.380025f, 0.380202f, 0.380379f, 0.380557f, 0.380734f, 0.380911f, 0.381088f, + 0.381266f, 0.381443f, 0.381620f, 0.381797f, 0.381975f, 0.382152f, 0.382329f, 0.382506f, + 0.382683f, 0.382861f, 0.383038f, 0.383215f, 0.383392f, 0.383569f, 0.383746f, 0.383923f, + 0.384100f, 0.384277f, 0.384454f, 0.384631f, 0.384808f, 0.384985f, 0.385162f, 0.385339f, + 0.385516f, 0.385693f, 0.385870f, 0.386047f, 0.386224f, 0.386400f, 0.386577f, 0.386754f, + 0.386931f, 0.387108f, 0.387285f, 0.387461f, 0.387638f, 0.387815f, 0.387992f, 0.388168f, + 0.388345f, 0.388522f, 0.388698f, 0.388875f, 0.389052f, 0.389228f, 0.389405f, 0.389582f, + 0.389758f, 0.389935f, 0.390111f, 0.390288f, 0.390464f, 0.390641f, 0.390817f, 0.390994f, + 0.391170f, 0.391347f, 0.391523f, 0.391700f, 0.391876f, 0.392053f, 0.392229f, 0.392405f, + 0.392582f, 0.392758f, 0.392934f, 0.393111f, 0.393287f, 0.393463f, 0.393640f, 0.393816f, + 0.393992f, 0.394168f, 0.394344f, 0.394521f, 0.394697f, 0.394873f, 0.395049f, 0.395225f, + 0.395401f, 0.395578f, 0.395754f, 0.395930f, 0.396106f, 0.396282f, 0.396458f, 0.396634f, + 0.396810f, 0.396986f, 0.397162f, 0.397338f, 0.397514f, 0.397690f, 0.397866f, 0.398042f, + 0.398218f, 0.398393f, 0.398569f, 0.398745f, 0.398921f, 0.399097f, 0.399273f, 0.399448f, + 0.399624f, 0.399800f, 0.399976f, 0.400151f, 0.400327f, 0.400503f, 0.400679f, 0.400854f, + 0.401030f, 0.401206f, 0.401381f, 0.401557f, 0.401732f, 0.401908f, 0.402084f, 0.402259f, + 0.402435f, 0.402610f, 0.402786f, 0.402961f, 0.403137f, 0.403312f, 0.403488f, 0.403663f, + 0.403838f, 0.404014f, 0.404189f, 0.404365f, 0.404540f, 0.404715f, 0.404891f, 0.405066f, + 0.405241f, 0.405417f, 0.405592f, 0.405767f, 0.405942f, 0.406118f, 0.406293f, 0.406468f, + 0.406643f, 0.406818f, 0.406994f, 0.407169f, 0.407344f, 0.407519f, 0.407694f, 0.407869f, + 0.408044f, 0.408219f, 0.408394f, 0.408569f, 0.408744f, 0.408919f, 0.409094f, 0.409269f, + 0.409444f, 0.409619f, 0.409794f, 0.409969f, 0.410144f, 0.410319f, 0.410493f, 0.410668f, + 0.410843f, 0.411018f, 0.411193f, 0.411368f, 0.411542f, 0.411717f, 0.411892f, 0.412067f, + 0.412241f, 0.412416f, 0.412591f, 0.412765f, 0.412940f, 0.413115f, 0.413289f, 0.413464f, + 0.413638f, 0.413813f, 0.413987f, 0.414162f, 0.414337f, 0.414511f, 0.414685f, 0.414860f, + 0.415034f, 0.415209f, 0.415383f, 0.415558f, 0.415732f, 0.415906f, 0.416081f, 0.416255f, + 0.416430f, 0.416604f, 0.416778f, 0.416952f, 0.417127f, 0.417301f, 0.417475f, 0.417650f, + 0.417824f, 0.417998f, 0.418172f, 0.418346f, 0.418520f, 0.418695f, 0.418869f, 0.419043f, + 0.419217f, 0.419391f, 0.419565f, 0.419739f, 0.419913f, 0.420087f, 0.420261f, 0.420435f, + 0.420609f, 0.420783f, 0.420957f, 0.421131f, 0.421305f, 0.421479f, 0.421653f, 0.421826f, + 0.422000f, 0.422174f, 0.422348f, 0.422522f, 0.422695f, 0.422869f, 0.423043f, 0.423217f, + 0.423390f, 0.423564f, 0.423738f, 0.423912f, 0.424085f, 0.424259f, 0.424432f, 0.424606f, + 0.424780f, 0.424953f, 0.425127f, 0.425300f, 0.425474f, 0.425647f, 0.425821f, 0.425994f, + 0.426168f, 0.426341f, 0.426515f, 0.426688f, 0.426862f, 0.427035f, 0.427208f, 0.427382f, + 0.427555f, 0.427728f, 0.427902f, 0.428075f, 0.428248f, 0.428422f, 0.428595f, 0.428768f, + 0.428941f, 0.429114f, 0.429288f, 0.429461f, 0.429634f, 0.429807f, 0.429980f, 0.430153f, + 0.430326f, 0.430500f, 0.430673f, 0.430846f, 0.431019f, 0.431192f, 0.431365f, 0.431538f, + 0.431711f, 0.431884f, 0.432057f, 0.432229f, 0.432402f, 0.432575f, 0.432748f, 0.432921f, + 0.433094f, 0.433267f, 0.433439f, 0.433612f, 0.433785f, 0.433958f, 0.434131f, 0.434303f, + 0.434476f, 0.434649f, 0.434821f, 0.434994f, 0.435167f, 0.435339f, 0.435512f, 0.435685f, + 0.435857f, 0.436030f, 0.436202f, 0.436375f, 0.436547f, 0.436720f, 0.436892f, 0.437065f, + 0.437237f, 0.437410f, 0.437582f, 0.437754f, 0.437927f, 0.438099f, 0.438272f, 0.438444f, + 0.438616f, 0.438789f, 0.438961f, 0.439133f, 0.439305f, 0.439478f, 0.439650f, 0.439822f, + 0.439994f, 0.440166f, 0.440339f, 0.440511f, 0.440683f, 0.440855f, 0.441027f, 0.441199f, + 0.441371f, 0.441543f, 0.441715f, 0.441887f, 0.442059f, 0.442231f, 0.442403f, 0.442575f, + 0.442747f, 0.442919f, 0.443091f, 0.443263f, 0.443435f, 0.443607f, 0.443779f, 0.443950f, + 0.444122f, 0.444294f, 0.444466f, 0.444637f, 0.444809f, 0.444981f, 0.445153f, 0.445324f, + 0.445496f, 0.445668f, 0.445839f, 0.446011f, 0.446183f, 0.446354f, 0.446526f, 0.446697f, + 0.446869f, 0.447040f, 0.447212f, 0.447383f, 0.447555f, 0.447726f, 0.447898f, 0.448069f, + 0.448241f, 0.448412f, 0.448583f, 0.448755f, 0.448926f, 0.449097f, 0.449269f, 0.449440f, + 0.449611f, 0.449783f, 0.449954f, 0.450125f, 0.450296f, 0.450467f, 0.450639f, 0.450810f, + 0.450981f, 0.451152f, 0.451323f, 0.451494f, 0.451665f, 0.451836f, 0.452008f, 0.452179f, + 0.452350f, 0.452521f, 0.452692f, 0.452863f, 0.453033f, 0.453204f, 0.453375f, 0.453546f, + 0.453717f, 0.453888f, 0.454059f, 0.454230f, 0.454400f, 0.454571f, 0.454742f, 0.454913f, + 0.455084f, 0.455254f, 0.455425f, 0.455596f, 0.455766f, 0.455937f, 0.456108f, 0.456278f, + 0.456449f, 0.456620f, 0.456790f, 0.456961f, 0.457131f, 0.457302f, 0.457472f, 0.457643f, + 0.457813f, 0.457984f, 0.458154f, 0.458325f, 0.458495f, 0.458665f, 0.458836f, 0.459006f, + 0.459177f, 0.459347f, 0.459517f, 0.459687f, 0.459858f, 0.460028f, 0.460198f, 0.460369f, + 0.460539f, 0.460709f, 0.460879f, 0.461049f, 0.461219f, 0.461390f, 0.461560f, 0.461730f, + 0.461900f, 0.462070f, 0.462240f, 0.462410f, 0.462580f, 0.462750f, 0.462920f, 0.463090f, + 0.463260f, 0.463430f, 0.463600f, 0.463769f, 0.463939f, 0.464109f, 0.464279f, 0.464449f, + 0.464619f, 0.464788f, 0.464958f, 0.465128f, 0.465298f, 0.465467f, 0.465637f, 0.465807f, + 0.465977f, 0.466146f, 0.466316f, 0.466485f, 0.466655f, 0.466825f, 0.466994f, 0.467164f, + 0.467333f, 0.467503f, 0.467672f, 0.467842f, 0.468011f, 0.468181f, 0.468350f, 0.468519f, + 0.468689f, 0.468858f, 0.469028f, 0.469197f, 0.469366f, 0.469536f, 0.469705f, 0.469874f, + 0.470043f, 0.470213f, 0.470382f, 0.470551f, 0.470720f, 0.470889f, 0.471058f, 0.471228f, + 0.471397f, 0.471566f, 0.471735f, 0.471904f, 0.472073f, 0.472242f, 0.472411f, 0.472580f, + 0.472749f, 0.472918f, 0.473087f, 0.473256f, 0.473425f, 0.473594f, 0.473763f, 0.473931f, + 0.474100f, 0.474269f, 0.474438f, 0.474607f, 0.474775f, 0.474944f, 0.475113f, 0.475282f, + 0.475450f, 0.475619f, 0.475788f, 0.475956f, 0.476125f, 0.476294f, 0.476462f, 0.476631f, + 0.476799f, 0.476968f, 0.477136f, 0.477305f, 0.477473f, 0.477642f, 0.477810f, 0.477979f, + 0.478147f, 0.478315f, 0.478484f, 0.478652f, 0.478821f, 0.478989f, 0.479157f, 0.479325f, + 0.479494f, 0.479662f, 0.479830f, 0.479998f, 0.480167f, 0.480335f, 0.480503f, 0.480671f, + 0.480839f, 0.481007f, 0.481176f, 0.481344f, 0.481512f, 0.481680f, 0.481848f, 0.482016f, + 0.482184f, 0.482352f, 0.482520f, 0.482688f, 0.482856f, 0.483023f, 0.483191f, 0.483359f, + 0.483527f, 0.483695f, 0.483863f, 0.484031f, 0.484198f, 0.484366f, 0.484534f, 0.484702f, + 0.484869f, 0.485037f, 0.485205f, 0.485372f, 0.485540f, 0.485708f, 0.485875f, 0.486043f, + 0.486210f, 0.486378f, 0.486545f, 0.486713f, 0.486880f, 0.487048f, 0.487215f, 0.487383f, + 0.487550f, 0.487718f, 0.487885f, 0.488052f, 0.488220f, 0.488387f, 0.488554f, 0.488722f, + 0.488889f, 0.489056f, 0.489223f, 0.489391f, 0.489558f, 0.489725f, 0.489892f, 0.490059f, + 0.490226f, 0.490394f, 0.490561f, 0.490728f, 0.490895f, 0.491062f, 0.491229f, 0.491396f, + 0.491563f, 0.491730f, 0.491897f, 0.492064f, 0.492231f, 0.492398f, 0.492564f, 0.492731f, + 0.492898f, 0.493065f, 0.493232f, 0.493399f, 0.493565f, 0.493732f, 0.493899f, 0.494066f, + 0.494232f, 0.494399f, 0.494566f, 0.494732f, 0.494899f, 0.495066f, 0.495232f, 0.495399f, + 0.495565f, 0.495732f, 0.495898f, 0.496065f, 0.496231f, 0.496398f, 0.496564f, 0.496731f, + 0.496897f, 0.497063f, 0.497230f, 0.497396f, 0.497562f, 0.497729f, 0.497895f, 0.498061f, + 0.498228f, 0.498394f, 0.498560f, 0.498726f, 0.498893f, 0.499059f, 0.499225f, 0.499391f, + 0.499557f, 0.499723f, 0.499889f, 0.500055f, 0.500221f, 0.500387f, 0.500553f, 0.500719f, + 0.500885f, 0.501051f, 0.501217f, 0.501383f, 0.501549f, 0.501715f, 0.501881f, 0.502047f, + 0.502212f, 0.502378f, 0.502544f, 0.502710f, 0.502876f, 0.503041f, 0.503207f, 0.503373f, + 0.503538f, 0.503704f, 0.503870f, 0.504035f, 0.504201f, 0.504366f, 0.504532f, 0.504698f, + 0.504863f, 0.505029f, 0.505194f, 0.505360f, 0.505525f, 0.505690f, 0.505856f, 0.506021f, + 0.506187f, 0.506352f, 0.506517f, 0.506683f, 0.506848f, 0.507013f, 0.507179f, 0.507344f, + 0.507509f, 0.507674f, 0.507839f, 0.508005f, 0.508170f, 0.508335f, 0.508500f, 0.508665f, + 0.508830f, 0.508995f, 0.509160f, 0.509325f, 0.509490f, 0.509655f, 0.509820f, 0.509985f, + 0.510150f, 0.510315f, 0.510480f, 0.510645f, 0.510810f, 0.510974f, 0.511139f, 0.511304f, + 0.511469f, 0.511634f, 0.511798f, 0.511963f, 0.512128f, 0.512292f, 0.512457f, 0.512622f, + 0.512786f, 0.512951f, 0.513116f, 0.513280f, 0.513445f, 0.513609f, 0.513774f, 0.513938f, + 0.514103f, 0.514267f, 0.514432f, 0.514596f, 0.514760f, 0.514925f, 0.515089f, 0.515254f, + 0.515418f, 0.515582f, 0.515746f, 0.515911f, 0.516075f, 0.516239f, 0.516403f, 0.516568f, + 0.516732f, 0.516896f, 0.517060f, 0.517224f, 0.517388f, 0.517552f, 0.517716f, 0.517880f, + 0.518045f, 0.518209f, 0.518372f, 0.518536f, 0.518700f, 0.518864f, 0.519028f, 0.519192f, + 0.519356f, 0.519520f, 0.519684f, 0.519848f, 0.520011f, 0.520175f, 0.520339f, 0.520503f, + 0.520666f, 0.520830f, 0.520994f, 0.521157f, 0.521321f, 0.521485f, 0.521648f, 0.521812f, + 0.521975f, 0.522139f, 0.522302f, 0.522466f, 0.522629f, 0.522793f, 0.522956f, 0.523120f, + 0.523283f, 0.523447f, 0.523610f, 0.523773f, 0.523937f, 0.524100f, 0.524263f, 0.524426f, + 0.524590f, 0.524753f, 0.524916f, 0.525079f, 0.525243f, 0.525406f, 0.525569f, 0.525732f, + 0.525895f, 0.526058f, 0.526221f, 0.526384f, 0.526547f, 0.526710f, 0.526873f, 0.527036f, + 0.527199f, 0.527362f, 0.527525f, 0.527688f, 0.527851f, 0.528014f, 0.528176f, 0.528339f, + 0.528502f, 0.528665f, 0.528828f, 0.528990f, 0.529153f, 0.529316f, 0.529478f, 0.529641f, + 0.529804f, 0.529966f, 0.530129f, 0.530291f, 0.530454f, 0.530617f, 0.530779f, 0.530942f, + 0.531104f, 0.531266f, 0.531429f, 0.531591f, 0.531754f, 0.531916f, 0.532078f, 0.532241f, + 0.532403f, 0.532565f, 0.532728f, 0.532890f, 0.533052f, 0.533214f, 0.533377f, 0.533539f, + 0.533701f, 0.533863f, 0.534025f, 0.534187f, 0.534349f, 0.534512f, 0.534674f, 0.534836f, + 0.534998f, 0.535160f, 0.535322f, 0.535484f, 0.535645f, 0.535807f, 0.535969f, 0.536131f, + 0.536293f, 0.536455f, 0.536617f, 0.536778f, 0.536940f, 0.537102f, 0.537264f, 0.537425f, + 0.537587f, 0.537749f, 0.537910f, 0.538072f, 0.538234f, 0.538395f, 0.538557f, 0.538718f, + 0.538880f, 0.539041f, 0.539203f, 0.539364f, 0.539526f, 0.539687f, 0.539849f, 0.540010f, + 0.540171f, 0.540333f, 0.540494f, 0.540655f, 0.540817f, 0.540978f, 0.541139f, 0.541301f, + 0.541462f, 0.541623f, 0.541784f, 0.541945f, 0.542106f, 0.542268f, 0.542429f, 0.542590f, + 0.542751f, 0.542912f, 0.543073f, 0.543234f, 0.543395f, 0.543556f, 0.543717f, 0.543878f, + 0.544039f, 0.544199f, 0.544360f, 0.544521f, 0.544682f, 0.544843f, 0.545003f, 0.545164f, + 0.545325f, 0.545486f, 0.545646f, 0.545807f, 0.545968f, 0.546128f, 0.546289f, 0.546450f, + 0.546610f, 0.546771f, 0.546931f, 0.547092f, 0.547252f, 0.547413f, 0.547573f, 0.547734f, + 0.547894f, 0.548054f, 0.548215f, 0.548375f, 0.548536f, 0.548696f, 0.548856f, 0.549016f, + 0.549177f, 0.549337f, 0.549497f, 0.549657f, 0.549818f, 0.549978f, 0.550138f, 0.550298f, + 0.550458f, 0.550618f, 0.550778f, 0.550938f, 0.551098f, 0.551258f, 0.551418f, 0.551578f, + 0.551738f, 0.551898f, 0.552058f, 0.552218f, 0.552378f, 0.552537f, 0.552697f, 0.552857f, + 0.553017f, 0.553176f, 0.553336f, 0.553496f, 0.553656f, 0.553815f, 0.553975f, 0.554134f, + 0.554294f, 0.554454f, 0.554613f, 0.554773f, 0.554932f, 0.555092f, 0.555251f, 0.555411f, + 0.555570f, 0.555730f, 0.555889f, 0.556048f, 0.556208f, 0.556367f, 0.556526f, 0.556686f, + 0.556845f, 0.557004f, 0.557164f, 0.557323f, 0.557482f, 0.557641f, 0.557800f, 0.557959f, + 0.558119f, 0.558278f, 0.558437f, 0.558596f, 0.558755f, 0.558914f, 0.559073f, 0.559232f, + 0.559391f, 0.559550f, 0.559709f, 0.559867f, 0.560026f, 0.560185f, 0.560344f, 0.560503f, + 0.560662f, 0.560820f, 0.560979f, 0.561138f, 0.561297f, 0.561455f, 0.561614f, 0.561773f, + 0.561931f, 0.562090f, 0.562248f, 0.562407f, 0.562565f, 0.562724f, 0.562882f, 0.563041f, + 0.563199f, 0.563358f, 0.563516f, 0.563675f, 0.563833f, 0.563991f, 0.564150f, 0.564308f, + 0.564466f, 0.564624f, 0.564783f, 0.564941f, 0.565099f, 0.565257f, 0.565416f, 0.565574f, + 0.565732f, 0.565890f, 0.566048f, 0.566206f, 0.566364f, 0.566522f, 0.566680f, 0.566838f, + 0.566996f, 0.567154f, 0.567312f, 0.567470f, 0.567628f, 0.567786f, 0.567943f, 0.568101f, + 0.568259f, 0.568417f, 0.568574f, 0.568732f, 0.568890f, 0.569048f, 0.569205f, 0.569363f, + 0.569521f, 0.569678f, 0.569836f, 0.569993f, 0.570151f, 0.570308f, 0.570466f, 0.570623f, + 0.570781f, 0.570938f, 0.571096f, 0.571253f, 0.571410f, 0.571568f, 0.571725f, 0.571882f, + 0.572040f, 0.572197f, 0.572354f, 0.572511f, 0.572669f, 0.572826f, 0.572983f, 0.573140f, + 0.573297f, 0.573454f, 0.573611f, 0.573768f, 0.573925f, 0.574082f, 0.574239f, 0.574396f, + 0.574553f, 0.574710f, 0.574867f, 0.575024f, 0.575181f, 0.575338f, 0.575495f, 0.575651f, + 0.575808f, 0.575965f, 0.576122f, 0.576278f, 0.576435f, 0.576592f, 0.576748f, 0.576905f, + 0.577062f, 0.577218f, 0.577375f, 0.577531f, 0.577688f, 0.577844f, 0.578001f, 0.578157f, + 0.578314f, 0.578470f, 0.578627f, 0.578783f, 0.578939f, 0.579096f, 0.579252f, 0.579408f, + 0.579565f, 0.579721f, 0.579877f, 0.580033f, 0.580189f, 0.580346f, 0.580502f, 0.580658f, + 0.580814f, 0.580970f, 0.581126f, 0.581282f, 0.581438f, 0.581594f, 0.581750f, 0.581906f, + 0.582062f, 0.582218f, 0.582374f, 0.582530f, 0.582685f, 0.582841f, 0.582997f, 0.583153f, + 0.583309f, 0.583464f, 0.583620f, 0.583776f, 0.583931f, 0.584087f, 0.584243f, 0.584398f, + 0.584554f, 0.584710f, 0.584865f, 0.585021f, 0.585176f, 0.585332f, 0.585487f, 0.585642f, + 0.585798f, 0.585953f, 0.586109f, 0.586264f, 0.586419f, 0.586575f, 0.586730f, 0.586885f, + 0.587040f, 0.587196f, 0.587351f, 0.587506f, 0.587661f, 0.587816f, 0.587971f, 0.588126f, + 0.588282f, 0.588437f, 0.588592f, 0.588747f, 0.588902f, 0.589057f, 0.589212f, 0.589366f, + 0.589521f, 0.589676f, 0.589831f, 0.589986f, 0.590141f, 0.590295f, 0.590450f, 0.590605f, + 0.590760f, 0.590914f, 0.591069f, 0.591224f, 0.591378f, 0.591533f, 0.591688f, 0.591842f, + 0.591997f, 0.592151f, 0.592306f, 0.592460f, 0.592615f, 0.592769f, 0.592924f, 0.593078f, + 0.593232f, 0.593387f, 0.593541f, 0.593695f, 0.593850f, 0.594004f, 0.594158f, 0.594312f, + 0.594467f, 0.594621f, 0.594775f, 0.594929f, 0.595083f, 0.595237f, 0.595391f, 0.595545f, + 0.595699f, 0.595853f, 0.596007f, 0.596161f, 0.596315f, 0.596469f, 0.596623f, 0.596777f, + 0.596931f, 0.597085f, 0.597238f, 0.597392f, 0.597546f, 0.597700f, 0.597853f, 0.598007f, + 0.598161f, 0.598314f, 0.598468f, 0.598622f, 0.598775f, 0.598929f, 0.599082f, 0.599236f, + 0.599389f, 0.599543f, 0.599696f, 0.599850f, 0.600003f, 0.600156f, 0.600310f, 0.600463f, + 0.600616f, 0.600770f, 0.600923f, 0.601076f, 0.601230f, 0.601383f, 0.601536f, 0.601689f, + 0.601842f, 0.601995f, 0.602148f, 0.602302f, 0.602455f, 0.602608f, 0.602761f, 0.602914f, + 0.603067f, 0.603220f, 0.603372f, 0.603525f, 0.603678f, 0.603831f, 0.603984f, 0.604137f, + 0.604290f, 0.604442f, 0.604595f, 0.604748f, 0.604900f, 0.605053f, 0.605206f, 0.605358f, + 0.605511f, 0.605664f, 0.605816f, 0.605969f, 0.606121f, 0.606274f, 0.606426f, 0.606579f, + 0.606731f, 0.606884f, 0.607036f, 0.607188f, 0.607341f, 0.607493f, 0.607645f, 0.607798f, + 0.607950f, 0.608102f, 0.608254f, 0.608406f, 0.608559f, 0.608711f, 0.608863f, 0.609015f, + 0.609167f, 0.609319f, 0.609471f, 0.609623f, 0.609775f, 0.609927f, 0.610079f, 0.610231f, + 0.610383f, 0.610535f, 0.610687f, 0.610838f, 0.610990f, 0.611142f, 0.611294f, 0.611445f, + 0.611597f, 0.611749f, 0.611901f, 0.612052f, 0.612204f, 0.612355f, 0.612507f, 0.612659f, + 0.612810f, 0.612962f, 0.613113f, 0.613265f, 0.613416f, 0.613567f, 0.613719f, 0.613870f, + 0.614022f, 0.614173f, 0.614324f, 0.614475f, 0.614627f, 0.614778f, 0.614929f, 0.615080f, + 0.615232f, 0.615383f, 0.615534f, 0.615685f, 0.615836f, 0.615987f, 0.616138f, 0.616289f, + 0.616440f, 0.616591f, 0.616742f, 0.616893f, 0.617044f, 0.617195f, 0.617346f, 0.617496f, + 0.617647f, 0.617798f, 0.617949f, 0.618100f, 0.618250f, 0.618401f, 0.618552f, 0.618702f, + 0.618853f, 0.619004f, 0.619154f, 0.619305f, 0.619455f, 0.619606f, 0.619756f, 0.619907f, + 0.620057f, 0.620208f, 0.620358f, 0.620508f, 0.620659f, 0.620809f, 0.620959f, 0.621110f, + 0.621260f, 0.621410f, 0.621560f, 0.621711f, 0.621861f, 0.622011f, 0.622161f, 0.622311f, + 0.622461f, 0.622611f, 0.622761f, 0.622911f, 0.623061f, 0.623211f, 0.623361f, 0.623511f, + 0.623661f, 0.623811f, 0.623961f, 0.624111f, 0.624260f, 0.624410f, 0.624560f, 0.624710f, + 0.624860f, 0.625009f, 0.625159f, 0.625309f, 0.625458f, 0.625608f, 0.625757f, 0.625907f, + 0.626056f, 0.626206f, 0.626355f, 0.626505f, 0.626654f, 0.626804f, 0.626953f, 0.627102f, + 0.627252f, 0.627401f, 0.627550f, 0.627700f, 0.627849f, 0.627998f, 0.628147f, 0.628297f, + 0.628446f, 0.628595f, 0.628744f, 0.628893f, 0.629042f, 0.629191f, 0.629340f, 0.629489f, + 0.629638f, 0.629787f, 0.629936f, 0.630085f, 0.630234f, 0.630383f, 0.630532f, 0.630680f, + 0.630829f, 0.630978f, 0.631127f, 0.631275f, 0.631424f, 0.631573f, 0.631721f, 0.631870f, + 0.632019f, 0.632167f, 0.632316f, 0.632464f, 0.632613f, 0.632761f, 0.632910f, 0.633058f, + 0.633207f, 0.633355f, 0.633504f, 0.633652f, 0.633800f, 0.633949f, 0.634097f, 0.634245f, + 0.634393f, 0.634542f, 0.634690f, 0.634838f, 0.634986f, 0.635134f, 0.635282f, 0.635430f, + 0.635578f, 0.635726f, 0.635874f, 0.636022f, 0.636170f, 0.636318f, 0.636466f, 0.636614f, + 0.636762f, 0.636910f, 0.637057f, 0.637205f, 0.637353f, 0.637501f, 0.637649f, 0.637796f, + 0.637944f, 0.638092f, 0.638239f, 0.638387f, 0.638534f, 0.638682f, 0.638829f, 0.638977f, + 0.639124f, 0.639272f, 0.639419f, 0.639567f, 0.639714f, 0.639862f, 0.640009f, 0.640156f, + 0.640303f, 0.640451f, 0.640598f, 0.640745f, 0.640892f, 0.641040f, 0.641187f, 0.641334f, + 0.641481f, 0.641628f, 0.641775f, 0.641922f, 0.642069f, 0.642216f, 0.642363f, 0.642510f, + 0.642657f, 0.642804f, 0.642951f, 0.643098f, 0.643245f, 0.643391f, 0.643538f, 0.643685f, + 0.643832f, 0.643978f, 0.644125f, 0.644272f, 0.644418f, 0.644565f, 0.644711f, 0.644858f, + 0.645005f, 0.645151f, 0.645298f, 0.645444f, 0.645590f, 0.645737f, 0.645883f, 0.646030f, + 0.646176f, 0.646322f, 0.646469f, 0.646615f, 0.646761f, 0.646907f, 0.647054f, 0.647200f, + 0.647346f, 0.647492f, 0.647638f, 0.647784f, 0.647930f, 0.648076f, 0.648222f, 0.648368f, + 0.648514f, 0.648660f, 0.648806f, 0.648952f, 0.649098f, 0.649244f, 0.649390f, 0.649536f, + 0.649681f, 0.649827f, 0.649973f, 0.650119f, 0.650264f, 0.650410f, 0.650555f, 0.650701f, + 0.650847f, 0.650992f, 0.651138f, 0.651283f, 0.651429f, 0.651574f, 0.651720f, 0.651865f, + 0.652011f, 0.652156f, 0.652301f, 0.652447f, 0.652592f, 0.652737f, 0.652882f, 0.653028f, + 0.653173f, 0.653318f, 0.653463f, 0.653608f, 0.653753f, 0.653899f, 0.654044f, 0.654189f, + 0.654334f, 0.654479f, 0.654624f, 0.654769f, 0.654913f, 0.655058f, 0.655203f, 0.655348f, + 0.655493f, 0.655638f, 0.655782f, 0.655927f, 0.656072f, 0.656217f, 0.656361f, 0.656506f, + 0.656651f, 0.656795f, 0.656940f, 0.657084f, 0.657229f, 0.657373f, 0.657518f, 0.657662f, + 0.657807f, 0.657951f, 0.658095f, 0.658240f, 0.658384f, 0.658529f, 0.658673f, 0.658817f, + 0.658961f, 0.659105f, 0.659250f, 0.659394f, 0.659538f, 0.659682f, 0.659826f, 0.659970f, + 0.660114f, 0.660258f, 0.660402f, 0.660546f, 0.660690f, 0.660834f, 0.660978f, 0.661122f, + 0.661266f, 0.661410f, 0.661553f, 0.661697f, 0.661841f, 0.661985f, 0.662128f, 0.662272f, + 0.662416f, 0.662559f, 0.662703f, 0.662847f, 0.662990f, 0.663134f, 0.663277f, 0.663421f, + 0.663564f, 0.663708f, 0.663851f, 0.663994f, 0.664138f, 0.664281f, 0.664424f, 0.664568f, + 0.664711f, 0.664854f, 0.664997f, 0.665141f, 0.665284f, 0.665427f, 0.665570f, 0.665713f, + 0.665856f, 0.665999f, 0.666142f, 0.666285f, 0.666428f, 0.666571f, 0.666714f, 0.666857f, + 0.667000f, 0.667143f, 0.667286f, 0.667428f, 0.667571f, 0.667714f, 0.667857f, 0.667999f, + 0.668142f, 0.668285f, 0.668427f, 0.668570f, 0.668712f, 0.668855f, 0.668998f, 0.669140f, + 0.669283f, 0.669425f, 0.669567f, 0.669710f, 0.669852f, 0.669995f, 0.670137f, 0.670279f, + 0.670422f, 0.670564f, 0.670706f, 0.670848f, 0.670990f, 0.671133f, 0.671275f, 0.671417f, + 0.671559f, 0.671701f, 0.671843f, 0.671985f, 0.672127f, 0.672269f, 0.672411f, 0.672553f, + 0.672695f, 0.672837f, 0.672978f, 0.673120f, 0.673262f, 0.673404f, 0.673546f, 0.673687f, + 0.673829f, 0.673971f, 0.674112f, 0.674254f, 0.674396f, 0.674537f, 0.674679f, 0.674820f, + 0.674962f, 0.675103f, 0.675245f, 0.675386f, 0.675527f, 0.675669f, 0.675810f, 0.675951f, + 0.676093f, 0.676234f, 0.676375f, 0.676516f, 0.676658f, 0.676799f, 0.676940f, 0.677081f, + 0.677222f, 0.677363f, 0.677504f, 0.677645f, 0.677786f, 0.677927f, 0.678068f, 0.678209f, + 0.678350f, 0.678491f, 0.678632f, 0.678773f, 0.678913f, 0.679054f, 0.679195f, 0.679336f, + 0.679476f, 0.679617f, 0.679758f, 0.679898f, 0.680039f, 0.680179f, 0.680320f, 0.680461f, + 0.680601f, 0.680741f, 0.680882f, 0.681022f, 0.681163f, 0.681303f, 0.681443f, 0.681584f, + 0.681724f, 0.681864f, 0.682005f, 0.682145f, 0.682285f, 0.682425f, 0.682565f, 0.682705f, + 0.682846f, 0.682986f, 0.683126f, 0.683266f, 0.683406f, 0.683546f, 0.683686f, 0.683825f, + 0.683965f, 0.684105f, 0.684245f, 0.684385f, 0.684525f, 0.684664f, 0.684804f, 0.684944f, + 0.685084f, 0.685223f, 0.685363f, 0.685503f, 0.685642f, 0.685782f, 0.685921f, 0.686061f, + 0.686200f, 0.686340f, 0.686479f, 0.686619f, 0.686758f, 0.686897f, 0.687037f, 0.687176f, + 0.687315f, 0.687455f, 0.687594f, 0.687733f, 0.687872f, 0.688011f, 0.688151f, 0.688290f, + 0.688429f, 0.688568f, 0.688707f, 0.688846f, 0.688985f, 0.689124f, 0.689263f, 0.689402f, + 0.689541f, 0.689679f, 0.689818f, 0.689957f, 0.690096f, 0.690235f, 0.690373f, 0.690512f, + 0.690651f, 0.690789f, 0.690928f, 0.691067f, 0.691205f, 0.691344f, 0.691482f, 0.691621f, + 0.691759f, 0.691898f, 0.692036f, 0.692175f, 0.692313f, 0.692451f, 0.692590f, 0.692728f, + 0.692866f, 0.693004f, 0.693143f, 0.693281f, 0.693419f, 0.693557f, 0.693695f, 0.693833f, + 0.693971f, 0.694109f, 0.694248f, 0.694386f, 0.694524f, 0.694661f, 0.694799f, 0.694937f, + 0.695075f, 0.695213f, 0.695351f, 0.695489f, 0.695626f, 0.695764f, 0.695902f, 0.696039f, + 0.696177f, 0.696315f, 0.696452f, 0.696590f, 0.696728f, 0.696865f, 0.697003f, 0.697140f, + 0.697277f, 0.697415f, 0.697552f, 0.697690f, 0.697827f, 0.697964f, 0.698102f, 0.698239f, + 0.698376f, 0.698513f, 0.698651f, 0.698788f, 0.698925f, 0.699062f, 0.699199f, 0.699336f, + 0.699473f, 0.699610f, 0.699747f, 0.699884f, 0.700021f, 0.700158f, 0.700295f, 0.700432f, + 0.700569f, 0.700706f, 0.700842f, 0.700979f, 0.701116f, 0.701253f, 0.701389f, 0.701526f, + 0.701663f, 0.701799f, 0.701936f, 0.702072f, 0.702209f, 0.702345f, 0.702482f, 0.702618f, + 0.702755f, 0.702891f, 0.703028f, 0.703164f, 0.703300f, 0.703436f, 0.703573f, 0.703709f, + 0.703845f, 0.703981f, 0.704118f, 0.704254f, 0.704390f, 0.704526f, 0.704662f, 0.704798f, + 0.704934f, 0.705070f, 0.705206f, 0.705342f, 0.705478f, 0.705614f, 0.705750f, 0.705885f, + 0.706021f, 0.706157f, 0.706293f, 0.706429f, 0.706564f, 0.706700f, 0.706836f, 0.706971f, + 0.707107f, 0.707242f, 0.707378f, 0.707513f, 0.707649f, 0.707784f, 0.707920f, 0.708055f, + 0.708191f, 0.708326f, 0.708461f, 0.708597f, 0.708732f, 0.708867f, 0.709002f, 0.709138f, + 0.709273f, 0.709408f, 0.709543f, 0.709678f, 0.709813f, 0.709948f, 0.710083f, 0.710218f, + 0.710353f, 0.710488f, 0.710623f, 0.710758f, 0.710893f, 0.711028f, 0.711163f, 0.711297f, + 0.711432f, 0.711567f, 0.711702f, 0.711836f, 0.711971f, 0.712106f, 0.712240f, 0.712375f, + 0.712509f, 0.712644f, 0.712778f, 0.712913f, 0.713047f, 0.713182f, 0.713316f, 0.713451f, + 0.713585f, 0.713719f, 0.713853f, 0.713988f, 0.714122f, 0.714256f, 0.714390f, 0.714525f, + 0.714659f, 0.714793f, 0.714927f, 0.715061f, 0.715195f, 0.715329f, 0.715463f, 0.715597f, + 0.715731f, 0.715865f, 0.715999f, 0.716132f, 0.716266f, 0.716400f, 0.716534f, 0.716668f, + 0.716801f, 0.716935f, 0.717069f, 0.717202f, 0.717336f, 0.717469f, 0.717603f, 0.717737f, + 0.717870f, 0.718004f, 0.718137f, 0.718270f, 0.718404f, 0.718537f, 0.718670f, 0.718804f, + 0.718937f, 0.719070f, 0.719204f, 0.719337f, 0.719470f, 0.719603f, 0.719736f, 0.719869f, + 0.720003f, 0.720136f, 0.720269f, 0.720402f, 0.720535f, 0.720668f, 0.720800f, 0.720933f, + 0.721066f, 0.721199f, 0.721332f, 0.721465f, 0.721597f, 0.721730f, 0.721863f, 0.721996f, + 0.722128f, 0.722261f, 0.722393f, 0.722526f, 0.722659f, 0.722791f, 0.722924f, 0.723056f, + 0.723188f, 0.723321f, 0.723453f, 0.723586f, 0.723718f, 0.723850f, 0.723983f, 0.724115f, + 0.724247f, 0.724379f, 0.724511f, 0.724644f, 0.724776f, 0.724908f, 0.725040f, 0.725172f, + 0.725304f, 0.725436f, 0.725568f, 0.725700f, 0.725832f, 0.725964f, 0.726095f, 0.726227f, + 0.726359f, 0.726491f, 0.726623f, 0.726754f, 0.726886f, 0.727018f, 0.727149f, 0.727281f, + 0.727413f, 0.727544f, 0.727676f, 0.727807f, 0.727939f, 0.728070f, 0.728202f, 0.728333f, + 0.728464f, 0.728596f, 0.728727f, 0.728858f, 0.728990f, 0.729121f, 0.729252f, 0.729383f, + 0.729514f, 0.729646f, 0.729777f, 0.729908f, 0.730039f, 0.730170f, 0.730301f, 0.730432f, + 0.730563f, 0.730694f, 0.730825f, 0.730955f, 0.731086f, 0.731217f, 0.731348f, 0.731479f, + 0.731609f, 0.731740f, 0.731871f, 0.732001f, 0.732132f, 0.732263f, 0.732393f, 0.732524f, + 0.732654f, 0.732785f, 0.732915f, 0.733046f, 0.733176f, 0.733306f, 0.733437f, 0.733567f, + 0.733697f, 0.733828f, 0.733958f, 0.734088f, 0.734218f, 0.734349f, 0.734479f, 0.734609f, + 0.734739f, 0.734869f, 0.734999f, 0.735129f, 0.735259f, 0.735389f, 0.735519f, 0.735649f, + 0.735779f, 0.735908f, 0.736038f, 0.736168f, 0.736298f, 0.736428f, 0.736557f, 0.736687f, + 0.736817f, 0.736946f, 0.737076f, 0.737205f, 0.737335f, 0.737464f, 0.737594f, 0.737723f, + 0.737853f, 0.737982f, 0.738112f, 0.738241f, 0.738370f, 0.738500f, 0.738629f, 0.738758f, + 0.738887f, 0.739017f, 0.739146f, 0.739275f, 0.739404f, 0.739533f, 0.739662f, 0.739791f, + 0.739920f, 0.740049f, 0.740178f, 0.740307f, 0.740436f, 0.740565f, 0.740694f, 0.740822f, + 0.740951f, 0.741080f, 0.741209f, 0.741337f, 0.741466f, 0.741595f, 0.741723f, 0.741852f, + 0.741980f, 0.742109f, 0.742237f, 0.742366f, 0.742494f, 0.742623f, 0.742751f, 0.742880f, + 0.743008f, 0.743136f, 0.743265f, 0.743393f, 0.743521f, 0.743649f, 0.743777f, 0.743906f, + 0.744034f, 0.744162f, 0.744290f, 0.744418f, 0.744546f, 0.744674f, 0.744802f, 0.744930f, + 0.745058f, 0.745186f, 0.745314f, 0.745441f, 0.745569f, 0.745697f, 0.745825f, 0.745952f, + 0.746080f, 0.746208f, 0.746335f, 0.746463f, 0.746591f, 0.746718f, 0.746846f, 0.746973f, + 0.747101f, 0.747228f, 0.747355f, 0.747483f, 0.747610f, 0.747738f, 0.747865f, 0.747992f, + 0.748119f, 0.748247f, 0.748374f, 0.748501f, 0.748628f, 0.748755f, 0.748882f, 0.749009f, + 0.749136f, 0.749263f, 0.749390f, 0.749517f, 0.749644f, 0.749771f, 0.749898f, 0.750025f, + 0.750152f, 0.750278f, 0.750405f, 0.750532f, 0.750659f, 0.750785f, 0.750912f, 0.751039f, + 0.751165f, 0.751292f, 0.751418f, 0.751545f, 0.751671f, 0.751798f, 0.751924f, 0.752050f, + 0.752177f, 0.752303f, 0.752429f, 0.752556f, 0.752682f, 0.752808f, 0.752934f, 0.753061f, + 0.753187f, 0.753313f, 0.753439f, 0.753565f, 0.753691f, 0.753817f, 0.753943f, 0.754069f, + 0.754195f, 0.754321f, 0.754447f, 0.754573f, 0.754698f, 0.754824f, 0.754950f, 0.755076f, + 0.755201f, 0.755327f, 0.755453f, 0.755578f, 0.755704f, 0.755829f, 0.755955f, 0.756081f, + 0.756206f, 0.756331f, 0.756457f, 0.756582f, 0.756708f, 0.756833f, 0.756958f, 0.757084f, + 0.757209f, 0.757334f, 0.757459f, 0.757584f, 0.757710f, 0.757835f, 0.757960f, 0.758085f, + 0.758210f, 0.758335f, 0.758460f, 0.758585f, 0.758710f, 0.758835f, 0.758960f, 0.759084f, + 0.759209f, 0.759334f, 0.759459f, 0.759583f, 0.759708f, 0.759833f, 0.759957f, 0.760082f, + 0.760207f, 0.760331f, 0.760456f, 0.760580f, 0.760705f, 0.760829f, 0.760954f, 0.761078f, + 0.761202f, 0.761327f, 0.761451f, 0.761575f, 0.761700f, 0.761824f, 0.761948f, 0.762072f, + 0.762196f, 0.762320f, 0.762444f, 0.762569f, 0.762693f, 0.762817f, 0.762941f, 0.763065f, + 0.763188f, 0.763312f, 0.763436f, 0.763560f, 0.763684f, 0.763808f, 0.763931f, 0.764055f, + 0.764179f, 0.764302f, 0.764426f, 0.764550f, 0.764673f, 0.764797f, 0.764920f, 0.765044f, + 0.765167f, 0.765291f, 0.765414f, 0.765538f, 0.765661f, 0.765784f, 0.765907f, 0.766031f, + 0.766154f, 0.766277f, 0.766400f, 0.766524f, 0.766647f, 0.766770f, 0.766893f, 0.767016f, + 0.767139f, 0.767262f, 0.767385f, 0.767508f, 0.767631f, 0.767754f, 0.767876f, 0.767999f, + 0.768122f, 0.768245f, 0.768368f, 0.768490f, 0.768613f, 0.768736f, 0.768858f, 0.768981f, + 0.769103f, 0.769226f, 0.769348f, 0.769471f, 0.769593f, 0.769716f, 0.769838f, 0.769961f, + 0.770083f, 0.770205f, 0.770327f, 0.770450f, 0.770572f, 0.770694f, 0.770816f, 0.770938f, + 0.771061f, 0.771183f, 0.771305f, 0.771427f, 0.771549f, 0.771671f, 0.771793f, 0.771915f, + 0.772036f, 0.772158f, 0.772280f, 0.772402f, 0.772524f, 0.772645f, 0.772767f, 0.772889f, + 0.773010f, 0.773132f, 0.773254f, 0.773375f, 0.773497f, 0.773618f, 0.773740f, 0.773861f, + 0.773983f, 0.774104f, 0.774225f, 0.774347f, 0.774468f, 0.774589f, 0.774711f, 0.774832f, + 0.774953f, 0.775074f, 0.775195f, 0.775317f, 0.775438f, 0.775559f, 0.775680f, 0.775801f, + 0.775922f, 0.776043f, 0.776164f, 0.776284f, 0.776405f, 0.776526f, 0.776647f, 0.776768f, + 0.776888f, 0.777009f, 0.777130f, 0.777251f, 0.777371f, 0.777492f, 0.777612f, 0.777733f, + 0.777853f, 0.777974f, 0.778094f, 0.778215f, 0.778335f, 0.778456f, 0.778576f, 0.778696f, + 0.778817f, 0.778937f, 0.779057f, 0.779177f, 0.779297f, 0.779418f, 0.779538f, 0.779658f, + 0.779778f, 0.779898f, 0.780018f, 0.780138f, 0.780258f, 0.780378f, 0.780498f, 0.780617f, + 0.780737f, 0.780857f, 0.780977f, 0.781097f, 0.781216f, 0.781336f, 0.781456f, 0.781575f, + 0.781695f, 0.781814f, 0.781934f, 0.782053f, 0.782173f, 0.782292f, 0.782412f, 0.782531f, + 0.782651f, 0.782770f, 0.782889f, 0.783009f, 0.783128f, 0.783247f, 0.783366f, 0.783485f, + 0.783605f, 0.783724f, 0.783843f, 0.783962f, 0.784081f, 0.784200f, 0.784319f, 0.784438f, + 0.784557f, 0.784675f, 0.784794f, 0.784913f, 0.785032f, 0.785151f, 0.785269f, 0.785388f, + 0.785507f, 0.785625f, 0.785744f, 0.785863f, 0.785981f, 0.786100f, 0.786218f, 0.786337f, + 0.786455f, 0.786574f, 0.786692f, 0.786810f, 0.786929f, 0.787047f, 0.787165f, 0.787284f, + 0.787402f, 0.787520f, 0.787638f, 0.787756f, 0.787874f, 0.787992f, 0.788110f, 0.788228f, + 0.788346f, 0.788464f, 0.788582f, 0.788700f, 0.788818f, 0.788936f, 0.789054f, 0.789172f, + 0.789289f, 0.789407f, 0.789525f, 0.789642f, 0.789760f, 0.789878f, 0.789995f, 0.790113f, + 0.790230f, 0.790348f, 0.790465f, 0.790583f, 0.790700f, 0.790817f, 0.790935f, 0.791052f, + 0.791169f, 0.791287f, 0.791404f, 0.791521f, 0.791638f, 0.791755f, 0.791872f, 0.791990f, + 0.792107f, 0.792224f, 0.792341f, 0.792458f, 0.792575f, 0.792691f, 0.792808f, 0.792925f, + 0.793042f, 0.793159f, 0.793276f, 0.793392f, 0.793509f, 0.793626f, 0.793742f, 0.793859f, + 0.793975f, 0.794092f, 0.794209f, 0.794325f, 0.794442f, 0.794558f, 0.794674f, 0.794791f, + 0.794907f, 0.795023f, 0.795140f, 0.795256f, 0.795372f, 0.795488f, 0.795605f, 0.795721f, + 0.795837f, 0.795953f, 0.796069f, 0.796185f, 0.796301f, 0.796417f, 0.796533f, 0.796649f, + 0.796765f, 0.796881f, 0.796996f, 0.797112f, 0.797228f, 0.797344f, 0.797459f, 0.797575f, + 0.797691f, 0.797806f, 0.797922f, 0.798038f, 0.798153f, 0.798269f, 0.798384f, 0.798500f, + 0.798615f, 0.798730f, 0.798846f, 0.798961f, 0.799076f, 0.799192f, 0.799307f, 0.799422f, + 0.799537f, 0.799652f, 0.799768f, 0.799883f, 0.799998f, 0.800113f, 0.800228f, 0.800343f, + 0.800458f, 0.800573f, 0.800687f, 0.800802f, 0.800917f, 0.801032f, 0.801147f, 0.801261f, + 0.801376f, 0.801491f, 0.801606f, 0.801720f, 0.801835f, 0.801949f, 0.802064f, 0.802178f, + 0.802293f, 0.802407f, 0.802522f, 0.802636f, 0.802750f, 0.802865f, 0.802979f, 0.803093f, + 0.803208f, 0.803322f, 0.803436f, 0.803550f, 0.803664f, 0.803778f, 0.803892f, 0.804006f, + 0.804120f, 0.804234f, 0.804348f, 0.804462f, 0.804576f, 0.804690f, 0.804804f, 0.804918f, + 0.805031f, 0.805145f, 0.805259f, 0.805372f, 0.805486f, 0.805600f, 0.805713f, 0.805827f, + 0.805940f, 0.806054f, 0.806167f, 0.806281f, 0.806394f, 0.806508f, 0.806621f, 0.806734f, + 0.806848f, 0.806961f, 0.807074f, 0.807187f, 0.807300f, 0.807414f, 0.807527f, 0.807640f, + 0.807753f, 0.807866f, 0.807979f, 0.808092f, 0.808205f, 0.808318f, 0.808430f, 0.808543f, + 0.808656f, 0.808769f, 0.808882f, 0.808994f, 0.809107f, 0.809220f, 0.809332f, 0.809445f, + 0.809558f, 0.809670f, 0.809783f, 0.809895f, 0.810008f, 0.810120f, 0.810232f, 0.810345f, + 0.810457f, 0.810570f, 0.810682f, 0.810794f, 0.810906f, 0.811018f, 0.811131f, 0.811243f, + 0.811355f, 0.811467f, 0.811579f, 0.811691f, 0.811803f, 0.811915f, 0.812027f, 0.812139f, + 0.812251f, 0.812362f, 0.812474f, 0.812586f, 0.812698f, 0.812809f, 0.812921f, 0.813033f, + 0.813144f, 0.813256f, 0.813368f, 0.813479f, 0.813591f, 0.813702f, 0.813814f, 0.813925f, + 0.814036f, 0.814148f, 0.814259f, 0.814370f, 0.814482f, 0.814593f, 0.814704f, 0.814815f, + 0.814926f, 0.815037f, 0.815149f, 0.815260f, 0.815371f, 0.815482f, 0.815593f, 0.815704f, + 0.815814f, 0.815925f, 0.816036f, 0.816147f, 0.816258f, 0.816368f, 0.816479f, 0.816590f, + 0.816701f, 0.816811f, 0.816922f, 0.817032f, 0.817143f, 0.817253f, 0.817364f, 0.817474f, + 0.817585f, 0.817695f, 0.817806f, 0.817916f, 0.818026f, 0.818137f, 0.818247f, 0.818357f, + 0.818467f, 0.818577f, 0.818687f, 0.818798f, 0.818908f, 0.819018f, 0.819128f, 0.819238f, + 0.819348f, 0.819457f, 0.819567f, 0.819677f, 0.819787f, 0.819897f, 0.820007f, 0.820116f, + 0.820226f, 0.820336f, 0.820445f, 0.820555f, 0.820664f, 0.820774f, 0.820884f, 0.820993f, + 0.821102f, 0.821212f, 0.821321f, 0.821431f, 0.821540f, 0.821649f, 0.821759f, 0.821868f, + 0.821977f, 0.822086f, 0.822195f, 0.822305f, 0.822414f, 0.822523f, 0.822632f, 0.822741f, + 0.822850f, 0.822959f, 0.823068f, 0.823177f, 0.823285f, 0.823394f, 0.823503f, 0.823612f, + 0.823721f, 0.823829f, 0.823938f, 0.824047f, 0.824155f, 0.824264f, 0.824372f, 0.824481f, + 0.824589f, 0.824698f, 0.824806f, 0.824915f, 0.825023f, 0.825131f, 0.825240f, 0.825348f, + 0.825456f, 0.825564f, 0.825673f, 0.825781f, 0.825889f, 0.825997f, 0.826105f, 0.826213f, + 0.826321f, 0.826429f, 0.826537f, 0.826645f, 0.826753f, 0.826861f, 0.826968f, 0.827076f, + 0.827184f, 0.827292f, 0.827399f, 0.827507f, 0.827615f, 0.827722f, 0.827830f, 0.827938f, + 0.828045f, 0.828153f, 0.828260f, 0.828367f, 0.828475f, 0.828582f, 0.828690f, 0.828797f, + 0.828904f, 0.829011f, 0.829119f, 0.829226f, 0.829333f, 0.829440f, 0.829547f, 0.829654f, + 0.829761f, 0.829868f, 0.829975f, 0.830082f, 0.830189f, 0.830296f, 0.830403f, 0.830510f, + 0.830616f, 0.830723f, 0.830830f, 0.830937f, 0.831043f, 0.831150f, 0.831257f, 0.831363f, + 0.831470f, 0.831576f, 0.831683f, 0.831789f, 0.831895f, 0.832002f, 0.832108f, 0.832215f, + 0.832321f, 0.832427f, 0.832533f, 0.832640f, 0.832746f, 0.832852f, 0.832958f, 0.833064f, + 0.833170f, 0.833276f, 0.833382f, 0.833488f, 0.833594f, 0.833700f, 0.833806f, 0.833912f, + 0.834018f, 0.834123f, 0.834229f, 0.834335f, 0.834440f, 0.834546f, 0.834652f, 0.834757f, + 0.834863f, 0.834968f, 0.835074f, 0.835179f, 0.835285f, 0.835390f, 0.835496f, 0.835601f, + 0.835706f, 0.835812f, 0.835917f, 0.836022f, 0.836127f, 0.836232f, 0.836338f, 0.836443f, + 0.836548f, 0.836653f, 0.836758f, 0.836863f, 0.836968f, 0.837073f, 0.837178f, 0.837282f, + 0.837387f, 0.837492f, 0.837597f, 0.837701f, 0.837806f, 0.837911f, 0.838015f, 0.838120f, + 0.838225f, 0.838329f, 0.838434f, 0.838538f, 0.838643f, 0.838747f, 0.838852f, 0.838956f, + 0.839060f, 0.839165f, 0.839269f, 0.839373f, 0.839477f, 0.839581f, 0.839686f, 0.839790f, + 0.839894f, 0.839998f, 0.840102f, 0.840206f, 0.840310f, 0.840414f, 0.840518f, 0.840622f, + 0.840725f, 0.840829f, 0.840933f, 0.841037f, 0.841140f, 0.841244f, 0.841348f, 0.841451f, + 0.841555f, 0.841659f, 0.841762f, 0.841866f, 0.841969f, 0.842072f, 0.842176f, 0.842279f, + 0.842383f, 0.842486f, 0.842589f, 0.842692f, 0.842796f, 0.842899f, 0.843002f, 0.843105f, + 0.843208f, 0.843311f, 0.843414f, 0.843517f, 0.843620f, 0.843723f, 0.843826f, 0.843929f, + 0.844032f, 0.844135f, 0.844238f, 0.844340f, 0.844443f, 0.844546f, 0.844648f, 0.844751f, + 0.844854f, 0.844956f, 0.845059f, 0.845161f, 0.845264f, 0.845366f, 0.845469f, 0.845571f, + 0.845673f, 0.845776f, 0.845878f, 0.845980f, 0.846082f, 0.846185f, 0.846287f, 0.846389f, + 0.846491f, 0.846593f, 0.846695f, 0.846797f, 0.846899f, 0.847001f, 0.847103f, 0.847205f, + 0.847307f, 0.847408f, 0.847510f, 0.847612f, 0.847714f, 0.847815f, 0.847917f, 0.848019f, + 0.848120f, 0.848222f, 0.848323f, 0.848425f, 0.848526f, 0.848628f, 0.848729f, 0.848831f, + 0.848932f, 0.849033f, 0.849135f, 0.849236f, 0.849337f, 0.849438f, 0.849540f, 0.849641f, + 0.849742f, 0.849843f, 0.849944f, 0.850045f, 0.850146f, 0.850247f, 0.850348f, 0.850449f, + 0.850549f, 0.850650f, 0.850751f, 0.850852f, 0.850953f, 0.851053f, 0.851154f, 0.851255f, + 0.851355f, 0.851456f, 0.851556f, 0.851657f, 0.851757f, 0.851858f, 0.851958f, 0.852059f, + 0.852159f, 0.852259f, 0.852360f, 0.852460f, 0.852560f, 0.852660f, 0.852760f, 0.852861f, + 0.852961f, 0.853061f, 0.853161f, 0.853261f, 0.853361f, 0.853461f, 0.853561f, 0.853660f, + 0.853760f, 0.853860f, 0.853960f, 0.854060f, 0.854159f, 0.854259f, 0.854359f, 0.854458f, + 0.854558f, 0.854658f, 0.854757f, 0.854857f, 0.854956f, 0.855056f, 0.855155f, 0.855254f, + 0.855354f, 0.855453f, 0.855552f, 0.855651f, 0.855751f, 0.855850f, 0.855949f, 0.856048f, + 0.856147f, 0.856246f, 0.856345f, 0.856444f, 0.856543f, 0.856642f, 0.856741f, 0.856840f, + 0.856939f, 0.857038f, 0.857137f, 0.857235f, 0.857334f, 0.857433f, 0.857531f, 0.857630f, + 0.857729f, 0.857827f, 0.857926f, 0.858024f, 0.858123f, 0.858221f, 0.858320f, 0.858418f, + 0.858516f, 0.858615f, 0.858713f, 0.858811f, 0.858909f, 0.859007f, 0.859106f, 0.859204f, + 0.859302f, 0.859400f, 0.859498f, 0.859596f, 0.859694f, 0.859792f, 0.859890f, 0.859988f, + 0.860085f, 0.860183f, 0.860281f, 0.860379f, 0.860476f, 0.860574f, 0.860672f, 0.860769f, + 0.860867f, 0.860964f, 0.861062f, 0.861160f, 0.861257f, 0.861354f, 0.861452f, 0.861549f, + 0.861646f, 0.861744f, 0.861841f, 0.861938f, 0.862035f, 0.862133f, 0.862230f, 0.862327f, + 0.862424f, 0.862521f, 0.862618f, 0.862715f, 0.862812f, 0.862909f, 0.863006f, 0.863103f, + 0.863199f, 0.863296f, 0.863393f, 0.863490f, 0.863586f, 0.863683f, 0.863780f, 0.863876f, + 0.863973f, 0.864069f, 0.864166f, 0.864262f, 0.864359f, 0.864455f, 0.864552f, 0.864648f, + 0.864744f, 0.864841f, 0.864937f, 0.865033f, 0.865129f, 0.865225f, 0.865321f, 0.865418f, + 0.865514f, 0.865610f, 0.865706f, 0.865802f, 0.865898f, 0.865993f, 0.866089f, 0.866185f, + 0.866281f, 0.866377f, 0.866472f, 0.866568f, 0.866664f, 0.866759f, 0.866855f, 0.866951f, + 0.867046f, 0.867142f, 0.867237f, 0.867333f, 0.867428f, 0.867523f, 0.867619f, 0.867714f, + 0.867809f, 0.867905f, 0.868000f, 0.868095f, 0.868190f, 0.868285f, 0.868381f, 0.868476f, + 0.868571f, 0.868666f, 0.868761f, 0.868856f, 0.868951f, 0.869045f, 0.869140f, 0.869235f, + 0.869330f, 0.869425f, 0.869519f, 0.869614f, 0.869709f, 0.869803f, 0.869898f, 0.869992f, + 0.870087f, 0.870182f, 0.870276f, 0.870370f, 0.870465f, 0.870559f, 0.870654f, 0.870748f, + 0.870842f, 0.870936f, 0.871031f, 0.871125f, 0.871219f, 0.871313f, 0.871407f, 0.871501f, + 0.871595f, 0.871689f, 0.871783f, 0.871877f, 0.871971f, 0.872065f, 0.872159f, 0.872252f, + 0.872346f, 0.872440f, 0.872534f, 0.872627f, 0.872721f, 0.872814f, 0.872908f, 0.873001f, + 0.873095f, 0.873188f, 0.873282f, 0.873375f, 0.873469f, 0.873562f, 0.873655f, 0.873749f, + 0.873842f, 0.873935f, 0.874028f, 0.874121f, 0.874215f, 0.874308f, 0.874401f, 0.874494f, + 0.874587f, 0.874680f, 0.874773f, 0.874865f, 0.874958f, 0.875051f, 0.875144f, 0.875237f, + 0.875329f, 0.875422f, 0.875515f, 0.875607f, 0.875700f, 0.875793f, 0.875885f, 0.875978f, + 0.876070f, 0.876163f, 0.876255f, 0.876347f, 0.876440f, 0.876532f, 0.876624f, 0.876716f, + 0.876809f, 0.876901f, 0.876993f, 0.877085f, 0.877177f, 0.877269f, 0.877361f, 0.877453f, + 0.877545f, 0.877637f, 0.877729f, 0.877821f, 0.877913f, 0.878005f, 0.878096f, 0.878188f, + 0.878280f, 0.878371f, 0.878463f, 0.878555f, 0.878646f, 0.878738f, 0.878829f, 0.878921f, + 0.879012f, 0.879104f, 0.879195f, 0.879286f, 0.879378f, 0.879469f, 0.879560f, 0.879651f, + 0.879743f, 0.879834f, 0.879925f, 0.880016f, 0.880107f, 0.880198f, 0.880289f, 0.880380f, + 0.880471f, 0.880562f, 0.880653f, 0.880743f, 0.880834f, 0.880925f, 0.881016f, 0.881106f, + 0.881197f, 0.881288f, 0.881378f, 0.881469f, 0.881559f, 0.881650f, 0.881740f, 0.881831f, + 0.881921f, 0.882012f, 0.882102f, 0.882192f, 0.882283f, 0.882373f, 0.882463f, 0.882553f, + 0.882643f, 0.882733f, 0.882824f, 0.882914f, 0.883004f, 0.883094f, 0.883184f, 0.883273f, + 0.883363f, 0.883453f, 0.883543f, 0.883633f, 0.883723f, 0.883812f, 0.883902f, 0.883992f, + 0.884081f, 0.884171f, 0.884260f, 0.884350f, 0.884439f, 0.884529f, 0.884618f, 0.884708f, + 0.884797f, 0.884886f, 0.884976f, 0.885065f, 0.885154f, 0.885243f, 0.885333f, 0.885422f, + 0.885511f, 0.885600f, 0.885689f, 0.885778f, 0.885867f, 0.885956f, 0.886045f, 0.886134f, + 0.886223f, 0.886311f, 0.886400f, 0.886489f, 0.886578f, 0.886666f, 0.886755f, 0.886844f, + 0.886932f, 0.887021f, 0.887109f, 0.887198f, 0.887286f, 0.887375f, 0.887463f, 0.887551f, + 0.887640f, 0.887728f, 0.887816f, 0.887904f, 0.887993f, 0.888081f, 0.888169f, 0.888257f, + 0.888345f, 0.888433f, 0.888521f, 0.888609f, 0.888697f, 0.888785f, 0.888873f, 0.888961f, + 0.889048f, 0.889136f, 0.889224f, 0.889312f, 0.889399f, 0.889487f, 0.889574f, 0.889662f, + 0.889750f, 0.889837f, 0.889925f, 0.890012f, 0.890099f, 0.890187f, 0.890274f, 0.890361f, + 0.890449f, 0.890536f, 0.890623f, 0.890710f, 0.890797f, 0.890885f, 0.890972f, 0.891059f, + 0.891146f, 0.891233f, 0.891320f, 0.891407f, 0.891493f, 0.891580f, 0.891667f, 0.891754f, + 0.891841f, 0.891927f, 0.892014f, 0.892101f, 0.892187f, 0.892274f, 0.892361f, 0.892447f, + 0.892534f, 0.892620f, 0.892706f, 0.892793f, 0.892879f, 0.892965f, 0.893052f, 0.893138f, + 0.893224f, 0.893310f, 0.893397f, 0.893483f, 0.893569f, 0.893655f, 0.893741f, 0.893827f, + 0.893913f, 0.893999f, 0.894085f, 0.894171f, 0.894256f, 0.894342f, 0.894428f, 0.894514f, + 0.894599f, 0.894685f, 0.894771f, 0.894856f, 0.894942f, 0.895028f, 0.895113f, 0.895198f, + 0.895284f, 0.895369f, 0.895455f, 0.895540f, 0.895625f, 0.895711f, 0.895796f, 0.895881f, + 0.895966f, 0.896051f, 0.896137f, 0.896222f, 0.896307f, 0.896392f, 0.896477f, 0.896562f, + 0.896646f, 0.896731f, 0.896816f, 0.896901f, 0.896986f, 0.897071f, 0.897155f, 0.897240f, + 0.897325f, 0.897409f, 0.897494f, 0.897578f, 0.897663f, 0.897747f, 0.897832f, 0.897916f, + 0.898001f, 0.898085f, 0.898169f, 0.898254f, 0.898338f, 0.898422f, 0.898506f, 0.898590f, + 0.898674f, 0.898759f, 0.898843f, 0.898927f, 0.899011f, 0.899095f, 0.899179f, 0.899262f, + 0.899346f, 0.899430f, 0.899514f, 0.899598f, 0.899681f, 0.899765f, 0.899849f, 0.899932f, + 0.900016f, 0.900099f, 0.900183f, 0.900266f, 0.900350f, 0.900433f, 0.900517f, 0.900600f, + 0.900683f, 0.900767f, 0.900850f, 0.900933f, 0.901016f, 0.901100f, 0.901183f, 0.901266f, + 0.901349f, 0.901432f, 0.901515f, 0.901598f, 0.901681f, 0.901764f, 0.901847f, 0.901929f, + 0.902012f, 0.902095f, 0.902178f, 0.902260f, 0.902343f, 0.902426f, 0.902508f, 0.902591f, + 0.902673f, 0.902756f, 0.902838f, 0.902921f, 0.903003f, 0.903085f, 0.903168f, 0.903250f, + 0.903332f, 0.903415f, 0.903497f, 0.903579f, 0.903661f, 0.903743f, 0.903825f, 0.903907f, + 0.903989f, 0.904071f, 0.904153f, 0.904235f, 0.904317f, 0.904399f, 0.904481f, 0.904562f, + 0.904644f, 0.904726f, 0.904807f, 0.904889f, 0.904971f, 0.905052f, 0.905134f, 0.905215f, + 0.905297f, 0.905378f, 0.905460f, 0.905541f, 0.905622f, 0.905704f, 0.905785f, 0.905866f, + 0.905947f, 0.906028f, 0.906110f, 0.906191f, 0.906272f, 0.906353f, 0.906434f, 0.906515f, + 0.906596f, 0.906677f, 0.906757f, 0.906838f, 0.906919f, 0.907000f, 0.907081f, 0.907161f, + 0.907242f, 0.907323f, 0.907403f, 0.907484f, 0.907564f, 0.907645f, 0.907725f, 0.907806f, + 0.907886f, 0.907966f, 0.908047f, 0.908127f, 0.908207f, 0.908288f, 0.908368f, 0.908448f, + 0.908528f, 0.908608f, 0.908688f, 0.908768f, 0.908848f, 0.908928f, 0.909008f, 0.909088f, + 0.909168f, 0.909248f, 0.909328f, 0.909407f, 0.909487f, 0.909567f, 0.909646f, 0.909726f, + 0.909806f, 0.909885f, 0.909965f, 0.910044f, 0.910124f, 0.910203f, 0.910283f, 0.910362f, + 0.910441f, 0.910521f, 0.910600f, 0.910679f, 0.910758f, 0.910837f, 0.910917f, 0.910996f, + 0.911075f, 0.911154f, 0.911233f, 0.911312f, 0.911391f, 0.911470f, 0.911548f, 0.911627f, + 0.911706f, 0.911785f, 0.911864f, 0.911942f, 0.912021f, 0.912099f, 0.912178f, 0.912257f, + 0.912335f, 0.912414f, 0.912492f, 0.912571f, 0.912649f, 0.912727f, 0.912806f, 0.912884f, + 0.912962f, 0.913040f, 0.913119f, 0.913197f, 0.913275f, 0.913353f, 0.913431f, 0.913509f, + 0.913587f, 0.913665f, 0.913743f, 0.913821f, 0.913899f, 0.913976f, 0.914054f, 0.914132f, + 0.914210f, 0.914287f, 0.914365f, 0.914443f, 0.914520f, 0.914598f, 0.914675f, 0.914753f, + 0.914830f, 0.914908f, 0.914985f, 0.915062f, 0.915140f, 0.915217f, 0.915294f, 0.915372f, + 0.915449f, 0.915526f, 0.915603f, 0.915680f, 0.915757f, 0.915834f, 0.915911f, 0.915988f, + 0.916065f, 0.916142f, 0.916219f, 0.916296f, 0.916372f, 0.916449f, 0.916526f, 0.916602f, + 0.916679f, 0.916756f, 0.916832f, 0.916909f, 0.916985f, 0.917062f, 0.917138f, 0.917215f, + 0.917291f, 0.917367f, 0.917444f, 0.917520f, 0.917596f, 0.917672f, 0.917749f, 0.917825f, + 0.917901f, 0.917977f, 0.918053f, 0.918129f, 0.918205f, 0.918281f, 0.918357f, 0.918433f, + 0.918508f, 0.918584f, 0.918660f, 0.918736f, 0.918811f, 0.918887f, 0.918963f, 0.919038f, + 0.919114f, 0.919189f, 0.919265f, 0.919340f, 0.919416f, 0.919491f, 0.919567f, 0.919642f, + 0.919717f, 0.919792f, 0.919868f, 0.919943f, 0.920018f, 0.920093f, 0.920168f, 0.920243f, + 0.920318f, 0.920393f, 0.920468f, 0.920543f, 0.920618f, 0.920693f, 0.920768f, 0.920842f, + 0.920917f, 0.920992f, 0.921067f, 0.921141f, 0.921216f, 0.921291f, 0.921365f, 0.921440f, + 0.921514f, 0.921588f, 0.921663f, 0.921737f, 0.921812f, 0.921886f, 0.921960f, 0.922034f, + 0.922109f, 0.922183f, 0.922257f, 0.922331f, 0.922405f, 0.922479f, 0.922553f, 0.922627f, + 0.922701f, 0.922775f, 0.922849f, 0.922923f, 0.922997f, 0.923070f, 0.923144f, 0.923218f, + 0.923291f, 0.923365f, 0.923439f, 0.923512f, 0.923586f, 0.923659f, 0.923733f, 0.923806f, + 0.923880f, 0.923953f, 0.924026f, 0.924100f, 0.924173f, 0.924246f, 0.924319f, 0.924392f, + 0.924465f, 0.924539f, 0.924612f, 0.924685f, 0.924758f, 0.924831f, 0.924904f, 0.924976f, + 0.925049f, 0.925122f, 0.925195f, 0.925268f, 0.925340f, 0.925413f, 0.925486f, 0.925558f, + 0.925631f, 0.925703f, 0.925776f, 0.925848f, 0.925921f, 0.925993f, 0.926066f, 0.926138f, + 0.926210f, 0.926283f, 0.926355f, 0.926427f, 0.926499f, 0.926571f, 0.926643f, 0.926715f, + 0.926787f, 0.926859f, 0.926931f, 0.927003f, 0.927075f, 0.927147f, 0.927219f, 0.927291f, + 0.927363f, 0.927434f, 0.927506f, 0.927578f, 0.927649f, 0.927721f, 0.927792f, 0.927864f, + 0.927935f, 0.928007f, 0.928078f, 0.928150f, 0.928221f, 0.928292f, 0.928364f, 0.928435f, + 0.928506f, 0.928577f, 0.928648f, 0.928720f, 0.928791f, 0.928862f, 0.928933f, 0.929004f, + 0.929075f, 0.929146f, 0.929216f, 0.929287f, 0.929358f, 0.929429f, 0.929500f, 0.929570f, + 0.929641f, 0.929712f, 0.929782f, 0.929853f, 0.929923f, 0.929994f, 0.930064f, 0.930135f, + 0.930205f, 0.930275f, 0.930346f, 0.930416f, 0.930486f, 0.930556f, 0.930627f, 0.930697f, + 0.930767f, 0.930837f, 0.930907f, 0.930977f, 0.931047f, 0.931117f, 0.931187f, 0.931257f, + 0.931327f, 0.931397f, 0.931466f, 0.931536f, 0.931606f, 0.931675f, 0.931745f, 0.931815f, + 0.931884f, 0.931954f, 0.932023f, 0.932093f, 0.932162f, 0.932232f, 0.932301f, 0.932370f, + 0.932440f, 0.932509f, 0.932578f, 0.932647f, 0.932716f, 0.932786f, 0.932855f, 0.932924f, + 0.932993f, 0.933062f, 0.933131f, 0.933200f, 0.933269f, 0.933337f, 0.933406f, 0.933475f, + 0.933544f, 0.933612f, 0.933681f, 0.933750f, 0.933818f, 0.933887f, 0.933956f, 0.934024f, + 0.934093f, 0.934161f, 0.934229f, 0.934298f, 0.934366f, 0.934434f, 0.934503f, 0.934571f, + 0.934639f, 0.934707f, 0.934775f, 0.934844f, 0.934912f, 0.934980f, 0.935048f, 0.935116f, + 0.935184f, 0.935251f, 0.935319f, 0.935387f, 0.935455f, 0.935523f, 0.935590f, 0.935658f, + 0.935726f, 0.935793f, 0.935861f, 0.935928f, 0.935996f, 0.936063f, 0.936131f, 0.936198f, + 0.936266f, 0.936333f, 0.936400f, 0.936468f, 0.936535f, 0.936602f, 0.936669f, 0.936736f, + 0.936803f, 0.936871f, 0.936938f, 0.937005f, 0.937072f, 0.937138f, 0.937205f, 0.937272f, + 0.937339f, 0.937406f, 0.937473f, 0.937539f, 0.937606f, 0.937673f, 0.937739f, 0.937806f, + 0.937872f, 0.937939f, 0.938005f, 0.938072f, 0.938138f, 0.938205f, 0.938271f, 0.938337f, + 0.938404f, 0.938470f, 0.938536f, 0.938602f, 0.938668f, 0.938734f, 0.938800f, 0.938866f, + 0.938932f, 0.938998f, 0.939064f, 0.939130f, 0.939196f, 0.939262f, 0.939328f, 0.939394f, + 0.939459f, 0.939525f, 0.939591f, 0.939656f, 0.939722f, 0.939787f, 0.939853f, 0.939918f, + 0.939984f, 0.940049f, 0.940115f, 0.940180f, 0.940245f, 0.940310f, 0.940376f, 0.940441f, + 0.940506f, 0.940571f, 0.940636f, 0.940701f, 0.940766f, 0.940831f, 0.940896f, 0.940961f, + 0.941026f, 0.941091f, 0.941156f, 0.941221f, 0.941285f, 0.941350f, 0.941415f, 0.941479f, + 0.941544f, 0.941609f, 0.941673f, 0.941738f, 0.941802f, 0.941867f, 0.941931f, 0.941995f, + 0.942060f, 0.942124f, 0.942188f, 0.942253f, 0.942317f, 0.942381f, 0.942445f, 0.942509f, + 0.942573f, 0.942637f, 0.942701f, 0.942765f, 0.942829f, 0.942893f, 0.942957f, 0.943021f, + 0.943084f, 0.943148f, 0.943212f, 0.943276f, 0.943339f, 0.943403f, 0.943466f, 0.943530f, + 0.943593f, 0.943657f, 0.943720f, 0.943784f, 0.943847f, 0.943910f, 0.943974f, 0.944037f, + 0.944100f, 0.944163f, 0.944227f, 0.944290f, 0.944353f, 0.944416f, 0.944479f, 0.944542f, + 0.944605f, 0.944668f, 0.944731f, 0.944793f, 0.944856f, 0.944919f, 0.944982f, 0.945045f, + 0.945107f, 0.945170f, 0.945232f, 0.945295f, 0.945358f, 0.945420f, 0.945482f, 0.945545f, + 0.945607f, 0.945670f, 0.945732f, 0.945794f, 0.945857f, 0.945919f, 0.945981f, 0.946043f, + 0.946105f, 0.946167f, 0.946229f, 0.946291f, 0.946353f, 0.946415f, 0.946477f, 0.946539f, + 0.946601f, 0.946663f, 0.946724f, 0.946786f, 0.946848f, 0.946910f, 0.946971f, 0.947033f, + 0.947094f, 0.947156f, 0.947217f, 0.947279f, 0.947340f, 0.947402f, 0.947463f, 0.947524f, + 0.947586f, 0.947647f, 0.947708f, 0.947769f, 0.947830f, 0.947891f, 0.947953f, 0.948014f, + 0.948075f, 0.948136f, 0.948196f, 0.948257f, 0.948318f, 0.948379f, 0.948440f, 0.948501f, + 0.948561f, 0.948622f, 0.948683f, 0.948743f, 0.948804f, 0.948864f, 0.948925f, 0.948985f, + 0.949046f, 0.949106f, 0.949167f, 0.949227f, 0.949287f, 0.949348f, 0.949408f, 0.949468f, + 0.949528f, 0.949588f, 0.949648f, 0.949708f, 0.949768f, 0.949829f, 0.949888f, 0.949948f, + 0.950008f, 0.950068f, 0.950128f, 0.950188f, 0.950247f, 0.950307f, 0.950367f, 0.950426f, + 0.950486f, 0.950546f, 0.950605f, 0.950665f, 0.950724f, 0.950784f, 0.950843f, 0.950902f, + 0.950962f, 0.951021f, 0.951080f, 0.951139f, 0.951199f, 0.951258f, 0.951317f, 0.951376f, + 0.951435f, 0.951494f, 0.951553f, 0.951612f, 0.951671f, 0.951730f, 0.951789f, 0.951847f, + 0.951906f, 0.951965f, 0.952024f, 0.952082f, 0.952141f, 0.952199f, 0.952258f, 0.952317f, + 0.952375f, 0.952433f, 0.952492f, 0.952550f, 0.952609f, 0.952667f, 0.952725f, 0.952783f, + 0.952842f, 0.952900f, 0.952958f, 0.953016f, 0.953074f, 0.953132f, 0.953190f, 0.953248f, + 0.953306f, 0.953364f, 0.953422f, 0.953480f, 0.953537f, 0.953595f, 0.953653f, 0.953711f, + 0.953768f, 0.953826f, 0.953883f, 0.953941f, 0.953998f, 0.954056f, 0.954113f, 0.954171f, + 0.954228f, 0.954285f, 0.954343f, 0.954400f, 0.954457f, 0.954514f, 0.954572f, 0.954629f, + 0.954686f, 0.954743f, 0.954800f, 0.954857f, 0.954914f, 0.954971f, 0.955028f, 0.955084f, + 0.955141f, 0.955198f, 0.955255f, 0.955311f, 0.955368f, 0.955425f, 0.955481f, 0.955538f, + 0.955594f, 0.955651f, 0.955707f, 0.955764f, 0.955820f, 0.955876f, 0.955933f, 0.955989f, + 0.956045f, 0.956101f, 0.956158f, 0.956214f, 0.956270f, 0.956326f, 0.956382f, 0.956438f, + 0.956494f, 0.956550f, 0.956606f, 0.956662f, 0.956717f, 0.956773f, 0.956829f, 0.956885f, + 0.956940f, 0.956996f, 0.957052f, 0.957107f, 0.957163f, 0.957218f, 0.957274f, 0.957329f, + 0.957385f, 0.957440f, 0.957495f, 0.957550f, 0.957606f, 0.957661f, 0.957716f, 0.957771f, + 0.957826f, 0.957882f, 0.957937f, 0.957992f, 0.958046f, 0.958101f, 0.958156f, 0.958211f, + 0.958266f, 0.958321f, 0.958376f, 0.958430f, 0.958485f, 0.958540f, 0.958594f, 0.958649f, + 0.958703f, 0.958758f, 0.958812f, 0.958867f, 0.958921f, 0.958976f, 0.959030f, 0.959084f, + 0.959139f, 0.959193f, 0.959247f, 0.959301f, 0.959355f, 0.959409f, 0.959463f, 0.959518f, + 0.959572f, 0.959625f, 0.959679f, 0.959733f, 0.959787f, 0.959841f, 0.959895f, 0.959948f, + 0.960002f, 0.960056f, 0.960109f, 0.960163f, 0.960217f, 0.960270f, 0.960324f, 0.960377f, + 0.960431f, 0.960484f, 0.960537f, 0.960591f, 0.960644f, 0.960697f, 0.960750f, 0.960804f, + 0.960857f, 0.960910f, 0.960963f, 0.961016f, 0.961069f, 0.961122f, 0.961175f, 0.961228f, + 0.961280f, 0.961333f, 0.961386f, 0.961439f, 0.961492f, 0.961544f, 0.961597f, 0.961649f, + 0.961702f, 0.961755f, 0.961807f, 0.961860f, 0.961912f, 0.961964f, 0.962017f, 0.962069f, + 0.962121f, 0.962174f, 0.962226f, 0.962278f, 0.962330f, 0.962382f, 0.962434f, 0.962486f, + 0.962538f, 0.962590f, 0.962642f, 0.962694f, 0.962746f, 0.962798f, 0.962850f, 0.962902f, + 0.962953f, 0.963005f, 0.963057f, 0.963108f, 0.963160f, 0.963211f, 0.963263f, 0.963314f, + 0.963366f, 0.963417f, 0.963469f, 0.963520f, 0.963571f, 0.963623f, 0.963674f, 0.963725f, + 0.963776f, 0.963827f, 0.963878f, 0.963929f, 0.963980f, 0.964031f, 0.964082f, 0.964133f, + 0.964184f, 0.964235f, 0.964286f, 0.964336f, 0.964387f, 0.964438f, 0.964489f, 0.964539f, + 0.964590f, 0.964640f, 0.964691f, 0.964741f, 0.964792f, 0.964842f, 0.964893f, 0.964943f, + 0.964993f, 0.965044f, 0.965094f, 0.965144f, 0.965194f, 0.965244f, 0.965294f, 0.965344f, + 0.965394f, 0.965444f, 0.965494f, 0.965544f, 0.965594f, 0.965644f, 0.965694f, 0.965744f, + 0.965793f, 0.965843f, 0.965893f, 0.965942f, 0.965992f, 0.966042f, 0.966091f, 0.966141f, + 0.966190f, 0.966239f, 0.966289f, 0.966338f, 0.966387f, 0.966437f, 0.966486f, 0.966535f, + 0.966584f, 0.966633f, 0.966683f, 0.966732f, 0.966781f, 0.966830f, 0.966879f, 0.966928f, + 0.966976f, 0.967025f, 0.967074f, 0.967123f, 0.967172f, 0.967220f, 0.967269f, 0.967318f, + 0.967366f, 0.967415f, 0.967463f, 0.967512f, 0.967560f, 0.967609f, 0.967657f, 0.967706f, + 0.967754f, 0.967802f, 0.967850f, 0.967899f, 0.967947f, 0.967995f, 0.968043f, 0.968091f, + 0.968139f, 0.968187f, 0.968235f, 0.968283f, 0.968331f, 0.968379f, 0.968427f, 0.968474f, + 0.968522f, 0.968570f, 0.968617f, 0.968665f, 0.968713f, 0.968760f, 0.968808f, 0.968855f, + 0.968903f, 0.968950f, 0.968998f, 0.969045f, 0.969092f, 0.969140f, 0.969187f, 0.969234f, + 0.969281f, 0.969328f, 0.969375f, 0.969423f, 0.969470f, 0.969517f, 0.969564f, 0.969611f, + 0.969657f, 0.969704f, 0.969751f, 0.969798f, 0.969845f, 0.969891f, 0.969938f, 0.969985f, + 0.970031f, 0.970078f, 0.970124f, 0.970171f, 0.970217f, 0.970264f, 0.970310f, 0.970357f, + 0.970403f, 0.970449f, 0.970495f, 0.970542f, 0.970588f, 0.970634f, 0.970680f, 0.970726f, + 0.970772f, 0.970818f, 0.970864f, 0.970910f, 0.970956f, 0.971002f, 0.971048f, 0.971093f, + 0.971139f, 0.971185f, 0.971231f, 0.971276f, 0.971322f, 0.971367f, 0.971413f, 0.971458f, + 0.971504f, 0.971549f, 0.971595f, 0.971640f, 0.971685f, 0.971731f, 0.971776f, 0.971821f, + 0.971866f, 0.971911f, 0.971957f, 0.972002f, 0.972047f, 0.972092f, 0.972137f, 0.972182f, + 0.972227f, 0.972271f, 0.972316f, 0.972361f, 0.972406f, 0.972450f, 0.972495f, 0.972540f, + 0.972584f, 0.972629f, 0.972673f, 0.972718f, 0.972762f, 0.972807f, 0.972851f, 0.972896f, + 0.972940f, 0.972984f, 0.973028f, 0.973073f, 0.973117f, 0.973161f, 0.973205f, 0.973249f, + 0.973293f, 0.973337f, 0.973381f, 0.973425f, 0.973469f, 0.973513f, 0.973557f, 0.973601f, + 0.973644f, 0.973688f, 0.973732f, 0.973775f, 0.973819f, 0.973862f, 0.973906f, 0.973949f, + 0.973993f, 0.974036f, 0.974080f, 0.974123f, 0.974166f, 0.974210f, 0.974253f, 0.974296f, + 0.974339f, 0.974383f, 0.974426f, 0.974469f, 0.974512f, 0.974555f, 0.974598f, 0.974641f, + 0.974684f, 0.974726f, 0.974769f, 0.974812f, 0.974855f, 0.974897f, 0.974940f, 0.974983f, + 0.975025f, 0.975068f, 0.975110f, 0.975153f, 0.975195f, 0.975238f, 0.975280f, 0.975323f, + 0.975365f, 0.975407f, 0.975449f, 0.975492f, 0.975534f, 0.975576f, 0.975618f, 0.975660f, + 0.975702f, 0.975744f, 0.975786f, 0.975828f, 0.975870f, 0.975912f, 0.975954f, 0.975995f, + 0.976037f, 0.976079f, 0.976120f, 0.976162f, 0.976204f, 0.976245f, 0.976287f, 0.976328f, + 0.976370f, 0.976411f, 0.976453f, 0.976494f, 0.976535f, 0.976576f, 0.976618f, 0.976659f, + 0.976700f, 0.976741f, 0.976782f, 0.976823f, 0.976864f, 0.976905f, 0.976946f, 0.976987f, + 0.977028f, 0.977069f, 0.977110f, 0.977151f, 0.977191f, 0.977232f, 0.977273f, 0.977313f, + 0.977354f, 0.977394f, 0.977435f, 0.977475f, 0.977516f, 0.977556f, 0.977597f, 0.977637f, + 0.977677f, 0.977718f, 0.977758f, 0.977798f, 0.977838f, 0.977878f, 0.977918f, 0.977959f, + 0.977998f, 0.978038f, 0.978078f, 0.978118f, 0.978158f, 0.978198f, 0.978238f, 0.978278f, + 0.978317f, 0.978357f, 0.978397f, 0.978436f, 0.978476f, 0.978516f, 0.978555f, 0.978594f, + 0.978634f, 0.978673f, 0.978713f, 0.978752f, 0.978791f, 0.978831f, 0.978870f, 0.978909f, + 0.978948f, 0.978987f, 0.979026f, 0.979065f, 0.979104f, 0.979143f, 0.979182f, 0.979221f, + 0.979260f, 0.979299f, 0.979338f, 0.979376f, 0.979415f, 0.979454f, 0.979493f, 0.979531f, + 0.979570f, 0.979608f, 0.979647f, 0.979685f, 0.979724f, 0.979762f, 0.979800f, 0.979839f, + 0.979877f, 0.979915f, 0.979954f, 0.979992f, 0.980030f, 0.980068f, 0.980106f, 0.980144f, + 0.980182f, 0.980220f, 0.980258f, 0.980296f, 0.980334f, 0.980372f, 0.980409f, 0.980447f, + 0.980485f, 0.980523f, 0.980560f, 0.980598f, 0.980635f, 0.980673f, 0.980710f, 0.980748f, + 0.980785f, 0.980823f, 0.980860f, 0.980897f, 0.980935f, 0.980972f, 0.981009f, 0.981046f, + 0.981083f, 0.981120f, 0.981158f, 0.981195f, 0.981232f, 0.981269f, 0.981305f, 0.981342f, + 0.981379f, 0.981416f, 0.981453f, 0.981490f, 0.981526f, 0.981563f, 0.981600f, 0.981636f, + 0.981673f, 0.981709f, 0.981746f, 0.981782f, 0.981819f, 0.981855f, 0.981891f, 0.981928f, + 0.981964f, 0.982000f, 0.982036f, 0.982072f, 0.982109f, 0.982145f, 0.982181f, 0.982217f, + 0.982253f, 0.982289f, 0.982325f, 0.982360f, 0.982396f, 0.982432f, 0.982468f, 0.982504f, + 0.982539f, 0.982575f, 0.982611f, 0.982646f, 0.982682f, 0.982717f, 0.982753f, 0.982788f, + 0.982824f, 0.982859f, 0.982894f, 0.982930f, 0.982965f, 0.983000f, 0.983035f, 0.983070f, + 0.983105f, 0.983141f, 0.983176f, 0.983211f, 0.983246f, 0.983281f, 0.983315f, 0.983350f, + 0.983385f, 0.983420f, 0.983455f, 0.983489f, 0.983524f, 0.983559f, 0.983593f, 0.983628f, + 0.983662f, 0.983697f, 0.983731f, 0.983766f, 0.983800f, 0.983835f, 0.983869f, 0.983903f, + 0.983937f, 0.983972f, 0.984006f, 0.984040f, 0.984074f, 0.984108f, 0.984142f, 0.984176f, + 0.984210f, 0.984244f, 0.984278f, 0.984312f, 0.984346f, 0.984379f, 0.984413f, 0.984447f, + 0.984480f, 0.984514f, 0.984548f, 0.984581f, 0.984615f, 0.984648f, 0.984682f, 0.984715f, + 0.984748f, 0.984782f, 0.984815f, 0.984848f, 0.984882f, 0.984915f, 0.984948f, 0.984981f, + 0.985014f, 0.985047f, 0.985080f, 0.985113f, 0.985146f, 0.985179f, 0.985212f, 0.985245f, + 0.985278f, 0.985310f, 0.985343f, 0.985376f, 0.985408f, 0.985441f, 0.985474f, 0.985506f, + 0.985539f, 0.985571f, 0.985604f, 0.985636f, 0.985668f, 0.985701f, 0.985733f, 0.985765f, + 0.985798f, 0.985830f, 0.985862f, 0.985894f, 0.985926f, 0.985958f, 0.985990f, 0.986022f, + 0.986054f, 0.986086f, 0.986118f, 0.986150f, 0.986181f, 0.986213f, 0.986245f, 0.986276f, + 0.986308f, 0.986340f, 0.986371f, 0.986403f, 0.986434f, 0.986466f, 0.986497f, 0.986529f, + 0.986560f, 0.986591f, 0.986623f, 0.986654f, 0.986685f, 0.986716f, 0.986747f, 0.986778f, + 0.986809f, 0.986840f, 0.986871f, 0.986902f, 0.986933f, 0.986964f, 0.986995f, 0.987026f, + 0.987057f, 0.987087f, 0.987118f, 0.987149f, 0.987179f, 0.987210f, 0.987240f, 0.987271f, + 0.987301f, 0.987332f, 0.987362f, 0.987393f, 0.987423f, 0.987453f, 0.987484f, 0.987514f, + 0.987544f, 0.987574f, 0.987604f, 0.987634f, 0.987664f, 0.987694f, 0.987724f, 0.987754f, + 0.987784f, 0.987814f, 0.987844f, 0.987874f, 0.987903f, 0.987933f, 0.987963f, 0.987992f, + 0.988022f, 0.988052f, 0.988081f, 0.988111f, 0.988140f, 0.988169f, 0.988199f, 0.988228f, + 0.988258f, 0.988287f, 0.988316f, 0.988345f, 0.988374f, 0.988404f, 0.988433f, 0.988462f, + 0.988491f, 0.988520f, 0.988549f, 0.988578f, 0.988607f, 0.988635f, 0.988664f, 0.988693f, + 0.988722f, 0.988750f, 0.988779f, 0.988808f, 0.988836f, 0.988865f, 0.988893f, 0.988922f, + 0.988950f, 0.988979f, 0.989007f, 0.989035f, 0.989064f, 0.989092f, 0.989120f, 0.989148f, + 0.989177f, 0.989205f, 0.989233f, 0.989261f, 0.989289f, 0.989317f, 0.989345f, 0.989373f, + 0.989400f, 0.989428f, 0.989456f, 0.989484f, 0.989511f, 0.989539f, 0.989567f, 0.989594f, + 0.989622f, 0.989650f, 0.989677f, 0.989704f, 0.989732f, 0.989759f, 0.989787f, 0.989814f, + 0.989841f, 0.989869f, 0.989896f, 0.989923f, 0.989950f, 0.989977f, 0.990004f, 0.990031f, + 0.990058f, 0.990085f, 0.990112f, 0.990139f, 0.990166f, 0.990193f, 0.990219f, 0.990246f, + 0.990273f, 0.990299f, 0.990326f, 0.990353f, 0.990379f, 0.990406f, 0.990432f, 0.990459f, + 0.990485f, 0.990511f, 0.990538f, 0.990564f, 0.990590f, 0.990617f, 0.990643f, 0.990669f, + 0.990695f, 0.990721f, 0.990747f, 0.990773f, 0.990799f, 0.990825f, 0.990851f, 0.990877f, + 0.990903f, 0.990928f, 0.990954f, 0.990980f, 0.991006f, 0.991031f, 0.991057f, 0.991082f, + 0.991108f, 0.991133f, 0.991159f, 0.991184f, 0.991210f, 0.991235f, 0.991260f, 0.991286f, + 0.991311f, 0.991336f, 0.991361f, 0.991386f, 0.991411f, 0.991437f, 0.991462f, 0.991487f, + 0.991511f, 0.991536f, 0.991561f, 0.991586f, 0.991611f, 0.991636f, 0.991660f, 0.991685f, + 0.991710f, 0.991734f, 0.991759f, 0.991783f, 0.991808f, 0.991832f, 0.991857f, 0.991881f, + 0.991906f, 0.991930f, 0.991954f, 0.991979f, 0.992003f, 0.992027f, 0.992051f, 0.992075f, + 0.992099f, 0.992123f, 0.992147f, 0.992171f, 0.992195f, 0.992219f, 0.992243f, 0.992267f, + 0.992291f, 0.992314f, 0.992338f, 0.992362f, 0.992385f, 0.992409f, 0.992433f, 0.992456f, + 0.992480f, 0.992503f, 0.992526f, 0.992550f, 0.992573f, 0.992596f, 0.992620f, 0.992643f, + 0.992666f, 0.992689f, 0.992712f, 0.992736f, 0.992759f, 0.992782f, 0.992805f, 0.992828f, + 0.992850f, 0.992873f, 0.992896f, 0.992919f, 0.992942f, 0.992964f, 0.992987f, 0.993010f, + 0.993032f, 0.993055f, 0.993077f, 0.993100f, 0.993122f, 0.993145f, 0.993167f, 0.993190f, + 0.993212f, 0.993234f, 0.993257f, 0.993279f, 0.993301f, 0.993323f, 0.993345f, 0.993367f, + 0.993389f, 0.993411f, 0.993433f, 0.993455f, 0.993477f, 0.993499f, 0.993521f, 0.993542f, + 0.993564f, 0.993586f, 0.993608f, 0.993629f, 0.993651f, 0.993672f, 0.993694f, 0.993715f, + 0.993737f, 0.993758f, 0.993779f, 0.993801f, 0.993822f, 0.993843f, 0.993865f, 0.993886f, + 0.993907f, 0.993928f, 0.993949f, 0.993970f, 0.993991f, 0.994012f, 0.994033f, 0.994054f, + 0.994075f, 0.994096f, 0.994116f, 0.994137f, 0.994158f, 0.994179f, 0.994199f, 0.994220f, + 0.994240f, 0.994261f, 0.994281f, 0.994302f, 0.994322f, 0.994343f, 0.994363f, 0.994383f, + 0.994404f, 0.994424f, 0.994444f, 0.994464f, 0.994484f, 0.994505f, 0.994525f, 0.994545f, + 0.994565f, 0.994585f, 0.994604f, 0.994624f, 0.994644f, 0.994664f, 0.994684f, 0.994703f, + 0.994723f, 0.994743f, 0.994762f, 0.994782f, 0.994802f, 0.994821f, 0.994841f, 0.994860f, + 0.994879f, 0.994899f, 0.994918f, 0.994937f, 0.994957f, 0.994976f, 0.994995f, 0.995014f, + 0.995033f, 0.995052f, 0.995071f, 0.995090f, 0.995109f, 0.995128f, 0.995147f, 0.995166f, + 0.995185f, 0.995203f, 0.995222f, 0.995241f, 0.995260f, 0.995278f, 0.995297f, 0.995315f, + 0.995334f, 0.995352f, 0.995371f, 0.995389f, 0.995408f, 0.995426f, 0.995444f, 0.995463f, + 0.995481f, 0.995499f, 0.995517f, 0.995535f, 0.995553f, 0.995571f, 0.995589f, 0.995607f, + 0.995625f, 0.995643f, 0.995661f, 0.995679f, 0.995697f, 0.995714f, 0.995732f, 0.995750f, + 0.995767f, 0.995785f, 0.995803f, 0.995820f, 0.995838f, 0.995855f, 0.995872f, 0.995890f, + 0.995907f, 0.995925f, 0.995942f, 0.995959f, 0.995976f, 0.995993f, 0.996011f, 0.996028f, + 0.996045f, 0.996062f, 0.996079f, 0.996096f, 0.996113f, 0.996129f, 0.996146f, 0.996163f, + 0.996180f, 0.996197f, 0.996213f, 0.996230f, 0.996247f, 0.996263f, 0.996280f, 0.996296f, + 0.996313f, 0.996329f, 0.996345f, 0.996362f, 0.996378f, 0.996394f, 0.996411f, 0.996427f, + 0.996443f, 0.996459f, 0.996475f, 0.996491f, 0.996507f, 0.996523f, 0.996539f, 0.996555f, + 0.996571f, 0.996587f, 0.996603f, 0.996619f, 0.996634f, 0.996650f, 0.996666f, 0.996681f, + 0.996697f, 0.996712f, 0.996728f, 0.996743f, 0.996759f, 0.996774f, 0.996790f, 0.996805f, + 0.996820f, 0.996836f, 0.996851f, 0.996866f, 0.996881f, 0.996896f, 0.996911f, 0.996926f, + 0.996941f, 0.996956f, 0.996971f, 0.996986f, 0.997001f, 0.997016f, 0.997031f, 0.997045f, + 0.997060f, 0.997075f, 0.997089f, 0.997104f, 0.997119f, 0.997133f, 0.997148f, 0.997162f, + 0.997176f, 0.997191f, 0.997205f, 0.997219f, 0.997234f, 0.997248f, 0.997262f, 0.997276f, + 0.997290f, 0.997305f, 0.997319f, 0.997333f, 0.997347f, 0.997361f, 0.997374f, 0.997388f, + 0.997402f, 0.997416f, 0.997430f, 0.997443f, 0.997457f, 0.997471f, 0.997484f, 0.997498f, + 0.997511f, 0.997525f, 0.997538f, 0.997552f, 0.997565f, 0.997579f, 0.997592f, 0.997605f, + 0.997618f, 0.997632f, 0.997645f, 0.997658f, 0.997671f, 0.997684f, 0.997697f, 0.997710f, + 0.997723f, 0.997736f, 0.997749f, 0.997762f, 0.997774f, 0.997787f, 0.997800f, 0.997813f, + 0.997825f, 0.997838f, 0.997851f, 0.997863f, 0.997876f, 0.997888f, 0.997901f, 0.997913f, + 0.997925f, 0.997938f, 0.997950f, 0.997962f, 0.997974f, 0.997987f, 0.997999f, 0.998011f, + 0.998023f, 0.998035f, 0.998047f, 0.998059f, 0.998071f, 0.998083f, 0.998094f, 0.998106f, + 0.998118f, 0.998130f, 0.998142f, 0.998153f, 0.998165f, 0.998176f, 0.998188f, 0.998200f, + 0.998211f, 0.998222f, 0.998234f, 0.998245f, 0.998257f, 0.998268f, 0.998279f, 0.998290f, + 0.998302f, 0.998313f, 0.998324f, 0.998335f, 0.998346f, 0.998357f, 0.998368f, 0.998379f, + 0.998390f, 0.998401f, 0.998411f, 0.998422f, 0.998433f, 0.998444f, 0.998454f, 0.998465f, + 0.998476f, 0.998486f, 0.998497f, 0.998507f, 0.998518f, 0.998528f, 0.998538f, 0.998549f, + 0.998559f, 0.998569f, 0.998580f, 0.998590f, 0.998600f, 0.998610f, 0.998620f, 0.998630f, + 0.998640f, 0.998650f, 0.998660f, 0.998670f, 0.998680f, 0.998690f, 0.998700f, 0.998709f, + 0.998719f, 0.998729f, 0.998738f, 0.998748f, 0.998758f, 0.998767f, 0.998777f, 0.998786f, + 0.998795f, 0.998805f, 0.998814f, 0.998824f, 0.998833f, 0.998842f, 0.998851f, 0.998860f, + 0.998870f, 0.998879f, 0.998888f, 0.998897f, 0.998906f, 0.998915f, 0.998924f, 0.998932f, + 0.998941f, 0.998950f, 0.998959f, 0.998968f, 0.998976f, 0.998985f, 0.998994f, 0.999002f, + 0.999011f, 0.999019f, 0.999028f, 0.999036f, 0.999044f, 0.999053f, 0.999061f, 0.999069f, + 0.999078f, 0.999086f, 0.999094f, 0.999102f, 0.999110f, 0.999118f, 0.999126f, 0.999134f, + 0.999142f, 0.999150f, 0.999158f, 0.999166f, 0.999174f, 0.999182f, 0.999189f, 0.999197f, + 0.999205f, 0.999212f, 0.999220f, 0.999228f, 0.999235f, 0.999243f, 0.999250f, 0.999257f, + 0.999265f, 0.999272f, 0.999279f, 0.999287f, 0.999294f, 0.999301f, 0.999308f, 0.999315f, + 0.999322f, 0.999329f, 0.999336f, 0.999343f, 0.999350f, 0.999357f, 0.999364f, 0.999371f, + 0.999378f, 0.999384f, 0.999391f, 0.999398f, 0.999404f, 0.999411f, 0.999418f, 0.999424f, + 0.999431f, 0.999437f, 0.999443f, 0.999450f, 0.999456f, 0.999462f, 0.999469f, 0.999475f, + 0.999481f, 0.999487f, 0.999493f, 0.999500f, 0.999506f, 0.999512f, 0.999518f, 0.999524f, + 0.999529f, 0.999535f, 0.999541f, 0.999547f, 0.999553f, 0.999558f, 0.999564f, 0.999570f, + 0.999575f, 0.999581f, 0.999586f, 0.999592f, 0.999597f, 0.999603f, 0.999608f, 0.999614f, + 0.999619f, 0.999624f, 0.999629f, 0.999635f, 0.999640f, 0.999645f, 0.999650f, 0.999655f, + 0.999660f, 0.999665f, 0.999670f, 0.999675f, 0.999680f, 0.999685f, 0.999689f, 0.999694f, + 0.999699f, 0.999704f, 0.999708f, 0.999713f, 0.999717f, 0.999722f, 0.999726f, 0.999731f, + 0.999735f, 0.999740f, 0.999744f, 0.999748f, 0.999753f, 0.999757f, 0.999761f, 0.999765f, + 0.999769f, 0.999774f, 0.999778f, 0.999782f, 0.999786f, 0.999790f, 0.999793f, 0.999797f, + 0.999801f, 0.999805f, 0.999809f, 0.999812f, 0.999816f, 0.999820f, 0.999823f, 0.999827f, + 0.999831f, 0.999834f, 0.999838f, 0.999841f, 0.999844f, 0.999848f, 0.999851f, 0.999854f, + 0.999858f, 0.999861f, 0.999864f, 0.999867f, 0.999870f, 0.999873f, 0.999876f, 0.999879f, + 0.999882f, 0.999885f, 0.999888f, 0.999891f, 0.999894f, 0.999897f, 0.999899f, 0.999902f, + 0.999905f, 0.999907f, 0.999910f, 0.999913f, 0.999915f, 0.999917f, 0.999920f, 0.999922f, + 0.999925f, 0.999927f, 0.999929f, 0.999932f, 0.999934f, 0.999936f, 0.999938f, 0.999940f, + 0.999942f, 0.999944f, 0.999946f, 0.999948f, 0.999950f, 0.999952f, 0.999954f, 0.999956f, + 0.999958f, 0.999959f, 0.999961f, 0.999963f, 0.999964f, 0.999966f, 0.999968f, 0.999969f, + 0.999971f, 0.999972f, 0.999973f, 0.999975f, 0.999976f, 0.999977f, 0.999979f, 0.999980f, + 0.999981f, 0.999982f, 0.999983f, 0.999985f, 0.999986f, 0.999987f, 0.999988f, 0.999988f, + 0.999989f, 0.999990f, 0.999991f, 0.999992f, 0.999993f, 0.999993f, 0.999994f, 0.999995f, + 0.999995f, 0.999996f, 0.999996f, 0.999997f, 0.999997f, 0.999998f, 0.999998f, 0.999999f, + 0.999999f, 0.999999f, 0.999999f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, + 0.000000f, -0.000192f, -0.000383f, -0.000575f, -0.000767f, -0.000959f, -0.001150f, -0.001342f, + -0.001534f, -0.001726f, -0.001917f, -0.002109f, -0.002301f, -0.002493f, -0.002684f, -0.002876f, + -0.003068f, -0.003260f, -0.003451f, -0.003643f, -0.003835f, -0.004027f, -0.004218f, -0.004410f, + -0.004602f, -0.004794f, -0.004985f, -0.005177f, -0.005369f, -0.005561f, -0.005752f, -0.005944f, + -0.006136f, -0.006328f, -0.006519f, -0.006711f, -0.006903f, -0.007095f, -0.007286f, -0.007478f, + -0.007670f, -0.007862f, -0.008053f, -0.008245f, -0.008437f, -0.008629f, -0.008820f, -0.009012f, + -0.009204f, -0.009395f, -0.009587f, -0.009779f, -0.009971f, -0.010162f, -0.010354f, -0.010546f, + -0.010738f, -0.010929f, -0.011121f, -0.011313f, -0.011505f, -0.011696f, -0.011888f, -0.012080f, + -0.012272f, -0.012463f, -0.012655f, -0.012847f, -0.013038f, -0.013230f, -0.013422f, -0.013614f, + -0.013805f, -0.013997f, -0.014189f, -0.014381f, -0.014572f, -0.014764f, -0.014956f, -0.015147f, + -0.015339f, -0.015531f, -0.015723f, -0.015914f, -0.016106f, -0.016298f, -0.016490f, -0.016681f, + -0.016873f, -0.017065f, -0.017256f, -0.017448f, -0.017640f, -0.017832f, -0.018023f, -0.018215f, + -0.018407f, -0.018598f, -0.018790f, -0.018982f, -0.019174f, -0.019365f, -0.019557f, -0.019749f, + -0.019940f, -0.020132f, -0.020324f, -0.020516f, -0.020707f, -0.020899f, -0.021091f, -0.021282f, + -0.021474f, -0.021666f, -0.021857f, -0.022049f, -0.022241f, -0.022433f, -0.022624f, -0.022816f, + -0.023008f, -0.023199f, -0.023391f, -0.023583f, -0.023774f, -0.023966f, -0.024158f, -0.024350f, + -0.024541f, -0.024733f, -0.024925f, -0.025116f, -0.025308f, -0.025500f, -0.025691f, -0.025883f, + -0.026075f, -0.026266f, -0.026458f, -0.026650f, -0.026841f, -0.027033f, -0.027225f, -0.027416f, + -0.027608f, -0.027800f, -0.027991f, -0.028183f, -0.028375f, -0.028567f, -0.028758f, -0.028950f, + -0.029142f, -0.029333f, -0.029525f, -0.029717f, -0.029908f, -0.030100f, -0.030291f, -0.030483f, + -0.030675f, -0.030866f, -0.031058f, -0.031250f, -0.031441f, -0.031633f, -0.031825f, -0.032016f, + -0.032208f, -0.032400f, -0.032591f, -0.032783f, -0.032975f, -0.033166f, -0.033358f, -0.033550f, + -0.033741f, -0.033933f, -0.034124f, -0.034316f, -0.034508f, -0.034699f, -0.034891f, -0.035083f, + -0.035274f, -0.035466f, -0.035657f, -0.035849f, -0.036041f, -0.036232f, -0.036424f, -0.036616f, + -0.036807f, -0.036999f, -0.037190f, -0.037382f, -0.037574f, -0.037765f, -0.037957f, -0.038149f, + -0.038340f, -0.038532f, -0.038723f, -0.038915f, -0.039107f, -0.039298f, -0.039490f, -0.039681f, + -0.039873f, -0.040065f, -0.040256f, -0.040448f, -0.040639f, -0.040831f, -0.041022f, -0.041214f, + -0.041406f, -0.041597f, -0.041789f, -0.041980f, -0.042172f, -0.042364f, -0.042555f, -0.042747f, + -0.042938f, -0.043130f, -0.043321f, -0.043513f, -0.043705f, -0.043896f, -0.044088f, -0.044279f, + -0.044471f, -0.044662f, -0.044854f, -0.045045f, -0.045237f, -0.045429f, -0.045620f, -0.045812f, + -0.046003f, -0.046195f, -0.046386f, -0.046578f, -0.046769f, -0.046961f, -0.047152f, -0.047344f, + -0.047535f, -0.047727f, -0.047919f, -0.048110f, -0.048302f, -0.048493f, -0.048685f, -0.048876f, + -0.049068f, -0.049259f, -0.049451f, -0.049642f, -0.049834f, -0.050025f, -0.050217f, -0.050408f, + -0.050600f, -0.050791f, -0.050983f, -0.051174f, -0.051366f, -0.051557f, -0.051749f, -0.051940f, + -0.052132f, -0.052323f, -0.052515f, -0.052706f, -0.052898f, -0.053089f, -0.053281f, -0.053472f, + -0.053664f, -0.053855f, -0.054046f, -0.054238f, -0.054429f, -0.054621f, -0.054812f, -0.055004f, + -0.055195f, -0.055387f, -0.055578f, -0.055770f, -0.055961f, -0.056152f, -0.056344f, -0.056535f, + -0.056727f, -0.056918f, -0.057110f, -0.057301f, -0.057493f, -0.057684f, -0.057875f, -0.058067f, + -0.058258f, -0.058450f, -0.058641f, -0.058833f, -0.059024f, -0.059215f, -0.059407f, -0.059598f, + -0.059790f, -0.059981f, -0.060172f, -0.060364f, -0.060555f, -0.060747f, -0.060938f, -0.061129f, + -0.061321f, -0.061512f, -0.061704f, -0.061895f, -0.062086f, -0.062278f, -0.062469f, -0.062660f, + -0.062852f, -0.063043f, -0.063234f, -0.063426f, -0.063617f, -0.063809f, -0.064000f, -0.064191f, + -0.064383f, -0.064574f, -0.064765f, -0.064957f, -0.065148f, -0.065339f, -0.065531f, -0.065722f, + -0.065913f, -0.066105f, -0.066296f, -0.066487f, -0.066679f, -0.066870f, -0.067061f, -0.067253f, + -0.067444f, -0.067635f, -0.067827f, -0.068018f, -0.068209f, -0.068400f, -0.068592f, -0.068783f, + -0.068974f, -0.069166f, -0.069357f, -0.069548f, -0.069739f, -0.069931f, -0.070122f, -0.070313f, + -0.070505f, -0.070696f, -0.070887f, -0.071078f, -0.071270f, -0.071461f, -0.071652f, -0.071843f, + -0.072035f, -0.072226f, -0.072417f, -0.072608f, -0.072800f, -0.072991f, -0.073182f, -0.073373f, + -0.073565f, -0.073756f, -0.073947f, -0.074138f, -0.074329f, -0.074521f, -0.074712f, -0.074903f, + -0.075094f, -0.075286f, -0.075477f, -0.075668f, -0.075859f, -0.076050f, -0.076241f, -0.076433f, + -0.076624f, -0.076815f, -0.077006f, -0.077197f, -0.077389f, -0.077580f, -0.077771f, -0.077962f, + -0.078153f, -0.078344f, -0.078536f, -0.078727f, -0.078918f, -0.079109f, -0.079300f, -0.079491f, + -0.079682f, -0.079874f, -0.080065f, -0.080256f, -0.080447f, -0.080638f, -0.080829f, -0.081020f, + -0.081211f, -0.081403f, -0.081594f, -0.081785f, -0.081976f, -0.082167f, -0.082358f, -0.082549f, + -0.082740f, -0.082931f, -0.083122f, -0.083314f, -0.083505f, -0.083696f, -0.083887f, -0.084078f, + -0.084269f, -0.084460f, -0.084651f, -0.084842f, -0.085033f, -0.085224f, -0.085415f, -0.085606f, + -0.085797f, -0.085988f, -0.086179f, -0.086370f, -0.086561f, -0.086752f, -0.086943f, -0.087135f, + -0.087326f, -0.087517f, -0.087708f, -0.087899f, -0.088090f, -0.088281f, -0.088472f, -0.088663f, + -0.088854f, -0.089045f, -0.089236f, -0.089427f, -0.089617f, -0.089808f, -0.089999f, -0.090190f, + -0.090381f, -0.090572f, -0.090763f, -0.090954f, -0.091145f, -0.091336f, -0.091527f, -0.091718f, + -0.091909f, -0.092100f, -0.092291f, -0.092482f, -0.092673f, -0.092864f, -0.093055f, -0.093245f, + -0.093436f, -0.093627f, -0.093818f, -0.094009f, -0.094200f, -0.094391f, -0.094582f, -0.094773f, + -0.094963f, -0.095154f, -0.095345f, -0.095536f, -0.095727f, -0.095918f, -0.096109f, -0.096300f, + -0.096490f, -0.096681f, -0.096872f, -0.097063f, -0.097254f, -0.097445f, -0.097635f, -0.097826f, + -0.098017f, -0.098208f, -0.098399f, -0.098590f, -0.098780f, -0.098971f, -0.099162f, -0.099353f, + -0.099544f, -0.099734f, -0.099925f, -0.100116f, -0.100307f, -0.100498f, -0.100688f, -0.100879f, + -0.101070f, -0.101261f, -0.101451f, -0.101642f, -0.101833f, -0.102024f, -0.102214f, -0.102405f, + -0.102596f, -0.102787f, -0.102977f, -0.103168f, -0.103359f, -0.103550f, -0.103740f, -0.103931f, + -0.104122f, -0.104312f, -0.104503f, -0.104694f, -0.104884f, -0.105075f, -0.105266f, -0.105456f, + -0.105647f, -0.105838f, -0.106028f, -0.106219f, -0.106410f, -0.106600f, -0.106791f, -0.106982f, + -0.107172f, -0.107363f, -0.107554f, -0.107744f, -0.107935f, -0.108126f, -0.108316f, -0.108507f, + -0.108697f, -0.108888f, -0.109079f, -0.109269f, -0.109460f, -0.109650f, -0.109841f, -0.110032f, + -0.110222f, -0.110413f, -0.110603f, -0.110794f, -0.110984f, -0.111175f, -0.111366f, -0.111556f, + -0.111747f, -0.111937f, -0.112128f, -0.112318f, -0.112509f, -0.112699f, -0.112890f, -0.113080f, + -0.113271f, -0.113461f, -0.113652f, -0.113842f, -0.114033f, -0.114223f, -0.114414f, -0.114604f, + -0.114795f, -0.114985f, -0.115176f, -0.115366f, -0.115557f, -0.115747f, -0.115938f, -0.116128f, + -0.116319f, -0.116509f, -0.116700f, -0.116890f, -0.117080f, -0.117271f, -0.117461f, -0.117652f, + -0.117842f, -0.118032f, -0.118223f, -0.118413f, -0.118604f, -0.118794f, -0.118984f, -0.119175f, + -0.119365f, -0.119556f, -0.119746f, -0.119936f, -0.120127f, -0.120317f, -0.120507f, -0.120698f, + -0.120888f, -0.121078f, -0.121269f, -0.121459f, -0.121649f, -0.121840f, -0.122030f, -0.122220f, + -0.122411f, -0.122601f, -0.122791f, -0.122982f, -0.123172f, -0.123362f, -0.123552f, -0.123743f, + -0.123933f, -0.124123f, -0.124314f, -0.124504f, -0.124694f, -0.124884f, -0.125075f, -0.125265f, + -0.125455f, -0.125645f, -0.125835f, -0.126026f, -0.126216f, -0.126406f, -0.126596f, -0.126787f, + -0.126977f, -0.127167f, -0.127357f, -0.127547f, -0.127737f, -0.127928f, -0.128118f, -0.128308f, + -0.128498f, -0.128688f, -0.128878f, -0.129069f, -0.129259f, -0.129449f, -0.129639f, -0.129829f, + -0.130019f, -0.130209f, -0.130399f, -0.130590f, -0.130780f, -0.130970f, -0.131160f, -0.131350f, + -0.131540f, -0.131730f, -0.131920f, -0.132110f, -0.132300f, -0.132490f, -0.132680f, -0.132870f, + -0.133061f, -0.133251f, -0.133441f, -0.133631f, -0.133821f, -0.134011f, -0.134201f, -0.134391f, + -0.134581f, -0.134771f, -0.134961f, -0.135151f, -0.135341f, -0.135531f, -0.135721f, -0.135911f, + -0.136101f, -0.136291f, -0.136480f, -0.136670f, -0.136860f, -0.137050f, -0.137240f, -0.137430f, + -0.137620f, -0.137810f, -0.138000f, -0.138190f, -0.138380f, -0.138570f, -0.138760f, -0.138949f, + -0.139139f, -0.139329f, -0.139519f, -0.139709f, -0.139899f, -0.140089f, -0.140279f, -0.140468f, + -0.140658f, -0.140848f, -0.141038f, -0.141228f, -0.141418f, -0.141607f, -0.141797f, -0.141987f, + -0.142177f, -0.142367f, -0.142556f, -0.142746f, -0.142936f, -0.143126f, -0.143316f, -0.143505f, + -0.143695f, -0.143885f, -0.144075f, -0.144264f, -0.144454f, -0.144644f, -0.144833f, -0.145023f, + -0.145213f, -0.145403f, -0.145592f, -0.145782f, -0.145972f, -0.146161f, -0.146351f, -0.146541f, + -0.146730f, -0.146920f, -0.147110f, -0.147299f, -0.147489f, -0.147679f, -0.147868f, -0.148058f, + -0.148248f, -0.148437f, -0.148627f, -0.148817f, -0.149006f, -0.149196f, -0.149385f, -0.149575f, + -0.149765f, -0.149954f, -0.150144f, -0.150333f, -0.150523f, -0.150712f, -0.150902f, -0.151092f, + -0.151281f, -0.151471f, -0.151660f, -0.151850f, -0.152039f, -0.152229f, -0.152418f, -0.152608f, + -0.152797f, -0.152987f, -0.153176f, -0.153366f, -0.153555f, -0.153745f, -0.153934f, -0.154124f, + -0.154313f, -0.154502f, -0.154692f, -0.154881f, -0.155071f, -0.155260f, -0.155450f, -0.155639f, + -0.155828f, -0.156018f, -0.156207f, -0.156397f, -0.156586f, -0.156775f, -0.156965f, -0.157154f, + -0.157343f, -0.157533f, -0.157722f, -0.157912f, -0.158101f, -0.158290f, -0.158480f, -0.158669f, + -0.158858f, -0.159047f, -0.159237f, -0.159426f, -0.159615f, -0.159805f, -0.159994f, -0.160183f, + -0.160372f, -0.160562f, -0.160751f, -0.160940f, -0.161129f, -0.161319f, -0.161508f, -0.161697f, + -0.161886f, -0.162076f, -0.162265f, -0.162454f, -0.162643f, -0.162832f, -0.163022f, -0.163211f, + -0.163400f, -0.163589f, -0.163778f, -0.163967f, -0.164157f, -0.164346f, -0.164535f, -0.164724f, + -0.164913f, -0.165102f, -0.165291f, -0.165480f, -0.165670f, -0.165859f, -0.166048f, -0.166237f, + -0.166426f, -0.166615f, -0.166804f, -0.166993f, -0.167182f, -0.167371f, -0.167560f, -0.167749f, + -0.167938f, -0.168127f, -0.168316f, -0.168505f, -0.168694f, -0.168883f, -0.169072f, -0.169261f, + -0.169450f, -0.169639f, -0.169828f, -0.170017f, -0.170206f, -0.170395f, -0.170584f, -0.170773f, + -0.170962f, -0.171151f, -0.171340f, -0.171529f, -0.171718f, -0.171906f, -0.172095f, -0.172284f, + -0.172473f, -0.172662f, -0.172851f, -0.173040f, -0.173229f, -0.173417f, -0.173606f, -0.173795f, + -0.173984f, -0.174173f, -0.174362f, -0.174550f, -0.174739f, -0.174928f, -0.175117f, -0.175305f, + -0.175494f, -0.175683f, -0.175872f, -0.176061f, -0.176249f, -0.176438f, -0.176627f, -0.176815f, + -0.177004f, -0.177193f, -0.177382f, -0.177570f, -0.177759f, -0.177948f, -0.178136f, -0.178325f, + -0.178514f, -0.178702f, -0.178891f, -0.179080f, -0.179268f, -0.179457f, -0.179646f, -0.179834f, + -0.180023f, -0.180212f, -0.180400f, -0.180589f, -0.180777f, -0.180966f, -0.181154f, -0.181343f, + -0.181532f, -0.181720f, -0.181909f, -0.182097f, -0.182286f, -0.182474f, -0.182663f, -0.182851f, + -0.183040f, -0.183228f, -0.183417f, -0.183605f, -0.183794f, -0.183982f, -0.184171f, -0.184359f, + -0.184548f, -0.184736f, -0.184925f, -0.185113f, -0.185301f, -0.185490f, -0.185678f, -0.185867f, + -0.186055f, -0.186244f, -0.186432f, -0.186620f, -0.186809f, -0.186997f, -0.187185f, -0.187374f, + -0.187562f, -0.187750f, -0.187939f, -0.188127f, -0.188315f, -0.188504f, -0.188692f, -0.188880f, + -0.189069f, -0.189257f, -0.189445f, -0.189634f, -0.189822f, -0.190010f, -0.190198f, -0.190387f, + -0.190575f, -0.190763f, -0.190951f, -0.191139f, -0.191328f, -0.191516f, -0.191704f, -0.191892f, + -0.192080f, -0.192269f, -0.192457f, -0.192645f, -0.192833f, -0.193021f, -0.193209f, -0.193397f, + -0.193586f, -0.193774f, -0.193962f, -0.194150f, -0.194338f, -0.194526f, -0.194714f, -0.194902f, + -0.195090f, -0.195278f, -0.195466f, -0.195654f, -0.195843f, -0.196031f, -0.196219f, -0.196407f, + -0.196595f, -0.196783f, -0.196971f, -0.197159f, -0.197347f, -0.197535f, -0.197722f, -0.197910f, + -0.198098f, -0.198286f, -0.198474f, -0.198662f, -0.198850f, -0.199038f, -0.199226f, -0.199414f, + -0.199602f, -0.199790f, -0.199978f, -0.200165f, -0.200353f, -0.200541f, -0.200729f, -0.200917f, + -0.201105f, -0.201292f, -0.201480f, -0.201668f, -0.201856f, -0.202044f, -0.202231f, -0.202419f, + -0.202607f, -0.202795f, -0.202983f, -0.203170f, -0.203358f, -0.203546f, -0.203734f, -0.203921f, + -0.204109f, -0.204297f, -0.204484f, -0.204672f, -0.204860f, -0.205047f, -0.205235f, -0.205423f, + -0.205610f, -0.205798f, -0.205986f, -0.206173f, -0.206361f, -0.206549f, -0.206736f, -0.206924f, + -0.207111f, -0.207299f, -0.207487f, -0.207674f, -0.207862f, -0.208049f, -0.208237f, -0.208424f, + -0.208612f, -0.208799f, -0.208987f, -0.209174f, -0.209362f, -0.209549f, -0.209737f, -0.209924f, + -0.210112f, -0.210299f, -0.210487f, -0.210674f, -0.210862f, -0.211049f, -0.211237f, -0.211424f, + -0.211611f, -0.211799f, -0.211986f, -0.212174f, -0.212361f, -0.212548f, -0.212736f, -0.212923f, + -0.213110f, -0.213298f, -0.213485f, -0.213672f, -0.213860f, -0.214047f, -0.214234f, -0.214422f, + -0.214609f, -0.214796f, -0.214983f, -0.215171f, -0.215358f, -0.215545f, -0.215732f, -0.215920f, + -0.216107f, -0.216294f, -0.216481f, -0.216668f, -0.216856f, -0.217043f, -0.217230f, -0.217417f, + -0.217604f, -0.217791f, -0.217979f, -0.218166f, -0.218353f, -0.218540f, -0.218727f, -0.218914f, + -0.219101f, -0.219288f, -0.219475f, -0.219662f, -0.219850f, -0.220037f, -0.220224f, -0.220411f, + -0.220598f, -0.220785f, -0.220972f, -0.221159f, -0.221346f, -0.221533f, -0.221720f, -0.221907f, + -0.222094f, -0.222281f, -0.222468f, -0.222654f, -0.222841f, -0.223028f, -0.223215f, -0.223402f, + -0.223589f, -0.223776f, -0.223963f, -0.224150f, -0.224337f, -0.224523f, -0.224710f, -0.224897f, + -0.225084f, -0.225271f, -0.225458f, -0.225644f, -0.225831f, -0.226018f, -0.226205f, -0.226391f, + -0.226578f, -0.226765f, -0.226952f, -0.227139f, -0.227325f, -0.227512f, -0.227699f, -0.227885f, + -0.228072f, -0.228259f, -0.228445f, -0.228632f, -0.228819f, -0.229005f, -0.229192f, -0.229379f, + -0.229565f, -0.229752f, -0.229939f, -0.230125f, -0.230312f, -0.230498f, -0.230685f, -0.230872f, + -0.231058f, -0.231245f, -0.231431f, -0.231618f, -0.231804f, -0.231991f, -0.232177f, -0.232364f, + -0.232550f, -0.232737f, -0.232923f, -0.233110f, -0.233296f, -0.233483f, -0.233669f, -0.233856f, + -0.234042f, -0.234228f, -0.234415f, -0.234601f, -0.234788f, -0.234974f, -0.235160f, -0.235347f, + -0.235533f, -0.235719f, -0.235906f, -0.236092f, -0.236278f, -0.236465f, -0.236651f, -0.236837f, + -0.237024f, -0.237210f, -0.237396f, -0.237582f, -0.237769f, -0.237955f, -0.238141f, -0.238327f, + -0.238514f, -0.238700f, -0.238886f, -0.239072f, -0.239258f, -0.239445f, -0.239631f, -0.239817f, + -0.240003f, -0.240189f, -0.240375f, -0.240561f, -0.240748f, -0.240934f, -0.241120f, -0.241306f, + -0.241492f, -0.241678f, -0.241864f, -0.242050f, -0.242236f, -0.242422f, -0.242608f, -0.242794f, + -0.242980f, -0.243166f, -0.243352f, -0.243538f, -0.243724f, -0.243910f, -0.244096f, -0.244282f, + -0.244468f, -0.244654f, -0.244840f, -0.245026f, -0.245212f, -0.245397f, -0.245583f, -0.245769f, + -0.245955f, -0.246141f, -0.246327f, -0.246513f, -0.246698f, -0.246884f, -0.247070f, -0.247256f, + -0.247442f, -0.247627f, -0.247813f, -0.247999f, -0.248185f, -0.248370f, -0.248556f, -0.248742f, + -0.248928f, -0.249113f, -0.249299f, -0.249485f, -0.249670f, -0.249856f, -0.250042f, -0.250227f, + -0.250413f, -0.250599f, -0.250784f, -0.250970f, -0.251155f, -0.251341f, -0.251527f, -0.251712f, + -0.251898f, -0.252083f, -0.252269f, -0.252454f, -0.252640f, -0.252826f, -0.253011f, -0.253197f, + -0.253382f, -0.253568f, -0.253753f, -0.253938f, -0.254124f, -0.254309f, -0.254495f, -0.254680f, + -0.254866f, -0.255051f, -0.255236f, -0.255422f, -0.255607f, -0.255793f, -0.255978f, -0.256163f, + -0.256349f, -0.256534f, -0.256719f, -0.256905f, -0.257090f, -0.257275f, -0.257461f, -0.257646f, + -0.257831f, -0.258016f, -0.258202f, -0.258387f, -0.258572f, -0.258757f, -0.258943f, -0.259128f, + -0.259313f, -0.259498f, -0.259683f, -0.259868f, -0.260054f, -0.260239f, -0.260424f, -0.260609f, + -0.260794f, -0.260979f, -0.261164f, -0.261349f, -0.261534f, -0.261720f, -0.261905f, -0.262090f, + -0.262275f, -0.262460f, -0.262645f, -0.262830f, -0.263015f, -0.263200f, -0.263385f, -0.263570f, + -0.263755f, -0.263940f, -0.264125f, -0.264309f, -0.264494f, -0.264679f, -0.264864f, -0.265049f, + -0.265234f, -0.265419f, -0.265604f, -0.265789f, -0.265973f, -0.266158f, -0.266343f, -0.266528f, + -0.266713f, -0.266898f, -0.267082f, -0.267267f, -0.267452f, -0.267637f, -0.267821f, -0.268006f, + -0.268191f, -0.268376f, -0.268560f, -0.268745f, -0.268930f, -0.269114f, -0.269299f, -0.269484f, + -0.269668f, -0.269853f, -0.270038f, -0.270222f, -0.270407f, -0.270591f, -0.270776f, -0.270961f, + -0.271145f, -0.271330f, -0.271514f, -0.271699f, -0.271883f, -0.272068f, -0.272252f, -0.272437f, + -0.272621f, -0.272806f, -0.272990f, -0.273175f, -0.273359f, -0.273544f, -0.273728f, -0.273912f, + -0.274097f, -0.274281f, -0.274466f, -0.274650f, -0.274834f, -0.275019f, -0.275203f, -0.275387f, + -0.275572f, -0.275756f, -0.275940f, -0.276125f, -0.276309f, -0.276493f, -0.276678f, -0.276862f, + -0.277046f, -0.277230f, -0.277415f, -0.277599f, -0.277783f, -0.277967f, -0.278151f, -0.278336f, + -0.278520f, -0.278704f, -0.278888f, -0.279072f, -0.279256f, -0.279440f, -0.279624f, -0.279809f, + -0.279993f, -0.280177f, -0.280361f, -0.280545f, -0.280729f, -0.280913f, -0.281097f, -0.281281f, + -0.281465f, -0.281649f, -0.281833f, -0.282017f, -0.282201f, -0.282385f, -0.282569f, -0.282753f, + -0.282937f, -0.283120f, -0.283304f, -0.283488f, -0.283672f, -0.283856f, -0.284040f, -0.284224f, + -0.284408f, -0.284591f, -0.284775f, -0.284959f, -0.285143f, -0.285327f, -0.285510f, -0.285694f, + -0.285878f, -0.286062f, -0.286245f, -0.286429f, -0.286613f, -0.286796f, -0.286980f, -0.287164f, + -0.287347f, -0.287531f, -0.287715f, -0.287898f, -0.288082f, -0.288266f, -0.288449f, -0.288633f, + -0.288816f, -0.289000f, -0.289184f, -0.289367f, -0.289551f, -0.289734f, -0.289918f, -0.290101f, + -0.290285f, -0.290468f, -0.290652f, -0.290835f, -0.291019f, -0.291202f, -0.291385f, -0.291569f, + -0.291752f, -0.291936f, -0.292119f, -0.292302f, -0.292486f, -0.292669f, -0.292852f, -0.293036f, + -0.293219f, -0.293402f, -0.293586f, -0.293769f, -0.293952f, -0.294136f, -0.294319f, -0.294502f, + -0.294685f, -0.294869f, -0.295052f, -0.295235f, -0.295418f, -0.295601f, -0.295785f, -0.295968f, + -0.296151f, -0.296334f, -0.296517f, -0.296700f, -0.296883f, -0.297066f, -0.297250f, -0.297433f, + -0.297616f, -0.297799f, -0.297982f, -0.298165f, -0.298348f, -0.298531f, -0.298714f, -0.298897f, + -0.299080f, -0.299263f, -0.299446f, -0.299629f, -0.299812f, -0.299995f, -0.300177f, -0.300360f, + -0.300543f, -0.300726f, -0.300909f, -0.301092f, -0.301275f, -0.301458f, -0.301640f, -0.301823f, + -0.302006f, -0.302189f, -0.302372f, -0.302554f, -0.302737f, -0.302920f, -0.303103f, -0.303285f, + -0.303468f, -0.303651f, -0.303833f, -0.304016f, -0.304199f, -0.304381f, -0.304564f, -0.304747f, + -0.304929f, -0.305112f, -0.305294f, -0.305477f, -0.305660f, -0.305842f, -0.306025f, -0.306207f, + -0.306390f, -0.306572f, -0.306755f, -0.306937f, -0.307120f, -0.307302f, -0.307485f, -0.307667f, + -0.307850f, -0.308032f, -0.308214f, -0.308397f, -0.308579f, -0.308762f, -0.308944f, -0.309126f, + -0.309309f, -0.309491f, -0.309673f, -0.309856f, -0.310038f, -0.310220f, -0.310403f, -0.310585f, + -0.310767f, -0.310949f, -0.311132f, -0.311314f, -0.311496f, -0.311678f, -0.311860f, -0.312043f, + -0.312225f, -0.312407f, -0.312589f, -0.312771f, -0.312953f, -0.313135f, -0.313318f, -0.313500f, + -0.313682f, -0.313864f, -0.314046f, -0.314228f, -0.314410f, -0.314592f, -0.314774f, -0.314956f, + -0.315138f, -0.315320f, -0.315502f, -0.315684f, -0.315866f, -0.316048f, -0.316230f, -0.316411f, + -0.316593f, -0.316775f, -0.316957f, -0.317139f, -0.317321f, -0.317503f, -0.317684f, -0.317866f, + -0.318048f, -0.318230f, -0.318412f, -0.318593f, -0.318775f, -0.318957f, -0.319139f, -0.319320f, + -0.319502f, -0.319684f, -0.319865f, -0.320047f, -0.320229f, -0.320410f, -0.320592f, -0.320774f, + -0.320955f, -0.321137f, -0.321318f, -0.321500f, -0.321682f, -0.321863f, -0.322045f, -0.322226f, + -0.322408f, -0.322589f, -0.322771f, -0.322952f, -0.323134f, -0.323315f, -0.323497f, -0.323678f, + -0.323859f, -0.324041f, -0.324222f, -0.324404f, -0.324585f, -0.324766f, -0.324948f, -0.325129f, + -0.325310f, -0.325492f, -0.325673f, -0.325854f, -0.326035f, -0.326217f, -0.326398f, -0.326579f, + -0.326760f, -0.326942f, -0.327123f, -0.327304f, -0.327485f, -0.327666f, -0.327848f, -0.328029f, + -0.328210f, -0.328391f, -0.328572f, -0.328753f, -0.328934f, -0.329115f, -0.329296f, -0.329477f, + -0.329658f, -0.329839f, -0.330020f, -0.330202f, -0.330382f, -0.330563f, -0.330744f, -0.330925f, + -0.331106f, -0.331287f, -0.331468f, -0.331649f, -0.331830f, -0.332011f, -0.332192f, -0.332373f, + -0.332553f, -0.332734f, -0.332915f, -0.333096f, -0.333277f, -0.333457f, -0.333638f, -0.333819f, + -0.334000f, -0.334180f, -0.334361f, -0.334542f, -0.334722f, -0.334903f, -0.335084f, -0.335265f, + -0.335445f, -0.335626f, -0.335806f, -0.335987f, -0.336168f, -0.336348f, -0.336529f, -0.336709f, + -0.336890f, -0.337070f, -0.337251f, -0.337431f, -0.337612f, -0.337792f, -0.337973f, -0.338153f, + -0.338334f, -0.338514f, -0.338695f, -0.338875f, -0.339055f, -0.339236f, -0.339416f, -0.339597f, + -0.339777f, -0.339957f, -0.340138f, -0.340318f, -0.340498f, -0.340678f, -0.340859f, -0.341039f, + -0.341219f, -0.341399f, -0.341580f, -0.341760f, -0.341940f, -0.342120f, -0.342300f, -0.342481f, + -0.342661f, -0.342841f, -0.343021f, -0.343201f, -0.343381f, -0.343561f, -0.343741f, -0.343921f, + -0.344101f, -0.344281f, -0.344461f, -0.344641f, -0.344821f, -0.345001f, -0.345181f, -0.345361f, + -0.345541f, -0.345721f, -0.345901f, -0.346081f, -0.346261f, -0.346441f, -0.346621f, -0.346801f, + -0.346980f, -0.347160f, -0.347340f, -0.347520f, -0.347700f, -0.347879f, -0.348059f, -0.348239f, + -0.348419f, -0.348598f, -0.348778f, -0.348958f, -0.349138f, -0.349317f, -0.349497f, -0.349676f, + -0.349856f, -0.350036f, -0.350215f, -0.350395f, -0.350575f, -0.350754f, -0.350934f, -0.351113f, + -0.351293f, -0.351472f, -0.351652f, -0.351831f, -0.352011f, -0.352190f, -0.352370f, -0.352549f, + -0.352729f, -0.352908f, -0.353087f, -0.353267f, -0.353446f, -0.353626f, -0.353805f, -0.353984f, + -0.354164f, -0.354343f, -0.354522f, -0.354701f, -0.354881f, -0.355060f, -0.355239f, -0.355418f, + -0.355598f, -0.355777f, -0.355956f, -0.356135f, -0.356314f, -0.356494f, -0.356673f, -0.356852f, + -0.357031f, -0.357210f, -0.357389f, -0.357568f, -0.357747f, -0.357926f, -0.358105f, -0.358284f, + -0.358463f, -0.358642f, -0.358821f, -0.359000f, -0.359179f, -0.359358f, -0.359537f, -0.359716f, + -0.359895f, -0.360074f, -0.360253f, -0.360432f, -0.360611f, -0.360789f, -0.360968f, -0.361147f, + -0.361326f, -0.361505f, -0.361683f, -0.361862f, -0.362041f, -0.362220f, -0.362398f, -0.362577f, + -0.362756f, -0.362934f, -0.363113f, -0.363292f, -0.363470f, -0.363649f, -0.363828f, -0.364006f, + -0.364185f, -0.364363f, -0.364542f, -0.364720f, -0.364899f, -0.365078f, -0.365256f, -0.365435f, + -0.365613f, -0.365791f, -0.365970f, -0.366148f, -0.366327f, -0.366505f, -0.366684f, -0.366862f, + -0.367040f, -0.367219f, -0.367397f, -0.367575f, -0.367754f, -0.367932f, -0.368110f, -0.368289f, + -0.368467f, -0.368645f, -0.368823f, -0.369002f, -0.369180f, -0.369358f, -0.369536f, -0.369714f, + -0.369892f, -0.370071f, -0.370249f, -0.370427f, -0.370605f, -0.370783f, -0.370961f, -0.371139f, + -0.371317f, -0.371495f, -0.371673f, -0.371851f, -0.372029f, -0.372207f, -0.372385f, -0.372563f, + -0.372741f, -0.372919f, -0.373097f, -0.373275f, -0.373453f, -0.373631f, -0.373808f, -0.373986f, + -0.374164f, -0.374342f, -0.374520f, -0.374697f, -0.374875f, -0.375053f, -0.375231f, -0.375408f, + -0.375586f, -0.375764f, -0.375942f, -0.376119f, -0.376297f, -0.376475f, -0.376652f, -0.376830f, + -0.377007f, -0.377185f, -0.377363f, -0.377540f, -0.377718f, -0.377895f, -0.378073f, -0.378250f, + -0.378428f, -0.378605f, -0.378783f, -0.378960f, -0.379138f, -0.379315f, -0.379492f, -0.379670f, + -0.379847f, -0.380025f, -0.380202f, -0.380379f, -0.380557f, -0.380734f, -0.380911f, -0.381088f, + -0.381266f, -0.381443f, -0.381620f, -0.381797f, -0.381975f, -0.382152f, -0.382329f, -0.382506f, + -0.382683f, -0.382861f, -0.383038f, -0.383215f, -0.383392f, -0.383569f, -0.383746f, -0.383923f, + -0.384100f, -0.384277f, -0.384454f, -0.384631f, -0.384808f, -0.384985f, -0.385162f, -0.385339f, + -0.385516f, -0.385693f, -0.385870f, -0.386047f, -0.386224f, -0.386400f, -0.386577f, -0.386754f, + -0.386931f, -0.387108f, -0.387285f, -0.387461f, -0.387638f, -0.387815f, -0.387992f, -0.388168f, + -0.388345f, -0.388522f, -0.388698f, -0.388875f, -0.389052f, -0.389228f, -0.389405f, -0.389582f, + -0.389758f, -0.389935f, -0.390111f, -0.390288f, -0.390464f, -0.390641f, -0.390817f, -0.390994f, + -0.391170f, -0.391347f, -0.391523f, -0.391700f, -0.391876f, -0.392053f, -0.392229f, -0.392405f, + -0.392582f, -0.392758f, -0.392934f, -0.393111f, -0.393287f, -0.393463f, -0.393640f, -0.393816f, + -0.393992f, -0.394168f, -0.394344f, -0.394521f, -0.394697f, -0.394873f, -0.395049f, -0.395225f, + -0.395401f, -0.395578f, -0.395754f, -0.395930f, -0.396106f, -0.396282f, -0.396458f, -0.396634f, + -0.396810f, -0.396986f, -0.397162f, -0.397338f, -0.397514f, -0.397690f, -0.397866f, -0.398042f, + -0.398218f, -0.398393f, -0.398569f, -0.398745f, -0.398921f, -0.399097f, -0.399273f, -0.399448f, + -0.399624f, -0.399800f, -0.399976f, -0.400151f, -0.400327f, -0.400503f, -0.400679f, -0.400854f, + -0.401030f, -0.401206f, -0.401381f, -0.401557f, -0.401732f, -0.401908f, -0.402084f, -0.402259f, + -0.402435f, -0.402610f, -0.402786f, -0.402961f, -0.403137f, -0.403312f, -0.403488f, -0.403663f, + -0.403838f, -0.404014f, -0.404189f, -0.404365f, -0.404540f, -0.404715f, -0.404891f, -0.405066f, + -0.405241f, -0.405417f, -0.405592f, -0.405767f, -0.405942f, -0.406118f, -0.406293f, -0.406468f, + -0.406643f, -0.406818f, -0.406994f, -0.407169f, -0.407344f, -0.407519f, -0.407694f, -0.407869f, + -0.408044f, -0.408219f, -0.408394f, -0.408569f, -0.408744f, -0.408919f, -0.409094f, -0.409269f, + -0.409444f, -0.409619f, -0.409794f, -0.409969f, -0.410144f, -0.410319f, -0.410493f, -0.410668f, + -0.410843f, -0.411018f, -0.411193f, -0.411368f, -0.411542f, -0.411717f, -0.411892f, -0.412067f, + -0.412241f, -0.412416f, -0.412591f, -0.412765f, -0.412940f, -0.413115f, -0.413289f, -0.413464f, + -0.413638f, -0.413813f, -0.413987f, -0.414162f, -0.414337f, -0.414511f, -0.414685f, -0.414860f, + -0.415034f, -0.415209f, -0.415383f, -0.415558f, -0.415732f, -0.415906f, -0.416081f, -0.416255f, + -0.416430f, -0.416604f, -0.416778f, -0.416952f, -0.417127f, -0.417301f, -0.417475f, -0.417650f, + -0.417824f, -0.417998f, -0.418172f, -0.418346f, -0.418520f, -0.418695f, -0.418869f, -0.419043f, + -0.419217f, -0.419391f, -0.419565f, -0.419739f, -0.419913f, -0.420087f, -0.420261f, -0.420435f, + -0.420609f, -0.420783f, -0.420957f, -0.421131f, -0.421305f, -0.421479f, -0.421653f, -0.421826f, + -0.422000f, -0.422174f, -0.422348f, -0.422522f, -0.422695f, -0.422869f, -0.423043f, -0.423217f, + -0.423390f, -0.423564f, -0.423738f, -0.423912f, -0.424085f, -0.424259f, -0.424432f, -0.424606f, + -0.424780f, -0.424953f, -0.425127f, -0.425300f, -0.425474f, -0.425647f, -0.425821f, -0.425994f, + -0.426168f, -0.426341f, -0.426515f, -0.426688f, -0.426862f, -0.427035f, -0.427208f, -0.427382f, + -0.427555f, -0.427728f, -0.427902f, -0.428075f, -0.428248f, -0.428422f, -0.428595f, -0.428768f, + -0.428941f, -0.429114f, -0.429288f, -0.429461f, -0.429634f, -0.429807f, -0.429980f, -0.430153f, + -0.430326f, -0.430500f, -0.430673f, -0.430846f, -0.431019f, -0.431192f, -0.431365f, -0.431538f, + -0.431711f, -0.431884f, -0.432057f, -0.432229f, -0.432402f, -0.432575f, -0.432748f, -0.432921f, + -0.433094f, -0.433267f, -0.433439f, -0.433612f, -0.433785f, -0.433958f, -0.434131f, -0.434303f, + -0.434476f, -0.434649f, -0.434821f, -0.434994f, -0.435167f, -0.435339f, -0.435512f, -0.435685f, + -0.435857f, -0.436030f, -0.436202f, -0.436375f, -0.436547f, -0.436720f, -0.436892f, -0.437065f, + -0.437237f, -0.437410f, -0.437582f, -0.437754f, -0.437927f, -0.438099f, -0.438272f, -0.438444f, + -0.438616f, -0.438789f, -0.438961f, -0.439133f, -0.439305f, -0.439478f, -0.439650f, -0.439822f, + -0.439994f, -0.440166f, -0.440339f, -0.440511f, -0.440683f, -0.440855f, -0.441027f, -0.441199f, + -0.441371f, -0.441543f, -0.441715f, -0.441887f, -0.442059f, -0.442231f, -0.442403f, -0.442575f, + -0.442747f, -0.442919f, -0.443091f, -0.443263f, -0.443435f, -0.443607f, -0.443779f, -0.443950f, + -0.444122f, -0.444294f, -0.444466f, -0.444637f, -0.444809f, -0.444981f, -0.445153f, -0.445324f, + -0.445496f, -0.445668f, -0.445839f, -0.446011f, -0.446183f, -0.446354f, -0.446526f, -0.446697f, + -0.446869f, -0.447040f, -0.447212f, -0.447383f, -0.447555f, -0.447726f, -0.447898f, -0.448069f, + -0.448241f, -0.448412f, -0.448583f, -0.448755f, -0.448926f, -0.449097f, -0.449269f, -0.449440f, + -0.449611f, -0.449783f, -0.449954f, -0.450125f, -0.450296f, -0.450467f, -0.450639f, -0.450810f, + -0.450981f, -0.451152f, -0.451323f, -0.451494f, -0.451665f, -0.451836f, -0.452008f, -0.452179f, + -0.452350f, -0.452521f, -0.452692f, -0.452863f, -0.453033f, -0.453204f, -0.453375f, -0.453546f, + -0.453717f, -0.453888f, -0.454059f, -0.454230f, -0.454400f, -0.454571f, -0.454742f, -0.454913f, + -0.455084f, -0.455254f, -0.455425f, -0.455596f, -0.455766f, -0.455937f, -0.456108f, -0.456278f, + -0.456449f, -0.456620f, -0.456790f, -0.456961f, -0.457131f, -0.457302f, -0.457472f, -0.457643f, + -0.457813f, -0.457984f, -0.458154f, -0.458325f, -0.458495f, -0.458665f, -0.458836f, -0.459006f, + -0.459177f, -0.459347f, -0.459517f, -0.459687f, -0.459858f, -0.460028f, -0.460198f, -0.460369f, + -0.460539f, -0.460709f, -0.460879f, -0.461049f, -0.461219f, -0.461390f, -0.461560f, -0.461730f, + -0.461900f, -0.462070f, -0.462240f, -0.462410f, -0.462580f, -0.462750f, -0.462920f, -0.463090f, + -0.463260f, -0.463430f, -0.463600f, -0.463769f, -0.463939f, -0.464109f, -0.464279f, -0.464449f, + -0.464619f, -0.464788f, -0.464958f, -0.465128f, -0.465298f, -0.465467f, -0.465637f, -0.465807f, + -0.465977f, -0.466146f, -0.466316f, -0.466485f, -0.466655f, -0.466825f, -0.466994f, -0.467164f, + -0.467333f, -0.467503f, -0.467672f, -0.467842f, -0.468011f, -0.468181f, -0.468350f, -0.468519f, + -0.468689f, -0.468858f, -0.469028f, -0.469197f, -0.469366f, -0.469536f, -0.469705f, -0.469874f, + -0.470043f, -0.470213f, -0.470382f, -0.470551f, -0.470720f, -0.470889f, -0.471058f, -0.471228f, + -0.471397f, -0.471566f, -0.471735f, -0.471904f, -0.472073f, -0.472242f, -0.472411f, -0.472580f, + -0.472749f, -0.472918f, -0.473087f, -0.473256f, -0.473425f, -0.473594f, -0.473763f, -0.473931f, + -0.474100f, -0.474269f, -0.474438f, -0.474607f, -0.474775f, -0.474944f, -0.475113f, -0.475282f, + -0.475450f, -0.475619f, -0.475788f, -0.475956f, -0.476125f, -0.476294f, -0.476462f, -0.476631f, + -0.476799f, -0.476968f, -0.477136f, -0.477305f, -0.477473f, -0.477642f, -0.477810f, -0.477979f, + -0.478147f, -0.478315f, -0.478484f, -0.478652f, -0.478821f, -0.478989f, -0.479157f, -0.479325f, + -0.479494f, -0.479662f, -0.479830f, -0.479998f, -0.480167f, -0.480335f, -0.480503f, -0.480671f, + -0.480839f, -0.481007f, -0.481176f, -0.481344f, -0.481512f, -0.481680f, -0.481848f, -0.482016f, + -0.482184f, -0.482352f, -0.482520f, -0.482688f, -0.482856f, -0.483023f, -0.483191f, -0.483359f, + -0.483527f, -0.483695f, -0.483863f, -0.484031f, -0.484198f, -0.484366f, -0.484534f, -0.484702f, + -0.484869f, -0.485037f, -0.485205f, -0.485372f, -0.485540f, -0.485708f, -0.485875f, -0.486043f, + -0.486210f, -0.486378f, -0.486545f, -0.486713f, -0.486880f, -0.487048f, -0.487215f, -0.487383f, + -0.487550f, -0.487718f, -0.487885f, -0.488052f, -0.488220f, -0.488387f, -0.488554f, -0.488722f, + -0.488889f, -0.489056f, -0.489223f, -0.489391f, -0.489558f, -0.489725f, -0.489892f, -0.490059f, + -0.490226f, -0.490394f, -0.490561f, -0.490728f, -0.490895f, -0.491062f, -0.491229f, -0.491396f, + -0.491563f, -0.491730f, -0.491897f, -0.492064f, -0.492231f, -0.492398f, -0.492564f, -0.492731f, + -0.492898f, -0.493065f, -0.493232f, -0.493399f, -0.493565f, -0.493732f, -0.493899f, -0.494066f, + -0.494232f, -0.494399f, -0.494566f, -0.494732f, -0.494899f, -0.495066f, -0.495232f, -0.495399f, + -0.495565f, -0.495732f, -0.495898f, -0.496065f, -0.496231f, -0.496398f, -0.496564f, -0.496731f, + -0.496897f, -0.497063f, -0.497230f, -0.497396f, -0.497562f, -0.497729f, -0.497895f, -0.498061f, + -0.498228f, -0.498394f, -0.498560f, -0.498726f, -0.498893f, -0.499059f, -0.499225f, -0.499391f, + -0.499557f, -0.499723f, -0.499889f, -0.500055f, -0.500221f, -0.500387f, -0.500553f, -0.500719f, + -0.500885f, -0.501051f, -0.501217f, -0.501383f, -0.501549f, -0.501715f, -0.501881f, -0.502047f, + -0.502212f, -0.502378f, -0.502544f, -0.502710f, -0.502876f, -0.503041f, -0.503207f, -0.503373f, + -0.503538f, -0.503704f, -0.503870f, -0.504035f, -0.504201f, -0.504366f, -0.504532f, -0.504698f, + -0.504863f, -0.505029f, -0.505194f, -0.505360f, -0.505525f, -0.505690f, -0.505856f, -0.506021f, + -0.506187f, -0.506352f, -0.506517f, -0.506683f, -0.506848f, -0.507013f, -0.507179f, -0.507344f, + -0.507509f, -0.507674f, -0.507839f, -0.508005f, -0.508170f, -0.508335f, -0.508500f, -0.508665f, + -0.508830f, -0.508995f, -0.509160f, -0.509325f, -0.509490f, -0.509655f, -0.509820f, -0.509985f, + -0.510150f, -0.510315f, -0.510480f, -0.510645f, -0.510810f, -0.510974f, -0.511139f, -0.511304f, + -0.511469f, -0.511634f, -0.511798f, -0.511963f, -0.512128f, -0.512292f, -0.512457f, -0.512622f, + -0.512786f, -0.512951f, -0.513116f, -0.513280f, -0.513445f, -0.513609f, -0.513774f, -0.513938f, + -0.514103f, -0.514267f, -0.514432f, -0.514596f, -0.514760f, -0.514925f, -0.515089f, -0.515254f, + -0.515418f, -0.515582f, -0.515746f, -0.515911f, -0.516075f, -0.516239f, -0.516403f, -0.516568f, + -0.516732f, -0.516896f, -0.517060f, -0.517224f, -0.517388f, -0.517552f, -0.517716f, -0.517880f, + -0.518045f, -0.518209f, -0.518372f, -0.518536f, -0.518700f, -0.518864f, -0.519028f, -0.519192f, + -0.519356f, -0.519520f, -0.519684f, -0.519848f, -0.520011f, -0.520175f, -0.520339f, -0.520503f, + -0.520666f, -0.520830f, -0.520994f, -0.521157f, -0.521321f, -0.521485f, -0.521648f, -0.521812f, + -0.521975f, -0.522139f, -0.522302f, -0.522466f, -0.522629f, -0.522793f, -0.522956f, -0.523120f, + -0.523283f, -0.523447f, -0.523610f, -0.523773f, -0.523937f, -0.524100f, -0.524263f, -0.524426f, + -0.524590f, -0.524753f, -0.524916f, -0.525079f, -0.525243f, -0.525406f, -0.525569f, -0.525732f, + -0.525895f, -0.526058f, -0.526221f, -0.526384f, -0.526547f, -0.526710f, -0.526873f, -0.527036f, + -0.527199f, -0.527362f, -0.527525f, -0.527688f, -0.527851f, -0.528014f, -0.528176f, -0.528339f, + -0.528502f, -0.528665f, -0.528828f, -0.528990f, -0.529153f, -0.529316f, -0.529478f, -0.529641f, + -0.529804f, -0.529966f, -0.530129f, -0.530291f, -0.530454f, -0.530617f, -0.530779f, -0.530942f, + -0.531104f, -0.531266f, -0.531429f, -0.531591f, -0.531754f, -0.531916f, -0.532078f, -0.532241f, + -0.532403f, -0.532565f, -0.532728f, -0.532890f, -0.533052f, -0.533214f, -0.533377f, -0.533539f, + -0.533701f, -0.533863f, -0.534025f, -0.534187f, -0.534349f, -0.534512f, -0.534674f, -0.534836f, + -0.534998f, -0.535160f, -0.535322f, -0.535484f, -0.535645f, -0.535807f, -0.535969f, -0.536131f, + -0.536293f, -0.536455f, -0.536617f, -0.536778f, -0.536940f, -0.537102f, -0.537264f, -0.537425f, + -0.537587f, -0.537749f, -0.537910f, -0.538072f, -0.538234f, -0.538395f, -0.538557f, -0.538718f, + -0.538880f, -0.539041f, -0.539203f, -0.539364f, -0.539526f, -0.539687f, -0.539849f, -0.540010f, + -0.540171f, -0.540333f, -0.540494f, -0.540655f, -0.540817f, -0.540978f, -0.541139f, -0.541301f, + -0.541462f, -0.541623f, -0.541784f, -0.541945f, -0.542106f, -0.542268f, -0.542429f, -0.542590f, + -0.542751f, -0.542912f, -0.543073f, -0.543234f, -0.543395f, -0.543556f, -0.543717f, -0.543878f, + -0.544039f, -0.544199f, -0.544360f, -0.544521f, -0.544682f, -0.544843f, -0.545003f, -0.545164f, + -0.545325f, -0.545486f, -0.545646f, -0.545807f, -0.545968f, -0.546128f, -0.546289f, -0.546450f, + -0.546610f, -0.546771f, -0.546931f, -0.547092f, -0.547252f, -0.547413f, -0.547573f, -0.547734f, + -0.547894f, -0.548054f, -0.548215f, -0.548375f, -0.548536f, -0.548696f, -0.548856f, -0.549016f, + -0.549177f, -0.549337f, -0.549497f, -0.549657f, -0.549818f, -0.549978f, -0.550138f, -0.550298f, + -0.550458f, -0.550618f, -0.550778f, -0.550938f, -0.551098f, -0.551258f, -0.551418f, -0.551578f, + -0.551738f, -0.551898f, -0.552058f, -0.552218f, -0.552378f, -0.552537f, -0.552697f, -0.552857f, + -0.553017f, -0.553176f, -0.553336f, -0.553496f, -0.553656f, -0.553815f, -0.553975f, -0.554134f, + -0.554294f, -0.554454f, -0.554613f, -0.554773f, -0.554932f, -0.555092f, -0.555251f, -0.555411f, + -0.555570f, -0.555730f, -0.555889f, -0.556048f, -0.556208f, -0.556367f, -0.556526f, -0.556686f, + -0.556845f, -0.557004f, -0.557164f, -0.557323f, -0.557482f, -0.557641f, -0.557800f, -0.557959f, + -0.558119f, -0.558278f, -0.558437f, -0.558596f, -0.558755f, -0.558914f, -0.559073f, -0.559232f, + -0.559391f, -0.559550f, -0.559709f, -0.559867f, -0.560026f, -0.560185f, -0.560344f, -0.560503f, + -0.560662f, -0.560820f, -0.560979f, -0.561138f, -0.561297f, -0.561455f, -0.561614f, -0.561773f, + -0.561931f, -0.562090f, -0.562248f, -0.562407f, -0.562565f, -0.562724f, -0.562882f, -0.563041f, + -0.563199f, -0.563358f, -0.563516f, -0.563675f, -0.563833f, -0.563991f, -0.564150f, -0.564308f, + -0.564466f, -0.564624f, -0.564783f, -0.564941f, -0.565099f, -0.565257f, -0.565416f, -0.565574f, + -0.565732f, -0.565890f, -0.566048f, -0.566206f, -0.566364f, -0.566522f, -0.566680f, -0.566838f, + -0.566996f, -0.567154f, -0.567312f, -0.567470f, -0.567628f, -0.567786f, -0.567943f, -0.568101f, + -0.568259f, -0.568417f, -0.568574f, -0.568732f, -0.568890f, -0.569048f, -0.569205f, -0.569363f, + -0.569521f, -0.569678f, -0.569836f, -0.569993f, -0.570151f, -0.570308f, -0.570466f, -0.570623f, + -0.570781f, -0.570938f, -0.571096f, -0.571253f, -0.571410f, -0.571568f, -0.571725f, -0.571882f, + -0.572040f, -0.572197f, -0.572354f, -0.572511f, -0.572669f, -0.572826f, -0.572983f, -0.573140f, + -0.573297f, -0.573454f, -0.573611f, -0.573768f, -0.573925f, -0.574082f, -0.574239f, -0.574396f, + -0.574553f, -0.574710f, -0.574867f, -0.575024f, -0.575181f, -0.575338f, -0.575495f, -0.575651f, + -0.575808f, -0.575965f, -0.576122f, -0.576278f, -0.576435f, -0.576592f, -0.576748f, -0.576905f, + -0.577062f, -0.577218f, -0.577375f, -0.577531f, -0.577688f, -0.577844f, -0.578001f, -0.578157f, + -0.578314f, -0.578470f, -0.578627f, -0.578783f, -0.578939f, -0.579096f, -0.579252f, -0.579408f, + -0.579565f, -0.579721f, -0.579877f, -0.580033f, -0.580189f, -0.580346f, -0.580502f, -0.580658f, + -0.580814f, -0.580970f, -0.581126f, -0.581282f, -0.581438f, -0.581594f, -0.581750f, -0.581906f, + -0.582062f, -0.582218f, -0.582374f, -0.582530f, -0.582685f, -0.582841f, -0.582997f, -0.583153f, + -0.583309f, -0.583464f, -0.583620f, -0.583776f, -0.583931f, -0.584087f, -0.584243f, -0.584398f, + -0.584554f, -0.584710f, -0.584865f, -0.585021f, -0.585176f, -0.585332f, -0.585487f, -0.585642f, + -0.585798f, -0.585953f, -0.586109f, -0.586264f, -0.586419f, -0.586575f, -0.586730f, -0.586885f, + -0.587040f, -0.587196f, -0.587351f, -0.587506f, -0.587661f, -0.587816f, -0.587971f, -0.588126f, + -0.588282f, -0.588437f, -0.588592f, -0.588747f, -0.588902f, -0.589057f, -0.589212f, -0.589366f, + -0.589521f, -0.589676f, -0.589831f, -0.589986f, -0.590141f, -0.590295f, -0.590450f, -0.590605f, + -0.590760f, -0.590914f, -0.591069f, -0.591224f, -0.591378f, -0.591533f, -0.591688f, -0.591842f, + -0.591997f, -0.592151f, -0.592306f, -0.592460f, -0.592615f, -0.592769f, -0.592924f, -0.593078f, + -0.593232f, -0.593387f, -0.593541f, -0.593695f, -0.593850f, -0.594004f, -0.594158f, -0.594312f, + -0.594467f, -0.594621f, -0.594775f, -0.594929f, -0.595083f, -0.595237f, -0.595391f, -0.595545f, + -0.595699f, -0.595853f, -0.596007f, -0.596161f, -0.596315f, -0.596469f, -0.596623f, -0.596777f, + -0.596931f, -0.597085f, -0.597238f, -0.597392f, -0.597546f, -0.597700f, -0.597853f, -0.598007f, + -0.598161f, -0.598314f, -0.598468f, -0.598622f, -0.598775f, -0.598929f, -0.599082f, -0.599236f, + -0.599389f, -0.599543f, -0.599696f, -0.599850f, -0.600003f, -0.600156f, -0.600310f, -0.600463f, + -0.600616f, -0.600770f, -0.600923f, -0.601076f, -0.601230f, -0.601383f, -0.601536f, -0.601689f, + -0.601842f, -0.601995f, -0.602148f, -0.602302f, -0.602455f, -0.602608f, -0.602761f, -0.602914f, + -0.603067f, -0.603220f, -0.603372f, -0.603525f, -0.603678f, -0.603831f, -0.603984f, -0.604137f, + -0.604290f, -0.604442f, -0.604595f, -0.604748f, -0.604900f, -0.605053f, -0.605206f, -0.605358f, + -0.605511f, -0.605664f, -0.605816f, -0.605969f, -0.606121f, -0.606274f, -0.606426f, -0.606579f, + -0.606731f, -0.606884f, -0.607036f, -0.607188f, -0.607341f, -0.607493f, -0.607645f, -0.607798f, + -0.607950f, -0.608102f, -0.608254f, -0.608406f, -0.608559f, -0.608711f, -0.608863f, -0.609015f, + -0.609167f, -0.609319f, -0.609471f, -0.609623f, -0.609775f, -0.609927f, -0.610079f, -0.610231f, + -0.610383f, -0.610535f, -0.610687f, -0.610838f, -0.610990f, -0.611142f, -0.611294f, -0.611445f, + -0.611597f, -0.611749f, -0.611901f, -0.612052f, -0.612204f, -0.612355f, -0.612507f, -0.612659f, + -0.612810f, -0.612962f, -0.613113f, -0.613265f, -0.613416f, -0.613567f, -0.613719f, -0.613870f, + -0.614022f, -0.614173f, -0.614324f, -0.614475f, -0.614627f, -0.614778f, -0.614929f, -0.615080f, + -0.615232f, -0.615383f, -0.615534f, -0.615685f, -0.615836f, -0.615987f, -0.616138f, -0.616289f, + -0.616440f, -0.616591f, -0.616742f, -0.616893f, -0.617044f, -0.617195f, -0.617346f, -0.617496f, + -0.617647f, -0.617798f, -0.617949f, -0.618100f, -0.618250f, -0.618401f, -0.618552f, -0.618702f, + -0.618853f, -0.619004f, -0.619154f, -0.619305f, -0.619455f, -0.619606f, -0.619756f, -0.619907f, + -0.620057f, -0.620208f, -0.620358f, -0.620508f, -0.620659f, -0.620809f, -0.620959f, -0.621110f, + -0.621260f, -0.621410f, -0.621560f, -0.621711f, -0.621861f, -0.622011f, -0.622161f, -0.622311f, + -0.622461f, -0.622611f, -0.622761f, -0.622911f, -0.623061f, -0.623211f, -0.623361f, -0.623511f, + -0.623661f, -0.623811f, -0.623961f, -0.624111f, -0.624260f, -0.624410f, -0.624560f, -0.624710f, + -0.624860f, -0.625009f, -0.625159f, -0.625309f, -0.625458f, -0.625608f, -0.625757f, -0.625907f, + -0.626056f, -0.626206f, -0.626355f, -0.626505f, -0.626654f, -0.626804f, -0.626953f, -0.627102f, + -0.627252f, -0.627401f, -0.627550f, -0.627700f, -0.627849f, -0.627998f, -0.628147f, -0.628297f, + -0.628446f, -0.628595f, -0.628744f, -0.628893f, -0.629042f, -0.629191f, -0.629340f, -0.629489f, + -0.629638f, -0.629787f, -0.629936f, -0.630085f, -0.630234f, -0.630383f, -0.630532f, -0.630680f, + -0.630829f, -0.630978f, -0.631127f, -0.631275f, -0.631424f, -0.631573f, -0.631721f, -0.631870f, + -0.632019f, -0.632167f, -0.632316f, -0.632464f, -0.632613f, -0.632761f, -0.632910f, -0.633058f, + -0.633207f, -0.633355f, -0.633504f, -0.633652f, -0.633800f, -0.633949f, -0.634097f, -0.634245f, + -0.634393f, -0.634542f, -0.634690f, -0.634838f, -0.634986f, -0.635134f, -0.635282f, -0.635430f, + -0.635578f, -0.635726f, -0.635874f, -0.636022f, -0.636170f, -0.636318f, -0.636466f, -0.636614f, + -0.636762f, -0.636910f, -0.637057f, -0.637205f, -0.637353f, -0.637501f, -0.637649f, -0.637796f, + -0.637944f, -0.638092f, -0.638239f, -0.638387f, -0.638534f, -0.638682f, -0.638829f, -0.638977f, + -0.639124f, -0.639272f, -0.639419f, -0.639567f, -0.639714f, -0.639862f, -0.640009f, -0.640156f, + -0.640303f, -0.640451f, -0.640598f, -0.640745f, -0.640892f, -0.641040f, -0.641187f, -0.641334f, + -0.641481f, -0.641628f, -0.641775f, -0.641922f, -0.642069f, -0.642216f, -0.642363f, -0.642510f, + -0.642657f, -0.642804f, -0.642951f, -0.643098f, -0.643245f, -0.643391f, -0.643538f, -0.643685f, + -0.643832f, -0.643978f, -0.644125f, -0.644272f, -0.644418f, -0.644565f, -0.644711f, -0.644858f, + -0.645005f, -0.645151f, -0.645298f, -0.645444f, -0.645590f, -0.645737f, -0.645883f, -0.646030f, + -0.646176f, -0.646322f, -0.646469f, -0.646615f, -0.646761f, -0.646907f, -0.647054f, -0.647200f, + -0.647346f, -0.647492f, -0.647638f, -0.647784f, -0.647930f, -0.648076f, -0.648222f, -0.648368f, + -0.648514f, -0.648660f, -0.648806f, -0.648952f, -0.649098f, -0.649244f, -0.649390f, -0.649536f, + -0.649681f, -0.649827f, -0.649973f, -0.650119f, -0.650264f, -0.650410f, -0.650555f, -0.650701f, + -0.650847f, -0.650992f, -0.651138f, -0.651283f, -0.651429f, -0.651574f, -0.651720f, -0.651865f, + -0.652011f, -0.652156f, -0.652301f, -0.652447f, -0.652592f, -0.652737f, -0.652882f, -0.653028f, + -0.653173f, -0.653318f, -0.653463f, -0.653608f, -0.653753f, -0.653899f, -0.654044f, -0.654189f, + -0.654334f, -0.654479f, -0.654624f, -0.654769f, -0.654913f, -0.655058f, -0.655203f, -0.655348f, + -0.655493f, -0.655638f, -0.655782f, -0.655927f, -0.656072f, -0.656217f, -0.656361f, -0.656506f, + -0.656651f, -0.656795f, -0.656940f, -0.657084f, -0.657229f, -0.657373f, -0.657518f, -0.657662f, + -0.657807f, -0.657951f, -0.658095f, -0.658240f, -0.658384f, -0.658529f, -0.658673f, -0.658817f, + -0.658961f, -0.659105f, -0.659250f, -0.659394f, -0.659538f, -0.659682f, -0.659826f, -0.659970f, + -0.660114f, -0.660258f, -0.660402f, -0.660546f, -0.660690f, -0.660834f, -0.660978f, -0.661122f, + -0.661266f, -0.661410f, -0.661553f, -0.661697f, -0.661841f, -0.661985f, -0.662128f, -0.662272f, + -0.662416f, -0.662559f, -0.662703f, -0.662847f, -0.662990f, -0.663134f, -0.663277f, -0.663421f, + -0.663564f, -0.663708f, -0.663851f, -0.663994f, -0.664138f, -0.664281f, -0.664424f, -0.664568f, + -0.664711f, -0.664854f, -0.664997f, -0.665141f, -0.665284f, -0.665427f, -0.665570f, -0.665713f, + -0.665856f, -0.665999f, -0.666142f, -0.666285f, -0.666428f, -0.666571f, -0.666714f, -0.666857f, + -0.667000f, -0.667143f, -0.667286f, -0.667428f, -0.667571f, -0.667714f, -0.667857f, -0.667999f, + -0.668142f, -0.668285f, -0.668427f, -0.668570f, -0.668712f, -0.668855f, -0.668998f, -0.669140f, + -0.669283f, -0.669425f, -0.669567f, -0.669710f, -0.669852f, -0.669995f, -0.670137f, -0.670279f, + -0.670422f, -0.670564f, -0.670706f, -0.670848f, -0.670990f, -0.671133f, -0.671275f, -0.671417f, + -0.671559f, -0.671701f, -0.671843f, -0.671985f, -0.672127f, -0.672269f, -0.672411f, -0.672553f, + -0.672695f, -0.672837f, -0.672978f, -0.673120f, -0.673262f, -0.673404f, -0.673546f, -0.673687f, + -0.673829f, -0.673971f, -0.674112f, -0.674254f, -0.674396f, -0.674537f, -0.674679f, -0.674820f, + -0.674962f, -0.675103f, -0.675245f, -0.675386f, -0.675527f, -0.675669f, -0.675810f, -0.675951f, + -0.676093f, -0.676234f, -0.676375f, -0.676516f, -0.676658f, -0.676799f, -0.676940f, -0.677081f, + -0.677222f, -0.677363f, -0.677504f, -0.677645f, -0.677786f, -0.677927f, -0.678068f, -0.678209f, + -0.678350f, -0.678491f, -0.678632f, -0.678773f, -0.678913f, -0.679054f, -0.679195f, -0.679336f, + -0.679476f, -0.679617f, -0.679758f, -0.679898f, -0.680039f, -0.680179f, -0.680320f, -0.680461f, + -0.680601f, -0.680741f, -0.680882f, -0.681022f, -0.681163f, -0.681303f, -0.681443f, -0.681584f, + -0.681724f, -0.681864f, -0.682005f, -0.682145f, -0.682285f, -0.682425f, -0.682565f, -0.682705f, + -0.682846f, -0.682986f, -0.683126f, -0.683266f, -0.683406f, -0.683546f, -0.683686f, -0.683825f, + -0.683965f, -0.684105f, -0.684245f, -0.684385f, -0.684525f, -0.684664f, -0.684804f, -0.684944f, + -0.685084f, -0.685223f, -0.685363f, -0.685503f, -0.685642f, -0.685782f, -0.685921f, -0.686061f, + -0.686200f, -0.686340f, -0.686479f, -0.686619f, -0.686758f, -0.686897f, -0.687037f, -0.687176f, + -0.687315f, -0.687455f, -0.687594f, -0.687733f, -0.687872f, -0.688011f, -0.688151f, -0.688290f, + -0.688429f, -0.688568f, -0.688707f, -0.688846f, -0.688985f, -0.689124f, -0.689263f, -0.689402f, + -0.689541f, -0.689679f, -0.689818f, -0.689957f, -0.690096f, -0.690235f, -0.690373f, -0.690512f, + -0.690651f, -0.690789f, -0.690928f, -0.691067f, -0.691205f, -0.691344f, -0.691482f, -0.691621f, + -0.691759f, -0.691898f, -0.692036f, -0.692175f, -0.692313f, -0.692451f, -0.692590f, -0.692728f, + -0.692866f, -0.693004f, -0.693143f, -0.693281f, -0.693419f, -0.693557f, -0.693695f, -0.693833f, + -0.693971f, -0.694109f, -0.694248f, -0.694386f, -0.694524f, -0.694661f, -0.694799f, -0.694937f, + -0.695075f, -0.695213f, -0.695351f, -0.695489f, -0.695626f, -0.695764f, -0.695902f, -0.696039f, + -0.696177f, -0.696315f, -0.696452f, -0.696590f, -0.696728f, -0.696865f, -0.697003f, -0.697140f, + -0.697277f, -0.697415f, -0.697552f, -0.697690f, -0.697827f, -0.697964f, -0.698102f, -0.698239f, + -0.698376f, -0.698513f, -0.698651f, -0.698788f, -0.698925f, -0.699062f, -0.699199f, -0.699336f, + -0.699473f, -0.699610f, -0.699747f, -0.699884f, -0.700021f, -0.700158f, -0.700295f, -0.700432f, + -0.700569f, -0.700706f, -0.700842f, -0.700979f, -0.701116f, -0.701253f, -0.701389f, -0.701526f, + -0.701663f, -0.701799f, -0.701936f, -0.702072f, -0.702209f, -0.702345f, -0.702482f, -0.702618f, + -0.702755f, -0.702891f, -0.703028f, -0.703164f, -0.703300f, -0.703436f, -0.703573f, -0.703709f, + -0.703845f, -0.703981f, -0.704118f, -0.704254f, -0.704390f, -0.704526f, -0.704662f, -0.704798f, + -0.704934f, -0.705070f, -0.705206f, -0.705342f, -0.705478f, -0.705614f, -0.705750f, -0.705885f, + -0.706021f, -0.706157f, -0.706293f, -0.706429f, -0.706564f, -0.706700f, -0.706836f, -0.706971f, + -0.707107f, -0.707242f, -0.707378f, -0.707513f, -0.707649f, -0.707784f, -0.707920f, -0.708055f, + -0.708191f, -0.708326f, -0.708461f, -0.708597f, -0.708732f, -0.708867f, -0.709002f, -0.709138f, + -0.709273f, -0.709408f, -0.709543f, -0.709678f, -0.709813f, -0.709948f, -0.710083f, -0.710218f, + -0.710353f, -0.710488f, -0.710623f, -0.710758f, -0.710893f, -0.711028f, -0.711163f, -0.711297f, + -0.711432f, -0.711567f, -0.711702f, -0.711836f, -0.711971f, -0.712106f, -0.712240f, -0.712375f, + -0.712509f, -0.712644f, -0.712778f, -0.712913f, -0.713047f, -0.713182f, -0.713316f, -0.713451f, + -0.713585f, -0.713719f, -0.713853f, -0.713988f, -0.714122f, -0.714256f, -0.714390f, -0.714525f, + -0.714659f, -0.714793f, -0.714927f, -0.715061f, -0.715195f, -0.715329f, -0.715463f, -0.715597f, + -0.715731f, -0.715865f, -0.715999f, -0.716132f, -0.716266f, -0.716400f, -0.716534f, -0.716668f, + -0.716801f, -0.716935f, -0.717069f, -0.717202f, -0.717336f, -0.717469f, -0.717603f, -0.717737f, + -0.717870f, -0.718004f, -0.718137f, -0.718270f, -0.718404f, -0.718537f, -0.718670f, -0.718804f, + -0.718937f, -0.719070f, -0.719204f, -0.719337f, -0.719470f, -0.719603f, -0.719736f, -0.719869f, + -0.720003f, -0.720136f, -0.720269f, -0.720402f, -0.720535f, -0.720668f, -0.720800f, -0.720933f, + -0.721066f, -0.721199f, -0.721332f, -0.721465f, -0.721597f, -0.721730f, -0.721863f, -0.721996f, + -0.722128f, -0.722261f, -0.722393f, -0.722526f, -0.722659f, -0.722791f, -0.722924f, -0.723056f, + -0.723188f, -0.723321f, -0.723453f, -0.723586f, -0.723718f, -0.723850f, -0.723983f, -0.724115f, + -0.724247f, -0.724379f, -0.724511f, -0.724644f, -0.724776f, -0.724908f, -0.725040f, -0.725172f, + -0.725304f, -0.725436f, -0.725568f, -0.725700f, -0.725832f, -0.725964f, -0.726095f, -0.726227f, + -0.726359f, -0.726491f, -0.726623f, -0.726754f, -0.726886f, -0.727018f, -0.727149f, -0.727281f, + -0.727413f, -0.727544f, -0.727676f, -0.727807f, -0.727939f, -0.728070f, -0.728202f, -0.728333f, + -0.728464f, -0.728596f, -0.728727f, -0.728858f, -0.728990f, -0.729121f, -0.729252f, -0.729383f, + -0.729514f, -0.729646f, -0.729777f, -0.729908f, -0.730039f, -0.730170f, -0.730301f, -0.730432f, + -0.730563f, -0.730694f, -0.730825f, -0.730955f, -0.731086f, -0.731217f, -0.731348f, -0.731479f, + -0.731609f, -0.731740f, -0.731871f, -0.732001f, -0.732132f, -0.732263f, -0.732393f, -0.732524f, + -0.732654f, -0.732785f, -0.732915f, -0.733046f, -0.733176f, -0.733306f, -0.733437f, -0.733567f, + -0.733697f, -0.733828f, -0.733958f, -0.734088f, -0.734218f, -0.734349f, -0.734479f, -0.734609f, + -0.734739f, -0.734869f, -0.734999f, -0.735129f, -0.735259f, -0.735389f, -0.735519f, -0.735649f, + -0.735779f, -0.735908f, -0.736038f, -0.736168f, -0.736298f, -0.736428f, -0.736557f, -0.736687f, + -0.736817f, -0.736946f, -0.737076f, -0.737205f, -0.737335f, -0.737464f, -0.737594f, -0.737723f, + -0.737853f, -0.737982f, -0.738112f, -0.738241f, -0.738370f, -0.738500f, -0.738629f, -0.738758f, + -0.738887f, -0.739017f, -0.739146f, -0.739275f, -0.739404f, -0.739533f, -0.739662f, -0.739791f, + -0.739920f, -0.740049f, -0.740178f, -0.740307f, -0.740436f, -0.740565f, -0.740694f, -0.740822f, + -0.740951f, -0.741080f, -0.741209f, -0.741337f, -0.741466f, -0.741595f, -0.741723f, -0.741852f, + -0.741980f, -0.742109f, -0.742237f, -0.742366f, -0.742494f, -0.742623f, -0.742751f, -0.742880f, + -0.743008f, -0.743136f, -0.743265f, -0.743393f, -0.743521f, -0.743649f, -0.743777f, -0.743906f, + -0.744034f, -0.744162f, -0.744290f, -0.744418f, -0.744546f, -0.744674f, -0.744802f, -0.744930f, + -0.745058f, -0.745186f, -0.745314f, -0.745441f, -0.745569f, -0.745697f, -0.745825f, -0.745952f, + -0.746080f, -0.746208f, -0.746335f, -0.746463f, -0.746591f, -0.746718f, -0.746846f, -0.746973f, + -0.747101f, -0.747228f, -0.747355f, -0.747483f, -0.747610f, -0.747738f, -0.747865f, -0.747992f, + -0.748119f, -0.748247f, -0.748374f, -0.748501f, -0.748628f, -0.748755f, -0.748882f, -0.749009f, + -0.749136f, -0.749263f, -0.749390f, -0.749517f, -0.749644f, -0.749771f, -0.749898f, -0.750025f, + -0.750152f, -0.750278f, -0.750405f, -0.750532f, -0.750659f, -0.750785f, -0.750912f, -0.751039f, + -0.751165f, -0.751292f, -0.751418f, -0.751545f, -0.751671f, -0.751798f, -0.751924f, -0.752050f, + -0.752177f, -0.752303f, -0.752429f, -0.752556f, -0.752682f, -0.752808f, -0.752934f, -0.753061f, + -0.753187f, -0.753313f, -0.753439f, -0.753565f, -0.753691f, -0.753817f, -0.753943f, -0.754069f, + -0.754195f, -0.754321f, -0.754447f, -0.754573f, -0.754698f, -0.754824f, -0.754950f, -0.755076f, + -0.755201f, -0.755327f, -0.755453f, -0.755578f, -0.755704f, -0.755829f, -0.755955f, -0.756081f, + -0.756206f, -0.756331f, -0.756457f, -0.756582f, -0.756708f, -0.756833f, -0.756958f, -0.757084f, + -0.757209f, -0.757334f, -0.757459f, -0.757584f, -0.757710f, -0.757835f, -0.757960f, -0.758085f, + -0.758210f, -0.758335f, -0.758460f, -0.758585f, -0.758710f, -0.758835f, -0.758960f, -0.759084f, + -0.759209f, -0.759334f, -0.759459f, -0.759583f, -0.759708f, -0.759833f, -0.759957f, -0.760082f, + -0.760207f, -0.760331f, -0.760456f, -0.760580f, -0.760705f, -0.760829f, -0.760954f, -0.761078f, + -0.761202f, -0.761327f, -0.761451f, -0.761575f, -0.761700f, -0.761824f, -0.761948f, -0.762072f, + -0.762196f, -0.762320f, -0.762444f, -0.762569f, -0.762693f, -0.762817f, -0.762941f, -0.763065f, + -0.763188f, -0.763312f, -0.763436f, -0.763560f, -0.763684f, -0.763808f, -0.763931f, -0.764055f, + -0.764179f, -0.764302f, -0.764426f, -0.764550f, -0.764673f, -0.764797f, -0.764920f, -0.765044f, + -0.765167f, -0.765291f, -0.765414f, -0.765538f, -0.765661f, -0.765784f, -0.765907f, -0.766031f, + -0.766154f, -0.766277f, -0.766400f, -0.766524f, -0.766647f, -0.766770f, -0.766893f, -0.767016f, + -0.767139f, -0.767262f, -0.767385f, -0.767508f, -0.767631f, -0.767754f, -0.767876f, -0.767999f, + -0.768122f, -0.768245f, -0.768368f, -0.768490f, -0.768613f, -0.768736f, -0.768858f, -0.768981f, + -0.769103f, -0.769226f, -0.769348f, -0.769471f, -0.769593f, -0.769716f, -0.769838f, -0.769961f, + -0.770083f, -0.770205f, -0.770327f, -0.770450f, -0.770572f, -0.770694f, -0.770816f, -0.770938f, + -0.771061f, -0.771183f, -0.771305f, -0.771427f, -0.771549f, -0.771671f, -0.771793f, -0.771915f, + -0.772036f, -0.772158f, -0.772280f, -0.772402f, -0.772524f, -0.772645f, -0.772767f, -0.772889f, + -0.773010f, -0.773132f, -0.773254f, -0.773375f, -0.773497f, -0.773618f, -0.773740f, -0.773861f, + -0.773983f, -0.774104f, -0.774225f, -0.774347f, -0.774468f, -0.774589f, -0.774711f, -0.774832f, + -0.774953f, -0.775074f, -0.775195f, -0.775317f, -0.775438f, -0.775559f, -0.775680f, -0.775801f, + -0.775922f, -0.776043f, -0.776164f, -0.776284f, -0.776405f, -0.776526f, -0.776647f, -0.776768f, + -0.776888f, -0.777009f, -0.777130f, -0.777251f, -0.777371f, -0.777492f, -0.777612f, -0.777733f, + -0.777853f, -0.777974f, -0.778094f, -0.778215f, -0.778335f, -0.778456f, -0.778576f, -0.778696f, + -0.778817f, -0.778937f, -0.779057f, -0.779177f, -0.779297f, -0.779418f, -0.779538f, -0.779658f, + -0.779778f, -0.779898f, -0.780018f, -0.780138f, -0.780258f, -0.780378f, -0.780498f, -0.780617f, + -0.780737f, -0.780857f, -0.780977f, -0.781097f, -0.781216f, -0.781336f, -0.781456f, -0.781575f, + -0.781695f, -0.781814f, -0.781934f, -0.782053f, -0.782173f, -0.782292f, -0.782412f, -0.782531f, + -0.782651f, -0.782770f, -0.782889f, -0.783009f, -0.783128f, -0.783247f, -0.783366f, -0.783485f, + -0.783605f, -0.783724f, -0.783843f, -0.783962f, -0.784081f, -0.784200f, -0.784319f, -0.784438f, + -0.784557f, -0.784675f, -0.784794f, -0.784913f, -0.785032f, -0.785151f, -0.785269f, -0.785388f, + -0.785507f, -0.785625f, -0.785744f, -0.785863f, -0.785981f, -0.786100f, -0.786218f, -0.786337f, + -0.786455f, -0.786574f, -0.786692f, -0.786810f, -0.786929f, -0.787047f, -0.787165f, -0.787284f, + -0.787402f, -0.787520f, -0.787638f, -0.787756f, -0.787874f, -0.787992f, -0.788110f, -0.788228f, + -0.788346f, -0.788464f, -0.788582f, -0.788700f, -0.788818f, -0.788936f, -0.789054f, -0.789172f, + -0.789289f, -0.789407f, -0.789525f, -0.789642f, -0.789760f, -0.789878f, -0.789995f, -0.790113f, + -0.790230f, -0.790348f, -0.790465f, -0.790583f, -0.790700f, -0.790817f, -0.790935f, -0.791052f, + -0.791169f, -0.791287f, -0.791404f, -0.791521f, -0.791638f, -0.791755f, -0.791872f, -0.791990f, + -0.792107f, -0.792224f, -0.792341f, -0.792458f, -0.792575f, -0.792691f, -0.792808f, -0.792925f, + -0.793042f, -0.793159f, -0.793276f, -0.793392f, -0.793509f, -0.793626f, -0.793742f, -0.793859f, + -0.793975f, -0.794092f, -0.794209f, -0.794325f, -0.794442f, -0.794558f, -0.794674f, -0.794791f, + -0.794907f, -0.795023f, -0.795140f, -0.795256f, -0.795372f, -0.795488f, -0.795605f, -0.795721f, + -0.795837f, -0.795953f, -0.796069f, -0.796185f, -0.796301f, -0.796417f, -0.796533f, -0.796649f, + -0.796765f, -0.796881f, -0.796996f, -0.797112f, -0.797228f, -0.797344f, -0.797459f, -0.797575f, + -0.797691f, -0.797806f, -0.797922f, -0.798038f, -0.798153f, -0.798269f, -0.798384f, -0.798500f, + -0.798615f, -0.798730f, -0.798846f, -0.798961f, -0.799076f, -0.799192f, -0.799307f, -0.799422f, + -0.799537f, -0.799652f, -0.799768f, -0.799883f, -0.799998f, -0.800113f, -0.800228f, -0.800343f, + -0.800458f, -0.800573f, -0.800687f, -0.800802f, -0.800917f, -0.801032f, -0.801147f, -0.801261f, + -0.801376f, -0.801491f, -0.801606f, -0.801720f, -0.801835f, -0.801949f, -0.802064f, -0.802178f, + -0.802293f, -0.802407f, -0.802522f, -0.802636f, -0.802750f, -0.802865f, -0.802979f, -0.803093f, + -0.803208f, -0.803322f, -0.803436f, -0.803550f, -0.803664f, -0.803778f, -0.803892f, -0.804006f, + -0.804120f, -0.804234f, -0.804348f, -0.804462f, -0.804576f, -0.804690f, -0.804804f, -0.804918f, + -0.805031f, -0.805145f, -0.805259f, -0.805372f, -0.805486f, -0.805600f, -0.805713f, -0.805827f, + -0.805940f, -0.806054f, -0.806167f, -0.806281f, -0.806394f, -0.806508f, -0.806621f, -0.806734f, + -0.806848f, -0.806961f, -0.807074f, -0.807187f, -0.807300f, -0.807414f, -0.807527f, -0.807640f, + -0.807753f, -0.807866f, -0.807979f, -0.808092f, -0.808205f, -0.808318f, -0.808430f, -0.808543f, + -0.808656f, -0.808769f, -0.808882f, -0.808994f, -0.809107f, -0.809220f, -0.809332f, -0.809445f, + -0.809558f, -0.809670f, -0.809783f, -0.809895f, -0.810008f, -0.810120f, -0.810232f, -0.810345f, + -0.810457f, -0.810570f, -0.810682f, -0.810794f, -0.810906f, -0.811018f, -0.811131f, -0.811243f, + -0.811355f, -0.811467f, -0.811579f, -0.811691f, -0.811803f, -0.811915f, -0.812027f, -0.812139f, + -0.812251f, -0.812362f, -0.812474f, -0.812586f, -0.812698f, -0.812809f, -0.812921f, -0.813033f, + -0.813144f, -0.813256f, -0.813368f, -0.813479f, -0.813591f, -0.813702f, -0.813814f, -0.813925f, + -0.814036f, -0.814148f, -0.814259f, -0.814370f, -0.814482f, -0.814593f, -0.814704f, -0.814815f, + -0.814926f, -0.815037f, -0.815149f, -0.815260f, -0.815371f, -0.815482f, -0.815593f, -0.815704f, + -0.815814f, -0.815925f, -0.816036f, -0.816147f, -0.816258f, -0.816368f, -0.816479f, -0.816590f, + -0.816701f, -0.816811f, -0.816922f, -0.817032f, -0.817143f, -0.817253f, -0.817364f, -0.817474f, + -0.817585f, -0.817695f, -0.817806f, -0.817916f, -0.818026f, -0.818137f, -0.818247f, -0.818357f, + -0.818467f, -0.818577f, -0.818687f, -0.818798f, -0.818908f, -0.819018f, -0.819128f, -0.819238f, + -0.819348f, -0.819457f, -0.819567f, -0.819677f, -0.819787f, -0.819897f, -0.820007f, -0.820116f, + -0.820226f, -0.820336f, -0.820445f, -0.820555f, -0.820664f, -0.820774f, -0.820884f, -0.820993f, + -0.821102f, -0.821212f, -0.821321f, -0.821431f, -0.821540f, -0.821649f, -0.821759f, -0.821868f, + -0.821977f, -0.822086f, -0.822195f, -0.822305f, -0.822414f, -0.822523f, -0.822632f, -0.822741f, + -0.822850f, -0.822959f, -0.823068f, -0.823177f, -0.823285f, -0.823394f, -0.823503f, -0.823612f, + -0.823721f, -0.823829f, -0.823938f, -0.824047f, -0.824155f, -0.824264f, -0.824372f, -0.824481f, + -0.824589f, -0.824698f, -0.824806f, -0.824915f, -0.825023f, -0.825131f, -0.825240f, -0.825348f, + -0.825456f, -0.825564f, -0.825673f, -0.825781f, -0.825889f, -0.825997f, -0.826105f, -0.826213f, + -0.826321f, -0.826429f, -0.826537f, -0.826645f, -0.826753f, -0.826861f, -0.826968f, -0.827076f, + -0.827184f, -0.827292f, -0.827399f, -0.827507f, -0.827615f, -0.827722f, -0.827830f, -0.827938f, + -0.828045f, -0.828153f, -0.828260f, -0.828367f, -0.828475f, -0.828582f, -0.828690f, -0.828797f, + -0.828904f, -0.829011f, -0.829119f, -0.829226f, -0.829333f, -0.829440f, -0.829547f, -0.829654f, + -0.829761f, -0.829868f, -0.829975f, -0.830082f, -0.830189f, -0.830296f, -0.830403f, -0.830510f, + -0.830616f, -0.830723f, -0.830830f, -0.830937f, -0.831043f, -0.831150f, -0.831257f, -0.831363f, + -0.831470f, -0.831576f, -0.831683f, -0.831789f, -0.831895f, -0.832002f, -0.832108f, -0.832215f, + -0.832321f, -0.832427f, -0.832533f, -0.832640f, -0.832746f, -0.832852f, -0.832958f, -0.833064f, + -0.833170f, -0.833276f, -0.833382f, -0.833488f, -0.833594f, -0.833700f, -0.833806f, -0.833912f, + -0.834018f, -0.834123f, -0.834229f, -0.834335f, -0.834440f, -0.834546f, -0.834652f, -0.834757f, + -0.834863f, -0.834968f, -0.835074f, -0.835179f, -0.835285f, -0.835390f, -0.835496f, -0.835601f, + -0.835706f, -0.835812f, -0.835917f, -0.836022f, -0.836127f, -0.836232f, -0.836338f, -0.836443f, + -0.836548f, -0.836653f, -0.836758f, -0.836863f, -0.836968f, -0.837073f, -0.837178f, -0.837282f, + -0.837387f, -0.837492f, -0.837597f, -0.837701f, -0.837806f, -0.837911f, -0.838015f, -0.838120f, + -0.838225f, -0.838329f, -0.838434f, -0.838538f, -0.838643f, -0.838747f, -0.838852f, -0.838956f, + -0.839060f, -0.839165f, -0.839269f, -0.839373f, -0.839477f, -0.839581f, -0.839686f, -0.839790f, + -0.839894f, -0.839998f, -0.840102f, -0.840206f, -0.840310f, -0.840414f, -0.840518f, -0.840622f, + -0.840725f, -0.840829f, -0.840933f, -0.841037f, -0.841140f, -0.841244f, -0.841348f, -0.841451f, + -0.841555f, -0.841659f, -0.841762f, -0.841866f, -0.841969f, -0.842072f, -0.842176f, -0.842279f, + -0.842383f, -0.842486f, -0.842589f, -0.842692f, -0.842796f, -0.842899f, -0.843002f, -0.843105f, + -0.843208f, -0.843311f, -0.843414f, -0.843517f, -0.843620f, -0.843723f, -0.843826f, -0.843929f, + -0.844032f, -0.844135f, -0.844238f, -0.844340f, -0.844443f, -0.844546f, -0.844648f, -0.844751f, + -0.844854f, -0.844956f, -0.845059f, -0.845161f, -0.845264f, -0.845366f, -0.845469f, -0.845571f, + -0.845673f, -0.845776f, -0.845878f, -0.845980f, -0.846082f, -0.846185f, -0.846287f, -0.846389f, + -0.846491f, -0.846593f, -0.846695f, -0.846797f, -0.846899f, -0.847001f, -0.847103f, -0.847205f, + -0.847307f, -0.847408f, -0.847510f, -0.847612f, -0.847714f, -0.847815f, -0.847917f, -0.848019f, + -0.848120f, -0.848222f, -0.848323f, -0.848425f, -0.848526f, -0.848628f, -0.848729f, -0.848831f, + -0.848932f, -0.849033f, -0.849135f, -0.849236f, -0.849337f, -0.849438f, -0.849540f, -0.849641f, + -0.849742f, -0.849843f, -0.849944f, -0.850045f, -0.850146f, -0.850247f, -0.850348f, -0.850449f, + -0.850549f, -0.850650f, -0.850751f, -0.850852f, -0.850953f, -0.851053f, -0.851154f, -0.851255f, + -0.851355f, -0.851456f, -0.851556f, -0.851657f, -0.851757f, -0.851858f, -0.851958f, -0.852059f, + -0.852159f, -0.852259f, -0.852360f, -0.852460f, -0.852560f, -0.852660f, -0.852760f, -0.852861f, + -0.852961f, -0.853061f, -0.853161f, -0.853261f, -0.853361f, -0.853461f, -0.853561f, -0.853660f, + -0.853760f, -0.853860f, -0.853960f, -0.854060f, -0.854159f, -0.854259f, -0.854359f, -0.854458f, + -0.854558f, -0.854658f, -0.854757f, -0.854857f, -0.854956f, -0.855056f, -0.855155f, -0.855254f, + -0.855354f, -0.855453f, -0.855552f, -0.855651f, -0.855751f, -0.855850f, -0.855949f, -0.856048f, + -0.856147f, -0.856246f, -0.856345f, -0.856444f, -0.856543f, -0.856642f, -0.856741f, -0.856840f, + -0.856939f, -0.857038f, -0.857137f, -0.857235f, -0.857334f, -0.857433f, -0.857531f, -0.857630f, + -0.857729f, -0.857827f, -0.857926f, -0.858024f, -0.858123f, -0.858221f, -0.858320f, -0.858418f, + -0.858516f, -0.858615f, -0.858713f, -0.858811f, -0.858909f, -0.859007f, -0.859106f, -0.859204f, + -0.859302f, -0.859400f, -0.859498f, -0.859596f, -0.859694f, -0.859792f, -0.859890f, -0.859988f, + -0.860085f, -0.860183f, -0.860281f, -0.860379f, -0.860476f, -0.860574f, -0.860672f, -0.860769f, + -0.860867f, -0.860964f, -0.861062f, -0.861160f, -0.861257f, -0.861354f, -0.861452f, -0.861549f, + -0.861646f, -0.861744f, -0.861841f, -0.861938f, -0.862035f, -0.862133f, -0.862230f, -0.862327f, + -0.862424f, -0.862521f, -0.862618f, -0.862715f, -0.862812f, -0.862909f, -0.863006f, -0.863103f, + -0.863199f, -0.863296f, -0.863393f, -0.863490f, -0.863586f, -0.863683f, -0.863780f, -0.863876f, + -0.863973f, -0.864069f, -0.864166f, -0.864262f, -0.864359f, -0.864455f, -0.864552f, -0.864648f, + -0.864744f, -0.864841f, -0.864937f, -0.865033f, -0.865129f, -0.865225f, -0.865321f, -0.865418f, + -0.865514f, -0.865610f, -0.865706f, -0.865802f, -0.865898f, -0.865993f, -0.866089f, -0.866185f, + -0.866281f, -0.866377f, -0.866472f, -0.866568f, -0.866664f, -0.866759f, -0.866855f, -0.866951f, + -0.867046f, -0.867142f, -0.867237f, -0.867333f, -0.867428f, -0.867523f, -0.867619f, -0.867714f, + -0.867809f, -0.867905f, -0.868000f, -0.868095f, -0.868190f, -0.868285f, -0.868381f, -0.868476f, + -0.868571f, -0.868666f, -0.868761f, -0.868856f, -0.868951f, -0.869045f, -0.869140f, -0.869235f, + -0.869330f, -0.869425f, -0.869519f, -0.869614f, -0.869709f, -0.869803f, -0.869898f, -0.869992f, + -0.870087f, -0.870182f, -0.870276f, -0.870370f, -0.870465f, -0.870559f, -0.870654f, -0.870748f, + -0.870842f, -0.870936f, -0.871031f, -0.871125f, -0.871219f, -0.871313f, -0.871407f, -0.871501f, + -0.871595f, -0.871689f, -0.871783f, -0.871877f, -0.871971f, -0.872065f, -0.872159f, -0.872252f, + -0.872346f, -0.872440f, -0.872534f, -0.872627f, -0.872721f, -0.872814f, -0.872908f, -0.873001f, + -0.873095f, -0.873188f, -0.873282f, -0.873375f, -0.873469f, -0.873562f, -0.873655f, -0.873749f, + -0.873842f, -0.873935f, -0.874028f, -0.874121f, -0.874215f, -0.874308f, -0.874401f, -0.874494f, + -0.874587f, -0.874680f, -0.874773f, -0.874865f, -0.874958f, -0.875051f, -0.875144f, -0.875237f, + -0.875329f, -0.875422f, -0.875515f, -0.875607f, -0.875700f, -0.875793f, -0.875885f, -0.875978f, + -0.876070f, -0.876163f, -0.876255f, -0.876347f, -0.876440f, -0.876532f, -0.876624f, -0.876716f, + -0.876809f, -0.876901f, -0.876993f, -0.877085f, -0.877177f, -0.877269f, -0.877361f, -0.877453f, + -0.877545f, -0.877637f, -0.877729f, -0.877821f, -0.877913f, -0.878005f, -0.878096f, -0.878188f, + -0.878280f, -0.878371f, -0.878463f, -0.878555f, -0.878646f, -0.878738f, -0.878829f, -0.878921f, + -0.879012f, -0.879104f, -0.879195f, -0.879286f, -0.879378f, -0.879469f, -0.879560f, -0.879651f, + -0.879743f, -0.879834f, -0.879925f, -0.880016f, -0.880107f, -0.880198f, -0.880289f, -0.880380f, + -0.880471f, -0.880562f, -0.880653f, -0.880743f, -0.880834f, -0.880925f, -0.881016f, -0.881106f, + -0.881197f, -0.881288f, -0.881378f, -0.881469f, -0.881559f, -0.881650f, -0.881740f, -0.881831f, + -0.881921f, -0.882012f, -0.882102f, -0.882192f, -0.882283f, -0.882373f, -0.882463f, -0.882553f, + -0.882643f, -0.882733f, -0.882824f, -0.882914f, -0.883004f, -0.883094f, -0.883184f, -0.883273f, + -0.883363f, -0.883453f, -0.883543f, -0.883633f, -0.883723f, -0.883812f, -0.883902f, -0.883992f, + -0.884081f, -0.884171f, -0.884260f, -0.884350f, -0.884439f, -0.884529f, -0.884618f, -0.884708f, + -0.884797f, -0.884886f, -0.884976f, -0.885065f, -0.885154f, -0.885243f, -0.885333f, -0.885422f, + -0.885511f, -0.885600f, -0.885689f, -0.885778f, -0.885867f, -0.885956f, -0.886045f, -0.886134f, + -0.886223f, -0.886311f, -0.886400f, -0.886489f, -0.886578f, -0.886666f, -0.886755f, -0.886844f, + -0.886932f, -0.887021f, -0.887109f, -0.887198f, -0.887286f, -0.887375f, -0.887463f, -0.887551f, + -0.887640f, -0.887728f, -0.887816f, -0.887904f, -0.887993f, -0.888081f, -0.888169f, -0.888257f, + -0.888345f, -0.888433f, -0.888521f, -0.888609f, -0.888697f, -0.888785f, -0.888873f, -0.888961f, + -0.889048f, -0.889136f, -0.889224f, -0.889312f, -0.889399f, -0.889487f, -0.889574f, -0.889662f, + -0.889750f, -0.889837f, -0.889925f, -0.890012f, -0.890099f, -0.890187f, -0.890274f, -0.890361f, + -0.890449f, -0.890536f, -0.890623f, -0.890710f, -0.890797f, -0.890885f, -0.890972f, -0.891059f, + -0.891146f, -0.891233f, -0.891320f, -0.891407f, -0.891493f, -0.891580f, -0.891667f, -0.891754f, + -0.891841f, -0.891927f, -0.892014f, -0.892101f, -0.892187f, -0.892274f, -0.892361f, -0.892447f, + -0.892534f, -0.892620f, -0.892706f, -0.892793f, -0.892879f, -0.892965f, -0.893052f, -0.893138f, + -0.893224f, -0.893310f, -0.893397f, -0.893483f, -0.893569f, -0.893655f, -0.893741f, -0.893827f, + -0.893913f, -0.893999f, -0.894085f, -0.894171f, -0.894256f, -0.894342f, -0.894428f, -0.894514f, + -0.894599f, -0.894685f, -0.894771f, -0.894856f, -0.894942f, -0.895028f, -0.895113f, -0.895198f, + -0.895284f, -0.895369f, -0.895455f, -0.895540f, -0.895625f, -0.895711f, -0.895796f, -0.895881f, + -0.895966f, -0.896051f, -0.896137f, -0.896222f, -0.896307f, -0.896392f, -0.896477f, -0.896562f, + -0.896646f, -0.896731f, -0.896816f, -0.896901f, -0.896986f, -0.897071f, -0.897155f, -0.897240f, + -0.897325f, -0.897409f, -0.897494f, -0.897578f, -0.897663f, -0.897747f, -0.897832f, -0.897916f, + -0.898001f, -0.898085f, -0.898169f, -0.898254f, -0.898338f, -0.898422f, -0.898506f, -0.898590f, + -0.898674f, -0.898759f, -0.898843f, -0.898927f, -0.899011f, -0.899095f, -0.899179f, -0.899262f, + -0.899346f, -0.899430f, -0.899514f, -0.899598f, -0.899681f, -0.899765f, -0.899849f, -0.899932f, + -0.900016f, -0.900099f, -0.900183f, -0.900266f, -0.900350f, -0.900433f, -0.900517f, -0.900600f, + -0.900683f, -0.900767f, -0.900850f, -0.900933f, -0.901016f, -0.901100f, -0.901183f, -0.901266f, + -0.901349f, -0.901432f, -0.901515f, -0.901598f, -0.901681f, -0.901764f, -0.901847f, -0.901929f, + -0.902012f, -0.902095f, -0.902178f, -0.902260f, -0.902343f, -0.902426f, -0.902508f, -0.902591f, + -0.902673f, -0.902756f, -0.902838f, -0.902921f, -0.903003f, -0.903085f, -0.903168f, -0.903250f, + -0.903332f, -0.903415f, -0.903497f, -0.903579f, -0.903661f, -0.903743f, -0.903825f, -0.903907f, + -0.903989f, -0.904071f, -0.904153f, -0.904235f, -0.904317f, -0.904399f, -0.904481f, -0.904562f, + -0.904644f, -0.904726f, -0.904807f, -0.904889f, -0.904971f, -0.905052f, -0.905134f, -0.905215f, + -0.905297f, -0.905378f, -0.905460f, -0.905541f, -0.905622f, -0.905704f, -0.905785f, -0.905866f, + -0.905947f, -0.906028f, -0.906110f, -0.906191f, -0.906272f, -0.906353f, -0.906434f, -0.906515f, + -0.906596f, -0.906677f, -0.906757f, -0.906838f, -0.906919f, -0.907000f, -0.907081f, -0.907161f, + -0.907242f, -0.907323f, -0.907403f, -0.907484f, -0.907564f, -0.907645f, -0.907725f, -0.907806f, + -0.907886f, -0.907966f, -0.908047f, -0.908127f, -0.908207f, -0.908288f, -0.908368f, -0.908448f, + -0.908528f, -0.908608f, -0.908688f, -0.908768f, -0.908848f, -0.908928f, -0.909008f, -0.909088f, + -0.909168f, -0.909248f, -0.909328f, -0.909407f, -0.909487f, -0.909567f, -0.909646f, -0.909726f, + -0.909806f, -0.909885f, -0.909965f, -0.910044f, -0.910124f, -0.910203f, -0.910283f, -0.910362f, + -0.910441f, -0.910521f, -0.910600f, -0.910679f, -0.910758f, -0.910837f, -0.910917f, -0.910996f, + -0.911075f, -0.911154f, -0.911233f, -0.911312f, -0.911391f, -0.911470f, -0.911548f, -0.911627f, + -0.911706f, -0.911785f, -0.911864f, -0.911942f, -0.912021f, -0.912099f, -0.912178f, -0.912257f, + -0.912335f, -0.912414f, -0.912492f, -0.912571f, -0.912649f, -0.912727f, -0.912806f, -0.912884f, + -0.912962f, -0.913040f, -0.913119f, -0.913197f, -0.913275f, -0.913353f, -0.913431f, -0.913509f, + -0.913587f, -0.913665f, -0.913743f, -0.913821f, -0.913899f, -0.913976f, -0.914054f, -0.914132f, + -0.914210f, -0.914287f, -0.914365f, -0.914443f, -0.914520f, -0.914598f, -0.914675f, -0.914753f, + -0.914830f, -0.914908f, -0.914985f, -0.915062f, -0.915140f, -0.915217f, -0.915294f, -0.915372f, + -0.915449f, -0.915526f, -0.915603f, -0.915680f, -0.915757f, -0.915834f, -0.915911f, -0.915988f, + -0.916065f, -0.916142f, -0.916219f, -0.916296f, -0.916372f, -0.916449f, -0.916526f, -0.916602f, + -0.916679f, -0.916756f, -0.916832f, -0.916909f, -0.916985f, -0.917062f, -0.917138f, -0.917215f, + -0.917291f, -0.917367f, -0.917444f, -0.917520f, -0.917596f, -0.917672f, -0.917749f, -0.917825f, + -0.917901f, -0.917977f, -0.918053f, -0.918129f, -0.918205f, -0.918281f, -0.918357f, -0.918433f, + -0.918508f, -0.918584f, -0.918660f, -0.918736f, -0.918811f, -0.918887f, -0.918963f, -0.919038f, + -0.919114f, -0.919189f, -0.919265f, -0.919340f, -0.919416f, -0.919491f, -0.919567f, -0.919642f, + -0.919717f, -0.919792f, -0.919868f, -0.919943f, -0.920018f, -0.920093f, -0.920168f, -0.920243f, + -0.920318f, -0.920393f, -0.920468f, -0.920543f, -0.920618f, -0.920693f, -0.920768f, -0.920842f, + -0.920917f, -0.920992f, -0.921067f, -0.921141f, -0.921216f, -0.921291f, -0.921365f, -0.921440f, + -0.921514f, -0.921588f, -0.921663f, -0.921737f, -0.921812f, -0.921886f, -0.921960f, -0.922034f, + -0.922109f, -0.922183f, -0.922257f, -0.922331f, -0.922405f, -0.922479f, -0.922553f, -0.922627f, + -0.922701f, -0.922775f, -0.922849f, -0.922923f, -0.922997f, -0.923070f, -0.923144f, -0.923218f, + -0.923291f, -0.923365f, -0.923439f, -0.923512f, -0.923586f, -0.923659f, -0.923733f, -0.923806f, + -0.923880f, -0.923953f, -0.924026f, -0.924100f, -0.924173f, -0.924246f, -0.924319f, -0.924392f, + -0.924465f, -0.924539f, -0.924612f, -0.924685f, -0.924758f, -0.924831f, -0.924904f, -0.924976f, + -0.925049f, -0.925122f, -0.925195f, -0.925268f, -0.925340f, -0.925413f, -0.925486f, -0.925558f, + -0.925631f, -0.925703f, -0.925776f, -0.925848f, -0.925921f, -0.925993f, -0.926066f, -0.926138f, + -0.926210f, -0.926283f, -0.926355f, -0.926427f, -0.926499f, -0.926571f, -0.926643f, -0.926715f, + -0.926787f, -0.926859f, -0.926931f, -0.927003f, -0.927075f, -0.927147f, -0.927219f, -0.927291f, + -0.927363f, -0.927434f, -0.927506f, -0.927578f, -0.927649f, -0.927721f, -0.927792f, -0.927864f, + -0.927935f, -0.928007f, -0.928078f, -0.928150f, -0.928221f, -0.928292f, -0.928364f, -0.928435f, + -0.928506f, -0.928577f, -0.928648f, -0.928720f, -0.928791f, -0.928862f, -0.928933f, -0.929004f, + -0.929075f, -0.929146f, -0.929216f, -0.929287f, -0.929358f, -0.929429f, -0.929500f, -0.929570f, + -0.929641f, -0.929712f, -0.929782f, -0.929853f, -0.929923f, -0.929994f, -0.930064f, -0.930135f, + -0.930205f, -0.930275f, -0.930346f, -0.930416f, -0.930486f, -0.930556f, -0.930627f, -0.930697f, + -0.930767f, -0.930837f, -0.930907f, -0.930977f, -0.931047f, -0.931117f, -0.931187f, -0.931257f, + -0.931327f, -0.931397f, -0.931466f, -0.931536f, -0.931606f, -0.931675f, -0.931745f, -0.931815f, + -0.931884f, -0.931954f, -0.932023f, -0.932093f, -0.932162f, -0.932232f, -0.932301f, -0.932370f, + -0.932440f, -0.932509f, -0.932578f, -0.932647f, -0.932716f, -0.932786f, -0.932855f, -0.932924f, + -0.932993f, -0.933062f, -0.933131f, -0.933200f, -0.933269f, -0.933337f, -0.933406f, -0.933475f, + -0.933544f, -0.933612f, -0.933681f, -0.933750f, -0.933818f, -0.933887f, -0.933956f, -0.934024f, + -0.934093f, -0.934161f, -0.934229f, -0.934298f, -0.934366f, -0.934434f, -0.934503f, -0.934571f, + -0.934639f, -0.934707f, -0.934775f, -0.934844f, -0.934912f, -0.934980f, -0.935048f, -0.935116f, + -0.935184f, -0.935251f, -0.935319f, -0.935387f, -0.935455f, -0.935523f, -0.935590f, -0.935658f, + -0.935726f, -0.935793f, -0.935861f, -0.935928f, -0.935996f, -0.936063f, -0.936131f, -0.936198f, + -0.936266f, -0.936333f, -0.936400f, -0.936468f, -0.936535f, -0.936602f, -0.936669f, -0.936736f, + -0.936803f, -0.936871f, -0.936938f, -0.937005f, -0.937072f, -0.937138f, -0.937205f, -0.937272f, + -0.937339f, -0.937406f, -0.937473f, -0.937539f, -0.937606f, -0.937673f, -0.937739f, -0.937806f, + -0.937872f, -0.937939f, -0.938005f, -0.938072f, -0.938138f, -0.938205f, -0.938271f, -0.938337f, + -0.938404f, -0.938470f, -0.938536f, -0.938602f, -0.938668f, -0.938734f, -0.938800f, -0.938866f, + -0.938932f, -0.938998f, -0.939064f, -0.939130f, -0.939196f, -0.939262f, -0.939328f, -0.939394f, + -0.939459f, -0.939525f, -0.939591f, -0.939656f, -0.939722f, -0.939787f, -0.939853f, -0.939918f, + -0.939984f, -0.940049f, -0.940115f, -0.940180f, -0.940245f, -0.940310f, -0.940376f, -0.940441f, + -0.940506f, -0.940571f, -0.940636f, -0.940701f, -0.940766f, -0.940831f, -0.940896f, -0.940961f, + -0.941026f, -0.941091f, -0.941156f, -0.941221f, -0.941285f, -0.941350f, -0.941415f, -0.941479f, + -0.941544f, -0.941609f, -0.941673f, -0.941738f, -0.941802f, -0.941867f, -0.941931f, -0.941995f, + -0.942060f, -0.942124f, -0.942188f, -0.942253f, -0.942317f, -0.942381f, -0.942445f, -0.942509f, + -0.942573f, -0.942637f, -0.942701f, -0.942765f, -0.942829f, -0.942893f, -0.942957f, -0.943021f, + -0.943084f, -0.943148f, -0.943212f, -0.943276f, -0.943339f, -0.943403f, -0.943466f, -0.943530f, + -0.943593f, -0.943657f, -0.943720f, -0.943784f, -0.943847f, -0.943910f, -0.943974f, -0.944037f, + -0.944100f, -0.944163f, -0.944227f, -0.944290f, -0.944353f, -0.944416f, -0.944479f, -0.944542f, + -0.944605f, -0.944668f, -0.944731f, -0.944793f, -0.944856f, -0.944919f, -0.944982f, -0.945045f, + -0.945107f, -0.945170f, -0.945232f, -0.945295f, -0.945358f, -0.945420f, -0.945482f, -0.945545f, + -0.945607f, -0.945670f, -0.945732f, -0.945794f, -0.945857f, -0.945919f, -0.945981f, -0.946043f, + -0.946105f, -0.946167f, -0.946229f, -0.946291f, -0.946353f, -0.946415f, -0.946477f, -0.946539f, + -0.946601f, -0.946663f, -0.946724f, -0.946786f, -0.946848f, -0.946910f, -0.946971f, -0.947033f, + -0.947094f, -0.947156f, -0.947217f, -0.947279f, -0.947340f, -0.947402f, -0.947463f, -0.947524f, + -0.947586f, -0.947647f, -0.947708f, -0.947769f, -0.947830f, -0.947891f, -0.947953f, -0.948014f, + -0.948075f, -0.948136f, -0.948196f, -0.948257f, -0.948318f, -0.948379f, -0.948440f, -0.948501f, + -0.948561f, -0.948622f, -0.948683f, -0.948743f, -0.948804f, -0.948864f, -0.948925f, -0.948985f, + -0.949046f, -0.949106f, -0.949167f, -0.949227f, -0.949287f, -0.949348f, -0.949408f, -0.949468f, + -0.949528f, -0.949588f, -0.949648f, -0.949708f, -0.949768f, -0.949829f, -0.949888f, -0.949948f, + -0.950008f, -0.950068f, -0.950128f, -0.950188f, -0.950247f, -0.950307f, -0.950367f, -0.950426f, + -0.950486f, -0.950546f, -0.950605f, -0.950665f, -0.950724f, -0.950784f, -0.950843f, -0.950902f, + -0.950962f, -0.951021f, -0.951080f, -0.951139f, -0.951199f, -0.951258f, -0.951317f, -0.951376f, + -0.951435f, -0.951494f, -0.951553f, -0.951612f, -0.951671f, -0.951730f, -0.951789f, -0.951847f, + -0.951906f, -0.951965f, -0.952024f, -0.952082f, -0.952141f, -0.952199f, -0.952258f, -0.952317f, + -0.952375f, -0.952433f, -0.952492f, -0.952550f, -0.952609f, -0.952667f, -0.952725f, -0.952783f, + -0.952842f, -0.952900f, -0.952958f, -0.953016f, -0.953074f, -0.953132f, -0.953190f, -0.953248f, + -0.953306f, -0.953364f, -0.953422f, -0.953480f, -0.953537f, -0.953595f, -0.953653f, -0.953711f, + -0.953768f, -0.953826f, -0.953883f, -0.953941f, -0.953998f, -0.954056f, -0.954113f, -0.954171f, + -0.954228f, -0.954285f, -0.954343f, -0.954400f, -0.954457f, -0.954514f, -0.954572f, -0.954629f, + -0.954686f, -0.954743f, -0.954800f, -0.954857f, -0.954914f, -0.954971f, -0.955028f, -0.955084f, + -0.955141f, -0.955198f, -0.955255f, -0.955311f, -0.955368f, -0.955425f, -0.955481f, -0.955538f, + -0.955594f, -0.955651f, -0.955707f, -0.955764f, -0.955820f, -0.955876f, -0.955933f, -0.955989f, + -0.956045f, -0.956101f, -0.956158f, -0.956214f, -0.956270f, -0.956326f, -0.956382f, -0.956438f, + -0.956494f, -0.956550f, -0.956606f, -0.956662f, -0.956717f, -0.956773f, -0.956829f, -0.956885f, + -0.956940f, -0.956996f, -0.957052f, -0.957107f, -0.957163f, -0.957218f, -0.957274f, -0.957329f, + -0.957385f, -0.957440f, -0.957495f, -0.957550f, -0.957606f, -0.957661f, -0.957716f, -0.957771f, + -0.957826f, -0.957882f, -0.957937f, -0.957992f, -0.958046f, -0.958101f, -0.958156f, -0.958211f, + -0.958266f, -0.958321f, -0.958376f, -0.958430f, -0.958485f, -0.958540f, -0.958594f, -0.958649f, + -0.958703f, -0.958758f, -0.958812f, -0.958867f, -0.958921f, -0.958976f, -0.959030f, -0.959084f, + -0.959139f, -0.959193f, -0.959247f, -0.959301f, -0.959355f, -0.959409f, -0.959463f, -0.959518f, + -0.959572f, -0.959625f, -0.959679f, -0.959733f, -0.959787f, -0.959841f, -0.959895f, -0.959948f, + -0.960002f, -0.960056f, -0.960109f, -0.960163f, -0.960217f, -0.960270f, -0.960324f, -0.960377f, + -0.960431f, -0.960484f, -0.960537f, -0.960591f, -0.960644f, -0.960697f, -0.960750f, -0.960804f, + -0.960857f, -0.960910f, -0.960963f, -0.961016f, -0.961069f, -0.961122f, -0.961175f, -0.961228f, + -0.961280f, -0.961333f, -0.961386f, -0.961439f, -0.961492f, -0.961544f, -0.961597f, -0.961649f, + -0.961702f, -0.961755f, -0.961807f, -0.961860f, -0.961912f, -0.961964f, -0.962017f, -0.962069f, + -0.962121f, -0.962174f, -0.962226f, -0.962278f, -0.962330f, -0.962382f, -0.962434f, -0.962486f, + -0.962538f, -0.962590f, -0.962642f, -0.962694f, -0.962746f, -0.962798f, -0.962850f, -0.962902f, + -0.962953f, -0.963005f, -0.963057f, -0.963108f, -0.963160f, -0.963211f, -0.963263f, -0.963314f, + -0.963366f, -0.963417f, -0.963469f, -0.963520f, -0.963571f, -0.963623f, -0.963674f, -0.963725f, + -0.963776f, -0.963827f, -0.963878f, -0.963929f, -0.963980f, -0.964031f, -0.964082f, -0.964133f, + -0.964184f, -0.964235f, -0.964286f, -0.964336f, -0.964387f, -0.964438f, -0.964489f, -0.964539f, + -0.964590f, -0.964640f, -0.964691f, -0.964741f, -0.964792f, -0.964842f, -0.964893f, -0.964943f, + -0.964993f, -0.965044f, -0.965094f, -0.965144f, -0.965194f, -0.965244f, -0.965294f, -0.965344f, + -0.965394f, -0.965444f, -0.965494f, -0.965544f, -0.965594f, -0.965644f, -0.965694f, -0.965744f, + -0.965793f, -0.965843f, -0.965893f, -0.965942f, -0.965992f, -0.966042f, -0.966091f, -0.966141f, + -0.966190f, -0.966239f, -0.966289f, -0.966338f, -0.966387f, -0.966437f, -0.966486f, -0.966535f, + -0.966584f, -0.966633f, -0.966683f, -0.966732f, -0.966781f, -0.966830f, -0.966879f, -0.966928f, + -0.966976f, -0.967025f, -0.967074f, -0.967123f, -0.967172f, -0.967220f, -0.967269f, -0.967318f, + -0.967366f, -0.967415f, -0.967463f, -0.967512f, -0.967560f, -0.967609f, -0.967657f, -0.967706f, + -0.967754f, -0.967802f, -0.967850f, -0.967899f, -0.967947f, -0.967995f, -0.968043f, -0.968091f, + -0.968139f, -0.968187f, -0.968235f, -0.968283f, -0.968331f, -0.968379f, -0.968427f, -0.968474f, + -0.968522f, -0.968570f, -0.968617f, -0.968665f, -0.968713f, -0.968760f, -0.968808f, -0.968855f, + -0.968903f, -0.968950f, -0.968998f, -0.969045f, -0.969092f, -0.969140f, -0.969187f, -0.969234f, + -0.969281f, -0.969328f, -0.969375f, -0.969423f, -0.969470f, -0.969517f, -0.969564f, -0.969611f, + -0.969657f, -0.969704f, -0.969751f, -0.969798f, -0.969845f, -0.969891f, -0.969938f, -0.969985f, + -0.970031f, -0.970078f, -0.970124f, -0.970171f, -0.970217f, -0.970264f, -0.970310f, -0.970357f, + -0.970403f, -0.970449f, -0.970495f, -0.970542f, -0.970588f, -0.970634f, -0.970680f, -0.970726f, + -0.970772f, -0.970818f, -0.970864f, -0.970910f, -0.970956f, -0.971002f, -0.971048f, -0.971093f, + -0.971139f, -0.971185f, -0.971231f, -0.971276f, -0.971322f, -0.971367f, -0.971413f, -0.971458f, + -0.971504f, -0.971549f, -0.971595f, -0.971640f, -0.971685f, -0.971731f, -0.971776f, -0.971821f, + -0.971866f, -0.971911f, -0.971957f, -0.972002f, -0.972047f, -0.972092f, -0.972137f, -0.972182f, + -0.972227f, -0.972271f, -0.972316f, -0.972361f, -0.972406f, -0.972450f, -0.972495f, -0.972540f, + -0.972584f, -0.972629f, -0.972673f, -0.972718f, -0.972762f, -0.972807f, -0.972851f, -0.972896f, + -0.972940f, -0.972984f, -0.973028f, -0.973073f, -0.973117f, -0.973161f, -0.973205f, -0.973249f, + -0.973293f, -0.973337f, -0.973381f, -0.973425f, -0.973469f, -0.973513f, -0.973557f, -0.973601f, + -0.973644f, -0.973688f, -0.973732f, -0.973775f, -0.973819f, -0.973862f, -0.973906f, -0.973949f, + -0.973993f, -0.974036f, -0.974080f, -0.974123f, -0.974166f, -0.974210f, -0.974253f, -0.974296f, + -0.974339f, -0.974383f, -0.974426f, -0.974469f, -0.974512f, -0.974555f, -0.974598f, -0.974641f, + -0.974684f, -0.974726f, -0.974769f, -0.974812f, -0.974855f, -0.974897f, -0.974940f, -0.974983f, + -0.975025f, -0.975068f, -0.975110f, -0.975153f, -0.975195f, -0.975238f, -0.975280f, -0.975323f, + -0.975365f, -0.975407f, -0.975449f, -0.975492f, -0.975534f, -0.975576f, -0.975618f, -0.975660f, + -0.975702f, -0.975744f, -0.975786f, -0.975828f, -0.975870f, -0.975912f, -0.975954f, -0.975995f, + -0.976037f, -0.976079f, -0.976120f, -0.976162f, -0.976204f, -0.976245f, -0.976287f, -0.976328f, + -0.976370f, -0.976411f, -0.976453f, -0.976494f, -0.976535f, -0.976576f, -0.976618f, -0.976659f, + -0.976700f, -0.976741f, -0.976782f, -0.976823f, -0.976864f, -0.976905f, -0.976946f, -0.976987f, + -0.977028f, -0.977069f, -0.977110f, -0.977151f, -0.977191f, -0.977232f, -0.977273f, -0.977313f, + -0.977354f, -0.977394f, -0.977435f, -0.977475f, -0.977516f, -0.977556f, -0.977597f, -0.977637f, + -0.977677f, -0.977718f, -0.977758f, -0.977798f, -0.977838f, -0.977878f, -0.977918f, -0.977959f, + -0.977998f, -0.978038f, -0.978078f, -0.978118f, -0.978158f, -0.978198f, -0.978238f, -0.978278f, + -0.978317f, -0.978357f, -0.978397f, -0.978436f, -0.978476f, -0.978516f, -0.978555f, -0.978594f, + -0.978634f, -0.978673f, -0.978713f, -0.978752f, -0.978791f, -0.978831f, -0.978870f, -0.978909f, + -0.978948f, -0.978987f, -0.979026f, -0.979065f, -0.979104f, -0.979143f, -0.979182f, -0.979221f, + -0.979260f, -0.979299f, -0.979338f, -0.979376f, -0.979415f, -0.979454f, -0.979493f, -0.979531f, + -0.979570f, -0.979608f, -0.979647f, -0.979685f, -0.979724f, -0.979762f, -0.979800f, -0.979839f, + -0.979877f, -0.979915f, -0.979954f, -0.979992f, -0.980030f, -0.980068f, -0.980106f, -0.980144f, + -0.980182f, -0.980220f, -0.980258f, -0.980296f, -0.980334f, -0.980372f, -0.980409f, -0.980447f, + -0.980485f, -0.980523f, -0.980560f, -0.980598f, -0.980635f, -0.980673f, -0.980710f, -0.980748f, + -0.980785f, -0.980823f, -0.980860f, -0.980897f, -0.980935f, -0.980972f, -0.981009f, -0.981046f, + -0.981083f, -0.981120f, -0.981158f, -0.981195f, -0.981232f, -0.981269f, -0.981305f, -0.981342f, + -0.981379f, -0.981416f, -0.981453f, -0.981490f, -0.981526f, -0.981563f, -0.981600f, -0.981636f, + -0.981673f, -0.981709f, -0.981746f, -0.981782f, -0.981819f, -0.981855f, -0.981891f, -0.981928f, + -0.981964f, -0.982000f, -0.982036f, -0.982072f, -0.982109f, -0.982145f, -0.982181f, -0.982217f, + -0.982253f, -0.982289f, -0.982325f, -0.982360f, -0.982396f, -0.982432f, -0.982468f, -0.982504f, + -0.982539f, -0.982575f, -0.982611f, -0.982646f, -0.982682f, -0.982717f, -0.982753f, -0.982788f, + -0.982824f, -0.982859f, -0.982894f, -0.982930f, -0.982965f, -0.983000f, -0.983035f, -0.983070f, + -0.983105f, -0.983141f, -0.983176f, -0.983211f, -0.983246f, -0.983281f, -0.983315f, -0.983350f, + -0.983385f, -0.983420f, -0.983455f, -0.983489f, -0.983524f, -0.983559f, -0.983593f, -0.983628f, + -0.983662f, -0.983697f, -0.983731f, -0.983766f, -0.983800f, -0.983835f, -0.983869f, -0.983903f, + -0.983937f, -0.983972f, -0.984006f, -0.984040f, -0.984074f, -0.984108f, -0.984142f, -0.984176f, + -0.984210f, -0.984244f, -0.984278f, -0.984312f, -0.984346f, -0.984379f, -0.984413f, -0.984447f, + -0.984480f, -0.984514f, -0.984548f, -0.984581f, -0.984615f, -0.984648f, -0.984682f, -0.984715f, + -0.984748f, -0.984782f, -0.984815f, -0.984848f, -0.984882f, -0.984915f, -0.984948f, -0.984981f, + -0.985014f, -0.985047f, -0.985080f, -0.985113f, -0.985146f, -0.985179f, -0.985212f, -0.985245f, + -0.985278f, -0.985310f, -0.985343f, -0.985376f, -0.985408f, -0.985441f, -0.985474f, -0.985506f, + -0.985539f, -0.985571f, -0.985604f, -0.985636f, -0.985668f, -0.985701f, -0.985733f, -0.985765f, + -0.985798f, -0.985830f, -0.985862f, -0.985894f, -0.985926f, -0.985958f, -0.985990f, -0.986022f, + -0.986054f, -0.986086f, -0.986118f, -0.986150f, -0.986181f, -0.986213f, -0.986245f, -0.986276f, + -0.986308f, -0.986340f, -0.986371f, -0.986403f, -0.986434f, -0.986466f, -0.986497f, -0.986529f, + -0.986560f, -0.986591f, -0.986623f, -0.986654f, -0.986685f, -0.986716f, -0.986747f, -0.986778f, + -0.986809f, -0.986840f, -0.986871f, -0.986902f, -0.986933f, -0.986964f, -0.986995f, -0.987026f, + -0.987057f, -0.987087f, -0.987118f, -0.987149f, -0.987179f, -0.987210f, -0.987240f, -0.987271f, + -0.987301f, -0.987332f, -0.987362f, -0.987393f, -0.987423f, -0.987453f, -0.987484f, -0.987514f, + -0.987544f, -0.987574f, -0.987604f, -0.987634f, -0.987664f, -0.987694f, -0.987724f, -0.987754f, + -0.987784f, -0.987814f, -0.987844f, -0.987874f, -0.987903f, -0.987933f, -0.987963f, -0.987992f, + -0.988022f, -0.988052f, -0.988081f, -0.988111f, -0.988140f, -0.988169f, -0.988199f, -0.988228f, + -0.988258f, -0.988287f, -0.988316f, -0.988345f, -0.988374f, -0.988404f, -0.988433f, -0.988462f, + -0.988491f, -0.988520f, -0.988549f, -0.988578f, -0.988607f, -0.988635f, -0.988664f, -0.988693f, + -0.988722f, -0.988750f, -0.988779f, -0.988808f, -0.988836f, -0.988865f, -0.988893f, -0.988922f, + -0.988950f, -0.988979f, -0.989007f, -0.989035f, -0.989064f, -0.989092f, -0.989120f, -0.989148f, + -0.989177f, -0.989205f, -0.989233f, -0.989261f, -0.989289f, -0.989317f, -0.989345f, -0.989373f, + -0.989400f, -0.989428f, -0.989456f, -0.989484f, -0.989511f, -0.989539f, -0.989567f, -0.989594f, + -0.989622f, -0.989650f, -0.989677f, -0.989704f, -0.989732f, -0.989759f, -0.989787f, -0.989814f, + -0.989841f, -0.989869f, -0.989896f, -0.989923f, -0.989950f, -0.989977f, -0.990004f, -0.990031f, + -0.990058f, -0.990085f, -0.990112f, -0.990139f, -0.990166f, -0.990193f, -0.990219f, -0.990246f, + -0.990273f, -0.990299f, -0.990326f, -0.990353f, -0.990379f, -0.990406f, -0.990432f, -0.990459f, + -0.990485f, -0.990511f, -0.990538f, -0.990564f, -0.990590f, -0.990617f, -0.990643f, -0.990669f, + -0.990695f, -0.990721f, -0.990747f, -0.990773f, -0.990799f, -0.990825f, -0.990851f, -0.990877f, + -0.990903f, -0.990928f, -0.990954f, -0.990980f, -0.991006f, -0.991031f, -0.991057f, -0.991082f, + -0.991108f, -0.991133f, -0.991159f, -0.991184f, -0.991210f, -0.991235f, -0.991260f, -0.991286f, + -0.991311f, -0.991336f, -0.991361f, -0.991386f, -0.991411f, -0.991437f, -0.991462f, -0.991487f, + -0.991511f, -0.991536f, -0.991561f, -0.991586f, -0.991611f, -0.991636f, -0.991660f, -0.991685f, + -0.991710f, -0.991734f, -0.991759f, -0.991783f, -0.991808f, -0.991832f, -0.991857f, -0.991881f, + -0.991906f, -0.991930f, -0.991954f, -0.991979f, -0.992003f, -0.992027f, -0.992051f, -0.992075f, + -0.992099f, -0.992123f, -0.992147f, -0.992171f, -0.992195f, -0.992219f, -0.992243f, -0.992267f, + -0.992291f, -0.992314f, -0.992338f, -0.992362f, -0.992385f, -0.992409f, -0.992433f, -0.992456f, + -0.992480f, -0.992503f, -0.992526f, -0.992550f, -0.992573f, -0.992596f, -0.992620f, -0.992643f, + -0.992666f, -0.992689f, -0.992712f, -0.992736f, -0.992759f, -0.992782f, -0.992805f, -0.992828f, + -0.992850f, -0.992873f, -0.992896f, -0.992919f, -0.992942f, -0.992964f, -0.992987f, -0.993010f, + -0.993032f, -0.993055f, -0.993077f, -0.993100f, -0.993122f, -0.993145f, -0.993167f, -0.993190f, + -0.993212f, -0.993234f, -0.993257f, -0.993279f, -0.993301f, -0.993323f, -0.993345f, -0.993367f, + -0.993389f, -0.993411f, -0.993433f, -0.993455f, -0.993477f, -0.993499f, -0.993521f, -0.993542f, + -0.993564f, -0.993586f, -0.993608f, -0.993629f, -0.993651f, -0.993672f, -0.993694f, -0.993715f, + -0.993737f, -0.993758f, -0.993779f, -0.993801f, -0.993822f, -0.993843f, -0.993865f, -0.993886f, + -0.993907f, -0.993928f, -0.993949f, -0.993970f, -0.993991f, -0.994012f, -0.994033f, -0.994054f, + -0.994075f, -0.994096f, -0.994116f, -0.994137f, -0.994158f, -0.994179f, -0.994199f, -0.994220f, + -0.994240f, -0.994261f, -0.994281f, -0.994302f, -0.994322f, -0.994343f, -0.994363f, -0.994383f, + -0.994404f, -0.994424f, -0.994444f, -0.994464f, -0.994484f, -0.994505f, -0.994525f, -0.994545f, + -0.994565f, -0.994585f, -0.994604f, -0.994624f, -0.994644f, -0.994664f, -0.994684f, -0.994703f, + -0.994723f, -0.994743f, -0.994762f, -0.994782f, -0.994802f, -0.994821f, -0.994841f, -0.994860f, + -0.994879f, -0.994899f, -0.994918f, -0.994937f, -0.994957f, -0.994976f, -0.994995f, -0.995014f, + -0.995033f, -0.995052f, -0.995071f, -0.995090f, -0.995109f, -0.995128f, -0.995147f, -0.995166f, + -0.995185f, -0.995203f, -0.995222f, -0.995241f, -0.995260f, -0.995278f, -0.995297f, -0.995315f, + -0.995334f, -0.995352f, -0.995371f, -0.995389f, -0.995408f, -0.995426f, -0.995444f, -0.995463f, + -0.995481f, -0.995499f, -0.995517f, -0.995535f, -0.995553f, -0.995571f, -0.995589f, -0.995607f, + -0.995625f, -0.995643f, -0.995661f, -0.995679f, -0.995697f, -0.995714f, -0.995732f, -0.995750f, + -0.995767f, -0.995785f, -0.995803f, -0.995820f, -0.995838f, -0.995855f, -0.995872f, -0.995890f, + -0.995907f, -0.995925f, -0.995942f, -0.995959f, -0.995976f, -0.995993f, -0.996011f, -0.996028f, + -0.996045f, -0.996062f, -0.996079f, -0.996096f, -0.996113f, -0.996129f, -0.996146f, -0.996163f, + -0.996180f, -0.996197f, -0.996213f, -0.996230f, -0.996247f, -0.996263f, -0.996280f, -0.996296f, + -0.996313f, -0.996329f, -0.996345f, -0.996362f, -0.996378f, -0.996394f, -0.996411f, -0.996427f, + -0.996443f, -0.996459f, -0.996475f, -0.996491f, -0.996507f, -0.996523f, -0.996539f, -0.996555f, + -0.996571f, -0.996587f, -0.996603f, -0.996619f, -0.996634f, -0.996650f, -0.996666f, -0.996681f, + -0.996697f, -0.996712f, -0.996728f, -0.996743f, -0.996759f, -0.996774f, -0.996790f, -0.996805f, + -0.996820f, -0.996836f, -0.996851f, -0.996866f, -0.996881f, -0.996896f, -0.996911f, -0.996926f, + -0.996941f, -0.996956f, -0.996971f, -0.996986f, -0.997001f, -0.997016f, -0.997031f, -0.997045f, + -0.997060f, -0.997075f, -0.997089f, -0.997104f, -0.997119f, -0.997133f, -0.997148f, -0.997162f, + -0.997176f, -0.997191f, -0.997205f, -0.997219f, -0.997234f, -0.997248f, -0.997262f, -0.997276f, + -0.997290f, -0.997305f, -0.997319f, -0.997333f, -0.997347f, -0.997361f, -0.997374f, -0.997388f, + -0.997402f, -0.997416f, -0.997430f, -0.997443f, -0.997457f, -0.997471f, -0.997484f, -0.997498f, + -0.997511f, -0.997525f, -0.997538f, -0.997552f, -0.997565f, -0.997579f, -0.997592f, -0.997605f, + -0.997618f, -0.997632f, -0.997645f, -0.997658f, -0.997671f, -0.997684f, -0.997697f, -0.997710f, + -0.997723f, -0.997736f, -0.997749f, -0.997762f, -0.997774f, -0.997787f, -0.997800f, -0.997813f, + -0.997825f, -0.997838f, -0.997851f, -0.997863f, -0.997876f, -0.997888f, -0.997901f, -0.997913f, + -0.997925f, -0.997938f, -0.997950f, -0.997962f, -0.997974f, -0.997987f, -0.997999f, -0.998011f, + -0.998023f, -0.998035f, -0.998047f, -0.998059f, -0.998071f, -0.998083f, -0.998094f, -0.998106f, + -0.998118f, -0.998130f, -0.998142f, -0.998153f, -0.998165f, -0.998176f, -0.998188f, -0.998200f, + -0.998211f, -0.998222f, -0.998234f, -0.998245f, -0.998257f, -0.998268f, -0.998279f, -0.998290f, + -0.998302f, -0.998313f, -0.998324f, -0.998335f, -0.998346f, -0.998357f, -0.998368f, -0.998379f, + -0.998390f, -0.998401f, -0.998411f, -0.998422f, -0.998433f, -0.998444f, -0.998454f, -0.998465f, + -0.998476f, -0.998486f, -0.998497f, -0.998507f, -0.998518f, -0.998528f, -0.998538f, -0.998549f, + -0.998559f, -0.998569f, -0.998580f, -0.998590f, -0.998600f, -0.998610f, -0.998620f, -0.998630f, + -0.998640f, -0.998650f, -0.998660f, -0.998670f, -0.998680f, -0.998690f, -0.998700f, -0.998709f, + -0.998719f, -0.998729f, -0.998738f, -0.998748f, -0.998758f, -0.998767f, -0.998777f, -0.998786f, + -0.998795f, -0.998805f, -0.998814f, -0.998824f, -0.998833f, -0.998842f, -0.998851f, -0.998860f, + -0.998870f, -0.998879f, -0.998888f, -0.998897f, -0.998906f, -0.998915f, -0.998924f, -0.998932f, + -0.998941f, -0.998950f, -0.998959f, -0.998968f, -0.998976f, -0.998985f, -0.998994f, -0.999002f, + -0.999011f, -0.999019f, -0.999028f, -0.999036f, -0.999044f, -0.999053f, -0.999061f, -0.999069f, + -0.999078f, -0.999086f, -0.999094f, -0.999102f, -0.999110f, -0.999118f, -0.999126f, -0.999134f, + -0.999142f, -0.999150f, -0.999158f, -0.999166f, -0.999174f, -0.999182f, -0.999189f, -0.999197f, + -0.999205f, -0.999212f, -0.999220f, -0.999228f, -0.999235f, -0.999243f, -0.999250f, -0.999257f, + -0.999265f, -0.999272f, -0.999279f, -0.999287f, -0.999294f, -0.999301f, -0.999308f, -0.999315f, + -0.999322f, -0.999329f, -0.999336f, -0.999343f, -0.999350f, -0.999357f, -0.999364f, -0.999371f, + -0.999378f, -0.999384f, -0.999391f, -0.999398f, -0.999404f, -0.999411f, -0.999418f, -0.999424f, + -0.999431f, -0.999437f, -0.999443f, -0.999450f, -0.999456f, -0.999462f, -0.999469f, -0.999475f, + -0.999481f, -0.999487f, -0.999493f, -0.999500f, -0.999506f, -0.999512f, -0.999518f, -0.999524f, + -0.999529f, -0.999535f, -0.999541f, -0.999547f, -0.999553f, -0.999558f, -0.999564f, -0.999570f, + -0.999575f, -0.999581f, -0.999586f, -0.999592f, -0.999597f, -0.999603f, -0.999608f, -0.999614f, + -0.999619f, -0.999624f, -0.999629f, -0.999635f, -0.999640f, -0.999645f, -0.999650f, -0.999655f, + -0.999660f, -0.999665f, -0.999670f, -0.999675f, -0.999680f, -0.999685f, -0.999689f, -0.999694f, + -0.999699f, -0.999704f, -0.999708f, -0.999713f, -0.999717f, -0.999722f, -0.999726f, -0.999731f, + -0.999735f, -0.999740f, -0.999744f, -0.999748f, -0.999753f, -0.999757f, -0.999761f, -0.999765f, + -0.999769f, -0.999774f, -0.999778f, -0.999782f, -0.999786f, -0.999790f, -0.999793f, -0.999797f, + -0.999801f, -0.999805f, -0.999809f, -0.999812f, -0.999816f, -0.999820f, -0.999823f, -0.999827f, + -0.999831f, -0.999834f, -0.999838f, -0.999841f, -0.999844f, -0.999848f, -0.999851f, -0.999854f, + -0.999858f, -0.999861f, -0.999864f, -0.999867f, -0.999870f, -0.999873f, -0.999876f, -0.999879f, + -0.999882f, -0.999885f, -0.999888f, -0.999891f, -0.999894f, -0.999897f, -0.999899f, -0.999902f, + -0.999905f, -0.999907f, -0.999910f, -0.999913f, -0.999915f, -0.999917f, -0.999920f, -0.999922f, + -0.999925f, -0.999927f, -0.999929f, -0.999932f, -0.999934f, -0.999936f, -0.999938f, -0.999940f, + -0.999942f, -0.999944f, -0.999946f, -0.999948f, -0.999950f, -0.999952f, -0.999954f, -0.999956f, + -0.999958f, -0.999959f, -0.999961f, -0.999963f, -0.999964f, -0.999966f, -0.999968f, -0.999969f, + -0.999971f, -0.999972f, -0.999973f, -0.999975f, -0.999976f, -0.999977f, -0.999979f, -0.999980f, + -0.999981f, -0.999982f, -0.999983f, -0.999985f, -0.999986f, -0.999987f, -0.999988f, -0.999988f, + -0.999989f, -0.999990f, -0.999991f, -0.999992f, -0.999993f, -0.999993f, -0.999994f, -0.999995f, + -0.999995f, -0.999996f, -0.999996f, -0.999997f, -0.999997f, -0.999998f, -0.999998f, -0.999999f, + -0.999999f, -0.999999f, -0.999999f, -1.000000f, -1.000000f, -1.000000f, -1.000000f, -1.000000 +}; + +static const float sinTable65536[32768] = { + 0.000000f, 0.000096f, 0.000192f, 0.000288f, 0.000383f, 0.000479f, 0.000575f, 0.000671f, + 0.000767f, 0.000863f, 0.000959f, 0.001055f, 0.001150f, 0.001246f, 0.001342f, 0.001438f, + 0.001534f, 0.001630f, 0.001726f, 0.001822f, 0.001917f, 0.002013f, 0.002109f, 0.002205f, + 0.002301f, 0.002397f, 0.002493f, 0.002589f, 0.002684f, 0.002780f, 0.002876f, 0.002972f, + 0.003068f, 0.003164f, 0.003260f, 0.003356f, 0.003451f, 0.003547f, 0.003643f, 0.003739f, + 0.003835f, 0.003931f, 0.004027f, 0.004123f, 0.004218f, 0.004314f, 0.004410f, 0.004506f, + 0.004602f, 0.004698f, 0.004794f, 0.004890f, 0.004985f, 0.005081f, 0.005177f, 0.005273f, + 0.005369f, 0.005465f, 0.005561f, 0.005657f, 0.005752f, 0.005848f, 0.005944f, 0.006040f, + 0.006136f, 0.006232f, 0.006328f, 0.006424f, 0.006519f, 0.006615f, 0.006711f, 0.006807f, + 0.006903f, 0.006999f, 0.007095f, 0.007190f, 0.007286f, 0.007382f, 0.007478f, 0.007574f, + 0.007670f, 0.007766f, 0.007862f, 0.007957f, 0.008053f, 0.008149f, 0.008245f, 0.008341f, + 0.008437f, 0.008533f, 0.008629f, 0.008724f, 0.008820f, 0.008916f, 0.009012f, 0.009108f, + 0.009204f, 0.009300f, 0.009395f, 0.009491f, 0.009587f, 0.009683f, 0.009779f, 0.009875f, + 0.009971f, 0.010067f, 0.010162f, 0.010258f, 0.010354f, 0.010450f, 0.010546f, 0.010642f, + 0.010738f, 0.010834f, 0.010929f, 0.011025f, 0.011121f, 0.011217f, 0.011313f, 0.011409f, + 0.011505f, 0.011600f, 0.011696f, 0.011792f, 0.011888f, 0.011984f, 0.012080f, 0.012176f, + 0.012272f, 0.012367f, 0.012463f, 0.012559f, 0.012655f, 0.012751f, 0.012847f, 0.012943f, + 0.013038f, 0.013134f, 0.013230f, 0.013326f, 0.013422f, 0.013518f, 0.013614f, 0.013710f, + 0.013805f, 0.013901f, 0.013997f, 0.014093f, 0.014189f, 0.014285f, 0.014381f, 0.014476f, + 0.014572f, 0.014668f, 0.014764f, 0.014860f, 0.014956f, 0.015052f, 0.015147f, 0.015243f, + 0.015339f, 0.015435f, 0.015531f, 0.015627f, 0.015723f, 0.015819f, 0.015914f, 0.016010f, + 0.016106f, 0.016202f, 0.016298f, 0.016394f, 0.016490f, 0.016585f, 0.016681f, 0.016777f, + 0.016873f, 0.016969f, 0.017065f, 0.017161f, 0.017256f, 0.017352f, 0.017448f, 0.017544f, + 0.017640f, 0.017736f, 0.017832f, 0.017927f, 0.018023f, 0.018119f, 0.018215f, 0.018311f, + 0.018407f, 0.018503f, 0.018598f, 0.018694f, 0.018790f, 0.018886f, 0.018982f, 0.019078f, + 0.019174f, 0.019269f, 0.019365f, 0.019461f, 0.019557f, 0.019653f, 0.019749f, 0.019845f, + 0.019940f, 0.020036f, 0.020132f, 0.020228f, 0.020324f, 0.020420f, 0.020516f, 0.020611f, + 0.020707f, 0.020803f, 0.020899f, 0.020995f, 0.021091f, 0.021187f, 0.021282f, 0.021378f, + 0.021474f, 0.021570f, 0.021666f, 0.021762f, 0.021857f, 0.021953f, 0.022049f, 0.022145f, + 0.022241f, 0.022337f, 0.022433f, 0.022528f, 0.022624f, 0.022720f, 0.022816f, 0.022912f, + 0.023008f, 0.023104f, 0.023199f, 0.023295f, 0.023391f, 0.023487f, 0.023583f, 0.023679f, + 0.023774f, 0.023870f, 0.023966f, 0.024062f, 0.024158f, 0.024254f, 0.024350f, 0.024445f, + 0.024541f, 0.024637f, 0.024733f, 0.024829f, 0.024925f, 0.025020f, 0.025116f, 0.025212f, + 0.025308f, 0.025404f, 0.025500f, 0.025596f, 0.025691f, 0.025787f, 0.025883f, 0.025979f, + 0.026075f, 0.026171f, 0.026266f, 0.026362f, 0.026458f, 0.026554f, 0.026650f, 0.026746f, + 0.026841f, 0.026937f, 0.027033f, 0.027129f, 0.027225f, 0.027321f, 0.027416f, 0.027512f, + 0.027608f, 0.027704f, 0.027800f, 0.027896f, 0.027991f, 0.028087f, 0.028183f, 0.028279f, + 0.028375f, 0.028471f, 0.028567f, 0.028662f, 0.028758f, 0.028854f, 0.028950f, 0.029046f, + 0.029142f, 0.029237f, 0.029333f, 0.029429f, 0.029525f, 0.029621f, 0.029717f, 0.029812f, + 0.029908f, 0.030004f, 0.030100f, 0.030196f, 0.030291f, 0.030387f, 0.030483f, 0.030579f, + 0.030675f, 0.030771f, 0.030866f, 0.030962f, 0.031058f, 0.031154f, 0.031250f, 0.031346f, + 0.031441f, 0.031537f, 0.031633f, 0.031729f, 0.031825f, 0.031921f, 0.032016f, 0.032112f, + 0.032208f, 0.032304f, 0.032400f, 0.032495f, 0.032591f, 0.032687f, 0.032783f, 0.032879f, + 0.032975f, 0.033070f, 0.033166f, 0.033262f, 0.033358f, 0.033454f, 0.033550f, 0.033645f, + 0.033741f, 0.033837f, 0.033933f, 0.034029f, 0.034124f, 0.034220f, 0.034316f, 0.034412f, + 0.034508f, 0.034604f, 0.034699f, 0.034795f, 0.034891f, 0.034987f, 0.035083f, 0.035178f, + 0.035274f, 0.035370f, 0.035466f, 0.035562f, 0.035657f, 0.035753f, 0.035849f, 0.035945f, + 0.036041f, 0.036137f, 0.036232f, 0.036328f, 0.036424f, 0.036520f, 0.036616f, 0.036711f, + 0.036807f, 0.036903f, 0.036999f, 0.037095f, 0.037190f, 0.037286f, 0.037382f, 0.037478f, + 0.037574f, 0.037669f, 0.037765f, 0.037861f, 0.037957f, 0.038053f, 0.038149f, 0.038244f, + 0.038340f, 0.038436f, 0.038532f, 0.038628f, 0.038723f, 0.038819f, 0.038915f, 0.039011f, + 0.039107f, 0.039202f, 0.039298f, 0.039394f, 0.039490f, 0.039586f, 0.039681f, 0.039777f, + 0.039873f, 0.039969f, 0.040065f, 0.040160f, 0.040256f, 0.040352f, 0.040448f, 0.040544f, + 0.040639f, 0.040735f, 0.040831f, 0.040927f, 0.041022f, 0.041118f, 0.041214f, 0.041310f, + 0.041406f, 0.041501f, 0.041597f, 0.041693f, 0.041789f, 0.041885f, 0.041980f, 0.042076f, + 0.042172f, 0.042268f, 0.042364f, 0.042459f, 0.042555f, 0.042651f, 0.042747f, 0.042842f, + 0.042938f, 0.043034f, 0.043130f, 0.043226f, 0.043321f, 0.043417f, 0.043513f, 0.043609f, + 0.043705f, 0.043800f, 0.043896f, 0.043992f, 0.044088f, 0.044183f, 0.044279f, 0.044375f, + 0.044471f, 0.044567f, 0.044662f, 0.044758f, 0.044854f, 0.044950f, 0.045045f, 0.045141f, + 0.045237f, 0.045333f, 0.045429f, 0.045524f, 0.045620f, 0.045716f, 0.045812f, 0.045907f, + 0.046003f, 0.046099f, 0.046195f, 0.046290f, 0.046386f, 0.046482f, 0.046578f, 0.046674f, + 0.046769f, 0.046865f, 0.046961f, 0.047057f, 0.047152f, 0.047248f, 0.047344f, 0.047440f, + 0.047535f, 0.047631f, 0.047727f, 0.047823f, 0.047919f, 0.048014f, 0.048110f, 0.048206f, + 0.048302f, 0.048397f, 0.048493f, 0.048589f, 0.048685f, 0.048780f, 0.048876f, 0.048972f, + 0.049068f, 0.049163f, 0.049259f, 0.049355f, 0.049451f, 0.049546f, 0.049642f, 0.049738f, + 0.049834f, 0.049929f, 0.050025f, 0.050121f, 0.050217f, 0.050312f, 0.050408f, 0.050504f, + 0.050600f, 0.050696f, 0.050791f, 0.050887f, 0.050983f, 0.051078f, 0.051174f, 0.051270f, + 0.051366f, 0.051461f, 0.051557f, 0.051653f, 0.051749f, 0.051844f, 0.051940f, 0.052036f, + 0.052132f, 0.052227f, 0.052323f, 0.052419f, 0.052515f, 0.052610f, 0.052706f, 0.052802f, + 0.052898f, 0.052993f, 0.053089f, 0.053185f, 0.053281f, 0.053376f, 0.053472f, 0.053568f, + 0.053664f, 0.053759f, 0.053855f, 0.053951f, 0.054046f, 0.054142f, 0.054238f, 0.054334f, + 0.054429f, 0.054525f, 0.054621f, 0.054717f, 0.054812f, 0.054908f, 0.055004f, 0.055100f, + 0.055195f, 0.055291f, 0.055387f, 0.055482f, 0.055578f, 0.055674f, 0.055770f, 0.055865f, + 0.055961f, 0.056057f, 0.056152f, 0.056248f, 0.056344f, 0.056440f, 0.056535f, 0.056631f, + 0.056727f, 0.056823f, 0.056918f, 0.057014f, 0.057110f, 0.057205f, 0.057301f, 0.057397f, + 0.057493f, 0.057588f, 0.057684f, 0.057780f, 0.057875f, 0.057971f, 0.058067f, 0.058163f, + 0.058258f, 0.058354f, 0.058450f, 0.058545f, 0.058641f, 0.058737f, 0.058833f, 0.058928f, + 0.059024f, 0.059120f, 0.059215f, 0.059311f, 0.059407f, 0.059502f, 0.059598f, 0.059694f, + 0.059790f, 0.059885f, 0.059981f, 0.060077f, 0.060172f, 0.060268f, 0.060364f, 0.060459f, + 0.060555f, 0.060651f, 0.060747f, 0.060842f, 0.060938f, 0.061034f, 0.061129f, 0.061225f, + 0.061321f, 0.061416f, 0.061512f, 0.061608f, 0.061704f, 0.061799f, 0.061895f, 0.061991f, + 0.062086f, 0.062182f, 0.062278f, 0.062373f, 0.062469f, 0.062565f, 0.062660f, 0.062756f, + 0.062852f, 0.062947f, 0.063043f, 0.063139f, 0.063234f, 0.063330f, 0.063426f, 0.063522f, + 0.063617f, 0.063713f, 0.063809f, 0.063904f, 0.064000f, 0.064096f, 0.064191f, 0.064287f, + 0.064383f, 0.064478f, 0.064574f, 0.064670f, 0.064765f, 0.064861f, 0.064957f, 0.065052f, + 0.065148f, 0.065244f, 0.065339f, 0.065435f, 0.065531f, 0.065626f, 0.065722f, 0.065818f, + 0.065913f, 0.066009f, 0.066105f, 0.066200f, 0.066296f, 0.066392f, 0.066487f, 0.066583f, + 0.066679f, 0.066774f, 0.066870f, 0.066966f, 0.067061f, 0.067157f, 0.067253f, 0.067348f, + 0.067444f, 0.067540f, 0.067635f, 0.067731f, 0.067827f, 0.067922f, 0.068018f, 0.068113f, + 0.068209f, 0.068305f, 0.068400f, 0.068496f, 0.068592f, 0.068687f, 0.068783f, 0.068879f, + 0.068974f, 0.069070f, 0.069166f, 0.069261f, 0.069357f, 0.069453f, 0.069548f, 0.069644f, + 0.069739f, 0.069835f, 0.069931f, 0.070026f, 0.070122f, 0.070218f, 0.070313f, 0.070409f, + 0.070505f, 0.070600f, 0.070696f, 0.070791f, 0.070887f, 0.070983f, 0.071078f, 0.071174f, + 0.071270f, 0.071365f, 0.071461f, 0.071557f, 0.071652f, 0.071748f, 0.071843f, 0.071939f, + 0.072035f, 0.072130f, 0.072226f, 0.072322f, 0.072417f, 0.072513f, 0.072608f, 0.072704f, + 0.072800f, 0.072895f, 0.072991f, 0.073086f, 0.073182f, 0.073278f, 0.073373f, 0.073469f, + 0.073565f, 0.073660f, 0.073756f, 0.073851f, 0.073947f, 0.074043f, 0.074138f, 0.074234f, + 0.074329f, 0.074425f, 0.074521f, 0.074616f, 0.074712f, 0.074807f, 0.074903f, 0.074999f, + 0.075094f, 0.075190f, 0.075286f, 0.075381f, 0.075477f, 0.075572f, 0.075668f, 0.075764f, + 0.075859f, 0.075955f, 0.076050f, 0.076146f, 0.076241f, 0.076337f, 0.076433f, 0.076528f, + 0.076624f, 0.076719f, 0.076815f, 0.076911f, 0.077006f, 0.077102f, 0.077197f, 0.077293f, + 0.077389f, 0.077484f, 0.077580f, 0.077675f, 0.077771f, 0.077866f, 0.077962f, 0.078058f, + 0.078153f, 0.078249f, 0.078344f, 0.078440f, 0.078536f, 0.078631f, 0.078727f, 0.078822f, + 0.078918f, 0.079013f, 0.079109f, 0.079205f, 0.079300f, 0.079396f, 0.079491f, 0.079587f, + 0.079682f, 0.079778f, 0.079874f, 0.079969f, 0.080065f, 0.080160f, 0.080256f, 0.080351f, + 0.080447f, 0.080543f, 0.080638f, 0.080734f, 0.080829f, 0.080925f, 0.081020f, 0.081116f, + 0.081211f, 0.081307f, 0.081403f, 0.081498f, 0.081594f, 0.081689f, 0.081785f, 0.081880f, + 0.081976f, 0.082071f, 0.082167f, 0.082263f, 0.082358f, 0.082454f, 0.082549f, 0.082645f, + 0.082740f, 0.082836f, 0.082931f, 0.083027f, 0.083122f, 0.083218f, 0.083314f, 0.083409f, + 0.083505f, 0.083600f, 0.083696f, 0.083791f, 0.083887f, 0.083982f, 0.084078f, 0.084173f, + 0.084269f, 0.084364f, 0.084460f, 0.084555f, 0.084651f, 0.084747f, 0.084842f, 0.084938f, + 0.085033f, 0.085129f, 0.085224f, 0.085320f, 0.085415f, 0.085511f, 0.085606f, 0.085702f, + 0.085797f, 0.085893f, 0.085988f, 0.086084f, 0.086179f, 0.086275f, 0.086370f, 0.086466f, + 0.086561f, 0.086657f, 0.086752f, 0.086848f, 0.086943f, 0.087039f, 0.087135f, 0.087230f, + 0.087326f, 0.087421f, 0.087517f, 0.087612f, 0.087708f, 0.087803f, 0.087899f, 0.087994f, + 0.088090f, 0.088185f, 0.088281f, 0.088376f, 0.088472f, 0.088567f, 0.088663f, 0.088758f, + 0.088854f, 0.088949f, 0.089045f, 0.089140f, 0.089236f, 0.089331f, 0.089427f, 0.089522f, + 0.089617f, 0.089713f, 0.089808f, 0.089904f, 0.089999f, 0.090095f, 0.090190f, 0.090286f, + 0.090381f, 0.090477f, 0.090572f, 0.090668f, 0.090763f, 0.090859f, 0.090954f, 0.091050f, + 0.091145f, 0.091241f, 0.091336f, 0.091432f, 0.091527f, 0.091623f, 0.091718f, 0.091813f, + 0.091909f, 0.092004f, 0.092100f, 0.092195f, 0.092291f, 0.092386f, 0.092482f, 0.092577f, + 0.092673f, 0.092768f, 0.092864f, 0.092959f, 0.093055f, 0.093150f, 0.093245f, 0.093341f, + 0.093436f, 0.093532f, 0.093627f, 0.093723f, 0.093818f, 0.093914f, 0.094009f, 0.094104f, + 0.094200f, 0.094295f, 0.094391f, 0.094486f, 0.094582f, 0.094677f, 0.094773f, 0.094868f, + 0.094963f, 0.095059f, 0.095154f, 0.095250f, 0.095345f, 0.095441f, 0.095536f, 0.095632f, + 0.095727f, 0.095822f, 0.095918f, 0.096013f, 0.096109f, 0.096204f, 0.096300f, 0.096395f, + 0.096490f, 0.096586f, 0.096681f, 0.096777f, 0.096872f, 0.096968f, 0.097063f, 0.097158f, + 0.097254f, 0.097349f, 0.097445f, 0.097540f, 0.097635f, 0.097731f, 0.097826f, 0.097922f, + 0.098017f, 0.098113f, 0.098208f, 0.098303f, 0.098399f, 0.098494f, 0.098590f, 0.098685f, + 0.098780f, 0.098876f, 0.098971f, 0.099067f, 0.099162f, 0.099257f, 0.099353f, 0.099448f, + 0.099544f, 0.099639f, 0.099734f, 0.099830f, 0.099925f, 0.100021f, 0.100116f, 0.100211f, + 0.100307f, 0.100402f, 0.100498f, 0.100593f, 0.100688f, 0.100784f, 0.100879f, 0.100974f, + 0.101070f, 0.101165f, 0.101261f, 0.101356f, 0.101451f, 0.101547f, 0.101642f, 0.101738f, + 0.101833f, 0.101928f, 0.102024f, 0.102119f, 0.102214f, 0.102310f, 0.102405f, 0.102500f, + 0.102596f, 0.102691f, 0.102787f, 0.102882f, 0.102977f, 0.103073f, 0.103168f, 0.103263f, + 0.103359f, 0.103454f, 0.103550f, 0.103645f, 0.103740f, 0.103836f, 0.103931f, 0.104026f, + 0.104122f, 0.104217f, 0.104312f, 0.104408f, 0.104503f, 0.104598f, 0.104694f, 0.104789f, + 0.104884f, 0.104980f, 0.105075f, 0.105170f, 0.105266f, 0.105361f, 0.105456f, 0.105552f, + 0.105647f, 0.105742f, 0.105838f, 0.105933f, 0.106028f, 0.106124f, 0.106219f, 0.106314f, + 0.106410f, 0.106505f, 0.106600f, 0.106696f, 0.106791f, 0.106886f, 0.106982f, 0.107077f, + 0.107172f, 0.107268f, 0.107363f, 0.107458f, 0.107554f, 0.107649f, 0.107744f, 0.107840f, + 0.107935f, 0.108030f, 0.108126f, 0.108221f, 0.108316f, 0.108412f, 0.108507f, 0.108602f, + 0.108697f, 0.108793f, 0.108888f, 0.108983f, 0.109079f, 0.109174f, 0.109269f, 0.109365f, + 0.109460f, 0.109555f, 0.109650f, 0.109746f, 0.109841f, 0.109936f, 0.110032f, 0.110127f, + 0.110222f, 0.110317f, 0.110413f, 0.110508f, 0.110603f, 0.110699f, 0.110794f, 0.110889f, + 0.110984f, 0.111080f, 0.111175f, 0.111270f, 0.111366f, 0.111461f, 0.111556f, 0.111651f, + 0.111747f, 0.111842f, 0.111937f, 0.112033f, 0.112128f, 0.112223f, 0.112318f, 0.112414f, + 0.112509f, 0.112604f, 0.112699f, 0.112795f, 0.112890f, 0.112985f, 0.113080f, 0.113176f, + 0.113271f, 0.113366f, 0.113461f, 0.113557f, 0.113652f, 0.113747f, 0.113842f, 0.113938f, + 0.114033f, 0.114128f, 0.114223f, 0.114319f, 0.114414f, 0.114509f, 0.114604f, 0.114700f, + 0.114795f, 0.114890f, 0.114985f, 0.115081f, 0.115176f, 0.115271f, 0.115366f, 0.115462f, + 0.115557f, 0.115652f, 0.115747f, 0.115842f, 0.115938f, 0.116033f, 0.116128f, 0.116223f, + 0.116319f, 0.116414f, 0.116509f, 0.116604f, 0.116700f, 0.116795f, 0.116890f, 0.116985f, + 0.117080f, 0.117176f, 0.117271f, 0.117366f, 0.117461f, 0.117556f, 0.117652f, 0.117747f, + 0.117842f, 0.117937f, 0.118032f, 0.118128f, 0.118223f, 0.118318f, 0.118413f, 0.118508f, + 0.118604f, 0.118699f, 0.118794f, 0.118889f, 0.118984f, 0.119080f, 0.119175f, 0.119270f, + 0.119365f, 0.119460f, 0.119556f, 0.119651f, 0.119746f, 0.119841f, 0.119936f, 0.120032f, + 0.120127f, 0.120222f, 0.120317f, 0.120412f, 0.120507f, 0.120603f, 0.120698f, 0.120793f, + 0.120888f, 0.120983f, 0.121078f, 0.121174f, 0.121269f, 0.121364f, 0.121459f, 0.121554f, + 0.121649f, 0.121745f, 0.121840f, 0.121935f, 0.122030f, 0.122125f, 0.122220f, 0.122316f, + 0.122411f, 0.122506f, 0.122601f, 0.122696f, 0.122791f, 0.122886f, 0.122982f, 0.123077f, + 0.123172f, 0.123267f, 0.123362f, 0.123457f, 0.123552f, 0.123648f, 0.123743f, 0.123838f, + 0.123933f, 0.124028f, 0.124123f, 0.124218f, 0.124314f, 0.124409f, 0.124504f, 0.124599f, + 0.124694f, 0.124789f, 0.124884f, 0.124979f, 0.125075f, 0.125170f, 0.125265f, 0.125360f, + 0.125455f, 0.125550f, 0.125645f, 0.125740f, 0.125835f, 0.125931f, 0.126026f, 0.126121f, + 0.126216f, 0.126311f, 0.126406f, 0.126501f, 0.126596f, 0.126691f, 0.126787f, 0.126882f, + 0.126977f, 0.127072f, 0.127167f, 0.127262f, 0.127357f, 0.127452f, 0.127547f, 0.127642f, + 0.127737f, 0.127833f, 0.127928f, 0.128023f, 0.128118f, 0.128213f, 0.128308f, 0.128403f, + 0.128498f, 0.128593f, 0.128688f, 0.128783f, 0.128878f, 0.128973f, 0.129069f, 0.129164f, + 0.129259f, 0.129354f, 0.129449f, 0.129544f, 0.129639f, 0.129734f, 0.129829f, 0.129924f, + 0.130019f, 0.130114f, 0.130209f, 0.130304f, 0.130399f, 0.130495f, 0.130590f, 0.130685f, + 0.130780f, 0.130875f, 0.130970f, 0.131065f, 0.131160f, 0.131255f, 0.131350f, 0.131445f, + 0.131540f, 0.131635f, 0.131730f, 0.131825f, 0.131920f, 0.132015f, 0.132110f, 0.132205f, + 0.132300f, 0.132395f, 0.132490f, 0.132585f, 0.132680f, 0.132775f, 0.132870f, 0.132966f, + 0.133061f, 0.133156f, 0.133251f, 0.133346f, 0.133441f, 0.133536f, 0.133631f, 0.133726f, + 0.133821f, 0.133916f, 0.134011f, 0.134106f, 0.134201f, 0.134296f, 0.134391f, 0.134486f, + 0.134581f, 0.134676f, 0.134771f, 0.134866f, 0.134961f, 0.135056f, 0.135151f, 0.135246f, + 0.135341f, 0.135436f, 0.135531f, 0.135626f, 0.135721f, 0.135816f, 0.135911f, 0.136006f, + 0.136101f, 0.136196f, 0.136291f, 0.136386f, 0.136480f, 0.136575f, 0.136670f, 0.136765f, + 0.136860f, 0.136955f, 0.137050f, 0.137145f, 0.137240f, 0.137335f, 0.137430f, 0.137525f, + 0.137620f, 0.137715f, 0.137810f, 0.137905f, 0.138000f, 0.138095f, 0.138190f, 0.138285f, + 0.138380f, 0.138475f, 0.138570f, 0.138665f, 0.138760f, 0.138855f, 0.138949f, 0.139044f, + 0.139139f, 0.139234f, 0.139329f, 0.139424f, 0.139519f, 0.139614f, 0.139709f, 0.139804f, + 0.139899f, 0.139994f, 0.140089f, 0.140184f, 0.140279f, 0.140373f, 0.140468f, 0.140563f, + 0.140658f, 0.140753f, 0.140848f, 0.140943f, 0.141038f, 0.141133f, 0.141228f, 0.141323f, + 0.141418f, 0.141512f, 0.141607f, 0.141702f, 0.141797f, 0.141892f, 0.141987f, 0.142082f, + 0.142177f, 0.142272f, 0.142367f, 0.142461f, 0.142556f, 0.142651f, 0.142746f, 0.142841f, + 0.142936f, 0.143031f, 0.143126f, 0.143221f, 0.143316f, 0.143410f, 0.143505f, 0.143600f, + 0.143695f, 0.143790f, 0.143885f, 0.143980f, 0.144075f, 0.144169f, 0.144264f, 0.144359f, + 0.144454f, 0.144549f, 0.144644f, 0.144739f, 0.144833f, 0.144928f, 0.145023f, 0.145118f, + 0.145213f, 0.145308f, 0.145403f, 0.145497f, 0.145592f, 0.145687f, 0.145782f, 0.145877f, + 0.145972f, 0.146067f, 0.146161f, 0.146256f, 0.146351f, 0.146446f, 0.146541f, 0.146636f, + 0.146730f, 0.146825f, 0.146920f, 0.147015f, 0.147110f, 0.147205f, 0.147299f, 0.147394f, + 0.147489f, 0.147584f, 0.147679f, 0.147774f, 0.147868f, 0.147963f, 0.148058f, 0.148153f, + 0.148248f, 0.148342f, 0.148437f, 0.148532f, 0.148627f, 0.148722f, 0.148817f, 0.148911f, + 0.149006f, 0.149101f, 0.149196f, 0.149291f, 0.149385f, 0.149480f, 0.149575f, 0.149670f, + 0.149765f, 0.149859f, 0.149954f, 0.150049f, 0.150144f, 0.150238f, 0.150333f, 0.150428f, + 0.150523f, 0.150618f, 0.150712f, 0.150807f, 0.150902f, 0.150997f, 0.151092f, 0.151186f, + 0.151281f, 0.151376f, 0.151471f, 0.151565f, 0.151660f, 0.151755f, 0.151850f, 0.151944f, + 0.152039f, 0.152134f, 0.152229f, 0.152323f, 0.152418f, 0.152513f, 0.152608f, 0.152702f, + 0.152797f, 0.152892f, 0.152987f, 0.153081f, 0.153176f, 0.153271f, 0.153366f, 0.153460f, + 0.153555f, 0.153650f, 0.153745f, 0.153839f, 0.153934f, 0.154029f, 0.154124f, 0.154218f, + 0.154313f, 0.154408f, 0.154502f, 0.154597f, 0.154692f, 0.154787f, 0.154881f, 0.154976f, + 0.155071f, 0.155165f, 0.155260f, 0.155355f, 0.155450f, 0.155544f, 0.155639f, 0.155734f, + 0.155828f, 0.155923f, 0.156018f, 0.156112f, 0.156207f, 0.156302f, 0.156397f, 0.156491f, + 0.156586f, 0.156681f, 0.156775f, 0.156870f, 0.156965f, 0.157059f, 0.157154f, 0.157249f, + 0.157343f, 0.157438f, 0.157533f, 0.157627f, 0.157722f, 0.157817f, 0.157912f, 0.158006f, + 0.158101f, 0.158196f, 0.158290f, 0.158385f, 0.158480f, 0.158574f, 0.158669f, 0.158763f, + 0.158858f, 0.158953f, 0.159047f, 0.159142f, 0.159237f, 0.159331f, 0.159426f, 0.159521f, + 0.159615f, 0.159710f, 0.159805f, 0.159899f, 0.159994f, 0.160089f, 0.160183f, 0.160278f, + 0.160372f, 0.160467f, 0.160562f, 0.160656f, 0.160751f, 0.160846f, 0.160940f, 0.161035f, + 0.161129f, 0.161224f, 0.161319f, 0.161413f, 0.161508f, 0.161603f, 0.161697f, 0.161792f, + 0.161886f, 0.161981f, 0.162076f, 0.162170f, 0.162265f, 0.162359f, 0.162454f, 0.162549f, + 0.162643f, 0.162738f, 0.162832f, 0.162927f, 0.163022f, 0.163116f, 0.163211f, 0.163305f, + 0.163400f, 0.163495f, 0.163589f, 0.163684f, 0.163778f, 0.163873f, 0.163967f, 0.164062f, + 0.164157f, 0.164251f, 0.164346f, 0.164440f, 0.164535f, 0.164629f, 0.164724f, 0.164819f, + 0.164913f, 0.165008f, 0.165102f, 0.165197f, 0.165291f, 0.165386f, 0.165480f, 0.165575f, + 0.165670f, 0.165764f, 0.165859f, 0.165953f, 0.166048f, 0.166142f, 0.166237f, 0.166331f, + 0.166426f, 0.166520f, 0.166615f, 0.166710f, 0.166804f, 0.166899f, 0.166993f, 0.167088f, + 0.167182f, 0.167277f, 0.167371f, 0.167466f, 0.167560f, 0.167655f, 0.167749f, 0.167844f, + 0.167938f, 0.168033f, 0.168127f, 0.168222f, 0.168316f, 0.168411f, 0.168505f, 0.168600f, + 0.168694f, 0.168789f, 0.168883f, 0.168978f, 0.169072f, 0.169167f, 0.169261f, 0.169356f, + 0.169450f, 0.169545f, 0.169639f, 0.169734f, 0.169828f, 0.169923f, 0.170017f, 0.170112f, + 0.170206f, 0.170301f, 0.170395f, 0.170490f, 0.170584f, 0.170678f, 0.170773f, 0.170867f, + 0.170962f, 0.171056f, 0.171151f, 0.171245f, 0.171340f, 0.171434f, 0.171529f, 0.171623f, + 0.171718f, 0.171812f, 0.171906f, 0.172001f, 0.172095f, 0.172190f, 0.172284f, 0.172379f, + 0.172473f, 0.172568f, 0.172662f, 0.172756f, 0.172851f, 0.172945f, 0.173040f, 0.173134f, + 0.173229f, 0.173323f, 0.173417f, 0.173512f, 0.173606f, 0.173701f, 0.173795f, 0.173889f, + 0.173984f, 0.174078f, 0.174173f, 0.174267f, 0.174362f, 0.174456f, 0.174550f, 0.174645f, + 0.174739f, 0.174834f, 0.174928f, 0.175022f, 0.175117f, 0.175211f, 0.175305f, 0.175400f, + 0.175494f, 0.175589f, 0.175683f, 0.175777f, 0.175872f, 0.175966f, 0.176061f, 0.176155f, + 0.176249f, 0.176344f, 0.176438f, 0.176532f, 0.176627f, 0.176721f, 0.176815f, 0.176910f, + 0.177004f, 0.177099f, 0.177193f, 0.177287f, 0.177382f, 0.177476f, 0.177570f, 0.177665f, + 0.177759f, 0.177853f, 0.177948f, 0.178042f, 0.178136f, 0.178231f, 0.178325f, 0.178419f, + 0.178514f, 0.178608f, 0.178702f, 0.178797f, 0.178891f, 0.178985f, 0.179080f, 0.179174f, + 0.179268f, 0.179363f, 0.179457f, 0.179551f, 0.179646f, 0.179740f, 0.179834f, 0.179929f, + 0.180023f, 0.180117f, 0.180212f, 0.180306f, 0.180400f, 0.180494f, 0.180589f, 0.180683f, + 0.180777f, 0.180872f, 0.180966f, 0.181060f, 0.181154f, 0.181249f, 0.181343f, 0.181437f, + 0.181532f, 0.181626f, 0.181720f, 0.181814f, 0.181909f, 0.182003f, 0.182097f, 0.182192f, + 0.182286f, 0.182380f, 0.182474f, 0.182569f, 0.182663f, 0.182757f, 0.182851f, 0.182946f, + 0.183040f, 0.183134f, 0.183228f, 0.183323f, 0.183417f, 0.183511f, 0.183605f, 0.183700f, + 0.183794f, 0.183888f, 0.183982f, 0.184077f, 0.184171f, 0.184265f, 0.184359f, 0.184454f, + 0.184548f, 0.184642f, 0.184736f, 0.184830f, 0.184925f, 0.185019f, 0.185113f, 0.185207f, + 0.185301f, 0.185396f, 0.185490f, 0.185584f, 0.185678f, 0.185773f, 0.185867f, 0.185961f, + 0.186055f, 0.186149f, 0.186244f, 0.186338f, 0.186432f, 0.186526f, 0.186620f, 0.186715f, + 0.186809f, 0.186903f, 0.186997f, 0.187091f, 0.187185f, 0.187280f, 0.187374f, 0.187468f, + 0.187562f, 0.187656f, 0.187750f, 0.187845f, 0.187939f, 0.188033f, 0.188127f, 0.188221f, + 0.188315f, 0.188410f, 0.188504f, 0.188598f, 0.188692f, 0.188786f, 0.188880f, 0.188975f, + 0.189069f, 0.189163f, 0.189257f, 0.189351f, 0.189445f, 0.189539f, 0.189634f, 0.189728f, + 0.189822f, 0.189916f, 0.190010f, 0.190104f, 0.190198f, 0.190292f, 0.190387f, 0.190481f, + 0.190575f, 0.190669f, 0.190763f, 0.190857f, 0.190951f, 0.191045f, 0.191139f, 0.191234f, + 0.191328f, 0.191422f, 0.191516f, 0.191610f, 0.191704f, 0.191798f, 0.191892f, 0.191986f, + 0.192080f, 0.192174f, 0.192269f, 0.192363f, 0.192457f, 0.192551f, 0.192645f, 0.192739f, + 0.192833f, 0.192927f, 0.193021f, 0.193115f, 0.193209f, 0.193303f, 0.193397f, 0.193492f, + 0.193586f, 0.193680f, 0.193774f, 0.193868f, 0.193962f, 0.194056f, 0.194150f, 0.194244f, + 0.194338f, 0.194432f, 0.194526f, 0.194620f, 0.194714f, 0.194808f, 0.194902f, 0.194996f, + 0.195090f, 0.195184f, 0.195278f, 0.195372f, 0.195466f, 0.195560f, 0.195654f, 0.195748f, + 0.195843f, 0.195937f, 0.196031f, 0.196125f, 0.196219f, 0.196313f, 0.196407f, 0.196501f, + 0.196595f, 0.196689f, 0.196783f, 0.196877f, 0.196971f, 0.197065f, 0.197159f, 0.197253f, + 0.197347f, 0.197441f, 0.197535f, 0.197629f, 0.197722f, 0.197816f, 0.197910f, 0.198004f, + 0.198098f, 0.198192f, 0.198286f, 0.198380f, 0.198474f, 0.198568f, 0.198662f, 0.198756f, + 0.198850f, 0.198944f, 0.199038f, 0.199132f, 0.199226f, 0.199320f, 0.199414f, 0.199508f, + 0.199602f, 0.199696f, 0.199790f, 0.199884f, 0.199978f, 0.200071f, 0.200165f, 0.200259f, + 0.200353f, 0.200447f, 0.200541f, 0.200635f, 0.200729f, 0.200823f, 0.200917f, 0.201011f, + 0.201105f, 0.201199f, 0.201292f, 0.201386f, 0.201480f, 0.201574f, 0.201668f, 0.201762f, + 0.201856f, 0.201950f, 0.202044f, 0.202138f, 0.202231f, 0.202325f, 0.202419f, 0.202513f, + 0.202607f, 0.202701f, 0.202795f, 0.202889f, 0.202983f, 0.203076f, 0.203170f, 0.203264f, + 0.203358f, 0.203452f, 0.203546f, 0.203640f, 0.203734f, 0.203827f, 0.203921f, 0.204015f, + 0.204109f, 0.204203f, 0.204297f, 0.204391f, 0.204484f, 0.204578f, 0.204672f, 0.204766f, + 0.204860f, 0.204954f, 0.205047f, 0.205141f, 0.205235f, 0.205329f, 0.205423f, 0.205517f, + 0.205610f, 0.205704f, 0.205798f, 0.205892f, 0.205986f, 0.206080f, 0.206173f, 0.206267f, + 0.206361f, 0.206455f, 0.206549f, 0.206642f, 0.206736f, 0.206830f, 0.206924f, 0.207018f, + 0.207111f, 0.207205f, 0.207299f, 0.207393f, 0.207487f, 0.207580f, 0.207674f, 0.207768f, + 0.207862f, 0.207955f, 0.208049f, 0.208143f, 0.208237f, 0.208331f, 0.208424f, 0.208518f, + 0.208612f, 0.208706f, 0.208799f, 0.208893f, 0.208987f, 0.209081f, 0.209174f, 0.209268f, + 0.209362f, 0.209456f, 0.209549f, 0.209643f, 0.209737f, 0.209831f, 0.209924f, 0.210018f, + 0.210112f, 0.210206f, 0.210299f, 0.210393f, 0.210487f, 0.210580f, 0.210674f, 0.210768f, + 0.210862f, 0.210955f, 0.211049f, 0.211143f, 0.211237f, 0.211330f, 0.211424f, 0.211518f, + 0.211611f, 0.211705f, 0.211799f, 0.211892f, 0.211986f, 0.212080f, 0.212174f, 0.212267f, + 0.212361f, 0.212455f, 0.212548f, 0.212642f, 0.212736f, 0.212829f, 0.212923f, 0.213017f, + 0.213110f, 0.213204f, 0.213298f, 0.213391f, 0.213485f, 0.213579f, 0.213672f, 0.213766f, + 0.213860f, 0.213953f, 0.214047f, 0.214141f, 0.214234f, 0.214328f, 0.214422f, 0.214515f, + 0.214609f, 0.214702f, 0.214796f, 0.214890f, 0.214983f, 0.215077f, 0.215171f, 0.215264f, + 0.215358f, 0.215451f, 0.215545f, 0.215639f, 0.215732f, 0.215826f, 0.215920f, 0.216013f, + 0.216107f, 0.216200f, 0.216294f, 0.216388f, 0.216481f, 0.216575f, 0.216668f, 0.216762f, + 0.216856f, 0.216949f, 0.217043f, 0.217136f, 0.217230f, 0.217324f, 0.217417f, 0.217511f, + 0.217604f, 0.217698f, 0.217791f, 0.217885f, 0.217979f, 0.218072f, 0.218166f, 0.218259f, + 0.218353f, 0.218446f, 0.218540f, 0.218633f, 0.218727f, 0.218821f, 0.218914f, 0.219008f, + 0.219101f, 0.219195f, 0.219288f, 0.219382f, 0.219475f, 0.219569f, 0.219662f, 0.219756f, + 0.219850f, 0.219943f, 0.220037f, 0.220130f, 0.220224f, 0.220317f, 0.220411f, 0.220504f, + 0.220598f, 0.220691f, 0.220785f, 0.220878f, 0.220972f, 0.221065f, 0.221159f, 0.221252f, + 0.221346f, 0.221439f, 0.221533f, 0.221626f, 0.221720f, 0.221813f, 0.221907f, 0.222000f, + 0.222094f, 0.222187f, 0.222281f, 0.222374f, 0.222468f, 0.222561f, 0.222654f, 0.222748f, + 0.222841f, 0.222935f, 0.223028f, 0.223122f, 0.223215f, 0.223309f, 0.223402f, 0.223496f, + 0.223589f, 0.223682f, 0.223776f, 0.223869f, 0.223963f, 0.224056f, 0.224150f, 0.224243f, + 0.224337f, 0.224430f, 0.224523f, 0.224617f, 0.224710f, 0.224804f, 0.224897f, 0.224991f, + 0.225084f, 0.225177f, 0.225271f, 0.225364f, 0.225458f, 0.225551f, 0.225644f, 0.225738f, + 0.225831f, 0.225925f, 0.226018f, 0.226111f, 0.226205f, 0.226298f, 0.226391f, 0.226485f, + 0.226578f, 0.226672f, 0.226765f, 0.226858f, 0.226952f, 0.227045f, 0.227139f, 0.227232f, + 0.227325f, 0.227419f, 0.227512f, 0.227605f, 0.227699f, 0.227792f, 0.227885f, 0.227979f, + 0.228072f, 0.228165f, 0.228259f, 0.228352f, 0.228445f, 0.228539f, 0.228632f, 0.228725f, + 0.228819f, 0.228912f, 0.229005f, 0.229099f, 0.229192f, 0.229285f, 0.229379f, 0.229472f, + 0.229565f, 0.229659f, 0.229752f, 0.229845f, 0.229939f, 0.230032f, 0.230125f, 0.230218f, + 0.230312f, 0.230405f, 0.230498f, 0.230592f, 0.230685f, 0.230778f, 0.230872f, 0.230965f, + 0.231058f, 0.231151f, 0.231245f, 0.231338f, 0.231431f, 0.231524f, 0.231618f, 0.231711f, + 0.231804f, 0.231898f, 0.231991f, 0.232084f, 0.232177f, 0.232271f, 0.232364f, 0.232457f, + 0.232550f, 0.232644f, 0.232737f, 0.232830f, 0.232923f, 0.233017f, 0.233110f, 0.233203f, + 0.233296f, 0.233389f, 0.233483f, 0.233576f, 0.233669f, 0.233762f, 0.233856f, 0.233949f, + 0.234042f, 0.234135f, 0.234228f, 0.234322f, 0.234415f, 0.234508f, 0.234601f, 0.234694f, + 0.234788f, 0.234881f, 0.234974f, 0.235067f, 0.235160f, 0.235254f, 0.235347f, 0.235440f, + 0.235533f, 0.235626f, 0.235719f, 0.235813f, 0.235906f, 0.235999f, 0.236092f, 0.236185f, + 0.236278f, 0.236372f, 0.236465f, 0.236558f, 0.236651f, 0.236744f, 0.236837f, 0.236930f, + 0.237024f, 0.237117f, 0.237210f, 0.237303f, 0.237396f, 0.237489f, 0.237582f, 0.237676f, + 0.237769f, 0.237862f, 0.237955f, 0.238048f, 0.238141f, 0.238234f, 0.238327f, 0.238420f, + 0.238514f, 0.238607f, 0.238700f, 0.238793f, 0.238886f, 0.238979f, 0.239072f, 0.239165f, + 0.239258f, 0.239351f, 0.239445f, 0.239538f, 0.239631f, 0.239724f, 0.239817f, 0.239910f, + 0.240003f, 0.240096f, 0.240189f, 0.240282f, 0.240375f, 0.240468f, 0.240561f, 0.240654f, + 0.240748f, 0.240841f, 0.240934f, 0.241027f, 0.241120f, 0.241213f, 0.241306f, 0.241399f, + 0.241492f, 0.241585f, 0.241678f, 0.241771f, 0.241864f, 0.241957f, 0.242050f, 0.242143f, + 0.242236f, 0.242329f, 0.242422f, 0.242515f, 0.242608f, 0.242701f, 0.242794f, 0.242887f, + 0.242980f, 0.243073f, 0.243166f, 0.243259f, 0.243352f, 0.243445f, 0.243538f, 0.243631f, + 0.243724f, 0.243817f, 0.243910f, 0.244003f, 0.244096f, 0.244189f, 0.244282f, 0.244375f, + 0.244468f, 0.244561f, 0.244654f, 0.244747f, 0.244840f, 0.244933f, 0.245026f, 0.245119f, + 0.245212f, 0.245304f, 0.245397f, 0.245490f, 0.245583f, 0.245676f, 0.245769f, 0.245862f, + 0.245955f, 0.246048f, 0.246141f, 0.246234f, 0.246327f, 0.246420f, 0.246513f, 0.246606f, + 0.246698f, 0.246791f, 0.246884f, 0.246977f, 0.247070f, 0.247163f, 0.247256f, 0.247349f, + 0.247442f, 0.247535f, 0.247627f, 0.247720f, 0.247813f, 0.247906f, 0.247999f, 0.248092f, + 0.248185f, 0.248278f, 0.248370f, 0.248463f, 0.248556f, 0.248649f, 0.248742f, 0.248835f, + 0.248928f, 0.249020f, 0.249113f, 0.249206f, 0.249299f, 0.249392f, 0.249485f, 0.249578f, + 0.249670f, 0.249763f, 0.249856f, 0.249949f, 0.250042f, 0.250135f, 0.250227f, 0.250320f, + 0.250413f, 0.250506f, 0.250599f, 0.250691f, 0.250784f, 0.250877f, 0.250970f, 0.251063f, + 0.251155f, 0.251248f, 0.251341f, 0.251434f, 0.251527f, 0.251619f, 0.251712f, 0.251805f, + 0.251898f, 0.251991f, 0.252083f, 0.252176f, 0.252269f, 0.252362f, 0.252454f, 0.252547f, + 0.252640f, 0.252733f, 0.252826f, 0.252918f, 0.253011f, 0.253104f, 0.253197f, 0.253289f, + 0.253382f, 0.253475f, 0.253568f, 0.253660f, 0.253753f, 0.253846f, 0.253938f, 0.254031f, + 0.254124f, 0.254217f, 0.254309f, 0.254402f, 0.254495f, 0.254588f, 0.254680f, 0.254773f, + 0.254866f, 0.254958f, 0.255051f, 0.255144f, 0.255236f, 0.255329f, 0.255422f, 0.255515f, + 0.255607f, 0.255700f, 0.255793f, 0.255885f, 0.255978f, 0.256071f, 0.256163f, 0.256256f, + 0.256349f, 0.256441f, 0.256534f, 0.256627f, 0.256719f, 0.256812f, 0.256905f, 0.256997f, + 0.257090f, 0.257183f, 0.257275f, 0.257368f, 0.257461f, 0.257553f, 0.257646f, 0.257738f, + 0.257831f, 0.257924f, 0.258016f, 0.258109f, 0.258202f, 0.258294f, 0.258387f, 0.258479f, + 0.258572f, 0.258665f, 0.258757f, 0.258850f, 0.258943f, 0.259035f, 0.259128f, 0.259220f, + 0.259313f, 0.259405f, 0.259498f, 0.259591f, 0.259683f, 0.259776f, 0.259868f, 0.259961f, + 0.260054f, 0.260146f, 0.260239f, 0.260331f, 0.260424f, 0.260516f, 0.260609f, 0.260702f, + 0.260794f, 0.260887f, 0.260979f, 0.261072f, 0.261164f, 0.261257f, 0.261349f, 0.261442f, + 0.261534f, 0.261627f, 0.261720f, 0.261812f, 0.261905f, 0.261997f, 0.262090f, 0.262182f, + 0.262275f, 0.262367f, 0.262460f, 0.262552f, 0.262645f, 0.262737f, 0.262830f, 0.262922f, + 0.263015f, 0.263107f, 0.263200f, 0.263292f, 0.263385f, 0.263477f, 0.263570f, 0.263662f, + 0.263755f, 0.263847f, 0.263940f, 0.264032f, 0.264125f, 0.264217f, 0.264309f, 0.264402f, + 0.264494f, 0.264587f, 0.264679f, 0.264772f, 0.264864f, 0.264957f, 0.265049f, 0.265142f, + 0.265234f, 0.265326f, 0.265419f, 0.265511f, 0.265604f, 0.265696f, 0.265789f, 0.265881f, + 0.265973f, 0.266066f, 0.266158f, 0.266251f, 0.266343f, 0.266436f, 0.266528f, 0.266620f, + 0.266713f, 0.266805f, 0.266898f, 0.266990f, 0.267082f, 0.267175f, 0.267267f, 0.267359f, + 0.267452f, 0.267544f, 0.267637f, 0.267729f, 0.267821f, 0.267914f, 0.268006f, 0.268099f, + 0.268191f, 0.268283f, 0.268376f, 0.268468f, 0.268560f, 0.268653f, 0.268745f, 0.268837f, + 0.268930f, 0.269022f, 0.269114f, 0.269207f, 0.269299f, 0.269391f, 0.269484f, 0.269576f, + 0.269668f, 0.269761f, 0.269853f, 0.269945f, 0.270038f, 0.270130f, 0.270222f, 0.270315f, + 0.270407f, 0.270499f, 0.270591f, 0.270684f, 0.270776f, 0.270868f, 0.270961f, 0.271053f, + 0.271145f, 0.271237f, 0.271330f, 0.271422f, 0.271514f, 0.271607f, 0.271699f, 0.271791f, + 0.271883f, 0.271976f, 0.272068f, 0.272160f, 0.272252f, 0.272345f, 0.272437f, 0.272529f, + 0.272621f, 0.272714f, 0.272806f, 0.272898f, 0.272990f, 0.273083f, 0.273175f, 0.273267f, + 0.273359f, 0.273451f, 0.273544f, 0.273636f, 0.273728f, 0.273820f, 0.273912f, 0.274005f, + 0.274097f, 0.274189f, 0.274281f, 0.274374f, 0.274466f, 0.274558f, 0.274650f, 0.274742f, + 0.274834f, 0.274927f, 0.275019f, 0.275111f, 0.275203f, 0.275295f, 0.275387f, 0.275480f, + 0.275572f, 0.275664f, 0.275756f, 0.275848f, 0.275940f, 0.276033f, 0.276125f, 0.276217f, + 0.276309f, 0.276401f, 0.276493f, 0.276585f, 0.276678f, 0.276770f, 0.276862f, 0.276954f, + 0.277046f, 0.277138f, 0.277230f, 0.277322f, 0.277415f, 0.277507f, 0.277599f, 0.277691f, + 0.277783f, 0.277875f, 0.277967f, 0.278059f, 0.278151f, 0.278243f, 0.278336f, 0.278428f, + 0.278520f, 0.278612f, 0.278704f, 0.278796f, 0.278888f, 0.278980f, 0.279072f, 0.279164f, + 0.279256f, 0.279348f, 0.279440f, 0.279532f, 0.279624f, 0.279717f, 0.279809f, 0.279901f, + 0.279993f, 0.280085f, 0.280177f, 0.280269f, 0.280361f, 0.280453f, 0.280545f, 0.280637f, + 0.280729f, 0.280821f, 0.280913f, 0.281005f, 0.281097f, 0.281189f, 0.281281f, 0.281373f, + 0.281465f, 0.281557f, 0.281649f, 0.281741f, 0.281833f, 0.281925f, 0.282017f, 0.282109f, + 0.282201f, 0.282293f, 0.282385f, 0.282477f, 0.282569f, 0.282661f, 0.282753f, 0.282845f, + 0.282937f, 0.283029f, 0.283120f, 0.283212f, 0.283304f, 0.283396f, 0.283488f, 0.283580f, + 0.283672f, 0.283764f, 0.283856f, 0.283948f, 0.284040f, 0.284132f, 0.284224f, 0.284316f, + 0.284408f, 0.284499f, 0.284591f, 0.284683f, 0.284775f, 0.284867f, 0.284959f, 0.285051f, + 0.285143f, 0.285235f, 0.285327f, 0.285418f, 0.285510f, 0.285602f, 0.285694f, 0.285786f, + 0.285878f, 0.285970f, 0.286062f, 0.286153f, 0.286245f, 0.286337f, 0.286429f, 0.286521f, + 0.286613f, 0.286705f, 0.286796f, 0.286888f, 0.286980f, 0.287072f, 0.287164f, 0.287256f, + 0.287347f, 0.287439f, 0.287531f, 0.287623f, 0.287715f, 0.287807f, 0.287898f, 0.287990f, + 0.288082f, 0.288174f, 0.288266f, 0.288357f, 0.288449f, 0.288541f, 0.288633f, 0.288725f, + 0.288816f, 0.288908f, 0.289000f, 0.289092f, 0.289184f, 0.289275f, 0.289367f, 0.289459f, + 0.289551f, 0.289642f, 0.289734f, 0.289826f, 0.289918f, 0.290009f, 0.290101f, 0.290193f, + 0.290285f, 0.290376f, 0.290468f, 0.290560f, 0.290652f, 0.290743f, 0.290835f, 0.290927f, + 0.291019f, 0.291110f, 0.291202f, 0.291294f, 0.291385f, 0.291477f, 0.291569f, 0.291661f, + 0.291752f, 0.291844f, 0.291936f, 0.292027f, 0.292119f, 0.292211f, 0.292302f, 0.292394f, + 0.292486f, 0.292577f, 0.292669f, 0.292761f, 0.292852f, 0.292944f, 0.293036f, 0.293128f, + 0.293219f, 0.293311f, 0.293402f, 0.293494f, 0.293586f, 0.293677f, 0.293769f, 0.293861f, + 0.293952f, 0.294044f, 0.294136f, 0.294227f, 0.294319f, 0.294410f, 0.294502f, 0.294594f, + 0.294685f, 0.294777f, 0.294869f, 0.294960f, 0.295052f, 0.295143f, 0.295235f, 0.295327f, + 0.295418f, 0.295510f, 0.295601f, 0.295693f, 0.295785f, 0.295876f, 0.295968f, 0.296059f, + 0.296151f, 0.296242f, 0.296334f, 0.296426f, 0.296517f, 0.296609f, 0.296700f, 0.296792f, + 0.296883f, 0.296975f, 0.297066f, 0.297158f, 0.297250f, 0.297341f, 0.297433f, 0.297524f, + 0.297616f, 0.297707f, 0.297799f, 0.297890f, 0.297982f, 0.298073f, 0.298165f, 0.298256f, + 0.298348f, 0.298439f, 0.298531f, 0.298622f, 0.298714f, 0.298805f, 0.298897f, 0.298988f, + 0.299080f, 0.299171f, 0.299263f, 0.299354f, 0.299446f, 0.299537f, 0.299629f, 0.299720f, + 0.299812f, 0.299903f, 0.299995f, 0.300086f, 0.300177f, 0.300269f, 0.300360f, 0.300452f, + 0.300543f, 0.300635f, 0.300726f, 0.300818f, 0.300909f, 0.301000f, 0.301092f, 0.301183f, + 0.301275f, 0.301366f, 0.301458f, 0.301549f, 0.301640f, 0.301732f, 0.301823f, 0.301915f, + 0.302006f, 0.302097f, 0.302189f, 0.302280f, 0.302372f, 0.302463f, 0.302554f, 0.302646f, + 0.302737f, 0.302828f, 0.302920f, 0.303011f, 0.303103f, 0.303194f, 0.303285f, 0.303377f, + 0.303468f, 0.303559f, 0.303651f, 0.303742f, 0.303833f, 0.303925f, 0.304016f, 0.304107f, + 0.304199f, 0.304290f, 0.304381f, 0.304473f, 0.304564f, 0.304655f, 0.304747f, 0.304838f, + 0.304929f, 0.305021f, 0.305112f, 0.305203f, 0.305294f, 0.305386f, 0.305477f, 0.305568f, + 0.305660f, 0.305751f, 0.305842f, 0.305933f, 0.306025f, 0.306116f, 0.306207f, 0.306299f, + 0.306390f, 0.306481f, 0.306572f, 0.306664f, 0.306755f, 0.306846f, 0.306937f, 0.307029f, + 0.307120f, 0.307211f, 0.307302f, 0.307394f, 0.307485f, 0.307576f, 0.307667f, 0.307758f, + 0.307850f, 0.307941f, 0.308032f, 0.308123f, 0.308214f, 0.308306f, 0.308397f, 0.308488f, + 0.308579f, 0.308670f, 0.308762f, 0.308853f, 0.308944f, 0.309035f, 0.309126f, 0.309218f, + 0.309309f, 0.309400f, 0.309491f, 0.309582f, 0.309673f, 0.309765f, 0.309856f, 0.309947f, + 0.310038f, 0.310129f, 0.310220f, 0.310311f, 0.310403f, 0.310494f, 0.310585f, 0.310676f, + 0.310767f, 0.310858f, 0.310949f, 0.311041f, 0.311132f, 0.311223f, 0.311314f, 0.311405f, + 0.311496f, 0.311587f, 0.311678f, 0.311769f, 0.311860f, 0.311952f, 0.312043f, 0.312134f, + 0.312225f, 0.312316f, 0.312407f, 0.312498f, 0.312589f, 0.312680f, 0.312771f, 0.312862f, + 0.312953f, 0.313044f, 0.313135f, 0.313227f, 0.313318f, 0.313409f, 0.313500f, 0.313591f, + 0.313682f, 0.313773f, 0.313864f, 0.313955f, 0.314046f, 0.314137f, 0.314228f, 0.314319f, + 0.314410f, 0.314501f, 0.314592f, 0.314683f, 0.314774f, 0.314865f, 0.314956f, 0.315047f, + 0.315138f, 0.315229f, 0.315320f, 0.315411f, 0.315502f, 0.315593f, 0.315684f, 0.315775f, + 0.315866f, 0.315957f, 0.316048f, 0.316139f, 0.316230f, 0.316321f, 0.316411f, 0.316502f, + 0.316593f, 0.316684f, 0.316775f, 0.316866f, 0.316957f, 0.317048f, 0.317139f, 0.317230f, + 0.317321f, 0.317412f, 0.317503f, 0.317594f, 0.317684f, 0.317775f, 0.317866f, 0.317957f, + 0.318048f, 0.318139f, 0.318230f, 0.318321f, 0.318412f, 0.318503f, 0.318593f, 0.318684f, + 0.318775f, 0.318866f, 0.318957f, 0.319048f, 0.319139f, 0.319229f, 0.319320f, 0.319411f, + 0.319502f, 0.319593f, 0.319684f, 0.319775f, 0.319865f, 0.319956f, 0.320047f, 0.320138f, + 0.320229f, 0.320320f, 0.320410f, 0.320501f, 0.320592f, 0.320683f, 0.320774f, 0.320864f, + 0.320955f, 0.321046f, 0.321137f, 0.321228f, 0.321318f, 0.321409f, 0.321500f, 0.321591f, + 0.321682f, 0.321772f, 0.321863f, 0.321954f, 0.322045f, 0.322135f, 0.322226f, 0.322317f, + 0.322408f, 0.322498f, 0.322589f, 0.322680f, 0.322771f, 0.322861f, 0.322952f, 0.323043f, + 0.323134f, 0.323224f, 0.323315f, 0.323406f, 0.323497f, 0.323587f, 0.323678f, 0.323769f, + 0.323859f, 0.323950f, 0.324041f, 0.324131f, 0.324222f, 0.324313f, 0.324404f, 0.324494f, + 0.324585f, 0.324676f, 0.324766f, 0.324857f, 0.324948f, 0.325038f, 0.325129f, 0.325220f, + 0.325310f, 0.325401f, 0.325492f, 0.325582f, 0.325673f, 0.325764f, 0.325854f, 0.325945f, + 0.326035f, 0.326126f, 0.326217f, 0.326307f, 0.326398f, 0.326489f, 0.326579f, 0.326670f, + 0.326760f, 0.326851f, 0.326942f, 0.327032f, 0.327123f, 0.327213f, 0.327304f, 0.327395f, + 0.327485f, 0.327576f, 0.327666f, 0.327757f, 0.327848f, 0.327938f, 0.328029f, 0.328119f, + 0.328210f, 0.328300f, 0.328391f, 0.328482f, 0.328572f, 0.328663f, 0.328753f, 0.328844f, + 0.328934f, 0.329025f, 0.329115f, 0.329206f, 0.329296f, 0.329387f, 0.329477f, 0.329568f, + 0.329658f, 0.329749f, 0.329839f, 0.329930f, 0.330020f, 0.330111f, 0.330202f, 0.330292f, + 0.330382f, 0.330473f, 0.330563f, 0.330654f, 0.330744f, 0.330835f, 0.330925f, 0.331016f, + 0.331106f, 0.331197f, 0.331287f, 0.331378f, 0.331468f, 0.331559f, 0.331649f, 0.331739f, + 0.331830f, 0.331920f, 0.332011f, 0.332101f, 0.332192f, 0.332282f, 0.332373f, 0.332463f, + 0.332553f, 0.332644f, 0.332734f, 0.332825f, 0.332915f, 0.333005f, 0.333096f, 0.333186f, + 0.333277f, 0.333367f, 0.333457f, 0.333548f, 0.333638f, 0.333729f, 0.333819f, 0.333909f, + 0.334000f, 0.334090f, 0.334180f, 0.334271f, 0.334361f, 0.334451f, 0.334542f, 0.334632f, + 0.334722f, 0.334813f, 0.334903f, 0.334994f, 0.335084f, 0.335174f, 0.335265f, 0.335355f, + 0.335445f, 0.335535f, 0.335626f, 0.335716f, 0.335806f, 0.335897f, 0.335987f, 0.336077f, + 0.336168f, 0.336258f, 0.336348f, 0.336438f, 0.336529f, 0.336619f, 0.336709f, 0.336800f, + 0.336890f, 0.336980f, 0.337070f, 0.337161f, 0.337251f, 0.337341f, 0.337431f, 0.337522f, + 0.337612f, 0.337702f, 0.337792f, 0.337883f, 0.337973f, 0.338063f, 0.338153f, 0.338244f, + 0.338334f, 0.338424f, 0.338514f, 0.338604f, 0.338695f, 0.338785f, 0.338875f, 0.338965f, + 0.339055f, 0.339146f, 0.339236f, 0.339326f, 0.339416f, 0.339506f, 0.339597f, 0.339687f, + 0.339777f, 0.339867f, 0.339957f, 0.340047f, 0.340138f, 0.340228f, 0.340318f, 0.340408f, + 0.340498f, 0.340588f, 0.340678f, 0.340769f, 0.340859f, 0.340949f, 0.341039f, 0.341129f, + 0.341219f, 0.341309f, 0.341399f, 0.341490f, 0.341580f, 0.341670f, 0.341760f, 0.341850f, + 0.341940f, 0.342030f, 0.342120f, 0.342210f, 0.342300f, 0.342391f, 0.342481f, 0.342571f, + 0.342661f, 0.342751f, 0.342841f, 0.342931f, 0.343021f, 0.343111f, 0.343201f, 0.343291f, + 0.343381f, 0.343471f, 0.343561f, 0.343651f, 0.343741f, 0.343831f, 0.343921f, 0.344011f, + 0.344101f, 0.344191f, 0.344281f, 0.344371f, 0.344461f, 0.344551f, 0.344641f, 0.344731f, + 0.344821f, 0.344911f, 0.345001f, 0.345091f, 0.345181f, 0.345271f, 0.345361f, 0.345451f, + 0.345541f, 0.345631f, 0.345721f, 0.345811f, 0.345901f, 0.345991f, 0.346081f, 0.346171f, + 0.346261f, 0.346351f, 0.346441f, 0.346531f, 0.346621f, 0.346711f, 0.346801f, 0.346890f, + 0.346980f, 0.347070f, 0.347160f, 0.347250f, 0.347340f, 0.347430f, 0.347520f, 0.347610f, + 0.347700f, 0.347790f, 0.347879f, 0.347969f, 0.348059f, 0.348149f, 0.348239f, 0.348329f, + 0.348419f, 0.348509f, 0.348598f, 0.348688f, 0.348778f, 0.348868f, 0.348958f, 0.349048f, + 0.349138f, 0.349227f, 0.349317f, 0.349407f, 0.349497f, 0.349587f, 0.349676f, 0.349766f, + 0.349856f, 0.349946f, 0.350036f, 0.350126f, 0.350215f, 0.350305f, 0.350395f, 0.350485f, + 0.350575f, 0.350664f, 0.350754f, 0.350844f, 0.350934f, 0.351023f, 0.351113f, 0.351203f, + 0.351293f, 0.351383f, 0.351472f, 0.351562f, 0.351652f, 0.351742f, 0.351831f, 0.351921f, + 0.352011f, 0.352100f, 0.352190f, 0.352280f, 0.352370f, 0.352459f, 0.352549f, 0.352639f, + 0.352729f, 0.352818f, 0.352908f, 0.352998f, 0.353087f, 0.353177f, 0.353267f, 0.353356f, + 0.353446f, 0.353536f, 0.353626f, 0.353715f, 0.353805f, 0.353895f, 0.353984f, 0.354074f, + 0.354164f, 0.354253f, 0.354343f, 0.354432f, 0.354522f, 0.354612f, 0.354701f, 0.354791f, + 0.354881f, 0.354970f, 0.355060f, 0.355150f, 0.355239f, 0.355329f, 0.355418f, 0.355508f, + 0.355598f, 0.355687f, 0.355777f, 0.355866f, 0.355956f, 0.356046f, 0.356135f, 0.356225f, + 0.356314f, 0.356404f, 0.356494f, 0.356583f, 0.356673f, 0.356762f, 0.356852f, 0.356941f, + 0.357031f, 0.357121f, 0.357210f, 0.357300f, 0.357389f, 0.357479f, 0.357568f, 0.357658f, + 0.357747f, 0.357837f, 0.357926f, 0.358016f, 0.358105f, 0.358195f, 0.358284f, 0.358374f, + 0.358463f, 0.358553f, 0.358642f, 0.358732f, 0.358821f, 0.358911f, 0.359000f, 0.359090f, + 0.359179f, 0.359269f, 0.359358f, 0.359448f, 0.359537f, 0.359627f, 0.359716f, 0.359806f, + 0.359895f, 0.359984f, 0.360074f, 0.360163f, 0.360253f, 0.360342f, 0.360432f, 0.360521f, + 0.360611f, 0.360700f, 0.360789f, 0.360879f, 0.360968f, 0.361058f, 0.361147f, 0.361236f, + 0.361326f, 0.361415f, 0.361505f, 0.361594f, 0.361683f, 0.361773f, 0.361862f, 0.361952f, + 0.362041f, 0.362130f, 0.362220f, 0.362309f, 0.362398f, 0.362488f, 0.362577f, 0.362666f, + 0.362756f, 0.362845f, 0.362934f, 0.363024f, 0.363113f, 0.363202f, 0.363292f, 0.363381f, + 0.363470f, 0.363560f, 0.363649f, 0.363738f, 0.363828f, 0.363917f, 0.364006f, 0.364096f, + 0.364185f, 0.364274f, 0.364363f, 0.364453f, 0.364542f, 0.364631f, 0.364720f, 0.364810f, + 0.364899f, 0.364988f, 0.365078f, 0.365167f, 0.365256f, 0.365345f, 0.365435f, 0.365524f, + 0.365613f, 0.365702f, 0.365791f, 0.365881f, 0.365970f, 0.366059f, 0.366148f, 0.366238f, + 0.366327f, 0.366416f, 0.366505f, 0.366594f, 0.366684f, 0.366773f, 0.366862f, 0.366951f, + 0.367040f, 0.367130f, 0.367219f, 0.367308f, 0.367397f, 0.367486f, 0.367575f, 0.367665f, + 0.367754f, 0.367843f, 0.367932f, 0.368021f, 0.368110f, 0.368199f, 0.368289f, 0.368378f, + 0.368467f, 0.368556f, 0.368645f, 0.368734f, 0.368823f, 0.368912f, 0.369002f, 0.369091f, + 0.369180f, 0.369269f, 0.369358f, 0.369447f, 0.369536f, 0.369625f, 0.369714f, 0.369803f, + 0.369892f, 0.369982f, 0.370071f, 0.370160f, 0.370249f, 0.370338f, 0.370427f, 0.370516f, + 0.370605f, 0.370694f, 0.370783f, 0.370872f, 0.370961f, 0.371050f, 0.371139f, 0.371228f, + 0.371317f, 0.371406f, 0.371495f, 0.371584f, 0.371673f, 0.371762f, 0.371851f, 0.371940f, + 0.372029f, 0.372118f, 0.372207f, 0.372296f, 0.372385f, 0.372474f, 0.372563f, 0.372652f, + 0.372741f, 0.372830f, 0.372919f, 0.373008f, 0.373097f, 0.373186f, 0.373275f, 0.373364f, + 0.373453f, 0.373542f, 0.373631f, 0.373719f, 0.373808f, 0.373897f, 0.373986f, 0.374075f, + 0.374164f, 0.374253f, 0.374342f, 0.374431f, 0.374520f, 0.374609f, 0.374697f, 0.374786f, + 0.374875f, 0.374964f, 0.375053f, 0.375142f, 0.375231f, 0.375320f, 0.375408f, 0.375497f, + 0.375586f, 0.375675f, 0.375764f, 0.375853f, 0.375942f, 0.376030f, 0.376119f, 0.376208f, + 0.376297f, 0.376386f, 0.376475f, 0.376563f, 0.376652f, 0.376741f, 0.376830f, 0.376919f, + 0.377007f, 0.377096f, 0.377185f, 0.377274f, 0.377363f, 0.377451f, 0.377540f, 0.377629f, + 0.377718f, 0.377806f, 0.377895f, 0.377984f, 0.378073f, 0.378162f, 0.378250f, 0.378339f, + 0.378428f, 0.378516f, 0.378605f, 0.378694f, 0.378783f, 0.378871f, 0.378960f, 0.379049f, + 0.379138f, 0.379226f, 0.379315f, 0.379404f, 0.379492f, 0.379581f, 0.379670f, 0.379759f, + 0.379847f, 0.379936f, 0.380025f, 0.380113f, 0.380202f, 0.380291f, 0.380379f, 0.380468f, + 0.380557f, 0.380645f, 0.380734f, 0.380823f, 0.380911f, 0.381000f, 0.381088f, 0.381177f, + 0.381266f, 0.381354f, 0.381443f, 0.381532f, 0.381620f, 0.381709f, 0.381797f, 0.381886f, + 0.381975f, 0.382063f, 0.382152f, 0.382241f, 0.382329f, 0.382418f, 0.382506f, 0.382595f, + 0.382683f, 0.382772f, 0.382861f, 0.382949f, 0.383038f, 0.383126f, 0.383215f, 0.383303f, + 0.383392f, 0.383480f, 0.383569f, 0.383658f, 0.383746f, 0.383835f, 0.383923f, 0.384012f, + 0.384100f, 0.384189f, 0.384277f, 0.384366f, 0.384454f, 0.384543f, 0.384631f, 0.384720f, + 0.384808f, 0.384897f, 0.384985f, 0.385074f, 0.385162f, 0.385251f, 0.385339f, 0.385428f, + 0.385516f, 0.385605f, 0.385693f, 0.385781f, 0.385870f, 0.385958f, 0.386047f, 0.386135f, + 0.386224f, 0.386312f, 0.386400f, 0.386489f, 0.386577f, 0.386666f, 0.386754f, 0.386843f, + 0.386931f, 0.387019f, 0.387108f, 0.387196f, 0.387285f, 0.387373f, 0.387461f, 0.387550f, + 0.387638f, 0.387727f, 0.387815f, 0.387903f, 0.387992f, 0.388080f, 0.388168f, 0.388257f, + 0.388345f, 0.388433f, 0.388522f, 0.388610f, 0.388698f, 0.388787f, 0.388875f, 0.388963f, + 0.389052f, 0.389140f, 0.389228f, 0.389317f, 0.389405f, 0.389493f, 0.389582f, 0.389670f, + 0.389758f, 0.389846f, 0.389935f, 0.390023f, 0.390111f, 0.390200f, 0.390288f, 0.390376f, + 0.390464f, 0.390553f, 0.390641f, 0.390729f, 0.390817f, 0.390906f, 0.390994f, 0.391082f, + 0.391170f, 0.391259f, 0.391347f, 0.391435f, 0.391523f, 0.391612f, 0.391700f, 0.391788f, + 0.391876f, 0.391964f, 0.392053f, 0.392141f, 0.392229f, 0.392317f, 0.392405f, 0.392493f, + 0.392582f, 0.392670f, 0.392758f, 0.392846f, 0.392934f, 0.393023f, 0.393111f, 0.393199f, + 0.393287f, 0.393375f, 0.393463f, 0.393551f, 0.393640f, 0.393728f, 0.393816f, 0.393904f, + 0.393992f, 0.394080f, 0.394168f, 0.394256f, 0.394344f, 0.394433f, 0.394521f, 0.394609f, + 0.394697f, 0.394785f, 0.394873f, 0.394961f, 0.395049f, 0.395137f, 0.395225f, 0.395313f, + 0.395401f, 0.395490f, 0.395578f, 0.395666f, 0.395754f, 0.395842f, 0.395930f, 0.396018f, + 0.396106f, 0.396194f, 0.396282f, 0.396370f, 0.396458f, 0.396546f, 0.396634f, 0.396722f, + 0.396810f, 0.396898f, 0.396986f, 0.397074f, 0.397162f, 0.397250f, 0.397338f, 0.397426f, + 0.397514f, 0.397602f, 0.397690f, 0.397778f, 0.397866f, 0.397954f, 0.398042f, 0.398130f, + 0.398218f, 0.398306f, 0.398393f, 0.398481f, 0.398569f, 0.398657f, 0.398745f, 0.398833f, + 0.398921f, 0.399009f, 0.399097f, 0.399185f, 0.399273f, 0.399361f, 0.399448f, 0.399536f, + 0.399624f, 0.399712f, 0.399800f, 0.399888f, 0.399976f, 0.400064f, 0.400151f, 0.400239f, + 0.400327f, 0.400415f, 0.400503f, 0.400591f, 0.400679f, 0.400766f, 0.400854f, 0.400942f, + 0.401030f, 0.401118f, 0.401206f, 0.401293f, 0.401381f, 0.401469f, 0.401557f, 0.401645f, + 0.401732f, 0.401820f, 0.401908f, 0.401996f, 0.402084f, 0.402171f, 0.402259f, 0.402347f, + 0.402435f, 0.402522f, 0.402610f, 0.402698f, 0.402786f, 0.402873f, 0.402961f, 0.403049f, + 0.403137f, 0.403224f, 0.403312f, 0.403400f, 0.403488f, 0.403575f, 0.403663f, 0.403751f, + 0.403838f, 0.403926f, 0.404014f, 0.404102f, 0.404189f, 0.404277f, 0.404365f, 0.404452f, + 0.404540f, 0.404628f, 0.404715f, 0.404803f, 0.404891f, 0.404978f, 0.405066f, 0.405154f, + 0.405241f, 0.405329f, 0.405417f, 0.405504f, 0.405592f, 0.405680f, 0.405767f, 0.405855f, + 0.405942f, 0.406030f, 0.406118f, 0.406205f, 0.406293f, 0.406380f, 0.406468f, 0.406556f, + 0.406643f, 0.406731f, 0.406818f, 0.406906f, 0.406994f, 0.407081f, 0.407169f, 0.407256f, + 0.407344f, 0.407431f, 0.407519f, 0.407606f, 0.407694f, 0.407782f, 0.407869f, 0.407957f, + 0.408044f, 0.408132f, 0.408219f, 0.408307f, 0.408394f, 0.408482f, 0.408569f, 0.408657f, + 0.408744f, 0.408832f, 0.408919f, 0.409007f, 0.409094f, 0.409182f, 0.409269f, 0.409357f, + 0.409444f, 0.409532f, 0.409619f, 0.409707f, 0.409794f, 0.409881f, 0.409969f, 0.410056f, + 0.410144f, 0.410231f, 0.410319f, 0.410406f, 0.410493f, 0.410581f, 0.410668f, 0.410756f, + 0.410843f, 0.410931f, 0.411018f, 0.411105f, 0.411193f, 0.411280f, 0.411368f, 0.411455f, + 0.411542f, 0.411630f, 0.411717f, 0.411804f, 0.411892f, 0.411979f, 0.412067f, 0.412154f, + 0.412241f, 0.412329f, 0.412416f, 0.412503f, 0.412591f, 0.412678f, 0.412765f, 0.412853f, + 0.412940f, 0.413027f, 0.413115f, 0.413202f, 0.413289f, 0.413376f, 0.413464f, 0.413551f, + 0.413638f, 0.413726f, 0.413813f, 0.413900f, 0.413987f, 0.414075f, 0.414162f, 0.414249f, + 0.414337f, 0.414424f, 0.414511f, 0.414598f, 0.414685f, 0.414773f, 0.414860f, 0.414947f, + 0.415034f, 0.415122f, 0.415209f, 0.415296f, 0.415383f, 0.415471f, 0.415558f, 0.415645f, + 0.415732f, 0.415819f, 0.415906f, 0.415994f, 0.416081f, 0.416168f, 0.416255f, 0.416342f, + 0.416430f, 0.416517f, 0.416604f, 0.416691f, 0.416778f, 0.416865f, 0.416952f, 0.417040f, + 0.417127f, 0.417214f, 0.417301f, 0.417388f, 0.417475f, 0.417562f, 0.417650f, 0.417737f, + 0.417824f, 0.417911f, 0.417998f, 0.418085f, 0.418172f, 0.418259f, 0.418346f, 0.418433f, + 0.418520f, 0.418608f, 0.418695f, 0.418782f, 0.418869f, 0.418956f, 0.419043f, 0.419130f, + 0.419217f, 0.419304f, 0.419391f, 0.419478f, 0.419565f, 0.419652f, 0.419739f, 0.419826f, + 0.419913f, 0.420000f, 0.420087f, 0.420174f, 0.420261f, 0.420348f, 0.420435f, 0.420522f, + 0.420609f, 0.420696f, 0.420783f, 0.420870f, 0.420957f, 0.421044f, 0.421131f, 0.421218f, + 0.421305f, 0.421392f, 0.421479f, 0.421566f, 0.421653f, 0.421739f, 0.421826f, 0.421913f, + 0.422000f, 0.422087f, 0.422174f, 0.422261f, 0.422348f, 0.422435f, 0.422522f, 0.422609f, + 0.422695f, 0.422782f, 0.422869f, 0.422956f, 0.423043f, 0.423130f, 0.423217f, 0.423304f, + 0.423390f, 0.423477f, 0.423564f, 0.423651f, 0.423738f, 0.423825f, 0.423912f, 0.423998f, + 0.424085f, 0.424172f, 0.424259f, 0.424346f, 0.424432f, 0.424519f, 0.424606f, 0.424693f, + 0.424780f, 0.424866f, 0.424953f, 0.425040f, 0.425127f, 0.425214f, 0.425300f, 0.425387f, + 0.425474f, 0.425561f, 0.425647f, 0.425734f, 0.425821f, 0.425908f, 0.425994f, 0.426081f, + 0.426168f, 0.426255f, 0.426341f, 0.426428f, 0.426515f, 0.426601f, 0.426688f, 0.426775f, + 0.426862f, 0.426948f, 0.427035f, 0.427122f, 0.427208f, 0.427295f, 0.427382f, 0.427468f, + 0.427555f, 0.427642f, 0.427728f, 0.427815f, 0.427902f, 0.427988f, 0.428075f, 0.428162f, + 0.428248f, 0.428335f, 0.428422f, 0.428508f, 0.428595f, 0.428681f, 0.428768f, 0.428855f, + 0.428941f, 0.429028f, 0.429114f, 0.429201f, 0.429288f, 0.429374f, 0.429461f, 0.429547f, + 0.429634f, 0.429721f, 0.429807f, 0.429894f, 0.429980f, 0.430067f, 0.430153f, 0.430240f, + 0.430326f, 0.430413f, 0.430500f, 0.430586f, 0.430673f, 0.430759f, 0.430846f, 0.430932f, + 0.431019f, 0.431105f, 0.431192f, 0.431278f, 0.431365f, 0.431451f, 0.431538f, 0.431624f, + 0.431711f, 0.431797f, 0.431884f, 0.431970f, 0.432057f, 0.432143f, 0.432229f, 0.432316f, + 0.432402f, 0.432489f, 0.432575f, 0.432662f, 0.432748f, 0.432835f, 0.432921f, 0.433007f, + 0.433094f, 0.433180f, 0.433267f, 0.433353f, 0.433439f, 0.433526f, 0.433612f, 0.433699f, + 0.433785f, 0.433871f, 0.433958f, 0.434044f, 0.434131f, 0.434217f, 0.434303f, 0.434390f, + 0.434476f, 0.434562f, 0.434649f, 0.434735f, 0.434821f, 0.434908f, 0.434994f, 0.435080f, + 0.435167f, 0.435253f, 0.435339f, 0.435426f, 0.435512f, 0.435598f, 0.435685f, 0.435771f, + 0.435857f, 0.435943f, 0.436030f, 0.436116f, 0.436202f, 0.436288f, 0.436375f, 0.436461f, + 0.436547f, 0.436633f, 0.436720f, 0.436806f, 0.436892f, 0.436978f, 0.437065f, 0.437151f, + 0.437237f, 0.437323f, 0.437410f, 0.437496f, 0.437582f, 0.437668f, 0.437754f, 0.437841f, + 0.437927f, 0.438013f, 0.438099f, 0.438185f, 0.438272f, 0.438358f, 0.438444f, 0.438530f, + 0.438616f, 0.438702f, 0.438789f, 0.438875f, 0.438961f, 0.439047f, 0.439133f, 0.439219f, + 0.439305f, 0.439392f, 0.439478f, 0.439564f, 0.439650f, 0.439736f, 0.439822f, 0.439908f, + 0.439994f, 0.440080f, 0.440166f, 0.440253f, 0.440339f, 0.440425f, 0.440511f, 0.440597f, + 0.440683f, 0.440769f, 0.440855f, 0.440941f, 0.441027f, 0.441113f, 0.441199f, 0.441285f, + 0.441371f, 0.441457f, 0.441543f, 0.441629f, 0.441715f, 0.441801f, 0.441887f, 0.441973f, + 0.442059f, 0.442145f, 0.442231f, 0.442317f, 0.442403f, 0.442489f, 0.442575f, 0.442661f, + 0.442747f, 0.442833f, 0.442919f, 0.443005f, 0.443091f, 0.443177f, 0.443263f, 0.443349f, + 0.443435f, 0.443521f, 0.443607f, 0.443693f, 0.443779f, 0.443864f, 0.443950f, 0.444036f, + 0.444122f, 0.444208f, 0.444294f, 0.444380f, 0.444466f, 0.444552f, 0.444637f, 0.444723f, + 0.444809f, 0.444895f, 0.444981f, 0.445067f, 0.445153f, 0.445239f, 0.445324f, 0.445410f, + 0.445496f, 0.445582f, 0.445668f, 0.445754f, 0.445839f, 0.445925f, 0.446011f, 0.446097f, + 0.446183f, 0.446268f, 0.446354f, 0.446440f, 0.446526f, 0.446612f, 0.446697f, 0.446783f, + 0.446869f, 0.446955f, 0.447040f, 0.447126f, 0.447212f, 0.447298f, 0.447383f, 0.447469f, + 0.447555f, 0.447641f, 0.447726f, 0.447812f, 0.447898f, 0.447983f, 0.448069f, 0.448155f, + 0.448241f, 0.448326f, 0.448412f, 0.448498f, 0.448583f, 0.448669f, 0.448755f, 0.448840f, + 0.448926f, 0.449012f, 0.449097f, 0.449183f, 0.449269f, 0.449354f, 0.449440f, 0.449526f, + 0.449611f, 0.449697f, 0.449783f, 0.449868f, 0.449954f, 0.450039f, 0.450125f, 0.450211f, + 0.450296f, 0.450382f, 0.450467f, 0.450553f, 0.450639f, 0.450724f, 0.450810f, 0.450895f, + 0.450981f, 0.451067f, 0.451152f, 0.451238f, 0.451323f, 0.451409f, 0.451494f, 0.451580f, + 0.451665f, 0.451751f, 0.451836f, 0.451922f, 0.452008f, 0.452093f, 0.452179f, 0.452264f, + 0.452350f, 0.452435f, 0.452521f, 0.452606f, 0.452692f, 0.452777f, 0.452863f, 0.452948f, + 0.453033f, 0.453119f, 0.453204f, 0.453290f, 0.453375f, 0.453461f, 0.453546f, 0.453632f, + 0.453717f, 0.453803f, 0.453888f, 0.453973f, 0.454059f, 0.454144f, 0.454230f, 0.454315f, + 0.454400f, 0.454486f, 0.454571f, 0.454657f, 0.454742f, 0.454827f, 0.454913f, 0.454998f, + 0.455084f, 0.455169f, 0.455254f, 0.455340f, 0.455425f, 0.455510f, 0.455596f, 0.455681f, + 0.455766f, 0.455852f, 0.455937f, 0.456022f, 0.456108f, 0.456193f, 0.456278f, 0.456364f, + 0.456449f, 0.456534f, 0.456620f, 0.456705f, 0.456790f, 0.456875f, 0.456961f, 0.457046f, + 0.457131f, 0.457217f, 0.457302f, 0.457387f, 0.457472f, 0.457558f, 0.457643f, 0.457728f, + 0.457813f, 0.457899f, 0.457984f, 0.458069f, 0.458154f, 0.458239f, 0.458325f, 0.458410f, + 0.458495f, 0.458580f, 0.458665f, 0.458751f, 0.458836f, 0.458921f, 0.459006f, 0.459091f, + 0.459177f, 0.459262f, 0.459347f, 0.459432f, 0.459517f, 0.459602f, 0.459687f, 0.459773f, + 0.459858f, 0.459943f, 0.460028f, 0.460113f, 0.460198f, 0.460283f, 0.460369f, 0.460454f, + 0.460539f, 0.460624f, 0.460709f, 0.460794f, 0.460879f, 0.460964f, 0.461049f, 0.461134f, + 0.461219f, 0.461304f, 0.461390f, 0.461475f, 0.461560f, 0.461645f, 0.461730f, 0.461815f, + 0.461900f, 0.461985f, 0.462070f, 0.462155f, 0.462240f, 0.462325f, 0.462410f, 0.462495f, + 0.462580f, 0.462665f, 0.462750f, 0.462835f, 0.462920f, 0.463005f, 0.463090f, 0.463175f, + 0.463260f, 0.463345f, 0.463430f, 0.463515f, 0.463600f, 0.463685f, 0.463769f, 0.463854f, + 0.463939f, 0.464024f, 0.464109f, 0.464194f, 0.464279f, 0.464364f, 0.464449f, 0.464534f, + 0.464619f, 0.464704f, 0.464788f, 0.464873f, 0.464958f, 0.465043f, 0.465128f, 0.465213f, + 0.465298f, 0.465383f, 0.465467f, 0.465552f, 0.465637f, 0.465722f, 0.465807f, 0.465892f, + 0.465977f, 0.466061f, 0.466146f, 0.466231f, 0.466316f, 0.466401f, 0.466485f, 0.466570f, + 0.466655f, 0.466740f, 0.466825f, 0.466909f, 0.466994f, 0.467079f, 0.467164f, 0.467248f, + 0.467333f, 0.467418f, 0.467503f, 0.467587f, 0.467672f, 0.467757f, 0.467842f, 0.467926f, + 0.468011f, 0.468096f, 0.468181f, 0.468265f, 0.468350f, 0.468435f, 0.468519f, 0.468604f, + 0.468689f, 0.468774f, 0.468858f, 0.468943f, 0.469028f, 0.469112f, 0.469197f, 0.469282f, + 0.469366f, 0.469451f, 0.469536f, 0.469620f, 0.469705f, 0.469789f, 0.469874f, 0.469959f, + 0.470043f, 0.470128f, 0.470213f, 0.470297f, 0.470382f, 0.470466f, 0.470551f, 0.470636f, + 0.470720f, 0.470805f, 0.470889f, 0.470974f, 0.471058f, 0.471143f, 0.471228f, 0.471312f, + 0.471397f, 0.471481f, 0.471566f, 0.471650f, 0.471735f, 0.471819f, 0.471904f, 0.471988f, + 0.472073f, 0.472158f, 0.472242f, 0.472327f, 0.472411f, 0.472496f, 0.472580f, 0.472665f, + 0.472749f, 0.472834f, 0.472918f, 0.473002f, 0.473087f, 0.473171f, 0.473256f, 0.473340f, + 0.473425f, 0.473509f, 0.473594f, 0.473678f, 0.473763f, 0.473847f, 0.473931f, 0.474016f, + 0.474100f, 0.474185f, 0.474269f, 0.474353f, 0.474438f, 0.474522f, 0.474607f, 0.474691f, + 0.474775f, 0.474860f, 0.474944f, 0.475029f, 0.475113f, 0.475197f, 0.475282f, 0.475366f, + 0.475450f, 0.475535f, 0.475619f, 0.475703f, 0.475788f, 0.475872f, 0.475956f, 0.476041f, + 0.476125f, 0.476209f, 0.476294f, 0.476378f, 0.476462f, 0.476546f, 0.476631f, 0.476715f, + 0.476799f, 0.476884f, 0.476968f, 0.477052f, 0.477136f, 0.477221f, 0.477305f, 0.477389f, + 0.477473f, 0.477558f, 0.477642f, 0.477726f, 0.477810f, 0.477894f, 0.477979f, 0.478063f, + 0.478147f, 0.478231f, 0.478315f, 0.478400f, 0.478484f, 0.478568f, 0.478652f, 0.478736f, + 0.478821f, 0.478905f, 0.478989f, 0.479073f, 0.479157f, 0.479241f, 0.479325f, 0.479410f, + 0.479494f, 0.479578f, 0.479662f, 0.479746f, 0.479830f, 0.479914f, 0.479998f, 0.480083f, + 0.480167f, 0.480251f, 0.480335f, 0.480419f, 0.480503f, 0.480587f, 0.480671f, 0.480755f, + 0.480839f, 0.480923f, 0.481007f, 0.481091f, 0.481176f, 0.481260f, 0.481344f, 0.481428f, + 0.481512f, 0.481596f, 0.481680f, 0.481764f, 0.481848f, 0.481932f, 0.482016f, 0.482100f, + 0.482184f, 0.482268f, 0.482352f, 0.482436f, 0.482520f, 0.482604f, 0.482688f, 0.482772f, + 0.482856f, 0.482940f, 0.483023f, 0.483107f, 0.483191f, 0.483275f, 0.483359f, 0.483443f, + 0.483527f, 0.483611f, 0.483695f, 0.483779f, 0.483863f, 0.483947f, 0.484031f, 0.484114f, + 0.484198f, 0.484282f, 0.484366f, 0.484450f, 0.484534f, 0.484618f, 0.484702f, 0.484785f, + 0.484869f, 0.484953f, 0.485037f, 0.485121f, 0.485205f, 0.485288f, 0.485372f, 0.485456f, + 0.485540f, 0.485624f, 0.485708f, 0.485791f, 0.485875f, 0.485959f, 0.486043f, 0.486126f, + 0.486210f, 0.486294f, 0.486378f, 0.486462f, 0.486545f, 0.486629f, 0.486713f, 0.486797f, + 0.486880f, 0.486964f, 0.487048f, 0.487132f, 0.487215f, 0.487299f, 0.487383f, 0.487466f, + 0.487550f, 0.487634f, 0.487718f, 0.487801f, 0.487885f, 0.487969f, 0.488052f, 0.488136f, + 0.488220f, 0.488303f, 0.488387f, 0.488471f, 0.488554f, 0.488638f, 0.488722f, 0.488805f, + 0.488889f, 0.488973f, 0.489056f, 0.489140f, 0.489223f, 0.489307f, 0.489391f, 0.489474f, + 0.489558f, 0.489641f, 0.489725f, 0.489809f, 0.489892f, 0.489976f, 0.490059f, 0.490143f, + 0.490226f, 0.490310f, 0.490394f, 0.490477f, 0.490561f, 0.490644f, 0.490728f, 0.490811f, + 0.490895f, 0.490978f, 0.491062f, 0.491145f, 0.491229f, 0.491312f, 0.491396f, 0.491479f, + 0.491563f, 0.491646f, 0.491730f, 0.491813f, 0.491897f, 0.491980f, 0.492064f, 0.492147f, + 0.492231f, 0.492314f, 0.492398f, 0.492481f, 0.492564f, 0.492648f, 0.492731f, 0.492815f, + 0.492898f, 0.492982f, 0.493065f, 0.493148f, 0.493232f, 0.493315f, 0.493399f, 0.493482f, + 0.493565f, 0.493649f, 0.493732f, 0.493816f, 0.493899f, 0.493982f, 0.494066f, 0.494149f, + 0.494232f, 0.494316f, 0.494399f, 0.494482f, 0.494566f, 0.494649f, 0.494732f, 0.494816f, + 0.494899f, 0.494982f, 0.495066f, 0.495149f, 0.495232f, 0.495315f, 0.495399f, 0.495482f, + 0.495565f, 0.495649f, 0.495732f, 0.495815f, 0.495898f, 0.495982f, 0.496065f, 0.496148f, + 0.496231f, 0.496315f, 0.496398f, 0.496481f, 0.496564f, 0.496647f, 0.496731f, 0.496814f, + 0.496897f, 0.496980f, 0.497063f, 0.497147f, 0.497230f, 0.497313f, 0.497396f, 0.497479f, + 0.497562f, 0.497646f, 0.497729f, 0.497812f, 0.497895f, 0.497978f, 0.498061f, 0.498145f, + 0.498228f, 0.498311f, 0.498394f, 0.498477f, 0.498560f, 0.498643f, 0.498726f, 0.498809f, + 0.498893f, 0.498976f, 0.499059f, 0.499142f, 0.499225f, 0.499308f, 0.499391f, 0.499474f, + 0.499557f, 0.499640f, 0.499723f, 0.499806f, 0.499889f, 0.499972f, 0.500055f, 0.500138f, + 0.500221f, 0.500304f, 0.500387f, 0.500470f, 0.500553f, 0.500636f, 0.500719f, 0.500802f, + 0.500885f, 0.500968f, 0.501051f, 0.501134f, 0.501217f, 0.501300f, 0.501383f, 0.501466f, + 0.501549f, 0.501632f, 0.501715f, 0.501798f, 0.501881f, 0.501964f, 0.502047f, 0.502130f, + 0.502212f, 0.502295f, 0.502378f, 0.502461f, 0.502544f, 0.502627f, 0.502710f, 0.502793f, + 0.502876f, 0.502958f, 0.503041f, 0.503124f, 0.503207f, 0.503290f, 0.503373f, 0.503456f, + 0.503538f, 0.503621f, 0.503704f, 0.503787f, 0.503870f, 0.503953f, 0.504035f, 0.504118f, + 0.504201f, 0.504284f, 0.504366f, 0.504449f, 0.504532f, 0.504615f, 0.504698f, 0.504780f, + 0.504863f, 0.504946f, 0.505029f, 0.505111f, 0.505194f, 0.505277f, 0.505360f, 0.505442f, + 0.505525f, 0.505608f, 0.505690f, 0.505773f, 0.505856f, 0.505939f, 0.506021f, 0.506104f, + 0.506187f, 0.506269f, 0.506352f, 0.506435f, 0.506517f, 0.506600f, 0.506683f, 0.506765f, + 0.506848f, 0.506931f, 0.507013f, 0.507096f, 0.507179f, 0.507261f, 0.507344f, 0.507426f, + 0.507509f, 0.507592f, 0.507674f, 0.507757f, 0.507839f, 0.507922f, 0.508005f, 0.508087f, + 0.508170f, 0.508252f, 0.508335f, 0.508417f, 0.508500f, 0.508583f, 0.508665f, 0.508748f, + 0.508830f, 0.508913f, 0.508995f, 0.509078f, 0.509160f, 0.509243f, 0.509325f, 0.509408f, + 0.509490f, 0.509573f, 0.509655f, 0.509738f, 0.509820f, 0.509903f, 0.509985f, 0.510068f, + 0.510150f, 0.510233f, 0.510315f, 0.510397f, 0.510480f, 0.510562f, 0.510645f, 0.510727f, + 0.510810f, 0.510892f, 0.510974f, 0.511057f, 0.511139f, 0.511222f, 0.511304f, 0.511386f, + 0.511469f, 0.511551f, 0.511634f, 0.511716f, 0.511798f, 0.511881f, 0.511963f, 0.512045f, + 0.512128f, 0.512210f, 0.512292f, 0.512375f, 0.512457f, 0.512539f, 0.512622f, 0.512704f, + 0.512786f, 0.512869f, 0.512951f, 0.513033f, 0.513116f, 0.513198f, 0.513280f, 0.513362f, + 0.513445f, 0.513527f, 0.513609f, 0.513692f, 0.513774f, 0.513856f, 0.513938f, 0.514021f, + 0.514103f, 0.514185f, 0.514267f, 0.514349f, 0.514432f, 0.514514f, 0.514596f, 0.514678f, + 0.514760f, 0.514843f, 0.514925f, 0.515007f, 0.515089f, 0.515171f, 0.515254f, 0.515336f, + 0.515418f, 0.515500f, 0.515582f, 0.515664f, 0.515746f, 0.515829f, 0.515911f, 0.515993f, + 0.516075f, 0.516157f, 0.516239f, 0.516321f, 0.516403f, 0.516486f, 0.516568f, 0.516650f, + 0.516732f, 0.516814f, 0.516896f, 0.516978f, 0.517060f, 0.517142f, 0.517224f, 0.517306f, + 0.517388f, 0.517470f, 0.517552f, 0.517634f, 0.517716f, 0.517798f, 0.517880f, 0.517963f, + 0.518045f, 0.518126f, 0.518209f, 0.518291f, 0.518372f, 0.518454f, 0.518536f, 0.518618f, + 0.518700f, 0.518782f, 0.518864f, 0.518946f, 0.519028f, 0.519110f, 0.519192f, 0.519274f, + 0.519356f, 0.519438f, 0.519520f, 0.519602f, 0.519684f, 0.519766f, 0.519848f, 0.519929f, + 0.520011f, 0.520093f, 0.520175f, 0.520257f, 0.520339f, 0.520421f, 0.520503f, 0.520584f, + 0.520666f, 0.520748f, 0.520830f, 0.520912f, 0.520994f, 0.521075f, 0.521157f, 0.521239f, + 0.521321f, 0.521403f, 0.521485f, 0.521566f, 0.521648f, 0.521730f, 0.521812f, 0.521894f, + 0.521975f, 0.522057f, 0.522139f, 0.522221f, 0.522302f, 0.522384f, 0.522466f, 0.522548f, + 0.522629f, 0.522711f, 0.522793f, 0.522875f, 0.522956f, 0.523038f, 0.523120f, 0.523201f, + 0.523283f, 0.523365f, 0.523447f, 0.523528f, 0.523610f, 0.523692f, 0.523773f, 0.523855f, + 0.523937f, 0.524018f, 0.524100f, 0.524181f, 0.524263f, 0.524345f, 0.524426f, 0.524508f, + 0.524590f, 0.524671f, 0.524753f, 0.524835f, 0.524916f, 0.524998f, 0.525079f, 0.525161f, + 0.525243f, 0.525324f, 0.525406f, 0.525487f, 0.525569f, 0.525650f, 0.525732f, 0.525813f, + 0.525895f, 0.525977f, 0.526058f, 0.526140f, 0.526221f, 0.526303f, 0.526384f, 0.526466f, + 0.526547f, 0.526629f, 0.526710f, 0.526792f, 0.526873f, 0.526955f, 0.527036f, 0.527118f, + 0.527199f, 0.527281f, 0.527362f, 0.527444f, 0.527525f, 0.527606f, 0.527688f, 0.527769f, + 0.527851f, 0.527932f, 0.528014f, 0.528095f, 0.528176f, 0.528258f, 0.528339f, 0.528421f, + 0.528502f, 0.528583f, 0.528665f, 0.528746f, 0.528828f, 0.528909f, 0.528990f, 0.529072f, + 0.529153f, 0.529234f, 0.529316f, 0.529397f, 0.529478f, 0.529560f, 0.529641f, 0.529722f, + 0.529804f, 0.529885f, 0.529966f, 0.530048f, 0.530129f, 0.530210f, 0.530291f, 0.530373f, + 0.530454f, 0.530535f, 0.530617f, 0.530698f, 0.530779f, 0.530860f, 0.530942f, 0.531023f, + 0.531104f, 0.531185f, 0.531266f, 0.531348f, 0.531429f, 0.531510f, 0.531591f, 0.531673f, + 0.531754f, 0.531835f, 0.531916f, 0.531997f, 0.532078f, 0.532160f, 0.532241f, 0.532322f, + 0.532403f, 0.532484f, 0.532565f, 0.532647f, 0.532728f, 0.532809f, 0.532890f, 0.532971f, + 0.533052f, 0.533133f, 0.533214f, 0.533296f, 0.533377f, 0.533458f, 0.533539f, 0.533620f, + 0.533701f, 0.533782f, 0.533863f, 0.533944f, 0.534025f, 0.534106f, 0.534187f, 0.534268f, + 0.534349f, 0.534431f, 0.534512f, 0.534593f, 0.534674f, 0.534755f, 0.534836f, 0.534917f, + 0.534998f, 0.535079f, 0.535160f, 0.535241f, 0.535322f, 0.535403f, 0.535484f, 0.535564f, + 0.535645f, 0.535726f, 0.535807f, 0.535888f, 0.535969f, 0.536050f, 0.536131f, 0.536212f, + 0.536293f, 0.536374f, 0.536455f, 0.536536f, 0.536617f, 0.536698f, 0.536778f, 0.536859f, + 0.536940f, 0.537021f, 0.537102f, 0.537183f, 0.537264f, 0.537345f, 0.537425f, 0.537506f, + 0.537587f, 0.537668f, 0.537749f, 0.537830f, 0.537910f, 0.537991f, 0.538072f, 0.538153f, + 0.538234f, 0.538314f, 0.538395f, 0.538476f, 0.538557f, 0.538638f, 0.538718f, 0.538799f, + 0.538880f, 0.538961f, 0.539041f, 0.539122f, 0.539203f, 0.539284f, 0.539364f, 0.539445f, + 0.539526f, 0.539607f, 0.539687f, 0.539768f, 0.539849f, 0.539929f, 0.540010f, 0.540091f, + 0.540171f, 0.540252f, 0.540333f, 0.540413f, 0.540494f, 0.540575f, 0.540655f, 0.540736f, + 0.540817f, 0.540897f, 0.540978f, 0.541059f, 0.541139f, 0.541220f, 0.541301f, 0.541381f, + 0.541462f, 0.541542f, 0.541623f, 0.541704f, 0.541784f, 0.541865f, 0.541945f, 0.542026f, + 0.542106f, 0.542187f, 0.542268f, 0.542348f, 0.542429f, 0.542509f, 0.542590f, 0.542670f, + 0.542751f, 0.542831f, 0.542912f, 0.542992f, 0.543073f, 0.543153f, 0.543234f, 0.543314f, + 0.543395f, 0.543475f, 0.543556f, 0.543636f, 0.543717f, 0.543797f, 0.543878f, 0.543958f, + 0.544039f, 0.544119f, 0.544199f, 0.544280f, 0.544360f, 0.544441f, 0.544521f, 0.544602f, + 0.544682f, 0.544762f, 0.544843f, 0.544923f, 0.545003f, 0.545084f, 0.545164f, 0.545245f, + 0.545325f, 0.545405f, 0.545486f, 0.545566f, 0.545646f, 0.545727f, 0.545807f, 0.545887f, + 0.545968f, 0.546048f, 0.546128f, 0.546209f, 0.546289f, 0.546369f, 0.546450f, 0.546530f, + 0.546610f, 0.546690f, 0.546771f, 0.546851f, 0.546931f, 0.547011f, 0.547092f, 0.547172f, + 0.547252f, 0.547333f, 0.547413f, 0.547493f, 0.547573f, 0.547653f, 0.547734f, 0.547814f, + 0.547894f, 0.547974f, 0.548054f, 0.548135f, 0.548215f, 0.548295f, 0.548375f, 0.548455f, + 0.548536f, 0.548616f, 0.548696f, 0.548776f, 0.548856f, 0.548936f, 0.549016f, 0.549097f, + 0.549177f, 0.549257f, 0.549337f, 0.549417f, 0.549497f, 0.549577f, 0.549657f, 0.549737f, + 0.549818f, 0.549898f, 0.549978f, 0.550058f, 0.550138f, 0.550218f, 0.550298f, 0.550378f, + 0.550458f, 0.550538f, 0.550618f, 0.550698f, 0.550778f, 0.550858f, 0.550938f, 0.551018f, + 0.551098f, 0.551178f, 0.551258f, 0.551338f, 0.551418f, 0.551498f, 0.551578f, 0.551658f, + 0.551738f, 0.551818f, 0.551898f, 0.551978f, 0.552058f, 0.552138f, 0.552218f, 0.552298f, + 0.552378f, 0.552457f, 0.552537f, 0.552617f, 0.552697f, 0.552777f, 0.552857f, 0.552937f, + 0.553017f, 0.553097f, 0.553176f, 0.553256f, 0.553336f, 0.553416f, 0.553496f, 0.553576f, + 0.553656f, 0.553735f, 0.553815f, 0.553895f, 0.553975f, 0.554055f, 0.554134f, 0.554214f, + 0.554294f, 0.554374f, 0.554454f, 0.554533f, 0.554613f, 0.554693f, 0.554773f, 0.554853f, + 0.554932f, 0.555012f, 0.555092f, 0.555172f, 0.555251f, 0.555331f, 0.555411f, 0.555490f, + 0.555570f, 0.555650f, 0.555730f, 0.555809f, 0.555889f, 0.555969f, 0.556048f, 0.556128f, + 0.556208f, 0.556287f, 0.556367f, 0.556447f, 0.556526f, 0.556606f, 0.556686f, 0.556765f, + 0.556845f, 0.556925f, 0.557004f, 0.557084f, 0.557164f, 0.557243f, 0.557323f, 0.557402f, + 0.557482f, 0.557562f, 0.557641f, 0.557721f, 0.557800f, 0.557880f, 0.557959f, 0.558039f, + 0.558119f, 0.558198f, 0.558278f, 0.558357f, 0.558437f, 0.558516f, 0.558596f, 0.558675f, + 0.558755f, 0.558834f, 0.558914f, 0.558993f, 0.559073f, 0.559152f, 0.559232f, 0.559311f, + 0.559391f, 0.559470f, 0.559550f, 0.559629f, 0.559709f, 0.559788f, 0.559867f, 0.559947f, + 0.560026f, 0.560106f, 0.560185f, 0.560265f, 0.560344f, 0.560423f, 0.560503f, 0.560582f, + 0.560662f, 0.560741f, 0.560820f, 0.560900f, 0.560979f, 0.561058f, 0.561138f, 0.561217f, + 0.561297f, 0.561376f, 0.561455f, 0.561535f, 0.561614f, 0.561693f, 0.561773f, 0.561852f, + 0.561931f, 0.562010f, 0.562090f, 0.562169f, 0.562248f, 0.562328f, 0.562407f, 0.562486f, + 0.562565f, 0.562645f, 0.562724f, 0.562803f, 0.562882f, 0.562962f, 0.563041f, 0.563120f, + 0.563199f, 0.563279f, 0.563358f, 0.563437f, 0.563516f, 0.563595f, 0.563675f, 0.563754f, + 0.563833f, 0.563912f, 0.563991f, 0.564070f, 0.564150f, 0.564229f, 0.564308f, 0.564387f, + 0.564466f, 0.564545f, 0.564624f, 0.564704f, 0.564783f, 0.564862f, 0.564941f, 0.565020f, + 0.565099f, 0.565178f, 0.565257f, 0.565336f, 0.565416f, 0.565495f, 0.565574f, 0.565653f, + 0.565732f, 0.565811f, 0.565890f, 0.565969f, 0.566048f, 0.566127f, 0.566206f, 0.566285f, + 0.566364f, 0.566443f, 0.566522f, 0.566601f, 0.566680f, 0.566759f, 0.566838f, 0.566917f, + 0.566996f, 0.567075f, 0.567154f, 0.567233f, 0.567312f, 0.567391f, 0.567470f, 0.567549f, + 0.567628f, 0.567707f, 0.567786f, 0.567864f, 0.567943f, 0.568022f, 0.568101f, 0.568180f, + 0.568259f, 0.568338f, 0.568417f, 0.568496f, 0.568574f, 0.568653f, 0.568732f, 0.568811f, + 0.568890f, 0.568969f, 0.569048f, 0.569126f, 0.569205f, 0.569284f, 0.569363f, 0.569442f, + 0.569521f, 0.569599f, 0.569678f, 0.569757f, 0.569836f, 0.569914f, 0.569993f, 0.570072f, + 0.570151f, 0.570230f, 0.570308f, 0.570387f, 0.570466f, 0.570545f, 0.570623f, 0.570702f, + 0.570781f, 0.570859f, 0.570938f, 0.571017f, 0.571096f, 0.571174f, 0.571253f, 0.571332f, + 0.571410f, 0.571489f, 0.571568f, 0.571646f, 0.571725f, 0.571804f, 0.571882f, 0.571961f, + 0.572040f, 0.572118f, 0.572197f, 0.572276f, 0.572354f, 0.572433f, 0.572511f, 0.572590f, + 0.572669f, 0.572747f, 0.572826f, 0.572904f, 0.572983f, 0.573061f, 0.573140f, 0.573219f, + 0.573297f, 0.573376f, 0.573454f, 0.573533f, 0.573611f, 0.573690f, 0.573768f, 0.573847f, + 0.573925f, 0.574004f, 0.574082f, 0.574161f, 0.574239f, 0.574318f, 0.574396f, 0.574475f, + 0.574553f, 0.574632f, 0.574710f, 0.574789f, 0.574867f, 0.574946f, 0.575024f, 0.575103f, + 0.575181f, 0.575259f, 0.575338f, 0.575416f, 0.575495f, 0.575573f, 0.575651f, 0.575730f, + 0.575808f, 0.575887f, 0.575965f, 0.576043f, 0.576122f, 0.576200f, 0.576278f, 0.576357f, + 0.576435f, 0.576513f, 0.576592f, 0.576670f, 0.576748f, 0.576827f, 0.576905f, 0.576983f, + 0.577062f, 0.577140f, 0.577218f, 0.577297f, 0.577375f, 0.577453f, 0.577531f, 0.577610f, + 0.577688f, 0.577766f, 0.577844f, 0.577923f, 0.578001f, 0.578079f, 0.578157f, 0.578236f, + 0.578314f, 0.578392f, 0.578470f, 0.578548f, 0.578627f, 0.578705f, 0.578783f, 0.578861f, + 0.578939f, 0.579018f, 0.579096f, 0.579174f, 0.579252f, 0.579330f, 0.579408f, 0.579486f, + 0.579565f, 0.579643f, 0.579721f, 0.579799f, 0.579877f, 0.579955f, 0.580033f, 0.580111f, + 0.580189f, 0.580267f, 0.580346f, 0.580424f, 0.580502f, 0.580580f, 0.580658f, 0.580736f, + 0.580814f, 0.580892f, 0.580970f, 0.581048f, 0.581126f, 0.581204f, 0.581282f, 0.581360f, + 0.581438f, 0.581516f, 0.581594f, 0.581672f, 0.581750f, 0.581828f, 0.581906f, 0.581984f, + 0.582062f, 0.582140f, 0.582218f, 0.582296f, 0.582374f, 0.582452f, 0.582530f, 0.582608f, + 0.582685f, 0.582763f, 0.582841f, 0.582919f, 0.582997f, 0.583075f, 0.583153f, 0.583231f, + 0.583309f, 0.583387f, 0.583464f, 0.583542f, 0.583620f, 0.583698f, 0.583776f, 0.583854f, + 0.583931f, 0.584009f, 0.584087f, 0.584165f, 0.584243f, 0.584321f, 0.584398f, 0.584476f, + 0.584554f, 0.584632f, 0.584710f, 0.584787f, 0.584865f, 0.584943f, 0.585021f, 0.585098f, + 0.585176f, 0.585254f, 0.585332f, 0.585409f, 0.585487f, 0.585565f, 0.585642f, 0.585720f, + 0.585798f, 0.585876f, 0.585953f, 0.586031f, 0.586109f, 0.586186f, 0.586264f, 0.586342f, + 0.586419f, 0.586497f, 0.586575f, 0.586652f, 0.586730f, 0.586808f, 0.586885f, 0.586963f, + 0.587040f, 0.587118f, 0.587196f, 0.587273f, 0.587351f, 0.587428f, 0.587506f, 0.587584f, + 0.587661f, 0.587739f, 0.587816f, 0.587894f, 0.587971f, 0.588049f, 0.588126f, 0.588204f, + 0.588282f, 0.588359f, 0.588437f, 0.588514f, 0.588592f, 0.588669f, 0.588747f, 0.588824f, + 0.588902f, 0.588979f, 0.589057f, 0.589134f, 0.589212f, 0.589289f, 0.589366f, 0.589444f, + 0.589521f, 0.589599f, 0.589676f, 0.589754f, 0.589831f, 0.589908f, 0.589986f, 0.590063f, + 0.590141f, 0.590218f, 0.590295f, 0.590373f, 0.590450f, 0.590528f, 0.590605f, 0.590682f, + 0.590760f, 0.590837f, 0.590914f, 0.590992f, 0.591069f, 0.591146f, 0.591224f, 0.591301f, + 0.591378f, 0.591456f, 0.591533f, 0.591610f, 0.591688f, 0.591765f, 0.591842f, 0.591919f, + 0.591997f, 0.592074f, 0.592151f, 0.592228f, 0.592306f, 0.592383f, 0.592460f, 0.592537f, + 0.592615f, 0.592692f, 0.592769f, 0.592846f, 0.592924f, 0.593001f, 0.593078f, 0.593155f, + 0.593232f, 0.593309f, 0.593387f, 0.593464f, 0.593541f, 0.593618f, 0.593695f, 0.593772f, + 0.593850f, 0.593927f, 0.594004f, 0.594081f, 0.594158f, 0.594235f, 0.594312f, 0.594389f, + 0.594467f, 0.594544f, 0.594621f, 0.594698f, 0.594775f, 0.594852f, 0.594929f, 0.595006f, + 0.595083f, 0.595160f, 0.595237f, 0.595314f, 0.595391f, 0.595468f, 0.595545f, 0.595622f, + 0.595699f, 0.595776f, 0.595853f, 0.595930f, 0.596007f, 0.596084f, 0.596161f, 0.596238f, + 0.596315f, 0.596392f, 0.596469f, 0.596546f, 0.596623f, 0.596700f, 0.596777f, 0.596854f, + 0.596931f, 0.597008f, 0.597085f, 0.597161f, 0.597238f, 0.597315f, 0.597392f, 0.597469f, + 0.597546f, 0.597623f, 0.597700f, 0.597776f, 0.597853f, 0.597930f, 0.598007f, 0.598084f, + 0.598161f, 0.598238f, 0.598314f, 0.598391f, 0.598468f, 0.598545f, 0.598622f, 0.598698f, + 0.598775f, 0.598852f, 0.598929f, 0.599006f, 0.599082f, 0.599159f, 0.599236f, 0.599313f, + 0.599389f, 0.599466f, 0.599543f, 0.599620f, 0.599696f, 0.599773f, 0.599850f, 0.599926f, + 0.600003f, 0.600080f, 0.600156f, 0.600233f, 0.600310f, 0.600387f, 0.600463f, 0.600540f, + 0.600616f, 0.600693f, 0.600770f, 0.600846f, 0.600923f, 0.601000f, 0.601076f, 0.601153f, + 0.601230f, 0.601306f, 0.601383f, 0.601459f, 0.601536f, 0.601613f, 0.601689f, 0.601766f, + 0.601842f, 0.601919f, 0.601995f, 0.602072f, 0.602148f, 0.602225f, 0.602302f, 0.602378f, + 0.602455f, 0.602531f, 0.602608f, 0.602684f, 0.602761f, 0.602837f, 0.602914f, 0.602990f, + 0.603067f, 0.603143f, 0.603220f, 0.603296f, 0.603372f, 0.603449f, 0.603525f, 0.603602f, + 0.603678f, 0.603755f, 0.603831f, 0.603908f, 0.603984f, 0.604060f, 0.604137f, 0.604213f, + 0.604290f, 0.604366f, 0.604442f, 0.604519f, 0.604595f, 0.604671f, 0.604748f, 0.604824f, + 0.604900f, 0.604977f, 0.605053f, 0.605129f, 0.605206f, 0.605282f, 0.605358f, 0.605435f, + 0.605511f, 0.605587f, 0.605664f, 0.605740f, 0.605816f, 0.605892f, 0.605969f, 0.606045f, + 0.606121f, 0.606198f, 0.606274f, 0.606350f, 0.606426f, 0.606502f, 0.606579f, 0.606655f, + 0.606731f, 0.606807f, 0.606884f, 0.606960f, 0.607036f, 0.607112f, 0.607188f, 0.607264f, + 0.607341f, 0.607417f, 0.607493f, 0.607569f, 0.607645f, 0.607721f, 0.607798f, 0.607874f, + 0.607950f, 0.608026f, 0.608102f, 0.608178f, 0.608254f, 0.608330f, 0.608406f, 0.608482f, + 0.608559f, 0.608635f, 0.608711f, 0.608787f, 0.608863f, 0.608939f, 0.609015f, 0.609091f, + 0.609167f, 0.609243f, 0.609319f, 0.609395f, 0.609471f, 0.609547f, 0.609623f, 0.609699f, + 0.609775f, 0.609851f, 0.609927f, 0.610003f, 0.610079f, 0.610155f, 0.610231f, 0.610307f, + 0.610383f, 0.610459f, 0.610535f, 0.610611f, 0.610687f, 0.610762f, 0.610838f, 0.610914f, + 0.610990f, 0.611066f, 0.611142f, 0.611218f, 0.611294f, 0.611370f, 0.611445f, 0.611521f, + 0.611597f, 0.611673f, 0.611749f, 0.611825f, 0.611901f, 0.611976f, 0.612052f, 0.612128f, + 0.612204f, 0.612280f, 0.612355f, 0.612431f, 0.612507f, 0.612583f, 0.612659f, 0.612734f, + 0.612810f, 0.612886f, 0.612962f, 0.613037f, 0.613113f, 0.613189f, 0.613265f, 0.613340f, + 0.613416f, 0.613492f, 0.613567f, 0.613643f, 0.613719f, 0.613795f, 0.613870f, 0.613946f, + 0.614022f, 0.614097f, 0.614173f, 0.614249f, 0.614324f, 0.614400f, 0.614475f, 0.614551f, + 0.614627f, 0.614702f, 0.614778f, 0.614854f, 0.614929f, 0.615005f, 0.615080f, 0.615156f, + 0.615232f, 0.615307f, 0.615383f, 0.615458f, 0.615534f, 0.615609f, 0.615685f, 0.615761f, + 0.615836f, 0.615912f, 0.615987f, 0.616063f, 0.616138f, 0.616214f, 0.616289f, 0.616365f, + 0.616440f, 0.616516f, 0.616591f, 0.616667f, 0.616742f, 0.616818f, 0.616893f, 0.616968f, + 0.617044f, 0.617119f, 0.617195f, 0.617270f, 0.617346f, 0.617421f, 0.617496f, 0.617572f, + 0.617647f, 0.617723f, 0.617798f, 0.617873f, 0.617949f, 0.618024f, 0.618100f, 0.618175f, + 0.618250f, 0.618326f, 0.618401f, 0.618476f, 0.618552f, 0.618627f, 0.618702f, 0.618778f, + 0.618853f, 0.618928f, 0.619004f, 0.619079f, 0.619154f, 0.619229f, 0.619305f, 0.619380f, + 0.619455f, 0.619531f, 0.619606f, 0.619681f, 0.619756f, 0.619832f, 0.619907f, 0.619982f, + 0.620057f, 0.620132f, 0.620208f, 0.620283f, 0.620358f, 0.620433f, 0.620508f, 0.620584f, + 0.620659f, 0.620734f, 0.620809f, 0.620884f, 0.620959f, 0.621035f, 0.621110f, 0.621185f, + 0.621260f, 0.621335f, 0.621410f, 0.621485f, 0.621560f, 0.621636f, 0.621711f, 0.621786f, + 0.621861f, 0.621936f, 0.622011f, 0.622086f, 0.622161f, 0.622236f, 0.622311f, 0.622386f, + 0.622461f, 0.622536f, 0.622611f, 0.622686f, 0.622761f, 0.622836f, 0.622911f, 0.622986f, + 0.623061f, 0.623136f, 0.623211f, 0.623286f, 0.623361f, 0.623436f, 0.623511f, 0.623586f, + 0.623661f, 0.623736f, 0.623811f, 0.623886f, 0.623961f, 0.624036f, 0.624111f, 0.624186f, + 0.624260f, 0.624335f, 0.624410f, 0.624485f, 0.624560f, 0.624635f, 0.624710f, 0.624785f, + 0.624860f, 0.624934f, 0.625009f, 0.625084f, 0.625159f, 0.625234f, 0.625309f, 0.625383f, + 0.625458f, 0.625533f, 0.625608f, 0.625683f, 0.625757f, 0.625832f, 0.625907f, 0.625982f, + 0.626056f, 0.626131f, 0.626206f, 0.626281f, 0.626355f, 0.626430f, 0.626505f, 0.626580f, + 0.626654f, 0.626729f, 0.626804f, 0.626878f, 0.626953f, 0.627028f, 0.627102f, 0.627177f, + 0.627252f, 0.627326f, 0.627401f, 0.627476f, 0.627550f, 0.627625f, 0.627700f, 0.627774f, + 0.627849f, 0.627924f, 0.627998f, 0.628073f, 0.628147f, 0.628222f, 0.628297f, 0.628371f, + 0.628446f, 0.628520f, 0.628595f, 0.628669f, 0.628744f, 0.628819f, 0.628893f, 0.628968f, + 0.629042f, 0.629117f, 0.629191f, 0.629266f, 0.629340f, 0.629415f, 0.629489f, 0.629564f, + 0.629638f, 0.629713f, 0.629787f, 0.629862f, 0.629936f, 0.630011f, 0.630085f, 0.630159f, + 0.630234f, 0.630308f, 0.630383f, 0.630457f, 0.630532f, 0.630606f, 0.630680f, 0.630755f, + 0.630829f, 0.630904f, 0.630978f, 0.631052f, 0.631127f, 0.631201f, 0.631275f, 0.631350f, + 0.631424f, 0.631499f, 0.631573f, 0.631647f, 0.631721f, 0.631796f, 0.631870f, 0.631944f, + 0.632019f, 0.632093f, 0.632167f, 0.632242f, 0.632316f, 0.632390f, 0.632464f, 0.632539f, + 0.632613f, 0.632687f, 0.632761f, 0.632836f, 0.632910f, 0.632984f, 0.633058f, 0.633133f, + 0.633207f, 0.633281f, 0.633355f, 0.633429f, 0.633504f, 0.633578f, 0.633652f, 0.633726f, + 0.633800f, 0.633874f, 0.633949f, 0.634023f, 0.634097f, 0.634171f, 0.634245f, 0.634319f, + 0.634393f, 0.634467f, 0.634542f, 0.634616f, 0.634690f, 0.634764f, 0.634838f, 0.634912f, + 0.634986f, 0.635060f, 0.635134f, 0.635208f, 0.635282f, 0.635356f, 0.635430f, 0.635504f, + 0.635578f, 0.635652f, 0.635726f, 0.635800f, 0.635874f, 0.635948f, 0.636022f, 0.636096f, + 0.636170f, 0.636244f, 0.636318f, 0.636392f, 0.636466f, 0.636540f, 0.636614f, 0.636688f, + 0.636762f, 0.636836f, 0.636910f, 0.636984f, 0.637057f, 0.637131f, 0.637205f, 0.637279f, + 0.637353f, 0.637427f, 0.637501f, 0.637575f, 0.637649f, 0.637722f, 0.637796f, 0.637870f, + 0.637944f, 0.638018f, 0.638092f, 0.638165f, 0.638239f, 0.638313f, 0.638387f, 0.638461f, + 0.638534f, 0.638608f, 0.638682f, 0.638756f, 0.638829f, 0.638903f, 0.638977f, 0.639051f, + 0.639124f, 0.639198f, 0.639272f, 0.639346f, 0.639419f, 0.639493f, 0.639567f, 0.639640f, + 0.639714f, 0.639788f, 0.639862f, 0.639935f, 0.640009f, 0.640083f, 0.640156f, 0.640230f, + 0.640303f, 0.640377f, 0.640451f, 0.640524f, 0.640598f, 0.640672f, 0.640745f, 0.640819f, + 0.640892f, 0.640966f, 0.641040f, 0.641113f, 0.641187f, 0.641260f, 0.641334f, 0.641407f, + 0.641481f, 0.641555f, 0.641628f, 0.641702f, 0.641775f, 0.641849f, 0.641922f, 0.641996f, + 0.642069f, 0.642143f, 0.642216f, 0.642290f, 0.642363f, 0.642437f, 0.642510f, 0.642584f, + 0.642657f, 0.642730f, 0.642804f, 0.642877f, 0.642951f, 0.643024f, 0.643098f, 0.643171f, + 0.643245f, 0.643318f, 0.643391f, 0.643465f, 0.643538f, 0.643611f, 0.643685f, 0.643758f, + 0.643832f, 0.643905f, 0.643978f, 0.644052f, 0.644125f, 0.644198f, 0.644272f, 0.644345f, + 0.644418f, 0.644492f, 0.644565f, 0.644638f, 0.644711f, 0.644785f, 0.644858f, 0.644931f, + 0.645005f, 0.645078f, 0.645151f, 0.645224f, 0.645298f, 0.645371f, 0.645444f, 0.645517f, + 0.645590f, 0.645664f, 0.645737f, 0.645810f, 0.645883f, 0.645956f, 0.646030f, 0.646103f, + 0.646176f, 0.646249f, 0.646322f, 0.646396f, 0.646469f, 0.646542f, 0.646615f, 0.646688f, + 0.646761f, 0.646834f, 0.646907f, 0.646981f, 0.647054f, 0.647127f, 0.647200f, 0.647273f, + 0.647346f, 0.647419f, 0.647492f, 0.647565f, 0.647638f, 0.647711f, 0.647784f, 0.647857f, + 0.647930f, 0.648003f, 0.648076f, 0.648149f, 0.648222f, 0.648295f, 0.648368f, 0.648441f, + 0.648514f, 0.648587f, 0.648660f, 0.648733f, 0.648806f, 0.648879f, 0.648952f, 0.649025f, + 0.649098f, 0.649171f, 0.649244f, 0.649317f, 0.649390f, 0.649463f, 0.649536f, 0.649608f, + 0.649681f, 0.649754f, 0.649827f, 0.649900f, 0.649973f, 0.650046f, 0.650119f, 0.650191f, + 0.650264f, 0.650337f, 0.650410f, 0.650483f, 0.650555f, 0.650628f, 0.650701f, 0.650774f, + 0.650847f, 0.650919f, 0.650992f, 0.651065f, 0.651138f, 0.651211f, 0.651283f, 0.651356f, + 0.651429f, 0.651502f, 0.651574f, 0.651647f, 0.651720f, 0.651792f, 0.651865f, 0.651938f, + 0.652011f, 0.652083f, 0.652156f, 0.652229f, 0.652301f, 0.652374f, 0.652447f, 0.652519f, + 0.652592f, 0.652665f, 0.652737f, 0.652810f, 0.652882f, 0.652955f, 0.653028f, 0.653100f, + 0.653173f, 0.653245f, 0.653318f, 0.653391f, 0.653463f, 0.653536f, 0.653608f, 0.653681f, + 0.653753f, 0.653826f, 0.653899f, 0.653971f, 0.654044f, 0.654116f, 0.654189f, 0.654261f, + 0.654334f, 0.654406f, 0.654479f, 0.654551f, 0.654624f, 0.654696f, 0.654769f, 0.654841f, + 0.654913f, 0.654986f, 0.655058f, 0.655131f, 0.655203f, 0.655276f, 0.655348f, 0.655420f, + 0.655493f, 0.655565f, 0.655638f, 0.655710f, 0.655782f, 0.655855f, 0.655927f, 0.656000f, + 0.656072f, 0.656144f, 0.656217f, 0.656289f, 0.656361f, 0.656434f, 0.656506f, 0.656578f, + 0.656651f, 0.656723f, 0.656795f, 0.656867f, 0.656940f, 0.657012f, 0.657084f, 0.657157f, + 0.657229f, 0.657301f, 0.657373f, 0.657446f, 0.657518f, 0.657590f, 0.657662f, 0.657734f, + 0.657807f, 0.657879f, 0.657951f, 0.658023f, 0.658095f, 0.658168f, 0.658240f, 0.658312f, + 0.658384f, 0.658456f, 0.658529f, 0.658601f, 0.658673f, 0.658745f, 0.658817f, 0.658889f, + 0.658961f, 0.659033f, 0.659105f, 0.659178f, 0.659250f, 0.659322f, 0.659394f, 0.659466f, + 0.659538f, 0.659610f, 0.659682f, 0.659754f, 0.659826f, 0.659898f, 0.659970f, 0.660042f, + 0.660114f, 0.660186f, 0.660258f, 0.660330f, 0.660402f, 0.660474f, 0.660546f, 0.660618f, + 0.660690f, 0.660762f, 0.660834f, 0.660906f, 0.660978f, 0.661050f, 0.661122f, 0.661194f, + 0.661266f, 0.661338f, 0.661410f, 0.661482f, 0.661553f, 0.661625f, 0.661697f, 0.661769f, + 0.661841f, 0.661913f, 0.661985f, 0.662057f, 0.662128f, 0.662200f, 0.662272f, 0.662344f, + 0.662416f, 0.662488f, 0.662559f, 0.662631f, 0.662703f, 0.662775f, 0.662847f, 0.662918f, + 0.662990f, 0.663062f, 0.663134f, 0.663205f, 0.663277f, 0.663349f, 0.663421f, 0.663492f, + 0.663564f, 0.663636f, 0.663708f, 0.663779f, 0.663851f, 0.663923f, 0.663994f, 0.664066f, + 0.664138f, 0.664209f, 0.664281f, 0.664353f, 0.664424f, 0.664496f, 0.664568f, 0.664639f, + 0.664711f, 0.664783f, 0.664854f, 0.664926f, 0.664997f, 0.665069f, 0.665141f, 0.665212f, + 0.665284f, 0.665355f, 0.665427f, 0.665498f, 0.665570f, 0.665642f, 0.665713f, 0.665785f, + 0.665856f, 0.665928f, 0.665999f, 0.666071f, 0.666142f, 0.666214f, 0.666285f, 0.666357f, + 0.666428f, 0.666500f, 0.666571f, 0.666643f, 0.666714f, 0.666786f, 0.666857f, 0.666928f, + 0.667000f, 0.667071f, 0.667143f, 0.667214f, 0.667286f, 0.667357f, 0.667428f, 0.667500f, + 0.667571f, 0.667643f, 0.667714f, 0.667785f, 0.667857f, 0.667928f, 0.667999f, 0.668071f, + 0.668142f, 0.668213f, 0.668285f, 0.668356f, 0.668427f, 0.668499f, 0.668570f, 0.668641f, + 0.668712f, 0.668784f, 0.668855f, 0.668926f, 0.668998f, 0.669069f, 0.669140f, 0.669211f, + 0.669283f, 0.669354f, 0.669425f, 0.669496f, 0.669567f, 0.669639f, 0.669710f, 0.669781f, + 0.669852f, 0.669923f, 0.669995f, 0.670066f, 0.670137f, 0.670208f, 0.670279f, 0.670350f, + 0.670422f, 0.670493f, 0.670564f, 0.670635f, 0.670706f, 0.670777f, 0.670848f, 0.670919f, + 0.670990f, 0.671062f, 0.671133f, 0.671204f, 0.671275f, 0.671346f, 0.671417f, 0.671488f, + 0.671559f, 0.671630f, 0.671701f, 0.671772f, 0.671843f, 0.671914f, 0.671985f, 0.672056f, + 0.672127f, 0.672198f, 0.672269f, 0.672340f, 0.672411f, 0.672482f, 0.672553f, 0.672624f, + 0.672695f, 0.672766f, 0.672837f, 0.672908f, 0.672978f, 0.673049f, 0.673120f, 0.673191f, + 0.673262f, 0.673333f, 0.673404f, 0.673475f, 0.673546f, 0.673616f, 0.673687f, 0.673758f, + 0.673829f, 0.673900f, 0.673971f, 0.674042f, 0.674112f, 0.674183f, 0.674254f, 0.674325f, + 0.674396f, 0.674466f, 0.674537f, 0.674608f, 0.674679f, 0.674749f, 0.674820f, 0.674891f, + 0.674962f, 0.675032f, 0.675103f, 0.675174f, 0.675245f, 0.675315f, 0.675386f, 0.675457f, + 0.675527f, 0.675598f, 0.675669f, 0.675739f, 0.675810f, 0.675881f, 0.675951f, 0.676022f, + 0.676093f, 0.676163f, 0.676234f, 0.676305f, 0.676375f, 0.676446f, 0.676516f, 0.676587f, + 0.676658f, 0.676728f, 0.676799f, 0.676869f, 0.676940f, 0.677011f, 0.677081f, 0.677152f, + 0.677222f, 0.677293f, 0.677363f, 0.677434f, 0.677504f, 0.677575f, 0.677645f, 0.677716f, + 0.677786f, 0.677857f, 0.677927f, 0.677998f, 0.678068f, 0.678139f, 0.678209f, 0.678280f, + 0.678350f, 0.678420f, 0.678491f, 0.678561f, 0.678632f, 0.678702f, 0.678773f, 0.678843f, + 0.678913f, 0.678984f, 0.679054f, 0.679125f, 0.679195f, 0.679265f, 0.679336f, 0.679406f, + 0.679476f, 0.679547f, 0.679617f, 0.679687f, 0.679758f, 0.679828f, 0.679898f, 0.679969f, + 0.680039f, 0.680109f, 0.680179f, 0.680250f, 0.680320f, 0.680390f, 0.680461f, 0.680531f, + 0.680601f, 0.680671f, 0.680741f, 0.680812f, 0.680882f, 0.680952f, 0.681022f, 0.681093f, + 0.681163f, 0.681233f, 0.681303f, 0.681373f, 0.681443f, 0.681514f, 0.681584f, 0.681654f, + 0.681724f, 0.681794f, 0.681864f, 0.681934f, 0.682005f, 0.682075f, 0.682145f, 0.682215f, + 0.682285f, 0.682355f, 0.682425f, 0.682495f, 0.682565f, 0.682635f, 0.682705f, 0.682775f, + 0.682846f, 0.682916f, 0.682986f, 0.683056f, 0.683126f, 0.683196f, 0.683266f, 0.683336f, + 0.683406f, 0.683476f, 0.683546f, 0.683616f, 0.683686f, 0.683756f, 0.683825f, 0.683895f, + 0.683965f, 0.684035f, 0.684105f, 0.684175f, 0.684245f, 0.684315f, 0.684385f, 0.684455f, + 0.684525f, 0.684595f, 0.684664f, 0.684734f, 0.684804f, 0.684874f, 0.684944f, 0.685014f, + 0.685084f, 0.685153f, 0.685223f, 0.685293f, 0.685363f, 0.685433f, 0.685503f, 0.685572f, + 0.685642f, 0.685712f, 0.685782f, 0.685852f, 0.685921f, 0.685991f, 0.686061f, 0.686131f, + 0.686200f, 0.686270f, 0.686340f, 0.686409f, 0.686479f, 0.686549f, 0.686619f, 0.686688f, + 0.686758f, 0.686828f, 0.686897f, 0.686967f, 0.687037f, 0.687106f, 0.687176f, 0.687246f, + 0.687315f, 0.687385f, 0.687455f, 0.687524f, 0.687594f, 0.687663f, 0.687733f, 0.687803f, + 0.687872f, 0.687942f, 0.688011f, 0.688081f, 0.688151f, 0.688220f, 0.688290f, 0.688359f, + 0.688429f, 0.688498f, 0.688568f, 0.688637f, 0.688707f, 0.688776f, 0.688846f, 0.688915f, + 0.688985f, 0.689054f, 0.689124f, 0.689193f, 0.689263f, 0.689332f, 0.689402f, 0.689471f, + 0.689541f, 0.689610f, 0.689679f, 0.689749f, 0.689818f, 0.689888f, 0.689957f, 0.690026f, + 0.690096f, 0.690165f, 0.690235f, 0.690304f, 0.690373f, 0.690443f, 0.690512f, 0.690581f, + 0.690651f, 0.690720f, 0.690789f, 0.690859f, 0.690928f, 0.690997f, 0.691067f, 0.691136f, + 0.691205f, 0.691274f, 0.691344f, 0.691413f, 0.691482f, 0.691552f, 0.691621f, 0.691690f, + 0.691759f, 0.691828f, 0.691898f, 0.691967f, 0.692036f, 0.692105f, 0.692175f, 0.692244f, + 0.692313f, 0.692382f, 0.692451f, 0.692520f, 0.692590f, 0.692659f, 0.692728f, 0.692797f, + 0.692866f, 0.692935f, 0.693004f, 0.693074f, 0.693143f, 0.693212f, 0.693281f, 0.693350f, + 0.693419f, 0.693488f, 0.693557f, 0.693626f, 0.693695f, 0.693764f, 0.693833f, 0.693902f, + 0.693971f, 0.694040f, 0.694109f, 0.694179f, 0.694248f, 0.694317f, 0.694386f, 0.694454f, + 0.694524f, 0.694592f, 0.694661f, 0.694730f, 0.694799f, 0.694868f, 0.694937f, 0.695006f, + 0.695075f, 0.695144f, 0.695213f, 0.695282f, 0.695351f, 0.695420f, 0.695489f, 0.695557f, + 0.695626f, 0.695695f, 0.695764f, 0.695833f, 0.695902f, 0.695971f, 0.696039f, 0.696108f, + 0.696177f, 0.696246f, 0.696315f, 0.696384f, 0.696452f, 0.696521f, 0.696590f, 0.696659f, + 0.696728f, 0.696796f, 0.696865f, 0.696934f, 0.697003f, 0.697071f, 0.697140f, 0.697209f, + 0.697277f, 0.697346f, 0.697415f, 0.697484f, 0.697552f, 0.697621f, 0.697690f, 0.697758f, + 0.697827f, 0.697896f, 0.697964f, 0.698033f, 0.698102f, 0.698170f, 0.698239f, 0.698308f, + 0.698376f, 0.698445f, 0.698513f, 0.698582f, 0.698651f, 0.698719f, 0.698788f, 0.698856f, + 0.698925f, 0.698994f, 0.699062f, 0.699131f, 0.699199f, 0.699268f, 0.699336f, 0.699405f, + 0.699473f, 0.699542f, 0.699610f, 0.699679f, 0.699747f, 0.699816f, 0.699884f, 0.699953f, + 0.700021f, 0.700090f, 0.700158f, 0.700227f, 0.700295f, 0.700364f, 0.700432f, 0.700500f, + 0.700569f, 0.700637f, 0.700706f, 0.700774f, 0.700842f, 0.700911f, 0.700979f, 0.701048f, + 0.701116f, 0.701184f, 0.701253f, 0.701321f, 0.701389f, 0.701458f, 0.701526f, 0.701594f, + 0.701663f, 0.701731f, 0.701799f, 0.701868f, 0.701936f, 0.702004f, 0.702072f, 0.702141f, + 0.702209f, 0.702277f, 0.702345f, 0.702414f, 0.702482f, 0.702550f, 0.702618f, 0.702687f, + 0.702755f, 0.702823f, 0.702891f, 0.702959f, 0.703028f, 0.703096f, 0.703164f, 0.703232f, + 0.703300f, 0.703368f, 0.703436f, 0.703505f, 0.703573f, 0.703641f, 0.703709f, 0.703777f, + 0.703845f, 0.703913f, 0.703981f, 0.704050f, 0.704118f, 0.704186f, 0.704254f, 0.704322f, + 0.704390f, 0.704458f, 0.704526f, 0.704594f, 0.704662f, 0.704730f, 0.704798f, 0.704866f, + 0.704934f, 0.705002f, 0.705070f, 0.705138f, 0.705206f, 0.705274f, 0.705342f, 0.705410f, + 0.705478f, 0.705546f, 0.705614f, 0.705682f, 0.705750f, 0.705818f, 0.705885f, 0.705953f, + 0.706021f, 0.706089f, 0.706157f, 0.706225f, 0.706293f, 0.706361f, 0.706429f, 0.706496f, + 0.706564f, 0.706632f, 0.706700f, 0.706768f, 0.706836f, 0.706903f, 0.706971f, 0.707039f, + 0.707107f, 0.707175f, 0.707242f, 0.707310f, 0.707378f, 0.707446f, 0.707513f, 0.707581f, + 0.707649f, 0.707717f, 0.707784f, 0.707852f, 0.707920f, 0.707988f, 0.708055f, 0.708123f, + 0.708191f, 0.708258f, 0.708326f, 0.708394f, 0.708461f, 0.708529f, 0.708597f, 0.708664f, + 0.708732f, 0.708800f, 0.708867f, 0.708935f, 0.709002f, 0.709070f, 0.709138f, 0.709205f, + 0.709273f, 0.709340f, 0.709408f, 0.709476f, 0.709543f, 0.709611f, 0.709678f, 0.709746f, + 0.709813f, 0.709881f, 0.709948f, 0.710016f, 0.710083f, 0.710151f, 0.710218f, 0.710286f, + 0.710353f, 0.710421f, 0.710488f, 0.710556f, 0.710623f, 0.710691f, 0.710758f, 0.710826f, + 0.710893f, 0.710960f, 0.711028f, 0.711095f, 0.711163f, 0.711230f, 0.711297f, 0.711365f, + 0.711432f, 0.711500f, 0.711567f, 0.711634f, 0.711702f, 0.711769f, 0.711836f, 0.711904f, + 0.711971f, 0.712038f, 0.712106f, 0.712173f, 0.712240f, 0.712308f, 0.712375f, 0.712442f, + 0.712509f, 0.712577f, 0.712644f, 0.712711f, 0.712778f, 0.712846f, 0.712913f, 0.712980f, + 0.713047f, 0.713115f, 0.713182f, 0.713249f, 0.713316f, 0.713383f, 0.713451f, 0.713518f, + 0.713585f, 0.713652f, 0.713719f, 0.713786f, 0.713853f, 0.713921f, 0.713988f, 0.714055f, + 0.714122f, 0.714189f, 0.714256f, 0.714323f, 0.714390f, 0.714457f, 0.714525f, 0.714592f, + 0.714659f, 0.714726f, 0.714793f, 0.714860f, 0.714927f, 0.714994f, 0.715061f, 0.715128f, + 0.715195f, 0.715262f, 0.715329f, 0.715396f, 0.715463f, 0.715530f, 0.715597f, 0.715664f, + 0.715731f, 0.715798f, 0.715865f, 0.715932f, 0.715999f, 0.716066f, 0.716132f, 0.716199f, + 0.716266f, 0.716333f, 0.716400f, 0.716467f, 0.716534f, 0.716601f, 0.716668f, 0.716734f, + 0.716801f, 0.716868f, 0.716935f, 0.717002f, 0.717069f, 0.717135f, 0.717202f, 0.717269f, + 0.717336f, 0.717403f, 0.717469f, 0.717536f, 0.717603f, 0.717670f, 0.717737f, 0.717803f, + 0.717870f, 0.717937f, 0.718004f, 0.718070f, 0.718137f, 0.718204f, 0.718270f, 0.718337f, + 0.718404f, 0.718471f, 0.718537f, 0.718604f, 0.718670f, 0.718737f, 0.718804f, 0.718870f, + 0.718937f, 0.719004f, 0.719070f, 0.719137f, 0.719204f, 0.719270f, 0.719337f, 0.719403f, + 0.719470f, 0.719537f, 0.719603f, 0.719670f, 0.719736f, 0.719803f, 0.719869f, 0.719936f, + 0.720003f, 0.720069f, 0.720136f, 0.720202f, 0.720269f, 0.720335f, 0.720402f, 0.720468f, + 0.720535f, 0.720601f, 0.720668f, 0.720734f, 0.720800f, 0.720867f, 0.720933f, 0.721000f, + 0.721066f, 0.721133f, 0.721199f, 0.721265f, 0.721332f, 0.721398f, 0.721465f, 0.721531f, + 0.721597f, 0.721664f, 0.721730f, 0.721797f, 0.721863f, 0.721929f, 0.721996f, 0.722062f, + 0.722128f, 0.722194f, 0.722261f, 0.722327f, 0.722393f, 0.722460f, 0.722526f, 0.722592f, + 0.722659f, 0.722725f, 0.722791f, 0.722857f, 0.722924f, 0.722990f, 0.723056f, 0.723122f, + 0.723188f, 0.723255f, 0.723321f, 0.723387f, 0.723453f, 0.723520f, 0.723586f, 0.723652f, + 0.723718f, 0.723784f, 0.723850f, 0.723916f, 0.723983f, 0.724049f, 0.724115f, 0.724181f, + 0.724247f, 0.724313f, 0.724379f, 0.724445f, 0.724511f, 0.724578f, 0.724644f, 0.724710f, + 0.724776f, 0.724842f, 0.724908f, 0.724974f, 0.725040f, 0.725106f, 0.725172f, 0.725238f, + 0.725304f, 0.725370f, 0.725436f, 0.725502f, 0.725568f, 0.725634f, 0.725700f, 0.725766f, + 0.725832f, 0.725898f, 0.725964f, 0.726030f, 0.726095f, 0.726161f, 0.726227f, 0.726293f, + 0.726359f, 0.726425f, 0.726491f, 0.726557f, 0.726623f, 0.726689f, 0.726754f, 0.726820f, + 0.726886f, 0.726952f, 0.727018f, 0.727084f, 0.727149f, 0.727215f, 0.727281f, 0.727347f, + 0.727413f, 0.727478f, 0.727544f, 0.727610f, 0.727676f, 0.727741f, 0.727807f, 0.727873f, + 0.727939f, 0.728004f, 0.728070f, 0.728136f, 0.728202f, 0.728267f, 0.728333f, 0.728399f, + 0.728464f, 0.728530f, 0.728596f, 0.728661f, 0.728727f, 0.728793f, 0.728858f, 0.728924f, + 0.728990f, 0.729055f, 0.729121f, 0.729186f, 0.729252f, 0.729318f, 0.729383f, 0.729449f, + 0.729514f, 0.729580f, 0.729646f, 0.729711f, 0.729777f, 0.729842f, 0.729908f, 0.729973f, + 0.730039f, 0.730104f, 0.730170f, 0.730235f, 0.730301f, 0.730366f, 0.730432f, 0.730497f, + 0.730563f, 0.730628f, 0.730694f, 0.730759f, 0.730825f, 0.730890f, 0.730955f, 0.731021f, + 0.731086f, 0.731152f, 0.731217f, 0.731282f, 0.731348f, 0.731413f, 0.731479f, 0.731544f, + 0.731609f, 0.731675f, 0.731740f, 0.731805f, 0.731871f, 0.731936f, 0.732001f, 0.732067f, + 0.732132f, 0.732197f, 0.732263f, 0.732328f, 0.732393f, 0.732458f, 0.732524f, 0.732589f, + 0.732654f, 0.732720f, 0.732785f, 0.732850f, 0.732915f, 0.732980f, 0.733046f, 0.733111f, + 0.733176f, 0.733241f, 0.733306f, 0.733372f, 0.733437f, 0.733502f, 0.733567f, 0.733632f, + 0.733697f, 0.733763f, 0.733828f, 0.733893f, 0.733958f, 0.734023f, 0.734088f, 0.734153f, + 0.734218f, 0.734283f, 0.734349f, 0.734414f, 0.734479f, 0.734544f, 0.734609f, 0.734674f, + 0.734739f, 0.734804f, 0.734869f, 0.734934f, 0.734999f, 0.735064f, 0.735129f, 0.735194f, + 0.735259f, 0.735324f, 0.735389f, 0.735454f, 0.735519f, 0.735584f, 0.735649f, 0.735714f, + 0.735779f, 0.735844f, 0.735908f, 0.735973f, 0.736038f, 0.736103f, 0.736168f, 0.736233f, + 0.736298f, 0.736363f, 0.736428f, 0.736492f, 0.736557f, 0.736622f, 0.736687f, 0.736752f, + 0.736817f, 0.736881f, 0.736946f, 0.737011f, 0.737076f, 0.737141f, 0.737205f, 0.737270f, + 0.737335f, 0.737400f, 0.737464f, 0.737529f, 0.737594f, 0.737659f, 0.737723f, 0.737788f, + 0.737853f, 0.737918f, 0.737982f, 0.738047f, 0.738112f, 0.738176f, 0.738241f, 0.738306f, + 0.738370f, 0.738435f, 0.738500f, 0.738564f, 0.738629f, 0.738693f, 0.738758f, 0.738823f, + 0.738887f, 0.738952f, 0.739017f, 0.739081f, 0.739146f, 0.739210f, 0.739275f, 0.739339f, + 0.739404f, 0.739468f, 0.739533f, 0.739598f, 0.739662f, 0.739727f, 0.739791f, 0.739856f, + 0.739920f, 0.739985f, 0.740049f, 0.740114f, 0.740178f, 0.740242f, 0.740307f, 0.740371f, + 0.740436f, 0.740500f, 0.740565f, 0.740629f, 0.740694f, 0.740758f, 0.740822f, 0.740887f, + 0.740951f, 0.741015f, 0.741080f, 0.741144f, 0.741209f, 0.741273f, 0.741337f, 0.741402f, + 0.741466f, 0.741530f, 0.741595f, 0.741659f, 0.741723f, 0.741788f, 0.741852f, 0.741916f, + 0.741980f, 0.742045f, 0.742109f, 0.742173f, 0.742237f, 0.742302f, 0.742366f, 0.742430f, + 0.742494f, 0.742559f, 0.742623f, 0.742687f, 0.742751f, 0.742815f, 0.742880f, 0.742944f, + 0.743008f, 0.743072f, 0.743136f, 0.743200f, 0.743265f, 0.743329f, 0.743393f, 0.743457f, + 0.743521f, 0.743585f, 0.743649f, 0.743713f, 0.743777f, 0.743842f, 0.743906f, 0.743970f, + 0.744034f, 0.744098f, 0.744162f, 0.744226f, 0.744290f, 0.744354f, 0.744418f, 0.744482f, + 0.744546f, 0.744610f, 0.744674f, 0.744738f, 0.744802f, 0.744866f, 0.744930f, 0.744994f, + 0.745058f, 0.745122f, 0.745186f, 0.745250f, 0.745314f, 0.745377f, 0.745441f, 0.745505f, + 0.745569f, 0.745633f, 0.745697f, 0.745761f, 0.745825f, 0.745889f, 0.745952f, 0.746016f, + 0.746080f, 0.746144f, 0.746208f, 0.746272f, 0.746335f, 0.746399f, 0.746463f, 0.746527f, + 0.746591f, 0.746654f, 0.746718f, 0.746782f, 0.746846f, 0.746909f, 0.746973f, 0.747037f, + 0.747101f, 0.747164f, 0.747228f, 0.747292f, 0.747355f, 0.747419f, 0.747483f, 0.747547f, + 0.747610f, 0.747674f, 0.747738f, 0.747801f, 0.747865f, 0.747929f, 0.747992f, 0.748056f, + 0.748119f, 0.748183f, 0.748247f, 0.748310f, 0.748374f, 0.748437f, 0.748501f, 0.748565f, + 0.748628f, 0.748692f, 0.748755f, 0.748819f, 0.748882f, 0.748946f, 0.749009f, 0.749073f, + 0.749136f, 0.749200f, 0.749263f, 0.749327f, 0.749390f, 0.749454f, 0.749517f, 0.749581f, + 0.749644f, 0.749708f, 0.749771f, 0.749835f, 0.749898f, 0.749961f, 0.750025f, 0.750088f, + 0.750152f, 0.750215f, 0.750278f, 0.750342f, 0.750405f, 0.750469f, 0.750532f, 0.750595f, + 0.750659f, 0.750722f, 0.750785f, 0.750849f, 0.750912f, 0.750975f, 0.751039f, 0.751102f, + 0.751165f, 0.751228f, 0.751292f, 0.751355f, 0.751418f, 0.751481f, 0.751545f, 0.751608f, + 0.751671f, 0.751734f, 0.751798f, 0.751861f, 0.751924f, 0.751987f, 0.752050f, 0.752114f, + 0.752177f, 0.752240f, 0.752303f, 0.752366f, 0.752429f, 0.752493f, 0.752556f, 0.752619f, + 0.752682f, 0.752745f, 0.752808f, 0.752871f, 0.752934f, 0.752998f, 0.753061f, 0.753124f, + 0.753187f, 0.753250f, 0.753313f, 0.753376f, 0.753439f, 0.753502f, 0.753565f, 0.753628f, + 0.753691f, 0.753754f, 0.753817f, 0.753880f, 0.753943f, 0.754006f, 0.754069f, 0.754132f, + 0.754195f, 0.754258f, 0.754321f, 0.754384f, 0.754447f, 0.754510f, 0.754573f, 0.754636f, + 0.754698f, 0.754761f, 0.754824f, 0.754887f, 0.754950f, 0.755013f, 0.755076f, 0.755139f, + 0.755201f, 0.755264f, 0.755327f, 0.755390f, 0.755453f, 0.755516f, 0.755578f, 0.755641f, + 0.755704f, 0.755767f, 0.755829f, 0.755892f, 0.755955f, 0.756018f, 0.756081f, 0.756143f, + 0.756206f, 0.756269f, 0.756331f, 0.756394f, 0.756457f, 0.756520f, 0.756582f, 0.756645f, + 0.756708f, 0.756770f, 0.756833f, 0.756896f, 0.756958f, 0.757021f, 0.757084f, 0.757146f, + 0.757209f, 0.757271f, 0.757334f, 0.757397f, 0.757459f, 0.757522f, 0.757584f, 0.757647f, + 0.757710f, 0.757772f, 0.757835f, 0.757897f, 0.757960f, 0.758022f, 0.758085f, 0.758147f, + 0.758210f, 0.758272f, 0.758335f, 0.758397f, 0.758460f, 0.758522f, 0.758585f, 0.758647f, + 0.758710f, 0.758772f, 0.758835f, 0.758897f, 0.758960f, 0.759022f, 0.759084f, 0.759147f, + 0.759209f, 0.759272f, 0.759334f, 0.759396f, 0.759459f, 0.759521f, 0.759583f, 0.759646f, + 0.759708f, 0.759771f, 0.759833f, 0.759895f, 0.759957f, 0.760020f, 0.760082f, 0.760144f, + 0.760207f, 0.760269f, 0.760331f, 0.760394f, 0.760456f, 0.760518f, 0.760580f, 0.760643f, + 0.760705f, 0.760767f, 0.760829f, 0.760891f, 0.760954f, 0.761016f, 0.761078f, 0.761140f, + 0.761202f, 0.761265f, 0.761327f, 0.761389f, 0.761451f, 0.761513f, 0.761575f, 0.761637f, + 0.761700f, 0.761762f, 0.761824f, 0.761886f, 0.761948f, 0.762010f, 0.762072f, 0.762134f, + 0.762196f, 0.762258f, 0.762320f, 0.762382f, 0.762444f, 0.762507f, 0.762569f, 0.762631f, + 0.762693f, 0.762755f, 0.762817f, 0.762879f, 0.762941f, 0.763003f, 0.763065f, 0.763126f, + 0.763188f, 0.763250f, 0.763312f, 0.763374f, 0.763436f, 0.763498f, 0.763560f, 0.763622f, + 0.763684f, 0.763746f, 0.763808f, 0.763869f, 0.763931f, 0.763993f, 0.764055f, 0.764117f, + 0.764179f, 0.764241f, 0.764302f, 0.764364f, 0.764426f, 0.764488f, 0.764550f, 0.764611f, + 0.764673f, 0.764735f, 0.764797f, 0.764859f, 0.764920f, 0.764982f, 0.765044f, 0.765106f, + 0.765167f, 0.765229f, 0.765291f, 0.765352f, 0.765414f, 0.765476f, 0.765538f, 0.765599f, + 0.765661f, 0.765723f, 0.765784f, 0.765846f, 0.765907f, 0.765969f, 0.766031f, 0.766092f, + 0.766154f, 0.766216f, 0.766277f, 0.766339f, 0.766400f, 0.766462f, 0.766524f, 0.766585f, + 0.766647f, 0.766708f, 0.766770f, 0.766831f, 0.766893f, 0.766954f, 0.767016f, 0.767077f, + 0.767139f, 0.767200f, 0.767262f, 0.767323f, 0.767385f, 0.767446f, 0.767508f, 0.767569f, + 0.767631f, 0.767692f, 0.767754f, 0.767815f, 0.767876f, 0.767938f, 0.767999f, 0.768061f, + 0.768122f, 0.768183f, 0.768245f, 0.768306f, 0.768368f, 0.768429f, 0.768490f, 0.768552f, + 0.768613f, 0.768674f, 0.768736f, 0.768797f, 0.768858f, 0.768919f, 0.768981f, 0.769042f, + 0.769103f, 0.769165f, 0.769226f, 0.769287f, 0.769348f, 0.769410f, 0.769471f, 0.769532f, + 0.769593f, 0.769655f, 0.769716f, 0.769777f, 0.769838f, 0.769899f, 0.769961f, 0.770022f, + 0.770083f, 0.770144f, 0.770205f, 0.770266f, 0.770327f, 0.770389f, 0.770450f, 0.770511f, + 0.770572f, 0.770633f, 0.770694f, 0.770755f, 0.770816f, 0.770877f, 0.770938f, 0.770999f, + 0.771061f, 0.771122f, 0.771183f, 0.771244f, 0.771305f, 0.771366f, 0.771427f, 0.771488f, + 0.771549f, 0.771610f, 0.771671f, 0.771732f, 0.771793f, 0.771854f, 0.771915f, 0.771975f, + 0.772036f, 0.772097f, 0.772158f, 0.772219f, 0.772280f, 0.772341f, 0.772402f, 0.772463f, + 0.772524f, 0.772584f, 0.772645f, 0.772706f, 0.772767f, 0.772828f, 0.772889f, 0.772950f, + 0.773010f, 0.773071f, 0.773132f, 0.773193f, 0.773254f, 0.773314f, 0.773375f, 0.773436f, + 0.773497f, 0.773558f, 0.773618f, 0.773679f, 0.773740f, 0.773801f, 0.773861f, 0.773922f, + 0.773983f, 0.774043f, 0.774104f, 0.774165f, 0.774225f, 0.774286f, 0.774347f, 0.774407f, + 0.774468f, 0.774529f, 0.774589f, 0.774650f, 0.774711f, 0.774771f, 0.774832f, 0.774893f, + 0.774953f, 0.775014f, 0.775074f, 0.775135f, 0.775195f, 0.775256f, 0.775317f, 0.775377f, + 0.775438f, 0.775498f, 0.775559f, 0.775619f, 0.775680f, 0.775740f, 0.775801f, 0.775861f, + 0.775922f, 0.775982f, 0.776043f, 0.776103f, 0.776164f, 0.776224f, 0.776284f, 0.776345f, + 0.776405f, 0.776466f, 0.776526f, 0.776587f, 0.776647f, 0.776707f, 0.776768f, 0.776828f, + 0.776888f, 0.776949f, 0.777009f, 0.777070f, 0.777130f, 0.777190f, 0.777251f, 0.777311f, + 0.777371f, 0.777431f, 0.777492f, 0.777552f, 0.777612f, 0.777673f, 0.777733f, 0.777793f, + 0.777853f, 0.777914f, 0.777974f, 0.778034f, 0.778094f, 0.778155f, 0.778215f, 0.778275f, + 0.778335f, 0.778395f, 0.778456f, 0.778516f, 0.778576f, 0.778636f, 0.778696f, 0.778756f, + 0.778817f, 0.778877f, 0.778937f, 0.778997f, 0.779057f, 0.779117f, 0.779177f, 0.779237f, + 0.779297f, 0.779357f, 0.779418f, 0.779478f, 0.779538f, 0.779598f, 0.779658f, 0.779718f, + 0.779778f, 0.779838f, 0.779898f, 0.779958f, 0.780018f, 0.780078f, 0.780138f, 0.780198f, + 0.780258f, 0.780318f, 0.780378f, 0.780438f, 0.780498f, 0.780557f, 0.780617f, 0.780677f, + 0.780737f, 0.780797f, 0.780857f, 0.780917f, 0.780977f, 0.781037f, 0.781097f, 0.781156f, + 0.781216f, 0.781276f, 0.781336f, 0.781396f, 0.781456f, 0.781515f, 0.781575f, 0.781635f, + 0.781695f, 0.781755f, 0.781814f, 0.781874f, 0.781934f, 0.781994f, 0.782053f, 0.782113f, + 0.782173f, 0.782233f, 0.782292f, 0.782352f, 0.782412f, 0.782472f, 0.782531f, 0.782591f, + 0.782651f, 0.782710f, 0.782770f, 0.782830f, 0.782889f, 0.782949f, 0.783009f, 0.783068f, + 0.783128f, 0.783187f, 0.783247f, 0.783307f, 0.783366f, 0.783426f, 0.783485f, 0.783545f, + 0.783605f, 0.783664f, 0.783724f, 0.783783f, 0.783843f, 0.783902f, 0.783962f, 0.784021f, + 0.784081f, 0.784140f, 0.784200f, 0.784259f, 0.784319f, 0.784378f, 0.784438f, 0.784497f, + 0.784557f, 0.784616f, 0.784675f, 0.784735f, 0.784794f, 0.784854f, 0.784913f, 0.784973f, + 0.785032f, 0.785091f, 0.785151f, 0.785210f, 0.785269f, 0.785329f, 0.785388f, 0.785447f, + 0.785507f, 0.785566f, 0.785625f, 0.785685f, 0.785744f, 0.785803f, 0.785863f, 0.785922f, + 0.785981f, 0.786041f, 0.786100f, 0.786159f, 0.786218f, 0.786278f, 0.786337f, 0.786396f, + 0.786455f, 0.786514f, 0.786574f, 0.786633f, 0.786692f, 0.786751f, 0.786810f, 0.786870f, + 0.786929f, 0.786988f, 0.787047f, 0.787106f, 0.787165f, 0.787224f, 0.787284f, 0.787343f, + 0.787402f, 0.787461f, 0.787520f, 0.787579f, 0.787638f, 0.787697f, 0.787756f, 0.787815f, + 0.787874f, 0.787933f, 0.787992f, 0.788051f, 0.788110f, 0.788169f, 0.788228f, 0.788287f, + 0.788346f, 0.788405f, 0.788464f, 0.788523f, 0.788582f, 0.788641f, 0.788700f, 0.788759f, + 0.788818f, 0.788877f, 0.788936f, 0.788995f, 0.789054f, 0.789113f, 0.789172f, 0.789230f, + 0.789289f, 0.789348f, 0.789407f, 0.789466f, 0.789525f, 0.789584f, 0.789642f, 0.789701f, + 0.789760f, 0.789819f, 0.789878f, 0.789936f, 0.789995f, 0.790054f, 0.790113f, 0.790171f, + 0.790230f, 0.790289f, 0.790348f, 0.790406f, 0.790465f, 0.790524f, 0.790583f, 0.790641f, + 0.790700f, 0.790759f, 0.790817f, 0.790876f, 0.790935f, 0.790993f, 0.791052f, 0.791111f, + 0.791169f, 0.791228f, 0.791287f, 0.791345f, 0.791404f, 0.791462f, 0.791521f, 0.791580f, + 0.791638f, 0.791697f, 0.791755f, 0.791814f, 0.791872f, 0.791931f, 0.791990f, 0.792048f, + 0.792107f, 0.792165f, 0.792224f, 0.792282f, 0.792341f, 0.792399f, 0.792458f, 0.792516f, + 0.792575f, 0.792633f, 0.792691f, 0.792750f, 0.792808f, 0.792867f, 0.792925f, 0.792984f, + 0.793042f, 0.793100f, 0.793159f, 0.793217f, 0.793276f, 0.793334f, 0.793392f, 0.793451f, + 0.793509f, 0.793567f, 0.793626f, 0.793684f, 0.793742f, 0.793801f, 0.793859f, 0.793917f, + 0.793975f, 0.794034f, 0.794092f, 0.794150f, 0.794209f, 0.794267f, 0.794325f, 0.794383f, + 0.794442f, 0.794500f, 0.794558f, 0.794616f, 0.794674f, 0.794733f, 0.794791f, 0.794849f, + 0.794907f, 0.794965f, 0.795023f, 0.795082f, 0.795140f, 0.795198f, 0.795256f, 0.795314f, + 0.795372f, 0.795430f, 0.795488f, 0.795547f, 0.795605f, 0.795663f, 0.795721f, 0.795779f, + 0.795837f, 0.795895f, 0.795953f, 0.796011f, 0.796069f, 0.796127f, 0.796185f, 0.796243f, + 0.796301f, 0.796359f, 0.796417f, 0.796475f, 0.796533f, 0.796591f, 0.796649f, 0.796707f, + 0.796765f, 0.796823f, 0.796881f, 0.796939f, 0.796996f, 0.797054f, 0.797112f, 0.797170f, + 0.797228f, 0.797286f, 0.797344f, 0.797402f, 0.797459f, 0.797517f, 0.797575f, 0.797633f, + 0.797691f, 0.797749f, 0.797806f, 0.797864f, 0.797922f, 0.797980f, 0.798038f, 0.798095f, + 0.798153f, 0.798211f, 0.798269f, 0.798326f, 0.798384f, 0.798442f, 0.798500f, 0.798557f, + 0.798615f, 0.798673f, 0.798730f, 0.798788f, 0.798846f, 0.798903f, 0.798961f, 0.799019f, + 0.799076f, 0.799134f, 0.799192f, 0.799249f, 0.799307f, 0.799365f, 0.799422f, 0.799480f, + 0.799537f, 0.799595f, 0.799652f, 0.799710f, 0.799768f, 0.799825f, 0.799883f, 0.799940f, + 0.799998f, 0.800055f, 0.800113f, 0.800170f, 0.800228f, 0.800285f, 0.800343f, 0.800400f, + 0.800458f, 0.800515f, 0.800573f, 0.800630f, 0.800687f, 0.800745f, 0.800802f, 0.800860f, + 0.800917f, 0.800975f, 0.801032f, 0.801089f, 0.801147f, 0.801204f, 0.801261f, 0.801319f, + 0.801376f, 0.801434f, 0.801491f, 0.801548f, 0.801606f, 0.801663f, 0.801720f, 0.801777f, + 0.801835f, 0.801892f, 0.801949f, 0.802007f, 0.802064f, 0.802121f, 0.802178f, 0.802236f, + 0.802293f, 0.802350f, 0.802407f, 0.802464f, 0.802522f, 0.802579f, 0.802636f, 0.802693f, + 0.802750f, 0.802808f, 0.802865f, 0.802922f, 0.802979f, 0.803036f, 0.803093f, 0.803150f, + 0.803208f, 0.803265f, 0.803322f, 0.803379f, 0.803436f, 0.803493f, 0.803550f, 0.803607f, + 0.803664f, 0.803721f, 0.803778f, 0.803835f, 0.803892f, 0.803949f, 0.804006f, 0.804063f, + 0.804120f, 0.804177f, 0.804234f, 0.804291f, 0.804348f, 0.804405f, 0.804462f, 0.804519f, + 0.804576f, 0.804633f, 0.804690f, 0.804747f, 0.804804f, 0.804861f, 0.804918f, 0.804974f, + 0.805031f, 0.805088f, 0.805145f, 0.805202f, 0.805259f, 0.805316f, 0.805372f, 0.805429f, + 0.805486f, 0.805543f, 0.805600f, 0.805656f, 0.805713f, 0.805770f, 0.805827f, 0.805884f, + 0.805940f, 0.805997f, 0.806054f, 0.806111f, 0.806167f, 0.806224f, 0.806281f, 0.806338f, + 0.806394f, 0.806451f, 0.806508f, 0.806564f, 0.806621f, 0.806678f, 0.806734f, 0.806791f, + 0.806848f, 0.806904f, 0.806961f, 0.807017f, 0.807074f, 0.807131f, 0.807187f, 0.807244f, + 0.807300f, 0.807357f, 0.807414f, 0.807470f, 0.807527f, 0.807583f, 0.807640f, 0.807696f, + 0.807753f, 0.807809f, 0.807866f, 0.807922f, 0.807979f, 0.808035f, 0.808092f, 0.808148f, + 0.808205f, 0.808261f, 0.808318f, 0.808374f, 0.808430f, 0.808487f, 0.808543f, 0.808600f, + 0.808656f, 0.808713f, 0.808769f, 0.808825f, 0.808882f, 0.808938f, 0.808994f, 0.809051f, + 0.809107f, 0.809164f, 0.809220f, 0.809276f, 0.809332f, 0.809389f, 0.809445f, 0.809501f, + 0.809558f, 0.809614f, 0.809670f, 0.809726f, 0.809783f, 0.809839f, 0.809895f, 0.809951f, + 0.810008f, 0.810064f, 0.810120f, 0.810176f, 0.810232f, 0.810289f, 0.810345f, 0.810401f, + 0.810457f, 0.810513f, 0.810570f, 0.810626f, 0.810682f, 0.810738f, 0.810794f, 0.810850f, + 0.810906f, 0.810962f, 0.811018f, 0.811075f, 0.811131f, 0.811187f, 0.811243f, 0.811299f, + 0.811355f, 0.811411f, 0.811467f, 0.811523f, 0.811579f, 0.811635f, 0.811691f, 0.811747f, + 0.811803f, 0.811859f, 0.811915f, 0.811971f, 0.812027f, 0.812083f, 0.812139f, 0.812195f, + 0.812251f, 0.812307f, 0.812362f, 0.812418f, 0.812474f, 0.812530f, 0.812586f, 0.812642f, + 0.812698f, 0.812754f, 0.812809f, 0.812865f, 0.812921f, 0.812977f, 0.813033f, 0.813089f, + 0.813144f, 0.813200f, 0.813256f, 0.813312f, 0.813368f, 0.813423f, 0.813479f, 0.813535f, + 0.813591f, 0.813646f, 0.813702f, 0.813758f, 0.813814f, 0.813869f, 0.813925f, 0.813981f, + 0.814036f, 0.814092f, 0.814148f, 0.814203f, 0.814259f, 0.814315f, 0.814370f, 0.814426f, + 0.814482f, 0.814537f, 0.814593f, 0.814648f, 0.814704f, 0.814760f, 0.814815f, 0.814871f, + 0.814926f, 0.814982f, 0.815037f, 0.815093f, 0.815149f, 0.815204f, 0.815260f, 0.815315f, + 0.815371f, 0.815426f, 0.815482f, 0.815537f, 0.815593f, 0.815648f, 0.815704f, 0.815759f, + 0.815814f, 0.815870f, 0.815925f, 0.815981f, 0.816036f, 0.816092f, 0.816147f, 0.816202f, + 0.816258f, 0.816313f, 0.816368f, 0.816424f, 0.816479f, 0.816535f, 0.816590f, 0.816645f, + 0.816701f, 0.816756f, 0.816811f, 0.816867f, 0.816922f, 0.816977f, 0.817032f, 0.817088f, + 0.817143f, 0.817198f, 0.817253f, 0.817309f, 0.817364f, 0.817419f, 0.817474f, 0.817530f, + 0.817585f, 0.817640f, 0.817695f, 0.817750f, 0.817806f, 0.817861f, 0.817916f, 0.817971f, + 0.818026f, 0.818081f, 0.818137f, 0.818192f, 0.818247f, 0.818302f, 0.818357f, 0.818412f, + 0.818467f, 0.818522f, 0.818577f, 0.818632f, 0.818687f, 0.818742f, 0.818798f, 0.818853f, + 0.818908f, 0.818963f, 0.819018f, 0.819073f, 0.819128f, 0.819183f, 0.819238f, 0.819293f, + 0.819348f, 0.819402f, 0.819457f, 0.819512f, 0.819567f, 0.819622f, 0.819677f, 0.819732f, + 0.819787f, 0.819842f, 0.819897f, 0.819952f, 0.820007f, 0.820061f, 0.820116f, 0.820171f, + 0.820226f, 0.820281f, 0.820336f, 0.820390f, 0.820445f, 0.820500f, 0.820555f, 0.820610f, + 0.820664f, 0.820719f, 0.820774f, 0.820829f, 0.820884f, 0.820938f, 0.820993f, 0.821048f, + 0.821102f, 0.821157f, 0.821212f, 0.821267f, 0.821321f, 0.821376f, 0.821431f, 0.821485f, + 0.821540f, 0.821595f, 0.821649f, 0.821704f, 0.821759f, 0.821813f, 0.821868f, 0.821922f, + 0.821977f, 0.822032f, 0.822086f, 0.822141f, 0.822195f, 0.822250f, 0.822305f, 0.822359f, + 0.822414f, 0.822468f, 0.822523f, 0.822577f, 0.822632f, 0.822686f, 0.822741f, 0.822795f, + 0.822850f, 0.822904f, 0.822959f, 0.823013f, 0.823068f, 0.823122f, 0.823177f, 0.823231f, + 0.823285f, 0.823340f, 0.823394f, 0.823449f, 0.823503f, 0.823557f, 0.823612f, 0.823666f, + 0.823721f, 0.823775f, 0.823829f, 0.823884f, 0.823938f, 0.823992f, 0.824047f, 0.824101f, + 0.824155f, 0.824209f, 0.824264f, 0.824318f, 0.824372f, 0.824427f, 0.824481f, 0.824535f, + 0.824589f, 0.824644f, 0.824698f, 0.824752f, 0.824806f, 0.824860f, 0.824915f, 0.824969f, + 0.825023f, 0.825077f, 0.825131f, 0.825185f, 0.825240f, 0.825294f, 0.825348f, 0.825402f, + 0.825456f, 0.825510f, 0.825564f, 0.825618f, 0.825673f, 0.825727f, 0.825781f, 0.825835f, + 0.825889f, 0.825943f, 0.825997f, 0.826051f, 0.826105f, 0.826159f, 0.826213f, 0.826267f, + 0.826321f, 0.826375f, 0.826429f, 0.826483f, 0.826537f, 0.826591f, 0.826645f, 0.826699f, + 0.826753f, 0.826807f, 0.826861f, 0.826915f, 0.826968f, 0.827022f, 0.827076f, 0.827130f, + 0.827184f, 0.827238f, 0.827292f, 0.827346f, 0.827399f, 0.827453f, 0.827507f, 0.827561f, + 0.827615f, 0.827669f, 0.827722f, 0.827776f, 0.827830f, 0.827884f, 0.827938f, 0.827991f, + 0.828045f, 0.828099f, 0.828153f, 0.828206f, 0.828260f, 0.828314f, 0.828367f, 0.828421f, + 0.828475f, 0.828529f, 0.828582f, 0.828636f, 0.828690f, 0.828743f, 0.828797f, 0.828851f, + 0.828904f, 0.828958f, 0.829011f, 0.829065f, 0.829119f, 0.829172f, 0.829226f, 0.829279f, + 0.829333f, 0.829386f, 0.829440f, 0.829494f, 0.829547f, 0.829601f, 0.829654f, 0.829708f, + 0.829761f, 0.829815f, 0.829868f, 0.829922f, 0.829975f, 0.830029f, 0.830082f, 0.830136f, + 0.830189f, 0.830243f, 0.830296f, 0.830349f, 0.830403f, 0.830456f, 0.830510f, 0.830563f, + 0.830616f, 0.830670f, 0.830723f, 0.830777f, 0.830830f, 0.830883f, 0.830937f, 0.830990f, + 0.831043f, 0.831097f, 0.831150f, 0.831203f, 0.831257f, 0.831310f, 0.831363f, 0.831416f, + 0.831470f, 0.831523f, 0.831576f, 0.831629f, 0.831683f, 0.831736f, 0.831789f, 0.831842f, + 0.831895f, 0.831949f, 0.832002f, 0.832055f, 0.832108f, 0.832161f, 0.832215f, 0.832268f, + 0.832321f, 0.832374f, 0.832427f, 0.832480f, 0.832533f, 0.832586f, 0.832640f, 0.832693f, + 0.832746f, 0.832799f, 0.832852f, 0.832905f, 0.832958f, 0.833011f, 0.833064f, 0.833117f, + 0.833170f, 0.833223f, 0.833276f, 0.833329f, 0.833382f, 0.833435f, 0.833488f, 0.833541f, + 0.833594f, 0.833647f, 0.833700f, 0.833753f, 0.833806f, 0.833859f, 0.833912f, 0.833965f, + 0.834018f, 0.834070f, 0.834123f, 0.834176f, 0.834229f, 0.834282f, 0.834335f, 0.834388f, + 0.834440f, 0.834493f, 0.834546f, 0.834599f, 0.834652f, 0.834705f, 0.834757f, 0.834810f, + 0.834863f, 0.834916f, 0.834968f, 0.835021f, 0.835074f, 0.835127f, 0.835179f, 0.835232f, + 0.835285f, 0.835338f, 0.835390f, 0.835443f, 0.835496f, 0.835548f, 0.835601f, 0.835654f, + 0.835706f, 0.835759f, 0.835812f, 0.835864f, 0.835917f, 0.835969f, 0.836022f, 0.836075f, + 0.836127f, 0.836180f, 0.836232f, 0.836285f, 0.836338f, 0.836390f, 0.836443f, 0.836495f, + 0.836548f, 0.836600f, 0.836653f, 0.836705f, 0.836758f, 0.836810f, 0.836863f, 0.836915f, + 0.836968f, 0.837020f, 0.837073f, 0.837125f, 0.837178f, 0.837230f, 0.837282f, 0.837335f, + 0.837387f, 0.837440f, 0.837492f, 0.837544f, 0.837597f, 0.837649f, 0.837701f, 0.837754f, + 0.837806f, 0.837859f, 0.837911f, 0.837963f, 0.838015f, 0.838068f, 0.838120f, 0.838172f, + 0.838225f, 0.838277f, 0.838329f, 0.838382f, 0.838434f, 0.838486f, 0.838538f, 0.838591f, + 0.838643f, 0.838695f, 0.838747f, 0.838799f, 0.838852f, 0.838904f, 0.838956f, 0.839008f, + 0.839060f, 0.839112f, 0.839165f, 0.839217f, 0.839269f, 0.839321f, 0.839373f, 0.839425f, + 0.839477f, 0.839529f, 0.839581f, 0.839634f, 0.839686f, 0.839738f, 0.839790f, 0.839842f, + 0.839894f, 0.839946f, 0.839998f, 0.840050f, 0.840102f, 0.840154f, 0.840206f, 0.840258f, + 0.840310f, 0.840362f, 0.840414f, 0.840466f, 0.840518f, 0.840570f, 0.840622f, 0.840673f, + 0.840725f, 0.840777f, 0.840829f, 0.840881f, 0.840933f, 0.840985f, 0.841037f, 0.841089f, + 0.841140f, 0.841192f, 0.841244f, 0.841296f, 0.841348f, 0.841400f, 0.841451f, 0.841503f, + 0.841555f, 0.841607f, 0.841659f, 0.841710f, 0.841762f, 0.841814f, 0.841866f, 0.841917f, + 0.841969f, 0.842021f, 0.842072f, 0.842124f, 0.842176f, 0.842228f, 0.842279f, 0.842331f, + 0.842383f, 0.842434f, 0.842486f, 0.842538f, 0.842589f, 0.842641f, 0.842692f, 0.842744f, + 0.842796f, 0.842847f, 0.842899f, 0.842950f, 0.843002f, 0.843054f, 0.843105f, 0.843157f, + 0.843208f, 0.843260f, 0.843311f, 0.843363f, 0.843414f, 0.843466f, 0.843517f, 0.843569f, + 0.843620f, 0.843672f, 0.843723f, 0.843775f, 0.843826f, 0.843878f, 0.843929f, 0.843980f, + 0.844032f, 0.844083f, 0.844135f, 0.844186f, 0.844238f, 0.844289f, 0.844340f, 0.844392f, + 0.844443f, 0.844494f, 0.844546f, 0.844597f, 0.844648f, 0.844700f, 0.844751f, 0.844802f, + 0.844854f, 0.844905f, 0.844956f, 0.845007f, 0.845059f, 0.845110f, 0.845161f, 0.845212f, + 0.845264f, 0.845315f, 0.845366f, 0.845417f, 0.845469f, 0.845520f, 0.845571f, 0.845622f, + 0.845673f, 0.845724f, 0.845776f, 0.845827f, 0.845878f, 0.845929f, 0.845980f, 0.846031f, + 0.846082f, 0.846133f, 0.846185f, 0.846236f, 0.846287f, 0.846338f, 0.846389f, 0.846440f, + 0.846491f, 0.846542f, 0.846593f, 0.846644f, 0.846695f, 0.846746f, 0.846797f, 0.846848f, + 0.846899f, 0.846950f, 0.847001f, 0.847052f, 0.847103f, 0.847154f, 0.847205f, 0.847256f, + 0.847307f, 0.847358f, 0.847408f, 0.847459f, 0.847510f, 0.847561f, 0.847612f, 0.847663f, + 0.847714f, 0.847765f, 0.847815f, 0.847866f, 0.847917f, 0.847968f, 0.848019f, 0.848070f, + 0.848120f, 0.848171f, 0.848222f, 0.848273f, 0.848323f, 0.848374f, 0.848425f, 0.848476f, + 0.848526f, 0.848577f, 0.848628f, 0.848679f, 0.848729f, 0.848780f, 0.848831f, 0.848881f, + 0.848932f, 0.848983f, 0.849033f, 0.849084f, 0.849135f, 0.849185f, 0.849236f, 0.849287f, + 0.849337f, 0.849388f, 0.849438f, 0.849489f, 0.849540f, 0.849590f, 0.849641f, 0.849691f, + 0.849742f, 0.849792f, 0.849843f, 0.849893f, 0.849944f, 0.849994f, 0.850045f, 0.850095f, + 0.850146f, 0.850196f, 0.850247f, 0.850297f, 0.850348f, 0.850398f, 0.850449f, 0.850499f, + 0.850549f, 0.850600f, 0.850650f, 0.850701f, 0.850751f, 0.850801f, 0.850852f, 0.850902f, + 0.850953f, 0.851003f, 0.851053f, 0.851104f, 0.851154f, 0.851204f, 0.851255f, 0.851305f, + 0.851355f, 0.851406f, 0.851456f, 0.851506f, 0.851556f, 0.851607f, 0.851657f, 0.851707f, + 0.851757f, 0.851808f, 0.851858f, 0.851908f, 0.851958f, 0.852008f, 0.852059f, 0.852109f, + 0.852159f, 0.852209f, 0.852259f, 0.852309f, 0.852360f, 0.852410f, 0.852460f, 0.852510f, + 0.852560f, 0.852610f, 0.852660f, 0.852710f, 0.852760f, 0.852810f, 0.852861f, 0.852911f, + 0.852961f, 0.853011f, 0.853061f, 0.853111f, 0.853161f, 0.853211f, 0.853261f, 0.853311f, + 0.853361f, 0.853411f, 0.853461f, 0.853511f, 0.853561f, 0.853611f, 0.853660f, 0.853710f, + 0.853760f, 0.853810f, 0.853860f, 0.853910f, 0.853960f, 0.854010f, 0.854060f, 0.854110f, + 0.854159f, 0.854209f, 0.854259f, 0.854309f, 0.854359f, 0.854409f, 0.854458f, 0.854508f, + 0.854558f, 0.854608f, 0.854658f, 0.854707f, 0.854757f, 0.854807f, 0.854857f, 0.854906f, + 0.854956f, 0.855006f, 0.855056f, 0.855105f, 0.855155f, 0.855205f, 0.855254f, 0.855304f, + 0.855354f, 0.855403f, 0.855453f, 0.855503f, 0.855552f, 0.855602f, 0.855651f, 0.855701f, + 0.855751f, 0.855800f, 0.855850f, 0.855900f, 0.855949f, 0.855999f, 0.856048f, 0.856098f, + 0.856147f, 0.856197f, 0.856246f, 0.856296f, 0.856345f, 0.856395f, 0.856444f, 0.856494f, + 0.856543f, 0.856593f, 0.856642f, 0.856692f, 0.856741f, 0.856791f, 0.856840f, 0.856890f, + 0.856939f, 0.856988f, 0.857038f, 0.857087f, 0.857137f, 0.857186f, 0.857235f, 0.857285f, + 0.857334f, 0.857383f, 0.857433f, 0.857482f, 0.857531f, 0.857581f, 0.857630f, 0.857679f, + 0.857729f, 0.857778f, 0.857827f, 0.857876f, 0.857926f, 0.857975f, 0.858024f, 0.858073f, + 0.858123f, 0.858172f, 0.858221f, 0.858270f, 0.858320f, 0.858369f, 0.858418f, 0.858467f, + 0.858516f, 0.858565f, 0.858615f, 0.858664f, 0.858713f, 0.858762f, 0.858811f, 0.858860f, + 0.858909f, 0.858958f, 0.859007f, 0.859057f, 0.859106f, 0.859155f, 0.859204f, 0.859253f, + 0.859302f, 0.859351f, 0.859400f, 0.859449f, 0.859498f, 0.859547f, 0.859596f, 0.859645f, + 0.859694f, 0.859743f, 0.859792f, 0.859841f, 0.859890f, 0.859939f, 0.859988f, 0.860036f, + 0.860085f, 0.860134f, 0.860183f, 0.860232f, 0.860281f, 0.860330f, 0.860379f, 0.860428f, + 0.860476f, 0.860525f, 0.860574f, 0.860623f, 0.860672f, 0.860721f, 0.860769f, 0.860818f, + 0.860867f, 0.860916f, 0.860964f, 0.861013f, 0.861062f, 0.861111f, 0.861160f, 0.861208f, + 0.861257f, 0.861306f, 0.861354f, 0.861403f, 0.861452f, 0.861500f, 0.861549f, 0.861598f, + 0.861646f, 0.861695f, 0.861744f, 0.861792f, 0.861841f, 0.861890f, 0.861938f, 0.861987f, + 0.862035f, 0.862084f, 0.862133f, 0.862181f, 0.862230f, 0.862278f, 0.862327f, 0.862375f, + 0.862424f, 0.862472f, 0.862521f, 0.862570f, 0.862618f, 0.862666f, 0.862715f, 0.862763f, + 0.862812f, 0.862860f, 0.862909f, 0.862957f, 0.863006f, 0.863054f, 0.863103f, 0.863151f, + 0.863199f, 0.863248f, 0.863296f, 0.863345f, 0.863393f, 0.863441f, 0.863490f, 0.863538f, + 0.863586f, 0.863635f, 0.863683f, 0.863731f, 0.863780f, 0.863828f, 0.863876f, 0.863925f, + 0.863973f, 0.864021f, 0.864069f, 0.864118f, 0.864166f, 0.864214f, 0.864262f, 0.864311f, + 0.864359f, 0.864407f, 0.864455f, 0.864503f, 0.864552f, 0.864600f, 0.864648f, 0.864696f, + 0.864744f, 0.864792f, 0.864841f, 0.864889f, 0.864937f, 0.864985f, 0.865033f, 0.865081f, + 0.865129f, 0.865177f, 0.865225f, 0.865273f, 0.865321f, 0.865369f, 0.865418f, 0.865466f, + 0.865514f, 0.865562f, 0.865610f, 0.865658f, 0.865706f, 0.865754f, 0.865802f, 0.865850f, + 0.865898f, 0.865946f, 0.865993f, 0.866041f, 0.866089f, 0.866137f, 0.866185f, 0.866233f, + 0.866281f, 0.866329f, 0.866377f, 0.866425f, 0.866472f, 0.866520f, 0.866568f, 0.866616f, + 0.866664f, 0.866712f, 0.866759f, 0.866807f, 0.866855f, 0.866903f, 0.866951f, 0.866998f, + 0.867046f, 0.867094f, 0.867142f, 0.867190f, 0.867237f, 0.867285f, 0.867333f, 0.867380f, + 0.867428f, 0.867476f, 0.867523f, 0.867571f, 0.867619f, 0.867667f, 0.867714f, 0.867762f, + 0.867809f, 0.867857f, 0.867905f, 0.867952f, 0.868000f, 0.868048f, 0.868095f, 0.868143f, + 0.868190f, 0.868238f, 0.868285f, 0.868333f, 0.868381f, 0.868428f, 0.868476f, 0.868523f, + 0.868571f, 0.868618f, 0.868666f, 0.868713f, 0.868761f, 0.868808f, 0.868856f, 0.868903f, + 0.868951f, 0.868998f, 0.869045f, 0.869093f, 0.869140f, 0.869188f, 0.869235f, 0.869282f, + 0.869330f, 0.869377f, 0.869425f, 0.869472f, 0.869519f, 0.869567f, 0.869614f, 0.869661f, + 0.869709f, 0.869756f, 0.869803f, 0.869851f, 0.869898f, 0.869945f, 0.869992f, 0.870040f, + 0.870087f, 0.870134f, 0.870182f, 0.870229f, 0.870276f, 0.870323f, 0.870370f, 0.870418f, + 0.870465f, 0.870512f, 0.870559f, 0.870606f, 0.870654f, 0.870701f, 0.870748f, 0.870795f, + 0.870842f, 0.870889f, 0.870936f, 0.870983f, 0.871031f, 0.871078f, 0.871125f, 0.871172f, + 0.871219f, 0.871266f, 0.871313f, 0.871360f, 0.871407f, 0.871454f, 0.871501f, 0.871548f, + 0.871595f, 0.871642f, 0.871689f, 0.871736f, 0.871783f, 0.871830f, 0.871877f, 0.871924f, + 0.871971f, 0.872018f, 0.872065f, 0.872112f, 0.872159f, 0.872205f, 0.872252f, 0.872299f, + 0.872346f, 0.872393f, 0.872440f, 0.872487f, 0.872534f, 0.872580f, 0.872627f, 0.872674f, + 0.872721f, 0.872768f, 0.872814f, 0.872861f, 0.872908f, 0.872955f, 0.873001f, 0.873048f, + 0.873095f, 0.873142f, 0.873188f, 0.873235f, 0.873282f, 0.873329f, 0.873375f, 0.873422f, + 0.873469f, 0.873515f, 0.873562f, 0.873609f, 0.873655f, 0.873702f, 0.873749f, 0.873795f, + 0.873842f, 0.873888f, 0.873935f, 0.873982f, 0.874028f, 0.874075f, 0.874121f, 0.874168f, + 0.874215f, 0.874261f, 0.874308f, 0.874354f, 0.874401f, 0.874447f, 0.874494f, 0.874540f, + 0.874587f, 0.874633f, 0.874680f, 0.874726f, 0.874773f, 0.874819f, 0.874865f, 0.874912f, + 0.874958f, 0.875005f, 0.875051f, 0.875098f, 0.875144f, 0.875190f, 0.875237f, 0.875283f, + 0.875329f, 0.875376f, 0.875422f, 0.875468f, 0.875515f, 0.875561f, 0.875607f, 0.875654f, + 0.875700f, 0.875746f, 0.875793f, 0.875839f, 0.875885f, 0.875931f, 0.875978f, 0.876024f, + 0.876070f, 0.876116f, 0.876163f, 0.876209f, 0.876255f, 0.876301f, 0.876347f, 0.876393f, + 0.876440f, 0.876486f, 0.876532f, 0.876578f, 0.876624f, 0.876670f, 0.876716f, 0.876763f, + 0.876809f, 0.876855f, 0.876901f, 0.876947f, 0.876993f, 0.877039f, 0.877085f, 0.877131f, + 0.877177f, 0.877223f, 0.877269f, 0.877315f, 0.877361f, 0.877407f, 0.877453f, 0.877499f, + 0.877545f, 0.877591f, 0.877637f, 0.877683f, 0.877729f, 0.877775f, 0.877821f, 0.877867f, + 0.877913f, 0.877959f, 0.878005f, 0.878051f, 0.878096f, 0.878142f, 0.878188f, 0.878234f, + 0.878280f, 0.878326f, 0.878371f, 0.878417f, 0.878463f, 0.878509f, 0.878555f, 0.878600f, + 0.878646f, 0.878692f, 0.878738f, 0.878784f, 0.878829f, 0.878875f, 0.878921f, 0.878967f, + 0.879012f, 0.879058f, 0.879104f, 0.879149f, 0.879195f, 0.879241f, 0.879286f, 0.879332f, + 0.879378f, 0.879423f, 0.879469f, 0.879515f, 0.879560f, 0.879606f, 0.879651f, 0.879697f, + 0.879743f, 0.879788f, 0.879834f, 0.879879f, 0.879925f, 0.879970f, 0.880016f, 0.880061f, + 0.880107f, 0.880153f, 0.880198f, 0.880244f, 0.880289f, 0.880334f, 0.880380f, 0.880425f, + 0.880471f, 0.880516f, 0.880562f, 0.880607f, 0.880653f, 0.880698f, 0.880743f, 0.880789f, + 0.880834f, 0.880880f, 0.880925f, 0.880970f, 0.881016f, 0.881061f, 0.881106f, 0.881152f, + 0.881197f, 0.881242f, 0.881288f, 0.881333f, 0.881378f, 0.881424f, 0.881469f, 0.881514f, + 0.881559f, 0.881605f, 0.881650f, 0.881695f, 0.881740f, 0.881786f, 0.881831f, 0.881876f, + 0.881921f, 0.881966f, 0.882012f, 0.882057f, 0.882102f, 0.882147f, 0.882192f, 0.882237f, + 0.882283f, 0.882328f, 0.882373f, 0.882418f, 0.882463f, 0.882508f, 0.882553f, 0.882598f, + 0.882643f, 0.882688f, 0.882733f, 0.882779f, 0.882824f, 0.882869f, 0.882914f, 0.882959f, + 0.883004f, 0.883049f, 0.883094f, 0.883139f, 0.883184f, 0.883228f, 0.883273f, 0.883318f, + 0.883363f, 0.883408f, 0.883453f, 0.883498f, 0.883543f, 0.883588f, 0.883633f, 0.883678f, + 0.883723f, 0.883767f, 0.883812f, 0.883857f, 0.883902f, 0.883947f, 0.883992f, 0.884036f, + 0.884081f, 0.884126f, 0.884171f, 0.884216f, 0.884260f, 0.884305f, 0.884350f, 0.884395f, + 0.884439f, 0.884484f, 0.884529f, 0.884574f, 0.884618f, 0.884663f, 0.884708f, 0.884752f, + 0.884797f, 0.884842f, 0.884886f, 0.884931f, 0.884976f, 0.885020f, 0.885065f, 0.885110f, + 0.885154f, 0.885199f, 0.885243f, 0.885288f, 0.885333f, 0.885377f, 0.885422f, 0.885466f, + 0.885511f, 0.885555f, 0.885600f, 0.885644f, 0.885689f, 0.885733f, 0.885778f, 0.885822f, + 0.885867f, 0.885911f, 0.885956f, 0.886000f, 0.886045f, 0.886089f, 0.886134f, 0.886178f, + 0.886223f, 0.886267f, 0.886311f, 0.886356f, 0.886400f, 0.886445f, 0.886489f, 0.886533f, + 0.886578f, 0.886622f, 0.886666f, 0.886711f, 0.886755f, 0.886799f, 0.886844f, 0.886888f, + 0.886932f, 0.886976f, 0.887021f, 0.887065f, 0.887109f, 0.887153f, 0.887198f, 0.887242f, + 0.887286f, 0.887330f, 0.887375f, 0.887419f, 0.887463f, 0.887507f, 0.887551f, 0.887595f, + 0.887640f, 0.887684f, 0.887728f, 0.887772f, 0.887816f, 0.887860f, 0.887904f, 0.887949f, + 0.887993f, 0.888037f, 0.888081f, 0.888125f, 0.888169f, 0.888213f, 0.888257f, 0.888301f, + 0.888345f, 0.888389f, 0.888433f, 0.888477f, 0.888521f, 0.888565f, 0.888609f, 0.888653f, + 0.888697f, 0.888741f, 0.888785f, 0.888829f, 0.888873f, 0.888917f, 0.888961f, 0.889004f, + 0.889048f, 0.889092f, 0.889136f, 0.889180f, 0.889224f, 0.889268f, 0.889312f, 0.889355f, + 0.889399f, 0.889443f, 0.889487f, 0.889531f, 0.889574f, 0.889618f, 0.889662f, 0.889706f, + 0.889750f, 0.889793f, 0.889837f, 0.889881f, 0.889925f, 0.889968f, 0.890012f, 0.890056f, + 0.890099f, 0.890143f, 0.890187f, 0.890230f, 0.890274f, 0.890318f, 0.890361f, 0.890405f, + 0.890449f, 0.890492f, 0.890536f, 0.890580f, 0.890623f, 0.890667f, 0.890710f, 0.890754f, + 0.890797f, 0.890841f, 0.890885f, 0.890928f, 0.890972f, 0.891015f, 0.891059f, 0.891102f, + 0.891146f, 0.891189f, 0.891233f, 0.891276f, 0.891320f, 0.891363f, 0.891407f, 0.891450f, + 0.891493f, 0.891537f, 0.891580f, 0.891624f, 0.891667f, 0.891711f, 0.891754f, 0.891797f, + 0.891841f, 0.891884f, 0.891927f, 0.891971f, 0.892014f, 0.892057f, 0.892101f, 0.892144f, + 0.892187f, 0.892231f, 0.892274f, 0.892317f, 0.892361f, 0.892404f, 0.892447f, 0.892490f, + 0.892534f, 0.892577f, 0.892620f, 0.892663f, 0.892706f, 0.892750f, 0.892793f, 0.892836f, + 0.892879f, 0.892922f, 0.892965f, 0.893009f, 0.893052f, 0.893095f, 0.893138f, 0.893181f, + 0.893224f, 0.893267f, 0.893310f, 0.893354f, 0.893397f, 0.893440f, 0.893483f, 0.893526f, + 0.893569f, 0.893612f, 0.893655f, 0.893698f, 0.893741f, 0.893784f, 0.893827f, 0.893870f, + 0.893913f, 0.893956f, 0.893999f, 0.894042f, 0.894085f, 0.894128f, 0.894171f, 0.894214f, + 0.894256f, 0.894299f, 0.894342f, 0.894385f, 0.894428f, 0.894471f, 0.894514f, 0.894557f, + 0.894599f, 0.894642f, 0.894685f, 0.894728f, 0.894771f, 0.894814f, 0.894856f, 0.894899f, + 0.894942f, 0.894985f, 0.895028f, 0.895070f, 0.895113f, 0.895156f, 0.895198f, 0.895241f, + 0.895284f, 0.895327f, 0.895369f, 0.895412f, 0.895455f, 0.895497f, 0.895540f, 0.895583f, + 0.895625f, 0.895668f, 0.895711f, 0.895753f, 0.895796f, 0.895838f, 0.895881f, 0.895924f, + 0.895966f, 0.896009f, 0.896051f, 0.896094f, 0.896137f, 0.896179f, 0.896222f, 0.896264f, + 0.896307f, 0.896349f, 0.896392f, 0.896434f, 0.896477f, 0.896519f, 0.896562f, 0.896604f, + 0.896646f, 0.896689f, 0.896731f, 0.896774f, 0.896816f, 0.896859f, 0.896901f, 0.896943f, + 0.896986f, 0.897028f, 0.897071f, 0.897113f, 0.897155f, 0.897198f, 0.897240f, 0.897282f, + 0.897325f, 0.897367f, 0.897409f, 0.897452f, 0.897494f, 0.897536f, 0.897578f, 0.897621f, + 0.897663f, 0.897705f, 0.897747f, 0.897790f, 0.897832f, 0.897874f, 0.897916f, 0.897958f, + 0.898001f, 0.898043f, 0.898085f, 0.898127f, 0.898169f, 0.898211f, 0.898254f, 0.898296f, + 0.898338f, 0.898380f, 0.898422f, 0.898464f, 0.898506f, 0.898548f, 0.898590f, 0.898632f, + 0.898674f, 0.898717f, 0.898759f, 0.898801f, 0.898843f, 0.898885f, 0.898927f, 0.898969f, + 0.899011f, 0.899053f, 0.899095f, 0.899137f, 0.899179f, 0.899220f, 0.899262f, 0.899304f, + 0.899346f, 0.899388f, 0.899430f, 0.899472f, 0.899514f, 0.899556f, 0.899598f, 0.899639f, + 0.899681f, 0.899723f, 0.899765f, 0.899807f, 0.899849f, 0.899890f, 0.899932f, 0.899974f, + 0.900016f, 0.900058f, 0.900099f, 0.900141f, 0.900183f, 0.900225f, 0.900266f, 0.900308f, + 0.900350f, 0.900392f, 0.900433f, 0.900475f, 0.900517f, 0.900558f, 0.900600f, 0.900642f, + 0.900683f, 0.900725f, 0.900767f, 0.900808f, 0.900850f, 0.900892f, 0.900933f, 0.900975f, + 0.901016f, 0.901058f, 0.901100f, 0.901141f, 0.901183f, 0.901224f, 0.901266f, 0.901307f, + 0.901349f, 0.901390f, 0.901432f, 0.901473f, 0.901515f, 0.901556f, 0.901598f, 0.901639f, + 0.901681f, 0.901722f, 0.901764f, 0.901805f, 0.901847f, 0.901888f, 0.901929f, 0.901971f, + 0.902012f, 0.902054f, 0.902095f, 0.902136f, 0.902178f, 0.902219f, 0.902260f, 0.902302f, + 0.902343f, 0.902384f, 0.902426f, 0.902467f, 0.902508f, 0.902550f, 0.902591f, 0.902632f, + 0.902673f, 0.902715f, 0.902756f, 0.902797f, 0.902838f, 0.902879f, 0.902921f, 0.902962f, + 0.903003f, 0.903044f, 0.903085f, 0.903127f, 0.903168f, 0.903209f, 0.903250f, 0.903291f, + 0.903332f, 0.903373f, 0.903415f, 0.903456f, 0.903497f, 0.903538f, 0.903579f, 0.903620f, + 0.903661f, 0.903702f, 0.903743f, 0.903784f, 0.903825f, 0.903866f, 0.903907f, 0.903948f, + 0.903989f, 0.904030f, 0.904071f, 0.904112f, 0.904153f, 0.904194f, 0.904235f, 0.904276f, + 0.904317f, 0.904358f, 0.904399f, 0.904440f, 0.904481f, 0.904521f, 0.904562f, 0.904603f, + 0.904644f, 0.904685f, 0.904726f, 0.904767f, 0.904807f, 0.904848f, 0.904889f, 0.904930f, + 0.904971f, 0.905011f, 0.905052f, 0.905093f, 0.905134f, 0.905175f, 0.905215f, 0.905256f, + 0.905297f, 0.905337f, 0.905378f, 0.905419f, 0.905460f, 0.905500f, 0.905541f, 0.905582f, + 0.905622f, 0.905663f, 0.905704f, 0.905744f, 0.905785f, 0.905825f, 0.905866f, 0.905907f, + 0.905947f, 0.905988f, 0.906028f, 0.906069f, 0.906110f, 0.906150f, 0.906191f, 0.906231f, + 0.906272f, 0.906312f, 0.906353f, 0.906393f, 0.906434f, 0.906474f, 0.906515f, 0.906555f, + 0.906596f, 0.906636f, 0.906677f, 0.906717f, 0.906757f, 0.906798f, 0.906838f, 0.906879f, + 0.906919f, 0.906959f, 0.907000f, 0.907040f, 0.907081f, 0.907121f, 0.907161f, 0.907202f, + 0.907242f, 0.907282f, 0.907323f, 0.907363f, 0.907403f, 0.907444f, 0.907484f, 0.907524f, + 0.907564f, 0.907605f, 0.907645f, 0.907685f, 0.907725f, 0.907766f, 0.907806f, 0.907846f, + 0.907886f, 0.907926f, 0.907966f, 0.908007f, 0.908047f, 0.908087f, 0.908127f, 0.908167f, + 0.908207f, 0.908248f, 0.908288f, 0.908328f, 0.908368f, 0.908408f, 0.908448f, 0.908488f, + 0.908528f, 0.908568f, 0.908608f, 0.908648f, 0.908688f, 0.908728f, 0.908768f, 0.908808f, + 0.908848f, 0.908888f, 0.908928f, 0.908968f, 0.909008f, 0.909048f, 0.909088f, 0.909128f, + 0.909168f, 0.909208f, 0.909248f, 0.909288f, 0.909328f, 0.909368f, 0.909407f, 0.909447f, + 0.909487f, 0.909527f, 0.909567f, 0.909607f, 0.909646f, 0.909686f, 0.909726f, 0.909766f, + 0.909806f, 0.909845f, 0.909885f, 0.909925f, 0.909965f, 0.910005f, 0.910044f, 0.910084f, + 0.910124f, 0.910163f, 0.910203f, 0.910243f, 0.910283f, 0.910322f, 0.910362f, 0.910402f, + 0.910441f, 0.910481f, 0.910521f, 0.910560f, 0.910600f, 0.910639f, 0.910679f, 0.910719f, + 0.910758f, 0.910798f, 0.910837f, 0.910877f, 0.910917f, 0.910956f, 0.910996f, 0.911035f, + 0.911075f, 0.911114f, 0.911154f, 0.911193f, 0.911233f, 0.911272f, 0.911312f, 0.911351f, + 0.911391f, 0.911430f, 0.911470f, 0.911509f, 0.911548f, 0.911588f, 0.911627f, 0.911667f, + 0.911706f, 0.911745f, 0.911785f, 0.911824f, 0.911864f, 0.911903f, 0.911942f, 0.911982f, + 0.912021f, 0.912060f, 0.912099f, 0.912139f, 0.912178f, 0.912217f, 0.912257f, 0.912296f, + 0.912335f, 0.912374f, 0.912414f, 0.912453f, 0.912492f, 0.912531f, 0.912571f, 0.912610f, + 0.912649f, 0.912688f, 0.912727f, 0.912766f, 0.912806f, 0.912845f, 0.912884f, 0.912923f, + 0.912962f, 0.913001f, 0.913040f, 0.913080f, 0.913119f, 0.913158f, 0.913197f, 0.913236f, + 0.913275f, 0.913314f, 0.913353f, 0.913392f, 0.913431f, 0.913470f, 0.913509f, 0.913548f, + 0.913587f, 0.913626f, 0.913665f, 0.913704f, 0.913743f, 0.913782f, 0.913821f, 0.913860f, + 0.913899f, 0.913938f, 0.913976f, 0.914015f, 0.914054f, 0.914093f, 0.914132f, 0.914171f, + 0.914210f, 0.914249f, 0.914287f, 0.914326f, 0.914365f, 0.914404f, 0.914443f, 0.914482f, + 0.914520f, 0.914559f, 0.914598f, 0.914637f, 0.914675f, 0.914714f, 0.914753f, 0.914792f, + 0.914830f, 0.914869f, 0.914908f, 0.914946f, 0.914985f, 0.915024f, 0.915062f, 0.915101f, + 0.915140f, 0.915178f, 0.915217f, 0.915256f, 0.915294f, 0.915333f, 0.915372f, 0.915410f, + 0.915449f, 0.915487f, 0.915526f, 0.915564f, 0.915603f, 0.915642f, 0.915680f, 0.915719f, + 0.915757f, 0.915796f, 0.915834f, 0.915873f, 0.915911f, 0.915950f, 0.915988f, 0.916027f, + 0.916065f, 0.916103f, 0.916142f, 0.916180f, 0.916219f, 0.916257f, 0.916296f, 0.916334f, + 0.916372f, 0.916411f, 0.916449f, 0.916487f, 0.916526f, 0.916564f, 0.916602f, 0.916641f, + 0.916679f, 0.916717f, 0.916756f, 0.916794f, 0.916832f, 0.916871f, 0.916909f, 0.916947f, + 0.916985f, 0.917024f, 0.917062f, 0.917100f, 0.917138f, 0.917176f, 0.917215f, 0.917253f, + 0.917291f, 0.917329f, 0.917367f, 0.917405f, 0.917444f, 0.917482f, 0.917520f, 0.917558f, + 0.917596f, 0.917634f, 0.917672f, 0.917710f, 0.917749f, 0.917787f, 0.917825f, 0.917863f, + 0.917901f, 0.917939f, 0.917977f, 0.918015f, 0.918053f, 0.918091f, 0.918129f, 0.918167f, + 0.918205f, 0.918243f, 0.918281f, 0.918319f, 0.918357f, 0.918395f, 0.918433f, 0.918471f, + 0.918508f, 0.918546f, 0.918584f, 0.918622f, 0.918660f, 0.918698f, 0.918736f, 0.918774f, + 0.918811f, 0.918849f, 0.918887f, 0.918925f, 0.918963f, 0.919001f, 0.919038f, 0.919076f, + 0.919114f, 0.919152f, 0.919189f, 0.919227f, 0.919265f, 0.919303f, 0.919340f, 0.919378f, + 0.919416f, 0.919453f, 0.919491f, 0.919529f, 0.919567f, 0.919604f, 0.919642f, 0.919680f, + 0.919717f, 0.919755f, 0.919792f, 0.919830f, 0.919868f, 0.919905f, 0.919943f, 0.919980f, + 0.920018f, 0.920056f, 0.920093f, 0.920131f, 0.920168f, 0.920206f, 0.920243f, 0.920281f, + 0.920318f, 0.920356f, 0.920393f, 0.920431f, 0.920468f, 0.920506f, 0.920543f, 0.920581f, + 0.920618f, 0.920655f, 0.920693f, 0.920730f, 0.920768f, 0.920805f, 0.920842f, 0.920880f, + 0.920917f, 0.920955f, 0.920992f, 0.921029f, 0.921067f, 0.921104f, 0.921141f, 0.921179f, + 0.921216f, 0.921253f, 0.921291f, 0.921328f, 0.921365f, 0.921402f, 0.921440f, 0.921477f, + 0.921514f, 0.921551f, 0.921588f, 0.921626f, 0.921663f, 0.921700f, 0.921737f, 0.921774f, + 0.921812f, 0.921849f, 0.921886f, 0.921923f, 0.921960f, 0.921997f, 0.922034f, 0.922072f, + 0.922109f, 0.922146f, 0.922183f, 0.922220f, 0.922257f, 0.922294f, 0.922331f, 0.922368f, + 0.922405f, 0.922442f, 0.922479f, 0.922516f, 0.922553f, 0.922590f, 0.922627f, 0.922664f, + 0.922701f, 0.922738f, 0.922775f, 0.922812f, 0.922849f, 0.922886f, 0.922923f, 0.922960f, + 0.922997f, 0.923033f, 0.923070f, 0.923107f, 0.923144f, 0.923181f, 0.923218f, 0.923255f, + 0.923291f, 0.923328f, 0.923365f, 0.923402f, 0.923439f, 0.923475f, 0.923512f, 0.923549f, + 0.923586f, 0.923622f, 0.923659f, 0.923696f, 0.923733f, 0.923769f, 0.923806f, 0.923843f, + 0.923880f, 0.923916f, 0.923953f, 0.923990f, 0.924026f, 0.924063f, 0.924100f, 0.924136f, + 0.924173f, 0.924209f, 0.924246f, 0.924283f, 0.924319f, 0.924356f, 0.924392f, 0.924429f, + 0.924465f, 0.924502f, 0.924539f, 0.924575f, 0.924612f, 0.924648f, 0.924685f, 0.924721f, + 0.924758f, 0.924794f, 0.924831f, 0.924867f, 0.924904f, 0.924940f, 0.924976f, 0.925013f, + 0.925049f, 0.925086f, 0.925122f, 0.925158f, 0.925195f, 0.925231f, 0.925268f, 0.925304f, + 0.925340f, 0.925377f, 0.925413f, 0.925449f, 0.925486f, 0.925522f, 0.925558f, 0.925595f, + 0.925631f, 0.925667f, 0.925703f, 0.925740f, 0.925776f, 0.925812f, 0.925848f, 0.925885f, + 0.925921f, 0.925957f, 0.925993f, 0.926029f, 0.926066f, 0.926102f, 0.926138f, 0.926174f, + 0.926210f, 0.926246f, 0.926283f, 0.926319f, 0.926355f, 0.926391f, 0.926427f, 0.926463f, + 0.926499f, 0.926535f, 0.926571f, 0.926607f, 0.926643f, 0.926679f, 0.926715f, 0.926751f, + 0.926787f, 0.926823f, 0.926859f, 0.926895f, 0.926931f, 0.926967f, 0.927003f, 0.927039f, + 0.927075f, 0.927111f, 0.927147f, 0.927183f, 0.927219f, 0.927255f, 0.927291f, 0.927327f, + 0.927363f, 0.927398f, 0.927434f, 0.927470f, 0.927506f, 0.927542f, 0.927578f, 0.927613f, + 0.927649f, 0.927685f, 0.927721f, 0.927757f, 0.927792f, 0.927828f, 0.927864f, 0.927900f, + 0.927935f, 0.927971f, 0.928007f, 0.928043f, 0.928078f, 0.928114f, 0.928150f, 0.928185f, + 0.928221f, 0.928257f, 0.928292f, 0.928328f, 0.928364f, 0.928399f, 0.928435f, 0.928470f, + 0.928506f, 0.928542f, 0.928577f, 0.928613f, 0.928648f, 0.928684f, 0.928720f, 0.928755f, + 0.928791f, 0.928826f, 0.928862f, 0.928897f, 0.928933f, 0.928968f, 0.929004f, 0.929039f, + 0.929075f, 0.929110f, 0.929146f, 0.929181f, 0.929216f, 0.929252f, 0.929287f, 0.929323f, + 0.929358f, 0.929393f, 0.929429f, 0.929464f, 0.929500f, 0.929535f, 0.929570f, 0.929606f, + 0.929641f, 0.929676f, 0.929712f, 0.929747f, 0.929782f, 0.929817f, 0.929853f, 0.929888f, + 0.929923f, 0.929958f, 0.929994f, 0.930029f, 0.930064f, 0.930099f, 0.930135f, 0.930170f, + 0.930205f, 0.930240f, 0.930275f, 0.930311f, 0.930346f, 0.930381f, 0.930416f, 0.930451f, + 0.930486f, 0.930521f, 0.930556f, 0.930592f, 0.930627f, 0.930662f, 0.930697f, 0.930732f, + 0.930767f, 0.930802f, 0.930837f, 0.930872f, 0.930907f, 0.930942f, 0.930977f, 0.931012f, + 0.931047f, 0.931082f, 0.931117f, 0.931152f, 0.931187f, 0.931222f, 0.931257f, 0.931292f, + 0.931327f, 0.931362f, 0.931397f, 0.931431f, 0.931466f, 0.931501f, 0.931536f, 0.931571f, + 0.931606f, 0.931641f, 0.931675f, 0.931710f, 0.931745f, 0.931780f, 0.931815f, 0.931849f, + 0.931884f, 0.931919f, 0.931954f, 0.931989f, 0.932023f, 0.932058f, 0.932093f, 0.932128f, + 0.932162f, 0.932197f, 0.932232f, 0.932266f, 0.932301f, 0.932336f, 0.932370f, 0.932405f, + 0.932440f, 0.932474f, 0.932509f, 0.932544f, 0.932578f, 0.932613f, 0.932647f, 0.932682f, + 0.932716f, 0.932751f, 0.932786f, 0.932820f, 0.932855f, 0.932889f, 0.932924f, 0.932958f, + 0.932993f, 0.933027f, 0.933062f, 0.933096f, 0.933131f, 0.933165f, 0.933200f, 0.933234f, + 0.933269f, 0.933303f, 0.933337f, 0.933372f, 0.933406f, 0.933441f, 0.933475f, 0.933509f, + 0.933544f, 0.933578f, 0.933612f, 0.933647f, 0.933681f, 0.933716f, 0.933750f, 0.933784f, + 0.933818f, 0.933853f, 0.933887f, 0.933921f, 0.933956f, 0.933990f, 0.934024f, 0.934058f, + 0.934093f, 0.934127f, 0.934161f, 0.934195f, 0.934229f, 0.934264f, 0.934298f, 0.934332f, + 0.934366f, 0.934400f, 0.934434f, 0.934469f, 0.934503f, 0.934537f, 0.934571f, 0.934605f, + 0.934639f, 0.934673f, 0.934707f, 0.934741f, 0.934775f, 0.934810f, 0.934844f, 0.934878f, + 0.934912f, 0.934946f, 0.934980f, 0.935014f, 0.935048f, 0.935082f, 0.935116f, 0.935150f, + 0.935184f, 0.935217f, 0.935251f, 0.935285f, 0.935319f, 0.935353f, 0.935387f, 0.935421f, + 0.935455f, 0.935489f, 0.935523f, 0.935556f, 0.935590f, 0.935624f, 0.935658f, 0.935692f, + 0.935726f, 0.935759f, 0.935793f, 0.935827f, 0.935861f, 0.935895f, 0.935928f, 0.935962f, + 0.935996f, 0.936030f, 0.936063f, 0.936097f, 0.936131f, 0.936165f, 0.936198f, 0.936232f, + 0.936266f, 0.936299f, 0.936333f, 0.936367f, 0.936400f, 0.936434f, 0.936468f, 0.936501f, + 0.936535f, 0.936568f, 0.936602f, 0.936636f, 0.936669f, 0.936703f, 0.936736f, 0.936770f, + 0.936803f, 0.936837f, 0.936871f, 0.936904f, 0.936938f, 0.936971f, 0.937005f, 0.937038f, + 0.937072f, 0.937105f, 0.937138f, 0.937172f, 0.937205f, 0.937239f, 0.937272f, 0.937306f, + 0.937339f, 0.937372f, 0.937406f, 0.937439f, 0.937473f, 0.937506f, 0.937539f, 0.937573f, + 0.937606f, 0.937639f, 0.937673f, 0.937706f, 0.937739f, 0.937773f, 0.937806f, 0.937839f, + 0.937872f, 0.937906f, 0.937939f, 0.937972f, 0.938005f, 0.938039f, 0.938072f, 0.938105f, + 0.938138f, 0.938171f, 0.938205f, 0.938238f, 0.938271f, 0.938304f, 0.938337f, 0.938370f, + 0.938404f, 0.938437f, 0.938470f, 0.938503f, 0.938536f, 0.938569f, 0.938602f, 0.938635f, + 0.938668f, 0.938701f, 0.938734f, 0.938767f, 0.938800f, 0.938833f, 0.938866f, 0.938900f, + 0.938932f, 0.938965f, 0.938998f, 0.939031f, 0.939064f, 0.939097f, 0.939130f, 0.939163f, + 0.939196f, 0.939229f, 0.939262f, 0.939295f, 0.939328f, 0.939361f, 0.939394f, 0.939426f, + 0.939459f, 0.939492f, 0.939525f, 0.939558f, 0.939591f, 0.939623f, 0.939656f, 0.939689f, + 0.939722f, 0.939755f, 0.939787f, 0.939820f, 0.939853f, 0.939886f, 0.939918f, 0.939951f, + 0.939984f, 0.940016f, 0.940049f, 0.940082f, 0.940115f, 0.940147f, 0.940180f, 0.940213f, + 0.940245f, 0.940278f, 0.940310f, 0.940343f, 0.940376f, 0.940408f, 0.940441f, 0.940473f, + 0.940506f, 0.940539f, 0.940571f, 0.940604f, 0.940636f, 0.940669f, 0.940701f, 0.940734f, + 0.940766f, 0.940799f, 0.940831f, 0.940864f, 0.940896f, 0.940929f, 0.940961f, 0.940994f, + 0.941026f, 0.941059f, 0.941091f, 0.941123f, 0.941156f, 0.941188f, 0.941221f, 0.941253f, + 0.941285f, 0.941318f, 0.941350f, 0.941382f, 0.941415f, 0.941447f, 0.941479f, 0.941512f, + 0.941544f, 0.941576f, 0.941609f, 0.941641f, 0.941673f, 0.941705f, 0.941738f, 0.941770f, + 0.941802f, 0.941834f, 0.941867f, 0.941899f, 0.941931f, 0.941963f, 0.941995f, 0.942028f, + 0.942060f, 0.942092f, 0.942124f, 0.942156f, 0.942188f, 0.942220f, 0.942253f, 0.942285f, + 0.942317f, 0.942349f, 0.942381f, 0.942413f, 0.942445f, 0.942477f, 0.942509f, 0.942541f, + 0.942573f, 0.942605f, 0.942637f, 0.942669f, 0.942701f, 0.942733f, 0.942765f, 0.942797f, + 0.942829f, 0.942861f, 0.942893f, 0.942925f, 0.942957f, 0.942989f, 0.943021f, 0.943053f, + 0.943084f, 0.943116f, 0.943148f, 0.943180f, 0.943212f, 0.943244f, 0.943276f, 0.943307f, + 0.943339f, 0.943371f, 0.943403f, 0.943435f, 0.943466f, 0.943498f, 0.943530f, 0.943562f, + 0.943593f, 0.943625f, 0.943657f, 0.943689f, 0.943720f, 0.943752f, 0.943784f, 0.943815f, + 0.943847f, 0.943879f, 0.943910f, 0.943942f, 0.943974f, 0.944005f, 0.944037f, 0.944069f, + 0.944100f, 0.944132f, 0.944163f, 0.944195f, 0.944227f, 0.944258f, 0.944290f, 0.944321f, + 0.944353f, 0.944384f, 0.944416f, 0.944447f, 0.944479f, 0.944510f, 0.944542f, 0.944573f, + 0.944605f, 0.944636f, 0.944668f, 0.944699f, 0.944731f, 0.944762f, 0.944793f, 0.944825f, + 0.944856f, 0.944888f, 0.944919f, 0.944950f, 0.944982f, 0.945013f, 0.945045f, 0.945076f, + 0.945107f, 0.945139f, 0.945170f, 0.945201f, 0.945232f, 0.945264f, 0.945295f, 0.945326f, + 0.945358f, 0.945389f, 0.945420f, 0.945451f, 0.945482f, 0.945514f, 0.945545f, 0.945576f, + 0.945607f, 0.945639f, 0.945670f, 0.945701f, 0.945732f, 0.945763f, 0.945794f, 0.945825f, + 0.945857f, 0.945888f, 0.945919f, 0.945950f, 0.945981f, 0.946012f, 0.946043f, 0.946074f, + 0.946105f, 0.946136f, 0.946167f, 0.946198f, 0.946229f, 0.946260f, 0.946291f, 0.946322f, + 0.946353f, 0.946384f, 0.946415f, 0.946446f, 0.946477f, 0.946508f, 0.946539f, 0.946570f, + 0.946601f, 0.946632f, 0.946663f, 0.946694f, 0.946724f, 0.946755f, 0.946786f, 0.946817f, + 0.946848f, 0.946879f, 0.946910f, 0.946940f, 0.946971f, 0.947002f, 0.947033f, 0.947064f, + 0.947094f, 0.947125f, 0.947156f, 0.947187f, 0.947217f, 0.947248f, 0.947279f, 0.947310f, + 0.947340f, 0.947371f, 0.947402f, 0.947432f, 0.947463f, 0.947494f, 0.947524f, 0.947555f, + 0.947586f, 0.947616f, 0.947647f, 0.947677f, 0.947708f, 0.947739f, 0.947769f, 0.947800f, + 0.947830f, 0.947861f, 0.947891f, 0.947922f, 0.947953f, 0.947983f, 0.948014f, 0.948044f, + 0.948075f, 0.948105f, 0.948136f, 0.948166f, 0.948196f, 0.948227f, 0.948257f, 0.948288f, + 0.948318f, 0.948349f, 0.948379f, 0.948409f, 0.948440f, 0.948470f, 0.948501f, 0.948531f, + 0.948561f, 0.948592f, 0.948622f, 0.948652f, 0.948683f, 0.948713f, 0.948743f, 0.948774f, + 0.948804f, 0.948834f, 0.948864f, 0.948895f, 0.948925f, 0.948955f, 0.948985f, 0.949016f, + 0.949046f, 0.949076f, 0.949106f, 0.949136f, 0.949167f, 0.949197f, 0.949227f, 0.949257f, + 0.949287f, 0.949317f, 0.949348f, 0.949378f, 0.949408f, 0.949438f, 0.949468f, 0.949498f, + 0.949528f, 0.949558f, 0.949588f, 0.949618f, 0.949648f, 0.949678f, 0.949708f, 0.949739f, + 0.949768f, 0.949798f, 0.949829f, 0.949858f, 0.949888f, 0.949918f, 0.949948f, 0.949978f, + 0.950008f, 0.950038f, 0.950068f, 0.950098f, 0.950128f, 0.950158f, 0.950188f, 0.950218f, + 0.950247f, 0.950277f, 0.950307f, 0.950337f, 0.950367f, 0.950397f, 0.950426f, 0.950456f, + 0.950486f, 0.950516f, 0.950546f, 0.950575f, 0.950605f, 0.950635f, 0.950665f, 0.950694f, + 0.950724f, 0.950754f, 0.950784f, 0.950813f, 0.950843f, 0.950873f, 0.950902f, 0.950932f, + 0.950962f, 0.950991f, 0.951021f, 0.951051f, 0.951080f, 0.951110f, 0.951139f, 0.951169f, + 0.951199f, 0.951228f, 0.951258f, 0.951287f, 0.951317f, 0.951346f, 0.951376f, 0.951406f, + 0.951435f, 0.951465f, 0.951494f, 0.951524f, 0.951553f, 0.951582f, 0.951612f, 0.951641f, + 0.951671f, 0.951700f, 0.951730f, 0.951759f, 0.951789f, 0.951818f, 0.951847f, 0.951877f, + 0.951906f, 0.951936f, 0.951965f, 0.951994f, 0.952024f, 0.952053f, 0.952082f, 0.952112f, + 0.952141f, 0.952170f, 0.952199f, 0.952229f, 0.952258f, 0.952287f, 0.952317f, 0.952346f, + 0.952375f, 0.952404f, 0.952433f, 0.952463f, 0.952492f, 0.952521f, 0.952550f, 0.952579f, + 0.952609f, 0.952638f, 0.952667f, 0.952696f, 0.952725f, 0.952754f, 0.952783f, 0.952813f, + 0.952842f, 0.952871f, 0.952900f, 0.952929f, 0.952958f, 0.952987f, 0.953016f, 0.953045f, + 0.953074f, 0.953103f, 0.953132f, 0.953161f, 0.953190f, 0.953219f, 0.953248f, 0.953277f, + 0.953306f, 0.953335f, 0.953364f, 0.953393f, 0.953422f, 0.953451f, 0.953480f, 0.953508f, + 0.953537f, 0.953566f, 0.953595f, 0.953624f, 0.953653f, 0.953682f, 0.953711f, 0.953739f, + 0.953768f, 0.953797f, 0.953826f, 0.953855f, 0.953883f, 0.953912f, 0.953941f, 0.953970f, + 0.953998f, 0.954027f, 0.954056f, 0.954085f, 0.954113f, 0.954142f, 0.954171f, 0.954199f, + 0.954228f, 0.954257f, 0.954285f, 0.954314f, 0.954343f, 0.954371f, 0.954400f, 0.954429f, + 0.954457f, 0.954486f, 0.954514f, 0.954543f, 0.954572f, 0.954600f, 0.954629f, 0.954657f, + 0.954686f, 0.954714f, 0.954743f, 0.954771f, 0.954800f, 0.954828f, 0.954857f, 0.954885f, + 0.954914f, 0.954942f, 0.954971f, 0.954999f, 0.955028f, 0.955056f, 0.955084f, 0.955113f, + 0.955141f, 0.955170f, 0.955198f, 0.955226f, 0.955255f, 0.955283f, 0.955311f, 0.955340f, + 0.955368f, 0.955396f, 0.955425f, 0.955453f, 0.955481f, 0.955510f, 0.955538f, 0.955566f, + 0.955594f, 0.955623f, 0.955651f, 0.955679f, 0.955707f, 0.955736f, 0.955764f, 0.955792f, + 0.955820f, 0.955848f, 0.955876f, 0.955905f, 0.955933f, 0.955961f, 0.955989f, 0.956017f, + 0.956045f, 0.956073f, 0.956101f, 0.956130f, 0.956158f, 0.956186f, 0.956214f, 0.956242f, + 0.956270f, 0.956298f, 0.956326f, 0.956354f, 0.956382f, 0.956410f, 0.956438f, 0.956466f, + 0.956494f, 0.956522f, 0.956550f, 0.956578f, 0.956606f, 0.956634f, 0.956662f, 0.956689f, + 0.956717f, 0.956745f, 0.956773f, 0.956801f, 0.956829f, 0.956857f, 0.956885f, 0.956913f, + 0.956940f, 0.956968f, 0.956996f, 0.957024f, 0.957052f, 0.957079f, 0.957107f, 0.957135f, + 0.957163f, 0.957190f, 0.957218f, 0.957246f, 0.957274f, 0.957301f, 0.957329f, 0.957357f, + 0.957385f, 0.957412f, 0.957440f, 0.957468f, 0.957495f, 0.957523f, 0.957550f, 0.957578f, + 0.957606f, 0.957633f, 0.957661f, 0.957689f, 0.957716f, 0.957744f, 0.957771f, 0.957799f, + 0.957826f, 0.957854f, 0.957882f, 0.957909f, 0.957937f, 0.957964f, 0.957992f, 0.958019f, + 0.958046f, 0.958074f, 0.958101f, 0.958129f, 0.958156f, 0.958184f, 0.958211f, 0.958239f, + 0.958266f, 0.958293f, 0.958321f, 0.958348f, 0.958376f, 0.958403f, 0.958430f, 0.958458f, + 0.958485f, 0.958512f, 0.958540f, 0.958567f, 0.958594f, 0.958622f, 0.958649f, 0.958676f, + 0.958703f, 0.958731f, 0.958758f, 0.958785f, 0.958812f, 0.958840f, 0.958867f, 0.958894f, + 0.958921f, 0.958949f, 0.958976f, 0.959003f, 0.959030f, 0.959057f, 0.959084f, 0.959112f, + 0.959139f, 0.959166f, 0.959193f, 0.959220f, 0.959247f, 0.959274f, 0.959301f, 0.959328f, + 0.959355f, 0.959382f, 0.959409f, 0.959436f, 0.959463f, 0.959491f, 0.959518f, 0.959545f, + 0.959572f, 0.959598f, 0.959625f, 0.959652f, 0.959679f, 0.959706f, 0.959733f, 0.959760f, + 0.959787f, 0.959814f, 0.959841f, 0.959868f, 0.959895f, 0.959922f, 0.959948f, 0.959975f, + 0.960002f, 0.960029f, 0.960056f, 0.960083f, 0.960109f, 0.960136f, 0.960163f, 0.960190f, + 0.960217f, 0.960243f, 0.960270f, 0.960297f, 0.960324f, 0.960350f, 0.960377f, 0.960404f, + 0.960431f, 0.960457f, 0.960484f, 0.960511f, 0.960537f, 0.960564f, 0.960591f, 0.960617f, + 0.960644f, 0.960670f, 0.960697f, 0.960724f, 0.960750f, 0.960777f, 0.960804f, 0.960830f, + 0.960857f, 0.960883f, 0.960910f, 0.960936f, 0.960963f, 0.960989f, 0.961016f, 0.961042f, + 0.961069f, 0.961095f, 0.961122f, 0.961148f, 0.961175f, 0.961201f, 0.961228f, 0.961254f, + 0.961280f, 0.961307f, 0.961333f, 0.961360f, 0.961386f, 0.961412f, 0.961439f, 0.961465f, + 0.961492f, 0.961518f, 0.961544f, 0.961571f, 0.961597f, 0.961623f, 0.961649f, 0.961676f, + 0.961702f, 0.961728f, 0.961755f, 0.961781f, 0.961807f, 0.961833f, 0.961860f, 0.961886f, + 0.961912f, 0.961938f, 0.961964f, 0.961991f, 0.962017f, 0.962043f, 0.962069f, 0.962095f, + 0.962121f, 0.962148f, 0.962174f, 0.962200f, 0.962226f, 0.962252f, 0.962278f, 0.962304f, + 0.962330f, 0.962356f, 0.962382f, 0.962408f, 0.962434f, 0.962460f, 0.962486f, 0.962512f, + 0.962538f, 0.962564f, 0.962590f, 0.962616f, 0.962642f, 0.962668f, 0.962694f, 0.962720f, + 0.962746f, 0.962772f, 0.962798f, 0.962824f, 0.962850f, 0.962876f, 0.962902f, 0.962927f, + 0.962953f, 0.962979f, 0.963005f, 0.963031f, 0.963057f, 0.963082f, 0.963108f, 0.963134f, + 0.963160f, 0.963186f, 0.963211f, 0.963237f, 0.963263f, 0.963289f, 0.963314f, 0.963340f, + 0.963366f, 0.963391f, 0.963417f, 0.963443f, 0.963469f, 0.963494f, 0.963520f, 0.963546f, + 0.963571f, 0.963597f, 0.963623f, 0.963648f, 0.963674f, 0.963699f, 0.963725f, 0.963750f, + 0.963776f, 0.963802f, 0.963827f, 0.963853f, 0.963878f, 0.963904f, 0.963929f, 0.963955f, + 0.963980f, 0.964006f, 0.964031f, 0.964057f, 0.964082f, 0.964108f, 0.964133f, 0.964159f, + 0.964184f, 0.964209f, 0.964235f, 0.964260f, 0.964286f, 0.964311f, 0.964336f, 0.964362f, + 0.964387f, 0.964413f, 0.964438f, 0.964463f, 0.964489f, 0.964514f, 0.964539f, 0.964565f, + 0.964590f, 0.964615f, 0.964640f, 0.964666f, 0.964691f, 0.964716f, 0.964741f, 0.964767f, + 0.964792f, 0.964817f, 0.964842f, 0.964867f, 0.964893f, 0.964918f, 0.964943f, 0.964968f, + 0.964993f, 0.965018f, 0.965044f, 0.965069f, 0.965094f, 0.965119f, 0.965144f, 0.965169f, + 0.965194f, 0.965219f, 0.965244f, 0.965269f, 0.965294f, 0.965319f, 0.965344f, 0.965369f, + 0.965394f, 0.965419f, 0.965444f, 0.965469f, 0.965494f, 0.965519f, 0.965544f, 0.965569f, + 0.965594f, 0.965619f, 0.965644f, 0.965669f, 0.965694f, 0.965719f, 0.965744f, 0.965769f, + 0.965793f, 0.965818f, 0.965843f, 0.965868f, 0.965893f, 0.965918f, 0.965942f, 0.965967f, + 0.965992f, 0.966017f, 0.966042f, 0.966066f, 0.966091f, 0.966116f, 0.966141f, 0.966165f, + 0.966190f, 0.966215f, 0.966239f, 0.966264f, 0.966289f, 0.966313f, 0.966338f, 0.966363f, + 0.966387f, 0.966412f, 0.966437f, 0.966461f, 0.966486f, 0.966511f, 0.966535f, 0.966560f, + 0.966584f, 0.966609f, 0.966633f, 0.966658f, 0.966683f, 0.966707f, 0.966732f, 0.966756f, + 0.966781f, 0.966805f, 0.966830f, 0.966854f, 0.966879f, 0.966903f, 0.966928f, 0.966952f, + 0.966976f, 0.967001f, 0.967025f, 0.967050f, 0.967074f, 0.967099f, 0.967123f, 0.967147f, + 0.967172f, 0.967196f, 0.967220f, 0.967245f, 0.967269f, 0.967293f, 0.967318f, 0.967342f, + 0.967366f, 0.967391f, 0.967415f, 0.967439f, 0.967463f, 0.967488f, 0.967512f, 0.967536f, + 0.967560f, 0.967585f, 0.967609f, 0.967633f, 0.967657f, 0.967681f, 0.967706f, 0.967730f, + 0.967754f, 0.967778f, 0.967802f, 0.967826f, 0.967850f, 0.967874f, 0.967899f, 0.967923f, + 0.967947f, 0.967971f, 0.967995f, 0.968019f, 0.968043f, 0.968067f, 0.968091f, 0.968115f, + 0.968139f, 0.968163f, 0.968187f, 0.968211f, 0.968235f, 0.968259f, 0.968283f, 0.968307f, + 0.968331f, 0.968355f, 0.968379f, 0.968403f, 0.968427f, 0.968450f, 0.968474f, 0.968498f, + 0.968522f, 0.968546f, 0.968570f, 0.968594f, 0.968617f, 0.968641f, 0.968665f, 0.968689f, + 0.968713f, 0.968737f, 0.968760f, 0.968784f, 0.968808f, 0.968832f, 0.968855f, 0.968879f, + 0.968903f, 0.968927f, 0.968950f, 0.968974f, 0.968998f, 0.969021f, 0.969045f, 0.969069f, + 0.969092f, 0.969116f, 0.969140f, 0.969163f, 0.969187f, 0.969210f, 0.969234f, 0.969258f, + 0.969281f, 0.969305f, 0.969328f, 0.969352f, 0.969375f, 0.969399f, 0.969423f, 0.969446f, + 0.969470f, 0.969493f, 0.969517f, 0.969540f, 0.969564f, 0.969587f, 0.969611f, 0.969634f, + 0.969657f, 0.969681f, 0.969704f, 0.969728f, 0.969751f, 0.969774f, 0.969798f, 0.969821f, + 0.969845f, 0.969868f, 0.969891f, 0.969915f, 0.969938f, 0.969961f, 0.969985f, 0.970008f, + 0.970031f, 0.970055f, 0.970078f, 0.970101f, 0.970124f, 0.970148f, 0.970171f, 0.970194f, + 0.970217f, 0.970241f, 0.970264f, 0.970287f, 0.970310f, 0.970333f, 0.970357f, 0.970380f, + 0.970403f, 0.970426f, 0.970449f, 0.970472f, 0.970495f, 0.970518f, 0.970542f, 0.970565f, + 0.970588f, 0.970611f, 0.970634f, 0.970657f, 0.970680f, 0.970703f, 0.970726f, 0.970749f, + 0.970772f, 0.970795f, 0.970818f, 0.970841f, 0.970864f, 0.970887f, 0.970910f, 0.970933f, + 0.970956f, 0.970979f, 0.971002f, 0.971025f, 0.971048f, 0.971071f, 0.971093f, 0.971116f, + 0.971139f, 0.971162f, 0.971185f, 0.971208f, 0.971231f, 0.971253f, 0.971276f, 0.971299f, + 0.971322f, 0.971345f, 0.971367f, 0.971390f, 0.971413f, 0.971436f, 0.971458f, 0.971481f, + 0.971504f, 0.971527f, 0.971549f, 0.971572f, 0.971595f, 0.971617f, 0.971640f, 0.971663f, + 0.971685f, 0.971708f, 0.971731f, 0.971753f, 0.971776f, 0.971799f, 0.971821f, 0.971844f, + 0.971866f, 0.971889f, 0.971911f, 0.971934f, 0.971957f, 0.971979f, 0.972002f, 0.972024f, + 0.972047f, 0.972069f, 0.972092f, 0.972114f, 0.972137f, 0.972159f, 0.972182f, 0.972204f, + 0.972227f, 0.972249f, 0.972271f, 0.972294f, 0.972316f, 0.972339f, 0.972361f, 0.972383f, + 0.972406f, 0.972428f, 0.972450f, 0.972473f, 0.972495f, 0.972517f, 0.972540f, 0.972562f, + 0.972584f, 0.972607f, 0.972629f, 0.972651f, 0.972673f, 0.972696f, 0.972718f, 0.972740f, + 0.972762f, 0.972785f, 0.972807f, 0.972829f, 0.972851f, 0.972873f, 0.972896f, 0.972918f, + 0.972940f, 0.972962f, 0.972984f, 0.973006f, 0.973028f, 0.973051f, 0.973073f, 0.973095f, + 0.973117f, 0.973139f, 0.973161f, 0.973183f, 0.973205f, 0.973227f, 0.973249f, 0.973271f, + 0.973293f, 0.973315f, 0.973337f, 0.973359f, 0.973381f, 0.973403f, 0.973425f, 0.973447f, + 0.973469f, 0.973491f, 0.973513f, 0.973535f, 0.973557f, 0.973579f, 0.973601f, 0.973622f, + 0.973644f, 0.973666f, 0.973688f, 0.973710f, 0.973732f, 0.973753f, 0.973775f, 0.973797f, + 0.973819f, 0.973841f, 0.973862f, 0.973884f, 0.973906f, 0.973928f, 0.973949f, 0.973971f, + 0.973993f, 0.974015f, 0.974036f, 0.974058f, 0.974080f, 0.974101f, 0.974123f, 0.974145f, + 0.974166f, 0.974188f, 0.974210f, 0.974231f, 0.974253f, 0.974275f, 0.974296f, 0.974318f, + 0.974339f, 0.974361f, 0.974383f, 0.974404f, 0.974426f, 0.974447f, 0.974469f, 0.974490f, + 0.974512f, 0.974533f, 0.974555f, 0.974576f, 0.974598f, 0.974619f, 0.974641f, 0.974662f, + 0.974684f, 0.974705f, 0.974726f, 0.974748f, 0.974769f, 0.974791f, 0.974812f, 0.974833f, + 0.974855f, 0.974876f, 0.974897f, 0.974919f, 0.974940f, 0.974961f, 0.974983f, 0.975004f, + 0.975025f, 0.975047f, 0.975068f, 0.975089f, 0.975110f, 0.975132f, 0.975153f, 0.975174f, + 0.975195f, 0.975217f, 0.975238f, 0.975259f, 0.975280f, 0.975301f, 0.975323f, 0.975344f, + 0.975365f, 0.975386f, 0.975407f, 0.975428f, 0.975449f, 0.975471f, 0.975492f, 0.975513f, + 0.975534f, 0.975555f, 0.975576f, 0.975597f, 0.975618f, 0.975639f, 0.975660f, 0.975681f, + 0.975702f, 0.975723f, 0.975744f, 0.975765f, 0.975786f, 0.975807f, 0.975828f, 0.975849f, + 0.975870f, 0.975891f, 0.975912f, 0.975933f, 0.975954f, 0.975974f, 0.975995f, 0.976016f, + 0.976037f, 0.976058f, 0.976079f, 0.976100f, 0.976120f, 0.976141f, 0.976162f, 0.976183f, + 0.976204f, 0.976224f, 0.976245f, 0.976266f, 0.976287f, 0.976308f, 0.976328f, 0.976349f, + 0.976370f, 0.976390f, 0.976411f, 0.976432f, 0.976453f, 0.976473f, 0.976494f, 0.976515f, + 0.976535f, 0.976556f, 0.976576f, 0.976597f, 0.976618f, 0.976638f, 0.976659f, 0.976680f, + 0.976700f, 0.976721f, 0.976741f, 0.976762f, 0.976782f, 0.976803f, 0.976823f, 0.976844f, + 0.976864f, 0.976885f, 0.976905f, 0.976926f, 0.976946f, 0.976967f, 0.976987f, 0.977008f, + 0.977028f, 0.977049f, 0.977069f, 0.977089f, 0.977110f, 0.977130f, 0.977151f, 0.977171f, + 0.977191f, 0.977212f, 0.977232f, 0.977252f, 0.977273f, 0.977293f, 0.977313f, 0.977334f, + 0.977354f, 0.977374f, 0.977394f, 0.977415f, 0.977435f, 0.977455f, 0.977475f, 0.977496f, + 0.977516f, 0.977536f, 0.977556f, 0.977577f, 0.977597f, 0.977617f, 0.977637f, 0.977657f, + 0.977677f, 0.977697f, 0.977718f, 0.977738f, 0.977758f, 0.977778f, 0.977798f, 0.977818f, + 0.977838f, 0.977858f, 0.977878f, 0.977898f, 0.977918f, 0.977938f, 0.977959f, 0.977979f, + 0.977998f, 0.978019f, 0.978038f, 0.978058f, 0.978078f, 0.978098f, 0.978118f, 0.978138f, + 0.978158f, 0.978178f, 0.978198f, 0.978218f, 0.978238f, 0.978258f, 0.978278f, 0.978298f, + 0.978317f, 0.978337f, 0.978357f, 0.978377f, 0.978397f, 0.978417f, 0.978436f, 0.978456f, + 0.978476f, 0.978496f, 0.978516f, 0.978535f, 0.978555f, 0.978575f, 0.978594f, 0.978614f, + 0.978634f, 0.978654f, 0.978673f, 0.978693f, 0.978713f, 0.978732f, 0.978752f, 0.978772f, + 0.978791f, 0.978811f, 0.978831f, 0.978850f, 0.978870f, 0.978889f, 0.978909f, 0.978929f, + 0.978948f, 0.978968f, 0.978987f, 0.979007f, 0.979026f, 0.979046f, 0.979065f, 0.979085f, + 0.979104f, 0.979124f, 0.979143f, 0.979163f, 0.979182f, 0.979202f, 0.979221f, 0.979241f, + 0.979260f, 0.979280f, 0.979299f, 0.979318f, 0.979338f, 0.979357f, 0.979376f, 0.979396f, + 0.979415f, 0.979435f, 0.979454f, 0.979473f, 0.979493f, 0.979512f, 0.979531f, 0.979550f, + 0.979570f, 0.979589f, 0.979608f, 0.979628f, 0.979647f, 0.979666f, 0.979685f, 0.979704f, + 0.979724f, 0.979743f, 0.979762f, 0.979781f, 0.979800f, 0.979820f, 0.979839f, 0.979858f, + 0.979877f, 0.979896f, 0.979915f, 0.979934f, 0.979954f, 0.979973f, 0.979992f, 0.980011f, + 0.980030f, 0.980049f, 0.980068f, 0.980087f, 0.980106f, 0.980125f, 0.980144f, 0.980163f, + 0.980182f, 0.980201f, 0.980220f, 0.980239f, 0.980258f, 0.980277f, 0.980296f, 0.980315f, + 0.980334f, 0.980353f, 0.980372f, 0.980390f, 0.980409f, 0.980428f, 0.980447f, 0.980466f, + 0.980485f, 0.980504f, 0.980523f, 0.980541f, 0.980560f, 0.980579f, 0.980598f, 0.980617f, + 0.980635f, 0.980654f, 0.980673f, 0.980692f, 0.980710f, 0.980729f, 0.980748f, 0.980767f, + 0.980785f, 0.980804f, 0.980823f, 0.980841f, 0.980860f, 0.980879f, 0.980897f, 0.980916f, + 0.980935f, 0.980953f, 0.980972f, 0.980990f, 0.981009f, 0.981028f, 0.981046f, 0.981065f, + 0.981083f, 0.981102f, 0.981120f, 0.981139f, 0.981158f, 0.981176f, 0.981195f, 0.981213f, + 0.981232f, 0.981250f, 0.981269f, 0.981287f, 0.981305f, 0.981324f, 0.981342f, 0.981361f, + 0.981379f, 0.981398f, 0.981416f, 0.981434f, 0.981453f, 0.981471f, 0.981490f, 0.981508f, + 0.981526f, 0.981545f, 0.981563f, 0.981581f, 0.981600f, 0.981618f, 0.981636f, 0.981654f, + 0.981673f, 0.981691f, 0.981709f, 0.981727f, 0.981746f, 0.981764f, 0.981782f, 0.981800f, + 0.981819f, 0.981837f, 0.981855f, 0.981873f, 0.981891f, 0.981909f, 0.981928f, 0.981946f, + 0.981964f, 0.981982f, 0.982000f, 0.982018f, 0.982036f, 0.982054f, 0.982072f, 0.982091f, + 0.982109f, 0.982127f, 0.982145f, 0.982163f, 0.982181f, 0.982199f, 0.982217f, 0.982235f, + 0.982253f, 0.982271f, 0.982289f, 0.982307f, 0.982325f, 0.982343f, 0.982360f, 0.982378f, + 0.982396f, 0.982414f, 0.982432f, 0.982450f, 0.982468f, 0.982486f, 0.982504f, 0.982521f, + 0.982539f, 0.982557f, 0.982575f, 0.982593f, 0.982611f, 0.982628f, 0.982646f, 0.982664f, + 0.982682f, 0.982699f, 0.982717f, 0.982735f, 0.982753f, 0.982770f, 0.982788f, 0.982806f, + 0.982824f, 0.982841f, 0.982859f, 0.982877f, 0.982894f, 0.982912f, 0.982930f, 0.982947f, + 0.982965f, 0.982982f, 0.983000f, 0.983018f, 0.983035f, 0.983053f, 0.983070f, 0.983088f, + 0.983105f, 0.983123f, 0.983141f, 0.983158f, 0.983176f, 0.983193f, 0.983211f, 0.983228f, + 0.983246f, 0.983263f, 0.983281f, 0.983298f, 0.983315f, 0.983333f, 0.983350f, 0.983368f, + 0.983385f, 0.983402f, 0.983420f, 0.983437f, 0.983455f, 0.983472f, 0.983489f, 0.983507f, + 0.983524f, 0.983541f, 0.983559f, 0.983576f, 0.983593f, 0.983611f, 0.983628f, 0.983645f, + 0.983662f, 0.983680f, 0.983697f, 0.983714f, 0.983731f, 0.983749f, 0.983766f, 0.983783f, + 0.983800f, 0.983817f, 0.983835f, 0.983852f, 0.983869f, 0.983886f, 0.983903f, 0.983920f, + 0.983937f, 0.983955f, 0.983972f, 0.983989f, 0.984006f, 0.984023f, 0.984040f, 0.984057f, + 0.984074f, 0.984091f, 0.984108f, 0.984125f, 0.984142f, 0.984159f, 0.984176f, 0.984193f, + 0.984210f, 0.984227f, 0.984244f, 0.984261f, 0.984278f, 0.984295f, 0.984312f, 0.984329f, + 0.984346f, 0.984362f, 0.984379f, 0.984396f, 0.984413f, 0.984430f, 0.984447f, 0.984464f, + 0.984480f, 0.984497f, 0.984514f, 0.984531f, 0.984548f, 0.984564f, 0.984581f, 0.984598f, + 0.984615f, 0.984632f, 0.984648f, 0.984665f, 0.984682f, 0.984698f, 0.984715f, 0.984732f, + 0.984748f, 0.984765f, 0.984782f, 0.984798f, 0.984815f, 0.984832f, 0.984848f, 0.984865f, + 0.984882f, 0.984898f, 0.984915f, 0.984931f, 0.984948f, 0.984965f, 0.984981f, 0.984998f, + 0.985014f, 0.985031f, 0.985047f, 0.985064f, 0.985080f, 0.985097f, 0.985113f, 0.985130f, + 0.985146f, 0.985163f, 0.985179f, 0.985196f, 0.985212f, 0.985228f, 0.985245f, 0.985261f, + 0.985278f, 0.985294f, 0.985310f, 0.985327f, 0.985343f, 0.985359f, 0.985376f, 0.985392f, + 0.985408f, 0.985425f, 0.985441f, 0.985457f, 0.985474f, 0.985490f, 0.985506f, 0.985523f, + 0.985539f, 0.985555f, 0.985571f, 0.985587f, 0.985604f, 0.985620f, 0.985636f, 0.985652f, + 0.985668f, 0.985685f, 0.985701f, 0.985717f, 0.985733f, 0.985749f, 0.985765f, 0.985781f, + 0.985798f, 0.985814f, 0.985830f, 0.985846f, 0.985862f, 0.985878f, 0.985894f, 0.985910f, + 0.985926f, 0.985942f, 0.985958f, 0.985974f, 0.985990f, 0.986006f, 0.986022f, 0.986038f, + 0.986054f, 0.986070f, 0.986086f, 0.986102f, 0.986118f, 0.986134f, 0.986150f, 0.986165f, + 0.986181f, 0.986197f, 0.986213f, 0.986229f, 0.986245f, 0.986261f, 0.986276f, 0.986292f, + 0.986308f, 0.986324f, 0.986340f, 0.986355f, 0.986371f, 0.986387f, 0.986403f, 0.986419f, + 0.986434f, 0.986450f, 0.986466f, 0.986481f, 0.986497f, 0.986513f, 0.986529f, 0.986544f, + 0.986560f, 0.986576f, 0.986591f, 0.986607f, 0.986623f, 0.986638f, 0.986654f, 0.986669f, + 0.986685f, 0.986701f, 0.986716f, 0.986732f, 0.986747f, 0.986763f, 0.986778f, 0.986794f, + 0.986809f, 0.986825f, 0.986840f, 0.986856f, 0.986871f, 0.986887f, 0.986902f, 0.986918f, + 0.986933f, 0.986949f, 0.986964f, 0.986980f, 0.986995f, 0.987010f, 0.987026f, 0.987041f, + 0.987057f, 0.987072f, 0.987087f, 0.987103f, 0.987118f, 0.987133f, 0.987149f, 0.987164f, + 0.987179f, 0.987195f, 0.987210f, 0.987225f, 0.987240f, 0.987256f, 0.987271f, 0.987286f, + 0.987301f, 0.987317f, 0.987332f, 0.987347f, 0.987362f, 0.987377f, 0.987393f, 0.987408f, + 0.987423f, 0.987438f, 0.987453f, 0.987468f, 0.987484f, 0.987499f, 0.987514f, 0.987529f, + 0.987544f, 0.987559f, 0.987574f, 0.987589f, 0.987604f, 0.987619f, 0.987634f, 0.987649f, + 0.987664f, 0.987679f, 0.987694f, 0.987709f, 0.987724f, 0.987739f, 0.987754f, 0.987769f, + 0.987784f, 0.987799f, 0.987814f, 0.987829f, 0.987844f, 0.987859f, 0.987874f, 0.987889f, + 0.987903f, 0.987918f, 0.987933f, 0.987948f, 0.987963f, 0.987978f, 0.987992f, 0.988007f, + 0.988022f, 0.988037f, 0.988052f, 0.988066f, 0.988081f, 0.988096f, 0.988111f, 0.988125f, + 0.988140f, 0.988155f, 0.988169f, 0.988184f, 0.988199f, 0.988214f, 0.988228f, 0.988243f, + 0.988258f, 0.988272f, 0.988287f, 0.988301f, 0.988316f, 0.988331f, 0.988345f, 0.988360f, + 0.988374f, 0.988389f, 0.988404f, 0.988418f, 0.988433f, 0.988447f, 0.988462f, 0.988476f, + 0.988491f, 0.988505f, 0.988520f, 0.988534f, 0.988549f, 0.988563f, 0.988578f, 0.988592f, + 0.988607f, 0.988621f, 0.988635f, 0.988650f, 0.988664f, 0.988679f, 0.988693f, 0.988707f, + 0.988722f, 0.988736f, 0.988750f, 0.988765f, 0.988779f, 0.988793f, 0.988808f, 0.988822f, + 0.988836f, 0.988851f, 0.988865f, 0.988879f, 0.988893f, 0.988908f, 0.988922f, 0.988936f, + 0.988950f, 0.988964f, 0.988979f, 0.988993f, 0.989007f, 0.989021f, 0.989035f, 0.989050f, + 0.989064f, 0.989078f, 0.989092f, 0.989106f, 0.989120f, 0.989134f, 0.989148f, 0.989162f, + 0.989177f, 0.989191f, 0.989205f, 0.989219f, 0.989233f, 0.989247f, 0.989261f, 0.989275f, + 0.989289f, 0.989303f, 0.989317f, 0.989331f, 0.989345f, 0.989359f, 0.989373f, 0.989386f, + 0.989400f, 0.989414f, 0.989428f, 0.989442f, 0.989456f, 0.989470f, 0.989484f, 0.989498f, + 0.989511f, 0.989525f, 0.989539f, 0.989553f, 0.989567f, 0.989581f, 0.989594f, 0.989608f, + 0.989622f, 0.989636f, 0.989650f, 0.989663f, 0.989677f, 0.989691f, 0.989704f, 0.989718f, + 0.989732f, 0.989746f, 0.989759f, 0.989773f, 0.989787f, 0.989800f, 0.989814f, 0.989828f, + 0.989841f, 0.989855f, 0.989869f, 0.989882f, 0.989896f, 0.989909f, 0.989923f, 0.989936f, + 0.989950f, 0.989964f, 0.989977f, 0.989991f, 0.990004f, 0.990018f, 0.990031f, 0.990045f, + 0.990058f, 0.990072f, 0.990085f, 0.990099f, 0.990112f, 0.990126f, 0.990139f, 0.990152f, + 0.990166f, 0.990179f, 0.990193f, 0.990206f, 0.990219f, 0.990233f, 0.990246f, 0.990259f, + 0.990273f, 0.990286f, 0.990299f, 0.990313f, 0.990326f, 0.990339f, 0.990353f, 0.990366f, + 0.990379f, 0.990393f, 0.990406f, 0.990419f, 0.990432f, 0.990445f, 0.990459f, 0.990472f, + 0.990485f, 0.990498f, 0.990511f, 0.990525f, 0.990538f, 0.990551f, 0.990564f, 0.990577f, + 0.990590f, 0.990603f, 0.990617f, 0.990630f, 0.990643f, 0.990656f, 0.990669f, 0.990682f, + 0.990695f, 0.990708f, 0.990721f, 0.990734f, 0.990747f, 0.990760f, 0.990773f, 0.990786f, + 0.990799f, 0.990812f, 0.990825f, 0.990838f, 0.990851f, 0.990864f, 0.990877f, 0.990890f, + 0.990903f, 0.990916f, 0.990928f, 0.990941f, 0.990954f, 0.990967f, 0.990980f, 0.990993f, + 0.991006f, 0.991018f, 0.991031f, 0.991044f, 0.991057f, 0.991070f, 0.991082f, 0.991095f, + 0.991108f, 0.991121f, 0.991133f, 0.991146f, 0.991159f, 0.991172f, 0.991184f, 0.991197f, + 0.991210f, 0.991222f, 0.991235f, 0.991248f, 0.991260f, 0.991273f, 0.991286f, 0.991298f, + 0.991311f, 0.991323f, 0.991336f, 0.991349f, 0.991361f, 0.991374f, 0.991386f, 0.991399f, + 0.991411f, 0.991424f, 0.991437f, 0.991449f, 0.991462f, 0.991474f, 0.991487f, 0.991499f, + 0.991511f, 0.991524f, 0.991536f, 0.991549f, 0.991561f, 0.991574f, 0.991586f, 0.991598f, + 0.991611f, 0.991623f, 0.991636f, 0.991648f, 0.991660f, 0.991673f, 0.991685f, 0.991697f, + 0.991710f, 0.991722f, 0.991734f, 0.991747f, 0.991759f, 0.991771f, 0.991783f, 0.991796f, + 0.991808f, 0.991820f, 0.991832f, 0.991845f, 0.991857f, 0.991869f, 0.991881f, 0.991894f, + 0.991906f, 0.991918f, 0.991930f, 0.991942f, 0.991954f, 0.991966f, 0.991979f, 0.991991f, + 0.992003f, 0.992015f, 0.992027f, 0.992039f, 0.992051f, 0.992063f, 0.992075f, 0.992087f, + 0.992099f, 0.992111f, 0.992123f, 0.992135f, 0.992147f, 0.992159f, 0.992171f, 0.992183f, + 0.992195f, 0.992207f, 0.992219f, 0.992231f, 0.992243f, 0.992255f, 0.992267f, 0.992279f, + 0.992291f, 0.992302f, 0.992314f, 0.992326f, 0.992338f, 0.992350f, 0.992362f, 0.992374f, + 0.992385f, 0.992397f, 0.992409f, 0.992421f, 0.992433f, 0.992444f, 0.992456f, 0.992468f, + 0.992480f, 0.992491f, 0.992503f, 0.992515f, 0.992526f, 0.992538f, 0.992550f, 0.992561f, + 0.992573f, 0.992585f, 0.992596f, 0.992608f, 0.992620f, 0.992631f, 0.992643f, 0.992655f, + 0.992666f, 0.992678f, 0.992689f, 0.992701f, 0.992712f, 0.992724f, 0.992736f, 0.992747f, + 0.992759f, 0.992770f, 0.992782f, 0.992793f, 0.992805f, 0.992816f, 0.992828f, 0.992839f, + 0.992850f, 0.992862f, 0.992873f, 0.992885f, 0.992896f, 0.992908f, 0.992919f, 0.992930f, + 0.992942f, 0.992953f, 0.992964f, 0.992976f, 0.992987f, 0.992998f, 0.993010f, 0.993021f, + 0.993032f, 0.993044f, 0.993055f, 0.993066f, 0.993077f, 0.993089f, 0.993100f, 0.993111f, + 0.993122f, 0.993134f, 0.993145f, 0.993156f, 0.993167f, 0.993178f, 0.993190f, 0.993201f, + 0.993212f, 0.993223f, 0.993234f, 0.993245f, 0.993257f, 0.993268f, 0.993279f, 0.993290f, + 0.993301f, 0.993312f, 0.993323f, 0.993334f, 0.993345f, 0.993356f, 0.993367f, 0.993378f, + 0.993389f, 0.993400f, 0.993411f, 0.993422f, 0.993433f, 0.993444f, 0.993455f, 0.993466f, + 0.993477f, 0.993488f, 0.993499f, 0.993510f, 0.993521f, 0.993532f, 0.993542f, 0.993553f, + 0.993564f, 0.993575f, 0.993586f, 0.993597f, 0.993608f, 0.993618f, 0.993629f, 0.993640f, + 0.993651f, 0.993662f, 0.993672f, 0.993683f, 0.993694f, 0.993705f, 0.993715f, 0.993726f, + 0.993737f, 0.993747f, 0.993758f, 0.993769f, 0.993779f, 0.993790f, 0.993801f, 0.993811f, + 0.993822f, 0.993833f, 0.993843f, 0.993854f, 0.993865f, 0.993875f, 0.993886f, 0.993896f, + 0.993907f, 0.993918f, 0.993928f, 0.993939f, 0.993949f, 0.993960f, 0.993970f, 0.993981f, + 0.993991f, 0.994002f, 0.994012f, 0.994023f, 0.994033f, 0.994044f, 0.994054f, 0.994064f, + 0.994075f, 0.994085f, 0.994096f, 0.994106f, 0.994116f, 0.994127f, 0.994137f, 0.994148f, + 0.994158f, 0.994168f, 0.994179f, 0.994189f, 0.994199f, 0.994210f, 0.994220f, 0.994230f, + 0.994240f, 0.994251f, 0.994261f, 0.994271f, 0.994281f, 0.994292f, 0.994302f, 0.994312f, + 0.994322f, 0.994333f, 0.994343f, 0.994353f, 0.994363f, 0.994373f, 0.994383f, 0.994394f, + 0.994404f, 0.994414f, 0.994424f, 0.994434f, 0.994444f, 0.994454f, 0.994464f, 0.994474f, + 0.994484f, 0.994494f, 0.994505f, 0.994515f, 0.994525f, 0.994535f, 0.994545f, 0.994555f, + 0.994565f, 0.994575f, 0.994585f, 0.994594f, 0.994604f, 0.994614f, 0.994624f, 0.994634f, + 0.994644f, 0.994654f, 0.994664f, 0.994674f, 0.994684f, 0.994694f, 0.994703f, 0.994713f, + 0.994723f, 0.994733f, 0.994743f, 0.994753f, 0.994762f, 0.994772f, 0.994782f, 0.994792f, + 0.994802f, 0.994811f, 0.994821f, 0.994831f, 0.994841f, 0.994850f, 0.994860f, 0.994870f, + 0.994879f, 0.994889f, 0.994899f, 0.994908f, 0.994918f, 0.994928f, 0.994937f, 0.994947f, + 0.994957f, 0.994966f, 0.994976f, 0.994985f, 0.994995f, 0.995005f, 0.995014f, 0.995024f, + 0.995033f, 0.995043f, 0.995052f, 0.995062f, 0.995071f, 0.995081f, 0.995090f, 0.995100f, + 0.995109f, 0.995119f, 0.995128f, 0.995138f, 0.995147f, 0.995156f, 0.995166f, 0.995175f, + 0.995185f, 0.995194f, 0.995203f, 0.995213f, 0.995222f, 0.995232f, 0.995241f, 0.995250f, + 0.995260f, 0.995269f, 0.995278f, 0.995288f, 0.995297f, 0.995306f, 0.995315f, 0.995325f, + 0.995334f, 0.995343f, 0.995352f, 0.995362f, 0.995371f, 0.995380f, 0.995389f, 0.995398f, + 0.995408f, 0.995417f, 0.995426f, 0.995435f, 0.995444f, 0.995453f, 0.995463f, 0.995472f, + 0.995481f, 0.995490f, 0.995499f, 0.995508f, 0.995517f, 0.995526f, 0.995535f, 0.995544f, + 0.995553f, 0.995562f, 0.995571f, 0.995580f, 0.995589f, 0.995598f, 0.995607f, 0.995616f, + 0.995625f, 0.995634f, 0.995643f, 0.995652f, 0.995661f, 0.995670f, 0.995679f, 0.995688f, + 0.995697f, 0.995705f, 0.995714f, 0.995723f, 0.995732f, 0.995741f, 0.995750f, 0.995759f, + 0.995767f, 0.995776f, 0.995785f, 0.995794f, 0.995803f, 0.995811f, 0.995820f, 0.995829f, + 0.995838f, 0.995846f, 0.995855f, 0.995864f, 0.995872f, 0.995881f, 0.995890f, 0.995899f, + 0.995907f, 0.995916f, 0.995925f, 0.995933f, 0.995942f, 0.995950f, 0.995959f, 0.995968f, + 0.995976f, 0.995985f, 0.995993f, 0.996002f, 0.996011f, 0.996019f, 0.996028f, 0.996036f, + 0.996045f, 0.996053f, 0.996062f, 0.996070f, 0.996079f, 0.996087f, 0.996096f, 0.996104f, + 0.996113f, 0.996121f, 0.996129f, 0.996138f, 0.996146f, 0.996155f, 0.996163f, 0.996171f, + 0.996180f, 0.996188f, 0.996197f, 0.996205f, 0.996213f, 0.996222f, 0.996230f, 0.996238f, + 0.996247f, 0.996255f, 0.996263f, 0.996271f, 0.996280f, 0.996288f, 0.996296f, 0.996304f, + 0.996313f, 0.996321f, 0.996329f, 0.996337f, 0.996345f, 0.996354f, 0.996362f, 0.996370f, + 0.996378f, 0.996386f, 0.996394f, 0.996403f, 0.996411f, 0.996419f, 0.996427f, 0.996435f, + 0.996443f, 0.996451f, 0.996459f, 0.996467f, 0.996475f, 0.996483f, 0.996491f, 0.996499f, + 0.996507f, 0.996515f, 0.996523f, 0.996531f, 0.996539f, 0.996547f, 0.996555f, 0.996563f, + 0.996571f, 0.996579f, 0.996587f, 0.996595f, 0.996603f, 0.996611f, 0.996619f, 0.996626f, + 0.996634f, 0.996642f, 0.996650f, 0.996658f, 0.996666f, 0.996674f, 0.996681f, 0.996689f, + 0.996697f, 0.996705f, 0.996712f, 0.996720f, 0.996728f, 0.996736f, 0.996743f, 0.996751f, + 0.996759f, 0.996767f, 0.996774f, 0.996782f, 0.996790f, 0.996797f, 0.996805f, 0.996813f, + 0.996820f, 0.996828f, 0.996836f, 0.996843f, 0.996851f, 0.996858f, 0.996866f, 0.996874f, + 0.996881f, 0.996889f, 0.996896f, 0.996904f, 0.996911f, 0.996919f, 0.996926f, 0.996934f, + 0.996941f, 0.996949f, 0.996956f, 0.996964f, 0.996971f, 0.996979f, 0.996986f, 0.996994f, + 0.997001f, 0.997008f, 0.997016f, 0.997023f, 0.997031f, 0.997038f, 0.997045f, 0.997053f, + 0.997060f, 0.997067f, 0.997075f, 0.997082f, 0.997089f, 0.997097f, 0.997104f, 0.997111f, + 0.997119f, 0.997126f, 0.997133f, 0.997140f, 0.997148f, 0.997155f, 0.997162f, 0.997169f, + 0.997176f, 0.997184f, 0.997191f, 0.997198f, 0.997205f, 0.997212f, 0.997219f, 0.997227f, + 0.997234f, 0.997241f, 0.997248f, 0.997255f, 0.997262f, 0.997269f, 0.997276f, 0.997283f, + 0.997290f, 0.997298f, 0.997305f, 0.997312f, 0.997319f, 0.997326f, 0.997333f, 0.997340f, + 0.997347f, 0.997354f, 0.997361f, 0.997368f, 0.997374f, 0.997381f, 0.997388f, 0.997395f, + 0.997402f, 0.997409f, 0.997416f, 0.997423f, 0.997430f, 0.997437f, 0.997443f, 0.997450f, + 0.997457f, 0.997464f, 0.997471f, 0.997478f, 0.997484f, 0.997491f, 0.997498f, 0.997505f, + 0.997511f, 0.997518f, 0.997525f, 0.997532f, 0.997538f, 0.997545f, 0.997552f, 0.997559f, + 0.997565f, 0.997572f, 0.997579f, 0.997585f, 0.997592f, 0.997599f, 0.997605f, 0.997612f, + 0.997618f, 0.997625f, 0.997632f, 0.997638f, 0.997645f, 0.997651f, 0.997658f, 0.997665f, + 0.997671f, 0.997678f, 0.997684f, 0.997691f, 0.997697f, 0.997704f, 0.997710f, 0.997717f, + 0.997723f, 0.997730f, 0.997736f, 0.997742f, 0.997749f, 0.997755f, 0.997762f, 0.997768f, + 0.997774f, 0.997781f, 0.997787f, 0.997794f, 0.997800f, 0.997806f, 0.997813f, 0.997819f, + 0.997825f, 0.997832f, 0.997838f, 0.997844f, 0.997851f, 0.997857f, 0.997863f, 0.997869f, + 0.997876f, 0.997882f, 0.997888f, 0.997894f, 0.997901f, 0.997907f, 0.997913f, 0.997919f, + 0.997925f, 0.997931f, 0.997938f, 0.997944f, 0.997950f, 0.997956f, 0.997962f, 0.997968f, + 0.997974f, 0.997980f, 0.997987f, 0.997993f, 0.997999f, 0.998005f, 0.998011f, 0.998017f, + 0.998023f, 0.998029f, 0.998035f, 0.998041f, 0.998047f, 0.998053f, 0.998059f, 0.998065f, + 0.998071f, 0.998077f, 0.998083f, 0.998089f, 0.998094f, 0.998100f, 0.998106f, 0.998112f, + 0.998118f, 0.998124f, 0.998130f, 0.998136f, 0.998142f, 0.998147f, 0.998153f, 0.998159f, + 0.998165f, 0.998171f, 0.998176f, 0.998182f, 0.998188f, 0.998194f, 0.998200f, 0.998205f, + 0.998211f, 0.998217f, 0.998222f, 0.998228f, 0.998234f, 0.998240f, 0.998245f, 0.998251f, + 0.998257f, 0.998262f, 0.998268f, 0.998273f, 0.998279f, 0.998285f, 0.998290f, 0.998296f, + 0.998302f, 0.998307f, 0.998313f, 0.998318f, 0.998324f, 0.998329f, 0.998335f, 0.998340f, + 0.998346f, 0.998351f, 0.998357f, 0.998362f, 0.998368f, 0.998373f, 0.998379f, 0.998384f, + 0.998390f, 0.998395f, 0.998401f, 0.998406f, 0.998411f, 0.998417f, 0.998422f, 0.998428f, + 0.998433f, 0.998438f, 0.998444f, 0.998449f, 0.998454f, 0.998460f, 0.998465f, 0.998470f, + 0.998476f, 0.998481f, 0.998486f, 0.998491f, 0.998497f, 0.998502f, 0.998507f, 0.998512f, + 0.998518f, 0.998523f, 0.998528f, 0.998533f, 0.998538f, 0.998544f, 0.998549f, 0.998554f, + 0.998559f, 0.998564f, 0.998569f, 0.998574f, 0.998580f, 0.998585f, 0.998590f, 0.998595f, + 0.998600f, 0.998605f, 0.998610f, 0.998615f, 0.998620f, 0.998625f, 0.998630f, 0.998635f, + 0.998640f, 0.998645f, 0.998650f, 0.998655f, 0.998660f, 0.998665f, 0.998670f, 0.998675f, + 0.998680f, 0.998685f, 0.998690f, 0.998695f, 0.998700f, 0.998704f, 0.998709f, 0.998714f, + 0.998719f, 0.998724f, 0.998729f, 0.998734f, 0.998738f, 0.998743f, 0.998748f, 0.998753f, + 0.998758f, 0.998762f, 0.998767f, 0.998772f, 0.998777f, 0.998781f, 0.998786f, 0.998791f, + 0.998795f, 0.998800f, 0.998805f, 0.998810f, 0.998814f, 0.998819f, 0.998824f, 0.998828f, + 0.998833f, 0.998837f, 0.998842f, 0.998847f, 0.998851f, 0.998856f, 0.998860f, 0.998865f, + 0.998870f, 0.998874f, 0.998879f, 0.998883f, 0.998888f, 0.998892f, 0.998897f, 0.998901f, + 0.998906f, 0.998910f, 0.998915f, 0.998919f, 0.998924f, 0.998928f, 0.998932f, 0.998937f, + 0.998941f, 0.998946f, 0.998950f, 0.998954f, 0.998959f, 0.998963f, 0.998968f, 0.998972f, + 0.998976f, 0.998981f, 0.998985f, 0.998989f, 0.998994f, 0.998998f, 0.999002f, 0.999006f, + 0.999011f, 0.999015f, 0.999019f, 0.999023f, 0.999028f, 0.999032f, 0.999036f, 0.999040f, + 0.999044f, 0.999049f, 0.999053f, 0.999057f, 0.999061f, 0.999065f, 0.999069f, 0.999074f, + 0.999078f, 0.999082f, 0.999086f, 0.999090f, 0.999094f, 0.999098f, 0.999102f, 0.999106f, + 0.999110f, 0.999114f, 0.999118f, 0.999122f, 0.999126f, 0.999130f, 0.999134f, 0.999138f, + 0.999142f, 0.999146f, 0.999150f, 0.999154f, 0.999158f, 0.999162f, 0.999166f, 0.999170f, + 0.999174f, 0.999178f, 0.999182f, 0.999186f, 0.999189f, 0.999193f, 0.999197f, 0.999201f, + 0.999205f, 0.999209f, 0.999212f, 0.999216f, 0.999220f, 0.999224f, 0.999228f, 0.999231f, + 0.999235f, 0.999239f, 0.999243f, 0.999246f, 0.999250f, 0.999254f, 0.999257f, 0.999261f, + 0.999265f, 0.999268f, 0.999272f, 0.999276f, 0.999279f, 0.999283f, 0.999287f, 0.999290f, + 0.999294f, 0.999297f, 0.999301f, 0.999305f, 0.999308f, 0.999312f, 0.999315f, 0.999319f, + 0.999322f, 0.999326f, 0.999329f, 0.999333f, 0.999336f, 0.999340f, 0.999343f, 0.999347f, + 0.999350f, 0.999354f, 0.999357f, 0.999361f, 0.999364f, 0.999367f, 0.999371f, 0.999374f, + 0.999378f, 0.999381f, 0.999384f, 0.999388f, 0.999391f, 0.999394f, 0.999398f, 0.999401f, + 0.999404f, 0.999408f, 0.999411f, 0.999414f, 0.999418f, 0.999421f, 0.999424f, 0.999427f, + 0.999431f, 0.999434f, 0.999437f, 0.999440f, 0.999443f, 0.999447f, 0.999450f, 0.999453f, + 0.999456f, 0.999459f, 0.999462f, 0.999466f, 0.999469f, 0.999472f, 0.999475f, 0.999478f, + 0.999481f, 0.999484f, 0.999487f, 0.999490f, 0.999493f, 0.999497f, 0.999500f, 0.999503f, + 0.999506f, 0.999509f, 0.999512f, 0.999515f, 0.999518f, 0.999521f, 0.999524f, 0.999527f, + 0.999529f, 0.999532f, 0.999535f, 0.999538f, 0.999541f, 0.999544f, 0.999547f, 0.999550f, + 0.999553f, 0.999556f, 0.999558f, 0.999561f, 0.999564f, 0.999567f, 0.999570f, 0.999573f, + 0.999575f, 0.999578f, 0.999581f, 0.999584f, 0.999586f, 0.999589f, 0.999592f, 0.999595f, + 0.999597f, 0.999600f, 0.999603f, 0.999605f, 0.999608f, 0.999611f, 0.999614f, 0.999616f, + 0.999619f, 0.999621f, 0.999624f, 0.999627f, 0.999629f, 0.999632f, 0.999635f, 0.999637f, + 0.999640f, 0.999642f, 0.999645f, 0.999647f, 0.999650f, 0.999652f, 0.999655f, 0.999658f, + 0.999660f, 0.999663f, 0.999665f, 0.999667f, 0.999670f, 0.999672f, 0.999675f, 0.999677f, + 0.999680f, 0.999682f, 0.999685f, 0.999687f, 0.999689f, 0.999692f, 0.999694f, 0.999696f, + 0.999699f, 0.999701f, 0.999704f, 0.999706f, 0.999708f, 0.999710f, 0.999713f, 0.999715f, + 0.999717f, 0.999720f, 0.999722f, 0.999724f, 0.999726f, 0.999729f, 0.999731f, 0.999733f, + 0.999735f, 0.999738f, 0.999740f, 0.999742f, 0.999744f, 0.999746f, 0.999748f, 0.999750f, + 0.999753f, 0.999755f, 0.999757f, 0.999759f, 0.999761f, 0.999763f, 0.999765f, 0.999767f, + 0.999769f, 0.999771f, 0.999774f, 0.999776f, 0.999778f, 0.999780f, 0.999782f, 0.999784f, + 0.999786f, 0.999788f, 0.999790f, 0.999792f, 0.999793f, 0.999795f, 0.999797f, 0.999799f, + 0.999801f, 0.999803f, 0.999805f, 0.999807f, 0.999809f, 0.999811f, 0.999812f, 0.999814f, + 0.999816f, 0.999818f, 0.999820f, 0.999822f, 0.999823f, 0.999825f, 0.999827f, 0.999829f, + 0.999831f, 0.999832f, 0.999834f, 0.999836f, 0.999838f, 0.999839f, 0.999841f, 0.999843f, + 0.999844f, 0.999846f, 0.999848f, 0.999849f, 0.999851f, 0.999853f, 0.999854f, 0.999856f, + 0.999858f, 0.999859f, 0.999861f, 0.999862f, 0.999864f, 0.999866f, 0.999867f, 0.999869f, + 0.999870f, 0.999872f, 0.999873f, 0.999875f, 0.999876f, 0.999878f, 0.999879f, 0.999881f, + 0.999882f, 0.999884f, 0.999885f, 0.999887f, 0.999888f, 0.999890f, 0.999891f, 0.999892f, + 0.999894f, 0.999895f, 0.999897f, 0.999898f, 0.999899f, 0.999901f, 0.999902f, 0.999903f, + 0.999905f, 0.999906f, 0.999907f, 0.999909f, 0.999910f, 0.999911f, 0.999913f, 0.999914f, + 0.999915f, 0.999916f, 0.999917f, 0.999919f, 0.999920f, 0.999921f, 0.999922f, 0.999924f, + 0.999925f, 0.999926f, 0.999927f, 0.999928f, 0.999929f, 0.999930f, 0.999932f, 0.999933f, + 0.999934f, 0.999935f, 0.999936f, 0.999937f, 0.999938f, 0.999939f, 0.999940f, 0.999941f, + 0.999942f, 0.999943f, 0.999944f, 0.999945f, 0.999946f, 0.999947f, 0.999948f, 0.999949f, + 0.999950f, 0.999951f, 0.999952f, 0.999953f, 0.999954f, 0.999955f, 0.999956f, 0.999957f, + 0.999958f, 0.999959f, 0.999959f, 0.999960f, 0.999961f, 0.999962f, 0.999963f, 0.999964f, + 0.999964f, 0.999965f, 0.999966f, 0.999967f, 0.999968f, 0.999968f, 0.999969f, 0.999970f, + 0.999971f, 0.999971f, 0.999972f, 0.999973f, 0.999973f, 0.999974f, 0.999975f, 0.999976f, + 0.999976f, 0.999977f, 0.999977f, 0.999978f, 0.999979f, 0.999979f, 0.999980f, 0.999981f, + 0.999981f, 0.999982f, 0.999982f, 0.999983f, 0.999983f, 0.999984f, 0.999985f, 0.999985f, + 0.999986f, 0.999986f, 0.999987f, 0.999987f, 0.999988f, 0.999988f, 0.999988f, 0.999989f, + 0.999989f, 0.999990f, 0.999990f, 0.999991f, 0.999991f, 0.999991f, 0.999992f, 0.999992f, + 0.999993f, 0.999993f, 0.999993f, 0.999994f, 0.999994f, 0.999994f, 0.999995f, 0.999995f, + 0.999995f, 0.999996f, 0.999996f, 0.999996f, 0.999996f, 0.999997f, 0.999997f, 0.999997f, + 0.999997f, 0.999998f, 0.999998f, 0.999998f, 0.999998f, 0.999998f, 0.999999f, 0.999999f, + 0.999999f, 0.999999f, 0.999999f, 0.999999f, 0.999999f, 0.999999f, 1.000000f, 1.000000f, + 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, 1.000000f, + 0.000000f, -0.000096f, -0.000192f, -0.000288f, -0.000383f, -0.000479f, -0.000575f, -0.000671f, + -0.000767f, -0.000863f, -0.000959f, -0.001055f, -0.001150f, -0.001246f, -0.001342f, -0.001438f, + -0.001534f, -0.001630f, -0.001726f, -0.001822f, -0.001917f, -0.002013f, -0.002109f, -0.002205f, + -0.002301f, -0.002397f, -0.002493f, -0.002589f, -0.002684f, -0.002780f, -0.002876f, -0.002972f, + -0.003068f, -0.003164f, -0.003260f, -0.003356f, -0.003451f, -0.003547f, -0.003643f, -0.003739f, + -0.003835f, -0.003931f, -0.004027f, -0.004123f, -0.004218f, -0.004314f, -0.004410f, -0.004506f, + -0.004602f, -0.004698f, -0.004794f, -0.004890f, -0.004985f, -0.005081f, -0.005177f, -0.005273f, + -0.005369f, -0.005465f, -0.005561f, -0.005657f, -0.005752f, -0.005848f, -0.005944f, -0.006040f, + -0.006136f, -0.006232f, -0.006328f, -0.006424f, -0.006519f, -0.006615f, -0.006711f, -0.006807f, + -0.006903f, -0.006999f, -0.007095f, -0.007190f, -0.007286f, -0.007382f, -0.007478f, -0.007574f, + -0.007670f, -0.007766f, -0.007862f, -0.007957f, -0.008053f, -0.008149f, -0.008245f, -0.008341f, + -0.008437f, -0.008533f, -0.008629f, -0.008724f, -0.008820f, -0.008916f, -0.009012f, -0.009108f, + -0.009204f, -0.009300f, -0.009395f, -0.009491f, -0.009587f, -0.009683f, -0.009779f, -0.009875f, + -0.009971f, -0.010067f, -0.010162f, -0.010258f, -0.010354f, -0.010450f, -0.010546f, -0.010642f, + -0.010738f, -0.010834f, -0.010929f, -0.011025f, -0.011121f, -0.011217f, -0.011313f, -0.011409f, + -0.011505f, -0.011600f, -0.011696f, -0.011792f, -0.011888f, -0.011984f, -0.012080f, -0.012176f, + -0.012272f, -0.012367f, -0.012463f, -0.012559f, -0.012655f, -0.012751f, -0.012847f, -0.012943f, + -0.013038f, -0.013134f, -0.013230f, -0.013326f, -0.013422f, -0.013518f, -0.013614f, -0.013710f, + -0.013805f, -0.013901f, -0.013997f, -0.014093f, -0.014189f, -0.014285f, -0.014381f, -0.014476f, + -0.014572f, -0.014668f, -0.014764f, -0.014860f, -0.014956f, -0.015052f, -0.015147f, -0.015243f, + -0.015339f, -0.015435f, -0.015531f, -0.015627f, -0.015723f, -0.015819f, -0.015914f, -0.016010f, + -0.016106f, -0.016202f, -0.016298f, -0.016394f, -0.016490f, -0.016585f, -0.016681f, -0.016777f, + -0.016873f, -0.016969f, -0.017065f, -0.017161f, -0.017256f, -0.017352f, -0.017448f, -0.017544f, + -0.017640f, -0.017736f, -0.017832f, -0.017927f, -0.018023f, -0.018119f, -0.018215f, -0.018311f, + -0.018407f, -0.018503f, -0.018598f, -0.018694f, -0.018790f, -0.018886f, -0.018982f, -0.019078f, + -0.019174f, -0.019269f, -0.019365f, -0.019461f, -0.019557f, -0.019653f, -0.019749f, -0.019845f, + -0.019940f, -0.020036f, -0.020132f, -0.020228f, -0.020324f, -0.020420f, -0.020516f, -0.020611f, + -0.020707f, -0.020803f, -0.020899f, -0.020995f, -0.021091f, -0.021187f, -0.021282f, -0.021378f, + -0.021474f, -0.021570f, -0.021666f, -0.021762f, -0.021857f, -0.021953f, -0.022049f, -0.022145f, + -0.022241f, -0.022337f, -0.022433f, -0.022528f, -0.022624f, -0.022720f, -0.022816f, -0.022912f, + -0.023008f, -0.023104f, -0.023199f, -0.023295f, -0.023391f, -0.023487f, -0.023583f, -0.023679f, + -0.023774f, -0.023870f, -0.023966f, -0.024062f, -0.024158f, -0.024254f, -0.024350f, -0.024445f, + -0.024541f, -0.024637f, -0.024733f, -0.024829f, -0.024925f, -0.025020f, -0.025116f, -0.025212f, + -0.025308f, -0.025404f, -0.025500f, -0.025596f, -0.025691f, -0.025787f, -0.025883f, -0.025979f, + -0.026075f, -0.026171f, -0.026266f, -0.026362f, -0.026458f, -0.026554f, -0.026650f, -0.026746f, + -0.026841f, -0.026937f, -0.027033f, -0.027129f, -0.027225f, -0.027321f, -0.027416f, -0.027512f, + -0.027608f, -0.027704f, -0.027800f, -0.027896f, -0.027991f, -0.028087f, -0.028183f, -0.028279f, + -0.028375f, -0.028471f, -0.028567f, -0.028662f, -0.028758f, -0.028854f, -0.028950f, -0.029046f, + -0.029142f, -0.029237f, -0.029333f, -0.029429f, -0.029525f, -0.029621f, -0.029717f, -0.029812f, + -0.029908f, -0.030004f, -0.030100f, -0.030196f, -0.030291f, -0.030387f, -0.030483f, -0.030579f, + -0.030675f, -0.030771f, -0.030866f, -0.030962f, -0.031058f, -0.031154f, -0.031250f, -0.031346f, + -0.031441f, -0.031537f, -0.031633f, -0.031729f, -0.031825f, -0.031921f, -0.032016f, -0.032112f, + -0.032208f, -0.032304f, -0.032400f, -0.032495f, -0.032591f, -0.032687f, -0.032783f, -0.032879f, + -0.032975f, -0.033070f, -0.033166f, -0.033262f, -0.033358f, -0.033454f, -0.033550f, -0.033645f, + -0.033741f, -0.033837f, -0.033933f, -0.034029f, -0.034124f, -0.034220f, -0.034316f, -0.034412f, + -0.034508f, -0.034604f, -0.034699f, -0.034795f, -0.034891f, -0.034987f, -0.035083f, -0.035178f, + -0.035274f, -0.035370f, -0.035466f, -0.035562f, -0.035657f, -0.035753f, -0.035849f, -0.035945f, + -0.036041f, -0.036137f, -0.036232f, -0.036328f, -0.036424f, -0.036520f, -0.036616f, -0.036711f, + -0.036807f, -0.036903f, -0.036999f, -0.037095f, -0.037190f, -0.037286f, -0.037382f, -0.037478f, + -0.037574f, -0.037669f, -0.037765f, -0.037861f, -0.037957f, -0.038053f, -0.038149f, -0.038244f, + -0.038340f, -0.038436f, -0.038532f, -0.038628f, -0.038723f, -0.038819f, -0.038915f, -0.039011f, + -0.039107f, -0.039202f, -0.039298f, -0.039394f, -0.039490f, -0.039586f, -0.039681f, -0.039777f, + -0.039873f, -0.039969f, -0.040065f, -0.040160f, -0.040256f, -0.040352f, -0.040448f, -0.040544f, + -0.040639f, -0.040735f, -0.040831f, -0.040927f, -0.041022f, -0.041118f, -0.041214f, -0.041310f, + -0.041406f, -0.041501f, -0.041597f, -0.041693f, -0.041789f, -0.041885f, -0.041980f, -0.042076f, + -0.042172f, -0.042268f, -0.042364f, -0.042459f, -0.042555f, -0.042651f, -0.042747f, -0.042842f, + -0.042938f, -0.043034f, -0.043130f, -0.043226f, -0.043321f, -0.043417f, -0.043513f, -0.043609f, + -0.043705f, -0.043800f, -0.043896f, -0.043992f, -0.044088f, -0.044183f, -0.044279f, -0.044375f, + -0.044471f, -0.044567f, -0.044662f, -0.044758f, -0.044854f, -0.044950f, -0.045045f, -0.045141f, + -0.045237f, -0.045333f, -0.045429f, -0.045524f, -0.045620f, -0.045716f, -0.045812f, -0.045907f, + -0.046003f, -0.046099f, -0.046195f, -0.046290f, -0.046386f, -0.046482f, -0.046578f, -0.046674f, + -0.046769f, -0.046865f, -0.046961f, -0.047057f, -0.047152f, -0.047248f, -0.047344f, -0.047440f, + -0.047535f, -0.047631f, -0.047727f, -0.047823f, -0.047919f, -0.048014f, -0.048110f, -0.048206f, + -0.048302f, -0.048397f, -0.048493f, -0.048589f, -0.048685f, -0.048780f, -0.048876f, -0.048972f, + -0.049068f, -0.049163f, -0.049259f, -0.049355f, -0.049451f, -0.049546f, -0.049642f, -0.049738f, + -0.049834f, -0.049929f, -0.050025f, -0.050121f, -0.050217f, -0.050312f, -0.050408f, -0.050504f, + -0.050600f, -0.050696f, -0.050791f, -0.050887f, -0.050983f, -0.051078f, -0.051174f, -0.051270f, + -0.051366f, -0.051461f, -0.051557f, -0.051653f, -0.051749f, -0.051844f, -0.051940f, -0.052036f, + -0.052132f, -0.052227f, -0.052323f, -0.052419f, -0.052515f, -0.052610f, -0.052706f, -0.052802f, + -0.052898f, -0.052993f, -0.053089f, -0.053185f, -0.053281f, -0.053376f, -0.053472f, -0.053568f, + -0.053664f, -0.053759f, -0.053855f, -0.053951f, -0.054046f, -0.054142f, -0.054238f, -0.054334f, + -0.054429f, -0.054525f, -0.054621f, -0.054717f, -0.054812f, -0.054908f, -0.055004f, -0.055100f, + -0.055195f, -0.055291f, -0.055387f, -0.055482f, -0.055578f, -0.055674f, -0.055770f, -0.055865f, + -0.055961f, -0.056057f, -0.056152f, -0.056248f, -0.056344f, -0.056440f, -0.056535f, -0.056631f, + -0.056727f, -0.056823f, -0.056918f, -0.057014f, -0.057110f, -0.057205f, -0.057301f, -0.057397f, + -0.057493f, -0.057588f, -0.057684f, -0.057780f, -0.057875f, -0.057971f, -0.058067f, -0.058163f, + -0.058258f, -0.058354f, -0.058450f, -0.058545f, -0.058641f, -0.058737f, -0.058833f, -0.058928f, + -0.059024f, -0.059120f, -0.059215f, -0.059311f, -0.059407f, -0.059502f, -0.059598f, -0.059694f, + -0.059790f, -0.059885f, -0.059981f, -0.060077f, -0.060172f, -0.060268f, -0.060364f, -0.060459f, + -0.060555f, -0.060651f, -0.060747f, -0.060842f, -0.060938f, -0.061034f, -0.061129f, -0.061225f, + -0.061321f, -0.061416f, -0.061512f, -0.061608f, -0.061704f, -0.061799f, -0.061895f, -0.061991f, + -0.062086f, -0.062182f, -0.062278f, -0.062373f, -0.062469f, -0.062565f, -0.062660f, -0.062756f, + -0.062852f, -0.062947f, -0.063043f, -0.063139f, -0.063234f, -0.063330f, -0.063426f, -0.063522f, + -0.063617f, -0.063713f, -0.063809f, -0.063904f, -0.064000f, -0.064096f, -0.064191f, -0.064287f, + -0.064383f, -0.064478f, -0.064574f, -0.064670f, -0.064765f, -0.064861f, -0.064957f, -0.065052f, + -0.065148f, -0.065244f, -0.065339f, -0.065435f, -0.065531f, -0.065626f, -0.065722f, -0.065818f, + -0.065913f, -0.066009f, -0.066105f, -0.066200f, -0.066296f, -0.066392f, -0.066487f, -0.066583f, + -0.066679f, -0.066774f, -0.066870f, -0.066966f, -0.067061f, -0.067157f, -0.067253f, -0.067348f, + -0.067444f, -0.067540f, -0.067635f, -0.067731f, -0.067827f, -0.067922f, -0.068018f, -0.068113f, + -0.068209f, -0.068305f, -0.068400f, -0.068496f, -0.068592f, -0.068687f, -0.068783f, -0.068879f, + -0.068974f, -0.069070f, -0.069166f, -0.069261f, -0.069357f, -0.069453f, -0.069548f, -0.069644f, + -0.069739f, -0.069835f, -0.069931f, -0.070026f, -0.070122f, -0.070218f, -0.070313f, -0.070409f, + -0.070505f, -0.070600f, -0.070696f, -0.070791f, -0.070887f, -0.070983f, -0.071078f, -0.071174f, + -0.071270f, -0.071365f, -0.071461f, -0.071557f, -0.071652f, -0.071748f, -0.071843f, -0.071939f, + -0.072035f, -0.072130f, -0.072226f, -0.072322f, -0.072417f, -0.072513f, -0.072608f, -0.072704f, + -0.072800f, -0.072895f, -0.072991f, -0.073086f, -0.073182f, -0.073278f, -0.073373f, -0.073469f, + -0.073565f, -0.073660f, -0.073756f, -0.073851f, -0.073947f, -0.074043f, -0.074138f, -0.074234f, + -0.074329f, -0.074425f, -0.074521f, -0.074616f, -0.074712f, -0.074807f, -0.074903f, -0.074999f, + -0.075094f, -0.075190f, -0.075286f, -0.075381f, -0.075477f, -0.075572f, -0.075668f, -0.075764f, + -0.075859f, -0.075955f, -0.076050f, -0.076146f, -0.076241f, -0.076337f, -0.076433f, -0.076528f, + -0.076624f, -0.076719f, -0.076815f, -0.076911f, -0.077006f, -0.077102f, -0.077197f, -0.077293f, + -0.077389f, -0.077484f, -0.077580f, -0.077675f, -0.077771f, -0.077866f, -0.077962f, -0.078058f, + -0.078153f, -0.078249f, -0.078344f, -0.078440f, -0.078536f, -0.078631f, -0.078727f, -0.078822f, + -0.078918f, -0.079013f, -0.079109f, -0.079205f, -0.079300f, -0.079396f, -0.079491f, -0.079587f, + -0.079682f, -0.079778f, -0.079874f, -0.079969f, -0.080065f, -0.080160f, -0.080256f, -0.080351f, + -0.080447f, -0.080543f, -0.080638f, -0.080734f, -0.080829f, -0.080925f, -0.081020f, -0.081116f, + -0.081211f, -0.081307f, -0.081403f, -0.081498f, -0.081594f, -0.081689f, -0.081785f, -0.081880f, + -0.081976f, -0.082071f, -0.082167f, -0.082263f, -0.082358f, -0.082454f, -0.082549f, -0.082645f, + -0.082740f, -0.082836f, -0.082931f, -0.083027f, -0.083122f, -0.083218f, -0.083314f, -0.083409f, + -0.083505f, -0.083600f, -0.083696f, -0.083791f, -0.083887f, -0.083982f, -0.084078f, -0.084173f, + -0.084269f, -0.084364f, -0.084460f, -0.084555f, -0.084651f, -0.084747f, -0.084842f, -0.084938f, + -0.085033f, -0.085129f, -0.085224f, -0.085320f, -0.085415f, -0.085511f, -0.085606f, -0.085702f, + -0.085797f, -0.085893f, -0.085988f, -0.086084f, -0.086179f, -0.086275f, -0.086370f, -0.086466f, + -0.086561f, -0.086657f, -0.086752f, -0.086848f, -0.086943f, -0.087039f, -0.087135f, -0.087230f, + -0.087326f, -0.087421f, -0.087517f, -0.087612f, -0.087708f, -0.087803f, -0.087899f, -0.087994f, + -0.088090f, -0.088185f, -0.088281f, -0.088376f, -0.088472f, -0.088567f, -0.088663f, -0.088758f, + -0.088854f, -0.088949f, -0.089045f, -0.089140f, -0.089236f, -0.089331f, -0.089427f, -0.089522f, + -0.089617f, -0.089713f, -0.089808f, -0.089904f, -0.089999f, -0.090095f, -0.090190f, -0.090286f, + -0.090381f, -0.090477f, -0.090572f, -0.090668f, -0.090763f, -0.090859f, -0.090954f, -0.091050f, + -0.091145f, -0.091241f, -0.091336f, -0.091432f, -0.091527f, -0.091623f, -0.091718f, -0.091813f, + -0.091909f, -0.092004f, -0.092100f, -0.092195f, -0.092291f, -0.092386f, -0.092482f, -0.092577f, + -0.092673f, -0.092768f, -0.092864f, -0.092959f, -0.093055f, -0.093150f, -0.093245f, -0.093341f, + -0.093436f, -0.093532f, -0.093627f, -0.093723f, -0.093818f, -0.093914f, -0.094009f, -0.094104f, + -0.094200f, -0.094295f, -0.094391f, -0.094486f, -0.094582f, -0.094677f, -0.094773f, -0.094868f, + -0.094963f, -0.095059f, -0.095154f, -0.095250f, -0.095345f, -0.095441f, -0.095536f, -0.095632f, + -0.095727f, -0.095822f, -0.095918f, -0.096013f, -0.096109f, -0.096204f, -0.096300f, -0.096395f, + -0.096490f, -0.096586f, -0.096681f, -0.096777f, -0.096872f, -0.096968f, -0.097063f, -0.097158f, + -0.097254f, -0.097349f, -0.097445f, -0.097540f, -0.097635f, -0.097731f, -0.097826f, -0.097922f, + -0.098017f, -0.098113f, -0.098208f, -0.098303f, -0.098399f, -0.098494f, -0.098590f, -0.098685f, + -0.098780f, -0.098876f, -0.098971f, -0.099067f, -0.099162f, -0.099257f, -0.099353f, -0.099448f, + -0.099544f, -0.099639f, -0.099734f, -0.099830f, -0.099925f, -0.100021f, -0.100116f, -0.100211f, + -0.100307f, -0.100402f, -0.100498f, -0.100593f, -0.100688f, -0.100784f, -0.100879f, -0.100974f, + -0.101070f, -0.101165f, -0.101261f, -0.101356f, -0.101451f, -0.101547f, -0.101642f, -0.101738f, + -0.101833f, -0.101928f, -0.102024f, -0.102119f, -0.102214f, -0.102310f, -0.102405f, -0.102500f, + -0.102596f, -0.102691f, -0.102787f, -0.102882f, -0.102977f, -0.103073f, -0.103168f, -0.103263f, + -0.103359f, -0.103454f, -0.103550f, -0.103645f, -0.103740f, -0.103836f, -0.103931f, -0.104026f, + -0.104122f, -0.104217f, -0.104312f, -0.104408f, -0.104503f, -0.104598f, -0.104694f, -0.104789f, + -0.104884f, -0.104980f, -0.105075f, -0.105170f, -0.105266f, -0.105361f, -0.105456f, -0.105552f, + -0.105647f, -0.105742f, -0.105838f, -0.105933f, -0.106028f, -0.106124f, -0.106219f, -0.106314f, + -0.106410f, -0.106505f, -0.106600f, -0.106696f, -0.106791f, -0.106886f, -0.106982f, -0.107077f, + -0.107172f, -0.107268f, -0.107363f, -0.107458f, -0.107554f, -0.107649f, -0.107744f, -0.107840f, + -0.107935f, -0.108030f, -0.108126f, -0.108221f, -0.108316f, -0.108412f, -0.108507f, -0.108602f, + -0.108697f, -0.108793f, -0.108888f, -0.108983f, -0.109079f, -0.109174f, -0.109269f, -0.109365f, + -0.109460f, -0.109555f, -0.109650f, -0.109746f, -0.109841f, -0.109936f, -0.110032f, -0.110127f, + -0.110222f, -0.110317f, -0.110413f, -0.110508f, -0.110603f, -0.110699f, -0.110794f, -0.110889f, + -0.110984f, -0.111080f, -0.111175f, -0.111270f, -0.111366f, -0.111461f, -0.111556f, -0.111651f, + -0.111747f, -0.111842f, -0.111937f, -0.112033f, -0.112128f, -0.112223f, -0.112318f, -0.112414f, + -0.112509f, -0.112604f, -0.112699f, -0.112795f, -0.112890f, -0.112985f, -0.113080f, -0.113176f, + -0.113271f, -0.113366f, -0.113461f, -0.113557f, -0.113652f, -0.113747f, -0.113842f, -0.113938f, + -0.114033f, -0.114128f, -0.114223f, -0.114319f, -0.114414f, -0.114509f, -0.114604f, -0.114700f, + -0.114795f, -0.114890f, -0.114985f, -0.115081f, -0.115176f, -0.115271f, -0.115366f, -0.115462f, + -0.115557f, -0.115652f, -0.115747f, -0.115842f, -0.115938f, -0.116033f, -0.116128f, -0.116223f, + -0.116319f, -0.116414f, -0.116509f, -0.116604f, -0.116700f, -0.116795f, -0.116890f, -0.116985f, + -0.117080f, -0.117176f, -0.117271f, -0.117366f, -0.117461f, -0.117556f, -0.117652f, -0.117747f, + -0.117842f, -0.117937f, -0.118032f, -0.118128f, -0.118223f, -0.118318f, -0.118413f, -0.118508f, + -0.118604f, -0.118699f, -0.118794f, -0.118889f, -0.118984f, -0.119080f, -0.119175f, -0.119270f, + -0.119365f, -0.119460f, -0.119556f, -0.119651f, -0.119746f, -0.119841f, -0.119936f, -0.120032f, + -0.120127f, -0.120222f, -0.120317f, -0.120412f, -0.120507f, -0.120603f, -0.120698f, -0.120793f, + -0.120888f, -0.120983f, -0.121078f, -0.121174f, -0.121269f, -0.121364f, -0.121459f, -0.121554f, + -0.121649f, -0.121745f, -0.121840f, -0.121935f, -0.122030f, -0.122125f, -0.122220f, -0.122316f, + -0.122411f, -0.122506f, -0.122601f, -0.122696f, -0.122791f, -0.122886f, -0.122982f, -0.123077f, + -0.123172f, -0.123267f, -0.123362f, -0.123457f, -0.123552f, -0.123648f, -0.123743f, -0.123838f, + -0.123933f, -0.124028f, -0.124123f, -0.124218f, -0.124314f, -0.124409f, -0.124504f, -0.124599f, + -0.124694f, -0.124789f, -0.124884f, -0.124979f, -0.125075f, -0.125170f, -0.125265f, -0.125360f, + -0.125455f, -0.125550f, -0.125645f, -0.125740f, -0.125835f, -0.125931f, -0.126026f, -0.126121f, + -0.126216f, -0.126311f, -0.126406f, -0.126501f, -0.126596f, -0.126691f, -0.126787f, -0.126882f, + -0.126977f, -0.127072f, -0.127167f, -0.127262f, -0.127357f, -0.127452f, -0.127547f, -0.127642f, + -0.127737f, -0.127833f, -0.127928f, -0.128023f, -0.128118f, -0.128213f, -0.128308f, -0.128403f, + -0.128498f, -0.128593f, -0.128688f, -0.128783f, -0.128878f, -0.128973f, -0.129069f, -0.129164f, + -0.129259f, -0.129354f, -0.129449f, -0.129544f, -0.129639f, -0.129734f, -0.129829f, -0.129924f, + -0.130019f, -0.130114f, -0.130209f, -0.130304f, -0.130399f, -0.130495f, -0.130590f, -0.130685f, + -0.130780f, -0.130875f, -0.130970f, -0.131065f, -0.131160f, -0.131255f, -0.131350f, -0.131445f, + -0.131540f, -0.131635f, -0.131730f, -0.131825f, -0.131920f, -0.132015f, -0.132110f, -0.132205f, + -0.132300f, -0.132395f, -0.132490f, -0.132585f, -0.132680f, -0.132775f, -0.132870f, -0.132966f, + -0.133061f, -0.133156f, -0.133251f, -0.133346f, -0.133441f, -0.133536f, -0.133631f, -0.133726f, + -0.133821f, -0.133916f, -0.134011f, -0.134106f, -0.134201f, -0.134296f, -0.134391f, -0.134486f, + -0.134581f, -0.134676f, -0.134771f, -0.134866f, -0.134961f, -0.135056f, -0.135151f, -0.135246f, + -0.135341f, -0.135436f, -0.135531f, -0.135626f, -0.135721f, -0.135816f, -0.135911f, -0.136006f, + -0.136101f, -0.136196f, -0.136291f, -0.136386f, -0.136480f, -0.136575f, -0.136670f, -0.136765f, + -0.136860f, -0.136955f, -0.137050f, -0.137145f, -0.137240f, -0.137335f, -0.137430f, -0.137525f, + -0.137620f, -0.137715f, -0.137810f, -0.137905f, -0.138000f, -0.138095f, -0.138190f, -0.138285f, + -0.138380f, -0.138475f, -0.138570f, -0.138665f, -0.138760f, -0.138855f, -0.138949f, -0.139044f, + -0.139139f, -0.139234f, -0.139329f, -0.139424f, -0.139519f, -0.139614f, -0.139709f, -0.139804f, + -0.139899f, -0.139994f, -0.140089f, -0.140184f, -0.140279f, -0.140373f, -0.140468f, -0.140563f, + -0.140658f, -0.140753f, -0.140848f, -0.140943f, -0.141038f, -0.141133f, -0.141228f, -0.141323f, + -0.141418f, -0.141512f, -0.141607f, -0.141702f, -0.141797f, -0.141892f, -0.141987f, -0.142082f, + -0.142177f, -0.142272f, -0.142367f, -0.142461f, -0.142556f, -0.142651f, -0.142746f, -0.142841f, + -0.142936f, -0.143031f, -0.143126f, -0.143221f, -0.143316f, -0.143410f, -0.143505f, -0.143600f, + -0.143695f, -0.143790f, -0.143885f, -0.143980f, -0.144075f, -0.144169f, -0.144264f, -0.144359f, + -0.144454f, -0.144549f, -0.144644f, -0.144739f, -0.144833f, -0.144928f, -0.145023f, -0.145118f, + -0.145213f, -0.145308f, -0.145403f, -0.145497f, -0.145592f, -0.145687f, -0.145782f, -0.145877f, + -0.145972f, -0.146067f, -0.146161f, -0.146256f, -0.146351f, -0.146446f, -0.146541f, -0.146636f, + -0.146730f, -0.146825f, -0.146920f, -0.147015f, -0.147110f, -0.147205f, -0.147299f, -0.147394f, + -0.147489f, -0.147584f, -0.147679f, -0.147774f, -0.147868f, -0.147963f, -0.148058f, -0.148153f, + -0.148248f, -0.148342f, -0.148437f, -0.148532f, -0.148627f, -0.148722f, -0.148817f, -0.148911f, + -0.149006f, -0.149101f, -0.149196f, -0.149291f, -0.149385f, -0.149480f, -0.149575f, -0.149670f, + -0.149765f, -0.149859f, -0.149954f, -0.150049f, -0.150144f, -0.150238f, -0.150333f, -0.150428f, + -0.150523f, -0.150618f, -0.150712f, -0.150807f, -0.150902f, -0.150997f, -0.151092f, -0.151186f, + -0.151281f, -0.151376f, -0.151471f, -0.151565f, -0.151660f, -0.151755f, -0.151850f, -0.151944f, + -0.152039f, -0.152134f, -0.152229f, -0.152323f, -0.152418f, -0.152513f, -0.152608f, -0.152702f, + -0.152797f, -0.152892f, -0.152987f, -0.153081f, -0.153176f, -0.153271f, -0.153366f, -0.153460f, + -0.153555f, -0.153650f, -0.153745f, -0.153839f, -0.153934f, -0.154029f, -0.154124f, -0.154218f, + -0.154313f, -0.154408f, -0.154502f, -0.154597f, -0.154692f, -0.154787f, -0.154881f, -0.154976f, + -0.155071f, -0.155165f, -0.155260f, -0.155355f, -0.155450f, -0.155544f, -0.155639f, -0.155734f, + -0.155828f, -0.155923f, -0.156018f, -0.156112f, -0.156207f, -0.156302f, -0.156397f, -0.156491f, + -0.156586f, -0.156681f, -0.156775f, -0.156870f, -0.156965f, -0.157059f, -0.157154f, -0.157249f, + -0.157343f, -0.157438f, -0.157533f, -0.157627f, -0.157722f, -0.157817f, -0.157912f, -0.158006f, + -0.158101f, -0.158196f, -0.158290f, -0.158385f, -0.158480f, -0.158574f, -0.158669f, -0.158763f, + -0.158858f, -0.158953f, -0.159047f, -0.159142f, -0.159237f, -0.159331f, -0.159426f, -0.159521f, + -0.159615f, -0.159710f, -0.159805f, -0.159899f, -0.159994f, -0.160089f, -0.160183f, -0.160278f, + -0.160372f, -0.160467f, -0.160562f, -0.160656f, -0.160751f, -0.160846f, -0.160940f, -0.161035f, + -0.161129f, -0.161224f, -0.161319f, -0.161413f, -0.161508f, -0.161603f, -0.161697f, -0.161792f, + -0.161886f, -0.161981f, -0.162076f, -0.162170f, -0.162265f, -0.162359f, -0.162454f, -0.162549f, + -0.162643f, -0.162738f, -0.162832f, -0.162927f, -0.163022f, -0.163116f, -0.163211f, -0.163305f, + -0.163400f, -0.163495f, -0.163589f, -0.163684f, -0.163778f, -0.163873f, -0.163967f, -0.164062f, + -0.164157f, -0.164251f, -0.164346f, -0.164440f, -0.164535f, -0.164629f, -0.164724f, -0.164819f, + -0.164913f, -0.165008f, -0.165102f, -0.165197f, -0.165291f, -0.165386f, -0.165480f, -0.165575f, + -0.165670f, -0.165764f, -0.165859f, -0.165953f, -0.166048f, -0.166142f, -0.166237f, -0.166331f, + -0.166426f, -0.166520f, -0.166615f, -0.166710f, -0.166804f, -0.166899f, -0.166993f, -0.167088f, + -0.167182f, -0.167277f, -0.167371f, -0.167466f, -0.167560f, -0.167655f, -0.167749f, -0.167844f, + -0.167938f, -0.168033f, -0.168127f, -0.168222f, -0.168316f, -0.168411f, -0.168505f, -0.168600f, + -0.168694f, -0.168789f, -0.168883f, -0.168978f, -0.169072f, -0.169167f, -0.169261f, -0.169356f, + -0.169450f, -0.169545f, -0.169639f, -0.169734f, -0.169828f, -0.169923f, -0.170017f, -0.170112f, + -0.170206f, -0.170301f, -0.170395f, -0.170490f, -0.170584f, -0.170678f, -0.170773f, -0.170867f, + -0.170962f, -0.171056f, -0.171151f, -0.171245f, -0.171340f, -0.171434f, -0.171529f, -0.171623f, + -0.171718f, -0.171812f, -0.171906f, -0.172001f, -0.172095f, -0.172190f, -0.172284f, -0.172379f, + -0.172473f, -0.172568f, -0.172662f, -0.172756f, -0.172851f, -0.172945f, -0.173040f, -0.173134f, + -0.173229f, -0.173323f, -0.173417f, -0.173512f, -0.173606f, -0.173701f, -0.173795f, -0.173889f, + -0.173984f, -0.174078f, -0.174173f, -0.174267f, -0.174362f, -0.174456f, -0.174550f, -0.174645f, + -0.174739f, -0.174834f, -0.174928f, -0.175022f, -0.175117f, -0.175211f, -0.175305f, -0.175400f, + -0.175494f, -0.175589f, -0.175683f, -0.175777f, -0.175872f, -0.175966f, -0.176061f, -0.176155f, + -0.176249f, -0.176344f, -0.176438f, -0.176532f, -0.176627f, -0.176721f, -0.176815f, -0.176910f, + -0.177004f, -0.177099f, -0.177193f, -0.177287f, -0.177382f, -0.177476f, -0.177570f, -0.177665f, + -0.177759f, -0.177853f, -0.177948f, -0.178042f, -0.178136f, -0.178231f, -0.178325f, -0.178419f, + -0.178514f, -0.178608f, -0.178702f, -0.178797f, -0.178891f, -0.178985f, -0.179080f, -0.179174f, + -0.179268f, -0.179363f, -0.179457f, -0.179551f, -0.179646f, -0.179740f, -0.179834f, -0.179929f, + -0.180023f, -0.180117f, -0.180212f, -0.180306f, -0.180400f, -0.180494f, -0.180589f, -0.180683f, + -0.180777f, -0.180872f, -0.180966f, -0.181060f, -0.181154f, -0.181249f, -0.181343f, -0.181437f, + -0.181532f, -0.181626f, -0.181720f, -0.181814f, -0.181909f, -0.182003f, -0.182097f, -0.182192f, + -0.182286f, -0.182380f, -0.182474f, -0.182569f, -0.182663f, -0.182757f, -0.182851f, -0.182946f, + -0.183040f, -0.183134f, -0.183228f, -0.183323f, -0.183417f, -0.183511f, -0.183605f, -0.183700f, + -0.183794f, -0.183888f, -0.183982f, -0.184077f, -0.184171f, -0.184265f, -0.184359f, -0.184454f, + -0.184548f, -0.184642f, -0.184736f, -0.184830f, -0.184925f, -0.185019f, -0.185113f, -0.185207f, + -0.185301f, -0.185396f, -0.185490f, -0.185584f, -0.185678f, -0.185773f, -0.185867f, -0.185961f, + -0.186055f, -0.186149f, -0.186244f, -0.186338f, -0.186432f, -0.186526f, -0.186620f, -0.186715f, + -0.186809f, -0.186903f, -0.186997f, -0.187091f, -0.187185f, -0.187280f, -0.187374f, -0.187468f, + -0.187562f, -0.187656f, -0.187750f, -0.187845f, -0.187939f, -0.188033f, -0.188127f, -0.188221f, + -0.188315f, -0.188410f, -0.188504f, -0.188598f, -0.188692f, -0.188786f, -0.188880f, -0.188975f, + -0.189069f, -0.189163f, -0.189257f, -0.189351f, -0.189445f, -0.189539f, -0.189634f, -0.189728f, + -0.189822f, -0.189916f, -0.190010f, -0.190104f, -0.190198f, -0.190292f, -0.190387f, -0.190481f, + -0.190575f, -0.190669f, -0.190763f, -0.190857f, -0.190951f, -0.191045f, -0.191139f, -0.191234f, + -0.191328f, -0.191422f, -0.191516f, -0.191610f, -0.191704f, -0.191798f, -0.191892f, -0.191986f, + -0.192080f, -0.192174f, -0.192269f, -0.192363f, -0.192457f, -0.192551f, -0.192645f, -0.192739f, + -0.192833f, -0.192927f, -0.193021f, -0.193115f, -0.193209f, -0.193303f, -0.193397f, -0.193492f, + -0.193586f, -0.193680f, -0.193774f, -0.193868f, -0.193962f, -0.194056f, -0.194150f, -0.194244f, + -0.194338f, -0.194432f, -0.194526f, -0.194620f, -0.194714f, -0.194808f, -0.194902f, -0.194996f, + -0.195090f, -0.195184f, -0.195278f, -0.195372f, -0.195466f, -0.195560f, -0.195654f, -0.195748f, + -0.195843f, -0.195937f, -0.196031f, -0.196125f, -0.196219f, -0.196313f, -0.196407f, -0.196501f, + -0.196595f, -0.196689f, -0.196783f, -0.196877f, -0.196971f, -0.197065f, -0.197159f, -0.197253f, + -0.197347f, -0.197441f, -0.197535f, -0.197629f, -0.197722f, -0.197816f, -0.197910f, -0.198004f, + -0.198098f, -0.198192f, -0.198286f, -0.198380f, -0.198474f, -0.198568f, -0.198662f, -0.198756f, + -0.198850f, -0.198944f, -0.199038f, -0.199132f, -0.199226f, -0.199320f, -0.199414f, -0.199508f, + -0.199602f, -0.199696f, -0.199790f, -0.199884f, -0.199978f, -0.200071f, -0.200165f, -0.200259f, + -0.200353f, -0.200447f, -0.200541f, -0.200635f, -0.200729f, -0.200823f, -0.200917f, -0.201011f, + -0.201105f, -0.201199f, -0.201292f, -0.201386f, -0.201480f, -0.201574f, -0.201668f, -0.201762f, + -0.201856f, -0.201950f, -0.202044f, -0.202138f, -0.202231f, -0.202325f, -0.202419f, -0.202513f, + -0.202607f, -0.202701f, -0.202795f, -0.202889f, -0.202983f, -0.203076f, -0.203170f, -0.203264f, + -0.203358f, -0.203452f, -0.203546f, -0.203640f, -0.203734f, -0.203827f, -0.203921f, -0.204015f, + -0.204109f, -0.204203f, -0.204297f, -0.204391f, -0.204484f, -0.204578f, -0.204672f, -0.204766f, + -0.204860f, -0.204954f, -0.205047f, -0.205141f, -0.205235f, -0.205329f, -0.205423f, -0.205517f, + -0.205610f, -0.205704f, -0.205798f, -0.205892f, -0.205986f, -0.206080f, -0.206173f, -0.206267f, + -0.206361f, -0.206455f, -0.206549f, -0.206642f, -0.206736f, -0.206830f, -0.206924f, -0.207018f, + -0.207111f, -0.207205f, -0.207299f, -0.207393f, -0.207487f, -0.207580f, -0.207674f, -0.207768f, + -0.207862f, -0.207955f, -0.208049f, -0.208143f, -0.208237f, -0.208331f, -0.208424f, -0.208518f, + -0.208612f, -0.208706f, -0.208799f, -0.208893f, -0.208987f, -0.209081f, -0.209174f, -0.209268f, + -0.209362f, -0.209456f, -0.209549f, -0.209643f, -0.209737f, -0.209831f, -0.209924f, -0.210018f, + -0.210112f, -0.210206f, -0.210299f, -0.210393f, -0.210487f, -0.210580f, -0.210674f, -0.210768f, + -0.210862f, -0.210955f, -0.211049f, -0.211143f, -0.211237f, -0.211330f, -0.211424f, -0.211518f, + -0.211611f, -0.211705f, -0.211799f, -0.211892f, -0.211986f, -0.212080f, -0.212174f, -0.212267f, + -0.212361f, -0.212455f, -0.212548f, -0.212642f, -0.212736f, -0.212829f, -0.212923f, -0.213017f, + -0.213110f, -0.213204f, -0.213298f, -0.213391f, -0.213485f, -0.213579f, -0.213672f, -0.213766f, + -0.213860f, -0.213953f, -0.214047f, -0.214141f, -0.214234f, -0.214328f, -0.214422f, -0.214515f, + -0.214609f, -0.214702f, -0.214796f, -0.214890f, -0.214983f, -0.215077f, -0.215171f, -0.215264f, + -0.215358f, -0.215451f, -0.215545f, -0.215639f, -0.215732f, -0.215826f, -0.215920f, -0.216013f, + -0.216107f, -0.216200f, -0.216294f, -0.216388f, -0.216481f, -0.216575f, -0.216668f, -0.216762f, + -0.216856f, -0.216949f, -0.217043f, -0.217136f, -0.217230f, -0.217324f, -0.217417f, -0.217511f, + -0.217604f, -0.217698f, -0.217791f, -0.217885f, -0.217979f, -0.218072f, -0.218166f, -0.218259f, + -0.218353f, -0.218446f, -0.218540f, -0.218633f, -0.218727f, -0.218821f, -0.218914f, -0.219008f, + -0.219101f, -0.219195f, -0.219288f, -0.219382f, -0.219475f, -0.219569f, -0.219662f, -0.219756f, + -0.219850f, -0.219943f, -0.220037f, -0.220130f, -0.220224f, -0.220317f, -0.220411f, -0.220504f, + -0.220598f, -0.220691f, -0.220785f, -0.220878f, -0.220972f, -0.221065f, -0.221159f, -0.221252f, + -0.221346f, -0.221439f, -0.221533f, -0.221626f, -0.221720f, -0.221813f, -0.221907f, -0.222000f, + -0.222094f, -0.222187f, -0.222281f, -0.222374f, -0.222468f, -0.222561f, -0.222654f, -0.222748f, + -0.222841f, -0.222935f, -0.223028f, -0.223122f, -0.223215f, -0.223309f, -0.223402f, -0.223496f, + -0.223589f, -0.223682f, -0.223776f, -0.223869f, -0.223963f, -0.224056f, -0.224150f, -0.224243f, + -0.224337f, -0.224430f, -0.224523f, -0.224617f, -0.224710f, -0.224804f, -0.224897f, -0.224991f, + -0.225084f, -0.225177f, -0.225271f, -0.225364f, -0.225458f, -0.225551f, -0.225644f, -0.225738f, + -0.225831f, -0.225925f, -0.226018f, -0.226111f, -0.226205f, -0.226298f, -0.226391f, -0.226485f, + -0.226578f, -0.226672f, -0.226765f, -0.226858f, -0.226952f, -0.227045f, -0.227139f, -0.227232f, + -0.227325f, -0.227419f, -0.227512f, -0.227605f, -0.227699f, -0.227792f, -0.227885f, -0.227979f, + -0.228072f, -0.228165f, -0.228259f, -0.228352f, -0.228445f, -0.228539f, -0.228632f, -0.228725f, + -0.228819f, -0.228912f, -0.229005f, -0.229099f, -0.229192f, -0.229285f, -0.229379f, -0.229472f, + -0.229565f, -0.229659f, -0.229752f, -0.229845f, -0.229939f, -0.230032f, -0.230125f, -0.230218f, + -0.230312f, -0.230405f, -0.230498f, -0.230592f, -0.230685f, -0.230778f, -0.230872f, -0.230965f, + -0.231058f, -0.231151f, -0.231245f, -0.231338f, -0.231431f, -0.231524f, -0.231618f, -0.231711f, + -0.231804f, -0.231898f, -0.231991f, -0.232084f, -0.232177f, -0.232271f, -0.232364f, -0.232457f, + -0.232550f, -0.232644f, -0.232737f, -0.232830f, -0.232923f, -0.233017f, -0.233110f, -0.233203f, + -0.233296f, -0.233389f, -0.233483f, -0.233576f, -0.233669f, -0.233762f, -0.233856f, -0.233949f, + -0.234042f, -0.234135f, -0.234228f, -0.234322f, -0.234415f, -0.234508f, -0.234601f, -0.234694f, + -0.234788f, -0.234881f, -0.234974f, -0.235067f, -0.235160f, -0.235254f, -0.235347f, -0.235440f, + -0.235533f, -0.235626f, -0.235719f, -0.235813f, -0.235906f, -0.235999f, -0.236092f, -0.236185f, + -0.236278f, -0.236372f, -0.236465f, -0.236558f, -0.236651f, -0.236744f, -0.236837f, -0.236930f, + -0.237024f, -0.237117f, -0.237210f, -0.237303f, -0.237396f, -0.237489f, -0.237582f, -0.237676f, + -0.237769f, -0.237862f, -0.237955f, -0.238048f, -0.238141f, -0.238234f, -0.238327f, -0.238420f, + -0.238514f, -0.238607f, -0.238700f, -0.238793f, -0.238886f, -0.238979f, -0.239072f, -0.239165f, + -0.239258f, -0.239351f, -0.239445f, -0.239538f, -0.239631f, -0.239724f, -0.239817f, -0.239910f, + -0.240003f, -0.240096f, -0.240189f, -0.240282f, -0.240375f, -0.240468f, -0.240561f, -0.240654f, + -0.240748f, -0.240841f, -0.240934f, -0.241027f, -0.241120f, -0.241213f, -0.241306f, -0.241399f, + -0.241492f, -0.241585f, -0.241678f, -0.241771f, -0.241864f, -0.241957f, -0.242050f, -0.242143f, + -0.242236f, -0.242329f, -0.242422f, -0.242515f, -0.242608f, -0.242701f, -0.242794f, -0.242887f, + -0.242980f, -0.243073f, -0.243166f, -0.243259f, -0.243352f, -0.243445f, -0.243538f, -0.243631f, + -0.243724f, -0.243817f, -0.243910f, -0.244003f, -0.244096f, -0.244189f, -0.244282f, -0.244375f, + -0.244468f, -0.244561f, -0.244654f, -0.244747f, -0.244840f, -0.244933f, -0.245026f, -0.245119f, + -0.245212f, -0.245304f, -0.245397f, -0.245490f, -0.245583f, -0.245676f, -0.245769f, -0.245862f, + -0.245955f, -0.246048f, -0.246141f, -0.246234f, -0.246327f, -0.246420f, -0.246513f, -0.246606f, + -0.246698f, -0.246791f, -0.246884f, -0.246977f, -0.247070f, -0.247163f, -0.247256f, -0.247349f, + -0.247442f, -0.247535f, -0.247627f, -0.247720f, -0.247813f, -0.247906f, -0.247999f, -0.248092f, + -0.248185f, -0.248278f, -0.248370f, -0.248463f, -0.248556f, -0.248649f, -0.248742f, -0.248835f, + -0.248928f, -0.249020f, -0.249113f, -0.249206f, -0.249299f, -0.249392f, -0.249485f, -0.249578f, + -0.249670f, -0.249763f, -0.249856f, -0.249949f, -0.250042f, -0.250135f, -0.250227f, -0.250320f, + -0.250413f, -0.250506f, -0.250599f, -0.250691f, -0.250784f, -0.250877f, -0.250970f, -0.251063f, + -0.251155f, -0.251248f, -0.251341f, -0.251434f, -0.251527f, -0.251619f, -0.251712f, -0.251805f, + -0.251898f, -0.251991f, -0.252083f, -0.252176f, -0.252269f, -0.252362f, -0.252454f, -0.252547f, + -0.252640f, -0.252733f, -0.252826f, -0.252918f, -0.253011f, -0.253104f, -0.253197f, -0.253289f, + -0.253382f, -0.253475f, -0.253568f, -0.253660f, -0.253753f, -0.253846f, -0.253938f, -0.254031f, + -0.254124f, -0.254217f, -0.254309f, -0.254402f, -0.254495f, -0.254588f, -0.254680f, -0.254773f, + -0.254866f, -0.254958f, -0.255051f, -0.255144f, -0.255236f, -0.255329f, -0.255422f, -0.255515f, + -0.255607f, -0.255700f, -0.255793f, -0.255885f, -0.255978f, -0.256071f, -0.256163f, -0.256256f, + -0.256349f, -0.256441f, -0.256534f, -0.256627f, -0.256719f, -0.256812f, -0.256905f, -0.256997f, + -0.257090f, -0.257183f, -0.257275f, -0.257368f, -0.257461f, -0.257553f, -0.257646f, -0.257738f, + -0.257831f, -0.257924f, -0.258016f, -0.258109f, -0.258202f, -0.258294f, -0.258387f, -0.258479f, + -0.258572f, -0.258665f, -0.258757f, -0.258850f, -0.258943f, -0.259035f, -0.259128f, -0.259220f, + -0.259313f, -0.259405f, -0.259498f, -0.259591f, -0.259683f, -0.259776f, -0.259868f, -0.259961f, + -0.260054f, -0.260146f, -0.260239f, -0.260331f, -0.260424f, -0.260516f, -0.260609f, -0.260702f, + -0.260794f, -0.260887f, -0.260979f, -0.261072f, -0.261164f, -0.261257f, -0.261349f, -0.261442f, + -0.261534f, -0.261627f, -0.261720f, -0.261812f, -0.261905f, -0.261997f, -0.262090f, -0.262182f, + -0.262275f, -0.262367f, -0.262460f, -0.262552f, -0.262645f, -0.262737f, -0.262830f, -0.262922f, + -0.263015f, -0.263107f, -0.263200f, -0.263292f, -0.263385f, -0.263477f, -0.263570f, -0.263662f, + -0.263755f, -0.263847f, -0.263940f, -0.264032f, -0.264125f, -0.264217f, -0.264309f, -0.264402f, + -0.264494f, -0.264587f, -0.264679f, -0.264772f, -0.264864f, -0.264957f, -0.265049f, -0.265142f, + -0.265234f, -0.265326f, -0.265419f, -0.265511f, -0.265604f, -0.265696f, -0.265789f, -0.265881f, + -0.265973f, -0.266066f, -0.266158f, -0.266251f, -0.266343f, -0.266436f, -0.266528f, -0.266620f, + -0.266713f, -0.266805f, -0.266898f, -0.266990f, -0.267082f, -0.267175f, -0.267267f, -0.267359f, + -0.267452f, -0.267544f, -0.267637f, -0.267729f, -0.267821f, -0.267914f, -0.268006f, -0.268099f, + -0.268191f, -0.268283f, -0.268376f, -0.268468f, -0.268560f, -0.268653f, -0.268745f, -0.268837f, + -0.268930f, -0.269022f, -0.269114f, -0.269207f, -0.269299f, -0.269391f, -0.269484f, -0.269576f, + -0.269668f, -0.269761f, -0.269853f, -0.269945f, -0.270038f, -0.270130f, -0.270222f, -0.270315f, + -0.270407f, -0.270499f, -0.270591f, -0.270684f, -0.270776f, -0.270868f, -0.270961f, -0.271053f, + -0.271145f, -0.271237f, -0.271330f, -0.271422f, -0.271514f, -0.271607f, -0.271699f, -0.271791f, + -0.271883f, -0.271976f, -0.272068f, -0.272160f, -0.272252f, -0.272345f, -0.272437f, -0.272529f, + -0.272621f, -0.272714f, -0.272806f, -0.272898f, -0.272990f, -0.273083f, -0.273175f, -0.273267f, + -0.273359f, -0.273451f, -0.273544f, -0.273636f, -0.273728f, -0.273820f, -0.273912f, -0.274005f, + -0.274097f, -0.274189f, -0.274281f, -0.274374f, -0.274466f, -0.274558f, -0.274650f, -0.274742f, + -0.274834f, -0.274927f, -0.275019f, -0.275111f, -0.275203f, -0.275295f, -0.275387f, -0.275480f, + -0.275572f, -0.275664f, -0.275756f, -0.275848f, -0.275940f, -0.276033f, -0.276125f, -0.276217f, + -0.276309f, -0.276401f, -0.276493f, -0.276585f, -0.276678f, -0.276770f, -0.276862f, -0.276954f, + -0.277046f, -0.277138f, -0.277230f, -0.277322f, -0.277415f, -0.277507f, -0.277599f, -0.277691f, + -0.277783f, -0.277875f, -0.277967f, -0.278059f, -0.278151f, -0.278243f, -0.278336f, -0.278428f, + -0.278520f, -0.278612f, -0.278704f, -0.278796f, -0.278888f, -0.278980f, -0.279072f, -0.279164f, + -0.279256f, -0.279348f, -0.279440f, -0.279532f, -0.279624f, -0.279717f, -0.279809f, -0.279901f, + -0.279993f, -0.280085f, -0.280177f, -0.280269f, -0.280361f, -0.280453f, -0.280545f, -0.280637f, + -0.280729f, -0.280821f, -0.280913f, -0.281005f, -0.281097f, -0.281189f, -0.281281f, -0.281373f, + -0.281465f, -0.281557f, -0.281649f, -0.281741f, -0.281833f, -0.281925f, -0.282017f, -0.282109f, + -0.282201f, -0.282293f, -0.282385f, -0.282477f, -0.282569f, -0.282661f, -0.282753f, -0.282845f, + -0.282937f, -0.283029f, -0.283120f, -0.283212f, -0.283304f, -0.283396f, -0.283488f, -0.283580f, + -0.283672f, -0.283764f, -0.283856f, -0.283948f, -0.284040f, -0.284132f, -0.284224f, -0.284316f, + -0.284408f, -0.284499f, -0.284591f, -0.284683f, -0.284775f, -0.284867f, -0.284959f, -0.285051f, + -0.285143f, -0.285235f, -0.285327f, -0.285418f, -0.285510f, -0.285602f, -0.285694f, -0.285786f, + -0.285878f, -0.285970f, -0.286062f, -0.286153f, -0.286245f, -0.286337f, -0.286429f, -0.286521f, + -0.286613f, -0.286705f, -0.286796f, -0.286888f, -0.286980f, -0.287072f, -0.287164f, -0.287256f, + -0.287347f, -0.287439f, -0.287531f, -0.287623f, -0.287715f, -0.287807f, -0.287898f, -0.287990f, + -0.288082f, -0.288174f, -0.288266f, -0.288357f, -0.288449f, -0.288541f, -0.288633f, -0.288725f, + -0.288816f, -0.288908f, -0.289000f, -0.289092f, -0.289184f, -0.289275f, -0.289367f, -0.289459f, + -0.289551f, -0.289642f, -0.289734f, -0.289826f, -0.289918f, -0.290009f, -0.290101f, -0.290193f, + -0.290285f, -0.290376f, -0.290468f, -0.290560f, -0.290652f, -0.290743f, -0.290835f, -0.290927f, + -0.291019f, -0.291110f, -0.291202f, -0.291294f, -0.291385f, -0.291477f, -0.291569f, -0.291661f, + -0.291752f, -0.291844f, -0.291936f, -0.292027f, -0.292119f, -0.292211f, -0.292302f, -0.292394f, + -0.292486f, -0.292577f, -0.292669f, -0.292761f, -0.292852f, -0.292944f, -0.293036f, -0.293128f, + -0.293219f, -0.293311f, -0.293402f, -0.293494f, -0.293586f, -0.293677f, -0.293769f, -0.293861f, + -0.293952f, -0.294044f, -0.294136f, -0.294227f, -0.294319f, -0.294410f, -0.294502f, -0.294594f, + -0.294685f, -0.294777f, -0.294869f, -0.294960f, -0.295052f, -0.295143f, -0.295235f, -0.295327f, + -0.295418f, -0.295510f, -0.295601f, -0.295693f, -0.295785f, -0.295876f, -0.295968f, -0.296059f, + -0.296151f, -0.296242f, -0.296334f, -0.296426f, -0.296517f, -0.296609f, -0.296700f, -0.296792f, + -0.296883f, -0.296975f, -0.297066f, -0.297158f, -0.297250f, -0.297341f, -0.297433f, -0.297524f, + -0.297616f, -0.297707f, -0.297799f, -0.297890f, -0.297982f, -0.298073f, -0.298165f, -0.298256f, + -0.298348f, -0.298439f, -0.298531f, -0.298622f, -0.298714f, -0.298805f, -0.298897f, -0.298988f, + -0.299080f, -0.299171f, -0.299263f, -0.299354f, -0.299446f, -0.299537f, -0.299629f, -0.299720f, + -0.299812f, -0.299903f, -0.299995f, -0.300086f, -0.300177f, -0.300269f, -0.300360f, -0.300452f, + -0.300543f, -0.300635f, -0.300726f, -0.300818f, -0.300909f, -0.301000f, -0.301092f, -0.301183f, + -0.301275f, -0.301366f, -0.301458f, -0.301549f, -0.301640f, -0.301732f, -0.301823f, -0.301915f, + -0.302006f, -0.302097f, -0.302189f, -0.302280f, -0.302372f, -0.302463f, -0.302554f, -0.302646f, + -0.302737f, -0.302828f, -0.302920f, -0.303011f, -0.303103f, -0.303194f, -0.303285f, -0.303377f, + -0.303468f, -0.303559f, -0.303651f, -0.303742f, -0.303833f, -0.303925f, -0.304016f, -0.304107f, + -0.304199f, -0.304290f, -0.304381f, -0.304473f, -0.304564f, -0.304655f, -0.304747f, -0.304838f, + -0.304929f, -0.305021f, -0.305112f, -0.305203f, -0.305294f, -0.305386f, -0.305477f, -0.305568f, + -0.305660f, -0.305751f, -0.305842f, -0.305933f, -0.306025f, -0.306116f, -0.306207f, -0.306299f, + -0.306390f, -0.306481f, -0.306572f, -0.306664f, -0.306755f, -0.306846f, -0.306937f, -0.307029f, + -0.307120f, -0.307211f, -0.307302f, -0.307394f, -0.307485f, -0.307576f, -0.307667f, -0.307758f, + -0.307850f, -0.307941f, -0.308032f, -0.308123f, -0.308214f, -0.308306f, -0.308397f, -0.308488f, + -0.308579f, -0.308670f, -0.308762f, -0.308853f, -0.308944f, -0.309035f, -0.309126f, -0.309218f, + -0.309309f, -0.309400f, -0.309491f, -0.309582f, -0.309673f, -0.309765f, -0.309856f, -0.309947f, + -0.310038f, -0.310129f, -0.310220f, -0.310311f, -0.310403f, -0.310494f, -0.310585f, -0.310676f, + -0.310767f, -0.310858f, -0.310949f, -0.311041f, -0.311132f, -0.311223f, -0.311314f, -0.311405f, + -0.311496f, -0.311587f, -0.311678f, -0.311769f, -0.311860f, -0.311952f, -0.312043f, -0.312134f, + -0.312225f, -0.312316f, -0.312407f, -0.312498f, -0.312589f, -0.312680f, -0.312771f, -0.312862f, + -0.312953f, -0.313044f, -0.313135f, -0.313227f, -0.313318f, -0.313409f, -0.313500f, -0.313591f, + -0.313682f, -0.313773f, -0.313864f, -0.313955f, -0.314046f, -0.314137f, -0.314228f, -0.314319f, + -0.314410f, -0.314501f, -0.314592f, -0.314683f, -0.314774f, -0.314865f, -0.314956f, -0.315047f, + -0.315138f, -0.315229f, -0.315320f, -0.315411f, -0.315502f, -0.315593f, -0.315684f, -0.315775f, + -0.315866f, -0.315957f, -0.316048f, -0.316139f, -0.316230f, -0.316321f, -0.316411f, -0.316502f, + -0.316593f, -0.316684f, -0.316775f, -0.316866f, -0.316957f, -0.317048f, -0.317139f, -0.317230f, + -0.317321f, -0.317412f, -0.317503f, -0.317594f, -0.317684f, -0.317775f, -0.317866f, -0.317957f, + -0.318048f, -0.318139f, -0.318230f, -0.318321f, -0.318412f, -0.318503f, -0.318593f, -0.318684f, + -0.318775f, -0.318866f, -0.318957f, -0.319048f, -0.319139f, -0.319229f, -0.319320f, -0.319411f, + -0.319502f, -0.319593f, -0.319684f, -0.319775f, -0.319865f, -0.319956f, -0.320047f, -0.320138f, + -0.320229f, -0.320320f, -0.320410f, -0.320501f, -0.320592f, -0.320683f, -0.320774f, -0.320864f, + -0.320955f, -0.321046f, -0.321137f, -0.321228f, -0.321318f, -0.321409f, -0.321500f, -0.321591f, + -0.321682f, -0.321772f, -0.321863f, -0.321954f, -0.322045f, -0.322135f, -0.322226f, -0.322317f, + -0.322408f, -0.322498f, -0.322589f, -0.322680f, -0.322771f, -0.322861f, -0.322952f, -0.323043f, + -0.323134f, -0.323224f, -0.323315f, -0.323406f, -0.323497f, -0.323587f, -0.323678f, -0.323769f, + -0.323859f, -0.323950f, -0.324041f, -0.324131f, -0.324222f, -0.324313f, -0.324404f, -0.324494f, + -0.324585f, -0.324676f, -0.324766f, -0.324857f, -0.324948f, -0.325038f, -0.325129f, -0.325220f, + -0.325310f, -0.325401f, -0.325492f, -0.325582f, -0.325673f, -0.325764f, -0.325854f, -0.325945f, + -0.326035f, -0.326126f, -0.326217f, -0.326307f, -0.326398f, -0.326489f, -0.326579f, -0.326670f, + -0.326760f, -0.326851f, -0.326942f, -0.327032f, -0.327123f, -0.327213f, -0.327304f, -0.327395f, + -0.327485f, -0.327576f, -0.327666f, -0.327757f, -0.327848f, -0.327938f, -0.328029f, -0.328119f, + -0.328210f, -0.328300f, -0.328391f, -0.328482f, -0.328572f, -0.328663f, -0.328753f, -0.328844f, + -0.328934f, -0.329025f, -0.329115f, -0.329206f, -0.329296f, -0.329387f, -0.329477f, -0.329568f, + -0.329658f, -0.329749f, -0.329839f, -0.329930f, -0.330020f, -0.330111f, -0.330202f, -0.330292f, + -0.330382f, -0.330473f, -0.330563f, -0.330654f, -0.330744f, -0.330835f, -0.330925f, -0.331016f, + -0.331106f, -0.331197f, -0.331287f, -0.331378f, -0.331468f, -0.331559f, -0.331649f, -0.331739f, + -0.331830f, -0.331920f, -0.332011f, -0.332101f, -0.332192f, -0.332282f, -0.332373f, -0.332463f, + -0.332553f, -0.332644f, -0.332734f, -0.332825f, -0.332915f, -0.333005f, -0.333096f, -0.333186f, + -0.333277f, -0.333367f, -0.333457f, -0.333548f, -0.333638f, -0.333729f, -0.333819f, -0.333909f, + -0.334000f, -0.334090f, -0.334180f, -0.334271f, -0.334361f, -0.334451f, -0.334542f, -0.334632f, + -0.334722f, -0.334813f, -0.334903f, -0.334994f, -0.335084f, -0.335174f, -0.335265f, -0.335355f, + -0.335445f, -0.335535f, -0.335626f, -0.335716f, -0.335806f, -0.335897f, -0.335987f, -0.336077f, + -0.336168f, -0.336258f, -0.336348f, -0.336438f, -0.336529f, -0.336619f, -0.336709f, -0.336800f, + -0.336890f, -0.336980f, -0.337070f, -0.337161f, -0.337251f, -0.337341f, -0.337431f, -0.337522f, + -0.337612f, -0.337702f, -0.337792f, -0.337883f, -0.337973f, -0.338063f, -0.338153f, -0.338244f, + -0.338334f, -0.338424f, -0.338514f, -0.338604f, -0.338695f, -0.338785f, -0.338875f, -0.338965f, + -0.339055f, -0.339146f, -0.339236f, -0.339326f, -0.339416f, -0.339506f, -0.339597f, -0.339687f, + -0.339777f, -0.339867f, -0.339957f, -0.340047f, -0.340138f, -0.340228f, -0.340318f, -0.340408f, + -0.340498f, -0.340588f, -0.340678f, -0.340769f, -0.340859f, -0.340949f, -0.341039f, -0.341129f, + -0.341219f, -0.341309f, -0.341399f, -0.341490f, -0.341580f, -0.341670f, -0.341760f, -0.341850f, + -0.341940f, -0.342030f, -0.342120f, -0.342210f, -0.342300f, -0.342391f, -0.342481f, -0.342571f, + -0.342661f, -0.342751f, -0.342841f, -0.342931f, -0.343021f, -0.343111f, -0.343201f, -0.343291f, + -0.343381f, -0.343471f, -0.343561f, -0.343651f, -0.343741f, -0.343831f, -0.343921f, -0.344011f, + -0.344101f, -0.344191f, -0.344281f, -0.344371f, -0.344461f, -0.344551f, -0.344641f, -0.344731f, + -0.344821f, -0.344911f, -0.345001f, -0.345091f, -0.345181f, -0.345271f, -0.345361f, -0.345451f, + -0.345541f, -0.345631f, -0.345721f, -0.345811f, -0.345901f, -0.345991f, -0.346081f, -0.346171f, + -0.346261f, -0.346351f, -0.346441f, -0.346531f, -0.346621f, -0.346711f, -0.346801f, -0.346890f, + -0.346980f, -0.347070f, -0.347160f, -0.347250f, -0.347340f, -0.347430f, -0.347520f, -0.347610f, + -0.347700f, -0.347790f, -0.347879f, -0.347969f, -0.348059f, -0.348149f, -0.348239f, -0.348329f, + -0.348419f, -0.348509f, -0.348598f, -0.348688f, -0.348778f, -0.348868f, -0.348958f, -0.349048f, + -0.349138f, -0.349227f, -0.349317f, -0.349407f, -0.349497f, -0.349587f, -0.349676f, -0.349766f, + -0.349856f, -0.349946f, -0.350036f, -0.350126f, -0.350215f, -0.350305f, -0.350395f, -0.350485f, + -0.350575f, -0.350664f, -0.350754f, -0.350844f, -0.350934f, -0.351023f, -0.351113f, -0.351203f, + -0.351293f, -0.351383f, -0.351472f, -0.351562f, -0.351652f, -0.351742f, -0.351831f, -0.351921f, + -0.352011f, -0.352100f, -0.352190f, -0.352280f, -0.352370f, -0.352459f, -0.352549f, -0.352639f, + -0.352729f, -0.352818f, -0.352908f, -0.352998f, -0.353087f, -0.353177f, -0.353267f, -0.353356f, + -0.353446f, -0.353536f, -0.353626f, -0.353715f, -0.353805f, -0.353895f, -0.353984f, -0.354074f, + -0.354164f, -0.354253f, -0.354343f, -0.354432f, -0.354522f, -0.354612f, -0.354701f, -0.354791f, + -0.354881f, -0.354970f, -0.355060f, -0.355150f, -0.355239f, -0.355329f, -0.355418f, -0.355508f, + -0.355598f, -0.355687f, -0.355777f, -0.355866f, -0.355956f, -0.356046f, -0.356135f, -0.356225f, + -0.356314f, -0.356404f, -0.356494f, -0.356583f, -0.356673f, -0.356762f, -0.356852f, -0.356941f, + -0.357031f, -0.357121f, -0.357210f, -0.357300f, -0.357389f, -0.357479f, -0.357568f, -0.357658f, + -0.357747f, -0.357837f, -0.357926f, -0.358016f, -0.358105f, -0.358195f, -0.358284f, -0.358374f, + -0.358463f, -0.358553f, -0.358642f, -0.358732f, -0.358821f, -0.358911f, -0.359000f, -0.359090f, + -0.359179f, -0.359269f, -0.359358f, -0.359448f, -0.359537f, -0.359627f, -0.359716f, -0.359806f, + -0.359895f, -0.359984f, -0.360074f, -0.360163f, -0.360253f, -0.360342f, -0.360432f, -0.360521f, + -0.360611f, -0.360700f, -0.360789f, -0.360879f, -0.360968f, -0.361058f, -0.361147f, -0.361236f, + -0.361326f, -0.361415f, -0.361505f, -0.361594f, -0.361683f, -0.361773f, -0.361862f, -0.361952f, + -0.362041f, -0.362130f, -0.362220f, -0.362309f, -0.362398f, -0.362488f, -0.362577f, -0.362666f, + -0.362756f, -0.362845f, -0.362934f, -0.363024f, -0.363113f, -0.363202f, -0.363292f, -0.363381f, + -0.363470f, -0.363560f, -0.363649f, -0.363738f, -0.363828f, -0.363917f, -0.364006f, -0.364096f, + -0.364185f, -0.364274f, -0.364363f, -0.364453f, -0.364542f, -0.364631f, -0.364720f, -0.364810f, + -0.364899f, -0.364988f, -0.365078f, -0.365167f, -0.365256f, -0.365345f, -0.365435f, -0.365524f, + -0.365613f, -0.365702f, -0.365791f, -0.365881f, -0.365970f, -0.366059f, -0.366148f, -0.366238f, + -0.366327f, -0.366416f, -0.366505f, -0.366594f, -0.366684f, -0.366773f, -0.366862f, -0.366951f, + -0.367040f, -0.367130f, -0.367219f, -0.367308f, -0.367397f, -0.367486f, -0.367575f, -0.367665f, + -0.367754f, -0.367843f, -0.367932f, -0.368021f, -0.368110f, -0.368199f, -0.368289f, -0.368378f, + -0.368467f, -0.368556f, -0.368645f, -0.368734f, -0.368823f, -0.368912f, -0.369002f, -0.369091f, + -0.369180f, -0.369269f, -0.369358f, -0.369447f, -0.369536f, -0.369625f, -0.369714f, -0.369803f, + -0.369892f, -0.369982f, -0.370071f, -0.370160f, -0.370249f, -0.370338f, -0.370427f, -0.370516f, + -0.370605f, -0.370694f, -0.370783f, -0.370872f, -0.370961f, -0.371050f, -0.371139f, -0.371228f, + -0.371317f, -0.371406f, -0.371495f, -0.371584f, -0.371673f, -0.371762f, -0.371851f, -0.371940f, + -0.372029f, -0.372118f, -0.372207f, -0.372296f, -0.372385f, -0.372474f, -0.372563f, -0.372652f, + -0.372741f, -0.372830f, -0.372919f, -0.373008f, -0.373097f, -0.373186f, -0.373275f, -0.373364f, + -0.373453f, -0.373542f, -0.373631f, -0.373719f, -0.373808f, -0.373897f, -0.373986f, -0.374075f, + -0.374164f, -0.374253f, -0.374342f, -0.374431f, -0.374520f, -0.374609f, -0.374697f, -0.374786f, + -0.374875f, -0.374964f, -0.375053f, -0.375142f, -0.375231f, -0.375320f, -0.375408f, -0.375497f, + -0.375586f, -0.375675f, -0.375764f, -0.375853f, -0.375942f, -0.376030f, -0.376119f, -0.376208f, + -0.376297f, -0.376386f, -0.376475f, -0.376563f, -0.376652f, -0.376741f, -0.376830f, -0.376919f, + -0.377007f, -0.377096f, -0.377185f, -0.377274f, -0.377363f, -0.377451f, -0.377540f, -0.377629f, + -0.377718f, -0.377806f, -0.377895f, -0.377984f, -0.378073f, -0.378162f, -0.378250f, -0.378339f, + -0.378428f, -0.378516f, -0.378605f, -0.378694f, -0.378783f, -0.378871f, -0.378960f, -0.379049f, + -0.379138f, -0.379226f, -0.379315f, -0.379404f, -0.379492f, -0.379581f, -0.379670f, -0.379759f, + -0.379847f, -0.379936f, -0.380025f, -0.380113f, -0.380202f, -0.380291f, -0.380379f, -0.380468f, + -0.380557f, -0.380645f, -0.380734f, -0.380823f, -0.380911f, -0.381000f, -0.381088f, -0.381177f, + -0.381266f, -0.381354f, -0.381443f, -0.381532f, -0.381620f, -0.381709f, -0.381797f, -0.381886f, + -0.381975f, -0.382063f, -0.382152f, -0.382241f, -0.382329f, -0.382418f, -0.382506f, -0.382595f, + -0.382683f, -0.382772f, -0.382861f, -0.382949f, -0.383038f, -0.383126f, -0.383215f, -0.383303f, + -0.383392f, -0.383480f, -0.383569f, -0.383658f, -0.383746f, -0.383835f, -0.383923f, -0.384012f, + -0.384100f, -0.384189f, -0.384277f, -0.384366f, -0.384454f, -0.384543f, -0.384631f, -0.384720f, + -0.384808f, -0.384897f, -0.384985f, -0.385074f, -0.385162f, -0.385251f, -0.385339f, -0.385428f, + -0.385516f, -0.385605f, -0.385693f, -0.385781f, -0.385870f, -0.385958f, -0.386047f, -0.386135f, + -0.386224f, -0.386312f, -0.386400f, -0.386489f, -0.386577f, -0.386666f, -0.386754f, -0.386843f, + -0.386931f, -0.387019f, -0.387108f, -0.387196f, -0.387285f, -0.387373f, -0.387461f, -0.387550f, + -0.387638f, -0.387727f, -0.387815f, -0.387903f, -0.387992f, -0.388080f, -0.388168f, -0.388257f, + -0.388345f, -0.388433f, -0.388522f, -0.388610f, -0.388698f, -0.388787f, -0.388875f, -0.388963f, + -0.389052f, -0.389140f, -0.389228f, -0.389317f, -0.389405f, -0.389493f, -0.389582f, -0.389670f, + -0.389758f, -0.389846f, -0.389935f, -0.390023f, -0.390111f, -0.390200f, -0.390288f, -0.390376f, + -0.390464f, -0.390553f, -0.390641f, -0.390729f, -0.390817f, -0.390906f, -0.390994f, -0.391082f, + -0.391170f, -0.391259f, -0.391347f, -0.391435f, -0.391523f, -0.391612f, -0.391700f, -0.391788f, + -0.391876f, -0.391964f, -0.392053f, -0.392141f, -0.392229f, -0.392317f, -0.392405f, -0.392493f, + -0.392582f, -0.392670f, -0.392758f, -0.392846f, -0.392934f, -0.393023f, -0.393111f, -0.393199f, + -0.393287f, -0.393375f, -0.393463f, -0.393551f, -0.393640f, -0.393728f, -0.393816f, -0.393904f, + -0.393992f, -0.394080f, -0.394168f, -0.394256f, -0.394344f, -0.394433f, -0.394521f, -0.394609f, + -0.394697f, -0.394785f, -0.394873f, -0.394961f, -0.395049f, -0.395137f, -0.395225f, -0.395313f, + -0.395401f, -0.395490f, -0.395578f, -0.395666f, -0.395754f, -0.395842f, -0.395930f, -0.396018f, + -0.396106f, -0.396194f, -0.396282f, -0.396370f, -0.396458f, -0.396546f, -0.396634f, -0.396722f, + -0.396810f, -0.396898f, -0.396986f, -0.397074f, -0.397162f, -0.397250f, -0.397338f, -0.397426f, + -0.397514f, -0.397602f, -0.397690f, -0.397778f, -0.397866f, -0.397954f, -0.398042f, -0.398130f, + -0.398218f, -0.398306f, -0.398393f, -0.398481f, -0.398569f, -0.398657f, -0.398745f, -0.398833f, + -0.398921f, -0.399009f, -0.399097f, -0.399185f, -0.399273f, -0.399361f, -0.399448f, -0.399536f, + -0.399624f, -0.399712f, -0.399800f, -0.399888f, -0.399976f, -0.400064f, -0.400151f, -0.400239f, + -0.400327f, -0.400415f, -0.400503f, -0.400591f, -0.400679f, -0.400766f, -0.400854f, -0.400942f, + -0.401030f, -0.401118f, -0.401206f, -0.401293f, -0.401381f, -0.401469f, -0.401557f, -0.401645f, + -0.401732f, -0.401820f, -0.401908f, -0.401996f, -0.402084f, -0.402171f, -0.402259f, -0.402347f, + -0.402435f, -0.402522f, -0.402610f, -0.402698f, -0.402786f, -0.402873f, -0.402961f, -0.403049f, + -0.403137f, -0.403224f, -0.403312f, -0.403400f, -0.403488f, -0.403575f, -0.403663f, -0.403751f, + -0.403838f, -0.403926f, -0.404014f, -0.404102f, -0.404189f, -0.404277f, -0.404365f, -0.404452f, + -0.404540f, -0.404628f, -0.404715f, -0.404803f, -0.404891f, -0.404978f, -0.405066f, -0.405154f, + -0.405241f, -0.405329f, -0.405417f, -0.405504f, -0.405592f, -0.405680f, -0.405767f, -0.405855f, + -0.405942f, -0.406030f, -0.406118f, -0.406205f, -0.406293f, -0.406380f, -0.406468f, -0.406556f, + -0.406643f, -0.406731f, -0.406818f, -0.406906f, -0.406994f, -0.407081f, -0.407169f, -0.407256f, + -0.407344f, -0.407431f, -0.407519f, -0.407606f, -0.407694f, -0.407782f, -0.407869f, -0.407957f, + -0.408044f, -0.408132f, -0.408219f, -0.408307f, -0.408394f, -0.408482f, -0.408569f, -0.408657f, + -0.408744f, -0.408832f, -0.408919f, -0.409007f, -0.409094f, -0.409182f, -0.409269f, -0.409357f, + -0.409444f, -0.409532f, -0.409619f, -0.409707f, -0.409794f, -0.409881f, -0.409969f, -0.410056f, + -0.410144f, -0.410231f, -0.410319f, -0.410406f, -0.410493f, -0.410581f, -0.410668f, -0.410756f, + -0.410843f, -0.410931f, -0.411018f, -0.411105f, -0.411193f, -0.411280f, -0.411368f, -0.411455f, + -0.411542f, -0.411630f, -0.411717f, -0.411804f, -0.411892f, -0.411979f, -0.412067f, -0.412154f, + -0.412241f, -0.412329f, -0.412416f, -0.412503f, -0.412591f, -0.412678f, -0.412765f, -0.412853f, + -0.412940f, -0.413027f, -0.413115f, -0.413202f, -0.413289f, -0.413376f, -0.413464f, -0.413551f, + -0.413638f, -0.413726f, -0.413813f, -0.413900f, -0.413987f, -0.414075f, -0.414162f, -0.414249f, + -0.414337f, -0.414424f, -0.414511f, -0.414598f, -0.414685f, -0.414773f, -0.414860f, -0.414947f, + -0.415034f, -0.415122f, -0.415209f, -0.415296f, -0.415383f, -0.415471f, -0.415558f, -0.415645f, + -0.415732f, -0.415819f, -0.415906f, -0.415994f, -0.416081f, -0.416168f, -0.416255f, -0.416342f, + -0.416430f, -0.416517f, -0.416604f, -0.416691f, -0.416778f, -0.416865f, -0.416952f, -0.417040f, + -0.417127f, -0.417214f, -0.417301f, -0.417388f, -0.417475f, -0.417562f, -0.417650f, -0.417737f, + -0.417824f, -0.417911f, -0.417998f, -0.418085f, -0.418172f, -0.418259f, -0.418346f, -0.418433f, + -0.418520f, -0.418608f, -0.418695f, -0.418782f, -0.418869f, -0.418956f, -0.419043f, -0.419130f, + -0.419217f, -0.419304f, -0.419391f, -0.419478f, -0.419565f, -0.419652f, -0.419739f, -0.419826f, + -0.419913f, -0.420000f, -0.420087f, -0.420174f, -0.420261f, -0.420348f, -0.420435f, -0.420522f, + -0.420609f, -0.420696f, -0.420783f, -0.420870f, -0.420957f, -0.421044f, -0.421131f, -0.421218f, + -0.421305f, -0.421392f, -0.421479f, -0.421566f, -0.421653f, -0.421739f, -0.421826f, -0.421913f, + -0.422000f, -0.422087f, -0.422174f, -0.422261f, -0.422348f, -0.422435f, -0.422522f, -0.422609f, + -0.422695f, -0.422782f, -0.422869f, -0.422956f, -0.423043f, -0.423130f, -0.423217f, -0.423304f, + -0.423390f, -0.423477f, -0.423564f, -0.423651f, -0.423738f, -0.423825f, -0.423912f, -0.423998f, + -0.424085f, -0.424172f, -0.424259f, -0.424346f, -0.424432f, -0.424519f, -0.424606f, -0.424693f, + -0.424780f, -0.424866f, -0.424953f, -0.425040f, -0.425127f, -0.425214f, -0.425300f, -0.425387f, + -0.425474f, -0.425561f, -0.425647f, -0.425734f, -0.425821f, -0.425908f, -0.425994f, -0.426081f, + -0.426168f, -0.426255f, -0.426341f, -0.426428f, -0.426515f, -0.426601f, -0.426688f, -0.426775f, + -0.426862f, -0.426948f, -0.427035f, -0.427122f, -0.427208f, -0.427295f, -0.427382f, -0.427468f, + -0.427555f, -0.427642f, -0.427728f, -0.427815f, -0.427902f, -0.427988f, -0.428075f, -0.428162f, + -0.428248f, -0.428335f, -0.428422f, -0.428508f, -0.428595f, -0.428681f, -0.428768f, -0.428855f, + -0.428941f, -0.429028f, -0.429114f, -0.429201f, -0.429288f, -0.429374f, -0.429461f, -0.429547f, + -0.429634f, -0.429721f, -0.429807f, -0.429894f, -0.429980f, -0.430067f, -0.430153f, -0.430240f, + -0.430326f, -0.430413f, -0.430500f, -0.430586f, -0.430673f, -0.430759f, -0.430846f, -0.430932f, + -0.431019f, -0.431105f, -0.431192f, -0.431278f, -0.431365f, -0.431451f, -0.431538f, -0.431624f, + -0.431711f, -0.431797f, -0.431884f, -0.431970f, -0.432057f, -0.432143f, -0.432229f, -0.432316f, + -0.432402f, -0.432489f, -0.432575f, -0.432662f, -0.432748f, -0.432835f, -0.432921f, -0.433007f, + -0.433094f, -0.433180f, -0.433267f, -0.433353f, -0.433439f, -0.433526f, -0.433612f, -0.433699f, + -0.433785f, -0.433871f, -0.433958f, -0.434044f, -0.434131f, -0.434217f, -0.434303f, -0.434390f, + -0.434476f, -0.434562f, -0.434649f, -0.434735f, -0.434821f, -0.434908f, -0.434994f, -0.435080f, + -0.435167f, -0.435253f, -0.435339f, -0.435426f, -0.435512f, -0.435598f, -0.435685f, -0.435771f, + -0.435857f, -0.435943f, -0.436030f, -0.436116f, -0.436202f, -0.436288f, -0.436375f, -0.436461f, + -0.436547f, -0.436633f, -0.436720f, -0.436806f, -0.436892f, -0.436978f, -0.437065f, -0.437151f, + -0.437237f, -0.437323f, -0.437410f, -0.437496f, -0.437582f, -0.437668f, -0.437754f, -0.437841f, + -0.437927f, -0.438013f, -0.438099f, -0.438185f, -0.438272f, -0.438358f, -0.438444f, -0.438530f, + -0.438616f, -0.438702f, -0.438789f, -0.438875f, -0.438961f, -0.439047f, -0.439133f, -0.439219f, + -0.439305f, -0.439392f, -0.439478f, -0.439564f, -0.439650f, -0.439736f, -0.439822f, -0.439908f, + -0.439994f, -0.440080f, -0.440166f, -0.440253f, -0.440339f, -0.440425f, -0.440511f, -0.440597f, + -0.440683f, -0.440769f, -0.440855f, -0.440941f, -0.441027f, -0.441113f, -0.441199f, -0.441285f, + -0.441371f, -0.441457f, -0.441543f, -0.441629f, -0.441715f, -0.441801f, -0.441887f, -0.441973f, + -0.442059f, -0.442145f, -0.442231f, -0.442317f, -0.442403f, -0.442489f, -0.442575f, -0.442661f, + -0.442747f, -0.442833f, -0.442919f, -0.443005f, -0.443091f, -0.443177f, -0.443263f, -0.443349f, + -0.443435f, -0.443521f, -0.443607f, -0.443693f, -0.443779f, -0.443864f, -0.443950f, -0.444036f, + -0.444122f, -0.444208f, -0.444294f, -0.444380f, -0.444466f, -0.444552f, -0.444637f, -0.444723f, + -0.444809f, -0.444895f, -0.444981f, -0.445067f, -0.445153f, -0.445239f, -0.445324f, -0.445410f, + -0.445496f, -0.445582f, -0.445668f, -0.445754f, -0.445839f, -0.445925f, -0.446011f, -0.446097f, + -0.446183f, -0.446268f, -0.446354f, -0.446440f, -0.446526f, -0.446612f, -0.446697f, -0.446783f, + -0.446869f, -0.446955f, -0.447040f, -0.447126f, -0.447212f, -0.447298f, -0.447383f, -0.447469f, + -0.447555f, -0.447641f, -0.447726f, -0.447812f, -0.447898f, -0.447983f, -0.448069f, -0.448155f, + -0.448241f, -0.448326f, -0.448412f, -0.448498f, -0.448583f, -0.448669f, -0.448755f, -0.448840f, + -0.448926f, -0.449012f, -0.449097f, -0.449183f, -0.449269f, -0.449354f, -0.449440f, -0.449526f, + -0.449611f, -0.449697f, -0.449783f, -0.449868f, -0.449954f, -0.450039f, -0.450125f, -0.450211f, + -0.450296f, -0.450382f, -0.450467f, -0.450553f, -0.450639f, -0.450724f, -0.450810f, -0.450895f, + -0.450981f, -0.451067f, -0.451152f, -0.451238f, -0.451323f, -0.451409f, -0.451494f, -0.451580f, + -0.451665f, -0.451751f, -0.451836f, -0.451922f, -0.452008f, -0.452093f, -0.452179f, -0.452264f, + -0.452350f, -0.452435f, -0.452521f, -0.452606f, -0.452692f, -0.452777f, -0.452863f, -0.452948f, + -0.453033f, -0.453119f, -0.453204f, -0.453290f, -0.453375f, -0.453461f, -0.453546f, -0.453632f, + -0.453717f, -0.453803f, -0.453888f, -0.453973f, -0.454059f, -0.454144f, -0.454230f, -0.454315f, + -0.454400f, -0.454486f, -0.454571f, -0.454657f, -0.454742f, -0.454827f, -0.454913f, -0.454998f, + -0.455084f, -0.455169f, -0.455254f, -0.455340f, -0.455425f, -0.455510f, -0.455596f, -0.455681f, + -0.455766f, -0.455852f, -0.455937f, -0.456022f, -0.456108f, -0.456193f, -0.456278f, -0.456364f, + -0.456449f, -0.456534f, -0.456620f, -0.456705f, -0.456790f, -0.456875f, -0.456961f, -0.457046f, + -0.457131f, -0.457217f, -0.457302f, -0.457387f, -0.457472f, -0.457558f, -0.457643f, -0.457728f, + -0.457813f, -0.457899f, -0.457984f, -0.458069f, -0.458154f, -0.458239f, -0.458325f, -0.458410f, + -0.458495f, -0.458580f, -0.458665f, -0.458751f, -0.458836f, -0.458921f, -0.459006f, -0.459091f, + -0.459177f, -0.459262f, -0.459347f, -0.459432f, -0.459517f, -0.459602f, -0.459687f, -0.459773f, + -0.459858f, -0.459943f, -0.460028f, -0.460113f, -0.460198f, -0.460283f, -0.460369f, -0.460454f, + -0.460539f, -0.460624f, -0.460709f, -0.460794f, -0.460879f, -0.460964f, -0.461049f, -0.461134f, + -0.461219f, -0.461304f, -0.461390f, -0.461475f, -0.461560f, -0.461645f, -0.461730f, -0.461815f, + -0.461900f, -0.461985f, -0.462070f, -0.462155f, -0.462240f, -0.462325f, -0.462410f, -0.462495f, + -0.462580f, -0.462665f, -0.462750f, -0.462835f, -0.462920f, -0.463005f, -0.463090f, -0.463175f, + -0.463260f, -0.463345f, -0.463430f, -0.463515f, -0.463600f, -0.463685f, -0.463769f, -0.463854f, + -0.463939f, -0.464024f, -0.464109f, -0.464194f, -0.464279f, -0.464364f, -0.464449f, -0.464534f, + -0.464619f, -0.464704f, -0.464788f, -0.464873f, -0.464958f, -0.465043f, -0.465128f, -0.465213f, + -0.465298f, -0.465383f, -0.465467f, -0.465552f, -0.465637f, -0.465722f, -0.465807f, -0.465892f, + -0.465977f, -0.466061f, -0.466146f, -0.466231f, -0.466316f, -0.466401f, -0.466485f, -0.466570f, + -0.466655f, -0.466740f, -0.466825f, -0.466909f, -0.466994f, -0.467079f, -0.467164f, -0.467248f, + -0.467333f, -0.467418f, -0.467503f, -0.467587f, -0.467672f, -0.467757f, -0.467842f, -0.467926f, + -0.468011f, -0.468096f, -0.468181f, -0.468265f, -0.468350f, -0.468435f, -0.468519f, -0.468604f, + -0.468689f, -0.468774f, -0.468858f, -0.468943f, -0.469028f, -0.469112f, -0.469197f, -0.469282f, + -0.469366f, -0.469451f, -0.469536f, -0.469620f, -0.469705f, -0.469789f, -0.469874f, -0.469959f, + -0.470043f, -0.470128f, -0.470213f, -0.470297f, -0.470382f, -0.470466f, -0.470551f, -0.470636f, + -0.470720f, -0.470805f, -0.470889f, -0.470974f, -0.471058f, -0.471143f, -0.471228f, -0.471312f, + -0.471397f, -0.471481f, -0.471566f, -0.471650f, -0.471735f, -0.471819f, -0.471904f, -0.471988f, + -0.472073f, -0.472158f, -0.472242f, -0.472327f, -0.472411f, -0.472496f, -0.472580f, -0.472665f, + -0.472749f, -0.472834f, -0.472918f, -0.473002f, -0.473087f, -0.473171f, -0.473256f, -0.473340f, + -0.473425f, -0.473509f, -0.473594f, -0.473678f, -0.473763f, -0.473847f, -0.473931f, -0.474016f, + -0.474100f, -0.474185f, -0.474269f, -0.474353f, -0.474438f, -0.474522f, -0.474607f, -0.474691f, + -0.474775f, -0.474860f, -0.474944f, -0.475029f, -0.475113f, -0.475197f, -0.475282f, -0.475366f, + -0.475450f, -0.475535f, -0.475619f, -0.475703f, -0.475788f, -0.475872f, -0.475956f, -0.476041f, + -0.476125f, -0.476209f, -0.476294f, -0.476378f, -0.476462f, -0.476546f, -0.476631f, -0.476715f, + -0.476799f, -0.476884f, -0.476968f, -0.477052f, -0.477136f, -0.477221f, -0.477305f, -0.477389f, + -0.477473f, -0.477558f, -0.477642f, -0.477726f, -0.477810f, -0.477894f, -0.477979f, -0.478063f, + -0.478147f, -0.478231f, -0.478315f, -0.478400f, -0.478484f, -0.478568f, -0.478652f, -0.478736f, + -0.478821f, -0.478905f, -0.478989f, -0.479073f, -0.479157f, -0.479241f, -0.479325f, -0.479410f, + -0.479494f, -0.479578f, -0.479662f, -0.479746f, -0.479830f, -0.479914f, -0.479998f, -0.480083f, + -0.480167f, -0.480251f, -0.480335f, -0.480419f, -0.480503f, -0.480587f, -0.480671f, -0.480755f, + -0.480839f, -0.480923f, -0.481007f, -0.481091f, -0.481176f, -0.481260f, -0.481344f, -0.481428f, + -0.481512f, -0.481596f, -0.481680f, -0.481764f, -0.481848f, -0.481932f, -0.482016f, -0.482100f, + -0.482184f, -0.482268f, -0.482352f, -0.482436f, -0.482520f, -0.482604f, -0.482688f, -0.482772f, + -0.482856f, -0.482940f, -0.483023f, -0.483107f, -0.483191f, -0.483275f, -0.483359f, -0.483443f, + -0.483527f, -0.483611f, -0.483695f, -0.483779f, -0.483863f, -0.483947f, -0.484031f, -0.484114f, + -0.484198f, -0.484282f, -0.484366f, -0.484450f, -0.484534f, -0.484618f, -0.484702f, -0.484785f, + -0.484869f, -0.484953f, -0.485037f, -0.485121f, -0.485205f, -0.485288f, -0.485372f, -0.485456f, + -0.485540f, -0.485624f, -0.485708f, -0.485791f, -0.485875f, -0.485959f, -0.486043f, -0.486126f, + -0.486210f, -0.486294f, -0.486378f, -0.486462f, -0.486545f, -0.486629f, -0.486713f, -0.486797f, + -0.486880f, -0.486964f, -0.487048f, -0.487132f, -0.487215f, -0.487299f, -0.487383f, -0.487466f, + -0.487550f, -0.487634f, -0.487718f, -0.487801f, -0.487885f, -0.487969f, -0.488052f, -0.488136f, + -0.488220f, -0.488303f, -0.488387f, -0.488471f, -0.488554f, -0.488638f, -0.488722f, -0.488805f, + -0.488889f, -0.488973f, -0.489056f, -0.489140f, -0.489223f, -0.489307f, -0.489391f, -0.489474f, + -0.489558f, -0.489641f, -0.489725f, -0.489809f, -0.489892f, -0.489976f, -0.490059f, -0.490143f, + -0.490226f, -0.490310f, -0.490394f, -0.490477f, -0.490561f, -0.490644f, -0.490728f, -0.490811f, + -0.490895f, -0.490978f, -0.491062f, -0.491145f, -0.491229f, -0.491312f, -0.491396f, -0.491479f, + -0.491563f, -0.491646f, -0.491730f, -0.491813f, -0.491897f, -0.491980f, -0.492064f, -0.492147f, + -0.492231f, -0.492314f, -0.492398f, -0.492481f, -0.492564f, -0.492648f, -0.492731f, -0.492815f, + -0.492898f, -0.492982f, -0.493065f, -0.493148f, -0.493232f, -0.493315f, -0.493399f, -0.493482f, + -0.493565f, -0.493649f, -0.493732f, -0.493816f, -0.493899f, -0.493982f, -0.494066f, -0.494149f, + -0.494232f, -0.494316f, -0.494399f, -0.494482f, -0.494566f, -0.494649f, -0.494732f, -0.494816f, + -0.494899f, -0.494982f, -0.495066f, -0.495149f, -0.495232f, -0.495315f, -0.495399f, -0.495482f, + -0.495565f, -0.495649f, -0.495732f, -0.495815f, -0.495898f, -0.495982f, -0.496065f, -0.496148f, + -0.496231f, -0.496315f, -0.496398f, -0.496481f, -0.496564f, -0.496647f, -0.496731f, -0.496814f, + -0.496897f, -0.496980f, -0.497063f, -0.497147f, -0.497230f, -0.497313f, -0.497396f, -0.497479f, + -0.497562f, -0.497646f, -0.497729f, -0.497812f, -0.497895f, -0.497978f, -0.498061f, -0.498145f, + -0.498228f, -0.498311f, -0.498394f, -0.498477f, -0.498560f, -0.498643f, -0.498726f, -0.498809f, + -0.498893f, -0.498976f, -0.499059f, -0.499142f, -0.499225f, -0.499308f, -0.499391f, -0.499474f, + -0.499557f, -0.499640f, -0.499723f, -0.499806f, -0.499889f, -0.499972f, -0.500055f, -0.500138f, + -0.500221f, -0.500304f, -0.500387f, -0.500470f, -0.500553f, -0.500636f, -0.500719f, -0.500802f, + -0.500885f, -0.500968f, -0.501051f, -0.501134f, -0.501217f, -0.501300f, -0.501383f, -0.501466f, + -0.501549f, -0.501632f, -0.501715f, -0.501798f, -0.501881f, -0.501964f, -0.502047f, -0.502130f, + -0.502212f, -0.502295f, -0.502378f, -0.502461f, -0.502544f, -0.502627f, -0.502710f, -0.502793f, + -0.502876f, -0.502958f, -0.503041f, -0.503124f, -0.503207f, -0.503290f, -0.503373f, -0.503456f, + -0.503538f, -0.503621f, -0.503704f, -0.503787f, -0.503870f, -0.503953f, -0.504035f, -0.504118f, + -0.504201f, -0.504284f, -0.504366f, -0.504449f, -0.504532f, -0.504615f, -0.504698f, -0.504780f, + -0.504863f, -0.504946f, -0.505029f, -0.505111f, -0.505194f, -0.505277f, -0.505360f, -0.505442f, + -0.505525f, -0.505608f, -0.505690f, -0.505773f, -0.505856f, -0.505939f, -0.506021f, -0.506104f, + -0.506187f, -0.506269f, -0.506352f, -0.506435f, -0.506517f, -0.506600f, -0.506683f, -0.506765f, + -0.506848f, -0.506931f, -0.507013f, -0.507096f, -0.507179f, -0.507261f, -0.507344f, -0.507426f, + -0.507509f, -0.507592f, -0.507674f, -0.507757f, -0.507839f, -0.507922f, -0.508005f, -0.508087f, + -0.508170f, -0.508252f, -0.508335f, -0.508417f, -0.508500f, -0.508583f, -0.508665f, -0.508748f, + -0.508830f, -0.508913f, -0.508995f, -0.509078f, -0.509160f, -0.509243f, -0.509325f, -0.509408f, + -0.509490f, -0.509573f, -0.509655f, -0.509738f, -0.509820f, -0.509903f, -0.509985f, -0.510068f, + -0.510150f, -0.510233f, -0.510315f, -0.510397f, -0.510480f, -0.510562f, -0.510645f, -0.510727f, + -0.510810f, -0.510892f, -0.510974f, -0.511057f, -0.511139f, -0.511222f, -0.511304f, -0.511386f, + -0.511469f, -0.511551f, -0.511634f, -0.511716f, -0.511798f, -0.511881f, -0.511963f, -0.512045f, + -0.512128f, -0.512210f, -0.512292f, -0.512375f, -0.512457f, -0.512539f, -0.512622f, -0.512704f, + -0.512786f, -0.512869f, -0.512951f, -0.513033f, -0.513116f, -0.513198f, -0.513280f, -0.513362f, + -0.513445f, -0.513527f, -0.513609f, -0.513692f, -0.513774f, -0.513856f, -0.513938f, -0.514021f, + -0.514103f, -0.514185f, -0.514267f, -0.514349f, -0.514432f, -0.514514f, -0.514596f, -0.514678f, + -0.514760f, -0.514843f, -0.514925f, -0.515007f, -0.515089f, -0.515171f, -0.515254f, -0.515336f, + -0.515418f, -0.515500f, -0.515582f, -0.515664f, -0.515746f, -0.515829f, -0.515911f, -0.515993f, + -0.516075f, -0.516157f, -0.516239f, -0.516321f, -0.516403f, -0.516486f, -0.516568f, -0.516650f, + -0.516732f, -0.516814f, -0.516896f, -0.516978f, -0.517060f, -0.517142f, -0.517224f, -0.517306f, + -0.517388f, -0.517470f, -0.517552f, -0.517634f, -0.517716f, -0.517798f, -0.517880f, -0.517963f, + -0.518045f, -0.518126f, -0.518209f, -0.518291f, -0.518372f, -0.518454f, -0.518536f, -0.518618f, + -0.518700f, -0.518782f, -0.518864f, -0.518946f, -0.519028f, -0.519110f, -0.519192f, -0.519274f, + -0.519356f, -0.519438f, -0.519520f, -0.519602f, -0.519684f, -0.519766f, -0.519848f, -0.519929f, + -0.520011f, -0.520093f, -0.520175f, -0.520257f, -0.520339f, -0.520421f, -0.520503f, -0.520584f, + -0.520666f, -0.520748f, -0.520830f, -0.520912f, -0.520994f, -0.521075f, -0.521157f, -0.521239f, + -0.521321f, -0.521403f, -0.521485f, -0.521566f, -0.521648f, -0.521730f, -0.521812f, -0.521894f, + -0.521975f, -0.522057f, -0.522139f, -0.522221f, -0.522302f, -0.522384f, -0.522466f, -0.522548f, + -0.522629f, -0.522711f, -0.522793f, -0.522875f, -0.522956f, -0.523038f, -0.523120f, -0.523201f, + -0.523283f, -0.523365f, -0.523447f, -0.523528f, -0.523610f, -0.523692f, -0.523773f, -0.523855f, + -0.523937f, -0.524018f, -0.524100f, -0.524181f, -0.524263f, -0.524345f, -0.524426f, -0.524508f, + -0.524590f, -0.524671f, -0.524753f, -0.524835f, -0.524916f, -0.524998f, -0.525079f, -0.525161f, + -0.525243f, -0.525324f, -0.525406f, -0.525487f, -0.525569f, -0.525650f, -0.525732f, -0.525813f, + -0.525895f, -0.525977f, -0.526058f, -0.526140f, -0.526221f, -0.526303f, -0.526384f, -0.526466f, + -0.526547f, -0.526629f, -0.526710f, -0.526792f, -0.526873f, -0.526955f, -0.527036f, -0.527118f, + -0.527199f, -0.527281f, -0.527362f, -0.527444f, -0.527525f, -0.527606f, -0.527688f, -0.527769f, + -0.527851f, -0.527932f, -0.528014f, -0.528095f, -0.528176f, -0.528258f, -0.528339f, -0.528421f, + -0.528502f, -0.528583f, -0.528665f, -0.528746f, -0.528828f, -0.528909f, -0.528990f, -0.529072f, + -0.529153f, -0.529234f, -0.529316f, -0.529397f, -0.529478f, -0.529560f, -0.529641f, -0.529722f, + -0.529804f, -0.529885f, -0.529966f, -0.530048f, -0.530129f, -0.530210f, -0.530291f, -0.530373f, + -0.530454f, -0.530535f, -0.530617f, -0.530698f, -0.530779f, -0.530860f, -0.530942f, -0.531023f, + -0.531104f, -0.531185f, -0.531266f, -0.531348f, -0.531429f, -0.531510f, -0.531591f, -0.531673f, + -0.531754f, -0.531835f, -0.531916f, -0.531997f, -0.532078f, -0.532160f, -0.532241f, -0.532322f, + -0.532403f, -0.532484f, -0.532565f, -0.532647f, -0.532728f, -0.532809f, -0.532890f, -0.532971f, + -0.533052f, -0.533133f, -0.533214f, -0.533296f, -0.533377f, -0.533458f, -0.533539f, -0.533620f, + -0.533701f, -0.533782f, -0.533863f, -0.533944f, -0.534025f, -0.534106f, -0.534187f, -0.534268f, + -0.534349f, -0.534431f, -0.534512f, -0.534593f, -0.534674f, -0.534755f, -0.534836f, -0.534917f, + -0.534998f, -0.535079f, -0.535160f, -0.535241f, -0.535322f, -0.535403f, -0.535484f, -0.535564f, + -0.535645f, -0.535726f, -0.535807f, -0.535888f, -0.535969f, -0.536050f, -0.536131f, -0.536212f, + -0.536293f, -0.536374f, -0.536455f, -0.536536f, -0.536617f, -0.536698f, -0.536778f, -0.536859f, + -0.536940f, -0.537021f, -0.537102f, -0.537183f, -0.537264f, -0.537345f, -0.537425f, -0.537506f, + -0.537587f, -0.537668f, -0.537749f, -0.537830f, -0.537910f, -0.537991f, -0.538072f, -0.538153f, + -0.538234f, -0.538314f, -0.538395f, -0.538476f, -0.538557f, -0.538638f, -0.538718f, -0.538799f, + -0.538880f, -0.538961f, -0.539041f, -0.539122f, -0.539203f, -0.539284f, -0.539364f, -0.539445f, + -0.539526f, -0.539607f, -0.539687f, -0.539768f, -0.539849f, -0.539929f, -0.540010f, -0.540091f, + -0.540171f, -0.540252f, -0.540333f, -0.540413f, -0.540494f, -0.540575f, -0.540655f, -0.540736f, + -0.540817f, -0.540897f, -0.540978f, -0.541059f, -0.541139f, -0.541220f, -0.541301f, -0.541381f, + -0.541462f, -0.541542f, -0.541623f, -0.541704f, -0.541784f, -0.541865f, -0.541945f, -0.542026f, + -0.542106f, -0.542187f, -0.542268f, -0.542348f, -0.542429f, -0.542509f, -0.542590f, -0.542670f, + -0.542751f, -0.542831f, -0.542912f, -0.542992f, -0.543073f, -0.543153f, -0.543234f, -0.543314f, + -0.543395f, -0.543475f, -0.543556f, -0.543636f, -0.543717f, -0.543797f, -0.543878f, -0.543958f, + -0.544039f, -0.544119f, -0.544199f, -0.544280f, -0.544360f, -0.544441f, -0.544521f, -0.544602f, + -0.544682f, -0.544762f, -0.544843f, -0.544923f, -0.545003f, -0.545084f, -0.545164f, -0.545245f, + -0.545325f, -0.545405f, -0.545486f, -0.545566f, -0.545646f, -0.545727f, -0.545807f, -0.545887f, + -0.545968f, -0.546048f, -0.546128f, -0.546209f, -0.546289f, -0.546369f, -0.546450f, -0.546530f, + -0.546610f, -0.546690f, -0.546771f, -0.546851f, -0.546931f, -0.547011f, -0.547092f, -0.547172f, + -0.547252f, -0.547333f, -0.547413f, -0.547493f, -0.547573f, -0.547653f, -0.547734f, -0.547814f, + -0.547894f, -0.547974f, -0.548054f, -0.548135f, -0.548215f, -0.548295f, -0.548375f, -0.548455f, + -0.548536f, -0.548616f, -0.548696f, -0.548776f, -0.548856f, -0.548936f, -0.549016f, -0.549097f, + -0.549177f, -0.549257f, -0.549337f, -0.549417f, -0.549497f, -0.549577f, -0.549657f, -0.549737f, + -0.549818f, -0.549898f, -0.549978f, -0.550058f, -0.550138f, -0.550218f, -0.550298f, -0.550378f, + -0.550458f, -0.550538f, -0.550618f, -0.550698f, -0.550778f, -0.550858f, -0.550938f, -0.551018f, + -0.551098f, -0.551178f, -0.551258f, -0.551338f, -0.551418f, -0.551498f, -0.551578f, -0.551658f, + -0.551738f, -0.551818f, -0.551898f, -0.551978f, -0.552058f, -0.552138f, -0.552218f, -0.552298f, + -0.552378f, -0.552457f, -0.552537f, -0.552617f, -0.552697f, -0.552777f, -0.552857f, -0.552937f, + -0.553017f, -0.553097f, -0.553176f, -0.553256f, -0.553336f, -0.553416f, -0.553496f, -0.553576f, + -0.553656f, -0.553735f, -0.553815f, -0.553895f, -0.553975f, -0.554055f, -0.554134f, -0.554214f, + -0.554294f, -0.554374f, -0.554454f, -0.554533f, -0.554613f, -0.554693f, -0.554773f, -0.554853f, + -0.554932f, -0.555012f, -0.555092f, -0.555172f, -0.555251f, -0.555331f, -0.555411f, -0.555490f, + -0.555570f, -0.555650f, -0.555730f, -0.555809f, -0.555889f, -0.555969f, -0.556048f, -0.556128f, + -0.556208f, -0.556287f, -0.556367f, -0.556447f, -0.556526f, -0.556606f, -0.556686f, -0.556765f, + -0.556845f, -0.556925f, -0.557004f, -0.557084f, -0.557164f, -0.557243f, -0.557323f, -0.557402f, + -0.557482f, -0.557562f, -0.557641f, -0.557721f, -0.557800f, -0.557880f, -0.557959f, -0.558039f, + -0.558119f, -0.558198f, -0.558278f, -0.558357f, -0.558437f, -0.558516f, -0.558596f, -0.558675f, + -0.558755f, -0.558834f, -0.558914f, -0.558993f, -0.559073f, -0.559152f, -0.559232f, -0.559311f, + -0.559391f, -0.559470f, -0.559550f, -0.559629f, -0.559709f, -0.559788f, -0.559867f, -0.559947f, + -0.560026f, -0.560106f, -0.560185f, -0.560265f, -0.560344f, -0.560423f, -0.560503f, -0.560582f, + -0.560662f, -0.560741f, -0.560820f, -0.560900f, -0.560979f, -0.561058f, -0.561138f, -0.561217f, + -0.561297f, -0.561376f, -0.561455f, -0.561535f, -0.561614f, -0.561693f, -0.561773f, -0.561852f, + -0.561931f, -0.562010f, -0.562090f, -0.562169f, -0.562248f, -0.562328f, -0.562407f, -0.562486f, + -0.562565f, -0.562645f, -0.562724f, -0.562803f, -0.562882f, -0.562962f, -0.563041f, -0.563120f, + -0.563199f, -0.563279f, -0.563358f, -0.563437f, -0.563516f, -0.563595f, -0.563675f, -0.563754f, + -0.563833f, -0.563912f, -0.563991f, -0.564070f, -0.564150f, -0.564229f, -0.564308f, -0.564387f, + -0.564466f, -0.564545f, -0.564624f, -0.564704f, -0.564783f, -0.564862f, -0.564941f, -0.565020f, + -0.565099f, -0.565178f, -0.565257f, -0.565336f, -0.565416f, -0.565495f, -0.565574f, -0.565653f, + -0.565732f, -0.565811f, -0.565890f, -0.565969f, -0.566048f, -0.566127f, -0.566206f, -0.566285f, + -0.566364f, -0.566443f, -0.566522f, -0.566601f, -0.566680f, -0.566759f, -0.566838f, -0.566917f, + -0.566996f, -0.567075f, -0.567154f, -0.567233f, -0.567312f, -0.567391f, -0.567470f, -0.567549f, + -0.567628f, -0.567707f, -0.567786f, -0.567864f, -0.567943f, -0.568022f, -0.568101f, -0.568180f, + -0.568259f, -0.568338f, -0.568417f, -0.568496f, -0.568574f, -0.568653f, -0.568732f, -0.568811f, + -0.568890f, -0.568969f, -0.569048f, -0.569126f, -0.569205f, -0.569284f, -0.569363f, -0.569442f, + -0.569521f, -0.569599f, -0.569678f, -0.569757f, -0.569836f, -0.569914f, -0.569993f, -0.570072f, + -0.570151f, -0.570230f, -0.570308f, -0.570387f, -0.570466f, -0.570545f, -0.570623f, -0.570702f, + -0.570781f, -0.570859f, -0.570938f, -0.571017f, -0.571096f, -0.571174f, -0.571253f, -0.571332f, + -0.571410f, -0.571489f, -0.571568f, -0.571646f, -0.571725f, -0.571804f, -0.571882f, -0.571961f, + -0.572040f, -0.572118f, -0.572197f, -0.572276f, -0.572354f, -0.572433f, -0.572511f, -0.572590f, + -0.572669f, -0.572747f, -0.572826f, -0.572904f, -0.572983f, -0.573061f, -0.573140f, -0.573219f, + -0.573297f, -0.573376f, -0.573454f, -0.573533f, -0.573611f, -0.573690f, -0.573768f, -0.573847f, + -0.573925f, -0.574004f, -0.574082f, -0.574161f, -0.574239f, -0.574318f, -0.574396f, -0.574475f, + -0.574553f, -0.574632f, -0.574710f, -0.574789f, -0.574867f, -0.574946f, -0.575024f, -0.575103f, + -0.575181f, -0.575259f, -0.575338f, -0.575416f, -0.575495f, -0.575573f, -0.575651f, -0.575730f, + -0.575808f, -0.575887f, -0.575965f, -0.576043f, -0.576122f, -0.576200f, -0.576278f, -0.576357f, + -0.576435f, -0.576513f, -0.576592f, -0.576670f, -0.576748f, -0.576827f, -0.576905f, -0.576983f, + -0.577062f, -0.577140f, -0.577218f, -0.577297f, -0.577375f, -0.577453f, -0.577531f, -0.577610f, + -0.577688f, -0.577766f, -0.577844f, -0.577923f, -0.578001f, -0.578079f, -0.578157f, -0.578236f, + -0.578314f, -0.578392f, -0.578470f, -0.578548f, -0.578627f, -0.578705f, -0.578783f, -0.578861f, + -0.578939f, -0.579018f, -0.579096f, -0.579174f, -0.579252f, -0.579330f, -0.579408f, -0.579486f, + -0.579565f, -0.579643f, -0.579721f, -0.579799f, -0.579877f, -0.579955f, -0.580033f, -0.580111f, + -0.580189f, -0.580267f, -0.580346f, -0.580424f, -0.580502f, -0.580580f, -0.580658f, -0.580736f, + -0.580814f, -0.580892f, -0.580970f, -0.581048f, -0.581126f, -0.581204f, -0.581282f, -0.581360f, + -0.581438f, -0.581516f, -0.581594f, -0.581672f, -0.581750f, -0.581828f, -0.581906f, -0.581984f, + -0.582062f, -0.582140f, -0.582218f, -0.582296f, -0.582374f, -0.582452f, -0.582530f, -0.582608f, + -0.582685f, -0.582763f, -0.582841f, -0.582919f, -0.582997f, -0.583075f, -0.583153f, -0.583231f, + -0.583309f, -0.583387f, -0.583464f, -0.583542f, -0.583620f, -0.583698f, -0.583776f, -0.583854f, + -0.583931f, -0.584009f, -0.584087f, -0.584165f, -0.584243f, -0.584321f, -0.584398f, -0.584476f, + -0.584554f, -0.584632f, -0.584710f, -0.584787f, -0.584865f, -0.584943f, -0.585021f, -0.585098f, + -0.585176f, -0.585254f, -0.585332f, -0.585409f, -0.585487f, -0.585565f, -0.585642f, -0.585720f, + -0.585798f, -0.585876f, -0.585953f, -0.586031f, -0.586109f, -0.586186f, -0.586264f, -0.586342f, + -0.586419f, -0.586497f, -0.586575f, -0.586652f, -0.586730f, -0.586808f, -0.586885f, -0.586963f, + -0.587040f, -0.587118f, -0.587196f, -0.587273f, -0.587351f, -0.587428f, -0.587506f, -0.587584f, + -0.587661f, -0.587739f, -0.587816f, -0.587894f, -0.587971f, -0.588049f, -0.588126f, -0.588204f, + -0.588282f, -0.588359f, -0.588437f, -0.588514f, -0.588592f, -0.588669f, -0.588747f, -0.588824f, + -0.588902f, -0.588979f, -0.589057f, -0.589134f, -0.589212f, -0.589289f, -0.589366f, -0.589444f, + -0.589521f, -0.589599f, -0.589676f, -0.589754f, -0.589831f, -0.589908f, -0.589986f, -0.590063f, + -0.590141f, -0.590218f, -0.590295f, -0.590373f, -0.590450f, -0.590528f, -0.590605f, -0.590682f, + -0.590760f, -0.590837f, -0.590914f, -0.590992f, -0.591069f, -0.591146f, -0.591224f, -0.591301f, + -0.591378f, -0.591456f, -0.591533f, -0.591610f, -0.591688f, -0.591765f, -0.591842f, -0.591919f, + -0.591997f, -0.592074f, -0.592151f, -0.592228f, -0.592306f, -0.592383f, -0.592460f, -0.592537f, + -0.592615f, -0.592692f, -0.592769f, -0.592846f, -0.592924f, -0.593001f, -0.593078f, -0.593155f, + -0.593232f, -0.593309f, -0.593387f, -0.593464f, -0.593541f, -0.593618f, -0.593695f, -0.593772f, + -0.593850f, -0.593927f, -0.594004f, -0.594081f, -0.594158f, -0.594235f, -0.594312f, -0.594389f, + -0.594467f, -0.594544f, -0.594621f, -0.594698f, -0.594775f, -0.594852f, -0.594929f, -0.595006f, + -0.595083f, -0.595160f, -0.595237f, -0.595314f, -0.595391f, -0.595468f, -0.595545f, -0.595622f, + -0.595699f, -0.595776f, -0.595853f, -0.595930f, -0.596007f, -0.596084f, -0.596161f, -0.596238f, + -0.596315f, -0.596392f, -0.596469f, -0.596546f, -0.596623f, -0.596700f, -0.596777f, -0.596854f, + -0.596931f, -0.597008f, -0.597085f, -0.597161f, -0.597238f, -0.597315f, -0.597392f, -0.597469f, + -0.597546f, -0.597623f, -0.597700f, -0.597776f, -0.597853f, -0.597930f, -0.598007f, -0.598084f, + -0.598161f, -0.598238f, -0.598314f, -0.598391f, -0.598468f, -0.598545f, -0.598622f, -0.598698f, + -0.598775f, -0.598852f, -0.598929f, -0.599006f, -0.599082f, -0.599159f, -0.599236f, -0.599313f, + -0.599389f, -0.599466f, -0.599543f, -0.599620f, -0.599696f, -0.599773f, -0.599850f, -0.599926f, + -0.600003f, -0.600080f, -0.600156f, -0.600233f, -0.600310f, -0.600387f, -0.600463f, -0.600540f, + -0.600616f, -0.600693f, -0.600770f, -0.600846f, -0.600923f, -0.601000f, -0.601076f, -0.601153f, + -0.601230f, -0.601306f, -0.601383f, -0.601459f, -0.601536f, -0.601613f, -0.601689f, -0.601766f, + -0.601842f, -0.601919f, -0.601995f, -0.602072f, -0.602148f, -0.602225f, -0.602302f, -0.602378f, + -0.602455f, -0.602531f, -0.602608f, -0.602684f, -0.602761f, -0.602837f, -0.602914f, -0.602990f, + -0.603067f, -0.603143f, -0.603220f, -0.603296f, -0.603372f, -0.603449f, -0.603525f, -0.603602f, + -0.603678f, -0.603755f, -0.603831f, -0.603908f, -0.603984f, -0.604060f, -0.604137f, -0.604213f, + -0.604290f, -0.604366f, -0.604442f, -0.604519f, -0.604595f, -0.604671f, -0.604748f, -0.604824f, + -0.604900f, -0.604977f, -0.605053f, -0.605129f, -0.605206f, -0.605282f, -0.605358f, -0.605435f, + -0.605511f, -0.605587f, -0.605664f, -0.605740f, -0.605816f, -0.605892f, -0.605969f, -0.606045f, + -0.606121f, -0.606198f, -0.606274f, -0.606350f, -0.606426f, -0.606502f, -0.606579f, -0.606655f, + -0.606731f, -0.606807f, -0.606884f, -0.606960f, -0.607036f, -0.607112f, -0.607188f, -0.607264f, + -0.607341f, -0.607417f, -0.607493f, -0.607569f, -0.607645f, -0.607721f, -0.607798f, -0.607874f, + -0.607950f, -0.608026f, -0.608102f, -0.608178f, -0.608254f, -0.608330f, -0.608406f, -0.608482f, + -0.608559f, -0.608635f, -0.608711f, -0.608787f, -0.608863f, -0.608939f, -0.609015f, -0.609091f, + -0.609167f, -0.609243f, -0.609319f, -0.609395f, -0.609471f, -0.609547f, -0.609623f, -0.609699f, + -0.609775f, -0.609851f, -0.609927f, -0.610003f, -0.610079f, -0.610155f, -0.610231f, -0.610307f, + -0.610383f, -0.610459f, -0.610535f, -0.610611f, -0.610687f, -0.610762f, -0.610838f, -0.610914f, + -0.610990f, -0.611066f, -0.611142f, -0.611218f, -0.611294f, -0.611370f, -0.611445f, -0.611521f, + -0.611597f, -0.611673f, -0.611749f, -0.611825f, -0.611901f, -0.611976f, -0.612052f, -0.612128f, + -0.612204f, -0.612280f, -0.612355f, -0.612431f, -0.612507f, -0.612583f, -0.612659f, -0.612734f, + -0.612810f, -0.612886f, -0.612962f, -0.613037f, -0.613113f, -0.613189f, -0.613265f, -0.613340f, + -0.613416f, -0.613492f, -0.613567f, -0.613643f, -0.613719f, -0.613795f, -0.613870f, -0.613946f, + -0.614022f, -0.614097f, -0.614173f, -0.614249f, -0.614324f, -0.614400f, -0.614475f, -0.614551f, + -0.614627f, -0.614702f, -0.614778f, -0.614854f, -0.614929f, -0.615005f, -0.615080f, -0.615156f, + -0.615232f, -0.615307f, -0.615383f, -0.615458f, -0.615534f, -0.615609f, -0.615685f, -0.615761f, + -0.615836f, -0.615912f, -0.615987f, -0.616063f, -0.616138f, -0.616214f, -0.616289f, -0.616365f, + -0.616440f, -0.616516f, -0.616591f, -0.616667f, -0.616742f, -0.616818f, -0.616893f, -0.616968f, + -0.617044f, -0.617119f, -0.617195f, -0.617270f, -0.617346f, -0.617421f, -0.617496f, -0.617572f, + -0.617647f, -0.617723f, -0.617798f, -0.617873f, -0.617949f, -0.618024f, -0.618100f, -0.618175f, + -0.618250f, -0.618326f, -0.618401f, -0.618476f, -0.618552f, -0.618627f, -0.618702f, -0.618778f, + -0.618853f, -0.618928f, -0.619004f, -0.619079f, -0.619154f, -0.619229f, -0.619305f, -0.619380f, + -0.619455f, -0.619531f, -0.619606f, -0.619681f, -0.619756f, -0.619832f, -0.619907f, -0.619982f, + -0.620057f, -0.620132f, -0.620208f, -0.620283f, -0.620358f, -0.620433f, -0.620508f, -0.620584f, + -0.620659f, -0.620734f, -0.620809f, -0.620884f, -0.620959f, -0.621035f, -0.621110f, -0.621185f, + -0.621260f, -0.621335f, -0.621410f, -0.621485f, -0.621560f, -0.621636f, -0.621711f, -0.621786f, + -0.621861f, -0.621936f, -0.622011f, -0.622086f, -0.622161f, -0.622236f, -0.622311f, -0.622386f, + -0.622461f, -0.622536f, -0.622611f, -0.622686f, -0.622761f, -0.622836f, -0.622911f, -0.622986f, + -0.623061f, -0.623136f, -0.623211f, -0.623286f, -0.623361f, -0.623436f, -0.623511f, -0.623586f, + -0.623661f, -0.623736f, -0.623811f, -0.623886f, -0.623961f, -0.624036f, -0.624111f, -0.624186f, + -0.624260f, -0.624335f, -0.624410f, -0.624485f, -0.624560f, -0.624635f, -0.624710f, -0.624785f, + -0.624860f, -0.624934f, -0.625009f, -0.625084f, -0.625159f, -0.625234f, -0.625309f, -0.625383f, + -0.625458f, -0.625533f, -0.625608f, -0.625683f, -0.625757f, -0.625832f, -0.625907f, -0.625982f, + -0.626056f, -0.626131f, -0.626206f, -0.626281f, -0.626355f, -0.626430f, -0.626505f, -0.626580f, + -0.626654f, -0.626729f, -0.626804f, -0.626878f, -0.626953f, -0.627028f, -0.627102f, -0.627177f, + -0.627252f, -0.627326f, -0.627401f, -0.627476f, -0.627550f, -0.627625f, -0.627700f, -0.627774f, + -0.627849f, -0.627924f, -0.627998f, -0.628073f, -0.628147f, -0.628222f, -0.628297f, -0.628371f, + -0.628446f, -0.628520f, -0.628595f, -0.628669f, -0.628744f, -0.628819f, -0.628893f, -0.628968f, + -0.629042f, -0.629117f, -0.629191f, -0.629266f, -0.629340f, -0.629415f, -0.629489f, -0.629564f, + -0.629638f, -0.629713f, -0.629787f, -0.629862f, -0.629936f, -0.630011f, -0.630085f, -0.630159f, + -0.630234f, -0.630308f, -0.630383f, -0.630457f, -0.630532f, -0.630606f, -0.630680f, -0.630755f, + -0.630829f, -0.630904f, -0.630978f, -0.631052f, -0.631127f, -0.631201f, -0.631275f, -0.631350f, + -0.631424f, -0.631499f, -0.631573f, -0.631647f, -0.631721f, -0.631796f, -0.631870f, -0.631944f, + -0.632019f, -0.632093f, -0.632167f, -0.632242f, -0.632316f, -0.632390f, -0.632464f, -0.632539f, + -0.632613f, -0.632687f, -0.632761f, -0.632836f, -0.632910f, -0.632984f, -0.633058f, -0.633133f, + -0.633207f, -0.633281f, -0.633355f, -0.633429f, -0.633504f, -0.633578f, -0.633652f, -0.633726f, + -0.633800f, -0.633874f, -0.633949f, -0.634023f, -0.634097f, -0.634171f, -0.634245f, -0.634319f, + -0.634393f, -0.634467f, -0.634542f, -0.634616f, -0.634690f, -0.634764f, -0.634838f, -0.634912f, + -0.634986f, -0.635060f, -0.635134f, -0.635208f, -0.635282f, -0.635356f, -0.635430f, -0.635504f, + -0.635578f, -0.635652f, -0.635726f, -0.635800f, -0.635874f, -0.635948f, -0.636022f, -0.636096f, + -0.636170f, -0.636244f, -0.636318f, -0.636392f, -0.636466f, -0.636540f, -0.636614f, -0.636688f, + -0.636762f, -0.636836f, -0.636910f, -0.636984f, -0.637057f, -0.637131f, -0.637205f, -0.637279f, + -0.637353f, -0.637427f, -0.637501f, -0.637575f, -0.637649f, -0.637722f, -0.637796f, -0.637870f, + -0.637944f, -0.638018f, -0.638092f, -0.638165f, -0.638239f, -0.638313f, -0.638387f, -0.638461f, + -0.638534f, -0.638608f, -0.638682f, -0.638756f, -0.638829f, -0.638903f, -0.638977f, -0.639051f, + -0.639124f, -0.639198f, -0.639272f, -0.639346f, -0.639419f, -0.639493f, -0.639567f, -0.639640f, + -0.639714f, -0.639788f, -0.639862f, -0.639935f, -0.640009f, -0.640083f, -0.640156f, -0.640230f, + -0.640303f, -0.640377f, -0.640451f, -0.640524f, -0.640598f, -0.640672f, -0.640745f, -0.640819f, + -0.640892f, -0.640966f, -0.641040f, -0.641113f, -0.641187f, -0.641260f, -0.641334f, -0.641407f, + -0.641481f, -0.641555f, -0.641628f, -0.641702f, -0.641775f, -0.641849f, -0.641922f, -0.641996f, + -0.642069f, -0.642143f, -0.642216f, -0.642290f, -0.642363f, -0.642437f, -0.642510f, -0.642584f, + -0.642657f, -0.642730f, -0.642804f, -0.642877f, -0.642951f, -0.643024f, -0.643098f, -0.643171f, + -0.643245f, -0.643318f, -0.643391f, -0.643465f, -0.643538f, -0.643611f, -0.643685f, -0.643758f, + -0.643832f, -0.643905f, -0.643978f, -0.644052f, -0.644125f, -0.644198f, -0.644272f, -0.644345f, + -0.644418f, -0.644492f, -0.644565f, -0.644638f, -0.644711f, -0.644785f, -0.644858f, -0.644931f, + -0.645005f, -0.645078f, -0.645151f, -0.645224f, -0.645298f, -0.645371f, -0.645444f, -0.645517f, + -0.645590f, -0.645664f, -0.645737f, -0.645810f, -0.645883f, -0.645956f, -0.646030f, -0.646103f, + -0.646176f, -0.646249f, -0.646322f, -0.646396f, -0.646469f, -0.646542f, -0.646615f, -0.646688f, + -0.646761f, -0.646834f, -0.646907f, -0.646981f, -0.647054f, -0.647127f, -0.647200f, -0.647273f, + -0.647346f, -0.647419f, -0.647492f, -0.647565f, -0.647638f, -0.647711f, -0.647784f, -0.647857f, + -0.647930f, -0.648003f, -0.648076f, -0.648149f, -0.648222f, -0.648295f, -0.648368f, -0.648441f, + -0.648514f, -0.648587f, -0.648660f, -0.648733f, -0.648806f, -0.648879f, -0.648952f, -0.649025f, + -0.649098f, -0.649171f, -0.649244f, -0.649317f, -0.649390f, -0.649463f, -0.649536f, -0.649608f, + -0.649681f, -0.649754f, -0.649827f, -0.649900f, -0.649973f, -0.650046f, -0.650119f, -0.650191f, + -0.650264f, -0.650337f, -0.650410f, -0.650483f, -0.650555f, -0.650628f, -0.650701f, -0.650774f, + -0.650847f, -0.650919f, -0.650992f, -0.651065f, -0.651138f, -0.651211f, -0.651283f, -0.651356f, + -0.651429f, -0.651502f, -0.651574f, -0.651647f, -0.651720f, -0.651792f, -0.651865f, -0.651938f, + -0.652011f, -0.652083f, -0.652156f, -0.652229f, -0.652301f, -0.652374f, -0.652447f, -0.652519f, + -0.652592f, -0.652665f, -0.652737f, -0.652810f, -0.652882f, -0.652955f, -0.653028f, -0.653100f, + -0.653173f, -0.653245f, -0.653318f, -0.653391f, -0.653463f, -0.653536f, -0.653608f, -0.653681f, + -0.653753f, -0.653826f, -0.653899f, -0.653971f, -0.654044f, -0.654116f, -0.654189f, -0.654261f, + -0.654334f, -0.654406f, -0.654479f, -0.654551f, -0.654624f, -0.654696f, -0.654769f, -0.654841f, + -0.654913f, -0.654986f, -0.655058f, -0.655131f, -0.655203f, -0.655276f, -0.655348f, -0.655420f, + -0.655493f, -0.655565f, -0.655638f, -0.655710f, -0.655782f, -0.655855f, -0.655927f, -0.656000f, + -0.656072f, -0.656144f, -0.656217f, -0.656289f, -0.656361f, -0.656434f, -0.656506f, -0.656578f, + -0.656651f, -0.656723f, -0.656795f, -0.656867f, -0.656940f, -0.657012f, -0.657084f, -0.657157f, + -0.657229f, -0.657301f, -0.657373f, -0.657446f, -0.657518f, -0.657590f, -0.657662f, -0.657734f, + -0.657807f, -0.657879f, -0.657951f, -0.658023f, -0.658095f, -0.658168f, -0.658240f, -0.658312f, + -0.658384f, -0.658456f, -0.658529f, -0.658601f, -0.658673f, -0.658745f, -0.658817f, -0.658889f, + -0.658961f, -0.659033f, -0.659105f, -0.659178f, -0.659250f, -0.659322f, -0.659394f, -0.659466f, + -0.659538f, -0.659610f, -0.659682f, -0.659754f, -0.659826f, -0.659898f, -0.659970f, -0.660042f, + -0.660114f, -0.660186f, -0.660258f, -0.660330f, -0.660402f, -0.660474f, -0.660546f, -0.660618f, + -0.660690f, -0.660762f, -0.660834f, -0.660906f, -0.660978f, -0.661050f, -0.661122f, -0.661194f, + -0.661266f, -0.661338f, -0.661410f, -0.661482f, -0.661553f, -0.661625f, -0.661697f, -0.661769f, + -0.661841f, -0.661913f, -0.661985f, -0.662057f, -0.662128f, -0.662200f, -0.662272f, -0.662344f, + -0.662416f, -0.662488f, -0.662559f, -0.662631f, -0.662703f, -0.662775f, -0.662847f, -0.662918f, + -0.662990f, -0.663062f, -0.663134f, -0.663205f, -0.663277f, -0.663349f, -0.663421f, -0.663492f, + -0.663564f, -0.663636f, -0.663708f, -0.663779f, -0.663851f, -0.663923f, -0.663994f, -0.664066f, + -0.664138f, -0.664209f, -0.664281f, -0.664353f, -0.664424f, -0.664496f, -0.664568f, -0.664639f, + -0.664711f, -0.664783f, -0.664854f, -0.664926f, -0.664997f, -0.665069f, -0.665141f, -0.665212f, + -0.665284f, -0.665355f, -0.665427f, -0.665498f, -0.665570f, -0.665642f, -0.665713f, -0.665785f, + -0.665856f, -0.665928f, -0.665999f, -0.666071f, -0.666142f, -0.666214f, -0.666285f, -0.666357f, + -0.666428f, -0.666500f, -0.666571f, -0.666643f, -0.666714f, -0.666786f, -0.666857f, -0.666928f, + -0.667000f, -0.667071f, -0.667143f, -0.667214f, -0.667286f, -0.667357f, -0.667428f, -0.667500f, + -0.667571f, -0.667643f, -0.667714f, -0.667785f, -0.667857f, -0.667928f, -0.667999f, -0.668071f, + -0.668142f, -0.668213f, -0.668285f, -0.668356f, -0.668427f, -0.668499f, -0.668570f, -0.668641f, + -0.668712f, -0.668784f, -0.668855f, -0.668926f, -0.668998f, -0.669069f, -0.669140f, -0.669211f, + -0.669283f, -0.669354f, -0.669425f, -0.669496f, -0.669567f, -0.669639f, -0.669710f, -0.669781f, + -0.669852f, -0.669923f, -0.669995f, -0.670066f, -0.670137f, -0.670208f, -0.670279f, -0.670350f, + -0.670422f, -0.670493f, -0.670564f, -0.670635f, -0.670706f, -0.670777f, -0.670848f, -0.670919f, + -0.670990f, -0.671062f, -0.671133f, -0.671204f, -0.671275f, -0.671346f, -0.671417f, -0.671488f, + -0.671559f, -0.671630f, -0.671701f, -0.671772f, -0.671843f, -0.671914f, -0.671985f, -0.672056f, + -0.672127f, -0.672198f, -0.672269f, -0.672340f, -0.672411f, -0.672482f, -0.672553f, -0.672624f, + -0.672695f, -0.672766f, -0.672837f, -0.672908f, -0.672978f, -0.673049f, -0.673120f, -0.673191f, + -0.673262f, -0.673333f, -0.673404f, -0.673475f, -0.673546f, -0.673616f, -0.673687f, -0.673758f, + -0.673829f, -0.673900f, -0.673971f, -0.674042f, -0.674112f, -0.674183f, -0.674254f, -0.674325f, + -0.674396f, -0.674466f, -0.674537f, -0.674608f, -0.674679f, -0.674749f, -0.674820f, -0.674891f, + -0.674962f, -0.675032f, -0.675103f, -0.675174f, -0.675245f, -0.675315f, -0.675386f, -0.675457f, + -0.675527f, -0.675598f, -0.675669f, -0.675739f, -0.675810f, -0.675881f, -0.675951f, -0.676022f, + -0.676093f, -0.676163f, -0.676234f, -0.676305f, -0.676375f, -0.676446f, -0.676516f, -0.676587f, + -0.676658f, -0.676728f, -0.676799f, -0.676869f, -0.676940f, -0.677011f, -0.677081f, -0.677152f, + -0.677222f, -0.677293f, -0.677363f, -0.677434f, -0.677504f, -0.677575f, -0.677645f, -0.677716f, + -0.677786f, -0.677857f, -0.677927f, -0.677998f, -0.678068f, -0.678139f, -0.678209f, -0.678280f, + -0.678350f, -0.678420f, -0.678491f, -0.678561f, -0.678632f, -0.678702f, -0.678773f, -0.678843f, + -0.678913f, -0.678984f, -0.679054f, -0.679125f, -0.679195f, -0.679265f, -0.679336f, -0.679406f, + -0.679476f, -0.679547f, -0.679617f, -0.679687f, -0.679758f, -0.679828f, -0.679898f, -0.679969f, + -0.680039f, -0.680109f, -0.680179f, -0.680250f, -0.680320f, -0.680390f, -0.680461f, -0.680531f, + -0.680601f, -0.680671f, -0.680741f, -0.680812f, -0.680882f, -0.680952f, -0.681022f, -0.681093f, + -0.681163f, -0.681233f, -0.681303f, -0.681373f, -0.681443f, -0.681514f, -0.681584f, -0.681654f, + -0.681724f, -0.681794f, -0.681864f, -0.681934f, -0.682005f, -0.682075f, -0.682145f, -0.682215f, + -0.682285f, -0.682355f, -0.682425f, -0.682495f, -0.682565f, -0.682635f, -0.682705f, -0.682775f, + -0.682846f, -0.682916f, -0.682986f, -0.683056f, -0.683126f, -0.683196f, -0.683266f, -0.683336f, + -0.683406f, -0.683476f, -0.683546f, -0.683616f, -0.683686f, -0.683756f, -0.683825f, -0.683895f, + -0.683965f, -0.684035f, -0.684105f, -0.684175f, -0.684245f, -0.684315f, -0.684385f, -0.684455f, + -0.684525f, -0.684595f, -0.684664f, -0.684734f, -0.684804f, -0.684874f, -0.684944f, -0.685014f, + -0.685084f, -0.685153f, -0.685223f, -0.685293f, -0.685363f, -0.685433f, -0.685503f, -0.685572f, + -0.685642f, -0.685712f, -0.685782f, -0.685852f, -0.685921f, -0.685991f, -0.686061f, -0.686131f, + -0.686200f, -0.686270f, -0.686340f, -0.686409f, -0.686479f, -0.686549f, -0.686619f, -0.686688f, + -0.686758f, -0.686828f, -0.686897f, -0.686967f, -0.687037f, -0.687106f, -0.687176f, -0.687246f, + -0.687315f, -0.687385f, -0.687455f, -0.687524f, -0.687594f, -0.687663f, -0.687733f, -0.687803f, + -0.687872f, -0.687942f, -0.688011f, -0.688081f, -0.688151f, -0.688220f, -0.688290f, -0.688359f, + -0.688429f, -0.688498f, -0.688568f, -0.688637f, -0.688707f, -0.688776f, -0.688846f, -0.688915f, + -0.688985f, -0.689054f, -0.689124f, -0.689193f, -0.689263f, -0.689332f, -0.689402f, -0.689471f, + -0.689541f, -0.689610f, -0.689679f, -0.689749f, -0.689818f, -0.689888f, -0.689957f, -0.690026f, + -0.690096f, -0.690165f, -0.690235f, -0.690304f, -0.690373f, -0.690443f, -0.690512f, -0.690581f, + -0.690651f, -0.690720f, -0.690789f, -0.690859f, -0.690928f, -0.690997f, -0.691067f, -0.691136f, + -0.691205f, -0.691274f, -0.691344f, -0.691413f, -0.691482f, -0.691552f, -0.691621f, -0.691690f, + -0.691759f, -0.691828f, -0.691898f, -0.691967f, -0.692036f, -0.692105f, -0.692175f, -0.692244f, + -0.692313f, -0.692382f, -0.692451f, -0.692520f, -0.692590f, -0.692659f, -0.692728f, -0.692797f, + -0.692866f, -0.692935f, -0.693004f, -0.693074f, -0.693143f, -0.693212f, -0.693281f, -0.693350f, + -0.693419f, -0.693488f, -0.693557f, -0.693626f, -0.693695f, -0.693764f, -0.693833f, -0.693902f, + -0.693971f, -0.694040f, -0.694109f, -0.694179f, -0.694248f, -0.694317f, -0.694386f, -0.694454f, + -0.694524f, -0.694592f, -0.694661f, -0.694730f, -0.694799f, -0.694868f, -0.694937f, -0.695006f, + -0.695075f, -0.695144f, -0.695213f, -0.695282f, -0.695351f, -0.695420f, -0.695489f, -0.695557f, + -0.695626f, -0.695695f, -0.695764f, -0.695833f, -0.695902f, -0.695971f, -0.696039f, -0.696108f, + -0.696177f, -0.696246f, -0.696315f, -0.696384f, -0.696452f, -0.696521f, -0.696590f, -0.696659f, + -0.696728f, -0.696796f, -0.696865f, -0.696934f, -0.697003f, -0.697071f, -0.697140f, -0.697209f, + -0.697277f, -0.697346f, -0.697415f, -0.697484f, -0.697552f, -0.697621f, -0.697690f, -0.697758f, + -0.697827f, -0.697896f, -0.697964f, -0.698033f, -0.698102f, -0.698170f, -0.698239f, -0.698308f, + -0.698376f, -0.698445f, -0.698513f, -0.698582f, -0.698651f, -0.698719f, -0.698788f, -0.698856f, + -0.698925f, -0.698994f, -0.699062f, -0.699131f, -0.699199f, -0.699268f, -0.699336f, -0.699405f, + -0.699473f, -0.699542f, -0.699610f, -0.699679f, -0.699747f, -0.699816f, -0.699884f, -0.699953f, + -0.700021f, -0.700090f, -0.700158f, -0.700227f, -0.700295f, -0.700364f, -0.700432f, -0.700500f, + -0.700569f, -0.700637f, -0.700706f, -0.700774f, -0.700842f, -0.700911f, -0.700979f, -0.701048f, + -0.701116f, -0.701184f, -0.701253f, -0.701321f, -0.701389f, -0.701458f, -0.701526f, -0.701594f, + -0.701663f, -0.701731f, -0.701799f, -0.701868f, -0.701936f, -0.702004f, -0.702072f, -0.702141f, + -0.702209f, -0.702277f, -0.702345f, -0.702414f, -0.702482f, -0.702550f, -0.702618f, -0.702687f, + -0.702755f, -0.702823f, -0.702891f, -0.702959f, -0.703028f, -0.703096f, -0.703164f, -0.703232f, + -0.703300f, -0.703368f, -0.703436f, -0.703505f, -0.703573f, -0.703641f, -0.703709f, -0.703777f, + -0.703845f, -0.703913f, -0.703981f, -0.704050f, -0.704118f, -0.704186f, -0.704254f, -0.704322f, + -0.704390f, -0.704458f, -0.704526f, -0.704594f, -0.704662f, -0.704730f, -0.704798f, -0.704866f, + -0.704934f, -0.705002f, -0.705070f, -0.705138f, -0.705206f, -0.705274f, -0.705342f, -0.705410f, + -0.705478f, -0.705546f, -0.705614f, -0.705682f, -0.705750f, -0.705818f, -0.705885f, -0.705953f, + -0.706021f, -0.706089f, -0.706157f, -0.706225f, -0.706293f, -0.706361f, -0.706429f, -0.706496f, + -0.706564f, -0.706632f, -0.706700f, -0.706768f, -0.706836f, -0.706903f, -0.706971f, -0.707039f, + -0.707107f, -0.707175f, -0.707242f, -0.707310f, -0.707378f, -0.707446f, -0.707513f, -0.707581f, + -0.707649f, -0.707717f, -0.707784f, -0.707852f, -0.707920f, -0.707988f, -0.708055f, -0.708123f, + -0.708191f, -0.708258f, -0.708326f, -0.708394f, -0.708461f, -0.708529f, -0.708597f, -0.708664f, + -0.708732f, -0.708800f, -0.708867f, -0.708935f, -0.709002f, -0.709070f, -0.709138f, -0.709205f, + -0.709273f, -0.709340f, -0.709408f, -0.709476f, -0.709543f, -0.709611f, -0.709678f, -0.709746f, + -0.709813f, -0.709881f, -0.709948f, -0.710016f, -0.710083f, -0.710151f, -0.710218f, -0.710286f, + -0.710353f, -0.710421f, -0.710488f, -0.710556f, -0.710623f, -0.710691f, -0.710758f, -0.710826f, + -0.710893f, -0.710960f, -0.711028f, -0.711095f, -0.711163f, -0.711230f, -0.711297f, -0.711365f, + -0.711432f, -0.711500f, -0.711567f, -0.711634f, -0.711702f, -0.711769f, -0.711836f, -0.711904f, + -0.711971f, -0.712038f, -0.712106f, -0.712173f, -0.712240f, -0.712308f, -0.712375f, -0.712442f, + -0.712509f, -0.712577f, -0.712644f, -0.712711f, -0.712778f, -0.712846f, -0.712913f, -0.712980f, + -0.713047f, -0.713115f, -0.713182f, -0.713249f, -0.713316f, -0.713383f, -0.713451f, -0.713518f, + -0.713585f, -0.713652f, -0.713719f, -0.713786f, -0.713853f, -0.713921f, -0.713988f, -0.714055f, + -0.714122f, -0.714189f, -0.714256f, -0.714323f, -0.714390f, -0.714457f, -0.714525f, -0.714592f, + -0.714659f, -0.714726f, -0.714793f, -0.714860f, -0.714927f, -0.714994f, -0.715061f, -0.715128f, + -0.715195f, -0.715262f, -0.715329f, -0.715396f, -0.715463f, -0.715530f, -0.715597f, -0.715664f, + -0.715731f, -0.715798f, -0.715865f, -0.715932f, -0.715999f, -0.716066f, -0.716132f, -0.716199f, + -0.716266f, -0.716333f, -0.716400f, -0.716467f, -0.716534f, -0.716601f, -0.716668f, -0.716734f, + -0.716801f, -0.716868f, -0.716935f, -0.717002f, -0.717069f, -0.717135f, -0.717202f, -0.717269f, + -0.717336f, -0.717403f, -0.717469f, -0.717536f, -0.717603f, -0.717670f, -0.717737f, -0.717803f, + -0.717870f, -0.717937f, -0.718004f, -0.718070f, -0.718137f, -0.718204f, -0.718270f, -0.718337f, + -0.718404f, -0.718471f, -0.718537f, -0.718604f, -0.718670f, -0.718737f, -0.718804f, -0.718870f, + -0.718937f, -0.719004f, -0.719070f, -0.719137f, -0.719204f, -0.719270f, -0.719337f, -0.719403f, + -0.719470f, -0.719537f, -0.719603f, -0.719670f, -0.719736f, -0.719803f, -0.719869f, -0.719936f, + -0.720003f, -0.720069f, -0.720136f, -0.720202f, -0.720269f, -0.720335f, -0.720402f, -0.720468f, + -0.720535f, -0.720601f, -0.720668f, -0.720734f, -0.720800f, -0.720867f, -0.720933f, -0.721000f, + -0.721066f, -0.721133f, -0.721199f, -0.721265f, -0.721332f, -0.721398f, -0.721465f, -0.721531f, + -0.721597f, -0.721664f, -0.721730f, -0.721797f, -0.721863f, -0.721929f, -0.721996f, -0.722062f, + -0.722128f, -0.722194f, -0.722261f, -0.722327f, -0.722393f, -0.722460f, -0.722526f, -0.722592f, + -0.722659f, -0.722725f, -0.722791f, -0.722857f, -0.722924f, -0.722990f, -0.723056f, -0.723122f, + -0.723188f, -0.723255f, -0.723321f, -0.723387f, -0.723453f, -0.723520f, -0.723586f, -0.723652f, + -0.723718f, -0.723784f, -0.723850f, -0.723916f, -0.723983f, -0.724049f, -0.724115f, -0.724181f, + -0.724247f, -0.724313f, -0.724379f, -0.724445f, -0.724511f, -0.724578f, -0.724644f, -0.724710f, + -0.724776f, -0.724842f, -0.724908f, -0.724974f, -0.725040f, -0.725106f, -0.725172f, -0.725238f, + -0.725304f, -0.725370f, -0.725436f, -0.725502f, -0.725568f, -0.725634f, -0.725700f, -0.725766f, + -0.725832f, -0.725898f, -0.725964f, -0.726030f, -0.726095f, -0.726161f, -0.726227f, -0.726293f, + -0.726359f, -0.726425f, -0.726491f, -0.726557f, -0.726623f, -0.726689f, -0.726754f, -0.726820f, + -0.726886f, -0.726952f, -0.727018f, -0.727084f, -0.727149f, -0.727215f, -0.727281f, -0.727347f, + -0.727413f, -0.727478f, -0.727544f, -0.727610f, -0.727676f, -0.727741f, -0.727807f, -0.727873f, + -0.727939f, -0.728004f, -0.728070f, -0.728136f, -0.728202f, -0.728267f, -0.728333f, -0.728399f, + -0.728464f, -0.728530f, -0.728596f, -0.728661f, -0.728727f, -0.728793f, -0.728858f, -0.728924f, + -0.728990f, -0.729055f, -0.729121f, -0.729186f, -0.729252f, -0.729318f, -0.729383f, -0.729449f, + -0.729514f, -0.729580f, -0.729646f, -0.729711f, -0.729777f, -0.729842f, -0.729908f, -0.729973f, + -0.730039f, -0.730104f, -0.730170f, -0.730235f, -0.730301f, -0.730366f, -0.730432f, -0.730497f, + -0.730563f, -0.730628f, -0.730694f, -0.730759f, -0.730825f, -0.730890f, -0.730955f, -0.731021f, + -0.731086f, -0.731152f, -0.731217f, -0.731282f, -0.731348f, -0.731413f, -0.731479f, -0.731544f, + -0.731609f, -0.731675f, -0.731740f, -0.731805f, -0.731871f, -0.731936f, -0.732001f, -0.732067f, + -0.732132f, -0.732197f, -0.732263f, -0.732328f, -0.732393f, -0.732458f, -0.732524f, -0.732589f, + -0.732654f, -0.732720f, -0.732785f, -0.732850f, -0.732915f, -0.732980f, -0.733046f, -0.733111f, + -0.733176f, -0.733241f, -0.733306f, -0.733372f, -0.733437f, -0.733502f, -0.733567f, -0.733632f, + -0.733697f, -0.733763f, -0.733828f, -0.733893f, -0.733958f, -0.734023f, -0.734088f, -0.734153f, + -0.734218f, -0.734283f, -0.734349f, -0.734414f, -0.734479f, -0.734544f, -0.734609f, -0.734674f, + -0.734739f, -0.734804f, -0.734869f, -0.734934f, -0.734999f, -0.735064f, -0.735129f, -0.735194f, + -0.735259f, -0.735324f, -0.735389f, -0.735454f, -0.735519f, -0.735584f, -0.735649f, -0.735714f, + -0.735779f, -0.735844f, -0.735908f, -0.735973f, -0.736038f, -0.736103f, -0.736168f, -0.736233f, + -0.736298f, -0.736363f, -0.736428f, -0.736492f, -0.736557f, -0.736622f, -0.736687f, -0.736752f, + -0.736817f, -0.736881f, -0.736946f, -0.737011f, -0.737076f, -0.737141f, -0.737205f, -0.737270f, + -0.737335f, -0.737400f, -0.737464f, -0.737529f, -0.737594f, -0.737659f, -0.737723f, -0.737788f, + -0.737853f, -0.737918f, -0.737982f, -0.738047f, -0.738112f, -0.738176f, -0.738241f, -0.738306f, + -0.738370f, -0.738435f, -0.738500f, -0.738564f, -0.738629f, -0.738693f, -0.738758f, -0.738823f, + -0.738887f, -0.738952f, -0.739017f, -0.739081f, -0.739146f, -0.739210f, -0.739275f, -0.739339f, + -0.739404f, -0.739468f, -0.739533f, -0.739598f, -0.739662f, -0.739727f, -0.739791f, -0.739856f, + -0.739920f, -0.739985f, -0.740049f, -0.740114f, -0.740178f, -0.740242f, -0.740307f, -0.740371f, + -0.740436f, -0.740500f, -0.740565f, -0.740629f, -0.740694f, -0.740758f, -0.740822f, -0.740887f, + -0.740951f, -0.741015f, -0.741080f, -0.741144f, -0.741209f, -0.741273f, -0.741337f, -0.741402f, + -0.741466f, -0.741530f, -0.741595f, -0.741659f, -0.741723f, -0.741788f, -0.741852f, -0.741916f, + -0.741980f, -0.742045f, -0.742109f, -0.742173f, -0.742237f, -0.742302f, -0.742366f, -0.742430f, + -0.742494f, -0.742559f, -0.742623f, -0.742687f, -0.742751f, -0.742815f, -0.742880f, -0.742944f, + -0.743008f, -0.743072f, -0.743136f, -0.743200f, -0.743265f, -0.743329f, -0.743393f, -0.743457f, + -0.743521f, -0.743585f, -0.743649f, -0.743713f, -0.743777f, -0.743842f, -0.743906f, -0.743970f, + -0.744034f, -0.744098f, -0.744162f, -0.744226f, -0.744290f, -0.744354f, -0.744418f, -0.744482f, + -0.744546f, -0.744610f, -0.744674f, -0.744738f, -0.744802f, -0.744866f, -0.744930f, -0.744994f, + -0.745058f, -0.745122f, -0.745186f, -0.745250f, -0.745314f, -0.745377f, -0.745441f, -0.745505f, + -0.745569f, -0.745633f, -0.745697f, -0.745761f, -0.745825f, -0.745889f, -0.745952f, -0.746016f, + -0.746080f, -0.746144f, -0.746208f, -0.746272f, -0.746335f, -0.746399f, -0.746463f, -0.746527f, + -0.746591f, -0.746654f, -0.746718f, -0.746782f, -0.746846f, -0.746909f, -0.746973f, -0.747037f, + -0.747101f, -0.747164f, -0.747228f, -0.747292f, -0.747355f, -0.747419f, -0.747483f, -0.747547f, + -0.747610f, -0.747674f, -0.747738f, -0.747801f, -0.747865f, -0.747929f, -0.747992f, -0.748056f, + -0.748119f, -0.748183f, -0.748247f, -0.748310f, -0.748374f, -0.748437f, -0.748501f, -0.748565f, + -0.748628f, -0.748692f, -0.748755f, -0.748819f, -0.748882f, -0.748946f, -0.749009f, -0.749073f, + -0.749136f, -0.749200f, -0.749263f, -0.749327f, -0.749390f, -0.749454f, -0.749517f, -0.749581f, + -0.749644f, -0.749708f, -0.749771f, -0.749835f, -0.749898f, -0.749961f, -0.750025f, -0.750088f, + -0.750152f, -0.750215f, -0.750278f, -0.750342f, -0.750405f, -0.750469f, -0.750532f, -0.750595f, + -0.750659f, -0.750722f, -0.750785f, -0.750849f, -0.750912f, -0.750975f, -0.751039f, -0.751102f, + -0.751165f, -0.751228f, -0.751292f, -0.751355f, -0.751418f, -0.751481f, -0.751545f, -0.751608f, + -0.751671f, -0.751734f, -0.751798f, -0.751861f, -0.751924f, -0.751987f, -0.752050f, -0.752114f, + -0.752177f, -0.752240f, -0.752303f, -0.752366f, -0.752429f, -0.752493f, -0.752556f, -0.752619f, + -0.752682f, -0.752745f, -0.752808f, -0.752871f, -0.752934f, -0.752998f, -0.753061f, -0.753124f, + -0.753187f, -0.753250f, -0.753313f, -0.753376f, -0.753439f, -0.753502f, -0.753565f, -0.753628f, + -0.753691f, -0.753754f, -0.753817f, -0.753880f, -0.753943f, -0.754006f, -0.754069f, -0.754132f, + -0.754195f, -0.754258f, -0.754321f, -0.754384f, -0.754447f, -0.754510f, -0.754573f, -0.754636f, + -0.754698f, -0.754761f, -0.754824f, -0.754887f, -0.754950f, -0.755013f, -0.755076f, -0.755139f, + -0.755201f, -0.755264f, -0.755327f, -0.755390f, -0.755453f, -0.755516f, -0.755578f, -0.755641f, + -0.755704f, -0.755767f, -0.755829f, -0.755892f, -0.755955f, -0.756018f, -0.756081f, -0.756143f, + -0.756206f, -0.756269f, -0.756331f, -0.756394f, -0.756457f, -0.756520f, -0.756582f, -0.756645f, + -0.756708f, -0.756770f, -0.756833f, -0.756896f, -0.756958f, -0.757021f, -0.757084f, -0.757146f, + -0.757209f, -0.757271f, -0.757334f, -0.757397f, -0.757459f, -0.757522f, -0.757584f, -0.757647f, + -0.757710f, -0.757772f, -0.757835f, -0.757897f, -0.757960f, -0.758022f, -0.758085f, -0.758147f, + -0.758210f, -0.758272f, -0.758335f, -0.758397f, -0.758460f, -0.758522f, -0.758585f, -0.758647f, + -0.758710f, -0.758772f, -0.758835f, -0.758897f, -0.758960f, -0.759022f, -0.759084f, -0.759147f, + -0.759209f, -0.759272f, -0.759334f, -0.759396f, -0.759459f, -0.759521f, -0.759583f, -0.759646f, + -0.759708f, -0.759771f, -0.759833f, -0.759895f, -0.759957f, -0.760020f, -0.760082f, -0.760144f, + -0.760207f, -0.760269f, -0.760331f, -0.760394f, -0.760456f, -0.760518f, -0.760580f, -0.760643f, + -0.760705f, -0.760767f, -0.760829f, -0.760891f, -0.760954f, -0.761016f, -0.761078f, -0.761140f, + -0.761202f, -0.761265f, -0.761327f, -0.761389f, -0.761451f, -0.761513f, -0.761575f, -0.761637f, + -0.761700f, -0.761762f, -0.761824f, -0.761886f, -0.761948f, -0.762010f, -0.762072f, -0.762134f, + -0.762196f, -0.762258f, -0.762320f, -0.762382f, -0.762444f, -0.762507f, -0.762569f, -0.762631f, + -0.762693f, -0.762755f, -0.762817f, -0.762879f, -0.762941f, -0.763003f, -0.763065f, -0.763126f, + -0.763188f, -0.763250f, -0.763312f, -0.763374f, -0.763436f, -0.763498f, -0.763560f, -0.763622f, + -0.763684f, -0.763746f, -0.763808f, -0.763869f, -0.763931f, -0.763993f, -0.764055f, -0.764117f, + -0.764179f, -0.764241f, -0.764302f, -0.764364f, -0.764426f, -0.764488f, -0.764550f, -0.764611f, + -0.764673f, -0.764735f, -0.764797f, -0.764859f, -0.764920f, -0.764982f, -0.765044f, -0.765106f, + -0.765167f, -0.765229f, -0.765291f, -0.765352f, -0.765414f, -0.765476f, -0.765538f, -0.765599f, + -0.765661f, -0.765723f, -0.765784f, -0.765846f, -0.765907f, -0.765969f, -0.766031f, -0.766092f, + -0.766154f, -0.766216f, -0.766277f, -0.766339f, -0.766400f, -0.766462f, -0.766524f, -0.766585f, + -0.766647f, -0.766708f, -0.766770f, -0.766831f, -0.766893f, -0.766954f, -0.767016f, -0.767077f, + -0.767139f, -0.767200f, -0.767262f, -0.767323f, -0.767385f, -0.767446f, -0.767508f, -0.767569f, + -0.767631f, -0.767692f, -0.767754f, -0.767815f, -0.767876f, -0.767938f, -0.767999f, -0.768061f, + -0.768122f, -0.768183f, -0.768245f, -0.768306f, -0.768368f, -0.768429f, -0.768490f, -0.768552f, + -0.768613f, -0.768674f, -0.768736f, -0.768797f, -0.768858f, -0.768919f, -0.768981f, -0.769042f, + -0.769103f, -0.769165f, -0.769226f, -0.769287f, -0.769348f, -0.769410f, -0.769471f, -0.769532f, + -0.769593f, -0.769655f, -0.769716f, -0.769777f, -0.769838f, -0.769899f, -0.769961f, -0.770022f, + -0.770083f, -0.770144f, -0.770205f, -0.770266f, -0.770327f, -0.770389f, -0.770450f, -0.770511f, + -0.770572f, -0.770633f, -0.770694f, -0.770755f, -0.770816f, -0.770877f, -0.770938f, -0.770999f, + -0.771061f, -0.771122f, -0.771183f, -0.771244f, -0.771305f, -0.771366f, -0.771427f, -0.771488f, + -0.771549f, -0.771610f, -0.771671f, -0.771732f, -0.771793f, -0.771854f, -0.771915f, -0.771975f, + -0.772036f, -0.772097f, -0.772158f, -0.772219f, -0.772280f, -0.772341f, -0.772402f, -0.772463f, + -0.772524f, -0.772584f, -0.772645f, -0.772706f, -0.772767f, -0.772828f, -0.772889f, -0.772950f, + -0.773010f, -0.773071f, -0.773132f, -0.773193f, -0.773254f, -0.773314f, -0.773375f, -0.773436f, + -0.773497f, -0.773558f, -0.773618f, -0.773679f, -0.773740f, -0.773801f, -0.773861f, -0.773922f, + -0.773983f, -0.774043f, -0.774104f, -0.774165f, -0.774225f, -0.774286f, -0.774347f, -0.774407f, + -0.774468f, -0.774529f, -0.774589f, -0.774650f, -0.774711f, -0.774771f, -0.774832f, -0.774893f, + -0.774953f, -0.775014f, -0.775074f, -0.775135f, -0.775195f, -0.775256f, -0.775317f, -0.775377f, + -0.775438f, -0.775498f, -0.775559f, -0.775619f, -0.775680f, -0.775740f, -0.775801f, -0.775861f, + -0.775922f, -0.775982f, -0.776043f, -0.776103f, -0.776164f, -0.776224f, -0.776284f, -0.776345f, + -0.776405f, -0.776466f, -0.776526f, -0.776587f, -0.776647f, -0.776707f, -0.776768f, -0.776828f, + -0.776888f, -0.776949f, -0.777009f, -0.777070f, -0.777130f, -0.777190f, -0.777251f, -0.777311f, + -0.777371f, -0.777431f, -0.777492f, -0.777552f, -0.777612f, -0.777673f, -0.777733f, -0.777793f, + -0.777853f, -0.777914f, -0.777974f, -0.778034f, -0.778094f, -0.778155f, -0.778215f, -0.778275f, + -0.778335f, -0.778395f, -0.778456f, -0.778516f, -0.778576f, -0.778636f, -0.778696f, -0.778756f, + -0.778817f, -0.778877f, -0.778937f, -0.778997f, -0.779057f, -0.779117f, -0.779177f, -0.779237f, + -0.779297f, -0.779357f, -0.779418f, -0.779478f, -0.779538f, -0.779598f, -0.779658f, -0.779718f, + -0.779778f, -0.779838f, -0.779898f, -0.779958f, -0.780018f, -0.780078f, -0.780138f, -0.780198f, + -0.780258f, -0.780318f, -0.780378f, -0.780438f, -0.780498f, -0.780557f, -0.780617f, -0.780677f, + -0.780737f, -0.780797f, -0.780857f, -0.780917f, -0.780977f, -0.781037f, -0.781097f, -0.781156f, + -0.781216f, -0.781276f, -0.781336f, -0.781396f, -0.781456f, -0.781515f, -0.781575f, -0.781635f, + -0.781695f, -0.781755f, -0.781814f, -0.781874f, -0.781934f, -0.781994f, -0.782053f, -0.782113f, + -0.782173f, -0.782233f, -0.782292f, -0.782352f, -0.782412f, -0.782472f, -0.782531f, -0.782591f, + -0.782651f, -0.782710f, -0.782770f, -0.782830f, -0.782889f, -0.782949f, -0.783009f, -0.783068f, + -0.783128f, -0.783187f, -0.783247f, -0.783307f, -0.783366f, -0.783426f, -0.783485f, -0.783545f, + -0.783605f, -0.783664f, -0.783724f, -0.783783f, -0.783843f, -0.783902f, -0.783962f, -0.784021f, + -0.784081f, -0.784140f, -0.784200f, -0.784259f, -0.784319f, -0.784378f, -0.784438f, -0.784497f, + -0.784557f, -0.784616f, -0.784675f, -0.784735f, -0.784794f, -0.784854f, -0.784913f, -0.784973f, + -0.785032f, -0.785091f, -0.785151f, -0.785210f, -0.785269f, -0.785329f, -0.785388f, -0.785447f, + -0.785507f, -0.785566f, -0.785625f, -0.785685f, -0.785744f, -0.785803f, -0.785863f, -0.785922f, + -0.785981f, -0.786041f, -0.786100f, -0.786159f, -0.786218f, -0.786278f, -0.786337f, -0.786396f, + -0.786455f, -0.786514f, -0.786574f, -0.786633f, -0.786692f, -0.786751f, -0.786810f, -0.786870f, + -0.786929f, -0.786988f, -0.787047f, -0.787106f, -0.787165f, -0.787224f, -0.787284f, -0.787343f, + -0.787402f, -0.787461f, -0.787520f, -0.787579f, -0.787638f, -0.787697f, -0.787756f, -0.787815f, + -0.787874f, -0.787933f, -0.787992f, -0.788051f, -0.788110f, -0.788169f, -0.788228f, -0.788287f, + -0.788346f, -0.788405f, -0.788464f, -0.788523f, -0.788582f, -0.788641f, -0.788700f, -0.788759f, + -0.788818f, -0.788877f, -0.788936f, -0.788995f, -0.789054f, -0.789113f, -0.789172f, -0.789230f, + -0.789289f, -0.789348f, -0.789407f, -0.789466f, -0.789525f, -0.789584f, -0.789642f, -0.789701f, + -0.789760f, -0.789819f, -0.789878f, -0.789936f, -0.789995f, -0.790054f, -0.790113f, -0.790171f, + -0.790230f, -0.790289f, -0.790348f, -0.790406f, -0.790465f, -0.790524f, -0.790583f, -0.790641f, + -0.790700f, -0.790759f, -0.790817f, -0.790876f, -0.790935f, -0.790993f, -0.791052f, -0.791111f, + -0.791169f, -0.791228f, -0.791287f, -0.791345f, -0.791404f, -0.791462f, -0.791521f, -0.791580f, + -0.791638f, -0.791697f, -0.791755f, -0.791814f, -0.791872f, -0.791931f, -0.791990f, -0.792048f, + -0.792107f, -0.792165f, -0.792224f, -0.792282f, -0.792341f, -0.792399f, -0.792458f, -0.792516f, + -0.792575f, -0.792633f, -0.792691f, -0.792750f, -0.792808f, -0.792867f, -0.792925f, -0.792984f, + -0.793042f, -0.793100f, -0.793159f, -0.793217f, -0.793276f, -0.793334f, -0.793392f, -0.793451f, + -0.793509f, -0.793567f, -0.793626f, -0.793684f, -0.793742f, -0.793801f, -0.793859f, -0.793917f, + -0.793975f, -0.794034f, -0.794092f, -0.794150f, -0.794209f, -0.794267f, -0.794325f, -0.794383f, + -0.794442f, -0.794500f, -0.794558f, -0.794616f, -0.794674f, -0.794733f, -0.794791f, -0.794849f, + -0.794907f, -0.794965f, -0.795023f, -0.795082f, -0.795140f, -0.795198f, -0.795256f, -0.795314f, + -0.795372f, -0.795430f, -0.795488f, -0.795547f, -0.795605f, -0.795663f, -0.795721f, -0.795779f, + -0.795837f, -0.795895f, -0.795953f, -0.796011f, -0.796069f, -0.796127f, -0.796185f, -0.796243f, + -0.796301f, -0.796359f, -0.796417f, -0.796475f, -0.796533f, -0.796591f, -0.796649f, -0.796707f, + -0.796765f, -0.796823f, -0.796881f, -0.796939f, -0.796996f, -0.797054f, -0.797112f, -0.797170f, + -0.797228f, -0.797286f, -0.797344f, -0.797402f, -0.797459f, -0.797517f, -0.797575f, -0.797633f, + -0.797691f, -0.797749f, -0.797806f, -0.797864f, -0.797922f, -0.797980f, -0.798038f, -0.798095f, + -0.798153f, -0.798211f, -0.798269f, -0.798326f, -0.798384f, -0.798442f, -0.798500f, -0.798557f, + -0.798615f, -0.798673f, -0.798730f, -0.798788f, -0.798846f, -0.798903f, -0.798961f, -0.799019f, + -0.799076f, -0.799134f, -0.799192f, -0.799249f, -0.799307f, -0.799365f, -0.799422f, -0.799480f, + -0.799537f, -0.799595f, -0.799652f, -0.799710f, -0.799768f, -0.799825f, -0.799883f, -0.799940f, + -0.799998f, -0.800055f, -0.800113f, -0.800170f, -0.800228f, -0.800285f, -0.800343f, -0.800400f, + -0.800458f, -0.800515f, -0.800573f, -0.800630f, -0.800687f, -0.800745f, -0.800802f, -0.800860f, + -0.800917f, -0.800975f, -0.801032f, -0.801089f, -0.801147f, -0.801204f, -0.801261f, -0.801319f, + -0.801376f, -0.801434f, -0.801491f, -0.801548f, -0.801606f, -0.801663f, -0.801720f, -0.801777f, + -0.801835f, -0.801892f, -0.801949f, -0.802007f, -0.802064f, -0.802121f, -0.802178f, -0.802236f, + -0.802293f, -0.802350f, -0.802407f, -0.802464f, -0.802522f, -0.802579f, -0.802636f, -0.802693f, + -0.802750f, -0.802808f, -0.802865f, -0.802922f, -0.802979f, -0.803036f, -0.803093f, -0.803150f, + -0.803208f, -0.803265f, -0.803322f, -0.803379f, -0.803436f, -0.803493f, -0.803550f, -0.803607f, + -0.803664f, -0.803721f, -0.803778f, -0.803835f, -0.803892f, -0.803949f, -0.804006f, -0.804063f, + -0.804120f, -0.804177f, -0.804234f, -0.804291f, -0.804348f, -0.804405f, -0.804462f, -0.804519f, + -0.804576f, -0.804633f, -0.804690f, -0.804747f, -0.804804f, -0.804861f, -0.804918f, -0.804974f, + -0.805031f, -0.805088f, -0.805145f, -0.805202f, -0.805259f, -0.805316f, -0.805372f, -0.805429f, + -0.805486f, -0.805543f, -0.805600f, -0.805656f, -0.805713f, -0.805770f, -0.805827f, -0.805884f, + -0.805940f, -0.805997f, -0.806054f, -0.806111f, -0.806167f, -0.806224f, -0.806281f, -0.806338f, + -0.806394f, -0.806451f, -0.806508f, -0.806564f, -0.806621f, -0.806678f, -0.806734f, -0.806791f, + -0.806848f, -0.806904f, -0.806961f, -0.807017f, -0.807074f, -0.807131f, -0.807187f, -0.807244f, + -0.807300f, -0.807357f, -0.807414f, -0.807470f, -0.807527f, -0.807583f, -0.807640f, -0.807696f, + -0.807753f, -0.807809f, -0.807866f, -0.807922f, -0.807979f, -0.808035f, -0.808092f, -0.808148f, + -0.808205f, -0.808261f, -0.808318f, -0.808374f, -0.808430f, -0.808487f, -0.808543f, -0.808600f, + -0.808656f, -0.808713f, -0.808769f, -0.808825f, -0.808882f, -0.808938f, -0.808994f, -0.809051f, + -0.809107f, -0.809164f, -0.809220f, -0.809276f, -0.809332f, -0.809389f, -0.809445f, -0.809501f, + -0.809558f, -0.809614f, -0.809670f, -0.809726f, -0.809783f, -0.809839f, -0.809895f, -0.809951f, + -0.810008f, -0.810064f, -0.810120f, -0.810176f, -0.810232f, -0.810289f, -0.810345f, -0.810401f, + -0.810457f, -0.810513f, -0.810570f, -0.810626f, -0.810682f, -0.810738f, -0.810794f, -0.810850f, + -0.810906f, -0.810962f, -0.811018f, -0.811075f, -0.811131f, -0.811187f, -0.811243f, -0.811299f, + -0.811355f, -0.811411f, -0.811467f, -0.811523f, -0.811579f, -0.811635f, -0.811691f, -0.811747f, + -0.811803f, -0.811859f, -0.811915f, -0.811971f, -0.812027f, -0.812083f, -0.812139f, -0.812195f, + -0.812251f, -0.812307f, -0.812362f, -0.812418f, -0.812474f, -0.812530f, -0.812586f, -0.812642f, + -0.812698f, -0.812754f, -0.812809f, -0.812865f, -0.812921f, -0.812977f, -0.813033f, -0.813089f, + -0.813144f, -0.813200f, -0.813256f, -0.813312f, -0.813368f, -0.813423f, -0.813479f, -0.813535f, + -0.813591f, -0.813646f, -0.813702f, -0.813758f, -0.813814f, -0.813869f, -0.813925f, -0.813981f, + -0.814036f, -0.814092f, -0.814148f, -0.814203f, -0.814259f, -0.814315f, -0.814370f, -0.814426f, + -0.814482f, -0.814537f, -0.814593f, -0.814648f, -0.814704f, -0.814760f, -0.814815f, -0.814871f, + -0.814926f, -0.814982f, -0.815037f, -0.815093f, -0.815149f, -0.815204f, -0.815260f, -0.815315f, + -0.815371f, -0.815426f, -0.815482f, -0.815537f, -0.815593f, -0.815648f, -0.815704f, -0.815759f, + -0.815814f, -0.815870f, -0.815925f, -0.815981f, -0.816036f, -0.816092f, -0.816147f, -0.816202f, + -0.816258f, -0.816313f, -0.816368f, -0.816424f, -0.816479f, -0.816535f, -0.816590f, -0.816645f, + -0.816701f, -0.816756f, -0.816811f, -0.816867f, -0.816922f, -0.816977f, -0.817032f, -0.817088f, + -0.817143f, -0.817198f, -0.817253f, -0.817309f, -0.817364f, -0.817419f, -0.817474f, -0.817530f, + -0.817585f, -0.817640f, -0.817695f, -0.817750f, -0.817806f, -0.817861f, -0.817916f, -0.817971f, + -0.818026f, -0.818081f, -0.818137f, -0.818192f, -0.818247f, -0.818302f, -0.818357f, -0.818412f, + -0.818467f, -0.818522f, -0.818577f, -0.818632f, -0.818687f, -0.818742f, -0.818798f, -0.818853f, + -0.818908f, -0.818963f, -0.819018f, -0.819073f, -0.819128f, -0.819183f, -0.819238f, -0.819293f, + -0.819348f, -0.819402f, -0.819457f, -0.819512f, -0.819567f, -0.819622f, -0.819677f, -0.819732f, + -0.819787f, -0.819842f, -0.819897f, -0.819952f, -0.820007f, -0.820061f, -0.820116f, -0.820171f, + -0.820226f, -0.820281f, -0.820336f, -0.820390f, -0.820445f, -0.820500f, -0.820555f, -0.820610f, + -0.820664f, -0.820719f, -0.820774f, -0.820829f, -0.820884f, -0.820938f, -0.820993f, -0.821048f, + -0.821102f, -0.821157f, -0.821212f, -0.821267f, -0.821321f, -0.821376f, -0.821431f, -0.821485f, + -0.821540f, -0.821595f, -0.821649f, -0.821704f, -0.821759f, -0.821813f, -0.821868f, -0.821922f, + -0.821977f, -0.822032f, -0.822086f, -0.822141f, -0.822195f, -0.822250f, -0.822305f, -0.822359f, + -0.822414f, -0.822468f, -0.822523f, -0.822577f, -0.822632f, -0.822686f, -0.822741f, -0.822795f, + -0.822850f, -0.822904f, -0.822959f, -0.823013f, -0.823068f, -0.823122f, -0.823177f, -0.823231f, + -0.823285f, -0.823340f, -0.823394f, -0.823449f, -0.823503f, -0.823557f, -0.823612f, -0.823666f, + -0.823721f, -0.823775f, -0.823829f, -0.823884f, -0.823938f, -0.823992f, -0.824047f, -0.824101f, + -0.824155f, -0.824209f, -0.824264f, -0.824318f, -0.824372f, -0.824427f, -0.824481f, -0.824535f, + -0.824589f, -0.824644f, -0.824698f, -0.824752f, -0.824806f, -0.824860f, -0.824915f, -0.824969f, + -0.825023f, -0.825077f, -0.825131f, -0.825185f, -0.825240f, -0.825294f, -0.825348f, -0.825402f, + -0.825456f, -0.825510f, -0.825564f, -0.825618f, -0.825673f, -0.825727f, -0.825781f, -0.825835f, + -0.825889f, -0.825943f, -0.825997f, -0.826051f, -0.826105f, -0.826159f, -0.826213f, -0.826267f, + -0.826321f, -0.826375f, -0.826429f, -0.826483f, -0.826537f, -0.826591f, -0.826645f, -0.826699f, + -0.826753f, -0.826807f, -0.826861f, -0.826915f, -0.826968f, -0.827022f, -0.827076f, -0.827130f, + -0.827184f, -0.827238f, -0.827292f, -0.827346f, -0.827399f, -0.827453f, -0.827507f, -0.827561f, + -0.827615f, -0.827669f, -0.827722f, -0.827776f, -0.827830f, -0.827884f, -0.827938f, -0.827991f, + -0.828045f, -0.828099f, -0.828153f, -0.828206f, -0.828260f, -0.828314f, -0.828367f, -0.828421f, + -0.828475f, -0.828529f, -0.828582f, -0.828636f, -0.828690f, -0.828743f, -0.828797f, -0.828851f, + -0.828904f, -0.828958f, -0.829011f, -0.829065f, -0.829119f, -0.829172f, -0.829226f, -0.829279f, + -0.829333f, -0.829386f, -0.829440f, -0.829494f, -0.829547f, -0.829601f, -0.829654f, -0.829708f, + -0.829761f, -0.829815f, -0.829868f, -0.829922f, -0.829975f, -0.830029f, -0.830082f, -0.830136f, + -0.830189f, -0.830243f, -0.830296f, -0.830349f, -0.830403f, -0.830456f, -0.830510f, -0.830563f, + -0.830616f, -0.830670f, -0.830723f, -0.830777f, -0.830830f, -0.830883f, -0.830937f, -0.830990f, + -0.831043f, -0.831097f, -0.831150f, -0.831203f, -0.831257f, -0.831310f, -0.831363f, -0.831416f, + -0.831470f, -0.831523f, -0.831576f, -0.831629f, -0.831683f, -0.831736f, -0.831789f, -0.831842f, + -0.831895f, -0.831949f, -0.832002f, -0.832055f, -0.832108f, -0.832161f, -0.832215f, -0.832268f, + -0.832321f, -0.832374f, -0.832427f, -0.832480f, -0.832533f, -0.832586f, -0.832640f, -0.832693f, + -0.832746f, -0.832799f, -0.832852f, -0.832905f, -0.832958f, -0.833011f, -0.833064f, -0.833117f, + -0.833170f, -0.833223f, -0.833276f, -0.833329f, -0.833382f, -0.833435f, -0.833488f, -0.833541f, + -0.833594f, -0.833647f, -0.833700f, -0.833753f, -0.833806f, -0.833859f, -0.833912f, -0.833965f, + -0.834018f, -0.834070f, -0.834123f, -0.834176f, -0.834229f, -0.834282f, -0.834335f, -0.834388f, + -0.834440f, -0.834493f, -0.834546f, -0.834599f, -0.834652f, -0.834705f, -0.834757f, -0.834810f, + -0.834863f, -0.834916f, -0.834968f, -0.835021f, -0.835074f, -0.835127f, -0.835179f, -0.835232f, + -0.835285f, -0.835338f, -0.835390f, -0.835443f, -0.835496f, -0.835548f, -0.835601f, -0.835654f, + -0.835706f, -0.835759f, -0.835812f, -0.835864f, -0.835917f, -0.835969f, -0.836022f, -0.836075f, + -0.836127f, -0.836180f, -0.836232f, -0.836285f, -0.836338f, -0.836390f, -0.836443f, -0.836495f, + -0.836548f, -0.836600f, -0.836653f, -0.836705f, -0.836758f, -0.836810f, -0.836863f, -0.836915f, + -0.836968f, -0.837020f, -0.837073f, -0.837125f, -0.837178f, -0.837230f, -0.837282f, -0.837335f, + -0.837387f, -0.837440f, -0.837492f, -0.837544f, -0.837597f, -0.837649f, -0.837701f, -0.837754f, + -0.837806f, -0.837859f, -0.837911f, -0.837963f, -0.838015f, -0.838068f, -0.838120f, -0.838172f, + -0.838225f, -0.838277f, -0.838329f, -0.838382f, -0.838434f, -0.838486f, -0.838538f, -0.838591f, + -0.838643f, -0.838695f, -0.838747f, -0.838799f, -0.838852f, -0.838904f, -0.838956f, -0.839008f, + -0.839060f, -0.839112f, -0.839165f, -0.839217f, -0.839269f, -0.839321f, -0.839373f, -0.839425f, + -0.839477f, -0.839529f, -0.839581f, -0.839634f, -0.839686f, -0.839738f, -0.839790f, -0.839842f, + -0.839894f, -0.839946f, -0.839998f, -0.840050f, -0.840102f, -0.840154f, -0.840206f, -0.840258f, + -0.840310f, -0.840362f, -0.840414f, -0.840466f, -0.840518f, -0.840570f, -0.840622f, -0.840673f, + -0.840725f, -0.840777f, -0.840829f, -0.840881f, -0.840933f, -0.840985f, -0.841037f, -0.841089f, + -0.841140f, -0.841192f, -0.841244f, -0.841296f, -0.841348f, -0.841400f, -0.841451f, -0.841503f, + -0.841555f, -0.841607f, -0.841659f, -0.841710f, -0.841762f, -0.841814f, -0.841866f, -0.841917f, + -0.841969f, -0.842021f, -0.842072f, -0.842124f, -0.842176f, -0.842228f, -0.842279f, -0.842331f, + -0.842383f, -0.842434f, -0.842486f, -0.842538f, -0.842589f, -0.842641f, -0.842692f, -0.842744f, + -0.842796f, -0.842847f, -0.842899f, -0.842950f, -0.843002f, -0.843054f, -0.843105f, -0.843157f, + -0.843208f, -0.843260f, -0.843311f, -0.843363f, -0.843414f, -0.843466f, -0.843517f, -0.843569f, + -0.843620f, -0.843672f, -0.843723f, -0.843775f, -0.843826f, -0.843878f, -0.843929f, -0.843980f, + -0.844032f, -0.844083f, -0.844135f, -0.844186f, -0.844238f, -0.844289f, -0.844340f, -0.844392f, + -0.844443f, -0.844494f, -0.844546f, -0.844597f, -0.844648f, -0.844700f, -0.844751f, -0.844802f, + -0.844854f, -0.844905f, -0.844956f, -0.845007f, -0.845059f, -0.845110f, -0.845161f, -0.845212f, + -0.845264f, -0.845315f, -0.845366f, -0.845417f, -0.845469f, -0.845520f, -0.845571f, -0.845622f, + -0.845673f, -0.845724f, -0.845776f, -0.845827f, -0.845878f, -0.845929f, -0.845980f, -0.846031f, + -0.846082f, -0.846133f, -0.846185f, -0.846236f, -0.846287f, -0.846338f, -0.846389f, -0.846440f, + -0.846491f, -0.846542f, -0.846593f, -0.846644f, -0.846695f, -0.846746f, -0.846797f, -0.846848f, + -0.846899f, -0.846950f, -0.847001f, -0.847052f, -0.847103f, -0.847154f, -0.847205f, -0.847256f, + -0.847307f, -0.847358f, -0.847408f, -0.847459f, -0.847510f, -0.847561f, -0.847612f, -0.847663f, + -0.847714f, -0.847765f, -0.847815f, -0.847866f, -0.847917f, -0.847968f, -0.848019f, -0.848070f, + -0.848120f, -0.848171f, -0.848222f, -0.848273f, -0.848323f, -0.848374f, -0.848425f, -0.848476f, + -0.848526f, -0.848577f, -0.848628f, -0.848679f, -0.848729f, -0.848780f, -0.848831f, -0.848881f, + -0.848932f, -0.848983f, -0.849033f, -0.849084f, -0.849135f, -0.849185f, -0.849236f, -0.849287f, + -0.849337f, -0.849388f, -0.849438f, -0.849489f, -0.849540f, -0.849590f, -0.849641f, -0.849691f, + -0.849742f, -0.849792f, -0.849843f, -0.849893f, -0.849944f, -0.849994f, -0.850045f, -0.850095f, + -0.850146f, -0.850196f, -0.850247f, -0.850297f, -0.850348f, -0.850398f, -0.850449f, -0.850499f, + -0.850549f, -0.850600f, -0.850650f, -0.850701f, -0.850751f, -0.850801f, -0.850852f, -0.850902f, + -0.850953f, -0.851003f, -0.851053f, -0.851104f, -0.851154f, -0.851204f, -0.851255f, -0.851305f, + -0.851355f, -0.851406f, -0.851456f, -0.851506f, -0.851556f, -0.851607f, -0.851657f, -0.851707f, + -0.851757f, -0.851808f, -0.851858f, -0.851908f, -0.851958f, -0.852008f, -0.852059f, -0.852109f, + -0.852159f, -0.852209f, -0.852259f, -0.852309f, -0.852360f, -0.852410f, -0.852460f, -0.852510f, + -0.852560f, -0.852610f, -0.852660f, -0.852710f, -0.852760f, -0.852810f, -0.852861f, -0.852911f, + -0.852961f, -0.853011f, -0.853061f, -0.853111f, -0.853161f, -0.853211f, -0.853261f, -0.853311f, + -0.853361f, -0.853411f, -0.853461f, -0.853511f, -0.853561f, -0.853611f, -0.853660f, -0.853710f, + -0.853760f, -0.853810f, -0.853860f, -0.853910f, -0.853960f, -0.854010f, -0.854060f, -0.854110f, + -0.854159f, -0.854209f, -0.854259f, -0.854309f, -0.854359f, -0.854409f, -0.854458f, -0.854508f, + -0.854558f, -0.854608f, -0.854658f, -0.854707f, -0.854757f, -0.854807f, -0.854857f, -0.854906f, + -0.854956f, -0.855006f, -0.855056f, -0.855105f, -0.855155f, -0.855205f, -0.855254f, -0.855304f, + -0.855354f, -0.855403f, -0.855453f, -0.855503f, -0.855552f, -0.855602f, -0.855651f, -0.855701f, + -0.855751f, -0.855800f, -0.855850f, -0.855900f, -0.855949f, -0.855999f, -0.856048f, -0.856098f, + -0.856147f, -0.856197f, -0.856246f, -0.856296f, -0.856345f, -0.856395f, -0.856444f, -0.856494f, + -0.856543f, -0.856593f, -0.856642f, -0.856692f, -0.856741f, -0.856791f, -0.856840f, -0.856890f, + -0.856939f, -0.856988f, -0.857038f, -0.857087f, -0.857137f, -0.857186f, -0.857235f, -0.857285f, + -0.857334f, -0.857383f, -0.857433f, -0.857482f, -0.857531f, -0.857581f, -0.857630f, -0.857679f, + -0.857729f, -0.857778f, -0.857827f, -0.857876f, -0.857926f, -0.857975f, -0.858024f, -0.858073f, + -0.858123f, -0.858172f, -0.858221f, -0.858270f, -0.858320f, -0.858369f, -0.858418f, -0.858467f, + -0.858516f, -0.858565f, -0.858615f, -0.858664f, -0.858713f, -0.858762f, -0.858811f, -0.858860f, + -0.858909f, -0.858958f, -0.859007f, -0.859057f, -0.859106f, -0.859155f, -0.859204f, -0.859253f, + -0.859302f, -0.859351f, -0.859400f, -0.859449f, -0.859498f, -0.859547f, -0.859596f, -0.859645f, + -0.859694f, -0.859743f, -0.859792f, -0.859841f, -0.859890f, -0.859939f, -0.859988f, -0.860036f, + -0.860085f, -0.860134f, -0.860183f, -0.860232f, -0.860281f, -0.860330f, -0.860379f, -0.860428f, + -0.860476f, -0.860525f, -0.860574f, -0.860623f, -0.860672f, -0.860721f, -0.860769f, -0.860818f, + -0.860867f, -0.860916f, -0.860964f, -0.861013f, -0.861062f, -0.861111f, -0.861160f, -0.861208f, + -0.861257f, -0.861306f, -0.861354f, -0.861403f, -0.861452f, -0.861500f, -0.861549f, -0.861598f, + -0.861646f, -0.861695f, -0.861744f, -0.861792f, -0.861841f, -0.861890f, -0.861938f, -0.861987f, + -0.862035f, -0.862084f, -0.862133f, -0.862181f, -0.862230f, -0.862278f, -0.862327f, -0.862375f, + -0.862424f, -0.862472f, -0.862521f, -0.862570f, -0.862618f, -0.862666f, -0.862715f, -0.862763f, + -0.862812f, -0.862860f, -0.862909f, -0.862957f, -0.863006f, -0.863054f, -0.863103f, -0.863151f, + -0.863199f, -0.863248f, -0.863296f, -0.863345f, -0.863393f, -0.863441f, -0.863490f, -0.863538f, + -0.863586f, -0.863635f, -0.863683f, -0.863731f, -0.863780f, -0.863828f, -0.863876f, -0.863925f, + -0.863973f, -0.864021f, -0.864069f, -0.864118f, -0.864166f, -0.864214f, -0.864262f, -0.864311f, + -0.864359f, -0.864407f, -0.864455f, -0.864503f, -0.864552f, -0.864600f, -0.864648f, -0.864696f, + -0.864744f, -0.864792f, -0.864841f, -0.864889f, -0.864937f, -0.864985f, -0.865033f, -0.865081f, + -0.865129f, -0.865177f, -0.865225f, -0.865273f, -0.865321f, -0.865369f, -0.865418f, -0.865466f, + -0.865514f, -0.865562f, -0.865610f, -0.865658f, -0.865706f, -0.865754f, -0.865802f, -0.865850f, + -0.865898f, -0.865946f, -0.865993f, -0.866041f, -0.866089f, -0.866137f, -0.866185f, -0.866233f, + -0.866281f, -0.866329f, -0.866377f, -0.866425f, -0.866472f, -0.866520f, -0.866568f, -0.866616f, + -0.866664f, -0.866712f, -0.866759f, -0.866807f, -0.866855f, -0.866903f, -0.866951f, -0.866998f, + -0.867046f, -0.867094f, -0.867142f, -0.867190f, -0.867237f, -0.867285f, -0.867333f, -0.867380f, + -0.867428f, -0.867476f, -0.867523f, -0.867571f, -0.867619f, -0.867667f, -0.867714f, -0.867762f, + -0.867809f, -0.867857f, -0.867905f, -0.867952f, -0.868000f, -0.868048f, -0.868095f, -0.868143f, + -0.868190f, -0.868238f, -0.868285f, -0.868333f, -0.868381f, -0.868428f, -0.868476f, -0.868523f, + -0.868571f, -0.868618f, -0.868666f, -0.868713f, -0.868761f, -0.868808f, -0.868856f, -0.868903f, + -0.868951f, -0.868998f, -0.869045f, -0.869093f, -0.869140f, -0.869188f, -0.869235f, -0.869282f, + -0.869330f, -0.869377f, -0.869425f, -0.869472f, -0.869519f, -0.869567f, -0.869614f, -0.869661f, + -0.869709f, -0.869756f, -0.869803f, -0.869851f, -0.869898f, -0.869945f, -0.869992f, -0.870040f, + -0.870087f, -0.870134f, -0.870182f, -0.870229f, -0.870276f, -0.870323f, -0.870370f, -0.870418f, + -0.870465f, -0.870512f, -0.870559f, -0.870606f, -0.870654f, -0.870701f, -0.870748f, -0.870795f, + -0.870842f, -0.870889f, -0.870936f, -0.870983f, -0.871031f, -0.871078f, -0.871125f, -0.871172f, + -0.871219f, -0.871266f, -0.871313f, -0.871360f, -0.871407f, -0.871454f, -0.871501f, -0.871548f, + -0.871595f, -0.871642f, -0.871689f, -0.871736f, -0.871783f, -0.871830f, -0.871877f, -0.871924f, + -0.871971f, -0.872018f, -0.872065f, -0.872112f, -0.872159f, -0.872205f, -0.872252f, -0.872299f, + -0.872346f, -0.872393f, -0.872440f, -0.872487f, -0.872534f, -0.872580f, -0.872627f, -0.872674f, + -0.872721f, -0.872768f, -0.872814f, -0.872861f, -0.872908f, -0.872955f, -0.873001f, -0.873048f, + -0.873095f, -0.873142f, -0.873188f, -0.873235f, -0.873282f, -0.873329f, -0.873375f, -0.873422f, + -0.873469f, -0.873515f, -0.873562f, -0.873609f, -0.873655f, -0.873702f, -0.873749f, -0.873795f, + -0.873842f, -0.873888f, -0.873935f, -0.873982f, -0.874028f, -0.874075f, -0.874121f, -0.874168f, + -0.874215f, -0.874261f, -0.874308f, -0.874354f, -0.874401f, -0.874447f, -0.874494f, -0.874540f, + -0.874587f, -0.874633f, -0.874680f, -0.874726f, -0.874773f, -0.874819f, -0.874865f, -0.874912f, + -0.874958f, -0.875005f, -0.875051f, -0.875098f, -0.875144f, -0.875190f, -0.875237f, -0.875283f, + -0.875329f, -0.875376f, -0.875422f, -0.875468f, -0.875515f, -0.875561f, -0.875607f, -0.875654f, + -0.875700f, -0.875746f, -0.875793f, -0.875839f, -0.875885f, -0.875931f, -0.875978f, -0.876024f, + -0.876070f, -0.876116f, -0.876163f, -0.876209f, -0.876255f, -0.876301f, -0.876347f, -0.876393f, + -0.876440f, -0.876486f, -0.876532f, -0.876578f, -0.876624f, -0.876670f, -0.876716f, -0.876763f, + -0.876809f, -0.876855f, -0.876901f, -0.876947f, -0.876993f, -0.877039f, -0.877085f, -0.877131f, + -0.877177f, -0.877223f, -0.877269f, -0.877315f, -0.877361f, -0.877407f, -0.877453f, -0.877499f, + -0.877545f, -0.877591f, -0.877637f, -0.877683f, -0.877729f, -0.877775f, -0.877821f, -0.877867f, + -0.877913f, -0.877959f, -0.878005f, -0.878051f, -0.878096f, -0.878142f, -0.878188f, -0.878234f, + -0.878280f, -0.878326f, -0.878371f, -0.878417f, -0.878463f, -0.878509f, -0.878555f, -0.878600f, + -0.878646f, -0.878692f, -0.878738f, -0.878784f, -0.878829f, -0.878875f, -0.878921f, -0.878967f, + -0.879012f, -0.879058f, -0.879104f, -0.879149f, -0.879195f, -0.879241f, -0.879286f, -0.879332f, + -0.879378f, -0.879423f, -0.879469f, -0.879515f, -0.879560f, -0.879606f, -0.879651f, -0.879697f, + -0.879743f, -0.879788f, -0.879834f, -0.879879f, -0.879925f, -0.879970f, -0.880016f, -0.880061f, + -0.880107f, -0.880153f, -0.880198f, -0.880244f, -0.880289f, -0.880334f, -0.880380f, -0.880425f, + -0.880471f, -0.880516f, -0.880562f, -0.880607f, -0.880653f, -0.880698f, -0.880743f, -0.880789f, + -0.880834f, -0.880880f, -0.880925f, -0.880970f, -0.881016f, -0.881061f, -0.881106f, -0.881152f, + -0.881197f, -0.881242f, -0.881288f, -0.881333f, -0.881378f, -0.881424f, -0.881469f, -0.881514f, + -0.881559f, -0.881605f, -0.881650f, -0.881695f, -0.881740f, -0.881786f, -0.881831f, -0.881876f, + -0.881921f, -0.881966f, -0.882012f, -0.882057f, -0.882102f, -0.882147f, -0.882192f, -0.882237f, + -0.882283f, -0.882328f, -0.882373f, -0.882418f, -0.882463f, -0.882508f, -0.882553f, -0.882598f, + -0.882643f, -0.882688f, -0.882733f, -0.882779f, -0.882824f, -0.882869f, -0.882914f, -0.882959f, + -0.883004f, -0.883049f, -0.883094f, -0.883139f, -0.883184f, -0.883228f, -0.883273f, -0.883318f, + -0.883363f, -0.883408f, -0.883453f, -0.883498f, -0.883543f, -0.883588f, -0.883633f, -0.883678f, + -0.883723f, -0.883767f, -0.883812f, -0.883857f, -0.883902f, -0.883947f, -0.883992f, -0.884036f, + -0.884081f, -0.884126f, -0.884171f, -0.884216f, -0.884260f, -0.884305f, -0.884350f, -0.884395f, + -0.884439f, -0.884484f, -0.884529f, -0.884574f, -0.884618f, -0.884663f, -0.884708f, -0.884752f, + -0.884797f, -0.884842f, -0.884886f, -0.884931f, -0.884976f, -0.885020f, -0.885065f, -0.885110f, + -0.885154f, -0.885199f, -0.885243f, -0.885288f, -0.885333f, -0.885377f, -0.885422f, -0.885466f, + -0.885511f, -0.885555f, -0.885600f, -0.885644f, -0.885689f, -0.885733f, -0.885778f, -0.885822f, + -0.885867f, -0.885911f, -0.885956f, -0.886000f, -0.886045f, -0.886089f, -0.886134f, -0.886178f, + -0.886223f, -0.886267f, -0.886311f, -0.886356f, -0.886400f, -0.886445f, -0.886489f, -0.886533f, + -0.886578f, -0.886622f, -0.886666f, -0.886711f, -0.886755f, -0.886799f, -0.886844f, -0.886888f, + -0.886932f, -0.886976f, -0.887021f, -0.887065f, -0.887109f, -0.887153f, -0.887198f, -0.887242f, + -0.887286f, -0.887330f, -0.887375f, -0.887419f, -0.887463f, -0.887507f, -0.887551f, -0.887595f, + -0.887640f, -0.887684f, -0.887728f, -0.887772f, -0.887816f, -0.887860f, -0.887904f, -0.887949f, + -0.887993f, -0.888037f, -0.888081f, -0.888125f, -0.888169f, -0.888213f, -0.888257f, -0.888301f, + -0.888345f, -0.888389f, -0.888433f, -0.888477f, -0.888521f, -0.888565f, -0.888609f, -0.888653f, + -0.888697f, -0.888741f, -0.888785f, -0.888829f, -0.888873f, -0.888917f, -0.888961f, -0.889004f, + -0.889048f, -0.889092f, -0.889136f, -0.889180f, -0.889224f, -0.889268f, -0.889312f, -0.889355f, + -0.889399f, -0.889443f, -0.889487f, -0.889531f, -0.889574f, -0.889618f, -0.889662f, -0.889706f, + -0.889750f, -0.889793f, -0.889837f, -0.889881f, -0.889925f, -0.889968f, -0.890012f, -0.890056f, + -0.890099f, -0.890143f, -0.890187f, -0.890230f, -0.890274f, -0.890318f, -0.890361f, -0.890405f, + -0.890449f, -0.890492f, -0.890536f, -0.890580f, -0.890623f, -0.890667f, -0.890710f, -0.890754f, + -0.890797f, -0.890841f, -0.890885f, -0.890928f, -0.890972f, -0.891015f, -0.891059f, -0.891102f, + -0.891146f, -0.891189f, -0.891233f, -0.891276f, -0.891320f, -0.891363f, -0.891407f, -0.891450f, + -0.891493f, -0.891537f, -0.891580f, -0.891624f, -0.891667f, -0.891711f, -0.891754f, -0.891797f, + -0.891841f, -0.891884f, -0.891927f, -0.891971f, -0.892014f, -0.892057f, -0.892101f, -0.892144f, + -0.892187f, -0.892231f, -0.892274f, -0.892317f, -0.892361f, -0.892404f, -0.892447f, -0.892490f, + -0.892534f, -0.892577f, -0.892620f, -0.892663f, -0.892706f, -0.892750f, -0.892793f, -0.892836f, + -0.892879f, -0.892922f, -0.892965f, -0.893009f, -0.893052f, -0.893095f, -0.893138f, -0.893181f, + -0.893224f, -0.893267f, -0.893310f, -0.893354f, -0.893397f, -0.893440f, -0.893483f, -0.893526f, + -0.893569f, -0.893612f, -0.893655f, -0.893698f, -0.893741f, -0.893784f, -0.893827f, -0.893870f, + -0.893913f, -0.893956f, -0.893999f, -0.894042f, -0.894085f, -0.894128f, -0.894171f, -0.894214f, + -0.894256f, -0.894299f, -0.894342f, -0.894385f, -0.894428f, -0.894471f, -0.894514f, -0.894557f, + -0.894599f, -0.894642f, -0.894685f, -0.894728f, -0.894771f, -0.894814f, -0.894856f, -0.894899f, + -0.894942f, -0.894985f, -0.895028f, -0.895070f, -0.895113f, -0.895156f, -0.895198f, -0.895241f, + -0.895284f, -0.895327f, -0.895369f, -0.895412f, -0.895455f, -0.895497f, -0.895540f, -0.895583f, + -0.895625f, -0.895668f, -0.895711f, -0.895753f, -0.895796f, -0.895838f, -0.895881f, -0.895924f, + -0.895966f, -0.896009f, -0.896051f, -0.896094f, -0.896137f, -0.896179f, -0.896222f, -0.896264f, + -0.896307f, -0.896349f, -0.896392f, -0.896434f, -0.896477f, -0.896519f, -0.896562f, -0.896604f, + -0.896646f, -0.896689f, -0.896731f, -0.896774f, -0.896816f, -0.896859f, -0.896901f, -0.896943f, + -0.896986f, -0.897028f, -0.897071f, -0.897113f, -0.897155f, -0.897198f, -0.897240f, -0.897282f, + -0.897325f, -0.897367f, -0.897409f, -0.897452f, -0.897494f, -0.897536f, -0.897578f, -0.897621f, + -0.897663f, -0.897705f, -0.897747f, -0.897790f, -0.897832f, -0.897874f, -0.897916f, -0.897958f, + -0.898001f, -0.898043f, -0.898085f, -0.898127f, -0.898169f, -0.898211f, -0.898254f, -0.898296f, + -0.898338f, -0.898380f, -0.898422f, -0.898464f, -0.898506f, -0.898548f, -0.898590f, -0.898632f, + -0.898674f, -0.898717f, -0.898759f, -0.898801f, -0.898843f, -0.898885f, -0.898927f, -0.898969f, + -0.899011f, -0.899053f, -0.899095f, -0.899137f, -0.899179f, -0.899220f, -0.899262f, -0.899304f, + -0.899346f, -0.899388f, -0.899430f, -0.899472f, -0.899514f, -0.899556f, -0.899598f, -0.899639f, + -0.899681f, -0.899723f, -0.899765f, -0.899807f, -0.899849f, -0.899890f, -0.899932f, -0.899974f, + -0.900016f, -0.900058f, -0.900099f, -0.900141f, -0.900183f, -0.900225f, -0.900266f, -0.900308f, + -0.900350f, -0.900392f, -0.900433f, -0.900475f, -0.900517f, -0.900558f, -0.900600f, -0.900642f, + -0.900683f, -0.900725f, -0.900767f, -0.900808f, -0.900850f, -0.900892f, -0.900933f, -0.900975f, + -0.901016f, -0.901058f, -0.901100f, -0.901141f, -0.901183f, -0.901224f, -0.901266f, -0.901307f, + -0.901349f, -0.901390f, -0.901432f, -0.901473f, -0.901515f, -0.901556f, -0.901598f, -0.901639f, + -0.901681f, -0.901722f, -0.901764f, -0.901805f, -0.901847f, -0.901888f, -0.901929f, -0.901971f, + -0.902012f, -0.902054f, -0.902095f, -0.902136f, -0.902178f, -0.902219f, -0.902260f, -0.902302f, + -0.902343f, -0.902384f, -0.902426f, -0.902467f, -0.902508f, -0.902550f, -0.902591f, -0.902632f, + -0.902673f, -0.902715f, -0.902756f, -0.902797f, -0.902838f, -0.902879f, -0.902921f, -0.902962f, + -0.903003f, -0.903044f, -0.903085f, -0.903127f, -0.903168f, -0.903209f, -0.903250f, -0.903291f, + -0.903332f, -0.903373f, -0.903415f, -0.903456f, -0.903497f, -0.903538f, -0.903579f, -0.903620f, + -0.903661f, -0.903702f, -0.903743f, -0.903784f, -0.903825f, -0.903866f, -0.903907f, -0.903948f, + -0.903989f, -0.904030f, -0.904071f, -0.904112f, -0.904153f, -0.904194f, -0.904235f, -0.904276f, + -0.904317f, -0.904358f, -0.904399f, -0.904440f, -0.904481f, -0.904521f, -0.904562f, -0.904603f, + -0.904644f, -0.904685f, -0.904726f, -0.904767f, -0.904807f, -0.904848f, -0.904889f, -0.904930f, + -0.904971f, -0.905011f, -0.905052f, -0.905093f, -0.905134f, -0.905175f, -0.905215f, -0.905256f, + -0.905297f, -0.905337f, -0.905378f, -0.905419f, -0.905460f, -0.905500f, -0.905541f, -0.905582f, + -0.905622f, -0.905663f, -0.905704f, -0.905744f, -0.905785f, -0.905825f, -0.905866f, -0.905907f, + -0.905947f, -0.905988f, -0.906028f, -0.906069f, -0.906110f, -0.906150f, -0.906191f, -0.906231f, + -0.906272f, -0.906312f, -0.906353f, -0.906393f, -0.906434f, -0.906474f, -0.906515f, -0.906555f, + -0.906596f, -0.906636f, -0.906677f, -0.906717f, -0.906757f, -0.906798f, -0.906838f, -0.906879f, + -0.906919f, -0.906959f, -0.907000f, -0.907040f, -0.907081f, -0.907121f, -0.907161f, -0.907202f, + -0.907242f, -0.907282f, -0.907323f, -0.907363f, -0.907403f, -0.907444f, -0.907484f, -0.907524f, + -0.907564f, -0.907605f, -0.907645f, -0.907685f, -0.907725f, -0.907766f, -0.907806f, -0.907846f, + -0.907886f, -0.907926f, -0.907966f, -0.908007f, -0.908047f, -0.908087f, -0.908127f, -0.908167f, + -0.908207f, -0.908248f, -0.908288f, -0.908328f, -0.908368f, -0.908408f, -0.908448f, -0.908488f, + -0.908528f, -0.908568f, -0.908608f, -0.908648f, -0.908688f, -0.908728f, -0.908768f, -0.908808f, + -0.908848f, -0.908888f, -0.908928f, -0.908968f, -0.909008f, -0.909048f, -0.909088f, -0.909128f, + -0.909168f, -0.909208f, -0.909248f, -0.909288f, -0.909328f, -0.909368f, -0.909407f, -0.909447f, + -0.909487f, -0.909527f, -0.909567f, -0.909607f, -0.909646f, -0.909686f, -0.909726f, -0.909766f, + -0.909806f, -0.909845f, -0.909885f, -0.909925f, -0.909965f, -0.910005f, -0.910044f, -0.910084f, + -0.910124f, -0.910163f, -0.910203f, -0.910243f, -0.910283f, -0.910322f, -0.910362f, -0.910402f, + -0.910441f, -0.910481f, -0.910521f, -0.910560f, -0.910600f, -0.910639f, -0.910679f, -0.910719f, + -0.910758f, -0.910798f, -0.910837f, -0.910877f, -0.910917f, -0.910956f, -0.910996f, -0.911035f, + -0.911075f, -0.911114f, -0.911154f, -0.911193f, -0.911233f, -0.911272f, -0.911312f, -0.911351f, + -0.911391f, -0.911430f, -0.911470f, -0.911509f, -0.911548f, -0.911588f, -0.911627f, -0.911667f, + -0.911706f, -0.911745f, -0.911785f, -0.911824f, -0.911864f, -0.911903f, -0.911942f, -0.911982f, + -0.912021f, -0.912060f, -0.912099f, -0.912139f, -0.912178f, -0.912217f, -0.912257f, -0.912296f, + -0.912335f, -0.912374f, -0.912414f, -0.912453f, -0.912492f, -0.912531f, -0.912571f, -0.912610f, + -0.912649f, -0.912688f, -0.912727f, -0.912766f, -0.912806f, -0.912845f, -0.912884f, -0.912923f, + -0.912962f, -0.913001f, -0.913040f, -0.913080f, -0.913119f, -0.913158f, -0.913197f, -0.913236f, + -0.913275f, -0.913314f, -0.913353f, -0.913392f, -0.913431f, -0.913470f, -0.913509f, -0.913548f, + -0.913587f, -0.913626f, -0.913665f, -0.913704f, -0.913743f, -0.913782f, -0.913821f, -0.913860f, + -0.913899f, -0.913938f, -0.913976f, -0.914015f, -0.914054f, -0.914093f, -0.914132f, -0.914171f, + -0.914210f, -0.914249f, -0.914287f, -0.914326f, -0.914365f, -0.914404f, -0.914443f, -0.914482f, + -0.914520f, -0.914559f, -0.914598f, -0.914637f, -0.914675f, -0.914714f, -0.914753f, -0.914792f, + -0.914830f, -0.914869f, -0.914908f, -0.914946f, -0.914985f, -0.915024f, -0.915062f, -0.915101f, + -0.915140f, -0.915178f, -0.915217f, -0.915256f, -0.915294f, -0.915333f, -0.915372f, -0.915410f, + -0.915449f, -0.915487f, -0.915526f, -0.915564f, -0.915603f, -0.915642f, -0.915680f, -0.915719f, + -0.915757f, -0.915796f, -0.915834f, -0.915873f, -0.915911f, -0.915950f, -0.915988f, -0.916027f, + -0.916065f, -0.916103f, -0.916142f, -0.916180f, -0.916219f, -0.916257f, -0.916296f, -0.916334f, + -0.916372f, -0.916411f, -0.916449f, -0.916487f, -0.916526f, -0.916564f, -0.916602f, -0.916641f, + -0.916679f, -0.916717f, -0.916756f, -0.916794f, -0.916832f, -0.916871f, -0.916909f, -0.916947f, + -0.916985f, -0.917024f, -0.917062f, -0.917100f, -0.917138f, -0.917176f, -0.917215f, -0.917253f, + -0.917291f, -0.917329f, -0.917367f, -0.917405f, -0.917444f, -0.917482f, -0.917520f, -0.917558f, + -0.917596f, -0.917634f, -0.917672f, -0.917710f, -0.917749f, -0.917787f, -0.917825f, -0.917863f, + -0.917901f, -0.917939f, -0.917977f, -0.918015f, -0.918053f, -0.918091f, -0.918129f, -0.918167f, + -0.918205f, -0.918243f, -0.918281f, -0.918319f, -0.918357f, -0.918395f, -0.918433f, -0.918471f, + -0.918508f, -0.918546f, -0.918584f, -0.918622f, -0.918660f, -0.918698f, -0.918736f, -0.918774f, + -0.918811f, -0.918849f, -0.918887f, -0.918925f, -0.918963f, -0.919001f, -0.919038f, -0.919076f, + -0.919114f, -0.919152f, -0.919189f, -0.919227f, -0.919265f, -0.919303f, -0.919340f, -0.919378f, + -0.919416f, -0.919453f, -0.919491f, -0.919529f, -0.919567f, -0.919604f, -0.919642f, -0.919680f, + -0.919717f, -0.919755f, -0.919792f, -0.919830f, -0.919868f, -0.919905f, -0.919943f, -0.919980f, + -0.920018f, -0.920056f, -0.920093f, -0.920131f, -0.920168f, -0.920206f, -0.920243f, -0.920281f, + -0.920318f, -0.920356f, -0.920393f, -0.920431f, -0.920468f, -0.920506f, -0.920543f, -0.920581f, + -0.920618f, -0.920655f, -0.920693f, -0.920730f, -0.920768f, -0.920805f, -0.920842f, -0.920880f, + -0.920917f, -0.920955f, -0.920992f, -0.921029f, -0.921067f, -0.921104f, -0.921141f, -0.921179f, + -0.921216f, -0.921253f, -0.921291f, -0.921328f, -0.921365f, -0.921402f, -0.921440f, -0.921477f, + -0.921514f, -0.921551f, -0.921588f, -0.921626f, -0.921663f, -0.921700f, -0.921737f, -0.921774f, + -0.921812f, -0.921849f, -0.921886f, -0.921923f, -0.921960f, -0.921997f, -0.922034f, -0.922072f, + -0.922109f, -0.922146f, -0.922183f, -0.922220f, -0.922257f, -0.922294f, -0.922331f, -0.922368f, + -0.922405f, -0.922442f, -0.922479f, -0.922516f, -0.922553f, -0.922590f, -0.922627f, -0.922664f, + -0.922701f, -0.922738f, -0.922775f, -0.922812f, -0.922849f, -0.922886f, -0.922923f, -0.922960f, + -0.922997f, -0.923033f, -0.923070f, -0.923107f, -0.923144f, -0.923181f, -0.923218f, -0.923255f, + -0.923291f, -0.923328f, -0.923365f, -0.923402f, -0.923439f, -0.923475f, -0.923512f, -0.923549f, + -0.923586f, -0.923622f, -0.923659f, -0.923696f, -0.923733f, -0.923769f, -0.923806f, -0.923843f, + -0.923880f, -0.923916f, -0.923953f, -0.923990f, -0.924026f, -0.924063f, -0.924100f, -0.924136f, + -0.924173f, -0.924209f, -0.924246f, -0.924283f, -0.924319f, -0.924356f, -0.924392f, -0.924429f, + -0.924465f, -0.924502f, -0.924539f, -0.924575f, -0.924612f, -0.924648f, -0.924685f, -0.924721f, + -0.924758f, -0.924794f, -0.924831f, -0.924867f, -0.924904f, -0.924940f, -0.924976f, -0.925013f, + -0.925049f, -0.925086f, -0.925122f, -0.925158f, -0.925195f, -0.925231f, -0.925268f, -0.925304f, + -0.925340f, -0.925377f, -0.925413f, -0.925449f, -0.925486f, -0.925522f, -0.925558f, -0.925595f, + -0.925631f, -0.925667f, -0.925703f, -0.925740f, -0.925776f, -0.925812f, -0.925848f, -0.925885f, + -0.925921f, -0.925957f, -0.925993f, -0.926029f, -0.926066f, -0.926102f, -0.926138f, -0.926174f, + -0.926210f, -0.926246f, -0.926283f, -0.926319f, -0.926355f, -0.926391f, -0.926427f, -0.926463f, + -0.926499f, -0.926535f, -0.926571f, -0.926607f, -0.926643f, -0.926679f, -0.926715f, -0.926751f, + -0.926787f, -0.926823f, -0.926859f, -0.926895f, -0.926931f, -0.926967f, -0.927003f, -0.927039f, + -0.927075f, -0.927111f, -0.927147f, -0.927183f, -0.927219f, -0.927255f, -0.927291f, -0.927327f, + -0.927363f, -0.927398f, -0.927434f, -0.927470f, -0.927506f, -0.927542f, -0.927578f, -0.927613f, + -0.927649f, -0.927685f, -0.927721f, -0.927757f, -0.927792f, -0.927828f, -0.927864f, -0.927900f, + -0.927935f, -0.927971f, -0.928007f, -0.928043f, -0.928078f, -0.928114f, -0.928150f, -0.928185f, + -0.928221f, -0.928257f, -0.928292f, -0.928328f, -0.928364f, -0.928399f, -0.928435f, -0.928470f, + -0.928506f, -0.928542f, -0.928577f, -0.928613f, -0.928648f, -0.928684f, -0.928720f, -0.928755f, + -0.928791f, -0.928826f, -0.928862f, -0.928897f, -0.928933f, -0.928968f, -0.929004f, -0.929039f, + -0.929075f, -0.929110f, -0.929146f, -0.929181f, -0.929216f, -0.929252f, -0.929287f, -0.929323f, + -0.929358f, -0.929393f, -0.929429f, -0.929464f, -0.929500f, -0.929535f, -0.929570f, -0.929606f, + -0.929641f, -0.929676f, -0.929712f, -0.929747f, -0.929782f, -0.929817f, -0.929853f, -0.929888f, + -0.929923f, -0.929958f, -0.929994f, -0.930029f, -0.930064f, -0.930099f, -0.930135f, -0.930170f, + -0.930205f, -0.930240f, -0.930275f, -0.930311f, -0.930346f, -0.930381f, -0.930416f, -0.930451f, + -0.930486f, -0.930521f, -0.930556f, -0.930592f, -0.930627f, -0.930662f, -0.930697f, -0.930732f, + -0.930767f, -0.930802f, -0.930837f, -0.930872f, -0.930907f, -0.930942f, -0.930977f, -0.931012f, + -0.931047f, -0.931082f, -0.931117f, -0.931152f, -0.931187f, -0.931222f, -0.931257f, -0.931292f, + -0.931327f, -0.931362f, -0.931397f, -0.931431f, -0.931466f, -0.931501f, -0.931536f, -0.931571f, + -0.931606f, -0.931641f, -0.931675f, -0.931710f, -0.931745f, -0.931780f, -0.931815f, -0.931849f, + -0.931884f, -0.931919f, -0.931954f, -0.931989f, -0.932023f, -0.932058f, -0.932093f, -0.932128f, + -0.932162f, -0.932197f, -0.932232f, -0.932266f, -0.932301f, -0.932336f, -0.932370f, -0.932405f, + -0.932440f, -0.932474f, -0.932509f, -0.932544f, -0.932578f, -0.932613f, -0.932647f, -0.932682f, + -0.932716f, -0.932751f, -0.932786f, -0.932820f, -0.932855f, -0.932889f, -0.932924f, -0.932958f, + -0.932993f, -0.933027f, -0.933062f, -0.933096f, -0.933131f, -0.933165f, -0.933200f, -0.933234f, + -0.933269f, -0.933303f, -0.933337f, -0.933372f, -0.933406f, -0.933441f, -0.933475f, -0.933509f, + -0.933544f, -0.933578f, -0.933612f, -0.933647f, -0.933681f, -0.933716f, -0.933750f, -0.933784f, + -0.933818f, -0.933853f, -0.933887f, -0.933921f, -0.933956f, -0.933990f, -0.934024f, -0.934058f, + -0.934093f, -0.934127f, -0.934161f, -0.934195f, -0.934229f, -0.934264f, -0.934298f, -0.934332f, + -0.934366f, -0.934400f, -0.934434f, -0.934469f, -0.934503f, -0.934537f, -0.934571f, -0.934605f, + -0.934639f, -0.934673f, -0.934707f, -0.934741f, -0.934775f, -0.934810f, -0.934844f, -0.934878f, + -0.934912f, -0.934946f, -0.934980f, -0.935014f, -0.935048f, -0.935082f, -0.935116f, -0.935150f, + -0.935184f, -0.935217f, -0.935251f, -0.935285f, -0.935319f, -0.935353f, -0.935387f, -0.935421f, + -0.935455f, -0.935489f, -0.935523f, -0.935556f, -0.935590f, -0.935624f, -0.935658f, -0.935692f, + -0.935726f, -0.935759f, -0.935793f, -0.935827f, -0.935861f, -0.935895f, -0.935928f, -0.935962f, + -0.935996f, -0.936030f, -0.936063f, -0.936097f, -0.936131f, -0.936165f, -0.936198f, -0.936232f, + -0.936266f, -0.936299f, -0.936333f, -0.936367f, -0.936400f, -0.936434f, -0.936468f, -0.936501f, + -0.936535f, -0.936568f, -0.936602f, -0.936636f, -0.936669f, -0.936703f, -0.936736f, -0.936770f, + -0.936803f, -0.936837f, -0.936871f, -0.936904f, -0.936938f, -0.936971f, -0.937005f, -0.937038f, + -0.937072f, -0.937105f, -0.937138f, -0.937172f, -0.937205f, -0.937239f, -0.937272f, -0.937306f, + -0.937339f, -0.937372f, -0.937406f, -0.937439f, -0.937473f, -0.937506f, -0.937539f, -0.937573f, + -0.937606f, -0.937639f, -0.937673f, -0.937706f, -0.937739f, -0.937773f, -0.937806f, -0.937839f, + -0.937872f, -0.937906f, -0.937939f, -0.937972f, -0.938005f, -0.938039f, -0.938072f, -0.938105f, + -0.938138f, -0.938171f, -0.938205f, -0.938238f, -0.938271f, -0.938304f, -0.938337f, -0.938370f, + -0.938404f, -0.938437f, -0.938470f, -0.938503f, -0.938536f, -0.938569f, -0.938602f, -0.938635f, + -0.938668f, -0.938701f, -0.938734f, -0.938767f, -0.938800f, -0.938833f, -0.938866f, -0.938900f, + -0.938932f, -0.938965f, -0.938998f, -0.939031f, -0.939064f, -0.939097f, -0.939130f, -0.939163f, + -0.939196f, -0.939229f, -0.939262f, -0.939295f, -0.939328f, -0.939361f, -0.939394f, -0.939426f, + -0.939459f, -0.939492f, -0.939525f, -0.939558f, -0.939591f, -0.939623f, -0.939656f, -0.939689f, + -0.939722f, -0.939755f, -0.939787f, -0.939820f, -0.939853f, -0.939886f, -0.939918f, -0.939951f, + -0.939984f, -0.940016f, -0.940049f, -0.940082f, -0.940115f, -0.940147f, -0.940180f, -0.940213f, + -0.940245f, -0.940278f, -0.940310f, -0.940343f, -0.940376f, -0.940408f, -0.940441f, -0.940473f, + -0.940506f, -0.940539f, -0.940571f, -0.940604f, -0.940636f, -0.940669f, -0.940701f, -0.940734f, + -0.940766f, -0.940799f, -0.940831f, -0.940864f, -0.940896f, -0.940929f, -0.940961f, -0.940994f, + -0.941026f, -0.941059f, -0.941091f, -0.941123f, -0.941156f, -0.941188f, -0.941221f, -0.941253f, + -0.941285f, -0.941318f, -0.941350f, -0.941382f, -0.941415f, -0.941447f, -0.941479f, -0.941512f, + -0.941544f, -0.941576f, -0.941609f, -0.941641f, -0.941673f, -0.941705f, -0.941738f, -0.941770f, + -0.941802f, -0.941834f, -0.941867f, -0.941899f, -0.941931f, -0.941963f, -0.941995f, -0.942028f, + -0.942060f, -0.942092f, -0.942124f, -0.942156f, -0.942188f, -0.942220f, -0.942253f, -0.942285f, + -0.942317f, -0.942349f, -0.942381f, -0.942413f, -0.942445f, -0.942477f, -0.942509f, -0.942541f, + -0.942573f, -0.942605f, -0.942637f, -0.942669f, -0.942701f, -0.942733f, -0.942765f, -0.942797f, + -0.942829f, -0.942861f, -0.942893f, -0.942925f, -0.942957f, -0.942989f, -0.943021f, -0.943053f, + -0.943084f, -0.943116f, -0.943148f, -0.943180f, -0.943212f, -0.943244f, -0.943276f, -0.943307f, + -0.943339f, -0.943371f, -0.943403f, -0.943435f, -0.943466f, -0.943498f, -0.943530f, -0.943562f, + -0.943593f, -0.943625f, -0.943657f, -0.943689f, -0.943720f, -0.943752f, -0.943784f, -0.943815f, + -0.943847f, -0.943879f, -0.943910f, -0.943942f, -0.943974f, -0.944005f, -0.944037f, -0.944069f, + -0.944100f, -0.944132f, -0.944163f, -0.944195f, -0.944227f, -0.944258f, -0.944290f, -0.944321f, + -0.944353f, -0.944384f, -0.944416f, -0.944447f, -0.944479f, -0.944510f, -0.944542f, -0.944573f, + -0.944605f, -0.944636f, -0.944668f, -0.944699f, -0.944731f, -0.944762f, -0.944793f, -0.944825f, + -0.944856f, -0.944888f, -0.944919f, -0.944950f, -0.944982f, -0.945013f, -0.945045f, -0.945076f, + -0.945107f, -0.945139f, -0.945170f, -0.945201f, -0.945232f, -0.945264f, -0.945295f, -0.945326f, + -0.945358f, -0.945389f, -0.945420f, -0.945451f, -0.945482f, -0.945514f, -0.945545f, -0.945576f, + -0.945607f, -0.945639f, -0.945670f, -0.945701f, -0.945732f, -0.945763f, -0.945794f, -0.945825f, + -0.945857f, -0.945888f, -0.945919f, -0.945950f, -0.945981f, -0.946012f, -0.946043f, -0.946074f, + -0.946105f, -0.946136f, -0.946167f, -0.946198f, -0.946229f, -0.946260f, -0.946291f, -0.946322f, + -0.946353f, -0.946384f, -0.946415f, -0.946446f, -0.946477f, -0.946508f, -0.946539f, -0.946570f, + -0.946601f, -0.946632f, -0.946663f, -0.946694f, -0.946724f, -0.946755f, -0.946786f, -0.946817f, + -0.946848f, -0.946879f, -0.946910f, -0.946940f, -0.946971f, -0.947002f, -0.947033f, -0.947064f, + -0.947094f, -0.947125f, -0.947156f, -0.947187f, -0.947217f, -0.947248f, -0.947279f, -0.947310f, + -0.947340f, -0.947371f, -0.947402f, -0.947432f, -0.947463f, -0.947494f, -0.947524f, -0.947555f, + -0.947586f, -0.947616f, -0.947647f, -0.947677f, -0.947708f, -0.947739f, -0.947769f, -0.947800f, + -0.947830f, -0.947861f, -0.947891f, -0.947922f, -0.947953f, -0.947983f, -0.948014f, -0.948044f, + -0.948075f, -0.948105f, -0.948136f, -0.948166f, -0.948196f, -0.948227f, -0.948257f, -0.948288f, + -0.948318f, -0.948349f, -0.948379f, -0.948409f, -0.948440f, -0.948470f, -0.948501f, -0.948531f, + -0.948561f, -0.948592f, -0.948622f, -0.948652f, -0.948683f, -0.948713f, -0.948743f, -0.948774f, + -0.948804f, -0.948834f, -0.948864f, -0.948895f, -0.948925f, -0.948955f, -0.948985f, -0.949016f, + -0.949046f, -0.949076f, -0.949106f, -0.949136f, -0.949167f, -0.949197f, -0.949227f, -0.949257f, + -0.949287f, -0.949317f, -0.949348f, -0.949378f, -0.949408f, -0.949438f, -0.949468f, -0.949498f, + -0.949528f, -0.949558f, -0.949588f, -0.949618f, -0.949648f, -0.949678f, -0.949708f, -0.949739f, + -0.949768f, -0.949798f, -0.949829f, -0.949858f, -0.949888f, -0.949918f, -0.949948f, -0.949978f, + -0.950008f, -0.950038f, -0.950068f, -0.950098f, -0.950128f, -0.950158f, -0.950188f, -0.950218f, + -0.950247f, -0.950277f, -0.950307f, -0.950337f, -0.950367f, -0.950397f, -0.950426f, -0.950456f, + -0.950486f, -0.950516f, -0.950546f, -0.950575f, -0.950605f, -0.950635f, -0.950665f, -0.950694f, + -0.950724f, -0.950754f, -0.950784f, -0.950813f, -0.950843f, -0.950873f, -0.950902f, -0.950932f, + -0.950962f, -0.950991f, -0.951021f, -0.951051f, -0.951080f, -0.951110f, -0.951139f, -0.951169f, + -0.951199f, -0.951228f, -0.951258f, -0.951287f, -0.951317f, -0.951346f, -0.951376f, -0.951406f, + -0.951435f, -0.951465f, -0.951494f, -0.951524f, -0.951553f, -0.951582f, -0.951612f, -0.951641f, + -0.951671f, -0.951700f, -0.951730f, -0.951759f, -0.951789f, -0.951818f, -0.951847f, -0.951877f, + -0.951906f, -0.951936f, -0.951965f, -0.951994f, -0.952024f, -0.952053f, -0.952082f, -0.952112f, + -0.952141f, -0.952170f, -0.952199f, -0.952229f, -0.952258f, -0.952287f, -0.952317f, -0.952346f, + -0.952375f, -0.952404f, -0.952433f, -0.952463f, -0.952492f, -0.952521f, -0.952550f, -0.952579f, + -0.952609f, -0.952638f, -0.952667f, -0.952696f, -0.952725f, -0.952754f, -0.952783f, -0.952813f, + -0.952842f, -0.952871f, -0.952900f, -0.952929f, -0.952958f, -0.952987f, -0.953016f, -0.953045f, + -0.953074f, -0.953103f, -0.953132f, -0.953161f, -0.953190f, -0.953219f, -0.953248f, -0.953277f, + -0.953306f, -0.953335f, -0.953364f, -0.953393f, -0.953422f, -0.953451f, -0.953480f, -0.953508f, + -0.953537f, -0.953566f, -0.953595f, -0.953624f, -0.953653f, -0.953682f, -0.953711f, -0.953739f, + -0.953768f, -0.953797f, -0.953826f, -0.953855f, -0.953883f, -0.953912f, -0.953941f, -0.953970f, + -0.953998f, -0.954027f, -0.954056f, -0.954085f, -0.954113f, -0.954142f, -0.954171f, -0.954199f, + -0.954228f, -0.954257f, -0.954285f, -0.954314f, -0.954343f, -0.954371f, -0.954400f, -0.954429f, + -0.954457f, -0.954486f, -0.954514f, -0.954543f, -0.954572f, -0.954600f, -0.954629f, -0.954657f, + -0.954686f, -0.954714f, -0.954743f, -0.954771f, -0.954800f, -0.954828f, -0.954857f, -0.954885f, + -0.954914f, -0.954942f, -0.954971f, -0.954999f, -0.955028f, -0.955056f, -0.955084f, -0.955113f, + -0.955141f, -0.955170f, -0.955198f, -0.955226f, -0.955255f, -0.955283f, -0.955311f, -0.955340f, + -0.955368f, -0.955396f, -0.955425f, -0.955453f, -0.955481f, -0.955510f, -0.955538f, -0.955566f, + -0.955594f, -0.955623f, -0.955651f, -0.955679f, -0.955707f, -0.955736f, -0.955764f, -0.955792f, + -0.955820f, -0.955848f, -0.955876f, -0.955905f, -0.955933f, -0.955961f, -0.955989f, -0.956017f, + -0.956045f, -0.956073f, -0.956101f, -0.956130f, -0.956158f, -0.956186f, -0.956214f, -0.956242f, + -0.956270f, -0.956298f, -0.956326f, -0.956354f, -0.956382f, -0.956410f, -0.956438f, -0.956466f, + -0.956494f, -0.956522f, -0.956550f, -0.956578f, -0.956606f, -0.956634f, -0.956662f, -0.956689f, + -0.956717f, -0.956745f, -0.956773f, -0.956801f, -0.956829f, -0.956857f, -0.956885f, -0.956913f, + -0.956940f, -0.956968f, -0.956996f, -0.957024f, -0.957052f, -0.957079f, -0.957107f, -0.957135f, + -0.957163f, -0.957190f, -0.957218f, -0.957246f, -0.957274f, -0.957301f, -0.957329f, -0.957357f, + -0.957385f, -0.957412f, -0.957440f, -0.957468f, -0.957495f, -0.957523f, -0.957550f, -0.957578f, + -0.957606f, -0.957633f, -0.957661f, -0.957689f, -0.957716f, -0.957744f, -0.957771f, -0.957799f, + -0.957826f, -0.957854f, -0.957882f, -0.957909f, -0.957937f, -0.957964f, -0.957992f, -0.958019f, + -0.958046f, -0.958074f, -0.958101f, -0.958129f, -0.958156f, -0.958184f, -0.958211f, -0.958239f, + -0.958266f, -0.958293f, -0.958321f, -0.958348f, -0.958376f, -0.958403f, -0.958430f, -0.958458f, + -0.958485f, -0.958512f, -0.958540f, -0.958567f, -0.958594f, -0.958622f, -0.958649f, -0.958676f, + -0.958703f, -0.958731f, -0.958758f, -0.958785f, -0.958812f, -0.958840f, -0.958867f, -0.958894f, + -0.958921f, -0.958949f, -0.958976f, -0.959003f, -0.959030f, -0.959057f, -0.959084f, -0.959112f, + -0.959139f, -0.959166f, -0.959193f, -0.959220f, -0.959247f, -0.959274f, -0.959301f, -0.959328f, + -0.959355f, -0.959382f, -0.959409f, -0.959436f, -0.959463f, -0.959491f, -0.959518f, -0.959545f, + -0.959572f, -0.959598f, -0.959625f, -0.959652f, -0.959679f, -0.959706f, -0.959733f, -0.959760f, + -0.959787f, -0.959814f, -0.959841f, -0.959868f, -0.959895f, -0.959922f, -0.959948f, -0.959975f, + -0.960002f, -0.960029f, -0.960056f, -0.960083f, -0.960109f, -0.960136f, -0.960163f, -0.960190f, + -0.960217f, -0.960243f, -0.960270f, -0.960297f, -0.960324f, -0.960350f, -0.960377f, -0.960404f, + -0.960431f, -0.960457f, -0.960484f, -0.960511f, -0.960537f, -0.960564f, -0.960591f, -0.960617f, + -0.960644f, -0.960670f, -0.960697f, -0.960724f, -0.960750f, -0.960777f, -0.960804f, -0.960830f, + -0.960857f, -0.960883f, -0.960910f, -0.960936f, -0.960963f, -0.960989f, -0.961016f, -0.961042f, + -0.961069f, -0.961095f, -0.961122f, -0.961148f, -0.961175f, -0.961201f, -0.961228f, -0.961254f, + -0.961280f, -0.961307f, -0.961333f, -0.961360f, -0.961386f, -0.961412f, -0.961439f, -0.961465f, + -0.961492f, -0.961518f, -0.961544f, -0.961571f, -0.961597f, -0.961623f, -0.961649f, -0.961676f, + -0.961702f, -0.961728f, -0.961755f, -0.961781f, -0.961807f, -0.961833f, -0.961860f, -0.961886f, + -0.961912f, -0.961938f, -0.961964f, -0.961991f, -0.962017f, -0.962043f, -0.962069f, -0.962095f, + -0.962121f, -0.962148f, -0.962174f, -0.962200f, -0.962226f, -0.962252f, -0.962278f, -0.962304f, + -0.962330f, -0.962356f, -0.962382f, -0.962408f, -0.962434f, -0.962460f, -0.962486f, -0.962512f, + -0.962538f, -0.962564f, -0.962590f, -0.962616f, -0.962642f, -0.962668f, -0.962694f, -0.962720f, + -0.962746f, -0.962772f, -0.962798f, -0.962824f, -0.962850f, -0.962876f, -0.962902f, -0.962927f, + -0.962953f, -0.962979f, -0.963005f, -0.963031f, -0.963057f, -0.963082f, -0.963108f, -0.963134f, + -0.963160f, -0.963186f, -0.963211f, -0.963237f, -0.963263f, -0.963289f, -0.963314f, -0.963340f, + -0.963366f, -0.963391f, -0.963417f, -0.963443f, -0.963469f, -0.963494f, -0.963520f, -0.963546f, + -0.963571f, -0.963597f, -0.963623f, -0.963648f, -0.963674f, -0.963699f, -0.963725f, -0.963750f, + -0.963776f, -0.963802f, -0.963827f, -0.963853f, -0.963878f, -0.963904f, -0.963929f, -0.963955f, + -0.963980f, -0.964006f, -0.964031f, -0.964057f, -0.964082f, -0.964108f, -0.964133f, -0.964159f, + -0.964184f, -0.964209f, -0.964235f, -0.964260f, -0.964286f, -0.964311f, -0.964336f, -0.964362f, + -0.964387f, -0.964413f, -0.964438f, -0.964463f, -0.964489f, -0.964514f, -0.964539f, -0.964565f, + -0.964590f, -0.964615f, -0.964640f, -0.964666f, -0.964691f, -0.964716f, -0.964741f, -0.964767f, + -0.964792f, -0.964817f, -0.964842f, -0.964867f, -0.964893f, -0.964918f, -0.964943f, -0.964968f, + -0.964993f, -0.965018f, -0.965044f, -0.965069f, -0.965094f, -0.965119f, -0.965144f, -0.965169f, + -0.965194f, -0.965219f, -0.965244f, -0.965269f, -0.965294f, -0.965319f, -0.965344f, -0.965369f, + -0.965394f, -0.965419f, -0.965444f, -0.965469f, -0.965494f, -0.965519f, -0.965544f, -0.965569f, + -0.965594f, -0.965619f, -0.965644f, -0.965669f, -0.965694f, -0.965719f, -0.965744f, -0.965769f, + -0.965793f, -0.965818f, -0.965843f, -0.965868f, -0.965893f, -0.965918f, -0.965942f, -0.965967f, + -0.965992f, -0.966017f, -0.966042f, -0.966066f, -0.966091f, -0.966116f, -0.966141f, -0.966165f, + -0.966190f, -0.966215f, -0.966239f, -0.966264f, -0.966289f, -0.966313f, -0.966338f, -0.966363f, + -0.966387f, -0.966412f, -0.966437f, -0.966461f, -0.966486f, -0.966511f, -0.966535f, -0.966560f, + -0.966584f, -0.966609f, -0.966633f, -0.966658f, -0.966683f, -0.966707f, -0.966732f, -0.966756f, + -0.966781f, -0.966805f, -0.966830f, -0.966854f, -0.966879f, -0.966903f, -0.966928f, -0.966952f, + -0.966976f, -0.967001f, -0.967025f, -0.967050f, -0.967074f, -0.967099f, -0.967123f, -0.967147f, + -0.967172f, -0.967196f, -0.967220f, -0.967245f, -0.967269f, -0.967293f, -0.967318f, -0.967342f, + -0.967366f, -0.967391f, -0.967415f, -0.967439f, -0.967463f, -0.967488f, -0.967512f, -0.967536f, + -0.967560f, -0.967585f, -0.967609f, -0.967633f, -0.967657f, -0.967681f, -0.967706f, -0.967730f, + -0.967754f, -0.967778f, -0.967802f, -0.967826f, -0.967850f, -0.967874f, -0.967899f, -0.967923f, + -0.967947f, -0.967971f, -0.967995f, -0.968019f, -0.968043f, -0.968067f, -0.968091f, -0.968115f, + -0.968139f, -0.968163f, -0.968187f, -0.968211f, -0.968235f, -0.968259f, -0.968283f, -0.968307f, + -0.968331f, -0.968355f, -0.968379f, -0.968403f, -0.968427f, -0.968450f, -0.968474f, -0.968498f, + -0.968522f, -0.968546f, -0.968570f, -0.968594f, -0.968617f, -0.968641f, -0.968665f, -0.968689f, + -0.968713f, -0.968737f, -0.968760f, -0.968784f, -0.968808f, -0.968832f, -0.968855f, -0.968879f, + -0.968903f, -0.968927f, -0.968950f, -0.968974f, -0.968998f, -0.969021f, -0.969045f, -0.969069f, + -0.969092f, -0.969116f, -0.969140f, -0.969163f, -0.969187f, -0.969210f, -0.969234f, -0.969258f, + -0.969281f, -0.969305f, -0.969328f, -0.969352f, -0.969375f, -0.969399f, -0.969423f, -0.969446f, + -0.969470f, -0.969493f, -0.969517f, -0.969540f, -0.969564f, -0.969587f, -0.969611f, -0.969634f, + -0.969657f, -0.969681f, -0.969704f, -0.969728f, -0.969751f, -0.969774f, -0.969798f, -0.969821f, + -0.969845f, -0.969868f, -0.969891f, -0.969915f, -0.969938f, -0.969961f, -0.969985f, -0.970008f, + -0.970031f, -0.970055f, -0.970078f, -0.970101f, -0.970124f, -0.970148f, -0.970171f, -0.970194f, + -0.970217f, -0.970241f, -0.970264f, -0.970287f, -0.970310f, -0.970333f, -0.970357f, -0.970380f, + -0.970403f, -0.970426f, -0.970449f, -0.970472f, -0.970495f, -0.970518f, -0.970542f, -0.970565f, + -0.970588f, -0.970611f, -0.970634f, -0.970657f, -0.970680f, -0.970703f, -0.970726f, -0.970749f, + -0.970772f, -0.970795f, -0.970818f, -0.970841f, -0.970864f, -0.970887f, -0.970910f, -0.970933f, + -0.970956f, -0.970979f, -0.971002f, -0.971025f, -0.971048f, -0.971071f, -0.971093f, -0.971116f, + -0.971139f, -0.971162f, -0.971185f, -0.971208f, -0.971231f, -0.971253f, -0.971276f, -0.971299f, + -0.971322f, -0.971345f, -0.971367f, -0.971390f, -0.971413f, -0.971436f, -0.971458f, -0.971481f, + -0.971504f, -0.971527f, -0.971549f, -0.971572f, -0.971595f, -0.971617f, -0.971640f, -0.971663f, + -0.971685f, -0.971708f, -0.971731f, -0.971753f, -0.971776f, -0.971799f, -0.971821f, -0.971844f, + -0.971866f, -0.971889f, -0.971911f, -0.971934f, -0.971957f, -0.971979f, -0.972002f, -0.972024f, + -0.972047f, -0.972069f, -0.972092f, -0.972114f, -0.972137f, -0.972159f, -0.972182f, -0.972204f, + -0.972227f, -0.972249f, -0.972271f, -0.972294f, -0.972316f, -0.972339f, -0.972361f, -0.972383f, + -0.972406f, -0.972428f, -0.972450f, -0.972473f, -0.972495f, -0.972517f, -0.972540f, -0.972562f, + -0.972584f, -0.972607f, -0.972629f, -0.972651f, -0.972673f, -0.972696f, -0.972718f, -0.972740f, + -0.972762f, -0.972785f, -0.972807f, -0.972829f, -0.972851f, -0.972873f, -0.972896f, -0.972918f, + -0.972940f, -0.972962f, -0.972984f, -0.973006f, -0.973028f, -0.973051f, -0.973073f, -0.973095f, + -0.973117f, -0.973139f, -0.973161f, -0.973183f, -0.973205f, -0.973227f, -0.973249f, -0.973271f, + -0.973293f, -0.973315f, -0.973337f, -0.973359f, -0.973381f, -0.973403f, -0.973425f, -0.973447f, + -0.973469f, -0.973491f, -0.973513f, -0.973535f, -0.973557f, -0.973579f, -0.973601f, -0.973622f, + -0.973644f, -0.973666f, -0.973688f, -0.973710f, -0.973732f, -0.973753f, -0.973775f, -0.973797f, + -0.973819f, -0.973841f, -0.973862f, -0.973884f, -0.973906f, -0.973928f, -0.973949f, -0.973971f, + -0.973993f, -0.974015f, -0.974036f, -0.974058f, -0.974080f, -0.974101f, -0.974123f, -0.974145f, + -0.974166f, -0.974188f, -0.974210f, -0.974231f, -0.974253f, -0.974275f, -0.974296f, -0.974318f, + -0.974339f, -0.974361f, -0.974383f, -0.974404f, -0.974426f, -0.974447f, -0.974469f, -0.974490f, + -0.974512f, -0.974533f, -0.974555f, -0.974576f, -0.974598f, -0.974619f, -0.974641f, -0.974662f, + -0.974684f, -0.974705f, -0.974726f, -0.974748f, -0.974769f, -0.974791f, -0.974812f, -0.974833f, + -0.974855f, -0.974876f, -0.974897f, -0.974919f, -0.974940f, -0.974961f, -0.974983f, -0.975004f, + -0.975025f, -0.975047f, -0.975068f, -0.975089f, -0.975110f, -0.975132f, -0.975153f, -0.975174f, + -0.975195f, -0.975217f, -0.975238f, -0.975259f, -0.975280f, -0.975301f, -0.975323f, -0.975344f, + -0.975365f, -0.975386f, -0.975407f, -0.975428f, -0.975449f, -0.975471f, -0.975492f, -0.975513f, + -0.975534f, -0.975555f, -0.975576f, -0.975597f, -0.975618f, -0.975639f, -0.975660f, -0.975681f, + -0.975702f, -0.975723f, -0.975744f, -0.975765f, -0.975786f, -0.975807f, -0.975828f, -0.975849f, + -0.975870f, -0.975891f, -0.975912f, -0.975933f, -0.975954f, -0.975974f, -0.975995f, -0.976016f, + -0.976037f, -0.976058f, -0.976079f, -0.976100f, -0.976120f, -0.976141f, -0.976162f, -0.976183f, + -0.976204f, -0.976224f, -0.976245f, -0.976266f, -0.976287f, -0.976308f, -0.976328f, -0.976349f, + -0.976370f, -0.976390f, -0.976411f, -0.976432f, -0.976453f, -0.976473f, -0.976494f, -0.976515f, + -0.976535f, -0.976556f, -0.976576f, -0.976597f, -0.976618f, -0.976638f, -0.976659f, -0.976680f, + -0.976700f, -0.976721f, -0.976741f, -0.976762f, -0.976782f, -0.976803f, -0.976823f, -0.976844f, + -0.976864f, -0.976885f, -0.976905f, -0.976926f, -0.976946f, -0.976967f, -0.976987f, -0.977008f, + -0.977028f, -0.977049f, -0.977069f, -0.977089f, -0.977110f, -0.977130f, -0.977151f, -0.977171f, + -0.977191f, -0.977212f, -0.977232f, -0.977252f, -0.977273f, -0.977293f, -0.977313f, -0.977334f, + -0.977354f, -0.977374f, -0.977394f, -0.977415f, -0.977435f, -0.977455f, -0.977475f, -0.977496f, + -0.977516f, -0.977536f, -0.977556f, -0.977577f, -0.977597f, -0.977617f, -0.977637f, -0.977657f, + -0.977677f, -0.977697f, -0.977718f, -0.977738f, -0.977758f, -0.977778f, -0.977798f, -0.977818f, + -0.977838f, -0.977858f, -0.977878f, -0.977898f, -0.977918f, -0.977938f, -0.977959f, -0.977979f, + -0.977998f, -0.978019f, -0.978038f, -0.978058f, -0.978078f, -0.978098f, -0.978118f, -0.978138f, + -0.978158f, -0.978178f, -0.978198f, -0.978218f, -0.978238f, -0.978258f, -0.978278f, -0.978298f, + -0.978317f, -0.978337f, -0.978357f, -0.978377f, -0.978397f, -0.978417f, -0.978436f, -0.978456f, + -0.978476f, -0.978496f, -0.978516f, -0.978535f, -0.978555f, -0.978575f, -0.978594f, -0.978614f, + -0.978634f, -0.978654f, -0.978673f, -0.978693f, -0.978713f, -0.978732f, -0.978752f, -0.978772f, + -0.978791f, -0.978811f, -0.978831f, -0.978850f, -0.978870f, -0.978889f, -0.978909f, -0.978929f, + -0.978948f, -0.978968f, -0.978987f, -0.979007f, -0.979026f, -0.979046f, -0.979065f, -0.979085f, + -0.979104f, -0.979124f, -0.979143f, -0.979163f, -0.979182f, -0.979202f, -0.979221f, -0.979241f, + -0.979260f, -0.979280f, -0.979299f, -0.979318f, -0.979338f, -0.979357f, -0.979376f, -0.979396f, + -0.979415f, -0.979435f, -0.979454f, -0.979473f, -0.979493f, -0.979512f, -0.979531f, -0.979550f, + -0.979570f, -0.979589f, -0.979608f, -0.979628f, -0.979647f, -0.979666f, -0.979685f, -0.979704f, + -0.979724f, -0.979743f, -0.979762f, -0.979781f, -0.979800f, -0.979820f, -0.979839f, -0.979858f, + -0.979877f, -0.979896f, -0.979915f, -0.979934f, -0.979954f, -0.979973f, -0.979992f, -0.980011f, + -0.980030f, -0.980049f, -0.980068f, -0.980087f, -0.980106f, -0.980125f, -0.980144f, -0.980163f, + -0.980182f, -0.980201f, -0.980220f, -0.980239f, -0.980258f, -0.980277f, -0.980296f, -0.980315f, + -0.980334f, -0.980353f, -0.980372f, -0.980390f, -0.980409f, -0.980428f, -0.980447f, -0.980466f, + -0.980485f, -0.980504f, -0.980523f, -0.980541f, -0.980560f, -0.980579f, -0.980598f, -0.980617f, + -0.980635f, -0.980654f, -0.980673f, -0.980692f, -0.980710f, -0.980729f, -0.980748f, -0.980767f, + -0.980785f, -0.980804f, -0.980823f, -0.980841f, -0.980860f, -0.980879f, -0.980897f, -0.980916f, + -0.980935f, -0.980953f, -0.980972f, -0.980990f, -0.981009f, -0.981028f, -0.981046f, -0.981065f, + -0.981083f, -0.981102f, -0.981120f, -0.981139f, -0.981158f, -0.981176f, -0.981195f, -0.981213f, + -0.981232f, -0.981250f, -0.981269f, -0.981287f, -0.981305f, -0.981324f, -0.981342f, -0.981361f, + -0.981379f, -0.981398f, -0.981416f, -0.981434f, -0.981453f, -0.981471f, -0.981490f, -0.981508f, + -0.981526f, -0.981545f, -0.981563f, -0.981581f, -0.981600f, -0.981618f, -0.981636f, -0.981654f, + -0.981673f, -0.981691f, -0.981709f, -0.981727f, -0.981746f, -0.981764f, -0.981782f, -0.981800f, + -0.981819f, -0.981837f, -0.981855f, -0.981873f, -0.981891f, -0.981909f, -0.981928f, -0.981946f, + -0.981964f, -0.981982f, -0.982000f, -0.982018f, -0.982036f, -0.982054f, -0.982072f, -0.982091f, + -0.982109f, -0.982127f, -0.982145f, -0.982163f, -0.982181f, -0.982199f, -0.982217f, -0.982235f, + -0.982253f, -0.982271f, -0.982289f, -0.982307f, -0.982325f, -0.982343f, -0.982360f, -0.982378f, + -0.982396f, -0.982414f, -0.982432f, -0.982450f, -0.982468f, -0.982486f, -0.982504f, -0.982521f, + -0.982539f, -0.982557f, -0.982575f, -0.982593f, -0.982611f, -0.982628f, -0.982646f, -0.982664f, + -0.982682f, -0.982699f, -0.982717f, -0.982735f, -0.982753f, -0.982770f, -0.982788f, -0.982806f, + -0.982824f, -0.982841f, -0.982859f, -0.982877f, -0.982894f, -0.982912f, -0.982930f, -0.982947f, + -0.982965f, -0.982982f, -0.983000f, -0.983018f, -0.983035f, -0.983053f, -0.983070f, -0.983088f, + -0.983105f, -0.983123f, -0.983141f, -0.983158f, -0.983176f, -0.983193f, -0.983211f, -0.983228f, + -0.983246f, -0.983263f, -0.983281f, -0.983298f, -0.983315f, -0.983333f, -0.983350f, -0.983368f, + -0.983385f, -0.983402f, -0.983420f, -0.983437f, -0.983455f, -0.983472f, -0.983489f, -0.983507f, + -0.983524f, -0.983541f, -0.983559f, -0.983576f, -0.983593f, -0.983611f, -0.983628f, -0.983645f, + -0.983662f, -0.983680f, -0.983697f, -0.983714f, -0.983731f, -0.983749f, -0.983766f, -0.983783f, + -0.983800f, -0.983817f, -0.983835f, -0.983852f, -0.983869f, -0.983886f, -0.983903f, -0.983920f, + -0.983937f, -0.983955f, -0.983972f, -0.983989f, -0.984006f, -0.984023f, -0.984040f, -0.984057f, + -0.984074f, -0.984091f, -0.984108f, -0.984125f, -0.984142f, -0.984159f, -0.984176f, -0.984193f, + -0.984210f, -0.984227f, -0.984244f, -0.984261f, -0.984278f, -0.984295f, -0.984312f, -0.984329f, + -0.984346f, -0.984362f, -0.984379f, -0.984396f, -0.984413f, -0.984430f, -0.984447f, -0.984464f, + -0.984480f, -0.984497f, -0.984514f, -0.984531f, -0.984548f, -0.984564f, -0.984581f, -0.984598f, + -0.984615f, -0.984632f, -0.984648f, -0.984665f, -0.984682f, -0.984698f, -0.984715f, -0.984732f, + -0.984748f, -0.984765f, -0.984782f, -0.984798f, -0.984815f, -0.984832f, -0.984848f, -0.984865f, + -0.984882f, -0.984898f, -0.984915f, -0.984931f, -0.984948f, -0.984965f, -0.984981f, -0.984998f, + -0.985014f, -0.985031f, -0.985047f, -0.985064f, -0.985080f, -0.985097f, -0.985113f, -0.985130f, + -0.985146f, -0.985163f, -0.985179f, -0.985196f, -0.985212f, -0.985228f, -0.985245f, -0.985261f, + -0.985278f, -0.985294f, -0.985310f, -0.985327f, -0.985343f, -0.985359f, -0.985376f, -0.985392f, + -0.985408f, -0.985425f, -0.985441f, -0.985457f, -0.985474f, -0.985490f, -0.985506f, -0.985523f, + -0.985539f, -0.985555f, -0.985571f, -0.985587f, -0.985604f, -0.985620f, -0.985636f, -0.985652f, + -0.985668f, -0.985685f, -0.985701f, -0.985717f, -0.985733f, -0.985749f, -0.985765f, -0.985781f, + -0.985798f, -0.985814f, -0.985830f, -0.985846f, -0.985862f, -0.985878f, -0.985894f, -0.985910f, + -0.985926f, -0.985942f, -0.985958f, -0.985974f, -0.985990f, -0.986006f, -0.986022f, -0.986038f, + -0.986054f, -0.986070f, -0.986086f, -0.986102f, -0.986118f, -0.986134f, -0.986150f, -0.986165f, + -0.986181f, -0.986197f, -0.986213f, -0.986229f, -0.986245f, -0.986261f, -0.986276f, -0.986292f, + -0.986308f, -0.986324f, -0.986340f, -0.986355f, -0.986371f, -0.986387f, -0.986403f, -0.986419f, + -0.986434f, -0.986450f, -0.986466f, -0.986481f, -0.986497f, -0.986513f, -0.986529f, -0.986544f, + -0.986560f, -0.986576f, -0.986591f, -0.986607f, -0.986623f, -0.986638f, -0.986654f, -0.986669f, + -0.986685f, -0.986701f, -0.986716f, -0.986732f, -0.986747f, -0.986763f, -0.986778f, -0.986794f, + -0.986809f, -0.986825f, -0.986840f, -0.986856f, -0.986871f, -0.986887f, -0.986902f, -0.986918f, + -0.986933f, -0.986949f, -0.986964f, -0.986980f, -0.986995f, -0.987010f, -0.987026f, -0.987041f, + -0.987057f, -0.987072f, -0.987087f, -0.987103f, -0.987118f, -0.987133f, -0.987149f, -0.987164f, + -0.987179f, -0.987195f, -0.987210f, -0.987225f, -0.987240f, -0.987256f, -0.987271f, -0.987286f, + -0.987301f, -0.987317f, -0.987332f, -0.987347f, -0.987362f, -0.987377f, -0.987393f, -0.987408f, + -0.987423f, -0.987438f, -0.987453f, -0.987468f, -0.987484f, -0.987499f, -0.987514f, -0.987529f, + -0.987544f, -0.987559f, -0.987574f, -0.987589f, -0.987604f, -0.987619f, -0.987634f, -0.987649f, + -0.987664f, -0.987679f, -0.987694f, -0.987709f, -0.987724f, -0.987739f, -0.987754f, -0.987769f, + -0.987784f, -0.987799f, -0.987814f, -0.987829f, -0.987844f, -0.987859f, -0.987874f, -0.987889f, + -0.987903f, -0.987918f, -0.987933f, -0.987948f, -0.987963f, -0.987978f, -0.987992f, -0.988007f, + -0.988022f, -0.988037f, -0.988052f, -0.988066f, -0.988081f, -0.988096f, -0.988111f, -0.988125f, + -0.988140f, -0.988155f, -0.988169f, -0.988184f, -0.988199f, -0.988214f, -0.988228f, -0.988243f, + -0.988258f, -0.988272f, -0.988287f, -0.988301f, -0.988316f, -0.988331f, -0.988345f, -0.988360f, + -0.988374f, -0.988389f, -0.988404f, -0.988418f, -0.988433f, -0.988447f, -0.988462f, -0.988476f, + -0.988491f, -0.988505f, -0.988520f, -0.988534f, -0.988549f, -0.988563f, -0.988578f, -0.988592f, + -0.988607f, -0.988621f, -0.988635f, -0.988650f, -0.988664f, -0.988679f, -0.988693f, -0.988707f, + -0.988722f, -0.988736f, -0.988750f, -0.988765f, -0.988779f, -0.988793f, -0.988808f, -0.988822f, + -0.988836f, -0.988851f, -0.988865f, -0.988879f, -0.988893f, -0.988908f, -0.988922f, -0.988936f, + -0.988950f, -0.988964f, -0.988979f, -0.988993f, -0.989007f, -0.989021f, -0.989035f, -0.989050f, + -0.989064f, -0.989078f, -0.989092f, -0.989106f, -0.989120f, -0.989134f, -0.989148f, -0.989162f, + -0.989177f, -0.989191f, -0.989205f, -0.989219f, -0.989233f, -0.989247f, -0.989261f, -0.989275f, + -0.989289f, -0.989303f, -0.989317f, -0.989331f, -0.989345f, -0.989359f, -0.989373f, -0.989386f, + -0.989400f, -0.989414f, -0.989428f, -0.989442f, -0.989456f, -0.989470f, -0.989484f, -0.989498f, + -0.989511f, -0.989525f, -0.989539f, -0.989553f, -0.989567f, -0.989581f, -0.989594f, -0.989608f, + -0.989622f, -0.989636f, -0.989650f, -0.989663f, -0.989677f, -0.989691f, -0.989704f, -0.989718f, + -0.989732f, -0.989746f, -0.989759f, -0.989773f, -0.989787f, -0.989800f, -0.989814f, -0.989828f, + -0.989841f, -0.989855f, -0.989869f, -0.989882f, -0.989896f, -0.989909f, -0.989923f, -0.989936f, + -0.989950f, -0.989964f, -0.989977f, -0.989991f, -0.990004f, -0.990018f, -0.990031f, -0.990045f, + -0.990058f, -0.990072f, -0.990085f, -0.990099f, -0.990112f, -0.990126f, -0.990139f, -0.990152f, + -0.990166f, -0.990179f, -0.990193f, -0.990206f, -0.990219f, -0.990233f, -0.990246f, -0.990259f, + -0.990273f, -0.990286f, -0.990299f, -0.990313f, -0.990326f, -0.990339f, -0.990353f, -0.990366f, + -0.990379f, -0.990393f, -0.990406f, -0.990419f, -0.990432f, -0.990445f, -0.990459f, -0.990472f, + -0.990485f, -0.990498f, -0.990511f, -0.990525f, -0.990538f, -0.990551f, -0.990564f, -0.990577f, + -0.990590f, -0.990603f, -0.990617f, -0.990630f, -0.990643f, -0.990656f, -0.990669f, -0.990682f, + -0.990695f, -0.990708f, -0.990721f, -0.990734f, -0.990747f, -0.990760f, -0.990773f, -0.990786f, + -0.990799f, -0.990812f, -0.990825f, -0.990838f, -0.990851f, -0.990864f, -0.990877f, -0.990890f, + -0.990903f, -0.990916f, -0.990928f, -0.990941f, -0.990954f, -0.990967f, -0.990980f, -0.990993f, + -0.991006f, -0.991018f, -0.991031f, -0.991044f, -0.991057f, -0.991070f, -0.991082f, -0.991095f, + -0.991108f, -0.991121f, -0.991133f, -0.991146f, -0.991159f, -0.991172f, -0.991184f, -0.991197f, + -0.991210f, -0.991222f, -0.991235f, -0.991248f, -0.991260f, -0.991273f, -0.991286f, -0.991298f, + -0.991311f, -0.991323f, -0.991336f, -0.991349f, -0.991361f, -0.991374f, -0.991386f, -0.991399f, + -0.991411f, -0.991424f, -0.991437f, -0.991449f, -0.991462f, -0.991474f, -0.991487f, -0.991499f, + -0.991511f, -0.991524f, -0.991536f, -0.991549f, -0.991561f, -0.991574f, -0.991586f, -0.991598f, + -0.991611f, -0.991623f, -0.991636f, -0.991648f, -0.991660f, -0.991673f, -0.991685f, -0.991697f, + -0.991710f, -0.991722f, -0.991734f, -0.991747f, -0.991759f, -0.991771f, -0.991783f, -0.991796f, + -0.991808f, -0.991820f, -0.991832f, -0.991845f, -0.991857f, -0.991869f, -0.991881f, -0.991894f, + -0.991906f, -0.991918f, -0.991930f, -0.991942f, -0.991954f, -0.991966f, -0.991979f, -0.991991f, + -0.992003f, -0.992015f, -0.992027f, -0.992039f, -0.992051f, -0.992063f, -0.992075f, -0.992087f, + -0.992099f, -0.992111f, -0.992123f, -0.992135f, -0.992147f, -0.992159f, -0.992171f, -0.992183f, + -0.992195f, -0.992207f, -0.992219f, -0.992231f, -0.992243f, -0.992255f, -0.992267f, -0.992279f, + -0.992291f, -0.992302f, -0.992314f, -0.992326f, -0.992338f, -0.992350f, -0.992362f, -0.992374f, + -0.992385f, -0.992397f, -0.992409f, -0.992421f, -0.992433f, -0.992444f, -0.992456f, -0.992468f, + -0.992480f, -0.992491f, -0.992503f, -0.992515f, -0.992526f, -0.992538f, -0.992550f, -0.992561f, + -0.992573f, -0.992585f, -0.992596f, -0.992608f, -0.992620f, -0.992631f, -0.992643f, -0.992655f, + -0.992666f, -0.992678f, -0.992689f, -0.992701f, -0.992712f, -0.992724f, -0.992736f, -0.992747f, + -0.992759f, -0.992770f, -0.992782f, -0.992793f, -0.992805f, -0.992816f, -0.992828f, -0.992839f, + -0.992850f, -0.992862f, -0.992873f, -0.992885f, -0.992896f, -0.992908f, -0.992919f, -0.992930f, + -0.992942f, -0.992953f, -0.992964f, -0.992976f, -0.992987f, -0.992998f, -0.993010f, -0.993021f, + -0.993032f, -0.993044f, -0.993055f, -0.993066f, -0.993077f, -0.993089f, -0.993100f, -0.993111f, + -0.993122f, -0.993134f, -0.993145f, -0.993156f, -0.993167f, -0.993178f, -0.993190f, -0.993201f, + -0.993212f, -0.993223f, -0.993234f, -0.993245f, -0.993257f, -0.993268f, -0.993279f, -0.993290f, + -0.993301f, -0.993312f, -0.993323f, -0.993334f, -0.993345f, -0.993356f, -0.993367f, -0.993378f, + -0.993389f, -0.993400f, -0.993411f, -0.993422f, -0.993433f, -0.993444f, -0.993455f, -0.993466f, + -0.993477f, -0.993488f, -0.993499f, -0.993510f, -0.993521f, -0.993532f, -0.993542f, -0.993553f, + -0.993564f, -0.993575f, -0.993586f, -0.993597f, -0.993608f, -0.993618f, -0.993629f, -0.993640f, + -0.993651f, -0.993662f, -0.993672f, -0.993683f, -0.993694f, -0.993705f, -0.993715f, -0.993726f, + -0.993737f, -0.993747f, -0.993758f, -0.993769f, -0.993779f, -0.993790f, -0.993801f, -0.993811f, + -0.993822f, -0.993833f, -0.993843f, -0.993854f, -0.993865f, -0.993875f, -0.993886f, -0.993896f, + -0.993907f, -0.993918f, -0.993928f, -0.993939f, -0.993949f, -0.993960f, -0.993970f, -0.993981f, + -0.993991f, -0.994002f, -0.994012f, -0.994023f, -0.994033f, -0.994044f, -0.994054f, -0.994064f, + -0.994075f, -0.994085f, -0.994096f, -0.994106f, -0.994116f, -0.994127f, -0.994137f, -0.994148f, + -0.994158f, -0.994168f, -0.994179f, -0.994189f, -0.994199f, -0.994210f, -0.994220f, -0.994230f, + -0.994240f, -0.994251f, -0.994261f, -0.994271f, -0.994281f, -0.994292f, -0.994302f, -0.994312f, + -0.994322f, -0.994333f, -0.994343f, -0.994353f, -0.994363f, -0.994373f, -0.994383f, -0.994394f, + -0.994404f, -0.994414f, -0.994424f, -0.994434f, -0.994444f, -0.994454f, -0.994464f, -0.994474f, + -0.994484f, -0.994494f, -0.994505f, -0.994515f, -0.994525f, -0.994535f, -0.994545f, -0.994555f, + -0.994565f, -0.994575f, -0.994585f, -0.994594f, -0.994604f, -0.994614f, -0.994624f, -0.994634f, + -0.994644f, -0.994654f, -0.994664f, -0.994674f, -0.994684f, -0.994694f, -0.994703f, -0.994713f, + -0.994723f, -0.994733f, -0.994743f, -0.994753f, -0.994762f, -0.994772f, -0.994782f, -0.994792f, + -0.994802f, -0.994811f, -0.994821f, -0.994831f, -0.994841f, -0.994850f, -0.994860f, -0.994870f, + -0.994879f, -0.994889f, -0.994899f, -0.994908f, -0.994918f, -0.994928f, -0.994937f, -0.994947f, + -0.994957f, -0.994966f, -0.994976f, -0.994985f, -0.994995f, -0.995005f, -0.995014f, -0.995024f, + -0.995033f, -0.995043f, -0.995052f, -0.995062f, -0.995071f, -0.995081f, -0.995090f, -0.995100f, + -0.995109f, -0.995119f, -0.995128f, -0.995138f, -0.995147f, -0.995156f, -0.995166f, -0.995175f, + -0.995185f, -0.995194f, -0.995203f, -0.995213f, -0.995222f, -0.995232f, -0.995241f, -0.995250f, + -0.995260f, -0.995269f, -0.995278f, -0.995288f, -0.995297f, -0.995306f, -0.995315f, -0.995325f, + -0.995334f, -0.995343f, -0.995352f, -0.995362f, -0.995371f, -0.995380f, -0.995389f, -0.995398f, + -0.995408f, -0.995417f, -0.995426f, -0.995435f, -0.995444f, -0.995453f, -0.995463f, -0.995472f, + -0.995481f, -0.995490f, -0.995499f, -0.995508f, -0.995517f, -0.995526f, -0.995535f, -0.995544f, + -0.995553f, -0.995562f, -0.995571f, -0.995580f, -0.995589f, -0.995598f, -0.995607f, -0.995616f, + -0.995625f, -0.995634f, -0.995643f, -0.995652f, -0.995661f, -0.995670f, -0.995679f, -0.995688f, + -0.995697f, -0.995705f, -0.995714f, -0.995723f, -0.995732f, -0.995741f, -0.995750f, -0.995759f, + -0.995767f, -0.995776f, -0.995785f, -0.995794f, -0.995803f, -0.995811f, -0.995820f, -0.995829f, + -0.995838f, -0.995846f, -0.995855f, -0.995864f, -0.995872f, -0.995881f, -0.995890f, -0.995899f, + -0.995907f, -0.995916f, -0.995925f, -0.995933f, -0.995942f, -0.995950f, -0.995959f, -0.995968f, + -0.995976f, -0.995985f, -0.995993f, -0.996002f, -0.996011f, -0.996019f, -0.996028f, -0.996036f, + -0.996045f, -0.996053f, -0.996062f, -0.996070f, -0.996079f, -0.996087f, -0.996096f, -0.996104f, + -0.996113f, -0.996121f, -0.996129f, -0.996138f, -0.996146f, -0.996155f, -0.996163f, -0.996171f, + -0.996180f, -0.996188f, -0.996197f, -0.996205f, -0.996213f, -0.996222f, -0.996230f, -0.996238f, + -0.996247f, -0.996255f, -0.996263f, -0.996271f, -0.996280f, -0.996288f, -0.996296f, -0.996304f, + -0.996313f, -0.996321f, -0.996329f, -0.996337f, -0.996345f, -0.996354f, -0.996362f, -0.996370f, + -0.996378f, -0.996386f, -0.996394f, -0.996403f, -0.996411f, -0.996419f, -0.996427f, -0.996435f, + -0.996443f, -0.996451f, -0.996459f, -0.996467f, -0.996475f, -0.996483f, -0.996491f, -0.996499f, + -0.996507f, -0.996515f, -0.996523f, -0.996531f, -0.996539f, -0.996547f, -0.996555f, -0.996563f, + -0.996571f, -0.996579f, -0.996587f, -0.996595f, -0.996603f, -0.996611f, -0.996619f, -0.996626f, + -0.996634f, -0.996642f, -0.996650f, -0.996658f, -0.996666f, -0.996674f, -0.996681f, -0.996689f, + -0.996697f, -0.996705f, -0.996712f, -0.996720f, -0.996728f, -0.996736f, -0.996743f, -0.996751f, + -0.996759f, -0.996767f, -0.996774f, -0.996782f, -0.996790f, -0.996797f, -0.996805f, -0.996813f, + -0.996820f, -0.996828f, -0.996836f, -0.996843f, -0.996851f, -0.996858f, -0.996866f, -0.996874f, + -0.996881f, -0.996889f, -0.996896f, -0.996904f, -0.996911f, -0.996919f, -0.996926f, -0.996934f, + -0.996941f, -0.996949f, -0.996956f, -0.996964f, -0.996971f, -0.996979f, -0.996986f, -0.996994f, + -0.997001f, -0.997008f, -0.997016f, -0.997023f, -0.997031f, -0.997038f, -0.997045f, -0.997053f, + -0.997060f, -0.997067f, -0.997075f, -0.997082f, -0.997089f, -0.997097f, -0.997104f, -0.997111f, + -0.997119f, -0.997126f, -0.997133f, -0.997140f, -0.997148f, -0.997155f, -0.997162f, -0.997169f, + -0.997176f, -0.997184f, -0.997191f, -0.997198f, -0.997205f, -0.997212f, -0.997219f, -0.997227f, + -0.997234f, -0.997241f, -0.997248f, -0.997255f, -0.997262f, -0.997269f, -0.997276f, -0.997283f, + -0.997290f, -0.997298f, -0.997305f, -0.997312f, -0.997319f, -0.997326f, -0.997333f, -0.997340f, + -0.997347f, -0.997354f, -0.997361f, -0.997368f, -0.997374f, -0.997381f, -0.997388f, -0.997395f, + -0.997402f, -0.997409f, -0.997416f, -0.997423f, -0.997430f, -0.997437f, -0.997443f, -0.997450f, + -0.997457f, -0.997464f, -0.997471f, -0.997478f, -0.997484f, -0.997491f, -0.997498f, -0.997505f, + -0.997511f, -0.997518f, -0.997525f, -0.997532f, -0.997538f, -0.997545f, -0.997552f, -0.997559f, + -0.997565f, -0.997572f, -0.997579f, -0.997585f, -0.997592f, -0.997599f, -0.997605f, -0.997612f, + -0.997618f, -0.997625f, -0.997632f, -0.997638f, -0.997645f, -0.997651f, -0.997658f, -0.997665f, + -0.997671f, -0.997678f, -0.997684f, -0.997691f, -0.997697f, -0.997704f, -0.997710f, -0.997717f, + -0.997723f, -0.997730f, -0.997736f, -0.997742f, -0.997749f, -0.997755f, -0.997762f, -0.997768f, + -0.997774f, -0.997781f, -0.997787f, -0.997794f, -0.997800f, -0.997806f, -0.997813f, -0.997819f, + -0.997825f, -0.997832f, -0.997838f, -0.997844f, -0.997851f, -0.997857f, -0.997863f, -0.997869f, + -0.997876f, -0.997882f, -0.997888f, -0.997894f, -0.997901f, -0.997907f, -0.997913f, -0.997919f, + -0.997925f, -0.997931f, -0.997938f, -0.997944f, -0.997950f, -0.997956f, -0.997962f, -0.997968f, + -0.997974f, -0.997980f, -0.997987f, -0.997993f, -0.997999f, -0.998005f, -0.998011f, -0.998017f, + -0.998023f, -0.998029f, -0.998035f, -0.998041f, -0.998047f, -0.998053f, -0.998059f, -0.998065f, + -0.998071f, -0.998077f, -0.998083f, -0.998089f, -0.998094f, -0.998100f, -0.998106f, -0.998112f, + -0.998118f, -0.998124f, -0.998130f, -0.998136f, -0.998142f, -0.998147f, -0.998153f, -0.998159f, + -0.998165f, -0.998171f, -0.998176f, -0.998182f, -0.998188f, -0.998194f, -0.998200f, -0.998205f, + -0.998211f, -0.998217f, -0.998222f, -0.998228f, -0.998234f, -0.998240f, -0.998245f, -0.998251f, + -0.998257f, -0.998262f, -0.998268f, -0.998273f, -0.998279f, -0.998285f, -0.998290f, -0.998296f, + -0.998302f, -0.998307f, -0.998313f, -0.998318f, -0.998324f, -0.998329f, -0.998335f, -0.998340f, + -0.998346f, -0.998351f, -0.998357f, -0.998362f, -0.998368f, -0.998373f, -0.998379f, -0.998384f, + -0.998390f, -0.998395f, -0.998401f, -0.998406f, -0.998411f, -0.998417f, -0.998422f, -0.998428f, + -0.998433f, -0.998438f, -0.998444f, -0.998449f, -0.998454f, -0.998460f, -0.998465f, -0.998470f, + -0.998476f, -0.998481f, -0.998486f, -0.998491f, -0.998497f, -0.998502f, -0.998507f, -0.998512f, + -0.998518f, -0.998523f, -0.998528f, -0.998533f, -0.998538f, -0.998544f, -0.998549f, -0.998554f, + -0.998559f, -0.998564f, -0.998569f, -0.998574f, -0.998580f, -0.998585f, -0.998590f, -0.998595f, + -0.998600f, -0.998605f, -0.998610f, -0.998615f, -0.998620f, -0.998625f, -0.998630f, -0.998635f, + -0.998640f, -0.998645f, -0.998650f, -0.998655f, -0.998660f, -0.998665f, -0.998670f, -0.998675f, + -0.998680f, -0.998685f, -0.998690f, -0.998695f, -0.998700f, -0.998704f, -0.998709f, -0.998714f, + -0.998719f, -0.998724f, -0.998729f, -0.998734f, -0.998738f, -0.998743f, -0.998748f, -0.998753f, + -0.998758f, -0.998762f, -0.998767f, -0.998772f, -0.998777f, -0.998781f, -0.998786f, -0.998791f, + -0.998795f, -0.998800f, -0.998805f, -0.998810f, -0.998814f, -0.998819f, -0.998824f, -0.998828f, + -0.998833f, -0.998837f, -0.998842f, -0.998847f, -0.998851f, -0.998856f, -0.998860f, -0.998865f, + -0.998870f, -0.998874f, -0.998879f, -0.998883f, -0.998888f, -0.998892f, -0.998897f, -0.998901f, + -0.998906f, -0.998910f, -0.998915f, -0.998919f, -0.998924f, -0.998928f, -0.998932f, -0.998937f, + -0.998941f, -0.998946f, -0.998950f, -0.998954f, -0.998959f, -0.998963f, -0.998968f, -0.998972f, + -0.998976f, -0.998981f, -0.998985f, -0.998989f, -0.998994f, -0.998998f, -0.999002f, -0.999006f, + -0.999011f, -0.999015f, -0.999019f, -0.999023f, -0.999028f, -0.999032f, -0.999036f, -0.999040f, + -0.999044f, -0.999049f, -0.999053f, -0.999057f, -0.999061f, -0.999065f, -0.999069f, -0.999074f, + -0.999078f, -0.999082f, -0.999086f, -0.999090f, -0.999094f, -0.999098f, -0.999102f, -0.999106f, + -0.999110f, -0.999114f, -0.999118f, -0.999122f, -0.999126f, -0.999130f, -0.999134f, -0.999138f, + -0.999142f, -0.999146f, -0.999150f, -0.999154f, -0.999158f, -0.999162f, -0.999166f, -0.999170f, + -0.999174f, -0.999178f, -0.999182f, -0.999186f, -0.999189f, -0.999193f, -0.999197f, -0.999201f, + -0.999205f, -0.999209f, -0.999212f, -0.999216f, -0.999220f, -0.999224f, -0.999228f, -0.999231f, + -0.999235f, -0.999239f, -0.999243f, -0.999246f, -0.999250f, -0.999254f, -0.999257f, -0.999261f, + -0.999265f, -0.999268f, -0.999272f, -0.999276f, -0.999279f, -0.999283f, -0.999287f, -0.999290f, + -0.999294f, -0.999297f, -0.999301f, -0.999305f, -0.999308f, -0.999312f, -0.999315f, -0.999319f, + -0.999322f, -0.999326f, -0.999329f, -0.999333f, -0.999336f, -0.999340f, -0.999343f, -0.999347f, + -0.999350f, -0.999354f, -0.999357f, -0.999361f, -0.999364f, -0.999367f, -0.999371f, -0.999374f, + -0.999378f, -0.999381f, -0.999384f, -0.999388f, -0.999391f, -0.999394f, -0.999398f, -0.999401f, + -0.999404f, -0.999408f, -0.999411f, -0.999414f, -0.999418f, -0.999421f, -0.999424f, -0.999427f, + -0.999431f, -0.999434f, -0.999437f, -0.999440f, -0.999443f, -0.999447f, -0.999450f, -0.999453f, + -0.999456f, -0.999459f, -0.999462f, -0.999466f, -0.999469f, -0.999472f, -0.999475f, -0.999478f, + -0.999481f, -0.999484f, -0.999487f, -0.999490f, -0.999493f, -0.999497f, -0.999500f, -0.999503f, + -0.999506f, -0.999509f, -0.999512f, -0.999515f, -0.999518f, -0.999521f, -0.999524f, -0.999527f, + -0.999529f, -0.999532f, -0.999535f, -0.999538f, -0.999541f, -0.999544f, -0.999547f, -0.999550f, + -0.999553f, -0.999556f, -0.999558f, -0.999561f, -0.999564f, -0.999567f, -0.999570f, -0.999573f, + -0.999575f, -0.999578f, -0.999581f, -0.999584f, -0.999586f, -0.999589f, -0.999592f, -0.999595f, + -0.999597f, -0.999600f, -0.999603f, -0.999605f, -0.999608f, -0.999611f, -0.999614f, -0.999616f, + -0.999619f, -0.999621f, -0.999624f, -0.999627f, -0.999629f, -0.999632f, -0.999635f, -0.999637f, + -0.999640f, -0.999642f, -0.999645f, -0.999647f, -0.999650f, -0.999652f, -0.999655f, -0.999658f, + -0.999660f, -0.999663f, -0.999665f, -0.999667f, -0.999670f, -0.999672f, -0.999675f, -0.999677f, + -0.999680f, -0.999682f, -0.999685f, -0.999687f, -0.999689f, -0.999692f, -0.999694f, -0.999696f, + -0.999699f, -0.999701f, -0.999704f, -0.999706f, -0.999708f, -0.999710f, -0.999713f, -0.999715f, + -0.999717f, -0.999720f, -0.999722f, -0.999724f, -0.999726f, -0.999729f, -0.999731f, -0.999733f, + -0.999735f, -0.999738f, -0.999740f, -0.999742f, -0.999744f, -0.999746f, -0.999748f, -0.999750f, + -0.999753f, -0.999755f, -0.999757f, -0.999759f, -0.999761f, -0.999763f, -0.999765f, -0.999767f, + -0.999769f, -0.999771f, -0.999774f, -0.999776f, -0.999778f, -0.999780f, -0.999782f, -0.999784f, + -0.999786f, -0.999788f, -0.999790f, -0.999792f, -0.999793f, -0.999795f, -0.999797f, -0.999799f, + -0.999801f, -0.999803f, -0.999805f, -0.999807f, -0.999809f, -0.999811f, -0.999812f, -0.999814f, + -0.999816f, -0.999818f, -0.999820f, -0.999822f, -0.999823f, -0.999825f, -0.999827f, -0.999829f, + -0.999831f, -0.999832f, -0.999834f, -0.999836f, -0.999838f, -0.999839f, -0.999841f, -0.999843f, + -0.999844f, -0.999846f, -0.999848f, -0.999849f, -0.999851f, -0.999853f, -0.999854f, -0.999856f, + -0.999858f, -0.999859f, -0.999861f, -0.999862f, -0.999864f, -0.999866f, -0.999867f, -0.999869f, + -0.999870f, -0.999872f, -0.999873f, -0.999875f, -0.999876f, -0.999878f, -0.999879f, -0.999881f, + -0.999882f, -0.999884f, -0.999885f, -0.999887f, -0.999888f, -0.999890f, -0.999891f, -0.999892f, + -0.999894f, -0.999895f, -0.999897f, -0.999898f, -0.999899f, -0.999901f, -0.999902f, -0.999903f, + -0.999905f, -0.999906f, -0.999907f, -0.999909f, -0.999910f, -0.999911f, -0.999913f, -0.999914f, + -0.999915f, -0.999916f, -0.999917f, -0.999919f, -0.999920f, -0.999921f, -0.999922f, -0.999924f, + -0.999925f, -0.999926f, -0.999927f, -0.999928f, -0.999929f, -0.999930f, -0.999932f, -0.999933f, + -0.999934f, -0.999935f, -0.999936f, -0.999937f, -0.999938f, -0.999939f, -0.999940f, -0.999941f, + -0.999942f, -0.999943f, -0.999944f, -0.999945f, -0.999946f, -0.999947f, -0.999948f, -0.999949f, + -0.999950f, -0.999951f, -0.999952f, -0.999953f, -0.999954f, -0.999955f, -0.999956f, -0.999957f, + -0.999958f, -0.999959f, -0.999959f, -0.999960f, -0.999961f, -0.999962f, -0.999963f, -0.999964f, + -0.999964f, -0.999965f, -0.999966f, -0.999967f, -0.999968f, -0.999968f, -0.999969f, -0.999970f, + -0.999971f, -0.999971f, -0.999972f, -0.999973f, -0.999973f, -0.999974f, -0.999975f, -0.999976f, + -0.999976f, -0.999977f, -0.999977f, -0.999978f, -0.999979f, -0.999979f, -0.999980f, -0.999981f, + -0.999981f, -0.999982f, -0.999982f, -0.999983f, -0.999983f, -0.999984f, -0.999985f, -0.999985f, + -0.999986f, -0.999986f, -0.999987f, -0.999987f, -0.999988f, -0.999988f, -0.999988f, -0.999989f, + -0.999989f, -0.999990f, -0.999990f, -0.999991f, -0.999991f, -0.999991f, -0.999992f, -0.999992f, + -0.999993f, -0.999993f, -0.999993f, -0.999994f, -0.999994f, -0.999994f, -0.999995f, -0.999995f, + -0.999995f, -0.999996f, -0.999996f, -0.999996f, -0.999996f, -0.999997f, -0.999997f, -0.999997f, + -0.999997f, -0.999998f, -0.999998f, -0.999998f, -0.999998f, -0.999998f, -0.999999f, -0.999999f, + -0.999999f, -0.999999f, -0.999999f, -0.999999f, -0.999999f, -0.999999f, -1.000000f, -1.000000f, + -1.000000f, -1.000000f, -1.000000f, -1.000000f, -1.000000f, -1.000000f, -1.000000f, -1.000000f +}; + +static const float *sinTables[17] = { + 0 , 0 , 0 , 0 , + sinTable16 , sinTable32 , sinTable64 , sinTable128 , + sinTable256 , sinTable512 , sinTable1024 , sinTable2048 , + sinTable4096, sinTable8192, sinTable16384, sinTable32768, + sinTable65536 +}; + +const float *getSineTable(int bits) { + assert((bits >= 4) && (bits <= 16)); + + return sinTables[bits]; +} + +} // End of namespace Common diff --git a/common/sinetables.h b/common/sinetables.h new file mode 100644 index 0000000000..28918838f4 --- /dev/null +++ b/common/sinetables.h @@ -0,0 +1,37 @@ +/* ScummVM - Graphic Adventure Engine + * + * ScummVM is the legal property of its developers, whose names + * are too numerous to list here. Please refer to the COPYRIGHT + * file distributed with this source distribution. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ + +#ifndef COMMON_SINETABLES_H +#define COMMON_SINETABLES_H + +namespace Common { + +/** + * Get a sine table with the specified bit precision + * + * @param bits Precision of the table, which must be in range [4, 16] + */ +const float *getSineTable(int bits); + +} // End of namespace Common + +#endif // COMMON_SINETABLES_H @@ -154,6 +154,7 @@ _build_scalers=yes _build_hq_scalers=yes _enable_prof=no _global_constructors=no +_bink=yes # Default vkeybd/keymapper options _vkeybd=no _keymapper=no @@ -775,6 +776,7 @@ Optional Features: --enable-text-console use text console instead of graphical console --enable-verbose-build enable regular echoing of commands during build process + --disable-bink don't build with Bink video support Optional Libraries: --with-alsa-prefix=DIR Prefix where alsa is installed (optional) @@ -877,6 +879,8 @@ for ac_option in $@; do --disable-libunity) _libunity=no ;; --enable-opengl) _opengl=yes ;; --disable-opengl) _opengl=no ;; + --enable-bink) _bink=yes ;; + --disable-bink) _bink=no ;; --enable-verbose-build) _verbose_build=yes ;; --enable-plugins) _dynamic_modules=yes ;; --default-dynamic) _plugins_default=dynamic ;; @@ -3267,6 +3271,13 @@ else fi # +# Check whether to build Bink video support +# +echo_n "Building Bink video support... " +define_in_config_if_yes $_bink 'USE_BINK' +echo "$_bink" + +# # Figure out installation directories # test "x$prefix" = xNONE && prefix=/usr/local diff --git a/devtools/create_kyradat/create_kyradat.cpp b/devtools/create_kyradat/create_kyradat.cpp index e4686cc66c..4dc8726d71 100644 --- a/devtools/create_kyradat/create_kyradat.cpp +++ b/devtools/create_kyradat/create_kyradat.cpp @@ -45,7 +45,7 @@ #include <map> enum { - kKyraDatVersion = 74 + kKyraDatVersion = 77 }; const ExtractFilename extractFilenames[] = { @@ -219,7 +219,7 @@ const ExtractFilename extractFilenames[] = { // Ingame { kLolIngamePakFiles, kTypeStringList, false }, - { kLolCharacterDefs, kLolTypeCharData, false }, + { kLolCharacterDefs, kLolTypeCharData, true }, { kLolIngameSfxFiles, k2TypeSfxList, false }, { kLolIngameSfxIndex, kTypeRawData, false }, { kLolMusicTrackMap, kTypeRawData, false }, diff --git a/devtools/create_kyradat/extract.cpp b/devtools/create_kyradat/extract.cpp index 5581dacec0..6e39e3da78 100644 --- a/devtools/create_kyradat/extract.cpp +++ b/devtools/create_kyradat/extract.cpp @@ -142,25 +142,32 @@ bool extractRaw(PAKFile &out, const ExtractInformation *info, const byte *data, } bool extractStrings(PAKFile &out, const ExtractInformation *info, const byte *data, const uint32 size, const char *filename, int id) { - int fmtPatch = 0; + int patch = 0; // FM Towns files that need addional patches if (info->platform == kPlatformFMTowns) { if (id == k1TakenStrings || id == k1NoDropStrings || id == k1PoisonGoneString || id == k1ThePoisonStrings || id == k1FluteStrings || id == k1WispJewelStrings) - fmtPatch = 1; + patch = 1; else if (id == k1IntroStrings) - fmtPatch = 2; + patch = 2; else if (id == k2SeqplayStrings) - fmtPatch = 3; + patch = 3; } else if (info->platform == kPlatformPC) { if (id == k2IngamePakFiles) - fmtPatch = 4; + patch = 4; + + if (id == k2SeqplayStrings && info->lang == Common::RU_RUS) + patch = 5; // HACK if (id == k2SeqplayIntroTracks && info->game == kLol) return extractStringsWoSuffix(out, info, data, size, filename, id); } + // Skip English string left-overs in the hacky Russian fan translation + static const uint8 rusFanSkipId[] = { 1, 3, 5, 8, 10, 11, 13, 15, 17, 20, 22, 25, 26, 30, 33, 38, 40, 41, 44, 49, 51, 55, 104, 119, 121, 123 }; + uint32 skipCount = 0; + uint32 entries = 0; uint32 targetsize = size + 4; for (uint32 i = 0; i < size; ++i) { @@ -183,7 +190,7 @@ bool extractStrings(PAKFile &out, const ExtractInformation *info, const byte *da break; targetsize--; } - if (fmtPatch == 1) { + if (patch == 1) { // Here is the first step of the extra treatment for all FM-TOWNS string arrays that // contain more than one string and which the original code // addresses via stringname[boolJapanese]. @@ -201,11 +208,38 @@ bool extractStrings(PAKFile &out, const ExtractInformation *info, const byte *da targetsize--; } } + } else if (patch == 5) { + ++skipCount; + while (!data[++i]) { + if (skipCount == 81) { + ++skipCount; + ++entries; + break; + } + if (i == size) + break; + targetsize--; + } + + for (uint32 ii = 0; ii < ARRAYSIZE(rusFanSkipId); ++ii) { + // Skip English string left-overs in the hacky Russian fan translation + if (skipCount == rusFanSkipId[ii]) { + ++skipCount; + uint32 len = strlen((const char*) data + i); + i += len; + targetsize = targetsize - 1 - len; + while (!data[++i]) { + if (i == len) + break; + targetsize--; + } + } + } } } } - if (fmtPatch == 2) { + if (patch == 2) { if (info->lang == EN_ANY) { targetsize--; entries += 1; @@ -215,12 +249,12 @@ bool extractStrings(PAKFile &out, const ExtractInformation *info, const byte *da } } - if (fmtPatch == 3) { + if (patch == 3) { entries++; targetsize++; } - if (fmtPatch == 4) { + if (patch == 4) { targetsize -= 9; } @@ -229,12 +263,13 @@ bool extractStrings(PAKFile &out, const ExtractInformation *info, const byte *da memset(buffer, 0, targetsize); uint8 *output = buffer; const uint8 *input = (const uint8*) data; + skipCount = 0; WRITE_BE_UINT32(output, entries); output += 4; if (info->platform == kPlatformFMTowns) { const byte *c = data + size; do { - if (fmtPatch == 2 && input - data == 0x3C0 && input[0x10] == 0x32) { + if (patch == 2 && input - data == 0x3C0 && input[0x10] == 0x32) { memcpy(output, input, 0x0F); input += 0x11; output += 0x0F; } @@ -245,14 +280,14 @@ bool extractStrings(PAKFile &out, const ExtractInformation *info, const byte *da // skip empty entries while (!*input) { // Write one empty string into intro strings file - if (fmtPatch == 2) { + if (patch == 2) { if ((info->lang == EN_ANY && input - data == 0x260) || (info->lang == JA_JPN && (input - data == 0x2BD || input - data == 0x2BE))) *output++ = *input; } // insert one dummy string at hof sequence strings position 59 - if (fmtPatch == 3) { + if (patch == 3) { if ((info->lang == EN_ANY && input - data == 0x695) || (info->lang == JA_JPN && input - data == 0x598)) *output++ = *input; @@ -262,7 +297,7 @@ bool extractStrings(PAKFile &out, const ExtractInformation *info, const byte *da break; } - if (fmtPatch == 1) { + if (patch == 1) { // Here is the extra treatment for all FM-TOWNS string arrays that // contain more than one string and which the original code // addresses via stringname[boolJapanese]. @@ -292,9 +327,38 @@ bool extractStrings(PAKFile &out, const ExtractInformation *info, const byte *da ++dstPos; } targetsize = dstPos + 4; + } else if (patch == 5) { + const byte *c = data + size; + do { + strcpy((char*) output, (const char*) input); + uint32 stringsize = strlen((const char*)output) + 1; + input += stringsize; output += stringsize; + + ++skipCount; + while (!*input) { + if (skipCount == 81) { + *output++ = *input; + ++skipCount; + } + if (++input == c) + break; + } + // Skip English string left-overs in the hacky Russian fan translation + for (uint32 ii = 0; ii < ARRAYSIZE(rusFanSkipId); ++ii) { + if (skipCount == rusFanSkipId[ii]) { + ++skipCount; + input += strlen((const char*)input); + while (!*input) { + if (++input == c) + break; + } + } + } + + } while (input < c); } else { uint32 copySize = size; - if (fmtPatch == 4) { + if (patch == 4) { memcpy(output, data, 44); output += 44; data += 44; diff --git a/devtools/create_kyradat/games.cpp b/devtools/create_kyradat/games.cpp index 76d5d70186..a0db9e8ee1 100644 --- a/devtools/create_kyradat/games.cpp +++ b/devtools/create_kyradat/games.cpp @@ -71,6 +71,7 @@ const Game kyra2Games[] = { { kKyra2, { FR_FRA, -1, -1 }, kPlatformPC, kNoSpecial, { "df31cc9e37e1cf68df2fdc75ddf2d87b", "fc2c6782778e6c6d5a553d1cb73c98ad" } }, { kKyra2, { DE_DEU, -1, -1 }, kPlatformPC, kNoSpecial, { "0ca4f9a1438264a4c63c3218e064ed3b", "0d9b0eb7b0ad889ec942d74d80dde1bf" } }, { kKyra2, { IT_ITA, -1, -1 }, kPlatformPC, kNoSpecial, { "178d3ab913f61bfba21d2fb196405e8c", "3a61ed6b7c00ddae383a0361799e2ba6" } }, + { kKyra2, { RU_RUS, -1, -1 }, kPlatformPC, kNoSpecial, { "fd6a388c01de9a578e24e3bbeacd8012", "3a61ed6b7c00ddae383a0361799e2ba6" } }, // talkie games { kKyra2, { EN_ANY, FR_FRA, DE_DEU }, kPlatformPC, kTalkieVersion, { "85bbc1cc6c4cef6ad31fc6ee79518efb", "e20d0d2e500f01e399ec588247a7e213" } }, @@ -98,8 +99,9 @@ const Game lolGames[] = { // DOS demo { kLol, { EN_ANY, -1, -1 }, kPlatformPC, kDemoVersion, { "30bb5af87d38adb47d3e6ce06b1cb042", 0 } }, - // DOS floppy (no language specifc strings) + // DOS floppy (no language specifc strings except character presets) { kLol, { EN_ANY, -1, -1 }, kPlatformPC, kNoSpecial, { "0cc764a204f7ba8cefe1a5f14c479619", 0 } }, + { kLol, { RU_RUS, -1, -1 }, kPlatformPC, kNoSpecial, { "80a9f9bf243bc6ed36d98584fc6988c4", 0 } }, { kLol, { DE_DEU, -1, -1 }, kPlatformPC, kNoSpecial, { "6b843869772c1b779e1386be868c15dd", 0 } }, // PC98 (no language specifc strings) @@ -108,6 +110,7 @@ const Game lolGames[] = { // DOS CD (multi language version, with no language specific strings) { kLol, { EN_ANY, FR_FRA, DE_DEU }, kPlatformPC, kTalkieVersion, { "9d1778314de80598c0b0d032e2a1a1cf", "263998ec600afca1cc7b935c473df670" } }, { kLol, { IT_ITA, FR_FRA, DE_DEU }, kPlatformPC, kTalkieVersion, { "9d1778314de80598c0b0d032e2a1a1cf", "f2af366e00f79dbf832fa19701d71ed9" } }, // Italian fan translation + { kLol, { EN_ANY, FR_FRA, RU_RUS }, kPlatformPC, kTalkieVersion, { "9d1778314de80598c0b0d032e2a1a1cf", "5b33478718968676343803911dd5e3e4" } }, // Russian fan translation GAME_DUMMY_ENTRY }; diff --git a/devtools/create_kyradat/tables.cpp b/devtools/create_kyradat/tables.cpp index 090b32debc..20f2663553 100644 --- a/devtools/create_kyradat/tables.cpp +++ b/devtools/create_kyradat/tables.cpp @@ -1057,6 +1057,8 @@ const ExtractEntrySearchData k2SeqplayStringsProvider[] = { { IT_ITA, kPlatformPC, { 0x00000916, 0x0003188F, { { 0xDC, 0x46, 0x06, 0xE1, 0xB0, 0x66, 0xBC, 0x18, 0x2E, 0x6E, 0x9E, 0xC9, 0xA4, 0x14, 0x8D, 0x08 } } } }, // floppy { IT_ITA, kPlatformPC, { 0x000008C8, 0x00030947, { { 0x7F, 0x75, 0x5F, 0x99, 0x94, 0xFE, 0xA1, 0xE6, 0xEF, 0xB8, 0x93, 0x71, 0x83, 0x1B, 0xAC, 0x4A } } } }, // (fan) CD + { RU_RUS, kPlatformPC, { 0x000008C8, 0x00028639, { { 0xF9, 0x1D, 0x6A, 0x85, 0x23, 0x5E, 0x2A, 0x64, 0xBC, 0x45, 0xB2, 0x48, 0x13, 0x49, 0xD4, 0xF7 } } } }, // (fan) floppy + { EN_ANY, kPlatformFMTowns, { 0x00000990, 0x00030C61, { { 0x60, 0x51, 0x11, 0x83, 0x3F, 0x06, 0xC3, 0xA3, 0xE0, 0xC0, 0x2F, 0x41, 0x29, 0xDE, 0x65, 0xB1 } } } }, { JA_JPN, kPlatformFMTowns, { 0x000008A8, 0x00036831, { { 0x56, 0x5B, 0x23, 0x61, 0xE8, 0x3B, 0xE1, 0x36, 0xD6, 0x62, 0xD0, 0x84, 0x00, 0x04, 0x05, 0xAD } } } }, @@ -1281,10 +1283,15 @@ const ExtractEntrySearchData kLolIngamePakFilesProvider[] = { }; const ExtractEntrySearchData kLolCharacterDefsProvider[] = { - { UNK_LANG, kPlatformPC, { 0x00000492, 0x000046B0, { { 0x7A, 0x94, 0x8B, 0xC6, 0xF7, 0xF1, 0x2F, 0xF3, 0xBC, 0x1B, 0x0B, 0x4E, 0x00, 0xC9, 0x44, 0x58 } } } }, // floppy - { UNK_LANG, kPlatformPC, { 0x00000492, 0x000047FD, { { 0x8C, 0x0B, 0x8B, 0xCE, 0xE0, 0xB0, 0x8F, 0xA9, 0x06, 0xC3, 0x98, 0xE6, 0x2E, 0x09, 0xB6, 0x93 } } } }, // floppy - { UNK_LANG, kPlatformPC, { 0x00000492, 0x00004ACD, { { 0xDF, 0x87, 0xFE, 0x89, 0x59, 0xCC, 0x01, 0xD7, 0xC7, 0xEB, 0x16, 0xA4, 0x09, 0xAF, 0x5D, 0xC0 } } } }, // CD - { UNK_LANG, kPlatformPC98, { 0x00000492, 0x00005893, { { 0x7C, 0x7E, 0xFB, 0x80, 0xD9, 0xB6, 0x16, 0x87, 0x80, 0xB7, 0x46, 0x9B, 0x96, 0x1A, 0x6A, 0xBE } } } }, + { RU_RUS, kPlatformPC, { 0x00000492, 0x000052BA, { { 0x52, 0x29, 0x0D, 0x49, 0xFD, 0x17, 0xD7, 0x70, 0x6D, 0xCA, 0xEB, 0xB6, 0x7E, 0xFA, 0xBE, 0x08 } } } }, // floppy + { EN_ANY, kPlatformPC, { 0x00000492, 0x000046B0, { { 0x7A, 0x94, 0x8B, 0xC6, 0xF7, 0xF1, 0x2F, 0xF3, 0xBC, 0x1B, 0x0B, 0x4E, 0x00, 0xC9, 0x44, 0x58 } } } }, // floppy + { DE_DEU, kPlatformPC, { 0x00000492, 0x000047FD, { { 0x8C, 0x0B, 0x8B, 0xCE, 0xE0, 0xB0, 0x8F, 0xA9, 0x06, 0xC3, 0x98, 0xE6, 0x2E, 0x09, 0xB6, 0x93 } } } }, // floppy + { EN_ANY, kPlatformPC, { 0x00000492, 0x00004ACD, { { 0xDF, 0x87, 0xFE, 0x89, 0x59, 0xCC, 0x01, 0xD7, 0xC7, 0xEB, 0x16, 0xA4, 0x09, 0xAF, 0x5D, 0xC0 } } } }, // CD + { DE_DEU, kPlatformPC, { 0x00000492, 0x00004ACD, { { 0xDF, 0x87, 0xFE, 0x89, 0x59, 0xCC, 0x01, 0xD7, 0xC7, 0xEB, 0x16, 0xA4, 0x09, 0xAF, 0x5D, 0xC0 } } } }, // CD + { FR_FRA, kPlatformPC, { 0x00000492, 0x00004ACD, { { 0xDF, 0x87, 0xFE, 0x89, 0x59, 0xCC, 0x01, 0xD7, 0xC7, 0xEB, 0x16, 0xA4, 0x09, 0xAF, 0x5D, 0xC0 } } } }, // CD + { RU_RUS, kPlatformPC, { 0x00000492, 0x00004ACD, { { 0xDF, 0x87, 0xFE, 0x89, 0x59, 0xCC, 0x01, 0xD7, 0xC7, 0xEB, 0x16, 0xA4, 0x09, 0xAF, 0x5D, 0xC0 } } } }, // CD + { IT_ITA, kPlatformPC, { 0x00000492, 0x00004ACD, { { 0xDF, 0x87, 0xFE, 0x89, 0x59, 0xCC, 0x01, 0xD7, 0xC7, 0xEB, 0x16, 0xA4, 0x09, 0xAF, 0x5D, 0xC0 } } } }, // CD + { JA_JPN, kPlatformPC98, { 0x00000492, 0x00005893, { { 0x7C, 0x7E, 0xFB, 0x80, 0xD9, 0xB6, 0x16, 0x87, 0x80, 0xB7, 0x46, 0x9B, 0x96, 0x1A, 0x6A, 0xBE } } } }, EXTRACT_END_ENTRY }; diff --git a/devtools/create_project/create_project.cpp b/devtools/create_project/create_project.cpp index 35d08561bf..0b190b3f0e 100644 --- a/devtools/create_project/create_project.cpp +++ b/devtools/create_project/create_project.cpp @@ -773,6 +773,7 @@ const Feature s_features[] = { { "theora", "USE_THEORADEC", "libtheora_static", true, "Theora decoding support" }, // Feature flags + { "bink", "USE_BINK", "", true, "Bink video support" }, { "scalers", "USE_SCALERS", "", true, "Scalers" }, { "hqscalers", "USE_HQ_SCALERS", "", true, "HQ scalers" }, { "16bit", "USE_RGB_COLOR", "", true, "16bit color support" }, diff --git a/devtools/create_toon/create_toon.cpp b/devtools/create_toon/create_toon.cpp index bdd57be7df..d01102bb71 100644 --- a/devtools/create_toon/create_toon.cpp +++ b/devtools/create_toon/create_toon.cpp @@ -77,8 +77,8 @@ int main(int argc, char *argv[]) { writeByte(outFile, TOON_DAT_VER_MAJ); writeByte(outFile, TOON_DAT_VER_MIN); - // game versions/variantes - writeUint16BE(outFile, NUM_VARIANTE); + // game versions/variants + writeUint16BE(outFile, NUM_VARIANTS); // Write locationDirNotVisited nbrElem = sizeof(locationDirNotVisited_EN) / sizeof(char *); @@ -128,7 +128,7 @@ int main(int argc, char *argv[]) { nbrElem = sizeof(specialInfoLine_SP) / sizeof(char *); writeTextArray(outFile, specialInfoLine_SP, nbrElem); -// Not yet handled : miscTexts, endingLine and exitLine. Are they useful? + // Not yet handled: miscTexts, endingLine and exitLine. Are they useful? fclose(outFile); return 0; diff --git a/devtools/create_toon/create_toon.h b/devtools/create_toon/create_toon.h index 60b33013f4..b047959215 100644 --- a/devtools/create_toon/create_toon.h +++ b/devtools/create_toon/create_toon.h @@ -30,9 +30,9 @@ #define TOON_DAT_VER_MAJ 0 // 1 byte #define TOON_DAT_VER_MIN 3 // 1 byte -// Number of Variante of the game. For the moment, it's the same -// than the number of languages -#define NUM_VARIANTE 5 +// Number of variants of the game. For the moment, it's the same +// as the number of languages +#define NUM_VARIANTS 5 typedef unsigned char uint8; typedef unsigned char byte; diff --git a/devtools/tasmrecover/dreamweb/vars.asm b/devtools/tasmrecover/dreamweb/vars.asm index 8646697e52..8678231a9d 100644 --- a/devtools/tasmrecover/dreamweb/vars.asm +++ b/devtools/tasmrecover/dreamweb/vars.asm @@ -273,7 +273,7 @@ savesource dw 0 savex db 0 savey db 0 currentob db 0 -priority db 0 +priorityDep db 0 ; dep for deprecated, I leave a byte here to minimize changes to the generated code destpos db 0 diff --git a/devtools/tasmrecover/tasm-recover b/devtools/tasmrecover/tasm-recover index 5f7a528a5b..413be6caf1 100755 --- a/devtools/tasmrecover/tasm-recover +++ b/devtools/tasmrecover/tasm-recover @@ -1,5 +1,26 @@ #!/usr/bin/python +# ScummVM - Graphic Adventure Engine +# +# ScummVM is the legal property of its developers, whose names +# are too numerous to list here. Please refer to the COPYRIGHT +# file distributed with this source distribution. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# + from tasm.parser import parser from tasm.cpp import cpp @@ -15,15 +36,42 @@ generator = cpp(context, "DreamGen", blacklist = [ 'multiget', 'multiput', 'multidump', - 'frameoutnm', + 'frameoutnm', + 'frameoutbh', + 'frameoutfx', 'cls', 'printundermon', + 'kernchars', + 'getnextword', + 'getnumber', + 'dumptextline', + 'printboth', + 'printchar', + 'printdirect', + 'printslow', + 'usetimedtext', + 'putundertimed', + 'getundertimed', 'worktoscreen', 'width160', 'convertkey', 'readabyte', 'readoneblock', + 'printsprites', + 'printasprite', + 'eraseoldobs', + 'clearsprites', + 'makesprite', + 'showframe', + 'initman', + 'walking', + 'spriteupdate', + 'dodoor', + 'liftsprite', 'frameoutv', - 'modifychar' + 'modifychar', + 'lockmon', + 'cancelch0', + 'cancelch1' ]) generator.generate('dreamweb') #start routine diff --git a/devtools/tasmrecover/tasm/cpp.py b/devtools/tasmrecover/tasm/cpp.py index dfdfb239f4..a73fd6c890 100644 --- a/devtools/tasmrecover/tasm/cpp.py +++ b/devtools/tasmrecover/tasm/cpp.py @@ -1,3 +1,24 @@ +# ScummVM - Graphic Adventure Engine +# +# ScummVM is the legal property of its developers, whose names +# are too numerous to list here. Please refer to the COPYRIGHT +# file distributed with this source distribution. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# + import op, traceback, re, proc from copy import copy proc_module = proc @@ -16,7 +37,31 @@ class cpp: self.namespace = namespace fname = namespace.lower() + ".cpp" header = namespace.lower() + ".h" - banner = "/* PLEASE DO NOT MODIFY THIS FILE. ALL CHANGES WILL BE LOST! LOOK FOR README FOR DETAILS */" + banner = """/* PLEASE DO NOT MODIFY THIS FILE. ALL CHANGES WILL BE LOST! LOOK FOR README FOR DETAILS */ + +/* ScummVM - Graphic Adventure Engine + * + * ScummVM is the legal property of its developers, whose names + * are too numerous to list here. Please refer to the COPYRIGHT + * file distributed with this source distribution. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ + +""" self.fd = open(fname, "wt") self.hd = open(header, "wt") hid = "TASMRECOVER_%s_STUBS_H__" %namespace.upper() @@ -544,14 +589,19 @@ namespace %s { """\n#include "dreamweb/runtime.h" namespace %s { - +#include "structs.h" class %sContext : public Context { public: void __start(); void __dispatch_call(uint16 addr); +#include "stubs.h" // Allow hand-reversed functions to have a signature different than void f() """ %(self.namespace, self.namespace)) + + for name,addr in self.proc_addr: + self.hd.write("\tstatic const uint16 addr_%s = 0x%04x;\n" %(name, addr)) + offsets = [] for k, v in self.context.get_globals().items(): if isinstance(v, op.var): @@ -564,7 +614,10 @@ public: self.hd.write("\tconst static uint16 k%s = %s;\n" %o) self.hd.write("\n") for p in set(self.methods): - self.hd.write("\tvoid %s();\n" %p) + if p in self.blacklist: + self.hd.write("\t//void %s();\n" %p) + else: + self.hd.write("\tvoid %s();\n" %p) self.hd.write("};\n}\n\n#endif\n") self.hd.close() @@ -574,7 +627,7 @@ public: self.fd.write("\nvoid %sContext::__dispatch_call(uint16 addr) {\n\tswitch(addr) {\n" %self.namespace) self.proc_addr.sort(cmp = lambda x, y: x[1] - y[1]) for name,addr in self.proc_addr: - self.fd.write("\t\tcase 0x%04x: %s(); break;\n" %(addr, name)) + self.fd.write("\t\tcase addr_%s: %s(); break;\n" %(name, name)) self.fd.write("\t\tdefault: ::error(\"invalid call to %04x dispatched\", (uint16)ax);") self.fd.write("\n\t}\n}\n\n} /*namespace*/\n") diff --git a/devtools/tasmrecover/tasm/lex.py b/devtools/tasmrecover/tasm/lex.py index cf7e6e19bf..9728c149ca 100644 --- a/devtools/tasmrecover/tasm/lex.py +++ b/devtools/tasmrecover/tasm/lex.py @@ -1,3 +1,24 @@ +# ScummVM - Graphic Adventure Engine +# +# ScummVM is the legal property of its developers, whose names +# are too numerous to list here. Please refer to the COPYRIGHT +# file distributed with this source distribution. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# + def parse_args(text): #print "parsing: [%s]" %text escape = False diff --git a/devtools/tasmrecover/tasm/op.py b/devtools/tasmrecover/tasm/op.py index 10fdd8a568..6b19068f2a 100644 --- a/devtools/tasmrecover/tasm/op.py +++ b/devtools/tasmrecover/tasm/op.py @@ -1,3 +1,24 @@ +# ScummVM - Graphic Adventure Engine +# +# ScummVM is the legal property of its developers, whose names +# are too numerous to list here. Please refer to the COPYRIGHT +# file distributed with this source distribution. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# + import re import lex diff --git a/devtools/tasmrecover/tasm/parser.py b/devtools/tasmrecover/tasm/parser.py index 4cea496722..ebbd714cf4 100644 --- a/devtools/tasmrecover/tasm/parser.py +++ b/devtools/tasmrecover/tasm/parser.py @@ -1,3 +1,24 @@ +# ScummVM - Graphic Adventure Engine +# +# ScummVM is the legal property of its developers, whose names +# are too numerous to list here. Please refer to the COPYRIGHT +# file distributed with this source distribution. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# + import os, re from proc import proc import lex diff --git a/devtools/tasmrecover/tasm/proc.py b/devtools/tasmrecover/tasm/proc.py index ed7053df89..50a394413f 100644 --- a/devtools/tasmrecover/tasm/proc.py +++ b/devtools/tasmrecover/tasm/proc.py @@ -1,3 +1,24 @@ +# ScummVM - Graphic Adventure Engine +# +# ScummVM is the legal property of its developers, whose names +# are too numerous to list here. Please refer to the COPYRIGHT +# file distributed with this source distribution. +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# + import re import op diff --git a/dists/engine-data/kyra.dat b/dists/engine-data/kyra.dat Binary files differindex 1d79ceddfd..d3f8f39180 100644 --- a/dists/engine-data/kyra.dat +++ b/dists/engine-data/kyra.dat diff --git a/doc/translations/README-translation_template.txt b/doc/QuickStart index ec43ebef60..ec43ebef60 100755..100644 --- a/doc/translations/README-translation_template.txt +++ b/doc/QuickStart diff --git a/doc/de/Liesmich b/doc/de/Liesmich new file mode 100644 index 0000000000..b5f16f4a88 --- /dev/null +++ b/doc/de/Liesmich @@ -0,0 +1,770 @@ +ScummVM – Liesmich-Datei +------------------------------------------------------------------------ + +Dieses Dokument ist eine auszugsweise Übersetzung der englischen README-Datei. +Das Original-Dokument enthält viel mehr Informationen. Sollten Sie hier also +nicht das finden, was Sie benötigen und ein wenig Englisch können, sollten Sie +sich die englische README-Datei ansehen. + +Für weitere Informationen, Kompatibilitätslisten, Einzelheiten zu Spenden, die +neusten veröffentlichten Versionen, Fortschrittsberichte und mehr besuchen Sie +bitte die ScummVM-Website unter der Adresse: http://www.scummvm.org/ + + +Inhaltsverzeichnis: +------------------- +1.0) Einführung + * 1.1 Über ScummVM + * 1.2 Schnellstart +2.0) Kontakt + * 2.1 Fehler berichten +3.0) Unterstützte Spiele + * 3.1 Kopierschutz + * 3.2 Hinweise zu Commodore64-Spielen + * 3.3 Hinweise zu Maniac Mansion NES + * 3.4 Hinweise zu Macintosh-Spielen + * 3.5 Hinweise zu Spielen auf mehren CDs + * 3.6 Hinweise zu The Curse of Monkey Island + * 3.7 Hinweise zu den Baphomets-Fluch-Spielen + * 3.8 Hinweise zu Beneath a Steel Sky + * 3.9 Hinweise zu Flight of the Amazon Queen + * 3.10 Hinweise zu Gobliiins + * 3.11 Hinweise zu Inherit the Earth: Quest for the Orb (Macintosh) + * 3.12 Hinweise zu Simon the Sorcerer 1 und 2 + * 3.13 Hinweise zu Floyd – Es gibt noch Helden + * 3.14 Hinweise zu The Legend of Kyrandia + * 3.15 Hinweise zum vorhersagenden Eingabedialog bei Sierras AGI-Spielen + + +1.0) Einführung: +---- ----------- + +1.1) Über ScummVM: +---- ------------- +ScummVM ist ein Programm, welches es Ihnen ermöglicht, bestimmte klassische +Grafik-Adventure (unter anderem aus dem Point-and-Click-Bereich) zu spielen, +vorausgesetzt, Sie sind im Besitz der Dateien des Spiels. Der Trick dabei ist: +ScummVM ersetzt lediglich die Funktion der ausführbaren Dateien, die mit den +Spielen kamen, was ermöglicht, diese Spiele auf Systemen zu spielen, für welche +sie nie erstellt wurden! + +Ursprünglich wurde dieses Programm dafür entwickelt, um SCUMM-Spiele von +LucasArts auszuführen, wie beispielsweise Maniac Mansion, Monkey Island, Day of +the Tentacle oder Sam & Max. SCUMM steht als Abkürzung für „Script Creation +Utility for Maniac Mansion“ (deutsch etwa: Skripterstellungsdienstprogramm für +Maniac Mansion), was das erste Spiel von LucasArts war, für welches LucasArts +dieses System entworfen hatte. Und viel später verlieh es seinen Namen an +ScummVM (wobei „VM“ für „Virtuelle Maschine“ steht). + +Mit der Zeit wurde Unterstützung für viele Nicht-SCUMM-Spiele hinzugefügt und +ScummVM unterstützt nun auch viele AGI- und SCI-Spiele von Sierra (wie +beispielsweise King's Quest 1-6, Space Quest 1-5, ...), Discworld 1 und 2, Simon +the Sorcerer 1 und 2, Beneath A Steel Sky, Lure of the Temptress, Baphomets +Fluch I und II, Flight of the Amazon Queen, Gobliiins 1-3, die Adventure-Reihe +The Legend of Kyrandia, viele der SCUMM-Spiele für Kinder von Humongous +Entertainment (einschließlich der Spiele von Fritzi Fisch und Töff-Töff) und +viele mehr. Sie können eine vollständige Liste mit Einzelheiten einsehen, welche +Auskunft darüber gibt, welche Spiele unterstützt werden und wie gut. Gehen Sie +hierfür auf die Kompatibilitätsseite. ScummVM wird fortlaufend verbessert, also +schauen Sie öfter einmal vorbei. + +Unter den Systemen, mit denen Sie diese Spiele spielen können, befinden sich +normale Schreibtisch-Computer (mit den Betriebssystemen Windows, Linux, +Mac OS X, ...), Spielekonsolen (Dreamcast, Nintendo DS & Wii, PS2, PSP, ...), +Smartphones (Android, iPhone, PocketPC, Symbian ...) und einige weitere. + +Zurzeit befindet sich ScummVM immer noch stark in der Entwicklung. Seien Sie +sich bewusst, dass wir zwar versuchen, dass viele Spiele mit wenigen erheblichen +Fehlern durchgespielt werden können, aber es dennoch zu Abstürzen kommen kann +und wir keine Gewähr übernehmen. Davon abgesehen: Einige Spiele werden seit +längerer Zeit unterstützt und sollten in jeder neusten stabilen veröffentlichten +Version ohne größere Probleme laufen. Sie können sich einen Eindruck davon +verschaffen, wie gut jedes Spiel unter ScummVM läuft, indem Sie auf die +Kompatibilitätsseite schauen. Wenn Sie sich ein wenig im Internet umsehen, +können Sie feststellen, dass ScummVM sogar kommerziell genutzt wird, um einige +der unterstützen Spiele für moderne Plattformen wiederzuveröffentlichen. Dies +zeigt, dass mehrere Firmen mit der Qualität der Software zufrieden sind und wie +gut einige der Spiele mit Hilfe des Programms laufen. + +Wenn Ihnen ScummVM gefällt, können Sie uns gerne Geld spenden, indem Sie auf die +PayPal-Schaltfläche auf der ScummVM-Website klicken. Dies hilft uns dabei, +notwendige Dienstprogramme zu kaufen, um ScummVM einfacher und schneller zu +entwickeln. Wenn Sie nicht spenden können, dürfen Sie auch gerne einen Patch +beisteuern. + +1.2) Schnellstart: +---- ------------- +WICHTIG: In dieser kurzen Anleitung wird davon ausgegangen, dass Sie ScummVM auf +Deutsch benutzen. Standardmäßig wird ScummVM die Sprache Ihres Betriebssystems +verwenden. Wenn Sie ScummVM lieber auf Englisch verwenden möchten, benutzen Sie +bitte die Anleitung in der englischen README-Datei. + +Für die ungeduldigen unter den Anwendern ist hier in fünf einfachen Schritten +kurz beschrieben, wie man ScummVM lauffähig macht und das Programm verwendet. + +1. Laden Sie ScummVM unter der Adresse http://www.scummvm.org/downloads.php +herunter und installieren Sie es. + +2. Erstellen Sie ein Verzeichnis auf Ihrer Festplatte und kopieren Sie die +Dateien des Spiels vom Original-Datenträger in dieses Verzeichnis. Wiederholen +Sie diesen Vorgang für jedes Spiel, das Sie spielen möchten (es ist besser, für +jedes Spiel ein eigenes Verzeichnis zu verwenden). + +3. Starten Sie ScummVM. + +Sollte an diesem Punkt ScummVM auf Englisch statt auf Deutsch erscheinen, gehen +Sie wie folgt vor, um die Spracheinstellung zu ändern: +-Klicken Sie auf „Options“. +-Klicken Sie auf den rechten Pfeil in der Reiterleiste und wählen den Reiter + „Misc“ aus. +-Wählen Sie im Feld „GUI Language“ „Deutsch“ aus und klicken auf „OK“. +-Bestätigen Sie die erscheinende Nachricht, klicken auf „Quit“, um ScummVM zu + beenden, und starten dann das Programm erneut. + +Nun klicken Sie auf „Spiel hinzufügen“, wählen das Verzeichnis mit den Dateien +des Spiels aus (versuchen Sie nicht, die Dateien des Spiels selbst auszuwählen!) +und klicken Sie auf „Auswählen“. + +4. Ein Dialog sollte erscheinen, der Ihnen ermöglicht, verschiedene +Einstellungen vorzunehmen, sollten Sie dies wünschen (es sollte jedoch in +Ordnung sein, alles voreingestellt zu belassen). Bestätigen Sie diesen Dialog. + +5. Wählen Sie das Spiel aus der Liste aus, welches Sie spielen möchten, und +klicken Sie auf „Starten“. + +ScummVM behält die Spiele in der Liste, die Sie hinzufügen. Wenn Sie also +ScummVM schließen, werden beim nächsten Start alle Spiele, die Sie zuvor +hinzugefügt haben, in der Liste angezeigt. Sie können somit direkt zu Schritt 5 +übergehen, außer Sie wollen noch mehr Spiele hinzufügen. + +Tipp: Wenn Sie mehrere Spiele auf einmal hinzufügen möchten, drücken Sie die +Umschalt-Taste (Shift), bevor Sie auf „Spiel hinzufügen“ klicken. Diese +Schaltfläche wird somit ihren Text zu „Durchsuchen“ umändern und wenn Sie dann +auf diese klicken, werden Sie auch dazu aufgefordert, ein Verzeichnis +auszuwählen, nur dieses Mal wird ScummVM alle Unterverzeichnisse automatisch +nach unterstützen Spielen durchsuchen. + + +2.0) Kontakt: +---- -------- +Der einfachste Weg, um mit dem ScummVM-Team in Verbindung zu treten, ist, +Fehlerberichte einzusenden (siehe Abschnitt 2.1) oder durch Verwendung des +Forums unter der Adresse http://forums.scummvm.org . +Sie können ebenso der Mailing-Liste scummvm-devel beitreten und an diese E-Mails +versenden oder mit uns im IRC chatten (#scummvm unter irc.freenode.net). Bitte +fordern Sie uns nicht dazu auf, ein nicht unterstütztes Spiel zu unterstützen. +Lesen Sie zuerst die Seite FAQ (Häufig gestellte Fragen) auf unserer Website. +Bitte beachten Sie, dass die offizielle Sprache des Forums, der Mailing-Liste +und des Chats Englisch ist und keine andere Sprache dort verwendet werden +sollte. + + +2.1) Fehler berichten: +---- ----------------- +Um einen Fehler zu berichten, erstellen Sie bitte ein SourceForge-Konto und +folgen Sie dem Link „Bug Tracker“ auf der ScummVM-Website. Bitte stellen Sie +sicher, dass sich der Bug wiedererzeugen lässt und immer noch in der neusten +Version von SVN oder des Daily Builds auftritt. Bitte sehen Sie auch auf der +Kompatibilitätsliste der ScummVM-Website für dieses Spiel nach, um +sicherzustellen, dass das Problem nicht bereits bekannt ist: + + http://www.scummvm.org/compatibility_stable.php + +Bitte berichten Sie keine Fehler zu Spielen, die nicht als durchspielbar im +Bereich „Supported Games“ oder der Kompatibilitätsliste aufgelistet sind. +Wir -wissen-, dass diese Spiele Fehler aufweisen. + +Bitte liefern Sie folgende Informationen: + - ScummVM-Version (BITTE mit neuster Version von SVN oder des Daily Builds + testen) + - Einzelheiten zum Fehler, einschließlich Anweisungen, um den Fehler + hervorzurufen + - Sprache des Spiels (Deutsch, Englisch ...) + - Version des Spiels (Version mit Sprachausgabe [Talkie], + Diskettenversion, ...) + - Plattform und gegebenenfalls Compiler (Win32, Linux, FreeBSD, ...) + - Fügen Sie – wenn möglich - einen Speicherstand hinzu. + - Wenn dieser Fehler erst seit kurzem Auftritt, teilen Sie bitte die letzte + Version ohne den Fehler mit und die erste Version mit diesem Fehler. + Auf diese Weise können wir diesen schneller beseitigen, indem wir die + vorgenommen Veränderungen einsehen. + +Zum Schluss möchten wir Sie noch bitten, jeden Punkt einzeln zu berichten. Bitte +senden Sie nicht mehrere Punkte mit demselben Ticket ein, ansonsten wird es +schwierig, den Status jedes einzelnen Fehlers zu verfolgen. Denken Sie bitte +auch daran, dass alle Fehlerberichte in Englisch verfasst sein müssen. + + +3.0) Unterstützte Spiele: +---- -------------------- +Im Moment gelten folgende Spiele als funktionsfähig gemeldet und sollten bis zum +Ende spielbar sein: + +SCUMM-Spiele von LucasArts: + Maniac Mansion [maniac] + Zak McKracken and the Alien Mindbenders [zak] + Indiana Jones and the Last Crusade [indy3] + Loom [loom] + The Secret of Monkey Island [monkey] + Monkey Island 2: LeChuck's Revenge [monkey2] + Indiana Jones and the Fate of Atlantis [atlantis] + Day of the Tentacle [tentacle] + Sam & Max Hit the Road [samnmax] + Vollgas [ft] + The Dig [dig] + The Curse of Monkey Island [comi] + +AGI-Spiele von Sierra: + The Black Cauldron [bc] + Gold Rush! [goldrush] + King's Quest I [kq1] + King's Quest II [kq2] + King's Quest III [kq3] + King's Quest IV [kq4] + Leisure Suit Larry in the Land of the + Lounge Lizards [lsl1] + Mixed-Up Mother Goose [mixedup] + Manhunter 1: New York [mh1] + Manhunter 2: San Francisco [mh2] + Police Quest I: In Pursuit of the Death + Angel [pq1] + Space Quest I: The Sarien Encounter [sq1] + Space Quest II: Vohaul's Revenge [sq2] + Erstellte Spiele von Fans [agi-fanmade] + +AGOS-Spiele von Adventuresoft/Horrorsoft: + Elvira - Mistress of the Dark [elvira1] + Elvira II - The Jaws of Cerberus [elvira2] + Personal Nightmare [pn] + Waxworks [waxworks] + Simon the Sorcerer 1 [simon1] + Simon the Sorcerer 2 [simon2] + Simon the Sorcerer's Game Pack + - Dämonen in meinem PC [dimp] + Simon the Sorcerer's Game Pack + - Jumble [jumble] + Simon the Sorcerer's Game Pack + - NoPatience [puzzle] + Simon the Sorcerer's Game Pack + - Swampy Adventures [swampy] + Floyd - Es gibt noch Helden [feeble] + +GOB-Spiele von Coktel Vision: + Bargon Attack [bargon] + Gobliiins [gob1] + Gobliins 2 [gob2] + Goblins 3 [gob3] + Lost in Time [lostintime] + Woodruff and the Schnibble of Azimuth [woodruff] + Ween: The Prophecy [ween] + +MADE-Spiele von Activision: + Leather Goddesses of Phobos 2 [lgop2] + Return to Zork [rtz] + Rodney's Funscreen [rodney] + The Manhole [manhole] + +Andere Spiele: + Beneath a Steel Sky [sky] + Baphomets Fluch [sword1] + Baphomets Fluch II: + Die Spiegel der Finsternis [sword2] + Cruise for a Corpse [cruise] + Discworld [dw] + Discworld 2: Vermutlich vermisst [dw2] + Draci Historie [draci] + Drascula: The Vampire Strikes Back [drascula] + Flight of the Amazon Queen [queen] + Future Wars [fw] + Erben der Erde: Die große Suche [ite] + Nippon Safes Inc. [nippon] + The Legend of Kyrandia [kyra1] + The Legend of Kyrandia: The Hand of Fate [kyra2] + The Legend of Kyrandia: Malcolm's Revenge [kyra3] + Touché: Die Abenteuer des fünften + Musketiers [touche] + +SCUMM-Spiele von Humongous Entertainment: + Backyard Baseball [baseball] + Backyard Baseball 2001 [baseball2001] + Backyard Football [football] + Big Thinkers First Grade [thinker1] + Big Thinkers Kindergarten [thinkerk] + Blue's 123 Time Activities [Blues123Time] + Blue's ABC Time Activities [BluesABCTime] + Blue's Art Time Activities [arttime] + Blue's Reading Time Activities [readtime] + Fatty Bear's Birthday Surprise [fbear] + Fatty Bear's Fun Pack [fbpack] + Fritzi Fisch und der verschwundene Schatz [freddi] + Fritzi Fisch und das Flossengespenst [freddi2] + Fritzi Fisch und der Fall der gestohlenen + Trompetenschnecke [freddi3] + Freddi Fisch und das Geheimnis + der Salzwasserschlucht [freddi4] + Freddi Fisch und das Rätsel + der Korallenbucht [freddicove] + Freddi Fish and Luther's Maze Madness [maze] + Freddi Fish and Luther's Water Worries [water] + Let's Explore the Airport with Buzzy [airport] + Let's Explore the Farm with Buzzy [farm] + Let's Explore the Jungle with Buzzy [jungle] + Pyjama Pit: Keine Angst im Dunkeln [pajama] + Pyjama Sam: Donner und Blitz + machen mir nix [pajama2] + Pyjama Sam 3: Süßigkeiten kriegen Saures [pajama3] + Pajama Sam's Lost & Found [lost] + Pajama Sam's Sock Works [socks] + Putt-Putt Joins the Parade [puttputt] + Putt-Putt Goes to the Moon [puttmoon] + Töff-Töff rettet den Zoo [puttzoo] + Töff-Töff reist durch die Zeit [putttime] + Töff-Töff und das große Rennen [puttrace] + Töff-Töff geht zum Zirkus [puttcircus] + Putt-Putt and Pep's Balloon-O-Rama [balloon] + Putt-Putt and Pep's Dog on a Stick [dog] + Putt-Putt & Fatty Bear's Activity Pack [activity] + Putt-Putt's Fun Pack [funpack] + SPY Fox: Das Milchkartell [spyfox] + SPY Fox: Operation Robobund [spyfox2] + SPY Fox: Alarm im Weltall [spyozon] + SPY Fox in Cheese Chase [chase] + SPY Fox in Hold the Mustard [mustard] + +Spiele von Living Books: + Aesop's Fables: The Tortoise and the Hare [tortoise] + Arthur's Birthday [arthurbday] + Arthur's Teacher Trouble [arthur] + Dr. Seuss's ABC [seussabc] + Green Eggs and Ham [greeneggs] + Harry and the Haunted House [harryhh] + Just Grandma and Me [grandma] + Little Monster at School [lilmonster] + Ruff's Bone [ruff] + Sheila Rae, the Brave [sheila] + Stellaluna [stellaluna] + The Berenstain Bears Get in a Fight [bearfight] + The Berenstain Bears in the Dark [beardark] + The New Kid on the Block [newkid] + +Die folgenden Spiele sollten geladen werden, sind aber noch nicht vollständig +spielbar. Spielen erfolgt auf eigenes Risiko. Bitte reichen Sie für diese Spiele +keine Fehlerberichte ein. +Wenn Sie über den neusten Stand bezüglich der Kompatibilität des Spiels erfahren +möchten, besuchen Sie unsere Website und schauen Sie in der Kompatibilitätsliste +nach. + + Backyard Baseball 2003 [baseball2003] + Backyard Football 2002 [football2002] + Backyard Soccer [soccer] + Backyard Soccer MLS [soccermls] + Backyard Soccer 2004 [soccer2004] + Blue's Birthday Adventure [BluesBirthday] + Blue's Treasure Hunt [BluesTreasureHunt] + Pajama Sam: Games to Play on Any Day [pjgames] + +Die folgenden Spiele basieren auf der SCUMM-Engine, werden aber (noch) nicht von +ScummVM unterstützt: + + Andere Spiele von Humongous Entertainment + +Seien Sie sich bitte bewusst, dass die Engines („Motoren“ der Spiele) Fehler +enthalten können und manche Funktionen möglicherweise fehlen, was es unmöglich +macht, das Spiel zu Ende zu spielen. Speichern Sie oft und bitte schicken Sie +englische Fehlerberichte ein (Anweisungen zum Senden von Fehlerberichten finden +Sie oben), wenn Sie einen solchen Fehler in einem „unterstützten“ Spiel +vorfinden. + + +3.1) Kopierschutz: +---- ------------- +Das ScummVM-Team duldet keine Spielepiraterie. Es gibt jedoch Fälle, in denen +die Spielefirmen (wie beispielsweise LucasArts) selbst „gecrackte“ +Ausführdateien in ihre Spiele gepackt haben -- in diesen Fällen beinhalten die +Dateien des Spiels immer noch die Kopierschutzskripte, aber der Interpreter +umgeht sie (ähnlich wie illegale gecrackte Versionen es tun können, nur dass es +hier der Spielehersteller getan hat). Es gibt für uns keinerlei Möglichkeit, den +Unterschied zwischen einer legitimen und einer illegalen Spieldatei zu erkennen, +also wird ScummVM bei Spielen, von denen wir wissen, dass eine gecrackte Version +des Orginalinterpreters zu irgendeinem Zeitpunkt verkauft wurde, immer den +Kopierschutz umgehen müssen. + +In einigen Fällen wird ScummVM immer noch den Kopierschutzbildschirm anzeigen. +Versuchen Sie, irgendeine Antwort einzugeben. Die Chancen stehen gut, dass sie +akzeptiert wird. + +ScummVM wird den Kopierschutz in folgenden Spielen überspringen: + + * Maniac Mansion + * Zak McKracken and the Alien Mindbenders + * Loom (EGA) + * The Secret of Monkey Island (VGA) + * Monkey Island 2: LeChuck's Revenge + * Beneath a Steel Sky + -- umgangen mit freundlicher Genehmigung von Revolution Software. + * Erben der Erde: Die große Suche (Diskettenversion) + -- umgangen mit freundlicher Genehmigung von Wyrmkeep Entertainment, + da er in allen CD-Versionen des Spiels umgangen wurde. + * Simon the Sorcerer 1 (Diskettenversion) + * Simon the Sorcerer 2 (Diskettenversion) + -- umgangen mit freundlicher Genehmigung von Adventure Soft, + da er in allen CD-Versionen des Spiels umgangen wurde. + * Waxworks + +3.2) Hinweise zu Commodore64-Spielen: +---- -------------------------------- +Sowohl Maniac Mansion als auch Zak McKracken laufen, aber Maniac Mansion ist +noch nicht spielbar. Benennen Sie einfach die D64-Datenträger um in +„maniac1.d64“ und „maniac2.d64“ und entsprechend „zak1.d64“ und „zak2.d64“, dann +sollte ScummVM in der Lage sein, das Spiel automatisch zu erkennen, wenn Sie auf +das richtige Verzeichnis zeigen. + +Alternativ können Sie „extract_mm_c64“ aus dem Tools-Paket verwenden, um die +Spieldateien zu extrahieren. Dann wird das Spiel jedoch nicht einwandfrei von +ScummVM automatisch erkannt und Sie müssen sicherstellen, dass Commodore64 als +Plattform eingestellt ist. Wir empfehlen, auf die viel einfachere Methode +zurückzugreifen, die im vorherigen Absatz beschrieben ist. + + +3.3) Hinweise zu Maniac Mansion NES: +---- ------------------------------- +Unterstützte Versionen sind Deutsch (G) [G=German], Englisch GB (E), Französisch +(F), Italienisch (I), Schwedisch (SW) und Englisch US (U). ScummVM benötigt nur +den PRG-Bereich und nicht die gesamte ROM-Datei, um das Spiel laufen zu lassen. + +Damit das Spiel funktioniert, müssen Sie die ersten 16 Bytes aus der ROM-Datei +entfernen, die Sie verwenden wollen. Das klappt mit jedem Hexeditor, solange Sie +mit diesem kopieren und einfügen können. Nachdem Sie die ROM-Datei mit dem +Hexeditor geöffnet haben, kopieren Sie alles von der zweiten Reihe (17. Byte) +bis zum Ende. Danach fügen Sie den kopierten Inhalt in eine neue Hexdatei ein. +Speichern Sie die neue Datei unter dem Namen „Maniac Mansion (XX).prg“, wobei XX +für die Sprachversion steht, die Sie verwenden wollen (G, E, F, I, SW oder U). +Die Größe der neuen Datei sollte genau 262144 Bytes betragen. + +Wenn Sie das Spiel manuell hinzufügen, stellen Sie sicher, dass die Plattform +auf NES eingestellt ist. + +Die häufigsten Fehler, die verhindern, dass das Spiel läuft: + + * Fehlerhafte Datei + * ROM extrahiert mit den Tools der Version 0.7.0 + * Sie versuchen, in ScummVM die VOLLE ROM-DATEI zu laden und nicht nur den + PRG-Bereich. + +Es ist auch möglich, die einzelnen LFL-Dateien aus dem PRG-Bereich zu +extrahieren. Um dies zu tun, verwenden Sie das Dienstprogramm „extract_mm_nes“ +aus dem Tools-Paket. + + +3.4) Hinweise zu Macintosh-Spielen: +---- ------------------------------ +Alle auf SCUMM basierenden Adventures von Lucasarts, mit Ausnahme von COMI, +existieren auch als Versionen für den Macintosh. ScummVM kann die meisten +(alle?) von diesen verwenden, jedoch ist in manchen Fällen zusätzliche Arbeit +erforderlich. Zuallererst: Wenn Sie keinen Macintosh dafür verwenden, könnte es +kompliziert werden, auf die CD- oder Diskettendaten zuzugreifen. Der Grund +hierfür ist, dass der Mac ein spezielles Datenträgerformat nutzt, welches sich +HFS nennt, und das andere Systeme normalerweise nicht unterstützen. Es gibt +jedoch zahlreiche kostenlose Tools, die es ermöglichen, einen solchen HFS- +Datenträger zu lesen. Z. B. „HFVExplorer“ für Windows und „hfsutils“ für Linux +und andere Betriebssysteme, die Unix ähnlich sind. + +Die meisten neueren Spiele für den Macintosh wurden nur mit einer einzigen +Spieldatei ausgeliefert (beachten Sie, dass in manchen Fällen diese Spieldatei +unsichtbar gemacht wurde und Sie somit zusätzliche Tools benötigen, um diese zu +kopieren). ScummVM ist in der Lage, eine solche Spieldatei direkt zu verwenden; +verweisen Sie ScummVM einfach auf das Verzeichnis, welches diese enthält und es +sollte klappen (so wie mit jedem anderen unterstützten Spiel). + +Wir stellen außerdem ein Tool mit dem Namen „extract_scumm_mac“ im Tools-Paket +zur Verfügung, um die Daten aus diesen Spieldateien zu extrahieren, aber dies +ist weder erforderlich noch wird es empfohlen. + +Für weitere Informationen dazu, wie Sie Macintosh-Spieldateien auf Ihre +Festplatte kopieren können, lesen Sie: + + http://wiki.scummvm.org/index.php/HOWTO-Mac_Games + + +3.5) Hinweise zu Spielen auf mehren CDs: +---- ----------------------------------- +Allgemein kann ScummVM nicht sehr gut mit Spielen auf mehreren CDs umgehen. Das +liegt daran, dass ScummVM annimmt, alles von einem Spiel in einem Verzeichnis +vorzufinden. Selbst wenn ScummVM einige Fälle berücksichtigt und den Anwender +dazu auffordert, die CD zu wechseln, so installierten die ursprünglichen +ausführbaren Dateien des Spiels normalerweise eine kleine Anzahl an Dateien auf +die Festplatte. Sofern diese Dateien nicht auf allen CDs vorgefunden werden +können, wird ScummVM Schwierigkeiten haben. + +Glücklicherweise hat ScummVM keine Probleme damit, die Spiele komplett von der +Festplatte aus laufen zu lassen, wenn Sie ein Verzeichnis mit der richtigen +Kombination der Dateien erstellen. Wenn eine Datei auf mehr als einer CD +vorkommt, ist es normalerweise egal, welche sie in das Verzeichnis +hineinkopieren. + + +3.6) Hinweise zu The Curse of Monkey Island: +---- --------------------------------------- +Für dieses Spiel benötigen Sie die Dateien comi.la0, comi.la1 und comi.la2. Die +Datei comi.la0 kann auf beiden CDs vorgefunden werden, ist aber auf beiden +identisch, womit es egal ist, welche der beiden Sie verwenden. + +Zusätzlich müssen Sie ein Unterverzeichnis namens „resource“ erstellen, das alle +Dateien des Unterverzeichnisses „resource“ auf –beiden- CDs beinhaltet. Einige +dieser Dateien lassen sich auf beiden CDs vorfinden, jedoch sind sie auch in +diesem Fall identisch. + + +3.7) Hinweise zu den Baphomets-Fluch-Spielen: +---- ---------------------------------------- +Die Anweisungen für die Baphomets-Fluch-Spiele sind für die ausverkauften +Software-Versionen, bei welchen sich jedes Spiel auf je zwei CDs befindet, da +diese am leichtesten erhältlich waren, als ScummVM Unterstützung für diese +Spiele erlangte. Wir hoffen, dass sie allgemein ausreichend ausführlich sind, um +für andere Ausgaben genauso hilfreich zu sein. + + +3.7.1) Zwischensequenzen der Baphomets-Fluch-Spiele: +------ --------------------------------------------- +Die Zwischensequenzen für die Baphomets-Fluch-Spiele haben eine kleine +Geschichte (schauen Sie im nächsten Abschnitt, wenn Sie interessiert sind), aber +im Großen und Ganzen müssen Sie nur die .SMK-Dateien aus den „SMACKS“- oder +„SMACKSHI“-Verzeichnissen auf den CDs in dasselbe Verzeichnis wie die anderen +Spieldateien kopieren. (Baphomets Fluch hat ein „SMACKSLO“-Verzeichnis mit +denselben Zwischensequenzen, aber diese sind von niedrigerer Qualität.) Sie +können sie auch in einem Unterverzeichnis namens „video“ ablegen, wenn Ihnen das +lieber ist. + +Einige Neuausgaben der Spiele, wie beispielsweise die PlayStation-Version, haben +keine Smacker-Videos. Revolution Software hat uns freundlicherweise erlaubt, die +Zwischensequenzen umgewandelt auf unserer Website als Download zur Verfügung zu +stellen. Siehe hierfür: + + http://www.scummvm.org/downloads.php + +Diese Zwischensequenzen werden im DXA-Format mit FLAC-Audio zur Verfügung +gestellt. Ihre Qualität ist durch die Verwendung verlustfreier Kompression +gleich wie im Originalspiel. Um diese Zwischensequenzen abspielen zu können, ist +eine Version von ScummVM erforderlich, die sowohl mit Unterstützung von FLAC als +auch zlib kompiliert wurde. + +Für Systeme, die zu langsam sind, um die Entschlüsselung von FLAC-Audio zu +handhaben, wird die Tonspur für diese Zwischensequenzen gesondert auch mit Ogg- +Vorbis-Audio angeboten. Um diese Zwischensequenzen mit Ogg-Vorbis-Audio +abspielen zu können, ist eine Version von ScummVM erforderlich, die sowohl mit +Unterstützung von libVorbis als auch zlib kompiliert wurde. + +Für Baphomets Fluch bieten wir auch ein Untertitel-Paket an. Entpacken Sie es +einfach und folgen Sie den Anweisungen in der liesmich.txt. (Baphomets Fluch II +hat bereits Untertitel; für diese ist keine zusätzliche Arbeit notwendig.) + + +3.7.2) Zwischensequenzen der Baphomets-Fluch-Spiele im Rückblick +------ --------------------------------------------------------- +Die Originalausgaben der Baphomets-Fluch-Spiele verwendeten das Smackerâ„¢-Format +der RAD Game Tools. Da RAD uns nicht die ältere Ur-Version dieses Formats +offenlegen wollte und uns aufforderte, es nicht mittels Reverse Engineering zu +rekonstruieren, musste eine alternative Lösung gefunden werden. + +In Baphomets Fluch II war es möglich, die Sprachausgabe ohne das Video +wiederzugeben. Dies blieb bis ScummVM 1.0.0 eine Ausweichmöglichkeit, war aber +nie die alleinige Lösung für eine stabile Veröffentlichung. + +In ScummVM 0.6.0 verwendeten wir MPEG, das einen zumutbaren Kompromiss zwischen +Größe und Qualität bot. In ScummVM 0.10.0 wurde dies durch DXA abgelöst (das +ursprünglich für Adventure Softs „Floyd – Es gibt noch Helden“ hinzugefügt +wurde). Dies gab uns die Möglichkeit, die Zwischensequenzen mit genau derselben +Qualität wie im Original anzubieten, zu dem Preis, dass die Dateien größer +waren. + +Schließlich wurde Anfang 2006 das Smacker-Format für das FFmpeg-Projekt mittels +Reverse Engineering rekonstruiert. Dank der harten Arbeit in diesem Projekt +unterstützt ScummVM nun die originalen Zwischensequenzen. Zur selben Zeit wurde +die MPEG-Unterstützung eingestellt. Vom technischen Standpunkt war das eine gute +Sache, da das Entschlüsseln von MPEG-Filmen mit vielen Schwierigkeiten verbunden +war und diese ohnehin nicht so gut aussahen wie Smacker- und DXA-Versionen. + + +3.7.3) Baphomets Fluch: +------ ---------------- +Für dieses Spiel benötigen Sie die Dateien aus dem Verzeichnis clusters von +beiden CDs. Für die Windows- und Macintosh-Versionen benötigen Sie auch die +Datei speech.clu aus dem Verzeichnis speech von beiden CDs. Da diese jedoch +nicht identisch sind, müssen Sie diese in speech1.clu und speech2.clu für CD 1 +und 2 entsprechend umbenennen. Die PlayStation-Version erfordert die Dateien +speech.tab, speech.dat, speech.lis, und speech.inf. + +Zusätzlich benötigen die Windows- und Macintosh-Versionen das Unterverzeichnis +„music“ mit allen Dateien der „music“-Unterverzeichnisse auf beiden CDs. Einige +dieser Dateien tauchen auf beiden CDs auf, aber in diesen Fällen sind sie +entweder identisch oder in einem Fall nahezu so identisch, dass es wenig +Unterschied macht. Die PlayStation-Version erfordert die Dateien tunes.dat und +tunes.tab. + + +3.7.4) Baphomets Fluch II: +------ ------------------- +Für dieses Spiel benötigen Sie die Dateien aus dem Verzeichnis clusters von +beiden CDs. (Ein paar von ihnen sind streng genommen eigentlich nicht notwendig, +aber diejenigen, über die Unsicherheit besteht, sind alle ziemlich klein.) +Sie müssen die Dateien speech.clu und music.clu umbenennen, und zwar in +speech1.clu, speech2.clu, music1.clu und music2.clu, sodass ScummVM weiß, welche +der Dateien von CD 1 und welche von CD 2 sind. Alle anderen Dateien, die in +beiden „clusters“-Verzeichnissen auftauchen, sind identisch. Verwenden Sie in +diesen Fällen die Datei, die Sie möchten. + +Zusätzlich brauchen Sie die Datei cd.inf und optional die Datei startup.inf aus +dem Verzeichnis sword2 von CD 1. + + +3.8) Hinweise zu Beneath a Steel Sky: +---- -------------------------------- +Beginnend mit ScummVM 0.8.0 benötigen Sie die zusätzliche Datei „SKY.CPT“, um +Beneath a Steel Sky laufen lassen. + +Diese Datei ist auf der Seite „Downloads“ der ScummVM-Website verfügbar. Sie +können sie entweder im Verzeichnis mit den anderen Spieldateien (SKY.DNR, +SKY.DSK) ablegen, in einem Extrapfad oder im Verzeichnis, in dem sich Ihre +ausführbare ScummVM-Datei befindet. + + +3.9) Hinweise zu Flight of the Amazon Queen: +---- --------------------------------------- +Um eine Nicht-Freeware-Version von Flight of the Amazon Queen zu verwenden (von +einer Original-CD), müssen Sie die Datei „queen.tbl“ (erhältlich von der Seite +„Downloads“ auf unserer Website) entweder im Verzeichnis mit der Spieldatei +„queen.1“ ablegen, in einem Extrapfad oder im Verzeichnis, in dem sich Ihre +ausführbare ScummVM-Datei befindet. + +Alternativ können Sie das Tool „compress_queen“ aus dem Tools-Paket verwenden, +um Ihre FOTAQ-Spieldatei neu „zusammenzubauen“, um die Tabellendatei für diese +spezielle Version miteinzubeziehen und somit die Laufzeit-Abhängigkeit von der +Datei „queen.tbl“ zu lösen. Dieses Tool kann auch die Sprachausgabe und +Soundeffekte mittels MP3, OGG oder FLAC komprimieren. + + +3.10) Hinweise zu Gobliiins: +----- ---------------------- +Die CD-Versionen der Gobliiins-Serie enthalten einen großen Audio-Titel, den Sie +extrahieren müssen (siehe Abschnitt über die Verwendung komprimierter Audio- +Dateien) sowie ins Spielverzeichnis kopieren, wenn Sie Musik im Spiel hören +möchten, ohne die CD die ganze Zeit im Laufwerk haben zu müssen. Die +Sprachausgabe ist auch in diesem Titel und ihre Lautstärke wird deshalb ebenso +über die Musiklautstärke-Regelung geändert. + + +3.11) Hinweise zu Inherit the Earth: Quest for the Orb (Macintosh): +----- ------------------------------------------------------------- +Um die Neuausgabe des Spiels für Mac OS X von Wyrmkeep laufen zu lassen, müssen +Sie die Daten von der CD auf die Festplatte kopieren. Wenn Sie an einem PC +arbeiten, lesen Sie hierfür: + + http://wiki.scummvm.org/index.php/HOWTO-Mac_Games + +Obwohl hier in erster Linie über SCUMM-Spiele gesprochen wird, findet das +Dienstprogramm „HFVExplorer“ Erwähnung, welches Sie benötigen, um die Dateien zu +extrahieren. Beachten Sie, dass Sie die Sprachausgabedaten aus „Inherit the +Earth Voices“ im selben Verzeichnis ablegen müssen wie die Spieldaten, die sich +an folgendem Ort befinden: + + Inherit the Earth.app/Contents/Resources + +Bei der alten Ausgabe für Mac OS 9 müssen Sie die Dateien im MacBinary-Format +kopieren, da sie sowohl Ressourcen- und Datenverzweigungen beinhalten sollten. +Kopieren Sie alle „ITE *“-Dateien. + + +3.12) Hinweise zu Simon the Sorcerer 1 und 2: +----- --------------------------------------- +Wenn Sie die Doppel-Version von Simon the Sorcerer 1 oder 2 auf CD haben, finden +Sie die Windows-Version im Hauptverzeichnis der CD und die DOS-Version im +DOS-Verzeichnis der CD. + + +3.13) Hinweise zu Floyd – Es gibt noch Helden: +----- ---------------------------------------- +Wenn Sie die Windows-Version von Floyd – Es gibt noch Helden haben, sind einige +Dinge zu beachten. + +Viele notwendige Dateien für das Spiel sind in einer InstallShield-Datei namens +data1.cab gespeichert, die ScummVM nicht entpacken kann. Sie müssen das +Original-Installationsprogramm oder i5comp verwenden, um die Inhalte dieser +Datei zu entpacken. Das Tool i5comp für die Dekompression kann durch Suchen im +Internet gefunden werden. + +Um die Sprachdateien in ScummVM zu verwenden, müssen sie nach dem Kopiervorgang +wie folgt umbenannt werden: +voices.wav von CD1 in voices1.wav +voices.wav von CD2 in voices2.wav +voices.wav von CD3 in voices3.wav +voices.wav von CD4 in voices4.wav + + +3.14) Hinweise zu The Legend of Kyrandia: +----- ----------------------------------- +Um The Legend of Kyrandia unter ScummVM laufen zu lassen, benötigen Sie die +Datei „kyra.dat“, welche auf der Seite „Downloads“ der ScummVM-Website gefunden +werden kann. + + +3.15) Hinweise zum vorhersagenden Eingabedialog bei Sierras AGI-Spielen: +----- ------------------------------------------------------------------ +Der vorhersagende Eingabedialog ist ein ScummVM-Hilfsmittel, um die englischen +Spiele der AGI-Engine (die offensichtlich Kommandozeilen-Eingabe erfordern) auf +Geräten laufen zu lassen, die eingeschränkte Tastatur-Unterstützung haben. Da es +mühsam ist, mit emulierten Tastaturen zu tippen, können in solchen Fällen +Befehle schnell und einfach über den vorhersagenden Eingabedialog eingegeben +werden. + +Um die vorhersagende Eingabe in AGI-Spielen zu aktivieren, müssen Sie die Datei +pred.dic in den Extrapfad von ScummVM oder in das Verzeichnis des Spiels +kopieren, das Sie spielen möchten. Dieses Wörterbuch wurde erstellt, indem alle +bekannten AGI-Spiele analysiert wurden, und enthält den maximalen Satz +gebräuchlicher Wörter. + +Wenn das Wörterbuch erkannt wurde, wird der vorhersagende Eingabedialog entweder +durch Klicken auf den Kommandozeilenbereich angezeigt (dort, wo auch immer eine +Tastatureingabe erforderlich ist, auch in Dialogfeldern) oder in einigen Ports +durch Drücken eines bestimmten Tastenkürzels. + +Der vorhersagende Eingabedialog funktioniert in drei Modi, zwischen denen mit +der Schaltfläche (*)Pre/123/Abc gewechselt werden kann. Die primäre +Eingabemethode ist der vorhersagende Modus (Pre), welcher der Worterkennung bei +„schnellem Tippen“ auf Mobilfunktelefonen ähnelt. Das Alphabet ist in neun +Gruppen unterteilt, die naturgemäß den neun Ziffern auf dem Ziffernblock +zugeteilt sind (0 ist die Leertaste). Um ein Wort einzugeben, drücken Sie einmal +die Ziffer der Gruppe, die den Buchstaben des Worts enthält, den Sie tippen +möchten, dann gehen Sie zum nächsten Buchstaben über. Um z. B. den Befehl „look“ +einzugeben, sollten Sie 5665 drücken. Während Sie schrittweise die Ziffernfolge +des beabsichtigten Wortes eingeben, wird auf das Wörterbuch zugegriffen, um +bekannte Wörter, die mit Ihrer Eingabe bis zu diesem Punkt übereinstimmen, zu +finden. Während Sie mehr und mehr Tasten drücken, läuft die Vorhersage auf das +richtige Wort zu. Das ist der Grund, warum das angezeigte Wort sich zwischen +einem Tastendruck drastisch verändern kann. Es gibt jedoch Fälle, in denen mehr +als ein Wort dieselbe Zahlenkombination teilen. Z. B. haben die Worte „quit“ und +„suit“ dieselbe Nummer, nämlich 7848. In diesen Fällen hilft die Schaltfläche +(#)next weiter. Durch ihre Betätigung können Sie durch die Liste der Wörter +schalten, welche denselben Zahlencode haben und schließlich das richtige Wort +akzeptieren, indem Sie die (0) für Leertaste oder OK drücken. + +Die zweite Eingabemethode (123) ist die numerische Eingabe: Jede Taste, die Sie +drücken, wird als tatsächliche Ziffer eingegeben. + +Die dritte Eingabemethode (Abc) ist die Multi-Tipp-Alpha-Eingabemthode. Dieser +Modus ist dazu gedacht, um freien Text einzugeben, ohne die Hilfe des +Wörterbuchschemas des vorhersagenden Modus (Pre). Der Text wird Buchstabe für +Buchstabe eingegeben. Für jeden Buchstaben drücken Sie zuerst die Ziffer der +Gruppe, die den Buchstaben beinhaltet, den Sie tippen wollen, dann verwenden Sie +die Schaltfläche (#)next, um durch die Buchstaben zu schalten, bis der richtige +erscheint, und wiederholen dies mit der nächsten Ziffer. Um z. B. das Wort +„look“ einzugeben, müssen Sie folgendes Drücken: 5##6##6##5# + +Der Dialog kann vollständig mit der Maus verwendet werden, aber ein paar +Maßnahmen wurden getroffen, um dessen Verwendung bei einigen ScummVM-Ports +komfortabler zu gestalten, indem naturgemäß dessen Funktionsweise dem +Ziffernblock zugewiesen wurde. Ebenso können die Schaltflächen mittels der +Pfeiltasten und der Eingabetaste gesteuert werden. + + +(Übersetzung basiert auf README mit SHA1 ID: +eae06884b6c6da23b7932ceba65e435d9be6ef82) diff --git a/doc/de/Schnellstart b/doc/de/Schnellstart new file mode 100644 index 0000000000..dcefadb702 --- /dev/null +++ b/doc/de/Schnellstart @@ -0,0 +1,176 @@ +Dieses Dokument ist eine auszugsweise Übersetzung der englischen REAMDE-Datei. +Das Original-Dokument enthält viel mehr Informationen. Sollten Sie hier also +nicht das finden, was Sie benötigen und ein wenig Englisch können, sollten Sie +sich die englische README-Datei ansehen. + +Für weitere Informationen, Kompatibilitätslisten, Einzelheiten zu Spenden, die +neusten veröffentlichten Versionen, Fortschrittsberichte und mehr besuchen Sie +bitte die ScummVM-Website unter der Adresse: http://www.scummvm.org/ + + +Inhaltsverzeichnis: +------------------ +1.0) Einführung + * 1.1 Über ScummVM + * 1.2 Schnellstart +2.0) Kontakt + * 2.1 Fehler berichten + + +1.0) Einführung: +---- ------------- + +1.1) Über ScummVM: +---- ------------- +ScummVM ist ein Programm, welches es Ihnen ermöglicht, bestimmte klassische +Grafik-Adventure (unter anderem aus dem Point-and-Click-Bereich) zu spielen, +vorausgesetzt, Sie sind im Besitz der Dateien des Spiels. Der Trick dabei ist: +ScummVM ersetzt lediglich die Funktion der ausführbaren Dateien, die mit den +Spielen kamen, was ermöglicht, diese Spiele auf Systemen zu spielen, für welche +sie nie erstellt wurden! + +Ursprünglich wurde dieses Programm dafür entwickelt, um SCUMM-Spiele von +LucasArts auszuführen, wie beispielsweise Maniac Mansion, Monkey Island, Day of +the Tentacle oder Sam & Max. SCUMM steht als Abkürzung für „Script Creation +Utility for Maniac Mansion“ (deutsch etwa: Skripterstellungsdienstprogramm für +Maniac Mansion), was das erste Spiel von LucasArts war, für welches LucasArts +dieses System entworfen hatte. Und viel später verlieh es seinen Namen an +ScummVM (wobei „VM“ für „Virtuelle Maschine“ steht). + +Mit der Zeit wurde Unterstützung für viele Nicht-SCUMM-Spiele hinzugefügt und +ScummVM unterstützt nun auch viele AGI- und SCI-Spiele von Sierra (wie +beispielsweise King's Quest 1-6, Space Quest 1-5, ...), Discworld 1 und 2, Simon +the Sorcerer 1 und 2, Beneath A Steel Sky, Lure of the Temptress, Baphomets +Fluch I und II, Flight of the Amazon Queen, Gobliiins 1-3, die Adventure-Reihe +The Legend of Kyrandia, viele der SCUMM-Spiele für Kinder von Humongous +Entertainment (einschließlich der Spiele von Fritzi Fisch und Töff-Töff) und +viele mehr. Sie können eine vollständige Liste mit Einzelheiten einsehen, welche +Auskunft darüber gibt, welche Spiele unterstützt werden und wie gut. Gehen Sie +hierfür auf die Kompatibilitätsseite. ScummVM wird fortlaufend verbessert, also +schauen Sie öfter einmal vorbei. + +Unter den Systemen, mit denen Sie diese Spiele spielen können, befinden sich +normale Schreibtisch-Computer (mit den Betriebssystemen Windows, Linux, +Mac OS X, ...), Spielekonsolen (Dreamcast, Nintendo DS & Wii, PS2, PSP, ...), +Smartphones (Android, iPhone, PocketPC, Symbian ...) und einige weitere. + +Zurzeit befindet sich ScummVM immer noch stark in der Entwicklung. Seien Sie +sich bewusst, dass wir zwar versuchen, dass viele Spiele mit wenigen erheblichen +Fehlern durchgespielt werden können, aber es dennoch zu Abstürzen kommen kann +und wir keine Gewähr übernehmen. Davon abgesehen: Einige Spiele werden seit +längerer Zeit unterstützt und sollten in jeder neusten stabilen veröffentlichten +Version ohne größere Probleme laufen. Sie können sich einen Eindruck davon +verschaffen, wie gut jedes Spiel unter ScummVM läuft, indem Sie auf die +Kompatibilitätsseite schauen. Wenn Sie sich ein wenig im Internet umsehen, +können Sie feststellen, dass ScummVM sogar kommerziell genutzt wird, um einige +der unterstützen Spiele für moderne Plattformen wiederzuveröffentlichen. Dies +zeigt, dass mehrere Firmen mit der Qualität der Software zufrieden sind und wie +gut einige der Spiele mit Hilfe des Programms laufen. + +Wenn Ihnen ScummVM gefällt, können Sie uns gerne Geld spenden, indem Sie auf die +PayPal-Schaltfläche auf der ScummVM-Website klicken. Dies hilft uns dabei, +notwendige Dienstprogramme zu kaufen, um ScummVM einfacher und schneller zu +entwickeln. Wenn Sie nicht spenden können, dürfen Sie auch gerne einen Patch +beisteuern. + +1.2) Schnellstart: +---- ------------- +WICHTIG: In dieser kurzen Anleitung wird davon ausgegangen, dass Sie ScummVM auf +Deutsch benutzen. Standardmäßig wird ScummVM die Sprache Ihres Betriebssystems +verwenden. Wenn Sie ScummVM lieber auf Englisch verwenden möchten, benutzen Sie +bitte die Anleitung in der englischen README-Datei. + +Für die ungeduldigen unter den Anwendern ist hier in fünf einfachen Schritten +kurz beschrieben, wie man ScummVM lauffähig macht und das Programm verwendet. + +1. Laden Sie ScummVM unter der Adresse http://www.scummvm.org/downloads.php +herunter und installieren Sie es. + +2. Erstellen Sie ein Verzeichnis auf Ihrer Festplatte und kopieren Sie die +Dateien des Spiels vom Original-Datenträger in dieses Verzeichnis. Wiederholen +Sie diesen Vorgang für jedes Spiel, das Sie spielen möchten (es ist besser, für +jedes Spiel ein eigenes Verzeichnis zu verwenden). + +3. Starten Sie ScummVM. + +Sollte an diesem Punkt ScummVM auf Englisch statt auf Deutsch erscheinen, gehen +Sie wie folgt vor, um die Spracheinstellung zu ändern: +-Klicken Sie auf „Options“. +-Klicken Sie auf den rechten Pfeil in der Reiterleiste und wählen den Reiter + „Misc“ aus. +-Wählen Sie im Feld „GUI Language“ „Deutsch“ aus und klicken auf „OK“. +-Bestätigen Sie die erscheinende Nachricht, klicken auf „Quit“, um ScummVM zu + beenden, und starten dann das Programm erneut. + +Nun klicken Sie auf „Spiel hinzufügen“, wählen das Verzeichnis mit den Dateien +des Spiels aus (versuchen Sie nicht, die Dateien des Spiels selbst auszuwählen!) +und klicken Sie auf „Auswählen“. + +4. Ein Dialog sollte erscheinen, der Ihnen ermöglicht, verschiedene +Einstellungen vorzunehmen, sollten Sie dies wünschen (es sollte jedoch in +Ordnung sein, alles voreingestellt zu belassen). Bestätigen Sie diesen Dialog. + +5. Wählen Sie das Spiel aus der Liste aus, welches Sie spielen möchten, und +klicken Sie auf „Starten“. + +ScummVM behält die Spiele in der Liste, die Sie hinzufügen. Wenn Sie also +ScummVM schließen, werden beim nächsten Start alle Spiele, die Sie zuvor +hinzugefügt haben, in der Liste angezeigt. Sie können somit direkt zu Schritt 5 +übergehen, außer Sie wollen noch mehr Spiele hinzufügen. + +Tipp: Wenn Sie mehrere Spiele auf einmal hinzufügen möchten, drücken Sie die +Umschalt-Taste (Shift), bevor Sie auf „Spiel hinzufügen“ klicken. Diese +Schaltfläche wird somit ihren Text zu „Durchsuchen“ umändern und wenn Sie dann +auf diese klicken, werden Sie auch dazu aufgefordert, ein Verzeichnis +auszuwählen, nur dieses Mal wird ScummVM alle Unterverzeichnisse automatisch +nach unterstützen Spielen durchsuchen. + + +2.0) Kontakt: +---- -------- +Der einfachste Weg, um mit dem ScummVM-Team in Verbindung zu treten, ist, +Fehlerberichte einzusenden (siehe Abschnitt 2.1) oder durch Verwendung des +Forums unter der Adresse http://forums.scummvm.org . +Sie können ebenso der Mailing-Liste scummvm-devel beitreten und an diese E-Mails +versenden oder mit uns im IRC chatten (#scummvm unter irc.freenode.net). Bitte +fordern Sie uns nicht dazu auf, ein nicht unterstütztes Spiel zu unterstützen. +Lesen Sie zuerst die Seite FAQ (Häufig gestellte Fragen) auf unserer Website. +Bitte beachten Sie, dass die offizielle Sprache des Forums, der Mailing-Liste +und des Chats Englisch ist und keine andere Sprache dort verwendet werden +sollte. + + +2.1) Fehler berichten: +---- ----------------- +Um einen Fehler zu berichten, erstellen Sie bitte ein SourceForge-Konto und +folgen Sie dem Link „Bug Tracker“ auf der ScummVM-Website. Bitte stellen Sie +sicher, dass sich der Bug wiedererzeugen lässt und immer noch in der neusten +Version von SVN oder des Daily Builds auftritt. Bitte sehen Sie auch auf der +Kompatibilitätsliste der ScummVM-Website für dieses Spiel nach, um +sicherzustellen, dass das Problem nicht bereits bekannt ist: + + http://www.scummvm.org/compatibility_stable.php + +Bitte berichten Sie keine Fehler zu Spielen, die nicht als durchspielbar im +Bereich „Supported Games“ oder der Kompatibilitätsliste aufgelistet sind. +Wir -wissen-, dass diese Spiele Fehler aufweisen. + +Bitte liefern Sie folgende Informationen: + - ScummVM-Version (BITTE mit neuster Version von SVN oder des Daily Builds + testen) + - Einzelheiten zum Fehler, einschließlich Anweisungen, um den Fehler + hervorzurufen + - Sprache des Spiels (Deutsch, Englisch ...) + - Version des Spiels (Version mit Sprachausgabe [Talkie], + Diskettenversion, ...) + - Plattform und gegebenenfalls Compiler (Win32, Linux, FreeBSD, ...) + - Fügen Sie – wenn möglich - einen Speicherstand hinzu. + - Wenn dieser Fehler erst seit kurzem Auftritt, teilen Sie bitte die letzte + Version ohne den Fehler mit und die erste Version mit diesem Fehler. + Auf diese Weise können wir diesen schneller beseitigen, indem wir die + vorgenommen Veränderungen einsehen. + +Zum Schluss möchten wir Sie noch bitten, jeden Punkt einzeln zu berichten. Bitte +senden Sie nicht mehrere Punkte mit demselben Ticket ein, ansonsten wird es +schwierig, den Status jedes einzelnen Fehlers zu verfolgen. Denken Sie bitte +auch daran, dass alle Fehlerberichte in Englisch verfasst sein müssen. diff --git a/doc/translations/fr/Lisezmoi.txt b/doc/fr/QuickStart_fr index 186f0cd24d..186f0cd24d 100755..100644 --- a/doc/translations/fr/Lisezmoi.txt +++ b/doc/fr/QuickStart_fr diff --git a/doc/he/bink-md5s.txt b/doc/he/bink-md5s.txt deleted file mode 100644 index 5cfcc1c4af..0000000000 --- a/doc/he/bink-md5s.txt +++ /dev/null @@ -1,28 +0,0 @@ -(soccer2004 russian cd) // uses bink but just for external three files -sev -F:\HEdev\scummsys\SPUTM\Src\SrcPWin\*.cpp -2808c81e388743998b3c7331501cc4dd Soccer2004.(a) -7e358891079c9f366184211d14707a70 Soccer2004.(b) -c4ffae9fac495475d6bc3343ccc8faf9 Soccer2004.HE0 -b6eae47432b9545d33d4d867cef0b4ae Soccer2004.he3 -c83971b2f2020bf68724df52c9ae70a8 soccer2004.he2 -212776c1a2dc3d44a393afc4611afbc3 soccer2004.he4 -8f70113f7c01f7bfe9f83f02749d449d soccer2004.he9 -5fba7c0899429399f944a0353307863c DATA/helogo.da2 -56ed9865373c4fe63e8986989ef75999 DATA/infogrames.da2 -678dc9831679dd3f09933d0e568f6d3c DATA/intro.da2 - -(soccer2004 cd) // uses bink but just for external three files -sev -F:\HEdev\scummsys\SPUTM\Src\SrcPWin\*.cpp -e10cb34c774852175134fe166a602012 Soccer2004.(a) -8acec50e5cd48830121a3b22a8bfaa46 Soccer2004.(b) -c4ffae9fac495475d6bc3343ccc8faf9 Soccer2004.HE0 -b6eae47432b9545d33d4d867cef0b4ae Soccer2004.he3 -c83971b2f2020bf68724df52c9ae70a8 soccer2004.he2 -212776c1a2dc3d44a393afc4611afbc3 soccer2004.he4 -8f70113f7c01f7bfe9f83f02749d449d soccer2004.he9 -5fba7c0899429399f944a0353307863c DATA/helogo.da2 -56ed9865373c4fe63e8986989ef75999 DATA/infogrames.da2 -678dc9831679dd3f09933d0e568f6d3c DATA/intro.da2 - diff --git a/doc/he/md5s.txt b/doc/he/md5s.txt deleted file mode 100644 index 5007298b26..0000000000 --- a/doc/he/md5s.txt +++ /dev/null @@ -1,2861 +0,0 @@ -$Id$ - -TODO khalek -* hfs data on puttputt -* hfs data on spyfox -* extract & md5sum from farm cd hfs - - Fatty Bear Demo.sea - - Putt-Putt Moon Demo.sea - - Putt-Putt's Demo.sea -* misc other bits - -TODO sev -* hfs data on all CDs - -(baseball cd hfs) -Joachim -5494820d943b126282b31a7d00645400 BaseBall -cf8d13446ec6cb6222287a925fd47c1d BaseBall (0) -a37e1eb72b969d1461075b7f3d9dd323 BaseBall (1) -c37abed5add924975fad0df9417a8885 BaseBall (2) -cb029eb006c1758aa992e28af7e036db BaseBall (4) -91b6158bc7ec68da700f90e0fabab4b8 BaseBall (9) -d41d8cd98f00b204e9800998ecf8427e BaseBall (r) - -(baseball cd) -sev, Joachim -D:\Scummsys.90\sputm.90\*.c - -c0c0934580cde95879bef0b6a5a49c29 BASEBALL.D32 -58843bf6425883bbe143b96d11d56582 BASEBALL.EXE -cf8d13446ec6cb6222287a925fd47c1d BASEBALL.HE0 -a37e1eb72b969d1461075b7f3d9dd323 BASEBALL.HE1 -c37abed5add924975fad0df9417a8885 BASEBALL.HE2 -cb029eb006c1758aa992e28af7e036db BASEBALL.HE4 -91b6158bc7ec68da700f90e0fabab4b8 BASEBALL.HE9 -7989c98adce2b84cd710818c950616ac BASEBALL.W32 -57a68828de21e1afa208d0a5ea2fdf92 BASEBALL.X32 - - -(baseball2001 cd hfs) -kirben -??? - -(baseball2001 cd) -kirben -??? - -(bb2demo cd hfs) -khalek, sev -??? - -(humongous ftp) -2000-05-01 16:09 bb2demo.W32 -khalek, sev -C:\Dev\Project\SPUTM\Src\*.cpp -0b38fda342fdaa5e206b2a82c8ab6b9b bb2demo.(a) -a194f15f51ee62badab74b9e7da97693 bb2demo.HE0 -04862d3b91c49585400f1021bdb9faa1 bb2demo.he2 -0b3a9ff634f2fabb695358aa591154b3 bb2demo.he4 -17255b19a57a1ba0c35802b1b01792f7 BB2demo.HE9 -04770d822d0e78cf13bbf1870de3528b bb2demo.W32 - -(baseball2003 cd hfs) -sev -??? - -(baseball2003 cd) -sev -c:\Build\SRC\SPUTM\Src\SrcPWin\*.cpp -e0ea75ae94e527652ebd56b26140998c baseball2003.(a) -324f57a63fd20746195810b61a82b711 baseball2003.(b) -ba5635a315af707462b7681189287832 Baseball2003.exe -efe0a04a703e765ebebe92b6c8aa6b86 baseball2003.HE0 -c47186351316e17552532e6c31bf951a baseball2003.he2 -63d581c9548045ee8bc90633f4d123da baseball2003.he3 -fe816c17a87ed5420f1440c85e34f72e baseball2003.he4 -7f06715731111bfe639cde435ec3b650 baseball2003.he9 -b2e1d0e25ed9dbe0ea47ef1a5204ac4a DATA/infogrames.da2 -755a5cf5515610e30370a0afb7d1bc7b DATA/intro.da2 - -(football cd hfs) -Joachim -b1376bcd9c9addb7ffec43455f41f9db Football -7fc6cdb46b4c9d384c52327f4bca6416 FootBall (0) -6c33bde70c28c2eac78de8b9f3add1b4 FootBall (2) -8d02e9002b8033c00bbaf3d71bb695cc FootBall (4) -435ae8ebf6998b1ea395a5989457985f FootBall (a) -7df3c5eb3575aef947729213d6c3a877 FootBall (b) -7c44b542163266658a6110fd03973e6c Football (i) -d41d8cd98f00b204e9800998ecf8427e FootBall (r) -c9ca805103de1888a331a98f98bab22a football (u) - -(football cd) -sev, Joachim -C:\Dev\Project\SPUTM\Src\*.cpp - -435ae8ebf6998b1ea395a5989457985f FOOTBALL.(A) -7df3c5eb3575aef947729213d6c3a877 FOOTBALL.(B) -ccca9a823d117afb1a882fd707586bf0 FOOTBALL.D32 -b9e149d859b6b4ab1906ea670c4c7449 football.esk -af00c36fe744362cb60349f61db78e16 Football.exe -7fc6cdb46b4c9d384c52327f4bca6416 FOOTBALL.HE0 -6c33bde70c28c2eac78de8b9f3add1b4 FOOTBALL.HE2 -8d02e9002b8033c00bbaf3d71bb695cc football.he4 -a7e708342776af913fb70c842310379f football.mmz -e03725ba7069e7a94c28168b70dc99c4 FOOTBALL.R32 -07656b959c7febb6359c8de5fd6b6f76 FOOTBALL.U32 -1671f9302d4eca3bfcccc7d68d75d42a FOOTBALL.W32 - - -(pajama3 hfs) -Joachim -51c909630d8ca434c6e1dfe070a15792 Football Demo -425205754fa749f4f0b0dd9d09fa45fd FootBall Demo (0) -bf65bf5fbfd26a63f7bd32437a960667 FootBall Demo (2) -9e53fbcf1061636d3d192c786c4e3b7b FootBall Demo (4) -b79809888128b1d31080664487c8fc5e FootBall Demo (a) -d41d8cd98f00b204e9800998ecf8427e Football Demo (i) -d41d8cd98f00b204e9800998ecf8427e FootBall Demo (r) -c9ca805103de1888a331a98f98bab22a Football Demo (u) - -(pajama3 cd) -Joachim -b79809888128b1d31080664487c8fc5e footdemo.(a) -ccca9a823d117afb1a882fd707586bf0 footdemo.d32 -afd8621bd60d686ebc97ef259a6f0fe0 footdemo.exe -425205754fa749f4f0b0dd9d09fa45fd footdemo.HE0 -bf65bf5fbfd26a63f7bd32437a960667 footdemo.he2 -9e53fbcf1061636d3d192c786c4e3b7b footdemo.he4 -07656b959c7febb6359c8de5fd6b6f76 FOOTDEMO.U32 - -(puttsfunshop hfs/samsfunshop hfs/freddisfunshop hfs/freddicove hfs) -Joachim -51c909630d8ca434c6e1dfe070a15792 Football Demo -5bd335265a61caa3d78956ad9f88ba23 FootBall Demo (0) -bf65bf5fbfd26a63f7bd32437a960667 FootBall Demo (2) -9e53fbcf1061636d3d192c786c4e3b7b FootBall Demo (4) -bb6ec9a3a2a016b239367c2b26d9ee3b FootBall Demo (a) -d41d8cd98f00b204e9800998ecf8427e Football Demo (i) -d41d8cd98f00b204e9800998ecf8427e FootBall Demo (r) -c9ca805103de1888a331a98f98bab22a Football Demo (u) - -(putsfunshop cd/pajama3 cd/spyozon cd/freddicove cd/freddisfunshop cd/samsfunshop cd/pajama win cd) -sev, Joachim (Comment by Joachim: this version is not on the pajama3 cd for me, see above) -C:\Dev\Project\SPUTM\Src\*.cpp -bb6ec9a3a2a016b239367c2b26d9ee3b FOOTDEMO.(A) -ccca9a823d117afb1a882fd707586bf0 footdemo.d32 -afd8621bd60d686ebc97ef259a6f0fe0 footdemo.exe -5bd335265a61caa3d78956ad9f88ba23 FOOTDEMO.HE0 -bf65bf5fbfd26a63f7bd32437a960667 footdemo.he2 -9e53fbcf1061636d3d192c786c4e3b7b footdemo.he4 -07656b959c7febb6359c8de5fd6b6f76 FOOTDEMO.U32 - -(football demo hfs) -khalek -??? - -(football demo) -khalek -??? - -(football2002 cd hfs) // uses Bink as external files. 137 files -Joachim -4bfe515242f8ee4cc01b9fc4cf52b29a Football 2002 -d0549508a06bbb9f99ed19c9e97891f3 Football 2002 (0) -7c6f5da8f9d223942ff387c3b3b1262a Football 2002 (2) -eded7062b612284a62df6be9e37e8d9e Football 2002 (3) -5f22d1edf87e08f151c93726684d47a5 Football 2002 (4) -b81d20adb6371ed620fedcc0156c6fb7 Football 2002 (a) -1e45c754359ca021d50cc6776f3240a6 Football 2002 (b) -4017d76fa35c60e64011d333443dfa9c Football 2002 (i) -932e34469fd78234fff755a22960114d football 2002 (u) - -(football2002 cd) // uses Bink as external files. 137 files -c:\SRC_RELEASE\SPUTM\Src\SrcPWin\*.cpp -Joachim -b81d20adb6371ed620fedcc0156c6fb7 Football2002.(a) -1e45c754359ca021d50cc6776f3240a6 Football2002.(b) -7894dd82c874b535dc8acadef0950be4 Football2002.exe -d0549508a06bbb9f99ed19c9e97891f3 Football2002.HE0 -7c6f5da8f9d223942ff387c3b3b1262a Football2002.HE2 -eded7062b612284a62df6be9e37e8d9e Football2002.HE3 -5f22d1edf87e08f151c93726684d47a5 Football2002.HE4 - -(football2002 cd hfs) -??? - -(football2002 cd) // uses Bink as external files. 137 files -2001-09-11 14:22 football2002.exe -khalek (Comment by Joachim: I completed the deatils with details from above, I hope this is right) -C:\SRC_RELEASE\SPUTM\Src\SrcPWin\*.cpp -b81d20adb6371ed620fedcc0156c6fb7 Football2002.(a) -20aca400df5f580e4d3c019c3386d361 Football2002.(b) -2234bbc4d12a09fadf8540343eb1c00e football2002.exe -2e85f7aa054930c692a5b1bed1dfc295 Football2002.HE0 -7c6f5da8f9d223942ff387c3b3b1262a Football2002.HE2 -eded7062b612284a62df6be9e37e8d9e Football2002.HE3 -5f22d1edf87e08f151c93726684d47a5 Football2002.HE4 - -(soccer cd hfs) -Joachim -462a01a55236b1dc5aa3ea543bbfc904 Soccer -701246819d1a70573f41bf33fc19214f Soccer (0) -6b8840d83784dbceb44f9d8694fce9d4 Soccer (2) -b50ac4df3a13b7ccc73e68dae5851d36 Soccer (4) -6a89ce2925a36a1d9e0d9e9f7060c533 Soccer (9) -a70431a271fd64eb958bab0a75b9db5b Soccer (A) -d41d8cd98f00b204e9800998ecf8427e Soccer (r) -8605a367b4d66e756ccc00c8b6a22e0b Soccer (u) - -(soccer cd) -sev, Joachim -D:\scummsys.98\sputm.98\*.c -a70431a271fd64eb958bab0a75b9db5b SOCCER.(A) -ccca9a823d117afb1a882fd707586bf0 soccer.d32 -431076c63ffa5b0caf66dbe03c1eef30 SOCCER.EXE -701246819d1a70573f41bf33fc19214f SOCCER.HE0 -6b8840d83784dbceb44f9d8694fce9d4 SOCCER.HE2 -b50ac4df3a13b7ccc73e68dae5851d36 SOCCER.HE4 -6a89ce2925a36a1d9e0d9e9f7060c533 SOCCER.HE9 -ed64133f8cdfca57fb3cd09057def978 SOCCER.U32 -db16386ae24902866ec908c31f58dd6c Soccer.w32 - - -(soccerMLS cd hfs) -??? - -(soccerMLS cd) -sev -C:\Dev\Project\SPUTM\Src\*.cpp -bda62f35e0ce1f910d63f0713b3426cb SoccerMLS.(a) -9705d481fd818835e68bb3ac3ddaf787 SoccerMLS.exe -bfdf584b01503f0762baded581f6a0a2 SoccerMLS.he0 -b44275bf54bfa7e01548eec5b7101ed9 SoccerMLS.he2 -a8fa25dc67dee77f009fe5fb59b1961a SoccerMLS.he4 -6a89ce2925a36a1d9e0d9e9f7060c533 SoccerMLS.he9 - -(soccer2004 cd) // uses bink but just for external three files -sev -F:\HEdev\scummsys\SPUTM\Src\SrcPWin\*.cpp -e10cb34c774852175134fe166a602012 Soccer2004.(a) -8acec50e5cd48830121a3b22a8bfaa46 Soccer2004.(b) -c4ffae9fac495475d6bc3343ccc8faf9 Soccer2004.HE0 -b6eae47432b9545d33d4d867cef0b4ae Soccer2004.he3 -c83971b2f2020bf68724df52c9ae70a8 soccer2004.he2 -212776c1a2dc3d44a393afc4611afbc3 soccer2004.he4 -8f70113f7c01f7bfe9f83f02749d449d soccer2004.he9 -5fba7c0899429399f944a0353307863c DATA/helogo.da2 -56ed9865373c4fe63e8986989ef75999 DATA/infogrames.da2 -678dc9831679dd3f09933d0e568f6d3c DATA/intro.da2 - -(soccer2004 cd russian) // uses bink but just for external three files -sev -F:\HEdev\scummsys\SPUTM\Src\SrcPWin\*.cpp -2808c81e388743998b3c7331501cc4dd Soccer2004.(a) -7e358891079c9f366184211d14707a70 Soccer2004.(b) -c4ffae9fac495475d6bc3343ccc8faf9 Soccer2004.HE0 -b6eae47432b9545d33d4d867cef0b4ae Soccer2004.he3 -c83971b2f2020bf68724df52c9ae70a8 soccer2004.he2 -212776c1a2dc3d44a393afc4611afbc3 soccer2004.he4 -8f70113f7c01f7bfe9f83f02749d449d soccer2004.he9 -5fba7c0899429399f944a0353307863c DATA/helogo.da2 -56ed9865373c4fe63e8986989ef75999 DATA/infogrames.da2 -678dc9831679dd3f09933d0e568f6d3c DATA/intro.da2 - -(thinkerk cd hfs) -Joachim -0c8f2ebce5116dc8a4fd7cd971cab19b ThinkerK -92fc0073a4cf259ff36070ecb8628ba8 ThinkerK (0) -2b06d67c5332c84d389fa681961920da ThinkerK (1) -61b858cb5e97fc2960e74b18297be540 ThinkerK (2) -06a5613cf59c7fdb5d5b888142d6d8b4 ThinkerK (4) -d41d8cd98f00b204e9800998ecf8427e ThinkerK (r) - -(thinkerk cd) -kirben, Joachim -c0c0934580cde95879bef0b6a5a49c29 THINKERK.D32 -37b4a8ce5bc28bc958c2c2548a453d31 THINKERK.EXE -92fc0073a4cf259ff36070ecb8628ba8 THINKERK.HE0 -2b06d67c5332c84d389fa681961920da THINKERK.HE1 -61b858cb5e97fc2960e74b18297be540 THINKERK.HE2 -06a5613cf59c7fdb5d5b888142d6d8b4 THINKERK.HE4 -b10981a0805c37cda1420f29745d6537 THINKERK.W32 - -(freddi cd hfs) -khalek -1997-12-09 19:59 Kinddemo -9c445edf28ee4a2a7b3ff36ea1f75c05 Kinddemo -695fe0b3963333b7e15b37514db3c745 Kinddemo (0) -d3af0fb2011b158a28c43480fb59c588 Kinddemo (1) -e5da782a19575d12ff98feb74f7602e3 Kinddemo (2) -ba7a9148040e2421c4129b1d32c40627 Kinddemo (4) -d41d8cd98f00b204e9800998ecf8427e Kinddemo (r) - -(ftp/pajama2 cd/puttrace cd/freddi3 cd/soccer cd) -1997-09-03 18:32 kinddemo.w32 -khalek, sev, Joachim -D:\Scummsys.90\sputm.90\*.c -c0c0934580cde95879bef0b6a5a49c29 KINDDEMO.D32 -37b4a8ce5bc28bc958c2c2548a453d31 KINDDEMO.EXE -695fe0b3963333b7e15b37514db3c745 KINDDEMO.HE0 -d3af0fb2011b158a28c43480fb59c588 KINDDEMO.HE1 -e5da782a19575d12ff98feb74f7602e3 KINDDEMO.HE2 -ba7a9148040e2421c4129b1d32c40627 KINDDEMO.HE4 -b10981a0805c37cda1420f29745d6537 KINDDEMO.W32 - -(thinker1 cd hfs) -Joachim -cd7d15788407e42cb2d25e91bcb5649f Thinker1 -5c21fc49aee8f46e58fef21579e614a1 Thinker1 (0) -d208e601cbeda1082aae9959bc80d736 Thinker1 (1) -2e3a3f3cf83a6125a9bc0637dcd3daec Thinker1 (2) -70d4c5fcba615fca984a3cb4bc42fb6a Thinker1 (4) -d41d8cd98f00b204e9800998ecf8427e Thinker1 (r) - -(thinker1 cd) -Joachim -c0c0934580cde95879bef0b6a5a49c29 THINKER1.D32 -ac403714308c2a6200bbffd4cd49c77c THINKER1.EXE -5c21fc49aee8f46e58fef21579e614a1 THINKER1.HE0 -d208e601cbeda1082aae9959bc80d736 THINKER1.HE1 -2e3a3f3cf83a6125a9bc0637dcd3daec THINKER1.HE2 -70d4c5fcba615fca984a3cb4bc42fb6a THINKER1.HE4 -dafbd5699d72d4b985f1f6c46ae9a556 THINKER1.W32 - -(1grademo hfs) -??? - -1997-09-03 14:21 1grademo.w32 -khalek -D:\Scummsys.90\sputm.90\*.c -0f5935bd5e88ba6f09e558d64459746d 1grademo.he0 -e41b3ba697f00251fdefd7d64a8cf125 1grademo.he1 -007961d43ada4cca6f15b2dcedcb695e 1grademo.he2 -ae77dc6ff68d6fdfb23e5f792f91ab2d 1grademo.he4 -5d4a7c36dee1a11ed50d260f8413c27a 1grademo.w32 - -(puttsfunshop cd hfs/puttcircus cd hfs/freddisfunshop cd hfs/samsfunshop cd hfs) -Joachim -fcd508025e1963a619b2aec191907f22 BluesABCTimeDemo -7ddeaf52c8b9a50551ce0aa2ac811d07 BluesABCTimeDemo (0) -e4a7e95b00feb1a3e13b542c164c7ff3 BluesABCTimeDemo (2) -de94e921f02e3b4c6e061aab0f4cc339 BluesABCTimeDemo (4) -06fee308ab288ece9b2ab18f9c7b9f41 BluesABCTimeDemo (a) -d41d8cd98f00b204e9800998ecf8427e BluesABCTimeDemo (r) - - -(puttsfunshop cd/pajama3 cd/puttcircus cd/freddisfunshop cd/samsfunshop cd) -1998-07-26 13:36 BLUESABCTIMEDEMO.W32 -khalek, sev, Joachim -D:\scummsys.98\sputm.98\*.c -06fee308ab288ece9b2ab18f9c7b9f41 BluesABCTimeDemo.(a) -ccca9a823d117afb1a882fd707586bf0 BluesABCTimeDemo.d32 -f67221ca7890906f29ab38aedafb0802 BluesABCTimeDemo.exe -7ddeaf52c8b9a50551ce0aa2ac811d07 BluesABCTimeDemo.HE0 -e4a7e95b00feb1a3e13b542c164c7ff3 BluesABCTimeDemo.he2 -de94e921f02e3b4c6e061aab0f4cc339 BluesABCTimeDemo.he4 - -(puttrace cd hfs/freddi4 cd hfs/puttzoo cd hfs/pajama3 cd hfs) -Joachim -fcd508025e1963a619b2aec191907f22 BluesABCTimeDemo -810a9da887aefa597b0cf3c77d262897 BluesABCTimeDemo (0) -5800ab15c53341fa4b4470cd20c2affa BluesABCTimeDemo (2) -de94e921f02e3b4c6e061aab0f4cc339 BluesABCTimeDemo (4) -860eb5a38ce8edef04f614bb50489aab BluesABCTimeDemo (a) -d41d8cd98f00b204e9800998ecf8427e BluesABCTimeDemo (r) - -(puttrace cd/freddi4 cd/puttzoo cd) -sev, Joachim -D:\scummsys.98\sputm.98\*.c -860eb5a38ce8edef04f614bb50489aab BluesABCTimeDemo.(a) -ccca9a823d117afb1a882fd707586bf0 BluesABCTimeDemo.d32 -f67221ca7890906f29ab38aedafb0802 BluesABCTimeDemo.exe -810a9da887aefa597b0cf3c77d262897 BluesABCTimeDemo.HE0 -5800ab15c53341fa4b4470cd20c2affa BluesABCTimeDemo.he2 -de94e921f02e3b4c6e061aab0f4cc339 BluesABCTimeDemo.he4 - -(freddi5 cd hfs) // uses smacker videos -Joachim -181b98beb756fe07650608b0357fa934 Blues-ArtTime Demo -d00ffc8c32d17e575fd985d435d2eb88 Blues-ArtTime Demo (0) -58c91c3f750b227b136e96b410b0e7cc Blues-ArtTime Demo (2) -47f0573a8a629c6e7f8b9236112fe10e Blues-ArtTime Demo (4) -548fcedaa9cee84443a5a9acfff4cb04 Blues-ArtTime Demo (a) -5272e8074130bdcc431d6ce325e3f0ab Blues-ArtTime Demo (i) -2f1a08df8aa13924959905fc5dc34a9b Data/intr_at_in_01.dat -f7841f8a37394805fc0699999898bcca Data/intr_at_in_02.dat -6a2f8c39d2ce07d422bae9f9bf416839 Data/intr_at_in_20_b.dat - -(freddi5 cd) // uses smacker videos -sev, Joachim -C:\Dev\Project\SPUTM\Src\SrcPWin\*.cpp -548fcedaa9cee84443a5a9acfff4cb04 artdemo.(a) -e856bf226130de0d84bcaaa7ecfb5a3a artdemo.D32 -840be04790ddb035725978e70f7c78f8 ARTDEMO.EXE -d00ffc8c32d17e575fd985d435d2eb88 artdemo.HE0 -58c91c3f750b227b136e96b410b0e7cc artdemo.he2 -47f0573a8a629c6e7f8b9236112fe10e artdemo.he4 -7e98a8e45cbac83e65d98f3c133ae34d artdemo.w32 -2f1a08df8aa13924959905fc5dc34a9b Data/intr_at_in_01.dat -f7841f8a37394805fc0699999898bcca Data/intr_at_in_02.dat -6a2f8c39d2ce07d422bae9f9bf416839 Data/intr_at_in_20_b.dat - -(puttsfunshop cd hfs/freddisfunshop cd hfs/samsfunshop cd hfs/pajama3 cd hfs/puttcircus cd hfs) // uses smacker videos -Joachim -30ea41602894a180aac747198388bc5e BluesBirthdayDemo -dbf4d59d70b826733f379f998354d350 BluesBirthdayDemo (0) -60cc055b47b53cb53eaa89e1f974c888 BluesBirthdayDemo (2) -0794110b085ee91c2aa4a5fc844ff2f4 BluesBirthdayDemo (4) -44e5c3d256fe45c334ac772fa2dd23e2 BluesBirthdayDemo (+) -6ddf8b026cfb9410b560f91f353dc0f4 BluesBirthdayDemo (a) -409a570e46466aef89c3cd3a30992543 BluesBirthdayDemo (b) -b46f3aa845f11020d8420d624c120120 BluesBirthdayDemo (i) -d41d8cd98f00b204e9800998ecf8427e BluesBirthdayDemo (r) - -(puttsfunshop cd/freddisfunshop cd/samsfunshop cd/pajama3 cd/puttcircus cd) // uses smacker videos -sev, Joachim -D:\scummsys.98\sputm.98\*.c -6ddf8b026cfb9410b560f91f353dc0f4 BluesBirthdayDemo.(a) -409a570e46466aef89c3cd3a30992543 BluesBirthdayDemo.(b) -e07a222d121f7e8b04266bf4d7809cb4 BluesBirthdayDemo.a32 -ccca9a823d117afb1a882fd707586bf0 BluesBirthdayDemo.d32 -6d283612076435baad21d5cc5f40fba3 BluesBirthdayDemo.exe -dbf4d59d70b826733f379f998354d350 BluesBirthdayDemo.HE0 -60cc055b47b53cb53eaa89e1f974c888 BluesBirthdayDemo.he2 -0794110b085ee91c2aa4a5fc844ff2f4 BluesBirthdayDemo.he4 - -(puttrace cd hfs) // uses smacker videos -Joachim -30ea41602894a180aac747198388bc5e BluesBirthdayDemo -2d4acbdcfd8e374c9da8c2e7303a5cd0 BluesBirthdayDemo (0) -dc5e63ecf2672d4a3a0458fe32902a4e BluesBirthdayDemo (2) -0794110b085ee91c2aa4a5fc844ff2f4 BluesBirthdayDemo (4) -44e5c3d256fe45c334ac772fa2dd23e2 BluesBirthdayDemo (+) -18ee74255c93da057c92effbd39ebd9a BluesBirthdayDemo (a) -409a570e46466aef89c3cd3a30992543 BluesBirthdayDemo (b) -b46f3aa845f11020d8420d624c120120 BluesBirthdayDemo (i) -d41d8cd98f00b204e9800998ecf8427e BluesBirthdayDemo (r) - -(puttrace cd) // uses smacker videos -sev, Joachim -D:\scummsys.98\sputm.98\*.c -18ee74255c93da057c92effbd39ebd9a BluesBirthdayDemo.(a) -409a570e46466aef89c3cd3a30992543 BluesBirthdayDemo.(b) -e07a222d121f7e8b04266bf4d7809cb4 BluesBirthdayDemo.a32 -ccca9a823d117afb1a882fd707586bf0 BluesBirthdayDemo.d32 -e478bdc989beeeaec7e2528a11c88729 BluesBirthdayDemo.exe -2d4acbdcfd8e374c9da8c2e7303a5cd0 BluesBirthdayDemo.HE0 -dc5e63ecf2672d4a3a0458fe32902a4e BluesBirthdayDemo.he2 -0794110b085ee91c2aa4a5fc844ff2f4 BluesBirthdayDemo.he4 - - -(freddi5 cd hfs) // uses smacker videos -Joachim -853c41736ce7e4c5d6b3431dd550ea3f Blues-ReadingTime Demo -95818b178d473c989ac753574e8892aa Blues-ReadingTime Demo (0) -7c64b87e454e642e36a83c79341007b0 Blues-ReadingTime Demo (2) -4f307cf26e46f765298cc8f92f02db49 Blues-ReadingTime Demo (4) -f536221cc5d8da02009278523eda6bd5 Blues-ReadingTime Demo (a) -5272e8074130bdcc431d6ce325e3f0ab Blues-ReadingTime Demo (i) -45a973a322b177ee4b36bea81981462d Data/INT_RT_IN_01.DAT -9e0c144bf1b7f0cc8ba3edae6135e313 Data/INT_RT_IN_03.DAT -8d150f9d9e12e485da50c4560135b4ef Data/INT_RT_IN_04.DAT -8cde496829546daaaa28084c49f3f4f7 Data/INT_RT_IN_05.DAT -c784fa970208b5bd49fff568ca0036ec Data/INT_RT_IN_06.DAT - -(freddi5 cd) // uses smacker videos -sev, Joachim -C:\Dev\Project\SPUTM\Src\SrcPWin\*.cpp -f536221cc5d8da02009278523eda6bd5 readdemo.(a) -e856bf226130de0d84bcaaa7ecfb5a3a readDemo.D32 -2be2b18bf04dcd9d9dc6b16e88b8f811 READDEMO.EXE -95818b178d473c989ac753574e8892aa readdemo.HE0 -7c64b87e454e642e36a83c79341007b0 readDemo.he2 -4f307cf26e46f765298cc8f92f02db49 readdemo.he4 -eac7453b1dca87447974ef54137470f9 readDemo.w32 -45a973a322b177ee4b36bea81981462d Data/INT_RT_IN_01.DAT -9e0c144bf1b7f0cc8ba3edae6135e313 Data/INT_RT_IN_03.DAT -8d150f9d9e12e485da50c4560135b4ef Data/INT_RT_IN_04.DAT -8cde496829546daaaa28084c49f3f4f7 Data/INT_RT_IN_05.DAT -c784fa970208b5bd49fff568ca0036ec Data/INT_RT_IN_06.DAT - -(fbear cd 3do) -??? - -(he classics cd) -khalek, sev -6.1.1 (Jun 23 1993 15:31:14) -9f5ada54fef54f1602bb1b642d0fe412 FBEAR.EXE -3824e60cdf639d22f6df92a03dc4b131 FBEAR.HE0 -c75f511786a4e0c474660d074c9a421a FBEAR.HE1 -d05d89374e5e459067603cd075dd3134 FBEAR.SNG -c542564fc561aca36626259455738126 FBEAR.TLK - -(fbear cd) -Joachim -9f5ada54fef54f1602bb1b642d0fe412 FBEAR.EXE -3824e60cdf639d22f6df92a03dc4b131 FBEAR.HE0 -c75f511786a4e0c474660d074c9a421a FBEAR.HE1 -d05d89374e5e459067603cd075dd3134 FBEAR.SNG -0f19cfc74cbeb0a255b289772acad687 FBEAR.TLK - -(fbear cd hebrew) -??? - -(he classics cd hfs) -khalek -3df6ead57930488bc61e6e41901d0e97 Fatty Bear 0 -93cdebdbf8f1ec8c3f05dff0c8fedc82 Fatty Bear 1 -fc3885128832fcb876ccd79124ba36fe Fatty Bear 2 -d05d89374e5e459067603cd075dd3134 Fatty Bear Songs - -(fbear cd hfs) -Joachim -d41d8cd98f00b204e9800998ecf8427e Fatty Bear -3df6ead57930488bc61e6e41901d0e97 Fatty Bear 0 -93cdebdbf8f1ec8c3f05dff0c8fedc82 Fatty Bear 1 -110890cbcbbdacdd3a02159cbde20889 Fatty Bear 2 -d05d89374e5e459067603cd075dd3134 Fatty Bear Songs - -(he classics cd) -khalek, sev -7.0.0 (Feb 7 1995 13:27:40) -179879b6e35c1ead0d93aab26db0951b FBEAR.HE0 -7f733155adcb049e887fef942e81602a FBEAR.HE1 -fc3885128832fcb876ccd79124ba36fe FBEAR.HE2 -58dfc09f344a9dec565bb914920800d3 FBEAR.HE3 -a6b0d9c55f747f906142ed60c7d780e8 FBEAR.HE4 -d05d89374e5e459067603cd075dd3134 FBEAR.SNG -564d213162f0375b62a8fc5a3a9ef94d FBEAR.W32 - -(fbear cd) -Joachim -333714828ec2e0bd97a189882bf4e49e FBEAR.EXE -179879b6e35c1ead0d93aab26db0951b FBEAR.HE0 -7f733155adcb049e887fef942e81602a FBEAR.HE1 -110890cbcbbdacdd3a02159cbde20889 FBEAR.HE2 -58dfc09f344a9dec565bb914920800d3 FBEAR.HE3 -a6b0d9c55f747f906142ed60c7d780e8 FBEAR.HE4 -d05d89374e5e459067603cd075dd3134 FBEAR.SNG -564d213162f0375b62a8fc5a3a9ef94d FBEAR.W32 - -6.1.1 (Apr 6 1993 20:48:56) -khalek -59c820951585b7dfb0307992bbb275c7 fbdemo.exe -47e75b1bdcb44c78cb94883d1731ccf8 fbdemo.he0 -7c61c90ec5ceb812698d40b29f356559 fbdemo.he1 -f054dd0158bafd59570794397727c882 fbdemo.tlk - -(puttmoon cd hfs/airport cd hfs/jungle cd hfs) -Joachim -d41d8cd98f00b204e9800998ecf8427e Fatty Bear Demo -6df20c50c1ab19799de9be7ae7716881 Fatty Bear Demo 0 -d9e4a20226b6120d2a3d8d3a9a643a86 Fatty Bear Demo 1 -0d95ea172d9c94f4c90b9f542a824ced Fatty Bear Demo 2 - -(puttputt cd/he classics cd/fbear cd/puttmoon cd) -khalek, sev, Joachim -7.0.0 (Feb 7 1995 13:27:40) -9b44bf1f45abc809cf81fde9ff80e5a7 FBDEMO.EXE -22c9eb04455440131ffc157aeb8d40a8 FBDEMO.HE0 -5293d81516126086766540ab12a9c499 FBDEMO.HE1 -f054dd0158bafd59570794397727c882 FBDEMO.HE2 -58dfc09f344a9dec565bb914920800d3 FBDEMO.HE3 -76954add1f2c5bd9d967746ab4137d3a FBDEMO.HE4 -564d213162f0375b62a8fc5a3a9ef94d FBDEMO.W32 - -(freddi cd hfs) -khalek -1998-02-18 16:06 Freddi Fish -560da18bc11f6cf7b068a96dd928ae7e Freddi Fish -df047cc4792150f601290357566d36a6 Freddi Fish (0) -d30fb13dd3baa94a4cabe4cc1a6228d1 Freddi Fish (1) -f2f1e70bd9388c98c0ef38b1ef286ae2 Freddi Fish (2) -cb0fb189e08144bbc713b8df739ba9fc Freddi Fish (4) -d41d8cd98f00b204e9800998ecf8427e Freddi Fish (r) - -(freddi cd) -khalek, Joachim -1998-01-21 02:13 freddi.w32 -D:\Scummsys.90\sputm.90\*.c -c0c0934580cde95879bef0b6a5a49c29 FREDDI.D32 -2e0253f624f34b56cf888e557d931a3b FREDDI.EXE -df047cc4792150f601290357566d36a6 FREDDI.HE0 -d30fb13dd3baa94a4cabe4cc1a6228d1 FREDDI.HE1 -f2f1e70bd9388c98c0ef38b1ef286ae2 FREDDI.HE2 -cb0fb189e08144bbc713b8df739ba9fc FREDDI.HE4 -0d6f0f65403bd23afb78c143587d11a8 FREDDI.W32 - -(freddi cd russian) -sev -7.0.0 (Jun 23 1995 09:58:48) -d4cccb5af88f3e77f370896e9ba8c5f9 FREDDI.HE0 -1705aa5c12a2959f1b69abc1fd145f01 FREDDI.HE1 -199c5c38798ddacce5cfbfe7b31267cf FREDDI.HE2 -6daf76c1fe724ce6bf2e4c5175f39352 FREDDI.HE3 -a176fababbf7944a1d4b5d6521b20f4d FREDDI.HE4 -2085ef0c1d1cc64db1ec52901b4856b9 FREDDI.HE5 -8be6d657bcbda8b4926448e530528d6a FREDDI.W32 - -(freddi cd dutch) -adutchguy -??? - -(freddi cd german) -oncer, Joachim -fc00ad009697e2c9a50dd222f8f40c73 FREDDI.EXE -cf8ef3a1fb483c5c4b1c584d1167b2c4 FREDDI.HE0 -e3b21adcc7ad12e0b8a0a8fa9bdd30a9 FREDDI.HE1 -1d10f0e80dc84a3dd8331c55f4146ed5 FREDDI.HE2 -6daf76c1fe724ce6bf2e4c5175f39352 FREDDI.HE3 -8e27aebf6d89f8576a08b58e216a6a90 FREDDI.HE4 -842badd1332ab8d6c8fd4e8277e0471c FREDDI.W32 - -(freddi cd nb) -Karl Ove Hufthammer -??? - -(freddi cd russian updated) -sev -D:\Scummsys.90\sputm.90\*.c -746e88c172a5b7a1ae89ac0ee3ee681a Freddi.HE0 -02b964d6d7a3fcace1bc89ae2a2c9db7 FREDDI.HE1 -14a1058745c609eefa08f1591cc5d4df FREDDI.HE2 -2b219196f0cc74d626a3216932d3ea54 Freddi.he4 -58d117ae89707c7360f403186641e87f FREDDI.W32 - -(freddi cd swedish) -Sven Arvidsson -??? - -(farm cd hfs/airportcd hfs/jungle cd hfs/thinker1 cd hfs/thinkerk cd hfs/socks cd hfs/baseball cd hfs) -khalek, Joachim -1995-09-14 17:35 Freddi Demo -42f4a55732734e3c54c0b198f2615970 Freddi Demo -c8aac5e3e701874e2fa4117896f9e1b1 Freddi Demo (0) -b4805ccd0841854d6b2f596f0efb5551 Freddi Demo (1) -faca7509c38beabb37b2347b8b6bb1ea Freddi Demo (2) -a8c3ced34ecb16ad1b0eed5b464ad61e Freddi Demo (4) - -(he classics cd hfs/pajama cd hfs/puttzoo cd hfs) -khalek (comment: is this double entry really necessary?) -1996-11-17 13:28 Freddi Demo -42f4a55732734e3c54c0b198f2615970 Freddi Demo -c8aac5e3e701874e2fa4117896f9e1b1 Freddi Demo (0) -b4805ccd0841854d6b2f596f0efb5551 Freddi Demo (1) -faca7509c38beabb37b2347b8b6bb1ea Freddi Demo (2) -a8c3ced34ecb16ad1b0eed5b464ad61e Freddi Demo (4) - -(puttputt cd/puttmoon cd/fbear cd) -khalek, sev, Joachim -7.0.0 (Oct 20 1994 10:00:19) -10f764e586228d090d66bdf43cc5a1ef FREDDEMO.EXE -084ed0fa98a6d1e9368d67fe9cfbd417 FREDDEMO.HE0 -273e622b5fdf60859b549fee08384a33 FREDDEMO.HE1 -faca7509c38beabb37b2347b8b6bb1ea FREDDEMO.HE2 -6daf76c1fe724ce6bf2e4c5175f39352 FREDDEMO.HE3 -a8c3ced34ecb16ad1b0eed5b464ad61e FREDDEMO.HE4 -0ebc6a8cc24babc41dbfbfb07ee6456f FREDDEMO.W32 - -(farm cd/airport cd/jungle cd/airport hfs/jungle hfs) -khalek, Joachim -7.0.0 (Jun 22 1995 14:06:25) -e269b675a252296640430feab730e8b7 FREDDEMO.EXE -0855496dde35356b1a9691e22ba84cdc FREDDEMO.HE0 -5374aef0d7c547a95dc779f4ea51e20f FREDDEMO.HE1 -faca7509c38beabb37b2347b8b6bb1ea FREDDEMO.HE2 -6daf76c1fe724ce6bf2e4c5175f39352 FREDDEMO.HE3 -a8c3ced34ecb16ad1b0eed5b464ad61e FREDDEMO.HE4 -3d43af3f3ecc18744dda721d951e2a2f FREDDEMO.W32 - -(spyfox cd/pajama cd/puttzoo cd/he classics cd/freddi2 cd/baseball cd/socks cd/thinker1 cd/thinkerk cd) -khalek, sev, Joachim (comment: all files uppercase on CD) -7.0.0 (Jul 5 1995 14:46:05) -e269b675a252296640430feab730e8b7 FREDDEMO.EXE -566165a7338fa11029e7c14d94fa70d0 FREDDEMO.HE0 -649724a605cb66fef3fac73297ef4259 FREDDEMO.HE1 -faca7509c38beabb37b2347b8b6bb1ea FREDDEMO.HE2 -6daf76c1fe724ce6bf2e4c5175f39352 FREDDEMO.HE3 -a8c3ced34ecb16ad1b0eed5b464ad61e FREDDEMO.HE4 -25003798cd5f4b51bc1f4d02c6a2e218 FREDDEMO.W32 - -(humongous ftp) -7.0.0 (Jul 5 1995 14:46:05) -khalek, sev -566165a7338fa11029e7c14d94fa70d0 freddemo.he0 -649724a605cb66fef3fac73297ef4259 freddemo.he1 -faca7509c38beabb37b2347b8b6bb1ea freddemo.he2 -6daf76c1fe724ce6bf2e4c5175f39352 freddemo.he3 -a8c3ced34ecb16ad1b0eed5b464ad61e freddemo.he4 -a5459bfe36183cf1f4ced00fe325aa90 freddemo.w32 - -(freddi2 cd german/freddi2 cd hfs german) -Joachim -fc00ad009697e2c9a50dd222f8f40c73 FREDDEMO.EXE -cf4ef315214c7d8cdab6302cdb7e50db FREDDEMO.HE0 -c4671ee12bcb89be376a8432ac23ce77 FREDDEMO.HE1 -468e8c93b4831ff6e84ac69140f8b603 FREDDEMO.HE2 -6daf76c1fe724ce6bf2e4c5175f39352 FREDDEMO.HE3 -a8c3ced34ecb16ad1b0eed5b464ad61e FREDDEMO.HE4 -842badd1332ab8d6c8fd4e8277e0471c FREDDEMO.W32 - -(freddi2 cd hfs) -Kirben -??? - -(freddi2 hfs) -Kirben -??? - -(freddi2 cd hfs) -kirben, Joachim -91a8077251d21b9a060792f50df91cbc Freddi Fish 2 -51305e929e330e24a75a0351c8f9975e Freddi Fish 2 (0) -2f0f418ca29e298343a76e4a76ce5d96 Freddi Fish 2 (2) -c87140d52e550ee923f18789517e61ab Freddi Fish 2 (4) -722286b727e75a3e44f9333d6b604427 Freddi Fish 2 (a) -d5920b5082d570d03500fe165bb75c0a Freddi Fish 2 (i) -d41d8cd98f00b204e9800998ecf8427e Freddi Fish 2 (r) - -(freddi2 cd) -kirben, Joachim -722286b727e75a3e44f9333d6b604427 Freddi2.(a) -ccca9a823d117afb1a882fd707586bf0 Freddi2.d32 -c45467455384a11c608530d371d6669e FREDDI2.EXE -51305e929e330e24a75a0351c8f9975e Freddi2.HE0 -2f0f418ca29e298343a76e4a76ce5d96 Freddi2.he2 -c87140d52e550ee923f18789517e61ab Freddi2.he4 -15e826c4702e0c44018a6b6a31de76ef FREDDI2.w32 - -(freddi2 cd hfs german) -Joachim -5d6f8f48c758f7ce07ace9141bd177d4 Fritzi Fisch 2 -fce4b8010704b103acfeea9413788f32 Fritzi Fisch 2 (0) -d857b6f3ee3a2347faf589a823be6d6c Fritzi Fisch 2 (1) -3e25355859e2fc97c88ebebfd63c5c14 Fritzi Fisch 2 (2) -2b7114ad0e35ca65ec8de54b7acd352d Fritzi Fisch 2 (4) - -(freddi2 cd german) -Joachim -4c695f3d8015af4277fd284981e0d2c4 FREDDI2.D32 -9d4373de9fd1c25671de1500dbe358a2 FREDDI2.EXE -fce4b8010704b103acfeea9413788f32 FREDDI2.HE0 -d857b6f3ee3a2347faf589a823be6d6c FREDDI2.HE1 -3e25355859e2fc97c88ebebfd63c5c14 FREDDI2.HE2 -2b7114ad0e35ca65ec8de54b7acd352d FREDDI2.HE4 -e24b9e887a04f66db3edcd5fc81767fd FREDDI2.W32 - -(freddi2 cd) -sev -D:\Scummsrc.80\Sputm\*.c -5057fb0e99e5aa29df1836329232f101 FREDDI2.HE0 -a586db95af3146aa7793c5e2d0ed9e83 FREDDI2.HE1 -9ff9a777a343e605278127c0bbdde58f FREDDI2.HE2 -d22f1b3bd41cb4901f89164043953bc8 FREDDI2.HE4 -d06066ae0ba8ffb338d6a00f556ae3ac FREDDI2.W32 - -(freddi2 cd russian) -sev -D:\Scummsrc.80\Sputm\*.c -5057fb0e99e5aa29df1836329232f101 FREDDI2.HE0 -1b6d479d15a7eb4a55c5e90711511b00 FREDDI2.HE1 -53f72ce417e28af51e3b8a60cd6ca5ef FREDDI2.HE2 -52494431dd3f658a8dc1d4348e677e48 FREDDI2.HE4 -a1a7f76f9de6b74031f4d6c9b8cbb130 FREDDI2.W32 - -(freddi2 cd dutch) -joostp -??? - -(freddi2 cd) -vampir_raziel -??? - -(freddi2 cd russian updated) -sev -c:\Build\SRC\SPUTM\Src\SrcPWin\*.cpp -c40f2b3cf5b82d34afc222779b3f0a7c FreddiCHSH.(a) -b92b53d360319b1e0fa93d353503fbfd FreddiCHSH.exe -e41de1c2a15abbcdbf9977e2d7e8a340 FreddiCHSH.he0 -83619bbe6b084ebf1ae53b5a56442719 FreddiCHSH.he2 -c366efa1e6b3d4406b5f3123c2247d8f FreddiCHSH.he4 - -(freddi cd hfs/he classics hfs/pajama cd hfs/puttzoo cd hfs) -khalek -1997-10-28 17:16 Freddi Fish 2 Demo -d7e1af5d819c98b2f0ec8150f54ad51f Freddi Fish 2 Demo -fc8d197a22146e74766e9cb0cfcaf1da Freddi Fish 2 Demo (0) -203cf83989f6410ec19edb9bd1455512 Freddi Fish 2 Demo (1) -f96261232a8a7ae6bc7478d8c1c5a49c Freddi Fish 2 Demo (2) -a97bf54bcae67fabb8d6e4a1e506efef Freddi Fish 2 Demo (4) - -(spyfox cd/pajama cd/puttzoo cd/he classics cd/pajama2 cd/freddi3 cd/baseball cd) -khalek, sev, Joachim -1996-10-17 03:54 ff2-demo.w32 -D:\Scummsrc.80\Sputm\*.c -9d4373de9fd1c25671de1500dbe358a2 FF2-DEMO.EXE -fc8d197a22146e74766e9cb0cfcaf1da FF2-DEMO.HE0 -203cf83989f6410ec19edb9bd1455512 FF2-DEMO.HE1 -f96261232a8a7ae6bc7478d8c1c5a49c FF2-DEMO.HE2 -a97bf54bcae67fabb8d6e4a1e506efef FF2-DEMO.HE4 -21935da87e116e29f558145b0c491770 FF2-DEMO.W32 - -(freddi2 demo hfs) -??? - -(ftp) -2002-06-05 15:23 ffhsdemo.exe -khalek -c:\Build\SRC\SPUTM\Src\*.cpp -874613bc4b14dba444b43e31d843e622 ffhsdemo.exe -d0a925e6d57938021ce5b1260731ec7d FFHSDemo.(a) -d37c55388294b66e53e7ced3af88fa68 ffhsdemo.he0 -d0a925e6d57938021ce5b1260731ec7d ffhsdemo.he1 -7480dfa29b4df0002d23c72bb4932dde ffhsdemo.he2 -a97bf54bcae67fabb8d6e4a1e506efef ffhsdemo.he4 - -(freddi3 cd hfs) -Joachim -560da18bc11f6cf7b068a96dd928ae7e Freddi Fish 3 -8368f552b1e3eba559f8d559bcc4cadb Freddi Fish 3 (0) -89bba1d711672a8b52ac4a47ffcf442c Freddi Fish 3 (1) -6e95640d43a66bdec5a9b9cd42921881 Freddi Fish 3 (2) -47fed8094093a2d4d9f8d4f61d51e088 Freddi Fish 3 (4) -d41d8cd98f00b204e9800998ecf8427e Freddi Fish 3 (r) - -(freddi3 cd) -sev, Joachim -D:\Scummsys.90\sputm.90\*.c -c0c0934580cde95879bef0b6a5a49c29 FREDDI3.D32 -56e44f51bd02de77cb75737e45396987 FREDDI3.EXE -8368f552b1e3eba559f8d559bcc4cadb FREDDI3.HE0 -89bba1d711672a8b52ac4a47ffcf442c FREDDI3.HE1 -6e95640d43a66bdec5a9b9cd42921881 FREDDI3.HE2 -47fed8094093a2d4d9f8d4f61d51e088 FREDDI3.HE4 -88d57485970d3e801364812c82dec001 FREDDI3.W32 - -(freddi3 cd russian) -sev -D:\Scummsys.90\sputm.90\*.c -8368f552b1e3eba559f8d559bcc4cadb FREDDI3.HE0 -28afc2494f8f5d45726409743c2763cc FREDDI3.HE1 -2be336eb6b1853c3493da984340dc80a FREDDI3.HE2 -211d598c446697f8203857d012d83d67 FREDDI3.HE4 -1f33f143fd76de496215eaa654a60f04 FREDDI3.W32 - -(freddi3 cd hfs german) -Joachim -e228f3d94242920355d8ffc1f478ddb9 FreddiFGT -83cedbe26aa8b58988e984e3d34cac8e FreddiFGT (0) -a850841f6486fd5c8f1731f3092abfd0 FreddiFGT (2) -3aab38ffaee61ada59211fa417231292 FreddiFGT (4) -1c17cedc8593e0caebbae3ca61a8a78d FreddiFGT (a) -01368f1a5c87746b09f50363696f5883 FreddiFGT (i) - -(freddi3 cd german) -Joachim -1c17cedc8593e0caebbae3ca61a8a78d FreddiFGT.(a) -0fb226dcdd09aaa48dd77925c467d1cd FreddiFGT.D32 -045e9fab1078af432741aff53e6e438b FreddiFGT.exe -83cedbe26aa8b58988e984e3d34cac8e FreddiFGT.HE0 -a850841f6486fd5c8f1731f3092abfd0 FreddiFGT.HE2 -3aab38ffaee61ada59211fa417231292 FreddiFGT.HE4 -d8fcf115eb08f1fbed13a61a23e37851 FreddiFGT.w32 - -(freddi3 cd dutch) -adutchguy -??? - -(freddi3 cd russian alt) -sev -D:\Scummsys.90\sputm.90\*.c -898ce8eb1234a955ef75e87141902bb3 FREDDI3.HE0 -78f35e7aab370a3b4e828d317ecd7f27 FREDDI3.HE1 -ba7fe7de583c9b7a1e9173afc5d75b42 FREDDI3.HE2 -ef0df7bdc61977f783dbe1e37f6a15fe FREDDI3.HE4 -88d57485970d3e801364812c82dec001 FREDDI3.W32 - -(freddi3 cd russian updated) -sev -d:\dev\SPUTM\Src\*.cpp -b2b8622d2a1d954fedf526043fc185eb FreddiSCS.(a) -75bff95816b84672b877d22a911ab811 FreddiSCS.he0 -39b5ea82513c799a6dba899b950c2977 FreddiSCS.he2 -fff20670a77450240918f8315fcfb33d FreddiSCS.HE4 -199a34d9dd51e79e2a5022c778321af8 freddiSCS.w32 - -(freddi cd hfs/freddi3 cd hfs/pajama2 cd hfs) -khalek, Joachim -1997-12-04 18:25 F3-Mdemo -e711a6fb0b7330782c6b5ae0e1283084 F3-Mdemo -cb1559e8405d17a5a278a6b5ad9338d1 F3-Mdemo (0) -a2fde75fcbd2376f057f4a40f9893cbe F3-Mdemo (1) -30e3f97a2290f0683ccedf8b08a6ba55 F3-Mdemo (2) -b90004518ba5bb4dc473170f5c975568 F3-Mdemo (4) -d41d8cd98f00b204e9800998ecf8427e F3-Mdemo (r) - -(pajama2 cd/freddi3 cd/freddi cd) -sev, Joachim -D:\Scummsys.90\sputm.90\*.c -c0c0934580cde95879bef0b6a5a49c29 F3-MDEMO.D32 -56e44f51bd02de77cb75737e45396987 F3-MDEMO.EXE -cb1559e8405d17a5a278a6b5ad9338d1 F3-MDEMO.HE0 -a2fde75fcbd2376f057f4a40f9893cbe F3-MDEMO.HE1 -30e3f97a2290f0683ccedf8b08a6ba55 F3-MDEMO.HE2 -b90004518ba5bb4dc473170f5c975568 F3-MDEMO.HE4 -66ed086cf061ca023e5924147fc585be F3-MDEMO.W32 - -(humongous ftp) -1997-10-28 12:42 f3-mdemo.w32 -khalek, sev, Joachim -D:\Scummsys.90\sputm.90\*.c -c0c0934580cde95879bef0b6a5a49c29 F3-MDEMO.D32 -56e44f51bd02de77cb75737e45396987 F3-MDEMO.EXE -cb1559e8405d17a5a278a6b5ad9338d1 F3-MDEMO.HE0 -a2fde75fcbd2376f057f4a40f9893cbe F3-MDEMO.HE1 -30e3f97a2290f0683ccedf8b08a6ba55 F3-MDEMO.HE2 -b90004518ba5bb4dc473170f5c975568 F3-MDEMO.HE4 -3ff95314abdeebe0b2d11f4417efa449 f3-mdemo.w32 - -(puttrace cd/soccer cd) -Joachim -c0c0934580cde95879bef0b6a5a49c29 F3-MDEMO.D32 -3ff95314abdeebe0b2d11f4417efa449 F3-MDEMO.EXE -cb1559e8405d17a5a278a6b5ad9338d1 F3-MDEMO.HE0 -a2fde75fcbd2376f057f4a40f9893cbe F3-MDEMO.HE1 -30e3f97a2290f0683ccedf8b08a6ba55 F3-MDEMO.HE2 -b90004518ba5bb4dc473170f5c975568 F3-MDEMO.HE4 - -(freddi3 demo hfs french) -kirben -??? - -(freddi3 demo french) -kirben -??? - -(freddi3 demo dutch) -adutchguy -??? - -(freddi4 cd hfs) -Joachim -382e75cc3252683c18ccb4b8a964b8bf Freddi 4 -4f580a021eee026f3b4589e17d130d78 Freddi 4 (0) -944d9c81ce26f8820bbd2a6d2c2d987c Freddi 4 (2) -d1c47dfa05160c783da89e6dc9894d3e Freddi 4 (4) -d3cb0cbdd52b7684d321a3630bdf8abc Freddi 4 (a) -d41d8cd98f00b204e9800998ecf8427e Freddi 4 (r) - -(freddi4 cd) -Joachim -d3cb0cbdd52b7684d321a3630bdf8abc FREDDI4.(A) -ccca9a823d117afb1a882fd707586bf0 FREDDI4.D32 -dbde280a3b554db62f8f7920775cbed5 FREDDI4.EXE -4f580a021eee026f3b4589e17d130d78 FREDDI4.HE0 -944d9c81ce26f8820bbd2a6d2c2d987c FREDDI4.HE2 -d1c47dfa05160c783da89e6dc9894d3e FREDDI4.HE4 -24b409ff575c52d385cdc6b7e91b5b79 FREDDI4.W32 - -(freddi4 cd russian) -sev -D:\scummsys.98\sputm.98\*.c -0fb24aa2d37a8a6cbf90066c2f792596 freddi4.(a) -4f580a021eee026f3b4589e17d130d78 freddi4.he0 -02d4dba3fedc64e24c1baa9523035701 freddi4.he2 -a2e2010e75a1fd164ef6fc58eae7238d freddi4.he4 -24b409ff575c52d385cdc6b7e91b5b79 freddi4.w32 - -(freddi4 cd dutch) -adutchguy -??? - -(freddi4 cd german) -Joachim -25da2483b1d36a35c371393e907f57bf FreddiGS.(a) -0fb226dcdd09aaa48dd77925c467d1cd FreddiGS.D32 -e9e4997d16bc12ec0d7048571c84023b FREDDIGS.EXE -b5298a5c15ffbe8b381d51ea4e26d35c FreddiGS.HE0 -ee9720cc979cbad31193895c91e530f6 FreddiGS.HE2 -766c4f81601fe5fd69f6975c1dc51b98 FreddiGS.HE4 -25cb2425ded9b2e7557e8eb4dd7bb8d6 FreddiGS.w32 - - -(freddi4 cd russian updated} -sev -C:\HESystems\SPUTM\Src\*.cpp -658d27fdb9219f5c62468314cf0007ff FreddiHRBG.(a) -78bd5f036ea35a878b74e4f47941f784 FreddiHRBG.he0 -1d4023e93ffde7dae77426d293dab95b FreddiHRBG.he2 -ae8defe36ebe7d46f7b1796f3e95b139 FreddiHRBG.he4 -74b50dcbd98cd9bb3560be9a918c37db FreddiHRBG.w32 - -(freddi4 russian alt) -sev -D:\scummsys.98\sputm.98\*.c -41c340501caa1bf90cb0107679bf3e03 FREDDI4.(A) -07b810e37be7489263f7bc7627d4765d FREDDI4.HE0 -b90be0993b688bfcdd361c55fd263ccc FREDDI4.HE2 -d1c47dfa05160c783da89e6dc9894d3e FREDDI4.HE4 -8da938ee682f5f83aa2d51789e9602f4 FREDDI4.W32 - -(humongous ftp/pajama3 cd hfs/spyfox2 cd hfs/football cd hfs) -Joachim -8a61ffd683a01c2cddd9bb37e2fff119 Freddi 4 Demo -7c2e76087027eeee9c8f8985f93a1cc5 Freddi 4 Demo (0) -23632be3c8c4e77c3917148c5f8e56ef Freddi 4 Demo (2) -0453fdf42a9aa750ed198bca1d9f8e91 Freddi 4 Demo (4) -53b0e5c820bd264684df59231dbdc031 Freddi 4 Demo (a) -d41d8cd98f00b204e9800998ecf8427e Freddi 4 Demo (r) - -(humongous ftp) -1999-02-08 19:21 F4-demo.w32 -khalek, sev, Joachim -D:\scummsys.98\sputm.98\*.c -53b0e5c820bd264684df59231dbdc031 f4-demo.(a) -ccca9a823d117afb1a882fd707586bf0 F4-demo.d32 -dbde280a3b554db62f8f7920775cbed5 F4-demo.exe -7c2e76087027eeee9c8f8985f93a1cc5 f4-demo.HE0 -23632be3c8c4e77c3917148c5f8e56ef f4-demo.he2 -0453fdf42a9aa750ed198bca1d9f8e91 f4-demo.he4 -24b409ff575c52d385cdc6b7e91b5b79 F4-demo.w32 - -(pajama3 cd/spyfox2 cd/football cd) -Joachim -53b0e5c820bd264684df59231dbdc031 f4-demo.(a) -ccca9a823d117afb1a882fd707586bf0 F4-demo.d32 -24b409ff575c52d385cdc6b7e91b5b79 F4-demo.exe -7c2e76087027eeee9c8f8985f93a1cc5 f4-demo.HE0 -23632be3c8c4e77c3917148c5f8e56ef f4-demo.he2 -0453fdf42a9aa750ed198bca1d9f8e91 f4-demo.he4 - -(puttsfunshop cd hfs/puttcircus cd hfs/putttime cd hfs/spyozon cd hfs/freddicove cd hfs) -Joachim -7b08032b5e6ad870170e0d82d5786909 Freddi 4 Demo -ebd324dcf06a4c49e1ba5c231eee1060 Freddi 4 Demo (0) -23632be3c8c4e77c3917148c5f8e56ef Freddi 4 Demo (2) -0453fdf42a9aa750ed198bca1d9f8e91 Freddi 4 Demo (4) -0a5e8a6eb824c9e006dea982adf72d1e Freddi 4 Demo (a) -d41d8cd98f00b204e9800998ecf8427e Freddi 4 Demo (i) - - -(puttsfunshop cd/puttcircus cd/putttime cd/spyozon cd/freddicove cd/soccerMLS cd) -sev, Joachim -C:\Documents and Settings\stevej\My Documents\HECode\SPUTM\Src\*.cpp -0a5e8a6eb824c9e006dea982adf72d1e f4-demo.(a) -ccca9a823d117afb1a882fd707586bf0 f4-demo.D32 -20f57c3bf3f9fae1f88df9434bfd78e0 f4-demo.exe -ebd324dcf06a4c49e1ba5c231eee1060 f4-demo.HE0 -23632be3c8c4e77c3917148c5f8e56ef f4-demo.he2 -0453fdf42a9aa750ed198bca1d9f8e91 f4-demo.he4 - -(freddi4 demo hfs) -??? - -(dog cd) -sev -D:\scummsys.98\sputm.98\*.c -bd6a0ac7c15562250349dd5b64709e92 F4-DEMO.(A) -ccca9a823d117afb1a882fd707586bf0 F4-demo.d32 -24b409ff575c52d385cdc6b7e91b5b79 F4-demo.exe -c25755b08a8d0d47695e05f1e2111bfc F4-DEMO.HE0 -23632be3c8c4e77c3917148c5f8e56ef F4-DEMO.HE2 -0453fdf42a9aa750ed198bca1d9f8e91 F4-DEMO.HE4 - -(freddi4 demo hfs german) -Joachim -c089c75f6bc0f4a60c621a957043d279 Ff4demo -688328c5bdc4c8ec4145688dfa077bf2 Ff4demo (0) -3ad28b05239e4480644bea99d3804622 Ff4demo (2) -0453fdf42a9aa750ed198bca1d9f8e91 Ff4demo (4) -0eef3e0fca1f1ab0204982234be943a0 Ff4demo (a) -d41d8cd98f00b204e9800998ecf8427e Ff4demo (i) - -(freddi4 demo german) -Joachim -0eef3e0fca1f1ab0204982234be943a0 Ff4demo.(a) -2188b22aa1534b5248a8aa7dfa9c7861 Ff4demo.d32 -e179e35382bdc90601e01612c7a52ce8 FF4DEMO.EXE -688328c5bdc4c8ec4145688dfa077bf2 Ff4demo.HE0 -3ad28b05239e4480644bea99d3804622 Ff4demo.HE2 -0453fdf42a9aa750ed198bca1d9f8e91 Ff4demo.he4 - -(freddi4 demo dutch) -joostp -??? - -(freddi4 demo dutch) -adutchguy -??? - -(PuttTime CD UK release) -eriktorbjorn -d:\dev\SPUTM\Src\*.cpp -a2bb4dbf44dbf26587c2c213064853a8 FF4DEMO.(A) -cb52cbabfa8e91b76a0c6d76ded339c6 ff4demo.exe -e03ed1474ec14de78359970e0457a820 FF4DEMO.HE0 -15c9746d2d612d2693ec7e509c4e9fb5 FF4DEMO.HE2 -9470cd17e5e301f33876477f14992f29 ff4demo.he4 - -(Kellogg cereals pack) -bc20db254834452db602728f90e9a6d4 FreddiMini.(a) -d1286487c342ac81b28f3e1b90a2b7f3 FreddiMini.D32 -03d3b18ee3fd68114e2a687c871e38d5 FreddiMini.HE0 -cb52cbabfa8e91b76a0c6d76ded339c6 FreddiMini.exe -38189191a5824dd54377f0dbd4779046 FreddiMini.he2 -9470cd17e5e301f33876477f14992f29 FreddiMini.he4 - - -(freddicove hfs cd) -Joachim -b8ae37c647509afe5a406cab82e8f789 FreddiCove -590e6546aacd0d374b7f3a4f53013ab1 FreddiCove (0) -52b33175cf8abfbadcafbd4702275e0d FreddiCove (2) -a9f9f4a7ad25a3efda4626d4b6c80ffb FreddiCove (3) -dfbd9adb0d406184383dd069a64c8757 FreddiCove (4) -04ad937605bffa28fdf47693e61620cc FreddiCove (a) -63082e55aefcec01986fdfda9c57e55a FreddiCove (i) - -(freddicove cd) -Joachim -C:\Spyfox3Sputm\Src\SrcPWin\*.cpp -04ad937605bffa28fdf47693e61620cc freddicove.(a) -b4c292854d70ff6cf89e20030630c5e0 freddicove.EXE -590e6546aacd0d374b7f3a4f53013ab1 freddicove.HE0 -52b33175cf8abfbadcafbd4702275e0d freddicove.he2 -a9f9f4a7ad25a3efda4626d4b6c80ffb FreddiCove.he3 -dfbd9adb0d406184383dd069a64c8757 freddicove.he4 -213f75f25b1c92c1b401203440e2720e freddicove.w32 - -(freddicove cd) -sev -C:\Spyfox3Sputm\Src\SrcPWin\*.cpp -04ad937605bffa28fdf47693e61620cc FREDDICOVE.(A) -b4c292854d70ff6cf89e20030630c5e0 FREDDICOVE.EXE -590e6546aacd0d374b7f3a4f53013ab1 FREDDICOVE.HE0 -52b33175cf8abfbadcafbd4702275e0d FREDDICOVE.HE2 -a9f9f4a7ad25a3efda4626d4b6c80ffb FREDDICOVE.HE3 -dfbd9adb0d406184383dd069a64c8757 FREDDICOVE.HE4 - -(freddicove cd russian) -sev -C:\Spyfox3Sputm\Src\SrcPWin\*.cpp -04ad937605bffa28fdf47693e61620cc FREDDICOVE.(A) -b4c292854d70ff6cf89e20030630c5e0 FREDDICOVE.EXE -590e6546aacd0d374b7f3a4f53013ab1 FREDDICOVE.HE0 -62c6daba6da11b26e259e49c092cb08f FREDDICOVE.HE2 -a9f9f4a7ad25a3efda4626d4b6c80ffb FREDDICOVE.HE3 -dfbd9adb0d406184383dd069a64c8757 FREDDICOVE.HE4 - -(freddicove cd dutch) -adutchguy -??? - -(freddicove cd russian alt) -sev -C:\Spyfox3Sputm\Src\SrcPWin\*.cpp -2cac27c79aebf9db05ed516783d950a6 freddicove.(a) -21abe302e1b1e2b66d6f5c12e241ebfd freddicove.HE0 -52b33175cf8abfbadcafbd4702275e0d freddicove.he2 -a9f9f4a7ad25a3efda4626d4b6c80ffb FreddiCove.he3 -dfbd9adb0d406184383dd069a64c8757 freddicove.he4 -ca263c140b091bff2b31b1570e47aebe freddicove.w32 - -(freddicove cd russian updated) -sev -C:\HE_dev\SPUTM\Src\*.cpp -50211d918df60b69d78c03962a5b09ed FreddiCCC.(a) -b3d5a75a35d165c5750ab84fdc6fd638 FreddiCCC.EXE -4ce2d5b355964bbcb5e5ce73236ef868 FreddiCCC.HE0 -2890b42997816aae1bcaa618e77444bf FreddiCCC.he2 -2f238b51cfad1b8b5c179468a19aa29b FreddiCCC.he3 -29ef3472e3675c4a0e6ea440e0df4ffd FreddiCCC.he4 - -(freddicove demo dutch) -kirben, sev -??? - -(freddicove demo hfs) -??? - -(pajama4 cd) -sev -c:\SRC_RELEASE\SPUTM\Src\SrcPWin\*.cpp -f1b5cd6bceb50f8296d7a8db6efb69ec FFCoveDemo.(a) -e856bf226130de0d84bcaaa7ecfb5a3a FFCoveDemo.d32 -554762d1e011ade6cc29ab8024124017 FFCoveDemo.exe -45082a5c9f42ba14dacfe1fdeeba819d FFCoveDemo.HE0 -0c8f5b94bee7ddcbe5d41abce1daf9e3 ffCoveDemo.he2 -af9375aa14e4d967801938ee355e1486 ffCoveDemo.he4 -912c159f4a0232ceaff2b6759b18fd2f ffCoveDemo.w32 - -(super duper arcade 1 cd hfs) -Joachim -20b697227835007b68aaf078d19e239d Water Worries -4ba37f835be11a59d969f90f272f575b Water Worries (0) -e577863ba03c4c1001052e6c809bf66a Water Worries (1) -9d4a6d9c383ab9b1d0a486a5bb6bfb34 Water Worries (2) -3d5f7153500339e05815cfa9c3e9369e Water Worries (4) -2856fa0e0e74484f9c55dc58b2e9203c Water Worries (7) - -(super duper arcade 1 cd) -Joachim -7a266bd72dc8ae9a4d1c209e49502c00 Water.a32 -9a8e77ece8ed9cfcadd214ad0efabcee water.exe -4ba37f835be11a59d969f90f272f575b WATER.HE0 -e577863ba03c4c1001052e6c809bf66a WATER.HE1 -9d4a6d9c383ab9b1d0a486a5bb6bfb34 water.He2 -3d5f7153500339e05815cfa9c3e9369e water.he4 -2856fa0e0e74484f9c55dc58b2e9203c WATER.HE7 - - -(water cd hfs) -Joachim -2856fa0e0e74484f9c55dc58b2e9203c Water (7) -91a8077251d21b9a060792f50df91cbc Water Worries -f1b0e0d587b85052de5534a3847e68fe Water Worries (0) -162e516eaea7f6635e0d09923ed819d2 Water Worries (2) -3d5f7153500339e05815cfa9c3e9369e Water Worries (4) -bc97954ab2fd772d67ed91d21cd67cfd Water Worries (A) -e39e1837ed467d2e26fb57d9f14624ed Water Worries (i) -d41d8cd98f00b204e9800998ecf8427e Water Worries (r) - -(water cd) -Joachim -bc97954ab2fd772d67ed91d21cd67cfd Water.(a) -ccca9a823d117afb1a882fd707586bf0 Water.d32 -20902148fe2cdaaf73ad7fdf3663c01d Water.exe -f1b0e0d587b85052de5534a3847e68fe Water.he0 -162e516eaea7f6635e0d09923ed819d2 Water.he2 -3d5f7153500339e05815cfa9c3e9369e Water.he4 -2856fa0e0e74484f9c55dc58b2e9203c Water.he7 -2eacfb93a578132a2194937dc4be7c85 WATER.w32 - - -(water cd russian) -sev -D:\scummsys\sputm80\*.c -214d0ece69f444cc2ced3fd7bc0738dc Water.a32 -2012f854d83d9cc6f73b2b544cd8bbf8 WATER.HE0 -967f8921b88bebc81dc08cef276cdb3f WATER.HE1 -243bedd4215ec0640df55a35394b6778 water.He2 -3d5f7153500339e05815cfa9c3e9369e WATER.HE4 -2856fa0e0e74484f9c55dc58b2e9203c WATER.HE7 - -(water cd russian updated) -sev -D:\scummsys\sputm80\*.c -c2e40b953f90ed35926a958cc8cb6a52 WATER.HE2 -3d5f7153500339e05815cfa9c3e9369e WATER.HE4 -2856fa0e0e74484f9c55dc58b2e9203c WATER.HE7 -0be4193477036d3b1c57b5aaa0f4a709 WATER.W32 -6271130f440066830eca9056c1d7926f water.he0 -96a30e55cb95fc0611e4353637d6e5a7 water.he1 - -(maze cd hfs) -Kirben -??? - -(maze cd) -Kirben -??? - -(super duper arcade 2 cd hfs) -Kirben, Joachim -20d2fe8f124bd4224c52f4a545995895 Maze Madness -4f04b321a95d4315ce6d65f8e1dd0368 Maze Madness (0) -4efc960a9e16764ad3cdaa64ee79f4f7 Maze Madness (1) -86e4d05f086ab253e41eea36f9953b7b Maze Madness (2) -818620a54fe0232fa17d6df1c3e547aa Maze Madness (4) -40175d873ed23efa26dd49e3e108e943 Maze Madness (8) - - -(super duper arcade 2 cd) -Kirben, Joachim -6b201406803dfce87682febb6d99c155 maze.a32 -0c80dbb40c4edb8c9c93f7cebc34f4ab MAZE.EXE -4f04b321a95d4315ce6d65f8e1dd0368 maze.HE0 -4efc960a9e16764ad3cdaa64ee79f4f7 maze.HE1 -86e4d05f086ab253e41eea36f9953b7b maze.he2 -818620a54fe0232fa17d6df1c3e547aa maze.he4 -40175d873ed23efa26dd49e3e108e943 maze.he8 - -(freddisfunshop cd hfs) -Joachim -430d3ede85344fe8ca75f8b446be8a53 Freddi's FunShop -16542a7342a918bfe4ba512007d36c47 Freddi's FunShop (0) -ac8faff875fd9e47328c0ad6dacc1326 Freddi's FunShop (2) -db2ef7f3fdce0c5aa8932138636ab63b Freddi's FunShop (4) -895b6746ab176b3ba3e70afa3ce6588b Freddi's FunShop (a) -7a7b1e2d7b17c616c300ea736276f8e4 Freddi's FunShop (b) -de6b13747c34a629162dd257cc4f0866 Freddi's FunShop (i) -2d4bcfe0a03f44876182664b303f2bf7 Freddi's FunShop (u) - -(freddisfunshop cd) -Joachim -895b6746ab176b3ba3e70afa3ce6588b FreddisFunShop.(a) -7a7b1e2d7b17c616c300ea736276f8e4 FreddisFunShop.(b) -ccca9a823d117afb1a882fd707586bf0 FreddisFunShop.d32 -4bb50266471b1955d423d40fc716ecbf FreddisFunShop.exe -16542a7342a918bfe4ba512007d36c47 FreddisFunShop.HE0 -ac8faff875fd9e47328c0ad6dacc1326 FreddisFunShop.he2 -db2ef7f3fdce0c5aa8932138636ab63b FreddisFunShop.he4 -d82da74cd5b040fdbee2330c85006810 FreddisFunShop.map -39c468587c4bdad304be49e8d4041a22 FreddisFunShop.u32 -1f102a306b108951c86d0ea9f849935c FreddisFunShop.w32 -a38b59ccd74792e348b57e6f07ce2ccc FreddisFunShop.x32 - -(puttputt cd/puttmoon cd/fbear cd) -khalek, sev, Joachim -7.0.0 (Feb 8 1995 16:33:26) -d4d3dd3b039a5c0ecfae502064b5b2de CATALOG.EXE -11e6e244078ff09b0f3832e35420e0a7 CATALOG.HE0 -0cb65eb736529221b9269b15a7fd1914 CATALOG.HE1 -c0e6ea1d47493cca09fc674c3d097836 CATALOG.HE2 -c0e6ea1d47493cca09fc674c3d097836 CATALOG.HE3 -1978944e3e597362d3f4f13606ab2264 CATALOG.W32 - -(farm cd/airport cd/jungle cd/airport hfs/jungle hfs) -khalek, sev, Joachim -7.0.0 (Jun 22 1995 14:01:50) -698d32c4dd2cca76918710665a8c3e6c CATALOG2.EXE -037385a953789190298494d92b89b3d0 CATALOG2.HE0 -d43e75c3e71f3668727f436b4c777334 CATALOG2.HE1 -c0e6ea1d47493cca09fc674c3d097836 CATALOG2.HE2 -c0e6ea1d47493cca09fc674c3d097836 CATALOG2.HE3 -d33843ac942167d564ae5682e2b381c3 CATALOG2.W32 - -(airport cd hfs) -Joachim -df6c3ad8f24c73b153e1d1fe1f011f5b The AirPort -d6334a5a9b61afe18c368540fdf522ca The AirPort (0) -e51ba2794c8fbe267b3cc9cf5f511ea9 The AirPort (1) -0d20f6a921a35ed907a875e26e050b9c The AirPort (2) -45348231d5da1aaa87e65ca170956eee The AirPort (4) -cb6ef7b42f7804834a731826567d4212 The AirPort (7) -765492059d83bc0ae8c30a4feef50a6a The AirPort (9) - -(trips collection cd/airport cd/airport cd hfs) -sev, Joachim -7.0.0 (Jul 1 1995 21:55:39) -d031299fa80f81b7348ed57665aea617 AIRPORT.EXE -07433205acdca3bc553d0e731588b35f AIRPORT.HE0 -1a40631092357a0a2fb63ed881a83730 AIRPORT.HE1 -0d20f6a921a35ed907a875e26e050b9c AIRPORT.HE2 -c0e6ea1d47493cca09fc674c3d097836 AIRPORT.HE3 -45348231d5da1aaa87e65ca170956eee AIRPORT.HE4 -cb6ef7b42f7804834a731826567d4212 AIRPORT.HE7 -765492059d83bc0ae8c30a4feef50a6a AIRPORT.HE9 -3c45181f2f31b7d67932295d0f2bafcb AIRPORT.W32 - -(farm cd hfs/freddi cd hfs/he classics hfs/chase hfs/baseball hfs/pajama2 hfs/freddi3 hfs/socks hfs/thinker1 hfs/thinkerk hfs/jungle hfs) -khalek, Joachim (comment: checked all MD5s, there is only 1 Mac-Demo-Version for sure) -1995-09-14 17:20 Airport Demo -af4f7ee28b83c0ba471459a779a34043 Airport Demo -7ea2da67ebabea4ac20cee9f4f9d2934 Airport Demo (0) -608f6b919b663642be7104c14440434f Airport Demo (1) -858db51aa87dd51df99c00c0bab31d65 Airport Demo (2) -42161ad979949daf67924b5227b94f2d Airport Demo (4) -765492059d83bc0ae8c30a4feef50a6a Airport Demo (9) - -(puttputt cd/fbear cd/puttmoon cd/) -khalek, sev, Joachim -7.0.0 (Feb 8 1995 16:33:47) -009e6924ae0913e7728e9a7f70f5a9db AIRDEMO.EXE -86c9902b7bec1a17926d4dae85beaa45 AIRDEMO.HE0 -e5ce3f8cddd5d54aaf2b040c831dcc96 AIRDEMO.HE1 -858db51aa87dd51df99c00c0bab31d65 AIRDEMO.HE2 -c0e6ea1d47493cca09fc674c3d097836 AIRDEMO.HE3 -42161ad979949daf67924b5227b94f2d AIRDEMO.HE4 -765492059d83bc0ae8c30a4feef50a6a AIRDEMO.HE9 -a16fc5d8c29efffb65f84f3a42b154f1 AIRDEMO.W32 - -(spyfox cd/pajama cd/puttzoo cd/he classics cd/freddi2 cd/baseball cd/thinker1 cd/thinkerk cd/socks cd/) -khalek, sev, Joachim -7.0.0 (Jul 5 1995 14:46:05) -371f3abc95359eff033e6ef47c27190b AIRDEMO.EXE -e144f5f49d9241d2a9dee2576b3d09cb AIRDEMO.HE0 -855ecd2da58317064d2e01263d6ca493 AIRDEMO.HE1 -858db51aa87dd51df99c00c0bab31d65 AIRDEMO.HE2 -c0e6ea1d47493cca09fc674c3d097836 AIRDEMO.HE3 -42161ad979949daf67924b5227b94f2d AIRDEMO.HE4 -765492059d83bc0ae8c30a4feef50a6a AIRDEMO.HE9 -a5459bfe36183cf1f4ced00fe325aa90 AIRDEMO.W32 - -(farm cd/airport cd/airport hfs/jungle cd/jungle hfs/) -khalek, sev, Joachim -7.0.0 (Jun 22 1995 14:06:25) -371f3abc95359eff033e6ef47c27190b AIRDEMO.EXE -8ffd618a776a4c0d8922bb28b09f8ce8 AIRDEMO.HE0 -64fb30a7c26d119216cdadaff1b4e1bd AIRDEMO.HE1 -858db51aa87dd51df99c00c0bab31d65 AIRDEMO.HE2 -c0e6ea1d47493cca09fc674c3d097836 AIRDEMO.HE3 -42161ad979949daf67924b5227b94f2d AIRDEMO.HE4 -765492059d83bc0ae8c30a4feef50a6a AIRDEMO.HE9 -3d43af3f3ecc18744dda721d951e2a2f AIRDEMO.W32 - -(freddi cd/pajama2 cd/freddi3 cd/chase cd) -khalek, sev, Joachim -7.0.0 (Jul 5 1995 14:46:05) -371f3abc95359eff033e6ef47c27190b AIRDEMO.EXE -8ffd618a776a4c0d8922bb28b09f8ce8 AIRDEMO.HE0 -64fb30a7c26d119216cdadaff1b4e1bd AIRDEMO.HE1 -858db51aa87dd51df99c00c0bab31d65 AIRDEMO.HE2 -c0e6ea1d47493cca09fc674c3d097836 AIRDEMO.HE3 -42161ad979949daf67924b5227b94f2d AIRDEMO.HE4 -765492059d83bc0ae8c30a4feef50a6a AIRDEMO.HE9 -a5459bfe36183cf1f4ced00fe325aa90 AIRDEMO.W32 - -(farm cd hfs) -khalek -1995-09-16 14:11 The Farm -f4f88abc0635e80a4fc8c605ce9d0db3 The Farm -fbbbb38a81fc9d6a61d509278390a290 The Farm (0) -3941f75ccb280e7c73890833f2a09514 The Farm (1) -e778f5f5bbc457966f6ac90ec8f3d9ee The Farm (2) -449029f90e778a4504de146ca9d0963b The Farm (4) -3d29c1d665dcb4e4b036dfc7752b990b The Farm (9) - -(farm cd/trips collection cd) -khalek, sev -7.0.0 (Jun 11 1996 19:12:56) -a85856675429fe88051744f755b72f93 farm.he0 -3e1111db20b879a482814b4a06122672 farm.he1 -e778f5f5bbc457966f6ac90ec8f3d9ee farm.he2 -c0e6ea1d47493cca09fc674c3d097836 farm.he3 -449029f90e778a4504de146ca9d0963b farm.he4 -3d29c1d665dcb4e4b036dfc7752b990b farm.he9 -fa49452f871e506a6930cc8697db6181 farm.w32 - -(airport hfs) -Joachim -19a57595f7d2367286058a41241e574a Farm Demo -39fd6db10d0222d817025c4d3346e3b4 Farm Demo (0) -ba3cb50770848a91216565b91edf8579 Farm Demo (1) -706d44b32f7c74e98ff4fe88d625826d Farm Demo (2) -ad6a4dea7b696a28b99d40ea1d685788 Farm Demo (4) - -(farm demo dutch) -adutchguy -??? - -(farm cd/pajama cd/airport cd/jungle cd/airport hfs/jungle hfs) -khalek, sev, Joachim -7.0.0 (Jun 22 1995 14:05:27) -2e698fdcf17be7de5c70e9a66d6e8fc0 FARMDEMO.EXE -8d479e36f35e80257dfc102cf4b8a912 FARMDEMO.HE0 -4d4cb9fdb5a0f3b651bbf0f80735cbe2 FARMDEMO.HE1 -706d44b32f7c74e98ff4fe88d625826d FARMDEMO.HE2 -c0e6ea1d47493cca09fc674c3d097836 FARMDEMO.HE3 -ad6a4dea7b696a28b99d40ea1d685788 FARMDEMO.HE4 -daca65342b60a86a8ba5fbbd5d8b71d4 FARMDEMO.W32 - -(puttputt cd/puttmoon cd/fbear cd) -khalek, sev, Joachim -7.0.0 (Oct 13 1994 19:15:16) -1b6b66d63a7e80edde33a9b2f57011ba FARMDEMO.EXE -bf8b52fdd9a69c67f34e8e9fec72661c FARMDEMO.HE0 -6f5d57f1fdc449424792d840a9c85acc FARMDEMO.HE1 -706d44b32f7c74e98ff4fe88d625826d FARMDEMO.HE2 -1c26d0c926e9c31d1b77c0611a643dc9 FARMDEMO.HE3 -cdadbf8daf9c8f811dac28d348ff8825 FARMDEMO.W32 - -(jungle hfs) -Joachim -0e896300a0af8bd43f82d57a9da6a525 The Jungle -659942b9a6b519f123a13cca3c333a13 The Jungle (0) -0212155e5de27230b4ce5e36fb910945 The Jungle (1) -9a5bf899124f45288749d81a0918907a The Jungle (2) -222ad352670c1d94366a8511af846f49 The Jungle (4) -f80c48c622ba21d46fc518630f324cf7 The Jungle (9) - - -(trips collection cd/jungle cd) -sev, joachim -7.0.0 (Oct 5 1995 08:20:42) -11994b691574b2ecea7043a80a908647 JUNGLE.EXE -8801fb4a1200b347f7a38523339526dd JUNGLE.HE0 -1b39261e8d7e7384cf47fe9a6fa808d8 JUNGLE.HE1 -9a5bf899124f45288749d81a0918907a JUNGLE.HE2 -c0e6ea1d47493cca09fc674c3d097836 JUNGLE.HE3 -222ad352670c1d94366a8511af846f49 JUNGLE.HE4 -f80c48c622ba21d46fc518630f324cf7 JUNGLE.HE9 -d8561c70fe52082eace566fe038995f7 JUNGLE.W32 - -(pajama cd hfs) -Kirben -??? - -(pajama cd) -Kirben -??? - -(pajama cd hfs) -khalek -1996-09-12 20:55 Pajama Sam -57fab7dc46bb7d9450970d95cf14e8fc Pajama Sam -672dec94b82f7f0877ebb5b5cf7f4bc1 Pajama Sam (0) -2e83592ae635f53d1cc94c3d98da6335 Pajama Sam (1) -048a2cb8baad19ca90a4510783ab032b Pajama Sam (2) -147be86929b5969224c72edac30896fd Pajama Sam (4) -2546d42491fa61ac8e2d20d68d264fce Pajama Sam (7) - -(pajama cd) -khalek, sev -1996-09-14 00:28 pajama.w32 -D:\Scummsrc.80\Sputm\*.c -672dec94b82f7f0877ebb5b5cf7f4bc1 pajama.he0 -2e83592ae635f53d1cc94c3d98da6335 pajama.he1 -048a2cb8baad19ca90a4510783ab032b pajama.he2 -4417ea03a6d1b0b7522526f41d1097f6 pajama.he3 -147be86929b5969224c72edac30896fd pajama.he4 -2546d42491fa61ac8e2d20d68d264fce pajama.he7 -8e0e6d39728cc6a87b32f5e71f602b20 pajama.w32 - -(pajama cd dutch) -joostp -??? - -(pajama cd) -Joachim -1e5baa49222b0f6a6cb671bf6cb208d8 Pajama.(a) -ccca9a823d117afb1a882fd707586bf0 pajama.d32 -8f18bc14ff62d55d20cb3a9dc2ac1451 Pajama.exe -898eaa21f79cf8d4f08db856244689ff Pajama.HE0 -4dc07befa5e311abd787a2580c91a12d Pajama.he2 -f81b518a579d83c8d4d1911a365ea982 Pajama.he3 -147be86929b5969224c72edac30896fd Pajama.he4 -2546d42491fa61ac8e2d20d68d264fce Pajama.he7 -2c0273605aecaf223287da677679e42a pajama.w32 - -(freddi cd hfs/he classics hfs/puttzoo cd hfs) -khalek -1997-10-28 17:16 Pajama Sam Demo -3b032e02ccbc5d65c7397cfb32f65f1d Pajama Sam Demo -f237bf8a5ef9af78b2a6a4f3901da341 Pajama Sam Demo (0) -5c12305ff68ed053daba74a700a56ad2 Pajama Sam Demo (1) -4ccd03ca710a9053c42292cae09a6471 Pajama Sam Demo (2) -6e0fdfcf13e37b659b7155cf5969965f Pajama Sam Demo (4) - -(spyfox cd/puttzoo cd/he classics cd/pajama2 cd/freddi cd/freddi2 cd/freddi3 cd/baseball cd) -khalek, sev, Joachim -1996-10-31 22:34 pjs-demo.w32 -D:\Scummsrc.80\Sputm\*.c -11875252dea74302ea77f8adeaf9c2e9 PJS-DEMO.EXE -f237bf8a5ef9af78b2a6a4f3901da341 PJS-DEMO.HE0 -5c12305ff68ed053daba74a700a56ad2 PJS-DEMO.HE1 -4ccd03ca710a9053c42292cae09a6471 PJS-DEMO.HE2 -6e0fdfcf13e37b659b7155cf5969965f PJS-DEMO.HE4 -0c7e0d0ef005f289e9ca06bbbf5e8839 PJS-DEMO.W32 - -(pajama demo hfs) -khalek -??? - -(ftp) -2002-05-20 15:11 PjSamDemo.exe -khalek, sev -c:\Build\SRC\SPUTM\Src\SrcPWin\*.cpp -1f5564cba5d070703c85fe8eda1f6236 PjSamDemo.(a) -2c380ca1224d0c83a9de178546028cb5 PjSamDemo.exe -d7ab7cd6105546016e6a0d46fb36b964 PjSamDemo.he0 -5207295bb0b0e0b3f71b7593dd7c3a81 PjSamDemo.he2 -6e0fdfcf13e37b659b7155cf5969965f PjSamDemo.he4 - -(pajama demo hfs french) -Kirben -??? - -(pajama demo french) -Kirben -??? - -(pajama demo dutch) -adutchguy -??? - -(pajama2 cd hfs) -Joachim -b921d8279b5a3aa567c669b83d89e489 Pajama Sam 2 -d4e79c3d8645b8266cd78c325bc35154 Pajama Sam 2 (0) -cf1e7394ae00c0c65fa5af486e752e5c Pajama Sam 2 (1) -53f95adc8f6727d26e3248fb1bad8180 Pajama Sam 2 (2) -297787a960f2b591bb98add9b0689e9f Pajama Sam 2 (4) -d41d8cd98f00b204e9800998ecf8427e Pajama Sam 2 (r) - -(pajama2 cd) -sev, Joachim -D:\scummsys.95\sputm.95\*.cpp -ccca9a823d117afb1a882fd707586bf0 PAJAMA2.D32 -1830278a7bef7d5800ba02f816dbe373 PAJAMA2.EXE -d4e79c3d8645b8266cd78c325bc35154 PAJAMA2.HE0 -cf1e7394ae00c0c65fa5af486e752e5c PAJAMA2.HE1 -53f95adc8f6727d26e3248fb1bad8180 PAJAMA2.HE2 -297787a960f2b591bb98add9b0689e9f PAJAMA2.HE4 -44a282944b6392ad883a48fc03f37146 PAJAMA2.W32 -58dfc09f344a9dec565bb914920800d3 PAJAMA2.X32 - -(pajama2 cd hfs german) -Joachim -7ba80800b1302376b3a3d4d26d42aa50 PyjamaDBMN -c6907d44f1166941d982864cd42cdc89 PyjamaDBMN (0) -b4ecb33716598531823dc2a971a762f1 PyjamaDBMN (2) -297787a960f2b591bb98add9b0689e9f PyjamaDBMN (4) -55f4e9402bec2bded383843123f37c5c PyjamaDBMN (a) -01368f1a5c87746b09f50363696f5883 PyjamaDBMN (i) - -(pajama2 cd german) -Joachim -55f4e9402bec2bded383843123f37c5c PyjamaDBMN.(a) -b27cc88bc13451e9334fbf1d5f3c9c52 PyjamaDBMN.D32 -cecafac67b1f299b6f1c326bc58ba50f PyjamaDBMN.EXE -c6907d44f1166941d982864cd42cdc89 PyjamaDBMN.HE0 -b4ecb33716598531823dc2a971a762f1 PyjamaDBMN.HE2 -297787a960f2b591bb98add9b0689e9f PyjamaDBMN.HE4 -b27bf7501668c7244baf779a947b585c PyjamaDBMN.w32 - -(pajama2 cd russian updated) -sev -d:\dev\SPUTM\Src\*.cpp -486b48e4ae421cdbecfcc1431c7e801f PajamaTAL.(a) -738be524db140dc1c7fd6ddfab647c0b PajamaTAL.exe -32709cbeeb3044b34129950860a83f14 PajamaTAL.he0 -f71fe00306d8246bd5f7ee99703aaaff PajamaTAL.he2 -297787a960f2b591bb98add9b0689e9f PajamaTAL.he4 - -(pajama2 demo dutch hfs) -Kirben -??? - -(pajama2 demo dutch) -Kirben -??? - -(freddi2 cd hfs/freddi4 cd hfs/pajama3 cd hfs/puttrace cd hfs/putttime cd hfs/puttzoo cd hfs/spyfox cd hfs/superarcade1 cd hfs/superarcade2 cd hfs/water cd hfs/football cd hfs/soccer cd hfs) -sev, Joachim -01bae6f21e5c42b6a776efd57f363eb1 PJ2Demo -36a6750e03fb505fc19fc2bf3e4dbe91 PJ2Demo (0) -6b1f2b0359d146fda362f1b81892fc76 PJ2Demo (1) -0c8b86610f358f9a6b45cdd45cb70a58 PJ2Demo (2) -0f28e36711b55cc139921ddaaff6b341 PJ2Demo (4) -d41d8cd98f00b204e9800998ecf8427e PJ2Demo (r) - -(freddi2 cd/freddi4 cd/pajama3 cd/puttrace cd/putttime cd/puttzoo cd/spyfox cd/superarcade1 cd/superarcade2 cd/water cd/football cd/soccer cd ) -Joachim -ccca9a823d117afb1a882fd707586bf0 PJ2DEMO.D32 -44a282944b6392ad883a48fc03f37146 PJ2DEMO.EXE -36a6750e03fb505fc19fc2bf3e4dbe91 PJ2DEMO.HE0 -6b1f2b0359d146fda362f1b81892fc76 PJ2DEMO.HE1 -0c8b86610f358f9a6b45cdd45cb70a58 PJ2DEMO.HE2 -0f28e36711b55cc139921ddaaff6b341 PJ2DEMO.HE4 -58dfc09f344a9dec565bb914920800d3 PJ2DEMO.X32 - - -(ftp/puttrace cd/dog cd/spyfox2 cd/putttime cd/football cd/soccer cd) -1998-05-09 20:27 PJ2DEMO.W32 -khalek -D:\scummsys.95\sputm.95\*.c -36a6750e03fb505fc19fc2bf3e4dbe91 PJ2DEMO.HE0 -6b1f2b0359d146fda362f1b81892fc76 PJ2DEMO.HE1 -0c8b86610f358f9a6b45cdd45cb70a58 PJ2DEMO.HE2 -0f28e36711b55cc139921ddaaff6b341 PJ2DEMO.HE4 -44a282944b6392ad883a48fc03f37146 PJ2DEMO.W32 - -(pajama3 cd hfs) -Joachim -0b642feb91da52a174e192a082fcc70f Pajama Sam 3 -f7711f9264d4d43c2a1518ec7c10a607 Pajama Sam 3 (0) -978c86a8313b66d3b254c3b43e034460 Pajama Sam 3 (2) -87938c64ef72195231d58fec4f5add88 Pajama Sam 3 (4) -f7b0ad01b6a78bcd3854edd0ee9694df Pajama Sam 3 (a) -5a40804b409c888525b04361a907dd39 Pajama Sam 3 (i) - -(pajama3 cd) -sev, Joachim -C:\Dev\Project\SPUTM\Src\*.cpp -f7b0ad01b6a78bcd3854edd0ee9694df PAJAMA3.(A) -ccca9a823d117afb1a882fd707586bf0 Pajama3.d32 -aaf2001f4d7120fccac9123278cb0db2 Pajama3.exe -f7711f9264d4d43c2a1518ec7c10a607 PAJAMA3.HE0 -978c86a8313b66d3b254c3b43e034460 PAJAMA3.HE2 -87938c64ef72195231d58fec4f5add88 PAJAMA3.HE4 -7c4127882d847866cafd474b914da595 Pajama3.w32 - -(pajama3 cd hfs german) -Joachim -d47b3fa7fbb331d83b4cdcf6effc88d6 PyjamaSkS -2e8a1f76ea33bc5e04347646feee173d PyjamaSKS (0) -2d9d0e25c050cc1d30d78d5d2c475178 PyjamaSKS (2) -435437659b3c647c5a223e143e219846 PyjamaSKS (4) -3694b1ef70da192f3c19cd24638ec79b PyjamaSKS (a) -d41d8cd98f00b204e9800998ecf8427e PyjamaSkS (i) - - -(pajama3 cd german) -Joachim -3694b1ef70da192f3c19cd24638ec79b PyjamaSKS.(a) -c8538fa7fbb9c1b09bc4b833e04ce0dd PyjamaSKS.d32 -24efc2c233d1dfcf32e75c877e7640c0 PyjamaSKS.exe -2e8a1f76ea33bc5e04347646feee173d PyjamaSKS.HE0 -2d9d0e25c050cc1d30d78d5d2c475178 PyjamaSKS.he2 -435437659b3c647c5a223e143e219846 PyjamaSKS.he4 -88084b7b68f19dc5ded4dc5a5a8c3c76 PyjamaSKS.w32 - -(pajama3 cd russian) -sev -C:\HESystems\SPUTM\Src\SrcPWin\*.cpp -20176076d708bf14407bcc9bdcd7a418 UKPajamaEAT.he0 -6c0b2725387fe0b0bc7bfe043714492b UKPajamaEAT.(a) -eea6df70b4930c0d9e2ea69a1a193fc5 UKpajamaEAT.he2 -a7f5e841f72a72c0dec10d7d9fd74a51 UKpajamaEAT.HE4 - -(pajama3 demo hfs dutch) -joostp -??? - -(pajama3 demo dutch) -joostp -??? - -(puttcircus cd hfs/spyozon cd hfsfreddicove cd hfs) -Joachim -e221e2a53e9726ecb9bc422ed7650d42 Pajama Sam 3-Demo -a9f2f04b1ecaab9495b59befffe9bf88 Pajama Sam 3-Demo (0) -057190fd8706c51c6e6657a8eb8f6898 Pajama Sam 3-Demo (2) -d5b1d81d25d3d4850184fdb0ab627bea Pajama Sam 3-Demo (4) -e305c20b5d26d7084f035be22617d8a8 Pajama Sam 3-Demo (a) -d41d8cd98f00b204e9800998ecf8427e Pajama Sam 3-Demo (i) - -(puttcircus cd/spyozon cd/freddicove cd/soccerMLS cd) -sev, Joachim -e305c20b5d26d7084f035be22617d8a8 pj3-demo.(a) -ccca9a823d117afb1a882fd707586bf0 pj3-demo.D32 -7c4127882d847866cafd474b914da595 pj3-demo.exe -a9f2f04b1ecaab9495b59befffe9bf88 pj3-demo.HE0 -057190fd8706c51c6e6657a8eb8f6898 pj3-demo.he2 -d5b1d81d25d3d4850184fdb0ab627bea pj3-demo.he4 - -(freddi3 cd hfs german/pajama2 cd hfs german/putttime cd hfs german/spyfox cd hfs german) -Joachim -37c439a53e3b0426f8e1a57e56e1f9eb PJ3Demo -0c45eb4baff0c12c3d9dfa889c8070ab PJ3Demo (0) -5989dc5d4fecf651db4d5f497ee36d0d PJ3Demo (2) -44cef52dfec87a2dcccda97f3ac6b2cd PJ3Demo (4) -e04352df925c102041c6e954bc86d71c PJ3Demo (a) -d41d8cd98f00b204e9800998ecf8427e PJ3Demo (i) - -(freddi3 cd german/pajama2 cd german/putttime cd german/spyfox cd german) -Joachim -e04352df925c102041c6e954bc86d71c Gpj3demo.(a) -2188b22aa1534b5248a8aa7dfa9c7861 GPJ3Demo.d32 -45d9f75902265d1ecbfbf5ff37a7bc70 GPJ3Demo.exe -0c45eb4baff0c12c3d9dfa889c8070ab Gpj3demo.HE0 -5989dc5d4fecf651db4d5f497ee36d0d GPJ3Demo.HE2 -44cef52dfec87a2dcccda97f3ac6b2cd GPJ3Demo.HE4 - -(puttsfunshop cd hfs/freddisfunshop cd hfs/samsfunshop cd hfs) -Joachim -e221e2a53e9726ecb9bc422ed7650d42 Pajama Sam 3-Demo -a654fb60c3b67d6317a7894ffd9f25c5 Pajama Sam 3-Demo (0) -057190fd8706c51c6e6657a8eb8f6898 Pajama Sam 3-Demo (2) -d5b1d81d25d3d4850184fdb0ab627bea Pajama Sam 3-Demo (4) -795bb07d00d8628631e767d2c23fba56 Pajama Sam 3-Demo (a) -d41d8cd98f00b204e9800998ecf8427e Pajama Sam 3-Demo (i) - -(puttsfunshop cd/freddisfunshop cd/samsfunshop cd) -sev, Joachim -C:\Dev\Project\SPUTM\Src\*.cpp -795bb07d00d8628631e767d2c23fba56 pj3-demo.(a) -ccca9a823d117afb1a882fd707586bf0 pj3-demo.D32 -7c4127882d847866cafd474b914da595 pj3-demo.exe -a654fb60c3b67d6317a7894ffd9f25c5 pj3-demo.HE0 -057190fd8706c51c6e6657a8eb8f6898 pj3-demo.he2 -d5b1d81d25d3d4850184fdb0ab627bea pj3-demo.he4 - -2002-10-19 11:37 pj3-demo.w32 -khalek -C:\Dev\Project\SPUTM\Src\*.cpp -a2fe82b76e0e3db5d8e2f44ec9772548 pj3-demo.(a) -cf90b4db5486ef798db78fe6fbf897e5 pj3-demo.he0 -e923a8f282ad6900b24beb562894661f pj3-demo.he2 -d5b1d81d25d3d4850184fdb0ab627bea pj3-demo.he4 -7c4127882d847866cafd474b914da595 pj3-demo.w32 - -(PuttPutt CD UK release) -eriktorbjorn -d:\dev\SPUTM\Src\*.cpp -5b0f71b2503688d8783f4cc37c302666 PJ3DEMO.(A) -2702b7fad34607adea8e8a7b6adb1202 pj3demo.exe -3e48298920fab9b7aec5a971e1bd1fab PJ3DEMO.HE0 -22df1316d6594bc5c70442874079c46d Pj3Demo.he2 -0794110b085ee91c2aa4a5fc844ff2f4 Pj3Demo.he4 - -(pjgames cd hfs) -Kirben -??? - -(pjgames cd) -Kirben -??? - -(lost cd hfs) -Kirben -??? - -(lost cd) -Kirben -??? - -(superarcade2 cd hfs) -Kirben, Joachim -deb9d0989a2ffa00f77c06360b4e4794 Lost and Found -ed361270102e355afe5236954216aba2 Lost and Found (0) -2f1636bf18a437092f7e3de9614c7c49 Lost and Found (2) -e0499c7a9aad75122c902934aaa98b62 Lost and Found (a) -d41d8cd98f00b204e9800998ecf8427e Lost and Found (r) - - -(superarcade2 cd) -Kirben, Joachim -e0499c7a9aad75122c902934aaa98b62 lost.(a) -4a4564b8bdd8b3c004f2f84bf5e7fc85 lost.a32 -ccca9a823d117afb1a882fd707586bf0 lost.d32 -9d01495e4f8b34e4aefb1e29adcdd37f LOST.EXE -ed361270102e355afe5236954216aba2 lost.HE0 -2f1636bf18a437092f7e3de9614c7c49 lost.he2 - -(lost demo) -1999-07-08 08:46 SMALLER.EXE -khalek -D:\(vss)scummsys.99\SPUTM\Src\SrcPWin\*.cpp -070702d4a191580455acee3d38d5ca9e smaller.(a) -7d2b945c2afb05a370da690c36b22bdd SMALLER.EXE -a2bb6aa0537402c1b3c2ea899ccef64b SMALLER.HE0 -7fe73db8981467a6d0abdd92105f8618 data/world-1/levels/level-10.ot1 -b988a3d95f638bb342135d9bd04e0137 data/world-1/levels/level-10.ot2 -ce60d91581be1cde2d0619a85647b1a9 data/world-1/levels/level-11.ot1 -8cd6dea0b18593c8d1aaa12daff10cc7 data/world-1/levels/level-11.ot2 -7bfa53f7aa0b06372472b7fa475254cb data/world-1/levels/level-12.ot1 -ad2e8c62013a1aee64e3af638d7fac3a data/world-1/levels/level-12.ot2 -0dda1de323c63baa645863259937cfaa data/world-1/levels/level-13.ot1 -0832514ef1b2206b119054e838003241 data/world-1/levels/level-13.ot2 -08b28bfae2169083bdaf2635faf75213 data/world-1/levels/level-14.ot1 -510121696a26e6410766d3d414a4a1ed data/world-1/levels/level-14.ot2 -459027319d6db400bbb60acd37dd31a0 data/world-1/levels/level-15.ot1 -7c73fcd8abcb837bbcb72457eb71da44 data/world-1/levels/level-15.ot2 -ec75f20929d3ab9ad7b68b650e55b713 data/world-1/levels/level-16.ot1 -f90cd5c12b9dc3777b3371460bb6da1f data/world-1/levels/level-16.ot2 -085feba2672c7dc41570726e098d0d02 data/world-1/levels/level-17.ot1 -4a85080de411c54dcfd42b9929e1c0c3 data/world-1/levels/level-17.ot2 -37dacba43a2407c31d8a69dd302991a7 data/world-1/levels/level-18.ot1 -0dbc99bedd086e11dcf78794e1a21d50 data/world-1/levels/level-18.ot2 -67d9d144436e57215212bf65c6665395 data/world-1/levels/level-19.ot1 -679c0c4cdb9781ca9fe73d1f4314fc50 data/world-1/levels/level-19.ot2 -c60abc377414f72a16341901c4895b41 data/world-1/levels/level-1.ot1 -b69f642322a618c2c122e40f9533dd86 data/world-1/levels/level-1.ot2 -93de8918e2d6d35d04f21f067203b8f7 data/world-1/levels/level-20.ot1 -f5da057f3408613b5b8ed0bcd876833f data/world-1/levels/level-20.ot2 -8b175a1cb5722fccd2c649ff15e85e39 data/world-1/levels/level-2.ot1 -f958fbf2de135bcfdffd9e8d0cbfcaa4 data/world-1/levels/level-2.ot2 -453569e6100e194b2e40e52ea13a1747 data/world-1/levels/level-3.ot1 -388bb8ae5805a87ec6a9af5ffef67b65 data/world-1/levels/level-3.ot2 -a6719d4797937bc1501015d8ba02faf3 data/world-1/levels/level-4.ot1 -69946a0c1fded7a1cd1fd7e5da5bc716 data/world-1/levels/level-4.ot2 -170121ca31f889039771cf76a01fd60b data/world-1/levels/level-5.ot1 -9cd61c833f3342b881c280dd7c746db8 data/world-1/levels/level-5.ot2 -cfe953b525b530f144ba322f8969e9b8 data/world-1/levels/level-6.ot1 -650563fd608cc5f6418a20bdb3e3f6eb data/world-1/levels/level-6.ot2 -dd1d60970ff90ffe00f6a201b125ddd1 data/world-1/levels/level-7.ot1 -e5598a32e874f7451581c2fcc8118e8a data/world-1/levels/level-7.ot2 -8d9b7d1e209aa6103b5440d098e005ee data/world-1/levels/level-8.ot1 -f69c2ce78a6f2a70bf43f0cf665ac075 data/world-1/levels/level-8.ot2 -049b95a44520347dabf1d14b1cd9b9f4 data/world-1/levels/level-9.ot1 -b6087413d0aac4078203a1ef5fd88cb8 data/world-1/levels/level-9.ot2 - -(samsfunshop cd hfs) -Joachim -b4673b59ed60b26fda077c43993102ab Sam's FunShop -68155a6bf082221525f431c2cbdac8ab Sam's FunShop (0) -2e44235ef224b25ce766eab34ecc0ab5 Sam's FunShop (2) -c13b823a4f12d20a22f01acdc89102dc Sam's FunShop (4) -35202bb9a0fa8fa23bbc3c9b606ad6b6 Sam's FunShop (a) -eebac1d5bf74832aae8031c47c699197 Sam's FunShop (b) -78d5350b0d208be368e1169c6f53728b Sam's FunShop (i) -2d4bcfe0a03f44876182664b303f2bf7 Sam's FunShop (u) - -(samsfunshop cd) -Joachim -35202bb9a0fa8fa23bbc3c9b606ad6b6 SamsFunShop.(a) -eebac1d5bf74832aae8031c47c699197 SamsFunShop.(b) -ccca9a823d117afb1a882fd707586bf0 SamsFunShop.d32 -486422eba1f7ca37c6314ad13e00a041 SamsFunShop.exe -68155a6bf082221525f431c2cbdac8ab SamsFunShop.HE0 -2e44235ef224b25ce766eab34ecc0ab5 SamsFunShop.he2 -c13b823a4f12d20a22f01acdc89102dc SAMSFUNSHOP.HE4 -e03725ba7069e7a94c28168b70dc99c4 SamsFunShop.r32 -39c468587c4bdad304be49e8d4041a22 SamsFunShop.u32 -591674119a23295aede9ced62642498a SamsFunShop.w32 -a38b59ccd74792e348b57e6f07ce2ccc SamsFunShop.x32 - -(sock cd hfs/superarcade1 cd hfs) -Joachim -8351724df7b6141c57596a70f71261d1 SockWorks -5e8fb66971a60e523e5afbc4c129c0e8 SockWorks (0) -a8ae3fedb8ff53e798d22e495929812f SockWorks (1) -70c23a4651349e957ac8996275fe66f3 SockWorks (2) -14a5574aeae3187bbb71ce7f4a1b803b SockWorks (4) -c137e6e5d636c13df8ccb108523640cc SockWorks (7) - -(sock cd) -Joachim -6e076d748dd4726d1d7a230cfdb13dec SOCKS.D32 -be18099a608458fb63bc996a86195a73 SOCKS.DLL -d82c48a90176dafb1f344f13a0cefb60 SOCKS.EXE -5e8fb66971a60e523e5afbc4c129c0e8 SOCKS.HE0 -a8ae3fedb8ff53e798d22e495929812f SOCKS.HE1 -70c23a4651349e957ac8996275fe66f3 SOCKS.HE2 -14a5574aeae3187bbb71ce7f4a1b803b SOCKS.HE4 -c137e6e5d636c13df8ccb108523640cc SOCKS.HE7 -619755f82f852d94f252add9bbc73a61 SOCKS.W32 - -(superarcade1 cd) -Joachim -619755f82f852d94f252add9bbc73a61 Socks.a32 -6e076d748dd4726d1d7a230cfdb13dec socks.d32 -be18099a608458fb63bc996a86195a73 SOCKS.DLL -aa2b672c687c4cda492e3d9ceb7486eb socks.exe -5e8fb66971a60e523e5afbc4c129c0e8 SOCKS.HE0 -a8ae3fedb8ff53e798d22e495929812f SOCKS.HE1 -70c23a4651349e957ac8996275fe66f3 SOCKS.HE2 -14a5574aeae3187bbb71ce7f4a1b803b SOCKS.HE4 -c137e6e5d636c13df8ccb108523640cc SOCKS.HE7 - -(socks cd russian) -sev -D:\scummsys.80\sputm80\*.c -19263586f749a560c1adf8b3393a9593 SOCKS.HE0 -d4bc7dd56e22720c96ecf96bd68fbecd SOCKS.HE1 -5b1e928ecb604dba17e41fb739218a49 SOCKS.HE2 -14a5574aeae3187bbb71ce7f4a1b803b SOCKS.HE4 -c137e6e5d636c13df8ccb108523640cc SOCKS.HE7 -65b08876afc8c55b8dbb2022fb1b6a95 Socks.a32 - - -<----END OF WORK TODAY----> - -(puttrace cd hfs) -Joachim -??? - -(puttrace cd) -sev -D:\scummsys.98\sputm.98\*.c -ef68d6670cce33d4300468d0b76b3894 puttrace.(a) -e56b14495c0075850c900ca0999f90f4 puttrace.(b) -7ded875e14d324f610a4fde12de2d407 PUTTRACE.A32 -981e1e1891f2be7e25a01f50ae55a5af PUTTRACE.HE0 -1bb81a151d72f56b81b43b55b1de63e4 PUTTRACE.HE2 -3f368bd19438204b34db7d7ff8e5395d PUTTRACE.HE4 - -(puttrace cd russian) -sev -C:\HESystems\SPUTM\Src\*.cpp -cde08c76ce62dcb6081a3fb7dfd2bc89 UKPuttRace.(a) -e348fe80ca1a40a30bd57ff9d08812c0 UKPuttRace.(b) -62050da376483d8edcbd98cd26b6cb57 UKPuttRace.he0 -fdd32528084cd48078bb073ead02d2a9 UKPuttRace.he2 -4dfdf4303fa6769535eba7fed539002e UKPuttRace.he4 -91c0bc455b81e7e556646db1dacd461f UKPuttRace.w32 - -(puttrace cd russian alt) ALL IN MD5 -sev -D:\scummsys.98\sputm.98\*.c -fe0cbe12588be2c8e509603821566a87 Puttrace.(a) -e56b14495c0075850c900ca0999f90f4 Puttrace.(b) -86821f1e71e2a2d679da7827485fdab1 PUTTRACE.A32 -981e1e1891f2be7e25a01f50ae55a5af PUTTRACE.HE0 -544b59d0b904a745033e1850c07a8b5f Puttrace.he2 -5d930459fd1827eaa9df846a20757932 Puttrace.he4 - -(puttrace cd hfs german) -Joachim -??? - -(puttrace cd german) -Joachim -??? - -(puttrace demo hfs dutch) -Kirben -??? - -(puttrace demo dutch) -Kirben -??? - -(puttrace demo hfs dutch) -joostp -??? - -(puttrace demo dutch) -joostp -??? - -(puttrace demo hfs) -sev -??? - -(pajama3 cd/putt dog cd/spyfox2 cd/puttcircus cd/putttime cd/football cd) -sev -D:\scummsys.98\sputm.98\*.c -36590dcf019a0fa78de77354cf4db342 RACEDEMO.(A) -7ded875e14d324f610a4fde12de2d407 RACEDEMO.A32 -8e1d77b06c92662ef5128b087f84f229 racedemo.exe -0ac41e2e3d2174e5a042a6b565328dba RACEDEMO.HE0 -07e92dfae14eb6ef3afc6d40ba98fcd2 RACEDEMO.HE2 -e80168dc9bfca4577b4e2bbdd70db60b RACEDEMO.HE4 - -2002-05-07 02:53 RACEDEMO.W32 -khalek -D:\scummsys.98\sputm.98\*.c -36590dcf019a0fa78de77354cf4db342 RACEDEMO.(A) -0ac41e2e3d2174e5a042a6b565328dba RACEDEMO.HE0 -07e92dfae14eb6ef3afc6d40ba98fcd2 RACEDEMO.HE2 -e80168dc9bfca4577b4e2bbdd70db60b RACEDEMO.HE4 -a030210d465ed001953df89e3df1e558 RACEDEMO.W32 - -(puttrace demo hfs german) -Joachim -??? - -(puttrace demo german) -Joachim -??? - -(PuttPutt CD UK release) -eriktorbjorn -d:\dev\SPUTM\Src\*.cpp -cb6041f10fbaaa5e491aa8d14fc26dc0 RACEDEMO.(A) -3616b3bf5877b2fb50ce33c705f15413 racedemo.exe -7c8100e360e8ef05f88069d4cfa0afd1 RACEDEMO.HE0 -095795832ad8a4323bbfa6c137b691bb RACEDEMO.HE4 -177f4e5579e0279700c2b6b7f4f4ba71 RaceDemo.he2 - -(puttmoon 3do) -sev -??? - -(he classics cd) -khalek, sev -6.1.1 (Nov 4 1993 11:12:57) -19113cc2ecc1dc24c70c46ae015abd78 PUTTMOON.BRS -c6adfe1876ac936ff19546f0cd1e2b5b PUTTMOON.EXE -780e4a0ae2ff17dc296f4a79543b44f8 PUTTMOON.HE0 -f02f36270d684e0c245d0fd0519b5e7b PUTTMOON.HE1 -bfecc91f0bf7b86acd7f82a3dfb53ca5 PUTTMOON.TLK - -(puttmoon cd russian) -sev -6.1.1 (Nov 4 1993 11:12:57) -c6adfe1876ac936ff19546f0cd1e2b5b PUTTMOON.EXE -780e4a0ae2ff17dc296f4a79543b44f8 PUTTMOON.HE0 -6a9457c786a8dcf8d2da8a2ec0123343 PUTTMOON.HE1 -c57a7faf7416d9da11919d0957332574 PUTTMOON.SG0 -3d6deb9406a3357764d11623ed6e48ee PUTTMOON.SG1 -1927fb2e7954326152630cb0f56158f8 PUTTMOON.TLK - -(puttmoon cd russian alt) -sev -6.1.1 (Nov 4 1993 11:12:57) -c6adfe1876ac936ff19546f0cd1e2b5b PUTTMOON.EXE -780e4a0ae2ff17dc296f4a79543b44f8 PUTTMOON.HE0 -2de9f712c62fab29507298c9f69591ec PUTTMOON.HE1 -c57a7faf7416d9da11919d0957332574 PUTTMOON.SG0 -3d6deb9406a3357764d11623ed6e48ee PUTTMOON.SG1 -3a35a45c5634203c72b9f2083e0d5717 PUTTMOON.TLK - -(puttmoon cd hebrew) -sev -??? - -(he classics cd hfs) -khalek -9dc02577bf50d4cfaf3de3fbac06fbe2 Putt-Putt Moon 0 -e4e07a2763824a7646e11b6d9ad795c8 Putt-Putt Moon 1 -bfecc91f0bf7b86acd7f82a3dfb53ca5 Putt-Putt Moon 2 -19113cc2ecc1dc24c70c46ae015abd78 PUTTMOON.BRS - -(he classics cd) -khalek, sev -7.0.0 (Feb 7 1995 13:27:20) -19113cc2ecc1dc24c70c46ae015abd78 PUTTMOON.BRS -9c92eeaf517a31b7221ec2546ab669fd PUTTMOON.HE0 -cfe6d4059c4c5edb9f9f2351efb32a7b PUTTMOON.HE1 -965c113b3978682530e121ba8af7419b PUTTMOON.HE2 -58dfc09f344a9dec565bb914920800d3 PUTTMOON.HE3 -05d387396aabba20e7e3b8778bc0cf09 PUTTMOON.HE4 -56c8455570af6106931818e19344b46a PUTTMOON.W32 - -6.1.1 (Sep 29 1993 17:18:45) -khalek -ef2d93dd02bcdabc7a1a59101e31f8be MOONDEMO.EXE -aa6a91b7f6f119d1b7b1f2a4c9e24d59 MOONDEMO.HE0 -086b6835bbb924109a31e50f0b5c9e9a MOONDEMO.HE1 -0d06e43d5b5460375575a74d15d6bf07 MOONDEMO.TLK - -(puttmoon demo hfs) -khalek -??? - -(puttputt cd/he classics cd) -khalek, sev -7.0.0 (Feb 7 1995 13:27:20) -9c143c5905055d5df7a0f014ab379aee moondemo.he0 -ec82bd61eff3218216fb145004d2b005 moondemo.he1 -0d06e43d5b5460375575a74d15d6bf07 moondemo.he2 -7cf09a515cb499890e3faeab3a2aa491 moondemo.he3 -c182763838b5d06581cc9fb1c1bb1cfd moondemo.he4 -56c8455570af6106931818e19344b46a moondemo.w32 - -(puttcircus cd hfs) -sev -??? - -(puttcircus cd) -sev -C:\Dev\Project\SPUTM\Src\*.cpp -2efc1faef85c78dbfe91d46fcc26a3ec puttcircus.(a) -ab0693e9324cfcf498fdcbb12acf8bb4 puttcircus.HE0 -320a3bca28c8c30ad7aeff74f24ced2e puttcircus.he2 -9c01311b009b0b1b65735beb51eb526a puttcircus.HE4 -d0552089e0c2bbf75969643e8dc30ef1 PUTTCIRCUS.w32 - -(puttcircus cd hfs russian) -sev -??? - -(puttcircus cd russian) -sev -C:\Dev\Project\SPUTM\Src\*.cpp -0deaf09aff8db115b7da47272955f206 puttcircus.(a) -7bad72e332a59f9fcc1d437f4edad32a puttcircus.he0 -9ef7154db4ba00b89b5424ffd5cfce26 puttcircus.he2 -e902d67046bfb7cb09c9148b4462f297 puttcircus.he4 -f22635a81cf4abb712704990b7d9d597 PUTTCIRCUS.w32 - -(puttcircus demo hfs) -sev -??? - -(puttsfunshop cd/freddicove cd/soccerMLS cd) -sev -C:\Dev\Project\SPUTM\Src\*.cpp -d78d1eff392096c83687231fe2e78c6b circdemo.(a) -ccca9a823d117afb1a882fd707586bf0 circdemo.D32 -79c9cf9572d32b2c587226f32b1ab946 circdemo.exe -a7cacad9c40c4dc9e1812abf6c8af9d5 circdemo.HE0 -14b7f2b5180be87991338ea1017421be circdemo.he2 -860b38ff47ba90e910025ac8c6e9a823 circdemo.he4 - -(puttputt 3do cd) -khalek -c817613033ceb12eb4c31ea6c336808f BREEZY.DMU -fa14bc146cc6086ab44c906a320699c9 CALLIOPE.DMU -67f93260bf6519d9a47fe987f46d286b CARWASH.DMU -60fe949efb311eb660c1516fcc20edd2 CONGA.DMU -667d5c394b63381f309d8c85085748d8 GASTASHN.DMU -ed39e74166eb60b6d93ab5a26790dcac GROCER2.DMU -a06560553d188e1dc5886c7633ee602a HAPPY.DMU -01fd3afbc1b0f8b6e01a18232181cc39 HONEYBEE.DMU -6bedd1f644ff35d55f2dd4e818f662ed MARSEILL.DMU -ba59b9918a11a3f366719bb6dbb02426 MICE.DMU -3031ecf1f94e9712ec9e2d192af5adaa MISCHIEF.DMU -5b45f41c5e02ea737f64b8fb306346fa MONKEYS.DMU -6beb885fb7fae9a4dc0a7b66b8e31e27 PAINTING.DMU -725518498492603428a4b481a74f0ecd PARADE.DMU -9d166dc6e1e55f78bfac5ede2e9c2daa PAUSE.CEL -1748c190e7df232fabe70130f6636c9f PERFORM.CEL -cbcf447cb91de76b6d034d41601bd148 PLAYFUL.DMU -d8051a79de027921c27d08a67fb5fc09 POPWEASL.DMU -8296845e881ba14f6c3e76e51220896c PUPPY.DMU -7e151c17adf624f1966c8fc5827c95e9 PUTTPUTT.HE0 -3c985277e56fda01c1ef3d6da6817fd2 PUTTPUTT.HE1 -46f5aae1faea566f0e21b34572563e40 PUTTPUTT.TLK -e4978c237ab8b7eb7820048a90a3161e PUTTSONG.DMU -79e68c29627a5ba3514b87edacb57232 SHORTOCK.DMU -87ffadb9e4d62e60fa2f8b16b672677a STARTUP.CEL -d9b9d645a4f7949f127b32eb152e343b SUNNYDAY.DMU -66d7b0f5c5b9bf0cf57a96b7fa457569 TICKTOCK.DMU -b274a80fde5aaf92123972a4f3aabaa9 TOYSHOP.DMU -cefbc7824935e5377bf25b3e461effdd WADDLE.DMU -8f4c6d28938fb3a532d6038ebaadf234 WAITING.DMU -a7914691959037a5a4f25fc5a6a138d2 WALTZ.DMU -3caac70fd907c450ad8f4cd2d75ab576 WANDRING.DMU -cf7150acba9df96c16a9e20d2345941d WHISTLIN.DMU - -(puttputt patch) -khalek -6.1.1 (Nov 20 1993 12:42:10) -868b739deaf9319825137e5e55d4aee1 PUTTPUTT.EXE - -(puttputt cd/he classics cd) -khalek, sev -6.1.1 (Jan 18 1994 09:32:55) -7564ee82886b8c75b3b1bd895c98fcb4 puttputt.exe -9708cf716ed8bcc9ff3fcfc69413b746 puttputt.he0 -d109f3215ca2d5cd38c2efd83da5a51c puttputt.he1 -5f5a783f29c3da080d3bddbef0e2f01d puttputt.tlk - -(puttputt cd hebrew) -sev -??? - -(puttputt cd russian) -sev -6.1.1 (Nov 19 1992 17:56:19) -0b3222aaa7efcf283eb621e0cefd26cc PUTTPUTT.HE0 -64b5aee54f2b1453100b2040e1d778ef PUTTPUTT.HE1 -a4e799011c8320dffef43db7869b839a PUTTPUTT.TLK - -(puttputt cd russian alt) -sev -6.1.1 (Nov 19 1992 17:56:19) -68ca57feaa198976c87f4a69f1e9a958 PUTTPUTT.EXE -0b3222aaa7efcf283eb621e0cefd26cc PUTTPUTT.HE0 -64b5aee54f2b1453100b2040e1d778ef PUTTPUTT.HE1 -32453797af20693a00ccbe4dfa6db54f PUTTPUTT.TLK - -(he classics cd hfs) -khalek -684732efb5799c0f78804c99d8de9aba Putt-Putt Parade 0 -dc086db2e995aff8b2336147ccbd75d6 Putt-Putt Parade 1 -5f5a783f29c3da080d3bddbef0e2f01d Putt-Putt Parade 2 - -(puttputt cd/he classics cd) -khalek, sev -7.0.0 (Feb 7 1995 13:26:59) -6a30a07f353a75cdc602db27d73e1b42 puttputt.he0 -ce76be89bcace9527f457cab9d8231a6 puttputt.he1 -328b11537db07809864d8b2f536d07ae puttputt.he2 -58dfc09f344a9dec565bb914920800d3 puttputt.he3 -6cb903fb3d4d726fe0229affb1d22525 puttputt.he4 -71e615a8493f357e4de824a1e4632a80 puttputt.w32 - -6.1.1 (Mar 9 1993 21:19:14) -khalek -57cbe80e524afa5330a77d04316d2bf6 puttdemo.exe -31aa57f460a3d12429f0552a46a90b39 puttdemo.he0 -282a5503b45ddc15c7fb83c8e911b091 puttdemo.he1 -a49e0880f7c0638fbf7adf88894da3df puttdemo.tlk - -(puttputt demo hfs) -khalek -??? - -(puttputt cd/he classics cd) -khalek, sev -7.0.0 (Feb 7 1995 13:26:59) -37ff1b308999c4cca7319edfcc1280a0 puttdemo.he0 -9be0197fa0dac01ca3d72cf060826045 puttdemo.he1 -a49e0880f7c0638fbf7adf88894da3df puttdemo.he2 -58dfc09f344a9dec565bb914920800d3 puttdemo.he3 -cd26452706d7e66a3f4ba13975fe5c68 puttdemo.he4 -71e615a8493f357e4de824a1e4632a80 puttdemo.w32 - -(puttzoo cd hfs) -cyx -??? - -(puttzoo cd) -cyx -??? - -(puttzoo cd hfs) -khalek -1995-09-14 17:11 Putt-Putt Saves the Zoo -2f328b89b4404eaefb9bd18045dddd06 Putt-Putt Saves the Zoo -58fdf4c7ad13540a734e18f8584cad89 Putt-Putt Saves the Zoo (0) -8cffc74555fed521cc2008ed6a119118 Putt-Putt Saves the Zoo (1) -225991e6f8d3d6ac5e519413392c34f3 Putt-Putt Saves the Zoo (2) -d3235443d88751acd3412c1b0c6cec35 Putt-Putt Saves the Zoo (4) - -(puttzoo cd dutch) -joostp -??? - -########## There is 9.8 version of puttzoo, Kirben has it -(puttzoo cd) -khalek -7.0.0 (Jul 13 1995 18:45:07) -1005456bfe351c1b679e1ff2dc2849e9 puttzoo.he0 -1399aaabdfc340203ac63aff57abf8a0 puttzoo.he1 -225991e6f8d3d6ac5e519413392c34f3 puttzoo.he2 -4417ea03a6d1b0b7522526f41d1097f6 puttzoo.he3 -d3235443d88751acd3412c1b0c6cec35 puttzoo.he4 -f6cc3beae345e71055efb143a342983c puttzoo.w32 - -(puttzoo russian) (Comment: ALL LANGUAGES) -sev -7.0.0 (Jul 13 1995 18:45:07) -1005456bfe351c1b679e1ff2dc2849e9 PUTTZOO.HE0 -1399aaabdfc340203ac63aff57abf8a0 PUTTZOO.HE1 -d03846ce20bab80288af295bb66870a3 PUTTZOO.HE2 -4417ea03a6d1b0b7522526f41d1097f6 PUTTZOO.HE3 -d3235443d88751acd3412c1b0c6cec35 PUTTZOO.HE4 -91903ca0f67564d78d229afa479b0b02 PUTTZOO.W32 - -(he classics hfs/pajama cd hfs/farm cd hfs) -khalek -1996-11-17 13:28 Puttzoo Demo -34727db5bde5a2f78a1ec84f75d0810c Puttzoo Demo -3486ede0f904789267d4bcc5537a46d4 Puttzoo Demo (0) -e0cde64b0c37a188c97a0bc93225cce9 Puttzoo Demo (1) -a0cd041eb6c1a289a23549ef8740ff17 Puttzoo Demo (2) -86dc7e6f520dbabe79b324ae64456686 Puttzoo Demo (4) - -(puttzoo demo hfs) -Joachim -??? - -(ftp) -sev -7.0.0 (Jul 5 1995 14:45:19) -f3d55aea441e260e9e9c7d2a187097e0 zoodemo.he0 -92722a557c952ff5178eb32964a12061 zoodemo.he1 -a0cd041eb6c1a289a23549ef8740ff17 zoodemo.he2 -47539950e6e6f656db4c1cc963bf9a8f zoodemo.he3 -86dc7e6f520dbabe79b324ae64456686 zoodemo.he4 -d30c3ce43992a116be1a28a4edccf597 zoodemo.w32 - -(spyfox cd/pajama cd/he classics cd/freddi2 cd/baseball cd) -khalek -7.0.0 (Jun 4 1995 15:47:12) -de4efb910210736813c9a1185384bace zoodemo.he0 -8ad56037c37b1c84efc2fa00bf4c59d5 zoodemo.he1 -c9b8363220ea094d2da8cc24635d8d48 zoodemo.he2 -47539950e6e6f656db4c1cc963bf9a8f zoodemo.he3 -86dc7e6f520dbabe79b324ae64456686 zoodemo.he4 -f3324cfe3dec0288fd38197cf88962af zoodemo.w32 - -(farm cd/pajama cd) -khalek, sev -7.0.0 (Jun 22 1995 14:03:05) -de4efb910210736813c9a1185384bace zoodemo.he0 -8ad56037c37b1c84efc2fa00bf4c59d5 zoodemo.he1 -c9b8363220ea094d2da8cc24635d8d48 zoodemo.he2 -47539950e6e6f656db4c1cc963bf9a8f zoodemo.he3 -86dc7e6f520dbabe79b324ae64456686 zoodemo.he4 -37e4b9463ead881fd53bf401aa62d0bf zoodemo.w32 - -(puttzoo demo hfs german) -Joachim -??? - -(putttime cd hfs) -Kirben -??? - -(putttime cd) -Kirben -??? - -(putttime cd hfs) -sev -??? - -(putttime cd) -sev -C:\Dev\Project\SPUTM\Src\*.cpp -833cb49dd6767dc7722d671a4067ab5a PuttTime.(a) -2108d83dcf09f8adb4bc524669c8cf51 PuttTime.he0 -802147789449535e375c7c4f2e666b96 PuttTime.he2 -15d5f719ebc6bcd4fe674587a8fa8596 PuttTime.he4 -a30dd1cd2b58b2c5c6eb1aa970f5a3c2 PuttTime.w32 - -(putttime cd hfs german) -Joachim -??? - -(putttime cd german) -Joachim -??? - -(putttime cd dutch) -adutchguy -??? - -(putttime cd) -iziku -??? - -(putttime cd UK Release) -eriktorbjorn -d:\dev\SPUTM\Src\*.cpp -6ea0c0e68384e588ece7e3e110c62b09 puttputtTTT.(a) -d4aac997e2f4e15341f0bfbf905419bd puttputtTTT.HE0 -79e5273f8626f6b1448788bc0a279049 PuttPuttTTT.HE2 -7a0d96204f8874e4eda4918f63ca7b4e PuttPuttTTT.HE4 -a75403b5e853d7cc65cde2ec358ca5ba puttputtTTT.w32 - -(putttime cd german) -oncer -??? - -(putttime cd russian) -sev -d:\dev\SPUTM\Src\SAVELOAD.cpp -4a7452aabc69cdaf897ccc099ff0bafa puttputtTTT.(a) -defb8cb9ec4b0f91acfb6b61c6129ad9 puttputtTTT.he0 -5247f60e3913296860a74eef4bdfad2a PuttPuttTTT.he2 -a4816cbb60fa01f16295ab46868e7c41 PuttPuttTTT.he4 -947ce44f2336f8467ceadb184dbaa3e9 puttputtTTT.w32 - -(freddi cd hfs) -khalek -1997-12-09 19:59 TimeDemo -f2ece54cc9ca9621217c71cfd1ea594e TimeDemo -4e5867848ee61bc30d157e2c94eee9b4 TimeDemo (0) -5c58da43055710e93cfedd45bb14b03c TimeDemo (1) -42df84a2b73a3d2ee461b89474ee2f57 TimeDemo (2) -72339e5cf3f2902ad78e58c05bfcf7bb TimeDemo (4) -d41d8cd98f00b204e9800998ecf8427e TimeDemo (r) - -(pajama2 cd/puttrace cd/soccer cd) -sev -D:\Scummsys.90\sputm.90\*.c -c0c0934580cde95879bef0b6a5a49c29 timedemo.d32 -4e5867848ee61bc30d157e2c94eee9b4 timedemo.he0 -5c58da43055710e93cfedd45bb14b03c timedemo.he1 -42df84a2b73a3d2ee461b89474ee2f57 timedemo.he2 -72339e5cf3f2902ad78e58c05bfcf7bb timedemo.he4 -4c33312418b27bfe8ad307a6e14604e9 timedemo.w32 - -(ftp/freddi3 cd) -sev -D:\Scummsys.90\sputm.90\*.c -c0c0934580cde95879bef0b6a5a49c29 TIMEDEMO.D32 -4e5867848ee61bc30d157e2c94eee9b4 TIMEDEMO.HE0 -5c58da43055710e93cfedd45bb14b03c TIMEDEMO.HE1 -42df84a2b73a3d2ee461b89474ee2f57 TIMEDEMO.HE2 -72339e5cf3f2902ad78e58c05bfcf7bb TIMEDEMO.HE4 -a43540b44806b8311c7fd04c12cbf46a TIMEDEMO.W32 - -(putttime demo hfs) -sev -??? - -(web) -2002-06-10 20:14 TimeDemo.exe -khalek, sev -c:\Build\SRC\SPUTM\Src\SrcPWin\*.cpp -a64bde414f464ef8522fa0ffeea36d9c TimeDemo.exe -0ab19be9e2a3f6938226638b2a3744fe TimeDemo.HE0 -1691e37409d7f0593c1aa1449f882058 TimeDemo.(a) -63adb23ead513d5fcf657ed555e525ee TimeDemo.he2 -72339e5cf3f2902ad78e58c05bfcf7bb TimeDemo.he4 - -(putttime demo hfs french) -Kirben -??? - -(putttime demo french) -Kirben -??? - -(putttime demo dutch) -adutchguy -??? - -(Kellogg cereals pack) -a6d982141c88f167cf4ec5dc684e2684 PuttMini.(a) -d1286487c342ac81b28f3e1b90a2b7f3 PuttMini.D32 -0a6d7b81b850ed4a77811c60c9b5c555 PuttMini.HE0 -a75403b5e853d7cc65cde2ec358ca5ba PuttMini.exe -ddcb5d9f71edc07982db401776c2d79e PuttMini.he2 -72339e5cf3f2902ad78e58c05bfcf7bb PuttMini.he4 - -(balloon cd hfs) -Kirben -??? - -(balloon cd) -Kirben -??? - -(balloon cd hfs) -Kirben -??? - -(balloon cd) -Kirben -??? - -(balloon cd) -iziku -??? - -(russian balloon) -sev -D:\Scummsrc.80\Sputm\*.c -ad2d6ffbae12d46a2d50ccbbd2a15a83 Balloon.a32 -145bd3373574feb668cc2eea2ec6cf86 BALLOON.HE0 -86282ac950041a1a9723d2c86098939a BALLOON.HE1 -1dabd9eea9fa31c751ac52cfc2048c9c BALLOON.HE2 -4417ea03a6d1b0b7522526f41d1097f6 BALLOON.HE3 -6770978a98ae08e208c188d6c844ab69 BALLOON.HE4 -c2eb18b88529dc5cf79f868c73925f14 BALLOON.HE8 -cbe95e475b634087dc92d23596ad995f BALLOON.HE9 - -(dog cd hfs) -Kirben -??? - -(dog cd) -Kirben -??? - -(dog cd) -sev -C:\Dev\Project\SPUTM\Src\*.cpp -ed126ee70102f94b8c725b3b90576f1e DOG.w32 -d4b8ee426b1afd3e53bc0cf020418cf6 dog.HE0 -43821dcacadd3340396dc9bdcf9fe455 dog.(a) -8cbaaef96c0def188a98794f7e8826d6 dog.he2 -fc47c58d925148b1c1cce784d1f9fec1 dog.he4 -880f0f5e1acc4eb19c889c4d7c7492ef dog.he7 -50438756f002a90fbe7d6a4be184dccb dog.he8 -ccca9a823d117afb1a882fd707586bf0 dog.d32 - -(activity cd) -??? - -(funpack cd 3do) -sev -??? - -(funpack cd) -iziku -??? - -(funpack patch) -khalek -6.1.1 (Nov 20 1993 12:20:32) -091d066c93e751504e4b18c6748b97e0 FUNPACK.EXE - -(funpack cd) -6.1.1 (Feb 15 1993 20:31:55) -khalek -f90f40b9702cfd3e2f6c9af76c743e41 funpack.exe -46b53fd430adcfbed791b48a0d4b079f funpack.he0 -af6283c82fb6a867f91f28039b716036 funpack.he1 -7d6dec34833328722665c1e5a64e735f funpack.tlk - -(funpack cd hebrew) -??? - -(puttsfunshop cd hfs) -sev -??? - -(puttsfunshop cd) -sev -C:\Dev\Project\SPUTM\Src\SrcPWin\*.cpp -b525ccb6634db6c7f2762864f627f17a PuttsFunShop.(a) -4504676bd50cb7b0e28b1b2026dce1b3 PuttsFunShop.(b) -ccca9a823d117afb1a882fd707586bf0 PuttsFunShop.d32 -5262a27afcaee04e5c4900220bd463e7 PuttsFunShop.HE0 -5543c6d936bbec16be896902a473d2a4 PuttsFunShop.he2 -e93a12735e1a95559c755d7193676085 PUTTSFUNSHOP.HE4 -970f3883eefc562bc3949d1b1f88673e PuttsFunShop.map -39c468587c4bdad304be49e8d4041a22 PuttsFunShop.u32 -7ea658395895f10ba7dfc4a7d147f615 PuttsFunShop.w32 -a38b59ccd74792e348b57e6f07ce2ccc PuttsFunShop.x32 - -(spyfox cd hfs) -Kirben -??? - -(spyfox cd) -Kirben -??? - -(spyfox cd hfs) -Joachim -??? - -(spyfox cd) -Joachim -??? - -(spyfox cd hfs german) -Joachim -??? - -(spyfox cd german updated) -Joachim -??? - -(spyfox cd german) -nachbarnebenan -a28135a7ade38cc0208b04507c46efd1 spyfox.he0 -96da98152ccc2f0d9002c834f34d5cd0 spyfox.he1 -75bd69c4fc660695691844a68110a337 spyfox.he2 -f8029f33e2bc3da6fe38f6bda58c1f31 spyfox.he4 - -(spyfox cd dutch) -joostp -??? - -(spyfox cd) (COMMENT: ALL LANG) -khalek -1997-08-10 03:41 spyfox.w32 -D:\Scummsys.90\sputm.90\*.c -6bf70eee5de3d24d2403e0dd3d267e8a spyfox.he0 -e01f959bdd49d5b0c8660fd8a14d4799 spyfox.he1 -0a7f78543f30138effbe593d9d09e720 spyfox.he2 -9fbab8bb60448f30ce7508dbf277ab05 spyfox.he4 -b7aa3c76d463137a8a09c68d9a1045d1 spyfox.w32 - -(spyfox cd russian) -sev -D:\Scummsys.90\sputm.90\*.c -6bf70eee5de3d24d2403e0dd3d267e8a SPYFOX.HE0 -f1b79e1dcb5f57b8d91aac8487a284d7 SPYFOX.HE1 -506a333aad3af2ca8abf5b862ceeb365 SPYFOX.HE2 -9fbab8bb60448f30ce7508dbf277ab05 SPYFOX.HE4 -1355eb775fa71d6df9d506fb906a51db SPYFOX.HLP -b7aa3c76d463137a8a09c68d9a1045d1 SPYFOX.W32 - -(spyfox cd russian updated) -sev -d:\dev\SPUTM\Src\*.cpp -51ac439f04951d0910bc423e2825dab8 SPYFoxDC.(a) -72ac6bc980d5101c2142189d746bd62f SPYFoxDC.he0 -10b638ee633558d528d7be0376175065 SPYFoxDC.he2 -f8029f33e2bc3da6fe38f6bda58c1f31 SPYFoxDC.he4 -b185cdec4ea6bc218afe08325af787a4 spyfoxdc.w32 - -(farm cd hfs) -khalek -1997-12-09 19:59 FoxDemo -09507650b60e891e9c1ed5e0a7aa0152 FoxDemo -53e94115b55dd51d4b8ff0871aa1df1e FoxDemo (0) -81fef80fadf4cd3ad0e04ac619f6eaed FoxDemo (1) -1229ed0135d97aac8b50224a74ee4f34 FoxDemo (2) -6f7993e15da433b58ea63e59e3666cea FoxDemo (4) -d41d8cd98f00b204e9800998ecf8427e FoxDemo (r) - -(ftp/pajama2 demo/freddi3 cd) -sev -53e94115b55dd51d4b8ff0871aa1df1e foxdemo.he0 -81fef80fadf4cd3ad0e04ac619f6eaed foxdemo.he1 -1229ed0135d97aac8b50224a74ee4f34 foxdemo.he2 -6f7993e15da433b58ea63e59e3666cea foxdemo.he4 -b7aa3c76d463137a8a09c68d9a1045d1 foxdemo.w32 - -(spyfox demo hfs) -khalek -??? - -(ftp/putt dog cd/spyfox2 cd/putttime cd/football cd) -1999-05-17 12:21 spydemo.w32 -khalek -D:\Scummsys.90\sputm.90\*.c -fbdd947d21e8f5bac6d6f7a316af1c5a spydemo.he0 -820bceab2a1ab02254c33e6e3fc81628 spydemo.he1 -bc8ed64e6a101f6646b80aa294fa5bdc spydemo.he2 -88867a804055334db8485d7da5d2c51f spydemo.he4 -b7aa3c76d463137a8a09c68d9a1045d1 spydemo.w32 - -(spyfox demo hfs) -khalek -??? - -2002-05-21 13:29 Spydemo.exe -khalek -c:\Build\SRC\SPUTM\Src\SrcPWin\*.cpp -f5207b882c9015a4e4a9599460be6294 Spydemo.(a) -4d34bf8f8ec20f2e653b19aa283da352 Spydemo.exe -9d4ab3e0e1d1ebc6ba8a6a4c470ed184 Spydemo.HE0 -b34d614a23a7dac2be1407bbb51c6b24 Spydemo.he2 -88867a804055334db8485d7da5d2c51f Spydemo.he4 - -(spyfox demo hfs french) -Kirben -??? - -(spyfox demo french) -Kirben -??? - -(spyfox demo dutch) -Kirben -??? - -(spyfox2 cd hfs) -sev -??? - -(spyfox2 cd) -sev -D:\(vss)scummsys.99\SPUTM\Src\*.cpp -5f7ece9a7aefc709f11b6f4216c8764e spyfox2.(a) -f79e60c17cca601e411f1f75e8ee9b5a SPYFOX2.HE0 -c8f3ab5d05e09360dc88c00243db0c2a SPYFOX2.HE2 -d601630d0dcf6b3084ecd42b6c8c5a33 SPYFOX2.HE4 -0b381fa8531972edca34f9b631638148 spyfox2.he9 -26ef6933e4a560f40bbb3dc0525a783c spy2arc.hst -77179b054447bb7080aff0ec343588c6 Spyfox2.w32 - -(spyfox2 cd russian) (COMMENT: ALL LANGUAGES) -sev -d68c11a69a955b66ee1a6b8f5a2ee9e0 spyfox2.(a) -f79e60c17cca601e411f1f75e8ee9b5a SPYFOX2.HE0 -0a718eae78a467f5e664a34b601471e3 SPYFOX2.HE2 -d601630d0dcf6b3084ecd42b6c8c5a33 SPYFOX2.HE4 -0b381fa8531972edca34f9b631638148 spyfox2.he9 -010b18d51f6bf84c69333d03a4cc3c9b SPYFOX2.HLP -77179b054447bb7080aff0ec343588c6 Spyfox2.w32 - -(spyfox2 cd hfs russian updated) -sev -??? - -(spyfox2 cd russian updated) -sev -C:\HESystems\SPUTM\Src\*.cpp -4ecc3a54d961a23b80239e191309bb2a spyfoxsr.(a) -cea91e3dd47f2518ea418e41611aa77f spyfoxsr.he0 -2e73380e32fb1960de5e9871042c6b2e spyfoxsr.he2 -42e883fdae113021eaa30bca3a7bfd2c spyfoxsr.he4 -0b381fa8531972edca34f9b631638148 spyfoxsr.he9 -dda8932e4ddd10c538086df4eaa965d2 SPYFOXSR.w32 - -(spyfox2 cd dutch) -adutchguy -??? - -(spyfox2 demo hfs dutch) -joostp -??? - -(spyfox2 demo dutch) -joostp -??? - -(putsfunshop cd/pajama3 cd/puttcircus cd/spyozon cd/soccerMLS cd) -sev -C:\Dev\Project\SPUTM\Src\*.cpp -2ee6a9c1c8352d4aca638aeab38a194e sf2-demo.(a) -f378c570abf42d4875d26674a35acd83 SF2-DEMO.EXE -7222f260253f325c21fcfa68b5bfab67 sf2-demo.HE0 -8634f4ad2f224842364a86ddc57bb072 sf2-demo.he2 -c23f18777b5ad558826493f69749c4c6 SF2-DEMO.HE4 - -(humongous ftp) -sev -D:\(vss)scummsys.99\SPUTM\Src\*.cpp -2ee6a9c1c8352d4aca638aeab38a194e sf2-demo.(a) -ccca9a823d117afb1a882fd707586bf0 sf2-demo.d32 -77179b054447bb7080aff0ec343588c6 sf2-demo.exe -7222f260253f325c21fcfa68b5bfab67 sf2-demo.he0 -8634f4ad2f224842364a86ddc57bb072 sf2-demo.he2 -c23f18777b5ad558826493f69749c4c6 sf2-demo.he4 - -(spyfox2 demo hfs german) -Joachim -??? - -(spyfox2 demo german) -Joachim -??? - -(PuttPutt CD UK release) -eriktorbjorn -d:\dev\SPUTM\Src\*.cpp -e79b9525fd1e38c140424f48c609e642 SF2DEMO.(A) -6dbe2db93323010de257bcb55d99c3fa sf2demo.exe -19bf6938a94698296bcb0c99c31c91a7 SF2DEMO.HE0 -2577b0029ecfcb9e764e20a9b2a4be6a Sf2Demo.he2 -c23f18777b5ad558826493f69749c4c6 Sf2Demo.he4 - -(spyozon cd hfs) -sev -??? - -(spyozon cd) -sev -C:\Spyfox3Sputm\Src\*.cpp -845312206b245156183ffa0ee79fcede SPYOZON.(A) -600abd3e9f47e63e670188b7e4e86ac7 SPYOZON.HE0 -eec7f697ba008211d12be2108f9e6b56 SPYOZON.HE2 -2f238b51cfad1b8b5c179468a19aa29b SPYOZON.HE3 -6654406759193503d618405b075322e4 SPYOZON.HE4 -a76f985eb0fe5b9600dd8563cd5ac7d8 spyozon.w32 - -(spyozon cd hfs russian updated) -sev -??? - -(spyozon cd russian updated) -sev -C:\Spyfox3Sputm\Src\SrcPWin\*.cpp -eb03a8bd9e7654d5d06635d934f2059b SPYFoxOzu.(a) -194af4195ddb1f3a6017fbd6b27a92aa spyfoxozu.exe -96a3069a3c63caa7329588ce1fef41ee SPYFoxOzu.he0 -efab08f94696fc1a7404ba366c6629d3 SPYFoxOZU.he2 -2f238b51cfad1b8b5c179468a19aa29b SPYFoxOZU.he3 -64531d4b40f2b932c8434b5c2c0f3547 SPYFoxOzu.he4 - -(spyozon cd) -??? - -(spyozon demo hfs) -??? - -(freddicove cd/pajama4 cd) -sev -d:\dev\SPUTM\Src\SrcPWin\*.cpp -0b3dac19ac1107f3fcfa9b38c47b2dfb SF3-DEMO.(A) -ad443efafb53aa0c05749b7d523019cf SF3-DEMO.EXE -ebd0b2c8a387f18887282afe6cad894a SF3-DEMO.HE0 -46dd1febbcad9683be77f23b666cdbbe SF3-DEMO.HE2 -145feca064ba53c0002c56a199bdc719 SF3-DEMO.HE3 -24f341ed410a69e052f90f9b3cb5ecf4 SF3-DEMO.HE4 - -(chase cd hfs) -Kirben -??? - -(chase hfs) -Kirben -??? - -(chase cd hfs) -Kirben -??? - -(chase hfs) -Kirben -??? - -(chase cd russian) -sev -D:\scummsys.95\sputm.95\*.c -dab6994bacb768b75a7085c01a473c94 Chase.a32 -9cdd327c1034c046cb595d251c44da2f CHASE.HE0 -d61f7c0fa645c0cead10e93b5223197c CHASE.HE1 -79fbaace4a08b14772aeea0250e95330 CHASE.HE2 -fe9666d561a54a101c92086d2ef77448 CHASE.HE4 -5201bee3111b5335fac48ecf30b27830 CHASE.HE8 -6d12e727e12365a23270269ca4c7e538 CHASE.HE9 - -(mustard cd hfs) -Kirben -??? - -(mustard cd) -Kirben -??? - diff --git a/doc/he/smacker-md5s.txt b/doc/he/smacker-md5s.txt deleted file mode 100644 index 39233c402b..0000000000 --- a/doc/he/smacker-md5s.txt +++ /dev/null @@ -1,46 +0,0 @@ -(puttsfunshop cd/pj3 cd/puttcircus cd) -sev -D:\scummsys.98\sputm.98\*.c -e07a222d121f7e8b04266bf4d7809cb4 BluesBirthdayDemo.a32 -dbf4d59d70b826733f379f998354d350 BluesBirthdayDemo.HE0 -6ddf8b026cfb9410b560f91f353dc0f4 BluesBirthdayDemo.(a) -409a570e46466aef89c3cd3a30992543 BluesBirthdayDemo.(b) -60cc055b47b53cb53eaa89e1f974c888 BluesBirthdayDemo.he2 -0794110b085ee91c2aa4a5fc844ff2f4 BluesBirthdayDemo.he4 - -(puttrace cd) -sev -D:\scummsys.98\sputm.98\*.c -e07a222d121f7e8b04266bf4d7809cb4 BluesBirthdayDemo.a32 -2d4acbdcfd8e374c9da8c2e7303a5cd0 BluesBirthdayDemo.HE0 -18ee74255c93da057c92effbd39ebd9a BluesBirthdayDemo.(a) -409a570e46466aef89c3cd3a30992543 BluesBirthdayDemo.(b) -dc5e63ecf2672d4a3a0458fe32902a4e BluesBirthdayDemo.he2 -0794110b085ee91c2aa4a5fc844ff2f4 BluesBirthdayDemo.he4 -ccca9a823d117afb1a882fd707586bf0 BluesBirthdayDemo.d32 - -(freddi5 cd) -sev -C:\Dev\Project\SPUTM\Src\SrcPWin\*.cpp -548fcedaa9cee84443a5a9acfff4cb04 ARTDEMO.(A) -d00ffc8c32d17e575fd985d435d2eb88 ARTDEMO.HE0 -58c91c3f750b227b136e96b410b0e7cc ARTDEMO.HE2 -47f0573a8a629c6e7f8b9236112fe10e ARTDEMO.HE4 -7e98a8e45cbac83e65d98f3c133ae34d ARTDEMO.W32 -2f1a08df8aa13924959905fc5dc34a9b DATA/INTR_AT_IN_01.DAT -f7841f8a37394805fc0699999898bcca DATA/INTR_AT_IN_02.DAT -6a2f8c39d2ce07d422bae9f9bf416839 DATA/INTR_AT_IN_20_B.DAT - -(freddi5 cd) -sev -C:\Dev\Project\SPUTM\Src\SrcPWin\*.cpp -f536221cc5d8da02009278523eda6bd5 READDEMO.(A) -95818b178d473c989ac753574e8892aa READDEMO.HE0 -7c64b87e454e642e36a83c79341007b0 READDEMO.HE2 -4f307cf26e46f765298cc8f92f02db49 READDEMO.HE4 -eac7453b1dca87447974ef54137470f9 READDEMO.W32 -45a973a322b177ee4b36bea81981462d DATA/INT_RT_IN_01.DAT -9e0c144bf1b7f0cc8ba3edae6135e313 DATA/INT_RT_IN_03.DAT -8d150f9d9e12e485da50c4560135b4ef DATA/INT_RT_IN_04.DAT -8cde496829546daaaa28084c49f3f4f7 DATA/INT_RT_IN_05.DAT -c784fa970208b5bd49fff568ca0036ec DATA/INT_RT_IN_06.DAT diff --git a/doc/he/u32.txt b/doc/he/u32.txt deleted file mode 100644 index e4735cac71..0000000000 --- a/doc/he/u32.txt +++ /dev/null @@ -1,39 +0,0 @@ -500demo, puttrace, racedemo [55808] -39F6C16743D2AA4E0D92C2E6C4993311 500DEMO.U32 -39F6C16743D2AA4E0D92C2E6C4993311 PUTTRACE.U32 -39F6C16743D2AA4E0D92C2E6C4993311 RACEDEMO.U32 - -basketball [282690] -6e8c11a5294981e58032e9f2c8fcdb74 BASKETBALL.U32 - -baseball2001, bb2demo [180224] -23843A93F55BF0B4D7D22E80E0EEFD0A bb2demo.u32 - -chase (he100) [118784] -CC119A63F923076C300DC52575CB47C5 uberedit.u32 - -football, footdemo [155648] -07656b959c7febb6359c8de5fd6b6f76 FOOTBALL.U32 - -football2002 [90156] -2d027f461187ebadad44801c366b892c Football2002.u32 - -moonbase 1.0 [458827] -4c18f01f3020678d2ce9d5312057cb9d Moonbase.u32 - -moondemo [458827] -0C645CDF171CC79DAB28BF8962D6904B moondemo.u32 - -FreddisFunShop, PuttsFunShop, SamsFunShop [40960] -39C468587C4BDAD304BE49E8D4041A22 PuttsFunShop.u32 -39C468587C4BDAD304BE49E8D4041A22 SamsFunShop.u32 -39C468587C4BDAD304BE49E8D4041A22 FreddisFunShop.u32 - -soccer [123904] -ed64133f8cdfca57fb3cd09057def978 SOCCER.U32 - -soccer2004 [90186] -C7B6AB1B4408C4F6EB66ADD731A0DF1A SOCCER2004.U32 - -soccerMLS [135168] -86cb9583ca987446d12a4f36dd8d631b SoccerMLS.u32 diff --git a/doc/he/versions.html b/doc/he/versions.html deleted file mode 100644 index 3ab604c128..0000000000 --- a/doc/he/versions.html +++ /dev/null @@ -1,754 +0,0 @@ -<html> -<!-- $Id$ --> -<p> -Games below are believed to be SCUMM based games... most haven't been proven however. -Every title Humongous Entertainment released before Backyard Hockey (early 2002) should be SCUMM based. -Mac versions not listed in the interest of space, they seem to be the same as pc ones after you rename -certain files anyway. Besides anyone who has a mac version has a PC version as the games are on hybrid -HFS/ISO9660 CDs. - -<table border=1> - -<tr> -<td>Game -<td>Year -<td>Plat -<td>SPU Ver -<td>Source dir - - -<tr> -<td>Putt-Putt Joins the Parade -<td>1992 -<td>dos -<td>6.1.1 (Jan 18 1994 09:32:55) -<td> - -<tr> -<td>Putt-Putt Joins the Parade (patch) -<td>1992 -<td>dos -<td>6.1.1 (Nov 20 1993 12:42:10) -<td> - -<tr> -<td>Putt-Putt Joins the Parade -<td>1992 -<td>win -<td>7.0.0 (Feb 7 1995 13:26:59) -<td> - -<tr> -<td>Putt-Putt Joins the Parade -<td>1992 -<td>3do -<td>6.5.1 (3DO) -<td> - -<tr> -<td>Putt-Putt Joins the Parade (demo) -<td>1993 -<td>dos -<td>6.1.1 (Mar 9 1993 21:19:14) -<td> - -<tr> -<td>Putt-Putt Joins the Parade (demo) -<td>1993 -<td>win -<td>7.0.0 (Feb 7 1995 13:26:59) -<td> - -<tr> -<td>Putt-Putt Goes to the Moon -<td>1993 -<td>dos -<td>6.1.1 (Nov 4 1993 11:12:57) -<td> - -<tr> -<td>Putt-Putt Goes to the Moon -<td>1993 -<td>win -<td>7.0.0 (Feb 7 1995 13:27:20) -<td> - -<tr> -<td>Putt-Putt Goes to the Moon -<td>1993 -<td>3do -<td> - -<tr> -<td>Putt-Putt Goes to the Moon (demo) -<td>1993 -<td>dos -<td>6.1.1 (Sep 29 1993 17:18:45) -<td> - -<tr> -<td>Putt-Putt Goes to the Moon (demo) -<td>1993 -<td>win -<td>7.0.0 (Feb 7 1995 13:27:20) -<td> - -<tr> -<td>Putt-Putt's Fun Pack -<td>1993 -<td>dos -<td>6.1.1 (Feb 15 1993 20:31:55) -<td> - -<tr> -<td>Putt-Putt's Fun Pack (patch) -<td>1993 -<td>dos -<td>6.1.1 (Nov 20 1993 12:20:32) -<td> - -<tr> -<td>Putt-Putt's Fun Pack -<td>1993 -<td>3do -<td> -<td> - -<tr> -<td>Putt-Putt Saves the Zoo -<td>1995 -<td>win -<td>7.0.0 (Jul 13 1995 18:45:07) -<td>D:\scummsys.98\sputm.98\*.c - -<tr> -<td>Putt-Putt Saves the Zoo (demo) -<td>1995 -<td>win -<td>7.0.0 (Jun 4 1995 15:47:12) -<td> - -<tr> -<td>Putt-Putt Saves the Zoo (demo) -<td>1995 -<td>win -<td>7.0.0 (Jun 22 1995 14:03:05) -<td> - -<tr> -<td>Putt-Putt Saves the Zoo (demo) -<td>1995 -<td>win -<td>7.0.0 (Jul 5 1995 14:45:19) -<td> - -<tr> -<td>Putt-Putt Travels Through Time -<td>1997 -<td>win -<td> -<td>C:\Dev\Project\SPUTM\Src\*.cpp - -<tr> -<td>Putt-Putt Travels Through Time (demo) -<td>1997 -<td>win -<td>7.?.? -<td>D:\Scummsys.90\sputm.90\*.c - -<tr> -<td>Putt-Putt Travels Through Time (demo) -<td>1997 -<td>win -<td>7.?.? -<td>c:\Build\SRC\SPUTM\Src\*.cpp - -<tr> -<td>Putt-Putt Enters the Race -<td>1998 -<td>win -<td>7.?.? -<td>D:\scummsys.98\sputm.98\*.c - -<tr> -<td>Putt-Putt Enters the Race (demo) -<td>1998 -<td>win -<td>7.?.? -<td>D:\scummsys.98\sputm.98\*.c - -<tr> -<td>Putt-Putt Joins the Circus -<td> -<td> -<td> -<td>C:\Documents and Settings\stevej.BOT\My Documents\HECode\Libs\Wtoolkit\Rawbitm.cpp - -<tr> -<td>Putt-Putt One-Stop Fun Shop -<td>2000 -<td>win -<td>7.?.? -<td>C:\Dev\Project\SPUTM\Src\*.cpp - -<tr> -<td>Putt-Putt and Pep's Balloon-O-Rama? (arcade)? -<td> -<td>win -<td> -<td>D:\Scummsrc.80\Sputm\*.c - -<tr> -<td>Putt-Putt and Pep's Dog on a Stick? (arcade) -<td>1999 -<td>win -<td>7.?.? -<td>C:\Dev\Project\SPUTM\Src\*.cpp - -<tr> -<td colspan=5> - - -<tr> -<td>Pajama Sam 1: No Need To Hide When Its Dark -<td>1996 -<td>win -<td>7.?.? -<td>D:\Scummsrc.80\Sputm\*.c - -<tr> -<td>Pajama Sam 1: No Need To Hide When Its Dark (demo) -<td>1996 -<td>win -<td> -<td>D:\Scummsrc.80\Sputm\*.c - -<tr> -<td>Pajama Sam 1: No Need to Hide When Its Dark (demo) -<td> -<td>win -<td> -<td>c:\Build\SRC\SPUTM\Src\*.cpp - -<tr> -<td>Pajama Sam 2: Thunder and Lightning -<td>1998 -<td>win -<td>7.?.? -<td>D:\scummsys.95\sputm.95\*.c - -<tr> -<td>Pajama Sam 2: Thunder and Lightning (demo) -<td>1998 -<td>win -<td> -<td>D:\scummsys.95\sputm.95\*.c - -<tr> -<td>Pajama Sam 3: You Are What You Eat From Your -<td>2000 -<td>win -<td>7.?.? -<td>C:\Dev\Project\SPUTM\Src\*.cpp - -<tr> -<td>Pajama Sam 3: You Are What You Eat From (demo) -<td>2000 -<td>win -<td>7.?.? -<td>C:\Dev\Project\SPUTM\Src\*.cpp - -<tr> -<td>Pajama Sam One-Stop Fun Shop -<td>2000 -<td>win -<td> -<td>C:\Documents and Settings\stevej\My Documents\HECode\SPUTM\Src\SrcPWin\*.cpp - -<tr> -<td>Pajama Sam's Sock Works (arcade) -<td>1999 -<td>win -<td> -<td>D:\scummsys.80\sputm80\*.c - -<tr> -<td>Pajama Sam's Lost & Found (arcade) -<td>1999 -<td>win -<td> -<td>D:\scummsys.98\sputm.98\*.c - -<tr> -<td>Pajama Sam's Lost & Found (demo) -<td>1999 -<td>win -<td> -<td>D:\(vss)scummsys.99\SPUTM\Src\SrcPWin\*.cpp - -<tr> -<td colspan=5> - -<tr> -<td>Freddi Fish 1: The Case of the Missing Kelp -<td>1995 -<td>? -<td>7.0.0 (Jun 23 1995 09:58:48) -<td> - -<tr> -<td>Freddi Fish 1: The Case of the Missing Kelp -<td>1998 -<td>? -<td> -<td>D:\Scummsys.90\sputm.90\*.c - -<tr> -<td>Freddi Fish 1: The Case of the Missing Kelp (demo) -<td>1995 -<td>win -<td>7.0.0 (Oct 20 1994 10:00:19) -<td> - -<tr> -<td>Freddi Fish 1: The Case of the Missing Kelp (demo) -<td>1995 -<td>win -<td>7.0.0 (Jun 22 1995 14:06:25) -<td> - -<tr> -<td>Freddi Fish 1: The Case of the Missing Kelp (demo) -<td>1995 -<td>? -<td>7.0.0 (Jul 5 1995 14:46:05) -<td> - -<tr> -<td>Freddi Fish 2: The Case of the Haunted Schoolhouse -<td>1998 -<td>win -<td> -<td>D:\Scummsrc.80\Sputm\*.c - -<tr> -<td>Freddi Fish 2: The Case of the Haunted (demo) -<td>1996 -<td>win -<td>7.?.? -<td>D:\Scummsrc.80\Sputm\*.c - -<tr> -<td>Freddi Fish 2: The Case of the Haunted (demo) -<td>1998 -<td>win -<td>7.?.? -<td>c:\Build\SRC\SPUTM\Src\*.cpp - -<tr> -<td>Freddi Fish 3: The Case of the Stolen Conch -<td>1998 -<td>win -<td> -<td>D:\Scummsys.90\sputm.90\*.c - -<tr> -<td>Freddi Fish 3: The Case of the Stolen (demo) -<td>1997 -<td>win -<td> -<td>D:\Scummsys.90\sputm.90\*.c - -<tr> -<td>Freddi Fish 4: The Case of the Hogfish Rustlers -<td>1999 -<td>win -<td> -<td>D:\scummsys.98\sputm.98\*.c - -<tr> -<td>Freddi Fish 4: The Case of the Hogfish (demo) -<td>1999 -<td>win -<td> -<td>D:\scummsys.98\sputm.98\*.c - -<tr> -<td>Freddi Fish 5: The Case of the Creature of Coral -<td>2001 -<td>win -<td> -<td>C:\Spyfox3Sputm\Src\*.cpp - -<tr> -<td>Freddi Fish One Stop Fun Shop -<td>2000 -<td>win -<td> -<td>C:\Documents and Settings\stevej\My Documents\HECode\SPUTM\Src\*.cpp<br> - -<tr> -<td>Freddi Fish and Luther's Maze Madness -<td>1999 -<td>win -<td> -<td>D:\scummsys\sputm80\*.c - -<tr> -<td>Freddi Fish and Luther's Water Worries -<td>1999 -<td>win -<td> -<td>D:\scummsys\sputm80\*.c - -<tr> -<td colspan=5> - - -<tr> -<td>Spy Fox 1: Dry Cereal -<td>1997 -<td>win -<td> -<td>D:\Scummsys.90\sputm.90\*.c - -<tr> -<td>Spy Fox 1: Dry Cereal (demo) -<td> -<td> -<td>7.?.? -<td>D:\Scummsys.90\sputm.90\*.c - -<tr> -<td>Spy Fox 1: Dry Cereal (demo) -<td> -<td> -<td>7.?.? -<td>c:\Build\SRC\SPUTM\Src\*.cpp - -<tr> -<td>Spy Fox 2: Some Assembly Required -<td>1999 -<td>win -<td> -<td>D:\(vss)scummsys.99\SPUTM\Src\*.cpp - -<tr> -<td>Spy Fox 2: Some Assembly Required (Demo) -<td> -<td>win -<td> -<td>D:\(vss)scummsys.99\SPUTM\Src\*.cpp - -<tr> -<td>Spy Fox 3: Operation Ozone -<td> -<td>win -<td> -<td>C:\Spyfox3Sputm\Src\SrcPWin\*.cpp - -<tr> -<td>Spy Fox In Cheese Chase -<td>1999 -<td>win -<td> -<td>D:\scummsys.95\sputm.95\*.c - -<tr> -<td>Spy Fox in Hold the Mustard -<td>1999 -<td>win -<td> -<td>D:\(vss)scummsys.99\SPUTM\Src\*.cpp - -<tr> -<td colspan=5> - - -<tr> -<td>Fatty's Birthday Surprise -<td>1993 -<td>dos -<td>6.1.1 (Jun 23 1993 15:31:14) -<td> - -<tr> -<td>Fatty's Birthday Surprise -<td>1993 -<td>win -<td>7.0.0 (Feb 7 1995 13:27:40) -<td> - -<tr> -<td>Fatty's Birthday Surprise -<td>1993 -<td>3do -<td> -<td> - -<tr> -<td>Fatty's Birthday Surprise (demo) -<td>1993 -<td>dos -<td>6.1.1 (Apr 6 1993 20:48:56) -<td> - -<tr> -<td>Fatty's Birthday Surprise (demo) -<td>1993 -<td>win -<td>7.0.0 (Feb 7 1995 13:27:40) -<td> - -<tr> -<td>Fatty Bear's Fun Pack -<td>1993 -<td>dos -<td>6.1.1 (Nov 11 1993 09:17:08) -<td> - -<tr> -<td>Fatty Bear's Fun Pack -<td>1993 -<td>3do -<td> -<td> - -<tr> -<td colspan=5> - - -<tr> -<td>Blue's ABC Time Activities -<td> -<td>win -<td> -<td> - -<tr> -<td>Blue's ABC Time Activities (demo) -<td> -<td>win -<td>7.?.? -<td>D:\scummsys.98\sputm.98\*.c - -<tr> -<td>Blue's 123 Time Activities -<td> -<td>win -<td> -<td> - -<tr> -<td>Blue's Art Time Activities -<td> -<td>win -<td> -<td> - -<tr> -<td>Blue's Birthday Adventure -<td> -<td>win -<td> -<td> - -<tr> -<td>Blue's Learning Time -<td> -<td>win -<td> -<td> - -<tr> -<td>Blue's Play Time -<td> -<td>win -<td> -<td> - -<tr> -<td>Blue's Reading Time Activities -<td> -<td>win -<td> -<td> - -<tr> -<td>Blue's Treasure Hunt -<td> -<td>win -<td> -<td> - -<tr> -<td colspan=5> - - -<tr> -<td>Let's Explore the Airport with Buzzy -<td> -<td>win -<td>7.0.0 (Jul 1 1995 21:55:39) -<td> - -<tr> -<td>Let's Explore the Airport with Buzzy (demo) -<td>1995 -<td>win -<td>7.0.0 (Feb 8 1995 16:33:47) -<td> - -<tr> -<td>Let's Explore the Airport with Buzzy (demo) -<td>1995 -<td>win -<td>7.0.0 (Jun 22 1995 14:06:25) -<td> - -<tr> -<td>Let's Explore the Airport with Buzzy (demo) -<td>1995 -<td>win -<td>7.0.0 (Jul 5 1995 14:46:05) -<td> - -<tr> -<td>Let's Explore the Jungle with Buzzy -<td> -<td>win -<td>7.0.0 (Jul 1 1995 21:55:39)<br>7.0.0 (Oct 5 1995 08:20:42) -<td> - -<tr> -<td>Let's Explore the Farm with Buzzy -<td>1996 -<td>win -<td>7.0.0 (Jun 11 1996 19:12:56) -<td> - -<tr> -<td>Let's Explore the Farm with Buzzy (demo) -<td>1994 -<td>win -<td>7.0.0 (Oct 13 1994 19:15:16) -<td> - -<tr> -<td>Let's Explore the Farm with Buzzy (demo) (farm cd) -<td>1995 -<td>win -<td>7.0.0 (Jun 22 1995 14:05:27) -<td> - -<tr> -<td colspan=5> - - -<tr> -<td>Big Thinkers First Grade -<td> -<td>win -<td> -<td> - -<tr> -<td>Big Thinkers First Grade (demo) -<td>1997 -<td>win -<td> -<td>D:\Scummsys.90\sputm.90\*.c - -<tr> -<td>Big Thinkers Kindergarten -<td>1997 -<td>win -<td> -<td>D:\Scummsys.90\sputm.90\*.c - -<tr> -<td>Big Thinkers Kindergarten (demo) -<td>1997 -<td>win -<td> -<td>D:\Scummsys.90\sputm.90\*.c - -<tr> -<td colspan=5> - - -<tr> -<td>Humongous demo launcher "catalog" -<td>1995 -<td>win -<td>7.0.0 (Feb 8 1995 16:33:26) -<td> - -<tr> -<td>Humongous demo launcher "catalog2" -<td>1995 -<td>win -<td>7.0.0 (Jun 22 1995 14:01:50) -<td> - -<tr> -<td colspan=5> - - -<tr> -<td>Backyard Basketball -<td>2001 -<td>win -<td> -<td>c:\Build\SRC\SPUTM\Src\*.cpp - -<tr> -<td>Backyard Soccer -<td>1998 -<td>win -<td> -<td>D:\scummsys.98\sputm.98\*.c - -<tr> -<td>Backyard Soccer 2004 -<td>2003 -<td>win -<td> -<td>F:\HEdev\scummsys\SPUTM\Src\*.cpp - -<tr> -<td>Backyard Football -<td>1999 -<td>win -<td> -<td> - -<tr> -<td>Backyard Football 2002 -<td>? -<td>win -<td> -<td>C:\SRC_RELEASE\SPUTM\Src\*.cpp - -<tr> -<td>Backyard Baseball -<td>1997 -<td>win -<td> -<td>D:\Scummsys.90\sputm.90\*.c - -<tr> -<td>Backyard Baseball 2001 -<td>2000 -<td>win -<td> -<td>C:\Dev\Project\SPUTM\Src\*.cpp - -<tr> -<td>Backyard Baseball 2001 (demo) -<td>2000 -<td>win -<td> -<td>C:\Dev\Project\SPUTM\Src\*.cpp -</table> -</html> diff --git a/doc/translations/de/Liesmich.txt b/doc/translations/de/Liesmich.txt deleted file mode 100755 index a1d7d6eb5f..0000000000 --- a/doc/translations/de/Liesmich.txt +++ /dev/null @@ -1,178 +0,0 @@ -Dieses Dokument ist eine auszugsweise Übersetzung der englischen -REAMDE-Datei. Das Original-Dokument enthält viel mehr Informationen. -Sollten Sie hier also nicht das finden, was Sie benötigen und ein wenig -Englisch können, sollten Sie sich die englische README-Datei ansehen. - -Für weitere Informationen, Kompatiblitätslisten, Einzelheiten zu Spenden, -die neusten veröffentlichten Versionen, Fortschrittberichte und mehr -besuchen Sie bitte die ScummVM-Website unter der Adresse: -http://www.scummvm.org/ - -Inhaltsverzeichnis: ------------------- -1.0) Einführung - * 1.1 Über ScummVM - * 1.2 Schnellstart -2.0) Kontakt - * 2.1 Fehler berichten - -1.0) Einführung: ----- ------------- - -1.1) Über ScummVM: ----- -------------- -ScummVM ist ein Programm, welches es Ihnen ermöglicht, bestimmte klassische -Grafik-Adventure (unter anderem aus dem Point-and-Click-Bereich) zu spielen, -vorausgesetzt, Sie sind im Besitz der Dateien des Spiels. Das Schlaue daran -ist: ScummVM ersetzt lediglich die Funktion der ausführbaren Dateien, -die mit den Spielen kamen, was ermöglicht, diese Spiele auf Systemen zu spielen, -für welche sie nie erstellt wurden! - -Ursprünglich wurde dieses Programm dafür entwickelt, um SCUMM-Spiele von -LucasArts auszuführen, wie beispielsweise Maniac Mansion, Monkey Island, -Day of the Tentacle oder Sam and Max. SCUMM steht als Abkürzung für -„Script Creation Utility for Maniac Mansion“ (deutsch etwa: -Skripterstellungsdienstprogramm für Maniac Mansion), was das erste -Spiel von LucasArts war, für welches LucasArts dieses System entworfen hatte. -Und viel später verlieh es seinen Namen an ScummVM (wobei „VM“ für -„Virtuelle Maschine“ steht). - -Mit der Zeit wurde Unterstützung für viele Nicht-SCUMM-Spiele hinzugefügt. -Einige Adventures, die ScummVM unterstützt, sind unter anderem Simon the -Sorcerer 1 und 2 von Adventure Soft, Beneath A Steel Sky und -Baphomets Fluch 1 und 2 von Revolution, Flight of the Amazon Queen, -Erben der Erde (Wyrmkeep), Gobliiins von Coktel Vision sowie -The Legend of Kyrandia von Westwood Studios. -Sie können eine genaue Liste mit Einzelheiten einsehen, welche Auskunft -darüber gibt, welche Spiele unterstützt werden und wie gut. Gehen Sie -hierfür auf die Kompatiblitätsseite. ScummVM wird kontinuierlich -verbessert, also schauen Sie oft vorbei. - -Unter den Systemen, mit denen Sie diese Spiele spielen können, befinden -sich Windows, Linux, Mac OS X, Dreamcast, PocketPC, PalmOS, iPhone, -AmigaOS, BeOS, OS/2, PSP, PS2, SymbianOS/EPOC und viele mehr. - -Zurzeit befindet sich ScummVM immer noch stark in der Entwicklung. -Seien Sie sich bewusst, dass wir zwar versuchen, dass viele Spiele -mit wenigen erheblichen Fehlern durchgespielt werden können, aber es -dennoch zu Abstürzen kommen kann und wir keine Gewähr übernehmen. -Davon abgesehen: Einige Spiele werden seit längerer Zeit unterstützt -und sollten in jeder stabilen veröffentlichten Version gut laufen. -Sie können sich einen Eindruck davon verschaffen, wie gut jedes Spiel -unter ScummVM läuft, indem Sie auf die Kompatiblitätsseite schauen. - -Wenn Sie sich ein wenig umsehen, können Sie herausfinden, dass -ScummVM sogar kommerziell genutzt wird, um einige der unterstützen Spiele -auf modernen Plattformen wiederzuveröffentlichen. Dies zeigt, dass -verschiedene Firmen mit der Qualität der Software zufrieden sind und wie gut -einige der Spiele mit ihrer Hilfe laufen. - -Wenn Ihnen ScummVM gefällt, können Sie uns gerne etwas Geld spenden, -um uns finanziell zu unterstützen. Dies hilft uns dabei, notwendige -Dienstprogramme zu kaufen, um ScummVM einfacher und schneller zu entwickeln. -Wenn Sie nicht spenden können, dürfen Sie auch gerne einen Patch beisteuern. - -1.2) Schnellstart: ----- ------------ -WICHTIG: In der unteren kurzen Anleitung wird davon ausgegangen, dass Sie -ScummVM auf Deutsch benutzen. Standardmäßig wird ScummVM die Sprache -Ihres Betriebssystems verwenden. Falls ScummVM auf Englisch statt auf -Deutsch erscheint, sollten Sie folgende Schritte ausführen, wenn Sie bei -Schritt 3 angelangt sind und ScummVM gestartet haben: --Klicken Sie auf "Options". --Klicken Sie auf den rechten Pfeil in der Reiterleiste und wählen den - Reiter "Misc" aus. --Wählen Sie im Feld "GUI Language" "Deutsch" aus und klicken auf "OK". --Bestätigen Sie die erscheinende Nachricht, klicken auf "Quit", um - ScummVM zu beenden und starten dann das Programm erneut. - -Wenn Sie ScummVM lieber in Englisch verwenden möchten, benutzen Sie bitte -die Anleitung in der englischen README-Datei. - - -Für die ungelduldigen unter den Benutzern ist hier in fünf einfachen -Schritten kurz beschrieben, wie man ScummVM lauffähig macht und das -Programm verwendet. - -1. Laden Sie ScummVM unter der Adresse -<http://www.scummvm.org/downloads.php> herunter und installieren Sie es. - -2. Erstellen Sie ein Verzeichnis auf Ihrer Festplatte und kopieren Sie -die Dateien des Spiels vom Original-Datenträger in dieses Verzeichnis. -Wiederholen Sie diesen Vorgang für jedes Spiel, das Sie spielen möchten. - -3. Starten Sie ScummVM, wählen Sie "Spiel hinzufügen" aus, wählen Sie das -Verzeichnis mit den Dateien des Spiels aus (versuchen Sie nicht, die -Dateien des Spiels selbst auszuwählen!) und klicken Sie auf "Auswählen". - -4. Ein Dialog sollte erscheinen, der Ihnen ermöglicht, verschiedene -Einstellungen vorzunehmn, sollten Sie dies wünschen (es sollte jedoch in -Ordnung sein, alles voreingestellt zu belassen). Bestätigen Sie diesen -Dialog. - -5. Wählen Sie das Spiel aus der Liste aus, welches Sie spielen möchten -und klicken Sie auf "Starten". - -In Zukunft sollte es nun möglich sein, direkt zu Schritt 5 überzugehen, -außer Sie wollen noch mehr Spiele hinzufügen. - -Tipp: Wenn Sie mehrere Spiele auf einmal hinzufügen möchten, drücken Sie -die Umschalt-Taste (Shift), bevor Sie auf "Spiel hinzufügen" klicken. -Diese Schaltfläche wird somit ihren Text zu "Durchsuchen" umändern und -wenn Sie dann auf diese klicken, werden Sie auch dazu aufgefordert, ein -Verzeichnis auszuwählen, nur dieses Mal wird ScummVM alle -Unterverzeichnisse automatisch nach unterstützen Spielen durchsuchen. - - -2.0) Kontakt: ----- -------- -Der einfachste Weg, um mit dem ScummVM-Team in Verbindung zu treten, ist, -Fehlerberichte einzusenden (siehe Abschnitt 2.1) oder durch Verwendung -des Forums unter der Adresse http://forums.scummvm.org . -Sie können ebenso der Mailing-Liste scummvm-devel betreiten und an diese -E-Mails versenden oder mit uns im IRC chatten (#scummvm unter -irc.freenode.net). Bitte fordern Sie uns nicht dazu auf, ein nicht -unterstütztes Spiel zu unterstützen. Lesen Sie zuerst die Seite FAQ -(Häufig gestellte Fragen) auf unserer Website. -Bitte beachten Sie Kenntnis, dass die offizielle Sprache des Forums, -der Mailing-Liste und des Chats Englisch ist und keine andere Sprache -dort verwendet werden sollte. - - -2.1) Fehler berichten: ----- --------------- -Um einen Fehler zu berichten, erstellen Sie bitte ein SourceForge-Konto -und folgen Sie dem Link "Bug Tracker" auf der ScummVM-Website. Bitte -stellen Sie sicher, dass sich der Bug wiedererzeugen lässt und immer noch -in der neusten Version von SVN oder des Daily builds auftritt. Bitte -sehen Sie auch auf der Problemliste unten und der Kompatiblitätsliste auf -der ScummVM-Website für dieses Spiel nach, um sicherzustellen, dass das -Problem nicht bereits bekannt ist: - - http://www.scummvm.org/compatibility_stable.php - -Bitte berichten Sie keine Fehler zu Spielen, die nicht als durchspielbar -im Bereich "Supported Games" oder der Kompatiblitätsliste aufgelistet -sind. Wir -wissen-, dass diese Spiele Fehler aufweisen. - -Bitte liefern Sie folgende Informationen: - - ScummVM-Version (BITTE mit neuster Version von SVN oder - des Daily builds testen) - - Einzelheiten zum Fehler, einschließlich Anweisungen, um den Fehler - hervorzurufen - - Sprache des Spiels (Englisch, Deutsch, ...) - - Version des Spiels (Version mit Sprachausgabe [Talkie], - Disketten-Version, ...) - - Plattform und gegebenenfalls Compiler (Win32, Linux, FreeBSD, ...) - - Fügen Sie einen Speicherstand hinzu, wenn es möglich ist. - - Wenn dieser Fehler erst seit kurzem Auftritt, teilen Sie bitte die - letzte Version ohne den Fehler mit und die erste Version mit diesem - Fehler. Auf diese Weise können wir diesen schneller beseitigen, - indem wir die vorgenommen Veränderungen einsehen. - -Zum Schluss möchten wir Sie noch bitten, jeden Punkt einzeln zu -berichten; bitte senden Sie nicht mehrere Punkte mit dem selben Ticket -ein, ansonsten wird es schwierig, den Status jedes einzelnen Fehlers -zu verfolgen. Denken Sie bitte auch daran, dass alle Fehlerberichte in -Englisch verfasst sein müssen. - diff --git a/engines/dreamweb/console.cpp b/engines/dreamweb/console.cpp index e004746d8a..d415089a48 100644 --- a/engines/dreamweb/console.cpp +++ b/engines/dreamweb/console.cpp @@ -18,9 +18,6 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * - * $URL: https://svn.scummvm.org:4444/svn/dreamweb/console.cpp $ - * $Id: console.cpp 70 2011-01-26 05:36:55Z digitall $ - * */ #include "dreamweb/console.h" diff --git a/engines/dreamweb/console.h b/engines/dreamweb/console.h index 58c8467b34..a90794e94e 100644 --- a/engines/dreamweb/console.h +++ b/engines/dreamweb/console.h @@ -18,9 +18,6 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * - * $URL: https://svn.scummvm.org:4444/svn/dreamweb/console.h $ - * $Id: console.h 70 2011-01-26 05:36:55Z digitall $ - * */ #ifndef DREAMWEB_CONSOLE_H diff --git a/engines/dreamweb/detection.cpp b/engines/dreamweb/detection.cpp index ef4a746b62..81a209de25 100644 --- a/engines/dreamweb/detection.cpp +++ b/engines/dreamweb/detection.cpp @@ -18,9 +18,6 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * - * $URL: https://svn.scummvm.org:4444/svn/dreamweb/detection.cpp $ - * $Id: detection.cpp 3 2010-09-16 19:32:18Z megath $ - * */ #include "base/plugins.h" diff --git a/engines/dreamweb/detection_tables.h b/engines/dreamweb/detection_tables.h index 6c7d8e4809..82fb6102e4 100644 --- a/engines/dreamweb/detection_tables.h +++ b/engines/dreamweb/detection_tables.h @@ -18,9 +18,6 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * - * $URL: https://svn.scummvm.org:4444/svn/dreamweb/detection_tables.h $ - * $Id: detection_tables.h 66 2010-11-07 08:31:21Z eriktorbjorn $ - * */ #ifndef DREAMWEB_DETECTION_TABLES_H diff --git a/engines/dreamweb/dreamgen.cpp b/engines/dreamweb/dreamgen.cpp index a183c7c798..c05cab5238 100644 --- a/engines/dreamweb/dreamgen.cpp +++ b/engines/dreamweb/dreamgen.cpp @@ -1,5 +1,29 @@ /* PLEASE DO NOT MODIFY THIS FILE. ALL CHANGES WILL BE LOST! LOOK FOR README FOR DETAILS */ +/* ScummVM - Graphic Adventure Engine + * + * ScummVM is the legal property of its developers, whose names + * are too numerous to list here. Please refer to the COPYRIGHT + * file distributed with this source distribution. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ + + + #include "dreamgen.h" namespace DreamGen { @@ -2170,35 +2194,6 @@ forcenext: _cmp(al, al); } -void DreamGenContext::clearsprites() { - STACK_CHECK; - es = data.word(kBuffers); - di = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768+768); - al = 255; - cx = (32)*16; - _stosb(cx, true); -} - -void DreamGenContext::makesprite() { - STACK_CHECK; - es = data.word(kBuffers); - bx = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768+768); -_tmp17: - _cmp(es.byte(bx+15), 255); - if (flags.z()) - goto _tmp17a; - _add(bx, (32)); - goto _tmp17; -_tmp17a: - es.word(bx) = cx; - es.word(bx+10) = si; - es.word(bx+6) = dx; - es.word(bx+8) = di; - es.word(bx+2) = 0x0ffff; - es.byte(bx+15) = 0; - es.byte(bx+18) = 0; -} - void DreamGenContext::delsprite() { STACK_CHECK; di = bx; @@ -2207,117 +2202,6 @@ void DreamGenContext::delsprite() { _stosb(cx, true); } -void DreamGenContext::spriteupdate() { - STACK_CHECK; - es = data.word(kBuffers); - bx = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768+768); - al = data.byte(kRyanon); - es.byte(bx+31) = al; - es = data.word(kBuffers); - bx = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768+768); - cx = 16; -_tmp18: - push(cx); - push(bx); - ax = es.word(bx); - _cmp(ax, 0x0ffff); - if (flags.z()) - goto _tmp18a; - push(es); - push(ds); - cx = es.word(bx+2); - es.word(bx+24) = cx; - __dispatch_call(ax); - ds = pop(); - es = pop(); -_tmp18a: - bx = pop(); - cx = pop(); - _cmp(data.byte(kNowinnewroom), 1); - if (flags.z()) - return /* ($18b) */; - _add(bx, (32)); - if (--cx) - goto _tmp18; -} - -void DreamGenContext::printsprites() { - STACK_CHECK; - es = data.word(kBuffers); - cx = 0; -priorityloop: - push(cx); - data.byte(kPriority) = cl; - bx = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768+768); - cx = 16; -prtspriteloop: - push(cx); - push(bx); - ax = es.word(bx); - _cmp(ax, 0x0ffff); - if (flags.z()) - goto skipsprite; - al = data.byte(kPriority); - _cmp(al, es.byte(bx+23)); - if (!flags.z()) - goto skipsprite; - _cmp(es.byte(bx+31), 1); - if (flags.z()) - goto skipsprite; - printasprite(); -skipsprite: - bx = pop(); - cx = pop(); - _add(bx, (32)); - if (--cx) - goto prtspriteloop; - cx = pop(); - _inc(cx); - _cmp(cx, 7); - if (!flags.z()) - goto priorityloop; -} - -void DreamGenContext::printasprite() { - STACK_CHECK; - push(es); - push(bx); - si = bx; - ds = es.word(si+6); - al = es.byte(si+11); - ah = 0; - _cmp(al, 220); - if (flags.c()) - goto notnegative1; - ah = 255; -notnegative1: - bx = ax; - _add(bx, data.word(kMapady)); - al = es.byte(si+10); - ah = 0; - _cmp(al, 220); - if (flags.c()) - goto notnegative2; - ah = 255; -notnegative2: - di = ax; - _add(di, data.word(kMapadx)); - al = es.byte(si+15); - ah = 0; - _cmp(es.byte(si+30), 0); - if (flags.z()) - goto steadyframe; - ah = 8; -steadyframe: - _cmp(data.byte(kPriority), 6); - if (!flags.z()) - goto notquickp; -notquickp: - showframe(); - bx = pop(); - es = pop(); -} - void DreamGenContext::checkone() { STACK_CHECK; push(cx); @@ -2374,20 +2258,6 @@ over1001: data.word(kTakeoff) = 320; } -void DreamGenContext::initman() { - STACK_CHECK; - al = data.byte(kRyanx); - ah = data.byte(kRyany); - si = ax; - cx = 49464; - dx = data.word(kMainsprites); - di = 0; - makesprite(); - es.byte(bx+23) = 4; - es.byte(bx+22) = 0; - es.byte(bx+29) = 0; -} - void DreamGenContext::mainman() { STACK_CHECK; _cmp(data.byte(kResetmanxy), 1); @@ -2525,58 +2395,6 @@ decdir: es.byte(bx+29) = 0; } -void DreamGenContext::walking() { - STACK_CHECK; - _cmp(data.byte(kLinedirection), 0); - if (flags.z()) - goto normalwalk; - al = data.byte(kLinepointer); - _dec(al); - data.byte(kLinepointer) = al; - _cmp(al, 200); - if (!flags.c()) - goto endofline; - goto continuewalk; -normalwalk: - al = data.byte(kLinepointer); - _inc(al); - data.byte(kLinepointer) = al; - _cmp(al, data.byte(kLinelength)); - if (!flags.c()) - goto endofline; -continuewalk: - ah = 0; - _add(ax, ax); - push(es); - push(bx); - dx = data; - es = dx; - bx = 8173; - _add(bx, ax); - ax = es.word(bx); - bx = pop(); - es = pop(); - es.word(bx+10) = ax; - return; -endofline: - data.byte(kLinepointer) = 254; - al = data.byte(kDestination); - data.byte(kManspath) = al; - _cmp(al, data.byte(kFinaldest)); - if (flags.z()) - goto finishedwalk; - al = data.byte(kFinaldest); - data.byte(kDestination) = al; - push(es); - push(bx); - autosetwalk(); - bx = pop(); - es = pop(); - return; -finishedwalk: - facerightway(); -} - void DreamGenContext::facerightway() { STACK_CHECK; push(es); @@ -3095,98 +2913,6 @@ steadyob: steady(); } -void DreamGenContext::liftsprite() { - STACK_CHECK; - al = data.byte(kLiftflag); - _cmp(al, 0); - if (flags.z()) - goto liftclosed; - _cmp(al, 1); - if (flags.z()) - goto liftopen; - _cmp(al, 3); - if (flags.z()) - goto openlift; - al = es.byte(bx+19); - _cmp(al, 0); - if (flags.z()) - goto finishclose; - _dec(al); - _cmp(al, 11); - if (!flags.z()) - goto pokelift; - push(ax); - al = 3; - liftnoise(); - ax = pop(); - goto pokelift; -finishclose: - data.byte(kLiftflag) = 0; - return; -openlift: - al = es.byte(bx+19); - _cmp(al, 12); - if (flags.z()) - goto endoflist; - _inc(al); - _cmp(al, 1); - if (!flags.z()) - goto pokelift; - push(ax); - al = 2; - liftnoise(); - ax = pop(); -pokelift: - es.byte(bx+19) = al; - ah = 0; - push(di); - _add(di, ax); - al = ds.byte(di+18); - di = pop(); - es.byte(bx+15) = al; - ds.byte(di+17) = al; - return; -endoflist: - data.byte(kLiftflag) = 1; - return; -liftopen: - al = data.byte(kLiftpath); - push(es); - push(bx); - turnpathon(); - bx = pop(); - es = pop(); - _cmp(data.byte(kCounttoclose), 0); - if (flags.z()) - goto nocountclose; - _dec(data.byte(kCounttoclose)); - _cmp(data.byte(kCounttoclose), 0); - if (!flags.z()) - goto nocountclose; - data.byte(kLiftflag) = 2; -nocountclose: - al = 12; - goto pokelift; -liftclosed: - al = data.byte(kLiftpath); - push(es); - push(bx); - turnpathoff(); - bx = pop(); - es = pop(); - _cmp(data.byte(kCounttoopen), 0); - if (flags.z()) - goto nocountopen; - _dec(data.byte(kCounttoopen)); - _cmp(data.byte(kCounttoopen), 0); - if (!flags.z()) - goto nocountopen; - data.byte(kLiftflag) = 3; -nocountopen: - al = 0; - goto pokelift; -} - void DreamGenContext::liftnoise() { STACK_CHECK; _cmp(data.byte(kReallocation), 5); @@ -3258,110 +2984,6 @@ void DreamGenContext::widedoor() { dodoor(); } -void DreamGenContext::dodoor() { - STACK_CHECK; - al = data.byte(kRyanx); - ah = data.byte(kRyany); - cl = es.byte(bx+10); - ch = es.byte(bx+11); - _cmp(al, cl); - if (!flags.c()) - goto rtofdoor; - _sub(al, cl); - _cmp(al, data.byte(kDoorcheck1)); - if (!flags.c()) - goto upordown; - goto shutdoor; -rtofdoor: - _sub(al, cl); - _cmp(al, data.byte(kDoorcheck2)); - if (!flags.c()) - goto shutdoor; -upordown: - _cmp(ah, ch); - if (!flags.c()) - goto botofdoor; - _sub(ah, ch); - _cmp(ah, data.byte(kDoorcheck3)); - if (flags.c()) - goto shutdoor; - goto opendoor; -botofdoor: - _sub(ah, ch); - _cmp(ah, data.byte(kDoorcheck4)); - if (!flags.c()) - goto shutdoor; -opendoor: - cl = es.byte(bx+19); - _cmp(data.byte(kThroughdoor), 1); - if (!flags.z()) - goto notthrough; - _cmp(cl, 0); - if (!flags.z()) - goto notthrough; - cl = 6; -notthrough: - _inc(cl); - _cmp(cl, 1); - if (!flags.z()) - goto notdoorsound2; - al = 0; - _cmp(data.byte(kReallocation), 5); - if (!flags.z()) - goto nothoteldoor2; - al = 13; -nothoteldoor2: - playchannel1(); -notdoorsound2: - ch = 0; - push(di); - _add(di, cx); - al = ds.byte(di+18); - _cmp(al, 255); - if (!flags.z()) - goto atlast1; - _dec(di); - _dec(cl); -atlast1: - es.byte(bx+19) = cl; - al = ds.byte(di+18); - di = pop(); - es.byte(bx+15) = al; - ds.byte(di+17) = al; - data.byte(kThroughdoor) = 1; - return; -shutdoor: - cl = es.byte(bx+19); - _cmp(cl, 5); - if (!flags.z()) - goto notdoorsound1; - al = 1; - _cmp(data.byte(kReallocation), 5); - if (!flags.z()) - goto nothoteldoor1; - al = 13; -nothoteldoor1: - playchannel1(); -notdoorsound1: - _cmp(cl, 0); - if (flags.z()) - goto atlast2; - _dec(cl); - es.byte(bx+19) = cl; -atlast2: - ch = 0; - push(di); - _add(di, cx); - al = ds.byte(di+18); - di = pop(); - es.byte(bx+15) = al; - ds.byte(di+17) = al; - _cmp(cl, 5); - if (!flags.z()) - return /* (notnearly) */; - data.byte(kThroughdoor) = 0; -} - void DreamGenContext::lockeddoorway() { STACK_CHECK; al = data.byte(kRyanx); @@ -4230,198 +3852,6 @@ zeroblock: goto loop120; } -void DreamGenContext::showframe() { - STACK_CHECK; - push(dx); - push(ax); - cx = ax; - _and(cx, 511); - _add(cx, cx); - si = cx; - _add(cx, cx); - _add(si, cx); - _cmp(ds.word(si), 0); - if (!flags.z()) - goto notblankshow; - ax = pop(); - dx = pop(); - cx = 0; - return; -notblankshow: - _test(ah, 128); - if (!flags.z()) - goto skipoffsets; - al = ds.byte(si+4); - ah = 0; - _add(di, ax); - al = ds.byte(si+5); - ah = 0; - _add(bx, ax); -skipoffsets: - cx = ds.word(si+0); - ax = ds.word(si+2); - _add(ax, 2080); - si = ax; - ax = pop(); - dx = pop(); - _cmp(ah, 0); - if (flags.z()) - goto noeffects; - _test(ah, 128); - if (flags.z()) - goto notcentred; - push(ax); - al = cl; - ah = 0; - _shr(ax, 1); - _sub(di, ax); - al = ch; - ah = 0; - _shr(ax, 1); - _sub(bx, ax); - ax = pop(); -notcentred: - _test(ah, 64); - if (flags.z()) - goto notdiffdest; - push(cx); - frameoutfx(); - cx = pop(); - return; -notdiffdest: - _test(ah, 8); - if (flags.z()) - goto notprintlist; - push(ax); - ax = di; - _sub(ax, data.word(kMapadx)); - push(bx); - _sub(bx, data.word(kMapady)); - ah = bl; - bx = pop(); - ax = pop(); -notprintlist: - _test(ah, 4); - if (flags.z()) - goto notflippedx; - dx = (320); - es = data.word(kWorkspace); - push(cx); - frameoutfx(); - cx = pop(); - return; -notflippedx: - _test(ah, 2); - if (flags.z()) - goto notnomask; - dx = (320); - es = data.word(kWorkspace); - push(cx); - frameoutnm(); - cx = pop(); - return; -notnomask: - _test(ah, 32); - if (flags.z()) - goto noeffects; - dx = (320); - es = data.word(kWorkspace); - push(cx); - frameoutbh(); - cx = pop(); - return; -noeffects: - dx = (320); - es = data.word(kWorkspace); - push(cx); - frameoutv(); - cx = pop(); -} - -void DreamGenContext::frameoutbh() { - STACK_CHECK; - push(dx); - ax = bx; - bx = dx; - _mul(bx); - _add(di, ax); - dx = pop(); - push(cx); - ch = 0; - _sub(dx, cx); - cx = pop(); -bhloop2: - push(cx); - ch = 0; - ah = 255; -bhloop1: - _cmp(es.byte(di), ah); - if (!flags.z()) - goto nofill; - _movsb(); - if (--cx) - goto bhloop1; - goto nextline; -nofill: - _inc(di); - _inc(si); - if (--cx) - goto bhloop1; -nextline: - _add(di, dx); - cx = pop(); - _dec(ch); - if (!flags.z()) - goto bhloop2; -} - -void DreamGenContext::frameoutfx() { - STACK_CHECK; - push(dx); - ax = bx; - bx = dx; - _mul(bx); - _add(di, ax); - dx = pop(); - push(cx); - ch = 0; - _add(dx, cx); - cx = pop(); -frameloopfx1: - push(cx); - ch = 0; -frameloopfx2: - _lodsb(); - _cmp(al, 0); - if (!flags.z()) - goto backtosolidfx; -backtootherfx: - _dec(di); - if (--cx) - goto frameloopfx2; - cx = pop(); - _add(di, dx); - _dec(ch); - if (!flags.z()) - goto frameloopfx1; - return; -frameloopfx3: - _lodsb(); - _cmp(al, 0); - if (flags.z()) - goto backtootherfx; -backtosolidfx: - es.byte(di) = al; - _dec(di); - if (--cx) - goto frameloopfx3; - cx = pop(); - _add(di, dx); - _dec(ch); - if (!flags.z()) - goto frameloopfx1; -} - void DreamGenContext::transferinv() { STACK_CHECK; di = data.word(kExframepos); @@ -5507,170 +4937,6 @@ realcreditsearly: data.byte(kLasthardkey) = 0; } -void DreamGenContext::printchar() { - STACK_CHECK; - _cmp(al, 255); - if (flags.z()) - return /* (ignoreit) */; - push(si); - push(bx); - push(di); - _cmp(data.byte(kForeignrelease), 0); - if (flags.z()) - goto _tmp1; - _sub(bx, 3); -_tmp1: - push(ax); - _sub(al, 32); - ah = 0; - _add(ax, data.word(kCharshift)); - showframe(); - ax = pop(); - di = pop(); - bx = pop(); - si = pop(); - _cmp(data.byte(kKerning), 0); - if (!flags.z()) - goto nokern; - kernchars(); -nokern: - push(cx); - ch = 0; - _add(di, cx); - cx = pop(); -} - -void DreamGenContext::kernchars() { - STACK_CHECK; - _cmp(al, 'a'); - if (flags.z()) - goto iskern; - _cmp(al, 'u'); - if (flags.z()) - goto iskern; - return; -iskern: - _cmp(ah, 'n'); - if (flags.z()) - goto kernit; - _cmp(ah, 't'); - if (flags.z()) - goto kernit; - _cmp(ah, 'r'); - if (flags.z()) - goto kernit; - _cmp(ah, 'i'); - if (flags.z()) - goto kernit; - _cmp(ah, 'l'); - if (flags.z()) - goto kernit; - return; -kernit: - _dec(cl); -} - -void DreamGenContext::printslow() { - STACK_CHECK; - data.byte(kPointerframe) = 1; - data.byte(kPointermode) = 3; - ds = data.word(kCharset1); -printloopslow6: - push(bx); - push(di); - push(dx); - getnumber(); - ch = 0; -printloopslow5: - push(cx); - push(si); - push(es); - ax = es.word(si); - push(bx); - push(cx); - push(es); - push(si); - push(ds); - modifychar(); - printboth(); - ds = pop(); - si = pop(); - es = pop(); - cx = pop(); - bx = pop(); - ax = es.word(si+1); - _inc(si); - _cmp(al, 0); - if (flags.z()) - goto finishslow; - _cmp(al, ':'); - if (flags.z()) - goto finishslow; - _cmp(cl, 1); - if (flags.z()) - goto afterslow; - push(di); - push(ds); - push(bx); - push(cx); - push(es); - push(si); - modifychar(); - data.word(kCharshift) = 91; - printboth(); - data.word(kCharshift) = 0; - si = pop(); - es = pop(); - cx = pop(); - bx = pop(); - ds = pop(); - di = pop(); - waitframes(); - _cmp(ax, 0); - if (flags.z()) - goto keepgoing; - _cmp(ax, data.word(kOldbutton)); - if (!flags.z()) - goto finishslow2; -keepgoing: - waitframes(); - _cmp(ax, 0); - if (flags.z()) - goto afterslow; - _cmp(ax, data.word(kOldbutton)); - if (!flags.z()) - goto finishslow2; -afterslow: - es = pop(); - si = pop(); - cx = pop(); - _inc(si); - if (--cx) - goto printloopslow5; - dx = pop(); - di = pop(); - bx = pop(); - _add(bx, 10); - goto printloopslow6; -finishslow: - es = pop(); - si = pop(); - cx = pop(); - dx = pop(); - di = pop(); - bx = pop(); - al = 0; - return; -finishslow2: - es = pop(); - si = pop(); - cx = pop(); - dx = pop(); - di = pop(); - bx = pop(); - al = 1; -} - void DreamGenContext::waitframes() { STACK_CHECK; push(di); @@ -5691,62 +4957,6 @@ void DreamGenContext::waitframes() { di = pop(); } -void DreamGenContext::printboth() { - STACK_CHECK; - push(ax); - push(cx); - push(bx); - push(di); - printchar(); - ax = pop(); - push(di); - di = ax; - multidump(); - di = pop(); - bx = pop(); - cx = pop(); - ax = pop(); -} - -void DreamGenContext::printdirect() { - STACK_CHECK; - data.word(kLastxpos) = di; - ds = data.word(kCurrentset); -printloop6: - push(bx); - push(di); - push(dx); - getnumber(); - ch = 0; -printloop5: - ax = es.word(si); - _inc(si); - _cmp(al, 0); - if (flags.z()) - goto finishdirct; - _cmp(al, ':'); - if (flags.z()) - goto finishdirct; - push(cx); - push(es); - modifychar(); - printchar(); - data.word(kLastxpos) = di; - es = pop(); - cx = pop(); - if (--cx) - goto printloop5; - dx = pop(); - di = pop(); - bx = pop(); - _add(bx, data.word(kLinespacing)); - goto printloop6; -finishdirct: - dx = pop(); - di = pop(); - bx = pop(); -} - void DreamGenContext::monprint() { STACK_CHECK; data.byte(kKerning) = 1; @@ -5833,156 +5043,6 @@ nottrigger2: data.byte(kKerning) = 0; } -void DreamGenContext::getnumber() { - STACK_CHECK; - cx = 0; - push(si); - push(bx); - push(di); - push(ds); - push(es); - di = si; -wordloop: - push(cx); - push(dx); - getnextword(); - dx = pop(); - cx = pop(); - _cmp(al, 1); - if (flags.z()) - goto endoftext; - al = cl; - ah = 0; - push(bx); - bh = 0; - _add(ax, bx); - bx = pop(); - _sub(ax, 10); - dh = 0; - _cmp(ax, dx); - if (!flags.c()) - goto gotoverend; - _add(cl, bl); - _add(ch, bh); - goto wordloop; -gotoverend: - al = dl; - _and(al, 1); - if (flags.z()) - goto notcentre; - push(cx); - al = dl; - _and(al, 0xfe); - ah = 0; - ch = 0; - _sub(ax, cx); - _add(ax, 20); - _shr(ax, 1); - cx = pop(); - es = pop(); - ds = pop(); - di = pop(); - bx = pop(); - si = pop(); - _add(di, ax); - cl = ch; - return; -notcentre: - es = pop(); - ds = pop(); - di = pop(); - bx = pop(); - si = pop(); - cl = ch; - return; -endoftext: - al = cl; - ah = 0; - push(bx); - bh = 0; - _add(ax, bx); - bx = pop(); - _sub(ax, 10); - dh = 0; - _cmp(ax, dx); - if (!flags.c()) - goto gotoverend2; - _add(cl, bl); - _add(ch, bh); -gotoverend2: - al = dl; - _and(al, 1); - if (flags.z()) - goto notcent2; - push(cx); - al = dl; - _and(al, 0xfe); - _add(al, 2); - ah = 0; - ch = 0; - _add(ax, 20); - _sub(ax, cx); - _shr(ax, 1); - cx = pop(); - es = pop(); - ds = pop(); - di = pop(); - bx = pop(); - si = pop(); - _add(di, ax); - cl = ch; - return; -notcent2: - es = pop(); - ds = pop(); - di = pop(); - bx = pop(); - si = pop(); - cl = ch; -} - -void DreamGenContext::getnextword() { - STACK_CHECK; - bx = 0; -getloop: - ax = es.word(di); - _inc(di); - _inc(bh); - _cmp(al, ':'); - if (flags.z()) - goto endall; - _cmp(al, 0); - if (flags.z()) - goto endall; - _cmp(al, 32); - if (flags.z()) - goto endword; - modifychar(); - _cmp(al, 255); - if (flags.z()) - goto getloop; - push(ax); - _sub(al, 32); - ah = 0; - _add(ax, data.word(kCharshift)); - _add(ax, ax); - si = ax; - _add(ax, ax); - _add(si, ax); - cl = ds.byte(si+0); - ax = pop(); - kernchars(); - _add(bl, cl); - goto getloop; -endword: - _add(bl, 6); - al = 0; - return; -endall: - _add(bl, 6); - al = 1; -} - void DreamGenContext::fillryan() { STACK_CHECK; es = data.word(kBuffers); @@ -8501,33 +7561,6 @@ _tmp28a: goto _tmp28; } -void DreamGenContext::eraseoldobs() { - STACK_CHECK; - _cmp(data.byte(kNewobs), 0); - if (flags.z()) - return /* (donterase) */; - es = data.word(kBuffers); - bx = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768+768); - cx = 16; -oberase: - push(cx); - push(bx); - ax = es.word(bx+20); - _cmp(ax, 0x0ffff); - if (flags.z()) - goto notthisob; - di = bx; - al = 255; - cx = (32); - _stosb(cx, true); -notthisob: - bx = pop(); - cx = pop(); - _add(bx, (32)); - if (--cx) - goto oberase; -} - void DreamGenContext::showallobs() { STACK_CHECK; es = data.word(kBuffers); @@ -11039,19 +10072,6 @@ void DreamGenContext::scrollmonitor() { ax = pop(); } -void DreamGenContext::lockmon() { - STACK_CHECK; - _cmp(data.byte(kLasthardkey), 57); - if (!flags.z()) - return /* (notlock) */; - locklighton(); -lockloop: - _cmp(data.byte(kLasthardkey), 57); - if (flags.z()) - goto lockloop; - locklightoff(); -} - void DreamGenContext::monitorlogo() { STACK_CHECK; al = data.byte(kLogonum); @@ -13833,46 +12853,6 @@ notonsartroof: placesetobject(); } -void DreamGenContext::getundertimed() { - STACK_CHECK; - al = data.byte(kTimedy); - _cmp(data.byte(kForeignrelease), 0); - if (flags.z()) - goto _tmp1; - _sub(al, 3); -_tmp1: - ah = 0; - bx = ax; - al = data.byte(kTimedx); - ah = 0; - di = ax; - ch = (30); - cl = 240; - ds = data.word(kBuffers); - si = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768+768+(32*32)+(128*5)+(80*5)+(100*5)+(12*5)+(46*40)+(5*80)+(250*4)); - multiget(); -} - -void DreamGenContext::putundertimed() { - STACK_CHECK; - al = data.byte(kTimedy); - _cmp(data.byte(kForeignrelease), 0); - if (flags.z()) - goto _tmp1; - _sub(al, 3); -_tmp1: - ah = 0; - bx = ax; - al = data.byte(kTimedx); - ah = 0; - di = ax; - ch = (30); - cl = 240; - ds = data.word(kBuffers); - si = (0+(228*13)+32+60+(32*32)+(11*10*3)+768+768+768+(32*32)+(128*5)+(80*5)+(100*5)+(12*5)+(46*40)+(5*80)+(250*4)); - multiput(); -} - void DreamGenContext::dumptimedtext() { STACK_CHECK; _cmp(data.byte(kNeedtodumptimed), 1); @@ -13969,42 +12949,6 @@ notloadspeech3: data.word(kTimedoffset) = bx; } -void DreamGenContext::usetimedtext() { - STACK_CHECK; - _cmp(data.word(kTimecount), 0); - if (flags.z()) - return /* (notext) */; - _dec(data.word(kTimecount)); - _cmp(data.word(kTimecount), 0); - if (flags.z()) - goto deltimedtext; - ax = data.word(kTimecount); - _cmp(ax, data.word(kCounttotimed)); - if (flags.z()) - goto firsttimed; - if (!flags.c()) - return /* (notext) */; - goto notfirsttimed; -firsttimed: - getundertimed(); -notfirsttimed: - bl = data.byte(kTimedy); - bh = 0; - al = data.byte(kTimedx); - ah = 0; - di = ax; - es = data.word(kTimedseg); - si = data.word(kTimedoffset); - dl = 237; - ah = 0; - printdirect(); - data.byte(kNeedtodumptimed) = 1; - return; -deltimedtext: - putundertimed(); - data.byte(kNeedtodumptimed) = 1; -} - void DreamGenContext::edenscdplayer() { STACK_CHECK; showfirstuse(); @@ -17276,19 +16220,6 @@ endlessloop: data.word(kCh0blockstocopy) = ax; } -void DreamGenContext::cancelch0() { - STACK_CHECK; - data.byte(kCh0repeat) = 0; - data.word(kCh0blockstocopy) = 0; - data.byte(kCh0playing) = 255; -} - -void DreamGenContext::cancelch1() { - STACK_CHECK; - data.word(kCh1blockstocopy) = 0; - data.byte(kCh1playing) = 255; -} - void DreamGenContext::channel0tran() { STACK_CHECK; _cmp(data.byte(kVolume), 0); @@ -20531,24 +19462,6 @@ _tmp1: multiput(); } -void DreamGenContext::dumptextline() { - STACK_CHECK; - _cmp(data.byte(kNewtextline), 1); - if (!flags.z()) - return /* (nodumptextline) */; - data.byte(kNewtextline) = 0; - di = data.word(kTextaddressx); - bx = data.word(kTextaddressy); - _cmp(data.byte(kForeignrelease), 0); - if (flags.z()) - goto _tmp1; - _sub(bx, 3); -_tmp1: - cl = (228); - ch = (13); - multidump(); -} - void DreamGenContext::animpointer() { STACK_CHECK; _cmp(data.byte(kPointermode), 2); @@ -22075,745 +20988,718 @@ dreamweb(); void DreamGenContext::__dispatch_call(uint16 addr) { switch(addr) { - case 0xc000: alleybarksound(); break; - case 0xc004: intromusic(); break; - case 0xc008: foghornsound(); break; - case 0xc00c: receptionist(); break; - case 0xc010: smokebloke(); break; - case 0xc014: attendant(); break; - case 0xc018: manasleep(); break; - case 0xc01c: eden(); break; - case 0xc020: edeninbath(); break; - case 0xc024: malefan(); break; - case 0xc028: femalefan(); break; - case 0xc02c: louis(); break; - case 0xc030: louischair(); break; - case 0xc034: manasleep2(); break; - case 0xc038: mansatstill(); break; - case 0xc03c: tattooman(); break; - case 0xc040: drinker(); break; - case 0xc044: bartender(); break; - case 0xc048: othersmoker(); break; - case 0xc04c: barwoman(); break; - case 0xc050: interviewer(); break; - case 0xc054: soldier1(); break; - case 0xc058: rockstar(); break; - case 0xc05c: helicopter(); break; - case 0xc060: mugger(); break; - case 0xc064: aide(); break; - case 0xc068: businessman(); break; - case 0xc06c: poolguard(); break; - case 0xc070: security(); break; - case 0xc074: heavy(); break; - case 0xc078: bossman(); break; - case 0xc07c: gamer(); break; - case 0xc080: sparkydrip(); break; - case 0xc084: carparkdrip(); break; - case 0xc088: keeper(); break; - case 0xc08c: candles1(); break; - case 0xc090: smallcandle(); break; - case 0xc094: intromagic1(); break; - case 0xc098: candles(); break; - case 0xc09c: candles2(); break; - case 0xc0a0: gates(); break; - case 0xc0a4: intromagic2(); break; - case 0xc0a8: intromagic3(); break; - case 0xc0ac: intromonks1(); break; - case 0xc0b0: intromonks2(); break; - case 0xc0b4: handclap(); break; - case 0xc0b8: monks2text(); break; - case 0xc0bc: intro1text(); break; - case 0xc0c0: intro2text(); break; - case 0xc0c4: intro3text(); break; - case 0xc0c8: monkandryan(); break; - case 0xc0cc: endgameseq(); break; - case 0xc0d0: rollendcredits(); break; - case 0xc0d4: priest(); break; - case 0xc0d8: madmanstelly(); break; - case 0xc0dc: madman(); break; - case 0xc0e0: madmantext(); break; - case 0xc0e4: madmode(); break; - case 0xc0e8: priesttext(); break; - case 0xc0ec: textforend(); break; - case 0xc0f0: textformonk(); break; - case 0xc0f4: drunk(); break; - case 0xc0f8: advisor(); break; - case 0xc0fc: copper(); break; - case 0xc100: sparky(); break; - case 0xc104: train(); break; - case 0xc108: addtopeoplelist(); break; - case 0xc10c: showgamereel(); break; - case 0xc110: checkspeed(); break; - case 0xc114: clearsprites(); break; - case 0xc118: makesprite(); break; - case 0xc11c: delsprite(); break; - case 0xc120: spriteupdate(); break; - case 0xc124: printsprites(); break; - case 0xc128: printasprite(); break; - case 0xc12c: checkone(); break; - case 0xc130: findsource(); break; - case 0xc134: initman(); break; - case 0xc138: mainman(); break; - case 0xc13c: aboutturn(); break; - case 0xc140: walking(); break; - case 0xc144: facerightway(); break; - case 0xc148: checkforexit(); break; - case 0xc14c: adjustdown(); break; - case 0xc150: adjustup(); break; - case 0xc154: adjustleft(); break; - case 0xc158: adjustright(); break; - case 0xc15c: reminders(); break; - case 0xc160: initrain(); break; - case 0xc164: splitintolines(); break; - case 0xc168: getblockofpixel(); break; - case 0xc16c: showrain(); break; - case 0xc170: backobject(); break; - case 0xc174: liftsprite(); break; - case 0xc178: liftnoise(); break; - case 0xc17c: random(); break; - case 0xc180: steady(); break; - case 0xc184: constant(); break; - case 0xc188: doorway(); break; - case 0xc18c: widedoor(); break; - case 0xc190: dodoor(); break; - case 0xc194: lockeddoorway(); break; - case 0xc198: updatepeople(); break; - case 0xc19c: getreelframeax(); break; - case 0xc1a0: reelsonscreen(); break; - case 0xc1a4: plotreel(); break; - case 0xc1a8: soundonreels(); break; - case 0xc1ac: reconstruct(); break; - case 0xc1b0: dealwithspecial(); break; - case 0xc1b4: movemap(); break; - case 0xc1b8: getreelstart(); break; - case 0xc1bc: showreelframe(); break; - case 0xc1c0: deleverything(); break; - case 0xc1c4: dumpeverything(); break; - case 0xc1c8: allocatework(); break; - case 0xc1cc: showpcx(); break; - case 0xc1d8: loadpalfromiff(); break; - case 0xc1dc: setmode(); break; - case 0xc1ec: paneltomap(); break; - case 0xc1f0: maptopanel(); break; - case 0xc1f4: dumpmap(); break; - case 0xc1f8: pixelcheckset(); break; - case 0xc1fc: createpanel(); break; - case 0xc200: createpanel2(); break; - case 0xc204: clearwork(); break; - case 0xc208: vsync(); break; - case 0xc20c: doshake(); break; - case 0xc210: zoom(); break; - case 0xc214: delthisone(); break; - case 0xc228: doblocks(); break; - case 0xc22c: showframe(); break; - case 0xc238: frameoutbh(); break; - case 0xc23c: frameoutfx(); break; - case 0xc240: transferinv(); break; - case 0xc244: transfermap(); break; - case 0xc248: fadedos(); break; - case 0xc24c: dofade(); break; - case 0xc250: clearendpal(); break; - case 0xc254: clearpalette(); break; - case 0xc258: fadescreenup(); break; - case 0xc25c: fadetowhite(); break; - case 0xc260: fadefromwhite(); break; - case 0xc264: fadescreenups(); break; - case 0xc268: fadescreendownhalf(); break; - case 0xc26c: fadescreenuphalf(); break; - case 0xc270: fadescreendown(); break; - case 0xc274: fadescreendowns(); break; - case 0xc278: clearstartpal(); break; - case 0xc27c: showgun(); break; - case 0xc280: rollendcredits2(); break; - case 0xc284: rollem(); break; - case 0xc288: fadecalculation(); break; - case 0xc28c: greyscalesum(); break; - case 0xc290: showgroup(); break; - case 0xc294: paltostartpal(); break; - case 0xc298: endpaltostart(); break; - case 0xc29c: startpaltoend(); break; - case 0xc2a0: paltoendpal(); break; - case 0xc2a4: allpalette(); break; - case 0xc2a8: dumpcurrent(); break; - case 0xc2ac: fadedownmon(); break; - case 0xc2b0: fadeupmon(); break; - case 0xc2b4: fadeupmonfirst(); break; - case 0xc2b8: fadeupyellows(); break; - case 0xc2bc: initialmoncols(); break; - case 0xc2c0: titles(); break; - case 0xc2c4: endgame(); break; - case 0xc2c8: monkspeaking(); break; - case 0xc2cc: showmonk(); break; - case 0xc2d0: gettingshot(); break; - case 0xc2d4: credits(); break; - case 0xc2d8: biblequote(); break; - case 0xc2dc: hangone(); break; - case 0xc2e0: intro(); break; - case 0xc2e4: runintroseq(); break; - case 0xc2e8: runendseq(); break; - case 0xc2ec: loadintroroom(); break; - case 0xc2f0: mode640x480(); break; - case 0xc2f4: set16colpalette(); break; - case 0xc2f8: realcredits(); break; - case 0xc2fc: printchar(); break; - case 0xc300: kernchars(); break; - case 0xc304: printslow(); break; - case 0xc308: waitframes(); break; - case 0xc30c: printboth(); break; - case 0xc310: printdirect(); break; - case 0xc314: monprint(); break; - case 0xc318: getnumber(); break; - case 0xc31c: getnextword(); break; - case 0xc320: fillryan(); break; - case 0xc324: fillopen(); break; - case 0xc328: findallryan(); break; - case 0xc32c: findallopen(); break; - case 0xc330: obtoinv(); break; - case 0xc334: isitworn(); break; - case 0xc338: makeworn(); break; - case 0xc33c: examineob(); break; - case 0xc340: makemainscreen(); break; - case 0xc344: getbackfromob(); break; - case 0xc348: incryanpage(); break; - case 0xc34c: openinv(); break; - case 0xc350: showryanpage(); break; - case 0xc354: openob(); break; - case 0xc358: obicons(); break; - case 0xc35c: examicon(); break; - case 0xc360: obpicture(); break; - case 0xc364: describeob(); break; - case 0xc368: additionaltext(); break; - case 0xc36c: obsthatdothings(); break; - case 0xc370: getobtextstart(); break; - case 0xc374: searchforsame(); break; - case 0xc378: findnextcolon(); break; - case 0xc37c: inventory(); break; - case 0xc380: setpickup(); break; - case 0xc384: examinventory(); break; - case 0xc388: reexfrominv(); break; - case 0xc38c: reexfromopen(); break; - case 0xc390: swapwithinv(); break; - case 0xc394: swapwithopen(); break; - case 0xc398: intoinv(); break; - case 0xc39c: deletetaken(); break; - case 0xc3a0: outofinv(); break; - case 0xc3a4: getfreead(); break; - case 0xc3a8: getexad(); break; - case 0xc3ac: geteitherad(); break; - case 0xc3b0: getanyad(); break; - case 0xc3b4: getanyaddir(); break; - case 0xc3b8: getopenedsize(); break; - case 0xc3bc: getsetad(); break; - case 0xc3c0: findinvpos(); break; - case 0xc3c4: findopenpos(); break; - case 0xc3c8: dropobject(); break; - case 0xc3cc: droperror(); break; - case 0xc3d0: cantdrop(); break; - case 0xc3d4: wornerror(); break; - case 0xc3d8: removeobfrominv(); break; - case 0xc3dc: selectopenob(); break; - case 0xc3e0: useopened(); break; - case 0xc3e4: errormessage1(); break; - case 0xc3e8: errormessage2(); break; - case 0xc3ec: errormessage3(); break; - case 0xc3f0: checkobjectsize(); break; - case 0xc3f4: outofopen(); break; - case 0xc3f8: transfertoex(); break; - case 0xc3fc: pickupconts(); break; - case 0xc400: transfercontoex(); break; - case 0xc404: transfertext(); break; - case 0xc408: getexpos(); break; - case 0xc40c: purgealocation(); break; - case 0xc410: emergencypurge(); break; - case 0xc414: purgeanitem(); break; - case 0xc418: deleteexobject(); break; - case 0xc41c: deleteexframe(); break; - case 0xc420: deleteextext(); break; - case 0xc424: blockget(); break; - case 0xc428: drawfloor(); break; - case 0xc42c: calcmapad(); break; - case 0xc430: getdimension(); break; - case 0xc434: addalong(); break; - case 0xc438: addlength(); break; - case 0xc43c: drawflags(); break; - case 0xc440: eraseoldobs(); break; - case 0xc444: showallobs(); break; - case 0xc448: makebackob(); break; - case 0xc44c: showallfree(); break; - case 0xc450: showallex(); break; - case 0xc454: calcfrframe(); break; - case 0xc458: finalframe(); break; - case 0xc45c: adjustlen(); break; - case 0xc460: getmapad(); break; - case 0xc464: getxad(); break; - case 0xc468: getyad(); break; - case 0xc46c: autolook(); break; - case 0xc470: look(); break; - case 0xc474: dolook(); break; - case 0xc478: redrawmainscrn(); break; - case 0xc47c: getback1(); break; - case 0xc480: talk(); break; - case 0xc484: convicons(); break; - case 0xc488: getpersframe(); break; - case 0xc48c: starttalk(); break; - case 0xc490: getpersontext(); break; - case 0xc494: moretalk(); break; - case 0xc498: dosometalk(); break; - case 0xc49c: hangonpq(); break; - case 0xc4a0: redes(); break; - case 0xc4a4: newplace(); break; - case 0xc4a8: selectlocation(); break; - case 0xc4ac: showcity(); break; - case 0xc4b0: lookatplace(); break; - case 0xc4b4: getundercentre(); break; - case 0xc4b8: putundercentre(); break; - case 0xc4bc: locationpic(); break; - case 0xc4c0: getdestinfo(); break; - case 0xc4c4: showarrows(); break; - case 0xc4c8: nextdest(); break; - case 0xc4cc: lastdest(); break; - case 0xc4d0: destselect(); break; - case 0xc4d4: getlocation(); break; - case 0xc4d8: setlocation(); break; - case 0xc4dc: resetlocation(); break; - case 0xc4e0: readdesticon(); break; - case 0xc4e4: readcitypic(); break; - case 0xc4e8: usemon(); break; - case 0xc4ec: printoutermon(); break; - case 0xc4f0: loadpersonal(); break; - case 0xc4f4: loadnews(); break; - case 0xc4f8: loadcart(); break; - case 0xc4fc: lookininterface(); break; - case 0xc500: turnonpower(); break; - case 0xc504: randomaccess(); break; - case 0xc508: powerlighton(); break; - case 0xc50c: powerlightoff(); break; - case 0xc510: accesslighton(); break; - case 0xc514: accesslightoff(); break; - case 0xc518: locklighton(); break; - case 0xc51c: locklightoff(); break; - case 0xc520: input(); break; - case 0xc524: makecaps(); break; - case 0xc528: delchar(); break; - case 0xc52c: execcommand(); break; - case 0xc530: neterror(); break; - case 0xc534: dircom(); break; - case 0xc538: searchforfiles(); break; - case 0xc53c: signon(); break; - case 0xc540: showkeys(); break; - case 0xc544: read(); break; - case 0xc548: dirfile(); break; - case 0xc54c: getkeyandlogo(); break; - case 0xc550: searchforstring(); break; - case 0xc554: parser(); break; - case 0xc558: scrollmonitor(); break; - case 0xc55c: lockmon(); break; - case 0xc560: monitorlogo(); break; - case 0xc564: printlogo(); break; - case 0xc568: showcurrentfile(); break; - case 0xc56c: monmessage(); break; - case 0xc570: processtrigger(); break; - case 0xc574: triggermessage(); break; - case 0xc578: printcurs(); break; - case 0xc57c: delcurs(); break; - case 0xc580: useobject(); break; - case 0xc584: useroutine(); break; - case 0xc588: wheelsound(); break; - case 0xc58c: runtap(); break; - case 0xc590: playguitar(); break; - case 0xc594: hotelcontrol(); break; - case 0xc598: hotelbell(); break; - case 0xc59c: opentomb(); break; - case 0xc5a0: usetrainer(); break; - case 0xc5a4: nothelderror(); break; - case 0xc5a8: usepipe(); break; - case 0xc5ac: usefullcart(); break; - case 0xc5b0: useplinth(); break; - case 0xc5b4: chewy(); break; - case 0xc5b8: useladder(); break; - case 0xc5bc: useladderb(); break; - case 0xc5c0: slabdoora(); break; - case 0xc5c4: slabdoorb(); break; - case 0xc5c8: slabdoord(); break; - case 0xc5cc: slabdoorc(); break; - case 0xc5d0: slabdoore(); break; - case 0xc5d4: slabdoorf(); break; - case 0xc5d8: useslab(); break; - case 0xc5dc: usecart(); break; - case 0xc5e0: useclearbox(); break; - case 0xc5e4: usecoveredbox(); break; - case 0xc5e8: userailing(); break; - case 0xc5ec: useopenbox(); break; - case 0xc5f0: wearwatch(); break; - case 0xc5f4: wearshades(); break; - case 0xc5f8: sitdowninbar(); break; - case 0xc5fc: usechurchhole(); break; - case 0xc600: usehole(); break; - case 0xc604: usealtar(); break; - case 0xc608: opentvdoor(); break; - case 0xc60c: usedryer(); break; - case 0xc610: openlouis(); break; - case 0xc614: nextcolon(); break; - case 0xc618: openyourneighbour(); break; - case 0xc61c: usewindow(); break; - case 0xc620: usebalcony(); break; - case 0xc624: openryan(); break; - case 0xc628: openpoolboss(); break; - case 0xc62c: openeden(); break; - case 0xc630: opensarters(); break; - case 0xc634: isitright(); break; - case 0xc638: drawitall(); break; - case 0xc63c: openhoteldoor(); break; - case 0xc640: openhoteldoor2(); break; - case 0xc644: grafittidoor(); break; - case 0xc648: trapdoor(); break; - case 0xc64c: callhotellift(); break; - case 0xc650: calledenslift(); break; - case 0xc654: calledensdlift(); break; - case 0xc658: usepoolreader(); break; - case 0xc65c: uselighter(); break; - case 0xc660: showseconduse(); break; - case 0xc664: usecardreader1(); break; - case 0xc668: usecardreader2(); break; - case 0xc66c: usecardreader3(); break; - case 0xc670: usecashcard(); break; - case 0xc674: lookatcard(); break; - case 0xc678: moneypoke(); break; - case 0xc67c: usecontrol(); break; - case 0xc680: usehatch(); break; - case 0xc684: usewire(); break; - case 0xc688: usehandle(); break; - case 0xc68c: useelevator1(); break; - case 0xc690: showfirstuse(); break; - case 0xc694: useelevator3(); break; - case 0xc698: useelevator4(); break; - case 0xc69c: useelevator2(); break; - case 0xc6a0: useelevator5(); break; - case 0xc6a4: usekey(); break; - case 0xc6a8: usestereo(); break; - case 0xc6ac: usecooker(); break; - case 0xc6b0: useaxe(); break; - case 0xc6b4: useelvdoor(); break; - case 0xc6b8: withwhat(); break; - case 0xc6bc: selectob(); break; - case 0xc6c0: compare(); break; - case 0xc6c4: findsetobject(); break; - case 0xc6c8: findexobject(); break; - case 0xc6cc: isryanholding(); break; - case 0xc6d0: checkinside(); break; - case 0xc6d4: usetext(); break; - case 0xc6d8: putbackobstuff(); break; - case 0xc6dc: showpuztext(); break; - case 0xc6e0: findpuztext(); break; - case 0xc6e4: placesetobject(); break; - case 0xc6e8: removesetobject(); break; - case 0xc6ec: issetobonmap(); break; - case 0xc6f0: placefreeobject(); break; - case 0xc6f4: removefreeobject(); break; - case 0xc6f8: findormake(); break; - case 0xc6fc: switchryanon(); break; - case 0xc700: switchryanoff(); break; - case 0xc704: setallchanges(); break; - case 0xc708: dochange(); break; - case 0xc70c: autoappear(); break; - case 0xc710: getundertimed(); break; - case 0xc714: putundertimed(); break; - case 0xc718: dumptimedtext(); break; - case 0xc71c: setuptimeduse(); break; - case 0xc720: setuptimedtemp(); break; - case 0xc724: usetimedtext(); break; - case 0xc728: edenscdplayer(); break; - case 0xc72c: usewall(); break; - case 0xc730: usechurchgate(); break; - case 0xc734: usegun(); break; - case 0xc738: useshield(); break; - case 0xc73c: usebuttona(); break; - case 0xc740: useplate(); break; - case 0xc744: usewinch(); break; - case 0xc748: entercode(); break; - case 0xc74c: loadkeypad(); break; - case 0xc750: quitkey(); break; - case 0xc754: addtopresslist(); break; - case 0xc758: buttonone(); break; - case 0xc75c: buttontwo(); break; - case 0xc760: buttonthree(); break; - case 0xc764: buttonfour(); break; - case 0xc768: buttonfive(); break; - case 0xc76c: buttonsix(); break; - case 0xc770: buttonseven(); break; - case 0xc774: buttoneight(); break; - case 0xc778: buttonnine(); break; - case 0xc77c: buttonnought(); break; - case 0xc780: buttonenter(); break; - case 0xc784: buttonpress(); break; - case 0xc788: showouterpad(); break; - case 0xc78c: showkeypad(); break; - case 0xc790: singlekey(); break; - case 0xc794: dumpkeypad(); break; - case 0xc798: usemenu(); break; - case 0xc79c: dumpmenu(); break; - case 0xc7a0: getundermenu(); break; - case 0xc7a4: putundermenu(); break; - case 0xc7a8: showoutermenu(); break; - case 0xc7ac: showmenu(); break; - case 0xc7b0: loadmenu(); break; - case 0xc7b4: viewfolder(); break; - case 0xc7b8: nextfolder(); break; - case 0xc7bc: folderhints(); break; - case 0xc7c0: lastfolder(); break; - case 0xc7c4: loadfolder(); break; - case 0xc7c8: showfolder(); break; - case 0xc7cc: folderexit(); break; - case 0xc7d0: showleftpage(); break; - case 0xc7d4: showrightpage(); break; - case 0xc7d8: entersymbol(); break; - case 0xc7dc: quitsymbol(); break; - case 0xc7e0: settopleft(); break; - case 0xc7e4: settopright(); break; - case 0xc7e8: setbotleft(); break; - case 0xc7ec: setbotright(); break; - case 0xc7f0: dumpsymbol(); break; - case 0xc7f4: showsymbol(); break; - case 0xc7f8: nextsymbol(); break; - case 0xc7fc: updatesymboltop(); break; - case 0xc800: updatesymbolbot(); break; - case 0xc804: dumpsymbox(); break; - case 0xc808: usediary(); break; - case 0xc80c: showdiary(); break; - case 0xc810: showdiarykeys(); break; - case 0xc814: dumpdiarykeys(); break; - case 0xc818: diarykeyp(); break; - case 0xc81c: diarykeyn(); break; - case 0xc820: showdiarypage(); break; - case 0xc824: findtext1(); break; - case 0xc828: zoomonoff(); break; - case 0xc82c: saveload(); break; - case 0xc830: dosaveload(); break; - case 0xc834: getbackfromops(); break; - case 0xc838: showmainops(); break; - case 0xc83c: showdiscops(); break; - case 0xc840: loadsavebox(); break; - case 0xc844: loadgame(); break; - case 0xc848: getbacktoops(); break; - case 0xc84c: discops(); break; - case 0xc850: savegame(); break; - case 0xc854: actualsave(); break; - case 0xc858: actualload(); break; - case 0xc85c: selectslot2(); break; - case 0xc860: checkinput(); break; - case 0xc864: getnamepos(); break; - case 0xc868: showopbox(); break; - case 0xc86c: showloadops(); break; - case 0xc870: showsaveops(); break; - case 0xc874: selectslot(); break; - case 0xc878: showslots(); break; - case 0xc87c: shownames(); break; - case 0xc880: dosreturn(); break; - case 0xc884: error(); break; - case 0xc888: namestoold(); break; - case 0xc88c: oldtonames(); break; - case 0xc890: savefilewrite(); break; - case 0xc894: savefileread(); break; - case 0xc898: saveposition(); break; - case 0xc89c: loadposition(); break; - case 0xc8a0: loadseg(); break; - case 0xc8a4: makeheader(); break; - case 0xc8a8: storeit(); break; - case 0xc8ac: saveseg(); break; - case 0xc8b0: findlen(); break; - case 0xc8b4: scanfornames(); break; - case 0xc8b8: decide(); break; - case 0xc8bc: showdecisions(); break; - case 0xc8c0: newgame(); break; - case 0xc8c4: loadold(); break; - case 0xc8c8: loadspeech(); break; - case 0xc8cc: createname(); break; - case 0xc8d0: loadsample(); break; - case 0xc8d4: loadsecondsample(); break; - case 0xc8d8: soundstartup(); break; - case 0xc8dc: trysoundalloc(); break; - case 0xc8e0: setsoundoff(); break; - case 0xc8e4: checksoundint(); break; - case 0xc8e8: enablesoundint(); break; - case 0xc8ec: disablesoundint(); break; - case 0xc8f0: interupttest(); break; - case 0xc8f4: soundend(); break; - case 0xc8f8: out22c(); break; - case 0xc8fc: playchannel0(); break; - case 0xc900: playchannel1(); break; - case 0xc904: makenextblock(); break; - case 0xc908: volumeadjust(); break; - case 0xc90c: loopchannel0(); break; - case 0xc910: cancelch0(); break; - case 0xc914: cancelch1(); break; - case 0xc918: channel0only(); break; - case 0xc91c: channel1only(); break; - case 0xc920: channel0tran(); break; - case 0xc924: bothchannels(); break; - case 0xc928: saveems(); break; - case 0xc92c: restoreems(); break; - case 0xc930: domix(); break; - case 0xc934: dmaend(); break; - case 0xc938: startdmablock(); break; - case 0xc93c: setuppit(); break; - case 0xc940: getridofpit(); break; - case 0xc944: pitinterupt(); break; - case 0xc948: dreamweb(); break; - case 0xc94c: entrytexts(); break; - case 0xc950: entryanims(); break; - case 0xc954: initialinv(); break; - case 0xc958: pickupob(); break; - case 0xc95c: setupemm(); break; - case 0xc960: removeemm(); break; - case 0xc964: checkforemm(); break; - case 0xc968: checkbasemem(); break; - case 0xc96c: allocatebuffers(); break; - case 0xc970: clearbuffers(); break; - case 0xc974: clearchanges(); break; - case 0xc978: clearbeforeload(); break; - case 0xc97c: clearreels(); break; - case 0xc980: clearrest(); break; - case 0xc984: deallocatemem(); break; - case 0xc988: allocatemem(); break; - case 0xc990: parseblaster(); break; - case 0xc994: startup(); break; - case 0xc998: startup1(); break; - case 0xc99c: screenupdate(); break; - case 0xc9a0: watchreel(); break; - case 0xc9a4: checkforshake(); break; - case 0xc9a8: watchcount(); break; - case 0xc9ac: showtime(); break; - case 0xc9b0: dumpwatch(); break; - case 0xc9b4: showbyte(); break; - case 0xc9b8: onedigit(); break; - case 0xc9bc: twodigitnum(); break; - case 0xc9c0: showword(); break; - case 0xc9c4: convnum(); break; - case 0xc9c8: mainscreen(); break; - case 0xc9cc: madmanrun(); break; - case 0xc9d0: checkcoords(); break; - case 0xc9d4: identifyob(); break; - case 0xc9d8: checkifperson(); break; - case 0xc9dc: checkifset(); break; - case 0xc9e0: checkifex(); break; - case 0xc9e4: checkiffree(); break; - case 0xc9e8: isitdescribed(); break; - case 0xc9ec: findpathofpoint(); break; - case 0xc9f0: findfirstpath(); break; - case 0xc9f4: turnpathon(); break; - case 0xc9f8: turnpathoff(); break; - case 0xc9fc: turnanypathon(); break; - case 0xca00: turnanypathoff(); break; - case 0xca04: checkifpathison(); break; - case 0xca08: afternewroom(); break; - case 0xca0c: atmospheres(); break; - case 0xca10: walkintoroom(); break; - case 0xca14: afterintroroom(); break; - case 0xca18: obname(); break; - case 0xca1c: finishedwalking(); break; - case 0xca20: examineobtext(); break; - case 0xca24: commandwithob(); break; - case 0xca28: commandonly(); break; - case 0xca2c: printmessage(); break; - case 0xca30: printmessage2(); break; - case 0xca34: blocknametext(); break; - case 0xca38: personnametext(); break; - case 0xca3c: walktotext(); break; - case 0xca40: getflagunderp(); break; - case 0xca44: setwalk(); break; - case 0xca48: autosetwalk(); break; - case 0xca4c: checkdest(); break; - case 0xca50: bresenhams(); break; - case 0xca54: workoutframes(); break; - case 0xca58: getroomspaths(); break; - case 0xca5c: copyname(); break; - case 0xca60: findobname(); break; - case 0xca64: showicon(); break; - case 0xca68: middlepanel(); break; - case 0xca6c: showman(); break; - case 0xca70: showpanel(); break; - case 0xca74: roomname(); break; - case 0xca78: usecharset1(); break; - case 0xca7c: usetempcharset(); break; - case 0xca80: showexit(); break; - case 0xca84: panelicons1(); break; - case 0xca88: showwatch(); break; - case 0xca8c: gettime(); break; - case 0xca90: zoomicon(); break; - case 0xca94: showblink(); break; - case 0xca98: dumpblink(); break; - case 0xca9c: worktoscreenm(); break; - case 0xcaa0: blank(); break; - case 0xcaa4: allpointer(); break; - case 0xcaa8: hangonp(); break; - case 0xcaac: hangonw(); break; - case 0xcab0: hangoncurs(); break; - case 0xcab4: getunderzoom(); break; - case 0xcab8: dumpzoom(); break; - case 0xcabc: putunderzoom(); break; - case 0xcac0: crosshair(); break; - case 0xcac4: showpointer(); break; - case 0xcac8: delpointer(); break; - case 0xcacc: dumppointer(); break; - case 0xcad0: undertextline(); break; - case 0xcad4: deltextline(); break; - case 0xcad8: dumptextline(); break; - case 0xcadc: animpointer(); break; - case 0xcae0: setmouse(); break; - case 0xcae4: readmouse(); break; - case 0xcae8: mousecall(); break; - case 0xcaec: readmouse1(); break; - case 0xcaf0: readmouse2(); break; - case 0xcaf4: readmouse3(); break; - case 0xcaf8: readmouse4(); break; - case 0xcafc: readkey(); break; - case 0xcb04: randomnum1(); break; - case 0xcb08: randomnum2(); break; - case 0xcb10: hangon(); break; - case 0xcb14: loadtraveltext(); break; - case 0xcb18: loadintotemp(); break; - case 0xcb1c: loadintotemp2(); break; - case 0xcb20: loadintotemp3(); break; - case 0xcb24: loadtempcharset(); break; - case 0xcb28: standardload(); break; - case 0xcb2c: loadtemptext(); break; - case 0xcb30: loadroom(); break; - case 0xcb34: loadroomssample(); break; - case 0xcb38: getridofreels(); break; - case 0xcb3c: getridofall(); break; - case 0xcb40: restorereels(); break; - case 0xcb44: restoreall(); break; - case 0xcb48: sortoutmap(); break; - case 0xcb4c: startloading(); break; - case 0xcb50: disablepath(); break; - case 0xcb54: findxyfrompath(); break; - case 0xcb58: findroominloc(); break; - case 0xcb5c: getroomdata(); break; - case 0xcb60: readheader(); break; - case 0xcb64: dontloadseg(); break; - case 0xcb68: allocateload(); break; - case 0xcb6c: fillspace(); break; - case 0xcb70: getridoftemp(); break; - case 0xcb74: getridoftemptext(); break; - case 0xcb78: getridoftemp2(); break; - case 0xcb7c: getridoftemp3(); break; - case 0xcb80: getridoftempcharset(); break; - case 0xcb84: getridoftempsp(); break; - case 0xcb88: readsetdata(); break; - case 0xcb8c: createfile(); break; - case 0xcb90: openfile(); break; - case 0xcb94: openfilefromc(); break; - case 0xcb98: makename(); break; - case 0xcb9c: openfilenocheck(); break; - case 0xcba0: openforsave(); break; - case 0xcba4: closefile(); break; - case 0xcba8: readfromfile(); break; - case 0xcbac: setkeyboardint(); break; - case 0xcbb0: resetkeyboard(); break; - case 0xcbb4: keyboardread(); break; - case 0xcbb8: walkandexamine(); break; - case 0xcbbc: doload(); break; - case 0xcbc0: generalerror(); break; + case addr_alleybarksound: alleybarksound(); break; + case addr_intromusic: intromusic(); break; + case addr_foghornsound: foghornsound(); break; + case addr_receptionist: receptionist(); break; + case addr_smokebloke: smokebloke(); break; + case addr_attendant: attendant(); break; + case addr_manasleep: manasleep(); break; + case addr_eden: eden(); break; + case addr_edeninbath: edeninbath(); break; + case addr_malefan: malefan(); break; + case addr_femalefan: femalefan(); break; + case addr_louis: louis(); break; + case addr_louischair: louischair(); break; + case addr_manasleep2: manasleep2(); break; + case addr_mansatstill: mansatstill(); break; + case addr_tattooman: tattooman(); break; + case addr_drinker: drinker(); break; + case addr_bartender: bartender(); break; + case addr_othersmoker: othersmoker(); break; + case addr_barwoman: barwoman(); break; + case addr_interviewer: interviewer(); break; + case addr_soldier1: soldier1(); break; + case addr_rockstar: rockstar(); break; + case addr_helicopter: helicopter(); break; + case addr_mugger: mugger(); break; + case addr_aide: aide(); break; + case addr_businessman: businessman(); break; + case addr_poolguard: poolguard(); break; + case addr_security: security(); break; + case addr_heavy: heavy(); break; + case addr_bossman: bossman(); break; + case addr_gamer: gamer(); break; + case addr_sparkydrip: sparkydrip(); break; + case addr_carparkdrip: carparkdrip(); break; + case addr_keeper: keeper(); break; + case addr_candles1: candles1(); break; + case addr_smallcandle: smallcandle(); break; + case addr_intromagic1: intromagic1(); break; + case addr_candles: candles(); break; + case addr_candles2: candles2(); break; + case addr_gates: gates(); break; + case addr_intromagic2: intromagic2(); break; + case addr_intromagic3: intromagic3(); break; + case addr_intromonks1: intromonks1(); break; + case addr_intromonks2: intromonks2(); break; + case addr_handclap: handclap(); break; + case addr_monks2text: monks2text(); break; + case addr_intro1text: intro1text(); break; + case addr_intro2text: intro2text(); break; + case addr_intro3text: intro3text(); break; + case addr_monkandryan: monkandryan(); break; + case addr_endgameseq: endgameseq(); break; + case addr_rollendcredits: rollendcredits(); break; + case addr_priest: priest(); break; + case addr_madmanstelly: madmanstelly(); break; + case addr_madman: madman(); break; + case addr_madmantext: madmantext(); break; + case addr_madmode: madmode(); break; + case addr_priesttext: priesttext(); break; + case addr_textforend: textforend(); break; + case addr_textformonk: textformonk(); break; + case addr_drunk: drunk(); break; + case addr_advisor: advisor(); break; + case addr_copper: copper(); break; + case addr_sparky: sparky(); break; + case addr_train: train(); break; + case addr_addtopeoplelist: addtopeoplelist(); break; + case addr_showgamereel: showgamereel(); break; + case addr_checkspeed: checkspeed(); break; + case addr_delsprite: delsprite(); break; + case addr_checkone: checkone(); break; + case addr_findsource: findsource(); break; + case addr_mainman: mainman(); break; + case addr_aboutturn: aboutturn(); break; + case addr_facerightway: facerightway(); break; + case addr_checkforexit: checkforexit(); break; + case addr_adjustdown: adjustdown(); break; + case addr_adjustup: adjustup(); break; + case addr_adjustleft: adjustleft(); break; + case addr_adjustright: adjustright(); break; + case addr_reminders: reminders(); break; + case addr_initrain: initrain(); break; + case addr_splitintolines: splitintolines(); break; + case addr_getblockofpixel: getblockofpixel(); break; + case addr_showrain: showrain(); break; + case addr_backobject: backobject(); break; + case addr_liftnoise: liftnoise(); break; + case addr_random: random(); break; + case addr_steady: steady(); break; + case addr_constant: constant(); break; + case addr_doorway: doorway(); break; + case addr_widedoor: widedoor(); break; + case addr_lockeddoorway: lockeddoorway(); break; + case addr_updatepeople: updatepeople(); break; + case addr_getreelframeax: getreelframeax(); break; + case addr_reelsonscreen: reelsonscreen(); break; + case addr_plotreel: plotreel(); break; + case addr_soundonreels: soundonreels(); break; + case addr_reconstruct: reconstruct(); break; + case addr_dealwithspecial: dealwithspecial(); break; + case addr_movemap: movemap(); break; + case addr_getreelstart: getreelstart(); break; + case addr_showreelframe: showreelframe(); break; + case addr_deleverything: deleverything(); break; + case addr_dumpeverything: dumpeverything(); break; + case addr_allocatework: allocatework(); break; + case addr_showpcx: showpcx(); break; + case addr_loadpalfromiff: loadpalfromiff(); break; + case addr_setmode: setmode(); break; + case addr_paneltomap: paneltomap(); break; + case addr_maptopanel: maptopanel(); break; + case addr_dumpmap: dumpmap(); break; + case addr_pixelcheckset: pixelcheckset(); break; + case addr_createpanel: createpanel(); break; + case addr_createpanel2: createpanel2(); break; + case addr_clearwork: clearwork(); break; + case addr_vsync: vsync(); break; + case addr_doshake: doshake(); break; + case addr_zoom: zoom(); break; + case addr_delthisone: delthisone(); break; + case addr_doblocks: doblocks(); break; + case addr_transferinv: transferinv(); break; + case addr_transfermap: transfermap(); break; + case addr_fadedos: fadedos(); break; + case addr_dofade: dofade(); break; + case addr_clearendpal: clearendpal(); break; + case addr_clearpalette: clearpalette(); break; + case addr_fadescreenup: fadescreenup(); break; + case addr_fadetowhite: fadetowhite(); break; + case addr_fadefromwhite: fadefromwhite(); break; + case addr_fadescreenups: fadescreenups(); break; + case addr_fadescreendownhalf: fadescreendownhalf(); break; + case addr_fadescreenuphalf: fadescreenuphalf(); break; + case addr_fadescreendown: fadescreendown(); break; + case addr_fadescreendowns: fadescreendowns(); break; + case addr_clearstartpal: clearstartpal(); break; + case addr_showgun: showgun(); break; + case addr_rollendcredits2: rollendcredits2(); break; + case addr_rollem: rollem(); break; + case addr_fadecalculation: fadecalculation(); break; + case addr_greyscalesum: greyscalesum(); break; + case addr_showgroup: showgroup(); break; + case addr_paltostartpal: paltostartpal(); break; + case addr_endpaltostart: endpaltostart(); break; + case addr_startpaltoend: startpaltoend(); break; + case addr_paltoendpal: paltoendpal(); break; + case addr_allpalette: allpalette(); break; + case addr_dumpcurrent: dumpcurrent(); break; + case addr_fadedownmon: fadedownmon(); break; + case addr_fadeupmon: fadeupmon(); break; + case addr_fadeupmonfirst: fadeupmonfirst(); break; + case addr_fadeupyellows: fadeupyellows(); break; + case addr_initialmoncols: initialmoncols(); break; + case addr_titles: titles(); break; + case addr_endgame: endgame(); break; + case addr_monkspeaking: monkspeaking(); break; + case addr_showmonk: showmonk(); break; + case addr_gettingshot: gettingshot(); break; + case addr_credits: credits(); break; + case addr_biblequote: biblequote(); break; + case addr_hangone: hangone(); break; + case addr_intro: intro(); break; + case addr_runintroseq: runintroseq(); break; + case addr_runendseq: runendseq(); break; + case addr_loadintroroom: loadintroroom(); break; + case addr_mode640x480: mode640x480(); break; + case addr_set16colpalette: set16colpalette(); break; + case addr_realcredits: realcredits(); break; + case addr_waitframes: waitframes(); break; + case addr_monprint: monprint(); break; + case addr_fillryan: fillryan(); break; + case addr_fillopen: fillopen(); break; + case addr_findallryan: findallryan(); break; + case addr_findallopen: findallopen(); break; + case addr_obtoinv: obtoinv(); break; + case addr_isitworn: isitworn(); break; + case addr_makeworn: makeworn(); break; + case addr_examineob: examineob(); break; + case addr_makemainscreen: makemainscreen(); break; + case addr_getbackfromob: getbackfromob(); break; + case addr_incryanpage: incryanpage(); break; + case addr_openinv: openinv(); break; + case addr_showryanpage: showryanpage(); break; + case addr_openob: openob(); break; + case addr_obicons: obicons(); break; + case addr_examicon: examicon(); break; + case addr_obpicture: obpicture(); break; + case addr_describeob: describeob(); break; + case addr_additionaltext: additionaltext(); break; + case addr_obsthatdothings: obsthatdothings(); break; + case addr_getobtextstart: getobtextstart(); break; + case addr_searchforsame: searchforsame(); break; + case addr_findnextcolon: findnextcolon(); break; + case addr_inventory: inventory(); break; + case addr_setpickup: setpickup(); break; + case addr_examinventory: examinventory(); break; + case addr_reexfrominv: reexfrominv(); break; + case addr_reexfromopen: reexfromopen(); break; + case addr_swapwithinv: swapwithinv(); break; + case addr_swapwithopen: swapwithopen(); break; + case addr_intoinv: intoinv(); break; + case addr_deletetaken: deletetaken(); break; + case addr_outofinv: outofinv(); break; + case addr_getfreead: getfreead(); break; + case addr_getexad: getexad(); break; + case addr_geteitherad: geteitherad(); break; + case addr_getanyad: getanyad(); break; + case addr_getanyaddir: getanyaddir(); break; + case addr_getopenedsize: getopenedsize(); break; + case addr_getsetad: getsetad(); break; + case addr_findinvpos: findinvpos(); break; + case addr_findopenpos: findopenpos(); break; + case addr_dropobject: dropobject(); break; + case addr_droperror: droperror(); break; + case addr_cantdrop: cantdrop(); break; + case addr_wornerror: wornerror(); break; + case addr_removeobfrominv: removeobfrominv(); break; + case addr_selectopenob: selectopenob(); break; + case addr_useopened: useopened(); break; + case addr_errormessage1: errormessage1(); break; + case addr_errormessage2: errormessage2(); break; + case addr_errormessage3: errormessage3(); break; + case addr_checkobjectsize: checkobjectsize(); break; + case addr_outofopen: outofopen(); break; + case addr_transfertoex: transfertoex(); break; + case addr_pickupconts: pickupconts(); break; + case addr_transfercontoex: transfercontoex(); break; + case addr_transfertext: transfertext(); break; + case addr_getexpos: getexpos(); break; + case addr_purgealocation: purgealocation(); break; + case addr_emergencypurge: emergencypurge(); break; + case addr_purgeanitem: purgeanitem(); break; + case addr_deleteexobject: deleteexobject(); break; + case addr_deleteexframe: deleteexframe(); break; + case addr_deleteextext: deleteextext(); break; + case addr_blockget: blockget(); break; + case addr_drawfloor: drawfloor(); break; + case addr_calcmapad: calcmapad(); break; + case addr_getdimension: getdimension(); break; + case addr_addalong: addalong(); break; + case addr_addlength: addlength(); break; + case addr_drawflags: drawflags(); break; + case addr_showallobs: showallobs(); break; + case addr_makebackob: makebackob(); break; + case addr_showallfree: showallfree(); break; + case addr_showallex: showallex(); break; + case addr_calcfrframe: calcfrframe(); break; + case addr_finalframe: finalframe(); break; + case addr_adjustlen: adjustlen(); break; + case addr_getmapad: getmapad(); break; + case addr_getxad: getxad(); break; + case addr_getyad: getyad(); break; + case addr_autolook: autolook(); break; + case addr_look: look(); break; + case addr_dolook: dolook(); break; + case addr_redrawmainscrn: redrawmainscrn(); break; + case addr_getback1: getback1(); break; + case addr_talk: talk(); break; + case addr_convicons: convicons(); break; + case addr_getpersframe: getpersframe(); break; + case addr_starttalk: starttalk(); break; + case addr_getpersontext: getpersontext(); break; + case addr_moretalk: moretalk(); break; + case addr_dosometalk: dosometalk(); break; + case addr_hangonpq: hangonpq(); break; + case addr_redes: redes(); break; + case addr_newplace: newplace(); break; + case addr_selectlocation: selectlocation(); break; + case addr_showcity: showcity(); break; + case addr_lookatplace: lookatplace(); break; + case addr_getundercentre: getundercentre(); break; + case addr_putundercentre: putundercentre(); break; + case addr_locationpic: locationpic(); break; + case addr_getdestinfo: getdestinfo(); break; + case addr_showarrows: showarrows(); break; + case addr_nextdest: nextdest(); break; + case addr_lastdest: lastdest(); break; + case addr_destselect: destselect(); break; + case addr_getlocation: getlocation(); break; + case addr_setlocation: setlocation(); break; + case addr_resetlocation: resetlocation(); break; + case addr_readdesticon: readdesticon(); break; + case addr_readcitypic: readcitypic(); break; + case addr_usemon: usemon(); break; + case addr_printoutermon: printoutermon(); break; + case addr_loadpersonal: loadpersonal(); break; + case addr_loadnews: loadnews(); break; + case addr_loadcart: loadcart(); break; + case addr_lookininterface: lookininterface(); break; + case addr_turnonpower: turnonpower(); break; + case addr_randomaccess: randomaccess(); break; + case addr_powerlighton: powerlighton(); break; + case addr_powerlightoff: powerlightoff(); break; + case addr_accesslighton: accesslighton(); break; + case addr_accesslightoff: accesslightoff(); break; + case addr_locklighton: locklighton(); break; + case addr_locklightoff: locklightoff(); break; + case addr_input: input(); break; + case addr_makecaps: makecaps(); break; + case addr_delchar: delchar(); break; + case addr_execcommand: execcommand(); break; + case addr_neterror: neterror(); break; + case addr_dircom: dircom(); break; + case addr_searchforfiles: searchforfiles(); break; + case addr_signon: signon(); break; + case addr_showkeys: showkeys(); break; + case addr_read: read(); break; + case addr_dirfile: dirfile(); break; + case addr_getkeyandlogo: getkeyandlogo(); break; + case addr_searchforstring: searchforstring(); break; + case addr_parser: parser(); break; + case addr_scrollmonitor: scrollmonitor(); break; + case addr_monitorlogo: monitorlogo(); break; + case addr_printlogo: printlogo(); break; + case addr_showcurrentfile: showcurrentfile(); break; + case addr_monmessage: monmessage(); break; + case addr_processtrigger: processtrigger(); break; + case addr_triggermessage: triggermessage(); break; + case addr_printcurs: printcurs(); break; + case addr_delcurs: delcurs(); break; + case addr_useobject: useobject(); break; + case addr_useroutine: useroutine(); break; + case addr_wheelsound: wheelsound(); break; + case addr_runtap: runtap(); break; + case addr_playguitar: playguitar(); break; + case addr_hotelcontrol: hotelcontrol(); break; + case addr_hotelbell: hotelbell(); break; + case addr_opentomb: opentomb(); break; + case addr_usetrainer: usetrainer(); break; + case addr_nothelderror: nothelderror(); break; + case addr_usepipe: usepipe(); break; + case addr_usefullcart: usefullcart(); break; + case addr_useplinth: useplinth(); break; + case addr_chewy: chewy(); break; + case addr_useladder: useladder(); break; + case addr_useladderb: useladderb(); break; + case addr_slabdoora: slabdoora(); break; + case addr_slabdoorb: slabdoorb(); break; + case addr_slabdoord: slabdoord(); break; + case addr_slabdoorc: slabdoorc(); break; + case addr_slabdoore: slabdoore(); break; + case addr_slabdoorf: slabdoorf(); break; + case addr_useslab: useslab(); break; + case addr_usecart: usecart(); break; + case addr_useclearbox: useclearbox(); break; + case addr_usecoveredbox: usecoveredbox(); break; + case addr_userailing: userailing(); break; + case addr_useopenbox: useopenbox(); break; + case addr_wearwatch: wearwatch(); break; + case addr_wearshades: wearshades(); break; + case addr_sitdowninbar: sitdowninbar(); break; + case addr_usechurchhole: usechurchhole(); break; + case addr_usehole: usehole(); break; + case addr_usealtar: usealtar(); break; + case addr_opentvdoor: opentvdoor(); break; + case addr_usedryer: usedryer(); break; + case addr_openlouis: openlouis(); break; + case addr_nextcolon: nextcolon(); break; + case addr_openyourneighbour: openyourneighbour(); break; + case addr_usewindow: usewindow(); break; + case addr_usebalcony: usebalcony(); break; + case addr_openryan: openryan(); break; + case addr_openpoolboss: openpoolboss(); break; + case addr_openeden: openeden(); break; + case addr_opensarters: opensarters(); break; + case addr_isitright: isitright(); break; + case addr_drawitall: drawitall(); break; + case addr_openhoteldoor: openhoteldoor(); break; + case addr_openhoteldoor2: openhoteldoor2(); break; + case addr_grafittidoor: grafittidoor(); break; + case addr_trapdoor: trapdoor(); break; + case addr_callhotellift: callhotellift(); break; + case addr_calledenslift: calledenslift(); break; + case addr_calledensdlift: calledensdlift(); break; + case addr_usepoolreader: usepoolreader(); break; + case addr_uselighter: uselighter(); break; + case addr_showseconduse: showseconduse(); break; + case addr_usecardreader1: usecardreader1(); break; + case addr_usecardreader2: usecardreader2(); break; + case addr_usecardreader3: usecardreader3(); break; + case addr_usecashcard: usecashcard(); break; + case addr_lookatcard: lookatcard(); break; + case addr_moneypoke: moneypoke(); break; + case addr_usecontrol: usecontrol(); break; + case addr_usehatch: usehatch(); break; + case addr_usewire: usewire(); break; + case addr_usehandle: usehandle(); break; + case addr_useelevator1: useelevator1(); break; + case addr_showfirstuse: showfirstuse(); break; + case addr_useelevator3: useelevator3(); break; + case addr_useelevator4: useelevator4(); break; + case addr_useelevator2: useelevator2(); break; + case addr_useelevator5: useelevator5(); break; + case addr_usekey: usekey(); break; + case addr_usestereo: usestereo(); break; + case addr_usecooker: usecooker(); break; + case addr_useaxe: useaxe(); break; + case addr_useelvdoor: useelvdoor(); break; + case addr_withwhat: withwhat(); break; + case addr_selectob: selectob(); break; + case addr_compare: compare(); break; + case addr_findsetobject: findsetobject(); break; + case addr_findexobject: findexobject(); break; + case addr_isryanholding: isryanholding(); break; + case addr_checkinside: checkinside(); break; + case addr_usetext: usetext(); break; + case addr_putbackobstuff: putbackobstuff(); break; + case addr_showpuztext: showpuztext(); break; + case addr_findpuztext: findpuztext(); break; + case addr_placesetobject: placesetobject(); break; + case addr_removesetobject: removesetobject(); break; + case addr_issetobonmap: issetobonmap(); break; + case addr_placefreeobject: placefreeobject(); break; + case addr_removefreeobject: removefreeobject(); break; + case addr_findormake: findormake(); break; + case addr_switchryanon: switchryanon(); break; + case addr_switchryanoff: switchryanoff(); break; + case addr_setallchanges: setallchanges(); break; + case addr_dochange: dochange(); break; + case addr_autoappear: autoappear(); break; + case addr_dumptimedtext: dumptimedtext(); break; + case addr_setuptimeduse: setuptimeduse(); break; + case addr_setuptimedtemp: setuptimedtemp(); break; + case addr_edenscdplayer: edenscdplayer(); break; + case addr_usewall: usewall(); break; + case addr_usechurchgate: usechurchgate(); break; + case addr_usegun: usegun(); break; + case addr_useshield: useshield(); break; + case addr_usebuttona: usebuttona(); break; + case addr_useplate: useplate(); break; + case addr_usewinch: usewinch(); break; + case addr_entercode: entercode(); break; + case addr_loadkeypad: loadkeypad(); break; + case addr_quitkey: quitkey(); break; + case addr_addtopresslist: addtopresslist(); break; + case addr_buttonone: buttonone(); break; + case addr_buttontwo: buttontwo(); break; + case addr_buttonthree: buttonthree(); break; + case addr_buttonfour: buttonfour(); break; + case addr_buttonfive: buttonfive(); break; + case addr_buttonsix: buttonsix(); break; + case addr_buttonseven: buttonseven(); break; + case addr_buttoneight: buttoneight(); break; + case addr_buttonnine: buttonnine(); break; + case addr_buttonnought: buttonnought(); break; + case addr_buttonenter: buttonenter(); break; + case addr_buttonpress: buttonpress(); break; + case addr_showouterpad: showouterpad(); break; + case addr_showkeypad: showkeypad(); break; + case addr_singlekey: singlekey(); break; + case addr_dumpkeypad: dumpkeypad(); break; + case addr_usemenu: usemenu(); break; + case addr_dumpmenu: dumpmenu(); break; + case addr_getundermenu: getundermenu(); break; + case addr_putundermenu: putundermenu(); break; + case addr_showoutermenu: showoutermenu(); break; + case addr_showmenu: showmenu(); break; + case addr_loadmenu: loadmenu(); break; + case addr_viewfolder: viewfolder(); break; + case addr_nextfolder: nextfolder(); break; + case addr_folderhints: folderhints(); break; + case addr_lastfolder: lastfolder(); break; + case addr_loadfolder: loadfolder(); break; + case addr_showfolder: showfolder(); break; + case addr_folderexit: folderexit(); break; + case addr_showleftpage: showleftpage(); break; + case addr_showrightpage: showrightpage(); break; + case addr_entersymbol: entersymbol(); break; + case addr_quitsymbol: quitsymbol(); break; + case addr_settopleft: settopleft(); break; + case addr_settopright: settopright(); break; + case addr_setbotleft: setbotleft(); break; + case addr_setbotright: setbotright(); break; + case addr_dumpsymbol: dumpsymbol(); break; + case addr_showsymbol: showsymbol(); break; + case addr_nextsymbol: nextsymbol(); break; + case addr_updatesymboltop: updatesymboltop(); break; + case addr_updatesymbolbot: updatesymbolbot(); break; + case addr_dumpsymbox: dumpsymbox(); break; + case addr_usediary: usediary(); break; + case addr_showdiary: showdiary(); break; + case addr_showdiarykeys: showdiarykeys(); break; + case addr_dumpdiarykeys: dumpdiarykeys(); break; + case addr_diarykeyp: diarykeyp(); break; + case addr_diarykeyn: diarykeyn(); break; + case addr_showdiarypage: showdiarypage(); break; + case addr_findtext1: findtext1(); break; + case addr_zoomonoff: zoomonoff(); break; + case addr_saveload: saveload(); break; + case addr_dosaveload: dosaveload(); break; + case addr_getbackfromops: getbackfromops(); break; + case addr_showmainops: showmainops(); break; + case addr_showdiscops: showdiscops(); break; + case addr_loadsavebox: loadsavebox(); break; + case addr_loadgame: loadgame(); break; + case addr_getbacktoops: getbacktoops(); break; + case addr_discops: discops(); break; + case addr_savegame: savegame(); break; + case addr_actualsave: actualsave(); break; + case addr_actualload: actualload(); break; + case addr_selectslot2: selectslot2(); break; + case addr_checkinput: checkinput(); break; + case addr_getnamepos: getnamepos(); break; + case addr_showopbox: showopbox(); break; + case addr_showloadops: showloadops(); break; + case addr_showsaveops: showsaveops(); break; + case addr_selectslot: selectslot(); break; + case addr_showslots: showslots(); break; + case addr_shownames: shownames(); break; + case addr_dosreturn: dosreturn(); break; + case addr_error: error(); break; + case addr_namestoold: namestoold(); break; + case addr_oldtonames: oldtonames(); break; + case addr_savefilewrite: savefilewrite(); break; + case addr_savefileread: savefileread(); break; + case addr_saveposition: saveposition(); break; + case addr_loadposition: loadposition(); break; + case addr_loadseg: loadseg(); break; + case addr_makeheader: makeheader(); break; + case addr_storeit: storeit(); break; + case addr_saveseg: saveseg(); break; + case addr_findlen: findlen(); break; + case addr_scanfornames: scanfornames(); break; + case addr_decide: decide(); break; + case addr_showdecisions: showdecisions(); break; + case addr_newgame: newgame(); break; + case addr_loadold: loadold(); break; + case addr_loadspeech: loadspeech(); break; + case addr_createname: createname(); break; + case addr_loadsample: loadsample(); break; + case addr_loadsecondsample: loadsecondsample(); break; + case addr_soundstartup: soundstartup(); break; + case addr_trysoundalloc: trysoundalloc(); break; + case addr_setsoundoff: setsoundoff(); break; + case addr_checksoundint: checksoundint(); break; + case addr_enablesoundint: enablesoundint(); break; + case addr_disablesoundint: disablesoundint(); break; + case addr_interupttest: interupttest(); break; + case addr_soundend: soundend(); break; + case addr_out22c: out22c(); break; + case addr_playchannel0: playchannel0(); break; + case addr_playchannel1: playchannel1(); break; + case addr_makenextblock: makenextblock(); break; + case addr_volumeadjust: volumeadjust(); break; + case addr_loopchannel0: loopchannel0(); break; + case addr_channel0only: channel0only(); break; + case addr_channel1only: channel1only(); break; + case addr_channel0tran: channel0tran(); break; + case addr_bothchannels: bothchannels(); break; + case addr_saveems: saveems(); break; + case addr_restoreems: restoreems(); break; + case addr_domix: domix(); break; + case addr_dmaend: dmaend(); break; + case addr_startdmablock: startdmablock(); break; + case addr_setuppit: setuppit(); break; + case addr_getridofpit: getridofpit(); break; + case addr_pitinterupt: pitinterupt(); break; + case addr_dreamweb: dreamweb(); break; + case addr_entrytexts: entrytexts(); break; + case addr_entryanims: entryanims(); break; + case addr_initialinv: initialinv(); break; + case addr_pickupob: pickupob(); break; + case addr_setupemm: setupemm(); break; + case addr_removeemm: removeemm(); break; + case addr_checkforemm: checkforemm(); break; + case addr_checkbasemem: checkbasemem(); break; + case addr_allocatebuffers: allocatebuffers(); break; + case addr_clearbuffers: clearbuffers(); break; + case addr_clearchanges: clearchanges(); break; + case addr_clearbeforeload: clearbeforeload(); break; + case addr_clearreels: clearreels(); break; + case addr_clearrest: clearrest(); break; + case addr_deallocatemem: deallocatemem(); break; + case addr_allocatemem: allocatemem(); break; + case addr_parseblaster: parseblaster(); break; + case addr_startup: startup(); break; + case addr_startup1: startup1(); break; + case addr_screenupdate: screenupdate(); break; + case addr_watchreel: watchreel(); break; + case addr_checkforshake: checkforshake(); break; + case addr_watchcount: watchcount(); break; + case addr_showtime: showtime(); break; + case addr_dumpwatch: dumpwatch(); break; + case addr_showbyte: showbyte(); break; + case addr_onedigit: onedigit(); break; + case addr_twodigitnum: twodigitnum(); break; + case addr_showword: showword(); break; + case addr_convnum: convnum(); break; + case addr_mainscreen: mainscreen(); break; + case addr_madmanrun: madmanrun(); break; + case addr_checkcoords: checkcoords(); break; + case addr_identifyob: identifyob(); break; + case addr_checkifperson: checkifperson(); break; + case addr_checkifset: checkifset(); break; + case addr_checkifex: checkifex(); break; + case addr_checkiffree: checkiffree(); break; + case addr_isitdescribed: isitdescribed(); break; + case addr_findpathofpoint: findpathofpoint(); break; + case addr_findfirstpath: findfirstpath(); break; + case addr_turnpathon: turnpathon(); break; + case addr_turnpathoff: turnpathoff(); break; + case addr_turnanypathon: turnanypathon(); break; + case addr_turnanypathoff: turnanypathoff(); break; + case addr_checkifpathison: checkifpathison(); break; + case addr_afternewroom: afternewroom(); break; + case addr_atmospheres: atmospheres(); break; + case addr_walkintoroom: walkintoroom(); break; + case addr_afterintroroom: afterintroroom(); break; + case addr_obname: obname(); break; + case addr_finishedwalking: finishedwalking(); break; + case addr_examineobtext: examineobtext(); break; + case addr_commandwithob: commandwithob(); break; + case addr_commandonly: commandonly(); break; + case addr_printmessage: printmessage(); break; + case addr_printmessage2: printmessage2(); break; + case addr_blocknametext: blocknametext(); break; + case addr_personnametext: personnametext(); break; + case addr_walktotext: walktotext(); break; + case addr_getflagunderp: getflagunderp(); break; + case addr_setwalk: setwalk(); break; + case addr_autosetwalk: autosetwalk(); break; + case addr_checkdest: checkdest(); break; + case addr_bresenhams: bresenhams(); break; + case addr_workoutframes: workoutframes(); break; + case addr_getroomspaths: getroomspaths(); break; + case addr_copyname: copyname(); break; + case addr_findobname: findobname(); break; + case addr_showicon: showicon(); break; + case addr_middlepanel: middlepanel(); break; + case addr_showman: showman(); break; + case addr_showpanel: showpanel(); break; + case addr_roomname: roomname(); break; + case addr_usecharset1: usecharset1(); break; + case addr_usetempcharset: usetempcharset(); break; + case addr_showexit: showexit(); break; + case addr_panelicons1: panelicons1(); break; + case addr_showwatch: showwatch(); break; + case addr_gettime: gettime(); break; + case addr_zoomicon: zoomicon(); break; + case addr_showblink: showblink(); break; + case addr_dumpblink: dumpblink(); break; + case addr_worktoscreenm: worktoscreenm(); break; + case addr_blank: blank(); break; + case addr_allpointer: allpointer(); break; + case addr_hangonp: hangonp(); break; + case addr_hangonw: hangonw(); break; + case addr_hangoncurs: hangoncurs(); break; + case addr_getunderzoom: getunderzoom(); break; + case addr_dumpzoom: dumpzoom(); break; + case addr_putunderzoom: putunderzoom(); break; + case addr_crosshair: crosshair(); break; + case addr_showpointer: showpointer(); break; + case addr_delpointer: delpointer(); break; + case addr_dumppointer: dumppointer(); break; + case addr_undertextline: undertextline(); break; + case addr_deltextline: deltextline(); break; + case addr_animpointer: animpointer(); break; + case addr_setmouse: setmouse(); break; + case addr_readmouse: readmouse(); break; + case addr_mousecall: mousecall(); break; + case addr_readmouse1: readmouse1(); break; + case addr_readmouse2: readmouse2(); break; + case addr_readmouse3: readmouse3(); break; + case addr_readmouse4: readmouse4(); break; + case addr_readkey: readkey(); break; + case addr_randomnum1: randomnum1(); break; + case addr_randomnum2: randomnum2(); break; + case addr_hangon: hangon(); break; + case addr_loadtraveltext: loadtraveltext(); break; + case addr_loadintotemp: loadintotemp(); break; + case addr_loadintotemp2: loadintotemp2(); break; + case addr_loadintotemp3: loadintotemp3(); break; + case addr_loadtempcharset: loadtempcharset(); break; + case addr_standardload: standardload(); break; + case addr_loadtemptext: loadtemptext(); break; + case addr_loadroom: loadroom(); break; + case addr_loadroomssample: loadroomssample(); break; + case addr_getridofreels: getridofreels(); break; + case addr_getridofall: getridofall(); break; + case addr_restorereels: restorereels(); break; + case addr_restoreall: restoreall(); break; + case addr_sortoutmap: sortoutmap(); break; + case addr_startloading: startloading(); break; + case addr_disablepath: disablepath(); break; + case addr_findxyfrompath: findxyfrompath(); break; + case addr_findroominloc: findroominloc(); break; + case addr_getroomdata: getroomdata(); break; + case addr_readheader: readheader(); break; + case addr_dontloadseg: dontloadseg(); break; + case addr_allocateload: allocateload(); break; + case addr_fillspace: fillspace(); break; + case addr_getridoftemp: getridoftemp(); break; + case addr_getridoftemptext: getridoftemptext(); break; + case addr_getridoftemp2: getridoftemp2(); break; + case addr_getridoftemp3: getridoftemp3(); break; + case addr_getridoftempcharset: getridoftempcharset(); break; + case addr_getridoftempsp: getridoftempsp(); break; + case addr_readsetdata: readsetdata(); break; + case addr_createfile: createfile(); break; + case addr_openfile: openfile(); break; + case addr_openfilefromc: openfilefromc(); break; + case addr_makename: makename(); break; + case addr_openfilenocheck: openfilenocheck(); break; + case addr_openforsave: openforsave(); break; + case addr_closefile: closefile(); break; + case addr_readfromfile: readfromfile(); break; + case addr_setkeyboardint: setkeyboardint(); break; + case addr_resetkeyboard: resetkeyboard(); break; + case addr_keyboardread: keyboardread(); break; + case addr_walkandexamine: walkandexamine(); break; + case addr_doload: doload(); break; + case addr_generalerror: generalerror(); break; default: ::error("invalid call to %04x dispatched", (uint16)ax); } } diff --git a/engines/dreamweb/dreamgen.h b/engines/dreamweb/dreamgen.h index 71c466da24..c2aa204942 100644 --- a/engines/dreamweb/dreamgen.h +++ b/engines/dreamweb/dreamgen.h @@ -3,16 +3,753 @@ /* PLEASE DO NOT MODIFY THIS FILE. ALL CHANGES WILL BE LOST! LOOK FOR README FOR DETAILS */ +/* ScummVM - Graphic Adventure Engine + * + * ScummVM is the legal property of its developers, whose names + * are too numerous to list here. Please refer to the COPYRIGHT + * file distributed with this source distribution. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ + + + #include "dreamweb/runtime.h" namespace DreamGen { - +#include "structs.h" class DreamGenContext : public Context { public: void __start(); void __dispatch_call(uint16 addr); +#include "stubs.h" // Allow hand-reversed functions to have a signature different than void f() + static const uint16 addr_dreamweb = 0xc948; + static const uint16 addr_keyboardread = 0xcbb4; + static const uint16 addr_resetkeyboard = 0xcbb0; + static const uint16 addr_setkeyboardint = 0xcbac; + static const uint16 addr_readfromfile = 0xcba8; + static const uint16 addr_closefile = 0xcba4; + static const uint16 addr_openforsave = 0xcba0; + static const uint16 addr_openfilenocheck = 0xcb9c; + static const uint16 addr_makename = 0xcb98; + static const uint16 addr_openfilefromc = 0xcb94; + static const uint16 addr_openfile = 0xcb90; + static const uint16 addr_createfile = 0xcb8c; + static const uint16 addr_readsetdata = 0xcb88; + static const uint16 addr_getridoftempsp = 0xcb84; + static const uint16 addr_getridoftempcharset = 0xcb80; + static const uint16 addr_getridoftemp3 = 0xcb7c; + static const uint16 addr_getridoftemp2 = 0xcb78; + static const uint16 addr_getridoftemptext = 0xcb74; + static const uint16 addr_getridoftemp = 0xcb70; + static const uint16 addr_fillspace = 0xcb6c; + static const uint16 addr_allocateload = 0xcb68; + static const uint16 addr_dontloadseg = 0xcb64; + static const uint16 addr_readheader = 0xcb60; + static const uint16 addr_getroomdata = 0xcb5c; + static const uint16 addr_findroominloc = 0xcb58; + static const uint16 addr_findxyfrompath = 0xcb54; + static const uint16 addr_disablepath = 0xcb50; + static const uint16 addr_startloading = 0xcb4c; + static const uint16 addr_sortoutmap = 0xcb48; + static const uint16 addr_restoreall = 0xcb44; + static const uint16 addr_restorereels = 0xcb40; + static const uint16 addr_getridofall = 0xcb3c; + static const uint16 addr_getridofreels = 0xcb38; + static const uint16 addr_loadroomssample = 0xcb34; + static const uint16 addr_loadroom = 0xcb30; + static const uint16 addr_loadtemptext = 0xcb2c; + static const uint16 addr_standardload = 0xcb28; + static const uint16 addr_loadtempcharset = 0xcb24; + static const uint16 addr_loadintotemp3 = 0xcb20; + static const uint16 addr_loadintotemp2 = 0xcb1c; + static const uint16 addr_loadintotemp = 0xcb18; + static const uint16 addr_loadtraveltext = 0xcb14; + static const uint16 addr_hangon = 0xcb10; + static const uint16 addr_randomnum2 = 0xcb08; + static const uint16 addr_randomnum1 = 0xcb04; + static const uint16 addr_readkey = 0xcafc; + static const uint16 addr_readmouse4 = 0xcaf8; + static const uint16 addr_readmouse3 = 0xcaf4; + static const uint16 addr_readmouse2 = 0xcaf0; + static const uint16 addr_readmouse1 = 0xcaec; + static const uint16 addr_mousecall = 0xcae8; + static const uint16 addr_readmouse = 0xcae4; + static const uint16 addr_setmouse = 0xcae0; + static const uint16 addr_animpointer = 0xcadc; + static const uint16 addr_deltextline = 0xcad4; + static const uint16 addr_undertextline = 0xcad0; + static const uint16 addr_dumppointer = 0xcacc; + static const uint16 addr_delpointer = 0xcac8; + static const uint16 addr_showpointer = 0xcac4; + static const uint16 addr_crosshair = 0xcac0; + static const uint16 addr_putunderzoom = 0xcabc; + static const uint16 addr_dumpzoom = 0xcab8; + static const uint16 addr_getunderzoom = 0xcab4; + static const uint16 addr_hangoncurs = 0xcab0; + static const uint16 addr_hangonw = 0xcaac; + static const uint16 addr_hangonp = 0xcaa8; + static const uint16 addr_allpointer = 0xcaa4; + static const uint16 addr_blank = 0xcaa0; + static const uint16 addr_worktoscreenm = 0xca9c; + static const uint16 addr_dumpblink = 0xca98; + static const uint16 addr_showblink = 0xca94; + static const uint16 addr_zoomicon = 0xca90; + static const uint16 addr_gettime = 0xca8c; + static const uint16 addr_showwatch = 0xca88; + static const uint16 addr_panelicons1 = 0xca84; + static const uint16 addr_showexit = 0xca80; + static const uint16 addr_usetempcharset = 0xca7c; + static const uint16 addr_usecharset1 = 0xca78; + static const uint16 addr_roomname = 0xca74; + static const uint16 addr_showpanel = 0xca70; + static const uint16 addr_showman = 0xca6c; + static const uint16 addr_middlepanel = 0xca68; + static const uint16 addr_showicon = 0xca64; + static const uint16 addr_findobname = 0xca60; + static const uint16 addr_copyname = 0xca5c; + static const uint16 addr_getroomspaths = 0xca58; + static const uint16 addr_workoutframes = 0xca54; + static const uint16 addr_bresenhams = 0xca50; + static const uint16 addr_checkdest = 0xca4c; + static const uint16 addr_autosetwalk = 0xca48; + static const uint16 addr_setwalk = 0xca44; + static const uint16 addr_getflagunderp = 0xca40; + static const uint16 addr_walktotext = 0xca3c; + static const uint16 addr_personnametext = 0xca38; + static const uint16 addr_blocknametext = 0xca34; + static const uint16 addr_printmessage2 = 0xca30; + static const uint16 addr_printmessage = 0xca2c; + static const uint16 addr_commandonly = 0xca28; + static const uint16 addr_commandwithob = 0xca24; + static const uint16 addr_examineobtext = 0xca20; + static const uint16 addr_finishedwalking = 0xca1c; + static const uint16 addr_obname = 0xca18; + static const uint16 addr_afterintroroom = 0xca14; + static const uint16 addr_walkintoroom = 0xca10; + static const uint16 addr_atmospheres = 0xca0c; + static const uint16 addr_afternewroom = 0xca08; + static const uint16 addr_checkifpathison = 0xca04; + static const uint16 addr_turnanypathoff = 0xca00; + static const uint16 addr_turnanypathon = 0xc9fc; + static const uint16 addr_turnpathoff = 0xc9f8; + static const uint16 addr_turnpathon = 0xc9f4; + static const uint16 addr_findfirstpath = 0xc9f0; + static const uint16 addr_findpathofpoint = 0xc9ec; + static const uint16 addr_isitdescribed = 0xc9e8; + static const uint16 addr_checkiffree = 0xc9e4; + static const uint16 addr_checkifex = 0xc9e0; + static const uint16 addr_checkifset = 0xc9dc; + static const uint16 addr_checkifperson = 0xc9d8; + static const uint16 addr_identifyob = 0xc9d4; + static const uint16 addr_checkcoords = 0xc9d0; + static const uint16 addr_madmanrun = 0xc9cc; + static const uint16 addr_mainscreen = 0xc9c8; + static const uint16 addr_walkandexamine = 0xcbb8; + static const uint16 addr_convnum = 0xc9c4; + static const uint16 addr_showword = 0xc9c0; + static const uint16 addr_twodigitnum = 0xc9bc; + static const uint16 addr_onedigit = 0xc9b8; + static const uint16 addr_showbyte = 0xc9b4; + static const uint16 addr_dumpwatch = 0xc9b0; + static const uint16 addr_showtime = 0xc9ac; + static const uint16 addr_watchcount = 0xc9a8; + static const uint16 addr_checkforshake = 0xc9a4; + static const uint16 addr_watchreel = 0xc9a0; + static const uint16 addr_screenupdate = 0xc99c; + static const uint16 addr_startup1 = 0xc998; + static const uint16 addr_startup = 0xc994; + static const uint16 addr_parseblaster = 0xc990; + static const uint16 addr_allocatemem = 0xc988; + static const uint16 addr_deallocatemem = 0xc984; + static const uint16 addr_clearrest = 0xc980; + static const uint16 addr_clearreels = 0xc97c; + static const uint16 addr_clearbeforeload = 0xc978; + static const uint16 addr_clearchanges = 0xc974; + static const uint16 addr_clearbuffers = 0xc970; + static const uint16 addr_allocatebuffers = 0xc96c; + static const uint16 addr_checkbasemem = 0xc968; + static const uint16 addr_checkforemm = 0xc964; + static const uint16 addr_removeemm = 0xc960; + static const uint16 addr_setupemm = 0xc95c; + static const uint16 addr_pickupob = 0xc958; + static const uint16 addr_initialinv = 0xc954; + static const uint16 addr_entryanims = 0xc950; + static const uint16 addr_entrytexts = 0xc94c; + static const uint16 addr_pitinterupt = 0xc944; + static const uint16 addr_getridofpit = 0xc940; + static const uint16 addr_setuppit = 0xc93c; + static const uint16 addr_startdmablock = 0xc938; + static const uint16 addr_dmaend = 0xc934; + static const uint16 addr_domix = 0xc930; + static const uint16 addr_restoreems = 0xc92c; + static const uint16 addr_saveems = 0xc928; + static const uint16 addr_bothchannels = 0xc924; + static const uint16 addr_channel0tran = 0xc920; + static const uint16 addr_channel1only = 0xc91c; + static const uint16 addr_channel0only = 0xc918; + static const uint16 addr_loopchannel0 = 0xc90c; + static const uint16 addr_volumeadjust = 0xc908; + static const uint16 addr_makenextblock = 0xc904; + static const uint16 addr_playchannel1 = 0xc900; + static const uint16 addr_playchannel0 = 0xc8fc; + static const uint16 addr_out22c = 0xc8f8; + static const uint16 addr_soundend = 0xc8f4; + static const uint16 addr_interupttest = 0xc8f0; + static const uint16 addr_disablesoundint = 0xc8ec; + static const uint16 addr_enablesoundint = 0xc8e8; + static const uint16 addr_checksoundint = 0xc8e4; + static const uint16 addr_setsoundoff = 0xc8e0; + static const uint16 addr_trysoundalloc = 0xc8dc; + static const uint16 addr_soundstartup = 0xc8d8; + static const uint16 addr_loadsecondsample = 0xc8d4; + static const uint16 addr_loadsample = 0xc8d0; + static const uint16 addr_createname = 0xc8cc; + static const uint16 addr_loadspeech = 0xc8c8; + static const uint16 addr_loadold = 0xc8c4; + static const uint16 addr_doload = 0xcbbc; + static const uint16 addr_newgame = 0xc8c0; + static const uint16 addr_showdecisions = 0xc8bc; + static const uint16 addr_decide = 0xc8b8; + static const uint16 addr_scanfornames = 0xc8b4; + static const uint16 addr_findlen = 0xc8b0; + static const uint16 addr_saveseg = 0xc8ac; + static const uint16 addr_storeit = 0xc8a8; + static const uint16 addr_makeheader = 0xc8a4; + static const uint16 addr_loadseg = 0xc8a0; + static const uint16 addr_loadposition = 0xc89c; + static const uint16 addr_saveposition = 0xc898; + static const uint16 addr_savefileread = 0xc894; + static const uint16 addr_savefilewrite = 0xc890; + static const uint16 addr_oldtonames = 0xc88c; + static const uint16 addr_namestoold = 0xc888; + static const uint16 addr_error = 0xc884; + static const uint16 addr_generalerror = 0xcbc0; + static const uint16 addr_dosreturn = 0xc880; + static const uint16 addr_shownames = 0xc87c; + static const uint16 addr_showslots = 0xc878; + static const uint16 addr_selectslot = 0xc874; + static const uint16 addr_showsaveops = 0xc870; + static const uint16 addr_showloadops = 0xc86c; + static const uint16 addr_showopbox = 0xc868; + static const uint16 addr_getnamepos = 0xc864; + static const uint16 addr_checkinput = 0xc860; + static const uint16 addr_selectslot2 = 0xc85c; + static const uint16 addr_actualload = 0xc858; + static const uint16 addr_actualsave = 0xc854; + static const uint16 addr_savegame = 0xc850; + static const uint16 addr_discops = 0xc84c; + static const uint16 addr_getbacktoops = 0xc848; + static const uint16 addr_loadgame = 0xc844; + static const uint16 addr_loadsavebox = 0xc840; + static const uint16 addr_showdiscops = 0xc83c; + static const uint16 addr_showmainops = 0xc838; + static const uint16 addr_getbackfromops = 0xc834; + static const uint16 addr_dosaveload = 0xc830; + static const uint16 addr_saveload = 0xc82c; + static const uint16 addr_zoomonoff = 0xc828; + static const uint16 addr_findtext1 = 0xc824; + static const uint16 addr_showdiarypage = 0xc820; + static const uint16 addr_diarykeyn = 0xc81c; + static const uint16 addr_diarykeyp = 0xc818; + static const uint16 addr_dumpdiarykeys = 0xc814; + static const uint16 addr_showdiarykeys = 0xc810; + static const uint16 addr_showdiary = 0xc80c; + static const uint16 addr_usediary = 0xc808; + static const uint16 addr_dumpsymbox = 0xc804; + static const uint16 addr_updatesymbolbot = 0xc800; + static const uint16 addr_updatesymboltop = 0xc7fc; + static const uint16 addr_nextsymbol = 0xc7f8; + static const uint16 addr_showsymbol = 0xc7f4; + static const uint16 addr_dumpsymbol = 0xc7f0; + static const uint16 addr_setbotright = 0xc7ec; + static const uint16 addr_setbotleft = 0xc7e8; + static const uint16 addr_settopright = 0xc7e4; + static const uint16 addr_settopleft = 0xc7e0; + static const uint16 addr_quitsymbol = 0xc7dc; + static const uint16 addr_entersymbol = 0xc7d8; + static const uint16 addr_showrightpage = 0xc7d4; + static const uint16 addr_showleftpage = 0xc7d0; + static const uint16 addr_folderexit = 0xc7cc; + static const uint16 addr_showfolder = 0xc7c8; + static const uint16 addr_loadfolder = 0xc7c4; + static const uint16 addr_lastfolder = 0xc7c0; + static const uint16 addr_folderhints = 0xc7bc; + static const uint16 addr_nextfolder = 0xc7b8; + static const uint16 addr_viewfolder = 0xc7b4; + static const uint16 addr_loadmenu = 0xc7b0; + static const uint16 addr_showmenu = 0xc7ac; + static const uint16 addr_showoutermenu = 0xc7a8; + static const uint16 addr_putundermenu = 0xc7a4; + static const uint16 addr_getundermenu = 0xc7a0; + static const uint16 addr_dumpmenu = 0xc79c; + static const uint16 addr_usemenu = 0xc798; + static const uint16 addr_dumpkeypad = 0xc794; + static const uint16 addr_singlekey = 0xc790; + static const uint16 addr_showkeypad = 0xc78c; + static const uint16 addr_showouterpad = 0xc788; + static const uint16 addr_buttonpress = 0xc784; + static const uint16 addr_buttonenter = 0xc780; + static const uint16 addr_buttonnought = 0xc77c; + static const uint16 addr_buttonnine = 0xc778; + static const uint16 addr_buttoneight = 0xc774; + static const uint16 addr_buttonseven = 0xc770; + static const uint16 addr_buttonsix = 0xc76c; + static const uint16 addr_buttonfive = 0xc768; + static const uint16 addr_buttonfour = 0xc764; + static const uint16 addr_buttonthree = 0xc760; + static const uint16 addr_buttontwo = 0xc75c; + static const uint16 addr_buttonone = 0xc758; + static const uint16 addr_addtopresslist = 0xc754; + static const uint16 addr_quitkey = 0xc750; + static const uint16 addr_loadkeypad = 0xc74c; + static const uint16 addr_entercode = 0xc748; + static const uint16 addr_usewinch = 0xc744; + static const uint16 addr_useplate = 0xc740; + static const uint16 addr_usebuttona = 0xc73c; + static const uint16 addr_useshield = 0xc738; + static const uint16 addr_usegun = 0xc734; + static const uint16 addr_usechurchgate = 0xc730; + static const uint16 addr_usewall = 0xc72c; + static const uint16 addr_edenscdplayer = 0xc728; + static const uint16 addr_setuptimedtemp = 0xc720; + static const uint16 addr_setuptimeduse = 0xc71c; + static const uint16 addr_dumptimedtext = 0xc718; + static const uint16 addr_autoappear = 0xc70c; + static const uint16 addr_dochange = 0xc708; + static const uint16 addr_setallchanges = 0xc704; + static const uint16 addr_switchryanoff = 0xc700; + static const uint16 addr_switchryanon = 0xc6fc; + static const uint16 addr_findormake = 0xc6f8; + static const uint16 addr_removefreeobject = 0xc6f4; + static const uint16 addr_placefreeobject = 0xc6f0; + static const uint16 addr_issetobonmap = 0xc6ec; + static const uint16 addr_removesetobject = 0xc6e8; + static const uint16 addr_placesetobject = 0xc6e4; + static const uint16 addr_findpuztext = 0xc6e0; + static const uint16 addr_showpuztext = 0xc6dc; + static const uint16 addr_putbackobstuff = 0xc6d8; + static const uint16 addr_usetext = 0xc6d4; + static const uint16 addr_checkinside = 0xc6d0; + static const uint16 addr_isryanholding = 0xc6cc; + static const uint16 addr_findexobject = 0xc6c8; + static const uint16 addr_findsetobject = 0xc6c4; + static const uint16 addr_compare = 0xc6c0; + static const uint16 addr_selectob = 0xc6bc; + static const uint16 addr_withwhat = 0xc6b8; + static const uint16 addr_useelvdoor = 0xc6b4; + static const uint16 addr_useaxe = 0xc6b0; + static const uint16 addr_usecooker = 0xc6ac; + static const uint16 addr_usestereo = 0xc6a8; + static const uint16 addr_usekey = 0xc6a4; + static const uint16 addr_useelevator5 = 0xc6a0; + static const uint16 addr_useelevator2 = 0xc69c; + static const uint16 addr_useelevator4 = 0xc698; + static const uint16 addr_useelevator3 = 0xc694; + static const uint16 addr_showfirstuse = 0xc690; + static const uint16 addr_useelevator1 = 0xc68c; + static const uint16 addr_usehandle = 0xc688; + static const uint16 addr_usewire = 0xc684; + static const uint16 addr_usehatch = 0xc680; + static const uint16 addr_usecontrol = 0xc67c; + static const uint16 addr_moneypoke = 0xc678; + static const uint16 addr_lookatcard = 0xc674; + static const uint16 addr_usecashcard = 0xc670; + static const uint16 addr_usecardreader3 = 0xc66c; + static const uint16 addr_usecardreader2 = 0xc668; + static const uint16 addr_usecardreader1 = 0xc664; + static const uint16 addr_showseconduse = 0xc660; + static const uint16 addr_uselighter = 0xc65c; + static const uint16 addr_usepoolreader = 0xc658; + static const uint16 addr_calledensdlift = 0xc654; + static const uint16 addr_calledenslift = 0xc650; + static const uint16 addr_callhotellift = 0xc64c; + static const uint16 addr_trapdoor = 0xc648; + static const uint16 addr_grafittidoor = 0xc644; + static const uint16 addr_openhoteldoor2 = 0xc640; + static const uint16 addr_openhoteldoor = 0xc63c; + static const uint16 addr_drawitall = 0xc638; + static const uint16 addr_isitright = 0xc634; + static const uint16 addr_opensarters = 0xc630; + static const uint16 addr_openeden = 0xc62c; + static const uint16 addr_openpoolboss = 0xc628; + static const uint16 addr_openryan = 0xc624; + static const uint16 addr_usebalcony = 0xc620; + static const uint16 addr_usewindow = 0xc61c; + static const uint16 addr_openyourneighbour = 0xc618; + static const uint16 addr_nextcolon = 0xc614; + static const uint16 addr_openlouis = 0xc610; + static const uint16 addr_usedryer = 0xc60c; + static const uint16 addr_opentvdoor = 0xc608; + static const uint16 addr_usealtar = 0xc604; + static const uint16 addr_usehole = 0xc600; + static const uint16 addr_usechurchhole = 0xc5fc; + static const uint16 addr_sitdowninbar = 0xc5f8; + static const uint16 addr_wearshades = 0xc5f4; + static const uint16 addr_wearwatch = 0xc5f0; + static const uint16 addr_useopenbox = 0xc5ec; + static const uint16 addr_userailing = 0xc5e8; + static const uint16 addr_usecoveredbox = 0xc5e4; + static const uint16 addr_useclearbox = 0xc5e0; + static const uint16 addr_usecart = 0xc5dc; + static const uint16 addr_useslab = 0xc5d8; + static const uint16 addr_slabdoorf = 0xc5d4; + static const uint16 addr_slabdoore = 0xc5d0; + static const uint16 addr_slabdoorc = 0xc5cc; + static const uint16 addr_slabdoord = 0xc5c8; + static const uint16 addr_slabdoorb = 0xc5c4; + static const uint16 addr_slabdoora = 0xc5c0; + static const uint16 addr_useladderb = 0xc5bc; + static const uint16 addr_useladder = 0xc5b8; + static const uint16 addr_chewy = 0xc5b4; + static const uint16 addr_useplinth = 0xc5b0; + static const uint16 addr_usefullcart = 0xc5ac; + static const uint16 addr_usepipe = 0xc5a8; + static const uint16 addr_nothelderror = 0xc5a4; + static const uint16 addr_usetrainer = 0xc5a0; + static const uint16 addr_opentomb = 0xc59c; + static const uint16 addr_hotelbell = 0xc598; + static const uint16 addr_hotelcontrol = 0xc594; + static const uint16 addr_playguitar = 0xc590; + static const uint16 addr_runtap = 0xc58c; + static const uint16 addr_wheelsound = 0xc588; + static const uint16 addr_useroutine = 0xc584; + static const uint16 addr_useobject = 0xc580; + static const uint16 addr_delcurs = 0xc57c; + static const uint16 addr_printcurs = 0xc578; + static const uint16 addr_triggermessage = 0xc574; + static const uint16 addr_processtrigger = 0xc570; + static const uint16 addr_monmessage = 0xc56c; + static const uint16 addr_showcurrentfile = 0xc568; + static const uint16 addr_printlogo = 0xc564; + static const uint16 addr_monitorlogo = 0xc560; + static const uint16 addr_scrollmonitor = 0xc558; + static const uint16 addr_parser = 0xc554; + static const uint16 addr_searchforstring = 0xc550; + static const uint16 addr_getkeyandlogo = 0xc54c; + static const uint16 addr_dirfile = 0xc548; + static const uint16 addr_read = 0xc544; + static const uint16 addr_showkeys = 0xc540; + static const uint16 addr_signon = 0xc53c; + static const uint16 addr_searchforfiles = 0xc538; + static const uint16 addr_dircom = 0xc534; + static const uint16 addr_neterror = 0xc530; + static const uint16 addr_execcommand = 0xc52c; + static const uint16 addr_delchar = 0xc528; + static const uint16 addr_makecaps = 0xc524; + static const uint16 addr_input = 0xc520; + static const uint16 addr_locklightoff = 0xc51c; + static const uint16 addr_locklighton = 0xc518; + static const uint16 addr_accesslightoff = 0xc514; + static const uint16 addr_accesslighton = 0xc510; + static const uint16 addr_powerlightoff = 0xc50c; + static const uint16 addr_powerlighton = 0xc508; + static const uint16 addr_randomaccess = 0xc504; + static const uint16 addr_turnonpower = 0xc500; + static const uint16 addr_lookininterface = 0xc4fc; + static const uint16 addr_loadcart = 0xc4f8; + static const uint16 addr_loadnews = 0xc4f4; + static const uint16 addr_loadpersonal = 0xc4f0; + static const uint16 addr_printoutermon = 0xc4ec; + static const uint16 addr_usemon = 0xc4e8; + static const uint16 addr_readcitypic = 0xc4e4; + static const uint16 addr_readdesticon = 0xc4e0; + static const uint16 addr_resetlocation = 0xc4dc; + static const uint16 addr_setlocation = 0xc4d8; + static const uint16 addr_getlocation = 0xc4d4; + static const uint16 addr_destselect = 0xc4d0; + static const uint16 addr_lastdest = 0xc4cc; + static const uint16 addr_nextdest = 0xc4c8; + static const uint16 addr_showarrows = 0xc4c4; + static const uint16 addr_getdestinfo = 0xc4c0; + static const uint16 addr_locationpic = 0xc4bc; + static const uint16 addr_putundercentre = 0xc4b8; + static const uint16 addr_getundercentre = 0xc4b4; + static const uint16 addr_lookatplace = 0xc4b0; + static const uint16 addr_showcity = 0xc4ac; + static const uint16 addr_selectlocation = 0xc4a8; + static const uint16 addr_newplace = 0xc4a4; + static const uint16 addr_redes = 0xc4a0; + static const uint16 addr_hangonpq = 0xc49c; + static const uint16 addr_dosometalk = 0xc498; + static const uint16 addr_moretalk = 0xc494; + static const uint16 addr_getpersontext = 0xc490; + static const uint16 addr_starttalk = 0xc48c; + static const uint16 addr_getpersframe = 0xc488; + static const uint16 addr_convicons = 0xc484; + static const uint16 addr_talk = 0xc480; + static const uint16 addr_getback1 = 0xc47c; + static const uint16 addr_redrawmainscrn = 0xc478; + static const uint16 addr_dolook = 0xc474; + static const uint16 addr_look = 0xc470; + static const uint16 addr_autolook = 0xc46c; + static const uint16 addr_getyad = 0xc468; + static const uint16 addr_getxad = 0xc464; + static const uint16 addr_getmapad = 0xc460; + static const uint16 addr_adjustlen = 0xc45c; + static const uint16 addr_finalframe = 0xc458; + static const uint16 addr_calcfrframe = 0xc454; + static const uint16 addr_showallex = 0xc450; + static const uint16 addr_showallfree = 0xc44c; + static const uint16 addr_makebackob = 0xc448; + static const uint16 addr_showallobs = 0xc444; + static const uint16 addr_drawflags = 0xc43c; + static const uint16 addr_addlength = 0xc438; + static const uint16 addr_addalong = 0xc434; + static const uint16 addr_getdimension = 0xc430; + static const uint16 addr_calcmapad = 0xc42c; + static const uint16 addr_drawfloor = 0xc428; + static const uint16 addr_blockget = 0xc424; + static const uint16 addr_deleteextext = 0xc420; + static const uint16 addr_deleteexframe = 0xc41c; + static const uint16 addr_deleteexobject = 0xc418; + static const uint16 addr_purgeanitem = 0xc414; + static const uint16 addr_emergencypurge = 0xc410; + static const uint16 addr_purgealocation = 0xc40c; + static const uint16 addr_getexpos = 0xc408; + static const uint16 addr_transfertext = 0xc404; + static const uint16 addr_transfercontoex = 0xc400; + static const uint16 addr_pickupconts = 0xc3fc; + static const uint16 addr_transfertoex = 0xc3f8; + static const uint16 addr_outofopen = 0xc3f4; + static const uint16 addr_checkobjectsize = 0xc3f0; + static const uint16 addr_errormessage3 = 0xc3ec; + static const uint16 addr_errormessage2 = 0xc3e8; + static const uint16 addr_errormessage1 = 0xc3e4; + static const uint16 addr_useopened = 0xc3e0; + static const uint16 addr_selectopenob = 0xc3dc; + static const uint16 addr_removeobfrominv = 0xc3d8; + static const uint16 addr_wornerror = 0xc3d4; + static const uint16 addr_cantdrop = 0xc3d0; + static const uint16 addr_droperror = 0xc3cc; + static const uint16 addr_dropobject = 0xc3c8; + static const uint16 addr_findopenpos = 0xc3c4; + static const uint16 addr_findinvpos = 0xc3c0; + static const uint16 addr_getsetad = 0xc3bc; + static const uint16 addr_getopenedsize = 0xc3b8; + static const uint16 addr_getanyaddir = 0xc3b4; + static const uint16 addr_getanyad = 0xc3b0; + static const uint16 addr_geteitherad = 0xc3ac; + static const uint16 addr_getexad = 0xc3a8; + static const uint16 addr_getfreead = 0xc3a4; + static const uint16 addr_outofinv = 0xc3a0; + static const uint16 addr_deletetaken = 0xc39c; + static const uint16 addr_intoinv = 0xc398; + static const uint16 addr_swapwithopen = 0xc394; + static const uint16 addr_swapwithinv = 0xc390; + static const uint16 addr_reexfromopen = 0xc38c; + static const uint16 addr_reexfrominv = 0xc388; + static const uint16 addr_examinventory = 0xc384; + static const uint16 addr_setpickup = 0xc380; + static const uint16 addr_inventory = 0xc37c; + static const uint16 addr_findnextcolon = 0xc378; + static const uint16 addr_searchforsame = 0xc374; + static const uint16 addr_getobtextstart = 0xc370; + static const uint16 addr_obsthatdothings = 0xc36c; + static const uint16 addr_additionaltext = 0xc368; + static const uint16 addr_describeob = 0xc364; + static const uint16 addr_obpicture = 0xc360; + static const uint16 addr_examicon = 0xc35c; + static const uint16 addr_obicons = 0xc358; + static const uint16 addr_openob = 0xc354; + static const uint16 addr_showryanpage = 0xc350; + static const uint16 addr_openinv = 0xc34c; + static const uint16 addr_incryanpage = 0xc348; + static const uint16 addr_getbackfromob = 0xc344; + static const uint16 addr_makemainscreen = 0xc340; + static const uint16 addr_examineob = 0xc33c; + static const uint16 addr_makeworn = 0xc338; + static const uint16 addr_isitworn = 0xc334; + static const uint16 addr_obtoinv = 0xc330; + static const uint16 addr_findallopen = 0xc32c; + static const uint16 addr_findallryan = 0xc328; + static const uint16 addr_fillopen = 0xc324; + static const uint16 addr_fillryan = 0xc320; + static const uint16 addr_monprint = 0xc314; + static const uint16 addr_waitframes = 0xc308; + static const uint16 addr_realcredits = 0xc2f8; + static const uint16 addr_set16colpalette = 0xc2f4; + static const uint16 addr_mode640x480 = 0xc2f0; + static const uint16 addr_loadintroroom = 0xc2ec; + static const uint16 addr_runendseq = 0xc2e8; + static const uint16 addr_runintroseq = 0xc2e4; + static const uint16 addr_intro = 0xc2e0; + static const uint16 addr_hangone = 0xc2dc; + static const uint16 addr_biblequote = 0xc2d8; + static const uint16 addr_credits = 0xc2d4; + static const uint16 addr_gettingshot = 0xc2d0; + static const uint16 addr_showmonk = 0xc2cc; + static const uint16 addr_monkspeaking = 0xc2c8; + static const uint16 addr_endgame = 0xc2c4; + static const uint16 addr_titles = 0xc2c0; + static const uint16 addr_initialmoncols = 0xc2bc; + static const uint16 addr_fadeupyellows = 0xc2b8; + static const uint16 addr_fadeupmonfirst = 0xc2b4; + static const uint16 addr_fadeupmon = 0xc2b0; + static const uint16 addr_fadedownmon = 0xc2ac; + static const uint16 addr_dumpcurrent = 0xc2a8; + static const uint16 addr_allpalette = 0xc2a4; + static const uint16 addr_paltoendpal = 0xc2a0; + static const uint16 addr_startpaltoend = 0xc29c; + static const uint16 addr_endpaltostart = 0xc298; + static const uint16 addr_paltostartpal = 0xc294; + static const uint16 addr_showgroup = 0xc290; + static const uint16 addr_greyscalesum = 0xc28c; + static const uint16 addr_fadecalculation = 0xc288; + static const uint16 addr_rollem = 0xc284; + static const uint16 addr_rollendcredits2 = 0xc280; + static const uint16 addr_showgun = 0xc27c; + static const uint16 addr_clearstartpal = 0xc278; + static const uint16 addr_fadescreendowns = 0xc274; + static const uint16 addr_fadescreendown = 0xc270; + static const uint16 addr_fadescreenuphalf = 0xc26c; + static const uint16 addr_fadescreendownhalf = 0xc268; + static const uint16 addr_fadescreenups = 0xc264; + static const uint16 addr_fadefromwhite = 0xc260; + static const uint16 addr_fadetowhite = 0xc25c; + static const uint16 addr_fadescreenup = 0xc258; + static const uint16 addr_clearpalette = 0xc254; + static const uint16 addr_clearendpal = 0xc250; + static const uint16 addr_dofade = 0xc24c; + static const uint16 addr_fadedos = 0xc248; + static const uint16 addr_transfermap = 0xc244; + static const uint16 addr_transferinv = 0xc240; + static const uint16 addr_doblocks = 0xc228; + static const uint16 addr_delthisone = 0xc214; + static const uint16 addr_zoom = 0xc210; + static const uint16 addr_doshake = 0xc20c; + static const uint16 addr_vsync = 0xc208; + static const uint16 addr_clearwork = 0xc204; + static const uint16 addr_createpanel2 = 0xc200; + static const uint16 addr_createpanel = 0xc1fc; + static const uint16 addr_pixelcheckset = 0xc1f8; + static const uint16 addr_dumpmap = 0xc1f4; + static const uint16 addr_maptopanel = 0xc1f0; + static const uint16 addr_paneltomap = 0xc1ec; + static const uint16 addr_setmode = 0xc1dc; + static const uint16 addr_loadpalfromiff = 0xc1d8; + static const uint16 addr_showpcx = 0xc1cc; + static const uint16 addr_allocatework = 0xc1c8; + static const uint16 addr_dumpeverything = 0xc1c4; + static const uint16 addr_deleverything = 0xc1c0; + static const uint16 addr_showreelframe = 0xc1bc; + static const uint16 addr_getreelstart = 0xc1b8; + static const uint16 addr_movemap = 0xc1b4; + static const uint16 addr_dealwithspecial = 0xc1b0; + static const uint16 addr_reconstruct = 0xc1ac; + static const uint16 addr_soundonreels = 0xc1a8; + static const uint16 addr_plotreel = 0xc1a4; + static const uint16 addr_reelsonscreen = 0xc1a0; + static const uint16 addr_getreelframeax = 0xc19c; + static const uint16 addr_updatepeople = 0xc198; + static const uint16 addr_lockeddoorway = 0xc194; + static const uint16 addr_widedoor = 0xc18c; + static const uint16 addr_doorway = 0xc188; + static const uint16 addr_constant = 0xc184; + static const uint16 addr_steady = 0xc180; + static const uint16 addr_random = 0xc17c; + static const uint16 addr_liftnoise = 0xc178; + static const uint16 addr_backobject = 0xc170; + static const uint16 addr_showrain = 0xc16c; + static const uint16 addr_getblockofpixel = 0xc168; + static const uint16 addr_splitintolines = 0xc164; + static const uint16 addr_initrain = 0xc160; + static const uint16 addr_reminders = 0xc15c; + static const uint16 addr_adjustright = 0xc158; + static const uint16 addr_adjustleft = 0xc154; + static const uint16 addr_adjustup = 0xc150; + static const uint16 addr_adjustdown = 0xc14c; + static const uint16 addr_checkforexit = 0xc148; + static const uint16 addr_facerightway = 0xc144; + static const uint16 addr_aboutturn = 0xc13c; + static const uint16 addr_mainman = 0xc138; + static const uint16 addr_findsource = 0xc130; + static const uint16 addr_checkone = 0xc12c; + static const uint16 addr_delsprite = 0xc11c; + static const uint16 addr_checkspeed = 0xc110; + static const uint16 addr_showgamereel = 0xc10c; + static const uint16 addr_addtopeoplelist = 0xc108; + static const uint16 addr_train = 0xc104; + static const uint16 addr_sparky = 0xc100; + static const uint16 addr_copper = 0xc0fc; + static const uint16 addr_advisor = 0xc0f8; + static const uint16 addr_drunk = 0xc0f4; + static const uint16 addr_textformonk = 0xc0f0; + static const uint16 addr_textforend = 0xc0ec; + static const uint16 addr_priesttext = 0xc0e8; + static const uint16 addr_madmode = 0xc0e4; + static const uint16 addr_madmantext = 0xc0e0; + static const uint16 addr_madman = 0xc0dc; + static const uint16 addr_madmanstelly = 0xc0d8; + static const uint16 addr_priest = 0xc0d4; + static const uint16 addr_rollendcredits = 0xc0d0; + static const uint16 addr_endgameseq = 0xc0cc; + static const uint16 addr_monkandryan = 0xc0c8; + static const uint16 addr_intro3text = 0xc0c4; + static const uint16 addr_intro2text = 0xc0c0; + static const uint16 addr_intro1text = 0xc0bc; + static const uint16 addr_monks2text = 0xc0b8; + static const uint16 addr_handclap = 0xc0b4; + static const uint16 addr_intromonks2 = 0xc0b0; + static const uint16 addr_intromonks1 = 0xc0ac; + static const uint16 addr_intromagic3 = 0xc0a8; + static const uint16 addr_intromagic2 = 0xc0a4; + static const uint16 addr_gates = 0xc0a0; + static const uint16 addr_candles2 = 0xc09c; + static const uint16 addr_candles = 0xc098; + static const uint16 addr_intromagic1 = 0xc094; + static const uint16 addr_smallcandle = 0xc090; + static const uint16 addr_candles1 = 0xc08c; + static const uint16 addr_keeper = 0xc088; + static const uint16 addr_carparkdrip = 0xc084; + static const uint16 addr_sparkydrip = 0xc080; + static const uint16 addr_gamer = 0xc07c; + static const uint16 addr_bossman = 0xc078; + static const uint16 addr_heavy = 0xc074; + static const uint16 addr_security = 0xc070; + static const uint16 addr_poolguard = 0xc06c; + static const uint16 addr_businessman = 0xc068; + static const uint16 addr_aide = 0xc064; + static const uint16 addr_mugger = 0xc060; + static const uint16 addr_helicopter = 0xc05c; + static const uint16 addr_rockstar = 0xc058; + static const uint16 addr_soldier1 = 0xc054; + static const uint16 addr_interviewer = 0xc050; + static const uint16 addr_barwoman = 0xc04c; + static const uint16 addr_othersmoker = 0xc048; + static const uint16 addr_bartender = 0xc044; + static const uint16 addr_drinker = 0xc040; + static const uint16 addr_tattooman = 0xc03c; + static const uint16 addr_mansatstill = 0xc038; + static const uint16 addr_manasleep2 = 0xc034; + static const uint16 addr_louischair = 0xc030; + static const uint16 addr_louis = 0xc02c; + static const uint16 addr_femalefan = 0xc028; + static const uint16 addr_malefan = 0xc024; + static const uint16 addr_edeninbath = 0xc020; + static const uint16 addr_eden = 0xc01c; + static const uint16 addr_manasleep = 0xc018; + static const uint16 addr_attendant = 0xc014; + static const uint16 addr_smokebloke = 0xc010; + static const uint16 addr_receptionist = 0xc00c; + static const uint16 addr_foghornsound = 0xc008; + static const uint16 addr_intromusic = 0xc004; + static const uint16 addr_alleybarksound = 0xc000; const static uint16 kStartvars = 0; const static uint16 kProgresspoints = 1; const static uint16 kWatchon = 2; @@ -153,7 +890,7 @@ public: const static uint16 kSavex = 178; const static uint16 kSavey = 179; const static uint16 kCurrentob = 180; - const static uint16 kPriority = 181; + const static uint16 kPrioritydep = 181; const static uint16 kDestpos = 182; const static uint16 kReallocation = 183; const static uint16 kRoomnum = 184; @@ -589,7 +1326,6 @@ public: void drawitall(); void clearstartpal(); void femalefan(); - void greyscalesum(); void showgamereel(); void identifyob(); void trysoundalloc(); @@ -604,13 +1340,13 @@ public: void storeit(); void lockeddoorway(); void isitworn(); - void putundertimed(); + //void putundertimed(); void dumpmap(); - void multidump(); + //void multidump(); void channel0only(); void worktoscreenm(); void removeemm(); - void mansatstill(); + //void frameoutbh(); void getobtextstart(); void loadfolder(); void decide(); @@ -626,11 +1362,11 @@ public: void crosshair(); void bresenhams(); void getbackfromops(); - void frameoutv(); + //void frameoutv(); void restoreall(); void screenupdate(); void addlength(); - void usetimedtext(); + void wornerror(); void putundercentre(); void checkobjectsize(); void commandonly(); @@ -644,10 +1380,10 @@ public: void gettime(); void clearwork(); void loadtraveltext(); - void worktoscreen(); + //void worktoscreen(); void getexpos(); void fadedos(); - void multiget(); + //void multiget(); void fadeupmonfirst(); void drawfloor(); void loadkeypad(); @@ -661,7 +1397,7 @@ public: void opentomb(); void buttonfour(); void animpointer(); - void lockmon(); + //void lockmon(); void dochange(); void getanyaddir(); void showsaveops(); @@ -671,7 +1407,7 @@ public: void showdiscops(); void advisor(); void additionaltext(); - void kernchars(); + //void kernchars(); void othersmoker(); void autosetwalk(); void setuptimedtemp(); @@ -719,21 +1455,22 @@ public: void addtopeoplelist(); void hangoncurs(); void sparkydrip(); - void modifychar(); + //void modifychar(); void compare(); void printcurs(); - void convertkey(); + //void convertkey(); void outofopen(); void dealwithspecial(); + //void eraseoldobs(); void dircom(); - void liftsprite(); + //void liftsprite(); void dumpkeypad(); void dumpzoom(); void endgameseq(); - void cancelch0(); + //void cancelch0(); void setbotleft(); void findfirstpath(); - void showallfree(); + void fadescreenup(); void loadold(); void loadtempcharset(); void useslab(); @@ -743,7 +1480,7 @@ public: void turnonpower(); void manasleep2(); void moretalk(); - void printslow(); + //void printslow(); void loadroom(); void starttalk(); void delchar(); @@ -775,9 +1512,10 @@ public: void openpoolboss(); void buttontwo(); void fillopen(); + //void usetimedtext(); void delsprite(); void getroomspaths(); - void dumptextline(); + //void dumptextline(); void fadescreendownhalf(); void useplate(); void candles1(); @@ -786,11 +1524,11 @@ public: void isitdescribed(); void hotelbell(); void loadspeech(); - void cls(); - void printsprites(); - void dumptimedtext(); + //void cls(); + //void printsprites(); + void checkifperson(); void showallobs(); - void getnumber(); + //void getnumber(); void adjustleft(); void calledenslift(); void useclearbox(); @@ -805,7 +1543,7 @@ public: void showpcx(); void showdecisions(); void checkspeed(); - void printchar(); + //void printchar(); void showkeypad(); void obtoinv(); void removeobfrominv(); @@ -819,10 +1557,10 @@ public: void usekey(); void locklighton(); void useladderb(); - void spriteupdate(); + //void spriteupdate(); void usetempcharset(); void discops(); - void printdirect(); + //void printdirect(); void delthisone(); void makebackob(); void middlepanel(); @@ -830,7 +1568,6 @@ public: void saveload(); void monitorlogo(); void loadposition(); - void wornerror(); void entersymbol(); void showword(); void dirfile(); @@ -856,8 +1593,8 @@ public: void folderhints(); void openhoteldoor(); void removesetobject(); - void checkifperson(); - void frameoutfx(); + void dumptimedtext(); + //void frameoutfx(); void blank(); void drinker(); void nextcolon(); @@ -894,7 +1631,7 @@ public: void accesslighton(); void dosreturn(); void titles(); - void quickquit(); + //void quickquit(); void showpointer(); void usecooker(); void loadmenu(); @@ -904,13 +1641,12 @@ public: void receptionist(); void selectslot(); void edenscdplayer(); - void readoneblock(); + //void readoneblock(); void fadeupmon(); void paltoendpal(); void fadetowhite(); void textformonk(); void loadsavebox(); - void fadescreenup(); void soundend(); void redes(); void errormessage1(); @@ -943,13 +1679,13 @@ public: void zoom(); void outofinv(); void viewfolder(); - void walking(); + //void walking(); void diarykeyp(); - void readabyte(); - void showframe(); + //void readabyte(); + //void showframe(); void random(); void obicons(); - void frameoutbh(); + void mansatstill(); void channel1only(); void playguitar(); void lastfolder(); @@ -1035,7 +1771,7 @@ public: void handclap(); void smokebloke(); void showexit(); - void printundermon(); + //void printundermon(); void buttonnine(); void findallopen(); void loadintotemp3(); @@ -1051,13 +1787,13 @@ public: void settopright(); void findsetobject(); void singlekey(); - void seecommandtail(); - void getundertimed(); + //void seecommandtail(); + //void getundertimed(); void hangone(); void carparkdrip(); void usediary(); void deleteexobject(); - void frameoutnm(); + //void frameoutnm(); void moneypoke(); void destselect(); void restoreems(); @@ -1067,7 +1803,7 @@ public: void openlouis(); void buttonthree(); void getundermenu(); - void randomnumber(); + //void randomnumber(); void lookatcard(); void helicopter(); void scrollmonitor(); @@ -1089,6 +1825,7 @@ public: void pickupob(); void error(); void showopbox(); + //void cancelch1(); void clearbeforeload(); void biblequote(); void doload(); @@ -1099,7 +1836,7 @@ public: void addtopresslist(); void walkandexamine(); void dmaend(); - void quickquit2(); + //void quickquit2(); void twodigitnum(); void madmantext(); void dumpcurrent(); @@ -1134,7 +1871,7 @@ public: void finalframe(); void plotreel(); void swapwithopen(); - void makesprite(); + //void makesprite(); void dreamweb(); void droperror(); void openfilenocheck(); @@ -1146,7 +1883,7 @@ public: void turnanypathon(); void restorereels(); void setwalk(); - void printboth(); + //void printboth(); void useroutine(); void zoomicon(); void hotelcontrol(); @@ -1164,7 +1901,7 @@ public: void read(); void fadescreenups(); void checkdest(); - void initman(); + //void initman(); void loadpalfromiff(); void facerightway(); void startup1(); @@ -1177,12 +1914,12 @@ public: void gettingshot(); void settopleft(); void searchforstring(); - void clearsprites(); + //void clearsprites(); void obpicture(); void selectopenob(); void widedoor(); void security(); - void printasprite(); + //void printasprite(); void buttonfive(); void soundonreels(); void usegun(); @@ -1207,10 +1944,10 @@ public: void makenextblock(); void showpuztext(); void addalong(); - void width160(); + //void width160(); void incryanpage(); - void dodoor(); - void eraseoldobs(); + //void dodoor(); + void greyscalesum(); void buttoneight(); void opensarters(); void findexobject(); @@ -1240,8 +1977,8 @@ public: void initialmoncols(); void checkforshake(); void usebuttona(); - void cancelch1(); - void getnextword(); + void showallfree(); + //void getnextword(); void generalerror(); void actualload(); void allocateload(); @@ -1322,7 +2059,7 @@ public: void randomnum2(); void loadsecondsample(); void transfercontoex(); - void multiput(); + //void multiput(); void isitright(); void businessman(); void switchryanoff(); diff --git a/engines/dreamweb/dreamweb.cpp b/engines/dreamweb/dreamweb.cpp index 85cb2c1983..caf3a987c4 100644 --- a/engines/dreamweb/dreamweb.cpp +++ b/engines/dreamweb/dreamweb.cpp @@ -18,9 +18,6 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * - * $URL: https://svn.scummvm.org:4444/svn/dreamweb/dreamweb.cpp $ - * $Id: dreamweb.cpp 79 2011-06-05 08:26:54Z eriktorbjorn $ - * */ #include "common/config-manager.h" @@ -219,7 +216,13 @@ Common::Error DreamWebEngine::run() { syncSoundSettings(); _console = new DreamWebConsole(this); - _loadSavefile = Common::ConfigManager::instance().getInt("save_slot"); + if (ConfMan.hasKey("save_slot")) { + _enableSavingOrLoading = true; + _loadSavefile = ConfMan.getInt("save_slot"); + } else { + _enableSavingOrLoading = false; + _loadSavefile = -1; + } getTimerManager()->installTimerProc(vSyncInterrupt, 1000000 / 70, this); _context.__start(); @@ -474,6 +477,16 @@ void DreamWebEngine::playSound(uint8 channel, uint8 id, uint8 loops) { _mixer->playStream(type, &_channelHandle[channel], stream); } +void DreamWebEngine::stopSound(uint8 channel) { + debug(1, "stopSound(%u)", channel); + assert(channel == 0 || channel == 1); + _mixer->stopHandle(_channelHandle[channel]); + if (channel == 0) + _channel0 = 0; + else + _channel1 = 0; +} + bool DreamWebEngine::loadSpeech(const Common::String &filename) { if (ConfMan.getBool("speech_mute")) return false; diff --git a/engines/dreamweb/dreamweb.h b/engines/dreamweb/dreamweb.h index 7323cfe836..6ada207496 100644 --- a/engines/dreamweb/dreamweb.h +++ b/engines/dreamweb/dreamweb.h @@ -18,9 +18,6 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * - * $URL: https://svn.scummvm.org:4444/svn/dreamweb/dreamweb.h $ - * $Id: dreamweb.h 77 2011-05-18 14:26:43Z digitall $ - * */ #ifndef DREAMWEB_H @@ -114,6 +111,8 @@ public: Common::Language getLanguage() const { return _language; } uint8 modifyChar(uint8 c) const; + void stopSound(uint8 channel); + private: void keyPressed(uint16 ascii); void setSpeed(uint speed); diff --git a/engines/dreamweb/runtime.h b/engines/dreamweb/runtime.h index a97ea2cf3d..714a8d5850 100644 --- a/engines/dreamweb/runtime.h +++ b/engines/dreamweb/runtime.h @@ -1,5 +1,27 @@ -#ifndef ENGINES_DREAMGEN_RUNTIME_H__ -#define ENGINES_DREAMGEN_RUNTIME_H__ +/* ScummVM - Graphic Adventure Engine + * + * ScummVM is the legal property of its developers, whose names + * are too numerous to list here. Please refer to the COPYRIGHT + * file distributed with this source distribution. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ + +#ifndef DREAMGEN_RUNTIME_H__ +#define DREAMGEN_RUNTIME_H__ #include <assert.h> #include "common/scummsys.h" @@ -111,7 +133,7 @@ struct Segment { return WordRef(data, index); } - inline uint8* ptr(unsigned index, unsigned size) { + inline uint8 *ptr(unsigned index, unsigned size) { assert(index + size <= data.size()); return data.begin() + index; } @@ -164,7 +186,7 @@ public: _segment->assign(b, e); } - inline uint8* ptr(unsigned index, unsigned size) { + inline uint8 *ptr(unsigned index, unsigned size) { assert(_segment != 0); return _segment->ptr(index, size); } @@ -465,7 +487,7 @@ public: inline void _movsb(uint size, bool clear_cx = false) { assert(size != 0xffff); //fixme: add overlap and segment boundary check and rewrite - while(size--) + while (size--) _movsb(); if (clear_cx) cx = 0; @@ -503,7 +525,7 @@ public: assert(size != 0xffff); uint8 *dst = es.ptr(di, size * 2); di += 2 * size; - while(size--) { + while (size--) { *dst++ = al; *dst++ = ah; } diff --git a/engines/dreamweb/structs.h b/engines/dreamweb/structs.h new file mode 100644 index 0000000000..e274375cf4 --- /dev/null +++ b/engines/dreamweb/structs.h @@ -0,0 +1,68 @@ +/* ScummVM - Graphic Adventure Engine + * + * ScummVM is the legal property of its developers, whose names + * are too numerous to list here. Please refer to the COPYRIGHT + * file distributed with this source distribution. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ + +struct Sprite { + uint16 updateCallback; + uint16 w2; + uint16 w4; + uint16 w6; + uint16 w8; + uint8 x; + uint8 y; + uint16 w12; + uint8 b14; + uint8 b15; + uint16 w16; + uint8 delay; + uint8 frame; + uint16 obj_data; + uint8 b22; + uint8 priority; + uint16 w24; + uint16 w26; + uint8 b28; + uint8 b29; + uint8 type; + uint8 hidden; +}; + +struct ObjData { + uint8 b0; + uint8 b1; + uint8 b2; + uint8 b3; + uint8 b4; + uint8 b5; + uint8 b6; + uint8 delay; + uint8 type; + uint8 b9; + uint8 b10; + uint8 b11; + uint8 b12; + uint8 b13; + uint8 b14; + uint8 b15; + uint8 b16; + uint8 b17; + uint8 b18[256]; // NB: Don't know the size yet +}; diff --git a/engines/dreamweb/stubs.cpp b/engines/dreamweb/stubs.cpp index 5614aa391a..ec94ffc40c 100644 --- a/engines/dreamweb/stubs.cpp +++ b/engines/dreamweb/stubs.cpp @@ -1,3 +1,25 @@ +/* ScummVM - Graphic Adventure Engine + * + * ScummVM is the legal property of its developers, whose names + * are too numerous to list here. Please refer to the COPYRIGHT + * file distributed with this source distribution. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ + #include "dreamweb/dreamweb.h" #include "engines/util.h" #include "graphics/surface.h" @@ -14,8 +36,10 @@ Common::String getFilename(Context &context) { } void DreamGenContext::multiget() { - unsigned w = (uint8)cl, h = (uint8)ch; - unsigned x = (uint16)di, y = (uint16)bx; + multiget(di, bx, cl, ch); +} + +void DreamGenContext::multiget(uint16 x, uint16 y, uint8 w, uint8 h) { unsigned src = x + y * kScreenwidth; unsigned dst = (uint16)si; es = ds; @@ -36,8 +60,10 @@ void DreamGenContext::multiget() { } void DreamGenContext::multiput() { - unsigned w = (uint8)cl, h = (uint8)ch; - unsigned x = (uint16)di, y = (uint16)bx; + multiput(di, bx, cl, ch); +} + +void DreamGenContext::multiput(uint16 x, uint16 y, uint8 w, uint8 h) { unsigned src = (uint16)si; unsigned dst = x + y * kScreenwidth; es = data.word(kWorkspace); @@ -56,14 +82,17 @@ void DreamGenContext::multiput() { cx = 0; } -void DreamGenContext::multidump() { +void DreamGenContext::multidump(uint16 x, uint16 y, uint8 width, uint8 height) { ds = data.word(kWorkspace); - int w = (uint8)cl, h = (uint8)ch; - int x = (int16)di, y = (int16)bx; unsigned offset = x + y * kScreenwidth; //debug(1, "multidump %ux%u(segment: %04x) -> %d,%d(address: %d)", w, h, (uint16)ds, x, y, offset); - engine->blit(ds.ptr(offset, w * h), kScreenwidth, x, y, w, h); - si = di = offset + h * kScreenwidth; + engine->blit(ds.ptr(offset, width * height), kScreenwidth, x, y, width, height); +} + +void DreamGenContext::multidump() { + multidump(di, bx, cl, ch); + unsigned offset = di + bx * kScreenwidth; + si = di = offset + ch * kScreenwidth; cx = 0; } @@ -83,21 +112,47 @@ void DreamGenContext::cls() { engine->cls(); } -void DreamGenContext::frameoutnm() { - unsigned w = (uint8)cl, h = (uint8)ch; - unsigned pitch = (uint16)dx; - unsigned src = (uint16)si; - int x = (uint16)di, y = (uint16)bx; - unsigned dst = x + y * pitch; - //debug(1, "framenm %ux%u[pitch: %u]-> %d,%d, segment: %04x->%04x", w, h, pitch, x, y, (uint16)ds, (uint16)es); - for(unsigned l = 0; l < h; ++l) { - uint8 *src_p = ds.ptr(src + w * l, w); - uint8 *dst_p = es.ptr(dst + pitch * l, w); - memcpy(dst_p, src_p, w); +void DreamGenContext::frameoutnm(uint8 *dst, const uint8 *src, uint16 pitch, uint16 width, uint16 height, uint16 x, uint16 y) { + dst += pitch * y + x; + + for (uint16 j = 0; j < height; ++j) { + memcpy(dst, src, width); + dst += pitch; + src += width; + } +} + +void DreamGenContext::frameoutbh(uint8 *dst, const uint8 *src, uint16 pitch, uint16 width, uint16 height, uint16 x, uint16 y) { + uint16 stride = pitch - width; + dst += y * pitch + x; + + for (uint16 i = 0; i < height; ++i) { + for (uint16 j = 0; j < width; ++j) { + if (*dst == 0xff) { + *dst = *src; + } + ++src; + ++dst; + } + dst += stride; + } +} + +void DreamGenContext::frameoutfx(uint8 *dst, const uint8 *src, uint16 pitch, uint16 width, uint16 height, uint16 x, uint16 y) { + uint16 stride = pitch - width; + dst += y * pitch + x; + dst -= width; + + for (uint16 j = 0; j < height; ++j) { + for (uint16 i = 0; i < width; ++i) { + uint8 pixel = src[width - i - 1]; + if (pixel) + *dst = pixel; + ++dst; + } + src += width; + dst += stride; } - di += dst + pitch * h; - si += w * h; - cx = 0; } void DreamGenContext::seecommandtail() { @@ -191,6 +246,277 @@ void DreamGenContext::setmouse() { data.word(kOldpointerx) = 0xffff; } +void DreamGenContext::printboth() { + uint16 x = di; + printboth(es, ds, &x, bx, al); + di = x; +} + +void DreamGenContext::printboth(uint16 dst, uint16 src, uint16 *x, uint16 y, uint8 c) { + uint16 newX = *x; + uint8 width, height; + printchar(dst, src, &newX, y, c, &width, &height); + multidump(*x, y, width, height); + *x = newX; +} + +uint8 DreamGenContext::getnextword(const uint8 *string, uint8 *totalWidth, uint8 *charCount) { + *totalWidth = 0; + *charCount = 0; + while(true) { + uint8 firstChar = *string; + ++string; + ++*charCount; + if ((firstChar == ':') || (firstChar == 0)) { //endall + *totalWidth += 6; + return 1; + } + if (firstChar == 32) { //endword + *totalWidth += 6; + return 0; + } + firstChar = engine->modifyChar(firstChar); + if (firstChar != 255) { + uint8 secondChar = *string; + uint8 width = ds.byte(6*(firstChar - 32 + data.word(kCharshift))); + width = kernchars(firstChar, secondChar, width); + *totalWidth += width; + } + } +} + +void DreamGenContext::getnextword() { + uint8 totalWidth, charCount; + al = getnextword(es.ptr(di, 0), &totalWidth, &charCount); + bl = totalWidth; + bh = charCount; + di += charCount; +} + +void DreamGenContext::printchar() { + uint16 x = di; + uint8 width, height; + printchar(es, ds, &x, bx, al, &width, &height); + di = x; + cl = width; + ch = height; +} + +void DreamGenContext::printchar(uint16 dst, uint16 src, uint16* x, uint16 y, uint8 c, uint8 *width, uint8 *height) { + if (c == 255) + return; + push(si); + push(di); + if (data.byte(kForeignrelease) != 0) + y -= 3; + showframe(dst, src, *x, y, c - 32 + data.word(kCharshift), 0, width, height); + di = pop(); + si = pop(); + _cmp(data.byte(kKerning), 0); + if (flags.z()) + kernchars(); + (*x) += *width; +} + +void DreamGenContext::printslow() { + al = printslow(di, bx, dl, (bool)(dl & 1)); +} + +void DreamGenContext::dumptextline() { + if (data.byte(kNewtextline) != 1) + return; + data.byte(kNewtextline) = 0; + uint16 x = data.word(kTextaddressx); + uint16 y = data.word(kTextaddressy); + if (data.byte(kForeignrelease) != 0) + y -= 3; + multidump(x, y, 228, 13); +} + +uint8 DreamGenContext::printslow(uint16 x, uint16 y, uint8 maxWidth, bool centered) { + data.byte(kPointerframe) = 1; + data.byte(kPointermode) = 3; + ds = data.word(kCharset1); + do { + uint16 offset = x; + uint16 charCount = getnumber(si, maxWidth, centered, &offset); + do { + push(si); + push(es); + uint8 c0 = es.byte(si); + push(es); + push(ds); + c0 = engine->modifyChar(c0); + printboth(es, ds, &offset, y, c0); + ds = pop(); + es = pop(); + uint8 c1 = es.byte(si+1); + ++si; + if ((c1 == 0) || (c1 == ':')) { + es = pop(); + si = pop(); + return 0; + } + if (charCount != 1) { + push(ds); + push(es); + c1 = engine->modifyChar(c1); + data.word(kCharshift) = 91; + uint16 offset2 = offset; + printboth(es, ds, &offset2, y, c1); + data.word(kCharshift) = 0; + es = pop(); + ds = pop(); + for (int i=0; i<2; ++i) { + waitframes(); + if (ax == 0) + continue; + if (ax != data.word(kOldbutton)) { + es = pop(); + si = pop(); + return 1; + } + } + } + + es = pop(); + si = pop(); + ++si; + --charCount; + } while (charCount); + y += 10; + } while (true); +} + +void DreamGenContext::printdirect() { + uint16 y = bx; + printdirect(di, &y, dl, (bool)(dl & 1)); + bx = y; +} + +void DreamGenContext::printdirect(uint16 x, uint16 *y, uint8 maxWidth, bool centered) { + data.word(kLastxpos) = x; + ds = data.word(kCurrentset); + while (true) { + uint16 offset = x; + uint8 charCount = getnumber(si, maxWidth, centered, &offset); + uint16 i = offset; + do { + uint8 c = es.byte(si); + ++si; + if ((c == 0) || (c == ':')) { + return; + } + c = engine->modifyChar(c); + uint8 width, height; + push(es); + printchar(es, ds, &i, *y, c, &width, &height); + es = pop(); + data.word(kLastxpos) = i; + --charCount; + } while(charCount); + *y += data.word(kLinespacing); + } +} + +void DreamGenContext::getundertimed() { + uint16 y = data.byte(kTimedy); + if (data.byte(kForeignrelease)) + y -= 3; + ds = data.word(kBuffers); + si = kUndertimedtext; + multiget(data.byte(kTimedx), y, 240, kUndertimedysize); +} + +void DreamGenContext::putundertimed() { + uint16 y = data.byte(kTimedy); + if (data.byte(kForeignrelease)) + y -= 3; + ds = data.word(kBuffers); + si = kUndertimedtext; + multiput(data.byte(kTimedx), y, 240, kUndertimedysize); +} + +void DreamGenContext::usetimedtext() { + if (data.word(kTimecount) == 0) + return; + --data.word(kTimecount); + if (data.word(kTimecount) == 0) { + putundertimed(); + data.byte(kNeedtodumptimed) = 1; + return; + } + + if (data.word(kTimecount) == data.word(kCounttotimed)) + getundertimed(); + else if (data.word(kTimecount) > data.word(kCounttotimed)) + return; + + es = data.word(kTimedseg); + si = data.word(kTimedoffset); + uint16 y = data.byte(kTimedy); + printdirect(data.byte(kTimedx), &y, 237, true); + data.byte(kNeedtodumptimed) = 1; +} + +void DreamGenContext::getnumber() { + uint16 offset = di; + cl = getnumber(si, dl, (bool)(dl & 1), &offset); + di = offset; +} + +uint8 DreamGenContext::getnumber(uint16 index, uint16 maxWidth, bool centered, uint16* offset) { + uint8 totalWidth = 0; + uint8 charCount = 0; + while (true) { + uint8 wordTotalWidth, wordCharCount; + uint8 done = getnextword(es.ptr(index, 0), &wordTotalWidth, &wordCharCount); + index += wordCharCount; + + if (done == 1) { //endoftext + ax = totalWidth + wordTotalWidth - 10; + if (ax < maxWidth) { + totalWidth += wordTotalWidth; + charCount += wordCharCount; + } + + if (centered) { + ax = (maxWidth & 0xfe) + 2 + 20 - totalWidth; + ax /= 2; + } else { + ax = 0; + } + *offset += ax; + return charCount; + } + ax = totalWidth + wordTotalWidth - 10; + if (ax >= maxWidth) { //gotoverend + if (centered) { + ax = (maxWidth & 0xfe) - totalWidth + 20; + ax /= 2; + } else { + ax = 0; + } + *offset += ax; + return charCount; + } + totalWidth += wordTotalWidth; + charCount += wordCharCount; + } +} + +uint8 DreamGenContext::kernchars(uint8 firstChar, uint8 secondChar, uint8 width) { + if ((firstChar == 'a') || (al == 'u')) { + if ((secondChar == 'n') || (secondChar == 't') || (secondChar == 'r') || (secondChar == 'i') || (secondChar == 'l')) + return width-1; + } + return width; +} + +void DreamGenContext::kernchars() { + cl = kernchars(al, ah, cl); +} + void DreamGenContext::gettime() { TimeDate t; g_system->getTimeAndDate(t); @@ -430,7 +756,7 @@ void DreamGenContext::doshake() { 1, -3, 3, 0, }; int offset = shakeTable[counter]; - engine->setShakePos(offset >= 0? offset: -offset); + engine->setShakePos(offset >= 0 ? offset : -offset); } void DreamGenContext::vsync() { @@ -528,19 +854,40 @@ void DreamGenContext::showpcx() { pcxFile.close(); } +/* void DreamGenContext::frameoutv() { uint16 pitch = dx; uint16 width = cx & 0xff; uint16 height = cx >> 8; - uint16 stride = pitch - width; - const uint8* src = ds.ptr(si, width * height); - uint8* base = es.ptr(di, stride * height); - uint8* dst = base + pitch * bx; + const uint8 *src = ds.ptr(si, width * height); + uint8 *dst = es.ptr(0, pitch * height); + + frameoutv(dst, src, pitch, width, height, di, bx); +} +*/ + +void DreamGenContext::frameoutv(uint8 *dst, const uint8 *src, uint16 pitch, uint16 width, uint16 height, uint16 x, uint16 y) { + // NB : These resilience checks were not in the original engine, but did they result in undefined behaviour + // or was something broken during porting to C++? + assert(pitch == 320); - // NB: Original code assumes non-zero width and height, "for" are unneeded, do-while would suffice but would be less readable - for (uint16 y = 0; y < height; ++y) { - for (uint16 x = 0; x < width; ++x) { + if(x >= 320) + return; + if(y >= 200) + return; + if(x + width > 320) { + width = 320 - x; + } + if(y + height > 200) { + height = 200 - y; + } + + uint16 stride = pitch - width; + dst += pitch * y + x; + + for (uint16 j = 0; j < height; ++j) { + for (uint16 i = 0; i < width; ++i) { uint8 pixel = *src++; if (pixel) *dst = pixel; @@ -550,8 +897,608 @@ void DreamGenContext::frameoutv() { } } +Sprite *DreamGenContext::spritetable() { + push(es); + push(bx); + + es = data.word(kBuffers); + bx = kSpritetable; + Sprite *sprite = (Sprite *)es.ptr(bx, 16 * sizeof(Sprite)); + + bx = pop(); + es = pop(); + + return sprite; +} + +void DreamGenContext::showframe(uint16 dst, uint16 src, uint16 x, uint16 y, uint8 frameNumber, uint8 effectsFlag, uint8 *width, uint8 *height) { + es = dst; + ds = src; + di = x; + bx = y; + al = frameNumber; + ah = effectsFlag; + + si = (ax & 0x1ff) * 6; + if (ds.word(si) == 0) { + *width = 0; + *height = 0; + return; + } + +//notblankshow: + if ((effectsFlag & 128) == 0) { + di += ds.byte(si + 4); + bx += ds.byte(si + 5); + } +//skipoffsets: + cx = ds.word(si + 0); + *width = cl; + *height = ch; + si = ds.word(si+2) + 2080; + + if (effectsFlag) { + if (effectsFlag & 128) { //centred + di -= *width / 2; + bx -= *height / 2; + } + if (effectsFlag & 64) { //diffdest + frameoutfx(es.ptr(0, dx * *height), ds.ptr(si, *width * *height), dx, *width, *height, di, bx); + return; + } + if (effectsFlag & 8) { //printlist + push(ax); + ax = di - data.word(kMapadx); + push(bx); + bx -= data.word(kMapady); + ah = bl; + bx = pop(); + //addtoprintlist(); // NB: Commented in the original asm + ax = pop(); + } + if (effectsFlag & 4) { //flippedx + es = data.word(kWorkspace); + frameoutfx(es.ptr(0, 320 * *height), ds.ptr(si, *width * *height), 320, *width, *height, di, bx); + return; + } + if (effectsFlag & 2) { //nomask + es = data.word(kWorkspace); + frameoutnm(es.ptr(0, 320 * *height), ds.ptr(si, *width * *height), 320, *width, *height, di, bx); + return; + } + if (effectsFlag & 32) { + es = data.word(kWorkspace); + frameoutbh(es.ptr(0, 320 * *height), ds.ptr(si, *width * *height), 320, *width, *height, di, bx); + return; + } + } +//noeffects: + es = data.word(kWorkspace); + frameoutv(es.ptr(0, 65536), ds.ptr(si, *width * *height), 320, *width, *height, di, bx); + return; +} + +void DreamGenContext::showframe() { + uint8 width, height; + showframe(es, ds, di, bx, al, ah, &width, &height); + cl = width; + ch = height; +} + +void DreamGenContext::printsprites() { + for (size_t priority = 0; priority < 7; ++priority) { + Sprite *sprites = spritetable(); + for (size_t j = 0; j < 16; ++j) { + const Sprite &sprite = sprites[j]; + if (READ_LE_UINT16(&sprite.updateCallback) == 0x0ffff) + continue; + if (priority != sprite.priority) + continue; + if (sprite.hidden == 1) + continue; + printasprite(&sprite); + } + } +} + +void DreamGenContext::printasprite(const Sprite *sprite) { + push(es); + push(bx); + ds = READ_LE_UINT16(&sprite->w6); + ax = sprite->y; + if (al >= 220) { + bx = data.word(kMapady) - (256 - al); + } else { + bx = ax + data.word(kMapady); + } + + ax = sprite->x; + if (al >= 220) { + di = data.word(kMapadx) - (256 - al); + } else { + di = ax + data.word(kMapadx); + } + + uint8 c; + if (sprite->b29 != 0) + c = 8; + else + c = 0; + uint8 width, height; + showframe(es, ds, di, bx, sprite->b15, c, &width, &height); + cl = width; + ch = height; + + bx = pop(); + es = pop(); +} + +void DreamGenContext::eraseoldobs() { + if (data.byte(kNewobs) == 0) + return; + + Sprite *sprites = spritetable(); + for (size_t i=0; i < 16; ++i) { + Sprite &sprite = sprites[i]; + if (READ_LE_UINT16(&sprite.obj_data) != 0xffff) { + memset(&sprite, 0xff, sizeof(Sprite)); + } + } +} + +void DreamGenContext::clearsprites() { + memset(spritetable(), 0xff, sizeof(Sprite) * 16); +} + +Sprite *DreamGenContext::makesprite(uint8 x, uint8 y, uint16 updateCallback, uint16 somethingInDx, uint16 somethingInDi) { + Sprite *sprite = spritetable(); + while (sprite->b15 != 0xff) { // NB: No boundchecking in the original code either + ++sprite; + } + + WRITE_LE_UINT16(&sprite->updateCallback, updateCallback); + sprite->x = x; + sprite->y = y; + WRITE_LE_UINT16(&sprite->w6, somethingInDx); + WRITE_LE_UINT16(&sprite->w8, somethingInDi); + sprite->w2 = 0xffff; + sprite->b15 = 0; + sprite->delay = 0; + return sprite; +} + +void DreamGenContext::makesprite() { // NB: returns new sprite in es:bx + Sprite *sprite = makesprite(si & 0xff, si >> 8, cx, dx, di); + + // Recover es:bx from sprite + es = data.word(kBuffers); + bx = kSpritetable; + Sprite *sprites = (Sprite *)es.ptr(bx, sizeof(Sprite) * 16); + bx += sizeof(Sprite) * (sprite - sprites); + // +} + +void DreamGenContext::spriteupdate() { + Sprite *sprites = spritetable(); + sprites[0].hidden = data.byte(kRyanon); + + Sprite *sprite = sprites; + for (size_t i=0; i < 16; ++i) { + uint16 updateCallback = READ_LE_UINT16(&sprite->updateCallback); + if (updateCallback != 0xffff) { + sprite->w24 = sprite->w2; + if (updateCallback == addr_mainman) // NB : Let's consider the callback as an enum while more code is not ported to C++ + mainmanCPP(sprite); + else { + assert(updateCallback == addr_backobject); + backobject(sprite); + } + } + + if (data.byte(kNowinnewroom) == 1) + break; + ++sprite; + } +} + +void DreamGenContext::initman() { + Sprite *sprite = makesprite(data.byte(kRyanx), data.byte(kRyany), addr_mainman, data.word(kMainsprites), 0); + sprite->priority = 4; + sprite->b22 = 0; + sprite->b29 = 0; + + // Recover es:bx from sprite + es = data.word(kBuffers); + bx = kSpritetable; + Sprite *sprites = (Sprite *)es.ptr(bx, sizeof(Sprite) * 16); + bx += 32 * (sprite - sprites); + // +} + +void DreamGenContext::mainmanCPP(Sprite *sprite) { + push(es); + push(ds); + + // Recover es:bx from sprite + es = data.word(kBuffers); + bx = kSpritetable; + Sprite *sprites = (Sprite *)es.ptr(bx, sizeof(Sprite) * 16); + bx += 32 * (sprite - sprites); + // + + if (data.byte(kResetmanxy) == 1) { + data.byte(kResetmanxy) = 0; + sprite->x = data.byte(kRyanx); + sprite->y = data.byte(kRyany); + sprite->b29 = 0; + } + --sprite->b22; + if (sprite->b22 != 0xff) { + ds = pop(); + es = pop(); + return; + } + sprite->b22 = 0; + if (data.byte(kTurntoface) != data.byte(kFacing)) { + aboutturn(sprite); + } else { + if ((data.byte(kTurndirection) != 0) && (data.byte(kLinepointer) == 254)) { + data.byte(kReasseschanges) = 1; + if (data.byte(kFacing) == data.byte(kLeavedirection)) + checkforexit(); + } + data.byte(kTurndirection) = 0; + if (data.byte(kLinepointer) == 254) { + sprite->b29 = 0; + } else { + ++sprite->b29; + if (sprite->b29 == 11) + sprite->b29 = 1; + walking(); + if (data.byte(kLinepointer) != 254) { + if ((data.byte(kFacing) & 1) == 0) + walking(); + else if ((sprite->b29 != 2) && (sprite->b29 != 7)) + walking(); + } + if (data.byte(kLinepointer) == 254) { + if (data.byte(kTurntoface) == data.byte(kFacing)) { + data.byte(kReasseschanges) = 1; + if (data.byte(kFacing) == data.byte(kLeavedirection)) + checkforexit(); + } + } + } + } + static const uint8 facelist[] = { 0,60,33,71,11,82,22,93 }; + sprite->b15 = sprite->b29 + facelist[data.byte(kFacing)]; + data.byte(kRyanx) = sprite->x; + data.byte(kRyany) = sprite->y; + + ds = pop(); + es = pop(); +} + +void DreamGenContext::walking() { + Sprite *sprite = (Sprite *)es.ptr(bx, sizeof(Sprite)); + + uint8 comp; + if (data.byte(kLinedirection) != 0) { + --data.byte(kLinepointer); + comp = 200; + } else { + ++data.byte(kLinepointer); + comp = data.byte(kLinelength); + } + if (data.byte(kLinepointer) < comp) { + sprite->x = data.byte(kLinedata + data.byte(kLinepointer) * 2 + 0); + sprite->y = data.byte(kLinedata + data.byte(kLinepointer) * 2 + 1); + return; + } + + data.byte(kLinepointer) = 254; + data.byte(kManspath) = data.byte(kDestination); + if (data.byte(kDestination) == data.byte(kFinaldest)) { + facerightway(); + return; + } + data.byte(kDestination) = data.byte(kFinaldest); + push(es); + push(bx); + autosetwalk(); + bx = pop(); + es = pop(); +} + +void DreamGenContext::aboutturn(Sprite *sprite) { + bool incdir = true; + + if (data.byte(kTurndirection) == 1) + incdir = true; + else if ((int8)data.byte(kTurndirection) == -1) + incdir = false; + else { + if (data.byte(kFacing) < data.byte(kTurntoface)) { + uint8 delta = data.byte(kTurntoface) - data.byte(kFacing); + if (delta >= 4) + incdir = false; + else + incdir = true; + } else { + uint8 delta = data.byte(kFacing) - data.byte(kTurntoface); + if (delta >= 4) + incdir = true; + else + incdir = false; + } + } + + if (incdir) { + data.byte(kTurndirection) = 1; + data.byte(kFacing) = (data.byte(kFacing) + 1) & 7; + sprite->b29 = 0; + } else { + data.byte(kTurndirection) = -1; + data.byte(kFacing) = (data.byte(kFacing) - 1) & 7; + sprite->b29 = 0; + } +} + +void DreamGenContext::backobject(Sprite *sprite) { + push(es); + push(ds); + + // Recover es:bx from sprite + es = data.word(kBuffers); + bx = kSpritetable; + Sprite *sprites = (Sprite *)es.ptr(bx, sizeof(Sprite) * 16); + bx += 32 * (sprite - sprites); + // + + ds = data.word(kSetdat); + di = READ_LE_UINT16(&sprite->obj_data); + ObjData *objData = (ObjData *)ds.ptr(di, 0); + + if (sprite->delay != 0) { + --sprite->delay; + ds = pop(); + es = pop(); + return; + } + + sprite->delay = objData->delay; + if (objData->type == 6) + widedoor(sprite, objData); + else if (objData->type == 5) + random(sprite, objData); + else if (objData->type == 4) + lockeddoorway(); + else if (objData->type == 3) + liftsprite(sprite, objData); + else if (objData->type == 2) + doorway(sprite, objData); + else if (objData->type == 1) + constant(sprite, objData); + else + steady(sprite, objData); + + ds = pop(); + es = pop(); +} + +void DreamGenContext::constant(Sprite *sprite, ObjData *objData) { + ++sprite->frame; + if (objData->b18[sprite->frame] == 255) { + sprite->frame = 0; + } + uint8 b18 = objData->b18[sprite->frame]; + objData->b17 = b18; + sprite->b15 = b18; +} + +void DreamGenContext::random(Sprite *sprite, ObjData *objData) { + randomnum1(); + uint16 r = ax; + sprite->b15 = objData->b18[r&7]; +} + +void DreamGenContext::doorway(Sprite *sprite, ObjData *objData) { + data.byte(kDoorcheck1) = -24; + data.byte(kDoorcheck2) = 10; + data.byte(kDoorcheck3) = -30; + data.byte(kDoorcheck4) = 10; + dodoor(sprite, objData); +} + +void DreamGenContext::widedoor(Sprite *sprite, ObjData *objData) { + data.byte(kDoorcheck1) = -24; + data.byte(kDoorcheck2) = 24; + data.byte(kDoorcheck3) = -30; + data.byte(kDoorcheck4) = 24; + dodoor(sprite, objData); +} + +void DreamGenContext::dodoor() { + Sprite *sprite = (Sprite *)es.ptr(bx, sizeof(Sprite)); + ObjData *objData = (ObjData *)ds.ptr(di, 0); + dodoor(sprite, objData); +} + +void DreamGenContext::dodoor(Sprite *sprite, ObjData *objData) { + uint8 ryanx = data.byte(kRyanx); + uint8 ryany = data.byte(kRyany); + int8 deltax = ryanx - sprite->x; + int8 deltay = ryany - sprite->y; + if (ryanx < sprite->x) { + if (deltax < (int8)data.byte(kDoorcheck1)) + goto shutdoor; + } else { + if (deltax >= data.byte(kDoorcheck2)) + goto shutdoor; + } + if (ryany < sprite->y) { + if (deltay < (int8)data.byte(kDoorcheck3)) + goto shutdoor; + } else { + if (deltay >= data.byte(kDoorcheck4)) + goto shutdoor; + } +//opendoor: + if ((data.byte(kThroughdoor) == 1) && (sprite->frame == 0)) + sprite->frame = 6; + + ++sprite->frame; + if (sprite->frame == 1) { //doorsound2 + if (data.byte(kReallocation) == 5) //hoteldoor2 + al = 13; + else + al = 0; + playchannel1(); + } + if (objData->b18[sprite->frame] == 255) { + --sprite->frame; + } + sprite->b15 = objData->b17 = objData->b18[sprite->frame]; + data.byte(kThroughdoor) = 1; + return; +shutdoor: + if (sprite->frame == 5) { //doorsound1; + if (data.byte(kReallocation) == 5) //hoteldoor1 + al = 13; + else + al = 1; + playchannel1(); + } + if (sprite->frame != 0) { + --sprite->frame; + } + sprite->b15 = objData->b17 = objData->b18[sprite->frame]; + if (sprite->frame == 5) //nearly + data.byte(kThroughdoor) = 0; +} + +void DreamGenContext::steady(Sprite *sprite, ObjData *objData) { + uint8 b18 = objData->b18[0]; + objData->b17 = b18; + sprite->b15 = b18; +} + +void DreamGenContext::turnpathonCPP(uint8 param) { + al = param; + push(es); + push(bx); + turnpathon(); + bx = pop(); + es = pop(); +} + +void DreamGenContext::turnpathoffCPP(uint8 param) { + al = param; + push(es); + push(bx); + turnpathoff(); + bx = pop(); + es = pop(); +} + +void DreamGenContext::liftsprite() { + Sprite *sprite = (Sprite *)es.ptr(bx, sizeof(Sprite)); + ObjData *objData = (ObjData *)ds.ptr(di, 0); + liftsprite(sprite, objData); +} + +void DreamGenContext::liftsprite(Sprite *sprite, ObjData *objData) { + uint8 liftFlag = data.byte(kLiftflag); + if (liftFlag == 0) { //liftclosed + turnpathoffCPP(data.byte(kLiftpath)); + + if (data.byte(kCounttoopen) != 0) { + _dec(data.byte(kCounttoopen)); + if (data.byte(kCounttoopen) == 0) + data.byte(kLiftflag) = 3; + } + sprite->frame = 0; + sprite->b15 = objData->b17 = objData->b18[sprite->frame]; + } + else if (liftFlag == 1) { //liftopen + turnpathonCPP(data.byte(kLiftpath)); + + if (data.byte(kCounttoclose) != 0) { + _dec(data.byte(kCounttoclose)); + if (data.byte(kCounttoclose) == 0) + data.byte(kLiftflag) = 2; + } + sprite->frame = 12; + sprite->b15 = objData->b17 = objData->b18[sprite->frame]; + } + else if (liftFlag == 3) { //openlift + if (sprite->frame == 12) { + data.byte(kLiftflag) = 1; + return; + } + ++sprite->frame; + if (sprite->frame == 1) { + al = 2; + liftnoise(); + } + sprite->b15 = objData->b17 = objData->b18[sprite->frame]; + } else { //closeLift + assert(liftFlag == 2); + if (sprite->frame == 0) { + data.byte(kLiftflag) = 0; + return; + } + --sprite->frame; + if (sprite->frame == 11) { + al = 3; + liftnoise(); + } + sprite->b15 = objData->b17 = objData->b18[sprite->frame]; + } +} + void DreamGenContext::modifychar() { al = engine->modifyChar(al); } +void DreamGenContext::lockmon() { + // Pressing space pauses text output in the monitor. We use the "hard" + // key because calling readkey() drains characters from the input + // buffer, we we want the user to be able to type ahead while the text + // is being printed. + if (data.byte(kLasthardkey) == 57) { + // Clear the keyboard buffer. Otherwise the space that caused + // the pause will be read immediately unpause the game. + do { + readkey(); + } while (data.byte(kCurrentkey) != 0); + + locklighton(); + while (!engine->shouldQuit()) { + engine->waitForVSync(); + readkey(); + if (data.byte(kCurrentkey) == ' ') + break; + } + // Forget the last "hard" key, otherwise the space that caused + // the unpausing will immediately re-pause the game. + data.byte(kLasthardkey) = 0; + locklightoff(); + } +} + +void DreamGenContext::cancelch0() { + data.byte(kCh0repeat) = 0; + data.word(kCh0blockstocopy) = 0; + data.byte(kCh0playing) = 255; + engine->stopSound(0); +} + +void DreamGenContext::cancelch1() { + data.word(kCh1blockstocopy) = 0; + data.byte(kCh1playing) = 255; + engine->stopSound(1); +} + } /*namespace dreamgen */ + diff --git a/engines/dreamweb/stubs.h b/engines/dreamweb/stubs.h new file mode 100644 index 0000000000..20d987d374 --- /dev/null +++ b/engines/dreamweb/stubs.h @@ -0,0 +1,90 @@ +/* ScummVM - Graphic Adventure Engine + * + * ScummVM is the legal property of its developers, whose names + * are too numerous to list here. Please refer to the COPYRIGHT + * file distributed with this source distribution. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ + + void multidump(); + void multidump(uint16 x, uint16 y, uint8 width, uint8 height); + void frameoutv(uint8 *dst, const uint8 *src, uint16 pitch, uint16 width, uint16 height, uint16 x, uint16 y); + void frameoutnm(uint8 *dst, const uint8 *src, uint16 pitch, uint16 width, uint16 height, uint16 x, uint16 y); + void frameoutbh(uint8 *dst, const uint8 *src, uint16 pitch, uint16 width, uint16 height, uint16 x, uint16 y); + void frameoutfx(uint8 *dst, const uint8 *src, uint16 pitch, uint16 width, uint16 height, uint16 x, uint16 y); + void worktoscreen(); + void multiget(); + void multiget(uint16 x, uint16 y, uint8 width, uint8 height); + void convertkey(); + void cls(); + void printsprites(); + void quickquit(); + void readoneblock(); + void printundermon(); + void seecommandtail(); + void randomnumber(); + void quickquit2(); + void getnextword(); + uint8 getnextword(const uint8 *string, uint8 *totalWidth, uint8 *charCount); + void printboth(); + void printboth(uint16 dst, uint16 src, uint16 *x, uint16 y, uint8 c); + void printchar(); + void printchar(uint16 dst, uint16 src, uint16 *x, uint16 y, uint8 c, uint8 *width, uint8 *height); + void printdirect(); + void printdirect(uint16 x, uint16 *y, uint8 maxWidth, bool centered); + void usetimedtext(); + void getundertimed(); + void putundertimed(); + uint8 printslow(uint16 x, uint16 y, uint8 maxWidth, bool centered); + void printslow(); + void dumptextline(); + void getnumber(); + uint8 getnumber(uint16 index, uint16 maxWidth, bool centered, uint16* offset); + void kernchars(); + uint8 kernchars(uint8 firstChar, uint8 secondChar, uint8 width); + Sprite *spritetable(); + void showframe(); + void showframe(uint16 dst, uint16 src, uint16 x, uint16 y, uint8 frameNumber, uint8 effectsFlag, uint8 *width, uint8 *height); + void printasprite(const Sprite *sprite); + void width160(); + void multiput(uint16 x, uint16 y, uint8 width, uint8 height); + void multiput(); + void eraseoldobs(); + void clearsprites(); + void makesprite(); + Sprite *makesprite(uint8 x, uint8 y, uint16 updateCallback, uint16 somethingInDx, uint16 somethingInDi); + void spriteupdate(); + void initman(); + void mainmanCPP(Sprite *sprite); + void walking(); + void aboutturn(Sprite *sprite); + void backobject(Sprite *sprite); + void constant(Sprite *sprite, ObjData *objData); + void steady(Sprite *sprite, ObjData *objData); + void random(Sprite *sprite, ObjData *objData); + void dodoor(); + void dodoor(Sprite *sprite, ObjData *objData); + void doorway(Sprite *sprite, ObjData *objData); + void widedoor(Sprite *sprite, ObjData *objData); + void liftsprite(); + void liftsprite(Sprite *sprite, ObjData *objData); + void turnpathonCPP(uint8 param); + void turnpathoffCPP(uint8 param); + void modifychar(); + void lockmon(); + void cancelch0(); + void cancelch1(); diff --git a/engines/gob/inter.h b/engines/gob/inter.h index 78d5e34271..b1689e8d9e 100644 --- a/engines/gob/inter.h +++ b/engines/gob/inter.h @@ -477,9 +477,14 @@ protected: virtual void setupOpcodesGob(); void o3_getTotTextItemPart(OpFuncParams ¶ms); + void o3_speakerOn(OpFuncParams ¶ms); + void o3_speakerOff(OpFuncParams ¶ms); void o3_copySprite(OpFuncParams ¶ms); void o3_wobble(OpGobParams ¶ms); + +private: + bool _ignoreSpeakerOff; }; class Inter_Inca2 : public Inter_v3 { diff --git a/engines/gob/inter_v3.cpp b/engines/gob/inter_v3.cpp index 47486b0899..edf56012d9 100644 --- a/engines/gob/inter_v3.cpp +++ b/engines/gob/inter_v3.cpp @@ -31,6 +31,7 @@ #include "gob/game.h" #include "gob/script.h" #include "gob/resources.h" +#include "gob/sound/sound.h" namespace Gob { @@ -39,7 +40,7 @@ namespace Gob { #define OPCODEFUNC(i, x) _opcodesFunc[i]._OPCODEFUNC(OPCODEVER, x) #define OPCODEGOB(i, x) _opcodesGob[i]._OPCODEGOB(OPCODEVER, x) -Inter_v3::Inter_v3(GobEngine *vm) : Inter_v2(vm) { +Inter_v3::Inter_v3(GobEngine *vm) : Inter_v2(vm), _ignoreSpeakerOff(false) { } void Inter_v3::setupOpcodesDraw() { @@ -50,6 +51,8 @@ void Inter_v3::setupOpcodesFunc() { Inter_v2::setupOpcodesFunc(); OPCODEFUNC(0x1A, o3_getTotTextItemPart); + OPCODEFUNC(0x22, o3_speakerOn); + OPCODEFUNC(0x23, o3_speakerOff); OPCODEFUNC(0x32, o3_copySprite); } @@ -245,6 +248,36 @@ void Inter_v3::o3_getTotTextItemPart(OpFuncParams ¶ms) { delete textItem; } +void Inter_v3::o3_speakerOn(OpFuncParams ¶ms) { + int16 frequency = _vm->_game->_script->readValExpr(); + int32 length = -1; + + _ignoreSpeakerOff = false; + + // WORKAROUND: This is the footsteps sound. The scripts just fire + // speaker on" and then a "speaker off" after a short while. Since + // we have delay in certain places avoid 100% CPU all the time and + // our PC speaker emulator sometimes "swallows" very short beeper + // bursts issued in this way, this is in general quite wonky and + // prone to fail, as can be seen in bug report #3376547. Therefore, + // we explicitely set a length in this case and ignore the next + // speaker off command. + if (frequency == 50) { + length = 5; + + _ignoreSpeakerOff = true; + } + + _vm->_sound->speakerOn(frequency, length); +} + +void Inter_v3::o3_speakerOff(OpFuncParams ¶ms) { + if (!_ignoreSpeakerOff) + _vm->_sound->speakerOff(); + + _ignoreSpeakerOff = false; +} + void Inter_v3::o3_copySprite(OpFuncParams ¶ms) { o1_copySprite(params); diff --git a/engines/gob/scenery.cpp b/engines/gob/scenery.cpp index bb50818ed8..33fdfcaa2a 100644 --- a/engines/gob/scenery.cpp +++ b/engines/gob/scenery.cpp @@ -622,7 +622,7 @@ void Scenery::updateAnim(int16 layer, int16 frame, int16 animation, int16 flags, if (frame >= (int32)_vm->_vidPlayer->getFrameCount(obj.videoSlot - 1)) frame = _vm->_vidPlayer->getFrameCount(obj.videoSlot - 1) - 1; - if (_vm->_vidPlayer->getCurrentFrame(obj.videoSlot - 1) >= 255) { + if ((int32)_vm->_vidPlayer->getCurrentFrame(obj.videoSlot - 1) >= 255) { // Allow for object videos with more than 255 frames, although the // object frame counter is just a byte. diff --git a/engines/kyra/detection_tables.h b/engines/kyra/detection_tables.h index 165eddf599..2f2c21bc36 100644 --- a/engines/kyra/detection_tables.h +++ b/engines/kyra/detection_tables.h @@ -35,6 +35,7 @@ namespace { #define KYRA2_FLOPPY_FLAGS FLAGS(false, false, false, false, false, false, false, Kyra::GI_KYRA2) #define KYRA2_FLOPPY_CMP_FLAGS FLAGS(false, false, false, false, false, false, true, Kyra::GI_KYRA2) +#define KYRA2_FLOPPY_FAN_FLAGS(x, y) FLAGS_FAN(x, y, false, false, false, false, false, false, false, Kyra::GI_KYRA2) #define KYRA2_CD_FLAGS FLAGS(false, false, true, false, false, false, false, Kyra::GI_KYRA2) #define KYRA2_CD_FAN_FLAGS(x, y) FLAGS_FAN(x, y, false, false, true, false, false, false, false, Kyra::GI_KYRA2) #define KYRA2_CD_DEMO_FLAGS FLAGS(true, false, true, false, false, false, false, Kyra::GI_KYRA2) @@ -49,6 +50,7 @@ namespace { #define LOL_CD_FLAGS FLAGS(false, false, true, false, false, false, false, Kyra::GI_LOL) #define LOL_CD_FAN_FLAGS(x, y) FLAGS_FAN(x, y, false, false, true, false, false, false, false, Kyra::GI_LOL) #define LOL_FLOPPY_FLAGS FLAGS(false, false, false, false, false, false, false, Kyra::GI_LOL) +#define LOL_FLOPPY_FAN_FLAGS(x, y) FLAGS_FAN(x, y, false, false, false, false, false, false, false, Kyra::GI_LOL) #define LOL_FLOPPY_CMP_FLAGS FLAGS(false, false, false, false, false, false, true, Kyra::GI_LOL) #define LOL_PC98_SJIS_FLAGS FLAGS(false, false, false, true, true, false, false, Kyra::GI_LOL) #define LOL_DEMO_FLAGS FLAGS(true, true, false, false, false, false, false, Kyra::GI_LOL) @@ -95,12 +97,13 @@ const KYRAGameDescription adGameDescs[] = { }, KYRA1_FLOPPY_FLAGS }, + { { "kyra1", "Extracted", - AD_ENTRY1("GEMCUT.EMC", "689b62b7519215c1b2571d466c95624c"), - Common::RU_RUS, + AD_ENTRY1("GEMCUT.EMC", "796e44863dd22fa635b042df1bf16673"), + Common::EN_ANY, Common::kPlatformPC, ADGF_NO_FLAGS, Common::GUIO_NOSPEECH | Common::GUIO_MIDIADLIB | Common::GUIO_MIDIMT32 | Common::GUIO_MIDIPCSPK @@ -111,8 +114,8 @@ const KYRAGameDescription adGameDescs[] = { { "kyra1", "Extracted", - AD_ENTRY1("GEMCUT.EMC", "796e44863dd22fa635b042df1bf16673"), - Common::EN_ANY, + AD_ENTRY1("GEMCUT.EMC", "abf8eb360e79a6c2a837751fbd4d3d24"), + Common::FR_FRA, Common::kPlatformPC, ADGF_NO_FLAGS, Common::GUIO_NOSPEECH | Common::GUIO_MIDIADLIB | Common::GUIO_MIDIMT32 | Common::GUIO_MIDIPCSPK @@ -123,19 +126,19 @@ const KYRAGameDescription adGameDescs[] = { { "kyra1", "Extracted", - AD_ENTRY1("GEMCUT.EMC", "abf8eb360e79a6c2a837751fbd4d3d24"), - Common::FR_FRA, + AD_ENTRY1("GEMCUT.EMC", "6018e1dfeaca7fe83f8d0b00eb0dd049"), + Common::DE_DEU, Common::kPlatformPC, ADGF_NO_FLAGS, Common::GUIO_NOSPEECH | Common::GUIO_MIDIADLIB | Common::GUIO_MIDIMT32 | Common::GUIO_MIDIPCSPK }, KYRA1_FLOPPY_FLAGS }, - { + { // from Arne.F { "kyra1", "Extracted", - AD_ENTRY1("GEMCUT.EMC", "6018e1dfeaca7fe83f8d0b00eb0dd049"), + AD_ENTRY1("GEMCUT.EMC", "f0b276781f47c130f423ec9679fe9ed9"), Common::DE_DEU, Common::kPlatformPC, ADGF_NO_FLAGS, @@ -143,12 +146,12 @@ const KYRAGameDescription adGameDescs[] = { }, KYRA1_FLOPPY_FLAGS }, - { // from Arne.F + { { "kyra1", "Extracted", - AD_ENTRY1("GEMCUT.EMC", "f0b276781f47c130f423ec9679fe9ed9"), - Common::DE_DEU, + AD_ENTRY1("GEMCUT.EMC", "689b62b7519215c1b2571d466c95624c"), + Common::RU_RUS, Common::kPlatformPC, ADGF_NO_FLAGS, Common::GUIO_NOSPEECH | Common::GUIO_MIDIADLIB | Common::GUIO_MIDIMT32 | Common::GUIO_MIDIPCSPK @@ -498,6 +501,32 @@ const KYRAGameDescription adGameDescs[] = { KYRA2_FLOPPY_FLAGS }, + { // Floppy version extracted + { + "kyra2", + "Extracted", + AD_ENTRY1("CH01-S00.DLG", "54b7a5a94f6e1ec91f0fb1311eec09ab"), + Common::RU_RUS, + Common::kPlatformPC, + ADGF_NO_FLAGS, + Common::GUIO_NOSPEECH | Common::GUIO_MIDIADLIB | Common::GUIO_MIDIMT32 | Common::GUIO_MIDIGM | Common::GUIO_MIDIPCSPK + }, + KYRA2_FLOPPY_FAN_FLAGS(Common::RU_RUS, Common::EN_ANY) + }, + + { // Floppy version extracted + { + "kyra2", + "Extracted", + AD_ENTRY1("CH01-S00.DLG", "7c36c0e63ab8c81cbb3ea58681331366"), + Common::RU_RUS, + Common::kPlatformPC, + ADGF_NO_FLAGS, + Common::GUIO_NOSPEECH | Common::GUIO_MIDIADLIB | Common::GUIO_MIDIMT32 | Common::GUIO_MIDIGM | Common::GUIO_MIDIPCSPK + }, + KYRA2_FLOPPY_FAN_FLAGS(Common::RU_RUS, Common::EN_ANY) + }, + { // CD version { "kyra2", @@ -989,12 +1018,11 @@ const KYRAGameDescription adGameDescs[] = { "lol", "CD", { - { "GENERAL.PAK", 0, "19354b0f464295c38c801d30588df062", -1 }, - { "L01.PAK", 0, "174d37f21e0336c5d91020f8c58717ef", -1 }, - { "VOC.PAK", 0, "eb398f09ba3321d872b6174a68a987d9", -1 }, + { "GENERAL.PAK", 0, "05a4f588fb81dc9c0ef1f2ec20d89e24", -1 }, + { "L01.PAK", 0, "759a0ac26808d77ea968bd392355ba1d", -1 }, { 0, 0, 0, 0 } }, - Common::RU_RUS, + Common::DE_DEU, Common::kPlatformPC, ADGF_DROPLANGUAGE | ADGF_CD, Common::GUIO_MIDIADLIB | Common::GUIO_MIDIMT32 | Common::GUIO_MIDIGM | Common::GUIO_MIDIPCSPK @@ -1011,7 +1039,7 @@ const KYRAGameDescription adGameDescs[] = { { "L01.PAK", 0, "759a0ac26808d77ea968bd392355ba1d", -1 }, { 0, 0, 0, 0 } }, - Common::DE_DEU, + Common::FR_FRA, Common::kPlatformPC, ADGF_DROPLANGUAGE | ADGF_CD, Common::GUIO_MIDIADLIB | Common::GUIO_MIDIMT32 | Common::GUIO_MIDIGM | Common::GUIO_MIDIPCSPK @@ -1024,11 +1052,11 @@ const KYRAGameDescription adGameDescs[] = { "lol", "CD", { - { "GENERAL.PAK", 0, "05a4f588fb81dc9c0ef1f2ec20d89e24", -1 }, + { "GENERAL.PAK", 0, "9e4bab499b7ea9337b91ac29fcba6d13", -1 }, { "L01.PAK", 0, "759a0ac26808d77ea968bd392355ba1d", -1 }, { 0, 0, 0, 0 } }, - Common::FR_FRA, + Common::EN_ANY, Common::kPlatformPC, ADGF_DROPLANGUAGE | ADGF_CD, Common::GUIO_MIDIADLIB | Common::GUIO_MIDIMT32 | Common::GUIO_MIDIGM | Common::GUIO_MIDIPCSPK @@ -1045,7 +1073,7 @@ const KYRAGameDescription adGameDescs[] = { { "L01.PAK", 0, "759a0ac26808d77ea968bd392355ba1d", -1 }, { 0, 0, 0, 0 } }, - Common::EN_ANY, + Common::DE_DEU, Common::kPlatformPC, ADGF_DROPLANGUAGE | ADGF_CD, Common::GUIO_MIDIADLIB | Common::GUIO_MIDIMT32 | Common::GUIO_MIDIGM | Common::GUIO_MIDIPCSPK @@ -1062,7 +1090,7 @@ const KYRAGameDescription adGameDescs[] = { { "L01.PAK", 0, "759a0ac26808d77ea968bd392355ba1d", -1 }, { 0, 0, 0, 0 } }, - Common::DE_DEU, + Common::FR_FRA, Common::kPlatformPC, ADGF_DROPLANGUAGE | ADGF_CD, Common::GUIO_MIDIADLIB | Common::GUIO_MIDIMT32 | Common::GUIO_MIDIGM | Common::GUIO_MIDIPCSPK @@ -1070,13 +1098,32 @@ const KYRAGameDescription adGameDescs[] = { LOL_CD_FLAGS }, + // Russian fan translation { { "lol", "CD", { - { "GENERAL.PAK", 0, "9e4bab499b7ea9337b91ac29fcba6d13", -1 }, - { "L01.PAK", 0, "759a0ac26808d77ea968bd392355ba1d", -1 }, + { "GENERAL.PAK", 0, "19354b0f464295c38c801d30588df062", -1 }, + { "L01.PAK", 0, "174d37f21e0336c5d91020f8c58717ef", -1 }, + { 0, 0, 0, 0 } + }, + Common::EN_ANY, + Common::kPlatformPC, + ADGF_DROPLANGUAGE | ADGF_CD, + Common::GUIO_MIDIADLIB | Common::GUIO_MIDIMT32 | Common::GUIO_MIDIGM | Common::GUIO_MIDIPCSPK + }, + LOL_CD_FAN_FLAGS(Common::RU_RUS, Common::DE_DEU) + }, + + { + { + "lol", + "CD", + { + + { "GENERAL.PAK", 0, "19354b0f464295c38c801d30588df062", -1 }, + { "L01.PAK", 0, "174d37f21e0336c5d91020f8c58717ef", -1 }, { 0, 0, 0, 0 } }, Common::FR_FRA, @@ -1084,7 +1131,24 @@ const KYRAGameDescription adGameDescs[] = { ADGF_DROPLANGUAGE | ADGF_CD, Common::GUIO_MIDIADLIB | Common::GUIO_MIDIMT32 | Common::GUIO_MIDIGM | Common::GUIO_MIDIPCSPK }, - LOL_CD_FLAGS + LOL_CD_FAN_FLAGS(Common::RU_RUS, Common::DE_DEU) + }, + + { + { + "lol", + "CD", + { + { "GENERAL.PAK", 0, "19354b0f464295c38c801d30588df062", -1 }, + { "L01.PAK", 0, "174d37f21e0336c5d91020f8c58717ef", -1 }, + { 0, 0, 0, 0 } + }, + Common::RU_RUS, + Common::kPlatformPC, + ADGF_DROPLANGUAGE | ADGF_CD, + Common::GUIO_MIDIADLIB | Common::GUIO_MIDIMT32 | Common::GUIO_MIDIGM | Common::GUIO_MIDIPCSPK + }, + LOL_CD_FAN_FLAGS(Common::RU_RUS, Common::DE_DEU) }, // Italian fan translation @@ -1306,6 +1370,24 @@ const KYRAGameDescription adGameDescs[] = { LOL_FLOPPY_FLAGS }, + // Russian fan translation + { + { + "lol", + "Extracted", + { + { "GENERAL.PAK", 0, "d8f4c1153aed2418f41f886c3fb27543", -1 }, + { "CHAPTER7.PAK", 0, "f0b8a2fdff951738834fadc12248ac1f", -1 }, + { 0, 0, 0, 0 } + }, + Common::RU_RUS, + Common::kPlatformPC, + ADGF_NO_FLAGS, + Common::GUIO_NOSPEECH | Common::GUIO_MIDIADLIB | Common::GUIO_MIDIMT32 | Common::GUIO_MIDIGM | Common::GUIO_MIDIPCSPK + }, + LOL_FLOPPY_FAN_FLAGS(Common::RU_RUS, Common::EN_ANY) + }, + { { "lol", diff --git a/engines/kyra/gui_lol.cpp b/engines/kyra/gui_lol.cpp index c64d3e7723..9b70e536b8 100644 --- a/engines/kyra/gui_lol.cpp +++ b/engines/kyra/gui_lol.cpp @@ -395,8 +395,8 @@ void LoLEngine::gui_drawCharPortraitWithStats(int charNum) { } else { gui_drawLiveMagicBar(33, 32, _characters[charNum].magicPointsCur, 0, _characters[charNum].magicPointsMax, 5, 32, 162, 1, 0); gui_drawLiveMagicBar(39, 32, _characters[charNum].hitPointsCur, 0, _characters[charNum].hitPointsMax, 5, 32, 154, 1, 1); - _screen->printText(getLangString(0x4253), 33, 1, 160, 0); - _screen->printText(getLangString(0x4254), 39, 1, 152, 0); + _screen->printText((_flags.platform == Common::kPlatformPC && !_flags.isTalkie) ? "M" : getLangString(0x4253), 33, 1, 160, 0); + _screen->printText((_flags.platform == Common::kPlatformPC && !_flags.isTalkie) ? "H" : getLangString(0x4254), 39, 1, 152, 0); } int spellLevels = 0; diff --git a/engines/kyra/lol.cpp b/engines/kyra/lol.cpp index 2cca4fd4e3..7d7bb0ed4a 100644 --- a/engines/kyra/lol.cpp +++ b/engines/kyra/lol.cpp @@ -1038,11 +1038,14 @@ char *LoLEngine::getLangString(uint16 id) { char *string = (char *)getTableEntry(buffer, realId); char *srcBuffer = _stringBuffer[_lastUsedStringBuffer]; - if (_flags.lang != Common::JA_JPN) { - Util::decodeString1(string, srcBuffer); + if (_flags.lang == Common::JA_JPN) { + decodeSjis(string, srcBuffer); + } else if (_flags.lang == Common::RU_RUS && !_flags.isTalkie) { + decodeCyrillic(string, srcBuffer); Util::decodeString2(srcBuffer, srcBuffer); } else { - decodeSjis(string, srcBuffer); + Util::decodeString1(string, srcBuffer); + Util::decodeString2(srcBuffer, srcBuffer); } ++_lastUsedStringBuffer; @@ -1081,6 +1084,54 @@ void LoLEngine::decodeSjis(const char *src, char *dst) { *dst = 0; } +int LoLEngine::decodeCyrillic(const char *src, char *dst) { + static const uint8 decodeTable1[] = { + 0x20, 0xAE, 0xA5, 0xA0, 0xE2, 0xAD, 0xA8, 0xE0, 0xE1, 0xAB, 0xA2, + 0xA4, 0xAC, 0xAA, 0xE3, 0x2E + }; + + static const uint8 decodeTable2[] = { + 0xAD, 0xAF, 0xA2, 0xE1, 0xAC, 0xAA, 0x20, 0xA4, 0xAB, 0x20, + 0xE0, 0xE2, 0xA4, 0xA2, 0xA6, 0xAA, 0x20, 0xAD, 0xE2, 0xE0, + 0xAB, 0xAC, 0xE1, 0xA1, 0x20, 0xAC, 0xE1, 0xAA, 0xAB, 0xE0, + 0xE2, 0xAD, 0xAE, 0xEC, 0xA8, 0xA5, 0xA0, 0x20, 0xE0, 0xEB, + 0xAE, 0xA0, 0xA8, 0xA5, 0xEB, 0xEF, 0x20, 0xE3, 0xE2, 0x20, + 0xAD, 0xE7, 0xAB, 0xAC, 0xA5, 0xE0, 0xAE, 0xA0, 0xA5, 0xA8, + 0xE3, 0xEB, 0xEF, 0xAA, 0xE2, 0xEF, 0xA5, 0xEC, 0xAB, 0xAE, + 0xAA, 0xAF, 0xA8, 0xA0, 0xA5, 0xEF, 0xAE, 0xEE, 0xEC, 0xE3, + 0xA0, 0xAE, 0xA5, 0xA8, 0xEB, 0x20, 0xE0, 0xE3, 0xA0, 0xA5, + 0xAE, 0xA8, 0xE3, 0xE1, 0xAD, 0xAB, 0x20, 0xAE, 0xA5, 0xA0, + 0xA8, 0xAD, 0x2E, 0xE3, 0xAE, 0xA0, 0xA8, 0x20, 0xE0, 0xE3, + 0xAB, 0xE1, 0x20, 0xA4, 0xAD, 0xE2, 0xA1, 0xA6, 0xAC, 0xE1, + 0x0D, 0x20, 0x2E, 0x09, 0xA0, 0xA1, 0x9D, 0xA5 + }; + + int size = 0; + uint cChar = 0; + while ((cChar = *src++) != 0) { + if (cChar & 0x80) { + cChar &= 0x7F; + int index = (cChar & 0x78) >> 3; + *dst++ = decodeTable1[index]; + ++size; + assert(cChar < sizeof(decodeTable2)); + cChar = decodeTable2[cChar]; + } else if (cChar >= 0x70) { + cChar = *src++; + } else if (cChar >= 0x30) { + if (cChar < 0x60) + cChar -= 0x30; + cChar |= 0x80; + } + + *dst++ = cChar; + ++size; + } + + *dst++ = 0; + return size; +} + bool LoLEngine::addCharacter(int id) { const uint16 *cdf[] = { _charDefsMan, _charDefsMan, _charDefsMan, _charDefsWoman, _charDefsMan, _charDefsMan, _charDefsWoman, _charDefsKieran, _charDefsAkshel }; diff --git a/engines/kyra/lol.h b/engines/kyra/lol.h index 06a4f29f63..3b887c2a86 100644 --- a/engines/kyra/lol.h +++ b/engines/kyra/lol.h @@ -363,12 +363,13 @@ private: void showIntro(); struct CharacterPrev { - const char *name; int x, y; int attrib[3]; }; static const CharacterPrev _charPreviews[]; + static const char *const _charPreviewNamesDefault[]; + static const char *const _charPreviewNamesRussianFloppy[]; // PC98 specific data static const uint16 _charPosXPC98[]; @@ -875,6 +876,7 @@ private: char *getLangString(uint16 id); uint8 *getTableEntry(uint8 *buffer, uint16 id); void decodeSjis(const char *src, char *dst); + int decodeCyrillic(const char *src, char *dst); static const char * const _languageExt[]; diff --git a/engines/kyra/sequences_lol.cpp b/engines/kyra/sequences_lol.cpp index 27f3951faf..d887133b70 100644 --- a/engines/kyra/sequences_lol.cpp +++ b/engines/kyra/sequences_lol.cpp @@ -316,8 +316,9 @@ int LoLEngine::chooseCharacter() { _screen->printText(_tim->getCTableEntry(53), 72, 184, 0x81, 0x00); _screen->printText(_tim->getCTableEntry(55), 72, 192, 0x81, 0x00); } else { + const char *const *previewNames = (_flags.lang == Common::RU_RUS && !_flags.isTalkie) ? _charPreviewNamesRussianFloppy : _charPreviewNamesDefault; for (int i = 0; i < 4; ++i) { - _screen->fprintStringIntro("%s", _charPreviews[i].x + 16, _charPreviews[i].y + 36, 0xC0, 0x00, 0x9C, 0x120, _charPreviews[i].name); + _screen->fprintStringIntro("%s", _charPreviews[i].x + 16, _charPreviews[i].y + 36, 0xC0, 0x00, 0x9C, 0x120, previewNames[i]); _screen->fprintStringIntro("%d", _charPreviews[i].x + 21, _charPreviews[i].y + 48, 0x98, 0x00, 0x9C, 0x220, _charPreviews[i].attrib[0]); _screen->fprintStringIntro("%d", _charPreviews[i].x + 21, _charPreviews[i].y + 56, 0x98, 0x00, 0x9C, 0x220, _charPreviews[i].attrib[1]); _screen->fprintStringIntro("%d", _charPreviews[i].x + 21, _charPreviews[i].y + 64, 0x98, 0x00, 0x9C, 0x220, _charPreviews[i].attrib[2]); diff --git a/engines/kyra/staticres.cpp b/engines/kyra/staticres.cpp index d56abc5d47..c9e994f71e 100644 --- a/engines/kyra/staticres.cpp +++ b/engines/kyra/staticres.cpp @@ -38,7 +38,7 @@ namespace Kyra { -#define RESFILE_VERSION 74 +#define RESFILE_VERSION 77 namespace { bool checkKyraDat(Common::SeekableReadStream *file) { diff --git a/engines/kyra/staticres_lol.cpp b/engines/kyra/staticres_lol.cpp index cf75a317e1..e4029505bf 100644 --- a/engines/kyra/staticres_lol.cpp +++ b/engines/kyra/staticres_lol.cpp @@ -687,11 +687,25 @@ const char * const LoLEngine::_languageExt[] = { "GER" }; +const char *const LoLEngine::_charPreviewNamesDefault[] = { + "Ak\'shel", + "Michael", + "Kieran", + "Conrad" +}; + +const char *const LoLEngine::_charPreviewNamesRussianFloppy[] = { + "\x80\xAA\xE8\xA5\xAB\0", + "\x8C\xA0\xA9\xAA\xAB\0", + "\x8A\xA8\xE0\xA0\xAD\0", + "\x8A\xAE\xAD\xE0\xA0\xA4\0" +}; + const LoLEngine::CharacterPrev LoLEngine::_charPreviews[] = { - { "Ak\'shel", 0x060, 0x7F, { 0x0F, 0x08, 0x05 } }, - { "Michael", 0x09A, 0x7F, { 0x06, 0x0A, 0x0F } }, - { "Kieran", 0x0D4, 0x7F, { 0x08, 0x06, 0x08 } }, - { "Conrad", 0x10F, 0x7F, { 0x0A, 0x0C, 0x0A } } + { 0x060, 0x7F, { 0x0F, 0x08, 0x05 } }, + { 0x09A, 0x7F, { 0x06, 0x0A, 0x0F } }, + { 0x0D4, 0x7F, { 0x08, 0x06, 0x08 } }, + { 0x10F, 0x7F, { 0x0A, 0x0C, 0x0A } } }; const uint16 LoLEngine::_charPosXPC98[] = { diff --git a/engines/sci/engine/kstring.cpp b/engines/sci/engine/kstring.cpp index 7b8db22e3f..b383f88840 100644 --- a/engines/sci/engine/kstring.cpp +++ b/engines/sci/engine/kstring.cpp @@ -336,8 +336,9 @@ reg_t kFormat(EngineState *s, int argc, reg_t *argv) { if (align >= 0) while (str_leng-- > 1) *target++ = ' '; /* Format into the text */ - - *target++ = arguments[paramindex++]; + char argchar = arguments[paramindex++]; + if (argchar) + *target++ = argchar; mode = 0; } break; diff --git a/engines/scumm/detection.cpp b/engines/scumm/detection.cpp index 18f2f4ddec..d3514645d3 100644 --- a/engines/scumm/detection.cpp +++ b/engines/scumm/detection.cpp @@ -142,6 +142,14 @@ Common::String ScummEngine_v70he::generateFilename(const int room) const { Common::String result; char id = 0; + Common::String bPattern = _filenamePattern.pattern; + + // Special cases for Blue's games, which share common (b) files + if (_game.id == GID_BIRTHDAY && !(_game.features & GF_DEMO)) + bPattern = "Blue'sBirthday"; + else if (_game.id == GID_TREASUREHUNT) + bPattern = "Blue'sTreasureHunt"; + switch (_filenamePattern.genMethod) { case kGenHEMac: case kGenHEMacNoParens: @@ -154,13 +162,7 @@ Common::String ScummEngine_v70he::generateFilename(const int room) const { switch (disk) { case 2: id = 'b'; - // Special cases for Blue's games, which share common (b) files - if (_game.id == GID_BIRTHDAY && !(_game.features & GF_DEMO)) - result = "Blue'sBirthday.(b)"; - else if (_game.id == GID_TREASUREHUNT) - result = "Blue'sTreasureHunt.(b)"; - else - result = Common::String::format("%s.(b)", _filenamePattern.pattern); + result = bPattern + ".(b)"; break; case 1: id = 'a'; @@ -185,10 +187,11 @@ Common::String ScummEngine_v70he::generateFilename(const int room) const { // For mac they're stored in game binary result = _filenamePattern.pattern; } else { + Common::String pattern = id == 'b' ? bPattern : _filenamePattern.pattern; if (_filenamePattern.genMethod == kGenHEMac) - result = Common::String::format("%s (%c)", _filenamePattern.pattern, id); + result = Common::String::format("%s (%c)", pattern.c_str(), id); else - result = Common::String::format("%s %c", _filenamePattern.pattern, id); + result = Common::String::format("%s %c", pattern.c_str(), id); } } diff --git a/engines/scumm/he/animation_he.cpp b/engines/scumm/he/animation_he.cpp index 74183c24d3..40e99c26a8 100644 --- a/engines/scumm/he/animation_he.cpp +++ b/engines/scumm/he/animation_he.cpp @@ -26,27 +26,42 @@ #include "scumm/he/intern_he.h" #include "audio/audiostream.h" +#include "video/smk_decoder.h" + +#ifdef USE_BINK +#include "video/bink_decoder.h" +#endif namespace Scumm { -MoviePlayer::MoviePlayer(ScummEngine_v90he *vm, Audio::Mixer *mixer) - : SmackerDecoder(mixer), _vm(vm), _mixer(mixer) { +MoviePlayer::MoviePlayer(ScummEngine_v90he *vm, Audio::Mixer *mixer) : _vm(vm) { +#ifdef USE_BINK + if (_vm->_game.heversion >= 100 && (_vm->_game.features & GF_16BIT_COLOR)) + _video = new Video::BinkDecoder(); + else +#endif + _video = new Video::SmackerDecoder(mixer); _flags = 0; _wizResNum = 0; } +MoviePlayer::~MoviePlayer() { + delete _video; +} + int MoviePlayer::getImageNum() { - if (!isVideoLoaded()) + if (!_video->isVideoLoaded()) return 0; + return _wizResNum; } int MoviePlayer::load(const char *filename, int flags, int image) { - if (isVideoLoaded()) - close(); + if (_video->isVideoLoaded()) + _video->close(); - if (!loadFile(filename)) { + if (!_video->loadFile(filename)) { warning("Failed to load video file %s", filename); return -1; } @@ -54,7 +69,7 @@ int MoviePlayer::load(const char *filename, int flags, int image) { debug(1, "Playing video %s", filename); if (flags & 2) - _vm->_wiz->createWizEmptyImage(image, 0, 0, getWidth(), getHeight()); + _vm->_wiz->createWizEmptyImage(image, 0, 0, _video->getWidth(), _video->getHeight()); _flags = flags; _wizResNum = image; @@ -62,34 +77,59 @@ int MoviePlayer::load(const char *filename, int flags, int image) { } void MoviePlayer::copyFrameToBuffer(byte *dst, int dstType, uint x, uint y, uint pitch) { - uint h = getHeight(); - uint w = getWidth(); + uint h = _video->getHeight(); + uint w = _video->getWidth(); + + const Graphics::Surface *surface = _video->decodeNextFrame(); + + if (!surface) + return; - const Graphics::Surface *surface = decodeNextFrame(); byte *src = (byte *)surface->pixels; - if (hasDirtyPalette()) - _vm->setPaletteFromPtr(getPalette(), 256); + if (_video->hasDirtyPalette()) + _vm->setPaletteFromPtr(_video->getPalette(), 256); if (_vm->_game.features & GF_16BIT_COLOR) { - dst += y * pitch + x * 2; - do { - for (uint i = 0; i < w; i++) { - uint16 color = READ_LE_UINT16(_vm->_hePalettes + _vm->_hePaletteSlot + 768 + src[i] * 2); - switch (dstType) { - case kDstScreen: - WRITE_UINT16(dst + i * 2, color); - break; - case kDstResource: - WRITE_LE_UINT16(dst + i * 2, color); - break; - default: - error("copyFrameToBuffer: Unknown dstType %d", dstType); + if (surface->format.bytesPerPixel == 1) { + dst += y * pitch + x * 2; + do { + for (uint i = 0; i < w; i++) { + uint16 color = READ_LE_UINT16(_vm->_hePalettes + _vm->_hePaletteSlot + 768 + src[i] * 2); + switch (dstType) { + case kDstScreen: + WRITE_UINT16(dst + i * 2, color); + break; + case kDstResource: + WRITE_LE_UINT16(dst + i * 2, color); + break; + default: + error("copyFrameToBuffer: Unknown dstType %d", dstType); + } } - } - dst += pitch; - src += w; - } while (--h); + dst += pitch; + src += w; + } while (--h); + } else { + dst += y * pitch + x * 2; + do { + for (uint i = 0; i < w; i++) { + uint16 color = *((uint16 *)src + i); + switch (dstType) { + case kDstScreen: + WRITE_UINT16(dst + i * 2, color); + break; + case kDstResource: + WRITE_LE_UINT16(dst + i * 2, color); + break; + default: + error("copyFrameToBuffer: Unknown dstType %d", dstType); + } + } + dst += pitch; + src += surface->pitch; + } while (--h); + } } else { dst += y * pitch + x; do { @@ -101,7 +141,7 @@ void MoviePlayer::copyFrameToBuffer(byte *dst, int dstType, uint x, uint y, uint } void MoviePlayer::handleNextFrame() { - if (!isVideoLoaded()) + if (!_video->isVideoLoaded()) return; VirtScreen *pvs = &_vm->_virtscr[kMainVirtScreen]; @@ -115,17 +155,37 @@ void MoviePlayer::handleNextFrame() { } else if (_flags & 1) { copyFrameToBuffer(pvs->getBackPixels(0, 0), kDstScreen, 0, 0, pvs->pitch); - Common::Rect imageRect(getWidth(), getHeight()); + Common::Rect imageRect(_video->getWidth(), _video->getHeight()); _vm->restoreBackgroundHE(imageRect); } else { copyFrameToBuffer(pvs->getPixels(0, 0), kDstScreen, 0, 0, pvs->pitch); - Common::Rect imageRect(getWidth(), getHeight()); + Common::Rect imageRect(_video->getWidth(), _video->getHeight()); _vm->markRectAsDirty(kMainVirtScreen, imageRect); } - if (endOfVideo()) - close(); + if (_video->endOfVideo()) + _video->close(); +} + +void MoviePlayer::close() { + _video->close(); +} + +int MoviePlayer::getWidth() const { + return _video->getWidth(); +} + +int MoviePlayer::getHeight() const { + return _video->getHeight(); +} + +int MoviePlayer::getFrameCount() const { + return _video->getFrameCount(); +} + +int MoviePlayer::getCurFrame() const { + return _video->endOfVideo() ? -1 : _video->getCurFrame() + 1; } } // End of namespace Scumm diff --git a/engines/scumm/he/animation_he.h b/engines/scumm/he/animation_he.h index b3405fead0..7fa31a195d 100644 --- a/engines/scumm/he/animation_he.h +++ b/engines/scumm/he/animation_he.h @@ -23,34 +23,41 @@ #if !defined(SCUMM_HE_ANIMATION_H) && defined(ENABLE_HE) #define SCUMM_HE_ANIMATION_H -#include "video/smk_decoder.h" - #include "audio/mixer.h" +namespace Video { + class VideoDecoder; +} + namespace Scumm { class ScummEngine_v90he; -class MoviePlayer : public Video::SmackerDecoder { - ScummEngine_v90he *_vm; - - Audio::Mixer *_mixer; - - Audio::SoundHandle _bgSound; - Audio::AudioStream *_bgSoundStream; - - char baseName[40]; - uint32 _flags; - uint32 _wizResNum; - +class MoviePlayer { public: MoviePlayer(ScummEngine_v90he *vm, Audio::Mixer *mixer); + ~MoviePlayer(); int getImageNum(); int load(const char *filename, int flags, int image = 0); void copyFrameToBuffer(byte *dst, int dstType, uint x, uint y, uint pitch); void handleNextFrame(); + + void close(); + int getWidth() const; + int getHeight() const; + int getFrameCount() const; + int getCurFrame() const; + +private: + ScummEngine_v90he *_vm; + + Video::VideoDecoder *_video; + + char baseName[40]; + uint32 _flags; + uint32 _wizResNum; }; } // End of namespace Scumm diff --git a/engines/scumm/he/script_v100he.cpp b/engines/scumm/he/script_v100he.cpp index e057ab524a..5a9172ff8a 100644 --- a/engines/scumm/he/script_v100he.cpp +++ b/engines/scumm/he/script_v100he.cpp @@ -2933,7 +2933,7 @@ void ScummEngine_v100he::o100_getVideoData() { break; case 73: pop(); - push(_moviePlay->endOfVideo() ? -1 : (_moviePlay->getCurFrame() + 1)); + push(_moviePlay->getCurFrame()); break; case 84: pop(); diff --git a/engines/scumm/he/script_v60he.cpp b/engines/scumm/he/script_v60he.cpp index cf7d9fbd2f..dbeee567bf 100644 --- a/engines/scumm/he/script_v60he.cpp +++ b/engines/scumm/he/script_v60he.cpp @@ -94,6 +94,12 @@ int ScummEngine_v60he::convertFilePath(byte *dst, int dstSize) { debug(1, "convertFilePath: original filePath is %s", dst); int len = resStrLen(dst); + + // Switch all \ to / for portablity + for (int i = 0; i < len; i++) + if (dst[i] == '\\') + dst[i] = '/'; + if (_game.platform == Common::kPlatformMacintosh) { // Remove : prefix in HE71 games if (dst[0] == ':') { @@ -107,12 +113,6 @@ int ScummEngine_v60he::convertFilePath(byte *dst, int dstSize) { if (dst[i] == ':') dst[i] = '/'; } - } else { - // Switch all \ to / for portablity - for (int i = 0; i < len; i++) { - if (dst[i] == '\\') - dst[i] = '/'; - } } // Strip path diff --git a/engines/scumm/he/script_v90he.cpp b/engines/scumm/he/script_v90he.cpp index 6b632d8ff2..66a0a34d16 100644 --- a/engines/scumm/he/script_v90he.cpp +++ b/engines/scumm/he/script_v90he.cpp @@ -1460,7 +1460,7 @@ void ScummEngine_v90he::o90_getVideoData() { break; case 52: // Get current frame pop(); - push(_moviePlay->endOfVideo() ? -1 : (_moviePlay->getCurFrame() + 1)); + push(_moviePlay->getCurFrame()); break; case 63: // Get image number pop(); diff --git a/engines/scumm/sound.cpp b/engines/scumm/sound.cpp index 544abe6b1d..c3cad19fdc 100644 --- a/engines/scumm/sound.cpp +++ b/engines/scumm/sound.cpp @@ -1142,9 +1142,22 @@ int ScummEngine::readSoundResource(ResId idx) { break; } + // We only allow SPK resources for PC Speaker, PCJr and CMS here + // since other resource would sound horribly with their output + // drivers. if ((_musicType == MDT_PCSPK || _musicType == MDT_PCJR || _musicType == MDT_CMS) && pri != 11) pri = -1; + // We only allow ADL resources when AdLib or FM-Towns is used as + // primary audio output. This fixes some odd sounds when Indy and + // Sophia leave Atlantis with the submarine in Indy4. (Easy to + // check with bootparam 4061 in the CD version). It seems the game + // only contains a ROL resource for sound id 60. Formerly we tried + // to play that via the AdLib or FM-Towns audio driver resulting + // in strange noises. Now we behave like the original did. + if ((_musicType == MDT_ADLIB || _musicType == MDT_TOWNS) && pri != 10) + pri = -1; + debugC(DEBUG_RESOURCE, " tag: %s, total_size=%d, pri=%d", tag2str(tag), size, pri); diff --git a/engines/scumm/vars.cpp b/engines/scumm/vars.cpp index 56f8de2ad1..4527d7a121 100644 --- a/engines/scumm/vars.cpp +++ b/engines/scumm/vars.cpp @@ -704,8 +704,12 @@ void ScummEngine_v99he::resetScummVars() { VAR(VAR_NUM_UNK) = _numUnk; if (_game.heversion >= 100 && (_game.features & GF_16BIT_COLOR)) { - // Disable Bink and Smacker video in 16bit color games + // Enable Bink video in 16bit color games +#ifdef USE_BINK + VAR(140) = 1; +#else VAR(140) = 0; +#endif } } #endif diff --git a/engines/toon/path.cpp b/engines/toon/path.cpp index 43a134e39b..785b84a78e 100644 --- a/engines/toon/path.cpp +++ b/engines/toon/path.cpp @@ -28,7 +28,7 @@ namespace Toon { PathFindingHeap::PathFindingHeap() { _count = 0; - _alloc = 0; + _size = 0; _data = NULL; } @@ -36,46 +36,50 @@ PathFindingHeap::~PathFindingHeap() { delete[] _data; } -int32 PathFindingHeap::init(int32 size) { +void PathFindingHeap::init(int32 size) { debugC(1, kDebugPath, "init(%d)", size); + _size = size; delete[] _data; - _data = new HeapDataGrid[size * 2]; - memset(_data, 0, sizeof(HeapDataGrid) * size * 2); + _data = new HeapDataGrid[_size]; + memset(_data, 0, sizeof(HeapDataGrid) * _size); _count = 0; - _alloc = size; - return size; } -int32 PathFindingHeap::unload() { +void PathFindingHeap::unload() { + _count = 0; + _size = 0; delete[] _data; _data = NULL; - return 0; } -int32 PathFindingHeap::clear() { - //debugC(1, kDebugPath, "clear()"); +void PathFindingHeap::clear() { + debugC(1, kDebugPath, "clear()"); _count = 0; - memset(_data, 0, sizeof(HeapDataGrid) * _alloc * 2); - return 1; + memset(_data, 0, sizeof(HeapDataGrid) * _size); } -int32 PathFindingHeap::push(int32 x, int32 y, int32 weight) { - //debugC(6, kDebugPath, "push(%d, %d, %d)", x, y, weight); +void PathFindingHeap::push(int32 x, int32 y, int32 weight) { + debugC(2, kDebugPath, "push(%d, %d, %d)", x, y, weight); + + if (_count == _size) { + warning("Aborting attempt to push onto PathFindingHeap at maximum size: %d", _count); + return; + } - _count++; _data[_count]._x = x; _data[_count]._y = y; _data[_count]._weight = weight; + _count++; - int32 lMax = _count; + int32 lMax = _count-1; int32 lT = 0; while (1) { - lT = lMax / 2; - if (lT < 1) + if (lMax <= 0) break; + lT = (lMax-1) / 2; if (_data[lT]._weight > _data[lMax]._weight) { HeapDataGrid temp; @@ -87,31 +91,31 @@ int32 PathFindingHeap::push(int32 x, int32 y, int32 weight) { break; } } - return 1; } -int32 PathFindingHeap::pop(int32 *x, int32 *y, int32 *weight) { - //debugC(6, kDebugPath, "pop(x, y, weight)"); +void PathFindingHeap::pop(int32 *x, int32 *y, int32 *weight) { + debugC(2, kDebugPath, "pop(x, y, weight)"); - if (!_count) - return 0; + if (!_count) { + warning("Attempt to pop empty PathFindingHeap!"); + return; + } - *x = _data[1]._x; - *y = _data[1]._y; - *weight = _data[1]._weight; + *x = _data[0]._x; + *y = _data[0]._y; + *weight = _data[0]._weight; - _data[1] = _data[_count]; - _count--; + _data[0] = _data[--_count]; if (!_count) - return 0; + return; - int32 lMin = 1; - int32 lT = 1; + int32 lMin = 0; + int32 lT = 0; while (1) { - lT = lMin << 1; - if (lT <= _count) { - if (lT < _count) { + lT = (lMin << 1) + 1; + if (lT < _count) { + if (lT < _count-1) { if (_data[lT + 1]._weight < _data[lT]._weight) lT++; } @@ -129,7 +133,6 @@ int32 PathFindingHeap::pop(int32 *x, int32 *y, int32 *weight) { break; } } - return 0; } PathFinding::PathFinding(ToonEngine *vm) : _vm(vm) { @@ -164,7 +167,7 @@ bool PathFinding::isLikelyWalkable(int32 x, int32 y) { } bool PathFinding::isWalkable(int32 x, int32 y) { - //debugC(6, kDebugPath, "isWalkable(%d, %d)", x, y); + debugC(2, kDebugPath, "isWalkable(%d, %d)", x, y); bool maskWalk = (_currentMask->getData(x, y) & 0x1f) > 0; @@ -299,7 +302,7 @@ int32 PathFinding::findPath(int32 x, int32 y, int32 destx, int32 desty) { _heap->push(curX, curY, abs(destx - x) + abs(desty - y)); int wei = 0; - while (_heap->_count) { + while (_heap->getCount()) { wei = 0; _heap->pop(&curX, &curY, &curWeight); int curNode = curX + curY * _width; diff --git a/engines/toon/path.h b/engines/toon/path.h index 329127c9ce..2de58064f0 100644 --- a/engines/toon/path.h +++ b/engines/toon/path.h @@ -38,17 +38,18 @@ public: PathFindingHeap(); ~PathFindingHeap(); - int32 _alloc; - int32 _count; - - int32 push(int32 x, int32 y, int32 weight); - int32 pop(int32 *x, int32 *y, int32 *weight); - int32 init(int32 size); - int32 clear(); - int32 unload(); + void push(int32 x, int32 y, int32 weight); + void pop(int32 *x, int32 *y, int32 *weight); + void init(int32 size); + void clear(); + void unload(); + int32 getCount() { return _count; } private: HeapDataGrid *_data; + + int32 _size; + int32 _count; }; class PathFinding { diff --git a/engines/tsage/converse.cpp b/engines/tsage/converse.cpp index b475310533..0ae575c557 100644 --- a/engines/tsage/converse.cpp +++ b/engines/tsage/converse.cpp @@ -416,13 +416,13 @@ int ConversationChoiceDialog::execute(const Common::StringArray &choiceList) { // Event handling loop Event event; - while (!_vm->getEventManager()->shouldQuit()) { + while (!_vm->shouldQuit()) { while (!_globals->_events.getEvent(event, EVENT_KEYPRESS | EVENT_BUTTON_DOWN | EVENT_MOUSE_MOVE) && - !_vm->getEventManager()->shouldQuit()) { + !_vm->shouldQuit()) { g_system->delayMillis(10); g_system->updateScreen(); } - if (_vm->getEventManager()->shouldQuit()) + if (_vm->shouldQuit()) break; if ((event.eventType == EVENT_KEYPRESS) && (event.kbd.keycode >= Common::KEYCODE_1) && diff --git a/engines/tsage/core.cpp b/engines/tsage/core.cpp index 76714a6f10..d0075d5acf 100644 --- a/engines/tsage/core.cpp +++ b/engines/tsage/core.cpp @@ -1552,7 +1552,7 @@ void SceneItem::display(int resNum, int lineNum, ...) { Event event; // Keep event on-screen until a mouse or keypress - while (!_vm->getEventManager()->shouldQuit() && !_globals->_events.getEvent(event, + while (!_vm->shouldQuit() && !_globals->_events.getEvent(event, EVENT_BUTTON_DOWN | EVENT_KEYPRESS)) { g_system->updateScreen(); g_system->delayMillis(10); diff --git a/engines/tsage/dialogs.cpp b/engines/tsage/dialogs.cpp index 86fbbc8e43..d315ce092b 100644 --- a/engines/tsage/dialogs.cpp +++ b/engines/tsage/dialogs.cpp @@ -243,7 +243,7 @@ void RightClickDialog::execute() { // Dialog event handler loop _gfxManager.activate(); - while (!_vm->getEventManager()->shouldQuit() && (_selectedAction == -1)) { + while (!_vm->shouldQuit() && (_selectedAction == -1)) { Event evt; while (_globals->_events.getEvent(evt, EVENT_MOUSE_MOVE | EVENT_BUTTON_DOWN)) { evt.mousePos.x -= _bounds.left; @@ -465,14 +465,14 @@ void InventoryDialog::execute() { bool lookFlag = false; _gfxManager.activate(); - while (!_vm->getEventManager()->shouldQuit()) { + while (!_vm->shouldQuit()) { // Get events Event event; - while (!_globals->_events.getEvent(event) && !_vm->getEventManager()->shouldQuit()) { + while (!_globals->_events.getEvent(event) && !_vm->shouldQuit()) { g_system->delayMillis(10); g_system->updateScreen(); } - if (_vm->getEventManager()->shouldQuit()) + if (_vm->shouldQuit()) break; hiliteObj = NULL; diff --git a/engines/tsage/events.cpp b/engines/tsage/events.cpp index a24f65421b..010117ec78 100644 --- a/engines/tsage/events.cpp +++ b/engines/tsage/events.cpp @@ -78,7 +78,7 @@ bool EventsClass::pollEvent() { void EventsClass::waitForPress(int eventMask) { Event evt; - while (!_vm->getEventManager()->shouldQuit() && !getEvent(evt, eventMask)) + while (!_vm->shouldQuit() && !getEvent(evt, eventMask)) g_system->delayMillis(10); } @@ -86,7 +86,7 @@ void EventsClass::waitForPress(int eventMask) { * Standard event retrieval, which only returns keyboard and mouse clicks */ bool EventsClass::getEvent(Event &evt, int eventMask) { - while (pollEvent() && !_vm->getEventManager()->shouldQuit()) { + while (pollEvent() && !_vm->shouldQuit()) { evt.handled = false; evt.eventType = EVENT_NONE; evt.mousePos = _event.mouse; diff --git a/engines/tsage/graphics.cpp b/engines/tsage/graphics.cpp index fce9e1317d..87ffdf4494 100644 --- a/engines/tsage/graphics.cpp +++ b/engines/tsage/graphics.cpp @@ -408,7 +408,7 @@ bool GfxSurface::displayText(const Common::String &msg, const Common::Point &pt) // Write for a mouse or keypress Event event; - while (!_globals->_events.getEvent(event, EVENT_BUTTON_DOWN | EVENT_KEYPRESS) && !_vm->getEventManager()->shouldQuit()) + while (!_globals->_events.getEvent(event, EVENT_BUTTON_DOWN | EVENT_KEYPRESS) && !_vm->shouldQuit()) ; // Restore the display area @@ -718,7 +718,7 @@ bool GfxElement::focusedEvent(Event &event) { int xOffset = mousePos.x - _globals->_events._mousePos.x; int yOffset = mousePos.y - _globals->_events._mousePos.y; - while (event.eventType != EVENT_BUTTON_UP && !_vm->getEventManager()->shouldQuit()) { + while (event.eventType != EVENT_BUTTON_UP && !_vm->shouldQuit()) { g_system->delayMillis(10); if (_bounds.contains(mousePos)) { @@ -1029,7 +1029,7 @@ GfxButton *GfxDialog::execute(GfxButton *defaultButton) { GfxButton *selectedButton = NULL; bool breakFlag = false; - while (!_vm->getEventManager()->shouldQuit() && !breakFlag) { + while (!_vm->shouldQuit() && !breakFlag) { Event event; while (_globals->_events.getEvent(event) && !breakFlag) { // Adjust mouse positions to be relative within the dialog diff --git a/engines/tsage/ringworld_logic.cpp b/engines/tsage/ringworld_logic.cpp index 58501172af..070d8afd25 100644 --- a/engines/tsage/ringworld_logic.cpp +++ b/engines/tsage/ringworld_logic.cpp @@ -296,7 +296,7 @@ void SceneArea::draw(bool flag) { void SceneArea::wait() { // Wait until a mouse or keypress Event event; - while (!_vm->getEventManager()->shouldQuit() && !_globals->_events.getEvent(event)) { + while (!_vm->shouldQuit() && !_globals->_events.getEvent(event)) { g_system->updateScreen(); g_system->delayMillis(10); } diff --git a/engines/tsage/ringworld_scenes3.cpp b/engines/tsage/ringworld_scenes3.cpp index 824a96a18b..3f9921b0ad 100644 --- a/engines/tsage/ringworld_scenes3.cpp +++ b/engines/tsage/ringworld_scenes3.cpp @@ -526,7 +526,7 @@ void Scene2100::Action1::signal() { _state = 0; _globals->_events.setCursor(CURSOR_USE); - while (!_state && !_vm->getEventManager()->shouldQuit()) { + while (!_state && !_vm->shouldQuit()) { // Wait for an event Event event; if (!_globals->_events.getEvent(event)) { @@ -2257,7 +2257,7 @@ void Scene2150::Action1::signal() { _state = 0; _globals->_events.setCursor(CURSOR_USE); - while (!_state && !_vm->getEventManager()->shouldQuit()) { + while (!_state && !_vm->shouldQuit()) { // Wait for an event Event event; if (!_globals->_events.getEvent(event)) { @@ -5112,7 +5112,7 @@ void Scene2320::Action3::signal() { _state = 0; _globals->_events.setCursor(CURSOR_USE); - while (!_state && !_vm->getEventManager()->shouldQuit()) { + while (!_state && !_vm->shouldQuit()) { // Wait for an event Event event; if (!_globals->_events.getEvent(event)) { diff --git a/engines/tsage/scenes.cpp b/engines/tsage/scenes.cpp index 18b3da2698..b94e95c696 100644 --- a/engines/tsage/scenes.cpp +++ b/engines/tsage/scenes.cpp @@ -511,7 +511,7 @@ void Game::execute() { activeFlag = true; } } - } while (activeFlag && !_vm->getEventManager()->shouldQuit()); + } while (activeFlag && !_vm->shouldQuit()); } } // End of namespace tSage diff --git a/engines/tsage/sound.cpp b/engines/tsage/sound.cpp index e26b3d1544..3f02d635ab 100644 --- a/engines/tsage/sound.cpp +++ b/engines/tsage/sound.cpp @@ -66,7 +66,7 @@ SoundManager::~SoundManager() { } _sfTerminate(); - g_system->getTimerManager()->removeTimerProc(_sfUpdateCallback); +// g_system->getTimerManager()->removeTimerProc(_sfUpdateCallback); } _soundManager = NULL; @@ -78,9 +78,12 @@ void SoundManager::postInit() { _saver->addLoadNotifier(&SoundManager::loadNotifier); _saver->addListener(this); - // Install a timer for handling sound manager updates at 60Hz - g_system->getTimerManager()->installTimerProc(_sfUpdateCallback, 1000000 / GAME_FRAME_RATE, NULL); +// I originally separated the sound manager update method into a separate thread, since +// it handles updates for both music and Fx. However, since Adlib updates also get done in a +// thread, and doesn't get too far ahead, I've left it to the AdlibSoundDriver class to +// call the update method, rather than having it be called separately +// g_system->getTimerManager()->installTimerProc(_sfUpdateCallback, 1000000 / SOUND_FREQUENCY, NULL); __sndmgrReady = true; } } @@ -1967,9 +1970,9 @@ void Sound::_soServiceTrackType0(int trackIndex, const byte *channelData) { if (channelNum != -1) { if (voiceType != VOICETYPE_0) { if (chFlags & 0x10) - _soProc42(vtStruct, channelNum, chVoiceType, v); + _soProc42(vtStruct, channelData, channelNum, chVoiceType, v); else - _soProc32(vtStruct, channelNum, chVoiceType, v, b); + _soProc32(vtStruct, channelData, channelNum, chVoiceType, v, b); } else if (voiceNum != -1) { assert(driver); driver->proc20(voiceNum, chVoiceType); @@ -2137,7 +2140,7 @@ void Sound::_soUpdateDamper(VoiceTypeStruct *voiceType, int channelNum, VoiceTyp } } -void Sound::_soProc32(VoiceTypeStruct *vtStruct, int channelNum, VoiceType voiceType, int v0, int v1) { +void Sound::_soProc32(VoiceTypeStruct *vtStruct, const byte *channelData, int channelNum, VoiceType voiceType, int v0, int v1) { int entryIndex = _soFindSound(vtStruct, channelNum); if (entryIndex != -1) { SoundDriver *driver = vtStruct->_entries[entryIndex]._driver; @@ -2147,11 +2150,11 @@ void Sound::_soProc32(VoiceTypeStruct *vtStruct, int channelNum, VoiceType voice vtStruct->_entries[entryIndex]._type1._field4 = v0; vtStruct->_entries[entryIndex]._type1._field5 = 0; - driver->proc32(this, vtStruct->_entries[entryIndex]._voiceNum, _chProgram[channelNum], v0, v1); + driver->proc32(channelData, 0, _chProgram[channelNum], vtStruct->_entries[entryIndex]._voiceNum, v0, v1); } } -void Sound::_soProc42(VoiceTypeStruct *vtStruct, int channelNum, VoiceType voiceType, int v0) { +void Sound::_soProc42(VoiceTypeStruct *vtStruct, const byte *channelData, int channelNum, VoiceType voiceType, int v0) { for (int trackCtr = 0; trackCtr < _trackInfo._numTracks; ++trackCtr) { const byte *instrument = _channelData[trackCtr]; if ((*(instrument + 13) == v0) && (*instrument == 1)) { @@ -2166,7 +2169,7 @@ void Sound::_soProc42(VoiceTypeStruct *vtStruct, int channelNum, VoiceType voice vtStruct->_entries[entryIndex]._type1._field5 = 0; int v1, v2; - driver->proc32(this, vtStruct->_entries[entryIndex]._voiceNum, -1, v0, 0x7F); + driver->proc32(channelData, 14, -1, vtStruct->_entries[entryIndex]._voiceNum, v0, 0x7F); driver->proc42(vtStruct->_entries[entryIndex]._voiceNum, voiceType, 0, &v1, &v2); } break; @@ -2295,7 +2298,7 @@ void Sound::_soServiceTrackType1(int trackIndex, const byte *channelData) { vtStruct->_entries[entryIndex]._type1._field5 = 0; int v1, v2; - driver->proc32(this, vtStruct->_entries[entryIndex]._voiceNum, -1, *(channelData + 1), 0x7f); + driver->proc32(channelData, 14, -1, vtStruct->_entries[entryIndex]._voiceNum, *(channelData + 1), 0x7f); driver->proc42(vtStruct->_entries[entryIndex]._voiceNum, *(channelData + 1), _loop ? 1 : 0, &v1, &v2); } @@ -2488,7 +2491,12 @@ AdlibSoundDriver::AdlibSoundDriver(): SoundDriver() { _opl = OPL::Config::create(); assert(_opl); _opl->init(_sampleRate); - + + _samplesTillCallback = 0; + _samplesTillCallbackRemainder = 0; + _samplesPerCallback = getRate() / CALLBACKS_PER_SECOND; + _samplesPerCallbackRemainder = getRate() % CALLBACKS_PER_SECOND; + _mixer->playStream(Audio::Mixer::kPlainSoundType, &_soundHandle, this, -1, Audio::Mixer::kMaxChannelVolume, 0, DisposeAfterUse::NO, true); Common::set_to(_channelVoiced, _channelVoiced + ADLIB_CHANNEL_COUNT, false); @@ -2558,7 +2566,7 @@ int AdlibSoundDriver::setMasterVolume(int volume) { return oldVolume; } -void AdlibSoundDriver::proc32(Sound *sound, int channel, int program, int v0, int v1) { +void AdlibSoundDriver::proc32(const byte *channelData, int dataOffset, int program, int channel, int v0, int v1) { if (program == -1) return; @@ -2750,26 +2758,29 @@ void AdlibSoundDriver::setFrequency(int channel) { } int AdlibSoundDriver::readBuffer(int16 *buffer, const int numSamples) { - update(buffer, numSamples); - return numSamples; -} - -void AdlibSoundDriver::update(int16 *buf, int len) { - static int samplesLeft = 0; - while (len != 0) { - int count = samplesLeft; - if (count > len) { - count = len; - } - samplesLeft -= count; - len -= count; - _opl->readBuffer(buf, count); - if (samplesLeft == 0) { + int32 samplesLeft = numSamples; + memset(buffer, 0, sizeof(int16) * numSamples); + while (samplesLeft) { + if (!_samplesTillCallback) { + SoundManager::_sfUpdateCallback(NULL); flush(); - samplesLeft = _sampleRate / 50; + + _samplesTillCallback = _samplesPerCallback; + _samplesTillCallbackRemainder += _samplesPerCallbackRemainder; + if (_samplesTillCallbackRemainder >= CALLBACKS_PER_SECOND) { + _samplesTillCallback++; + _samplesTillCallbackRemainder -= CALLBACKS_PER_SECOND; + } } - buf += count; + + int32 render = MIN(samplesLeft, _samplesTillCallback); + samplesLeft -= render; + _samplesTillCallback -= render; + + _opl->readBuffer(buffer, render); + buffer += render; } + return numSamples; } /*--------------------------------------------------------------------------*/ @@ -2785,11 +2796,11 @@ AdlibFxSoundDriver::AdlibFxSoundDriver(): SoundDriver() { _groupData.groupMask = 1; _groupData.v1 = 0x3E; _groupData.v2 = 0; - _groupData.pData = &adlib_group_data[0]; + _groupData.pData = &adlibFx_group_data[0]; _mixer = _vm->_mixer; _sampleRate = _mixer->getOutputRate(); - _mixer->playStream(Audio::Mixer::kPlainSoundType, &_soundHandle, this, -1, Audio::Mixer::kMaxChannelVolume, 0, DisposeAfterUse::NO, true); +// _mixer->playStream(Audio::Mixer::kPlainSoundType, &_soundHandle, this, -1, Audio::Mixer::kMaxChannelVolume, 0, DisposeAfterUse::NO, true); /* Common::set_to(_channelVoiced, _channelVoiced + ADLIB_CHANNEL_COUNT, false); memset(_channelVolume, 0, ADLIB_CHANNEL_COUNT * sizeof(int)); @@ -2806,7 +2817,7 @@ AdlibFxSoundDriver::AdlibFxSoundDriver(): SoundDriver() { } AdlibFxSoundDriver::~AdlibFxSoundDriver() { - _mixer->stopHandle(_soundHandle); +// _mixer->stopHandle(_soundHandle); } bool AdlibFxSoundDriver::open() { @@ -2854,24 +2865,27 @@ int AdlibFxSoundDriver::setMasterVolume(int volume) { return oldVolume; } -void AdlibFxSoundDriver::proc32(Sound *sound, int channel, int program, int v0, int v1) { - if (program == -1) +void AdlibFxSoundDriver::proc32(const byte *channelData, int dataOffset, int program, int channel, int v0, int v1) { + if (program != -1) return; - if (_sound) + // If sound data has been previously set, then release it + if (_channelData) updateVoice(channel); - // TODO: Stuff - - + // Set the new channel data + _channelData = channelData + dataOffset; + _soundData = _channelData + 18; + // Start the new sound + debug("Start sound"); } void AdlibFxSoundDriver::updateVoice(int channel) { - if (_sound) { + if (_channelData) { write(208); - _sound = NULL; + _channelData = NULL; _v45062 = 0; _v45066 = 0; _v45068 = 0; @@ -2891,7 +2905,7 @@ void AdlibFxSoundDriver::proc42(int channel, int cmd, int value, int *v1, int *v *v2 = 0; _v4506B = 0; - if (!_sound) + if (!_channelData) *v2 = 1; } diff --git a/engines/tsage/sound.h b/engines/tsage/sound.h index 6a47a1aaf5..923b3e05f2 100644 --- a/engines/tsage/sound.h +++ b/engines/tsage/sound.h @@ -41,6 +41,7 @@ class Sound; #define ROLAND_DRIVER_NUM 2 #define ADLIB_DRIVER_NUM 3 #define SBLASTER_DRIVER_NUM 4 +#define CALLBACKS_PER_SECOND 60 struct trackInfoStruct { int _numTracks; @@ -107,7 +108,7 @@ public: virtual void setProgram(int channel, int program) {} // Method #13 virtual void setVolume1(int channel, int v2, int v3, int volume) {} virtual void setPitchBlend(int channel, int pitchBlend) {} // Method #15 - virtual void proc32(Sound *sound, int channel, int program, int v0, int v1) {}// Method #16 + virtual void proc32(const byte *channelData, int dataOffset, int program, int channel, int v0, int v1) {}// Method #16 virtual void updateVoice(int channel) {} // Method #17 virtual void proc36() {} // Method #18 virtual void proc38(int channel, int cmd, int value) {} // Method #19 @@ -348,8 +349,8 @@ public: void _soRemoteReceive(); void _soServiceTrackType0(int trackIndex, const byte *channelData); void _soUpdateDamper(VoiceTypeStruct *voiceType, int channelNum, VoiceType mode, int v0); - void _soProc32(VoiceTypeStruct *vtStruct, int channelNum, VoiceType voiceType, int v0, int v1); - void _soProc42(VoiceTypeStruct *vtStruct, int channelNum, VoiceType voiceType, int v0); + void _soProc32(VoiceTypeStruct *vtStruct, const byte *channelData, int channelNum, VoiceType voiceType, int v0, int v1); + void _soProc42(VoiceTypeStruct *vtStruct, const byte *channelData, int channelNum, VoiceType voiceType, int v0); void _soProc38(VoiceTypeStruct *vtStruct, int channelNum, VoiceType voiceType, int cmd, int value); void _soProc40(VoiceTypeStruct *vtStruct, int channelNum, int pitchBlend); void _soDoTrackCommand(int channelNum, int command, int value); @@ -411,6 +412,10 @@ private: const byte *_patchData; int _masterVolume; Common::Queue<RegisterValue> _queue; + int _samplesTillCallback; + int _samplesTillCallbackRemainder; + int _samplesPerCallback; + int _samplesPerCallbackRemainder; bool _channelVoiced[ADLIB_CHANNEL_COUNT]; int _channelVolume[ADLIB_CHANNEL_COUNT]; @@ -440,7 +445,7 @@ public: virtual const GroupData *getGroupData(); virtual void installPatch(const byte *data, int size); virtual int setMasterVolume(int volume); - virtual void proc32(Sound *sound, int channel, int program, int v0, int v1); + virtual void proc32(const byte *channelData, int dataOffset, int program, int channel, int v0, int v1); virtual void updateVoice(int channel); virtual void proc38(int channel, int cmd, int value); virtual void setPitch(int channel, int pitchBlend); @@ -470,7 +475,8 @@ private: bool _v45046; byte _masterVolume; byte _channelVolume; - Sound *_sound; + const byte *_channelData; + const byte *_soundData; void write(int v); void flush(); @@ -487,7 +493,7 @@ public: virtual const GroupData *getGroupData(); virtual void poll(); virtual int setMasterVolume(int volume); - virtual void proc32(Sound *sound, int channel, int program, int v0, int v1); + virtual void proc32(const byte *channelData, int dataOffset, int program, int channel, int v0, int v1); virtual void updateVoice(int channel); virtual void proc38(int channel, int cmd, int value); virtual void proc42(int channel, int cmd, int value, int *v1, int *v2); diff --git a/engines/tsage/tsage.cpp b/engines/tsage/tsage.cpp index 41f3d58897..23a0193b7c 100644 --- a/engines/tsage/tsage.cpp +++ b/engines/tsage/tsage.cpp @@ -147,4 +147,8 @@ void TSageEngine::syncSoundSettings() { _globals->_soundManager.syncSounds(); } +bool TSageEngine::shouldQuit() { + return getEventManager()->shouldQuit() || getEventManager()->shouldRTL(); +} + } // End of namespace tSage diff --git a/engines/tsage/tsage.h b/engines/tsage/tsage.h index f004c7f625..805461886a 100644 --- a/engines/tsage/tsage.h +++ b/engines/tsage/tsage.h @@ -78,6 +78,7 @@ public: uint32 getGameID() const; uint32 getFeatures() const; Common::String getPrimaryFilename() const; + bool shouldQuit(); virtual Common::Error init(); virtual Common::Error run(); diff --git a/graphics/yuv_to_rgb.h b/graphics/yuv_to_rgb.h index 9b561f2002..e85c104098 100644 --- a/graphics/yuv_to_rgb.h +++ b/graphics/yuv_to_rgb.h @@ -26,6 +26,7 @@ /** * @file * YUV to RGB conversion used in engines: + * - scumm (he) * - sword25 */ @@ -143,6 +143,13 @@ osxsnap: bundle cp $(srcdir)/COPYRIGHT ./ScummVM-snapshot/Copyright\ Holders cp $(srcdir)/NEWS ./ScummVM-snapshot/News cp $(srcdir)/README ./ScummVM-snapshot/ScummVM\ ReadMe + mkdir ScummVM-snapshot/doc + cp $(srcdir)/doc/QuickStart ./ScummVM-snapshot/doc/QuickStart + mkdir ScummVM-snapshot/doc/de + cp $(srcdir)/doc/de/Liesmich ./ScummVM-snapshot/doc/de/Liesmich + cp $(srcdir)/doc/de/Schnellstart ./ScummVM-snapshot/doc/de/Schnellstart + mkdir ScummVM-snapshot/doc/fr + cp $(srcdir)/doc/fr/QuickStart_fr ./ScummVM-snapshot/doc/fr/QuickStart_fr /Developer/Tools/SetFile -t ttro -c ttxt ./ScummVM-snapshot/* /Developer/Tools/CpMac -r $(bundle_name) ./ScummVM-snapshot/ cp $(srcdir)/dists/macosx/DS_Store ./ScummVM-snapshot/.DS_Store @@ -166,6 +173,9 @@ scummvmwinres.o: $(srcdir)/icons/scummvm.ico $(DIST_FILES_THEMES) $(DIST_FILES_E win32dist: $(EXECUTABLE) mkdir -p $(WIN32PATH) mkdir -p $(WIN32PATH)/graphics + mkdir -p $(WIN32PATH)/doc + mkdir -p $(WIN32PATH)/doc/de + mkdir -p $(WIN32PATH)/doc/fr $(STRIP) $(EXECUTABLE) -o $(WIN32PATH)/$(EXECUTABLE) cp $(DIST_FILES_THEMES) $(WIN32PATH) ifdef DIST_FILES_ENGINEDATA @@ -177,12 +187,18 @@ endif cp $(srcdir)/COPYRIGHT $(WIN32PATH)/COPYRIGHT.txt cp $(srcdir)/NEWS $(WIN32PATH)/NEWS.txt cp $(srcdir)/README $(WIN32PATH)/README.txt + cp $(srcdir)/doc/QuickStart $(WIN32PATH)/doc/QuickStart.txt + cp $(srcdir)/doc/de/Schnellstart $(WIN32PATH)/doc/de/Schnellstart.txt + cp $(srcdir)/doc/de/Liesmich $(WIN32PATH)/doc/de/Liesmich.txt + cp $(srcdir)/doc/fr/QuickStart_fr $(WIN32PATH)/doc/fr/QuickStart_fr.txt cp /usr/local/README-SDL.txt $(WIN32PATH) cp /usr/local/bin/SDL.dll $(WIN32PATH) cp $(srcdir)/dists/win32/graphics/left.bmp $(WIN32PATH)/graphics cp $(srcdir)/dists/win32/graphics/scummvm-install.ico $(WIN32PATH)/graphics cp $(srcdir)/dists/win32/ScummVM.iss $(WIN32PATH) unix2dos $(WIN32PATH)/*.txt + unix2dos $(WIN32PATH)/doc/de/*.txt + unix2dos $(WIN32PATH)/doc/fr/*.txt # Special target to create a win32 NSIS installer win32setup: $(EXECUTABLE) diff --git a/video/bink_decoder.cpp b/video/bink_decoder.cpp new file mode 100644 index 0000000000..c60dbc29be --- /dev/null +++ b/video/bink_decoder.cpp @@ -0,0 +1,1634 @@ +/* ScummVM - Graphic Adventure Engine + * + * ScummVM is the legal property of its developers, whose names + * are too numerous to list here. Please refer to the COPYRIGHT + * file distributed with this source distribution. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ + +// Based on eos' Bink decoder which is in turn +// based quite heavily on the Bink decoder found in FFmpeg. +// Many thanks to Kostya Shishkov for doing the hard work. + +#include "audio/decoders/raw.h" + +#include "common/util.h" +#include "common/textconsole.h" +#include "common/math.h" +#include "common/stream.h" +#include "common/file.h" +#include "common/str.h" +#include "common/bitstream.h" +#include "common/huffman.h" +#include "common/rdft.h" +#include "common/dct.h" +#include "common/system.h" + +#include "graphics/yuv_to_rgb.h" +#include "graphics/surface.h" + +#include "video/binkdata.h" +#include "video/bink_decoder.h" + +static const uint32 kBIKfID = MKTAG('B', 'I', 'K', 'f'); +static const uint32 kBIKgID = MKTAG('B', 'I', 'K', 'g'); +static const uint32 kBIKhID = MKTAG('B', 'I', 'K', 'h'); +static const uint32 kBIKiID = MKTAG('B', 'I', 'K', 'i'); + +static const uint32 kVideoFlagAlpha = 0x00100000; + +static const uint16 kAudioFlagDCT = 0x1000; +static const uint16 kAudioFlagStereo = 0x2000; + +// Number of bits used to store first DC value in bundle +static const uint32 kDCStartBits = 11; + +namespace Video { + +BinkDecoder::VideoFrame::VideoFrame() : bits(0) { +} + +BinkDecoder::VideoFrame::~VideoFrame() { + delete bits; +} + + +BinkDecoder::AudioTrack::AudioTrack() : bits(0), bands(0), rdft(0), dct(0) { +} + +BinkDecoder::AudioTrack::~AudioTrack() { + delete bits; + + delete[] bands; + + delete rdft; + delete dct; +} + + +BinkDecoder::BinkDecoder() { + _bink = 0; + _audioTrack = 0; + + for (int i = 0; i < 16; i++) + _huffman[i] = 0; + + for (int i = 0; i < kSourceMAX; i++) { + _bundles[i].countLength = 0; + + _bundles[i].huffman.index = 0; + for (int j = 0; j < 16; j++) + _bundles[i].huffman.symbols[j] = j; + + _bundles[i].data = 0; + _bundles[i].dataEnd = 0; + _bundles[i].curDec = 0; + _bundles[i].curPtr = 0; + } + + for (int i = 0; i < 16; i++) { + _colHighHuffman[i].index = 0; + for (int j = 0; j < 16; j++) + _colHighHuffman[i].symbols[j] = j; + } + + for (int i = 0; i < 4; i++) { + _curPlanes[i] = 0; + _oldPlanes[i] = 0; + } + + _audioStream = 0; + _audioStarted = false; +} + +BinkDecoder::~BinkDecoder() { + close(); +} + +void BinkDecoder::close() { + reset(); + + if (_audioStream) { + // Stop audio + g_system->getMixer()->stopHandle(_audioHandle); + _audioStream = 0; + } + + _audioStarted = false; + + for (int i = 0; i < 4; i++) { + delete[] _curPlanes[i]; _curPlanes[i] = 0; + delete[] _oldPlanes[i]; _oldPlanes[i] = 0; + } + + deinitBundles(); + + for (int i = 0; i < 16; i++) { + delete _huffman[i]; + _huffman[i] = 0; + } + + delete _bink; _bink = 0; + _surface.free(); + + _audioTrack = 0; + + for (int i = 0; i < kSourceMAX; i++) { + _bundles[i].countLength = 0; + + _bundles[i].huffman.index = 0; + for (int j = 0; j < 16; j++) + _bundles[i].huffman.symbols[j] = j; + + _bundles[i].data = 0; + _bundles[i].dataEnd = 0; + _bundles[i].curDec = 0; + _bundles[i].curPtr = 0; + } + + for (int i = 0; i < 16; i++) { + _colHighHuffman[i].index = 0; + for (int j = 0; j < 16; j++) + _colHighHuffman[i].symbols[j] = j; + } + + _audioTracks.clear(); + _frames.clear(); +} + +uint32 BinkDecoder::getElapsedTime() const { + if (_audioStream && g_system->getMixer()->isSoundHandleActive(_audioHandle)) + return g_system->getMixer()->getSoundElapsedTime(_audioHandle); + + return g_system->getMillis() - _startTime; +} + +const Graphics::Surface *BinkDecoder::decodeNextFrame() { + if (endOfVideo()) + return 0; + + VideoFrame &frame = _frames[_curFrame + 1]; + + if (!_bink->seek(frame.offset)) + error("Bad bink seek"); + + uint32 frameSize = frame.size; + + for (uint32 i = 0; i < _audioTracks.size(); i++) { + AudioTrack &audio = _audioTracks[i]; + + uint32 audioPacketLength = _bink->readUint32LE(); + + frameSize -= 4; + + if (frameSize < audioPacketLength) + error("Audio packet too big for the frame"); + + if (audioPacketLength >= 4) { + if (i == _audioTrack) { + // Only play one audio track + + // Number of samples in bytes + audio.sampleCount = _bink->readUint32LE() / (2 * audio.channels); + + audio.bits = new Common::BitStream32LE(*_bink, (audioPacketLength - 4) * 8); + + audioPacket(audio); + + delete audio.bits; + audio.bits = 0; + + } else + // Skip the rest + _bink->skip(audioPacketLength); + + frameSize -= audioPacketLength; + } + } + + frame.bits = new Common::BitStream32LE(*_bink, frameSize * 8); + + videoPacket(frame); + + delete frame.bits; + frame.bits = 0; + + _curFrame++; + if (_curFrame == 0) + _startTime = g_system->getMillis(); + + if (!_audioStarted && _audioStream) { + _audioStarted = true; + g_system->getMixer()->playStream(Audio::Mixer::kPlainSoundType, &_audioHandle, _audioStream); + } + + return &_surface; +} + +void BinkDecoder::audioPacket(AudioTrack &audio) { + if (!_audioStream) + return; + + int outSize = audio.frameLen * audio.channels; + while (audio.bits->pos() < audio.bits->size()) { + int16 *out = (int16 *)malloc(outSize * 2); + memset(out, 0, outSize * 2); + + audioBlock(audio, out); + + byte flags = Audio::FLAG_16BITS; + if (audio.outChannels == 2) + flags |= Audio::FLAG_STEREO; + +#ifdef SCUMM_LITTLE_ENDIAN + flags |= Audio::FLAG_LITTLE_ENDIAN; +#endif + + _audioStream->queueBuffer((byte *)out, audio.blockSize * 2, DisposeAfterUse::YES, flags); + + if (audio.bits->pos() & 0x1F) // next data block starts at a 32-byte boundary + audio.bits->skip(32 - (audio.bits->pos() & 0x1F)); + } +} + +void BinkDecoder::videoPacket(VideoFrame &video) { + assert(video.bits); + + if (_hasAlpha) { + if (_id == kBIKiID) + video.bits->skip(32); + + decodePlane(video, 3, false); + } + + if (_id == kBIKiID) + video.bits->skip(32); + + for (int i = 0; i < 3; i++) { + int planeIdx = ((i == 0) || !_swapPlanes) ? i : (i ^ 3); + + decodePlane(video, planeIdx, i != 0); + + if (video.bits->pos() >= video.bits->size()) + break; + } + + // Convert the YUV data we have to our format + // We're ignoring alpha for now + assert(_curPlanes[0] && _curPlanes[1] && _curPlanes[2]); + Graphics::convertYUV420ToRGB(&_surface, _curPlanes[0], _curPlanes[1], _curPlanes[2], + _surface.w, _surface.h, _surface.w, _surface.w >> 1); + + // And swap the planes with the reference planes + for (int i = 0; i < 4; i++) + SWAP(_curPlanes[i], _oldPlanes[i]); +} + +void BinkDecoder::decodePlane(VideoFrame &video, int planeIdx, bool isChroma) { + + uint32 blockWidth = isChroma ? ((_surface.w + 15) >> 4) : ((_surface.w + 7) >> 3); + uint32 blockHeight = isChroma ? ((_surface.h + 15) >> 4) : ((_surface.h + 7) >> 3); + uint32 width = isChroma ? (_surface.w >> 1) : _surface.w; + uint32 height = isChroma ? (_surface.h >> 1) : _surface.h; + + DecodeContext ctx; + + ctx.video = &video; + ctx.planeIdx = planeIdx; + ctx.destStart = _curPlanes[planeIdx]; + ctx.destEnd = _curPlanes[planeIdx] + width * height; + ctx.prevStart = _oldPlanes[planeIdx]; + ctx.prevEnd = _oldPlanes[planeIdx] + width * height; + ctx.pitch = width; + + for (int i = 0; i < 64; i++) { + ctx.coordMap[i] = (i & 7) + (i >> 3) * ctx.pitch; + + ctx.coordScaledMap1[i] = ((i & 7) * 2 + 0) + (((i >> 3) * 2 + 0) * ctx.pitch); + ctx.coordScaledMap2[i] = ((i & 7) * 2 + 1) + (((i >> 3) * 2 + 0) * ctx.pitch); + ctx.coordScaledMap3[i] = ((i & 7) * 2 + 0) + (((i >> 3) * 2 + 1) * ctx.pitch); + ctx.coordScaledMap4[i] = ((i & 7) * 2 + 1) + (((i >> 3) * 2 + 1) * ctx.pitch); + } + + for (int i = 0; i < kSourceMAX; i++) { + _bundles[i].countLength = _bundles[i].countLengths[isChroma ? 1 : 0]; + + readBundle(video, (Source) i); + } + + for (ctx.blockY = 0; ctx.blockY < blockHeight; ctx.blockY++) { + readBlockTypes (video, _bundles[kSourceBlockTypes]); + readBlockTypes (video, _bundles[kSourceSubBlockTypes]); + readColors (video, _bundles[kSourceColors]); + readPatterns (video, _bundles[kSourcePattern]); + readMotionValues(video, _bundles[kSourceXOff]); + readMotionValues(video, _bundles[kSourceYOff]); + readDCS (video, _bundles[kSourceIntraDC], kDCStartBits, false); + readDCS (video, _bundles[kSourceInterDC], kDCStartBits, true); + readRuns (video, _bundles[kSourceRun]); + + ctx.dest = ctx.destStart + 8 * ctx.blockY * ctx.pitch; + ctx.prev = ctx.prevStart + 8 * ctx.blockY * ctx.pitch; + + for (ctx.blockX = 0; ctx.blockX < blockWidth; ctx.blockX++, ctx.dest += 8, ctx.prev += 8) { + BlockType blockType = (BlockType) getBundleValue(kSourceBlockTypes); + + // 16x16 block type on odd line means part of the already decoded block, so skip it + if ((ctx.blockY & 1) && (blockType == kBlockScaled)) { + ctx.blockX += 1; + ctx.dest += 8; + ctx.prev += 8; + continue; + } + + switch (blockType) { + case kBlockSkip: + blockSkip(ctx); + break; + + case kBlockScaled: + blockScaled(ctx); + break; + + case kBlockMotion: + blockMotion(ctx); + break; + + case kBlockRun: + blockRun(ctx); + break; + + case kBlockResidue: + blockResidue(ctx); + break; + + case kBlockIntra: + blockIntra(ctx); + break; + + case kBlockFill: + blockFill(ctx); + break; + + case kBlockInter: + blockInter(ctx); + break; + + case kBlockPattern: + blockPattern(ctx); + break; + + case kBlockRaw: + blockRaw(ctx); + break; + + default: + error("Unknown block type: %d", blockType); + } + + } + + } + + if (video.bits->pos() & 0x1F) // next plane data starts at 32-bit boundary + video.bits->skip(32 - (video.bits->pos() & 0x1F)); + +} + +void BinkDecoder::readBundle(VideoFrame &video, Source source) { + if (source == kSourceColors) { + for (int i = 0; i < 16; i++) + readHuffman(video, _colHighHuffman[i]); + + _colLastVal = 0; + } + + if ((source != kSourceIntraDC) && (source != kSourceInterDC)) + readHuffman(video, _bundles[source].huffman); + + _bundles[source].curDec = _bundles[source].data; + _bundles[source].curPtr = _bundles[source].data; +} + +void BinkDecoder::readHuffman(VideoFrame &video, Huffman &huffman) { + huffman.index = video.bits->getBits(4); + + if (huffman.index == 0) { + // The first tree always gives raw nibbles + + for (int i = 0; i < 16; i++) + huffman.symbols[i] = i; + + return; + } + + byte hasSymbol[16]; + + if (video.bits->getBit()) { + // Symbol selection + + memset(hasSymbol, 0, 16); + + uint8 length = video.bits->getBits(3); + for (int i = 0; i <= length; i++) { + huffman.symbols[i] = video.bits->getBits(4); + hasSymbol[huffman.symbols[i]] = 1; + } + + for (int i = 0; i < 16; i++) + if (hasSymbol[i] == 0) + huffman.symbols[++length] = i; + + return; + } + + // Symbol shuffling + + byte tmp1[16], tmp2[16]; + byte *in = tmp1, *out = tmp2; + + uint8 depth = video.bits->getBits(2); + + for (int i = 0; i < 16; i++) + in[i] = i; + + for (int i = 0; i <= depth; i++) { + int size = 1 << i; + + for (int j = 0; j < 16; j += (size << 1)) + mergeHuffmanSymbols(video, out + j, in + j, size); + + SWAP(in, out); + } + + memcpy(huffman.symbols, in, 16); +} + +void BinkDecoder::mergeHuffmanSymbols(VideoFrame &video, byte *dst, const byte *src, int size) { + const byte *src2 = src + size; + int size2 = size; + + do { + if (!video.bits->getBit()) { + *dst++ = *src++; + size--; + } else { + *dst++ = *src2++; + size2--; + } + + } while (size && size2); + + while (size--) + *dst++ = *src++; + while (size2--) + *dst++ = *src2++; +} + +bool BinkDecoder::loadStream(Common::SeekableReadStream *stream) { + close(); + + _id = stream->readUint32BE(); + if ((_id != kBIKfID) && (_id != kBIKgID) && (_id != kBIKhID) && (_id != kBIKiID)) + return false; + + uint32 fileSize = stream->readUint32LE() + 8; + uint32 frameCount = stream->readUint32LE(); + uint32 largestFrameSize = stream->readUint32LE(); + + if (largestFrameSize > fileSize) { + warning("Largest frame size greater than file size"); + return false; + } + + stream->skip(4); + + uint32 width = stream->readUint32LE(); + uint32 height = stream->readUint32LE(); + + uint32 frameRateNum = stream->readUint32LE(); + uint32 frameRateDen = stream->readUint32LE(); + if (frameRateNum == 0 || frameRateDen == 0) { + warning("Invalid frame rate (%d/%d)", frameRateNum, frameRateDen); + return false; + } + + _frameRate = Common::Rational(frameRateNum, frameRateDen); + _bink = stream; + + _videoFlags = _bink->readUint32LE(); + + uint32 audioTrackCount = _bink->readUint32LE(); + + if (audioTrackCount > 1) { + warning("More than one audio track found. Using the first one"); + + _audioTrack = 0; + } + + if (audioTrackCount > 0) { + _audioTracks.reserve(audioTrackCount); + + _bink->skip(4 * audioTrackCount); + + // Reading audio track properties + for (uint32 i = 0; i < audioTrackCount; i++) { + AudioTrack track; + + track.sampleRate = _bink->readUint16LE(); + track.flags = _bink->readUint16LE(); + + _audioTracks.push_back(track); + + initAudioTrack(_audioTracks[i]); + } + + _bink->skip(4 * audioTrackCount); + } + + // Reading video frame properties + _frames.resize(frameCount); + for (uint32 i = 0; i < frameCount; i++) { + _frames[i].offset = _bink->readUint32LE(); + _frames[i].keyFrame = _frames[i].offset & 1; + + _frames[i].offset &= ~1; + + if (i != 0) + _frames[i - 1].size = _frames[i].offset - _frames[i - 1].offset; + + _frames[i].bits = 0; + } + + _frames[frameCount - 1].size = _bink->size() - _frames[frameCount - 1].offset; + + _hasAlpha = _videoFlags & kVideoFlagAlpha; + _swapPlanes = (_id == kBIKhID) || (_id == kBIKiID); // BIKh and BIKi swap the chroma planes + + Graphics::PixelFormat format = g_system->getScreenFormat(); + _surface.create(width, height, format); + + // Give the planes a bit extra space + width = _surface.w + 32; + height = _surface.h + 32; + + _curPlanes[0] = new byte[ width * height ]; // Y + _curPlanes[1] = new byte[(width >> 1) * (height >> 1)]; // U, 1/4 resolution + _curPlanes[2] = new byte[(width >> 1) * (height >> 1)]; // V, 1/4 resolution + _curPlanes[3] = new byte[ width * height ]; // A + _oldPlanes[0] = new byte[ width * height ]; // Y + _oldPlanes[1] = new byte[(width >> 1) * (height >> 1)]; // U, 1/4 resolution + _oldPlanes[2] = new byte[(width >> 1) * (height >> 1)]; // V, 1/4 resolution + _oldPlanes[3] = new byte[ width * height ]; // A + + // Initialize the video with solid black + memset(_curPlanes[0], 0, width * height ); + memset(_curPlanes[1], 0, (width >> 1) * (height >> 1)); + memset(_curPlanes[2], 0, (width >> 1) * (height >> 1)); + memset(_curPlanes[3], 255, width * height ); + memset(_oldPlanes[0], 0, width * height ); + memset(_oldPlanes[1], 0, (width >> 1) * (height >> 1)); + memset(_oldPlanes[2], 0, (width >> 1) * (height >> 1)); + memset(_oldPlanes[3], 255, width * height ); + + initBundles(); + initHuffman(); + + if (_audioTrack < _audioTracks.size()) { + const AudioTrack &audio = _audioTracks[_audioTrack]; + + _audioStream = Audio::makeQueuingAudioStream(audio.outSampleRate, audio.outChannels == 2); + } + + return true; +} + +void BinkDecoder::initAudioTrack(AudioTrack &audio) { + audio.sampleCount = 0; + audio.bits = 0; + + audio.channels = ((audio.flags & kAudioFlagStereo) != 0) ? 2 : 1; + audio.codec = ((audio.flags & kAudioFlagDCT ) != 0) ? kAudioCodecDCT : kAudioCodecRDFT; + + if (audio.channels > kAudioChannelsMax) + error("Too many audio channels: %d", audio.channels); + + uint32 frameLenBits; + // Calculate frame length + if (audio.sampleRate < 22050) + frameLenBits = 9; + else if(audio.sampleRate < 44100) + frameLenBits = 10; + else + frameLenBits = 11; + + audio.frameLen = 1 << frameLenBits; + + audio.outSampleRate = audio.sampleRate; + audio.outChannels = audio.channels; + + if (audio.codec == kAudioCodecRDFT) { + // RDFT audio already interleaves the samples correctly + + if (audio.channels == 2) + frameLenBits++; + + audio.sampleRate *= audio.channels; + audio.frameLen *= audio.channels; + audio.channels = 1; + } + + audio.overlapLen = audio.frameLen / 16; + audio.blockSize = (audio.frameLen - audio.overlapLen) * audio.channels; + audio.root = 2.0 / sqrt((double)audio.frameLen); + + uint32 sampleRateHalf = (audio.sampleRate + 1) / 2; + + // Calculate number of bands + for (audio.bandCount = 1; audio.bandCount < 25; audio.bandCount++) + if (sampleRateHalf <= binkCriticalFreqs[audio.bandCount - 1]) + break; + + audio.bands = new uint32[audio.bandCount + 1]; + + // Populate bands + audio.bands[0] = 1; + for (uint32 i = 1; i < audio.bandCount; i++) + audio.bands[i] = binkCriticalFreqs[i - 1] * (audio.frameLen / 2) / sampleRateHalf; + audio.bands[audio.bandCount] = audio.frameLen / 2; + + audio.first = true; + + for (uint8 i = 0; i < audio.channels; i++) + audio.coeffsPtr[i] = audio.coeffs + i * audio.frameLen; + + audio.codec = ((audio.flags & kAudioFlagDCT) != 0) ? kAudioCodecDCT : kAudioCodecRDFT; + + if (audio.codec == kAudioCodecRDFT) + audio.rdft = new Common::RDFT(frameLenBits, Common::RDFT::DFT_C2R); + else if (audio.codec == kAudioCodecDCT) + audio.dct = new Common::DCT(frameLenBits, Common::DCT::DCT_III); +} + +void BinkDecoder::initBundles() { + uint32 bw = (_surface.w + 7) >> 3; + uint32 bh = (_surface.h + 7) >> 3; + uint32 blocks = bw * bh; + + for (int i = 0; i < kSourceMAX; i++) { + _bundles[i].data = new byte[blocks * 64]; + _bundles[i].dataEnd = _bundles[i].data + blocks * 64; + } + + uint32 cbw[2] = { (_surface.w + 7) >> 3, (_surface.w + 15) >> 4 }; + uint32 cw [2] = { _surface.w , _surface.w >> 1 }; + + // Calculate the lengths of an element count in bits + for (int i = 0; i < 2; i++) { + int width = MAX<uint32>(cw[i], 8); + + _bundles[kSourceBlockTypes ].countLengths[i] = Common::intLog2((width >> 3) + 511) + 1; + _bundles[kSourceSubBlockTypes].countLengths[i] = Common::intLog2((width >> 4) + 511) + 1; + _bundles[kSourceColors ].countLengths[i] = Common::intLog2((width >> 3)*64 + 511) + 1; + _bundles[kSourceIntraDC ].countLengths[i] = Common::intLog2((width >> 3) + 511) + 1; + _bundles[kSourceInterDC ].countLengths[i] = Common::intLog2((width >> 3) + 511) + 1; + _bundles[kSourceXOff ].countLengths[i] = Common::intLog2((width >> 3) + 511) + 1; + _bundles[kSourceYOff ].countLengths[i] = Common::intLog2((width >> 3) + 511) + 1; + _bundles[kSourcePattern ].countLengths[i] = Common::intLog2((cbw[i] << 3) + 511) + 1; + _bundles[kSourceRun ].countLengths[i] = Common::intLog2((width >> 3)*48 + 511) + 1; + } +} + +void BinkDecoder::deinitBundles() { + for (int i = 0; i < kSourceMAX; i++) + delete[] _bundles[i].data; +} + +void BinkDecoder::initHuffman() { + for (int i = 0; i < 16; i++) + _huffman[i] = new Common::Huffman(binkHuffmanLengths[i][15], 16, binkHuffmanCodes[i], binkHuffmanLengths[i]); +} + +byte BinkDecoder::getHuffmanSymbol(VideoFrame &video, Huffman &huffman) { + return huffman.symbols[_huffman[huffman.index]->getSymbol(*video.bits)]; +} + +int32 BinkDecoder::getBundleValue(Source source) { + if ((source < kSourceXOff) || (source == kSourceRun)) + return *_bundles[source].curPtr++; + + if ((source == kSourceXOff) || (source == kSourceYOff)) + return (int8) *_bundles[source].curPtr++; + + int16 ret = *((int16 *) _bundles[source].curPtr); + + _bundles[source].curPtr += 2; + + return ret; +} + +uint32 BinkDecoder::readBundleCount(VideoFrame &video, Bundle &bundle) { + if (!bundle.curDec || (bundle.curDec > bundle.curPtr)) + return 0; + + uint32 n = video.bits->getBits(bundle.countLength); + if (n == 0) + bundle.curDec = 0; + + return n; +} + +void BinkDecoder::blockSkip(DecodeContext &ctx) { + byte *dest = ctx.dest; + byte *prev = ctx.prev; + + for (int j = 0; j < 8; j++, dest += ctx.pitch, prev += ctx.pitch) + memcpy(dest, prev, 8); +} + +void BinkDecoder::blockScaledSkip(DecodeContext &ctx) { + byte *dest = ctx.dest; + byte *prev = ctx.prev; + + for (int j = 0; j < 16; j++, dest += ctx.pitch, prev += ctx.pitch) + memcpy(dest, prev, 16); +} + +void BinkDecoder::blockScaledRun(DecodeContext &ctx) { + const uint8 *scan = binkPatterns[ctx.video->bits->getBits(4)]; + + int i = 0; + do { + int run = getBundleValue(kSourceRun) + 1; + + i += run; + if (i > 64) + error("Run went out of bounds"); + + if (ctx.video->bits->getBit()) { + + byte v = getBundleValue(kSourceColors); + for (int j = 0; j < run; j++, scan++) + ctx.dest[ctx.coordScaledMap1[*scan]] = + ctx.dest[ctx.coordScaledMap2[*scan]] = + ctx.dest[ctx.coordScaledMap3[*scan]] = + ctx.dest[ctx.coordScaledMap4[*scan]] = v; + + } else + for (int j = 0; j < run; j++, scan++) + ctx.dest[ctx.coordScaledMap1[*scan]] = + ctx.dest[ctx.coordScaledMap2[*scan]] = + ctx.dest[ctx.coordScaledMap3[*scan]] = + ctx.dest[ctx.coordScaledMap4[*scan]] = getBundleValue(kSourceColors); + + } while (i < 63); + + if (i == 63) + ctx.dest[ctx.coordScaledMap1[*scan]] = + ctx.dest[ctx.coordScaledMap2[*scan]] = + ctx.dest[ctx.coordScaledMap3[*scan]] = + ctx.dest[ctx.coordScaledMap4[*scan]] = getBundleValue(kSourceColors); +} + +void BinkDecoder::blockScaledIntra(DecodeContext &ctx) { + int16 block[64]; + memset(block, 0, 64 * sizeof(int16)); + + block[0] = getBundleValue(kSourceIntraDC); + + readDCTCoeffs(*ctx.video, block, true); + + IDCT(block); + + int16 *src = block; + byte *dest1 = ctx.dest; + byte *dest2 = ctx.dest + ctx.pitch; + for (int j = 0; j < 8; j++, dest1 += (ctx.pitch << 1) - 16, dest2 += (ctx.pitch << 1) - 16, src += 8) { + + for (int i = 0; i < 8; i++, dest1 += 2, dest2 += 2) + dest1[0] = dest1[1] = dest2[0] = dest2[1] = src[i]; + + } +} + +void BinkDecoder::blockScaledFill(DecodeContext &ctx) { + byte v = getBundleValue(kSourceColors); + + byte *dest = ctx.dest; + for (int i = 0; i < 16; i++, dest += ctx.pitch) + memset(dest, v, 16); +} + +void BinkDecoder::blockScaledPattern(DecodeContext &ctx) { + byte col[2]; + + for (int i = 0; i < 2; i++) + col[i] = getBundleValue(kSourceColors); + + byte *dest1 = ctx.dest; + byte *dest2 = ctx.dest + ctx.pitch; + for (int j = 0; j < 8; j++, dest1 += (ctx.pitch << 1) - 16, dest2 += (ctx.pitch << 1) - 16) { + byte v = getBundleValue(kSourcePattern); + + for (int i = 0; i < 8; i++, dest1 += 2, dest2 += 2, v >>= 1) + dest1[0] = dest1[1] = dest2[0] = dest2[1] = col[v & 1]; + } +} + +void BinkDecoder::blockScaledRaw(DecodeContext &ctx) { + byte row[8]; + + byte *dest1 = ctx.dest; + byte *dest2 = ctx.dest + ctx.pitch; + for (int j = 0; j < 8; j++, dest1 += (ctx.pitch << 1) - 16, dest2 += (ctx.pitch << 1) - 16) { + memcpy(row, _bundles[kSourceColors].curPtr, 8); + + for (int i = 0; i < 8; i++, dest1 += 2, dest2 += 2) + dest1[0] = dest1[1] = dest2[0] = dest2[1] = row[i]; + + _bundles[kSourceColors].curPtr += 8; + } +} + +void BinkDecoder::blockScaled(DecodeContext &ctx) { + BlockType blockType = (BlockType) getBundleValue(kSourceSubBlockTypes); + + switch (blockType) { + case kBlockRun: + blockScaledRun(ctx); + break; + + case kBlockIntra: + blockScaledIntra(ctx); + break; + + case kBlockFill: + blockScaledFill(ctx); + break; + + case kBlockPattern: + blockScaledPattern(ctx); + break; + + case kBlockRaw: + blockScaledRaw(ctx); + break; + + default: + error("Invalid 16x16 block type: %d", blockType); + } + + ctx.blockX += 1; + ctx.dest += 8; + ctx.prev += 8; +} + +void BinkDecoder::blockMotion(DecodeContext &ctx) { + int8 xOff = getBundleValue(kSourceXOff); + int8 yOff = getBundleValue(kSourceYOff); + + byte *dest = ctx.dest; + byte *prev = ctx.prev + yOff * ((int32) ctx.pitch) + xOff; + if ((prev < ctx.prevStart) || (prev > ctx.prevEnd)) + error("Copy out of bounds (%d | %d)", ctx.blockX * 8 + xOff, ctx.blockY * 8 + yOff); + + for (int j = 0; j < 8; j++, dest += ctx.pitch, prev += ctx.pitch) + memcpy(dest, prev, 8); +} + +void BinkDecoder::blockRun(DecodeContext &ctx) { + const uint8 *scan = binkPatterns[ctx.video->bits->getBits(4)]; + + int i = 0; + do { + int run = getBundleValue(kSourceRun) + 1; + + i += run; + if (i > 64) + error("Run went out of bounds"); + + if (ctx.video->bits->getBit()) { + + byte v = getBundleValue(kSourceColors); + for (int j = 0; j < run; j++) + ctx.dest[ctx.coordMap[*scan++]] = v; + + } else + for (int j = 0; j < run; j++) + ctx.dest[ctx.coordMap[*scan++]] = getBundleValue(kSourceColors); + + } while (i < 63); + + if (i == 63) + ctx.dest[ctx.coordMap[*scan++]] = getBundleValue(kSourceColors); +} + +void BinkDecoder::blockResidue(DecodeContext &ctx) { + blockMotion(ctx); + + byte v = ctx.video->bits->getBits(7); + + int16 block[64]; + memset(block, 0, 64 * sizeof(int16)); + + readResidue(*ctx.video, block, v); + + byte *dst = ctx.dest; + int16 *src = block; + for (int i = 0; i < 8; i++, dst += ctx.pitch, src += 8) + for (int j = 0; j < 8; j++) + dst[j] += src[j]; +} + +void BinkDecoder::blockIntra(DecodeContext &ctx) { + int16 block[64]; + memset(block, 0, 64 * sizeof(int16)); + + block[0] = getBundleValue(kSourceIntraDC); + + readDCTCoeffs(*ctx.video, block, true); + + IDCTPut(ctx, block); +} + +void BinkDecoder::blockFill(DecodeContext &ctx) { + byte v = getBundleValue(kSourceColors); + + byte *dest = ctx.dest; + for (int i = 0; i < 8; i++, dest += ctx.pitch) + memset(dest, v, 8); +} + +void BinkDecoder::blockInter(DecodeContext &ctx) { + blockMotion(ctx); + + int16 block[64]; + memset(block, 0, 64 * sizeof(int16)); + + block[0] = getBundleValue(kSourceInterDC); + + readDCTCoeffs(*ctx.video, block, false); + + IDCTAdd(ctx, block); +} + +void BinkDecoder::blockPattern(DecodeContext &ctx) { + byte col[2]; + + for (int i = 0; i < 2; i++) + col[i] = getBundleValue(kSourceColors); + + byte *dest = ctx.dest; + for (int i = 0; i < 8; i++, dest += ctx.pitch - 8) { + byte v = getBundleValue(kSourcePattern); + + for (int j = 0; j < 8; j++, v >>= 1) + *dest++ = col[v & 1]; + } +} + +void BinkDecoder::blockRaw(DecodeContext &ctx) { + byte *dest = ctx.dest; + byte *data = _bundles[kSourceColors].curPtr; + for (int i = 0; i < 8; i++, dest += ctx.pitch, data += 8) + memcpy(dest, data, 8); + + _bundles[kSourceColors].curPtr += 64; +} + +void BinkDecoder::readRuns(VideoFrame &video, Bundle &bundle) { + uint32 n = readBundleCount(video, bundle); + if (n == 0) + return; + + byte *decEnd = bundle.curDec + n; + if (decEnd > bundle.dataEnd) + error("Run value went out of bounds"); + + if (video.bits->getBit()) { + byte v = video.bits->getBits(4); + + memset(bundle.curDec, v, n); + bundle.curDec += n; + + } else + while (bundle.curDec < decEnd) + *bundle.curDec++ = getHuffmanSymbol(video, bundle.huffman); +} + +void BinkDecoder::readMotionValues(VideoFrame &video, Bundle &bundle) { + uint32 n = readBundleCount(video, bundle); + if (n == 0) + return; + + byte *decEnd = bundle.curDec + n; + if (decEnd > bundle.dataEnd) + error("Too many motion values"); + + if (video.bits->getBit()) { + byte v = video.bits->getBits(4); + + if (v) { + int sign = -(int)video.bits->getBit(); + v = (v ^ sign) - sign; + } + + memset(bundle.curDec, v, n); + + bundle.curDec += n; + return; + } + + do { + byte v = getHuffmanSymbol(video, bundle.huffman); + + if (v) { + int sign = -(int)video.bits->getBit(); + v = (v ^ sign) - sign; + } + + *bundle.curDec++ = v; + + } while (bundle.curDec < decEnd); +} + +const uint8 rleLens[4] = { 4, 8, 12, 32 }; +void BinkDecoder::readBlockTypes(VideoFrame &video, Bundle &bundle) { + uint32 n = readBundleCount(video, bundle); + if (n == 0) + return; + + byte *decEnd = bundle.curDec + n; + if (decEnd > bundle.dataEnd) + error("Too many block type values"); + + if (video.bits->getBit()) { + byte v = video.bits->getBits(4); + + memset(bundle.curDec, v, n); + + bundle.curDec += n; + return; + } + + byte last = 0; + do { + + byte v = getHuffmanSymbol(video, bundle.huffman); + + if (v < 12) { + last = v; + *bundle.curDec++ = v; + } else { + int run = rleLens[v - 12]; + + memset(bundle.curDec, last, run); + + bundle.curDec += run; + } + + } while (bundle.curDec < decEnd); +} + +void BinkDecoder::readPatterns(VideoFrame &video, Bundle &bundle) { + uint32 n = readBundleCount(video, bundle); + if (n == 0) + return; + + byte *decEnd = bundle.curDec + n; + if (decEnd > bundle.dataEnd) + error("Too many pattern values"); + + byte v; + while (bundle.curDec < decEnd) { + v = getHuffmanSymbol(video, bundle.huffman); + v |= getHuffmanSymbol(video, bundle.huffman) << 4; + *bundle.curDec++ = v; + } +} + + +void BinkDecoder::readColors(VideoFrame &video, Bundle &bundle) { + uint32 n = readBundleCount(video, bundle); + if (n == 0) + return; + + byte *decEnd = bundle.curDec + n; + if (decEnd > bundle.dataEnd) + error("Too many color values"); + + if (video.bits->getBit()) { + _colLastVal = getHuffmanSymbol(video, _colHighHuffman[_colLastVal]); + + byte v; + v = getHuffmanSymbol(video, bundle.huffman); + v = (_colLastVal << 4) | v; + + if (_id != kBIKiID) { + int sign = ((int8) v) >> 7; + v = ((v & 0x7F) ^ sign) - sign; + v += 0x80; + } + + memset(bundle.curDec, v, n); + bundle.curDec += n; + + return; + } + + while (bundle.curDec < decEnd) { + _colLastVal = getHuffmanSymbol(video, _colHighHuffman[_colLastVal]); + + byte v; + v = getHuffmanSymbol(video, bundle.huffman); + v = (_colLastVal << 4) | v; + + if (_id != kBIKiID) { + int sign = ((int8) v) >> 7; + v = ((v & 0x7F) ^ sign) - sign; + v += 0x80; + } + *bundle.curDec++ = v; + } +} + +void BinkDecoder::readDCS(VideoFrame &video, Bundle &bundle, int startBits, bool hasSign) { + uint32 length = readBundleCount(video, bundle); + if (length == 0) + return; + + int16 *dest = (int16 *) bundle.curDec; + + int32 v = video.bits->getBits(startBits - (hasSign ? 1 : 0)); + if (v && hasSign) { + int sign = -(int)video.bits->getBit(); + v = (v ^ sign) - sign; + } + + *dest++ = v; + length--; + + for (uint32 i = 0; i < length; i += 8) { + uint32 length2 = MIN<uint32>(length - i, 8); + + byte bSize = video.bits->getBits(4); + + if (bSize) { + + for (uint32 j = 0; j < length2; j++) { + int16 v2 = video.bits->getBits(bSize); + if (v2) { + int sign = -(int)video.bits->getBit(); + v2 = (v2 ^ sign) - sign; + } + + v += v2; + *dest++ = v; + + if ((v < -32768) || (v > 32767)) + error("DC value went out of bounds: %d", v); + } + + } else + for (uint32 j = 0; j < length2; j++) + *dest++ = v; + } + + bundle.curDec = (byte *) dest; +} + +/** Reads 8x8 block of DCT coefficients. */ +void BinkDecoder::readDCTCoeffs(VideoFrame &video, int16 *block, bool isIntra) { + int coefCount = 0; + int coefIdx[64]; + + int listStart = 64; + int listEnd = 64; + + int coefList[128]; int modeList[128]; + coefList[listEnd] = 4; modeList[listEnd++] = 0; + coefList[listEnd] = 24; modeList[listEnd++] = 0; + coefList[listEnd] = 44; modeList[listEnd++] = 0; + coefList[listEnd] = 1; modeList[listEnd++] = 3; + coefList[listEnd] = 2; modeList[listEnd++] = 3; + coefList[listEnd] = 3; modeList[listEnd++] = 3; + + int bits = video.bits->getBits(4) - 1; + for (int mask = 1 << bits; bits >= 0; mask >>= 1, bits--) { + int listPos = listStart; + + while (listPos < listEnd) { + + if (!(modeList[listPos] | coefList[listPos]) || !video.bits->getBit()) { + listPos++; + continue; + } + + int ccoef = coefList[listPos]; + int mode = modeList[listPos]; + + switch (mode) { + case 0: + coefList[listPos] = ccoef + 4; + modeList[listPos] = 1; + case 2: + if (mode == 2) { + coefList[listPos] = 0; + modeList[listPos++] = 0; + } + for (int i = 0; i < 4; i++, ccoef++) { + if (video.bits->getBit()) { + coefList[--listStart] = ccoef; + modeList[ listStart] = 3; + } else { + int t; + if (!bits) { + t = 1 - (video.bits->getBit() << 1); + } else { + t = video.bits->getBits(bits) | mask; + + int sign = -(int)video.bits->getBit(); + t = (t ^ sign) - sign; + } + block[binkScan[ccoef]] = t; + coefIdx[coefCount++] = ccoef; + } + } + break; + + case 1: + modeList[listPos] = 2; + for (int i = 0; i < 3; i++) { + ccoef += 4; + coefList[listEnd] = ccoef; + modeList[listEnd++] = 2; + } + break; + + case 3: + int t; + if (!bits) { + t = 1 - (video.bits->getBit() << 1); + } else { + t = video.bits->getBits(bits) | mask; + + int sign = -(int)video.bits->getBit(); + t = (t ^ sign) - sign; + } + block[binkScan[ccoef]] = t; + coefIdx[coefCount++] = ccoef; + coefList[listPos] = 0; + modeList[listPos++] = 0; + break; + } + } + } + + uint8 quantIdx = video.bits->getBits(4); + const uint32 *quant = isIntra ? binkIntraQuant[quantIdx] : binkInterQuant[quantIdx]; + block[0] = (block[0] * quant[0]) >> 11; + + for (int i = 0; i < coefCount; i++) { + int idx = coefIdx[i]; + block[binkScan[idx]] = (block[binkScan[idx]] * quant[idx]) >> 11; + } + +} + +/** Reads 8x8 block with residue after motion compensation. */ +void BinkDecoder::readResidue(VideoFrame &video, int16 *block, int masksCount) { + int nzCoeff[64]; + int nzCoeffCount = 0; + + int listStart = 64; + int listEnd = 64; + + int coefList[128]; int modeList[128]; + coefList[listEnd] = 4; modeList[listEnd++] = 0; + coefList[listEnd] = 24; modeList[listEnd++] = 0; + coefList[listEnd] = 44; modeList[listEnd++] = 0; + coefList[listEnd] = 0; modeList[listEnd++] = 2; + + for (int mask = 1 << video.bits->getBits(3); mask; mask >>= 1) { + + for (int i = 0; i < nzCoeffCount; i++) { + if (!video.bits->getBit()) + continue; + if (block[nzCoeff[i]] < 0) + block[nzCoeff[i]] -= mask; + else + block[nzCoeff[i]] += mask; + masksCount--; + if (masksCount < 0) + return; + } + + int listPos = listStart; + while (listPos < listEnd) { + + if (!(coefList[listPos] | modeList[listPos]) || !video.bits->getBit()) { + listPos++; + continue; + } + + int ccoef = coefList[listPos]; + int mode = modeList[listPos]; + + switch (mode) { + case 0: + coefList[listPos] = ccoef + 4; + modeList[listPos] = 1; + case 2: + if (mode == 2) { + coefList[listPos] = 0; + modeList[listPos++] = 0; + } + + for (int i = 0; i < 4; i++, ccoef++) { + if (video.bits->getBit()) { + coefList[--listStart] = ccoef; + modeList[ listStart] = 3; + } else { + nzCoeff[nzCoeffCount++] = binkScan[ccoef]; + + int sign = -(int)video.bits->getBit(); + block[binkScan[ccoef]] = (mask ^ sign) - sign; + + masksCount--; + if (masksCount < 0) + return; + } + } + break; + + case 1: + modeList[listPos] = 2; + for (int i = 0; i < 3; i++) { + ccoef += 4; + coefList[listEnd] = ccoef; + modeList[listEnd++] = 2; + } + break; + + case 3: + nzCoeff[nzCoeffCount++] = binkScan[ccoef]; + + int sign = -(int)video.bits->getBit(); + block[binkScan[ccoef]] = (mask ^ sign) - sign; + + coefList[listPos] = 0; + modeList[listPos++] = 0; + masksCount--; + if (masksCount < 0) + return; + break; + } + } + } +} + +float BinkDecoder::getFloat(AudioTrack &audio) { + int power = audio.bits->getBits(5); + + float f = ldexp((float)audio.bits->getBits(23), power - 23); + + if (audio.bits->getBit()) + f = -f; + + return f; +} + +void BinkDecoder::audioBlock(AudioTrack &audio, int16 *out) { + if (audio.codec == kAudioCodecDCT) + audioBlockDCT (audio); + else if (audio.codec == kAudioCodecRDFT) + audioBlockRDFT(audio); + + floatToInt16Interleave(out, const_cast<const float **>(audio.coeffsPtr), audio.frameLen, audio.channels); + + if (!audio.first) { + int count = audio.overlapLen * audio.channels; + int shift = Common::intLog2(count); + for (int i = 0; i < count; i++) { + out[i] = (audio.prevCoeffs[i] * (count - i) + out[i] * i) >> shift; + } + } + + memcpy(audio.prevCoeffs, out + audio.blockSize, audio.overlapLen * audio.channels * sizeof(*out)); + + audio.first = false; +} + +void BinkDecoder::audioBlockDCT(AudioTrack &audio) { + audio.bits->skip(2); + + for (uint8 i = 0; i < audio.channels; i++) { + float *coeffs = audio.coeffsPtr[i]; + + readAudioCoeffs(audio, coeffs); + + coeffs[0] /= 0.5; + + audio.dct->calc(coeffs); + + for (uint32 j = 0; j < audio.frameLen; j++) + coeffs[j] *= (audio.frameLen / 2.0); + } + +} + +void BinkDecoder::audioBlockRDFT(AudioTrack &audio) { + for (uint8 i = 0; i < audio.channels; i++) { + float *coeffs = audio.coeffsPtr[i]; + + readAudioCoeffs(audio, coeffs); + + audio.rdft->calc(coeffs); + } +} + +static const uint8 rleLengthTab[16] = { + 2, 3, 4, 5, 6, 8, 9, 10, 11, 12, 13, 14, 15, 16, 32, 64 +}; + +void BinkDecoder::readAudioCoeffs(AudioTrack &audio, float *coeffs) { + coeffs[0] = getFloat(audio) * audio.root; + coeffs[1] = getFloat(audio) * audio.root; + + float quant[25]; + + for (uint32 i = 0; i < audio.bandCount; i++) { + int value = audio.bits->getBits(8); + + // 0.066399999 / log10(M_E) + quant[i] = exp(MIN(value, 95) * 0.15289164787221953823f) * audio.root; + } + + float q = 0.0; + + // Find band (k) + int k; + for (k = 0; audio.bands[k] < 1; k++) + q = quant[k]; + + // Parse coefficients + uint32 i = 2; + while (i < audio.frameLen) { + + uint32 j = 0; + if (audio.bits->getBit()) + j = i + rleLengthTab[audio.bits->getBits(4)] * 8; + else + j = i + 8; + + j = MIN(j, audio.frameLen); + + int width = audio.bits->getBits(4); + if (width == 0) { + + memset(coeffs + i, 0, (j - i) * sizeof(*coeffs)); + i = j; + while (audio.bands[k] * 2 < i) + q = quant[k++]; + + } else { + + while (i < j) { + if (audio.bands[k] * 2 == i) + q = quant[k++]; + + int coeff = audio.bits->getBits(width); + if (coeff) { + + if (audio.bits->getBit()) + coeffs[i] = -q * coeff; + else + coeffs[i] = q * coeff; + + } else { + coeffs[i] = 0.0; + } + i++; + } + + } + + } + +} + +static inline int floatToInt16One(float src) { + return (int16) CLIP<int>((int) floor(src + 0.5), -32768, 32767); +} + +void BinkDecoder::floatToInt16Interleave(int16 *dst, const float **src, uint32 length, uint8 channels) { + if (channels == 2) { + for (uint32 i = 0; i < length; i++) { + dst[2 * i ] = TO_LE_16(floatToInt16One(src[0][i])); + dst[2 * i + 1] = TO_LE_16(floatToInt16One(src[1][i])); + } + } else { + for(uint8 c = 0; c < channels; c++) + for(uint32 i = 0, j = c; i < length; i++, j += channels) + dst[j] = TO_LE_16(floatToInt16One(src[c][i])); + } +} + +#define A1 2896 /* (1/sqrt(2))<<12 */ +#define A2 2217 +#define A3 3784 +#define A4 -5352 + +#define IDCT_TRANSFORM(dest,s0,s1,s2,s3,s4,s5,s6,s7,d0,d1,d2,d3,d4,d5,d6,d7,munge,src) {\ + const int a0 = (src)[s0] + (src)[s4]; \ + const int a1 = (src)[s0] - (src)[s4]; \ + const int a2 = (src)[s2] + (src)[s6]; \ + const int a3 = (A1*((src)[s2] - (src)[s6])) >> 11; \ + const int a4 = (src)[s5] + (src)[s3]; \ + const int a5 = (src)[s5] - (src)[s3]; \ + const int a6 = (src)[s1] + (src)[s7]; \ + const int a7 = (src)[s1] - (src)[s7]; \ + const int b0 = a4 + a6; \ + const int b1 = (A3*(a5 + a7)) >> 11; \ + const int b2 = ((A4*a5) >> 11) - b0 + b1; \ + const int b3 = (A1*(a6 - a4) >> 11) - b2; \ + const int b4 = ((A2*a7) >> 11) + b3 - b1; \ + (dest)[d0] = munge(a0+a2 +b0); \ + (dest)[d1] = munge(a1+a3-a2+b2); \ + (dest)[d2] = munge(a1-a3+a2+b3); \ + (dest)[d3] = munge(a0-a2 -b4); \ + (dest)[d4] = munge(a0-a2 +b4); \ + (dest)[d5] = munge(a1-a3+a2-b3); \ + (dest)[d6] = munge(a1+a3-a2-b2); \ + (dest)[d7] = munge(a0+a2 -b0); \ +} +/* end IDCT_TRANSFORM macro */ + +#define MUNGE_NONE(x) (x) +#define IDCT_COL(dest,src) IDCT_TRANSFORM(dest,0,8,16,24,32,40,48,56,0,8,16,24,32,40,48,56,MUNGE_NONE,src) + +#define MUNGE_ROW(x) (((x) + 0x7F)>>8) +#define IDCT_ROW(dest,src) IDCT_TRANSFORM(dest,0,1,2,3,4,5,6,7,0,1,2,3,4,5,6,7,MUNGE_ROW,src) + +static inline void IDCTCol(int16 *dest, const int16 *src) +{ + if ((src[8] | src[16] | src[24] | src[32] | src[40] | src[48] | src[56]) == 0) { + dest[ 0] = + dest[ 8] = + dest[16] = + dest[24] = + dest[32] = + dest[40] = + dest[48] = + dest[56] = src[0]; + } else { + IDCT_COL(dest, src); + } +} + +void BinkDecoder::IDCT(int16 *block) { + int i; + int16 temp[64]; + + for (i = 0; i < 8; i++) + IDCTCol(&temp[i], &block[i]); + for (i = 0; i < 8; i++) { + IDCT_ROW( (&block[8*i]), (&temp[8*i]) ); + } +} + +void BinkDecoder::IDCTAdd(DecodeContext &ctx, int16 *block) { + int i, j; + + IDCT(block); + byte *dest = ctx.dest; + for (i = 0; i < 8; i++, dest += ctx.pitch, block += 8) + for (j = 0; j < 8; j++) + dest[j] += block[j]; +} + +void BinkDecoder::IDCTPut(DecodeContext &ctx, int16 *block) { + int i; + int16 temp[64]; + for (i = 0; i < 8; i++) + IDCTCol(&temp[i], &block[i]); + for (i = 0; i < 8; i++) { + IDCT_ROW( (&ctx.dest[i*ctx.pitch]), (&temp[8*i]) ); + } +} + +} // End of namespace Video diff --git a/video/bink_decoder.h b/video/bink_decoder.h new file mode 100644 index 0000000000..ceb55391a9 --- /dev/null +++ b/video/bink_decoder.h @@ -0,0 +1,334 @@ +/* ScummVM - Graphic Adventure Engine + * + * ScummVM is the legal property of its developers, whose names + * are too numerous to list here. Please refer to the COPYRIGHT + * file distributed with this source distribution. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ + +// Based on eos' Bink decoder which is in turn +// based quite heavily on the Bink decoder found in FFmpeg. +// Many thanks to Kostya Shishkov for doing the hard work. + +#include "common/scummsys.h" + +#ifdef USE_BINK + +#ifndef VIDEO_BINK_DECODER_H +#define VIDEO_BINK_DECODER_H + +#include "audio/audiostream.h" +#include "audio/mixer.h" +#include "common/array.h" +#include "common/rational.h" + +#include "video/video_decoder.h" + +namespace Common { + class SeekableReadStream; + class BitStream; + class Huffman; + + class RDFT; + class DCT; +} + +namespace Video { + +/** + * Decoder for Bink videos. + * + * Video decoder used in engines: + * - scumm (he) + */ +class BinkDecoder : public FixedRateVideoDecoder { +public: + BinkDecoder(); + ~BinkDecoder(); + + // VideoDecoder API + bool loadStream(Common::SeekableReadStream *stream); + void close(); + bool isVideoLoaded() const { return _bink != 0; } + uint16 getWidth() const { return _surface.w; } + uint16 getHeight() const { return _surface.h; } + Graphics::PixelFormat getPixelFormat() const { return _surface.format; } + uint32 getFrameCount() const { return _frames.size(); } + uint32 getElapsedTime() const; + const Graphics::Surface *decodeNextFrame(); + + // FixedRateVideoDecoder + Common::Rational getFrameRate() const { return _frameRate; } + +private: + static const int kAudioChannelsMax = 2; + static const int kAudioBlockSizeMax = (kAudioChannelsMax << 11); + + /** IDs for different data types used in Bink video codec. */ + enum Source { + kSourceBlockTypes = 0, ///< 8x8 block types. + kSourceSubBlockTypes , ///< 16x16 block types (a subset of 8x8 block types). + kSourceColors , ///< Pixel values used for different block types. + kSourcePattern , ///< 8-bit values for 2-color pattern fill. + kSourceXOff , ///< X components of motion value. + kSourceYOff , ///< Y components of motion value. + kSourceIntraDC , ///< DC values for intrablocks with DCT. + kSourceInterDC , ///< DC values for interblocks with DCT. + kSourceRun , ///< Run lengths for special fill block. + + kSourceMAX + }; + + /** Bink video block types. */ + enum BlockType { + kBlockSkip = 0, ///< Skipped block. + kBlockScaled , ///< Block has size 16x16. + kBlockMotion , ///< Block is copied from previous frame with some offset. + kBlockRun , ///< Block is composed from runs of colors with custom scan order. + kBlockResidue , ///< Motion block with some difference added. + kBlockIntra , ///< Intra DCT block. + kBlockFill , ///< Block is filled with single color. + kBlockInter , ///< Motion block with DCT applied to the difference. + kBlockPattern , ///< Block is filled with two colors following custom pattern. + kBlockRaw ///< Uncoded 8x8 block. + }; + + /** Data structure for decoding and tranlating Huffman'd data. */ + struct Huffman { + int index; ///< Index of the Huffman codebook to use. + byte symbols[16]; ///< Huffman symbol => Bink symbol tranlation list. + }; + + /** Data structure used for decoding a single Bink data type. */ + struct Bundle { + int countLengths[2]; ///< Lengths of number of entries to decode (in bits). + int countLength; ///< Length of number of entries to decode (in bits) for the current plane. + + Huffman huffman; ///< Huffman codebook. + + byte *data; ///< Buffer for decoded symbols. + byte *dataEnd; ///< Buffer end. + + byte *curDec; ///< Pointer to the data that wasn't yet decoded. + byte *curPtr; ///< Pointer to the data that wasn't yet read. + }; + + enum AudioCodec { + kAudioCodecDCT, + kAudioCodecRDFT + }; + + /** An audio track. */ + struct AudioTrack { + uint16 flags; + + uint32 sampleRate; + uint8 channels; + + uint32 outSampleRate; + uint8 outChannels; + + AudioCodec codec; + + uint32 sampleCount; + + Common::BitStream *bits; + + bool first; + + uint32 frameLen; + uint32 overlapLen; + + uint32 blockSize; + + uint32 bandCount; + uint32 *bands; + + float root; + + float coeffs[16 * kAudioBlockSizeMax]; + int16 prevCoeffs[kAudioBlockSizeMax]; + + float *coeffsPtr[kAudioChannelsMax]; + + Common::RDFT *rdft; + Common::DCT *dct; + + AudioTrack(); + ~AudioTrack(); + }; + + /** A video frame. */ + struct VideoFrame { + bool keyFrame; + + uint32 offset; + uint32 size; + + Common::BitStream *bits; + + VideoFrame(); + ~VideoFrame(); + }; + + /** A decoder state. */ + struct DecodeContext { + VideoFrame *video; + + uint32 planeIdx; + + uint32 blockX; + uint32 blockY; + + byte *dest; + byte *prev; + + byte *destStart, *destEnd; + byte *prevStart, *prevEnd; + + uint32 pitch; + + int coordMap[64]; + int coordScaledMap1[64]; + int coordScaledMap2[64]; + int coordScaledMap3[64]; + int coordScaledMap4[64]; + }; + + Common::SeekableReadStream *_bink; + + uint32 _id; ///< The BIK FourCC. + + Common::Rational _frameRate; + + Graphics::Surface _surface; + + Audio::SoundHandle _audioHandle; + Audio::QueuingAudioStream *_audioStream; + bool _audioStarted; + + uint32 _videoFlags; ///< Video frame features. + + bool _hasAlpha; ///< Do video frames have alpha? + bool _swapPlanes; ///< Are the planes ordered (A)YVU instead of (A)YUV? + + uint32 _audioFrame; + + Common::Array<AudioTrack> _audioTracks; ///< All audio tracks. + Common::Array<VideoFrame> _frames; ///< All video frames. + + uint32 _audioTrack; ///< Audio track to use. + + Common::Huffman *_huffman[16]; ///< The 16 Huffman codebooks used in Bink decoding. + + Bundle _bundles[kSourceMAX]; ///< Bundles for decoding all data types. + + /** Huffman codebooks to use for decoding high nibbles in color data types. */ + Huffman _colHighHuffman[16]; + /** Value of the last decoded high nibble in color data types. */ + int _colLastVal; + + byte *_curPlanes[4]; ///< The 4 color planes, YUVA, current frame. + byte *_oldPlanes[4]; ///< The 4 color planes, YUVA, last frame. + + + /** Initialize the bundles. */ + void initBundles(); + /** Deinitialize the bundles. */ + void deinitBundles(); + + /** Initialize the Huffman decoders. */ + void initHuffman(); + + /** Decode an audio packet. */ + void audioPacket(AudioTrack &audio); + /** Decode a video packet. */ + void videoPacket(VideoFrame &video); + + /** Decode a plane. */ + void decodePlane(VideoFrame &video, int planeIdx, bool isChroma); + + /** Read/Initialize a bundle for decoding a plane. */ + void readBundle(VideoFrame &video, Source source); + + /** Read the symbols for a Huffman code. */ + void readHuffman(VideoFrame &video, Huffman &huffman); + /** Merge two Huffman symbol lists. */ + void mergeHuffmanSymbols(VideoFrame &video, byte *dst, const byte *src, int size); + + /** Read and translate a symbol out of a Huffman code. */ + byte getHuffmanSymbol(VideoFrame &video, Huffman &huffman); + + /** Get a direct value out of a bundle. */ + int32 getBundleValue(Source source); + /** Read a count value out of a bundle. */ + uint32 readBundleCount(VideoFrame &video, Bundle &bundle); + + // Handle the block types + void blockSkip (DecodeContext &ctx); + void blockScaledSkip (DecodeContext &ctx); + void blockScaledRun (DecodeContext &ctx); + void blockScaledIntra (DecodeContext &ctx); + void blockScaledFill (DecodeContext &ctx); + void blockScaledPattern(DecodeContext &ctx); + void blockScaledRaw (DecodeContext &ctx); + void blockScaled (DecodeContext &ctx); + void blockMotion (DecodeContext &ctx); + void blockRun (DecodeContext &ctx); + void blockResidue (DecodeContext &ctx); + void blockIntra (DecodeContext &ctx); + void blockFill (DecodeContext &ctx); + void blockInter (DecodeContext &ctx); + void blockPattern (DecodeContext &ctx); + void blockRaw (DecodeContext &ctx); + + // Read the bundles + void readRuns (VideoFrame &video, Bundle &bundle); + void readMotionValues(VideoFrame &video, Bundle &bundle); + void readBlockTypes (VideoFrame &video, Bundle &bundle); + void readPatterns (VideoFrame &video, Bundle &bundle); + void readColors (VideoFrame &video, Bundle &bundle); + void readDCS (VideoFrame &video, Bundle &bundle, int startBits, bool hasSign); + void readDCTCoeffs (VideoFrame &video, int16 *block, bool isIntra); + void readResidue (VideoFrame &video, int16 *block, int masksCount); + + void initAudioTrack(AudioTrack &audio); + + float getFloat(AudioTrack &audio); + + /** Decode an audio block. */ + void audioBlock (AudioTrack &audio, int16 *out); + /** Decode a DCT'd audio block. */ + void audioBlockDCT (AudioTrack &audio); + /** Decode a RDFT'd audio block. */ + void audioBlockRDFT(AudioTrack &audio); + + void readAudioCoeffs(AudioTrack &audio, float *coeffs); + + void floatToInt16Interleave(int16 *dst, const float **src, uint32 length, uint8 channels); + + // Bink video IDCT + void IDCT(int16 *block); + void IDCTPut(DecodeContext &ctx, int16 *block); + void IDCTAdd(DecodeContext &ctx, int16 *block); +}; + +} // End of namespace Video + +#endif // VIDEO_BINK_DECODER_H + +#endif // USE_BINK diff --git a/video/binkdata.h b/video/binkdata.h new file mode 100644 index 0000000000..02105a7493 --- /dev/null +++ b/video/binkdata.h @@ -0,0 +1,578 @@ +/* ScummVM - Graphic Adventure Engine + * + * ScummVM is the legal property of its developers, whose names + * are too numerous to list here. Please refer to the COPYRIGHT + * file distributed with this source distribution. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ + +#ifndef VIDEO_BINKDATA_H +#define VIDEO_BINKDATA_H + +#include "common/scummsys.h" + +namespace Video { + +static const uint16 binkCriticalFreqs[25] = { + 100, 200, 300, 400, 510, 630, 770, 920, + 1080, 1270, 1480, 1720, 2000, 2320, 2700, 3150, + 3700, 4400, 5300, 6400, 7700, 9500, 12000, 15500, + 24500, +}; + +/** Bink DCT and residue 8x8 block scan order */ +static const uint8 binkScan[64] = { + 0, 1, 8, 9, 2, 3, 10, 11, + 4, 5, 12, 13, 6, 7, 14, 15, + 20, 21, 28, 29, 22, 23, 30, 31, + 16, 17, 24, 25, 32, 33, 40, 41, + 34, 35, 42, 43, 48, 49, 56, 57, + 50, 51, 58, 59, 18, 19, 26, 27, + 36, 37, 44, 45, 38, 39, 46, 47, + 52, 53, 60, 61, 54, 55, 62, 63 +}; + +static const uint32 binkHuffmanCodes[16][16] = { + { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F }, + { 0x00, 0x01, 0x03, 0x05, 0x07, 0x09, 0x0B, 0x0D, 0x0F, 0x13, 0x15, 0x17, 0x19, 0x1B, 0x1D, 0x1F }, + { 0x00, 0x02, 0x01, 0x09, 0x05, 0x15, 0x0D, 0x1D, 0x03, 0x13, 0x0B, 0x1B, 0x07, 0x17, 0x0F, 0x1F }, + { 0x00, 0x02, 0x06, 0x01, 0x09, 0x05, 0x0D, 0x1D, 0x03, 0x13, 0x0B, 0x1B, 0x07, 0x17, 0x0F, 0x1F }, + { 0x00, 0x04, 0x02, 0x06, 0x01, 0x09, 0x05, 0x0D, 0x03, 0x13, 0x0B, 0x1B, 0x07, 0x17, 0x0F, 0x1F }, + { 0x00, 0x04, 0x02, 0x0A, 0x06, 0x0E, 0x01, 0x09, 0x05, 0x0D, 0x03, 0x0B, 0x07, 0x17, 0x0F, 0x1F }, + { 0x00, 0x02, 0x0A, 0x06, 0x0E, 0x01, 0x09, 0x05, 0x0D, 0x03, 0x0B, 0x1B, 0x07, 0x17, 0x0F, 0x1F }, + { 0x00, 0x01, 0x05, 0x03, 0x13, 0x0B, 0x1B, 0x3B, 0x07, 0x27, 0x17, 0x37, 0x0F, 0x2F, 0x1F, 0x3F }, + { 0x00, 0x01, 0x03, 0x13, 0x0B, 0x2B, 0x1B, 0x3B, 0x07, 0x27, 0x17, 0x37, 0x0F, 0x2F, 0x1F, 0x3F }, + { 0x00, 0x01, 0x05, 0x0D, 0x03, 0x13, 0x0B, 0x1B, 0x07, 0x27, 0x17, 0x37, 0x0F, 0x2F, 0x1F, 0x3F }, + { 0x00, 0x02, 0x01, 0x05, 0x0D, 0x03, 0x13, 0x0B, 0x1B, 0x07, 0x17, 0x37, 0x0F, 0x2F, 0x1F, 0x3F }, + { 0x00, 0x01, 0x09, 0x05, 0x0D, 0x03, 0x13, 0x0B, 0x1B, 0x07, 0x17, 0x37, 0x0F, 0x2F, 0x1F, 0x3F }, + { 0x00, 0x02, 0x01, 0x03, 0x13, 0x0B, 0x1B, 0x3B, 0x07, 0x27, 0x17, 0x37, 0x0F, 0x2F, 0x1F, 0x3F }, + { 0x00, 0x01, 0x05, 0x03, 0x07, 0x27, 0x17, 0x37, 0x0F, 0x4F, 0x2F, 0x6F, 0x1F, 0x5F, 0x3F, 0x7F }, + { 0x00, 0x01, 0x05, 0x03, 0x07, 0x17, 0x37, 0x77, 0x0F, 0x4F, 0x2F, 0x6F, 0x1F, 0x5F, 0x3F, 0x7F }, + { 0x00, 0x02, 0x01, 0x05, 0x03, 0x07, 0x27, 0x17, 0x37, 0x0F, 0x2F, 0x6F, 0x1F, 0x5F, 0x3F, 0x7F } +}; + +static const uint8 binkHuffmanLengths[16][16] = { + { 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 }, + { 1, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5 }, + { 2, 2, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5 }, + { 2, 3, 3, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5 }, + { 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5 }, + { 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5 }, + { 2, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5 }, + { 1, 3, 3, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6 }, + { 1, 2, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6 }, + { 1, 3, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6 }, + { 2, 2, 3, 4, 4, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6 }, + { 1, 4, 4, 4, 4, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6 }, + { 2, 2, 2, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6 }, + { 1, 3, 3, 3, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7 }, + { 1, 3, 3, 3, 5, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7 }, + { 2, 2, 3, 3, 3, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7 } +}; + +static const uint8 binkPatterns[16][64] = { +{ + 0x00, 0x08, 0x10, 0x18, 0x20, 0x28, 0x30, 0x38, + 0x39, 0x31, 0x29, 0x21, 0x19, 0x11, 0x09, 0x01, + 0x02, 0x0A, 0x12, 0x1A, 0x22, 0x2A, 0x32, 0x3A, + 0x3B, 0x33, 0x2B, 0x23, 0x1B, 0x13, 0x0B, 0x03, + 0x04, 0x0C, 0x14, 0x1C, 0x24, 0x2C, 0x34, 0x3C, + 0x3D, 0x35, 0x2D, 0x25, 0x1D, 0x15, 0x0D, 0x05, + 0x06, 0x0E, 0x16, 0x1E, 0x26, 0x2E, 0x36, 0x3E, + 0x3F, 0x37, 0x2F, 0x27, 0x1F, 0x17, 0x0F, 0x07 +}, +{ + 0x3B, 0x3A, 0x39, 0x38, 0x30, 0x31, 0x32, 0x33, + 0x2B, 0x2A, 0x29, 0x28, 0x20, 0x21, 0x22, 0x23, + 0x1B, 0x1A, 0x19, 0x18, 0x10, 0x11, 0x12, 0x13, + 0x0B, 0x0A, 0x09, 0x08, 0x00, 0x01, 0x02, 0x03, + 0x04, 0x05, 0x06, 0x07, 0x0F, 0x0E, 0x0D, 0x0C, + 0x14, 0x15, 0x16, 0x17, 0x1F, 0x1E, 0x1D, 0x1C, + 0x24, 0x25, 0x26, 0x27, 0x2F, 0x2E, 0x2D, 0x2C, + 0x34, 0x35, 0x36, 0x37, 0x3F, 0x3E, 0x3D, 0x3C +}, +{ + 0x19, 0x11, 0x12, 0x1A, 0x1B, 0x13, 0x0B, 0x03, + 0x02, 0x0A, 0x09, 0x01, 0x00, 0x08, 0x10, 0x18, + 0x20, 0x28, 0x30, 0x38, 0x39, 0x31, 0x29, 0x2A, + 0x32, 0x3A, 0x3B, 0x33, 0x2B, 0x23, 0x22, 0x21, + 0x1D, 0x15, 0x16, 0x1E, 0x1F, 0x17, 0x0F, 0x07, + 0x06, 0x0E, 0x0D, 0x05, 0x04, 0x0C, 0x14, 0x1C, + 0x24, 0x2C, 0x34, 0x3C, 0x3D, 0x35, 0x2D, 0x2E, + 0x36, 0x3E, 0x3F, 0x37, 0x2F, 0x27, 0x26, 0x25 +}, +{ + 0x03, 0x0B, 0x02, 0x0A, 0x01, 0x09, 0x00, 0x08, + 0x10, 0x18, 0x11, 0x19, 0x12, 0x1A, 0x13, 0x1B, + 0x23, 0x2B, 0x22, 0x2A, 0x21, 0x29, 0x20, 0x28, + 0x30, 0x38, 0x31, 0x39, 0x32, 0x3A, 0x33, 0x3B, + 0x3C, 0x34, 0x3D, 0x35, 0x3E, 0x36, 0x3F, 0x37, + 0x2F, 0x27, 0x2E, 0x26, 0x2D, 0x25, 0x2C, 0x24, + 0x1C, 0x14, 0x1D, 0x15, 0x1E, 0x16, 0x1F, 0x17, + 0x0F, 0x07, 0x0E, 0x06, 0x0D, 0x05, 0x0C, 0x04 +}, +{ + 0x18, 0x19, 0x10, 0x11, 0x08, 0x09, 0x00, 0x01, + 0x02, 0x03, 0x0A, 0x0B, 0x12, 0x13, 0x1A, 0x1B, + 0x1C, 0x1D, 0x14, 0x15, 0x0C, 0x0D, 0x04, 0x05, + 0x06, 0x07, 0x0E, 0x0F, 0x16, 0x17, 0x1E, 0x1F, + 0x27, 0x26, 0x2F, 0x2E, 0x37, 0x36, 0x3F, 0x3E, + 0x3D, 0x3C, 0x35, 0x34, 0x2D, 0x2C, 0x25, 0x24, + 0x23, 0x22, 0x2B, 0x2A, 0x33, 0x32, 0x3B, 0x3A, + 0x39, 0x38, 0x31, 0x30, 0x29, 0x28, 0x21, 0x20 +}, +{ + 0x00, 0x01, 0x02, 0x03, 0x08, 0x09, 0x0A, 0x0B, + 0x10, 0x11, 0x12, 0x13, 0x18, 0x19, 0x1A, 0x1B, + 0x20, 0x21, 0x22, 0x23, 0x28, 0x29, 0x2A, 0x2B, + 0x30, 0x31, 0x32, 0x33, 0x38, 0x39, 0x3A, 0x3B, + 0x04, 0x05, 0x06, 0x07, 0x0C, 0x0D, 0x0E, 0x0F, + 0x14, 0x15, 0x16, 0x17, 0x1C, 0x1D, 0x1E, 0x1F, + 0x24, 0x25, 0x26, 0x27, 0x2C, 0x2D, 0x2E, 0x2F, + 0x34, 0x35, 0x36, 0x37, 0x3C, 0x3D, 0x3E, 0x3F +}, +{ + 0x06, 0x07, 0x0F, 0x0E, 0x0D, 0x05, 0x0C, 0x04, + 0x03, 0x0B, 0x02, 0x0A, 0x09, 0x01, 0x00, 0x08, + 0x10, 0x18, 0x11, 0x19, 0x12, 0x1A, 0x13, 0x1B, + 0x14, 0x1C, 0x15, 0x1D, 0x16, 0x1E, 0x17, 0x1F, + 0x27, 0x2F, 0x26, 0x2E, 0x25, 0x2D, 0x24, 0x2C, + 0x23, 0x2B, 0x22, 0x2A, 0x21, 0x29, 0x20, 0x28, + 0x31, 0x30, 0x38, 0x39, 0x3A, 0x32, 0x3B, 0x33, + 0x3C, 0x34, 0x3D, 0x35, 0x36, 0x37, 0x3F, 0x3E +}, +{ + 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, + 0x0F, 0x0E, 0x0D, 0x0C, 0x0B, 0x0A, 0x09, 0x08, + 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, + 0x1F, 0x1E, 0x1D, 0x1C, 0x1B, 0x1A, 0x19, 0x18, + 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, + 0x2F, 0x2E, 0x2D, 0x2C, 0x2B, 0x2A, 0x29, 0x28, + 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, + 0x3F, 0x3E, 0x3D, 0x3C, 0x3B, 0x3A, 0x39, 0x38 +}, +{ + 0x00, 0x08, 0x09, 0x01, 0x02, 0x03, 0x0B, 0x0A, + 0x12, 0x13, 0x1B, 0x1A, 0x19, 0x11, 0x10, 0x18, + 0x20, 0x28, 0x29, 0x21, 0x22, 0x23, 0x2B, 0x2A, + 0x32, 0x31, 0x30, 0x38, 0x39, 0x3A, 0x3B, 0x33, + 0x34, 0x3C, 0x3D, 0x3E, 0x3F, 0x37, 0x36, 0x35, + 0x2D, 0x2C, 0x24, 0x25, 0x26, 0x2E, 0x2F, 0x27, + 0x1F, 0x17, 0x16, 0x1E, 0x1D, 0x1C, 0x14, 0x15, + 0x0D, 0x0C, 0x04, 0x05, 0x06, 0x0E, 0x0F, 0x07 +}, +{ + 0x18, 0x19, 0x10, 0x11, 0x08, 0x09, 0x00, 0x01, + 0x02, 0x03, 0x0A, 0x0B, 0x12, 0x13, 0x1A, 0x1B, + 0x1C, 0x1D, 0x14, 0x15, 0x0C, 0x0D, 0x04, 0x05, + 0x06, 0x07, 0x0E, 0x0F, 0x16, 0x17, 0x1E, 0x1F, + 0x26, 0x27, 0x2E, 0x2F, 0x36, 0x37, 0x3E, 0x3F, + 0x3C, 0x3D, 0x34, 0x35, 0x2C, 0x2D, 0x24, 0x25, + 0x22, 0x23, 0x2A, 0x2B, 0x32, 0x33, 0x3A, 0x3B, + 0x38, 0x39, 0x30, 0x31, 0x28, 0x29, 0x20, 0x21 +}, +{ + 0x00, 0x08, 0x01, 0x09, 0x02, 0x0A, 0x03, 0x0B, + 0x13, 0x1B, 0x12, 0x1A, 0x11, 0x19, 0x10, 0x18, + 0x20, 0x28, 0x21, 0x29, 0x22, 0x2A, 0x23, 0x2B, + 0x33, 0x3B, 0x32, 0x3A, 0x31, 0x39, 0x30, 0x38, + 0x3C, 0x34, 0x3D, 0x35, 0x3E, 0x36, 0x3F, 0x37, + 0x2F, 0x27, 0x2E, 0x26, 0x2D, 0x25, 0x2C, 0x24, + 0x1F, 0x17, 0x1E, 0x16, 0x1D, 0x15, 0x1C, 0x14, + 0x0C, 0x04, 0x0D, 0x05, 0x0E, 0x06, 0x0F, 0x07 +}, +{ + 0x00, 0x08, 0x10, 0x18, 0x19, 0x1A, 0x1B, 0x13, + 0x0B, 0x03, 0x02, 0x01, 0x09, 0x11, 0x12, 0x0A, + 0x04, 0x0C, 0x14, 0x1C, 0x1D, 0x1E, 0x1F, 0x17, + 0x0F, 0x07, 0x06, 0x05, 0x0D, 0x15, 0x16, 0x0E, + 0x24, 0x2C, 0x34, 0x3C, 0x3D, 0x3E, 0x3F, 0x37, + 0x2F, 0x27, 0x26, 0x25, 0x2D, 0x35, 0x36, 0x2E, + 0x20, 0x28, 0x30, 0x38, 0x39, 0x3A, 0x3B, 0x33, + 0x2B, 0x23, 0x22, 0x21, 0x29, 0x31, 0x32, 0x2A +}, +{ + 0x00, 0x08, 0x09, 0x01, 0x02, 0x03, 0x0B, 0x0A, + 0x13, 0x1B, 0x1A, 0x12, 0x11, 0x10, 0x18, 0x19, + 0x21, 0x20, 0x28, 0x29, 0x2A, 0x22, 0x23, 0x2B, + 0x33, 0x3B, 0x3A, 0x32, 0x31, 0x39, 0x38, 0x30, + 0x34, 0x3C, 0x3D, 0x35, 0x36, 0x3E, 0x3F, 0x37, + 0x2F, 0x27, 0x26, 0x2E, 0x2D, 0x2C, 0x24, 0x25, + 0x1D, 0x1C, 0x14, 0x15, 0x16, 0x1E, 0x1F, 0x17, + 0x0E, 0x0F, 0x07, 0x06, 0x05, 0x0D, 0x0C, 0x04 +}, +{ + 0x18, 0x10, 0x08, 0x00, 0x01, 0x02, 0x03, 0x0B, + 0x13, 0x1B, 0x1A, 0x19, 0x11, 0x0A, 0x09, 0x12, + 0x1C, 0x14, 0x0C, 0x04, 0x05, 0x06, 0x07, 0x0F, + 0x17, 0x1F, 0x1E, 0x1D, 0x15, 0x0E, 0x0D, 0x16, + 0x3C, 0x34, 0x2C, 0x24, 0x25, 0x26, 0x27, 0x2F, + 0x37, 0x3F, 0x3E, 0x3D, 0x35, 0x2E, 0x2D, 0x36, + 0x38, 0x30, 0x28, 0x20, 0x21, 0x22, 0x23, 0x2B, + 0x33, 0x3B, 0x3A, 0x39, 0x31, 0x2A, 0x29, 0x32 +}, +{ + 0x00, 0x08, 0x09, 0x01, 0x02, 0x0A, 0x12, 0x11, + 0x10, 0x18, 0x19, 0x1A, 0x1B, 0x13, 0x0B, 0x03, + 0x07, 0x06, 0x0E, 0x0F, 0x17, 0x16, 0x15, 0x0D, + 0x05, 0x04, 0x0C, 0x14, 0x1C, 0x1D, 0x1E, 0x1F, + 0x3F, 0x3E, 0x36, 0x37, 0x2F, 0x2E, 0x2D, 0x35, + 0x3D, 0x3C, 0x34, 0x2C, 0x24, 0x25, 0x26, 0x27, + 0x38, 0x30, 0x31, 0x39, 0x3A, 0x32, 0x2A, 0x29, + 0x28, 0x20, 0x21, 0x22, 0x23, 0x2B, 0x33, 0x3B +}, +{ + 0x00, 0x01, 0x08, 0x09, 0x10, 0x11, 0x18, 0x19, + 0x20, 0x21, 0x28, 0x29, 0x30, 0x31, 0x38, 0x39, + 0x3A, 0x3B, 0x32, 0x33, 0x2A, 0x2B, 0x22, 0x23, + 0x1A, 0x1B, 0x12, 0x13, 0x0A, 0x0B, 0x02, 0x03, + 0x04, 0x05, 0x0C, 0x0D, 0x14, 0x15, 0x1C, 0x1D, + 0x24, 0x25, 0x2C, 0x2D, 0x34, 0x35, 0x3C, 0x3D, + 0x3E, 0x3F, 0x36, 0x37, 0x2E, 0x2F, 0x26, 0x27, + 0x1E, 0x1F, 0x16, 0x17, 0x0E, 0x0F, 0x06, 0x07 +} +}; + +static const uint32 binkIntraQuant[16][64] = { +{ + 0x010000, 0x016315, 0x01E83D, 0x02A535, 0x014E7B, 0x016577, 0x02F1E6, 0x02724C, + 0x010000, 0x00EEDA, 0x024102, 0x017F9B, 0x00BE80, 0x00611E, 0x01083C, 0x00A552, + 0x021F88, 0x01DC53, 0x027FAD, 0x01F697, 0x014819, 0x00A743, 0x015A31, 0x009688, + 0x02346F, 0x030EE5, 0x01FBFA, 0x02C096, 0x01D000, 0x028396, 0x019247, 0x01F9AA, + 0x02346F, 0x01FBFA, 0x01DC53, 0x0231B8, 0x012F12, 0x01E06C, 0x00CB10, 0x0119A8, + 0x01C48C, 0x019748, 0x014E86, 0x0122AF, 0x02C628, 0x027F20, 0x0297B5, 0x023F32, + 0x025000, 0x01AB6B, 0x01D122, 0x0159B3, 0x012669, 0x008D43, 0x00EE1F, 0x0075ED, + 0x01490C, 0x010288, 0x00F735, 0x00EF51, 0x00E0F1, 0x0072AD, 0x00A4D8, 0x006517, +}, +{ + 0x015555, 0x01D971, 0x028AFC, 0x0386F1, 0x01BDF9, 0x01DC9F, 0x03ED33, 0x034311, + 0x015555, 0x013E78, 0x030158, 0x01FF7A, 0x00FE00, 0x00817D, 0x01604F, 0x00DC6D, + 0x02D4B5, 0x027B19, 0x0354E7, 0x029E1F, 0x01B577, 0x00DF04, 0x01CD96, 0x00C8B6, + 0x02F095, 0x0413DC, 0x02A54E, 0x03AB73, 0x026AAB, 0x035A1E, 0x02185E, 0x02A238, + 0x02F095, 0x02A54E, 0x027B19, 0x02ECF5, 0x019418, 0x028090, 0x010EC0, 0x01778A, + 0x025B66, 0x021F0B, 0x01BE09, 0x018394, 0x03B2E0, 0x03542A, 0x0374F1, 0x02FEEE, + 0x031555, 0x0239E4, 0x026C2D, 0x01CCEE, 0x01888C, 0x00BC59, 0x013D7E, 0x009D3C, + 0x01B6BB, 0x0158B5, 0x01499C, 0x013F17, 0x012BEC, 0x0098E6, 0x00DBCB, 0x0086C9, +}, +{ + 0x01AAAB, 0x024FCE, 0x032DBB, 0x0468AD, 0x022D78, 0x0253C7, 0x04E87F, 0x0413D5, + 0x01AAAB, 0x018E16, 0x03C1AE, 0x027F58, 0x013D80, 0x00A1DC, 0x01B863, 0x011388, + 0x0389E2, 0x0319DF, 0x042A21, 0x0345A7, 0x0222D4, 0x0116C5, 0x0240FC, 0x00FAE3, + 0x03ACBA, 0x0518D3, 0x034EA1, 0x04964F, 0x030555, 0x0430A5, 0x029E76, 0x034AC5, + 0x03ACBA, 0x034EA1, 0x0319DF, 0x03A833, 0x01F91E, 0x0320B4, 0x015270, 0x01D56D, + 0x02F23F, 0x02A6CE, 0x022D8B, 0x01E479, 0x049F98, 0x042935, 0x04522D, 0x03BEA9, + 0x03DAAB, 0x02C85D, 0x030738, 0x02402A, 0x01EAAF, 0x00EB6F, 0x018CDE, 0x00C48A, + 0x022469, 0x01AEE2, 0x019C02, 0x018EDD, 0x0176E7, 0x00BF20, 0x0112BE, 0x00A87B, +}, +{ + 0x020000, 0x02C62A, 0x03D07A, 0x054A69, 0x029CF6, 0x02CAEF, 0x05E3CC, 0x04E499, + 0x020000, 0x01DDB4, 0x048204, 0x02FF36, 0x017D01, 0x00C23C, 0x021077, 0x014AA3, + 0x043F0F, 0x03B8A6, 0x04FF5A, 0x03ED2E, 0x029032, 0x014E86, 0x02B461, 0x012D11, + 0x0468DF, 0x061DCA, 0x03F7F5, 0x05812C, 0x03A000, 0x05072C, 0x03248D, 0x03F353, + 0x0468DF, 0x03F7F5, 0x03B8A6, 0x046370, 0x025E24, 0x03C0D8, 0x019620, 0x02334F, + 0x038919, 0x032E91, 0x029D0D, 0x02455E, 0x058C50, 0x04FE3F, 0x052F69, 0x047E65, + 0x04A000, 0x0356D6, 0x03A243, 0x02B365, 0x024CD2, 0x011A85, 0x01DC3E, 0x00EBD9, + 0x029218, 0x020510, 0x01EE69, 0x01DEA2, 0x01C1E2, 0x00E559, 0x0149B0, 0x00CA2D, +}, +{ + 0x02AAAB, 0x03B2E3, 0x0515F8, 0x070DE2, 0x037BF2, 0x03B93E, 0x07DA65, 0x068621, + 0x02AAAB, 0x027CF0, 0x0602B1, 0x03FEF3, 0x01FC01, 0x0102FA, 0x02C09F, 0x01B8DA, + 0x05A96A, 0x04F632, 0x06A9CE, 0x053C3E, 0x036AED, 0x01BE09, 0x039B2D, 0x01916B, + 0x05E129, 0x0827B8, 0x054A9C, 0x0756E5, 0x04D555, 0x06B43B, 0x0430BC, 0x05446F, + 0x05E129, 0x054A9C, 0x04F632, 0x05D9EB, 0x032830, 0x050121, 0x021D80, 0x02EF14, + 0x04B6CC, 0x043E16, 0x037C11, 0x030728, 0x0765C0, 0x06A855, 0x06E9E2, 0x05FDDB, + 0x062AAB, 0x0473C8, 0x04D85A, 0x0399DC, 0x031118, 0x0178B2, 0x027AFD, 0x013A77, + 0x036D76, 0x02B16A, 0x029337, 0x027E2E, 0x0257D8, 0x0131CC, 0x01B796, 0x010D91, +}, +{ + 0x038000, 0x04DACA, 0x06ACD5, 0x094238, 0x0492AE, 0x04E322, 0x0A4EA5, 0x08900C, + 0x038000, 0x0343FB, 0x07E388, 0x053E9F, 0x029AC1, 0x0153E8, 0x039CD0, 0x02429E, + 0x076E5B, 0x068322, 0x08BEDE, 0x06DF11, 0x047C57, 0x02496B, 0x04BBAB, 0x020EDD, + 0x07B786, 0x0AB421, 0x06F1ED, 0x09A20D, 0x065800, 0x08CC8E, 0x057FF7, 0x06E9D2, + 0x07B786, 0x06F1ED, 0x068322, 0x07AE04, 0x0424BF, 0x06917B, 0x02C6B8, 0x03D9CB, + 0x062FEB, 0x05917D, 0x0492D7, 0x03F964, 0x09B58C, 0x08BCEF, 0x0912F8, 0x07DD30, + 0x081800, 0x05D7F7, 0x065BF6, 0x04B9F1, 0x040670, 0x01EE69, 0x03416C, 0x019CBC, + 0x047FAA, 0x0388DC, 0x036138, 0x03459C, 0x03134C, 0x01915C, 0x0240F5, 0x0161CF, +}, +{ + 0x040000, 0x058C54, 0x07A0F4, 0x0A94D3, 0x0539EC, 0x0595DD, 0x0BC798, 0x09C932, + 0x040000, 0x03BB68, 0x090409, 0x05FE6D, 0x02FA01, 0x018477, 0x0420EE, 0x029547, + 0x087E1F, 0x07714C, 0x09FEB5, 0x07DA5D, 0x052064, 0x029D0D, 0x0568C3, 0x025A21, + 0x08D1BE, 0x0C3B94, 0x07EFEA, 0x0B0258, 0x074000, 0x0A0E59, 0x06491A, 0x07E6A7, + 0x08D1BE, 0x07EFEA, 0x07714C, 0x08C6E0, 0x04BC48, 0x0781B1, 0x032C3F, 0x04669F, + 0x071232, 0x065D22, 0x053A1A, 0x048ABC, 0x0B18A0, 0x09FC7F, 0x0A5ED3, 0x08FCC9, + 0x094000, 0x06ADAC, 0x074487, 0x0566CA, 0x0499A5, 0x02350B, 0x03B87B, 0x01D7B3, + 0x052430, 0x040A20, 0x03DCD3, 0x03BD45, 0x0383C5, 0x01CAB3, 0x029361, 0x01945A, +}, +{ + 0x050000, 0x06EF69, 0x098931, 0x0D3A07, 0x068867, 0x06FB55, 0x0EB97E, 0x0C3B7E, + 0x050000, 0x04AA42, 0x0B450B, 0x077E08, 0x03B881, 0x01E595, 0x05292A, 0x033A99, + 0x0A9DA7, 0x094D9F, 0x0C7E62, 0x09D0F4, 0x06687D, 0x034450, 0x06C2F4, 0x02F0AA, + 0x0B062D, 0x0F4A78, 0x09EBE4, 0x0DC2EE, 0x091000, 0x0C91EF, 0x07DB61, 0x09E050, + 0x0B062D, 0x09EBE4, 0x094D9F, 0x0AF898, 0x05EB59, 0x09621D, 0x03F74F, 0x058046, + 0x08D6BE, 0x07F46A, 0x0688A0, 0x05AD6B, 0x0DDEC8, 0x0C7B9F, 0x0CF687, 0x0B3BFB, + 0x0B9000, 0x085917, 0x0915A8, 0x06C07D, 0x05C00E, 0x02C24D, 0x04A69A, 0x024D9F, + 0x066D3C, 0x050CA7, 0x04D407, 0x04AC96, 0x0464B6, 0x023D5F, 0x033839, 0x01F971, +}, +{ + 0x060000, 0x08527E, 0x0B716E, 0x0FDF3C, 0x07D6E1, 0x0860CC, 0x11AB63, 0x0EADCB, + 0x060000, 0x05991C, 0x0D860D, 0x08FDA3, 0x047702, 0x0246B3, 0x063165, 0x03DFEA, + 0x0CBD2E, 0x0B29F1, 0x0EFE0F, 0x0BC78B, 0x07B096, 0x03EB93, 0x081D24, 0x038732, + 0x0D3A9C, 0x12595D, 0x0BE7DF, 0x108384, 0x0AE000, 0x0F1585, 0x096DA8, 0x0BD9FA, + 0x0D3A9C, 0x0BE7DF, 0x0B29F1, 0x0D2A50, 0x071A6B, 0x0B4289, 0x04C25F, 0x0699EE, + 0x0A9B4A, 0x098BB2, 0x07D727, 0x06D01A, 0x10A4F0, 0x0EFABE, 0x0F8E3C, 0x0D7B2E, + 0x0DE000, 0x0A0482, 0x0AE6CA, 0x081A2F, 0x06E677, 0x034F90, 0x0594B9, 0x02C38C, + 0x07B649, 0x060F2F, 0x05CB3C, 0x059BE7, 0x0545A7, 0x02B00C, 0x03DD11, 0x025E87, +}, +{ + 0x080000, 0x0B18A8, 0x0F41E8, 0x1529A5, 0x0A73D7, 0x0B2BBB, 0x178F2F, 0x139264, + 0x080000, 0x0776CF, 0x120812, 0x0BFCD9, 0x05F402, 0x0308EF, 0x0841DC, 0x052A8E, + 0x10FC3E, 0x0EE297, 0x13FD69, 0x0FB4B9, 0x0A40C8, 0x053A1A, 0x0AD186, 0x04B442, + 0x11A37B, 0x187727, 0x0FDFD4, 0x1604B0, 0x0E8000, 0x141CB1, 0x0C9235, 0x0FCD4D, + 0x11A37B, 0x0FDFD4, 0x0EE297, 0x118DC0, 0x09788F, 0x0F0362, 0x06587F, 0x08CD3D, + 0x0E2463, 0x0CBA43, 0x0A7434, 0x091577, 0x163140, 0x13F8FE, 0x14BDA5, 0x11F992, + 0x128000, 0x0D5B58, 0x0E890D, 0x0ACD94, 0x093349, 0x046A15, 0x0770F7, 0x03AF65, + 0x0A4861, 0x08143F, 0x07B9A6, 0x077A89, 0x070789, 0x039565, 0x0526C2, 0x0328B4, +}, +{ + 0x0C0000, 0x10A4FD, 0x16E2DB, 0x1FBE78, 0x0FADC3, 0x10C198, 0x2356C7, 0x1D5B96, + 0x0C0000, 0x0B3237, 0x1B0C1A, 0x11FB46, 0x08EE03, 0x048D66, 0x0C62CA, 0x07BFD5, + 0x197A5D, 0x1653E3, 0x1DFC1E, 0x178F16, 0x0F612C, 0x07D727, 0x103A49, 0x070E64, + 0x1A7539, 0x24B2BB, 0x17CFBD, 0x210709, 0x15C000, 0x1E2B0A, 0x12DB4F, 0x17B3F4, + 0x1A7539, 0x17CFBD, 0x1653E3, 0x1A54A0, 0x0E34D7, 0x168513, 0x0984BE, 0x0D33DC, + 0x153695, 0x131765, 0x0FAE4E, 0x0DA033, 0x2149E1, 0x1DF57D, 0x1F1C78, 0x1AF65B, + 0x1BC000, 0x140904, 0x15CD94, 0x10345E, 0x0DCCEE, 0x069F20, 0x0B2972, 0x058718, + 0x0F6C91, 0x0C1E5E, 0x0B9678, 0x0B37CE, 0x0A8B4E, 0x056018, 0x07BA22, 0x04BD0E, +}, +{ + 0x110000, 0x179466, 0x206C0C, 0x2CF87F, 0x16362A, 0x17BCED, 0x321044, 0x299714, + 0x110000, 0x0FDC79, 0x265125, 0x19794E, 0x0CA685, 0x0672FB, 0x118BF4, 0x0AFA6D, + 0x241804, 0x1FA181, 0x2A7A80, 0x21600A, 0x15C9A9, 0x0B1B77, 0x16FD3C, 0x09FF0D, + 0x257B66, 0x33FD33, 0x21BBA2, 0x2EC9F7, 0x1ED000, 0x2ABCF9, 0x1AB6B0, 0x219444, + 0x257B66, 0x21BBA2, 0x1FA181, 0x254D38, 0x142030, 0x1FE730, 0x0D7C0E, 0x12B423, + 0x1E0D52, 0x1B0BCF, 0x1636EE, 0x134D9E, 0x2F28A9, 0x2A711B, 0x2C12FF, 0x263256, + 0x275000, 0x1C621B, 0x1EE33C, 0x16F4DB, 0x138CFB, 0x09616E, 0x0FD00C, 0x07D4B7, + 0x15D9CE, 0x112B06, 0x106A80, 0x0FE464, 0x0EF004, 0x079D77, 0x0AF25B, 0x06B67F, +}, +{ + 0x160000, 0x1E83CF, 0x29F53D, 0x3A3286, 0x1CBE90, 0x1EB842, 0x40C9C2, 0x35D293, + 0x160000, 0x1486BA, 0x319630, 0x20F756, 0x105F06, 0x085891, 0x16B51E, 0x0E3506, + 0x2EB5AA, 0x28EF20, 0x36F8E1, 0x2B30FE, 0x1C3225, 0x0E5FC7, 0x1DC030, 0x0CEFB7, + 0x308193, 0x4347AC, 0x2BA786, 0x3C8CE5, 0x27E000, 0x374EE7, 0x229212, 0x2B7494, + 0x308193, 0x2BA786, 0x28EF20, 0x3045D0, 0x1A0B89, 0x29494D, 0x11735D, 0x183469, + 0x26E410, 0x230039, 0x1CBF8F, 0x18FB09, 0x3D0771, 0x36ECBA, 0x390986, 0x316E52, + 0x32E000, 0x24BB33, 0x27F8E4, 0x1DB557, 0x194D09, 0x0C23BB, 0x1476A6, 0x0A2256, + 0x1C470A, 0x1637AD, 0x153E87, 0x1490FA, 0x1354B9, 0x09DAD6, 0x0E2A94, 0x08AFF0, +}, +{ + 0x1C0000, 0x26D64D, 0x3566AA, 0x4A11C2, 0x249572, 0x27190E, 0x527525, 0x44805E, + 0x1C0000, 0x1A1FD6, 0x3F1C3E, 0x29F4F9, 0x14D607, 0x0A9F44, 0x1CE683, 0x1214F0, + 0x3B72D9, 0x341911, 0x45F6F0, 0x36F889, 0x23E2BB, 0x124B5B, 0x25DD54, 0x1076E9, + 0x3DBC30, 0x55A109, 0x378F64, 0x4D1069, 0x32C000, 0x46646C, 0x2BFFB9, 0x374E8E, + 0x3DBC30, 0x378F64, 0x341911, 0x3D7020, 0x2125F5, 0x348BD6, 0x1635BC, 0x1ECE57, + 0x317F5B, 0x2C8BEB, 0x2496B6, 0x1FCB22, 0x4DAC61, 0x45E778, 0x4897C2, 0x3EE97F, + 0x40C000, 0x2EBFB5, 0x32DFAE, 0x25CF86, 0x203380, 0x0F734B, 0x1A0B5F, 0x0CE5E2, + 0x23FD53, 0x1C46DC, 0x1B09C4, 0x1A2CE1, 0x189A60, 0x0C8AE2, 0x1207A5, 0x0B0E77, +}, +{ + 0x220000, 0x2F28CC, 0x40D818, 0x59F0FE, 0x2C6C53, 0x2F79DA, 0x642089, 0x532E29, + 0x220000, 0x1FB8F1, 0x4CA24B, 0x32F29C, 0x194D09, 0x0CE5F7, 0x2317E8, 0x15F4DB, + 0x483007, 0x3F4303, 0x54F4FF, 0x42C014, 0x2B9351, 0x1636EE, 0x2DFA79, 0x13FE1A, + 0x4AF6CC, 0x67FA67, 0x437743, 0x5D93EE, 0x3DA000, 0x5579F1, 0x356D61, 0x432888, + 0x4AF6CC, 0x437743, 0x3F4303, 0x4A9A70, 0x284060, 0x3FCE60, 0x1AF81B, 0x256845, + 0x3C1AA5, 0x36179D, 0x2C6DDD, 0x269B3C, 0x5E5152, 0x54E237, 0x5825FE, 0x4C64AD, + 0x4EA000, 0x38C437, 0x3DC678, 0x2DE9B5, 0x2719F7, 0x12C2DB, 0x1FA018, 0x0FA96E, + 0x2BB39B, 0x22560C, 0x20D500, 0x1FC8C8, 0x1DE007, 0x0F3AEE, 0x15E4B7, 0x0D6CFE, +}, +{ + 0x2C0000, 0x3D079E, 0x53EA79, 0x74650C, 0x397D20, 0x3D7083, 0x819383, 0x6BA525, + 0x2C0000, 0x290D75, 0x632C61, 0x41EEAC, 0x20BE0C, 0x10B121, 0x2D6A3B, 0x1C6A0C, + 0x5D6B54, 0x51DE40, 0x6DF1C2, 0x5661FB, 0x38644B, 0x1CBF8F, 0x3B8060, 0x19DF6D, + 0x610326, 0x868F57, 0x574F0B, 0x7919CA, 0x4FC000, 0x6E9DCE, 0x452423, 0x56E928, + 0x610326, 0x574F0B, 0x51DE40, 0x608BA0, 0x341713, 0x52929A, 0x22E6BA, 0x3068D2, + 0x4DC821, 0x460071, 0x397F1E, 0x31F611, 0x7A0EE2, 0x6DD974, 0x72130C, 0x62DCA3, + 0x65C000, 0x497665, 0x4FF1C9, 0x3B6AAE, 0x329A12, 0x184776, 0x28ED4D, 0x1444AC, + 0x388E14, 0x2C6F5A, 0x2A7D0F, 0x2921F4, 0x26A973, 0x13B5AD, 0x1C5528, 0x115FDF, +}, +}; + +static const uint32 binkInterQuant[16][64] = { +{ + 0x010000, 0x017946, 0x01A5A9, 0x0248DC, 0x016363, 0x0152A7, 0x0243EC, 0x0209EA, + 0x012000, 0x00E248, 0x01BBDA, 0x015CBC, 0x00A486, 0x0053E0, 0x00F036, 0x008095, + 0x01B701, 0x016959, 0x01B0B9, 0x0153FD, 0x00F8E7, 0x007EE4, 0x00EA30, 0x007763, + 0x01B701, 0x0260EB, 0x019DE9, 0x023E1B, 0x017000, 0x01FE6E, 0x012DB5, 0x01A27B, + 0x01E0D1, 0x01B0B9, 0x018A33, 0x01718D, 0x00D87A, 0x014449, 0x007B9A, 0x00AB71, + 0x013178, 0x0112EA, 0x00AD08, 0x009BB9, 0x023D97, 0x020437, 0x021CCC, 0x01E6B4, + 0x018000, 0x012DB5, 0x0146D9, 0x0100CE, 0x00CFD2, 0x006E5C, 0x00B0E4, 0x005A2D, + 0x00E9CC, 0x00B7B1, 0x00846F, 0x006B85, 0x008337, 0x0042E5, 0x004A10, 0x002831, +}, +{ + 0x015555, 0x01F708, 0x023237, 0x030BD0, 0x01D9D9, 0x01C389, 0x03053B, 0x02B7E3, + 0x018000, 0x012DB5, 0x024FCE, 0x01D0FA, 0x00DB5D, 0x006FD5, 0x014048, 0x00AB71, + 0x024957, 0x01E1CC, 0x0240F7, 0x01C551, 0x014BDE, 0x00A92F, 0x013840, 0x009F2F, + 0x024957, 0x032BE4, 0x0227E1, 0x02FD7A, 0x01EAAB, 0x02A893, 0x019247, 0x022DF9, + 0x028116, 0x0240F7, 0x020D99, 0x01ECBC, 0x0120A3, 0x01B061, 0x00A4CE, 0x00E497, + 0x01974B, 0x016E8E, 0x00E6B5, 0x00CFA2, 0x02FCC9, 0x02B04A, 0x02D110, 0x0288F1, + 0x020000, 0x019247, 0x01B3CC, 0x015668, 0x011518, 0x009325, 0x00EBDA, 0x00783D, + 0x0137BB, 0x00F4ED, 0x00B093, 0x008F5C, 0x00AEF4, 0x005931, 0x0062BF, 0x003597, +}, +{ + 0x01AAAB, 0x0274CB, 0x02BEC4, 0x03CEC4, 0x02504F, 0x02346C, 0x03C689, 0x0365DC, + 0x01E000, 0x017922, 0x02E3C1, 0x024539, 0x011235, 0x008BCA, 0x01905A, 0x00D64D, + 0x02DBAD, 0x025A40, 0x02D134, 0x0236A5, 0x019ED6, 0x00D37B, 0x018650, 0x00C6FB, + 0x02DBAD, 0x03F6DD, 0x02B1D9, 0x03BCD8, 0x026555, 0x0352B8, 0x01F6D8, 0x02B977, + 0x03215C, 0x02D134, 0x029100, 0x0267EB, 0x0168CC, 0x021C7A, 0x00CE01, 0x011DBD, + 0x01FD1E, 0x01CA31, 0x012062, 0x01038A, 0x03BBFB, 0x035C5C, 0x038554, 0x032B2D, + 0x028000, 0x01F6D8, 0x0220C0, 0x01AC02, 0x015A5E, 0x00B7EF, 0x0126D1, 0x00964C, + 0x0185A9, 0x013228, 0x00DCB8, 0x00B333, 0x00DAB2, 0x006F7D, 0x007B6F, 0x0042FC, +}, +{ + 0x020000, 0x02F28D, 0x034B52, 0x0491B8, 0x02C6C5, 0x02A54E, 0x0487D8, 0x0413D5, + 0x024000, 0x01C48F, 0x0377B5, 0x02B977, 0x01490C, 0x00A7BF, 0x01E06C, 0x01012A, + 0x036E03, 0x02D2B3, 0x036172, 0x02A7FA, 0x01F1CE, 0x00FDC7, 0x01D460, 0x00EEC7, + 0x036E03, 0x04C1D6, 0x033BD1, 0x047C37, 0x02E000, 0x03FCDD, 0x025B6A, 0x0344F5, + 0x03C1A1, 0x036172, 0x031466, 0x02E31B, 0x01B0F5, 0x028892, 0x00F735, 0x0156E2, + 0x0262F1, 0x0225D5, 0x015A10, 0x013772, 0x047B2D, 0x04086E, 0x043998, 0x03CD69, + 0x030000, 0x025B6A, 0x028DB3, 0x02019B, 0x019FA3, 0x00DCB8, 0x0161C7, 0x00B45B, + 0x01D398, 0x016F63, 0x0108DD, 0x00D70A, 0x01066F, 0x0085C9, 0x00941F, 0x005062, +}, +{ + 0x02AAAB, 0x03EE11, 0x04646D, 0x0617A0, 0x03B3B2, 0x038713, 0x060A75, 0x056FC6, + 0x030000, 0x025B6A, 0x049F9B, 0x03A1F4, 0x01B6BB, 0x00DFAA, 0x028090, 0x0156E2, + 0x0492AE, 0x03C399, 0x0481ED, 0x038AA2, 0x0297BD, 0x01525F, 0x027080, 0x013E5E, + 0x0492AE, 0x0657C8, 0x044FC1, 0x05FAF4, 0x03D555, 0x055126, 0x03248D, 0x045BF2, + 0x05022D, 0x0481ED, 0x041B33, 0x03D979, 0x024147, 0x0360C3, 0x01499C, 0x01C92E, + 0x032E96, 0x02DD1C, 0x01CD6A, 0x019F43, 0x05F991, 0x056093, 0x05A220, 0x0511E1, + 0x040000, 0x03248D, 0x036799, 0x02ACCF, 0x022A2F, 0x01264B, 0x01D7B5, 0x00F079, + 0x026F75, 0x01E9D9, 0x016127, 0x011EB8, 0x015DE9, 0x00B262, 0x00C57F, 0x006B2D, +}, +{ + 0x038000, 0x052876, 0x05C3CF, 0x07FF02, 0x04DBD9, 0x04A148, 0x07EDBA, 0x0722B4, + 0x03F000, 0x0317FB, 0x06117C, 0x04C491, 0x023FD5, 0x01258F, 0x0348BD, 0x01C209, + 0x060085, 0x04F0B9, 0x05EA87, 0x04A5F5, 0x036728, 0x01BC1C, 0x0333A8, 0x01A1DB, + 0x060085, 0x085336, 0x05A8AE, 0x07D960, 0x050800, 0x06FA82, 0x041FF9, 0x05B8AE, + 0x0692DA, 0x05EA87, 0x0563B2, 0x050D6E, 0x02F5AD, 0x046F00, 0x01B09C, 0x02580C, + 0x042D25, 0x03C235, 0x025D9B, 0x022108, 0x07D78F, 0x070EC1, 0x0764CA, 0x06A777, + 0x054000, 0x041FF9, 0x0477F9, 0x0382D0, 0x02D75E, 0x018242, 0x026B1D, 0x013B9F, + 0x03324A, 0x0282ED, 0x01CF83, 0x017851, 0x01CB42, 0x00EA21, 0x010336, 0x008CAC, +}, +{ + 0x040000, 0x05E519, 0x0696A4, 0x092370, 0x058D8A, 0x054A9C, 0x090FB0, 0x0827AA, + 0x048000, 0x03891F, 0x06EF69, 0x0572EE, 0x029218, 0x014F7E, 0x03C0D8, 0x020254, + 0x06DC05, 0x05A565, 0x06C2E4, 0x054FF3, 0x03E39B, 0x01FB8E, 0x03A8C0, 0x01DD8D, + 0x06DC05, 0x0983AC, 0x0677A2, 0x08F86E, 0x05C000, 0x07F9B9, 0x04B6D4, 0x0689EB, + 0x078343, 0x06C2E4, 0x0628CC, 0x05C635, 0x0361EA, 0x051124, 0x01EE69, 0x02ADC5, + 0x04C5E1, 0x044BAA, 0x02B41F, 0x026EE5, 0x08F65A, 0x0810DD, 0x087330, 0x079AD1, + 0x060000, 0x04B6D4, 0x051B65, 0x040337, 0x033F47, 0x01B970, 0x02C38F, 0x0168B6, + 0x03A730, 0x02DEC6, 0x0211BA, 0x01AE14, 0x020CDD, 0x010B93, 0x01283E, 0x00A0C4, +}, +{ + 0x050000, 0x075E60, 0x083C4D, 0x0B6C4C, 0x06F0ED, 0x069D43, 0x0B539C, 0x0A3194, + 0x05A000, 0x046B67, 0x08AB44, 0x06CFAA, 0x03369E, 0x01A35E, 0x04B10F, 0x0282E8, + 0x089307, 0x070EBF, 0x08739C, 0x06A3F0, 0x04DC82, 0x027A72, 0x0492F0, 0x0254F0, + 0x089307, 0x0BE497, 0x08158B, 0x0B3689, 0x073000, 0x09F827, 0x05E489, 0x082C66, + 0x096413, 0x08739C, 0x07B2FF, 0x0737C2, 0x043A64, 0x06556D, 0x026A04, 0x035936, + 0x05F75A, 0x055E94, 0x036127, 0x030A9E, 0x0B33F1, 0x0A1514, 0x0A8FFC, 0x098186, + 0x078000, 0x05E489, 0x06623F, 0x050405, 0x040F19, 0x0227CC, 0x037473, 0x01C2E3, + 0x0490FC, 0x039677, 0x029629, 0x021999, 0x029015, 0x014E78, 0x01724E, 0x00C8F5, +}, +{ + 0x060000, 0x08D7A6, 0x09E1F6, 0x0DB528, 0x085450, 0x07EFEA, 0x0D9788, 0x0C3B7E, + 0x06C000, 0x054DAE, 0x0A671E, 0x082C66, 0x03DB24, 0x01F73E, 0x05A145, 0x03037D, + 0x0A4A08, 0x087818, 0x0A2455, 0x07F7ED, 0x05D569, 0x02F955, 0x057D20, 0x02CC54, + 0x0A4A08, 0x0E4582, 0x09B373, 0x0D74A5, 0x08A000, 0x0BF696, 0x07123E, 0x09CEE0, + 0x0B44E4, 0x0A2455, 0x093D32, 0x08A950, 0x0512DF, 0x0799B6, 0x02E59E, 0x0404A7, + 0x0728D2, 0x06717F, 0x040E2F, 0x03A657, 0x0D7187, 0x0C194B, 0x0CACC8, 0x0B683A, + 0x090000, 0x07123E, 0x07A918, 0x0604D2, 0x04DEEA, 0x029629, 0x042556, 0x021D11, + 0x057AC8, 0x044E28, 0x031A97, 0x02851E, 0x03134C, 0x01915C, 0x01BC5D, 0x00F126, +}, +{ + 0x080000, 0x0BCA33, 0x0D2D48, 0x1246E0, 0x0B1B15, 0x0A9538, 0x121F5F, 0x104F53, + 0x090000, 0x07123E, 0x0DDED2, 0x0AE5DD, 0x052430, 0x029EFD, 0x0781B1, 0x0404A7, + 0x0DB80B, 0x0B4ACB, 0x0D85C7, 0x0A9FE7, 0x07C736, 0x03F71D, 0x075180, 0x03BB1A, + 0x0DB80B, 0x130757, 0x0CEF44, 0x11F0DC, 0x0B8000, 0x0FF372, 0x096DA8, 0x0D13D6, + 0x0F0686, 0x0D85C7, 0x0C5198, 0x0B8C6A, 0x06C3D4, 0x0A2248, 0x03DCD3, 0x055B8A, + 0x098BC3, 0x089754, 0x05683E, 0x04DDC9, 0x11ECB4, 0x1021B9, 0x10E661, 0x0F35A3, + 0x0C0000, 0x096DA8, 0x0A36CB, 0x08066E, 0x067E8E, 0x0372E1, 0x05871E, 0x02D16B, + 0x074E60, 0x05BD8B, 0x042374, 0x035C28, 0x0419BB, 0x021726, 0x02507C, 0x014188, +}, +{ + 0x0C0000, 0x11AF4C, 0x13C3EC, 0x1B6A50, 0x10A89F, 0x0FDFD4, 0x1B2F0F, 0x1876FD, + 0x0D8000, 0x0A9B5D, 0x14CE3C, 0x1058CB, 0x07B649, 0x03EE7B, 0x0B4289, 0x0606FB, + 0x149410, 0x10F030, 0x1448AB, 0x0FEFDA, 0x0BAAD2, 0x05F2AB, 0x0AFA40, 0x0598A7, + 0x149410, 0x1C8B03, 0x1366E6, 0x1AE949, 0x114000, 0x17ED2B, 0x0E247C, 0x139DC1, + 0x1689C8, 0x1448AB, 0x127A63, 0x11529F, 0x0A25BE, 0x0F336D, 0x05CB3C, 0x08094E, + 0x0E51A4, 0x0CE2FE, 0x081C5D, 0x074CAE, 0x1AE30E, 0x183296, 0x195991, 0x16D074, + 0x120000, 0x0E247C, 0x0F5230, 0x0C09A5, 0x09BDD5, 0x052C51, 0x084AAC, 0x043A21, + 0x0AF590, 0x089C51, 0x06352E, 0x050A3B, 0x062698, 0x0322B9, 0x0378BA, 0x01E24D, +}, +{ + 0x110000, 0x190DAC, 0x1C0039, 0x26D69C, 0x17998C, 0x167D16, 0x2682AB, 0x22A891, + 0x132000, 0x0F06C3, 0x1D797F, 0x172876, 0x0AECE7, 0x0591D9, 0x0FF398, 0x0889E3, + 0x1D2717, 0x17FEEF, 0x1CBC47, 0x1693CA, 0x108754, 0x086D1D, 0x0F8D30, 0x07ED98, + 0x1D2717, 0x286F9A, 0x1B7C71, 0x261FD3, 0x187000, 0x21E552, 0x140904, 0x1BCA27, + 0x1FEDDC, 0x1CBC47, 0x1A2D62, 0x188A62, 0x0E6022, 0x1588DA, 0x083540, 0x0B6284, + 0x1448FE, 0x124192, 0x0B7D84, 0x0A574B, 0x2616FF, 0x2247AA, 0x23E98D, 0x2051FA, + 0x198000, 0x140904, 0x15B46F, 0x110DAA, 0x0DCCEE, 0x07541E, 0x0BBF1F, 0x05FD04, + 0x0F868B, 0x0C32C8, 0x08CB57, 0x0723D4, 0x08B6AD, 0x047130, 0x04EB08, 0x02AB42, +}, +{ + 0x160000, 0x206C0C, 0x243C86, 0x3242E8, 0x1E8A79, 0x1D1A59, 0x31D646, 0x2CDA25, + 0x18C000, 0x13722A, 0x2624C3, 0x1DF820, 0x0E2385, 0x073537, 0x14A4A7, 0x0B0CCC, + 0x25BA1D, 0x1F0DAE, 0x252FE4, 0x1D37BB, 0x1563D6, 0x0AE78E, 0x142021, 0x0A4288, + 0x25BA1D, 0x345430, 0x2391FB, 0x31565C, 0x1FA000, 0x2BDD7A, 0x19ED8D, 0x23F68C, + 0x2951EF, 0x252FE4, 0x21E061, 0x1FC224, 0x129A87, 0x1BDE47, 0x0A9F44, 0x0EBBBA, + 0x1A4058, 0x17A026, 0x0EDEAB, 0x0D61E9, 0x314AEF, 0x2C5CBE, 0x2E798A, 0x29D380, + 0x210000, 0x19ED8D, 0x1C16AE, 0x1611AE, 0x11DC06, 0x097BEA, 0x0F3391, 0x07BFE7, + 0x141787, 0x0FC93E, 0x0B617F, 0x093D6D, 0x0B46C1, 0x05BFA8, 0x065D55, 0x037437, +}, +{ + 0x1C0000, 0x2943B2, 0x2E1E7C, 0x3FF810, 0x26DEC9, 0x250A43, 0x3F6DCE, 0x3915A3, + 0x1F8000, 0x18BFD8, 0x308BE1, 0x262485, 0x11FEA9, 0x092C75, 0x1A45EB, 0x0E1049, + 0x300425, 0x2785C6, 0x2F5439, 0x252FA8, 0x1B393F, 0x0DE0E4, 0x199D41, 0x0D0EDC, + 0x300425, 0x4299B2, 0x2D456E, 0x3ECB00, 0x284000, 0x37D40F, 0x20FFCB, 0x2DC56D, + 0x3496D3, 0x2F5439, 0x2B1D93, 0x286B74, 0x17AD66, 0x2377FE, 0x0D84E2, 0x12C062, + 0x21692A, 0x1E11A5, 0x12ECDA, 0x110840, 0x3EBC76, 0x387608, 0x3B2652, 0x353BBA, + 0x2A0000, 0x20FFCB, 0x23BFC6, 0x1C1681, 0x16BAF1, 0x0C1213, 0x1358E8, 0x09DCF8, + 0x19924F, 0x141767, 0x0E7C16, 0x0BC28A, 0x0E5A0D, 0x075104, 0x0819B2, 0x04655D, +}, +{ + 0x220000, 0x321B58, 0x380072, 0x4DAD38, 0x2F3318, 0x2CFA2D, 0x4D0556, 0x455122, + 0x264000, 0x1E0D86, 0x3AF2FE, 0x2E50EB, 0x15D9CE, 0x0B23B2, 0x1FE730, 0x1113C7, + 0x3A4E2D, 0x2FFDDF, 0x39788E, 0x2D2795, 0x210EA8, 0x10DA39, 0x1F1A61, 0x0FDB2F, + 0x3A4E2D, 0x50DF33, 0x36F8E1, 0x4C3FA5, 0x30E000, 0x43CAA5, 0x281209, 0x37944D, + 0x3FDBB7, 0x39788E, 0x345AC4, 0x3114C3, 0x1CC044, 0x2B11B4, 0x106A80, 0x16C509, + 0x2891FC, 0x248324, 0x16FB08, 0x14AE97, 0x4C2DFD, 0x448F54, 0x47D31B, 0x40A3F5, + 0x330000, 0x281209, 0x2B68DF, 0x221B53, 0x1B99DB, 0x0EA83B, 0x177E3E, 0x0BFA09, + 0x1F0D17, 0x18658F, 0x1196AE, 0x0E47A8, 0x116D5A, 0x08E260, 0x09D60F, 0x055684, +}, +{ + 0x2C0000, 0x40D818, 0x48790C, 0x6485D0, 0x3D14F2, 0x3A34B2, 0x63AC8D, 0x59B44A, + 0x318000, 0x26E454, 0x4C4986, 0x3BF03F, 0x1C470A, 0x0E6A6E, 0x29494D, 0x161998, + 0x4B743A, 0x3E1B5C, 0x4A5FC7, 0x3A6F75, 0x2AC7AC, 0x15CF1D, 0x284041, 0x148510, + 0x4B743A, 0x68A861, 0x4723F6, 0x62ACB8, 0x3F4000, 0x57BAF3, 0x33DB1A, 0x47ED19, + 0x52A3DE, 0x4A5FC7, 0x43C0C2, 0x3F8448, 0x25350D, 0x37BC8E, 0x153E87, 0x1D7775, + 0x3480B0, 0x2F404C, 0x1DBD56, 0x1AC3D2, 0x6295DE, 0x58B97B, 0x5CF313, 0x53A701, + 0x420000, 0x33DB1A, 0x382D5C, 0x2C235D, 0x23B80D, 0x12F7D4, 0x1E6723, 0x0F7FCF, + 0x282F0E, 0x1F927D, 0x16C2FF, 0x127AD9, 0x168D83, 0x0B7F50, 0x0CBAAA, 0x06E86E, +}, +}; + +} // End of namespace Video + +#endif // GRAPHICS_VIDEO_BINKDATA_H diff --git a/video/module.mk b/video/module.mk index d813218785..ceeac94384 100644 --- a/video/module.mk +++ b/video/module.mk @@ -19,5 +19,10 @@ MODULE_OBJS := \ codecs/smc.o \ codecs/truemotion1.o +ifdef USE_BINK +MODULE_OBJS += \ + bink_decoder.o +endif + # Include common rules include $(srcdir)/rules.mk diff --git a/video/smk_decoder.cpp b/video/smk_decoder.cpp index 05a20ecd8d..dce80eda2c 100644 --- a/video/smk_decoder.cpp +++ b/video/smk_decoder.cpp @@ -372,17 +372,11 @@ bool SmackerDecoder::loadStream(Common::SeekableReadStream *stream) { _fileStream = stream; - // Seek to the first frame + // Read in the Smacker header _header.signature = _fileStream->readUint32BE(); - // No BINK support available - if (_header.signature == MKTAG('B','I','K','i')) { - delete _fileStream; - _fileStream = 0; + if (_header.signature != MKTAG('S', 'M', 'K', '2') && _header.signature != MKTAG('S', 'M', 'K', '4')) return false; - } - - assert(_header.signature == MKTAG('S','M','K','2') || _header.signature == MKTAG('S','M','K','4')); uint32 width = _fileStream->readUint32LE(); uint32 height = _fileStream->readUint32LE(); |