From 377ed408edd03f31f5f90dbcb340d547096005b8 Mon Sep 17 00:00:00 2001 From: klugier Date: Tue, 29 Jul 2025 18:33:19 +0200 Subject: [PATCH] UppWeb: Update to 2025.1.1 --- uppbox/uppweb/www.cpp | 2 +- uppbox/uppweb/www.tpp/Roadmap_en-us.tpp | 2975 +++++++++++----------- uppbox/uppweb/www.tpp/Roadmap_en-us.tppi | 230 +- uppbox/uppweb/www.tpp/index_en-us.tpp | 2 +- uppbox/uppweb/www.tpp/index_en-us.tppi | 12 +- 5 files changed, 1607 insertions(+), 1614 deletions(-) diff --git a/uppbox/uppweb/www.cpp b/uppbox/uppweb/www.cpp index 70c2ac081..b467eb968 100644 --- a/uppbox/uppweb/www.cpp +++ b/uppbox/uppweb/www.cpp @@ -892,7 +892,7 @@ CONSOLE_APP_MAIN escape.Add("LATESTGIT", version); #endif - String release = "17045"; + String release = "17810"; escape.Add("RELEASE", release); escape.Add("RELEASET", release); escape.Add("UPDATETIME", Format("%`", GetUtcTime())); diff --git a/uppbox/uppweb/www.tpp/Roadmap_en-us.tpp b/uppbox/uppweb/www.tpp/Roadmap_en-us.tpp index 99c9269ef..55abd506f 100644 --- a/uppbox/uppweb/www.tpp/Roadmap_en-us.tpp +++ b/uppbox/uppweb/www.tpp/Roadmap_en-us.tpp @@ -24,11 +24,26 @@ topic "Roadmap"; [l42;b42;a42;phO0;2 $$23,23#42C8ED58A1FE5FAB0FCEA41746BFF560:point] [b83;*_2 $$24,24#F44F66EA0BD27C61EACACB2D8ED88A05:release] [2 $$0,0#00000000000000000000000000000000:Default] -[{_} -[s2;%% Release history&] -[s3;%% 2025.1 (rev. 17799) (Mar 2025)&] -[s5;%% [*/ Current stable release]&] -[s5;*/%% &] +[{_}%EN-US +[s2; Release history&] +[s3; 2025.1.1 (rev. 17810) (July 2025)&] +[s5; [*/ Current stable release]&] +[s5;*/ &] +[s5; This is the first hotfix for the 2025.1 release. We highly recommend +all users install this version, especially those running the +latest Linux distributions with LLVM 20 or newer.&] +[s5;*/ &] +[s0; [* Core]&] +[s0; &] +[s0;i150;O0; Fix warnings on Clang 20 related to non trivial memcall +in Topt.h&] +[s0; &] +[s0; [* ide]&] +[s0;* &] +[s0;i150;O0; Fix immediate Assist`+`+ crash on Clang 20&] +[s5;*/ &] +[s3; 2025.1 (rev. 17799) (Mar 2025)&] +[s5; &] [s0; [* Core]&] [s0;* &] [s0;i150;O0; In Posix .log files moved to .local/state/u`+`+/log&] @@ -108,97 +123,97 @@ options&] [s0;i150;O0; Fixed Assist issues&] [s0;i150;O0; Fixed desktop folders (e.g. GetDownloadFolder function)&] [s0;i150;O0; Main menu flicker prevention&] -[s5;%% &] -[s5;%% &] -[s3;%% 2024.1.1 (rev. 17490) (Dec 2024)&] -[s0;*/%% &] -[s0;%% [* Core]&] -[s0;%% &] -[s0;i150;O0;%% First release of U`+`+ that requires C`+`+17&] -[s0;i150;O0;%% Moveable concept redesigned with C`+`+17 features. -U`+`+ now allows non`-moveable types to be stored in Vector flavor +[s5; &] +[s5; &] +[s3; 2024.1.1 (rev. 17490) (Dec 2024)&] +[s0;*/ &] +[s0; [* Core]&] +[s0; &] +[s0;i150;O0; First release of U`+`+ that requires C`+`+17&] +[s0;i150;O0; Moveable concept redesigned with C`+`+17 features. U`+`+ +now allows non`-moveable types to be stored in Vector flavor of containers (using Upp`::is`_upp`_guest). PODs are automatically moveable (aka trivially relocatable)&] -[s0;i150;O0;%% Upp`::Tuple now supports structured binding&] -[s0;i150;O0;%% GetFileTime, GetFileLength, FileExists, DirectoryExists +[s0;i150;O0; Upp`::Tuple now supports structured binding&] +[s0;i150;O0; GetFileTime, GetFileLength, FileExists, DirectoryExists and FileMapping refactored&] -[s0;i150;O0;%% Stream`::GetAll now invokes LoadError on negative count&] -[s0;i150;O0;%% ValueCache limits setting methods are simplified&] -[s0;i150;O0;%% Value now directly supports `'float`' type&] -[s0;i150;O0;%% Some iffy code now made more C`+`+ compliant (e.g. -always using memcpy for unaligned data)&] -[s0;i150;O0;%% AsXML had new XML`_ESCAPELF&] -[s0;%% &] -[s0;%% [* Draw]&] -[s0;%% &] -[s0;i150;O0;%% UHD image now can serve as source for SD image&] -[s0;i150;O0;%% New S3 .iml image flag `- the images are drawn supersampled +[s0;i150;O0; Stream`::GetAll now invokes LoadError on negative count&] +[s0;i150;O0; ValueCache limits setting methods are simplified&] +[s0;i150;O0; Value now directly supports `'float`' type&] +[s0;i150;O0; Some iffy code now made more C`+`+ compliant (e.g. always +using memcpy for unaligned data)&] +[s0;i150;O0; AsXML had new XML`_ESCAPELF&] +[s0; &] +[s0; [* Draw]&] +[s0; &] +[s0;i150;O0; UHD image now can serve as source for SD image&] +[s0;i150;O0; New S3 .iml image flag `- the images are drawn supersampled 3x, usually without antialiasing, and only downsampled at runtime&] -[s5;po%% &] -[s5;po%% [* Painter]&] -[s5;po%% &] -[s5;i150;poO0;%% Multithreaded rendering further optimised&] -[s5;i150;poO0;%% New image filtering parameter `- so far, rendering +[s5;po &] +[s5;po [* Painter]&] +[s5;po &] +[s5;i150;poO0; Multithreaded rendering further optimised&] +[s5;i150;poO0; New image filtering parameter `- so far, rendering image was always with bilinear filtering, new parameter allows other Image filter like Lanczos 3&] -[s5;po%% &] -[s5;po%% [* CtrlCore]&] -[s5;po%% &] -[s5;i150;poO0;%% Horizontal mouse scroll wheel support&] -[s5;i150;poO0;%% CtrlMapper now provides operator()(Ctrl, T, const +[s5;po &] +[s5;po [* CtrlCore]&] +[s5;po &] +[s5;i150;poO0; Horizontal mouse scroll wheel support&] +[s5;i150;poO0; CtrlMapper now provides operator()(Ctrl, T, const T`& factor) for simple unit conversions&] -[s5;i150;poO0;%% gtk backend improvements, XWayland mouse cursor -bug workaround&] -[s5;po%% &] -[s5;po%% [* CtrlLib]&] -[s5;po%% &] -[s5;i150;poO0;%% CtrlMapper now provides operator()(Ctrl, T, const +[s5;i150;poO0; gtk backend improvements, XWayland mouse cursor bug +workaround&] +[s5;po &] +[s5;po [* CtrlLib]&] +[s5;po &] +[s5;i150;poO0; CtrlMapper now provides operator()(Ctrl, T, const T`& factor) for simple unit conversions&] -[s5;po%% &] -[s5;po%% [* TheIDE]&] -[s5;po%% &] -[s5;i150;poO0;%% Icon Designer refactored and optimised, new tools +[s5;po &] +[s5;po [* TheIDE]&] +[s5;po &] +[s5;i150;poO0; Icon Designer refactored and optimised, new tools added, S3 flag support added&] -[s5;i150;poO0;%% Alt`-M now goes to special scratchpad file of the +[s5;i150;poO0; Alt`-M now goes to special scratchpad file of the same type as is current file, this is helpful e.g. for temporary storing and editing parts of .iml images that are then composed to the final image.&] -[s5;i150;poO0;%% Output directory in assembly definition now can -be left empty and defaults to reasonable path.&] -[s5;i150;poO0;%% Hexadecimal view is now much faster&] -[s5;i150;poO0;%% Fixed further corner case Assist`+`+ problems&] -[s5;i150;poO0;%% Layout designer text field, used with e.g. Labels, +[s5;i150;poO0; Output directory in assembly definition now can be +left empty and defaults to reasonable path.&] +[s5;i150;poO0; Hexadecimal view is now much faster&] +[s5;i150;poO0; Fixed further corner case Assist`+`+ problems&] +[s5;i150;poO0; Layout designer text field, used with e.g. Labels, now has Qtf button to edit text with RichEdit&] -[s5;i150;poO0;%% Git file history now goes through renames&] -[s5;i150;poO0;%% Compare with menu now suggests files in Download -folder too&] -[s5;i150;poO0;%% Main package configuration dialog improved&] -[s5;i150;poO0;%% Search through all assemblies&] -[s5;po%% &] -[s0;%% [* plugin/Zip]&] -[s5;i150;poO0;%% zip64 support&] -[s5;po%% &] -[s5;po%% [* plugin] upgrades&] -[s0;%% &] -[s0;i150;O0;%% plugin/sqlite3: 3.46.0&] -[s5;i150;poO0;%% plugin/lzma: 24.6&] -[s5;i150;poO0;%% plugin/zstd: 1.5.6&] -[s5;i150;poO0;%% plugin/z: 1.3.1&] -[s5;i150;poO0;%% plugin/png: 1.6.46&] -[s5;i150;poO0;%% plugin/tif: 4.6.0&] -[s5;i150;poO0;%% plugin/jpeg: 9f&] -[s5;i150;poO0;%% Core: LZ4 1.9.4&] -[s5;po%% &] -[s5;po%% [* Win32]&] -[s5;po%% &] -[s0;i150;O0;%% OpenSSL upgraded to 3.2.1&] -[s5;i150;poO0;%% Clang compiler upgraded to 18.1.5&] -[s5;%% &] -[s5;%% &] -[s3;%% 2023.2 (rev. 17045) (Oct 2023)&] -[s0;%% &] -[s0;%% This is release is mostly focused on improving TheIDE capabilities.&] -[s5;%% &] +[s5;i150;poO0; Git file history now goes through renames&] +[s5;i150;poO0; Compare with menu now suggests files in Download folder +too&] +[s5;i150;poO0; Main package configuration dialog improved&] +[s5;i150;poO0; Search through all assemblies&] +[s5;po &] +[s0; [* plugin/Zip]&] +[s5;i150;poO0; zip64 support&] +[s5;po &] +[s5;po [* plugin] upgrades&] +[s0; &] +[s0;i150;O0; plugin/sqlite3: 3.46.0&] +[s5;i150;poO0; plugin/lzma: 24.6&] +[s5;i150;poO0; plugin/zstd: 1.5.6&] +[s5;i150;poO0; plugin/z: 1.3.1&] +[s5;i150;poO0; plugin/png: 1.6.46&] +[s5;i150;poO0; plugin/tif: 4.6.0&] +[s5;i150;poO0; plugin/jpeg: 9f&] +[s5;i150;poO0; Core: LZ4 1.9.4&] +[s5;po &] +[s5;po [* Win32]&] +[s5;po &] +[s0;i150;O0; OpenSSL upgraded to 3.2.1&] +[s5;i150;poO0; Clang compiler upgraded to 18.1.5&] +[s5; &] +[s5; &] +[s3; 2023.2 (rev. 17045) (Oct 2023)&] +[s0; &] +[s0; This is release is mostly focused on improving TheIDE capabilities.&] +[s5; &] [s0; Core&] [s0; &] [s0;i150;O0; CParser`::ReadDoubleNoE (to ignore E part of double)&] @@ -272,50 +287,50 @@ from UppHub if possible&] [s0; Win32:&] [s0; &] [s0;i150;O0; OpenSSL now upgraded to 1.1.1w&] -[s5;%% &] -[s3;%% 2023.1 (rev. 16847) (May 2023)&] -[s0;%% &] -[s0;%% The new release brings some long awaited features. As you -might remember for the last release we removed the old deprecated -library for code formatting. In the current release formatting -is back based on clang`-format. Also TheIDE has got a special -dialog when you can adjust formatting to your needs. Formatting -is available under `"Assist`" `-> `"Reformat`" menu.&] -[s0;%% &] -[s0;%% macOS support, temporarily removed in previous release, is -back. Our POSIX installation is now universal, covering Linux, -BSDs and MacOS, which means that when you unpack it on macOS -you just run ./install script to download all dependencies using -brew and build umk and theide just like on other POSIX platforms. +[s5; &] +[s3; 2023.1 (rev. 16847) (May 2023)&] +[s0; &] +[s0; The new release brings some long awaited features. As you might +remember for the last release we removed the old deprecated library +for code formatting. In the current release formatting is back +based on clang`-format. Also TheIDE has got a special dialog +when you can adjust formatting to your needs. Formatting is available +under `"Assist`" `-> `"Reformat`" menu.&] +[s0; &] +[s0; macOS support, temporarily removed in previous release, is back. +Our POSIX installation is now universal, covering Linux, BSDs +and MacOS, which means that when you unpack it on macOS you just +run ./install script to download all dependencies using brew +and build umk and theide just like on other POSIX platforms. It is compatible with X86`_64 and Apple ARM CPUs.&] -[s0;%% &] -[s0;%% In other news, libclang based Assist`+`+ has been significantly +[s0; &] +[s0; In other news, libclang based Assist`+`+ has been significantly stabilized and some corner cases are now fixed.&] -[s0;%% &] -[s0;%% Happy coding with U`+`+ and TheIDE! We are glad that you decided +[s0; &] +[s0; Happy coding with U`+`+ and TheIDE! We are glad that you decided to try our software!&] -[s0;%% &] -[s0;%% Core&] -[s0;%% &] -[s0;i150;O0;%% MacOS is supported again; POSIX and macOS releases -are now merged to single archive&] -[s0;i150;O0;%% X11 backend compiles again&] -[s0;%% &] -[s0;%% TheIDE&] -[s0;%% &] -[s0;i150;O0;%% clang`-format integration&] -[s0;i150;O0;%% assist stablization&] -[s0;i150;O0;%% .iml Image selection database tool&] -[s0;%% &] -[s0;%% CtrlLib&] -[s0;%% &] -[s0;i150;O0;%% Menubar GTK based styling has been improved&] -[s0;%% &] -[s0;%% &] -[s3;%% 2022.3 (rev. 16660) (Dec 2022)&] -[s5;po*/%% &] -[s5;po*/%% &] -[s5;%% The leading entity for this release is migration for our homegrown +[s0; &] +[s0; Core&] +[s0; &] +[s0;i150;O0; MacOS is supported again; POSIX and macOS releases are +now merged to single archive&] +[s0;i150;O0; X11 backend compiles again&] +[s0; &] +[s0; TheIDE&] +[s0; &] +[s0;i150;O0; clang`-format integration&] +[s0;i150;O0; assist stablization&] +[s0;i150;O0; .iml Image selection database tool&] +[s0; &] +[s0; CtrlLib&] +[s0; &] +[s0;i150;O0; Menubar GTK based styling has been improved&] +[s0; &] +[s0; &] +[s3; 2022.3 (rev. 16660) (Dec 2022)&] +[s5;po*/ &] +[s5;po*/ &] +[s5; The leading entity for this release is migration for our homegrown C`+`+ parser to LibClang. This is the revolutionary change in the context of how easy is to develop code with our integrated development environment TheIDE. If you are familiar with older @@ -325,174 +340,173 @@ applications recompiled with the newest version of U`+`+ will be the beneficiaries of this change. Furthermore, we refreshed TheIDE`'s AndroidBuilder and it is now capable of building Andorid project using the latest tool`-chains from Google.&] -[s5;%% &] -[s5;%% We would like to thank all of our amazing contributors and -users! Without your help we wouldn`'t be in the place we are -today. Also, many thanks to our UppHub contributors who do a -great job. Your additional packages are very helpful and needed -for our users.&] -[s0;ph*%% &] -[s0;ph%% [* Release highlights]&] -[s5;%% &] -[s5;l128;i150;O0;%% Homegrown C`+`+ parser in TheIDE is replaced -with LibClang resulting in new and improved Assist`+`+ features&] -[s5;l128;i150;O0;%% Optimised memory consumption of U`+`+ widgets.&] -[s5;l128;i150;O0;%% macOS version is not released with 2022.3. Our +[s5; &] +[s5; We would like to thank all of our amazing contributors and users! +Without your help we wouldn`'t be in the place we are today. +Also, many thanks to our UppHub contributors who do a great job. +Your additional packages are very helpful and needed for our +users.&] +[s0;ph* &] +[s0;ph [* Release highlights]&] +[s5; &] +[s5;l128;i150;O0; Homegrown C`+`+ parser in TheIDE is replaced with +LibClang resulting in new and improved Assist`+`+ features&] +[s5;l128;i150;O0; Optimised memory consumption of U`+`+ widgets.&] +[s5;l128;i150;O0; macOS version is not released with 2022.3. Our main priority is to leverage this inconvenience in one of 2023.x releases. If you want to use U`+`+ on macOS please use 2022.2 instead.&] -[s5;%% &] -[s5;%% [* TheIDE:]&] -[s5;l128;i150;O0;%% Autocomplete now correctly works in most cases +[s5; &] +[s5; [* TheIDE:]&] +[s5;l128;i150;O0; Autocomplete now correctly works in most cases (except in template bodies, which is libclang limitation)&] -[s5;l128;i150;O0;%% Code navigator refactored and improved&] -[s5;l128;i150;O0;%% TheIDE now shows C`+`+ errors while editing sources&] -[s5;l128;i150;O0;%% TheIDE now shows information tips about program +[s5;l128;i150;O0; Code navigator refactored and improved&] +[s5;l128;i150;O0; TheIDE now shows C`+`+ errors while editing sources&] +[s5;l128;i150;O0; TheIDE now shows information tips about program symbols when you leave mouse over it (documentation if available, declaration signature if not)&] -[s5;l128;i150;O0;%% New function `"Usage`" shows all usages of current +[s5;l128;i150;O0; New function `"Usage`" shows all usages of current symbol through all project sources based on C`+`+ analysis. With virtual methods, it shows all overrides of base class method.&] -[s5;l128;i150;O0;%% Android Builder was updated and it is compatible +[s5;l128;i150;O0; Android Builder was updated and it is compatible with the latest Android platform version. At the time of writing these words it is version 33.&] -[s5;%% &] -[s5;%% [* UMK]&] -[s5;l128;i150;O0;%% UMK displays version when run without parameters&] -[s5;%% &] -[s5;%% [* CtrlCore, CtrlLib:]&] -[s5;l128;i150;O0;%% Memory consumption (esp. sizeof) of widgets greatly +[s5; &] +[s5; [* UMK]&] +[s5;l128;i150;O0; UMK displays version when run without parameters&] +[s5; &] +[s5; [* CtrlCore, CtrlLib:]&] +[s5;l128;i150;O0; Memory consumption (esp. sizeof) of widgets greatly reduced (by up to 70%).&] -[s5;l128;i150;O0;%% LabelBox now allows center and right alignment.&] -[s5;l128;i150;O0;%% Fix issue with not working drag and drop for -files on Windows&] -[s5;%% &] -[s3;%% 2022.2 (rev. 16270) (May 2022)&] -[s5;po*/%% &] -[s5;po*/%% &] -[s5;%% This release serves mainly as a service pack to 2022.1 and -contains significant number of resolved issues. There are limited -set of new features.&] -[s0;ph%% [* Release highlights]&] -[s5;l128;i150;O0;%% Core: IsVoid(String) function to avoid confusion +[s5;l128;i150;O0; LabelBox now allows center and right alignment.&] +[s5;l128;i150;O0; Fix issue with not working drag and drop for files +on Windows&] +[s5; &] +[s3; 2022.2 (rev. 16270) (May 2022)&] +[s5;po*/ &] +[s5;po*/ &] +[s5; This release serves mainly as a service pack to 2022.1 and contains +significant number of resolved issues. There are limited set +of new features.&] +[s0;ph [* Release highlights]&] +[s5;l128;i150;O0; Core: IsVoid(String) function to avoid confusion with IsVoid(Value)&] -[s5;l128;i150;O0;%% Core: LoadFile fixed to be work with special files +[s5;l128;i150;O0; Core: LoadFile fixed to be work with special files in POSIX /proc/&] -[s5;l128;i150;O0;%% Core: BiVector, BiArray Create with constructor +[s5;l128;i150;O0; Core: BiVector, BiArray Create with constructor parameters&] -[s5;l128;i150;O0;%% CtrlLib: RichTextView WhenLeftClick, ClearSelection&] -[s5;l128;i150;O0;%% CtrlLib: FileSel`::NoExeIcons to suppress loading +[s5;l128;i150;O0; CtrlLib: RichTextView WhenLeftClick, ClearSelection&] +[s5;l128;i150;O0; CtrlLib: FileSel`::NoExeIcons to suppress loading of icons from .exe files in background&] -[s5;l128;i150;O0;%% CtrlLib: Fixed issues with namespace agnostic -layouts&] -[s5;l128;i150;O0;%% Image: Support for >2G pixel images (ImageBuffer`::GetLength +[s5;l128;i150;O0; CtrlLib: Fixed issues with namespace agnostic layouts&] +[s5;l128;i150;O0; Image: Support for >2G pixel images (ImageBuffer`::GetLength now returns size`_t)&] -[s5;l128;i150;O0;%% Draw: Fixed/optimised FlipImage&] -[s5;l128;i150;O0;%% plugin/tif: Minimal geotiff support via metadata +[s5;l128;i150;O0; Draw: Fixed/optimised FlipImage&] +[s5;l128;i150;O0; plugin/tif: Minimal geotiff support via metadata (see reference/geotiff)&] -[s5;%% &] -[s5;%% [* TheIDE:]&] -[s5;l128;i150;O0;%% ide: git format`-patch patch format support&] -[s5;%% &] -[s5;%% [* POSIX]&] -[s5;l128;i150;O0;%% Fix Manjaro (GNU/Linux) installation dependencies&] -[s5;*%% &] -[s3;%% 2022.1 (rev. 16236) (April 2022)&] -[s5;po*/%% &] -[s5;po%% [* Release highlights]&] -[s5;l128;i150;O0;%% sizeof(wchar) is changed to 4 (32 bits) to support +[s5; &] +[s5; [* TheIDE:]&] +[s5;l128;i150;O0; ide: git format`-patch patch format support&] +[s5; &] +[s5; [* POSIX]&] +[s5;l128;i150;O0; Fix Manjaro (GNU/Linux) installation dependencies&] +[s5;* &] +[s3; 2022.1 (rev. 16236) (April 2022)&] +[s5;po*/ &] +[s5;po [* Release highlights]&] +[s5;l128;i150;O0; sizeof(wchar) is changed to 4 (32 bits) to support non BMP unicode characters&] -[s5;l288;%% This might bring some incompatibilities in the code that +[s5;l288; This might bring some incompatibilities in the code that expects wchar to be 16 bit, which&] -[s5;l288;%% escpecially involves dealing with Win32 (and to lesser +[s5;l288; escpecially involves dealing with Win32 (and to lesser extend MacOS) APIs, so if your application&] -[s5;l288;%% is doing that, please check all instances of WCHAR (UniChar +[s5;l288; is doing that, please check all instances of WCHAR (UniChar on MacOS) or even wchar&] -[s5;l288;%% especially type casts.&] -[s5;l288;%% To support host APIs, char16 is introduced (but there -is no 16`-bit String varian).&] -[s5;l288;%% Use ToSystemCharsetW, FromSystemCharsetW to convert texts +[s5;l288; especially type casts.&] +[s5;l288; To support host APIs, char16 is introduced (but there is +no 16`-bit String varian).&] +[s5;l288; Use ToSystemCharsetW, FromSystemCharsetW to convert texts to Win32 API.&] -[s0;l256;ph%% &] -[s5;l128;i150;O0;%% Support of drawing non`-BMP characters in GUI&] -[s5;l128;i150;O0;%% Vastly improved character font replacement code +[s0;l256;ph &] +[s5;l128;i150;O0; Support of drawing non`-BMP characters in GUI&] +[s5;l128;i150;O0; Vastly improved character font replacement code (when drawing characters missing with requested font, replacement font is used)&] -[s5;l128;i150;O0;%% Last instances of Win32 ANSI calls (those ending +[s5;l128;i150;O0; Last instances of Win32 ANSI calls (those ending with A) are removed&] -[s5;l128;i150;O0;%% UTF handling routines are refactored and their`'s +[s5;l128;i150;O0; UTF handling routines are refactored and their`'s naming is unified&] -[s5;l128;i150;O0;%% RTF is now being able to handle non`-BMP characters +[s5;l128;i150;O0; RTF is now being able to handle non`-BMP characters (RTF is used as clipboard format for RichText)&] -[s5;l128;i150;O0;%% Improved input method (aka preedit in Linux, -aka marked text in MacOS) support&] -[s5;l128;i150;O0;%% ConvertFloat and EditFloat to handle float vs -double precision differences&] -[s5;l128;i150;O0;%% Improved FP <`-> text conversion routines&] -[s5;*%% &] -[s5;%% [* TheIDE]&] -[s5;l128;i150;O0;%% UppHub now raises error when Git is missing&] -[s5;*%% &] -[s5;%% [* `'Win32 release]&] -[s5;l128;i150;O0;%% clang updated to actual version (llvm14)&] -[s5;l128;i150;O0;%% zlib updated to 1.2.12&] -[s5;l128;i150;O0;%% openssl updated to 1.1.1n&] -[s5;l128;i150;O0;%% jpeg updated to 9e&] -[s5;l128;i150;O0;%% Instant setup for VS 2022&] -[s5;*%% &] -[s5;%% [* POSIX]&] -[s5;l128;i150;O0;%% In order to satisfy UppHub requirements, Git -dependency was added&] -[s5;*%% &] -[s3;%% 2021.1 (rev. 15947) (May 2021)&] -[s5;po%% &] -[s5;po%% [* Release highlights]&] -[s5;l160;i150;poO0;%% New system for 3rd party modules, `"UppHub`": +[s5;l128;i150;O0; Improved input method (aka preedit in Linux, aka +marked text in MacOS) support&] +[s5;l128;i150;O0; ConvertFloat and EditFloat to handle float vs double +precision differences&] +[s5;l128;i150;O0; Improved FP <`-> text conversion routines&] +[s5;* &] +[s5; [* TheIDE]&] +[s5;l128;i150;O0; UppHub now raises error when Git is missing&] +[s5;* &] +[s5; [* `'Win32 release]&] +[s5;l128;i150;O0; clang updated to actual version (llvm14)&] +[s5;l128;i150;O0; zlib updated to 1.2.12&] +[s5;l128;i150;O0; openssl updated to 1.1.1n&] +[s5;l128;i150;O0; jpeg updated to 9e&] +[s5;l128;i150;O0; Instant setup for VS 2022&] +[s5;* &] +[s5; [* POSIX]&] +[s5;l128;i150;O0; In order to satisfy UppHub requirements, Git dependency +was added&] +[s5;* &] +[s3; 2021.1 (rev. 15947) (May 2021)&] +[s5;po &] +[s5;po [* Release highlights]&] +[s5;l160;i150;poO0; New system for 3rd party modules, `"UppHub`": independently developed U`+`+ modules residing in Git repositories now can be seamlessly integrated, including automatic installation of missing packages if they are in the UppHub.&] -[s5;po%% &] -[s5;po%% [* Core]&] -[s0;l160;i150;O0;%% double NAN and INF values are now considered -Null (IsNull returns true for them).&] -[s0;l160;i150;O0;%% FileSystemInfo now returns volume names of network +[s5;po &] +[s5;po [* Core]&] +[s0;l160;i150;O0; double NAN and INF values are now considered Null +(IsNull returns true for them).&] +[s0;l160;i150;O0; FileSystemInfo now returns volume names of network drives&] -[s0;l160;i150;O0;%% Improvements in FindFile&] -[s0;l160;i150;O0;%% String middle tier heap handling optimised&] -[s0;l160;i150;O0;%% U`+`+ does not require MemoryFreeThread call -at the end of thread (it is now implemented using thread`_local +[s0;l160;i150;O0; Improvements in FindFile&] +[s0;l160;i150;O0; String middle tier heap handling optimised&] +[s0;l160;i150;O0; U`+`+ does not require MemoryFreeThread call at +the end of thread (it is now implemented using thread`_local destructor)&] -[s0;l160;i150;O0;%% Core/SSH: the underlying libssh2 library is upgraded +[s0;l160;i150;O0; Core/SSH: the underlying libssh2 library is upgraded to v. 1.9.0&] -[s5;%% &] -[s5;po%% [* CtrlCore]&] -[s0;l160;i150;O0;%% New C`+`+ style for iteration of widget children +[s5; &] +[s5;po [* CtrlCore]&] +[s0;l160;i150;O0; New C`+`+ style for iteration of widget children now possible [*C@5 for(Ctrl`& q : widget)]&] -[s0;l160;i150;O0;%% Pen support (pressure, tilt etc...)&] -[s0;%% &] -[s5;po%% [* RichText, RichEdit]&] -[s0;l160;i150;O0;%% 1.15 line spacing support&] -[s0;l160;i150;O0;%% JPEG raw image data is now exported to PDF as -JPEG (instead of recoding)&] -[s0;%% &] -[s0;%% [* TheIDE]&] -[s0;l160;i150;O0;%% Context goto now support AK`_ key definitions&] -[s0;l160;i150;O0;%% TheIDE now contains credentials manager for git +[s0;l160;i150;O0; Pen support (pressure, tilt etc...)&] +[s0; &] +[s5;po [* RichText, RichEdit]&] +[s0;l160;i150;O0; 1.15 line spacing support&] +[s0;l160;i150;O0; JPEG raw image data is now exported to PDF as JPEG +(instead of recoding)&] +[s0; &] +[s0; [* TheIDE]&] +[s0;l160;i150;O0; Context goto now support AK`_ key definitions&] +[s0;l160;i150;O0; TheIDE now contains credentials manager for git and svn (including github tokens)&] -[s0;l160;i150;O0;%% Various improvements to text comparison dialogs +[s0;l160;i150;O0; Various improvements to text comparison dialogs `- ability to copy and delete individual lines between versions, filtering by file time (for directory comparison).&] -[s0;l160;i150;O0;%% Repo history of .upp files directly available -via package context menu&] -[s0;l160;i150;O0;%% Open package dialog filtering options redesigned&] -[s0;l160;i150;O0;%% New function to copy positions as text to clipboard +[s0;l160;i150;O0; Repo history of .upp files directly available via +package context menu&] +[s0;l160;i150;O0; Open package dialog filtering options redesigned&] +[s0;l160;i150;O0; New function to copy positions as text to clipboard (e.g. `"RichEdit/Modify.cpp:27`") and go to such position based on clipboard content. Useful for communication between developers.&] -[s0;l160;i150;O0;%% Some common nest root files like README.md or -LICENSE are now directly accessible through pseudo`-package.&] -[s0;l160;i150;O0;%% TheIDE/umk build flags MAKE`_LIB and MAKE`_MLIB +[s0;l160;i150;O0; Some common nest root files like README.md or LICENSE +are now directly accessible through pseudo`-package.&] +[s0;l160;i150;O0; TheIDE/umk build flags MAKE`_LIB and MAKE`_MLIB force generation of library instead of executable.&] -[s0;l160;i150;O0;%% New `"Merge nests`" function (in Package organizer) +[s0;l160;i150;O0; New `"Merge nests`" function (in Package organizer) copies all used packages that are not in the first nest of assembly into the first nest. In U`+`+, first nest usually contains the application code whole while other nests contain libraries (U`+`+ @@ -500,1388 +514,1368 @@ or 3rd party libraries). This function is intended to `"freeze`" the non`-application code before releasing / tagging / branching to reduce the chance that a change of that code does not break the application.&] -[s0;l160;i150;O0;%% TheIDE now can `"Open terminal`" at various directories +[s0;l160;i150;O0; TheIDE now can `"Open terminal`" at various directories (output directory, package directory, source file directory etc...), with PATH augmented with current build executable directories.&] -[s0;l160;i150;O0;%% Support for .md (markdown) format&] -[s0;l160;i150;O0;%% Improved debugger threads tab&] -[s0;l160;i150;O0;%% Support for [*C@5 override][* ]in virtual methods +[s0;l160;i150;O0; Support for .md (markdown) format&] +[s0;l160;i150;O0; Improved debugger threads tab&] +[s0;l160;i150;O0; Support for [*C@5 override][* ]in virtual methods dialog&] -[s0;l160;i150;O0;%% Ctrl`+Shift`+Up/Down now moving the line or block +[s0;l160;i150;O0; Ctrl`+Shift`+Up/Down now moving the line or block of text up/down&] -[s0;%% &] -[s0;%% [* Win32]&] -[s0;l160;i150;O0;%% Now ships with minimal git (mingit) implementation&] -[s0;l160;i150;O0;%% CLANG now at version 11.0.0&] -[s5;%% &] -[s5;%% &] -[s3;%% 2020.2 (rev. 15260) (October 2020)&] -[s5;%% &] -[s5;po%% [* Release highlights]&] -[s5;l160;i150;poO0;%% This release is mostly about optimizations, -using SIMD and multithreading.&] -[s5;po%% &] -[s5;po%% [* Core]&] -[s5;l160;i150;poO0;%% memset`*, memcpy`*, memeq`*, memhash SIMD optimized +[s0; &] +[s0; [* Win32]&] +[s0;l160;i150;O0; Now ships with minimal git (mingit) implementation&] +[s0;l160;i150;O0; CLANG now at version 11.0.0&] +[s5; &] +[s5; &] +[s3; 2020.2 (rev. 15260) (October 2020)&] +[s5; &] +[s5;po [* Release highlights]&] +[s5;l160;i150;poO0; This release is mostly about optimizations, using +SIMD and multithreading.&] +[s5;po &] +[s5;po [* Core]&] +[s5;l160;i150;poO0; memset`*, memcpy`*, memeq`*, memhash SIMD optimized inlined routines (`* `= 8, 16, 32, 64, 128)&] -[s5;l160;i150;poO0;%% String comparison is yet again optimized&] -[s5;l160;i150;poO0;%% Using 64 bit hashes on 64 bit CPUs&] -[s5;po%% &] -[s5;po%% [* Draw, Painter]&] -[s5;l160;i150;poO0;%% SIMD optimizations (Intel SSE2 and ARM NEON) +[s5;l160;i150;poO0; String comparison is yet again optimized&] +[s5;l160;i150;poO0; Using 64 bit hashes on 64 bit CPUs&] +[s5;po &] +[s5;po [* Draw, Painter]&] +[s5;l160;i150;poO0; SIMD optimizations (Intel SSE2 and ARM NEON) of graphics related routines&] -[s5;%% &] -[s0;ph%% [* ScatterDraw]&] -[s5;l160;i150;poO0;%% Added SetDataSourceInternal() to internally -host data&] -[s5;%% &] -[s5;%% [* ScatterCtrl]&] -[s5;l160;i150;poO0;%% Added ScatterWindowPool&] -[s5;po%% &] -[s5;%% [* Ide/umk `- Android]&] -[s5;l160;i150;poO0;%% Removed depricated Android standard libraries +[s5; &] +[s0;ph [* ScatterDraw]&] +[s5;l160;i150;poO0; Added SetDataSourceInternal() to internally host +data&] +[s5; &] +[s5; [* ScatterCtrl]&] +[s5;l160;i150;poO0; Added ScatterWindowPool&] +[s5;po &] +[s5; [* Ide/umk `- Android]&] +[s5;l160;i150;poO0; Removed depricated Android standard libraries (now select c`+`+`-static, c`+`+`_shared, system and none are supported)&] -[s5;l160;i150;poO0;%% Remove depricated Android platforms (now armabi`-v7, +[s5;l160;i150;poO0; Remove depricated Android platforms (now armabi`-v7, arm64`-v8a, x86 and x86`-64 are supported)&] -[s5;%% &] -[s5;po%% [* Core/SSH]&] -[s5;l160;i150;poO0;%% Fized a truncation issue with SshExec. It can +[s5; &] +[s5;po [* Core/SSH]&] +[s5;l160;i150;poO0; Fized a truncation issue with SshExec. It can now handle large outputs up to 2 GiB.&] -[s5;%% &] -[s5;po%% [* Turtle]&] -[s5;l160;i150;poO0;%% Refactored to use VirtualGui&] -[s5;%% &] -[s5;po%% [* Ide/umk]&] -[s5;l160;i150;poO0;%% C`+`+ Assist parser in TheIDE is now multithreaded +[s5; &] +[s5;po [* Turtle]&] +[s5;l160;i150;poO0; Refactored to use VirtualGui&] +[s5; &] +[s5;po [* Ide/umk]&] +[s5;l160;i150;poO0; C`+`+ Assist parser in TheIDE is now multithreaded and some parts run in background&] -[s5;l160;i150;poO0;%% Navigator now can search for files too&] -[s5;l160;i150;poO0;%% The errors now can be directly googled&] -[s5;l160;i150;poO0;%% ide/umk now can be configured for cross`-compilation +[s5;l160;i150;poO0; Navigator now can search for files too&] +[s5;l160;i150;poO0; The errors now can be directly googled&] +[s5;l160;i150;poO0; ide/umk now can be configured for cross`-compilation (e.g. compile Win32 application in Linux)&] -[s5;l160;i150;poO0;%% Direct help button in `"Select main package`" +[s5;l160;i150;poO0; Direct help button in `"Select main package`" window&] -[s5;l160;i150;poO0;%% Additional tooltips in various places for better +[s5;l160;i150;poO0; Additional tooltips in various places for better user experience&] -[s5;l160;i150;poO0;%% Simplified project toolbar&] -[s5;l160;i150;poO0;%% Improved documentation&] -[s5;%% &] -[s5;po%% [* uppsrc]&] -[s5;l160;i150;poO0;%% Improved support for OpenSolaris derived systems, +[s5;l160;i150;poO0; Simplified project toolbar&] +[s5;l160;i150;poO0; Improved documentation&] +[s5; &] +[s5;po [* uppsrc]&] +[s5;l160;i150;poO0; Improved support for OpenSolaris derived systems, FreeBSD and OpenBSD&] -[s5;%% &] -[s5;%% [* upgrades of 3d party code]&] -[s5;l160;i150;poO0;%% OpenSSL (in Win32 release) to 1.1.1g&] -[s5;l160;i150;poO0;%% plugin/jpg to 9d&] -[s5;l160;i150;poO0;%% plugin/tif to 4.1.0&] -[s5;l160;i150;poO0;%% plugin/lz4 to 1.9.2&] -[s5;l160;i150;poO0;%% plugin/zstd to 1.4.5&] -[s5;l160;i150;poO0;%% plugin/pcre to 8.44&] -[s5;l160;i150;poO0;%% plugin/sqlite3 to 3.33&] -[s5;l160;i150;poO0;%% plugin/glew to 2.2.0&] -[s0;l160;i150;O0;%% plugin/Eigen to master branch commit C1D944DD -(9/May/2020)&] -[s5;%% &] -[s3;%% 2020.1 (rev. 14429[3 ) ](May 2020)&] -[s5;po%% &] -[s5;po%% [* Release highlights]&] -[s5;l160;i150;poO0;%% gtk3 replaces gtk2 as default linux backend&] -[s5;l160;i150;poO0;%% Visual look`&feel refactored in Linux and MacOS, +[s5; &] +[s5; [* upgrades of 3d party code]&] +[s5;l160;i150;poO0; OpenSSL (in Win32 release) to 1.1.1g&] +[s5;l160;i150;poO0; plugin/jpg to 9d&] +[s5;l160;i150;poO0; plugin/tif to 4.1.0&] +[s5;l160;i150;poO0; plugin/lz4 to 1.9.2&] +[s5;l160;i150;poO0; plugin/zstd to 1.4.5&] +[s5;l160;i150;poO0; plugin/pcre to 8.44&] +[s5;l160;i150;poO0; plugin/sqlite3 to 3.33&] +[s5;l160;i150;poO0; plugin/glew to 2.2.0&] +[s0;l160;i150;O0; plugin/Eigen to master branch commit C1D944DD (9/May/2020)&] +[s5; &] +[s3; 2020.1 (rev. 14429[3 ) ](May 2020)&] +[s5;po &] +[s5;po [* Release highlights]&] +[s5;l160;i150;poO0; gtk3 replaces gtk2 as default linux backend&] +[s5;l160;i150;poO0; Visual look`&feel refactored in Linux and MacOS, improved dark theme support&] -[s5;l160;i150;poO0;%% In Win32, PDB debugger now displays various -U`+`+ and standard library containers and types nicely&] -[s5;l160;i150;poO0;%% Win32 release now ships with CLANG compiler -toolchain&] -[s5;l160;i150;poO0;%% Win32 release [* does not contain 32`-bit TheIDE +[s5;l160;i150;poO0; In Win32, PDB debugger now displays various U`+`+ +and standard library containers and types nicely&] +[s5;l160;i150;poO0; Win32 release now ships with CLANG compiler toolchain&] +[s5;l160;i150;poO0; Win32 release [* does not contain 32`-bit TheIDE version] anymore. Only 64`-bit version is bundled. If you want to use U`+`+ on 32`-bit Windows [^https`:`/`/sourceforge`.net`/projects`/upp`/files`/upp`/2019`.2`/upp`-mingw`-13664`.7z`/download^ 2 019.2] is recommended for you.&] -[s5;l160;i150;poO0;%% Posix release archives are reworked to allow +[s5;l160;i150;poO0; Posix release archives are reworked to allow easier and faster installation&] -[s5;po%% &] -[s5;po%% [* Core]&] -[s5;l160;i150;poO0;%% SshExec improvements&] -[s5;l160;i150;poO0;%% ConditionVariable and Semaphore now have Wait +[s5;po &] +[s5;po [* Core]&] +[s5;l160;i150;poO0; SshExec improvements&] +[s5;l160;i150;poO0; ConditionVariable and Semaphore now have Wait variant with timeout&] -[s5;l160;i150;poO0;%% IsDoubleWidth function to detect double`-width +[s5;l160;i150;poO0; IsDoubleWidth function to detect double`-width UNICODE glyphs&] -[s5;l160;i150;poO0;%% MacOS is now using fast U`+`+ heap when possible +[s5;l160;i150;poO0; MacOS is now using fast U`+`+ heap when possible (not for new/delete)&] -[s5;l160;i150;poO0;%% U`+`+ now using `~/.config and `~/.cache folders +[s5;l160;i150;poO0; U`+`+ now using `~/.config and `~/.cache folders to store things&] -[s5;po%% &] -[s5;po%% [* Draw]&] -[s5;l160;i150;poO0;%% GaussianBlur function added&] -[s5;po%% &] -[s5;po%% [* CtrlCore]&] -[s5;l160;i150;poO0;%% Ctrl`::GetAscendant utility method to get parent +[s5;po &] +[s5;po [* Draw]&] +[s5;l160;i150;poO0; GaussianBlur function added&] +[s5;po &] +[s5;po [* CtrlCore]&] +[s5;l160;i150;poO0; Ctrl`::GetAscendant utility method to get parent based on its type&] -[s5;l160;i150;poO0;%% Dark mode is now enabled by default, CtrlLib: +[s5;l160;i150;poO0; Dark mode is now enabled by default, CtrlLib: classic skin improvements&] -[s5;l160;i150;poO0;%% MacOS multimonitor support and other fixes&] -[s5;po%% &] -[s5;po%% [* CtrlLib]&] -[s5;l160;i150;poO0;%% Modernized widgets look in layout designer&] -[s5;l160;i150;poO0;%% Added some less often used widgets like ColorPusher, +[s5;l160;i150;poO0; MacOS multimonitor support and other fixes&] +[s5;po &] +[s5;po [* CtrlLib]&] +[s5;l160;i150;poO0; Modernized widgets look in layout designer&] +[s5;l160;i150;poO0; Added some less often used widgets like ColorPusher, TreeCtrl or ColumnList that were not previously directly supported in layout designer&] -[s5;l160;i150;poO0;%% FileSel support of .lnk files in Win32&] -[s5;l160;i150;poO0;%% Host native file selecteor, FileSelector, is +[s5;l160;i150;poO0; FileSel support of .lnk files in Win32&] +[s5;l160;i150;poO0; Host native file selecteor, FileSelector, is now renamed to FileSelNative and is now available in MacOS too (in addition to Win32 and gtk3)&] -[s5;l160;i150;poO0;%% GLCtrl in OpenGL/X11 refactored&] -[s5;po%% &] -[s5;po%% [* Ide]&] -[s5;l160;i150;poO0;%% umk now implements use target directory flag +[s5;l160;i150;poO0; GLCtrl in OpenGL/X11 refactored&] +[s5;po &] +[s5;po [* Ide]&] +[s5;l160;i150;poO0; umk now implements use target directory flag (thanks Novo)&] -[s5;l160;i150;poO0;%% Context goto (Alt`+J) now able to detect files +[s5;l160;i150;poO0; Context goto (Alt`+J) now able to detect files / links (and open the file / link in browser)&] -[s5;l160;i150;poO0;%% Gdb frontend now can better handle executables +[s5;l160;i150;poO0; Gdb frontend now can better handle executables without debug info&] -[s5;l160;i150;poO0;%% Icon designer now can show synthetised UHD/Dark +[s5;l160;i150;poO0; Icon designer now can show synthetised UHD/Dark images&] -[s5;l160;i150;poO0;%% New Insert file/clipboard as.. function allows +[s5;l160;i150;poO0; New Insert file/clipboard as.. function allows insertion of clipboard or files directly to the text in various formats (C string, Base64 encode, raw byte values, compressed byte values using LZ4 or Zlib or LZMA).&] -[s5;l160;i150;poO0;%% Move/Copy package function&] -[s5;l160;i150;poO0;%% Find in files now has 3 output panes&] -[s5;po%% &] -[s5;po%% [* Painter]&] -[s5;l160;i150;poO0;%% GetSVGPathBoundingBox function that gets bounding +[s5;l160;i150;poO0; Move/Copy package function&] +[s5;l160;i150;poO0; Find in files now has 3 output panes&] +[s5;po &] +[s5;po [* Painter]&] +[s5;l160;i150;poO0; GetSVGPathBoundingBox function that gets bounding box of SVG path&] -[s5;l160;i150;poO0;%% Xform2D`::Map function creates matrix for affinity +[s5;l160;i150;poO0; Xform2D`::Map function creates matrix for affinity triangle`->triangle mapping&] -[s5;po%% &] -[s5;po%% [* SQL]&] -[s5;l160;i150;poO0;%% PGSQL now can escape ? as ?? or use NoQuestionParams +[s5;po &] +[s5;po [* SQL]&] +[s5;l160;i150;poO0; PGSQL now can escape ? as ?? or use NoQuestionParams method to avoid interpreting ? as parameter holder&] -[s5;l160;i150;poO0;%% SQL`_RENAME .sch `'command`' can be used to -have different name of column in DB and code.&] -[s5;po%% &] -[s5;po%% [* uppsrc]&] -[s5;l160;i150;poO0;%% In POSIX, external library dependencies are -now refactored with pkg`-config&] -[s24;%% &] -[s3;%% 2019.2 (rev 13664[3 ) ](October 2019)&] -[s5;po*%% &] -[s5;po*%% &] -[s5;po%% [* Core]&] -[s5;l160;i150;poO0;%% Allocator huge block handling optimized, memory +[s5;l160;i150;poO0; SQL`_RENAME .sch `'command`' can be used to have +different name of column in DB and code.&] +[s5;po &] +[s5;po [* uppsrc]&] +[s5;l160;i150;poO0; In POSIX, external library dependencies are now +refactored with pkg`-config&] +[s24; &] +[s3; 2019.2 (rev 13664[3 ) ](October 2019)&] +[s5;po* &] +[s5;po* &] +[s5;po [* Core]&] +[s5;l160;i150;poO0; Allocator huge block handling optimized, memory consumption improved in specific cases&] -[s5;l160;i150;poO0;%% Index refactored to reduce sizeof and improve +[s5;l160;i150;poO0; Index refactored to reduce sizeof and improve performance in specific cases&] -[s5;l160;i150;poO0;%% Introduced workaround for Mingw TLS performance +[s5;l160;i150;poO0; Introduced workaround for Mingw TLS performance issue&] -[s5;l160;i150;poO0;%% pick/clone semantics refined in several places&] -[s5;l160;i150;poO0;%% Random algorithm changed to xoshiro256`*`*&] -[s5;l160;i150;poO0;%% Uuid generation optimized&] -[s5;l160;i150;poO0;%% Fast U`+`+ allocator is now used internally -where possible even if standard allocator us used for new/delete -(with USEMALLOC flag)&] -[s5;l160;i150;poO0;%% pick/clone refinements&] -[s5;l160;i150;poO0;%% Value`::Compare optimized for standard types&] -[s5;l160;po*%% &] -[s5;po%% [* Graphics]&] -[s5;l160;i150;poO0;%% SVG parser improvements&] -[s5;l160;i150;poO0;%% GLCtrl new method ExecuteGL to execute code -with correct GL context&] -[s5;l160;i150;poO0;%% Font metrics optimized for MingW with TLS optimization +[s5;l160;i150;poO0; pick/clone semantics refined in several places&] +[s5;l160;i150;poO0; Random algorithm changed to xoshiro256`*`*&] +[s5;l160;i150;poO0; Uuid generation optimized&] +[s5;l160;i150;poO0; Fast U`+`+ allocator is now used internally where +possible even if standard allocator us used for new/delete (with +USEMALLOC flag)&] +[s5;l160;i150;poO0; pick/clone refinements&] +[s5;l160;i150;poO0; Value`::Compare optimized for standard types&] +[s5;l160;po* &] +[s5;po [* Graphics]&] +[s5;l160;i150;poO0; SVG parser improvements&] +[s5;l160;i150;poO0; GLCtrl new method ExecuteGL to execute code with +correct GL context&] +[s5;l160;i150;poO0; Font metrics optimized for MingW with TLS optimization workaround&] -[s5;po%% &] -[s5;po%% [* CtrlLib]&] -[s0;l160;i150;O0;%% ArrayCtrl sorting improved&] -[s5;l160;i150;poO0;%% CtrlMapper small helper class&] -[s5;l160;i150;poO0;%% DropList supports Add with initializer`_list&] -[s5;l160;i150;poO0;%% FileSelButton WhenSelected Event&] -[s5;l160;i150;poO0;%% FileSel has now more sorting options, PreSelect +[s5;po &] +[s5;po [* CtrlLib]&] +[s0;l160;i150;O0; ArrayCtrl sorting improved&] +[s5;l160;i150;poO0; CtrlMapper small helper class&] +[s5;l160;i150;poO0; DropList supports Add with initializer`_list&] +[s5;l160;i150;poO0; FileSelButton WhenSelected Event&] +[s5;l160;i150;poO0; FileSel has now more sorting options, PreSelect now supports Save As too&] -[s5;po%% &] -[s5;po%% [* ScatterDraw]&] -[s0;l160;i150;O0;%% SetGridLines callbacks&] -[s5;po%% &] -[s0;%% [* Ide]&] -[s5;l160;i150;poO0;%% Console output now supports search&] -[s5;l160;i150;poO0;%% Font settings `'set to defaults`' button&] -[s5;l160;i150;poO0;%% Debugger now has arrow buttons to change frame +[s5;po &] +[s5;po [* ScatterDraw]&] +[s0;l160;i150;O0; SetGridLines callbacks&] +[s5;po &] +[s0; [* Ide]&] +[s5;l160;i150;poO0; Console output now supports search&] +[s5;l160;i150;poO0; Font settings `'set to defaults`' button&] +[s5;l160;i150;poO0; Debugger now has arrow buttons to change frame without dropping the list&] -[s5;l160;i150;poO0;%% New GUI patch tool&] -[s5;l160;i150;poO0;%% GDB debugger frontend now has memory tab&] -[s5;l160;i150;poO0;%% Icon designer export to .png now exports uhd/dark +[s5;l160;i150;poO0; New GUI patch tool&] +[s5;l160;i150;poO0; GDB debugger frontend now has memory tab&] +[s5;l160;i150;poO0; Icon designer export to .png now exports uhd/dark variants too&] -[s5;l160;i150;poO0;%% Main config dialog now can drag/drop (or move) +[s5;l160;i150;poO0; Main config dialog now can drag/drop (or move) lines&] -[s5;l160;i150;poO0;%% Run options dialog got new buttons to insert +[s5;l160;i150;poO0; Run options dialog got new buttons to insert file path / directory path into commandline args&] -[s5;l160;i150;poO0;%% pkg`-config support&] -[s0;%% &] -[s3;%% 2019.1 (rev 13068) (May 2019)&] -[s5;po*%% &] -[s5;po%% [* General improvements]&] -[s5;l160;i150;poO0;~~~192;%% MacOS X support&] -[s5;l160;i150;poO0;~~~192;%% Improved support for UHD displays&] -[s5;l160;i150;poO0;~~~192;%% Improved support for dark themes&] -[s5;po%% &] -[s5;po%% [* Core]&] -[s5;l160;i150;poO0;~~~192;%% Core/SSH: SSH protocol support&] -[s5;l160;i150;poO0;~~~192;%% XMLRPC improvements (protocol version, +[s5;l160;i150;poO0; pkg`-config support&] +[s0; &] +[s3; 2019.1 (rev 13068) (May 2019)&] +[s5;po* &] +[s5;po [* General improvements]&] +[s5;l160;i150;poO0;~~~192; MacOS X support&] +[s5;l160;i150;poO0;~~~192; Improved support for UHD displays&] +[s5;l160;i150;poO0;~~~192; Improved support for dark themes&] +[s5;po &] +[s5;po [* Core]&] +[s5;l160;i150;poO0;~~~192; Core/SSH: SSH protocol support&] +[s5;l160;i150;poO0;~~~192; XMLRPC improvements (protocol version, support for i8 type)&] -[s5;l160;i150;poO0;~~~192;%% WebSockets improvements&] -[s5;l160;i150;poO0;~~~192;%% ToAscii, ToUpperAscii, ToLowerAscii -functions optimized&] -[s5;l160;i150;poO0;~~~192;%% New CoWork variant CoWorkNX solves an +[s5;l160;i150;poO0;~~~192; WebSockets improvements&] +[s5;l160;i150;poO0;~~~192; ToAscii, ToUpperAscii, ToLowerAscii functions +optimized&] +[s5;l160;i150;poO0;~~~192; New CoWork variant CoWorkNX solves an compilation problem when using CoWork as member variable&] -[s5;l160;i150;poO0;~~~192;%% DarkTheme function inverts Color luminosity +[s5;l160;i150;poO0;~~~192; DarkTheme function inverts Color luminosity for dark themes support (dark colors become light, light colors dark, but color remains)&] -[s5;l160;i150;poO0;~~~192;%% MakeOne is now changed to function&] -[s5;l160;i150;poO0;~~~192;%% LocalProcess now allows setting current +[s5;l160;i150;poO0;~~~192; MakeOne is now changed to function&] +[s5;l160;i150;poO0;~~~192; LocalProcess now allows setting current directory for started process&] -[s5;po%% &] -[s5;po%% [* Ide]&] -[s5;l160;i150;poO0;~~~192;%% Various improvements of Image designer&] -[s5;l160;i150;poO0;~~~192;%% `'Disable UHD mode`' option for testing +[s5;po &] +[s5;po [* Ide]&] +[s5;l160;i150;poO0;~~~192; Various improvements of Image designer&] +[s5;l160;i150;poO0;~~~192; `'Disable UHD mode`' option for testing applications&] -[s5;l160;i150;poO0;~~~192;%% GDB interface improvements: Now possible +[s5;l160;i150;poO0;~~~192; GDB interface improvements: Now possible to stop running application and to set breakpoints while application runs&] -[s5;l160;i150;poO0;~~~192;%% Compare with clipboard function&] -[s5;l160;i150;poO0;~~~192;%% Initial setup improved&] -[s5;l160;i150;poO0;~~~192;%% New dialog for setting up project assemblies&] -[s5;l160;i150;poO0;~~~192;%% PDB debugger improvements: now displays +[s5;l160;i150;poO0;~~~192; Compare with clipboard function&] +[s5;l160;i150;poO0;~~~192; Initial setup improved&] +[s5;l160;i150;poO0;~~~192; New dialog for setting up project assemblies&] +[s5;l160;i150;poO0;~~~192; PDB debugger improvements: now displays INF and NAN for floats, fixed termination issues&] -[s5;l160;i150;poO0;~~~192;%% Selfupgrade feature (ide compiles itself +[s5;l160;i150;poO0;~~~192; Selfupgrade feature (ide compiles itself and replaces the binary)&] -[s5;po%% &] -[s5;po%% [* Other]&] -[s5;l160;i150;poO0;~~~192;%% Improved jpeg EXIF support&] -[s5;l160;i150;poO0;~~~192;%% RichText now suggests corrections for +[s5;po &] +[s5;po [* Other]&] +[s5;l160;i150;poO0;~~~192; Improved jpeg EXIF support&] +[s5;l160;i150;poO0;~~~192; RichText now suggests corrections for misspelled words.&] -[s5;l160;i150;poO0;~~~192;%% RichText now supports .svg images&] -[s5;l160;i150;poO0;~~~192;%% GLCtrl refactored, changed to use single +[s5;l160;i150;poO0;~~~192; RichText now supports .svg images&] +[s5;l160;i150;poO0;~~~192; GLCtrl refactored, changed to use single context per application (allows sharing resources, e.g. textures, between widgets), support for GTK fixed, MSAA supported in Win32&] -[s5;l160;i150;poO0;~~~192;%% VirtualGui is a new package to implement +[s5;l160;i150;poO0;~~~192; VirtualGui is a new package to implement working `'fullscreen`' GUI by implementing a SystemDraw and a dozen of virtual methods, intended for use with e.g. games. VirtualGUI/SDL2GL is an implementation with SDL2.&] -[s5;l160;i150;poO0;~~~192;%% Painter is heavily optimized for multithreaded +[s5;l160;i150;poO0;~~~192; Painter is heavily optimized for multithreaded rendering.&] -[s5;l160;i150;poO0;~~~192;%% PostgreSQL now supports RETURNING clause +[s5;l160;i150;poO0;~~~192; PostgreSQL now supports RETURNING clause in SqlExp.&] -[s5;l160;i150;poO0;~~~192;%% New plugin/tess2 package (tesselation) +[s5;l160;i150;poO0;~~~192; New plugin/tess2 package (tesselation) and plugin/glm (OpenGL maths support).&] -[s5;po%% &] -[s5;po%% [* Release]&] -[s5;l160;i150;poO0;~~~192;%% U`+`+ now ships with speller files for +[s5;po &] +[s5;po [* Release]&] +[s5;l160;i150;poO0;~~~192; U`+`+ now ships with speller files for multiple languages&] -[s5;po%% &] -[s5;po%% [* Win32 Release]&] -[s5;l160;i150;poO0;~~~192;%% Now ships with SDL2, MySQL and PostgreSQL +[s5;po &] +[s5;po [* Win32 Release]&] +[s5;l160;i150;poO0;~~~192; Now ships with SDL2, MySQL and PostgreSQL client libraries&] -[s5;l160;i150;poO0;~~~192;%% mingw64 upgraded to 8.1.0&] -[s5;l160;i150;poO0;~~~192;%% mingw64 now using lld linker `- link -times with mingw are now practically zero&] -[s5;l160;i150;poO0;~~~192;%% OpenSSL updated 1.0.2r&] -[s5;l160;i150;poO0;~~~192;%% plugin/jpg updated to 9c&] -[s5;l160;i150;poO0;~~~192;%% plugin/tif updated to 4.0.10&] -[s5;l160;i150;poO0;~~~192;%% plugin/lz4 updated to 1.8.3&] -[s5;l160;i150;poO0;~~~192;%% plugin/zstd updated to 1.3.8&] -[s5;l160;i150;poO0;~~~192;%% plugin/lzma updated to 19.0&] -[s5;l160;i150;poO0;~~~192;%% plugin/pcre updated to 8.43&] -[s5;l160;i150;poO0;~~~192;%% plugin/sqlite3 updated to 3.27.2&] -[s5;po^topic`:`/`/uppweb`/www`/RoadmapHistorical`$en`-us^%% &] -[s3;H4;%% 2018.1 (rev 11873) (Mar 2018)&] -[s22;%% Core&] -[s5;l160;i150;poO0;%% New low`-overhead CoWork [^https`:`/`/www`.ultimatepp`.org`/srcdoc`$Core`$Tutorial`$en`-us`.html`#Section`_7`_7^ p +[s5;l160;i150;poO0;~~~192; mingw64 upgraded to 8.1.0&] +[s5;l160;i150;poO0;~~~192; mingw64 now using lld linker `- link times +with mingw are now practically zero&] +[s5;l160;i150;poO0;~~~192; OpenSSL updated 1.0.2r&] +[s5;l160;i150;poO0;~~~192; plugin/jpg updated to 9c&] +[s5;l160;i150;poO0;~~~192; plugin/tif updated to 4.0.10&] +[s5;l160;i150;poO0;~~~192; plugin/lz4 updated to 1.8.3&] +[s5;l160;i150;poO0;~~~192; plugin/zstd updated to 1.3.8&] +[s5;l160;i150;poO0;~~~192; plugin/lzma updated to 19.0&] +[s5;l160;i150;poO0;~~~192; plugin/pcre updated to 8.43&] +[s5;l160;i150;poO0;~~~192; plugin/sqlite3 updated to 3.27.2&] +[s5;po^topic`:`/`/uppweb`/www`/RoadmapHistorical`$en`-us^ &] +[s3;H4; 2018.1 (rev 11873) (Mar 2018)&] +[s22; Core&] +[s5;l160;i150;poO0; New low`-overhead CoWork [^https`:`/`/www`.ultimatepp`.org`/srcdoc`$Core`$Tutorial`$en`-us`.html`#Section`_7`_7^ p arallelization method / pattern `- Loop]&] -[s5;l160;i150;poO0;%% Throughout the Core, many rvalue / universal +[s5;l160;i150;poO0; Throughout the Core, many rvalue / universal reference related optimizations&] -[s5;l160;i150;poO0;%% CoPartition optimized to perform the work in +[s5;l160;i150;poO0; CoPartition optimized to perform the work in calling thread if data size is small&] -[s5;l160;i150;poO0;%% SeedRandom without parameter now reseeds the +[s5;l160;i150;poO0; SeedRandom without parameter now reseeds the random with host entropy&] -[s5;l160;i150;poO0;%% Array/Vector new [^https`:`/`/www`.ultimatepp`.org`/srcdoc`$Core`$Tutorial`$en`-us`.html`#Section`_3`_2^ G +[s5;l160;i150;poO0; Array/Vector new [^https`:`/`/www`.ultimatepp`.org`/srcdoc`$Core`$Tutorial`$en`-us`.html`#Section`_3`_2^ G et/Set] methods&] -[s5;l160;i150;poO0;%% New features for WebSocket client mode&] -[s22;%% plugin/bz2&] -[s5;l160;i150;poO0;%% plugin/bz2: Streaming support&] -[s22;%% Painter&] -[s5;l160;i150;poO0;%% Co Option to run parallel&] -[s5;l160;i150;poO0;%% BufferPainter`::PreClipDashed&] -[s22;%% PdfDraw&] -[s5;l160;i150;poO0;%% PdfDraw: DrawJPEG to directly embed JPEG compressed +[s5;l160;i150;poO0; New features for WebSocket client mode&] +[s22; plugin/bz2&] +[s5;l160;i150;poO0; plugin/bz2: Streaming support&] +[s22; Painter&] +[s5;l160;i150;poO0; Co Option to run parallel&] +[s5;l160;i150;poO0; BufferPainter`::PreClipDashed&] +[s22; PdfDraw&] +[s5;l160;i150;poO0; PdfDraw: DrawJPEG to directly embed JPEG compressed images into PDF&] -[s22;%% GUI programming&] -[s5;l160;i150;poO0;%% In Windows, owned windows now have minimize -box disabled (as minimizing of owned windows leads to strange -behaviour)&] -[s5;l160;i150;poO0;%% LineEdit`::WhenScroll event&] -[s5;l160;i150;poO0;%% New OptionBox widget (Option with LabelBox -like graphics, also able to automatically enable/disable contained +[s22; GUI programming&] +[s5;l160;i150;poO0; In Windows, owned windows now have minimize box +disabled (as minimizing of owned windows leads to strange behaviour)&] +[s5;l160;i150;poO0; LineEdit`::WhenScroll event&] +[s5;l160;i150;poO0; New OptionBox widget (Option with LabelBox like +graphics, also able to automatically enable/disable contained widgets)&] -[s5;l160;i150;poO0;%% FileSel now has option to add widgets into -the dialog (e.g. to specify save format)&] -[s22;%% TheIDE&] -[s5;l160;i150;poO0;%% Very long files (>400MB) are now opened for -view rather than edit.&] -[s5;l160;i150;poO0;%% Some trivial merge conflict helper tools&] -[s5;l160;i150;poO0;%% IconDes improvements&] -[s5;l160;i150;poO0;%% Esc scripting language now has `'continue`' -statement&] -[s5;l160;i150;poO0;%% Debugger now can copy the back`-trace of [/ all] +[s5;l160;i150;poO0; FileSel now has option to add widgets into the +dialog (e.g. to specify save format)&] +[s22; TheIDE&] +[s5;l160;i150;poO0; Very long files (>400MB) are now opened for view +rather than edit.&] +[s5;l160;i150;poO0; Some trivial merge conflict helper tools&] +[s5;l160;i150;poO0; IconDes improvements&] +[s5;l160;i150;poO0; Esc scripting language now has `'continue`' statement&] +[s5;l160;i150;poO0; Debugger now can copy the back`-trace of [/ all] threads to the clipboard&] -[s0;%% &] -[s3;%% 2017.2 (rev 11540) (Dec 2017)&] -[s22;%% Core&] -[s5;l160;i150;poO0;%% New [* AsyncWork ]class `- U`+`+ future`-alike +[s0; &] +[s3; 2017.2 (rev 11540) (Dec 2017)&] +[s22; Core&] +[s5;l160;i150;poO0; New [* AsyncWork ]class `- U`+`+ future`-alike tool&] -[s5;l160;i150;poO0;%% CoWork: Exception propagation from worker threads, +[s5;l160;i150;poO0; CoWork: Exception propagation from worker threads, job cancellation support.&] -[s5;l160;i150;poO0;%% Bits class optimized, it is now possible to -set multiple bits (count parameter)&] -[s5;l160;i150;poO0;%% WebSocket refactored for asynchronous operation&] -[s5;l160;i150;poO0;%% UTF`-32 support functions, UnicodeCompose and +[s5;l160;i150;poO0; Bits class optimized, it is now possible to set +multiple bits (count parameter)&] +[s5;l160;i150;poO0; WebSocket refactored for asynchronous operation&] +[s5;l160;i150;poO0; UTF`-32 support functions, UnicodeCompose and UnicodeDecompose functions, support for UTF16 surrogate pairs&] -[s5;l160;i150;poO0;%% DeleteFolderDeep now deletes symlinks&] -[s5;l160;i150;poO0;%% [* MakeOne ]function (alternative to One`::Create)&] -[s5;l160;i150;poO0;%% LoadFromFile, StoreToFile `- Event variant&] -[s5;l160;i150;poO0;%% [* ReverseRange ]and [* SortedRange]&] -[s5;l160;i150;poO0;%% Server Name Indicator support in Socket and -HttpRequest&] -[s5;l160;i150;poO0;%% [* SSL1.1] API support&] -[s5;l160;i150;poO0;%% RegisterGlobalSerialize&] -[s5;po%% &] -[s22;%% GUI programming&] -[s5;l160;i150;poO0;%% ArrayCtrl: Improvements in sorting, new public +[s5;l160;i150;poO0; DeleteFolderDeep now deletes symlinks&] +[s5;l160;i150;poO0; [* MakeOne ]function (alternative to One`::Create)&] +[s5;l160;i150;poO0; LoadFromFile, StoreToFile `- Event variant&] +[s5;l160;i150;poO0; [* ReverseRange ]and [* SortedRange]&] +[s5;l160;i150;poO0; Server Name Indicator support in Socket and HttpRequest&] +[s5;l160;i150;poO0; [* SSL1.1] API support&] +[s5;l160;i150;poO0; RegisterGlobalSerialize&] +[s5;po &] +[s22; GUI programming&] +[s5;l160;i150;poO0; ArrayCtrl: Improvements in sorting, new public GetCellRect, GetCellRectM, GetSelKeys, SetRowDisplay, SetColumnDisplay, AcceptRow methods&] -[s5;l160;i150;poO0;%% Button NakedStyle style.&] -[s5;l160;i150;poO0;%% WithDropChoice: Set/Remove entry in drop`-down +[s5;l160;i150;poO0; Button NakedStyle style.&] +[s5;l160;i150;poO0; WithDropChoice: Set/Remove entry in drop`-down list&] -[s5;l160;i150;poO0;%% TextCtrl`::Load refactored, now can break very +[s5;l160;i150;poO0; TextCtrl`::Load refactored, now can break very long (>1MB) lines&] -[s5;l160;i150;poO0;%% TreeCtrl: GetOpenIds, OpenIds&] -[s5;l160;i150;poO0;%% IdCtrls, SqlCtrls refactored, improved&] -[s5;l160;i150;poO0;%% Option: SetColor&] -[s5;l160;i150;poO0;%% Edit...Spin: RoundFromMin modifier method&] -[s5;l160;i150;poO0;%% ColorPopup now has button to enter the color +[s5;l160;i150;poO0; TreeCtrl: GetOpenIds, OpenIds&] +[s5;l160;i150;poO0; IdCtrls, SqlCtrls refactored, improved&] +[s5;l160;i150;poO0; Option: SetColor&] +[s5;l160;i150;poO0; Edit...Spin: RoundFromMin modifier method&] +[s5;l160;i150;poO0; ColorPopup now has button to enter the color as text&] -[s5;l160;i150;poO0;%% New features in ScatterDraw, ScatterCtrl&] -[s5;l160;i150;poO0;%% Header / Footer can now be changed using paragraph +[s5;l160;i150;poO0; New features in ScatterDraw, ScatterCtrl&] +[s5;l160;i150;poO0; Header / Footer can now be changed using paragraph properties&] -[s5;l160;i150;poO0;%% QTFDisplay now ignores text color / paper if +[s5;l160;i150;poO0; QTFDisplay now ignores text color / paper if style is not normal&] -[s22;%% TheIDE&] -[s5;l192;i150;poO0;%% Improved debugging of console applications -with MinGW&] -[s5;l192;i150;poO0;%% Debugging with GDB is now much more stable&] -[s5;l192;i150;poO0;%% [* Macro manager]&] -[s5;l192;i150;poO0;%% Explicit `"Go to line.. `"operation (in addition +[s22; TheIDE&] +[s5;l192;i150;poO0; Improved debugging of console applications with +MinGW&] +[s5;l192;i150;poO0; Debugging with GDB is now much more stable&] +[s5;l192;i150;poO0; [* Macro manager]&] +[s5;l192;i150;poO0; Explicit `"Go to line.. `"operation (in addition to Navigator)&] -[s5;l192;i150;poO0;%% BRC now supports LZ4, LZMA and Zstd compression&] -[s5;l192;i150;poO0;%% File comparison tool improved&] -[s5;l192;i150;poO0;%% Directory comparison now can show/filter new/modified/removed +[s5;l192;i150;poO0; BRC now supports LZ4, LZMA and Zstd compression&] +[s5;l192;i150;poO0; File comparison tool improved&] +[s5;l192;i150;poO0; Directory comparison now can show/filter new/modified/removed files&] -[s5;l192;i150;poO0;%% [* Dark theme] highlighting&] -[s5;l192;i150;poO0;%% Duplicate package function&] -[s5;l192;i150;poO0;%% [* `"Find all`" ]button in normal Search (finds +[s5;l192;i150;poO0; [* Dark theme] highlighting&] +[s5;l192;i150;poO0; Duplicate package function&] +[s5;l192;i150;poO0; [* `"Find all`" ]button in normal Search (finds all occurrences in current file). &] -[s5;l192;i150;poO0;%% HexView now remembers position&] -[s5;l192;i150;poO0;%% Selection can be interpreted as error list&] -[s5;l192;i150;poO0;%% TheIDE now shows the number of selected characters&] -[s5;l192;i150;poO0;%% Tab size now possible on per`-file basis&] -[s5;l192;i150;poO0;%% Repository synchronize refactored, now supports +[s5;l192;i150;poO0; HexView now remembers position&] +[s5;l192;i150;poO0; Selection can be interpreted as error list&] +[s5;l192;i150;poO0; TheIDE now shows the number of selected characters&] +[s5;l192;i150;poO0; Tab size now possible on per`-file basis&] +[s5;l192;i150;poO0; Repository synchronize refactored, now supports both svn and git&] -[s5;l192;i150;poO0;%% Layout visgen improvements&] -[s5;l192;i150;poO0;%% TheIDE now supports [* Visual Studio 2017] C`+`+ +[s5;l192;i150;poO0; Layout visgen improvements&] +[s5;l192;i150;poO0; TheIDE now supports [* Visual Studio 2017] C`+`+ compiler auto setup&] -[s5;l192;i150;poO0;%% MS build tools auto setup&] -[s22;%% 3rd party modules&] -[s5;l192;i150;poO0;%% MinGW 64 updated to GCC`-7.2.0&] -[s5;l192;i150;poO0;%% OpenSSL for VC`+`+ updated to 1.0.2l&] -[s5;l192;i150;poO0;%% plugin/lz4: lz4 updated to 1.7.3&] -[s5;l192;i150;poO0;%% plugin/bz2: updated to 1.0.6&] -[s5;l192;i150;poO0;%% plugin/jpg: updated to version 9b&] -[s5;l192;i150;poO0;%% plugin/pcre: updated to 8.41&] -[s5;l192;i150;poO0;%% plugin/png: updated to 1.2.57&] -[s5;l192;i150;poO0;%% plugin/sqlite3: updated to 3.17.9&] -[s5;l192;i150;poO0;%% plugin/z: Updated to 1.2.11&] -[s5;l192;i150;poO0;%% plugin/Eigen: Updated to version 3.3.4&] -[s0;%% &] -[s3;%% 2017.1 (rev 10804) (Jan 2017)&] -[s5;po%% This is the first release of U`+`+ that [*/ requires] C`+`+11 +[s5;l192;i150;poO0; MS build tools auto setup&] +[s22; 3rd party modules&] +[s5;l192;i150;poO0; MinGW 64 updated to GCC`-7.2.0&] +[s5;l192;i150;poO0; OpenSSL for VC`+`+ updated to 1.0.2l&] +[s5;l192;i150;poO0; plugin/lz4: lz4 updated to 1.7.3&] +[s5;l192;i150;poO0; plugin/bz2: updated to 1.0.6&] +[s5;l192;i150;poO0; plugin/jpg: updated to version 9b&] +[s5;l192;i150;poO0; plugin/pcre: updated to 8.41&] +[s5;l192;i150;poO0; plugin/png: updated to 1.2.57&] +[s5;l192;i150;poO0; plugin/sqlite3: updated to 3.17.9&] +[s5;l192;i150;poO0; plugin/z: Updated to 1.2.11&] +[s5;l192;i150;poO0; plugin/Eigen: Updated to version 3.3.4&] +[s0; &] +[s3; 2017.1 (rev 10804) (Jan 2017)&] +[s5;po This is the first release of U`+`+ that [*/ requires] C`+`+11 compatible compiler. The main focus was [* Core], adding many enhancements allowed by C`+`+11 and improved parallel programming support. We, also didn`'t forget about Android and we ported Core library on that platform.&] -[s22;%% Core&] -[s5;l160;i150;poO0;%% Original U`+`+ Callbacks are deprecated and -replaced with Function with better lambda support.&] -[s5;l160;i150;poO0;%% Begin/End methods are now renamed / deprecated +[s22; Core&] +[s5;l160;i150;poO0; Original U`+`+ Callbacks are deprecated and replaced +with Function with better lambda support.&] +[s5;l160;i150;poO0; Begin/End methods are now renamed / deprecated in favor of (standard) begin/end.&] -[s5;l160;i150;poO0;%% U`+`+ algorithms now primarily work on [/ ranges], +[s5;l160;i150;poO0; U`+`+ algorithms now primarily work on [/ ranges], besides container SubRange, ConstRange and ViewRange are now provided.&] -[s5;l160;i150;poO0;%% Initial round of optimizations for ARM architecture.&] -[s5;l160;i150;poO0;%% U`+`+ allocator optimized once again, locking +[s5;l160;i150;poO0; Initial round of optimizations for ARM architecture.&] +[s5;l160;i150;poO0; U`+`+ allocator optimized once again, locking is reduced in inter`-thread deallocations, allocator now returns blocks always 16 bytes aligned (simplifies SSE2 code).&] -[s5;l160;i150;poO0;%% General cleanup of U`+`+ algorithms, redundant +[s5;l160;i150;poO0; General cleanup of U`+`+ algorithms, redundant algorithms removed, new Count and CountIf algorithms&] -[s5;l160;i150;poO0;%% Improvements in Core/RPC&] -[s5;l160;i150;poO0;%% CoWork`::FinLock now provides `'free of charge`' +[s5;l160;i150;poO0; Improvements in Core/RPC&] +[s5;l160;i150;poO0; CoWork`::FinLock now provides `'free of charge`' mutex at the end of worker jobs.&] -[s5;l160;i150;poO0;%% CoWorkerResources class now provides `'per -worker thread`' context.&] -[s5;l160;i150;poO0;%% CoPartition algorithm useful for partitioning +[s5;l160;i150;poO0; CoWorkerResources class now provides `'per worker +thread`' context.&] +[s5;l160;i150;poO0; CoPartition algorithm useful for partitioning array for parallel programming.&] -[s5;l160;i150;poO0;%% Where it makes sense, U`+`+ algorithms now -have parallel variant.&] -[s5;l160;i150;poO0;%% String further optimized, new TrimLast, TrimStart, +[s5;l160;i150;poO0; Where it makes sense, U`+`+ algorithms now have +parallel variant.&] +[s5;l160;i150;poO0; String further optimized, new TrimLast, TrimStart, TrimEnd, FindAfter, ReverseFindAfter&] -[s5;l160;i150;poO0;%% FastCompress (currently using LZ4) for internal +[s5;l160;i150;poO0; FastCompress (currently using LZ4) for internal program compression.&] -[s5;l160;i150;poO0;%% Core can be compiled on Android and major of +[s5;l160;i150;poO0; Core can be compiled on Android and major of features are currently ported.&] -[s5;l160;i150;poO0;%% xxHash `- fast non`-cryptographic hash `- now +[s5;l160;i150;poO0; xxHash `- fast non`-cryptographic hash `- now part of Core.&] -[s5;l160;i150;poO0;%% SHA256 code now part of the Core.&] -[s5;l160;i150;poO0;%% plugin/pcre updated to the latest pcre version.&] -[s5;l160;i150;poO0;%% plugin/zstd now provides [^http`:`/`/facebook`.github`.io`/zstd`/^ z +[s5;l160;i150;poO0; SHA256 code now part of the Core.&] +[s5;l160;i150;poO0; plugin/pcre updated to the latest pcre version.&] +[s5;l160;i150;poO0; plugin/zstd now provides [^http`:`/`/facebook`.github`.io`/zstd`/^ z std] compression (with multithreaded option).&] -[s5;l160;i150;poO0;%% plugin/lz4 now can multithreaded.&] -[s22;%% GUI programming `& graphics&] -[s5;l160;i150;poO0;%% PdfDraw and RichText now support PDF signatures.&] -[s5;l160;i150;poO0;%% RichText now can change header/footer within +[s5;l160;i150;poO0; plugin/lz4 now can multithreaded.&] +[s22; GUI programming `& graphics&] +[s5;l160;i150;poO0; PdfDraw and RichText now support PDF signatures.&] +[s5;l160;i150;poO0; RichText now can change header/footer within document.&] -[s5;l160;i150;poO0;%% ArrayCtrl got SetLineColor and GetCellRect -methods.&] -[s22;%% TheIDE&] -[s5;l160;i150;poO0;%% Comments now can be spell checked and there -is comment word wrap and reformatting operation.&] -[s5;l160;i150;poO0;%% New functions / icons that search the web (launch +[s5;l160;i150;poO0; ArrayCtrl got SetLineColor and GetCellRect methods.&] +[s22; TheIDE&] +[s5;l160;i150;poO0; Comments now can be spell checked and there is +comment word wrap and reformatting operation.&] +[s5;l160;i150;poO0; New functions / icons that search the web (launch the browser) for text selected or current identifier.&] -[s5;l160;i150;poO0;%% Optimal compilation mode is removed as confusing, +[s5;l160;i150;poO0; Optimal compilation mode is removed as confusing, it is now always either debug or release mode, release mode being configured for speed.&] -[s5;l160;i150;poO0;%% When comparing files, differences within single +[s5;l160;i150;poO0; When comparing files, differences within single lines are now shown.&] -[s5;l160;i150;poO0;%% Most U`+`+ designers now support drag`&drop -to reorganize lists.&] -[s5;l160;i150;poO0;%% Find File window was remastered.&] -[s5;l160;i150;poO0;%% New dialog for creating package file.&] -[s5;l160;i150;poO0;%% Android application can be directly launch -on emulator from TheIDE.&] -[s5;l160;i150;poO0;%% Clang is now default compiler for native Android +[s5;l160;i150;poO0; Most U`+`+ designers now support drag`&drop to +reorganize lists.&] +[s5;l160;i150;poO0; Find File window was remastered.&] +[s5;l160;i150;poO0; New dialog for creating package file.&] +[s5;l160;i150;poO0; Android application can be directly launch on +emulator from TheIDE.&] +[s5;l160;i150;poO0; Clang is now default compiler for native Android applications.&] -[s5;l160;i150;poO0;%% C`+`+14 is now default standard for all Android +[s5;l160;i150;poO0; C`+`+14 is now default standard for all Android builds.&] -[s5;l160;i150;poO0;%% Various android builder improvements.&] -[s22;%% ESC&] -[s5;l160;i150;poO0;%% New math functions like sin, cos, tg, pow etc.&] -[s5;l160;i150;poO0;%% New replace in string function.&] -[s22;%% General&] -[s5;l160;i150;poO0;%% Significantly improved the process of building +[s5;l160;i150;poO0; Various android builder improvements.&] +[s22; ESC&] +[s5;l160;i150;poO0; New math functions like sin, cos, tg, pow etc.&] +[s5;l160;i150;poO0; New replace in string function.&] +[s22; General&] +[s5;l160;i150;poO0; Significantly improved the process of building TheIDE and UMK from tarball (POSIX environment). Compilation on multiple cores is possible with `"`-j`" option.&] -[s5;l160;i150;poO0;%% Documentation improvements.&] -[s5;l160;i150;poO0;%% Bug fixes in various areas.&] -[s0;%% &] -[s3;%% 2015.2 (rev 9251)[3 (Dec 2015)]&] -[s5;po%% The main focus of this release was [^topic`:`/`/ide`/app`/Assist`$en`-us^ C`+`+ - parser and Assist`+`+ features]. and [^topic`:`/`/ide`/app`/AndroidBuilder`$en`-us^ A +[s5;l160;i150;poO0; Documentation improvements.&] +[s5;l160;i150;poO0; Bug fixes in various areas.&] +[s0; &] +[s3; 2015.2 (rev 9251)[3 (Dec 2015)]&] +[s5;po The main focus of this release was [^topic`:`/`/ide`/app`/Assist`$en`-us^ C`+`+ +parser and Assist`+`+ features]. and [^topic`:`/`/ide`/app`/AndroidBuilder`$en`-us^ A ndroid applications builder] in TheIDE (library does not yet support Android though).&] -[s22;%% Core&] -[s5;l160;i150;poO0;%% Improved [* C`+`+11] support.&] -[s5;l160;i150;poO0;%% Leap second of 2015 added to time routines.&] -[s22;%% GUI programming `& graphics&] -[s5;l160;i150;poO0;%% Improved support of UHD displays.&] -[s5;l160;i150;poO0;%% New QTF command [*@5 `{`{`*] is shortcut for -[*@5 `{`{`~0/0] to simplify using invisible tables for organizing -text.&] -[s5;l160;i150;poO0;%% PdfDraw now supports urls (e.g. when converting +[s22; Core&] +[s5;l160;i150;poO0; Improved [* C`+`+11] support.&] +[s5;l160;i150;poO0; Leap second of 2015 added to time routines.&] +[s22; GUI programming `& graphics&] +[s5;l160;i150;poO0; Improved support of UHD displays.&] +[s5;l160;i150;poO0; New QTF command [*@5 `{`{`*] is shortcut for [*@5 `{`{`~0/0] +to simplify using invisible tables for organizing text.&] +[s5;l160;i150;poO0; PdfDraw now supports urls (e.g. when converting QTF/RichText to PDF).&] -[s5;l160;i150;poO0;%% RichText/QTF now support round borders for -table cells.&] -[s5;l160;i150;poO0;%% ScatterCtrl: new features.&] -[s22;%% TheIDE&] -[s5;l160;i150;poO0;%% Assist`+`+ and C`+`+ parser now support C`+`+11 +[s5;l160;i150;poO0; RichText/QTF now support round borders for table +cells.&] +[s5;l160;i150;poO0; ScatterCtrl: new features.&] +[s22; TheIDE&] +[s5;l160;i150;poO0; Assist`+`+ and C`+`+ parser now support C`+`+11 and non`-project headers, parsing ability is generally improved.&] -[s5;l160;i150;poO0;%% Android builder.&] -[s5;l160;i150;poO0;%% UTF16 support, UTF BOM autodetection.&] -[s5;l160;i150;poO0;%% Rename/Delete package functions.&] -[s5;l160;i150;poO0;%% Layout designer has new code generation features +[s5;l160;i150;poO0; Android builder.&] +[s5;l160;i150;poO0; UTF16 support, UTF BOM autodetection.&] +[s5;l160;i150;poO0; Rename/Delete package functions.&] +[s5;l160;i150;poO0; Layout designer has new code generation features and can jump to C`+`+ using the layout.&] -[s5;l160;i150;poO0;%% Editor now [* truncates ]files longer than[* 200MB +[s5;l160;i150;poO0; Editor now [* truncates ]files longer than[* 200MB / 1GB] (32/64 bits ide) while loading, makes them read`-only.&] -[s5;l160;i150;poO0;%% Editor now shows [* misplaced whitespaces] in -source files.&] -[s5;l160;i150;poO0;%% TheIDE now detects binary files and provides +[s5;l160;i150;poO0; Editor now shows [* misplaced whitespaces] in source +files.&] +[s5;l160;i150;poO0; TheIDE now detects binary files and provides binary viewer.&] -[s5;l160;i150;poO0;%% Toolbar has new navigation icons and icons -to switch editation mode (text/designer/binary).&] -[s5;l160;i150;poO0;%% Legacy [* GDB]`-backended [* debugger ]was refurbished +[s5;l160;i150;poO0; Toolbar has new navigation icons and icons to +switch editation mode (text/designer/binary).&] +[s5;l160;i150;poO0; Legacy [* GDB]`-backended [* debugger ]was refurbished and became `'Standard`' debugger for GCC.&] -[s5;l160;i150;poO0;%% Icon designer now shows images as files icons +[s5;l160;i150;poO0; Icon designer now shows images as files icons when inserting image files.&] -[s22;%% Win32 releases&] -[s5;l160;i150;poO0;%% Win32 now does not come as .exe installer, -but simple .7z archive, which acts as `"[* portable]`" installation. +[s22; Win32 releases&] +[s5;l160;i150;poO0; Win32 now does not come as .exe installer, but +simple .7z archive, which acts as `"[* portable]`" installation. Nothing is written to the registry, nothing needs to be installed, simply running `"theide.exe`" setups everything needed. (theide.exe is 64bit executable. For those unlucky to still run 32`-bit os, there is theide32.exe).&] -[s5;l160;i150;poO0;%% There is once again `'[* mingw]`' variant which +[s5;l160;i150;poO0; There is once again `'[* mingw]`' variant which is coupled with TDM64 release of mingw`-w64.&] -[s0;*_4%% &] -[s3;%% 2015.1 (rev 8227)[3 (Mar 2015)]&] -[s22;%% Core&] -[s5;l160;i150;poO0;%% U`+`+ abandoned `"default pick`" semantics -for containers. The transfer semantics now has to be specified -explicitly, either as `'[* pick]`' or `'[* clone]`' (this is enforced -in C`+`+11 mode, in legacy mode old behaviour is maintained and -pick/clone are optional).&] -[s5;l160;i150;poO0;%% New containers, based on fast`-insertion arrays: +[s0;*_4 &] +[s3; 2015.1 (rev 8227)[3 (Mar 2015)]&] +[s22; Core&] +[s5;l160;i150;poO0; U`+`+ abandoned `"default pick`" semantics for +containers. The transfer semantics now has to be specified explicitly, +either as `'[* pick]`' or `'[* clone]`' (this is enforced in C`+`+11 +mode, in legacy mode old behaviour is maintained and pick/clone +are optional).&] +[s5;l160;i150;poO0; New containers, based on fast`-insertion arrays: [* InVector, InArray, SortedIndex, SortedVectorMap, SortedArrayMap]. SortedIndex, SortedVectorMap and SortedArrayMap provide binary searches, while maintaining random access to the array, with performance comparable to binary tree based containers (e.g. std`::map).&] -[s5;l160;i150;poO0;%% New [* Core/POP3] package `- support for retrieving +[s5;l160;i150;poO0; New [* Core/POP3] package `- support for retrieving emails form POP3 servers.&] -[s5;l160;i150;poO0;%% Initial round of [* C`+`+11] support (lambda -callbacks, minor fixes)&] -[s5;l160;i150;poO0;%% A set of small utility functions [* findarg], -[* decode], [* min]/[* max] now supporting more arguments. [* SplitTo -]and [* Merge] for splitting/merging strings.&] -[s5;l160;i150;poO0;%% InFilterStream, OutFilterStream classes that +[s5;l160;i150;poO0; Initial round of [* C`+`+11] support (lambda callbacks, +minor fixes)&] +[s5;l160;i150;poO0; A set of small utility functions [* findarg], [* decode], +[* min]/[* max] now supporting more arguments. [* SplitTo ]and [* Merge] +for splitting/merging strings.&] +[s5;l160;i150;poO0; InFilterStream, OutFilterStream classes that can provide some sort of processing (e.g. compression) to regular streams.&] -[s5;l160;i150;poO0;%% New Date related functions [* EasterDay], [* GetMonths], +[s5;l160;i150;poO0; New Date related functions [* EasterDay], [* GetMonths], [* GetWeek], [* GetWeekDate].&] -[s5;l160;i150;poO0;%% MIME / fileextension mapping functions [* FileExtToMIME +[s5;l160;i150;poO0; MIME / fileextension mapping functions [* FileExtToMIME ]and [* MIMEToFileExt].&] -[s5;l160;i150;poO0;%% Some [* ARMv7] related optimization (unaligned +[s5;l160;i150;poO0; Some [* ARMv7] related optimization (unaligned access, byte swaps).&] -[s5;l160;i150;poO0;%% [* SpinLock] class.&] -[s5;l160;i150;poO0;%% Stream optimization methods [* GetPtr], [* PutPtr], +[s5;l160;i150;poO0; [* SpinLock] class.&] +[s5;l160;i150;poO0; Stream optimization methods [* GetPtr], [* PutPtr], [* GetSzPtr] provide safe access to Stream internal buffer.&] -[s5;l160;i150;poO0;%% String/WString`::[* Find](const String`&) significantly +[s5;l160;i150;poO0; String/WString`::[* Find](const String`&) significantly speed optimized.&] -[s5;l160;i150;poO0;%% Value invalid casts now throwing exception -ValueTypeError instead of panic.&] -[s5;l160;i150;poO0;%% [* WebSocket] class.&] -[s5;l160;i150;poO0;%% `[[* Stable]`][* SortBy]`[[* Keys]`|[* Values]`] functions +[s5;l160;i150;poO0; Value invalid casts now throwing exception ValueTypeError +instead of panic.&] +[s5;l160;i150;poO0; [* WebSocket] class.&] +[s5;l160;i150;poO0; `[[* Stable]`][* SortBy]`[[* Keys]`|[* Values]`] functions for sorting VectorMap, ArrayMap.&] -[s5;l160;i150;poO0;%% [* plugin/lz4] `- adapted fast compression library&] -[s5;l160;i150;poO0;%% [* plugin/lzma] `- adapted high ratio compression +[s5;l160;i150;poO0; [* plugin/lz4] `- adapted fast compression library&] +[s5;l160;i150;poO0; [* plugin/lzma] `- adapted high ratio compression library&] -[s5;l160;i150;poO0;%% [* plugin/glew] `- popular OpenGL utility library +[s5;l160;i150;poO0; [* plugin/glew] `- popular OpenGL utility library adapted as package&] -[s22;%% GUI programming `& graphics&] -[s5;l160;i150;poO0;%% [* GTK backend] (U`+`+ now using Gtk for host -platform interface)&] -[s5;l160;i150;poO0;%% [* EditDateDlg], [* EditNumber] simple function -for entering single value (equivalent to EditText)&] -[s5;l160;i150;poO0;%% ArrayCtrl new methods to add/retrieve ValueMaps +[s22; GUI programming `& graphics&] +[s5;l160;i150;poO0; [* GTK backend] (U`+`+ now using Gtk for host platform +interface)&] +[s5;l160;i150;poO0; [* EditDateDlg], [* EditNumber] simple function for +entering single value (equivalent to EditText)&] +[s5;l160;i150;poO0; ArrayCtrl new methods to add/retrieve ValueMaps and ValueArrays, new [* CreateCtrl] method.&] -[s5;l160;i150;poO0;%% LineEdit heavily optimized to be able to work +[s5;l160;i150;poO0; LineEdit heavily optimized to be able to work with huge files (>100MB).&] -[s5;l160;i150;poO0;%% LineEdit now able to work with [* rectangular -selections.]&] -[s5;l160;i150;poO0;%% [* DDARasterizer] and [* SDraw ]are new tools providing +[s5;l160;i150;poO0; LineEdit now able to work with [* rectangular selections.]&] +[s5;l160;i150;poO0; [* DDARasterizer] and [* SDraw ]are new tools providing Draw with minimal host platform support (only two operations, paint Image and paint colored rectangle, are required).&] -[s5;l160;i150;poO0;%% Image rescaling now supports varios filters, +[s5;l160;i150;poO0; Image rescaling now supports varios filters, like bicubic or lanczos.&] -[s5;l160;i150;poO0;%% AttrText is now rich comparable Value: it is -now possible to sort ArrayCtrl by AttrText filled columns.&] -[s5;l160;i150;poO0;%% [* GLDraw] `- Draw implemented using OpenGL (ES).&] -[s5;l160;i150;poO0;%% [* SVG parser] (to Painter interface).&] -[s5;l160;i150;poO0;%% [* plugin/ppm] `- trivial image format support.&] -[s5;l160;i150;poO0;%% [* RichText/RichEdit] header/footer support, -QTF now using BASE64 for binary data (instead of 7`-bit raw encoding).&] -[s5;l160;i150;poO0;%% [* Turtle ]is another web framework of U`+`+ -`- this one allows to convert existing GUI applications into -Web application: simple Java Script terminal connects to server -where GUI application runs.&] -[s5;l160;i150;poO0;%% [* ScatterDraw/ScatterCtrl] `- Added legend table, +[s5;l160;i150;poO0; AttrText is now rich comparable Value: it is now +possible to sort ArrayCtrl by AttrText filled columns.&] +[s5;l160;i150;poO0; [* GLDraw] `- Draw implemented using OpenGL (ES).&] +[s5;l160;i150;poO0; [* SVG parser] (to Painter interface).&] +[s5;l160;i150;poO0; [* plugin/ppm] `- trivial image format support.&] +[s5;l160;i150;poO0; [* RichText/RichEdit] header/footer support, QTF +now using BASE64 for binary data (instead of 7`-bit raw encoding).&] +[s5;l160;i150;poO0; [* Turtle ]is another web framework of U`+`+ `- +this one allows to convert existing GUI applications into Web +application: simple Java Script terminal connects to server where +GUI application runs.&] +[s5;l160;i150;poO0; [* ScatterDraw/ScatterCtrl] `- Added legend table, linked scroll controls, units, data fitting to equations, run time user equations, zoom window, improved text drawing, huge datasets handling and key/mouse handling.&] -[s5;l160;i150;poO0;%% X11 backend: Multimonitor support, removed flickering +[s5;l160;i150;poO0; X11 backend: Multimonitor support, removed flickering when opening window&] -[s5;l160;i150;poO0;%% [* Error`[OK`|Cancel`|Yes`|No...`]] `- new Prompt +[s5;l160;i150;poO0; [* Error`[OK`|Cancel`|Yes`|No...`]] `- new Prompt variants with Error decorations&] -[s22;%% Sql&] -[s5;l160;i150;poO0;%% New variants of Insert/Select/Update commands +[s22; Sql&] +[s5;l160;i150;poO0; New variants of Insert/Select/Update commands (now roughly supporting all important combinations of SQL standard).&] -[s5;l160;i150;poO0;%% SqlSetFrom functions creates a SqlSet from -any container.&] -[s5;l160;i150;poO0;%% S`_ structures refactored, now provide an improved +[s5;l160;i150;poO0; SqlSetFrom functions creates a SqlSet from any +container.&] +[s5;l160;i150;poO0; S`_ structures refactored, now provide an improved interface with better introspection.&] -[s5;l160;i150;poO0;%% Sql console redesigned.&] -[s22;%% TheIDE&] -[s5;l160;i150;poO0;%% Win64 PDB (Visual C`+`+ compiled code) debugger.&] -[s5;l160;i150;poO0;%% Find/replace GUI refactored, added support -for incremental finds, added regexp support.&] -[s5;l160;i150;poO0;%% Block replace now has grep`-like feature to -remove matching/non`-matching lines (instead of replacing matches)&] -[s5;l160;i150;poO0;%% Case insensitive replace now has `"mimic case`" +[s5;l160;i150;poO0; Sql console redesigned.&] +[s22; TheIDE&] +[s5;l160;i150;poO0; Win64 PDB (Visual C`+`+ compiled code) debugger.&] +[s5;l160;i150;poO0; Find/replace GUI refactored, added support for +incremental finds, added regexp support.&] +[s5;l160;i150;poO0; Block replace now has grep`-like feature to remove +matching/non`-matching lines (instead of replacing matches)&] +[s5;l160;i150;poO0; Case insensitive replace now has `"mimic case`" option (mimics the case of first and next characters, so replacing `"vector`" `-> `"array`", when match is `"Vector`", result is `"Array`").&] -[s5;l160;i150;poO0;%% Compilation errors now parsed and displayed -nicely.&] -[s5;l160;i150;poO0;%% Assist`+`+ context goto (Alt`+J) now supports +[s5;l160;i150;poO0; Compilation errors now parsed and displayed nicely.&] +[s5;l160;i150;poO0; Assist`+`+ context goto (Alt`+J) now supports local variables (goes to declaration).&] -[s5;l160;i150;poO0;%% Layout/Icon designers now have find Search -filter.&] -[s5;l160;i150;poO0;%% Ide now displays long numbers with thousands +[s5;l160;i150;poO0; Layout/Icon designers now have find Search filter.&] +[s5;l160;i150;poO0; Ide now displays long numbers with thousands separators.&] -[s5;l160;i150;poO0;%% Syntax highlighting refactored, added highlighting +[s5;l160;i150;poO0; Syntax highlighting refactored, added highlighting of HTML, XML, .log files, .xsd files, .diff files, C`+`+11 keywords highlighted, TODO and FIXME comments highlighted&] -[s5;l160;i150;poO0;%% Directory comparison tool.&] -[s5;l160;i150;poO0;%% Simple Json/XML viewers.&] -[s5;l160;i150;poO0;%% Comment/Uncomment block.&] -[s5;l160;i150;poO0;%% Selected identifier is now highlighted in all +[s5;l160;i150;poO0; Directory comparison tool.&] +[s5;l160;i150;poO0; Simple Json/XML viewers.&] +[s5;l160;i150;poO0; Comment/Uncomment block.&] +[s5;l160;i150;poO0; Selected identifier is now highlighted in all the text.&] -[s5;l160;i150;poO0;%% Current line is highlighted with faint lines.&] -[s5;l160;i150;poO0;%% Precompiled headers support for release mode +[s5;l160;i150;poO0; Current line is highlighted with faint lines.&] +[s5;l160;i150;poO0; Precompiled headers support for release mode (BLITZ still far better for debug builds).&] -[s5;l160;i150;poO0;%% Insert file path (plain or as CString) function.&] -[s5;l160;i150;poO0;%% Layout code generator now can place double`-quotes +[s5;l160;i150;poO0; Insert file path (plain or as CString) function.&] +[s5;l160;i150;poO0; Layout code generator now can place double`-quotes around elements, generate handlers for buttons.&] -[s5;l160;i150;poO0;%% Layout designer now can sort widgets based -on their graphical position.&] -[s5;l160;i150;poO0;%% Code navigator is completely redesigned.&] -[s5;l160;i150;poO0;%% Icon designer supports various rescaling filters +[s5;l160;i150;poO0; Layout designer now can sort widgets based on +their graphical position.&] +[s5;l160;i150;poO0; Code navigator is completely redesigned.&] +[s5;l160;i150;poO0; Icon designer supports various rescaling filters and new icon smoothing function.&] -[s5;l160;i150;poO0;%% Ide now has line duplicate feature (CTRL`+D).&] -[s0;%% &] -[s3;%% 5485[3 (Oct 2012)]&] -[s0;3%% &] -[s0;%% The focus of this release was server programming. The main -new feature is `"[* Skylark]`", lean and mean [^http`:`/`/www`.ultimatepp`.org`/srcdoc`$Skylark`$Tutorial`$en`-us`.html^ U +[s5;l160;i150;poO0; Ide now has line duplicate feature (CTRL`+D).&] +[s0; &] +[s3; 5485[3 (Oct 2012)]&] +[s0;3 &] +[s0; The focus of this release was server programming. The main new +feature is `"[* Skylark]`", lean and mean [^http`:`/`/www`.ultimatepp`.org`/srcdoc`$Skylark`$Tutorial`$en`-us`.html^ U `+`+ based web development framework].&] -[s0;%% &] -[s0;%% [* Core]&] -[s0;%% &] -[s0;i150;O0;%% String class has been further optimized for improved +[s0; &] +[s0; [* Core]&] +[s0; &] +[s0;i150;O0; String class has been further optimized for improved Cat performance.&] -[s0;i150;O0;%% Id class was refactored to better support multithreaded +[s0;i150;O0; Id class was refactored to better support multithreaded programming.&] -[s0;i150;O0;%% STATIC`_ASSERT introduced for compile`-time checks.&] -[s0;i150;O0;%% TCP/IP and HTTP was refactored and integrated into -Core, providing new TcpSocket, IpAddrInfo, HttpHeader and HttpRequest +[s0;i150;O0; STATIC`_ASSERT introduced for compile`-time checks.&] +[s0;i150;O0; TCP/IP and HTTP was refactored and integrated into Core, +providing new TcpSocket, IpAddrInfo, HttpHeader and HttpRequest classed (effectively obsoleting Web package).&] -[s0;i150;O0;%% Value was refactored and optimized, now using small +[s0;i150;O0; Value was refactored and optimized, now using small value optimization technique.&] -[s0;i150;O0;%% Value got Xmlize (conversion to/from XML) and Jsonize +[s0;i150;O0; Value got Xmlize (conversion to/from XML) and Jsonize (conversion to/from JSON) support.&] -[s0;i150;O0;%% Date now has operator`+`+/`-`-.&] -[s0;i150;O0;%% Exit is now equivalent of C exit function, implemented +[s0;i150;O0; Date now has operator`+`+/`-`-.&] +[s0;i150;O0; Exit is now equivalent of C exit function, implemented using exception trow to `*`_APP`_MAIN and C`+`+ friendly.&] -[s0;i150;O0;%% Thread now has AtExit support.&] -[s0;i150;O0;%% .ini parameters now can be optionally encapsulated -using INI`_`* helpers.&] -[s0;i150;O0;%% Sort algorithm was refactored, works about 10% faster.&] -[s0;i150;O0;%% LOGHEX and DUMPHEX logging macros provided for logging +[s0;i150;O0; Thread now has AtExit support.&] +[s0;i150;O0; .ini parameters now can be optionally encapsulated using +INI`_`* helpers.&] +[s0;i150;O0; Sort algorithm was refactored, works about 10% faster.&] +[s0;i150;O0; LOGHEX and DUMPHEX logging macros provided for logging Strings in hexadecimal form.&] -[s0;i150;O0;%% LoadFromJsonFile and StoreToJsonFile jsonize object +[s0;i150;O0; LoadFromJsonFile and StoreToJsonFile jsonize object from/to files.&] -[s0;%% &] -[s0;%% &] -[s0;%% [* Sql]&] -[s0;%% &] -[s0;i150;O0;%% `'Of`' method, used to qualify SQL column names, now +[s0; &] +[s0; &] +[s0; [* Sql]&] +[s0; &] +[s0;i150;O0; `'Of`' method, used to qualify SQL column names, now has new alternative notation using operator().&] -[s0;i150;O0;%% Schema files information is now accessible application +[s0;i150;O0; Schema files information is now accessible application providing a form of database schema introspection.&] -[s0;i150;O0;%% JoinRef method of Select provides automatic join where +[s0;i150;O0; JoinRef method of Select provides automatic join where join condition is synthetized by framework based on schema introspection.&] -[s0;i150;O0;%% SqlCtrls now support automated mode based on schema +[s0;i150;O0; SqlCtrls now support automated mode based on schema introspection.&] -[s0;i150;O0;%% SqlSession now has ThrowOnError option, when active +[s0;i150;O0; SqlSession now has ThrowOnError option, when active all SQL errors throw SqlError exception.&] -[s0;i150;O0;%% Sql: Sql now supports fetching ValueMap of row (using +[s0;i150;O0; Sql: Sql now supports fetching ValueMap of row (using Fetch variant or GetRowMap after Fetch).&] -[s0;i150;O0;%% MassInsert now has `"remove`" option to remove rows +[s0;i150;O0; MassInsert now has `"remove`" option to remove rows inserted before inserting, NoUseTransaction option and is using RDBM specific SQL syntax (instead generic UNION ALL trick) when possible.&] -[s0;i150;O0;%% Secondary SQLR default session intended for `'read`-only`' +[s0;i150;O0; Secondary SQLR default session intended for `'read`-only`' sessions.&] -[s0;i150;O0;%% Default sessions SQL and SQLR now can be per`-thread +[s0;i150;O0; Default sessions SQL and SQLR now can be per`-thread (useful for multithreaded server applications).&] -[s0;i150;O0;%% Columns and table names now can be optionally quoted +[s0;i150;O0; Columns and table names now can be optionally quoted (new mode).&] -[s0;i150;O0;%% Sql: SqlLoadTable and SqlLoadColumn helper function -can read whole tables into C`+`+ VectorMaps.&] -[s0;i150;O0;%% New Sqls`::operator`^ fetches single row from select +[s0;i150;O0; Sql: SqlLoadTable and SqlLoadColumn helper function can +read whole tables into C`+`+ VectorMaps.&] +[s0;i150;O0; New Sqls`::operator`^ fetches single row from select and returns it as ValueMap.&] -[s0;%% &] -[s0;%% &] -[s0;%% [* RichText, RichEdit]&] -[s0;i150;O0;%% Paragraph ruler now can have dotted or dashed styles&] -[s0;%% &] -[s0;%% [* CtrlLib]&] -[s0;%% &] -[s0;i150;O0;%% EditField now has WhenPasteFilter that can be used -to change pasted clipboard text before inserting it.&] -[s0;i150;O0;%% FileSel in Win32 is now using separate thread to lazy`-load +[s0; &] +[s0; &] +[s0; [* RichText, RichEdit]&] +[s0;i150;O0; Paragraph ruler now can have dotted or dashed styles&] +[s0; &] +[s0; [* CtrlLib]&] +[s0; &] +[s0;i150;O0; EditField now has WhenPasteFilter that can be used to +change pasted clipboard text before inserting it.&] +[s0;i150;O0; FileSel in Win32 is now using separate thread to lazy`-load icons.&] -[s0;i150;O0;%% ColorPopup checks clipboard and when it founds a text +[s0;i150;O0; ColorPopup checks clipboard and when it founds a text resembling color definition (like #12aa33 or 123 55 6), adds this color to predefined colors in selection.&] -[s0;%% &] -[s0;%% [* ide]&] -[s0;*%% &] -[s0;i150;O0;%% New, vastly improved GDB frontend.&] -[s0;i150;O0;%% Startup times should be significantly improved.&] -[s0;i150;O0;%% C#, JavaScript and css syntax highlighting.&] -[s0;i150;O0;%% Ide now can view .png, .jpg, .gif and .bmp files and +[s0; &] +[s0; [* ide]&] +[s0;* &] +[s0;i150;O0; New, vastly improved GDB frontend.&] +[s0;i150;O0; Startup times should be significantly improved.&] +[s0;i150;O0; C#, JavaScript and css syntax highlighting.&] +[s0;i150;O0; Ide now can view .png, .jpg, .gif and .bmp files and even edit smaller .png files.&] -[s0;i150;O0;%% New save file on window deactivation option is helpful +[s0;i150;O0; New save file on window deactivation option is helpful when editing scripts or web templates `- no need to save file when going to another window to test.&] -[s0;i150;O0;%% Insert clipboard as C string, convert text to C string +[s0;i150;O0; Insert clipboard as C string, convert text to C string functions.&] -[s0;i150;O0;%% New find in files dialog option to filter files according +[s0;i150;O0; New find in files dialog option to filter files according to their `'read only`' status.&] -[s0;4%% &] -[s3;%% 4193[3 (24 Nov 2011)]&] -[s0;*%% &] -[s0;%% `"Rainbow`" technology decouples U`+`+ GUI from host platform. +[s0;4 &] +[s3; 4193[3 (24 Nov 2011)]&] +[s0;* &] +[s0; `"Rainbow`" technology decouples U`+`+ GUI from host platform. It is now possible to develop new GUI&] -[s0;%% implementation without changing core U`+`+ files. `"Framebuffer`" +[s0; implementation without changing core U`+`+ files. `"Framebuffer`" package uses Rainbow to implement&] -[s0;%% GUI for trivial RGBA framebuffer (with keyboard and mouse -inputs).&] -[s0;%% &] -[s0;%% New command line utility `"umk`" `- GUI independent, U`+`+ -package builder: umk.&] -[s0;%% &] -[s0;%% Docking package was adopted to main source tree.&] -[s0;*3%% &] -[s0;%% [* TheIDE]&] -[s0;i150;O0;%% Support for UTF8`-BOM encoding.&] -[s0;i150;O0;%% Layout files are now syntax highlighted, Assist`+`+ +[s0; GUI for trivial RGBA framebuffer (with keyboard and mouse inputs).&] +[s0; &] +[s0; New command line utility `"umk`" `- GUI independent, U`+`+ package +builder: umk.&] +[s0; &] +[s0; Docking package was adopted to main source tree.&] +[s0;*3 &] +[s0; [* TheIDE]&] +[s0;i150;O0; Support for UTF8`-BOM encoding.&] +[s0;i150;O0; Layout files are now syntax highlighted, Assist`+`+ now knows correct line position info.&] -[s0;i150;O0;%% Database schema files (.sch) are now syntax highlighted. +[s0;i150;O0; Database schema files (.sch) are now syntax highlighted. Assist`+`+ now knows to correct line position info.&] -[s0;i150;O0;%% Ide now has minimal Objective C and C`+`+/CLR support.&] -[s0;i150;O0;%% New function to export documentation to html or pdf.&] -[s0;i150;O0;%% Layout designer now has `'struct`' option in code -generator&] -[s0;i150;O0;%% Image (.iml) designer now can import (insert) whole +[s0;i150;O0; Ide now has minimal Objective C and C`+`+/CLR support.&] +[s0;i150;O0; New function to export documentation to html or pdf.&] +[s0;i150;O0; Layout designer now has `'struct`' option in code generator&] +[s0;i150;O0; Image (.iml) designer now can import (insert) whole another .iml and also export .iml to png files.&] -[s0;i150;O0;%% There is now Assist`+`+ for #include.&] -[s0;i150;O0;%% InsertColor function now supports QTF colors.&] -[s0;i150;O0;%% Local menu on package file items now has `"Open file +[s0;i150;O0; There is now Assist`+`+ for #include.&] +[s0;i150;O0; InsertColor function now supports QTF colors.&] +[s0;i150;O0; Local menu on package file items now has `"Open file directory`" item.&] -[s0;*%% &] -[s0;%% [* Library]&] -[s0;*%% &] -[s0;%% Core&] -[s0;i150;O0;%% U`+`+ now has Value compatible Complex type.&] -[s0;i150;O0;%% CParser has new Unicode Escape option to understand +[s0;* &] +[s0; [* Library]&] +[s0;* &] +[s0; Core&] +[s0;i150;O0; U`+`+ now has Value compatible Complex type.&] +[s0;i150;O0; CParser has new Unicode Escape option to understand `"`\u`" escape codes (as in JavaScript).&] -[s0;i150;O0;%% ValueArray has now Insert, Append and Remove methods.&] -[s0;i150;O0;%% ValueMap has now Set(key, value) method.&] -[s0;i150;O0;%% Value now has operator`[`] (key) and operator`[`] -(index) methods to directly access contained ValueMap and ValueArray +[s0;i150;O0; ValueArray has now Insert, Append and Remove methods.&] +[s0;i150;O0; ValueMap has now Set(key, value) method.&] +[s0;i150;O0; Value now has operator`[`] (key) and operator`[`] (index) +methods to directly access contained ValueMap and ValueArray elements.&] -[s0;i150;O0;%% double formatting (Format, Convert) now has support +[s0;i150;O0; double formatting (Format, Convert) now has support to easily replace decimal point with `',`' character.&] -[s0;i150;O0;%% Core now has JSON (JavaScript Object Notation) parsing +[s0;i150;O0; Core now has JSON (JavaScript Object Notation) parsing and creation support.&] -[s0;i150;O0;%% String now has GetCharCount() that is able to return +[s0;i150;O0; String now has GetCharCount() that is able to return correct number of characters (code`-points) in String even if encoding is UTF`-8.&] -[s0;%% &] -[s0;%% CtrlLib and CtrlCore (GUI library)&] -[s0;i150;O0;%% ArrayCtrl now has AsText, SetClipboard, AsQtf and -AsCsv methods.&] -[s0;i150;O0;%% EditField now supports limited text highlighting.&] -[s0;i150;O0;%% New SetLayout`_`[layout name`] template function generated +[s0; &] +[s0; CtrlLib and CtrlCore (GUI library)&] +[s0;i150;O0; ArrayCtrl now has AsText, SetClipboard, AsQtf and AsCsv +methods.&] +[s0;i150;O0; EditField now supports limited text highlighting.&] +[s0;i150;O0; New SetLayout`_`[layout name`] template function generated from .lay (used to change compatible layout).&] -[s0;%% &] -[s0;%% Draw/PdfDraw/Report (graphical output)&] -[s0;i150;O0;%% Draw/PdfDraw/Report got minimalistic PDF/A support.&] -[s0;i150;O0;%% AttrText now has Bold/Italic/Underline/Strikeout methods.&] -[s0;i150;O0;%% New QtfReport for simplified reporting of Qtf.&] -[s0;%% &] -[s0;%% Other library changes&] -[s0;i150;O0;%% In SQL trace log, questionmark parameter placeholders +[s0; &] +[s0; Draw/PdfDraw/Report (graphical output)&] +[s0;i150;O0; Draw/PdfDraw/Report got minimalistic PDF/A support.&] +[s0;i150;O0; AttrText now has Bold/Italic/Underline/Strikeout methods.&] +[s0;i150;O0; New QtfReport for simplified reporting of Qtf.&] +[s0; &] +[s0; Other library changes&] +[s0;i150;O0; In SQL trace log, questionmark parameter placeholders are now replaced with actual parameters.&] -[s0;i150;O0;%% plugin`\Sqlite3 is upgraded to 3.7.8.&] -[s0;i150;O0;%% plugin/tif is upgraded to version 1.43.&] -[s0;i150;O0;%% plugin/jpg now supports EXIM image orientation metadata.&] -[s0;i150;O0;%% New plugin/wincert package supports basic Win32 certificate +[s0;i150;O0; plugin`\Sqlite3 is upgraded to 3.7.8.&] +[s0;i150;O0; plugin/tif is upgraded to version 1.43.&] +[s0;i150;O0; plugin/jpg now supports EXIM image orientation metadata.&] +[s0;i150;O0; New plugin/wincert package supports basic Win32 certificate manipulation and PDF digital signing.&] -[s0;#i150;O0;%% HttpClient now supports PUT method.&] -[s0;3%% &] -[s3;%% 3211[3 (16 Feb 2011)]&] -[s0;*3%% &] -[s0;%% [* TheIDE]&] -[s0;i150;O0;%% SSE2 as Option in main config, templates now include +[s0;#i150;O0; HttpClient now supports PUT method.&] +[s0;3 &] +[s3; 3211[3 (16 Feb 2011)]&] +[s0;*3 &] +[s0; [* TheIDE]&] +[s0;i150;O0; SSE2 as Option in main config, templates now include SSE2 as default (RM #9).&] -[s0;i150;O0;%% new function `- convert selection to ASCII.&] -[s0;i150;O0;%% Main package configuration editor shows structured -flags accepted by packages.&] -[s0;i150;O0;%% Replaced QuickTabs with TabBar, reorganized Environment +[s0;i150;O0; new function `- convert selection to ASCII.&] +[s0;i150;O0; Main package configuration editor shows structured flags +accepted by packages.&] +[s0;i150;O0; Replaced QuickTabs with TabBar, reorganized Environment dialog.&] -[s0;i150;O0;%% Allow conditional breakpoints.&] -[s0;i150;O0;%% Support for CLOB columns in .sch file (#14).&] -[s0;*%% &] -[s0;%% [* Library]&] -[s0;*%% &] -[s0;%% Core&] -[s0;i150;O0;%% Added missing Gate4`::Execute.&] -[s0;i150;O0;%% Tuples now Moveable if all elements moveable.&] -[s0;i150;O0;%% Added Xmlize ValueArray and ValueMap.&] -[s0;i150;O0;%% Added DayOfYear, StrToTime; Draw: Rotate180.&] -[s0;i150;O0;%% Thread threadid support.&] -[s0;i150;O0;%% FormatIntBase added `'upper`' option. Added FormatIntHexUpper +[s0;i150;O0; Allow conditional breakpoints.&] +[s0;i150;O0; Support for CLOB columns in .sch file (#14).&] +[s0;* &] +[s0; [* Library]&] +[s0;* &] +[s0; Core&] +[s0;i150;O0; Added missing Gate4`::Execute.&] +[s0;i150;O0; Tuples now Moveable if all elements moveable.&] +[s0;i150;O0; Added Xmlize ValueArray and ValueMap.&] +[s0;i150;O0; Added DayOfYear, StrToTime; Draw: Rotate180.&] +[s0;i150;O0; Thread threadid support.&] +[s0;i150;O0; FormatIntBase added `'upper`' option. Added FormatIntHexUpper function.&] -[s0;%% &] -[s0;%% Draw&] -[s0;i150;O0;%% Added ImageOps hotspots.&] -[s0;i150;O0;%% RASTER`_8ALPHA now considered non`-premultiplied (fixes +[s0; &] +[s0; Draw&] +[s0;i150;O0; Added ImageOps hotspots.&] +[s0;i150;O0; RASTER`_8ALPHA now considered non`-premultiplied (fixes issue in some .png files).&] -[s0;%% &] -[s0;%% Painter&] -[s0;i150;O0;%% Painter now depends on Draw.&] -[s0;%% &] -[s0;%% plugin/gif:&] -[s0;i150;O0;%% Support for LCT.&] -[s0;%% &] -[s0;%% CtrlCore&] -[s0;i150;O0;%% EncodeRTF improved to support page size, margins and +[s0; &] +[s0; Painter&] +[s0;i150;O0; Painter now depends on Draw.&] +[s0; &] +[s0; plugin/gif:&] +[s0;i150;O0; Support for LCT.&] +[s0; &] +[s0; CtrlCore&] +[s0;i150;O0; EncodeRTF improved to support page size, margins and table cell borders.&] -[s0;i150;O0;%% GetOpaqueRect, GetVoidRect now const&] -[s0;i150;O0;%% TopWindow FullScreen for open window in Win32&] -[s0;%% &] -[s0;%% CtrlLib&] -[s0;i150;O0;%% FileSel: Support for Terminal Services client shares +[s0;i150;O0; GetOpaqueRect, GetVoidRect now const&] +[s0;i150;O0; TopWindow FullScreen for open window in Win32&] +[s0; &] +[s0; CtrlLib&] +[s0;i150;O0; FileSel: Support for Terminal Services client shares (Win32).&] -[s0;i150;O0;%% FileSel lazy and optimized file icon loading.&] -[s0;i150;O0;%% Automatic landscape mode for RichText print.&] -[s0;i150;O0;%% LabelBox visually supports Disabled state, LabelBase +[s0;i150;O0; FileSel lazy and optimized file icon loading.&] +[s0;i150;O0; Automatic landscape mode for RichText print.&] +[s0;i150;O0; LabelBox visually supports Disabled state, LabelBase has got disabledink.&] -[s0;i150;O0;%% Splitter can now have any width.&] -[s0;i150;O0;%% ArrayCtrl with embedded Ctrls optimized to work well +[s0;i150;O0; Splitter can now have any width.&] +[s0;i150;O0; ArrayCtrl with embedded Ctrls optimized to work well up to 10000 widgets.&] -[s0;%% &] -[s0;%% RichEdit&] -[s0;i150;O0;%% Added SingleLine, Filter.&] -[s0;i150;O0;%% Improved process of searching for speller dictionaries.&] -[s0;i150;O0;%% Added some missing czech translations.&] -[s0;%% &] -[s0;%% GridCtrl&] -[s0;i150;O0;%% Added ClearChanged(), added missing row`_order setting +[s0; &] +[s0; RichEdit&] +[s0;i150;O0; Added SingleLine, Filter.&] +[s0;i150;O0; Improved process of searching for speller dictionaries.&] +[s0;i150;O0; Added some missing czech translations.&] +[s0; &] +[s0; GridCtrl&] +[s0;i150;O0; Added ClearChanged(), added missing row`_order setting in Remove0&] -[s0;%% &] -[s0;%% Sql&] -[s0;i150;O0;%% operator`[`](SqlId) now invokes NEVER (in debug) when +[s0; &] +[s0; Sql&] +[s0;i150;O0; operator`[`](SqlId) now invokes NEVER (in debug) when column is not found&] -[s0;i150;O0;%% Oracle: SQLT`_TIMESTAMP support (thanks alendar)&] -[s0;%% &] -[s0;%% Web&] -[s0;i150;O0;%% SmtpMail: Refactored, added support for character encoding +[s0;i150;O0; Oracle: SQLT`_TIMESTAMP support (thanks alendar)&] +[s0; &] +[s0; Web&] +[s0;i150;O0; SmtpMail: Refactored, added support for character encoding in headers, added recipient/sender names, &] -[s0;%% &] -[s0;%% [* Bazaar]&] -[s0;#%% &] -[s0;%% Many packages added and improved: Scatter, DeEncrypter, CMeter, +[s0; &] +[s0; [* Bazaar]&] +[s0;# &] +[s0; Many packages added and improved: Scatter, DeEncrypter, CMeter, Protect, Tree, Dispatcher, Gen, SDLCtrl, PolyXML, PlotLib,PlotCtrl, SysInfo, Media, MediaPlayer, Functions4U, plugin/portaudio, Sound, SoundExample, AutoScroller, CtrlFinder, CtrlProp, LogPosCtrl, PointCtrl, PopUpC, RectCtrl, Styler, ValueCtrl, Docking , TabBar, SysExec, Protect, Updater, SysExecGui, OfficeAutomation, Dispatcher, Styler, Cypher, ProductVersion, Uniq, SplashSV and HelpViewer.&] -[s0;4%% &] -[s3;%% 2791[3 (18 Oct 2010)]&] -[s0;*3%% &] -[s0;%% [* TheIDE]&] -[s0;i150;O0;%% Now it has direct support for Windows SDK 7.1.&] -[s0;*%% &] -[s0;%% [* Library]&] -[s0;*%% &] -[s0;%% Core&] -[s0;i150;O0;%% There are now new templates Tuple2 `- Tuple4.&] -[s0;i150;O0;%% Stream class got new methods Peek and PutPtr intended +[s0;4 &] +[s3; 2791[3 (18 Oct 2010)]&] +[s0;*3 &] +[s0; [* TheIDE]&] +[s0;i150;O0; Now it has direct support for Windows SDK 7.1.&] +[s0;* &] +[s0; [* Library]&] +[s0;* &] +[s0; Core&] +[s0;i150;O0; There are now new templates Tuple2 `- Tuple4.&] +[s0;i150;O0; Stream class got new methods Peek and PutPtr intended for optional optimizations.&] -[s0;i150;O0;%% In Vector and Array template classes, interface was +[s0;i150;O0; In Vector and Array template classes, interface was changed so that all Add methods are now returning the reference to the element inserted.&] -[s0;i150;O0;%% String and WString has new Replace method.&] -[s0;%% &] -[s0;%% Draw&] -[s0;i150;O0;%% plugin/gif now has support for animated gifs, Raster +[s0;i150;O0; String and WString has new Replace method.&] +[s0; &] +[s0; Draw&] +[s0;i150;O0; plugin/gif now has support for animated gifs, Raster and Raster encoder have new GetDPI and SetDPI methods. DPI information handling for png, tif and jpg was fixed.&] -[s0;i150;O0;%% AttrText utility class has new NormalInk method and +[s0;i150;O0; AttrText utility class has new NormalInk method and supports conversion from Value.&] -[s0;%% &] -[s0;%% CtrlCore&] -[s0;i150;O0;%% There is a new IsPainting method.&] -[s0;%% &] -[s0;%% CtrlLib&] -[s0;i150;O0;%% Progress has now blocked open if invoked during Draw +[s0; &] +[s0; CtrlCore&] +[s0;i150;O0; There is a new IsPainting method.&] +[s0; &] +[s0; CtrlLib&] +[s0;i150;O0; Progress has now blocked open if invoked during Draw method. IdCtrls have now Reset method.&] -[s0;i150;O0;%% New utility function SelectDirectory. &] -[s0;i150;O0;%% LineEdit now reacts to Shift`+MouseWheel does horizontal +[s0;i150;O0; New utility function SelectDirectory. &] +[s0;i150;O0; LineEdit now reacts to Shift`+MouseWheel does horizontal scroll with horizontal scrolling.&] -[s0;i150;O0;%% RichTextView got new WhenMouseMove callback.&] -[s0;%% &] -[s0;%% GridCtrl&] -[s0;i150;O0;%% Has now WhenBeforeChangeRow and WhenBeforeChangeCol +[s0;i150;O0; RichTextView got new WhenMouseMove callback.&] +[s0; &] +[s0; GridCtrl&] +[s0;i150;O0; Has now WhenBeforeChangeRow and WhenBeforeChangeCol callbacks, CancelDuplicate, SetCtrl, FindCol, ReadCol and CopyColumnNames methods and SetValues, GetValues and Xmlize template specialization.&] -[s0;%% &] -[s0;%% Sql&] -[s0;i150;O0;%% SqlSelect now can add individual fetch values using +[s0; &] +[s0; Sql&] +[s0;i150;O0; SqlSelect now can add individual fetch values using operator(). &] -[s0;i150;O0;%% New SqlMassInsert provides generic acceleration of -mass inserts using `'union all`' trick. &] -[s0;i150;O0;%% IsSame is a new SqlExp equality test which is null -safe (null `=`= null yields true).&] -[s0;i150;O0;%% Oracle8 has new BulkExecute interface to OCI8 array +[s0;i150;O0; New SqlMassInsert provides generic acceleration of mass +inserts using `'union all`' trick. &] +[s0;i150;O0; IsSame is a new SqlExp equality test which is null safe +(null `=`= null yields true).&] +[s0;i150;O0; Oracle8 has new BulkExecute interface to OCI8 array binds repeated command execution with varying parameter sets; speeds up inserts / updates drastically over networks with long roundtrip.&] -[s0;%% &] -[s0;%% XmlRpc&] -[s0;i150;O0;%% XmlRpcCall has now Proxy and ProxyAuth methods.&] -[s0;%% &] -[s0;%% New plugin/Box2D package was added.&] -[s0;%% &] -[s0;%% [* Bazaar]&] -[s0;%% &] -[s0;%% Added packages&] -[s0;i150;O0;%% Protect: Software encryption system.&] -[s0;i150;O0;%% Cypher, StreamCypher, CypherTest.&] -[s0;i150;O0;%% DeEncrypter: A `*simple`* AESStream based Encrypter -/ Decrypter.&] -[s0;i150;O0;%% BufferStream: Stream based on Vector buffer, -self growing.&] -[s0;i150;O0;%% CMeter: A progressbar / meter / slider with some versatile +[s0; &] +[s0; XmlRpc&] +[s0;i150;O0; XmlRpcCall has now Proxy and ProxyAuth methods.&] +[s0; &] +[s0; New plugin/Box2D package was added.&] +[s0; &] +[s0; [* Bazaar]&] +[s0; &] +[s0; Added packages&] +[s0;i150;O0; Protect: Software encryption system.&] +[s0;i150;O0; Cypher, StreamCypher, CypherTest.&] +[s0;i150;O0; DeEncrypter: A `*simple`* AESStream based Encrypter / +Decrypter.&] +[s0;i150;O0; BufferStream: Stream based on Vector buffer, self +growing.&] +[s0;i150;O0; CMeter: A progressbar / meter / slider with some versatile settings Ctrl &] -[s0;i150;O0;%% Dispatcher: Generic class to dispatch data to arbitrary +[s0;i150;O0; Dispatcher: Generic class to dispatch data to arbitrary recipients.&] -[s0;i150;O0;%% HelpViewer, TestHelpViewer.&] -[s0;%% &] -[s0;%% MtAlt&] -[s0;i150;O0;%% Some improvements&] -[s0;%% &] -[s0;%% Scatter&] -[s0;i150;O0;%% Some fixes&] -[s0;%% &] -[s0;%% Docking&] -[s0;i150;O0;%% Some fixes&] -[s0;%% &] -[s0;%% PixRaster&] -[s0;i150;O0;%% Updated Leptonica library to version 1.65 &] -[s0;%% &] -[s0;%% TabBar&] -[s0;i150;O0;%% Minor changes and fixes&] -[s0;%% &] -[s0;%% Timer&] -[s0;i150;O0;%% Minor changes&] -[s0;%% &] -[s0;%% ExpandFrame&] -[s0;i150;O0;%% Minor changes&] -[s0;%% &] -[s0;%% AESStream&] -[s0;i150;O0;%% Added SHA2 functions&] -[s0;%% &] -[s0;%% LEDCtrl&] -[s0;i150;O0;%% New LED control by Christian&] -[s0;%% &] -[s0;%% Functions4U&] -[s0;i150;O0;%% Added functions, GatherTpp, improved doc and fixed -bugs&] -[s0;%% &] -[s0;%% SysInfo&] -[s0;i150;O0;%% Added GetAdapterInfo&] -[s0;%% &] -[s0;%% Control4U&] -[s0;i150;O0;%% Added Knob&] -[s0;%% &] -[s0;%% OfficeAutomation&] -[s0;i150;O0;%% Cyrillic characters support&] -[s0;%% &] -[s0;%% UltimateBook&] -[s0;i150;O0;%% Updated doc &] -[s0;4%% &] -[s3;%% 2467[3 (10 Jun 2010)]&] -[s0;%% &] -[s0;%% [* TheIDE]&] -[s0;i150;O0;%% Now has QTF designer. &] -[s0;%% &] -[s0;%% [* Library]&] -[s0;%% &] -[s0;%% Core&] -[s0;i150;O0;%% `[W`]String got new variant of ReverseFind method.&] -[s0;%% &] -[s0;%% CtrlCore&] -[s0;i150;O0;%% There is a new static method Ctrl`::GetEventId to help +[s0;i150;O0; HelpViewer, TestHelpViewer.&] +[s0; &] +[s0; MtAlt&] +[s0;i150;O0; Some improvements&] +[s0; &] +[s0; Scatter&] +[s0;i150;O0; Some fixes&] +[s0; &] +[s0; Docking&] +[s0;i150;O0; Some fixes&] +[s0; &] +[s0; PixRaster&] +[s0;i150;O0; Updated Leptonica library to version 1.65 &] +[s0; &] +[s0; TabBar&] +[s0;i150;O0; Minor changes and fixes&] +[s0; &] +[s0; Timer&] +[s0;i150;O0; Minor changes&] +[s0; &] +[s0; ExpandFrame&] +[s0;i150;O0; Minor changes&] +[s0; &] +[s0; AESStream&] +[s0;i150;O0; Added SHA2 functions&] +[s0; &] +[s0; LEDCtrl&] +[s0;i150;O0; New LED control by Christian&] +[s0; &] +[s0; Functions4U&] +[s0;i150;O0; Added functions, GatherTpp, improved doc and fixed bugs&] +[s0; &] +[s0; SysInfo&] +[s0;i150;O0; Added GetAdapterInfo&] +[s0; &] +[s0; Control4U&] +[s0;i150;O0; Added Knob&] +[s0; &] +[s0; OfficeAutomation&] +[s0;i150;O0; Cyrillic characters support&] +[s0; &] +[s0; UltimateBook&] +[s0;i150;O0; Updated doc &] +[s0;4 &] +[s3; 2467[3 (10 Jun 2010)]&] +[s0; &] +[s0; [* TheIDE]&] +[s0;i150;O0; Now has QTF designer. &] +[s0; &] +[s0; [* Library]&] +[s0; &] +[s0; Core&] +[s0;i150;O0; `[W`]String got new variant of ReverseFind method.&] +[s0; &] +[s0; CtrlCore&] +[s0;i150;O0; There is a new static method Ctrl`::GetEventId to help identify individual GUI events, intended for use in caching schemes.&] -[s0;%% &] -[s0;%% CtrlLib&] -[s0;i150;O0;%% Update system was parametrised.&] -[s0;i150;O0;%% Handling of active file type in FileSel was improved.&] -[s0;i150;O0;%% Splitter now has WhenSplitFinish.&] -[s0;%% &] -[s0;%% PdfDraw&] -[s0;i150;O0;%% Got support for fill patterns. &] -[s0;*%% &] -[s0;%% [* Bazaar]&] -[s0;i150;O0;%% SysInfo: Added CPU temperature monitoring and improved +[s0; &] +[s0; CtrlLib&] +[s0;i150;O0; Update system was parametrised.&] +[s0;i150;O0; Handling of active file type in FileSel was improved.&] +[s0;i150;O0; Splitter now has WhenSplitFinish.&] +[s0; &] +[s0; PdfDraw&] +[s0;i150;O0; Got support for fill patterns. &] +[s0;* &] +[s0; [* Bazaar]&] +[s0;i150;O0; SysInfo: Added CPU temperature monitoring and improved battery status.&] -[s0;i150;O0;%% Functions4U: Added new SVG color functions and doc.&] -[s0;i150;O0;%% Controls4U: Added ActiveX controls (VLC and web browsing).&] -[s0;i150;O0;%% MtAlt: Added support for fast 5`-argument callbacks -(copy and pick version).&] -[s0;i150;O0;%% Form: Form core package, Editor and sample.&] -[s0;i150;O0;%% Scatter: Added SetSequentialX and SetFastViewX for -faster refresh.&] -[s0;i150;O0;%% Docking: Bug fixes, some small feature additions.&] -[s0;i150;O0;%% ExpandFrame/ExpanderCtrl: Fixes fopr horizontal alignment.&] -[s0;i150;O0;%% AESStream: Added SHA2 functions.&] -[s0;4%% &] -[s3;%% 2361[3 (4 May 2010)]&] -[s0;%% &] -[s0;%% [* TheIDE]&] -[s0;i150;O0;%% Packages now sorted by directory closeness to main -package directory, names later `- puts main package nest or main -package subpackages first in the list&] -[s0;%% &] -[s0;%% [* Library]&] -[s0;%% &] -[s0;%% Core:&] -[s0;i150;O0;%% ArrayIndex: Added Detach, PopDetach&] -[s0;i150;O0;%% XmlRpc: Added bool XmlRpcPerform(Socket`& http, const +[s0;i150;O0; Functions4U: Added new SVG color functions and doc.&] +[s0;i150;O0; Controls4U: Added ActiveX controls (VLC and web browsing).&] +[s0;i150;O0; MtAlt: Added support for fast 5`-argument callbacks (copy +and pick version).&] +[s0;i150;O0; Form: Form core package, Editor and sample.&] +[s0;i150;O0; Scatter: Added SetSequentialX and SetFastViewX for faster +refresh.&] +[s0;i150;O0; Docking: Bug fixes, some small feature additions.&] +[s0;i150;O0; ExpandFrame/ExpanderCtrl: Fixes fopr horizontal alignment.&] +[s0;i150;O0; AESStream: Added SHA2 functions.&] +[s0;4 &] +[s3; 2361[3 (4 May 2010)]&] +[s0; &] +[s0; [* TheIDE]&] +[s0;i150;O0; Packages now sorted by directory closeness to main package +directory, names later `- puts main package nest or main package +subpackages first in the list&] +[s0; &] +[s0; [* Library]&] +[s0; &] +[s0; Core:&] +[s0;i150;O0; ArrayIndex: Added Detach, PopDetach&] +[s0;i150;O0; XmlRpc: Added bool XmlRpcPerform(Socket`& http, const char `*group);&] -[s0;%% &] -[s0;%% CtrlLib:&] -[s0;i150;O0;%% Added ArrayCtrl WhenScroll&] -[s0;i150;O0;%% ColumnList: AutoHideSb&] -[s0;i150;O0;%% FileSel: list is autohide&] -[s0;i150;O0;%% EditField ReadOnly Ctrl`+C fix&] -[s0;i150;O0;%% DocEdit: NoEofLine&] -[s0;i150;O0;%% RichEdit now supports dropping Image files&] -[s0;i150;O0;%% SqlCtrl: SqlArray has new WhenFilter Gate (able to -filter records being fetched)&] -[s0;%% &] -[s0;%% Sql:&] -[s0;i150;O0;%% Optional SqlSession errorhandler routing is now installable&] -[s0;i150;O0;%% SqlSession: First SQL error is recorded (until ClearError) +[s0; &] +[s0; CtrlLib:&] +[s0;i150;O0; Added ArrayCtrl WhenScroll&] +[s0;i150;O0; ColumnList: AutoHideSb&] +[s0;i150;O0; FileSel: list is autohide&] +[s0;i150;O0; EditField ReadOnly Ctrl`+C fix&] +[s0;i150;O0; DocEdit: NoEofLine&] +[s0;i150;O0; RichEdit now supports dropping Image files&] +[s0;i150;O0; SqlCtrl: SqlArray has new WhenFilter Gate (able to filter +records being fetched)&] +[s0; &] +[s0; Sql:&] +[s0;i150;O0; Optional SqlSession errorhandler routing is now installable&] +[s0;i150;O0; SqlSession: First SQL error is recorded (until ClearError) instead of last&] -[s0;%% &] -[s0;%% Uppsrc:&] -[s0;%% New IT`-IT translation&] -[s0;4%% &] -[s3;%% 2232[3 (17 March 2010)]&] -[s0;%% &] -[s0;%% [* TheIDE]&] -[s0;i150;O0;%% Sorting of package has been improved, placing project +[s0; &] +[s0; Uppsrc:&] +[s0; New IT`-IT translation&] +[s0;4 &] +[s3; 2232[3 (17 March 2010)]&] +[s0; &] +[s0; [* TheIDE]&] +[s0;i150;O0; Sorting of package has been improved, placing project packages first&] -[s0;i150;O0;%% Insert menu now has typedef ... CLASSNAME entry.&] -[s0;i150;O0;%% FileSel was improved by adding Places with common -directories.&] -[s0;%% &] -[s0;%% [* Library]&] -[s0;*%% &] -[s0;%% Core:&] -[s0;i150;O0;%% XmlRpc has improved error handling.&] -[s0;i150;O0;%% Xmlize now supports all Core Value types and has got -support for Value serialization.&] -[s0;i150;O0;%% XmlParser has got new Peek methods. Socket has new -GetPeerAddr method.&] -[s0;i150;O0;%% CParser now provides the information about current -column.&] -[s0;%% &] -[s0;%% CtrlLib:&] -[s0;i150;O0;%% TabCtrl has new Find/Set/Remove/Insert methods using -reference to slave instead of index.&] -[s0;%% &] -[s0;%% RichText:&] -[s0;i150;O0;%% RichTextView now have `"ShrinkOversizedObjects`" option.&] -[s0;4%% &] -[s3;%% 2070[3 (16 February 2010)]&] -[s0;%% &] -[s0;%% [* TheIDE]&] -[s0;i150;O0;%% User interface for Find and Replace was significantly -reworked&] -[s0;i150;O0;%% Current editor line is now highlighted in the left -bar.&] -[s0;%% &] -[s0;%% [* Library]&] -[s0;*%% &] -[s0;%% Core:&] -[s0;i150;O0;%% Support for Win32 .lnk files (GetSymLinkPath function, -FindFile`::IsSymLink method) `- same interface as for Posix symlinks.&] -[s0;i150;O0;%% ConvertDate has new Truncate option (truncates Time -to Date), corresponding StdConvertDateTruncate global Convert -added.&] -[s0;%% &] -[s0;%% CtrlLib:&] -[s0;i150;O0;%% SliderCtrl widget, has new Jump method. &] -[s0;i150;O0;%% ArrayCtrl class has new WhenMouseMove Callback. &] -[s0;i150;O0;%% EditField has new WhenEnter callback.&] -[s0;i150;O0;%% TabCtrl has new NoAccept option&] -[s0;%% &] -[s0;%% Draw:&] -[s0;i150;O0;%% The search for missing glyphs (i18n issue) was optimized.&] -[s0;4%% &] -[s3;%% 1952[3 (27 January 2010)]&] -[s0;%% &] -[s0;%% [* TheIde]&] -[s0;i150;O0;%% Improved installation in Win32 with support for the -latest Win32 SDK. &] -[s0;i150;O0;%% Helpsystem has vastly improved searching capabilities.&] -[s0;i150;O0;%% Build process now supports new link options `- Posix -releases now use `"gc`-sections`" linker option to dramatically -reduce the size of resulting binaries (up to 40%). &] -[s0;%% &] -[s0;%% [* Library]&] -[s0;*%% &] -[s0;%% CtrlLib:&] -[s0;i150;O0;%% File selector (FileSel class) got networking support -in Win32.&] -[s0;i150;O0;%% TrayIcon in X11 now supports notifications. &] -[s0;i150;O0;%% TopWindow in X11 now supports SetAlphs. &] -[s0;%% &] -[s0;%% Painter:&] -[s0;i150;O0;%% Image rescaling algorithm was improved for better -downscaling. &] -[s0;%% &] -[s0;%% Core: &] -[s0;i150;O0;%% Containers now have a new debugging utility to resolve -pick semantic errors.&] -[s0;4%% &] -[s3;%% 1824[3 (21 December 2009)]&] -[s0;%% &] -[s0;%% [* TheIDE]&] -[s0;i150;O0;%% Autosetup now recognizes Win32 SDK 7.0.&] -[s0;%% &] -[s0;%% [* Library]&] -[s0;*%% &] -[s0;%% Core:&] -[s0;i150;O0;%% XmlRpc package adds support for XML`-RPC based webservices.&] -[s0;i150;O0;%% LanguageInfo has been completely refactored.&] -[s0;%% &] -[s0;%% Bazaar:&] -[s0;i150;O0;%% GoogleTranslator: New version.&] -[s0;i150;O0;%% Functions4U: New package with additional functions -to complement Core and CtrlLib.&] -[s0;i150;O0;%% Controls4U: New package with additional graphic controls. -&] -[s0;i150;O0;%% SysInfo: Improved Unicode support.&] -[s0;4%% &] -[s3;%% 1713[3 (30 November 2009)]&] -[s0;%% &] -[s0;%% [* TheIDE]&] -[s0;i150;O0;%% .t files are now saved with strings converted by escaping ->127 characters (and back on loading). This fixes venerable problem -of UTF`-8 string literals in CJK Windows and MSC compiler.&] -[s0;%% &] -[s0;%% [* Library]&] -[s0;*%% &] -[s0;%% CtrlLib:&] -[s0;i150;O0;%% TreeCtrl InsertDrop now returns ids of inserted nodes.&] -[s0;i150;O0;%% A new set of utility functions that simplify selecting -files introduced (see http://www.ultimatepp.org/src`$CtrlLib`$FileSelUtil`$en`-us. -html)&] -[s0;i150;O0;%% HeaderCtrl columns now can have a tooltip&] -[s0;i150;O0;%% SliderCtrl now allows reversed orientation (thanks -avpavp!)&] -[s0;%% &] -[s0;%% RichEdit:&] -[s0;i150;O0;%% New much more effective speller dictionary format, -utilities required to convert OpenOffice speller dictionaries -into U`+`+ speller files.&] -[s0;i150;O0;%% Labeled paragraphs now marked with arrow displayed -in the left bar.&] -[s0;i150;O0;%% Previously private StyleManager class capable of managing -paragraph styles has been made public.&] -[s0;%% &] -[s0;%% Report:&] -[s0;i150;O0;%% New methods ChoosePrinter, ChooseDefault printer allow -selecting printer BEFORE report is created, setting the physical -page size based on chosen printer.&] -[s0;%% &] -[s0;%% Core:&] -[s0;i150;O0;%% In Win32, console applications no longer pop up a -MessageBox when panicking, instead they write the panic string -on the error output and terminate.&] -[s0;%% &] -[s0;%% GridCtrl:&] -[s0;i150;O0;%% Multiline popups now allowed, using GridDisplay to -paint the content.&] -[s0;%% &] -[s0;%% Bazaar:&] -[s0;i150;O0;%% New functions to SysInfo&] -[s0;%% Urr `- UDP request`-response protocol added &] -[s0;4%% &] -[s3;%% 1659[3 (26 October 2009)]&] -[s0;%% &] -[s0;%% [* Library]&] -[s0;*%% &] -[s0;i150;O0;%% Core&] -[s0;l160;i160;O3;%% GetUtcTime&] -[s0;l160;i160;O3;%% New Split variant with String delimiter&] -[s0;l160;i160;O3;%% ConvertTime Min, Max&] -[s0;i150;O0;%% Core, CtrlLib: ConvertDate, ConvertTime now have Default -method `-> propagates to date/time widgets as well...&] -[s0;i150;O0;%% PostgreSQL: GetInsertedId now supported for tables -with primary key `'id`'&] -[s0;i150;O0;%% CtrlLib: MenuBar WhenOpenSubMenu, WhenCloseSubMenu -callbacks&] -[s0;i150;O0;%% Sql, SqlExp: Sql`::InsertNoKey(Fields) ommits first -column `- intended for key with autoincrement&] -[s0;%% &] -[s0;%% [* TheIDE]&] -[s0;*%% &] -[s0;i150;O0;%% Minor IDE speed improvements `- removed unnecessary -Assist`+`+ package check when inserting / removing separators -and auxiliary package contents&] -[s0;%% Package selector now shows app icons if available &] -[s0;4%% &] -[s3;%% 1607[3 (07 October 2009)]&] -[s0;%% &] -[s0;%% [* Library]&] -[s0;%% &] -[s0;i150;O0;%% Draw&] -[s0;l160;i160;O3;%% DisplayWithIcon (Display that adds an icon to -any other Display)&] -[s0;l160;i160;O3;%% AttrText now has `'SetImage`' (places the icon -to the left of text)&] -[s0;i150;O0;%% CtrlLib: DropTree widget&] -[s0;i150;O0;%% Web: void AttachSocket(Socket`& socket, SOCKET s, bool -blocking)&] -[s0;i150;O0;%% MSSQL: IdentityInsert helper (bypass of IDENTITY column -insertion)&] -[s0;i150;O0;%% CtrlCore: RegisterSystemHotKey (system`-wide hotkey) -&] -[s0;4%% &] -[s3;%% 1579[3 (23 September 2009)]&] -[s0;%% &] -[s0;%% [* Library]&] -[s0;*%% &] -[s0;i150;O0;%% Core: Added support for many various 8`-bit encodings&] -[s0;i150;O0;%% Geom: Added new Computational Geometry algorithm: 2D -convex hull calculation (ConvexHullOrder)&] -[s0;i150;O0;%% Sql: SqlExp, SqlSelect AsTable, Joins accept SqlSet&] -[s0;i150;O0;%% RichText: Optimized by caching paragraph data and layout&] -[s0;i150;O0;%% Draw, plugin/tif: Added GetActivePage support&] -[s0;i150;O0;%% Fixed a lot of minor bugs&] -[s0;*4%% &] -[s3;%% 1517[3 (19 August 2009)]&] -[s0;%% &] -[s0;%% Major overhaul graphics infrastructure is finished, U`+`+ -is now capable of headless drawing operations&] -[s0;%% (e.g. drawing graphics and text into .png files in console -applications, without X11)&] -[s0;%% &] -[s0;%% Minor improvements:&] -[s0;%% &] -[s0;%% [* Library]&] -[s0;*%% &] -[s0;i150;O0;%% RegExp fixed to work with mingw, added GetMatchPos -method&] -[s0;i150;O0;%% SetSurface functions for optimized raw output of RGBA -data to screen&] -[s0;i150;O0;%% Added Blackfin CPU support into Core&] -[s0;i150;O0;%% EditField`::NullText method now can provide an icon&] -[s0;i150;O0;%% RichText, Report: RichTextLayoutTracer ability&] -[s0;i150;O0;%% Core: Added StringStream`::Reserve&] -[s0;%% &] -[s0;%% [* TheIDE]&] -[s0;%% &] -[s0;i150;O0;%% Added package internal include paths&] -[s0;%% Ctrl`+mouse wheel changes font size&] -[s0;*4%% &] -[s3;%% 1314[3 (17 June 2009)]&] -[s0;%% &] -[s0;%% [* Library]&] -[s0;%% &] -[s0;i150;O0;%% CtrlCore&] -[s0;l160;i160;O3;%% Fixed several X11/Compiz/SCIM compatibility issues&] -[s0;i150;O0;%% RichText&] -[s0;l160;i150;O3;%% QTF: Added text`-type rich object format&] -[s0;i150;O0;%% GridCtrl&] -[s0;l160;i150;O3;%% Added WhenMoveRow, CancelMove&] -[s0;l160;i150;O3;%% Improved search results highlighting&] -[s0;%% &] -[s0;%% [* TheIDE]&] -[s0;%% &] -[s0;i150;O0;%% Import directory source tree into package&] -[s0;i150;O0;%% Support for multiline svn commit messages&] -[s0;i150;O0;%% Assist`+`+ now supports SQL schema files&] -[s0;i150;O0;%% FileTabs now persistent&] -[s0;i150;O0;%% Non`-fixed pitch fonts allowed in editor (used as -fixed...)&] -[s0;4%% &] -[s3;%% 1254[3 (03 June 2009)]&] -[s0;*4%% &] -[s0;%% [* Library]&] -[s0;%% &] -[s0;i150;O0;%% Various improvements in SQL related stuff (SqlPerformScript, -SqlBinary enable for PGSQL) &] -[s0;%% &] -[s0;%% [* TheIDE]&] -[s0;%% &] -[s0;i150;O0;%% Highlighting of .sch and .sql files &] -[s0;i150;O0;%% Find in files now has separate output console &] -[s0;i150;O0;%% Select package dialog `'All`' option replaced by the -selection of more understandable options, main packages now displayed -bold&] -[s0;4%% &] -[s3;%% 1205[3 (18 May 2009)]&] -[s0;*4%% &] -[s0;%% [* Library]&] -[s0;%% &] -[s0;i150;O0;%% New GUI multithreading architecture &] -[s0;%% &] -[s0;%% [* TheIDE ]&] -[s0;%% &] -[s0;i150;O0;%% Layout designer: option to resize dialog without springs -&] -[s0;i150;O0;%% No more confusing switches of .lay, .iml to text mode -(instead designer) &] -[s0;i150;O0;%% One more redesign of code navigator &] -[s0;i150;O0;%% Ctrl`+Click onto symbol jumps to its definition &] -[s0;i150;O0;%% Package selector now shows the nest&] -[s0;*4%% &] -[s3;%% 1126[3 (5 May 2009)]&] -[s0;*4%% &] +[s0;i150;O0; Insert menu now has typedef ... CLASSNAME entry.&] +[s0;i150;O0; FileSel was improved by adding Places with common directories.&] +[s0; &] [s0; [* Library]&] [s0;* &] -[s0;i150;O0;%% Change in SetDateFilter format, cleanup in related -docs &] -[s0;i150;O0;%% Improved translation docs &] -[s0;i150;O0;%% Added runtime check for serializing RichValue with -missing Register &] -[s0;i150;O0;%% Docking: CreateDockable now returns type T &] -[s0;i150;O0;%% mrjt`'s MultiList now merged into ColumnList &] -[s0;i150;O0;%% TabBar: Tab Stacking and sorting added. Other changes. +[s0; Core:&] +[s0;i150;O0; XmlRpc has improved error handling.&] +[s0;i150;O0; Xmlize now supports all Core Value types and has got +support for Value serialization.&] +[s0;i150;O0; XmlParser has got new Peek methods. Socket has new GetPeerAddr +method.&] +[s0;i150;O0; CParser now provides the information about current column.&] +[s0; &] +[s0; CtrlLib:&] +[s0;i150;O0; TabCtrl has new Find/Set/Remove/Insert methods using +reference to slave instead of index.&] +[s0; &] +[s0; RichText:&] +[s0;i150;O0; RichTextView now have `"ShrinkOversizedObjects`" option.&] +[s0;4 &] +[s3; 2070[3 (16 February 2010)]&] +[s0; &] +[s0; [* TheIDE]&] +[s0;i150;O0; User interface for Find and Replace was significantly +reworked&] +[s0;i150;O0; Current editor line is now highlighted in the left bar.&] +[s0; &] +[s0; [* Library]&] +[s0;* &] +[s0; Core:&] +[s0;i150;O0; Support for Win32 .lnk files (GetSymLinkPath function, +FindFile`::IsSymLink method) `- same interface as for Posix symlinks.&] +[s0;i150;O0; ConvertDate has new Truncate option (truncates Time +to Date), corresponding StdConvertDateTruncate global Convert +added.&] +[s0; &] +[s0; CtrlLib:&] +[s0;i150;O0; SliderCtrl widget, has new Jump method. &] +[s0;i150;O0; ArrayCtrl class has new WhenMouseMove Callback. &] +[s0;i150;O0; EditField has new WhenEnter callback.&] +[s0;i150;O0; TabCtrl has new NoAccept option&] +[s0; &] +[s0; Draw:&] +[s0;i150;O0; The search for missing glyphs (i18n issue) was optimized.&] +[s0;4 &] +[s3; 1952[3 (27 January 2010)]&] +[s0; &] +[s0; [* TheIde]&] +[s0;i150;O0; Improved installation in Win32 with support for the +latest Win32 SDK. &] +[s0;i150;O0; Helpsystem has vastly improved searching capabilities.&] +[s0;i150;O0; Build process now supports new link options `- Posix +releases now use `"gc`-sections`" linker option to dramatically +reduce the size of resulting binaries (up to 40%). &] +[s0; &] +[s0; [* Library]&] +[s0;* &] +[s0; CtrlLib:&] +[s0;i150;O0; File selector (FileSel class) got networking support +in Win32.&] +[s0;i150;O0; TrayIcon in X11 now supports notifications. &] +[s0;i150;O0; TopWindow in X11 now supports SetAlphs. &] +[s0; &] +[s0; Painter:&] +[s0;i150;O0; Image rescaling algorithm was improved for better downscaling. &] -[s0;i150;O0;%% Drawing refactored &] +[s0; &] +[s0; Core: &] +[s0;i150;O0; Containers now have a new debugging utility to resolve +pick semantic errors.&] +[s0;4 &] +[s3; 1824[3 (21 December 2009)]&] +[s0; &] +[s0; [* TheIDE]&] +[s0;i150;O0; Autosetup now recognizes Win32 SDK 7.0.&] +[s0; &] +[s0; [* Library]&] +[s0;* &] +[s0; Core:&] +[s0;i150;O0; XmlRpc package adds support for XML`-RPC based webservices.&] +[s0;i150;O0; LanguageInfo has been completely refactored.&] +[s0; &] +[s0; Bazaar:&] +[s0;i150;O0; GoogleTranslator: New version.&] +[s0;i150;O0; Functions4U: New package with additional functions to +complement Core and CtrlLib.&] +[s0;i150;O0; Controls4U: New package with additional graphic controls. +&] +[s0;i150;O0; SysInfo: Improved Unicode support.&] +[s0;4 &] +[s3; 1713[3 (30 November 2009)]&] +[s0; &] +[s0; [* TheIDE]&] +[s0;i150;O0; .t files are now saved with strings converted by escaping +>127 characters (and back on loading). This fixes venerable problem +of UTF`-8 string literals in CJK Windows and MSC compiler.&] +[s0; &] +[s0; [* Library]&] +[s0;* &] +[s0; CtrlLib:&] +[s0;i150;O0; TreeCtrl InsertDrop now returns ids of inserted nodes.&] +[s0;i150;O0; A new set of utility functions that simplify selecting +files introduced (see http://www.ultimatepp.org/src`$CtrlLib`$FileSelUtil`$en`-us. +html)&] +[s0;i150;O0; HeaderCtrl columns now can have a tooltip&] +[s0;i150;O0; SliderCtrl now allows reversed orientation (thanks avpavp!)&] +[s0; &] +[s0; RichEdit:&] +[s0;i150;O0; New much more effective speller dictionary format, utilities +required to convert OpenOffice speller dictionaries into U`+`+ +speller files.&] +[s0;i150;O0; Labeled paragraphs now marked with arrow displayed in +the left bar.&] +[s0;i150;O0; Previously private StyleManager class capable of managing +paragraph styles has been made public.&] +[s0; &] +[s0; Report:&] +[s0;i150;O0; New methods ChoosePrinter, ChooseDefault printer allow +selecting printer BEFORE report is created, setting the physical +page size based on chosen printer.&] +[s0; &] +[s0; Core:&] +[s0;i150;O0; In Win32, console applications no longer pop up a MessageBox +when panicking, instead they write the panic string on the error +output and terminate.&] +[s0; &] +[s0; GridCtrl:&] +[s0;i150;O0; Multiline popups now allowed, using GridDisplay to paint +the content.&] +[s0; &] +[s0; Bazaar:&] +[s0;i150;O0; New functions to SysInfo&] +[s0; Urr `- UDP request`-response protocol added &] +[s0;4 &] +[s3; 1659[3 (26 October 2009)]&] +[s0; &] +[s0; [* Library]&] +[s0;* &] +[s0;i150;O0; Core&] +[s0;l160;i160;O3; GetUtcTime&] +[s0;l160;i160;O3; New Split variant with String delimiter&] +[s0;l160;i160;O3; ConvertTime Min, Max&] +[s0;i150;O0; Core, CtrlLib: ConvertDate, ConvertTime now have Default +method `-> propagates to date/time widgets as well...&] +[s0;i150;O0; PostgreSQL: GetInsertedId now supported for tables with +primary key `'id`'&] +[s0;i150;O0; CtrlLib: MenuBar WhenOpenSubMenu, WhenCloseSubMenu callbacks&] +[s0;i150;O0; Sql, SqlExp: Sql`::InsertNoKey(Fields) ommits first column +`- intended for key with autoincrement&] +[s0; &] +[s0; [* TheIDE]&] +[s0;* &] +[s0;i150;O0; Minor IDE speed improvements `- removed unnecessary +Assist`+`+ package check when inserting / removing separators +and auxiliary package contents&] +[s0; Package selector now shows app icons if available &] +[s0;4 &] +[s3; 1607[3 (07 October 2009)]&] +[s0; &] +[s0; [* Library]&] +[s0; &] +[s0;i150;O0; Draw&] +[s0;l160;i160;O3; DisplayWithIcon (Display that adds an icon to any +other Display)&] +[s0;l160;i160;O3; AttrText now has `'SetImage`' (places the icon +to the left of text)&] +[s0;i150;O0; CtrlLib: DropTree widget&] +[s0;i150;O0; Web: void AttachSocket(Socket`& socket, SOCKET s, bool +blocking)&] +[s0;i150;O0; MSSQL: IdentityInsert helper (bypass of IDENTITY column +insertion)&] +[s0;i150;O0; CtrlCore: RegisterSystemHotKey (system`-wide hotkey) +&] +[s0;4 &] +[s3; 1579[3 (23 September 2009)]&] +[s0; &] +[s0; [* Library]&] +[s0;* &] +[s0;i150;O0; Core: Added support for many various 8`-bit encodings&] +[s0;i150;O0; Geom: Added new Computational Geometry algorithm: 2D convex +hull calculation (ConvexHullOrder)&] +[s0;i150;O0; Sql: SqlExp, SqlSelect AsTable, Joins accept SqlSet&] +[s0;i150;O0; RichText: Optimized by caching paragraph data and layout&] +[s0;i150;O0; Draw, plugin/tif: Added GetActivePage support&] +[s0;i150;O0; Fixed a lot of minor bugs&] +[s0;*4 &] +[s3; 1517[3 (19 August 2009)]&] +[s0; &] +[s0; Major overhaul graphics infrastructure is finished, U`+`+ is +now capable of headless drawing operations&] +[s0; (e.g. drawing graphics and text into .png files in console applications, +without X11)&] +[s0; &] +[s0; Minor improvements:&] +[s0; &] +[s0; [* Library]&] +[s0;* &] +[s0;i150;O0; RegExp fixed to work with mingw, added GetMatchPos method&] +[s0;i150;O0; SetSurface functions for optimized raw output of RGBA +data to screen&] +[s0;i150;O0; Added Blackfin CPU support into Core&] +[s0;i150;O0; EditField`::NullText method now can provide an icon&] +[s0;i150;O0; RichText, Report: RichTextLayoutTracer ability&] +[s0;i150;O0; Core: Added StringStream`::Reserve&] +[s0; &] +[s0; [* TheIDE]&] +[s0; &] +[s0;i150;O0; Added package internal include paths&] +[s0; Ctrl`+mouse wheel changes font size&] +[s0;*4 &] +[s3; 1314[3 (17 June 2009)]&] +[s0; &] +[s0; [* Library]&] +[s0; &] +[s0;i150;O0; CtrlCore&] +[s0;l160;i160;O3; Fixed several X11/Compiz/SCIM compatibility issues&] +[s0;i150;O0; RichText&] +[s0;l160;i150;O3; QTF: Added text`-type rich object format&] +[s0;i150;O0; GridCtrl&] +[s0;l160;i150;O3; Added WhenMoveRow, CancelMove&] +[s0;l160;i150;O3; Improved search results highlighting&] +[s0; &] +[s0; [* TheIDE]&] +[s0; &] +[s0;i150;O0; Import directory source tree into package&] +[s0;i150;O0; Support for multiline svn commit messages&] +[s0;i150;O0; Assist`+`+ now supports SQL schema files&] +[s0;i150;O0; FileTabs now persistent&] +[s0;i150;O0; Non`-fixed pitch fonts allowed in editor (used as fixed...)&] +[s0;4 &] +[s3; 1254[3 (03 June 2009)]&] +[s0;*4 &] +[s0; [* Library]&] +[s0; &] +[s0;i150;O0; Various improvements in SQL related stuff (SqlPerformScript, +SqlBinary enable for PGSQL) &] +[s0; &] +[s0; [* TheIDE]&] +[s0; &] +[s0;i150;O0; Highlighting of .sch and .sql files &] +[s0;i150;O0; Find in files now has separate output console &] +[s0;i150;O0; Select package dialog `'All`' option replaced by the +selection of more understandable options, main packages now displayed +bold&] +[s0;4 &] +[s3; 1205[3 (18 May 2009)]&] +[s0;*4 &] +[s0; [* Library]&] +[s0; &] +[s0;i150;O0; New GUI multithreading architecture &] +[s0; &] +[s0; [* TheIDE ]&] +[s0; &] +[s0;i150;O0; Layout designer: option to resize dialog without springs +&] +[s0;i150;O0; No more confusing switches of .lay, .iml to text mode +(instead designer) &] +[s0;i150;O0; One more redesign of code navigator &] +[s0;i150;O0; Ctrl`+Click onto symbol jumps to its definition &] +[s0;i150;O0; Package selector now shows the nest&] +[s0;*4 &] +[s3; 1126[3 (5 May 2009)]&] +[s0;*4 &] +[s0; [* Library]&] +[s0;* &] +[s0;i150;O0; Change in SetDateFilter format, cleanup in related docs +&] +[s0;i150;O0; Improved translation docs &] +[s0;i150;O0; Added runtime check for serializing RichValue with missing +Register &] +[s0;i150;O0; Docking: CreateDockable now returns type T &] +[s0;i150;O0; mrjt`'s MultiList now merged into ColumnList &] +[s0;i150;O0; TabBar: Tab Stacking and sorting added. Other changes. +&] +[s0;i150;O0; Drawing refactored &] [s0;* &] [s0;* &] [s0; [* TheIDE ]&] [s0;* &] -[s0;i150;O0;%% Refactored CodeNavigator, search symbol (Ctrl`+Q) -now copies current id search field &] -[s0;*4%% &] -[s3;%% [%- 1096][3 (26 April 2009)]&] +[s0;i150;O0; Refactored CodeNavigator, search symbol (Ctrl`+Q) now +copies current id search field &] +[s0;*4 &] +[s3; [%- 1096][3 (26 April 2009)]&] [s0;*4 &] [s0; [* Library]&] [s0;* &] @@ -1926,141 +1920,140 @@ to expand it to if() ;&] .tpp group)&] [s0;i150;O0; Print command (of source files)&] [s0;i150;O0; Editor: ToUpper/Lower/InitCaps/SwapCase &] -[s0;4%% &] -[s3;%% 2008.1[3 (28 July 2008)]&] -[s0;%% &] -[s0;%% [* Library]&] -[s0;%% &] -[s0;i150;O0;%% New very fast String/WString implementation&] -[s0;i150;O0;%% New high performance (mostly) lock`-free heap allocator, +[s0;4 &] +[s3; 2008.1[3 (28 July 2008)]&] +[s0; &] +[s0; [* Library]&] +[s0; &] +[s0;i150;O0; New very fast String/WString implementation&] +[s0;i150;O0; New high performance (mostly) lock`-free heap allocator, &] -[s0;i150;O0;%% Improved multithreading support&] -[s0;i150;O0;%% CoWork multicore loop paralelization class&] -[s0;i150;O0;%% Unified Drag`&Drop support&] -[s0;i150;O0;%% PostgreSQL support&] -[s0;i150;O0;%% Win64 support (except debugger)&] -[s0;i150;O0;%% QuickTabs class&] -[s0;i150;O0;%% HeaderCtrl can now move (reorganize) tabs&] -[s0;i150;O0;%% ArrayCtrl automated column sorting&] -[s0;i150;O0;%% Chameleon Look`&feel improvements under GTK and Vista&] -[s0;%% &] -[s0;%% [* TheIDE]&] -[s0;%% &] -[s0;i150;O0;%% Topic`+`+ documentation editor now integrated into -main window&] -[s0;i150;O0;%% Help Help integrated into main window&] -[s0;4%% &] -[s3;%% 2007.1[3 (11 April 2007)]&] -[s0;%% &] -[s0;%% [* Library]&] -[s0;*%% &] -[s0;i150;O0;%% Pdf export and printing in Linux finished&] -[s0;i150;O0;%% Raster image infrastructure completely reworked&] -[s0;i150;O0;%% `"Chameleon`" skinning system which allows both native +[s0;i150;O0; Improved multithreading support&] +[s0;i150;O0; CoWork multicore loop paralelization class&] +[s0;i150;O0; Unified Drag`&Drop support&] +[s0;i150;O0; PostgreSQL support&] +[s0;i150;O0; Win64 support (except debugger)&] +[s0;i150;O0; QuickTabs class&] +[s0;i150;O0; HeaderCtrl can now move (reorganize) tabs&] +[s0;i150;O0; ArrayCtrl automated column sorting&] +[s0;i150;O0; Chameleon Look`&feel improvements under GTK and Vista&] +[s0; &] +[s0; [* TheIDE]&] +[s0; &] +[s0;i150;O0; Topic`+`+ documentation editor now integrated into main +window&] +[s0;i150;O0; Help Help integrated into main window&] +[s0;4 &] +[s3; 2007.1[3 (11 April 2007)]&] +[s0; &] +[s0; [* Library]&] +[s0;* &] +[s0;i150;O0; Pdf export and printing in Linux finished&] +[s0;i150;O0; Raster image infrastructure completely reworked&] +[s0;i150;O0; `"Chameleon`" skinning system which allows both native look of U`+`+ applications across platforms AND custom skins to be designed/used.&] -[s0;i150;O0;%% New useful widgets: GridCtrl, CalendarCtrl and DateTimeCtrl&] -[s0;i150;O0;%% Sql expressions are now adjusted before being executed +[s0;i150;O0; New useful widgets: GridCtrl, CalendarCtrl and DateTimeCtrl&] +[s0;i150;O0; Sql expressions are now adjusted before being executed on particular RDBMS target&] -[s0;i150;O0;%% Library moved to Upp namespace&] -[s0;i150;O0;%% FreeBSD port is now regular part of U`+`+&] -[s0;i150;O0;%% Experimental PocketPC support was introduced&] -[s0;i150;O0;%% Library fixed to support ARM and PowerPC CPUs&] -[s0;i150;O0;%% A lot of new documentation and tutorials&] -[s0;i150;O0;%% Many minor improvements and bug fixes&] -[s0;%% &] -[s0;%% [* TheIDE]&] -[s0;%% &] -[s0;i150;O0;%% New Icon designer (supports alpha channel and has -tools to produce antialiased icons)&] -[s0;%% &] -[s0;%% [* Distribution]&] -[s0;*%% &] -[s0;i150;O0;%% FreeBSD port available&] -[s0;i150;O0;%% Ubuntu .deb packages released&] -[s0;4%% &] -[s3;%% 605[3 (15 May 2006)]&] -[s0;*%% &] -[s0;%% [* Library]&] -[s0;*%% &] -[s0;i150;O0;%% XML parser refinements (faster, easier to use)&] -[s0;*%% &] -[s0;%% [* TheIDE]&] -[s0;%% &] -[s0;i150;O0;%% `"Hydra build`" `- multi`-CPU building&] -[s0;i150;O0;%% further Assist`+`+ improvements&] -[s0;%% &] -[s0;%% [* Distribution]&] -[s0;*%% &] -[s0;i150;O0;%% new Windows installer `- download size reduced by -50%&] -[s0;%% &] -[s0;*3%% &] -[s3;%% 602[3 (28 February 2006)]&] -[s0;%% &] -[s0;%% [* Library]&] -[s0;*%% &] -[s0;i150;O0;%% New Report package.&] -[s0;i150;O0;%% Fixed multi`-threading issues in Linux.&] -[s0;%% &] -[s0;%% [* TheIDE]&] -[s0;%% &] -[s0;i150;O0;%% Assist`+`+&] -[s0;l160;i150;O2;%% Fixed many C`+`+ parsing issues and optimized&] -[s0;l160;i150;O2;%% `"Virtual methods`" tool&] -[s0;l160;i150;O2;%% `"THISBACKs`" tool&] -[s0;i150;O0;%% `"Generate code..`" tool of Layout designer able to +[s0;i150;O0; Library moved to Upp namespace&] +[s0;i150;O0; FreeBSD port is now regular part of U`+`+&] +[s0;i150;O0; Experimental PocketPC support was introduced&] +[s0;i150;O0; Library fixed to support ARM and PowerPC CPUs&] +[s0;i150;O0; A lot of new documentation and tutorials&] +[s0;i150;O0; Many minor improvements and bug fixes&] +[s0; &] +[s0; [* TheIDE]&] +[s0; &] +[s0;i150;O0; New Icon designer (supports alpha channel and has tools +to produce antialiased icons)&] +[s0; &] +[s0; [* Distribution]&] +[s0;* &] +[s0;i150;O0; FreeBSD port available&] +[s0;i150;O0; Ubuntu .deb packages released&] +[s0;4 &] +[s3; 605[3 (15 May 2006)]&] +[s0;* &] +[s0; [* Library]&] +[s0;* &] +[s0;i150;O0; XML parser refinements (faster, easier to use)&] +[s0;* &] +[s0; [* TheIDE]&] +[s0; &] +[s0;i150;O0; `"Hydra build`" `- multi`-CPU building&] +[s0;i150;O0; further Assist`+`+ improvements&] +[s0; &] +[s0; [* Distribution]&] +[s0;* &] +[s0;i150;O0; new Windows installer `- download size reduced by 50%&] +[s0; &] +[s0;*3 &] +[s3; 602[3 (28 February 2006)]&] +[s0; &] +[s0; [* Library]&] +[s0;* &] +[s0;i150;O0; New Report package.&] +[s0;i150;O0; Fixed multi`-threading issues in Linux.&] +[s0; &] +[s0; [* TheIDE]&] +[s0; &] +[s0;i150;O0; Assist`+`+&] +[s0;l160;i150;O2; Fixed many C`+`+ parsing issues and optimized&] +[s0;l160;i150;O2; `"Virtual methods`" tool&] +[s0;l160;i150;O2; `"THISBACKs`" tool&] +[s0;i150;O0; `"Generate code..`" tool of Layout designer able to generate useful code snippets&] -[s0;i150;O0;%% `"Show opposite`" (Alt`+O) switches .h/.cpp files&] -[s0;i150;O0;%% `"Complete identifier`" (Alt`+,) `- based on identifiers +[s0;i150;O0; `"Show opposite`" (Alt`+O) switches .h/.cpp files&] +[s0;i150;O0; `"Complete identifier`" (Alt`+,) `- based on identifiers in the file (no C`+`+ parsing intelligence)&] -[s0;i150;O0;%% Fixed support for global variables in PDB debugger&] -[s0;i150;O0;%% Package organizer redesigned, `"When`" conditions -now support logical operators, `"uses`" can be conditional&] -[s0;i150;O0;%% New fine`-grained optimization system with `"Optimize +[s0;i150;O0; Fixed support for global variables in PDB debugger&] +[s0;i150;O0; Package organizer redesigned, `"When`" conditions now +support logical operators, `"uses`" can be conditional&] +[s0;i150;O0; New fine`-grained optimization system with `"Optimize for speed`" / `"Optimize for size`" / `"Optimal`" (only explicitly marked files are optimized for speed) modes&] -[s0;i150;O0;%% New TheIDE command`-line mode, including compilation +[s0;i150;O0; New TheIDE command`-line mode, including compilation (via umk utility)&] -[s0;*_3%% &] -[s0;*_3%% &] -[s3;%% 511[3 (20 November 2005)]&] -[s0;%% &] -[s0;%% [* U`+`+ Library]&] -[s0;%% &] -[s0;i150;O0;%% New XML support in Core&] -[s0;i150;O0;%% Linux/AMD64 is now supported&] -[s0;i150;O0;%% X11 fixes improve stability with less common window +[s0;*_3 &] +[s0;*_3 &] +[s3; 511[3 (20 November 2005)]&] +[s0; &] +[s0; [* U`+`+ Library]&] +[s0; &] +[s0;i150;O0; New XML support in Core&] +[s0;i150;O0; Linux/AMD64 is now supported&] +[s0;i150;O0; X11 fixes improve stability with less common window managers, input method problem fixed as well&] -[s0;i150;O0;%% New kind of callbacks `- pteback `- to avoid dangling +[s0;i150;O0; New kind of callbacks `- pteback `- to avoid dangling callback situation problem&] -[s0;i150;O0;%% Sqlite was added as source`-based plugin together -with U`+`+ adapter&] -[s0;i150;O0;%% A lot of new documentation&] -[s0;%% &] -[s0;%% [* TheIDE]&] -[s0;%% &] -[s0;i150;O0;%% File tabs are redesigned&] -[s0;i150;O0;%% Source editor has now scripting language&] -[s0;i150;O0;%% `"Calculator`" console&] -[s0;i150;O0;%% Layout of IDE now redesigned, bottom pane now contains +[s0;i150;O0; Sqlite was added as source`-based plugin together with +U`+`+ adapter&] +[s0;i150;O0; A lot of new documentation&] +[s0; &] +[s0; [* TheIDE]&] +[s0; &] +[s0;i150;O0; File tabs are redesigned&] +[s0;i150;O0; Source editor has now scripting language&] +[s0;i150;O0; `"Calculator`" console&] +[s0;i150;O0; Layout of IDE now redesigned, bottom pane now contains browser/console/debugger/calculator switched by tabs&] -[s0;i150;O0;%% ASSIST`+`+:&] -[s0;l192;i150;O2;%% Improved C`+`+ code analysis now able to resolve +[s0;i150;O0; ASSIST`+`+:&] +[s0;l192;i150;O2; Improved C`+`+ code analysis now able to resolve class hierarchy issues, code browser now displays base classes, methods, virtual methods, overrides etc...&] -[s0;l192;i150;O2;%% New assist function now suggests list of methods +[s0;l192;i150;O2; New assist function now suggests list of methods and attributes after typing `'`->`' or `'.`' or after Ctrl`+Space.&] -[s0;l192;i150;O2;%% Navigate in the file and Navigate functions simplify +[s0;l192;i150;O2; Navigate in the file and Navigate functions simplify moving to symbol with specified name&] -[s0;l192;i150;O2;%% Copy definition/declaration is able to convert +[s0;l192;i150;O2; Copy definition/declaration is able to convert method declaration (inside class declaration) to definition and back (works with more than one method as well)&] -[s0;l192;i150;O2;%% Goto definition/declaration moves between definitions +[s0;l192;i150;O2; Goto definition/declaration moves between definitions and declarations of current method&] -[s0;%% &] -[s0;%% [* Distribution]&] -[s0;%% &] -[s0;i150;O0;%% U`+`+/Win now ships with SDL library and contains -nice SDLExample as well as SDL project templates.&] -[s5;^topic`:`/`/uppweb`/www`/RoadmapHistorical`$en`-us^%% ]] \ No newline at end of file +[s0; &] +[s0; [* Distribution]&] +[s0; &] +[s0;i150;O0; U`+`+/Win now ships with SDL library and contains nice +SDLExample as well as SDL project templates.&] +[s5;^topic`:`/`/uppweb`/www`/RoadmapHistorical`$en`-us^ ]] \ No newline at end of file diff --git a/uppbox/uppweb/www.tpp/Roadmap_en-us.tppi b/uppbox/uppweb/www.tpp/Roadmap_en-us.tppi index b04f4eca6..99a89dc37 100644 --- a/uppbox/uppweb/www.tpp/Roadmap_en-us.tppi +++ b/uppbox/uppweb/www.tpp/Roadmap_en-us.tppi @@ -1,118 +1,118 @@ TITLE("Roadmap") COMPRESSED -120,156,180,125,9,99,219,70,146,238,95,193,58,51,99,202,67,145,226,161,211,187,179,171,211,86,34,217,138,40,39,217,241,106,12,144,4,37,68,32,193,0,160,14,191,125,243,219,95,125,85,213,141,6,9,72,78,118,223,30,49,69,2,221,141,70,119,117,29,95,125,245,57,238,238,236,188,141,58,157,238,198,219,160,179,253,246,227,238,219,127,254,243,159,173,78,127,99,231,109,215,251,211,159,58,205,141,239,58,27,253,94,167,219,161,239,54,250,221,237,206,230,238,198,238,230,78,103,103,163,183,221,239,110,110,111,108,238,205,131,52,152,94,127,14,118,122,111,223,92,110,209,93,221,230,230,119,189,78,175,179,209,217,234,246,233,170,141,222,70,183,223,233,110,118,118,118,250,157,237,205,157,222,238,214,214,222,40,152,231,81,50,187,254,252,126,231,237,16,183,246,233,206,30,221,185,177,189,179,213,239,208,125,253,205,110,111,123,179,79,247,247,251,52,194,30,245,189,189,181,189,189,151,71,121,28,94,127,142,48,116,26,240,33,6,218,111,110,125,71,3,236,110,211,157,253, -110,127,171,223,219,233,246,58,59,221,238,214,110,175,191,219,167,145,119,186,123,81,30,210,56,231,183,184,97,147,122,234,111,246,59,189,13,122,172,237,205,30,93,176,77,255,246,55,118,59,93,234,110,103,99,115,147,122,10,31,243,235,207,60,71,67,154,29,204,16,238,221,162,206,186,219,155,184,99,167,191,211,233,109,239,116,251,221,173,46,117,191,177,77,79,137,190,55,247,198,97,54,162,123,123,221,206,219,156,6,244,246,240,63,54,223,118,232,230,237,230,246,119,221,141,221,141,238,214,246,46,117,74,67,165,167,237,237,238,118,122,59,212,105,191,179,185,209,233,237,141,146,49,61,225,176,187,185,209,227,30,119,232,61,108,81,203,60,33,155,91,29,26,116,183,183,67,93,110,119,122,61,250,239,102,127,103,123,47,11,241,38,242,36,189,254,252,230,203,127,52,54,90,27,173,238,230,230,26,238,223,165,251,119,122,253,94,175,191,181,219,239,108,244,168,31,106,164,143,233,218,218,160,151,217,217,236,238,236,13,131,140,58,205,233,171,109,153,212,206,6,221,70,211,222,219, -217,236,81,223,91,244,31,122,171,244,132,61,154,160,238,110,127,167,215,219,217,216,27,197,65,150,233,44,97,134,222,224,41,59,157,102,167,243,221,54,38,119,179,215,237,239,98,118,122,93,154,229,238,214,230,110,135,166,121,115,171,191,209,221,75,195,223,22,81,26,78,195,25,205,115,68,139,227,237,176,223,125,27,208,255,235,74,164,193,200,66,236,54,59,93,90,138,155,91,91,27,152,176,77,90,11,221,222,38,205,248,70,103,167,79,35,162,255,165,55,156,235,90,28,22,207,208,107,118,122,223,237,118,251,61,26,201,110,191,79,51,64,13,116,118,59,157,206,198,14,253,47,61,25,205,11,47,141,142,174,41,237,94,110,239,55,59,253,239,182,105,17,211,171,218,237,163,251,221,30,230,175,75,243,223,221,218,216,164,23,209,149,219,187,52,237,255,209,253,19,205,123,167,187,131,255,231,153,239,108,54,59,180,27,104,136,157,205,77,122,238,30,77,117,119,135,158,125,147,230,190,199,171,187,179,189,179,247,33,124,200,142,130,60,212,21,243,230,240,79,178,212,58,91,205,206, -214,119,27,184,127,115,103,151,94,96,167,143,249,235,245,251,187,221,221,94,111,179,187,187,217,219,218,160,121,204,22,113,174,55,99,55,241,102,180,141,108,55,59,219,180,175,232,89,55,55,233,233,249,54,122,242,237,14,134,210,221,217,221,194,44,104,35,254,122,28,205,48,14,90,25,111,101,49,188,57,252,107,167,179,141,134,118,104,215,236,236,108,109,244,118,105,50,104,14,54,54,105,169,147,56,216,161,23,77,239,185,75,251,0,242,96,116,23,220,132,254,186,110,84,30,2,86,224,102,111,115,7,11,151,238,164,161,211,32,168,157,221,141,141,45,250,102,103,135,182,211,222,77,48,47,45,192,238,70,179,187,65,171,136,164,207,38,237,74,234,139,150,223,198,46,36,9,9,5,122,3,36,136,118,55,101,5,250,235,179,48,203,195,49,189,252,205,13,126,236,110,167,217,237,208,220,209,250,219,220,220,233,247,183,104,188,212,247,54,4,19,94,33,237,224,205,237,222,222,69,144,98,193,116,55,223,6,152,121,190,179,219,236,118,191,219,238,238,111,110,31,109,31,244,72,22, -209,114,135,56,217,56,57,56,232,118,14,104,47,108,111,110,236,101,139,161,62,98,76,75,198,172,220,249,237,71,237,191,215,236,246,190,235,119,15,119,142,143,54,119,246,59,39,199,155,39,251,7,27,39,135,199,251,180,210,251,91,7,39,39,155,244,238,230,73,132,213,207,50,240,11,223,215,111,118,251,223,157,244,251,39,91,91,199,251,27,7,71,221,237,195,173,206,241,254,225,254,225,65,247,136,26,219,217,217,39,177,155,134,113,200,59,22,247,96,167,110,188,240,63,123,71,225,36,224,101,242,127,190,252,95,239,115,214,125,251,231,63,123,151,210,138,119,27,101,36,57,158,254,114,253,57,235,225,251,46,173,208,86,199,107,164,225,125,203,235,108,111,239,238,174,121,141,243,32,229,31,214,112,217,38,46,251,252,166,237,29,46,210,148,54,176,151,229,193,48,14,61,51,46,185,230,77,155,174,194,199,141,183,116,177,119,152,164,242,203,198,219,55,250,117,68,34,239,45,77,153,119,58,243,46,146,44,122,244,90,113,114,227,77,162,56,204,188,105,114,31,142,189,60,193,119, -163,32,110,83,31,121,216,94,248,127,245,255,218,166,171,150,90,56,11,211,185,71,91,113,30,211,85,153,23,204,198,222,100,49,27,225,156,201,188,73,146,122,88,218,244,12,52,225,116,101,66,87,209,47,75,109,156,36,233,52,200,79,103,249,1,166,101,116,27,204,110,100,4,15,73,122,231,61,68,249,45,110,223,234,211,127,105,185,5,99,47,153,224,139,165,86,142,130,244,238,234,150,4,155,29,128,23,140,127,93,96,129,162,173,97,152,211,8,188,81,50,187,15,211,220,139,147,7,47,94,76,163,25,61,126,254,68,95,199,73,154,45,181,72,18,194,219,63,196,47,252,92,3,249,152,63,205,241,160,49,90,200,34,122,240,104,18,81,23,210,23,196,170,60,247,152,134,67,115,57,14,189,135,219,112,230,165,139,89,30,209,216,114,30,97,70,15,53,186,245,110,131,249,60,156,101,173,165,126,207,233,13,240,123,165,233,142,70,238,132,80,119,41,253,72,79,63,74,168,231,48,15,121,56,212,208,108,76,19,189,252,114,14,19,234,245,32,162,17,181,139,207,52,143,118,130, -26,139,140,238,242,230,201,124,68,171,9,211,155,46,248,151,181,165,150,102,52,21,147,56,184,57,59,126,183,127,248,159,254,151,195,139,79,24,79,182,152,207,19,154,205,52,164,249,120,242,146,120,236,209,47,58,143,238,26,204,211,248,44,26,54,249,195,115,11,242,82,167,41,187,139,102,250,224,203,111,229,116,54,73,208,140,191,183,119,22,78,242,191,183,47,163,155,219,252,239,94,70,139,149,102,105,26,230,183,201,120,249,166,253,241,56,194,115,5,177,183,63,139,104,181,133,75,203,52,224,111,49,39,180,184,30,162,241,77,72,179,70,223,223,132,179,48,165,187,210,112,148,211,104,226,149,225,252,76,111,23,227,248,52,247,194,123,236,201,96,60,150,151,117,148,140,142,169,215,246,25,237,0,254,112,25,141,110,241,97,169,133,119,218,5,61,238,148,54,50,13,33,78,146,59,243,174,101,69,209,108,80,51,139,199,246,207,209,108,156,60,100,237,243,96,244,113,176,252,144,88,147,216,6,135,9,237,54,126,161,178,176,189,140,218,149,55,110,30,45,187,165,86,116,217,155, -77,65,195,230,205,86,236,164,104,226,172,227,136,86,61,53,114,31,46,111,147,104,68,27,139,6,214,233,120,227,40,128,36,137,168,197,229,137,58,126,156,135,105,132,199,161,103,253,57,120,138,177,167,204,2,106,208,190,72,185,139,25,109,43,243,107,194,250,42,30,131,126,142,104,8,89,152,47,230,107,43,203,203,76,236,117,233,23,219,243,32,164,253,30,100,57,102,56,165,71,160,209,78,88,228,208,91,74,226,101,97,68,19,236,205,73,6,71,201,34,243,134,139,60,151,17,240,247,242,120,21,43,128,100,231,108,220,78,67,18,131,163,208,206,2,173,32,218,223,222,49,100,159,119,23,62,121,227,132,101,100,130,167,229,91,150,154,186,8,211,140,78,5,154,35,116,119,169,205,97,74,198,114,144,120,147,32,206,150,95,0,239,134,191,30,198,209,232,142,175,69,167,153,119,155,231,115,150,91,248,144,65,14,223,45,191,146,191,39,201,20,251,223,93,106,203,35,138,30,195,248,28,175,223,95,247,178,121,56,162,71,179,98,13,111,108,74,122,7,61,83,238,145,134,252,103, -47,160,175,230,184,197,163,151,61,161,53,183,44,219,150,215,104,211,115,23,44,245,49,142,50,122,234,39,150,176,127,112,125,54,189,112,130,190,233,35,164,18,139,234,76,46,156,7,52,46,188,78,123,91,107,85,88,145,124,106,15,6,239,107,86,83,28,13,179,140,12,154,197,252,38,13,116,171,223,227,189,209,58,233,180,58,29,28,225,48,55,86,151,41,173,224,166,183,152,222,213,9,63,57,138,233,97,39,209,141,217,10,65,252,128,201,144,45,224,101,1,142,55,18,179,244,16,173,86,171,45,219,162,221,106,137,12,163,25,187,15,210,40,128,196,32,49,166,155,6,107,128,122,165,61,70,2,251,22,111,200,54,213,162,203,249,247,214,112,42,199,255,178,224,31,46,162,24,251,33,25,133,25,15,131,246,121,175,43,67,91,228,9,100,230,136,101,255,156,86,31,41,15,36,71,39,164,20,182,30,167,177,55,73,147,169,167,170,105,134,179,102,193,87,242,215,230,32,88,227,238,233,28,164,213,43,242,23,178,131,191,28,209,169,2,157,162,149,142,120,108,229,14,151,15,14, -21,1,153,35,45,48,72,35,96,248,125,243,225,187,116,227,247,89,50,107,255,66,163,189,143,194,7,154,86,86,122,232,20,153,45,150,46,12,22,143,197,195,160,233,219,128,78,226,203,16,250,18,79,61,238,161,183,55,165,57,88,222,215,195,233,187,211,43,255,203,193,229,254,135,195,247,24,161,76,107,68,71,217,210,149,180,174,29,177,71,242,46,167,13,154,97,141,137,198,17,140,248,69,240,241,242,48,139,147,96,156,153,5,209,48,50,34,153,76,60,186,159,143,8,92,9,105,134,221,37,95,4,56,91,111,120,13,208,94,152,70,89,86,113,222,15,72,103,27,65,237,82,165,16,231,63,89,230,97,138,19,148,180,143,120,49,86,109,111,164,170,40,217,3,225,116,8,37,128,71,191,44,71,252,87,23,100,236,240,49,4,25,224,191,114,158,210,222,202,226,125,249,116,140,114,163,41,99,77,243,66,224,23,203,7,216,48,14,86,222,104,213,29,135,201,252,201,123,31,100,183,42,209,151,53,46,154,182,8,154,42,30,39,163,173,212,216,39,179,236,175,131,219,104,66,255, -96,166,89,219,201,131,52,95,158,169,211,89,6,125,50,35,179,58,156,145,176,174,56,82,246,205,186,245,204,74,230,165,205,10,24,11,52,90,254,197,178,55,91,104,185,163,139,163,3,58,5,134,139,155,27,122,215,152,129,81,48,243,22,164,48,31,103,35,82,126,210,104,174,154,39,189,238,156,84,218,121,74,58,242,170,78,248,56,193,32,241,226,241,42,205,246,144,181,182,50,249,161,123,102,223,196,89,60,42,78,236,44,12,73,6,82,167,121,251,126,17,223,5,43,107,168,116,243,225,167,163,125,115,239,138,96,196,194,204,106,196,237,9,157,38,99,111,63,195,185,72,66,49,91,172,104,96,114,5,173,199,187,60,153,235,102,32,113,19,182,110,90,164,91,229,102,159,156,200,46,49,106,223,242,104,207,3,154,3,222,194,19,28,164,97,106,182,141,218,43,108,123,149,62,24,163,173,223,234,56,102,91,127,119,131,204,182,163,112,196,63,105,47,142,73,198,22,156,107,148,217,95,204,80,232,139,147,40,205,114,99,214,97,17,127,130,249,69,123,54,192,183,236,192,201,188, -67,124,215,217,94,185,217,154,15,180,162,70,225,28,119,208,228,68,55,51,115,126,234,141,222,132,22,225,130,90,106,105,243,114,222,240,97,57,75,102,254,250,212,52,36,38,15,27,81,30,246,85,8,209,229,253,68,123,153,150,27,153,5,247,244,15,13,146,250,203,105,22,121,246,197,176,248,52,159,147,154,30,101,254,23,122,243,254,151,155,5,214,117,203,187,248,120,148,177,170,80,62,66,108,127,141,224,46,240,242,52,186,143,248,123,154,7,18,202,108,234,174,173,60,173,116,113,181,152,199,37,129,79,26,46,219,50,11,12,118,72,202,212,202,78,160,123,105,117,156,208,118,188,162,69,218,52,127,156,133,179,155,252,182,233,225,243,241,35,45,186,140,84,148,40,229,103,125,146,47,120,155,226,247,115,218,184,120,204,148,4,239,136,231,101,165,139,65,78,91,125,74,35,164,230,73,238,241,16,163,217,125,114,71,19,122,70,171,242,56,77,49,121,51,146,176,55,1,52,22,154,197,197,178,109,75,237,252,20,196,139,240,48,24,145,212,142,163,41,206,57,61,27,140,193,195, -243,89,216,163,213,13,136,42,201,79,3,113,107,166,202,127,61,161,29,146,251,175,249,77,175,62,67,194,170,214,4,102,178,30,171,83,210,124,232,125,81,151,188,152,60,54,71,161,120,232,190,83,181,69,86,193,52,156,142,72,252,66,54,45,72,232,200,74,28,211,11,93,125,155,251,217,47,231,103,116,178,142,249,196,161,207,254,151,227,193,225,254,197,241,217,201,210,110,145,125,116,148,6,15,207,236,163,79,239,143,68,67,181,2,147,132,53,142,107,154,190,100,145,142,66,30,212,64,47,90,185,29,14,128,65,207,107,69,164,30,72,51,176,129,161,165,226,244,52,170,47,77,194,152,134,49,195,124,210,218,15,96,152,143,189,222,35,233,122,170,241,96,215,37,11,58,35,73,154,208,243,7,152,149,38,175,162,100,22,195,42,120,152,153,219,176,193,197,6,22,89,51,79,172,216,225,143,244,204,23,1,59,83,174,87,46,224,145,207,19,149,2,56,210,242,91,90,125,208,81,233,136,38,225,135,151,49,89,164,108,125,224,248,165,195,95,86,202,210,189,120,110,125,222,40,206, -229,62,118,243,134,48,100,96,8,36,100,136,164,77,167,89,185,252,33,200,204,171,103,73,51,140,212,253,99,219,105,242,139,45,26,83,121,35,22,209,169,211,39,45,243,187,208,59,11,102,163,175,73,230,245,106,103,163,228,81,168,159,142,247,73,26,125,77,248,40,154,38,56,53,233,196,76,104,63,146,21,19,198,238,193,180,116,31,154,199,54,215,51,23,118,82,4,213,135,108,44,118,252,55,214,26,184,164,233,93,53,33,255,72,106,95,249,127,241,68,28,172,241,234,226,61,73,71,229,140,212,18,49,100,50,163,31,45,245,117,147,223,121,67,210,48,105,82,75,38,89,211,251,197,88,196,50,118,85,82,72,23,96,23,89,144,146,200,24,63,59,67,103,209,240,133,9,250,255,252,160,21,227,34,85,247,244,232,248,133,97,157,66,45,58,146,227,43,117,4,173,103,252,3,188,134,101,85,65,245,202,196,255,210,196,190,229,205,106,244,21,254,186,162,3,40,122,235,231,252,204,55,137,156,114,198,204,165,37,18,228,163,219,57,73,35,214,218,196,164,18,203,137,221,110,180, -218,201,76,51,26,48,174,105,210,21,17,127,123,27,198,243,201,34,246,88,28,98,122,224,36,77,210,128,148,82,28,161,216,51,120,132,16,126,41,217,94,98,180,21,194,38,147,243,94,13,182,25,203,216,36,19,131,19,227,152,176,6,199,151,182,42,30,236,227,34,159,147,204,25,155,179,171,164,105,147,169,16,205,216,35,102,37,35,157,237,113,56,201,61,26,38,105,143,24,155,218,19,60,39,36,71,200,80,226,211,121,30,228,183,85,29,190,15,31,73,214,140,104,64,98,76,25,19,118,186,32,75,98,18,100,180,169,43,238,18,237,205,72,165,81,146,226,61,143,160,246,136,206,199,199,11,173,70,234,121,90,181,105,206,130,39,136,214,177,89,34,8,32,210,212,132,241,24,242,215,168,60,252,22,206,130,97,24,211,110,18,227,45,243,126,204,39,198,193,67,79,136,55,33,119,243,29,174,179,110,169,75,24,24,188,32,140,149,81,44,158,91,218,138,55,183,144,139,180,72,170,134,123,72,47,17,111,148,251,96,117,83,148,22,210,234,161,89,136,181,69,111,202,104,173,198, -184,163,181,93,37,228,161,180,170,81,170,142,131,69,42,150,133,241,65,137,28,169,90,249,106,227,153,49,195,132,213,245,17,133,203,187,214,156,183,243,120,113,19,205,218,127,143,230,215,21,45,126,141,230,91,253,178,48,173,216,247,210,198,181,113,160,100,245,199,183,246,150,253,22,71,121,216,219,243,122,173,254,86,107,163,162,99,189,48,254,58,13,246,60,82,200,183,234,175,249,154,229,227,61,175,211,218,124,246,34,92,209,107,117,234,175,152,207,110,112,205,22,141,168,254,162,60,154,236,121,52,154,231,198,252,235,60,164,150,118,39,149,107,37,13,247,188,179,191,247,169,163,221,86,191,118,66,217,37,179,44,71,75,19,249,113,30,206,6,131,179,146,207,170,215,234,86,62,224,33,29,52,55,44,108,104,45,166,165,91,58,59,100,234,108,62,111,13,81,179,214,22,218,232,111,146,45,244,145,76,126,252,176,182,170,193,93,169,176,52,150,78,132,240,83,6,221,116,146,140,120,247,194,67,192,75,24,66,82,78,12,146,14,243,0,154,69,78,235,180,85,26,4,199,60,210, -176,218,146,60,188,8,82,82,255,72,23,191,36,165,232,40,89,144,72,249,144,28,179,95,140,100,7,148,217,99,150,195,16,195,99,254,121,217,72,44,55,113,58,190,85,3,222,127,237,175,147,246,76,155,49,26,47,249,253,160,161,54,205,25,92,227,159,206,199,71,226,245,244,26,209,196,92,139,201,152,195,103,50,203,215,202,150,141,255,95,29,239,55,146,93,97,70,51,17,178,82,94,238,211,200,174,38,127,186,34,153,86,221,177,255,234,2,98,217,234,167,226,21,199,121,228,191,90,126,242,56,154,15,147,32,29,211,179,190,191,34,29,93,174,165,135,46,25,245,78,80,35,191,136,73,58,161,115,81,242,252,47,100,193,101,133,234,247,214,62,232,69,74,139,45,151,103,36,83,3,202,47,76,135,16,134,137,255,95,108,150,208,161,44,80,11,58,11,197,182,13,227,120,37,112,118,60,195,92,240,240,200,250,35,253,17,15,85,233,116,136,198,53,139,4,170,175,152,52,98,32,64,24,143,195,71,218,8,83,117,130,107,108,32,136,159,72,133,159,64,83,13,3,28,112,236, -215,225,136,85,147,101,233,56,156,67,59,30,171,76,127,128,183,60,13,165,181,113,139,214,114,128,133,150,35,54,200,40,0,49,170,73,107,122,34,221,33,184,127,66,36,205,227,35,192,233,229,22,234,124,170,253,180,16,191,133,38,0,229,7,195,107,138,61,129,175,76,208,144,135,69,43,105,24,138,161,170,253,227,65,30,110,241,91,12,119,98,48,26,225,220,8,155,28,201,179,199,173,248,82,163,204,118,32,70,59,89,213,98,151,243,95,80,86,115,50,8,97,209,66,207,225,227,158,77,67,122,174,57,41,128,48,106,197,23,196,14,50,177,9,197,69,187,18,249,12,102,79,198,215,35,170,0,52,1,28,139,143,203,38,173,119,201,179,70,102,66,38,138,19,7,104,56,80,19,171,107,242,83,102,44,63,118,213,250,175,52,160,226,191,50,199,62,77,1,13,182,136,22,60,121,195,84,252,173,183,184,94,142,113,254,3,142,160,252,137,238,52,254,35,178,227,72,77,18,107,151,245,35,190,84,140,241,38,199,118,60,88,233,50,6,140,134,117,56,104,239,58,138,101,217,114, -144,208,144,224,47,159,137,29,229,120,109,120,255,176,241,134,249,197,212,214,61,108,234,76,74,229,228,46,71,21,213,12,30,177,90,146,85,58,110,7,183,80,111,86,157,170,52,25,142,199,8,67,27,221,38,9,191,221,97,74,118,219,237,138,167,206,127,229,170,63,122,255,146,238,195,242,212,170,217,60,169,28,48,16,11,145,246,178,7,208,73,125,203,70,223,165,179,161,60,64,121,196,40,227,32,40,245,113,195,102,202,116,186,18,143,253,137,174,66,236,239,65,66,173,98,136,22,119,139,197,143,134,213,73,54,14,98,218,137,185,81,119,121,69,144,162,158,69,236,58,75,36,6,56,133,57,14,243,136,127,182,14,165,242,168,184,191,229,183,22,166,88,196,50,67,38,110,127,147,144,80,229,35,240,201,26,44,19,250,24,208,181,185,170,140,212,139,198,3,76,116,12,163,163,171,253,87,17,44,145,156,166,199,198,51,56,12,0,51,126,166,166,5,252,143,232,212,189,33,28,211,45,217,98,168,42,169,154,67,197,181,45,142,94,208,182,14,208,27,221,40,17,28,90,158,78, -116,96,226,54,30,232,46,169,233,129,154,224,157,107,126,44,198,203,2,161,169,34,44,203,35,232,174,102,147,96,80,139,204,154,107,44,81,121,49,21,119,243,130,74,163,27,241,129,171,160,23,87,188,6,103,205,128,151,55,209,79,17,124,58,75,230,57,220,76,198,220,69,183,83,222,105,21,49,112,57,89,206,72,52,47,176,91,179,156,38,0,103,42,71,239,68,236,137,68,145,11,59,219,107,108,154,225,197,193,245,202,225,19,57,39,84,72,86,57,237,79,16,39,26,210,212,115,156,71,3,82,25,148,178,124,145,206,154,242,19,27,241,116,210,47,72,230,211,106,74,240,183,255,197,92,2,155,224,97,173,16,157,178,192,162,145,151,61,205,242,224,145,36,193,205,109,12,216,197,106,124,65,117,52,113,52,106,40,151,142,97,127,61,153,248,235,115,246,239,232,42,110,51,136,76,143,180,172,188,244,56,22,67,51,9,163,44,73,91,86,81,52,86,53,38,236,183,5,2,222,216,233,52,38,1,55,64,196,254,186,152,206,101,41,211,242,137,19,118,121,233,182,25,38,227,149, -23,122,108,162,90,138,54,225,166,53,232,5,185,167,94,86,122,221,112,141,44,104,139,2,11,146,164,152,81,3,19,160,117,205,63,24,1,9,241,29,147,30,43,3,226,35,24,95,225,97,160,210,46,242,12,225,73,160,152,24,211,80,25,129,163,83,34,193,116,143,88,80,205,23,177,134,221,29,52,144,255,106,10,225,64,91,166,193,43,26,7,22,16,165,254,171,229,198,196,191,127,128,160,163,250,119,216,1,64,207,168,145,201,247,251,131,247,170,203,178,164,71,164,172,180,85,51,239,253,241,254,81,19,17,247,136,69,29,46,75,105,140,107,203,19,250,185,45,209,54,110,108,176,186,94,174,237,251,40,171,100,139,233,93,141,150,186,126,107,130,133,8,131,150,66,6,99,99,38,27,1,86,222,227,159,230,243,247,139,33,6,109,4,114,185,79,182,156,246,170,187,53,54,19,102,171,100,4,33,220,243,80,99,251,216,56,208,214,78,127,155,225,123,79,245,182,143,40,110,198,246,81,205,3,26,176,44,219,224,33,224,245,82,132,105,246,51,239,41,89,208,179,210,76,122,192, -240,78,135,130,101,225,157,195,16,23,211,218,3,116,1,133,242,33,164,28,195,157,67,235,117,20,160,201,56,26,178,39,138,15,109,172,170,66,243,183,74,165,113,107,153,22,139,75,88,159,164,121,246,176,216,216,68,27,193,102,244,215,229,18,26,103,156,37,70,16,192,209,194,199,149,117,171,169,103,130,247,6,30,7,18,78,208,115,110,31,52,211,244,35,45,214,48,28,211,163,159,148,122,15,238,131,40,102,59,96,1,7,52,173,124,117,22,189,162,213,242,55,214,244,212,62,121,197,78,150,214,234,244,79,57,24,174,198,65,211,122,231,34,142,55,201,196,193,183,98,128,64,58,11,77,243,236,45,239,35,13,238,226,227,224,244,23,198,205,209,106,84,248,130,200,141,197,44,194,137,16,196,16,172,247,226,35,103,4,87,211,59,24,28,137,202,198,241,248,166,42,161,211,48,152,169,199,207,206,204,98,134,229,140,13,71,13,203,128,241,53,79,85,186,152,121,173,182,118,173,241,95,76,154,221,17,142,13,50,27,69,161,9,198,144,244,127,224,222,5,130,0,96,136,106,167, -16,70,220,52,43,60,64,194,241,73,40,207,8,124,39,166,52,51,170,14,43,46,57,235,56,188,211,127,217,217,242,191,108,245,185,177,253,57,52,157,253,203,115,70,3,86,76,254,169,105,156,54,0,157,159,180,28,121,5,233,130,114,28,127,88,61,195,144,166,3,154,48,78,160,96,198,145,171,156,181,159,175,234,7,230,61,227,184,14,11,21,141,245,132,138,1,188,15,230,115,14,103,97,74,120,252,34,34,209,154,44,220,127,241,126,22,115,231,38,14,198,242,94,48,247,112,112,170,32,200,161,10,211,34,200,200,138,123,160,43,255,101,181,155,194,25,81,229,149,17,60,6,205,165,174,66,60,205,13,217,204,111,117,206,5,13,128,107,116,245,21,207,197,130,159,71,129,151,10,108,76,58,186,93,129,230,81,31,191,116,58,54,166,160,62,157,76,122,169,148,72,244,224,245,227,45,237,114,70,244,222,164,21,120,94,186,82,117,25,134,39,71,95,171,175,97,71,183,68,124,10,120,34,162,130,88,4,14,140,162,52,159,174,27,165,114,74,105,179,15,131,212,123,119,245,131, -46,166,44,127,2,50,182,88,73,174,71,180,220,186,43,202,187,173,158,21,229,91,91,78,72,191,187,102,28,109,54,168,191,244,135,202,118,122,99,188,186,196,114,84,41,189,228,235,138,116,2,249,87,172,165,91,90,201,55,41,240,38,162,1,206,217,223,132,247,76,143,205,158,185,66,23,130,144,166,17,38,241,130,237,81,24,19,172,27,24,77,10,10,30,188,47,116,142,195,130,163,78,159,84,47,31,135,100,235,38,115,17,253,188,250,209,183,121,161,12,166,224,11,160,222,210,248,239,163,52,153,241,103,89,33,36,2,38,188,25,176,26,39,193,148,118,34,77,185,180,195,10,134,140,186,201,215,60,68,28,245,166,3,155,218,53,58,22,36,107,76,82,53,154,78,73,41,162,46,73,209,246,78,10,51,143,38,10,103,225,67,168,33,158,175,12,236,157,138,193,52,203,72,195,227,89,99,15,225,80,118,161,2,91,113,248,196,46,158,44,99,117,141,23,254,184,48,46,73,238,192,254,48,184,61,139,176,224,209,14,197,228,31,134,51,82,146,232,200,130,45,41,214,4,228,158, -186,94,78,36,98,1,107,188,41,167,237,132,206,232,219,208,200,15,255,117,230,237,207,198,105,18,141,141,222,165,174,18,61,33,216,139,41,81,37,22,197,88,43,116,3,233,179,140,183,251,21,72,41,235,43,241,24,94,47,128,85,127,157,198,16,205,84,197,121,151,36,180,255,203,110,80,254,64,226,235,33,89,196,99,17,231,28,51,10,102,119,124,44,80,151,152,178,96,26,124,21,19,97,150,167,209,144,20,171,84,14,38,154,215,52,35,1,168,110,65,62,135,161,121,227,57,185,205,153,255,58,199,52,233,74,19,152,234,131,200,203,156,12,226,39,209,1,154,98,9,113,199,188,240,208,144,234,100,165,78,31,110,113,112,145,142,112,3,139,209,251,53,25,182,188,255,228,33,22,184,109,171,217,161,19,117,147,137,49,128,33,67,77,8,199,118,31,241,19,168,220,159,223,190,177,187,124,126,43,46,243,34,7,67,21,211,236,122,105,6,227,78,119,199,149,44,239,171,119,38,205,128,42,58,188,181,121,38,116,157,153,29,171,78,25,53,175,103,122,252,26,49,228,158,118,70, -211,171,30,193,71,19,237,172,218,10,206,10,150,125,80,221,134,28,39,102,217,243,74,180,26,158,14,91,132,159,232,55,83,142,47,165,17,45,202,220,8,143,152,100,67,10,169,45,145,206,25,135,122,103,226,219,163,171,19,49,220,88,27,126,180,7,151,21,25,15,192,136,80,43,48,208,101,192,86,181,153,203,43,193,47,60,134,174,201,247,168,88,220,54,124,188,119,93,253,160,192,220,217,28,9,222,110,73,170,176,23,132,204,89,4,33,212,160,250,66,35,124,100,168,20,22,180,38,179,192,90,164,141,111,244,179,40,43,212,20,70,224,4,22,69,182,218,251,33,227,100,130,251,232,6,161,243,229,176,117,57,38,183,124,175,99,64,11,198,81,214,91,8,160,80,166,30,15,19,53,86,215,197,55,54,4,184,105,170,89,14,121,52,167,157,52,196,246,166,193,144,216,159,146,177,57,29,34,128,110,213,79,122,31,247,161,66,14,160,195,66,120,53,198,201,104,49,181,22,55,89,86,86,23,111,66,57,138,3,61,209,160,176,241,106,198,53,180,202,106,102,10,254,118,107,159, -251,175,216,139,9,31,16,15,24,178,106,145,241,166,7,188,204,36,61,241,56,75,113,75,35,47,141,43,199,26,38,135,170,213,5,241,19,237,178,22,139,52,143,206,51,120,176,13,114,170,137,231,42,58,196,147,166,2,125,152,112,67,158,248,41,228,234,154,125,165,146,222,154,216,48,247,23,243,49,31,166,133,216,95,214,153,29,193,110,26,48,122,182,217,163,36,72,115,190,142,211,98,144,155,146,202,171,167,239,96,230,177,35,66,90,55,187,186,215,171,222,48,159,206,127,168,217,44,244,75,225,172,49,205,152,180,37,27,29,178,145,155,172,178,121,3,196,177,193,174,186,173,121,190,42,189,26,97,54,111,209,146,249,26,38,147,53,55,3,135,207,3,54,201,198,11,8,214,6,157,246,139,57,4,200,246,198,159,215,106,94,6,199,249,15,146,199,146,247,55,228,36,12,188,139,148,205,103,198,161,97,33,215,52,114,18,61,10,220,84,94,21,228,36,4,7,166,126,76,226,79,0,18,41,3,78,141,191,40,97,116,188,241,225,174,120,7,186,69,100,116,171,187,189,81,120, -7,190,81,165,116,116,71,70,177,101,44,158,145,224,144,193,186,166,175,72,199,226,99,18,243,195,29,118,4,162,45,184,204,204,53,162,188,217,130,157,7,52,215,116,224,36,49,219,187,140,174,101,47,110,42,103,57,11,58,40,209,33,171,145,156,5,102,188,17,223,120,160,174,138,70,4,181,79,179,159,104,181,55,6,57,12,227,181,66,2,192,193,115,143,125,0,48,195,66,214,33,166,95,175,103,16,99,173,204,229,104,57,144,190,16,145,108,249,41,102,181,200,35,52,62,8,139,179,16,75,171,141,4,135,246,115,237,30,68,2,119,37,243,61,218,79,83,122,113,135,226,220,230,102,25,16,5,184,105,146,174,108,147,149,246,116,119,216,216,236,79,192,202,152,52,50,206,226,161,45,68,179,153,14,140,89,244,66,67,120,94,186,214,223,219,251,144,28,63,134,128,76,101,38,59,47,69,120,15,254,0,44,92,120,28,249,71,214,28,91,225,99,88,76,4,140,196,27,7,72,246,76,111,143,118,173,232,222,0,214,101,14,21,48,184,153,209,153,26,141,72,170,1,149,83,51, -3,108,244,237,121,3,69,102,97,3,253,173,251,78,243,134,20,250,212,224,139,14,22,147,9,135,219,223,133,185,0,115,121,79,139,155,58,99,129,225,127,169,59,90,16,121,215,225,182,45,82,204,59,137,163,249,169,65,123,174,222,228,34,55,206,163,25,131,153,110,66,50,95,38,19,11,37,187,143,2,156,6,1,140,85,193,193,211,1,79,91,134,52,160,182,94,187,246,7,84,22,58,115,246,216,173,170,174,171,245,57,208,103,158,252,87,141,238,18,182,102,169,117,94,202,53,109,67,154,157,7,179,95,131,52,241,26,239,62,124,106,179,47,106,173,236,186,114,189,69,210,204,155,21,17,86,56,56,187,189,45,18,97,251,164,29,198,207,8,177,223,41,29,228,8,104,60,32,83,111,205,179,230,22,111,228,190,215,232,117,189,97,148,103,107,110,238,233,140,70,126,112,126,1,143,219,72,29,228,146,228,103,86,31,8,6,140,0,21,215,41,187,90,197,107,36,153,180,56,148,21,80,82,88,207,227,80,220,62,136,93,143,232,44,226,65,169,68,233,108,97,32,170,27,150,251, -9,179,145,8,153,248,137,145,222,49,36,245,56,12,98,235,106,146,20,170,6,187,221,18,14,192,35,188,255,152,135,198,39,184,230,237,95,156,146,94,146,37,80,158,216,252,114,44,218,114,119,244,80,227,68,20,130,128,6,164,74,244,232,54,28,137,173,199,111,120,54,18,117,230,231,195,247,251,151,94,227,211,44,58,196,179,152,36,161,53,100,186,34,217,65,158,113,249,121,236,227,48,232,145,20,230,194,188,48,115,91,188,142,91,40,213,50,124,180,69,19,197,86,66,158,38,230,4,95,176,66,99,178,61,105,42,253,117,154,75,79,206,2,77,96,91,91,234,224,19,61,211,85,50,120,34,123,96,138,161,211,129,244,115,147,61,6,229,239,56,234,168,41,222,112,126,176,28,148,249,166,49,233,153,21,119,55,183,228,224,170,94,132,70,48,1,6,68,50,4,163,226,80,47,86,89,177,186,176,80,222,125,58,173,110,226,167,128,81,76,214,200,115,51,79,217,167,206,134,34,251,84,120,161,53,88,219,50,189,57,157,152,184,6,47,28,164,126,48,227,2,183,210,44,53,195, -237,70,140,155,25,215,8,196,51,4,8,202,235,65,102,230,195,224,212,67,60,37,67,30,110,146,1,237,80,56,70,247,215,88,21,80,167,120,141,2,121,117,98,115,208,61,58,68,114,142,45,201,109,37,211,7,110,230,20,174,17,58,51,212,151,191,152,217,132,133,213,134,47,169,97,245,151,8,130,37,208,160,58,247,22,86,190,151,134,222,196,222,33,210,141,70,22,186,164,66,20,7,142,57,124,107,166,234,212,188,184,104,6,16,173,232,254,146,151,66,71,42,67,69,77,74,118,211,195,183,211,32,189,131,152,130,195,45,178,219,170,36,174,87,21,11,94,167,39,72,189,224,201,1,100,75,254,42,30,144,19,51,188,251,76,1,105,232,125,20,101,2,240,156,232,161,83,123,204,234,51,156,92,120,255,138,176,8,15,174,64,102,219,23,85,150,245,229,195,170,206,98,16,39,14,31,198,65,4,11,154,237,83,49,26,222,137,61,162,75,183,186,117,255,181,172,189,50,117,197,114,55,98,110,27,67,10,202,33,99,143,172,141,210,136,227,251,105,167,95,243,18,191,146,193,238, -222,220,1,226,177,91,125,45,231,76,103,113,249,114,250,223,26,221,11,168,77,247,218,221,26,117,226,148,119,155,198,233,121,225,253,52,224,211,178,122,86,158,59,194,17,51,73,21,21,145,209,65,144,77,158,204,107,112,56,125,72,236,98,250,237,81,46,193,104,7,252,190,124,164,59,185,107,155,187,110,204,178,179,230,156,225,223,124,156,111,109,172,166,146,100,44,162,249,233,123,233,152,33,150,72,246,26,47,98,184,87,200,232,231,167,240,95,237,49,214,78,6,158,51,72,157,189,208,52,195,226,41,210,91,96,176,68,99,117,167,189,211,48,116,22,9,230,199,133,179,103,97,48,197,233,202,7,177,241,109,55,53,125,149,133,137,77,204,44,233,65,64,112,44,135,147,35,6,147,60,177,76,83,13,65,134,221,170,157,37,39,199,175,152,23,153,21,221,204,31,246,63,240,198,63,253,112,66,231,94,188,112,2,60,80,211,73,33,132,220,252,128,216,127,227,52,227,127,141,234,75,214,70,104,34,191,83,19,131,95,238,134,13,3,158,124,144,102,148,84,103,132,13,20,95,149, -137,105,151,179,149,52,78,163,123,131,219,90,110,238,116,9,59,6,16,26,186,168,190,90,207,243,105,52,134,28,35,213,10,62,228,96,94,156,19,165,12,164,213,251,229,157,51,99,130,56,41,121,141,171,247,224,132,132,240,21,39,55,241,193,133,180,41,65,233,141,197,81,207,191,52,10,103,59,167,166,96,224,225,216,58,213,113,141,255,69,242,189,199,161,177,223,214,170,71,99,72,1,246,4,94,132,168,115,252,20,177,47,80,232,0,76,72,29,7,143,203,12,208,98,240,246,198,146,198,94,153,189,180,218,171,131,70,205,159,98,121,225,100,144,167,75,76,37,116,250,69,241,152,206,2,73,221,49,216,179,207,111,14,255,99,19,247,112,230,142,255,23,239,55,111,79,239,88,171,233,240,34,156,21,25,190,108,60,46,224,209,201,163,152,244,224,124,212,106,181,202,72,6,71,38,232,129,218,92,102,227,88,238,130,4,206,166,224,123,96,51,178,34,238,34,116,151,47,255,254,226,248,29,157,49,38,33,141,109,46,131,180,123,212,168,41,205,243,197,209,9,206,122,190,186,225, -240,4,33,248,131,189,94,1,192,40,159,113,85,175,92,226,103,128,71,149,184,4,246,127,240,191,8,157,135,205,162,169,217,49,142,11,214,58,97,70,0,118,114,34,32,211,37,4,55,10,225,128,229,199,193,236,251,25,158,192,200,40,250,250,150,68,124,158,220,209,1,85,179,56,13,98,177,4,238,68,196,71,14,124,139,48,20,228,69,6,240,175,131,30,28,1,173,35,249,62,236,45,71,178,236,125,52,198,57,27,11,70,136,100,3,34,167,6,226,214,116,210,2,135,79,130,111,98,247,100,131,137,143,42,176,141,117,2,138,65,78,14,172,180,5,124,167,184,36,108,150,106,129,245,128,221,237,36,187,240,211,21,68,13,203,109,3,191,99,47,87,204,73,49,110,101,41,112,80,182,245,59,208,245,78,241,100,241,113,195,183,211,146,227,97,224,23,171,102,10,132,207,127,101,54,66,251,156,150,224,228,169,53,154,207,247,186,219,254,43,225,188,184,73,196,138,133,137,175,237,185,128,26,211,216,72,168,81,90,48,129,12,242,13,152,62,152,187,34,6,204,235,49,199,165,13, -124,173,72,100,129,73,76,167,156,110,12,12,73,146,228,58,221,28,36,188,60,222,63,58,63,110,77,199,176,7,207,78,15,143,63,12,142,237,137,84,188,16,166,160,16,116,171,250,224,255,21,238,144,191,121,243,44,92,140,19,56,46,120,214,107,134,33,155,162,13,228,137,96,80,144,167,151,121,231,251,63,28,251,95,206,78,15,4,27,195,127,157,227,79,122,226,81,168,68,76,70,238,89,105,91,236,244,240,49,28,45,56,57,160,166,95,188,74,255,149,131,167,117,208,220,216,113,222,133,46,150,36,189,9,102,209,215,48,93,195,235,142,66,19,136,112,1,168,54,53,15,103,211,42,106,150,198,99,33,175,12,68,92,70,202,146,54,199,7,92,211,189,203,228,11,91,89,129,187,92,110,20,9,216,223,38,8,32,112,32,200,160,104,0,208,211,187,116,110,48,236,134,70,216,92,189,203,254,186,166,72,2,59,5,98,167,75,206,2,163,11,39,116,200,126,69,52,134,35,230,176,180,86,198,50,4,206,202,16,208,97,95,181,189,60,184,185,145,79,130,2,87,48,151,120,240, -109,110,194,72,157,43,129,1,45,240,177,29,168,57,108,79,125,198,170,46,79,195,179,235,202,42,128,254,43,150,0,134,234,130,30,3,134,148,74,74,7,37,238,53,146,165,76,201,166,35,54,236,87,38,95,28,179,94,136,56,61,19,155,98,42,95,236,95,189,39,165,242,70,21,13,113,13,107,212,74,150,122,177,72,221,33,212,237,87,199,65,138,77,217,128,145,9,124,215,154,90,178,207,170,105,227,130,45,68,116,157,12,169,51,47,247,36,90,131,137,130,93,211,41,233,93,35,49,165,28,52,43,81,97,173,156,156,76,72,165,236,41,159,230,109,38,80,97,216,146,228,113,113,220,139,17,190,169,55,36,5,236,142,223,62,228,232,98,222,198,3,86,30,214,69,154,91,197,222,230,32,39,98,154,146,88,105,60,183,136,88,194,209,16,229,107,133,14,232,224,145,86,70,126,182,255,225,157,196,141,10,116,72,167,211,218,88,209,224,150,204,168,141,34,184,179,217,101,188,208,71,122,185,136,176,224,199,101,119,240,31,48,164,174,150,177,67,146,39,39,33,92,69,201,8,224, -165,169,26,238,224,244,252,72,48,100,5,21,0,0,158,47,27,44,85,253,79,195,41,25,177,254,155,166,210,57,232,167,240,55,253,192,144,97,238,178,128,236,68,51,188,229,113,225,17,106,248,100,249,255,155,183,211,244,58,91,77,175,215,109,122,91,125,250,220,221,89,171,235,86,173,8,71,137,161,103,127,34,149,151,49,108,69,95,117,247,127,226,169,216,234,195,93,203,176,102,137,211,233,23,134,172,176,114,58,36,115,175,204,182,80,49,64,231,145,21,112,212,56,165,59,98,111,48,56,238,10,28,242,242,220,251,112,252,241,3,71,54,201,52,152,223,70,35,126,151,236,61,40,123,97,254,188,140,84,25,144,204,163,254,45,209,69,213,24,246,153,114,112,16,230,71,164,29,15,88,80,97,8,128,181,55,216,87,30,233,95,180,96,216,63,11,45,186,50,134,160,189,97,3,191,212,155,92,41,1,207,11,69,235,149,230,81,90,60,29,135,124,212,147,206,169,49,238,218,134,47,21,119,11,160,114,36,64,101,19,22,183,153,18,206,225,198,42,185,48,74,141,112,206,249,235, -160,42,141,70,77,253,243,11,147,157,145,193,175,254,7,134,9,1,158,194,76,41,6,114,89,187,242,148,217,171,98,48,22,11,43,99,8,72,20,15,35,127,253,126,187,137,207,91,125,250,184,19,52,189,199,157,45,238,147,254,245,215,129,140,173,232,182,114,15,90,242,185,170,97,157,8,234,21,14,128,153,97,76,43,194,212,131,236,246,152,142,24,6,233,154,204,17,245,36,198,72,14,242,228,172,203,52,136,222,245,222,69,7,203,104,1,203,207,176,72,193,180,91,63,63,214,179,171,120,158,159,228,136,120,183,136,106,90,212,181,80,219,164,152,186,154,218,82,5,176,18,58,1,151,216,196,194,127,133,64,1,120,133,202,96,230,138,95,202,130,115,10,102,24,78,135,47,194,249,54,229,190,74,24,135,6,144,227,248,155,172,134,124,195,152,188,218,190,35,221,18,206,173,38,119,95,33,108,163,52,1,189,178,224,22,149,41,140,141,10,69,50,170,227,190,68,155,167,238,232,218,245,44,57,103,130,227,43,104,45,253,87,18,101,86,168,151,242,72,191,210,100,180,103,68,128, -129,229,1,145,200,96,34,232,8,170,93,113,84,66,50,105,148,118,119,33,33,46,147,4,90,43,76,11,62,93,3,233,65,251,67,27,147,90,185,163,80,118,92,92,82,205,250,163,205,151,165,163,218,229,103,219,202,28,117,136,211,64,146,24,135,143,7,174,27,254,157,5,74,134,0,84,24,30,12,228,148,197,133,244,185,82,172,26,170,3,28,0,61,163,137,51,227,124,221,88,76,246,73,195,82,46,234,217,191,102,93,211,55,117,247,90,102,1,86,188,119,107,215,97,17,235,230,240,42,181,185,241,194,165,241,215,190,116,191,219,234,190,112,41,120,22,228,218,190,161,12,168,189,118,62,98,220,168,183,211,234,247,95,184,84,185,32,132,192,160,215,123,225,106,218,133,156,242,216,109,117,229,217,86,53,62,189,242,56,186,9,217,192,159,50,81,137,218,46,154,32,234,29,118,142,118,251,253,163,35,175,177,219,62,15,158,218,171,58,93,161,7,90,119,122,191,223,221,253,220,243,214,188,107,227,82,223,248,95,113,169,223,228,119,61,19,250,203,240,87,23,110,8,67,254,24, -67,8,24,200,127,93,19,154,197,8,158,97,255,47,19,48,32,57,113,58,35,73,220,28,21,27,200,44,120,52,151,131,91,43,187,73,23,110,115,149,185,176,192,154,169,192,40,146,47,150,14,122,107,11,135,10,77,22,42,186,89,52,10,133,2,180,170,231,210,126,81,252,163,53,13,68,195,183,244,22,16,47,12,167,254,182,198,232,77,89,219,212,216,219,189,174,4,176,245,152,82,171,225,154,134,251,4,116,120,203,251,8,144,22,212,2,92,229,96,111,135,11,28,204,227,231,177,177,166,117,69,150,121,159,255,193,124,190,254,158,223,246,219,98,148,146,152,34,153,221,154,145,122,222,86,177,153,249,109,48,238,181,249,36,211,207,221,141,206,174,223,234,202,95,235,176,138,30,252,245,78,111,139,70,214,218,254,234,183,77,230,208,63,60,92,217,234,94,11,164,25,91,64,137,12,72,28,210,56,91,117,83,37,252,181,102,170,52,35,197,132,129,17,93,208,24,30,19,153,194,95,160,128,60,225,6,42,197,96,254,152,141,162,218,207,10,159,113,165,174,145,204,228,12,131,243, -148,13,114,230,120,15,167,164,158,39,169,67,27,240,115,16,229,134,86,87,97,155,209,20,204,18,181,11,63,19,110,145,159,163,49,93,236,58,15,199,97,142,35,77,162,63,254,250,3,95,240,233,195,233,225,71,90,55,55,241,211,252,182,118,184,54,87,136,147,203,216,168,193,180,233,58,225,192,10,199,94,173,243,191,129,37,138,55,54,11,31,218,226,217,173,85,13,10,250,71,105,217,255,103,187,165,52,196,152,20,254,147,169,7,13,185,38,147,161,38,76,76,133,68,141,103,77,168,218,183,245,46,88,208,88,131,217,65,188,72,93,206,126,27,170,124,153,237,173,226,181,10,51,60,216,22,179,17,45,91,188,180,69,46,190,110,141,226,211,224,17,51,1,91,0,252,50,198,229,138,60,116,67,127,88,169,63,185,68,211,28,126,96,58,44,78,64,81,225,91,64,95,5,51,140,132,105,16,217,127,203,122,148,23,204,202,237,52,153,33,154,89,80,151,33,170,165,148,225,143,43,212,76,117,68,111,21,93,208,224,211,25,219,15,6,95,43,76,243,51,197,235,89,22,173,231, -77,63,73,81,5,176,80,248,75,148,102,75,91,132,35,153,43,37,92,44,200,218,78,155,222,21,41,73,24,26,188,61,135,8,59,206,206,160,223,75,170,99,168,46,84,39,149,122,153,159,82,142,164,111,28,161,98,33,237,220,33,168,16,207,238,10,156,35,203,243,186,187,223,195,56,158,9,15,39,123,250,52,229,30,184,79,109,89,81,160,186,6,132,246,131,215,148,254,254,65,238,102,208,183,82,120,219,0,70,84,144,50,39,172,217,153,244,150,2,165,196,145,1,58,224,107,247,234,187,51,158,75,186,25,42,226,187,179,54,50,252,202,4,164,149,139,227,244,25,101,211,24,35,214,67,198,224,25,67,39,81,120,59,153,80,175,161,233,60,31,146,251,164,118,148,165,216,153,144,41,127,47,124,2,6,192,163,178,80,222,75,91,232,233,5,19,199,124,25,226,47,167,75,229,39,54,234,82,58,255,194,180,126,102,198,67,0,91,217,133,237,216,86,108,127,168,13,92,184,95,51,11,107,103,205,196,82,113,87,10,244,17,131,35,149,96,206,218,139,72,170,3,31,194,109,152, -51,178,244,211,251,163,54,11,9,129,176,214,90,158,164,146,42,105,52,30,176,93,132,122,130,12,68,238,86,16,10,112,61,226,75,53,236,81,92,107,173,84,187,91,52,200,96,16,72,70,181,18,79,49,77,237,33,115,34,129,129,19,101,86,182,250,36,191,70,204,25,132,224,234,240,41,15,21,130,208,100,229,8,161,95,150,109,246,123,61,27,64,71,70,157,255,29,216,26,68,137,254,126,190,191,86,171,17,128,138,184,205,108,0,198,163,238,230,254,87,239,95,33,182,41,24,24,144,184,217,83,191,5,179,227,212,11,192,151,124,117,116,42,12,126,122,119,17,228,183,7,240,13,208,227,32,75,160,56,161,33,145,88,136,13,245,103,250,240,136,121,167,187,152,246,176,174,225,95,48,203,221,35,58,120,206,233,32,182,13,26,6,123,122,1,41,105,70,204,242,49,225,144,241,19,232,141,185,158,136,191,254,55,243,145,174,99,62,225,218,231,27,252,120,86,251,108,23,239,232,87,187,56,149,26,236,223,97,25,252,251,191,227,69,97,67,127,72,126,4,126,144,134,118,1,144, -122,230,156,136,130,186,151,42,61,105,200,25,38,124,115,193,212,122,203,103,127,173,234,245,227,153,255,229,242,248,195,254,249,177,215,202,70,160,68,83,230,17,255,181,113,114,44,148,188,146,213,42,3,95,203,133,227,135,233,163,113,54,48,249,225,129,230,45,140,195,122,111,245,75,198,188,98,251,155,5,111,189,49,41,74,89,241,38,188,233,24,64,172,228,205,239,110,224,128,129,18,132,46,186,253,37,75,15,26,50,91,122,30,171,208,106,232,21,78,255,206,110,1,136,118,198,254,102,245,212,126,78,157,65,185,140,17,187,169,110,23,180,123,36,88,178,132,160,249,10,31,103,69,74,96,84,96,24,11,2,23,78,119,171,159,179,113,248,232,206,68,17,183,19,96,182,155,190,198,21,62,32,92,52,241,239,91,187,176,72,224,130,186,150,119,198,57,12,18,239,234,108,80,110,24,190,205,90,43,63,26,221,145,252,132,79,55,35,197,125,150,139,95,125,194,65,7,166,180,191,231,202,58,98,42,215,58,50,233,161,146,41,201,219,27,164,57,222,78,93,204,249,99,66,166,99, -154,116,55,183,252,55,254,155,90,253,121,65,123,199,13,80,191,20,149,56,41,84,247,192,190,97,171,220,135,99,215,97,47,117,86,172,94,207,48,237,104,82,24,202,69,3,11,197,188,150,181,126,165,117,249,52,56,62,223,63,59,251,120,200,167,120,237,33,234,76,169,76,228,179,74,43,231,227,144,212,51,228,91,69,232,135,9,129,205,16,217,104,119,218,168,218,6,239,52,46,82,111,220,177,12,22,159,240,55,232,211,170,39,49,115,157,72,185,99,62,252,195,119,103,204,246,42,127,56,41,240,154,32,74,55,26,112,73,237,219,3,212,154,26,77,177,220,202,143,140,69,252,179,180,135,149,236,198,133,126,47,85,243,170,171,138,243,142,248,169,50,82,109,157,194,61,181,235,204,33,117,206,166,0,49,192,251,11,146,12,88,39,181,134,78,154,204,89,67,183,132,147,164,246,155,50,108,17,51,152,127,13,83,255,11,72,230,94,80,195,15,196,207,140,228,166,129,33,175,58,70,81,133,151,212,119,28,250,18,48,70,208,68,159,86,49,59,77,239,34,85,77,188,204,139,57, -192,185,178,239,56,238,171,142,208,165,112,218,234,44,35,142,246,46,141,198,103,28,177,4,186,16,206,180,58,66,220,231,212,106,82,130,51,64,53,84,119,41,87,39,224,104,195,179,43,204,22,127,241,95,35,255,142,117,102,33,100,166,35,181,40,99,82,249,10,93,111,27,230,50,72,83,64,232,249,38,161,102,19,212,197,4,167,123,161,10,211,155,159,23,1,250,250,215,11,29,246,221,167,83,205,77,202,109,244,175,98,27,186,190,191,146,118,142,97,233,169,165,184,132,151,117,111,65,252,113,113,194,57,103,101,24,16,32,73,190,219,113,155,157,147,182,2,210,51,241,27,230,77,86,15,135,66,195,140,230,132,228,206,54,39,118,54,152,108,241,62,92,19,24,92,237,241,177,152,89,52,153,182,5,190,35,8,30,103,190,163,66,227,103,77,146,236,154,194,174,226,47,24,38,164,58,19,131,35,200,250,170,237,212,209,78,202,240,201,21,37,165,99,148,148,141,173,29,11,238,174,81,78,84,18,107,61,58,87,202,86,175,241,127,254,243,159,157,221,110,225,189,248,229,89,159, -112,113,117,101,160,5,36,122,198,49,252,71,238,47,60,211,207,120,72,106,117,173,162,241,2,233,75,255,65,24,10,68,2,241,55,62,217,47,231,103,151,23,135,101,32,102,195,182,161,190,223,102,105,220,209,14,159,143,213,39,114,209,242,207,225,112,64,202,31,172,147,23,143,191,226,174,171,100,63,27,69,81,147,62,124,194,49,96,255,58,75,30,244,47,167,16,226,243,122,75,209,42,195,146,147,159,147,98,183,233,159,31,104,5,72,194,91,48,243,220,232,165,50,202,138,143,82,12,73,109,64,164,0,116,230,123,117,196,190,208,121,69,157,207,136,19,105,50,113,59,185,101,61,151,214,69,1,109,230,47,181,186,220,16,46,110,200,187,155,219,188,41,255,152,159,112,89,19,219,88,235,40,166,33,194,164,217,75,239,234,60,184,11,63,206,172,163,208,209,39,159,53,127,139,6,206,0,74,191,208,162,107,78,22,187,169,249,98,64,101,142,107,70,244,45,97,201,148,27,127,191,43,168,24,64,37,162,152,244,127,225,107,122,214,9,87,52,226,191,62,138,50,246,247,96,111, -195,117,74,7,151,50,249,73,69,132,140,159,198,101,235,121,161,73,28,39,172,27,79,144,110,236,142,110,143,49,96,46,239,106,134,114,80,233,98,54,91,234,195,211,196,75,28,170,140,47,228,114,192,134,90,195,189,144,110,126,105,64,37,62,127,39,211,236,219,222,243,169,232,83,154,30,244,172,54,87,222,125,6,207,204,181,61,101,77,80,3,38,102,190,76,227,95,219,84,41,50,87,158,205,82,156,14,9,42,152,53,36,172,48,64,2,89,105,140,3,231,36,123,129,88,22,88,148,151,186,37,229,109,162,33,113,195,39,224,53,64,63,103,25,202,162,60,163,107,132,174,193,68,58,153,147,41,2,209,85,125,24,245,35,220,228,47,45,110,123,124,112,22,215,241,47,167,39,223,40,221,77,142,67,153,183,88,13,7,91,74,22,185,67,243,48,142,197,196,29,103,213,222,177,218,86,85,65,108,101,247,55,207,121,18,157,61,33,150,78,97,182,55,93,137,195,181,110,132,35,206,96,230,97,1,184,203,188,97,164,203,109,144,10,75,184,242,168,52,133,173,24,55,129,242,161, -105,161,230,234,236,95,43,159,100,32,93,83,98,222,243,193,254,126,217,127,95,239,119,119,164,142,5,16,49,201,163,150,10,18,199,161,84,63,22,247,180,101,226,240,95,79,22,113,156,141,82,26,20,201,22,168,164,195,167,226,58,222,248,158,100,64,65,227,151,90,147,222,56,249,26,178,59,117,149,8,198,224,159,39,234,49,43,138,135,220,32,83,170,101,135,248,233,180,61,56,58,235,146,177,24,241,97,87,6,151,42,24,139,46,120,233,229,171,203,82,184,109,131,251,72,11,40,22,22,229,180,186,142,211,139,237,38,89,126,67,102,146,250,4,237,178,186,60,190,250,116,249,225,20,33,240,56,192,19,210,171,25,252,22,31,63,206,95,106,17,98,199,32,70,232,116,233,218,55,211,192,159,161,28,244,146,218,96,209,23,83,175,33,81,10,184,64,111,237,249,187,86,239,213,187,92,202,7,173,25,76,17,177,116,66,251,178,235,140,99,220,78,222,156,193,111,66,185,92,127,40,74,248,229,27,187,95,130,27,227,69,211,154,127,194,108,227,249,157,201,167,35,1,11,214,194, -22,95,104,152,163,242,91,253,82,10,217,78,45,48,103,245,190,34,134,27,51,243,219,236,78,10,118,113,12,69,10,43,24,128,244,205,131,245,125,206,145,58,173,140,186,100,218,87,155,77,69,103,69,53,17,201,127,5,60,186,251,146,50,224,128,146,220,188,217,209,183,221,6,140,146,115,91,159,122,236,188,52,39,14,102,169,148,213,187,211,170,134,13,173,220,201,16,166,210,173,189,214,206,183,118,58,13,74,183,238,190,248,10,93,44,148,115,231,78,171,255,141,195,53,208,40,231,230,94,171,187,109,144,90,243,228,31,164,16,69,35,65,142,208,70,124,8,135,126,251,225,225,193,111,95,38,193,120,26,204,223,115,34,22,214,129,255,39,146,167,235,139,236,31,214,156,124,223,87,139,114,199,90,148,157,157,237,30,91,148,236,238,22,8,119,215,154,80,207,185,14,80,13,100,29,25,6,224,254,54,134,64,9,216,130,97,181,56,22,78,143,50,159,251,173,36,189,241,219,89,58,26,39,35,255,79,104,223,255,211,21,184,3,163,98,176,126,235,54,159,198,254,119,3,57,140, -253,47,219,244,127,255,224,8,6,137,5,195,67,106,188,129,109,88,221,112,178,98,123,156,37,201,252,25,228,61,39,57,37,194,91,225,9,199,21,19,27,166,28,25,163,166,44,219,111,193,4,99,241,221,37,108,120,189,171,232,130,116,247,168,236,61,230,218,189,226,11,231,158,57,65,23,142,11,122,158,34,133,85,138,96,231,1,187,232,153,77,22,158,190,90,47,106,24,142,213,225,189,194,235,165,113,144,12,140,203,194,46,90,92,40,184,241,16,222,251,121,45,240,138,29,148,109,173,11,138,195,251,127,255,157,246,252,47,221,127,32,144,215,30,132,249,181,57,185,159,91,108,134,176,138,15,4,107,69,27,193,60,213,226,57,93,119,39,13,191,190,132,110,164,43,246,180,182,231,82,6,107,215,61,214,235,95,55,179,57,74,224,31,152,101,179,72,235,110,16,34,36,109,213,223,219,187,72,67,84,228,57,66,66,195,216,233,118,60,129,158,83,27,35,148,159,247,24,151,195,169,178,112,42,154,0,50,172,240,177,100,208,58,17,96,229,99,98,239,212,197,209,73,209,23,251, -255,132,58,112,106,131,150,117,48,64,64,215,154,94,242,32,53,104,5,201,102,17,86,156,173,131,197,139,104,235,88,76,70,144,109,100,230,23,229,174,42,223,30,75,74,19,236,188,148,125,153,195,144,90,35,171,181,30,33,0,151,46,18,50,105,2,217,37,45,37,32,195,231,28,210,88,65,242,170,16,42,214,116,235,134,190,60,161,249,52,108,115,140,124,49,233,29,168,1,148,37,22,237,80,102,173,23,228,80,91,31,213,66,28,45,136,166,246,1,140,123,220,248,79,29,90,252,113,1,193,177,9,135,106,37,218,34,53,166,78,72,134,89,23,96,128,35,181,11,250,231,202,80,15,24,87,165,156,2,171,87,141,191,245,55,54,206,15,214,172,18,1,216,134,234,172,92,253,47,13,148,202,23,225,104,154,244,90,144,0,167,165,106,181,95,33,182,102,215,44,153,39,185,137,87,112,101,199,231,92,196,71,225,55,184,197,232,218,162,86,54,235,72,166,16,135,153,79,4,173,165,42,6,10,91,145,46,207,173,125,147,151,125,196,30,175,185,84,95,66,196,192,95,167,117,57, -226,200,246,231,54,28,56,215,69,30,158,188,30,235,46,168,116,221,110,219,248,114,103,179,95,16,80,119,182,127,199,65,75,122,237,62,106,72,240,1,123,45,60,150,116,220,137,246,60,89,64,46,250,235,129,18,4,215,59,241,229,132,222,243,142,153,36,85,253,121,243,224,70,185,171,65,38,199,240,78,155,105,216,4,133,47,166,4,101,186,148,15,84,68,100,237,42,56,0,254,78,70,232,132,181,11,6,135,146,103,135,246,160,85,237,65,8,230,53,184,106,114,113,148,213,238,160,226,0,112,194,220,82,126,133,230,137,78,250,25,220,94,82,244,244,25,152,202,167,171,19,127,157,236,5,107,254,26,31,106,211,251,36,60,100,135,82,173,83,106,51,201,87,71,161,150,240,116,47,47,185,192,175,78,58,91,244,77,74,98,21,220,130,243,32,74,235,195,116,28,221,149,170,230,71,97,56,215,178,30,248,50,3,71,42,35,170,234,110,230,162,235,226,164,188,46,114,160,131,152,163,206,12,96,163,105,166,95,17,219,101,16,75,189,76,5,225,34,173,128,19,174,126,58,192,132, -94,37,204,192,72,11,141,99,125,198,71,252,204,88,46,17,168,207,194,75,150,227,215,152,50,132,234,216,119,192,223,213,7,133,65,132,153,122,31,16,197,58,157,141,35,9,132,59,85,237,245,101,163,201,247,164,138,92,10,131,214,51,67,33,195,166,211,234,92,131,46,236,37,132,251,101,120,19,1,185,252,46,78,134,65,76,67,145,208,232,146,137,249,187,78,75,27,226,221,91,97,91,209,40,168,22,80,94,12,73,62,66,15,58,164,29,118,73,7,120,211,253,227,156,255,162,147,226,135,240,137,214,24,169,74,151,201,131,214,24,228,63,5,135,105,191,217,31,97,99,95,38,15,47,41,84,26,208,253,64,107,103,60,96,74,18,38,38,169,221,213,224,219,69,60,249,240,54,137,70,224,124,36,197,77,19,235,160,75,114,81,90,4,219,252,117,160,207,159,141,57,194,69,166,232,94,172,185,146,191,203,162,253,56,93,252,222,30,85,141,191,117,112,68,61,27,191,51,240,212,61,76,25,76,219,83,200,47,253,80,123,230,140,113,11,166,246,183,152,63,149,134,243,82,88,94, -212,135,61,125,17,73,173,154,8,93,165,213,106,13,230,17,93,124,9,228,0,118,218,57,83,87,143,145,38,149,234,251,170,23,220,192,225,38,243,197,220,30,113,78,193,91,118,60,9,215,97,204,18,208,123,14,245,80,210,165,177,179,138,72,122,211,205,27,173,187,255,189,148,46,108,123,39,73,146,115,161,14,91,216,202,184,43,23,153,169,52,206,106,148,22,93,202,235,220,38,212,232,143,87,39,166,116,38,3,88,185,140,103,102,136,79,240,84,176,243,160,66,48,100,230,41,14,13,233,249,12,234,79,92,167,253,144,97,93,126,223,229,156,122,85,72,71,26,224,47,149,27,96,165,144,222,209,187,159,235,26,59,178,109,240,181,28,211,112,74,37,11,230,33,119,67,97,203,45,176,248,38,237,213,16,200,92,215,93,120,252,136,145,209,41,234,191,122,199,124,35,216,10,45,144,147,216,35,110,5,136,108,83,35,215,234,90,61,184,60,44,123,21,207,254,222,111,50,20,148,5,237,223,225,55,49,38,132,115,136,46,55,195,167,132,147,217,13,21,100,101,239,172,76,94,85, -233,60,23,147,219,214,250,241,64,64,233,54,25,183,77,73,31,214,93,159,153,213,35,27,44,188,94,41,114,86,57,154,133,188,249,176,22,224,90,209,137,255,138,81,174,164,18,250,175,188,235,34,23,83,150,164,169,203,220,64,13,73,165,36,31,73,192,79,202,145,150,10,142,175,181,188,186,158,222,135,143,76,45,44,86,189,4,89,51,203,53,83,119,151,37,29,54,168,77,139,9,21,54,69,225,249,115,5,245,114,11,43,188,243,76,31,98,233,166,109,21,187,21,162,214,213,150,130,161,120,53,74,10,32,212,79,50,130,215,25,75,49,12,178,168,246,254,75,67,12,247,228,25,237,14,173,45,159,28,118,25,15,19,120,145,239,37,66,120,19,213,62,161,214,28,191,143,178,155,176,58,187,163,102,78,202,221,209,82,208,68,188,65,190,24,71,9,107,247,215,154,5,109,51,212,96,58,22,117,254,170,26,63,31,40,187,8,155,73,75,55,136,116,91,225,221,171,109,11,130,203,219,42,185,76,223,29,30,250,235,219,38,133,178,234,46,227,17,102,130,67,25,127,201,111,186, -209,234,198,117,247,22,110,218,61,111,197,87,187,93,248,106,107,238,99,79,204,82,103,91,47,220,243,235,252,166,116,143,201,201,219,29,190,112,35,156,179,123,75,222,217,206,75,247,204,110,246,150,89,40,55,183,95,184,201,150,60,47,57,115,201,38,220,125,225,198,175,123,222,167,37,198,203,151,6,200,169,175,165,219,108,37,129,86,79,202,142,87,24,167,198,11,188,177,179,209,39,227,244,123,18,22,214,56,85,237,215,45,84,36,44,71,38,55,208,86,43,97,200,253,231,55,109,67,239,151,233,242,239,116,220,98,9,102,47,72,129,81,206,84,231,250,224,204,109,105,96,61,77,62,196,192,56,8,215,108,56,99,146,33,209,158,57,190,41,153,90,166,245,82,9,22,227,125,115,53,116,107,176,146,201,168,206,156,113,36,133,111,56,223,50,87,234,21,67,10,129,6,31,128,211,229,128,39,70,100,241,230,38,181,192,240,70,180,190,205,128,255,104,10,148,202,84,29,26,36,34,123,92,156,98,126,78,144,92,97,154,39,198,162,227,191,52,5,38,14,166,195,113,240,178,29, -30,242,154,0,109,140,50,253,20,8,121,201,117,106,187,157,227,85,4,247,9,75,246,134,1,252,174,81,159,104,37,156,141,107,251,49,232,103,5,93,171,145,159,70,83,169,193,199,190,110,122,130,207,109,143,189,123,217,53,162,207,25,215,229,176,41,193,222,96,49,188,148,138,219,192,90,230,98,63,98,62,112,240,233,95,54,198,149,220,163,114,91,237,128,12,22,67,16,233,112,55,150,72,93,32,218,64,228,194,105,173,72,93,34,61,248,197,135,51,200,236,194,165,159,204,152,38,159,134,223,244,0,230,87,18,100,83,223,2,201,130,236,226,93,87,231,62,136,195,185,21,241,22,20,77,186,100,158,156,22,128,101,254,0,176,6,184,201,159,114,102,45,147,242,209,141,204,208,42,100,66,74,3,103,68,125,210,142,193,255,141,104,175,206,200,114,176,155,181,120,89,77,30,176,100,87,58,175,80,181,44,49,81,15,217,35,131,151,193,159,78,39,206,149,181,239,96,201,230,101,44,222,229,197,225,243,142,41,178,8,73,161,58,67,106,132,243,166,225,205,3,131,25,43,234,183, -72,101,243,95,147,130,77,166,193,18,91,168,186,174,126,77,134,53,80,13,219,81,152,94,26,104,132,186,170,150,250,131,161,81,242,132,33,249,69,80,23,207,52,93,132,126,138,28,132,69,193,246,55,55,63,51,156,129,107,79,232,215,43,66,171,222,14,23,194,117,83,167,61,11,103,168,101,89,185,7,217,37,111,27,87,223,77,189,243,86,248,153,38,82,13,205,117,221,97,13,92,209,126,6,235,120,147,63,13,128,79,147,143,36,95,154,156,235,181,143,218,246,77,227,0,178,223,212,58,192,169,177,67,181,44,188,134,42,194,40,191,107,114,211,214,4,83,169,233,19,182,182,145,99,141,60,243,34,210,176,224,99,209,138,113,244,82,92,9,63,13,126,21,89,103,45,97,200,151,98,28,34,254,107,187,120,124,124,15,154,44,127,93,146,183,153,83,111,148,62,205,243,68,227,6,82,121,151,126,231,133,21,72,2,43,6,86,255,2,222,239,119,55,183,36,143,193,189,201,132,42,107,111,172,137,55,59,53,137,248,39,83,135,232,133,102,56,86,94,218,13,18,251,147,208,31, -208,122,67,144,77,180,132,206,212,111,69,137,207,247,248,237,127,120,248,247,218,125,69,154,178,82,134,190,72,172,163,94,108,57,225,126,99,14,150,26,112,78,221,37,103,156,231,255,197,198,109,94,8,157,241,34,168,2,108,49,1,173,173,121,85,47,72,74,247,114,204,64,128,248,82,5,187,61,17,223,8,30,31,158,49,229,180,169,109,173,200,8,1,228,124,16,230,136,112,9,10,22,3,117,60,130,230,52,119,102,225,249,120,207,33,211,62,228,101,66,109,0,108,164,182,68,193,231,47,133,28,132,37,130,145,89,164,132,208,100,170,90,226,84,244,181,30,135,218,199,113,201,86,145,20,44,197,106,88,119,82,118,38,14,131,135,67,175,17,7,139,153,254,109,242,130,21,83,250,152,23,38,38,168,148,212,88,142,152,116,23,62,179,218,238,185,192,30,14,62,7,184,108,18,254,141,3,33,200,76,105,34,184,98,139,240,132,158,189,97,196,98,80,114,138,25,48,44,10,239,84,50,109,157,191,180,158,193,18,241,19,205,240,51,226,3,65,75,227,246,48,129,184,166,91,8, -192,44,28,5,252,197,182,12,131,49,198,235,231,254,60,177,41,105,6,222,155,149,22,56,18,35,252,191,112,102,4,167,5,26,150,84,246,5,212,47,120,118,117,176,167,71,2,183,172,179,3,71,13,207,249,51,207,186,132,114,229,84,90,135,145,157,31,190,126,95,24,145,237,242,149,46,145,116,233,10,162,95,66,146,19,172,83,113,36,75,107,156,214,238,11,46,73,160,111,221,144,238,88,99,157,83,239,36,128,82,49,134,103,244,11,54,75,250,203,237,218,12,58,142,80,209,222,51,141,178,189,95,223,156,129,111,7,238,229,75,16,95,71,18,28,15,106,53,44,188,6,96,247,156,125,201,225,194,12,10,236,40,161,229,151,211,62,152,35,17,39,31,61,251,50,213,68,225,80,134,81,26,164,73,87,50,139,238,89,123,216,149,170,64,91,251,141,107,144,42,90,222,45,167,170,94,23,14,193,157,255,32,175,151,116,144,33,102,178,33,149,191,156,234,182,107,45,70,115,155,157,159,204,138,24,227,136,189,202,81,86,56,161,248,128,242,95,249,235,191,250,175,244,104,170,125, -250,163,114,201,196,229,119,80,29,103,185,17,178,15,55,149,159,54,114,176,84,77,219,216,227,155,38,88,188,219,221,236,172,125,238,121,54,92,188,185,118,93,50,201,75,246,179,41,106,107,171,198,195,158,118,97,98,36,53,253,118,0,246,32,45,83,106,128,97,229,42,168,204,114,185,90,199,244,186,197,191,212,181,88,170,142,91,180,92,181,113,204,10,190,118,248,0,27,54,159,219,48,50,129,23,212,146,180,107,43,192,56,221,220,174,125,163,205,109,253,252,240,42,136,171,224,250,69,147,249,12,236,59,89,72,162,124,44,165,79,59,155,66,99,195,250,20,136,209,13,199,231,255,76,7,89,73,123,130,101,230,100,77,61,187,253,126,188,58,49,217,101,244,112,255,177,233,249,255,135,254,247,13,147,60,209,201,144,230,163,133,225,255,53,63,254,115,163,189,113,45,53,198,217,126,52,106,118,68,123,70,99,241,66,165,193,85,119,229,56,96,92,218,115,230,142,81,164,74,158,208,5,34,104,2,83,121,144,51,142,51,122,208,24,141,187,109,149,38,193,32,213,235,128,230,194, -54,158,214,61,188,196,168,31,114,1,21,25,175,144,48,3,159,80,63,111,78,84,107,111,181,248,225,183,104,81,206,166,96,75,216,221,52,238,248,92,183,20,91,5,38,149,67,244,194,172,201,55,73,1,36,33,51,162,215,38,25,231,177,35,9,95,60,16,117,27,213,59,46,20,129,192,163,106,114,93,167,131,143,231,236,82,22,194,150,231,228,220,37,59,136,218,2,76,88,9,136,212,79,243,89,153,218,71,146,127,195,7,177,105,156,180,250,194,230,2,57,4,29,231,191,46,166,172,140,168,199,217,41,150,141,6,107,251,67,88,85,61,40,180,205,149,72,149,154,189,86,42,252,100,118,163,192,37,144,95,119,1,115,34,101,180,243,238,224,26,21,232,218,194,29,156,65,163,92,211,164,33,45,176,216,84,243,26,1,36,143,205,255,245,100,22,63,125,203,64,36,82,66,253,77,121,51,179,43,15,126,38,174,171,152,93,11,0,192,50,144,215,207,165,19,124,145,23,150,105,206,140,194,182,24,158,111,76,52,253,5,112,173,103,214,196,149,48,112,218,215,162,117,141,249,44, -99,5,157,125,169,182,232,36,157,140,164,86,1,241,229,104,208,13,200,132,182,121,195,109,77,227,121,70,162,222,4,163,39,78,70,61,58,184,246,215,149,206,80,228,178,77,88,186,22,85,114,178,72,135,17,87,94,199,64,134,225,8,96,16,255,245,64,117,39,255,181,147,128,140,44,149,195,195,122,31,224,10,211,143,86,78,22,16,36,117,167,60,82,252,180,44,170,148,159,103,166,201,58,206,235,17,249,80,226,15,172,21,237,114,21,191,181,130,94,144,30,131,122,228,50,157,202,141,7,87,9,178,17,89,32,135,94,107,251,171,161,217,51,101,170,3,188,113,32,217,94,209,76,97,19,67,204,93,147,142,226,178,235,181,188,15,9,51,183,65,138,160,160,112,46,220,151,140,249,101,80,11,24,239,103,122,205,76,240,192,137,4,3,101,28,96,85,198,24,158,108,130,157,255,10,181,221,198,33,134,139,2,206,136,63,101,192,86,166,79,69,51,32,59,108,20,215,161,251,173,62,216,13,157,226,13,222,9,87,53,2,76,106,49,139,23,163,187,39,1,121,70,168,126,180,40, -8,17,89,247,52,230,167,180,217,235,162,213,250,101,117,101,46,47,188,176,180,80,120,211,205,110,30,174,105,165,88,158,63,83,243,123,148,44,230,177,241,171,95,29,157,211,230,119,130,24,74,162,248,176,213,87,181,236,205,151,254,138,102,166,145,146,157,110,119,91,52,51,69,204,171,102,246,178,82,162,110,186,33,208,216,240,231,250,175,140,125,0,182,14,158,108,67,126,34,213,65,12,99,166,196,75,0,143,205,38,160,128,176,151,25,48,136,188,84,101,110,9,81,158,64,224,2,49,189,126,53,101,25,21,137,181,68,93,97,134,168,3,254,155,57,66,240,69,35,215,48,79,56,227,74,29,236,196,54,231,153,216,189,160,111,147,29,205,194,32,137,199,5,88,151,185,236,129,107,22,4,44,203,167,130,131,196,144,138,128,106,184,254,189,126,8,31,156,167,110,22,156,126,240,178,249,235,5,133,22,123,79,179,61,78,130,157,153,130,190,167,51,118,163,52,21,112,198,36,56,230,15,185,230,60,152,155,47,248,82,250,155,84,219,231,46,23,50,201,210,29,70,236,26,169,43, -30,13,45,48,31,135,118,18,56,3,79,41,105,184,210,138,217,153,129,140,82,216,137,28,138,28,113,8,24,164,177,182,158,195,243,45,243,224,48,168,138,138,5,183,219,222,222,52,152,63,63,163,134,141,252,226,227,69,239,218,30,231,254,122,9,178,152,130,6,37,228,170,14,200,141,142,133,112,204,195,61,82,165,58,173,63,171,86,34,46,21,74,55,60,61,28,183,178,68,28,77,236,186,68,185,16,107,97,137,251,166,102,181,240,158,24,10,200,194,138,165,190,0,176,8,210,155,235,166,156,42,204,199,220,148,51,120,118,221,198,191,193,227,181,171,166,113,116,49,225,218,216,55,11,49,224,24,50,72,155,38,191,74,44,112,145,75,204,92,171,63,135,126,194,125,109,0,155,57,172,200,182,239,115,147,114,194,248,21,73,46,104,122,31,23,185,251,133,196,29,76,1,26,40,65,102,89,49,43,99,166,102,129,90,195,232,176,32,14,87,239,234,154,248,111,110,22,113,128,156,113,180,250,188,233,112,4,124,139,73,103,41,205,224,49,123,113,142,130,39,153,183,119,97,126,78, -139,237,54,179,127,254,28,134,119,165,63,208,214,117,189,19,234,244,252,152,84,45,156,161,92,15,151,157,193,202,138,86,238,25,30,165,227,71,154,117,190,197,206,60,253,33,232,83,250,173,190,27,70,156,3,27,125,121,126,191,125,93,153,169,227,53,22,51,19,63,147,109,216,20,50,188,236,33,152,103,245,27,135,151,131,4,163,174,229,93,61,23,58,193,11,45,245,106,98,174,50,97,23,121,42,147,119,177,40,62,3,216,249,21,127,21,111,62,152,132,142,172,208,118,109,12,100,200,185,35,47,68,112,218,63,203,191,36,24,120,118,103,227,235,6,87,53,215,223,253,191,172,185,229,227,193,206,9,87,101,17,240,121,198,23,133,28,41,178,25,105,58,199,82,61,152,247,20,106,71,113,181,219,208,162,202,249,210,171,167,121,120,204,32,35,167,184,211,156,108,203,122,247,18,210,55,13,174,251,165,89,247,63,227,21,169,90,116,173,48,227,131,167,107,254,30,112,217,107,255,191,1,204,97,206,67,186,194,89,118,188,161,85,12,56,7,131,17,240,207,13,175,8,78,92,115, -245,181,113,48,231,205,132,40,144,27,248,80,151,198,183,180,52,13,74,77,1,173,230,177,161,244,199,26,4,85,58,55,56,79,230,44,25,52,113,215,72,78,227,108,49,253,49,55,32,31,9,255,35,159,6,22,244,213,15,134,175,252,218,148,172,42,242,88,223,229,119,60,241,156,127,102,16,20,5,7,68,237,1,0,233,68,54,8,228,205,81,172,50,30,95,124,96,32,218,181,81,161,45,248,29,125,48,34,150,133,180,248,207,37,189,175,1,104,10,125,12,133,157,27,141,148,42,7,215,7,101,10,242,177,76,115,116,218,122,94,134,178,192,104,213,136,249,196,127,241,141,153,68,78,113,20,50,240,158,75,177,252,235,213,223,180,161,122,147,73,115,155,42,210,200,69,203,51,10,2,35,43,36,165,111,97,236,21,0,165,57,155,231,229,230,93,14,215,162,41,26,46,220,234,200,167,225,83,197,128,8,179,86,45,116,31,104,203,163,253,75,62,65,64,40,118,237,25,220,63,251,135,174,57,108,193,244,253,0,181,137,172,195,187,225,95,75,85,158,202,75,195,42,14,48,189, -189,252,33,41,2,79,236,70,161,165,163,52,38,172,107,242,223,12,21,230,244,122,126,6,100,50,8,107,57,131,146,198,245,211,34,13,165,160,219,140,35,101,164,178,94,45,246,219,102,90,116,48,107,138,227,124,24,141,22,244,255,208,163,99,82,223,190,38,245,162,106,63,207,83,118,123,25,178,225,72,42,18,24,109,143,23,205,94,93,142,12,59,65,237,82,28,62,21,205,209,128,98,214,11,145,3,80,223,61,182,230,25,19,165,65,44,28,73,13,206,229,50,170,42,37,26,199,131,231,207,68,75,222,71,91,28,94,60,67,123,96,247,241,55,72,207,249,124,202,67,49,185,98,106,112,75,81,239,151,156,180,78,137,210,182,173,80,186,20,118,181,126,47,227,62,148,103,60,216,31,28,147,221,199,229,76,68,187,230,124,91,183,204,232,182,216,164,152,35,166,213,69,197,209,231,134,34,181,117,188,107,38,143,16,110,111,132,53,153,142,77,160,79,6,116,131,231,189,101,147,53,52,44,64,78,141,251,240,49,18,14,29,136,222,146,195,156,147,0,233,84,116,191,221,51,82, -239,251,224,62,240,6,156,7,103,11,228,161,205,25,59,140,24,62,202,121,53,194,61,185,212,54,211,226,60,251,178,139,204,128,182,91,80,138,107,64,177,95,156,172,65,128,111,248,20,110,10,77,193,24,121,121,72,199,132,185,66,31,80,198,140,236,3,196,55,49,217,19,81,163,57,111,225,183,133,217,205,240,7,176,131,93,234,203,20,63,124,77,56,111,25,1,71,167,120,5,7,135,199,52,44,246,213,177,248,67,227,25,146,38,45,169,42,164,194,93,248,212,158,38,160,199,48,95,215,62,47,232,183,245,244,218,243,206,43,232,219,155,54,118,140,148,198,59,57,96,216,117,132,140,73,201,2,120,174,214,14,206,45,168,67,254,231,143,63,248,255,125,200,57,117,254,127,255,103,152,249,255,253,33,105,181,90,254,53,79,44,68,229,69,74,194,33,47,24,240,88,74,138,46,5,243,38,45,114,208,229,188,30,252,86,27,105,131,222,111,219,1,241,19,219,208,109,65,135,183,5,43,106,226,9,90,7,139,179,228,11,218,118,158,203,152,1,253,112,67,177,148,157,14,149,39, -136,219,4,63,134,133,12,214,235,167,191,197,131,48,71,226,139,163,138,25,102,229,64,127,150,216,30,128,159,214,218,173,111,208,255,226,73,181,103,118,38,47,163,193,141,86,29,148,24,116,13,229,148,139,168,140,176,80,225,60,121,214,43,78,3,180,137,34,69,181,217,111,142,32,252,28,205,72,246,128,168,169,161,96,241,18,62,92,88,146,215,172,139,243,217,56,124,219,196,96,177,163,221,231,150,104,85,137,149,110,54,146,130,242,212,33,39,34,152,139,200,112,12,31,231,47,195,72,153,169,216,244,103,252,77,55,244,133,191,206,231,160,225,125,98,91,148,19,194,166,32,147,132,41,194,1,16,243,151,130,24,202,53,157,209,170,64,125,115,184,80,234,105,232,185,88,226,12,112,183,136,131,242,203,3,242,95,77,73,73,18,206,98,27,200,69,201,200,41,220,100,156,27,165,174,62,1,48,115,124,134,147,139,108,242,2,74,131,58,67,242,95,221,179,105,64,173,249,235,127,163,63,217,109,227,191,106,202,158,231,17,227,188,246,95,253,164,215,65,64,100,240,230,241,183,251, -114,121,253,126,112,99,212,78,13,50,62,93,197,127,166,241,64,250,75,234,228,212,43,24,69,116,106,84,75,216,111,213,25,169,148,110,88,250,232,149,220,36,92,37,13,178,133,148,190,224,121,120,150,4,121,218,37,15,187,3,56,196,26,51,153,47,162,48,213,235,92,99,83,144,88,217,201,56,213,79,18,76,84,230,33,232,155,177,100,202,66,104,75,52,207,207,216,225,79,180,202,31,75,233,62,21,155,163,244,51,173,135,247,87,231,103,77,240,61,54,189,150,150,150,134,47,175,245,152,141,237,103,32,115,204,31,198,35,74,71,11,179,130,21,13,162,143,171,143,71,31,249,221,157,156,254,114,126,108,208,84,165,139,106,209,5,85,9,81,80,154,235,31,88,149,0,186,176,77,15,160,241,159,231,192,175,60,154,246,167,153,65,121,49,224,184,190,125,3,191,42,48,87,70,67,117,158,7,94,97,156,15,166,104,65,125,247,138,224,98,82,212,168,52,39,242,182,39,172,195,199,54,192,94,25,118,230,66,70,34,49,53,166,186,228,199,116,160,89,141,131,179,211,171,191,107, -204,97,18,216,42,118,76,39,201,208,46,193,223,60,99,23,44,211,189,54,104,169,162,94,41,59,212,15,197,167,178,86,70,192,60,19,26,117,35,161,78,201,66,145,101,166,156,208,111,139,132,143,68,113,167,134,90,201,163,105,238,83,93,198,196,191,149,155,246,155,131,178,54,197,14,51,102,152,38,172,163,29,241,151,212,24,251,192,221,106,150,217,51,107,10,187,216,22,97,20,4,225,28,129,99,196,148,202,199,228,203,145,186,178,201,181,200,28,139,76,173,47,149,220,15,28,186,243,178,105,162,193,173,23,223,128,145,54,56,45,120,5,142,109,202,159,165,46,60,188,186,60,243,255,122,100,170,220,187,17,160,205,254,206,38,7,125,62,142,114,4,125,186,107,74,59,221,251,179,67,36,125,197,181,149,234,16,57,170,140,187,56,239,2,200,227,192,18,228,0,129,2,126,247,68,2,249,238,26,103,11,64,252,2,93,198,7,23,148,251,60,31,143,182,81,71,201,243,15,53,79,100,5,192,118,209,242,243,44,31,172,29,115,93,158,18,163,208,90,30,94,231,23,158,245,18, -168,92,32,246,156,180,12,210,193,21,140,185,40,42,70,71,59,12,114,55,44,210,90,105,245,116,172,45,106,216,216,41,114,160,251,219,8,132,50,240,120,25,95,95,30,234,213,254,213,233,161,255,101,127,48,56,190,188,18,149,80,82,57,36,20,199,34,199,95,103,35,133,129,179,217,106,27,87,135,23,237,211,11,225,40,184,186,186,88,30,31,135,215,233,116,190,73,53,227,6,136,7,38,161,42,156,34,12,182,31,205,197,5,218,244,78,231,100,103,165,167,179,73,210,100,218,3,205,189,94,98,65,208,88,194,216,107,132,147,9,180,216,123,108,190,100,8,85,149,143,57,152,143,234,228,91,91,29,182,56,118,43,6,235,38,1,88,35,90,226,48,226,81,43,185,188,243,112,116,59,139,104,64,117,61,0,218,252,203,20,204,10,160,249,152,153,228,180,60,105,179,210,79,39,152,176,14,226,60,171,187,232,251,1,202,47,187,74,107,169,35,142,112,20,164,58,34,102,177,190,219,254,186,191,190,122,253,241,99,225,116,113,188,131,192,234,195,36,47,248,64,154,21,46,147,194, -223,157,131,148,157,222,166,255,134,22,208,197,133,255,229,124,255,244,131,3,20,154,160,90,234,88,21,184,242,146,145,236,32,51,228,253,156,71,84,251,124,173,104,22,21,228,40,37,76,183,137,174,50,45,209,40,152,103,11,9,134,200,88,79,63,156,250,95,252,55,202,195,83,177,118,7,92,160,204,166,173,148,87,67,147,61,132,153,102,202,117,54,254,172,165,254,86,155,57,251,248,238,253,241,47,252,232,71,159,206,47,240,153,148,170,27,209,241,81,13,215,230,111,241,190,50,191,137,160,96,144,228,109,248,72,107,124,196,14,65,155,100,87,238,67,153,74,176,78,24,144,204,49,90,33,44,177,223,253,170,139,40,25,50,252,10,139,167,13,222,102,139,234,40,203,50,87,168,145,161,247,140,76,243,95,127,156,32,1,137,189,184,77,91,11,231,55,178,232,128,172,99,174,72,41,128,3,16,85,214,180,239,22,91,219,37,102,153,37,10,172,145,55,100,86,107,163,98,135,14,72,226,76,3,91,251,76,60,101,90,124,146,253,184,28,51,98,143,161,235,223,41,196,74,32,209, -220,68,24,230,32,235,189,76,218,92,181,125,75,61,127,159,68,179,203,112,98,200,246,96,236,75,193,6,139,61,178,140,88,222,175,116,173,122,154,248,227,200,84,102,100,104,162,22,216,250,42,233,155,133,131,204,170,30,223,54,32,203,211,225,162,238,116,12,212,142,32,242,127,119,147,3,141,178,152,119,5,170,192,135,143,51,113,185,200,206,82,187,47,24,73,89,56,146,129,120,213,106,184,113,12,140,249,87,249,14,43,25,42,59,219,99,87,66,201,36,155,132,106,36,155,104,2,155,199,116,69,67,22,199,9,126,183,160,22,128,159,152,9,134,1,10,72,179,146,11,42,86,206,57,29,12,170,195,22,166,178,216,233,133,153,92,152,238,105,81,169,12,239,9,89,31,97,129,140,106,122,31,146,79,89,120,5,28,74,48,178,28,135,202,196,29,153,202,98,151,71,7,231,69,21,33,118,14,137,101,102,109,127,214,100,233,183,79,31,78,63,126,240,246,207,206,224,10,30,221,173,149,75,95,86,76,30,99,115,225,184,165,86,47,11,116,189,190,189,18,235,175,255,186,0,238, -129,4,76,174,169,144,124,71,229,86,50,207,176,191,114,31,142,132,157,59,233,156,13,39,175,175,172,101,168,146,231,250,112,43,222,139,240,246,104,41,92,14,2,176,180,168,17,232,108,17,80,167,28,135,178,57,159,149,235,10,194,241,170,40,131,42,95,72,111,134,132,173,40,107,70,29,241,211,60,220,38,5,8,88,244,18,62,183,108,112,180,98,218,224,88,164,230,51,127,111,207,30,180,255,144,133,140,196,68,9,188,97,9,243,185,45,129,36,205,37,146,100,215,8,252,230,118,193,191,32,147,141,203,191,233,89,159,255,202,136,46,44,223,76,186,136,29,75,71,202,148,37,185,38,18,141,153,107,81,72,100,178,106,173,182,84,189,167,234,16,192,0,78,162,48,46,78,110,164,244,92,224,80,20,144,71,1,235,112,234,165,105,138,216,28,151,141,29,146,121,118,216,44,111,54,47,170,56,255,13,111,160,45,38,94,42,36,171,62,146,208,16,138,130,38,38,248,250,228,175,3,214,42,88,199,202,149,104,168,133,68,175,117,6,198,185,240,12,142,132,113,189,96,26,19,25, -45,216,69,193,76,207,153,79,49,155,211,92,15,143,189,110,236,23,252,174,211,13,130,94,15,51,222,233,246,188,205,77,111,107,141,125,48,153,24,70,114,27,152,81,97,37,74,169,47,173,214,192,21,191,226,146,184,94,122,67,209,216,152,29,111,170,94,15,173,205,38,73,203,172,148,92,2,122,30,83,184,166,98,255,32,167,149,230,64,184,149,179,219,100,193,224,182,37,172,68,9,159,93,158,198,239,154,28,141,209,96,12,35,155,179,204,72,62,215,233,84,101,208,132,118,177,50,229,34,138,226,52,189,214,175,115,252,247,38,18,254,252,214,112,58,119,192,191,92,63,12,232,92,209,200,105,201,113,41,29,87,193,89,218,173,194,22,25,9,243,138,38,113,141,67,62,208,2,87,152,51,133,121,60,135,120,227,151,143,78,120,121,241,163,101,120,163,176,19,243,112,58,231,4,83,73,115,101,92,40,135,156,108,55,124,247,77,162,225,30,27,31,147,158,1,134,35,219,165,98,54,228,184,114,203,105,122,69,205,75,19,48,203,53,141,224,112,57,9,169,230,225,39,165,122,148, -154,144,86,156,127,202,53,164,211,59,26,37,233,88,135,45,30,17,57,77,60,115,152,144,230,182,48,29,149,128,162,253,206,110,143,221,4,221,62,10,171,194,83,208,89,91,89,170,80,35,95,93,146,213,63,76,30,232,24,102,203,137,150,254,205,19,135,119,0,84,53,165,212,225,224,103,1,90,138,141,183,188,211,202,88,177,154,238,172,106,210,157,182,179,10,82,123,246,70,65,30,201,22,78,77,165,114,89,63,160,54,130,134,38,144,35,26,162,65,13,46,0,89,211,145,151,168,252,109,95,60,98,236,108,13,238,94,190,59,216,23,117,79,26,211,156,224,187,240,169,144,49,18,162,139,102,243,69,158,173,85,236,120,193,133,74,206,11,251,110,12,152,197,127,181,152,222,177,135,158,251,165,119,172,37,33,115,147,20,111,6,174,9,19,123,168,145,91,209,195,145,82,56,152,203,97,255,4,227,100,174,201,212,236,161,81,220,62,16,153,6,37,220,91,146,75,18,2,90,61,154,6,101,114,200,29,127,29,217,24,38,194,92,97,226,136,211,78,151,163,201,251,92,146,37,176, -203,28,207,63,46,185,155,65,129,51,21,240,120,170,140,7,143,237,134,74,139,185,100,15,40,140,4,165,63,215,158,233,185,85,221,51,71,180,191,189,115,215,39,103,64,32,31,217,96,131,142,125,88,88,208,237,67,82,197,106,173,98,55,221,88,106,2,74,162,107,41,93,15,245,74,243,41,23,175,158,143,39,181,83,94,242,147,10,149,172,196,24,139,146,55,108,218,184,126,220,213,231,98,64,67,163,21,77,227,181,85,207,171,4,82,89,27,38,73,182,166,218,151,17,143,184,73,234,91,128,170,70,31,133,191,196,89,89,47,225,45,38,30,221,184,57,124,244,192,223,69,179,81,188,24,87,249,210,120,12,146,105,110,167,176,100,154,72,190,89,156,84,57,13,184,188,17,217,134,179,5,147,121,57,25,189,164,49,132,211,204,177,57,128,47,145,95,108,173,35,36,51,208,85,173,10,233,72,91,233,76,112,106,85,178,211,96,236,75,99,41,240,102,183,70,173,116,169,135,14,217,43,253,200,37,186,42,78,239,11,73,229,50,118,186,18,189,130,102,24,229,119,139,115,98,129, -178,29,28,235,70,210,232,127,45,232,25,180,68,47,174,207,152,236,154,214,71,161,9,212,249,219,56,60,104,203,35,202,107,160,237,60,135,248,18,114,2,13,166,58,233,254,171,173,192,0,52,109,12,194,188,65,82,181,41,190,185,53,23,103,86,225,140,91,113,146,125,246,175,61,220,191,166,174,63,247,107,200,213,199,53,23,2,103,179,175,21,174,90,80,95,219,113,149,225,112,54,142,177,58,32,137,123,120,14,195,64,227,132,63,51,27,208,61,239,17,51,92,99,241,99,151,7,89,196,49,6,141,158,168,207,136,139,64,105,90,239,235,38,120,91,76,132,183,74,247,77,139,153,128,107,17,252,87,86,135,19,73,132,20,27,45,137,98,83,247,160,220,113,30,251,18,31,114,149,243,219,52,15,14,7,26,9,115,232,52,214,196,62,0,106,72,143,110,177,138,172,244,44,104,246,138,0,53,28,162,227,208,95,151,50,87,107,204,221,41,125,152,90,178,230,64,65,195,204,108,188,83,113,212,169,117,35,194,149,62,243,36,52,112,124,42,52,116,109,229,81,28,36,164,113,84, -102,98,141,129,249,212,40,106,56,141,126,204,39,154,68,124,152,221,215,47,222,178,253,84,68,166,163,105,148,27,124,207,243,58,51,155,159,97,46,82,219,255,226,127,150,92,65,54,163,105,201,26,229,180,16,106,38,122,54,22,125,170,5,170,209,198,146,101,230,200,11,105,174,74,25,97,56,148,102,191,182,193,76,8,89,94,68,204,164,72,232,234,28,86,221,6,143,184,158,123,128,127,141,144,20,219,222,175,95,82,22,249,103,94,195,65,18,143,219,167,57,221,62,106,127,130,104,194,169,219,198,170,184,11,49,27,181,47,128,51,137,243,137,142,131,1,209,134,91,138,73,200,76,165,214,9,174,170,152,4,174,207,101,177,196,50,125,89,197,233,194,206,20,225,79,39,253,182,233,253,166,117,203,167,224,231,44,10,86,240,22,150,194,228,46,79,153,203,133,70,123,0,160,153,194,249,189,250,80,2,47,244,255,107,160,5,84,224,145,114,234,239,244,90,219,173,157,186,187,184,50,205,210,13,38,248,208,105,245,123,181,247,161,16,78,105,17,31,255,114,122,174,144,198,4,126, -255,220,102,4,4,112,190,86,191,11,109,140,108,163,17,172,27,115,148,22,140,150,36,236,70,106,243,227,10,54,73,115,132,14,103,17,96,222,214,11,7,250,154,113,116,19,1,239,195,182,171,221,60,223,57,93,34,120,116,40,133,51,74,99,191,248,116,85,62,55,140,130,203,198,77,175,219,233,176,113,211,217,242,78,200,2,44,25,55,223,172,10,131,184,140,150,238,71,171,76,77,139,34,174,77,199,170,100,30,96,209,91,236,77,198,227,215,184,60,247,190,219,173,56,91,103,174,42,72,86,129,49,23,173,63,1,239,117,127,112,120,122,90,229,43,141,10,37,198,240,185,40,62,71,18,124,37,137,212,98,206,198,92,130,155,237,197,144,45,133,225,147,185,191,98,117,94,154,229,252,227,34,26,221,93,5,67,197,184,208,167,131,32,109,58,76,44,99,239,184,96,179,80,91,181,66,24,0,68,90,56,217,145,32,82,20,65,172,56,142,28,19,228,240,236,227,129,129,13,227,13,64,219,23,229,172,241,93,167,191,246,191,164,145,41,70,20,101,244,24,217,74,111,181,239,239, -237,105,249,238,10,13,86,12,95,188,247,115,82,125,248,100,132,239,3,165,61,84,121,224,58,190,65,165,111,88,58,211,248,162,163,119,88,53,164,112,50,174,220,117,20,60,125,156,252,103,136,183,64,178,243,42,185,138,166,225,91,79,74,172,92,226,248,15,59,59,27,181,193,59,241,182,69,227,122,185,45,234,204,233,44,63,128,165,37,56,36,255,245,2,133,92,173,89,209,210,177,216,107,223,135,143,92,234,181,12,109,88,61,139,106,158,137,109,144,143,243,204,187,77,242,108,158,84,45,137,203,253,193,213,241,165,255,101,103,255,236,226,253,190,216,39,201,12,220,140,88,219,74,95,16,42,121,10,14,134,134,82,153,160,54,164,100,178,79,67,199,237,84,117,90,58,5,116,150,156,181,2,28,151,4,119,104,189,128,70,243,3,85,180,98,114,91,162,201,222,179,11,251,236,240,170,70,227,169,92,161,199,208,151,194,75,178,112,10,104,113,98,117,204,57,75,96,90,78,160,3,64,210,159,235,174,7,225,132,225,161,88,157,89,102,160,15,232,176,179,140,254,63,37,209,248, -210,84,58,231,132,172,213,229,148,204,165,194,142,119,178,136,227,1,23,67,20,74,142,121,104,29,118,110,5,198,74,189,174,206,103,188,87,154,168,43,3,22,71,225,133,72,120,16,249,56,64,237,72,216,49,220,73,133,128,53,30,104,56,150,203,32,1,181,251,0,203,81,26,133,138,237,102,131,133,49,80,125,108,56,113,200,14,99,178,236,32,115,82,106,43,118,145,45,208,115,207,248,217,2,161,156,121,71,166,216,16,215,122,105,234,165,1,227,190,51,86,179,76,57,162,104,118,87,33,27,57,187,211,225,178,231,144,1,80,200,15,209,56,191,173,120,14,171,16,75,97,73,84,92,194,166,147,208,100,41,99,71,114,107,176,90,22,204,113,209,217,160,255,49,192,171,138,197,106,226,27,53,219,122,192,129,21,100,241,128,119,49,174,52,107,44,191,140,195,165,36,89,202,236,40,21,122,50,118,25,143,35,150,44,92,209,176,78,56,242,38,55,66,124,244,53,4,91,27,34,128,113,224,186,91,221,71,120,151,70,99,83,65,160,162,193,195,152,198,114,40,165,2,26,107,6, -151,105,122,72,147,7,255,11,239,43,91,17,151,214,188,88,195,27,171,125,41,244,189,212,141,107,188,54,232,130,211,241,154,106,19,247,9,104,61,62,28,255,116,124,201,116,249,12,2,92,51,92,53,28,36,211,178,2,28,238,88,105,249,35,105,178,49,202,95,252,120,118,229,127,185,58,61,63,30,92,237,159,95,20,185,74,32,27,97,6,215,16,113,202,181,213,241,254,28,174,238,208,193,52,159,147,242,65,91,244,242,89,44,183,53,5,29,67,111,86,48,203,24,92,247,40,154,99,43,183,51,174,49,106,96,8,149,113,148,131,224,107,16,164,122,162,127,231,254,120,142,213,111,148,25,109,218,229,90,222,51,217,33,77,239,40,36,57,10,242,75,252,113,120,30,242,191,23,105,146,179,236,67,89,142,38,54,232,156,49,222,41,164,225,172,137,82,155,88,34,116,97,18,63,49,250,246,34,78,114,146,95,77,252,43,63,13,158,50,129,62,157,211,190,13,244,159,11,32,162,169,21,195,141,156,245,63,53,109,98,17,18,20,192,192,142,60,254,5,168,73,249,159,227,199,0, -206,159,38,139,31,41,22,198,67,165,78,128,166,55,159,105,200,115,18,29,201,205,69,146,153,177,145,32,50,31,231,159,230,135,32,56,29,153,209,33,128,72,183,178,114,33,95,25,47,114,211,42,117,244,8,208,119,156,249,144,148,139,226,167,119,139,168,233,125,156,144,62,31,26,233,8,176,129,59,97,166,167,195,167,249,173,206,237,152,52,208,159,76,21,250,79,179,232,183,38,132,88,144,221,14,126,18,116,88,24,207,127,42,232,96,150,162,20,221,237,93,85,228,119,60,197,51,110,252,110,69,30,181,83,145,166,8,181,156,189,65,165,181,170,181,226,232,61,255,224,109,183,58,255,75,42,165,56,57,141,129,200,89,133,214,94,96,245,177,11,165,159,63,245,43,196,188,147,121,207,135,130,155,215,121,17,134,119,98,65,113,142,118,25,76,96,98,241,101,46,233,42,119,170,198,204,197,9,194,10,168,117,69,104,198,127,211,205,66,1,13,165,22,77,201,18,113,10,49,61,224,184,138,182,27,30,34,67,141,84,212,167,84,86,9,85,145,45,122,163,214,33,133,145,105,146, -184,245,119,170,109,82,182,253,94,84,52,11,173,108,197,63,199,60,135,179,72,64,57,116,1,61,181,100,136,138,111,83,62,178,20,99,175,235,189,164,136,146,158,116,116,113,42,200,5,249,104,28,24,30,254,112,145,79,54,205,139,41,148,17,25,204,53,78,10,131,252,129,25,126,30,171,102,193,250,80,76,12,169,64,167,98,8,31,184,118,199,233,236,206,64,158,208,164,213,51,28,68,34,123,145,120,239,255,30,141,211,122,233,165,40,246,105,198,122,48,195,227,234,166,190,78,175,187,0,156,53,52,67,71,1,30,128,249,57,149,95,188,129,114,220,141,189,241,34,181,249,182,218,139,169,123,164,83,159,96,5,112,49,182,26,159,49,92,20,203,212,27,138,4,179,105,11,173,213,56,124,41,217,56,13,3,77,74,28,220,70,147,220,255,235,57,162,126,63,223,134,164,77,50,89,210,109,146,70,95,19,206,84,210,20,66,45,88,186,244,117,165,102,105,148,71,174,148,98,246,54,64,25,220,11,236,73,203,60,242,123,52,150,247,58,183,104,233,128,17,26,162,184,160,196,22, -111,164,165,239,15,147,216,101,56,145,44,63,91,92,70,252,165,124,84,224,224,161,139,113,160,48,62,71,9,214,231,79,130,213,249,192,104,32,43,2,100,67,8,151,129,152,19,252,145,127,80,147,215,138,25,70,94,5,166,76,110,197,195,86,169,76,140,129,139,173,125,18,112,37,33,196,83,163,251,104,12,191,219,68,17,104,220,237,10,98,177,18,130,129,70,29,252,153,69,12,26,244,23,220,38,177,225,132,3,9,19,246,161,136,47,211,5,25,201,51,225,83,143,201,80,102,144,88,69,95,167,217,0,84,97,118,87,73,29,116,78,35,229,21,203,36,216,150,9,106,70,198,149,80,109,52,248,163,255,111,254,191,201,151,79,240,72,103,32,146,171,66,88,137,238,183,99,37,197,193,34,190,83,95,134,35,209,81,110,239,240,116,71,249,221,135,92,250,39,37,251,150,5,161,137,97,11,75,150,45,236,112,79,71,96,164,5,179,196,31,138,76,214,183,194,204,1,151,164,157,149,182,50,124,103,200,126,205,76,25,82,84,96,166,33,229,2,210,229,38,57,149,138,19,72,104, -210,170,192,85,180,106,46,231,163,149,135,148,175,81,162,194,138,21,146,51,143,98,234,241,39,82,82,110,151,252,202,110,187,142,51,147,76,181,238,209,82,68,125,28,86,137,184,101,77,212,253,77,108,6,163,137,86,73,65,232,85,164,142,38,147,252,1,103,101,40,202,40,199,102,158,178,34,192,232,198,125,84,145,18,133,192,252,37,255,94,85,130,82,28,29,119,207,219,247,252,55,146,128,237,191,241,246,143,7,170,87,8,236,212,94,71,47,235,40,212,207,171,13,74,33,96,185,211,84,32,46,128,171,162,68,252,43,136,106,254,166,188,47,77,248,48,39,222,141,144,173,84,60,19,43,222,24,220,92,15,6,112,253,181,61,89,80,109,47,139,225,215,145,213,193,38,29,23,186,206,97,179,171,157,149,241,81,179,186,189,10,85,116,79,120,125,145,103,201,135,38,7,2,229,71,201,238,6,204,39,29,70,57,71,5,172,37,82,161,40,21,250,41,233,202,52,227,43,250,106,201,22,201,247,227,85,123,152,201,127,150,107,54,45,73,58,49,81,170,111,101,95,86,133,166,35, -58,252,239,186,231,34,122,20,149,102,229,46,83,140,231,44,156,231,201,140,246,171,141,153,148,226,11,91,155,21,246,153,216,16,171,110,106,102,205,210,144,11,239,203,154,81,193,139,249,194,237,171,55,145,224,12,80,158,144,4,209,239,189,213,238,132,58,215,197,251,253,110,1,211,90,189,255,236,248,168,242,12,134,72,161,223,12,161,0,87,255,185,77,17,48,11,102,171,173,56,118,97,205,56,156,162,173,239,184,182,241,213,124,238,144,11,140,147,145,157,85,16,173,222,84,45,44,177,76,107,58,160,243,121,159,217,117,210,226,162,178,105,195,15,82,59,192,31,102,201,112,245,174,101,27,177,66,170,165,81,140,106,162,78,200,216,169,124,90,110,237,147,230,139,29,36,201,93,237,170,197,84,84,153,143,253,173,109,49,31,55,188,239,23,179,146,249,248,59,140,71,28,48,64,151,24,128,76,171,98,15,172,216,136,47,154,136,254,231,159,253,107,53,111,140,30,104,129,243,19,183,64,201,243,42,247,183,168,239,240,54,210,124,171,165,160,69,77,233,237,115,185,220,83,118,255, -1,73,105,242,103,159,92,133,10,1,119,174,88,174,6,161,181,53,5,10,71,58,152,184,235,24,151,85,153,179,82,103,24,40,169,131,28,126,124,238,170,98,65,123,166,202,34,122,111,76,41,154,30,77,111,96,87,46,160,50,24,137,113,249,162,165,122,0,172,245,161,186,136,104,254,146,230,58,202,110,43,30,192,169,114,95,246,158,39,101,95,2,120,110,144,125,139,220,153,204,172,146,101,87,66,73,129,112,199,37,91,117,207,56,31,47,62,177,170,12,189,19,169,150,74,242,97,12,99,43,5,134,220,221,83,25,234,233,250,193,11,49,99,154,102,213,243,167,119,138,108,46,56,46,56,149,63,25,85,193,79,132,33,165,104,98,159,167,255,23,203,157,226,53,126,58,59,212,146,100,67,41,144,97,25,105,202,162,25,71,164,105,165,52,119,96,38,219,244,215,13,211,97,97,157,0,78,50,127,178,68,157,230,52,170,242,249,147,77,188,199,255,21,164,168,42,99,77,195,123,204,38,50,187,216,170,82,151,120,34,205,208,6,168,102,252,219,2,219,33,136,127,49,134,13,170, -1,225,244,255,197,14,57,68,38,247,132,180,152,10,231,187,158,208,123,5,185,126,83,73,19,57,53,209,36,209,154,82,168,85,240,147,226,144,107,203,103,67,14,126,194,1,174,73,50,79,93,187,147,9,4,109,1,151,178,196,54,135,222,94,229,41,87,233,125,235,109,137,247,173,239,157,147,141,240,7,164,231,133,241,203,114,240,94,42,213,209,169,56,46,24,4,226,36,35,77,77,84,180,169,27,215,182,215,52,53,227,4,54,99,202,124,113,139,60,43,95,59,131,221,132,4,23,247,203,108,49,180,110,97,225,210,136,102,66,214,29,101,21,231,204,139,2,124,53,160,199,110,51,166,99,53,115,122,20,230,36,13,217,9,43,31,107,236,22,115,253,16,5,104,229,171,11,201,36,110,72,70,173,255,23,15,121,211,77,137,192,241,65,73,186,60,233,212,139,249,218,219,90,9,91,49,68,217,173,54,10,196,178,142,157,19,21,155,28,246,252,25,77,206,30,251,159,223,211,97,48,120,38,74,135,105,228,19,134,174,189,165,107,87,23,175,197,78,193,117,240,17,228,104,124,242, -252,245,16,155,161,106,183,224,142,61,58,114,143,147,9,60,50,149,190,19,235,166,177,190,46,84,136,97,190,206,211,130,15,187,202,111,32,27,135,62,56,144,70,245,189,104,46,12,34,255,94,195,32,221,20,106,15,30,7,208,103,72,249,28,201,27,26,87,4,76,144,216,180,106,139,27,127,172,147,187,199,169,120,74,141,160,133,26,108,125,23,67,154,173,165,152,87,93,31,220,4,182,63,22,180,77,236,147,130,65,24,39,130,223,11,18,90,177,68,175,56,205,111,205,37,182,36,123,168,74,203,154,207,179,116,180,87,178,142,79,175,252,245,211,43,55,134,86,37,35,186,189,174,168,88,219,36,36,64,166,242,7,196,196,160,64,113,153,221,107,147,240,205,65,215,244,12,225,141,169,84,80,222,221,171,206,22,241,230,48,232,215,210,79,147,166,48,14,39,94,171,213,242,14,207,246,7,131,15,251,231,199,82,24,190,62,130,236,170,19,144,94,90,245,243,2,142,104,245,98,192,95,2,122,8,149,89,81,165,26,244,114,24,97,117,253,136,108,224,177,219,33,200,27,47,241, -132,45,223,99,74,24,219,61,130,243,134,241,147,2,170,197,60,200,121,111,194,206,238,81,44,215,208,236,173,120,231,202,189,56,88,100,163,192,114,112,194,250,194,69,150,217,157,6,130,217,48,76,193,20,80,235,192,53,0,231,82,101,55,72,109,215,167,46,233,221,166,208,150,196,67,235,245,206,213,89,37,131,149,165,161,25,24,83,85,209,241,222,150,232,109,219,46,29,241,106,138,139,175,20,200,160,13,113,31,186,219,138,145,199,53,81,114,184,123,87,7,81,114,4,219,88,190,255,106,64,38,227,236,238,35,107,57,95,195,177,128,123,179,114,209,159,229,77,184,177,189,225,224,221,210,5,236,246,63,176,15,63,101,46,67,34,175,5,41,28,206,48,111,137,188,48,63,72,41,215,44,229,252,232,112,53,8,109,120,116,20,148,102,232,116,42,104,121,248,88,14,39,57,105,179,85,126,149,63,178,115,6,229,24,95,175,235,181,226,217,157,73,27,1,167,241,211,148,14,153,187,11,183,214,148,184,187,177,241,201,62,58,205,244,18,93,8,107,76,69,206,14,92,59,69,129, -112,219,92,36,89,244,72,134,204,20,204,130,149,185,139,140,238,59,18,82,156,76,75,85,74,25,16,203,1,86,212,5,129,67,4,171,12,215,175,53,5,107,157,205,1,160,99,10,130,177,211,156,109,229,38,78,134,224,106,83,28,97,157,7,179,118,79,12,216,237,166,80,17,96,62,154,118,164,223,163,234,137,9,200,84,107,65,124,95,57,64,85,142,105,152,98,194,21,13,20,122,130,123,235,241,76,112,46,165,80,200,51,123,248,67,178,207,232,70,157,206,213,39,103,148,92,149,161,108,74,253,113,138,180,130,59,110,226,167,249,45,72,224,58,59,51,129,145,173,241,202,47,179,79,47,109,195,206,238,166,156,133,221,109,239,251,96,246,45,187,208,166,135,86,161,98,220,10,26,69,38,173,56,70,157,213,237,20,208,148,43,6,71,63,84,76,51,60,151,106,106,99,206,150,179,78,11,220,205,40,152,75,205,159,74,172,13,87,207,178,128,157,210,33,131,215,128,13,160,175,128,243,45,101,103,152,106,36,154,3,12,49,119,51,242,215,51,229,236,37,225,198,148,156,169,147, -192,50,38,163,39,48,129,3,169,86,204,79,154,49,89,198,68,41,236,48,94,166,72,69,169,225,134,0,151,250,27,127,94,251,38,23,205,155,111,218,24,39,226,121,142,37,92,222,48,90,1,47,246,53,61,248,56,162,17,21,53,188,237,219,170,88,183,176,25,70,242,66,65,229,89,158,193,68,1,211,108,146,173,190,195,2,121,87,117,55,157,96,251,49,45,219,170,135,87,24,227,234,227,45,19,10,151,169,85,236,242,96,6,47,33,45,162,238,103,122,117,85,79,44,142,87,135,126,88,20,133,40,128,107,188,100,132,73,18,125,155,200,45,167,153,100,73,140,186,192,176,248,77,29,17,101,177,168,220,123,59,221,190,236,189,14,162,25,33,103,165,116,55,54,118,127,231,17,8,203,135,75,201,104,40,120,148,220,0,233,156,21,91,203,219,110,109,252,239,106,119,70,231,229,156,115,119,103,255,114,126,230,175,95,94,28,22,164,87,153,162,32,171,64,135,179,155,5,181,2,31,82,161,61,151,56,206,12,100,171,98,244,226,148,90,29,225,187,36,185,137,133,72,131,43,86, -238,9,79,171,83,162,183,222,217,196,17,54,19,84,227,204,136,177,69,128,23,78,167,60,209,65,178,211,135,117,84,147,240,67,243,249,188,47,234,185,30,76,125,99,227,161,170,216,77,214,227,102,37,174,73,167,43,3,164,203,11,109,187,35,137,211,189,13,36,78,255,225,133,214,90,201,154,13,238,77,10,137,150,236,48,73,1,98,118,112,250,30,118,201,223,58,116,190,184,217,86,92,133,138,166,193,43,16,173,107,32,108,139,50,45,233,120,207,41,69,48,107,233,57,233,31,38,216,145,188,43,147,149,142,68,148,52,136,165,8,250,247,63,88,88,20,218,62,31,28,218,130,163,191,127,229,215,42,225,105,200,104,52,53,212,142,80,231,213,173,49,31,141,51,81,172,149,228,101,134,188,197,10,191,150,56,184,165,246,202,106,213,21,169,229,107,202,9,106,118,133,193,129,187,236,105,141,44,12,217,231,178,215,6,81,157,195,83,7,154,58,176,212,249,127,210,103,241,255,164,135,192,39,234,206,176,212,49,73,221,106,54,149,16,161,137,122,164,121,12,37,186,143,128,153,51, -243,104,254,156,66,38,245,126,153,138,59,149,176,192,184,148,178,99,209,156,247,115,250,191,127,169,112,78,24,207,201,234,107,224,122,171,11,82,127,184,206,140,229,101,91,69,222,62,105,226,99,83,103,57,98,42,99,225,171,119,25,194,145,64,43,33,160,74,244,174,208,182,72,18,172,249,189,38,83,152,193,209,28,83,87,190,20,153,59,164,100,217,100,171,52,45,136,89,107,109,137,82,24,62,68,21,168,12,165,211,83,240,73,132,130,90,60,15,102,1,10,182,137,14,203,42,80,44,21,183,240,131,1,61,8,107,139,48,178,20,66,118,74,175,216,155,47,134,113,52,170,178,0,57,73,173,102,226,213,194,60,188,77,232,212,185,72,249,140,110,234,159,134,239,103,46,95,203,10,112,150,176,249,254,224,248,228,227,229,177,38,195,49,177,37,115,85,163,98,154,226,146,185,92,237,237,83,38,76,153,38,91,160,136,226,143,80,252,108,102,26,172,178,26,42,143,175,83,85,114,154,150,110,186,68,8,63,75,76,101,195,57,109,109,58,81,3,239,156,116,70,234,30,216,120,97, -80,66,149,149,59,230,203,48,182,52,141,245,137,75,196,137,186,199,87,24,33,37,188,159,234,0,145,252,69,201,116,144,36,129,188,10,225,102,16,83,171,195,103,238,116,205,254,159,163,118,156,221,102,33,243,165,113,46,16,221,125,36,171,139,211,218,153,248,149,89,154,153,159,37,255,29,71,105,185,214,56,208,101,110,108,22,214,119,202,238,237,79,71,23,188,175,66,84,18,19,187,47,99,193,157,39,35,192,175,216,163,91,117,48,109,109,238,138,6,180,5,172,108,242,194,185,84,39,178,75,71,173,137,44,42,75,41,253,231,35,247,69,230,243,167,124,4,51,181,250,119,6,85,33,164,86,212,183,195,110,213,104,231,56,148,252,217,180,250,102,53,97,217,8,62,71,213,231,243,96,213,91,44,124,148,230,112,113,13,236,102,169,1,171,107,154,221,164,49,80,80,101,211,156,210,102,96,139,27,6,7,125,104,51,109,166,33,155,165,253,141,124,136,86,171,66,140,36,89,126,147,134,131,31,207,0,53,201,79,245,144,58,45,229,9,171,218,172,116,85,82,70,45,165,67,133, -68,233,29,45,114,255,117,52,246,95,175,62,153,121,166,243,112,182,56,8,82,182,134,33,84,7,139,33,190,106,242,23,135,8,156,232,55,69,168,172,202,103,220,84,152,25,187,190,225,214,224,177,126,72,126,8,159,26,108,118,147,21,147,76,167,40,48,42,97,18,205,47,160,165,88,10,247,98,200,34,115,73,69,182,108,237,47,235,60,149,75,75,16,26,40,28,42,85,157,92,120,12,122,54,21,12,22,168,16,1,161,65,115,230,112,69,216,228,71,16,65,45,151,197,108,203,221,14,209,84,162,116,188,193,226,145,54,60,218,114,178,39,243,18,36,231,194,68,143,140,193,87,212,228,36,225,166,117,56,1,224,189,15,34,118,211,87,111,197,13,193,29,108,108,255,254,173,88,53,93,69,244,121,121,179,168,112,250,153,94,12,91,149,13,43,173,24,162,61,102,80,166,36,59,49,181,209,147,39,236,29,122,217,90,117,171,43,249,219,254,107,50,46,217,84,68,1,198,185,184,190,217,45,171,45,219,83,151,142,76,78,139,95,85,133,236,194,134,170,7,237,79,55,218,202,133, -63,135,116,209,61,170,7,211,56,130,209,173,184,145,139,200,88,166,164,179,131,143,135,63,28,95,121,40,148,134,56,26,195,138,161,251,174,174,182,1,111,212,83,70,55,228,79,234,222,85,150,185,198,240,105,30,72,238,17,173,199,15,87,167,87,255,105,83,108,76,29,199,234,135,17,75,247,146,235,151,134,233,128,125,43,239,147,156,54,22,105,147,252,151,191,254,128,202,14,183,73,206,132,21,85,75,101,115,91,165,118,143,236,247,121,254,162,61,241,141,114,187,42,196,62,197,235,55,132,213,59,82,64,198,36,232,172,138,142,119,97,50,117,17,3,32,38,89,136,194,9,84,8,253,26,230,40,207,101,252,5,123,94,247,72,148,192,71,239,22,40,85,146,74,35,147,241,221,96,153,252,248,158,190,255,136,148,169,213,9,53,188,128,36,169,154,14,202,119,63,187,146,154,45,32,248,52,25,204,90,131,163,214,165,190,199,113,183,169,225,240,52,8,149,66,131,99,12,32,147,52,49,123,66,229,126,107,58,9,247,123,14,96,138,213,227,11,39,233,189,194,99,4,64,86,64, -218,79,174,53,91,153,254,220,204,241,155,165,5,208,81,140,210,174,183,191,184,89,100,121,237,219,63,15,126,133,222,67,103,219,45,29,101,182,210,25,66,35,0,217,106,178,183,199,102,223,140,11,20,27,114,169,200,88,29,86,173,69,50,86,12,15,158,86,167,113,106,86,217,254,164,144,163,185,192,118,39,26,23,170,68,65,147,47,178,106,133,111,104,85,17,108,90,30,175,95,58,157,10,219,68,206,2,247,4,216,251,163,43,159,246,34,0,213,130,136,43,213,11,227,194,185,38,245,12,101,35,129,5,165,83,92,245,129,213,229,24,230,131,133,134,65,74,245,248,138,156,73,164,41,168,18,10,188,22,232,195,12,182,52,227,156,216,85,91,149,123,63,32,233,121,55,129,157,125,241,201,113,24,42,201,118,189,123,156,206,238,15,180,127,88,46,171,22,99,121,249,157,18,50,163,10,196,157,195,74,41,214,136,253,70,120,73,174,64,124,145,154,82,239,207,10,20,209,225,4,74,66,35,66,58,70,122,31,190,172,6,84,189,174,18,100,186,168,31,105,200,20,80,199,160,88, -141,130,29,16,6,182,7,78,198,48,208,210,73,130,124,96,122,39,149,251,171,215,233,155,0,245,247,11,82,246,255,71,7,113,25,112,183,124,108,202,198,207,96,162,211,99,208,106,111,115,237,148,175,237,193,225,233,185,37,109,17,23,5,7,21,86,165,174,121,47,165,14,54,77,7,63,94,157,152,247,128,29,232,175,51,244,141,203,180,25,254,104,182,209,87,133,121,41,111,100,185,89,105,81,2,54,247,72,25,49,9,33,248,179,250,150,211,114,220,64,221,241,89,137,12,231,143,45,138,83,97,29,43,48,66,14,157,157,108,19,167,12,100,109,200,111,106,141,187,236,158,221,160,164,224,210,174,97,243,115,117,214,151,56,226,10,143,58,56,129,29,190,185,10,81,31,135,204,144,193,241,106,184,69,179,220,106,197,37,24,233,204,95,23,177,52,231,114,245,88,179,153,177,54,33,57,53,72,42,76,63,54,43,172,213,90,171,82,26,186,155,178,166,55,122,171,107,218,46,255,111,95,213,63,169,78,80,210,194,35,225,196,49,181,106,179,124,49,153,120,200,82,86,164,146,144, -79,241,89,125,32,69,234,194,89,160,252,88,222,197,59,186,119,205,251,99,43,224,253,82,229,27,102,253,96,102,209,236,183,88,207,154,138,55,225,242,102,218,52,63,195,52,171,130,218,156,79,21,242,62,118,48,37,134,119,211,127,189,207,9,61,26,150,178,68,63,195,39,137,69,89,178,22,28,243,240,159,21,180,107,114,208,206,245,4,116,145,105,153,91,76,136,65,96,241,184,242,37,111,108,154,220,87,129,223,253,143,222,241,7,161,218,116,73,160,57,220,131,160,31,18,83,160,57,60,243,186,188,103,154,94,98,36,220,43,209,117,179,167,73,167,211,232,1,217,92,252,219,21,219,68,166,17,164,54,74,21,252,16,9,81,51,214,65,140,114,228,134,98,144,85,16,169,158,99,124,71,102,4,107,171,45,127,156,133,210,180,41,245,194,148,101,229,154,48,149,210,222,255,235,33,170,232,121,9,36,79,246,52,165,183,229,253,186,152,206,217,103,0,163,217,33,20,94,117,19,212,91,147,88,63,192,45,86,158,89,157,238,22,191,250,205,231,222,124,133,78,84,241,8,66,24, -134,205,28,178,123,68,161,110,198,151,59,66,185,22,78,220,178,59,125,156,140,42,94,141,21,248,14,30,172,230,82,57,78,82,192,208,76,17,18,33,115,80,68,17,115,175,211,153,165,245,60,68,61,147,184,187,49,166,42,76,96,3,166,149,42,181,248,19,91,12,133,106,221,168,1,31,136,87,171,183,79,211,95,115,255,117,38,78,63,128,28,197,149,140,194,233,182,194,137,193,63,86,196,93,57,195,101,15,255,130,128,89,146,231,25,77,108,234,14,50,220,66,217,198,84,47,169,136,56,29,169,46,237,212,47,41,191,185,55,206,187,45,111,188,138,119,91,144,48,112,117,163,15,102,33,55,205,161,172,203,181,33,235,248,199,53,229,116,153,195,13,111,208,83,145,61,194,39,140,193,168,90,143,159,255,188,238,117,54,118,183,174,141,127,113,159,54,112,188,180,46,191,121,85,218,88,52,11,122,79,147,31,155,128,62,253,244,174,13,94,48,212,136,159,221,228,183,254,43,154,96,205,150,75,153,36,98,57,79,200,37,8,91,77,177,178,87,125,127,241,78,83,185,141,198,204, -132,72,199,191,156,158,208,70,92,76,135,179,32,138,151,111,250,120,116,112,200,71,160,133,251,44,93,112,30,161,80,8,13,144,175,26,8,159,126,129,13,50,177,243,229,187,74,2,152,93,151,18,180,252,73,171,236,98,93,157,5,95,159,76,205,75,201,198,95,106,133,25,77,47,20,133,193,151,44,93,80,216,194,66,30,132,242,113,37,111,0,125,166,163,74,15,241,108,49,180,31,13,41,223,82,131,188,220,1,92,71,205,150,229,103,66,76,106,70,34,54,127,144,237,43,161,133,75,186,39,209,44,171,149,133,93,183,58,20,172,53,31,15,109,141,201,189,10,29,212,136,81,137,158,153,252,84,206,250,37,201,110,139,6,86,221,89,100,80,201,25,172,106,70,86,212,118,113,59,175,106,225,65,202,64,106,205,230,41,59,109,96,109,51,230,150,193,150,230,138,2,89,70,123,255,198,255,11,135,57,97,153,202,239,43,59,67,53,4,37,228,47,32,243,179,149,60,183,50,184,94,111,48,117,165,217,219,153,73,73,51,86,48,218,17,147,47,178,222,89,221,142,106,78,11,195, -206,56,134,155,147,116,240,144,65,126,74,254,176,116,235,224,167,15,69,213,89,252,113,75,175,31,58,123,34,101,8,151,46,63,228,122,129,42,242,241,123,83,75,8,234,87,156,160,185,116,79,161,154,87,189,8,104,53,183,33,202,170,90,120,8,131,54,238,67,25,196,161,186,139,129,41,173,187,127,73,11,24,6,149,87,94,24,134,104,106,85,198,228,164,65,3,156,186,180,223,203,119,31,218,106,151,222,114,185,75,171,76,196,75,196,206,234,214,22,110,4,132,246,181,52,159,100,180,106,22,253,210,108,93,145,112,31,41,63,186,184,128,222,46,209,75,163,203,251,72,152,216,25,57,0,195,3,91,101,13,86,135,217,78,193,204,84,253,17,82,38,54,193,150,87,235,254,112,136,104,170,92,182,231,177,183,136,207,95,255,85,68,162,155,19,118,152,248,65,206,31,255,115,11,132,167,204,21,205,41,76,204,142,27,77,26,107,222,219,165,150,217,149,45,22,209,158,55,129,225,23,104,153,142,188,34,165,80,17,4,212,165,100,52,129,187,220,196,151,165,182,139,122,20,192,23, -110,117,72,250,111,62,159,123,146,83,177,188,37,82,41,210,46,89,240,13,59,3,74,31,183,116,245,177,14,244,42,97,30,188,246,25,217,116,105,251,148,148,194,67,18,149,237,193,67,48,231,186,176,21,74,62,29,161,59,45,73,178,233,238,144,45,23,179,182,183,243,135,253,19,138,206,121,146,116,42,241,213,180,13,137,74,153,93,191,242,94,152,239,110,81,59,175,49,77,128,19,92,67,49,214,59,50,97,241,46,110,67,176,38,255,191,206,174,109,183,109,35,136,254,138,96,160,129,85,72,98,227,194,9,146,2,5,108,171,176,131,56,169,16,57,109,95,146,146,182,24,91,53,117,129,40,37,246,223,119,206,92,246,66,46,227,216,47,137,96,145,92,138,203,157,157,203,153,115,42,200,179,178,183,209,237,43,54,130,141,174,132,233,201,234,111,36,234,248,104,110,220,170,86,100,37,177,188,170,210,16,232,169,77,142,78,253,184,20,42,216,192,186,118,141,226,107,118,157,135,136,246,177,35,201,18,121,36,183,19,180,147,214,158,33,51,125,119,33,250,67,25,219,152,44,123, -223,115,104,246,81,31,76,100,36,28,170,214,107,70,105,85,66,125,206,148,171,191,160,56,131,30,213,249,106,117,155,63,251,130,28,89,20,210,179,109,239,157,94,188,21,178,73,178,97,197,211,34,116,111,102,98,227,162,73,12,233,100,137,5,4,57,2,246,194,227,141,199,84,173,229,159,7,207,106,174,158,151,186,122,158,63,247,78,233,203,167,151,78,38,179,47,70,101,47,230,75,73,111,232,46,206,231,203,221,157,51,171,109,103,92,252,75,225,211,109,100,228,35,20,94,7,88,62,223,115,243,7,183,151,34,12,166,80,178,230,88,38,5,81,12,208,229,138,246,74,21,103,163,149,114,203,104,46,158,141,8,127,193,50,118,181,211,226,168,123,71,239,199,228,246,211,6,189,224,235,215,34,68,105,27,206,44,219,37,187,110,153,82,71,68,164,180,48,254,218,165,19,145,39,20,6,57,121,85,161,166,7,80,58,197,125,201,14,121,232,137,209,227,221,152,130,149,97,223,138,217,127,187,58,80,242,146,94,43,97,31,145,205,143,140,1,217,134,93,69,238,21,100,187,166,180, -106,54,169,218,161,206,113,111,97,36,153,100,146,165,129,112,221,114,224,145,53,34,123,118,60,29,247,12,58,35,161,228,53,143,131,33,221,163,109,157,249,199,29,153,201,185,10,150,79,184,34,57,57,113,166,131,177,179,14,92,214,121,151,174,80,97,231,29,125,120,39,12,38,216,66,232,122,39,147,143,9,219,96,149,37,70,207,70,11,144,107,51,170,159,218,62,145,185,242,22,173,114,11,159,117,105,61,170,79,179,8,220,48,22,73,228,238,7,205,71,235,155,130,61,200,101,89,185,174,35,184,26,181,232,42,241,83,234,21,220,107,59,231,200,129,235,236,137,90,17,221,202,120,14,71,253,146,105,105,190,183,148,163,169,117,229,250,246,6,114,185,91,110,119,189,209,204,75,143,58,49,220,84,90,238,133,101,229,92,110,230,69,82,55,231,199,236,13,212,176,197,59,69,78,128,188,110,153,144,125,105,45,30,176,118,64,201,234,83,180,4,251,233,97,30,156,155,124,239,236,126,182,41,68,90,70,68,104,120,171,205,135,168,64,241,95,83,251,137,201,223,6,201,241,239,179, -152,60,98,114,184,203,67,33,166,218,230,32,205,189,0,151,179,10,24,231,13,5,247,207,1,208,225,47,63,53,70,252,249,215,120,94,14,204,141,10,90,160,252,228,60,126,110,222,11,223,220,202,211,156,167,122,4,239,204,205,49,201,61,233,230,68,113,199,237,26,105,208,236,195,229,177,238,208,231,32,24,28,139,218,199,57,193,240,17,235,109,250,18,249,222,95,243,13,243,213,43,20,17,42,79,180,48,187,142,190,56,123,51,61,62,58,121,27,31,23,189,107,167,166,254,141,184,106,52,210,3,97,174,154,202,53,214,104,235,244,194,117,155,17,8,246,114,78,206,116,51,147,195,35,76,41,242,167,31,198,154,61,80,135,148,112,234,207,190,79,22,143,110,178,209,213,122,221,81,180,161,173,86,55,228,64,48,222,93,103,192,125,94,14,27,233,143,168,13,93,42,4,228,203,85,243,169,147,239,82,85,243,107,244,8,182,93,69,173,13,6,9,24,237,216,114,169,10,92,126,50,62,110,36,30,18,217,100,115,29,55,129,110,57,210,103,40,224,113,16,164,9,165,88,123,180, -90,93,139,238,131,178,161,213,56,5,50,89,56,197,178,7,142,163,61,185,26,96,160,242,33,249,103,156,30,136,68,149,205,79,97,57,147,61,131,95,24,135,111,9,179,147,181,190,160,15,225,223,139,10,147,0,233,50,56,9,228,200,204,145,121,80,184,175,7,203,199,114,220,124,245,62,23,2,218,51,141,155,214,52,170,6,115,249,144,139,130,56,124,160,97,161,8,139,1,222,174,88,21,10,105,161,190,101,104,114,51,187,255,122,194,81,255,89,52,215,85,110,224,32,110,9,56,236,176,61,226,171,253,88,48,247,79,144,181,3,100,32,133,16,96,27,147,29,189,27,83,236,50,175,99,4,98,123,199,33,79,89,217,209,197,152,131,57,68,107,210,194,200,38,50,57,220,208,172,92,222,11,1,71,51,1,204,218,169,117,184,102,2,241,98,20,45,153,252,21,183,40,206,161,224,226,56,61,192,227,176,45,185,107,129,62,2,154,198,128,175,25,226,124,105,66,147,35,233,37,33,243,100,42,193,24,46,229,84,2,45,236,120,219,112,39,18,174,231,67,89,198,2,228,161,81, -200,99,188,49,110,49,245,152,133,255,232,17,62,214,211,108,57,119,145,33,210,211,156,161,173,219,246,175,145,68,131,70,82,198,109,39,201,89,110,212,208,62,159,148,85,83,192,213,106,35,86,0,149,206,246,203,34,70,88,208,110,234,239,122,35,66,161,5,194,131,117,177,44,141,0,30,93,91,181,80,186,148,155,76,47,155,153,145,202,174,220,160,102,126,165,60,154,12,106,167,211,55,211,11,60,119,151,209,125,117,16,110,48,46,113,32,150,149,55,2,122,247,170,251,218,4,164,157,10,145,180,135,105,203,41,89,103,148,48,12,85,49,144,51,245,158,195,114,43,11,148,4,12,183,186,235,13,122,95,227,109,112,192,48,171,13,119,159,151,219,43,7,1,110,222,48,94,238,66,178,129,13,85,50,122,56,53,43,5,213,2,2,11,24,50,139,173,248,72,176,103,44,138,188,189,95,11,137,100,62,252,29,213,102,200,56,142,228,131,28,32,9,180,41,66,152,174,27,145,252,101,25,237,81,24,204,125,225,97,76,174,29,70,81,178,190,176,41,221,71,146,53,3,236,175,240, -0,239,120,56,16,128,6,149,79,122,29,232,145,110,156,214,183,77,147,245,132,168,193,8,143,66,209,22,144,37,153,193,224,155,190,8,68,186,162,170,235,110,218,15,104,35,185,148,139,174,23,218,162,75,199,128,43,22,168,159,190,229,211,85,116,221,232,150,17,45,162,153,99,251,13,253,28,254,32,229,68,242,71,114,54,212,74,103,33,116,236,97,63,56,101,21,216,6,101,228,8,107,97,120,190,214,223,55,29,159,59,2,62,86,241,178,117,184,68,95,13,125,171,84,225,246,155,241,63,206,49,110,12,199,54,205,175,203,225,111,159,183,156,177,121,157,103,121,70,91,195,183,242,50,71,151,83,158,125,32,95,123,81,172,207,56,111,15,255,192,250,153,62,211,237,125,250,244,63,196,98,236,35, +120,156,180,189,9,99,219,86,146,46,250,87,48,78,79,135,114,83,164,184,104,205,76,207,104,179,173,68,178,21,81,78,50,157,81,155,32,9,74,136,64,130,1,64,45,190,115,251,183,191,250,170,234,28,28,108,178,211,115,223,116,79,155,34,129,179,159,90,191,170,250,53,234,239,237,125,23,246,122,253,173,239,252,222,238,119,31,246,191,251,199,63,254,209,233,13,183,246,190,235,123,127,250,83,175,189,245,77,111,107,56,232,245,123,244,221,214,176,191,219,219,222,223,218,223,222,235,237,109,13,118,135,253,237,221,173,237,131,149,159,248,139,155,95,253,189,193,119,175,175,118,232,173,126,123,251,155,65,111,208,219,234,237,244,135,244,212,214,96,171,63,236,245,183,123,123,123,195,222,238,246,222,96,127,103,231,96,234,175,178,48,94,222,252,250,110,239,187,9,94,29,210,155,3,122,115,107,119,111,103,216,163,247,134,219,253,193,238,246,144,222,31,14,105,132,3,234,123,119,103,119,247,32,11,179,40,184,249,53,196,208,105,192,199,24,232,176,189,243,13,13,176,191,75,111,14, +251,195,157,225,96,175,63,232,237,245,251,59,251,131,225,254,144,70,222,235,31,132,89,64,227,92,221,225,133,109,234,105,184,61,236,13,182,104,90,187,219,3,122,96,151,254,29,110,237,247,250,212,221,222,214,246,54,245,20,60,101,55,191,242,26,77,104,117,176,66,120,119,135,58,235,239,110,227,141,189,225,94,111,176,187,215,31,246,119,250,212,253,214,46,205,18,125,111,31,204,130,116,74,239,14,250,189,239,50,26,208,119,199,255,185,253,93,143,94,222,109,239,126,211,223,218,223,234,239,236,238,83,167,52,84,154,237,96,127,191,55,216,163,78,135,189,237,173,222,224,96,26,207,104,134,147,254,246,214,128,123,220,163,125,216,161,150,121,65,182,119,122,52,232,254,96,143,186,220,237,13,6,244,191,219,195,189,221,131,52,192,78,100,113,114,243,235,235,79,255,217,218,234,108,117,250,219,219,27,120,127,159,222,223,27,12,7,131,225,206,254,176,183,53,160,126,168,145,33,150,107,103,139,54,179,183,221,223,59,152,248,41,117,154,209,87,187,178,168,189,45,122,141,150,125,176, +183,61,160,190,119,232,127,104,87,105,134,3,90,160,254,254,112,111,48,216,219,58,152,70,126,154,234,42,97,133,94,99,150,189,94,187,215,251,102,23,139,187,61,232,15,247,177,58,131,62,173,114,127,103,123,191,71,203,188,189,51,220,234,31,36,193,239,235,48,9,22,193,146,214,57,164,195,241,221,100,216,255,206,167,255,215,147,72,131,145,131,216,111,247,250,116,20,183,119,118,182,176,96,219,116,22,250,131,109,90,241,173,222,222,144,70,68,255,161,29,206,244,44,78,242,57,12,218,189,193,55,251,253,225,128,70,178,63,28,210,10,80,3,189,253,94,175,183,181,71,255,161,153,209,186,240,209,232,233,153,210,238,229,245,97,187,55,252,102,151,14,49,109,213,254,16,221,239,15,176,126,125,90,255,254,206,214,54,109,68,95,94,239,211,178,255,103,255,79,180,238,189,254,30,254,159,87,190,183,221,238,209,109,160,33,246,182,183,105,222,3,90,234,254,30,205,125,155,214,126,192,167,187,183,187,119,240,62,120,76,79,252,44,208,19,243,250,248,79,114,212,122,59,237,222,206, +55,91,120,127,123,111,159,54,176,55,196,250,13,134,195,253,254,254,96,176,221,223,223,30,236,108,209,58,166,235,40,211,151,113,155,248,50,218,70,118,219,189,93,186,87,52,215,237,109,154,61,191,70,51,223,237,97,40,253,189,253,29,172,130,54,50,222,140,194,37,198,65,39,227,59,57,12,175,143,255,210,235,237,162,161,61,186,53,123,123,59,91,131,125,90,12,90,131,173,109,58,234,68,14,246,104,163,105,159,251,116,15,64,15,166,247,254,109,48,222,212,139,202,67,192,9,220,30,108,239,225,224,210,155,52,116,26,4,181,179,191,181,181,67,223,236,237,209,117,58,184,245,87,133,3,216,223,106,247,183,232,20,17,245,217,166,91,73,125,209,241,219,218,7,37,33,162,64,59,64,132,104,127,91,78,224,120,115,25,164,89,48,163,205,223,222,226,105,247,123,237,126,143,214,142,206,223,246,246,222,112,184,67,227,165,190,119,65,152,176,133,116,131,183,119,7,7,151,126,130,3,211,223,254,206,199,202,243,155,253,118,191,255,205,110,255,112,123,247,100,247,104,64,180,136,142, +59,200,201,214,155,163,163,126,239,136,238,194,238,246,214,65,186,158,232,20,35,58,50,230,228,174,238,62,104,255,131,118,127,240,205,176,127,188,119,122,178,189,119,216,123,115,186,253,230,240,104,235,205,241,233,33,157,244,225,206,209,155,55,219,180,119,171,56,196,233,103,26,248,137,223,27,182,251,195,111,222,12,135,111,118,118,78,15,183,142,78,250,187,199,59,189,211,195,227,195,227,163,254,9,53,182,183,119,72,100,55,9,162,128,111,44,222,193,77,221,250,194,255,29,156,4,115,159,143,201,255,249,244,127,255,245,244,253,230,199,145,247,107,218,255,206,187,146,150,188,187,48,37,234,241,252,231,155,95,211,193,119,94,159,206,104,167,215,233,121,173,36,120,232,120,116,74,123,91,27,94,235,251,117,244,204,191,109,224,185,237,239,188,95,95,119,189,227,117,146,208,29,246,210,204,159,68,129,103,134,38,79,208,239,250,232,53,245,224,209,127,179,187,192,155,135,73,154,121,119,113,54,15,159,188,121,156,240,151,210,167,121,191,227,253,140,65,221,222,81,143,73,48,141,23,68, +39,102,158,31,69,222,58,13,18,106,105,73,253,209,95,25,154,125,160,111,136,159,180,189,32,93,5,211,144,190,127,166,31,98,154,86,178,94,46,195,229,45,119,16,209,29,163,110,207,195,229,250,201,155,209,124,147,112,178,6,31,74,189,199,48,187,243,206,207,127,186,160,81,120,52,158,101,240,24,36,157,194,20,182,48,91,239,56,78,100,106,244,167,252,19,18,213,254,142,118,221,123,67,115,121,244,19,116,151,122,241,210,59,142,124,234,152,218,163,25,81,207,51,47,139,189,37,125,79,221,62,208,16,189,69,176,152,98,6,225,210,187,142,87,89,231,174,208,44,58,11,103,166,175,215,117,157,133,180,38,179,144,154,246,14,211,148,166,51,254,203,248,47,222,52,241,211,59,183,251,194,36,236,214,218,141,221,221,223,167,141,189,240,147,194,190,214,78,184,50,136,179,165,119,25,167,52,146,78,20,223,210,166,70,65,234,45,226,7,153,42,125,71,211,235,210,46,101,65,119,141,177,117,233,169,82,11,231,65,178,242,136,126,174,120,111,60,159,182,120,190,94,78,101,83,112, +48,64,143,104,108,116,75,232,201,152,158,162,95,202,75,17,39,11,63,59,91,102,71,56,199,211,59,154,182,140,224,49,78,238,101,103,233,245,157,33,31,153,192,159,121,241,28,95,148,90,57,241,147,251,235,59,226,70,118,0,158,63,251,109,157,234,198,77,130,140,70,224,77,227,37,157,181,204,139,226,71,47,90,47,194,37,77,63,123,166,175,163,56,73,75,45,18,89,247,14,143,241,11,207,107,36,31,179,231,21,38,26,161,133,52,164,137,135,243,144,186,144,190,192,11,101,222,51,26,14,173,229,44,240,30,239,130,37,142,113,22,210,216,50,30,97,74,147,154,222,121,119,254,106,21,44,211,78,169,223,11,218,1,190,137,180,220,225,212,93,16,234,46,161,31,105,246,116,159,86,81,64,39,7,195,161,134,150,51,90,232,242,230,28,199,212,235,81,72,35,234,230,159,105,29,237,2,181,214,41,238,214,42,94,77,233,254,99,121,147,53,255,178,81,106,137,174,147,55,143,252,219,243,211,183,135,199,255,53,254,116,124,249,17,227,73,215,171,85,76,171,153,4,124,99,227, +104,230,209,47,105,229,30,28,103,73,116,30,78,218,252,225,165,3,121,165,203,148,222,211,165,146,137,151,119,229,108,57,143,209,204,248,224,224,60,152,103,127,235,94,17,141,201,254,230,165,116,88,105,149,22,1,209,141,89,249,165,195,217,44,196,188,232,214,30,46,195,5,174,92,241,152,250,252,45,214,132,14,215,99,56,187,13,104,213,232,251,219,96,25,36,244,22,81,176,140,70,19,85,134,243,51,237,46,198,241,113,229,5,15,160,162,254,108,38,155,117,18,79,79,169,215,46,145,171,128,63,92,133,211,59,124,40,181,240,86,187,160,233,46,136,116,210,16,162,56,190,55,123,45,39,138,86,131,169,94,247,231,112,57,139,31,211,238,133,63,253,48,42,79,18,103,18,215,224,56,166,219,198,27,42,7,219,75,169,93,217,113,51,181,244,142,90,209,99,111,46,5,13,155,47,91,126,147,194,185,115,142,137,76,251,212,200,67,80,190,38,225,148,46,22,13,172,215,35,162,236,131,146,132,212,98,121,161,78,159,86,65,18,98,58,52,215,159,253,231,8,119,202,28,160,22, +221,139,132,187,88,210,181,50,191,198,172,100,96,26,244,51,209,82,154,71,182,94,109,84,142,151,89,216,6,186,62,10,232,190,251,196,56,104,133,19,154,2,141,118,206,36,135,118,41,142,42,116,153,58,94,17,109,13,227,117,234,17,123,201,100,4,252,189,76,175,230,4,16,237,92,206,186,73,64,100,112,26,216,85,160,19,68,247,219,59,5,237,243,238,131,103,111,22,51,141,140,49,91,126,165,212,212,37,216,96,138,189,67,119,87,218,28,150,100,38,220,223,155,251,81,90,222,0,190,13,127,57,142,194,233,61,63,139,78,83,239,46,203,86,76,183,240,33,5,29,190,47,111,201,223,226,120,129,251,239,30,181,242,136,194,167,32,186,192,246,143,55,61,229,205,150,172,97,199,22,36,44,210,156,50,143,212,154,127,245,124,250,106,133,87,60,218,236,57,157,185,50,109,43,159,209,182,231,30,88,234,131,216,58,205,250,153,41,236,63,121,62,73,138,152,163,111,250,8,170,196,164,58,149,7,87,62,141,11,219,105,95,235,84,137,21,209,167,238,104,244,174,225,52,69,225, +36,77,73,11,93,175,110,19,95,175,186,138,47,30,9,92,44,115,65,71,172,30,83,58,193,109,111,189,184,111,34,126,194,138,105,178,243,240,214,92,5,63,122,196,98,200,21,240,82,31,236,141,200,44,77,162,211,233,116,229,90,116,59,29,161,97,180,98,15,126,18,250,160,24,68,198,244,210,224,12,80,175,116,199,136,96,223,97,135,108,83,29,122,156,127,239,76,22,194,254,203,132,127,178,14,35,220,135,120,26,164,60,12,186,231,131,190,12,109,157,197,160,153,83,166,253,43,58,125,36,60,16,29,157,147,140,214,121,90,68,222,60,137,23,158,234,19,41,120,205,154,159,228,175,13,35,216,224,238,137,15,210,233,21,250,11,218,193,95,78,137,171,64,166,232,36,83,30,91,177,195,50,227,80,18,144,58,212,2,131,52,4,134,247,155,153,111,233,197,239,211,120,217,253,133,70,251,16,66,100,244,88,232,33,46,178,92,151,30,244,73,230,180,147,65,211,119,62,113,226,171,0,242,18,47,61,222,241,32,231,250,149,123,61,89,188,61,187,30,127,58,186,58,124,127,252, +14,35,148,101,13,137,149,149,158,164,115,237,144,61,162,119,25,75,163,180,117,34,113,248,83,222,8,102,47,143,203,40,246,103,169,57,16,45,67,35,226,249,28,242,35,179,8,60,9,106,134,219,37,95,248,224,173,34,79,211,93,88,132,105,90,195,239,71,36,179,77,33,118,169,80,8,254,31,60,17,25,3,7,37,233,35,90,207,84,218,155,170,242,64,74,92,176,152,64,8,224,209,151,233,200,248,213,37,105,168,204,134,64,3,198,175,156,89,218,87,153,188,151,185,99,152,25,213,6,103,154,15,2,111,44,51,176,73,228,87,118,180,238,141,227,120,245,236,189,131,96,45,20,189,44,113,209,178,133,144,84,49,157,148,174,82,235,144,116,233,191,140,238,194,57,253,131,149,102,105,39,243,147,172,188,82,103,203,20,242,100,26,252,190,14,150,68,172,107,88,202,161,57,183,158,57,201,124,180,89,0,99,130,70,199,63,63,246,230,10,149,59,186,60,57,34,46,48,89,223,222,210,94,99,5,166,254,18,170,148,119,154,78,73,248,73,194,149,74,158,180,221,25,137,180,171, +132,100,228,170,76,248,52,199,32,177,241,216,74,115,61,228,172,85,22,63,112,121,246,109,148,70,211,156,99,167,65,64,52,144,58,205,186,15,235,232,222,175,156,161,194,203,199,31,79,14,205,187,21,194,136,131,153,54,43,101,68,99,69,63,34,162,152,174,43,18,152,60,65,231,241,62,139,87,122,25,136,220,4,157,219,14,201,86,153,185,39,111,228,150,24,177,175,60,218,11,159,214,128,175,240,28,140,52,72,204,181,81,125,69,117,42,253,71,212,176,97,65,195,30,238,67,195,62,9,166,252,147,182,255,245,186,39,20,106,85,157,113,108,63,178,50,152,221,249,248,150,237,108,169,119,140,239,122,187,77,234,2,157,160,105,176,194,243,180,24,225,237,210,240,75,125,205,155,211,161,91,83,59,29,109,92,248,11,51,71,82,107,199,155,11,211,144,168,56,172,52,121,184,71,1,72,149,247,19,221,93,58,94,164,6,60,208,63,52,68,234,47,163,85,227,213,22,69,226,227,106,69,98,121,152,142,63,209,78,143,63,221,174,113,142,59,222,229,135,147,148,69,131,34,203,176, +253,181,252,123,223,104,213,108,45,0,17,102,99,68,121,151,164,131,235,245,42,42,144,119,146,103,89,115,89,99,168,19,18,157,170,231,158,78,194,27,186,122,215,116,32,219,230,143,243,96,121,155,221,181,61,124,62,125,162,3,150,146,56,18,38,60,207,103,249,130,175,36,126,191,160,75,138,41,38,68,100,167,188,38,101,146,153,209,165,94,208,232,168,113,162,112,60,188,112,249,16,223,211,82,158,211,249,59,77,18,44,219,146,104,233,173,15,217,132,214,111,93,209,98,127,242,163,117,112,236,79,97,237,8,23,224,103,202,3,140,98,195,235,152,235,157,117,175,139,192,200,243,0,81,53,75,52,254,118,78,247,32,27,127,203,251,91,30,125,204,226,212,28,170,176,178,206,5,73,55,180,71,212,221,177,24,38,160,114,66,184,208,187,165,162,137,236,60,108,33,68,98,65,127,214,68,88,228,244,205,104,19,203,59,120,152,254,114,113,78,188,115,198,60,133,62,143,63,157,142,142,15,47,79,207,223,84,232,194,73,226,63,54,220,151,143,239,78,68,246,180,164,144,200,48,24, +49,45,88,188,78,166,1,15,101,164,15,213,40,246,163,129,215,9,137,237,75,35,208,109,33,125,130,43,26,145,150,38,62,163,1,44,177,130,116,198,125,40,220,51,111,240,68,50,156,74,50,184,93,241,154,120,31,81,9,154,179,143,149,104,243,137,137,151,17,164,253,199,165,121,13,215,88,116,91,161,34,171,216,179,31,104,166,151,62,27,72,110,74,63,242,136,87,177,101,81,217,29,157,49,200,156,196,114,137,152,97,225,231,235,132,181,9,176,83,98,230,114,34,10,111,98,182,58,203,48,202,228,45,182,180,7,80,75,32,214,199,164,86,36,109,167,81,121,252,209,79,205,38,51,29,153,132,106,204,177,237,180,121,19,243,198,148,154,136,126,115,230,244,73,135,249,62,240,206,253,229,244,115,156,122,131,218,53,40,216,6,234,23,225,93,156,132,159,99,102,40,139,24,188,143,248,94,76,119,141,116,145,32,114,217,75,225,45,52,140,235,171,124,19,186,78,8,241,133,244,36,246,184,180,54,90,120,164,237,93,183,65,211,136,14,95,143,255,236,201,53,223,224,115,196,247, +141,216,221,146,68,11,81,70,82,35,227,20,122,186,205,238,189,9,201,136,176,116,186,74,85,219,251,197,232,180,50,110,21,51,136,155,179,145,203,79,136,20,204,26,87,229,60,156,188,176,40,255,63,79,175,52,30,18,80,207,78,78,95,24,206,25,4,153,19,97,64,137,67,46,61,163,209,243,41,149,147,3,97,41,21,139,73,27,55,146,175,161,145,48,248,235,74,243,16,204,54,47,120,166,183,177,112,41,163,150,210,97,240,179,233,221,138,104,11,75,89,162,2,137,166,195,102,50,159,237,215,70,98,197,51,109,49,63,211,127,239,130,104,53,95,71,30,147,54,182,104,7,11,26,134,79,66,36,88,32,110,5,38,16,192,142,36,23,72,148,172,156,136,164,194,173,85,193,90,50,189,140,83,81,16,197,102,206,194,51,30,237,84,166,245,97,157,173,136,146,204,12,247,41,200,197,36,216,135,75,182,95,89,106,71,156,57,10,230,153,71,131,36,89,15,35,83,233,159,87,132,168,4,169,53,204,91,87,126,118,87,237,238,93,240,68,116,100,74,131,17,197,199,168,155,139, +53,73,253,115,63,165,43,91,121,71,228,44,67,111,166,113,130,253,157,66,92,113,172,215,116,250,168,215,69,245,106,156,251,207,32,149,51,115,48,224,157,165,37,9,162,25,232,169,17,85,120,245,207,253,73,16,209,157,17,37,43,245,126,204,230,198,16,67,115,195,14,200,219,252,134,107,84,43,116,8,53,128,143,129,209,5,242,35,115,71,215,237,246,14,244,142,142,70,117,168,199,180,113,216,69,110,159,69,66,17,53,72,242,134,68,32,26,17,237,143,145,44,141,2,70,167,185,74,182,33,86,170,218,168,170,253,58,17,217,223,88,137,132,78,84,79,186,234,96,102,180,80,49,245,68,132,65,241,110,10,183,92,69,235,219,112,217,253,91,184,186,169,180,245,57,92,237,12,139,4,178,116,175,229,237,27,99,214,40,218,112,45,231,212,62,210,223,163,48,11,6,7,222,160,51,220,233,108,85,186,211,199,162,207,11,255,192,35,49,121,167,233,137,207,105,54,59,240,122,157,237,23,30,193,239,131,78,175,233,247,213,242,22,79,236,208,72,154,30,201,194,249,129,71,163,104, +30,233,111,171,128,90,217,159,215,156,133,36,56,240,206,255,54,164,46,246,59,195,218,165,99,147,200,77,105,71,236,146,125,88,5,203,209,232,188,96,47,26,116,250,53,19,18,135,15,200,6,157,176,164,240,66,111,143,84,141,237,38,61,132,154,179,90,200,214,112,155,180,144,15,164,102,227,135,146,17,202,184,240,140,158,17,194,221,147,66,74,156,199,83,190,133,208,200,249,64,130,200,9,173,167,59,190,242,193,251,51,58,119,29,167,115,93,158,250,147,114,124,233,39,36,146,145,60,124,69,34,203,73,188,38,178,240,62,62,101,43,20,81,0,136,149,167,76,69,65,68,103,252,115,89,84,44,54,113,54,187,83,117,121,252,237,120,147,164,88,186,88,225,172,52,65,72,140,109,195,51,27,172,193,217,236,68,108,140,94,43,156,155,103,177,20,43,88,40,150,217,70,81,179,24,255,119,207,251,157,40,80,144,210,58,4,44,30,23,251,52,20,168,205,159,174,137,50,213,119,60,126,117,9,194,106,165,70,177,65,131,155,140,95,149,103,30,133,171,73,236,39,51,154,235,187, +107,146,151,229,89,154,116,65,133,118,149,155,203,136,40,13,58,23,33,108,252,137,244,167,52,23,205,190,179,19,189,76,232,128,101,50,71,18,250,33,146,66,136,15,160,32,140,255,155,213,3,98,169,130,70,33,78,38,154,101,16,69,21,55,213,233,18,107,193,195,131,39,246,62,192,164,106,85,252,112,214,112,72,32,154,138,114,33,66,59,200,234,44,120,162,195,191,80,147,179,90,226,253,232,153,4,235,57,36,201,192,7,139,98,43,10,251,135,218,76,25,103,193,10,210,235,76,169,243,35,108,211,73,32,173,205,58,116,146,125,28,180,12,158,56,6,74,136,74,75,146,206,51,113,126,255,225,25,126,43,143,137,185,211,203,29,132,237,68,251,233,192,91,10,62,14,193,5,195,107,139,148,143,175,140,139,142,135,69,39,105,18,136,170,168,253,99,34,143,119,248,45,130,241,206,159,78,193,3,130,54,251,205,44,203,20,203,101,152,218,14,68,101,38,173,86,180,98,254,11,130,101,70,170,25,180,74,72,41,204,176,89,73,163,121,173,72,104,131,98,41,150,23,54,71,137, +118,38,6,209,138,159,209,95,62,27,203,138,176,115,112,115,48,184,167,138,98,121,197,171,70,98,124,42,98,15,187,67,216,45,18,169,33,240,99,106,180,49,54,140,142,95,169,251,98,252,202,48,111,90,2,26,108,110,155,127,246,38,137,88,55,239,240,188,176,99,254,3,102,151,236,153,222,52,214,26,210,174,72,204,17,189,147,229,27,126,84,84,226,54,123,82,60,232,202,50,6,140,134,37,48,72,218,58,138,50,109,57,138,105,72,176,78,47,69,207,113,108,38,124,127,88,181,194,250,98,105,155,38,155,56,139,82,187,184,101,31,158,170,166,83,22,48,210,90,51,233,232,14,98,74,213,132,73,139,225,216,107,48,180,233,93,28,243,238,78,18,210,171,238,42,118,177,241,43,87,144,209,247,75,82,12,211,83,43,36,243,162,178,121,94,52,56,186,203,30,112,57,205,45,27,121,149,56,67,113,128,50,197,48,101,151,35,245,113,203,170,197,98,81,241,126,254,68,79,193,211,246,40,142,77,81,20,243,183,69,15,71,195,106,162,154,249,17,221,196,204,8,172,124,34,72, +204,78,67,54,92,197,226,113,91,64,89,134,74,195,63,91,147,78,113,84,220,95,121,215,130,4,135,88,86,200,120,201,111,99,34,170,204,0,159,173,186,49,167,143,62,61,155,169,240,71,189,168,245,221,248,162,48,58,122,122,252,42,132,30,145,209,242,88,239,1,27,221,161,102,47,29,48,13,58,117,95,8,102,244,74,186,158,168,112,169,202,76,254,108,135,125,5,116,173,125,6,229,196,234,47,161,227,233,216,226,231,110,227,190,222,146,134,30,168,9,190,185,230,199,124,188,76,16,218,74,194,210,44,132,36,106,46,9,6,181,78,173,178,197,20,149,15,83,254,54,31,168,36,188,21,139,179,18,122,49,124,171,43,212,12,184,124,137,126,10,97,105,41,169,210,48,253,24,21,21,221,46,248,166,213,120,156,133,179,156,19,105,94,227,182,166,25,45,0,120,42,251,202,132,236,9,69,145,7,123,187,27,172,90,97,227,96,248,100,103,133,240,9,37,146,117,38,242,55,240,202,76,104,233,217,171,162,238,159,20,226,88,182,78,150,109,249,137,21,111,226,244,107,162,249,116, +154,98,252,61,254,100,30,129,132,255,184,145,147,78,57,96,225,212,75,159,151,153,255,36,32,42,128,28,170,86,77,149,208,196,224,167,142,83,98,195,227,205,120,62,222,92,177,253,69,79,113,151,113,118,202,210,210,226,209,99,207,7,173,36,84,171,56,233,88,49,209,232,196,88,176,223,215,112,47,227,166,211,152,4,74,0,18,251,219,122,177,146,163,76,199,39,138,217,32,165,215,102,18,207,42,27,122,106,124,72,138,237,224,166,213,197,4,186,167,182,78,218,110,152,51,214,116,69,25,59,150,96,69,141,83,158,206,53,255,96,8,36,200,119,68,82,172,12,136,89,48,190,194,100,32,208,174,179,20,206,64,96,134,24,65,80,235,239,34,46,17,99,185,167,76,168,86,235,72,157,220,14,246,102,252,106,1,226,64,87,166,197,39,26,12,11,160,219,241,171,138,145,154,143,211,17,92,124,106,147,97,5,158,230,168,126,192,119,135,163,119,42,203,50,165,103,192,151,123,85,83,239,221,233,225,73,27,254,237,144,73,29,30,75,104,140,27,229,5,253,181,43,190,45,110,108, +84,61,47,55,118,63,138,34,217,122,113,223,32,165,110,222,25,215,28,156,142,5,131,253,204,40,188,134,128,21,239,248,199,213,234,221,122,130,65,27,130,92,236,147,245,164,131,250,110,141,150,132,213,42,40,62,112,177,60,214,104,60,214,239,178,179,55,220,101,0,220,115,189,198,35,2,155,209,120,84,226,128,228,43,199,213,127,244,249,156,228,206,145,195,212,123,142,215,52,71,90,65,15,240,230,197,68,16,35,138,65,116,252,52,143,144,1,20,48,7,199,109,4,51,12,157,211,41,195,5,163,112,194,246,35,102,214,56,77,185,196,111,133,73,99,140,50,45,230,143,176,28,73,235,235,225,144,177,98,54,133,126,56,222,148,71,104,156,81,26,27,2,0,51,9,179,41,107,12,83,235,2,223,9,76,7,148,77,48,106,110,31,180,194,244,35,224,146,193,140,166,254,166,208,187,255,224,135,17,203,255,107,24,134,233,196,171,161,231,21,157,146,191,178,132,167,122,201,43,54,147,148,160,20,11,118,55,171,66,208,182,246,180,144,61,60,178,104,176,141,24,168,141,174,64,219, +204,187,227,125,160,129,93,126,24,157,253,98,176,162,10,16,16,90,177,94,134,224,2,126,4,98,250,32,118,107,198,72,181,189,163,209,137,136,105,236,241,110,171,224,185,8,252,165,218,232,236,170,172,151,56,194,184,100,212,176,12,24,95,243,50,37,235,165,215,233,26,152,170,120,88,177,96,246,22,56,122,199,114,26,6,198,21,66,20,255,145,123,23,39,63,160,23,42,145,130,0,113,211,44,228,0,107,198,220,79,230,8,4,37,150,51,53,226,13,11,43,25,203,53,124,187,127,217,219,25,127,218,25,114,99,135,43,72,55,135,87,23,140,183,43,45,252,153,105,152,14,62,241,75,58,134,124,114,244,32,57,198,58,156,154,73,64,75,1,201,23,28,199,95,178,199,40,99,105,231,179,218,108,249,174,56,230,190,92,36,99,185,160,212,249,59,127,181,98,39,18,150,130,199,45,228,16,45,201,97,253,23,0,131,209,196,109,228,207,100,63,176,230,48,71,234,165,207,32,246,210,230,167,164,177,61,210,147,255,82,236,162,217,232,32,8,7,90,59,61,117,152,193,45,233,197, +223,233,26,139,127,29,207,232,105,203,231,194,196,157,123,199,38,2,109,146,76,239,170,96,183,95,122,61,107,225,87,75,77,42,125,84,232,14,77,181,126,148,133,123,204,200,216,219,164,14,23,171,50,10,195,178,195,207,117,79,176,241,89,252,44,57,196,15,94,55,108,181,3,69,176,43,247,146,97,228,130,174,240,196,79,188,183,215,63,232,81,73,179,103,160,74,243,115,226,218,42,243,86,115,178,220,239,12,44,89,222,217,113,220,225,253,13,99,30,179,120,114,231,35,83,105,218,15,62,51,162,251,41,189,45,217,170,66,93,40,254,21,39,228,142,206,230,109,2,124,134,200,112,43,182,24,97,23,105,154,108,79,235,20,112,235,52,182,56,98,200,56,8,179,112,119,35,11,65,68,131,253,132,56,49,116,48,234,244,89,37,235,89,64,218,106,188,18,34,206,103,26,125,155,141,99,240,1,63,0,1,149,198,255,16,38,241,146,63,203,41,160,11,61,231,35,142,179,54,247,23,116,183,104,153,165,29,22,17,100,212,109,126,230,49,100,223,49,177,92,106,215,72,73,160,147, +17,209,72,11,24,39,81,217,123,147,43,106,180,80,224,106,143,129,58,88,62,51,16,118,33,42,207,50,37,25,141,87,141,45,124,19,185,91,10,4,5,27,137,92,252,85,42,96,125,28,236,89,174,30,2,78,79,71,209,224,220,44,62,129,71,59,17,165,125,18,44,73,204,33,230,3,109,80,244,1,80,49,53,158,188,17,191,1,244,233,182,240,205,57,113,219,187,192,80,133,241,183,169,119,184,156,37,113,56,51,146,147,26,59,148,222,179,21,82,188,58,76,88,113,86,232,5,146,72,25,159,246,27,144,69,214,218,97,66,5,112,5,198,155,52,134,112,169,66,202,219,56,166,219,237,154,49,233,31,34,72,143,241,58,154,9,97,102,127,141,191,188,103,2,79,221,97,185,252,133,255,89,4,252,165,68,29,0,151,200,200,58,4,51,16,73,83,163,30,115,83,200,205,152,35,183,185,28,127,155,97,137,244,148,9,164,243,81,40,96,70,234,236,179,112,242,182,232,49,220,49,31,58,52,164,18,85,161,211,199,59,176,32,226,244,183,208,247,188,223,226,73,199,251,47,30, +98,142,113,182,114,25,58,81,35,151,136,242,24,50,152,125,48,179,119,136,103,160,84,124,117,103,80,137,171,59,70,214,218,224,18,21,41,211,155,194,202,69,189,254,94,78,65,222,213,223,70,196,71,136,152,194,215,153,87,64,207,150,185,165,106,74,81,165,120,169,12,212,144,27,151,103,25,57,173,174,255,15,198,187,88,119,248,157,51,43,39,191,174,5,97,14,230,152,243,201,179,178,153,14,89,200,156,72,39,11,246,238,36,33,29,194,204,16,139,136,104,65,2,138,44,158,197,37,59,84,151,98,141,163,167,99,81,181,88,134,125,178,108,200,146,136,71,224,43,168,21,168,212,50,92,43,152,172,100,43,240,11,143,161,111,226,33,74,135,217,58,105,15,110,234,166,8,52,154,141,30,224,139,21,39,10,21,129,43,154,137,13,156,2,202,235,91,193,19,131,138,112,124,53,204,3,154,29,93,113,35,87,133,105,46,98,48,102,197,183,248,170,114,223,199,140,45,241,31,194,91,56,166,203,206,225,162,39,172,248,166,163,232,10,242,79,78,88,0,80,77,170,150,9,227,155, +85,19,195,87,53,3,8,102,162,200,255,44,92,209,141,153,224,26,211,64,136,180,47,72,37,92,76,224,162,182,2,35,237,193,67,160,78,124,72,157,32,80,173,89,60,93,47,172,94,76,250,143,149,156,219,16,107,34,95,185,22,196,44,62,189,120,134,78,86,237,26,193,38,110,117,232,241,43,182,52,194,78,195,195,149,240,41,190,218,0,96,153,192,45,30,101,193,83,104,40,162,49,183,88,37,226,88,165,49,63,122,166,59,213,97,194,229,17,199,130,149,217,96,140,218,152,85,222,33,230,153,8,164,96,206,13,121,98,75,144,167,107,239,145,82,114,171,4,67,33,95,175,102,204,44,115,178,94,150,112,29,194,109,26,48,82,177,185,147,68,44,51,126,142,195,68,16,171,145,200,166,211,119,80,200,216,84,32,173,155,91,60,24,84,47,200,199,139,31,106,47,7,125,159,27,82,76,3,38,128,199,122,110,172,87,37,173,52,108,64,44,214,9,85,127,9,47,170,244,169,21,164,171,14,29,145,207,65,60,223,112,163,80,152,206,179,210,52,91,131,112,182,136,131,175,87, +32,18,187,91,255,186,81,187,252,236,65,63,138,159,10,22,217,128,195,16,176,250,9,171,182,140,210,194,177,173,109,130,227,211,0,183,148,173,1,29,4,121,192,82,207,136,188,9,228,32,97,192,165,177,224,196,140,14,55,86,213,237,162,96,104,61,148,59,253,221,173,92,95,255,162,96,232,72,128,140,240,74,153,232,2,214,159,66,219,165,175,72,82,98,134,135,21,225,174,122,2,76,22,116,98,234,42,55,222,114,205,202,60,173,46,177,144,56,98,29,148,49,165,108,77,77,132,43,51,17,131,248,27,176,48,200,177,79,198,58,240,85,204,177,76,244,224,66,62,75,127,162,243,220,26,101,80,84,55,242,27,14,35,203,3,78,58,192,1,107,57,111,88,112,125,158,1,125,13,180,148,61,211,64,182,130,248,177,46,166,152,205,60,110,206,88,3,44,102,65,244,160,46,0,253,221,230,86,143,66,1,123,146,42,29,30,38,9,109,213,177,24,151,185,81,6,17,1,110,25,39,149,171,80,106,77,239,128,245,140,254,4,172,137,9,153,226,136,21,186,40,180,138,201,200,168, +47,47,54,131,153,210,147,227,131,131,247,241,233,83,0,168,81,106,226,208,18,184,214,160,151,227,136,194,218,199,63,178,204,215,9,158,130,124,9,160,190,221,58,128,171,198,190,158,236,233,208,59,0,180,200,10,226,155,127,187,36,14,25,78,137,90,1,213,82,59,119,86,203,14,188,145,162,153,112,77,254,218,127,171,209,49,10,24,106,241,67,71,235,249,156,221,220,111,131,76,32,169,124,111,197,60,156,50,73,24,127,170,103,22,240,119,235,80,187,22,91,229,189,137,194,213,153,193,61,150,95,113,49,17,23,225,146,33,64,183,1,41,28,243,185,133,94,61,132,62,168,187,15,85,82,144,222,196,170,233,122,144,12,211,213,103,55,254,144,208,65,220,227,128,141,152,106,48,218,92,1,169,229,201,255,170,34,92,64,167,56,237,242,145,173,109,21,52,234,194,95,254,230,39,177,215,122,251,254,99,151,237,63,27,69,115,145,107,161,145,70,94,23,8,83,110,72,236,15,118,136,48,29,146,60,23,53,146,166,63,112,239,133,148,183,30,17,117,182,225,89,85,136,47,233,208, +107,13,250,222,36,204,210,13,55,142,18,209,197,71,23,151,176,109,77,213,252,44,1,107,230,132,33,195,129,16,69,49,79,178,57,83,44,52,18,19,10,118,170,80,141,92,175,157,5,98,102,129,95,120,74,28,133,135,164,180,162,183,131,97,168,44,231,246,18,164,83,27,138,13,28,115,4,218,59,11,252,200,26,118,36,20,168,197,198,173,152,93,219,112,156,63,101,129,177,188,109,120,135,151,103,36,77,164,49,4,30,86,141,28,77,211,237,140,38,52,139,133,141,251,52,24,21,117,167,119,193,84,180,48,222,209,229,84,68,144,159,143,223,29,94,121,173,143,203,240,24,243,48,161,46,27,136,215,4,100,95,230,87,156,75,30,85,14,32,32,137,182,185,2,32,107,154,111,194,29,132,95,25,56,218,161,5,98,57,62,75,98,195,127,215,44,130,152,120,69,90,194,241,38,173,161,39,180,93,67,176,54,10,205,127,164,217,92,199,163,103,146,215,23,24,52,177,150,159,219,172,193,23,191,99,63,158,134,40,195,24,193,212,77,214,153,70,164,220,39,234,111,239,128,5,213, +29,58,67,110,0,170,33,218,128,241,176,227,20,167,42,63,77,56,26,111,63,158,213,53,240,147,207,120,32,171,122,185,49,147,108,167,102,245,141,173,27,124,176,90,44,29,153,190,156,46,140,143,128,143,10,66,24,56,193,3,183,210,46,52,195,237,134,140,65,153,213,18,185,115,152,220,139,39,64,86,228,253,232,204,131,103,34,69,252,40,146,5,4,203,220,236,120,184,193,204,92,77,205,181,194,222,245,27,27,57,237,17,67,200,216,71,35,47,21,20,19,152,110,19,24,40,136,3,168,109,124,189,180,240,251,114,179,87,212,172,218,44,4,7,226,171,107,154,251,10,106,247,163,165,47,177,133,134,36,155,169,5,0,41,113,4,251,48,76,180,118,145,206,204,134,133,75,0,73,69,54,151,200,10,98,141,12,154,52,65,196,109,15,223,46,252,228,30,196,8,38,175,208,94,161,2,17,46,139,6,124,46,223,32,136,128,151,5,160,39,249,43,159,28,135,24,120,15,169,66,186,208,247,52,76,5,238,56,87,22,210,192,46,117,252,111,46,189,127,131,123,129,7,150,163,145, +237,6,185,52,220,101,60,245,242,188,24,80,152,157,250,33,244,89,214,24,69,164,127,43,122,130,30,212,106,187,227,111,229,156,21,19,98,20,59,16,181,215,168,54,16,230,24,175,99,117,135,86,20,61,44,122,195,218,45,251,76,106,179,251,106,15,168,192,126,221,147,28,209,155,70,197,135,233,63,181,210,18,176,140,238,147,251,181,98,192,25,223,39,245,105,243,241,250,105,196,92,175,186,14,205,12,24,158,134,68,177,3,41,17,245,116,254,108,150,220,73,14,68,132,20,75,109,25,177,184,108,29,120,183,203,144,157,136,170,237,125,215,179,215,179,236,248,107,153,241,206,86,57,12,34,101,98,203,179,29,36,51,134,31,34,12,105,182,142,96,206,32,101,155,199,62,126,117,192,56,52,25,110,198,0,108,182,239,210,122,138,77,70,95,129,18,17,206,212,104,245,86,93,180,105,40,120,24,23,170,157,6,254,2,252,145,89,169,177,26,183,53,144,146,73,132,13,17,44,200,46,64,55,148,93,173,33,3,45,158,153,78,41,135,151,97,119,106,215,199,137,57,203,87,4,235, +161,23,244,253,225,123,190,204,103,239,223,16,231,138,214,142,75,4,2,52,9,110,160,130,239,225,17,111,157,165,252,175,17,76,73,7,8,140,95,116,97,60,211,197,78,88,96,231,69,71,218,134,130,88,11,67,188,98,142,82,81,179,50,214,91,102,73,248,96,176,76,197,198,206,74,104,42,192,178,208,65,221,179,202,139,23,225,12,84,137,196,33,88,101,253,85,78,239,11,241,50,229,183,101,151,57,90,95,12,128,124,150,85,107,127,67,228,244,154,3,113,152,249,32,180,71,48,107,51,49,122,243,47,173,220,112,205,193,21,24,116,48,179,6,106,60,51,254,36,177,198,179,192,104,83,27,117,99,49,225,232,7,2,181,129,39,54,122,14,217,214,38,129,232,198,205,12,246,225,198,164,119,24,178,188,85,144,167,107,34,109,202,253,57,152,204,236,57,146,13,38,117,56,41,101,199,32,238,21,70,51,162,231,18,116,98,16,88,191,190,62,254,207,109,188,195,49,39,227,63,123,191,123,7,250,198,70,109,119,151,193,50,143,41,101,37,110,13,235,73,22,70,36,175,102,211, +78,167,227,122,244,237,173,87,86,216,46,231,126,40,54,78,196,100,91,208,45,208,219,88,84,118,241,169,197,135,191,191,60,125,75,92,194,4,75,177,238,99,80,102,79,234,77,164,117,189,60,121,3,14,205,79,183,156,140,52,112,155,224,46,87,227,254,29,254,84,221,92,241,57,1,20,84,136,87,63,252,97,252,73,82,70,216,216,143,218,59,225,24,52,173,193,99,10,48,35,135,164,113,64,190,127,171,240,5,232,95,236,208,125,88,98,228,134,246,208,215,119,68,176,179,248,158,152,76,237,17,52,24,189,2,156,17,94,18,97,209,22,83,39,152,131,20,112,87,7,47,55,5,62,69,34,84,216,230,140,240,204,135,112,6,46,25,9,42,134,110,62,188,139,6,212,213,118,2,213,38,207,130,232,97,115,95,139,19,235,212,160,249,234,137,15,131,122,28,24,101,7,120,70,49,3,216,232,200,28,227,0,157,215,9,212,224,185,229,105,0,138,45,3,173,98,31,86,164,69,62,102,141,128,119,48,165,77,247,204,181,2,241,50,49,251,224,151,233,136,241,16,240,139,21,6, +5,174,54,126,101,14,125,247,130,142,220,252,185,51,93,173,14,250,187,227,87,146,77,225,54,22,157,18,10,182,182,231,130,72,76,99,83,73,186,209,129,114,98,80,94,192,175,65,249,148,203,110,54,198,176,63,235,38,42,209,90,1,8,44,22,28,220,10,228,68,28,103,186,208,236,80,187,58,61,60,185,56,237,44,102,208,208,206,207,142,79,223,143,78,45,151,201,183,130,83,27,8,142,83,45,217,255,6,35,196,95,189,85,26,172,103,49,140,6,188,226,181,131,144,139,208,5,218,66,112,23,136,37,75,189,139,195,31,78,199,159,206,207,142,4,15,194,127,93,224,79,154,237,52,208,244,62,134,178,89,74,154,223,234,224,41,152,174,25,4,95,219,43,54,113,252,202,65,141,58,152,101,220,49,239,82,15,73,156,220,250,203,240,115,144,108,96,163,195,192,152,242,93,152,165,13,31,3,207,169,98,67,105,52,22,216,201,112,187,50,30,148,164,49,102,92,109,247,45,19,171,106,169,3,222,114,243,109,136,83,251,46,134,17,158,221,40,6,59,2,24,154,190,165,43,131, +97,183,212,43,229,74,80,246,215,13,245,182,219,37,16,205,89,144,249,140,161,155,19,243,252,12,127,6,123,149,161,9,85,198,50,1,170,200,164,161,195,125,234,122,153,127,123,43,159,4,235,172,208,37,177,136,91,4,254,84,205,28,190,113,236,51,59,246,85,81,181,220,156,17,153,229,101,120,225,76,89,65,110,252,138,239,189,73,158,64,147,128,170,163,180,209,65,66,123,173,184,20,205,215,118,136,133,253,202,196,41,99,205,115,162,166,60,175,45,74,236,229,225,245,59,18,14,111,85,124,16,243,171,122,125,228,152,231,7,212,29,66,253,61,117,76,145,184,140,45,168,128,64,51,109,168,150,249,130,208,53,203,115,79,136,244,146,34,52,228,75,189,136,52,96,252,71,55,196,11,189,27,132,93,20,221,77,133,180,74,37,254,200,169,141,52,15,199,199,85,151,83,113,48,92,71,34,148,216,99,196,232,213,196,155,144,56,117,207,123,14,186,185,94,117,49,181,10,51,206,131,181,42,119,153,157,130,240,1,74,224,159,177,141,194,195,7,181,63,204,54,114,89,206,65,227, +148,70,124,126,248,254,173,248,93,114,188,68,175,215,217,42,73,98,142,202,179,149,59,71,182,251,140,154,249,64,219,8,63,5,126,220,168,17,224,190,90,233,185,46,35,104,36,218,75,156,156,138,21,17,216,71,91,101,211,209,217,197,137,224,164,242,128,115,0,22,95,86,46,170,61,47,130,5,169,150,227,215,109,77,13,160,159,130,223,245,3,131,94,185,179,28,178,18,46,177,151,179,220,22,211,26,147,22,254,239,222,94,219,235,237,180,189,65,191,237,237,12,233,115,127,111,163,190,83,149,250,29,145,132,230,252,76,194,42,35,180,242,158,234,223,254,200,11,176,51,132,65,148,65,185,226,211,210,47,76,98,187,202,34,72,204,89,49,130,191,50,48,103,162,10,179,105,157,209,243,145,55,26,157,246,5,210,119,117,225,189,63,253,240,158,125,127,36,198,175,238,194,105,106,83,79,22,173,31,5,140,198,136,40,24,245,108,147,37,84,123,63,228,148,116,163,32,59,33,153,118,196,100,7,157,3,136,221,98,251,115,168,127,209,209,96,235,39,100,223,138,29,94,251,193,149, +124,185,31,121,78,92,129,151,138,65,115,86,13,109,157,205,2,102,213,36,41,170,167,183,161,201,43,69,138,2,86,27,10,172,214,184,134,45,158,223,97,78,44,66,75,150,161,41,248,212,120,19,233,43,195,105,91,255,252,196,9,176,72,245,86,75,0,195,97,0,201,224,172,26,6,52,216,112,186,52,215,83,205,80,44,118,83,70,224,19,49,157,132,227,205,135,221,54,62,239,12,233,227,158,223,246,158,246,118,184,71,250,119,188,9,36,103,77,167,149,251,101,83,145,85,7,244,70,48,154,80,196,151,38,123,86,238,178,29,165,119,167,196,28,24,78,106,226,26,212,74,23,33,116,197,19,46,149,170,51,185,239,189,13,143,58,53,131,184,94,39,72,147,219,180,38,214,82,170,168,149,159,132,184,191,93,135,53,109,233,190,55,52,38,106,167,6,91,212,129,135,36,68,221,77,132,97,1,170,18,144,15,47,125,173,139,175,100,11,178,16,148,60,123,8,7,91,231,206,108,27,204,93,37,169,129,129,157,56,22,30,43,197,222,50,190,172,161,223,80,143,189,243,162,137,9, +87,64,214,52,137,145,13,89,16,120,154,35,138,133,126,197,228,169,233,187,144,48,77,205,186,13,167,86,162,159,4,147,150,167,51,28,191,18,143,171,66,152,52,233,243,43,13,139,106,188,222,6,96,6,92,29,195,101,192,205,85,2,98,139,190,68,116,104,178,213,181,56,132,76,48,98,3,105,204,115,168,26,208,10,90,159,88,15,78,233,249,92,32,113,81,55,53,103,141,46,86,154,76,27,142,154,109,37,117,196,21,14,66,136,35,176,14,15,153,80,248,119,38,20,41,156,53,65,112,52,18,222,136,7,233,115,133,68,154,224,121,144,240,129,145,142,57,29,124,253,40,76,212,67,203,38,214,83,94,189,97,77,188,183,245,111,218,184,117,22,132,247,27,206,91,238,235,101,167,35,181,183,245,226,131,209,231,161,116,188,223,233,191,248,32,226,246,229,201,161,9,75,111,120,114,53,101,156,163,183,215,25,14,95,124,80,115,10,72,120,252,96,240,226,179,116,195,56,184,174,223,233,203,140,202,82,152,62,119,26,222,6,172,92,47,56,165,133,106,15,26,136,232,29,247,78, +246,135,195,147,19,175,181,223,189,240,159,187,101,105,203,72,103,214,32,61,28,246,247,127,29,120,27,222,141,49,74,111,253,47,141,210,183,217,253,192,56,195,82,252,213,135,226,111,18,249,69,156,232,90,225,230,245,13,104,132,28,50,198,142,255,60,71,22,28,199,119,101,40,131,27,11,97,29,123,121,70,196,178,211,167,116,83,244,104,182,171,25,232,114,164,148,146,128,28,234,95,98,206,86,255,12,20,54,43,41,198,150,225,52,144,84,142,213,126,11,247,65,17,123,86,56,23,41,219,166,74,0,193,96,144,239,215,52,69,251,99,117,65,163,223,14,250,226,194,85,86,163,114,251,13,13,245,25,136,229,142,247,1,144,35,48,114,60,229,224,67,39,107,48,212,217,203,248,77,211,186,162,163,188,95,255,206,57,89,199,7,227,238,184,43,106,32,145,31,162,191,157,37,137,204,93,37,131,233,184,139,44,106,93,230,71,250,185,191,213,219,31,119,250,242,215,38,180,146,199,241,102,111,176,67,35,235,236,126,30,119,77,108,202,223,61,60,217,233,223,8,228,86,179,175,43, +143,161,113,118,234,23,74,50,144,154,133,210,8,8,227,18,133,117,94,125,92,156,138,18,218,185,2,202,36,99,76,193,119,241,71,245,5,149,86,42,185,104,107,164,132,120,41,124,8,102,73,86,124,57,59,119,176,32,145,57,78,156,16,244,159,253,48,51,9,81,21,96,24,46,144,165,160,225,160,167,146,165,226,231,112,70,143,186,166,185,89,144,129,45,137,199,100,188,249,200,15,124,124,127,118,252,129,206,202,109,244,188,186,107,24,170,141,71,225,128,37,86,47,176,84,122,50,216,33,193,158,72,107,62,111,225,80,206,37,127,125,87,236,165,13,108,61,79,225,39,237,142,255,209,237,104,234,88,44,7,255,201,105,228,76,66,68,78,96,25,115,114,34,4,11,52,170,50,13,251,243,214,95,211,24,253,229,81,180,78,220,12,235,214,137,247,114,54,175,202,38,74,6,111,228,202,75,167,116,52,177,69,235,76,108,198,234,187,166,1,195,207,128,56,115,88,59,140,1,19,17,204,38,129,93,141,180,227,166,3,102,211,61,167,65,226,176,7,37,171,57,52,83,112,172,8, +180,69,186,241,47,159,60,217,78,22,64,23,241,18,126,190,60,89,21,188,63,154,214,249,41,168,95,221,98,42,175,74,227,52,232,100,201,18,189,65,126,74,30,240,165,162,204,108,238,164,151,148,47,9,108,4,20,78,178,93,104,106,37,109,15,198,88,206,98,127,185,38,237,54,105,123,215,36,212,96,88,176,159,28,195,33,183,60,135,236,45,65,114,129,154,34,157,192,219,114,86,65,97,50,95,53,62,197,238,217,21,131,65,62,90,222,231,184,60,166,210,245,239,190,131,82,186,148,172,137,108,47,211,224,108,32,20,181,93,197,43,234,174,75,130,8,62,67,250,251,123,121,155,193,199,154,90,217,154,254,195,60,89,110,204,178,152,9,165,200,209,55,108,87,39,102,221,112,27,223,158,243,42,210,171,16,233,222,158,119,17,39,86,76,21,89,57,14,103,141,98,161,81,17,172,181,137,129,33,38,225,64,110,43,228,116,105,45,13,25,121,31,63,196,13,163,43,120,153,36,181,237,247,18,111,110,160,41,74,225,100,47,186,146,44,92,144,93,156,79,65,44,205,244,168,252, +196,42,86,66,156,44,72,154,214,99,54,1,244,146,77,191,142,182,195,90,129,234,160,185,225,50,181,192,106,150,46,108,90,228,26,18,61,101,64,159,166,16,179,186,27,194,181,16,43,127,23,100,140,127,252,248,238,164,203,132,64,96,150,13,58,32,137,144,154,188,23,83,235,230,142,17,63,69,66,109,75,226,4,62,29,242,163,234,40,200,159,181,250,162,189,25,106,152,55,184,26,35,26,137,133,149,22,245,152,179,229,32,119,34,202,93,236,12,137,66,77,57,155,12,92,143,147,231,44,80,55,124,155,197,27,56,68,153,122,217,239,149,222,35,37,21,117,254,55,96,72,224,85,249,219,197,225,70,3,87,71,130,216,46,71,137,27,43,180,27,19,94,119,83,37,221,73,30,151,143,0,192,129,218,11,56,103,74,61,129,123,217,6,70,180,126,244,211,219,75,63,187,59,130,102,78,147,0,66,61,231,179,160,57,76,166,38,250,51,125,120,194,106,211,91,156,198,174,190,217,95,176,178,253,19,98,38,23,196,78,109,115,38,123,56,45,122,162,53,106,252,57,187,82,159,145, +106,150,107,57,140,55,255,106,62,210,115,156,223,181,118,94,163,31,207,27,230,116,249,150,126,179,7,81,83,68,253,7,100,248,255,248,15,108,11,174,237,251,248,71,96,223,104,80,151,0,75,167,14,127,19,228,183,212,70,73,2,142,99,224,151,243,140,154,119,204,189,27,68,166,31,207,199,159,174,78,223,31,94,156,122,157,116,138,196,88,154,127,98,252,173,49,47,172,53,1,33,11,68,6,130,149,73,166,23,78,225,11,154,207,201,236,142,20,53,63,11,234,109,189,47,171,211,138,44,111,231,89,194,141,224,95,136,144,54,78,63,71,73,97,193,108,117,127,11,163,7,196,23,116,208,31,58,26,24,228,88,214,192,60,22,116,85,1,203,77,228,189,253,28,168,235,85,63,125,65,238,68,65,130,41,155,130,238,214,116,51,196,137,80,66,137,124,134,197,176,38,164,44,204,49,119,121,210,14,14,155,106,90,165,89,240,228,206,61,247,97,9,88,216,13,131,226,10,10,32,26,26,56,246,117,29,88,148,106,158,86,148,207,254,5,84,5,239,250,124,84,108,22,214,194,6, +77,59,156,222,19,77,132,109,52,37,209,122,153,137,53,122,206,6,122,78,23,254,192,85,75,68,117,109,48,14,210,116,226,5,81,208,91,4,200,221,45,92,4,244,83,76,234,92,18,247,183,119,198,175,199,175,27,100,220,53,221,14,215,69,251,178,253,254,77,46,90,251,118,87,173,240,29,204,92,51,183,84,175,176,114,55,195,134,195,121,174,182,230,13,172,21,149,89,148,202,53,125,199,199,209,233,197,225,249,249,135,99,230,197,13,204,208,89,74,89,192,23,68,76,142,247,32,90,102,18,44,229,206,17,78,212,106,134,199,234,179,211,66,249,192,191,85,255,65,147,178,197,20,85,236,171,95,148,122,85,182,225,172,100,66,185,78,153,117,7,111,207,57,31,167,252,225,4,71,107,64,33,189,104,128,20,13,251,5,224,47,53,153,224,104,21,39,138,227,250,179,180,134,51,235,122,78,254,72,194,220,178,89,136,99,89,120,54,41,137,160,78,233,147,134,19,229,164,214,77,23,112,216,195,138,138,52,8,208,27,26,20,144,36,94,177,12,109,19,8,146,96,110,138,88,133, +156,39,250,115,144,140,63,33,105,216,139,130,242,145,216,106,17,44,51,50,169,136,78,145,144,254,101,241,26,172,90,28,164,112,46,232,44,21,145,210,246,46,19,149,149,139,57,14,71,224,14,135,142,209,187,204,0,75,46,166,242,186,194,183,244,54,9,103,231,236,181,3,42,14,70,171,186,36,165,205,66,47,9,169,41,64,8,42,101,20,179,187,179,117,254,133,83,100,11,101,140,191,69,212,22,75,180,146,14,151,88,97,94,242,161,102,187,92,123,22,214,206,79,18,0,183,249,21,73,171,37,88,130,57,56,114,46,168,210,46,175,114,7,116,211,86,66,198,124,251,241,76,227,92,50,235,11,171,92,49,215,178,86,144,155,49,36,229,60,234,111,255,146,84,44,88,53,46,224,182,98,244,191,129,175,17,29,187,155,117,217,236,103,171,196,52,122,57,56,111,173,218,19,20,224,100,164,28,132,255,117,57,244,175,197,9,242,30,130,13,1,114,53,48,129,245,210,34,162,180,37,100,170,1,57,113,86,57,204,37,113,150,245,72,211,200,245,28,254,130,33,47,42,223,176,203, +159,180,161,134,46,29,105,162,38,33,165,17,42,122,70,168,216,218,217,179,48,227,90,97,130,41,170,86,233,114,233,101,253,73,254,199,63,254,209,219,239,27,107,193,47,47,90,87,205,179,181,238,8,36,58,51,38,214,63,254,118,110,223,109,176,70,52,202,68,166,217,28,121,74,255,3,231,12,2,199,163,175,154,207,47,23,231,87,151,199,69,192,96,203,182,96,171,61,186,227,13,247,152,171,213,243,80,211,238,207,193,100,68,2,26,180,132,47,50,46,243,206,117,124,152,78,195,176,77,31,62,130,148,219,191,206,227,71,253,203,41,6,247,178,140,97,218,100,144,108,252,115,156,223,37,253,243,61,237,183,132,74,249,75,207,245,226,105,150,79,177,247,137,10,167,13,200,13,135,44,251,160,6,205,23,187,174,169,115,24,114,96,70,42,166,29,183,172,97,233,28,228,64,91,254,82,171,107,77,96,30,6,21,187,189,203,218,242,143,249,9,143,181,113,77,181,142,92,18,192,93,152,190,188,71,23,254,125,240,97,105,13,112,142,204,247,162,218,105,94,63,7,40,250,82,11, +78,57,241,203,166,14,134,129,63,57,102,16,145,140,36,103,161,188,248,199,12,46,166,235,90,156,43,73,229,146,97,231,69,243,150,105,98,252,237,73,152,178,85,5,183,23,134,72,98,64,154,79,77,178,202,167,60,11,55,227,202,139,13,130,53,176,220,58,71,224,169,59,178,3,70,44,185,185,47,83,20,192,49,5,83,93,23,177,134,232,129,53,50,250,141,171,214,154,180,9,238,131,244,242,203,195,41,228,70,119,162,148,190,102,103,207,68,254,209,144,147,23,37,47,247,158,25,124,45,215,49,148,51,64,175,27,95,113,57,37,122,67,67,5,223,85,113,21,11,158,44,132,65,96,181,16,22,193,96,0,196,51,49,34,153,195,171,5,250,151,35,45,94,238,148,68,173,185,186,132,77,4,185,215,66,18,48,155,57,42,204,82,122,70,130,242,141,23,144,115,233,132,72,80,84,239,92,252,0,51,243,203,7,217,50,4,142,5,58,253,229,236,205,87,81,109,131,170,47,102,138,85,113,222,150,202,68,68,202,42,136,34,81,50,103,105,189,213,169,161,77,21,232,58,233,195, +237,75,214,57,123,250,69,247,200,85,230,182,75,79,184,2,136,100,235,50,136,109,72,231,238,129,110,25,234,113,231,39,146,147,89,51,98,180,37,55,44,94,66,96,127,219,130,157,213,88,190,81,228,78,72,138,165,105,80,47,70,135,135,69,251,119,179,229,218,82,22,11,138,225,196,122,90,54,69,140,113,82,215,85,12,189,54,199,194,248,219,249,58,138,210,105,66,67,34,10,2,33,114,242,156,63,199,23,220,147,200,26,72,229,82,69,207,155,197,159,3,54,80,86,19,122,24,20,238,92,173,82,121,185,133,91,68,224,116,236,16,63,158,117,71,39,231,125,82,222,66,102,98,69,200,163,66,139,232,129,151,183,93,77,129,146,69,212,127,8,181,48,92,174,225,45,234,235,217,124,161,213,56,205,110,73,133,81,155,155,61,78,87,167,215,31,175,222,159,193,37,28,249,152,29,109,202,232,247,232,244,105,245,114,123,32,47,6,35,65,92,163,111,247,164,133,63,3,97,221,2,170,183,200,131,133,215,18,27,63,76,139,119,150,167,110,212,91,205,174,74,177,131,181,195,200, +125,121,142,139,91,238,152,49,47,219,37,91,49,124,75,82,218,214,179,57,113,88,124,85,199,37,200,43,182,149,206,247,51,214,23,115,118,150,155,72,61,142,167,133,218,189,216,44,251,165,119,134,133,112,164,189,70,240,73,249,173,220,167,25,113,70,174,229,189,148,41,98,207,131,164,171,55,0,221,219,71,107,81,92,33,148,86,243,148,146,130,93,175,214,152,174,242,154,12,18,37,9,120,110,255,101,198,238,0,110,220,216,202,233,215,188,4,252,141,243,210,144,122,235,189,188,22,14,30,167,16,243,185,215,169,7,198,148,222,99,120,78,225,197,65,103,239,235,58,92,248,133,23,247,191,176,105,46,202,199,121,111,175,51,252,170,129,26,208,143,243,234,160,211,223,53,232,163,85,252,119,18,105,194,169,32,37,232,162,61,6,147,113,247,241,241,113,220,189,138,253,217,194,95,189,227,240,30,236,251,248,79,68,41,55,215,233,223,85,201,123,55,100,61,111,207,234,121,189,189,221,129,173,148,222,19,8,113,191,159,167,147,172,87,223,81,75,97,19,8,118,100,78,54,34,123, +1,192,129,225,116,216,39,76,83,88,173,198,157,56,185,29,119,211,100,58,139,167,227,63,161,245,241,159,174,145,187,45,204,7,57,238,220,101,139,104,252,205,72,24,235,248,211,46,253,247,239,108,247,167,75,111,178,61,26,123,91,23,26,48,76,151,184,6,231,113,188,106,68,123,115,216,76,44,249,9,60,201,67,196,105,229,18,246,29,81,67,54,107,106,158,209,195,98,140,11,248,228,38,35,205,37,201,217,97,209,26,203,53,70,197,170,204,253,114,24,39,204,7,52,151,60,220,81,138,245,102,62,155,186,57,71,39,44,106,13,246,201,32,152,169,241,184,146,115,73,253,7,41,50,214,74,78,199,252,65,65,47,7,176,130,175,26,96,69,108,2,236,106,45,67,176,225,255,247,123,57,24,127,234,255,29,238,174,238,40,200,110,220,138,228,245,71,204,36,23,98,34,111,53,92,67,114,23,90,112,164,159,223,154,201,231,151,209,121,244,251,129,214,35,44,197,60,246,115,214,220,180,193,156,69,79,92,223,64,211,154,35,89,255,184,164,174,209,22,199,7,7,151,73,128,218, +37,39,0,207,207,108,135,179,57,100,148,6,15,154,252,120,192,216,19,14,170,132,241,206,56,83,161,23,207,36,214,210,241,134,106,246,28,182,8,93,158,188,49,253,176,165,77,18,183,45,172,43,175,30,206,6,24,86,219,139,31,165,70,166,160,178,44,110,136,35,63,112,72,225,127,156,137,58,135,84,10,169,249,69,51,12,21,95,143,36,40,6,90,88,194,22,195,73,64,173,145,62,217,228,35,55,117,225,105,217,216,200,43,165,236,130,102,19,47,206,138,108,14,28,167,26,134,219,210,237,146,116,138,38,239,23,35,61,76,16,1,42,164,164,177,245,245,23,115,122,11,62,166,171,211,180,48,61,11,26,105,24,188,49,55,27,27,165,147,50,124,150,3,78,108,152,154,234,112,182,128,135,169,161,144,98,189,197,53,110,233,113,158,58,183,198,61,130,92,150,146,102,158,197,162,214,95,135,91,91,23,71,27,86,12,0,92,65,37,76,174,107,150,248,154,32,21,238,89,90,236,6,23,57,135,48,106,5,82,73,5,204,198,79,82,35,50,99,243,231,90,117,205,6,216,147, +224,43,76,82,78,173,94,150,111,76,105,2,179,138,112,224,74,157,0,148,250,33,137,155,219,250,10,203,245,148,173,77,43,169,70,3,219,251,120,147,78,225,148,125,188,191,118,97,66,185,201,227,182,100,75,172,242,94,49,141,238,90,127,107,111,123,152,39,241,237,237,126,37,203,36,25,244,16,185,244,153,85,222,72,174,64,98,92,34,229,206,215,160,117,227,77,95,83,173,54,153,196,133,211,30,120,167,156,126,82,45,104,43,255,86,243,255,34,173,23,3,18,109,60,90,27,169,80,177,16,40,86,164,249,22,133,240,53,236,249,17,144,100,50,58,199,205,155,199,237,23,44,43,116,211,172,248,141,180,77,94,139,171,183,230,108,169,225,158,228,228,220,113,251,74,1,10,90,33,226,215,75,24,156,164,84,99,35,32,227,227,245,155,241,38,201,244,86,33,53,214,202,182,247,81,50,69,29,75,173,65,169,77,35,95,157,4,90,128,208,125,188,96,94,190,126,211,219,161,111,18,34,153,200,237,182,242,195,164,201,169,197,62,79,169,160,124,18,4,43,45,106,128,47,83,100, +159,100,188,80,253,171,92,222,89,12,130,55,121,100,172,31,177,39,150,33,89,180,188,244,43,124,158,12,217,104,162,150,72,116,71,187,254,134,171,54,142,176,144,215,49,103,190,163,163,197,126,49,99,137,109,28,199,21,92,214,105,112,197,212,249,6,75,5,215,22,107,241,252,93,147,179,20,105,7,19,239,61,252,63,103,203,89,40,110,97,167,114,182,110,48,26,124,71,162,196,149,228,58,106,28,6,41,30,189,78,239,6,9,157,94,70,94,95,5,183,33,112,181,111,163,120,226,71,52,12,113,30,22,148,190,175,230,123,214,245,121,80,201,163,161,94,66,45,230,186,158,16,213,131,244,114,76,247,232,138,216,112,219,253,227,130,255,34,202,255,67,240,76,231,137,4,156,171,248,81,235,169,241,159,130,34,180,223,28,78,113,125,175,226,199,151,197,32,117,118,190,167,147,50,27,113,218,9,78,62,209,112,115,145,179,20,126,214,227,187,56,156,34,199,30,137,90,26,156,5,217,143,139,103,194,65,53,222,4,30,250,5,255,28,12,83,138,68,197,249,42,216,153,44,106,141, +195,133,31,44,227,105,253,181,7,134,243,130,199,203,128,42,15,176,84,80,53,207,64,157,244,67,3,7,153,225,5,44,232,239,17,127,42,12,229,101,39,181,8,0,7,186,248,113,131,96,7,73,163,211,233,140,86,33,61,122,5,239,57,110,211,5,39,251,157,33,252,38,209,29,106,34,199,64,141,198,171,245,202,50,43,167,36,39,155,122,36,215,92,196,180,205,107,246,250,23,36,94,220,158,220,183,220,118,99,12,235,223,126,39,37,217,186,222,155,56,206,184,32,129,45,216,99,12,131,235,212,84,56,102,1,72,139,201,100,77,70,11,239,199,235,55,166,32,32,131,46,185,56,97,106,146,91,96,62,208,191,32,2,48,64,228,57,10,76,98,232,37,4,151,168,94,110,33,37,215,221,223,98,20,181,10,144,83,117,121,23,210,175,179,32,71,251,242,246,231,250,166,78,108,11,252,36,251,7,156,226,173,226,247,207,92,55,82,241,125,38,200,36,107,154,212,32,55,245,143,157,62,97,76,196,13,199,175,222,114,62,9,28,248,14,146,79,88,102,85,129,202,218,176,186,141, +250,54,143,174,142,139,118,187,243,191,13,219,12,93,100,226,249,55,88,45,140,152,239,48,195,98,35,76,243,157,8,95,136,16,149,27,82,90,178,186,2,96,46,122,180,171,85,170,129,239,209,235,48,235,154,34,37,44,105,54,174,229,137,117,175,221,84,10,53,213,140,100,45,59,29,52,66,49,43,29,140,95,49,30,147,68,184,241,43,239,38,143,224,147,195,103,170,196,182,80,3,79,211,53,79,197,69,38,229,20,11,229,142,55,58,94,125,63,239,130,39,78,205,42,186,181,184,35,83,155,61,164,254,29,155,178,213,96,13,45,142,81,114,216,73,166,53,151,248,22,223,175,228,226,230,148,16,54,65,175,173,191,85,73,130,89,110,199,159,136,77,161,32,180,65,96,36,149,116,147,17,5,19,63,13,27,222,190,50,41,187,158,61,35,145,161,173,50,39,176,71,118,18,195,54,251,32,62,181,219,176,97,110,90,237,248,33,76,111,131,250,200,130,218,181,40,118,69,155,175,225,93,163,108,61,11,99,150,193,111,52,74,214,198,62,65,157,203,43,147,85,155,190,24,105,166, +8,45,182,93,120,28,116,171,146,9,173,161,29,144,36,111,167,96,144,124,123,124,60,222,220,53,65,120,213,119,140,157,149,211,203,201,184,11,86,201,173,78,63,170,127,51,55,128,30,120,21,43,232,110,110,5,173,125,139,237,31,165,142,118,94,124,227,183,213,109,225,13,19,225,181,63,121,241,53,152,61,15,74,118,207,222,203,111,44,111,15,202,57,255,182,119,95,124,197,22,91,46,24,73,73,75,219,127,241,181,207,7,222,199,82,110,193,151,135,198,193,146,133,151,108,6,245,206,64,74,31,151,212,68,99,89,221,218,219,26,146,154,248,61,145,1,171,38,178,132,234,150,94,145,156,52,38,182,204,86,99,96,216,247,175,175,187,38,201,90,170,7,188,215,115,211,195,155,211,46,69,15,57,102,153,43,22,115,38,65,3,102,105,51,51,66,214,55,152,60,131,37,167,132,17,41,151,189,128,18,5,100,90,47,20,152,48,86,46,87,142,182,234,35,41,113,106,66,153,133,82,206,131,163,245,50,77,163,97,146,0,160,193,71,96,74,217,45,136,17,89,12,180,129,183,155, +60,1,157,47,43,210,31,76,193,68,89,166,99,131,169,99,75,135,83,100,204,113,29,43,204,240,141,209,178,248,47,13,186,136,252,197,100,230,127,73,35,14,248,28,32,249,135,102,102,201,241,218,18,79,211,117,187,198,38,248,15,49,83,235,150,129,166,110,80,143,104,37,88,206,26,122,49,8,93,5,5,171,178,157,132,11,169,13,198,214,99,26,253,175,93,143,237,104,233,13,124,179,41,215,31,176,65,164,222,104,61,185,146,234,191,192,13,102,162,211,97,45,192,198,244,47,235,25,138,31,80,89,170,97,56,6,149,32,88,105,152,245,10,105,58,64,186,144,154,131,131,33,17,36,67,114,235,23,38,102,144,195,185,129,60,94,114,210,112,26,122,219,3,192,92,147,200,154,140,254,8,62,99,3,234,166,154,202,145,102,153,91,17,173,61,111,210,77,160,200,80,117,28,237,71,0,23,144,199,249,57,227,188,82,82,198,182,149,154,192,250,84,146,140,192,40,208,20,34,98,208,109,83,186,157,75,146,241,237,245,204,183,169,205,195,149,72,61,103,243,84,74,18,229,241,152, +109,34,216,6,254,116,54,119,158,108,88,253,146,46,202,152,179,171,203,227,151,140,66,164,173,145,72,116,14,160,190,179,191,176,158,33,187,20,11,214,119,8,149,26,127,75,34,49,137,241,165,12,141,106,54,250,45,158,52,64,23,180,155,32,185,50,96,1,53,19,149,122,131,74,80,176,65,33,236,66,112,8,141,13,231,238,147,28,21,191,206,243,175,173,204,207,236,224,231,204,251,250,117,133,60,53,233,198,146,152,218,212,136,78,131,37,106,234,213,222,57,54,118,219,166,213,122,210,100,32,149,204,58,115,169,226,228,26,204,176,239,215,116,123,145,165,185,205,159,70,192,98,201,71,162,37,109,142,39,58,68,85,237,182,49,193,216,111,26,140,203,212,212,177,234,1,94,75,5,88,148,253,52,145,79,27,130,24,84,56,191,173,214,226,232,14,141,27,144,4,121,230,13,173,114,69,155,225,210,240,133,255,155,208,52,171,165,130,146,228,163,16,2,223,208,193,211,211,59,36,54,26,111,74,160,47,103,56,155,38,207,171,44,86,107,188,84,251,164,223,249,48,249,18,8,137, +97,53,45,252,187,195,254,246,142,160,235,221,87,140,131,175,225,181,6,191,172,83,97,133,127,50,85,85,94,108,132,189,201,133,179,47,62,51,113,153,1,151,54,65,250,129,142,36,146,28,119,194,120,204,239,140,187,127,247,240,239,141,187,49,26,56,81,132,127,136,247,160,137,56,57,206,112,163,180,21,94,183,220,180,100,8,243,198,127,182,62,144,23,157,79,188,237,117,64,37,78,246,105,171,246,52,145,139,194,155,108,137,23,200,184,212,218,237,206,197,82,129,105,195,46,165,89,75,26,218,202,35,20,0,146,30,5,25,188,68,130,235,196,32,29,75,156,225,209,118,246,47,249,77,142,57,1,64,86,76,74,12,128,137,228,216,207,243,156,75,82,123,201,23,192,104,36,18,42,104,9,85,204,112,42,135,90,43,64,195,68,220,244,150,8,41,149,114,28,44,5,105,174,29,118,21,7,19,175,21,249,235,165,254,109,162,74,21,43,249,148,229,106,32,146,227,168,42,27,114,122,83,216,172,26,58,231,66,96,96,103,14,0,215,4,133,27,181,222,79,77,201,21,152,62,115, +179,191,242,211,32,100,66,39,17,169,12,125,21,193,117,33,177,154,206,95,154,229,189,148,200,135,86,183,145,72,192,221,103,76,17,198,149,213,118,19,164,155,195,162,224,182,200,38,166,55,202,114,211,170,95,196,54,4,202,192,85,211,194,129,6,120,127,252,103,70,239,115,240,153,201,75,233,20,177,175,115,246,209,238,179,221,69,156,157,44,117,3,11,12,235,116,227,44,75,216,77,14,200,116,50,89,243,180,155,110,129,33,199,110,110,200,82,162,37,61,53,244,75,64,212,128,165,35,246,10,105,205,197,134,123,192,233,218,117,167,77,154,21,171,74,115,136,151,56,37,106,70,208,40,45,176,66,49,44,183,90,44,55,78,55,205,52,201,218,120,83,99,6,130,236,187,15,151,32,171,246,198,159,142,26,228,36,44,61,208,105,206,13,100,119,91,10,1,116,26,211,97,203,232,204,175,16,26,146,77,95,216,62,85,44,216,73,96,4,0,105,48,167,185,34,57,54,48,175,66,93,89,171,109,113,29,68,69,120,187,229,28,213,10,194,78,172,139,31,100,59,73,150,152,96,245, +90,82,185,200,169,174,185,209,97,52,178,185,223,241,50,247,208,77,217,130,27,166,185,57,136,153,206,248,213,120,243,183,241,43,101,55,13,243,62,41,22,115,43,175,123,157,239,226,86,146,62,184,225,222,116,89,253,66,93,94,209,153,183,141,107,117,191,191,221,219,248,117,224,89,231,234,246,198,141,163,54,23,116,92,83,74,211,86,157,134,206,235,2,163,136,30,142,187,62,242,195,104,161,68,11,133,42,212,97,228,44,131,213,74,138,55,29,254,165,169,197,66,77,206,188,229,186,11,98,78,235,141,147,181,173,101,227,128,77,206,29,228,99,180,105,174,181,21,96,124,110,239,54,190,66,47,182,150,116,104,253,162,202,223,124,65,173,61,71,158,149,52,32,2,61,147,210,139,189,109,73,92,194,18,17,18,75,155,236,138,255,188,36,81,9,193,129,6,229,196,239,188,112,201,126,188,126,99,226,154,104,82,255,185,237,141,255,15,253,231,53,167,238,33,90,159,100,211,181,201,166,106,126,252,199,86,119,235,70,106,21,179,142,103,68,227,144,110,135,250,172,37,177,2,215,248, +20,18,207,72,172,102,213,196,136,66,5,11,228,26,158,40,1,109,60,10,207,226,72,19,52,69,163,238,90,193,71,112,56,77,242,155,121,172,139,153,186,204,72,84,238,9,151,144,144,177,74,34,91,120,240,155,86,204,241,16,29,84,75,179,125,73,14,114,142,63,107,169,238,245,112,71,230,26,137,88,134,55,225,6,34,211,165,109,126,73,138,187,72,210,26,218,44,137,84,142,28,74,247,5,246,166,215,165,201,156,160,254,121,173,159,142,106,53,71,31,46,216,128,43,233,58,154,105,216,21,155,107,186,226,182,175,184,26,154,150,246,188,152,198,69,66,73,131,71,209,61,156,48,236,92,47,66,194,0,98,203,191,173,23,44,78,168,133,215,41,194,139,6,27,122,131,67,82,45,26,116,149,53,133,37,53,122,163,137,195,227,229,173,2,119,144,54,184,15,152,15,137,145,189,183,71,55,168,157,213,149,172,172,41,100,193,13,13,100,209,226,111,109,85,125,225,148,241,88,45,223,140,151,209,243,151,135,33,94,8,234,109,193,151,150,13,106,176,249,112,205,183,244,70,92,229, +54,103,115,211,42,58,110,13,217,166,84,163,57,20,178,196,96,114,163,72,233,47,128,42,53,158,131,107,201,134,104,183,67,235,167,50,119,98,161,154,45,153,182,20,30,113,58,18,139,128,117,114,228,222,22,110,126,215,236,108,87,195,75,26,233,229,173,63,125,230,160,199,147,163,155,241,166,38,160,19,154,107,131,104,110,68,8,156,175,147,73,200,117,156,185,228,125,48,5,76,98,252,237,72,165,159,241,183,78,96,43,226,40,142,143,155,236,112,149,220,46,90,161,85,192,126,212,153,102,10,226,153,50,57,210,156,44,75,13,37,113,182,5,116,160,144,245,173,129,108,203,51,188,87,121,74,56,154,0,245,198,69,3,53,163,25,76,23,136,130,99,114,27,120,157,221,207,38,57,154,41,130,235,99,159,129,224,122,69,107,132,11,11,66,118,67,178,134,155,19,173,227,189,143,57,251,22,168,5,10,151,102,146,157,80,42,147,3,236,129,188,224,75,125,102,41,8,215,88,92,107,50,14,100,174,197,24,158,109,152,215,248,21,170,83,205,2,12,23,101,98,225,217,73,129,34, +76,158,243,102,144,160,174,149,63,135,238,119,134,200,72,231,164,183,247,222,112,37,23,0,134,214,203,104,61,189,127,22,48,35,42,124,3,8,106,146,216,177,244,104,20,69,105,115,208,71,171,77,199,233,218,60,156,91,65,233,128,240,53,91,222,62,222,208,9,177,57,218,76,61,225,105,188,94,217,250,227,215,39,23,116,217,29,199,129,166,189,123,220,25,170,128,245,250,211,176,32,99,169,95,98,175,223,223,21,25,75,49,223,42,99,189,44,96,168,169,108,2,84,49,236,168,227,87,70,162,71,30,7,94,98,147,14,67,42,38,152,188,134,226,155,0,248,51,157,35,97,128,125,204,0,38,100,43,53,143,71,128,212,237,226,98,143,104,211,85,221,100,12,32,78,16,117,133,149,161,14,248,111,206,30,129,47,90,153,186,84,130,37,87,48,96,227,177,225,86,162,155,34,33,151,220,96,190,250,113,52,203,161,168,156,3,28,104,93,193,120,50,45,202,179,83,152,132,19,72,241,218,180,155,239,131,71,103,206,237,60,47,27,236,93,227,205,60,77,18,91,47,211,3,14,188, +92,154,114,162,103,75,54,112,180,21,118,197,9,81,204,31,242,204,133,191,50,95,240,163,244,55,9,168,47,61,46,233,255,10,111,24,2,107,232,171,88,28,180,100,117,20,216,37,224,136,48,77,82,194,213,39,204,109,244,101,148,146,155,198,73,152,34,74,187,65,210,106,235,25,172,206,178,14,78,150,75,17,155,96,6,59,56,88,248,171,151,214,211,100,122,190,252,112,57,184,177,236,122,188,89,128,235,37,72,148,17,112,214,123,68,225,70,146,82,202,195,59,82,25,55,105,226,72,21,15,71,141,232,12,43,12,123,136,108,242,134,54,238,89,172,249,236,26,64,121,135,166,70,174,100,199,48,9,252,114,173,147,122,2,48,193,79,110,111,218,194,61,56,27,110,91,184,236,242,166,139,127,253,167,27,87,248,98,15,94,204,181,120,111,215,162,120,49,108,142,46,75,118,29,91,224,30,23,221,184,81,91,11,253,132,247,186,128,238,178,235,142,181,213,230,5,121,195,120,15,129,200,183,189,15,235,204,253,66,172,253,166,32,7,4,28,115,156,56,187,94,170,226,189,106,176, +232,46,79,209,172,86,206,13,177,174,220,174,35,31,177,201,104,245,37,21,224,4,136,16,19,134,81,88,189,83,182,177,156,248,207,178,102,111,131,236,130,142,216,93,106,255,252,57,8,238,11,127,160,173,155,38,243,208,217,197,41,9,81,224,147,92,167,147,13,178,154,249,170,216,47,172,61,167,79,180,222,252,138,93,115,250,67,80,151,244,91,83,39,140,165,6,6,248,234,226,97,247,166,54,186,196,107,173,151,198,79,37,23,175,45,41,206,210,71,127,149,54,93,21,62,4,226,248,185,145,61,106,118,86,96,27,11,61,26,143,166,44,212,101,150,200,162,93,174,243,207,0,54,126,198,95,249,126,251,243,192,161,12,218,174,245,59,76,56,250,225,69,143,73,247,103,249,151,136,0,175,234,114,118,211,226,250,201,250,251,248,207,27,110,129,106,100,86,132,225,48,119,176,52,218,137,16,207,67,250,30,45,227,76,234,153,242,29,66,229,28,174,196,25,88,220,52,63,122,253,188,10,78,25,144,227,20,183,89,145,94,216,100,254,65,32,161,193,46,191,188,218,227,95,177,49, +42,240,220,40,164,246,232,249,134,191,7,76,244,102,252,63,128,178,112,246,58,122,194,57,104,124,121,245,202,59,228,223,144,241,230,161,229,46,129,27,174,54,53,243,87,124,117,224,115,113,157,13,106,124,248,114,59,11,191,208,16,144,92,30,171,59,255,76,115,72,79,205,205,173,226,21,83,0,13,24,53,244,209,152,68,76,111,156,241,141,137,254,63,109,127,192,241,189,254,193,228,138,190,49,101,122,242,88,202,183,217,61,47,55,71,72,25,28,66,158,89,160,129,192,131,2,145,38,1,154,114,18,41,13,199,23,239,25,166,117,99,4,98,11,236,70,15,140,6,101,34,44,214,107,9,61,107,1,222,65,31,3,201,143,140,70,10,181,76,155,220,32,121,218,169,84,163,75,186,202,9,3,57,82,116,78,68,5,226,191,248,197,84,188,146,96,115,12,41,231,146,21,255,118,253,87,109,168,73,237,209,120,156,154,128,101,145,220,12,219,207,203,171,115,202,56,19,137,210,227,72,148,47,53,238,102,221,204,27,162,161,194,172,141,120,16,230,24,6,90,151,118,26,64,233,64, +30,158,28,94,49,119,64,66,169,27,207,224,217,217,138,115,195,206,2,78,146,14,208,151,208,51,236,9,255,90,168,111,83,60,16,86,28,128,202,236,101,143,113,238,232,97,163,7,29,24,77,135,193,178,35,255,205,32,89,14,226,230,25,0,159,47,25,163,25,208,51,107,90,18,105,38,65,210,196,40,212,76,69,214,242,196,118,212,84,139,170,165,109,49,95,79,194,233,154,254,31,82,113,68,226,216,231,184,137,36,29,102,89,194,134,41,147,14,54,148,172,239,70,118,227,163,114,208,20,235,193,134,73,123,0,39,207,121,115,52,156,136,165,60,96,220,155,58,199,85,60,231,84,89,32,1,39,82,81,176,92,2,82,41,66,235,116,244,18,183,179,105,218,232,66,195,198,102,130,234,237,173,253,34,133,92,173,22,60,12,19,219,164,138,114,161,226,122,115,35,214,114,103,171,44,150,156,154,214,58,101,76,123,50,187,163,195,209,41,233,108,92,10,66,100,100,169,36,239,240,158,93,209,38,177,58,156,0,21,149,19,155,7,34,53,72,188,27,78,73,32,121,150,225,58,228, +164,92,2,24,50,128,21,204,245,142,149,205,192,100,142,113,106,106,7,79,161,228,95,1,129,45,152,174,57,84,141,56,158,251,237,129,161,111,223,251,15,190,55,226,184,45,91,254,11,109,46,217,188,195,128,74,142,17,145,172,130,165,182,57,169,202,11,155,156,227,223,187,110,137,29,174,141,195,86,106,210,230,0,93,97,14,219,150,128,248,25,162,200,16,46,8,133,131,62,160,124,19,73,249,240,34,98,161,231,34,14,51,54,255,247,181,185,189,208,226,217,220,45,117,57,242,31,62,199,28,63,11,215,158,83,32,128,221,175,90,216,187,45,164,14,141,167,8,236,179,9,50,65,5,238,131,231,238,34,70,218,5,243,117,195,108,145,20,89,57,212,129,119,81,147,70,187,109,189,179,8,189,187,23,54,194,166,30,196,245,9,230,189,185,62,9,120,19,68,156,241,175,31,126,24,255,207,49,71,130,141,255,231,191,130,116,252,63,239,227,78,167,51,190,225,69,5,89,188,76,136,24,100,121,30,52,166,136,34,31,65,69,73,242,24,104,112,227,209,239,13,254,45,200,238,182, +13,36,10,98,237,183,43,200,232,174,32,41,141,109,95,107,3,113,132,118,158,64,155,215,48,98,0,59,140,70,76,77,23,19,205,49,195,109,34,251,130,5,215,53,201,154,191,71,163,32,67,64,135,35,92,153,12,184,190,254,44,254,52,64,35,173,150,218,212,220,248,147,39,53,105,217,204,91,198,66,27,233,216,47,100,64,53,41,138,92,212,97,136,195,9,131,199,11,182,106,26,156,13,132,200,43,102,126,149,53,255,231,112,73,84,6,169,125,90,10,148,46,96,163,37,155,237,134,53,64,190,224,221,238,26,79,39,238,174,59,95,241,19,21,242,148,45,167,82,214,154,186,99,208,189,121,136,212,189,224,105,245,37,136,37,231,151,53,189,25,203,208,45,125,49,222,100,30,103,242,4,177,254,200,33,77,11,36,15,132,42,193,142,8,243,151,130,2,138,21,104,209,170,0,96,51,152,59,154,210,129,115,49,184,37,160,97,33,59,187,203,195,25,191,90,144,224,35,153,102,173,187,20,69,240,22,48,103,113,156,143,154,226,4,212,203,94,18,14,151,177,80,125,148,55,116, +6,52,126,245,192,226,61,181,134,218,238,227,87,108,96,25,191,106,203,237,230,241,130,23,143,95,253,164,207,129,20,164,176,186,241,183,135,242,120,211,249,119,253,192,78,109,38,230,157,98,229,82,63,28,253,37,53,71,154,4,135,220,63,52,109,76,154,110,133,20,169,223,108,178,182,209,102,220,198,92,57,10,52,132,196,56,255,37,80,147,56,91,186,5,171,183,3,203,195,201,50,177,29,34,4,53,73,81,51,83,70,85,51,88,113,144,154,132,81,40,93,131,115,53,101,10,148,6,144,128,104,125,27,53,231,103,58,215,79,133,64,150,154,235,80,248,153,78,193,187,235,139,243,54,114,254,181,189,142,150,194,133,173,173,243,148,206,236,103,160,91,204,31,198,94,73,140,131,51,72,229,13,162,143,235,15,39,31,120,207,222,156,253,114,113,106,176,72,133,135,26,60,247,117,97,62,16,128,155,38,171,204,157,30,235,210,224,213,11,211,12,10,229,113,116,63,46,13,58,138,1,184,77,109,27,216,82,142,85,50,178,166,51,15,216,106,65,253,77,194,248,166,174,21,247,196, +105,47,195,194,74,200,14,207,89,14,143,172,11,187,198,189,203,69,96,132,42,170,15,179,100,93,116,0,77,173,163,243,179,235,191,169,237,127,238,219,122,94,156,78,144,1,81,130,97,105,148,236,203,201,60,91,116,52,81,127,145,13,220,199,98,249,216,40,98,73,26,221,145,174,247,209,41,216,38,20,203,148,100,249,125,29,51,171,19,19,103,160,85,19,218,230,61,149,76,140,151,89,243,142,126,165,27,212,6,138,97,173,76,102,3,107,246,134,7,36,49,202,57,176,168,26,51,213,120,138,112,95,109,249,57,193,218,173,224,166,133,79,167,200,254,190,228,35,43,42,75,235,212,209,165,84,111,82,202,252,200,78,51,47,93,196,234,90,250,194,202,27,154,2,94,192,103,110,102,195,214,108,26,187,227,235,171,243,241,95,78,76,229,109,227,127,217,30,238,109,179,203,229,195,52,131,203,165,111,170,190,15,76,18,224,107,174,73,211,132,107,81,65,218,197,57,231,112,24,199,221,47,108,1,226,243,253,51,145,218,251,27,112,12,128,215,5,194,139,15,46,72,245,229,188,46, +218,70,83,106,151,191,171,106,33,123,14,189,67,11,98,51,21,176,58,200,141,187,20,34,142,218,28,171,246,91,94,101,7,80,45,192,114,14,167,69,242,185,10,190,90,68,14,35,101,29,251,153,235,142,232,148,218,60,155,105,123,234,154,117,210,204,235,13,54,87,190,8,191,45,163,202,221,97,94,31,94,159,29,143,63,29,142,70,167,87,215,34,208,73,208,130,150,11,7,73,25,111,178,90,193,80,210,180,220,194,245,241,101,247,236,82,162,227,175,175,47,203,99,99,231,53,113,218,219,68,99,74,128,35,224,196,69,185,209,130,33,230,211,149,24,35,219,222,217,138,244,162,228,108,57,143,219,28,112,175,49,193,165,248,123,181,226,163,104,250,124,14,9,244,1,87,44,158,64,208,100,198,5,101,79,205,110,27,229,65,139,121,181,102,168,46,240,221,170,187,226,253,16,59,87,193,232,156,5,211,187,101,72,195,169,111,31,16,223,95,22,136,233,71,58,137,165,9,183,202,226,46,139,234,196,147,36,247,28,56,84,211,67,223,143,80,50,214,21,58,157,110,216,175,144,167, +104,17,18,138,179,220,29,111,142,55,203,79,159,62,229,6,17,199,90,7,124,58,20,231,60,239,68,187,198,160,145,219,155,51,36,208,70,177,239,215,116,108,46,47,199,159,46,14,207,222,59,112,155,57,170,65,206,84,4,115,15,138,196,190,152,225,30,102,60,158,134,153,117,194,101,152,39,223,40,224,154,141,7,147,147,219,76,253,85,186,22,7,132,140,243,236,253,217,248,211,248,181,102,117,169,156,214,17,23,115,178,161,25,197,19,208,102,139,93,170,113,95,189,173,127,213,194,103,229,70,206,63,188,125,119,250,11,79,249,228,227,197,37,62,147,88,116,43,146,57,42,124,218,152,36,190,69,230,55,33,9,12,35,188,11,158,232,76,79,217,64,103,3,198,220,30,52,27,6,78,6,3,115,217,7,42,73,49,236,119,191,233,177,137,39,12,93,194,113,233,34,11,175,69,73,228,180,42,39,89,164,142,53,80,172,241,183,31,230,8,169,97,27,106,219,86,22,249,157,244,46,32,208,56,75,160,148,19,1,248,40,109,219,157,196,245,117,19,126,44,99,133,166,200,142,152, +115,217,170,220,194,17,81,148,133,111,43,68,137,213,74,11,239,177,29,149,61,51,108,183,115,237,45,57,225,240,197,71,26,75,230,49,208,111,47,149,54,171,154,169,211,239,247,113,184,188,10,230,38,253,26,148,112,73,154,111,113,59,54,135,146,247,27,61,171,118,31,254,56,53,213,233,24,190,167,69,137,62,75,232,97,110,174,178,226,195,215,12,199,230,132,112,17,106,58,2,106,69,48,232,127,176,193,145,122,52,204,30,33,117,220,227,135,165,152,64,228,6,169,110,230,79,165,112,22,81,56,108,177,170,87,236,103,226,28,155,252,134,189,253,53,93,29,176,138,95,80,156,230,129,42,177,198,130,207,234,43,61,209,146,35,241,6,191,91,88,8,96,67,156,103,132,157,253,8,27,146,7,42,231,229,130,8,190,202,158,185,42,43,90,116,174,198,230,138,117,146,215,117,194,254,32,186,33,200,49,69,109,239,125,252,49,13,174,129,231,240,167,54,227,157,102,83,14,77,29,166,171,147,163,139,188,54,11,27,107,68,135,178,154,57,203,160,244,219,199,247,103,31,222,123,135, +231,231,48,198,78,239,55,138,165,255,42,11,199,120,85,152,78,169,205,171,28,85,174,251,86,200,231,58,254,54,135,185,33,113,148,60,83,161,109,39,197,54,82,207,228,249,228,30,28,10,186,114,66,17,91,78,116,90,81,106,80,81,205,181,162,86,118,68,178,193,104,201,79,54,189,51,109,104,32,215,44,197,83,151,236,243,177,209,138,53,167,9,228,239,58,47,253,40,95,72,95,38,93,87,94,8,138,186,225,153,60,222,197,57,48,86,228,12,230,71,214,241,88,89,48,152,247,168,241,116,124,112,96,153,231,223,229,240,34,180,78,220,91,56,182,204,137,181,238,184,68,202,72,136,102,136,252,212,246,144,55,210,92,99,102,111,123,214,206,94,26,201,165,205,102,146,172,35,71,39,145,178,78,113,166,1,50,51,206,187,39,73,74,210,170,52,90,168,140,82,38,239,232,246,77,24,68,57,7,70,152,202,37,24,156,128,35,114,56,132,83,87,74,67,157,86,120,108,230,36,4,103,211,73,249,74,121,97,133,143,155,60,114,182,0,114,161,88,166,218,43,2,147,66,18,105, +72,252,207,207,227,77,64,61,5,9,88,115,226,76,162,26,145,71,157,65,113,132,54,3,7,161,244,174,57,97,134,140,20,249,36,145,69,156,227,120,34,86,115,185,86,24,219,189,216,46,247,77,175,239,251,131,1,86,185,215,31,120,219,219,222,206,6,219,67,82,81,98,228,53,100,194,132,22,39,101,146,52,139,62,87,75,138,10,164,216,217,149,112,102,84,132,215,229,45,161,243,215,38,42,152,22,130,39,144,240,197,148,8,169,220,15,68,94,162,156,59,103,201,77,239,226,53,131,191,74,8,131,2,58,217,93,186,111,218,236,233,80,71,7,163,123,211,212,208,51,215,232,83,85,60,2,123,36,57,237,30,74,143,180,189,206,111,43,252,239,109,40,25,206,59,147,197,202,1,193,114,205,37,224,84,69,126,166,3,198,5,75,92,241,164,112,19,37,87,96,40,185,61,52,16,105,22,48,123,242,93,242,204,41,167,163,21,136,22,111,54,186,224,195,196,211,74,177,131,208,225,178,96,177,226,80,72,9,198,100,156,36,187,114,108,55,252,246,109,172,142,20,235,119,146,158, +1,20,35,45,163,178,18,194,126,220,98,130,94,94,241,207,184,161,50,5,205,31,151,195,106,106,39,62,47,212,227,211,144,170,156,155,105,238,26,93,216,233,52,78,102,58,100,177,77,8,119,240,12,115,32,217,107,109,186,177,176,201,97,111,127,192,106,123,127,136,66,146,208,220,123,27,165,99,73,188,244,138,180,240,73,252,72,204,148,53,27,58,222,183,207,236,48,1,92,211,148,127,134,9,157,9,98,193,179,220,241,206,106,189,173,170,74,179,144,72,111,106,87,53,73,199,217,22,4,106,35,151,52,49,245,149,229,188,32,77,14,164,43,129,228,208,0,13,138,110,13,32,151,142,187,144,106,93,123,226,209,226,230,170,131,244,234,237,209,161,8,106,210,148,198,171,222,7,207,57,13,17,103,87,184,92,173,179,116,163,116,163,5,31,41,209,28,108,59,49,160,143,241,171,245,226,158,237,223,220,39,237,169,22,198,203,76,120,182,25,178,134,5,28,160,14,104,169,245,19,77,30,96,30,133,126,226,207,226,149,134,247,178,149,68,49,234,64,37,26,124,236,192,161,55,226, +80,41,51,152,81,49,49,224,222,120,19,177,6,198,51,91,81,63,196,68,166,71,206,196,37,150,232,4,244,37,199,158,142,71,238,151,16,185,76,125,48,94,30,99,47,99,249,190,70,127,45,72,237,10,181,64,177,195,141,23,250,237,212,247,203,126,224,175,237,218,181,129,25,168,196,7,86,164,32,13,31,231,250,108,247,152,132,167,6,45,213,13,130,149,90,105,18,132,89,8,49,67,117,198,108,193,37,120,87,179,121,195,82,23,172,145,146,42,84,60,116,121,121,17,86,62,92,91,105,121,70,236,250,111,117,194,69,180,81,181,110,138,3,146,165,86,162,80,27,42,45,25,162,135,151,164,198,0,210,160,232,52,248,75,112,188,38,170,109,145,223,232,196,141,60,163,169,126,19,46,167,209,122,86,181,97,113,255,18,241,108,151,174,160,60,72,188,84,20,87,149,119,46,29,67,90,219,114,205,233,159,156,56,83,226,248,193,34,117,180,2,224,47,228,23,91,71,6,96,125,122,170,83,162,122,116,101,206,5,175,85,166,135,6,67,238,140,32,71,93,221,25,193,207,77,99, +115,204,182,222,39,46,116,84,225,190,151,18,134,100,52,102,77,227,137,148,177,40,42,154,211,251,53,74,37,176,71,24,1,141,255,189,166,113,107,225,81,60,159,114,162,98,58,11,57,39,175,183,110,177,75,205,150,139,147,101,167,11,187,2,81,146,128,120,117,63,58,97,230,229,54,160,144,153,22,70,65,214,34,42,217,22,59,216,134,139,181,170,24,190,42,38,169,95,199,55,30,222,222,80,35,155,251,53,40,229,211,134,11,2,179,49,192,10,205,204,147,22,219,81,21,1,97,214,35,80,30,142,248,15,60,39,174,189,245,134,63,115,94,153,7,190,9,102,176,70,243,198,61,246,211,144,237,245,234,133,80,75,13,151,213,209,80,211,111,219,200,6,98,252,161,85,41,53,201,87,1,38,60,100,79,178,146,151,208,25,4,139,104,1,10,27,108,6,145,140,227,168,75,217,109,171,134,101,211,56,50,6,208,40,56,31,75,107,67,100,120,160,104,148,253,138,166,98,233,98,158,126,45,119,229,194,236,56,11,198,155,82,52,104,131,115,54,74,31,166,106,166,97,19,104,152, +115,213,238,149,216,150,106,30,66,52,181,48,188,215,2,27,84,40,228,70,105,18,14,254,207,152,3,83,209,144,144,229,210,8,87,224,47,63,102,115,13,108,61,78,31,154,14,107,81,183,201,253,183,225,34,204,12,210,229,37,249,150,21,193,32,19,90,60,254,52,254,85,43,158,67,153,165,35,106,68,201,156,96,25,191,211,76,36,161,14,146,75,182,74,58,147,67,23,164,185,178,40,193,144,32,141,203,236,34,79,29,232,115,238,105,146,66,137,229,149,171,123,9,118,102,229,97,128,63,77,17,172,217,61,108,58,64,22,237,102,150,254,40,142,102,221,179,140,94,158,118,63,130,248,128,123,118,113,6,238,3,172,66,195,162,115,108,107,54,215,49,48,212,215,100,36,226,148,85,166,54,229,28,79,149,166,206,53,142,44,78,86,22,44,173,112,10,54,96,72,158,107,146,68,219,222,239,90,103,121,129,156,140,121,193,0,190,164,82,72,217,205,104,229,230,204,162,147,14,248,72,110,80,46,79,70,224,116,227,255,30,105,193,10,216,127,156,234,38,131,206,110,103,175,254,29, +174,254,81,122,220,24,241,123,157,225,160,225,45,20,26,41,28,214,211,95,206,46,20,190,23,195,130,158,89,92,187,15,227,102,221,234,107,83,164,177,76,161,117,24,134,152,231,50,36,50,54,85,189,27,79,176,138,152,193,217,182,12,1,92,182,214,46,164,65,153,133,183,33,48,47,172,75,218,43,242,141,237,16,174,151,99,41,89,80,24,247,229,199,235,34,47,24,24,165,99,208,239,245,88,233,232,237,120,111,72,35,43,40,29,95,33,178,34,169,21,29,207,15,86,252,89,228,69,43,219,142,126,199,89,93,69,218,176,47,25,123,90,235,234,194,251,102,191,194,33,151,174,224,70,18,187,81,220,172,30,143,93,60,28,29,159,157,85,109,144,97,46,122,152,156,32,138,76,145,80,83,9,107,180,248,170,25,151,14,102,205,45,96,57,126,98,235,180,87,78,225,149,57,180,63,174,195,233,253,181,63,81,132,7,125,58,242,147,182,147,207,99,230,157,230,153,18,84,103,172,92,116,192,35,115,131,53,2,26,242,226,112,21,182,226,40,8,199,231,31,142,12,8,22,235,206, +197,199,89,152,106,125,211,27,110,252,175,36,40,197,60,162,200,24,227,52,105,7,135,227,131,3,45,57,92,145,48,69,241,196,14,163,202,61,115,53,88,27,80,72,65,89,62,87,40,245,107,44,172,210,145,250,223,28,89,193,138,14,185,201,174,244,206,137,255,252,97,254,95,1,86,156,168,224,117,124,29,46,2,161,188,72,173,140,180,253,189,189,173,6,247,150,88,178,194,89,19,245,21,241,227,108,153,29,65,239,17,188,205,248,219,53,10,87,90,81,191,163,227,176,207,190,11,158,184,180,101,209,177,95,228,36,181,51,97,157,224,195,42,37,93,61,75,87,113,117,219,175,14,71,215,167,87,227,79,123,135,231,151,239,14,69,91,136,151,200,198,135,147,171,161,241,129,38,222,0,97,111,105,42,12,84,199,147,136,233,69,224,24,118,202,60,206,41,70,82,48,119,10,208,89,130,168,33,145,2,208,203,211,40,189,111,34,46,194,249,193,11,7,246,252,248,186,70,34,169,57,125,167,144,100,130,43,210,48,114,24,108,108,37,191,21,83,79,58,46,8,49,71,160,153,107, +216,70,210,2,147,203,160,188,138,156,7,220,39,246,100,243,169,255,20,135,179,43,83,135,153,3,130,202,199,37,94,73,157,18,239,205,58,138,70,92,8,78,210,57,172,2,107,254,114,107,207,85,164,173,122,75,235,65,97,97,174,13,152,25,73,238,67,201,116,199,36,28,245,242,160,75,112,243,21,242,104,172,182,48,198,22,221,226,170,109,1,110,162,225,248,149,43,100,93,103,17,48,105,172,184,176,11,11,227,177,25,37,86,36,96,86,238,134,45,111,242,192,104,207,28,69,155,122,39,166,76,11,87,205,104,235,163,62,99,146,83,22,128,76,33,151,112,121,95,161,109,28,63,232,100,19,103,179,58,144,178,143,225,44,187,171,204,192,10,167,82,68,15,53,106,112,153,196,73,87,136,26,145,8,15,156,140,53,103,72,232,109,209,255,25,16,81,233,72,26,219,127,237,69,29,177,179,1,81,36,200,167,23,213,168,20,54,3,137,147,89,71,226,94,217,192,40,41,169,216,204,58,11,153,70,112,29,183,122,2,199,151,214,144,224,233,231,0,217,185,224,7,139,124,215,72, +105,6,142,202,223,38,99,123,165,169,227,136,198,112,44,169,217,91,27,6,65,104,218,78,226,199,241,39,190,51,182,182,39,157,105,209,60,183,138,189,40,8,219,233,192,85,19,91,244,243,217,108,67,121,253,67,140,4,16,239,79,127,58,189,226,36,229,12,90,219,48,57,76,216,77,164,41,220,231,166,142,188,211,238,7,146,40,35,148,21,248,241,252,122,252,233,250,236,226,116,116,125,120,113,153,199,198,32,41,5,103,222,12,224,161,219,40,142,243,231,160,124,243,70,139,108,69,98,1,93,189,171,23,145,197,86,229,114,20,170,101,158,113,196,160,140,167,225,10,87,180,155,114,205,68,227,108,175,248,21,142,252,207,190,159,40,199,253,198,252,112,129,83,109,196,11,109,210,205,132,123,96,226,17,218,222,73,64,212,16,169,11,241,199,241,69,192,255,94,38,113,198,52,12,69,14,218,184,118,92,219,28,63,189,13,150,109,148,16,196,81,160,7,227,232,153,17,161,151,81,156,17,53,106,227,95,249,105,244,156,10,120,231,130,110,163,175,255,92,2,157,75,173,152,236,181, +233,240,99,219,6,177,0,26,143,12,216,136,253,94,35,165,36,255,115,250,228,195,156,210,102,146,34,229,147,120,168,212,9,48,221,230,51,13,121,69,4,33,190,189,140,83,51,54,34,46,230,227,234,227,234,24,137,41,167,102,116,112,158,209,171,44,2,200,87,198,234,218,182,130,22,77,1,18,137,179,30,2,246,207,127,122,187,14,219,222,135,57,73,212,129,161,120,112,169,187,11,102,122,58,126,94,221,233,218,206,72,38,252,201,84,199,254,184,12,127,111,131,56,249,233,221,232,39,193,55,5,209,234,167,60,89,136,99,193,239,239,238,171,48,189,231,41,246,110,235,15,8,211,168,4,137,208,55,136,198,108,93,41,156,76,173,152,69,187,251,131,183,219,233,253,175,4,60,49,10,26,53,140,99,212,172,164,206,226,92,31,2,55,127,26,86,8,181,19,159,109,171,200,27,195,208,101,16,220,139,182,194,49,189,69,23,185,241,50,23,179,251,86,141,143,234,13,22,147,2,139,131,86,185,215,168,240,182,27,235,128,36,130,90,118,34,141,197,184,194,169,222,102,117,41,148, +97,105,49,169,113,242,234,123,154,113,64,197,85,139,71,104,48,235,96,92,26,82,108,45,133,170,21,20,181,172,23,68,191,92,102,170,216,182,56,87,221,50,20,96,9,61,64,179,149,24,67,177,8,202,71,166,78,108,169,124,144,32,67,146,103,78,46,207,196,23,47,31,141,73,192,195,31,46,114,199,6,14,113,90,91,248,196,50,245,14,66,225,125,228,44,47,79,213,217,91,155,132,241,166,228,184,73,12,224,61,215,66,56,91,222,27,200,14,26,180,178,129,131,154,99,107,12,223,236,175,147,7,173,5,91,74,246,158,165,44,153,50,144,171,110,177,235,37,175,75,192,43,3,51,92,20,43,1,112,156,131,188,197,126,38,12,107,230,205,214,137,141,209,212,246,77,101,24,93,236,24,187,205,197,168,106,173,171,80,250,203,73,24,20,187,100,193,241,157,178,151,185,16,154,154,4,190,134,180,141,238,194,121,54,254,203,5,124,93,63,223,5,36,237,113,138,156,187,56,9,63,199,28,253,162,33,104,90,120,177,244,117,141,228,103,132,59,174,52,97,110,47,64,6,220,7, +244,55,155,125,226,235,36,140,119,186,158,104,227,136,177,6,34,104,160,220,16,95,148,210,247,199,113,228,230,183,144,8,49,91,146,67,108,139,76,240,193,62,232,97,176,5,198,149,104,74,235,213,179,96,76,222,51,134,197,94,112,57,246,18,223,46,194,61,127,228,31,84,189,180,68,132,145,66,190,41,240,89,154,102,85,196,97,164,86,100,245,4,159,235,173,192,119,24,62,132,51,88,172,230,138,148,226,14,43,120,186,26,64,1,154,116,112,82,22,209,102,80,74,48,67,68,38,211,23,146,237,224,158,9,81,50,29,144,58,186,148,12,214,17,169,164,12,102,170,244,116,150,142,144,8,202,222,28,169,198,204,65,135,124,58,57,5,177,205,247,179,36,21,71,146,45,180,248,227,248,223,199,255,46,95,62,195,106,155,34,61,88,21,13,36,114,218,158,165,2,71,235,232,94,237,4,14,141,70,121,177,227,179,61,205,166,61,225,50,41,9,233,148,76,226,140,167,86,242,32,217,164,249,15,196,202,66,45,34,36,54,68,68,61,126,39,185,25,96,202,179,43,210,213,236,202, +41,34,37,83,83,84,17,245,98,105,72,153,192,69,185,73,14,203,225,240,4,90,176,50,20,136,78,201,213,106,90,154,158,124,137,196,255,150,112,16,37,121,18,133,139,63,145,96,113,87,178,190,186,110,104,165,243,164,48,245,79,74,30,227,89,80,38,93,101,137,209,124,47,82,188,145,24,171,148,13,210,15,9,141,241,60,123,4,167,11,68,100,100,255,4,87,39,175,120,62,84,216,17,86,110,254,146,127,175,107,0,21,142,20,122,224,29,122,227,215,18,146,59,126,237,29,158,142,84,30,16,240,163,125,142,54,229,36,208,207,229,230,164,96,169,188,103,106,164,230,224,73,97,254,255,134,84,36,127,213,236,30,109,216,252,230,222,173,164,213,168,204,134,197,98,12,108,165,68,30,153,218,186,158,28,154,174,151,70,176,148,104,65,111,40,85,92,124,55,131,142,172,250,78,202,76,163,124,125,114,49,241,64,50,172,34,26,143,89,30,187,191,228,71,137,245,5,52,37,153,132,25,91,202,173,118,80,17,109,114,201,145,164,88,90,231,138,36,105,53,132,236,48,42,235,160, +156,210,165,92,197,198,161,91,162,50,212,189,196,214,160,146,68,34,210,244,87,62,125,25,62,137,216,81,122,222,148,41,57,15,86,89,188,164,123,103,189,5,5,251,250,206,118,73,51,18,9,190,108,180,229,76,71,234,102,224,251,85,51,18,88,249,94,124,177,248,56,145,59,31,69,214,136,128,124,253,75,246,76,215,27,1,222,29,246,115,168,80,241,205,243,211,147,26,14,9,50,64,191,152,48,113,174,127,114,151,192,9,228,47,139,239,59,122,87,109,223,78,17,201,183,92,83,245,122,181,114,130,197,103,241,212,174,27,18,91,222,150,143,136,232,124,181,77,19,199,60,228,76,40,73,254,72,174,64,240,192,27,6,245,195,50,158,20,159,47,107,92,21,234,147,132,17,234,27,58,238,77,167,6,99,222,206,71,141,21,58,138,227,251,134,147,135,41,151,149,176,225,206,174,40,97,91,222,247,235,101,65,9,251,42,21,12,132,30,248,6,3,207,232,120,149,151,139,154,214,11,138,214,248,215,159,199,55,170,42,24,105,203,66,170,231,110,41,134,102,97,246,203,34,49,236, +109,180,158,42,119,107,49,69,218,81,46,201,121,198,70,48,160,241,76,28,228,179,43,188,192,1,204,245,142,85,169,178,218,154,192,171,72,222,17,227,21,163,127,42,49,11,245,194,182,6,221,11,243,97,110,167,76,156,78,125,85,175,120,103,212,17,90,16,5,186,179,1,19,0,13,140,192,24,58,209,78,19,108,210,90,15,93,220,44,127,73,107,27,166,119,165,97,59,213,176,93,11,113,92,212,184,145,105,196,84,125,79,205,41,120,221,196,172,243,177,200,53,59,48,198,183,203,143,44,122,66,158,67,208,156,166,91,48,138,164,189,189,19,238,232,185,8,14,204,173,189,57,105,48,13,179,72,247,211,91,69,189,230,57,7,56,212,58,158,86,225,14,146,165,34,111,224,144,23,251,23,155,191,194,107,253,116,126,172,37,148,38,82,6,192,102,4,113,73,39,152,147,105,163,176,94,200,252,180,61,222,52,57,227,114,57,31,240,133,213,179,77,117,104,120,67,213,166,77,58,228,1,255,175,160,11,85,228,105,155,12,177,172,82,178,193,169,26,166,194,203,103,134,53,66,125, +212,223,215,56,238,126,244,139,81,15,80,211,4,252,246,23,59,220,0,81,183,115,146,25,42,6,102,229,144,7,121,106,241,182,166,158,227,64,51,19,2,105,74,47,86,225,14,57,235,233,202,103,147,48,249,13,59,103,230,241,42,113,53,54,78,197,102,139,82,184,84,214,176,163,131,90,14,84,177,65,13,118,196,6,53,244,46,72,214,254,67,212,239,210,216,36,217,121,44,53,180,136,91,205,242,152,238,40,78,73,18,18,17,104,225,122,89,237,51,109,141,46,128,166,149,112,254,173,117,150,22,159,93,66,239,64,40,131,251,101,186,158,88,147,168,100,52,8,151,146,192,56,76,179,63,64,128,203,46,40,54,32,113,210,74,179,126,39,65,70,52,141,205,142,242,177,86,230,55,79,79,80,218,82,190,186,148,168,207,150,196,64,142,255,236,33,182,181,45,158,35,102,102,36,25,147,140,186,94,109,124,87,75,37,43,67,147,91,104,61,25,121,5,250,202,213,133,198,123,78,11,113,192,118,214,119,68,200,71,141,190,37,44,24,243,6,122,242,142,158,44,31,76,139,195,129, +98,253,1,41,166,152,99,252,229,24,199,188,122,11,240,252,1,49,198,211,120,14,43,69,141,61,193,26,46,172,181,7,181,45,56,159,225,89,158,19,184,170,85,203,117,160,15,14,12,78,173,17,26,237,0,207,179,215,50,56,41,5,89,35,138,30,9,11,164,228,135,68,130,204,74,14,0,4,169,148,53,85,99,125,116,34,175,56,144,74,195,210,53,1,189,173,76,97,146,6,107,17,215,178,65,128,27,192,101,198,81,181,65,89,82,220,4,227,131,27,118,77,228,39,18,239,11,135,104,109,184,137,255,72,147,40,203,59,171,85,154,76,15,28,237,241,236,122,188,121,118,237,250,125,202,183,189,63,232,139,176,179,75,215,29,137,42,254,208,133,31,229,248,31,115,15,109,24,180,97,76,109,207,36,16,49,249,215,139,247,180,108,116,16,155,6,3,64,109,210,93,226,228,179,96,238,117,58,29,239,248,252,112,52,122,127,120,113,42,101,162,155,188,154,46,179,7,13,210,170,130,151,48,178,170,54,15,187,1,66,241,149,242,132,21,225,228,101,147,120,249,124,200,29,231,241, +218,142,101,79,11,25,149,138,111,152,146,167,246,228,131,55,48,178,78,64,150,152,185,112,100,227,2,117,25,166,60,147,106,81,113,215,26,229,246,225,96,82,141,8,201,102,118,107,223,213,218,231,230,254,32,181,102,16,36,136,207,110,48,81,26,152,107,161,158,20,104,173,107,37,150,0,91,83,238,71,60,118,245,210,95,121,37,73,189,99,122,102,6,196,201,125,242,250,224,93,123,68,196,118,39,6,173,130,49,158,14,251,67,224,94,22,198,159,214,248,106,97,202,44,119,95,48,113,90,79,242,248,213,136,148,174,229,253,7,150,61,62,7,51,1,120,166,197,82,36,238,213,218,218,221,114,144,81,201,26,122,237,31,186,93,31,83,55,79,28,239,184,148,17,102,96,175,248,11,56,223,66,33,50,40,225,232,212,160,236,16,53,249,71,20,192,100,210,144,212,36,51,97,166,25,204,51,146,40,203,118,133,63,118,35,70,69,239,211,160,239,117,162,229,189,9,0,64,166,214,231,5,177,132,251,75,183,202,141,24,110,113,141,73,7,57,75,245,17,221,236,13,78,168,204,70, +73,187,44,190,228,3,185,140,211,240,137,84,134,5,114,171,213,68,148,49,246,235,68,210,136,164,90,240,78,202,21,216,220,72,121,253,2,152,9,112,142,240,252,70,91,144,181,233,10,32,43,14,241,158,57,205,217,86,110,163,120,130,236,85,138,50,171,179,207,53,156,247,17,27,152,20,140,0,84,65,219,142,241,123,84,101,48,110,132,58,201,132,223,42,58,82,138,214,120,83,116,180,242,122,206,199,221,23,79,151,130,161,40,152,240,27,111,230,251,248,144,17,111,186,132,197,217,50,150,170,170,120,154,210,97,28,140,170,16,130,219,232,121,117,135,68,88,189,189,165,192,142,54,248,100,23,51,232,58,151,171,183,191,45,124,171,191,235,125,239,47,191,116,183,108,120,94,21,105,225,230,246,207,35,24,197,216,231,156,95,167,232,158,60,49,58,249,161,178,164,176,199,169,210,138,21,42,71,253,229,72,142,169,191,146,154,35,53,232,13,174,210,99,1,32,5,230,128,37,199,241,214,229,230,168,55,57,247,166,66,130,198,93,130,92,221,78,199,155,169,102,32,37,34,197,41, +7,19,39,4,97,70,170,133,111,140,221,82,197,148,103,201,101,184,57,19,25,82,119,97,180,156,254,17,37,72,91,2,128,25,110,253,235,198,23,141,26,175,191,112,232,223,136,253,52,18,87,109,203,240,109,62,202,27,202,168,216,246,30,230,85,124,237,254,84,206,37,100,244,169,108,32,18,20,22,87,45,86,80,44,171,59,229,61,203,49,90,117,239,18,215,57,140,232,104,150,167,171,224,182,242,164,202,233,80,139,73,40,236,65,224,252,69,146,204,133,58,94,234,211,229,62,152,164,150,135,123,156,39,167,207,65,78,124,48,36,67,30,122,53,222,67,14,13,72,227,8,21,66,161,53,155,106,6,26,255,95,185,83,123,253,161,220,169,30,108,239,92,63,30,53,91,246,191,154,97,65,183,224,226,21,234,134,156,198,183,192,177,166,249,149,241,118,59,91,255,47,164,44,35,109,114,236,174,123,79,127,185,56,31,111,94,93,30,231,137,126,82,69,197,85,129,104,203,219,53,181,1,91,75,46,181,22,50,57,25,160,79,105,196,98,182,41,143,236,109,28,223,70,146,106,128, +43,217,29,72,102,73,167,56,103,147,57,134,253,60,198,181,195,72,246,153,69,243,230,102,153,44,214,193,177,105,132,101,68,19,138,65,235,247,146,181,230,165,246,77,69,83,99,195,169,220,15,107,141,178,20,211,4,53,21,193,175,249,49,218,237,73,24,234,96,11,97,168,255,196,49,234,84,162,18,253,7,3,242,215,162,0,6,204,45,194,61,135,78,225,228,255,181,71,252,192,141,122,225,122,54,52,117,47,199,50,110,116,164,164,185,96,92,31,56,200,3,10,34,205,142,254,225,68,35,18,255,98,226,122,17,44,144,248,145,148,54,254,254,7,11,164,65,219,23,163,227,188,174,249,255,146,34,2,141,197,220,85,228,219,19,212,119,116,107,69,135,179,84,68,89,77,118,177,68,164,88,197,218,35,6,93,169,232,80,173,229,32,181,59,77,193,49,69,194,27,92,175,155,25,170,149,6,1,219,39,14,186,72,188,229,228,221,66,218,45,100,221,26,255,73,231,49,254,147,18,239,143,212,157,201,186,197,73,183,202,113,45,146,228,73,68,22,69,158,23,146,32,248,156,233,47, +11,87,205,2,146,84,247,228,148,192,137,24,191,103,133,80,10,139,235,123,88,209,127,255,165,164,214,27,107,67,121,233,185,214,226,154,132,18,174,89,97,115,77,85,209,150,207,26,102,214,214,181,13,57,181,170,228,200,118,115,20,35,52,81,220,24,181,136,77,73,93,33,129,134,230,247,218,232,75,134,192,6,82,219,158,175,170,172,24,130,99,108,216,75,146,228,169,35,27,37,120,199,221,27,160,138,76,138,34,200,9,162,238,3,193,176,93,248,75,31,5,158,68,150,100,1,37,146,74,61,248,193,56,210,37,127,133,228,166,200,137,230,130,182,213,91,173,39,81,56,45,235,88,28,34,84,187,220,170,189,29,223,197,196,51,46,19,230,167,109,253,211,100,57,89,201,215,178,227,206,113,53,223,31,157,190,249,112,117,170,129,72,156,136,143,243,229,162,194,146,34,81,185,76,229,221,115,42,121,253,12,246,59,247,22,79,81,44,105,105,26,44,203,235,53,12,232,76,69,144,182,77,120,91,72,65,189,140,77,213,179,21,93,95,226,132,190,119,65,114,28,117,12,204,179,100, +139,65,197,134,123,206,37,96,52,84,26,229,51,23,147,18,17,140,159,48,228,71,242,19,170,41,65,226,197,4,177,46,176,239,172,140,130,50,56,155,242,192,57,87,179,198,76,175,80,95,202,94,165,128,51,65,113,164,6,189,123,34,39,137,131,130,57,37,37,231,138,229,92,21,217,87,49,194,98,213,96,160,144,92,191,161,247,49,97,179,238,199,147,75,190,57,1,42,14,137,118,149,50,17,206,226,41,192,58,108,219,44,179,150,157,237,125,145,80,118,128,143,140,95,224,44,245,164,215,97,143,198,39,166,121,19,233,127,62,12,24,228,255,49,155,66,253,171,251,149,161,55,112,10,229,213,174,112,3,213,63,55,11,36,22,49,169,123,85,213,66,86,44,47,80,193,245,194,47,219,74,37,99,158,97,14,174,202,218,46,188,110,229,62,115,75,212,111,135,164,188,180,126,116,200,89,135,133,136,79,31,186,156,214,207,164,188,164,27,11,36,123,167,83,33,11,113,154,221,38,193,232,199,115,128,21,178,51,101,50,103,133,104,75,21,93,53,253,142,20,86,74,136,45,16,89, +188,167,3,60,254,54,156,141,191,45,207,202,204,231,34,88,174,143,252,132,181,76,144,199,209,122,130,175,218,252,197,49,28,3,250,77,238,246,169,218,77,219,10,66,98,179,47,12,4,60,206,247,241,15,193,115,139,149,89,210,29,226,197,2,69,5,197,9,160,72,113,58,112,5,231,36,134,43,212,147,68,86,155,13,250,101,249,164,114,136,4,3,128,66,129,82,239,197,5,87,160,71,147,7,125,141,28,243,32,2,180,78,78,4,189,13,48,67,138,155,114,49,188,174,188,237,36,208,137,53,21,168,191,126,162,107,140,182,156,8,181,204,1,116,92,26,143,136,81,174,242,58,124,68,170,180,246,30,0,155,15,126,200,230,233,234,53,219,18,15,248,214,238,31,187,102,21,4,140,245,145,22,47,131,146,152,159,105,3,88,107,107,89,154,195,224,219,25,3,242,36,0,133,147,182,60,123,146,193,64,31,219,168,107,179,18,241,58,254,150,148,55,86,200,80,114,109,37,134,95,54,82,106,187,150,75,18,147,227,240,225,178,184,98,143,46,68,49,72,103,122,141,74,143,253,28, +208,35,15,168,5,74,99,240,167,119,98,78,205,189,60,169,166,188,28,125,56,254,225,244,218,67,153,36,248,132,24,64,10,121,180,124,170,70,124,9,207,216,215,158,61,171,177,83,51,98,181,38,207,43,95,226,66,232,220,189,191,62,187,254,47,27,12,97,170,182,213,77,67,116,201,43,174,79,24,36,35,182,81,188,139,51,186,54,36,233,241,95,227,205,71,228,131,191,139,51,14,225,47,31,137,237,93,165,188,3,210,137,87,217,139,82,253,87,208,222,58,247,239,2,27,109,210,224,238,73,105,9,19,68,81,38,5,111,131,120,225,250,177,145,148,97,45,34,32,48,9,244,107,144,161,56,143,209,191,15,188,254,137,8,103,79,222,29,48,137,68,99,166,38,58,182,197,212,245,233,29,125,255,1,97,44,229,5,52,25,203,136,238,180,29,52,231,97,122,45,213,28,144,106,208,196,126,106,158,254,6,147,242,129,84,181,55,185,4,13,54,34,151,172,24,13,198,105,103,56,154,188,230,62,181,157,144,228,3,7,124,195,2,235,165,19,26,92,177,183,0,212,227,147,116,146, +105,253,69,78,162,108,86,246,181,179,213,61,197,191,236,147,66,127,187,78,179,218,125,190,240,127,131,60,66,92,233,142,152,144,173,108,4,23,0,64,148,26,24,235,177,162,181,228,226,162,38,69,78,104,164,126,43,98,34,60,38,130,181,75,43,85,56,245,106,180,55,41,206,102,126,182,157,137,28,132,26,49,144,167,243,8,69,201,163,82,21,207,218,54,11,209,47,189,94,73,55,16,106,238,210,240,131,63,122,178,233,126,1,32,43,248,169,66,109,32,46,119,105,194,127,80,0,14,216,63,226,185,202,187,203,7,46,200,70,107,53,250,23,234,108,229,113,105,128,151,171,48,8,28,16,18,30,25,36,97,202,113,134,101,189,144,123,62,34,42,120,63,135,30,123,249,209,49,170,105,186,222,38,3,49,241,217,247,116,55,152,186,170,172,97,51,120,59,101,36,166,21,164,150,147,19,79,244,0,251,141,100,97,184,70,216,127,98,202,47,191,64,38,68,194,18,24,3,141,6,240,249,228,33,120,153,93,87,204,229,46,8,54,175,255,102,130,202,145,227,220,156,54,241,103,75, +134,168,71,134,205,27,88,225,60,70,92,37,237,64,229,214,12,122,67,227,72,253,126,77,66,246,63,197,48,139,112,173,34,131,147,11,156,66,233,165,97,211,249,237,114,197,132,207,221,209,241,217,133,77,68,97,10,89,167,235,138,199,220,172,125,161,241,109,105,252,199,235,55,102,173,113,159,198,155,12,158,226,146,75,38,243,44,235,189,101,50,92,192,244,23,155,148,214,196,25,241,0,56,191,1,235,227,207,186,23,206,138,118,114,53,64,167,133,164,30,127,108,203,207,36,31,82,142,63,113,210,106,201,177,119,74,182,53,56,174,22,86,109,74,31,216,60,72,194,37,221,2,86,233,202,43,92,202,88,149,91,145,145,81,212,201,126,85,33,205,81,192,121,0,216,159,10,131,97,154,89,105,212,129,22,46,199,155,66,90,86,92,30,26,103,49,53,26,28,40,158,186,246,36,71,137,141,194,233,116,54,202,204,188,191,45,103,117,107,80,61,171,122,164,191,230,180,254,164,188,186,32,247,134,146,209,195,84,140,76,179,245,124,238,33,178,83,209,47,146,30,135,249,232,145,148, +149,10,150,190,230,239,241,46,223,210,187,70,248,248,218,93,126,87,170,100,193,153,12,56,87,97,250,123,164,252,160,178,226,110,54,62,27,64,101,50,85,42,97,53,28,164,66,157,35,7,197,96,114,249,141,191,61,228,80,10,117,176,216,212,36,147,103,241,170,216,164,19,96,190,176,50,229,41,160,132,13,174,148,67,185,168,166,212,45,11,194,96,162,104,86,217,204,173,109,19,51,40,128,173,127,106,47,223,75,234,62,55,61,44,59,48,224,176,66,120,0,120,121,195,182,120,13,77,150,178,158,29,20,146,247,178,21,70,151,206,240,228,116,37,182,221,202,193,151,5,67,34,14,77,41,202,245,209,3,22,131,145,150,167,109,211,152,177,48,32,245,47,140,109,197,244,191,81,110,247,195,50,144,134,77,201,6,78,153,84,172,237,80,67,159,199,127,57,70,93,43,47,6,253,72,159,23,180,39,222,111,235,197,138,53,110,40,158,78,218,209,178,146,221,172,153,225,140,0,215,86,225,43,189,254,14,111,239,246,31,217,221,170,204,45,233,138,112,57,3,54,41,40,64,202,88, +51,167,40,187,192,33,49,246,230,206,226,105,101,43,44,137,118,16,69,181,15,10,241,79,0,96,50,69,5,36,124,93,177,42,156,117,153,184,139,230,232,23,17,73,124,193,70,73,169,40,147,6,80,41,245,32,241,39,46,14,74,66,186,86,114,102,92,215,229,151,23,201,111,217,248,219,84,140,96,0,194,137,25,21,229,135,109,189,2,131,145,171,120,8,57,218,224,0,255,34,57,171,132,17,51,146,212,212,254,98,87,191,230,59,82,73,161,226,71,57,81,217,213,169,69,80,220,171,215,141,23,171,70,206,180,109,160,22,201,123,115,92,219,134,117,234,177,108,201,121,253,113,67,51,84,172,96,122,54,136,156,208,50,218,57,163,0,202,39,239,215,127,221,244,122,91,251,59,55,198,226,118,72,215,51,250,167,79,160,241,152,50,185,246,52,132,172,13,88,205,79,111,187,200,77,132,10,203,203,219,236,14,213,217,77,36,82,194,225,241,149,136,13,39,77,81,53,160,197,62,245,253,229,91,13,118,53,210,42,39,111,57,253,229,236,13,93,183,245,98,178,68,5,238,50,81, +56,57,58,102,6,102,1,38,21,163,15,146,255,211,0,249,169,145,228,207,206,209,40,198,199,91,126,171,64,86,217,184,39,46,184,159,180,154,37,206,211,185,255,249,217,212,155,147,56,229,50,69,69,110,196,75,69,6,240,35,141,122,166,36,65,65,81,167,130,142,77,159,137,233,40,11,78,215,19,251,209,36,2,43,53,200,199,28,128,101,212,96,40,207,9,222,151,37,17,209,236,81,46,172,24,213,175,184,22,251,31,52,165,41,60,104,53,155,216,74,111,7,117,50,162,18,75,241,18,153,56,63,142,155,36,218,109,139,120,213,189,153,71,185,8,55,85,97,33,205,235,53,184,157,215,181,240,40,5,217,180,46,234,130,77,32,208,106,25,159,201,192,61,243,68,142,101,162,91,127,59,254,51,187,242,160,15,202,239,245,92,33,53,105,185,115,224,244,178,26,119,84,128,88,235,11,166,118,43,91,7,83,41,62,196,162,66,55,228,132,111,44,41,54,176,34,145,128,214,38,35,220,12,134,65,146,150,3,134,146,105,88,124,89,254,249,233,125,94,235,17,127,220,209,246,67, +186,142,165,56,88,69,143,67,29,47,37,242,248,189,173,165,189,244,43,14,131,107,20,164,235,54,2,178,202,93,128,178,134,22,204,192,96,131,135,64,6,113,172,230,85,96,20,155,222,47,241,249,137,95,251,228,165,201,46,75,173,202,152,156,112,82,128,29,75,247,189,248,246,177,173,62,231,149,203,207,89,129,33,42,165,134,85,51,176,196,146,195,105,173,5,180,36,110,80,35,144,203,12,138,8,251,84,243,40,139,169,229,187,82,122,90,116,249,16,74,190,102,246,137,67,85,192,85,217,128,158,96,174,147,191,52,85,61,36,241,12,43,75,21,29,103,50,129,7,81,30,59,240,216,46,195,60,119,252,42,36,210,205,33,26,28,40,47,188,103,252,107,7,201,21,57,223,44,135,171,112,238,205,112,222,218,240,190,43,11,23,83,155,95,237,192,155,67,69,243,53,57,127,86,23,6,38,134,81,234,82,226,87,144,243,216,248,83,165,142,131,106,246,200,53,108,101,68,250,223,108,181,242,4,101,95,190,18,137,20,66,150,104,226,150,93,1,77,122,85,99,29,193,64,175,99, +206,218,213,61,39,45,44,233,158,145,224,119,76,164,178,59,122,244,87,92,163,177,36,174,19,251,220,235,72,128,69,127,143,180,175,136,101,186,189,63,108,41,80,108,201,179,4,205,20,235,212,151,50,111,215,188,201,165,209,157,34,84,94,107,17,3,171,182,129,114,136,247,164,102,98,245,239,2,228,96,141,80,32,145,101,139,38,89,176,164,50,212,155,31,143,227,159,97,12,227,103,57,52,39,138,137,38,226,50,69,129,193,46,215,178,180,143,75,73,54,249,255,85,118,109,187,109,27,65,244,87,4,3,45,164,66,150,26,23,78,208,22,40,224,88,104,28,212,73,141,40,189,188,36,21,101,49,54,27,73,36,72,169,177,255,190,115,230,182,187,36,21,219,47,137,96,145,92,106,201,157,157,203,153,115,34,75,218,63,66,168,96,29,56,64,148,70,157,0,72,228,78,220,226,183,159,111,96,231,235,187,171,24,201,160,124,83,76,180,59,12,236,125,35,212,201,58,171,199,49,155,65,251,69,243,247,234,77,118,29,247,13,69,11,52,57,151,101,249,121,241,237,39,100,163,146, +128,155,109,55,11,199,51,233,29,217,168,236,105,241,115,48,31,169,209,208,116,130,244,50,164,226,94,28,163,6,25,223,100,98,214,149,252,243,224,57,241,154,120,161,107,226,217,179,224,102,190,120,122,105,225,106,245,201,136,173,197,16,41,209,7,141,124,89,108,247,119,110,32,219,126,147,248,137,194,204,217,202,96,39,136,176,94,104,245,226,200,159,18,156,87,138,15,152,34,198,218,23,153,32,65,49,43,203,146,118,60,149,80,162,21,16,105,94,39,40,2,22,152,106,156,119,191,25,156,189,157,145,227,78,219,236,134,175,223,168,154,189,73,13,78,247,61,125,145,76,36,34,194,47,90,254,253,201,19,118,200,197,9,243,149,188,140,80,185,2,152,153,162,181,158,14,100,104,255,208,180,214,166,57,99,184,172,108,245,239,190,137,116,119,164,163,70,120,24,100,251,162,5,78,235,125,191,38,7,9,34,59,115,90,19,117,183,130,166,79,117,176,49,178,62,50,169,210,6,86,117,29,240,95,201,54,189,156,207,6,6,249,144,224,239,134,199,192,112,62,165,109,131,125,71,6, +175,80,209,223,43,174,201,93,157,187,57,96,124,166,195,159,14,220,159,39,246,237,172,179,119,111,132,201,1,198,159,174,118,126,245,71,103,197,91,197,133,49,154,201,2,227,234,133,170,21,118,156,107,20,195,54,157,146,4,159,179,180,142,194,167,173,115,110,8,74,196,39,135,81,219,73,117,155,177,191,183,205,215,222,111,2,199,160,17,61,20,158,151,65,198,253,144,5,251,249,92,71,30,117,110,97,86,192,165,94,50,17,199,161,101,154,60,66,47,67,183,13,255,114,191,221,237,7,147,85,144,248,115,153,201,118,18,236,185,229,192,60,75,242,188,163,124,241,176,245,128,126,172,120,141,136,210,201,27,150,41,31,74,163,231,152,25,195,115,214,135,161,101,53,58,20,181,31,82,94,59,186,184,95,213,153,8,67,136,132,4,111,134,139,99,212,98,248,175,93,235,111,82,146,81,98,249,48,131,195,35,39,159,145,254,10,97,84,240,187,52,90,2,138,204,154,60,156,155,19,68,56,135,33,167,223,127,147,140,244,221,15,97,222,79,204,149,137,90,92,194,228,63,126,238,223, +10,7,86,25,40,142,187,157,93,119,230,108,152,176,149,116,219,161,212,225,22,190,11,194,252,122,81,232,112,160,113,226,67,98,41,134,152,34,26,52,97,205,236,187,192,226,232,207,162,102,86,106,133,187,65,117,133,22,85,255,177,239,47,94,207,95,158,157,255,150,30,21,189,65,175,76,9,23,209,203,100,162,135,193,184,180,21,38,172,229,209,181,115,117,35,16,224,238,182,32,151,181,147,47,65,135,19,217,210,178,98,77,13,168,173,73,200,242,251,40,36,92,39,183,211,201,117,85,245,150,49,104,27,212,173,50,18,76,246,171,140,185,119,199,113,119,225,136,198,16,139,66,62,188,45,219,115,77,126,196,122,93,220,160,183,171,237,164,105,77,44,74,112,104,23,78,208,243,166,139,67,92,62,13,236,59,97,176,57,109,117,164,223,139,228,20,202,87,28,98,104,186,38,213,239,91,151,55,194,226,174,108,77,13,78,129,88,13,78,177,216,220,153,153,123,222,120,24,153,197,49,121,73,28,122,39,178,163,230,61,176,16,193,145,193,6,140,3,52,135,9,153,118,190,160,15, +241,223,179,53,166,31,162,65,216,190,201,189,40,16,213,43,120,52,64,172,83,161,90,190,250,136,147,232,237,39,140,91,214,212,164,134,73,16,188,223,10,247,235,88,3,46,145,246,9,90,238,67,10,22,161,130,99,104,100,51,156,255,24,161,161,125,130,242,176,146,137,159,164,208,241,211,30,123,34,94,211,195,65,210,223,81,6,12,133,239,110,157,155,237,198,244,236,205,140,162,131,162,73,241,110,237,29,130,252,83,229,70,22,51,12,182,5,173,185,10,67,148,72,89,112,99,169,242,251,110,4,88,203,244,24,149,51,237,59,220,92,124,10,197,229,245,220,255,103,148,170,80,152,112,46,4,244,196,239,114,70,181,211,71,0,164,24,124,180,66,180,44,205,69,114,36,189,14,100,122,76,77,19,131,117,221,58,32,78,157,77,10,119,33,33,239,226,88,22,170,64,77,104,12,242,217,110,141,3,73,253,85,97,123,121,180,183,243,52,187,204,221,65,136,159,52,219,102,107,178,253,11,36,64,215,72,197,24,182,36,169,201,208,125,237,241,232,90,42,133,255,148,181,172,110,212, +249,218,175,133,152,84,65,90,169,151,25,76,3,57,242,112,198,171,108,155,27,253,51,250,114,26,161,189,200,235,169,94,116,106,134,103,122,237,67,154,57,149,226,96,79,144,56,159,191,158,191,199,44,123,14,244,199,147,176,81,120,224,45,118,146,77,58,189,99,235,251,198,36,85,93,23,68,154,127,180,61,144,108,45,210,253,134,14,24,203,153,122,191,113,161,81,148,209,3,87,166,238,93,227,193,127,233,102,54,102,248,79,205,221,191,249,238,218,65,165,233,237,226,37,206,36,119,214,210,2,162,105,105,88,193,163,17,72,82,196,197,151,237,196,143,129,133,98,177,208,221,125,37,180,117,139,227,95,80,101,133,36,218,68,62,200,1,146,110,154,35,96,232,191,13,201,245,229,201,110,131,161,252,139,0,181,241,6,9,69,96,134,66,159,244,160,72,134,9,208,179,44,0,133,227,193,64,51,24,213,1,233,37,160,201,172,93,247,214,30,144,117,11,168,73,136,143,66,249,18,192,26,121,118,209,55,35,17,92,243,18,163,119,184,12,35,162,58,46,107,162,19,130,182,218,220, +249,52,197,198,140,250,110,248,85,153,92,53,185,97,68,101,0,250,239,190,0,235,31,14,82,166,152,112,36,103,13,173,188,20,3,155,190,238,161,182,215,62,219,151,233,95,133,190,38,183,69,165,191,106,62,187,116,130,48,86,209,177,53,183,69,159,5,125,171,100,194,246,75,241,63,206,49,222,1,231,168,229,23,228,244,231,143,59,206,124,176,184,60,25,252,47,249,82,68,230,167,239,200,11,222,100,213,5,231,181,177,195,91,87,203,199,193,135,15,255,3,17,135,254,88, diff --git a/uppbox/uppweb/www.tpp/index_en-us.tpp b/uppbox/uppweb/www.tpp/index_en-us.tpp index 4503e9423..29459dd54 100644 --- a/uppbox/uppweb/www.tpp/index_en-us.tpp +++ b/uppbox/uppweb/www.tpp/index_en-us.tpp @@ -41,7 +41,7 @@ designed for developing large C`+`+ applications.&] (A+cABAEAAAAAAAAAAHic7Z35U1TH2sf/urjFqKhcY0K4IrK6r9FXQSRquHJjUPG6lRoubuGlNK4YKmzDvsiwGCFssgwMDAgyyIwMgrcJVRTFzOnpc073089w+lPPD6ko2PN9vnN6e073588KhUKhUCgUCoXCOE8OxaT/M3xJVP3/L5Qfub57u/+PiIhzsd+5x91gUmCg//dfdeXizuF4mFzMR05aEpgUFM7GfBfjx9PffqP8yPdHjvj/iAgS42JnZmfBpMBAwY9HdeUi+cQJmFzMc+P8OTAptPAO9R6JjvRvGxLTHt+/B0wKJJBeTFcugE1bUvAHmBRavH2aHRcT6982JKa9ln4WTAokpEZH6MoFsGmHnINgUmjx/NTBgG1DYtrC31+CSYEBd0fT/uhtunIBadr9ifFgUlDw74xYhAIz7aDTCSYFBlrvXfbv9vCY9szRw2BSaDI7498ZsQgFY9q9CXFgSiDhSdJevbmANO2Dm9fApNBi7E3t3h1RAZuHwbQovtewXEpcOjYImgtI09pfvQKTQovGmz9pNQ+DabOvXASTAgMzU57j23UvP4KZNi425qPXC6aGFr9+n6jVQgymfVVTCyYFBoZrCnbtCDDFQGLao3t3gUlB4af4f2q1ULpp42JiP3yYAJMCA9WZpw3kAsa0ZHr4c2oymBRaTH94fyQ6MsASLYNQAKY9vCsRTAok3DkcHzAdGExLeP4wF0wKLYZKnyXGRGu1ULppfzp5HEwKJJyLDTCgDZoLMNN2tLeDSaGF7XwypYXSTfv413tgUmDAOzwQcD89aC5gTJsYFwsmBYVb+2mNlG7av1pawKTAgCPvfnzMDgO5gDHtyUP7wKSgELC4i1Eo0aZVxV3suYAx7a2L5z/PzoCpERBPf6f/Hje7UKJNq4q72HMBY9pyWwmYFFq0596I01o4YBBKtGmvpJ0GkwIJWvvpQXMBY9rRkXdgUmihVdzFKJRo01quuKutgdLxSTctkuKuS4nbqA9ayaZVxV3suQAw7b9OfA8mhRazn6YD7nGzCyXUtBYs7nr4f7sN5wLAtDlZt8Ck0GKsqTLgHje7UEJN+8P3B8GkQMKFBM399KC5ADBto90OJoUWr679K2g7JZpWFXfpyoVo08bHxvp8PjA1tKAUdzEKJdS0tdXVYFJgYLgqn97xyTUt/uIuRqHEmZbMR1Rxl65ciDZt5tlUMCm08LlHtfa42YUSZ1oLFndlH4g1s5Ij2rQvnz0Fk0KL/sJHWnvc7EKJM60q7tKbC9Gm7XnbDSaFFkXpx1maKsu0j+5lg0mBAUpxF2MuhJp2dzyK5Ud6cRejUOJMa7Xirt7nd4N2fLJMG4umuCs1OoI+gmIRSpBp54q7ZiSXEgGTf+ZI0HRIfNLOFXfJZqKnlV7cxSiUINOq4i4DuRBqWiTFXYytlWJaVdxlIBdChwcYzlkNeICJAaEEmbYg7wWYFBgYb61n6fhkmRbJ8mPAA0wMCCXItFYr7nqTfdH8/EKcaVEUd/k+Bi3uYhRKhGlVcZexXIgzLYblx3f1JUGLuxiFEmFaVdxlLBfiTPtn82swKbQIusfNLpQI01qtuGvaM8HY8UkxLZLirjuH49nbDG9aVdxlLBeCTItk+THoHje7UNxNq4q7DOdCkGkxLD/6xlwsxV2MQnE3LZLVFUiyD7CsHATPhSDT/pGXByaFFn35OSzFXYxCcTetKu4ynAtBph1w9INJoQXlABMDQnE3LYbVFUi8Lgd7xwdvWiTFXSx73OxCcTetKu4ynAsRpkWy/Miyx80uFF/TWrO4i1cuRJgWw/JjwNupzAjF17RIVlcg0dXxwZu2prIKTAot3tzJZJ2psgnF17QYVleA0dXxAZsWSXEX4x43u1B8TWu54q6WOl0dH7BpkSw/Mu5xswvF17QYVlcgYSzuYswFd9NiWH4MeoCJAaE4mhbJ6gokejs+YNNiuDiAfY+bXSiOpkWyugKJ3o4P2LQYlh91FXcxCsXRtBhWVyBhL+5izAVf0yJZfmTf42YXiqNprVbc5ap4qbfjgzQtkuVHXcVdjELxMi2S1RVIqi6k8M0FX9NeSz8LJoUWLAeYGBCKl2mRrK5AYqDjgzQthosDdO1xswvFy7QYVleAMdDxQZoWw7uluva42YXiZVrLFXcN9Rro+MBMi+TdUr3FXYxC8TIthtUVSIx1fGCmPXP0MJgUFPQWdzEKxcW0SFZXIDHW8YGZ9u6NK2BSaDHeWr93R5Sx9gOYFsnqCiTGOj4w076qqQWTQovmrAzD7QcwreWKu2ZnjHV8MKaNi4n98OEDmBhaGCjuYhSKi2mtVtw19qbWWMcHY1oky48GirsYheJiWgsWd4nIBS/T/pyaDCaFFtOTbgPFXYxCmTetKu7ilQtepn3+MBdMCi1cFXmJMdGGP4Jo06riLl654GXajvZ2MuoGUyMgtvPJZj6CaNNarrjLRMcHYNq55cfZWTA1tDBW3MUolHnTWq+4K89AVTNLLriYFsmFIGdjjA9ogwpl0rSquItjLriY9sb5c2BSaOEZ7DkWF71zZ6LhoN/TR4Qy88stuK3w6/eicnE69ZSZXMwHhgtBFAqFQqFQKBQKhUKhUCgUCoVCoVAoGPE4u7vuXjIf7rYGyr/ieJYt4tcuS/qf3xGai/7ffzX8m0nbwHSg8Nfl1MJ1X5gP8oko/0rFjk3Gfu14Sx2YFBiY/vC+aMMKobmo3rnV8G9uTNkNJgWFukPb0Zq2JHyV9IpNYFzlL0Tnwoxpu+9ngklBoTRiLVrT1uyJANMBCW1Xz2A2LYaOb7K3jYtjBZn29b+PgUmBhFdHdqA1LZKOr+/xL5hN63hxF0wKJHDp+ASZFknH15x2CLNpvUO9YFJgwDPwFiAXhk2LpOMzM7wRbdqyyHVgOiDB8Swbs2kdeffBpNBidnqqeNNKtKYlozswKZDw+twRzKb1uhxgUmgx2ljGy7EiTNt+Tf4R08BU7/oWrWmRdHydWecxm9ZVIf+IaUhmP00Xb16F1rT1x2LBpKBgT0pEa9qiDSumPRNgUmBg7HU1TC6Mmbb9RhqYFBTKo8LQmrYyNhxMByR03bmI2bTDVflgUmjhez9ctJ6bY7mbtvGU5d4Zbzi5C61pi8NWfPJOgkmhhbPwEUfHcjdt94PLYFIgoTLGYE0RgGkr41B0fK0XkzGbFsMeNyRzxV38Oj7upm38AcUhSLUHtqE1LZI9bkhcZc/BcmHAtN05V8GkoGDbugataZHscUPS9h8+Vc2CTOvuaAKTQouJ7ha+juVrWiR73JBwKe4SZFrbltVgOlDoyb2O2bSquAuVaWv3RYLpQKHpzAHMprVccVd/J2Qu9JqWzNnBpKBQlbAFrWmR7HFD0vckC7NpB/JzwKTQYtb3sXgjt+Iu7qZVxV2oTFu07oup0SEwKbQYqS3k7liOplXFXahMWx61AUwHCh230jGbVhV3oTKt/Xg8mBQUSDPQmtaKxV3NVcC50GXaztvpYFJQKN+2Hq1pLVncdQGzad/Vy79bYeqdU4RjeZnWgsVd9uSdaE1LJuxk2g4mhRYD+TmYTWvB4q6K6I1oTVuV8DWYDhRaMpIwm9ZqxV0+9yjfqma+pm0+i+Jq19p9kWhNa8HirkHbU/hcsJu259FNMCko2LasRmtaCxZ38TqyUpBpJ3pawaTQwt3WIMixXExrweIuXkdWijCtbesaMB0odOdcxWxaVdyFyrR1B6PAdKDQmLoXs2mtVtw16eiQkgtG07ZmpoBJQaEyLhytaa1Y3MXvyEoRph0sol1lDsMn72RxmNlz0cWZ1oLFXRyPrORu2qL1X/jGR8Ck0GK4Kl+cY82bVhV3oTJtRfRGMB0otN9Iw2xaKxZ38Tuykrtp7UmJYFJQ4PvqHF/TWrG4q6lSVi5YTNuZdR5MCgpkpoPWtBYs7uJ7ZCV305LvFJgUWniHeoU61qRprVjcxfXISr6mJeMWMnoBk0ILx4u7mE2rirtQmZbMEMF0oPD638cwm3bsTS2YFBgQVNzFy7Svzx0Bk4JCzZ4ItKa1YnFX8WOJuQhq2r4nWWBSaDI7Q4yB1rQWLO5qzUzBbFpPfyeYFFqQzle0Y82Y9nX6UTApkCCouIuLaUsj1oLpQKH7fiZm01qwuMv2zZdoTYtkP53juegiTOsZ7AGTAgMc7yMWYdq2K6fBpKBQGbMZrWnLvvsKTAckiCvu4mJaV9lzMCm0mDsXfYPA4i6TpkXSGUEirrjLvGnn9tM/vAeTQgtX+QsAxxo2rRWLu/jdR8zdtKRTBtOBAhmiYDatqyIPTAoM8L2PmLtpyfQHTAoKoou7zJh2rjOadINJgQG+9xFzN+3be7QfBEPQq3NcTKuKu7CZFsN+umfgLYxjjZm2MWU3mBRIEFrcZdK0SPbTHU//i9m03fczwaRAQsV2nvcR8zUtkv107uei8zUths4IEt/4iNDiLpOmRXJYirhX58ybFklnBMlg0W8YcqFlWgz76SLORedoWiSdESSii7tMmhbDYSlCX50zb1orFncdjMKQi4CmRXJYSld2BmbTYuiMgBFd3GXGtEj200Wci87RtKq4C5Vp22+kgUlBQeircyZNa8Hirp5HN5HkIqBph6vywaTQQvSrcyZNi6QzgqT57EEkufA3bXHYik/eSTAptBD96pxJ01qxuCvxayS58DdtZRyK/XSw1RVjprVicZeA+4h5mbbxh31gUlAAW10xYForFnfZbXhy4W/a7pyrYFJQAFtdMWBaVdyFzbTutgYwKbSAXF0xYForFnedSMCTiyWmtW1ZDaYDBcjVFQOmtWBxV3kURHGXMdPW7osE04EC5OqKAdNarrjr/TCq5cclpm3JSAKTggLk6ope01qwuMtZ+AhVLpaYdiA/B0wKLYBXV/Sa1orFXZdwLT8uNm3Rui+m3jnBpNACeHVFr2ktWNxVe2AbqlwsNm35tvVgOlDovJ2O2bRWLO7augZVLhab1n48HkwHCsCrK3pNa7XironuFmy5WGzajlvpYFJQKI/agNa0Vizuyr2OLReLTfvuVTGYFFr4xlxFMhzLaFoLFnc1nTmALRcLpiUT9lnfRzAptHAWPJTiWEbTtl09AyYFEoTeR2zStFUJW8B0oPDX5VTMpnWVvwCTAgNzR1bCbivoMm3z2YNgUlAAO7nLgGlJ+jAcIwmJrI6P0bRkvA0mBQXR1zKaMW1lzCYwHZAAcBOWGdNOdLeASaHF1OiQLMeymNaevBNMCiRAHpai17S2b74E04GCxFkYi2m7sjPApMDAJ++klP10RtMiWclpv5GG2bQjtYVgUmAA7UrOvGmRvDPe+MM+zKb1jY+ASYGBptP7ceZi3rQjdUVQStCo3ReJ1rRIKo0hKd+2HmcuiGnn7hmfngKTgoJElYIK1XhqD5gOGHC3NaDNBTEtknvG585IDIO4esmYUEiuVAOj/fqPaHNBTNt6MRlMCgoTXX9KVCmoUD2PboJJgQFZi12Mph2uKQCTgsJwVT5m01pqA9fj7Jaye8uYCzK/IP0ymBoUHC/uYjbteGs9mBTSkbv2GDQXSI6p/wx+Gq1eoXxjLjAppCOlsos9F31PssCkoAN/eJcuoayD3HUDllx4+jvB1KAj5awDZVp/yMQcuWnxYD8er4SSDpnglH33lTItIxIraUNLKKEM5OdId2wI5QL+5foQFUoo0rMQWrmQW3gQQkKJg0zBZL1VGqK5oFwtDROdWedlayAZuVV2i6P7wWXZYjAh3bQWvEZhMd6h3uJNckq+/QPPSiydgDcmQ4bVSmKWAHl3dtDAcBAiC9J3YUjWZGsgDe/wQEk43DXEQSNUXhKRPjyw4HuLC0jf2VkSGF6zZUG6aesObac079OU/ON3BDHR0yq3knlJFK3/YmbKI1sVJuQWcJKojP8HpXk+9yiYFMBI39ZZEqURa2VLwgp50MnVyrZ1DaV5y/WtRlf5C+kuXRKkz5WtCiuyjqVdHJRTj5BUHfOF9MIV20GvrWGJhpO7ZAvDipQjJZfEaFO5bBlAwVDQ5R+dt1Gck8xCS0aSdLnot1UieWeZF6ONZajmXwvhqngpWxtWgC+yDBjNaYcoLZzsbQNTQzTTnomK6I3SBfcP8j0ibZMtDysDLx9IV4x+3ZJn4C2UGMJpPLVHutoBoyrha9na6ID0VtIVm7tllXqx3SfvJJgg4iCjIOlSa0Vo7Ut6hwekK0ZirKmS0sgQGm5pMVJbKOssRJYYKn0mWyF9kAeddNHoU1fnH7lgaohgoqfV9s2X0kXWipLwVSG3tFiVsEW6bvTN3KnRodD1rXeoV+5paUGj/lisbJF0I/3dRhLFm1fRb/khUxgM1wDphXzdpNfRBY1QvA2z7T/SrrZZHIPFjymN7Mm9juT0M3Y8gz0Id76WBBkchuLTYLDoN+nSkWg6vZ/SyGnPhG3rmuGqfDBZTOJua5B4/Qp7NP6wT7ZURvC9H8bwYt3cDRTUhS8ib2nE2klHB5gyhnEWPsIwvWWJsdfVstUyCJKZwmDJE0ojx97Uki9XxY5NZKAIpoxeyDS89VKK3MMP2SOEKrv8wVDrRYI0g97O+RfeiW9xbpNNdP0pvaheV4TiFGyB7geXpQtIonjTSjJWobRzqPTZ/N8k4wQMF2EvQOYybVdOY94+8I/yqDDZsplioqdVuobz0XErSIHcwqsWxWEr2q+dxbAq3vckKyTmXEsCyW2hZiiP2iBdRhIV24N8/ZccXV4ZF+6qyIORaAnk+9L3+JfKGMnv4BvUeccm+rQ3JGj+8ZB0JefDkXef3lT/k69q9kTQJ3F88Ti7/7qciuGcQ3EihwR43loKeu+Pu60hYB01eXq0XT0j7uxfMvvrunOBfEFCZXFAK5bN7Wyks7NtXSNdz/kIuolAOZiFOKoy/h/kLzgLH1HePmNksreNDFmbzhyojNmMYTXbfJDv+3K6yaIxda90Secj6Prh9KSbZe5DDEz+GhlOEA+TKR4ZgroqXpIHtbujyTs8MPXOOR/kv8n/eVdf4vwjt/vB5dbMFHtSImlDqGwQ6IqWjCQYO8EwUlckXdKFcBY8pLeWDGKXx6MPMiqiN4ZipQGd8igsBR5kVh50eivx7uNQDDIwGLXbYIwESfu1s9K1XYigR9d+8k5KP/UxhGK5nqrqG3PhOS6VTAzJgJPe4PGWuuLNiA4eRBtkYA9jISngmY6RIBOioA12PMtWg1t6lG9bT98fD3XmrgBAsw5ZxDAj+4zjyBG0URK+auxNLYBz5ILhBZyFKPvuK5azE1G1GU+QyRfkXqFExlvr8TxsSRBDBm3zrO+j9Jt6sAVJ4jKoimEH24OLft7XPNMf3ks/bhdPkJFV150LAFbBw2RvG55lhMK/X9dlGZgp385HUUidgsgRbCdSMk6BiW8tPk4go4JQuRGMO4z7+5Axt9jIUAU6M+WpPxYrvbVSonjjypB+icY8zsJH0rOwJOhvmi+m5efjVlu/tX3z5UhdkUhHhAb2pETpuVgS7NuRZO6MamQuNCrjwpfTWb5m8I25SiPWSs/I4pgbszEsJswz9mcNniogcdGYujdULlSCwVWRV7QB14nrulYgydSs4eSu5TpUsG1Z7XiWLdQAIUprZor07CyJ4rAVfY9/Yf8Ijrz72LoM81F3MMrj7BaX99Bmdsb/dULpQZ63b+9dYv8QvvER0o2i2uwzHOQLqOs7a01IxhGeAUg6/fbrP+r6IKONZSG9AVG8ceXr9KPL+C5Lvrg7mnC+NkWen3pP7SDjwJArICczC/vx+ImeVkH5Xa4M1xTgLLqu3RdpoGS070lWZSz2Q48L/x7A208kuNsaROTUCjgLHuK8vq0sch39whEtBm1PyYwG2wrJfNi2riGDATXbMo/j6X9xprh400rD2+6egbetl1KQnHpK5CV9B5lqLb+XZyVCfIv2kMBXR3aYOcN2tKmcPNzIiBd+aZd86YhXu7IzvMMDHJOlWGBunIDVt6URawfyc0x+QE9/59t7l+xJieVRG8QZmBi1ete380fiLI9r/pBD5mV4DlPyj/pjsd6hXi6f1DfmIkPf9pvnGk/tIQ9DYmMDE9Ki9XNj1Mq4cNIXkId5T+71seaqZXZjdUjg7mhCMg4MGLYtqztvpwsyxsyUhzyNx1vqRu22d/Ulg8WPl4Sr/AX5IxLzBzGJaIPCGCQdyOuuK7aHmR8tKJYbszP461erd26l31amsCDkaYZ5iLtg3eVxpLCCF16Xo+7QdunODBpkJtWZdV7t4CsW6M65irNKYUkUb15lT0oMoYsgFUIhszPiB+Sj3IUoi1zXnHZIvWCl+Pz3ZTRVCVuke5I9bN98aT8e35N73TPYI1s8hUz6Hv+CeS2X8vitPxbbeTvdVfbcN+YSJI7aBUPLrO8jeXwhua3MWJRGrK3e9a39REJLRlJXdkbfkyxi5rHmqomuP0nMXeIwOuQfk44O8qfujiYy9nD+kUtEaL+R1nIpxfEsO+jpuwoUzM6Qp2514tfSHSglijetJI/uQdtT2WlQGGG0odSevBNtvQ1nr4atqDsYRZ6x5q+IUkjHNz7SdfcS6XNDZZFBV5SEr3p1ZEf3g8tm6iQVaJnsbSMjvTn3oqwtZ4+5q/diNjenHRoseaLKtywCmZt051wlk50QOqOA9P6VceFNZw70P7+jHqoWh8y4u+5caDi5qzJmE6rDCshQnDTJnpTYeTt9uKZAnUekCAiZwgxX5XdlZzSd3l+zJ4I8h2FsTIYrZZHr5le6/rqc6nhx193WoPd1dYVinlnfR/IodhY8JFO51swU0juTWQ9xF+mpy6PCiKvJPEhrdYL8f/Knti2ryV+riN5Ynfh17b5I8uONp/a0Xkwmz8+/b9HNIyNt5U+FQqFQKBQKhUKhUFiN/wFa9Nzz) &] [s2;l64;%% &] -[s2;l64;%% [3 Current release: ][*3 2024.1.1 (][*1 rev.][*3 17490)]&] +[s2;l64;%% [3 Current release: ][*3 2025.1.1][* ][*3 (][*1 rev._][*3 17810)]&] [s2;l64;%% [3 License: ][*3 BSD]]}}&] [s0; &] [ {{10000f0;g0;l8/25r8/25t8/25b8/25@(240)R(165) [s0;=%% [* U`+`+ Resources]]}}&] diff --git a/uppbox/uppweb/www.tpp/index_en-us.tppi b/uppbox/uppweb/www.tpp/index_en-us.tppi index 23427cc2f..30f0ce013 100644 --- a/uppbox/uppweb/www.tpp/index_en-us.tppi +++ b/uppbox/uppweb/www.tpp/index_en-us.tppi @@ -31,10 +31,10 @@ COMPRESSED 250,193,60,179,23,224,155,163,76,222,174,80,31,102,40,117,207,118,3,83,193,199,217,189,11,200,189,147,18,45,7,5,178,192,209,192,79,213,102,115,217,58,212,212,118,25,6,65,29,135,172,183,113,26,196,67,9,203,167,122,223,202,56,107,81,12,94,94,149,96,237,120,179,197,38,226,13,41,84,198,209,81,223,61,132,26,50,200,85,120,212,30,34,8,101,107,223,139,200,173,155,57,35,33,62,110,170,202,237,165,67,105,11,204,88,139,156,53,108,65,254,191,39,115,8,77,235,211,142,218,224,212,64,148,235,73,202,99,75,23,200,147,87,49,57,28,15,49,74,66,73,174,136,84,183,105,25,14,175,44,140,43,143,243,101,211,94,122,128,115,156,124,155,192,92,82,137,197,49,161,218,91,45,20,155,65,60,81,156,91,169,220,142,146,65,38,208,46,176,122,197,66,77,116,10,49,194,205,53,1,247,177,127,245,28,15,88,199,5,8,59,99,213,20,83,5,197,29,174,203,47,131,238,253,60,245,243,57,123,204,218,4,223,174,250,136,32,209,230,92,166,164,125,44,49,163, 219,208,14,46,78,202,131,121,8,146,47,30,89,129,61,69,243,97,28,101,194,223,87,58,57,200,146,11,108,241,136,109,225,184,139,144,109,137,194,126,213,179,92,225,187,30,158,43,67,138,198,214,212,42,44,203,195,91,167,89,19,167,8,4,89,142,105,11,105,176,189,200,34,6,140,237,237,173,186,197,243,78,147,221,115,113,14,96,188,52,161,70,109,220,62,229,207,98,6,104,231,204,218,184,160,226,185,201,225,135,83,239,61,241,102,179,229,250,248,64,61,83,183,88,107,44,98,92,164,2,141,34,125,147,140,81,92,35,80,243,232,2,44,70,102,231,199,118,127,91,179,177,129,56,228,45,31,142,83,16,196,230,45,178,146,32,212,214,174,33,137,132,207,156,143,74,119,32,47,177,115,207,70,31,85,109,73,23,64,49,21,83,62,74,233,59,73,209,75,201,137,138,32,41,230,41,199,187,125,117,109,170,241,8,213,170,19,139,247,195,120,74,10,12,59,144,215,100,188,228,238,76,213,220,186,56,15,59,95,89,235,112,45,182,83,178,235,65,72,106,199,123,115,126,168,219, 83,139,224,48,54,36,198,222,72,203,252,18,15,146,184,25,79,209,96,34,118,121,18,4,1,106,34,99,169,103,134,219,9,174,59,204,31,174,92,239,234,222,118,194,175,107,241,92,92,246,218,131,48,162,36,52,182,142,198,121,30,207,88,184,177,235,208,22,246,118,9,154,146,67,181,205,79,150,47,213,125,96,168,151,155,89,163,205,245,62,120,216,26,191,110,162,92,187,196,245,94,111,128,41,40,242,48,223,217,202,27,32,28,190,151,5,14,157,14,215,3,77,29,183,86,24,243,154,119,39,160,35,177,190,236,175,141,157,145,51,54,174,241,208,231,114,252,250,144,170,221,182,227,216,62,59,213,156,41,213,173,233,198,230,64,141,178,71,215,231,184,96,233,220,187,167,147,131,59,81,233,61,140,8,45,215,15,9,19,201,12,225,123,83,116,23,4,213,225,101,188,221,116,215,112,91,103,19,76,161,118,115,140,224,200,181,242,122,169,49,55,98,19,101,46,41,1,28,11,247,247,51,4,64,150,125,162,38,126,93,181,243,246,200,230,242,77,58,238,178,46,114,21,50,217,200, -245,0,220,119,182,214,93,174,225,110,157,100,48,17,224,34,57,30,180,118,227,67,78,113,175,30,228,122,19,80,123,77,156,181,1,63,175,191,254,127,7,62,215,54,119,222,167,180,199,227,251,215,86,157,151,142,150,175,30,126,65,87,236,216,117,75,95,78,23,151,177,223,199,63,173,62,254,242,87,116,133,64,8,246,1,254,0,175,190,3,143,48,152,188,125,120,142,175,96,2,163,160,239,63,254,61,21,37,15,227,250,243,110,198,224,62,126,252,239,255,126,105,165,121,109,28,133,151,246,213,151,166,209,146,220,32,120,183,124,12,203,71,176,124,252,237,59,4,131,190,215,191,131,183,248,247,171,103,7,206,187,38,210,149,254,214,20,247,133,44,244,70,23,65,168,159,96,138,194,127,130,183,240,242,23,249,252,241,19,140,66,203,28,2,191,59,247,159,28,9,206,67,86,66,60,60,59,242,140,193,239,134,56,250,248,241,167,159,74,232,141,223,231,178,255,88,56,251,219,119,48,140,125,143,172,240,85,149,215,227,210,88,57,52,43,32,193,238,165,11,44,240,251,165,53,242, -195,135,143,175,173,182,239,247,128,225,103,255,90,213,116,241,66,191,91,232,15,203,71,176,124,252,13,121,57,230,117,57,216,185,240,240,91,188,63,215,61,229,132,172,206,125,220,245,95,115,251,35,250,27,132,222,14,131,151,195,96,112,152,14,253,248,114,224,50,251,35,252,249,235,231,47,191,165,174,23,169,61,87,99,239,123,191,126,167,247,240,85,168,175,50,253,210,131,248,38,236,254,101,226,165,201,237,165,103,239,41,184,223,167,205,14,93,169,228,193,167,77,223,133,81,19,126,218,152,160,52,235,114,191,124,71,252,44,174,222,70,255,128,218,87,29,186,75,39,163,223,229,125,83,127,161,197,126,30,235,191,133,212,63,54,251,30,94,71,190,133,202,240,188,68,157,190,107,49,125,29,89,29,75,191,254,162,244,175,85,171,67,159,85,248,162,189,69,121,159,117,247,27,166,241,235,23,253,62,77,226,79,178,247,85,11,234,23,30,185,247,195,223,114,221,120,242,151,86,210,254,11,169,221,235,200,183,80,121,211,124,255,233,63,191,150,26,24,250,22,58,198,75,207,103,28, -189,117,213,191,227,235,243,220,234,243,228,183,144,62,183,173,249,214,173,156,191,191,239,75,208,123,63,183,232,248,223,255,65,191,191,229,173,191,190,185,43,244,141,222,250,21,107,192,107,223,241,67,191,107,193,252,150,11,210,125,223,132,249,210,2,122,236,154,75,28,14,239,148,241,101,110,245,54,249,45,164,121,250,244,133,63,240,240,91,123,179,97,104,95,182,46,91,62,140,229,144,87,224,64,16,144,62,52,93,250,105,3,20,54,86,203,246,231,191,79,17,255,129,31,253,166,72,161,159,255,186,70,177,231,244,111,238,249,93,183,3,187,94,28,239,157,223,253,25,130,228,87,20,255,47,254,213,150,63,77,230,143,178,225,107,94,121,125,127,228,119,147,203,251,196,38,38,207,70,219,36,142,203,183,206,240,122,232,242,96,124,6,121,144,32,129,254,150,30,221,103,195,248,243,45,5,240,3,118,116,75,11,115,248,85,46,252,243,233,233,239,242,212,123,187,255,221,59,189,53,79,191,188,162,242,7,41,94,137,135,79,255,187,95,165,205,255,250,248,217,191,254,134,252,86,132, -252,35,131,235,226,8,160,5,144,20,219,55,119,88,140,250,215,55,7,88,85,126,237,167,241,179,77,250,59,253,101,237,247,223,226,20,130,104,234,113,219,244,57,136,115,243,23,87,3,195,0,193,189,141,127,11,193,96,76,151,141,221,240,46,24,48,99,186,122,29,124,162,152,214,31,194,108,213,143,65,149,247,253,55,134,250,87,251,88,6,62,211,183,129,141,180,64,12,255,72,71,139,239,95,119,164,71,0,177,190,172,42,1,202,251,147,71,190,224,221,231,244,187,91,189,193,224,151,241,127,18,11,254,105,204,253,102,136,244,119,210,136,226,126,152,203,248,61,238,0,158,242,28,251,22,177,246,192,155,138,119,104,33,246,43,224,115,101,233,7,77,247,242,90,198,119,198,178,228,143,140,235,11,128,3,169,106,63,6,95,76,234,229,249,79,111,167,131,102,124,255,234,201,56,100,77,215,47,239,63,188,22,14,191,23,190,251,127,230,78,192,22,94,166,254,242,122,251,191,252,38,20,249,244,33,27,170,242,215,175,222,132,3,40,172,127,190,111,246,21,72,249,19,25,224,127, -90,231,111,239,113,188,199,77,47,35,127,32,146,151,130,8,164,176,52,254,244,161,6,33,234,235,160,2,178,91,190,96,168,13,0,38,192,168,190,28,244,235,223,87,124,31,193,157,68,125,167,236,104,99,247,243,231,193,111,176,182,127,188,130,242,60,115,149,230,195,147,184,66,155,59,195,4,81,232,231,213,11,55,203,196,159,144,117,247,59,24,230,37,177,189,150,51,127,184,249,75,162,68,254,110,239,223,167,202,63,160,248,63,195,215,159,207,82,198,48,70,64,79,95,229,221,23,58,255,254,71,21,221,111,157,6,129,195,160,223,59,235,176,188,95,248,122,16,244,229,156,191,190,85,159,255,168,167,127,60,230,79,220,232,5,47,47,96,224,79,101,94,163,169,226,231,43,122,207,82,249,229,245,199,39,118,0,176,97,121,155,39,142,150,10,251,237,124,144,147,191,193,241,148,165,86,103,129,163,124,177,218,103,245,254,246,182,227,251,82,244,143,11,172,255,97,248,29,79,67,153,215,197,87,37,208,16,119,181,191,224,42,48,254,255,35,82,241,99,29,125,85,132,190,14,124, -81,229,63,231,232,253,239,131,22,69,3,53,195,63,195,171,35,72,245,171,177,141,158,149,128,63,172,62,254,34,158,143,28,136,24,166,168,238,126,126,46,249,242,252,241,101,207,234,108,178,64,239,31,255,31,41,222,41,19, +245,0,220,119,182,214,93,174,225,110,157,100,48,17,224,34,57,30,180,118,227,67,78,113,175,30,228,122,19,80,123,77,156,181,1,63,175,191,254,127,7,62,215,54,119,222,167,180,199,227,251,215,86,157,151,142,150,175,30,126,65,87,236,216,117,75,95,78,23,151,177,223,199,63,173,62,254,242,87,116,133,64,8,254,1,254,0,131,135,213,203,200,119,224,19,6,171,110,31,254,243,249,12,19,36,12,125,255,241,239,201,41,121,24,215,159,201,48,6,247,241,227,127,255,247,75,79,205,107,7,41,188,244,177,190,116,143,150,228,6,193,187,229,99,88,62,130,229,227,111,223,33,24,244,189,254,29,188,197,191,95,61,91,113,222,117,147,174,244,183,238,184,47,100,161,55,186,8,66,253,4,83,20,254,19,188,133,151,191,200,231,143,159,96,20,90,230,16,248,221,185,255,228,72,112,30,178,18,226,225,217,154,103,12,126,55,196,209,199,143,63,253,84,66,111,252,62,151,253,199,194,217,223,190,131,97,236,123,100,133,175,170,188,30,151,14,203,161,89,1,81,118,47,237,96,129, +223,47,61,146,31,62,124,124,237,185,125,191,7,12,63,27,217,170,166,139,23,250,221,66,127,88,62,130,229,227,111,200,203,49,175,203,193,206,133,135,223,226,253,185,238,41,39,100,117,238,227,174,255,154,219,31,209,223,32,244,118,24,188,28,6,131,195,116,232,199,151,3,151,217,31,225,207,95,63,127,249,45,117,189,72,237,185,26,123,223,4,246,59,77,136,175,66,125,149,233,151,102,196,55,97,247,47,19,47,221,110,47,205,123,79,193,253,62,109,118,232,74,37,15,62,109,250,46,140,154,240,211,198,4,53,90,151,251,229,59,226,103,113,245,54,250,7,212,190,106,213,93,90,26,253,46,239,155,250,11,45,246,243,88,255,45,164,254,177,235,247,240,58,242,45,84,134,231,37,234,244,93,175,233,235,200,234,88,250,245,23,165,127,173,90,29,250,172,194,23,237,45,202,251,172,187,223,48,141,95,191,232,247,105,18,127,146,189,175,122,81,191,240,200,189,31,254,150,235,198,147,191,244,148,246,95,72,237,94,71,190,133,202,155,230,251,79,255,249,181,212,192,208,183,208,49, +94,154,63,227,232,173,189,254,29,95,159,231,86,159,39,191,133,244,185,109,205,183,182,229,252,253,125,95,130,222,251,185,69,199,255,254,15,250,253,45,111,253,245,205,93,161,111,244,214,175,88,3,94,251,142,31,250,93,47,230,183,92,144,238,251,38,204,151,94,208,99,215,92,226,112,120,167,140,47,115,171,183,201,111,33,205,211,167,47,252,129,135,223,218,155,13,67,251,178,117,217,242,97,44,135,188,2,7,130,128,244,161,233,210,79,27,160,176,177,90,182,63,255,125,138,248,15,252,232,55,69,10,253,252,215,53,138,61,167,127,115,207,239,186,29,216,245,226,120,239,252,238,207,16,36,191,162,248,127,241,175,182,252,105,50,127,148,13,95,243,202,235,139,36,191,155,92,222,39,54,49,121,118,220,38,113,92,190,181,136,215,67,151,7,227,51,200,131,4,9,244,183,52,235,62,59,199,159,175,43,128,31,176,163,91,122,153,195,175,114,225,159,79,79,127,151,167,222,219,253,239,222,233,173,139,250,229,93,149,63,72,241,74,60,124,250,223,253,42,109,254,215,199,207,254,245, +55,228,183,34,228,31,25,92,23,71,0,45,128,164,216,190,185,195,98,212,191,190,57,192,170,242,107,63,141,159,253,210,223,233,47,107,191,255,22,167,16,68,83,143,219,166,207,65,156,155,191,184,26,24,6,8,238,109,252,91,8,6,99,186,108,236,134,119,193,128,25,211,213,235,224,19,197,180,254,16,102,171,126,12,170,188,239,191,49,212,191,218,199,50,240,153,190,13,108,164,5,98,248,71,58,90,124,255,186,53,61,2,208,245,101,85,9,80,222,159,60,242,5,248,62,167,223,221,234,13,15,191,140,255,147,88,240,79,99,238,55,67,164,191,147,70,20,247,195,92,198,239,113,7,240,148,231,216,183,136,181,7,222,84,188,67,11,177,95,1,159,43,75,63,104,186,151,247,51,190,51,150,37,127,100,92,95,0,28,72,85,251,49,248,98,82,47,207,127,122,59,29,52,227,251,119,80,198,33,107,186,126,121,17,226,181,112,248,189,240,221,255,51,119,2,182,240,50,245,151,215,219,255,229,55,161,200,167,15,217,80,149,191,126,245,74,28,64,97,253,243,197,179,175,64,202, +159,200,0,255,211,58,127,123,161,227,61,110,122,25,249,3,145,188,20,68,32,133,165,241,167,15,53,8,81,95,7,21,144,221,242,5,67,109,0,48,1,70,245,229,160,95,255,190,244,251,8,238,36,234,59,101,71,27,187,159,63,15,126,131,181,253,227,21,148,231,153,171,52,31,158,196,21,218,220,25,38,136,66,63,175,94,184,89,38,254,132,172,187,223,193,48,47,137,237,181,156,249,195,205,95,18,37,242,119,123,255,62,85,254,1,197,255,25,190,254,124,150,50,134,49,2,122,250,42,239,190,208,249,247,63,170,232,126,235,52,8,28,6,253,222,89,135,229,69,195,215,131,160,47,231,252,245,173,250,252,71,61,253,227,49,127,226,70,47,120,121,1,3,127,42,243,26,77,21,63,223,213,123,150,202,47,239,65,62,177,3,128,13,203,107,61,113,180,84,216,111,231,131,156,252,13,142,167,44,181,58,11,28,229,139,213,62,171,247,183,215,30,223,151,162,127,92,96,253,15,195,239,120,26,202,188,46,190,42,129,134,184,171,253,5,87,129,241,255,31,145,138,31,235,232,171, +34,244,117,224,139,42,255,57,71,239,127,31,180,40,26,168,25,254,25,94,29,65,170,95,141,109,244,172,4,252,97,245,241,23,241,124,228,64,196,48,69,117,247,243,115,201,151,231,143,47,123,86,103,147,5,122,255,248,255,0,186,168,43,134,